diff --git a/bld/build-namelist b/bld/build-namelist index 595ac3728c..17172e605d 100755 --- a/bld/build-namelist +++ b/bld/build-namelist @@ -1937,11 +1937,11 @@ if (($chem =~ /trop_mozart/ or $chem =~ /trop_strat/ or $chem =~ /waccm_tsmlt/) 'ISOP -> ' => 'isop_emis_file', 'TOLUENE -> ' => 'toluene_emis_file', ); - if (!($chem =~ /_vbs/) and !($chem =~ /_tsmlt/)) { + if (!($chem =~ /_vbs/) and !($chem =~ /_tsmlt/) and !($chem =~ /_t1s/)) { %species = (%species, 'NH3 -> ' => 'nh3_emis_file'); } - if (!($chem =~ /_vbs/) and !($chem =~ /_tsmlt/)) { + if (!($chem =~ /_vbs/) and !($chem =~ /_tsmlt/) and !($chem =~ /_t1s/)) { %species = (%species, 'C10H16 -> ' => 'c10h16_emis_file', ); } @@ -2407,7 +2407,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { %species = (%species, 'E90_srf_file' => 'E90' ); } - if ($chem !~ /_ts4/ and $chem !~ /_t4ma/) { + if ($chem !~ /_t4s/ and $chem !~ /_t4ma/) { %species = (%species, 'BENZENE_an_srf_file' => 'BENZENE', 'BENZENE_bb_srf_file' => 'BENZENE', @@ -2428,10 +2428,10 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { 'XYLENES_an_srf_file' => 'XYLENES', 'XYLENES_bb_srf_file' => 'XYLENES' ) ; } - if ($chem =~ /trop_strat_mam4_ts2/ or $chem =~ /trop_strat_mam5_ts2/) { + if ($chem =~ /trop_strat_mam4_ts2/ or $chem =~ /trop_strat_mam5_t2s1/) { %species = (%species, 'MTERP_bb_srf_file' => 'APIN') ; - } elsif ($chem =~ /_ts4/ or $chem =~ /_t4ma/) { + } elsif ($chem =~ /_t4s/ or $chem =~ /_t4ma/) { %species = (%species, 'MTERP_bb_srf_file' => 'TERP') ; } else { @@ -2456,7 +2456,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { 'IVOC_bb_srf_file' => 'IVOCbb', 'SVOC_an_srf_file' => 'SVOCff', 'SVOC_bb_srf_file' => 'SVOCbb' ); - } elsif ($chem !~ /_ts4/ and $chem !~ /_t4ma/) { + } elsif ($chem !~ /_t4s/ and $chem !~ /_t4ma/) { %species = (%species, 'IVOC_an_srf_file' => 'IVOC', 'IVOC_bb_srf_file' => 'IVOC', @@ -2481,7 +2481,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { $first = 0; } } - if ($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4' or $chem eq 'ghg_mam4' or $chem =~ /_ts4/ or $chem =~ /_t4ma/) { + if ($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4' or $chem eq 'ghg_mam4' or $chem =~ /_t4s/ or $chem =~ /_t4ma/) { # SOA yields (used for the interactive emissions) have been calculated based on the VBS yields in CAM-chem. # Duseong S. Jo, et al. to be submitted to GMD, 2023 -- see https://github.com/ESCOMP/CAM/pull/727 discussion for additional detail. my %soae_fctrs = ('BENZENE_an_srf_file' => '2.5592D0', @@ -2657,7 +2657,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { add_default($nl, 'megan_factors_file'); add_default($nl, 'megan_mapped_emisfctrs', 'val'=>'.false.'); } - if ($chem =~ /trop_strat_mam4_vbs/ or $chem =~ /trop_strat_mam5_vbs/) { + if ($chem =~ /trop_strat_mam4_vbs/ or $chem =~ /trop_strat_mam5_vbsext/ or $chem =~ /trop_strat_mam5_t1s/) { my $val = "'ISOP = isoprene'," . "'MTERP = carene_3 + pinene_a + thujene_a + bornene + terpineol_4 + terpineol_a + terpinyl_ACT_a " . "+ myrtenal + sabinene + pinene_b + camphene + fenchene_a + limonene + phellandrene_a + terpinene_a " @@ -2696,7 +2696,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { add_default($nl, 'megan_factors_file'); add_default($nl, 'megan_mapped_emisfctrs', 'val'=>'.false.'); } - if ($chem =~ /trop_strat_mam5_ts4/ or $chem =~ /_t4ma/) { + if ($chem =~ /trop_strat_mam5_t4s2/ or $chem =~ /_t4ma/) { my $val = "'ISOP = isoprene'," . "'TERP = carene_3 + pinene_a + thujene_a + bornene + terpineol_4 + terpineol_a + terpinyl_ACT_a +'," . "' myrtenal + sabinene + pinene_b + camphene + fenchene_a + limonene + phellandrene_a + terpinene_a +'," @@ -2728,7 +2728,7 @@ if ($phys =~ /cam6/ or $phys =~ /cam7/) { add_default($nl, 'megan_factors_file'); add_default($nl, 'megan_mapped_emisfctrs', 'val'=>'.false.'); } - if ($chem =~ /trop_strat_mam4_ts2/ or $chem =~ /trop_strat_mam5_ts2/) { + if ($chem =~ /trop_strat_mam4_ts2/ or $chem =~ /trop_strat_mam5_t2s1/) { my $val = "'ISOP = isoprene'," . "'APIN = pinene_a + myrtenal'," . "'BPIN = carene_3 + thujene_a + bornene + fenchene_a + pinene_b + sabinene + camphene + terpineol_4 + terpineol_a + terpinyl_ACT_a'," diff --git a/bld/config_files/definition.xml b/bld/config_files/definition.xml index 5c87406542..c7ef1bb001 100644 --- a/bld/config_files/definition.xml +++ b/bld/config_files/definition.xml @@ -103,8 +103,8 @@ test_radiative (Radiatively Active Dust), test_swelling (Sea Salt), test_tracers trop_strat_soa1 (Trop Strat Aerosols SOA1), trop_strat_soa5 (Trop Strat Aerosols SOA5) - - Chemistry package: none,ghg_mam4,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_ts2,trop_strat_mam5_ts4,trop_strat_mam5_vbs,trop_strat_mam5_vbsext,trop_strat_noaero,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,waccm_t4ma_mam5,waccm_ma_noaero,geoschem_mam4 + + Chemistry package: none,ghg_mam4,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_t1s1,trop_strat_mam5_t1s2,trop_strat_mam5_t2s1,trop_strat_mam5_t4s2,trop_strat_mam5_vbsext,trop_strat_noaero,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,waccm_t4ma_mam5,waccm_ma_noaero,geoschem_mam4 Prognostic mozart species packages: list of any subset of the following: DST,SSLT,SO4,GHG,OC,BC,CARBON16 diff --git a/bld/configure b/bld/configure index 2dc733b733..3b330a7039 100755 --- a/bld/configure +++ b/bld/configure @@ -64,10 +64,11 @@ OPTIONS Default: none. -chem Build CAM with specified prognostic chemistry package [ none | ghg_mam4 | terminator | trop_mam3 | trop_mam4 | trop_mam7 | trop_mozart | trop_strat_mam4_ts2 | - trop_strat_mam4_vbs | trop_strat_mam4_vbsext | trop_strat_mam5_ts2 | trop_strat_mam5_ts4 | trop_strat_mam5_vbs | trop_strat_noaero | - trop_strat_mam5_vbsext | waccm_ma | waccm_mad | waccm_ma_sulfur | waccm_sc | waccm_sc_mam4 | - waccm_mad_mam4 | waccm_ma_mam4 | waccm_tsmlt_mam4 | waccm_tsmlt_mam4_vbsext | waccm_mad_mam5 | - waccm_ma_mam5 | waccm_tsmlt_mam5 | waccm_tsmlt_mam5_vbsext | waccm_ma_noaero | geoschem_mam4 ]. + trop_strat_mam4_vbs | trop_strat_mam4_vbsext | trop_strat_mam5_t1s1 | trop_strat_mam5_t2s2 | + trop_strat_mam5_t2s1 | trop_strat_mam5_t4s2 | trop_strat_noaero | trop_strat_mam5_vbsext | + waccm_ma | waccm_mad | waccm_ma_sulfur | waccm_sc | waccm_sc_mam4 | waccm_mad_mam4 | waccm_ma_mam4 | + waccm_tsmlt_mam4 | waccm_tsmlt_mam4_vbsext | waccm_mad_mam5 | waccm_ma_mam5 | waccm_tsmlt_mam5 | + waccm_tsmlt_mam5_vbsext | waccm_t4ma_mam5 | waccm_ma_noaero | geoschem_mam4 ]. Default: trop_mam4 for cam6 and trop_mam3 for cam5. -[no]clubb_sgs Switch on [off] CLUBB_SGS. Default: on for cam6 and cam7, otherwise off. -clubb_opts Comma separated list of CLUBB options to turn on/off. By default they are all off. diff --git a/bld/namelist_files/namelist_defaults_cam.xml b/bld/namelist_files/namelist_defaults_cam.xml index 9ced271b1f..d07c058992 100644 --- a/bld/namelist_files/namelist_defaults_cam.xml +++ b/bld/namelist_files/namelist_defaults_cam.xml @@ -62,10 +62,10 @@ atm/cam/inic/fv/aqua_0000-01-01_10x15_L30_c170103.nc atm/cam/inic/fv/camchemi_0012-01-01_10x15_L30_c081104.nc atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_10x15_L30_c121015.nc -atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_10x15_L30_c121015.nc +atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_10x15_L30_c121015.nc atm/cam/inic/fv/cami-mam4_0000-01-01_10x15_L32_c170914.nc atm/cam/inic/fv/aqua_0000-01-01_10x15_L32_c170103.nc -atm/cam/inic/fv/FC2000mam5_f10_0002-01-01_c221214.nc +atm/cam/inic/fv/FC2000mam5_f10_0002-01-01_c221214.nc atm/cam/inic/fv/carma_trop_strat_2000_10x15_spinup01.cam.i.0002-01-01-00000_c211027.nc atm/cam/inic/fv/aqua_carma_trop_strat_10x15_spinup01.cam.i.0002-01-01-00000_c211027.nc atm/waccm/ic/cami_2000-01-01_10x15_L66_c041121.nc @@ -79,7 +79,7 @@ atm/cam/inic/fv/cami_0000-01-01_4x5_L30_c090108.nc atm/cam/inic/fv/camchemi_0012-01-01_4x5_L30_c081104.nc atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_4x5_L30_c121015.nc -atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_4x5_L30_c121015.nc +atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_4x5_L30_c121015.nc atm/waccm/ic/wa3_4x5_1950_spinup.cam2.i.1960-01-01-00000.nc atm/waccm/ic/f40.2000.4deg.wcm.carma.sulf.004.cam2.i.0008-01-01-00000.nc atm/waccm/ic/f2000.waccm-mam3_4x5_L70.cam2.i.0017-01-01.c121113.nc @@ -101,7 +101,7 @@ atm/cam/inic/fv/cami_0000-09-01_1.9x2.5_L30_c070109.nc atm/cam/inic/fv/aqua_0006-01-01_1.9x2.5_L30_c161020.nc atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_1.9x2.5_L30_c121015.nc -atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_1.9x2.5_L30_c121015.nc +atm/cam/inic/fv/trop_strat_mam3_chem_2000-01-01_1.9x2.5_L30_c121015.nc atm/cam/inic/fv/camchemi_0012-01-01_1.9x2.5_L30_c081104.nc atm/cam/inic/fv/cami-chem_1990-01-01_1.9x2.5_L30_c080215.nc atm/cam/inic/fv/cami-mam3_0000-01-01_1.9x2.5_L32_c150407.nc @@ -132,8 +132,8 @@ atm/cam/inic/fv/aqua_0006-01-01_0.9x1.25_L32_c161020.nc atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc -atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc -atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc +atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc +atm/cam/inic/fv/f.e22.FC2010climo.f09_f09_mg17.cam6_2_022.001.cam.i.0016-01-01-00000_c200610.nc atm/waccm/ic/cami_2000-02-01_0.9x1.25_L66_c040928.nc atm/waccm/ic/FWT2000_f09_spinup01.cam.i.0001-01-02-00000_c160315.nc atm/waccm/ic/FWmaCARMAHIST_f09_spinup01.cam.i.1980-01-01-00000_c220128.nc @@ -160,7 +160,8 @@ atm/cam/inic/se/cam6_QPC6_aqua_ne3pg3_mg37_L32_01-01-31_c221214.nc atm/cam/inic/se/cam6_QPC6_topo_ne3pg3_mg37_L58_01-01-31_c221214.nc atm/cam/inic/se/cam6_FMTHIST_ne3pg3_mg37_L93_79-02-01_c240517.nc -atm/cam/inic/se/FCts4MTHIST_ne3pg3_spinup02.cam.i.1980-01-01_c240702.nc +atm/cam/inic/se/FHISTC_MTt1s_ne3pg3_O2_spinup01.cam.i.1980-01-01_c260201.nc +atm/cam/inic/se/FHISTC_MTt1s_ne3pg3_O2_spinup01.cam.i.1980-01-01_c260201.nc atm/cam/inic/se/ape_cam4_ne5np4_L26_c170517.nc atm/cam/inic/homme/cami-mam3_0000-01_ne5np4_L30.140707.nc @@ -192,15 +193,16 @@ atm/cam/inic/se/ape_cam6_ne30np4_L32_c170509.nc atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc atm/cam/inic/se/f.e22.FC2010climo.ne30pg3_ne30pg3_mg17.cam6_2_032.001.cam.i.0007-01-01-00000_c200623.nc -atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc -atm/cam/inic/se/f.e22.FC2010climo.ne30pg3_ne30pg3_mg17.cam6_2_032.001.cam.i.0007-01-01-00000_c200623.nc +atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc +atm/cam/inic/se/f.e22.FC2010climo.ne30pg3_ne30pg3_mg17.cam6_2_032.001.cam.i.0007-01-01-00000_c200623.nc atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc -atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc -atm/cam/inic/se/f.e22.FCnudged.ne30_ne30_mg17.release-cesm2.2.0_spinup.2010_2020.001.cam.i.2011-01-01-00000_L58_c220310.nc +atm/cam/inic/se/f.e22.FC2010climo.ne30_ne30_mg17.cam6_2_032.001.cam.i.0006-01-01-00000_c200623.nc +atm/cam/inic/se/f.e22.FCnudged.ne30_ne30_mg17.release-cesm2.2.0_spinup.2010_2020.001.cam.i.2011-01-01-00000_L58_c220310.nc atm/cam/inic/se/FLT_L58_ne30pg3_IC_c220623.nc atm/waccm/ic/FW2000.ne30pg3_ne30pg3_nlev70_c230906.nc atm/cam/inic/se/c153_ne30pg3_FMTHIST_x02.cam.i.1990-01-01-00000_c240618.nc -atm/cam/inic/se/f.cam6_3_160.FCMT_ne30.moving_mtn.001.cam.i.1996-01-01-00000_c240618.nc +atm/cam/inic/se/FHISTC_MTt1s_ne30pg3_O2_spinup01.cam.i.1980-01-01_c260201.nc +atm/cam/inic/se/FHISTC_MTt1s_ne30pg3_O2_spinup01.cam.i.1980-01-01_c260201.nc atm/waccm/ic/FWsc2000_ne30pg3_L110_01-01-0001_c200521.nc atm/waccm/ic/fx2000_phys-ionos-cpl_ne30_spinup01.cam.i.0002-01-01-00000_c201014.nc atm/waccm/ic/waccmx_ne30pg3_L130_c250307.nc @@ -226,7 +228,7 @@ atm/cam/inic/se/F2000climo_CONUS_30x8_mt12_mg3_01-01-00000_c200421.nc atm/cam/inic/se/f.e22.FCnudged.ne0CONUSne30x8_ne0CONUSne30x8_mt12.cam6_2_032.002.cam.i.2013-01-01-00000_c200623.nc -atm/cam/inic/se/f.e22.FCnudged.ne0CONUSne30x8_ne0CONUSne30x8_mt12.cam6_2_032.002.cam.i.2013-01-01-00000_c200623.nc +atm/cam/inic/se/f.e22.FCnudged.ne0CONUSne30x8_ne0CONUSne30x8_mt12.cam6_2_032.002.cam.i.2013-01-01-00000_c200623.nc atm/waccm/ic/FW2000_CONUS_30x8_L70_01-01-0001_c200602.nc atm/cam/inic/se/FHIST_ARCTIC_ne30x4_mt12_1979bc-mg3_01-01-00000_c200424.nc @@ -802,6 +804,7 @@ 0.7D0 0.15D0 +0.15D0 0.15D0 0.25D0 0.25D0 @@ -810,7 +813,7 @@ 0.5D0 0.5D0 0.5D0 -0.5D0 +0.5D0 0.5D0 0.5D0 0.5D0 @@ -837,7 +840,7 @@ 0.5d0 0.5d0 0.5d0 -0.5d0 +0.5d0 0.5d0 1.d0 2.d0 @@ -845,7 +848,7 @@ 2.d0 2.d0 2.d0 -2.d0 +2.d0 2.d0 2.D0 2.D0 @@ -855,7 +858,7 @@ .false. .false. .false. -.false. +.false. .false. .false. .false. @@ -865,7 +868,7 @@ .false. .false. .false. -.false. +.false. .false. .false. .false. @@ -1519,13 +1522,13 @@ atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_num_a2_so4_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_SO2_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a1_anthro-ene_vertical_v3.1_c20191104.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a1_anthro-ene_vertical_v3.1_c20191104.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_so4_a1_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_num_a1_so4_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_so4_a2_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_num_a2_so4_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_SO2_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a1_anthro-ene_vertical_v3.1_c20191104.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a1_anthro-ene_vertical_v3.1_c20191104.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_so4_a1_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_num_a1_so4_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_so4_a2_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_num_a2_so4_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_SO2_contvolcano_vertical_850-5000_ne0CONUSne30x8_c20191202.nc atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_bc_a4_v3.1_c20191103.nc atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_num_bc_a4_v3.1_c20191103.nc @@ -1540,18 +1543,18 @@ atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a2_anthro-res_surface_v3.1_c20191103.nc atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a2_anthro-res_surface_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_bc_a4_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_num_bc_a4_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_bc_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_num_bc_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_pom_a4_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_num_pom_a4_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_pom_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_num_pom_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a1_anthro-ag-ship_surface_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a1_anthro-ag-ship_surface_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a2_anthro-res_surface_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a2_anthro-res_surface_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_bc_a4_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_num_bc_a4_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_bc_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_num_bc_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_pom_a4_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_num_pom_a4_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_pom_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_num_pom_a4_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a1_anthro-ag-ship_surface_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a1_anthro-ag-ship_surface_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_so4_a2_anthro-res_surface_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_num_so4_a2_anthro-res_surface_v3.1_c20191103.nc atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_BENZENE_v3.1_c20191103.nc atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BENZENE_bb_surface_20100101-20171231_ne0conus_c200619.nc @@ -1628,78 +1631,78 @@ atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_XYLENES_v3.1_c20191103.nc atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_XYLENES_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGALD_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_BIGALK_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGALK_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_BIGENE_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGENE_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H2_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H2_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H4_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H4_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C2H4_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H5OH_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H5OH_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H6_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H6_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C2H6_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C3H6_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C3H6_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C3H6_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C3H8_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C3H8_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C3H8_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH2O_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH2O_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3CHO_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3CHO_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3CN_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3CN_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3COCH3_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COCH3_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COCHO_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3COOH_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COOH_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3OH_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3OH_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CO_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CO_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_CO_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CRESOL_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_DMS_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_GLYALD_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_HCN_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HCN_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_HCOOH_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HCOOH_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HYAC_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_ISOP_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_ISOP_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_IVOC_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_IVOC_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MACR_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_MEK_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MEK_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_MTERP_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_TERPENES_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MVK_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_NH3_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NH3_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_NH3_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_NOx_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NO_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_NO_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NO2_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_SO2_anthro-ag-ship-res_surface_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_SO2_anthro-ene_surface_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_SO2_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_SOAGx1.5_v3.1_c20191103.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_SVOC_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_SVOC_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_TOLUENE_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_TOLUENE_bb_surface_20100101-20171231_ne0conus_c200619.nc -atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_XYLENES_v3.1_c20191103.nc -atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_XYLENES_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGALD_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_BIGALK_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGALK_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_BIGENE_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_BIGENE_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H2_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H2_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H4_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H4_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C2H4_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H5OH_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H5OH_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C2H6_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C2H6_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C2H6_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C3H6_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C3H6_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C3H6_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_C3H8_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_C3H8_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_C3H8_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH2O_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH2O_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3CHO_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3CHO_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3CN_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3CN_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3COCH3_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COCH3_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COCHO_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3COOH_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3COOH_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CH3OH_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CH3OH_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_CO_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CO_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_CO_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_CRESOL_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_DMS_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_GLYALD_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_HCN_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HCN_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_HCOOH_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HCOOH_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_HYAC_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_ISOP_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_ISOP_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_IVOC_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_IVOC_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MACR_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_MEK_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MEK_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_MTERP_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_TERPENES_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_MVK_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_NH3_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NH3_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_NH3_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_NOx_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NO_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/historical_ne0CONUSne30x8/emissions-cmip6_NO_other_surface_1750_2015_historical_ne0CONUSne30x8_c20191028.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_NO2_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_SO2_anthro-ag-ship-res_surface_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_SO2_anthro-ene_surface_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_SO2_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_SOAGx1.5_v3.1_c20191103.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_SVOC_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_SVOC_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_TOLUENE_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_TOLUENE_bb_surface_20100101-20171231_ne0conus_c200619.nc +atm/cam/chem/emis/CAMS_Anthro_ne0CONUSne30x8/CAMS-GLOB-ANT_Glb_ne0CONUSne30x8_anthro_surface_XYLENES_v3.1_c20191103.nc +atm/cam/chem/emis/finn1.5/CONUSne30x8/emissions-finnv1.5_XYLENES_bb_surface_20100101-20171231_ne0conus_c200619.nc @@ -2516,18 +2519,10 @@ 4.0D0 2.0D0 4.0D0 -2.0D0 -4.0D0 -2.0D0 -4.0D0 -2.0D0 -4.0D0 -2.0D0 -4.0D0 -2.0D0 -4.0D0 -2.0D0 -4.0D0 +2.0D0 +4.0D0 +2.0D0 +4.0D0 2.0D0 4.0D0 2.0D0 @@ -3050,6 +3045,7 @@ .false. .false. .false. +.false. .true. .false. .true. @@ -3185,6 +3181,7 @@ 3.22D0 3 + 3 2 4 10 @@ -3203,6 +3200,7 @@ 1 3 + 3 2 4 20 @@ -3254,6 +3252,7 @@ 7.5 5.0 -1 + -1 30 30 30 @@ -3287,6 +3286,7 @@ 10 3 + 3 2 2 4 @@ -3421,7 +3421,7 @@ 'SolIonRate_Tot = jeuv_1 + jeuv_2 + jeuv_3 + jeuv_4 + jeuv_5 + jeuv_6 + jeuv_7 + jeuv_8 + jeuv_9 + jeuv_10 + jeuv_11 + ', 'jeuv_14 + jeuv_15 + jeuv_16 + jeuv_17 + jeuv_18 + jeuv_19 + jeuv_20 + jeuv_21 + jeuv_22 + jeuv_23', - + 'O3_Prod = NO_HO2 + CH3O2_NO + HOCH2OO_NO + C2H5O2_NO + CH3CO3_NO + EO2_NO + C3H7O2_NO + PO2_NO + ', 'RO2_NO + ENEO2_NO + MACRO2_NOa + jhonitr + ', 'MCO3_NO + MEKO2_NO + ALKO2_NO + jalknit + ACBZO2_NO + BENZO2_NO + BZOO_NO + ', @@ -3532,7 +3532,7 @@ 'APIN_O3 + BPIN_O3 + LIMON_O3 + MYRC_O3 + ', 'ISOPN1D_O3 + ISOPN4D_O3 + ISOPNOOHD_O3 + NC4CHO_O3 + TERPF1_O3 + TERPF2_O3' - + 'O3_Prod = NO_HO2 + CH3O2_NO + C2H5O2_NO + CH3CO3_NO + EO2_NO + C3H7O2_NO + PO2_NO + RO2_NO + ', ' MACRO2_NOa + MCO3_NO + .92*ISOPO2_NO + ISOPNO3_NO + XO2_NO + jnoa + jonitr + NOA_OH ', 'O3_Loss = O1D_H2O + OH_O3 + HO2_O3 + C2H4_O3 + C3H6_O3 + ISOP_O3 + MVK_O3 + MACR_O3 + TERP_O3 + S_O3 + SO_O3', @@ -3561,6 +3561,11 @@ ' 2.0*CLO_CLOa + 2.0*CLO_CLOb + 2.0*BRO_CLOb + 2.0*BRO_CLOc + 2.0*BRO_BRO + 2.0*BRO_O + CLO_HO2 + BRO_HO2 + C2H4_O3 + ', ' C3H6_O3 + ISOP_O3 + MVK_O3 + MACR_O3 + TERP_O3 + S_O3 + SO_O3' + + 'O3S_Loss = 2.0*O_O3 + O1D_H2O + HO2_O3 + OH_O3 + H_O3 + 2.0*NO2_O + 2.0*jno3_b + 2.0*CLO_O + 2.0*jcl2o2 + 2.0*CLO_CLOa + ', + ' 2.0*CLO_CLOb + 2.0*BRO_CLOb + 2.0*BRO_CLOc + 2.0*BRO_BRO + 2.0*BRO_O + CLO_HO2 + BRO_HO2 + S_O3 + SO_O3 + ', + ' C2H4_O3 + C3H6_O3 + ISOP_O3 + MVK_O3 + MACR_O3 + TERP_O3' + 'O3_Prod = NO_HO2 + CH3O2_NO + HOCH2OO_NO + C2H5O2_NO + CH3CO3_NO + EO2_NO + C3H7O2_NO + PO2_NO + RO2_NO + ENEO2_NO + ', ' MACRO2_NOa + MCO3_NO + MEKO2_NO + ALKO2_NO + .92*ISOPAO2_NO + .92*ISOPBO2_NO + ISOPNO3_NO + XO2_NO + ACBZO2_NO + ', diff --git a/bld/namelist_files/namelist_definition.xml b/bld/namelist_files/namelist_definition.xml index 7f05c8be9e..d56675faef 100644 --- a/bld/namelist_files/namelist_definition.xml +++ b/bld/namelist_files/namelist_definition.xml @@ -5180,10 +5180,11 @@ Default: set by build-namelist + trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_t1s1,trop_strat_mam5_t1s2, + trop_strat_mam5_t2s1,trop_strat_mam5_t4s2,trop_strat_mam5_vbsext,trop_strat_noaero, + waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4, + waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5, + waccm_tsmlt_mam5_vbsext,waccm_t4ma_mam5,waccm_ma_noaero,geoschem_mam4"> Name of the CAM chemistry package. N.B. this variable may not be set by the user. It is set by build-namelist via information in the configure cache file to be consistent with how CAM was built. diff --git a/bld/namelist_files/use_cases/hist_trop_strat_nudged_cam6.xml b/bld/namelist_files/use_cases/hist_trop_strat_nudged_cam6.xml index 026e329d7a..c7980a34f7 100644 --- a/bld/namelist_files/use_cases/hist_trop_strat_nudged_cam6.xml +++ b/bld/namelist_files/use_cases/hist_trop_strat_nudged_cam6.xml @@ -29,7 +29,7 @@ 'SERIAL' INTERP_MISSING_MONTHS - + 'bc_a4 -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_bc_a4_aircraft_vertical_mol_175001-210101_0.9x1.25_c20190224.nc', 'NO2 -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_NO2_aircraft_vertical_mol_175001-210101_0.9x1.25_c20190224.nc', 'num_a1 -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_num_so4_a1_anthro-ene_vertical_mol_175001-210101_0.9x1.25_c20190224.nc', @@ -45,7 +45,7 @@ INTERP_MISSING_MONTHS - + 'BENZENE -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_BENZENE_anthro_surface_mol_175001-210101_0.9x1.25_c20190224.nc', 'BENZENE -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_BENZENE_bb_surface_mol_175001-210101_0.9x1.25_c20190224.nc', 'BIGALK -> $INPUTDATA_ROOT/atm/cam/chem/emis/emissions_ssp585/emissions-cmip6-ScenarioMIP_IAMC-REMIND-MAGPIE-ssp585-1-1_BIGALK_anthro_surface_mol_175001-210101_0.9x1.25_c20190224.nc', @@ -185,9 +185,9 @@ 0, -24 'A', 'A' - 1, 1 - 0, 0 -'A', 'A' + 1, 1 + 0, 0 +'A', 'A' .true. .false. @@ -233,18 +233,18 @@ 'OddOx_Ox_Loss','OddOx_HOx_Loss','OddOx_NOx_Loss','OddOx_CLOxBROx_Loss','OddOx_Loss_Tot','OddOx_Prod_Tot', 'Ox_Prod','Ox_Loss' - + 'PMID', 'PDELDRY','PS','PHIS:I','Z3','T','U','V','Q','TROP_P', 'CLOUD', 'CO','O3','O3S','NO2','NO','OH','ISOP','SO2', 'PAN', 'HNO3', 'C2H6', 'C3H8', 'CH2O', 'CH3COCH3', 'SFISOP','SFCO','SFNO','SFNO2', 'PM25_SRF', 'so4_a1','so4_a2','so4_a3','dst_a1','dst_a2','dst_a3','soa_a1','soa_a2', 'ncl_a1','ncl_a2','ncl_a3','bc_a1', 'bc_a4','pom_a1','pom_a4', 'AODVISdn', - + 'soa_a1 = soa1_a1 + soa2_a1 + soa3_a1 + soa4_a1 + soa5_a1', 'soa_a2 = soa1_a2 + soa2_a2 + soa3_a2 + soa4_a2 + soa5_a2' - + 'MEG_APIN','MEG_BPIN','MEG_LIMON','MEG_MYRC', 'ISOPFDN', 'ISOPFNP', 'ISOPN3B', 'ISOPN2B', 'ISOPN1D', 'ISOPN4D', 'ISOPNBNO3', 'ISOPNOOHB', 'ISOPNOOHD', 'INHEB','INHED', diff --git a/bld/namelist_files/use_cases/hist_trop_strat_t4s_cam7.xml b/bld/namelist_files/use_cases/hist_trop_strat_t4s_cam7.xml index 20418b62e4..e3879c5f1d 100644 --- a/bld/namelist_files/use_cases/hist_trop_strat_t4s_cam7.xml +++ b/bld/namelist_files/use_cases/hist_trop_strat_t4s_cam7.xml @@ -2,9 +2,6 @@ - -atm/cam/inic/se/f.cam6_3_153.FCMTnudged_climate_chemistry_ne30.factor_fix.cam.i.1996-01-01-00000_c220522.nc - atm/cam/solar/SolarForcingCMIP7-4.6_18491230-20240101_sumEPP_c20250630.nc SERIAL diff --git a/cime_config/config_component.xml b/cime_config/config_component.xml index 0a0b851b54..75afc03dc1 100644 --- a/cime_config/config_component.xml +++ b/cime_config/config_component.xml @@ -8,9 +8,9 @@ CAM =============== --> - CAM cam7 physics: - CAM cam6 physics: - CAM cam5 physics: + CAM cam7 physics: + CAM cam6 physics: + CAM cam5 physics: CAM cam4 physics: CAM simplified and non-versioned physics : @@ -35,12 +35,13 @@ CAM Options =============== --> - CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA: - CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA and expanded isoprene and terpene oxidation: - CAM-Chem troposphere/stratosphere simplified chemistry for climate simulations: - Middle atmosphere chemistiry: - Middle atmosphere chemistiry with T1 troposphere chemistry: - Middle atmosphere chemistiry with T4 troposphere chemistry: + WACCM middle atmosphere chemistiry with T0 troposphere chemistry: + CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA: + CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA including chemical heating: + WACCM middle atmosphere chemistiry with T1 troposphere chemistry: + CAM-Chem troposphere/stratosphere simplified chemistry for climate simulations including chemical heating: + WACCM middle atmosphere chemistiry with T4 troposphere chemistry: + CAM-Chem troposphere/stratosphere chemistry with simplified VBS-SOA and expanded isoprene and terpene oxidation: Specified oxidants chemistiry GEOS-Chem troposphere/stratosphere chemistry : CAM-Chem troposphere/stratosphere chem with simplified volatility basis set SOA scheme and fire emissons : @@ -132,14 +133,15 @@ -phys cam7 - -chem trop_strat_mam5_vbs + -chem trop_strat_mam5_t1s1 + -chem trop_strat_mam5_t1s2 -waccm_phys -chem geoschem_mam4 -chem trop_strat_noaero -carma trop_strat_soa5 -chem waccm_ma_noaero -carma trop_strat_soa1 -chem trop_strat_mam5_vbsext - -chem trop_strat_mam5_ts2 - -chem trop_strat_mam5_ts4 + -chem trop_strat_mam5_t2s1 + -chem trop_strat_mam5_t4s2 -waccm_phys -chem ghg_mam4 -chem waccm_sc_mam4 -chem waccm_ma_mam5 @@ -245,7 +247,7 @@ waccm_tsmlt_2000_cam6 waccm_ma_2000_cam6 waccm_sc_2000_cam6 - 2000_trop_strat_vbs_cam6 + 2000_trop_strat_vbs_cam6 carma_trop_strat_cam6 2000_geoschem waccmx_ma_2000_cam6 @@ -261,7 +263,7 @@ aquaplanet_waccm_2000 2010_cam6 - 2010_trop_strat_vbs_cam6 + 2010_trop_strat_vbs_cam6 waccm_tsmlt_2010_cam6 waccm_sc_2010_cam6 2010_geoschem @@ -282,9 +284,9 @@ waccm_sc_hist_cam7 waccm_ma_hist_cam7 hist_trop_strat_vbs_cam6 - hist_trop_strat_t4s_cam7 - 1850_trop_strat_t4s_cam7 - hist_trop_strat_nudged_cam6 + hist_trop_strat_t4s_cam7 + 1850_trop_strat_t4s_cam7 + hist_trop_strat_nudged_cam6 carma_trop_strat_hist_cam6 carma_trop_strat_nudged_cam6 carma_waccm_ma_hist_cam6 @@ -317,8 +319,8 @@ sd_waccm_ma_cam6 sd_waccm_ma_cam6 sd_waccm_ma_cam4 - sd_trop_strat_vbs_cam6 - sd_trop_strat2_cam6 + sd_trop_strat_vbs_cam6 + sd_trop_strat2_cam6 carma_trop_strat_sd_cam6 sd_cam6 diff --git a/cime_config/config_compsets.xml b/cime_config/config_compsets.xml index aafbf7a36d..aeb67c09d3 100644 --- a/cime_config/config_compsets.xml +++ b/cime_config/config_compsets.xml @@ -192,7 +192,7 @@ FCSCAM - 2000_CAM60%SCAM%CT1S_CLM50%SP_CICE%PRES_DOCN%DOM_SROF_SGLC_SWAV + 2000_CAM60%SCAM%CT1S1_CLM50%SP_CICE%PRES_DOCN%DOM_SROF_SGLC_SWAV @@ -246,7 +246,7 @@ QPC2000climo - 2000_CAM60%CT1S_SLND_SICE_DOCN%AQP3_SROF_SGLC_SWAV + 2000_CAM60%CT1S1_SLND_SICE_DOCN%AQP3_SROF_SGLC_SWAV @@ -357,11 +357,11 @@ FC2000climo - 2000_CAM60%CT1S_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + 2000_CAM60%CT1S1_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FC2000climo_HCO - 2000_CAM60%CT1S%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + 2000_CAM60%CT1S1%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FC2000climo_GC @@ -406,11 +406,11 @@ FC2010climo - 2010_CAM60%CT1S_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + 2010_CAM60%CT1S1_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FC2010climo_HCO - 2010_CAM60%CT1S%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + 2010_CAM60%CT1S1%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FC2010climo_GC @@ -419,7 +419,7 @@ FCHIST - HIST_CAM60%CT1S_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCHIST_GC @@ -428,15 +428,15 @@ FHISTC_LTt1s - HISTC_CAM70%LT%CT1S_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HISTC_CAM70%LT%CT1S1_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FHISTC_MTt1s - HISTC_CAM70%MT%CT1S_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HISTC_CAM70%MT%CT1S2_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FHISTC_MTt4s - HISTC_CAM70%MT%CT4S_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HISTC_CAM70%MT%CT4S2_CLM60%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FHISTC_WAsc @@ -468,12 +468,12 @@ FCHIST_HCO - HIST_CAM60%CT1S%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCnudged - HIST_CAM60%CT1S%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCnudged_GC @@ -482,28 +482,28 @@ FCts2nudged - HIST_CAM60%CT2S%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT2S1%NUDG_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCnudged_HCO - HIST_CAM60%CT1S%NUDG%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1%NUDG%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCts2nudged_HCO - HIST_CAM60%CT2S%NUDG%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT2S1%NUDG%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCSD - HIST_CAM60%CT1S%SDYN_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1%SDYN_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCts2SD - HIST_CAM60%CT2S%SDYN_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT2S1%SDYN_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV FCSD_HCO - HIST_CAM60%CT1S%SDYN%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV + HIST_CAM60%CT1S1%SDYN%HEMCO_CLM50%SP_CICE%PRES_DOCN%DOM_MOSART_SGLC_SWAV diff --git a/doc/ChangeLog b/doc/ChangeLog index 0398b12428..b5e635f2cd 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,5 +1,110 @@ =============================================================== +Tag name: cam6_4_149 +Originator(s): fvitt, tilmes, lkemmons +Date: 6 Feb 2026 +One-line Summary: Include chemical heating in mid-top configurations +Github PR URL: https://github.com/ESCOMP/CAM/pull/1478 + +Purpose of changes (include the issue number and title text for each relevant GitHub issue): + + - Include chemical heating in mid-top configurations by turning on WACCM physics in + the mid-top (MT) chemistry compsets -- Issue #1476 + + - Update tropospheric chemistry + +Describe any changes made to build system: N/A + +Describe any changes made to the namelist: N/A + +List any changes to the defaults for the boundary datasets: + +Describe any substantial timing or memory changes: + +Code reviewed by: + +List all files eliminated: +D src/chemistry/pp_trop_strat_mam5_ts4 +D src/chemistry/pp_trop_strat_mam5_vbs + - replaced by the "s1" mechanisms + +List all files added and what they do: +A src/chemistry/pp_trop_strat_mam5_t4s2 +A src/chemistry/pp_trop_strat_mam5_t1s1 +A src/chemistry/pp_trop_strat_mam5_t1s2 + - low-top (s1) and mid-top mechanisms (s2) + +List all existing files that have been modified, and describe the changes: +M bld/build-namelist +M bld/namelist_files/use_cases/hist_trop_strat_nudged_cam6.xml + - key off of new mechanism names + +M bld/configure +M bld/config_files/definition.xml +M bld/namelist_files/namelist_definition.xml + - update chem names + +M bld/namelist_files/use_cases/hist_trop_strat_t4s_cam7.xml + - update mid-top IC file + +M bld/namelist_files/namelist_defaults_cam.xml + - update mid-top IC files + - key off of new mechanism names + +M cime_config/config_component.xml +M cime_config/config_compsets.xml + - include -waccm_phys configure option in mid-top chemistry compsets (S2) + - replace longname chemistry specifiers as follows + CT1S -> CT1S1, CT1S2 (low-top and mid-top) + CT4S -> CT4S2 (mid-top) + +M src/chemistry/mozart/mo_jeuv.F90 + - set euv_heating to zero when no EUV photo reactions are in mechanism (mid-top) + +M src/chemistry/mozart/mo_waccm_hrates.F90 + - output chemical heating info to atm.log file + +M src/chemistry/pp_waccm_t4ma_mam5 + - tropospheric chemistry updates + +If there were any failures reported from running test_driver.sh on any test +platform, and checkin with these failures has been OK'd by the gatekeeper, +then copy the lines from the td.*.status files for the failed tests to the +appropriate machine below. All failed tests must be justified. + +derecho/intel/aux_cam: + FAIL ERI_D_Ln18.ne16pg3_ne16pg3_mt232.FHIST_C4.derecho_intel.cam-outfrq3s_eri + - pre-existing failure + - ERI test discovered a bug in CICE: See: https://github.com/ESCOMP/CESM_CICE/issues/34 + + NLFAIL SMS_D_Ln9.f09_f09_mg17.FCts2nudged.derecho_intel.cam-outfrq9s_leapday + - expected namelist change -- chem name change + + DIFF ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s + DIFF ERP_Ln9.ne30pg3_ne30pg3_mg17.FCnudged.derecho_intel.cam-outfrq9s + DIFF SMS_D_Ln9.f19_f19_mg17.QPC2000climo.derecho_intel.cam-outfrq3s_usecase + DIFF SMS_D_Ln9_P1536x1.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.derecho_intel.cam-outfrq9s + DIFF SMS_Ld1.ne30pg3_ne30pg3_mg17.FC2010climo.derecho_intel.cam-outfrq1d + DIFF SMS_Lh12.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq3h + - expected baseline failures due to updates to chemical mechanisms + + DIFF ERP_Ld3.ne30pg3_ne30pg3_mt232.FHISTC_MTt4s.derecho_intel.cam-outfrq1d_aoa + DIFF SMS_D_Ln9_P1280x1.ne30pg3_ne30pg3_mt232.FHISTC_MTt1s.derecho_intel.cam-outfrq9s_Leung_dust + - expected baseline failures due to updates to chemical mechanisms + and inclusion of waccm physics in mid-top compsets + +derecho/nvhpc/aux_cam: All PASS + +izumi/nag/aux_cam: All PASS + +izumi/gnu/aux_cam: All PASS + +Summarize any changes to answers: + larger than roundoff for cam-chem compsets, otherwise bit-for-bit unchanged + +=============================================================== +=============================================================== + Tag name: cam6_4_148 Originator(s): peverwhee, sjsprecious Date: 29 January 2026 diff --git a/src/chemistry/mozart/mo_jeuv.F90 b/src/chemistry/mozart/mo_jeuv.F90 index c13255250e..301a9898c5 100644 --- a/src/chemistry/mozart/mo_jeuv.F90 +++ b/src/chemistry/mozart/mo_jeuv.F90 @@ -28,7 +28,7 @@ module mo_jeuv integer, parameter :: lmax = 23 ! number of wavelength bins in EUV real(r8), parameter :: heat_eff_fac = .08_r8 ! heating efficiency factor - ! Solar EUV direct heating was increased from 5% to 8% to bring it closer to the + ! Solar EUV direct heating was increased from 5% to 8% to bring it closer to the ! TIE-GCM value (5% applied twice for a total of 10%) -- Hanli Liu & Stan Solomon real(r8), parameter :: hc = 6.62608e-34_r8 * 2.9979e8_r8 / 1.e-9_r8 @@ -47,7 +47,7 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !============================================================================== ! Purpose: ! read tabulated data: -! (1) thermosphere neutral species' absorption cross sections, +! (1) thermosphere neutral species' absorption cross sections, ! photoionization/dissociation branching ratios ! (2) read photoelectron enhancement factor, photoelectron ionization/ ! dissociation/excitation branching ratios @@ -105,7 +105,7 @@ subroutine jeuv_init (photon_file, electron_file, indexer) solar_etf => euvac_etf endif - if ( size(solar_etf) /= lmax ) then + if ( size(solar_etf) /= lmax ) then write(iulog,*) 'jeuv_init: the size of solar_etf is incorrect ' write(iulog,*) ' ... size(solar_etf) = ',size(solar_etf) write(iulog,*) ' .............. lmax = ',lmax @@ -114,12 +114,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read from data file the absorption cross sections for neutral species, -! braching ratios for photoionization/dissociation, and braching ratios +! braching ratios for photoionization/dissociation, and braching ratios ! for photoelectron ionization/dissociation/excitation !------------------------------------------------------------------------------ - master: if (masterproc) then ! read in ascii data only on master task then b-cast + master: if (masterproc) then ! read in ascii data only on master task then b-cast !------------------------------------------------------------------------------ - ! read neutral species' absorption cross section and + ! read neutral species' absorption cross section and ! photoionization/dissociation branching ratio !------------------------------------------------------------------------------ unit = getunit() @@ -132,12 +132,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read O !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -153,12 +153,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read O2 !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -174,12 +174,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read N2 !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -194,12 +194,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read N !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -216,12 +216,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read CO2 !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -255,12 +255,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read O !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -276,12 +276,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read O2 !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -297,12 +297,12 @@ subroutine jeuv_init (photon_file, electron_file, indexer) !------------------------------------------------------------------------------ ! read N2 !------------------------------------------------------------------------------ - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun end if - read(unit,*,iostat=istat) str + read(unit,*,iostat=istat) str if( istat /= 0 ) then write(iulog,*) 'jeuv_init: failed to read ',trim(locfn),'; error = ',istat call endrun @@ -347,7 +347,7 @@ subroutine jeuv( nlev, zen, occ, o2cc, n2cc, & ! euv_prates: array for EUV photolysis/ionization rates !============================================================================== ! Approach: -! call sphers +! call sphers ! input: zenith angle ! output: dsdh and nid used in slant column routine ! call slant_col @@ -394,11 +394,11 @@ subroutine jeuv( nlev, zen, occ, o2cc, n2cc, & !------------------------------------------------------------------------------ integer, intent(in) :: nlev ! model vertical levels real(r8), intent(in) :: zen ! Zenith angle in degree - real(r8), intent(in) :: occ(nlev) ! atmic oxygen number density (#/cm3) - real(r8), intent(in) :: o2cc(nlev) ! Molecular oxygen number density (#/cm3) - real(r8), intent(in) :: n2cc(nlev) ! molecular nitrogen number density(#/cm3) + real(r8), intent(in) :: occ(nlev) ! atmic oxygen number density (#/cm3) + real(r8), intent(in) :: o2cc(nlev) ! Molecular oxygen number density (#/cm3) + real(r8), intent(in) :: n2cc(nlev) ! molecular nitrogen number density(#/cm3) real(r8), intent(in) :: zkm(nlev) ! Altitude, km,from top to bottom - real(r8), intent(out) :: euv_prates(:,:) ! EUV photolysis/ionization rates (s-1) + real(r8), intent(out) :: euv_prates(:,:) ! EUV photolysis/ionization rates (s-1) !------------------------------------------------------------------------------ ! local variables @@ -412,11 +412,11 @@ subroutine jeuv( nlev, zen, occ, o2cc, n2cc, & real(r8) :: wrk(nmaj) ! temporary array for photoabsorption rate real(r8) :: absorp(nlev,lmax) ! temporary array for photoabsorption rate real(r8) :: ioniz(nlev,lmax) ! temporary array for photoionization rate - real(r8) :: dsdh(0:nlev,nlev) ! Slant path of direct beam through each layer - ! crossed when travelling from the top of the atmosphere + real(r8) :: dsdh(0:nlev,nlev) ! Slant path of direct beam through each layer + ! crossed when travelling from the top of the atmosphere ! to layer i; dsdh(i,j), i = 0..NZ-1, j = 1..NZ-1 integer :: nid(0:nlev) ! Number of layers crossed by the direct - ! beam when travelling from the top of the + ! beam when travelling from the top of the ! atmosphere to layer i; NID(i), i = 0..NZ-1 real(r8) :: p_photon(nlev,nstat,nspecies) ! photoionization/dissociation rates(s-1) (O,O2,N2,N) real(r8) :: p_electron(nlev,nstat,nmaj) ! photoelectron ionization/dissociation rates(s-1) (O,O2,N2) @@ -471,7 +471,7 @@ subroutine jeuv( nlev, zen, occ, o2cc, n2cc, & !------------------------------------------------------------------------------ ! set photolysis/ionization rate for each reaction !------------------------------------------------------------------------------ - prates(:,1) = p_photon(:,2,1) + prates(:,1) = p_photon(:,2,1) prates(:,2) = p_photon(:,3,1) prates(:,3) = p_photon(:,4,1) prates(:,4) = p_photon(:,1,4) @@ -496,8 +496,8 @@ subroutine jeuv( nlev, zen, occ, o2cc, n2cc, & prates(:,23) = .8_r8*p_electron(:,4,3) prates(:,24) = p_electron(:,5,2) prates(:,25) = p_electron(:,5,3) - prates(:,26) = p_photon(:,1,5) - + prates(:,26) = p_photon(:,1,5) + do m = 1,neuv euv_prates(:,m) = prates(nlev:1:-1,m) enddo @@ -521,7 +521,7 @@ subroutine heuv( nlev, zen, occ, o2cc, n2cc, & ! euv_prates: array for EUV photolysis/ionization rates !============================================================================== ! Approach: -! call sphers +! call sphers ! input: zenith angle ! output: dsdh and nid used in slant column routine ! call slant_col @@ -580,14 +580,18 @@ subroutine heuv( nlev, zen, occ, o2cc, n2cc, & real(r8) :: prates(kbot,13) ! working photorates array real(r8) :: wrk(nmaj) ! temporary array for photoabsorption rate real(r8) :: absorp(kbot,lmax) ! temporary array for photoabsorption rate - real(r8) :: dsdh(0:nlev,nlev) ! Slant path of direct beam through each layer - ! crossed when travelling from the top of the atmosphere + real(r8) :: dsdh(0:nlev,nlev) ! Slant path of direct beam through each layer + ! crossed when travelling from the top of the atmosphere ! to layer i; dsdh(i,j), i = 0..NZ-1, j = 1..NZ-1 integer :: nid(0:nlev) ! Number of layers crossed by the direct - ! beam when travelling from the top of the + ! beam when travelling from the top of the ! atmosphere to layer i; NID(i), i = 0..NZ-1 real(r8) :: p_photon(kbot,nstat,nspecies) ! photoionization/dissociation rates(s-1) (O,O2,N2,N) + if (.not.any(do_heating)) then + euv_hrates(:) = 0._r8 + return + end if !------------------------------------------------------------------------------ ! zero arrays !------------------------------------------------------------------------------ diff --git a/src/chemistry/mozart/mo_waccm_hrates.F90 b/src/chemistry/mozart/mo_waccm_hrates.F90 index 4f368c749f..90ea2b35dc 100644 --- a/src/chemistry/mozart/mo_waccm_hrates.F90 +++ b/src/chemistry/mozart/mo_waccm_hrates.F90 @@ -4,6 +4,7 @@ module mo_waccm_hrates use shr_kind_mod, only : r8 => shr_kind_r8 use cam_logfile, only : iulog use physics_buffer, only : pbuf_get_index, pbuf_get_field + use spmd_utils, only : masterproc implicit none @@ -26,7 +27,7 @@ module mo_waccm_hrates integer :: ele_temp_ndx, ion_temp_ndx contains - + subroutine init_hrates( ) use mo_chem_utls, only : get_spc_ndx use cam_history, only : addfld @@ -52,6 +53,12 @@ subroutine init_hrates( ) has_hrates = all( ids(:) > 0 ) .and. ptop_ref < 0.0004_r8 * psurf_ref + if (masterproc) then + write(iulog,*) 'init_hrates: ids: ',ids + write(iulog,*) 'init_hrates: ptop_ref: ',ptop_ref,' psurf_ref: ',psurf_ref + write(iulog,*) 'init_hrates: hrates active: ', has_hrates + end if + if (.not. has_hrates) return call addfld( 'CPAIR', (/ 'lev' /), 'I', 'J/K/kg', 'specific heat cap air' ) @@ -81,7 +88,7 @@ subroutine init_hrates( ) attr = 'total jo2 euv photolysis rate' call addfld( 'JO2_EUV', (/ 'lev' /), 'I', '/s', trim(attr) ) - ele_temp_ndx = pbuf_get_index('TElec',errcode=err)! electron temperature index + ele_temp_ndx = pbuf_get_index('TElec',errcode=err)! electron temperature index ion_temp_ndx = pbuf_get_index('TIon',errcode=err) ! ion temperature index end subroutine init_hrates @@ -206,41 +213,41 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) qrs_tot(:ncol,:) = 0._r8 if (.not. has_hrates) return - -!------------------------------------------------------------------------- + +!------------------------------------------------------------------------- ! ... set maximum zenith angle - higher value for higher top model -!------------------------------------------------------------------------- - if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then +!------------------------------------------------------------------------- + if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then max_zen_angle = 116._r8 else max_zen_angle = 97.01_r8 ! degrees endif -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... get chunk latitudes and longitudes -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- lchnk = state%lchnk call get_rlat_all_p( lchnk, ncol, rlats ) call get_rlon_all_p( lchnk, ncol, rlons ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set lower limit for heating rates which is now dictated by radheat module -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- kbot_hrates = bot_mlt_lev kbot_hrates = min( kbot_hrates,pver ) ! write(iulog,*) 'hrates: kbot_hrates = ',kbot_hrates -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... calculate cosine of zenith angle then cast back to angle -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- calday = get_curr_calday() call zenith( calday, rlats, rlons, zen_angle, ncol ) zen_angle(:) = acos( zen_angle(:) ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... map incoming concentrations to working array -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- do m = 1,pcnst n = map2chm(m) if( n > 0 ) then @@ -251,49 +258,49 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) end do call get_short_lived_species( mmr, lchnk, ncol, pbuf ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set atmosphere mean mass -!----------------------------------------------------------------------- - if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then +!----------------------------------------------------------------------- + if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then do k = 1,pver mbar(:ncol,k) = mbarv(:ncol,k,lchnk) enddo - else + else call set_mean_mass( ncol, mmr, mbar ) endif ! -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... xform from mmr to vmr -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call mmr2vmr( mmr(:ncol,:,:), vmr(:ncol,:,:), mbar(:ncol,:), ncol ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... xform water vapor from mmr to vmr -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- do k = 1,pver h2ovmr(:ncol,k) = vmr(:ncol,k,id_h2o) end do -!----------------------------------------------------------------------- -! ... xform geopotential height from m to km +!----------------------------------------------------------------------- +! ... xform geopotential height from m to km ! and pressure from Pa to mb -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- zsurf(:ncol) = rga * state%phis(:ncol) do k = 1,pver zmid(:ncol,k) = m2km * (state%zm(:ncol,k) + zsurf(:ncol)) end do -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set the "invariants" -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call setinv( invariants, state%t, h2ovmr, vmr, state%pmid, ncol, lchnk, pbuf ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set the column densities at the upper boundary -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call set_ub_col( col_delta, vmr, invariants, state%pint(:,1), state%pdel, ncol, lchnk ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set rates for "tabular" and user specified reactions -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- do m = 1,rxntot do k = 1,pver reaction_rates(:,k,m) = 0._r8 @@ -303,15 +310,15 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) call usrrxt_hrates( reaction_rates, state%t, ele_temp_fld, ion_temp_fld, & h2ovmr, invariants(:,:,indexm), ncol, kbot_hrates ) call adjrxt( reaction_rates, invariants, invariants(1,1,indexm), ncol,pver ) - -!----------------------------------------------------------------------- + +!----------------------------------------------------------------------- ! ... set cp array -!----------------------------------------------------------------------- - if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then +!----------------------------------------------------------------------- + if ( waccmx_is('ionosphere') .or. waccmx_is('neutral') ) then do k = 1, pver cpair(:ncol,k) = cpairv(:ncol,k,lchnk) enddo - else + else call calc_cp( ncol, vmr, cpair ) endif @@ -325,18 +332,18 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) write(iulog,*) ' ' #endif -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set the earth-sun distance factor -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call shr_orb_decl( calday, eccen, mvelpp, lambm0, obliqr , & delta, esfact ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... set the column densities -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call setcol( col_delta, col_dens ) !----------------------------------------------------------------------- ! ... compute the thermal heating rates -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- do m = 1,4 do k = 1,pver qrs(:,k,m) = 0._r8 @@ -360,7 +367,7 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) o2_line(:) = vmr(i,:,id_o2) co2_line(:) = vmr(i,:,id_co2) n2_line(:) = 1._r8 - (o_line(:) + o2_line(:) + vmr(i,:,id_h)) - where( n2_line(:) < n2min ) + where( n2_line(:) < n2min ) n2_line = n2min end where o3_line(:) = vmr(i,:,id_o3) @@ -418,15 +425,15 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) call outfld( 'QRS_EUV', euv_hrate(:,:), ncol, lchnk ) call outfld( 'QRS_CO2NIR', co2_hrate(:,:), ncol, lchnk ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... chemical pot heating rate -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call cph( cphrate, vmr, reaction_rates, cpair, mbar, & kbot_hrates, ncol, lchnk ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... auroral ion production -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call aurora( state%t, mbar, rlats, & aur_hrate, cpair, state%pmid, lchnk, calday, & ncol, rlons, pbuf ) @@ -435,15 +442,15 @@ subroutine waccm_hrates(ncol, state, asdir, bot_mlt_lev, qrs_tot, pbuf ) end do call outfld( 'QRS_AUR', aur_hrate(:,:), ncol, lchnk ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... airglow heating rate -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- call airglow( aghrate, vmr(1,1,id_o2_1s), vmr(1,1,id_o2_1d), vmr(1,1,id_o1d), reaction_rates, cpair, & ncol, lchnk ) -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- ! ... form total heating rate -!----------------------------------------------------------------------- +!----------------------------------------------------------------------- do k = 1,kbot_hrates qrs_tot(:ncol,k) = qrs(:,k,1) + qrs(:,k,2) + qrs(:,k,3) + qrs(:,k,4) & + qrl(:,k,1) + qrl(:,k,2) + qrl(:,k,3) + qrl(:,k,4) diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.doc b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.doc similarity index 52% rename from src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.doc rename to src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.doc index 19fdd8488d..eb9483a651 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.doc +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.doc @@ -3,235 +3,234 @@ Solution species ( 1) ALKNIT (C5H11ONO2) ( 2) ALKOOH (C5H12O2) - ( 3) AOA_NH (CO) - ( 4) bc_a1 (C) - ( 5) bc_a4 (C) - ( 6) BCARY (C15H24) - ( 7) BENZENE (C6H6) - ( 8) BENZOOH (C6H8O5) - ( 9) BEPOMUC (C6H6O3) - ( 10) BIGALD (C5H6O2) - ( 11) BIGALD1 (C4H4O2) - ( 12) BIGALD2 (C5H6O2) - ( 13) BIGALD3 (C5H6O2) - ( 14) BIGALD4 (C6H8O2) - ( 15) BIGALK (C5H12) - ( 16) BIGENE (C4H8) - ( 17) BR (Br) - ( 18) BRCL (BrCl) - ( 19) BRO (BrO) - ( 20) BRONO2 (BrONO2) - ( 21) BRY - ( 22) BZALD (C7H6O) - ( 23) BZOOH (C7H8O2) - ( 24) C2H2 - ( 25) C2H4 - ( 26) C2H5OH - ( 27) C2H5OOH - ( 28) C2H6 - ( 29) C3H6 - ( 30) C3H7OOH - ( 31) C3H8 - ( 32) C6H5OOH (C6H5OOH) - ( 33) CCL4 (CCl4) - ( 34) CF2CLBR (CF2ClBr) - ( 35) CF3BR (CF3Br) - ( 36) CFC11 (CFCl3) - ( 37) CFC113 (CCl2FCClF2) - ( 38) CFC114 (CClF2CClF2) - ( 39) CFC115 (CClF2CF3) - ( 40) CFC12 (CF2Cl2) - ( 41) CH2BR2 (CH2Br2) - ( 42) CH2O - ( 43) CH3BR (CH3Br) - ( 44) CH3CCL3 (CH3CCl3) - ( 45) CH3CHO - ( 46) CH3CL (CH3Cl) - ( 47) CH3CN - ( 48) CH3COCH3 - ( 49) CH3COCHO - ( 50) CH3COOH - ( 51) CH3COOOH - ( 52) CH3OH - ( 53) CH3OOH - ( 54) CH4 - ( 55) CHBR3 (CHBr3) - ( 56) CL (Cl) - ( 57) CL2 (Cl2) - ( 58) CL2O2 (Cl2O2) - ( 59) CLO (ClO) - ( 60) CLONO2 (ClONO2) - ( 61) CLY - ( 62) CO - ( 63) CO2 - ( 64) COF2 - ( 65) COFCL (COFCl) - ( 66) CRESOL (C7H8O) - ( 67) DMS (CH3SCH3) - ( 68) dst_a1 (AlSiO5) - ( 69) dst_a2 (AlSiO5) - ( 70) dst_a3 (AlSiO5) - ( 71) E90 (CO) - ( 72) EOOH (HOCH2CH2OOH) - ( 73) F - ( 74) GLYALD (HOCH2CHO) - ( 75) GLYOXAL (C2H2O2) - ( 76) H - ( 77) H2 - ( 78) H2402 (CBrF2CBrF2) - ( 79) H2O2 - ( 80) H2SO4 (H2SO4) - ( 81) HBR (HBr) - ( 82) HCFC141B (CH3CCl2F) - ( 83) HCFC142B (CH3CClF2) - ( 84) HCFC22 (CHF2Cl) - ( 85) HCL (HCl) - ( 86) HCN - ( 87) HCOOH - ( 88) HF - ( 89) HNO3 - ( 90) HO2NO2 - ( 91) HOBR (HOBr) - ( 92) HOCL (HOCl) - ( 93) HONITR (C4H9NO4) - ( 94) HPALD (HOOCH2CCH3CHCHO) - ( 95) HYAC (CH3COCH2OH) - ( 96) HYDRALD (HOCH2CCH3CHCHO) - ( 97) IEPOX (C5H10O3) - ( 98) ISOP (C5H8) - ( 99) ISOPNITA (C5H9NO4) - (100) ISOPNITB (C5H9NO4) - (101) ISOPNO3 (CH2CHCCH3OOCH2ONO2) - (102) ISOPNOOH (C5H9NO5) - (103) ISOPOOH (HOCH2COOHCH3CHCH2) - (104) IVOC (C13H28) - (105) MACR (CH2CCH3CHO) - (106) MACROOH (CH3COCHOOHCH2OH) - (107) MEK (C4H8O) - (108) MEKOOH (C4H8O3) - (109) MPAN (CH2CCH3CO3NO2) - (110) MTERP (C10H16) - (111) MVK (CH2CHCOCH3) - (112) N - (113) N2O - (114) N2O5 - (115) NC4CH2OH (C5H9NO4) - (116) NC4CHO (C5H7NO4) - (117) ncl_a1 (NaCl) - (118) ncl_a2 (NaCl) - (119) ncl_a3 (NaCl) - (120) NH3 - (121) NH4 - (122) NH_5 (CO) - (123) NH_50 (CO) - (124) NO - (125) NO2 - (126) NO3 - (127) NOA (CH3COCH2ONO2) - (128) NTERPOOH (C10H17NO5) - (129) num_a1 (H) - (130) num_a2 (H) - (131) num_a3 (H) - (132) num_a4 (H) - (133) num_a5 (H) - (134) O - (135) O3 - (136) O3S (O3) - (137) OCLO (OClO) - (138) OCS (OCS) - (139) ONITR (C4H7NO4) - (140) PAN (CH3CO3NO2) - (141) PBZNIT (C7H5O3NO2) - (142) PHENO (C6H5O) - (143) PHENOL (C6H5OH) - (144) PHENOOH (C6H8O6) - (145) pom_a1 (C) - (146) pom_a4 (C) - (147) POOH (C3H6OHOOH) - (148) ROOH (CH3COCH2OOH) - (149) S (S) - (150) SF6 - (151) SO (SO) - (152) SO2 - (153) SO3 (SO3) - (154) so4_a1 (NH4HSO4) - (155) so4_a2 (NH4HSO4) - (156) so4_a3 (NH4HSO4) - (157) so4_a5 (NH4HSO4) - (158) soa1_a1 (C15H38O2) - (159) soa1_a2 (C15H38O2) - (160) soa2_a1 (C15H38O2) - (161) soa2_a2 (C15H38O2) - (162) soa3_a1 (C15H38O2) - (163) soa3_a2 (C15H38O2) - (164) soa4_a1 (C15H38O2) - (165) soa4_a2 (C15H38O2) - (166) soa5_a1 (C15H38O2) - (167) soa5_a2 (C15H38O2) - (168) SOAG0 (C15H38O2) - (169) SOAG1 (C15H38O2) - (170) SOAG2 (C15H38O2) - (171) SOAG3 (C15H38O2) - (172) SOAG4 (C15H38O2) - (173) ST80_25 (CO) - (174) SVOC (C22H46) - (175) TEPOMUC (C7H8O3) - (176) TERP2OOH (C10H16O4) - (177) TERPNIT (C10H17NO4) - (178) TERPOOH (C10H18O3) - (179) TERPROD1 (C10H16O2) - (180) TERPROD2 (C9H14O2) - (181) TOLOOH (C7H10O5) - (182) TOLUENE (C7H8) - (183) XOOH (HOCH2COOHCH3CHOHCHO) - (184) XYLENES (C8H10) - (185) XYLENOOH (C8H12O5) - (186) XYLOL (C8H10O) - (187) XYLOLOOH (C8H12O6) - (188) NHDEP (N) - (189) NDEP (N) - (190) ACBZO2 (C7H5O3) - (191) ALKO2 (C5H11O2) - (192) BCARYO2VBS (C15H25O3) - (193) BENZO2 (C6H7O5) - (194) BENZO2VBS (C6H7O5) - (195) BZOO (C7H7O2) - (196) C2H5O2 - (197) C3H7O2 - (198) C6H5O2 - (199) CH3CO3 - (200) CH3O2 - (201) DICARBO2 (C5H5O4) - (202) ENEO2 (C4H9O3) - (203) EO (HOCH2CH2O) - (204) EO2 (HOCH2CH2O2) - (205) HO2 - (206) HOCH2OO - (207) ISOPAO2 (HOC5H8O2) - (208) ISOPBO2 (HOC5H8O2) - (209) ISOPO2VBS (C5H9O3) - (210) IVOCO2VBS (C13H29O3) - (211) MACRO2 (CH3COCHO2CH2OH) - (212) MALO2 (C4H3O4) - (213) MCO3 (CH2CCH3CO3) - (214) MDIALO2 (C4H5O4) - (215) MEKO2 (C4H7O3) - (216) MTERPO2VBS (C10H17O3) - (217) NTERPO2 (C10H16NO5) - (218) O1D (O) - (219) OH - (220) PHENO2 (C6H7O6) - (221) PO2 (C3H6OHO2) - (222) RO2 (CH3COCH2O2) - (223) TERP2O2 (C10H15O4) - (224) TERPO2 (C10H17O3) - (225) TOLO2 (C7H9O5) - (226) TOLUO2VBS (C7H9O5) - (227) XO2 (HOCH2COOCH3CHOHCHO) - (228) XYLENO2 (C8H11O5) - (229) XYLEO2VBS (C8H11O5) - (230) XYLOLO2 (C8H11O6) - (231) H2O + ( 3) bc_a1 (C) + ( 4) bc_a4 (C) + ( 5) BCARY (C15H24) + ( 6) BENZENE (C6H6) + ( 7) BENZOOH (C6H8O5) + ( 8) BEPOMUC (C6H6O3) + ( 9) BIGALD (C5H6O2) + ( 10) BIGALD1 (C4H4O2) + ( 11) BIGALD2 (C5H6O2) + ( 12) BIGALD3 (C5H6O2) + ( 13) BIGALD4 (C6H8O2) + ( 14) BIGALK (C5H12) + ( 15) BIGENE (C4H8) + ( 16) BR (Br) + ( 17) BRCL (BrCl) + ( 18) BRO (BrO) + ( 19) BRONO2 (BrONO2) + ( 20) BRY + ( 21) BZALD (C7H6O) + ( 22) BZOOH (C7H8O2) + ( 23) C2H2 + ( 24) C2H4 + ( 25) C2H5OH + ( 26) C2H5OOH + ( 27) C2H6 + ( 28) C3H6 + ( 29) C3H7OOH + ( 30) C3H8 + ( 31) C6H5OOH (C6H5OOH) + ( 32) CCL4 (CCl4) + ( 33) CF2CLBR (CF2ClBr) + ( 34) CF3BR (CF3Br) + ( 35) CFC11 (CFCl3) + ( 36) CFC113 (CCl2FCClF2) + ( 37) CFC114 (CClF2CClF2) + ( 38) CFC115 (CClF2CF3) + ( 39) CFC12 (CF2Cl2) + ( 40) CH2BR2 (CH2Br2) + ( 41) CH2O + ( 42) CH3BR (CH3Br) + ( 43) CH3CCL3 (CH3CCl3) + ( 44) CH3CHO + ( 45) CH3CL (CH3Cl) + ( 46) CH3CN + ( 47) CH3COCH3 + ( 48) CH3COCHO + ( 49) CH3COOH + ( 50) CH3COOOH + ( 51) CH3OH + ( 52) CH3OOH + ( 53) CH4 + ( 54) CHBR3 (CHBr3) + ( 55) CL (Cl) + ( 56) CL2 (Cl2) + ( 57) CL2O2 (Cl2O2) + ( 58) CLO (ClO) + ( 59) CLONO2 (ClONO2) + ( 60) CLY + ( 61) CO + ( 62) CO2 + ( 63) COF2 + ( 64) COFCL (COFCl) + ( 65) CRESOL (C7H8O) + ( 66) DMS (CH3SCH3) + ( 67) dst_a1 (AlSiO5) + ( 68) dst_a2 (AlSiO5) + ( 69) dst_a3 (AlSiO5) + ( 70) E90 (CO) + ( 71) EOOH (HOCH2CH2OOH) + ( 72) F + ( 73) GLYALD (HOCH2CHO) + ( 74) GLYOXAL (C2H2O2) + ( 75) H + ( 76) H2 + ( 77) H2402 (CBrF2CBrF2) + ( 78) H2O2 + ( 79) H2SO4 (H2SO4) + ( 80) HBR (HBr) + ( 81) HCFC141B (CH3CCl2F) + ( 82) HCFC142B (CH3CClF2) + ( 83) HCFC22 (CHF2Cl) + ( 84) HCL (HCl) + ( 85) HCN + ( 86) HCOOH + ( 87) HF + ( 88) HNO3 + ( 89) HO2NO2 + ( 90) HOBR (HOBr) + ( 91) HOCL (HOCl) + ( 92) HONITR (C4H9NO4) + ( 93) HPALD (HOOCH2CCH3CHCHO) + ( 94) HYAC (CH3COCH2OH) + ( 95) HYDRALD (HOCH2CCH3CHCHO) + ( 96) IEPOX (C5H10O3) + ( 97) ISOP (C5H8) + ( 98) ISOPNITA (C5H9NO4) + ( 99) ISOPNITB (C5H9NO4) + (100) ISOPNO3 (CH2CHCCH3OOCH2ONO2) + (101) ISOPNOOH (C5H9NO5) + (102) ISOPOOH (HOCH2COOHCH3CHCH2) + (103) IVOC (C13H28) + (104) MACR (CH2CCH3CHO) + (105) MACROOH (CH3COCHOOHCH2OH) + (106) MEK (C4H8O) + (107) MEKOOH (C4H8O3) + (108) MPAN (CH2CCH3CO3NO2) + (109) MTERP (C10H16) + (110) MVK (CH2CHCOCH3) + (111) N + (112) N2O + (113) N2O5 + (114) NC4CH2OH (C5H9NO4) + (115) NC4CHO (C5H7NO4) + (116) ncl_a1 (NaCl) + (117) ncl_a2 (NaCl) + (118) ncl_a3 (NaCl) + (119) NH3 + (120) NH4 + (121) NH_5 (CO) + (122) NH_50 (CO) + (123) NO + (124) NO2 + (125) NO3 + (126) NOA (CH3COCH2ONO2) + (127) NTERPOOH (C10H17NO5) + (128) num_a1 (H) + (129) num_a2 (H) + (130) num_a3 (H) + (131) num_a4 (H) + (132) num_a5 (H) + (133) O + (134) O3 + (135) O3S (O3) + (136) OCLO (OClO) + (137) OCS (OCS) + (138) ONITR (C4H7NO4) + (139) PAN (CH3CO3NO2) + (140) PBZNIT (C7H5O3NO2) + (141) PHENO (C6H5O) + (142) PHENOL (C6H5OH) + (143) PHENOOH (C6H8O6) + (144) pom_a1 (C) + (145) pom_a4 (C) + (146) POOH (C3H6OHOOH) + (147) ROOH (CH3COCH2OOH) + (148) S (S) + (149) SF6 + (150) SO (SO) + (151) SO2 + (152) SO3 (SO3) + (153) so4_a1 (NH4HSO4) + (154) so4_a2 (NH4HSO4) + (155) so4_a3 (NH4HSO4) + (156) so4_a5 (NH4HSO4) + (157) soa1_a1 (C15H38O2) + (158) soa1_a2 (C15H38O2) + (159) soa2_a1 (C15H38O2) + (160) soa2_a2 (C15H38O2) + (161) soa3_a1 (C15H38O2) + (162) soa3_a2 (C15H38O2) + (163) soa4_a1 (C15H38O2) + (164) soa4_a2 (C15H38O2) + (165) soa5_a1 (C15H38O2) + (166) soa5_a2 (C15H38O2) + (167) SOAG0 (C15H38O2) + (168) SOAG1 (C15H38O2) + (169) SOAG2 (C15H38O2) + (170) SOAG3 (C15H38O2) + (171) SOAG4 (C15H38O2) + (172) ST80_25 (CO) + (173) SVOC (C22H46) + (174) TEPOMUC (C7H8O3) + (175) TERP2OOH (C10H16O4) + (176) TERPNIT (C10H17NO4) + (177) TERPOOH (C10H18O3) + (178) TERPROD1 (C10H16O2) + (179) TERPROD2 (C9H14O2) + (180) TOLOOH (C7H10O5) + (181) TOLUENE (C7H8) + (182) XOOH (HOCH2COOHCH3CHOHCHO) + (183) XYLENES (C8H10) + (184) XYLENOOH (C8H12O5) + (185) XYLOL (C8H10O) + (186) XYLOLOOH (C8H12O6) + (187) NHDEP (N) + (188) NDEP (N) + (189) ACBZO2 (C7H5O3) + (190) ALKO2 (C5H11O2) + (191) BCARYO2VBS (C15H25O3) + (192) BENZO2 (C6H7O5) + (193) BENZO2VBS (C6H7O5) + (194) BZOO (C7H7O2) + (195) C2H5O2 + (196) C3H7O2 + (197) C6H5O2 + (198) CH3CO3 + (199) CH3O2 + (200) DICARBO2 (C5H5O4) + (201) ENEO2 (C4H9O3) + (202) EO (HOCH2CH2O) + (203) EO2 (HOCH2CH2O2) + (204) HO2 + (205) HOCH2OO + (206) ISOPAO2 (HOC5H8O2) + (207) ISOPBO2 (HOC5H8O2) + (208) ISOPO2VBS (C5H9O3) + (209) IVOCO2VBS (C13H29O3) + (210) MACRO2 (CH3COCHO2CH2OH) + (211) MALO2 (C4H3O4) + (212) MCO3 (CH2CCH3CO3) + (213) MDIALO2 (C4H5O4) + (214) MEKO2 (C4H7O3) + (215) MTERPO2VBS (C10H17O3) + (216) NTERPO2 (C10H16NO5) + (217) O1D (O) + (218) OH + (219) PHENO2 (C6H7O6) + (220) PO2 (C3H6OHO2) + (221) RO2 (CH3COCH2O2) + (222) TERP2O2 (C10H15O4) + (223) TERPO2 (C10H17O3) + (224) TOLO2 (C7H9O5) + (225) TOLUO2VBS (C7H9O5) + (226) XO2 (HOCH2COOCH3CHOHCHO) + (227) XYLENO2 (C8H11O5) + (228) XYLEO2VBS (C8H11O5) + (229) XYLOLO2 (C8H11O6) + (230) H2O Invariant species @@ -248,240 +247,239 @@ Class List ========== Explicit -------- - ( 1) NHDEP - ( 2) NDEP + ( 1) NDEP + ( 2) NHDEP Implicit -------- ( 1) ALKNIT ( 2) ALKOOH - ( 3) AOA_NH - ( 4) bc_a1 - ( 5) bc_a4 - ( 6) BCARY - ( 7) BENZENE - ( 8) BENZOOH - ( 9) BEPOMUC - ( 10) BIGALD - ( 11) BIGALD1 - ( 12) BIGALD2 - ( 13) BIGALD3 - ( 14) BIGALD4 - ( 15) BIGALK - ( 16) BIGENE - ( 17) BR - ( 18) BRCL - ( 19) BRO - ( 20) BRONO2 - ( 21) BRY - ( 22) BZALD - ( 23) BZOOH - ( 24) C2H2 - ( 25) C2H4 - ( 26) C2H5OH - ( 27) C2H5OOH - ( 28) C2H6 - ( 29) C3H6 - ( 30) C3H7OOH - ( 31) C3H8 - ( 32) C6H5OOH - ( 33) CCL4 - ( 34) CF2CLBR - ( 35) CF3BR - ( 36) CFC11 - ( 37) CFC113 - ( 38) CFC114 - ( 39) CFC115 - ( 40) CFC12 - ( 41) CH2BR2 - ( 42) CH2O - ( 43) CH3BR - ( 44) CH3CCL3 - ( 45) CH3CHO - ( 46) CH3CL - ( 47) CH3CN - ( 48) CH3COCH3 - ( 49) CH3COCHO - ( 50) CH3COOH - ( 51) CH3COOOH - ( 52) CH3OH - ( 53) CH3OOH - ( 54) CH4 - ( 55) CHBR3 - ( 56) CL - ( 57) CL2 - ( 58) CL2O2 - ( 59) CLO - ( 60) CLONO2 - ( 61) CLY - ( 62) CO - ( 63) CO2 - ( 64) COF2 - ( 65) COFCL - ( 66) CRESOL - ( 67) DMS - ( 68) dst_a1 - ( 69) dst_a2 - ( 70) dst_a3 - ( 71) E90 - ( 72) EOOH - ( 73) F - ( 74) GLYALD - ( 75) GLYOXAL - ( 76) H - ( 77) H2 - ( 78) H2402 - ( 79) H2O2 - ( 80) H2SO4 - ( 81) HBR - ( 82) HCFC141B - ( 83) HCFC142B - ( 84) HCFC22 - ( 85) HCL - ( 86) HCN - ( 87) HCOOH - ( 88) HF - ( 89) HNO3 - ( 90) HO2NO2 - ( 91) HOBR - ( 92) HOCL - ( 93) HONITR - ( 94) HPALD - ( 95) HYAC - ( 96) HYDRALD - ( 97) IEPOX - ( 98) ISOP - ( 99) ISOPNITA - (100) ISOPNITB - (101) ISOPNO3 - (102) ISOPNOOH - (103) ISOPOOH - (104) IVOC - (105) MACR - (106) MACROOH - (107) MEK - (108) MEKOOH - (109) MPAN - (110) MTERP - (111) MVK - (112) N - (113) N2O - (114) N2O5 - (115) NC4CH2OH - (116) NC4CHO - (117) ncl_a1 - (118) ncl_a2 - (119) ncl_a3 - (120) NH3 - (121) NH4 - (122) NH_5 - (123) NH_50 - (124) NO - (125) NO2 - (126) NO3 - (127) NOA - (128) NTERPOOH - (129) num_a1 - (130) num_a2 - (131) num_a3 - (132) num_a4 - (133) num_a5 - (134) O - (135) O3 - (136) O3S - (137) OCLO - (138) OCS - (139) ONITR - (140) PAN - (141) PBZNIT - (142) PHENO - (143) PHENOL - (144) PHENOOH - (145) pom_a1 - (146) pom_a4 - (147) POOH - (148) ROOH - (149) S - (150) SF6 - (151) SO - (152) SO2 - (153) SO3 - (154) so4_a1 - (155) so4_a2 - (156) so4_a3 - (157) so4_a5 - (158) soa1_a1 - (159) soa1_a2 - (160) soa2_a1 - (161) soa2_a2 - (162) soa3_a1 - (163) soa3_a2 - (164) soa4_a1 - (165) soa4_a2 - (166) soa5_a1 - (167) soa5_a2 - (168) SOAG0 - (169) SOAG1 - (170) SOAG2 - (171) SOAG3 - (172) SOAG4 - (173) ST80_25 - (174) SVOC - (175) TEPOMUC - (176) TERP2OOH - (177) TERPNIT - (178) TERPOOH - (179) TERPROD1 - (180) TERPROD2 - (181) TOLOOH - (182) TOLUENE - (183) XOOH - (184) XYLENES - (185) XYLENOOH - (186) XYLOL - (187) XYLOLOOH - (188) ACBZO2 - (189) ALKO2 - (190) BCARYO2VBS - (191) BENZO2 - (192) BENZO2VBS - (193) BZOO - (194) C2H5O2 - (195) C3H7O2 - (196) C6H5O2 - (197) CH3CO3 - (198) CH3O2 - (199) DICARBO2 - (200) ENEO2 - (201) EO - (202) EO2 - (203) HO2 - (204) HOCH2OO - (205) ISOPAO2 - (206) ISOPBO2 - (207) ISOPO2VBS - (208) IVOCO2VBS - (209) MACRO2 - (210) MALO2 - (211) MCO3 - (212) MDIALO2 - (213) MEKO2 - (214) MTERPO2VBS - (215) NTERPO2 - (216) O1D - (217) OH - (218) PHENO2 - (219) PO2 - (220) RO2 - (221) TERP2O2 - (222) TERPO2 - (223) TOLO2 - (224) TOLUO2VBS - (225) XO2 - (226) XYLENO2 - (227) XYLEO2VBS - (228) XYLOLO2 - (229) H2O + ( 3) bc_a1 + ( 4) bc_a4 + ( 5) BCARY + ( 6) BENZENE + ( 7) BENZOOH + ( 8) BEPOMUC + ( 9) BIGALD + ( 10) BIGALD1 + ( 11) BIGALD2 + ( 12) BIGALD3 + ( 13) BIGALD4 + ( 14) BIGALK + ( 15) BIGENE + ( 16) BR + ( 17) BRCL + ( 18) BRO + ( 19) BRONO2 + ( 20) BRY + ( 21) BZALD + ( 22) BZOOH + ( 23) C2H2 + ( 24) C2H4 + ( 25) C2H5OH + ( 26) C2H5OOH + ( 27) C2H6 + ( 28) C3H6 + ( 29) C3H7OOH + ( 30) C3H8 + ( 31) C6H5OOH + ( 32) CCL4 + ( 33) CF2CLBR + ( 34) CF3BR + ( 35) CFC11 + ( 36) CFC113 + ( 37) CFC114 + ( 38) CFC115 + ( 39) CFC12 + ( 40) CH2BR2 + ( 41) CH2O + ( 42) CH3BR + ( 43) CH3CCL3 + ( 44) CH3CHO + ( 45) CH3CL + ( 46) CH3CN + ( 47) CH3COCH3 + ( 48) CH3COCHO + ( 49) CH3COOH + ( 50) CH3COOOH + ( 51) CH3OH + ( 52) CH3OOH + ( 53) CH4 + ( 54) CHBR3 + ( 55) CL + ( 56) CL2 + ( 57) CL2O2 + ( 58) CLO + ( 59) CLONO2 + ( 60) CLY + ( 61) CO + ( 62) CO2 + ( 63) COF2 + ( 64) COFCL + ( 65) CRESOL + ( 66) DMS + ( 67) dst_a1 + ( 68) dst_a2 + ( 69) dst_a3 + ( 70) E90 + ( 71) EOOH + ( 72) F + ( 73) GLYALD + ( 74) GLYOXAL + ( 75) H + ( 76) H2 + ( 77) H2402 + ( 78) H2O2 + ( 79) H2SO4 + ( 80) HBR + ( 81) HCFC141B + ( 82) HCFC142B + ( 83) HCFC22 + ( 84) HCL + ( 85) HCN + ( 86) HCOOH + ( 87) HF + ( 88) HNO3 + ( 89) HO2NO2 + ( 90) HOBR + ( 91) HOCL + ( 92) HONITR + ( 93) HPALD + ( 94) HYAC + ( 95) HYDRALD + ( 96) IEPOX + ( 97) ISOP + ( 98) ISOPNITA + ( 99) ISOPNITB + (100) ISOPNO3 + (101) ISOPNOOH + (102) ISOPOOH + (103) IVOC + (104) MACR + (105) MACROOH + (106) MEK + (107) MEKOOH + (108) MPAN + (109) MTERP + (110) MVK + (111) N + (112) N2O + (113) N2O5 + (114) NC4CH2OH + (115) NC4CHO + (116) ncl_a1 + (117) ncl_a2 + (118) ncl_a3 + (119) NH3 + (120) NH4 + (121) NH_5 + (122) NH_50 + (123) NO + (124) NO2 + (125) NO3 + (126) NOA + (127) NTERPOOH + (128) num_a1 + (129) num_a2 + (130) num_a3 + (131) num_a4 + (132) num_a5 + (133) O + (134) O3 + (135) O3S + (136) OCLO + (137) OCS + (138) ONITR + (139) PAN + (140) PBZNIT + (141) PHENO + (142) PHENOL + (143) PHENOOH + (144) pom_a1 + (145) pom_a4 + (146) POOH + (147) ROOH + (148) S + (149) SF6 + (150) SO + (151) SO2 + (152) SO3 + (153) so4_a1 + (154) so4_a2 + (155) so4_a3 + (156) so4_a5 + (157) soa1_a1 + (158) soa1_a2 + (159) soa2_a1 + (160) soa2_a2 + (161) soa3_a1 + (162) soa3_a2 + (163) soa4_a1 + (164) soa4_a2 + (165) soa5_a1 + (166) soa5_a2 + (167) SOAG0 + (168) SOAG1 + (169) SOAG2 + (170) SOAG3 + (171) SOAG4 + (172) ST80_25 + (173) SVOC + (174) TEPOMUC + (175) TERP2OOH + (176) TERPNIT + (177) TERPOOH + (178) TERPROD1 + (179) TERPROD2 + (180) TOLOOH + (181) TOLUENE + (182) XOOH + (183) XYLENES + (184) XYLENOOH + (185) XYLOL + (186) XYLOLOOH + (187) ACBZO2 + (188) ALKO2 + (189) BCARYO2VBS + (190) BENZO2 + (191) BENZO2VBS + (192) BZOO + (193) C2H5O2 + (194) C3H7O2 + (195) C6H5O2 + (196) CH3CO3 + (197) CH3O2 + (198) DICARBO2 + (199) ENEO2 + (200) EO + (201) EO2 + (202) HO2 + (203) HOCH2OO + (204) ISOPAO2 + (205) ISOPBO2 + (206) ISOPO2VBS + (207) IVOCO2VBS + (208) MACRO2 + (209) MALO2 + (210) MCO3 + (211) MDIALO2 + (212) MEKO2 + (213) MTERPO2VBS + (214) NTERPO2 + (215) O1D + (216) OH + (217) PHENO2 + (218) PO2 + (219) RO2 + (220) TERP2O2 + (221) TERPO2 + (222) TOLO2 + (223) TOLUO2VBS + (224) XO2 + (225) XYLENO2 + (226) XYLEO2VBS + (227) XYLOLO2 + (228) H2O Photolysis jh2o_b ( 1) H2O + hv -> H2 + O1D rate = ** User defined ** ( 1) @@ -626,457 +624,457 @@ Class List O1D_N2 ( 4) O1D + N2 -> O + N2 rate = 2.15E-11*exp( 110./t) (127) O1D_O2ab ( 5) O1D + O2 -> O + O2 rate = 3.30E-11*exp( 55./t) (128) O1D_O3 ( 6) O1D + O3 -> O2 + O2 rate = 1.20E-10 (129) - O_O3 ( 7) O + O3 -> 2*O2 rate = 8.00E-12*exp( -2060./t) (130) - usr_O_O ( 8) O + O + M -> O2 + M rate = ** User defined ** (131) - usr_O_O2 ( 9) O + O2 + M -> O3 + M rate = ** User defined ** (132) - H2_O ( 10) H2 + O -> OH + H rate = 1.60E-11*exp( -4570./t) (133) - H2O2_O ( 11) H2O2 + O -> OH + HO2 rate = 1.40E-12*exp( -2000./t) (134) - H_HO2 ( 12) H + HO2 -> H2 + O2 rate = 6.90E-12 (135) - H_HO2a ( 13) H + HO2 -> 2*OH rate = 7.20E-11 (136) - H_HO2b ( 14) H + HO2 -> H2O + O rate = 1.60E-12 (137) - H_O2 ( 15) H + O2 + M -> HO2 + M troe : ko=5.30E-32*(300/t)**1.80 (138) + O1D_O3a ( 7) O1D + O3 -> O2 + 2*O rate = 1.20E-10 (130) + O_O3 ( 8) O + O3 -> 2*O2 rate = 8.00E-12*exp( -2060./t) (131) + usr_O_O ( 9) O + O + M -> O2 + M rate = ** User defined ** (132) + usr_O_O2 ( 10) O + O2 + M -> O3 + M rate = ** User defined ** (133) + H2_O ( 11) H2 + O -> OH + H rate = 1.60E-11*exp( -4570./t) (134) + H2O2_O ( 12) H2O2 + O -> OH + HO2 rate = 1.40E-12*exp( -2000./t) (135) + H_HO2 ( 13) H + HO2 -> H2 + O2 rate = 6.90E-12 (136) + H_HO2a ( 14) H + HO2 -> 2*OH rate = 7.20E-11 (137) + H_HO2b ( 15) H + HO2 -> H2O + O rate = 1.60E-12 (138) + H_O2 ( 16) H + O2 + M -> HO2 + M troe : ko=5.30E-32*(300/t)**1.80 (139) ki=9.50E-11*(300/t)**-0.40 f=0.60 - HO2_O ( 16) HO2 + O -> OH + O2 rate = 3.00E-11*exp( 200./t) (139) - HO2_O3 ( 17) HO2 + O3 -> OH + 2*O2 rate = 1.00E-14*exp( -490./t) (140) - H_O3 ( 18) H + O3 -> OH + O2 rate = 1.40E-10*exp( -470./t) (141) - OH_H2 ( 19) OH + H2 -> H2O + H rate = 2.80E-12*exp( -1800./t) (142) - OH_H2O2 ( 20) OH + H2O2 -> H2O + HO2 rate = 1.80E-12 (143) - OH_HO2 ( 21) OH + HO2 -> H2O + O2 rate = 4.80E-11*exp( 250./t) (144) - OH_O ( 22) OH + O -> H + O2 rate = 1.80E-11*exp( 180./t) (145) - OH_O3 ( 23) OH + O3 -> HO2 + O2 rate = 1.70E-12*exp( -940./t) (146) - OH_OH ( 24) OH + OH -> H2O + O rate = 1.80E-12 (147) - OH_OH_M ( 25) OH + OH + M -> H2O2 + M troe : ko=6.90E-31*(300/t)**1.00 (148) + HO2_O ( 17) HO2 + O -> OH + O2 rate = 3.00E-11*exp( 200./t) (140) + HO2_O3 ( 18) HO2 + O3 -> OH + 2*O2 rate = 1.00E-14*exp( -490./t) (141) + H_O3 ( 19) H + O3 -> OH + O2 rate = 1.40E-10*exp( -470./t) (142) + OH_H2 ( 20) OH + H2 -> H2O + H rate = 2.80E-12*exp( -1800./t) (143) + OH_H2O2 ( 21) OH + H2O2 -> H2O + HO2 rate = 1.80E-12 (144) + OH_HO2 ( 22) OH + HO2 -> H2O + O2 rate = 4.80E-11*exp( 250./t) (145) + OH_O ( 23) OH + O -> H + O2 rate = 1.80E-11*exp( 180./t) (146) + OH_O3 ( 24) OH + O3 -> HO2 + O2 rate = 1.70E-12*exp( -940./t) (147) + OH_OH ( 25) OH + OH -> H2O + O rate = 1.80E-12 (148) + OH_OH_M ( 26) OH + OH + M -> H2O2 + M troe : ko=6.90E-31*(300/t)**1.00 (149) ki=2.60E-11 f=0.60 - usr_HO2_HO2 ( 26) HO2 + HO2 -> H2O2 + O2 rate = ** User defined ** (149) - HO2NO2_OH ( 27) HO2NO2 + OH -> H2O + NO2 + O2 rate = 4.50E-13*exp( 610./t) (150) - N_NO ( 28) N + NO -> N2 + O rate = 2.10E-11*exp( 100./t) (151) - N_NO2a ( 29) N + NO2 -> N2O + O rate = 2.90E-12*exp( 220./t) (152) - N_NO2b ( 30) N + NO2 -> 2*NO rate = 1.45E-12*exp( 220./t) (153) - N_NO2c ( 31) N + NO2 -> N2 + O2 rate = 1.45E-12*exp( 220./t) (154) - N_O2 ( 32) N + O2 -> NO + O rate = 3.30E-12*exp( -3150./t) (155) - NO2_O ( 33) NO2 + O -> NO + O2 rate = 5.10E-12*exp( 210./t) (156) - NO2_O3 ( 34) NO2 + O3 -> NO3 + O2 rate = 1.20E-13*exp( -2450./t) (157) - NO2_O_M ( 35) NO2 + O + M -> NO3 + M troe : ko=2.50E-31*(300/t)**1.80 (158) + usr_HO2_HO2 ( 27) HO2 + HO2 -> H2O2 + O2 rate = ** User defined ** (150) + HO2NO2_OH ( 28) HO2NO2 + OH -> H2O + NO2 + O2 rate = 4.50E-13*exp( 610./t) (151) + N_NO ( 29) N + NO -> N2 + O rate = 2.10E-11*exp( 100./t) (152) + N_NO2a ( 30) N + NO2 -> N2O + O rate = 2.90E-12*exp( 220./t) (153) + N_NO2b ( 31) N + NO2 -> 2*NO rate = 1.45E-12*exp( 220./t) (154) + N_NO2c ( 32) N + NO2 -> N2 + O2 rate = 1.45E-12*exp( 220./t) (155) + N_O2 ( 33) N + O2 -> NO + O rate = 3.30E-12*exp( -3150./t) (156) + NO2_O ( 34) NO2 + O -> NO + O2 rate = 5.10E-12*exp( 210./t) (157) + NO2_O3 ( 35) NO2 + O3 -> NO3 + O2 rate = 1.20E-13*exp( -2450./t) (158) + NO2_O_M ( 36) NO2 + O + M -> NO3 + M troe : ko=2.50E-31*(300/t)**1.80 (159) ki=2.20E-11*(300/t)**0.70 f=0.60 - NO3_HO2 ( 36) NO3 + HO2 -> OH + NO2 + O2 rate = 3.50E-12 (159) - NO3_NO ( 37) NO3 + NO -> 2*NO2 rate = 1.70E-11*exp( 125./t) (160) - NO3_O ( 38) NO3 + O -> NO2 + O2 rate = 1.30E-11 (161) - NO3_OH ( 39) NO3 + OH -> HO2 + NO2 rate = 2.20E-11 (162) - N_OH ( 40) N + OH -> NO + H rate = 5.00E-11 (163) - NO_HO2 ( 41) NO + HO2 -> NO2 + OH rate = 3.44E-12*exp( 260./t) (164) - NO_O3 ( 42) NO + O3 -> NO2 + O2 rate = 3.00E-12*exp( -1500./t) (165) - NO_O_M ( 43) NO + O + M -> NO2 + M troe : ko=9.00E-32*(300/t)**1.50 (166) + NO3_HO2 ( 37) NO3 + HO2 -> OH + NO2 + O2 rate = 3.50E-12 (160) + NO3_NO ( 38) NO3 + NO -> 2*NO2 rate = 1.70E-11*exp( 125./t) (161) + NO3_O ( 39) NO3 + O -> NO2 + O2 rate = 1.30E-11 (162) + NO3_OH ( 40) NO3 + OH -> HO2 + NO2 rate = 2.20E-11 (163) + N_OH ( 41) N + OH -> NO + H rate = 5.00E-11 (164) + NO_HO2 ( 42) NO + HO2 -> NO2 + OH rate = 3.44E-12*exp( 260./t) (165) + NO_O3 ( 43) NO + O3 -> NO2 + O2 rate = 3.00E-12*exp( -1500./t) (166) + NO_O_M ( 44) NO + O + M -> NO2 + M troe : ko=9.00E-32*(300/t)**1.50 (167) ki=3.00E-11 f=0.60 - O1D_N2Oa ( 44) O1D + N2O -> 2*NO rate = 7.26E-11*exp( 20./t) (167) - O1D_N2Ob ( 45) O1D + N2O -> N2 + O2 rate = 4.64E-11*exp( 20./t) (168) - tag_NO2_HO2 ( 46) NO2 + HO2 + M -> HO2NO2 + M troe : ko=1.90E-31*(300/t)**3.40 (169) + O1D_N2Oa ( 45) O1D + N2O -> 2*NO rate = 7.26E-11*exp( 20./t) (168) + O1D_N2Ob ( 46) O1D + N2O -> N2 + O2 rate = 4.64E-11*exp( 20./t) (169) + tag_NO2_HO2 ( 47) NO2 + HO2 + M -> HO2NO2 + M troe : ko=1.90E-31*(300/t)**3.40 (170) ki=4.00E-12*(300/t)**0.30 f=0.60 - tag_NO2_NO3 ( 47) NO2 + NO3 + M -> N2O5 + M troe : ko=2.40E-30*(300/t)**3.00 (170) + tag_NO2_NO3 ( 48) NO2 + NO3 + M -> N2O5 + M troe : ko=2.40E-30*(300/t)**3.00 (171) ki=1.60E-12*(300/t)**-0.10 f=0.60 - tag_NO2_OH ( 48) NO2 + OH + M -> HNO3 + M troe : ko=1.80E-30*(300/t)**3.00 (171) + tag_NO2_OH ( 49) NO2 + OH + M -> HNO3 + M troe : ko=1.80E-30*(300/t)**3.00 (172) ki=2.80E-11 f=0.60 - usr_HNO3_OH ( 49) HNO3 + OH -> NO3 + H2O rate = ** User defined ** (172) - usr_HO2NO2_M ( 50) HO2NO2 + M -> HO2 + NO2 + M rate = ** User defined ** (173) - usr_N2O5_M ( 51) N2O5 + M -> NO2 + NO3 + M rate = ** User defined ** (174) - CL_CH2O ( 52) CL + CH2O -> HCL + HO2 + CO rate = 8.10E-11*exp( -30./t) (175) - CL_CH4 ( 53) CL + CH4 -> CH3O2 + HCL rate = 7.10E-12*exp( -1270./t) (176) - CL_H2 ( 54) CL + H2 -> HCL + H rate = 3.05E-11*exp( -2270./t) (177) - CL_H2O2 ( 55) CL + H2O2 -> HCL + HO2 rate = 1.10E-11*exp( -980./t) (178) - CL_HO2a ( 56) CL + HO2 -> HCL + O2 rate = 1.40E-11*exp( 270./t) (179) - CL_HO2b ( 57) CL + HO2 -> OH + CLO rate = 3.60E-11*exp( -375./t) (180) - CL_O3 ( 58) CL + O3 -> CLO + O2 rate = 2.30E-11*exp( -200./t) (181) - CLO_CH3O2 ( 59) CLO + CH3O2 -> CL + HO2 + CH2O rate = 3.30E-12*exp( -115./t) (182) - CLO_CLOa ( 60) CLO + CLO -> 2*CL + O2 rate = 3.00E-11*exp( -2450./t) (183) - CLO_CLOb ( 61) CLO + CLO -> CL2 + O2 rate = 1.00E-12*exp( -1590./t) (184) - CLO_CLOc ( 62) CLO + CLO -> CL + OCLO rate = 3.50E-13*exp( -1370./t) (185) - CLO_HO2 ( 63) CLO + HO2 -> O2 + HOCL rate = 2.60E-12*exp( 290./t) (186) - CLO_NO ( 64) CLO + NO -> NO2 + CL rate = 6.40E-12*exp( 290./t) (187) - CLONO2_CL ( 65) CLONO2 + CL -> CL2 + NO3 rate = 6.50E-12*exp( 135./t) (188) - CLO_NO2_M ( 66) CLO + NO2 + M -> CLONO2 + M troe : ko=1.80E-31*(300/t)**3.40 (189) + usr_HNO3_OH ( 50) HNO3 + OH -> NO3 + H2O rate = ** User defined ** (173) + usr_HO2NO2_M ( 51) HO2NO2 + M -> HO2 + NO2 + M rate = ** User defined ** (174) + usr_N2O5_M ( 52) N2O5 + M -> NO2 + NO3 + M rate = ** User defined ** (175) + CL_CH2O ( 53) CL + CH2O -> HCL + HO2 + CO rate = 8.10E-11*exp( -30./t) (176) + CL_CH4 ( 54) CL + CH4 -> CH3O2 + HCL rate = 7.10E-12*exp( -1270./t) (177) + CL_H2 ( 55) CL + H2 -> HCL + H rate = 3.05E-11*exp( -2270./t) (178) + CL_H2O2 ( 56) CL + H2O2 -> HCL + HO2 rate = 1.10E-11*exp( -980./t) (179) + CL_HO2a ( 57) CL + HO2 -> HCL + O2 rate = 1.40E-11*exp( 270./t) (180) + CL_HO2b ( 58) CL + HO2 -> OH + CLO rate = 3.60E-11*exp( -375./t) (181) + CL_O3 ( 59) CL + O3 -> CLO + O2 rate = 2.30E-11*exp( -200./t) (182) + CLO_CH3O2 ( 60) CLO + CH3O2 -> CL + HO2 + CH2O rate = 3.30E-12*exp( -115./t) (183) + CLO_CLOa ( 61) CLO + CLO -> 2*CL + O2 rate = 3.00E-11*exp( -2450./t) (184) + CLO_CLOb ( 62) CLO + CLO -> CL2 + O2 rate = 1.00E-12*exp( -1590./t) (185) + CLO_CLOc ( 63) CLO + CLO -> CL + OCLO rate = 3.50E-13*exp( -1370./t) (186) + CLO_HO2 ( 64) CLO + HO2 -> O2 + HOCL rate = 2.60E-12*exp( 290./t) (187) + CLO_NO ( 65) CLO + NO -> NO2 + CL rate = 6.40E-12*exp( 290./t) (188) + CLONO2_CL ( 66) CLONO2 + CL -> CL2 + NO3 rate = 6.50E-12*exp( 135./t) (189) + CLO_NO2_M ( 67) CLO + NO2 + M -> CLONO2 + M troe : ko=1.80E-31*(300/t)**3.40 (190) ki=1.50E-11*(300/t)**1.90 f=0.60 - CLONO2_O ( 67) CLONO2 + O -> CLO + NO3 rate = 3.60E-12*exp( -840./t) (190) - CLONO2_OH ( 68) CLONO2 + OH -> HOCL + NO3 rate = 1.20E-12*exp( -330./t) (191) - CLO_O ( 69) CLO + O -> CL + O2 rate = 2.80E-11*exp( 85./t) (192) - CLO_OHa ( 70) CLO + OH -> CL + HO2 rate = 7.40E-12*exp( 270./t) (193) - CLO_OHb ( 71) CLO + OH -> HCL + O2 rate = 6.00E-13*exp( 230./t) (194) - HCL_O ( 72) HCL + O -> CL + OH rate = 1.00E-11*exp( -3300./t) (195) - HCL_OH ( 73) HCL + OH -> H2O + CL rate = 1.80E-12*exp( -250./t) (196) - HOCL_CL ( 74) HOCL + CL -> HCL + CLO rate = 3.40E-12*exp( -130./t) (197) - HOCL_O ( 75) HOCL + O -> CLO + OH rate = 1.70E-13 (198) - HOCL_OH ( 76) HOCL + OH -> H2O + CLO rate = 3.00E-12*exp( -500./t) (199) - O1D_CCL4 ( 77) O1D + CCL4 -> 4*CL rate = 2.61E-10 (200) - O1D_CF2CLBR ( 78) O1D + CF2CLBR -> CL + BR + COF2 rate = 9.75E-11 (201) - O1D_CFC11 ( 79) O1D + CFC11 -> 2*CL + COFCL rate = 2.07E-10 (202) - O1D_CFC113 ( 80) O1D + CFC113 -> 2*CL + COFCL + COF2 rate = 2.09E-10 (203) - O1D_CFC114 ( 81) O1D + CFC114 -> 2*CL + 2*COF2 rate = 1.17E-10 (204) - O1D_CFC115 ( 82) O1D + CFC115 -> CL + F + 2*COF2 rate = 4.64E-11 (205) - O1D_CFC12 ( 83) O1D + CFC12 -> 2*CL + COF2 rate = 1.20E-10 (206) - O1D_HCLa ( 84) O1D + HCL -> CL + OH rate = 9.90E-11 (207) - O1D_HCLb ( 85) O1D + HCL -> CLO + H rate = 3.30E-12 (208) - tag_CLO_CLO_M ( 86) CLO + CLO + M -> CL2O2 + M troe : ko=1.90E-32*(300/t)**3.60 (209) + CLONO2_O ( 68) CLONO2 + O -> CLO + NO3 rate = 3.60E-12*exp( -840./t) (191) + CLONO2_OH ( 69) CLONO2 + OH -> HOCL + NO3 rate = 1.20E-12*exp( -330./t) (192) + CLO_O ( 70) CLO + O -> CL + O2 rate = 2.80E-11*exp( 85./t) (193) + CLO_OHa ( 71) CLO + OH -> CL + HO2 rate = 7.40E-12*exp( 270./t) (194) + CLO_OHb ( 72) CLO + OH -> HCL + O2 rate = 6.00E-13*exp( 230./t) (195) + HCL_O ( 73) HCL + O -> CL + OH rate = 1.00E-11*exp( -3300./t) (196) + HCL_OH ( 74) HCL + OH -> H2O + CL rate = 1.80E-12*exp( -250./t) (197) + HOCL_CL ( 75) HOCL + CL -> HCL + CLO rate = 3.40E-12*exp( -130./t) (198) + HOCL_O ( 76) HOCL + O -> CLO + OH rate = 1.70E-13 (199) + HOCL_OH ( 77) HOCL + OH -> H2O + CLO rate = 3.00E-12*exp( -500./t) (200) + O1D_CCL4 ( 78) O1D + CCL4 -> 4*CL rate = 2.61E-10 (201) + O1D_CF2CLBR ( 79) O1D + CF2CLBR -> CL + BR + COF2 rate = 9.75E-11 (202) + O1D_CFC11 ( 80) O1D + CFC11 -> 2*CL + COFCL rate = 2.07E-10 (203) + O1D_CFC113 ( 81) O1D + CFC113 -> 2*CL + COFCL + COF2 rate = 2.09E-10 (204) + O1D_CFC114 ( 82) O1D + CFC114 -> 2*CL + 2*COF2 rate = 1.17E-10 (205) + O1D_CFC115 ( 83) O1D + CFC115 -> CL + F + 2*COF2 rate = 4.64E-11 (206) + O1D_CFC12 ( 84) O1D + CFC12 -> 2*CL + COF2 rate = 1.20E-10 (207) + O1D_HCLa ( 85) O1D + HCL -> CL + OH rate = 9.90E-11 (208) + O1D_HCLb ( 86) O1D + HCL -> CLO + H rate = 3.30E-12 (209) + tag_CLO_CLO_M ( 87) CLO + CLO + M -> CL2O2 + M troe : ko=1.90E-32*(300/t)**3.60 (210) ki=3.70E-12*(300/t)**1.60 f=0.60 - usr_CL2O2_M ( 87) CL2O2 + M -> CLO + CLO + M rate = ** User defined ** (210) - BR_CH2O ( 88) BR + CH2O -> HBR + HO2 + CO rate = 1.70E-11*exp( -800./t) (211) - BR_HO2 ( 89) BR + HO2 -> HBR + O2 rate = 4.80E-12*exp( -310./t) (212) - BR_O3 ( 90) BR + O3 -> BRO + O2 rate = 1.60E-11*exp( -780./t) (213) - BRO_BRO ( 91) BRO + BRO -> 2*BR + O2 rate = 1.50E-12*exp( 230./t) (214) - BRO_CLOa ( 92) BRO + CLO -> BR + OCLO rate = 9.50E-13*exp( 550./t) (215) - BRO_CLOb ( 93) BRO + CLO -> BR + CL + O2 rate = 2.30E-12*exp( 260./t) (216) - BRO_CLOc ( 94) BRO + CLO -> BRCL + O2 rate = 4.10E-13*exp( 290./t) (217) - BRO_HO2 ( 95) BRO + HO2 -> HOBR + O2 rate = 4.50E-12*exp( 460./t) (218) - BRO_NO ( 96) BRO + NO -> BR + NO2 rate = 8.80E-12*exp( 260./t) (219) - BRO_NO2_M ( 97) BRO + NO2 + M -> BRONO2 + M troe : ko=5.20E-31*(300/t)**3.20 (220) + usr_CL2O2_M ( 88) CL2O2 + M -> CLO + CLO + M rate = ** User defined ** (211) + BR_CH2O ( 89) BR + CH2O -> HBR + HO2 + CO rate = 1.70E-11*exp( -800./t) (212) + BR_HO2 ( 90) BR + HO2 -> HBR + O2 rate = 4.80E-12*exp( -310./t) (213) + BR_O3 ( 91) BR + O3 -> BRO + O2 rate = 1.60E-11*exp( -780./t) (214) + BRO_BRO ( 92) BRO + BRO -> 2*BR + O2 rate = 1.50E-12*exp( 230./t) (215) + BRO_CLOa ( 93) BRO + CLO -> BR + OCLO rate = 9.50E-13*exp( 550./t) (216) + BRO_CLOb ( 94) BRO + CLO -> BR + CL + O2 rate = 2.30E-12*exp( 260./t) (217) + BRO_CLOc ( 95) BRO + CLO -> BRCL + O2 rate = 4.10E-13*exp( 290./t) (218) + BRO_HO2 ( 96) BRO + HO2 -> HOBR + O2 rate = 4.50E-12*exp( 460./t) (219) + BRO_NO ( 97) BRO + NO -> BR + NO2 rate = 8.80E-12*exp( 260./t) (220) + BRO_NO2_M ( 98) BRO + NO2 + M -> BRONO2 + M troe : ko=5.20E-31*(300/t)**3.20 (221) ki=6.90E-12*(300/t)**2.90 f=0.60 - BRONO2_O ( 98) BRONO2 + O -> BRO + NO3 rate = 1.90E-11*exp( 215./t) (221) - BRO_O ( 99) BRO + O -> BR + O2 rate = 1.90E-11*exp( 230./t) (222) - BRO_OH (100) BRO + OH -> BR + HO2 rate = 1.70E-11*exp( 250./t) (223) - HBR_O (101) HBR + O -> BR + OH rate = 5.80E-12*exp( -1500./t) (224) - HBR_OH (102) HBR + OH -> BR + H2O rate = 5.50E-12*exp( 200./t) (225) - HOBR_O (103) HOBR + O -> BRO + OH rate = 1.20E-10*exp( -430./t) (226) - O1D_CF3BR (104) O1D + CF3BR -> BR + F + COF2 rate = 4.50E-11 (227) - O1D_CHBR3 (105) O1D + CHBR3 -> 3*BR rate = 4.62E-10 (228) - O1D_H2402 (106) O1D + H2402 -> 2*BR + 2*COF2 rate = 1.20E-10 (229) - O1D_HBRa (107) O1D + HBR -> BR + OH rate = 9.00E-11 (230) - O1D_HBRb (108) O1D + HBR -> BRO + H rate = 3.00E-11 (231) - F_CH4 (109) F + CH4 -> HF + CH3O2 rate = 1.60E-10*exp( -260./t) (232) - F_H2 (110) F + H2 -> HF + H rate = 1.40E-10*exp( -500./t) (233) - F_H2O (111) F + H2O -> HF + OH rate = 1.40E-11 (234) - F_HNO3 (112) F + HNO3 -> HF + NO3 rate = 6.00E-12*exp( 400./t) (235) - O1D_COF2 (113) O1D + COF2 -> 2*F rate = 2.14E-11 (236) - O1D_COFCL (114) O1D + COFCL -> F + CL rate = 1.90E-10 (237) - CH2BR2_CL (115) CH2BR2 + CL -> 2*BR + HCL rate = 6.30E-12*exp( -800./t) (238) - CH2BR2_OH (116) CH2BR2 + OH -> 2*BR + H2O rate = 2.00E-12*exp( -840./t) (239) - CH3BR_CL (117) CH3BR + CL -> HCL + HO2 + BR rate = 1.46E-11*exp( -1040./t) (240) - CH3BR_OH (118) CH3BR + OH -> BR + H2O + HO2 rate = 1.42E-12*exp( -1150./t) (241) - CH3CCL3_OH (119) CH3CCL3 + OH -> H2O + 3*CL rate = 1.64E-12*exp( -1520./t) (242) - CH3CL_CL (120) CH3CL + CL -> HO2 + CO + 2*HCL rate = 2.03E-11*exp( -1100./t) (243) - CH3CL_OH (121) CH3CL + OH -> CL + H2O + HO2 rate = 1.96E-12*exp( -1200./t) (244) - CHBR3_CL (122) CHBR3 + CL -> 3*BR + HCL rate = 4.85E-12*exp( -850./t) (245) - CHBR3_OH (123) CHBR3 + OH -> 3*BR rate = 9.00E-13*exp( -360./t) (246) - HCFC141B_OH (124) HCFC141B + OH -> CL + COFCL rate = 1.25E-12*exp( -1600./t) (247) - HCFC142B_OH (125) HCFC142B + OH -> CL + COF2 rate = 1.30E-12*exp( -1770./t) (248) - HCFC22_OH (126) HCFC22 + OH -> H2O + CL + COF2 rate = 9.20E-13*exp( -1560./t) (249) - O1D_CH2BR2 (127) O1D + CH2BR2 -> 2*BR rate = 2.57E-10 (250) - O1D_CH3BR (128) O1D + CH3BR -> BR rate = 1.80E-10 (251) - O1D_HCFC141B (129) O1D + HCFC141B -> CL + COFCL rate = 1.79E-10 (252) - O1D_HCFC142B (130) O1D + HCFC142B -> CL + COF2 rate = 1.30E-10 (253) - O1D_HCFC22 (131) O1D + HCFC22 -> CL + COF2 rate = 7.65E-11 (254) - CH2O_HO2 (132) CH2O + HO2 -> HOCH2OO rate = 9.70E-15*exp( 625./t) (255) - CH2O_NO3 (133) CH2O + NO3 -> CO + HO2 + HNO3 rate = 6.00E-13*exp( -2058./t) (256) - CH2O_O (134) CH2O + O -> HO2 + OH + CO rate = 3.40E-11*exp( -1600./t) (257) - CH2O_OH (135) CH2O + OH -> CO + H2O + H rate = 5.50E-12*exp( 125./t) (258) - CH3O2_CH3O2a (136) CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 rate = 5.00E-13*exp( -424./t) (259) - CH3O2_CH3O2b (137) CH3O2 + CH3O2 -> CH2O + CH3OH rate = 1.90E-14*exp( 706./t) (260) - CH3O2_HO2 (138) CH3O2 + HO2 -> CH3OOH + O2 rate = 4.10E-13*exp( 750./t) (261) - CH3O2_NO (139) CH3O2 + NO -> CH2O + NO2 + HO2 rate = 2.80E-12*exp( 300./t) (262) - CH3OH_OH (140) CH3OH + OH -> HO2 + CH2O rate = 2.90E-12*exp( -345./t) (263) - CH3OOH_OH (141) CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O rate = 3.80E-12*exp( 200./t) (264) - CH4_OH (142) CH4 + OH -> CH3O2 + H2O rate = 2.45E-12*exp( -1775./t) (265) - HCN_OH (143) HCN + OH + M -> HO2 + M troe : ko=6.10E-33*(300/t)**1.50 (266) + BRONO2_O ( 99) BRONO2 + O -> BRO + NO3 rate = 1.90E-11*exp( 215./t) (222) + BRO_O (100) BRO + O -> BR + O2 rate = 1.90E-11*exp( 230./t) (223) + BRO_OH (101) BRO + OH -> BR + HO2 rate = 1.70E-11*exp( 250./t) (224) + HBR_O (102) HBR + O -> BR + OH rate = 5.80E-12*exp( -1500./t) (225) + HBR_OH (103) HBR + OH -> BR + H2O rate = 5.50E-12*exp( 200./t) (226) + HOBR_O (104) HOBR + O -> BRO + OH rate = 1.20E-10*exp( -430./t) (227) + O1D_CF3BR (105) O1D + CF3BR -> BR + F + COF2 rate = 4.50E-11 (228) + O1D_CHBR3 (106) O1D + CHBR3 -> 3*BR rate = 4.62E-10 (229) + O1D_H2402 (107) O1D + H2402 -> 2*BR + 2*COF2 rate = 1.20E-10 (230) + O1D_HBRa (108) O1D + HBR -> BR + OH rate = 9.00E-11 (231) + O1D_HBRb (109) O1D + HBR -> BRO + H rate = 3.00E-11 (232) + F_CH4 (110) F + CH4 -> HF + CH3O2 rate = 1.60E-10*exp( -260./t) (233) + F_H2 (111) F + H2 -> HF + H rate = 1.40E-10*exp( -500./t) (234) + F_H2O (112) F + H2O -> HF + OH rate = 1.40E-11 (235) + F_HNO3 (113) F + HNO3 -> HF + NO3 rate = 6.00E-12*exp( 400./t) (236) + O1D_COF2 (114) O1D + COF2 -> 2*F rate = 2.14E-11 (237) + O1D_COFCL (115) O1D + COFCL -> F + CL rate = 1.90E-10 (238) + CH2BR2_CL (116) CH2BR2 + CL -> 2*BR + HCL rate = 6.30E-12*exp( -800./t) (239) + CH2BR2_OH (117) CH2BR2 + OH -> 2*BR + H2O rate = 2.00E-12*exp( -840./t) (240) + CH3BR_CL (118) CH3BR + CL -> HCL + HO2 + BR rate = 1.46E-11*exp( -1040./t) (241) + CH3BR_OH (119) CH3BR + OH -> BR + H2O + HO2 rate = 1.42E-12*exp( -1150./t) (242) + CH3CCL3_OH (120) CH3CCL3 + OH -> H2O + 3*CL rate = 1.64E-12*exp( -1520./t) (243) + CH3CL_CL (121) CH3CL + CL -> HO2 + CO + 2*HCL rate = 2.03E-11*exp( -1100./t) (244) + CH3CL_OH (122) CH3CL + OH -> CL + H2O + HO2 rate = 1.96E-12*exp( -1200./t) (245) + CHBR3_CL (123) CHBR3 + CL -> 3*BR + HCL rate = 4.85E-12*exp( -850./t) (246) + CHBR3_OH (124) CHBR3 + OH -> 3*BR rate = 9.00E-13*exp( -360./t) (247) + HCFC141B_OH (125) HCFC141B + OH -> CL + COFCL rate = 1.25E-12*exp( -1600./t) (248) + HCFC142B_OH (126) HCFC142B + OH -> CL + COF2 rate = 1.30E-12*exp( -1770./t) (249) + HCFC22_OH (127) HCFC22 + OH -> H2O + CL + COF2 rate = 9.20E-13*exp( -1560./t) (250) + O1D_CH2BR2 (128) O1D + CH2BR2 -> 2*BR rate = 2.57E-10 (251) + O1D_CH3BR (129) O1D + CH3BR -> BR rate = 1.80E-10 (252) + O1D_HCFC141B (130) O1D + HCFC141B -> CL + COFCL rate = 1.79E-10 (253) + O1D_HCFC142B (131) O1D + HCFC142B -> CL + COF2 rate = 1.30E-10 (254) + O1D_HCFC22 (132) O1D + HCFC22 -> CL + COF2 rate = 7.65E-11 (255) + CH2O_HO2 (133) CH2O + HO2 -> HOCH2OO rate = 9.70E-15*exp( 625./t) (256) + CH2O_NO3 (134) CH2O + NO3 -> CO + HO2 + HNO3 rate = 6.00E-13*exp( -2058./t) (257) + CH2O_O (135) CH2O + O -> HO2 + OH + CO rate = 3.40E-11*exp( -1600./t) (258) + CH2O_OH (136) CH2O + OH -> CO + H2O + H rate = 5.50E-12*exp( 125./t) (259) + CH3O2_CH3O2a (137) CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 rate = 5.00E-13*exp( -424./t) (260) + CH3O2_CH3O2b (138) CH3O2 + CH3O2 -> CH2O + CH3OH rate = 1.90E-14*exp( 706./t) (261) + CH3O2_HO2 (139) CH3O2 + HO2 -> CH3OOH + O2 rate = 4.10E-13*exp( 750./t) (262) + CH3O2_NO (140) CH3O2 + NO -> CH2O + NO2 + HO2 rate = 2.80E-12*exp( 300./t) (263) + CH3OH_OH (141) CH3OH + OH -> HO2 + CH2O rate = 2.90E-12*exp( -345./t) (264) + CH3OOH_OH (142) CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O rate = 3.80E-12*exp( 200./t) (265) + CH4_OH (143) CH4 + OH -> CH3O2 + H2O rate = 2.45E-12*exp( -1775./t) (266) + HCN_OH (144) HCN + OH + M -> HO2 + M troe : ko=6.10E-33*(300/t)**1.50 (267) ki=9.80E-15*(300/t)**-4.60 f=0.80 - HCOOH_OH (144) HCOOH + OH -> HO2 + CO2 + H2O rate = 4.00E-13 (267) - HOCH2OO_HO2 (145) HOCH2OO + HO2 -> HCOOH rate = 7.50E-13*exp( 700./t) (268) - HOCH2OO_M (146) HOCH2OO -> CH2O + HO2 rate = 2.40E+12*exp( -7000./t) (269) - HOCH2OO_NO (147) HOCH2OO + NO -> HCOOH + NO2 + HO2 rate = 2.60E-12*exp( 265./t) (270) - O1D_CH4a (148) O1D + CH4 -> CH3O2 + OH rate = 1.31E-10 (271) - O1D_CH4b (149) O1D + CH4 -> CH2O + H + HO2 rate = 3.50E-11 (272) - O1D_CH4c (150) O1D + CH4 -> CH2O + H2 rate = 9.00E-12 (273) - O1D_HCN (151) O1D + HCN -> OH rate = 1.08E-10*exp( 105./t) (274) - usr_CO_OH (152) CO + OH -> CO2 + HO2 rate = ** User defined ** (275) - C2H2_CL_M (153) C2H2 + CL + M -> CL + M troe : ko=5.20E-30*(300/t)**2.40 (276) + HCOOH_OH (145) HCOOH + OH -> HO2 + CO2 + H2O rate = 4.00E-13 (268) + HOCH2OO_HO2 (146) HOCH2OO + HO2 -> HCOOH rate = 7.50E-13*exp( 700./t) (269) + HOCH2OO_M (147) HOCH2OO -> CH2O + HO2 rate = 2.40E+12*exp( -7000./t) (270) + HOCH2OO_NO (148) HOCH2OO + NO -> HCOOH + NO2 + HO2 rate = 2.60E-12*exp( 265./t) (271) + O1D_CH4a (149) O1D + CH4 -> CH3O2 + OH rate = 1.31E-10 (272) + O1D_CH4b (150) O1D + CH4 -> CH2O + H + HO2 rate = 3.50E-11 (273) + O1D_CH4c (151) O1D + CH4 -> CH2O + H2 rate = 9.00E-12 (274) + O1D_HCN (152) O1D + HCN -> OH rate = 1.08E-10*exp( 105./t) (275) + usr_CO_OH (153) CO + OH -> CO2 + HO2 rate = ** User defined ** (276) + C2H2_CL_M (154) C2H2 + CL + M -> CL + M troe : ko=5.20E-30*(300/t)**2.40 (277) ki=2.20E-10*(300/t)**0.70 f=0.60 - C2H2_OH_M (154) C2H2 + OH + M -> 0.65*GLYOXAL + 0.65*OH + 0.35*HCOOH + 0.35*HO2 troe : ko=5.50E-30 (277) + C2H2_OH_M (155) C2H2 + OH + M -> 0.65*GLYOXAL + 0.65*OH + 0.35*HCOOH + 0.35*HO2 troe : ko=5.50E-30 (278) + 0.35*CO + M ki=8.30E-13*(300/t)**-2.00 f=0.60 - C2H4_CL_M (155) C2H4 + CL + M -> CL + M troe : ko=1.60E-29*(300/t)**3.30 (278) + C2H4_CL_M (156) C2H4 + CL + M -> CL + M troe : ko=1.60E-29*(300/t)**3.30 (279) ki=3.10E-10*(300/t) f=0.60 - C2H4_O3 (156) C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*HCOOH + CH2O rate = 1.20E-14*exp( -2630./t) (279) - C2H5O2_C2H5O2 (157) C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH rate = 6.80E-14 (280) - C2H5O2_CH3O2 (158) C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH rate = 2.00E-13 (281) + C2H4_O3 (157) C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*HCOOH + CH2O rate = 1.20E-14*exp( -2630./t) (280) + C2H5O2_C2H5O2 (158) C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH rate = 6.80E-14 (281) + C2H5O2_CH3O2 (159) C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH rate = 2.00E-13 (282) + 0.2*C2H5OH - C2H5O2_HO2 (159) C2H5O2 + HO2 -> C2H5OOH + O2 rate = 7.50E-13*exp( 700./t) (282) - C2H5O2_NO (160) C2H5O2 + NO -> CH3CHO + HO2 + NO2 rate = 2.60E-12*exp( 365./t) (283) - C2H5OH_OH (161) C2H5OH + OH -> HO2 + CH3CHO rate = 6.90E-12*exp( -230./t) (284) - C2H5OOH_OH (162) C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH rate = 3.80E-12*exp( 200./t) (285) - C2H6_CL (163) C2H6 + CL -> HCL + C2H5O2 rate = 7.20E-11*exp( -70./t) (286) - C2H6_OH (164) C2H6 + OH -> C2H5O2 + H2O rate = 7.66E-12*exp( -1020./t) (287) - CH3CHO_NO3 (165) CH3CHO + NO3 -> CH3CO3 + HNO3 rate = 1.40E-12*exp( -1900./t) (288) - CH3CHO_OH (166) CH3CHO + OH -> CH3CO3 + H2O rate = 4.63E-12*exp( 350./t) (289) - CH3CN_OH (167) CH3CN + OH -> HO2 rate = 7.80E-13*exp( -1050./t) (290) - CH3CO3_CH3CO3 (168) CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 rate = 2.90E-12*exp( 500./t) (291) - CH3CO3_CH3O2 (169) CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 rate = 2.00E-12*exp( 500./t) (292) + C2H5O2_HO2 (160) C2H5O2 + HO2 -> C2H5OOH + O2 rate = 7.50E-13*exp( 700./t) (283) + C2H5O2_NO (161) C2H5O2 + NO -> CH3CHO + HO2 + NO2 rate = 2.60E-12*exp( 365./t) (284) + C2H5OH_OH (162) C2H5OH + OH -> HO2 + CH3CHO rate = 6.90E-12*exp( -230./t) (285) + C2H5OOH_OH (163) C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH rate = 3.80E-12*exp( 200./t) (286) + C2H6_CL (164) C2H6 + CL -> HCL + C2H5O2 rate = 7.20E-11*exp( -70./t) (287) + C2H6_OH (165) C2H6 + OH -> C2H5O2 + H2O rate = 7.66E-12*exp( -1020./t) (288) + CH3CHO_NO3 (166) CH3CHO + NO3 -> CH3CO3 + HNO3 rate = 1.40E-12*exp( -1900./t) (289) + CH3CHO_OH (167) CH3CHO + OH -> CH3CO3 + H2O rate = 4.63E-12*exp( 350./t) (290) + CH3CN_OH (168) CH3CN + OH -> HO2 rate = 7.80E-13*exp( -1050./t) (291) + CH3CO3_CH3CO3 (169) CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 rate = 2.90E-12*exp( 500./t) (292) + CH3CO3_CH3O2 (170) CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 rate = 2.00E-12*exp( 500./t) (293) + 0.1*CH3COOH - CH3CO3_HO2 (170) CH3CO3 + HO2 -> 0.4*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.45*OH rate = 4.30E-13*exp( 1040./t) (293) - + 0.45*CH3O2 - CH3CO3_NO (171) CH3CO3 + NO -> CH3O2 + CO2 + NO2 rate = 8.10E-12*exp( 270./t) (294) - CH3COOH_OH (172) CH3COOH + OH -> CH3O2 + CO2 + H2O rate = 3.15E-14*exp( 920./t) (295) - CH3COOOH_OH (173) CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O rate = 1.00E-12 (296) - EO2_HO2 (174) EO2 + HO2 -> EOOH rate = 7.50E-13*exp( 700./t) (297) - EO2_NO (175) EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 rate = 4.20E-12*exp( 180./t) (298) - EO_M (176) EO -> 2*CH2O + HO2 rate = 1.60E+11*exp( -4150./t) (299) - EO_O2 (177) EO + O2 -> GLYALD + HO2 rate = 1.00E-14 (300) - GLYALD_OH (178) GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 rate = 1.00E-11 (301) - GLYOXAL_OH (179) GLYOXAL + OH -> HO2 + CO + CO2 rate = 1.15E-11 (302) - PAN_OH (180) PAN + OH -> CH2O + NO3 rate = 4.00E-14 (303) - tag_C2H4_OH (181) C2H4 + OH + M -> EO2 + M troe : ko=8.60E-29*(300/t)**3.10 (304) + CH3CO3_HO2 (171) CH3CO3 + HO2 -> 0.36*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.49*OH rate = 4.30E-13*exp( 1040./t) (294) + + 0.49*CH3O2 + 0.49*CO2 + CH3CO3_NO (172) CH3CO3 + NO -> CH3O2 + CO2 + NO2 rate = 8.10E-12*exp( 270./t) (295) + CH3COOH_OH (173) CH3COOH + OH -> CH3O2 + CO2 + H2O rate = 3.15E-14*exp( 920./t) (296) + CH3COOOH_OH (174) CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O rate = 1.00E-12 (297) + EO2_HO2 (175) EO2 + HO2 -> EOOH rate = 7.50E-13*exp( 700./t) (298) + EO2_NO (176) EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 rate = 4.20E-12*exp( 180./t) (299) + EO_M (177) EO -> 2*CH2O + HO2 rate = 1.60E+11*exp( -4150./t) (300) + EO_O2 (178) EO + O2 -> GLYALD + HO2 rate = 1.00E-14 (301) + GLYALD_OH (179) GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 rate = 1.00E-11 (302) + GLYOXAL_OH (180) GLYOXAL + OH -> HO2 + CO + CO2 rate = 1.15E-11 (303) + PAN_OH (181) PAN + OH -> CH2O + NO3 rate = 4.00E-14 (304) + tag_C2H4_OH (182) C2H4 + OH + M -> EO2 + M troe : ko=8.60E-29*(300/t)**3.10 (305) ki=9.00E-12*(300/t)**0.85 f=0.48 - tag_CH3CO3_NO2 (182) CH3CO3 + NO2 + M -> PAN + M troe : ko=7.30E-29*(300/t)**4.10 (305) + tag_CH3CO3_NO2 (183) CH3CO3 + NO2 + M -> PAN + M troe : ko=7.30E-29*(300/t)**4.10 (306) ki=9.50E-12*(300/t)**1.60 f=0.60 - usr_PAN_M (183) PAN + M -> CH3CO3 + NO2 + M rate = ** User defined ** (306) - C3H6_NO3 (184) C3H6 + NO3 -> NOA rate = 4.60E-13*exp( -1156./t) (307) - C3H6_O3 (185) C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (308) + usr_PAN_M (184) PAN + M -> CH3CO3 + NO2 + M rate = ** User defined ** (307) + C3H6_NO3 (185) C3H6 + NO3 -> NOA rate = 4.60E-13*exp( -1156./t) (308) + C3H6_O3 (186) C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (309) + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH - C3H7O2_CH3O2 (186) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 3.75E-13*exp( -40./t) (309) - C3H7O2_HO2 (187) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 7.50E-13*exp( 700./t) (310) - C3H7O2_NO (188) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 4.20E-12*exp( 180./t) (311) - C3H7OOH_OH (189) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (312) - C3H8_OH (190) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (313) - CH3COCHO_NO3 (191) CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 rate = 1.40E-12*exp( -1860./t) (314) - CH3COCHO_OH (192) CH3COCHO + OH -> CH3CO3 + CO + H2O rate = 8.40E-13*exp( 830./t) (315) - HYAC_OH (193) HYAC + OH -> CH3COCHO + HO2 rate = 3.00E-12 (316) - NOA_OH (194) NOA + OH -> NO2 + CH3COCHO rate = 6.70E-13 (317) - PO2_HO2 (195) PO2 + HO2 -> POOH + O2 rate = 7.50E-13*exp( 700./t) (318) - PO2_NO (196) PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 rate = 4.20E-12*exp( 180./t) (319) - POOH_OH (197) POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O rate = 3.80E-12*exp( 200./t) (320) - RO2_CH3O2 (198) RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC rate = 7.10E-13*exp( 500./t) (321) + C3H7O2_CH3O2 (187) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 1.00E-13*exp( 557./t) (310) + C3H7O2_HO2 (188) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 1.41E-13*exp( 1300./t) (311) + C3H7O2_NO (189) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 2.70E-12*exp( 360./t) (312) + C3H7OOH_OH (190) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (313) + C3H8_OH (191) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (314) + CH3COCHO_NO3 (192) CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 rate = 1.40E-12*exp( -1860./t) (315) + CH3COCHO_OH (193) CH3COCHO + OH -> CH3CO3 + CO + H2O rate = 8.40E-13*exp( 830./t) (316) + HYAC_OH (194) HYAC + OH -> CH3COCHO + HO2 rate = 3.00E-12 (317) + NOA_OH (195) NOA + OH -> NO2 + CH3COCHO rate = 6.70E-13 (318) + PO2_HO2 (196) PO2 + HO2 -> POOH + O2 rate = 7.50E-13*exp( 700./t) (319) + PO2_NO (197) PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 rate = 4.20E-12*exp( 180./t) (320) + POOH_OH (198) POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O rate = 3.80E-12*exp( 200./t) (321) + RO2_CH3O2 (199) RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC rate = 7.10E-13*exp( 500./t) (322) + 0.5*CH3COCHO + 0.5*CH3OH - RO2_HO2 (199) RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 rate = 8.60E-13*exp( 700./t) (322) - RO2_NO (200) RO2 + NO -> CH3CO3 + CH2O + NO2 rate = 2.90E-12*exp( 300./t) (323) - ROOH_OH (201) ROOH + OH -> RO2 + H2O rate = 3.80E-12*exp( 200./t) (324) - tag_C3H6_OH (202) C3H6 + OH + M -> PO2 + M troe : ko=8.00E-27*(300/t)**3.50 (325) + RO2_HO2 (200) RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 rate = 8.60E-13*exp( 700./t) (323) + RO2_NO (201) RO2 + NO -> CH3CO3 + CH2O + NO2 rate = 2.90E-12*exp( 300./t) (324) + ROOH_OH (202) ROOH + OH -> RO2 + H2O rate = 3.80E-12*exp( 200./t) (325) + tag_C3H6_OH (203) C3H6 + OH + M -> PO2 + M troe : ko=8.00E-27*(300/t)**3.50 (326) ki=3.00E-11 f=0.50 - usr_CH3COCH3_OH (203) CH3COCH3 + OH -> RO2 + H2O rate = ** User defined ** (326) - BIGENE_NO3 (204) BIGENE + NO3 -> NO2 + CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 rate = 3.50E-13 (327) - BIGENE_OH (205) BIGENE + OH -> ENEO2 rate = 5.40E-11 (328) - ENEO2_NO (206) ENEO2 + NO -> CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 + HO2 + NO2 rate = 4.80E-12*exp( 120./t) (329) - ENEO2_NOb (207) ENEO2 + NO -> HONITR rate = 5.10E-14*exp( 693./t) (330) - HONITR_OH (208) HONITR + OH -> ONITR + HO2 rate = 2.00E-12 (331) - MACRO2_CH3CO3 (209) MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 rate = 1.40E-11 (332) + usr_CH3COCH3_OH (204) CH3COCH3 + OH -> RO2 + H2O rate = ** User defined ** (327) + BIGENE_NO3 (205) BIGENE + NO3 -> NO2 + CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 rate = 3.50E-13 (328) + BIGENE_OH (206) BIGENE + OH -> ENEO2 rate = 5.40E-11 (329) + ENEO2_NO (207) ENEO2 + NO -> CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 + HO2 + NO2 rate = 4.80E-12*exp( 120./t) (330) + ENEO2_NOb (208) ENEO2 + NO -> HONITR rate = 5.10E-14*exp( 693./t) (331) + HONITR_OH (209) HONITR + OH -> ONITR + HO2 rate = 2.00E-12 (332) + MACRO2_CH3CO3 (210) MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 rate = 1.40E-11 (333) + 0.53*GLYALD + 0.22*HYAC + 0.25*CH2O + 0.53*CH3CO3 - MACRO2_CH3O2 (210) MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO rate = 5.00E-13*exp( 400./t) (333) + MACRO2_CH3O2 (211) MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO rate = 5.00E-13*exp( 400./t) (334) + 0.26*GLYALD + 0.26*CH3CO3 + 0.25*CH3OH + 0.23*HYAC - MACRO2_HO2 (211) MACRO2 + HO2 -> MACROOH rate = 8.00E-13*exp( 700./t) (334) - MACRO2_NO3 (212) MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO rate = 2.40E-12 (335) + MACRO2_HO2 (212) MACRO2 + HO2 -> MACROOH rate = 8.00E-13*exp( 700./t) (335) + MACRO2_NO3 (213) MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO rate = 2.40E-12 (336) + 0.22*CO + 0.53*GLYALD + 0.22*HYAC + 0.53*CH3CO3 - MACRO2_NOa (213) MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD rate = 2.70E-12*exp( 360./t) (336) + MACRO2_NOa (214) MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD rate = 2.70E-12*exp( 360./t) (337) + 0.25*CH3COCHO + 0.53*CH3CO3 + 0.22*HYAC + 0.22*CO - MACRO2_NOb (214) MACRO2 + NO -> HONITR rate = 1.30E-13*exp( 360./t) (337) - MACR_O3 (215) MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 rate = 1.50E-15*exp( -2100./t) (338) + MACRO2_NOb (215) MACRO2 + NO -> HONITR rate = 1.30E-13*exp( 360./t) (338) + MACR_O3 (216) MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 rate = 1.50E-15*exp( -2100./t) (339) + 0.88*CH3COCHO + 0.33*HCOOH + 0.14*HO2 - MACR_OH (216) MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 rate = 9.60E-12*exp( 360./t) (339) - MACROOH_OH (217) MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 rate = 2.30E-11*exp( 200./t) (340) - MCO3_CH3CO3 (218) MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 rate = 4.60E-12*exp( 530./t) (341) - MCO3_CH3O2 (219) MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 rate = 2.00E-12*exp( 500./t) (342) - MCO3_HO2 (220) MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH rate = 4.30E-13*exp( 1040./t) (343) + MACR_OH (217) MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 rate = 9.60E-12*exp( 360./t) (340) + MACROOH_OH (218) MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 rate = 2.30E-11*exp( 200./t) (341) + MCO3_CH3CO3 (219) MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 rate = 4.60E-12*exp( 530./t) (342) + MCO3_CH3O2 (220) MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 rate = 2.00E-12*exp( 500./t) (343) + MCO3_HO2 (221) MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH rate = 4.30E-13*exp( 1040./t) (344) + 0.45*CO2 + 0.45*CH2O + 0.45*CH3CO3 - MCO3_MCO3 (221) MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 rate = 2.30E-12*exp( 530./t) (344) - MCO3_NO (222) MCO3 + NO -> NO2 + CH2O + CH3CO3 rate = 5.30E-12*exp( 360./t) (345) - MCO3_NO3 (223) MCO3 + NO3 -> NO2 + CH2O + CH3CO3 rate = 5.00E-12 (346) - MEKO2_HO2 (224) MEKO2 + HO2 -> 0.8*MEKOOH + 0.2*OH + 0.2*CH3CHO + 0.2*CH3CO3 rate = 7.50E-13*exp( 700./t) (347) - MEKO2_NO (225) MEKO2 + NO -> CH3CO3 + CH3CHO + NO2 rate = 4.20E-12*exp( 180./t) (348) - MEK_OH (226) MEK + OH -> MEKO2 rate = 2.30E-12*exp( -170./t) (349) - MEKOOH_OH (227) MEKOOH + OH -> MEKO2 rate = 3.80E-12*exp( 200./t) (350) - MPAN_OH_M (228) MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 troe : ko=8.00E-27*(300/t)**3.50 (351) - + M + 0.5*NDEP ki=3.00E-11 + MCO3_MCO3 (222) MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 rate = 2.30E-12*exp( 530./t) (345) + MCO3_NO (223) MCO3 + NO -> NO2 + CH2O + CH3CO3 rate = 5.30E-12*exp( 360./t) (346) + MCO3_NO3 (224) MCO3 + NO3 -> NO2 + CH2O + CH3CO3 rate = 5.00E-12 (347) + MEKO2_HO2 (225) MEKO2 + HO2 -> 0.8*MEKOOH + 0.2*OH + 0.2*CH3CHO + 0.2*CH3CO3 rate = 7.50E-13*exp( 700./t) (348) + MEKO2_NO (226) MEKO2 + NO -> CH3CO3 + CH3CHO + NO2 rate = 4.20E-12*exp( 180./t) (349) + MEK_OH (227) MEK + OH -> MEKO2 rate = 2.30E-12*exp( -170./t) (350) + MEKOOH_OH (228) MEKOOH + OH -> MEKO2 rate = 3.80E-12*exp( 200./t) (351) + MPAN_OH_M (229) MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 troe : ko=8.00E-27*(300/t)**3.50 (352) + + 0.5*NDEP + M ki=3.00E-11 f=0.50 - MVK_O3 (229) MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 rate = 8.50E-16*exp( -1520./t) (352) + MVK_O3 (230) MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 rate = 8.50E-16*exp( -1520./t) (353) + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*HCOOH - MVK_OH (230) MVK + OH -> MACRO2 rate = 4.13E-12*exp( 452./t) (353) - tag_MCO3_NO2 (231) MCO3 + NO2 + M -> MPAN + M troe : ko=9.70E-29*(300/t)**5.60 (354) + MVK_OH (231) MVK + OH -> MACRO2 rate = 4.13E-12*exp( 452./t) (354) + tag_MCO3_NO2 (232) MCO3 + NO2 + M -> MPAN + M troe : ko=9.70E-29*(300/t)**5.60 (355) ki=9.30E-12*(300/t)**1.50 f=0.60 - usr_MPAN_M (232) MPAN + M -> MCO3 + NO2 + M rate = ** User defined ** (355) - ALKNIT_OH (233) ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 rate = 1.60E-12 (356) - ALKO2_HO2 (234) ALKO2 + HO2 -> ALKOOH rate = 7.50E-13*exp( 700./t) (357) - ALKO2_NO (235) ALKO2 + NO -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK rate = 6.70E-12 (358) + usr_MPAN_M (233) MPAN + M -> MCO3 + NO2 + M rate = ** User defined ** (356) + ALKNIT_OH (234) ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 rate = 2.20E-12 (357) + ALKO2_HO2 (235) ALKO2 + HO2 -> ALKOOH rate = 7.50E-13*exp( 700./t) (358) + ALKO2_NO (236) ALKO2 + NO -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK rate = 6.70E-12 (359) + NO2 - ALKO2_NOb (236) ALKO2 + NO -> ALKNIT rate = 5.40E-14*exp( 870./t) (359) - ALKOOH_OH (237) ALKOOH + OH -> ALKO2 rate = 3.80E-12*exp( 200./t) (360) - BIGALK_OH (238) BIGALK + OH -> ALKO2 rate = 3.50E-12 (361) - HPALD_OH (239) HPALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (362) - HYDRALD_OH (240) HYDRALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (363) - IEPOX_OH (241) IEPOX + OH -> XO2 rate = 1.30E-11 (364) - ISOPAO2_CH3CO3 (242) ISOPAO2 + CH3CO3 -> CH3O2 + HO2 + CH2O + 0.39*MACR + 0.61*MVK + CO2 rate = 1.40E-11 (365) - ISOPAO2_CH3O2 (243) ISOPAO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.5*CH2O + 0.31*MACR rate = 5.00E-13*exp( 400./t) (366) + ALKO2_NOb (237) ALKO2 + NO -> ALKNIT rate = 5.40E-14*exp( 870./t) (360) + ALKOOH_OH (238) ALKOOH + OH -> ALKO2 rate = 3.80E-12*exp( 200./t) (361) + BIGALK_OH (239) BIGALK + OH -> ALKO2 rate = 3.50E-12 (362) + HPALD_OH (240) HPALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (363) + HYDRALD_OH (241) HYDRALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (364) + IEPOX_OH (242) IEPOX + OH -> XO2 rate = 1.30E-11 (365) + ISOPAO2_CH3CO3 (243) ISOPAO2 + CH3CO3 -> CH3O2 + HO2 + CH2O + 0.39*MACR + 0.61*MVK + CO2 rate = 1.40E-11 (366) + ISOPAO2_CH3O2 (244) ISOPAO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.5*CH2O + 0.31*MACR rate = 5.00E-13*exp( 400./t) (367) + 0.44*MVK - ISOPAO2_HO2 (244) ISOPAO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (367) - ISOPAO2_NO (245) ISOPAO2 + NO -> 0.08*ISOPNITA + 0.92*NO2 + 0.36*MACR + 0.56*MVK rate = 4.40E-12*exp( 180./t) (368) + ISOPAO2_HO2 (245) ISOPAO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (368) + ISOPAO2_NO (246) ISOPAO2 + NO -> 0.08*ISOPNITA + 0.92*NO2 + 0.36*MACR + 0.56*MVK rate = 4.40E-12*exp( 180./t) (369) + 0.92*CH2O + 0.92*HO2 - ISOPAO2_NO3 (246) ISOPAO2 + NO3 -> NO2 + 0.4*MACR + 0.6*MVK + CH2O + HO2 rate = 2.40E-12 (369) - ISOPBO2_CH3CO3 (247) ISOPBO2 + CH3CO3 -> HYDRALD + CH3O2 + HO2 rate = 1.40E-11 (370) - ISOPBO2_CH3O2 (248) ISOPBO2 + CH3O2 -> 0.25*CH3OH + HO2 + 0.75*CH2O + 0.75*HYDRALD rate = 5.00E-13*exp( 400./t) (371) - ISOPBO2_HO2 (249) ISOPBO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (372) - ISOPBO2_M (250) ISOPBO2 -> HPALD + HO2 rate = 1.60E+09*exp( -8300./t) (373) - ISOPBO2_NO (251) ISOPBO2 + NO -> 0.87*HYDRALD + 0.08*ISOPNITB + 0.92*NO2 + 0.92*HO2 rate = 4.40E-12*exp( 180./t) (374) + ISOPAO2_NO3 (247) ISOPAO2 + NO3 -> NO2 + 0.4*MACR + 0.6*MVK + CH2O + HO2 rate = 2.40E-12 (370) + ISOPBO2_CH3CO3 (248) ISOPBO2 + CH3CO3 -> HYDRALD + CH3O2 + HO2 rate = 1.40E-11 (371) + ISOPBO2_CH3O2 (249) ISOPBO2 + CH3O2 -> 0.25*CH3OH + HO2 + 0.75*CH2O + 0.75*HYDRALD rate = 5.00E-13*exp( 400./t) (372) + ISOPBO2_HO2 (250) ISOPBO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (373) + ISOPBO2_M (251) ISOPBO2 -> HPALD + HO2 rate = 1.60E+09*exp( -8300./t) (374) + ISOPBO2_NO (252) ISOPBO2 + NO -> 0.87*HYDRALD + 0.08*ISOPNITB + 0.92*NO2 + 0.92*HO2 rate = 4.40E-12*exp( 180./t) (375) + 0.05*GLYOXAL + 0.05*GLYALD + 0.05*CH3COCHO + 0.05*HYAC - ISOPBO2_NO3 (252) ISOPBO2 + NO3 -> NO2 + 0.95*HYDRALD + HO2 + 0.05*GLYOXAL rate = 2.40E-12 (375) + ISOPBO2_NO3 (253) ISOPBO2 + NO3 -> NO2 + 0.95*HYDRALD + HO2 + 0.05*GLYOXAL rate = 2.40E-12 (376) + 0.05*GLYALD + 0.05*CH3COCHO + 0.05*HYAC - ISOPNITA_OH (253) ISOPNITA + OH -> 0.7*HYAC + 0.7*GLYALD + 0.7*NO2 + 0.3*CH2O rate = 4.00E-11 (376) + ISOPNITA_OH (254) ISOPNITA + OH -> 0.7*HYAC + 0.7*GLYALD + 0.7*NO2 + 0.3*CH2O rate = 4.00E-11 (377) + 0.3*HONITR + 0.3*HO2 - ISOPNITB_OH (254) ISOPNITB + OH -> 0.5*HYAC + 0.5*GLYALD + 0.5*NOA + HO2 + 0.5*HONITR rate = 4.00E-11 (377) - ISOP_NO3 (255) ISOP + NO3 -> ISOPNO3 rate = 3.03E-12*exp( -446./t) (378) - ISOPNO3_CH3CO3 (256) ISOPNO3 + CH3CO3 -> NC4CHO + CH3O2 + HO2 rate = 1.40E-11 (379) - ISOPNO3_CH3O2 (257) ISOPNO3 + CH3O2 -> 0.8*NC4CHO + 1.2*HO2 + 0.8*CH2O + 0.2*CH3OH rate = 5.00E-13*exp( 400./t) (380) + ISOPNITB_OH (255) ISOPNITB + OH -> 0.5*HYAC + 0.5*GLYALD + 0.5*NOA + HO2 + 0.5*HONITR rate = 4.00E-11 (378) + ISOP_NO3 (256) ISOP + NO3 -> ISOPNO3 rate = 3.03E-12*exp( -446./t) (379) + ISOPNO3_CH3CO3 (257) ISOPNO3 + CH3CO3 -> NC4CHO + CH3O2 + HO2 rate = 1.40E-11 (380) + ISOPNO3_CH3O2 (258) ISOPNO3 + CH3O2 -> 0.8*NC4CHO + 1.2*HO2 + 0.8*CH2O + 0.2*CH3OH rate = 5.00E-13*exp( 400./t) (381) + 0.2*NC4CH2OH - ISOPNO3_HO2 (258) ISOPNO3 + HO2 -> ISOPNOOH rate = 8.00E-13*exp( 700./t) (381) - ISOPNO3_NO (259) ISOPNO3 + NO -> NC4CHO + NO2 + HO2 rate = 2.70E-12*exp( 360./t) (382) - ISOPNO3_NO3 (260) ISOPNO3 + NO3 -> NC4CHO + NO2 + HO2 rate = 2.40E-12 (383) - ISOPNOOH_OH (261) ISOPNOOH + OH -> NOA + HO2 rate = 4.00E-11 (384) - ISOP_O3 (262) ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*HCOOH + 0.62*CO + 0.32*OH rate = 1.05E-14*exp( -2000./t) (385) + ISOPNO3_HO2 (259) ISOPNO3 + HO2 -> ISOPNOOH rate = 8.00E-13*exp( 700./t) (382) + ISOPNO3_NO (260) ISOPNO3 + NO -> NC4CHO + NO2 + HO2 rate = 2.70E-12*exp( 360./t) (383) + ISOPNO3_NO3 (261) ISOPNO3 + NO3 -> NC4CHO + NO2 + HO2 rate = 2.40E-12 (384) + ISOPNOOH_OH (262) ISOPNOOH + OH -> NOA + HO2 rate = 4.00E-11 (385) + ISOP_O3 (263) ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*HCOOH + 0.62*CO + 0.32*OH rate = 1.05E-14*exp( -2000./t) (386) + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 + 0.05*CH3O2 - ISOP_OH (263) ISOP + OH -> 0.6*ISOPAO2 + 0.4*ISOPBO2 rate = 2.54E-11*exp( 410./t) (386) - ISOPOOH_OH (264) ISOPOOH + OH -> 0.4*XO2 + 0.6*IEPOX + 0.6*OH rate = 1.52E-11*exp( 200./t) (387) - NC4CH2OH_OH (265) NC4CH2OH + OH -> GLYALD + NOA + HO2 rate = 7.00E-11 (388) - NC4CHO_OH (266) NC4CHO + OH -> GLYOXAL + NOA + HO2 rate = 1.00E-10 (389) - XO2_CH3CO3 (267) XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 rate = 1.30E-12*exp( 640./t) (390) + ISOP_OH (264) ISOP + OH -> 0.6*ISOPAO2 + 0.4*ISOPBO2 rate = 2.54E-11*exp( 410./t) (387) + ISOPOOH_OH (265) ISOPOOH + OH -> 0.4*XO2 + 0.6*IEPOX + 0.6*OH rate = 1.52E-11*exp( 200./t) (388) + NC4CH2OH_OH (266) NC4CH2OH + OH -> GLYALD + NOA + HO2 rate = 7.00E-11 (389) + NC4CHO_OH (267) NC4CHO + OH -> GLYOXAL + NOA + HO2 rate = 1.00E-10 (390) + XO2_CH3CO3 (268) XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 rate = 1.30E-12*exp( 640./t) (391) + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 - XO2_CH3O2 (268) XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO rate = 5.00E-13*exp( 400./t) (391) + XO2_CH3O2 (269) XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO rate = 5.00E-13*exp( 400./t) (392) + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD - XO2_HO2 (269) XO2 + HO2 -> XOOH rate = 8.00E-13*exp( 700./t) (392) - XO2_NO (270) XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL rate = 2.70E-12*exp( 360./t) (393) + XO2_HO2 (270) XO2 + HO2 -> XOOH rate = 8.00E-13*exp( 700./t) (393) + XO2_NO (271) XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL rate = 2.70E-12*exp( 360./t) (394) + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD - XO2_NO3 (271) XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL rate = 2.40E-12 (394) + XO2_NO3 (272) XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL rate = 2.40E-12 (395) + 0.25*CH3COCHO + 0.25*GLYALD - XOOH_OH (272) XOOH + OH -> 0.5*XO2 + 0.5*OH rate = 1.52E-12*exp( 200./t) (395) - ACBZO2_HO2 (273) ACBZO2 + HO2 -> 0.4*C6H5O2 + 0.4*OH rate = 4.30E-13*exp( 1040./t) (396) - ACBZO2_NO (274) ACBZO2 + NO -> C6H5O2 + NO2 rate = 7.50E-12*exp( 290./t) (397) - BENZENE_OH (275) BENZENE + OH -> 0.53*PHENOL + 0.12*BEPOMUC + 0.65*HO2 + 0.35*BENZO2 rate = 2.30E-12*exp( -193./t) (398) - BENZO2_HO2 (276) BENZO2 + HO2 -> BENZOOH rate = 7.50E-13*exp( 700./t) (399) - BENZO2_NO (277) BENZO2 + NO -> NO2 + GLYOXAL + 0.5*BIGALD1 + HO2 rate = 2.60E-12*exp( 365./t) (400) - BENZOOH_OH (278) BENZOOH + OH -> BENZO2 rate = 3.80E-12*exp( 200./t) (401) - BZALD_OH (279) BZALD + OH -> ACBZO2 rate = 5.90E-12*exp( 225./t) (402) - BZOO_HO2 (280) BZOO + HO2 -> BZOOH rate = 7.50E-13*exp( 700./t) (403) - BZOOH_OH (281) BZOOH + OH -> BZOO rate = 3.80E-12*exp( 200./t) (404) - BZOO_NO (282) BZOO + NO -> BZALD + NO2 + HO2 rate = 2.60E-12*exp( 365./t) (405) - C6H5O2_HO2 (283) C6H5O2 + HO2 -> C6H5OOH rate = 7.50E-13*exp( 700./t) (406) - C6H5O2_NO (284) C6H5O2 + NO -> PHENO + NO2 rate = 2.60E-12*exp( 365./t) (407) - C6H5OOH_OH (285) C6H5OOH + OH -> C6H5O2 rate = 3.80E-12*exp( 200./t) (408) - CRESOL_OH (286) CRESOL + OH -> 0.2*PHENO2 + 0.73*HO2 + 0.07*PHENO rate = 4.70E-11 (409) - DICARBO2_HO2 (287) DICARBO2 + HO2 -> 0.4*OH + 0.07*HO2 + 0.07*CH3COCHO + 0.07*CO rate = 4.30E-13*exp( 1040./t) (410) + XOOH_OH (273) XOOH + OH -> 0.5*XO2 + 0.5*OH rate = 1.52E-12*exp( 200./t) (396) + ACBZO2_HO2 (274) ACBZO2 + HO2 -> 0.4*C6H5O2 + 0.4*OH rate = 4.30E-13*exp( 1040./t) (397) + ACBZO2_NO (275) ACBZO2 + NO -> C6H5O2 + NO2 rate = 7.50E-12*exp( 290./t) (398) + BENZENE_OH (276) BENZENE + OH -> 0.53*PHENOL + 0.12*BEPOMUC + 0.65*HO2 + 0.35*BENZO2 rate = 2.30E-12*exp( -193./t) (399) + BENZO2_HO2 (277) BENZO2 + HO2 -> BENZOOH rate = 7.50E-13*exp( 700./t) (400) + BENZO2_NO (278) BENZO2 + NO -> NO2 + GLYOXAL + 0.5*BIGALD1 + HO2 rate = 2.60E-12*exp( 365./t) (401) + BENZOOH_OH (279) BENZOOH + OH -> BENZO2 rate = 3.80E-12*exp( 200./t) (402) + BZALD_OH (280) BZALD + OH -> ACBZO2 rate = 5.90E-12*exp( 225./t) (403) + BZOO_HO2 (281) BZOO + HO2 -> BZOOH rate = 7.50E-13*exp( 700./t) (404) + BZOOH_OH (282) BZOOH + OH -> BZOO rate = 3.80E-12*exp( 200./t) (405) + BZOO_NO (283) BZOO + NO -> BZALD + NO2 + HO2 rate = 2.60E-12*exp( 365./t) (406) + C6H5O2_HO2 (284) C6H5O2 + HO2 -> C6H5OOH rate = 7.50E-13*exp( 700./t) (407) + C6H5O2_NO (285) C6H5O2 + NO -> PHENO + NO2 rate = 2.60E-12*exp( 365./t) (408) + C6H5OOH_OH (286) C6H5OOH + OH -> C6H5O2 rate = 3.80E-12*exp( 200./t) (409) + CRESOL_OH (287) CRESOL + OH -> 0.2*PHENO2 + 0.73*HO2 + 0.07*PHENO rate = 4.70E-11 (410) + DICARBO2_HO2 (288) DICARBO2 + HO2 -> 0.4*OH + 0.07*HO2 + 0.07*CH3COCHO + 0.07*CO rate = 4.30E-13*exp( 1040./t) (411) + 0.33*CH3O2 - DICARBO2_NO (288) DICARBO2 + NO -> NO2 + 0.17*HO2 + 0.17*CH3COCHO + 0.17*CO rate = 7.50E-12*exp( 290./t) (411) + DICARBO2_NO (289) DICARBO2 + NO -> NO2 + 0.17*HO2 + 0.17*CH3COCHO + 0.17*CO rate = 7.50E-12*exp( 290./t) (412) + 0.83*CH3O2 - DICARBO2_NO2 (289) DICARBO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (412) + DICARBO2_NO2 (290) DICARBO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (413) ki=9.30E-12*(300/t)**1.50 f=0.60 - MALO2_HO2 (290) MALO2 + HO2 -> 0.16*GLYOXAL + 0.16*HO2 + 0.16*CO rate = 4.30E-13*exp( 1040./t) (413) - MALO2_NO (291) MALO2 + NO -> 0.4*GLYOXAL + 0.4*HO2 + 0.4*CO + NO2 rate = 7.50E-12*exp( 290./t) (414) - MALO2_NO2 (292) MALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (415) + MALO2_HO2 (291) MALO2 + HO2 -> 0.16*GLYOXAL + 0.16*HO2 + 0.16*CO rate = 4.30E-13*exp( 1040./t) (414) + MALO2_NO (292) MALO2 + NO -> 0.4*GLYOXAL + 0.4*HO2 + 0.4*CO + NO2 rate = 7.50E-12*exp( 290./t) (415) + MALO2_NO2 (293) MALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (416) ki=9.30E-12*(300/t)**1.50 f=0.60 - MDIALO2_HO2 (293) MDIALO2 + HO2 -> 0.4*OH + 0.33*HO2 + 0.07*CH3COCHO + 0.14*CO rate = 4.30E-13*exp( 1040./t) (416) + MDIALO2_HO2 (294) MDIALO2 + HO2 -> 0.4*OH + 0.33*HO2 + 0.07*CH3COCHO + 0.14*CO rate = 4.30E-13*exp( 1040./t) (417) + 0.07*CH3O2 + 0.07*GLYOXAL - MDIALO2_NO (294) MDIALO2 + NO -> NO2 + 0.83*HO2 + 0.17*CH3COCHO + 0.35*CO rate = 7.50E-12*exp( 290./t) (417) + MDIALO2_NO (295) MDIALO2 + NO -> NO2 + 0.83*HO2 + 0.17*CH3COCHO + 0.35*CO rate = 7.50E-12*exp( 290./t) (418) + 0.17*CH3O2 + 0.17*GLYOXAL - MDIALO2_NO2 (295) MDIALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (418) + MDIALO2_NO2 (296) MDIALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (419) ki=9.30E-12*(300/t)**1.50 f=0.60 - PHENO2_HO2 (296) PHENO2 + HO2 -> PHENOOH rate = 7.50E-13*exp( 700./t) (419) - PHENO2_NO (297) PHENO2 + NO -> HO2 + 0.7*GLYOXAL + NO2 rate = 2.60E-12*exp( 365./t) (420) - PHENOL_OH (298) PHENOL + OH -> 0.14*PHENO2 + 0.8*HO2 + 0.06*PHENO rate = 4.70E-13*exp( 1220./t) (421) - PHENO_NO2 (299) PHENO + NO2 -> NDEP rate = 2.10E-12 (422) - PHENO_O3 (300) PHENO + O3 -> C6H5O2 rate = 2.80E-13 (423) - PHENOOH_OH (301) PHENOOH + OH -> PHENO2 rate = 3.80E-12*exp( 200./t) (424) - tag_ACBZO2_NO2 (302) ACBZO2 + NO2 + M -> PBZNIT + M troe : ko=9.70E-29*(300/t)**5.60 (425) + PHENO2_HO2 (297) PHENO2 + HO2 -> PHENOOH rate = 7.50E-13*exp( 700./t) (420) + PHENO2_NO (298) PHENO2 + NO -> HO2 + 0.7*GLYOXAL + NO2 rate = 2.60E-12*exp( 365./t) (421) + PHENOL_OH (299) PHENOL + OH -> 0.14*PHENO2 + 0.8*HO2 + 0.06*PHENO rate = 4.70E-13*exp( 1220./t) (422) + PHENO_NO2 (300) PHENO + NO2 -> NDEP rate = 2.10E-12 (423) + PHENO_O3 (301) PHENO + O3 -> C6H5O2 rate = 2.80E-13 (424) + PHENOOH_OH (302) PHENOOH + OH -> PHENO2 rate = 3.80E-12*exp( 200./t) (425) + tag_ACBZO2_NO2 (303) ACBZO2 + NO2 + M -> PBZNIT + M troe : ko=9.70E-29*(300/t)**5.60 (426) ki=9.30E-12*(300/t)**1.50 f=0.60 - TOLO2_HO2 (303) TOLO2 + HO2 -> TOLOOH rate = 7.50E-13*exp( 700./t) (426) - TOLO2_NO (304) TOLO2 + NO -> NO2 + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 rate = 2.60E-12*exp( 365./t) (427) + TOLO2_HO2 (304) TOLO2 + HO2 -> TOLOOH rate = 7.50E-13*exp( 700./t) (427) + TOLO2_NO (305) TOLO2 + NO -> NO2 + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 rate = 2.60E-12*exp( 365./t) (428) + 0.2*BIGALD2 + 0.2*BIGALD3 - TOLOOH_OH (305) TOLOOH + OH -> TOLO2 rate = 3.80E-12*exp( 200./t) (428) - TOLUENE_OH (306) TOLUENE + OH -> 0.18*CRESOL + 0.1*TEPOMUC + 0.07*BZOO + 0.65*TOLO2 rate = 1.70E-12*exp( 352./t) (429) + TOLOOH_OH (306) TOLOOH + OH -> TOLO2 rate = 3.80E-12*exp( 200./t) (429) + TOLUENE_OH (307) TOLUENE + OH -> 0.18*CRESOL + 0.1*TEPOMUC + 0.07*BZOO + 0.65*TOLO2 rate = 1.70E-12*exp( 352./t) (430) + 0.28*HO2 - usr_PBZNIT_M (307) PBZNIT + M -> ACBZO2 + NO2 + M rate = ** User defined ** (430) - XYLENES_OH (308) XYLENES + OH -> 0.15*XYLOL + 0.23*TEPOMUC + 0.06*BZOO rate = 1.70E-11 (431) + usr_PBZNIT_M (308) PBZNIT + M -> ACBZO2 + NO2 + M rate = ** User defined ** (431) + XYLENES_OH (309) XYLENES + OH -> 0.15*XYLOL + 0.23*TEPOMUC + 0.06*BZOO rate = 1.70E-11 (432) + 0.56*XYLENO2 + 0.38*HO2 - XYLENO2_HO2 (309) XYLENO2 + HO2 -> XYLENOOH rate = 7.50E-13*exp( 700./t) (432) - XYLENO2_NO (310) XYLENO2 + NO -> NO2 + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO rate = 2.60E-12*exp( 365./t) (433) + XYLENO2_HO2 (310) XYLENO2 + HO2 -> XYLENOOH rate = 7.50E-13*exp( 700./t) (433) + XYLENO2_NO (311) XYLENO2 + NO -> NO2 + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO rate = 2.60E-12*exp( 365./t) (434) + 0.06*BIGALD1 + 0.2*BIGALD2 + 0.15*BIGALD3 + 0.21*BIGALD4 - XYLENOOH_OH (311) XYLENOOH + OH -> XYLENO2 rate = 3.80E-12*exp( 200./t) (434) - XYLOLO2_HO2 (312) XYLOLO2 + HO2 -> XYLOLOOH rate = 7.50E-13*exp( 700./t) (435) - XYLOLO2_NO (313) XYLOLO2 + NO -> HO2 + NO2 + 0.17*GLYOXAL + 0.51*CH3COCHO rate = 2.60E-12*exp( 365./t) (436) - XYLOL_OH (314) XYLOL + OH -> 0.3*XYLOLO2 + 0.63*HO2 + 0.07*PHENO rate = 8.40E-11 (437) - XYLOLOOH_OH (315) XYLOLOOH + OH -> XYLOLO2 rate = 3.80E-12*exp( 200./t) (438) - BCARY_NO3 (316) BCARY + NO3 -> NTERPO2 rate = 1.90E-11 (439) - BCARY_O3 (317) BCARY + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 1.20E-14 (440) + XYLENOOH_OH (312) XYLENOOH + OH -> XYLENO2 rate = 3.80E-12*exp( 200./t) (435) + XYLOLO2_HO2 (313) XYLOLO2 + HO2 -> XYLOLOOH rate = 7.50E-13*exp( 700./t) (436) + XYLOLO2_NO (314) XYLOLO2 + NO -> HO2 + NO2 + 0.17*GLYOXAL + 0.51*CH3COCHO rate = 2.60E-12*exp( 365./t) (437) + XYLOL_OH (315) XYLOL + OH -> 0.3*XYLOLO2 + 0.63*HO2 + 0.07*PHENO rate = 8.40E-11 (438) + XYLOLOOH_OH (316) XYLOLOOH + OH -> XYLOLO2 rate = 3.80E-12*exp( 200./t) (439) + BCARY_NO3 (317) BCARY + NO3 -> NTERPO2 rate = 1.90E-11 (440) + BCARY_O3 (318) BCARY + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 1.20E-14 (441) + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + 0.06*RO2 - BCARY_OH (318) BCARY + OH -> TERPO2 rate = 2.00E-10 (441) - MTERP_NO3 (319) MTERP + NO3 -> NTERPO2 rate = 1.20E-12*exp( 490./t) (442) - MTERP_O3 (320) MTERP + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 6.30E-16*exp( -580./t) (443) + BCARY_OH (319) BCARY + OH -> TERPO2 rate = 2.00E-10 (442) + MTERP_NO3 (320) MTERP + NO3 -> NTERPO2 rate = 1.20E-12*exp( 490./t) (443) + MTERP_O3 (321) MTERP + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 6.30E-16*exp( -580./t) (444) + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + 0.06*RO2 - MTERP_OH (321) MTERP + OH -> TERPO2 rate = 1.20E-11*exp( 440./t) (444) - NTERPO2_CH3O2 (322) NTERPO2 + CH3O2 -> 0.5*TERPNIT + 0.75*CH2O + 0.25*CH3OH + 0.5*HO2 rate = 2.00E-12*exp( 500./t) (445) + MTERP_OH (322) MTERP + OH -> TERPO2 rate = 1.20E-11*exp( 440./t) (445) + NTERPO2_CH3O2 (323) NTERPO2 + CH3O2 -> 0.5*TERPNIT + 0.75*CH2O + 0.25*CH3OH + 0.5*HO2 rate = 2.00E-12*exp( 500./t) (446) + 0.5*TERPROD1 + 0.5*NO2 - NTERPO2_HO2 (323) NTERPO2 + HO2 -> NTERPOOH rate = 7.50E-13*exp( 700./t) (446) - NTERPO2_NO (324) NTERPO2 + NO -> 0.2*TERPNIT + 1.6*NO2 + 0.8*TERPROD1 + 0.2*NDEP rate = 4.20E-12*exp( 180./t) (447) - NTERPO2_NO3 (325) NTERPO2 + NO3 -> 2*NO2 + TERPROD1 rate = 2.40E-12 (448) - NTERPOOH_OH (326) NTERPOOH + OH -> NTERPO2 rate = 2.00E-11 (449) - TERP2O2_CH3O2 (327) TERP2O2 + CH3O2 -> TERPROD2 + 0.93*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (450) + NTERPO2_HO2 (324) NTERPO2 + HO2 -> NTERPOOH rate = 7.50E-13*exp( 700./t) (447) + NTERPO2_NO (325) NTERPO2 + NO -> 0.2*TERPNIT + 1.6*NO2 + 0.8*TERPROD1 + 0.2*NDEP rate = 4.20E-12*exp( 180./t) (448) + NTERPO2_NO3 (326) NTERPO2 + NO3 -> 2*NO2 + TERPROD1 rate = 2.40E-12 (449) + NTERPOOH_OH (327) NTERPOOH + OH -> NTERPO2 rate = 2.00E-11 (450) + TERP2O2_CH3O2 (328) TERP2O2 + CH3O2 -> TERPROD2 + 0.93*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (451) + 0.5*CO2 + 0.125*CO + 0.125*GLYALD + 0.15*CH3COCH3 - TERP2O2_HO2 (328) TERP2O2 + HO2 -> TERP2OOH rate = 7.50E-13*exp( 700./t) (451) - TERP2O2_NO (329) TERP2O2 + NO -> 0.1*ONITR + 0.9*NO2 + 0.34*CH2O + 0.27*CH3COCH3 rate = 4.20E-12*exp( 180./t) (452) + TERP2O2_HO2 (329) TERP2O2 + HO2 -> TERP2OOH rate = 7.50E-13*exp( 700./t) (452) + TERP2O2_NO (330) TERP2O2 + NO -> 0.1*ONITR + 0.9*NO2 + 0.34*CH2O + 0.27*CH3COCH3 rate = 4.20E-12*exp( 180./t) (453) + 0.225*CO + 0.9*CO2 + 0.9*TERPROD2 + 0.9*HO2 + 0.225*GLYALD - TERP2OOH_OH (330) TERP2OOH + OH -> TERP2O2 rate = 2.30E-11 (453) - TERPNIT_OH (331) TERPNIT + OH -> NO2 + TERPROD1 rate = 2.00E-11 (454) - TERPO2_CH3O2 (332) TERPO2 + CH3O2 -> TERPROD1 + 0.95*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (455) + TERP2OOH_OH (331) TERP2OOH + OH -> TERP2O2 rate = 2.30E-11 (454) + TERPNIT_OH (332) TERPNIT + OH -> NO2 + TERPROD1 rate = 2.00E-11 (455) + TERPO2_CH3O2 (333) TERPO2 + CH3O2 -> TERPROD1 + 0.95*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (456) + 0.025*CH3COCH3 - TERPO2_HO2 (333) TERPO2 + HO2 -> TERPOOH rate = 7.50E-13*exp( 700./t) (456) - TERPO2_NO (334) TERPO2 + NO -> 0.2*TERPNIT + 0.8*NO2 + 0.32*CH2O + 0.04*CH3COCH3 rate = 4.20E-12*exp( 180./t) (457) + TERPO2_HO2 (334) TERPO2 + HO2 -> TERPOOH rate = 7.50E-13*exp( 700./t) (457) + TERPO2_NO (335) TERPO2 + NO -> 0.2*TERPNIT + 0.8*NO2 + 0.32*CH2O + 0.04*CH3COCH3 rate = 4.20E-12*exp( 180./t) (458) + 0.8*TERPROD1 + 0.8*HO2 - TERPOOH_OH (335) TERPOOH + OH -> TERPO2 rate = 3.30E-11 (458) - TERPROD1_NO3 (336) TERPROD1 + NO3 -> 0.5*TERP2O2 + 0.5*NTERPO2 + 0.5*NDEP rate = 1.00E-12 (459) - TERPROD1_OH (337) TERPROD1 + OH -> TERP2O2 rate = 5.70E-11 (460) - TERPROD2_OH (338) TERPROD2 + OH -> 0.15*RO2 + 0.68*CH2O + 1.8*CO2 + 0.5*CH3COCH3 rate = 3.40E-11 (461) + TERPOOH_OH (336) TERPOOH + OH -> TERPO2 rate = 3.30E-11 (459) + TERPROD1_NO3 (337) TERPROD1 + NO3 -> 0.5*TERP2O2 + 0.5*NTERPO2 + 0.5*NDEP rate = 1.00E-12 (460) + TERPROD1_OH (338) TERPROD1 + OH -> TERP2O2 rate = 5.70E-11 (461) + TERPROD2_OH (339) TERPROD2 + OH -> 0.15*RO2 + 0.68*CH2O + 1.8*CO2 + 0.5*CH3COCH3 rate = 3.40E-11 (462) + 0.65*CH3CO3 + 0.2*HO2 + 0.7*CO - DMS_NO3 (339) DMS + NO3 -> SO2 + HNO3 rate = 1.90E-13*exp( 520./t) (462) - DMS_OHa (340) DMS + OH -> SO2 rate = 1.10E-11*exp( -280./t) (463) - OCS_O (341) OCS + O -> SO + CO rate = 2.10E-11*exp( -2200./t) (464) - OCS_OH (342) OCS + OH -> SO2 + CO + H rate = 7.20E-14*exp( -1070./t) (465) - S_O2 (343) S + O2 -> SO + O rate = 2.30E-12 (466) - SO2_OH_M (344) SO2 + OH + M -> SO3 + HO2 troe : ko=2.90E-31*(300/t)**4.10 (467) + DMS_NO3 (340) DMS + NO3 -> SO2 + HNO3 rate = 1.90E-13*exp( 520./t) (463) + DMS_OHa (341) DMS + OH -> SO2 rate = 1.10E-11*exp( -280./t) (464) + OCS_O (342) OCS + O -> SO + CO rate = 2.10E-11*exp( -2200./t) (465) + OCS_OH (343) OCS + OH -> SO2 + CO + H rate = 7.20E-14*exp( -1070./t) (466) + S_O2 (344) S + O2 -> SO + O rate = 2.30E-12 (467) + SO2_OH_M (345) SO2 + OH + M -> SO3 + HO2 troe : ko=2.90E-31*(300/t)**4.10 (468) ki=1.70E-12*(300/t)**-0.20 f=0.60 - S_O3 (345) S + O3 -> SO + O2 rate = 1.20E-11 (468) - SO_BRO (346) SO + BRO -> SO2 + BR rate = 5.70E-11 (469) - SO_CLO (347) SO + CLO -> SO2 + CL rate = 2.80E-11 (470) - S_OH (348) S + OH -> SO + H rate = 6.60E-11 (471) - SO_NO2 (349) SO + NO2 -> SO2 + NO rate = 1.40E-11 (472) - SO_O2 (350) SO + O2 -> SO2 + O rate = 1.60E-13*exp( -2280./t) (473) - SO_O3 (351) SO + O3 -> SO2 + O2 rate = 3.40E-12*exp( -1100./t) (474) - SO_OCLO (352) SO + OCLO -> SO2 + CLO rate = 1.90E-12 (475) - SO_OH (353) SO + OH -> SO2 + H rate = 2.60E-11*exp( 330./t) (476) - usr_DMS_OH (354) DMS + OH -> 0.5*SO2 + 0.5*HO2 rate = ** User defined ** (477) - usr_SO3_H2O (355) SO3 + H2O -> H2SO4 rate = ** User defined ** (478) - NH3_OH (356) NH3 + OH -> H2O + NHDEP rate = 1.70E-12*exp( -710./t) (479) - usr_GLYOXAL_aer (357) GLYOXAL -> SOAG0 rate = ** User defined ** (480) + S_O3 (346) S + O3 -> SO + O2 rate = 1.20E-11 (469) + SO_BRO (347) SO + BRO -> SO2 + BR rate = 5.70E-11 (470) + SO_CLO (348) SO + CLO -> SO2 + CL rate = 2.80E-11 (471) + S_OH (349) S + OH -> SO + H rate = 6.60E-11 (472) + SO_NO2 (350) SO + NO2 -> SO2 + NO rate = 1.40E-11 (473) + SO_O2 (351) SO + O2 -> SO2 + O rate = 1.60E-13*exp( -2280./t) (474) + SO_O3 (352) SO + O3 -> SO2 + O2 rate = 3.40E-12*exp( -1100./t) (475) + SO_OCLO (353) SO + OCLO -> SO2 + CLO rate = 1.90E-12 (476) + SO_OH (354) SO + OH -> SO2 + H rate = 2.60E-11*exp( 330./t) (477) + usr_DMS_OH (355) DMS + OH -> 0.5*SO2 + 0.5*HO2 rate = ** User defined ** (478) + usr_SO3_H2O (356) SO3 + H2O -> H2SO4 rate = ** User defined ** (479) + NH3_OH (357) NH3 + OH -> H2O + NHDEP rate = 1.70E-12*exp( -710./t) (480) usr_HO2_aer (358) HO2 -> H2O rate = ** User defined ** (481) usr_HONITR_aer (359) HONITR -> HNO3 rate = ** User defined ** (482) usr_ISOPNITA_aer (360) ISOPNITA -> HNO3 rate = ** User defined ** (483) @@ -1130,395 +1128,392 @@ Class List + 0.2157*SOAG3 + 0.0738*SOAG4 TOLUO2_NO_vbs (395) TOLUO2VBS + NO -> NO + 0.0154*SOAG0 + 0.0452*SOAG1 + 0.0966*SOAG2 rate = 2.60E-12*exp( 365./t) (518) + 0.0073*SOAG3 + 0.238*SOAG4 - XYLENES_OH_vbs (396) XYLENES + OH -> XYLENES + OH + XYLEO2VBS rate = 1.70E-11 (519) - XYLEO2_HO2_vbs (397) XYLEO2VBS + HO2 -> HO2 + 0.1677*SOAG0 + 0.0174*SOAG1 + 0.086*SOAG2 rate = 7.50E-13*exp( 700./t) (520) + usr_GLYOXAL_aer (396) GLYOXAL -> SOAG0 rate = ** User defined ** (519) + XYLENES_OH_vbs (397) XYLENES + OH -> XYLENES + OH + XYLEO2VBS rate = 1.70E-11 (520) + XYLEO2_HO2_vbs (398) XYLEO2VBS + HO2 -> HO2 + 0.1677*SOAG0 + 0.0174*SOAG1 + 0.086*SOAG2 rate = 7.50E-13*exp( 700./t) (521) + 0.0512*SOAG3 + 0.1598*SOAG4 - XYLEO2_NO_vbs (398) XYLEO2VBS + NO -> NO + 0.0063*SOAG0 + 0.0237*SOAG1 + 0.0025*SOAG2 rate = 2.60E-12*exp( 365./t) (521) + XYLEO2_NO_vbs (399) XYLEO2VBS + NO -> NO + 0.0063*SOAG0 + 0.0237*SOAG1 + 0.0025*SOAG2 rate = 2.60E-12*exp( 365./t) (522) + 0.011*SOAG3 + 0.1185*SOAG4 - het1 (399) N2O5 -> 2*HNO3 rate = ** User defined ** (522) - het10 (400) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (523) - het11 (401) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (524) - het12 (402) N2O5 -> 2*HNO3 rate = ** User defined ** (525) - het13 (403) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (526) - het14 (404) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (527) - het15 (405) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (528) - het16 (406) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (529) - het17 (407) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (530) - het2 (408) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (531) - het3 (409) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (532) - het4 (410) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (533) - het5 (411) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (534) - het6 (412) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (535) - het7 (413) N2O5 -> 2*HNO3 rate = ** User defined ** (536) - het8 (414) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (537) - het9 (415) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (538) - NH_50_tau (416) NH_50 -> (No products) rate = 2.31E-07 (539) - NH_5_tau (417) NH_5 -> (No products) rate = 2.31E-06 (540) - ST80_25_tau (418) ST80_25 -> (No products) rate = 4.63E-07 (541) + het1 (400) N2O5 -> 2*HNO3 rate = ** User defined ** (523) + het10 (401) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (524) + het11 (402) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (525) + het12 (403) N2O5 -> 2*HNO3 rate = ** User defined ** (526) + het13 (404) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (527) + het14 (405) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (528) + het15 (406) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (529) + het16 (407) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (530) + het17 (408) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (531) + het2 (409) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (532) + het3 (410) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (533) + het4 (411) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (534) + het5 (412) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (535) + het6 (413) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (536) + het7 (414) N2O5 -> 2*HNO3 rate = ** User defined ** (537) + het8 (415) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (538) + het9 (416) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (539) + NH_50_tau (417) NH_50 -> (No products) rate = 2.31E-07 (540) + NH_5_tau (418) NH_5 -> (No products) rate = 2.31E-06 (541) + ST80_25_tau (419) ST80_25 -> (No products) rate = 4.63E-07 (542) Extraneous prod/loss species - ( 1) num_a1 (dataset) - ( 2) num_a2 (dataset) - ( 3) so4_a1 (dataset) - ( 4) so4_a2 (dataset) - ( 5) so4_a5 (dataset) - ( 6) num_a4 (dataset) - ( 7) num_a5 (dataset) - ( 8) SO2 (dataset) - ( 9) NO2 (dataset) - (10) pom_a4 (dataset) - (11) bc_a4 (dataset) - (12) CO (dataset) - (13) SVOC (dataset) - (14) AOA_NH - (15) NO - (16) N + ( 1) num_a4 (dataset) + ( 2) pom_a4 (dataset) + ( 3) bc_a4 (dataset) + ( 4) SVOC (dataset) + ( 5) SO2 (dataset) + ( 6) NO2 (dataset) + ( 7) CO (dataset) + ( 8) num_a1 (dataset) + ( 9) num_a2 (dataset) + (10) so4_a1 (dataset) + (11) so4_a2 (dataset) + (12) H2O (dataset) + (13) NO Equation Report - d(ALKNIT)/dt = r236*ALKO2*NO - - j19*ALKNIT - r233*OH*ALKNIT - d(ALKOOH)/dt = r234*ALKO2*HO2 - - j20*ALKOOH - r237*OH*ALKOOH - d(AOA_NH)/dt = 0 + d(ALKNIT)/dt = r237*ALKO2*NO + - j19*ALKNIT - r234*OH*ALKNIT + d(ALKOOH)/dt = r235*ALKO2*HO2 + - j20*ALKOOH - r238*OH*ALKOOH d(bc_a1)/dt = 0 d(bc_a4)/dt = 0 - d(BCARY)/dt = - r316*NO3*BCARY - r317*O3*BCARY - r318*OH*BCARY - d(BENZENE)/dt = - r275*OH*BENZENE - d(BENZOOH)/dt = r276*BENZO2*HO2 - - j21*BENZOOH - r278*OH*BENZOOH - d(BEPOMUC)/dt = .12*r275*BENZENE*OH + d(BCARY)/dt = - r317*NO3*BCARY - r318*O3*BCARY - r319*OH*BCARY + d(BENZENE)/dt = - r276*OH*BENZENE + d(BENZOOH)/dt = r277*BENZO2*HO2 + - j21*BENZOOH - r279*OH*BENZOOH + d(BEPOMUC)/dt = .12*r276*BENZENE*OH - j22*BEPOMUC - d(BIGALD)/dt = .1*r317*BCARY*O3 + .1*r320*MTERP*O3 + d(BIGALD)/dt = .1*r318*BCARY*O3 + .1*r321*MTERP*O3 - j23*BIGALD - d(BIGALD1)/dt = .5*j21*BENZOOH + j22*BEPOMUC + .2*j70*TOLOOH + .06*j72*XYLENOOH + .5*r277*BENZO2*NO - + .2*r304*TOLO2*NO + .06*r310*XYLENO2*NO + d(BIGALD1)/dt = .5*j21*BENZOOH + j22*BEPOMUC + .2*j70*TOLOOH + .06*j72*XYLENOOH + .5*r278*BENZO2*NO + + .2*r305*TOLO2*NO + .06*r311*XYLENO2*NO - j24*BIGALD1 - d(BIGALD2)/dt = .2*j70*TOLOOH + .2*j72*XYLENOOH + .2*r304*TOLO2*NO + .2*r310*XYLENO2*NO + d(BIGALD2)/dt = .2*j70*TOLOOH + .2*j72*XYLENOOH + .2*r305*TOLO2*NO + .2*r311*XYLENO2*NO - j25*BIGALD2 - d(BIGALD3)/dt = j46*HPALD + j56*NC4CHO + .2*j70*TOLOOH + .15*j72*XYLENOOH + .2*r304*TOLO2*NO - + .15*r310*XYLENO2*NO + d(BIGALD3)/dt = j46*HPALD + j56*NC4CHO + .2*j70*TOLOOH + .15*j72*XYLENOOH + .2*r305*TOLO2*NO + + .15*r311*XYLENO2*NO - j26*BIGALD3 - d(BIGALD4)/dt = .21*j72*XYLENOOH + .21*r310*XYLENO2*NO + d(BIGALD4)/dt = .21*j72*XYLENOOH + .21*r311*XYLENO2*NO - j27*BIGALD4 - d(BIGALK)/dt = .05*r317*BCARY*O3 + .05*r320*MTERP*O3 - - r238*OH*BIGALK - d(BIGENE)/dt = - r204*NO3*BIGENE - r205*OH*BIGENE + d(BIGALK)/dt = .05*r318*BCARY*O3 + .05*r321*MTERP*O3 + - r239*OH*BIGALK + d(BIGENE)/dt = - r205*NO3*BIGENE - r206*OH*BIGENE d(BR)/dt = j74*BRCL + j75*BRO + j77*BRONO2 + j79*CF2CLBR + j80*CF3BR + 2*j86*CH2BR2 + j87*CH3BR - + 3*j90*CHBR3 + 2*j98*H2402 + j99*HBR + j105*HOBR + r78*O1D*CF2CLBR + 2*r91*BRO*BRO - + r92*BRO*CLO + r93*BRO*CLO + r96*BRO*NO + r99*BRO*O + r100*BRO*OH + r101*HBR*O + r102*HBR*OH - + r104*O1D*CF3BR + 3*r105*O1D*CHBR3 + 2*r106*O1D*H2402 + r107*O1D*HBR + 2*r115*CH2BR2*CL - + 2*r116*CH2BR2*OH + r117*CH3BR*CL + r118*CH3BR*OH + 3*r122*CHBR3*CL + 3*r123*CHBR3*OH - + 2*r127*O1D*CH2BR2 + r128*O1D*CH3BR + r346*SO*BRO - - r88*CH2O*BR - r89*HO2*BR - r90*O3*BR - d(BRCL)/dt = r94*BRO*CLO + r407*HOBR*HCL + r412*HOBR*HCL + + 3*j90*CHBR3 + 2*j98*H2402 + j99*HBR + j105*HOBR + r79*O1D*CF2CLBR + 2*r92*BRO*BRO + + r93*BRO*CLO + r94*BRO*CLO + r97*BRO*NO + r100*BRO*O + r101*BRO*OH + r102*HBR*O + r103*HBR*OH + + r105*O1D*CF3BR + 3*r106*O1D*CHBR3 + 2*r107*O1D*H2402 + r108*O1D*HBR + 2*r116*CH2BR2*CL + + 2*r117*CH2BR2*OH + r118*CH3BR*CL + r119*CH3BR*OH + 3*r123*CHBR3*CL + 3*r124*CHBR3*OH + + 2*r128*O1D*CH2BR2 + r129*O1D*CH3BR + r347*SO*BRO + - r89*CH2O*BR - r90*HO2*BR - r91*O3*BR + d(BRCL)/dt = r95*BRO*CLO + r408*HOBR*HCL + r413*HOBR*HCL - j74*BRCL - d(BRO)/dt = j76*BRONO2 + r90*BR*O3 + r98*BRONO2*O + r103*HOBR*O + r108*O1D*HBR - - j75*BRO - 2*r91*BRO*BRO - r92*CLO*BRO - r93*CLO*BRO - r94*CLO*BRO - r95*HO2*BRO - r96*NO*BRO - - r97*M*NO2*BRO - r99*O*BRO - r100*OH*BRO - r346*SO*BRO - d(BRONO2)/dt = r97*M*BRO*NO2 - - j76*BRONO2 - j77*BRONO2 - r401*BRONO2 - r404*BRONO2 - r409*BRONO2 - r98*O*BRONO2 + d(BRO)/dt = j76*BRONO2 + r91*BR*O3 + r99*BRONO2*O + r104*HOBR*O + r109*O1D*HBR + - j75*BRO - 2*r92*BRO*BRO - r93*CLO*BRO - r94*CLO*BRO - r95*CLO*BRO - r96*HO2*BRO - r97*NO*BRO + - r98*M*NO2*BRO - r100*O*BRO - r101*OH*BRO - r347*SO*BRO + d(BRONO2)/dt = r98*M*BRO*NO2 + - j76*BRONO2 - j77*BRONO2 - r402*BRONO2 - r405*BRONO2 - r410*BRONO2 - r99*O*BRONO2 d(BRY)/dt = 0 - d(BZALD)/dt = j28*BZOOH + r282*BZOO*NO - - r279*OH*BZALD - d(BZOOH)/dt = r280*BZOO*HO2 - - j28*BZOOH - r281*OH*BZOOH - d(C2H2)/dt = - r153*M*CL*C2H2 - r154*M*OH*C2H2 - d(C2H4)/dt = - r155*M*CL*C2H4 - r156*O3*C2H4 - r181*M*OH*C2H4 - d(C2H5OH)/dt = .4*r157*C2H5O2*C2H5O2 + .2*r158*C2H5O2*CH3O2 - - r161*OH*C2H5OH - d(C2H5OOH)/dt = r159*C2H5O2*HO2 - - j29*C2H5OOH - r162*OH*C2H5OOH - d(C2H6)/dt = - r163*CL*C2H6 - r164*OH*C2H6 - d(C3H6)/dt = .7*j55*MVK + .13*r262*ISOP*O3 - - r184*NO3*C3H6 - r185*O3*C3H6 - r202*M*OH*C3H6 - d(C3H7OOH)/dt = r187*C3H7O2*HO2 - - j30*C3H7OOH - r189*OH*C3H7OOH - d(C3H8)/dt = - r190*OH*C3H8 - d(C6H5OOH)/dt = r283*C6H5O2*HO2 - - j31*C6H5OOH - r285*OH*C6H5OOH - d(CCL4)/dt = - j78*CCL4 - r77*O1D*CCL4 - d(CF2CLBR)/dt = - j79*CF2CLBR - r78*O1D*CF2CLBR - d(CF3BR)/dt = - j80*CF3BR - r104*O1D*CF3BR - d(CFC11)/dt = - j81*CFC11 - r79*O1D*CFC11 - d(CFC113)/dt = - j82*CFC113 - r80*O1D*CFC113 - d(CFC114)/dt = - j83*CFC114 - r81*O1D*CFC114 - d(CFC115)/dt = - j84*CFC115 - r82*O1D*CFC115 - d(CFC12)/dt = - j85*CFC12 - r83*O1D*CFC12 - d(CH2BR2)/dt = - j86*CH2BR2 - r115*CL*CH2BR2 - r116*OH*CH2BR2 - r127*O1D*CH2BR2 + d(BZALD)/dt = j28*BZOOH + r283*BZOO*NO + - r280*OH*BZALD + d(BZOOH)/dt = r281*BZOO*HO2 + - j28*BZOOH - r282*OH*BZOOH + d(C2H2)/dt = - r154*M*CL*C2H2 - r155*M*OH*C2H2 + d(C2H4)/dt = - r156*M*CL*C2H4 - r157*O3*C2H4 - r182*M*OH*C2H4 + d(C2H5OH)/dt = .4*r158*C2H5O2*C2H5O2 + .2*r159*C2H5O2*CH3O2 + - r162*OH*C2H5OH + d(C2H5OOH)/dt = r160*C2H5O2*HO2 + - j29*C2H5OOH - r163*OH*C2H5OOH + d(C2H6)/dt = - r164*CL*C2H6 - r165*OH*C2H6 + d(C3H6)/dt = .7*j55*MVK + .13*r263*ISOP*O3 + - r185*NO3*C3H6 - r186*O3*C3H6 - r203*M*OH*C3H6 + d(C3H7OOH)/dt = r188*C3H7O2*HO2 + - j30*C3H7OOH - r190*OH*C3H7OOH + d(C3H8)/dt = - r191*OH*C3H8 + d(C6H5OOH)/dt = r284*C6H5O2*HO2 + - j31*C6H5OOH - r286*OH*C6H5OOH + d(CCL4)/dt = - j78*CCL4 - r78*O1D*CCL4 + d(CF2CLBR)/dt = - j79*CF2CLBR - r79*O1D*CF2CLBR + d(CF3BR)/dt = - j80*CF3BR - r105*O1D*CF3BR + d(CFC11)/dt = - j81*CFC11 - r80*O1D*CFC11 + d(CFC113)/dt = - j82*CFC113 - r81*O1D*CFC113 + d(CFC114)/dt = - j83*CFC114 - r82*O1D*CFC114 + d(CFC115)/dt = - j84*CFC115 - r83*O1D*CFC115 + d(CFC12)/dt = - j85*CFC12 - r84*O1D*CFC12 + d(CH2BR2)/dt = - j86*CH2BR2 - r116*CL*CH2BR2 - r117*OH*CH2BR2 - r128*O1D*CH2BR2 d(CH2O)/dt = .1*j19*ALKNIT + .1*j20*ALKOOH + j38*CH3OOH + .18*j39*CH4 + j43*GLYALD + .33*j45*HONITR + j47*HYAC + j49*ISOPOOH + 1.34*j50*MACR + j57*NOA + j62*POOH + j63*ROOH + .375*j65*TERP2OOH - + .4*j67*TERPOOH + .68*j69*TERPROD2 + r146*HOCH2OO + 2*r176*EO + r59*CLO*CH3O2 - + 2*r136*CH3O2*CH3O2 + r137*CH3O2*CH3O2 + r139*CH3O2*NO + r140*CH3OH*OH + .3*r141*CH3OOH*OH - + r149*O1D*CH4 + r150*O1D*CH4 + r156*C2H4*O3 + .7*r158*C2H5O2*CH3O2 + r169*CH3CO3*CH3O2 - + .5*r173*CH3COOOH*OH + .5*r175*EO2*NO + .8*r178*GLYALD*OH + r180*PAN*OH + .5*r185*C3H6*O3 - + r186*C3H7O2*CH3O2 + r196*PO2*NO + .8*r198*RO2*CH3O2 + .15*r199*RO2*HO2 + r200*RO2*NO - + .5*r204*BIGENE*NO3 + .5*r206*ENEO2*NO + .25*r209*MACRO2*CH3CO3 + .88*r210*MACRO2*CH3O2 - + .25*r212*MACRO2*NO3 + .25*r213*MACRO2*NO + .12*r215*MACR*O3 + r218*MCO3*CH3CO3 - + 2*r219*MCO3*CH3O2 + .45*r220*MCO3*HO2 + 2*r221*MCO3*MCO3 + r222*MCO3*NO + r223*MCO3*NO3 - + .5*r228*M*MPAN*OH + .6*r229*MVK*O3 + .4*r233*ALKNIT*OH + .1*r235*ALKO2*NO - + r242*ISOPAO2*CH3CO3 + 1.5*r243*ISOPAO2*CH3O2 + .92*r245*ISOPAO2*NO + r246*ISOPAO2*NO3 - + .75*r248*ISOPBO2*CH3O2 + .3*r253*ISOPNITA*OH + .8*r257*ISOPNO3*CH3O2 + .91*r262*ISOP*O3 - + .25*r267*XO2*CH3CO3 + .8*r268*XO2*CH3O2 + .25*r270*XO2*NO + .34*r317*BCARY*O3 - + .34*r320*MTERP*O3 + .75*r322*NTERPO2*CH3O2 + .93*r327*TERP2O2*CH3O2 + .34*r329*TERP2O2*NO - + .95*r332*TERPO2*CH3O2 + .32*r334*TERPO2*NO + .68*r338*TERPROD2*OH - - j32*CH2O - j33*CH2O - r52*CL*CH2O - r88*BR*CH2O - r132*HO2*CH2O - r133*NO3*CH2O - - r134*O*CH2O - r135*OH*CH2O - d(CH3BR)/dt = - j87*CH3BR - r117*CL*CH3BR - r118*OH*CH3BR - r128*O1D*CH3BR - d(CH3CCL3)/dt = - j88*CH3CCL3 - r119*OH*CH3CCL3 + + .4*j67*TERPOOH + .68*j69*TERPROD2 + r147*HOCH2OO + 2*r177*EO + r60*CLO*CH3O2 + + 2*r137*CH3O2*CH3O2 + r138*CH3O2*CH3O2 + r140*CH3O2*NO + r141*CH3OH*OH + .3*r142*CH3OOH*OH + + r150*O1D*CH4 + r151*O1D*CH4 + r157*C2H4*O3 + .7*r159*C2H5O2*CH3O2 + r170*CH3CO3*CH3O2 + + .5*r174*CH3COOOH*OH + .5*r176*EO2*NO + .8*r179*GLYALD*OH + r181*PAN*OH + .5*r186*C3H6*O3 + + r187*C3H7O2*CH3O2 + r197*PO2*NO + .8*r199*RO2*CH3O2 + .15*r200*RO2*HO2 + r201*RO2*NO + + .5*r205*BIGENE*NO3 + .5*r207*ENEO2*NO + .25*r210*MACRO2*CH3CO3 + .88*r211*MACRO2*CH3O2 + + .25*r213*MACRO2*NO3 + .25*r214*MACRO2*NO + .12*r216*MACR*O3 + r219*MCO3*CH3CO3 + + 2*r220*MCO3*CH3O2 + .45*r221*MCO3*HO2 + 2*r222*MCO3*MCO3 + r223*MCO3*NO + r224*MCO3*NO3 + + .5*r229*M*MPAN*OH + .6*r230*MVK*O3 + .4*r234*ALKNIT*OH + .1*r236*ALKO2*NO + + r243*ISOPAO2*CH3CO3 + 1.5*r244*ISOPAO2*CH3O2 + .92*r246*ISOPAO2*NO + r247*ISOPAO2*NO3 + + .75*r249*ISOPBO2*CH3O2 + .3*r254*ISOPNITA*OH + .8*r258*ISOPNO3*CH3O2 + .91*r263*ISOP*O3 + + .25*r268*XO2*CH3CO3 + .8*r269*XO2*CH3O2 + .25*r271*XO2*NO + .34*r318*BCARY*O3 + + .34*r321*MTERP*O3 + .75*r323*NTERPO2*CH3O2 + .93*r328*TERP2O2*CH3O2 + .34*r330*TERP2O2*NO + + .95*r333*TERPO2*CH3O2 + .32*r335*TERPO2*NO + .68*r339*TERPROD2*OH + - j32*CH2O - j33*CH2O - r53*CL*CH2O - r89*BR*CH2O - r133*HO2*CH2O - r134*NO3*CH2O + - r135*O*CH2O - r136*OH*CH2O + d(CH3BR)/dt = - j87*CH3BR - r118*CL*CH3BR - r119*OH*CH3BR - r129*O1D*CH3BR + d(CH3CCL3)/dt = - j88*CH3CCL3 - r120*OH*CH3CCL3 d(CH3CHO)/dt = .4*j19*ALKNIT + .4*j20*ALKOOH + j29*C2H5OOH + .33*j45*HONITR + j53*MEKOOH + j62*POOH - + 1.6*r157*C2H5O2*C2H5O2 + .8*r158*C2H5O2*CH3O2 + r160*C2H5O2*NO + r161*C2H5OH*OH - + .5*r162*C2H5OOH*OH + .5*r185*C3H6*O3 + .27*r188*C3H7O2*NO + r196*PO2*NO + r204*BIGENE*NO3 - + r206*ENEO2*NO + .2*r224*MEKO2*HO2 + r225*MEKO2*NO + .1*r229*MVK*O3 + .8*r233*ALKNIT*OH - + .4*r235*ALKO2*NO - - j34*CH3CHO - r165*NO3*CH3CHO - r166*OH*CH3CHO - d(CH3CL)/dt = - j89*CH3CL - r120*CL*CH3CL - r121*OH*CH3CL - d(CH3CN)/dt = - r167*OH*CH3CN + + 1.6*r158*C2H5O2*C2H5O2 + .8*r159*C2H5O2*CH3O2 + r161*C2H5O2*NO + r162*C2H5OH*OH + + .5*r163*C2H5OOH*OH + .5*r186*C3H6*O3 + .27*r189*C3H7O2*NO + r197*PO2*NO + r205*BIGENE*NO3 + + r207*ENEO2*NO + .2*r225*MEKO2*HO2 + r226*MEKO2*NO + .1*r230*MVK*O3 + .8*r234*ALKNIT*OH + + .4*r236*ALKO2*NO + - j34*CH3CHO - r166*NO3*CH3CHO - r167*OH*CH3CHO + d(CH3CL)/dt = - j89*CH3CL - r121*CL*CH3CL - r122*OH*CH3CL + d(CH3CN)/dt = - r168*OH*CH3CN d(CH3COCH3)/dt = .25*j19*ALKNIT + .25*j20*ALKOOH + .82*j30*C3H7OOH + .17*j45*HONITR + .3*j65*TERP2OOH - + .05*j67*TERPOOH + .5*j69*TERPROD2 + .82*r186*C3H7O2*CH3O2 + .82*r188*C3H7O2*NO - + .5*r204*BIGENE*NO3 + .5*r206*ENEO2*NO + .8*r233*ALKNIT*OH + .25*r235*ALKO2*NO - + .52*r317*BCARY*O3 + .52*r320*MTERP*O3 + .15*r327*TERP2O2*CH3O2 + .27*r329*TERP2O2*NO - + .025*r332*TERPO2*CH3O2 + .04*r334*TERPO2*NO + .5*r338*TERPROD2*OH - - j35*CH3COCH3 - r203*OH*CH3COCH3 + + .05*j67*TERPOOH + .5*j69*TERPROD2 + .82*r187*C3H7O2*CH3O2 + .82*r189*C3H7O2*NO + + .5*r205*BIGENE*NO3 + .5*r207*ENEO2*NO + .8*r234*ALKNIT*OH + .25*r236*ALKO2*NO + + .52*r318*BCARY*O3 + .52*r321*MTERP*O3 + .15*r328*TERP2O2*CH3O2 + .27*r330*TERP2O2*NO + + .025*r333*TERPO2*CH3O2 + .04*r335*TERPO2*NO + .5*r339*TERPROD2*OH + - j35*CH3COCH3 - r204*OH*CH3COCH3 d(CH3COCHO)/dt = .18*j23*BIGALD + j27*BIGALD4 + .4*j70*TOLOOH + .54*j72*XYLENOOH + .51*j73*XYLOLOOH - + r193*HYAC*OH + r194*NOA*OH + .5*r198*RO2*CH3O2 + .25*r209*MACRO2*CH3CO3 - + .24*r210*MACRO2*CH3O2 + .25*r212*MACRO2*NO3 + .25*r213*MACRO2*NO + .88*r215*MACR*O3 - + .5*r229*MVK*O3 + .05*r251*ISOPBO2*NO + .05*r252*ISOPBO2*NO3 + .25*r267*XO2*CH3CO3 - + .1*r268*XO2*CH3O2 + .25*r270*XO2*NO + .25*r271*XO2*NO3 + .07*r287*DICARBO2*HO2 - + .17*r288*DICARBO2*NO + .07*r293*MDIALO2*HO2 + .17*r294*MDIALO2*NO + .4*r304*TOLO2*NO - + .54*r310*XYLENO2*NO + .51*r313*XYLOLO2*NO - - j36*CH3COCHO - r191*NO3*CH3COCHO - r192*OH*CH3COCHO - d(CH3COOH)/dt = .1*r169*CH3CO3*CH3O2 + .15*r170*CH3CO3*HO2 + .12*r185*C3H6*O3 + .15*r220*MCO3*HO2 - - r172*OH*CH3COOH - d(CH3COOOH)/dt = .4*r170*CH3CO3*HO2 + .4*r220*MCO3*HO2 - - j37*CH3COOOH - r173*OH*CH3COOOH - d(CH3OH)/dt = r137*CH3O2*CH3O2 + .3*r158*C2H5O2*CH3O2 + .5*r198*RO2*CH3O2 + .25*r210*MACRO2*CH3O2 - + .25*r243*ISOPAO2*CH3O2 + .25*r248*ISOPBO2*CH3O2 + .2*r257*ISOPNO3*CH3O2 + .3*r268*XO2*CH3O2 - + .25*r322*NTERPO2*CH3O2 + .25*r327*TERP2O2*CH3O2 + .25*r332*TERPO2*CH3O2 - - r140*OH*CH3OH - d(CH3OOH)/dt = r138*CH3O2*HO2 - - j38*CH3OOH - r141*OH*CH3OOH - d(CH4)/dt = .1*r185*C3H6*O3 - - j39*CH4 - j40*CH4 - r53*CL*CH4 - r109*F*CH4 - r142*OH*CH4 - r148*O1D*CH4 - r149*O1D*CH4 - - r150*O1D*CH4 - d(CHBR3)/dt = - j90*CHBR3 - r105*O1D*CHBR3 - r122*CL*CHBR3 - r123*OH*CHBR3 + + r194*HYAC*OH + r195*NOA*OH + .5*r199*RO2*CH3O2 + .25*r210*MACRO2*CH3CO3 + + .24*r211*MACRO2*CH3O2 + .25*r213*MACRO2*NO3 + .25*r214*MACRO2*NO + .88*r216*MACR*O3 + + .5*r230*MVK*O3 + .05*r252*ISOPBO2*NO + .05*r253*ISOPBO2*NO3 + .25*r268*XO2*CH3CO3 + + .1*r269*XO2*CH3O2 + .25*r271*XO2*NO + .25*r272*XO2*NO3 + .07*r288*DICARBO2*HO2 + + .17*r289*DICARBO2*NO + .07*r294*MDIALO2*HO2 + .17*r295*MDIALO2*NO + .4*r305*TOLO2*NO + + .54*r311*XYLENO2*NO + .51*r314*XYLOLO2*NO + - j36*CH3COCHO - r192*NO3*CH3COCHO - r193*OH*CH3COCHO + d(CH3COOH)/dt = .1*r170*CH3CO3*CH3O2 + .15*r171*CH3CO3*HO2 + .12*r186*C3H6*O3 + .15*r221*MCO3*HO2 + - r173*OH*CH3COOH + d(CH3COOOH)/dt = .36*r171*CH3CO3*HO2 + .4*r221*MCO3*HO2 + - j37*CH3COOOH - r174*OH*CH3COOOH + d(CH3OH)/dt = r138*CH3O2*CH3O2 + .3*r159*C2H5O2*CH3O2 + .5*r199*RO2*CH3O2 + .25*r211*MACRO2*CH3O2 + + .25*r244*ISOPAO2*CH3O2 + .25*r249*ISOPBO2*CH3O2 + .2*r258*ISOPNO3*CH3O2 + .3*r269*XO2*CH3O2 + + .25*r323*NTERPO2*CH3O2 + .25*r328*TERP2O2*CH3O2 + .25*r333*TERPO2*CH3O2 + - r141*OH*CH3OH + d(CH3OOH)/dt = r139*CH3O2*HO2 + - j38*CH3OOH - r142*OH*CH3OOH + d(CH4)/dt = .1*r186*C3H6*O3 + - j39*CH4 - j40*CH4 - r54*CL*CH4 - r110*F*CH4 - r143*OH*CH4 - r149*O1D*CH4 - r150*O1D*CH4 + - r151*O1D*CH4 + d(CHBR3)/dt = - j90*CHBR3 - r106*O1D*CHBR3 - r123*CL*CHBR3 - r124*OH*CHBR3 d(CL)/dt = j74*BRCL + 4*j78*CCL4 + j79*CF2CLBR + 2*j81*CFC11 + 2*j82*CFC113 + 2*j83*CFC114 + j84*CFC115 + 2*j85*CFC12 + 3*j88*CH3CCL3 + j89*CH3CL + 2*j91*CL2 + 2*j92*CL2O2 + j93*CLO + j94*CLONO2 - + j97*COFCL + j100*HCFC141B + j101*HCFC142B + j102*HCFC22 + j103*HCL + j106*HOCL + r59*CLO*CH3O2 - + 2*r60*CLO*CLO + r62*CLO*CLO + r64*CLO*NO + r69*CLO*O + r70*CLO*OH + r72*HCL*O + r73*HCL*OH - + 4*r77*O1D*CCL4 + r78*O1D*CF2CLBR + 2*r79*O1D*CFC11 + 2*r80*O1D*CFC113 + 2*r81*O1D*CFC114 - + r82*O1D*CFC115 + 2*r83*O1D*CFC12 + r84*O1D*HCL + r93*BRO*CLO + r114*O1D*COFCL - + 3*r119*CH3CCL3*OH + r121*CH3CL*OH + r124*HCFC141B*OH + r125*HCFC142B*OH + r126*HCFC22*OH - + r129*O1D*HCFC141B + r130*O1D*HCFC142B + r131*O1D*HCFC22 + r347*SO*CLO - - r52*CH2O*CL - r53*CH4*CL - r54*H2*CL - r55*H2O2*CL - r56*HO2*CL - r57*HO2*CL - r58*O3*CL - - r65*CLONO2*CL - r74*HOCL*CL - r115*CH2BR2*CL - r117*CH3BR*CL - r120*CH3CL*CL - r122*CHBR3*CL - - r163*C2H6*CL - d(CL2)/dt = r61*CLO*CLO + r65*CLONO2*CL + r400*HOCL*HCL + r405*CLONO2*HCL + r406*HOCL*HCL + r410*CLONO2*HCL - + r411*HOCL*HCL + r415*CLONO2*HCL + + j97*COFCL + j100*HCFC141B + j101*HCFC142B + j102*HCFC22 + j103*HCL + j106*HOCL + r60*CLO*CH3O2 + + 2*r61*CLO*CLO + r63*CLO*CLO + r65*CLO*NO + r70*CLO*O + r71*CLO*OH + r73*HCL*O + r74*HCL*OH + + 4*r78*O1D*CCL4 + r79*O1D*CF2CLBR + 2*r80*O1D*CFC11 + 2*r81*O1D*CFC113 + 2*r82*O1D*CFC114 + + r83*O1D*CFC115 + 2*r84*O1D*CFC12 + r85*O1D*HCL + r94*BRO*CLO + r115*O1D*COFCL + + 3*r120*CH3CCL3*OH + r122*CH3CL*OH + r125*HCFC141B*OH + r126*HCFC142B*OH + r127*HCFC22*OH + + r130*O1D*HCFC141B + r131*O1D*HCFC142B + r132*O1D*HCFC22 + r348*SO*CLO + - r53*CH2O*CL - r54*CH4*CL - r55*H2*CL - r56*H2O2*CL - r57*HO2*CL - r58*HO2*CL - r59*O3*CL + - r66*CLONO2*CL - r75*HOCL*CL - r116*CH2BR2*CL - r118*CH3BR*CL - r121*CH3CL*CL - r123*CHBR3*CL + - r164*C2H6*CL + d(CL2)/dt = r62*CLO*CLO + r66*CLONO2*CL + r401*HOCL*HCL + r406*CLONO2*HCL + r407*HOCL*HCL + r411*CLONO2*HCL + + r412*HOCL*HCL + r416*CLONO2*HCL - j91*CL2 - d(CL2O2)/dt = r86*M*CLO*CLO - - j92*CL2O2 - r87*M*CL2O2 - d(CLO)/dt = j95*CLONO2 + j107*OCLO + r87*M*CL2O2 + r87*M*CL2O2 + r57*CL*HO2 + r58*CL*O3 + r67*CLONO2*O - + r74*HOCL*CL + r75*HOCL*O + r76*HOCL*OH + r85*O1D*HCL + r352*SO*OCLO - - j93*CLO - r59*CH3O2*CLO - 2*r60*CLO*CLO - 2*r61*CLO*CLO - 2*r62*CLO*CLO - r63*HO2*CLO - - r64*NO*CLO - r66*M*NO2*CLO - r69*O*CLO - r70*OH*CLO - r71*OH*CLO - 2*r86*M*CLO*CLO - - r92*BRO*CLO - r93*BRO*CLO - r94*BRO*CLO - r347*SO*CLO - d(CLONO2)/dt = r66*M*CLO*NO2 - - j94*CLONO2 - j95*CLONO2 - r403*CLONO2 - r408*CLONO2 - r414*CLONO2 - r65*CL*CLONO2 - - r67*O*CLONO2 - r68*OH*CLONO2 - r405*HCL*CLONO2 - r410*HCL*CLONO2 - r415*HCL*CLONO2 + d(CL2O2)/dt = r87*M*CLO*CLO + - j92*CL2O2 - r88*M*CL2O2 + d(CLO)/dt = j95*CLONO2 + j107*OCLO + r88*M*CL2O2 + r88*M*CL2O2 + r58*CL*HO2 + r59*CL*O3 + r68*CLONO2*O + + r75*HOCL*CL + r76*HOCL*O + r77*HOCL*OH + r86*O1D*HCL + r353*SO*OCLO + - j93*CLO - r60*CH3O2*CLO - 2*r61*CLO*CLO - 2*r62*CLO*CLO - 2*r63*CLO*CLO - r64*HO2*CLO + - r65*NO*CLO - r67*M*NO2*CLO - r70*O*CLO - r71*OH*CLO - r72*OH*CLO - 2*r87*M*CLO*CLO + - r93*BRO*CLO - r94*BRO*CLO - r95*BRO*CLO - r348*SO*CLO + d(CLONO2)/dt = r67*M*CLO*NO2 + - j94*CLONO2 - j95*CLONO2 - r404*CLONO2 - r409*CLONO2 - r415*CLONO2 - r66*CL*CLONO2 + - r68*O*CLONO2 - r69*OH*CLONO2 - r406*HCL*CLONO2 - r411*HCL*CLONO2 - r416*HCL*CLONO2 d(CLY)/dt = 0 d(CO)/dt = 1.5*j22*BEPOMUC + .45*j23*BIGALD + .6*j26*BIGALD3 + j27*BIGALD4 + j32*CH2O + j33*CH2O + j34*CH3CHO + j36*CH3COCHO + .38*j39*CH4 + j41*CO2 + j43*GLYALD + 2*j44*GLYOXAL + .33*j45*HONITR + 1.34*j51*MACR + .7*j55*MVK + 1.5*j64*TEPOMUC + .25*j65*TERP2OOH + j68*TERPROD1 - + 1.7*j69*TERPROD2 + j110*OCS + r52*CL*CH2O + r88*BR*CH2O + r120*CH3CL*CL + r133*CH2O*NO3 - + r134*CH2O*O + r135*CH2O*OH + .35*r154*M*C2H2*OH + .63*r156*C2H4*O3 + r179*GLYOXAL*OH - + .56*r185*C3H6*O3 + r191*CH3COCHO*NO3 + r192*CH3COCHO*OH + .22*r209*MACRO2*CH3CO3 - + .11*r210*MACRO2*CH3O2 + .22*r212*MACRO2*NO3 + .22*r213*MACRO2*NO + .65*r215*MACR*O3 - + .56*r229*MVK*O3 + .62*r262*ISOP*O3 + .25*r267*XO2*CH3CO3 + .2*r268*XO2*CH3O2 + .25*r270*XO2*NO - + .5*r271*XO2*NO3 + .07*r287*DICARBO2*HO2 + .17*r288*DICARBO2*NO + .16*r290*MALO2*HO2 - + .4*r291*MALO2*NO + .14*r293*MDIALO2*HO2 + .35*r294*MDIALO2*NO + .23*r317*BCARY*O3 - + .23*r320*MTERP*O3 + .125*r327*TERP2O2*CH3O2 + .225*r329*TERP2O2*NO + .7*r338*TERPROD2*OH - + r341*OCS*O + r342*OCS*OH - - r152*OH*CO - d(CO2)/dt = j37*CH3COOOH + .44*j39*CH4 + .4*j60*PAN + j65*TERP2OOH + .8*j69*TERPROD2 + r144*HCOOH*OH - + r152*CO*OH + 2*r168*CH3CO3*CH3CO3 + .9*r169*CH3CO3*CH3O2 + r171*CH3CO3*NO + r172*CH3COOH*OH - + .5*r173*CH3COOOH*OH + .8*r178*GLYALD*OH + r179*GLYOXAL*OH + .2*r185*C3H6*O3 - + 2*r218*MCO3*CH3CO3 + r219*MCO3*CH3O2 + .45*r220*MCO3*HO2 + 2*r221*MCO3*MCO3 + .5*r228*M*MPAN*OH - + .1*r229*MVK*O3 + r242*ISOPAO2*CH3CO3 + r267*XO2*CH3CO3 + .27*r317*BCARY*O3 + .27*r320*MTERP*O3 - + .5*r327*TERP2O2*CH3O2 + .9*r329*TERP2O2*NO + 1.8*r338*TERPROD2*OH + + 1.7*j69*TERPROD2 + j110*OCS + r53*CL*CH2O + r89*BR*CH2O + r121*CH3CL*CL + r134*CH2O*NO3 + + r135*CH2O*O + r136*CH2O*OH + .35*r155*M*C2H2*OH + .63*r157*C2H4*O3 + r180*GLYOXAL*OH + + .56*r186*C3H6*O3 + r192*CH3COCHO*NO3 + r193*CH3COCHO*OH + .22*r210*MACRO2*CH3CO3 + + .11*r211*MACRO2*CH3O2 + .22*r213*MACRO2*NO3 + .22*r214*MACRO2*NO + .65*r216*MACR*O3 + + .56*r230*MVK*O3 + .62*r263*ISOP*O3 + .25*r268*XO2*CH3CO3 + .2*r269*XO2*CH3O2 + .25*r271*XO2*NO + + .5*r272*XO2*NO3 + .07*r288*DICARBO2*HO2 + .17*r289*DICARBO2*NO + .16*r291*MALO2*HO2 + + .4*r292*MALO2*NO + .14*r294*MDIALO2*HO2 + .35*r295*MDIALO2*NO + .23*r318*BCARY*O3 + + .23*r321*MTERP*O3 + .125*r328*TERP2O2*CH3O2 + .225*r330*TERP2O2*NO + .7*r339*TERPROD2*OH + + r342*OCS*O + r343*OCS*OH + - r153*OH*CO + d(CO2)/dt = j37*CH3COOOH + .44*j39*CH4 + .4*j60*PAN + j65*TERP2OOH + .8*j69*TERPROD2 + r145*HCOOH*OH + + r153*CO*OH + 2*r169*CH3CO3*CH3CO3 + .9*r170*CH3CO3*CH3O2 + .49*r171*CH3CO3*HO2 + r172*CH3CO3*NO + + r173*CH3COOH*OH + .5*r174*CH3COOOH*OH + .8*r179*GLYALD*OH + r180*GLYOXAL*OH + .2*r186*C3H6*O3 + + 2*r219*MCO3*CH3CO3 + r220*MCO3*CH3O2 + .45*r221*MCO3*HO2 + 2*r222*MCO3*MCO3 + .5*r229*M*MPAN*OH + + .1*r230*MVK*O3 + r243*ISOPAO2*CH3CO3 + r268*XO2*CH3CO3 + .27*r318*BCARY*O3 + .27*r321*MTERP*O3 + + .5*r328*TERP2O2*CH3O2 + .9*r330*TERP2O2*NO + 1.8*r339*TERPROD2*OH - j41*CO2 d(COF2)/dt = j79*CF2CLBR + j80*CF3BR + j82*CFC113 + 2*j83*CFC114 + 2*j84*CFC115 + j85*CFC12 + 2*j98*H2402 - + j101*HCFC142B + j102*HCFC22 + r78*O1D*CF2CLBR + r80*O1D*CFC113 + 2*r81*O1D*CFC114 - + 2*r82*O1D*CFC115 + r83*O1D*CFC12 + r104*O1D*CF3BR + 2*r106*O1D*H2402 + r125*HCFC142B*OH - + r126*HCFC22*OH + r130*O1D*HCFC142B + r131*O1D*HCFC22 - - j96*COF2 - r113*O1D*COF2 - d(COFCL)/dt = j81*CFC11 + j82*CFC113 + j100*HCFC141B + r79*O1D*CFC11 + r80*O1D*CFC113 + r124*HCFC141B*OH - + r129*O1D*HCFC141B - - j97*COFCL - r114*O1D*COFCL - d(CRESOL)/dt = .18*r306*TOLUENE*OH - - r286*OH*CRESOL - d(DMS)/dt = - r339*NO3*DMS - r340*OH*DMS - r354*OH*DMS + + j101*HCFC142B + j102*HCFC22 + r79*O1D*CF2CLBR + r81*O1D*CFC113 + 2*r82*O1D*CFC114 + + 2*r83*O1D*CFC115 + r84*O1D*CFC12 + r105*O1D*CF3BR + 2*r107*O1D*H2402 + r126*HCFC142B*OH + + r127*HCFC22*OH + r131*O1D*HCFC142B + r132*O1D*HCFC22 + - j96*COF2 - r114*O1D*COF2 + d(COFCL)/dt = j81*CFC11 + j82*CFC113 + j100*HCFC141B + r80*O1D*CFC11 + r81*O1D*CFC113 + r125*HCFC141B*OH + + r130*O1D*HCFC141B + - j97*COFCL - r115*O1D*COFCL + d(CRESOL)/dt = .18*r307*TOLUENE*OH + - r287*OH*CRESOL + d(DMS)/dt = - r340*NO3*DMS - r341*OH*DMS - r355*OH*DMS d(dst_a1)/dt = 0 d(dst_a2)/dt = 0 d(dst_a3)/dt = 0 d(E90)/dt = - r1*E90 - d(EOOH)/dt = r174*EO2*HO2 + d(EOOH)/dt = r175*EO2*HO2 - j42*EOOH - d(F)/dt = j80*CF3BR + j84*CFC115 + 2*j96*COF2 + j97*COFCL + j104*HF + r82*O1D*CFC115 + r104*O1D*CF3BR - + 2*r113*O1D*COF2 + r114*O1D*COFCL - - r109*CH4*F - r110*H2*F - r111*H2O*F - r112*HNO3*F - d(GLYALD)/dt = .33*j45*HONITR + .25*j65*TERP2OOH + r177*O2*EO + .53*r209*MACRO2*CH3CO3 + .26*r210*MACRO2*CH3O2 - + .53*r212*MACRO2*NO3 + .53*r213*MACRO2*NO + .05*r251*ISOPBO2*NO + .05*r252*ISOPBO2*NO3 - + .7*r253*ISOPNITA*OH + .5*r254*ISOPNITB*OH + r265*NC4CH2OH*OH + .25*r267*XO2*CH3CO3 - + .1*r268*XO2*CH3O2 + .25*r270*XO2*NO + .25*r271*XO2*NO3 + .125*r327*TERP2O2*CH3O2 - + .225*r329*TERP2O2*NO - - j43*GLYALD - r178*OH*GLYALD + d(F)/dt = j80*CF3BR + j84*CFC115 + 2*j96*COF2 + j97*COFCL + j104*HF + r83*O1D*CFC115 + r105*O1D*CF3BR + + 2*r114*O1D*COF2 + r115*O1D*COFCL + - r110*CH4*F - r111*H2*F - r112*H2O*F - r113*HNO3*F + d(GLYALD)/dt = .33*j45*HONITR + .25*j65*TERP2OOH + r178*O2*EO + .53*r210*MACRO2*CH3CO3 + .26*r211*MACRO2*CH3O2 + + .53*r213*MACRO2*NO3 + .53*r214*MACRO2*NO + .05*r252*ISOPBO2*NO + .05*r253*ISOPBO2*NO3 + + .7*r254*ISOPNITA*OH + .5*r255*ISOPNITB*OH + r266*NC4CH2OH*OH + .25*r268*XO2*CH3CO3 + + .1*r269*XO2*CH3O2 + .25*r271*XO2*NO + .25*r272*XO2*NO3 + .125*r328*TERP2O2*CH3O2 + + .225*r330*TERP2O2*NO + - j43*GLYALD - r179*OH*GLYALD d(GLYOXAL)/dt = j21*BENZOOH + .13*j23*BIGALD + .7*j61*PHENOOH + .6*j70*TOLOOH + .34*j72*XYLENOOH - + .17*j73*XYLOLOOH + .65*r154*M*C2H2*OH + .2*r178*GLYALD*OH + .05*r251*ISOPBO2*NO - + .05*r252*ISOPBO2*NO3 + r266*NC4CHO*OH + .25*r267*XO2*CH3CO3 + .1*r268*XO2*CH3O2 - + .25*r270*XO2*NO + .25*r271*XO2*NO3 + r277*BENZO2*NO + .16*r290*MALO2*HO2 + .4*r291*MALO2*NO - + .07*r293*MDIALO2*HO2 + .17*r294*MDIALO2*NO + .7*r297*PHENO2*NO + .6*r304*TOLO2*NO - + .34*r310*XYLENO2*NO + .17*r313*XYLOLO2*NO - - j44*GLYOXAL - r357*GLYOXAL - r179*OH*GLYOXAL + + .17*j73*XYLOLOOH + .65*r155*M*C2H2*OH + .2*r179*GLYALD*OH + .05*r252*ISOPBO2*NO + + .05*r253*ISOPBO2*NO3 + r267*NC4CHO*OH + .25*r268*XO2*CH3CO3 + .1*r269*XO2*CH3O2 + + .25*r271*XO2*NO + .25*r272*XO2*NO3 + r278*BENZO2*NO + .16*r291*MALO2*HO2 + .4*r292*MALO2*NO + + .07*r294*MDIALO2*HO2 + .17*r295*MDIALO2*NO + .7*r298*PHENO2*NO + .6*r305*TOLO2*NO + + .34*r311*XYLENO2*NO + .17*r314*XYLOLO2*NO + - j44*GLYOXAL - r396*GLYOXAL - r180*OH*GLYOXAL d(H)/dt = j2*H2O + 2*j3*H2O + 2*j33*CH2O + j38*CH3OOH + .33*j39*CH4 + j40*CH4 + j99*HBR + j103*HCL - + j104*HF + r2*O1D*H2 + r10*H2*O + r19*OH*H2 + r22*OH*O + r40*N*OH + r54*CL*H2 + r85*O1D*HCL - + r108*O1D*HBR + r110*F*H2 + r135*CH2O*OH + r149*O1D*CH4 + r342*OCS*OH + r348*S*OH + r353*SO*OH - - r15*O2*M*H - r12*HO2*H - r13*HO2*H - r14*HO2*H - r18*O3*H - d(H2)/dt = j1*H2O + j32*CH2O + 1.4400001*j39*CH4 + r12*H*HO2 + r150*O1D*CH4 - - r2*O1D*H2 - r10*O*H2 - r19*OH*H2 - r54*CL*H2 - r110*F*H2 - d(H2402)/dt = - j98*H2402 - r106*O1D*H2402 - d(H2O2)/dt = r25*M*OH*OH + r26*HO2*HO2 - - j4*H2O2 - r11*O*H2O2 - r20*OH*H2O2 - r55*CL*H2O2 - d(H2SO4)/dt = r355*SO3*H2O + + j104*HF + r2*O1D*H2 + r11*H2*O + r20*OH*H2 + r23*OH*O + r41*N*OH + r55*CL*H2 + r86*O1D*HCL + + r109*O1D*HBR + r111*F*H2 + r136*CH2O*OH + r150*O1D*CH4 + r343*OCS*OH + r349*S*OH + r354*SO*OH + - r16*O2*M*H - r13*HO2*H - r14*HO2*H - r15*HO2*H - r19*O3*H + d(H2)/dt = j1*H2O + j32*CH2O + 1.4400001*j39*CH4 + r13*H*HO2 + r151*O1D*CH4 + - r2*O1D*H2 - r11*O*H2 - r20*OH*H2 - r55*CL*H2 - r111*F*H2 + d(H2402)/dt = - j98*H2402 - r107*O1D*H2402 + d(H2O2)/dt = r26*M*OH*OH + r27*HO2*HO2 + - j4*H2O2 - r12*O*H2O2 - r21*OH*H2O2 - r56*CL*H2O2 + d(H2SO4)/dt = r356*SO3*H2O - j109*H2SO4 - d(HBR)/dt = r88*BR*CH2O + r89*BR*HO2 - - j99*HBR - r101*O*HBR - r102*OH*HBR - r107*O1D*HBR - r108*O1D*HBR - d(HCFC141B)/dt = - j100*HCFC141B - r124*OH*HCFC141B - r129*O1D*HCFC141B - d(HCFC142B)/dt = - j101*HCFC142B - r125*OH*HCFC142B - r130*O1D*HCFC142B - d(HCFC22)/dt = - j102*HCFC22 - r126*OH*HCFC22 - r131*O1D*HCFC22 - d(HCL)/dt = r52*CL*CH2O + r53*CL*CH4 + r54*CL*H2 + r55*CL*H2O2 + r56*CL*HO2 + r71*CLO*OH + r74*HOCL*CL - + r115*CH2BR2*CL + r117*CH3BR*CL + 2*r120*CH3CL*CL + r122*CHBR3*CL + r163*C2H6*CL - - j103*HCL - r72*O*HCL - r73*OH*HCL - r84*O1D*HCL - r85*O1D*HCL - r400*HOCL*HCL - - r405*CLONO2*HCL - r406*HOCL*HCL - r407*HOBR*HCL - r410*CLONO2*HCL - r411*HOCL*HCL - - r412*HOBR*HCL - r415*CLONO2*HCL - d(HCN)/dt = - r143*M*OH*HCN - r151*O1D*HCN - d(HCOOH)/dt = r145*HOCH2OO*HO2 + r147*HOCH2OO*NO + .35*r154*M*C2H2*OH + .37*r156*C2H4*O3 + .12*r185*C3H6*O3 - + .33*r215*MACR*O3 + .12*r229*MVK*O3 + .11*r262*ISOP*O3 + .05*r317*BCARY*O3 + .05*r320*MTERP*O3 - - r144*OH*HCOOH - d(HF)/dt = r109*F*CH4 + r110*F*H2 + r111*F*H2O + r112*F*HNO3 + d(HBR)/dt = r89*BR*CH2O + r90*BR*HO2 + - j99*HBR - r102*O*HBR - r103*OH*HBR - r108*O1D*HBR - r109*O1D*HBR + d(HCFC141B)/dt = - j100*HCFC141B - r125*OH*HCFC141B - r130*O1D*HCFC141B + d(HCFC142B)/dt = - j101*HCFC142B - r126*OH*HCFC142B - r131*O1D*HCFC142B + d(HCFC22)/dt = - j102*HCFC22 - r127*OH*HCFC22 - r132*O1D*HCFC22 + d(HCL)/dt = r53*CL*CH2O + r54*CL*CH4 + r55*CL*H2 + r56*CL*H2O2 + r57*CL*HO2 + r72*CLO*OH + r75*HOCL*CL + + r116*CH2BR2*CL + r118*CH3BR*CL + 2*r121*CH3CL*CL + r123*CHBR3*CL + r164*C2H6*CL + - j103*HCL - r73*O*HCL - r74*OH*HCL - r85*O1D*HCL - r86*O1D*HCL - r401*HOCL*HCL + - r406*CLONO2*HCL - r407*HOCL*HCL - r408*HOBR*HCL - r411*CLONO2*HCL - r412*HOCL*HCL + - r413*HOBR*HCL - r416*CLONO2*HCL + d(HCN)/dt = - r144*M*OH*HCN - r152*O1D*HCN + d(HCOOH)/dt = r146*HOCH2OO*HO2 + r148*HOCH2OO*NO + .35*r155*M*C2H2*OH + .37*r157*C2H4*O3 + .12*r186*C3H6*O3 + + .33*r216*MACR*O3 + .12*r230*MVK*O3 + .11*r263*ISOP*O3 + .05*r318*BCARY*O3 + .05*r321*MTERP*O3 + - r145*OH*HCOOH + d(HF)/dt = r110*F*CH4 + r111*F*H2 + r112*F*H2O + r113*F*HNO3 - j104*HF d(HNO3)/dt = r359*HONITR + r360*ISOPNITA + r361*ISOPNITB + 2*r362*N2O5 + r363*NC4CH2OH + r364*NC4CHO - + .5*r366*NO2 + r367*NO3 + r368*NTERPOOH + r369*ONITR + r370*TERPNIT + 2*r399*N2O5 - + r401*BRONO2 + 2*r402*N2O5 + r403*CLONO2 + r404*BRONO2 + r408*CLONO2 + r409*BRONO2 - + 2*r413*N2O5 + r414*CLONO2 + r48*M*NO2*OH + r133*CH2O*NO3 + r165*CH3CHO*NO3 - + r191*CH3COCHO*NO3 + r339*DMS*NO3 + r405*CLONO2*HCL + r410*CLONO2*HCL + r415*CLONO2*HCL - - j9*HNO3 - r49*OH*HNO3 - r112*F*HNO3 - d(HO2NO2)/dt = r46*M*NO2*HO2 - - j10*HO2NO2 - j11*HO2NO2 - r50*M*HO2NO2 - r27*OH*HO2NO2 - d(HOBR)/dt = r401*BRONO2 + r404*BRONO2 + r409*BRONO2 + r95*BRO*HO2 - - j105*HOBR - r103*O*HOBR - r407*HCL*HOBR - r412*HCL*HOBR - d(HOCL)/dt = r403*CLONO2 + r408*CLONO2 + r414*CLONO2 + r63*CLO*HO2 + r68*CLONO2*OH - - j106*HOCL - r74*CL*HOCL - r75*O*HOCL - r76*OH*HOCL - r400*HCL*HOCL - r406*HCL*HOCL - - r411*HCL*HOCL - d(HONITR)/dt = r207*ENEO2*NO + r214*MACRO2*NO + .3*r253*ISOPNITA*OH + .5*r254*ISOPNITB*OH - - j45*HONITR - r359*HONITR - r208*OH*HONITR - d(HPALD)/dt = r250*ISOPBO2 - - j46*HPALD - r239*OH*HPALD - d(HYAC)/dt = .17*j45*HONITR + .5*r197*POOH*OH + .2*r198*RO2*CH3O2 + .22*r209*MACRO2*CH3CO3 - + .23*r210*MACRO2*CH3O2 + .22*r212*MACRO2*NO3 + .22*r213*MACRO2*NO + .5*r228*M*MPAN*OH - + .05*r251*ISOPBO2*NO + .05*r252*ISOPBO2*NO3 + .7*r253*ISOPNITA*OH + .5*r254*ISOPNITB*OH - + .25*r267*XO2*CH3CO3 + .1*r268*XO2*CH3O2 + .25*r270*XO2*NO + .25*r271*XO2*NO3 - - j47*HYAC - r193*OH*HYAC - d(HYDRALD)/dt = r247*ISOPBO2*CH3CO3 + .75*r248*ISOPBO2*CH3O2 + .87*r251*ISOPBO2*NO + .95*r252*ISOPBO2*NO3 - - r240*OH*HYDRALD - d(IEPOX)/dt = .6*r264*ISOPOOH*OH - - r241*OH*IEPOX - d(ISOP)/dt = - r255*NO3*ISOP - r262*O3*ISOP - r263*OH*ISOP - d(ISOPNITA)/dt = .08*r245*ISOPAO2*NO - - r360*ISOPNITA - r253*OH*ISOPNITA - d(ISOPNITB)/dt = .08*r251*ISOPBO2*NO - - r361*ISOPNITB - r254*OH*ISOPNITB - d(ISOPNO3)/dt = r255*ISOP*NO3 - - r256*CH3CO3*ISOPNO3 - r257*CH3O2*ISOPNO3 - r258*HO2*ISOPNO3 - r259*NO*ISOPNO3 - - r260*NO3*ISOPNO3 - d(ISOPNOOH)/dt = r258*ISOPNO3*HO2 - - j48*ISOPNOOH - r261*OH*ISOPNOOH - d(ISOPOOH)/dt = j48*ISOPNOOH + r244*ISOPAO2*HO2 + r249*ISOPBO2*HO2 - - j49*ISOPOOH - r264*OH*ISOPOOH + + .5*r366*NO2 + r367*NO3 + r368*NTERPOOH + r369*ONITR + r370*TERPNIT + 2*r400*N2O5 + + r402*BRONO2 + 2*r403*N2O5 + r404*CLONO2 + r405*BRONO2 + r409*CLONO2 + r410*BRONO2 + + 2*r414*N2O5 + r415*CLONO2 + r49*M*NO2*OH + r134*CH2O*NO3 + r166*CH3CHO*NO3 + + r192*CH3COCHO*NO3 + r340*DMS*NO3 + r406*CLONO2*HCL + r411*CLONO2*HCL + r416*CLONO2*HCL + - j9*HNO3 - r50*OH*HNO3 - r113*F*HNO3 + d(HO2NO2)/dt = r47*M*NO2*HO2 + - j10*HO2NO2 - j11*HO2NO2 - r51*M*HO2NO2 - r28*OH*HO2NO2 + d(HOBR)/dt = r402*BRONO2 + r405*BRONO2 + r410*BRONO2 + r96*BRO*HO2 + - j105*HOBR - r104*O*HOBR - r408*HCL*HOBR - r413*HCL*HOBR + d(HOCL)/dt = r404*CLONO2 + r409*CLONO2 + r415*CLONO2 + r64*CLO*HO2 + r69*CLONO2*OH + - j106*HOCL - r75*CL*HOCL - r76*O*HOCL - r77*OH*HOCL - r401*HCL*HOCL - r407*HCL*HOCL + - r412*HCL*HOCL + d(HONITR)/dt = r208*ENEO2*NO + r215*MACRO2*NO + .3*r254*ISOPNITA*OH + .5*r255*ISOPNITB*OH + - j45*HONITR - r359*HONITR - r209*OH*HONITR + d(HPALD)/dt = r251*ISOPBO2 + - j46*HPALD - r240*OH*HPALD + d(HYAC)/dt = .17*j45*HONITR + .5*r198*POOH*OH + .2*r199*RO2*CH3O2 + .22*r210*MACRO2*CH3CO3 + + .23*r211*MACRO2*CH3O2 + .22*r213*MACRO2*NO3 + .22*r214*MACRO2*NO + .5*r229*M*MPAN*OH + + .05*r252*ISOPBO2*NO + .05*r253*ISOPBO2*NO3 + .7*r254*ISOPNITA*OH + .5*r255*ISOPNITB*OH + + .25*r268*XO2*CH3CO3 + .1*r269*XO2*CH3O2 + .25*r271*XO2*NO + .25*r272*XO2*NO3 + - j47*HYAC - r194*OH*HYAC + d(HYDRALD)/dt = r248*ISOPBO2*CH3CO3 + .75*r249*ISOPBO2*CH3O2 + .87*r252*ISOPBO2*NO + .95*r253*ISOPBO2*NO3 + - r241*OH*HYDRALD + d(IEPOX)/dt = .6*r265*ISOPOOH*OH + - r242*OH*IEPOX + d(ISOP)/dt = - r256*NO3*ISOP - r263*O3*ISOP - r264*OH*ISOP + d(ISOPNITA)/dt = .08*r246*ISOPAO2*NO + - r360*ISOPNITA - r254*OH*ISOPNITA + d(ISOPNITB)/dt = .08*r252*ISOPBO2*NO + - r361*ISOPNITB - r255*OH*ISOPNITB + d(ISOPNO3)/dt = r256*ISOP*NO3 + - r257*CH3CO3*ISOPNO3 - r258*CH3O2*ISOPNO3 - r259*HO2*ISOPNO3 - r260*NO*ISOPNO3 + - r261*NO3*ISOPNO3 + d(ISOPNOOH)/dt = r259*ISOPNO3*HO2 + - j48*ISOPNOOH - r262*OH*ISOPNOOH + d(ISOPOOH)/dt = j48*ISOPNOOH + r245*ISOPAO2*HO2 + r250*ISOPBO2*HO2 + - j49*ISOPOOH - r265*OH*ISOPOOH d(IVOC)/dt = - r386*OH*IVOC - d(MACR)/dt = .3*j49*ISOPOOH + .39*r242*ISOPAO2*CH3CO3 + .31*r243*ISOPAO2*CH3O2 + .36*r245*ISOPAO2*NO - + .4*r246*ISOPAO2*NO3 + .3*r262*ISOP*O3 - - j50*MACR - j51*MACR - r215*O3*MACR - r216*OH*MACR - d(MACROOH)/dt = r211*MACRO2*HO2 - - r217*OH*MACROOH - d(MEK)/dt = .8*j19*ALKNIT + .8*j20*ALKOOH + .8*r235*ALKO2*NO - - j52*MEK - r226*OH*MEK - d(MEKOOH)/dt = .8*r224*MEKO2*HO2 - - j53*MEKOOH - r227*OH*MEKOOH - d(MPAN)/dt = r231*M*MCO3*NO2 - - j54*MPAN - r232*M*MPAN - r228*M*OH*MPAN - d(MTERP)/dt = - r319*NO3*MTERP - r320*O3*MTERP - r321*OH*MTERP - d(MVK)/dt = .7*j49*ISOPOOH + .61*r242*ISOPAO2*CH3CO3 + .44*r243*ISOPAO2*CH3O2 + .56*r245*ISOPAO2*NO - + .6*r246*ISOPAO2*NO3 + .2*r262*ISOP*O3 - - j55*MVK - r229*O3*MVK - r230*OH*MVK + d(MACR)/dt = .3*j49*ISOPOOH + .39*r243*ISOPAO2*CH3CO3 + .31*r244*ISOPAO2*CH3O2 + .36*r246*ISOPAO2*NO + + .4*r247*ISOPAO2*NO3 + .3*r263*ISOP*O3 + - j50*MACR - j51*MACR - r216*O3*MACR - r217*OH*MACR + d(MACROOH)/dt = r212*MACRO2*HO2 + - r218*OH*MACROOH + d(MEK)/dt = .8*j19*ALKNIT + .8*j20*ALKOOH + .8*r236*ALKO2*NO + - j52*MEK - r227*OH*MEK + d(MEKOOH)/dt = .8*r225*MEKO2*HO2 + - j53*MEKOOH - r228*OH*MEKOOH + d(MPAN)/dt = r232*M*MCO3*NO2 + - j54*MPAN - r233*M*MPAN - r229*M*OH*MPAN + d(MTERP)/dt = - r320*NO3*MTERP - r321*O3*MTERP - r322*OH*MTERP + d(MVK)/dt = .7*j49*ISOPOOH + .61*r243*ISOPAO2*CH3CO3 + .44*r244*ISOPAO2*CH3O2 + .56*r246*ISOPAO2*NO + + .6*r247*ISOPAO2*NO3 + .2*r263*ISOP*O3 + - j55*MVK - r230*O3*MVK - r231*OH*MVK d(N)/dt = j15*NO - - r32*O2*N - r28*NO*N - r29*NO2*N - r30*NO2*N - r31*NO2*N - r40*OH*N - d(N2O)/dt = r29*N*NO2 - - j12*N2O - r44*O1D*N2O - r45*O1D*N2O - d(N2O5)/dt = r47*M*NO2*NO3 - - j13*N2O5 - j14*N2O5 - r51*M*N2O5 - r362*N2O5 - r399*N2O5 - r402*N2O5 - r413*N2O5 - d(NC4CH2OH)/dt = .2*r257*ISOPNO3*CH3O2 - - r363*NC4CH2OH - r265*OH*NC4CH2OH - d(NC4CHO)/dt = r256*ISOPNO3*CH3CO3 + .8*r257*ISOPNO3*CH3O2 + r259*ISOPNO3*NO + r260*ISOPNO3*NO3 - - j56*NC4CHO - r364*NC4CHO - r266*OH*NC4CHO + - r33*O2*N - r29*NO*N - r30*NO2*N - r31*NO2*N - r32*NO2*N - r41*OH*N + d(N2O)/dt = r30*N*NO2 + - j12*N2O - r45*O1D*N2O - r46*O1D*N2O + d(N2O5)/dt = r48*M*NO2*NO3 + - j13*N2O5 - j14*N2O5 - r52*M*N2O5 - r362*N2O5 - r400*N2O5 - r403*N2O5 - r414*N2O5 + d(NC4CH2OH)/dt = .2*r258*ISOPNO3*CH3O2 + - r363*NC4CH2OH - r266*OH*NC4CH2OH + d(NC4CHO)/dt = r257*ISOPNO3*CH3CO3 + .8*r258*ISOPNO3*CH3O2 + r260*ISOPNO3*NO + r261*ISOPNO3*NO3 + - j56*NC4CHO - r364*NC4CHO - r267*OH*NC4CHO d(ncl_a1)/dt = 0 d(ncl_a2)/dt = 0 d(ncl_a3)/dt = 0 - d(NH3)/dt = - r356*OH*NH3 + d(NH3)/dt = - r357*OH*NH3 d(NH4)/dt = - r365*NH4 - d(NH_5)/dt = - r417*NH_5 - d(NH_50)/dt = - r416*NH_50 - d(NO)/dt = j14*N2O5 + j16*NO2 + j17*NO3 + r32*O2*N + .5*r366*NO2 + 2*r30*N*NO2 + r33*NO2*O + r40*N*OH - + 2*r44*O1D*N2O + r349*SO*NO2 - - j15*NO - r28*N*NO - r37*NO3*NO - r41*HO2*NO - r42*O3*NO - r43*M*O*NO - r64*CLO*NO - - r96*BRO*NO - r139*CH3O2*NO - r147*HOCH2OO*NO - r160*C2H5O2*NO - r171*CH3CO3*NO - r175*EO2*NO - - r188*C3H7O2*NO - r196*PO2*NO - r200*RO2*NO - r206*ENEO2*NO - r207*ENEO2*NO - r213*MACRO2*NO - - r214*MACRO2*NO - r222*MCO3*NO - r225*MEKO2*NO - r235*ALKO2*NO - r236*ALKO2*NO - r245*ISOPAO2*NO - - r251*ISOPBO2*NO - r259*ISOPNO3*NO - r270*XO2*NO - r274*ACBZO2*NO - r277*BENZO2*NO - - r282*BZOO*NO - r284*C6H5O2*NO - r288*DICARBO2*NO - r291*MALO2*NO - r294*MDIALO2*NO - - r297*PHENO2*NO - r304*TOLO2*NO - r310*XYLENO2*NO - r313*XYLOLO2*NO - r324*NTERPO2*NO - - r329*TERP2O2*NO - r334*TERPO2*NO + d(NH_5)/dt = - r418*NH_5 + d(NH_50)/dt = - r417*NH_50 + d(NO)/dt = j14*N2O5 + j16*NO2 + j17*NO3 + r33*O2*N + .5*r366*NO2 + 2*r31*N*NO2 + r34*NO2*O + r41*N*OH + + 2*r45*O1D*N2O + r350*SO*NO2 + - j15*NO - r29*N*NO - r38*NO3*NO - r42*HO2*NO - r43*O3*NO - r44*M*O*NO - r65*CLO*NO + - r97*BRO*NO - r140*CH3O2*NO - r148*HOCH2OO*NO - r161*C2H5O2*NO - r172*CH3CO3*NO - r176*EO2*NO + - r189*C3H7O2*NO - r197*PO2*NO - r201*RO2*NO - r207*ENEO2*NO - r208*ENEO2*NO - r214*MACRO2*NO + - r215*MACRO2*NO - r223*MCO3*NO - r226*MEKO2*NO - r236*ALKO2*NO - r237*ALKO2*NO - r246*ISOPAO2*NO + - r252*ISOPBO2*NO - r260*ISOPNO3*NO - r271*XO2*NO - r275*ACBZO2*NO - r278*BENZO2*NO + - r283*BZOO*NO - r285*C6H5O2*NO - r289*DICARBO2*NO - r292*MALO2*NO - r295*MDIALO2*NO + - r298*PHENO2*NO - r305*TOLO2*NO - r311*XYLENO2*NO - r314*XYLOLO2*NO - r325*NTERPO2*NO + - r330*TERP2O2*NO - r335*TERPO2*NO d(NO2)/dt = j9*HNO3 + j11*HO2NO2 + j13*N2O5 + j18*NO3 + j19*ALKNIT + j45*HONITR + j48*ISOPNOOH + j54*MPAN + j56*NC4CHO + j57*NOA + j58*NTERPOOH + j59*ONITR + .6*j60*PAN + j66*TERPNIT + j76*BRONO2 - + j95*CLONO2 + r50*M*HO2NO2 + r51*M*N2O5 + r183*M*PAN + r232*M*MPAN + r307*M*PBZNIT - + r27*HO2NO2*OH + r36*NO3*HO2 + 2*r37*NO3*NO + r38*NO3*O + r39*NO3*OH + r41*NO*HO2 + r42*NO*O3 - + r43*M*NO*O + r64*CLO*NO + r96*BRO*NO + r139*CH3O2*NO + r147*HOCH2OO*NO + r160*C2H5O2*NO - + r171*CH3CO3*NO + r175*EO2*NO + r188*C3H7O2*NO + r194*NOA*OH + r196*PO2*NO + r200*RO2*NO - + r204*BIGENE*NO3 + r206*ENEO2*NO + r212*MACRO2*NO3 + r213*MACRO2*NO + r222*MCO3*NO - + r223*MCO3*NO3 + r225*MEKO2*NO + r233*ALKNIT*OH + r235*ALKO2*NO + .92*r245*ISOPAO2*NO - + r246*ISOPAO2*NO3 + .92*r251*ISOPBO2*NO + r252*ISOPBO2*NO3 + .7*r253*ISOPNITA*OH - + r259*ISOPNO3*NO + r260*ISOPNO3*NO3 + r270*XO2*NO + r271*XO2*NO3 + r274*ACBZO2*NO - + r277*BENZO2*NO + r282*BZOO*NO + r284*C6H5O2*NO + r288*DICARBO2*NO + r291*MALO2*NO - + r294*MDIALO2*NO + r297*PHENO2*NO + r304*TOLO2*NO + r310*XYLENO2*NO + r313*XYLOLO2*NO - + .5*r322*NTERPO2*CH3O2 + 1.6*r324*NTERPO2*NO + 2*r325*NTERPO2*NO3 + .9*r329*TERP2O2*NO - + r331*TERPNIT*OH + .8*r334*TERPO2*NO - - j16*NO2 - r366*NO2 - r29*N*NO2 - r30*N*NO2 - r31*N*NO2 - r33*O*NO2 - r34*O3*NO2 - - r35*M*O*NO2 - r46*M*HO2*NO2 - r47*M*NO3*NO2 - r48*M*OH*NO2 - r66*M*CLO*NO2 - r97*M*BRO*NO2 - - r182*M*CH3CO3*NO2 - r231*M*MCO3*NO2 - r289*M*DICARBO2*NO2 - r292*M*MALO2*NO2 - - r295*M*MDIALO2*NO2 - r299*PHENO*NO2 - r302*M*ACBZO2*NO2 - r349*SO*NO2 - d(NO3)/dt = j10*HO2NO2 + j13*N2O5 + j14*N2O5 + .4*j60*PAN + j77*BRONO2 + j94*CLONO2 + r51*M*N2O5 - + r34*NO2*O3 + r35*M*NO2*O + r49*HNO3*OH + r65*CLONO2*CL + r67*CLONO2*O + r68*CLONO2*OH - + r98*BRONO2*O + r112*F*HNO3 + r180*PAN*OH + .5*r228*M*MPAN*OH - - j17*NO3 - j18*NO3 - r367*NO3 - r36*HO2*NO3 - r37*NO*NO3 - r38*O*NO3 - r39*OH*NO3 - - r47*M*NO2*NO3 - r133*CH2O*NO3 - r165*CH3CHO*NO3 - r184*C3H6*NO3 - r191*CH3COCHO*NO3 - - r204*BIGENE*NO3 - r212*MACRO2*NO3 - r223*MCO3*NO3 - r246*ISOPAO2*NO3 - r252*ISOPBO2*NO3 - - r255*ISOP*NO3 - r260*ISOPNO3*NO3 - r271*XO2*NO3 - r316*BCARY*NO3 - r319*MTERP*NO3 - - r325*NTERPO2*NO3 - r336*TERPROD1*NO3 - r339*DMS*NO3 - d(NOA)/dt = r184*C3H6*NO3 + .5*r254*ISOPNITB*OH + r261*ISOPNOOH*OH + r265*NC4CH2OH*OH + r266*NC4CHO*OH - - j57*NOA - r194*OH*NOA - d(NTERPOOH)/dt = r323*NTERPO2*HO2 - - j58*NTERPOOH - r368*NTERPOOH - r326*OH*NTERPOOH + + j95*CLONO2 + r51*M*HO2NO2 + r52*M*N2O5 + r184*M*PAN + r233*M*MPAN + r308*M*PBZNIT + + r28*HO2NO2*OH + r37*NO3*HO2 + 2*r38*NO3*NO + r39*NO3*O + r40*NO3*OH + r42*NO*HO2 + r43*NO*O3 + + r44*M*NO*O + r65*CLO*NO + r97*BRO*NO + r140*CH3O2*NO + r148*HOCH2OO*NO + r161*C2H5O2*NO + + r172*CH3CO3*NO + r176*EO2*NO + r189*C3H7O2*NO + r195*NOA*OH + r197*PO2*NO + r201*RO2*NO + + r205*BIGENE*NO3 + r207*ENEO2*NO + r213*MACRO2*NO3 + r214*MACRO2*NO + r223*MCO3*NO + + r224*MCO3*NO3 + r226*MEKO2*NO + r234*ALKNIT*OH + r236*ALKO2*NO + .92*r246*ISOPAO2*NO + + r247*ISOPAO2*NO3 + .92*r252*ISOPBO2*NO + r253*ISOPBO2*NO3 + .7*r254*ISOPNITA*OH + + r260*ISOPNO3*NO + r261*ISOPNO3*NO3 + r271*XO2*NO + r272*XO2*NO3 + r275*ACBZO2*NO + + r278*BENZO2*NO + r283*BZOO*NO + r285*C6H5O2*NO + r289*DICARBO2*NO + r292*MALO2*NO + + r295*MDIALO2*NO + r298*PHENO2*NO + r305*TOLO2*NO + r311*XYLENO2*NO + r314*XYLOLO2*NO + + .5*r323*NTERPO2*CH3O2 + 1.6*r325*NTERPO2*NO + 2*r326*NTERPO2*NO3 + .9*r330*TERP2O2*NO + + r332*TERPNIT*OH + .8*r335*TERPO2*NO + - j16*NO2 - r366*NO2 - r30*N*NO2 - r31*N*NO2 - r32*N*NO2 - r34*O*NO2 - r35*O3*NO2 + - r36*M*O*NO2 - r47*M*HO2*NO2 - r48*M*NO3*NO2 - r49*M*OH*NO2 - r67*M*CLO*NO2 - r98*M*BRO*NO2 + - r183*M*CH3CO3*NO2 - r232*M*MCO3*NO2 - r290*M*DICARBO2*NO2 - r293*M*MALO2*NO2 + - r296*M*MDIALO2*NO2 - r300*PHENO*NO2 - r303*M*ACBZO2*NO2 - r350*SO*NO2 + d(NO3)/dt = j10*HO2NO2 + j13*N2O5 + j14*N2O5 + .4*j60*PAN + j77*BRONO2 + j94*CLONO2 + r52*M*N2O5 + + r35*NO2*O3 + r36*M*NO2*O + r50*HNO3*OH + r66*CLONO2*CL + r68*CLONO2*O + r69*CLONO2*OH + + r99*BRONO2*O + r113*F*HNO3 + r181*PAN*OH + .5*r229*M*MPAN*OH + - j17*NO3 - j18*NO3 - r367*NO3 - r37*HO2*NO3 - r38*NO*NO3 - r39*O*NO3 - r40*OH*NO3 + - r48*M*NO2*NO3 - r134*CH2O*NO3 - r166*CH3CHO*NO3 - r185*C3H6*NO3 - r192*CH3COCHO*NO3 + - r205*BIGENE*NO3 - r213*MACRO2*NO3 - r224*MCO3*NO3 - r247*ISOPAO2*NO3 - r253*ISOPBO2*NO3 + - r256*ISOP*NO3 - r261*ISOPNO3*NO3 - r272*XO2*NO3 - r317*BCARY*NO3 - r320*MTERP*NO3 + - r326*NTERPO2*NO3 - r337*TERPROD1*NO3 - r340*DMS*NO3 + d(NOA)/dt = r185*C3H6*NO3 + .5*r255*ISOPNITB*OH + r262*ISOPNOOH*OH + r266*NC4CH2OH*OH + r267*NC4CHO*OH + - j57*NOA - r195*OH*NOA + d(NTERPOOH)/dt = r324*NTERPO2*HO2 + - j58*NTERPOOH - r368*NTERPOOH - r327*OH*NTERPOOH d(num_a1)/dt = 0 d(num_a2)/dt = 0 d(num_a3)/dt = 0 @@ -1526,47 +1521,49 @@ Extraneous prod/loss species d(num_a5)/dt = 0 d(O)/dt = j5*O2 + 2*j6*O2 + j3*H2O + j8*O3 + j14*N2O5 + j15*NO + j16*NO2 + j18*NO3 + .18*j39*CH4 + j41*CO2 + j75*BRO + j93*CLO + j107*OCLO + j111*SO + j112*SO2 + j113*SO3 + r4*N2*O1D - + r5*O2*O1D + r32*O2*N + r343*O2*S + r350*O2*SO + r14*H*HO2 + r24*OH*OH + r28*N*NO + r29*N*NO2 - - r9*O2*M*O - r7*O3*O - 2*r8*M*O*O - r10*H2*O - r11*H2O2*O - r16*HO2*O - r22*OH*O - r33*NO2*O - - r35*M*NO2*O - r38*NO3*O - r43*M*NO*O - r67*CLONO2*O - r69*CLO*O - r72*HCL*O - r75*HOCL*O - - r98*BRONO2*O - r99*BRO*O - r101*HBR*O - r103*HOBR*O - r134*CH2O*O - r341*OCS*O - d(O3)/dt = r9*O2*M*O + .15*r170*CH3CO3*HO2 + .15*r220*MCO3*HO2 - - j7*O3 - j8*O3 - r6*O1D*O3 - r7*O*O3 - r17*HO2*O3 - r18*H*O3 - r23*OH*O3 - r34*NO2*O3 - - r42*NO*O3 - r58*CL*O3 - r90*BR*O3 - r156*C2H4*O3 - r185*C3H6*O3 - r215*MACR*O3 - r229*MVK*O3 - - r262*ISOP*O3 - r300*PHENO*O3 - r317*BCARY*O3 - r320*MTERP*O3 - r345*S*O3 - r351*SO*O3 + + r5*O2*O1D + r33*O2*N + r344*O2*S + r351*O2*SO + 2*r7*O1D*O3 + r15*H*HO2 + r25*OH*OH + r29*N*NO + + r30*N*NO2 + - r10*O2*M*O - r8*O3*O - 2*r9*M*O*O - r11*H2*O - r12*H2O2*O - r17*HO2*O - r23*OH*O - r34*NO2*O + - r36*M*NO2*O - r39*NO3*O - r44*M*NO*O - r68*CLONO2*O - r70*CLO*O - r73*HCL*O - r76*HOCL*O + - r99*BRONO2*O - r100*BRO*O - r102*HBR*O - r104*HOBR*O - r135*CH2O*O - r342*OCS*O + d(O3)/dt = r10*O2*M*O + .15*r171*CH3CO3*HO2 + .15*r221*MCO3*HO2 + - j7*O3 - j8*O3 - r6*O1D*O3 - r7*O1D*O3 - r8*O*O3 - r18*HO2*O3 - r19*H*O3 - r24*OH*O3 + - r35*NO2*O3 - r43*NO*O3 - r59*CL*O3 - r91*BR*O3 - r157*C2H4*O3 - r186*C3H6*O3 - r216*MACR*O3 + - r230*MVK*O3 - r263*ISOP*O3 - r301*PHENO*O3 - r318*BCARY*O3 - r321*MTERP*O3 - r346*S*O3 + - r352*SO*O3 d(O3S)/dt = 0 - d(OCLO)/dt = r62*CLO*CLO + r92*BRO*CLO - - j107*OCLO - r352*SO*OCLO - d(OCS)/dt = - j110*OCS - r341*O*OCS - r342*OH*OCS - d(ONITR)/dt = r208*HONITR*OH + .1*r329*TERP2O2*NO + d(OCLO)/dt = r63*CLO*CLO + r93*BRO*CLO + - j107*OCLO - r353*SO*OCLO + d(OCS)/dt = - j110*OCS - r342*O*OCS - r343*OH*OCS + d(ONITR)/dt = r209*HONITR*OH + .1*r330*TERP2O2*NO - j59*ONITR - r369*ONITR - d(PAN)/dt = r182*M*CH3CO3*NO2 - - j60*PAN - r183*M*PAN - r180*OH*PAN - d(PBZNIT)/dt = r302*M*ACBZO2*NO2 - - r307*M*PBZNIT - d(PHENO)/dt = j31*C6H5OOH + r284*C6H5O2*NO + .07*r286*CRESOL*OH + .06*r298*PHENOL*OH + .07*r314*XYLOL*OH - - r299*NO2*PHENO - r300*O3*PHENO - d(PHENOL)/dt = .53*r275*BENZENE*OH - - r298*OH*PHENOL - d(PHENOOH)/dt = r296*PHENO2*HO2 - - j61*PHENOOH - r301*OH*PHENOOH + d(PAN)/dt = r183*M*CH3CO3*NO2 + - j60*PAN - r184*M*PAN - r181*OH*PAN + d(PBZNIT)/dt = r303*M*ACBZO2*NO2 + - r308*M*PBZNIT + d(PHENO)/dt = j31*C6H5OOH + r285*C6H5O2*NO + .07*r287*CRESOL*OH + .06*r299*PHENOL*OH + .07*r315*XYLOL*OH + - r300*NO2*PHENO - r301*O3*PHENO + d(PHENOL)/dt = .53*r276*BENZENE*OH + - r299*OH*PHENOL + d(PHENOOH)/dt = r297*PHENO2*HO2 + - j61*PHENOOH - r302*OH*PHENOOH d(pom_a1)/dt = 0 d(pom_a4)/dt = 0 - d(POOH)/dt = r195*PO2*HO2 - - j62*POOH - r197*OH*POOH - d(ROOH)/dt = .85*r199*RO2*HO2 - - j63*ROOH - r201*OH*ROOH + d(POOH)/dt = r196*PO2*HO2 + - j62*POOH - r198*OH*POOH + d(ROOH)/dt = .85*r200*RO2*HO2 + - j63*ROOH - r202*OH*ROOH d(S)/dt = j110*OCS + j111*SO - - r343*O2*S - r345*O3*S - r348*OH*S + - r344*O2*S - r346*O3*S - r349*OH*S d(SF6)/dt = - j108*SF6 - d(SO)/dt = j112*SO2 + r343*O2*S + r341*OCS*O + r345*S*O3 + r348*S*OH - - j111*SO - r350*O2*SO - r346*BRO*SO - r347*CLO*SO - r349*NO2*SO - r351*O3*SO - r352*OCLO*SO - - r353*OH*SO - d(SO2)/dt = j113*SO3 + r350*O2*SO + r339*DMS*NO3 + r340*DMS*OH + r342*OCS*OH + r346*SO*BRO + r347*SO*CLO - + r349*SO*NO2 + r351*SO*O3 + r352*SO*OCLO + r353*SO*OH + .5*r354*DMS*OH - - j112*SO2 - r344*M*OH*SO2 - d(SO3)/dt = j109*H2SO4 + r344*M*SO2*OH - - j113*SO3 - r355*H2O*SO3 + d(SO)/dt = j112*SO2 + r344*O2*S + r342*OCS*O + r346*S*O3 + r349*S*OH + - j111*SO - r351*O2*SO - r347*BRO*SO - r348*CLO*SO - r350*NO2*SO - r352*O3*SO - r353*OCLO*SO + - r354*OH*SO + d(SO2)/dt = j113*SO3 + r351*O2*SO + r340*DMS*NO3 + r341*DMS*OH + r343*OCS*OH + r347*SO*BRO + r348*SO*CLO + + r350*SO*NO2 + r352*SO*O3 + r353*SO*OCLO + r354*SO*OH + .5*r355*DMS*OH + - j112*SO2 - r345*M*OH*SO2 + d(SO3)/dt = j109*H2SO4 + r345*M*SO2*OH + - j113*SO3 - r356*H2O*SO3 d(so4_a1)/dt = 0 d(so4_a2)/dt = 0 d(so4_a3)/dt = 0 @@ -1581,252 +1578,252 @@ Extraneous prod/loss species d(soa4_a2)/dt = - j121*soa4_a2 d(soa5_a1)/dt = - j122*soa5_a1 d(soa5_a2)/dt = - j123*soa5_a2 - d(SOAG0)/dt = r357*GLYOXAL + .2202*r372*BCARYO2VBS*HO2 + .1279*r373*BCARYO2VBS*NO + .2202*r374*BCARY*O3 + d(SOAG0)/dt = r396*GLYOXAL + .2202*r372*BCARYO2VBS*HO2 + .1279*r373*BCARYO2VBS*NO + .2202*r374*BCARY*O3 + .0023*r377*BENZO2VBS*HO2 + .0097*r378*BENZO2VBS*NO + .0031*r380*ISOPO2VBS*HO2 + .0003*r381*ISOPO2VBS*NO + .2381*r384*IVOCO2VBS*HO2 + .1056*r385*IVOCO2VBS*NO + .0508*r388*MTERPO2VBS*HO2 + .0245*r389*MTERPO2VBS*NO + .0508*r390*MTERP*O3 + .5931*r392*SVOC*OH + .1364*r394*TOLUO2VBS*HO2 + .0154*r395*TOLUO2VBS*NO - + .1677*r397*XYLEO2VBS*HO2 + .0063*r398*XYLEO2VBS*NO + + .1677*r398*XYLEO2VBS*HO2 + .0063*r399*XYLEO2VBS*NO d(SOAG1)/dt = .2067*r372*BCARYO2VBS*HO2 + .1792*r373*BCARYO2VBS*NO + .2067*r374*BCARY*O3 + .0008*r377*BENZO2VBS*HO2 + .0034*r378*BENZO2VBS*NO + .0035*r380*ISOPO2VBS*HO2 + .0003*r381*ISOPO2VBS*NO + .1308*r384*IVOCO2VBS*HO2 + .1026*r385*IVOCO2VBS*NO + .1149*r388*MTERPO2VBS*HO2 + .0082*r389*MTERPO2VBS*NO + .1149*r390*MTERP*O3 + .1534*r392*SVOC*OH + .0101*r394*TOLUO2VBS*HO2 + .0452*r395*TOLUO2VBS*NO - + .0174*r397*XYLEO2VBS*HO2 + .0237*r398*XYLEO2VBS*NO + + .0174*r398*XYLEO2VBS*HO2 + .0237*r399*XYLEO2VBS*NO d(SOAG2)/dt = .0653*r372*BCARYO2VBS*HO2 + .0676*r373*BCARYO2VBS*NO + .0653*r374*BCARY*O3 + .0843*r377*BENZO2VBS*HO2 + .1579*r378*BENZO2VBS*NO + .0003*r380*ISOPO2VBS*HO2 + .0073*r381*ISOPO2VBS*NO + .0348*r384*IVOCO2VBS*HO2 + .0521*r385*IVOCO2VBS*NO + .0348*r388*MTERPO2VBS*HO2 + .0772*r389*MTERPO2VBS*NO + .0348*r390*MTERP*O3 + .0459*r392*SVOC*OH + .0763*r394*TOLUO2VBS*HO2 + .0966*r395*TOLUO2VBS*NO - + .086*r397*XYLEO2VBS*HO2 + .0025*r398*XYLEO2VBS*NO + + .086*r398*XYLEO2VBS*HO2 + .0025*r399*XYLEO2VBS*NO d(SOAG3)/dt = .17493*r371*BCARY*NO3 + .1284*r372*BCARYO2VBS*HO2 + .079*r373*BCARYO2VBS*NO + .1284*r374*BCARY*O3 + .0443*r377*BENZO2VBS*HO2 + .0059*r378*BENZO2VBS*NO + .059024*r379*ISOP*NO3 + .0271*r380*ISOPO2VBS*HO2 + .0057*r381*ISOPO2VBS*NO + .0033*r382*ISOP*O3 + .0076*r384*IVOCO2VBS*HO2 + .0143*r385*IVOCO2VBS*NO + .17493*r387*MTERP*NO3 + .0554*r388*MTERPO2VBS*HO2 + .0332*r389*MTERPO2VBS*NO + .0554*r390*MTERP*O3 + .0085*r392*SVOC*OH + .2157*r394*TOLUO2VBS*HO2 + .0073*r395*TOLUO2VBS*NO - + .0512*r397*XYLEO2VBS*HO2 + .011*r398*XYLEO2VBS*NO + + .0512*r398*XYLEO2VBS*HO2 + .011*r399*XYLEO2VBS*NO d(SOAG4)/dt = .59019*r371*BCARY*NO3 + .114*r372*BCARYO2VBS*HO2 + .1254*r373*BCARYO2VBS*NO + .114*r374*BCARY*O3 + .1621*r377*BENZO2VBS*HO2 + .0536*r378*BENZO2VBS*NO + .025024*r379*ISOP*NO3 + .0474*r380*ISOPO2VBS*HO2 + .0623*r381*ISOPO2VBS*NO + .0113*r384*IVOCO2VBS*HO2 + .0166*r385*IVOCO2VBS*NO + .59019*r387*MTERP*NO3 + .1278*r388*MTERPO2VBS*HO2 + .13*r389*MTERPO2VBS*NO + .1278*r390*MTERP*O3 + .0128*r392*SVOC*OH + .0738*r394*TOLUO2VBS*HO2 - + .238*r395*TOLUO2VBS*NO + .1598*r397*XYLEO2VBS*HO2 + .1185*r398*XYLEO2VBS*NO - d(ST80_25)/dt = - r418*ST80_25 + + .238*r395*TOLUO2VBS*NO + .1598*r398*XYLEO2VBS*HO2 + .1185*r399*XYLEO2VBS*NO + d(ST80_25)/dt = - r419*ST80_25 d(SVOC)/dt = - r392*OH*SVOC - d(TEPOMUC)/dt = .1*r306*TOLUENE*OH + .23*r308*XYLENES*OH + d(TEPOMUC)/dt = .1*r307*TOLUENE*OH + .23*r309*XYLENES*OH - j64*TEPOMUC - d(TERP2OOH)/dt = r328*TERP2O2*HO2 - - j65*TERP2OOH - r330*OH*TERP2OOH - d(TERPNIT)/dt = .5*r322*NTERPO2*CH3O2 + .2*r324*NTERPO2*NO + .2*r334*TERPO2*NO - - j66*TERPNIT - r370*TERPNIT - r331*OH*TERPNIT - d(TERPOOH)/dt = r333*TERPO2*HO2 - - j67*TERPOOH - r335*OH*TERPOOH - d(TERPROD1)/dt = j58*NTERPOOH + j66*TERPNIT + j67*TERPOOH + .33*r317*BCARY*O3 + .33*r320*MTERP*O3 - + .5*r322*NTERPO2*CH3O2 + .8*r324*NTERPO2*NO + r325*NTERPO2*NO3 + r331*TERPNIT*OH - + r332*TERPO2*CH3O2 + .8*r334*TERPO2*NO - - j68*TERPROD1 - r336*NO3*TERPROD1 - r337*OH*TERPROD1 - d(TERPROD2)/dt = j65*TERP2OOH + j68*TERPROD1 + .3*r317*BCARY*O3 + .3*r320*MTERP*O3 + r327*TERP2O2*CH3O2 - + .9*r329*TERP2O2*NO - - j69*TERPROD2 - r338*OH*TERPROD2 - d(TOLOOH)/dt = r303*TOLO2*HO2 - - j70*TOLOOH - r305*OH*TOLOOH - d(TOLUENE)/dt = - r306*OH*TOLUENE - d(XOOH)/dt = r269*XO2*HO2 - - j71*XOOH - r272*OH*XOOH - d(XYLENES)/dt = - r308*OH*XYLENES - d(XYLENOOH)/dt = r309*XYLENO2*HO2 - - j72*XYLENOOH - r311*OH*XYLENOOH - d(XYLOL)/dt = .15*r308*XYLENES*OH - - r314*OH*XYLOL - d(XYLOLOOH)/dt = r312*XYLOLO2*HO2 - - j73*XYLOLOOH - r315*OH*XYLOLOOH - d(NHDEP)/dt = r365*NH4 + r356*NH3*OH - d(NDEP)/dt = .5*r228*M*MPAN*OH + r289*M*DICARBO2*NO2 + r292*M*MALO2*NO2 + r295*M*MDIALO2*NO2 + r299*PHENO*NO2 - + .2*r324*NTERPO2*NO + .5*r336*TERPROD1*NO3 - d(ACBZO2)/dt = r307*M*PBZNIT + r279*BZALD*OH - - r273*HO2*ACBZO2 - r274*NO*ACBZO2 - r302*M*NO2*ACBZO2 - d(ALKO2)/dt = r237*ALKOOH*OH + r238*BIGALK*OH - - r234*HO2*ALKO2 - r235*NO*ALKO2 - r236*NO*ALKO2 + d(TERP2OOH)/dt = r329*TERP2O2*HO2 + - j65*TERP2OOH - r331*OH*TERP2OOH + d(TERPNIT)/dt = .5*r323*NTERPO2*CH3O2 + .2*r325*NTERPO2*NO + .2*r335*TERPO2*NO + - j66*TERPNIT - r370*TERPNIT - r332*OH*TERPNIT + d(TERPOOH)/dt = r334*TERPO2*HO2 + - j67*TERPOOH - r336*OH*TERPOOH + d(TERPROD1)/dt = j58*NTERPOOH + j66*TERPNIT + j67*TERPOOH + .33*r318*BCARY*O3 + .33*r321*MTERP*O3 + + .5*r323*NTERPO2*CH3O2 + .8*r325*NTERPO2*NO + r326*NTERPO2*NO3 + r332*TERPNIT*OH + + r333*TERPO2*CH3O2 + .8*r335*TERPO2*NO + - j68*TERPROD1 - r337*NO3*TERPROD1 - r338*OH*TERPROD1 + d(TERPROD2)/dt = j65*TERP2OOH + j68*TERPROD1 + .3*r318*BCARY*O3 + .3*r321*MTERP*O3 + r328*TERP2O2*CH3O2 + + .9*r330*TERP2O2*NO + - j69*TERPROD2 - r339*OH*TERPROD2 + d(TOLOOH)/dt = r304*TOLO2*HO2 + - j70*TOLOOH - r306*OH*TOLOOH + d(TOLUENE)/dt = - r307*OH*TOLUENE + d(XOOH)/dt = r270*XO2*HO2 + - j71*XOOH - r273*OH*XOOH + d(XYLENES)/dt = - r309*OH*XYLENES + d(XYLENOOH)/dt = r310*XYLENO2*HO2 + - j72*XYLENOOH - r312*OH*XYLENOOH + d(XYLOL)/dt = .15*r309*XYLENES*OH + - r315*OH*XYLOL + d(XYLOLOOH)/dt = r313*XYLOLO2*HO2 + - j73*XYLOLOOH - r316*OH*XYLOLOOH + d(NHDEP)/dt = r365*NH4 + r357*NH3*OH + d(NDEP)/dt = .5*r229*M*MPAN*OH + r290*M*DICARBO2*NO2 + r293*M*MALO2*NO2 + r296*M*MDIALO2*NO2 + r300*PHENO*NO2 + + .2*r325*NTERPO2*NO + .5*r337*TERPROD1*NO3 + d(ACBZO2)/dt = r308*M*PBZNIT + r280*BZALD*OH + - r274*HO2*ACBZO2 - r275*NO*ACBZO2 - r303*M*NO2*ACBZO2 + d(ALKO2)/dt = r238*ALKOOH*OH + r239*BIGALK*OH + - r235*HO2*ALKO2 - r236*NO*ALKO2 - r237*NO*ALKO2 d(BCARYO2VBS)/dt = r375*BCARY*OH - r372*HO2*BCARYO2VBS - r373*NO*BCARYO2VBS - d(BENZO2)/dt = .35*r275*BENZENE*OH + r278*BENZOOH*OH - - r276*HO2*BENZO2 - r277*NO*BENZO2 + d(BENZO2)/dt = .35*r276*BENZENE*OH + r279*BENZOOH*OH + - r277*HO2*BENZO2 - r278*NO*BENZO2 d(BENZO2VBS)/dt = r376*BENZENE*OH - r377*HO2*BENZO2VBS - r378*NO*BENZO2VBS - d(BZOO)/dt = r281*BZOOH*OH + .07*r306*TOLUENE*OH + .06*r308*XYLENES*OH - - r280*HO2*BZOO - r282*NO*BZOO - d(C2H5O2)/dt = j52*MEK + .5*r162*C2H5OOH*OH + r163*C2H6*CL + r164*C2H6*OH - - 2*r157*C2H5O2*C2H5O2 - r158*CH3O2*C2H5O2 - r159*HO2*C2H5O2 - r160*NO*C2H5O2 - d(C3H7O2)/dt = r189*C3H7OOH*OH + r190*C3H8*OH - - r186*CH3O2*C3H7O2 - r187*HO2*C3H7O2 - r188*NO*C3H7O2 - d(C6H5O2)/dt = .4*r273*ACBZO2*HO2 + r274*ACBZO2*NO + r285*C6H5OOH*OH + r300*PHENO*O3 - - r283*HO2*C6H5O2 - r284*NO*C6H5O2 + d(BZOO)/dt = r282*BZOOH*OH + .07*r307*TOLUENE*OH + .06*r309*XYLENES*OH + - r281*HO2*BZOO - r283*NO*BZOO + d(C2H5O2)/dt = j52*MEK + .5*r163*C2H5OOH*OH + r164*C2H6*CL + r165*C2H6*OH + - 2*r158*C2H5O2*C2H5O2 - r159*CH3O2*C2H5O2 - r160*HO2*C2H5O2 - r161*NO*C2H5O2 + d(C3H7O2)/dt = r190*C3H7OOH*OH + r191*C3H8*OH + - r187*CH3O2*C3H7O2 - r188*HO2*C3H7O2 - r189*NO*C3H7O2 + d(C6H5O2)/dt = .4*r274*ACBZO2*HO2 + r275*ACBZO2*NO + r286*C6H5OOH*OH + r301*PHENO*O3 + - r284*HO2*C6H5O2 - r285*NO*C6H5O2 d(CH3CO3)/dt = .13*j23*BIGALD + j27*BIGALD4 + j35*CH3COCH3 + j36*CH3COCHO + .33*j45*HONITR + j47*HYAC + 1.34*j50*MACR + j52*MEK + j53*MEKOOH + .3*j55*MVK + j57*NOA + .6*j60*PAN + j63*ROOH - + .5*j64*TEPOMUC + .65*j69*TERPROD2 + r183*M*PAN + r165*CH3CHO*NO3 + r166*CH3CHO*OH - + .5*r173*CH3COOOH*OH + r191*CH3COCHO*NO3 + r192*CH3COCHO*OH + .3*r198*RO2*CH3O2 - + .15*r199*RO2*HO2 + r200*RO2*NO + .53*r209*MACRO2*CH3CO3 + .26*r210*MACRO2*CH3O2 - + .53*r212*MACRO2*NO3 + .53*r213*MACRO2*NO + .1*r215*MACR*O3 + r219*MCO3*CH3O2 - + .45*r220*MCO3*HO2 + 2*r221*MCO3*MCO3 + r222*MCO3*NO + r223*MCO3*NO3 + .2*r224*MEKO2*HO2 - + r225*MEKO2*NO + .28*r229*MVK*O3 + .08*r262*ISOP*O3 + .06*r317*BCARY*O3 + .06*r320*MTERP*O3 - + .65*r338*TERPROD2*OH - - 2*r168*CH3CO3*CH3CO3 - r169*CH3O2*CH3CO3 - r170*HO2*CH3CO3 - r171*NO*CH3CO3 - - r182*M*NO2*CH3CO3 - r209*MACRO2*CH3CO3 - r242*ISOPAO2*CH3CO3 - r247*ISOPBO2*CH3CO3 - - r256*ISOPNO3*CH3CO3 - r267*XO2*CH3CO3 + + .5*j64*TEPOMUC + .65*j69*TERPROD2 + r184*M*PAN + r166*CH3CHO*NO3 + r167*CH3CHO*OH + + .5*r174*CH3COOOH*OH + r192*CH3COCHO*NO3 + r193*CH3COCHO*OH + .3*r199*RO2*CH3O2 + + .15*r200*RO2*HO2 + r201*RO2*NO + .53*r210*MACRO2*CH3CO3 + .26*r211*MACRO2*CH3O2 + + .53*r213*MACRO2*NO3 + .53*r214*MACRO2*NO + .1*r216*MACR*O3 + r220*MCO3*CH3O2 + + .45*r221*MCO3*HO2 + 2*r222*MCO3*MCO3 + r223*MCO3*NO + r224*MCO3*NO3 + .2*r225*MEKO2*HO2 + + r226*MEKO2*NO + .28*r230*MVK*O3 + .08*r263*ISOP*O3 + .06*r318*BCARY*O3 + .06*r321*MTERP*O3 + + .65*r339*TERPROD2*OH + - 2*r169*CH3CO3*CH3CO3 - r170*CH3O2*CH3CO3 - r171*HO2*CH3CO3 - r172*NO*CH3CO3 + - r183*M*NO2*CH3CO3 - r210*MACRO2*CH3CO3 - r243*ISOPAO2*CH3CO3 - r248*ISOPBO2*CH3CO3 + - r257*ISOPNO3*CH3CO3 - r268*XO2*CH3CO3 d(CH3O2)/dt = j34*CH3CHO + j35*CH3COCH3 + j37*CH3COOOH + j40*CH4 + .3*j55*MVK + .4*j60*PAN + j87*CH3BR - + j89*CH3CL + r53*CL*CH4 + r109*F*CH4 + .7*r141*CH3OOH*OH + r142*CH4*OH + r148*O1D*CH4 - + 2*r168*CH3CO3*CH3CO3 + .9*r169*CH3CO3*CH3O2 + .45*r170*CH3CO3*HO2 + r171*CH3CO3*NO - + r172*CH3COOH*OH + .28*r185*C3H6*O3 + r209*MACRO2*CH3CO3 + r218*MCO3*CH3CO3 - + r242*ISOPAO2*CH3CO3 + r247*ISOPBO2*CH3CO3 + r256*ISOPNO3*CH3CO3 + .05*r262*ISOP*O3 - + r267*XO2*CH3CO3 + .33*r287*DICARBO2*HO2 + .83*r288*DICARBO2*NO + .07*r293*MDIALO2*HO2 - + .17*r294*MDIALO2*NO - - r59*CLO*CH3O2 - 2*r136*CH3O2*CH3O2 - 2*r137*CH3O2*CH3O2 - r138*HO2*CH3O2 - r139*NO*CH3O2 - - r158*C2H5O2*CH3O2 - r169*CH3CO3*CH3O2 - r186*C3H7O2*CH3O2 - r198*RO2*CH3O2 - - r210*MACRO2*CH3O2 - r219*MCO3*CH3O2 - r243*ISOPAO2*CH3O2 - r248*ISOPBO2*CH3O2 - - r257*ISOPNO3*CH3O2 - r268*XO2*CH3O2 - r322*NTERPO2*CH3O2 - r327*TERP2O2*CH3O2 - - r332*TERPO2*CH3O2 + + j89*CH3CL + r54*CL*CH4 + r110*F*CH4 + .7*r142*CH3OOH*OH + r143*CH4*OH + r149*O1D*CH4 + + 2*r169*CH3CO3*CH3CO3 + .9*r170*CH3CO3*CH3O2 + .49*r171*CH3CO3*HO2 + r172*CH3CO3*NO + + r173*CH3COOH*OH + .28*r186*C3H6*O3 + r210*MACRO2*CH3CO3 + r219*MCO3*CH3CO3 + + r243*ISOPAO2*CH3CO3 + r248*ISOPBO2*CH3CO3 + r257*ISOPNO3*CH3CO3 + .05*r263*ISOP*O3 + + r268*XO2*CH3CO3 + .33*r288*DICARBO2*HO2 + .83*r289*DICARBO2*NO + .07*r294*MDIALO2*HO2 + + .17*r295*MDIALO2*NO + - r60*CLO*CH3O2 - 2*r137*CH3O2*CH3O2 - 2*r138*CH3O2*CH3O2 - r139*HO2*CH3O2 - r140*NO*CH3O2 + - r159*C2H5O2*CH3O2 - r170*CH3CO3*CH3O2 - r187*C3H7O2*CH3O2 - r199*RO2*CH3O2 + - r211*MACRO2*CH3O2 - r220*MCO3*CH3O2 - r244*ISOPAO2*CH3O2 - r249*ISOPBO2*CH3O2 + - r258*ISOPNO3*CH3O2 - r269*XO2*CH3O2 - r323*NTERPO2*CH3O2 - r328*TERP2O2*CH3O2 + - r333*TERPO2*CH3O2 d(DICARBO2)/dt = .6*j25*BIGALD2 - - r287*HO2*DICARBO2 - r288*NO*DICARBO2 - r289*M*NO2*DICARBO2 - d(ENEO2)/dt = r205*BIGENE*OH - - r206*NO*ENEO2 - r207*NO*ENEO2 - d(EO)/dt = j42*EOOH + .75*r175*EO2*NO - - r176*EO - r177*O2*EO - d(EO2)/dt = r181*M*C2H4*OH - - r174*HO2*EO2 - r175*NO*EO2 + - r288*HO2*DICARBO2 - r289*NO*DICARBO2 - r290*M*NO2*DICARBO2 + d(ENEO2)/dt = r206*BIGENE*OH + - r207*NO*ENEO2 - r208*NO*ENEO2 + d(EO)/dt = j42*EOOH + .75*r176*EO2*NO + - r177*EO - r178*O2*EO + d(EO2)/dt = r182*M*C2H4*OH + - r175*HO2*EO2 - r176*NO*EO2 d(HO2)/dt = j11*HO2NO2 + j19*ALKNIT + .9*j20*ALKOOH + j21*BENZOOH + 1.5*j22*BEPOMUC + .56*j23*BIGALD + j24*BIGALD1 + .6*j25*BIGALD2 + .6*j26*BIGALD3 + j27*BIGALD4 + j28*BZOOH + j29*C2H5OOH + j30*C3H7OOH + j34*CH3CHO + j36*CH3COCHO + 2*j43*GLYALD + 2*j44*GLYOXAL + .67*j45*HONITR + j46*HPALD + j47*HYAC + j48*ISOPNOOH + j49*ISOPOOH + 1.34*j50*MACR + .66*j51*MACR + j56*NC4CHO + j61*PHENOOH + j62*POOH + j64*TEPOMUC + j65*TERP2OOH + j66*TERPNIT + j67*TERPOOH - + j68*TERPROD1 + 1.2*j69*TERPROD2 + j70*TOLOOH + j72*XYLENOOH + j73*XYLOLOOH + r15*O2*M*H - + r50*M*HO2NO2 + r146*HOCH2OO + r176*EO + r177*O2*EO + r250*ISOPBO2 + r11*H2O2*O + r20*OH*H2O2 - + r23*OH*O3 + r39*NO3*OH + r52*CL*CH2O + r55*CL*H2O2 + r59*CLO*CH3O2 + r70*CLO*OH + r88*BR*CH2O - + r100*BRO*OH + r117*CH3BR*CL + r118*CH3BR*OH + r120*CH3CL*CL + r121*CH3CL*OH + r133*CH2O*NO3 - + r134*CH2O*O + 2*r136*CH3O2*CH3O2 + r139*CH3O2*NO + r140*CH3OH*OH + r143*M*HCN*OH - + r144*HCOOH*OH + r147*HOCH2OO*NO + r149*O1D*CH4 + r152*CO*OH + .35*r154*M*C2H2*OH - + .13*r156*C2H4*O3 + 1.2*r157*C2H5O2*C2H5O2 + r158*C2H5O2*CH3O2 + r160*C2H5O2*NO + r161*C2H5OH*OH - + r167*CH3CN*OH + .9*r169*CH3CO3*CH3O2 + .25*r175*EO2*NO + r178*GLYALD*OH + r179*GLYOXAL*OH - + .28*r185*C3H6*O3 + r186*C3H7O2*CH3O2 + r188*C3H7O2*NO + r193*HYAC*OH + r196*PO2*NO - + .3*r198*RO2*CH3O2 + r206*ENEO2*NO + r208*HONITR*OH + .47*r209*MACRO2*CH3CO3 - + .73*r210*MACRO2*CH3O2 + .47*r212*MACRO2*NO3 + .47*r213*MACRO2*NO + .14*r215*MACR*O3 - + .2*r217*MACROOH*OH + r219*MCO3*CH3O2 + .5*r228*M*MPAN*OH + .28*r229*MVK*O3 + r235*ALKO2*NO - + r242*ISOPAO2*CH3CO3 + r243*ISOPAO2*CH3O2 + .92*r245*ISOPAO2*NO + r246*ISOPAO2*NO3 - + r247*ISOPBO2*CH3CO3 + r248*ISOPBO2*CH3O2 + .92*r251*ISOPBO2*NO + r252*ISOPBO2*NO3 - + .3*r253*ISOPNITA*OH + r254*ISOPNITB*OH + r256*ISOPNO3*CH3CO3 + 1.2*r257*ISOPNO3*CH3O2 - + r259*ISOPNO3*NO + r260*ISOPNO3*NO3 + r261*ISOPNOOH*OH + .37*r262*ISOP*O3 + r265*NC4CH2OH*OH - + r266*NC4CHO*OH + r267*XO2*CH3CO3 + .8*r268*XO2*CH3O2 + r270*XO2*NO + r271*XO2*NO3 - + .65*r275*BENZENE*OH + r277*BENZO2*NO + r282*BZOO*NO + .73*r286*CRESOL*OH - + .07*r287*DICARBO2*HO2 + .17*r288*DICARBO2*NO + .16*r290*MALO2*HO2 + .4*r291*MALO2*NO - + .33*r293*MDIALO2*HO2 + .83*r294*MDIALO2*NO + r297*PHENO2*NO + .8*r298*PHENOL*OH + r304*TOLO2*NO - + .28*r306*TOLUENE*OH + .38*r308*XYLENES*OH + r310*XYLENO2*NO + r313*XYLOLO2*NO - + .63*r314*XYLOL*OH + .57*r317*BCARY*O3 + .57*r320*MTERP*O3 + .5*r322*NTERPO2*CH3O2 - + r327*TERP2O2*CH3O2 + .9*r329*TERP2O2*NO + r332*TERPO2*CH3O2 + .8*r334*TERPO2*NO - + .2*r338*TERPROD2*OH + r344*M*SO2*OH + .5*r354*DMS*OH - - r358*HO2 - r12*H*HO2 - r13*H*HO2 - r14*H*HO2 - r16*O*HO2 - r17*O3*HO2 - r21*OH*HO2 - - 2*r26*HO2*HO2 - r36*NO3*HO2 - r41*NO*HO2 - r46*M*NO2*HO2 - r56*CL*HO2 - r57*CL*HO2 - - r63*CLO*HO2 - r89*BR*HO2 - r95*BRO*HO2 - r132*CH2O*HO2 - r138*CH3O2*HO2 - r145*HOCH2OO*HO2 - - r159*C2H5O2*HO2 - r170*CH3CO3*HO2 - r174*EO2*HO2 - r187*C3H7O2*HO2 - r195*PO2*HO2 - - r199*RO2*HO2 - r211*MACRO2*HO2 - r220*MCO3*HO2 - r224*MEKO2*HO2 - r234*ALKO2*HO2 - - r244*ISOPAO2*HO2 - r249*ISOPBO2*HO2 - r258*ISOPNO3*HO2 - r269*XO2*HO2 - r273*ACBZO2*HO2 - - r276*BENZO2*HO2 - r280*BZOO*HO2 - r283*C6H5O2*HO2 - r287*DICARBO2*HO2 - r290*MALO2*HO2 - - r293*MDIALO2*HO2 - r296*PHENO2*HO2 - r303*TOLO2*HO2 - r309*XYLENO2*HO2 - r312*XYLOLO2*HO2 - - r323*NTERPO2*HO2 - r328*TERP2O2*HO2 - r333*TERPO2*HO2 - d(HOCH2OO)/dt = r132*CH2O*HO2 - - r146*HOCH2OO - r145*HO2*HOCH2OO - r147*NO*HOCH2OO - d(ISOPAO2)/dt = .6*r263*ISOP*OH - - r242*CH3CO3*ISOPAO2 - r243*CH3O2*ISOPAO2 - r244*HO2*ISOPAO2 - r245*NO*ISOPAO2 - - r246*NO3*ISOPAO2 - d(ISOPBO2)/dt = .4*r263*ISOP*OH - - r250*ISOPBO2 - r247*CH3CO3*ISOPBO2 - r248*CH3O2*ISOPBO2 - r249*HO2*ISOPBO2 - - r251*NO*ISOPBO2 - r252*NO3*ISOPBO2 + + j68*TERPROD1 + 1.2*j69*TERPROD2 + j70*TOLOOH + j72*XYLENOOH + j73*XYLOLOOH + r16*O2*M*H + + r51*M*HO2NO2 + r147*HOCH2OO + r177*EO + r178*O2*EO + r251*ISOPBO2 + r12*H2O2*O + r21*OH*H2O2 + + r24*OH*O3 + r40*NO3*OH + r53*CL*CH2O + r56*CL*H2O2 + r60*CLO*CH3O2 + r71*CLO*OH + r89*BR*CH2O + + r101*BRO*OH + r118*CH3BR*CL + r119*CH3BR*OH + r121*CH3CL*CL + r122*CH3CL*OH + r134*CH2O*NO3 + + r135*CH2O*O + 2*r137*CH3O2*CH3O2 + r140*CH3O2*NO + r141*CH3OH*OH + r144*M*HCN*OH + + r145*HCOOH*OH + r148*HOCH2OO*NO + r150*O1D*CH4 + r153*CO*OH + .35*r155*M*C2H2*OH + + .13*r157*C2H4*O3 + 1.2*r158*C2H5O2*C2H5O2 + r159*C2H5O2*CH3O2 + r161*C2H5O2*NO + r162*C2H5OH*OH + + r168*CH3CN*OH + .9*r170*CH3CO3*CH3O2 + .25*r176*EO2*NO + r179*GLYALD*OH + r180*GLYOXAL*OH + + .28*r186*C3H6*O3 + r187*C3H7O2*CH3O2 + r189*C3H7O2*NO + r194*HYAC*OH + r197*PO2*NO + + .3*r199*RO2*CH3O2 + r207*ENEO2*NO + r209*HONITR*OH + .47*r210*MACRO2*CH3CO3 + + .73*r211*MACRO2*CH3O2 + .47*r213*MACRO2*NO3 + .47*r214*MACRO2*NO + .14*r216*MACR*O3 + + .2*r218*MACROOH*OH + r220*MCO3*CH3O2 + .5*r229*M*MPAN*OH + .28*r230*MVK*O3 + r236*ALKO2*NO + + r243*ISOPAO2*CH3CO3 + r244*ISOPAO2*CH3O2 + .92*r246*ISOPAO2*NO + r247*ISOPAO2*NO3 + + r248*ISOPBO2*CH3CO3 + r249*ISOPBO2*CH3O2 + .92*r252*ISOPBO2*NO + r253*ISOPBO2*NO3 + + .3*r254*ISOPNITA*OH + r255*ISOPNITB*OH + r257*ISOPNO3*CH3CO3 + 1.2*r258*ISOPNO3*CH3O2 + + r260*ISOPNO3*NO + r261*ISOPNO3*NO3 + r262*ISOPNOOH*OH + .37*r263*ISOP*O3 + r266*NC4CH2OH*OH + + r267*NC4CHO*OH + r268*XO2*CH3CO3 + .8*r269*XO2*CH3O2 + r271*XO2*NO + r272*XO2*NO3 + + .65*r276*BENZENE*OH + r278*BENZO2*NO + r283*BZOO*NO + .73*r287*CRESOL*OH + + .07*r288*DICARBO2*HO2 + .17*r289*DICARBO2*NO + .16*r291*MALO2*HO2 + .4*r292*MALO2*NO + + .33*r294*MDIALO2*HO2 + .83*r295*MDIALO2*NO + r298*PHENO2*NO + .8*r299*PHENOL*OH + r305*TOLO2*NO + + .28*r307*TOLUENE*OH + .38*r309*XYLENES*OH + r311*XYLENO2*NO + r314*XYLOLO2*NO + + .63*r315*XYLOL*OH + .57*r318*BCARY*O3 + .57*r321*MTERP*O3 + .5*r323*NTERPO2*CH3O2 + + r328*TERP2O2*CH3O2 + .9*r330*TERP2O2*NO + r333*TERPO2*CH3O2 + .8*r335*TERPO2*NO + + .2*r339*TERPROD2*OH + r345*M*SO2*OH + .5*r355*DMS*OH + - r358*HO2 - r13*H*HO2 - r14*H*HO2 - r15*H*HO2 - r17*O*HO2 - r18*O3*HO2 - r22*OH*HO2 + - 2*r27*HO2*HO2 - r37*NO3*HO2 - r42*NO*HO2 - r47*M*NO2*HO2 - r57*CL*HO2 - r58*CL*HO2 + - r64*CLO*HO2 - r90*BR*HO2 - r96*BRO*HO2 - r133*CH2O*HO2 - r139*CH3O2*HO2 - r146*HOCH2OO*HO2 + - r160*C2H5O2*HO2 - r171*CH3CO3*HO2 - r175*EO2*HO2 - r188*C3H7O2*HO2 - r196*PO2*HO2 + - r200*RO2*HO2 - r212*MACRO2*HO2 - r221*MCO3*HO2 - r225*MEKO2*HO2 - r235*ALKO2*HO2 + - r245*ISOPAO2*HO2 - r250*ISOPBO2*HO2 - r259*ISOPNO3*HO2 - r270*XO2*HO2 - r274*ACBZO2*HO2 + - r277*BENZO2*HO2 - r281*BZOO*HO2 - r284*C6H5O2*HO2 - r288*DICARBO2*HO2 - r291*MALO2*HO2 + - r294*MDIALO2*HO2 - r297*PHENO2*HO2 - r304*TOLO2*HO2 - r310*XYLENO2*HO2 - r313*XYLOLO2*HO2 + - r324*NTERPO2*HO2 - r329*TERP2O2*HO2 - r334*TERPO2*HO2 + d(HOCH2OO)/dt = r133*CH2O*HO2 + - r147*HOCH2OO - r146*HO2*HOCH2OO - r148*NO*HOCH2OO + d(ISOPAO2)/dt = .6*r264*ISOP*OH + - r243*CH3CO3*ISOPAO2 - r244*CH3O2*ISOPAO2 - r245*HO2*ISOPAO2 - r246*NO*ISOPAO2 + - r247*NO3*ISOPAO2 + d(ISOPBO2)/dt = .4*r264*ISOP*OH + - r251*ISOPBO2 - r248*CH3CO3*ISOPBO2 - r249*CH3O2*ISOPBO2 - r250*HO2*ISOPBO2 + - r252*NO*ISOPBO2 - r253*NO3*ISOPBO2 d(ISOPO2VBS)/dt = r383*ISOP*OH - r380*HO2*ISOPO2VBS - r381*NO*ISOPO2VBS d(IVOCO2VBS)/dt = r386*IVOC*OH - r384*HO2*IVOCO2VBS - r385*NO*IVOCO2VBS - d(MACRO2)/dt = .5*r216*MACR*OH + .2*r217*MACROOH*OH + r230*MVK*OH - - r209*CH3CO3*MACRO2 - r210*CH3O2*MACRO2 - r211*HO2*MACRO2 - r212*NO3*MACRO2 - r213*NO*MACRO2 - - r214*NO*MACRO2 + d(MACRO2)/dt = .5*r217*MACR*OH + .2*r218*MACROOH*OH + r231*MVK*OH + - r210*CH3CO3*MACRO2 - r211*CH3O2*MACRO2 - r212*HO2*MACRO2 - r213*NO3*MACRO2 - r214*NO*MACRO2 + - r215*NO*MACRO2 d(MALO2)/dt = .6*j24*BIGALD1 - - r290*HO2*MALO2 - r291*NO*MALO2 - r292*M*NO2*MALO2 - d(MCO3)/dt = .66*j50*MACR + j54*MPAN + r232*M*MPAN + .5*r216*MACR*OH + .5*r217*MACROOH*OH - - r218*CH3CO3*MCO3 - r219*CH3O2*MCO3 - r220*HO2*MCO3 - 2*r221*MCO3*MCO3 - r222*NO*MCO3 - - r223*NO3*MCO3 - r231*M*NO2*MCO3 + - r291*HO2*MALO2 - r292*NO*MALO2 - r293*M*NO2*MALO2 + d(MCO3)/dt = .66*j50*MACR + j54*MPAN + r233*M*MPAN + .5*r217*MACR*OH + .5*r218*MACROOH*OH + - r219*CH3CO3*MCO3 - r220*CH3O2*MCO3 - r221*HO2*MCO3 - 2*r222*MCO3*MCO3 - r223*NO*MCO3 + - r224*NO3*MCO3 - r232*M*NO2*MCO3 d(MDIALO2)/dt = .6*j26*BIGALD3 - - r293*HO2*MDIALO2 - r294*NO*MDIALO2 - r295*M*NO2*MDIALO2 - d(MEKO2)/dt = r226*MEK*OH + r227*MEKOOH*OH - - r224*HO2*MEKO2 - r225*NO*MEKO2 + - r294*HO2*MDIALO2 - r295*NO*MDIALO2 - r296*M*NO2*MDIALO2 + d(MEKO2)/dt = r227*MEK*OH + r228*MEKOOH*OH + - r225*HO2*MEKO2 - r226*NO*MEKO2 d(MTERPO2VBS)/dt = r391*MTERP*OH - r388*HO2*MTERPO2VBS - r389*NO*MTERPO2VBS - d(NTERPO2)/dt = r316*BCARY*NO3 + r319*MTERP*NO3 + r326*NTERPOOH*OH + .5*r336*TERPROD1*NO3 - - r322*CH3O2*NTERPO2 - r323*HO2*NTERPO2 - r324*NO*NTERPO2 - r325*NO3*NTERPO2 + d(NTERPO2)/dt = r317*BCARY*NO3 + r320*MTERP*NO3 + r327*NTERPOOH*OH + .5*r337*TERPROD1*NO3 + - r323*CH3O2*NTERPO2 - r324*HO2*NTERPO2 - r325*NO*NTERPO2 - r326*NO3*NTERPO2 d(O1D)/dt = j5*O2 + j1*H2O + j7*O3 + j12*N2O - - r4*N2*O1D - r5*O2*O1D - r2*H2*O1D - r3*H2O*O1D - r6*O3*O1D - r44*N2O*O1D - r45*N2O*O1D - - r77*CCL4*O1D - r78*CF2CLBR*O1D - r79*CFC11*O1D - r80*CFC113*O1D - r81*CFC114*O1D - - r82*CFC115*O1D - r83*CFC12*O1D - r84*HCL*O1D - r85*HCL*O1D - r104*CF3BR*O1D - r105*CHBR3*O1D - - r106*H2402*O1D - r107*HBR*O1D - r108*HBR*O1D - r113*COF2*O1D - r114*COFCL*O1D - - r127*CH2BR2*O1D - r128*CH3BR*O1D - r129*HCFC141B*O1D - r130*HCFC142B*O1D - r131*HCFC22*O1D - - r148*CH4*O1D - r149*CH4*O1D - r150*CH4*O1D - r151*HCN*O1D + - r4*N2*O1D - r5*O2*O1D - r2*H2*O1D - r3*H2O*O1D - r6*O3*O1D - r7*O3*O1D - r45*N2O*O1D + - r46*N2O*O1D - r78*CCL4*O1D - r79*CF2CLBR*O1D - r80*CFC11*O1D - r81*CFC113*O1D - r82*CFC114*O1D + - r83*CFC115*O1D - r84*CFC12*O1D - r85*HCL*O1D - r86*HCL*O1D - r105*CF3BR*O1D - r106*CHBR3*O1D + - r107*H2402*O1D - r108*HBR*O1D - r109*HBR*O1D - r114*COF2*O1D - r115*COFCL*O1D + - r128*CH2BR2*O1D - r129*CH3BR*O1D - r130*HCFC141B*O1D - r131*HCFC142B*O1D - r132*HCFC22*O1D + - r149*CH4*O1D - r150*CH4*O1D - r151*CH4*O1D - r152*HCN*O1D d(OH)/dt = j2*H2O + 2*j4*H2O2 + j9*HNO3 + j10*HO2NO2 + j20*ALKOOH + j21*BENZOOH + j28*BZOOH + j29*C2H5OOH + j30*C3H7OOH + j31*C6H5OOH + j37*CH3COOOH + j38*CH3OOH + .33*j39*CH4 + j42*EOOH + j46*HPALD + j49*ISOPOOH + j53*MEKOOH + j58*NTERPOOH + j61*PHENOOH + j62*POOH + j63*ROOH + j65*TERP2OOH + j67*TERPOOH + j70*TOLOOH + j71*XOOH + j72*XYLENOOH + j73*XYLOLOOH + j105*HOBR + j106*HOCL - + .5*r366*NO2 + r2*O1D*H2 + 2*r3*O1D*H2O + r10*H2*O + r11*H2O2*O + 2*r13*H*HO2 + r16*HO2*O - + r17*HO2*O3 + r18*H*O3 + r36*NO3*HO2 + r41*NO*HO2 + r57*CL*HO2 + r72*HCL*O + r75*HOCL*O - + r84*O1D*HCL + r101*HBR*O + r103*HOBR*O + r107*O1D*HBR + r111*F*H2O + r134*CH2O*O - + .3*r141*CH3OOH*OH + r148*O1D*CH4 + r151*O1D*HCN + .65*r154*M*C2H2*OH + .13*r156*C2H4*O3 - + .5*r162*C2H5OOH*OH + .45*r170*CH3CO3*HO2 + .36*r185*C3H6*O3 + .5*r197*POOH*OH + .15*r199*RO2*HO2 - + .24*r215*MACR*O3 + .1*r217*MACROOH*OH + .45*r220*MCO3*HO2 + .2*r224*MEKO2*HO2 + .36*r229*MVK*O3 - + .32*r262*ISOP*O3 + .6*r264*ISOPOOH*OH + .5*r272*XOOH*OH + .4*r273*ACBZO2*HO2 - + .4*r287*DICARBO2*HO2 + .4*r293*MDIALO2*HO2 + .63*r317*BCARY*O3 + .63*r320*MTERP*O3 - - r19*H2*OH - r20*H2O2*OH - r21*HO2*OH - r22*O*OH - r23*O3*OH - 2*r24*OH*OH - 2*r25*M*OH*OH - - r27*HO2NO2*OH - r39*NO3*OH - r40*N*OH - r48*M*NO2*OH - r49*HNO3*OH - r68*CLONO2*OH - - r70*CLO*OH - r71*CLO*OH - r73*HCL*OH - r76*HOCL*OH - r100*BRO*OH - r102*HBR*OH - - r116*CH2BR2*OH - r118*CH3BR*OH - r119*CH3CCL3*OH - r121*CH3CL*OH - r123*CHBR3*OH - - r124*HCFC141B*OH - r125*HCFC142B*OH - r126*HCFC22*OH - r135*CH2O*OH - r140*CH3OH*OH - - r141*CH3OOH*OH - r142*CH4*OH - r143*M*HCN*OH - r144*HCOOH*OH - r152*CO*OH - r154*M*C2H2*OH - - r161*C2H5OH*OH - r162*C2H5OOH*OH - r164*C2H6*OH - r166*CH3CHO*OH - r167*CH3CN*OH - - r172*CH3COOH*OH - r173*CH3COOOH*OH - r178*GLYALD*OH - r179*GLYOXAL*OH - r180*PAN*OH - - r181*M*C2H4*OH - r189*C3H7OOH*OH - r190*C3H8*OH - r192*CH3COCHO*OH - r193*HYAC*OH - r194*NOA*OH - - r197*POOH*OH - r201*ROOH*OH - r202*M*C3H6*OH - r203*CH3COCH3*OH - r205*BIGENE*OH - - r208*HONITR*OH - r216*MACR*OH - r217*MACROOH*OH - r226*MEK*OH - r227*MEKOOH*OH - r228*M*MPAN*OH - - r230*MVK*OH - r233*ALKNIT*OH - r237*ALKOOH*OH - r238*BIGALK*OH - r239*HPALD*OH - - r240*HYDRALD*OH - r241*IEPOX*OH - r253*ISOPNITA*OH - r254*ISOPNITB*OH - r261*ISOPNOOH*OH - - r263*ISOP*OH - r264*ISOPOOH*OH - r265*NC4CH2OH*OH - r266*NC4CHO*OH - r272*XOOH*OH - - r275*BENZENE*OH - r278*BENZOOH*OH - r279*BZALD*OH - r281*BZOOH*OH - r285*C6H5OOH*OH - - r286*CRESOL*OH - r298*PHENOL*OH - r301*PHENOOH*OH - r305*TOLOOH*OH - r306*TOLUENE*OH - - r308*XYLENES*OH - r311*XYLENOOH*OH - r314*XYLOL*OH - r315*XYLOLOOH*OH - r318*BCARY*OH - - r321*MTERP*OH - r326*NTERPOOH*OH - r330*TERP2OOH*OH - r331*TERPNIT*OH - r335*TERPOOH*OH - - r337*TERPROD1*OH - r338*TERPROD2*OH - r340*DMS*OH - r342*OCS*OH - r344*M*SO2*OH - r348*S*OH - - r353*SO*OH - r354*DMS*OH - r356*NH3*OH - d(PHENO2)/dt = .2*r286*CRESOL*OH + .14*r298*PHENOL*OH + r301*PHENOOH*OH - - r296*HO2*PHENO2 - r297*NO*PHENO2 - d(PO2)/dt = .5*r197*POOH*OH + r202*M*C3H6*OH - - r195*HO2*PO2 - r196*NO*PO2 - d(RO2)/dt = .15*j69*TERPROD2 + r201*ROOH*OH + r203*CH3COCH3*OH + .06*r317*BCARY*O3 + .06*r320*MTERP*O3 - + .15*r338*TERPROD2*OH - - r198*CH3O2*RO2 - r199*HO2*RO2 - r200*NO*RO2 - d(TERP2O2)/dt = r330*TERP2OOH*OH + .5*r336*TERPROD1*NO3 + r337*TERPROD1*OH - - r327*CH3O2*TERP2O2 - r328*HO2*TERP2O2 - r329*NO*TERP2O2 - d(TERPO2)/dt = r318*BCARY*OH + r321*MTERP*OH + r335*TERPOOH*OH - - r332*CH3O2*TERPO2 - r333*HO2*TERPO2 - r334*NO*TERPO2 - d(TOLO2)/dt = r305*TOLOOH*OH + .65*r306*TOLUENE*OH - - r303*HO2*TOLO2 - r304*NO*TOLO2 + + .5*r366*NO2 + r2*O1D*H2 + 2*r3*O1D*H2O + r11*H2*O + r12*H2O2*O + 2*r14*H*HO2 + r17*HO2*O + + r18*HO2*O3 + r19*H*O3 + r37*NO3*HO2 + r42*NO*HO2 + r58*CL*HO2 + r73*HCL*O + r76*HOCL*O + + r85*O1D*HCL + r102*HBR*O + r104*HOBR*O + r108*O1D*HBR + r112*F*H2O + r135*CH2O*O + + .3*r142*CH3OOH*OH + r149*O1D*CH4 + r152*O1D*HCN + .65*r155*M*C2H2*OH + .13*r157*C2H4*O3 + + .5*r163*C2H5OOH*OH + .49*r171*CH3CO3*HO2 + .36*r186*C3H6*O3 + .5*r198*POOH*OH + .15*r200*RO2*HO2 + + .24*r216*MACR*O3 + .1*r218*MACROOH*OH + .45*r221*MCO3*HO2 + .2*r225*MEKO2*HO2 + .36*r230*MVK*O3 + + .32*r263*ISOP*O3 + .6*r265*ISOPOOH*OH + .5*r273*XOOH*OH + .4*r274*ACBZO2*HO2 + + .4*r288*DICARBO2*HO2 + .4*r294*MDIALO2*HO2 + .63*r318*BCARY*O3 + .63*r321*MTERP*O3 + - r20*H2*OH - r21*H2O2*OH - r22*HO2*OH - r23*O*OH - r24*O3*OH - 2*r25*OH*OH - 2*r26*M*OH*OH + - r28*HO2NO2*OH - r40*NO3*OH - r41*N*OH - r49*M*NO2*OH - r50*HNO3*OH - r69*CLONO2*OH + - r71*CLO*OH - r72*CLO*OH - r74*HCL*OH - r77*HOCL*OH - r101*BRO*OH - r103*HBR*OH + - r117*CH2BR2*OH - r119*CH3BR*OH - r120*CH3CCL3*OH - r122*CH3CL*OH - r124*CHBR3*OH + - r125*HCFC141B*OH - r126*HCFC142B*OH - r127*HCFC22*OH - r136*CH2O*OH - r141*CH3OH*OH + - r142*CH3OOH*OH - r143*CH4*OH - r144*M*HCN*OH - r145*HCOOH*OH - r153*CO*OH - r155*M*C2H2*OH + - r162*C2H5OH*OH - r163*C2H5OOH*OH - r165*C2H6*OH - r167*CH3CHO*OH - r168*CH3CN*OH + - r173*CH3COOH*OH - r174*CH3COOOH*OH - r179*GLYALD*OH - r180*GLYOXAL*OH - r181*PAN*OH + - r182*M*C2H4*OH - r190*C3H7OOH*OH - r191*C3H8*OH - r193*CH3COCHO*OH - r194*HYAC*OH - r195*NOA*OH + - r198*POOH*OH - r202*ROOH*OH - r203*M*C3H6*OH - r204*CH3COCH3*OH - r206*BIGENE*OH + - r209*HONITR*OH - r217*MACR*OH - r218*MACROOH*OH - r227*MEK*OH - r228*MEKOOH*OH - r229*M*MPAN*OH + - r231*MVK*OH - r234*ALKNIT*OH - r238*ALKOOH*OH - r239*BIGALK*OH - r240*HPALD*OH + - r241*HYDRALD*OH - r242*IEPOX*OH - r254*ISOPNITA*OH - r255*ISOPNITB*OH - r262*ISOPNOOH*OH + - r264*ISOP*OH - r265*ISOPOOH*OH - r266*NC4CH2OH*OH - r267*NC4CHO*OH - r273*XOOH*OH + - r276*BENZENE*OH - r279*BENZOOH*OH - r280*BZALD*OH - r282*BZOOH*OH - r286*C6H5OOH*OH + - r287*CRESOL*OH - r299*PHENOL*OH - r302*PHENOOH*OH - r306*TOLOOH*OH - r307*TOLUENE*OH + - r309*XYLENES*OH - r312*XYLENOOH*OH - r315*XYLOL*OH - r316*XYLOLOOH*OH - r319*BCARY*OH + - r322*MTERP*OH - r327*NTERPOOH*OH - r331*TERP2OOH*OH - r332*TERPNIT*OH - r336*TERPOOH*OH + - r338*TERPROD1*OH - r339*TERPROD2*OH - r341*DMS*OH - r343*OCS*OH - r345*M*SO2*OH - r349*S*OH + - r354*SO*OH - r355*DMS*OH - r357*NH3*OH + d(PHENO2)/dt = .2*r287*CRESOL*OH + .14*r299*PHENOL*OH + r302*PHENOOH*OH + - r297*HO2*PHENO2 - r298*NO*PHENO2 + d(PO2)/dt = .5*r198*POOH*OH + r203*M*C3H6*OH + - r196*HO2*PO2 - r197*NO*PO2 + d(RO2)/dt = .15*j69*TERPROD2 + r202*ROOH*OH + r204*CH3COCH3*OH + .06*r318*BCARY*O3 + .06*r321*MTERP*O3 + + .15*r339*TERPROD2*OH + - r199*CH3O2*RO2 - r200*HO2*RO2 - r201*NO*RO2 + d(TERP2O2)/dt = r331*TERP2OOH*OH + .5*r337*TERPROD1*NO3 + r338*TERPROD1*OH + - r328*CH3O2*TERP2O2 - r329*HO2*TERP2O2 - r330*NO*TERP2O2 + d(TERPO2)/dt = r319*BCARY*OH + r322*MTERP*OH + r336*TERPOOH*OH + - r333*CH3O2*TERPO2 - r334*HO2*TERPO2 - r335*NO*TERPO2 + d(TOLO2)/dt = r306*TOLOOH*OH + .65*r307*TOLUENE*OH + - r304*HO2*TOLO2 - r305*NO*TOLO2 d(TOLUO2VBS)/dt = r393*TOLUENE*OH - r394*HO2*TOLUO2VBS - r395*NO*TOLUO2VBS - d(XO2)/dt = r239*HPALD*OH + r240*HYDRALD*OH + r241*IEPOX*OH + .4*r264*ISOPOOH*OH + .5*r272*XOOH*OH - - r267*CH3CO3*XO2 - r268*CH3O2*XO2 - r269*HO2*XO2 - r270*NO*XO2 - r271*NO3*XO2 - d(XYLENO2)/dt = .56*r308*XYLENES*OH + r311*XYLENOOH*OH - - r309*HO2*XYLENO2 - r310*NO*XYLENO2 - d(XYLEO2VBS)/dt = r396*XYLENES*OH - - r397*HO2*XYLEO2VBS - r398*NO*XYLEO2VBS - d(XYLOLO2)/dt = .3*r314*XYLOL*OH + r315*XYLOLOOH*OH - - r312*HO2*XYLOLO2 - r313*NO*XYLOLO2 - d(H2O)/dt = .05*j39*CH4 + j109*H2SO4 + r358*HO2 + r14*H*HO2 + r19*OH*H2 + r20*OH*H2O2 + r21*OH*HO2 - + r24*OH*OH + r27*HO2NO2*OH + r49*HNO3*OH + r73*HCL*OH + r76*HOCL*OH + r102*HBR*OH - + r116*CH2BR2*OH + r118*CH3BR*OH + r119*CH3CCL3*OH + r121*CH3CL*OH + r126*HCFC22*OH - + r135*CH2O*OH + r141*CH3OOH*OH + r142*CH4*OH + r144*HCOOH*OH + r164*C2H6*OH + r166*CH3CHO*OH - + r172*CH3COOH*OH + r173*CH3COOOH*OH + r189*C3H7OOH*OH + r190*C3H8*OH + r192*CH3COCHO*OH - + r197*POOH*OH + r201*ROOH*OH + r203*CH3COCH3*OH + .5*r216*MACR*OH + r356*NH3*OH + r400*HOCL*HCL - + r406*HOCL*HCL + r407*HOBR*HCL + r411*HOCL*HCL + r412*HOBR*HCL - - j1*H2O - j2*H2O - j3*H2O - r3*O1D*H2O - r111*F*H2O - r355*SO3*H2O + d(XO2)/dt = r240*HPALD*OH + r241*HYDRALD*OH + r242*IEPOX*OH + .4*r265*ISOPOOH*OH + .5*r273*XOOH*OH + - r268*CH3CO3*XO2 - r269*CH3O2*XO2 - r270*HO2*XO2 - r271*NO*XO2 - r272*NO3*XO2 + d(XYLENO2)/dt = .56*r309*XYLENES*OH + r312*XYLENOOH*OH + - r310*HO2*XYLENO2 - r311*NO*XYLENO2 + d(XYLEO2VBS)/dt = r397*XYLENES*OH + - r398*HO2*XYLEO2VBS - r399*NO*XYLEO2VBS + d(XYLOLO2)/dt = .3*r315*XYLOL*OH + r316*XYLOLOOH*OH + - r313*HO2*XYLOLO2 - r314*NO*XYLOLO2 + d(H2O)/dt = .05*j39*CH4 + j109*H2SO4 + r358*HO2 + r15*H*HO2 + r20*OH*H2 + r21*OH*H2O2 + r22*OH*HO2 + + r25*OH*OH + r28*HO2NO2*OH + r50*HNO3*OH + r74*HCL*OH + r77*HOCL*OH + r103*HBR*OH + + r117*CH2BR2*OH + r119*CH3BR*OH + r120*CH3CCL3*OH + r122*CH3CL*OH + r127*HCFC22*OH + + r136*CH2O*OH + r142*CH3OOH*OH + r143*CH4*OH + r145*HCOOH*OH + r165*C2H6*OH + r167*CH3CHO*OH + + r173*CH3COOH*OH + r174*CH3COOOH*OH + r190*C3H7OOH*OH + r191*C3H8*OH + r193*CH3COCHO*OH + + r198*POOH*OH + r202*ROOH*OH + r204*CH3COCH3*OH + .5*r217*MACR*OH + r357*NH3*OH + r401*HOCL*HCL + + r407*HOCL*HCL + r408*HOBR*HCL + r412*HOCL*HCL + r413*HOBR*HCL + - j1*H2O - j2*H2O - j3*H2O - r3*O1D*H2O - r112*F*H2O - r356*SO3*H2O diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.in b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.in similarity index 98% rename from src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.in rename to src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.in index 23ab67fcd7..74961b36e7 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mech.in +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mech.in @@ -1,18 +1,17 @@ * Comments -* User-given Tag Description: TS1.2-simpleVBS -* Tag database identifier : MZ316_TS1.2_20221220 +* User-given Tag Description: T1S1_lowtop_mam5 +* Tag database identifier : MZ388_T1S1_20260129 * Tag created by : lke -* Tag created from branch : TS1.2 -* Tag created on : 2022-12-20 13:49:25.762835-07 +* Tag created from branch : T1S1 +* Tag created on : 2026-01-29 12:08:29.050203-07 * Comments for this tag follow: -* lke : 2022-12-20 : TS1 with JPL19 updates, NOx-dependent VBS-SOA +* lke : 2026-01-29 : T1.2 with original Strat, for low-top CESM3; MAM5; VBS-SOA; specified O2. SPECIES Solution ALKNIT -> C5H11ONO2, ALKOOH -> C5H12O2, - AOA_NH -> CO, bc_a1 -> C, bc_a4 -> C, BCARY -> C15H24, @@ -303,14 +302,13 @@ Solution classes Explicit - NHDEP NDEP + NHDEP End Explicit Implicit ALKNIT ALKOOH - AOA_NH bc_a1 bc_a4 BCARY @@ -700,6 +698,7 @@ [O1D_N2,cph=189.81] O1D + N2 -> O + N2 ; 2.15e-11, 110 [O1D_O2ab] O1D + O2 -> O + O2 ; 3.3e-11, 55 [O1D_O3] O1D + O3 -> O2 + O2 ; 1.2e-10 +[O1D_O3a] O1D + O3 -> O2 + 2*O ; 1.2e-10 [O_O3,cph=392.19] O + O3 -> 2*O2 ; 8e-12, -2060 [usr_O_O,cph=493.58] O + O + M -> O2 + M [usr_O_O2,cph=101.39] O + O2 + M -> O3 + M @@ -887,7 +886,7 @@ [CH3CN_OH] CH3CN + OH -> HO2 ; 7.8e-13, -1050 [CH3CO3_CH3CO3] CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 ; 2.9e-12, 500 [CH3CO3_CH3O2] CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 + 0.1*CH3COOH ; 2e-12, 500 -[CH3CO3_HO2] CH3CO3 + HO2 -> 0.4*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.45*OH + 0.45*CH3O2 ; 4.3e-13, 1040 +[CH3CO3_HO2] CH3CO3 + HO2 -> 0.36*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.49*OH + 0.49*CH3O2 + 0.49*CO2 ; 4.3e-13, 1040 [CH3CO3_NO] CH3CO3 + NO -> CH3O2 + CO2 + NO2 ; 8.1e-12, 270 [CH3COOH_OH] CH3COOH + OH -> CH3O2 + CO2 + H2O ; 3.15e-14, 920 [CH3COOOH_OH] CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O ; 1e-12 @@ -906,9 +905,9 @@ ********************************* [C3H6_NO3] C3H6 + NO3 -> NOA ; 4.6e-13, -1156 [C3H6_O3] C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH ; 6.5e-15, -1900 -[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 3.75e-13, -40 -[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 7.5e-13, 700 -[C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 4.2e-12, 180 +[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 1e-13, 557 +[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 1.41e-13, 1300 +[C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 2.7e-12, 360 [C3H7OOH_OH] C3H7OOH + OH -> H2O + C3H7O2 ; 3.8e-12, 200 [C3H8_OH] C3H8 + OH -> C3H7O2 + H2O ; 9.19e-12, -630 [CH3COCHO_NO3] CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 ; 1.4e-12, -1860 @@ -951,7 +950,7 @@ [MEKO2_NO] MEKO2 + NO -> CH3CO3 + CH3CHO + NO2 ; 4.2e-12, 180 [MEK_OH] MEK + OH -> MEKO2 ; 2.3e-12, -170 [MEKOOH_OH] MEKOOH + OH -> MEKO2 ; 3.8e-12, 200 -[MPAN_OH_M] MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 + M + 0.5*NDEP ; 8e-27, 3.5, 3e-11, 0, 0.5 +[MPAN_OH_M] MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 + 0.5*NDEP + M ; 8e-27, 3.5, 3e-11, 0, 0.5 [MVK_O3] MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*HCOOH ; 8.5e-16, -1520 [MVK_OH] MVK + OH -> MACRO2 ; 4.13e-12, 452 [tag_MCO3_NO2] MCO3 + NO2 + M -> MPAN + M ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 @@ -959,7 +958,7 @@ ********************************* *** C5 ********************************* -[ALKNIT_OH] ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 ; 1.6e-12 +[ALKNIT_OH] ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 ; 2.2e-12 [ALKO2_HO2] ALKO2 + HO2 -> ALKOOH ; 7.5e-13, 700 [ALKO2_NO] ALKO2 + NO -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK + NO2 ; 6.7e-12 [ALKO2_NOb] ALKO2 + NO -> ALKNIT ; 5.4e-14, 870 @@ -1095,7 +1094,6 @@ *** Tropospheric Aerosol ********************************* [NH3_OH] NH3 + OH -> H2O + 1*NHDEP ; 1.7e-12, -710 -[usr_GLYOXAL_aer] GLYOXAL -> SOAG0 [usr_HO2_aer] HO2 -> H2O [usr_HONITR_aer] HONITR -> HNO3 [usr_ISOPNITA_aer] ISOPNITA -> HNO3 @@ -1137,6 +1135,7 @@ [TOLUENE_OH_vbs] TOLUENE + OH -> TOLUENE + OH + TOLUO2VBS ; 1.7e-12, 352 [TOLUO2_HO2_vbs] TOLUO2VBS + HO2 -> HO2 + 0.1364*SOAG0 + 0.0101*SOAG1 + 0.0763*SOAG2 + 0.2157*SOAG3 + 0.0738*SOAG4 ; 7.5e-13, 700 [TOLUO2_NO_vbs] TOLUO2VBS + NO -> NO + 0.0154*SOAG0 + 0.0452*SOAG1 + 0.0966*SOAG2 + 0.0073*SOAG3 + 0.238*SOAG4 ; 2.6e-12, 365 +[usr_GLYOXAL_aer] GLYOXAL -> SOAG0 [XYLENES_OH_vbs] XYLENES + OH -> XYLENES + OH + XYLEO2VBS ; 1.7e-11 [XYLEO2_HO2_vbs] XYLEO2VBS + HO2 -> HO2 + 0.1677*SOAG0 + 0.0174*SOAG1 + 0.086*SOAG2 + 0.0512*SOAG3 + 0.1598*SOAG4 ; 7.5e-13, 700 [XYLEO2_NO_vbs] XYLEO2VBS + NO -> NO + 0.0063*SOAG0 + 0.0237*SOAG1 + 0.0025*SOAG2 + 0.011*SOAG3 + 0.1185*SOAG4 ; 2.6e-12, 365 @@ -1169,22 +1168,19 @@ End Reactions Ext Forcing + num_a4 <- dataset + pom_a4 <- dataset + bc_a4 <- dataset + SVOC <- dataset + SO2 <- dataset + NO2 <- dataset + CO <- dataset num_a1 <- dataset num_a2 <- dataset so4_a1 <- dataset so4_a2 <- dataset - so4_a5 <- dataset - num_a4 <- dataset - num_a5 <- dataset - SO2 <- dataset - NO2 <- dataset - pom_a4 <- dataset - bc_a4 <- dataset - CO <- dataset - SVOC <- dataset - AOA_NH + H2O <- dataset NO - N End Ext Forcing End Chemistry diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mods.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mods.F90 similarity index 84% rename from src/chemistry/pp_trop_strat_mam5_vbs/chem_mods.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/chem_mods.F90 index 27e935c7f1..707b37f5f5 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/chem_mods.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/chem_mods.F90 @@ -6,24 +6,24 @@ module chem_mods implicit none save integer, parameter :: phtcnt = 123, & ! number of photolysis reactions - rxntot = 541, & ! number of total reactions - gascnt = 418, & ! number of gas phase reactions + rxntot = 542, & ! number of total reactions + gascnt = 419, & ! number of gas phase reactions nabscol = 2, & ! number of absorbing column densities - gas_pcnst = 231, & ! number of "gas phase" species + gas_pcnst = 230, & ! number of "gas phase" species nfs = 3, & ! number of "fixed" species relcnt = 0, & ! number of relationship species grpcnt = 0, & ! number of group members - nzcnt = 2287, & ! number of non-zero matrix entries - extcnt = 16, & ! number of species with external forcing + nzcnt = 2286, & ! number of non-zero matrix entries + extcnt = 13, & ! number of species with external forcing clscnt1 = 2, & ! number of species in explicit class clscnt2 = 0, & ! number of species in hov class clscnt3 = 0, & ! number of species in ebi class - clscnt4 = 229, & ! number of species in implicit class + clscnt4 = 228, & ! number of species in implicit class clscnt5 = 0, & ! number of species in rodas class indexm = 1, & ! index of total atm density in invariant array indexh2o = 0, & ! index of water vapor density clsze = 1, & ! loop length for implicit chemistry - rxt_tag_cnt = 541, & + rxt_tag_cnt = 542, & enthalpy_cnt = 18, & nslvd = 41 integer :: clscnt(5) = 0 diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/m_rxt_id.F90 new file mode 100644 index 0000000000..df8e095cab --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/m_rxt_id.F90 @@ -0,0 +1,545 @@ + module m_rxt_id + implicit none + integer, parameter :: rid_jh2o_b = 1 + integer, parameter :: rid_jh2o_a = 2 + integer, parameter :: rid_jh2o_c = 3 + integer, parameter :: rid_jh2o2 = 4 + integer, parameter :: rid_jo2_a = 5 + integer, parameter :: rid_jo2_b = 6 + integer, parameter :: rid_jo3_a = 7 + integer, parameter :: rid_jo3_b = 8 + integer, parameter :: rid_jhno3 = 9 + integer, parameter :: rid_jho2no2_a = 10 + integer, parameter :: rid_jho2no2_b = 11 + integer, parameter :: rid_jn2o = 12 + integer, parameter :: rid_jn2o5_a = 13 + integer, parameter :: rid_jn2o5_b = 14 + integer, parameter :: rid_jno = 15 + integer, parameter :: rid_jno2 = 16 + integer, parameter :: rid_jno3_b = 17 + integer, parameter :: rid_jno3_a = 18 + integer, parameter :: rid_jalknit = 19 + integer, parameter :: rid_jalkooh = 20 + integer, parameter :: rid_jbenzooh = 21 + integer, parameter :: rid_jbepomuc = 22 + integer, parameter :: rid_jbigald = 23 + integer, parameter :: rid_jbigald1 = 24 + integer, parameter :: rid_jbigald2 = 25 + integer, parameter :: rid_jbigald3 = 26 + integer, parameter :: rid_jbigald4 = 27 + integer, parameter :: rid_jbzooh = 28 + integer, parameter :: rid_jc2h5ooh = 29 + integer, parameter :: rid_jc3h7ooh = 30 + integer, parameter :: rid_jc6h5ooh = 31 + integer, parameter :: rid_jch2o_b = 32 + integer, parameter :: rid_jch2o_a = 33 + integer, parameter :: rid_jch3cho = 34 + integer, parameter :: rid_jacet = 35 + integer, parameter :: rid_jmgly = 36 + integer, parameter :: rid_jch3co3h = 37 + integer, parameter :: rid_jch3ooh = 38 + integer, parameter :: rid_jch4_b = 39 + integer, parameter :: rid_jch4_a = 40 + integer, parameter :: rid_jco2 = 41 + integer, parameter :: rid_jeooh = 42 + integer, parameter :: rid_jglyald = 43 + integer, parameter :: rid_jglyoxal = 44 + integer, parameter :: rid_jhonitr = 45 + integer, parameter :: rid_jhpald = 46 + integer, parameter :: rid_jhyac = 47 + integer, parameter :: rid_jisopnooh = 48 + integer, parameter :: rid_jisopooh = 49 + integer, parameter :: rid_jmacr_a = 50 + integer, parameter :: rid_jmacr_b = 51 + integer, parameter :: rid_jmek = 52 + integer, parameter :: rid_jmekooh = 53 + integer, parameter :: rid_jmpan = 54 + integer, parameter :: rid_jmvk = 55 + integer, parameter :: rid_jnc4cho = 56 + integer, parameter :: rid_jnoa = 57 + integer, parameter :: rid_jnterpooh = 58 + integer, parameter :: rid_jonitr = 59 + integer, parameter :: rid_jpan = 60 + integer, parameter :: rid_jphenooh = 61 + integer, parameter :: rid_jpooh = 62 + integer, parameter :: rid_jrooh = 63 + integer, parameter :: rid_jtepomuc = 64 + integer, parameter :: rid_jterp2ooh = 65 + integer, parameter :: rid_jterpnit = 66 + integer, parameter :: rid_jterpooh = 67 + integer, parameter :: rid_jterprd1 = 68 + integer, parameter :: rid_jterprd2 = 69 + integer, parameter :: rid_jtolooh = 70 + integer, parameter :: rid_jxooh = 71 + integer, parameter :: rid_jxylenooh = 72 + integer, parameter :: rid_jxylolooh = 73 + integer, parameter :: rid_jbrcl = 74 + integer, parameter :: rid_jbro = 75 + integer, parameter :: rid_jbrono2_b = 76 + integer, parameter :: rid_jbrono2_a = 77 + integer, parameter :: rid_jccl4 = 78 + integer, parameter :: rid_jcf2clbr = 79 + integer, parameter :: rid_jcf3br = 80 + integer, parameter :: rid_jcfcl3 = 81 + integer, parameter :: rid_jcfc113 = 82 + integer, parameter :: rid_jcfc114 = 83 + integer, parameter :: rid_jcfc115 = 84 + integer, parameter :: rid_jcf2cl2 = 85 + integer, parameter :: rid_jch2br2 = 86 + integer, parameter :: rid_jch3br = 87 + integer, parameter :: rid_jch3ccl3 = 88 + integer, parameter :: rid_jch3cl = 89 + integer, parameter :: rid_jchbr3 = 90 + integer, parameter :: rid_jcl2 = 91 + integer, parameter :: rid_jcl2o2 = 92 + integer, parameter :: rid_jclo = 93 + integer, parameter :: rid_jclono2_a = 94 + integer, parameter :: rid_jclono2_b = 95 + integer, parameter :: rid_jcof2 = 96 + integer, parameter :: rid_jcofcl = 97 + integer, parameter :: rid_jh2402 = 98 + integer, parameter :: rid_jhbr = 99 + integer, parameter :: rid_jhcfc141b = 100 + integer, parameter :: rid_jhcfc142b = 101 + integer, parameter :: rid_jhcfc22 = 102 + integer, parameter :: rid_jhcl = 103 + integer, parameter :: rid_jhf = 104 + integer, parameter :: rid_jhobr = 105 + integer, parameter :: rid_jhocl = 106 + integer, parameter :: rid_joclo = 107 + integer, parameter :: rid_jsf6 = 108 + integer, parameter :: rid_jh2so4 = 109 + integer, parameter :: rid_jocs = 110 + integer, parameter :: rid_jso = 111 + integer, parameter :: rid_jso2 = 112 + integer, parameter :: rid_jso3 = 113 + integer, parameter :: rid_jsoa1_a1 = 114 + integer, parameter :: rid_jsoa1_a2 = 115 + integer, parameter :: rid_jsoa2_a1 = 116 + integer, parameter :: rid_jsoa2_a2 = 117 + integer, parameter :: rid_jsoa3_a1 = 118 + integer, parameter :: rid_jsoa3_a2 = 119 + integer, parameter :: rid_jsoa4_a1 = 120 + integer, parameter :: rid_jsoa4_a2 = 121 + integer, parameter :: rid_jsoa5_a1 = 122 + integer, parameter :: rid_jsoa5_a2 = 123 + integer, parameter :: rid_E90_tau = 124 + integer, parameter :: rid_O1D_H2 = 125 + integer, parameter :: rid_O1D_H2O = 126 + integer, parameter :: rid_O1D_N2 = 127 + integer, parameter :: rid_O1D_O2ab = 128 + integer, parameter :: rid_O1D_O3 = 129 + integer, parameter :: rid_O1D_O3a = 130 + integer, parameter :: rid_O_O3 = 131 + integer, parameter :: rid_usr_O_O = 132 + integer, parameter :: rid_usr_O_O2 = 133 + integer, parameter :: rid_H2_O = 134 + integer, parameter :: rid_H2O2_O = 135 + integer, parameter :: rid_H_HO2 = 136 + integer, parameter :: rid_H_HO2a = 137 + integer, parameter :: rid_H_HO2b = 138 + integer, parameter :: rid_H_O2 = 139 + integer, parameter :: rid_HO2_O = 140 + integer, parameter :: rid_HO2_O3 = 141 + integer, parameter :: rid_H_O3 = 142 + integer, parameter :: rid_OH_H2 = 143 + integer, parameter :: rid_OH_H2O2 = 144 + integer, parameter :: rid_OH_HO2 = 145 + integer, parameter :: rid_OH_O = 146 + integer, parameter :: rid_OH_O3 = 147 + integer, parameter :: rid_OH_OH = 148 + integer, parameter :: rid_OH_OH_M = 149 + integer, parameter :: rid_usr_HO2_HO2 = 150 + integer, parameter :: rid_HO2NO2_OH = 151 + integer, parameter :: rid_N_NO = 152 + integer, parameter :: rid_N_NO2a = 153 + integer, parameter :: rid_N_NO2b = 154 + integer, parameter :: rid_N_NO2c = 155 + integer, parameter :: rid_N_O2 = 156 + integer, parameter :: rid_NO2_O = 157 + integer, parameter :: rid_NO2_O3 = 158 + integer, parameter :: rid_NO2_O_M = 159 + integer, parameter :: rid_NO3_HO2 = 160 + integer, parameter :: rid_NO3_NO = 161 + integer, parameter :: rid_NO3_O = 162 + integer, parameter :: rid_NO3_OH = 163 + integer, parameter :: rid_N_OH = 164 + integer, parameter :: rid_NO_HO2 = 165 + integer, parameter :: rid_NO_O3 = 166 + integer, parameter :: rid_NO_O_M = 167 + integer, parameter :: rid_O1D_N2Oa = 168 + integer, parameter :: rid_O1D_N2Ob = 169 + integer, parameter :: rid_tag_NO2_HO2 = 170 + integer, parameter :: rid_tag_NO2_NO3 = 171 + integer, parameter :: rid_tag_NO2_OH = 172 + integer, parameter :: rid_usr_HNO3_OH = 173 + integer, parameter :: rid_usr_HO2NO2_M = 174 + integer, parameter :: rid_usr_N2O5_M = 175 + integer, parameter :: rid_CL_CH2O = 176 + integer, parameter :: rid_CL_CH4 = 177 + integer, parameter :: rid_CL_H2 = 178 + integer, parameter :: rid_CL_H2O2 = 179 + integer, parameter :: rid_CL_HO2a = 180 + integer, parameter :: rid_CL_HO2b = 181 + integer, parameter :: rid_CL_O3 = 182 + integer, parameter :: rid_CLO_CH3O2 = 183 + integer, parameter :: rid_CLO_CLOa = 184 + integer, parameter :: rid_CLO_CLOb = 185 + integer, parameter :: rid_CLO_CLOc = 186 + integer, parameter :: rid_CLO_HO2 = 187 + integer, parameter :: rid_CLO_NO = 188 + integer, parameter :: rid_CLONO2_CL = 189 + integer, parameter :: rid_CLO_NO2_M = 190 + integer, parameter :: rid_CLONO2_O = 191 + integer, parameter :: rid_CLONO2_OH = 192 + integer, parameter :: rid_CLO_O = 193 + integer, parameter :: rid_CLO_OHa = 194 + integer, parameter :: rid_CLO_OHb = 195 + integer, parameter :: rid_HCL_O = 196 + integer, parameter :: rid_HCL_OH = 197 + integer, parameter :: rid_HOCL_CL = 198 + integer, parameter :: rid_HOCL_O = 199 + integer, parameter :: rid_HOCL_OH = 200 + integer, parameter :: rid_O1D_CCL4 = 201 + integer, parameter :: rid_O1D_CF2CLBR = 202 + integer, parameter :: rid_O1D_CFC11 = 203 + integer, parameter :: rid_O1D_CFC113 = 204 + integer, parameter :: rid_O1D_CFC114 = 205 + integer, parameter :: rid_O1D_CFC115 = 206 + integer, parameter :: rid_O1D_CFC12 = 207 + integer, parameter :: rid_O1D_HCLa = 208 + integer, parameter :: rid_O1D_HCLb = 209 + integer, parameter :: rid_tag_CLO_CLO_M = 210 + integer, parameter :: rid_usr_CL2O2_M = 211 + integer, parameter :: rid_BR_CH2O = 212 + integer, parameter :: rid_BR_HO2 = 213 + integer, parameter :: rid_BR_O3 = 214 + integer, parameter :: rid_BRO_BRO = 215 + integer, parameter :: rid_BRO_CLOa = 216 + integer, parameter :: rid_BRO_CLOb = 217 + integer, parameter :: rid_BRO_CLOc = 218 + integer, parameter :: rid_BRO_HO2 = 219 + integer, parameter :: rid_BRO_NO = 220 + integer, parameter :: rid_BRO_NO2_M = 221 + integer, parameter :: rid_BRONO2_O = 222 + integer, parameter :: rid_BRO_O = 223 + integer, parameter :: rid_BRO_OH = 224 + integer, parameter :: rid_HBR_O = 225 + integer, parameter :: rid_HBR_OH = 226 + integer, parameter :: rid_HOBR_O = 227 + integer, parameter :: rid_O1D_CF3BR = 228 + integer, parameter :: rid_O1D_CHBR3 = 229 + integer, parameter :: rid_O1D_H2402 = 230 + integer, parameter :: rid_O1D_HBRa = 231 + integer, parameter :: rid_O1D_HBRb = 232 + integer, parameter :: rid_F_CH4 = 233 + integer, parameter :: rid_F_H2 = 234 + integer, parameter :: rid_F_H2O = 235 + integer, parameter :: rid_F_HNO3 = 236 + integer, parameter :: rid_O1D_COF2 = 237 + integer, parameter :: rid_O1D_COFCL = 238 + integer, parameter :: rid_CH2BR2_CL = 239 + integer, parameter :: rid_CH2BR2_OH = 240 + integer, parameter :: rid_CH3BR_CL = 241 + integer, parameter :: rid_CH3BR_OH = 242 + integer, parameter :: rid_CH3CCL3_OH = 243 + integer, parameter :: rid_CH3CL_CL = 244 + integer, parameter :: rid_CH3CL_OH = 245 + integer, parameter :: rid_CHBR3_CL = 246 + integer, parameter :: rid_CHBR3_OH = 247 + integer, parameter :: rid_HCFC141B_OH = 248 + integer, parameter :: rid_HCFC142B_OH = 249 + integer, parameter :: rid_HCFC22_OH = 250 + integer, parameter :: rid_O1D_CH2BR2 = 251 + integer, parameter :: rid_O1D_CH3BR = 252 + integer, parameter :: rid_O1D_HCFC141B = 253 + integer, parameter :: rid_O1D_HCFC142B = 254 + integer, parameter :: rid_O1D_HCFC22 = 255 + integer, parameter :: rid_CH2O_HO2 = 256 + integer, parameter :: rid_CH2O_NO3 = 257 + integer, parameter :: rid_CH2O_O = 258 + integer, parameter :: rid_CH2O_OH = 259 + integer, parameter :: rid_CH3O2_CH3O2a = 260 + integer, parameter :: rid_CH3O2_CH3O2b = 261 + integer, parameter :: rid_CH3O2_HO2 = 262 + integer, parameter :: rid_CH3O2_NO = 263 + integer, parameter :: rid_CH3OH_OH = 264 + integer, parameter :: rid_CH3OOH_OH = 265 + integer, parameter :: rid_CH4_OH = 266 + integer, parameter :: rid_HCN_OH = 267 + integer, parameter :: rid_HCOOH_OH = 268 + integer, parameter :: rid_HOCH2OO_HO2 = 269 + integer, parameter :: rid_HOCH2OO_M = 270 + integer, parameter :: rid_HOCH2OO_NO = 271 + integer, parameter :: rid_O1D_CH4a = 272 + integer, parameter :: rid_O1D_CH4b = 273 + integer, parameter :: rid_O1D_CH4c = 274 + integer, parameter :: rid_O1D_HCN = 275 + integer, parameter :: rid_usr_CO_OH = 276 + integer, parameter :: rid_C2H2_CL_M = 277 + integer, parameter :: rid_C2H2_OH_M = 278 + integer, parameter :: rid_C2H4_CL_M = 279 + integer, parameter :: rid_C2H4_O3 = 280 + integer, parameter :: rid_C2H5O2_C2H5O2 = 281 + integer, parameter :: rid_C2H5O2_CH3O2 = 282 + integer, parameter :: rid_C2H5O2_HO2 = 283 + integer, parameter :: rid_C2H5O2_NO = 284 + integer, parameter :: rid_C2H5OH_OH = 285 + integer, parameter :: rid_C2H5OOH_OH = 286 + integer, parameter :: rid_C2H6_CL = 287 + integer, parameter :: rid_C2H6_OH = 288 + integer, parameter :: rid_CH3CHO_NO3 = 289 + integer, parameter :: rid_CH3CHO_OH = 290 + integer, parameter :: rid_CH3CN_OH = 291 + integer, parameter :: rid_CH3CO3_CH3CO3 = 292 + integer, parameter :: rid_CH3CO3_CH3O2 = 293 + integer, parameter :: rid_CH3CO3_HO2 = 294 + integer, parameter :: rid_CH3CO3_NO = 295 + integer, parameter :: rid_CH3COOH_OH = 296 + integer, parameter :: rid_CH3COOOH_OH = 297 + integer, parameter :: rid_EO2_HO2 = 298 + integer, parameter :: rid_EO2_NO = 299 + integer, parameter :: rid_EO_M = 300 + integer, parameter :: rid_EO_O2 = 301 + integer, parameter :: rid_GLYALD_OH = 302 + integer, parameter :: rid_GLYOXAL_OH = 303 + integer, parameter :: rid_PAN_OH = 304 + integer, parameter :: rid_tag_C2H4_OH = 305 + integer, parameter :: rid_tag_CH3CO3_NO2 = 306 + integer, parameter :: rid_usr_PAN_M = 307 + integer, parameter :: rid_C3H6_NO3 = 308 + integer, parameter :: rid_C3H6_O3 = 309 + integer, parameter :: rid_C3H7O2_CH3O2 = 310 + integer, parameter :: rid_C3H7O2_HO2 = 311 + integer, parameter :: rid_C3H7O2_NO = 312 + integer, parameter :: rid_C3H7OOH_OH = 313 + integer, parameter :: rid_C3H8_OH = 314 + integer, parameter :: rid_CH3COCHO_NO3 = 315 + integer, parameter :: rid_CH3COCHO_OH = 316 + integer, parameter :: rid_HYAC_OH = 317 + integer, parameter :: rid_NOA_OH = 318 + integer, parameter :: rid_PO2_HO2 = 319 + integer, parameter :: rid_PO2_NO = 320 + integer, parameter :: rid_POOH_OH = 321 + integer, parameter :: rid_RO2_CH3O2 = 322 + integer, parameter :: rid_RO2_HO2 = 323 + integer, parameter :: rid_RO2_NO = 324 + integer, parameter :: rid_ROOH_OH = 325 + integer, parameter :: rid_tag_C3H6_OH = 326 + integer, parameter :: rid_usr_CH3COCH3_OH = 327 + integer, parameter :: rid_BIGENE_NO3 = 328 + integer, parameter :: rid_BIGENE_OH = 329 + integer, parameter :: rid_ENEO2_NO = 330 + integer, parameter :: rid_ENEO2_NOb = 331 + integer, parameter :: rid_HONITR_OH = 332 + integer, parameter :: rid_MACRO2_CH3CO3 = 333 + integer, parameter :: rid_MACRO2_CH3O2 = 334 + integer, parameter :: rid_MACRO2_HO2 = 335 + integer, parameter :: rid_MACRO2_NO3 = 336 + integer, parameter :: rid_MACRO2_NOa = 337 + integer, parameter :: rid_MACRO2_NOb = 338 + integer, parameter :: rid_MACR_O3 = 339 + integer, parameter :: rid_MACR_OH = 340 + integer, parameter :: rid_MACROOH_OH = 341 + integer, parameter :: rid_MCO3_CH3CO3 = 342 + integer, parameter :: rid_MCO3_CH3O2 = 343 + integer, parameter :: rid_MCO3_HO2 = 344 + integer, parameter :: rid_MCO3_MCO3 = 345 + integer, parameter :: rid_MCO3_NO = 346 + integer, parameter :: rid_MCO3_NO3 = 347 + integer, parameter :: rid_MEKO2_HO2 = 348 + integer, parameter :: rid_MEKO2_NO = 349 + integer, parameter :: rid_MEK_OH = 350 + integer, parameter :: rid_MEKOOH_OH = 351 + integer, parameter :: rid_MPAN_OH_M = 352 + integer, parameter :: rid_MVK_O3 = 353 + integer, parameter :: rid_MVK_OH = 354 + integer, parameter :: rid_tag_MCO3_NO2 = 355 + integer, parameter :: rid_usr_MPAN_M = 356 + integer, parameter :: rid_ALKNIT_OH = 357 + integer, parameter :: rid_ALKO2_HO2 = 358 + integer, parameter :: rid_ALKO2_NO = 359 + integer, parameter :: rid_ALKO2_NOb = 360 + integer, parameter :: rid_ALKOOH_OH = 361 + integer, parameter :: rid_BIGALK_OH = 362 + integer, parameter :: rid_HPALD_OH = 363 + integer, parameter :: rid_HYDRALD_OH = 364 + integer, parameter :: rid_IEPOX_OH = 365 + integer, parameter :: rid_ISOPAO2_CH3CO3 = 366 + integer, parameter :: rid_ISOPAO2_CH3O2 = 367 + integer, parameter :: rid_ISOPAO2_HO2 = 368 + integer, parameter :: rid_ISOPAO2_NO = 369 + integer, parameter :: rid_ISOPAO2_NO3 = 370 + integer, parameter :: rid_ISOPBO2_CH3CO3 = 371 + integer, parameter :: rid_ISOPBO2_CH3O2 = 372 + integer, parameter :: rid_ISOPBO2_HO2 = 373 + integer, parameter :: rid_ISOPBO2_M = 374 + integer, parameter :: rid_ISOPBO2_NO = 375 + integer, parameter :: rid_ISOPBO2_NO3 = 376 + integer, parameter :: rid_ISOPNITA_OH = 377 + integer, parameter :: rid_ISOPNITB_OH = 378 + integer, parameter :: rid_ISOP_NO3 = 379 + integer, parameter :: rid_ISOPNO3_CH3CO3 = 380 + integer, parameter :: rid_ISOPNO3_CH3O2 = 381 + integer, parameter :: rid_ISOPNO3_HO2 = 382 + integer, parameter :: rid_ISOPNO3_NO = 383 + integer, parameter :: rid_ISOPNO3_NO3 = 384 + integer, parameter :: rid_ISOPNOOH_OH = 385 + integer, parameter :: rid_ISOP_O3 = 386 + integer, parameter :: rid_ISOP_OH = 387 + integer, parameter :: rid_ISOPOOH_OH = 388 + integer, parameter :: rid_NC4CH2OH_OH = 389 + integer, parameter :: rid_NC4CHO_OH = 390 + integer, parameter :: rid_XO2_CH3CO3 = 391 + integer, parameter :: rid_XO2_CH3O2 = 392 + integer, parameter :: rid_XO2_HO2 = 393 + integer, parameter :: rid_XO2_NO = 394 + integer, parameter :: rid_XO2_NO3 = 395 + integer, parameter :: rid_XOOH_OH = 396 + integer, parameter :: rid_ACBZO2_HO2 = 397 + integer, parameter :: rid_ACBZO2_NO = 398 + integer, parameter :: rid_BENZENE_OH = 399 + integer, parameter :: rid_BENZO2_HO2 = 400 + integer, parameter :: rid_BENZO2_NO = 401 + integer, parameter :: rid_BENZOOH_OH = 402 + integer, parameter :: rid_BZALD_OH = 403 + integer, parameter :: rid_BZOO_HO2 = 404 + integer, parameter :: rid_BZOOH_OH = 405 + integer, parameter :: rid_BZOO_NO = 406 + integer, parameter :: rid_C6H5O2_HO2 = 407 + integer, parameter :: rid_C6H5O2_NO = 408 + integer, parameter :: rid_C6H5OOH_OH = 409 + integer, parameter :: rid_CRESOL_OH = 410 + integer, parameter :: rid_DICARBO2_HO2 = 411 + integer, parameter :: rid_DICARBO2_NO = 412 + integer, parameter :: rid_DICARBO2_NO2 = 413 + integer, parameter :: rid_MALO2_HO2 = 414 + integer, parameter :: rid_MALO2_NO = 415 + integer, parameter :: rid_MALO2_NO2 = 416 + integer, parameter :: rid_MDIALO2_HO2 = 417 + integer, parameter :: rid_MDIALO2_NO = 418 + integer, parameter :: rid_MDIALO2_NO2 = 419 + integer, parameter :: rid_PHENO2_HO2 = 420 + integer, parameter :: rid_PHENO2_NO = 421 + integer, parameter :: rid_PHENOL_OH = 422 + integer, parameter :: rid_PHENO_NO2 = 423 + integer, parameter :: rid_PHENO_O3 = 424 + integer, parameter :: rid_PHENOOH_OH = 425 + integer, parameter :: rid_tag_ACBZO2_NO2 = 426 + integer, parameter :: rid_TOLO2_HO2 = 427 + integer, parameter :: rid_TOLO2_NO = 428 + integer, parameter :: rid_TOLOOH_OH = 429 + integer, parameter :: rid_TOLUENE_OH = 430 + integer, parameter :: rid_usr_PBZNIT_M = 431 + integer, parameter :: rid_XYLENES_OH = 432 + integer, parameter :: rid_XYLENO2_HO2 = 433 + integer, parameter :: rid_XYLENO2_NO = 434 + integer, parameter :: rid_XYLENOOH_OH = 435 + integer, parameter :: rid_XYLOLO2_HO2 = 436 + integer, parameter :: rid_XYLOLO2_NO = 437 + integer, parameter :: rid_XYLOL_OH = 438 + integer, parameter :: rid_XYLOLOOH_OH = 439 + integer, parameter :: rid_BCARY_NO3 = 440 + integer, parameter :: rid_BCARY_O3 = 441 + integer, parameter :: rid_BCARY_OH = 442 + integer, parameter :: rid_MTERP_NO3 = 443 + integer, parameter :: rid_MTERP_O3 = 444 + integer, parameter :: rid_MTERP_OH = 445 + integer, parameter :: rid_NTERPO2_CH3O2 = 446 + integer, parameter :: rid_NTERPO2_HO2 = 447 + integer, parameter :: rid_NTERPO2_NO = 448 + integer, parameter :: rid_NTERPO2_NO3 = 449 + integer, parameter :: rid_NTERPOOH_OH = 450 + integer, parameter :: rid_TERP2O2_CH3O2 = 451 + integer, parameter :: rid_TERP2O2_HO2 = 452 + integer, parameter :: rid_TERP2O2_NO = 453 + integer, parameter :: rid_TERP2OOH_OH = 454 + integer, parameter :: rid_TERPNIT_OH = 455 + integer, parameter :: rid_TERPO2_CH3O2 = 456 + integer, parameter :: rid_TERPO2_HO2 = 457 + integer, parameter :: rid_TERPO2_NO = 458 + integer, parameter :: rid_TERPOOH_OH = 459 + integer, parameter :: rid_TERPROD1_NO3 = 460 + integer, parameter :: rid_TERPROD1_OH = 461 + integer, parameter :: rid_TERPROD2_OH = 462 + integer, parameter :: rid_DMS_NO3 = 463 + integer, parameter :: rid_DMS_OHa = 464 + integer, parameter :: rid_OCS_O = 465 + integer, parameter :: rid_OCS_OH = 466 + integer, parameter :: rid_S_O2 = 467 + integer, parameter :: rid_SO2_OH_M = 468 + integer, parameter :: rid_S_O3 = 469 + integer, parameter :: rid_SO_BRO = 470 + integer, parameter :: rid_SO_CLO = 471 + integer, parameter :: rid_S_OH = 472 + integer, parameter :: rid_SO_NO2 = 473 + integer, parameter :: rid_SO_O2 = 474 + integer, parameter :: rid_SO_O3 = 475 + integer, parameter :: rid_SO_OCLO = 476 + integer, parameter :: rid_SO_OH = 477 + integer, parameter :: rid_usr_DMS_OH = 478 + integer, parameter :: rid_usr_SO3_H2O = 479 + integer, parameter :: rid_NH3_OH = 480 + integer, parameter :: rid_usr_HO2_aer = 481 + integer, parameter :: rid_usr_HONITR_aer = 482 + integer, parameter :: rid_usr_ISOPNITA_aer = 483 + integer, parameter :: rid_usr_ISOPNITB_aer = 484 + integer, parameter :: rid_usr_N2O5_aer = 485 + integer, parameter :: rid_usr_NC4CH2OH_aer = 486 + integer, parameter :: rid_usr_NC4CHO_aer = 487 + integer, parameter :: rid_usr_NH4_strat_tau = 488 + integer, parameter :: rid_usr_NO2_aer = 489 + integer, parameter :: rid_usr_NO3_aer = 490 + integer, parameter :: rid_usr_NTERPOOH_aer = 491 + integer, parameter :: rid_usr_ONITR_aer = 492 + integer, parameter :: rid_usr_TERPNIT_aer = 493 + integer, parameter :: rid_BCARY_NO3_vbs = 494 + integer, parameter :: rid_BCARYO2_HO2_vbs = 495 + integer, parameter :: rid_BCARYO2_NO_vbs = 496 + integer, parameter :: rid_BCARY_O3_vbs = 497 + integer, parameter :: rid_BCARY_OH_vbs = 498 + integer, parameter :: rid_BENZENE_OH_vbs = 499 + integer, parameter :: rid_BENZO2_HO2_vbs = 500 + integer, parameter :: rid_BENZO2_NO_vbs = 501 + integer, parameter :: rid_ISOP_NO3_vbs = 502 + integer, parameter :: rid_ISOPO2_HO2_vbs = 503 + integer, parameter :: rid_ISOPO2_NO_vbs = 504 + integer, parameter :: rid_ISOP_O3_vbs = 505 + integer, parameter :: rid_ISOP_OH_vbs = 506 + integer, parameter :: rid_IVOCO2_HO2_vbs = 507 + integer, parameter :: rid_IVOCO2_NO_vbs = 508 + integer, parameter :: rid_IVOC_OH_vbs = 509 + integer, parameter :: rid_MTERP_NO3_vbs = 510 + integer, parameter :: rid_MTERPO2_HO2_vbs = 511 + integer, parameter :: rid_MTERPO2_NO_vbs = 512 + integer, parameter :: rid_MTERP_O3_vbs = 513 + integer, parameter :: rid_MTERP_OH_vbs = 514 + integer, parameter :: rid_SVOC_OH = 515 + integer, parameter :: rid_TOLUENE_OH_vbs = 516 + integer, parameter :: rid_TOLUO2_HO2_vbs = 517 + integer, parameter :: rid_TOLUO2_NO_vbs = 518 + integer, parameter :: rid_usr_GLYOXAL_aer = 519 + integer, parameter :: rid_XYLENES_OH_vbs = 520 + integer, parameter :: rid_XYLEO2_HO2_vbs = 521 + integer, parameter :: rid_XYLEO2_NO_vbs = 522 + integer, parameter :: rid_het1 = 523 + integer, parameter :: rid_het10 = 524 + integer, parameter :: rid_het11 = 525 + integer, parameter :: rid_het12 = 526 + integer, parameter :: rid_het13 = 527 + integer, parameter :: rid_het14 = 528 + integer, parameter :: rid_het15 = 529 + integer, parameter :: rid_het16 = 530 + integer, parameter :: rid_het17 = 531 + integer, parameter :: rid_het2 = 532 + integer, parameter :: rid_het3 = 533 + integer, parameter :: rid_het4 = 534 + integer, parameter :: rid_het5 = 535 + integer, parameter :: rid_het6 = 536 + integer, parameter :: rid_het7 = 537 + integer, parameter :: rid_het8 = 538 + integer, parameter :: rid_het9 = 539 + integer, parameter :: rid_NH_50_tau = 540 + integer, parameter :: rid_NH_5_tau = 541 + integer, parameter :: rid_ST80_25_tau = 542 + end module m_rxt_id diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/m_spc_id.F90 new file mode 100644 index 0000000000..147ee79e41 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/m_spc_id.F90 @@ -0,0 +1,233 @@ + module m_spc_id + implicit none + integer, parameter :: id_ALKNIT = 1 + integer, parameter :: id_ALKOOH = 2 + integer, parameter :: id_bc_a1 = 3 + integer, parameter :: id_bc_a4 = 4 + integer, parameter :: id_BCARY = 5 + integer, parameter :: id_BENZENE = 6 + integer, parameter :: id_BENZOOH = 7 + integer, parameter :: id_BEPOMUC = 8 + integer, parameter :: id_BIGALD = 9 + integer, parameter :: id_BIGALD1 = 10 + integer, parameter :: id_BIGALD2 = 11 + integer, parameter :: id_BIGALD3 = 12 + integer, parameter :: id_BIGALD4 = 13 + integer, parameter :: id_BIGALK = 14 + integer, parameter :: id_BIGENE = 15 + integer, parameter :: id_BR = 16 + integer, parameter :: id_BRCL = 17 + integer, parameter :: id_BRO = 18 + integer, parameter :: id_BRONO2 = 19 + integer, parameter :: id_BRY = 20 + integer, parameter :: id_BZALD = 21 + integer, parameter :: id_BZOOH = 22 + integer, parameter :: id_C2H2 = 23 + integer, parameter :: id_C2H4 = 24 + integer, parameter :: id_C2H5OH = 25 + integer, parameter :: id_C2H5OOH = 26 + integer, parameter :: id_C2H6 = 27 + integer, parameter :: id_C3H6 = 28 + integer, parameter :: id_C3H7OOH = 29 + integer, parameter :: id_C3H8 = 30 + integer, parameter :: id_C6H5OOH = 31 + integer, parameter :: id_CCL4 = 32 + integer, parameter :: id_CF2CLBR = 33 + integer, parameter :: id_CF3BR = 34 + integer, parameter :: id_CFC11 = 35 + integer, parameter :: id_CFC113 = 36 + integer, parameter :: id_CFC114 = 37 + integer, parameter :: id_CFC115 = 38 + integer, parameter :: id_CFC12 = 39 + integer, parameter :: id_CH2BR2 = 40 + integer, parameter :: id_CH2O = 41 + integer, parameter :: id_CH3BR = 42 + integer, parameter :: id_CH3CCL3 = 43 + integer, parameter :: id_CH3CHO = 44 + integer, parameter :: id_CH3CL = 45 + integer, parameter :: id_CH3CN = 46 + integer, parameter :: id_CH3COCH3 = 47 + integer, parameter :: id_CH3COCHO = 48 + integer, parameter :: id_CH3COOH = 49 + integer, parameter :: id_CH3COOOH = 50 + integer, parameter :: id_CH3OH = 51 + integer, parameter :: id_CH3OOH = 52 + integer, parameter :: id_CH4 = 53 + integer, parameter :: id_CHBR3 = 54 + integer, parameter :: id_CL = 55 + integer, parameter :: id_CL2 = 56 + integer, parameter :: id_CL2O2 = 57 + integer, parameter :: id_CLO = 58 + integer, parameter :: id_CLONO2 = 59 + integer, parameter :: id_CLY = 60 + integer, parameter :: id_CO = 61 + integer, parameter :: id_CO2 = 62 + integer, parameter :: id_COF2 = 63 + integer, parameter :: id_COFCL = 64 + integer, parameter :: id_CRESOL = 65 + integer, parameter :: id_DMS = 66 + integer, parameter :: id_dst_a1 = 67 + integer, parameter :: id_dst_a2 = 68 + integer, parameter :: id_dst_a3 = 69 + integer, parameter :: id_E90 = 70 + integer, parameter :: id_EOOH = 71 + integer, parameter :: id_F = 72 + integer, parameter :: id_GLYALD = 73 + integer, parameter :: id_GLYOXAL = 74 + integer, parameter :: id_H = 75 + integer, parameter :: id_H2 = 76 + integer, parameter :: id_H2402 = 77 + integer, parameter :: id_H2O2 = 78 + integer, parameter :: id_H2SO4 = 79 + integer, parameter :: id_HBR = 80 + integer, parameter :: id_HCFC141B = 81 + integer, parameter :: id_HCFC142B = 82 + integer, parameter :: id_HCFC22 = 83 + integer, parameter :: id_HCL = 84 + integer, parameter :: id_HCN = 85 + integer, parameter :: id_HCOOH = 86 + integer, parameter :: id_HF = 87 + integer, parameter :: id_HNO3 = 88 + integer, parameter :: id_HO2NO2 = 89 + integer, parameter :: id_HOBR = 90 + integer, parameter :: id_HOCL = 91 + integer, parameter :: id_HONITR = 92 + integer, parameter :: id_HPALD = 93 + integer, parameter :: id_HYAC = 94 + integer, parameter :: id_HYDRALD = 95 + integer, parameter :: id_IEPOX = 96 + integer, parameter :: id_ISOP = 97 + integer, parameter :: id_ISOPNITA = 98 + integer, parameter :: id_ISOPNITB = 99 + integer, parameter :: id_ISOPNO3 = 100 + integer, parameter :: id_ISOPNOOH = 101 + integer, parameter :: id_ISOPOOH = 102 + integer, parameter :: id_IVOC = 103 + integer, parameter :: id_MACR = 104 + integer, parameter :: id_MACROOH = 105 + integer, parameter :: id_MEK = 106 + integer, parameter :: id_MEKOOH = 107 + integer, parameter :: id_MPAN = 108 + integer, parameter :: id_MTERP = 109 + integer, parameter :: id_MVK = 110 + integer, parameter :: id_N = 111 + integer, parameter :: id_N2O = 112 + integer, parameter :: id_N2O5 = 113 + integer, parameter :: id_NC4CH2OH = 114 + integer, parameter :: id_NC4CHO = 115 + integer, parameter :: id_ncl_a1 = 116 + integer, parameter :: id_ncl_a2 = 117 + integer, parameter :: id_ncl_a3 = 118 + integer, parameter :: id_NH3 = 119 + integer, parameter :: id_NH4 = 120 + integer, parameter :: id_NH_5 = 121 + integer, parameter :: id_NH_50 = 122 + integer, parameter :: id_NO = 123 + integer, parameter :: id_NO2 = 124 + integer, parameter :: id_NO3 = 125 + integer, parameter :: id_NOA = 126 + integer, parameter :: id_NTERPOOH = 127 + integer, parameter :: id_num_a1 = 128 + integer, parameter :: id_num_a2 = 129 + integer, parameter :: id_num_a3 = 130 + integer, parameter :: id_num_a4 = 131 + integer, parameter :: id_num_a5 = 132 + integer, parameter :: id_O = 133 + integer, parameter :: id_O3 = 134 + integer, parameter :: id_O3S = 135 + integer, parameter :: id_OCLO = 136 + integer, parameter :: id_OCS = 137 + integer, parameter :: id_ONITR = 138 + integer, parameter :: id_PAN = 139 + integer, parameter :: id_PBZNIT = 140 + integer, parameter :: id_PHENO = 141 + integer, parameter :: id_PHENOL = 142 + integer, parameter :: id_PHENOOH = 143 + integer, parameter :: id_pom_a1 = 144 + integer, parameter :: id_pom_a4 = 145 + integer, parameter :: id_POOH = 146 + integer, parameter :: id_ROOH = 147 + integer, parameter :: id_S = 148 + integer, parameter :: id_SF6 = 149 + integer, parameter :: id_SO = 150 + integer, parameter :: id_SO2 = 151 + integer, parameter :: id_SO3 = 152 + integer, parameter :: id_so4_a1 = 153 + integer, parameter :: id_so4_a2 = 154 + integer, parameter :: id_so4_a3 = 155 + integer, parameter :: id_so4_a5 = 156 + integer, parameter :: id_soa1_a1 = 157 + integer, parameter :: id_soa1_a2 = 158 + integer, parameter :: id_soa2_a1 = 159 + integer, parameter :: id_soa2_a2 = 160 + integer, parameter :: id_soa3_a1 = 161 + integer, parameter :: id_soa3_a2 = 162 + integer, parameter :: id_soa4_a1 = 163 + integer, parameter :: id_soa4_a2 = 164 + integer, parameter :: id_soa5_a1 = 165 + integer, parameter :: id_soa5_a2 = 166 + integer, parameter :: id_SOAG0 = 167 + integer, parameter :: id_SOAG1 = 168 + integer, parameter :: id_SOAG2 = 169 + integer, parameter :: id_SOAG3 = 170 + integer, parameter :: id_SOAG4 = 171 + integer, parameter :: id_ST80_25 = 172 + integer, parameter :: id_SVOC = 173 + integer, parameter :: id_TEPOMUC = 174 + integer, parameter :: id_TERP2OOH = 175 + integer, parameter :: id_TERPNIT = 176 + integer, parameter :: id_TERPOOH = 177 + integer, parameter :: id_TERPROD1 = 178 + integer, parameter :: id_TERPROD2 = 179 + integer, parameter :: id_TOLOOH = 180 + integer, parameter :: id_TOLUENE = 181 + integer, parameter :: id_XOOH = 182 + integer, parameter :: id_XYLENES = 183 + integer, parameter :: id_XYLENOOH = 184 + integer, parameter :: id_XYLOL = 185 + integer, parameter :: id_XYLOLOOH = 186 + integer, parameter :: id_NHDEP = 187 + integer, parameter :: id_NDEP = 188 + integer, parameter :: id_ACBZO2 = 189 + integer, parameter :: id_ALKO2 = 190 + integer, parameter :: id_BCARYO2VBS = 191 + integer, parameter :: id_BENZO2 = 192 + integer, parameter :: id_BENZO2VBS = 193 + integer, parameter :: id_BZOO = 194 + integer, parameter :: id_C2H5O2 = 195 + integer, parameter :: id_C3H7O2 = 196 + integer, parameter :: id_C6H5O2 = 197 + integer, parameter :: id_CH3CO3 = 198 + integer, parameter :: id_CH3O2 = 199 + integer, parameter :: id_DICARBO2 = 200 + integer, parameter :: id_ENEO2 = 201 + integer, parameter :: id_EO = 202 + integer, parameter :: id_EO2 = 203 + integer, parameter :: id_HO2 = 204 + integer, parameter :: id_HOCH2OO = 205 + integer, parameter :: id_ISOPAO2 = 206 + integer, parameter :: id_ISOPBO2 = 207 + integer, parameter :: id_ISOPO2VBS = 208 + integer, parameter :: id_IVOCO2VBS = 209 + integer, parameter :: id_MACRO2 = 210 + integer, parameter :: id_MALO2 = 211 + integer, parameter :: id_MCO3 = 212 + integer, parameter :: id_MDIALO2 = 213 + integer, parameter :: id_MEKO2 = 214 + integer, parameter :: id_MTERPO2VBS = 215 + integer, parameter :: id_NTERPO2 = 216 + integer, parameter :: id_O1D = 217 + integer, parameter :: id_OH = 218 + integer, parameter :: id_PHENO2 = 219 + integer, parameter :: id_PO2 = 220 + integer, parameter :: id_RO2 = 221 + integer, parameter :: id_TERP2O2 = 222 + integer, parameter :: id_TERPO2 = 223 + integer, parameter :: id_TOLO2 = 224 + integer, parameter :: id_TOLUO2VBS = 225 + integer, parameter :: id_XO2 = 226 + integer, parameter :: id_XYLENO2 = 227 + integer, parameter :: id_XYLEO2VBS = 228 + integer, parameter :: id_XYLOLO2 = 229 + integer, parameter :: id_H2O = 230 + end module m_spc_id diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_adjrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_adjrxt.F90 similarity index 88% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_adjrxt.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/mo_adjrxt.F90 index 72c913307a..14eaf54027 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_adjrxt.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_adjrxt.F90 @@ -15,53 +15,53 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) real(r8), intent(inout) :: rate(ncol,nlev,rxntot) rate(:,:, 127) = rate(:,:, 127) * inv(:,:, 3) rate(:,:, 128) = rate(:,:, 128) * inv(:,:, 2) - rate(:,:, 131) = rate(:,:, 131) * inv(:,:, 1) - rate(:,:, 148) = rate(:,:, 148) * inv(:,:, 1) - rate(:,:, 155) = rate(:,:, 155) * inv(:,:, 2) - rate(:,:, 158) = rate(:,:, 158) * inv(:,:, 1) - rate(:,:, 166) = rate(:,:, 166) * inv(:,:, 1) - rate(:,:, 169) = rate(:,:, 169) * inv(:,:, 1) + rate(:,:, 132) = rate(:,:, 132) * inv(:,:, 1) + rate(:,:, 149) = rate(:,:, 149) * inv(:,:, 1) + rate(:,:, 156) = rate(:,:, 156) * inv(:,:, 2) + rate(:,:, 159) = rate(:,:, 159) * inv(:,:, 1) + rate(:,:, 167) = rate(:,:, 167) * inv(:,:, 1) rate(:,:, 170) = rate(:,:, 170) * inv(:,:, 1) rate(:,:, 171) = rate(:,:, 171) * inv(:,:, 1) - rate(:,:, 173) = rate(:,:, 173) * inv(:,:, 1) + rate(:,:, 172) = rate(:,:, 172) * inv(:,:, 1) rate(:,:, 174) = rate(:,:, 174) * inv(:,:, 1) - rate(:,:, 189) = rate(:,:, 189) * inv(:,:, 1) - rate(:,:, 209) = rate(:,:, 209) * inv(:,:, 1) + rate(:,:, 175) = rate(:,:, 175) * inv(:,:, 1) + rate(:,:, 190) = rate(:,:, 190) * inv(:,:, 1) rate(:,:, 210) = rate(:,:, 210) * inv(:,:, 1) - rate(:,:, 220) = rate(:,:, 220) * inv(:,:, 1) - rate(:,:, 266) = rate(:,:, 266) * inv(:,:, 1) - rate(:,:, 276) = rate(:,:, 276) * inv(:,:, 1) + rate(:,:, 211) = rate(:,:, 211) * inv(:,:, 1) + rate(:,:, 221) = rate(:,:, 221) * inv(:,:, 1) + rate(:,:, 267) = rate(:,:, 267) * inv(:,:, 1) rate(:,:, 277) = rate(:,:, 277) * inv(:,:, 1) rate(:,:, 278) = rate(:,:, 278) * inv(:,:, 1) - rate(:,:, 300) = rate(:,:, 300) * inv(:,:, 2) - rate(:,:, 304) = rate(:,:, 304) * inv(:,:, 1) + rate(:,:, 279) = rate(:,:, 279) * inv(:,:, 1) + rate(:,:, 301) = rate(:,:, 301) * inv(:,:, 2) rate(:,:, 305) = rate(:,:, 305) * inv(:,:, 1) rate(:,:, 306) = rate(:,:, 306) * inv(:,:, 1) - rate(:,:, 325) = rate(:,:, 325) * inv(:,:, 1) - rate(:,:, 351) = rate(:,:, 351) * inv(:,:, 1) - rate(:,:, 354) = rate(:,:, 354) * inv(:,:, 1) + rate(:,:, 307) = rate(:,:, 307) * inv(:,:, 1) + rate(:,:, 326) = rate(:,:, 326) * inv(:,:, 1) + rate(:,:, 352) = rate(:,:, 352) * inv(:,:, 1) rate(:,:, 355) = rate(:,:, 355) * inv(:,:, 1) - rate(:,:, 412) = rate(:,:, 412) * inv(:,:, 1) - rate(:,:, 415) = rate(:,:, 415) * inv(:,:, 1) - rate(:,:, 418) = rate(:,:, 418) * inv(:,:, 1) - rate(:,:, 425) = rate(:,:, 425) * inv(:,:, 1) - rate(:,:, 430) = rate(:,:, 430) * inv(:,:, 1) - rate(:,:, 466) = rate(:,:, 466) * inv(:,:, 2) - rate(:,:, 467) = rate(:,:, 467) * inv(:,:, 1) - rate(:,:, 473) = rate(:,:, 473) * inv(:,:, 2) - rate(:,:, 132) = rate(:,:, 132) * inv(:,:, 2) * inv(:,:, 1) - rate(:,:, 138) = rate(:,:, 138) * inv(:,:, 2) * inv(:,:, 1) + rate(:,:, 356) = rate(:,:, 356) * inv(:,:, 1) + rate(:,:, 413) = rate(:,:, 413) * inv(:,:, 1) + rate(:,:, 416) = rate(:,:, 416) * inv(:,:, 1) + rate(:,:, 419) = rate(:,:, 419) * inv(:,:, 1) + rate(:,:, 426) = rate(:,:, 426) * inv(:,:, 1) + rate(:,:, 431) = rate(:,:, 431) * inv(:,:, 1) + rate(:,:, 467) = rate(:,:, 467) * inv(:,:, 2) + rate(:,:, 468) = rate(:,:, 468) * inv(:,:, 1) + rate(:,:, 474) = rate(:,:, 474) * inv(:,:, 2) + rate(:,:, 133) = rate(:,:, 133) * inv(:,:, 2) * inv(:,:, 1) + rate(:,:, 139) = rate(:,:, 139) * inv(:,:, 2) * inv(:,:, 1) rate(:,:, 125) = rate(:,:, 125) * m(:,:) rate(:,:, 126) = rate(:,:, 126) * m(:,:) rate(:,:, 129) = rate(:,:, 129) * m(:,:) rate(:,:, 130) = rate(:,:, 130) * m(:,:) rate(:,:, 131) = rate(:,:, 131) * m(:,:) - rate(:,:, 133) = rate(:,:, 133) * m(:,:) + rate(:,:, 132) = rate(:,:, 132) * m(:,:) rate(:,:, 134) = rate(:,:, 134) * m(:,:) rate(:,:, 135) = rate(:,:, 135) * m(:,:) rate(:,:, 136) = rate(:,:, 136) * m(:,:) rate(:,:, 137) = rate(:,:, 137) * m(:,:) - rate(:,:, 139) = rate(:,:, 139) * m(:,:) + rate(:,:, 138) = rate(:,:, 138) * m(:,:) rate(:,:, 140) = rate(:,:, 140) * m(:,:) rate(:,:, 141) = rate(:,:, 141) * m(:,:) rate(:,:, 142) = rate(:,:, 142) * m(:,:) @@ -77,7 +77,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 152) = rate(:,:, 152) * m(:,:) rate(:,:, 153) = rate(:,:, 153) * m(:,:) rate(:,:, 154) = rate(:,:, 154) * m(:,:) - rate(:,:, 156) = rate(:,:, 156) * m(:,:) + rate(:,:, 155) = rate(:,:, 155) * m(:,:) rate(:,:, 157) = rate(:,:, 157) * m(:,:) rate(:,:, 158) = rate(:,:, 158) * m(:,:) rate(:,:, 159) = rate(:,:, 159) * m(:,:) @@ -94,7 +94,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 170) = rate(:,:, 170) * m(:,:) rate(:,:, 171) = rate(:,:, 171) * m(:,:) rate(:,:, 172) = rate(:,:, 172) * m(:,:) - rate(:,:, 175) = rate(:,:, 175) * m(:,:) + rate(:,:, 173) = rate(:,:, 173) * m(:,:) rate(:,:, 176) = rate(:,:, 176) * m(:,:) rate(:,:, 177) = rate(:,:, 177) * m(:,:) rate(:,:, 178) = rate(:,:, 178) * m(:,:) @@ -129,7 +129,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 207) = rate(:,:, 207) * m(:,:) rate(:,:, 208) = rate(:,:, 208) * m(:,:) rate(:,:, 209) = rate(:,:, 209) * m(:,:) - rate(:,:, 211) = rate(:,:, 211) * m(:,:) + rate(:,:, 210) = rate(:,:, 210) * m(:,:) rate(:,:, 212) = rate(:,:, 212) * m(:,:) rate(:,:, 213) = rate(:,:, 213) * m(:,:) rate(:,:, 214) = rate(:,:, 214) * m(:,:) @@ -187,7 +187,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 266) = rate(:,:, 266) * m(:,:) rate(:,:, 267) = rate(:,:, 267) * m(:,:) rate(:,:, 268) = rate(:,:, 268) * m(:,:) - rate(:,:, 270) = rate(:,:, 270) * m(:,:) + rate(:,:, 269) = rate(:,:, 269) * m(:,:) rate(:,:, 271) = rate(:,:, 271) * m(:,:) rate(:,:, 272) = rate(:,:, 272) * m(:,:) rate(:,:, 273) = rate(:,:, 273) * m(:,:) @@ -216,12 +216,12 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 296) = rate(:,:, 296) * m(:,:) rate(:,:, 297) = rate(:,:, 297) * m(:,:) rate(:,:, 298) = rate(:,:, 298) * m(:,:) - rate(:,:, 301) = rate(:,:, 301) * m(:,:) + rate(:,:, 299) = rate(:,:, 299) * m(:,:) rate(:,:, 302) = rate(:,:, 302) * m(:,:) rate(:,:, 303) = rate(:,:, 303) * m(:,:) rate(:,:, 304) = rate(:,:, 304) * m(:,:) rate(:,:, 305) = rate(:,:, 305) * m(:,:) - rate(:,:, 307) = rate(:,:, 307) * m(:,:) + rate(:,:, 306) = rate(:,:, 306) * m(:,:) rate(:,:, 308) = rate(:,:, 308) * m(:,:) rate(:,:, 309) = rate(:,:, 309) * m(:,:) rate(:,:, 310) = rate(:,:, 310) * m(:,:) @@ -269,7 +269,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 352) = rate(:,:, 352) * m(:,:) rate(:,:, 353) = rate(:,:, 353) * m(:,:) rate(:,:, 354) = rate(:,:, 354) * m(:,:) - rate(:,:, 356) = rate(:,:, 356) * m(:,:) + rate(:,:, 355) = rate(:,:, 355) * m(:,:) rate(:,:, 357) = rate(:,:, 357) * m(:,:) rate(:,:, 358) = rate(:,:, 358) * m(:,:) rate(:,:, 359) = rate(:,:, 359) * m(:,:) @@ -286,7 +286,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 370) = rate(:,:, 370) * m(:,:) rate(:,:, 371) = rate(:,:, 371) * m(:,:) rate(:,:, 372) = rate(:,:, 372) * m(:,:) - rate(:,:, 374) = rate(:,:, 374) * m(:,:) + rate(:,:, 373) = rate(:,:, 373) * m(:,:) rate(:,:, 375) = rate(:,:, 375) * m(:,:) rate(:,:, 376) = rate(:,:, 376) * m(:,:) rate(:,:, 377) = rate(:,:, 377) * m(:,:) @@ -342,7 +342,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 427) = rate(:,:, 427) * m(:,:) rate(:,:, 428) = rate(:,:, 428) * m(:,:) rate(:,:, 429) = rate(:,:, 429) * m(:,:) - rate(:,:, 431) = rate(:,:, 431) * m(:,:) + rate(:,:, 430) = rate(:,:, 430) * m(:,:) rate(:,:, 432) = rate(:,:, 432) * m(:,:) rate(:,:, 433) = rate(:,:, 433) * m(:,:) rate(:,:, 434) = rate(:,:, 434) * m(:,:) @@ -377,18 +377,19 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 463) = rate(:,:, 463) * m(:,:) rate(:,:, 464) = rate(:,:, 464) * m(:,:) rate(:,:, 465) = rate(:,:, 465) * m(:,:) - rate(:,:, 467) = rate(:,:, 467) * m(:,:) + rate(:,:, 466) = rate(:,:, 466) * m(:,:) rate(:,:, 468) = rate(:,:, 468) * m(:,:) rate(:,:, 469) = rate(:,:, 469) * m(:,:) rate(:,:, 470) = rate(:,:, 470) * m(:,:) rate(:,:, 471) = rate(:,:, 471) * m(:,:) rate(:,:, 472) = rate(:,:, 472) * m(:,:) - rate(:,:, 474) = rate(:,:, 474) * m(:,:) + rate(:,:, 473) = rate(:,:, 473) * m(:,:) rate(:,:, 475) = rate(:,:, 475) * m(:,:) rate(:,:, 476) = rate(:,:, 476) * m(:,:) rate(:,:, 477) = rate(:,:, 477) * m(:,:) rate(:,:, 478) = rate(:,:, 478) * m(:,:) rate(:,:, 479) = rate(:,:, 479) * m(:,:) + rate(:,:, 480) = rate(:,:, 480) * m(:,:) rate(:,:, 494) = rate(:,:, 494) * m(:,:) rate(:,:, 495) = rate(:,:, 495) * m(:,:) rate(:,:, 496) = rate(:,:, 496) * m(:,:) @@ -414,16 +415,16 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 516) = rate(:,:, 516) * m(:,:) rate(:,:, 517) = rate(:,:, 517) * m(:,:) rate(:,:, 518) = rate(:,:, 518) * m(:,:) - rate(:,:, 519) = rate(:,:, 519) * m(:,:) rate(:,:, 520) = rate(:,:, 520) * m(:,:) rate(:,:, 521) = rate(:,:, 521) * m(:,:) - rate(:,:, 523) = rate(:,:, 523) * m(:,:) - rate(:,:, 528) = rate(:,:, 528) * m(:,:) + rate(:,:, 522) = rate(:,:, 522) * m(:,:) + rate(:,:, 524) = rate(:,:, 524) * m(:,:) rate(:,:, 529) = rate(:,:, 529) * m(:,:) rate(:,:, 530) = rate(:,:, 530) * m(:,:) - rate(:,:, 533) = rate(:,:, 533) * m(:,:) + rate(:,:, 531) = rate(:,:, 531) * m(:,:) rate(:,:, 534) = rate(:,:, 534) * m(:,:) rate(:,:, 535) = rate(:,:, 535) * m(:,:) - rate(:,:, 538) = rate(:,:, 538) * m(:,:) + rate(:,:, 536) = rate(:,:, 536) * m(:,:) + rate(:,:, 539) = rate(:,:, 539) * m(:,:) end subroutine adjrxt end module mo_adjrxt diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_exp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_exp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_exp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/mo_exp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_imp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_imp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_imp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/mo_imp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_indprd.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_indprd.F90 new file mode 100644 index 0000000000..546235c108 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_indprd.F90 @@ -0,0 +1,262 @@ + module mo_indprd + use shr_kind_mod, only : r8 => shr_kind_r8 + private + public :: indprd + contains + subroutine indprd( class, prod, nprod, y, extfrc, rxt, chnkpnts ) + use chem_mods, only : gas_pcnst, extcnt, rxntot + implicit none +!-------------------------------------------------------------------- +! ... dummy arguments +!-------------------------------------------------------------------- + integer, intent(in) :: class + integer, intent(in) :: chnkpnts + integer, intent(in) :: nprod + real(r8), intent(in) :: y(chnkpnts,gas_pcnst) + real(r8), intent(in) :: rxt(chnkpnts,rxntot) + real(r8), intent(in) :: extfrc(chnkpnts,extcnt) + real(r8), intent(inout) :: prod(chnkpnts,nprod) +!-------------------------------------------------------------------- +! ... "independent" production for Explicit species +!-------------------------------------------------------------------- + if( class == 1 ) then + prod(:,1) = (rxt(:,413)*y(:,200) +rxt(:,416)*y(:,211) +rxt(:,419)*y(:,213) + & + rxt(:,423)*y(:,141))*y(:,124) +.500_r8*rxt(:,352)*y(:,218)*y(:,108) & + +.200_r8*rxt(:,448)*y(:,216)*y(:,123) +.500_r8*rxt(:,460)*y(:,178) & + *y(:,125) + prod(:,2) =rxt(:,480)*y(:,218)*y(:,119) +rxt(:,488)*y(:,120) +!-------------------------------------------------------------------- +! ... "independent" production for Implicit species +!-------------------------------------------------------------------- + else if( class == 4 ) then + prod(:,155) = 0._r8 + prod(:,152) = 0._r8 + prod(:,1) = 0._r8 + prod(:,2) = + extfrc(:,3) + prod(:,186) = 0._r8 + prod(:,71) = 0._r8 + prod(:,121) = 0._r8 + prod(:,72) = 0._r8 + prod(:,115) = 0._r8 + prod(:,128) = 0._r8 + prod(:,97) = 0._r8 + prod(:,146) = 0._r8 + prod(:,105) = 0._r8 + prod(:,84) = 0._r8 + prod(:,111) = 0._r8 + prod(:,210) = 0._r8 + prod(:,85) = 0._r8 + prod(:,225) = 0._r8 + prod(:,142) = 0._r8 + prod(:,3) = 0._r8 + prod(:,87) = 0._r8 + prod(:,108) = 0._r8 + prod(:,100) = 0._r8 + prod(:,141) = 0._r8 + prod(:,93) = 0._r8 + prod(:,109) = 0._r8 + prod(:,102) = 0._r8 + prod(:,187) = 0._r8 + prod(:,120) = 0._r8 + prod(:,58) = 0._r8 + prod(:,94) = 0._r8 + prod(:,55) = 0._r8 + prod(:,67) = 0._r8 + prod(:,68) = 0._r8 + prod(:,59) = 0._r8 + prod(:,69) = 0._r8 + prod(:,60) = 0._r8 + prod(:,70) = 0._r8 + prod(:,61) = 0._r8 + prod(:,130) = 0._r8 + prod(:,214) = 0._r8 + prod(:,147) = 0._r8 + prod(:,62) = 0._r8 + prod(:,191) = 0._r8 + prod(:,113) = 0._r8 + prod(:,56) = 0._r8 + prod(:,181) = 0._r8 + prod(:,201) = 0._r8 + prod(:,157) = 0._r8 + prod(:,149) = 0._r8 + prod(:,168) = 0._r8 + prod(:,127) = 0._r8 + prod(:,211) = 0._r8 + prod(:,116) = 0._r8 + prod(:,222) = 0._r8 + prod(:,74) = 0._r8 + prod(:,53) = 0._r8 + prod(:,217) = 0._r8 + prod(:,179) = 0._r8 + prod(:,4) = 0._r8 + prod(:,194) = + extfrc(:,7) + prod(:,169) = 0._r8 + prod(:,88) = 0._r8 + prod(:,90) = 0._r8 + prod(:,78) = 0._r8 + prod(:,98) = 0._r8 + prod(:,5) = 0._r8 + prod(:,6) = 0._r8 + prod(:,7) = 0._r8 + prod(:,8) = 0._r8 + prod(:,63) = 0._r8 + prod(:,176) = 0._r8 + prod(:,192) = 0._r8 + prod(:,185) = 0._r8 + prod(:,212) = 0._r8 + prod(:,209) = 0._r8 + prod(:,57) = 0._r8 + prod(:,148) = 0._r8 + prod(:,64) = 0._r8 + prod(:,170) = 0._r8 + prod(:,89) = 0._r8 + prod(:,91) = 0._r8 + prod(:,101) = 0._r8 + prod(:,224) = 0._r8 + prod(:,75) = 0._r8 + prod(:,182) = 0._r8 + prod(:,99) = 0._r8 + prod(:,213) = 0._r8 + prod(:,122) = 0._r8 + prod(:,166) = 0._r8 + prod(:,171) = 0._r8 + prod(:,197) = 0._r8 + prod(:,83) = 0._r8 + prod(:,196) = 0._r8 + prod(:,110) = 0._r8 + prod(:,65) = 0._r8 + prod(:,173) = 0._r8 + prod(:,145) = 0._r8 + prod(:,139) = 0._r8 + prod(:,199) = 0._r8 + prod(:,119) = 0._r8 + prod(:,162) = 0._r8 + prod(:,49) = 0._r8 + prod(:,200) = 0._r8 + prod(:,103) = 0._r8 + prod(:,135) = 0._r8 + prod(:,104) = 0._r8 + prod(:,144) = 0._r8 + prod(:,183) = 0._r8 + prod(:,206) = 0._r8 + prod(:,133) = 0._r8 + prod(:,76) = 0._r8 + prod(:,96) = 0._r8 + prod(:,114) = 0._r8 + prod(:,190) = 0._r8 + prod(:,9) = 0._r8 + prod(:,10) = 0._r8 + prod(:,11) = 0._r8 + prod(:,54) = 0._r8 + prod(:,12) = 0._r8 + prod(:,13) = 0._r8 + prod(:,14) = 0._r8 + prod(:,220) = + extfrc(:,13) + prod(:,221) = + extfrc(:,6) + prod(:,218) = 0._r8 + prod(:,175) = 0._r8 + prod(:,117) = 0._r8 + prod(:,15) = + extfrc(:,8) + prod(:,16) = + extfrc(:,9) + prod(:,17) = 0._r8 + prod(:,18) = + extfrc(:,1) + prod(:,19) = 0._r8 + prod(:,226) = (rxt(:,5) +2.000_r8*rxt(:,6)) + prod(:,227) = 0._r8 + prod(:,20) = 0._r8 + prod(:,106) = 0._r8 + prod(:,112) = 0._r8 + prod(:,86) = 0._r8 + prod(:,138) = 0._r8 + prod(:,66) = 0._r8 + prod(:,129) = 0._r8 + prod(:,73) = 0._r8 + prod(:,107) = 0._r8 + prod(:,21) = 0._r8 + prod(:,22) = + extfrc(:,2) + prod(:,140) = 0._r8 + prod(:,118) = 0._r8 + prod(:,136) = 0._r8 + prod(:,23) = 0._r8 + prod(:,202) = 0._r8 + prod(:,174) = + extfrc(:,5) + prod(:,92) = 0._r8 + prod(:,24) = + extfrc(:,10) + prod(:,25) = + extfrc(:,11) + prod(:,26) = 0._r8 + prod(:,27) = 0._r8 + prod(:,28) = 0._r8 + prod(:,29) = 0._r8 + prod(:,30) = 0._r8 + prod(:,31) = 0._r8 + prod(:,32) = 0._r8 + prod(:,33) = 0._r8 + prod(:,34) = 0._r8 + prod(:,35) = 0._r8 + prod(:,36) = 0._r8 + prod(:,37) = 0._r8 + prod(:,38) = 0._r8 + prod(:,39) = 0._r8 + prod(:,40) = 0._r8 + prod(:,41) = 0._r8 + prod(:,42) = 0._r8 + prod(:,43) = 0._r8 + prod(:,44) = + extfrc(:,4) + prod(:,79) = 0._r8 + prod(:,153) = 0._r8 + prod(:,150) = 0._r8 + prod(:,131) = 0._r8 + prod(:,184) = 0._r8 + prod(:,189) = 0._r8 + prod(:,154) = 0._r8 + prod(:,77) = 0._r8 + prod(:,80) = 0._r8 + prod(:,81) = 0._r8 + prod(:,158) = 0._r8 + prod(:,82) = 0._r8 + prod(:,123) = 0._r8 + prod(:,137) = 0._r8 + prod(:,178) = 0._r8 + prod(:,45) = 0._r8 + prod(:,132) = 0._r8 + prod(:,46) = 0._r8 + prod(:,124) = 0._r8 + prod(:,172) = 0._r8 + prod(:,167) = 0._r8 + prod(:,151) = 0._r8 + prod(:,208) = 0._r8 + prod(:,219) = 0._r8 + prod(:,164) = 0._r8 + prod(:,143) = 0._r8 + prod(:,95) = 0._r8 + prod(:,159) = 0._r8 + prod(:,223) = 0._r8 + prod(:,125) = 0._r8 + prod(:,203) = 0._r8 + prod(:,204) = 0._r8 + prod(:,47) = 0._r8 + prod(:,48) = 0._r8 + prod(:,205) = 0._r8 + prod(:,160) = 0._r8 + prod(:,207) = 0._r8 + prod(:,177) = 0._r8 + prod(:,156) = 0._r8 + prod(:,50) = 0._r8 + prod(:,188) = 0._r8 + prod(:,215) =rxt(:,5) + prod(:,216) = 0._r8 + prod(:,126) = 0._r8 + prod(:,165) = 0._r8 + prod(:,195) = 0._r8 + prod(:,193) = 0._r8 + prod(:,180) = 0._r8 + prod(:,161) = 0._r8 + prod(:,51) = 0._r8 + prod(:,198) = 0._r8 + prod(:,163) = 0._r8 + prod(:,52) = 0._r8 + prod(:,134) = 0._r8 + prod(:,228) = + extfrc(:,12) + end if + end subroutine indprd + end module mo_indprd diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lin_matrix.F90 new file mode 100644 index 0000000000..cdea057f70 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lin_matrix.F90 @@ -0,0 +1,654 @@ + module mo_lin_matrix + use chem_mods, only: veclen + private + public :: linmat + contains + subroutine linmat01( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,667) = -( rxt(k,19) + het_rates(k,1) ) + mat(k,633) = -( rxt(k,20) + het_rates(k,2) ) + mat(k,1) = -( het_rates(k,3) ) + mat(k,2) = -( het_rates(k,4) ) + mat(k,1000) = -( het_rates(k,5) ) + mat(k,163) = -( het_rates(k,6) ) + mat(k,416) = -( rxt(k,21) + het_rates(k,7) ) + mat(k,169) = -( rxt(k,22) + het_rates(k,8) ) + mat(k,380) = -( rxt(k,23) + het_rates(k,9) ) + mat(k,461) = -( rxt(k,24) + het_rates(k,10) ) + mat(k,417) = .500_r8*rxt(k,21) + mat(k,170) = rxt(k,22) + mat(k,654) = .200_r8*rxt(k,70) + mat(k,692) = .060_r8*rxt(k,72) + mat(k,280) = -( rxt(k,25) + het_rates(k,11) ) + mat(k,653) = .200_r8*rxt(k,70) + mat(k,690) = .200_r8*rxt(k,72) + mat(k,591) = -( rxt(k,26) + het_rates(k,12) ) + mat(k,223) = rxt(k,46) + mat(k,1070) = rxt(k,56) + mat(k,655) = .200_r8*rxt(k,70) + mat(k,693) = .150_r8*rxt(k,72) + mat(k,321) = -( rxt(k,27) + het_rates(k,13) ) + mat(k,691) = .210_r8*rxt(k,72) + mat(k,227) = -( het_rates(k,14) ) + mat(k,350) = -( het_rates(k,15) ) + mat(k,1416) = -( het_rates(k,16) ) + mat(k,231) = rxt(k,74) + mat(k,2151) = rxt(k,75) + mat(k,559) = rxt(k,77) + mat(k,144) = rxt(k,79) + mat(k,150) = rxt(k,80) + mat(k,469) = 2.000_r8*rxt(k,86) + mat(k,596) = rxt(k,87) + mat(k,387) = 3.000_r8*rxt(k,90) + mat(k,108) = 2.000_r8*rxt(k,98) + mat(k,806) = rxt(k,99) + mat(k,780) = rxt(k,105) + mat(k,230) = -( rxt(k,74) + het_rates(k,17) ) + mat(k,2165) = -( rxt(k,75) + het_rates(k,18) ) + mat(k,563) = rxt(k,76) + mat(k,557) = -( rxt(k,76) + rxt(k,77) + rxt(k,525) + rxt(k,528) + rxt(k,533) & + + het_rates(k,19) ) + mat(k,3) = -( het_rates(k,20) ) + mat(k,236) = -( het_rates(k,21) ) + mat(k,336) = rxt(k,28) + mat(k,337) = -( rxt(k,28) + het_rates(k,22) ) + mat(k,292) = -( het_rates(k,23) ) + mat(k,549) = -( het_rates(k,24) ) + mat(k,262) = -( het_rates(k,25) ) + mat(k,342) = -( rxt(k,29) + het_rates(k,26) ) + mat(k,305) = -( het_rates(k,27) ) + mat(k,1025) = -( het_rates(k,28) ) + mat(k,1327) = .700_r8*rxt(k,55) + mat(k,410) = -( rxt(k,30) + het_rates(k,29) ) + mat(k,110) = -( het_rates(k,30) ) + mat(k,266) = -( rxt(k,31) + het_rates(k,31) ) + mat(k,100) = -( rxt(k,78) + het_rates(k,32) ) + mat(k,142) = -( rxt(k,79) + het_rates(k,33) ) + mat(k,147) = -( rxt(k,80) + het_rates(k,34) ) + mat(k,114) = -( rxt(k,81) + het_rates(k,35) ) + mat(k,152) = -( rxt(k,82) + het_rates(k,36) ) + mat(k,118) = -( rxt(k,83) + het_rates(k,37) ) + mat(k,157) = -( rxt(k,84) + het_rates(k,38) ) + mat(k,122) = -( rxt(k,85) + het_rates(k,39) ) + mat(k,468) = -( rxt(k,86) + het_rates(k,40) ) + mat(k,1486) = -( rxt(k,32) + rxt(k,33) + het_rates(k,41) ) + mat(k,673) = .100_r8*rxt(k,19) + mat(k,640) = .100_r8*rxt(k,20) + mat(k,457) = rxt(k,38) + mat(k,1434) = .180_r8*rxt(k,39) + mat(k,1099) = rxt(k,43) + mat(k,1158) = .330_r8*rxt(k,45) + mat(k,1144) = rxt(k,47) + mat(k,740) = rxt(k,49) + mat(k,1215) = 1.340_r8*rxt(k,50) + mat(k,861) = rxt(k,57) + mat(k,545) = rxt(k,62) + mat(k,401) = rxt(k,63) + mat(k,650) = .375_r8*rxt(k,65) + mat(k,479) = .400_r8*rxt(k,67) + mat(k,1064) = .680_r8*rxt(k,69) + mat(k,444) = rxt(k,270) + mat(k,272) = 2.000_r8*rxt(k,300) + mat(k,595) = -( rxt(k,87) + het_rates(k,42) ) + mat(k,126) = -( rxt(k,88) + het_rates(k,43) ) + mat(k,1086) = -( rxt(k,34) + het_rates(k,44) ) + mat(k,671) = .400_r8*rxt(k,19) + mat(k,638) = .400_r8*rxt(k,20) + mat(k,344) = rxt(k,29) + mat(k,1149) = .330_r8*rxt(k,45) + mat(k,318) = rxt(k,53) + mat(k,543) = rxt(k,62) + mat(k,366) = -( rxt(k,89) + het_rates(k,45) ) + mat(k,103) = -( het_rates(k,46) ) + mat(k,923) = -( rxt(k,35) + het_rates(k,47) ) + mat(k,670) = .250_r8*rxt(k,19) + mat(k,637) = .250_r8*rxt(k,20) + mat(k,412) = .820_r8*rxt(k,30) + mat(k,1148) = .170_r8*rxt(k,45) + mat(k,645) = .300_r8*rxt(k,65) + mat(k,477) = .050_r8*rxt(k,67) + mat(k,1059) = .500_r8*rxt(k,69) + mat(k,1222) = -( rxt(k,36) + het_rates(k,48) ) + mat(k,383) = .180_r8*rxt(k,23) + mat(k,323) = rxt(k,27) + mat(k,663) = .400_r8*rxt(k,70) + mat(k,701) = .540_r8*rxt(k,72) + mat(k,431) = .510_r8*rxt(k,73) + mat(k,685) = -( het_rates(k,49) ) + mat(k,611) = -( rxt(k,37) + het_rates(k,50) ) + mat(k,798) = -( het_rates(k,51) ) + mat(k,455) = -( rxt(k,38) + het_rates(k,52) ) + mat(k,1431) = -( rxt(k,39) + rxt(k,40) + het_rates(k,53) ) + mat(k,386) = -( rxt(k,90) + het_rates(k,54) ) + mat(k,2008) = -( het_rates(k,55) ) + mat(k,232) = rxt(k,74) + mat(k,102) = 4.000_r8*rxt(k,78) + mat(k,146) = rxt(k,79) + mat(k,117) = 2.000_r8*rxt(k,81) + mat(k,156) = 2.000_r8*rxt(k,82) + mat(k,121) = 2.000_r8*rxt(k,83) + mat(k,161) = rxt(k,84) + mat(k,125) = 2.000_r8*rxt(k,85) + mat(k,128) = 3.000_r8*rxt(k,88) + mat(k,370) = rxt(k,89) + mat(k,179) = 2.000_r8*rxt(k,91) + mat(k,96) = 2.000_r8*rxt(k,92) + mat(k,1724) = rxt(k,93) + mat(k,906) = rxt(k,94) + mat(k,250) = rxt(k,97) + mat(k,246) = rxt(k,100) + mat(k,256) = rxt(k,101) + mat(k,303) = rxt(k,102) + mat(k,2138) = rxt(k,103) + mat(k,817) = rxt(k,106) + mat(k,178) = -( rxt(k,91) + het_rates(k,56) ) + mat(k,94) = -( rxt(k,92) + rxt(k,211) + het_rates(k,57) ) + mat(k,1719) = -( rxt(k,93) + het_rates(k,58) ) + mat(k,903) = rxt(k,95) + mat(k,329) = rxt(k,107) + mat(k,95) = 2.000_r8*rxt(k,211) + mat(k,900) = -( rxt(k,94) + rxt(k,95) + rxt(k,527) + rxt(k,532) + rxt(k,538) & + + het_rates(k,59) ) + mat(k,4) = -( het_rates(k,60) ) + mat(k,1124) = -( het_rates(k,61) ) + mat(k,171) = 1.500_r8*rxt(k,22) + mat(k,382) = .450_r8*rxt(k,23) + mat(k,593) = .600_r8*rxt(k,26) + mat(k,322) = rxt(k,27) + mat(k,1480) = rxt(k,32) + rxt(k,33) + mat(k,1087) = rxt(k,34) + mat(k,1221) = rxt(k,36) + mat(k,1429) = .380_r8*rxt(k,39) + mat(k,803) = rxt(k,41) + mat(k,1098) = rxt(k,43) + mat(k,981) = 2.000_r8*rxt(k,44) + mat(k,1151) = .330_r8*rxt(k,45) + mat(k,1209) = 1.340_r8*rxt(k,51) + mat(k,1329) = .700_r8*rxt(k,55) + mat(k,201) = 1.500_r8*rxt(k,64) + mat(k,649) = .250_r8*rxt(k,65) + mat(k,974) = rxt(k,68) + mat(k,1061) = 1.700_r8*rxt(k,69) + mat(k,361) = rxt(k,110) + mat(k,802) = -( rxt(k,41) + het_rates(k,62) ) + mat(k,612) = rxt(k,37) + mat(k,1427) = .440_r8*rxt(k,39) + mat(k,526) = .400_r8*rxt(k,60) + mat(k,644) = rxt(k,65) + mat(k,1058) = .800_r8*rxt(k,69) + mat(k,239) = -( rxt(k,96) + het_rates(k,63) ) + mat(k,143) = rxt(k,79) + mat(k,148) = rxt(k,80) + mat(k,153) = rxt(k,82) + mat(k,119) = 2.000_r8*rxt(k,83) + mat(k,158) = 2.000_r8*rxt(k,84) + mat(k,123) = rxt(k,85) + mat(k,107) = 2.000_r8*rxt(k,98) + mat(k,251) = rxt(k,101) + mat(k,298) = rxt(k,102) + mat(k,247) = -( rxt(k,97) + het_rates(k,64) ) + mat(k,115) = rxt(k,81) + mat(k,154) = rxt(k,82) + mat(k,243) = rxt(k,100) + mat(k,195) = -( het_rates(k,65) ) + mat(k,283) = -( het_rates(k,66) ) + mat(k,5) = -( het_rates(k,67) ) + mat(k,6) = -( het_rates(k,68) ) + mat(k,7) = -( het_rates(k,69) ) + mat(k,8) = -( rxt(k,124) + het_rates(k,70) ) + mat(k,130) = -( rxt(k,42) + het_rates(k,71) ) + mat(k,865) = -( het_rates(k,72) ) + mat(k,149) = rxt(k,80) + mat(k,159) = rxt(k,84) + mat(k,240) = 2.000_r8*rxt(k,96) + mat(k,248) = rxt(k,97) + mat(k,290) = rxt(k,104) + mat(k,1097) = -( rxt(k,43) + het_rates(k,73) ) + mat(k,1150) = .330_r8*rxt(k,45) + mat(k,647) = .250_r8*rxt(k,65) + mat(k,271) = rxt(k,301) + end do + end subroutine linmat01 + subroutine linmat02( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,980) = -( rxt(k,44) + rxt(k,519) + het_rates(k,74) ) + mat(k,419) = rxt(k,21) + mat(k,381) = .130_r8*rxt(k,23) + mat(k,333) = .700_r8*rxt(k,61) + mat(k,661) = .600_r8*rxt(k,70) + mat(k,699) = .340_r8*rxt(k,72) + mat(k,430) = .170_r8*rxt(k,73) + mat(k,1446) = -( rxt(k,139) + het_rates(k,75) ) + mat(k,2270) = rxt(k,2) + 2.000_r8*rxt(k,3) + mat(k,1484) = 2.000_r8*rxt(k,33) + mat(k,456) = rxt(k,38) + mat(k,1432) = .330_r8*rxt(k,39) + rxt(k,40) + mat(k,807) = rxt(k,99) + mat(k,2128) = rxt(k,103) + mat(k,291) = rxt(k,104) + mat(k,1402) = -( het_rates(k,76) ) + mat(k,2267) = rxt(k,1) + mat(k,1481) = rxt(k,32) + mat(k,1430) = 1.440_r8*rxt(k,39) + mat(k,106) = -( rxt(k,98) + het_rates(k,77) ) + mat(k,604) = -( rxt(k,4) + het_rates(k,78) ) + mat(k,133) = -( rxt(k,109) + het_rates(k,79) ) + mat(k,805) = -( rxt(k,99) + het_rates(k,80) ) + mat(k,242) = -( rxt(k,100) + het_rates(k,81) ) + mat(k,252) = -( rxt(k,101) + het_rates(k,82) ) + mat(k,299) = -( rxt(k,102) + het_rates(k,83) ) + mat(k,2140) = -( rxt(k,103) + het_rates(k,84) ) + mat(k,180) = -( het_rates(k,85) ) + mat(k,930) = -( het_rates(k,86) ) + mat(k,289) = -( rxt(k,104) + het_rates(k,87) ) + mat(k,1464) = -( rxt(k,9) + het_rates(k,88) ) + mat(k,1157) = rxt(k,482) + mat(k,586) = rxt(k,483) + mat(k,538) = rxt(k,484) + mat(k,275) = 2.000_r8*rxt(k,485) + 2.000_r8*rxt(k,523) + 2.000_r8*rxt(k,526) & + + 2.000_r8*rxt(k,537) + mat(k,377) = rxt(k,486) + mat(k,1078) = rxt(k,487) + mat(k,1960) = .500_r8*rxt(k,489) + mat(k,1772) = rxt(k,490) + mat(k,395) = rxt(k,491) + mat(k,234) = rxt(k,492) + mat(k,620) = rxt(k,493) + mat(k,560) = rxt(k,525) + rxt(k,528) + rxt(k,533) + mat(k,901) = rxt(k,527) + rxt(k,532) + rxt(k,538) + mat(k,422) = -( rxt(k,10) + rxt(k,11) + rxt(k,174) + het_rates(k,89) ) + mat(k,779) = -( rxt(k,105) + het_rates(k,90) ) + mat(k,558) = rxt(k,525) + rxt(k,528) + rxt(k,533) + mat(k,814) = -( rxt(k,106) + het_rates(k,91) ) + mat(k,899) = rxt(k,527) + rxt(k,532) + rxt(k,538) + mat(k,1154) = -( rxt(k,45) + rxt(k,482) + het_rates(k,92) ) + mat(k,222) = -( rxt(k,46) + het_rates(k,93) ) + mat(k,1273) = rxt(k,374) + mat(k,1141) = -( rxt(k,47) + het_rates(k,94) ) + mat(k,1153) = .170_r8*rxt(k,45) + mat(k,347) = -( het_rates(k,95) ) + mat(k,136) = -( het_rates(k,96) ) + mat(k,835) = -( het_rates(k,97) ) + mat(k,582) = -( rxt(k,483) + het_rates(k,98) ) + mat(k,533) = -( rxt(k,484) + het_rates(k,99) ) + mat(k,1194) = -( het_rates(k,100) ) + mat(k,404) = -( rxt(k,48) + het_rates(k,101) ) + mat(k,736) = -( rxt(k,49) + het_rates(k,102) ) + mat(k,405) = rxt(k,48) + mat(k,75) = -( het_rates(k,103) ) + mat(k,1210) = -( rxt(k,50) + rxt(k,51) + het_rates(k,104) ) + mat(k,738) = .300_r8*rxt(k,49) + mat(k,311) = -( het_rates(k,105) ) + mat(k,507) = -( rxt(k,52) + het_rates(k,106) ) + mat(k,666) = .800_r8*rxt(k,19) + mat(k,632) = .800_r8*rxt(k,20) + mat(k,316) = -( rxt(k,53) + het_rates(k,107) ) + mat(k,573) = -( rxt(k,54) + rxt(k,356) + het_rates(k,108) ) + mat(k,949) = -( het_rates(k,109) ) + mat(k,1333) = -( rxt(k,55) + het_rates(k,110) ) + mat(k,739) = .700_r8*rxt(k,49) + mat(k,492) = -( rxt(k,156) + het_rates(k,111) ) + mat(k,1864) = rxt(k,15) + mat(k,184) = -( rxt(k,12) + het_rates(k,112) ) + mat(k,274) = -( rxt(k,13) + rxt(k,14) + rxt(k,175) + rxt(k,485) + rxt(k,523) & + + rxt(k,526) + rxt(k,537) + het_rates(k,113) ) + mat(k,374) = -( rxt(k,486) + het_rates(k,114) ) + mat(k,1074) = -( rxt(k,56) + rxt(k,487) + het_rates(k,115) ) + mat(k,9) = -( het_rates(k,116) ) + mat(k,10) = -( het_rates(k,117) ) + mat(k,11) = -( het_rates(k,118) ) + mat(k,97) = -( het_rates(k,119) ) + mat(k,12) = -( rxt(k,488) + het_rates(k,120) ) + mat(k,13) = -( rxt(k,541) + het_rates(k,121) ) + mat(k,14) = -( rxt(k,540) + het_rates(k,122) ) + mat(k,1923) = -( rxt(k,15) + het_rates(k,123) ) + mat(k,277) = rxt(k,14) + mat(k,1967) = rxt(k,16) + .500_r8*rxt(k,489) + mat(k,1779) = rxt(k,17) + mat(k,496) = rxt(k,156) + mat(k,1968) = -( rxt(k,16) + rxt(k,489) + het_rates(k,124) ) + mat(k,1470) = rxt(k,9) + mat(k,425) = rxt(k,11) + rxt(k,174) + mat(k,278) = rxt(k,13) + rxt(k,175) + mat(k,1780) = rxt(k,18) + mat(k,675) = rxt(k,19) + mat(k,1163) = rxt(k,45) + mat(k,408) = rxt(k,48) + mat(k,580) = rxt(k,54) + rxt(k,356) + mat(k,1083) = rxt(k,56) + mat(k,863) = rxt(k,57) + mat(k,397) = rxt(k,58) + mat(k,235) = rxt(k,59) + mat(k,532) = .600_r8*rxt(k,60) + rxt(k,307) + mat(k,622) = rxt(k,66) + mat(k,562) = rxt(k,76) + mat(k,905) = rxt(k,95) + mat(k,141) = rxt(k,431) + mat(k,1777) = -( rxt(k,17) + rxt(k,18) + rxt(k,490) + het_rates(k,125) ) + mat(k,424) = rxt(k,10) + mat(k,276) = rxt(k,13) + rxt(k,14) + rxt(k,175) + mat(k,530) = .400_r8*rxt(k,60) + mat(k,561) = rxt(k,77) + mat(k,904) = rxt(k,94) + mat(k,858) = -( rxt(k,57) + het_rates(k,126) ) + mat(k,392) = -( rxt(k,58) + rxt(k,491) + het_rates(k,127) ) + mat(k,15) = -( het_rates(k,128) ) + mat(k,16) = -( het_rates(k,129) ) + mat(k,17) = -( het_rates(k,130) ) + mat(k,18) = -( het_rates(k,131) ) + mat(k,19) = -( het_rates(k,132) ) + mat(k,2197) = -( rxt(k,133) + het_rates(k,133) ) + mat(k,2284) = rxt(k,3) + mat(k,2258) = rxt(k,8) + mat(k,279) = rxt(k,14) + mat(k,1929) = rxt(k,15) + mat(k,1973) = rxt(k,16) + mat(k,1785) = rxt(k,18) + mat(k,1442) = .180_r8*rxt(k,39) + mat(k,804) = rxt(k,41) + mat(k,2166) = rxt(k,75) + mat(k,1728) = rxt(k,93) + mat(k,330) = rxt(k,107) + mat(k,1243) = rxt(k,111) + rxt(k,474) + mat(k,856) = rxt(k,112) + mat(k,260) = rxt(k,113) + mat(k,1538) = rxt(k,127) + rxt(k,128) + mat(k,498) = rxt(k,156) + mat(k,516) = rxt(k,467) + mat(k,2259) = -( rxt(k,7) + rxt(k,8) + het_rates(k,134) ) + mat(k,2198) = rxt(k,133) + mat(k,20) = -( het_rates(k,135) ) + mat(k,326) = -( rxt(k,107) + het_rates(k,136) ) + mat(k,358) = -( rxt(k,110) + het_rates(k,137) ) + mat(k,233) = -( rxt(k,59) + rxt(k,492) + het_rates(k,138) ) + mat(k,525) = -( rxt(k,60) + rxt(k,307) + het_rates(k,139) ) + mat(k,139) = -( rxt(k,431) + het_rates(k,140) ) + mat(k,464) = -( het_rates(k,141) ) + mat(k,267) = rxt(k,31) + mat(k,173) = -( het_rates(k,142) ) + mat(k,331) = -( rxt(k,61) + het_rates(k,143) ) + mat(k,21) = -( het_rates(k,144) ) + mat(k,22) = -( het_rates(k,145) ) + mat(k,541) = -( rxt(k,62) + het_rates(k,146) ) + mat(k,398) = -( rxt(k,63) + het_rates(k,147) ) + mat(k,512) = -( rxt(k,467) + het_rates(k,148) ) + mat(k,359) = rxt(k,110) + mat(k,1231) = rxt(k,111) + mat(k,23) = -( rxt(k,108) + het_rates(k,149) ) + mat(k,1233) = -( rxt(k,111) + rxt(k,474) + het_rates(k,150) ) + mat(k,853) = rxt(k,112) + mat(k,513) = rxt(k,467) + mat(k,852) = -( rxt(k,112) + het_rates(k,151) ) + mat(k,259) = rxt(k,113) + mat(k,1232) = rxt(k,474) + mat(k,258) = -( rxt(k,113) + het_rates(k,152) ) + mat(k,134) = rxt(k,109) + mat(k,24) = -( het_rates(k,153) ) + mat(k,25) = -( het_rates(k,154) ) + mat(k,26) = -( het_rates(k,155) ) + mat(k,27) = -( het_rates(k,156) ) + mat(k,28) = -( rxt(k,114) + het_rates(k,157) ) + mat(k,29) = -( rxt(k,115) + het_rates(k,158) ) + mat(k,30) = -( rxt(k,116) + het_rates(k,159) ) + mat(k,31) = -( rxt(k,117) + het_rates(k,160) ) + mat(k,32) = -( rxt(k,118) + het_rates(k,161) ) + mat(k,33) = -( rxt(k,119) + het_rates(k,162) ) + mat(k,34) = -( rxt(k,120) + het_rates(k,163) ) + mat(k,35) = -( rxt(k,121) + het_rates(k,164) ) + mat(k,36) = -( rxt(k,122) + het_rates(k,165) ) + mat(k,37) = -( rxt(k,123) + het_rates(k,166) ) + mat(k,38) = -( het_rates(k,167) ) + mat(k,978) = rxt(k,519) + mat(k,39) = -( het_rates(k,168) ) + mat(k,40) = -( het_rates(k,169) ) + mat(k,41) = -( het_rates(k,170) ) + mat(k,42) = -( het_rates(k,171) ) + mat(k,43) = -( rxt(k,542) + het_rates(k,172) ) + mat(k,49) = -( het_rates(k,173) ) + mat(k,200) = -( rxt(k,64) + het_rates(k,174) ) + mat(k,643) = -( rxt(k,65) + het_rates(k,175) ) + mat(k,618) = -( rxt(k,66) + rxt(k,493) + het_rates(k,176) ) + mat(k,475) = -( rxt(k,67) + het_rates(k,177) ) + mat(k,970) = -( rxt(k,68) + het_rates(k,178) ) + mat(k,393) = rxt(k,58) + mat(k,619) = rxt(k,66) + mat(k,478) = rxt(k,67) + end do + end subroutine linmat02 + subroutine linmat03( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,1060) = -( rxt(k,69) + het_rates(k,179) ) + mat(k,646) = rxt(k,65) + mat(k,972) = rxt(k,68) + mat(k,656) = -( rxt(k,70) + het_rates(k,180) ) + mat(k,188) = -( het_rates(k,181) ) + mat(k,204) = -( rxt(k,71) + het_rates(k,182) ) + mat(k,209) = -( het_rates(k,183) ) + mat(k,694) = -( rxt(k,72) + het_rates(k,184) ) + mat(k,217) = -( het_rates(k,185) ) + mat(k,428) = -( rxt(k,73) + het_rates(k,186) ) + mat(k,519) = -( het_rates(k,189) ) + mat(k,140) = rxt(k,431) + mat(k,888) = -( het_rates(k,190) ) + mat(k,55) = -( het_rates(k,191) ) + mat(k,484) = -( het_rates(k,192) ) + mat(k,61) = -( het_rates(k,193) ) + mat(k,436) = -( het_rates(k,194) ) + mat(k,824) = -( het_rates(k,195) ) + mat(k,509) = rxt(k,52) + mat(k,788) = -( het_rates(k,196) ) + mat(k,626) = -( het_rates(k,197) ) + mat(k,1387) = -( het_rates(k,198) ) + mat(k,384) = .130_r8*rxt(k,23) + mat(k,324) = rxt(k,27) + mat(k,925) = rxt(k,35) + mat(k,1223) = rxt(k,36) + mat(k,1156) = .330_r8*rxt(k,45) + mat(k,1143) = rxt(k,47) + mat(k,1214) = 1.340_r8*rxt(k,50) + mat(k,510) = rxt(k,52) + mat(k,319) = rxt(k,53) + mat(k,1335) = .300_r8*rxt(k,55) + mat(k,860) = rxt(k,57) + mat(k,527) = .600_r8*rxt(k,60) + rxt(k,307) + mat(k,400) = rxt(k,63) + mat(k,202) = .500_r8*rxt(k,64) + mat(k,1063) = .650_r8*rxt(k,69) + mat(k,1830) = -( het_rates(k,199) ) + mat(k,1092) = rxt(k,34) + mat(k,927) = rxt(k,35) + mat(k,616) = rxt(k,37) + mat(k,1438) = rxt(k,40) + mat(k,1341) = .300_r8*rxt(k,55) + mat(k,531) = .400_r8*rxt(k,60) + mat(k,599) = rxt(k,87) + mat(k,369) = rxt(k,89) + mat(k,760) = -( het_rates(k,200) ) + mat(k,281) = .600_r8*rxt(k,25) + mat(k,565) = -( het_rates(k,201) ) + mat(k,270) = -( rxt(k,300) + rxt(k,301) + het_rates(k,202) ) + mat(k,131) = rxt(k,42) + mat(k,707) = -( het_rates(k,203) ) + mat(k,2116) = -( rxt(k,481) + het_rates(k,204) ) + mat(k,426) = rxt(k,11) + rxt(k,174) + mat(k,676) = rxt(k,19) + mat(k,642) = .900_r8*rxt(k,20) + mat(k,421) = rxt(k,21) + mat(k,172) = 1.500_r8*rxt(k,22) + mat(k,385) = .560_r8*rxt(k,23) + mat(k,463) = rxt(k,24) + mat(k,282) = .600_r8*rxt(k,25) + mat(k,594) = .600_r8*rxt(k,26) + mat(k,325) = rxt(k,27) + mat(k,341) = rxt(k,28) + mat(k,346) = rxt(k,29) + mat(k,414) = rxt(k,30) + mat(k,1093) = rxt(k,34) + mat(k,1227) = rxt(k,36) + mat(k,1101) = 2.000_r8*rxt(k,43) + mat(k,983) = 2.000_r8*rxt(k,44) + mat(k,1164) = .670_r8*rxt(k,45) + mat(k,226) = rxt(k,46) + mat(k,1146) = rxt(k,47) + mat(k,409) = rxt(k,48) + mat(k,742) = rxt(k,49) + mat(k,1217) = 1.340_r8*rxt(k,50) + .660_r8*rxt(k,51) + mat(k,1084) = rxt(k,56) + mat(k,335) = rxt(k,61) + mat(k,547) = rxt(k,62) + mat(k,203) = rxt(k,64) + mat(k,652) = rxt(k,65) + mat(k,623) = rxt(k,66) + mat(k,481) = rxt(k,67) + mat(k,977) = rxt(k,68) + mat(k,1067) = 1.200_r8*rxt(k,69) + mat(k,665) = rxt(k,70) + mat(k,704) = rxt(k,72) + mat(k,433) = rxt(k,73) + mat(k,1454) = rxt(k,139) + mat(k,447) = rxt(k,270) + mat(k,273) = rxt(k,300) + rxt(k,301) + mat(k,1301) = rxt(k,374) + mat(k,442) = -( rxt(k,270) + het_rates(k,205) ) + mat(k,1257) = -( het_rates(k,206) ) + mat(k,1289) = -( rxt(k,374) + het_rates(k,207) ) + mat(k,67) = -( het_rates(k,208) ) + mat(k,73) = -( het_rates(k,209) ) + mat(k,1312) = -( het_rates(k,210) ) + mat(k,714) = -( het_rates(k,211) ) + mat(k,462) = .600_r8*rxt(k,24) + mat(k,1355) = -( het_rates(k,212) ) + mat(k,1213) = .660_r8*rxt(k,50) + mat(k,576) = rxt(k,54) + rxt(k,356) + mat(k,874) = -( het_rates(k,213) ) + mat(k,592) = .600_r8*rxt(k,26) + mat(k,678) = -( het_rates(k,214) ) + mat(k,81) = -( het_rates(k,215) ) + mat(k,1046) = -( het_rates(k,216) ) + mat(k,1527) = -( rxt(k,127) + rxt(k,128) + het_rates(k,217) ) + mat(k,2273) = rxt(k,1) + mat(k,2247) = rxt(k,7) + mat(k,185) = rxt(k,12) + mat(k,1692) = -( het_rates(k,218) ) + mat(k,2274) = rxt(k,2) + mat(k,605) = 2.000_r8*rxt(k,4) + mat(k,1467) = rxt(k,9) + mat(k,423) = rxt(k,10) + mat(k,641) = rxt(k,20) + mat(k,420) = rxt(k,21) + mat(k,340) = rxt(k,28) + mat(k,345) = rxt(k,29) + mat(k,413) = rxt(k,30) + mat(k,269) = rxt(k,31) + mat(k,615) = rxt(k,37) + mat(k,458) = rxt(k,38) + mat(k,1436) = .330_r8*rxt(k,39) + mat(k,132) = rxt(k,42) + mat(k,225) = rxt(k,46) + mat(k,741) = rxt(k,49) + mat(k,320) = rxt(k,53) + mat(k,396) = rxt(k,58) + mat(k,334) = rxt(k,61) + mat(k,546) = rxt(k,62) + mat(k,402) = rxt(k,63) + mat(k,651) = rxt(k,65) + mat(k,480) = rxt(k,67) + mat(k,664) = rxt(k,70) + mat(k,206) = rxt(k,71) + mat(k,703) = rxt(k,72) + mat(k,432) = rxt(k,73) + mat(k,781) = rxt(k,105) + mat(k,815) = rxt(k,106) + mat(k,1963) = .500_r8*rxt(k,489) + mat(k,449) = -( het_rates(k,219) ) + mat(k,769) = -( het_rates(k,220) ) + mat(k,1130) = -( het_rates(k,221) ) + mat(k,1062) = .150_r8*rxt(k,69) + mat(k,1110) = -( het_rates(k,222) ) + mat(k,913) = -( het_rates(k,223) ) + mat(k,725) = -( het_rates(k,224) ) + mat(k,87) = -( het_rates(k,225) ) + mat(k,1174) = -( het_rates(k,226) ) + mat(k,749) = -( het_rates(k,227) ) + mat(k,93) = -( het_rates(k,228) ) + mat(k,500) = -( het_rates(k,229) ) + mat(k,2286) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,230) ) + mat(k,1443) = .050_r8*rxt(k,39) + mat(k,135) = rxt(k,109) + mat(k,2121) = rxt(k,481) + end do + end subroutine linmat03 + subroutine linmat( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call linmat01( avec_len, mat, y, rxt, het_rates ) + call linmat02( avec_len, mat, y, rxt, het_rates ) + call linmat03( avec_len, mat, y, rxt, het_rates ) + end subroutine linmat + end module mo_lin_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_factor.F90 new file mode 100644 index 0000000000..7af5df0429 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_factor.F90 @@ -0,0 +1,8014 @@ + module mo_lu_factor + use chem_mods, only: veclen + private + public :: lu_fac + contains + subroutine lu_fac01( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1) = 1._r8 / lu(k,1) + lu(k,2) = 1._r8 / lu(k,2) + lu(k,3) = 1._r8 / lu(k,3) + lu(k,4) = 1._r8 / lu(k,4) + lu(k,5) = 1._r8 / lu(k,5) + lu(k,6) = 1._r8 / lu(k,6) + lu(k,7) = 1._r8 / lu(k,7) + lu(k,8) = 1._r8 / lu(k,8) + lu(k,9) = 1._r8 / lu(k,9) + lu(k,10) = 1._r8 / lu(k,10) + lu(k,11) = 1._r8 / lu(k,11) + lu(k,12) = 1._r8 / lu(k,12) + lu(k,13) = 1._r8 / lu(k,13) + lu(k,14) = 1._r8 / lu(k,14) + lu(k,15) = 1._r8 / lu(k,15) + lu(k,16) = 1._r8 / lu(k,16) + lu(k,17) = 1._r8 / lu(k,17) + lu(k,18) = 1._r8 / lu(k,18) + lu(k,19) = 1._r8 / lu(k,19) + lu(k,20) = 1._r8 / lu(k,20) + lu(k,21) = 1._r8 / lu(k,21) + lu(k,22) = 1._r8 / lu(k,22) + lu(k,23) = 1._r8 / lu(k,23) + lu(k,24) = 1._r8 / lu(k,24) + lu(k,25) = 1._r8 / lu(k,25) + lu(k,26) = 1._r8 / lu(k,26) + lu(k,27) = 1._r8 / lu(k,27) + lu(k,28) = 1._r8 / lu(k,28) + lu(k,29) = 1._r8 / lu(k,29) + lu(k,30) = 1._r8 / lu(k,30) + lu(k,31) = 1._r8 / lu(k,31) + lu(k,32) = 1._r8 / lu(k,32) + lu(k,33) = 1._r8 / lu(k,33) + lu(k,34) = 1._r8 / lu(k,34) + lu(k,35) = 1._r8 / lu(k,35) + lu(k,36) = 1._r8 / lu(k,36) + lu(k,37) = 1._r8 / lu(k,37) + lu(k,38) = 1._r8 / lu(k,38) + lu(k,39) = 1._r8 / lu(k,39) + lu(k,40) = 1._r8 / lu(k,40) + lu(k,41) = 1._r8 / lu(k,41) + lu(k,42) = 1._r8 / lu(k,42) + lu(k,43) = 1._r8 / lu(k,43) + lu(k,49) = 1._r8 / lu(k,49) + lu(k,55) = 1._r8 / lu(k,55) + lu(k,61) = 1._r8 / lu(k,61) + lu(k,67) = 1._r8 / lu(k,67) + lu(k,73) = 1._r8 / lu(k,73) + lu(k,75) = 1._r8 / lu(k,75) + lu(k,81) = 1._r8 / lu(k,81) + lu(k,87) = 1._r8 / lu(k,87) + end do + end subroutine lu_fac01 + subroutine lu_fac02( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,93) = 1._r8 / lu(k,93) + lu(k,94) = 1._r8 / lu(k,94) + lu(k,95) = lu(k,95) * lu(k,94) + lu(k,96) = lu(k,96) * lu(k,94) + lu(k,1719) = lu(k,1719) - lu(k,95) * lu(k,1705) + lu(k,1724) = lu(k,1724) - lu(k,96) * lu(k,1705) + lu(k,97) = 1._r8 / lu(k,97) + lu(k,98) = lu(k,98) * lu(k,97) + lu(k,99) = lu(k,99) * lu(k,97) + lu(k,1692) = lu(k,1692) - lu(k,98) * lu(k,1555) + lu(k,1704) = lu(k,1704) - lu(k,99) * lu(k,1555) + lu(k,100) = 1._r8 / lu(k,100) + lu(k,101) = lu(k,101) * lu(k,100) + lu(k,102) = lu(k,102) * lu(k,100) + lu(k,1527) = lu(k,1527) - lu(k,101) * lu(k,1500) + lu(k,1534) = lu(k,1534) - lu(k,102) * lu(k,1500) + lu(k,103) = 1._r8 / lu(k,103) + lu(k,104) = lu(k,104) * lu(k,103) + lu(k,105) = lu(k,105) * lu(k,103) + lu(k,1692) = lu(k,1692) - lu(k,104) * lu(k,1556) + lu(k,1699) = lu(k,1699) - lu(k,105) * lu(k,1556) + lu(k,106) = 1._r8 / lu(k,106) + lu(k,107) = lu(k,107) * lu(k,106) + lu(k,108) = lu(k,108) * lu(k,106) + lu(k,109) = lu(k,109) * lu(k,106) + lu(k,1511) = lu(k,1511) - lu(k,107) * lu(k,1501) + lu(k,1522) = lu(k,1522) - lu(k,108) * lu(k,1501) + lu(k,1527) = lu(k,1527) - lu(k,109) * lu(k,1501) + lu(k,110) = 1._r8 / lu(k,110) + lu(k,111) = lu(k,111) * lu(k,110) + lu(k,112) = lu(k,112) * lu(k,110) + lu(k,113) = lu(k,113) * lu(k,110) + lu(k,1643) = lu(k,1643) - lu(k,111) * lu(k,1557) + lu(k,1692) = lu(k,1692) - lu(k,112) * lu(k,1557) + lu(k,1704) = lu(k,1704) - lu(k,113) * lu(k,1557) + lu(k,114) = 1._r8 / lu(k,114) + lu(k,115) = lu(k,115) * lu(k,114) + lu(k,116) = lu(k,116) * lu(k,114) + lu(k,117) = lu(k,117) * lu(k,114) + lu(k,1513) = lu(k,1513) - lu(k,115) * lu(k,1502) + lu(k,1527) = lu(k,1527) - lu(k,116) * lu(k,1502) + lu(k,1534) = lu(k,1534) - lu(k,117) * lu(k,1502) + lu(k,118) = 1._r8 / lu(k,118) + lu(k,119) = lu(k,119) * lu(k,118) + lu(k,120) = lu(k,120) * lu(k,118) + lu(k,121) = lu(k,121) * lu(k,118) + lu(k,1511) = lu(k,1511) - lu(k,119) * lu(k,1503) + lu(k,1527) = lu(k,1527) - lu(k,120) * lu(k,1503) + lu(k,1534) = lu(k,1534) - lu(k,121) * lu(k,1503) + lu(k,122) = 1._r8 / lu(k,122) + lu(k,123) = lu(k,123) * lu(k,122) + lu(k,124) = lu(k,124) * lu(k,122) + lu(k,125) = lu(k,125) * lu(k,122) + lu(k,1511) = lu(k,1511) - lu(k,123) * lu(k,1504) + lu(k,1527) = lu(k,1527) - lu(k,124) * lu(k,1504) + lu(k,1534) = lu(k,1534) - lu(k,125) * lu(k,1504) + lu(k,126) = 1._r8 / lu(k,126) + lu(k,127) = lu(k,127) * lu(k,126) + lu(k,128) = lu(k,128) * lu(k,126) + lu(k,129) = lu(k,129) * lu(k,126) + lu(k,1692) = lu(k,1692) - lu(k,127) * lu(k,1558) + lu(k,1698) = lu(k,1698) - lu(k,128) * lu(k,1558) + lu(k,1704) = lu(k,1704) - lu(k,129) * lu(k,1558) + lu(k,130) = 1._r8 / lu(k,130) + lu(k,131) = lu(k,131) * lu(k,130) + lu(k,132) = lu(k,132) * lu(k,130) + lu(k,706) = lu(k,706) - lu(k,131) * lu(k,705) + lu(k,710) = - lu(k,132) * lu(k,705) + lu(k,2030) = - lu(k,131) * lu(k,2027) + lu(k,2109) = lu(k,2109) - lu(k,132) * lu(k,2027) + lu(k,133) = 1._r8 / lu(k,133) + lu(k,134) = lu(k,134) * lu(k,133) + lu(k,135) = lu(k,135) * lu(k,133) + lu(k,258) = lu(k,258) - lu(k,134) * lu(k,257) + lu(k,261) = lu(k,261) - lu(k,135) * lu(k,257) + lu(k,2262) = lu(k,2262) - lu(k,134) * lu(k,2261) + lu(k,2286) = lu(k,2286) - lu(k,135) * lu(k,2261) + lu(k,136) = 1._r8 / lu(k,136) + lu(k,137) = lu(k,137) * lu(k,136) + lu(k,138) = lu(k,138) * lu(k,136) + lu(k,737) = lu(k,737) - lu(k,137) * lu(k,735) + lu(k,741) = lu(k,741) - lu(k,138) * lu(k,735) + lu(k,1674) = lu(k,1674) - lu(k,137) * lu(k,1559) + lu(k,1692) = lu(k,1692) - lu(k,138) * lu(k,1559) + lu(k,139) = 1._r8 / lu(k,139) + lu(k,140) = lu(k,140) * lu(k,139) + lu(k,141) = lu(k,141) * lu(k,139) + lu(k,519) = lu(k,519) - lu(k,140) * lu(k,518) + lu(k,523) = lu(k,523) - lu(k,141) * lu(k,518) + lu(k,1938) = lu(k,1938) - lu(k,140) * lu(k,1932) + lu(k,1968) = lu(k,1968) - lu(k,141) * lu(k,1932) + end do + end subroutine lu_fac02 + subroutine lu_fac03( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,142) = 1._r8 / lu(k,142) + lu(k,143) = lu(k,143) * lu(k,142) + lu(k,144) = lu(k,144) * lu(k,142) + lu(k,145) = lu(k,145) * lu(k,142) + lu(k,146) = lu(k,146) * lu(k,142) + lu(k,1511) = lu(k,1511) - lu(k,143) * lu(k,1505) + lu(k,1522) = lu(k,1522) - lu(k,144) * lu(k,1505) + lu(k,1527) = lu(k,1527) - lu(k,145) * lu(k,1505) + lu(k,1534) = lu(k,1534) - lu(k,146) * lu(k,1505) + lu(k,147) = 1._r8 / lu(k,147) + lu(k,148) = lu(k,148) * lu(k,147) + lu(k,149) = lu(k,149) * lu(k,147) + lu(k,150) = lu(k,150) * lu(k,147) + lu(k,151) = lu(k,151) * lu(k,147) + lu(k,1511) = lu(k,1511) - lu(k,148) * lu(k,1506) + lu(k,1520) = lu(k,1520) - lu(k,149) * lu(k,1506) + lu(k,1522) = lu(k,1522) - lu(k,150) * lu(k,1506) + lu(k,1527) = lu(k,1527) - lu(k,151) * lu(k,1506) + lu(k,152) = 1._r8 / lu(k,152) + lu(k,153) = lu(k,153) * lu(k,152) + lu(k,154) = lu(k,154) * lu(k,152) + lu(k,155) = lu(k,155) * lu(k,152) + lu(k,156) = lu(k,156) * lu(k,152) + lu(k,1511) = lu(k,1511) - lu(k,153) * lu(k,1507) + lu(k,1513) = lu(k,1513) - lu(k,154) * lu(k,1507) + lu(k,1527) = lu(k,1527) - lu(k,155) * lu(k,1507) + lu(k,1534) = lu(k,1534) - lu(k,156) * lu(k,1507) + lu(k,157) = 1._r8 / lu(k,157) + lu(k,158) = lu(k,158) * lu(k,157) + lu(k,159) = lu(k,159) * lu(k,157) + lu(k,160) = lu(k,160) * lu(k,157) + lu(k,161) = lu(k,161) * lu(k,157) + lu(k,1511) = lu(k,1511) - lu(k,158) * lu(k,1508) + lu(k,1520) = lu(k,1520) - lu(k,159) * lu(k,1508) + lu(k,1527) = lu(k,1527) - lu(k,160) * lu(k,1508) + lu(k,1534) = lu(k,1534) - lu(k,161) * lu(k,1508) + lu(k,163) = 1._r8 / lu(k,163) + lu(k,164) = lu(k,164) * lu(k,163) + lu(k,165) = lu(k,165) * lu(k,163) + lu(k,166) = lu(k,166) * lu(k,163) + lu(k,167) = lu(k,167) * lu(k,163) + lu(k,168) = lu(k,168) * lu(k,163) + lu(k,1561) = lu(k,1561) - lu(k,164) * lu(k,1560) + lu(k,1562) = lu(k,1562) - lu(k,165) * lu(k,1560) + lu(k,1610) = lu(k,1610) - lu(k,166) * lu(k,1560) + lu(k,1692) = lu(k,1692) - lu(k,167) * lu(k,1560) + lu(k,1699) = lu(k,1699) - lu(k,168) * lu(k,1560) + lu(k,169) = 1._r8 / lu(k,169) + lu(k,170) = lu(k,170) * lu(k,169) + lu(k,171) = lu(k,171) * lu(k,169) + lu(k,172) = lu(k,172) * lu(k,169) + lu(k,1606) = - lu(k,170) * lu(k,1561) + lu(k,1670) = lu(k,1670) - lu(k,171) * lu(k,1561) + lu(k,1699) = lu(k,1699) - lu(k,172) * lu(k,1561) + lu(k,173) = 1._r8 / lu(k,173) + lu(k,174) = lu(k,174) * lu(k,173) + lu(k,175) = lu(k,175) * lu(k,173) + lu(k,176) = lu(k,176) * lu(k,173) + lu(k,177) = lu(k,177) * lu(k,173) + lu(k,1604) = lu(k,1604) - lu(k,174) * lu(k,1562) + lu(k,1607) = lu(k,1607) - lu(k,175) * lu(k,1562) + lu(k,1692) = lu(k,1692) - lu(k,176) * lu(k,1562) + lu(k,1699) = lu(k,1699) - lu(k,177) * lu(k,1562) + lu(k,178) = 1._r8 / lu(k,178) + lu(k,179) = lu(k,179) * lu(k,178) + lu(k,817) = lu(k,817) - lu(k,179) * lu(k,813) + lu(k,906) = lu(k,906) - lu(k,179) * lu(k,898) + lu(k,1724) = lu(k,1724) - lu(k,179) * lu(k,1706) + lu(k,2008) = lu(k,2008) - lu(k,179) * lu(k,1976) + lu(k,2138) = lu(k,2138) - lu(k,179) * lu(k,2122) + lu(k,180) = 1._r8 / lu(k,180) + lu(k,181) = lu(k,181) * lu(k,180) + lu(k,182) = lu(k,182) * lu(k,180) + lu(k,183) = lu(k,183) * lu(k,180) + lu(k,1527) = lu(k,1527) - lu(k,181) * lu(k,1509) + lu(k,1528) = lu(k,1528) - lu(k,182) * lu(k,1509) + lu(k,1535) = lu(k,1535) - lu(k,183) * lu(k,1509) + lu(k,1691) = - lu(k,181) * lu(k,1563) + lu(k,1692) = lu(k,1692) - lu(k,182) * lu(k,1563) + lu(k,1699) = lu(k,1699) - lu(k,183) * lu(k,1563) + lu(k,184) = 1._r8 / lu(k,184) + lu(k,185) = lu(k,185) * lu(k,184) + lu(k,186) = lu(k,186) * lu(k,184) + lu(k,494) = - lu(k,185) * lu(k,491) + lu(k,496) = lu(k,496) - lu(k,186) * lu(k,491) + lu(k,1527) = lu(k,1527) - lu(k,185) * lu(k,1510) + lu(k,1532) = lu(k,1532) - lu(k,186) * lu(k,1510) + lu(k,1962) = - lu(k,185) * lu(k,1933) + lu(k,1967) = lu(k,1967) - lu(k,186) * lu(k,1933) + lu(k,188) = 1._r8 / lu(k,188) + lu(k,189) = lu(k,189) * lu(k,188) + lu(k,190) = lu(k,190) * lu(k,188) + lu(k,191) = lu(k,191) * lu(k,188) + lu(k,192) = lu(k,192) * lu(k,188) + lu(k,193) = lu(k,193) * lu(k,188) + lu(k,194) = lu(k,194) * lu(k,188) + lu(k,1565) = lu(k,1565) - lu(k,189) * lu(k,1564) + lu(k,1566) = lu(k,1566) - lu(k,190) * lu(k,1564) + lu(k,1603) = lu(k,1603) - lu(k,191) * lu(k,1564) + lu(k,1638) = lu(k,1638) - lu(k,192) * lu(k,1564) + lu(k,1692) = lu(k,1692) - lu(k,193) * lu(k,1564) + lu(k,1699) = lu(k,1699) - lu(k,194) * lu(k,1564) + end do + end subroutine lu_fac03 + subroutine lu_fac04( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,195) = 1._r8 / lu(k,195) + lu(k,196) = lu(k,196) * lu(k,195) + lu(k,197) = lu(k,197) * lu(k,195) + lu(k,198) = lu(k,198) * lu(k,195) + lu(k,199) = lu(k,199) * lu(k,195) + lu(k,1604) = lu(k,1604) - lu(k,196) * lu(k,1565) + lu(k,1607) = lu(k,1607) - lu(k,197) * lu(k,1565) + lu(k,1692) = lu(k,1692) - lu(k,198) * lu(k,1565) + lu(k,1699) = lu(k,1699) - lu(k,199) * lu(k,1565) + lu(k,200) = 1._r8 / lu(k,200) + lu(k,201) = lu(k,201) * lu(k,200) + lu(k,202) = lu(k,202) * lu(k,200) + lu(k,203) = lu(k,203) * lu(k,200) + lu(k,213) = - lu(k,201) * lu(k,208) + lu(k,214) = - lu(k,202) * lu(k,208) + lu(k,216) = lu(k,216) - lu(k,203) * lu(k,208) + lu(k,1670) = lu(k,1670) - lu(k,201) * lu(k,1566) + lu(k,1684) = lu(k,1684) - lu(k,202) * lu(k,1566) + lu(k,1699) = lu(k,1699) - lu(k,203) * lu(k,1566) + lu(k,204) = 1._r8 / lu(k,204) + lu(k,205) = lu(k,205) * lu(k,204) + lu(k,206) = lu(k,206) * lu(k,204) + lu(k,1174) = lu(k,1174) - lu(k,205) * lu(k,1167) + lu(k,1178) = - lu(k,206) * lu(k,1167) + lu(k,1674) = lu(k,1674) - lu(k,205) * lu(k,1567) + lu(k,1692) = lu(k,1692) - lu(k,206) * lu(k,1567) + lu(k,2092) = lu(k,2092) - lu(k,205) * lu(k,2028) + lu(k,2109) = lu(k,2109) - lu(k,206) * lu(k,2028) + lu(k,209) = 1._r8 / lu(k,209) + lu(k,210) = lu(k,210) * lu(k,209) + lu(k,211) = lu(k,211) * lu(k,209) + lu(k,212) = lu(k,212) * lu(k,209) + lu(k,213) = lu(k,213) * lu(k,209) + lu(k,214) = lu(k,214) * lu(k,209) + lu(k,215) = lu(k,215) * lu(k,209) + lu(k,216) = lu(k,216) * lu(k,209) + lu(k,1569) = lu(k,1569) - lu(k,210) * lu(k,1568) + lu(k,1603) = lu(k,1603) - lu(k,211) * lu(k,1568) + lu(k,1640) = lu(k,1640) - lu(k,212) * lu(k,1568) + lu(k,1670) = lu(k,1670) - lu(k,213) * lu(k,1568) + lu(k,1684) = lu(k,1684) - lu(k,214) * lu(k,1568) + lu(k,1692) = lu(k,1692) - lu(k,215) * lu(k,1568) + lu(k,1699) = lu(k,1699) - lu(k,216) * lu(k,1568) + lu(k,217) = 1._r8 / lu(k,217) + lu(k,218) = lu(k,218) * lu(k,217) + lu(k,219) = lu(k,219) * lu(k,217) + lu(k,220) = lu(k,220) * lu(k,217) + lu(k,221) = lu(k,221) * lu(k,217) + lu(k,1607) = lu(k,1607) - lu(k,218) * lu(k,1569) + lu(k,1612) = lu(k,1612) - lu(k,219) * lu(k,1569) + lu(k,1692) = lu(k,1692) - lu(k,220) * lu(k,1569) + lu(k,1699) = lu(k,1699) - lu(k,221) * lu(k,1569) + lu(k,222) = 1._r8 / lu(k,222) + lu(k,223) = lu(k,223) * lu(k,222) + lu(k,224) = lu(k,224) * lu(k,222) + lu(k,225) = lu(k,225) * lu(k,222) + lu(k,226) = lu(k,226) * lu(k,222) + lu(k,1276) = - lu(k,223) * lu(k,1273) + lu(k,1286) = - lu(k,224) * lu(k,1273) + lu(k,1296) = - lu(k,225) * lu(k,1273) + lu(k,1301) = lu(k,1301) - lu(k,226) * lu(k,1273) + lu(k,1623) = - lu(k,223) * lu(k,1570) + lu(k,1674) = lu(k,1674) - lu(k,224) * lu(k,1570) + lu(k,1692) = lu(k,1692) - lu(k,225) * lu(k,1570) + lu(k,1699) = lu(k,1699) - lu(k,226) * lu(k,1570) + lu(k,227) = 1._r8 / lu(k,227) + lu(k,228) = lu(k,228) * lu(k,227) + lu(k,229) = lu(k,229) * lu(k,227) + lu(k,945) = - lu(k,228) * lu(k,942) + lu(k,961) = lu(k,961) - lu(k,229) * lu(k,942) + lu(k,994) = - lu(k,228) * lu(k,991) + lu(k,1011) = lu(k,1011) - lu(k,229) * lu(k,991) + lu(k,1654) = lu(k,1654) - lu(k,228) * lu(k,1571) + lu(k,1692) = lu(k,1692) - lu(k,229) * lu(k,1571) + lu(k,2216) = - lu(k,228) * lu(k,2205) + lu(k,2248) = lu(k,2248) - lu(k,229) * lu(k,2205) + lu(k,230) = 1._r8 / lu(k,230) + lu(k,231) = lu(k,231) * lu(k,230) + lu(k,232) = lu(k,232) * lu(k,230) + lu(k,780) = lu(k,780) - lu(k,231) * lu(k,778) + lu(k,782) = - lu(k,232) * lu(k,778) + lu(k,1713) = lu(k,1713) - lu(k,231) * lu(k,1707) + lu(k,1724) = lu(k,1724) - lu(k,232) * lu(k,1707) + lu(k,2127) = - lu(k,231) * lu(k,2123) + lu(k,2138) = lu(k,2138) - lu(k,232) * lu(k,2123) + lu(k,2151) = lu(k,2151) - lu(k,231) * lu(k,2145) + lu(k,2162) = lu(k,2162) - lu(k,232) * lu(k,2145) + lu(k,233) = 1._r8 / lu(k,233) + lu(k,234) = lu(k,234) * lu(k,233) + lu(k,235) = lu(k,235) * lu(k,233) + lu(k,1114) = - lu(k,234) * lu(k,1103) + lu(k,1119) = lu(k,1119) - lu(k,235) * lu(k,1103) + lu(k,1157) = lu(k,1157) - lu(k,234) * lu(k,1147) + lu(k,1163) = lu(k,1163) - lu(k,235) * lu(k,1147) + lu(k,1689) = lu(k,1689) - lu(k,234) * lu(k,1572) + lu(k,1697) = lu(k,1697) - lu(k,235) * lu(k,1572) + lu(k,1916) = - lu(k,234) * lu(k,1852) + lu(k,1924) = lu(k,1924) - lu(k,235) * lu(k,1852) + end do + end subroutine lu_fac04 + subroutine lu_fac05( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,236) = 1._r8 / lu(k,236) + lu(k,237) = lu(k,237) * lu(k,236) + lu(k,238) = lu(k,238) * lu(k,236) + lu(k,339) = - lu(k,237) * lu(k,336) + lu(k,340) = lu(k,340) - lu(k,238) * lu(k,336) + lu(k,437) = - lu(k,237) * lu(k,434) + lu(k,438) = - lu(k,238) * lu(k,434) + lu(k,1615) = lu(k,1615) - lu(k,237) * lu(k,1573) + lu(k,1692) = lu(k,1692) - lu(k,238) * lu(k,1573) + lu(k,1867) = lu(k,1867) - lu(k,237) * lu(k,1853) + lu(k,1919) = lu(k,1919) - lu(k,238) * lu(k,1853) + lu(k,239) = 1._r8 / lu(k,239) + lu(k,240) = lu(k,240) * lu(k,239) + lu(k,241) = lu(k,241) * lu(k,239) + lu(k,253) = - lu(k,240) * lu(k,251) + lu(k,254) = lu(k,254) - lu(k,241) * lu(k,251) + lu(k,300) = - lu(k,240) * lu(k,298) + lu(k,301) = lu(k,301) - lu(k,241) * lu(k,298) + lu(k,1520) = lu(k,1520) - lu(k,240) * lu(k,1511) + lu(k,1527) = lu(k,1527) - lu(k,241) * lu(k,1511) + lu(k,1652) = - lu(k,240) * lu(k,1574) + lu(k,1691) = lu(k,1691) - lu(k,241) * lu(k,1574) + lu(k,242) = 1._r8 / lu(k,242) + lu(k,243) = lu(k,243) * lu(k,242) + lu(k,244) = lu(k,244) * lu(k,242) + lu(k,245) = lu(k,245) * lu(k,242) + lu(k,246) = lu(k,246) * lu(k,242) + lu(k,1513) = lu(k,1513) - lu(k,243) * lu(k,1512) + lu(k,1527) = lu(k,1527) - lu(k,244) * lu(k,1512) + lu(k,1528) = lu(k,1528) - lu(k,245) * lu(k,1512) + lu(k,1534) = lu(k,1534) - lu(k,246) * lu(k,1512) + lu(k,1576) = lu(k,1576) - lu(k,243) * lu(k,1575) + lu(k,1691) = lu(k,1691) - lu(k,244) * lu(k,1575) + lu(k,1692) = lu(k,1692) - lu(k,245) * lu(k,1575) + lu(k,1698) = lu(k,1698) - lu(k,246) * lu(k,1575) + lu(k,247) = 1._r8 / lu(k,247) + lu(k,248) = lu(k,248) * lu(k,247) + lu(k,249) = lu(k,249) * lu(k,247) + lu(k,250) = lu(k,250) * lu(k,247) + lu(k,1520) = lu(k,1520) - lu(k,248) * lu(k,1513) + lu(k,1527) = lu(k,1527) - lu(k,249) * lu(k,1513) + lu(k,1534) = lu(k,1534) - lu(k,250) * lu(k,1513) + lu(k,1652) = lu(k,1652) - lu(k,248) * lu(k,1576) + lu(k,1691) = lu(k,1691) - lu(k,249) * lu(k,1576) + lu(k,1698) = lu(k,1698) - lu(k,250) * lu(k,1576) + lu(k,252) = 1._r8 / lu(k,252) + lu(k,253) = lu(k,253) * lu(k,252) + lu(k,254) = lu(k,254) * lu(k,252) + lu(k,255) = lu(k,255) * lu(k,252) + lu(k,256) = lu(k,256) * lu(k,252) + lu(k,1520) = lu(k,1520) - lu(k,253) * lu(k,1514) + lu(k,1527) = lu(k,1527) - lu(k,254) * lu(k,1514) + lu(k,1528) = lu(k,1528) - lu(k,255) * lu(k,1514) + lu(k,1534) = lu(k,1534) - lu(k,256) * lu(k,1514) + lu(k,1652) = lu(k,1652) - lu(k,253) * lu(k,1577) + lu(k,1691) = lu(k,1691) - lu(k,254) * lu(k,1577) + lu(k,1692) = lu(k,1692) - lu(k,255) * lu(k,1577) + lu(k,1698) = lu(k,1698) - lu(k,256) * lu(k,1577) + lu(k,258) = 1._r8 / lu(k,258) + lu(k,259) = lu(k,259) * lu(k,258) + lu(k,260) = lu(k,260) * lu(k,258) + lu(k,261) = lu(k,261) * lu(k,258) + lu(k,852) = lu(k,852) - lu(k,259) * lu(k,851) + lu(k,856) = lu(k,856) - lu(k,260) * lu(k,851) + lu(k,857) = - lu(k,261) * lu(k,851) + lu(k,1650) = lu(k,1650) - lu(k,259) * lu(k,1578) + lu(k,1702) = lu(k,1702) - lu(k,260) * lu(k,1578) + lu(k,1704) = lu(k,1704) - lu(k,261) * lu(k,1578) + lu(k,2264) = - lu(k,259) * lu(k,2262) + lu(k,2284) = lu(k,2284) - lu(k,260) * lu(k,2262) + lu(k,2286) = lu(k,2286) - lu(k,261) * lu(k,2262) + lu(k,262) = 1._r8 / lu(k,262) + lu(k,263) = lu(k,263) * lu(k,262) + lu(k,264) = lu(k,264) * lu(k,262) + lu(k,265) = lu(k,265) * lu(k,262) + lu(k,825) = lu(k,825) - lu(k,263) * lu(k,821) + lu(k,827) = - lu(k,264) * lu(k,821) + lu(k,831) = lu(k,831) - lu(k,265) * lu(k,821) + lu(k,1667) = lu(k,1667) - lu(k,263) * lu(k,1579) + lu(k,1692) = lu(k,1692) - lu(k,264) * lu(k,1579) + lu(k,1699) = lu(k,1699) - lu(k,265) * lu(k,1579) + lu(k,1806) = lu(k,1806) - lu(k,263) * lu(k,1788) + lu(k,1827) = - lu(k,264) * lu(k,1788) + lu(k,1834) = lu(k,1834) - lu(k,265) * lu(k,1788) + lu(k,266) = 1._r8 / lu(k,266) + lu(k,267) = lu(k,267) * lu(k,266) + lu(k,268) = lu(k,268) * lu(k,266) + lu(k,269) = lu(k,269) * lu(k,266) + lu(k,625) = lu(k,625) - lu(k,267) * lu(k,624) + lu(k,626) = lu(k,626) - lu(k,268) * lu(k,624) + lu(k,627) = - lu(k,269) * lu(k,624) + lu(k,1607) = lu(k,1607) - lu(k,267) * lu(k,1580) + lu(k,1628) = lu(k,1628) - lu(k,268) * lu(k,1580) + lu(k,1692) = lu(k,1692) - lu(k,269) * lu(k,1580) + lu(k,2048) = - lu(k,267) * lu(k,2029) + lu(k,2056) = lu(k,2056) - lu(k,268) * lu(k,2029) + lu(k,2109) = lu(k,2109) - lu(k,269) * lu(k,2029) + lu(k,270) = 1._r8 / lu(k,270) + lu(k,271) = lu(k,271) * lu(k,270) + lu(k,272) = lu(k,272) * lu(k,270) + lu(k,273) = lu(k,273) * lu(k,270) + lu(k,708) = - lu(k,271) * lu(k,706) + lu(k,709) = lu(k,709) - lu(k,272) * lu(k,706) + lu(k,713) = lu(k,713) - lu(k,273) * lu(k,706) + lu(k,1897) = lu(k,1897) - lu(k,271) * lu(k,1854) + lu(k,1917) = lu(k,1917) - lu(k,272) * lu(k,1854) + lu(k,1926) = lu(k,1926) - lu(k,273) * lu(k,1854) + lu(k,2087) = - lu(k,271) * lu(k,2030) + lu(k,2107) = lu(k,2107) - lu(k,272) * lu(k,2030) + lu(k,2116) = lu(k,2116) - lu(k,273) * lu(k,2030) + lu(k,274) = 1._r8 / lu(k,274) + lu(k,275) = lu(k,275) * lu(k,274) + lu(k,276) = lu(k,276) * lu(k,274) + lu(k,277) = lu(k,277) * lu(k,274) + lu(k,278) = lu(k,278) * lu(k,274) + lu(k,279) = lu(k,279) * lu(k,274) + lu(k,1772) = lu(k,1772) - lu(k,275) * lu(k,1733) + lu(k,1777) = lu(k,1777) - lu(k,276) * lu(k,1733) + lu(k,1779) = lu(k,1779) - lu(k,277) * lu(k,1733) + lu(k,1780) = lu(k,1780) - lu(k,278) * lu(k,1733) + lu(k,1785) = lu(k,1785) - lu(k,279) * lu(k,1733) + lu(k,1960) = lu(k,1960) - lu(k,275) * lu(k,1934) + lu(k,1965) = lu(k,1965) - lu(k,276) * lu(k,1934) + lu(k,1967) = lu(k,1967) - lu(k,277) * lu(k,1934) + lu(k,1968) = lu(k,1968) - lu(k,278) * lu(k,1934) + lu(k,1973) = lu(k,1973) - lu(k,279) * lu(k,1934) + end do + end subroutine lu_fac05 + subroutine lu_fac06( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,280) = 1._r8 / lu(k,280) + lu(k,281) = lu(k,281) * lu(k,280) + lu(k,282) = lu(k,282) * lu(k,280) + lu(k,659) = - lu(k,281) * lu(k,653) + lu(k,665) = lu(k,665) - lu(k,282) * lu(k,653) + lu(k,697) = - lu(k,281) * lu(k,690) + lu(k,704) = lu(k,704) - lu(k,282) * lu(k,690) + lu(k,726) = - lu(k,281) * lu(k,720) + lu(k,734) = lu(k,734) - lu(k,282) * lu(k,720) + lu(k,750) = - lu(k,281) * lu(k,743) + lu(k,759) = lu(k,759) - lu(k,282) * lu(k,743) + lu(k,1880) = lu(k,1880) - lu(k,281) * lu(k,1855) + lu(k,1926) = lu(k,1926) - lu(k,282) * lu(k,1855) + lu(k,283) = 1._r8 / lu(k,283) + lu(k,284) = lu(k,284) * lu(k,283) + lu(k,285) = lu(k,285) * lu(k,283) + lu(k,286) = lu(k,286) * lu(k,283) + lu(k,287) = lu(k,287) * lu(k,283) + lu(k,288) = lu(k,288) * lu(k,283) + lu(k,1650) = lu(k,1650) - lu(k,284) * lu(k,1581) + lu(k,1689) = lu(k,1689) - lu(k,285) * lu(k,1581) + lu(k,1692) = lu(k,1692) - lu(k,286) * lu(k,1581) + lu(k,1694) = lu(k,1694) - lu(k,287) * lu(k,1581) + lu(k,1699) = lu(k,1699) - lu(k,288) * lu(k,1581) + lu(k,1739) = lu(k,1739) - lu(k,284) * lu(k,1734) + lu(k,1772) = lu(k,1772) - lu(k,285) * lu(k,1734) + lu(k,1775) = lu(k,1775) - lu(k,286) * lu(k,1734) + lu(k,1777) = lu(k,1777) - lu(k,287) * lu(k,1734) + lu(k,1782) = lu(k,1782) - lu(k,288) * lu(k,1734) + lu(k,289) = 1._r8 / lu(k,289) + lu(k,290) = lu(k,290) * lu(k,289) + lu(k,291) = lu(k,291) * lu(k,289) + lu(k,865) = lu(k,865) - lu(k,290) * lu(k,864) + lu(k,868) = lu(k,868) - lu(k,291) * lu(k,864) + lu(k,1401) = lu(k,1401) - lu(k,290) * lu(k,1400) + lu(k,1404) = lu(k,1404) - lu(k,291) * lu(k,1400) + lu(k,1428) = lu(k,1428) - lu(k,290) * lu(k,1426) + lu(k,1432) = lu(k,1432) - lu(k,291) * lu(k,1426) + lu(k,1460) = lu(k,1460) - lu(k,290) * lu(k,1459) + lu(k,1463) = - lu(k,291) * lu(k,1459) + lu(k,2265) = lu(k,2265) - lu(k,290) * lu(k,2263) + lu(k,2270) = lu(k,2270) - lu(k,291) * lu(k,2263) + lu(k,292) = 1._r8 / lu(k,292) + lu(k,293) = lu(k,293) * lu(k,292) + lu(k,294) = lu(k,294) * lu(k,292) + lu(k,295) = lu(k,295) * lu(k,292) + lu(k,296) = lu(k,296) * lu(k,292) + lu(k,297) = lu(k,297) * lu(k,292) + lu(k,1658) = lu(k,1658) - lu(k,293) * lu(k,1582) + lu(k,1661) = lu(k,1661) - lu(k,294) * lu(k,1582) + lu(k,1670) = lu(k,1670) - lu(k,295) * lu(k,1582) + lu(k,1692) = lu(k,1692) - lu(k,296) * lu(k,1582) + lu(k,1699) = lu(k,1699) - lu(k,297) * lu(k,1582) + lu(k,1989) = - lu(k,293) * lu(k,1977) + lu(k,1990) = - lu(k,294) * lu(k,1977) + lu(k,1993) = lu(k,1993) - lu(k,295) * lu(k,1977) + lu(k,2002) = lu(k,2002) - lu(k,296) * lu(k,1977) + lu(k,2009) = lu(k,2009) - lu(k,297) * lu(k,1977) + lu(k,299) = 1._r8 / lu(k,299) + lu(k,300) = lu(k,300) * lu(k,299) + lu(k,301) = lu(k,301) * lu(k,299) + lu(k,302) = lu(k,302) * lu(k,299) + lu(k,303) = lu(k,303) * lu(k,299) + lu(k,304) = lu(k,304) * lu(k,299) + lu(k,1520) = lu(k,1520) - lu(k,300) * lu(k,1515) + lu(k,1527) = lu(k,1527) - lu(k,301) * lu(k,1515) + lu(k,1528) = lu(k,1528) - lu(k,302) * lu(k,1515) + lu(k,1534) = lu(k,1534) - lu(k,303) * lu(k,1515) + lu(k,1540) = lu(k,1540) - lu(k,304) * lu(k,1515) + lu(k,1652) = lu(k,1652) - lu(k,300) * lu(k,1583) + lu(k,1691) = lu(k,1691) - lu(k,301) * lu(k,1583) + lu(k,1692) = lu(k,1692) - lu(k,302) * lu(k,1583) + lu(k,1698) = lu(k,1698) - lu(k,303) * lu(k,1583) + lu(k,1704) = lu(k,1704) - lu(k,304) * lu(k,1583) + lu(k,305) = 1._r8 / lu(k,305) + lu(k,306) = lu(k,306) * lu(k,305) + lu(k,307) = lu(k,307) * lu(k,305) + lu(k,308) = lu(k,308) * lu(k,305) + lu(k,309) = lu(k,309) * lu(k,305) + lu(k,310) = lu(k,310) * lu(k,305) + lu(k,1648) = lu(k,1648) - lu(k,306) * lu(k,1584) + lu(k,1692) = lu(k,1692) - lu(k,307) * lu(k,1584) + lu(k,1698) = lu(k,1698) - lu(k,308) * lu(k,1584) + lu(k,1700) = lu(k,1700) - lu(k,309) * lu(k,1584) + lu(k,1704) = lu(k,1704) - lu(k,310) * lu(k,1584) + lu(k,1987) = lu(k,1987) - lu(k,306) * lu(k,1978) + lu(k,2002) = lu(k,2002) - lu(k,307) * lu(k,1978) + lu(k,2008) = lu(k,2008) - lu(k,308) * lu(k,1978) + lu(k,2010) = lu(k,2010) - lu(k,309) * lu(k,1978) + lu(k,2014) = - lu(k,310) * lu(k,1978) + lu(k,311) = 1._r8 / lu(k,311) + lu(k,312) = lu(k,312) * lu(k,311) + lu(k,313) = lu(k,313) * lu(k,311) + lu(k,314) = lu(k,314) * lu(k,311) + lu(k,315) = lu(k,315) * lu(k,311) + lu(k,1312) = lu(k,1312) - lu(k,312) * lu(k,1305) + lu(k,1313) = - lu(k,313) * lu(k,1305) + lu(k,1317) = - lu(k,314) * lu(k,1305) + lu(k,1322) = lu(k,1322) - lu(k,315) * lu(k,1305) + lu(k,1681) = lu(k,1681) - lu(k,312) * lu(k,1585) + lu(k,1683) = lu(k,1683) - lu(k,313) * lu(k,1585) + lu(k,1692) = lu(k,1692) - lu(k,314) * lu(k,1585) + lu(k,1699) = lu(k,1699) - lu(k,315) * lu(k,1585) + lu(k,2098) = lu(k,2098) - lu(k,312) * lu(k,2031) + lu(k,2100) = lu(k,2100) - lu(k,313) * lu(k,2031) + lu(k,2109) = lu(k,2109) - lu(k,314) * lu(k,2031) + lu(k,2116) = lu(k,2116) - lu(k,315) * lu(k,2031) + lu(k,316) = 1._r8 / lu(k,316) + lu(k,317) = lu(k,317) * lu(k,316) + lu(k,318) = lu(k,318) * lu(k,316) + lu(k,319) = lu(k,319) * lu(k,316) + lu(k,320) = lu(k,320) * lu(k,316) + lu(k,678) = lu(k,678) - lu(k,317) * lu(k,677) + lu(k,679) = lu(k,679) - lu(k,318) * lu(k,677) + lu(k,680) = lu(k,680) - lu(k,319) * lu(k,677) + lu(k,681) = lu(k,681) - lu(k,320) * lu(k,677) + lu(k,1633) = lu(k,1633) - lu(k,317) * lu(k,1586) + lu(k,1667) = lu(k,1667) - lu(k,318) * lu(k,1586) + lu(k,1684) = lu(k,1684) - lu(k,319) * lu(k,1586) + lu(k,1692) = lu(k,1692) - lu(k,320) * lu(k,1586) + lu(k,2060) = lu(k,2060) - lu(k,317) * lu(k,2032) + lu(k,2086) = lu(k,2086) - lu(k,318) * lu(k,2032) + lu(k,2101) = lu(k,2101) - lu(k,319) * lu(k,2032) + lu(k,2109) = lu(k,2109) - lu(k,320) * lu(k,2032) + lu(k,321) = 1._r8 / lu(k,321) + lu(k,322) = lu(k,322) * lu(k,321) + lu(k,323) = lu(k,323) * lu(k,321) + lu(k,324) = lu(k,324) * lu(k,321) + lu(k,325) = lu(k,325) * lu(k,321) + lu(k,700) = - lu(k,322) * lu(k,691) + lu(k,701) = lu(k,701) - lu(k,323) * lu(k,691) + lu(k,702) = - lu(k,324) * lu(k,691) + lu(k,704) = lu(k,704) - lu(k,325) * lu(k,691) + lu(k,753) = - lu(k,322) * lu(k,744) + lu(k,754) = lu(k,754) - lu(k,323) * lu(k,744) + lu(k,755) = - lu(k,324) * lu(k,744) + lu(k,759) = lu(k,759) - lu(k,325) * lu(k,744) + lu(k,1899) = lu(k,1899) - lu(k,322) * lu(k,1856) + lu(k,1906) = lu(k,1906) - lu(k,323) * lu(k,1856) + lu(k,1912) = lu(k,1912) - lu(k,324) * lu(k,1856) + lu(k,1926) = lu(k,1926) - lu(k,325) * lu(k,1856) + end do + end subroutine lu_fac06 + subroutine lu_fac07( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,326) = 1._r8 / lu(k,326) + lu(k,327) = lu(k,327) * lu(k,326) + lu(k,328) = lu(k,328) * lu(k,326) + lu(k,329) = lu(k,329) * lu(k,326) + lu(k,330) = lu(k,330) * lu(k,326) + lu(k,1232) = lu(k,1232) - lu(k,327) * lu(k,1230) + lu(k,1233) = lu(k,1233) - lu(k,328) * lu(k,1230) + lu(k,1237) = lu(k,1237) - lu(k,329) * lu(k,1230) + lu(k,1243) = lu(k,1243) - lu(k,330) * lu(k,1230) + lu(k,1710) = lu(k,1710) - lu(k,327) * lu(k,1708) + lu(k,1712) = lu(k,1712) - lu(k,328) * lu(k,1708) + lu(k,1719) = lu(k,1719) - lu(k,329) * lu(k,1708) + lu(k,1728) = lu(k,1728) - lu(k,330) * lu(k,1708) + lu(k,2149) = lu(k,2149) - lu(k,327) * lu(k,2146) + lu(k,2150) = lu(k,2150) - lu(k,328) * lu(k,2146) + lu(k,2157) = lu(k,2157) - lu(k,329) * lu(k,2146) + lu(k,2166) = lu(k,2166) - lu(k,330) * lu(k,2146) + lu(k,331) = 1._r8 / lu(k,331) + lu(k,332) = lu(k,332) * lu(k,331) + lu(k,333) = lu(k,333) * lu(k,331) + lu(k,334) = lu(k,334) * lu(k,331) + lu(k,335) = lu(k,335) * lu(k,331) + lu(k,449) = lu(k,449) - lu(k,332) * lu(k,448) + lu(k,450) = lu(k,450) - lu(k,333) * lu(k,448) + lu(k,451) = - lu(k,334) * lu(k,448) + lu(k,454) = lu(k,454) - lu(k,335) * lu(k,448) + lu(k,1604) = lu(k,1604) - lu(k,332) * lu(k,1587) + lu(k,1661) = lu(k,1661) - lu(k,333) * lu(k,1587) + lu(k,1692) = lu(k,1692) - lu(k,334) * lu(k,1587) + lu(k,1699) = lu(k,1699) - lu(k,335) * lu(k,1587) + lu(k,2045) = lu(k,2045) - lu(k,332) * lu(k,2033) + lu(k,2083) = lu(k,2083) - lu(k,333) * lu(k,2033) + lu(k,2109) = lu(k,2109) - lu(k,334) * lu(k,2033) + lu(k,2116) = lu(k,2116) - lu(k,335) * lu(k,2033) + lu(k,337) = 1._r8 / lu(k,337) + lu(k,338) = lu(k,338) * lu(k,337) + lu(k,339) = lu(k,339) * lu(k,337) + lu(k,340) = lu(k,340) * lu(k,337) + lu(k,341) = lu(k,341) * lu(k,337) + lu(k,436) = lu(k,436) - lu(k,338) * lu(k,435) + lu(k,437) = lu(k,437) - lu(k,339) * lu(k,435) + lu(k,438) = lu(k,438) - lu(k,340) * lu(k,435) + lu(k,441) = lu(k,441) - lu(k,341) * lu(k,435) + lu(k,1603) = lu(k,1603) - lu(k,338) * lu(k,1588) + lu(k,1615) = lu(k,1615) - lu(k,339) * lu(k,1588) + lu(k,1692) = lu(k,1692) - lu(k,340) * lu(k,1588) + lu(k,1699) = lu(k,1699) - lu(k,341) * lu(k,1588) + lu(k,2043) = lu(k,2043) - lu(k,338) * lu(k,2034) + lu(k,2052) = lu(k,2052) - lu(k,339) * lu(k,2034) + lu(k,2109) = lu(k,2109) - lu(k,340) * lu(k,2034) + lu(k,2116) = lu(k,2116) - lu(k,341) * lu(k,2034) + lu(k,342) = 1._r8 / lu(k,342) + lu(k,343) = lu(k,343) * lu(k,342) + lu(k,344) = lu(k,344) * lu(k,342) + lu(k,345) = lu(k,345) * lu(k,342) + lu(k,346) = lu(k,346) * lu(k,342) + lu(k,824) = lu(k,824) - lu(k,343) * lu(k,822) + lu(k,825) = lu(k,825) - lu(k,344) * lu(k,822) + lu(k,827) = lu(k,827) - lu(k,345) * lu(k,822) + lu(k,831) = lu(k,831) - lu(k,346) * lu(k,822) + lu(k,1648) = lu(k,1648) - lu(k,343) * lu(k,1589) + lu(k,1667) = lu(k,1667) - lu(k,344) * lu(k,1589) + lu(k,1692) = lu(k,1692) - lu(k,345) * lu(k,1589) + lu(k,1699) = lu(k,1699) - lu(k,346) * lu(k,1589) + lu(k,2075) = lu(k,2075) - lu(k,343) * lu(k,2035) + lu(k,2086) = lu(k,2086) - lu(k,344) * lu(k,2035) + lu(k,2109) = lu(k,2109) - lu(k,345) * lu(k,2035) + lu(k,2116) = lu(k,2116) - lu(k,346) * lu(k,2035) + lu(k,347) = 1._r8 / lu(k,347) + lu(k,348) = lu(k,348) * lu(k,347) + lu(k,349) = lu(k,349) * lu(k,347) + lu(k,1286) = lu(k,1286) - lu(k,348) * lu(k,1274) + lu(k,1296) = lu(k,1296) - lu(k,349) * lu(k,1274) + lu(k,1378) = lu(k,1378) - lu(k,348) * lu(k,1368) + lu(k,1391) = lu(k,1391) - lu(k,349) * lu(k,1368) + lu(k,1674) = lu(k,1674) - lu(k,348) * lu(k,1590) + lu(k,1692) = lu(k,1692) - lu(k,349) * lu(k,1590) + lu(k,1758) = lu(k,1758) - lu(k,348) * lu(k,1735) + lu(k,1775) = lu(k,1775) - lu(k,349) * lu(k,1735) + lu(k,1812) = lu(k,1812) - lu(k,348) * lu(k,1789) + lu(k,1827) = lu(k,1827) - lu(k,349) * lu(k,1789) + lu(k,1903) = lu(k,1903) - lu(k,348) * lu(k,1857) + lu(k,1919) = lu(k,1919) - lu(k,349) * lu(k,1857) + lu(k,350) = 1._r8 / lu(k,350) + lu(k,351) = lu(k,351) * lu(k,350) + lu(k,352) = lu(k,352) * lu(k,350) + lu(k,353) = lu(k,353) * lu(k,350) + lu(k,354) = lu(k,354) * lu(k,350) + lu(k,355) = lu(k,355) * lu(k,350) + lu(k,356) = lu(k,356) * lu(k,350) + lu(k,357) = lu(k,357) * lu(k,350) + lu(k,1620) = lu(k,1620) - lu(k,351) * lu(k,1591) + lu(k,1657) = lu(k,1657) - lu(k,352) * lu(k,1591) + lu(k,1667) = lu(k,1667) - lu(k,353) * lu(k,1591) + lu(k,1690) = lu(k,1690) - lu(k,354) * lu(k,1591) + lu(k,1692) = lu(k,1692) - lu(k,355) * lu(k,1591) + lu(k,1694) = lu(k,1694) - lu(k,356) * lu(k,1591) + lu(k,1697) = lu(k,1697) - lu(k,357) * lu(k,1591) + lu(k,1737) = - lu(k,351) * lu(k,1736) + lu(k,1741) = lu(k,1741) - lu(k,352) * lu(k,1736) + lu(k,1751) = lu(k,1751) - lu(k,353) * lu(k,1736) + lu(k,1773) = lu(k,1773) - lu(k,354) * lu(k,1736) + lu(k,1775) = lu(k,1775) - lu(k,355) * lu(k,1736) + lu(k,1777) = lu(k,1777) - lu(k,356) * lu(k,1736) + lu(k,1780) = lu(k,1780) - lu(k,357) * lu(k,1736) + lu(k,358) = 1._r8 / lu(k,358) + lu(k,359) = lu(k,359) * lu(k,358) + lu(k,360) = lu(k,360) * lu(k,358) + lu(k,361) = lu(k,361) * lu(k,358) + lu(k,362) = lu(k,362) * lu(k,358) + lu(k,363) = lu(k,363) * lu(k,358) + lu(k,364) = lu(k,364) * lu(k,358) + lu(k,365) = lu(k,365) * lu(k,358) + lu(k,1614) = lu(k,1614) - lu(k,359) * lu(k,1592) + lu(k,1650) = lu(k,1650) - lu(k,360) * lu(k,1592) + lu(k,1670) = lu(k,1670) - lu(k,361) * lu(k,1592) + lu(k,1678) = lu(k,1678) - lu(k,362) * lu(k,1592) + lu(k,1688) = lu(k,1688) - lu(k,363) * lu(k,1592) + lu(k,1692) = lu(k,1692) - lu(k,364) * lu(k,1592) + lu(k,1702) = lu(k,1702) - lu(k,365) * lu(k,1592) + lu(k,2170) = - lu(k,359) * lu(k,2169) + lu(k,2176) = - lu(k,360) * lu(k,2169) + lu(k,2178) = lu(k,2178) - lu(k,361) * lu(k,2169) + lu(k,2179) = lu(k,2179) - lu(k,362) * lu(k,2169) + lu(k,2183) = lu(k,2183) - lu(k,363) * lu(k,2169) + lu(k,2187) = lu(k,2187) - lu(k,364) * lu(k,2169) + lu(k,2197) = lu(k,2197) - lu(k,365) * lu(k,2169) + lu(k,366) = 1._r8 / lu(k,366) + lu(k,367) = lu(k,367) * lu(k,366) + lu(k,368) = lu(k,368) * lu(k,366) + lu(k,369) = lu(k,369) * lu(k,366) + lu(k,370) = lu(k,370) * lu(k,366) + lu(k,371) = lu(k,371) * lu(k,366) + lu(k,372) = lu(k,372) * lu(k,366) + lu(k,373) = lu(k,373) * lu(k,366) + lu(k,1670) = lu(k,1670) - lu(k,367) * lu(k,1593) + lu(k,1692) = lu(k,1692) - lu(k,368) * lu(k,1593) + lu(k,1695) = lu(k,1695) - lu(k,369) * lu(k,1593) + lu(k,1698) = lu(k,1698) - lu(k,370) * lu(k,1593) + lu(k,1699) = lu(k,1699) - lu(k,371) * lu(k,1593) + lu(k,1700) = lu(k,1700) - lu(k,372) * lu(k,1593) + lu(k,1704) = lu(k,1704) - lu(k,373) * lu(k,1593) + lu(k,1993) = lu(k,1993) - lu(k,367) * lu(k,1979) + lu(k,2002) = lu(k,2002) - lu(k,368) * lu(k,1979) + lu(k,2005) = lu(k,2005) - lu(k,369) * lu(k,1979) + lu(k,2008) = lu(k,2008) - lu(k,370) * lu(k,1979) + lu(k,2009) = lu(k,2009) - lu(k,371) * lu(k,1979) + lu(k,2010) = lu(k,2010) - lu(k,372) * lu(k,1979) + lu(k,2014) = lu(k,2014) - lu(k,373) * lu(k,1979) + end do + end subroutine lu_fac07 + subroutine lu_fac08( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,374) = 1._r8 / lu(k,374) + lu(k,375) = lu(k,375) * lu(k,374) + lu(k,376) = lu(k,376) * lu(k,374) + lu(k,377) = lu(k,377) * lu(k,374) + lu(k,378) = lu(k,378) * lu(k,374) + lu(k,379) = lu(k,379) * lu(k,374) + lu(k,1189) = - lu(k,375) * lu(k,1185) + lu(k,1191) = - lu(k,376) * lu(k,1185) + lu(k,1199) = - lu(k,377) * lu(k,1185) + lu(k,1201) = - lu(k,378) * lu(k,1185) + lu(k,1206) = lu(k,1206) - lu(k,379) * lu(k,1185) + lu(k,1651) = lu(k,1651) - lu(k,375) * lu(k,1594) + lu(k,1668) = lu(k,1668) - lu(k,376) * lu(k,1594) + lu(k,1689) = lu(k,1689) - lu(k,377) * lu(k,1594) + lu(k,1692) = lu(k,1692) - lu(k,378) * lu(k,1594) + lu(k,1699) = lu(k,1699) - lu(k,379) * lu(k,1594) + lu(k,1798) = - lu(k,375) * lu(k,1790) + lu(k,1807) = lu(k,1807) - lu(k,376) * lu(k,1790) + lu(k,1824) = - lu(k,377) * lu(k,1790) + lu(k,1827) = lu(k,1827) - lu(k,378) * lu(k,1790) + lu(k,1834) = lu(k,1834) - lu(k,379) * lu(k,1790) + lu(k,380) = 1._r8 / lu(k,380) + lu(k,381) = lu(k,381) * lu(k,380) + lu(k,382) = lu(k,382) * lu(k,380) + lu(k,383) = lu(k,383) * lu(k,380) + lu(k,384) = lu(k,384) * lu(k,380) + lu(k,385) = lu(k,385) * lu(k,380) + lu(k,951) = - lu(k,381) * lu(k,943) + lu(k,955) = lu(k,955) - lu(k,382) * lu(k,943) + lu(k,957) = - lu(k,383) * lu(k,943) + lu(k,958) = lu(k,958) - lu(k,384) * lu(k,943) + lu(k,966) = lu(k,966) - lu(k,385) * lu(k,943) + lu(k,999) = - lu(k,381) * lu(k,992) + lu(k,1005) = lu(k,1005) - lu(k,382) * lu(k,992) + lu(k,1007) = - lu(k,383) * lu(k,992) + lu(k,1008) = lu(k,1008) - lu(k,384) * lu(k,992) + lu(k,1016) = lu(k,1016) - lu(k,385) * lu(k,992) + lu(k,2221) = - lu(k,381) * lu(k,2206) + lu(k,2229) = lu(k,2229) - lu(k,382) * lu(k,2206) + lu(k,2234) = lu(k,2234) - lu(k,383) * lu(k,2206) + lu(k,2241) = lu(k,2241) - lu(k,384) * lu(k,2206) + lu(k,2255) = lu(k,2255) - lu(k,385) * lu(k,2206) + lu(k,386) = 1._r8 / lu(k,386) + lu(k,387) = lu(k,387) * lu(k,386) + lu(k,388) = lu(k,388) * lu(k,386) + lu(k,389) = lu(k,389) * lu(k,386) + lu(k,390) = lu(k,390) * lu(k,386) + lu(k,391) = lu(k,391) * lu(k,386) + lu(k,1522) = lu(k,1522) - lu(k,387) * lu(k,1516) + lu(k,1527) = lu(k,1527) - lu(k,388) * lu(k,1516) + lu(k,1528) = lu(k,1528) - lu(k,389) * lu(k,1516) + lu(k,1534) = lu(k,1534) - lu(k,390) * lu(k,1516) + lu(k,1536) = lu(k,1536) - lu(k,391) * lu(k,1516) + lu(k,1686) = lu(k,1686) - lu(k,387) * lu(k,1595) + lu(k,1691) = lu(k,1691) - lu(k,388) * lu(k,1595) + lu(k,1692) = lu(k,1692) - lu(k,389) * lu(k,1595) + lu(k,1698) = lu(k,1698) - lu(k,390) * lu(k,1595) + lu(k,1700) = lu(k,1700) - lu(k,391) * lu(k,1595) + lu(k,1996) = lu(k,1996) - lu(k,387) * lu(k,1980) + lu(k,2001) = - lu(k,388) * lu(k,1980) + lu(k,2002) = lu(k,2002) - lu(k,389) * lu(k,1980) + lu(k,2008) = lu(k,2008) - lu(k,390) * lu(k,1980) + lu(k,2010) = lu(k,2010) - lu(k,391) * lu(k,1980) + lu(k,392) = 1._r8 / lu(k,392) + lu(k,393) = lu(k,393) * lu(k,392) + lu(k,394) = lu(k,394) * lu(k,392) + lu(k,395) = lu(k,395) * lu(k,392) + lu(k,396) = lu(k,396) * lu(k,392) + lu(k,397) = lu(k,397) * lu(k,392) + lu(k,1045) = lu(k,1045) - lu(k,393) * lu(k,1042) + lu(k,1046) = lu(k,1046) - lu(k,394) * lu(k,1042) + lu(k,1050) = - lu(k,395) * lu(k,1042) + lu(k,1052) = - lu(k,396) * lu(k,1042) + lu(k,1056) = lu(k,1056) - lu(k,397) * lu(k,1042) + lu(k,1660) = lu(k,1660) - lu(k,393) * lu(k,1596) + lu(k,1664) = lu(k,1664) - lu(k,394) * lu(k,1596) + lu(k,1689) = lu(k,1689) - lu(k,395) * lu(k,1596) + lu(k,1692) = lu(k,1692) - lu(k,396) * lu(k,1596) + lu(k,1697) = lu(k,1697) - lu(k,397) * lu(k,1596) + lu(k,2082) = - lu(k,393) * lu(k,2036) + lu(k,2084) = lu(k,2084) - lu(k,394) * lu(k,2036) + lu(k,2106) = - lu(k,395) * lu(k,2036) + lu(k,2109) = lu(k,2109) - lu(k,396) * lu(k,2036) + lu(k,2114) = lu(k,2114) - lu(k,397) * lu(k,2036) + lu(k,398) = 1._r8 / lu(k,398) + lu(k,399) = lu(k,399) * lu(k,398) + lu(k,400) = lu(k,400) * lu(k,398) + lu(k,401) = lu(k,401) * lu(k,398) + lu(k,402) = lu(k,402) * lu(k,398) + lu(k,403) = lu(k,403) * lu(k,398) + lu(k,1130) = lu(k,1130) - lu(k,399) * lu(k,1128) + lu(k,1133) = lu(k,1133) - lu(k,400) * lu(k,1128) + lu(k,1134) = lu(k,1134) - lu(k,401) * lu(k,1128) + lu(k,1135) = lu(k,1135) - lu(k,402) * lu(k,1128) + lu(k,1140) = - lu(k,403) * lu(k,1128) + lu(k,1671) = lu(k,1671) - lu(k,399) * lu(k,1597) + lu(k,1684) = lu(k,1684) - lu(k,400) * lu(k,1597) + lu(k,1690) = lu(k,1690) - lu(k,401) * lu(k,1597) + lu(k,1692) = lu(k,1692) - lu(k,402) * lu(k,1597) + lu(k,1704) = lu(k,1704) - lu(k,403) * lu(k,1597) + lu(k,2090) = lu(k,2090) - lu(k,399) * lu(k,2037) + lu(k,2101) = lu(k,2101) - lu(k,400) * lu(k,2037) + lu(k,2107) = lu(k,2107) - lu(k,401) * lu(k,2037) + lu(k,2109) = lu(k,2109) - lu(k,402) * lu(k,2037) + lu(k,2121) = lu(k,2121) - lu(k,403) * lu(k,2037) + lu(k,404) = 1._r8 / lu(k,404) + lu(k,405) = lu(k,405) * lu(k,404) + lu(k,406) = lu(k,406) * lu(k,404) + lu(k,407) = lu(k,407) * lu(k,404) + lu(k,408) = lu(k,408) * lu(k,404) + lu(k,409) = lu(k,409) * lu(k,404) + lu(k,1187) = - lu(k,405) * lu(k,1186) + lu(k,1189) = lu(k,1189) - lu(k,406) * lu(k,1186) + lu(k,1201) = lu(k,1201) - lu(k,407) * lu(k,1186) + lu(k,1205) = lu(k,1205) - lu(k,408) * lu(k,1186) + lu(k,1206) = lu(k,1206) - lu(k,409) * lu(k,1186) + lu(k,1639) = lu(k,1639) - lu(k,405) * lu(k,1598) + lu(k,1651) = lu(k,1651) - lu(k,406) * lu(k,1598) + lu(k,1692) = lu(k,1692) - lu(k,407) * lu(k,1598) + lu(k,1697) = lu(k,1697) - lu(k,408) * lu(k,1598) + lu(k,1699) = lu(k,1699) - lu(k,409) * lu(k,1598) + lu(k,2066) = lu(k,2066) - lu(k,405) * lu(k,2038) + lu(k,2076) = - lu(k,406) * lu(k,2038) + lu(k,2109) = lu(k,2109) - lu(k,407) * lu(k,2038) + lu(k,2114) = lu(k,2114) - lu(k,408) * lu(k,2038) + lu(k,2116) = lu(k,2116) - lu(k,409) * lu(k,2038) + end do + end subroutine lu_fac08 + subroutine lu_fac09( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,410) = 1._r8 / lu(k,410) + lu(k,411) = lu(k,411) * lu(k,410) + lu(k,412) = lu(k,412) * lu(k,410) + lu(k,413) = lu(k,413) * lu(k,410) + lu(k,414) = lu(k,414) * lu(k,410) + lu(k,415) = lu(k,415) * lu(k,410) + lu(k,788) = lu(k,788) - lu(k,411) * lu(k,787) + lu(k,789) = lu(k,789) - lu(k,412) * lu(k,787) + lu(k,792) = - lu(k,413) * lu(k,787) + lu(k,796) = lu(k,796) - lu(k,414) * lu(k,787) + lu(k,797) = - lu(k,415) * lu(k,787) + lu(k,1643) = lu(k,1643) - lu(k,411) * lu(k,1599) + lu(k,1657) = lu(k,1657) - lu(k,412) * lu(k,1599) + lu(k,1692) = lu(k,1692) - lu(k,413) * lu(k,1599) + lu(k,1699) = lu(k,1699) - lu(k,414) * lu(k,1599) + lu(k,1704) = lu(k,1704) - lu(k,415) * lu(k,1599) + lu(k,2071) = lu(k,2071) - lu(k,411) * lu(k,2039) + lu(k,2080) = - lu(k,412) * lu(k,2039) + lu(k,2109) = lu(k,2109) - lu(k,413) * lu(k,2039) + lu(k,2116) = lu(k,2116) - lu(k,414) * lu(k,2039) + lu(k,2121) = lu(k,2121) - lu(k,415) * lu(k,2039) + lu(k,416) = 1._r8 / lu(k,416) + lu(k,417) = lu(k,417) * lu(k,416) + lu(k,418) = lu(k,418) * lu(k,416) + lu(k,419) = lu(k,419) * lu(k,416) + lu(k,420) = lu(k,420) * lu(k,416) + lu(k,421) = lu(k,421) * lu(k,416) + lu(k,483) = lu(k,483) - lu(k,417) * lu(k,482) + lu(k,484) = lu(k,484) - lu(k,418) * lu(k,482) + lu(k,486) = lu(k,486) - lu(k,419) * lu(k,482) + lu(k,487) = - lu(k,420) * lu(k,482) + lu(k,490) = lu(k,490) - lu(k,421) * lu(k,482) + lu(k,1606) = lu(k,1606) - lu(k,417) * lu(k,1600) + lu(k,1610) = lu(k,1610) - lu(k,418) * lu(k,1600) + lu(k,1661) = lu(k,1661) - lu(k,419) * lu(k,1600) + lu(k,1692) = lu(k,1692) - lu(k,420) * lu(k,1600) + lu(k,1699) = lu(k,1699) - lu(k,421) * lu(k,1600) + lu(k,2047) = - lu(k,417) * lu(k,2040) + lu(k,2050) = lu(k,2050) - lu(k,418) * lu(k,2040) + lu(k,2083) = lu(k,2083) - lu(k,419) * lu(k,2040) + lu(k,2109) = lu(k,2109) - lu(k,420) * lu(k,2040) + lu(k,2116) = lu(k,2116) - lu(k,421) * lu(k,2040) + lu(k,422) = 1._r8 / lu(k,422) + lu(k,423) = lu(k,423) * lu(k,422) + lu(k,424) = lu(k,424) * lu(k,422) + lu(k,425) = lu(k,425) * lu(k,422) + lu(k,426) = lu(k,426) * lu(k,422) + lu(k,427) = lu(k,427) * lu(k,422) + lu(k,1692) = lu(k,1692) - lu(k,423) * lu(k,1601) + lu(k,1694) = lu(k,1694) - lu(k,424) * lu(k,1601) + lu(k,1697) = lu(k,1697) - lu(k,425) * lu(k,1601) + lu(k,1699) = lu(k,1699) - lu(k,426) * lu(k,1601) + lu(k,1704) = lu(k,1704) - lu(k,427) * lu(k,1601) + lu(k,1963) = lu(k,1963) - lu(k,423) * lu(k,1935) + lu(k,1965) = lu(k,1965) - lu(k,424) * lu(k,1935) + lu(k,1968) = lu(k,1968) - lu(k,425) * lu(k,1935) + lu(k,1970) = lu(k,1970) - lu(k,426) * lu(k,1935) + lu(k,1975) = - lu(k,427) * lu(k,1935) + lu(k,2109) = lu(k,2109) - lu(k,423) * lu(k,2041) + lu(k,2111) = lu(k,2111) - lu(k,424) * lu(k,2041) + lu(k,2114) = lu(k,2114) - lu(k,425) * lu(k,2041) + lu(k,2116) = lu(k,2116) - lu(k,426) * lu(k,2041) + lu(k,2121) = lu(k,2121) - lu(k,427) * lu(k,2041) + lu(k,428) = 1._r8 / lu(k,428) + lu(k,429) = lu(k,429) * lu(k,428) + lu(k,430) = lu(k,430) * lu(k,428) + lu(k,431) = lu(k,431) * lu(k,428) + lu(k,432) = lu(k,432) * lu(k,428) + lu(k,433) = lu(k,433) * lu(k,428) + lu(k,500) = lu(k,500) - lu(k,429) * lu(k,499) + lu(k,501) = lu(k,501) - lu(k,430) * lu(k,499) + lu(k,502) = lu(k,502) - lu(k,431) * lu(k,499) + lu(k,503) = - lu(k,432) * lu(k,499) + lu(k,506) = lu(k,506) - lu(k,433) * lu(k,499) + lu(k,1612) = lu(k,1612) - lu(k,429) * lu(k,1602) + lu(k,1661) = lu(k,1661) - lu(k,430) * lu(k,1602) + lu(k,1677) = lu(k,1677) - lu(k,431) * lu(k,1602) + lu(k,1692) = lu(k,1692) - lu(k,432) * lu(k,1602) + lu(k,1699) = lu(k,1699) - lu(k,433) * lu(k,1602) + lu(k,2051) = lu(k,2051) - lu(k,429) * lu(k,2042) + lu(k,2083) = lu(k,2083) - lu(k,430) * lu(k,2042) + lu(k,2095) = lu(k,2095) - lu(k,431) * lu(k,2042) + lu(k,2109) = lu(k,2109) - lu(k,432) * lu(k,2042) + lu(k,2116) = lu(k,2116) - lu(k,433) * lu(k,2042) + lu(k,436) = 1._r8 / lu(k,436) + lu(k,437) = lu(k,437) * lu(k,436) + lu(k,438) = lu(k,438) * lu(k,436) + lu(k,439) = lu(k,439) * lu(k,436) + lu(k,440) = lu(k,440) * lu(k,436) + lu(k,441) = lu(k,441) * lu(k,436) + lu(k,1615) = lu(k,1615) - lu(k,437) * lu(k,1603) + lu(k,1692) = lu(k,1692) - lu(k,438) * lu(k,1603) + lu(k,1696) = lu(k,1696) - lu(k,439) * lu(k,1603) + lu(k,1697) = lu(k,1697) - lu(k,440) * lu(k,1603) + lu(k,1699) = lu(k,1699) - lu(k,441) * lu(k,1603) + lu(k,1867) = lu(k,1867) - lu(k,437) * lu(k,1858) + lu(k,1919) = lu(k,1919) - lu(k,438) * lu(k,1858) + lu(k,1923) = lu(k,1923) - lu(k,439) * lu(k,1858) + lu(k,1924) = lu(k,1924) - lu(k,440) * lu(k,1858) + lu(k,1926) = lu(k,1926) - lu(k,441) * lu(k,1858) + lu(k,2052) = lu(k,2052) - lu(k,437) * lu(k,2043) + lu(k,2109) = lu(k,2109) - lu(k,438) * lu(k,2043) + lu(k,2113) = lu(k,2113) - lu(k,439) * lu(k,2043) + lu(k,2114) = lu(k,2114) - lu(k,440) * lu(k,2043) + lu(k,2116) = lu(k,2116) - lu(k,441) * lu(k,2043) + lu(k,442) = 1._r8 / lu(k,442) + lu(k,443) = lu(k,443) * lu(k,442) + lu(k,444) = lu(k,444) * lu(k,442) + lu(k,445) = lu(k,445) * lu(k,442) + lu(k,446) = lu(k,446) * lu(k,442) + lu(k,447) = lu(k,447) * lu(k,442) + lu(k,1479) = - lu(k,443) * lu(k,1477) + lu(k,1486) = lu(k,1486) - lu(k,444) * lu(k,1477) + lu(k,1491) = - lu(k,445) * lu(k,1477) + lu(k,1492) = - lu(k,446) * lu(k,1477) + lu(k,1494) = lu(k,1494) - lu(k,447) * lu(k,1477) + lu(k,1890) = lu(k,1890) - lu(k,443) * lu(k,1859) + lu(k,1917) = lu(k,1917) - lu(k,444) * lu(k,1859) + lu(k,1923) = lu(k,1923) - lu(k,445) * lu(k,1859) + lu(k,1924) = lu(k,1924) - lu(k,446) * lu(k,1859) + lu(k,1926) = lu(k,1926) - lu(k,447) * lu(k,1859) + lu(k,2081) = lu(k,2081) - lu(k,443) * lu(k,2044) + lu(k,2107) = lu(k,2107) - lu(k,444) * lu(k,2044) + lu(k,2113) = lu(k,2113) - lu(k,445) * lu(k,2044) + lu(k,2114) = lu(k,2114) - lu(k,446) * lu(k,2044) + lu(k,2116) = lu(k,2116) - lu(k,447) * lu(k,2044) + lu(k,449) = 1._r8 / lu(k,449) + lu(k,450) = lu(k,450) * lu(k,449) + lu(k,451) = lu(k,451) * lu(k,449) + lu(k,452) = lu(k,452) * lu(k,449) + lu(k,453) = lu(k,453) * lu(k,449) + lu(k,454) = lu(k,454) * lu(k,449) + lu(k,1661) = lu(k,1661) - lu(k,450) * lu(k,1604) + lu(k,1692) = lu(k,1692) - lu(k,451) * lu(k,1604) + lu(k,1696) = lu(k,1696) - lu(k,452) * lu(k,1604) + lu(k,1697) = lu(k,1697) - lu(k,453) * lu(k,1604) + lu(k,1699) = lu(k,1699) - lu(k,454) * lu(k,1604) + lu(k,1892) = lu(k,1892) - lu(k,450) * lu(k,1860) + lu(k,1919) = lu(k,1919) - lu(k,451) * lu(k,1860) + lu(k,1923) = lu(k,1923) - lu(k,452) * lu(k,1860) + lu(k,1924) = lu(k,1924) - lu(k,453) * lu(k,1860) + lu(k,1926) = lu(k,1926) - lu(k,454) * lu(k,1860) + lu(k,2083) = lu(k,2083) - lu(k,450) * lu(k,2045) + lu(k,2109) = lu(k,2109) - lu(k,451) * lu(k,2045) + lu(k,2113) = lu(k,2113) - lu(k,452) * lu(k,2045) + lu(k,2114) = lu(k,2114) - lu(k,453) * lu(k,2045) + lu(k,2116) = lu(k,2116) - lu(k,454) * lu(k,2045) + end do + end subroutine lu_fac09 + subroutine lu_fac10( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,455) = 1._r8 / lu(k,455) + lu(k,456) = lu(k,456) * lu(k,455) + lu(k,457) = lu(k,457) * lu(k,455) + lu(k,458) = lu(k,458) * lu(k,455) + lu(k,459) = lu(k,459) * lu(k,455) + lu(k,460) = lu(k,460) * lu(k,455) + lu(k,1688) = lu(k,1688) - lu(k,456) * lu(k,1605) + lu(k,1690) = lu(k,1690) - lu(k,457) * lu(k,1605) + lu(k,1692) = lu(k,1692) - lu(k,458) * lu(k,1605) + lu(k,1695) = lu(k,1695) - lu(k,459) * lu(k,1605) + lu(k,1704) = lu(k,1704) - lu(k,460) * lu(k,1605) + lu(k,1823) = - lu(k,456) * lu(k,1791) + lu(k,1825) = lu(k,1825) - lu(k,457) * lu(k,1791) + lu(k,1827) = lu(k,1827) - lu(k,458) * lu(k,1791) + lu(k,1830) = lu(k,1830) - lu(k,459) * lu(k,1791) + lu(k,1839) = - lu(k,460) * lu(k,1791) + lu(k,2105) = lu(k,2105) - lu(k,456) * lu(k,2046) + lu(k,2107) = lu(k,2107) - lu(k,457) * lu(k,2046) + lu(k,2109) = lu(k,2109) - lu(k,458) * lu(k,2046) + lu(k,2112) = lu(k,2112) - lu(k,459) * lu(k,2046) + lu(k,2121) = lu(k,2121) - lu(k,460) * lu(k,2046) + lu(k,461) = 1._r8 / lu(k,461) + lu(k,462) = lu(k,462) * lu(k,461) + lu(k,463) = lu(k,463) * lu(k,461) + lu(k,485) = - lu(k,462) * lu(k,483) + lu(k,490) = lu(k,490) - lu(k,463) * lu(k,483) + lu(k,657) = - lu(k,462) * lu(k,654) + lu(k,665) = lu(k,665) - lu(k,463) * lu(k,654) + lu(k,695) = - lu(k,462) * lu(k,692) + lu(k,704) = lu(k,704) - lu(k,463) * lu(k,692) + lu(k,724) = - lu(k,462) * lu(k,721) + lu(k,734) = lu(k,734) - lu(k,463) * lu(k,721) + lu(k,748) = - lu(k,462) * lu(k,745) + lu(k,759) = lu(k,759) - lu(k,463) * lu(k,745) + lu(k,1637) = - lu(k,462) * lu(k,1606) + lu(k,1699) = lu(k,1699) - lu(k,463) * lu(k,1606) + lu(k,1877) = lu(k,1877) - lu(k,462) * lu(k,1861) + lu(k,1926) = lu(k,1926) - lu(k,463) * lu(k,1861) + lu(k,2064) = lu(k,2064) - lu(k,462) * lu(k,2047) + lu(k,2116) = lu(k,2116) - lu(k,463) * lu(k,2047) + lu(k,464) = 1._r8 / lu(k,464) + lu(k,465) = lu(k,465) * lu(k,464) + lu(k,466) = lu(k,466) * lu(k,464) + lu(k,467) = lu(k,467) * lu(k,464) + lu(k,626) = lu(k,626) - lu(k,465) * lu(k,625) + lu(k,629) = lu(k,629) - lu(k,466) * lu(k,625) + lu(k,631) = - lu(k,467) * lu(k,625) + lu(k,1628) = lu(k,1628) - lu(k,465) * lu(k,1607) + lu(k,1697) = lu(k,1697) - lu(k,466) * lu(k,1607) + lu(k,1703) = lu(k,1703) - lu(k,467) * lu(k,1607) + lu(k,1873) = lu(k,1873) - lu(k,465) * lu(k,1862) + lu(k,1924) = lu(k,1924) - lu(k,466) * lu(k,1862) + lu(k,1930) = lu(k,1930) - lu(k,467) * lu(k,1862) + lu(k,1942) = - lu(k,465) * lu(k,1936) + lu(k,1968) = lu(k,1968) - lu(k,466) * lu(k,1936) + lu(k,1974) = lu(k,1974) - lu(k,467) * lu(k,1936) + lu(k,2056) = lu(k,2056) - lu(k,465) * lu(k,2048) + lu(k,2114) = lu(k,2114) - lu(k,466) * lu(k,2048) + lu(k,2120) = lu(k,2120) - lu(k,467) * lu(k,2048) + lu(k,2210) = lu(k,2210) - lu(k,465) * lu(k,2207) + lu(k,2253) = lu(k,2253) - lu(k,466) * lu(k,2207) + lu(k,2259) = lu(k,2259) - lu(k,467) * lu(k,2207) + lu(k,468) = 1._r8 / lu(k,468) + lu(k,469) = lu(k,469) * lu(k,468) + lu(k,470) = lu(k,470) * lu(k,468) + lu(k,471) = lu(k,471) * lu(k,468) + lu(k,472) = lu(k,472) * lu(k,468) + lu(k,473) = lu(k,473) * lu(k,468) + lu(k,474) = lu(k,474) * lu(k,468) + lu(k,1522) = lu(k,1522) - lu(k,469) * lu(k,1517) + lu(k,1527) = lu(k,1527) - lu(k,470) * lu(k,1517) + lu(k,1528) = lu(k,1528) - lu(k,471) * lu(k,1517) + lu(k,1534) = lu(k,1534) - lu(k,472) * lu(k,1517) + lu(k,1536) = lu(k,1536) - lu(k,473) * lu(k,1517) + lu(k,1540) = lu(k,1540) - lu(k,474) * lu(k,1517) + lu(k,1686) = lu(k,1686) - lu(k,469) * lu(k,1608) + lu(k,1691) = lu(k,1691) - lu(k,470) * lu(k,1608) + lu(k,1692) = lu(k,1692) - lu(k,471) * lu(k,1608) + lu(k,1698) = lu(k,1698) - lu(k,472) * lu(k,1608) + lu(k,1700) = lu(k,1700) - lu(k,473) * lu(k,1608) + lu(k,1704) = lu(k,1704) - lu(k,474) * lu(k,1608) + lu(k,1996) = lu(k,1996) - lu(k,469) * lu(k,1981) + lu(k,2001) = lu(k,2001) - lu(k,470) * lu(k,1981) + lu(k,2002) = lu(k,2002) - lu(k,471) * lu(k,1981) + lu(k,2008) = lu(k,2008) - lu(k,472) * lu(k,1981) + lu(k,2010) = lu(k,2010) - lu(k,473) * lu(k,1981) + lu(k,2014) = lu(k,2014) - lu(k,474) * lu(k,1981) + lu(k,475) = 1._r8 / lu(k,475) + lu(k,476) = lu(k,476) * lu(k,475) + lu(k,477) = lu(k,477) * lu(k,475) + lu(k,478) = lu(k,478) * lu(k,475) + lu(k,479) = lu(k,479) * lu(k,475) + lu(k,480) = lu(k,480) * lu(k,475) + lu(k,481) = lu(k,481) * lu(k,475) + lu(k,913) = lu(k,913) - lu(k,476) * lu(k,910) + lu(k,914) = lu(k,914) - lu(k,477) * lu(k,910) + lu(k,915) = lu(k,915) - lu(k,478) * lu(k,910) + lu(k,917) = lu(k,917) - lu(k,479) * lu(k,910) + lu(k,918) = - lu(k,480) * lu(k,910) + lu(k,922) = lu(k,922) - lu(k,481) * lu(k,910) + lu(k,1656) = lu(k,1656) - lu(k,476) * lu(k,1609) + lu(k,1657) = lu(k,1657) - lu(k,477) * lu(k,1609) + lu(k,1660) = lu(k,1660) - lu(k,478) * lu(k,1609) + lu(k,1690) = lu(k,1690) - lu(k,479) * lu(k,1609) + lu(k,1692) = lu(k,1692) - lu(k,480) * lu(k,1609) + lu(k,1699) = lu(k,1699) - lu(k,481) * lu(k,1609) + lu(k,2079) = lu(k,2079) - lu(k,476) * lu(k,2049) + lu(k,2080) = lu(k,2080) - lu(k,477) * lu(k,2049) + lu(k,2082) = lu(k,2082) - lu(k,478) * lu(k,2049) + lu(k,2107) = lu(k,2107) - lu(k,479) * lu(k,2049) + lu(k,2109) = lu(k,2109) - lu(k,480) * lu(k,2049) + lu(k,2116) = lu(k,2116) - lu(k,481) * lu(k,2049) + lu(k,484) = 1._r8 / lu(k,484) + lu(k,485) = lu(k,485) * lu(k,484) + lu(k,486) = lu(k,486) * lu(k,484) + lu(k,487) = lu(k,487) * lu(k,484) + lu(k,488) = lu(k,488) * lu(k,484) + lu(k,489) = lu(k,489) * lu(k,484) + lu(k,490) = lu(k,490) * lu(k,484) + lu(k,1637) = lu(k,1637) - lu(k,485) * lu(k,1610) + lu(k,1661) = lu(k,1661) - lu(k,486) * lu(k,1610) + lu(k,1692) = lu(k,1692) - lu(k,487) * lu(k,1610) + lu(k,1696) = lu(k,1696) - lu(k,488) * lu(k,1610) + lu(k,1697) = lu(k,1697) - lu(k,489) * lu(k,1610) + lu(k,1699) = lu(k,1699) - lu(k,490) * lu(k,1610) + lu(k,1877) = lu(k,1877) - lu(k,485) * lu(k,1863) + lu(k,1892) = lu(k,1892) - lu(k,486) * lu(k,1863) + lu(k,1919) = lu(k,1919) - lu(k,487) * lu(k,1863) + lu(k,1923) = lu(k,1923) - lu(k,488) * lu(k,1863) + lu(k,1924) = lu(k,1924) - lu(k,489) * lu(k,1863) + lu(k,1926) = lu(k,1926) - lu(k,490) * lu(k,1863) + lu(k,2064) = lu(k,2064) - lu(k,485) * lu(k,2050) + lu(k,2083) = lu(k,2083) - lu(k,486) * lu(k,2050) + lu(k,2109) = lu(k,2109) - lu(k,487) * lu(k,2050) + lu(k,2113) = lu(k,2113) - lu(k,488) * lu(k,2050) + lu(k,2114) = lu(k,2114) - lu(k,489) * lu(k,2050) + lu(k,2116) = lu(k,2116) - lu(k,490) * lu(k,2050) + lu(k,492) = 1._r8 / lu(k,492) + lu(k,493) = lu(k,493) * lu(k,492) + lu(k,494) = lu(k,494) * lu(k,492) + lu(k,495) = lu(k,495) * lu(k,492) + lu(k,496) = lu(k,496) * lu(k,492) + lu(k,497) = lu(k,497) * lu(k,492) + lu(k,498) = lu(k,498) * lu(k,492) + lu(k,1688) = lu(k,1688) - lu(k,493) * lu(k,1611) + lu(k,1691) = lu(k,1691) - lu(k,494) * lu(k,1611) + lu(k,1692) = lu(k,1692) - lu(k,495) * lu(k,1611) + lu(k,1696) = lu(k,1696) - lu(k,496) * lu(k,1611) + lu(k,1697) = lu(k,1697) - lu(k,497) * lu(k,1611) + lu(k,1702) = lu(k,1702) - lu(k,498) * lu(k,1611) + lu(k,1915) = - lu(k,493) * lu(k,1864) + lu(k,1918) = - lu(k,494) * lu(k,1864) + lu(k,1919) = lu(k,1919) - lu(k,495) * lu(k,1864) + lu(k,1923) = lu(k,1923) - lu(k,496) * lu(k,1864) + lu(k,1924) = lu(k,1924) - lu(k,497) * lu(k,1864) + lu(k,1929) = lu(k,1929) - lu(k,498) * lu(k,1864) + lu(k,1959) = - lu(k,493) * lu(k,1937) + lu(k,1962) = lu(k,1962) - lu(k,494) * lu(k,1937) + lu(k,1963) = lu(k,1963) - lu(k,495) * lu(k,1937) + lu(k,1967) = lu(k,1967) - lu(k,496) * lu(k,1937) + lu(k,1968) = lu(k,1968) - lu(k,497) * lu(k,1937) + lu(k,1973) = lu(k,1973) - lu(k,498) * lu(k,1937) + end do + end subroutine lu_fac10 + subroutine lu_fac11( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,500) = 1._r8 / lu(k,500) + lu(k,501) = lu(k,501) * lu(k,500) + lu(k,502) = lu(k,502) * lu(k,500) + lu(k,503) = lu(k,503) * lu(k,500) + lu(k,504) = lu(k,504) * lu(k,500) + lu(k,505) = lu(k,505) * lu(k,500) + lu(k,506) = lu(k,506) * lu(k,500) + lu(k,1661) = lu(k,1661) - lu(k,501) * lu(k,1612) + lu(k,1677) = lu(k,1677) - lu(k,502) * lu(k,1612) + lu(k,1692) = lu(k,1692) - lu(k,503) * lu(k,1612) + lu(k,1696) = lu(k,1696) - lu(k,504) * lu(k,1612) + lu(k,1697) = lu(k,1697) - lu(k,505) * lu(k,1612) + lu(k,1699) = lu(k,1699) - lu(k,506) * lu(k,1612) + lu(k,1892) = lu(k,1892) - lu(k,501) * lu(k,1865) + lu(k,1906) = lu(k,1906) - lu(k,502) * lu(k,1865) + lu(k,1919) = lu(k,1919) - lu(k,503) * lu(k,1865) + lu(k,1923) = lu(k,1923) - lu(k,504) * lu(k,1865) + lu(k,1924) = lu(k,1924) - lu(k,505) * lu(k,1865) + lu(k,1926) = lu(k,1926) - lu(k,506) * lu(k,1865) + lu(k,2083) = lu(k,2083) - lu(k,501) * lu(k,2051) + lu(k,2095) = lu(k,2095) - lu(k,502) * lu(k,2051) + lu(k,2109) = lu(k,2109) - lu(k,503) * lu(k,2051) + lu(k,2113) = lu(k,2113) - lu(k,504) * lu(k,2051) + lu(k,2114) = lu(k,2114) - lu(k,505) * lu(k,2051) + lu(k,2116) = lu(k,2116) - lu(k,506) * lu(k,2051) + lu(k,507) = 1._r8 / lu(k,507) + lu(k,508) = lu(k,508) * lu(k,507) + lu(k,509) = lu(k,509) * lu(k,507) + lu(k,510) = lu(k,510) * lu(k,507) + lu(k,511) = lu(k,511) * lu(k,507) + lu(k,634) = - lu(k,508) * lu(k,632) + lu(k,635) = - lu(k,509) * lu(k,632) + lu(k,639) = - lu(k,510) * lu(k,632) + lu(k,641) = lu(k,641) - lu(k,511) * lu(k,632) + lu(k,668) = - lu(k,508) * lu(k,666) + lu(k,669) = - lu(k,509) * lu(k,666) + lu(k,672) = - lu(k,510) * lu(k,666) + lu(k,674) = lu(k,674) - lu(k,511) * lu(k,666) + lu(k,886) = - lu(k,508) * lu(k,883) + lu(k,887) = - lu(k,509) * lu(k,883) + lu(k,891) = - lu(k,510) * lu(k,883) + lu(k,893) = - lu(k,511) * lu(k,883) + lu(k,1633) = lu(k,1633) - lu(k,508) * lu(k,1613) + lu(k,1648) = lu(k,1648) - lu(k,509) * lu(k,1613) + lu(k,1684) = lu(k,1684) - lu(k,510) * lu(k,1613) + lu(k,1692) = lu(k,1692) - lu(k,511) * lu(k,1613) + lu(k,1875) = lu(k,1875) - lu(k,508) * lu(k,1866) + lu(k,1884) = lu(k,1884) - lu(k,509) * lu(k,1866) + lu(k,1912) = lu(k,1912) - lu(k,510) * lu(k,1866) + lu(k,1919) = lu(k,1919) - lu(k,511) * lu(k,1866) + lu(k,512) = 1._r8 / lu(k,512) + lu(k,513) = lu(k,513) * lu(k,512) + lu(k,514) = lu(k,514) * lu(k,512) + lu(k,515) = lu(k,515) * lu(k,512) + lu(k,516) = lu(k,516) * lu(k,512) + lu(k,517) = lu(k,517) * lu(k,512) + lu(k,1233) = lu(k,1233) - lu(k,513) * lu(k,1231) + lu(k,1235) = lu(k,1235) - lu(k,514) * lu(k,1231) + lu(k,1236) = lu(k,1236) - lu(k,515) * lu(k,1231) + lu(k,1243) = lu(k,1243) - lu(k,516) * lu(k,1231) + lu(k,1244) = lu(k,1244) - lu(k,517) * lu(k,1231) + lu(k,1678) = lu(k,1678) - lu(k,513) * lu(k,1614) + lu(k,1688) = lu(k,1688) - lu(k,514) * lu(k,1614) + lu(k,1692) = lu(k,1692) - lu(k,515) * lu(k,1614) + lu(k,1702) = lu(k,1702) - lu(k,516) * lu(k,1614) + lu(k,1703) = lu(k,1703) - lu(k,517) * lu(k,1614) + lu(k,2179) = lu(k,2179) - lu(k,513) * lu(k,2170) + lu(k,2183) = lu(k,2183) - lu(k,514) * lu(k,2170) + lu(k,2187) = lu(k,2187) - lu(k,515) * lu(k,2170) + lu(k,2197) = lu(k,2197) - lu(k,516) * lu(k,2170) + lu(k,2198) = lu(k,2198) - lu(k,517) * lu(k,2170) + lu(k,2235) = lu(k,2235) - lu(k,513) * lu(k,2208) + lu(k,2244) = lu(k,2244) - lu(k,514) * lu(k,2208) + lu(k,2248) = lu(k,2248) - lu(k,515) * lu(k,2208) + lu(k,2258) = lu(k,2258) - lu(k,516) * lu(k,2208) + lu(k,2259) = lu(k,2259) - lu(k,517) * lu(k,2208) + lu(k,519) = 1._r8 / lu(k,519) + lu(k,520) = lu(k,520) * lu(k,519) + lu(k,521) = lu(k,521) * lu(k,519) + lu(k,522) = lu(k,522) * lu(k,519) + lu(k,523) = lu(k,523) * lu(k,519) + lu(k,524) = lu(k,524) * lu(k,519) + lu(k,1628) = lu(k,1628) - lu(k,520) * lu(k,1615) + lu(k,1692) = lu(k,1692) - lu(k,521) * lu(k,1615) + lu(k,1696) = lu(k,1696) - lu(k,522) * lu(k,1615) + lu(k,1697) = lu(k,1697) - lu(k,523) * lu(k,1615) + lu(k,1699) = lu(k,1699) - lu(k,524) * lu(k,1615) + lu(k,1873) = lu(k,1873) - lu(k,520) * lu(k,1867) + lu(k,1919) = lu(k,1919) - lu(k,521) * lu(k,1867) + lu(k,1923) = lu(k,1923) - lu(k,522) * lu(k,1867) + lu(k,1924) = lu(k,1924) - lu(k,523) * lu(k,1867) + lu(k,1926) = lu(k,1926) - lu(k,524) * lu(k,1867) + lu(k,1942) = lu(k,1942) - lu(k,520) * lu(k,1938) + lu(k,1963) = lu(k,1963) - lu(k,521) * lu(k,1938) + lu(k,1967) = lu(k,1967) - lu(k,522) * lu(k,1938) + lu(k,1968) = lu(k,1968) - lu(k,523) * lu(k,1938) + lu(k,1970) = lu(k,1970) - lu(k,524) * lu(k,1938) + lu(k,2056) = lu(k,2056) - lu(k,520) * lu(k,2052) + lu(k,2109) = lu(k,2109) - lu(k,521) * lu(k,2052) + lu(k,2113) = lu(k,2113) - lu(k,522) * lu(k,2052) + lu(k,2114) = lu(k,2114) - lu(k,523) * lu(k,2052) + lu(k,2116) = lu(k,2116) - lu(k,524) * lu(k,2052) + lu(k,525) = 1._r8 / lu(k,525) + lu(k,526) = lu(k,526) * lu(k,525) + lu(k,527) = lu(k,527) * lu(k,525) + lu(k,528) = lu(k,528) * lu(k,525) + lu(k,529) = lu(k,529) * lu(k,525) + lu(k,530) = lu(k,530) * lu(k,525) + lu(k,531) = lu(k,531) * lu(k,525) + lu(k,532) = lu(k,532) * lu(k,525) + lu(k,1372) = lu(k,1372) - lu(k,526) * lu(k,1369) + lu(k,1387) = lu(k,1387) - lu(k,527) * lu(k,1369) + lu(k,1390) = lu(k,1390) - lu(k,528) * lu(k,1369) + lu(k,1391) = lu(k,1391) - lu(k,529) * lu(k,1369) + lu(k,1392) = - lu(k,530) * lu(k,1369) + lu(k,1393) = lu(k,1393) - lu(k,531) * lu(k,1369) + lu(k,1395) = lu(k,1395) - lu(k,532) * lu(k,1369) + lu(k,1645) = lu(k,1645) - lu(k,526) * lu(k,1616) + lu(k,1684) = lu(k,1684) - lu(k,527) * lu(k,1616) + lu(k,1690) = lu(k,1690) - lu(k,528) * lu(k,1616) + lu(k,1692) = lu(k,1692) - lu(k,529) * lu(k,1616) + lu(k,1694) = lu(k,1694) - lu(k,530) * lu(k,1616) + lu(k,1695) = lu(k,1695) - lu(k,531) * lu(k,1616) + lu(k,1697) = lu(k,1697) - lu(k,532) * lu(k,1616) + lu(k,1946) = - lu(k,526) * lu(k,1939) + lu(k,1956) = lu(k,1956) - lu(k,527) * lu(k,1939) + lu(k,1961) = - lu(k,528) * lu(k,1939) + lu(k,1963) = lu(k,1963) - lu(k,529) * lu(k,1939) + lu(k,1965) = lu(k,1965) - lu(k,530) * lu(k,1939) + lu(k,1966) = - lu(k,531) * lu(k,1939) + lu(k,1968) = lu(k,1968) - lu(k,532) * lu(k,1939) + lu(k,533) = 1._r8 / lu(k,533) + lu(k,534) = lu(k,534) * lu(k,533) + lu(k,535) = lu(k,535) * lu(k,533) + lu(k,536) = lu(k,536) * lu(k,533) + lu(k,537) = lu(k,537) * lu(k,533) + lu(k,538) = lu(k,538) * lu(k,533) + lu(k,539) = lu(k,539) * lu(k,533) + lu(k,540) = lu(k,540) * lu(k,533) + lu(k,1279) = - lu(k,534) * lu(k,1275) + lu(k,1282) = lu(k,1282) - lu(k,535) * lu(k,1275) + lu(k,1284) = lu(k,1284) - lu(k,536) * lu(k,1275) + lu(k,1285) = - lu(k,537) * lu(k,1275) + lu(k,1294) = - lu(k,538) * lu(k,1275) + lu(k,1296) = lu(k,1296) - lu(k,539) * lu(k,1275) + lu(k,1301) = lu(k,1301) - lu(k,540) * lu(k,1275) + lu(k,1651) = lu(k,1651) - lu(k,534) * lu(k,1617) + lu(k,1668) = lu(k,1668) - lu(k,535) * lu(k,1617) + lu(k,1672) = lu(k,1672) - lu(k,536) * lu(k,1617) + lu(k,1673) = lu(k,1673) - lu(k,537) * lu(k,1617) + lu(k,1689) = lu(k,1689) - lu(k,538) * lu(k,1617) + lu(k,1692) = lu(k,1692) - lu(k,539) * lu(k,1617) + lu(k,1699) = lu(k,1699) - lu(k,540) * lu(k,1617) + lu(k,1885) = - lu(k,534) * lu(k,1868) + lu(k,1897) = lu(k,1897) - lu(k,535) * lu(k,1868) + lu(k,1901) = lu(k,1901) - lu(k,536) * lu(k,1868) + lu(k,1902) = lu(k,1902) - lu(k,537) * lu(k,1868) + lu(k,1916) = lu(k,1916) - lu(k,538) * lu(k,1868) + lu(k,1919) = lu(k,1919) - lu(k,539) * lu(k,1868) + lu(k,1926) = lu(k,1926) - lu(k,540) * lu(k,1868) + end do + end subroutine lu_fac11 + subroutine lu_fac12( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,541) = 1._r8 / lu(k,541) + lu(k,542) = lu(k,542) * lu(k,541) + lu(k,543) = lu(k,543) * lu(k,541) + lu(k,544) = lu(k,544) * lu(k,541) + lu(k,545) = lu(k,545) * lu(k,541) + lu(k,546) = lu(k,546) * lu(k,541) + lu(k,547) = lu(k,547) * lu(k,541) + lu(k,548) = lu(k,548) * lu(k,541) + lu(k,769) = lu(k,769) - lu(k,542) * lu(k,768) + lu(k,770) = lu(k,770) - lu(k,543) * lu(k,768) + lu(k,771) = - lu(k,544) * lu(k,768) + lu(k,772) = lu(k,772) - lu(k,545) * lu(k,768) + lu(k,773) = - lu(k,546) * lu(k,768) + lu(k,776) = lu(k,776) - lu(k,547) * lu(k,768) + lu(k,777) = - lu(k,548) * lu(k,768) + lu(k,1642) = lu(k,1642) - lu(k,542) * lu(k,1618) + lu(k,1667) = lu(k,1667) - lu(k,543) * lu(k,1618) + lu(k,1672) = lu(k,1672) - lu(k,544) * lu(k,1618) + lu(k,1690) = lu(k,1690) - lu(k,545) * lu(k,1618) + lu(k,1692) = lu(k,1692) - lu(k,546) * lu(k,1618) + lu(k,1699) = lu(k,1699) - lu(k,547) * lu(k,1618) + lu(k,1704) = lu(k,1704) - lu(k,548) * lu(k,1618) + lu(k,2069) = lu(k,2069) - lu(k,542) * lu(k,2053) + lu(k,2086) = lu(k,2086) - lu(k,543) * lu(k,2053) + lu(k,2091) = - lu(k,544) * lu(k,2053) + lu(k,2107) = lu(k,2107) - lu(k,545) * lu(k,2053) + lu(k,2109) = lu(k,2109) - lu(k,546) * lu(k,2053) + lu(k,2116) = lu(k,2116) - lu(k,547) * lu(k,2053) + lu(k,2121) = lu(k,2121) - lu(k,548) * lu(k,2053) + lu(k,549) = 1._r8 / lu(k,549) + lu(k,550) = lu(k,550) * lu(k,549) + lu(k,551) = lu(k,551) * lu(k,549) + lu(k,552) = lu(k,552) * lu(k,549) + lu(k,553) = lu(k,553) * lu(k,549) + lu(k,554) = lu(k,554) * lu(k,549) + lu(k,555) = lu(k,555) * lu(k,549) + lu(k,556) = lu(k,556) * lu(k,549) + lu(k,1636) = lu(k,1636) - lu(k,550) * lu(k,1619) + lu(k,1658) = lu(k,1658) - lu(k,551) * lu(k,1619) + lu(k,1670) = lu(k,1670) - lu(k,552) * lu(k,1619) + lu(k,1690) = lu(k,1690) - lu(k,553) * lu(k,1619) + lu(k,1692) = lu(k,1692) - lu(k,554) * lu(k,1619) + lu(k,1699) = lu(k,1699) - lu(k,555) * lu(k,1619) + lu(k,1703) = lu(k,1703) - lu(k,556) * lu(k,1619) + lu(k,1985) = - lu(k,550) * lu(k,1982) + lu(k,1989) = lu(k,1989) - lu(k,551) * lu(k,1982) + lu(k,1993) = lu(k,1993) - lu(k,552) * lu(k,1982) + lu(k,2000) = lu(k,2000) - lu(k,553) * lu(k,1982) + lu(k,2002) = lu(k,2002) - lu(k,554) * lu(k,1982) + lu(k,2009) = lu(k,2009) - lu(k,555) * lu(k,1982) + lu(k,2013) = lu(k,2013) - lu(k,556) * lu(k,1982) + lu(k,2212) = - lu(k,550) * lu(k,2209) + lu(k,2218) = lu(k,2218) - lu(k,551) * lu(k,2209) + lu(k,2229) = lu(k,2229) - lu(k,552) * lu(k,2209) + lu(k,2246) = lu(k,2246) - lu(k,553) * lu(k,2209) + lu(k,2248) = lu(k,2248) - lu(k,554) * lu(k,2209) + lu(k,2255) = lu(k,2255) - lu(k,555) * lu(k,2209) + lu(k,2259) = lu(k,2259) - lu(k,556) * lu(k,2209) + lu(k,557) = 1._r8 / lu(k,557) + lu(k,558) = lu(k,558) * lu(k,557) + lu(k,559) = lu(k,559) * lu(k,557) + lu(k,560) = lu(k,560) * lu(k,557) + lu(k,561) = lu(k,561) * lu(k,557) + lu(k,562) = lu(k,562) * lu(k,557) + lu(k,563) = lu(k,563) * lu(k,557) + lu(k,564) = lu(k,564) * lu(k,557) + lu(k,1945) = - lu(k,558) * lu(k,1940) + lu(k,1957) = - lu(k,559) * lu(k,1940) + lu(k,1960) = lu(k,1960) - lu(k,560) * lu(k,1940) + lu(k,1965) = lu(k,1965) - lu(k,561) * lu(k,1940) + lu(k,1968) = lu(k,1968) - lu(k,562) * lu(k,1940) + lu(k,1972) = lu(k,1972) - lu(k,563) * lu(k,1940) + lu(k,1973) = lu(k,1973) - lu(k,564) * lu(k,1940) + lu(k,2148) = lu(k,2148) - lu(k,558) * lu(k,2147) + lu(k,2151) = lu(k,2151) - lu(k,559) * lu(k,2147) + lu(k,2153) = - lu(k,560) * lu(k,2147) + lu(k,2158) = - lu(k,561) * lu(k,2147) + lu(k,2161) = lu(k,2161) - lu(k,562) * lu(k,2147) + lu(k,2165) = lu(k,2165) - lu(k,563) * lu(k,2147) + lu(k,2166) = lu(k,2166) - lu(k,564) * lu(k,2147) + lu(k,2173) = lu(k,2173) - lu(k,558) * lu(k,2171) + lu(k,2181) = lu(k,2181) - lu(k,559) * lu(k,2171) + lu(k,2184) = - lu(k,560) * lu(k,2171) + lu(k,2189) = lu(k,2189) - lu(k,561) * lu(k,2171) + lu(k,2192) = lu(k,2192) - lu(k,562) * lu(k,2171) + lu(k,2196) = lu(k,2196) - lu(k,563) * lu(k,2171) + lu(k,2197) = lu(k,2197) - lu(k,564) * lu(k,2171) + lu(k,565) = 1._r8 / lu(k,565) + lu(k,566) = lu(k,566) * lu(k,565) + lu(k,567) = lu(k,567) * lu(k,565) + lu(k,568) = lu(k,568) * lu(k,565) + lu(k,569) = lu(k,569) * lu(k,565) + lu(k,570) = lu(k,570) * lu(k,565) + lu(k,571) = lu(k,571) * lu(k,565) + lu(k,572) = lu(k,572) * lu(k,565) + lu(k,1657) = lu(k,1657) - lu(k,566) * lu(k,1620) + lu(k,1667) = lu(k,1667) - lu(k,567) * lu(k,1620) + lu(k,1673) = lu(k,1673) - lu(k,568) * lu(k,1620) + lu(k,1690) = lu(k,1690) - lu(k,569) * lu(k,1620) + lu(k,1696) = lu(k,1696) - lu(k,570) * lu(k,1620) + lu(k,1697) = lu(k,1697) - lu(k,571) * lu(k,1620) + lu(k,1699) = lu(k,1699) - lu(k,572) * lu(k,1620) + lu(k,1741) = lu(k,1741) - lu(k,566) * lu(k,1737) + lu(k,1751) = lu(k,1751) - lu(k,567) * lu(k,1737) + lu(k,1757) = - lu(k,568) * lu(k,1737) + lu(k,1773) = lu(k,1773) - lu(k,569) * lu(k,1737) + lu(k,1779) = lu(k,1779) - lu(k,570) * lu(k,1737) + lu(k,1780) = lu(k,1780) - lu(k,571) * lu(k,1737) + lu(k,1782) = lu(k,1782) - lu(k,572) * lu(k,1737) + lu(k,1889) = lu(k,1889) - lu(k,566) * lu(k,1869) + lu(k,1896) = lu(k,1896) - lu(k,567) * lu(k,1869) + lu(k,1902) = lu(k,1902) - lu(k,568) * lu(k,1869) + lu(k,1917) = lu(k,1917) - lu(k,569) * lu(k,1869) + lu(k,1923) = lu(k,1923) - lu(k,570) * lu(k,1869) + lu(k,1924) = lu(k,1924) - lu(k,571) * lu(k,1869) + lu(k,1926) = lu(k,1926) - lu(k,572) * lu(k,1869) + lu(k,573) = 1._r8 / lu(k,573) + lu(k,574) = lu(k,574) * lu(k,573) + lu(k,575) = lu(k,575) * lu(k,573) + lu(k,576) = lu(k,576) * lu(k,573) + lu(k,577) = lu(k,577) * lu(k,573) + lu(k,578) = lu(k,578) * lu(k,573) + lu(k,579) = lu(k,579) * lu(k,573) + lu(k,580) = lu(k,580) * lu(k,573) + lu(k,581) = lu(k,581) * lu(k,573) + lu(k,1351) = lu(k,1351) - lu(k,574) * lu(k,1348) + lu(k,1353) = - lu(k,575) * lu(k,1348) + lu(k,1355) = lu(k,1355) - lu(k,576) * lu(k,1348) + lu(k,1358) = lu(k,1358) - lu(k,577) * lu(k,1348) + lu(k,1359) = lu(k,1359) - lu(k,578) * lu(k,1348) + lu(k,1360) = lu(k,1360) - lu(k,579) * lu(k,1348) + lu(k,1363) = lu(k,1363) - lu(k,580) * lu(k,1348) + lu(k,1364) = lu(k,1364) - lu(k,581) * lu(k,1348) + lu(k,1645) = lu(k,1645) - lu(k,574) * lu(k,1621) + lu(k,1672) = lu(k,1672) - lu(k,575) * lu(k,1621) + lu(k,1683) = lu(k,1683) - lu(k,576) * lu(k,1621) + lu(k,1690) = lu(k,1690) - lu(k,577) * lu(k,1621) + lu(k,1692) = lu(k,1692) - lu(k,578) * lu(k,1621) + lu(k,1694) = lu(k,1694) - lu(k,579) * lu(k,1621) + lu(k,1697) = lu(k,1697) - lu(k,580) * lu(k,1621) + lu(k,1699) = lu(k,1699) - lu(k,581) * lu(k,1621) + lu(k,1946) = lu(k,1946) - lu(k,574) * lu(k,1941) + lu(k,1952) = - lu(k,575) * lu(k,1941) + lu(k,1955) = lu(k,1955) - lu(k,576) * lu(k,1941) + lu(k,1961) = lu(k,1961) - lu(k,577) * lu(k,1941) + lu(k,1963) = lu(k,1963) - lu(k,578) * lu(k,1941) + lu(k,1965) = lu(k,1965) - lu(k,579) * lu(k,1941) + lu(k,1968) = lu(k,1968) - lu(k,580) * lu(k,1941) + lu(k,1970) = lu(k,1970) - lu(k,581) * lu(k,1941) + end do + end subroutine lu_fac12 + subroutine lu_fac13( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,582) = 1._r8 / lu(k,582) + lu(k,583) = lu(k,583) * lu(k,582) + lu(k,584) = lu(k,584) * lu(k,582) + lu(k,585) = lu(k,585) * lu(k,582) + lu(k,586) = lu(k,586) * lu(k,582) + lu(k,587) = lu(k,587) * lu(k,582) + lu(k,588) = lu(k,588) * lu(k,582) + lu(k,589) = lu(k,589) * lu(k,582) + lu(k,590) = lu(k,590) * lu(k,582) + lu(k,1250) = - lu(k,583) * lu(k,1246) + lu(k,1252) = - lu(k,584) * lu(k,1246) + lu(k,1253) = - lu(k,585) * lu(k,1246) + lu(k,1262) = - lu(k,586) * lu(k,1246) + lu(k,1263) = lu(k,1263) - lu(k,587) * lu(k,1246) + lu(k,1264) = - lu(k,588) * lu(k,1246) + lu(k,1268) = lu(k,1268) - lu(k,589) * lu(k,1246) + lu(k,1269) = lu(k,1269) - lu(k,590) * lu(k,1246) + lu(k,1668) = lu(k,1668) - lu(k,583) * lu(k,1622) + lu(k,1672) = lu(k,1672) - lu(k,584) * lu(k,1622) + lu(k,1673) = lu(k,1673) - lu(k,585) * lu(k,1622) + lu(k,1689) = lu(k,1689) - lu(k,586) * lu(k,1622) + lu(k,1690) = lu(k,1690) - lu(k,587) * lu(k,1622) + lu(k,1692) = lu(k,1692) - lu(k,588) * lu(k,1622) + lu(k,1697) = lu(k,1697) - lu(k,589) * lu(k,1622) + lu(k,1699) = lu(k,1699) - lu(k,590) * lu(k,1622) + lu(k,1897) = lu(k,1897) - lu(k,583) * lu(k,1870) + lu(k,1901) = lu(k,1901) - lu(k,584) * lu(k,1870) + lu(k,1902) = lu(k,1902) - lu(k,585) * lu(k,1870) + lu(k,1916) = lu(k,1916) - lu(k,586) * lu(k,1870) + lu(k,1917) = lu(k,1917) - lu(k,587) * lu(k,1870) + lu(k,1919) = lu(k,1919) - lu(k,588) * lu(k,1870) + lu(k,1924) = lu(k,1924) - lu(k,589) * lu(k,1870) + lu(k,1926) = lu(k,1926) - lu(k,590) * lu(k,1870) + lu(k,591) = 1._r8 / lu(k,591) + lu(k,592) = lu(k,592) * lu(k,591) + lu(k,593) = lu(k,593) * lu(k,591) + lu(k,594) = lu(k,594) * lu(k,591) + lu(k,660) = - lu(k,592) * lu(k,655) + lu(k,662) = - lu(k,593) * lu(k,655) + lu(k,665) = lu(k,665) - lu(k,594) * lu(k,655) + lu(k,698) = - lu(k,592) * lu(k,693) + lu(k,700) = lu(k,700) - lu(k,593) * lu(k,693) + lu(k,704) = lu(k,704) - lu(k,594) * lu(k,693) + lu(k,727) = - lu(k,592) * lu(k,722) + lu(k,729) = - lu(k,593) * lu(k,722) + lu(k,734) = lu(k,734) - lu(k,594) * lu(k,722) + lu(k,751) = - lu(k,592) * lu(k,746) + lu(k,753) = lu(k,753) - lu(k,593) * lu(k,746) + lu(k,759) = lu(k,759) - lu(k,594) * lu(k,746) + lu(k,1072) = - lu(k,592) * lu(k,1070) + lu(k,1075) = - lu(k,593) * lu(k,1070) + lu(k,1084) = lu(k,1084) - lu(k,594) * lu(k,1070) + lu(k,1280) = - lu(k,592) * lu(k,1276) + lu(k,1283) = - lu(k,593) * lu(k,1276) + lu(k,1301) = lu(k,1301) - lu(k,594) * lu(k,1276) + lu(k,1653) = - lu(k,592) * lu(k,1623) + lu(k,1670) = lu(k,1670) - lu(k,593) * lu(k,1623) + lu(k,1699) = lu(k,1699) - lu(k,594) * lu(k,1623) + lu(k,1886) = lu(k,1886) - lu(k,592) * lu(k,1871) + lu(k,1899) = lu(k,1899) - lu(k,593) * lu(k,1871) + lu(k,1926) = lu(k,1926) - lu(k,594) * lu(k,1871) + lu(k,595) = 1._r8 / lu(k,595) + lu(k,596) = lu(k,596) * lu(k,595) + lu(k,597) = lu(k,597) * lu(k,595) + lu(k,598) = lu(k,598) * lu(k,595) + lu(k,599) = lu(k,599) * lu(k,595) + lu(k,600) = lu(k,600) * lu(k,595) + lu(k,601) = lu(k,601) * lu(k,595) + lu(k,602) = lu(k,602) * lu(k,595) + lu(k,603) = lu(k,603) * lu(k,595) + lu(k,1522) = lu(k,1522) - lu(k,596) * lu(k,1518) + lu(k,1527) = lu(k,1527) - lu(k,597) * lu(k,1518) + lu(k,1528) = lu(k,1528) - lu(k,598) * lu(k,1518) + lu(k,1531) = lu(k,1531) - lu(k,599) * lu(k,1518) + lu(k,1534) = lu(k,1534) - lu(k,600) * lu(k,1518) + lu(k,1535) = lu(k,1535) - lu(k,601) * lu(k,1518) + lu(k,1536) = lu(k,1536) - lu(k,602) * lu(k,1518) + lu(k,1540) = lu(k,1540) - lu(k,603) * lu(k,1518) + lu(k,1686) = lu(k,1686) - lu(k,596) * lu(k,1624) + lu(k,1691) = lu(k,1691) - lu(k,597) * lu(k,1624) + lu(k,1692) = lu(k,1692) - lu(k,598) * lu(k,1624) + lu(k,1695) = lu(k,1695) - lu(k,599) * lu(k,1624) + lu(k,1698) = lu(k,1698) - lu(k,600) * lu(k,1624) + lu(k,1699) = lu(k,1699) - lu(k,601) * lu(k,1624) + lu(k,1700) = lu(k,1700) - lu(k,602) * lu(k,1624) + lu(k,1704) = lu(k,1704) - lu(k,603) * lu(k,1624) + lu(k,1996) = lu(k,1996) - lu(k,596) * lu(k,1983) + lu(k,2001) = lu(k,2001) - lu(k,597) * lu(k,1983) + lu(k,2002) = lu(k,2002) - lu(k,598) * lu(k,1983) + lu(k,2005) = lu(k,2005) - lu(k,599) * lu(k,1983) + lu(k,2008) = lu(k,2008) - lu(k,600) * lu(k,1983) + lu(k,2009) = lu(k,2009) - lu(k,601) * lu(k,1983) + lu(k,2010) = lu(k,2010) - lu(k,602) * lu(k,1983) + lu(k,2014) = lu(k,2014) - lu(k,603) * lu(k,1983) + lu(k,604) = 1._r8 / lu(k,604) + lu(k,605) = lu(k,605) * lu(k,604) + lu(k,606) = lu(k,606) * lu(k,604) + lu(k,607) = lu(k,607) * lu(k,604) + lu(k,608) = lu(k,608) * lu(k,604) + lu(k,609) = lu(k,609) * lu(k,604) + lu(k,610) = lu(k,610) * lu(k,604) + lu(k,1692) = lu(k,1692) - lu(k,605) * lu(k,1625) + lu(k,1698) = lu(k,1698) - lu(k,606) * lu(k,1625) + lu(k,1699) = lu(k,1699) - lu(k,607) * lu(k,1625) + lu(k,1700) = lu(k,1700) - lu(k,608) * lu(k,1625) + lu(k,1702) = lu(k,1702) - lu(k,609) * lu(k,1625) + lu(k,1704) = lu(k,1704) - lu(k,610) * lu(k,1625) + lu(k,2002) = lu(k,2002) - lu(k,605) * lu(k,1984) + lu(k,2008) = lu(k,2008) - lu(k,606) * lu(k,1984) + lu(k,2009) = lu(k,2009) - lu(k,607) * lu(k,1984) + lu(k,2010) = lu(k,2010) - lu(k,608) * lu(k,1984) + lu(k,2012) = - lu(k,609) * lu(k,1984) + lu(k,2014) = lu(k,2014) - lu(k,610) * lu(k,1984) + lu(k,2109) = lu(k,2109) - lu(k,605) * lu(k,2054) + lu(k,2115) = lu(k,2115) - lu(k,606) * lu(k,2054) + lu(k,2116) = lu(k,2116) - lu(k,607) * lu(k,2054) + lu(k,2117) = lu(k,2117) - lu(k,608) * lu(k,2054) + lu(k,2119) = lu(k,2119) - lu(k,609) * lu(k,2054) + lu(k,2121) = lu(k,2121) - lu(k,610) * lu(k,2054) + lu(k,2187) = lu(k,2187) - lu(k,605) * lu(k,2172) + lu(k,2193) = lu(k,2193) - lu(k,606) * lu(k,2172) + lu(k,2194) = lu(k,2194) - lu(k,607) * lu(k,2172) + lu(k,2195) = lu(k,2195) - lu(k,608) * lu(k,2172) + lu(k,2197) = lu(k,2197) - lu(k,609) * lu(k,2172) + lu(k,2199) = - lu(k,610) * lu(k,2172) + lu(k,611) = 1._r8 / lu(k,611) + lu(k,612) = lu(k,612) * lu(k,611) + lu(k,613) = lu(k,613) * lu(k,611) + lu(k,614) = lu(k,614) * lu(k,611) + lu(k,615) = lu(k,615) * lu(k,611) + lu(k,616) = lu(k,616) * lu(k,611) + lu(k,617) = lu(k,617) * lu(k,611) + lu(k,1351) = lu(k,1351) - lu(k,612) * lu(k,1349) + lu(k,1356) = lu(k,1356) - lu(k,613) * lu(k,1349) + lu(k,1358) = lu(k,1358) - lu(k,614) * lu(k,1349) + lu(k,1359) = lu(k,1359) - lu(k,615) * lu(k,1349) + lu(k,1361) = lu(k,1361) - lu(k,616) * lu(k,1349) + lu(k,1367) = - lu(k,617) * lu(k,1349) + lu(k,1372) = lu(k,1372) - lu(k,612) * lu(k,1370) + lu(k,1387) = lu(k,1387) - lu(k,613) * lu(k,1370) + lu(k,1390) = lu(k,1390) - lu(k,614) * lu(k,1370) + lu(k,1391) = lu(k,1391) - lu(k,615) * lu(k,1370) + lu(k,1393) = lu(k,1393) - lu(k,616) * lu(k,1370) + lu(k,1399) = - lu(k,617) * lu(k,1370) + lu(k,1645) = lu(k,1645) - lu(k,612) * lu(k,1626) + lu(k,1684) = lu(k,1684) - lu(k,613) * lu(k,1626) + lu(k,1690) = lu(k,1690) - lu(k,614) * lu(k,1626) + lu(k,1692) = lu(k,1692) - lu(k,615) * lu(k,1626) + lu(k,1695) = lu(k,1695) - lu(k,616) * lu(k,1626) + lu(k,1704) = lu(k,1704) - lu(k,617) * lu(k,1626) + lu(k,2072) = lu(k,2072) - lu(k,612) * lu(k,2055) + lu(k,2101) = lu(k,2101) - lu(k,613) * lu(k,2055) + lu(k,2107) = lu(k,2107) - lu(k,614) * lu(k,2055) + lu(k,2109) = lu(k,2109) - lu(k,615) * lu(k,2055) + lu(k,2112) = lu(k,2112) - lu(k,616) * lu(k,2055) + lu(k,2121) = lu(k,2121) - lu(k,617) * lu(k,2055) + end do + end subroutine lu_fac13 + subroutine lu_fac14( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,618) = 1._r8 / lu(k,618) + lu(k,619) = lu(k,619) * lu(k,618) + lu(k,620) = lu(k,620) * lu(k,618) + lu(k,621) = lu(k,621) * lu(k,618) + lu(k,622) = lu(k,622) * lu(k,618) + lu(k,623) = lu(k,623) * lu(k,618) + lu(k,915) = lu(k,915) - lu(k,619) * lu(k,911) + lu(k,916) = - lu(k,620) * lu(k,911) + lu(k,918) = lu(k,918) - lu(k,621) * lu(k,911) + lu(k,921) = lu(k,921) - lu(k,622) * lu(k,911) + lu(k,922) = lu(k,922) - lu(k,623) * lu(k,911) + lu(k,1045) = lu(k,1045) - lu(k,619) * lu(k,1043) + lu(k,1050) = lu(k,1050) - lu(k,620) * lu(k,1043) + lu(k,1052) = lu(k,1052) - lu(k,621) * lu(k,1043) + lu(k,1056) = lu(k,1056) - lu(k,622) * lu(k,1043) + lu(k,1057) = lu(k,1057) - lu(k,623) * lu(k,1043) + lu(k,1660) = lu(k,1660) - lu(k,619) * lu(k,1627) + lu(k,1689) = lu(k,1689) - lu(k,620) * lu(k,1627) + lu(k,1692) = lu(k,1692) - lu(k,621) * lu(k,1627) + lu(k,1697) = lu(k,1697) - lu(k,622) * lu(k,1627) + lu(k,1699) = lu(k,1699) - lu(k,623) * lu(k,1627) + lu(k,1801) = lu(k,1801) - lu(k,619) * lu(k,1792) + lu(k,1824) = lu(k,1824) - lu(k,620) * lu(k,1792) + lu(k,1827) = lu(k,1827) - lu(k,621) * lu(k,1792) + lu(k,1832) = lu(k,1832) - lu(k,622) * lu(k,1792) + lu(k,1834) = lu(k,1834) - lu(k,623) * lu(k,1792) + lu(k,1891) = lu(k,1891) - lu(k,619) * lu(k,1872) + lu(k,1916) = lu(k,1916) - lu(k,620) * lu(k,1872) + lu(k,1919) = lu(k,1919) - lu(k,621) * lu(k,1872) + lu(k,1924) = lu(k,1924) - lu(k,622) * lu(k,1872) + lu(k,1926) = lu(k,1926) - lu(k,623) * lu(k,1872) + lu(k,626) = 1._r8 / lu(k,626) + lu(k,627) = lu(k,627) * lu(k,626) + lu(k,628) = lu(k,628) * lu(k,626) + lu(k,629) = lu(k,629) * lu(k,626) + lu(k,630) = lu(k,630) * lu(k,626) + lu(k,631) = lu(k,631) * lu(k,626) + lu(k,1692) = lu(k,1692) - lu(k,627) * lu(k,1628) + lu(k,1696) = lu(k,1696) - lu(k,628) * lu(k,1628) + lu(k,1697) = lu(k,1697) - lu(k,629) * lu(k,1628) + lu(k,1699) = lu(k,1699) - lu(k,630) * lu(k,1628) + lu(k,1703) = lu(k,1703) - lu(k,631) * lu(k,1628) + lu(k,1919) = lu(k,1919) - lu(k,627) * lu(k,1873) + lu(k,1923) = lu(k,1923) - lu(k,628) * lu(k,1873) + lu(k,1924) = lu(k,1924) - lu(k,629) * lu(k,1873) + lu(k,1926) = lu(k,1926) - lu(k,630) * lu(k,1873) + lu(k,1930) = lu(k,1930) - lu(k,631) * lu(k,1873) + lu(k,1963) = lu(k,1963) - lu(k,627) * lu(k,1942) + lu(k,1967) = lu(k,1967) - lu(k,628) * lu(k,1942) + lu(k,1968) = lu(k,1968) - lu(k,629) * lu(k,1942) + lu(k,1970) = lu(k,1970) - lu(k,630) * lu(k,1942) + lu(k,1974) = lu(k,1974) - lu(k,631) * lu(k,1942) + lu(k,2109) = lu(k,2109) - lu(k,627) * lu(k,2056) + lu(k,2113) = lu(k,2113) - lu(k,628) * lu(k,2056) + lu(k,2114) = lu(k,2114) - lu(k,629) * lu(k,2056) + lu(k,2116) = lu(k,2116) - lu(k,630) * lu(k,2056) + lu(k,2120) = lu(k,2120) - lu(k,631) * lu(k,2056) + lu(k,2248) = lu(k,2248) - lu(k,627) * lu(k,2210) + lu(k,2252) = lu(k,2252) - lu(k,628) * lu(k,2210) + lu(k,2253) = lu(k,2253) - lu(k,629) * lu(k,2210) + lu(k,2255) = lu(k,2255) - lu(k,630) * lu(k,2210) + lu(k,2259) = lu(k,2259) - lu(k,631) * lu(k,2210) + lu(k,633) = 1._r8 / lu(k,633) + lu(k,634) = lu(k,634) * lu(k,633) + lu(k,635) = lu(k,635) * lu(k,633) + lu(k,636) = lu(k,636) * lu(k,633) + lu(k,637) = lu(k,637) * lu(k,633) + lu(k,638) = lu(k,638) * lu(k,633) + lu(k,639) = lu(k,639) * lu(k,633) + lu(k,640) = lu(k,640) * lu(k,633) + lu(k,641) = lu(k,641) * lu(k,633) + lu(k,642) = lu(k,642) * lu(k,633) + lu(k,886) = lu(k,886) - lu(k,634) * lu(k,884) + lu(k,887) = lu(k,887) - lu(k,635) * lu(k,884) + lu(k,888) = lu(k,888) - lu(k,636) * lu(k,884) + lu(k,889) = lu(k,889) - lu(k,637) * lu(k,884) + lu(k,890) = lu(k,890) - lu(k,638) * lu(k,884) + lu(k,891) = lu(k,891) - lu(k,639) * lu(k,884) + lu(k,892) = lu(k,892) - lu(k,640) * lu(k,884) + lu(k,893) = lu(k,893) - lu(k,641) * lu(k,884) + lu(k,897) = lu(k,897) - lu(k,642) * lu(k,884) + lu(k,1633) = lu(k,1633) - lu(k,634) * lu(k,1629) + lu(k,1648) = lu(k,1648) - lu(k,635) * lu(k,1629) + lu(k,1654) = lu(k,1654) - lu(k,636) * lu(k,1629) + lu(k,1657) = lu(k,1657) - lu(k,637) * lu(k,1629) + lu(k,1667) = lu(k,1667) - lu(k,638) * lu(k,1629) + lu(k,1684) = lu(k,1684) - lu(k,639) * lu(k,1629) + lu(k,1690) = lu(k,1690) - lu(k,640) * lu(k,1629) + lu(k,1692) = lu(k,1692) - lu(k,641) * lu(k,1629) + lu(k,1699) = lu(k,1699) - lu(k,642) * lu(k,1629) + lu(k,2060) = lu(k,2060) - lu(k,634) * lu(k,2057) + lu(k,2075) = lu(k,2075) - lu(k,635) * lu(k,2057) + lu(k,2078) = lu(k,2078) - lu(k,636) * lu(k,2057) + lu(k,2080) = lu(k,2080) - lu(k,637) * lu(k,2057) + lu(k,2086) = lu(k,2086) - lu(k,638) * lu(k,2057) + lu(k,2101) = lu(k,2101) - lu(k,639) * lu(k,2057) + lu(k,2107) = lu(k,2107) - lu(k,640) * lu(k,2057) + lu(k,2109) = lu(k,2109) - lu(k,641) * lu(k,2057) + lu(k,2116) = lu(k,2116) - lu(k,642) * lu(k,2057) + lu(k,643) = 1._r8 / lu(k,643) + lu(k,644) = lu(k,644) * lu(k,643) + lu(k,645) = lu(k,645) * lu(k,643) + lu(k,646) = lu(k,646) * lu(k,643) + lu(k,647) = lu(k,647) * lu(k,643) + lu(k,648) = lu(k,648) * lu(k,643) + lu(k,649) = lu(k,649) * lu(k,643) + lu(k,650) = lu(k,650) * lu(k,643) + lu(k,651) = lu(k,651) * lu(k,643) + lu(k,652) = lu(k,652) * lu(k,643) + lu(k,1106) = lu(k,1106) - lu(k,644) * lu(k,1104) + lu(k,1107) = lu(k,1107) - lu(k,645) * lu(k,1104) + lu(k,1108) = lu(k,1108) - lu(k,646) * lu(k,1104) + lu(k,1109) = lu(k,1109) - lu(k,647) * lu(k,1104) + lu(k,1110) = lu(k,1110) - lu(k,648) * lu(k,1104) + lu(k,1111) = lu(k,1111) - lu(k,649) * lu(k,1104) + lu(k,1115) = lu(k,1115) - lu(k,650) * lu(k,1104) + lu(k,1116) = - lu(k,651) * lu(k,1104) + lu(k,1120) = lu(k,1120) - lu(k,652) * lu(k,1104) + lu(k,1645) = lu(k,1645) - lu(k,644) * lu(k,1630) + lu(k,1657) = lu(k,1657) - lu(k,645) * lu(k,1630) + lu(k,1665) = lu(k,1665) - lu(k,646) * lu(k,1630) + lu(k,1668) = lu(k,1668) - lu(k,647) * lu(k,1630) + lu(k,1669) = lu(k,1669) - lu(k,648) * lu(k,1630) + lu(k,1670) = lu(k,1670) - lu(k,649) * lu(k,1630) + lu(k,1690) = lu(k,1690) - lu(k,650) * lu(k,1630) + lu(k,1692) = lu(k,1692) - lu(k,651) * lu(k,1630) + lu(k,1699) = lu(k,1699) - lu(k,652) * lu(k,1630) + lu(k,2072) = lu(k,2072) - lu(k,644) * lu(k,2058) + lu(k,2080) = lu(k,2080) - lu(k,645) * lu(k,2058) + lu(k,2085) = - lu(k,646) * lu(k,2058) + lu(k,2087) = lu(k,2087) - lu(k,647) * lu(k,2058) + lu(k,2088) = lu(k,2088) - lu(k,648) * lu(k,2058) + lu(k,2089) = lu(k,2089) - lu(k,649) * lu(k,2058) + lu(k,2107) = lu(k,2107) - lu(k,650) * lu(k,2058) + lu(k,2109) = lu(k,2109) - lu(k,651) * lu(k,2058) + lu(k,2116) = lu(k,2116) - lu(k,652) * lu(k,2058) + lu(k,656) = 1._r8 / lu(k,656) + lu(k,657) = lu(k,657) * lu(k,656) + lu(k,658) = lu(k,658) * lu(k,656) + lu(k,659) = lu(k,659) * lu(k,656) + lu(k,660) = lu(k,660) * lu(k,656) + lu(k,661) = lu(k,661) * lu(k,656) + lu(k,662) = lu(k,662) * lu(k,656) + lu(k,663) = lu(k,663) * lu(k,656) + lu(k,664) = lu(k,664) * lu(k,656) + lu(k,665) = lu(k,665) * lu(k,656) + lu(k,724) = lu(k,724) - lu(k,657) * lu(k,723) + lu(k,725) = lu(k,725) - lu(k,658) * lu(k,723) + lu(k,726) = lu(k,726) - lu(k,659) * lu(k,723) + lu(k,727) = lu(k,727) - lu(k,660) * lu(k,723) + lu(k,728) = lu(k,728) - lu(k,661) * lu(k,723) + lu(k,729) = lu(k,729) - lu(k,662) * lu(k,723) + lu(k,730) = lu(k,730) - lu(k,663) * lu(k,723) + lu(k,731) = - lu(k,664) * lu(k,723) + lu(k,734) = lu(k,734) - lu(k,665) * lu(k,723) + lu(k,1637) = lu(k,1637) - lu(k,657) * lu(k,1631) + lu(k,1638) = lu(k,1638) - lu(k,658) * lu(k,1631) + lu(k,1641) = - lu(k,659) * lu(k,1631) + lu(k,1653) = lu(k,1653) - lu(k,660) * lu(k,1631) + lu(k,1661) = lu(k,1661) - lu(k,661) * lu(k,1631) + lu(k,1670) = lu(k,1670) - lu(k,662) * lu(k,1631) + lu(k,1677) = lu(k,1677) - lu(k,663) * lu(k,1631) + lu(k,1692) = lu(k,1692) - lu(k,664) * lu(k,1631) + lu(k,1699) = lu(k,1699) - lu(k,665) * lu(k,1631) + lu(k,2064) = lu(k,2064) - lu(k,657) * lu(k,2059) + lu(k,2065) = lu(k,2065) - lu(k,658) * lu(k,2059) + lu(k,2068) = lu(k,2068) - lu(k,659) * lu(k,2059) + lu(k,2077) = lu(k,2077) - lu(k,660) * lu(k,2059) + lu(k,2083) = lu(k,2083) - lu(k,661) * lu(k,2059) + lu(k,2089) = lu(k,2089) - lu(k,662) * lu(k,2059) + lu(k,2095) = lu(k,2095) - lu(k,663) * lu(k,2059) + lu(k,2109) = lu(k,2109) - lu(k,664) * lu(k,2059) + lu(k,2116) = lu(k,2116) - lu(k,665) * lu(k,2059) + lu(k,667) = 1._r8 / lu(k,667) + lu(k,668) = lu(k,668) * lu(k,667) + lu(k,669) = lu(k,669) * lu(k,667) + lu(k,670) = lu(k,670) * lu(k,667) + lu(k,671) = lu(k,671) * lu(k,667) + lu(k,672) = lu(k,672) * lu(k,667) + lu(k,673) = lu(k,673) * lu(k,667) + lu(k,674) = lu(k,674) * lu(k,667) + lu(k,675) = lu(k,675) * lu(k,667) + lu(k,676) = lu(k,676) * lu(k,667) + lu(k,886) = lu(k,886) - lu(k,668) * lu(k,885) + lu(k,887) = lu(k,887) - lu(k,669) * lu(k,885) + lu(k,889) = lu(k,889) - lu(k,670) * lu(k,885) + lu(k,890) = lu(k,890) - lu(k,671) * lu(k,885) + lu(k,891) = lu(k,891) - lu(k,672) * lu(k,885) + lu(k,892) = lu(k,892) - lu(k,673) * lu(k,885) + lu(k,893) = lu(k,893) - lu(k,674) * lu(k,885) + lu(k,896) = lu(k,896) - lu(k,675) * lu(k,885) + lu(k,897) = lu(k,897) - lu(k,676) * lu(k,885) + lu(k,1633) = lu(k,1633) - lu(k,668) * lu(k,1632) + lu(k,1648) = lu(k,1648) - lu(k,669) * lu(k,1632) + lu(k,1657) = lu(k,1657) - lu(k,670) * lu(k,1632) + lu(k,1667) = lu(k,1667) - lu(k,671) * lu(k,1632) + lu(k,1684) = lu(k,1684) - lu(k,672) * lu(k,1632) + lu(k,1690) = lu(k,1690) - lu(k,673) * lu(k,1632) + lu(k,1692) = lu(k,1692) - lu(k,674) * lu(k,1632) + lu(k,1697) = lu(k,1697) - lu(k,675) * lu(k,1632) + lu(k,1699) = lu(k,1699) - lu(k,676) * lu(k,1632) + lu(k,1875) = lu(k,1875) - lu(k,668) * lu(k,1874) + lu(k,1884) = lu(k,1884) - lu(k,669) * lu(k,1874) + lu(k,1889) = lu(k,1889) - lu(k,670) * lu(k,1874) + lu(k,1896) = lu(k,1896) - lu(k,671) * lu(k,1874) + lu(k,1912) = lu(k,1912) - lu(k,672) * lu(k,1874) + lu(k,1917) = lu(k,1917) - lu(k,673) * lu(k,1874) + lu(k,1919) = lu(k,1919) - lu(k,674) * lu(k,1874) + lu(k,1924) = lu(k,1924) - lu(k,675) * lu(k,1874) + lu(k,1926) = lu(k,1926) - lu(k,676) * lu(k,1874) + end do + end subroutine lu_fac14 + subroutine lu_fac15( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,678) = 1._r8 / lu(k,678) + lu(k,679) = lu(k,679) * lu(k,678) + lu(k,680) = lu(k,680) * lu(k,678) + lu(k,681) = lu(k,681) * lu(k,678) + lu(k,682) = lu(k,682) * lu(k,678) + lu(k,683) = lu(k,683) * lu(k,678) + lu(k,684) = lu(k,684) * lu(k,678) + lu(k,890) = lu(k,890) - lu(k,679) * lu(k,886) + lu(k,891) = lu(k,891) - lu(k,680) * lu(k,886) + lu(k,893) = lu(k,893) - lu(k,681) * lu(k,886) + lu(k,895) = lu(k,895) - lu(k,682) * lu(k,886) + lu(k,896) = lu(k,896) - lu(k,683) * lu(k,886) + lu(k,897) = lu(k,897) - lu(k,684) * lu(k,886) + lu(k,1667) = lu(k,1667) - lu(k,679) * lu(k,1633) + lu(k,1684) = lu(k,1684) - lu(k,680) * lu(k,1633) + lu(k,1692) = lu(k,1692) - lu(k,681) * lu(k,1633) + lu(k,1696) = lu(k,1696) - lu(k,682) * lu(k,1633) + lu(k,1697) = lu(k,1697) - lu(k,683) * lu(k,1633) + lu(k,1699) = lu(k,1699) - lu(k,684) * lu(k,1633) + lu(k,1896) = lu(k,1896) - lu(k,679) * lu(k,1875) + lu(k,1912) = lu(k,1912) - lu(k,680) * lu(k,1875) + lu(k,1919) = lu(k,1919) - lu(k,681) * lu(k,1875) + lu(k,1923) = lu(k,1923) - lu(k,682) * lu(k,1875) + lu(k,1924) = lu(k,1924) - lu(k,683) * lu(k,1875) + lu(k,1926) = lu(k,1926) - lu(k,684) * lu(k,1875) + lu(k,2086) = lu(k,2086) - lu(k,679) * lu(k,2060) + lu(k,2101) = lu(k,2101) - lu(k,680) * lu(k,2060) + lu(k,2109) = lu(k,2109) - lu(k,681) * lu(k,2060) + lu(k,2113) = lu(k,2113) - lu(k,682) * lu(k,2060) + lu(k,2114) = lu(k,2114) - lu(k,683) * lu(k,2060) + lu(k,2116) = lu(k,2116) - lu(k,684) * lu(k,2060) + lu(k,685) = 1._r8 / lu(k,685) + lu(k,686) = lu(k,686) * lu(k,685) + lu(k,687) = lu(k,687) * lu(k,685) + lu(k,688) = lu(k,688) * lu(k,685) + lu(k,689) = lu(k,689) * lu(k,685) + lu(k,1022) = lu(k,1022) - lu(k,686) * lu(k,1020) + lu(k,1033) = lu(k,1033) - lu(k,687) * lu(k,1020) + lu(k,1035) = lu(k,1035) - lu(k,688) * lu(k,1020) + lu(k,1041) = - lu(k,689) * lu(k,1020) + lu(k,1351) = lu(k,1351) - lu(k,686) * lu(k,1350) + lu(k,1359) = lu(k,1359) - lu(k,687) * lu(k,1350) + lu(k,1361) = lu(k,1361) - lu(k,688) * lu(k,1350) + lu(k,1367) = lu(k,1367) - lu(k,689) * lu(k,1350) + lu(k,1372) = lu(k,1372) - lu(k,686) * lu(k,1371) + lu(k,1391) = lu(k,1391) - lu(k,687) * lu(k,1371) + lu(k,1393) = lu(k,1393) - lu(k,688) * lu(k,1371) + lu(k,1399) = lu(k,1399) - lu(k,689) * lu(k,1371) + lu(k,1645) = lu(k,1645) - lu(k,686) * lu(k,1634) + lu(k,1692) = lu(k,1692) - lu(k,687) * lu(k,1634) + lu(k,1695) = lu(k,1695) - lu(k,688) * lu(k,1634) + lu(k,1704) = lu(k,1704) - lu(k,689) * lu(k,1634) + lu(k,1796) = lu(k,1796) - lu(k,686) * lu(k,1793) + lu(k,1827) = lu(k,1827) - lu(k,687) * lu(k,1793) + lu(k,1830) = lu(k,1830) - lu(k,688) * lu(k,1793) + lu(k,1839) = lu(k,1839) - lu(k,689) * lu(k,1793) + lu(k,2072) = lu(k,2072) - lu(k,686) * lu(k,2061) + lu(k,2109) = lu(k,2109) - lu(k,687) * lu(k,2061) + lu(k,2112) = lu(k,2112) - lu(k,688) * lu(k,2061) + lu(k,2121) = lu(k,2121) - lu(k,689) * lu(k,2061) + lu(k,2213) = lu(k,2213) - lu(k,686) * lu(k,2211) + lu(k,2248) = lu(k,2248) - lu(k,687) * lu(k,2211) + lu(k,2251) = lu(k,2251) - lu(k,688) * lu(k,2211) + lu(k,2260) = - lu(k,689) * lu(k,2211) + lu(k,694) = 1._r8 / lu(k,694) + lu(k,695) = lu(k,695) * lu(k,694) + lu(k,696) = lu(k,696) * lu(k,694) + lu(k,697) = lu(k,697) * lu(k,694) + lu(k,698) = lu(k,698) * lu(k,694) + lu(k,699) = lu(k,699) * lu(k,694) + lu(k,700) = lu(k,700) * lu(k,694) + lu(k,701) = lu(k,701) * lu(k,694) + lu(k,702) = lu(k,702) * lu(k,694) + lu(k,703) = lu(k,703) * lu(k,694) + lu(k,704) = lu(k,704) * lu(k,694) + lu(k,748) = lu(k,748) - lu(k,695) * lu(k,747) + lu(k,749) = lu(k,749) - lu(k,696) * lu(k,747) + lu(k,750) = lu(k,750) - lu(k,697) * lu(k,747) + lu(k,751) = lu(k,751) - lu(k,698) * lu(k,747) + lu(k,752) = lu(k,752) - lu(k,699) * lu(k,747) + lu(k,753) = lu(k,753) - lu(k,700) * lu(k,747) + lu(k,754) = lu(k,754) - lu(k,701) * lu(k,747) + lu(k,755) = lu(k,755) - lu(k,702) * lu(k,747) + lu(k,756) = - lu(k,703) * lu(k,747) + lu(k,759) = lu(k,759) - lu(k,704) * lu(k,747) + lu(k,1637) = lu(k,1637) - lu(k,695) * lu(k,1635) + lu(k,1640) = lu(k,1640) - lu(k,696) * lu(k,1635) + lu(k,1641) = lu(k,1641) - lu(k,697) * lu(k,1635) + lu(k,1653) = lu(k,1653) - lu(k,698) * lu(k,1635) + lu(k,1661) = lu(k,1661) - lu(k,699) * lu(k,1635) + lu(k,1670) = lu(k,1670) - lu(k,700) * lu(k,1635) + lu(k,1677) = lu(k,1677) - lu(k,701) * lu(k,1635) + lu(k,1684) = lu(k,1684) - lu(k,702) * lu(k,1635) + lu(k,1692) = lu(k,1692) - lu(k,703) * lu(k,1635) + lu(k,1699) = lu(k,1699) - lu(k,704) * lu(k,1635) + lu(k,2064) = lu(k,2064) - lu(k,695) * lu(k,2062) + lu(k,2067) = lu(k,2067) - lu(k,696) * lu(k,2062) + lu(k,2068) = lu(k,2068) - lu(k,697) * lu(k,2062) + lu(k,2077) = lu(k,2077) - lu(k,698) * lu(k,2062) + lu(k,2083) = lu(k,2083) - lu(k,699) * lu(k,2062) + lu(k,2089) = lu(k,2089) - lu(k,700) * lu(k,2062) + lu(k,2095) = lu(k,2095) - lu(k,701) * lu(k,2062) + lu(k,2101) = lu(k,2101) - lu(k,702) * lu(k,2062) + lu(k,2109) = lu(k,2109) - lu(k,703) * lu(k,2062) + lu(k,2116) = lu(k,2116) - lu(k,704) * lu(k,2062) + lu(k,707) = 1._r8 / lu(k,707) + lu(k,708) = lu(k,708) * lu(k,707) + lu(k,709) = lu(k,709) * lu(k,707) + lu(k,710) = lu(k,710) * lu(k,707) + lu(k,711) = lu(k,711) * lu(k,707) + lu(k,712) = lu(k,712) * lu(k,707) + lu(k,713) = lu(k,713) * lu(k,707) + lu(k,1668) = lu(k,1668) - lu(k,708) * lu(k,1636) + lu(k,1690) = lu(k,1690) - lu(k,709) * lu(k,1636) + lu(k,1692) = lu(k,1692) - lu(k,710) * lu(k,1636) + lu(k,1696) = lu(k,1696) - lu(k,711) * lu(k,1636) + lu(k,1697) = lu(k,1697) - lu(k,712) * lu(k,1636) + lu(k,1699) = lu(k,1699) - lu(k,713) * lu(k,1636) + lu(k,1897) = lu(k,1897) - lu(k,708) * lu(k,1876) + lu(k,1917) = lu(k,1917) - lu(k,709) * lu(k,1876) + lu(k,1919) = lu(k,1919) - lu(k,710) * lu(k,1876) + lu(k,1923) = lu(k,1923) - lu(k,711) * lu(k,1876) + lu(k,1924) = lu(k,1924) - lu(k,712) * lu(k,1876) + lu(k,1926) = lu(k,1926) - lu(k,713) * lu(k,1876) + lu(k,1992) = - lu(k,708) * lu(k,1985) + lu(k,2000) = lu(k,2000) - lu(k,709) * lu(k,1985) + lu(k,2002) = lu(k,2002) - lu(k,710) * lu(k,1985) + lu(k,2006) = - lu(k,711) * lu(k,1985) + lu(k,2007) = - lu(k,712) * lu(k,1985) + lu(k,2009) = lu(k,2009) - lu(k,713) * lu(k,1985) + lu(k,2087) = lu(k,2087) - lu(k,708) * lu(k,2063) + lu(k,2107) = lu(k,2107) - lu(k,709) * lu(k,2063) + lu(k,2109) = lu(k,2109) - lu(k,710) * lu(k,2063) + lu(k,2113) = lu(k,2113) - lu(k,711) * lu(k,2063) + lu(k,2114) = lu(k,2114) - lu(k,712) * lu(k,2063) + lu(k,2116) = lu(k,2116) - lu(k,713) * lu(k,2063) + lu(k,2227) = - lu(k,708) * lu(k,2212) + lu(k,2246) = lu(k,2246) - lu(k,709) * lu(k,2212) + lu(k,2248) = lu(k,2248) - lu(k,710) * lu(k,2212) + lu(k,2252) = lu(k,2252) - lu(k,711) * lu(k,2212) + lu(k,2253) = lu(k,2253) - lu(k,712) * lu(k,2212) + lu(k,2255) = lu(k,2255) - lu(k,713) * lu(k,2212) + lu(k,714) = 1._r8 / lu(k,714) + lu(k,715) = lu(k,715) * lu(k,714) + lu(k,716) = lu(k,716) * lu(k,714) + lu(k,717) = lu(k,717) * lu(k,714) + lu(k,718) = lu(k,718) * lu(k,714) + lu(k,719) = lu(k,719) * lu(k,714) + lu(k,728) = lu(k,728) - lu(k,715) * lu(k,724) + lu(k,729) = lu(k,729) - lu(k,716) * lu(k,724) + lu(k,732) = lu(k,732) - lu(k,717) * lu(k,724) + lu(k,733) = lu(k,733) - lu(k,718) * lu(k,724) + lu(k,734) = lu(k,734) - lu(k,719) * lu(k,724) + lu(k,752) = lu(k,752) - lu(k,715) * lu(k,748) + lu(k,753) = lu(k,753) - lu(k,716) * lu(k,748) + lu(k,757) = lu(k,757) - lu(k,717) * lu(k,748) + lu(k,758) = lu(k,758) - lu(k,718) * lu(k,748) + lu(k,759) = lu(k,759) - lu(k,719) * lu(k,748) + lu(k,1661) = lu(k,1661) - lu(k,715) * lu(k,1637) + lu(k,1670) = lu(k,1670) - lu(k,716) * lu(k,1637) + lu(k,1696) = lu(k,1696) - lu(k,717) * lu(k,1637) + lu(k,1697) = lu(k,1697) - lu(k,718) * lu(k,1637) + lu(k,1699) = lu(k,1699) - lu(k,719) * lu(k,1637) + lu(k,1892) = lu(k,1892) - lu(k,715) * lu(k,1877) + lu(k,1899) = lu(k,1899) - lu(k,716) * lu(k,1877) + lu(k,1923) = lu(k,1923) - lu(k,717) * lu(k,1877) + lu(k,1924) = lu(k,1924) - lu(k,718) * lu(k,1877) + lu(k,1926) = lu(k,1926) - lu(k,719) * lu(k,1877) + lu(k,1950) = - lu(k,715) * lu(k,1943) + lu(k,1951) = - lu(k,716) * lu(k,1943) + lu(k,1967) = lu(k,1967) - lu(k,717) * lu(k,1943) + lu(k,1968) = lu(k,1968) - lu(k,718) * lu(k,1943) + lu(k,1970) = lu(k,1970) - lu(k,719) * lu(k,1943) + lu(k,2083) = lu(k,2083) - lu(k,715) * lu(k,2064) + lu(k,2089) = lu(k,2089) - lu(k,716) * lu(k,2064) + lu(k,2113) = lu(k,2113) - lu(k,717) * lu(k,2064) + lu(k,2114) = lu(k,2114) - lu(k,718) * lu(k,2064) + lu(k,2116) = lu(k,2116) - lu(k,719) * lu(k,2064) + lu(k,725) = 1._r8 / lu(k,725) + lu(k,726) = lu(k,726) * lu(k,725) + lu(k,727) = lu(k,727) * lu(k,725) + lu(k,728) = lu(k,728) * lu(k,725) + lu(k,729) = lu(k,729) * lu(k,725) + lu(k,730) = lu(k,730) * lu(k,725) + lu(k,731) = lu(k,731) * lu(k,725) + lu(k,732) = lu(k,732) * lu(k,725) + lu(k,733) = lu(k,733) * lu(k,725) + lu(k,734) = lu(k,734) * lu(k,725) + lu(k,1641) = lu(k,1641) - lu(k,726) * lu(k,1638) + lu(k,1653) = lu(k,1653) - lu(k,727) * lu(k,1638) + lu(k,1661) = lu(k,1661) - lu(k,728) * lu(k,1638) + lu(k,1670) = lu(k,1670) - lu(k,729) * lu(k,1638) + lu(k,1677) = lu(k,1677) - lu(k,730) * lu(k,1638) + lu(k,1692) = lu(k,1692) - lu(k,731) * lu(k,1638) + lu(k,1696) = lu(k,1696) - lu(k,732) * lu(k,1638) + lu(k,1697) = lu(k,1697) - lu(k,733) * lu(k,1638) + lu(k,1699) = lu(k,1699) - lu(k,734) * lu(k,1638) + lu(k,1880) = lu(k,1880) - lu(k,726) * lu(k,1878) + lu(k,1886) = lu(k,1886) - lu(k,727) * lu(k,1878) + lu(k,1892) = lu(k,1892) - lu(k,728) * lu(k,1878) + lu(k,1899) = lu(k,1899) - lu(k,729) * lu(k,1878) + lu(k,1906) = lu(k,1906) - lu(k,730) * lu(k,1878) + lu(k,1919) = lu(k,1919) - lu(k,731) * lu(k,1878) + lu(k,1923) = lu(k,1923) - lu(k,732) * lu(k,1878) + lu(k,1924) = lu(k,1924) - lu(k,733) * lu(k,1878) + lu(k,1926) = lu(k,1926) - lu(k,734) * lu(k,1878) + lu(k,2068) = lu(k,2068) - lu(k,726) * lu(k,2065) + lu(k,2077) = lu(k,2077) - lu(k,727) * lu(k,2065) + lu(k,2083) = lu(k,2083) - lu(k,728) * lu(k,2065) + lu(k,2089) = lu(k,2089) - lu(k,729) * lu(k,2065) + lu(k,2095) = lu(k,2095) - lu(k,730) * lu(k,2065) + lu(k,2109) = lu(k,2109) - lu(k,731) * lu(k,2065) + lu(k,2113) = lu(k,2113) - lu(k,732) * lu(k,2065) + lu(k,2114) = lu(k,2114) - lu(k,733) * lu(k,2065) + lu(k,2116) = lu(k,2116) - lu(k,734) * lu(k,2065) + end do + end subroutine lu_fac15 + subroutine lu_fac16( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,736) = 1._r8 / lu(k,736) + lu(k,737) = lu(k,737) * lu(k,736) + lu(k,738) = lu(k,738) * lu(k,736) + lu(k,739) = lu(k,739) * lu(k,736) + lu(k,740) = lu(k,740) * lu(k,736) + lu(k,741) = lu(k,741) * lu(k,736) + lu(k,742) = lu(k,742) * lu(k,736) + lu(k,1193) = - lu(k,737) * lu(k,1187) + lu(k,1195) = - lu(k,738) * lu(k,1187) + lu(k,1197) = - lu(k,739) * lu(k,1187) + lu(k,1200) = lu(k,1200) - lu(k,740) * lu(k,1187) + lu(k,1201) = lu(k,1201) - lu(k,741) * lu(k,1187) + lu(k,1206) = lu(k,1206) - lu(k,742) * lu(k,1187) + lu(k,1254) = - lu(k,737) * lu(k,1247) + lu(k,1255) = lu(k,1255) - lu(k,738) * lu(k,1247) + lu(k,1259) = lu(k,1259) - lu(k,739) * lu(k,1247) + lu(k,1263) = lu(k,1263) - lu(k,740) * lu(k,1247) + lu(k,1264) = lu(k,1264) - lu(k,741) * lu(k,1247) + lu(k,1269) = lu(k,1269) - lu(k,742) * lu(k,1247) + lu(k,1286) = lu(k,1286) - lu(k,737) * lu(k,1277) + lu(k,1287) = - lu(k,738) * lu(k,1277) + lu(k,1291) = - lu(k,739) * lu(k,1277) + lu(k,1295) = lu(k,1295) - lu(k,740) * lu(k,1277) + lu(k,1296) = lu(k,1296) - lu(k,741) * lu(k,1277) + lu(k,1301) = lu(k,1301) - lu(k,742) * lu(k,1277) + lu(k,1674) = lu(k,1674) - lu(k,737) * lu(k,1639) + lu(k,1676) = lu(k,1676) - lu(k,738) * lu(k,1639) + lu(k,1682) = lu(k,1682) - lu(k,739) * lu(k,1639) + lu(k,1690) = lu(k,1690) - lu(k,740) * lu(k,1639) + lu(k,1692) = lu(k,1692) - lu(k,741) * lu(k,1639) + lu(k,1699) = lu(k,1699) - lu(k,742) * lu(k,1639) + lu(k,2092) = lu(k,2092) - lu(k,737) * lu(k,2066) + lu(k,2094) = - lu(k,738) * lu(k,2066) + lu(k,2099) = - lu(k,739) * lu(k,2066) + lu(k,2107) = lu(k,2107) - lu(k,740) * lu(k,2066) + lu(k,2109) = lu(k,2109) - lu(k,741) * lu(k,2066) + lu(k,2116) = lu(k,2116) - lu(k,742) * lu(k,2066) + lu(k,749) = 1._r8 / lu(k,749) + lu(k,750) = lu(k,750) * lu(k,749) + lu(k,751) = lu(k,751) * lu(k,749) + lu(k,752) = lu(k,752) * lu(k,749) + lu(k,753) = lu(k,753) * lu(k,749) + lu(k,754) = lu(k,754) * lu(k,749) + lu(k,755) = lu(k,755) * lu(k,749) + lu(k,756) = lu(k,756) * lu(k,749) + lu(k,757) = lu(k,757) * lu(k,749) + lu(k,758) = lu(k,758) * lu(k,749) + lu(k,759) = lu(k,759) * lu(k,749) + lu(k,1641) = lu(k,1641) - lu(k,750) * lu(k,1640) + lu(k,1653) = lu(k,1653) - lu(k,751) * lu(k,1640) + lu(k,1661) = lu(k,1661) - lu(k,752) * lu(k,1640) + lu(k,1670) = lu(k,1670) - lu(k,753) * lu(k,1640) + lu(k,1677) = lu(k,1677) - lu(k,754) * lu(k,1640) + lu(k,1684) = lu(k,1684) - lu(k,755) * lu(k,1640) + lu(k,1692) = lu(k,1692) - lu(k,756) * lu(k,1640) + lu(k,1696) = lu(k,1696) - lu(k,757) * lu(k,1640) + lu(k,1697) = lu(k,1697) - lu(k,758) * lu(k,1640) + lu(k,1699) = lu(k,1699) - lu(k,759) * lu(k,1640) + lu(k,1880) = lu(k,1880) - lu(k,750) * lu(k,1879) + lu(k,1886) = lu(k,1886) - lu(k,751) * lu(k,1879) + lu(k,1892) = lu(k,1892) - lu(k,752) * lu(k,1879) + lu(k,1899) = lu(k,1899) - lu(k,753) * lu(k,1879) + lu(k,1906) = lu(k,1906) - lu(k,754) * lu(k,1879) + lu(k,1912) = lu(k,1912) - lu(k,755) * lu(k,1879) + lu(k,1919) = lu(k,1919) - lu(k,756) * lu(k,1879) + lu(k,1923) = lu(k,1923) - lu(k,757) * lu(k,1879) + lu(k,1924) = lu(k,1924) - lu(k,758) * lu(k,1879) + lu(k,1926) = lu(k,1926) - lu(k,759) * lu(k,1879) + lu(k,2068) = lu(k,2068) - lu(k,750) * lu(k,2067) + lu(k,2077) = lu(k,2077) - lu(k,751) * lu(k,2067) + lu(k,2083) = lu(k,2083) - lu(k,752) * lu(k,2067) + lu(k,2089) = lu(k,2089) - lu(k,753) * lu(k,2067) + lu(k,2095) = lu(k,2095) - lu(k,754) * lu(k,2067) + lu(k,2101) = lu(k,2101) - lu(k,755) * lu(k,2067) + lu(k,2109) = lu(k,2109) - lu(k,756) * lu(k,2067) + lu(k,2113) = lu(k,2113) - lu(k,757) * lu(k,2067) + lu(k,2114) = lu(k,2114) - lu(k,758) * lu(k,2067) + lu(k,2116) = lu(k,2116) - lu(k,759) * lu(k,2067) + lu(k,760) = 1._r8 / lu(k,760) + lu(k,761) = lu(k,761) * lu(k,760) + lu(k,762) = lu(k,762) * lu(k,760) + lu(k,763) = lu(k,763) * lu(k,760) + lu(k,764) = lu(k,764) * lu(k,760) + lu(k,765) = lu(k,765) * lu(k,760) + lu(k,766) = lu(k,766) * lu(k,760) + lu(k,767) = lu(k,767) * lu(k,760) + lu(k,1670) = lu(k,1670) - lu(k,761) * lu(k,1641) + lu(k,1677) = lu(k,1677) - lu(k,762) * lu(k,1641) + lu(k,1692) = lu(k,1692) - lu(k,763) * lu(k,1641) + lu(k,1695) = lu(k,1695) - lu(k,764) * lu(k,1641) + lu(k,1696) = lu(k,1696) - lu(k,765) * lu(k,1641) + lu(k,1697) = lu(k,1697) - lu(k,766) * lu(k,1641) + lu(k,1699) = lu(k,1699) - lu(k,767) * lu(k,1641) + lu(k,1899) = lu(k,1899) - lu(k,761) * lu(k,1880) + lu(k,1906) = lu(k,1906) - lu(k,762) * lu(k,1880) + lu(k,1919) = lu(k,1919) - lu(k,763) * lu(k,1880) + lu(k,1922) = lu(k,1922) - lu(k,764) * lu(k,1880) + lu(k,1923) = lu(k,1923) - lu(k,765) * lu(k,1880) + lu(k,1924) = lu(k,1924) - lu(k,766) * lu(k,1880) + lu(k,1926) = lu(k,1926) - lu(k,767) * lu(k,1880) + lu(k,1951) = lu(k,1951) - lu(k,761) * lu(k,1944) + lu(k,1953) = - lu(k,762) * lu(k,1944) + lu(k,1963) = lu(k,1963) - lu(k,763) * lu(k,1944) + lu(k,1966) = lu(k,1966) - lu(k,764) * lu(k,1944) + lu(k,1967) = lu(k,1967) - lu(k,765) * lu(k,1944) + lu(k,1968) = lu(k,1968) - lu(k,766) * lu(k,1944) + lu(k,1970) = lu(k,1970) - lu(k,767) * lu(k,1944) + lu(k,2089) = lu(k,2089) - lu(k,761) * lu(k,2068) + lu(k,2095) = lu(k,2095) - lu(k,762) * lu(k,2068) + lu(k,2109) = lu(k,2109) - lu(k,763) * lu(k,2068) + lu(k,2112) = lu(k,2112) - lu(k,764) * lu(k,2068) + lu(k,2113) = lu(k,2113) - lu(k,765) * lu(k,2068) + lu(k,2114) = lu(k,2114) - lu(k,766) * lu(k,2068) + lu(k,2116) = lu(k,2116) - lu(k,767) * lu(k,2068) + lu(k,769) = 1._r8 / lu(k,769) + lu(k,770) = lu(k,770) * lu(k,769) + lu(k,771) = lu(k,771) * lu(k,769) + lu(k,772) = lu(k,772) * lu(k,769) + lu(k,773) = lu(k,773) * lu(k,769) + lu(k,774) = lu(k,774) * lu(k,769) + lu(k,775) = lu(k,775) * lu(k,769) + lu(k,776) = lu(k,776) * lu(k,769) + lu(k,777) = lu(k,777) * lu(k,769) + lu(k,1026) = lu(k,1026) - lu(k,770) * lu(k,1021) + lu(k,1028) = - lu(k,771) * lu(k,1021) + lu(k,1032) = lu(k,1032) - lu(k,772) * lu(k,1021) + lu(k,1033) = lu(k,1033) - lu(k,773) * lu(k,1021) + lu(k,1036) = - lu(k,774) * lu(k,1021) + lu(k,1037) = - lu(k,775) * lu(k,1021) + lu(k,1038) = lu(k,1038) - lu(k,776) * lu(k,1021) + lu(k,1041) = lu(k,1041) - lu(k,777) * lu(k,1021) + lu(k,1667) = lu(k,1667) - lu(k,770) * lu(k,1642) + lu(k,1672) = lu(k,1672) - lu(k,771) * lu(k,1642) + lu(k,1690) = lu(k,1690) - lu(k,772) * lu(k,1642) + lu(k,1692) = lu(k,1692) - lu(k,773) * lu(k,1642) + lu(k,1696) = lu(k,1696) - lu(k,774) * lu(k,1642) + lu(k,1697) = lu(k,1697) - lu(k,775) * lu(k,1642) + lu(k,1699) = lu(k,1699) - lu(k,776) * lu(k,1642) + lu(k,1704) = lu(k,1704) - lu(k,777) * lu(k,1642) + lu(k,1896) = lu(k,1896) - lu(k,770) * lu(k,1881) + lu(k,1901) = lu(k,1901) - lu(k,771) * lu(k,1881) + lu(k,1917) = lu(k,1917) - lu(k,772) * lu(k,1881) + lu(k,1919) = lu(k,1919) - lu(k,773) * lu(k,1881) + lu(k,1923) = lu(k,1923) - lu(k,774) * lu(k,1881) + lu(k,1924) = lu(k,1924) - lu(k,775) * lu(k,1881) + lu(k,1926) = lu(k,1926) - lu(k,776) * lu(k,1881) + lu(k,1931) = - lu(k,777) * lu(k,1881) + lu(k,2086) = lu(k,2086) - lu(k,770) * lu(k,2069) + lu(k,2091) = lu(k,2091) - lu(k,771) * lu(k,2069) + lu(k,2107) = lu(k,2107) - lu(k,772) * lu(k,2069) + lu(k,2109) = lu(k,2109) - lu(k,773) * lu(k,2069) + lu(k,2113) = lu(k,2113) - lu(k,774) * lu(k,2069) + lu(k,2114) = lu(k,2114) - lu(k,775) * lu(k,2069) + lu(k,2116) = lu(k,2116) - lu(k,776) * lu(k,2069) + lu(k,2121) = lu(k,2121) - lu(k,777) * lu(k,2069) + lu(k,779) = 1._r8 / lu(k,779) + lu(k,780) = lu(k,780) * lu(k,779) + lu(k,781) = lu(k,781) * lu(k,779) + lu(k,782) = lu(k,782) * lu(k,779) + lu(k,783) = lu(k,783) * lu(k,779) + lu(k,784) = lu(k,784) * lu(k,779) + lu(k,785) = lu(k,785) * lu(k,779) + lu(k,786) = lu(k,786) * lu(k,779) + lu(k,1957) = lu(k,1957) - lu(k,780) * lu(k,1945) + lu(k,1963) = lu(k,1963) - lu(k,781) * lu(k,1945) + lu(k,1969) = - lu(k,782) * lu(k,1945) + lu(k,1971) = - lu(k,783) * lu(k,1945) + lu(k,1972) = lu(k,1972) - lu(k,784) * lu(k,1945) + lu(k,1973) = lu(k,1973) - lu(k,785) * lu(k,1945) + lu(k,1975) = lu(k,1975) - lu(k,786) * lu(k,1945) + lu(k,2103) = lu(k,2103) - lu(k,780) * lu(k,2070) + lu(k,2109) = lu(k,2109) - lu(k,781) * lu(k,2070) + lu(k,2115) = lu(k,2115) - lu(k,782) * lu(k,2070) + lu(k,2117) = lu(k,2117) - lu(k,783) * lu(k,2070) + lu(k,2118) = lu(k,2118) - lu(k,784) * lu(k,2070) + lu(k,2119) = lu(k,2119) - lu(k,785) * lu(k,2070) + lu(k,2121) = lu(k,2121) - lu(k,786) * lu(k,2070) + lu(k,2127) = lu(k,2127) - lu(k,780) * lu(k,2124) + lu(k,2132) = lu(k,2132) - lu(k,781) * lu(k,2124) + lu(k,2138) = lu(k,2138) - lu(k,782) * lu(k,2124) + lu(k,2140) = lu(k,2140) - lu(k,783) * lu(k,2124) + lu(k,2141) = - lu(k,784) * lu(k,2124) + lu(k,2142) = lu(k,2142) - lu(k,785) * lu(k,2124) + lu(k,2144) = lu(k,2144) - lu(k,786) * lu(k,2124) + lu(k,2151) = lu(k,2151) - lu(k,780) * lu(k,2148) + lu(k,2156) = lu(k,2156) - lu(k,781) * lu(k,2148) + lu(k,2162) = lu(k,2162) - lu(k,782) * lu(k,2148) + lu(k,2164) = - lu(k,783) * lu(k,2148) + lu(k,2165) = lu(k,2165) - lu(k,784) * lu(k,2148) + lu(k,2166) = lu(k,2166) - lu(k,785) * lu(k,2148) + lu(k,2168) = - lu(k,786) * lu(k,2148) + lu(k,2181) = lu(k,2181) - lu(k,780) * lu(k,2173) + lu(k,2187) = lu(k,2187) - lu(k,781) * lu(k,2173) + lu(k,2193) = lu(k,2193) - lu(k,782) * lu(k,2173) + lu(k,2195) = lu(k,2195) - lu(k,783) * lu(k,2173) + lu(k,2196) = lu(k,2196) - lu(k,784) * lu(k,2173) + lu(k,2197) = lu(k,2197) - lu(k,785) * lu(k,2173) + lu(k,2199) = lu(k,2199) - lu(k,786) * lu(k,2173) + end do + end subroutine lu_fac16 + subroutine lu_fac17( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,788) = 1._r8 / lu(k,788) + lu(k,789) = lu(k,789) * lu(k,788) + lu(k,790) = lu(k,790) * lu(k,788) + lu(k,791) = lu(k,791) * lu(k,788) + lu(k,792) = lu(k,792) * lu(k,788) + lu(k,793) = lu(k,793) * lu(k,788) + lu(k,794) = lu(k,794) * lu(k,788) + lu(k,795) = lu(k,795) * lu(k,788) + lu(k,796) = lu(k,796) * lu(k,788) + lu(k,797) = lu(k,797) * lu(k,788) + lu(k,1657) = lu(k,1657) - lu(k,789) * lu(k,1643) + lu(k,1667) = lu(k,1667) - lu(k,790) * lu(k,1643) + lu(k,1690) = lu(k,1690) - lu(k,791) * lu(k,1643) + lu(k,1692) = lu(k,1692) - lu(k,792) * lu(k,1643) + lu(k,1695) = lu(k,1695) - lu(k,793) * lu(k,1643) + lu(k,1696) = lu(k,1696) - lu(k,794) * lu(k,1643) + lu(k,1697) = lu(k,1697) - lu(k,795) * lu(k,1643) + lu(k,1699) = lu(k,1699) - lu(k,796) * lu(k,1643) + lu(k,1704) = lu(k,1704) - lu(k,797) * lu(k,1643) + lu(k,1800) = lu(k,1800) - lu(k,789) * lu(k,1794) + lu(k,1806) = lu(k,1806) - lu(k,790) * lu(k,1794) + lu(k,1825) = lu(k,1825) - lu(k,791) * lu(k,1794) + lu(k,1827) = lu(k,1827) - lu(k,792) * lu(k,1794) + lu(k,1830) = lu(k,1830) - lu(k,793) * lu(k,1794) + lu(k,1831) = lu(k,1831) - lu(k,794) * lu(k,1794) + lu(k,1832) = lu(k,1832) - lu(k,795) * lu(k,1794) + lu(k,1834) = lu(k,1834) - lu(k,796) * lu(k,1794) + lu(k,1839) = lu(k,1839) - lu(k,797) * lu(k,1794) + lu(k,1889) = lu(k,1889) - lu(k,789) * lu(k,1882) + lu(k,1896) = lu(k,1896) - lu(k,790) * lu(k,1882) + lu(k,1917) = lu(k,1917) - lu(k,791) * lu(k,1882) + lu(k,1919) = lu(k,1919) - lu(k,792) * lu(k,1882) + lu(k,1922) = lu(k,1922) - lu(k,793) * lu(k,1882) + lu(k,1923) = lu(k,1923) - lu(k,794) * lu(k,1882) + lu(k,1924) = lu(k,1924) - lu(k,795) * lu(k,1882) + lu(k,1926) = lu(k,1926) - lu(k,796) * lu(k,1882) + lu(k,1931) = lu(k,1931) - lu(k,797) * lu(k,1882) + lu(k,2080) = lu(k,2080) - lu(k,789) * lu(k,2071) + lu(k,2086) = lu(k,2086) - lu(k,790) * lu(k,2071) + lu(k,2107) = lu(k,2107) - lu(k,791) * lu(k,2071) + lu(k,2109) = lu(k,2109) - lu(k,792) * lu(k,2071) + lu(k,2112) = lu(k,2112) - lu(k,793) * lu(k,2071) + lu(k,2113) = lu(k,2113) - lu(k,794) * lu(k,2071) + lu(k,2114) = lu(k,2114) - lu(k,795) * lu(k,2071) + lu(k,2116) = lu(k,2116) - lu(k,796) * lu(k,2071) + lu(k,2121) = lu(k,2121) - lu(k,797) * lu(k,2071) + lu(k,798) = 1._r8 / lu(k,798) + lu(k,799) = lu(k,799) * lu(k,798) + lu(k,800) = lu(k,800) * lu(k,798) + lu(k,801) = lu(k,801) * lu(k,798) + lu(k,826) = lu(k,826) - lu(k,799) * lu(k,823) + lu(k,827) = lu(k,827) - lu(k,800) * lu(k,823) + lu(k,831) = lu(k,831) - lu(k,801) * lu(k,823) + lu(k,917) = lu(k,917) - lu(k,799) * lu(k,912) + lu(k,918) = lu(k,918) - lu(k,800) * lu(k,912) + lu(k,922) = lu(k,922) - lu(k,801) * lu(k,912) + lu(k,1051) = lu(k,1051) - lu(k,799) * lu(k,1044) + lu(k,1052) = lu(k,1052) - lu(k,800) * lu(k,1044) + lu(k,1057) = lu(k,1057) - lu(k,801) * lu(k,1044) + lu(k,1115) = lu(k,1115) - lu(k,799) * lu(k,1105) + lu(k,1116) = lu(k,1116) - lu(k,800) * lu(k,1105) + lu(k,1120) = lu(k,1120) - lu(k,801) * lu(k,1105) + lu(k,1134) = lu(k,1134) - lu(k,799) * lu(k,1129) + lu(k,1135) = lu(k,1135) - lu(k,800) * lu(k,1129) + lu(k,1139) = lu(k,1139) - lu(k,801) * lu(k,1129) + lu(k,1177) = lu(k,1177) - lu(k,799) * lu(k,1168) + lu(k,1178) = lu(k,1178) - lu(k,800) * lu(k,1168) + lu(k,1183) = lu(k,1183) - lu(k,801) * lu(k,1168) + lu(k,1200) = lu(k,1200) - lu(k,799) * lu(k,1188) + lu(k,1201) = lu(k,1201) - lu(k,800) * lu(k,1188) + lu(k,1206) = lu(k,1206) - lu(k,801) * lu(k,1188) + lu(k,1263) = lu(k,1263) - lu(k,799) * lu(k,1248) + lu(k,1264) = lu(k,1264) - lu(k,800) * lu(k,1248) + lu(k,1269) = lu(k,1269) - lu(k,801) * lu(k,1248) + lu(k,1295) = lu(k,1295) - lu(k,799) * lu(k,1278) + lu(k,1296) = lu(k,1296) - lu(k,800) * lu(k,1278) + lu(k,1301) = lu(k,1301) - lu(k,801) * lu(k,1278) + lu(k,1316) = lu(k,1316) - lu(k,799) * lu(k,1306) + lu(k,1317) = lu(k,1317) - lu(k,800) * lu(k,1306) + lu(k,1322) = lu(k,1322) - lu(k,801) * lu(k,1306) + lu(k,1690) = lu(k,1690) - lu(k,799) * lu(k,1644) + lu(k,1692) = lu(k,1692) - lu(k,800) * lu(k,1644) + lu(k,1699) = lu(k,1699) - lu(k,801) * lu(k,1644) + lu(k,1825) = lu(k,1825) - lu(k,799) * lu(k,1795) + lu(k,1827) = lu(k,1827) - lu(k,800) * lu(k,1795) + lu(k,1834) = lu(k,1834) - lu(k,801) * lu(k,1795) + lu(k,802) = 1._r8 / lu(k,802) + lu(k,803) = lu(k,803) * lu(k,802) + lu(k,804) = lu(k,804) * lu(k,802) + lu(k,931) = - lu(k,803) * lu(k,929) + lu(k,934) = - lu(k,804) * lu(k,929) + lu(k,955) = lu(k,955) - lu(k,803) * lu(k,944) + lu(k,967) = - lu(k,804) * lu(k,944) + lu(k,981) = lu(k,981) - lu(k,803) * lu(k,979) + lu(k,984) = - lu(k,804) * lu(k,979) + lu(k,1005) = lu(k,1005) - lu(k,803) * lu(k,993) + lu(k,1017) = - lu(k,804) * lu(k,993) + lu(k,1027) = lu(k,1027) - lu(k,803) * lu(k,1022) + lu(k,1039) = - lu(k,804) * lu(k,1022) + lu(k,1061) = lu(k,1061) - lu(k,803) * lu(k,1058) + lu(k,1068) = - lu(k,804) * lu(k,1058) + lu(k,1098) = lu(k,1098) - lu(k,803) * lu(k,1095) + lu(k,1102) = - lu(k,804) * lu(k,1095) + lu(k,1111) = lu(k,1111) - lu(k,803) * lu(k,1106) + lu(k,1121) = - lu(k,804) * lu(k,1106) + lu(k,1124) = lu(k,1124) - lu(k,803) * lu(k,1123) + lu(k,1127) = - lu(k,804) * lu(k,1123) + lu(k,1172) = lu(k,1172) - lu(k,803) * lu(k,1169) + lu(k,1184) = - lu(k,804) * lu(k,1169) + lu(k,1251) = - lu(k,803) * lu(k,1249) + lu(k,1270) = - lu(k,804) * lu(k,1249) + lu(k,1329) = lu(k,1329) - lu(k,803) * lu(k,1325) + lu(k,1345) = - lu(k,804) * lu(k,1325) + lu(k,1352) = - lu(k,803) * lu(k,1351) + lu(k,1365) = - lu(k,804) * lu(k,1351) + lu(k,1376) = lu(k,1376) - lu(k,803) * lu(k,1372) + lu(k,1397) = - lu(k,804) * lu(k,1372) + lu(k,1429) = lu(k,1429) - lu(k,803) * lu(k,1427) + lu(k,1442) = lu(k,1442) - lu(k,804) * lu(k,1427) + lu(k,1670) = lu(k,1670) - lu(k,803) * lu(k,1645) + lu(k,1702) = lu(k,1702) - lu(k,804) * lu(k,1645) + lu(k,1809) = lu(k,1809) - lu(k,803) * lu(k,1796) + lu(k,1837) = - lu(k,804) * lu(k,1796) + lu(k,1899) = lu(k,1899) - lu(k,803) * lu(k,1883) + lu(k,1929) = lu(k,1929) - lu(k,804) * lu(k,1883) + lu(k,1951) = lu(k,1951) - lu(k,803) * lu(k,1946) + lu(k,1973) = lu(k,1973) - lu(k,804) * lu(k,1946) + lu(k,2089) = lu(k,2089) - lu(k,803) * lu(k,2072) + lu(k,2119) = lu(k,2119) - lu(k,804) * lu(k,2072) + lu(k,2229) = lu(k,2229) - lu(k,803) * lu(k,2213) + lu(k,2258) = lu(k,2258) - lu(k,804) * lu(k,2213) + lu(k,805) = 1._r8 / lu(k,805) + lu(k,806) = lu(k,806) * lu(k,805) + lu(k,807) = lu(k,807) * lu(k,805) + lu(k,808) = lu(k,808) * lu(k,805) + lu(k,809) = lu(k,809) * lu(k,805) + lu(k,810) = lu(k,810) * lu(k,805) + lu(k,811) = lu(k,811) * lu(k,805) + lu(k,812) = lu(k,812) * lu(k,805) + lu(k,1416) = lu(k,1416) - lu(k,806) * lu(k,1414) + lu(k,1417) = - lu(k,807) * lu(k,1414) + lu(k,1419) = - lu(k,808) * lu(k,1414) + lu(k,1420) = - lu(k,809) * lu(k,1414) + lu(k,1422) = lu(k,1422) - lu(k,810) * lu(k,1414) + lu(k,1423) = - lu(k,811) * lu(k,1414) + lu(k,1425) = - lu(k,812) * lu(k,1414) + lu(k,1482) = lu(k,1482) - lu(k,806) * lu(k,1478) + lu(k,1484) = lu(k,1484) - lu(k,807) * lu(k,1478) + lu(k,1487) = - lu(k,808) * lu(k,1478) + lu(k,1488) = lu(k,1488) - lu(k,809) * lu(k,1478) + lu(k,1496) = - lu(k,810) * lu(k,1478) + lu(k,1497) = lu(k,1497) - lu(k,811) * lu(k,1478) + lu(k,1499) = lu(k,1499) - lu(k,812) * lu(k,1478) + lu(k,1522) = lu(k,1522) - lu(k,806) * lu(k,1519) + lu(k,1524) = lu(k,1524) - lu(k,807) * lu(k,1519) + lu(k,1527) = lu(k,1527) - lu(k,808) * lu(k,1519) + lu(k,1528) = lu(k,1528) - lu(k,809) * lu(k,1519) + lu(k,1537) = lu(k,1537) - lu(k,810) * lu(k,1519) + lu(k,1538) = lu(k,1538) - lu(k,811) * lu(k,1519) + lu(k,1540) = lu(k,1540) - lu(k,812) * lu(k,1519) + lu(k,1686) = lu(k,1686) - lu(k,806) * lu(k,1646) + lu(k,1688) = lu(k,1688) - lu(k,807) * lu(k,1646) + lu(k,1691) = lu(k,1691) - lu(k,808) * lu(k,1646) + lu(k,1692) = lu(k,1692) - lu(k,809) * lu(k,1646) + lu(k,1701) = lu(k,1701) - lu(k,810) * lu(k,1646) + lu(k,1702) = lu(k,1702) - lu(k,811) * lu(k,1646) + lu(k,1704) = lu(k,1704) - lu(k,812) * lu(k,1646) + lu(k,2103) = lu(k,2103) - lu(k,806) * lu(k,2073) + lu(k,2105) = lu(k,2105) - lu(k,807) * lu(k,2073) + lu(k,2108) = - lu(k,808) * lu(k,2073) + lu(k,2109) = lu(k,2109) - lu(k,809) * lu(k,2073) + lu(k,2118) = lu(k,2118) - lu(k,810) * lu(k,2073) + lu(k,2119) = lu(k,2119) - lu(k,811) * lu(k,2073) + lu(k,2121) = lu(k,2121) - lu(k,812) * lu(k,2073) + lu(k,2181) = lu(k,2181) - lu(k,806) * lu(k,2174) + lu(k,2183) = lu(k,2183) - lu(k,807) * lu(k,2174) + lu(k,2186) = - lu(k,808) * lu(k,2174) + lu(k,2187) = lu(k,2187) - lu(k,809) * lu(k,2174) + lu(k,2196) = lu(k,2196) - lu(k,810) * lu(k,2174) + lu(k,2197) = lu(k,2197) - lu(k,811) * lu(k,2174) + lu(k,2199) = lu(k,2199) - lu(k,812) * lu(k,2174) + end do + end subroutine lu_fac17 + subroutine lu_fac18( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,814) = 1._r8 / lu(k,814) + lu(k,815) = lu(k,815) * lu(k,814) + lu(k,816) = lu(k,816) * lu(k,814) + lu(k,817) = lu(k,817) * lu(k,814) + lu(k,818) = lu(k,818) * lu(k,814) + lu(k,819) = lu(k,819) * lu(k,814) + lu(k,820) = lu(k,820) * lu(k,814) + lu(k,902) = lu(k,902) - lu(k,815) * lu(k,899) + lu(k,903) = lu(k,903) - lu(k,816) * lu(k,899) + lu(k,906) = lu(k,906) - lu(k,817) * lu(k,899) + lu(k,907) = lu(k,907) - lu(k,818) * lu(k,899) + lu(k,908) = lu(k,908) - lu(k,819) * lu(k,899) + lu(k,909) = - lu(k,820) * lu(k,899) + lu(k,1692) = lu(k,1692) - lu(k,815) * lu(k,1647) + lu(k,1693) = lu(k,1693) - lu(k,816) * lu(k,1647) + lu(k,1698) = lu(k,1698) - lu(k,817) * lu(k,1647) + lu(k,1700) = lu(k,1700) - lu(k,818) * lu(k,1647) + lu(k,1702) = lu(k,1702) - lu(k,819) * lu(k,1647) + lu(k,1704) = lu(k,1704) - lu(k,820) * lu(k,1647) + lu(k,1718) = lu(k,1718) - lu(k,815) * lu(k,1709) + lu(k,1719) = lu(k,1719) - lu(k,816) * lu(k,1709) + lu(k,1724) = lu(k,1724) - lu(k,817) * lu(k,1709) + lu(k,1726) = lu(k,1726) - lu(k,818) * lu(k,1709) + lu(k,1728) = lu(k,1728) - lu(k,819) * lu(k,1709) + lu(k,1730) = - lu(k,820) * lu(k,1709) + lu(k,2002) = lu(k,2002) - lu(k,815) * lu(k,1986) + lu(k,2003) = lu(k,2003) - lu(k,816) * lu(k,1986) + lu(k,2008) = lu(k,2008) - lu(k,817) * lu(k,1986) + lu(k,2010) = lu(k,2010) - lu(k,818) * lu(k,1986) + lu(k,2012) = lu(k,2012) - lu(k,819) * lu(k,1986) + lu(k,2014) = lu(k,2014) - lu(k,820) * lu(k,1986) + lu(k,2109) = lu(k,2109) - lu(k,815) * lu(k,2074) + lu(k,2110) = lu(k,2110) - lu(k,816) * lu(k,2074) + lu(k,2115) = lu(k,2115) - lu(k,817) * lu(k,2074) + lu(k,2117) = lu(k,2117) - lu(k,818) * lu(k,2074) + lu(k,2119) = lu(k,2119) - lu(k,819) * lu(k,2074) + lu(k,2121) = lu(k,2121) - lu(k,820) * lu(k,2074) + lu(k,2132) = lu(k,2132) - lu(k,815) * lu(k,2125) + lu(k,2133) = lu(k,2133) - lu(k,816) * lu(k,2125) + lu(k,2138) = lu(k,2138) - lu(k,817) * lu(k,2125) + lu(k,2140) = lu(k,2140) - lu(k,818) * lu(k,2125) + lu(k,2142) = lu(k,2142) - lu(k,819) * lu(k,2125) + lu(k,2144) = lu(k,2144) - lu(k,820) * lu(k,2125) + lu(k,2187) = lu(k,2187) - lu(k,815) * lu(k,2175) + lu(k,2188) = lu(k,2188) - lu(k,816) * lu(k,2175) + lu(k,2193) = lu(k,2193) - lu(k,817) * lu(k,2175) + lu(k,2195) = lu(k,2195) - lu(k,818) * lu(k,2175) + lu(k,2197) = lu(k,2197) - lu(k,819) * lu(k,2175) + lu(k,2199) = lu(k,2199) - lu(k,820) * lu(k,2175) + lu(k,824) = 1._r8 / lu(k,824) + lu(k,825) = lu(k,825) * lu(k,824) + lu(k,826) = lu(k,826) * lu(k,824) + lu(k,827) = lu(k,827) * lu(k,824) + lu(k,828) = lu(k,828) * lu(k,824) + lu(k,829) = lu(k,829) * lu(k,824) + lu(k,830) = lu(k,830) * lu(k,824) + lu(k,831) = lu(k,831) * lu(k,824) + lu(k,890) = lu(k,890) - lu(k,825) * lu(k,887) + lu(k,892) = lu(k,892) - lu(k,826) * lu(k,887) + lu(k,893) = lu(k,893) - lu(k,827) * lu(k,887) + lu(k,894) = - lu(k,828) * lu(k,887) + lu(k,895) = lu(k,895) - lu(k,829) * lu(k,887) + lu(k,896) = lu(k,896) - lu(k,830) * lu(k,887) + lu(k,897) = lu(k,897) - lu(k,831) * lu(k,887) + lu(k,1667) = lu(k,1667) - lu(k,825) * lu(k,1648) + lu(k,1690) = lu(k,1690) - lu(k,826) * lu(k,1648) + lu(k,1692) = lu(k,1692) - lu(k,827) * lu(k,1648) + lu(k,1695) = lu(k,1695) - lu(k,828) * lu(k,1648) + lu(k,1696) = lu(k,1696) - lu(k,829) * lu(k,1648) + lu(k,1697) = lu(k,1697) - lu(k,830) * lu(k,1648) + lu(k,1699) = lu(k,1699) - lu(k,831) * lu(k,1648) + lu(k,1806) = lu(k,1806) - lu(k,825) * lu(k,1797) + lu(k,1825) = lu(k,1825) - lu(k,826) * lu(k,1797) + lu(k,1827) = lu(k,1827) - lu(k,827) * lu(k,1797) + lu(k,1830) = lu(k,1830) - lu(k,828) * lu(k,1797) + lu(k,1831) = lu(k,1831) - lu(k,829) * lu(k,1797) + lu(k,1832) = lu(k,1832) - lu(k,830) * lu(k,1797) + lu(k,1834) = lu(k,1834) - lu(k,831) * lu(k,1797) + lu(k,1896) = lu(k,1896) - lu(k,825) * lu(k,1884) + lu(k,1917) = lu(k,1917) - lu(k,826) * lu(k,1884) + lu(k,1919) = lu(k,1919) - lu(k,827) * lu(k,1884) + lu(k,1922) = lu(k,1922) - lu(k,828) * lu(k,1884) + lu(k,1923) = lu(k,1923) - lu(k,829) * lu(k,1884) + lu(k,1924) = lu(k,1924) - lu(k,830) * lu(k,1884) + lu(k,1926) = lu(k,1926) - lu(k,831) * lu(k,1884) + lu(k,1991) = - lu(k,825) * lu(k,1987) + lu(k,2000) = lu(k,2000) - lu(k,826) * lu(k,1987) + lu(k,2002) = lu(k,2002) - lu(k,827) * lu(k,1987) + lu(k,2005) = lu(k,2005) - lu(k,828) * lu(k,1987) + lu(k,2006) = lu(k,2006) - lu(k,829) * lu(k,1987) + lu(k,2007) = lu(k,2007) - lu(k,830) * lu(k,1987) + lu(k,2009) = lu(k,2009) - lu(k,831) * lu(k,1987) + lu(k,2086) = lu(k,2086) - lu(k,825) * lu(k,2075) + lu(k,2107) = lu(k,2107) - lu(k,826) * lu(k,2075) + lu(k,2109) = lu(k,2109) - lu(k,827) * lu(k,2075) + lu(k,2112) = lu(k,2112) - lu(k,828) * lu(k,2075) + lu(k,2113) = lu(k,2113) - lu(k,829) * lu(k,2075) + lu(k,2114) = lu(k,2114) - lu(k,830) * lu(k,2075) + lu(k,2116) = lu(k,2116) - lu(k,831) * lu(k,2075) + lu(k,835) = 1._r8 / lu(k,835) + lu(k,836) = lu(k,836) * lu(k,835) + lu(k,837) = lu(k,837) * lu(k,835) + lu(k,838) = lu(k,838) * lu(k,835) + lu(k,839) = lu(k,839) * lu(k,835) + lu(k,840) = lu(k,840) * lu(k,835) + lu(k,841) = lu(k,841) * lu(k,835) + lu(k,842) = lu(k,842) * lu(k,835) + lu(k,843) = lu(k,843) * lu(k,835) + lu(k,844) = lu(k,844) * lu(k,835) + lu(k,845) = lu(k,845) * lu(k,835) + lu(k,846) = lu(k,846) * lu(k,835) + lu(k,847) = lu(k,847) * lu(k,835) + lu(k,848) = lu(k,848) * lu(k,835) + lu(k,849) = lu(k,849) * lu(k,835) + lu(k,850) = lu(k,850) * lu(k,835) + lu(k,1658) = lu(k,1658) - lu(k,836) * lu(k,1649) + lu(k,1663) = lu(k,1663) - lu(k,837) * lu(k,1649) + lu(k,1670) = lu(k,1670) - lu(k,838) * lu(k,1649) + lu(k,1675) = - lu(k,839) * lu(k,1649) + lu(k,1676) = lu(k,1676) - lu(k,840) * lu(k,1649) + lu(k,1679) = lu(k,1679) - lu(k,841) * lu(k,1649) + lu(k,1680) = lu(k,1680) - lu(k,842) * lu(k,1649) + lu(k,1682) = lu(k,1682) - lu(k,843) * lu(k,1649) + lu(k,1684) = lu(k,1684) - lu(k,844) * lu(k,1649) + lu(k,1690) = lu(k,1690) - lu(k,845) * lu(k,1649) + lu(k,1692) = lu(k,1692) - lu(k,846) * lu(k,1649) + lu(k,1694) = lu(k,1694) - lu(k,847) * lu(k,1649) + lu(k,1695) = lu(k,1695) - lu(k,848) * lu(k,1649) + lu(k,1699) = lu(k,1699) - lu(k,849) * lu(k,1649) + lu(k,1703) = lu(k,1703) - lu(k,850) * lu(k,1649) + lu(k,1742) = - lu(k,836) * lu(k,1738) + lu(k,1747) = lu(k,1747) - lu(k,837) * lu(k,1738) + lu(k,1754) = lu(k,1754) - lu(k,838) * lu(k,1738) + lu(k,1759) = lu(k,1759) - lu(k,839) * lu(k,1738) + lu(k,1760) = lu(k,1760) - lu(k,840) * lu(k,1738) + lu(k,1763) = lu(k,1763) - lu(k,841) * lu(k,1738) + lu(k,1764) = lu(k,1764) - lu(k,842) * lu(k,1738) + lu(k,1766) = lu(k,1766) - lu(k,843) * lu(k,1738) + lu(k,1768) = lu(k,1768) - lu(k,844) * lu(k,1738) + lu(k,1773) = lu(k,1773) - lu(k,845) * lu(k,1738) + lu(k,1775) = lu(k,1775) - lu(k,846) * lu(k,1738) + lu(k,1777) = lu(k,1777) - lu(k,847) * lu(k,1738) + lu(k,1778) = - lu(k,848) * lu(k,1738) + lu(k,1782) = lu(k,1782) - lu(k,849) * lu(k,1738) + lu(k,1786) = - lu(k,850) * lu(k,1738) + lu(k,2218) = lu(k,2218) - lu(k,836) * lu(k,2214) + lu(k,2223) = lu(k,2223) - lu(k,837) * lu(k,2214) + lu(k,2229) = lu(k,2229) - lu(k,838) * lu(k,2214) + lu(k,2232) = - lu(k,839) * lu(k,2214) + lu(k,2233) = lu(k,2233) - lu(k,840) * lu(k,2214) + lu(k,2236) = - lu(k,841) * lu(k,2214) + lu(k,2237) = - lu(k,842) * lu(k,2214) + lu(k,2239) = lu(k,2239) - lu(k,843) * lu(k,2214) + lu(k,2241) = lu(k,2241) - lu(k,844) * lu(k,2214) + lu(k,2246) = lu(k,2246) - lu(k,845) * lu(k,2214) + lu(k,2248) = lu(k,2248) - lu(k,846) * lu(k,2214) + lu(k,2250) = lu(k,2250) - lu(k,847) * lu(k,2214) + lu(k,2251) = lu(k,2251) - lu(k,848) * lu(k,2214) + lu(k,2255) = lu(k,2255) - lu(k,849) * lu(k,2214) + lu(k,2259) = lu(k,2259) - lu(k,850) * lu(k,2214) + lu(k,852) = 1._r8 / lu(k,852) + lu(k,853) = lu(k,853) * lu(k,852) + lu(k,854) = lu(k,854) * lu(k,852) + lu(k,855) = lu(k,855) * lu(k,852) + lu(k,856) = lu(k,856) * lu(k,852) + lu(k,857) = lu(k,857) * lu(k,852) + lu(k,1233) = lu(k,1233) - lu(k,853) * lu(k,1232) + lu(k,1236) = lu(k,1236) - lu(k,854) * lu(k,1232) + lu(k,1241) = - lu(k,855) * lu(k,1232) + lu(k,1243) = lu(k,1243) - lu(k,856) * lu(k,1232) + lu(k,1245) = - lu(k,857) * lu(k,1232) + lu(k,1678) = lu(k,1678) - lu(k,853) * lu(k,1650) + lu(k,1692) = lu(k,1692) - lu(k,854) * lu(k,1650) + lu(k,1699) = lu(k,1699) - lu(k,855) * lu(k,1650) + lu(k,1702) = lu(k,1702) - lu(k,856) * lu(k,1650) + lu(k,1704) = lu(k,1704) - lu(k,857) * lu(k,1650) + lu(k,1712) = lu(k,1712) - lu(k,853) * lu(k,1710) + lu(k,1718) = lu(k,1718) - lu(k,854) * lu(k,1710) + lu(k,1725) = lu(k,1725) - lu(k,855) * lu(k,1710) + lu(k,1728) = lu(k,1728) - lu(k,856) * lu(k,1710) + lu(k,1730) = lu(k,1730) - lu(k,857) * lu(k,1710) + lu(k,1762) = - lu(k,853) * lu(k,1739) + lu(k,1775) = lu(k,1775) - lu(k,854) * lu(k,1739) + lu(k,1782) = lu(k,1782) - lu(k,855) * lu(k,1739) + lu(k,1785) = lu(k,1785) - lu(k,856) * lu(k,1739) + lu(k,1787) = - lu(k,857) * lu(k,1739) + lu(k,1954) = lu(k,1954) - lu(k,853) * lu(k,1947) + lu(k,1963) = lu(k,1963) - lu(k,854) * lu(k,1947) + lu(k,1970) = lu(k,1970) - lu(k,855) * lu(k,1947) + lu(k,1973) = lu(k,1973) - lu(k,856) * lu(k,1947) + lu(k,1975) = lu(k,1975) - lu(k,857) * lu(k,1947) + lu(k,2150) = lu(k,2150) - lu(k,853) * lu(k,2149) + lu(k,2156) = lu(k,2156) - lu(k,854) * lu(k,2149) + lu(k,2163) = lu(k,2163) - lu(k,855) * lu(k,2149) + lu(k,2166) = lu(k,2166) - lu(k,856) * lu(k,2149) + lu(k,2168) = lu(k,2168) - lu(k,857) * lu(k,2149) + lu(k,2179) = lu(k,2179) - lu(k,853) * lu(k,2176) + lu(k,2187) = lu(k,2187) - lu(k,854) * lu(k,2176) + lu(k,2194) = lu(k,2194) - lu(k,855) * lu(k,2176) + lu(k,2197) = lu(k,2197) - lu(k,856) * lu(k,2176) + lu(k,2199) = lu(k,2199) - lu(k,857) * lu(k,2176) + lu(k,2235) = lu(k,2235) - lu(k,853) * lu(k,2215) + lu(k,2248) = lu(k,2248) - lu(k,854) * lu(k,2215) + lu(k,2255) = lu(k,2255) - lu(k,855) * lu(k,2215) + lu(k,2258) = lu(k,2258) - lu(k,856) * lu(k,2215) + lu(k,2260) = lu(k,2260) - lu(k,857) * lu(k,2215) + lu(k,2266) = - lu(k,853) * lu(k,2264) + lu(k,2274) = lu(k,2274) - lu(k,854) * lu(k,2264) + lu(k,2281) = - lu(k,855) * lu(k,2264) + lu(k,2284) = lu(k,2284) - lu(k,856) * lu(k,2264) + lu(k,2286) = lu(k,2286) - lu(k,857) * lu(k,2264) + end do + end subroutine lu_fac18 + subroutine lu_fac19( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,858) = 1._r8 / lu(k,858) + lu(k,859) = lu(k,859) * lu(k,858) + lu(k,860) = lu(k,860) * lu(k,858) + lu(k,861) = lu(k,861) * lu(k,858) + lu(k,862) = lu(k,862) * lu(k,858) + lu(k,863) = lu(k,863) * lu(k,858) + lu(k,1029) = - lu(k,859) * lu(k,1023) + lu(k,1030) = - lu(k,860) * lu(k,1023) + lu(k,1032) = lu(k,1032) - lu(k,861) * lu(k,1023) + lu(k,1033) = lu(k,1033) - lu(k,862) * lu(k,1023) + lu(k,1037) = lu(k,1037) - lu(k,863) * lu(k,1023) + lu(k,1076) = - lu(k,859) * lu(k,1071) + lu(k,1077) = - lu(k,860) * lu(k,1071) + lu(k,1079) = - lu(k,861) * lu(k,1071) + lu(k,1080) = lu(k,1080) - lu(k,862) * lu(k,1071) + lu(k,1083) = lu(k,1083) - lu(k,863) * lu(k,1071) + lu(k,1196) = - lu(k,859) * lu(k,1189) + lu(k,1198) = lu(k,1198) - lu(k,860) * lu(k,1189) + lu(k,1200) = lu(k,1200) - lu(k,861) * lu(k,1189) + lu(k,1201) = lu(k,1201) - lu(k,862) * lu(k,1189) + lu(k,1205) = lu(k,1205) - lu(k,863) * lu(k,1189) + lu(k,1288) = lu(k,1288) - lu(k,859) * lu(k,1279) + lu(k,1293) = lu(k,1293) - lu(k,860) * lu(k,1279) + lu(k,1295) = lu(k,1295) - lu(k,861) * lu(k,1279) + lu(k,1296) = lu(k,1296) - lu(k,862) * lu(k,1279) + lu(k,1300) = lu(k,1300) - lu(k,863) * lu(k,1279) + lu(k,1677) = lu(k,1677) - lu(k,859) * lu(k,1651) + lu(k,1684) = lu(k,1684) - lu(k,860) * lu(k,1651) + lu(k,1690) = lu(k,1690) - lu(k,861) * lu(k,1651) + lu(k,1692) = lu(k,1692) - lu(k,862) * lu(k,1651) + lu(k,1697) = lu(k,1697) - lu(k,863) * lu(k,1651) + lu(k,1761) = lu(k,1761) - lu(k,859) * lu(k,1740) + lu(k,1768) = lu(k,1768) - lu(k,860) * lu(k,1740) + lu(k,1773) = lu(k,1773) - lu(k,861) * lu(k,1740) + lu(k,1775) = lu(k,1775) - lu(k,862) * lu(k,1740) + lu(k,1780) = lu(k,1780) - lu(k,863) * lu(k,1740) + lu(k,1815) = lu(k,1815) - lu(k,859) * lu(k,1798) + lu(k,1821) = lu(k,1821) - lu(k,860) * lu(k,1798) + lu(k,1825) = lu(k,1825) - lu(k,861) * lu(k,1798) + lu(k,1827) = lu(k,1827) - lu(k,862) * lu(k,1798) + lu(k,1832) = lu(k,1832) - lu(k,863) * lu(k,1798) + lu(k,1906) = lu(k,1906) - lu(k,859) * lu(k,1885) + lu(k,1912) = lu(k,1912) - lu(k,860) * lu(k,1885) + lu(k,1917) = lu(k,1917) - lu(k,861) * lu(k,1885) + lu(k,1919) = lu(k,1919) - lu(k,862) * lu(k,1885) + lu(k,1924) = lu(k,1924) - lu(k,863) * lu(k,1885) + lu(k,2095) = lu(k,2095) - lu(k,859) * lu(k,2076) + lu(k,2101) = lu(k,2101) - lu(k,860) * lu(k,2076) + lu(k,2107) = lu(k,2107) - lu(k,861) * lu(k,2076) + lu(k,2109) = lu(k,2109) - lu(k,862) * lu(k,2076) + lu(k,2114) = lu(k,2114) - lu(k,863) * lu(k,2076) + lu(k,865) = 1._r8 / lu(k,865) + lu(k,866) = lu(k,866) * lu(k,865) + lu(k,867) = lu(k,867) * lu(k,865) + lu(k,868) = lu(k,868) * lu(k,865) + lu(k,869) = lu(k,869) * lu(k,865) + lu(k,870) = lu(k,870) * lu(k,865) + lu(k,871) = lu(k,871) * lu(k,865) + lu(k,872) = lu(k,872) * lu(k,865) + lu(k,873) = lu(k,873) * lu(k,865) + lu(k,1402) = lu(k,1402) - lu(k,866) * lu(k,1401) + lu(k,1403) = - lu(k,867) * lu(k,1401) + lu(k,1404) = lu(k,1404) - lu(k,868) * lu(k,1401) + lu(k,1405) = - lu(k,869) * lu(k,1401) + lu(k,1407) = lu(k,1407) - lu(k,870) * lu(k,1401) + lu(k,1408) = - lu(k,871) * lu(k,1401) + lu(k,1409) = - lu(k,872) * lu(k,1401) + lu(k,1413) = lu(k,1413) - lu(k,873) * lu(k,1401) + lu(k,1430) = lu(k,1430) - lu(k,866) * lu(k,1428) + lu(k,1431) = lu(k,1431) - lu(k,867) * lu(k,1428) + lu(k,1432) = lu(k,1432) - lu(k,868) * lu(k,1428) + lu(k,1433) = - lu(k,869) * lu(k,1428) + lu(k,1436) = lu(k,1436) - lu(k,870) * lu(k,1428) + lu(k,1437) = - lu(k,871) * lu(k,1428) + lu(k,1438) = lu(k,1438) - lu(k,872) * lu(k,1428) + lu(k,1443) = lu(k,1443) - lu(k,873) * lu(k,1428) + lu(k,1461) = - lu(k,866) * lu(k,1460) + lu(k,1462) = - lu(k,867) * lu(k,1460) + lu(k,1463) = lu(k,1463) - lu(k,868) * lu(k,1460) + lu(k,1464) = lu(k,1464) - lu(k,869) * lu(k,1460) + lu(k,1467) = lu(k,1467) - lu(k,870) * lu(k,1460) + lu(k,1468) = lu(k,1468) - lu(k,871) * lu(k,1460) + lu(k,1469) = - lu(k,872) * lu(k,1460) + lu(k,1476) = lu(k,1476) - lu(k,873) * lu(k,1460) + lu(k,1521) = lu(k,1521) - lu(k,866) * lu(k,1520) + lu(k,1523) = lu(k,1523) - lu(k,867) * lu(k,1520) + lu(k,1524) = lu(k,1524) - lu(k,868) * lu(k,1520) + lu(k,1525) = - lu(k,869) * lu(k,1520) + lu(k,1528) = lu(k,1528) - lu(k,870) * lu(k,1520) + lu(k,1530) = - lu(k,871) * lu(k,1520) + lu(k,1531) = lu(k,1531) - lu(k,872) * lu(k,1520) + lu(k,1540) = lu(k,1540) - lu(k,873) * lu(k,1520) + lu(k,1685) = lu(k,1685) - lu(k,866) * lu(k,1652) + lu(k,1687) = lu(k,1687) - lu(k,867) * lu(k,1652) + lu(k,1688) = lu(k,1688) - lu(k,868) * lu(k,1652) + lu(k,1689) = lu(k,1689) - lu(k,869) * lu(k,1652) + lu(k,1692) = lu(k,1692) - lu(k,870) * lu(k,1652) + lu(k,1694) = lu(k,1694) - lu(k,871) * lu(k,1652) + lu(k,1695) = lu(k,1695) - lu(k,872) * lu(k,1652) + lu(k,1704) = lu(k,1704) - lu(k,873) * lu(k,1652) + lu(k,2267) = lu(k,2267) - lu(k,866) * lu(k,2265) + lu(k,2269) = - lu(k,867) * lu(k,2265) + lu(k,2270) = lu(k,2270) - lu(k,868) * lu(k,2265) + lu(k,2271) = - lu(k,869) * lu(k,2265) + lu(k,2274) = lu(k,2274) - lu(k,870) * lu(k,2265) + lu(k,2276) = - lu(k,871) * lu(k,2265) + lu(k,2277) = - lu(k,872) * lu(k,2265) + lu(k,2286) = lu(k,2286) - lu(k,873) * lu(k,2265) + lu(k,874) = 1._r8 / lu(k,874) + lu(k,875) = lu(k,875) * lu(k,874) + lu(k,876) = lu(k,876) * lu(k,874) + lu(k,877) = lu(k,877) * lu(k,874) + lu(k,878) = lu(k,878) * lu(k,874) + lu(k,879) = lu(k,879) * lu(k,874) + lu(k,880) = lu(k,880) * lu(k,874) + lu(k,881) = lu(k,881) * lu(k,874) + lu(k,882) = lu(k,882) * lu(k,874) + lu(k,1073) = lu(k,1073) - lu(k,875) * lu(k,1072) + lu(k,1075) = lu(k,1075) - lu(k,876) * lu(k,1072) + lu(k,1076) = lu(k,1076) - lu(k,877) * lu(k,1072) + lu(k,1080) = lu(k,1080) - lu(k,878) * lu(k,1072) + lu(k,1081) = - lu(k,879) * lu(k,1072) + lu(k,1082) = - lu(k,880) * lu(k,1072) + lu(k,1083) = lu(k,1083) - lu(k,881) * lu(k,1072) + lu(k,1084) = lu(k,1084) - lu(k,882) * lu(k,1072) + lu(k,1281) = lu(k,1281) - lu(k,875) * lu(k,1280) + lu(k,1283) = lu(k,1283) - lu(k,876) * lu(k,1280) + lu(k,1288) = lu(k,1288) - lu(k,877) * lu(k,1280) + lu(k,1296) = lu(k,1296) - lu(k,878) * lu(k,1280) + lu(k,1298) = lu(k,1298) - lu(k,879) * lu(k,1280) + lu(k,1299) = lu(k,1299) - lu(k,880) * lu(k,1280) + lu(k,1300) = lu(k,1300) - lu(k,881) * lu(k,1280) + lu(k,1301) = lu(k,1301) - lu(k,882) * lu(k,1280) + lu(k,1661) = lu(k,1661) - lu(k,875) * lu(k,1653) + lu(k,1670) = lu(k,1670) - lu(k,876) * lu(k,1653) + lu(k,1677) = lu(k,1677) - lu(k,877) * lu(k,1653) + lu(k,1692) = lu(k,1692) - lu(k,878) * lu(k,1653) + lu(k,1695) = lu(k,1695) - lu(k,879) * lu(k,1653) + lu(k,1696) = lu(k,1696) - lu(k,880) * lu(k,1653) + lu(k,1697) = lu(k,1697) - lu(k,881) * lu(k,1653) + lu(k,1699) = lu(k,1699) - lu(k,882) * lu(k,1653) + lu(k,1892) = lu(k,1892) - lu(k,875) * lu(k,1886) + lu(k,1899) = lu(k,1899) - lu(k,876) * lu(k,1886) + lu(k,1906) = lu(k,1906) - lu(k,877) * lu(k,1886) + lu(k,1919) = lu(k,1919) - lu(k,878) * lu(k,1886) + lu(k,1922) = lu(k,1922) - lu(k,879) * lu(k,1886) + lu(k,1923) = lu(k,1923) - lu(k,880) * lu(k,1886) + lu(k,1924) = lu(k,1924) - lu(k,881) * lu(k,1886) + lu(k,1926) = lu(k,1926) - lu(k,882) * lu(k,1886) + lu(k,1950) = lu(k,1950) - lu(k,875) * lu(k,1948) + lu(k,1951) = lu(k,1951) - lu(k,876) * lu(k,1948) + lu(k,1953) = lu(k,1953) - lu(k,877) * lu(k,1948) + lu(k,1963) = lu(k,1963) - lu(k,878) * lu(k,1948) + lu(k,1966) = lu(k,1966) - lu(k,879) * lu(k,1948) + lu(k,1967) = lu(k,1967) - lu(k,880) * lu(k,1948) + lu(k,1968) = lu(k,1968) - lu(k,881) * lu(k,1948) + lu(k,1970) = lu(k,1970) - lu(k,882) * lu(k,1948) + lu(k,2083) = lu(k,2083) - lu(k,875) * lu(k,2077) + lu(k,2089) = lu(k,2089) - lu(k,876) * lu(k,2077) + lu(k,2095) = lu(k,2095) - lu(k,877) * lu(k,2077) + lu(k,2109) = lu(k,2109) - lu(k,878) * lu(k,2077) + lu(k,2112) = lu(k,2112) - lu(k,879) * lu(k,2077) + lu(k,2113) = lu(k,2113) - lu(k,880) * lu(k,2077) + lu(k,2114) = lu(k,2114) - lu(k,881) * lu(k,2077) + lu(k,2116) = lu(k,2116) - lu(k,882) * lu(k,2077) + lu(k,888) = 1._r8 / lu(k,888) + lu(k,889) = lu(k,889) * lu(k,888) + lu(k,890) = lu(k,890) * lu(k,888) + lu(k,891) = lu(k,891) * lu(k,888) + lu(k,892) = lu(k,892) * lu(k,888) + lu(k,893) = lu(k,893) * lu(k,888) + lu(k,894) = lu(k,894) * lu(k,888) + lu(k,895) = lu(k,895) * lu(k,888) + lu(k,896) = lu(k,896) * lu(k,888) + lu(k,897) = lu(k,897) * lu(k,888) + lu(k,947) = lu(k,947) - lu(k,889) * lu(k,945) + lu(k,954) = - lu(k,890) * lu(k,945) + lu(k,958) = lu(k,958) - lu(k,891) * lu(k,945) + lu(k,960) = lu(k,960) - lu(k,892) * lu(k,945) + lu(k,961) = lu(k,961) - lu(k,893) * lu(k,945) + lu(k,963) = - lu(k,894) * lu(k,945) + lu(k,964) = - lu(k,895) * lu(k,945) + lu(k,965) = - lu(k,896) * lu(k,945) + lu(k,966) = lu(k,966) - lu(k,897) * lu(k,945) + lu(k,996) = lu(k,996) - lu(k,889) * lu(k,994) + lu(k,1003) = - lu(k,890) * lu(k,994) + lu(k,1008) = lu(k,1008) - lu(k,891) * lu(k,994) + lu(k,1010) = lu(k,1010) - lu(k,892) * lu(k,994) + lu(k,1011) = lu(k,1011) - lu(k,893) * lu(k,994) + lu(k,1013) = - lu(k,894) * lu(k,994) + lu(k,1014) = - lu(k,895) * lu(k,994) + lu(k,1015) = - lu(k,896) * lu(k,994) + lu(k,1016) = lu(k,1016) - lu(k,897) * lu(k,994) + lu(k,1657) = lu(k,1657) - lu(k,889) * lu(k,1654) + lu(k,1667) = lu(k,1667) - lu(k,890) * lu(k,1654) + lu(k,1684) = lu(k,1684) - lu(k,891) * lu(k,1654) + lu(k,1690) = lu(k,1690) - lu(k,892) * lu(k,1654) + lu(k,1692) = lu(k,1692) - lu(k,893) * lu(k,1654) + lu(k,1695) = lu(k,1695) - lu(k,894) * lu(k,1654) + lu(k,1696) = lu(k,1696) - lu(k,895) * lu(k,1654) + lu(k,1697) = lu(k,1697) - lu(k,896) * lu(k,1654) + lu(k,1699) = lu(k,1699) - lu(k,897) * lu(k,1654) + lu(k,1889) = lu(k,1889) - lu(k,889) * lu(k,1887) + lu(k,1896) = lu(k,1896) - lu(k,890) * lu(k,1887) + lu(k,1912) = lu(k,1912) - lu(k,891) * lu(k,1887) + lu(k,1917) = lu(k,1917) - lu(k,892) * lu(k,1887) + lu(k,1919) = lu(k,1919) - lu(k,893) * lu(k,1887) + lu(k,1922) = lu(k,1922) - lu(k,894) * lu(k,1887) + lu(k,1923) = lu(k,1923) - lu(k,895) * lu(k,1887) + lu(k,1924) = lu(k,1924) - lu(k,896) * lu(k,1887) + lu(k,1926) = lu(k,1926) - lu(k,897) * lu(k,1887) + lu(k,2080) = lu(k,2080) - lu(k,889) * lu(k,2078) + lu(k,2086) = lu(k,2086) - lu(k,890) * lu(k,2078) + lu(k,2101) = lu(k,2101) - lu(k,891) * lu(k,2078) + lu(k,2107) = lu(k,2107) - lu(k,892) * lu(k,2078) + lu(k,2109) = lu(k,2109) - lu(k,893) * lu(k,2078) + lu(k,2112) = lu(k,2112) - lu(k,894) * lu(k,2078) + lu(k,2113) = lu(k,2113) - lu(k,895) * lu(k,2078) + lu(k,2114) = lu(k,2114) - lu(k,896) * lu(k,2078) + lu(k,2116) = lu(k,2116) - lu(k,897) * lu(k,2078) + lu(k,2217) = lu(k,2217) - lu(k,889) * lu(k,2216) + lu(k,2226) = lu(k,2226) - lu(k,890) * lu(k,2216) + lu(k,2241) = lu(k,2241) - lu(k,891) * lu(k,2216) + lu(k,2246) = lu(k,2246) - lu(k,892) * lu(k,2216) + lu(k,2248) = lu(k,2248) - lu(k,893) * lu(k,2216) + lu(k,2251) = lu(k,2251) - lu(k,894) * lu(k,2216) + lu(k,2252) = lu(k,2252) - lu(k,895) * lu(k,2216) + lu(k,2253) = lu(k,2253) - lu(k,896) * lu(k,2216) + lu(k,2255) = lu(k,2255) - lu(k,897) * lu(k,2216) + end do + end subroutine lu_fac19 + subroutine lu_fac20( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,900) = 1._r8 / lu(k,900) + lu(k,901) = lu(k,901) * lu(k,900) + lu(k,902) = lu(k,902) * lu(k,900) + lu(k,903) = lu(k,903) * lu(k,900) + lu(k,904) = lu(k,904) * lu(k,900) + lu(k,905) = lu(k,905) * lu(k,900) + lu(k,906) = lu(k,906) * lu(k,900) + lu(k,907) = lu(k,907) * lu(k,900) + lu(k,908) = lu(k,908) * lu(k,900) + lu(k,909) = lu(k,909) * lu(k,900) + lu(k,1689) = lu(k,1689) - lu(k,901) * lu(k,1655) + lu(k,1692) = lu(k,1692) - lu(k,902) * lu(k,1655) + lu(k,1693) = lu(k,1693) - lu(k,903) * lu(k,1655) + lu(k,1694) = lu(k,1694) - lu(k,904) * lu(k,1655) + lu(k,1697) = lu(k,1697) - lu(k,905) * lu(k,1655) + lu(k,1698) = lu(k,1698) - lu(k,906) * lu(k,1655) + lu(k,1700) = lu(k,1700) - lu(k,907) * lu(k,1655) + lu(k,1702) = lu(k,1702) - lu(k,908) * lu(k,1655) + lu(k,1704) = lu(k,1704) - lu(k,909) * lu(k,1655) + lu(k,1715) = - lu(k,901) * lu(k,1711) + lu(k,1718) = lu(k,1718) - lu(k,902) * lu(k,1711) + lu(k,1719) = lu(k,1719) - lu(k,903) * lu(k,1711) + lu(k,1720) = - lu(k,904) * lu(k,1711) + lu(k,1723) = lu(k,1723) - lu(k,905) * lu(k,1711) + lu(k,1724) = lu(k,1724) - lu(k,906) * lu(k,1711) + lu(k,1726) = lu(k,1726) - lu(k,907) * lu(k,1711) + lu(k,1728) = lu(k,1728) - lu(k,908) * lu(k,1711) + lu(k,1730) = lu(k,1730) - lu(k,909) * lu(k,1711) + lu(k,1960) = lu(k,1960) - lu(k,901) * lu(k,1949) + lu(k,1963) = lu(k,1963) - lu(k,902) * lu(k,1949) + lu(k,1964) = lu(k,1964) - lu(k,903) * lu(k,1949) + lu(k,1965) = lu(k,1965) - lu(k,904) * lu(k,1949) + lu(k,1968) = lu(k,1968) - lu(k,905) * lu(k,1949) + lu(k,1969) = lu(k,1969) - lu(k,906) * lu(k,1949) + lu(k,1971) = lu(k,1971) - lu(k,907) * lu(k,1949) + lu(k,1973) = lu(k,1973) - lu(k,908) * lu(k,1949) + lu(k,1975) = lu(k,1975) - lu(k,909) * lu(k,1949) + lu(k,1999) = - lu(k,901) * lu(k,1988) + lu(k,2002) = lu(k,2002) - lu(k,902) * lu(k,1988) + lu(k,2003) = lu(k,2003) - lu(k,903) * lu(k,1988) + lu(k,2004) = lu(k,2004) - lu(k,904) * lu(k,1988) + lu(k,2007) = lu(k,2007) - lu(k,905) * lu(k,1988) + lu(k,2008) = lu(k,2008) - lu(k,906) * lu(k,1988) + lu(k,2010) = lu(k,2010) - lu(k,907) * lu(k,1988) + lu(k,2012) = lu(k,2012) - lu(k,908) * lu(k,1988) + lu(k,2014) = lu(k,2014) - lu(k,909) * lu(k,1988) + lu(k,2129) = lu(k,2129) - lu(k,901) * lu(k,2126) + lu(k,2132) = lu(k,2132) - lu(k,902) * lu(k,2126) + lu(k,2133) = lu(k,2133) - lu(k,903) * lu(k,2126) + lu(k,2134) = - lu(k,904) * lu(k,2126) + lu(k,2137) = - lu(k,905) * lu(k,2126) + lu(k,2138) = lu(k,2138) - lu(k,906) * lu(k,2126) + lu(k,2140) = lu(k,2140) - lu(k,907) * lu(k,2126) + lu(k,2142) = lu(k,2142) - lu(k,908) * lu(k,2126) + lu(k,2144) = lu(k,2144) - lu(k,909) * lu(k,2126) + lu(k,2184) = lu(k,2184) - lu(k,901) * lu(k,2177) + lu(k,2187) = lu(k,2187) - lu(k,902) * lu(k,2177) + lu(k,2188) = lu(k,2188) - lu(k,903) * lu(k,2177) + lu(k,2189) = lu(k,2189) - lu(k,904) * lu(k,2177) + lu(k,2192) = lu(k,2192) - lu(k,905) * lu(k,2177) + lu(k,2193) = lu(k,2193) - lu(k,906) * lu(k,2177) + lu(k,2195) = lu(k,2195) - lu(k,907) * lu(k,2177) + lu(k,2197) = lu(k,2197) - lu(k,908) * lu(k,2177) + lu(k,2199) = lu(k,2199) - lu(k,909) * lu(k,2177) + lu(k,913) = 1._r8 / lu(k,913) + lu(k,914) = lu(k,914) * lu(k,913) + lu(k,915) = lu(k,915) * lu(k,913) + lu(k,916) = lu(k,916) * lu(k,913) + lu(k,917) = lu(k,917) * lu(k,913) + lu(k,918) = lu(k,918) * lu(k,913) + lu(k,919) = lu(k,919) * lu(k,913) + lu(k,920) = lu(k,920) * lu(k,913) + lu(k,921) = lu(k,921) * lu(k,913) + lu(k,922) = lu(k,922) * lu(k,913) + lu(k,947) = lu(k,947) - lu(k,914) * lu(k,946) + lu(k,950) = lu(k,950) - lu(k,915) * lu(k,946) + lu(k,959) = - lu(k,916) * lu(k,946) + lu(k,960) = lu(k,960) - lu(k,917) * lu(k,946) + lu(k,961) = lu(k,961) - lu(k,918) * lu(k,946) + lu(k,963) = lu(k,963) - lu(k,919) * lu(k,946) + lu(k,964) = lu(k,964) - lu(k,920) * lu(k,946) + lu(k,965) = lu(k,965) - lu(k,921) * lu(k,946) + lu(k,966) = lu(k,966) - lu(k,922) * lu(k,946) + lu(k,996) = lu(k,996) - lu(k,914) * lu(k,995) + lu(k,998) = lu(k,998) - lu(k,915) * lu(k,995) + lu(k,1009) = - lu(k,916) * lu(k,995) + lu(k,1010) = lu(k,1010) - lu(k,917) * lu(k,995) + lu(k,1011) = lu(k,1011) - lu(k,918) * lu(k,995) + lu(k,1013) = lu(k,1013) - lu(k,919) * lu(k,995) + lu(k,1014) = lu(k,1014) - lu(k,920) * lu(k,995) + lu(k,1015) = lu(k,1015) - lu(k,921) * lu(k,995) + lu(k,1016) = lu(k,1016) - lu(k,922) * lu(k,995) + lu(k,1657) = lu(k,1657) - lu(k,914) * lu(k,1656) + lu(k,1660) = lu(k,1660) - lu(k,915) * lu(k,1656) + lu(k,1689) = lu(k,1689) - lu(k,916) * lu(k,1656) + lu(k,1690) = lu(k,1690) - lu(k,917) * lu(k,1656) + lu(k,1692) = lu(k,1692) - lu(k,918) * lu(k,1656) + lu(k,1695) = lu(k,1695) - lu(k,919) * lu(k,1656) + lu(k,1696) = lu(k,1696) - lu(k,920) * lu(k,1656) + lu(k,1697) = lu(k,1697) - lu(k,921) * lu(k,1656) + lu(k,1699) = lu(k,1699) - lu(k,922) * lu(k,1656) + lu(k,1800) = lu(k,1800) - lu(k,914) * lu(k,1799) + lu(k,1801) = lu(k,1801) - lu(k,915) * lu(k,1799) + lu(k,1824) = lu(k,1824) - lu(k,916) * lu(k,1799) + lu(k,1825) = lu(k,1825) - lu(k,917) * lu(k,1799) + lu(k,1827) = lu(k,1827) - lu(k,918) * lu(k,1799) + lu(k,1830) = lu(k,1830) - lu(k,919) * lu(k,1799) + lu(k,1831) = lu(k,1831) - lu(k,920) * lu(k,1799) + lu(k,1832) = lu(k,1832) - lu(k,921) * lu(k,1799) + lu(k,1834) = lu(k,1834) - lu(k,922) * lu(k,1799) + lu(k,1889) = lu(k,1889) - lu(k,914) * lu(k,1888) + lu(k,1891) = lu(k,1891) - lu(k,915) * lu(k,1888) + lu(k,1916) = lu(k,1916) - lu(k,916) * lu(k,1888) + lu(k,1917) = lu(k,1917) - lu(k,917) * lu(k,1888) + lu(k,1919) = lu(k,1919) - lu(k,918) * lu(k,1888) + lu(k,1922) = lu(k,1922) - lu(k,919) * lu(k,1888) + lu(k,1923) = lu(k,1923) - lu(k,920) * lu(k,1888) + lu(k,1924) = lu(k,1924) - lu(k,921) * lu(k,1888) + lu(k,1926) = lu(k,1926) - lu(k,922) * lu(k,1888) + lu(k,2080) = lu(k,2080) - lu(k,914) * lu(k,2079) + lu(k,2082) = lu(k,2082) - lu(k,915) * lu(k,2079) + lu(k,2106) = lu(k,2106) - lu(k,916) * lu(k,2079) + lu(k,2107) = lu(k,2107) - lu(k,917) * lu(k,2079) + lu(k,2109) = lu(k,2109) - lu(k,918) * lu(k,2079) + lu(k,2112) = lu(k,2112) - lu(k,919) * lu(k,2079) + lu(k,2113) = lu(k,2113) - lu(k,920) * lu(k,2079) + lu(k,2114) = lu(k,2114) - lu(k,921) * lu(k,2079) + lu(k,2116) = lu(k,2116) - lu(k,922) * lu(k,2079) + lu(k,923) = 1._r8 / lu(k,923) + lu(k,924) = lu(k,924) * lu(k,923) + lu(k,925) = lu(k,925) * lu(k,923) + lu(k,926) = lu(k,926) * lu(k,923) + lu(k,927) = lu(k,927) * lu(k,923) + lu(k,928) = lu(k,928) * lu(k,923) + lu(k,956) = lu(k,956) - lu(k,924) * lu(k,947) + lu(k,958) = lu(k,958) - lu(k,925) * lu(k,947) + lu(k,961) = lu(k,961) - lu(k,926) * lu(k,947) + lu(k,963) = lu(k,963) - lu(k,927) * lu(k,947) + lu(k,969) = - lu(k,928) * lu(k,947) + lu(k,1006) = lu(k,1006) - lu(k,924) * lu(k,996) + lu(k,1008) = lu(k,1008) - lu(k,925) * lu(k,996) + lu(k,1011) = lu(k,1011) - lu(k,926) * lu(k,996) + lu(k,1013) = lu(k,1013) - lu(k,927) * lu(k,996) + lu(k,1019) = - lu(k,928) * lu(k,996) + lu(k,1062) = lu(k,1062) - lu(k,924) * lu(k,1059) + lu(k,1063) = lu(k,1063) - lu(k,925) * lu(k,1059) + lu(k,1065) = lu(k,1065) - lu(k,926) * lu(k,1059) + lu(k,1066) = - lu(k,927) * lu(k,1059) + lu(k,1069) = - lu(k,928) * lu(k,1059) + lu(k,1112) = - lu(k,924) * lu(k,1107) + lu(k,1113) = - lu(k,925) * lu(k,1107) + lu(k,1116) = lu(k,1116) - lu(k,926) * lu(k,1107) + lu(k,1117) = lu(k,1117) - lu(k,927) * lu(k,1107) + lu(k,1122) = - lu(k,928) * lu(k,1107) + lu(k,1152) = - lu(k,924) * lu(k,1148) + lu(k,1156) = lu(k,1156) - lu(k,925) * lu(k,1148) + lu(k,1159) = lu(k,1159) - lu(k,926) * lu(k,1148) + lu(k,1161) = - lu(k,927) * lu(k,1148) + lu(k,1166) = - lu(k,928) * lu(k,1148) + lu(k,1671) = lu(k,1671) - lu(k,924) * lu(k,1657) + lu(k,1684) = lu(k,1684) - lu(k,925) * lu(k,1657) + lu(k,1692) = lu(k,1692) - lu(k,926) * lu(k,1657) + lu(k,1695) = lu(k,1695) - lu(k,927) * lu(k,1657) + lu(k,1704) = lu(k,1704) - lu(k,928) * lu(k,1657) + lu(k,1755) = - lu(k,924) * lu(k,1741) + lu(k,1768) = lu(k,1768) - lu(k,925) * lu(k,1741) + lu(k,1775) = lu(k,1775) - lu(k,926) * lu(k,1741) + lu(k,1778) = lu(k,1778) - lu(k,927) * lu(k,1741) + lu(k,1787) = lu(k,1787) - lu(k,928) * lu(k,1741) + lu(k,1810) = lu(k,1810) - lu(k,924) * lu(k,1800) + lu(k,1821) = lu(k,1821) - lu(k,925) * lu(k,1800) + lu(k,1827) = lu(k,1827) - lu(k,926) * lu(k,1800) + lu(k,1830) = lu(k,1830) - lu(k,927) * lu(k,1800) + lu(k,1839) = lu(k,1839) - lu(k,928) * lu(k,1800) + lu(k,1900) = lu(k,1900) - lu(k,924) * lu(k,1889) + lu(k,1912) = lu(k,1912) - lu(k,925) * lu(k,1889) + lu(k,1919) = lu(k,1919) - lu(k,926) * lu(k,1889) + lu(k,1922) = lu(k,1922) - lu(k,927) * lu(k,1889) + lu(k,1931) = lu(k,1931) - lu(k,928) * lu(k,1889) + lu(k,2090) = lu(k,2090) - lu(k,924) * lu(k,2080) + lu(k,2101) = lu(k,2101) - lu(k,925) * lu(k,2080) + lu(k,2109) = lu(k,2109) - lu(k,926) * lu(k,2080) + lu(k,2112) = lu(k,2112) - lu(k,927) * lu(k,2080) + lu(k,2121) = lu(k,2121) - lu(k,928) * lu(k,2080) + lu(k,2230) = lu(k,2230) - lu(k,924) * lu(k,2217) + lu(k,2241) = lu(k,2241) - lu(k,925) * lu(k,2217) + lu(k,2248) = lu(k,2248) - lu(k,926) * lu(k,2217) + lu(k,2251) = lu(k,2251) - lu(k,927) * lu(k,2217) + lu(k,2260) = lu(k,2260) - lu(k,928) * lu(k,2217) + lu(k,930) = 1._r8 / lu(k,930) + lu(k,931) = lu(k,931) * lu(k,930) + lu(k,932) = lu(k,932) * lu(k,930) + lu(k,933) = lu(k,933) * lu(k,930) + lu(k,934) = lu(k,934) * lu(k,930) + lu(k,935) = lu(k,935) * lu(k,930) + lu(k,955) = lu(k,955) - lu(k,931) * lu(k,948) + lu(k,961) = lu(k,961) - lu(k,932) * lu(k,948) + lu(k,966) = lu(k,966) - lu(k,933) * lu(k,948) + lu(k,967) = lu(k,967) - lu(k,934) * lu(k,948) + lu(k,969) = lu(k,969) - lu(k,935) * lu(k,948) + lu(k,1005) = lu(k,1005) - lu(k,931) * lu(k,997) + lu(k,1011) = lu(k,1011) - lu(k,932) * lu(k,997) + lu(k,1016) = lu(k,1016) - lu(k,933) * lu(k,997) + lu(k,1017) = lu(k,1017) - lu(k,934) * lu(k,997) + lu(k,1019) = lu(k,1019) - lu(k,935) * lu(k,997) + lu(k,1027) = lu(k,1027) - lu(k,931) * lu(k,1024) + lu(k,1033) = lu(k,1033) - lu(k,932) * lu(k,1024) + lu(k,1038) = lu(k,1038) - lu(k,933) * lu(k,1024) + lu(k,1039) = lu(k,1039) - lu(k,934) * lu(k,1024) + lu(k,1041) = lu(k,1041) - lu(k,935) * lu(k,1024) + lu(k,1209) = lu(k,1209) - lu(k,931) * lu(k,1208) + lu(k,1216) = lu(k,1216) - lu(k,932) * lu(k,1208) + lu(k,1217) = lu(k,1217) - lu(k,933) * lu(k,1208) + lu(k,1218) = - lu(k,934) * lu(k,1208) + lu(k,1220) = lu(k,1220) - lu(k,935) * lu(k,1208) + lu(k,1329) = lu(k,1329) - lu(k,931) * lu(k,1326) + lu(k,1339) = lu(k,1339) - lu(k,932) * lu(k,1326) + lu(k,1344) = lu(k,1344) - lu(k,933) * lu(k,1326) + lu(k,1345) = lu(k,1345) - lu(k,934) * lu(k,1326) + lu(k,1347) = - lu(k,935) * lu(k,1326) + lu(k,1480) = lu(k,1480) - lu(k,931) * lu(k,1479) + lu(k,1488) = lu(k,1488) - lu(k,932) * lu(k,1479) + lu(k,1494) = lu(k,1494) - lu(k,933) * lu(k,1479) + lu(k,1497) = lu(k,1497) - lu(k,934) * lu(k,1479) + lu(k,1499) = lu(k,1499) - lu(k,935) * lu(k,1479) + lu(k,1670) = lu(k,1670) - lu(k,931) * lu(k,1658) + lu(k,1692) = lu(k,1692) - lu(k,932) * lu(k,1658) + lu(k,1699) = lu(k,1699) - lu(k,933) * lu(k,1658) + lu(k,1702) = lu(k,1702) - lu(k,934) * lu(k,1658) + lu(k,1704) = lu(k,1704) - lu(k,935) * lu(k,1658) + lu(k,1754) = lu(k,1754) - lu(k,931) * lu(k,1742) + lu(k,1775) = lu(k,1775) - lu(k,932) * lu(k,1742) + lu(k,1782) = lu(k,1782) - lu(k,933) * lu(k,1742) + lu(k,1785) = lu(k,1785) - lu(k,934) * lu(k,1742) + lu(k,1787) = lu(k,1787) - lu(k,935) * lu(k,1742) + lu(k,1899) = lu(k,1899) - lu(k,931) * lu(k,1890) + lu(k,1919) = lu(k,1919) - lu(k,932) * lu(k,1890) + lu(k,1926) = lu(k,1926) - lu(k,933) * lu(k,1890) + lu(k,1929) = lu(k,1929) - lu(k,934) * lu(k,1890) + lu(k,1931) = lu(k,1931) - lu(k,935) * lu(k,1890) + lu(k,1993) = lu(k,1993) - lu(k,931) * lu(k,1989) + lu(k,2002) = lu(k,2002) - lu(k,932) * lu(k,1989) + lu(k,2009) = lu(k,2009) - lu(k,933) * lu(k,1989) + lu(k,2012) = lu(k,2012) - lu(k,934) * lu(k,1989) + lu(k,2014) = lu(k,2014) - lu(k,935) * lu(k,1989) + lu(k,2089) = lu(k,2089) - lu(k,931) * lu(k,2081) + lu(k,2109) = lu(k,2109) - lu(k,932) * lu(k,2081) + lu(k,2116) = lu(k,2116) - lu(k,933) * lu(k,2081) + lu(k,2119) = lu(k,2119) - lu(k,934) * lu(k,2081) + lu(k,2121) = lu(k,2121) - lu(k,935) * lu(k,2081) + lu(k,2229) = lu(k,2229) - lu(k,931) * lu(k,2218) + lu(k,2248) = lu(k,2248) - lu(k,932) * lu(k,2218) + lu(k,2255) = lu(k,2255) - lu(k,933) * lu(k,2218) + lu(k,2258) = lu(k,2258) - lu(k,934) * lu(k,2218) + lu(k,2260) = lu(k,2260) - lu(k,935) * lu(k,2218) + end do + end subroutine lu_fac20 + subroutine lu_fac21( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,949) = 1._r8 / lu(k,949) + lu(k,950) = lu(k,950) * lu(k,949) + lu(k,951) = lu(k,951) * lu(k,949) + lu(k,952) = lu(k,952) * lu(k,949) + lu(k,953) = lu(k,953) * lu(k,949) + lu(k,954) = lu(k,954) * lu(k,949) + lu(k,955) = lu(k,955) * lu(k,949) + lu(k,956) = lu(k,956) * lu(k,949) + lu(k,957) = lu(k,957) * lu(k,949) + lu(k,958) = lu(k,958) * lu(k,949) + lu(k,959) = lu(k,959) * lu(k,949) + lu(k,960) = lu(k,960) * lu(k,949) + lu(k,961) = lu(k,961) * lu(k,949) + lu(k,962) = lu(k,962) * lu(k,949) + lu(k,963) = lu(k,963) * lu(k,949) + lu(k,964) = lu(k,964) * lu(k,949) + lu(k,965) = lu(k,965) * lu(k,949) + lu(k,966) = lu(k,966) * lu(k,949) + lu(k,967) = lu(k,967) * lu(k,949) + lu(k,968) = lu(k,968) * lu(k,949) + lu(k,969) = lu(k,969) * lu(k,949) + lu(k,1660) = lu(k,1660) - lu(k,950) * lu(k,1659) + lu(k,1661) = lu(k,1661) - lu(k,951) * lu(k,1659) + lu(k,1664) = lu(k,1664) - lu(k,952) * lu(k,1659) + lu(k,1665) = lu(k,1665) - lu(k,953) * lu(k,1659) + lu(k,1667) = lu(k,1667) - lu(k,954) * lu(k,1659) + lu(k,1670) = lu(k,1670) - lu(k,955) * lu(k,1659) + lu(k,1671) = lu(k,1671) - lu(k,956) * lu(k,1659) + lu(k,1677) = lu(k,1677) - lu(k,957) * lu(k,1659) + lu(k,1684) = lu(k,1684) - lu(k,958) * lu(k,1659) + lu(k,1689) = lu(k,1689) - lu(k,959) * lu(k,1659) + lu(k,1690) = lu(k,1690) - lu(k,960) * lu(k,1659) + lu(k,1692) = lu(k,1692) - lu(k,961) * lu(k,1659) + lu(k,1694) = lu(k,1694) - lu(k,962) * lu(k,1659) + lu(k,1695) = lu(k,1695) - lu(k,963) * lu(k,1659) + lu(k,1696) = lu(k,1696) - lu(k,964) * lu(k,1659) + lu(k,1697) = lu(k,1697) - lu(k,965) * lu(k,1659) + lu(k,1699) = lu(k,1699) - lu(k,966) * lu(k,1659) + lu(k,1702) = lu(k,1702) - lu(k,967) * lu(k,1659) + lu(k,1703) = lu(k,1703) - lu(k,968) * lu(k,1659) + lu(k,1704) = lu(k,1704) - lu(k,969) * lu(k,1659) + lu(k,1744) = lu(k,1744) - lu(k,950) * lu(k,1743) + lu(k,1745) = lu(k,1745) - lu(k,951) * lu(k,1743) + lu(k,1748) = lu(k,1748) - lu(k,952) * lu(k,1743) + lu(k,1749) = - lu(k,953) * lu(k,1743) + lu(k,1751) = lu(k,1751) - lu(k,954) * lu(k,1743) + lu(k,1754) = lu(k,1754) - lu(k,955) * lu(k,1743) + lu(k,1755) = lu(k,1755) - lu(k,956) * lu(k,1743) + lu(k,1761) = lu(k,1761) - lu(k,957) * lu(k,1743) + lu(k,1768) = lu(k,1768) - lu(k,958) * lu(k,1743) + lu(k,1772) = lu(k,1772) - lu(k,959) * lu(k,1743) + lu(k,1773) = lu(k,1773) - lu(k,960) * lu(k,1743) + lu(k,1775) = lu(k,1775) - lu(k,961) * lu(k,1743) + lu(k,1777) = lu(k,1777) - lu(k,962) * lu(k,1743) + lu(k,1778) = lu(k,1778) - lu(k,963) * lu(k,1743) + lu(k,1779) = lu(k,1779) - lu(k,964) * lu(k,1743) + lu(k,1780) = lu(k,1780) - lu(k,965) * lu(k,1743) + lu(k,1782) = lu(k,1782) - lu(k,966) * lu(k,1743) + lu(k,1785) = lu(k,1785) - lu(k,967) * lu(k,1743) + lu(k,1786) = lu(k,1786) - lu(k,968) * lu(k,1743) + lu(k,1787) = lu(k,1787) - lu(k,969) * lu(k,1743) + lu(k,2220) = lu(k,2220) - lu(k,950) * lu(k,2219) + lu(k,2221) = lu(k,2221) - lu(k,951) * lu(k,2219) + lu(k,2224) = - lu(k,952) * lu(k,2219) + lu(k,2225) = lu(k,2225) - lu(k,953) * lu(k,2219) + lu(k,2226) = lu(k,2226) - lu(k,954) * lu(k,2219) + lu(k,2229) = lu(k,2229) - lu(k,955) * lu(k,2219) + lu(k,2230) = lu(k,2230) - lu(k,956) * lu(k,2219) + lu(k,2234) = lu(k,2234) - lu(k,957) * lu(k,2219) + lu(k,2241) = lu(k,2241) - lu(k,958) * lu(k,2219) + lu(k,2245) = - lu(k,959) * lu(k,2219) + lu(k,2246) = lu(k,2246) - lu(k,960) * lu(k,2219) + lu(k,2248) = lu(k,2248) - lu(k,961) * lu(k,2219) + lu(k,2250) = lu(k,2250) - lu(k,962) * lu(k,2219) + lu(k,2251) = lu(k,2251) - lu(k,963) * lu(k,2219) + lu(k,2252) = lu(k,2252) - lu(k,964) * lu(k,2219) + lu(k,2253) = lu(k,2253) - lu(k,965) * lu(k,2219) + lu(k,2255) = lu(k,2255) - lu(k,966) * lu(k,2219) + lu(k,2258) = lu(k,2258) - lu(k,967) * lu(k,2219) + lu(k,2259) = lu(k,2259) - lu(k,968) * lu(k,2219) + lu(k,2260) = lu(k,2260) - lu(k,969) * lu(k,2219) + lu(k,970) = 1._r8 / lu(k,970) + lu(k,971) = lu(k,971) * lu(k,970) + lu(k,972) = lu(k,972) * lu(k,970) + lu(k,973) = lu(k,973) * lu(k,970) + lu(k,974) = lu(k,974) * lu(k,970) + lu(k,975) = lu(k,975) * lu(k,970) + lu(k,976) = lu(k,976) * lu(k,970) + lu(k,977) = lu(k,977) * lu(k,970) + lu(k,1001) = lu(k,1001) - lu(k,971) * lu(k,998) + lu(k,1002) = lu(k,1002) - lu(k,972) * lu(k,998) + lu(k,1004) = - lu(k,973) * lu(k,998) + lu(k,1005) = lu(k,1005) - lu(k,974) * lu(k,998) + lu(k,1011) = lu(k,1011) - lu(k,975) * lu(k,998) + lu(k,1012) = lu(k,1012) - lu(k,976) * lu(k,998) + lu(k,1016) = lu(k,1016) - lu(k,977) * lu(k,998) + lu(k,1046) = lu(k,1046) - lu(k,971) * lu(k,1045) + lu(k,1047) = - lu(k,972) * lu(k,1045) + lu(k,1048) = - lu(k,973) * lu(k,1045) + lu(k,1049) = - lu(k,974) * lu(k,1045) + lu(k,1052) = lu(k,1052) - lu(k,975) * lu(k,1045) + lu(k,1053) = lu(k,1053) - lu(k,976) * lu(k,1045) + lu(k,1057) = lu(k,1057) - lu(k,977) * lu(k,1045) + lu(k,1664) = lu(k,1664) - lu(k,971) * lu(k,1660) + lu(k,1665) = lu(k,1665) - lu(k,972) * lu(k,1660) + lu(k,1669) = lu(k,1669) - lu(k,973) * lu(k,1660) + lu(k,1670) = lu(k,1670) - lu(k,974) * lu(k,1660) + lu(k,1692) = lu(k,1692) - lu(k,975) * lu(k,1660) + lu(k,1694) = lu(k,1694) - lu(k,976) * lu(k,1660) + lu(k,1699) = lu(k,1699) - lu(k,977) * lu(k,1660) + lu(k,1748) = lu(k,1748) - lu(k,971) * lu(k,1744) + lu(k,1749) = lu(k,1749) - lu(k,972) * lu(k,1744) + lu(k,1753) = lu(k,1753) - lu(k,973) * lu(k,1744) + lu(k,1754) = lu(k,1754) - lu(k,974) * lu(k,1744) + lu(k,1775) = lu(k,1775) - lu(k,975) * lu(k,1744) + lu(k,1777) = lu(k,1777) - lu(k,976) * lu(k,1744) + lu(k,1782) = lu(k,1782) - lu(k,977) * lu(k,1744) + lu(k,1803) = lu(k,1803) - lu(k,971) * lu(k,1801) + lu(k,1804) = lu(k,1804) - lu(k,972) * lu(k,1801) + lu(k,1808) = lu(k,1808) - lu(k,973) * lu(k,1801) + lu(k,1809) = lu(k,1809) - lu(k,974) * lu(k,1801) + lu(k,1827) = lu(k,1827) - lu(k,975) * lu(k,1801) + lu(k,1829) = - lu(k,976) * lu(k,1801) + lu(k,1834) = lu(k,1834) - lu(k,977) * lu(k,1801) + lu(k,1893) = lu(k,1893) - lu(k,971) * lu(k,1891) + lu(k,1894) = lu(k,1894) - lu(k,972) * lu(k,1891) + lu(k,1898) = lu(k,1898) - lu(k,973) * lu(k,1891) + lu(k,1899) = lu(k,1899) - lu(k,974) * lu(k,1891) + lu(k,1919) = lu(k,1919) - lu(k,975) * lu(k,1891) + lu(k,1921) = lu(k,1921) - lu(k,976) * lu(k,1891) + lu(k,1926) = lu(k,1926) - lu(k,977) * lu(k,1891) + lu(k,2084) = lu(k,2084) - lu(k,971) * lu(k,2082) + lu(k,2085) = lu(k,2085) - lu(k,972) * lu(k,2082) + lu(k,2088) = lu(k,2088) - lu(k,973) * lu(k,2082) + lu(k,2089) = lu(k,2089) - lu(k,974) * lu(k,2082) + lu(k,2109) = lu(k,2109) - lu(k,975) * lu(k,2082) + lu(k,2111) = lu(k,2111) - lu(k,976) * lu(k,2082) + lu(k,2116) = lu(k,2116) - lu(k,977) * lu(k,2082) + lu(k,2224) = lu(k,2224) - lu(k,971) * lu(k,2220) + lu(k,2225) = lu(k,2225) - lu(k,972) * lu(k,2220) + lu(k,2228) = - lu(k,973) * lu(k,2220) + lu(k,2229) = lu(k,2229) - lu(k,974) * lu(k,2220) + lu(k,2248) = lu(k,2248) - lu(k,975) * lu(k,2220) + lu(k,2250) = lu(k,2250) - lu(k,976) * lu(k,2220) + lu(k,2255) = lu(k,2255) - lu(k,977) * lu(k,2220) + lu(k,980) = 1._r8 / lu(k,980) + lu(k,981) = lu(k,981) * lu(k,980) + lu(k,982) = lu(k,982) * lu(k,980) + lu(k,983) = lu(k,983) * lu(k,980) + lu(k,984) = lu(k,984) * lu(k,980) + lu(k,1005) = lu(k,1005) - lu(k,981) * lu(k,999) + lu(k,1011) = lu(k,1011) - lu(k,982) * lu(k,999) + lu(k,1016) = lu(k,1016) - lu(k,983) * lu(k,999) + lu(k,1017) = lu(k,1017) - lu(k,984) * lu(k,999) + lu(k,1075) = lu(k,1075) - lu(k,981) * lu(k,1073) + lu(k,1080) = lu(k,1080) - lu(k,982) * lu(k,1073) + lu(k,1084) = lu(k,1084) - lu(k,983) * lu(k,1073) + lu(k,1085) = - lu(k,984) * lu(k,1073) + lu(k,1098) = lu(k,1098) - lu(k,981) * lu(k,1096) + lu(k,1100) = lu(k,1100) - lu(k,982) * lu(k,1096) + lu(k,1101) = lu(k,1101) - lu(k,983) * lu(k,1096) + lu(k,1102) = lu(k,1102) - lu(k,984) * lu(k,1096) + lu(k,1172) = lu(k,1172) - lu(k,981) * lu(k,1170) + lu(k,1178) = lu(k,1178) - lu(k,982) * lu(k,1170) + lu(k,1183) = lu(k,1183) - lu(k,983) * lu(k,1170) + lu(k,1184) = lu(k,1184) - lu(k,984) * lu(k,1170) + lu(k,1283) = lu(k,1283) - lu(k,981) * lu(k,1281) + lu(k,1296) = lu(k,1296) - lu(k,982) * lu(k,1281) + lu(k,1301) = lu(k,1301) - lu(k,983) * lu(k,1281) + lu(k,1302) = - lu(k,984) * lu(k,1281) + lu(k,1376) = lu(k,1376) - lu(k,981) * lu(k,1373) + lu(k,1391) = lu(k,1391) - lu(k,982) * lu(k,1373) + lu(k,1396) = lu(k,1396) - lu(k,983) * lu(k,1373) + lu(k,1397) = lu(k,1397) - lu(k,984) * lu(k,1373) + lu(k,1670) = lu(k,1670) - lu(k,981) * lu(k,1661) + lu(k,1692) = lu(k,1692) - lu(k,982) * lu(k,1661) + lu(k,1699) = lu(k,1699) - lu(k,983) * lu(k,1661) + lu(k,1702) = lu(k,1702) - lu(k,984) * lu(k,1661) + lu(k,1754) = lu(k,1754) - lu(k,981) * lu(k,1745) + lu(k,1775) = lu(k,1775) - lu(k,982) * lu(k,1745) + lu(k,1782) = lu(k,1782) - lu(k,983) * lu(k,1745) + lu(k,1785) = lu(k,1785) - lu(k,984) * lu(k,1745) + lu(k,1809) = lu(k,1809) - lu(k,981) * lu(k,1802) + lu(k,1827) = lu(k,1827) - lu(k,982) * lu(k,1802) + lu(k,1834) = lu(k,1834) - lu(k,983) * lu(k,1802) + lu(k,1837) = lu(k,1837) - lu(k,984) * lu(k,1802) + lu(k,1899) = lu(k,1899) - lu(k,981) * lu(k,1892) + lu(k,1919) = lu(k,1919) - lu(k,982) * lu(k,1892) + lu(k,1926) = lu(k,1926) - lu(k,983) * lu(k,1892) + lu(k,1929) = lu(k,1929) - lu(k,984) * lu(k,1892) + lu(k,1951) = lu(k,1951) - lu(k,981) * lu(k,1950) + lu(k,1963) = lu(k,1963) - lu(k,982) * lu(k,1950) + lu(k,1970) = lu(k,1970) - lu(k,983) * lu(k,1950) + lu(k,1973) = lu(k,1973) - lu(k,984) * lu(k,1950) + lu(k,1993) = lu(k,1993) - lu(k,981) * lu(k,1990) + lu(k,2002) = lu(k,2002) - lu(k,982) * lu(k,1990) + lu(k,2009) = lu(k,2009) - lu(k,983) * lu(k,1990) + lu(k,2012) = lu(k,2012) - lu(k,984) * lu(k,1990) + lu(k,2089) = lu(k,2089) - lu(k,981) * lu(k,2083) + lu(k,2109) = lu(k,2109) - lu(k,982) * lu(k,2083) + lu(k,2116) = lu(k,2116) - lu(k,983) * lu(k,2083) + lu(k,2119) = lu(k,2119) - lu(k,984) * lu(k,2083) + lu(k,2229) = lu(k,2229) - lu(k,981) * lu(k,2221) + lu(k,2248) = lu(k,2248) - lu(k,982) * lu(k,2221) + lu(k,2255) = lu(k,2255) - lu(k,983) * lu(k,2221) + lu(k,2258) = lu(k,2258) - lu(k,984) * lu(k,2221) + lu(k,1000) = 1._r8 / lu(k,1000) + lu(k,1001) = lu(k,1001) * lu(k,1000) + lu(k,1002) = lu(k,1002) * lu(k,1000) + lu(k,1003) = lu(k,1003) * lu(k,1000) + lu(k,1004) = lu(k,1004) * lu(k,1000) + lu(k,1005) = lu(k,1005) * lu(k,1000) + lu(k,1006) = lu(k,1006) * lu(k,1000) + lu(k,1007) = lu(k,1007) * lu(k,1000) + lu(k,1008) = lu(k,1008) * lu(k,1000) + lu(k,1009) = lu(k,1009) * lu(k,1000) + lu(k,1010) = lu(k,1010) * lu(k,1000) + lu(k,1011) = lu(k,1011) * lu(k,1000) + lu(k,1012) = lu(k,1012) * lu(k,1000) + lu(k,1013) = lu(k,1013) * lu(k,1000) + lu(k,1014) = lu(k,1014) * lu(k,1000) + lu(k,1015) = lu(k,1015) * lu(k,1000) + lu(k,1016) = lu(k,1016) * lu(k,1000) + lu(k,1017) = lu(k,1017) * lu(k,1000) + lu(k,1018) = lu(k,1018) * lu(k,1000) + lu(k,1019) = lu(k,1019) * lu(k,1000) + lu(k,1664) = lu(k,1664) - lu(k,1001) * lu(k,1662) + lu(k,1665) = lu(k,1665) - lu(k,1002) * lu(k,1662) + lu(k,1667) = lu(k,1667) - lu(k,1003) * lu(k,1662) + lu(k,1669) = lu(k,1669) - lu(k,1004) * lu(k,1662) + lu(k,1670) = lu(k,1670) - lu(k,1005) * lu(k,1662) + lu(k,1671) = lu(k,1671) - lu(k,1006) * lu(k,1662) + lu(k,1677) = lu(k,1677) - lu(k,1007) * lu(k,1662) + lu(k,1684) = lu(k,1684) - lu(k,1008) * lu(k,1662) + lu(k,1689) = lu(k,1689) - lu(k,1009) * lu(k,1662) + lu(k,1690) = lu(k,1690) - lu(k,1010) * lu(k,1662) + lu(k,1692) = lu(k,1692) - lu(k,1011) * lu(k,1662) + lu(k,1694) = lu(k,1694) - lu(k,1012) * lu(k,1662) + lu(k,1695) = lu(k,1695) - lu(k,1013) * lu(k,1662) + lu(k,1696) = lu(k,1696) - lu(k,1014) * lu(k,1662) + lu(k,1697) = lu(k,1697) - lu(k,1015) * lu(k,1662) + lu(k,1699) = lu(k,1699) - lu(k,1016) * lu(k,1662) + lu(k,1702) = lu(k,1702) - lu(k,1017) * lu(k,1662) + lu(k,1703) = lu(k,1703) - lu(k,1018) * lu(k,1662) + lu(k,1704) = lu(k,1704) - lu(k,1019) * lu(k,1662) + lu(k,1748) = lu(k,1748) - lu(k,1001) * lu(k,1746) + lu(k,1749) = lu(k,1749) - lu(k,1002) * lu(k,1746) + lu(k,1751) = lu(k,1751) - lu(k,1003) * lu(k,1746) + lu(k,1753) = lu(k,1753) - lu(k,1004) * lu(k,1746) + lu(k,1754) = lu(k,1754) - lu(k,1005) * lu(k,1746) + lu(k,1755) = lu(k,1755) - lu(k,1006) * lu(k,1746) + lu(k,1761) = lu(k,1761) - lu(k,1007) * lu(k,1746) + lu(k,1768) = lu(k,1768) - lu(k,1008) * lu(k,1746) + lu(k,1772) = lu(k,1772) - lu(k,1009) * lu(k,1746) + lu(k,1773) = lu(k,1773) - lu(k,1010) * lu(k,1746) + lu(k,1775) = lu(k,1775) - lu(k,1011) * lu(k,1746) + lu(k,1777) = lu(k,1777) - lu(k,1012) * lu(k,1746) + lu(k,1778) = lu(k,1778) - lu(k,1013) * lu(k,1746) + lu(k,1779) = lu(k,1779) - lu(k,1014) * lu(k,1746) + lu(k,1780) = lu(k,1780) - lu(k,1015) * lu(k,1746) + lu(k,1782) = lu(k,1782) - lu(k,1016) * lu(k,1746) + lu(k,1785) = lu(k,1785) - lu(k,1017) * lu(k,1746) + lu(k,1786) = lu(k,1786) - lu(k,1018) * lu(k,1746) + lu(k,1787) = lu(k,1787) - lu(k,1019) * lu(k,1746) + lu(k,2224) = lu(k,2224) - lu(k,1001) * lu(k,2222) + lu(k,2225) = lu(k,2225) - lu(k,1002) * lu(k,2222) + lu(k,2226) = lu(k,2226) - lu(k,1003) * lu(k,2222) + lu(k,2228) = lu(k,2228) - lu(k,1004) * lu(k,2222) + lu(k,2229) = lu(k,2229) - lu(k,1005) * lu(k,2222) + lu(k,2230) = lu(k,2230) - lu(k,1006) * lu(k,2222) + lu(k,2234) = lu(k,2234) - lu(k,1007) * lu(k,2222) + lu(k,2241) = lu(k,2241) - lu(k,1008) * lu(k,2222) + lu(k,2245) = lu(k,2245) - lu(k,1009) * lu(k,2222) + lu(k,2246) = lu(k,2246) - lu(k,1010) * lu(k,2222) + lu(k,2248) = lu(k,2248) - lu(k,1011) * lu(k,2222) + lu(k,2250) = lu(k,2250) - lu(k,1012) * lu(k,2222) + lu(k,2251) = lu(k,2251) - lu(k,1013) * lu(k,2222) + lu(k,2252) = lu(k,2252) - lu(k,1014) * lu(k,2222) + lu(k,2253) = lu(k,2253) - lu(k,1015) * lu(k,2222) + lu(k,2255) = lu(k,2255) - lu(k,1016) * lu(k,2222) + lu(k,2258) = lu(k,2258) - lu(k,1017) * lu(k,2222) + lu(k,2259) = lu(k,2259) - lu(k,1018) * lu(k,2222) + lu(k,2260) = lu(k,2260) - lu(k,1019) * lu(k,2222) + end do + end subroutine lu_fac21 + subroutine lu_fac22( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1025) = 1._r8 / lu(k,1025) + lu(k,1026) = lu(k,1026) * lu(k,1025) + lu(k,1027) = lu(k,1027) * lu(k,1025) + lu(k,1028) = lu(k,1028) * lu(k,1025) + lu(k,1029) = lu(k,1029) * lu(k,1025) + lu(k,1030) = lu(k,1030) * lu(k,1025) + lu(k,1031) = lu(k,1031) * lu(k,1025) + lu(k,1032) = lu(k,1032) * lu(k,1025) + lu(k,1033) = lu(k,1033) * lu(k,1025) + lu(k,1034) = lu(k,1034) * lu(k,1025) + lu(k,1035) = lu(k,1035) * lu(k,1025) + lu(k,1036) = lu(k,1036) * lu(k,1025) + lu(k,1037) = lu(k,1037) * lu(k,1025) + lu(k,1038) = lu(k,1038) * lu(k,1025) + lu(k,1039) = lu(k,1039) * lu(k,1025) + lu(k,1040) = lu(k,1040) * lu(k,1025) + lu(k,1041) = lu(k,1041) * lu(k,1025) + lu(k,1328) = lu(k,1328) - lu(k,1026) * lu(k,1327) + lu(k,1329) = lu(k,1329) - lu(k,1027) * lu(k,1327) + lu(k,1330) = - lu(k,1028) * lu(k,1327) + lu(k,1331) = lu(k,1331) - lu(k,1029) * lu(k,1327) + lu(k,1335) = lu(k,1335) - lu(k,1030) * lu(k,1327) + lu(k,1336) = - lu(k,1031) * lu(k,1327) + lu(k,1338) = lu(k,1338) - lu(k,1032) * lu(k,1327) + lu(k,1339) = lu(k,1339) - lu(k,1033) * lu(k,1327) + lu(k,1340) = - lu(k,1034) * lu(k,1327) + lu(k,1341) = lu(k,1341) - lu(k,1035) * lu(k,1327) + lu(k,1342) = - lu(k,1036) * lu(k,1327) + lu(k,1343) = - lu(k,1037) * lu(k,1327) + lu(k,1344) = lu(k,1344) - lu(k,1038) * lu(k,1327) + lu(k,1345) = lu(k,1345) - lu(k,1039) * lu(k,1327) + lu(k,1346) = lu(k,1346) - lu(k,1040) * lu(k,1327) + lu(k,1347) = lu(k,1347) - lu(k,1041) * lu(k,1327) + lu(k,1667) = lu(k,1667) - lu(k,1026) * lu(k,1663) + lu(k,1670) = lu(k,1670) - lu(k,1027) * lu(k,1663) + lu(k,1672) = lu(k,1672) - lu(k,1028) * lu(k,1663) + lu(k,1677) = lu(k,1677) - lu(k,1029) * lu(k,1663) + lu(k,1684) = lu(k,1684) - lu(k,1030) * lu(k,1663) + lu(k,1687) = lu(k,1687) - lu(k,1031) * lu(k,1663) + lu(k,1690) = lu(k,1690) - lu(k,1032) * lu(k,1663) + lu(k,1692) = lu(k,1692) - lu(k,1033) * lu(k,1663) + lu(k,1694) = lu(k,1694) - lu(k,1034) * lu(k,1663) + lu(k,1695) = lu(k,1695) - lu(k,1035) * lu(k,1663) + lu(k,1696) = lu(k,1696) - lu(k,1036) * lu(k,1663) + lu(k,1697) = lu(k,1697) - lu(k,1037) * lu(k,1663) + lu(k,1699) = lu(k,1699) - lu(k,1038) * lu(k,1663) + lu(k,1702) = lu(k,1702) - lu(k,1039) * lu(k,1663) + lu(k,1703) = lu(k,1703) - lu(k,1040) * lu(k,1663) + lu(k,1704) = lu(k,1704) - lu(k,1041) * lu(k,1663) + lu(k,1751) = lu(k,1751) - lu(k,1026) * lu(k,1747) + lu(k,1754) = lu(k,1754) - lu(k,1027) * lu(k,1747) + lu(k,1756) = lu(k,1756) - lu(k,1028) * lu(k,1747) + lu(k,1761) = lu(k,1761) - lu(k,1029) * lu(k,1747) + lu(k,1768) = lu(k,1768) - lu(k,1030) * lu(k,1747) + lu(k,1770) = - lu(k,1031) * lu(k,1747) + lu(k,1773) = lu(k,1773) - lu(k,1032) * lu(k,1747) + lu(k,1775) = lu(k,1775) - lu(k,1033) * lu(k,1747) + lu(k,1777) = lu(k,1777) - lu(k,1034) * lu(k,1747) + lu(k,1778) = lu(k,1778) - lu(k,1035) * lu(k,1747) + lu(k,1779) = lu(k,1779) - lu(k,1036) * lu(k,1747) + lu(k,1780) = lu(k,1780) - lu(k,1037) * lu(k,1747) + lu(k,1782) = lu(k,1782) - lu(k,1038) * lu(k,1747) + lu(k,1785) = lu(k,1785) - lu(k,1039) * lu(k,1747) + lu(k,1786) = lu(k,1786) - lu(k,1040) * lu(k,1747) + lu(k,1787) = lu(k,1787) - lu(k,1041) * lu(k,1747) + lu(k,2226) = lu(k,2226) - lu(k,1026) * lu(k,2223) + lu(k,2229) = lu(k,2229) - lu(k,1027) * lu(k,2223) + lu(k,2231) = - lu(k,1028) * lu(k,2223) + lu(k,2234) = lu(k,2234) - lu(k,1029) * lu(k,2223) + lu(k,2241) = lu(k,2241) - lu(k,1030) * lu(k,2223) + lu(k,2243) = lu(k,2243) - lu(k,1031) * lu(k,2223) + lu(k,2246) = lu(k,2246) - lu(k,1032) * lu(k,2223) + lu(k,2248) = lu(k,2248) - lu(k,1033) * lu(k,2223) + lu(k,2250) = lu(k,2250) - lu(k,1034) * lu(k,2223) + lu(k,2251) = lu(k,2251) - lu(k,1035) * lu(k,2223) + lu(k,2252) = lu(k,2252) - lu(k,1036) * lu(k,2223) + lu(k,2253) = lu(k,2253) - lu(k,1037) * lu(k,2223) + lu(k,2255) = lu(k,2255) - lu(k,1038) * lu(k,2223) + lu(k,2258) = lu(k,2258) - lu(k,1039) * lu(k,2223) + lu(k,2259) = lu(k,2259) - lu(k,1040) * lu(k,2223) + lu(k,2260) = lu(k,2260) - lu(k,1041) * lu(k,2223) + lu(k,1046) = 1._r8 / lu(k,1046) + lu(k,1047) = lu(k,1047) * lu(k,1046) + lu(k,1048) = lu(k,1048) * lu(k,1046) + lu(k,1049) = lu(k,1049) * lu(k,1046) + lu(k,1050) = lu(k,1050) * lu(k,1046) + lu(k,1051) = lu(k,1051) * lu(k,1046) + lu(k,1052) = lu(k,1052) * lu(k,1046) + lu(k,1053) = lu(k,1053) * lu(k,1046) + lu(k,1054) = lu(k,1054) * lu(k,1046) + lu(k,1055) = lu(k,1055) * lu(k,1046) + lu(k,1056) = lu(k,1056) * lu(k,1046) + lu(k,1057) = lu(k,1057) * lu(k,1046) + lu(k,1665) = lu(k,1665) - lu(k,1047) * lu(k,1664) + lu(k,1669) = lu(k,1669) - lu(k,1048) * lu(k,1664) + lu(k,1670) = lu(k,1670) - lu(k,1049) * lu(k,1664) + lu(k,1689) = lu(k,1689) - lu(k,1050) * lu(k,1664) + lu(k,1690) = lu(k,1690) - lu(k,1051) * lu(k,1664) + lu(k,1692) = lu(k,1692) - lu(k,1052) * lu(k,1664) + lu(k,1694) = lu(k,1694) - lu(k,1053) * lu(k,1664) + lu(k,1695) = lu(k,1695) - lu(k,1054) * lu(k,1664) + lu(k,1696) = lu(k,1696) - lu(k,1055) * lu(k,1664) + lu(k,1697) = lu(k,1697) - lu(k,1056) * lu(k,1664) + lu(k,1699) = lu(k,1699) - lu(k,1057) * lu(k,1664) + lu(k,1749) = lu(k,1749) - lu(k,1047) * lu(k,1748) + lu(k,1753) = lu(k,1753) - lu(k,1048) * lu(k,1748) + lu(k,1754) = lu(k,1754) - lu(k,1049) * lu(k,1748) + lu(k,1772) = lu(k,1772) - lu(k,1050) * lu(k,1748) + lu(k,1773) = lu(k,1773) - lu(k,1051) * lu(k,1748) + lu(k,1775) = lu(k,1775) - lu(k,1052) * lu(k,1748) + lu(k,1777) = lu(k,1777) - lu(k,1053) * lu(k,1748) + lu(k,1778) = lu(k,1778) - lu(k,1054) * lu(k,1748) + lu(k,1779) = lu(k,1779) - lu(k,1055) * lu(k,1748) + lu(k,1780) = lu(k,1780) - lu(k,1056) * lu(k,1748) + lu(k,1782) = lu(k,1782) - lu(k,1057) * lu(k,1748) + lu(k,1804) = lu(k,1804) - lu(k,1047) * lu(k,1803) + lu(k,1808) = lu(k,1808) - lu(k,1048) * lu(k,1803) + lu(k,1809) = lu(k,1809) - lu(k,1049) * lu(k,1803) + lu(k,1824) = lu(k,1824) - lu(k,1050) * lu(k,1803) + lu(k,1825) = lu(k,1825) - lu(k,1051) * lu(k,1803) + lu(k,1827) = lu(k,1827) - lu(k,1052) * lu(k,1803) + lu(k,1829) = lu(k,1829) - lu(k,1053) * lu(k,1803) + lu(k,1830) = lu(k,1830) - lu(k,1054) * lu(k,1803) + lu(k,1831) = lu(k,1831) - lu(k,1055) * lu(k,1803) + lu(k,1832) = lu(k,1832) - lu(k,1056) * lu(k,1803) + lu(k,1834) = lu(k,1834) - lu(k,1057) * lu(k,1803) + lu(k,1894) = lu(k,1894) - lu(k,1047) * lu(k,1893) + lu(k,1898) = lu(k,1898) - lu(k,1048) * lu(k,1893) + lu(k,1899) = lu(k,1899) - lu(k,1049) * lu(k,1893) + lu(k,1916) = lu(k,1916) - lu(k,1050) * lu(k,1893) + lu(k,1917) = lu(k,1917) - lu(k,1051) * lu(k,1893) + lu(k,1919) = lu(k,1919) - lu(k,1052) * lu(k,1893) + lu(k,1921) = lu(k,1921) - lu(k,1053) * lu(k,1893) + lu(k,1922) = lu(k,1922) - lu(k,1054) * lu(k,1893) + lu(k,1923) = lu(k,1923) - lu(k,1055) * lu(k,1893) + lu(k,1924) = lu(k,1924) - lu(k,1056) * lu(k,1893) + lu(k,1926) = lu(k,1926) - lu(k,1057) * lu(k,1893) + lu(k,2085) = lu(k,2085) - lu(k,1047) * lu(k,2084) + lu(k,2088) = lu(k,2088) - lu(k,1048) * lu(k,2084) + lu(k,2089) = lu(k,2089) - lu(k,1049) * lu(k,2084) + lu(k,2106) = lu(k,2106) - lu(k,1050) * lu(k,2084) + lu(k,2107) = lu(k,2107) - lu(k,1051) * lu(k,2084) + lu(k,2109) = lu(k,2109) - lu(k,1052) * lu(k,2084) + lu(k,2111) = lu(k,2111) - lu(k,1053) * lu(k,2084) + lu(k,2112) = lu(k,2112) - lu(k,1054) * lu(k,2084) + lu(k,2113) = lu(k,2113) - lu(k,1055) * lu(k,2084) + lu(k,2114) = lu(k,2114) - lu(k,1056) * lu(k,2084) + lu(k,2116) = lu(k,2116) - lu(k,1057) * lu(k,2084) + lu(k,2225) = lu(k,2225) - lu(k,1047) * lu(k,2224) + lu(k,2228) = lu(k,2228) - lu(k,1048) * lu(k,2224) + lu(k,2229) = lu(k,2229) - lu(k,1049) * lu(k,2224) + lu(k,2245) = lu(k,2245) - lu(k,1050) * lu(k,2224) + lu(k,2246) = lu(k,2246) - lu(k,1051) * lu(k,2224) + lu(k,2248) = lu(k,2248) - lu(k,1052) * lu(k,2224) + lu(k,2250) = lu(k,2250) - lu(k,1053) * lu(k,2224) + lu(k,2251) = lu(k,2251) - lu(k,1054) * lu(k,2224) + lu(k,2252) = lu(k,2252) - lu(k,1055) * lu(k,2224) + lu(k,2253) = lu(k,2253) - lu(k,1056) * lu(k,2224) + lu(k,2255) = lu(k,2255) - lu(k,1057) * lu(k,2224) + lu(k,1060) = 1._r8 / lu(k,1060) + lu(k,1061) = lu(k,1061) * lu(k,1060) + lu(k,1062) = lu(k,1062) * lu(k,1060) + lu(k,1063) = lu(k,1063) * lu(k,1060) + lu(k,1064) = lu(k,1064) * lu(k,1060) + lu(k,1065) = lu(k,1065) * lu(k,1060) + lu(k,1066) = lu(k,1066) * lu(k,1060) + lu(k,1067) = lu(k,1067) * lu(k,1060) + lu(k,1068) = lu(k,1068) * lu(k,1060) + lu(k,1069) = lu(k,1069) * lu(k,1060) + lu(k,1111) = lu(k,1111) - lu(k,1061) * lu(k,1108) + lu(k,1112) = lu(k,1112) - lu(k,1062) * lu(k,1108) + lu(k,1113) = lu(k,1113) - lu(k,1063) * lu(k,1108) + lu(k,1115) = lu(k,1115) - lu(k,1064) * lu(k,1108) + lu(k,1116) = lu(k,1116) - lu(k,1065) * lu(k,1108) + lu(k,1117) = lu(k,1117) - lu(k,1066) * lu(k,1108) + lu(k,1120) = lu(k,1120) - lu(k,1067) * lu(k,1108) + lu(k,1121) = lu(k,1121) - lu(k,1068) * lu(k,1108) + lu(k,1122) = lu(k,1122) - lu(k,1069) * lu(k,1108) + lu(k,1670) = lu(k,1670) - lu(k,1061) * lu(k,1665) + lu(k,1671) = lu(k,1671) - lu(k,1062) * lu(k,1665) + lu(k,1684) = lu(k,1684) - lu(k,1063) * lu(k,1665) + lu(k,1690) = lu(k,1690) - lu(k,1064) * lu(k,1665) + lu(k,1692) = lu(k,1692) - lu(k,1065) * lu(k,1665) + lu(k,1695) = lu(k,1695) - lu(k,1066) * lu(k,1665) + lu(k,1699) = lu(k,1699) - lu(k,1067) * lu(k,1665) + lu(k,1702) = lu(k,1702) - lu(k,1068) * lu(k,1665) + lu(k,1704) = lu(k,1704) - lu(k,1069) * lu(k,1665) + lu(k,1754) = lu(k,1754) - lu(k,1061) * lu(k,1749) + lu(k,1755) = lu(k,1755) - lu(k,1062) * lu(k,1749) + lu(k,1768) = lu(k,1768) - lu(k,1063) * lu(k,1749) + lu(k,1773) = lu(k,1773) - lu(k,1064) * lu(k,1749) + lu(k,1775) = lu(k,1775) - lu(k,1065) * lu(k,1749) + lu(k,1778) = lu(k,1778) - lu(k,1066) * lu(k,1749) + lu(k,1782) = lu(k,1782) - lu(k,1067) * lu(k,1749) + lu(k,1785) = lu(k,1785) - lu(k,1068) * lu(k,1749) + lu(k,1787) = lu(k,1787) - lu(k,1069) * lu(k,1749) + lu(k,1809) = lu(k,1809) - lu(k,1061) * lu(k,1804) + lu(k,1810) = lu(k,1810) - lu(k,1062) * lu(k,1804) + lu(k,1821) = lu(k,1821) - lu(k,1063) * lu(k,1804) + lu(k,1825) = lu(k,1825) - lu(k,1064) * lu(k,1804) + lu(k,1827) = lu(k,1827) - lu(k,1065) * lu(k,1804) + lu(k,1830) = lu(k,1830) - lu(k,1066) * lu(k,1804) + lu(k,1834) = lu(k,1834) - lu(k,1067) * lu(k,1804) + lu(k,1837) = lu(k,1837) - lu(k,1068) * lu(k,1804) + lu(k,1839) = lu(k,1839) - lu(k,1069) * lu(k,1804) + lu(k,1899) = lu(k,1899) - lu(k,1061) * lu(k,1894) + lu(k,1900) = lu(k,1900) - lu(k,1062) * lu(k,1894) + lu(k,1912) = lu(k,1912) - lu(k,1063) * lu(k,1894) + lu(k,1917) = lu(k,1917) - lu(k,1064) * lu(k,1894) + lu(k,1919) = lu(k,1919) - lu(k,1065) * lu(k,1894) + lu(k,1922) = lu(k,1922) - lu(k,1066) * lu(k,1894) + lu(k,1926) = lu(k,1926) - lu(k,1067) * lu(k,1894) + lu(k,1929) = lu(k,1929) - lu(k,1068) * lu(k,1894) + lu(k,1931) = lu(k,1931) - lu(k,1069) * lu(k,1894) + lu(k,2089) = lu(k,2089) - lu(k,1061) * lu(k,2085) + lu(k,2090) = lu(k,2090) - lu(k,1062) * lu(k,2085) + lu(k,2101) = lu(k,2101) - lu(k,1063) * lu(k,2085) + lu(k,2107) = lu(k,2107) - lu(k,1064) * lu(k,2085) + lu(k,2109) = lu(k,2109) - lu(k,1065) * lu(k,2085) + lu(k,2112) = lu(k,2112) - lu(k,1066) * lu(k,2085) + lu(k,2116) = lu(k,2116) - lu(k,1067) * lu(k,2085) + lu(k,2119) = lu(k,2119) - lu(k,1068) * lu(k,2085) + lu(k,2121) = lu(k,2121) - lu(k,1069) * lu(k,2085) + lu(k,2229) = lu(k,2229) - lu(k,1061) * lu(k,2225) + lu(k,2230) = lu(k,2230) - lu(k,1062) * lu(k,2225) + lu(k,2241) = lu(k,2241) - lu(k,1063) * lu(k,2225) + lu(k,2246) = lu(k,2246) - lu(k,1064) * lu(k,2225) + lu(k,2248) = lu(k,2248) - lu(k,1065) * lu(k,2225) + lu(k,2251) = lu(k,2251) - lu(k,1066) * lu(k,2225) + lu(k,2255) = lu(k,2255) - lu(k,1067) * lu(k,2225) + lu(k,2258) = lu(k,2258) - lu(k,1068) * lu(k,2225) + lu(k,2260) = lu(k,2260) - lu(k,1069) * lu(k,2225) + lu(k,1074) = 1._r8 / lu(k,1074) + lu(k,1075) = lu(k,1075) * lu(k,1074) + lu(k,1076) = lu(k,1076) * lu(k,1074) + lu(k,1077) = lu(k,1077) * lu(k,1074) + lu(k,1078) = lu(k,1078) * lu(k,1074) + lu(k,1079) = lu(k,1079) * lu(k,1074) + lu(k,1080) = lu(k,1080) * lu(k,1074) + lu(k,1081) = lu(k,1081) * lu(k,1074) + lu(k,1082) = lu(k,1082) * lu(k,1074) + lu(k,1083) = lu(k,1083) * lu(k,1074) + lu(k,1084) = lu(k,1084) * lu(k,1074) + lu(k,1085) = lu(k,1085) * lu(k,1074) + lu(k,1192) = - lu(k,1075) * lu(k,1190) + lu(k,1196) = lu(k,1196) - lu(k,1076) * lu(k,1190) + lu(k,1198) = lu(k,1198) - lu(k,1077) * lu(k,1190) + lu(k,1199) = lu(k,1199) - lu(k,1078) * lu(k,1190) + lu(k,1200) = lu(k,1200) - lu(k,1079) * lu(k,1190) + lu(k,1201) = lu(k,1201) - lu(k,1080) * lu(k,1190) + lu(k,1203) = lu(k,1203) - lu(k,1081) * lu(k,1190) + lu(k,1204) = lu(k,1204) - lu(k,1082) * lu(k,1190) + lu(k,1205) = lu(k,1205) - lu(k,1083) * lu(k,1190) + lu(k,1206) = lu(k,1206) - lu(k,1084) * lu(k,1190) + lu(k,1207) = - lu(k,1085) * lu(k,1190) + lu(k,1376) = lu(k,1376) - lu(k,1075) * lu(k,1374) + lu(k,1381) = lu(k,1381) - lu(k,1076) * lu(k,1374) + lu(k,1387) = lu(k,1387) - lu(k,1077) * lu(k,1374) + lu(k,1389) = - lu(k,1078) * lu(k,1374) + lu(k,1390) = lu(k,1390) - lu(k,1079) * lu(k,1374) + lu(k,1391) = lu(k,1391) - lu(k,1080) * lu(k,1374) + lu(k,1393) = lu(k,1393) - lu(k,1081) * lu(k,1374) + lu(k,1394) = lu(k,1394) - lu(k,1082) * lu(k,1374) + lu(k,1395) = lu(k,1395) - lu(k,1083) * lu(k,1374) + lu(k,1396) = lu(k,1396) - lu(k,1084) * lu(k,1374) + lu(k,1397) = lu(k,1397) - lu(k,1085) * lu(k,1374) + lu(k,1670) = lu(k,1670) - lu(k,1075) * lu(k,1666) + lu(k,1677) = lu(k,1677) - lu(k,1076) * lu(k,1666) + lu(k,1684) = lu(k,1684) - lu(k,1077) * lu(k,1666) + lu(k,1689) = lu(k,1689) - lu(k,1078) * lu(k,1666) + lu(k,1690) = lu(k,1690) - lu(k,1079) * lu(k,1666) + lu(k,1692) = lu(k,1692) - lu(k,1080) * lu(k,1666) + lu(k,1695) = lu(k,1695) - lu(k,1081) * lu(k,1666) + lu(k,1696) = lu(k,1696) - lu(k,1082) * lu(k,1666) + lu(k,1697) = lu(k,1697) - lu(k,1083) * lu(k,1666) + lu(k,1699) = lu(k,1699) - lu(k,1084) * lu(k,1666) + lu(k,1702) = lu(k,1702) - lu(k,1085) * lu(k,1666) + lu(k,1754) = lu(k,1754) - lu(k,1075) * lu(k,1750) + lu(k,1761) = lu(k,1761) - lu(k,1076) * lu(k,1750) + lu(k,1768) = lu(k,1768) - lu(k,1077) * lu(k,1750) + lu(k,1772) = lu(k,1772) - lu(k,1078) * lu(k,1750) + lu(k,1773) = lu(k,1773) - lu(k,1079) * lu(k,1750) + lu(k,1775) = lu(k,1775) - lu(k,1080) * lu(k,1750) + lu(k,1778) = lu(k,1778) - lu(k,1081) * lu(k,1750) + lu(k,1779) = lu(k,1779) - lu(k,1082) * lu(k,1750) + lu(k,1780) = lu(k,1780) - lu(k,1083) * lu(k,1750) + lu(k,1782) = lu(k,1782) - lu(k,1084) * lu(k,1750) + lu(k,1785) = lu(k,1785) - lu(k,1085) * lu(k,1750) + lu(k,1809) = lu(k,1809) - lu(k,1075) * lu(k,1805) + lu(k,1815) = lu(k,1815) - lu(k,1076) * lu(k,1805) + lu(k,1821) = lu(k,1821) - lu(k,1077) * lu(k,1805) + lu(k,1824) = lu(k,1824) - lu(k,1078) * lu(k,1805) + lu(k,1825) = lu(k,1825) - lu(k,1079) * lu(k,1805) + lu(k,1827) = lu(k,1827) - lu(k,1080) * lu(k,1805) + lu(k,1830) = lu(k,1830) - lu(k,1081) * lu(k,1805) + lu(k,1831) = lu(k,1831) - lu(k,1082) * lu(k,1805) + lu(k,1832) = lu(k,1832) - lu(k,1083) * lu(k,1805) + lu(k,1834) = lu(k,1834) - lu(k,1084) * lu(k,1805) + lu(k,1837) = lu(k,1837) - lu(k,1085) * lu(k,1805) + lu(k,1899) = lu(k,1899) - lu(k,1075) * lu(k,1895) + lu(k,1906) = lu(k,1906) - lu(k,1076) * lu(k,1895) + lu(k,1912) = lu(k,1912) - lu(k,1077) * lu(k,1895) + lu(k,1916) = lu(k,1916) - lu(k,1078) * lu(k,1895) + lu(k,1917) = lu(k,1917) - lu(k,1079) * lu(k,1895) + lu(k,1919) = lu(k,1919) - lu(k,1080) * lu(k,1895) + lu(k,1922) = lu(k,1922) - lu(k,1081) * lu(k,1895) + lu(k,1923) = lu(k,1923) - lu(k,1082) * lu(k,1895) + lu(k,1924) = lu(k,1924) - lu(k,1083) * lu(k,1895) + lu(k,1926) = lu(k,1926) - lu(k,1084) * lu(k,1895) + lu(k,1929) = lu(k,1929) - lu(k,1085) * lu(k,1895) + end do + end subroutine lu_fac22 + subroutine lu_fac23( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1086) = 1._r8 / lu(k,1086) + lu(k,1087) = lu(k,1087) * lu(k,1086) + lu(k,1088) = lu(k,1088) * lu(k,1086) + lu(k,1089) = lu(k,1089) * lu(k,1086) + lu(k,1090) = lu(k,1090) * lu(k,1086) + lu(k,1091) = lu(k,1091) * lu(k,1086) + lu(k,1092) = lu(k,1092) * lu(k,1086) + lu(k,1093) = lu(k,1093) * lu(k,1086) + lu(k,1094) = lu(k,1094) * lu(k,1086) + lu(k,1151) = lu(k,1151) - lu(k,1087) * lu(k,1149) + lu(k,1156) = lu(k,1156) - lu(k,1088) * lu(k,1149) + lu(k,1157) = lu(k,1157) - lu(k,1089) * lu(k,1149) + lu(k,1159) = lu(k,1159) - lu(k,1090) * lu(k,1149) + lu(k,1160) = - lu(k,1091) * lu(k,1149) + lu(k,1161) = lu(k,1161) - lu(k,1092) * lu(k,1149) + lu(k,1164) = lu(k,1164) - lu(k,1093) * lu(k,1149) + lu(k,1166) = lu(k,1166) - lu(k,1094) * lu(k,1149) + lu(k,1329) = lu(k,1329) - lu(k,1087) * lu(k,1328) + lu(k,1335) = lu(k,1335) - lu(k,1088) * lu(k,1328) + lu(k,1337) = - lu(k,1089) * lu(k,1328) + lu(k,1339) = lu(k,1339) - lu(k,1090) * lu(k,1328) + lu(k,1340) = lu(k,1340) - lu(k,1091) * lu(k,1328) + lu(k,1341) = lu(k,1341) - lu(k,1092) * lu(k,1328) + lu(k,1344) = lu(k,1344) - lu(k,1093) * lu(k,1328) + lu(k,1347) = lu(k,1347) - lu(k,1094) * lu(k,1328) + lu(k,1670) = lu(k,1670) - lu(k,1087) * lu(k,1667) + lu(k,1684) = lu(k,1684) - lu(k,1088) * lu(k,1667) + lu(k,1689) = lu(k,1689) - lu(k,1089) * lu(k,1667) + lu(k,1692) = lu(k,1692) - lu(k,1090) * lu(k,1667) + lu(k,1694) = lu(k,1694) - lu(k,1091) * lu(k,1667) + lu(k,1695) = lu(k,1695) - lu(k,1092) * lu(k,1667) + lu(k,1699) = lu(k,1699) - lu(k,1093) * lu(k,1667) + lu(k,1704) = lu(k,1704) - lu(k,1094) * lu(k,1667) + lu(k,1754) = lu(k,1754) - lu(k,1087) * lu(k,1751) + lu(k,1768) = lu(k,1768) - lu(k,1088) * lu(k,1751) + lu(k,1772) = lu(k,1772) - lu(k,1089) * lu(k,1751) + lu(k,1775) = lu(k,1775) - lu(k,1090) * lu(k,1751) + lu(k,1777) = lu(k,1777) - lu(k,1091) * lu(k,1751) + lu(k,1778) = lu(k,1778) - lu(k,1092) * lu(k,1751) + lu(k,1782) = lu(k,1782) - lu(k,1093) * lu(k,1751) + lu(k,1787) = lu(k,1787) - lu(k,1094) * lu(k,1751) + lu(k,1809) = lu(k,1809) - lu(k,1087) * lu(k,1806) + lu(k,1821) = lu(k,1821) - lu(k,1088) * lu(k,1806) + lu(k,1824) = lu(k,1824) - lu(k,1089) * lu(k,1806) + lu(k,1827) = lu(k,1827) - lu(k,1090) * lu(k,1806) + lu(k,1829) = lu(k,1829) - lu(k,1091) * lu(k,1806) + lu(k,1830) = lu(k,1830) - lu(k,1092) * lu(k,1806) + lu(k,1834) = lu(k,1834) - lu(k,1093) * lu(k,1806) + lu(k,1839) = lu(k,1839) - lu(k,1094) * lu(k,1806) + lu(k,1899) = lu(k,1899) - lu(k,1087) * lu(k,1896) + lu(k,1912) = lu(k,1912) - lu(k,1088) * lu(k,1896) + lu(k,1916) = lu(k,1916) - lu(k,1089) * lu(k,1896) + lu(k,1919) = lu(k,1919) - lu(k,1090) * lu(k,1896) + lu(k,1921) = lu(k,1921) - lu(k,1091) * lu(k,1896) + lu(k,1922) = lu(k,1922) - lu(k,1092) * lu(k,1896) + lu(k,1926) = lu(k,1926) - lu(k,1093) * lu(k,1896) + lu(k,1931) = lu(k,1931) - lu(k,1094) * lu(k,1896) + lu(k,1993) = lu(k,1993) - lu(k,1087) * lu(k,1991) + lu(k,1994) = - lu(k,1088) * lu(k,1991) + lu(k,1999) = lu(k,1999) - lu(k,1089) * lu(k,1991) + lu(k,2002) = lu(k,2002) - lu(k,1090) * lu(k,1991) + lu(k,2004) = lu(k,2004) - lu(k,1091) * lu(k,1991) + lu(k,2005) = lu(k,2005) - lu(k,1092) * lu(k,1991) + lu(k,2009) = lu(k,2009) - lu(k,1093) * lu(k,1991) + lu(k,2014) = lu(k,2014) - lu(k,1094) * lu(k,1991) + lu(k,2089) = lu(k,2089) - lu(k,1087) * lu(k,2086) + lu(k,2101) = lu(k,2101) - lu(k,1088) * lu(k,2086) + lu(k,2106) = lu(k,2106) - lu(k,1089) * lu(k,2086) + lu(k,2109) = lu(k,2109) - lu(k,1090) * lu(k,2086) + lu(k,2111) = lu(k,2111) - lu(k,1091) * lu(k,2086) + lu(k,2112) = lu(k,2112) - lu(k,1092) * lu(k,2086) + lu(k,2116) = lu(k,2116) - lu(k,1093) * lu(k,2086) + lu(k,2121) = lu(k,2121) - lu(k,1094) * lu(k,2086) + lu(k,2229) = lu(k,2229) - lu(k,1087) * lu(k,2226) + lu(k,2241) = lu(k,2241) - lu(k,1088) * lu(k,2226) + lu(k,2245) = lu(k,2245) - lu(k,1089) * lu(k,2226) + lu(k,2248) = lu(k,2248) - lu(k,1090) * lu(k,2226) + lu(k,2250) = lu(k,2250) - lu(k,1091) * lu(k,2226) + lu(k,2251) = lu(k,2251) - lu(k,1092) * lu(k,2226) + lu(k,2255) = lu(k,2255) - lu(k,1093) * lu(k,2226) + lu(k,2260) = lu(k,2260) - lu(k,1094) * lu(k,2226) + lu(k,1097) = 1._r8 / lu(k,1097) + lu(k,1098) = lu(k,1098) * lu(k,1097) + lu(k,1099) = lu(k,1099) * lu(k,1097) + lu(k,1100) = lu(k,1100) * lu(k,1097) + lu(k,1101) = lu(k,1101) * lu(k,1097) + lu(k,1102) = lu(k,1102) * lu(k,1097) + lu(k,1111) = lu(k,1111) - lu(k,1098) * lu(k,1109) + lu(k,1115) = lu(k,1115) - lu(k,1099) * lu(k,1109) + lu(k,1116) = lu(k,1116) - lu(k,1100) * lu(k,1109) + lu(k,1120) = lu(k,1120) - lu(k,1101) * lu(k,1109) + lu(k,1121) = lu(k,1121) - lu(k,1102) * lu(k,1109) + lu(k,1151) = lu(k,1151) - lu(k,1098) * lu(k,1150) + lu(k,1158) = lu(k,1158) - lu(k,1099) * lu(k,1150) + lu(k,1159) = lu(k,1159) - lu(k,1100) * lu(k,1150) + lu(k,1164) = lu(k,1164) - lu(k,1101) * lu(k,1150) + lu(k,1165) = - lu(k,1102) * lu(k,1150) + lu(k,1172) = lu(k,1172) - lu(k,1098) * lu(k,1171) + lu(k,1177) = lu(k,1177) - lu(k,1099) * lu(k,1171) + lu(k,1178) = lu(k,1178) - lu(k,1100) * lu(k,1171) + lu(k,1183) = lu(k,1183) - lu(k,1101) * lu(k,1171) + lu(k,1184) = lu(k,1184) - lu(k,1102) * lu(k,1171) + lu(k,1192) = lu(k,1192) - lu(k,1098) * lu(k,1191) + lu(k,1200) = lu(k,1200) - lu(k,1099) * lu(k,1191) + lu(k,1201) = lu(k,1201) - lu(k,1100) * lu(k,1191) + lu(k,1206) = lu(k,1206) - lu(k,1101) * lu(k,1191) + lu(k,1207) = lu(k,1207) - lu(k,1102) * lu(k,1191) + lu(k,1251) = lu(k,1251) - lu(k,1098) * lu(k,1250) + lu(k,1263) = lu(k,1263) - lu(k,1099) * lu(k,1250) + lu(k,1264) = lu(k,1264) - lu(k,1100) * lu(k,1250) + lu(k,1269) = lu(k,1269) - lu(k,1101) * lu(k,1250) + lu(k,1270) = lu(k,1270) - lu(k,1102) * lu(k,1250) + lu(k,1283) = lu(k,1283) - lu(k,1098) * lu(k,1282) + lu(k,1295) = lu(k,1295) - lu(k,1099) * lu(k,1282) + lu(k,1296) = lu(k,1296) - lu(k,1100) * lu(k,1282) + lu(k,1301) = lu(k,1301) - lu(k,1101) * lu(k,1282) + lu(k,1302) = lu(k,1302) - lu(k,1102) * lu(k,1282) + lu(k,1308) = lu(k,1308) - lu(k,1098) * lu(k,1307) + lu(k,1316) = lu(k,1316) - lu(k,1099) * lu(k,1307) + lu(k,1317) = lu(k,1317) - lu(k,1100) * lu(k,1307) + lu(k,1322) = lu(k,1322) - lu(k,1101) * lu(k,1307) + lu(k,1323) = - lu(k,1102) * lu(k,1307) + lu(k,1376) = lu(k,1376) - lu(k,1098) * lu(k,1375) + lu(k,1390) = lu(k,1390) - lu(k,1099) * lu(k,1375) + lu(k,1391) = lu(k,1391) - lu(k,1100) * lu(k,1375) + lu(k,1396) = lu(k,1396) - lu(k,1101) * lu(k,1375) + lu(k,1397) = lu(k,1397) - lu(k,1102) * lu(k,1375) + lu(k,1670) = lu(k,1670) - lu(k,1098) * lu(k,1668) + lu(k,1690) = lu(k,1690) - lu(k,1099) * lu(k,1668) + lu(k,1692) = lu(k,1692) - lu(k,1100) * lu(k,1668) + lu(k,1699) = lu(k,1699) - lu(k,1101) * lu(k,1668) + lu(k,1702) = lu(k,1702) - lu(k,1102) * lu(k,1668) + lu(k,1754) = lu(k,1754) - lu(k,1098) * lu(k,1752) + lu(k,1773) = lu(k,1773) - lu(k,1099) * lu(k,1752) + lu(k,1775) = lu(k,1775) - lu(k,1100) * lu(k,1752) + lu(k,1782) = lu(k,1782) - lu(k,1101) * lu(k,1752) + lu(k,1785) = lu(k,1785) - lu(k,1102) * lu(k,1752) + lu(k,1809) = lu(k,1809) - lu(k,1098) * lu(k,1807) + lu(k,1825) = lu(k,1825) - lu(k,1099) * lu(k,1807) + lu(k,1827) = lu(k,1827) - lu(k,1100) * lu(k,1807) + lu(k,1834) = lu(k,1834) - lu(k,1101) * lu(k,1807) + lu(k,1837) = lu(k,1837) - lu(k,1102) * lu(k,1807) + lu(k,1899) = lu(k,1899) - lu(k,1098) * lu(k,1897) + lu(k,1917) = lu(k,1917) - lu(k,1099) * lu(k,1897) + lu(k,1919) = lu(k,1919) - lu(k,1100) * lu(k,1897) + lu(k,1926) = lu(k,1926) - lu(k,1101) * lu(k,1897) + lu(k,1929) = lu(k,1929) - lu(k,1102) * lu(k,1897) + lu(k,1993) = lu(k,1993) - lu(k,1098) * lu(k,1992) + lu(k,2000) = lu(k,2000) - lu(k,1099) * lu(k,1992) + lu(k,2002) = lu(k,2002) - lu(k,1100) * lu(k,1992) + lu(k,2009) = lu(k,2009) - lu(k,1101) * lu(k,1992) + lu(k,2012) = lu(k,2012) - lu(k,1102) * lu(k,1992) + lu(k,2089) = lu(k,2089) - lu(k,1098) * lu(k,2087) + lu(k,2107) = lu(k,2107) - lu(k,1099) * lu(k,2087) + lu(k,2109) = lu(k,2109) - lu(k,1100) * lu(k,2087) + lu(k,2116) = lu(k,2116) - lu(k,1101) * lu(k,2087) + lu(k,2119) = lu(k,2119) - lu(k,1102) * lu(k,2087) + lu(k,2229) = lu(k,2229) - lu(k,1098) * lu(k,2227) + lu(k,2246) = lu(k,2246) - lu(k,1099) * lu(k,2227) + lu(k,2248) = lu(k,2248) - lu(k,1100) * lu(k,2227) + lu(k,2255) = lu(k,2255) - lu(k,1101) * lu(k,2227) + lu(k,2258) = lu(k,2258) - lu(k,1102) * lu(k,2227) + lu(k,1110) = 1._r8 / lu(k,1110) + lu(k,1111) = lu(k,1111) * lu(k,1110) + lu(k,1112) = lu(k,1112) * lu(k,1110) + lu(k,1113) = lu(k,1113) * lu(k,1110) + lu(k,1114) = lu(k,1114) * lu(k,1110) + lu(k,1115) = lu(k,1115) * lu(k,1110) + lu(k,1116) = lu(k,1116) * lu(k,1110) + lu(k,1117) = lu(k,1117) * lu(k,1110) + lu(k,1118) = lu(k,1118) * lu(k,1110) + lu(k,1119) = lu(k,1119) * lu(k,1110) + lu(k,1120) = lu(k,1120) * lu(k,1110) + lu(k,1121) = lu(k,1121) * lu(k,1110) + lu(k,1122) = lu(k,1122) * lu(k,1110) + lu(k,1670) = lu(k,1670) - lu(k,1111) * lu(k,1669) + lu(k,1671) = lu(k,1671) - lu(k,1112) * lu(k,1669) + lu(k,1684) = lu(k,1684) - lu(k,1113) * lu(k,1669) + lu(k,1689) = lu(k,1689) - lu(k,1114) * lu(k,1669) + lu(k,1690) = lu(k,1690) - lu(k,1115) * lu(k,1669) + lu(k,1692) = lu(k,1692) - lu(k,1116) * lu(k,1669) + lu(k,1695) = lu(k,1695) - lu(k,1117) * lu(k,1669) + lu(k,1696) = lu(k,1696) - lu(k,1118) * lu(k,1669) + lu(k,1697) = lu(k,1697) - lu(k,1119) * lu(k,1669) + lu(k,1699) = lu(k,1699) - lu(k,1120) * lu(k,1669) + lu(k,1702) = lu(k,1702) - lu(k,1121) * lu(k,1669) + lu(k,1704) = lu(k,1704) - lu(k,1122) * lu(k,1669) + lu(k,1754) = lu(k,1754) - lu(k,1111) * lu(k,1753) + lu(k,1755) = lu(k,1755) - lu(k,1112) * lu(k,1753) + lu(k,1768) = lu(k,1768) - lu(k,1113) * lu(k,1753) + lu(k,1772) = lu(k,1772) - lu(k,1114) * lu(k,1753) + lu(k,1773) = lu(k,1773) - lu(k,1115) * lu(k,1753) + lu(k,1775) = lu(k,1775) - lu(k,1116) * lu(k,1753) + lu(k,1778) = lu(k,1778) - lu(k,1117) * lu(k,1753) + lu(k,1779) = lu(k,1779) - lu(k,1118) * lu(k,1753) + lu(k,1780) = lu(k,1780) - lu(k,1119) * lu(k,1753) + lu(k,1782) = lu(k,1782) - lu(k,1120) * lu(k,1753) + lu(k,1785) = lu(k,1785) - lu(k,1121) * lu(k,1753) + lu(k,1787) = lu(k,1787) - lu(k,1122) * lu(k,1753) + lu(k,1809) = lu(k,1809) - lu(k,1111) * lu(k,1808) + lu(k,1810) = lu(k,1810) - lu(k,1112) * lu(k,1808) + lu(k,1821) = lu(k,1821) - lu(k,1113) * lu(k,1808) + lu(k,1824) = lu(k,1824) - lu(k,1114) * lu(k,1808) + lu(k,1825) = lu(k,1825) - lu(k,1115) * lu(k,1808) + lu(k,1827) = lu(k,1827) - lu(k,1116) * lu(k,1808) + lu(k,1830) = lu(k,1830) - lu(k,1117) * lu(k,1808) + lu(k,1831) = lu(k,1831) - lu(k,1118) * lu(k,1808) + lu(k,1832) = lu(k,1832) - lu(k,1119) * lu(k,1808) + lu(k,1834) = lu(k,1834) - lu(k,1120) * lu(k,1808) + lu(k,1837) = lu(k,1837) - lu(k,1121) * lu(k,1808) + lu(k,1839) = lu(k,1839) - lu(k,1122) * lu(k,1808) + lu(k,1899) = lu(k,1899) - lu(k,1111) * lu(k,1898) + lu(k,1900) = lu(k,1900) - lu(k,1112) * lu(k,1898) + lu(k,1912) = lu(k,1912) - lu(k,1113) * lu(k,1898) + lu(k,1916) = lu(k,1916) - lu(k,1114) * lu(k,1898) + lu(k,1917) = lu(k,1917) - lu(k,1115) * lu(k,1898) + lu(k,1919) = lu(k,1919) - lu(k,1116) * lu(k,1898) + lu(k,1922) = lu(k,1922) - lu(k,1117) * lu(k,1898) + lu(k,1923) = lu(k,1923) - lu(k,1118) * lu(k,1898) + lu(k,1924) = lu(k,1924) - lu(k,1119) * lu(k,1898) + lu(k,1926) = lu(k,1926) - lu(k,1120) * lu(k,1898) + lu(k,1929) = lu(k,1929) - lu(k,1121) * lu(k,1898) + lu(k,1931) = lu(k,1931) - lu(k,1122) * lu(k,1898) + lu(k,2089) = lu(k,2089) - lu(k,1111) * lu(k,2088) + lu(k,2090) = lu(k,2090) - lu(k,1112) * lu(k,2088) + lu(k,2101) = lu(k,2101) - lu(k,1113) * lu(k,2088) + lu(k,2106) = lu(k,2106) - lu(k,1114) * lu(k,2088) + lu(k,2107) = lu(k,2107) - lu(k,1115) * lu(k,2088) + lu(k,2109) = lu(k,2109) - lu(k,1116) * lu(k,2088) + lu(k,2112) = lu(k,2112) - lu(k,1117) * lu(k,2088) + lu(k,2113) = lu(k,2113) - lu(k,1118) * lu(k,2088) + lu(k,2114) = lu(k,2114) - lu(k,1119) * lu(k,2088) + lu(k,2116) = lu(k,2116) - lu(k,1120) * lu(k,2088) + lu(k,2119) = lu(k,2119) - lu(k,1121) * lu(k,2088) + lu(k,2121) = lu(k,2121) - lu(k,1122) * lu(k,2088) + lu(k,2229) = lu(k,2229) - lu(k,1111) * lu(k,2228) + lu(k,2230) = lu(k,2230) - lu(k,1112) * lu(k,2228) + lu(k,2241) = lu(k,2241) - lu(k,1113) * lu(k,2228) + lu(k,2245) = lu(k,2245) - lu(k,1114) * lu(k,2228) + lu(k,2246) = lu(k,2246) - lu(k,1115) * lu(k,2228) + lu(k,2248) = lu(k,2248) - lu(k,1116) * lu(k,2228) + lu(k,2251) = lu(k,2251) - lu(k,1117) * lu(k,2228) + lu(k,2252) = lu(k,2252) - lu(k,1118) * lu(k,2228) + lu(k,2253) = lu(k,2253) - lu(k,1119) * lu(k,2228) + lu(k,2255) = lu(k,2255) - lu(k,1120) * lu(k,2228) + lu(k,2258) = lu(k,2258) - lu(k,1121) * lu(k,2228) + lu(k,2260) = lu(k,2260) - lu(k,1122) * lu(k,2228) + lu(k,1124) = 1._r8 / lu(k,1124) + lu(k,1125) = lu(k,1125) * lu(k,1124) + lu(k,1126) = lu(k,1126) * lu(k,1124) + lu(k,1127) = lu(k,1127) * lu(k,1124) + lu(k,1159) = lu(k,1159) - lu(k,1125) * lu(k,1151) + lu(k,1164) = lu(k,1164) - lu(k,1126) * lu(k,1151) + lu(k,1165) = lu(k,1165) - lu(k,1127) * lu(k,1151) + lu(k,1178) = lu(k,1178) - lu(k,1125) * lu(k,1172) + lu(k,1183) = lu(k,1183) - lu(k,1126) * lu(k,1172) + lu(k,1184) = lu(k,1184) - lu(k,1127) * lu(k,1172) + lu(k,1201) = lu(k,1201) - lu(k,1125) * lu(k,1192) + lu(k,1206) = lu(k,1206) - lu(k,1126) * lu(k,1192) + lu(k,1207) = lu(k,1207) - lu(k,1127) * lu(k,1192) + lu(k,1216) = lu(k,1216) - lu(k,1125) * lu(k,1209) + lu(k,1217) = lu(k,1217) - lu(k,1126) * lu(k,1209) + lu(k,1218) = lu(k,1218) - lu(k,1127) * lu(k,1209) + lu(k,1225) = lu(k,1225) - lu(k,1125) * lu(k,1221) + lu(k,1227) = lu(k,1227) - lu(k,1126) * lu(k,1221) + lu(k,1228) = - lu(k,1127) * lu(k,1221) + lu(k,1264) = lu(k,1264) - lu(k,1125) * lu(k,1251) + lu(k,1269) = lu(k,1269) - lu(k,1126) * lu(k,1251) + lu(k,1270) = lu(k,1270) - lu(k,1127) * lu(k,1251) + lu(k,1296) = lu(k,1296) - lu(k,1125) * lu(k,1283) + lu(k,1301) = lu(k,1301) - lu(k,1126) * lu(k,1283) + lu(k,1302) = lu(k,1302) - lu(k,1127) * lu(k,1283) + lu(k,1317) = lu(k,1317) - lu(k,1125) * lu(k,1308) + lu(k,1322) = lu(k,1322) - lu(k,1126) * lu(k,1308) + lu(k,1323) = lu(k,1323) - lu(k,1127) * lu(k,1308) + lu(k,1339) = lu(k,1339) - lu(k,1125) * lu(k,1329) + lu(k,1344) = lu(k,1344) - lu(k,1126) * lu(k,1329) + lu(k,1345) = lu(k,1345) - lu(k,1127) * lu(k,1329) + lu(k,1359) = lu(k,1359) - lu(k,1125) * lu(k,1352) + lu(k,1364) = lu(k,1364) - lu(k,1126) * lu(k,1352) + lu(k,1365) = lu(k,1365) - lu(k,1127) * lu(k,1352) + lu(k,1391) = lu(k,1391) - lu(k,1125) * lu(k,1376) + lu(k,1396) = lu(k,1396) - lu(k,1126) * lu(k,1376) + lu(k,1397) = lu(k,1397) - lu(k,1127) * lu(k,1376) + lu(k,1420) = lu(k,1420) - lu(k,1125) * lu(k,1415) + lu(k,1421) = lu(k,1421) - lu(k,1126) * lu(k,1415) + lu(k,1423) = lu(k,1423) - lu(k,1127) * lu(k,1415) + lu(k,1436) = lu(k,1436) - lu(k,1125) * lu(k,1429) + lu(k,1440) = lu(k,1440) - lu(k,1126) * lu(k,1429) + lu(k,1442) = lu(k,1442) - lu(k,1127) * lu(k,1429) + lu(k,1488) = lu(k,1488) - lu(k,1125) * lu(k,1480) + lu(k,1494) = lu(k,1494) - lu(k,1126) * lu(k,1480) + lu(k,1497) = lu(k,1497) - lu(k,1127) * lu(k,1480) + lu(k,1692) = lu(k,1692) - lu(k,1125) * lu(k,1670) + lu(k,1699) = lu(k,1699) - lu(k,1126) * lu(k,1670) + lu(k,1702) = lu(k,1702) - lu(k,1127) * lu(k,1670) + lu(k,1775) = lu(k,1775) - lu(k,1125) * lu(k,1754) + lu(k,1782) = lu(k,1782) - lu(k,1126) * lu(k,1754) + lu(k,1785) = lu(k,1785) - lu(k,1127) * lu(k,1754) + lu(k,1827) = lu(k,1827) - lu(k,1125) * lu(k,1809) + lu(k,1834) = lu(k,1834) - lu(k,1126) * lu(k,1809) + lu(k,1837) = lu(k,1837) - lu(k,1127) * lu(k,1809) + lu(k,1919) = lu(k,1919) - lu(k,1125) * lu(k,1899) + lu(k,1926) = lu(k,1926) - lu(k,1126) * lu(k,1899) + lu(k,1929) = lu(k,1929) - lu(k,1127) * lu(k,1899) + lu(k,1963) = lu(k,1963) - lu(k,1125) * lu(k,1951) + lu(k,1970) = lu(k,1970) - lu(k,1126) * lu(k,1951) + lu(k,1973) = lu(k,1973) - lu(k,1127) * lu(k,1951) + lu(k,2002) = lu(k,2002) - lu(k,1125) * lu(k,1993) + lu(k,2009) = lu(k,2009) - lu(k,1126) * lu(k,1993) + lu(k,2012) = lu(k,2012) - lu(k,1127) * lu(k,1993) + lu(k,2109) = lu(k,2109) - lu(k,1125) * lu(k,2089) + lu(k,2116) = lu(k,2116) - lu(k,1126) * lu(k,2089) + lu(k,2119) = lu(k,2119) - lu(k,1127) * lu(k,2089) + lu(k,2187) = lu(k,2187) - lu(k,1125) * lu(k,2178) + lu(k,2194) = lu(k,2194) - lu(k,1126) * lu(k,2178) + lu(k,2197) = lu(k,2197) - lu(k,1127) * lu(k,2178) + lu(k,2248) = lu(k,2248) - lu(k,1125) * lu(k,2229) + lu(k,2255) = lu(k,2255) - lu(k,1126) * lu(k,2229) + lu(k,2258) = lu(k,2258) - lu(k,1127) * lu(k,2229) + lu(k,1130) = 1._r8 / lu(k,1130) + lu(k,1131) = lu(k,1131) * lu(k,1130) + lu(k,1132) = lu(k,1132) * lu(k,1130) + lu(k,1133) = lu(k,1133) * lu(k,1130) + lu(k,1134) = lu(k,1134) * lu(k,1130) + lu(k,1135) = lu(k,1135) * lu(k,1130) + lu(k,1136) = lu(k,1136) * lu(k,1130) + lu(k,1137) = lu(k,1137) * lu(k,1130) + lu(k,1138) = lu(k,1138) * lu(k,1130) + lu(k,1139) = lu(k,1139) * lu(k,1130) + lu(k,1140) = lu(k,1140) * lu(k,1130) + lu(k,1153) = lu(k,1153) - lu(k,1131) * lu(k,1152) + lu(k,1155) = - lu(k,1132) * lu(k,1152) + lu(k,1156) = lu(k,1156) - lu(k,1133) * lu(k,1152) + lu(k,1158) = lu(k,1158) - lu(k,1134) * lu(k,1152) + lu(k,1159) = lu(k,1159) - lu(k,1135) * lu(k,1152) + lu(k,1161) = lu(k,1161) - lu(k,1136) * lu(k,1152) + lu(k,1162) = - lu(k,1137) * lu(k,1152) + lu(k,1163) = lu(k,1163) - lu(k,1138) * lu(k,1152) + lu(k,1164) = lu(k,1164) - lu(k,1139) * lu(k,1152) + lu(k,1166) = lu(k,1166) - lu(k,1140) * lu(k,1152) + lu(k,1672) = lu(k,1672) - lu(k,1131) * lu(k,1671) + lu(k,1677) = lu(k,1677) - lu(k,1132) * lu(k,1671) + lu(k,1684) = lu(k,1684) - lu(k,1133) * lu(k,1671) + lu(k,1690) = lu(k,1690) - lu(k,1134) * lu(k,1671) + lu(k,1692) = lu(k,1692) - lu(k,1135) * lu(k,1671) + lu(k,1695) = lu(k,1695) - lu(k,1136) * lu(k,1671) + lu(k,1696) = lu(k,1696) - lu(k,1137) * lu(k,1671) + lu(k,1697) = lu(k,1697) - lu(k,1138) * lu(k,1671) + lu(k,1699) = lu(k,1699) - lu(k,1139) * lu(k,1671) + lu(k,1704) = lu(k,1704) - lu(k,1140) * lu(k,1671) + lu(k,1756) = lu(k,1756) - lu(k,1131) * lu(k,1755) + lu(k,1761) = lu(k,1761) - lu(k,1132) * lu(k,1755) + lu(k,1768) = lu(k,1768) - lu(k,1133) * lu(k,1755) + lu(k,1773) = lu(k,1773) - lu(k,1134) * lu(k,1755) + lu(k,1775) = lu(k,1775) - lu(k,1135) * lu(k,1755) + lu(k,1778) = lu(k,1778) - lu(k,1136) * lu(k,1755) + lu(k,1779) = lu(k,1779) - lu(k,1137) * lu(k,1755) + lu(k,1780) = lu(k,1780) - lu(k,1138) * lu(k,1755) + lu(k,1782) = lu(k,1782) - lu(k,1139) * lu(k,1755) + lu(k,1787) = lu(k,1787) - lu(k,1140) * lu(k,1755) + lu(k,1811) = lu(k,1811) - lu(k,1131) * lu(k,1810) + lu(k,1815) = lu(k,1815) - lu(k,1132) * lu(k,1810) + lu(k,1821) = lu(k,1821) - lu(k,1133) * lu(k,1810) + lu(k,1825) = lu(k,1825) - lu(k,1134) * lu(k,1810) + lu(k,1827) = lu(k,1827) - lu(k,1135) * lu(k,1810) + lu(k,1830) = lu(k,1830) - lu(k,1136) * lu(k,1810) + lu(k,1831) = lu(k,1831) - lu(k,1137) * lu(k,1810) + lu(k,1832) = lu(k,1832) - lu(k,1138) * lu(k,1810) + lu(k,1834) = lu(k,1834) - lu(k,1139) * lu(k,1810) + lu(k,1839) = lu(k,1839) - lu(k,1140) * lu(k,1810) + lu(k,1901) = lu(k,1901) - lu(k,1131) * lu(k,1900) + lu(k,1906) = lu(k,1906) - lu(k,1132) * lu(k,1900) + lu(k,1912) = lu(k,1912) - lu(k,1133) * lu(k,1900) + lu(k,1917) = lu(k,1917) - lu(k,1134) * lu(k,1900) + lu(k,1919) = lu(k,1919) - lu(k,1135) * lu(k,1900) + lu(k,1922) = lu(k,1922) - lu(k,1136) * lu(k,1900) + lu(k,1923) = lu(k,1923) - lu(k,1137) * lu(k,1900) + lu(k,1924) = lu(k,1924) - lu(k,1138) * lu(k,1900) + lu(k,1926) = lu(k,1926) - lu(k,1139) * lu(k,1900) + lu(k,1931) = lu(k,1931) - lu(k,1140) * lu(k,1900) + lu(k,2091) = lu(k,2091) - lu(k,1131) * lu(k,2090) + lu(k,2095) = lu(k,2095) - lu(k,1132) * lu(k,2090) + lu(k,2101) = lu(k,2101) - lu(k,1133) * lu(k,2090) + lu(k,2107) = lu(k,2107) - lu(k,1134) * lu(k,2090) + lu(k,2109) = lu(k,2109) - lu(k,1135) * lu(k,2090) + lu(k,2112) = lu(k,2112) - lu(k,1136) * lu(k,2090) + lu(k,2113) = lu(k,2113) - lu(k,1137) * lu(k,2090) + lu(k,2114) = lu(k,2114) - lu(k,1138) * lu(k,2090) + lu(k,2116) = lu(k,2116) - lu(k,1139) * lu(k,2090) + lu(k,2121) = lu(k,2121) - lu(k,1140) * lu(k,2090) + lu(k,2231) = lu(k,2231) - lu(k,1131) * lu(k,2230) + lu(k,2234) = lu(k,2234) - lu(k,1132) * lu(k,2230) + lu(k,2241) = lu(k,2241) - lu(k,1133) * lu(k,2230) + lu(k,2246) = lu(k,2246) - lu(k,1134) * lu(k,2230) + lu(k,2248) = lu(k,2248) - lu(k,1135) * lu(k,2230) + lu(k,2251) = lu(k,2251) - lu(k,1136) * lu(k,2230) + lu(k,2252) = lu(k,2252) - lu(k,1137) * lu(k,2230) + lu(k,2253) = lu(k,2253) - lu(k,1138) * lu(k,2230) + lu(k,2255) = lu(k,2255) - lu(k,1139) * lu(k,2230) + lu(k,2260) = lu(k,2260) - lu(k,1140) * lu(k,2230) + end do + end subroutine lu_fac23 + subroutine lu_fac24( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1141) = 1._r8 / lu(k,1141) + lu(k,1142) = lu(k,1142) * lu(k,1141) + lu(k,1143) = lu(k,1143) * lu(k,1141) + lu(k,1144) = lu(k,1144) * lu(k,1141) + lu(k,1145) = lu(k,1145) * lu(k,1141) + lu(k,1146) = lu(k,1146) * lu(k,1141) + lu(k,1155) = lu(k,1155) - lu(k,1142) * lu(k,1153) + lu(k,1156) = lu(k,1156) - lu(k,1143) * lu(k,1153) + lu(k,1158) = lu(k,1158) - lu(k,1144) * lu(k,1153) + lu(k,1159) = lu(k,1159) - lu(k,1145) * lu(k,1153) + lu(k,1164) = lu(k,1164) - lu(k,1146) * lu(k,1153) + lu(k,1175) = lu(k,1175) - lu(k,1142) * lu(k,1173) + lu(k,1176) = lu(k,1176) - lu(k,1143) * lu(k,1173) + lu(k,1177) = lu(k,1177) - lu(k,1144) * lu(k,1173) + lu(k,1178) = lu(k,1178) - lu(k,1145) * lu(k,1173) + lu(k,1183) = lu(k,1183) - lu(k,1146) * lu(k,1173) + lu(k,1256) = - lu(k,1142) * lu(k,1252) + lu(k,1261) = lu(k,1261) - lu(k,1143) * lu(k,1252) + lu(k,1263) = lu(k,1263) - lu(k,1144) * lu(k,1252) + lu(k,1264) = lu(k,1264) - lu(k,1145) * lu(k,1252) + lu(k,1269) = lu(k,1269) - lu(k,1146) * lu(k,1252) + lu(k,1288) = lu(k,1288) - lu(k,1142) * lu(k,1284) + lu(k,1293) = lu(k,1293) - lu(k,1143) * lu(k,1284) + lu(k,1295) = lu(k,1295) - lu(k,1144) * lu(k,1284) + lu(k,1296) = lu(k,1296) - lu(k,1145) * lu(k,1284) + lu(k,1301) = lu(k,1301) - lu(k,1146) * lu(k,1284) + lu(k,1311) = lu(k,1311) - lu(k,1142) * lu(k,1309) + lu(k,1314) = lu(k,1314) - lu(k,1143) * lu(k,1309) + lu(k,1316) = lu(k,1316) - lu(k,1144) * lu(k,1309) + lu(k,1317) = lu(k,1317) - lu(k,1145) * lu(k,1309) + lu(k,1322) = lu(k,1322) - lu(k,1146) * lu(k,1309) + lu(k,1331) = lu(k,1331) - lu(k,1142) * lu(k,1330) + lu(k,1335) = lu(k,1335) - lu(k,1143) * lu(k,1330) + lu(k,1338) = lu(k,1338) - lu(k,1144) * lu(k,1330) + lu(k,1339) = lu(k,1339) - lu(k,1145) * lu(k,1330) + lu(k,1344) = lu(k,1344) - lu(k,1146) * lu(k,1330) + lu(k,1354) = - lu(k,1142) * lu(k,1353) + lu(k,1356) = lu(k,1356) - lu(k,1143) * lu(k,1353) + lu(k,1358) = lu(k,1358) - lu(k,1144) * lu(k,1353) + lu(k,1359) = lu(k,1359) - lu(k,1145) * lu(k,1353) + lu(k,1364) = lu(k,1364) - lu(k,1146) * lu(k,1353) + lu(k,1381) = lu(k,1381) - lu(k,1142) * lu(k,1377) + lu(k,1387) = lu(k,1387) - lu(k,1143) * lu(k,1377) + lu(k,1390) = lu(k,1390) - lu(k,1144) * lu(k,1377) + lu(k,1391) = lu(k,1391) - lu(k,1145) * lu(k,1377) + lu(k,1396) = lu(k,1396) - lu(k,1146) * lu(k,1377) + lu(k,1677) = lu(k,1677) - lu(k,1142) * lu(k,1672) + lu(k,1684) = lu(k,1684) - lu(k,1143) * lu(k,1672) + lu(k,1690) = lu(k,1690) - lu(k,1144) * lu(k,1672) + lu(k,1692) = lu(k,1692) - lu(k,1145) * lu(k,1672) + lu(k,1699) = lu(k,1699) - lu(k,1146) * lu(k,1672) + lu(k,1761) = lu(k,1761) - lu(k,1142) * lu(k,1756) + lu(k,1768) = lu(k,1768) - lu(k,1143) * lu(k,1756) + lu(k,1773) = lu(k,1773) - lu(k,1144) * lu(k,1756) + lu(k,1775) = lu(k,1775) - lu(k,1145) * lu(k,1756) + lu(k,1782) = lu(k,1782) - lu(k,1146) * lu(k,1756) + lu(k,1815) = lu(k,1815) - lu(k,1142) * lu(k,1811) + lu(k,1821) = lu(k,1821) - lu(k,1143) * lu(k,1811) + lu(k,1825) = lu(k,1825) - lu(k,1144) * lu(k,1811) + lu(k,1827) = lu(k,1827) - lu(k,1145) * lu(k,1811) + lu(k,1834) = lu(k,1834) - lu(k,1146) * lu(k,1811) + lu(k,1906) = lu(k,1906) - lu(k,1142) * lu(k,1901) + lu(k,1912) = lu(k,1912) - lu(k,1143) * lu(k,1901) + lu(k,1917) = lu(k,1917) - lu(k,1144) * lu(k,1901) + lu(k,1919) = lu(k,1919) - lu(k,1145) * lu(k,1901) + lu(k,1926) = lu(k,1926) - lu(k,1146) * lu(k,1901) + lu(k,1953) = lu(k,1953) - lu(k,1142) * lu(k,1952) + lu(k,1956) = lu(k,1956) - lu(k,1143) * lu(k,1952) + lu(k,1961) = lu(k,1961) - lu(k,1144) * lu(k,1952) + lu(k,1963) = lu(k,1963) - lu(k,1145) * lu(k,1952) + lu(k,1970) = lu(k,1970) - lu(k,1146) * lu(k,1952) + lu(k,2095) = lu(k,2095) - lu(k,1142) * lu(k,2091) + lu(k,2101) = lu(k,2101) - lu(k,1143) * lu(k,2091) + lu(k,2107) = lu(k,2107) - lu(k,1144) * lu(k,2091) + lu(k,2109) = lu(k,2109) - lu(k,1145) * lu(k,2091) + lu(k,2116) = lu(k,2116) - lu(k,1146) * lu(k,2091) + lu(k,2234) = lu(k,2234) - lu(k,1142) * lu(k,2231) + lu(k,2241) = lu(k,2241) - lu(k,1143) * lu(k,2231) + lu(k,2246) = lu(k,2246) - lu(k,1144) * lu(k,2231) + lu(k,2248) = lu(k,2248) - lu(k,1145) * lu(k,2231) + lu(k,2255) = lu(k,2255) - lu(k,1146) * lu(k,2231) + lu(k,1154) = 1._r8 / lu(k,1154) + lu(k,1155) = lu(k,1155) * lu(k,1154) + lu(k,1156) = lu(k,1156) * lu(k,1154) + lu(k,1157) = lu(k,1157) * lu(k,1154) + lu(k,1158) = lu(k,1158) * lu(k,1154) + lu(k,1159) = lu(k,1159) * lu(k,1154) + lu(k,1160) = lu(k,1160) * lu(k,1154) + lu(k,1161) = lu(k,1161) * lu(k,1154) + lu(k,1162) = lu(k,1162) * lu(k,1154) + lu(k,1163) = lu(k,1163) * lu(k,1154) + lu(k,1164) = lu(k,1164) * lu(k,1154) + lu(k,1165) = lu(k,1165) * lu(k,1154) + lu(k,1166) = lu(k,1166) * lu(k,1154) + lu(k,1256) = lu(k,1256) - lu(k,1155) * lu(k,1253) + lu(k,1261) = lu(k,1261) - lu(k,1156) * lu(k,1253) + lu(k,1262) = lu(k,1262) - lu(k,1157) * lu(k,1253) + lu(k,1263) = lu(k,1263) - lu(k,1158) * lu(k,1253) + lu(k,1264) = lu(k,1264) - lu(k,1159) * lu(k,1253) + lu(k,1265) = lu(k,1265) - lu(k,1160) * lu(k,1253) + lu(k,1266) = lu(k,1266) - lu(k,1161) * lu(k,1253) + lu(k,1267) = lu(k,1267) - lu(k,1162) * lu(k,1253) + lu(k,1268) = lu(k,1268) - lu(k,1163) * lu(k,1253) + lu(k,1269) = lu(k,1269) - lu(k,1164) * lu(k,1253) + lu(k,1270) = lu(k,1270) - lu(k,1165) * lu(k,1253) + lu(k,1272) = - lu(k,1166) * lu(k,1253) + lu(k,1288) = lu(k,1288) - lu(k,1155) * lu(k,1285) + lu(k,1293) = lu(k,1293) - lu(k,1156) * lu(k,1285) + lu(k,1294) = lu(k,1294) - lu(k,1157) * lu(k,1285) + lu(k,1295) = lu(k,1295) - lu(k,1158) * lu(k,1285) + lu(k,1296) = lu(k,1296) - lu(k,1159) * lu(k,1285) + lu(k,1297) = lu(k,1297) - lu(k,1160) * lu(k,1285) + lu(k,1298) = lu(k,1298) - lu(k,1161) * lu(k,1285) + lu(k,1299) = lu(k,1299) - lu(k,1162) * lu(k,1285) + lu(k,1300) = lu(k,1300) - lu(k,1163) * lu(k,1285) + lu(k,1301) = lu(k,1301) - lu(k,1164) * lu(k,1285) + lu(k,1302) = lu(k,1302) - lu(k,1165) * lu(k,1285) + lu(k,1304) = - lu(k,1166) * lu(k,1285) + lu(k,1311) = lu(k,1311) - lu(k,1155) * lu(k,1310) + lu(k,1314) = lu(k,1314) - lu(k,1156) * lu(k,1310) + lu(k,1315) = - lu(k,1157) * lu(k,1310) + lu(k,1316) = lu(k,1316) - lu(k,1158) * lu(k,1310) + lu(k,1317) = lu(k,1317) - lu(k,1159) * lu(k,1310) + lu(k,1318) = lu(k,1318) - lu(k,1160) * lu(k,1310) + lu(k,1319) = lu(k,1319) - lu(k,1161) * lu(k,1310) + lu(k,1320) = lu(k,1320) - lu(k,1162) * lu(k,1310) + lu(k,1321) = lu(k,1321) - lu(k,1163) * lu(k,1310) + lu(k,1322) = lu(k,1322) - lu(k,1164) * lu(k,1310) + lu(k,1323) = lu(k,1323) - lu(k,1165) * lu(k,1310) + lu(k,1324) = - lu(k,1166) * lu(k,1310) + lu(k,1677) = lu(k,1677) - lu(k,1155) * lu(k,1673) + lu(k,1684) = lu(k,1684) - lu(k,1156) * lu(k,1673) + lu(k,1689) = lu(k,1689) - lu(k,1157) * lu(k,1673) + lu(k,1690) = lu(k,1690) - lu(k,1158) * lu(k,1673) + lu(k,1692) = lu(k,1692) - lu(k,1159) * lu(k,1673) + lu(k,1694) = lu(k,1694) - lu(k,1160) * lu(k,1673) + lu(k,1695) = lu(k,1695) - lu(k,1161) * lu(k,1673) + lu(k,1696) = lu(k,1696) - lu(k,1162) * lu(k,1673) + lu(k,1697) = lu(k,1697) - lu(k,1163) * lu(k,1673) + lu(k,1699) = lu(k,1699) - lu(k,1164) * lu(k,1673) + lu(k,1702) = lu(k,1702) - lu(k,1165) * lu(k,1673) + lu(k,1704) = lu(k,1704) - lu(k,1166) * lu(k,1673) + lu(k,1761) = lu(k,1761) - lu(k,1155) * lu(k,1757) + lu(k,1768) = lu(k,1768) - lu(k,1156) * lu(k,1757) + lu(k,1772) = lu(k,1772) - lu(k,1157) * lu(k,1757) + lu(k,1773) = lu(k,1773) - lu(k,1158) * lu(k,1757) + lu(k,1775) = lu(k,1775) - lu(k,1159) * lu(k,1757) + lu(k,1777) = lu(k,1777) - lu(k,1160) * lu(k,1757) + lu(k,1778) = lu(k,1778) - lu(k,1161) * lu(k,1757) + lu(k,1779) = lu(k,1779) - lu(k,1162) * lu(k,1757) + lu(k,1780) = lu(k,1780) - lu(k,1163) * lu(k,1757) + lu(k,1782) = lu(k,1782) - lu(k,1164) * lu(k,1757) + lu(k,1785) = lu(k,1785) - lu(k,1165) * lu(k,1757) + lu(k,1787) = lu(k,1787) - lu(k,1166) * lu(k,1757) + lu(k,1906) = lu(k,1906) - lu(k,1155) * lu(k,1902) + lu(k,1912) = lu(k,1912) - lu(k,1156) * lu(k,1902) + lu(k,1916) = lu(k,1916) - lu(k,1157) * lu(k,1902) + lu(k,1917) = lu(k,1917) - lu(k,1158) * lu(k,1902) + lu(k,1919) = lu(k,1919) - lu(k,1159) * lu(k,1902) + lu(k,1921) = lu(k,1921) - lu(k,1160) * lu(k,1902) + lu(k,1922) = lu(k,1922) - lu(k,1161) * lu(k,1902) + lu(k,1923) = lu(k,1923) - lu(k,1162) * lu(k,1902) + lu(k,1924) = lu(k,1924) - lu(k,1163) * lu(k,1902) + lu(k,1926) = lu(k,1926) - lu(k,1164) * lu(k,1902) + lu(k,1929) = lu(k,1929) - lu(k,1165) * lu(k,1902) + lu(k,1931) = lu(k,1931) - lu(k,1166) * lu(k,1902) + lu(k,1174) = 1._r8 / lu(k,1174) + lu(k,1175) = lu(k,1175) * lu(k,1174) + lu(k,1176) = lu(k,1176) * lu(k,1174) + lu(k,1177) = lu(k,1177) * lu(k,1174) + lu(k,1178) = lu(k,1178) * lu(k,1174) + lu(k,1179) = lu(k,1179) * lu(k,1174) + lu(k,1180) = lu(k,1180) * lu(k,1174) + lu(k,1181) = lu(k,1181) * lu(k,1174) + lu(k,1182) = lu(k,1182) * lu(k,1174) + lu(k,1183) = lu(k,1183) * lu(k,1174) + lu(k,1184) = lu(k,1184) * lu(k,1174) + lu(k,1196) = lu(k,1196) - lu(k,1175) * lu(k,1193) + lu(k,1198) = lu(k,1198) - lu(k,1176) * lu(k,1193) + lu(k,1200) = lu(k,1200) - lu(k,1177) * lu(k,1193) + lu(k,1201) = lu(k,1201) - lu(k,1178) * lu(k,1193) + lu(k,1202) = lu(k,1202) - lu(k,1179) * lu(k,1193) + lu(k,1203) = lu(k,1203) - lu(k,1180) * lu(k,1193) + lu(k,1204) = lu(k,1204) - lu(k,1181) * lu(k,1193) + lu(k,1205) = lu(k,1205) - lu(k,1182) * lu(k,1193) + lu(k,1206) = lu(k,1206) - lu(k,1183) * lu(k,1193) + lu(k,1207) = lu(k,1207) - lu(k,1184) * lu(k,1193) + lu(k,1256) = lu(k,1256) - lu(k,1175) * lu(k,1254) + lu(k,1261) = lu(k,1261) - lu(k,1176) * lu(k,1254) + lu(k,1263) = lu(k,1263) - lu(k,1177) * lu(k,1254) + lu(k,1264) = lu(k,1264) - lu(k,1178) * lu(k,1254) + lu(k,1265) = lu(k,1265) - lu(k,1179) * lu(k,1254) + lu(k,1266) = lu(k,1266) - lu(k,1180) * lu(k,1254) + lu(k,1267) = lu(k,1267) - lu(k,1181) * lu(k,1254) + lu(k,1268) = lu(k,1268) - lu(k,1182) * lu(k,1254) + lu(k,1269) = lu(k,1269) - lu(k,1183) * lu(k,1254) + lu(k,1270) = lu(k,1270) - lu(k,1184) * lu(k,1254) + lu(k,1288) = lu(k,1288) - lu(k,1175) * lu(k,1286) + lu(k,1293) = lu(k,1293) - lu(k,1176) * lu(k,1286) + lu(k,1295) = lu(k,1295) - lu(k,1177) * lu(k,1286) + lu(k,1296) = lu(k,1296) - lu(k,1178) * lu(k,1286) + lu(k,1297) = lu(k,1297) - lu(k,1179) * lu(k,1286) + lu(k,1298) = lu(k,1298) - lu(k,1180) * lu(k,1286) + lu(k,1299) = lu(k,1299) - lu(k,1181) * lu(k,1286) + lu(k,1300) = lu(k,1300) - lu(k,1182) * lu(k,1286) + lu(k,1301) = lu(k,1301) - lu(k,1183) * lu(k,1286) + lu(k,1302) = lu(k,1302) - lu(k,1184) * lu(k,1286) + lu(k,1381) = lu(k,1381) - lu(k,1175) * lu(k,1378) + lu(k,1387) = lu(k,1387) - lu(k,1176) * lu(k,1378) + lu(k,1390) = lu(k,1390) - lu(k,1177) * lu(k,1378) + lu(k,1391) = lu(k,1391) - lu(k,1178) * lu(k,1378) + lu(k,1392) = lu(k,1392) - lu(k,1179) * lu(k,1378) + lu(k,1393) = lu(k,1393) - lu(k,1180) * lu(k,1378) + lu(k,1394) = lu(k,1394) - lu(k,1181) * lu(k,1378) + lu(k,1395) = lu(k,1395) - lu(k,1182) * lu(k,1378) + lu(k,1396) = lu(k,1396) - lu(k,1183) * lu(k,1378) + lu(k,1397) = lu(k,1397) - lu(k,1184) * lu(k,1378) + lu(k,1677) = lu(k,1677) - lu(k,1175) * lu(k,1674) + lu(k,1684) = lu(k,1684) - lu(k,1176) * lu(k,1674) + lu(k,1690) = lu(k,1690) - lu(k,1177) * lu(k,1674) + lu(k,1692) = lu(k,1692) - lu(k,1178) * lu(k,1674) + lu(k,1694) = lu(k,1694) - lu(k,1179) * lu(k,1674) + lu(k,1695) = lu(k,1695) - lu(k,1180) * lu(k,1674) + lu(k,1696) = lu(k,1696) - lu(k,1181) * lu(k,1674) + lu(k,1697) = lu(k,1697) - lu(k,1182) * lu(k,1674) + lu(k,1699) = lu(k,1699) - lu(k,1183) * lu(k,1674) + lu(k,1702) = lu(k,1702) - lu(k,1184) * lu(k,1674) + lu(k,1761) = lu(k,1761) - lu(k,1175) * lu(k,1758) + lu(k,1768) = lu(k,1768) - lu(k,1176) * lu(k,1758) + lu(k,1773) = lu(k,1773) - lu(k,1177) * lu(k,1758) + lu(k,1775) = lu(k,1775) - lu(k,1178) * lu(k,1758) + lu(k,1777) = lu(k,1777) - lu(k,1179) * lu(k,1758) + lu(k,1778) = lu(k,1778) - lu(k,1180) * lu(k,1758) + lu(k,1779) = lu(k,1779) - lu(k,1181) * lu(k,1758) + lu(k,1780) = lu(k,1780) - lu(k,1182) * lu(k,1758) + lu(k,1782) = lu(k,1782) - lu(k,1183) * lu(k,1758) + lu(k,1785) = lu(k,1785) - lu(k,1184) * lu(k,1758) + lu(k,1815) = lu(k,1815) - lu(k,1175) * lu(k,1812) + lu(k,1821) = lu(k,1821) - lu(k,1176) * lu(k,1812) + lu(k,1825) = lu(k,1825) - lu(k,1177) * lu(k,1812) + lu(k,1827) = lu(k,1827) - lu(k,1178) * lu(k,1812) + lu(k,1829) = lu(k,1829) - lu(k,1179) * lu(k,1812) + lu(k,1830) = lu(k,1830) - lu(k,1180) * lu(k,1812) + lu(k,1831) = lu(k,1831) - lu(k,1181) * lu(k,1812) + lu(k,1832) = lu(k,1832) - lu(k,1182) * lu(k,1812) + lu(k,1834) = lu(k,1834) - lu(k,1183) * lu(k,1812) + lu(k,1837) = lu(k,1837) - lu(k,1184) * lu(k,1812) + lu(k,1906) = lu(k,1906) - lu(k,1175) * lu(k,1903) + lu(k,1912) = lu(k,1912) - lu(k,1176) * lu(k,1903) + lu(k,1917) = lu(k,1917) - lu(k,1177) * lu(k,1903) + lu(k,1919) = lu(k,1919) - lu(k,1178) * lu(k,1903) + lu(k,1921) = lu(k,1921) - lu(k,1179) * lu(k,1903) + lu(k,1922) = lu(k,1922) - lu(k,1180) * lu(k,1903) + lu(k,1923) = lu(k,1923) - lu(k,1181) * lu(k,1903) + lu(k,1924) = lu(k,1924) - lu(k,1182) * lu(k,1903) + lu(k,1926) = lu(k,1926) - lu(k,1183) * lu(k,1903) + lu(k,1929) = lu(k,1929) - lu(k,1184) * lu(k,1903) + lu(k,2095) = lu(k,2095) - lu(k,1175) * lu(k,2092) + lu(k,2101) = lu(k,2101) - lu(k,1176) * lu(k,2092) + lu(k,2107) = lu(k,2107) - lu(k,1177) * lu(k,2092) + lu(k,2109) = lu(k,2109) - lu(k,1178) * lu(k,2092) + lu(k,2111) = lu(k,2111) - lu(k,1179) * lu(k,2092) + lu(k,2112) = lu(k,2112) - lu(k,1180) * lu(k,2092) + lu(k,2113) = lu(k,2113) - lu(k,1181) * lu(k,2092) + lu(k,2114) = lu(k,2114) - lu(k,1182) * lu(k,2092) + lu(k,2116) = lu(k,2116) - lu(k,1183) * lu(k,2092) + lu(k,2119) = lu(k,2119) - lu(k,1184) * lu(k,2092) + lu(k,1194) = 1._r8 / lu(k,1194) + lu(k,1195) = lu(k,1195) * lu(k,1194) + lu(k,1196) = lu(k,1196) * lu(k,1194) + lu(k,1197) = lu(k,1197) * lu(k,1194) + lu(k,1198) = lu(k,1198) * lu(k,1194) + lu(k,1199) = lu(k,1199) * lu(k,1194) + lu(k,1200) = lu(k,1200) * lu(k,1194) + lu(k,1201) = lu(k,1201) * lu(k,1194) + lu(k,1202) = lu(k,1202) * lu(k,1194) + lu(k,1203) = lu(k,1203) * lu(k,1194) + lu(k,1204) = lu(k,1204) * lu(k,1194) + lu(k,1205) = lu(k,1205) * lu(k,1194) + lu(k,1206) = lu(k,1206) * lu(k,1194) + lu(k,1207) = lu(k,1207) * lu(k,1194) + lu(k,1380) = lu(k,1380) - lu(k,1195) * lu(k,1379) + lu(k,1381) = lu(k,1381) - lu(k,1196) * lu(k,1379) + lu(k,1385) = lu(k,1385) - lu(k,1197) * lu(k,1379) + lu(k,1387) = lu(k,1387) - lu(k,1198) * lu(k,1379) + lu(k,1389) = lu(k,1389) - lu(k,1199) * lu(k,1379) + lu(k,1390) = lu(k,1390) - lu(k,1200) * lu(k,1379) + lu(k,1391) = lu(k,1391) - lu(k,1201) * lu(k,1379) + lu(k,1392) = lu(k,1392) - lu(k,1202) * lu(k,1379) + lu(k,1393) = lu(k,1393) - lu(k,1203) * lu(k,1379) + lu(k,1394) = lu(k,1394) - lu(k,1204) * lu(k,1379) + lu(k,1395) = lu(k,1395) - lu(k,1205) * lu(k,1379) + lu(k,1396) = lu(k,1396) - lu(k,1206) * lu(k,1379) + lu(k,1397) = lu(k,1397) - lu(k,1207) * lu(k,1379) + lu(k,1676) = lu(k,1676) - lu(k,1195) * lu(k,1675) + lu(k,1677) = lu(k,1677) - lu(k,1196) * lu(k,1675) + lu(k,1682) = lu(k,1682) - lu(k,1197) * lu(k,1675) + lu(k,1684) = lu(k,1684) - lu(k,1198) * lu(k,1675) + lu(k,1689) = lu(k,1689) - lu(k,1199) * lu(k,1675) + lu(k,1690) = lu(k,1690) - lu(k,1200) * lu(k,1675) + lu(k,1692) = lu(k,1692) - lu(k,1201) * lu(k,1675) + lu(k,1694) = lu(k,1694) - lu(k,1202) * lu(k,1675) + lu(k,1695) = lu(k,1695) - lu(k,1203) * lu(k,1675) + lu(k,1696) = lu(k,1696) - lu(k,1204) * lu(k,1675) + lu(k,1697) = lu(k,1697) - lu(k,1205) * lu(k,1675) + lu(k,1699) = lu(k,1699) - lu(k,1206) * lu(k,1675) + lu(k,1702) = lu(k,1702) - lu(k,1207) * lu(k,1675) + lu(k,1760) = lu(k,1760) - lu(k,1195) * lu(k,1759) + lu(k,1761) = lu(k,1761) - lu(k,1196) * lu(k,1759) + lu(k,1766) = lu(k,1766) - lu(k,1197) * lu(k,1759) + lu(k,1768) = lu(k,1768) - lu(k,1198) * lu(k,1759) + lu(k,1772) = lu(k,1772) - lu(k,1199) * lu(k,1759) + lu(k,1773) = lu(k,1773) - lu(k,1200) * lu(k,1759) + lu(k,1775) = lu(k,1775) - lu(k,1201) * lu(k,1759) + lu(k,1777) = lu(k,1777) - lu(k,1202) * lu(k,1759) + lu(k,1778) = lu(k,1778) - lu(k,1203) * lu(k,1759) + lu(k,1779) = lu(k,1779) - lu(k,1204) * lu(k,1759) + lu(k,1780) = lu(k,1780) - lu(k,1205) * lu(k,1759) + lu(k,1782) = lu(k,1782) - lu(k,1206) * lu(k,1759) + lu(k,1785) = lu(k,1785) - lu(k,1207) * lu(k,1759) + lu(k,1814) = lu(k,1814) - lu(k,1195) * lu(k,1813) + lu(k,1815) = lu(k,1815) - lu(k,1196) * lu(k,1813) + lu(k,1819) = lu(k,1819) - lu(k,1197) * lu(k,1813) + lu(k,1821) = lu(k,1821) - lu(k,1198) * lu(k,1813) + lu(k,1824) = lu(k,1824) - lu(k,1199) * lu(k,1813) + lu(k,1825) = lu(k,1825) - lu(k,1200) * lu(k,1813) + lu(k,1827) = lu(k,1827) - lu(k,1201) * lu(k,1813) + lu(k,1829) = lu(k,1829) - lu(k,1202) * lu(k,1813) + lu(k,1830) = lu(k,1830) - lu(k,1203) * lu(k,1813) + lu(k,1831) = lu(k,1831) - lu(k,1204) * lu(k,1813) + lu(k,1832) = lu(k,1832) - lu(k,1205) * lu(k,1813) + lu(k,1834) = lu(k,1834) - lu(k,1206) * lu(k,1813) + lu(k,1837) = lu(k,1837) - lu(k,1207) * lu(k,1813) + lu(k,1905) = lu(k,1905) - lu(k,1195) * lu(k,1904) + lu(k,1906) = lu(k,1906) - lu(k,1196) * lu(k,1904) + lu(k,1910) = lu(k,1910) - lu(k,1197) * lu(k,1904) + lu(k,1912) = lu(k,1912) - lu(k,1198) * lu(k,1904) + lu(k,1916) = lu(k,1916) - lu(k,1199) * lu(k,1904) + lu(k,1917) = lu(k,1917) - lu(k,1200) * lu(k,1904) + lu(k,1919) = lu(k,1919) - lu(k,1201) * lu(k,1904) + lu(k,1921) = lu(k,1921) - lu(k,1202) * lu(k,1904) + lu(k,1922) = lu(k,1922) - lu(k,1203) * lu(k,1904) + lu(k,1923) = lu(k,1923) - lu(k,1204) * lu(k,1904) + lu(k,1924) = lu(k,1924) - lu(k,1205) * lu(k,1904) + lu(k,1926) = lu(k,1926) - lu(k,1206) * lu(k,1904) + lu(k,1929) = lu(k,1929) - lu(k,1207) * lu(k,1904) + lu(k,2094) = lu(k,2094) - lu(k,1195) * lu(k,2093) + lu(k,2095) = lu(k,2095) - lu(k,1196) * lu(k,2093) + lu(k,2099) = lu(k,2099) - lu(k,1197) * lu(k,2093) + lu(k,2101) = lu(k,2101) - lu(k,1198) * lu(k,2093) + lu(k,2106) = lu(k,2106) - lu(k,1199) * lu(k,2093) + lu(k,2107) = lu(k,2107) - lu(k,1200) * lu(k,2093) + lu(k,2109) = lu(k,2109) - lu(k,1201) * lu(k,2093) + lu(k,2111) = lu(k,2111) - lu(k,1202) * lu(k,2093) + lu(k,2112) = lu(k,2112) - lu(k,1203) * lu(k,2093) + lu(k,2113) = lu(k,2113) - lu(k,1204) * lu(k,2093) + lu(k,2114) = lu(k,2114) - lu(k,1205) * lu(k,2093) + lu(k,2116) = lu(k,2116) - lu(k,1206) * lu(k,2093) + lu(k,2119) = lu(k,2119) - lu(k,1207) * lu(k,2093) + lu(k,2233) = lu(k,2233) - lu(k,1195) * lu(k,2232) + lu(k,2234) = lu(k,2234) - lu(k,1196) * lu(k,2232) + lu(k,2239) = lu(k,2239) - lu(k,1197) * lu(k,2232) + lu(k,2241) = lu(k,2241) - lu(k,1198) * lu(k,2232) + lu(k,2245) = lu(k,2245) - lu(k,1199) * lu(k,2232) + lu(k,2246) = lu(k,2246) - lu(k,1200) * lu(k,2232) + lu(k,2248) = lu(k,2248) - lu(k,1201) * lu(k,2232) + lu(k,2250) = lu(k,2250) - lu(k,1202) * lu(k,2232) + lu(k,2251) = lu(k,2251) - lu(k,1203) * lu(k,2232) + lu(k,2252) = lu(k,2252) - lu(k,1204) * lu(k,2232) + lu(k,2253) = lu(k,2253) - lu(k,1205) * lu(k,2232) + lu(k,2255) = lu(k,2255) - lu(k,1206) * lu(k,2232) + lu(k,2258) = lu(k,2258) - lu(k,1207) * lu(k,2232) + lu(k,1210) = 1._r8 / lu(k,1210) + lu(k,1211) = lu(k,1211) * lu(k,1210) + lu(k,1212) = lu(k,1212) * lu(k,1210) + lu(k,1213) = lu(k,1213) * lu(k,1210) + lu(k,1214) = lu(k,1214) * lu(k,1210) + lu(k,1215) = lu(k,1215) * lu(k,1210) + lu(k,1216) = lu(k,1216) * lu(k,1210) + lu(k,1217) = lu(k,1217) * lu(k,1210) + lu(k,1218) = lu(k,1218) * lu(k,1210) + lu(k,1219) = lu(k,1219) * lu(k,1210) + lu(k,1220) = lu(k,1220) * lu(k,1210) + lu(k,1256) = lu(k,1256) - lu(k,1211) * lu(k,1255) + lu(k,1258) = - lu(k,1212) * lu(k,1255) + lu(k,1260) = - lu(k,1213) * lu(k,1255) + lu(k,1261) = lu(k,1261) - lu(k,1214) * lu(k,1255) + lu(k,1263) = lu(k,1263) - lu(k,1215) * lu(k,1255) + lu(k,1264) = lu(k,1264) - lu(k,1216) * lu(k,1255) + lu(k,1269) = lu(k,1269) - lu(k,1217) * lu(k,1255) + lu(k,1270) = lu(k,1270) - lu(k,1218) * lu(k,1255) + lu(k,1271) = - lu(k,1219) * lu(k,1255) + lu(k,1272) = lu(k,1272) - lu(k,1220) * lu(k,1255) + lu(k,1288) = lu(k,1288) - lu(k,1211) * lu(k,1287) + lu(k,1290) = - lu(k,1212) * lu(k,1287) + lu(k,1292) = - lu(k,1213) * lu(k,1287) + lu(k,1293) = lu(k,1293) - lu(k,1214) * lu(k,1287) + lu(k,1295) = lu(k,1295) - lu(k,1215) * lu(k,1287) + lu(k,1296) = lu(k,1296) - lu(k,1216) * lu(k,1287) + lu(k,1301) = lu(k,1301) - lu(k,1217) * lu(k,1287) + lu(k,1302) = lu(k,1302) - lu(k,1218) * lu(k,1287) + lu(k,1303) = - lu(k,1219) * lu(k,1287) + lu(k,1304) = lu(k,1304) - lu(k,1220) * lu(k,1287) + lu(k,1381) = lu(k,1381) - lu(k,1211) * lu(k,1380) + lu(k,1384) = lu(k,1384) - lu(k,1212) * lu(k,1380) + lu(k,1386) = lu(k,1386) - lu(k,1213) * lu(k,1380) + lu(k,1387) = lu(k,1387) - lu(k,1214) * lu(k,1380) + lu(k,1390) = lu(k,1390) - lu(k,1215) * lu(k,1380) + lu(k,1391) = lu(k,1391) - lu(k,1216) * lu(k,1380) + lu(k,1396) = lu(k,1396) - lu(k,1217) * lu(k,1380) + lu(k,1397) = lu(k,1397) - lu(k,1218) * lu(k,1380) + lu(k,1398) = lu(k,1398) - lu(k,1219) * lu(k,1380) + lu(k,1399) = lu(k,1399) - lu(k,1220) * lu(k,1380) + lu(k,1677) = lu(k,1677) - lu(k,1211) * lu(k,1676) + lu(k,1681) = lu(k,1681) - lu(k,1212) * lu(k,1676) + lu(k,1683) = lu(k,1683) - lu(k,1213) * lu(k,1676) + lu(k,1684) = lu(k,1684) - lu(k,1214) * lu(k,1676) + lu(k,1690) = lu(k,1690) - lu(k,1215) * lu(k,1676) + lu(k,1692) = lu(k,1692) - lu(k,1216) * lu(k,1676) + lu(k,1699) = lu(k,1699) - lu(k,1217) * lu(k,1676) + lu(k,1702) = lu(k,1702) - lu(k,1218) * lu(k,1676) + lu(k,1703) = lu(k,1703) - lu(k,1219) * lu(k,1676) + lu(k,1704) = lu(k,1704) - lu(k,1220) * lu(k,1676) + lu(k,1761) = lu(k,1761) - lu(k,1211) * lu(k,1760) + lu(k,1765) = lu(k,1765) - lu(k,1212) * lu(k,1760) + lu(k,1767) = lu(k,1767) - lu(k,1213) * lu(k,1760) + lu(k,1768) = lu(k,1768) - lu(k,1214) * lu(k,1760) + lu(k,1773) = lu(k,1773) - lu(k,1215) * lu(k,1760) + lu(k,1775) = lu(k,1775) - lu(k,1216) * lu(k,1760) + lu(k,1782) = lu(k,1782) - lu(k,1217) * lu(k,1760) + lu(k,1785) = lu(k,1785) - lu(k,1218) * lu(k,1760) + lu(k,1786) = lu(k,1786) - lu(k,1219) * lu(k,1760) + lu(k,1787) = lu(k,1787) - lu(k,1220) * lu(k,1760) + lu(k,1815) = lu(k,1815) - lu(k,1211) * lu(k,1814) + lu(k,1818) = lu(k,1818) - lu(k,1212) * lu(k,1814) + lu(k,1820) = lu(k,1820) - lu(k,1213) * lu(k,1814) + lu(k,1821) = lu(k,1821) - lu(k,1214) * lu(k,1814) + lu(k,1825) = lu(k,1825) - lu(k,1215) * lu(k,1814) + lu(k,1827) = lu(k,1827) - lu(k,1216) * lu(k,1814) + lu(k,1834) = lu(k,1834) - lu(k,1217) * lu(k,1814) + lu(k,1837) = lu(k,1837) - lu(k,1218) * lu(k,1814) + lu(k,1838) = - lu(k,1219) * lu(k,1814) + lu(k,1839) = lu(k,1839) - lu(k,1220) * lu(k,1814) + lu(k,1906) = lu(k,1906) - lu(k,1211) * lu(k,1905) + lu(k,1909) = lu(k,1909) - lu(k,1212) * lu(k,1905) + lu(k,1911) = lu(k,1911) - lu(k,1213) * lu(k,1905) + lu(k,1912) = lu(k,1912) - lu(k,1214) * lu(k,1905) + lu(k,1917) = lu(k,1917) - lu(k,1215) * lu(k,1905) + lu(k,1919) = lu(k,1919) - lu(k,1216) * lu(k,1905) + lu(k,1926) = lu(k,1926) - lu(k,1217) * lu(k,1905) + lu(k,1929) = lu(k,1929) - lu(k,1218) * lu(k,1905) + lu(k,1930) = lu(k,1930) - lu(k,1219) * lu(k,1905) + lu(k,1931) = lu(k,1931) - lu(k,1220) * lu(k,1905) + lu(k,2095) = lu(k,2095) - lu(k,1211) * lu(k,2094) + lu(k,2098) = lu(k,2098) - lu(k,1212) * lu(k,2094) + lu(k,2100) = lu(k,2100) - lu(k,1213) * lu(k,2094) + lu(k,2101) = lu(k,2101) - lu(k,1214) * lu(k,2094) + lu(k,2107) = lu(k,2107) - lu(k,1215) * lu(k,2094) + lu(k,2109) = lu(k,2109) - lu(k,1216) * lu(k,2094) + lu(k,2116) = lu(k,2116) - lu(k,1217) * lu(k,2094) + lu(k,2119) = lu(k,2119) - lu(k,1218) * lu(k,2094) + lu(k,2120) = lu(k,2120) - lu(k,1219) * lu(k,2094) + lu(k,2121) = lu(k,2121) - lu(k,1220) * lu(k,2094) + lu(k,2234) = lu(k,2234) - lu(k,1211) * lu(k,2233) + lu(k,2238) = - lu(k,1212) * lu(k,2233) + lu(k,2240) = - lu(k,1213) * lu(k,2233) + lu(k,2241) = lu(k,2241) - lu(k,1214) * lu(k,2233) + lu(k,2246) = lu(k,2246) - lu(k,1215) * lu(k,2233) + lu(k,2248) = lu(k,2248) - lu(k,1216) * lu(k,2233) + lu(k,2255) = lu(k,2255) - lu(k,1217) * lu(k,2233) + lu(k,2258) = lu(k,2258) - lu(k,1218) * lu(k,2233) + lu(k,2259) = lu(k,2259) - lu(k,1219) * lu(k,2233) + lu(k,2260) = lu(k,2260) - lu(k,1220) * lu(k,2233) + end do + end subroutine lu_fac24 + subroutine lu_fac25( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1222) = 1._r8 / lu(k,1222) + lu(k,1223) = lu(k,1223) * lu(k,1222) + lu(k,1224) = lu(k,1224) * lu(k,1222) + lu(k,1225) = lu(k,1225) * lu(k,1222) + lu(k,1226) = lu(k,1226) * lu(k,1222) + lu(k,1227) = lu(k,1227) * lu(k,1222) + lu(k,1228) = lu(k,1228) * lu(k,1222) + lu(k,1229) = lu(k,1229) * lu(k,1222) + lu(k,1261) = lu(k,1261) - lu(k,1223) * lu(k,1256) + lu(k,1262) = lu(k,1262) - lu(k,1224) * lu(k,1256) + lu(k,1264) = lu(k,1264) - lu(k,1225) * lu(k,1256) + lu(k,1265) = lu(k,1265) - lu(k,1226) * lu(k,1256) + lu(k,1269) = lu(k,1269) - lu(k,1227) * lu(k,1256) + lu(k,1270) = lu(k,1270) - lu(k,1228) * lu(k,1256) + lu(k,1272) = lu(k,1272) - lu(k,1229) * lu(k,1256) + lu(k,1293) = lu(k,1293) - lu(k,1223) * lu(k,1288) + lu(k,1294) = lu(k,1294) - lu(k,1224) * lu(k,1288) + lu(k,1296) = lu(k,1296) - lu(k,1225) * lu(k,1288) + lu(k,1297) = lu(k,1297) - lu(k,1226) * lu(k,1288) + lu(k,1301) = lu(k,1301) - lu(k,1227) * lu(k,1288) + lu(k,1302) = lu(k,1302) - lu(k,1228) * lu(k,1288) + lu(k,1304) = lu(k,1304) - lu(k,1229) * lu(k,1288) + lu(k,1314) = lu(k,1314) - lu(k,1223) * lu(k,1311) + lu(k,1315) = lu(k,1315) - lu(k,1224) * lu(k,1311) + lu(k,1317) = lu(k,1317) - lu(k,1225) * lu(k,1311) + lu(k,1318) = lu(k,1318) - lu(k,1226) * lu(k,1311) + lu(k,1322) = lu(k,1322) - lu(k,1227) * lu(k,1311) + lu(k,1323) = lu(k,1323) - lu(k,1228) * lu(k,1311) + lu(k,1324) = lu(k,1324) - lu(k,1229) * lu(k,1311) + lu(k,1335) = lu(k,1335) - lu(k,1223) * lu(k,1331) + lu(k,1337) = lu(k,1337) - lu(k,1224) * lu(k,1331) + lu(k,1339) = lu(k,1339) - lu(k,1225) * lu(k,1331) + lu(k,1340) = lu(k,1340) - lu(k,1226) * lu(k,1331) + lu(k,1344) = lu(k,1344) - lu(k,1227) * lu(k,1331) + lu(k,1345) = lu(k,1345) - lu(k,1228) * lu(k,1331) + lu(k,1347) = lu(k,1347) - lu(k,1229) * lu(k,1331) + lu(k,1356) = lu(k,1356) - lu(k,1223) * lu(k,1354) + lu(k,1357) = - lu(k,1224) * lu(k,1354) + lu(k,1359) = lu(k,1359) - lu(k,1225) * lu(k,1354) + lu(k,1360) = lu(k,1360) - lu(k,1226) * lu(k,1354) + lu(k,1364) = lu(k,1364) - lu(k,1227) * lu(k,1354) + lu(k,1365) = lu(k,1365) - lu(k,1228) * lu(k,1354) + lu(k,1367) = lu(k,1367) - lu(k,1229) * lu(k,1354) + lu(k,1387) = lu(k,1387) - lu(k,1223) * lu(k,1381) + lu(k,1389) = lu(k,1389) - lu(k,1224) * lu(k,1381) + lu(k,1391) = lu(k,1391) - lu(k,1225) * lu(k,1381) + lu(k,1392) = lu(k,1392) - lu(k,1226) * lu(k,1381) + lu(k,1396) = lu(k,1396) - lu(k,1227) * lu(k,1381) + lu(k,1397) = lu(k,1397) - lu(k,1228) * lu(k,1381) + lu(k,1399) = lu(k,1399) - lu(k,1229) * lu(k,1381) + lu(k,1684) = lu(k,1684) - lu(k,1223) * lu(k,1677) + lu(k,1689) = lu(k,1689) - lu(k,1224) * lu(k,1677) + lu(k,1692) = lu(k,1692) - lu(k,1225) * lu(k,1677) + lu(k,1694) = lu(k,1694) - lu(k,1226) * lu(k,1677) + lu(k,1699) = lu(k,1699) - lu(k,1227) * lu(k,1677) + lu(k,1702) = lu(k,1702) - lu(k,1228) * lu(k,1677) + lu(k,1704) = lu(k,1704) - lu(k,1229) * lu(k,1677) + lu(k,1768) = lu(k,1768) - lu(k,1223) * lu(k,1761) + lu(k,1772) = lu(k,1772) - lu(k,1224) * lu(k,1761) + lu(k,1775) = lu(k,1775) - lu(k,1225) * lu(k,1761) + lu(k,1777) = lu(k,1777) - lu(k,1226) * lu(k,1761) + lu(k,1782) = lu(k,1782) - lu(k,1227) * lu(k,1761) + lu(k,1785) = lu(k,1785) - lu(k,1228) * lu(k,1761) + lu(k,1787) = lu(k,1787) - lu(k,1229) * lu(k,1761) + lu(k,1821) = lu(k,1821) - lu(k,1223) * lu(k,1815) + lu(k,1824) = lu(k,1824) - lu(k,1224) * lu(k,1815) + lu(k,1827) = lu(k,1827) - lu(k,1225) * lu(k,1815) + lu(k,1829) = lu(k,1829) - lu(k,1226) * lu(k,1815) + lu(k,1834) = lu(k,1834) - lu(k,1227) * lu(k,1815) + lu(k,1837) = lu(k,1837) - lu(k,1228) * lu(k,1815) + lu(k,1839) = lu(k,1839) - lu(k,1229) * lu(k,1815) + lu(k,1912) = lu(k,1912) - lu(k,1223) * lu(k,1906) + lu(k,1916) = lu(k,1916) - lu(k,1224) * lu(k,1906) + lu(k,1919) = lu(k,1919) - lu(k,1225) * lu(k,1906) + lu(k,1921) = lu(k,1921) - lu(k,1226) * lu(k,1906) + lu(k,1926) = lu(k,1926) - lu(k,1227) * lu(k,1906) + lu(k,1929) = lu(k,1929) - lu(k,1228) * lu(k,1906) + lu(k,1931) = lu(k,1931) - lu(k,1229) * lu(k,1906) + lu(k,1956) = lu(k,1956) - lu(k,1223) * lu(k,1953) + lu(k,1960) = lu(k,1960) - lu(k,1224) * lu(k,1953) + lu(k,1963) = lu(k,1963) - lu(k,1225) * lu(k,1953) + lu(k,1965) = lu(k,1965) - lu(k,1226) * lu(k,1953) + lu(k,1970) = lu(k,1970) - lu(k,1227) * lu(k,1953) + lu(k,1973) = lu(k,1973) - lu(k,1228) * lu(k,1953) + lu(k,1975) = lu(k,1975) - lu(k,1229) * lu(k,1953) + lu(k,2101) = lu(k,2101) - lu(k,1223) * lu(k,2095) + lu(k,2106) = lu(k,2106) - lu(k,1224) * lu(k,2095) + lu(k,2109) = lu(k,2109) - lu(k,1225) * lu(k,2095) + lu(k,2111) = lu(k,2111) - lu(k,1226) * lu(k,2095) + lu(k,2116) = lu(k,2116) - lu(k,1227) * lu(k,2095) + lu(k,2119) = lu(k,2119) - lu(k,1228) * lu(k,2095) + lu(k,2121) = lu(k,2121) - lu(k,1229) * lu(k,2095) + lu(k,2241) = lu(k,2241) - lu(k,1223) * lu(k,2234) + lu(k,2245) = lu(k,2245) - lu(k,1224) * lu(k,2234) + lu(k,2248) = lu(k,2248) - lu(k,1225) * lu(k,2234) + lu(k,2250) = lu(k,2250) - lu(k,1226) * lu(k,2234) + lu(k,2255) = lu(k,2255) - lu(k,1227) * lu(k,2234) + lu(k,2258) = lu(k,2258) - lu(k,1228) * lu(k,2234) + lu(k,2260) = lu(k,2260) - lu(k,1229) * lu(k,2234) + lu(k,1233) = 1._r8 / lu(k,1233) + lu(k,1234) = lu(k,1234) * lu(k,1233) + lu(k,1235) = lu(k,1235) * lu(k,1233) + lu(k,1236) = lu(k,1236) * lu(k,1233) + lu(k,1237) = lu(k,1237) * lu(k,1233) + lu(k,1238) = lu(k,1238) * lu(k,1233) + lu(k,1239) = lu(k,1239) * lu(k,1233) + lu(k,1240) = lu(k,1240) * lu(k,1233) + lu(k,1241) = lu(k,1241) * lu(k,1233) + lu(k,1242) = lu(k,1242) * lu(k,1233) + lu(k,1243) = lu(k,1243) * lu(k,1233) + lu(k,1244) = lu(k,1244) * lu(k,1233) + lu(k,1245) = lu(k,1245) * lu(k,1233) + lu(k,1686) = lu(k,1686) - lu(k,1234) * lu(k,1678) + lu(k,1688) = lu(k,1688) - lu(k,1235) * lu(k,1678) + lu(k,1692) = lu(k,1692) - lu(k,1236) * lu(k,1678) + lu(k,1693) = lu(k,1693) - lu(k,1237) * lu(k,1678) + lu(k,1696) = lu(k,1696) - lu(k,1238) * lu(k,1678) + lu(k,1697) = lu(k,1697) - lu(k,1239) * lu(k,1678) + lu(k,1698) = lu(k,1698) - lu(k,1240) * lu(k,1678) + lu(k,1699) = lu(k,1699) - lu(k,1241) * lu(k,1678) + lu(k,1701) = lu(k,1701) - lu(k,1242) * lu(k,1678) + lu(k,1702) = lu(k,1702) - lu(k,1243) * lu(k,1678) + lu(k,1703) = lu(k,1703) - lu(k,1244) * lu(k,1678) + lu(k,1704) = lu(k,1704) - lu(k,1245) * lu(k,1678) + lu(k,1713) = lu(k,1713) - lu(k,1234) * lu(k,1712) + lu(k,1714) = - lu(k,1235) * lu(k,1712) + lu(k,1718) = lu(k,1718) - lu(k,1236) * lu(k,1712) + lu(k,1719) = lu(k,1719) - lu(k,1237) * lu(k,1712) + lu(k,1722) = lu(k,1722) - lu(k,1238) * lu(k,1712) + lu(k,1723) = lu(k,1723) - lu(k,1239) * lu(k,1712) + lu(k,1724) = lu(k,1724) - lu(k,1240) * lu(k,1712) + lu(k,1725) = lu(k,1725) - lu(k,1241) * lu(k,1712) + lu(k,1727) = lu(k,1727) - lu(k,1242) * lu(k,1712) + lu(k,1728) = lu(k,1728) - lu(k,1243) * lu(k,1712) + lu(k,1729) = - lu(k,1244) * lu(k,1712) + lu(k,1730) = lu(k,1730) - lu(k,1245) * lu(k,1712) + lu(k,1769) = - lu(k,1234) * lu(k,1762) + lu(k,1771) = - lu(k,1235) * lu(k,1762) + lu(k,1775) = lu(k,1775) - lu(k,1236) * lu(k,1762) + lu(k,1776) = - lu(k,1237) * lu(k,1762) + lu(k,1779) = lu(k,1779) - lu(k,1238) * lu(k,1762) + lu(k,1780) = lu(k,1780) - lu(k,1239) * lu(k,1762) + lu(k,1781) = - lu(k,1240) * lu(k,1762) + lu(k,1782) = lu(k,1782) - lu(k,1241) * lu(k,1762) + lu(k,1784) = - lu(k,1242) * lu(k,1762) + lu(k,1785) = lu(k,1785) - lu(k,1243) * lu(k,1762) + lu(k,1786) = lu(k,1786) - lu(k,1244) * lu(k,1762) + lu(k,1787) = lu(k,1787) - lu(k,1245) * lu(k,1762) + lu(k,1957) = lu(k,1957) - lu(k,1234) * lu(k,1954) + lu(k,1959) = lu(k,1959) - lu(k,1235) * lu(k,1954) + lu(k,1963) = lu(k,1963) - lu(k,1236) * lu(k,1954) + lu(k,1964) = lu(k,1964) - lu(k,1237) * lu(k,1954) + lu(k,1967) = lu(k,1967) - lu(k,1238) * lu(k,1954) + lu(k,1968) = lu(k,1968) - lu(k,1239) * lu(k,1954) + lu(k,1969) = lu(k,1969) - lu(k,1240) * lu(k,1954) + lu(k,1970) = lu(k,1970) - lu(k,1241) * lu(k,1954) + lu(k,1972) = lu(k,1972) - lu(k,1242) * lu(k,1954) + lu(k,1973) = lu(k,1973) - lu(k,1243) * lu(k,1954) + lu(k,1974) = lu(k,1974) - lu(k,1244) * lu(k,1954) + lu(k,1975) = lu(k,1975) - lu(k,1245) * lu(k,1954) + lu(k,2151) = lu(k,2151) - lu(k,1234) * lu(k,2150) + lu(k,2152) = - lu(k,1235) * lu(k,2150) + lu(k,2156) = lu(k,2156) - lu(k,1236) * lu(k,2150) + lu(k,2157) = lu(k,2157) - lu(k,1237) * lu(k,2150) + lu(k,2160) = lu(k,2160) - lu(k,1238) * lu(k,2150) + lu(k,2161) = lu(k,2161) - lu(k,1239) * lu(k,2150) + lu(k,2162) = lu(k,2162) - lu(k,1240) * lu(k,2150) + lu(k,2163) = lu(k,2163) - lu(k,1241) * lu(k,2150) + lu(k,2165) = lu(k,2165) - lu(k,1242) * lu(k,2150) + lu(k,2166) = lu(k,2166) - lu(k,1243) * lu(k,2150) + lu(k,2167) = - lu(k,1244) * lu(k,2150) + lu(k,2168) = lu(k,2168) - lu(k,1245) * lu(k,2150) + lu(k,2181) = lu(k,2181) - lu(k,1234) * lu(k,2179) + lu(k,2183) = lu(k,2183) - lu(k,1235) * lu(k,2179) + lu(k,2187) = lu(k,2187) - lu(k,1236) * lu(k,2179) + lu(k,2188) = lu(k,2188) - lu(k,1237) * lu(k,2179) + lu(k,2191) = lu(k,2191) - lu(k,1238) * lu(k,2179) + lu(k,2192) = lu(k,2192) - lu(k,1239) * lu(k,2179) + lu(k,2193) = lu(k,2193) - lu(k,1240) * lu(k,2179) + lu(k,2194) = lu(k,2194) - lu(k,1241) * lu(k,2179) + lu(k,2196) = lu(k,2196) - lu(k,1242) * lu(k,2179) + lu(k,2197) = lu(k,2197) - lu(k,1243) * lu(k,2179) + lu(k,2198) = lu(k,2198) - lu(k,1244) * lu(k,2179) + lu(k,2199) = lu(k,2199) - lu(k,1245) * lu(k,2179) + lu(k,2242) = lu(k,2242) - lu(k,1234) * lu(k,2235) + lu(k,2244) = lu(k,2244) - lu(k,1235) * lu(k,2235) + lu(k,2248) = lu(k,2248) - lu(k,1236) * lu(k,2235) + lu(k,2249) = lu(k,2249) - lu(k,1237) * lu(k,2235) + lu(k,2252) = lu(k,2252) - lu(k,1238) * lu(k,2235) + lu(k,2253) = lu(k,2253) - lu(k,1239) * lu(k,2235) + lu(k,2254) = lu(k,2254) - lu(k,1240) * lu(k,2235) + lu(k,2255) = lu(k,2255) - lu(k,1241) * lu(k,2235) + lu(k,2257) = lu(k,2257) - lu(k,1242) * lu(k,2235) + lu(k,2258) = lu(k,2258) - lu(k,1243) * lu(k,2235) + lu(k,2259) = lu(k,2259) - lu(k,1244) * lu(k,2235) + lu(k,2260) = lu(k,2260) - lu(k,1245) * lu(k,2235) + lu(k,2268) = - lu(k,1234) * lu(k,2266) + lu(k,2270) = lu(k,2270) - lu(k,1235) * lu(k,2266) + lu(k,2274) = lu(k,2274) - lu(k,1236) * lu(k,2266) + lu(k,2275) = - lu(k,1237) * lu(k,2266) + lu(k,2278) = - lu(k,1238) * lu(k,2266) + lu(k,2279) = - lu(k,1239) * lu(k,2266) + lu(k,2280) = - lu(k,1240) * lu(k,2266) + lu(k,2281) = lu(k,2281) - lu(k,1241) * lu(k,2266) + lu(k,2283) = - lu(k,1242) * lu(k,2266) + lu(k,2284) = lu(k,2284) - lu(k,1243) * lu(k,2266) + lu(k,2285) = - lu(k,1244) * lu(k,2266) + lu(k,2286) = lu(k,2286) - lu(k,1245) * lu(k,2266) + lu(k,1257) = 1._r8 / lu(k,1257) + lu(k,1258) = lu(k,1258) * lu(k,1257) + lu(k,1259) = lu(k,1259) * lu(k,1257) + lu(k,1260) = lu(k,1260) * lu(k,1257) + lu(k,1261) = lu(k,1261) * lu(k,1257) + lu(k,1262) = lu(k,1262) * lu(k,1257) + lu(k,1263) = lu(k,1263) * lu(k,1257) + lu(k,1264) = lu(k,1264) * lu(k,1257) + lu(k,1265) = lu(k,1265) * lu(k,1257) + lu(k,1266) = lu(k,1266) * lu(k,1257) + lu(k,1267) = lu(k,1267) * lu(k,1257) + lu(k,1268) = lu(k,1268) * lu(k,1257) + lu(k,1269) = lu(k,1269) * lu(k,1257) + lu(k,1270) = lu(k,1270) * lu(k,1257) + lu(k,1271) = lu(k,1271) * lu(k,1257) + lu(k,1272) = lu(k,1272) * lu(k,1257) + lu(k,1384) = lu(k,1384) - lu(k,1258) * lu(k,1382) + lu(k,1385) = lu(k,1385) - lu(k,1259) * lu(k,1382) + lu(k,1386) = lu(k,1386) - lu(k,1260) * lu(k,1382) + lu(k,1387) = lu(k,1387) - lu(k,1261) * lu(k,1382) + lu(k,1389) = lu(k,1389) - lu(k,1262) * lu(k,1382) + lu(k,1390) = lu(k,1390) - lu(k,1263) * lu(k,1382) + lu(k,1391) = lu(k,1391) - lu(k,1264) * lu(k,1382) + lu(k,1392) = lu(k,1392) - lu(k,1265) * lu(k,1382) + lu(k,1393) = lu(k,1393) - lu(k,1266) * lu(k,1382) + lu(k,1394) = lu(k,1394) - lu(k,1267) * lu(k,1382) + lu(k,1395) = lu(k,1395) - lu(k,1268) * lu(k,1382) + lu(k,1396) = lu(k,1396) - lu(k,1269) * lu(k,1382) + lu(k,1397) = lu(k,1397) - lu(k,1270) * lu(k,1382) + lu(k,1398) = lu(k,1398) - lu(k,1271) * lu(k,1382) + lu(k,1399) = lu(k,1399) - lu(k,1272) * lu(k,1382) + lu(k,1681) = lu(k,1681) - lu(k,1258) * lu(k,1679) + lu(k,1682) = lu(k,1682) - lu(k,1259) * lu(k,1679) + lu(k,1683) = lu(k,1683) - lu(k,1260) * lu(k,1679) + lu(k,1684) = lu(k,1684) - lu(k,1261) * lu(k,1679) + lu(k,1689) = lu(k,1689) - lu(k,1262) * lu(k,1679) + lu(k,1690) = lu(k,1690) - lu(k,1263) * lu(k,1679) + lu(k,1692) = lu(k,1692) - lu(k,1264) * lu(k,1679) + lu(k,1694) = lu(k,1694) - lu(k,1265) * lu(k,1679) + lu(k,1695) = lu(k,1695) - lu(k,1266) * lu(k,1679) + lu(k,1696) = lu(k,1696) - lu(k,1267) * lu(k,1679) + lu(k,1697) = lu(k,1697) - lu(k,1268) * lu(k,1679) + lu(k,1699) = lu(k,1699) - lu(k,1269) * lu(k,1679) + lu(k,1702) = lu(k,1702) - lu(k,1270) * lu(k,1679) + lu(k,1703) = lu(k,1703) - lu(k,1271) * lu(k,1679) + lu(k,1704) = lu(k,1704) - lu(k,1272) * lu(k,1679) + lu(k,1765) = lu(k,1765) - lu(k,1258) * lu(k,1763) + lu(k,1766) = lu(k,1766) - lu(k,1259) * lu(k,1763) + lu(k,1767) = lu(k,1767) - lu(k,1260) * lu(k,1763) + lu(k,1768) = lu(k,1768) - lu(k,1261) * lu(k,1763) + lu(k,1772) = lu(k,1772) - lu(k,1262) * lu(k,1763) + lu(k,1773) = lu(k,1773) - lu(k,1263) * lu(k,1763) + lu(k,1775) = lu(k,1775) - lu(k,1264) * lu(k,1763) + lu(k,1777) = lu(k,1777) - lu(k,1265) * lu(k,1763) + lu(k,1778) = lu(k,1778) - lu(k,1266) * lu(k,1763) + lu(k,1779) = lu(k,1779) - lu(k,1267) * lu(k,1763) + lu(k,1780) = lu(k,1780) - lu(k,1268) * lu(k,1763) + lu(k,1782) = lu(k,1782) - lu(k,1269) * lu(k,1763) + lu(k,1785) = lu(k,1785) - lu(k,1270) * lu(k,1763) + lu(k,1786) = lu(k,1786) - lu(k,1271) * lu(k,1763) + lu(k,1787) = lu(k,1787) - lu(k,1272) * lu(k,1763) + lu(k,1818) = lu(k,1818) - lu(k,1258) * lu(k,1816) + lu(k,1819) = lu(k,1819) - lu(k,1259) * lu(k,1816) + lu(k,1820) = lu(k,1820) - lu(k,1260) * lu(k,1816) + lu(k,1821) = lu(k,1821) - lu(k,1261) * lu(k,1816) + lu(k,1824) = lu(k,1824) - lu(k,1262) * lu(k,1816) + lu(k,1825) = lu(k,1825) - lu(k,1263) * lu(k,1816) + lu(k,1827) = lu(k,1827) - lu(k,1264) * lu(k,1816) + lu(k,1829) = lu(k,1829) - lu(k,1265) * lu(k,1816) + lu(k,1830) = lu(k,1830) - lu(k,1266) * lu(k,1816) + lu(k,1831) = lu(k,1831) - lu(k,1267) * lu(k,1816) + lu(k,1832) = lu(k,1832) - lu(k,1268) * lu(k,1816) + lu(k,1834) = lu(k,1834) - lu(k,1269) * lu(k,1816) + lu(k,1837) = lu(k,1837) - lu(k,1270) * lu(k,1816) + lu(k,1838) = lu(k,1838) - lu(k,1271) * lu(k,1816) + lu(k,1839) = lu(k,1839) - lu(k,1272) * lu(k,1816) + lu(k,1909) = lu(k,1909) - lu(k,1258) * lu(k,1907) + lu(k,1910) = lu(k,1910) - lu(k,1259) * lu(k,1907) + lu(k,1911) = lu(k,1911) - lu(k,1260) * lu(k,1907) + lu(k,1912) = lu(k,1912) - lu(k,1261) * lu(k,1907) + lu(k,1916) = lu(k,1916) - lu(k,1262) * lu(k,1907) + lu(k,1917) = lu(k,1917) - lu(k,1263) * lu(k,1907) + lu(k,1919) = lu(k,1919) - lu(k,1264) * lu(k,1907) + lu(k,1921) = lu(k,1921) - lu(k,1265) * lu(k,1907) + lu(k,1922) = lu(k,1922) - lu(k,1266) * lu(k,1907) + lu(k,1923) = lu(k,1923) - lu(k,1267) * lu(k,1907) + lu(k,1924) = lu(k,1924) - lu(k,1268) * lu(k,1907) + lu(k,1926) = lu(k,1926) - lu(k,1269) * lu(k,1907) + lu(k,1929) = lu(k,1929) - lu(k,1270) * lu(k,1907) + lu(k,1930) = lu(k,1930) - lu(k,1271) * lu(k,1907) + lu(k,1931) = lu(k,1931) - lu(k,1272) * lu(k,1907) + lu(k,2098) = lu(k,2098) - lu(k,1258) * lu(k,2096) + lu(k,2099) = lu(k,2099) - lu(k,1259) * lu(k,2096) + lu(k,2100) = lu(k,2100) - lu(k,1260) * lu(k,2096) + lu(k,2101) = lu(k,2101) - lu(k,1261) * lu(k,2096) + lu(k,2106) = lu(k,2106) - lu(k,1262) * lu(k,2096) + lu(k,2107) = lu(k,2107) - lu(k,1263) * lu(k,2096) + lu(k,2109) = lu(k,2109) - lu(k,1264) * lu(k,2096) + lu(k,2111) = lu(k,2111) - lu(k,1265) * lu(k,2096) + lu(k,2112) = lu(k,2112) - lu(k,1266) * lu(k,2096) + lu(k,2113) = lu(k,2113) - lu(k,1267) * lu(k,2096) + lu(k,2114) = lu(k,2114) - lu(k,1268) * lu(k,2096) + lu(k,2116) = lu(k,2116) - lu(k,1269) * lu(k,2096) + lu(k,2119) = lu(k,2119) - lu(k,1270) * lu(k,2096) + lu(k,2120) = lu(k,2120) - lu(k,1271) * lu(k,2096) + lu(k,2121) = lu(k,2121) - lu(k,1272) * lu(k,2096) + lu(k,2238) = lu(k,2238) - lu(k,1258) * lu(k,2236) + lu(k,2239) = lu(k,2239) - lu(k,1259) * lu(k,2236) + lu(k,2240) = lu(k,2240) - lu(k,1260) * lu(k,2236) + lu(k,2241) = lu(k,2241) - lu(k,1261) * lu(k,2236) + lu(k,2245) = lu(k,2245) - lu(k,1262) * lu(k,2236) + lu(k,2246) = lu(k,2246) - lu(k,1263) * lu(k,2236) + lu(k,2248) = lu(k,2248) - lu(k,1264) * lu(k,2236) + lu(k,2250) = lu(k,2250) - lu(k,1265) * lu(k,2236) + lu(k,2251) = lu(k,2251) - lu(k,1266) * lu(k,2236) + lu(k,2252) = lu(k,2252) - lu(k,1267) * lu(k,2236) + lu(k,2253) = lu(k,2253) - lu(k,1268) * lu(k,2236) + lu(k,2255) = lu(k,2255) - lu(k,1269) * lu(k,2236) + lu(k,2258) = lu(k,2258) - lu(k,1270) * lu(k,2236) + lu(k,2259) = lu(k,2259) - lu(k,1271) * lu(k,2236) + lu(k,2260) = lu(k,2260) - lu(k,1272) * lu(k,2236) + end do + end subroutine lu_fac25 + subroutine lu_fac26( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1289) = 1._r8 / lu(k,1289) + lu(k,1290) = lu(k,1290) * lu(k,1289) + lu(k,1291) = lu(k,1291) * lu(k,1289) + lu(k,1292) = lu(k,1292) * lu(k,1289) + lu(k,1293) = lu(k,1293) * lu(k,1289) + lu(k,1294) = lu(k,1294) * lu(k,1289) + lu(k,1295) = lu(k,1295) * lu(k,1289) + lu(k,1296) = lu(k,1296) * lu(k,1289) + lu(k,1297) = lu(k,1297) * lu(k,1289) + lu(k,1298) = lu(k,1298) * lu(k,1289) + lu(k,1299) = lu(k,1299) * lu(k,1289) + lu(k,1300) = lu(k,1300) * lu(k,1289) + lu(k,1301) = lu(k,1301) * lu(k,1289) + lu(k,1302) = lu(k,1302) * lu(k,1289) + lu(k,1303) = lu(k,1303) * lu(k,1289) + lu(k,1304) = lu(k,1304) * lu(k,1289) + lu(k,1384) = lu(k,1384) - lu(k,1290) * lu(k,1383) + lu(k,1385) = lu(k,1385) - lu(k,1291) * lu(k,1383) + lu(k,1386) = lu(k,1386) - lu(k,1292) * lu(k,1383) + lu(k,1387) = lu(k,1387) - lu(k,1293) * lu(k,1383) + lu(k,1389) = lu(k,1389) - lu(k,1294) * lu(k,1383) + lu(k,1390) = lu(k,1390) - lu(k,1295) * lu(k,1383) + lu(k,1391) = lu(k,1391) - lu(k,1296) * lu(k,1383) + lu(k,1392) = lu(k,1392) - lu(k,1297) * lu(k,1383) + lu(k,1393) = lu(k,1393) - lu(k,1298) * lu(k,1383) + lu(k,1394) = lu(k,1394) - lu(k,1299) * lu(k,1383) + lu(k,1395) = lu(k,1395) - lu(k,1300) * lu(k,1383) + lu(k,1396) = lu(k,1396) - lu(k,1301) * lu(k,1383) + lu(k,1397) = lu(k,1397) - lu(k,1302) * lu(k,1383) + lu(k,1398) = lu(k,1398) - lu(k,1303) * lu(k,1383) + lu(k,1399) = lu(k,1399) - lu(k,1304) * lu(k,1383) + lu(k,1681) = lu(k,1681) - lu(k,1290) * lu(k,1680) + lu(k,1682) = lu(k,1682) - lu(k,1291) * lu(k,1680) + lu(k,1683) = lu(k,1683) - lu(k,1292) * lu(k,1680) + lu(k,1684) = lu(k,1684) - lu(k,1293) * lu(k,1680) + lu(k,1689) = lu(k,1689) - lu(k,1294) * lu(k,1680) + lu(k,1690) = lu(k,1690) - lu(k,1295) * lu(k,1680) + lu(k,1692) = lu(k,1692) - lu(k,1296) * lu(k,1680) + lu(k,1694) = lu(k,1694) - lu(k,1297) * lu(k,1680) + lu(k,1695) = lu(k,1695) - lu(k,1298) * lu(k,1680) + lu(k,1696) = lu(k,1696) - lu(k,1299) * lu(k,1680) + lu(k,1697) = lu(k,1697) - lu(k,1300) * lu(k,1680) + lu(k,1699) = lu(k,1699) - lu(k,1301) * lu(k,1680) + lu(k,1702) = lu(k,1702) - lu(k,1302) * lu(k,1680) + lu(k,1703) = lu(k,1703) - lu(k,1303) * lu(k,1680) + lu(k,1704) = lu(k,1704) - lu(k,1304) * lu(k,1680) + lu(k,1765) = lu(k,1765) - lu(k,1290) * lu(k,1764) + lu(k,1766) = lu(k,1766) - lu(k,1291) * lu(k,1764) + lu(k,1767) = lu(k,1767) - lu(k,1292) * lu(k,1764) + lu(k,1768) = lu(k,1768) - lu(k,1293) * lu(k,1764) + lu(k,1772) = lu(k,1772) - lu(k,1294) * lu(k,1764) + lu(k,1773) = lu(k,1773) - lu(k,1295) * lu(k,1764) + lu(k,1775) = lu(k,1775) - lu(k,1296) * lu(k,1764) + lu(k,1777) = lu(k,1777) - lu(k,1297) * lu(k,1764) + lu(k,1778) = lu(k,1778) - lu(k,1298) * lu(k,1764) + lu(k,1779) = lu(k,1779) - lu(k,1299) * lu(k,1764) + lu(k,1780) = lu(k,1780) - lu(k,1300) * lu(k,1764) + lu(k,1782) = lu(k,1782) - lu(k,1301) * lu(k,1764) + lu(k,1785) = lu(k,1785) - lu(k,1302) * lu(k,1764) + lu(k,1786) = lu(k,1786) - lu(k,1303) * lu(k,1764) + lu(k,1787) = lu(k,1787) - lu(k,1304) * lu(k,1764) + lu(k,1818) = lu(k,1818) - lu(k,1290) * lu(k,1817) + lu(k,1819) = lu(k,1819) - lu(k,1291) * lu(k,1817) + lu(k,1820) = lu(k,1820) - lu(k,1292) * lu(k,1817) + lu(k,1821) = lu(k,1821) - lu(k,1293) * lu(k,1817) + lu(k,1824) = lu(k,1824) - lu(k,1294) * lu(k,1817) + lu(k,1825) = lu(k,1825) - lu(k,1295) * lu(k,1817) + lu(k,1827) = lu(k,1827) - lu(k,1296) * lu(k,1817) + lu(k,1829) = lu(k,1829) - lu(k,1297) * lu(k,1817) + lu(k,1830) = lu(k,1830) - lu(k,1298) * lu(k,1817) + lu(k,1831) = lu(k,1831) - lu(k,1299) * lu(k,1817) + lu(k,1832) = lu(k,1832) - lu(k,1300) * lu(k,1817) + lu(k,1834) = lu(k,1834) - lu(k,1301) * lu(k,1817) + lu(k,1837) = lu(k,1837) - lu(k,1302) * lu(k,1817) + lu(k,1838) = lu(k,1838) - lu(k,1303) * lu(k,1817) + lu(k,1839) = lu(k,1839) - lu(k,1304) * lu(k,1817) + lu(k,1909) = lu(k,1909) - lu(k,1290) * lu(k,1908) + lu(k,1910) = lu(k,1910) - lu(k,1291) * lu(k,1908) + lu(k,1911) = lu(k,1911) - lu(k,1292) * lu(k,1908) + lu(k,1912) = lu(k,1912) - lu(k,1293) * lu(k,1908) + lu(k,1916) = lu(k,1916) - lu(k,1294) * lu(k,1908) + lu(k,1917) = lu(k,1917) - lu(k,1295) * lu(k,1908) + lu(k,1919) = lu(k,1919) - lu(k,1296) * lu(k,1908) + lu(k,1921) = lu(k,1921) - lu(k,1297) * lu(k,1908) + lu(k,1922) = lu(k,1922) - lu(k,1298) * lu(k,1908) + lu(k,1923) = lu(k,1923) - lu(k,1299) * lu(k,1908) + lu(k,1924) = lu(k,1924) - lu(k,1300) * lu(k,1908) + lu(k,1926) = lu(k,1926) - lu(k,1301) * lu(k,1908) + lu(k,1929) = lu(k,1929) - lu(k,1302) * lu(k,1908) + lu(k,1930) = lu(k,1930) - lu(k,1303) * lu(k,1908) + lu(k,1931) = lu(k,1931) - lu(k,1304) * lu(k,1908) + lu(k,2098) = lu(k,2098) - lu(k,1290) * lu(k,2097) + lu(k,2099) = lu(k,2099) - lu(k,1291) * lu(k,2097) + lu(k,2100) = lu(k,2100) - lu(k,1292) * lu(k,2097) + lu(k,2101) = lu(k,2101) - lu(k,1293) * lu(k,2097) + lu(k,2106) = lu(k,2106) - lu(k,1294) * lu(k,2097) + lu(k,2107) = lu(k,2107) - lu(k,1295) * lu(k,2097) + lu(k,2109) = lu(k,2109) - lu(k,1296) * lu(k,2097) + lu(k,2111) = lu(k,2111) - lu(k,1297) * lu(k,2097) + lu(k,2112) = lu(k,2112) - lu(k,1298) * lu(k,2097) + lu(k,2113) = lu(k,2113) - lu(k,1299) * lu(k,2097) + lu(k,2114) = lu(k,2114) - lu(k,1300) * lu(k,2097) + lu(k,2116) = lu(k,2116) - lu(k,1301) * lu(k,2097) + lu(k,2119) = lu(k,2119) - lu(k,1302) * lu(k,2097) + lu(k,2120) = lu(k,2120) - lu(k,1303) * lu(k,2097) + lu(k,2121) = lu(k,2121) - lu(k,1304) * lu(k,2097) + lu(k,2238) = lu(k,2238) - lu(k,1290) * lu(k,2237) + lu(k,2239) = lu(k,2239) - lu(k,1291) * lu(k,2237) + lu(k,2240) = lu(k,2240) - lu(k,1292) * lu(k,2237) + lu(k,2241) = lu(k,2241) - lu(k,1293) * lu(k,2237) + lu(k,2245) = lu(k,2245) - lu(k,1294) * lu(k,2237) + lu(k,2246) = lu(k,2246) - lu(k,1295) * lu(k,2237) + lu(k,2248) = lu(k,2248) - lu(k,1296) * lu(k,2237) + lu(k,2250) = lu(k,2250) - lu(k,1297) * lu(k,2237) + lu(k,2251) = lu(k,2251) - lu(k,1298) * lu(k,2237) + lu(k,2252) = lu(k,2252) - lu(k,1299) * lu(k,2237) + lu(k,2253) = lu(k,2253) - lu(k,1300) * lu(k,2237) + lu(k,2255) = lu(k,2255) - lu(k,1301) * lu(k,2237) + lu(k,2258) = lu(k,2258) - lu(k,1302) * lu(k,2237) + lu(k,2259) = lu(k,2259) - lu(k,1303) * lu(k,2237) + lu(k,2260) = lu(k,2260) - lu(k,1304) * lu(k,2237) + lu(k,1312) = 1._r8 / lu(k,1312) + lu(k,1313) = lu(k,1313) * lu(k,1312) + lu(k,1314) = lu(k,1314) * lu(k,1312) + lu(k,1315) = lu(k,1315) * lu(k,1312) + lu(k,1316) = lu(k,1316) * lu(k,1312) + lu(k,1317) = lu(k,1317) * lu(k,1312) + lu(k,1318) = lu(k,1318) * lu(k,1312) + lu(k,1319) = lu(k,1319) * lu(k,1312) + lu(k,1320) = lu(k,1320) * lu(k,1312) + lu(k,1321) = lu(k,1321) * lu(k,1312) + lu(k,1322) = lu(k,1322) * lu(k,1312) + lu(k,1323) = lu(k,1323) * lu(k,1312) + lu(k,1324) = lu(k,1324) * lu(k,1312) + lu(k,1334) = - lu(k,1313) * lu(k,1332) + lu(k,1335) = lu(k,1335) - lu(k,1314) * lu(k,1332) + lu(k,1337) = lu(k,1337) - lu(k,1315) * lu(k,1332) + lu(k,1338) = lu(k,1338) - lu(k,1316) * lu(k,1332) + lu(k,1339) = lu(k,1339) - lu(k,1317) * lu(k,1332) + lu(k,1340) = lu(k,1340) - lu(k,1318) * lu(k,1332) + lu(k,1341) = lu(k,1341) - lu(k,1319) * lu(k,1332) + lu(k,1342) = lu(k,1342) - lu(k,1320) * lu(k,1332) + lu(k,1343) = lu(k,1343) - lu(k,1321) * lu(k,1332) + lu(k,1344) = lu(k,1344) - lu(k,1322) * lu(k,1332) + lu(k,1345) = lu(k,1345) - lu(k,1323) * lu(k,1332) + lu(k,1347) = lu(k,1347) - lu(k,1324) * lu(k,1332) + lu(k,1386) = lu(k,1386) - lu(k,1313) * lu(k,1384) + lu(k,1387) = lu(k,1387) - lu(k,1314) * lu(k,1384) + lu(k,1389) = lu(k,1389) - lu(k,1315) * lu(k,1384) + lu(k,1390) = lu(k,1390) - lu(k,1316) * lu(k,1384) + lu(k,1391) = lu(k,1391) - lu(k,1317) * lu(k,1384) + lu(k,1392) = lu(k,1392) - lu(k,1318) * lu(k,1384) + lu(k,1393) = lu(k,1393) - lu(k,1319) * lu(k,1384) + lu(k,1394) = lu(k,1394) - lu(k,1320) * lu(k,1384) + lu(k,1395) = lu(k,1395) - lu(k,1321) * lu(k,1384) + lu(k,1396) = lu(k,1396) - lu(k,1322) * lu(k,1384) + lu(k,1397) = lu(k,1397) - lu(k,1323) * lu(k,1384) + lu(k,1399) = lu(k,1399) - lu(k,1324) * lu(k,1384) + lu(k,1683) = lu(k,1683) - lu(k,1313) * lu(k,1681) + lu(k,1684) = lu(k,1684) - lu(k,1314) * lu(k,1681) + lu(k,1689) = lu(k,1689) - lu(k,1315) * lu(k,1681) + lu(k,1690) = lu(k,1690) - lu(k,1316) * lu(k,1681) + lu(k,1692) = lu(k,1692) - lu(k,1317) * lu(k,1681) + lu(k,1694) = lu(k,1694) - lu(k,1318) * lu(k,1681) + lu(k,1695) = lu(k,1695) - lu(k,1319) * lu(k,1681) + lu(k,1696) = lu(k,1696) - lu(k,1320) * lu(k,1681) + lu(k,1697) = lu(k,1697) - lu(k,1321) * lu(k,1681) + lu(k,1699) = lu(k,1699) - lu(k,1322) * lu(k,1681) + lu(k,1702) = lu(k,1702) - lu(k,1323) * lu(k,1681) + lu(k,1704) = lu(k,1704) - lu(k,1324) * lu(k,1681) + lu(k,1767) = lu(k,1767) - lu(k,1313) * lu(k,1765) + lu(k,1768) = lu(k,1768) - lu(k,1314) * lu(k,1765) + lu(k,1772) = lu(k,1772) - lu(k,1315) * lu(k,1765) + lu(k,1773) = lu(k,1773) - lu(k,1316) * lu(k,1765) + lu(k,1775) = lu(k,1775) - lu(k,1317) * lu(k,1765) + lu(k,1777) = lu(k,1777) - lu(k,1318) * lu(k,1765) + lu(k,1778) = lu(k,1778) - lu(k,1319) * lu(k,1765) + lu(k,1779) = lu(k,1779) - lu(k,1320) * lu(k,1765) + lu(k,1780) = lu(k,1780) - lu(k,1321) * lu(k,1765) + lu(k,1782) = lu(k,1782) - lu(k,1322) * lu(k,1765) + lu(k,1785) = lu(k,1785) - lu(k,1323) * lu(k,1765) + lu(k,1787) = lu(k,1787) - lu(k,1324) * lu(k,1765) + lu(k,1820) = lu(k,1820) - lu(k,1313) * lu(k,1818) + lu(k,1821) = lu(k,1821) - lu(k,1314) * lu(k,1818) + lu(k,1824) = lu(k,1824) - lu(k,1315) * lu(k,1818) + lu(k,1825) = lu(k,1825) - lu(k,1316) * lu(k,1818) + lu(k,1827) = lu(k,1827) - lu(k,1317) * lu(k,1818) + lu(k,1829) = lu(k,1829) - lu(k,1318) * lu(k,1818) + lu(k,1830) = lu(k,1830) - lu(k,1319) * lu(k,1818) + lu(k,1831) = lu(k,1831) - lu(k,1320) * lu(k,1818) + lu(k,1832) = lu(k,1832) - lu(k,1321) * lu(k,1818) + lu(k,1834) = lu(k,1834) - lu(k,1322) * lu(k,1818) + lu(k,1837) = lu(k,1837) - lu(k,1323) * lu(k,1818) + lu(k,1839) = lu(k,1839) - lu(k,1324) * lu(k,1818) + lu(k,1911) = lu(k,1911) - lu(k,1313) * lu(k,1909) + lu(k,1912) = lu(k,1912) - lu(k,1314) * lu(k,1909) + lu(k,1916) = lu(k,1916) - lu(k,1315) * lu(k,1909) + lu(k,1917) = lu(k,1917) - lu(k,1316) * lu(k,1909) + lu(k,1919) = lu(k,1919) - lu(k,1317) * lu(k,1909) + lu(k,1921) = lu(k,1921) - lu(k,1318) * lu(k,1909) + lu(k,1922) = lu(k,1922) - lu(k,1319) * lu(k,1909) + lu(k,1923) = lu(k,1923) - lu(k,1320) * lu(k,1909) + lu(k,1924) = lu(k,1924) - lu(k,1321) * lu(k,1909) + lu(k,1926) = lu(k,1926) - lu(k,1322) * lu(k,1909) + lu(k,1929) = lu(k,1929) - lu(k,1323) * lu(k,1909) + lu(k,1931) = lu(k,1931) - lu(k,1324) * lu(k,1909) + lu(k,2100) = lu(k,2100) - lu(k,1313) * lu(k,2098) + lu(k,2101) = lu(k,2101) - lu(k,1314) * lu(k,2098) + lu(k,2106) = lu(k,2106) - lu(k,1315) * lu(k,2098) + lu(k,2107) = lu(k,2107) - lu(k,1316) * lu(k,2098) + lu(k,2109) = lu(k,2109) - lu(k,1317) * lu(k,2098) + lu(k,2111) = lu(k,2111) - lu(k,1318) * lu(k,2098) + lu(k,2112) = lu(k,2112) - lu(k,1319) * lu(k,2098) + lu(k,2113) = lu(k,2113) - lu(k,1320) * lu(k,2098) + lu(k,2114) = lu(k,2114) - lu(k,1321) * lu(k,2098) + lu(k,2116) = lu(k,2116) - lu(k,1322) * lu(k,2098) + lu(k,2119) = lu(k,2119) - lu(k,1323) * lu(k,2098) + lu(k,2121) = lu(k,2121) - lu(k,1324) * lu(k,2098) + lu(k,2240) = lu(k,2240) - lu(k,1313) * lu(k,2238) + lu(k,2241) = lu(k,2241) - lu(k,1314) * lu(k,2238) + lu(k,2245) = lu(k,2245) - lu(k,1315) * lu(k,2238) + lu(k,2246) = lu(k,2246) - lu(k,1316) * lu(k,2238) + lu(k,2248) = lu(k,2248) - lu(k,1317) * lu(k,2238) + lu(k,2250) = lu(k,2250) - lu(k,1318) * lu(k,2238) + lu(k,2251) = lu(k,2251) - lu(k,1319) * lu(k,2238) + lu(k,2252) = lu(k,2252) - lu(k,1320) * lu(k,2238) + lu(k,2253) = lu(k,2253) - lu(k,1321) * lu(k,2238) + lu(k,2255) = lu(k,2255) - lu(k,1322) * lu(k,2238) + lu(k,2258) = lu(k,2258) - lu(k,1323) * lu(k,2238) + lu(k,2260) = lu(k,2260) - lu(k,1324) * lu(k,2238) + lu(k,1333) = 1._r8 / lu(k,1333) + lu(k,1334) = lu(k,1334) * lu(k,1333) + lu(k,1335) = lu(k,1335) * lu(k,1333) + lu(k,1336) = lu(k,1336) * lu(k,1333) + lu(k,1337) = lu(k,1337) * lu(k,1333) + lu(k,1338) = lu(k,1338) * lu(k,1333) + lu(k,1339) = lu(k,1339) * lu(k,1333) + lu(k,1340) = lu(k,1340) * lu(k,1333) + lu(k,1341) = lu(k,1341) * lu(k,1333) + lu(k,1342) = lu(k,1342) * lu(k,1333) + lu(k,1343) = lu(k,1343) * lu(k,1333) + lu(k,1344) = lu(k,1344) * lu(k,1333) + lu(k,1345) = lu(k,1345) * lu(k,1333) + lu(k,1346) = lu(k,1346) * lu(k,1333) + lu(k,1347) = lu(k,1347) * lu(k,1333) + lu(k,1386) = lu(k,1386) - lu(k,1334) * lu(k,1385) + lu(k,1387) = lu(k,1387) - lu(k,1335) * lu(k,1385) + lu(k,1388) = - lu(k,1336) * lu(k,1385) + lu(k,1389) = lu(k,1389) - lu(k,1337) * lu(k,1385) + lu(k,1390) = lu(k,1390) - lu(k,1338) * lu(k,1385) + lu(k,1391) = lu(k,1391) - lu(k,1339) * lu(k,1385) + lu(k,1392) = lu(k,1392) - lu(k,1340) * lu(k,1385) + lu(k,1393) = lu(k,1393) - lu(k,1341) * lu(k,1385) + lu(k,1394) = lu(k,1394) - lu(k,1342) * lu(k,1385) + lu(k,1395) = lu(k,1395) - lu(k,1343) * lu(k,1385) + lu(k,1396) = lu(k,1396) - lu(k,1344) * lu(k,1385) + lu(k,1397) = lu(k,1397) - lu(k,1345) * lu(k,1385) + lu(k,1398) = lu(k,1398) - lu(k,1346) * lu(k,1385) + lu(k,1399) = lu(k,1399) - lu(k,1347) * lu(k,1385) + lu(k,1683) = lu(k,1683) - lu(k,1334) * lu(k,1682) + lu(k,1684) = lu(k,1684) - lu(k,1335) * lu(k,1682) + lu(k,1687) = lu(k,1687) - lu(k,1336) * lu(k,1682) + lu(k,1689) = lu(k,1689) - lu(k,1337) * lu(k,1682) + lu(k,1690) = lu(k,1690) - lu(k,1338) * lu(k,1682) + lu(k,1692) = lu(k,1692) - lu(k,1339) * lu(k,1682) + lu(k,1694) = lu(k,1694) - lu(k,1340) * lu(k,1682) + lu(k,1695) = lu(k,1695) - lu(k,1341) * lu(k,1682) + lu(k,1696) = lu(k,1696) - lu(k,1342) * lu(k,1682) + lu(k,1697) = lu(k,1697) - lu(k,1343) * lu(k,1682) + lu(k,1699) = lu(k,1699) - lu(k,1344) * lu(k,1682) + lu(k,1702) = lu(k,1702) - lu(k,1345) * lu(k,1682) + lu(k,1703) = lu(k,1703) - lu(k,1346) * lu(k,1682) + lu(k,1704) = lu(k,1704) - lu(k,1347) * lu(k,1682) + lu(k,1767) = lu(k,1767) - lu(k,1334) * lu(k,1766) + lu(k,1768) = lu(k,1768) - lu(k,1335) * lu(k,1766) + lu(k,1770) = lu(k,1770) - lu(k,1336) * lu(k,1766) + lu(k,1772) = lu(k,1772) - lu(k,1337) * lu(k,1766) + lu(k,1773) = lu(k,1773) - lu(k,1338) * lu(k,1766) + lu(k,1775) = lu(k,1775) - lu(k,1339) * lu(k,1766) + lu(k,1777) = lu(k,1777) - lu(k,1340) * lu(k,1766) + lu(k,1778) = lu(k,1778) - lu(k,1341) * lu(k,1766) + lu(k,1779) = lu(k,1779) - lu(k,1342) * lu(k,1766) + lu(k,1780) = lu(k,1780) - lu(k,1343) * lu(k,1766) + lu(k,1782) = lu(k,1782) - lu(k,1344) * lu(k,1766) + lu(k,1785) = lu(k,1785) - lu(k,1345) * lu(k,1766) + lu(k,1786) = lu(k,1786) - lu(k,1346) * lu(k,1766) + lu(k,1787) = lu(k,1787) - lu(k,1347) * lu(k,1766) + lu(k,1820) = lu(k,1820) - lu(k,1334) * lu(k,1819) + lu(k,1821) = lu(k,1821) - lu(k,1335) * lu(k,1819) + lu(k,1822) = - lu(k,1336) * lu(k,1819) + lu(k,1824) = lu(k,1824) - lu(k,1337) * lu(k,1819) + lu(k,1825) = lu(k,1825) - lu(k,1338) * lu(k,1819) + lu(k,1827) = lu(k,1827) - lu(k,1339) * lu(k,1819) + lu(k,1829) = lu(k,1829) - lu(k,1340) * lu(k,1819) + lu(k,1830) = lu(k,1830) - lu(k,1341) * lu(k,1819) + lu(k,1831) = lu(k,1831) - lu(k,1342) * lu(k,1819) + lu(k,1832) = lu(k,1832) - lu(k,1343) * lu(k,1819) + lu(k,1834) = lu(k,1834) - lu(k,1344) * lu(k,1819) + lu(k,1837) = lu(k,1837) - lu(k,1345) * lu(k,1819) + lu(k,1838) = lu(k,1838) - lu(k,1346) * lu(k,1819) + lu(k,1839) = lu(k,1839) - lu(k,1347) * lu(k,1819) + lu(k,1911) = lu(k,1911) - lu(k,1334) * lu(k,1910) + lu(k,1912) = lu(k,1912) - lu(k,1335) * lu(k,1910) + lu(k,1914) = - lu(k,1336) * lu(k,1910) + lu(k,1916) = lu(k,1916) - lu(k,1337) * lu(k,1910) + lu(k,1917) = lu(k,1917) - lu(k,1338) * lu(k,1910) + lu(k,1919) = lu(k,1919) - lu(k,1339) * lu(k,1910) + lu(k,1921) = lu(k,1921) - lu(k,1340) * lu(k,1910) + lu(k,1922) = lu(k,1922) - lu(k,1341) * lu(k,1910) + lu(k,1923) = lu(k,1923) - lu(k,1342) * lu(k,1910) + lu(k,1924) = lu(k,1924) - lu(k,1343) * lu(k,1910) + lu(k,1926) = lu(k,1926) - lu(k,1344) * lu(k,1910) + lu(k,1929) = lu(k,1929) - lu(k,1345) * lu(k,1910) + lu(k,1930) = lu(k,1930) - lu(k,1346) * lu(k,1910) + lu(k,1931) = lu(k,1931) - lu(k,1347) * lu(k,1910) + lu(k,2100) = lu(k,2100) - lu(k,1334) * lu(k,2099) + lu(k,2101) = lu(k,2101) - lu(k,1335) * lu(k,2099) + lu(k,2104) = - lu(k,1336) * lu(k,2099) + lu(k,2106) = lu(k,2106) - lu(k,1337) * lu(k,2099) + lu(k,2107) = lu(k,2107) - lu(k,1338) * lu(k,2099) + lu(k,2109) = lu(k,2109) - lu(k,1339) * lu(k,2099) + lu(k,2111) = lu(k,2111) - lu(k,1340) * lu(k,2099) + lu(k,2112) = lu(k,2112) - lu(k,1341) * lu(k,2099) + lu(k,2113) = lu(k,2113) - lu(k,1342) * lu(k,2099) + lu(k,2114) = lu(k,2114) - lu(k,1343) * lu(k,2099) + lu(k,2116) = lu(k,2116) - lu(k,1344) * lu(k,2099) + lu(k,2119) = lu(k,2119) - lu(k,1345) * lu(k,2099) + lu(k,2120) = lu(k,2120) - lu(k,1346) * lu(k,2099) + lu(k,2121) = lu(k,2121) - lu(k,1347) * lu(k,2099) + lu(k,2240) = lu(k,2240) - lu(k,1334) * lu(k,2239) + lu(k,2241) = lu(k,2241) - lu(k,1335) * lu(k,2239) + lu(k,2243) = lu(k,2243) - lu(k,1336) * lu(k,2239) + lu(k,2245) = lu(k,2245) - lu(k,1337) * lu(k,2239) + lu(k,2246) = lu(k,2246) - lu(k,1338) * lu(k,2239) + lu(k,2248) = lu(k,2248) - lu(k,1339) * lu(k,2239) + lu(k,2250) = lu(k,2250) - lu(k,1340) * lu(k,2239) + lu(k,2251) = lu(k,2251) - lu(k,1341) * lu(k,2239) + lu(k,2252) = lu(k,2252) - lu(k,1342) * lu(k,2239) + lu(k,2253) = lu(k,2253) - lu(k,1343) * lu(k,2239) + lu(k,2255) = lu(k,2255) - lu(k,1344) * lu(k,2239) + lu(k,2258) = lu(k,2258) - lu(k,1345) * lu(k,2239) + lu(k,2259) = lu(k,2259) - lu(k,1346) * lu(k,2239) + lu(k,2260) = lu(k,2260) - lu(k,1347) * lu(k,2239) + lu(k,1355) = 1._r8 / lu(k,1355) + lu(k,1356) = lu(k,1356) * lu(k,1355) + lu(k,1357) = lu(k,1357) * lu(k,1355) + lu(k,1358) = lu(k,1358) * lu(k,1355) + lu(k,1359) = lu(k,1359) * lu(k,1355) + lu(k,1360) = lu(k,1360) * lu(k,1355) + lu(k,1361) = lu(k,1361) * lu(k,1355) + lu(k,1362) = lu(k,1362) * lu(k,1355) + lu(k,1363) = lu(k,1363) * lu(k,1355) + lu(k,1364) = lu(k,1364) * lu(k,1355) + lu(k,1365) = lu(k,1365) * lu(k,1355) + lu(k,1366) = lu(k,1366) * lu(k,1355) + lu(k,1367) = lu(k,1367) * lu(k,1355) + lu(k,1387) = lu(k,1387) - lu(k,1356) * lu(k,1386) + lu(k,1389) = lu(k,1389) - lu(k,1357) * lu(k,1386) + lu(k,1390) = lu(k,1390) - lu(k,1358) * lu(k,1386) + lu(k,1391) = lu(k,1391) - lu(k,1359) * lu(k,1386) + lu(k,1392) = lu(k,1392) - lu(k,1360) * lu(k,1386) + lu(k,1393) = lu(k,1393) - lu(k,1361) * lu(k,1386) + lu(k,1394) = lu(k,1394) - lu(k,1362) * lu(k,1386) + lu(k,1395) = lu(k,1395) - lu(k,1363) * lu(k,1386) + lu(k,1396) = lu(k,1396) - lu(k,1364) * lu(k,1386) + lu(k,1397) = lu(k,1397) - lu(k,1365) * lu(k,1386) + lu(k,1398) = lu(k,1398) - lu(k,1366) * lu(k,1386) + lu(k,1399) = lu(k,1399) - lu(k,1367) * lu(k,1386) + lu(k,1684) = lu(k,1684) - lu(k,1356) * lu(k,1683) + lu(k,1689) = lu(k,1689) - lu(k,1357) * lu(k,1683) + lu(k,1690) = lu(k,1690) - lu(k,1358) * lu(k,1683) + lu(k,1692) = lu(k,1692) - lu(k,1359) * lu(k,1683) + lu(k,1694) = lu(k,1694) - lu(k,1360) * lu(k,1683) + lu(k,1695) = lu(k,1695) - lu(k,1361) * lu(k,1683) + lu(k,1696) = lu(k,1696) - lu(k,1362) * lu(k,1683) + lu(k,1697) = lu(k,1697) - lu(k,1363) * lu(k,1683) + lu(k,1699) = lu(k,1699) - lu(k,1364) * lu(k,1683) + lu(k,1702) = lu(k,1702) - lu(k,1365) * lu(k,1683) + lu(k,1703) = lu(k,1703) - lu(k,1366) * lu(k,1683) + lu(k,1704) = lu(k,1704) - lu(k,1367) * lu(k,1683) + lu(k,1768) = lu(k,1768) - lu(k,1356) * lu(k,1767) + lu(k,1772) = lu(k,1772) - lu(k,1357) * lu(k,1767) + lu(k,1773) = lu(k,1773) - lu(k,1358) * lu(k,1767) + lu(k,1775) = lu(k,1775) - lu(k,1359) * lu(k,1767) + lu(k,1777) = lu(k,1777) - lu(k,1360) * lu(k,1767) + lu(k,1778) = lu(k,1778) - lu(k,1361) * lu(k,1767) + lu(k,1779) = lu(k,1779) - lu(k,1362) * lu(k,1767) + lu(k,1780) = lu(k,1780) - lu(k,1363) * lu(k,1767) + lu(k,1782) = lu(k,1782) - lu(k,1364) * lu(k,1767) + lu(k,1785) = lu(k,1785) - lu(k,1365) * lu(k,1767) + lu(k,1786) = lu(k,1786) - lu(k,1366) * lu(k,1767) + lu(k,1787) = lu(k,1787) - lu(k,1367) * lu(k,1767) + lu(k,1821) = lu(k,1821) - lu(k,1356) * lu(k,1820) + lu(k,1824) = lu(k,1824) - lu(k,1357) * lu(k,1820) + lu(k,1825) = lu(k,1825) - lu(k,1358) * lu(k,1820) + lu(k,1827) = lu(k,1827) - lu(k,1359) * lu(k,1820) + lu(k,1829) = lu(k,1829) - lu(k,1360) * lu(k,1820) + lu(k,1830) = lu(k,1830) - lu(k,1361) * lu(k,1820) + lu(k,1831) = lu(k,1831) - lu(k,1362) * lu(k,1820) + lu(k,1832) = lu(k,1832) - lu(k,1363) * lu(k,1820) + lu(k,1834) = lu(k,1834) - lu(k,1364) * lu(k,1820) + lu(k,1837) = lu(k,1837) - lu(k,1365) * lu(k,1820) + lu(k,1838) = lu(k,1838) - lu(k,1366) * lu(k,1820) + lu(k,1839) = lu(k,1839) - lu(k,1367) * lu(k,1820) + lu(k,1912) = lu(k,1912) - lu(k,1356) * lu(k,1911) + lu(k,1916) = lu(k,1916) - lu(k,1357) * lu(k,1911) + lu(k,1917) = lu(k,1917) - lu(k,1358) * lu(k,1911) + lu(k,1919) = lu(k,1919) - lu(k,1359) * lu(k,1911) + lu(k,1921) = lu(k,1921) - lu(k,1360) * lu(k,1911) + lu(k,1922) = lu(k,1922) - lu(k,1361) * lu(k,1911) + lu(k,1923) = lu(k,1923) - lu(k,1362) * lu(k,1911) + lu(k,1924) = lu(k,1924) - lu(k,1363) * lu(k,1911) + lu(k,1926) = lu(k,1926) - lu(k,1364) * lu(k,1911) + lu(k,1929) = lu(k,1929) - lu(k,1365) * lu(k,1911) + lu(k,1930) = lu(k,1930) - lu(k,1366) * lu(k,1911) + lu(k,1931) = lu(k,1931) - lu(k,1367) * lu(k,1911) + lu(k,1956) = lu(k,1956) - lu(k,1356) * lu(k,1955) + lu(k,1960) = lu(k,1960) - lu(k,1357) * lu(k,1955) + lu(k,1961) = lu(k,1961) - lu(k,1358) * lu(k,1955) + lu(k,1963) = lu(k,1963) - lu(k,1359) * lu(k,1955) + lu(k,1965) = lu(k,1965) - lu(k,1360) * lu(k,1955) + lu(k,1966) = lu(k,1966) - lu(k,1361) * lu(k,1955) + lu(k,1967) = lu(k,1967) - lu(k,1362) * lu(k,1955) + lu(k,1968) = lu(k,1968) - lu(k,1363) * lu(k,1955) + lu(k,1970) = lu(k,1970) - lu(k,1364) * lu(k,1955) + lu(k,1973) = lu(k,1973) - lu(k,1365) * lu(k,1955) + lu(k,1974) = lu(k,1974) - lu(k,1366) * lu(k,1955) + lu(k,1975) = lu(k,1975) - lu(k,1367) * lu(k,1955) + lu(k,2101) = lu(k,2101) - lu(k,1356) * lu(k,2100) + lu(k,2106) = lu(k,2106) - lu(k,1357) * lu(k,2100) + lu(k,2107) = lu(k,2107) - lu(k,1358) * lu(k,2100) + lu(k,2109) = lu(k,2109) - lu(k,1359) * lu(k,2100) + lu(k,2111) = lu(k,2111) - lu(k,1360) * lu(k,2100) + lu(k,2112) = lu(k,2112) - lu(k,1361) * lu(k,2100) + lu(k,2113) = lu(k,2113) - lu(k,1362) * lu(k,2100) + lu(k,2114) = lu(k,2114) - lu(k,1363) * lu(k,2100) + lu(k,2116) = lu(k,2116) - lu(k,1364) * lu(k,2100) + lu(k,2119) = lu(k,2119) - lu(k,1365) * lu(k,2100) + lu(k,2120) = lu(k,2120) - lu(k,1366) * lu(k,2100) + lu(k,2121) = lu(k,2121) - lu(k,1367) * lu(k,2100) + lu(k,2241) = lu(k,2241) - lu(k,1356) * lu(k,2240) + lu(k,2245) = lu(k,2245) - lu(k,1357) * lu(k,2240) + lu(k,2246) = lu(k,2246) - lu(k,1358) * lu(k,2240) + lu(k,2248) = lu(k,2248) - lu(k,1359) * lu(k,2240) + lu(k,2250) = lu(k,2250) - lu(k,1360) * lu(k,2240) + lu(k,2251) = lu(k,2251) - lu(k,1361) * lu(k,2240) + lu(k,2252) = lu(k,2252) - lu(k,1362) * lu(k,2240) + lu(k,2253) = lu(k,2253) - lu(k,1363) * lu(k,2240) + lu(k,2255) = lu(k,2255) - lu(k,1364) * lu(k,2240) + lu(k,2258) = lu(k,2258) - lu(k,1365) * lu(k,2240) + lu(k,2259) = lu(k,2259) - lu(k,1366) * lu(k,2240) + lu(k,2260) = lu(k,2260) - lu(k,1367) * lu(k,2240) + end do + end subroutine lu_fac26 + subroutine lu_fac27( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1387) = 1._r8 / lu(k,1387) + lu(k,1388) = lu(k,1388) * lu(k,1387) + lu(k,1389) = lu(k,1389) * lu(k,1387) + lu(k,1390) = lu(k,1390) * lu(k,1387) + lu(k,1391) = lu(k,1391) * lu(k,1387) + lu(k,1392) = lu(k,1392) * lu(k,1387) + lu(k,1393) = lu(k,1393) * lu(k,1387) + lu(k,1394) = lu(k,1394) * lu(k,1387) + lu(k,1395) = lu(k,1395) * lu(k,1387) + lu(k,1396) = lu(k,1396) * lu(k,1387) + lu(k,1397) = lu(k,1397) * lu(k,1387) + lu(k,1398) = lu(k,1398) * lu(k,1387) + lu(k,1399) = lu(k,1399) * lu(k,1387) + lu(k,1687) = lu(k,1687) - lu(k,1388) * lu(k,1684) + lu(k,1689) = lu(k,1689) - lu(k,1389) * lu(k,1684) + lu(k,1690) = lu(k,1690) - lu(k,1390) * lu(k,1684) + lu(k,1692) = lu(k,1692) - lu(k,1391) * lu(k,1684) + lu(k,1694) = lu(k,1694) - lu(k,1392) * lu(k,1684) + lu(k,1695) = lu(k,1695) - lu(k,1393) * lu(k,1684) + lu(k,1696) = lu(k,1696) - lu(k,1394) * lu(k,1684) + lu(k,1697) = lu(k,1697) - lu(k,1395) * lu(k,1684) + lu(k,1699) = lu(k,1699) - lu(k,1396) * lu(k,1684) + lu(k,1702) = lu(k,1702) - lu(k,1397) * lu(k,1684) + lu(k,1703) = lu(k,1703) - lu(k,1398) * lu(k,1684) + lu(k,1704) = lu(k,1704) - lu(k,1399) * lu(k,1684) + lu(k,1770) = lu(k,1770) - lu(k,1388) * lu(k,1768) + lu(k,1772) = lu(k,1772) - lu(k,1389) * lu(k,1768) + lu(k,1773) = lu(k,1773) - lu(k,1390) * lu(k,1768) + lu(k,1775) = lu(k,1775) - lu(k,1391) * lu(k,1768) + lu(k,1777) = lu(k,1777) - lu(k,1392) * lu(k,1768) + lu(k,1778) = lu(k,1778) - lu(k,1393) * lu(k,1768) + lu(k,1779) = lu(k,1779) - lu(k,1394) * lu(k,1768) + lu(k,1780) = lu(k,1780) - lu(k,1395) * lu(k,1768) + lu(k,1782) = lu(k,1782) - lu(k,1396) * lu(k,1768) + lu(k,1785) = lu(k,1785) - lu(k,1397) * lu(k,1768) + lu(k,1786) = lu(k,1786) - lu(k,1398) * lu(k,1768) + lu(k,1787) = lu(k,1787) - lu(k,1399) * lu(k,1768) + lu(k,1822) = lu(k,1822) - lu(k,1388) * lu(k,1821) + lu(k,1824) = lu(k,1824) - lu(k,1389) * lu(k,1821) + lu(k,1825) = lu(k,1825) - lu(k,1390) * lu(k,1821) + lu(k,1827) = lu(k,1827) - lu(k,1391) * lu(k,1821) + lu(k,1829) = lu(k,1829) - lu(k,1392) * lu(k,1821) + lu(k,1830) = lu(k,1830) - lu(k,1393) * lu(k,1821) + lu(k,1831) = lu(k,1831) - lu(k,1394) * lu(k,1821) + lu(k,1832) = lu(k,1832) - lu(k,1395) * lu(k,1821) + lu(k,1834) = lu(k,1834) - lu(k,1396) * lu(k,1821) + lu(k,1837) = lu(k,1837) - lu(k,1397) * lu(k,1821) + lu(k,1838) = lu(k,1838) - lu(k,1398) * lu(k,1821) + lu(k,1839) = lu(k,1839) - lu(k,1399) * lu(k,1821) + lu(k,1914) = lu(k,1914) - lu(k,1388) * lu(k,1912) + lu(k,1916) = lu(k,1916) - lu(k,1389) * lu(k,1912) + lu(k,1917) = lu(k,1917) - lu(k,1390) * lu(k,1912) + lu(k,1919) = lu(k,1919) - lu(k,1391) * lu(k,1912) + lu(k,1921) = lu(k,1921) - lu(k,1392) * lu(k,1912) + lu(k,1922) = lu(k,1922) - lu(k,1393) * lu(k,1912) + lu(k,1923) = lu(k,1923) - lu(k,1394) * lu(k,1912) + lu(k,1924) = lu(k,1924) - lu(k,1395) * lu(k,1912) + lu(k,1926) = lu(k,1926) - lu(k,1396) * lu(k,1912) + lu(k,1929) = lu(k,1929) - lu(k,1397) * lu(k,1912) + lu(k,1930) = lu(k,1930) - lu(k,1398) * lu(k,1912) + lu(k,1931) = lu(k,1931) - lu(k,1399) * lu(k,1912) + lu(k,1958) = - lu(k,1388) * lu(k,1956) + lu(k,1960) = lu(k,1960) - lu(k,1389) * lu(k,1956) + lu(k,1961) = lu(k,1961) - lu(k,1390) * lu(k,1956) + lu(k,1963) = lu(k,1963) - lu(k,1391) * lu(k,1956) + lu(k,1965) = lu(k,1965) - lu(k,1392) * lu(k,1956) + lu(k,1966) = lu(k,1966) - lu(k,1393) * lu(k,1956) + lu(k,1967) = lu(k,1967) - lu(k,1394) * lu(k,1956) + lu(k,1968) = lu(k,1968) - lu(k,1395) * lu(k,1956) + lu(k,1970) = lu(k,1970) - lu(k,1396) * lu(k,1956) + lu(k,1973) = lu(k,1973) - lu(k,1397) * lu(k,1956) + lu(k,1974) = lu(k,1974) - lu(k,1398) * lu(k,1956) + lu(k,1975) = lu(k,1975) - lu(k,1399) * lu(k,1956) + lu(k,1997) = lu(k,1997) - lu(k,1388) * lu(k,1994) + lu(k,1999) = lu(k,1999) - lu(k,1389) * lu(k,1994) + lu(k,2000) = lu(k,2000) - lu(k,1390) * lu(k,1994) + lu(k,2002) = lu(k,2002) - lu(k,1391) * lu(k,1994) + lu(k,2004) = lu(k,2004) - lu(k,1392) * lu(k,1994) + lu(k,2005) = lu(k,2005) - lu(k,1393) * lu(k,1994) + lu(k,2006) = lu(k,2006) - lu(k,1394) * lu(k,1994) + lu(k,2007) = lu(k,2007) - lu(k,1395) * lu(k,1994) + lu(k,2009) = lu(k,2009) - lu(k,1396) * lu(k,1994) + lu(k,2012) = lu(k,2012) - lu(k,1397) * lu(k,1994) + lu(k,2013) = lu(k,2013) - lu(k,1398) * lu(k,1994) + lu(k,2014) = lu(k,2014) - lu(k,1399) * lu(k,1994) + lu(k,2104) = lu(k,2104) - lu(k,1388) * lu(k,2101) + lu(k,2106) = lu(k,2106) - lu(k,1389) * lu(k,2101) + lu(k,2107) = lu(k,2107) - lu(k,1390) * lu(k,2101) + lu(k,2109) = lu(k,2109) - lu(k,1391) * lu(k,2101) + lu(k,2111) = lu(k,2111) - lu(k,1392) * lu(k,2101) + lu(k,2112) = lu(k,2112) - lu(k,1393) * lu(k,2101) + lu(k,2113) = lu(k,2113) - lu(k,1394) * lu(k,2101) + lu(k,2114) = lu(k,2114) - lu(k,1395) * lu(k,2101) + lu(k,2116) = lu(k,2116) - lu(k,1396) * lu(k,2101) + lu(k,2119) = lu(k,2119) - lu(k,1397) * lu(k,2101) + lu(k,2120) = lu(k,2120) - lu(k,1398) * lu(k,2101) + lu(k,2121) = lu(k,2121) - lu(k,1399) * lu(k,2101) + lu(k,2243) = lu(k,2243) - lu(k,1388) * lu(k,2241) + lu(k,2245) = lu(k,2245) - lu(k,1389) * lu(k,2241) + lu(k,2246) = lu(k,2246) - lu(k,1390) * lu(k,2241) + lu(k,2248) = lu(k,2248) - lu(k,1391) * lu(k,2241) + lu(k,2250) = lu(k,2250) - lu(k,1392) * lu(k,2241) + lu(k,2251) = lu(k,2251) - lu(k,1393) * lu(k,2241) + lu(k,2252) = lu(k,2252) - lu(k,1394) * lu(k,2241) + lu(k,2253) = lu(k,2253) - lu(k,1395) * lu(k,2241) + lu(k,2255) = lu(k,2255) - lu(k,1396) * lu(k,2241) + lu(k,2258) = lu(k,2258) - lu(k,1397) * lu(k,2241) + lu(k,2259) = lu(k,2259) - lu(k,1398) * lu(k,2241) + lu(k,2260) = lu(k,2260) - lu(k,1399) * lu(k,2241) + lu(k,1402) = 1._r8 / lu(k,1402) + lu(k,1403) = lu(k,1403) * lu(k,1402) + lu(k,1404) = lu(k,1404) * lu(k,1402) + lu(k,1405) = lu(k,1405) * lu(k,1402) + lu(k,1406) = lu(k,1406) * lu(k,1402) + lu(k,1407) = lu(k,1407) * lu(k,1402) + lu(k,1408) = lu(k,1408) * lu(k,1402) + lu(k,1409) = lu(k,1409) * lu(k,1402) + lu(k,1410) = lu(k,1410) * lu(k,1402) + lu(k,1411) = lu(k,1411) * lu(k,1402) + lu(k,1412) = lu(k,1412) * lu(k,1402) + lu(k,1413) = lu(k,1413) * lu(k,1402) + lu(k,1431) = lu(k,1431) - lu(k,1403) * lu(k,1430) + lu(k,1432) = lu(k,1432) - lu(k,1404) * lu(k,1430) + lu(k,1433) = lu(k,1433) - lu(k,1405) * lu(k,1430) + lu(k,1435) = lu(k,1435) - lu(k,1406) * lu(k,1430) + lu(k,1436) = lu(k,1436) - lu(k,1407) * lu(k,1430) + lu(k,1437) = lu(k,1437) - lu(k,1408) * lu(k,1430) + lu(k,1438) = lu(k,1438) - lu(k,1409) * lu(k,1430) + lu(k,1439) = lu(k,1439) - lu(k,1410) * lu(k,1430) + lu(k,1441) = lu(k,1441) - lu(k,1411) * lu(k,1430) + lu(k,1442) = lu(k,1442) - lu(k,1412) * lu(k,1430) + lu(k,1443) = lu(k,1443) - lu(k,1413) * lu(k,1430) + lu(k,1445) = - lu(k,1403) * lu(k,1444) + lu(k,1446) = lu(k,1446) - lu(k,1404) * lu(k,1444) + lu(k,1447) = - lu(k,1405) * lu(k,1444) + lu(k,1449) = - lu(k,1406) * lu(k,1444) + lu(k,1450) = lu(k,1450) - lu(k,1407) * lu(k,1444) + lu(k,1451) = - lu(k,1408) * lu(k,1444) + lu(k,1452) = - lu(k,1409) * lu(k,1444) + lu(k,1453) = - lu(k,1410) * lu(k,1444) + lu(k,1455) = - lu(k,1411) * lu(k,1444) + lu(k,1456) = lu(k,1456) - lu(k,1412) * lu(k,1444) + lu(k,1458) = lu(k,1458) - lu(k,1413) * lu(k,1444) + lu(k,1462) = lu(k,1462) - lu(k,1403) * lu(k,1461) + lu(k,1463) = lu(k,1463) - lu(k,1404) * lu(k,1461) + lu(k,1464) = lu(k,1464) - lu(k,1405) * lu(k,1461) + lu(k,1466) = - lu(k,1406) * lu(k,1461) + lu(k,1467) = lu(k,1467) - lu(k,1407) * lu(k,1461) + lu(k,1468) = lu(k,1468) - lu(k,1408) * lu(k,1461) + lu(k,1469) = lu(k,1469) - lu(k,1409) * lu(k,1461) + lu(k,1471) = - lu(k,1410) * lu(k,1461) + lu(k,1473) = - lu(k,1411) * lu(k,1461) + lu(k,1474) = - lu(k,1412) * lu(k,1461) + lu(k,1476) = lu(k,1476) - lu(k,1413) * lu(k,1461) + lu(k,1483) = - lu(k,1403) * lu(k,1481) + lu(k,1484) = lu(k,1484) - lu(k,1404) * lu(k,1481) + lu(k,1485) = lu(k,1485) - lu(k,1405) * lu(k,1481) + lu(k,1487) = lu(k,1487) - lu(k,1406) * lu(k,1481) + lu(k,1488) = lu(k,1488) - lu(k,1407) * lu(k,1481) + lu(k,1489) = lu(k,1489) - lu(k,1408) * lu(k,1481) + lu(k,1490) = - lu(k,1409) * lu(k,1481) + lu(k,1493) = lu(k,1493) - lu(k,1410) * lu(k,1481) + lu(k,1495) = lu(k,1495) - lu(k,1411) * lu(k,1481) + lu(k,1497) = lu(k,1497) - lu(k,1412) * lu(k,1481) + lu(k,1499) = lu(k,1499) - lu(k,1413) * lu(k,1481) + lu(k,1523) = lu(k,1523) - lu(k,1403) * lu(k,1521) + lu(k,1524) = lu(k,1524) - lu(k,1404) * lu(k,1521) + lu(k,1525) = lu(k,1525) - lu(k,1405) * lu(k,1521) + lu(k,1527) = lu(k,1527) - lu(k,1406) * lu(k,1521) + lu(k,1528) = lu(k,1528) - lu(k,1407) * lu(k,1521) + lu(k,1530) = lu(k,1530) - lu(k,1408) * lu(k,1521) + lu(k,1531) = lu(k,1531) - lu(k,1409) * lu(k,1521) + lu(k,1534) = lu(k,1534) - lu(k,1410) * lu(k,1521) + lu(k,1536) = lu(k,1536) - lu(k,1411) * lu(k,1521) + lu(k,1538) = lu(k,1538) - lu(k,1412) * lu(k,1521) + lu(k,1540) = lu(k,1540) - lu(k,1413) * lu(k,1521) + lu(k,1687) = lu(k,1687) - lu(k,1403) * lu(k,1685) + lu(k,1688) = lu(k,1688) - lu(k,1404) * lu(k,1685) + lu(k,1689) = lu(k,1689) - lu(k,1405) * lu(k,1685) + lu(k,1691) = lu(k,1691) - lu(k,1406) * lu(k,1685) + lu(k,1692) = lu(k,1692) - lu(k,1407) * lu(k,1685) + lu(k,1694) = lu(k,1694) - lu(k,1408) * lu(k,1685) + lu(k,1695) = lu(k,1695) - lu(k,1409) * lu(k,1685) + lu(k,1698) = lu(k,1698) - lu(k,1410) * lu(k,1685) + lu(k,1700) = lu(k,1700) - lu(k,1411) * lu(k,1685) + lu(k,1702) = lu(k,1702) - lu(k,1412) * lu(k,1685) + lu(k,1704) = lu(k,1704) - lu(k,1413) * lu(k,1685) + lu(k,1997) = lu(k,1997) - lu(k,1403) * lu(k,1995) + lu(k,1998) = lu(k,1998) - lu(k,1404) * lu(k,1995) + lu(k,1999) = lu(k,1999) - lu(k,1405) * lu(k,1995) + lu(k,2001) = lu(k,2001) - lu(k,1406) * lu(k,1995) + lu(k,2002) = lu(k,2002) - lu(k,1407) * lu(k,1995) + lu(k,2004) = lu(k,2004) - lu(k,1408) * lu(k,1995) + lu(k,2005) = lu(k,2005) - lu(k,1409) * lu(k,1995) + lu(k,2008) = lu(k,2008) - lu(k,1410) * lu(k,1995) + lu(k,2010) = lu(k,2010) - lu(k,1411) * lu(k,1995) + lu(k,2012) = lu(k,2012) - lu(k,1412) * lu(k,1995) + lu(k,2014) = lu(k,2014) - lu(k,1413) * lu(k,1995) + lu(k,2104) = lu(k,2104) - lu(k,1403) * lu(k,2102) + lu(k,2105) = lu(k,2105) - lu(k,1404) * lu(k,2102) + lu(k,2106) = lu(k,2106) - lu(k,1405) * lu(k,2102) + lu(k,2108) = lu(k,2108) - lu(k,1406) * lu(k,2102) + lu(k,2109) = lu(k,2109) - lu(k,1407) * lu(k,2102) + lu(k,2111) = lu(k,2111) - lu(k,1408) * lu(k,2102) + lu(k,2112) = lu(k,2112) - lu(k,1409) * lu(k,2102) + lu(k,2115) = lu(k,2115) - lu(k,1410) * lu(k,2102) + lu(k,2117) = lu(k,2117) - lu(k,1411) * lu(k,2102) + lu(k,2119) = lu(k,2119) - lu(k,1412) * lu(k,2102) + lu(k,2121) = lu(k,2121) - lu(k,1413) * lu(k,2102) + lu(k,2182) = - lu(k,1403) * lu(k,2180) + lu(k,2183) = lu(k,2183) - lu(k,1404) * lu(k,2180) + lu(k,2184) = lu(k,2184) - lu(k,1405) * lu(k,2180) + lu(k,2186) = lu(k,2186) - lu(k,1406) * lu(k,2180) + lu(k,2187) = lu(k,2187) - lu(k,1407) * lu(k,2180) + lu(k,2189) = lu(k,2189) - lu(k,1408) * lu(k,2180) + lu(k,2190) = - lu(k,1409) * lu(k,2180) + lu(k,2193) = lu(k,2193) - lu(k,1410) * lu(k,2180) + lu(k,2195) = lu(k,2195) - lu(k,1411) * lu(k,2180) + lu(k,2197) = lu(k,2197) - lu(k,1412) * lu(k,2180) + lu(k,2199) = lu(k,2199) - lu(k,1413) * lu(k,2180) + lu(k,2269) = lu(k,2269) - lu(k,1403) * lu(k,2267) + lu(k,2270) = lu(k,2270) - lu(k,1404) * lu(k,2267) + lu(k,2271) = lu(k,2271) - lu(k,1405) * lu(k,2267) + lu(k,2273) = lu(k,2273) - lu(k,1406) * lu(k,2267) + lu(k,2274) = lu(k,2274) - lu(k,1407) * lu(k,2267) + lu(k,2276) = lu(k,2276) - lu(k,1408) * lu(k,2267) + lu(k,2277) = lu(k,2277) - lu(k,1409) * lu(k,2267) + lu(k,2280) = lu(k,2280) - lu(k,1410) * lu(k,2267) + lu(k,2282) = - lu(k,1411) * lu(k,2267) + lu(k,2284) = lu(k,2284) - lu(k,1412) * lu(k,2267) + lu(k,2286) = lu(k,2286) - lu(k,1413) * lu(k,2267) + lu(k,1416) = 1._r8 / lu(k,1416) + lu(k,1417) = lu(k,1417) * lu(k,1416) + lu(k,1418) = lu(k,1418) * lu(k,1416) + lu(k,1419) = lu(k,1419) * lu(k,1416) + lu(k,1420) = lu(k,1420) * lu(k,1416) + lu(k,1421) = lu(k,1421) * lu(k,1416) + lu(k,1422) = lu(k,1422) * lu(k,1416) + lu(k,1423) = lu(k,1423) * lu(k,1416) + lu(k,1424) = lu(k,1424) * lu(k,1416) + lu(k,1425) = lu(k,1425) * lu(k,1416) + lu(k,1484) = lu(k,1484) - lu(k,1417) * lu(k,1482) + lu(k,1486) = lu(k,1486) - lu(k,1418) * lu(k,1482) + lu(k,1487) = lu(k,1487) - lu(k,1419) * lu(k,1482) + lu(k,1488) = lu(k,1488) - lu(k,1420) * lu(k,1482) + lu(k,1494) = lu(k,1494) - lu(k,1421) * lu(k,1482) + lu(k,1496) = lu(k,1496) - lu(k,1422) * lu(k,1482) + lu(k,1497) = lu(k,1497) - lu(k,1423) * lu(k,1482) + lu(k,1498) = - lu(k,1424) * lu(k,1482) + lu(k,1499) = lu(k,1499) - lu(k,1425) * lu(k,1482) + lu(k,1524) = lu(k,1524) - lu(k,1417) * lu(k,1522) + lu(k,1526) = lu(k,1526) - lu(k,1418) * lu(k,1522) + lu(k,1527) = lu(k,1527) - lu(k,1419) * lu(k,1522) + lu(k,1528) = lu(k,1528) - lu(k,1420) * lu(k,1522) + lu(k,1535) = lu(k,1535) - lu(k,1421) * lu(k,1522) + lu(k,1537) = lu(k,1537) - lu(k,1422) * lu(k,1522) + lu(k,1538) = lu(k,1538) - lu(k,1423) * lu(k,1522) + lu(k,1539) = lu(k,1539) - lu(k,1424) * lu(k,1522) + lu(k,1540) = lu(k,1540) - lu(k,1425) * lu(k,1522) + lu(k,1688) = lu(k,1688) - lu(k,1417) * lu(k,1686) + lu(k,1690) = lu(k,1690) - lu(k,1418) * lu(k,1686) + lu(k,1691) = lu(k,1691) - lu(k,1419) * lu(k,1686) + lu(k,1692) = lu(k,1692) - lu(k,1420) * lu(k,1686) + lu(k,1699) = lu(k,1699) - lu(k,1421) * lu(k,1686) + lu(k,1701) = lu(k,1701) - lu(k,1422) * lu(k,1686) + lu(k,1702) = lu(k,1702) - lu(k,1423) * lu(k,1686) + lu(k,1703) = lu(k,1703) - lu(k,1424) * lu(k,1686) + lu(k,1704) = lu(k,1704) - lu(k,1425) * lu(k,1686) + lu(k,1714) = lu(k,1714) - lu(k,1417) * lu(k,1713) + lu(k,1716) = lu(k,1716) - lu(k,1418) * lu(k,1713) + lu(k,1717) = - lu(k,1419) * lu(k,1713) + lu(k,1718) = lu(k,1718) - lu(k,1420) * lu(k,1713) + lu(k,1725) = lu(k,1725) - lu(k,1421) * lu(k,1713) + lu(k,1727) = lu(k,1727) - lu(k,1422) * lu(k,1713) + lu(k,1728) = lu(k,1728) - lu(k,1423) * lu(k,1713) + lu(k,1729) = lu(k,1729) - lu(k,1424) * lu(k,1713) + lu(k,1730) = lu(k,1730) - lu(k,1425) * lu(k,1713) + lu(k,1771) = lu(k,1771) - lu(k,1417) * lu(k,1769) + lu(k,1773) = lu(k,1773) - lu(k,1418) * lu(k,1769) + lu(k,1774) = - lu(k,1419) * lu(k,1769) + lu(k,1775) = lu(k,1775) - lu(k,1420) * lu(k,1769) + lu(k,1782) = lu(k,1782) - lu(k,1421) * lu(k,1769) + lu(k,1784) = lu(k,1784) - lu(k,1422) * lu(k,1769) + lu(k,1785) = lu(k,1785) - lu(k,1423) * lu(k,1769) + lu(k,1786) = lu(k,1786) - lu(k,1424) * lu(k,1769) + lu(k,1787) = lu(k,1787) - lu(k,1425) * lu(k,1769) + lu(k,1915) = lu(k,1915) - lu(k,1417) * lu(k,1913) + lu(k,1917) = lu(k,1917) - lu(k,1418) * lu(k,1913) + lu(k,1918) = lu(k,1918) - lu(k,1419) * lu(k,1913) + lu(k,1919) = lu(k,1919) - lu(k,1420) * lu(k,1913) + lu(k,1926) = lu(k,1926) - lu(k,1421) * lu(k,1913) + lu(k,1928) = lu(k,1928) - lu(k,1422) * lu(k,1913) + lu(k,1929) = lu(k,1929) - lu(k,1423) * lu(k,1913) + lu(k,1930) = lu(k,1930) - lu(k,1424) * lu(k,1913) + lu(k,1931) = lu(k,1931) - lu(k,1425) * lu(k,1913) + lu(k,1959) = lu(k,1959) - lu(k,1417) * lu(k,1957) + lu(k,1961) = lu(k,1961) - lu(k,1418) * lu(k,1957) + lu(k,1962) = lu(k,1962) - lu(k,1419) * lu(k,1957) + lu(k,1963) = lu(k,1963) - lu(k,1420) * lu(k,1957) + lu(k,1970) = lu(k,1970) - lu(k,1421) * lu(k,1957) + lu(k,1972) = lu(k,1972) - lu(k,1422) * lu(k,1957) + lu(k,1973) = lu(k,1973) - lu(k,1423) * lu(k,1957) + lu(k,1974) = lu(k,1974) - lu(k,1424) * lu(k,1957) + lu(k,1975) = lu(k,1975) - lu(k,1425) * lu(k,1957) + lu(k,1998) = lu(k,1998) - lu(k,1417) * lu(k,1996) + lu(k,2000) = lu(k,2000) - lu(k,1418) * lu(k,1996) + lu(k,2001) = lu(k,2001) - lu(k,1419) * lu(k,1996) + lu(k,2002) = lu(k,2002) - lu(k,1420) * lu(k,1996) + lu(k,2009) = lu(k,2009) - lu(k,1421) * lu(k,1996) + lu(k,2011) = - lu(k,1422) * lu(k,1996) + lu(k,2012) = lu(k,2012) - lu(k,1423) * lu(k,1996) + lu(k,2013) = lu(k,2013) - lu(k,1424) * lu(k,1996) + lu(k,2014) = lu(k,2014) - lu(k,1425) * lu(k,1996) + lu(k,2105) = lu(k,2105) - lu(k,1417) * lu(k,2103) + lu(k,2107) = lu(k,2107) - lu(k,1418) * lu(k,2103) + lu(k,2108) = lu(k,2108) - lu(k,1419) * lu(k,2103) + lu(k,2109) = lu(k,2109) - lu(k,1420) * lu(k,2103) + lu(k,2116) = lu(k,2116) - lu(k,1421) * lu(k,2103) + lu(k,2118) = lu(k,2118) - lu(k,1422) * lu(k,2103) + lu(k,2119) = lu(k,2119) - lu(k,1423) * lu(k,2103) + lu(k,2120) = lu(k,2120) - lu(k,1424) * lu(k,2103) + lu(k,2121) = lu(k,2121) - lu(k,1425) * lu(k,2103) + lu(k,2128) = lu(k,2128) - lu(k,1417) * lu(k,2127) + lu(k,2130) = - lu(k,1418) * lu(k,2127) + lu(k,2131) = lu(k,2131) - lu(k,1419) * lu(k,2127) + lu(k,2132) = lu(k,2132) - lu(k,1420) * lu(k,2127) + lu(k,2139) = - lu(k,1421) * lu(k,2127) + lu(k,2141) = lu(k,2141) - lu(k,1422) * lu(k,2127) + lu(k,2142) = lu(k,2142) - lu(k,1423) * lu(k,2127) + lu(k,2143) = - lu(k,1424) * lu(k,2127) + lu(k,2144) = lu(k,2144) - lu(k,1425) * lu(k,2127) + lu(k,2152) = lu(k,2152) - lu(k,1417) * lu(k,2151) + lu(k,2154) = - lu(k,1418) * lu(k,2151) + lu(k,2155) = - lu(k,1419) * lu(k,2151) + lu(k,2156) = lu(k,2156) - lu(k,1420) * lu(k,2151) + lu(k,2163) = lu(k,2163) - lu(k,1421) * lu(k,2151) + lu(k,2165) = lu(k,2165) - lu(k,1422) * lu(k,2151) + lu(k,2166) = lu(k,2166) - lu(k,1423) * lu(k,2151) + lu(k,2167) = lu(k,2167) - lu(k,1424) * lu(k,2151) + lu(k,2168) = lu(k,2168) - lu(k,1425) * lu(k,2151) + lu(k,2183) = lu(k,2183) - lu(k,1417) * lu(k,2181) + lu(k,2185) = lu(k,2185) - lu(k,1418) * lu(k,2181) + lu(k,2186) = lu(k,2186) - lu(k,1419) * lu(k,2181) + lu(k,2187) = lu(k,2187) - lu(k,1420) * lu(k,2181) + lu(k,2194) = lu(k,2194) - lu(k,1421) * lu(k,2181) + lu(k,2196) = lu(k,2196) - lu(k,1422) * lu(k,2181) + lu(k,2197) = lu(k,2197) - lu(k,1423) * lu(k,2181) + lu(k,2198) = lu(k,2198) - lu(k,1424) * lu(k,2181) + lu(k,2199) = lu(k,2199) - lu(k,1425) * lu(k,2181) + lu(k,2244) = lu(k,2244) - lu(k,1417) * lu(k,2242) + lu(k,2246) = lu(k,2246) - lu(k,1418) * lu(k,2242) + lu(k,2247) = lu(k,2247) - lu(k,1419) * lu(k,2242) + lu(k,2248) = lu(k,2248) - lu(k,1420) * lu(k,2242) + lu(k,2255) = lu(k,2255) - lu(k,1421) * lu(k,2242) + lu(k,2257) = lu(k,2257) - lu(k,1422) * lu(k,2242) + lu(k,2258) = lu(k,2258) - lu(k,1423) * lu(k,2242) + lu(k,2259) = lu(k,2259) - lu(k,1424) * lu(k,2242) + lu(k,2260) = lu(k,2260) - lu(k,1425) * lu(k,2242) + lu(k,2270) = lu(k,2270) - lu(k,1417) * lu(k,2268) + lu(k,2272) = - lu(k,1418) * lu(k,2268) + lu(k,2273) = lu(k,2273) - lu(k,1419) * lu(k,2268) + lu(k,2274) = lu(k,2274) - lu(k,1420) * lu(k,2268) + lu(k,2281) = lu(k,2281) - lu(k,1421) * lu(k,2268) + lu(k,2283) = lu(k,2283) - lu(k,1422) * lu(k,2268) + lu(k,2284) = lu(k,2284) - lu(k,1423) * lu(k,2268) + lu(k,2285) = lu(k,2285) - lu(k,1424) * lu(k,2268) + lu(k,2286) = lu(k,2286) - lu(k,1425) * lu(k,2268) + end do + end subroutine lu_fac27 + subroutine lu_fac28( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1431) = 1._r8 / lu(k,1431) + lu(k,1432) = lu(k,1432) * lu(k,1431) + lu(k,1433) = lu(k,1433) * lu(k,1431) + lu(k,1434) = lu(k,1434) * lu(k,1431) + lu(k,1435) = lu(k,1435) * lu(k,1431) + lu(k,1436) = lu(k,1436) * lu(k,1431) + lu(k,1437) = lu(k,1437) * lu(k,1431) + lu(k,1438) = lu(k,1438) * lu(k,1431) + lu(k,1439) = lu(k,1439) * lu(k,1431) + lu(k,1440) = lu(k,1440) * lu(k,1431) + lu(k,1441) = lu(k,1441) * lu(k,1431) + lu(k,1442) = lu(k,1442) * lu(k,1431) + lu(k,1443) = lu(k,1443) * lu(k,1431) + lu(k,1446) = lu(k,1446) - lu(k,1432) * lu(k,1445) + lu(k,1447) = lu(k,1447) - lu(k,1433) * lu(k,1445) + lu(k,1448) = - lu(k,1434) * lu(k,1445) + lu(k,1449) = lu(k,1449) - lu(k,1435) * lu(k,1445) + lu(k,1450) = lu(k,1450) - lu(k,1436) * lu(k,1445) + lu(k,1451) = lu(k,1451) - lu(k,1437) * lu(k,1445) + lu(k,1452) = lu(k,1452) - lu(k,1438) * lu(k,1445) + lu(k,1453) = lu(k,1453) - lu(k,1439) * lu(k,1445) + lu(k,1454) = lu(k,1454) - lu(k,1440) * lu(k,1445) + lu(k,1455) = lu(k,1455) - lu(k,1441) * lu(k,1445) + lu(k,1456) = lu(k,1456) - lu(k,1442) * lu(k,1445) + lu(k,1458) = lu(k,1458) - lu(k,1443) * lu(k,1445) + lu(k,1463) = lu(k,1463) - lu(k,1432) * lu(k,1462) + lu(k,1464) = lu(k,1464) - lu(k,1433) * lu(k,1462) + lu(k,1465) = - lu(k,1434) * lu(k,1462) + lu(k,1466) = lu(k,1466) - lu(k,1435) * lu(k,1462) + lu(k,1467) = lu(k,1467) - lu(k,1436) * lu(k,1462) + lu(k,1468) = lu(k,1468) - lu(k,1437) * lu(k,1462) + lu(k,1469) = lu(k,1469) - lu(k,1438) * lu(k,1462) + lu(k,1471) = lu(k,1471) - lu(k,1439) * lu(k,1462) + lu(k,1472) = - lu(k,1440) * lu(k,1462) + lu(k,1473) = lu(k,1473) - lu(k,1441) * lu(k,1462) + lu(k,1474) = lu(k,1474) - lu(k,1442) * lu(k,1462) + lu(k,1476) = lu(k,1476) - lu(k,1443) * lu(k,1462) + lu(k,1484) = lu(k,1484) - lu(k,1432) * lu(k,1483) + lu(k,1485) = lu(k,1485) - lu(k,1433) * lu(k,1483) + lu(k,1486) = lu(k,1486) - lu(k,1434) * lu(k,1483) + lu(k,1487) = lu(k,1487) - lu(k,1435) * lu(k,1483) + lu(k,1488) = lu(k,1488) - lu(k,1436) * lu(k,1483) + lu(k,1489) = lu(k,1489) - lu(k,1437) * lu(k,1483) + lu(k,1490) = lu(k,1490) - lu(k,1438) * lu(k,1483) + lu(k,1493) = lu(k,1493) - lu(k,1439) * lu(k,1483) + lu(k,1494) = lu(k,1494) - lu(k,1440) * lu(k,1483) + lu(k,1495) = lu(k,1495) - lu(k,1441) * lu(k,1483) + lu(k,1497) = lu(k,1497) - lu(k,1442) * lu(k,1483) + lu(k,1499) = lu(k,1499) - lu(k,1443) * lu(k,1483) + lu(k,1524) = lu(k,1524) - lu(k,1432) * lu(k,1523) + lu(k,1525) = lu(k,1525) - lu(k,1433) * lu(k,1523) + lu(k,1526) = lu(k,1526) - lu(k,1434) * lu(k,1523) + lu(k,1527) = lu(k,1527) - lu(k,1435) * lu(k,1523) + lu(k,1528) = lu(k,1528) - lu(k,1436) * lu(k,1523) + lu(k,1530) = lu(k,1530) - lu(k,1437) * lu(k,1523) + lu(k,1531) = lu(k,1531) - lu(k,1438) * lu(k,1523) + lu(k,1534) = lu(k,1534) - lu(k,1439) * lu(k,1523) + lu(k,1535) = lu(k,1535) - lu(k,1440) * lu(k,1523) + lu(k,1536) = lu(k,1536) - lu(k,1441) * lu(k,1523) + lu(k,1538) = lu(k,1538) - lu(k,1442) * lu(k,1523) + lu(k,1540) = lu(k,1540) - lu(k,1443) * lu(k,1523) + lu(k,1688) = lu(k,1688) - lu(k,1432) * lu(k,1687) + lu(k,1689) = lu(k,1689) - lu(k,1433) * lu(k,1687) + lu(k,1690) = lu(k,1690) - lu(k,1434) * lu(k,1687) + lu(k,1691) = lu(k,1691) - lu(k,1435) * lu(k,1687) + lu(k,1692) = lu(k,1692) - lu(k,1436) * lu(k,1687) + lu(k,1694) = lu(k,1694) - lu(k,1437) * lu(k,1687) + lu(k,1695) = lu(k,1695) - lu(k,1438) * lu(k,1687) + lu(k,1698) = lu(k,1698) - lu(k,1439) * lu(k,1687) + lu(k,1699) = lu(k,1699) - lu(k,1440) * lu(k,1687) + lu(k,1700) = lu(k,1700) - lu(k,1441) * lu(k,1687) + lu(k,1702) = lu(k,1702) - lu(k,1442) * lu(k,1687) + lu(k,1704) = lu(k,1704) - lu(k,1443) * lu(k,1687) + lu(k,1771) = lu(k,1771) - lu(k,1432) * lu(k,1770) + lu(k,1772) = lu(k,1772) - lu(k,1433) * lu(k,1770) + lu(k,1773) = lu(k,1773) - lu(k,1434) * lu(k,1770) + lu(k,1774) = lu(k,1774) - lu(k,1435) * lu(k,1770) + lu(k,1775) = lu(k,1775) - lu(k,1436) * lu(k,1770) + lu(k,1777) = lu(k,1777) - lu(k,1437) * lu(k,1770) + lu(k,1778) = lu(k,1778) - lu(k,1438) * lu(k,1770) + lu(k,1781) = lu(k,1781) - lu(k,1439) * lu(k,1770) + lu(k,1782) = lu(k,1782) - lu(k,1440) * lu(k,1770) + lu(k,1783) = - lu(k,1441) * lu(k,1770) + lu(k,1785) = lu(k,1785) - lu(k,1442) * lu(k,1770) + lu(k,1787) = lu(k,1787) - lu(k,1443) * lu(k,1770) + lu(k,1823) = lu(k,1823) - lu(k,1432) * lu(k,1822) + lu(k,1824) = lu(k,1824) - lu(k,1433) * lu(k,1822) + lu(k,1825) = lu(k,1825) - lu(k,1434) * lu(k,1822) + lu(k,1826) = - lu(k,1435) * lu(k,1822) + lu(k,1827) = lu(k,1827) - lu(k,1436) * lu(k,1822) + lu(k,1829) = lu(k,1829) - lu(k,1437) * lu(k,1822) + lu(k,1830) = lu(k,1830) - lu(k,1438) * lu(k,1822) + lu(k,1833) = lu(k,1833) - lu(k,1439) * lu(k,1822) + lu(k,1834) = lu(k,1834) - lu(k,1440) * lu(k,1822) + lu(k,1835) = - lu(k,1441) * lu(k,1822) + lu(k,1837) = lu(k,1837) - lu(k,1442) * lu(k,1822) + lu(k,1839) = lu(k,1839) - lu(k,1443) * lu(k,1822) + lu(k,1915) = lu(k,1915) - lu(k,1432) * lu(k,1914) + lu(k,1916) = lu(k,1916) - lu(k,1433) * lu(k,1914) + lu(k,1917) = lu(k,1917) - lu(k,1434) * lu(k,1914) + lu(k,1918) = lu(k,1918) - lu(k,1435) * lu(k,1914) + lu(k,1919) = lu(k,1919) - lu(k,1436) * lu(k,1914) + lu(k,1921) = lu(k,1921) - lu(k,1437) * lu(k,1914) + lu(k,1922) = lu(k,1922) - lu(k,1438) * lu(k,1914) + lu(k,1925) = lu(k,1925) - lu(k,1439) * lu(k,1914) + lu(k,1926) = lu(k,1926) - lu(k,1440) * lu(k,1914) + lu(k,1927) = - lu(k,1441) * lu(k,1914) + lu(k,1929) = lu(k,1929) - lu(k,1442) * lu(k,1914) + lu(k,1931) = lu(k,1931) - lu(k,1443) * lu(k,1914) + lu(k,1959) = lu(k,1959) - lu(k,1432) * lu(k,1958) + lu(k,1960) = lu(k,1960) - lu(k,1433) * lu(k,1958) + lu(k,1961) = lu(k,1961) - lu(k,1434) * lu(k,1958) + lu(k,1962) = lu(k,1962) - lu(k,1435) * lu(k,1958) + lu(k,1963) = lu(k,1963) - lu(k,1436) * lu(k,1958) + lu(k,1965) = lu(k,1965) - lu(k,1437) * lu(k,1958) + lu(k,1966) = lu(k,1966) - lu(k,1438) * lu(k,1958) + lu(k,1969) = lu(k,1969) - lu(k,1439) * lu(k,1958) + lu(k,1970) = lu(k,1970) - lu(k,1440) * lu(k,1958) + lu(k,1971) = lu(k,1971) - lu(k,1441) * lu(k,1958) + lu(k,1973) = lu(k,1973) - lu(k,1442) * lu(k,1958) + lu(k,1975) = lu(k,1975) - lu(k,1443) * lu(k,1958) + lu(k,1998) = lu(k,1998) - lu(k,1432) * lu(k,1997) + lu(k,1999) = lu(k,1999) - lu(k,1433) * lu(k,1997) + lu(k,2000) = lu(k,2000) - lu(k,1434) * lu(k,1997) + lu(k,2001) = lu(k,2001) - lu(k,1435) * lu(k,1997) + lu(k,2002) = lu(k,2002) - lu(k,1436) * lu(k,1997) + lu(k,2004) = lu(k,2004) - lu(k,1437) * lu(k,1997) + lu(k,2005) = lu(k,2005) - lu(k,1438) * lu(k,1997) + lu(k,2008) = lu(k,2008) - lu(k,1439) * lu(k,1997) + lu(k,2009) = lu(k,2009) - lu(k,1440) * lu(k,1997) + lu(k,2010) = lu(k,2010) - lu(k,1441) * lu(k,1997) + lu(k,2012) = lu(k,2012) - lu(k,1442) * lu(k,1997) + lu(k,2014) = lu(k,2014) - lu(k,1443) * lu(k,1997) + lu(k,2105) = lu(k,2105) - lu(k,1432) * lu(k,2104) + lu(k,2106) = lu(k,2106) - lu(k,1433) * lu(k,2104) + lu(k,2107) = lu(k,2107) - lu(k,1434) * lu(k,2104) + lu(k,2108) = lu(k,2108) - lu(k,1435) * lu(k,2104) + lu(k,2109) = lu(k,2109) - lu(k,1436) * lu(k,2104) + lu(k,2111) = lu(k,2111) - lu(k,1437) * lu(k,2104) + lu(k,2112) = lu(k,2112) - lu(k,1438) * lu(k,2104) + lu(k,2115) = lu(k,2115) - lu(k,1439) * lu(k,2104) + lu(k,2116) = lu(k,2116) - lu(k,1440) * lu(k,2104) + lu(k,2117) = lu(k,2117) - lu(k,1441) * lu(k,2104) + lu(k,2119) = lu(k,2119) - lu(k,1442) * lu(k,2104) + lu(k,2121) = lu(k,2121) - lu(k,1443) * lu(k,2104) + lu(k,2183) = lu(k,2183) - lu(k,1432) * lu(k,2182) + lu(k,2184) = lu(k,2184) - lu(k,1433) * lu(k,2182) + lu(k,2185) = lu(k,2185) - lu(k,1434) * lu(k,2182) + lu(k,2186) = lu(k,2186) - lu(k,1435) * lu(k,2182) + lu(k,2187) = lu(k,2187) - lu(k,1436) * lu(k,2182) + lu(k,2189) = lu(k,2189) - lu(k,1437) * lu(k,2182) + lu(k,2190) = lu(k,2190) - lu(k,1438) * lu(k,2182) + lu(k,2193) = lu(k,2193) - lu(k,1439) * lu(k,2182) + lu(k,2194) = lu(k,2194) - lu(k,1440) * lu(k,2182) + lu(k,2195) = lu(k,2195) - lu(k,1441) * lu(k,2182) + lu(k,2197) = lu(k,2197) - lu(k,1442) * lu(k,2182) + lu(k,2199) = lu(k,2199) - lu(k,1443) * lu(k,2182) + lu(k,2244) = lu(k,2244) - lu(k,1432) * lu(k,2243) + lu(k,2245) = lu(k,2245) - lu(k,1433) * lu(k,2243) + lu(k,2246) = lu(k,2246) - lu(k,1434) * lu(k,2243) + lu(k,2247) = lu(k,2247) - lu(k,1435) * lu(k,2243) + lu(k,2248) = lu(k,2248) - lu(k,1436) * lu(k,2243) + lu(k,2250) = lu(k,2250) - lu(k,1437) * lu(k,2243) + lu(k,2251) = lu(k,2251) - lu(k,1438) * lu(k,2243) + lu(k,2254) = lu(k,2254) - lu(k,1439) * lu(k,2243) + lu(k,2255) = lu(k,2255) - lu(k,1440) * lu(k,2243) + lu(k,2256) = - lu(k,1441) * lu(k,2243) + lu(k,2258) = lu(k,2258) - lu(k,1442) * lu(k,2243) + lu(k,2260) = lu(k,2260) - lu(k,1443) * lu(k,2243) + lu(k,2270) = lu(k,2270) - lu(k,1432) * lu(k,2269) + lu(k,2271) = lu(k,2271) - lu(k,1433) * lu(k,2269) + lu(k,2272) = lu(k,2272) - lu(k,1434) * lu(k,2269) + lu(k,2273) = lu(k,2273) - lu(k,1435) * lu(k,2269) + lu(k,2274) = lu(k,2274) - lu(k,1436) * lu(k,2269) + lu(k,2276) = lu(k,2276) - lu(k,1437) * lu(k,2269) + lu(k,2277) = lu(k,2277) - lu(k,1438) * lu(k,2269) + lu(k,2280) = lu(k,2280) - lu(k,1439) * lu(k,2269) + lu(k,2281) = lu(k,2281) - lu(k,1440) * lu(k,2269) + lu(k,2282) = lu(k,2282) - lu(k,1441) * lu(k,2269) + lu(k,2284) = lu(k,2284) - lu(k,1442) * lu(k,2269) + lu(k,2286) = lu(k,2286) - lu(k,1443) * lu(k,2269) + lu(k,1446) = 1._r8 / lu(k,1446) + lu(k,1447) = lu(k,1447) * lu(k,1446) + lu(k,1448) = lu(k,1448) * lu(k,1446) + lu(k,1449) = lu(k,1449) * lu(k,1446) + lu(k,1450) = lu(k,1450) * lu(k,1446) + lu(k,1451) = lu(k,1451) * lu(k,1446) + lu(k,1452) = lu(k,1452) * lu(k,1446) + lu(k,1453) = lu(k,1453) * lu(k,1446) + lu(k,1454) = lu(k,1454) * lu(k,1446) + lu(k,1455) = lu(k,1455) * lu(k,1446) + lu(k,1456) = lu(k,1456) * lu(k,1446) + lu(k,1457) = lu(k,1457) * lu(k,1446) + lu(k,1458) = lu(k,1458) * lu(k,1446) + lu(k,1464) = lu(k,1464) - lu(k,1447) * lu(k,1463) + lu(k,1465) = lu(k,1465) - lu(k,1448) * lu(k,1463) + lu(k,1466) = lu(k,1466) - lu(k,1449) * lu(k,1463) + lu(k,1467) = lu(k,1467) - lu(k,1450) * lu(k,1463) + lu(k,1468) = lu(k,1468) - lu(k,1451) * lu(k,1463) + lu(k,1469) = lu(k,1469) - lu(k,1452) * lu(k,1463) + lu(k,1471) = lu(k,1471) - lu(k,1453) * lu(k,1463) + lu(k,1472) = lu(k,1472) - lu(k,1454) * lu(k,1463) + lu(k,1473) = lu(k,1473) - lu(k,1455) * lu(k,1463) + lu(k,1474) = lu(k,1474) - lu(k,1456) * lu(k,1463) + lu(k,1475) = - lu(k,1457) * lu(k,1463) + lu(k,1476) = lu(k,1476) - lu(k,1458) * lu(k,1463) + lu(k,1485) = lu(k,1485) - lu(k,1447) * lu(k,1484) + lu(k,1486) = lu(k,1486) - lu(k,1448) * lu(k,1484) + lu(k,1487) = lu(k,1487) - lu(k,1449) * lu(k,1484) + lu(k,1488) = lu(k,1488) - lu(k,1450) * lu(k,1484) + lu(k,1489) = lu(k,1489) - lu(k,1451) * lu(k,1484) + lu(k,1490) = lu(k,1490) - lu(k,1452) * lu(k,1484) + lu(k,1493) = lu(k,1493) - lu(k,1453) * lu(k,1484) + lu(k,1494) = lu(k,1494) - lu(k,1454) * lu(k,1484) + lu(k,1495) = lu(k,1495) - lu(k,1455) * lu(k,1484) + lu(k,1497) = lu(k,1497) - lu(k,1456) * lu(k,1484) + lu(k,1498) = lu(k,1498) - lu(k,1457) * lu(k,1484) + lu(k,1499) = lu(k,1499) - lu(k,1458) * lu(k,1484) + lu(k,1525) = lu(k,1525) - lu(k,1447) * lu(k,1524) + lu(k,1526) = lu(k,1526) - lu(k,1448) * lu(k,1524) + lu(k,1527) = lu(k,1527) - lu(k,1449) * lu(k,1524) + lu(k,1528) = lu(k,1528) - lu(k,1450) * lu(k,1524) + lu(k,1530) = lu(k,1530) - lu(k,1451) * lu(k,1524) + lu(k,1531) = lu(k,1531) - lu(k,1452) * lu(k,1524) + lu(k,1534) = lu(k,1534) - lu(k,1453) * lu(k,1524) + lu(k,1535) = lu(k,1535) - lu(k,1454) * lu(k,1524) + lu(k,1536) = lu(k,1536) - lu(k,1455) * lu(k,1524) + lu(k,1538) = lu(k,1538) - lu(k,1456) * lu(k,1524) + lu(k,1539) = lu(k,1539) - lu(k,1457) * lu(k,1524) + lu(k,1540) = lu(k,1540) - lu(k,1458) * lu(k,1524) + lu(k,1689) = lu(k,1689) - lu(k,1447) * lu(k,1688) + lu(k,1690) = lu(k,1690) - lu(k,1448) * lu(k,1688) + lu(k,1691) = lu(k,1691) - lu(k,1449) * lu(k,1688) + lu(k,1692) = lu(k,1692) - lu(k,1450) * lu(k,1688) + lu(k,1694) = lu(k,1694) - lu(k,1451) * lu(k,1688) + lu(k,1695) = lu(k,1695) - lu(k,1452) * lu(k,1688) + lu(k,1698) = lu(k,1698) - lu(k,1453) * lu(k,1688) + lu(k,1699) = lu(k,1699) - lu(k,1454) * lu(k,1688) + lu(k,1700) = lu(k,1700) - lu(k,1455) * lu(k,1688) + lu(k,1702) = lu(k,1702) - lu(k,1456) * lu(k,1688) + lu(k,1703) = lu(k,1703) - lu(k,1457) * lu(k,1688) + lu(k,1704) = lu(k,1704) - lu(k,1458) * lu(k,1688) + lu(k,1715) = lu(k,1715) - lu(k,1447) * lu(k,1714) + lu(k,1716) = lu(k,1716) - lu(k,1448) * lu(k,1714) + lu(k,1717) = lu(k,1717) - lu(k,1449) * lu(k,1714) + lu(k,1718) = lu(k,1718) - lu(k,1450) * lu(k,1714) + lu(k,1720) = lu(k,1720) - lu(k,1451) * lu(k,1714) + lu(k,1721) = lu(k,1721) - lu(k,1452) * lu(k,1714) + lu(k,1724) = lu(k,1724) - lu(k,1453) * lu(k,1714) + lu(k,1725) = lu(k,1725) - lu(k,1454) * lu(k,1714) + lu(k,1726) = lu(k,1726) - lu(k,1455) * lu(k,1714) + lu(k,1728) = lu(k,1728) - lu(k,1456) * lu(k,1714) + lu(k,1729) = lu(k,1729) - lu(k,1457) * lu(k,1714) + lu(k,1730) = lu(k,1730) - lu(k,1458) * lu(k,1714) + lu(k,1772) = lu(k,1772) - lu(k,1447) * lu(k,1771) + lu(k,1773) = lu(k,1773) - lu(k,1448) * lu(k,1771) + lu(k,1774) = lu(k,1774) - lu(k,1449) * lu(k,1771) + lu(k,1775) = lu(k,1775) - lu(k,1450) * lu(k,1771) + lu(k,1777) = lu(k,1777) - lu(k,1451) * lu(k,1771) + lu(k,1778) = lu(k,1778) - lu(k,1452) * lu(k,1771) + lu(k,1781) = lu(k,1781) - lu(k,1453) * lu(k,1771) + lu(k,1782) = lu(k,1782) - lu(k,1454) * lu(k,1771) + lu(k,1783) = lu(k,1783) - lu(k,1455) * lu(k,1771) + lu(k,1785) = lu(k,1785) - lu(k,1456) * lu(k,1771) + lu(k,1786) = lu(k,1786) - lu(k,1457) * lu(k,1771) + lu(k,1787) = lu(k,1787) - lu(k,1458) * lu(k,1771) + lu(k,1824) = lu(k,1824) - lu(k,1447) * lu(k,1823) + lu(k,1825) = lu(k,1825) - lu(k,1448) * lu(k,1823) + lu(k,1826) = lu(k,1826) - lu(k,1449) * lu(k,1823) + lu(k,1827) = lu(k,1827) - lu(k,1450) * lu(k,1823) + lu(k,1829) = lu(k,1829) - lu(k,1451) * lu(k,1823) + lu(k,1830) = lu(k,1830) - lu(k,1452) * lu(k,1823) + lu(k,1833) = lu(k,1833) - lu(k,1453) * lu(k,1823) + lu(k,1834) = lu(k,1834) - lu(k,1454) * lu(k,1823) + lu(k,1835) = lu(k,1835) - lu(k,1455) * lu(k,1823) + lu(k,1837) = lu(k,1837) - lu(k,1456) * lu(k,1823) + lu(k,1838) = lu(k,1838) - lu(k,1457) * lu(k,1823) + lu(k,1839) = lu(k,1839) - lu(k,1458) * lu(k,1823) + lu(k,1916) = lu(k,1916) - lu(k,1447) * lu(k,1915) + lu(k,1917) = lu(k,1917) - lu(k,1448) * lu(k,1915) + lu(k,1918) = lu(k,1918) - lu(k,1449) * lu(k,1915) + lu(k,1919) = lu(k,1919) - lu(k,1450) * lu(k,1915) + lu(k,1921) = lu(k,1921) - lu(k,1451) * lu(k,1915) + lu(k,1922) = lu(k,1922) - lu(k,1452) * lu(k,1915) + lu(k,1925) = lu(k,1925) - lu(k,1453) * lu(k,1915) + lu(k,1926) = lu(k,1926) - lu(k,1454) * lu(k,1915) + lu(k,1927) = lu(k,1927) - lu(k,1455) * lu(k,1915) + lu(k,1929) = lu(k,1929) - lu(k,1456) * lu(k,1915) + lu(k,1930) = lu(k,1930) - lu(k,1457) * lu(k,1915) + lu(k,1931) = lu(k,1931) - lu(k,1458) * lu(k,1915) + lu(k,1960) = lu(k,1960) - lu(k,1447) * lu(k,1959) + lu(k,1961) = lu(k,1961) - lu(k,1448) * lu(k,1959) + lu(k,1962) = lu(k,1962) - lu(k,1449) * lu(k,1959) + lu(k,1963) = lu(k,1963) - lu(k,1450) * lu(k,1959) + lu(k,1965) = lu(k,1965) - lu(k,1451) * lu(k,1959) + lu(k,1966) = lu(k,1966) - lu(k,1452) * lu(k,1959) + lu(k,1969) = lu(k,1969) - lu(k,1453) * lu(k,1959) + lu(k,1970) = lu(k,1970) - lu(k,1454) * lu(k,1959) + lu(k,1971) = lu(k,1971) - lu(k,1455) * lu(k,1959) + lu(k,1973) = lu(k,1973) - lu(k,1456) * lu(k,1959) + lu(k,1974) = lu(k,1974) - lu(k,1457) * lu(k,1959) + lu(k,1975) = lu(k,1975) - lu(k,1458) * lu(k,1959) + lu(k,1999) = lu(k,1999) - lu(k,1447) * lu(k,1998) + lu(k,2000) = lu(k,2000) - lu(k,1448) * lu(k,1998) + lu(k,2001) = lu(k,2001) - lu(k,1449) * lu(k,1998) + lu(k,2002) = lu(k,2002) - lu(k,1450) * lu(k,1998) + lu(k,2004) = lu(k,2004) - lu(k,1451) * lu(k,1998) + lu(k,2005) = lu(k,2005) - lu(k,1452) * lu(k,1998) + lu(k,2008) = lu(k,2008) - lu(k,1453) * lu(k,1998) + lu(k,2009) = lu(k,2009) - lu(k,1454) * lu(k,1998) + lu(k,2010) = lu(k,2010) - lu(k,1455) * lu(k,1998) + lu(k,2012) = lu(k,2012) - lu(k,1456) * lu(k,1998) + lu(k,2013) = lu(k,2013) - lu(k,1457) * lu(k,1998) + lu(k,2014) = lu(k,2014) - lu(k,1458) * lu(k,1998) + lu(k,2106) = lu(k,2106) - lu(k,1447) * lu(k,2105) + lu(k,2107) = lu(k,2107) - lu(k,1448) * lu(k,2105) + lu(k,2108) = lu(k,2108) - lu(k,1449) * lu(k,2105) + lu(k,2109) = lu(k,2109) - lu(k,1450) * lu(k,2105) + lu(k,2111) = lu(k,2111) - lu(k,1451) * lu(k,2105) + lu(k,2112) = lu(k,2112) - lu(k,1452) * lu(k,2105) + lu(k,2115) = lu(k,2115) - lu(k,1453) * lu(k,2105) + lu(k,2116) = lu(k,2116) - lu(k,1454) * lu(k,2105) + lu(k,2117) = lu(k,2117) - lu(k,1455) * lu(k,2105) + lu(k,2119) = lu(k,2119) - lu(k,1456) * lu(k,2105) + lu(k,2120) = lu(k,2120) - lu(k,1457) * lu(k,2105) + lu(k,2121) = lu(k,2121) - lu(k,1458) * lu(k,2105) + lu(k,2129) = lu(k,2129) - lu(k,1447) * lu(k,2128) + lu(k,2130) = lu(k,2130) - lu(k,1448) * lu(k,2128) + lu(k,2131) = lu(k,2131) - lu(k,1449) * lu(k,2128) + lu(k,2132) = lu(k,2132) - lu(k,1450) * lu(k,2128) + lu(k,2134) = lu(k,2134) - lu(k,1451) * lu(k,2128) + lu(k,2135) = - lu(k,1452) * lu(k,2128) + lu(k,2138) = lu(k,2138) - lu(k,1453) * lu(k,2128) + lu(k,2139) = lu(k,2139) - lu(k,1454) * lu(k,2128) + lu(k,2140) = lu(k,2140) - lu(k,1455) * lu(k,2128) + lu(k,2142) = lu(k,2142) - lu(k,1456) * lu(k,2128) + lu(k,2143) = lu(k,2143) - lu(k,1457) * lu(k,2128) + lu(k,2144) = lu(k,2144) - lu(k,1458) * lu(k,2128) + lu(k,2153) = lu(k,2153) - lu(k,1447) * lu(k,2152) + lu(k,2154) = lu(k,2154) - lu(k,1448) * lu(k,2152) + lu(k,2155) = lu(k,2155) - lu(k,1449) * lu(k,2152) + lu(k,2156) = lu(k,2156) - lu(k,1450) * lu(k,2152) + lu(k,2158) = lu(k,2158) - lu(k,1451) * lu(k,2152) + lu(k,2159) = - lu(k,1452) * lu(k,2152) + lu(k,2162) = lu(k,2162) - lu(k,1453) * lu(k,2152) + lu(k,2163) = lu(k,2163) - lu(k,1454) * lu(k,2152) + lu(k,2164) = lu(k,2164) - lu(k,1455) * lu(k,2152) + lu(k,2166) = lu(k,2166) - lu(k,1456) * lu(k,2152) + lu(k,2167) = lu(k,2167) - lu(k,1457) * lu(k,2152) + lu(k,2168) = lu(k,2168) - lu(k,1458) * lu(k,2152) + lu(k,2184) = lu(k,2184) - lu(k,1447) * lu(k,2183) + lu(k,2185) = lu(k,2185) - lu(k,1448) * lu(k,2183) + lu(k,2186) = lu(k,2186) - lu(k,1449) * lu(k,2183) + lu(k,2187) = lu(k,2187) - lu(k,1450) * lu(k,2183) + lu(k,2189) = lu(k,2189) - lu(k,1451) * lu(k,2183) + lu(k,2190) = lu(k,2190) - lu(k,1452) * lu(k,2183) + lu(k,2193) = lu(k,2193) - lu(k,1453) * lu(k,2183) + lu(k,2194) = lu(k,2194) - lu(k,1454) * lu(k,2183) + lu(k,2195) = lu(k,2195) - lu(k,1455) * lu(k,2183) + lu(k,2197) = lu(k,2197) - lu(k,1456) * lu(k,2183) + lu(k,2198) = lu(k,2198) - lu(k,1457) * lu(k,2183) + lu(k,2199) = lu(k,2199) - lu(k,1458) * lu(k,2183) + lu(k,2245) = lu(k,2245) - lu(k,1447) * lu(k,2244) + lu(k,2246) = lu(k,2246) - lu(k,1448) * lu(k,2244) + lu(k,2247) = lu(k,2247) - lu(k,1449) * lu(k,2244) + lu(k,2248) = lu(k,2248) - lu(k,1450) * lu(k,2244) + lu(k,2250) = lu(k,2250) - lu(k,1451) * lu(k,2244) + lu(k,2251) = lu(k,2251) - lu(k,1452) * lu(k,2244) + lu(k,2254) = lu(k,2254) - lu(k,1453) * lu(k,2244) + lu(k,2255) = lu(k,2255) - lu(k,1454) * lu(k,2244) + lu(k,2256) = lu(k,2256) - lu(k,1455) * lu(k,2244) + lu(k,2258) = lu(k,2258) - lu(k,1456) * lu(k,2244) + lu(k,2259) = lu(k,2259) - lu(k,1457) * lu(k,2244) + lu(k,2260) = lu(k,2260) - lu(k,1458) * lu(k,2244) + lu(k,2271) = lu(k,2271) - lu(k,1447) * lu(k,2270) + lu(k,2272) = lu(k,2272) - lu(k,1448) * lu(k,2270) + lu(k,2273) = lu(k,2273) - lu(k,1449) * lu(k,2270) + lu(k,2274) = lu(k,2274) - lu(k,1450) * lu(k,2270) + lu(k,2276) = lu(k,2276) - lu(k,1451) * lu(k,2270) + lu(k,2277) = lu(k,2277) - lu(k,1452) * lu(k,2270) + lu(k,2280) = lu(k,2280) - lu(k,1453) * lu(k,2270) + lu(k,2281) = lu(k,2281) - lu(k,1454) * lu(k,2270) + lu(k,2282) = lu(k,2282) - lu(k,1455) * lu(k,2270) + lu(k,2284) = lu(k,2284) - lu(k,1456) * lu(k,2270) + lu(k,2285) = lu(k,2285) - lu(k,1457) * lu(k,2270) + lu(k,2286) = lu(k,2286) - lu(k,1458) * lu(k,2270) + lu(k,1464) = 1._r8 / lu(k,1464) + lu(k,1465) = lu(k,1465) * lu(k,1464) + lu(k,1466) = lu(k,1466) * lu(k,1464) + lu(k,1467) = lu(k,1467) * lu(k,1464) + lu(k,1468) = lu(k,1468) * lu(k,1464) + lu(k,1469) = lu(k,1469) * lu(k,1464) + lu(k,1470) = lu(k,1470) * lu(k,1464) + lu(k,1471) = lu(k,1471) * lu(k,1464) + lu(k,1472) = lu(k,1472) * lu(k,1464) + lu(k,1473) = lu(k,1473) * lu(k,1464) + lu(k,1474) = lu(k,1474) * lu(k,1464) + lu(k,1475) = lu(k,1475) * lu(k,1464) + lu(k,1476) = lu(k,1476) * lu(k,1464) + lu(k,1486) = lu(k,1486) - lu(k,1465) * lu(k,1485) + lu(k,1487) = lu(k,1487) - lu(k,1466) * lu(k,1485) + lu(k,1488) = lu(k,1488) - lu(k,1467) * lu(k,1485) + lu(k,1489) = lu(k,1489) - lu(k,1468) * lu(k,1485) + lu(k,1490) = lu(k,1490) - lu(k,1469) * lu(k,1485) + lu(k,1492) = lu(k,1492) - lu(k,1470) * lu(k,1485) + lu(k,1493) = lu(k,1493) - lu(k,1471) * lu(k,1485) + lu(k,1494) = lu(k,1494) - lu(k,1472) * lu(k,1485) + lu(k,1495) = lu(k,1495) - lu(k,1473) * lu(k,1485) + lu(k,1497) = lu(k,1497) - lu(k,1474) * lu(k,1485) + lu(k,1498) = lu(k,1498) - lu(k,1475) * lu(k,1485) + lu(k,1499) = lu(k,1499) - lu(k,1476) * lu(k,1485) + lu(k,1526) = lu(k,1526) - lu(k,1465) * lu(k,1525) + lu(k,1527) = lu(k,1527) - lu(k,1466) * lu(k,1525) + lu(k,1528) = lu(k,1528) - lu(k,1467) * lu(k,1525) + lu(k,1530) = lu(k,1530) - lu(k,1468) * lu(k,1525) + lu(k,1531) = lu(k,1531) - lu(k,1469) * lu(k,1525) + lu(k,1533) = - lu(k,1470) * lu(k,1525) + lu(k,1534) = lu(k,1534) - lu(k,1471) * lu(k,1525) + lu(k,1535) = lu(k,1535) - lu(k,1472) * lu(k,1525) + lu(k,1536) = lu(k,1536) - lu(k,1473) * lu(k,1525) + lu(k,1538) = lu(k,1538) - lu(k,1474) * lu(k,1525) + lu(k,1539) = lu(k,1539) - lu(k,1475) * lu(k,1525) + lu(k,1540) = lu(k,1540) - lu(k,1476) * lu(k,1525) + lu(k,1690) = lu(k,1690) - lu(k,1465) * lu(k,1689) + lu(k,1691) = lu(k,1691) - lu(k,1466) * lu(k,1689) + lu(k,1692) = lu(k,1692) - lu(k,1467) * lu(k,1689) + lu(k,1694) = lu(k,1694) - lu(k,1468) * lu(k,1689) + lu(k,1695) = lu(k,1695) - lu(k,1469) * lu(k,1689) + lu(k,1697) = lu(k,1697) - lu(k,1470) * lu(k,1689) + lu(k,1698) = lu(k,1698) - lu(k,1471) * lu(k,1689) + lu(k,1699) = lu(k,1699) - lu(k,1472) * lu(k,1689) + lu(k,1700) = lu(k,1700) - lu(k,1473) * lu(k,1689) + lu(k,1702) = lu(k,1702) - lu(k,1474) * lu(k,1689) + lu(k,1703) = lu(k,1703) - lu(k,1475) * lu(k,1689) + lu(k,1704) = lu(k,1704) - lu(k,1476) * lu(k,1689) + lu(k,1716) = lu(k,1716) - lu(k,1465) * lu(k,1715) + lu(k,1717) = lu(k,1717) - lu(k,1466) * lu(k,1715) + lu(k,1718) = lu(k,1718) - lu(k,1467) * lu(k,1715) + lu(k,1720) = lu(k,1720) - lu(k,1468) * lu(k,1715) + lu(k,1721) = lu(k,1721) - lu(k,1469) * lu(k,1715) + lu(k,1723) = lu(k,1723) - lu(k,1470) * lu(k,1715) + lu(k,1724) = lu(k,1724) - lu(k,1471) * lu(k,1715) + lu(k,1725) = lu(k,1725) - lu(k,1472) * lu(k,1715) + lu(k,1726) = lu(k,1726) - lu(k,1473) * lu(k,1715) + lu(k,1728) = lu(k,1728) - lu(k,1474) * lu(k,1715) + lu(k,1729) = lu(k,1729) - lu(k,1475) * lu(k,1715) + lu(k,1730) = lu(k,1730) - lu(k,1476) * lu(k,1715) + lu(k,1773) = lu(k,1773) - lu(k,1465) * lu(k,1772) + lu(k,1774) = lu(k,1774) - lu(k,1466) * lu(k,1772) + lu(k,1775) = lu(k,1775) - lu(k,1467) * lu(k,1772) + lu(k,1777) = lu(k,1777) - lu(k,1468) * lu(k,1772) + lu(k,1778) = lu(k,1778) - lu(k,1469) * lu(k,1772) + lu(k,1780) = lu(k,1780) - lu(k,1470) * lu(k,1772) + lu(k,1781) = lu(k,1781) - lu(k,1471) * lu(k,1772) + lu(k,1782) = lu(k,1782) - lu(k,1472) * lu(k,1772) + lu(k,1783) = lu(k,1783) - lu(k,1473) * lu(k,1772) + lu(k,1785) = lu(k,1785) - lu(k,1474) * lu(k,1772) + lu(k,1786) = lu(k,1786) - lu(k,1475) * lu(k,1772) + lu(k,1787) = lu(k,1787) - lu(k,1476) * lu(k,1772) + lu(k,1825) = lu(k,1825) - lu(k,1465) * lu(k,1824) + lu(k,1826) = lu(k,1826) - lu(k,1466) * lu(k,1824) + lu(k,1827) = lu(k,1827) - lu(k,1467) * lu(k,1824) + lu(k,1829) = lu(k,1829) - lu(k,1468) * lu(k,1824) + lu(k,1830) = lu(k,1830) - lu(k,1469) * lu(k,1824) + lu(k,1832) = lu(k,1832) - lu(k,1470) * lu(k,1824) + lu(k,1833) = lu(k,1833) - lu(k,1471) * lu(k,1824) + lu(k,1834) = lu(k,1834) - lu(k,1472) * lu(k,1824) + lu(k,1835) = lu(k,1835) - lu(k,1473) * lu(k,1824) + lu(k,1837) = lu(k,1837) - lu(k,1474) * lu(k,1824) + lu(k,1838) = lu(k,1838) - lu(k,1475) * lu(k,1824) + lu(k,1839) = lu(k,1839) - lu(k,1476) * lu(k,1824) + lu(k,1917) = lu(k,1917) - lu(k,1465) * lu(k,1916) + lu(k,1918) = lu(k,1918) - lu(k,1466) * lu(k,1916) + lu(k,1919) = lu(k,1919) - lu(k,1467) * lu(k,1916) + lu(k,1921) = lu(k,1921) - lu(k,1468) * lu(k,1916) + lu(k,1922) = lu(k,1922) - lu(k,1469) * lu(k,1916) + lu(k,1924) = lu(k,1924) - lu(k,1470) * lu(k,1916) + lu(k,1925) = lu(k,1925) - lu(k,1471) * lu(k,1916) + lu(k,1926) = lu(k,1926) - lu(k,1472) * lu(k,1916) + lu(k,1927) = lu(k,1927) - lu(k,1473) * lu(k,1916) + lu(k,1929) = lu(k,1929) - lu(k,1474) * lu(k,1916) + lu(k,1930) = lu(k,1930) - lu(k,1475) * lu(k,1916) + lu(k,1931) = lu(k,1931) - lu(k,1476) * lu(k,1916) + lu(k,1961) = lu(k,1961) - lu(k,1465) * lu(k,1960) + lu(k,1962) = lu(k,1962) - lu(k,1466) * lu(k,1960) + lu(k,1963) = lu(k,1963) - lu(k,1467) * lu(k,1960) + lu(k,1965) = lu(k,1965) - lu(k,1468) * lu(k,1960) + lu(k,1966) = lu(k,1966) - lu(k,1469) * lu(k,1960) + lu(k,1968) = lu(k,1968) - lu(k,1470) * lu(k,1960) + lu(k,1969) = lu(k,1969) - lu(k,1471) * lu(k,1960) + lu(k,1970) = lu(k,1970) - lu(k,1472) * lu(k,1960) + lu(k,1971) = lu(k,1971) - lu(k,1473) * lu(k,1960) + lu(k,1973) = lu(k,1973) - lu(k,1474) * lu(k,1960) + lu(k,1974) = lu(k,1974) - lu(k,1475) * lu(k,1960) + lu(k,1975) = lu(k,1975) - lu(k,1476) * lu(k,1960) + lu(k,2000) = lu(k,2000) - lu(k,1465) * lu(k,1999) + lu(k,2001) = lu(k,2001) - lu(k,1466) * lu(k,1999) + lu(k,2002) = lu(k,2002) - lu(k,1467) * lu(k,1999) + lu(k,2004) = lu(k,2004) - lu(k,1468) * lu(k,1999) + lu(k,2005) = lu(k,2005) - lu(k,1469) * lu(k,1999) + lu(k,2007) = lu(k,2007) - lu(k,1470) * lu(k,1999) + lu(k,2008) = lu(k,2008) - lu(k,1471) * lu(k,1999) + lu(k,2009) = lu(k,2009) - lu(k,1472) * lu(k,1999) + lu(k,2010) = lu(k,2010) - lu(k,1473) * lu(k,1999) + lu(k,2012) = lu(k,2012) - lu(k,1474) * lu(k,1999) + lu(k,2013) = lu(k,2013) - lu(k,1475) * lu(k,1999) + lu(k,2014) = lu(k,2014) - lu(k,1476) * lu(k,1999) + lu(k,2107) = lu(k,2107) - lu(k,1465) * lu(k,2106) + lu(k,2108) = lu(k,2108) - lu(k,1466) * lu(k,2106) + lu(k,2109) = lu(k,2109) - lu(k,1467) * lu(k,2106) + lu(k,2111) = lu(k,2111) - lu(k,1468) * lu(k,2106) + lu(k,2112) = lu(k,2112) - lu(k,1469) * lu(k,2106) + lu(k,2114) = lu(k,2114) - lu(k,1470) * lu(k,2106) + lu(k,2115) = lu(k,2115) - lu(k,1471) * lu(k,2106) + lu(k,2116) = lu(k,2116) - lu(k,1472) * lu(k,2106) + lu(k,2117) = lu(k,2117) - lu(k,1473) * lu(k,2106) + lu(k,2119) = lu(k,2119) - lu(k,1474) * lu(k,2106) + lu(k,2120) = lu(k,2120) - lu(k,1475) * lu(k,2106) + lu(k,2121) = lu(k,2121) - lu(k,1476) * lu(k,2106) + lu(k,2130) = lu(k,2130) - lu(k,1465) * lu(k,2129) + lu(k,2131) = lu(k,2131) - lu(k,1466) * lu(k,2129) + lu(k,2132) = lu(k,2132) - lu(k,1467) * lu(k,2129) + lu(k,2134) = lu(k,2134) - lu(k,1468) * lu(k,2129) + lu(k,2135) = lu(k,2135) - lu(k,1469) * lu(k,2129) + lu(k,2137) = lu(k,2137) - lu(k,1470) * lu(k,2129) + lu(k,2138) = lu(k,2138) - lu(k,1471) * lu(k,2129) + lu(k,2139) = lu(k,2139) - lu(k,1472) * lu(k,2129) + lu(k,2140) = lu(k,2140) - lu(k,1473) * lu(k,2129) + lu(k,2142) = lu(k,2142) - lu(k,1474) * lu(k,2129) + lu(k,2143) = lu(k,2143) - lu(k,1475) * lu(k,2129) + lu(k,2144) = lu(k,2144) - lu(k,1476) * lu(k,2129) + lu(k,2154) = lu(k,2154) - lu(k,1465) * lu(k,2153) + lu(k,2155) = lu(k,2155) - lu(k,1466) * lu(k,2153) + lu(k,2156) = lu(k,2156) - lu(k,1467) * lu(k,2153) + lu(k,2158) = lu(k,2158) - lu(k,1468) * lu(k,2153) + lu(k,2159) = lu(k,2159) - lu(k,1469) * lu(k,2153) + lu(k,2161) = lu(k,2161) - lu(k,1470) * lu(k,2153) + lu(k,2162) = lu(k,2162) - lu(k,1471) * lu(k,2153) + lu(k,2163) = lu(k,2163) - lu(k,1472) * lu(k,2153) + lu(k,2164) = lu(k,2164) - lu(k,1473) * lu(k,2153) + lu(k,2166) = lu(k,2166) - lu(k,1474) * lu(k,2153) + lu(k,2167) = lu(k,2167) - lu(k,1475) * lu(k,2153) + lu(k,2168) = lu(k,2168) - lu(k,1476) * lu(k,2153) + lu(k,2185) = lu(k,2185) - lu(k,1465) * lu(k,2184) + lu(k,2186) = lu(k,2186) - lu(k,1466) * lu(k,2184) + lu(k,2187) = lu(k,2187) - lu(k,1467) * lu(k,2184) + lu(k,2189) = lu(k,2189) - lu(k,1468) * lu(k,2184) + lu(k,2190) = lu(k,2190) - lu(k,1469) * lu(k,2184) + lu(k,2192) = lu(k,2192) - lu(k,1470) * lu(k,2184) + lu(k,2193) = lu(k,2193) - lu(k,1471) * lu(k,2184) + lu(k,2194) = lu(k,2194) - lu(k,1472) * lu(k,2184) + lu(k,2195) = lu(k,2195) - lu(k,1473) * lu(k,2184) + lu(k,2197) = lu(k,2197) - lu(k,1474) * lu(k,2184) + lu(k,2198) = lu(k,2198) - lu(k,1475) * lu(k,2184) + lu(k,2199) = lu(k,2199) - lu(k,1476) * lu(k,2184) + lu(k,2246) = lu(k,2246) - lu(k,1465) * lu(k,2245) + lu(k,2247) = lu(k,2247) - lu(k,1466) * lu(k,2245) + lu(k,2248) = lu(k,2248) - lu(k,1467) * lu(k,2245) + lu(k,2250) = lu(k,2250) - lu(k,1468) * lu(k,2245) + lu(k,2251) = lu(k,2251) - lu(k,1469) * lu(k,2245) + lu(k,2253) = lu(k,2253) - lu(k,1470) * lu(k,2245) + lu(k,2254) = lu(k,2254) - lu(k,1471) * lu(k,2245) + lu(k,2255) = lu(k,2255) - lu(k,1472) * lu(k,2245) + lu(k,2256) = lu(k,2256) - lu(k,1473) * lu(k,2245) + lu(k,2258) = lu(k,2258) - lu(k,1474) * lu(k,2245) + lu(k,2259) = lu(k,2259) - lu(k,1475) * lu(k,2245) + lu(k,2260) = lu(k,2260) - lu(k,1476) * lu(k,2245) + lu(k,2272) = lu(k,2272) - lu(k,1465) * lu(k,2271) + lu(k,2273) = lu(k,2273) - lu(k,1466) * lu(k,2271) + lu(k,2274) = lu(k,2274) - lu(k,1467) * lu(k,2271) + lu(k,2276) = lu(k,2276) - lu(k,1468) * lu(k,2271) + lu(k,2277) = lu(k,2277) - lu(k,1469) * lu(k,2271) + lu(k,2279) = lu(k,2279) - lu(k,1470) * lu(k,2271) + lu(k,2280) = lu(k,2280) - lu(k,1471) * lu(k,2271) + lu(k,2281) = lu(k,2281) - lu(k,1472) * lu(k,2271) + lu(k,2282) = lu(k,2282) - lu(k,1473) * lu(k,2271) + lu(k,2284) = lu(k,2284) - lu(k,1474) * lu(k,2271) + lu(k,2285) = lu(k,2285) - lu(k,1475) * lu(k,2271) + lu(k,2286) = lu(k,2286) - lu(k,1476) * lu(k,2271) + end do + end subroutine lu_fac28 + subroutine lu_fac29( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1486) = 1._r8 / lu(k,1486) + lu(k,1487) = lu(k,1487) * lu(k,1486) + lu(k,1488) = lu(k,1488) * lu(k,1486) + lu(k,1489) = lu(k,1489) * lu(k,1486) + lu(k,1490) = lu(k,1490) * lu(k,1486) + lu(k,1491) = lu(k,1491) * lu(k,1486) + lu(k,1492) = lu(k,1492) * lu(k,1486) + lu(k,1493) = lu(k,1493) * lu(k,1486) + lu(k,1494) = lu(k,1494) * lu(k,1486) + lu(k,1495) = lu(k,1495) * lu(k,1486) + lu(k,1496) = lu(k,1496) * lu(k,1486) + lu(k,1497) = lu(k,1497) * lu(k,1486) + lu(k,1498) = lu(k,1498) * lu(k,1486) + lu(k,1499) = lu(k,1499) * lu(k,1486) + lu(k,1527) = lu(k,1527) - lu(k,1487) * lu(k,1526) + lu(k,1528) = lu(k,1528) - lu(k,1488) * lu(k,1526) + lu(k,1530) = lu(k,1530) - lu(k,1489) * lu(k,1526) + lu(k,1531) = lu(k,1531) - lu(k,1490) * lu(k,1526) + lu(k,1532) = lu(k,1532) - lu(k,1491) * lu(k,1526) + lu(k,1533) = lu(k,1533) - lu(k,1492) * lu(k,1526) + lu(k,1534) = lu(k,1534) - lu(k,1493) * lu(k,1526) + lu(k,1535) = lu(k,1535) - lu(k,1494) * lu(k,1526) + lu(k,1536) = lu(k,1536) - lu(k,1495) * lu(k,1526) + lu(k,1537) = lu(k,1537) - lu(k,1496) * lu(k,1526) + lu(k,1538) = lu(k,1538) - lu(k,1497) * lu(k,1526) + lu(k,1539) = lu(k,1539) - lu(k,1498) * lu(k,1526) + lu(k,1540) = lu(k,1540) - lu(k,1499) * lu(k,1526) + lu(k,1691) = lu(k,1691) - lu(k,1487) * lu(k,1690) + lu(k,1692) = lu(k,1692) - lu(k,1488) * lu(k,1690) + lu(k,1694) = lu(k,1694) - lu(k,1489) * lu(k,1690) + lu(k,1695) = lu(k,1695) - lu(k,1490) * lu(k,1690) + lu(k,1696) = lu(k,1696) - lu(k,1491) * lu(k,1690) + lu(k,1697) = lu(k,1697) - lu(k,1492) * lu(k,1690) + lu(k,1698) = lu(k,1698) - lu(k,1493) * lu(k,1690) + lu(k,1699) = lu(k,1699) - lu(k,1494) * lu(k,1690) + lu(k,1700) = lu(k,1700) - lu(k,1495) * lu(k,1690) + lu(k,1701) = lu(k,1701) - lu(k,1496) * lu(k,1690) + lu(k,1702) = lu(k,1702) - lu(k,1497) * lu(k,1690) + lu(k,1703) = lu(k,1703) - lu(k,1498) * lu(k,1690) + lu(k,1704) = lu(k,1704) - lu(k,1499) * lu(k,1690) + lu(k,1717) = lu(k,1717) - lu(k,1487) * lu(k,1716) + lu(k,1718) = lu(k,1718) - lu(k,1488) * lu(k,1716) + lu(k,1720) = lu(k,1720) - lu(k,1489) * lu(k,1716) + lu(k,1721) = lu(k,1721) - lu(k,1490) * lu(k,1716) + lu(k,1722) = lu(k,1722) - lu(k,1491) * lu(k,1716) + lu(k,1723) = lu(k,1723) - lu(k,1492) * lu(k,1716) + lu(k,1724) = lu(k,1724) - lu(k,1493) * lu(k,1716) + lu(k,1725) = lu(k,1725) - lu(k,1494) * lu(k,1716) + lu(k,1726) = lu(k,1726) - lu(k,1495) * lu(k,1716) + lu(k,1727) = lu(k,1727) - lu(k,1496) * lu(k,1716) + lu(k,1728) = lu(k,1728) - lu(k,1497) * lu(k,1716) + lu(k,1729) = lu(k,1729) - lu(k,1498) * lu(k,1716) + lu(k,1730) = lu(k,1730) - lu(k,1499) * lu(k,1716) + lu(k,1774) = lu(k,1774) - lu(k,1487) * lu(k,1773) + lu(k,1775) = lu(k,1775) - lu(k,1488) * lu(k,1773) + lu(k,1777) = lu(k,1777) - lu(k,1489) * lu(k,1773) + lu(k,1778) = lu(k,1778) - lu(k,1490) * lu(k,1773) + lu(k,1779) = lu(k,1779) - lu(k,1491) * lu(k,1773) + lu(k,1780) = lu(k,1780) - lu(k,1492) * lu(k,1773) + lu(k,1781) = lu(k,1781) - lu(k,1493) * lu(k,1773) + lu(k,1782) = lu(k,1782) - lu(k,1494) * lu(k,1773) + lu(k,1783) = lu(k,1783) - lu(k,1495) * lu(k,1773) + lu(k,1784) = lu(k,1784) - lu(k,1496) * lu(k,1773) + lu(k,1785) = lu(k,1785) - lu(k,1497) * lu(k,1773) + lu(k,1786) = lu(k,1786) - lu(k,1498) * lu(k,1773) + lu(k,1787) = lu(k,1787) - lu(k,1499) * lu(k,1773) + lu(k,1826) = lu(k,1826) - lu(k,1487) * lu(k,1825) + lu(k,1827) = lu(k,1827) - lu(k,1488) * lu(k,1825) + lu(k,1829) = lu(k,1829) - lu(k,1489) * lu(k,1825) + lu(k,1830) = lu(k,1830) - lu(k,1490) * lu(k,1825) + lu(k,1831) = lu(k,1831) - lu(k,1491) * lu(k,1825) + lu(k,1832) = lu(k,1832) - lu(k,1492) * lu(k,1825) + lu(k,1833) = lu(k,1833) - lu(k,1493) * lu(k,1825) + lu(k,1834) = lu(k,1834) - lu(k,1494) * lu(k,1825) + lu(k,1835) = lu(k,1835) - lu(k,1495) * lu(k,1825) + lu(k,1836) = - lu(k,1496) * lu(k,1825) + lu(k,1837) = lu(k,1837) - lu(k,1497) * lu(k,1825) + lu(k,1838) = lu(k,1838) - lu(k,1498) * lu(k,1825) + lu(k,1839) = lu(k,1839) - lu(k,1499) * lu(k,1825) + lu(k,1918) = lu(k,1918) - lu(k,1487) * lu(k,1917) + lu(k,1919) = lu(k,1919) - lu(k,1488) * lu(k,1917) + lu(k,1921) = lu(k,1921) - lu(k,1489) * lu(k,1917) + lu(k,1922) = lu(k,1922) - lu(k,1490) * lu(k,1917) + lu(k,1923) = lu(k,1923) - lu(k,1491) * lu(k,1917) + lu(k,1924) = lu(k,1924) - lu(k,1492) * lu(k,1917) + lu(k,1925) = lu(k,1925) - lu(k,1493) * lu(k,1917) + lu(k,1926) = lu(k,1926) - lu(k,1494) * lu(k,1917) + lu(k,1927) = lu(k,1927) - lu(k,1495) * lu(k,1917) + lu(k,1928) = lu(k,1928) - lu(k,1496) * lu(k,1917) + lu(k,1929) = lu(k,1929) - lu(k,1497) * lu(k,1917) + lu(k,1930) = lu(k,1930) - lu(k,1498) * lu(k,1917) + lu(k,1931) = lu(k,1931) - lu(k,1499) * lu(k,1917) + lu(k,1962) = lu(k,1962) - lu(k,1487) * lu(k,1961) + lu(k,1963) = lu(k,1963) - lu(k,1488) * lu(k,1961) + lu(k,1965) = lu(k,1965) - lu(k,1489) * lu(k,1961) + lu(k,1966) = lu(k,1966) - lu(k,1490) * lu(k,1961) + lu(k,1967) = lu(k,1967) - lu(k,1491) * lu(k,1961) + lu(k,1968) = lu(k,1968) - lu(k,1492) * lu(k,1961) + lu(k,1969) = lu(k,1969) - lu(k,1493) * lu(k,1961) + lu(k,1970) = lu(k,1970) - lu(k,1494) * lu(k,1961) + lu(k,1971) = lu(k,1971) - lu(k,1495) * lu(k,1961) + lu(k,1972) = lu(k,1972) - lu(k,1496) * lu(k,1961) + lu(k,1973) = lu(k,1973) - lu(k,1497) * lu(k,1961) + lu(k,1974) = lu(k,1974) - lu(k,1498) * lu(k,1961) + lu(k,1975) = lu(k,1975) - lu(k,1499) * lu(k,1961) + lu(k,2001) = lu(k,2001) - lu(k,1487) * lu(k,2000) + lu(k,2002) = lu(k,2002) - lu(k,1488) * lu(k,2000) + lu(k,2004) = lu(k,2004) - lu(k,1489) * lu(k,2000) + lu(k,2005) = lu(k,2005) - lu(k,1490) * lu(k,2000) + lu(k,2006) = lu(k,2006) - lu(k,1491) * lu(k,2000) + lu(k,2007) = lu(k,2007) - lu(k,1492) * lu(k,2000) + lu(k,2008) = lu(k,2008) - lu(k,1493) * lu(k,2000) + lu(k,2009) = lu(k,2009) - lu(k,1494) * lu(k,2000) + lu(k,2010) = lu(k,2010) - lu(k,1495) * lu(k,2000) + lu(k,2011) = lu(k,2011) - lu(k,1496) * lu(k,2000) + lu(k,2012) = lu(k,2012) - lu(k,1497) * lu(k,2000) + lu(k,2013) = lu(k,2013) - lu(k,1498) * lu(k,2000) + lu(k,2014) = lu(k,2014) - lu(k,1499) * lu(k,2000) + lu(k,2108) = lu(k,2108) - lu(k,1487) * lu(k,2107) + lu(k,2109) = lu(k,2109) - lu(k,1488) * lu(k,2107) + lu(k,2111) = lu(k,2111) - lu(k,1489) * lu(k,2107) + lu(k,2112) = lu(k,2112) - lu(k,1490) * lu(k,2107) + lu(k,2113) = lu(k,2113) - lu(k,1491) * lu(k,2107) + lu(k,2114) = lu(k,2114) - lu(k,1492) * lu(k,2107) + lu(k,2115) = lu(k,2115) - lu(k,1493) * lu(k,2107) + lu(k,2116) = lu(k,2116) - lu(k,1494) * lu(k,2107) + lu(k,2117) = lu(k,2117) - lu(k,1495) * lu(k,2107) + lu(k,2118) = lu(k,2118) - lu(k,1496) * lu(k,2107) + lu(k,2119) = lu(k,2119) - lu(k,1497) * lu(k,2107) + lu(k,2120) = lu(k,2120) - lu(k,1498) * lu(k,2107) + lu(k,2121) = lu(k,2121) - lu(k,1499) * lu(k,2107) + lu(k,2131) = lu(k,2131) - lu(k,1487) * lu(k,2130) + lu(k,2132) = lu(k,2132) - lu(k,1488) * lu(k,2130) + lu(k,2134) = lu(k,2134) - lu(k,1489) * lu(k,2130) + lu(k,2135) = lu(k,2135) - lu(k,1490) * lu(k,2130) + lu(k,2136) = - lu(k,1491) * lu(k,2130) + lu(k,2137) = lu(k,2137) - lu(k,1492) * lu(k,2130) + lu(k,2138) = lu(k,2138) - lu(k,1493) * lu(k,2130) + lu(k,2139) = lu(k,2139) - lu(k,1494) * lu(k,2130) + lu(k,2140) = lu(k,2140) - lu(k,1495) * lu(k,2130) + lu(k,2141) = lu(k,2141) - lu(k,1496) * lu(k,2130) + lu(k,2142) = lu(k,2142) - lu(k,1497) * lu(k,2130) + lu(k,2143) = lu(k,2143) - lu(k,1498) * lu(k,2130) + lu(k,2144) = lu(k,2144) - lu(k,1499) * lu(k,2130) + lu(k,2155) = lu(k,2155) - lu(k,1487) * lu(k,2154) + lu(k,2156) = lu(k,2156) - lu(k,1488) * lu(k,2154) + lu(k,2158) = lu(k,2158) - lu(k,1489) * lu(k,2154) + lu(k,2159) = lu(k,2159) - lu(k,1490) * lu(k,2154) + lu(k,2160) = lu(k,2160) - lu(k,1491) * lu(k,2154) + lu(k,2161) = lu(k,2161) - lu(k,1492) * lu(k,2154) + lu(k,2162) = lu(k,2162) - lu(k,1493) * lu(k,2154) + lu(k,2163) = lu(k,2163) - lu(k,1494) * lu(k,2154) + lu(k,2164) = lu(k,2164) - lu(k,1495) * lu(k,2154) + lu(k,2165) = lu(k,2165) - lu(k,1496) * lu(k,2154) + lu(k,2166) = lu(k,2166) - lu(k,1497) * lu(k,2154) + lu(k,2167) = lu(k,2167) - lu(k,1498) * lu(k,2154) + lu(k,2168) = lu(k,2168) - lu(k,1499) * lu(k,2154) + lu(k,2186) = lu(k,2186) - lu(k,1487) * lu(k,2185) + lu(k,2187) = lu(k,2187) - lu(k,1488) * lu(k,2185) + lu(k,2189) = lu(k,2189) - lu(k,1489) * lu(k,2185) + lu(k,2190) = lu(k,2190) - lu(k,1490) * lu(k,2185) + lu(k,2191) = lu(k,2191) - lu(k,1491) * lu(k,2185) + lu(k,2192) = lu(k,2192) - lu(k,1492) * lu(k,2185) + lu(k,2193) = lu(k,2193) - lu(k,1493) * lu(k,2185) + lu(k,2194) = lu(k,2194) - lu(k,1494) * lu(k,2185) + lu(k,2195) = lu(k,2195) - lu(k,1495) * lu(k,2185) + lu(k,2196) = lu(k,2196) - lu(k,1496) * lu(k,2185) + lu(k,2197) = lu(k,2197) - lu(k,1497) * lu(k,2185) + lu(k,2198) = lu(k,2198) - lu(k,1498) * lu(k,2185) + lu(k,2199) = lu(k,2199) - lu(k,1499) * lu(k,2185) + lu(k,2247) = lu(k,2247) - lu(k,1487) * lu(k,2246) + lu(k,2248) = lu(k,2248) - lu(k,1488) * lu(k,2246) + lu(k,2250) = lu(k,2250) - lu(k,1489) * lu(k,2246) + lu(k,2251) = lu(k,2251) - lu(k,1490) * lu(k,2246) + lu(k,2252) = lu(k,2252) - lu(k,1491) * lu(k,2246) + lu(k,2253) = lu(k,2253) - lu(k,1492) * lu(k,2246) + lu(k,2254) = lu(k,2254) - lu(k,1493) * lu(k,2246) + lu(k,2255) = lu(k,2255) - lu(k,1494) * lu(k,2246) + lu(k,2256) = lu(k,2256) - lu(k,1495) * lu(k,2246) + lu(k,2257) = lu(k,2257) - lu(k,1496) * lu(k,2246) + lu(k,2258) = lu(k,2258) - lu(k,1497) * lu(k,2246) + lu(k,2259) = lu(k,2259) - lu(k,1498) * lu(k,2246) + lu(k,2260) = lu(k,2260) - lu(k,1499) * lu(k,2246) + lu(k,2273) = lu(k,2273) - lu(k,1487) * lu(k,2272) + lu(k,2274) = lu(k,2274) - lu(k,1488) * lu(k,2272) + lu(k,2276) = lu(k,2276) - lu(k,1489) * lu(k,2272) + lu(k,2277) = lu(k,2277) - lu(k,1490) * lu(k,2272) + lu(k,2278) = lu(k,2278) - lu(k,1491) * lu(k,2272) + lu(k,2279) = lu(k,2279) - lu(k,1492) * lu(k,2272) + lu(k,2280) = lu(k,2280) - lu(k,1493) * lu(k,2272) + lu(k,2281) = lu(k,2281) - lu(k,1494) * lu(k,2272) + lu(k,2282) = lu(k,2282) - lu(k,1495) * lu(k,2272) + lu(k,2283) = lu(k,2283) - lu(k,1496) * lu(k,2272) + lu(k,2284) = lu(k,2284) - lu(k,1497) * lu(k,2272) + lu(k,2285) = lu(k,2285) - lu(k,1498) * lu(k,2272) + lu(k,2286) = lu(k,2286) - lu(k,1499) * lu(k,2272) + lu(k,1527) = 1._r8 / lu(k,1527) + lu(k,1528) = lu(k,1528) * lu(k,1527) + lu(k,1529) = lu(k,1529) * lu(k,1527) + lu(k,1530) = lu(k,1530) * lu(k,1527) + lu(k,1531) = lu(k,1531) * lu(k,1527) + lu(k,1532) = lu(k,1532) * lu(k,1527) + lu(k,1533) = lu(k,1533) * lu(k,1527) + lu(k,1534) = lu(k,1534) * lu(k,1527) + lu(k,1535) = lu(k,1535) * lu(k,1527) + lu(k,1536) = lu(k,1536) * lu(k,1527) + lu(k,1537) = lu(k,1537) * lu(k,1527) + lu(k,1538) = lu(k,1538) * lu(k,1527) + lu(k,1539) = lu(k,1539) * lu(k,1527) + lu(k,1540) = lu(k,1540) * lu(k,1527) + lu(k,1692) = lu(k,1692) - lu(k,1528) * lu(k,1691) + lu(k,1693) = lu(k,1693) - lu(k,1529) * lu(k,1691) + lu(k,1694) = lu(k,1694) - lu(k,1530) * lu(k,1691) + lu(k,1695) = lu(k,1695) - lu(k,1531) * lu(k,1691) + lu(k,1696) = lu(k,1696) - lu(k,1532) * lu(k,1691) + lu(k,1697) = lu(k,1697) - lu(k,1533) * lu(k,1691) + lu(k,1698) = lu(k,1698) - lu(k,1534) * lu(k,1691) + lu(k,1699) = lu(k,1699) - lu(k,1535) * lu(k,1691) + lu(k,1700) = lu(k,1700) - lu(k,1536) * lu(k,1691) + lu(k,1701) = lu(k,1701) - lu(k,1537) * lu(k,1691) + lu(k,1702) = lu(k,1702) - lu(k,1538) * lu(k,1691) + lu(k,1703) = lu(k,1703) - lu(k,1539) * lu(k,1691) + lu(k,1704) = lu(k,1704) - lu(k,1540) * lu(k,1691) + lu(k,1718) = lu(k,1718) - lu(k,1528) * lu(k,1717) + lu(k,1719) = lu(k,1719) - lu(k,1529) * lu(k,1717) + lu(k,1720) = lu(k,1720) - lu(k,1530) * lu(k,1717) + lu(k,1721) = lu(k,1721) - lu(k,1531) * lu(k,1717) + lu(k,1722) = lu(k,1722) - lu(k,1532) * lu(k,1717) + lu(k,1723) = lu(k,1723) - lu(k,1533) * lu(k,1717) + lu(k,1724) = lu(k,1724) - lu(k,1534) * lu(k,1717) + lu(k,1725) = lu(k,1725) - lu(k,1535) * lu(k,1717) + lu(k,1726) = lu(k,1726) - lu(k,1536) * lu(k,1717) + lu(k,1727) = lu(k,1727) - lu(k,1537) * lu(k,1717) + lu(k,1728) = lu(k,1728) - lu(k,1538) * lu(k,1717) + lu(k,1729) = lu(k,1729) - lu(k,1539) * lu(k,1717) + lu(k,1730) = lu(k,1730) - lu(k,1540) * lu(k,1717) + lu(k,1775) = lu(k,1775) - lu(k,1528) * lu(k,1774) + lu(k,1776) = lu(k,1776) - lu(k,1529) * lu(k,1774) + lu(k,1777) = lu(k,1777) - lu(k,1530) * lu(k,1774) + lu(k,1778) = lu(k,1778) - lu(k,1531) * lu(k,1774) + lu(k,1779) = lu(k,1779) - lu(k,1532) * lu(k,1774) + lu(k,1780) = lu(k,1780) - lu(k,1533) * lu(k,1774) + lu(k,1781) = lu(k,1781) - lu(k,1534) * lu(k,1774) + lu(k,1782) = lu(k,1782) - lu(k,1535) * lu(k,1774) + lu(k,1783) = lu(k,1783) - lu(k,1536) * lu(k,1774) + lu(k,1784) = lu(k,1784) - lu(k,1537) * lu(k,1774) + lu(k,1785) = lu(k,1785) - lu(k,1538) * lu(k,1774) + lu(k,1786) = lu(k,1786) - lu(k,1539) * lu(k,1774) + lu(k,1787) = lu(k,1787) - lu(k,1540) * lu(k,1774) + lu(k,1827) = lu(k,1827) - lu(k,1528) * lu(k,1826) + lu(k,1828) = lu(k,1828) - lu(k,1529) * lu(k,1826) + lu(k,1829) = lu(k,1829) - lu(k,1530) * lu(k,1826) + lu(k,1830) = lu(k,1830) - lu(k,1531) * lu(k,1826) + lu(k,1831) = lu(k,1831) - lu(k,1532) * lu(k,1826) + lu(k,1832) = lu(k,1832) - lu(k,1533) * lu(k,1826) + lu(k,1833) = lu(k,1833) - lu(k,1534) * lu(k,1826) + lu(k,1834) = lu(k,1834) - lu(k,1535) * lu(k,1826) + lu(k,1835) = lu(k,1835) - lu(k,1536) * lu(k,1826) + lu(k,1836) = lu(k,1836) - lu(k,1537) * lu(k,1826) + lu(k,1837) = lu(k,1837) - lu(k,1538) * lu(k,1826) + lu(k,1838) = lu(k,1838) - lu(k,1539) * lu(k,1826) + lu(k,1839) = lu(k,1839) - lu(k,1540) * lu(k,1826) + lu(k,1919) = lu(k,1919) - lu(k,1528) * lu(k,1918) + lu(k,1920) = lu(k,1920) - lu(k,1529) * lu(k,1918) + lu(k,1921) = lu(k,1921) - lu(k,1530) * lu(k,1918) + lu(k,1922) = lu(k,1922) - lu(k,1531) * lu(k,1918) + lu(k,1923) = lu(k,1923) - lu(k,1532) * lu(k,1918) + lu(k,1924) = lu(k,1924) - lu(k,1533) * lu(k,1918) + lu(k,1925) = lu(k,1925) - lu(k,1534) * lu(k,1918) + lu(k,1926) = lu(k,1926) - lu(k,1535) * lu(k,1918) + lu(k,1927) = lu(k,1927) - lu(k,1536) * lu(k,1918) + lu(k,1928) = lu(k,1928) - lu(k,1537) * lu(k,1918) + lu(k,1929) = lu(k,1929) - lu(k,1538) * lu(k,1918) + lu(k,1930) = lu(k,1930) - lu(k,1539) * lu(k,1918) + lu(k,1931) = lu(k,1931) - lu(k,1540) * lu(k,1918) + lu(k,1963) = lu(k,1963) - lu(k,1528) * lu(k,1962) + lu(k,1964) = lu(k,1964) - lu(k,1529) * lu(k,1962) + lu(k,1965) = lu(k,1965) - lu(k,1530) * lu(k,1962) + lu(k,1966) = lu(k,1966) - lu(k,1531) * lu(k,1962) + lu(k,1967) = lu(k,1967) - lu(k,1532) * lu(k,1962) + lu(k,1968) = lu(k,1968) - lu(k,1533) * lu(k,1962) + lu(k,1969) = lu(k,1969) - lu(k,1534) * lu(k,1962) + lu(k,1970) = lu(k,1970) - lu(k,1535) * lu(k,1962) + lu(k,1971) = lu(k,1971) - lu(k,1536) * lu(k,1962) + lu(k,1972) = lu(k,1972) - lu(k,1537) * lu(k,1962) + lu(k,1973) = lu(k,1973) - lu(k,1538) * lu(k,1962) + lu(k,1974) = lu(k,1974) - lu(k,1539) * lu(k,1962) + lu(k,1975) = lu(k,1975) - lu(k,1540) * lu(k,1962) + lu(k,2002) = lu(k,2002) - lu(k,1528) * lu(k,2001) + lu(k,2003) = lu(k,2003) - lu(k,1529) * lu(k,2001) + lu(k,2004) = lu(k,2004) - lu(k,1530) * lu(k,2001) + lu(k,2005) = lu(k,2005) - lu(k,1531) * lu(k,2001) + lu(k,2006) = lu(k,2006) - lu(k,1532) * lu(k,2001) + lu(k,2007) = lu(k,2007) - lu(k,1533) * lu(k,2001) + lu(k,2008) = lu(k,2008) - lu(k,1534) * lu(k,2001) + lu(k,2009) = lu(k,2009) - lu(k,1535) * lu(k,2001) + lu(k,2010) = lu(k,2010) - lu(k,1536) * lu(k,2001) + lu(k,2011) = lu(k,2011) - lu(k,1537) * lu(k,2001) + lu(k,2012) = lu(k,2012) - lu(k,1538) * lu(k,2001) + lu(k,2013) = lu(k,2013) - lu(k,1539) * lu(k,2001) + lu(k,2014) = lu(k,2014) - lu(k,1540) * lu(k,2001) + lu(k,2109) = lu(k,2109) - lu(k,1528) * lu(k,2108) + lu(k,2110) = lu(k,2110) - lu(k,1529) * lu(k,2108) + lu(k,2111) = lu(k,2111) - lu(k,1530) * lu(k,2108) + lu(k,2112) = lu(k,2112) - lu(k,1531) * lu(k,2108) + lu(k,2113) = lu(k,2113) - lu(k,1532) * lu(k,2108) + lu(k,2114) = lu(k,2114) - lu(k,1533) * lu(k,2108) + lu(k,2115) = lu(k,2115) - lu(k,1534) * lu(k,2108) + lu(k,2116) = lu(k,2116) - lu(k,1535) * lu(k,2108) + lu(k,2117) = lu(k,2117) - lu(k,1536) * lu(k,2108) + lu(k,2118) = lu(k,2118) - lu(k,1537) * lu(k,2108) + lu(k,2119) = lu(k,2119) - lu(k,1538) * lu(k,2108) + lu(k,2120) = lu(k,2120) - lu(k,1539) * lu(k,2108) + lu(k,2121) = lu(k,2121) - lu(k,1540) * lu(k,2108) + lu(k,2132) = lu(k,2132) - lu(k,1528) * lu(k,2131) + lu(k,2133) = lu(k,2133) - lu(k,1529) * lu(k,2131) + lu(k,2134) = lu(k,2134) - lu(k,1530) * lu(k,2131) + lu(k,2135) = lu(k,2135) - lu(k,1531) * lu(k,2131) + lu(k,2136) = lu(k,2136) - lu(k,1532) * lu(k,2131) + lu(k,2137) = lu(k,2137) - lu(k,1533) * lu(k,2131) + lu(k,2138) = lu(k,2138) - lu(k,1534) * lu(k,2131) + lu(k,2139) = lu(k,2139) - lu(k,1535) * lu(k,2131) + lu(k,2140) = lu(k,2140) - lu(k,1536) * lu(k,2131) + lu(k,2141) = lu(k,2141) - lu(k,1537) * lu(k,2131) + lu(k,2142) = lu(k,2142) - lu(k,1538) * lu(k,2131) + lu(k,2143) = lu(k,2143) - lu(k,1539) * lu(k,2131) + lu(k,2144) = lu(k,2144) - lu(k,1540) * lu(k,2131) + lu(k,2156) = lu(k,2156) - lu(k,1528) * lu(k,2155) + lu(k,2157) = lu(k,2157) - lu(k,1529) * lu(k,2155) + lu(k,2158) = lu(k,2158) - lu(k,1530) * lu(k,2155) + lu(k,2159) = lu(k,2159) - lu(k,1531) * lu(k,2155) + lu(k,2160) = lu(k,2160) - lu(k,1532) * lu(k,2155) + lu(k,2161) = lu(k,2161) - lu(k,1533) * lu(k,2155) + lu(k,2162) = lu(k,2162) - lu(k,1534) * lu(k,2155) + lu(k,2163) = lu(k,2163) - lu(k,1535) * lu(k,2155) + lu(k,2164) = lu(k,2164) - lu(k,1536) * lu(k,2155) + lu(k,2165) = lu(k,2165) - lu(k,1537) * lu(k,2155) + lu(k,2166) = lu(k,2166) - lu(k,1538) * lu(k,2155) + lu(k,2167) = lu(k,2167) - lu(k,1539) * lu(k,2155) + lu(k,2168) = lu(k,2168) - lu(k,1540) * lu(k,2155) + lu(k,2187) = lu(k,2187) - lu(k,1528) * lu(k,2186) + lu(k,2188) = lu(k,2188) - lu(k,1529) * lu(k,2186) + lu(k,2189) = lu(k,2189) - lu(k,1530) * lu(k,2186) + lu(k,2190) = lu(k,2190) - lu(k,1531) * lu(k,2186) + lu(k,2191) = lu(k,2191) - lu(k,1532) * lu(k,2186) + lu(k,2192) = lu(k,2192) - lu(k,1533) * lu(k,2186) + lu(k,2193) = lu(k,2193) - lu(k,1534) * lu(k,2186) + lu(k,2194) = lu(k,2194) - lu(k,1535) * lu(k,2186) + lu(k,2195) = lu(k,2195) - lu(k,1536) * lu(k,2186) + lu(k,2196) = lu(k,2196) - lu(k,1537) * lu(k,2186) + lu(k,2197) = lu(k,2197) - lu(k,1538) * lu(k,2186) + lu(k,2198) = lu(k,2198) - lu(k,1539) * lu(k,2186) + lu(k,2199) = lu(k,2199) - lu(k,1540) * lu(k,2186) + lu(k,2248) = lu(k,2248) - lu(k,1528) * lu(k,2247) + lu(k,2249) = lu(k,2249) - lu(k,1529) * lu(k,2247) + lu(k,2250) = lu(k,2250) - lu(k,1530) * lu(k,2247) + lu(k,2251) = lu(k,2251) - lu(k,1531) * lu(k,2247) + lu(k,2252) = lu(k,2252) - lu(k,1532) * lu(k,2247) + lu(k,2253) = lu(k,2253) - lu(k,1533) * lu(k,2247) + lu(k,2254) = lu(k,2254) - lu(k,1534) * lu(k,2247) + lu(k,2255) = lu(k,2255) - lu(k,1535) * lu(k,2247) + lu(k,2256) = lu(k,2256) - lu(k,1536) * lu(k,2247) + lu(k,2257) = lu(k,2257) - lu(k,1537) * lu(k,2247) + lu(k,2258) = lu(k,2258) - lu(k,1538) * lu(k,2247) + lu(k,2259) = lu(k,2259) - lu(k,1539) * lu(k,2247) + lu(k,2260) = lu(k,2260) - lu(k,1540) * lu(k,2247) + lu(k,2274) = lu(k,2274) - lu(k,1528) * lu(k,2273) + lu(k,2275) = lu(k,2275) - lu(k,1529) * lu(k,2273) + lu(k,2276) = lu(k,2276) - lu(k,1530) * lu(k,2273) + lu(k,2277) = lu(k,2277) - lu(k,1531) * lu(k,2273) + lu(k,2278) = lu(k,2278) - lu(k,1532) * lu(k,2273) + lu(k,2279) = lu(k,2279) - lu(k,1533) * lu(k,2273) + lu(k,2280) = lu(k,2280) - lu(k,1534) * lu(k,2273) + lu(k,2281) = lu(k,2281) - lu(k,1535) * lu(k,2273) + lu(k,2282) = lu(k,2282) - lu(k,1536) * lu(k,2273) + lu(k,2283) = lu(k,2283) - lu(k,1537) * lu(k,2273) + lu(k,2284) = lu(k,2284) - lu(k,1538) * lu(k,2273) + lu(k,2285) = lu(k,2285) - lu(k,1539) * lu(k,2273) + lu(k,2286) = lu(k,2286) - lu(k,1540) * lu(k,2273) + lu(k,1692) = 1._r8 / lu(k,1692) + lu(k,1693) = lu(k,1693) * lu(k,1692) + lu(k,1694) = lu(k,1694) * lu(k,1692) + lu(k,1695) = lu(k,1695) * lu(k,1692) + lu(k,1696) = lu(k,1696) * lu(k,1692) + lu(k,1697) = lu(k,1697) * lu(k,1692) + lu(k,1698) = lu(k,1698) * lu(k,1692) + lu(k,1699) = lu(k,1699) * lu(k,1692) + lu(k,1700) = lu(k,1700) * lu(k,1692) + lu(k,1701) = lu(k,1701) * lu(k,1692) + lu(k,1702) = lu(k,1702) * lu(k,1692) + lu(k,1703) = lu(k,1703) * lu(k,1692) + lu(k,1704) = lu(k,1704) * lu(k,1692) + lu(k,1719) = lu(k,1719) - lu(k,1693) * lu(k,1718) + lu(k,1720) = lu(k,1720) - lu(k,1694) * lu(k,1718) + lu(k,1721) = lu(k,1721) - lu(k,1695) * lu(k,1718) + lu(k,1722) = lu(k,1722) - lu(k,1696) * lu(k,1718) + lu(k,1723) = lu(k,1723) - lu(k,1697) * lu(k,1718) + lu(k,1724) = lu(k,1724) - lu(k,1698) * lu(k,1718) + lu(k,1725) = lu(k,1725) - lu(k,1699) * lu(k,1718) + lu(k,1726) = lu(k,1726) - lu(k,1700) * lu(k,1718) + lu(k,1727) = lu(k,1727) - lu(k,1701) * lu(k,1718) + lu(k,1728) = lu(k,1728) - lu(k,1702) * lu(k,1718) + lu(k,1729) = lu(k,1729) - lu(k,1703) * lu(k,1718) + lu(k,1730) = lu(k,1730) - lu(k,1704) * lu(k,1718) + lu(k,1776) = lu(k,1776) - lu(k,1693) * lu(k,1775) + lu(k,1777) = lu(k,1777) - lu(k,1694) * lu(k,1775) + lu(k,1778) = lu(k,1778) - lu(k,1695) * lu(k,1775) + lu(k,1779) = lu(k,1779) - lu(k,1696) * lu(k,1775) + lu(k,1780) = lu(k,1780) - lu(k,1697) * lu(k,1775) + lu(k,1781) = lu(k,1781) - lu(k,1698) * lu(k,1775) + lu(k,1782) = lu(k,1782) - lu(k,1699) * lu(k,1775) + lu(k,1783) = lu(k,1783) - lu(k,1700) * lu(k,1775) + lu(k,1784) = lu(k,1784) - lu(k,1701) * lu(k,1775) + lu(k,1785) = lu(k,1785) - lu(k,1702) * lu(k,1775) + lu(k,1786) = lu(k,1786) - lu(k,1703) * lu(k,1775) + lu(k,1787) = lu(k,1787) - lu(k,1704) * lu(k,1775) + lu(k,1828) = lu(k,1828) - lu(k,1693) * lu(k,1827) + lu(k,1829) = lu(k,1829) - lu(k,1694) * lu(k,1827) + lu(k,1830) = lu(k,1830) - lu(k,1695) * lu(k,1827) + lu(k,1831) = lu(k,1831) - lu(k,1696) * lu(k,1827) + lu(k,1832) = lu(k,1832) - lu(k,1697) * lu(k,1827) + lu(k,1833) = lu(k,1833) - lu(k,1698) * lu(k,1827) + lu(k,1834) = lu(k,1834) - lu(k,1699) * lu(k,1827) + lu(k,1835) = lu(k,1835) - lu(k,1700) * lu(k,1827) + lu(k,1836) = lu(k,1836) - lu(k,1701) * lu(k,1827) + lu(k,1837) = lu(k,1837) - lu(k,1702) * lu(k,1827) + lu(k,1838) = lu(k,1838) - lu(k,1703) * lu(k,1827) + lu(k,1839) = lu(k,1839) - lu(k,1704) * lu(k,1827) + lu(k,1920) = lu(k,1920) - lu(k,1693) * lu(k,1919) + lu(k,1921) = lu(k,1921) - lu(k,1694) * lu(k,1919) + lu(k,1922) = lu(k,1922) - lu(k,1695) * lu(k,1919) + lu(k,1923) = lu(k,1923) - lu(k,1696) * lu(k,1919) + lu(k,1924) = lu(k,1924) - lu(k,1697) * lu(k,1919) + lu(k,1925) = lu(k,1925) - lu(k,1698) * lu(k,1919) + lu(k,1926) = lu(k,1926) - lu(k,1699) * lu(k,1919) + lu(k,1927) = lu(k,1927) - lu(k,1700) * lu(k,1919) + lu(k,1928) = lu(k,1928) - lu(k,1701) * lu(k,1919) + lu(k,1929) = lu(k,1929) - lu(k,1702) * lu(k,1919) + lu(k,1930) = lu(k,1930) - lu(k,1703) * lu(k,1919) + lu(k,1931) = lu(k,1931) - lu(k,1704) * lu(k,1919) + lu(k,1964) = lu(k,1964) - lu(k,1693) * lu(k,1963) + lu(k,1965) = lu(k,1965) - lu(k,1694) * lu(k,1963) + lu(k,1966) = lu(k,1966) - lu(k,1695) * lu(k,1963) + lu(k,1967) = lu(k,1967) - lu(k,1696) * lu(k,1963) + lu(k,1968) = lu(k,1968) - lu(k,1697) * lu(k,1963) + lu(k,1969) = lu(k,1969) - lu(k,1698) * lu(k,1963) + lu(k,1970) = lu(k,1970) - lu(k,1699) * lu(k,1963) + lu(k,1971) = lu(k,1971) - lu(k,1700) * lu(k,1963) + lu(k,1972) = lu(k,1972) - lu(k,1701) * lu(k,1963) + lu(k,1973) = lu(k,1973) - lu(k,1702) * lu(k,1963) + lu(k,1974) = lu(k,1974) - lu(k,1703) * lu(k,1963) + lu(k,1975) = lu(k,1975) - lu(k,1704) * lu(k,1963) + lu(k,2003) = lu(k,2003) - lu(k,1693) * lu(k,2002) + lu(k,2004) = lu(k,2004) - lu(k,1694) * lu(k,2002) + lu(k,2005) = lu(k,2005) - lu(k,1695) * lu(k,2002) + lu(k,2006) = lu(k,2006) - lu(k,1696) * lu(k,2002) + lu(k,2007) = lu(k,2007) - lu(k,1697) * lu(k,2002) + lu(k,2008) = lu(k,2008) - lu(k,1698) * lu(k,2002) + lu(k,2009) = lu(k,2009) - lu(k,1699) * lu(k,2002) + lu(k,2010) = lu(k,2010) - lu(k,1700) * lu(k,2002) + lu(k,2011) = lu(k,2011) - lu(k,1701) * lu(k,2002) + lu(k,2012) = lu(k,2012) - lu(k,1702) * lu(k,2002) + lu(k,2013) = lu(k,2013) - lu(k,1703) * lu(k,2002) + lu(k,2014) = lu(k,2014) - lu(k,1704) * lu(k,2002) + lu(k,2110) = lu(k,2110) - lu(k,1693) * lu(k,2109) + lu(k,2111) = lu(k,2111) - lu(k,1694) * lu(k,2109) + lu(k,2112) = lu(k,2112) - lu(k,1695) * lu(k,2109) + lu(k,2113) = lu(k,2113) - lu(k,1696) * lu(k,2109) + lu(k,2114) = lu(k,2114) - lu(k,1697) * lu(k,2109) + lu(k,2115) = lu(k,2115) - lu(k,1698) * lu(k,2109) + lu(k,2116) = lu(k,2116) - lu(k,1699) * lu(k,2109) + lu(k,2117) = lu(k,2117) - lu(k,1700) * lu(k,2109) + lu(k,2118) = lu(k,2118) - lu(k,1701) * lu(k,2109) + lu(k,2119) = lu(k,2119) - lu(k,1702) * lu(k,2109) + lu(k,2120) = lu(k,2120) - lu(k,1703) * lu(k,2109) + lu(k,2121) = lu(k,2121) - lu(k,1704) * lu(k,2109) + lu(k,2133) = lu(k,2133) - lu(k,1693) * lu(k,2132) + lu(k,2134) = lu(k,2134) - lu(k,1694) * lu(k,2132) + lu(k,2135) = lu(k,2135) - lu(k,1695) * lu(k,2132) + lu(k,2136) = lu(k,2136) - lu(k,1696) * lu(k,2132) + lu(k,2137) = lu(k,2137) - lu(k,1697) * lu(k,2132) + lu(k,2138) = lu(k,2138) - lu(k,1698) * lu(k,2132) + lu(k,2139) = lu(k,2139) - lu(k,1699) * lu(k,2132) + lu(k,2140) = lu(k,2140) - lu(k,1700) * lu(k,2132) + lu(k,2141) = lu(k,2141) - lu(k,1701) * lu(k,2132) + lu(k,2142) = lu(k,2142) - lu(k,1702) * lu(k,2132) + lu(k,2143) = lu(k,2143) - lu(k,1703) * lu(k,2132) + lu(k,2144) = lu(k,2144) - lu(k,1704) * lu(k,2132) + lu(k,2157) = lu(k,2157) - lu(k,1693) * lu(k,2156) + lu(k,2158) = lu(k,2158) - lu(k,1694) * lu(k,2156) + lu(k,2159) = lu(k,2159) - lu(k,1695) * lu(k,2156) + lu(k,2160) = lu(k,2160) - lu(k,1696) * lu(k,2156) + lu(k,2161) = lu(k,2161) - lu(k,1697) * lu(k,2156) + lu(k,2162) = lu(k,2162) - lu(k,1698) * lu(k,2156) + lu(k,2163) = lu(k,2163) - lu(k,1699) * lu(k,2156) + lu(k,2164) = lu(k,2164) - lu(k,1700) * lu(k,2156) + lu(k,2165) = lu(k,2165) - lu(k,1701) * lu(k,2156) + lu(k,2166) = lu(k,2166) - lu(k,1702) * lu(k,2156) + lu(k,2167) = lu(k,2167) - lu(k,1703) * lu(k,2156) + lu(k,2168) = lu(k,2168) - lu(k,1704) * lu(k,2156) + lu(k,2188) = lu(k,2188) - lu(k,1693) * lu(k,2187) + lu(k,2189) = lu(k,2189) - lu(k,1694) * lu(k,2187) + lu(k,2190) = lu(k,2190) - lu(k,1695) * lu(k,2187) + lu(k,2191) = lu(k,2191) - lu(k,1696) * lu(k,2187) + lu(k,2192) = lu(k,2192) - lu(k,1697) * lu(k,2187) + lu(k,2193) = lu(k,2193) - lu(k,1698) * lu(k,2187) + lu(k,2194) = lu(k,2194) - lu(k,1699) * lu(k,2187) + lu(k,2195) = lu(k,2195) - lu(k,1700) * lu(k,2187) + lu(k,2196) = lu(k,2196) - lu(k,1701) * lu(k,2187) + lu(k,2197) = lu(k,2197) - lu(k,1702) * lu(k,2187) + lu(k,2198) = lu(k,2198) - lu(k,1703) * lu(k,2187) + lu(k,2199) = lu(k,2199) - lu(k,1704) * lu(k,2187) + lu(k,2249) = lu(k,2249) - lu(k,1693) * lu(k,2248) + lu(k,2250) = lu(k,2250) - lu(k,1694) * lu(k,2248) + lu(k,2251) = lu(k,2251) - lu(k,1695) * lu(k,2248) + lu(k,2252) = lu(k,2252) - lu(k,1696) * lu(k,2248) + lu(k,2253) = lu(k,2253) - lu(k,1697) * lu(k,2248) + lu(k,2254) = lu(k,2254) - lu(k,1698) * lu(k,2248) + lu(k,2255) = lu(k,2255) - lu(k,1699) * lu(k,2248) + lu(k,2256) = lu(k,2256) - lu(k,1700) * lu(k,2248) + lu(k,2257) = lu(k,2257) - lu(k,1701) * lu(k,2248) + lu(k,2258) = lu(k,2258) - lu(k,1702) * lu(k,2248) + lu(k,2259) = lu(k,2259) - lu(k,1703) * lu(k,2248) + lu(k,2260) = lu(k,2260) - lu(k,1704) * lu(k,2248) + lu(k,2275) = lu(k,2275) - lu(k,1693) * lu(k,2274) + lu(k,2276) = lu(k,2276) - lu(k,1694) * lu(k,2274) + lu(k,2277) = lu(k,2277) - lu(k,1695) * lu(k,2274) + lu(k,2278) = lu(k,2278) - lu(k,1696) * lu(k,2274) + lu(k,2279) = lu(k,2279) - lu(k,1697) * lu(k,2274) + lu(k,2280) = lu(k,2280) - lu(k,1698) * lu(k,2274) + lu(k,2281) = lu(k,2281) - lu(k,1699) * lu(k,2274) + lu(k,2282) = lu(k,2282) - lu(k,1700) * lu(k,2274) + lu(k,2283) = lu(k,2283) - lu(k,1701) * lu(k,2274) + lu(k,2284) = lu(k,2284) - lu(k,1702) * lu(k,2274) + lu(k,2285) = lu(k,2285) - lu(k,1703) * lu(k,2274) + lu(k,2286) = lu(k,2286) - lu(k,1704) * lu(k,2274) + lu(k,1719) = 1._r8 / lu(k,1719) + lu(k,1720) = lu(k,1720) * lu(k,1719) + lu(k,1721) = lu(k,1721) * lu(k,1719) + lu(k,1722) = lu(k,1722) * lu(k,1719) + lu(k,1723) = lu(k,1723) * lu(k,1719) + lu(k,1724) = lu(k,1724) * lu(k,1719) + lu(k,1725) = lu(k,1725) * lu(k,1719) + lu(k,1726) = lu(k,1726) * lu(k,1719) + lu(k,1727) = lu(k,1727) * lu(k,1719) + lu(k,1728) = lu(k,1728) * lu(k,1719) + lu(k,1729) = lu(k,1729) * lu(k,1719) + lu(k,1730) = lu(k,1730) * lu(k,1719) + lu(k,1777) = lu(k,1777) - lu(k,1720) * lu(k,1776) + lu(k,1778) = lu(k,1778) - lu(k,1721) * lu(k,1776) + lu(k,1779) = lu(k,1779) - lu(k,1722) * lu(k,1776) + lu(k,1780) = lu(k,1780) - lu(k,1723) * lu(k,1776) + lu(k,1781) = lu(k,1781) - lu(k,1724) * lu(k,1776) + lu(k,1782) = lu(k,1782) - lu(k,1725) * lu(k,1776) + lu(k,1783) = lu(k,1783) - lu(k,1726) * lu(k,1776) + lu(k,1784) = lu(k,1784) - lu(k,1727) * lu(k,1776) + lu(k,1785) = lu(k,1785) - lu(k,1728) * lu(k,1776) + lu(k,1786) = lu(k,1786) - lu(k,1729) * lu(k,1776) + lu(k,1787) = lu(k,1787) - lu(k,1730) * lu(k,1776) + lu(k,1829) = lu(k,1829) - lu(k,1720) * lu(k,1828) + lu(k,1830) = lu(k,1830) - lu(k,1721) * lu(k,1828) + lu(k,1831) = lu(k,1831) - lu(k,1722) * lu(k,1828) + lu(k,1832) = lu(k,1832) - lu(k,1723) * lu(k,1828) + lu(k,1833) = lu(k,1833) - lu(k,1724) * lu(k,1828) + lu(k,1834) = lu(k,1834) - lu(k,1725) * lu(k,1828) + lu(k,1835) = lu(k,1835) - lu(k,1726) * lu(k,1828) + lu(k,1836) = lu(k,1836) - lu(k,1727) * lu(k,1828) + lu(k,1837) = lu(k,1837) - lu(k,1728) * lu(k,1828) + lu(k,1838) = lu(k,1838) - lu(k,1729) * lu(k,1828) + lu(k,1839) = lu(k,1839) - lu(k,1730) * lu(k,1828) + lu(k,1921) = lu(k,1921) - lu(k,1720) * lu(k,1920) + lu(k,1922) = lu(k,1922) - lu(k,1721) * lu(k,1920) + lu(k,1923) = lu(k,1923) - lu(k,1722) * lu(k,1920) + lu(k,1924) = lu(k,1924) - lu(k,1723) * lu(k,1920) + lu(k,1925) = lu(k,1925) - lu(k,1724) * lu(k,1920) + lu(k,1926) = lu(k,1926) - lu(k,1725) * lu(k,1920) + lu(k,1927) = lu(k,1927) - lu(k,1726) * lu(k,1920) + lu(k,1928) = lu(k,1928) - lu(k,1727) * lu(k,1920) + lu(k,1929) = lu(k,1929) - lu(k,1728) * lu(k,1920) + lu(k,1930) = lu(k,1930) - lu(k,1729) * lu(k,1920) + lu(k,1931) = lu(k,1931) - lu(k,1730) * lu(k,1920) + lu(k,1965) = lu(k,1965) - lu(k,1720) * lu(k,1964) + lu(k,1966) = lu(k,1966) - lu(k,1721) * lu(k,1964) + lu(k,1967) = lu(k,1967) - lu(k,1722) * lu(k,1964) + lu(k,1968) = lu(k,1968) - lu(k,1723) * lu(k,1964) + lu(k,1969) = lu(k,1969) - lu(k,1724) * lu(k,1964) + lu(k,1970) = lu(k,1970) - lu(k,1725) * lu(k,1964) + lu(k,1971) = lu(k,1971) - lu(k,1726) * lu(k,1964) + lu(k,1972) = lu(k,1972) - lu(k,1727) * lu(k,1964) + lu(k,1973) = lu(k,1973) - lu(k,1728) * lu(k,1964) + lu(k,1974) = lu(k,1974) - lu(k,1729) * lu(k,1964) + lu(k,1975) = lu(k,1975) - lu(k,1730) * lu(k,1964) + lu(k,2004) = lu(k,2004) - lu(k,1720) * lu(k,2003) + lu(k,2005) = lu(k,2005) - lu(k,1721) * lu(k,2003) + lu(k,2006) = lu(k,2006) - lu(k,1722) * lu(k,2003) + lu(k,2007) = lu(k,2007) - lu(k,1723) * lu(k,2003) + lu(k,2008) = lu(k,2008) - lu(k,1724) * lu(k,2003) + lu(k,2009) = lu(k,2009) - lu(k,1725) * lu(k,2003) + lu(k,2010) = lu(k,2010) - lu(k,1726) * lu(k,2003) + lu(k,2011) = lu(k,2011) - lu(k,1727) * lu(k,2003) + lu(k,2012) = lu(k,2012) - lu(k,1728) * lu(k,2003) + lu(k,2013) = lu(k,2013) - lu(k,1729) * lu(k,2003) + lu(k,2014) = lu(k,2014) - lu(k,1730) * lu(k,2003) + lu(k,2111) = lu(k,2111) - lu(k,1720) * lu(k,2110) + lu(k,2112) = lu(k,2112) - lu(k,1721) * lu(k,2110) + lu(k,2113) = lu(k,2113) - lu(k,1722) * lu(k,2110) + lu(k,2114) = lu(k,2114) - lu(k,1723) * lu(k,2110) + lu(k,2115) = lu(k,2115) - lu(k,1724) * lu(k,2110) + lu(k,2116) = lu(k,2116) - lu(k,1725) * lu(k,2110) + lu(k,2117) = lu(k,2117) - lu(k,1726) * lu(k,2110) + lu(k,2118) = lu(k,2118) - lu(k,1727) * lu(k,2110) + lu(k,2119) = lu(k,2119) - lu(k,1728) * lu(k,2110) + lu(k,2120) = lu(k,2120) - lu(k,1729) * lu(k,2110) + lu(k,2121) = lu(k,2121) - lu(k,1730) * lu(k,2110) + lu(k,2134) = lu(k,2134) - lu(k,1720) * lu(k,2133) + lu(k,2135) = lu(k,2135) - lu(k,1721) * lu(k,2133) + lu(k,2136) = lu(k,2136) - lu(k,1722) * lu(k,2133) + lu(k,2137) = lu(k,2137) - lu(k,1723) * lu(k,2133) + lu(k,2138) = lu(k,2138) - lu(k,1724) * lu(k,2133) + lu(k,2139) = lu(k,2139) - lu(k,1725) * lu(k,2133) + lu(k,2140) = lu(k,2140) - lu(k,1726) * lu(k,2133) + lu(k,2141) = lu(k,2141) - lu(k,1727) * lu(k,2133) + lu(k,2142) = lu(k,2142) - lu(k,1728) * lu(k,2133) + lu(k,2143) = lu(k,2143) - lu(k,1729) * lu(k,2133) + lu(k,2144) = lu(k,2144) - lu(k,1730) * lu(k,2133) + lu(k,2158) = lu(k,2158) - lu(k,1720) * lu(k,2157) + lu(k,2159) = lu(k,2159) - lu(k,1721) * lu(k,2157) + lu(k,2160) = lu(k,2160) - lu(k,1722) * lu(k,2157) + lu(k,2161) = lu(k,2161) - lu(k,1723) * lu(k,2157) + lu(k,2162) = lu(k,2162) - lu(k,1724) * lu(k,2157) + lu(k,2163) = lu(k,2163) - lu(k,1725) * lu(k,2157) + lu(k,2164) = lu(k,2164) - lu(k,1726) * lu(k,2157) + lu(k,2165) = lu(k,2165) - lu(k,1727) * lu(k,2157) + lu(k,2166) = lu(k,2166) - lu(k,1728) * lu(k,2157) + lu(k,2167) = lu(k,2167) - lu(k,1729) * lu(k,2157) + lu(k,2168) = lu(k,2168) - lu(k,1730) * lu(k,2157) + lu(k,2189) = lu(k,2189) - lu(k,1720) * lu(k,2188) + lu(k,2190) = lu(k,2190) - lu(k,1721) * lu(k,2188) + lu(k,2191) = lu(k,2191) - lu(k,1722) * lu(k,2188) + lu(k,2192) = lu(k,2192) - lu(k,1723) * lu(k,2188) + lu(k,2193) = lu(k,2193) - lu(k,1724) * lu(k,2188) + lu(k,2194) = lu(k,2194) - lu(k,1725) * lu(k,2188) + lu(k,2195) = lu(k,2195) - lu(k,1726) * lu(k,2188) + lu(k,2196) = lu(k,2196) - lu(k,1727) * lu(k,2188) + lu(k,2197) = lu(k,2197) - lu(k,1728) * lu(k,2188) + lu(k,2198) = lu(k,2198) - lu(k,1729) * lu(k,2188) + lu(k,2199) = lu(k,2199) - lu(k,1730) * lu(k,2188) + lu(k,2250) = lu(k,2250) - lu(k,1720) * lu(k,2249) + lu(k,2251) = lu(k,2251) - lu(k,1721) * lu(k,2249) + lu(k,2252) = lu(k,2252) - lu(k,1722) * lu(k,2249) + lu(k,2253) = lu(k,2253) - lu(k,1723) * lu(k,2249) + lu(k,2254) = lu(k,2254) - lu(k,1724) * lu(k,2249) + lu(k,2255) = lu(k,2255) - lu(k,1725) * lu(k,2249) + lu(k,2256) = lu(k,2256) - lu(k,1726) * lu(k,2249) + lu(k,2257) = lu(k,2257) - lu(k,1727) * lu(k,2249) + lu(k,2258) = lu(k,2258) - lu(k,1728) * lu(k,2249) + lu(k,2259) = lu(k,2259) - lu(k,1729) * lu(k,2249) + lu(k,2260) = lu(k,2260) - lu(k,1730) * lu(k,2249) + lu(k,2276) = lu(k,2276) - lu(k,1720) * lu(k,2275) + lu(k,2277) = lu(k,2277) - lu(k,1721) * lu(k,2275) + lu(k,2278) = lu(k,2278) - lu(k,1722) * lu(k,2275) + lu(k,2279) = lu(k,2279) - lu(k,1723) * lu(k,2275) + lu(k,2280) = lu(k,2280) - lu(k,1724) * lu(k,2275) + lu(k,2281) = lu(k,2281) - lu(k,1725) * lu(k,2275) + lu(k,2282) = lu(k,2282) - lu(k,1726) * lu(k,2275) + lu(k,2283) = lu(k,2283) - lu(k,1727) * lu(k,2275) + lu(k,2284) = lu(k,2284) - lu(k,1728) * lu(k,2275) + lu(k,2285) = lu(k,2285) - lu(k,1729) * lu(k,2275) + lu(k,2286) = lu(k,2286) - lu(k,1730) * lu(k,2275) + end do + end subroutine lu_fac29 + subroutine lu_fac30( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1777) = 1._r8 / lu(k,1777) + lu(k,1778) = lu(k,1778) * lu(k,1777) + lu(k,1779) = lu(k,1779) * lu(k,1777) + lu(k,1780) = lu(k,1780) * lu(k,1777) + lu(k,1781) = lu(k,1781) * lu(k,1777) + lu(k,1782) = lu(k,1782) * lu(k,1777) + lu(k,1783) = lu(k,1783) * lu(k,1777) + lu(k,1784) = lu(k,1784) * lu(k,1777) + lu(k,1785) = lu(k,1785) * lu(k,1777) + lu(k,1786) = lu(k,1786) * lu(k,1777) + lu(k,1787) = lu(k,1787) * lu(k,1777) + lu(k,1830) = lu(k,1830) - lu(k,1778) * lu(k,1829) + lu(k,1831) = lu(k,1831) - lu(k,1779) * lu(k,1829) + lu(k,1832) = lu(k,1832) - lu(k,1780) * lu(k,1829) + lu(k,1833) = lu(k,1833) - lu(k,1781) * lu(k,1829) + lu(k,1834) = lu(k,1834) - lu(k,1782) * lu(k,1829) + lu(k,1835) = lu(k,1835) - lu(k,1783) * lu(k,1829) + lu(k,1836) = lu(k,1836) - lu(k,1784) * lu(k,1829) + lu(k,1837) = lu(k,1837) - lu(k,1785) * lu(k,1829) + lu(k,1838) = lu(k,1838) - lu(k,1786) * lu(k,1829) + lu(k,1839) = lu(k,1839) - lu(k,1787) * lu(k,1829) + lu(k,1922) = lu(k,1922) - lu(k,1778) * lu(k,1921) + lu(k,1923) = lu(k,1923) - lu(k,1779) * lu(k,1921) + lu(k,1924) = lu(k,1924) - lu(k,1780) * lu(k,1921) + lu(k,1925) = lu(k,1925) - lu(k,1781) * lu(k,1921) + lu(k,1926) = lu(k,1926) - lu(k,1782) * lu(k,1921) + lu(k,1927) = lu(k,1927) - lu(k,1783) * lu(k,1921) + lu(k,1928) = lu(k,1928) - lu(k,1784) * lu(k,1921) + lu(k,1929) = lu(k,1929) - lu(k,1785) * lu(k,1921) + lu(k,1930) = lu(k,1930) - lu(k,1786) * lu(k,1921) + lu(k,1931) = lu(k,1931) - lu(k,1787) * lu(k,1921) + lu(k,1966) = lu(k,1966) - lu(k,1778) * lu(k,1965) + lu(k,1967) = lu(k,1967) - lu(k,1779) * lu(k,1965) + lu(k,1968) = lu(k,1968) - lu(k,1780) * lu(k,1965) + lu(k,1969) = lu(k,1969) - lu(k,1781) * lu(k,1965) + lu(k,1970) = lu(k,1970) - lu(k,1782) * lu(k,1965) + lu(k,1971) = lu(k,1971) - lu(k,1783) * lu(k,1965) + lu(k,1972) = lu(k,1972) - lu(k,1784) * lu(k,1965) + lu(k,1973) = lu(k,1973) - lu(k,1785) * lu(k,1965) + lu(k,1974) = lu(k,1974) - lu(k,1786) * lu(k,1965) + lu(k,1975) = lu(k,1975) - lu(k,1787) * lu(k,1965) + lu(k,2005) = lu(k,2005) - lu(k,1778) * lu(k,2004) + lu(k,2006) = lu(k,2006) - lu(k,1779) * lu(k,2004) + lu(k,2007) = lu(k,2007) - lu(k,1780) * lu(k,2004) + lu(k,2008) = lu(k,2008) - lu(k,1781) * lu(k,2004) + lu(k,2009) = lu(k,2009) - lu(k,1782) * lu(k,2004) + lu(k,2010) = lu(k,2010) - lu(k,1783) * lu(k,2004) + lu(k,2011) = lu(k,2011) - lu(k,1784) * lu(k,2004) + lu(k,2012) = lu(k,2012) - lu(k,1785) * lu(k,2004) + lu(k,2013) = lu(k,2013) - lu(k,1786) * lu(k,2004) + lu(k,2014) = lu(k,2014) - lu(k,1787) * lu(k,2004) + lu(k,2112) = lu(k,2112) - lu(k,1778) * lu(k,2111) + lu(k,2113) = lu(k,2113) - lu(k,1779) * lu(k,2111) + lu(k,2114) = lu(k,2114) - lu(k,1780) * lu(k,2111) + lu(k,2115) = lu(k,2115) - lu(k,1781) * lu(k,2111) + lu(k,2116) = lu(k,2116) - lu(k,1782) * lu(k,2111) + lu(k,2117) = lu(k,2117) - lu(k,1783) * lu(k,2111) + lu(k,2118) = lu(k,2118) - lu(k,1784) * lu(k,2111) + lu(k,2119) = lu(k,2119) - lu(k,1785) * lu(k,2111) + lu(k,2120) = lu(k,2120) - lu(k,1786) * lu(k,2111) + lu(k,2121) = lu(k,2121) - lu(k,1787) * lu(k,2111) + lu(k,2135) = lu(k,2135) - lu(k,1778) * lu(k,2134) + lu(k,2136) = lu(k,2136) - lu(k,1779) * lu(k,2134) + lu(k,2137) = lu(k,2137) - lu(k,1780) * lu(k,2134) + lu(k,2138) = lu(k,2138) - lu(k,1781) * lu(k,2134) + lu(k,2139) = lu(k,2139) - lu(k,1782) * lu(k,2134) + lu(k,2140) = lu(k,2140) - lu(k,1783) * lu(k,2134) + lu(k,2141) = lu(k,2141) - lu(k,1784) * lu(k,2134) + lu(k,2142) = lu(k,2142) - lu(k,1785) * lu(k,2134) + lu(k,2143) = lu(k,2143) - lu(k,1786) * lu(k,2134) + lu(k,2144) = lu(k,2144) - lu(k,1787) * lu(k,2134) + lu(k,2159) = lu(k,2159) - lu(k,1778) * lu(k,2158) + lu(k,2160) = lu(k,2160) - lu(k,1779) * lu(k,2158) + lu(k,2161) = lu(k,2161) - lu(k,1780) * lu(k,2158) + lu(k,2162) = lu(k,2162) - lu(k,1781) * lu(k,2158) + lu(k,2163) = lu(k,2163) - lu(k,1782) * lu(k,2158) + lu(k,2164) = lu(k,2164) - lu(k,1783) * lu(k,2158) + lu(k,2165) = lu(k,2165) - lu(k,1784) * lu(k,2158) + lu(k,2166) = lu(k,2166) - lu(k,1785) * lu(k,2158) + lu(k,2167) = lu(k,2167) - lu(k,1786) * lu(k,2158) + lu(k,2168) = lu(k,2168) - lu(k,1787) * lu(k,2158) + lu(k,2190) = lu(k,2190) - lu(k,1778) * lu(k,2189) + lu(k,2191) = lu(k,2191) - lu(k,1779) * lu(k,2189) + lu(k,2192) = lu(k,2192) - lu(k,1780) * lu(k,2189) + lu(k,2193) = lu(k,2193) - lu(k,1781) * lu(k,2189) + lu(k,2194) = lu(k,2194) - lu(k,1782) * lu(k,2189) + lu(k,2195) = lu(k,2195) - lu(k,1783) * lu(k,2189) + lu(k,2196) = lu(k,2196) - lu(k,1784) * lu(k,2189) + lu(k,2197) = lu(k,2197) - lu(k,1785) * lu(k,2189) + lu(k,2198) = lu(k,2198) - lu(k,1786) * lu(k,2189) + lu(k,2199) = lu(k,2199) - lu(k,1787) * lu(k,2189) + lu(k,2251) = lu(k,2251) - lu(k,1778) * lu(k,2250) + lu(k,2252) = lu(k,2252) - lu(k,1779) * lu(k,2250) + lu(k,2253) = lu(k,2253) - lu(k,1780) * lu(k,2250) + lu(k,2254) = lu(k,2254) - lu(k,1781) * lu(k,2250) + lu(k,2255) = lu(k,2255) - lu(k,1782) * lu(k,2250) + lu(k,2256) = lu(k,2256) - lu(k,1783) * lu(k,2250) + lu(k,2257) = lu(k,2257) - lu(k,1784) * lu(k,2250) + lu(k,2258) = lu(k,2258) - lu(k,1785) * lu(k,2250) + lu(k,2259) = lu(k,2259) - lu(k,1786) * lu(k,2250) + lu(k,2260) = lu(k,2260) - lu(k,1787) * lu(k,2250) + lu(k,2277) = lu(k,2277) - lu(k,1778) * lu(k,2276) + lu(k,2278) = lu(k,2278) - lu(k,1779) * lu(k,2276) + lu(k,2279) = lu(k,2279) - lu(k,1780) * lu(k,2276) + lu(k,2280) = lu(k,2280) - lu(k,1781) * lu(k,2276) + lu(k,2281) = lu(k,2281) - lu(k,1782) * lu(k,2276) + lu(k,2282) = lu(k,2282) - lu(k,1783) * lu(k,2276) + lu(k,2283) = lu(k,2283) - lu(k,1784) * lu(k,2276) + lu(k,2284) = lu(k,2284) - lu(k,1785) * lu(k,2276) + lu(k,2285) = lu(k,2285) - lu(k,1786) * lu(k,2276) + lu(k,2286) = lu(k,2286) - lu(k,1787) * lu(k,2276) + lu(k,1830) = 1._r8 / lu(k,1830) + lu(k,1831) = lu(k,1831) * lu(k,1830) + lu(k,1832) = lu(k,1832) * lu(k,1830) + lu(k,1833) = lu(k,1833) * lu(k,1830) + lu(k,1834) = lu(k,1834) * lu(k,1830) + lu(k,1835) = lu(k,1835) * lu(k,1830) + lu(k,1836) = lu(k,1836) * lu(k,1830) + lu(k,1837) = lu(k,1837) * lu(k,1830) + lu(k,1838) = lu(k,1838) * lu(k,1830) + lu(k,1839) = lu(k,1839) * lu(k,1830) + lu(k,1923) = lu(k,1923) - lu(k,1831) * lu(k,1922) + lu(k,1924) = lu(k,1924) - lu(k,1832) * lu(k,1922) + lu(k,1925) = lu(k,1925) - lu(k,1833) * lu(k,1922) + lu(k,1926) = lu(k,1926) - lu(k,1834) * lu(k,1922) + lu(k,1927) = lu(k,1927) - lu(k,1835) * lu(k,1922) + lu(k,1928) = lu(k,1928) - lu(k,1836) * lu(k,1922) + lu(k,1929) = lu(k,1929) - lu(k,1837) * lu(k,1922) + lu(k,1930) = lu(k,1930) - lu(k,1838) * lu(k,1922) + lu(k,1931) = lu(k,1931) - lu(k,1839) * lu(k,1922) + lu(k,1967) = lu(k,1967) - lu(k,1831) * lu(k,1966) + lu(k,1968) = lu(k,1968) - lu(k,1832) * lu(k,1966) + lu(k,1969) = lu(k,1969) - lu(k,1833) * lu(k,1966) + lu(k,1970) = lu(k,1970) - lu(k,1834) * lu(k,1966) + lu(k,1971) = lu(k,1971) - lu(k,1835) * lu(k,1966) + lu(k,1972) = lu(k,1972) - lu(k,1836) * lu(k,1966) + lu(k,1973) = lu(k,1973) - lu(k,1837) * lu(k,1966) + lu(k,1974) = lu(k,1974) - lu(k,1838) * lu(k,1966) + lu(k,1975) = lu(k,1975) - lu(k,1839) * lu(k,1966) + lu(k,2006) = lu(k,2006) - lu(k,1831) * lu(k,2005) + lu(k,2007) = lu(k,2007) - lu(k,1832) * lu(k,2005) + lu(k,2008) = lu(k,2008) - lu(k,1833) * lu(k,2005) + lu(k,2009) = lu(k,2009) - lu(k,1834) * lu(k,2005) + lu(k,2010) = lu(k,2010) - lu(k,1835) * lu(k,2005) + lu(k,2011) = lu(k,2011) - lu(k,1836) * lu(k,2005) + lu(k,2012) = lu(k,2012) - lu(k,1837) * lu(k,2005) + lu(k,2013) = lu(k,2013) - lu(k,1838) * lu(k,2005) + lu(k,2014) = lu(k,2014) - lu(k,1839) * lu(k,2005) + lu(k,2113) = lu(k,2113) - lu(k,1831) * lu(k,2112) + lu(k,2114) = lu(k,2114) - lu(k,1832) * lu(k,2112) + lu(k,2115) = lu(k,2115) - lu(k,1833) * lu(k,2112) + lu(k,2116) = lu(k,2116) - lu(k,1834) * lu(k,2112) + lu(k,2117) = lu(k,2117) - lu(k,1835) * lu(k,2112) + lu(k,2118) = lu(k,2118) - lu(k,1836) * lu(k,2112) + lu(k,2119) = lu(k,2119) - lu(k,1837) * lu(k,2112) + lu(k,2120) = lu(k,2120) - lu(k,1838) * lu(k,2112) + lu(k,2121) = lu(k,2121) - lu(k,1839) * lu(k,2112) + lu(k,2136) = lu(k,2136) - lu(k,1831) * lu(k,2135) + lu(k,2137) = lu(k,2137) - lu(k,1832) * lu(k,2135) + lu(k,2138) = lu(k,2138) - lu(k,1833) * lu(k,2135) + lu(k,2139) = lu(k,2139) - lu(k,1834) * lu(k,2135) + lu(k,2140) = lu(k,2140) - lu(k,1835) * lu(k,2135) + lu(k,2141) = lu(k,2141) - lu(k,1836) * lu(k,2135) + lu(k,2142) = lu(k,2142) - lu(k,1837) * lu(k,2135) + lu(k,2143) = lu(k,2143) - lu(k,1838) * lu(k,2135) + lu(k,2144) = lu(k,2144) - lu(k,1839) * lu(k,2135) + lu(k,2160) = lu(k,2160) - lu(k,1831) * lu(k,2159) + lu(k,2161) = lu(k,2161) - lu(k,1832) * lu(k,2159) + lu(k,2162) = lu(k,2162) - lu(k,1833) * lu(k,2159) + lu(k,2163) = lu(k,2163) - lu(k,1834) * lu(k,2159) + lu(k,2164) = lu(k,2164) - lu(k,1835) * lu(k,2159) + lu(k,2165) = lu(k,2165) - lu(k,1836) * lu(k,2159) + lu(k,2166) = lu(k,2166) - lu(k,1837) * lu(k,2159) + lu(k,2167) = lu(k,2167) - lu(k,1838) * lu(k,2159) + lu(k,2168) = lu(k,2168) - lu(k,1839) * lu(k,2159) + lu(k,2191) = lu(k,2191) - lu(k,1831) * lu(k,2190) + lu(k,2192) = lu(k,2192) - lu(k,1832) * lu(k,2190) + lu(k,2193) = lu(k,2193) - lu(k,1833) * lu(k,2190) + lu(k,2194) = lu(k,2194) - lu(k,1834) * lu(k,2190) + lu(k,2195) = lu(k,2195) - lu(k,1835) * lu(k,2190) + lu(k,2196) = lu(k,2196) - lu(k,1836) * lu(k,2190) + lu(k,2197) = lu(k,2197) - lu(k,1837) * lu(k,2190) + lu(k,2198) = lu(k,2198) - lu(k,1838) * lu(k,2190) + lu(k,2199) = lu(k,2199) - lu(k,1839) * lu(k,2190) + lu(k,2252) = lu(k,2252) - lu(k,1831) * lu(k,2251) + lu(k,2253) = lu(k,2253) - lu(k,1832) * lu(k,2251) + lu(k,2254) = lu(k,2254) - lu(k,1833) * lu(k,2251) + lu(k,2255) = lu(k,2255) - lu(k,1834) * lu(k,2251) + lu(k,2256) = lu(k,2256) - lu(k,1835) * lu(k,2251) + lu(k,2257) = lu(k,2257) - lu(k,1836) * lu(k,2251) + lu(k,2258) = lu(k,2258) - lu(k,1837) * lu(k,2251) + lu(k,2259) = lu(k,2259) - lu(k,1838) * lu(k,2251) + lu(k,2260) = lu(k,2260) - lu(k,1839) * lu(k,2251) + lu(k,2278) = lu(k,2278) - lu(k,1831) * lu(k,2277) + lu(k,2279) = lu(k,2279) - lu(k,1832) * lu(k,2277) + lu(k,2280) = lu(k,2280) - lu(k,1833) * lu(k,2277) + lu(k,2281) = lu(k,2281) - lu(k,1834) * lu(k,2277) + lu(k,2282) = lu(k,2282) - lu(k,1835) * lu(k,2277) + lu(k,2283) = lu(k,2283) - lu(k,1836) * lu(k,2277) + lu(k,2284) = lu(k,2284) - lu(k,1837) * lu(k,2277) + lu(k,2285) = lu(k,2285) - lu(k,1838) * lu(k,2277) + lu(k,2286) = lu(k,2286) - lu(k,1839) * lu(k,2277) + lu(k,1923) = 1._r8 / lu(k,1923) + lu(k,1924) = lu(k,1924) * lu(k,1923) + lu(k,1925) = lu(k,1925) * lu(k,1923) + lu(k,1926) = lu(k,1926) * lu(k,1923) + lu(k,1927) = lu(k,1927) * lu(k,1923) + lu(k,1928) = lu(k,1928) * lu(k,1923) + lu(k,1929) = lu(k,1929) * lu(k,1923) + lu(k,1930) = lu(k,1930) * lu(k,1923) + lu(k,1931) = lu(k,1931) * lu(k,1923) + lu(k,1968) = lu(k,1968) - lu(k,1924) * lu(k,1967) + lu(k,1969) = lu(k,1969) - lu(k,1925) * lu(k,1967) + lu(k,1970) = lu(k,1970) - lu(k,1926) * lu(k,1967) + lu(k,1971) = lu(k,1971) - lu(k,1927) * lu(k,1967) + lu(k,1972) = lu(k,1972) - lu(k,1928) * lu(k,1967) + lu(k,1973) = lu(k,1973) - lu(k,1929) * lu(k,1967) + lu(k,1974) = lu(k,1974) - lu(k,1930) * lu(k,1967) + lu(k,1975) = lu(k,1975) - lu(k,1931) * lu(k,1967) + lu(k,2007) = lu(k,2007) - lu(k,1924) * lu(k,2006) + lu(k,2008) = lu(k,2008) - lu(k,1925) * lu(k,2006) + lu(k,2009) = lu(k,2009) - lu(k,1926) * lu(k,2006) + lu(k,2010) = lu(k,2010) - lu(k,1927) * lu(k,2006) + lu(k,2011) = lu(k,2011) - lu(k,1928) * lu(k,2006) + lu(k,2012) = lu(k,2012) - lu(k,1929) * lu(k,2006) + lu(k,2013) = lu(k,2013) - lu(k,1930) * lu(k,2006) + lu(k,2014) = lu(k,2014) - lu(k,1931) * lu(k,2006) + lu(k,2114) = lu(k,2114) - lu(k,1924) * lu(k,2113) + lu(k,2115) = lu(k,2115) - lu(k,1925) * lu(k,2113) + lu(k,2116) = lu(k,2116) - lu(k,1926) * lu(k,2113) + lu(k,2117) = lu(k,2117) - lu(k,1927) * lu(k,2113) + lu(k,2118) = lu(k,2118) - lu(k,1928) * lu(k,2113) + lu(k,2119) = lu(k,2119) - lu(k,1929) * lu(k,2113) + lu(k,2120) = lu(k,2120) - lu(k,1930) * lu(k,2113) + lu(k,2121) = lu(k,2121) - lu(k,1931) * lu(k,2113) + lu(k,2137) = lu(k,2137) - lu(k,1924) * lu(k,2136) + lu(k,2138) = lu(k,2138) - lu(k,1925) * lu(k,2136) + lu(k,2139) = lu(k,2139) - lu(k,1926) * lu(k,2136) + lu(k,2140) = lu(k,2140) - lu(k,1927) * lu(k,2136) + lu(k,2141) = lu(k,2141) - lu(k,1928) * lu(k,2136) + lu(k,2142) = lu(k,2142) - lu(k,1929) * lu(k,2136) + lu(k,2143) = lu(k,2143) - lu(k,1930) * lu(k,2136) + lu(k,2144) = lu(k,2144) - lu(k,1931) * lu(k,2136) + lu(k,2161) = lu(k,2161) - lu(k,1924) * lu(k,2160) + lu(k,2162) = lu(k,2162) - lu(k,1925) * lu(k,2160) + lu(k,2163) = lu(k,2163) - lu(k,1926) * lu(k,2160) + lu(k,2164) = lu(k,2164) - lu(k,1927) * lu(k,2160) + lu(k,2165) = lu(k,2165) - lu(k,1928) * lu(k,2160) + lu(k,2166) = lu(k,2166) - lu(k,1929) * lu(k,2160) + lu(k,2167) = lu(k,2167) - lu(k,1930) * lu(k,2160) + lu(k,2168) = lu(k,2168) - lu(k,1931) * lu(k,2160) + lu(k,2192) = lu(k,2192) - lu(k,1924) * lu(k,2191) + lu(k,2193) = lu(k,2193) - lu(k,1925) * lu(k,2191) + lu(k,2194) = lu(k,2194) - lu(k,1926) * lu(k,2191) + lu(k,2195) = lu(k,2195) - lu(k,1927) * lu(k,2191) + lu(k,2196) = lu(k,2196) - lu(k,1928) * lu(k,2191) + lu(k,2197) = lu(k,2197) - lu(k,1929) * lu(k,2191) + lu(k,2198) = lu(k,2198) - lu(k,1930) * lu(k,2191) + lu(k,2199) = lu(k,2199) - lu(k,1931) * lu(k,2191) + lu(k,2253) = lu(k,2253) - lu(k,1924) * lu(k,2252) + lu(k,2254) = lu(k,2254) - lu(k,1925) * lu(k,2252) + lu(k,2255) = lu(k,2255) - lu(k,1926) * lu(k,2252) + lu(k,2256) = lu(k,2256) - lu(k,1927) * lu(k,2252) + lu(k,2257) = lu(k,2257) - lu(k,1928) * lu(k,2252) + lu(k,2258) = lu(k,2258) - lu(k,1929) * lu(k,2252) + lu(k,2259) = lu(k,2259) - lu(k,1930) * lu(k,2252) + lu(k,2260) = lu(k,2260) - lu(k,1931) * lu(k,2252) + lu(k,2279) = lu(k,2279) - lu(k,1924) * lu(k,2278) + lu(k,2280) = lu(k,2280) - lu(k,1925) * lu(k,2278) + lu(k,2281) = lu(k,2281) - lu(k,1926) * lu(k,2278) + lu(k,2282) = lu(k,2282) - lu(k,1927) * lu(k,2278) + lu(k,2283) = lu(k,2283) - lu(k,1928) * lu(k,2278) + lu(k,2284) = lu(k,2284) - lu(k,1929) * lu(k,2278) + lu(k,2285) = lu(k,2285) - lu(k,1930) * lu(k,2278) + lu(k,2286) = lu(k,2286) - lu(k,1931) * lu(k,2278) + lu(k,1968) = 1._r8 / lu(k,1968) + lu(k,1969) = lu(k,1969) * lu(k,1968) + lu(k,1970) = lu(k,1970) * lu(k,1968) + lu(k,1971) = lu(k,1971) * lu(k,1968) + lu(k,1972) = lu(k,1972) * lu(k,1968) + lu(k,1973) = lu(k,1973) * lu(k,1968) + lu(k,1974) = lu(k,1974) * lu(k,1968) + lu(k,1975) = lu(k,1975) * lu(k,1968) + lu(k,2008) = lu(k,2008) - lu(k,1969) * lu(k,2007) + lu(k,2009) = lu(k,2009) - lu(k,1970) * lu(k,2007) + lu(k,2010) = lu(k,2010) - lu(k,1971) * lu(k,2007) + lu(k,2011) = lu(k,2011) - lu(k,1972) * lu(k,2007) + lu(k,2012) = lu(k,2012) - lu(k,1973) * lu(k,2007) + lu(k,2013) = lu(k,2013) - lu(k,1974) * lu(k,2007) + lu(k,2014) = lu(k,2014) - lu(k,1975) * lu(k,2007) + lu(k,2115) = lu(k,2115) - lu(k,1969) * lu(k,2114) + lu(k,2116) = lu(k,2116) - lu(k,1970) * lu(k,2114) + lu(k,2117) = lu(k,2117) - lu(k,1971) * lu(k,2114) + lu(k,2118) = lu(k,2118) - lu(k,1972) * lu(k,2114) + lu(k,2119) = lu(k,2119) - lu(k,1973) * lu(k,2114) + lu(k,2120) = lu(k,2120) - lu(k,1974) * lu(k,2114) + lu(k,2121) = lu(k,2121) - lu(k,1975) * lu(k,2114) + lu(k,2138) = lu(k,2138) - lu(k,1969) * lu(k,2137) + lu(k,2139) = lu(k,2139) - lu(k,1970) * lu(k,2137) + lu(k,2140) = lu(k,2140) - lu(k,1971) * lu(k,2137) + lu(k,2141) = lu(k,2141) - lu(k,1972) * lu(k,2137) + lu(k,2142) = lu(k,2142) - lu(k,1973) * lu(k,2137) + lu(k,2143) = lu(k,2143) - lu(k,1974) * lu(k,2137) + lu(k,2144) = lu(k,2144) - lu(k,1975) * lu(k,2137) + lu(k,2162) = lu(k,2162) - lu(k,1969) * lu(k,2161) + lu(k,2163) = lu(k,2163) - lu(k,1970) * lu(k,2161) + lu(k,2164) = lu(k,2164) - lu(k,1971) * lu(k,2161) + lu(k,2165) = lu(k,2165) - lu(k,1972) * lu(k,2161) + lu(k,2166) = lu(k,2166) - lu(k,1973) * lu(k,2161) + lu(k,2167) = lu(k,2167) - lu(k,1974) * lu(k,2161) + lu(k,2168) = lu(k,2168) - lu(k,1975) * lu(k,2161) + lu(k,2193) = lu(k,2193) - lu(k,1969) * lu(k,2192) + lu(k,2194) = lu(k,2194) - lu(k,1970) * lu(k,2192) + lu(k,2195) = lu(k,2195) - lu(k,1971) * lu(k,2192) + lu(k,2196) = lu(k,2196) - lu(k,1972) * lu(k,2192) + lu(k,2197) = lu(k,2197) - lu(k,1973) * lu(k,2192) + lu(k,2198) = lu(k,2198) - lu(k,1974) * lu(k,2192) + lu(k,2199) = lu(k,2199) - lu(k,1975) * lu(k,2192) + lu(k,2254) = lu(k,2254) - lu(k,1969) * lu(k,2253) + lu(k,2255) = lu(k,2255) - lu(k,1970) * lu(k,2253) + lu(k,2256) = lu(k,2256) - lu(k,1971) * lu(k,2253) + lu(k,2257) = lu(k,2257) - lu(k,1972) * lu(k,2253) + lu(k,2258) = lu(k,2258) - lu(k,1973) * lu(k,2253) + lu(k,2259) = lu(k,2259) - lu(k,1974) * lu(k,2253) + lu(k,2260) = lu(k,2260) - lu(k,1975) * lu(k,2253) + lu(k,2280) = lu(k,2280) - lu(k,1969) * lu(k,2279) + lu(k,2281) = lu(k,2281) - lu(k,1970) * lu(k,2279) + lu(k,2282) = lu(k,2282) - lu(k,1971) * lu(k,2279) + lu(k,2283) = lu(k,2283) - lu(k,1972) * lu(k,2279) + lu(k,2284) = lu(k,2284) - lu(k,1973) * lu(k,2279) + lu(k,2285) = lu(k,2285) - lu(k,1974) * lu(k,2279) + lu(k,2286) = lu(k,2286) - lu(k,1975) * lu(k,2279) + lu(k,2008) = 1._r8 / lu(k,2008) + lu(k,2009) = lu(k,2009) * lu(k,2008) + lu(k,2010) = lu(k,2010) * lu(k,2008) + lu(k,2011) = lu(k,2011) * lu(k,2008) + lu(k,2012) = lu(k,2012) * lu(k,2008) + lu(k,2013) = lu(k,2013) * lu(k,2008) + lu(k,2014) = lu(k,2014) * lu(k,2008) + lu(k,2116) = lu(k,2116) - lu(k,2009) * lu(k,2115) + lu(k,2117) = lu(k,2117) - lu(k,2010) * lu(k,2115) + lu(k,2118) = lu(k,2118) - lu(k,2011) * lu(k,2115) + lu(k,2119) = lu(k,2119) - lu(k,2012) * lu(k,2115) + lu(k,2120) = lu(k,2120) - lu(k,2013) * lu(k,2115) + lu(k,2121) = lu(k,2121) - lu(k,2014) * lu(k,2115) + lu(k,2139) = lu(k,2139) - lu(k,2009) * lu(k,2138) + lu(k,2140) = lu(k,2140) - lu(k,2010) * lu(k,2138) + lu(k,2141) = lu(k,2141) - lu(k,2011) * lu(k,2138) + lu(k,2142) = lu(k,2142) - lu(k,2012) * lu(k,2138) + lu(k,2143) = lu(k,2143) - lu(k,2013) * lu(k,2138) + lu(k,2144) = lu(k,2144) - lu(k,2014) * lu(k,2138) + lu(k,2163) = lu(k,2163) - lu(k,2009) * lu(k,2162) + lu(k,2164) = lu(k,2164) - lu(k,2010) * lu(k,2162) + lu(k,2165) = lu(k,2165) - lu(k,2011) * lu(k,2162) + lu(k,2166) = lu(k,2166) - lu(k,2012) * lu(k,2162) + lu(k,2167) = lu(k,2167) - lu(k,2013) * lu(k,2162) + lu(k,2168) = lu(k,2168) - lu(k,2014) * lu(k,2162) + lu(k,2194) = lu(k,2194) - lu(k,2009) * lu(k,2193) + lu(k,2195) = lu(k,2195) - lu(k,2010) * lu(k,2193) + lu(k,2196) = lu(k,2196) - lu(k,2011) * lu(k,2193) + lu(k,2197) = lu(k,2197) - lu(k,2012) * lu(k,2193) + lu(k,2198) = lu(k,2198) - lu(k,2013) * lu(k,2193) + lu(k,2199) = lu(k,2199) - lu(k,2014) * lu(k,2193) + lu(k,2255) = lu(k,2255) - lu(k,2009) * lu(k,2254) + lu(k,2256) = lu(k,2256) - lu(k,2010) * lu(k,2254) + lu(k,2257) = lu(k,2257) - lu(k,2011) * lu(k,2254) + lu(k,2258) = lu(k,2258) - lu(k,2012) * lu(k,2254) + lu(k,2259) = lu(k,2259) - lu(k,2013) * lu(k,2254) + lu(k,2260) = lu(k,2260) - lu(k,2014) * lu(k,2254) + lu(k,2281) = lu(k,2281) - lu(k,2009) * lu(k,2280) + lu(k,2282) = lu(k,2282) - lu(k,2010) * lu(k,2280) + lu(k,2283) = lu(k,2283) - lu(k,2011) * lu(k,2280) + lu(k,2284) = lu(k,2284) - lu(k,2012) * lu(k,2280) + lu(k,2285) = lu(k,2285) - lu(k,2013) * lu(k,2280) + lu(k,2286) = lu(k,2286) - lu(k,2014) * lu(k,2280) + lu(k,2116) = 1._r8 / lu(k,2116) + lu(k,2117) = lu(k,2117) * lu(k,2116) + lu(k,2118) = lu(k,2118) * lu(k,2116) + lu(k,2119) = lu(k,2119) * lu(k,2116) + lu(k,2120) = lu(k,2120) * lu(k,2116) + lu(k,2121) = lu(k,2121) * lu(k,2116) + lu(k,2140) = lu(k,2140) - lu(k,2117) * lu(k,2139) + lu(k,2141) = lu(k,2141) - lu(k,2118) * lu(k,2139) + lu(k,2142) = lu(k,2142) - lu(k,2119) * lu(k,2139) + lu(k,2143) = lu(k,2143) - lu(k,2120) * lu(k,2139) + lu(k,2144) = lu(k,2144) - lu(k,2121) * lu(k,2139) + lu(k,2164) = lu(k,2164) - lu(k,2117) * lu(k,2163) + lu(k,2165) = lu(k,2165) - lu(k,2118) * lu(k,2163) + lu(k,2166) = lu(k,2166) - lu(k,2119) * lu(k,2163) + lu(k,2167) = lu(k,2167) - lu(k,2120) * lu(k,2163) + lu(k,2168) = lu(k,2168) - lu(k,2121) * lu(k,2163) + lu(k,2195) = lu(k,2195) - lu(k,2117) * lu(k,2194) + lu(k,2196) = lu(k,2196) - lu(k,2118) * lu(k,2194) + lu(k,2197) = lu(k,2197) - lu(k,2119) * lu(k,2194) + lu(k,2198) = lu(k,2198) - lu(k,2120) * lu(k,2194) + lu(k,2199) = lu(k,2199) - lu(k,2121) * lu(k,2194) + lu(k,2256) = lu(k,2256) - lu(k,2117) * lu(k,2255) + lu(k,2257) = lu(k,2257) - lu(k,2118) * lu(k,2255) + lu(k,2258) = lu(k,2258) - lu(k,2119) * lu(k,2255) + lu(k,2259) = lu(k,2259) - lu(k,2120) * lu(k,2255) + lu(k,2260) = lu(k,2260) - lu(k,2121) * lu(k,2255) + lu(k,2282) = lu(k,2282) - lu(k,2117) * lu(k,2281) + lu(k,2283) = lu(k,2283) - lu(k,2118) * lu(k,2281) + lu(k,2284) = lu(k,2284) - lu(k,2119) * lu(k,2281) + lu(k,2285) = lu(k,2285) - lu(k,2120) * lu(k,2281) + lu(k,2286) = lu(k,2286) - lu(k,2121) * lu(k,2281) + end do + end subroutine lu_fac30 + subroutine lu_fac31( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,2140) = 1._r8 / lu(k,2140) + lu(k,2141) = lu(k,2141) * lu(k,2140) + lu(k,2142) = lu(k,2142) * lu(k,2140) + lu(k,2143) = lu(k,2143) * lu(k,2140) + lu(k,2144) = lu(k,2144) * lu(k,2140) + lu(k,2165) = lu(k,2165) - lu(k,2141) * lu(k,2164) + lu(k,2166) = lu(k,2166) - lu(k,2142) * lu(k,2164) + lu(k,2167) = lu(k,2167) - lu(k,2143) * lu(k,2164) + lu(k,2168) = lu(k,2168) - lu(k,2144) * lu(k,2164) + lu(k,2196) = lu(k,2196) - lu(k,2141) * lu(k,2195) + lu(k,2197) = lu(k,2197) - lu(k,2142) * lu(k,2195) + lu(k,2198) = lu(k,2198) - lu(k,2143) * lu(k,2195) + lu(k,2199) = lu(k,2199) - lu(k,2144) * lu(k,2195) + lu(k,2257) = lu(k,2257) - lu(k,2141) * lu(k,2256) + lu(k,2258) = lu(k,2258) - lu(k,2142) * lu(k,2256) + lu(k,2259) = lu(k,2259) - lu(k,2143) * lu(k,2256) + lu(k,2260) = lu(k,2260) - lu(k,2144) * lu(k,2256) + lu(k,2283) = lu(k,2283) - lu(k,2141) * lu(k,2282) + lu(k,2284) = lu(k,2284) - lu(k,2142) * lu(k,2282) + lu(k,2285) = lu(k,2285) - lu(k,2143) * lu(k,2282) + lu(k,2286) = lu(k,2286) - lu(k,2144) * lu(k,2282) + lu(k,2165) = 1._r8 / lu(k,2165) + lu(k,2166) = lu(k,2166) * lu(k,2165) + lu(k,2167) = lu(k,2167) * lu(k,2165) + lu(k,2168) = lu(k,2168) * lu(k,2165) + lu(k,2197) = lu(k,2197) - lu(k,2166) * lu(k,2196) + lu(k,2198) = lu(k,2198) - lu(k,2167) * lu(k,2196) + lu(k,2199) = lu(k,2199) - lu(k,2168) * lu(k,2196) + lu(k,2258) = lu(k,2258) - lu(k,2166) * lu(k,2257) + lu(k,2259) = lu(k,2259) - lu(k,2167) * lu(k,2257) + lu(k,2260) = lu(k,2260) - lu(k,2168) * lu(k,2257) + lu(k,2284) = lu(k,2284) - lu(k,2166) * lu(k,2283) + lu(k,2285) = lu(k,2285) - lu(k,2167) * lu(k,2283) + lu(k,2286) = lu(k,2286) - lu(k,2168) * lu(k,2283) + lu(k,2197) = 1._r8 / lu(k,2197) + lu(k,2198) = lu(k,2198) * lu(k,2197) + lu(k,2199) = lu(k,2199) * lu(k,2197) + lu(k,2259) = lu(k,2259) - lu(k,2198) * lu(k,2258) + lu(k,2260) = lu(k,2260) - lu(k,2199) * lu(k,2258) + lu(k,2285) = lu(k,2285) - lu(k,2198) * lu(k,2284) + lu(k,2286) = lu(k,2286) - lu(k,2199) * lu(k,2284) + lu(k,2259) = 1._r8 / lu(k,2259) + lu(k,2260) = lu(k,2260) * lu(k,2259) + lu(k,2286) = lu(k,2286) - lu(k,2260) * lu(k,2285) + lu(k,2286) = 1._r8 / lu(k,2286) + end do + end subroutine lu_fac31 + subroutine lu_fac( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) + call lu_fac01( avec_len, lu ) + call lu_fac02( avec_len, lu ) + call lu_fac03( avec_len, lu ) + call lu_fac04( avec_len, lu ) + call lu_fac05( avec_len, lu ) + call lu_fac06( avec_len, lu ) + call lu_fac07( avec_len, lu ) + call lu_fac08( avec_len, lu ) + call lu_fac09( avec_len, lu ) + call lu_fac10( avec_len, lu ) + call lu_fac11( avec_len, lu ) + call lu_fac12( avec_len, lu ) + call lu_fac13( avec_len, lu ) + call lu_fac14( avec_len, lu ) + call lu_fac15( avec_len, lu ) + call lu_fac16( avec_len, lu ) + call lu_fac17( avec_len, lu ) + call lu_fac18( avec_len, lu ) + call lu_fac19( avec_len, lu ) + call lu_fac20( avec_len, lu ) + call lu_fac21( avec_len, lu ) + call lu_fac22( avec_len, lu ) + call lu_fac23( avec_len, lu ) + call lu_fac24( avec_len, lu ) + call lu_fac25( avec_len, lu ) + call lu_fac26( avec_len, lu ) + call lu_fac27( avec_len, lu ) + call lu_fac28( avec_len, lu ) + call lu_fac29( avec_len, lu ) + call lu_fac30( avec_len, lu ) + call lu_fac31( avec_len, lu ) + end subroutine lu_fac + end module mo_lu_factor diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_solve.F90 new file mode 100644 index 0000000000..27a9706818 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_lu_solve.F90 @@ -0,0 +1,2558 @@ + module mo_lu_solve + use chem_mods, only: veclen + private + public :: lu_slv + contains + subroutine lu_slv01( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,217) = b(k,217) - lu(k,95) * b(k,53) + b(k,222) = b(k,222) - lu(k,96) * b(k,53) + b(k,216) = b(k,216) - lu(k,98) * b(k,54) + b(k,228) = b(k,228) - lu(k,99) * b(k,54) + b(k,215) = b(k,215) - lu(k,101) * b(k,55) + b(k,222) = b(k,222) - lu(k,102) * b(k,55) + b(k,216) = b(k,216) - lu(k,104) * b(k,56) + b(k,223) = b(k,223) - lu(k,105) * b(k,56) + b(k,88) = b(k,88) - lu(k,107) * b(k,57) + b(k,210) = b(k,210) - lu(k,108) * b(k,57) + b(k,215) = b(k,215) - lu(k,109) * b(k,57) + b(k,167) = b(k,167) - lu(k,111) * b(k,58) + b(k,216) = b(k,216) - lu(k,112) * b(k,58) + b(k,228) = b(k,228) - lu(k,113) * b(k,58) + b(k,90) = b(k,90) - lu(k,115) * b(k,59) + b(k,215) = b(k,215) - lu(k,116) * b(k,59) + b(k,222) = b(k,222) - lu(k,117) * b(k,59) + b(k,88) = b(k,88) - lu(k,119) * b(k,60) + b(k,215) = b(k,215) - lu(k,120) * b(k,60) + b(k,222) = b(k,222) - lu(k,121) * b(k,60) + b(k,88) = b(k,88) - lu(k,123) * b(k,61) + b(k,215) = b(k,215) - lu(k,124) * b(k,61) + b(k,222) = b(k,222) - lu(k,125) * b(k,61) + b(k,216) = b(k,216) - lu(k,127) * b(k,62) + b(k,222) = b(k,222) - lu(k,128) * b(k,62) + b(k,228) = b(k,228) - lu(k,129) * b(k,62) + b(k,95) = b(k,95) - lu(k,131) * b(k,63) + b(k,216) = b(k,216) - lu(k,132) * b(k,63) + b(k,92) = b(k,92) - lu(k,134) * b(k,64) + b(k,228) = b(k,228) - lu(k,135) * b(k,64) + b(k,198) = b(k,198) - lu(k,137) * b(k,65) + b(k,216) = b(k,216) - lu(k,138) * b(k,65) + b(k,137) = b(k,137) - lu(k,140) * b(k,66) + b(k,221) = b(k,221) - lu(k,141) * b(k,66) + b(k,88) = b(k,88) - lu(k,143) * b(k,67) + b(k,210) = b(k,210) - lu(k,144) * b(k,67) + b(k,215) = b(k,215) - lu(k,145) * b(k,67) + b(k,222) = b(k,222) - lu(k,146) * b(k,67) + b(k,88) = b(k,88) - lu(k,148) * b(k,68) + b(k,176) = b(k,176) - lu(k,149) * b(k,68) + b(k,210) = b(k,210) - lu(k,150) * b(k,68) + b(k,215) = b(k,215) - lu(k,151) * b(k,68) + b(k,88) = b(k,88) - lu(k,153) * b(k,69) + b(k,90) = b(k,90) - lu(k,154) * b(k,69) + b(k,215) = b(k,215) - lu(k,155) * b(k,69) + b(k,222) = b(k,222) - lu(k,156) * b(k,69) + b(k,88) = b(k,88) - lu(k,158) * b(k,70) + b(k,176) = b(k,176) - lu(k,159) * b(k,70) + b(k,215) = b(k,215) - lu(k,160) * b(k,70) + b(k,222) = b(k,222) - lu(k,161) * b(k,70) + b(k,72) = b(k,72) - lu(k,164) * b(k,71) + b(k,73) = b(k,73) - lu(k,165) * b(k,71) + b(k,132) = b(k,132) - lu(k,166) * b(k,71) + b(k,216) = b(k,216) - lu(k,167) * b(k,71) + b(k,223) = b(k,223) - lu(k,168) * b(k,71) + b(k,128) = b(k,128) - lu(k,170) * b(k,72) + b(k,194) = b(k,194) - lu(k,171) * b(k,72) + b(k,223) = b(k,223) - lu(k,172) * b(k,72) + b(k,126) = b(k,126) - lu(k,174) * b(k,73) + b(k,129) = b(k,129) - lu(k,175) * b(k,73) + b(k,216) = b(k,216) - lu(k,176) * b(k,73) + b(k,223) = b(k,223) - lu(k,177) * b(k,73) + b(k,222) = b(k,222) - lu(k,179) * b(k,74) + b(k,215) = b(k,215) - lu(k,181) * b(k,75) + b(k,216) = b(k,216) - lu(k,182) * b(k,75) + b(k,223) = b(k,223) - lu(k,183) * b(k,75) + b(k,215) = b(k,215) - lu(k,185) * b(k,76) + b(k,220) = b(k,220) - lu(k,186) * b(k,76) + b(k,78) = b(k,78) - lu(k,189) * b(k,77) + b(k,79) = b(k,79) - lu(k,190) * b(k,77) + b(k,124) = b(k,124) - lu(k,191) * b(k,77) + b(k,161) = b(k,161) - lu(k,192) * b(k,77) + b(k,216) = b(k,216) - lu(k,193) * b(k,77) + b(k,223) = b(k,223) - lu(k,194) * b(k,77) + b(k,126) = b(k,126) - lu(k,196) * b(k,78) + b(k,129) = b(k,129) - lu(k,197) * b(k,78) + b(k,216) = b(k,216) - lu(k,198) * b(k,78) + b(k,223) = b(k,223) - lu(k,199) * b(k,78) + b(k,194) = b(k,194) - lu(k,201) * b(k,79) + b(k,208) = b(k,208) - lu(k,202) * b(k,79) + b(k,223) = b(k,223) - lu(k,203) * b(k,79) + b(k,198) = b(k,198) - lu(k,205) * b(k,80) + b(k,216) = b(k,216) - lu(k,206) * b(k,80) + b(k,82) = b(k,82) - lu(k,210) * b(k,81) + b(k,124) = b(k,124) - lu(k,211) * b(k,81) + b(k,163) = b(k,163) - lu(k,212) * b(k,81) + b(k,194) = b(k,194) - lu(k,213) * b(k,81) + b(k,208) = b(k,208) - lu(k,214) * b(k,81) + b(k,216) = b(k,216) - lu(k,215) * b(k,81) + b(k,223) = b(k,223) - lu(k,216) * b(k,81) + b(k,129) = b(k,129) - lu(k,218) * b(k,82) + b(k,134) = b(k,134) - lu(k,219) * b(k,82) + b(k,216) = b(k,216) - lu(k,220) * b(k,82) + b(k,223) = b(k,223) - lu(k,221) * b(k,82) + b(k,146) = b(k,146) - lu(k,223) * b(k,83) + b(k,198) = b(k,198) - lu(k,224) * b(k,83) + b(k,216) = b(k,216) - lu(k,225) * b(k,83) + b(k,223) = b(k,223) - lu(k,226) * b(k,83) + b(k,178) = b(k,178) - lu(k,228) * b(k,84) + b(k,216) = b(k,216) - lu(k,229) * b(k,84) + b(k,210) = b(k,210) - lu(k,231) * b(k,85) + b(k,222) = b(k,222) - lu(k,232) * b(k,85) + b(k,213) = b(k,213) - lu(k,234) * b(k,86) + b(k,221) = b(k,221) - lu(k,235) * b(k,86) + b(k,137) = b(k,137) - lu(k,237) * b(k,87) + b(k,216) = b(k,216) - lu(k,238) * b(k,87) + b(k,176) = b(k,176) - lu(k,240) * b(k,88) + b(k,215) = b(k,215) - lu(k,241) * b(k,88) + b(k,90) = b(k,90) - lu(k,243) * b(k,89) + b(k,215) = b(k,215) - lu(k,244) * b(k,89) + b(k,216) = b(k,216) - lu(k,245) * b(k,89) + b(k,222) = b(k,222) - lu(k,246) * b(k,89) + b(k,176) = b(k,176) - lu(k,248) * b(k,90) + b(k,215) = b(k,215) - lu(k,249) * b(k,90) + b(k,222) = b(k,222) - lu(k,250) * b(k,90) + b(k,176) = b(k,176) - lu(k,253) * b(k,91) + b(k,215) = b(k,215) - lu(k,254) * b(k,91) + b(k,216) = b(k,216) - lu(k,255) * b(k,91) + b(k,222) = b(k,222) - lu(k,256) * b(k,91) + b(k,174) = b(k,174) - lu(k,259) * b(k,92) + b(k,226) = b(k,226) - lu(k,260) * b(k,92) + b(k,228) = b(k,228) - lu(k,261) * b(k,92) + b(k,191) = b(k,191) - lu(k,263) * b(k,93) + b(k,216) = b(k,216) - lu(k,264) * b(k,93) + b(k,223) = b(k,223) - lu(k,265) * b(k,93) + b(k,129) = b(k,129) - lu(k,267) * b(k,94) + b(k,151) = b(k,151) - lu(k,268) * b(k,94) + b(k,216) = b(k,216) - lu(k,269) * b(k,94) + b(k,192) = b(k,192) - lu(k,271) * b(k,95) + b(k,214) = b(k,214) - lu(k,272) * b(k,95) + b(k,223) = b(k,223) - lu(k,273) * b(k,95) + b(k,213) = b(k,213) - lu(k,275) * b(k,96) + b(k,218) = b(k,218) - lu(k,276) * b(k,96) + b(k,220) = b(k,220) - lu(k,277) * b(k,96) + b(k,221) = b(k,221) - lu(k,278) * b(k,96) + b(k,226) = b(k,226) - lu(k,279) * b(k,96) + b(k,164) = b(k,164) - lu(k,281) * b(k,97) + b(k,223) = b(k,223) - lu(k,282) * b(k,97) + b(k,174) = b(k,174) - lu(k,284) * b(k,98) + b(k,213) = b(k,213) - lu(k,285) * b(k,98) + b(k,216) = b(k,216) - lu(k,286) * b(k,98) + b(k,218) = b(k,218) - lu(k,287) * b(k,98) + b(k,223) = b(k,223) - lu(k,288) * b(k,98) + b(k,176) = b(k,176) - lu(k,290) * b(k,99) + b(k,212) = b(k,212) - lu(k,291) * b(k,99) + b(k,182) = b(k,182) - lu(k,293) * b(k,100) + b(k,185) = b(k,185) - lu(k,294) * b(k,100) + b(k,194) = b(k,194) - lu(k,295) * b(k,100) + b(k,216) = b(k,216) - lu(k,296) * b(k,100) + b(k,223) = b(k,223) - lu(k,297) * b(k,100) + b(k,176) = b(k,176) - lu(k,300) * b(k,101) + b(k,215) = b(k,215) - lu(k,301) * b(k,101) + b(k,216) = b(k,216) - lu(k,302) * b(k,101) + b(k,222) = b(k,222) - lu(k,303) * b(k,101) + b(k,228) = b(k,228) - lu(k,304) * b(k,101) + b(k,172) = b(k,172) - lu(k,306) * b(k,102) + b(k,216) = b(k,216) - lu(k,307) * b(k,102) + b(k,222) = b(k,222) - lu(k,308) * b(k,102) + b(k,224) = b(k,224) - lu(k,309) * b(k,102) + b(k,228) = b(k,228) - lu(k,310) * b(k,102) + b(k,205) = b(k,205) - lu(k,312) * b(k,103) + b(k,207) = b(k,207) - lu(k,313) * b(k,103) + b(k,216) = b(k,216) - lu(k,314) * b(k,103) + b(k,223) = b(k,223) - lu(k,315) * b(k,103) + b(k,156) = b(k,156) - lu(k,317) * b(k,104) + b(k,191) = b(k,191) - lu(k,318) * b(k,104) + b(k,208) = b(k,208) - lu(k,319) * b(k,104) + b(k,216) = b(k,216) - lu(k,320) * b(k,104) + b(k,194) = b(k,194) - lu(k,322) * b(k,105) + b(k,201) = b(k,201) - lu(k,323) * b(k,105) + b(k,208) = b(k,208) - lu(k,324) * b(k,105) + b(k,223) = b(k,223) - lu(k,325) * b(k,105) + b(k,174) = b(k,174) - lu(k,327) * b(k,106) + b(k,202) = b(k,202) - lu(k,328) * b(k,106) + b(k,217) = b(k,217) - lu(k,329) * b(k,106) + b(k,226) = b(k,226) - lu(k,330) * b(k,106) + b(k,126) = b(k,126) - lu(k,332) * b(k,107) + b(k,185) = b(k,185) - lu(k,333) * b(k,107) + b(k,216) = b(k,216) - lu(k,334) * b(k,107) + b(k,223) = b(k,223) - lu(k,335) * b(k,107) + b(k,124) = b(k,124) - lu(k,338) * b(k,108) + b(k,137) = b(k,137) - lu(k,339) * b(k,108) + b(k,216) = b(k,216) - lu(k,340) * b(k,108) + b(k,223) = b(k,223) - lu(k,341) * b(k,108) + b(k,172) = b(k,172) - lu(k,343) * b(k,109) + b(k,191) = b(k,191) - lu(k,344) * b(k,109) + b(k,216) = b(k,216) - lu(k,345) * b(k,109) + b(k,223) = b(k,223) - lu(k,346) * b(k,109) + b(k,198) = b(k,198) - lu(k,348) * b(k,110) + b(k,216) = b(k,216) - lu(k,349) * b(k,110) + b(k,143) = b(k,143) - lu(k,351) * b(k,111) + b(k,181) = b(k,181) - lu(k,352) * b(k,111) + b(k,191) = b(k,191) - lu(k,353) * b(k,111) + b(k,214) = b(k,214) - lu(k,354) * b(k,111) + b(k,216) = b(k,216) - lu(k,355) * b(k,111) + b(k,218) = b(k,218) - lu(k,356) * b(k,111) + b(k,221) = b(k,221) - lu(k,357) * b(k,111) + b(k,136) = b(k,136) - lu(k,359) * b(k,112) + b(k,174) = b(k,174) - lu(k,360) * b(k,112) + b(k,194) = b(k,194) - lu(k,361) * b(k,112) + b(k,202) = b(k,202) - lu(k,362) * b(k,112) + b(k,212) = b(k,212) - lu(k,363) * b(k,112) + b(k,216) = b(k,216) - lu(k,364) * b(k,112) + b(k,226) = b(k,226) - lu(k,365) * b(k,112) + end do + end subroutine lu_slv01 + subroutine lu_slv02( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,194) = b(k,194) - lu(k,367) * b(k,113) + b(k,216) = b(k,216) - lu(k,368) * b(k,113) + b(k,219) = b(k,219) - lu(k,369) * b(k,113) + b(k,222) = b(k,222) - lu(k,370) * b(k,113) + b(k,223) = b(k,223) - lu(k,371) * b(k,113) + b(k,224) = b(k,224) - lu(k,372) * b(k,113) + b(k,228) = b(k,228) - lu(k,373) * b(k,113) + b(k,175) = b(k,175) - lu(k,375) * b(k,114) + b(k,192) = b(k,192) - lu(k,376) * b(k,114) + b(k,213) = b(k,213) - lu(k,377) * b(k,114) + b(k,216) = b(k,216) - lu(k,378) * b(k,114) + b(k,223) = b(k,223) - lu(k,379) * b(k,114) + b(k,185) = b(k,185) - lu(k,381) * b(k,115) + b(k,194) = b(k,194) - lu(k,382) * b(k,115) + b(k,201) = b(k,201) - lu(k,383) * b(k,115) + b(k,208) = b(k,208) - lu(k,384) * b(k,115) + b(k,223) = b(k,223) - lu(k,385) * b(k,115) + b(k,210) = b(k,210) - lu(k,387) * b(k,116) + b(k,215) = b(k,215) - lu(k,388) * b(k,116) + b(k,216) = b(k,216) - lu(k,389) * b(k,116) + b(k,222) = b(k,222) - lu(k,390) * b(k,116) + b(k,224) = b(k,224) - lu(k,391) * b(k,116) + b(k,184) = b(k,184) - lu(k,393) * b(k,117) + b(k,188) = b(k,188) - lu(k,394) * b(k,117) + b(k,213) = b(k,213) - lu(k,395) * b(k,117) + b(k,216) = b(k,216) - lu(k,396) * b(k,117) + b(k,221) = b(k,221) - lu(k,397) * b(k,117) + b(k,195) = b(k,195) - lu(k,399) * b(k,118) + b(k,208) = b(k,208) - lu(k,400) * b(k,118) + b(k,214) = b(k,214) - lu(k,401) * b(k,118) + b(k,216) = b(k,216) - lu(k,402) * b(k,118) + b(k,228) = b(k,228) - lu(k,403) * b(k,118) + b(k,162) = b(k,162) - lu(k,405) * b(k,119) + b(k,175) = b(k,175) - lu(k,406) * b(k,119) + b(k,216) = b(k,216) - lu(k,407) * b(k,119) + b(k,221) = b(k,221) - lu(k,408) * b(k,119) + b(k,223) = b(k,223) - lu(k,409) * b(k,119) + b(k,167) = b(k,167) - lu(k,411) * b(k,120) + b(k,181) = b(k,181) - lu(k,412) * b(k,120) + b(k,216) = b(k,216) - lu(k,413) * b(k,120) + b(k,223) = b(k,223) - lu(k,414) * b(k,120) + b(k,228) = b(k,228) - lu(k,415) * b(k,120) + b(k,128) = b(k,128) - lu(k,417) * b(k,121) + b(k,132) = b(k,132) - lu(k,418) * b(k,121) + b(k,185) = b(k,185) - lu(k,419) * b(k,121) + b(k,216) = b(k,216) - lu(k,420) * b(k,121) + b(k,223) = b(k,223) - lu(k,421) * b(k,121) + b(k,216) = b(k,216) - lu(k,423) * b(k,122) + b(k,218) = b(k,218) - lu(k,424) * b(k,122) + b(k,221) = b(k,221) - lu(k,425) * b(k,122) + b(k,223) = b(k,223) - lu(k,426) * b(k,122) + b(k,228) = b(k,228) - lu(k,427) * b(k,122) + b(k,134) = b(k,134) - lu(k,429) * b(k,123) + b(k,185) = b(k,185) - lu(k,430) * b(k,123) + b(k,201) = b(k,201) - lu(k,431) * b(k,123) + b(k,216) = b(k,216) - lu(k,432) * b(k,123) + b(k,223) = b(k,223) - lu(k,433) * b(k,123) + b(k,137) = b(k,137) - lu(k,437) * b(k,124) + b(k,216) = b(k,216) - lu(k,438) * b(k,124) + b(k,220) = b(k,220) - lu(k,439) * b(k,124) + b(k,221) = b(k,221) - lu(k,440) * b(k,124) + b(k,223) = b(k,223) - lu(k,441) * b(k,124) + b(k,182) = b(k,182) - lu(k,443) * b(k,125) + b(k,214) = b(k,214) - lu(k,444) * b(k,125) + b(k,220) = b(k,220) - lu(k,445) * b(k,125) + b(k,221) = b(k,221) - lu(k,446) * b(k,125) + b(k,223) = b(k,223) - lu(k,447) * b(k,125) + b(k,185) = b(k,185) - lu(k,450) * b(k,126) + b(k,216) = b(k,216) - lu(k,451) * b(k,126) + b(k,220) = b(k,220) - lu(k,452) * b(k,126) + b(k,221) = b(k,221) - lu(k,453) * b(k,126) + b(k,223) = b(k,223) - lu(k,454) * b(k,126) + b(k,212) = b(k,212) - lu(k,456) * b(k,127) + b(k,214) = b(k,214) - lu(k,457) * b(k,127) + b(k,216) = b(k,216) - lu(k,458) * b(k,127) + b(k,219) = b(k,219) - lu(k,459) * b(k,127) + b(k,228) = b(k,228) - lu(k,460) * b(k,127) + b(k,160) = b(k,160) - lu(k,462) * b(k,128) + b(k,223) = b(k,223) - lu(k,463) * b(k,128) + b(k,151) = b(k,151) - lu(k,465) * b(k,129) + b(k,221) = b(k,221) - lu(k,466) * b(k,129) + b(k,227) = b(k,227) - lu(k,467) * b(k,129) + b(k,210) = b(k,210) - lu(k,469) * b(k,130) + b(k,215) = b(k,215) - lu(k,470) * b(k,130) + b(k,216) = b(k,216) - lu(k,471) * b(k,130) + b(k,222) = b(k,222) - lu(k,472) * b(k,130) + b(k,224) = b(k,224) - lu(k,473) * b(k,130) + b(k,228) = b(k,228) - lu(k,474) * b(k,130) + b(k,180) = b(k,180) - lu(k,476) * b(k,131) + b(k,181) = b(k,181) - lu(k,477) * b(k,131) + b(k,184) = b(k,184) - lu(k,478) * b(k,131) + b(k,214) = b(k,214) - lu(k,479) * b(k,131) + b(k,216) = b(k,216) - lu(k,480) * b(k,131) + b(k,223) = b(k,223) - lu(k,481) * b(k,131) + b(k,160) = b(k,160) - lu(k,485) * b(k,132) + b(k,185) = b(k,185) - lu(k,486) * b(k,132) + b(k,216) = b(k,216) - lu(k,487) * b(k,132) + b(k,220) = b(k,220) - lu(k,488) * b(k,132) + b(k,221) = b(k,221) - lu(k,489) * b(k,132) + b(k,223) = b(k,223) - lu(k,490) * b(k,132) + b(k,212) = b(k,212) - lu(k,493) * b(k,133) + b(k,215) = b(k,215) - lu(k,494) * b(k,133) + b(k,216) = b(k,216) - lu(k,495) * b(k,133) + b(k,220) = b(k,220) - lu(k,496) * b(k,133) + b(k,221) = b(k,221) - lu(k,497) * b(k,133) + b(k,226) = b(k,226) - lu(k,498) * b(k,133) + b(k,185) = b(k,185) - lu(k,501) * b(k,134) + b(k,201) = b(k,201) - lu(k,502) * b(k,134) + b(k,216) = b(k,216) - lu(k,503) * b(k,134) + b(k,220) = b(k,220) - lu(k,504) * b(k,134) + b(k,221) = b(k,221) - lu(k,505) * b(k,134) + b(k,223) = b(k,223) - lu(k,506) * b(k,134) + b(k,156) = b(k,156) - lu(k,508) * b(k,135) + b(k,172) = b(k,172) - lu(k,509) * b(k,135) + b(k,208) = b(k,208) - lu(k,510) * b(k,135) + b(k,216) = b(k,216) - lu(k,511) * b(k,135) + b(k,202) = b(k,202) - lu(k,513) * b(k,136) + b(k,212) = b(k,212) - lu(k,514) * b(k,136) + b(k,216) = b(k,216) - lu(k,515) * b(k,136) + b(k,226) = b(k,226) - lu(k,516) * b(k,136) + b(k,227) = b(k,227) - lu(k,517) * b(k,136) + b(k,151) = b(k,151) - lu(k,520) * b(k,137) + b(k,216) = b(k,216) - lu(k,521) * b(k,137) + b(k,220) = b(k,220) - lu(k,522) * b(k,137) + b(k,221) = b(k,221) - lu(k,523) * b(k,137) + b(k,223) = b(k,223) - lu(k,524) * b(k,137) + b(k,169) = b(k,169) - lu(k,526) * b(k,138) + b(k,208) = b(k,208) - lu(k,527) * b(k,138) + b(k,214) = b(k,214) - lu(k,528) * b(k,138) + b(k,216) = b(k,216) - lu(k,529) * b(k,138) + b(k,218) = b(k,218) - lu(k,530) * b(k,138) + b(k,219) = b(k,219) - lu(k,531) * b(k,138) + b(k,221) = b(k,221) - lu(k,532) * b(k,138) + b(k,175) = b(k,175) - lu(k,534) * b(k,139) + b(k,192) = b(k,192) - lu(k,535) * b(k,139) + b(k,196) = b(k,196) - lu(k,536) * b(k,139) + b(k,197) = b(k,197) - lu(k,537) * b(k,139) + b(k,213) = b(k,213) - lu(k,538) * b(k,139) + b(k,216) = b(k,216) - lu(k,539) * b(k,139) + b(k,223) = b(k,223) - lu(k,540) * b(k,139) + b(k,165) = b(k,165) - lu(k,542) * b(k,140) + b(k,191) = b(k,191) - lu(k,543) * b(k,140) + b(k,196) = b(k,196) - lu(k,544) * b(k,140) + b(k,214) = b(k,214) - lu(k,545) * b(k,140) + b(k,216) = b(k,216) - lu(k,546) * b(k,140) + b(k,223) = b(k,223) - lu(k,547) * b(k,140) + b(k,228) = b(k,228) - lu(k,548) * b(k,140) + b(k,159) = b(k,159) - lu(k,550) * b(k,141) + b(k,182) = b(k,182) - lu(k,551) * b(k,141) + b(k,194) = b(k,194) - lu(k,552) * b(k,141) + b(k,214) = b(k,214) - lu(k,553) * b(k,141) + b(k,216) = b(k,216) - lu(k,554) * b(k,141) + b(k,223) = b(k,223) - lu(k,555) * b(k,141) + b(k,227) = b(k,227) - lu(k,556) * b(k,141) + b(k,166) = b(k,166) - lu(k,558) * b(k,142) + b(k,210) = b(k,210) - lu(k,559) * b(k,142) + b(k,213) = b(k,213) - lu(k,560) * b(k,142) + b(k,218) = b(k,218) - lu(k,561) * b(k,142) + b(k,221) = b(k,221) - lu(k,562) * b(k,142) + b(k,225) = b(k,225) - lu(k,563) * b(k,142) + b(k,226) = b(k,226) - lu(k,564) * b(k,142) + b(k,181) = b(k,181) - lu(k,566) * b(k,143) + b(k,191) = b(k,191) - lu(k,567) * b(k,143) + b(k,197) = b(k,197) - lu(k,568) * b(k,143) + b(k,214) = b(k,214) - lu(k,569) * b(k,143) + b(k,220) = b(k,220) - lu(k,570) * b(k,143) + b(k,221) = b(k,221) - lu(k,571) * b(k,143) + b(k,223) = b(k,223) - lu(k,572) * b(k,143) + b(k,169) = b(k,169) - lu(k,574) * b(k,144) + b(k,196) = b(k,196) - lu(k,575) * b(k,144) + b(k,207) = b(k,207) - lu(k,576) * b(k,144) + b(k,214) = b(k,214) - lu(k,577) * b(k,144) + b(k,216) = b(k,216) - lu(k,578) * b(k,144) + b(k,218) = b(k,218) - lu(k,579) * b(k,144) + b(k,221) = b(k,221) - lu(k,580) * b(k,144) + b(k,223) = b(k,223) - lu(k,581) * b(k,144) + b(k,192) = b(k,192) - lu(k,583) * b(k,145) + b(k,196) = b(k,196) - lu(k,584) * b(k,145) + b(k,197) = b(k,197) - lu(k,585) * b(k,145) + b(k,213) = b(k,213) - lu(k,586) * b(k,145) + b(k,214) = b(k,214) - lu(k,587) * b(k,145) + b(k,216) = b(k,216) - lu(k,588) * b(k,145) + b(k,221) = b(k,221) - lu(k,589) * b(k,145) + b(k,223) = b(k,223) - lu(k,590) * b(k,145) + b(k,177) = b(k,177) - lu(k,592) * b(k,146) + b(k,194) = b(k,194) - lu(k,593) * b(k,146) + b(k,223) = b(k,223) - lu(k,594) * b(k,146) + b(k,210) = b(k,210) - lu(k,596) * b(k,147) + b(k,215) = b(k,215) - lu(k,597) * b(k,147) + b(k,216) = b(k,216) - lu(k,598) * b(k,147) + b(k,219) = b(k,219) - lu(k,599) * b(k,147) + b(k,222) = b(k,222) - lu(k,600) * b(k,147) + b(k,223) = b(k,223) - lu(k,601) * b(k,147) + b(k,224) = b(k,224) - lu(k,602) * b(k,147) + b(k,228) = b(k,228) - lu(k,603) * b(k,147) + b(k,216) = b(k,216) - lu(k,605) * b(k,148) + b(k,222) = b(k,222) - lu(k,606) * b(k,148) + b(k,223) = b(k,223) - lu(k,607) * b(k,148) + b(k,224) = b(k,224) - lu(k,608) * b(k,148) + b(k,226) = b(k,226) - lu(k,609) * b(k,148) + b(k,228) = b(k,228) - lu(k,610) * b(k,148) + end do + end subroutine lu_slv02 + subroutine lu_slv03( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,169) = b(k,169) - lu(k,612) * b(k,149) + b(k,208) = b(k,208) - lu(k,613) * b(k,149) + b(k,214) = b(k,214) - lu(k,614) * b(k,149) + b(k,216) = b(k,216) - lu(k,615) * b(k,149) + b(k,219) = b(k,219) - lu(k,616) * b(k,149) + b(k,228) = b(k,228) - lu(k,617) * b(k,149) + b(k,184) = b(k,184) - lu(k,619) * b(k,150) + b(k,213) = b(k,213) - lu(k,620) * b(k,150) + b(k,216) = b(k,216) - lu(k,621) * b(k,150) + b(k,221) = b(k,221) - lu(k,622) * b(k,150) + b(k,223) = b(k,223) - lu(k,623) * b(k,150) + b(k,216) = b(k,216) - lu(k,627) * b(k,151) + b(k,220) = b(k,220) - lu(k,628) * b(k,151) + b(k,221) = b(k,221) - lu(k,629) * b(k,151) + b(k,223) = b(k,223) - lu(k,630) * b(k,151) + b(k,227) = b(k,227) - lu(k,631) * b(k,151) + b(k,156) = b(k,156) - lu(k,634) * b(k,152) + b(k,172) = b(k,172) - lu(k,635) * b(k,152) + b(k,178) = b(k,178) - lu(k,636) * b(k,152) + b(k,181) = b(k,181) - lu(k,637) * b(k,152) + b(k,191) = b(k,191) - lu(k,638) * b(k,152) + b(k,208) = b(k,208) - lu(k,639) * b(k,152) + b(k,214) = b(k,214) - lu(k,640) * b(k,152) + b(k,216) = b(k,216) - lu(k,641) * b(k,152) + b(k,223) = b(k,223) - lu(k,642) * b(k,152) + b(k,169) = b(k,169) - lu(k,644) * b(k,153) + b(k,181) = b(k,181) - lu(k,645) * b(k,153) + b(k,189) = b(k,189) - lu(k,646) * b(k,153) + b(k,192) = b(k,192) - lu(k,647) * b(k,153) + b(k,193) = b(k,193) - lu(k,648) * b(k,153) + b(k,194) = b(k,194) - lu(k,649) * b(k,153) + b(k,214) = b(k,214) - lu(k,650) * b(k,153) + b(k,216) = b(k,216) - lu(k,651) * b(k,153) + b(k,223) = b(k,223) - lu(k,652) * b(k,153) + b(k,160) = b(k,160) - lu(k,657) * b(k,154) + b(k,161) = b(k,161) - lu(k,658) * b(k,154) + b(k,164) = b(k,164) - lu(k,659) * b(k,154) + b(k,177) = b(k,177) - lu(k,660) * b(k,154) + b(k,185) = b(k,185) - lu(k,661) * b(k,154) + b(k,194) = b(k,194) - lu(k,662) * b(k,154) + b(k,201) = b(k,201) - lu(k,663) * b(k,154) + b(k,216) = b(k,216) - lu(k,664) * b(k,154) + b(k,223) = b(k,223) - lu(k,665) * b(k,154) + b(k,156) = b(k,156) - lu(k,668) * b(k,155) + b(k,172) = b(k,172) - lu(k,669) * b(k,155) + b(k,181) = b(k,181) - lu(k,670) * b(k,155) + b(k,191) = b(k,191) - lu(k,671) * b(k,155) + b(k,208) = b(k,208) - lu(k,672) * b(k,155) + b(k,214) = b(k,214) - lu(k,673) * b(k,155) + b(k,216) = b(k,216) - lu(k,674) * b(k,155) + b(k,221) = b(k,221) - lu(k,675) * b(k,155) + b(k,223) = b(k,223) - lu(k,676) * b(k,155) + b(k,191) = b(k,191) - lu(k,679) * b(k,156) + b(k,208) = b(k,208) - lu(k,680) * b(k,156) + b(k,216) = b(k,216) - lu(k,681) * b(k,156) + b(k,220) = b(k,220) - lu(k,682) * b(k,156) + b(k,221) = b(k,221) - lu(k,683) * b(k,156) + b(k,223) = b(k,223) - lu(k,684) * b(k,156) + b(k,169) = b(k,169) - lu(k,686) * b(k,157) + b(k,216) = b(k,216) - lu(k,687) * b(k,157) + b(k,219) = b(k,219) - lu(k,688) * b(k,157) + b(k,228) = b(k,228) - lu(k,689) * b(k,157) + b(k,160) = b(k,160) - lu(k,695) * b(k,158) + b(k,163) = b(k,163) - lu(k,696) * b(k,158) + b(k,164) = b(k,164) - lu(k,697) * b(k,158) + b(k,177) = b(k,177) - lu(k,698) * b(k,158) + b(k,185) = b(k,185) - lu(k,699) * b(k,158) + b(k,194) = b(k,194) - lu(k,700) * b(k,158) + b(k,201) = b(k,201) - lu(k,701) * b(k,158) + b(k,208) = b(k,208) - lu(k,702) * b(k,158) + b(k,216) = b(k,216) - lu(k,703) * b(k,158) + b(k,223) = b(k,223) - lu(k,704) * b(k,158) + b(k,192) = b(k,192) - lu(k,708) * b(k,159) + b(k,214) = b(k,214) - lu(k,709) * b(k,159) + b(k,216) = b(k,216) - lu(k,710) * b(k,159) + b(k,220) = b(k,220) - lu(k,711) * b(k,159) + b(k,221) = b(k,221) - lu(k,712) * b(k,159) + b(k,223) = b(k,223) - lu(k,713) * b(k,159) + b(k,185) = b(k,185) - lu(k,715) * b(k,160) + b(k,194) = b(k,194) - lu(k,716) * b(k,160) + b(k,220) = b(k,220) - lu(k,717) * b(k,160) + b(k,221) = b(k,221) - lu(k,718) * b(k,160) + b(k,223) = b(k,223) - lu(k,719) * b(k,160) + b(k,164) = b(k,164) - lu(k,726) * b(k,161) + b(k,177) = b(k,177) - lu(k,727) * b(k,161) + b(k,185) = b(k,185) - lu(k,728) * b(k,161) + b(k,194) = b(k,194) - lu(k,729) * b(k,161) + b(k,201) = b(k,201) - lu(k,730) * b(k,161) + b(k,216) = b(k,216) - lu(k,731) * b(k,161) + b(k,220) = b(k,220) - lu(k,732) * b(k,161) + b(k,221) = b(k,221) - lu(k,733) * b(k,161) + b(k,223) = b(k,223) - lu(k,734) * b(k,161) + b(k,198) = b(k,198) - lu(k,737) * b(k,162) + b(k,200) = b(k,200) - lu(k,738) * b(k,162) + b(k,206) = b(k,206) - lu(k,739) * b(k,162) + b(k,214) = b(k,214) - lu(k,740) * b(k,162) + b(k,216) = b(k,216) - lu(k,741) * b(k,162) + b(k,223) = b(k,223) - lu(k,742) * b(k,162) + b(k,164) = b(k,164) - lu(k,750) * b(k,163) + b(k,177) = b(k,177) - lu(k,751) * b(k,163) + b(k,185) = b(k,185) - lu(k,752) * b(k,163) + b(k,194) = b(k,194) - lu(k,753) * b(k,163) + b(k,201) = b(k,201) - lu(k,754) * b(k,163) + b(k,208) = b(k,208) - lu(k,755) * b(k,163) + b(k,216) = b(k,216) - lu(k,756) * b(k,163) + b(k,220) = b(k,220) - lu(k,757) * b(k,163) + b(k,221) = b(k,221) - lu(k,758) * b(k,163) + b(k,223) = b(k,223) - lu(k,759) * b(k,163) + b(k,194) = b(k,194) - lu(k,761) * b(k,164) + b(k,201) = b(k,201) - lu(k,762) * b(k,164) + b(k,216) = b(k,216) - lu(k,763) * b(k,164) + b(k,219) = b(k,219) - lu(k,764) * b(k,164) + b(k,220) = b(k,220) - lu(k,765) * b(k,164) + b(k,221) = b(k,221) - lu(k,766) * b(k,164) + b(k,223) = b(k,223) - lu(k,767) * b(k,164) + b(k,191) = b(k,191) - lu(k,770) * b(k,165) + b(k,196) = b(k,196) - lu(k,771) * b(k,165) + b(k,214) = b(k,214) - lu(k,772) * b(k,165) + b(k,216) = b(k,216) - lu(k,773) * b(k,165) + b(k,220) = b(k,220) - lu(k,774) * b(k,165) + b(k,221) = b(k,221) - lu(k,775) * b(k,165) + b(k,223) = b(k,223) - lu(k,776) * b(k,165) + b(k,228) = b(k,228) - lu(k,777) * b(k,165) + b(k,210) = b(k,210) - lu(k,780) * b(k,166) + b(k,216) = b(k,216) - lu(k,781) * b(k,166) + b(k,222) = b(k,222) - lu(k,782) * b(k,166) + b(k,224) = b(k,224) - lu(k,783) * b(k,166) + b(k,225) = b(k,225) - lu(k,784) * b(k,166) + b(k,226) = b(k,226) - lu(k,785) * b(k,166) + b(k,228) = b(k,228) - lu(k,786) * b(k,166) + b(k,181) = b(k,181) - lu(k,789) * b(k,167) + b(k,191) = b(k,191) - lu(k,790) * b(k,167) + b(k,214) = b(k,214) - lu(k,791) * b(k,167) + b(k,216) = b(k,216) - lu(k,792) * b(k,167) + b(k,219) = b(k,219) - lu(k,793) * b(k,167) + b(k,220) = b(k,220) - lu(k,794) * b(k,167) + b(k,221) = b(k,221) - lu(k,795) * b(k,167) + b(k,223) = b(k,223) - lu(k,796) * b(k,167) + b(k,228) = b(k,228) - lu(k,797) * b(k,167) + b(k,214) = b(k,214) - lu(k,799) * b(k,168) + b(k,216) = b(k,216) - lu(k,800) * b(k,168) + b(k,223) = b(k,223) - lu(k,801) * b(k,168) + b(k,194) = b(k,194) - lu(k,803) * b(k,169) + b(k,226) = b(k,226) - lu(k,804) * b(k,169) + b(k,210) = b(k,210) - lu(k,806) * b(k,170) + b(k,212) = b(k,212) - lu(k,807) * b(k,170) + b(k,215) = b(k,215) - lu(k,808) * b(k,170) + b(k,216) = b(k,216) - lu(k,809) * b(k,170) + b(k,225) = b(k,225) - lu(k,810) * b(k,170) + b(k,226) = b(k,226) - lu(k,811) * b(k,170) + b(k,228) = b(k,228) - lu(k,812) * b(k,170) + b(k,216) = b(k,216) - lu(k,815) * b(k,171) + b(k,217) = b(k,217) - lu(k,816) * b(k,171) + b(k,222) = b(k,222) - lu(k,817) * b(k,171) + b(k,224) = b(k,224) - lu(k,818) * b(k,171) + b(k,226) = b(k,226) - lu(k,819) * b(k,171) + b(k,228) = b(k,228) - lu(k,820) * b(k,171) + b(k,191) = b(k,191) - lu(k,825) * b(k,172) + b(k,214) = b(k,214) - lu(k,826) * b(k,172) + b(k,216) = b(k,216) - lu(k,827) * b(k,172) + b(k,219) = b(k,219) - lu(k,828) * b(k,172) + b(k,220) = b(k,220) - lu(k,829) * b(k,172) + b(k,221) = b(k,221) - lu(k,830) * b(k,172) + b(k,223) = b(k,223) - lu(k,831) * b(k,172) + b(k,182) = b(k,182) - lu(k,836) * b(k,173) + b(k,187) = b(k,187) - lu(k,837) * b(k,173) + b(k,194) = b(k,194) - lu(k,838) * b(k,173) + b(k,199) = b(k,199) - lu(k,839) * b(k,173) + b(k,200) = b(k,200) - lu(k,840) * b(k,173) + b(k,203) = b(k,203) - lu(k,841) * b(k,173) + b(k,204) = b(k,204) - lu(k,842) * b(k,173) + b(k,206) = b(k,206) - lu(k,843) * b(k,173) + b(k,208) = b(k,208) - lu(k,844) * b(k,173) + b(k,214) = b(k,214) - lu(k,845) * b(k,173) + b(k,216) = b(k,216) - lu(k,846) * b(k,173) + b(k,218) = b(k,218) - lu(k,847) * b(k,173) + b(k,219) = b(k,219) - lu(k,848) * b(k,173) + b(k,223) = b(k,223) - lu(k,849) * b(k,173) + b(k,227) = b(k,227) - lu(k,850) * b(k,173) + b(k,202) = b(k,202) - lu(k,853) * b(k,174) + b(k,216) = b(k,216) - lu(k,854) * b(k,174) + b(k,223) = b(k,223) - lu(k,855) * b(k,174) + b(k,226) = b(k,226) - lu(k,856) * b(k,174) + b(k,228) = b(k,228) - lu(k,857) * b(k,174) + b(k,201) = b(k,201) - lu(k,859) * b(k,175) + b(k,208) = b(k,208) - lu(k,860) * b(k,175) + b(k,214) = b(k,214) - lu(k,861) * b(k,175) + b(k,216) = b(k,216) - lu(k,862) * b(k,175) + b(k,221) = b(k,221) - lu(k,863) * b(k,175) + b(k,209) = b(k,209) - lu(k,866) * b(k,176) + b(k,211) = b(k,211) - lu(k,867) * b(k,176) + b(k,212) = b(k,212) - lu(k,868) * b(k,176) + b(k,213) = b(k,213) - lu(k,869) * b(k,176) + b(k,216) = b(k,216) - lu(k,870) * b(k,176) + b(k,218) = b(k,218) - lu(k,871) * b(k,176) + b(k,219) = b(k,219) - lu(k,872) * b(k,176) + b(k,228) = b(k,228) - lu(k,873) * b(k,176) + b(k,185) = b(k,185) - lu(k,875) * b(k,177) + b(k,194) = b(k,194) - lu(k,876) * b(k,177) + b(k,201) = b(k,201) - lu(k,877) * b(k,177) + b(k,216) = b(k,216) - lu(k,878) * b(k,177) + b(k,219) = b(k,219) - lu(k,879) * b(k,177) + b(k,220) = b(k,220) - lu(k,880) * b(k,177) + b(k,221) = b(k,221) - lu(k,881) * b(k,177) + b(k,223) = b(k,223) - lu(k,882) * b(k,177) + end do + end subroutine lu_slv03 + subroutine lu_slv04( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,181) = b(k,181) - lu(k,889) * b(k,178) + b(k,191) = b(k,191) - lu(k,890) * b(k,178) + b(k,208) = b(k,208) - lu(k,891) * b(k,178) + b(k,214) = b(k,214) - lu(k,892) * b(k,178) + b(k,216) = b(k,216) - lu(k,893) * b(k,178) + b(k,219) = b(k,219) - lu(k,894) * b(k,178) + b(k,220) = b(k,220) - lu(k,895) * b(k,178) + b(k,221) = b(k,221) - lu(k,896) * b(k,178) + b(k,223) = b(k,223) - lu(k,897) * b(k,178) + b(k,213) = b(k,213) - lu(k,901) * b(k,179) + b(k,216) = b(k,216) - lu(k,902) * b(k,179) + b(k,217) = b(k,217) - lu(k,903) * b(k,179) + b(k,218) = b(k,218) - lu(k,904) * b(k,179) + b(k,221) = b(k,221) - lu(k,905) * b(k,179) + b(k,222) = b(k,222) - lu(k,906) * b(k,179) + b(k,224) = b(k,224) - lu(k,907) * b(k,179) + b(k,226) = b(k,226) - lu(k,908) * b(k,179) + b(k,228) = b(k,228) - lu(k,909) * b(k,179) + b(k,181) = b(k,181) - lu(k,914) * b(k,180) + b(k,184) = b(k,184) - lu(k,915) * b(k,180) + b(k,213) = b(k,213) - lu(k,916) * b(k,180) + b(k,214) = b(k,214) - lu(k,917) * b(k,180) + b(k,216) = b(k,216) - lu(k,918) * b(k,180) + b(k,219) = b(k,219) - lu(k,919) * b(k,180) + b(k,220) = b(k,220) - lu(k,920) * b(k,180) + b(k,221) = b(k,221) - lu(k,921) * b(k,180) + b(k,223) = b(k,223) - lu(k,922) * b(k,180) + b(k,195) = b(k,195) - lu(k,924) * b(k,181) + b(k,208) = b(k,208) - lu(k,925) * b(k,181) + b(k,216) = b(k,216) - lu(k,926) * b(k,181) + b(k,219) = b(k,219) - lu(k,927) * b(k,181) + b(k,228) = b(k,228) - lu(k,928) * b(k,181) + b(k,194) = b(k,194) - lu(k,931) * b(k,182) + b(k,216) = b(k,216) - lu(k,932) * b(k,182) + b(k,223) = b(k,223) - lu(k,933) * b(k,182) + b(k,226) = b(k,226) - lu(k,934) * b(k,182) + b(k,228) = b(k,228) - lu(k,935) * b(k,182) + b(k,184) = b(k,184) - lu(k,950) * b(k,183) + b(k,185) = b(k,185) - lu(k,951) * b(k,183) + b(k,188) = b(k,188) - lu(k,952) * b(k,183) + b(k,189) = b(k,189) - lu(k,953) * b(k,183) + b(k,191) = b(k,191) - lu(k,954) * b(k,183) + b(k,194) = b(k,194) - lu(k,955) * b(k,183) + b(k,195) = b(k,195) - lu(k,956) * b(k,183) + b(k,201) = b(k,201) - lu(k,957) * b(k,183) + b(k,208) = b(k,208) - lu(k,958) * b(k,183) + b(k,213) = b(k,213) - lu(k,959) * b(k,183) + b(k,214) = b(k,214) - lu(k,960) * b(k,183) + b(k,216) = b(k,216) - lu(k,961) * b(k,183) + b(k,218) = b(k,218) - lu(k,962) * b(k,183) + b(k,219) = b(k,219) - lu(k,963) * b(k,183) + b(k,220) = b(k,220) - lu(k,964) * b(k,183) + b(k,221) = b(k,221) - lu(k,965) * b(k,183) + b(k,223) = b(k,223) - lu(k,966) * b(k,183) + b(k,226) = b(k,226) - lu(k,967) * b(k,183) + b(k,227) = b(k,227) - lu(k,968) * b(k,183) + b(k,228) = b(k,228) - lu(k,969) * b(k,183) + b(k,188) = b(k,188) - lu(k,971) * b(k,184) + b(k,189) = b(k,189) - lu(k,972) * b(k,184) + b(k,193) = b(k,193) - lu(k,973) * b(k,184) + b(k,194) = b(k,194) - lu(k,974) * b(k,184) + b(k,216) = b(k,216) - lu(k,975) * b(k,184) + b(k,218) = b(k,218) - lu(k,976) * b(k,184) + b(k,223) = b(k,223) - lu(k,977) * b(k,184) + b(k,194) = b(k,194) - lu(k,981) * b(k,185) + b(k,216) = b(k,216) - lu(k,982) * b(k,185) + b(k,223) = b(k,223) - lu(k,983) * b(k,185) + b(k,226) = b(k,226) - lu(k,984) * b(k,185) + b(k,188) = b(k,188) - lu(k,1001) * b(k,186) + b(k,189) = b(k,189) - lu(k,1002) * b(k,186) + b(k,191) = b(k,191) - lu(k,1003) * b(k,186) + b(k,193) = b(k,193) - lu(k,1004) * b(k,186) + b(k,194) = b(k,194) - lu(k,1005) * b(k,186) + b(k,195) = b(k,195) - lu(k,1006) * b(k,186) + b(k,201) = b(k,201) - lu(k,1007) * b(k,186) + b(k,208) = b(k,208) - lu(k,1008) * b(k,186) + b(k,213) = b(k,213) - lu(k,1009) * b(k,186) + b(k,214) = b(k,214) - lu(k,1010) * b(k,186) + b(k,216) = b(k,216) - lu(k,1011) * b(k,186) + b(k,218) = b(k,218) - lu(k,1012) * b(k,186) + b(k,219) = b(k,219) - lu(k,1013) * b(k,186) + b(k,220) = b(k,220) - lu(k,1014) * b(k,186) + b(k,221) = b(k,221) - lu(k,1015) * b(k,186) + b(k,223) = b(k,223) - lu(k,1016) * b(k,186) + b(k,226) = b(k,226) - lu(k,1017) * b(k,186) + b(k,227) = b(k,227) - lu(k,1018) * b(k,186) + b(k,228) = b(k,228) - lu(k,1019) * b(k,186) + b(k,191) = b(k,191) - lu(k,1026) * b(k,187) + b(k,194) = b(k,194) - lu(k,1027) * b(k,187) + b(k,196) = b(k,196) - lu(k,1028) * b(k,187) + b(k,201) = b(k,201) - lu(k,1029) * b(k,187) + b(k,208) = b(k,208) - lu(k,1030) * b(k,187) + b(k,211) = b(k,211) - lu(k,1031) * b(k,187) + b(k,214) = b(k,214) - lu(k,1032) * b(k,187) + b(k,216) = b(k,216) - lu(k,1033) * b(k,187) + b(k,218) = b(k,218) - lu(k,1034) * b(k,187) + b(k,219) = b(k,219) - lu(k,1035) * b(k,187) + b(k,220) = b(k,220) - lu(k,1036) * b(k,187) + b(k,221) = b(k,221) - lu(k,1037) * b(k,187) + b(k,223) = b(k,223) - lu(k,1038) * b(k,187) + b(k,226) = b(k,226) - lu(k,1039) * b(k,187) + b(k,227) = b(k,227) - lu(k,1040) * b(k,187) + b(k,228) = b(k,228) - lu(k,1041) * b(k,187) + b(k,189) = b(k,189) - lu(k,1047) * b(k,188) + b(k,193) = b(k,193) - lu(k,1048) * b(k,188) + b(k,194) = b(k,194) - lu(k,1049) * b(k,188) + b(k,213) = b(k,213) - lu(k,1050) * b(k,188) + b(k,214) = b(k,214) - lu(k,1051) * b(k,188) + b(k,216) = b(k,216) - lu(k,1052) * b(k,188) + b(k,218) = b(k,218) - lu(k,1053) * b(k,188) + b(k,219) = b(k,219) - lu(k,1054) * b(k,188) + b(k,220) = b(k,220) - lu(k,1055) * b(k,188) + b(k,221) = b(k,221) - lu(k,1056) * b(k,188) + b(k,223) = b(k,223) - lu(k,1057) * b(k,188) + b(k,194) = b(k,194) - lu(k,1061) * b(k,189) + b(k,195) = b(k,195) - lu(k,1062) * b(k,189) + b(k,208) = b(k,208) - lu(k,1063) * b(k,189) + b(k,214) = b(k,214) - lu(k,1064) * b(k,189) + b(k,216) = b(k,216) - lu(k,1065) * b(k,189) + b(k,219) = b(k,219) - lu(k,1066) * b(k,189) + b(k,223) = b(k,223) - lu(k,1067) * b(k,189) + b(k,226) = b(k,226) - lu(k,1068) * b(k,189) + b(k,228) = b(k,228) - lu(k,1069) * b(k,189) + b(k,194) = b(k,194) - lu(k,1075) * b(k,190) + b(k,201) = b(k,201) - lu(k,1076) * b(k,190) + b(k,208) = b(k,208) - lu(k,1077) * b(k,190) + b(k,213) = b(k,213) - lu(k,1078) * b(k,190) + b(k,214) = b(k,214) - lu(k,1079) * b(k,190) + b(k,216) = b(k,216) - lu(k,1080) * b(k,190) + b(k,219) = b(k,219) - lu(k,1081) * b(k,190) + b(k,220) = b(k,220) - lu(k,1082) * b(k,190) + b(k,221) = b(k,221) - lu(k,1083) * b(k,190) + b(k,223) = b(k,223) - lu(k,1084) * b(k,190) + b(k,226) = b(k,226) - lu(k,1085) * b(k,190) + b(k,194) = b(k,194) - lu(k,1087) * b(k,191) + b(k,208) = b(k,208) - lu(k,1088) * b(k,191) + b(k,213) = b(k,213) - lu(k,1089) * b(k,191) + b(k,216) = b(k,216) - lu(k,1090) * b(k,191) + b(k,218) = b(k,218) - lu(k,1091) * b(k,191) + b(k,219) = b(k,219) - lu(k,1092) * b(k,191) + b(k,223) = b(k,223) - lu(k,1093) * b(k,191) + b(k,228) = b(k,228) - lu(k,1094) * b(k,191) + b(k,194) = b(k,194) - lu(k,1098) * b(k,192) + b(k,214) = b(k,214) - lu(k,1099) * b(k,192) + b(k,216) = b(k,216) - lu(k,1100) * b(k,192) + b(k,223) = b(k,223) - lu(k,1101) * b(k,192) + b(k,226) = b(k,226) - lu(k,1102) * b(k,192) + b(k,194) = b(k,194) - lu(k,1111) * b(k,193) + b(k,195) = b(k,195) - lu(k,1112) * b(k,193) + b(k,208) = b(k,208) - lu(k,1113) * b(k,193) + b(k,213) = b(k,213) - lu(k,1114) * b(k,193) + b(k,214) = b(k,214) - lu(k,1115) * b(k,193) + b(k,216) = b(k,216) - lu(k,1116) * b(k,193) + b(k,219) = b(k,219) - lu(k,1117) * b(k,193) + b(k,220) = b(k,220) - lu(k,1118) * b(k,193) + b(k,221) = b(k,221) - lu(k,1119) * b(k,193) + b(k,223) = b(k,223) - lu(k,1120) * b(k,193) + b(k,226) = b(k,226) - lu(k,1121) * b(k,193) + b(k,228) = b(k,228) - lu(k,1122) * b(k,193) + b(k,216) = b(k,216) - lu(k,1125) * b(k,194) + b(k,223) = b(k,223) - lu(k,1126) * b(k,194) + b(k,226) = b(k,226) - lu(k,1127) * b(k,194) + b(k,196) = b(k,196) - lu(k,1131) * b(k,195) + b(k,201) = b(k,201) - lu(k,1132) * b(k,195) + b(k,208) = b(k,208) - lu(k,1133) * b(k,195) + b(k,214) = b(k,214) - lu(k,1134) * b(k,195) + b(k,216) = b(k,216) - lu(k,1135) * b(k,195) + b(k,219) = b(k,219) - lu(k,1136) * b(k,195) + b(k,220) = b(k,220) - lu(k,1137) * b(k,195) + b(k,221) = b(k,221) - lu(k,1138) * b(k,195) + b(k,223) = b(k,223) - lu(k,1139) * b(k,195) + b(k,228) = b(k,228) - lu(k,1140) * b(k,195) + b(k,201) = b(k,201) - lu(k,1142) * b(k,196) + b(k,208) = b(k,208) - lu(k,1143) * b(k,196) + b(k,214) = b(k,214) - lu(k,1144) * b(k,196) + b(k,216) = b(k,216) - lu(k,1145) * b(k,196) + b(k,223) = b(k,223) - lu(k,1146) * b(k,196) + b(k,201) = b(k,201) - lu(k,1155) * b(k,197) + b(k,208) = b(k,208) - lu(k,1156) * b(k,197) + b(k,213) = b(k,213) - lu(k,1157) * b(k,197) + b(k,214) = b(k,214) - lu(k,1158) * b(k,197) + b(k,216) = b(k,216) - lu(k,1159) * b(k,197) + b(k,218) = b(k,218) - lu(k,1160) * b(k,197) + b(k,219) = b(k,219) - lu(k,1161) * b(k,197) + b(k,220) = b(k,220) - lu(k,1162) * b(k,197) + b(k,221) = b(k,221) - lu(k,1163) * b(k,197) + b(k,223) = b(k,223) - lu(k,1164) * b(k,197) + b(k,226) = b(k,226) - lu(k,1165) * b(k,197) + b(k,228) = b(k,228) - lu(k,1166) * b(k,197) + b(k,201) = b(k,201) - lu(k,1175) * b(k,198) + b(k,208) = b(k,208) - lu(k,1176) * b(k,198) + b(k,214) = b(k,214) - lu(k,1177) * b(k,198) + b(k,216) = b(k,216) - lu(k,1178) * b(k,198) + b(k,218) = b(k,218) - lu(k,1179) * b(k,198) + b(k,219) = b(k,219) - lu(k,1180) * b(k,198) + b(k,220) = b(k,220) - lu(k,1181) * b(k,198) + b(k,221) = b(k,221) - lu(k,1182) * b(k,198) + b(k,223) = b(k,223) - lu(k,1183) * b(k,198) + b(k,226) = b(k,226) - lu(k,1184) * b(k,198) + b(k,200) = b(k,200) - lu(k,1195) * b(k,199) + b(k,201) = b(k,201) - lu(k,1196) * b(k,199) + b(k,206) = b(k,206) - lu(k,1197) * b(k,199) + b(k,208) = b(k,208) - lu(k,1198) * b(k,199) + b(k,213) = b(k,213) - lu(k,1199) * b(k,199) + b(k,214) = b(k,214) - lu(k,1200) * b(k,199) + b(k,216) = b(k,216) - lu(k,1201) * b(k,199) + b(k,218) = b(k,218) - lu(k,1202) * b(k,199) + b(k,219) = b(k,219) - lu(k,1203) * b(k,199) + b(k,220) = b(k,220) - lu(k,1204) * b(k,199) + b(k,221) = b(k,221) - lu(k,1205) * b(k,199) + b(k,223) = b(k,223) - lu(k,1206) * b(k,199) + b(k,226) = b(k,226) - lu(k,1207) * b(k,199) + end do + end subroutine lu_slv04 + subroutine lu_slv05( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,201) = b(k,201) - lu(k,1211) * b(k,200) + b(k,205) = b(k,205) - lu(k,1212) * b(k,200) + b(k,207) = b(k,207) - lu(k,1213) * b(k,200) + b(k,208) = b(k,208) - lu(k,1214) * b(k,200) + b(k,214) = b(k,214) - lu(k,1215) * b(k,200) + b(k,216) = b(k,216) - lu(k,1216) * b(k,200) + b(k,223) = b(k,223) - lu(k,1217) * b(k,200) + b(k,226) = b(k,226) - lu(k,1218) * b(k,200) + b(k,227) = b(k,227) - lu(k,1219) * b(k,200) + b(k,228) = b(k,228) - lu(k,1220) * b(k,200) + b(k,208) = b(k,208) - lu(k,1223) * b(k,201) + b(k,213) = b(k,213) - lu(k,1224) * b(k,201) + b(k,216) = b(k,216) - lu(k,1225) * b(k,201) + b(k,218) = b(k,218) - lu(k,1226) * b(k,201) + b(k,223) = b(k,223) - lu(k,1227) * b(k,201) + b(k,226) = b(k,226) - lu(k,1228) * b(k,201) + b(k,228) = b(k,228) - lu(k,1229) * b(k,201) + b(k,210) = b(k,210) - lu(k,1234) * b(k,202) + b(k,212) = b(k,212) - lu(k,1235) * b(k,202) + b(k,216) = b(k,216) - lu(k,1236) * b(k,202) + b(k,217) = b(k,217) - lu(k,1237) * b(k,202) + b(k,220) = b(k,220) - lu(k,1238) * b(k,202) + b(k,221) = b(k,221) - lu(k,1239) * b(k,202) + b(k,222) = b(k,222) - lu(k,1240) * b(k,202) + b(k,223) = b(k,223) - lu(k,1241) * b(k,202) + b(k,225) = b(k,225) - lu(k,1242) * b(k,202) + b(k,226) = b(k,226) - lu(k,1243) * b(k,202) + b(k,227) = b(k,227) - lu(k,1244) * b(k,202) + b(k,228) = b(k,228) - lu(k,1245) * b(k,202) + b(k,205) = b(k,205) - lu(k,1258) * b(k,203) + b(k,206) = b(k,206) - lu(k,1259) * b(k,203) + b(k,207) = b(k,207) - lu(k,1260) * b(k,203) + b(k,208) = b(k,208) - lu(k,1261) * b(k,203) + b(k,213) = b(k,213) - lu(k,1262) * b(k,203) + b(k,214) = b(k,214) - lu(k,1263) * b(k,203) + b(k,216) = b(k,216) - lu(k,1264) * b(k,203) + b(k,218) = b(k,218) - lu(k,1265) * b(k,203) + b(k,219) = b(k,219) - lu(k,1266) * b(k,203) + b(k,220) = b(k,220) - lu(k,1267) * b(k,203) + b(k,221) = b(k,221) - lu(k,1268) * b(k,203) + b(k,223) = b(k,223) - lu(k,1269) * b(k,203) + b(k,226) = b(k,226) - lu(k,1270) * b(k,203) + b(k,227) = b(k,227) - lu(k,1271) * b(k,203) + b(k,228) = b(k,228) - lu(k,1272) * b(k,203) + b(k,205) = b(k,205) - lu(k,1290) * b(k,204) + b(k,206) = b(k,206) - lu(k,1291) * b(k,204) + b(k,207) = b(k,207) - lu(k,1292) * b(k,204) + b(k,208) = b(k,208) - lu(k,1293) * b(k,204) + b(k,213) = b(k,213) - lu(k,1294) * b(k,204) + b(k,214) = b(k,214) - lu(k,1295) * b(k,204) + b(k,216) = b(k,216) - lu(k,1296) * b(k,204) + b(k,218) = b(k,218) - lu(k,1297) * b(k,204) + b(k,219) = b(k,219) - lu(k,1298) * b(k,204) + b(k,220) = b(k,220) - lu(k,1299) * b(k,204) + b(k,221) = b(k,221) - lu(k,1300) * b(k,204) + b(k,223) = b(k,223) - lu(k,1301) * b(k,204) + b(k,226) = b(k,226) - lu(k,1302) * b(k,204) + b(k,227) = b(k,227) - lu(k,1303) * b(k,204) + b(k,228) = b(k,228) - lu(k,1304) * b(k,204) + b(k,207) = b(k,207) - lu(k,1313) * b(k,205) + b(k,208) = b(k,208) - lu(k,1314) * b(k,205) + b(k,213) = b(k,213) - lu(k,1315) * b(k,205) + b(k,214) = b(k,214) - lu(k,1316) * b(k,205) + b(k,216) = b(k,216) - lu(k,1317) * b(k,205) + b(k,218) = b(k,218) - lu(k,1318) * b(k,205) + b(k,219) = b(k,219) - lu(k,1319) * b(k,205) + b(k,220) = b(k,220) - lu(k,1320) * b(k,205) + b(k,221) = b(k,221) - lu(k,1321) * b(k,205) + b(k,223) = b(k,223) - lu(k,1322) * b(k,205) + b(k,226) = b(k,226) - lu(k,1323) * b(k,205) + b(k,228) = b(k,228) - lu(k,1324) * b(k,205) + b(k,207) = b(k,207) - lu(k,1334) * b(k,206) + b(k,208) = b(k,208) - lu(k,1335) * b(k,206) + b(k,211) = b(k,211) - lu(k,1336) * b(k,206) + b(k,213) = b(k,213) - lu(k,1337) * b(k,206) + b(k,214) = b(k,214) - lu(k,1338) * b(k,206) + b(k,216) = b(k,216) - lu(k,1339) * b(k,206) + b(k,218) = b(k,218) - lu(k,1340) * b(k,206) + b(k,219) = b(k,219) - lu(k,1341) * b(k,206) + b(k,220) = b(k,220) - lu(k,1342) * b(k,206) + b(k,221) = b(k,221) - lu(k,1343) * b(k,206) + b(k,223) = b(k,223) - lu(k,1344) * b(k,206) + b(k,226) = b(k,226) - lu(k,1345) * b(k,206) + b(k,227) = b(k,227) - lu(k,1346) * b(k,206) + b(k,228) = b(k,228) - lu(k,1347) * b(k,206) + b(k,208) = b(k,208) - lu(k,1356) * b(k,207) + b(k,213) = b(k,213) - lu(k,1357) * b(k,207) + b(k,214) = b(k,214) - lu(k,1358) * b(k,207) + b(k,216) = b(k,216) - lu(k,1359) * b(k,207) + b(k,218) = b(k,218) - lu(k,1360) * b(k,207) + b(k,219) = b(k,219) - lu(k,1361) * b(k,207) + b(k,220) = b(k,220) - lu(k,1362) * b(k,207) + b(k,221) = b(k,221) - lu(k,1363) * b(k,207) + b(k,223) = b(k,223) - lu(k,1364) * b(k,207) + b(k,226) = b(k,226) - lu(k,1365) * b(k,207) + b(k,227) = b(k,227) - lu(k,1366) * b(k,207) + b(k,228) = b(k,228) - lu(k,1367) * b(k,207) + b(k,211) = b(k,211) - lu(k,1388) * b(k,208) + b(k,213) = b(k,213) - lu(k,1389) * b(k,208) + b(k,214) = b(k,214) - lu(k,1390) * b(k,208) + b(k,216) = b(k,216) - lu(k,1391) * b(k,208) + b(k,218) = b(k,218) - lu(k,1392) * b(k,208) + b(k,219) = b(k,219) - lu(k,1393) * b(k,208) + b(k,220) = b(k,220) - lu(k,1394) * b(k,208) + b(k,221) = b(k,221) - lu(k,1395) * b(k,208) + b(k,223) = b(k,223) - lu(k,1396) * b(k,208) + b(k,226) = b(k,226) - lu(k,1397) * b(k,208) + b(k,227) = b(k,227) - lu(k,1398) * b(k,208) + b(k,228) = b(k,228) - lu(k,1399) * b(k,208) + b(k,211) = b(k,211) - lu(k,1403) * b(k,209) + b(k,212) = b(k,212) - lu(k,1404) * b(k,209) + b(k,213) = b(k,213) - lu(k,1405) * b(k,209) + b(k,215) = b(k,215) - lu(k,1406) * b(k,209) + b(k,216) = b(k,216) - lu(k,1407) * b(k,209) + b(k,218) = b(k,218) - lu(k,1408) * b(k,209) + b(k,219) = b(k,219) - lu(k,1409) * b(k,209) + b(k,222) = b(k,222) - lu(k,1410) * b(k,209) + b(k,224) = b(k,224) - lu(k,1411) * b(k,209) + b(k,226) = b(k,226) - lu(k,1412) * b(k,209) + b(k,228) = b(k,228) - lu(k,1413) * b(k,209) + b(k,212) = b(k,212) - lu(k,1417) * b(k,210) + b(k,214) = b(k,214) - lu(k,1418) * b(k,210) + b(k,215) = b(k,215) - lu(k,1419) * b(k,210) + b(k,216) = b(k,216) - lu(k,1420) * b(k,210) + b(k,223) = b(k,223) - lu(k,1421) * b(k,210) + b(k,225) = b(k,225) - lu(k,1422) * b(k,210) + b(k,226) = b(k,226) - lu(k,1423) * b(k,210) + b(k,227) = b(k,227) - lu(k,1424) * b(k,210) + b(k,228) = b(k,228) - lu(k,1425) * b(k,210) + b(k,212) = b(k,212) - lu(k,1432) * b(k,211) + b(k,213) = b(k,213) - lu(k,1433) * b(k,211) + b(k,214) = b(k,214) - lu(k,1434) * b(k,211) + b(k,215) = b(k,215) - lu(k,1435) * b(k,211) + b(k,216) = b(k,216) - lu(k,1436) * b(k,211) + b(k,218) = b(k,218) - lu(k,1437) * b(k,211) + b(k,219) = b(k,219) - lu(k,1438) * b(k,211) + b(k,222) = b(k,222) - lu(k,1439) * b(k,211) + b(k,223) = b(k,223) - lu(k,1440) * b(k,211) + b(k,224) = b(k,224) - lu(k,1441) * b(k,211) + b(k,226) = b(k,226) - lu(k,1442) * b(k,211) + b(k,228) = b(k,228) - lu(k,1443) * b(k,211) + b(k,213) = b(k,213) - lu(k,1447) * b(k,212) + b(k,214) = b(k,214) - lu(k,1448) * b(k,212) + b(k,215) = b(k,215) - lu(k,1449) * b(k,212) + b(k,216) = b(k,216) - lu(k,1450) * b(k,212) + b(k,218) = b(k,218) - lu(k,1451) * b(k,212) + b(k,219) = b(k,219) - lu(k,1452) * b(k,212) + b(k,222) = b(k,222) - lu(k,1453) * b(k,212) + b(k,223) = b(k,223) - lu(k,1454) * b(k,212) + b(k,224) = b(k,224) - lu(k,1455) * b(k,212) + b(k,226) = b(k,226) - lu(k,1456) * b(k,212) + b(k,227) = b(k,227) - lu(k,1457) * b(k,212) + b(k,228) = b(k,228) - lu(k,1458) * b(k,212) + b(k,214) = b(k,214) - lu(k,1465) * b(k,213) + b(k,215) = b(k,215) - lu(k,1466) * b(k,213) + b(k,216) = b(k,216) - lu(k,1467) * b(k,213) + b(k,218) = b(k,218) - lu(k,1468) * b(k,213) + b(k,219) = b(k,219) - lu(k,1469) * b(k,213) + b(k,221) = b(k,221) - lu(k,1470) * b(k,213) + b(k,222) = b(k,222) - lu(k,1471) * b(k,213) + b(k,223) = b(k,223) - lu(k,1472) * b(k,213) + b(k,224) = b(k,224) - lu(k,1473) * b(k,213) + b(k,226) = b(k,226) - lu(k,1474) * b(k,213) + b(k,227) = b(k,227) - lu(k,1475) * b(k,213) + b(k,228) = b(k,228) - lu(k,1476) * b(k,213) + b(k,215) = b(k,215) - lu(k,1487) * b(k,214) + b(k,216) = b(k,216) - lu(k,1488) * b(k,214) + b(k,218) = b(k,218) - lu(k,1489) * b(k,214) + b(k,219) = b(k,219) - lu(k,1490) * b(k,214) + b(k,220) = b(k,220) - lu(k,1491) * b(k,214) + b(k,221) = b(k,221) - lu(k,1492) * b(k,214) + b(k,222) = b(k,222) - lu(k,1493) * b(k,214) + b(k,223) = b(k,223) - lu(k,1494) * b(k,214) + b(k,224) = b(k,224) - lu(k,1495) * b(k,214) + b(k,225) = b(k,225) - lu(k,1496) * b(k,214) + b(k,226) = b(k,226) - lu(k,1497) * b(k,214) + b(k,227) = b(k,227) - lu(k,1498) * b(k,214) + b(k,228) = b(k,228) - lu(k,1499) * b(k,214) + b(k,216) = b(k,216) - lu(k,1528) * b(k,215) + b(k,217) = b(k,217) - lu(k,1529) * b(k,215) + b(k,218) = b(k,218) - lu(k,1530) * b(k,215) + b(k,219) = b(k,219) - lu(k,1531) * b(k,215) + b(k,220) = b(k,220) - lu(k,1532) * b(k,215) + b(k,221) = b(k,221) - lu(k,1533) * b(k,215) + b(k,222) = b(k,222) - lu(k,1534) * b(k,215) + b(k,223) = b(k,223) - lu(k,1535) * b(k,215) + b(k,224) = b(k,224) - lu(k,1536) * b(k,215) + b(k,225) = b(k,225) - lu(k,1537) * b(k,215) + b(k,226) = b(k,226) - lu(k,1538) * b(k,215) + b(k,227) = b(k,227) - lu(k,1539) * b(k,215) + b(k,228) = b(k,228) - lu(k,1540) * b(k,215) + b(k,217) = b(k,217) - lu(k,1693) * b(k,216) + b(k,218) = b(k,218) - lu(k,1694) * b(k,216) + b(k,219) = b(k,219) - lu(k,1695) * b(k,216) + b(k,220) = b(k,220) - lu(k,1696) * b(k,216) + b(k,221) = b(k,221) - lu(k,1697) * b(k,216) + b(k,222) = b(k,222) - lu(k,1698) * b(k,216) + b(k,223) = b(k,223) - lu(k,1699) * b(k,216) + b(k,224) = b(k,224) - lu(k,1700) * b(k,216) + b(k,225) = b(k,225) - lu(k,1701) * b(k,216) + b(k,226) = b(k,226) - lu(k,1702) * b(k,216) + b(k,227) = b(k,227) - lu(k,1703) * b(k,216) + b(k,228) = b(k,228) - lu(k,1704) * b(k,216) + end do + end subroutine lu_slv05 + subroutine lu_slv06( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,218) = b(k,218) - lu(k,1720) * b(k,217) + b(k,219) = b(k,219) - lu(k,1721) * b(k,217) + b(k,220) = b(k,220) - lu(k,1722) * b(k,217) + b(k,221) = b(k,221) - lu(k,1723) * b(k,217) + b(k,222) = b(k,222) - lu(k,1724) * b(k,217) + b(k,223) = b(k,223) - lu(k,1725) * b(k,217) + b(k,224) = b(k,224) - lu(k,1726) * b(k,217) + b(k,225) = b(k,225) - lu(k,1727) * b(k,217) + b(k,226) = b(k,226) - lu(k,1728) * b(k,217) + b(k,227) = b(k,227) - lu(k,1729) * b(k,217) + b(k,228) = b(k,228) - lu(k,1730) * b(k,217) + b(k,219) = b(k,219) - lu(k,1778) * b(k,218) + b(k,220) = b(k,220) - lu(k,1779) * b(k,218) + b(k,221) = b(k,221) - lu(k,1780) * b(k,218) + b(k,222) = b(k,222) - lu(k,1781) * b(k,218) + b(k,223) = b(k,223) - lu(k,1782) * b(k,218) + b(k,224) = b(k,224) - lu(k,1783) * b(k,218) + b(k,225) = b(k,225) - lu(k,1784) * b(k,218) + b(k,226) = b(k,226) - lu(k,1785) * b(k,218) + b(k,227) = b(k,227) - lu(k,1786) * b(k,218) + b(k,228) = b(k,228) - lu(k,1787) * b(k,218) + b(k,220) = b(k,220) - lu(k,1831) * b(k,219) + b(k,221) = b(k,221) - lu(k,1832) * b(k,219) + b(k,222) = b(k,222) - lu(k,1833) * b(k,219) + b(k,223) = b(k,223) - lu(k,1834) * b(k,219) + b(k,224) = b(k,224) - lu(k,1835) * b(k,219) + b(k,225) = b(k,225) - lu(k,1836) * b(k,219) + b(k,226) = b(k,226) - lu(k,1837) * b(k,219) + b(k,227) = b(k,227) - lu(k,1838) * b(k,219) + b(k,228) = b(k,228) - lu(k,1839) * b(k,219) + b(k,221) = b(k,221) - lu(k,1924) * b(k,220) + b(k,222) = b(k,222) - lu(k,1925) * b(k,220) + b(k,223) = b(k,223) - lu(k,1926) * b(k,220) + b(k,224) = b(k,224) - lu(k,1927) * b(k,220) + b(k,225) = b(k,225) - lu(k,1928) * b(k,220) + b(k,226) = b(k,226) - lu(k,1929) * b(k,220) + b(k,227) = b(k,227) - lu(k,1930) * b(k,220) + b(k,228) = b(k,228) - lu(k,1931) * b(k,220) + b(k,222) = b(k,222) - lu(k,1969) * b(k,221) + b(k,223) = b(k,223) - lu(k,1970) * b(k,221) + b(k,224) = b(k,224) - lu(k,1971) * b(k,221) + b(k,225) = b(k,225) - lu(k,1972) * b(k,221) + b(k,226) = b(k,226) - lu(k,1973) * b(k,221) + b(k,227) = b(k,227) - lu(k,1974) * b(k,221) + b(k,228) = b(k,228) - lu(k,1975) * b(k,221) + b(k,223) = b(k,223) - lu(k,2009) * b(k,222) + b(k,224) = b(k,224) - lu(k,2010) * b(k,222) + b(k,225) = b(k,225) - lu(k,2011) * b(k,222) + b(k,226) = b(k,226) - lu(k,2012) * b(k,222) + b(k,227) = b(k,227) - lu(k,2013) * b(k,222) + b(k,228) = b(k,228) - lu(k,2014) * b(k,222) + b(k,224) = b(k,224) - lu(k,2117) * b(k,223) + b(k,225) = b(k,225) - lu(k,2118) * b(k,223) + b(k,226) = b(k,226) - lu(k,2119) * b(k,223) + b(k,227) = b(k,227) - lu(k,2120) * b(k,223) + b(k,228) = b(k,228) - lu(k,2121) * b(k,223) + b(k,225) = b(k,225) - lu(k,2141) * b(k,224) + b(k,226) = b(k,226) - lu(k,2142) * b(k,224) + b(k,227) = b(k,227) - lu(k,2143) * b(k,224) + b(k,228) = b(k,228) - lu(k,2144) * b(k,224) + b(k,226) = b(k,226) - lu(k,2166) * b(k,225) + b(k,227) = b(k,227) - lu(k,2167) * b(k,225) + b(k,228) = b(k,228) - lu(k,2168) * b(k,225) + b(k,227) = b(k,227) - lu(k,2198) * b(k,226) + b(k,228) = b(k,228) - lu(k,2199) * b(k,226) + b(k,228) = b(k,228) - lu(k,2260) * b(k,227) + end do + end subroutine lu_slv06 + subroutine lu_slv07( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len +!----------------------------------------------------------------------- +! ... Solve U * x = y +!----------------------------------------------------------------------- + b(k,228) = b(k,228) * lu(k,2286) + b(k,227) = b(k,227) - lu(k,2285) * b(k,228) + b(k,226) = b(k,226) - lu(k,2284) * b(k,228) + b(k,225) = b(k,225) - lu(k,2283) * b(k,228) + b(k,224) = b(k,224) - lu(k,2282) * b(k,228) + b(k,223) = b(k,223) - lu(k,2281) * b(k,228) + b(k,222) = b(k,222) - lu(k,2280) * b(k,228) + b(k,221) = b(k,221) - lu(k,2279) * b(k,228) + b(k,220) = b(k,220) - lu(k,2278) * b(k,228) + b(k,219) = b(k,219) - lu(k,2277) * b(k,228) + b(k,218) = b(k,218) - lu(k,2276) * b(k,228) + b(k,217) = b(k,217) - lu(k,2275) * b(k,228) + b(k,216) = b(k,216) - lu(k,2274) * b(k,228) + b(k,215) = b(k,215) - lu(k,2273) * b(k,228) + b(k,214) = b(k,214) - lu(k,2272) * b(k,228) + b(k,213) = b(k,213) - lu(k,2271) * b(k,228) + b(k,212) = b(k,212) - lu(k,2270) * b(k,228) + b(k,211) = b(k,211) - lu(k,2269) * b(k,228) + b(k,210) = b(k,210) - lu(k,2268) * b(k,228) + b(k,209) = b(k,209) - lu(k,2267) * b(k,228) + b(k,202) = b(k,202) - lu(k,2266) * b(k,228) + b(k,176) = b(k,176) - lu(k,2265) * b(k,228) + b(k,174) = b(k,174) - lu(k,2264) * b(k,228) + b(k,99) = b(k,99) - lu(k,2263) * b(k,228) + b(k,92) = b(k,92) - lu(k,2262) * b(k,228) + b(k,64) = b(k,64) - lu(k,2261) * b(k,228) + b(k,227) = b(k,227) * lu(k,2259) + b(k,226) = b(k,226) - lu(k,2258) * b(k,227) + b(k,225) = b(k,225) - lu(k,2257) * b(k,227) + b(k,224) = b(k,224) - lu(k,2256) * b(k,227) + b(k,223) = b(k,223) - lu(k,2255) * b(k,227) + b(k,222) = b(k,222) - lu(k,2254) * b(k,227) + b(k,221) = b(k,221) - lu(k,2253) * b(k,227) + b(k,220) = b(k,220) - lu(k,2252) * b(k,227) + b(k,219) = b(k,219) - lu(k,2251) * b(k,227) + b(k,218) = b(k,218) - lu(k,2250) * b(k,227) + b(k,217) = b(k,217) - lu(k,2249) * b(k,227) + b(k,216) = b(k,216) - lu(k,2248) * b(k,227) + b(k,215) = b(k,215) - lu(k,2247) * b(k,227) + b(k,214) = b(k,214) - lu(k,2246) * b(k,227) + b(k,213) = b(k,213) - lu(k,2245) * b(k,227) + b(k,212) = b(k,212) - lu(k,2244) * b(k,227) + b(k,211) = b(k,211) - lu(k,2243) * b(k,227) + b(k,210) = b(k,210) - lu(k,2242) * b(k,227) + b(k,208) = b(k,208) - lu(k,2241) * b(k,227) + b(k,207) = b(k,207) - lu(k,2240) * b(k,227) + b(k,206) = b(k,206) - lu(k,2239) * b(k,227) + b(k,205) = b(k,205) - lu(k,2238) * b(k,227) + b(k,204) = b(k,204) - lu(k,2237) * b(k,227) + b(k,203) = b(k,203) - lu(k,2236) * b(k,227) + b(k,202) = b(k,202) - lu(k,2235) * b(k,227) + b(k,201) = b(k,201) - lu(k,2234) * b(k,227) + b(k,200) = b(k,200) - lu(k,2233) * b(k,227) + b(k,199) = b(k,199) - lu(k,2232) * b(k,227) + b(k,196) = b(k,196) - lu(k,2231) * b(k,227) + b(k,195) = b(k,195) - lu(k,2230) * b(k,227) + b(k,194) = b(k,194) - lu(k,2229) * b(k,227) + b(k,193) = b(k,193) - lu(k,2228) * b(k,227) + b(k,192) = b(k,192) - lu(k,2227) * b(k,227) + b(k,191) = b(k,191) - lu(k,2226) * b(k,227) + b(k,189) = b(k,189) - lu(k,2225) * b(k,227) + b(k,188) = b(k,188) - lu(k,2224) * b(k,227) + b(k,187) = b(k,187) - lu(k,2223) * b(k,227) + b(k,186) = b(k,186) - lu(k,2222) * b(k,227) + b(k,185) = b(k,185) - lu(k,2221) * b(k,227) + b(k,184) = b(k,184) - lu(k,2220) * b(k,227) + b(k,183) = b(k,183) - lu(k,2219) * b(k,227) + b(k,182) = b(k,182) - lu(k,2218) * b(k,227) + b(k,181) = b(k,181) - lu(k,2217) * b(k,227) + b(k,178) = b(k,178) - lu(k,2216) * b(k,227) + b(k,174) = b(k,174) - lu(k,2215) * b(k,227) + b(k,173) = b(k,173) - lu(k,2214) * b(k,227) + b(k,169) = b(k,169) - lu(k,2213) * b(k,227) + b(k,159) = b(k,159) - lu(k,2212) * b(k,227) + b(k,157) = b(k,157) - lu(k,2211) * b(k,227) + b(k,151) = b(k,151) - lu(k,2210) * b(k,227) + b(k,141) = b(k,141) - lu(k,2209) * b(k,227) + b(k,136) = b(k,136) - lu(k,2208) * b(k,227) + b(k,129) = b(k,129) - lu(k,2207) * b(k,227) + b(k,115) = b(k,115) - lu(k,2206) * b(k,227) + b(k,84) = b(k,84) - lu(k,2205) * b(k,227) + b(k,42) = b(k,42) - lu(k,2204) * b(k,227) + b(k,41) = b(k,41) - lu(k,2203) * b(k,227) + b(k,40) = b(k,40) - lu(k,2202) * b(k,227) + b(k,39) = b(k,39) - lu(k,2201) * b(k,227) + b(k,38) = b(k,38) - lu(k,2200) * b(k,227) + b(k,226) = b(k,226) * lu(k,2197) + b(k,225) = b(k,225) - lu(k,2196) * b(k,226) + b(k,224) = b(k,224) - lu(k,2195) * b(k,226) + b(k,223) = b(k,223) - lu(k,2194) * b(k,226) + b(k,222) = b(k,222) - lu(k,2193) * b(k,226) + b(k,221) = b(k,221) - lu(k,2192) * b(k,226) + b(k,220) = b(k,220) - lu(k,2191) * b(k,226) + b(k,219) = b(k,219) - lu(k,2190) * b(k,226) + b(k,218) = b(k,218) - lu(k,2189) * b(k,226) + b(k,217) = b(k,217) - lu(k,2188) * b(k,226) + b(k,216) = b(k,216) - lu(k,2187) * b(k,226) + b(k,215) = b(k,215) - lu(k,2186) * b(k,226) + b(k,214) = b(k,214) - lu(k,2185) * b(k,226) + b(k,213) = b(k,213) - lu(k,2184) * b(k,226) + b(k,212) = b(k,212) - lu(k,2183) * b(k,226) + b(k,211) = b(k,211) - lu(k,2182) * b(k,226) + b(k,210) = b(k,210) - lu(k,2181) * b(k,226) + b(k,209) = b(k,209) - lu(k,2180) * b(k,226) + b(k,202) = b(k,202) - lu(k,2179) * b(k,226) + b(k,194) = b(k,194) - lu(k,2178) * b(k,226) + b(k,179) = b(k,179) - lu(k,2177) * b(k,226) + b(k,174) = b(k,174) - lu(k,2176) * b(k,226) + b(k,171) = b(k,171) - lu(k,2175) * b(k,226) + b(k,170) = b(k,170) - lu(k,2174) * b(k,226) + b(k,166) = b(k,166) - lu(k,2173) * b(k,226) + b(k,148) = b(k,148) - lu(k,2172) * b(k,226) + b(k,142) = b(k,142) - lu(k,2171) * b(k,226) + b(k,136) = b(k,136) - lu(k,2170) * b(k,226) + b(k,112) = b(k,112) - lu(k,2169) * b(k,226) + b(k,225) = b(k,225) * lu(k,2165) + b(k,224) = b(k,224) - lu(k,2164) * b(k,225) + b(k,223) = b(k,223) - lu(k,2163) * b(k,225) + b(k,222) = b(k,222) - lu(k,2162) * b(k,225) + b(k,221) = b(k,221) - lu(k,2161) * b(k,225) + b(k,220) = b(k,220) - lu(k,2160) * b(k,225) + b(k,219) = b(k,219) - lu(k,2159) * b(k,225) + b(k,218) = b(k,218) - lu(k,2158) * b(k,225) + b(k,217) = b(k,217) - lu(k,2157) * b(k,225) + b(k,216) = b(k,216) - lu(k,2156) * b(k,225) + b(k,215) = b(k,215) - lu(k,2155) * b(k,225) + b(k,214) = b(k,214) - lu(k,2154) * b(k,225) + b(k,213) = b(k,213) - lu(k,2153) * b(k,225) + b(k,212) = b(k,212) - lu(k,2152) * b(k,225) + b(k,210) = b(k,210) - lu(k,2151) * b(k,225) + b(k,202) = b(k,202) - lu(k,2150) * b(k,225) + b(k,174) = b(k,174) - lu(k,2149) * b(k,225) + b(k,166) = b(k,166) - lu(k,2148) * b(k,225) + b(k,142) = b(k,142) - lu(k,2147) * b(k,225) + b(k,106) = b(k,106) - lu(k,2146) * b(k,225) + b(k,85) = b(k,85) - lu(k,2145) * b(k,225) + b(k,224) = b(k,224) * lu(k,2140) + b(k,223) = b(k,223) - lu(k,2139) * b(k,224) + b(k,222) = b(k,222) - lu(k,2138) * b(k,224) + b(k,221) = b(k,221) - lu(k,2137) * b(k,224) + b(k,220) = b(k,220) - lu(k,2136) * b(k,224) + b(k,219) = b(k,219) - lu(k,2135) * b(k,224) + b(k,218) = b(k,218) - lu(k,2134) * b(k,224) + b(k,217) = b(k,217) - lu(k,2133) * b(k,224) + b(k,216) = b(k,216) - lu(k,2132) * b(k,224) + b(k,215) = b(k,215) - lu(k,2131) * b(k,224) + b(k,214) = b(k,214) - lu(k,2130) * b(k,224) + b(k,213) = b(k,213) - lu(k,2129) * b(k,224) + b(k,212) = b(k,212) - lu(k,2128) * b(k,224) + b(k,210) = b(k,210) - lu(k,2127) * b(k,224) + b(k,179) = b(k,179) - lu(k,2126) * b(k,224) + b(k,171) = b(k,171) - lu(k,2125) * b(k,224) + b(k,166) = b(k,166) - lu(k,2124) * b(k,224) + b(k,85) = b(k,85) - lu(k,2123) * b(k,224) + b(k,74) = b(k,74) - lu(k,2122) * b(k,224) + b(k,223) = b(k,223) * lu(k,2116) + b(k,222) = b(k,222) - lu(k,2115) * b(k,223) + b(k,221) = b(k,221) - lu(k,2114) * b(k,223) + b(k,220) = b(k,220) - lu(k,2113) * b(k,223) + b(k,219) = b(k,219) - lu(k,2112) * b(k,223) + b(k,218) = b(k,218) - lu(k,2111) * b(k,223) + b(k,217) = b(k,217) - lu(k,2110) * b(k,223) + b(k,216) = b(k,216) - lu(k,2109) * b(k,223) + b(k,215) = b(k,215) - lu(k,2108) * b(k,223) + b(k,214) = b(k,214) - lu(k,2107) * b(k,223) + b(k,213) = b(k,213) - lu(k,2106) * b(k,223) + b(k,212) = b(k,212) - lu(k,2105) * b(k,223) + b(k,211) = b(k,211) - lu(k,2104) * b(k,223) + b(k,210) = b(k,210) - lu(k,2103) * b(k,223) + b(k,209) = b(k,209) - lu(k,2102) * b(k,223) + b(k,208) = b(k,208) - lu(k,2101) * b(k,223) + b(k,207) = b(k,207) - lu(k,2100) * b(k,223) + b(k,206) = b(k,206) - lu(k,2099) * b(k,223) + b(k,205) = b(k,205) - lu(k,2098) * b(k,223) + b(k,204) = b(k,204) - lu(k,2097) * b(k,223) + b(k,203) = b(k,203) - lu(k,2096) * b(k,223) + b(k,201) = b(k,201) - lu(k,2095) * b(k,223) + b(k,200) = b(k,200) - lu(k,2094) * b(k,223) + b(k,199) = b(k,199) - lu(k,2093) * b(k,223) + b(k,198) = b(k,198) - lu(k,2092) * b(k,223) + b(k,196) = b(k,196) - lu(k,2091) * b(k,223) + b(k,195) = b(k,195) - lu(k,2090) * b(k,223) + b(k,194) = b(k,194) - lu(k,2089) * b(k,223) + b(k,193) = b(k,193) - lu(k,2088) * b(k,223) + b(k,192) = b(k,192) - lu(k,2087) * b(k,223) + b(k,191) = b(k,191) - lu(k,2086) * b(k,223) + b(k,189) = b(k,189) - lu(k,2085) * b(k,223) + b(k,188) = b(k,188) - lu(k,2084) * b(k,223) + b(k,185) = b(k,185) - lu(k,2083) * b(k,223) + b(k,184) = b(k,184) - lu(k,2082) * b(k,223) + b(k,182) = b(k,182) - lu(k,2081) * b(k,223) + b(k,181) = b(k,181) - lu(k,2080) * b(k,223) + b(k,180) = b(k,180) - lu(k,2079) * b(k,223) + b(k,178) = b(k,178) - lu(k,2078) * b(k,223) + b(k,177) = b(k,177) - lu(k,2077) * b(k,223) + b(k,175) = b(k,175) - lu(k,2076) * b(k,223) + b(k,172) = b(k,172) - lu(k,2075) * b(k,223) + b(k,171) = b(k,171) - lu(k,2074) * b(k,223) + b(k,170) = b(k,170) - lu(k,2073) * b(k,223) + b(k,169) = b(k,169) - lu(k,2072) * b(k,223) + b(k,167) = b(k,167) - lu(k,2071) * b(k,223) + b(k,166) = b(k,166) - lu(k,2070) * b(k,223) + b(k,165) = b(k,165) - lu(k,2069) * b(k,223) + b(k,164) = b(k,164) - lu(k,2068) * b(k,223) + b(k,163) = b(k,163) - lu(k,2067) * b(k,223) + b(k,162) = b(k,162) - lu(k,2066) * b(k,223) + b(k,161) = b(k,161) - lu(k,2065) * b(k,223) + b(k,160) = b(k,160) - lu(k,2064) * b(k,223) + b(k,159) = b(k,159) - lu(k,2063) * b(k,223) + b(k,158) = b(k,158) - lu(k,2062) * b(k,223) + b(k,157) = b(k,157) - lu(k,2061) * b(k,223) + b(k,156) = b(k,156) - lu(k,2060) * b(k,223) + b(k,154) = b(k,154) - lu(k,2059) * b(k,223) + b(k,153) = b(k,153) - lu(k,2058) * b(k,223) + b(k,152) = b(k,152) - lu(k,2057) * b(k,223) + b(k,151) = b(k,151) - lu(k,2056) * b(k,223) + b(k,149) = b(k,149) - lu(k,2055) * b(k,223) + b(k,148) = b(k,148) - lu(k,2054) * b(k,223) + b(k,140) = b(k,140) - lu(k,2053) * b(k,223) + b(k,137) = b(k,137) - lu(k,2052) * b(k,223) + b(k,134) = b(k,134) - lu(k,2051) * b(k,223) + b(k,132) = b(k,132) - lu(k,2050) * b(k,223) + b(k,131) = b(k,131) - lu(k,2049) * b(k,223) + b(k,129) = b(k,129) - lu(k,2048) * b(k,223) + b(k,128) = b(k,128) - lu(k,2047) * b(k,223) + b(k,127) = b(k,127) - lu(k,2046) * b(k,223) + b(k,126) = b(k,126) - lu(k,2045) * b(k,223) + b(k,125) = b(k,125) - lu(k,2044) * b(k,223) + b(k,124) = b(k,124) - lu(k,2043) * b(k,223) + b(k,123) = b(k,123) - lu(k,2042) * b(k,223) + b(k,122) = b(k,122) - lu(k,2041) * b(k,223) + b(k,121) = b(k,121) - lu(k,2040) * b(k,223) + b(k,120) = b(k,120) - lu(k,2039) * b(k,223) + b(k,119) = b(k,119) - lu(k,2038) * b(k,223) + b(k,118) = b(k,118) - lu(k,2037) * b(k,223) + b(k,117) = b(k,117) - lu(k,2036) * b(k,223) + b(k,109) = b(k,109) - lu(k,2035) * b(k,223) + b(k,108) = b(k,108) - lu(k,2034) * b(k,223) + b(k,107) = b(k,107) - lu(k,2033) * b(k,223) + b(k,104) = b(k,104) - lu(k,2032) * b(k,223) + b(k,103) = b(k,103) - lu(k,2031) * b(k,223) + b(k,95) = b(k,95) - lu(k,2030) * b(k,223) + b(k,94) = b(k,94) - lu(k,2029) * b(k,223) + b(k,80) = b(k,80) - lu(k,2028) * b(k,223) + b(k,63) = b(k,63) - lu(k,2027) * b(k,223) + b(k,52) = b(k,52) - lu(k,2026) * b(k,223) + b(k,51) = b(k,51) - lu(k,2025) * b(k,223) + b(k,50) = b(k,50) - lu(k,2024) * b(k,223) + b(k,48) = b(k,48) - lu(k,2023) * b(k,223) + b(k,47) = b(k,47) - lu(k,2022) * b(k,223) + b(k,46) = b(k,46) - lu(k,2021) * b(k,223) + b(k,45) = b(k,45) - lu(k,2020) * b(k,223) + b(k,42) = b(k,42) - lu(k,2019) * b(k,223) + b(k,41) = b(k,41) - lu(k,2018) * b(k,223) + b(k,40) = b(k,40) - lu(k,2017) * b(k,223) + b(k,39) = b(k,39) - lu(k,2016) * b(k,223) + b(k,38) = b(k,38) - lu(k,2015) * b(k,223) + end do + end subroutine lu_slv07 + subroutine lu_slv08( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,222) = b(k,222) * lu(k,2008) + b(k,221) = b(k,221) - lu(k,2007) * b(k,222) + b(k,220) = b(k,220) - lu(k,2006) * b(k,222) + b(k,219) = b(k,219) - lu(k,2005) * b(k,222) + b(k,218) = b(k,218) - lu(k,2004) * b(k,222) + b(k,217) = b(k,217) - lu(k,2003) * b(k,222) + b(k,216) = b(k,216) - lu(k,2002) * b(k,222) + b(k,215) = b(k,215) - lu(k,2001) * b(k,222) + b(k,214) = b(k,214) - lu(k,2000) * b(k,222) + b(k,213) = b(k,213) - lu(k,1999) * b(k,222) + b(k,212) = b(k,212) - lu(k,1998) * b(k,222) + b(k,211) = b(k,211) - lu(k,1997) * b(k,222) + b(k,210) = b(k,210) - lu(k,1996) * b(k,222) + b(k,209) = b(k,209) - lu(k,1995) * b(k,222) + b(k,208) = b(k,208) - lu(k,1994) * b(k,222) + b(k,194) = b(k,194) - lu(k,1993) * b(k,222) + b(k,192) = b(k,192) - lu(k,1992) * b(k,222) + b(k,191) = b(k,191) - lu(k,1991) * b(k,222) + b(k,185) = b(k,185) - lu(k,1990) * b(k,222) + b(k,182) = b(k,182) - lu(k,1989) * b(k,222) + b(k,179) = b(k,179) - lu(k,1988) * b(k,222) + b(k,172) = b(k,172) - lu(k,1987) * b(k,222) + b(k,171) = b(k,171) - lu(k,1986) * b(k,222) + b(k,159) = b(k,159) - lu(k,1985) * b(k,222) + b(k,148) = b(k,148) - lu(k,1984) * b(k,222) + b(k,147) = b(k,147) - lu(k,1983) * b(k,222) + b(k,141) = b(k,141) - lu(k,1982) * b(k,222) + b(k,130) = b(k,130) - lu(k,1981) * b(k,222) + b(k,116) = b(k,116) - lu(k,1980) * b(k,222) + b(k,113) = b(k,113) - lu(k,1979) * b(k,222) + b(k,102) = b(k,102) - lu(k,1978) * b(k,222) + b(k,100) = b(k,100) - lu(k,1977) * b(k,222) + b(k,74) = b(k,74) - lu(k,1976) * b(k,222) + b(k,221) = b(k,221) * lu(k,1968) + b(k,220) = b(k,220) - lu(k,1967) * b(k,221) + b(k,219) = b(k,219) - lu(k,1966) * b(k,221) + b(k,218) = b(k,218) - lu(k,1965) * b(k,221) + b(k,217) = b(k,217) - lu(k,1964) * b(k,221) + b(k,216) = b(k,216) - lu(k,1963) * b(k,221) + b(k,215) = b(k,215) - lu(k,1962) * b(k,221) + b(k,214) = b(k,214) - lu(k,1961) * b(k,221) + b(k,213) = b(k,213) - lu(k,1960) * b(k,221) + b(k,212) = b(k,212) - lu(k,1959) * b(k,221) + b(k,211) = b(k,211) - lu(k,1958) * b(k,221) + b(k,210) = b(k,210) - lu(k,1957) * b(k,221) + b(k,208) = b(k,208) - lu(k,1956) * b(k,221) + b(k,207) = b(k,207) - lu(k,1955) * b(k,221) + b(k,202) = b(k,202) - lu(k,1954) * b(k,221) + b(k,201) = b(k,201) - lu(k,1953) * b(k,221) + b(k,196) = b(k,196) - lu(k,1952) * b(k,221) + b(k,194) = b(k,194) - lu(k,1951) * b(k,221) + b(k,185) = b(k,185) - lu(k,1950) * b(k,221) + b(k,179) = b(k,179) - lu(k,1949) * b(k,221) + b(k,177) = b(k,177) - lu(k,1948) * b(k,221) + b(k,174) = b(k,174) - lu(k,1947) * b(k,221) + b(k,169) = b(k,169) - lu(k,1946) * b(k,221) + b(k,166) = b(k,166) - lu(k,1945) * b(k,221) + b(k,164) = b(k,164) - lu(k,1944) * b(k,221) + b(k,160) = b(k,160) - lu(k,1943) * b(k,221) + b(k,151) = b(k,151) - lu(k,1942) * b(k,221) + b(k,144) = b(k,144) - lu(k,1941) * b(k,221) + b(k,142) = b(k,142) - lu(k,1940) * b(k,221) + b(k,138) = b(k,138) - lu(k,1939) * b(k,221) + b(k,137) = b(k,137) - lu(k,1938) * b(k,221) + b(k,133) = b(k,133) - lu(k,1937) * b(k,221) + b(k,129) = b(k,129) - lu(k,1936) * b(k,221) + b(k,122) = b(k,122) - lu(k,1935) * b(k,221) + b(k,96) = b(k,96) - lu(k,1934) * b(k,221) + b(k,76) = b(k,76) - lu(k,1933) * b(k,221) + b(k,66) = b(k,66) - lu(k,1932) * b(k,221) + b(k,220) = b(k,220) * lu(k,1923) + b(k,219) = b(k,219) - lu(k,1922) * b(k,220) + b(k,218) = b(k,218) - lu(k,1921) * b(k,220) + b(k,217) = b(k,217) - lu(k,1920) * b(k,220) + b(k,216) = b(k,216) - lu(k,1919) * b(k,220) + b(k,215) = b(k,215) - lu(k,1918) * b(k,220) + b(k,214) = b(k,214) - lu(k,1917) * b(k,220) + b(k,213) = b(k,213) - lu(k,1916) * b(k,220) + b(k,212) = b(k,212) - lu(k,1915) * b(k,220) + b(k,211) = b(k,211) - lu(k,1914) * b(k,220) + b(k,210) = b(k,210) - lu(k,1913) * b(k,220) + b(k,208) = b(k,208) - lu(k,1912) * b(k,220) + b(k,207) = b(k,207) - lu(k,1911) * b(k,220) + b(k,206) = b(k,206) - lu(k,1910) * b(k,220) + b(k,205) = b(k,205) - lu(k,1909) * b(k,220) + b(k,204) = b(k,204) - lu(k,1908) * b(k,220) + b(k,203) = b(k,203) - lu(k,1907) * b(k,220) + b(k,201) = b(k,201) - lu(k,1906) * b(k,220) + b(k,200) = b(k,200) - lu(k,1905) * b(k,220) + b(k,199) = b(k,199) - lu(k,1904) * b(k,220) + b(k,198) = b(k,198) - lu(k,1903) * b(k,220) + b(k,197) = b(k,197) - lu(k,1902) * b(k,220) + b(k,196) = b(k,196) - lu(k,1901) * b(k,220) + b(k,195) = b(k,195) - lu(k,1900) * b(k,220) + b(k,194) = b(k,194) - lu(k,1899) * b(k,220) + b(k,193) = b(k,193) - lu(k,1898) * b(k,220) + b(k,192) = b(k,192) - lu(k,1897) * b(k,220) + b(k,191) = b(k,191) - lu(k,1896) * b(k,220) + b(k,190) = b(k,190) - lu(k,1895) * b(k,220) + b(k,189) = b(k,189) - lu(k,1894) * b(k,220) + b(k,188) = b(k,188) - lu(k,1893) * b(k,220) + b(k,185) = b(k,185) - lu(k,1892) * b(k,220) + b(k,184) = b(k,184) - lu(k,1891) * b(k,220) + b(k,182) = b(k,182) - lu(k,1890) * b(k,220) + b(k,181) = b(k,181) - lu(k,1889) * b(k,220) + b(k,180) = b(k,180) - lu(k,1888) * b(k,220) + b(k,178) = b(k,178) - lu(k,1887) * b(k,220) + b(k,177) = b(k,177) - lu(k,1886) * b(k,220) + b(k,175) = b(k,175) - lu(k,1885) * b(k,220) + b(k,172) = b(k,172) - lu(k,1884) * b(k,220) + b(k,169) = b(k,169) - lu(k,1883) * b(k,220) + b(k,167) = b(k,167) - lu(k,1882) * b(k,220) + b(k,165) = b(k,165) - lu(k,1881) * b(k,220) + b(k,164) = b(k,164) - lu(k,1880) * b(k,220) + b(k,163) = b(k,163) - lu(k,1879) * b(k,220) + b(k,161) = b(k,161) - lu(k,1878) * b(k,220) + b(k,160) = b(k,160) - lu(k,1877) * b(k,220) + b(k,159) = b(k,159) - lu(k,1876) * b(k,220) + b(k,156) = b(k,156) - lu(k,1875) * b(k,220) + b(k,155) = b(k,155) - lu(k,1874) * b(k,220) + b(k,151) = b(k,151) - lu(k,1873) * b(k,220) + b(k,150) = b(k,150) - lu(k,1872) * b(k,220) + b(k,146) = b(k,146) - lu(k,1871) * b(k,220) + b(k,145) = b(k,145) - lu(k,1870) * b(k,220) + b(k,143) = b(k,143) - lu(k,1869) * b(k,220) + b(k,139) = b(k,139) - lu(k,1868) * b(k,220) + b(k,137) = b(k,137) - lu(k,1867) * b(k,220) + b(k,135) = b(k,135) - lu(k,1866) * b(k,220) + b(k,134) = b(k,134) - lu(k,1865) * b(k,220) + b(k,133) = b(k,133) - lu(k,1864) * b(k,220) + b(k,132) = b(k,132) - lu(k,1863) * b(k,220) + b(k,129) = b(k,129) - lu(k,1862) * b(k,220) + b(k,128) = b(k,128) - lu(k,1861) * b(k,220) + b(k,126) = b(k,126) - lu(k,1860) * b(k,220) + b(k,125) = b(k,125) - lu(k,1859) * b(k,220) + b(k,124) = b(k,124) - lu(k,1858) * b(k,220) + b(k,110) = b(k,110) - lu(k,1857) * b(k,220) + b(k,105) = b(k,105) - lu(k,1856) * b(k,220) + b(k,97) = b(k,97) - lu(k,1855) * b(k,220) + b(k,95) = b(k,95) - lu(k,1854) * b(k,220) + b(k,87) = b(k,87) - lu(k,1853) * b(k,220) + b(k,86) = b(k,86) - lu(k,1852) * b(k,220) + b(k,52) = b(k,52) - lu(k,1851) * b(k,220) + b(k,51) = b(k,51) - lu(k,1850) * b(k,220) + b(k,50) = b(k,50) - lu(k,1849) * b(k,220) + b(k,48) = b(k,48) - lu(k,1848) * b(k,220) + b(k,47) = b(k,47) - lu(k,1847) * b(k,220) + b(k,46) = b(k,46) - lu(k,1846) * b(k,220) + b(k,45) = b(k,45) - lu(k,1845) * b(k,220) + b(k,42) = b(k,42) - lu(k,1844) * b(k,220) + b(k,41) = b(k,41) - lu(k,1843) * b(k,220) + b(k,40) = b(k,40) - lu(k,1842) * b(k,220) + b(k,39) = b(k,39) - lu(k,1841) * b(k,220) + b(k,38) = b(k,38) - lu(k,1840) * b(k,220) + b(k,219) = b(k,219) * lu(k,1830) + b(k,218) = b(k,218) - lu(k,1829) * b(k,219) + b(k,217) = b(k,217) - lu(k,1828) * b(k,219) + b(k,216) = b(k,216) - lu(k,1827) * b(k,219) + b(k,215) = b(k,215) - lu(k,1826) * b(k,219) + b(k,214) = b(k,214) - lu(k,1825) * b(k,219) + b(k,213) = b(k,213) - lu(k,1824) * b(k,219) + b(k,212) = b(k,212) - lu(k,1823) * b(k,219) + b(k,211) = b(k,211) - lu(k,1822) * b(k,219) + b(k,208) = b(k,208) - lu(k,1821) * b(k,219) + b(k,207) = b(k,207) - lu(k,1820) * b(k,219) + b(k,206) = b(k,206) - lu(k,1819) * b(k,219) + b(k,205) = b(k,205) - lu(k,1818) * b(k,219) + b(k,204) = b(k,204) - lu(k,1817) * b(k,219) + b(k,203) = b(k,203) - lu(k,1816) * b(k,219) + b(k,201) = b(k,201) - lu(k,1815) * b(k,219) + b(k,200) = b(k,200) - lu(k,1814) * b(k,219) + b(k,199) = b(k,199) - lu(k,1813) * b(k,219) + b(k,198) = b(k,198) - lu(k,1812) * b(k,219) + b(k,196) = b(k,196) - lu(k,1811) * b(k,219) + b(k,195) = b(k,195) - lu(k,1810) * b(k,219) + b(k,194) = b(k,194) - lu(k,1809) * b(k,219) + b(k,193) = b(k,193) - lu(k,1808) * b(k,219) + b(k,192) = b(k,192) - lu(k,1807) * b(k,219) + b(k,191) = b(k,191) - lu(k,1806) * b(k,219) + b(k,190) = b(k,190) - lu(k,1805) * b(k,219) + b(k,189) = b(k,189) - lu(k,1804) * b(k,219) + b(k,188) = b(k,188) - lu(k,1803) * b(k,219) + b(k,185) = b(k,185) - lu(k,1802) * b(k,219) + b(k,184) = b(k,184) - lu(k,1801) * b(k,219) + b(k,181) = b(k,181) - lu(k,1800) * b(k,219) + b(k,180) = b(k,180) - lu(k,1799) * b(k,219) + b(k,175) = b(k,175) - lu(k,1798) * b(k,219) + b(k,172) = b(k,172) - lu(k,1797) * b(k,219) + b(k,169) = b(k,169) - lu(k,1796) * b(k,219) + b(k,168) = b(k,168) - lu(k,1795) * b(k,219) + b(k,167) = b(k,167) - lu(k,1794) * b(k,219) + b(k,157) = b(k,157) - lu(k,1793) * b(k,219) + b(k,150) = b(k,150) - lu(k,1792) * b(k,219) + b(k,127) = b(k,127) - lu(k,1791) * b(k,219) + b(k,114) = b(k,114) - lu(k,1790) * b(k,219) + b(k,110) = b(k,110) - lu(k,1789) * b(k,219) + b(k,93) = b(k,93) - lu(k,1788) * b(k,219) + b(k,218) = b(k,218) * lu(k,1777) + b(k,217) = b(k,217) - lu(k,1776) * b(k,218) + b(k,216) = b(k,216) - lu(k,1775) * b(k,218) + b(k,215) = b(k,215) - lu(k,1774) * b(k,218) + b(k,214) = b(k,214) - lu(k,1773) * b(k,218) + b(k,213) = b(k,213) - lu(k,1772) * b(k,218) + b(k,212) = b(k,212) - lu(k,1771) * b(k,218) + b(k,211) = b(k,211) - lu(k,1770) * b(k,218) + b(k,210) = b(k,210) - lu(k,1769) * b(k,218) + b(k,208) = b(k,208) - lu(k,1768) * b(k,218) + b(k,207) = b(k,207) - lu(k,1767) * b(k,218) + b(k,206) = b(k,206) - lu(k,1766) * b(k,218) + b(k,205) = b(k,205) - lu(k,1765) * b(k,218) + b(k,204) = b(k,204) - lu(k,1764) * b(k,218) + b(k,203) = b(k,203) - lu(k,1763) * b(k,218) + b(k,202) = b(k,202) - lu(k,1762) * b(k,218) + b(k,201) = b(k,201) - lu(k,1761) * b(k,218) + b(k,200) = b(k,200) - lu(k,1760) * b(k,218) + b(k,199) = b(k,199) - lu(k,1759) * b(k,218) + b(k,198) = b(k,198) - lu(k,1758) * b(k,218) + b(k,197) = b(k,197) - lu(k,1757) * b(k,218) + b(k,196) = b(k,196) - lu(k,1756) * b(k,218) + b(k,195) = b(k,195) - lu(k,1755) * b(k,218) + b(k,194) = b(k,194) - lu(k,1754) * b(k,218) + b(k,193) = b(k,193) - lu(k,1753) * b(k,218) + b(k,192) = b(k,192) - lu(k,1752) * b(k,218) + b(k,191) = b(k,191) - lu(k,1751) * b(k,218) + b(k,190) = b(k,190) - lu(k,1750) * b(k,218) + b(k,189) = b(k,189) - lu(k,1749) * b(k,218) + b(k,188) = b(k,188) - lu(k,1748) * b(k,218) + b(k,187) = b(k,187) - lu(k,1747) * b(k,218) + b(k,186) = b(k,186) - lu(k,1746) * b(k,218) + b(k,185) = b(k,185) - lu(k,1745) * b(k,218) + b(k,184) = b(k,184) - lu(k,1744) * b(k,218) + b(k,183) = b(k,183) - lu(k,1743) * b(k,218) + b(k,182) = b(k,182) - lu(k,1742) * b(k,218) + b(k,181) = b(k,181) - lu(k,1741) * b(k,218) + b(k,175) = b(k,175) - lu(k,1740) * b(k,218) + b(k,174) = b(k,174) - lu(k,1739) * b(k,218) + b(k,173) = b(k,173) - lu(k,1738) * b(k,218) + b(k,143) = b(k,143) - lu(k,1737) * b(k,218) + b(k,111) = b(k,111) - lu(k,1736) * b(k,218) + b(k,110) = b(k,110) - lu(k,1735) * b(k,218) + b(k,98) = b(k,98) - lu(k,1734) * b(k,218) + b(k,96) = b(k,96) - lu(k,1733) * b(k,218) + b(k,42) = b(k,42) - lu(k,1732) * b(k,218) + b(k,41) = b(k,41) - lu(k,1731) * b(k,218) + end do + end subroutine lu_slv08 + subroutine lu_slv09( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,217) = b(k,217) * lu(k,1719) + b(k,216) = b(k,216) - lu(k,1718) * b(k,217) + b(k,215) = b(k,215) - lu(k,1717) * b(k,217) + b(k,214) = b(k,214) - lu(k,1716) * b(k,217) + b(k,213) = b(k,213) - lu(k,1715) * b(k,217) + b(k,212) = b(k,212) - lu(k,1714) * b(k,217) + b(k,210) = b(k,210) - lu(k,1713) * b(k,217) + b(k,202) = b(k,202) - lu(k,1712) * b(k,217) + b(k,179) = b(k,179) - lu(k,1711) * b(k,217) + b(k,174) = b(k,174) - lu(k,1710) * b(k,217) + b(k,171) = b(k,171) - lu(k,1709) * b(k,217) + b(k,106) = b(k,106) - lu(k,1708) * b(k,217) + b(k,85) = b(k,85) - lu(k,1707) * b(k,217) + b(k,74) = b(k,74) - lu(k,1706) * b(k,217) + b(k,53) = b(k,53) - lu(k,1705) * b(k,217) + b(k,216) = b(k,216) * lu(k,1692) + b(k,215) = b(k,215) - lu(k,1691) * b(k,216) + b(k,214) = b(k,214) - lu(k,1690) * b(k,216) + b(k,213) = b(k,213) - lu(k,1689) * b(k,216) + b(k,212) = b(k,212) - lu(k,1688) * b(k,216) + b(k,211) = b(k,211) - lu(k,1687) * b(k,216) + b(k,210) = b(k,210) - lu(k,1686) * b(k,216) + b(k,209) = b(k,209) - lu(k,1685) * b(k,216) + b(k,208) = b(k,208) - lu(k,1684) * b(k,216) + b(k,207) = b(k,207) - lu(k,1683) * b(k,216) + b(k,206) = b(k,206) - lu(k,1682) * b(k,216) + b(k,205) = b(k,205) - lu(k,1681) * b(k,216) + b(k,204) = b(k,204) - lu(k,1680) * b(k,216) + b(k,203) = b(k,203) - lu(k,1679) * b(k,216) + b(k,202) = b(k,202) - lu(k,1678) * b(k,216) + b(k,201) = b(k,201) - lu(k,1677) * b(k,216) + b(k,200) = b(k,200) - lu(k,1676) * b(k,216) + b(k,199) = b(k,199) - lu(k,1675) * b(k,216) + b(k,198) = b(k,198) - lu(k,1674) * b(k,216) + b(k,197) = b(k,197) - lu(k,1673) * b(k,216) + b(k,196) = b(k,196) - lu(k,1672) * b(k,216) + b(k,195) = b(k,195) - lu(k,1671) * b(k,216) + b(k,194) = b(k,194) - lu(k,1670) * b(k,216) + b(k,193) = b(k,193) - lu(k,1669) * b(k,216) + b(k,192) = b(k,192) - lu(k,1668) * b(k,216) + b(k,191) = b(k,191) - lu(k,1667) * b(k,216) + b(k,190) = b(k,190) - lu(k,1666) * b(k,216) + b(k,189) = b(k,189) - lu(k,1665) * b(k,216) + b(k,188) = b(k,188) - lu(k,1664) * b(k,216) + b(k,187) = b(k,187) - lu(k,1663) * b(k,216) + b(k,186) = b(k,186) - lu(k,1662) * b(k,216) + b(k,185) = b(k,185) - lu(k,1661) * b(k,216) + b(k,184) = b(k,184) - lu(k,1660) * b(k,216) + b(k,183) = b(k,183) - lu(k,1659) * b(k,216) + b(k,182) = b(k,182) - lu(k,1658) * b(k,216) + b(k,181) = b(k,181) - lu(k,1657) * b(k,216) + b(k,180) = b(k,180) - lu(k,1656) * b(k,216) + b(k,179) = b(k,179) - lu(k,1655) * b(k,216) + b(k,178) = b(k,178) - lu(k,1654) * b(k,216) + b(k,177) = b(k,177) - lu(k,1653) * b(k,216) + b(k,176) = b(k,176) - lu(k,1652) * b(k,216) + b(k,175) = b(k,175) - lu(k,1651) * b(k,216) + b(k,174) = b(k,174) - lu(k,1650) * b(k,216) + b(k,173) = b(k,173) - lu(k,1649) * b(k,216) + b(k,172) = b(k,172) - lu(k,1648) * b(k,216) + b(k,171) = b(k,171) - lu(k,1647) * b(k,216) + b(k,170) = b(k,170) - lu(k,1646) * b(k,216) + b(k,169) = b(k,169) - lu(k,1645) * b(k,216) + b(k,168) = b(k,168) - lu(k,1644) * b(k,216) + b(k,167) = b(k,167) - lu(k,1643) * b(k,216) + b(k,165) = b(k,165) - lu(k,1642) * b(k,216) + b(k,164) = b(k,164) - lu(k,1641) * b(k,216) + b(k,163) = b(k,163) - lu(k,1640) * b(k,216) + b(k,162) = b(k,162) - lu(k,1639) * b(k,216) + b(k,161) = b(k,161) - lu(k,1638) * b(k,216) + b(k,160) = b(k,160) - lu(k,1637) * b(k,216) + b(k,159) = b(k,159) - lu(k,1636) * b(k,216) + b(k,158) = b(k,158) - lu(k,1635) * b(k,216) + b(k,157) = b(k,157) - lu(k,1634) * b(k,216) + b(k,156) = b(k,156) - lu(k,1633) * b(k,216) + b(k,155) = b(k,155) - lu(k,1632) * b(k,216) + b(k,154) = b(k,154) - lu(k,1631) * b(k,216) + b(k,153) = b(k,153) - lu(k,1630) * b(k,216) + b(k,152) = b(k,152) - lu(k,1629) * b(k,216) + b(k,151) = b(k,151) - lu(k,1628) * b(k,216) + b(k,150) = b(k,150) - lu(k,1627) * b(k,216) + b(k,149) = b(k,149) - lu(k,1626) * b(k,216) + b(k,148) = b(k,148) - lu(k,1625) * b(k,216) + b(k,147) = b(k,147) - lu(k,1624) * b(k,216) + b(k,146) = b(k,146) - lu(k,1623) * b(k,216) + b(k,145) = b(k,145) - lu(k,1622) * b(k,216) + b(k,144) = b(k,144) - lu(k,1621) * b(k,216) + b(k,143) = b(k,143) - lu(k,1620) * b(k,216) + b(k,141) = b(k,141) - lu(k,1619) * b(k,216) + b(k,140) = b(k,140) - lu(k,1618) * b(k,216) + b(k,139) = b(k,139) - lu(k,1617) * b(k,216) + b(k,138) = b(k,138) - lu(k,1616) * b(k,216) + b(k,137) = b(k,137) - lu(k,1615) * b(k,216) + b(k,136) = b(k,136) - lu(k,1614) * b(k,216) + b(k,135) = b(k,135) - lu(k,1613) * b(k,216) + b(k,134) = b(k,134) - lu(k,1612) * b(k,216) + b(k,133) = b(k,133) - lu(k,1611) * b(k,216) + b(k,132) = b(k,132) - lu(k,1610) * b(k,216) + b(k,131) = b(k,131) - lu(k,1609) * b(k,216) + b(k,130) = b(k,130) - lu(k,1608) * b(k,216) + b(k,129) = b(k,129) - lu(k,1607) * b(k,216) + b(k,128) = b(k,128) - lu(k,1606) * b(k,216) + b(k,127) = b(k,127) - lu(k,1605) * b(k,216) + b(k,126) = b(k,126) - lu(k,1604) * b(k,216) + b(k,124) = b(k,124) - lu(k,1603) * b(k,216) + b(k,123) = b(k,123) - lu(k,1602) * b(k,216) + b(k,122) = b(k,122) - lu(k,1601) * b(k,216) + b(k,121) = b(k,121) - lu(k,1600) * b(k,216) + b(k,120) = b(k,120) - lu(k,1599) * b(k,216) + b(k,119) = b(k,119) - lu(k,1598) * b(k,216) + b(k,118) = b(k,118) - lu(k,1597) * b(k,216) + b(k,117) = b(k,117) - lu(k,1596) * b(k,216) + b(k,116) = b(k,116) - lu(k,1595) * b(k,216) + b(k,114) = b(k,114) - lu(k,1594) * b(k,216) + b(k,113) = b(k,113) - lu(k,1593) * b(k,216) + b(k,112) = b(k,112) - lu(k,1592) * b(k,216) + b(k,111) = b(k,111) - lu(k,1591) * b(k,216) + b(k,110) = b(k,110) - lu(k,1590) * b(k,216) + b(k,109) = b(k,109) - lu(k,1589) * b(k,216) + b(k,108) = b(k,108) - lu(k,1588) * b(k,216) + b(k,107) = b(k,107) - lu(k,1587) * b(k,216) + b(k,104) = b(k,104) - lu(k,1586) * b(k,216) + b(k,103) = b(k,103) - lu(k,1585) * b(k,216) + b(k,102) = b(k,102) - lu(k,1584) * b(k,216) + b(k,101) = b(k,101) - lu(k,1583) * b(k,216) + b(k,100) = b(k,100) - lu(k,1582) * b(k,216) + b(k,98) = b(k,98) - lu(k,1581) * b(k,216) + b(k,94) = b(k,94) - lu(k,1580) * b(k,216) + b(k,93) = b(k,93) - lu(k,1579) * b(k,216) + b(k,92) = b(k,92) - lu(k,1578) * b(k,216) + b(k,91) = b(k,91) - lu(k,1577) * b(k,216) + b(k,90) = b(k,90) - lu(k,1576) * b(k,216) + b(k,89) = b(k,89) - lu(k,1575) * b(k,216) + b(k,88) = b(k,88) - lu(k,1574) * b(k,216) + b(k,87) = b(k,87) - lu(k,1573) * b(k,216) + b(k,86) = b(k,86) - lu(k,1572) * b(k,216) + b(k,84) = b(k,84) - lu(k,1571) * b(k,216) + b(k,83) = b(k,83) - lu(k,1570) * b(k,216) + b(k,82) = b(k,82) - lu(k,1569) * b(k,216) + b(k,81) = b(k,81) - lu(k,1568) * b(k,216) + b(k,80) = b(k,80) - lu(k,1567) * b(k,216) + b(k,79) = b(k,79) - lu(k,1566) * b(k,216) + b(k,78) = b(k,78) - lu(k,1565) * b(k,216) + b(k,77) = b(k,77) - lu(k,1564) * b(k,216) + b(k,75) = b(k,75) - lu(k,1563) * b(k,216) + b(k,73) = b(k,73) - lu(k,1562) * b(k,216) + b(k,72) = b(k,72) - lu(k,1561) * b(k,216) + b(k,71) = b(k,71) - lu(k,1560) * b(k,216) + b(k,65) = b(k,65) - lu(k,1559) * b(k,216) + b(k,62) = b(k,62) - lu(k,1558) * b(k,216) + b(k,58) = b(k,58) - lu(k,1557) * b(k,216) + b(k,56) = b(k,56) - lu(k,1556) * b(k,216) + b(k,54) = b(k,54) - lu(k,1555) * b(k,216) + b(k,52) = b(k,52) - lu(k,1554) * b(k,216) + b(k,51) = b(k,51) - lu(k,1553) * b(k,216) + b(k,50) = b(k,50) - lu(k,1552) * b(k,216) + b(k,49) = b(k,49) - lu(k,1551) * b(k,216) + b(k,48) = b(k,48) - lu(k,1550) * b(k,216) + b(k,47) = b(k,47) - lu(k,1549) * b(k,216) + b(k,46) = b(k,46) - lu(k,1548) * b(k,216) + b(k,45) = b(k,45) - lu(k,1547) * b(k,216) + b(k,44) = b(k,44) - lu(k,1546) * b(k,216) + b(k,42) = b(k,42) - lu(k,1545) * b(k,216) + b(k,41) = b(k,41) - lu(k,1544) * b(k,216) + b(k,40) = b(k,40) - lu(k,1543) * b(k,216) + b(k,39) = b(k,39) - lu(k,1542) * b(k,216) + b(k,38) = b(k,38) - lu(k,1541) * b(k,216) + b(k,215) = b(k,215) * lu(k,1527) + b(k,214) = b(k,214) - lu(k,1526) * b(k,215) + b(k,213) = b(k,213) - lu(k,1525) * b(k,215) + b(k,212) = b(k,212) - lu(k,1524) * b(k,215) + b(k,211) = b(k,211) - lu(k,1523) * b(k,215) + b(k,210) = b(k,210) - lu(k,1522) * b(k,215) + b(k,209) = b(k,209) - lu(k,1521) * b(k,215) + b(k,176) = b(k,176) - lu(k,1520) * b(k,215) + b(k,170) = b(k,170) - lu(k,1519) * b(k,215) + b(k,147) = b(k,147) - lu(k,1518) * b(k,215) + b(k,130) = b(k,130) - lu(k,1517) * b(k,215) + b(k,116) = b(k,116) - lu(k,1516) * b(k,215) + b(k,101) = b(k,101) - lu(k,1515) * b(k,215) + b(k,91) = b(k,91) - lu(k,1514) * b(k,215) + b(k,90) = b(k,90) - lu(k,1513) * b(k,215) + b(k,89) = b(k,89) - lu(k,1512) * b(k,215) + b(k,88) = b(k,88) - lu(k,1511) * b(k,215) + b(k,76) = b(k,76) - lu(k,1510) * b(k,215) + b(k,75) = b(k,75) - lu(k,1509) * b(k,215) + b(k,70) = b(k,70) - lu(k,1508) * b(k,215) + b(k,69) = b(k,69) - lu(k,1507) * b(k,215) + b(k,68) = b(k,68) - lu(k,1506) * b(k,215) + b(k,67) = b(k,67) - lu(k,1505) * b(k,215) + b(k,61) = b(k,61) - lu(k,1504) * b(k,215) + b(k,60) = b(k,60) - lu(k,1503) * b(k,215) + b(k,59) = b(k,59) - lu(k,1502) * b(k,215) + b(k,57) = b(k,57) - lu(k,1501) * b(k,215) + b(k,55) = b(k,55) - lu(k,1500) * b(k,215) + b(k,214) = b(k,214) * lu(k,1486) + b(k,213) = b(k,213) - lu(k,1485) * b(k,214) + b(k,212) = b(k,212) - lu(k,1484) * b(k,214) + b(k,211) = b(k,211) - lu(k,1483) * b(k,214) + b(k,210) = b(k,210) - lu(k,1482) * b(k,214) + b(k,209) = b(k,209) - lu(k,1481) * b(k,214) + b(k,194) = b(k,194) - lu(k,1480) * b(k,214) + b(k,182) = b(k,182) - lu(k,1479) * b(k,214) + b(k,170) = b(k,170) - lu(k,1478) * b(k,214) + b(k,125) = b(k,125) - lu(k,1477) * b(k,214) + end do + end subroutine lu_slv09 + subroutine lu_slv10( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,213) = b(k,213) * lu(k,1464) + b(k,212) = b(k,212) - lu(k,1463) * b(k,213) + b(k,211) = b(k,211) - lu(k,1462) * b(k,213) + b(k,209) = b(k,209) - lu(k,1461) * b(k,213) + b(k,176) = b(k,176) - lu(k,1460) * b(k,213) + b(k,99) = b(k,99) - lu(k,1459) * b(k,213) + b(k,212) = b(k,212) * lu(k,1446) + b(k,211) = b(k,211) - lu(k,1445) * b(k,212) + b(k,209) = b(k,209) - lu(k,1444) * b(k,212) + b(k,211) = b(k,211) * lu(k,1431) + b(k,209) = b(k,209) - lu(k,1430) * b(k,211) + b(k,194) = b(k,194) - lu(k,1429) * b(k,211) + b(k,176) = b(k,176) - lu(k,1428) * b(k,211) + b(k,169) = b(k,169) - lu(k,1427) * b(k,211) + b(k,99) = b(k,99) - lu(k,1426) * b(k,211) + b(k,210) = b(k,210) * lu(k,1416) + b(k,194) = b(k,194) - lu(k,1415) * b(k,210) + b(k,170) = b(k,170) - lu(k,1414) * b(k,210) + b(k,209) = b(k,209) * lu(k,1402) + b(k,176) = b(k,176) - lu(k,1401) * b(k,209) + b(k,99) = b(k,99) - lu(k,1400) * b(k,209) + b(k,208) = b(k,208) * lu(k,1387) + b(k,207) = b(k,207) - lu(k,1386) * b(k,208) + b(k,206) = b(k,206) - lu(k,1385) * b(k,208) + b(k,205) = b(k,205) - lu(k,1384) * b(k,208) + b(k,204) = b(k,204) - lu(k,1383) * b(k,208) + b(k,203) = b(k,203) - lu(k,1382) * b(k,208) + b(k,201) = b(k,201) - lu(k,1381) * b(k,208) + b(k,200) = b(k,200) - lu(k,1380) * b(k,208) + b(k,199) = b(k,199) - lu(k,1379) * b(k,208) + b(k,198) = b(k,198) - lu(k,1378) * b(k,208) + b(k,196) = b(k,196) - lu(k,1377) * b(k,208) + b(k,194) = b(k,194) - lu(k,1376) * b(k,208) + b(k,192) = b(k,192) - lu(k,1375) * b(k,208) + b(k,190) = b(k,190) - lu(k,1374) * b(k,208) + b(k,185) = b(k,185) - lu(k,1373) * b(k,208) + b(k,169) = b(k,169) - lu(k,1372) * b(k,208) + b(k,157) = b(k,157) - lu(k,1371) * b(k,208) + b(k,149) = b(k,149) - lu(k,1370) * b(k,208) + b(k,138) = b(k,138) - lu(k,1369) * b(k,208) + b(k,110) = b(k,110) - lu(k,1368) * b(k,208) + b(k,207) = b(k,207) * lu(k,1355) + b(k,201) = b(k,201) - lu(k,1354) * b(k,207) + b(k,196) = b(k,196) - lu(k,1353) * b(k,207) + b(k,194) = b(k,194) - lu(k,1352) * b(k,207) + b(k,169) = b(k,169) - lu(k,1351) * b(k,207) + b(k,157) = b(k,157) - lu(k,1350) * b(k,207) + b(k,149) = b(k,149) - lu(k,1349) * b(k,207) + b(k,144) = b(k,144) - lu(k,1348) * b(k,207) + b(k,206) = b(k,206) * lu(k,1333) + b(k,205) = b(k,205) - lu(k,1332) * b(k,206) + b(k,201) = b(k,201) - lu(k,1331) * b(k,206) + b(k,196) = b(k,196) - lu(k,1330) * b(k,206) + b(k,194) = b(k,194) - lu(k,1329) * b(k,206) + b(k,191) = b(k,191) - lu(k,1328) * b(k,206) + b(k,187) = b(k,187) - lu(k,1327) * b(k,206) + b(k,182) = b(k,182) - lu(k,1326) * b(k,206) + b(k,169) = b(k,169) - lu(k,1325) * b(k,206) + b(k,205) = b(k,205) * lu(k,1312) + b(k,201) = b(k,201) - lu(k,1311) * b(k,205) + b(k,197) = b(k,197) - lu(k,1310) * b(k,205) + b(k,196) = b(k,196) - lu(k,1309) * b(k,205) + b(k,194) = b(k,194) - lu(k,1308) * b(k,205) + b(k,192) = b(k,192) - lu(k,1307) * b(k,205) + b(k,168) = b(k,168) - lu(k,1306) * b(k,205) + b(k,103) = b(k,103) - lu(k,1305) * b(k,205) + b(k,204) = b(k,204) * lu(k,1289) + b(k,201) = b(k,201) - lu(k,1288) * b(k,204) + b(k,200) = b(k,200) - lu(k,1287) * b(k,204) + b(k,198) = b(k,198) - lu(k,1286) * b(k,204) + b(k,197) = b(k,197) - lu(k,1285) * b(k,204) + b(k,196) = b(k,196) - lu(k,1284) * b(k,204) + b(k,194) = b(k,194) - lu(k,1283) * b(k,204) + b(k,192) = b(k,192) - lu(k,1282) * b(k,204) + b(k,185) = b(k,185) - lu(k,1281) * b(k,204) + b(k,177) = b(k,177) - lu(k,1280) * b(k,204) + b(k,175) = b(k,175) - lu(k,1279) * b(k,204) + b(k,168) = b(k,168) - lu(k,1278) * b(k,204) + b(k,162) = b(k,162) - lu(k,1277) * b(k,204) + b(k,146) = b(k,146) - lu(k,1276) * b(k,204) + b(k,139) = b(k,139) - lu(k,1275) * b(k,204) + b(k,110) = b(k,110) - lu(k,1274) * b(k,204) + b(k,83) = b(k,83) - lu(k,1273) * b(k,204) + b(k,203) = b(k,203) * lu(k,1257) + b(k,201) = b(k,201) - lu(k,1256) * b(k,203) + b(k,200) = b(k,200) - lu(k,1255) * b(k,203) + b(k,198) = b(k,198) - lu(k,1254) * b(k,203) + b(k,197) = b(k,197) - lu(k,1253) * b(k,203) + b(k,196) = b(k,196) - lu(k,1252) * b(k,203) + b(k,194) = b(k,194) - lu(k,1251) * b(k,203) + b(k,192) = b(k,192) - lu(k,1250) * b(k,203) + b(k,169) = b(k,169) - lu(k,1249) * b(k,203) + b(k,168) = b(k,168) - lu(k,1248) * b(k,203) + b(k,162) = b(k,162) - lu(k,1247) * b(k,203) + b(k,145) = b(k,145) - lu(k,1246) * b(k,203) + b(k,202) = b(k,202) * lu(k,1233) + b(k,174) = b(k,174) - lu(k,1232) * b(k,202) + b(k,136) = b(k,136) - lu(k,1231) * b(k,202) + b(k,106) = b(k,106) - lu(k,1230) * b(k,202) + b(k,201) = b(k,201) * lu(k,1222) + b(k,194) = b(k,194) - lu(k,1221) * b(k,201) + b(k,200) = b(k,200) * lu(k,1210) + b(k,194) = b(k,194) - lu(k,1209) * b(k,200) + b(k,182) = b(k,182) - lu(k,1208) * b(k,200) + b(k,199) = b(k,199) * lu(k,1194) + b(k,198) = b(k,198) - lu(k,1193) * b(k,199) + b(k,194) = b(k,194) - lu(k,1192) * b(k,199) + b(k,192) = b(k,192) - lu(k,1191) * b(k,199) + b(k,190) = b(k,190) - lu(k,1190) * b(k,199) + b(k,175) = b(k,175) - lu(k,1189) * b(k,199) + b(k,168) = b(k,168) - lu(k,1188) * b(k,199) + b(k,162) = b(k,162) - lu(k,1187) * b(k,199) + b(k,119) = b(k,119) - lu(k,1186) * b(k,199) + b(k,114) = b(k,114) - lu(k,1185) * b(k,199) + b(k,198) = b(k,198) * lu(k,1174) + b(k,196) = b(k,196) - lu(k,1173) * b(k,198) + b(k,194) = b(k,194) - lu(k,1172) * b(k,198) + b(k,192) = b(k,192) - lu(k,1171) * b(k,198) + b(k,185) = b(k,185) - lu(k,1170) * b(k,198) + b(k,169) = b(k,169) - lu(k,1169) * b(k,198) + b(k,168) = b(k,168) - lu(k,1168) * b(k,198) + b(k,80) = b(k,80) - lu(k,1167) * b(k,198) + b(k,197) = b(k,197) * lu(k,1154) + b(k,196) = b(k,196) - lu(k,1153) * b(k,197) + b(k,195) = b(k,195) - lu(k,1152) * b(k,197) + b(k,194) = b(k,194) - lu(k,1151) * b(k,197) + b(k,192) = b(k,192) - lu(k,1150) * b(k,197) + b(k,191) = b(k,191) - lu(k,1149) * b(k,197) + b(k,181) = b(k,181) - lu(k,1148) * b(k,197) + b(k,86) = b(k,86) - lu(k,1147) * b(k,197) + b(k,196) = b(k,196) * lu(k,1141) + b(k,195) = b(k,195) * lu(k,1130) + b(k,168) = b(k,168) - lu(k,1129) * b(k,195) + b(k,118) = b(k,118) - lu(k,1128) * b(k,195) + b(k,194) = b(k,194) * lu(k,1124) + b(k,169) = b(k,169) - lu(k,1123) * b(k,194) + b(k,193) = b(k,193) * lu(k,1110) + b(k,192) = b(k,192) - lu(k,1109) * b(k,193) + b(k,189) = b(k,189) - lu(k,1108) * b(k,193) + b(k,181) = b(k,181) - lu(k,1107) * b(k,193) + b(k,169) = b(k,169) - lu(k,1106) * b(k,193) + b(k,168) = b(k,168) - lu(k,1105) * b(k,193) + b(k,153) = b(k,153) - lu(k,1104) * b(k,193) + b(k,86) = b(k,86) - lu(k,1103) * b(k,193) + b(k,192) = b(k,192) * lu(k,1097) + b(k,185) = b(k,185) - lu(k,1096) * b(k,192) + b(k,169) = b(k,169) - lu(k,1095) * b(k,192) + b(k,191) = b(k,191) * lu(k,1086) + b(k,190) = b(k,190) * lu(k,1074) + b(k,185) = b(k,185) - lu(k,1073) * b(k,190) + b(k,177) = b(k,177) - lu(k,1072) * b(k,190) + b(k,175) = b(k,175) - lu(k,1071) * b(k,190) + b(k,146) = b(k,146) - lu(k,1070) * b(k,190) + b(k,189) = b(k,189) * lu(k,1060) + b(k,181) = b(k,181) - lu(k,1059) * b(k,189) + b(k,169) = b(k,169) - lu(k,1058) * b(k,189) + b(k,188) = b(k,188) * lu(k,1046) + b(k,184) = b(k,184) - lu(k,1045) * b(k,188) + b(k,168) = b(k,168) - lu(k,1044) * b(k,188) + b(k,150) = b(k,150) - lu(k,1043) * b(k,188) + b(k,117) = b(k,117) - lu(k,1042) * b(k,188) + b(k,187) = b(k,187) * lu(k,1025) + b(k,182) = b(k,182) - lu(k,1024) * b(k,187) + b(k,175) = b(k,175) - lu(k,1023) * b(k,187) + b(k,169) = b(k,169) - lu(k,1022) * b(k,187) + b(k,165) = b(k,165) - lu(k,1021) * b(k,187) + b(k,157) = b(k,157) - lu(k,1020) * b(k,187) + b(k,186) = b(k,186) * lu(k,1000) + b(k,185) = b(k,185) - lu(k,999) * b(k,186) + b(k,184) = b(k,184) - lu(k,998) * b(k,186) + b(k,182) = b(k,182) - lu(k,997) * b(k,186) + b(k,181) = b(k,181) - lu(k,996) * b(k,186) + b(k,180) = b(k,180) - lu(k,995) * b(k,186) + b(k,178) = b(k,178) - lu(k,994) * b(k,186) + b(k,169) = b(k,169) - lu(k,993) * b(k,186) + b(k,115) = b(k,115) - lu(k,992) * b(k,186) + b(k,84) = b(k,84) - lu(k,991) * b(k,186) + b(k,45) = b(k,45) - lu(k,990) * b(k,186) + b(k,42) = b(k,42) - lu(k,989) * b(k,186) + b(k,41) = b(k,41) - lu(k,988) * b(k,186) + b(k,40) = b(k,40) - lu(k,987) * b(k,186) + b(k,39) = b(k,39) - lu(k,986) * b(k,186) + b(k,38) = b(k,38) - lu(k,985) * b(k,186) + b(k,185) = b(k,185) * lu(k,980) + b(k,169) = b(k,169) - lu(k,979) * b(k,185) + b(k,38) = b(k,38) - lu(k,978) * b(k,185) + b(k,184) = b(k,184) * lu(k,970) + b(k,183) = b(k,183) * lu(k,949) + b(k,182) = b(k,182) - lu(k,948) * b(k,183) + b(k,181) = b(k,181) - lu(k,947) * b(k,183) + b(k,180) = b(k,180) - lu(k,946) * b(k,183) + b(k,178) = b(k,178) - lu(k,945) * b(k,183) + b(k,169) = b(k,169) - lu(k,944) * b(k,183) + b(k,115) = b(k,115) - lu(k,943) * b(k,183) + b(k,84) = b(k,84) - lu(k,942) * b(k,183) + b(k,50) = b(k,50) - lu(k,941) * b(k,183) + b(k,42) = b(k,42) - lu(k,940) * b(k,183) + b(k,41) = b(k,41) - lu(k,939) * b(k,183) + b(k,40) = b(k,40) - lu(k,938) * b(k,183) + b(k,39) = b(k,39) - lu(k,937) * b(k,183) + b(k,38) = b(k,38) - lu(k,936) * b(k,183) + end do + end subroutine lu_slv10 + subroutine lu_slv11( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,182) = b(k,182) * lu(k,930) + b(k,169) = b(k,169) - lu(k,929) * b(k,182) + b(k,181) = b(k,181) * lu(k,923) + b(k,180) = b(k,180) * lu(k,913) + b(k,168) = b(k,168) - lu(k,912) * b(k,180) + b(k,150) = b(k,150) - lu(k,911) * b(k,180) + b(k,131) = b(k,131) - lu(k,910) * b(k,180) + b(k,179) = b(k,179) * lu(k,900) + b(k,171) = b(k,171) - lu(k,899) * b(k,179) + b(k,74) = b(k,74) - lu(k,898) * b(k,179) + b(k,178) = b(k,178) * lu(k,888) + b(k,172) = b(k,172) - lu(k,887) * b(k,178) + b(k,156) = b(k,156) - lu(k,886) * b(k,178) + b(k,155) = b(k,155) - lu(k,885) * b(k,178) + b(k,152) = b(k,152) - lu(k,884) * b(k,178) + b(k,135) = b(k,135) - lu(k,883) * b(k,178) + b(k,177) = b(k,177) * lu(k,874) + b(k,176) = b(k,176) * lu(k,865) + b(k,99) = b(k,99) - lu(k,864) * b(k,176) + b(k,175) = b(k,175) * lu(k,858) + b(k,174) = b(k,174) * lu(k,852) + b(k,92) = b(k,92) - lu(k,851) * b(k,174) + b(k,173) = b(k,173) * lu(k,835) + b(k,47) = b(k,47) - lu(k,834) * b(k,173) + b(k,42) = b(k,42) - lu(k,833) * b(k,173) + b(k,41) = b(k,41) - lu(k,832) * b(k,173) + b(k,172) = b(k,172) * lu(k,824) + b(k,168) = b(k,168) - lu(k,823) * b(k,172) + b(k,109) = b(k,109) - lu(k,822) * b(k,172) + b(k,93) = b(k,93) - lu(k,821) * b(k,172) + b(k,171) = b(k,171) * lu(k,814) + b(k,74) = b(k,74) - lu(k,813) * b(k,171) + b(k,170) = b(k,170) * lu(k,805) + b(k,169) = b(k,169) * lu(k,802) + b(k,168) = b(k,168) * lu(k,798) + b(k,167) = b(k,167) * lu(k,788) + b(k,120) = b(k,120) - lu(k,787) * b(k,167) + b(k,166) = b(k,166) * lu(k,779) + b(k,85) = b(k,85) - lu(k,778) * b(k,166) + b(k,165) = b(k,165) * lu(k,769) + b(k,140) = b(k,140) - lu(k,768) * b(k,165) + b(k,164) = b(k,164) * lu(k,760) + b(k,163) = b(k,163) * lu(k,749) + b(k,160) = b(k,160) - lu(k,748) * b(k,163) + b(k,158) = b(k,158) - lu(k,747) * b(k,163) + b(k,146) = b(k,146) - lu(k,746) * b(k,163) + b(k,128) = b(k,128) - lu(k,745) * b(k,163) + b(k,105) = b(k,105) - lu(k,744) * b(k,163) + b(k,97) = b(k,97) - lu(k,743) * b(k,163) + b(k,162) = b(k,162) * lu(k,736) + b(k,65) = b(k,65) - lu(k,735) * b(k,162) + b(k,161) = b(k,161) * lu(k,725) + b(k,160) = b(k,160) - lu(k,724) * b(k,161) + b(k,154) = b(k,154) - lu(k,723) * b(k,161) + b(k,146) = b(k,146) - lu(k,722) * b(k,161) + b(k,128) = b(k,128) - lu(k,721) * b(k,161) + b(k,97) = b(k,97) - lu(k,720) * b(k,161) + b(k,160) = b(k,160) * lu(k,714) + b(k,159) = b(k,159) * lu(k,707) + b(k,95) = b(k,95) - lu(k,706) * b(k,159) + b(k,63) = b(k,63) - lu(k,705) * b(k,159) + b(k,158) = b(k,158) * lu(k,694) + b(k,146) = b(k,146) - lu(k,693) * b(k,158) + b(k,128) = b(k,128) - lu(k,692) * b(k,158) + b(k,105) = b(k,105) - lu(k,691) * b(k,158) + b(k,97) = b(k,97) - lu(k,690) * b(k,158) + b(k,157) = b(k,157) * lu(k,685) + b(k,156) = b(k,156) * lu(k,678) + b(k,104) = b(k,104) - lu(k,677) * b(k,156) + b(k,155) = b(k,155) * lu(k,667) + b(k,135) = b(k,135) - lu(k,666) * b(k,155) + b(k,154) = b(k,154) * lu(k,656) + b(k,146) = b(k,146) - lu(k,655) * b(k,154) + b(k,128) = b(k,128) - lu(k,654) * b(k,154) + b(k,97) = b(k,97) - lu(k,653) * b(k,154) + b(k,153) = b(k,153) * lu(k,643) + b(k,152) = b(k,152) * lu(k,633) + b(k,135) = b(k,135) - lu(k,632) * b(k,152) + b(k,151) = b(k,151) * lu(k,626) + b(k,129) = b(k,129) - lu(k,625) * b(k,151) + b(k,94) = b(k,94) - lu(k,624) * b(k,151) + b(k,150) = b(k,150) * lu(k,618) + b(k,149) = b(k,149) * lu(k,611) + b(k,148) = b(k,148) * lu(k,604) + b(k,147) = b(k,147) * lu(k,595) + b(k,146) = b(k,146) * lu(k,591) + b(k,145) = b(k,145) * lu(k,582) + b(k,144) = b(k,144) * lu(k,573) + b(k,143) = b(k,143) * lu(k,565) + b(k,142) = b(k,142) * lu(k,557) + b(k,141) = b(k,141) * lu(k,549) + b(k,140) = b(k,140) * lu(k,541) + b(k,139) = b(k,139) * lu(k,533) + b(k,138) = b(k,138) * lu(k,525) + b(k,137) = b(k,137) * lu(k,519) + b(k,66) = b(k,66) - lu(k,518) * b(k,137) + b(k,136) = b(k,136) * lu(k,512) + b(k,135) = b(k,135) * lu(k,507) + b(k,134) = b(k,134) * lu(k,500) + b(k,123) = b(k,123) - lu(k,499) * b(k,134) + b(k,133) = b(k,133) * lu(k,492) + b(k,76) = b(k,76) - lu(k,491) * b(k,133) + b(k,132) = b(k,132) * lu(k,484) + b(k,128) = b(k,128) - lu(k,483) * b(k,132) + b(k,121) = b(k,121) - lu(k,482) * b(k,132) + b(k,131) = b(k,131) * lu(k,475) + b(k,130) = b(k,130) * lu(k,468) + b(k,129) = b(k,129) * lu(k,464) + b(k,128) = b(k,128) * lu(k,461) + b(k,127) = b(k,127) * lu(k,455) + b(k,126) = b(k,126) * lu(k,449) + b(k,107) = b(k,107) - lu(k,448) * b(k,126) + b(k,125) = b(k,125) * lu(k,442) + b(k,124) = b(k,124) * lu(k,436) + b(k,108) = b(k,108) - lu(k,435) * b(k,124) + b(k,87) = b(k,87) - lu(k,434) * b(k,124) + b(k,123) = b(k,123) * lu(k,428) + b(k,122) = b(k,122) * lu(k,422) + b(k,121) = b(k,121) * lu(k,416) + b(k,120) = b(k,120) * lu(k,410) + b(k,119) = b(k,119) * lu(k,404) + b(k,118) = b(k,118) * lu(k,398) + b(k,117) = b(k,117) * lu(k,392) + b(k,116) = b(k,116) * lu(k,386) + b(k,115) = b(k,115) * lu(k,380) + b(k,114) = b(k,114) * lu(k,374) + b(k,113) = b(k,113) * lu(k,366) + b(k,112) = b(k,112) * lu(k,358) + b(k,111) = b(k,111) * lu(k,350) + b(k,110) = b(k,110) * lu(k,347) + b(k,109) = b(k,109) * lu(k,342) + b(k,108) = b(k,108) * lu(k,337) + b(k,87) = b(k,87) - lu(k,336) * b(k,108) + b(k,107) = b(k,107) * lu(k,331) + b(k,106) = b(k,106) * lu(k,326) + b(k,105) = b(k,105) * lu(k,321) + b(k,104) = b(k,104) * lu(k,316) + b(k,103) = b(k,103) * lu(k,311) + b(k,102) = b(k,102) * lu(k,305) + b(k,101) = b(k,101) * lu(k,299) + b(k,88) = b(k,88) - lu(k,298) * b(k,101) + b(k,100) = b(k,100) * lu(k,292) + b(k,99) = b(k,99) * lu(k,289) + b(k,98) = b(k,98) * lu(k,283) + b(k,97) = b(k,97) * lu(k,280) + b(k,96) = b(k,96) * lu(k,274) + b(k,95) = b(k,95) * lu(k,270) + b(k,94) = b(k,94) * lu(k,266) + b(k,93) = b(k,93) * lu(k,262) + b(k,92) = b(k,92) * lu(k,258) + b(k,64) = b(k,64) - lu(k,257) * b(k,92) + b(k,91) = b(k,91) * lu(k,252) + b(k,88) = b(k,88) - lu(k,251) * b(k,91) + b(k,90) = b(k,90) * lu(k,247) + b(k,89) = b(k,89) * lu(k,242) + b(k,88) = b(k,88) * lu(k,239) + b(k,87) = b(k,87) * lu(k,236) + b(k,86) = b(k,86) * lu(k,233) + b(k,85) = b(k,85) * lu(k,230) + b(k,84) = b(k,84) * lu(k,227) + b(k,83) = b(k,83) * lu(k,222) + b(k,82) = b(k,82) * lu(k,217) + b(k,81) = b(k,81) * lu(k,209) + b(k,79) = b(k,79) - lu(k,208) * b(k,81) + b(k,52) = b(k,52) - lu(k,207) * b(k,81) + b(k,80) = b(k,80) * lu(k,204) + b(k,79) = b(k,79) * lu(k,200) + b(k,78) = b(k,78) * lu(k,195) + b(k,77) = b(k,77) * lu(k,188) + b(k,51) = b(k,51) - lu(k,187) * b(k,77) + b(k,76) = b(k,76) * lu(k,184) + b(k,75) = b(k,75) * lu(k,180) + b(k,74) = b(k,74) * lu(k,178) + b(k,73) = b(k,73) * lu(k,173) + b(k,72) = b(k,72) * lu(k,169) + b(k,71) = b(k,71) * lu(k,163) + b(k,46) = b(k,46) - lu(k,162) * b(k,71) + b(k,70) = b(k,70) * lu(k,157) + b(k,69) = b(k,69) * lu(k,152) + b(k,68) = b(k,68) * lu(k,147) + b(k,67) = b(k,67) * lu(k,142) + b(k,66) = b(k,66) * lu(k,139) + b(k,65) = b(k,65) * lu(k,136) + b(k,64) = b(k,64) * lu(k,133) + b(k,63) = b(k,63) * lu(k,130) + b(k,62) = b(k,62) * lu(k,126) + b(k,61) = b(k,61) * lu(k,122) + b(k,60) = b(k,60) * lu(k,118) + b(k,59) = b(k,59) * lu(k,114) + b(k,58) = b(k,58) * lu(k,110) + b(k,57) = b(k,57) * lu(k,106) + b(k,56) = b(k,56) * lu(k,103) + b(k,55) = b(k,55) * lu(k,100) + b(k,54) = b(k,54) * lu(k,97) + b(k,53) = b(k,53) * lu(k,94) + b(k,52) = b(k,52) * lu(k,93) + b(k,42) = b(k,42) - lu(k,92) * b(k,52) + b(k,41) = b(k,41) - lu(k,91) * b(k,52) + b(k,40) = b(k,40) - lu(k,90) * b(k,52) + b(k,39) = b(k,39) - lu(k,89) * b(k,52) + b(k,38) = b(k,38) - lu(k,88) * b(k,52) + end do + end subroutine lu_slv11 + subroutine lu_slv12( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,51) = b(k,51) * lu(k,87) + b(k,42) = b(k,42) - lu(k,86) * b(k,51) + b(k,41) = b(k,41) - lu(k,85) * b(k,51) + b(k,40) = b(k,40) - lu(k,84) * b(k,51) + b(k,39) = b(k,39) - lu(k,83) * b(k,51) + b(k,38) = b(k,38) - lu(k,82) * b(k,51) + b(k,50) = b(k,50) * lu(k,81) + b(k,42) = b(k,42) - lu(k,80) * b(k,50) + b(k,41) = b(k,41) - lu(k,79) * b(k,50) + b(k,40) = b(k,40) - lu(k,78) * b(k,50) + b(k,39) = b(k,39) - lu(k,77) * b(k,50) + b(k,38) = b(k,38) - lu(k,76) * b(k,50) + b(k,49) = b(k,49) * lu(k,75) + b(k,48) = b(k,48) - lu(k,74) * b(k,49) + b(k,48) = b(k,48) * lu(k,73) + b(k,42) = b(k,42) - lu(k,72) * b(k,48) + b(k,41) = b(k,41) - lu(k,71) * b(k,48) + b(k,40) = b(k,40) - lu(k,70) * b(k,48) + b(k,39) = b(k,39) - lu(k,69) * b(k,48) + b(k,38) = b(k,38) - lu(k,68) * b(k,48) + b(k,47) = b(k,47) * lu(k,67) + b(k,42) = b(k,42) - lu(k,66) * b(k,47) + b(k,41) = b(k,41) - lu(k,65) * b(k,47) + b(k,40) = b(k,40) - lu(k,64) * b(k,47) + b(k,39) = b(k,39) - lu(k,63) * b(k,47) + b(k,38) = b(k,38) - lu(k,62) * b(k,47) + b(k,46) = b(k,46) * lu(k,61) + b(k,42) = b(k,42) - lu(k,60) * b(k,46) + b(k,41) = b(k,41) - lu(k,59) * b(k,46) + b(k,40) = b(k,40) - lu(k,58) * b(k,46) + b(k,39) = b(k,39) - lu(k,57) * b(k,46) + b(k,38) = b(k,38) - lu(k,56) * b(k,46) + b(k,45) = b(k,45) * lu(k,55) + b(k,42) = b(k,42) - lu(k,54) * b(k,45) + b(k,41) = b(k,41) - lu(k,53) * b(k,45) + b(k,40) = b(k,40) - lu(k,52) * b(k,45) + b(k,39) = b(k,39) - lu(k,51) * b(k,45) + b(k,38) = b(k,38) - lu(k,50) * b(k,45) + b(k,44) = b(k,44) * lu(k,49) + b(k,42) = b(k,42) - lu(k,48) * b(k,44) + b(k,41) = b(k,41) - lu(k,47) * b(k,44) + b(k,40) = b(k,40) - lu(k,46) * b(k,44) + b(k,39) = b(k,39) - lu(k,45) * b(k,44) + b(k,38) = b(k,38) - lu(k,44) * b(k,44) + b(k,43) = b(k,43) * lu(k,43) + b(k,42) = b(k,42) * lu(k,42) + b(k,41) = b(k,41) * lu(k,41) + b(k,40) = b(k,40) * lu(k,40) + b(k,39) = b(k,39) * lu(k,39) + b(k,38) = b(k,38) * lu(k,38) + b(k,37) = b(k,37) * lu(k,37) + b(k,36) = b(k,36) * lu(k,36) + b(k,35) = b(k,35) * lu(k,35) + b(k,34) = b(k,34) * lu(k,34) + b(k,33) = b(k,33) * lu(k,33) + b(k,32) = b(k,32) * lu(k,32) + b(k,31) = b(k,31) * lu(k,31) + b(k,30) = b(k,30) * lu(k,30) + b(k,29) = b(k,29) * lu(k,29) + b(k,28) = b(k,28) * lu(k,28) + b(k,27) = b(k,27) * lu(k,27) + b(k,26) = b(k,26) * lu(k,26) + b(k,25) = b(k,25) * lu(k,25) + b(k,24) = b(k,24) * lu(k,24) + b(k,23) = b(k,23) * lu(k,23) + b(k,22) = b(k,22) * lu(k,22) + b(k,21) = b(k,21) * lu(k,21) + b(k,20) = b(k,20) * lu(k,20) + b(k,19) = b(k,19) * lu(k,19) + b(k,18) = b(k,18) * lu(k,18) + b(k,17) = b(k,17) * lu(k,17) + b(k,16) = b(k,16) * lu(k,16) + b(k,15) = b(k,15) * lu(k,15) + b(k,14) = b(k,14) * lu(k,14) + b(k,13) = b(k,13) * lu(k,13) + b(k,12) = b(k,12) * lu(k,12) + b(k,11) = b(k,11) * lu(k,11) + b(k,10) = b(k,10) * lu(k,10) + b(k,9) = b(k,9) * lu(k,9) + b(k,8) = b(k,8) * lu(k,8) + b(k,7) = b(k,7) * lu(k,7) + b(k,6) = b(k,6) * lu(k,6) + b(k,5) = b(k,5) * lu(k,5) + b(k,4) = b(k,4) * lu(k,4) + b(k,3) = b(k,3) * lu(k,3) + b(k,2) = b(k,2) * lu(k,2) + b(k,1) = b(k,1) * lu(k,1) + end do + end subroutine lu_slv12 + subroutine lu_slv( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) + call lu_slv01( avec_len, lu, b ) + call lu_slv02( avec_len, lu, b ) + call lu_slv03( avec_len, lu, b ) + call lu_slv04( avec_len, lu, b ) + call lu_slv05( avec_len, lu, b ) + call lu_slv06( avec_len, lu, b ) + call lu_slv07( avec_len, lu, b ) + call lu_slv08( avec_len, lu, b ) + call lu_slv09( avec_len, lu, b ) + call lu_slv10( avec_len, lu, b ) + call lu_slv11( avec_len, lu, b ) + call lu_slv12( avec_len, lu, b ) + end subroutine lu_slv + end module mo_lu_solve diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_nln_matrix.F90 new file mode 100644 index 0000000000..98e9ec26d5 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_nln_matrix.F90 @@ -0,0 +1,3699 @@ + module mo_nln_matrix + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only: veclen + private + public :: nlnmat + contains + subroutine nlnmat01( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,667) = -(rxt(k,357)*y(k,218)) + mat(k,1632) = -rxt(k,357)*y(k,1) + mat(k,1874) = rxt(k,360)*y(k,190) + mat(k,885) = rxt(k,360)*y(k,123) + mat(k,633) = -(rxt(k,361)*y(k,218)) + mat(k,1629) = -rxt(k,361)*y(k,2) + mat(k,884) = rxt(k,358)*y(k,204) + mat(k,2057) = rxt(k,358)*y(k,190) + mat(k,1000) = -(rxt(k,440)*y(k,125) + rxt(k,441)*y(k,134) + rxt(k,442) & + *y(k,218)) + mat(k,1746) = -rxt(k,440)*y(k,5) + mat(k,2222) = -rxt(k,441)*y(k,5) + mat(k,1662) = -rxt(k,442)*y(k,5) + mat(k,163) = -(rxt(k,399)*y(k,218)) + mat(k,1560) = -rxt(k,399)*y(k,6) + mat(k,416) = -(rxt(k,402)*y(k,218)) + mat(k,1600) = -rxt(k,402)*y(k,7) + mat(k,482) = rxt(k,400)*y(k,204) + mat(k,2040) = rxt(k,400)*y(k,192) + mat(k,164) = .120_r8*rxt(k,399)*y(k,218) + mat(k,1561) = .120_r8*rxt(k,399)*y(k,6) + mat(k,992) = .100_r8*rxt(k,441)*y(k,134) + mat(k,943) = .100_r8*rxt(k,444)*y(k,134) + mat(k,2206) = .100_r8*rxt(k,441)*y(k,5) + .100_r8*rxt(k,444)*y(k,109) + mat(k,1861) = .500_r8*rxt(k,401)*y(k,192) + .200_r8*rxt(k,428)*y(k,224) & + + .060_r8*rxt(k,434)*y(k,227) + mat(k,483) = .500_r8*rxt(k,401)*y(k,123) + mat(k,721) = .200_r8*rxt(k,428)*y(k,123) + mat(k,745) = .060_r8*rxt(k,434)*y(k,123) + mat(k,1855) = .200_r8*rxt(k,428)*y(k,224) + .200_r8*rxt(k,434)*y(k,227) + mat(k,720) = .200_r8*rxt(k,428)*y(k,123) + mat(k,743) = .200_r8*rxt(k,434)*y(k,123) + mat(k,1871) = .200_r8*rxt(k,428)*y(k,224) + .150_r8*rxt(k,434)*y(k,227) + mat(k,722) = .200_r8*rxt(k,428)*y(k,123) + mat(k,746) = .150_r8*rxt(k,434)*y(k,123) + mat(k,1856) = .210_r8*rxt(k,434)*y(k,227) + mat(k,744) = .210_r8*rxt(k,434)*y(k,123) + mat(k,227) = -(rxt(k,362)*y(k,218)) + mat(k,1571) = -rxt(k,362)*y(k,14) + mat(k,991) = .050_r8*rxt(k,441)*y(k,134) + mat(k,942) = .050_r8*rxt(k,444)*y(k,134) + mat(k,2205) = .050_r8*rxt(k,441)*y(k,5) + .050_r8*rxt(k,444)*y(k,109) + mat(k,350) = -(rxt(k,328)*y(k,125) + rxt(k,329)*y(k,218)) + mat(k,1736) = -rxt(k,328)*y(k,15) + mat(k,1591) = -rxt(k,329)*y(k,15) + mat(k,1416) = -(rxt(k,212)*y(k,41) + rxt(k,213)*y(k,204) + rxt(k,214) & + *y(k,134)) + mat(k,1482) = -rxt(k,212)*y(k,16) + mat(k,2103) = -rxt(k,213)*y(k,16) + mat(k,2242) = -rxt(k,214)*y(k,16) + mat(k,2151) = 4.000_r8*rxt(k,215)*y(k,18) + (rxt(k,216)+rxt(k,217))*y(k,58) & + + rxt(k,220)*y(k,123) + rxt(k,223)*y(k,133) + rxt(k,470) & + *y(k,150) + rxt(k,224)*y(k,218) + mat(k,144) = rxt(k,202)*y(k,217) + mat(k,150) = rxt(k,228)*y(k,217) + mat(k,469) = 2.000_r8*rxt(k,239)*y(k,55) + 2.000_r8*rxt(k,251)*y(k,217) & + + 2.000_r8*rxt(k,240)*y(k,218) + mat(k,596) = rxt(k,241)*y(k,55) + rxt(k,252)*y(k,217) + rxt(k,242)*y(k,218) + mat(k,387) = 3.000_r8*rxt(k,246)*y(k,55) + 3.000_r8*rxt(k,229)*y(k,217) & + + 3.000_r8*rxt(k,247)*y(k,218) + mat(k,1996) = 2.000_r8*rxt(k,239)*y(k,40) + rxt(k,241)*y(k,42) & + + 3.000_r8*rxt(k,246)*y(k,54) + mat(k,1713) = (rxt(k,216)+rxt(k,217))*y(k,18) + mat(k,108) = 2.000_r8*rxt(k,230)*y(k,217) + mat(k,806) = rxt(k,225)*y(k,133) + rxt(k,231)*y(k,217) + rxt(k,226)*y(k,218) + mat(k,1913) = rxt(k,220)*y(k,18) + mat(k,2181) = rxt(k,223)*y(k,18) + rxt(k,225)*y(k,80) + mat(k,1234) = rxt(k,470)*y(k,18) + mat(k,1522) = rxt(k,202)*y(k,33) + rxt(k,228)*y(k,34) + 2.000_r8*rxt(k,251) & + *y(k,40) + rxt(k,252)*y(k,42) + 3.000_r8*rxt(k,229)*y(k,54) & + + 2.000_r8*rxt(k,230)*y(k,77) + rxt(k,231)*y(k,80) + mat(k,1686) = rxt(k,224)*y(k,18) + 2.000_r8*rxt(k,240)*y(k,40) + rxt(k,242) & + *y(k,42) + 3.000_r8*rxt(k,247)*y(k,54) + rxt(k,226)*y(k,80) + mat(k,2145) = rxt(k,218)*y(k,58) + mat(k,1707) = rxt(k,218)*y(k,18) + mat(k,2123) = (rxt(k,531)+rxt(k,536))*y(k,90) + mat(k,778) = (rxt(k,531)+rxt(k,536))*y(k,84) + mat(k,2165) = -(4._r8*rxt(k,215)*y(k,18) + (rxt(k,216) + rxt(k,217) + rxt(k,218) & + ) * y(k,58) + rxt(k,219)*y(k,204) + rxt(k,220)*y(k,123) & + + rxt(k,221)*y(k,124) + rxt(k,223)*y(k,133) + rxt(k,224) & + *y(k,218) + rxt(k,470)*y(k,150)) + mat(k,1727) = -(rxt(k,216) + rxt(k,217) + rxt(k,218)) * y(k,18) + mat(k,2118) = -rxt(k,219)*y(k,18) + mat(k,1928) = -rxt(k,220)*y(k,18) + mat(k,1972) = -rxt(k,221)*y(k,18) + mat(k,2196) = -rxt(k,223)*y(k,18) + mat(k,1701) = -rxt(k,224)*y(k,18) + mat(k,1242) = -rxt(k,470)*y(k,18) + mat(k,1422) = rxt(k,214)*y(k,134) + mat(k,563) = rxt(k,222)*y(k,133) + mat(k,810) = rxt(k,232)*y(k,217) + mat(k,784) = rxt(k,227)*y(k,133) + mat(k,2196) = mat(k,2196) + rxt(k,222)*y(k,19) + rxt(k,227)*y(k,90) + mat(k,2257) = rxt(k,214)*y(k,16) + mat(k,1537) = rxt(k,232)*y(k,80) + mat(k,557) = -(rxt(k,222)*y(k,133)) + mat(k,2171) = -rxt(k,222)*y(k,19) + mat(k,2147) = rxt(k,221)*y(k,124) + mat(k,1940) = rxt(k,221)*y(k,18) + mat(k,236) = -(rxt(k,403)*y(k,218)) + mat(k,1573) = -rxt(k,403)*y(k,21) + mat(k,1853) = rxt(k,406)*y(k,194) + mat(k,434) = rxt(k,406)*y(k,123) + mat(k,337) = -(rxt(k,405)*y(k,218)) + mat(k,1588) = -rxt(k,405)*y(k,22) + mat(k,435) = rxt(k,404)*y(k,204) + mat(k,2034) = rxt(k,404)*y(k,194) + mat(k,292) = -(rxt(k,277)*y(k,55) + rxt(k,278)*y(k,218)) + mat(k,1977) = -rxt(k,277)*y(k,23) + mat(k,1582) = -rxt(k,278)*y(k,23) + mat(k,549) = -(rxt(k,279)*y(k,55) + rxt(k,280)*y(k,134) + rxt(k,305)*y(k,218)) + mat(k,1982) = -rxt(k,279)*y(k,24) + mat(k,2209) = -rxt(k,280)*y(k,24) + mat(k,1619) = -rxt(k,305)*y(k,24) + mat(k,262) = -(rxt(k,285)*y(k,218)) + mat(k,1579) = -rxt(k,285)*y(k,25) + mat(k,821) = .800_r8*rxt(k,281)*y(k,195) + .200_r8*rxt(k,282)*y(k,199) + mat(k,1788) = .200_r8*rxt(k,282)*y(k,195) + mat(k,342) = -(rxt(k,286)*y(k,218)) + mat(k,1589) = -rxt(k,286)*y(k,26) + mat(k,822) = rxt(k,283)*y(k,204) + mat(k,2035) = rxt(k,283)*y(k,195) + mat(k,305) = -(rxt(k,287)*y(k,55) + rxt(k,288)*y(k,218)) + mat(k,1978) = -rxt(k,287)*y(k,27) + mat(k,1584) = -rxt(k,288)*y(k,27) + mat(k,1025) = -(rxt(k,308)*y(k,125) + rxt(k,309)*y(k,134) + rxt(k,326) & + *y(k,218)) + mat(k,1747) = -rxt(k,308)*y(k,28) + mat(k,2223) = -rxt(k,309)*y(k,28) + mat(k,1663) = -rxt(k,326)*y(k,28) + mat(k,837) = .130_r8*rxt(k,386)*y(k,134) + mat(k,2223) = mat(k,2223) + .130_r8*rxt(k,386)*y(k,97) + mat(k,410) = -(rxt(k,313)*y(k,218)) + mat(k,1599) = -rxt(k,313)*y(k,29) + mat(k,787) = rxt(k,311)*y(k,204) + mat(k,2039) = rxt(k,311)*y(k,196) + mat(k,110) = -(rxt(k,314)*y(k,218)) + mat(k,1557) = -rxt(k,314)*y(k,30) + mat(k,266) = -(rxt(k,409)*y(k,218)) + mat(k,1580) = -rxt(k,409)*y(k,31) + mat(k,624) = rxt(k,407)*y(k,204) + mat(k,2029) = rxt(k,407)*y(k,197) + mat(k,100) = -(rxt(k,201)*y(k,217)) + mat(k,1500) = -rxt(k,201)*y(k,32) + mat(k,142) = -(rxt(k,202)*y(k,217)) + mat(k,1505) = -rxt(k,202)*y(k,33) + mat(k,147) = -(rxt(k,228)*y(k,217)) + mat(k,1506) = -rxt(k,228)*y(k,34) + mat(k,114) = -(rxt(k,203)*y(k,217)) + mat(k,1502) = -rxt(k,203)*y(k,35) + mat(k,152) = -(rxt(k,204)*y(k,217)) + mat(k,1507) = -rxt(k,204)*y(k,36) + mat(k,118) = -(rxt(k,205)*y(k,217)) + mat(k,1503) = -rxt(k,205)*y(k,37) + mat(k,157) = -(rxt(k,206)*y(k,217)) + mat(k,1508) = -rxt(k,206)*y(k,38) + mat(k,122) = -(rxt(k,207)*y(k,217)) + mat(k,1504) = -rxt(k,207)*y(k,39) + mat(k,468) = -(rxt(k,239)*y(k,55) + rxt(k,240)*y(k,218) + rxt(k,251)*y(k,217)) + mat(k,1981) = -rxt(k,239)*y(k,40) + mat(k,1608) = -rxt(k,240)*y(k,40) + mat(k,1517) = -rxt(k,251)*y(k,40) + mat(k,1486) = -(rxt(k,176)*y(k,55) + rxt(k,212)*y(k,16) + rxt(k,256)*y(k,204) & + + rxt(k,257)*y(k,125) + rxt(k,258)*y(k,133) + rxt(k,259) & + *y(k,218)) + mat(k,2000) = -rxt(k,176)*y(k,41) + mat(k,1418) = -rxt(k,212)*y(k,41) + mat(k,2107) = -rxt(k,256)*y(k,41) + mat(k,1773) = -rxt(k,257)*y(k,41) + mat(k,2185) = -rxt(k,258)*y(k,41) + mat(k,1690) = -rxt(k,259)*y(k,41) + mat(k,673) = .400_r8*rxt(k,357)*y(k,218) + mat(k,1010) = .340_r8*rxt(k,441)*y(k,134) + mat(k,354) = .500_r8*rxt(k,328)*y(k,125) + mat(k,553) = rxt(k,280)*y(k,134) + mat(k,1032) = .500_r8*rxt(k,309)*y(k,134) + mat(k,614) = .500_r8*rxt(k,297)*y(k,218) + mat(k,799) = rxt(k,264)*y(k,218) + mat(k,457) = .300_r8*rxt(k,265)*y(k,218) + mat(k,1434) = (rxt(k,273)+rxt(k,274))*y(k,217) + mat(k,1716) = rxt(k,183)*y(k,199) + mat(k,1099) = .800_r8*rxt(k,302)*y(k,218) + mat(k,845) = .910_r8*rxt(k,386)*y(k,134) + mat(k,587) = .300_r8*rxt(k,377)*y(k,218) + mat(k,1200) = .800_r8*rxt(k,381)*y(k,199) + mat(k,1215) = .120_r8*rxt(k,339)*y(k,134) + mat(k,577) = .500_r8*rxt(k,352)*y(k,218) + mat(k,960) = .340_r8*rxt(k,444)*y(k,134) + mat(k,1338) = .600_r8*rxt(k,353)*y(k,134) + mat(k,1917) = .100_r8*rxt(k,359)*y(k,190) + rxt(k,263)*y(k,199) & + + .500_r8*rxt(k,330)*y(k,201) + .500_r8*rxt(k,299)*y(k,203) & + + .920_r8*rxt(k,369)*y(k,206) + .250_r8*rxt(k,337)*y(k,210) & + + rxt(k,346)*y(k,212) + rxt(k,320)*y(k,220) + rxt(k,324) & + *y(k,221) + .340_r8*rxt(k,453)*y(k,222) + .320_r8*rxt(k,458) & + *y(k,223) + .250_r8*rxt(k,394)*y(k,226) + mat(k,1773) = mat(k,1773) + .500_r8*rxt(k,328)*y(k,15) + rxt(k,370)*y(k,206) & + + .250_r8*rxt(k,336)*y(k,210) + rxt(k,347)*y(k,212) + mat(k,2246) = .340_r8*rxt(k,441)*y(k,5) + rxt(k,280)*y(k,24) & + + .500_r8*rxt(k,309)*y(k,28) + .910_r8*rxt(k,386)*y(k,97) & + + .120_r8*rxt(k,339)*y(k,104) + .340_r8*rxt(k,444)*y(k,109) & + + .600_r8*rxt(k,353)*y(k,110) + mat(k,528) = rxt(k,304)*y(k,218) + mat(k,1064) = .680_r8*rxt(k,462)*y(k,218) + mat(k,892) = .100_r8*rxt(k,359)*y(k,123) + mat(k,826) = .700_r8*rxt(k,282)*y(k,199) + mat(k,791) = rxt(k,310)*y(k,199) + mat(k,1390) = rxt(k,293)*y(k,199) + rxt(k,366)*y(k,206) + .250_r8*rxt(k,333) & + *y(k,210) + rxt(k,342)*y(k,212) + .250_r8*rxt(k,391)*y(k,226) + mat(k,1825) = rxt(k,183)*y(k,58) + .800_r8*rxt(k,381)*y(k,100) + rxt(k,263) & + *y(k,123) + .700_r8*rxt(k,282)*y(k,195) + rxt(k,310)*y(k,196) & + + rxt(k,293)*y(k,198) + (4.000_r8*rxt(k,260)+2.000_r8*rxt(k,261)) & + *y(k,199) + 1.500_r8*rxt(k,367)*y(k,206) + .750_r8*rxt(k,372) & + *y(k,207) + .880_r8*rxt(k,334)*y(k,210) + 2.000_r8*rxt(k,343) & + *y(k,212) + .750_r8*rxt(k,446)*y(k,216) + .800_r8*rxt(k,322) & + *y(k,221) + .930_r8*rxt(k,451)*y(k,222) + .950_r8*rxt(k,456) & + *y(k,223) + .800_r8*rxt(k,392)*y(k,226) + mat(k,569) = .500_r8*rxt(k,330)*y(k,123) + mat(k,709) = .500_r8*rxt(k,299)*y(k,123) + mat(k,2107) = mat(k,2107) + .450_r8*rxt(k,344)*y(k,212) + .150_r8*rxt(k,323) & + *y(k,221) + mat(k,1263) = .920_r8*rxt(k,369)*y(k,123) + rxt(k,370)*y(k,125) + rxt(k,366) & + *y(k,198) + 1.500_r8*rxt(k,367)*y(k,199) + mat(k,1295) = .750_r8*rxt(k,372)*y(k,199) + mat(k,1316) = .250_r8*rxt(k,337)*y(k,123) + .250_r8*rxt(k,336)*y(k,125) & + + .250_r8*rxt(k,333)*y(k,198) + .880_r8*rxt(k,334)*y(k,199) + mat(k,1358) = rxt(k,346)*y(k,123) + rxt(k,347)*y(k,125) + rxt(k,342)*y(k,198) & + + 2.000_r8*rxt(k,343)*y(k,199) + .450_r8*rxt(k,344)*y(k,204) & + + 4.000_r8*rxt(k,345)*y(k,212) + mat(k,1051) = .750_r8*rxt(k,446)*y(k,199) + mat(k,1526) = (rxt(k,273)+rxt(k,274))*y(k,53) + mat(k,1690) = mat(k,1690) + .400_r8*rxt(k,357)*y(k,1) + .500_r8*rxt(k,297) & + *y(k,50) + rxt(k,264)*y(k,51) + .300_r8*rxt(k,265)*y(k,52) & + + .800_r8*rxt(k,302)*y(k,73) + .300_r8*rxt(k,377)*y(k,98) & + + .500_r8*rxt(k,352)*y(k,108) + rxt(k,304)*y(k,139) & + + .680_r8*rxt(k,462)*y(k,179) + mat(k,772) = rxt(k,320)*y(k,123) + mat(k,1134) = rxt(k,324)*y(k,123) + .800_r8*rxt(k,322)*y(k,199) & + + .150_r8*rxt(k,323)*y(k,204) + mat(k,1115) = .340_r8*rxt(k,453)*y(k,123) + .930_r8*rxt(k,451)*y(k,199) + mat(k,917) = .320_r8*rxt(k,458)*y(k,123) + .950_r8*rxt(k,456)*y(k,199) + mat(k,1177) = .250_r8*rxt(k,394)*y(k,123) + .250_r8*rxt(k,391)*y(k,198) & + + .800_r8*rxt(k,392)*y(k,199) + end do + end subroutine nlnmat01 + subroutine nlnmat02( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,595) = -(rxt(k,241)*y(k,55) + rxt(k,242)*y(k,218) + rxt(k,252)*y(k,217)) + mat(k,1983) = -rxt(k,241)*y(k,42) + mat(k,1624) = -rxt(k,242)*y(k,42) + mat(k,1518) = -rxt(k,252)*y(k,42) + mat(k,126) = -(rxt(k,243)*y(k,218)) + mat(k,1558) = -rxt(k,243)*y(k,43) + mat(k,1086) = -(rxt(k,289)*y(k,125) + rxt(k,290)*y(k,218)) + mat(k,1751) = -rxt(k,289)*y(k,44) + mat(k,1667) = -rxt(k,290)*y(k,44) + mat(k,671) = .800_r8*rxt(k,357)*y(k,218) + mat(k,353) = rxt(k,328)*y(k,125) + mat(k,263) = rxt(k,285)*y(k,218) + mat(k,344) = .500_r8*rxt(k,286)*y(k,218) + mat(k,1026) = .500_r8*rxt(k,309)*y(k,134) + mat(k,1328) = .100_r8*rxt(k,353)*y(k,134) + mat(k,1896) = .400_r8*rxt(k,359)*y(k,190) + rxt(k,284)*y(k,195) & + + .270_r8*rxt(k,312)*y(k,196) + rxt(k,330)*y(k,201) + rxt(k,349) & + *y(k,214) + rxt(k,320)*y(k,220) + mat(k,1751) = mat(k,1751) + rxt(k,328)*y(k,15) + mat(k,2226) = .500_r8*rxt(k,309)*y(k,28) + .100_r8*rxt(k,353)*y(k,110) + mat(k,890) = .400_r8*rxt(k,359)*y(k,123) + mat(k,825) = rxt(k,284)*y(k,123) + 3.200_r8*rxt(k,281)*y(k,195) & + + .800_r8*rxt(k,282)*y(k,199) + mat(k,790) = .270_r8*rxt(k,312)*y(k,123) + mat(k,1806) = .800_r8*rxt(k,282)*y(k,195) + mat(k,567) = rxt(k,330)*y(k,123) + mat(k,2086) = .200_r8*rxt(k,348)*y(k,214) + mat(k,679) = rxt(k,349)*y(k,123) + .200_r8*rxt(k,348)*y(k,204) + mat(k,1667) = mat(k,1667) + .800_r8*rxt(k,357)*y(k,1) + rxt(k,285)*y(k,25) & + + .500_r8*rxt(k,286)*y(k,26) + mat(k,770) = rxt(k,320)*y(k,123) + mat(k,366) = -(rxt(k,244)*y(k,55) + rxt(k,245)*y(k,218)) + mat(k,1979) = -rxt(k,244)*y(k,45) + mat(k,1593) = -rxt(k,245)*y(k,45) + mat(k,103) = -(rxt(k,291)*y(k,218)) + mat(k,1556) = -rxt(k,291)*y(k,46) + mat(k,923) = -(rxt(k,327)*y(k,218)) + mat(k,1657) = -rxt(k,327)*y(k,47) + mat(k,670) = .800_r8*rxt(k,357)*y(k,218) + mat(k,996) = .520_r8*rxt(k,441)*y(k,134) + mat(k,352) = .500_r8*rxt(k,328)*y(k,125) + mat(k,947) = .520_r8*rxt(k,444)*y(k,134) + mat(k,1889) = .250_r8*rxt(k,359)*y(k,190) + .820_r8*rxt(k,312)*y(k,196) & + + .500_r8*rxt(k,330)*y(k,201) + .270_r8*rxt(k,453)*y(k,222) & + + .040_r8*rxt(k,458)*y(k,223) + mat(k,1741) = .500_r8*rxt(k,328)*y(k,15) + mat(k,2217) = .520_r8*rxt(k,441)*y(k,5) + .520_r8*rxt(k,444)*y(k,109) + mat(k,1059) = .500_r8*rxt(k,462)*y(k,218) + mat(k,889) = .250_r8*rxt(k,359)*y(k,123) + mat(k,789) = .820_r8*rxt(k,312)*y(k,123) + .820_r8*rxt(k,310)*y(k,199) + mat(k,1800) = .820_r8*rxt(k,310)*y(k,196) + .150_r8*rxt(k,451)*y(k,222) & + + .025_r8*rxt(k,456)*y(k,223) + mat(k,566) = .500_r8*rxt(k,330)*y(k,123) + mat(k,1657) = mat(k,1657) + .800_r8*rxt(k,357)*y(k,1) + .500_r8*rxt(k,462) & + *y(k,179) + mat(k,1107) = .270_r8*rxt(k,453)*y(k,123) + .150_r8*rxt(k,451)*y(k,199) + mat(k,914) = .040_r8*rxt(k,458)*y(k,123) + .025_r8*rxt(k,456)*y(k,199) + mat(k,1222) = -(rxt(k,315)*y(k,125) + rxt(k,316)*y(k,218)) + mat(k,1761) = -rxt(k,315)*y(k,48) + mat(k,1677) = -rxt(k,316)*y(k,48) + mat(k,1142) = rxt(k,317)*y(k,218) + mat(k,1211) = .880_r8*rxt(k,339)*y(k,134) + mat(k,1331) = .500_r8*rxt(k,353)*y(k,134) + mat(k,1906) = .170_r8*rxt(k,412)*y(k,200) + .050_r8*rxt(k,375)*y(k,207) & + + .250_r8*rxt(k,337)*y(k,210) + .170_r8*rxt(k,418)*y(k,213) & + + .400_r8*rxt(k,428)*y(k,224) + .250_r8*rxt(k,394)*y(k,226) & + + .540_r8*rxt(k,434)*y(k,227) + .510_r8*rxt(k,437)*y(k,229) + mat(k,1761) = mat(k,1761) + .050_r8*rxt(k,376)*y(k,207) + .250_r8*rxt(k,336) & + *y(k,210) + .250_r8*rxt(k,395)*y(k,226) + mat(k,859) = rxt(k,318)*y(k,218) + mat(k,2234) = .880_r8*rxt(k,339)*y(k,104) + .500_r8*rxt(k,353)*y(k,110) + mat(k,1381) = .250_r8*rxt(k,333)*y(k,210) + .250_r8*rxt(k,391)*y(k,226) + mat(k,1815) = .240_r8*rxt(k,334)*y(k,210) + .500_r8*rxt(k,322)*y(k,221) & + + .100_r8*rxt(k,392)*y(k,226) + mat(k,762) = .170_r8*rxt(k,412)*y(k,123) + .070_r8*rxt(k,411)*y(k,204) + mat(k,2095) = .070_r8*rxt(k,411)*y(k,200) + .070_r8*rxt(k,417)*y(k,213) + mat(k,1288) = .050_r8*rxt(k,375)*y(k,123) + .050_r8*rxt(k,376)*y(k,125) + mat(k,1311) = .250_r8*rxt(k,337)*y(k,123) + .250_r8*rxt(k,336)*y(k,125) & + + .250_r8*rxt(k,333)*y(k,198) + .240_r8*rxt(k,334)*y(k,199) + mat(k,877) = .170_r8*rxt(k,418)*y(k,123) + .070_r8*rxt(k,417)*y(k,204) + mat(k,1677) = mat(k,1677) + rxt(k,317)*y(k,94) + rxt(k,318)*y(k,126) + mat(k,1132) = .500_r8*rxt(k,322)*y(k,199) + mat(k,730) = .400_r8*rxt(k,428)*y(k,123) + mat(k,1175) = .250_r8*rxt(k,394)*y(k,123) + .250_r8*rxt(k,395)*y(k,125) & + + .250_r8*rxt(k,391)*y(k,198) + .100_r8*rxt(k,392)*y(k,199) + mat(k,754) = .540_r8*rxt(k,434)*y(k,123) + mat(k,502) = .510_r8*rxt(k,437)*y(k,123) + mat(k,685) = -(rxt(k,296)*y(k,218)) + mat(k,1634) = -rxt(k,296)*y(k,49) + mat(k,1020) = .120_r8*rxt(k,309)*y(k,134) + mat(k,2211) = .120_r8*rxt(k,309)*y(k,28) + mat(k,1371) = .100_r8*rxt(k,293)*y(k,199) + .150_r8*rxt(k,294)*y(k,204) + mat(k,1793) = .100_r8*rxt(k,293)*y(k,198) + mat(k,2061) = .150_r8*rxt(k,294)*y(k,198) + .150_r8*rxt(k,344)*y(k,212) + mat(k,1350) = .150_r8*rxt(k,344)*y(k,204) + mat(k,611) = -(rxt(k,297)*y(k,218)) + mat(k,1626) = -rxt(k,297)*y(k,50) + mat(k,1370) = .360_r8*rxt(k,294)*y(k,204) + mat(k,2055) = .360_r8*rxt(k,294)*y(k,198) + .400_r8*rxt(k,344)*y(k,212) + mat(k,1349) = .400_r8*rxt(k,344)*y(k,204) + mat(k,798) = -(rxt(k,264)*y(k,218)) + mat(k,1644) = -rxt(k,264)*y(k,51) + mat(k,1188) = .200_r8*rxt(k,381)*y(k,199) + mat(k,823) = .300_r8*rxt(k,282)*y(k,199) + mat(k,1795) = .200_r8*rxt(k,381)*y(k,100) + .300_r8*rxt(k,282)*y(k,195) & + + 2.000_r8*rxt(k,261)*y(k,199) + .250_r8*rxt(k,367)*y(k,206) & + + .250_r8*rxt(k,372)*y(k,207) + .250_r8*rxt(k,334)*y(k,210) & + + .250_r8*rxt(k,446)*y(k,216) + .500_r8*rxt(k,322)*y(k,221) & + + .250_r8*rxt(k,451)*y(k,222) + .250_r8*rxt(k,456)*y(k,223) & + + .300_r8*rxt(k,392)*y(k,226) + mat(k,1248) = .250_r8*rxt(k,367)*y(k,199) + mat(k,1278) = .250_r8*rxt(k,372)*y(k,199) + mat(k,1306) = .250_r8*rxt(k,334)*y(k,199) + mat(k,1044) = .250_r8*rxt(k,446)*y(k,199) + mat(k,1129) = .500_r8*rxt(k,322)*y(k,199) + mat(k,1105) = .250_r8*rxt(k,451)*y(k,199) + mat(k,912) = .250_r8*rxt(k,456)*y(k,199) + mat(k,1168) = .300_r8*rxt(k,392)*y(k,199) + mat(k,455) = -(rxt(k,265)*y(k,218)) + mat(k,1605) = -rxt(k,265)*y(k,52) + mat(k,1791) = rxt(k,262)*y(k,204) + mat(k,2046) = rxt(k,262)*y(k,199) + mat(k,1431) = -(rxt(k,177)*y(k,55) + rxt(k,233)*y(k,72) + rxt(k,266)*y(k,218) & + + (rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,217)) + mat(k,1997) = -rxt(k,177)*y(k,53) + mat(k,867) = -rxt(k,233)*y(k,53) + mat(k,1687) = -rxt(k,266)*y(k,53) + mat(k,1523) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,53) + mat(k,1031) = .100_r8*rxt(k,309)*y(k,134) + mat(k,2243) = .100_r8*rxt(k,309)*y(k,28) + mat(k,386) = -(rxt(k,229)*y(k,217) + rxt(k,246)*y(k,55) + rxt(k,247)*y(k,218)) + mat(k,1516) = -rxt(k,229)*y(k,54) + mat(k,1980) = -rxt(k,246)*y(k,54) + mat(k,1595) = -rxt(k,247)*y(k,54) + mat(k,2008) = -(rxt(k,176)*y(k,41) + rxt(k,177)*y(k,53) + rxt(k,178)*y(k,76) & + + rxt(k,179)*y(k,78) + (rxt(k,180) + rxt(k,181)) * y(k,204) & + + rxt(k,182)*y(k,134) + rxt(k,189)*y(k,59) + rxt(k,198)*y(k,91) & + + rxt(k,239)*y(k,40) + rxt(k,241)*y(k,42) + rxt(k,244)*y(k,45) & + + rxt(k,246)*y(k,54) + rxt(k,287)*y(k,27)) + mat(k,1493) = -rxt(k,176)*y(k,55) + mat(k,1439) = -rxt(k,177)*y(k,55) + mat(k,1410) = -rxt(k,178)*y(k,55) + mat(k,606) = -rxt(k,179)*y(k,55) + mat(k,2115) = -(rxt(k,180) + rxt(k,181)) * y(k,55) + mat(k,2254) = -rxt(k,182)*y(k,55) + mat(k,906) = -rxt(k,189)*y(k,55) + mat(k,817) = -rxt(k,198)*y(k,55) + mat(k,472) = -rxt(k,239)*y(k,55) + mat(k,600) = -rxt(k,241)*y(k,55) + mat(k,370) = -rxt(k,244)*y(k,55) + mat(k,390) = -rxt(k,246)*y(k,55) + mat(k,308) = -rxt(k,287)*y(k,55) + mat(k,2162) = rxt(k,217)*y(k,58) + mat(k,102) = 4.000_r8*rxt(k,201)*y(k,217) + mat(k,146) = rxt(k,202)*y(k,217) + mat(k,117) = 2.000_r8*rxt(k,203)*y(k,217) + mat(k,156) = 2.000_r8*rxt(k,204)*y(k,217) + mat(k,121) = 2.000_r8*rxt(k,205)*y(k,217) + mat(k,161) = rxt(k,206)*y(k,217) + mat(k,125) = 2.000_r8*rxt(k,207)*y(k,217) + mat(k,128) = 3.000_r8*rxt(k,243)*y(k,218) + mat(k,370) = mat(k,370) + rxt(k,245)*y(k,218) + mat(k,1724) = rxt(k,217)*y(k,18) + (4.000_r8*rxt(k,184)+2.000_r8*rxt(k,186)) & + *y(k,58) + rxt(k,188)*y(k,123) + rxt(k,193)*y(k,133) & + + rxt(k,471)*y(k,150) + rxt(k,183)*y(k,199) + rxt(k,194) & + *y(k,218) + mat(k,250) = rxt(k,238)*y(k,217) + mat(k,246) = rxt(k,253)*y(k,217) + rxt(k,248)*y(k,218) + mat(k,256) = rxt(k,254)*y(k,217) + rxt(k,249)*y(k,218) + mat(k,303) = rxt(k,255)*y(k,217) + rxt(k,250)*y(k,218) + mat(k,2138) = rxt(k,196)*y(k,133) + rxt(k,208)*y(k,217) + rxt(k,197)*y(k,218) + mat(k,1925) = rxt(k,188)*y(k,58) + mat(k,2193) = rxt(k,193)*y(k,58) + rxt(k,196)*y(k,84) + mat(k,1240) = rxt(k,471)*y(k,58) + mat(k,1833) = rxt(k,183)*y(k,58) + mat(k,1534) = 4.000_r8*rxt(k,201)*y(k,32) + rxt(k,202)*y(k,33) & + + 2.000_r8*rxt(k,203)*y(k,35) + 2.000_r8*rxt(k,204)*y(k,36) & + + 2.000_r8*rxt(k,205)*y(k,37) + rxt(k,206)*y(k,38) & + + 2.000_r8*rxt(k,207)*y(k,39) + rxt(k,238)*y(k,64) + rxt(k,253) & + *y(k,81) + rxt(k,254)*y(k,82) + rxt(k,255)*y(k,83) + rxt(k,208) & + *y(k,84) + mat(k,1698) = 3.000_r8*rxt(k,243)*y(k,43) + rxt(k,245)*y(k,45) + rxt(k,194) & + *y(k,58) + rxt(k,248)*y(k,81) + rxt(k,249)*y(k,82) + rxt(k,250) & + *y(k,83) + rxt(k,197)*y(k,84) + mat(k,1976) = rxt(k,189)*y(k,59) + mat(k,1706) = 2.000_r8*rxt(k,185)*y(k,58) + mat(k,898) = rxt(k,189)*y(k,55) + (rxt(k,529)+rxt(k,534)+rxt(k,539))*y(k,84) + mat(k,2122) = (rxt(k,529)+rxt(k,534)+rxt(k,539))*y(k,59) + (rxt(k,524) & + +rxt(k,530)+rxt(k,535))*y(k,91) + mat(k,813) = (rxt(k,524)+rxt(k,530)+rxt(k,535))*y(k,84) + mat(k,1705) = 2.000_r8*rxt(k,210)*y(k,58) + mat(k,1719) = -(rxt(k,183)*y(k,199) + (4._r8*rxt(k,184) + 4._r8*rxt(k,185) & + + 4._r8*rxt(k,186) + 4._r8*rxt(k,210)) * y(k,58) + rxt(k,187) & + *y(k,204) + rxt(k,188)*y(k,123) + rxt(k,190)*y(k,124) + rxt(k,193) & + *y(k,133) + (rxt(k,194) + rxt(k,195)) * y(k,218) + (rxt(k,216) & + + rxt(k,217) + rxt(k,218)) * y(k,18) + rxt(k,471)*y(k,150)) + mat(k,1828) = -rxt(k,183)*y(k,58) + mat(k,2110) = -rxt(k,187)*y(k,58) + mat(k,1920) = -rxt(k,188)*y(k,58) + mat(k,1964) = -rxt(k,190)*y(k,58) + mat(k,2188) = -rxt(k,193)*y(k,58) + mat(k,1693) = -(rxt(k,194) + rxt(k,195)) * y(k,58) + mat(k,2157) = -(rxt(k,216) + rxt(k,217) + rxt(k,218)) * y(k,58) + mat(k,1237) = -rxt(k,471)*y(k,58) + mat(k,2003) = rxt(k,198)*y(k,91) + rxt(k,182)*y(k,134) + rxt(k,181)*y(k,204) + mat(k,903) = rxt(k,191)*y(k,133) + mat(k,2133) = rxt(k,209)*y(k,217) + mat(k,816) = rxt(k,198)*y(k,55) + rxt(k,199)*y(k,133) + rxt(k,200)*y(k,218) + mat(k,2188) = mat(k,2188) + rxt(k,191)*y(k,59) + rxt(k,199)*y(k,91) + mat(k,2249) = rxt(k,182)*y(k,55) + mat(k,329) = rxt(k,476)*y(k,150) + mat(k,1237) = mat(k,1237) + rxt(k,476)*y(k,136) + mat(k,2110) = mat(k,2110) + rxt(k,181)*y(k,55) + mat(k,1529) = rxt(k,209)*y(k,84) + mat(k,1693) = mat(k,1693) + rxt(k,200)*y(k,91) + end do + end subroutine nlnmat02 + subroutine nlnmat03( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,900) = -(rxt(k,189)*y(k,55) + rxt(k,191)*y(k,133) + rxt(k,192)*y(k,218) & + + (rxt(k,529) + rxt(k,534) + rxt(k,539)) * y(k,84)) + mat(k,1988) = -rxt(k,189)*y(k,59) + mat(k,2177) = -rxt(k,191)*y(k,59) + mat(k,1655) = -rxt(k,192)*y(k,59) + mat(k,2126) = -(rxt(k,529) + rxt(k,534) + rxt(k,539)) * y(k,59) + mat(k,1711) = rxt(k,190)*y(k,124) + mat(k,1949) = rxt(k,190)*y(k,58) + mat(k,1124) = -(rxt(k,276)*y(k,218)) + mat(k,1670) = -rxt(k,276)*y(k,61) + mat(k,1005) = .230_r8*rxt(k,441)*y(k,134) + mat(k,1415) = rxt(k,212)*y(k,41) + mat(k,295) = .350_r8*rxt(k,278)*y(k,218) + mat(k,552) = .630_r8*rxt(k,280)*y(k,134) + mat(k,1027) = .560_r8*rxt(k,309)*y(k,134) + mat(k,1480) = rxt(k,212)*y(k,16) + rxt(k,176)*y(k,55) + rxt(k,257)*y(k,125) & + + rxt(k,258)*y(k,133) + rxt(k,259)*y(k,218) + mat(k,367) = rxt(k,244)*y(k,55) + mat(k,1221) = rxt(k,315)*y(k,125) + rxt(k,316)*y(k,218) + mat(k,1993) = rxt(k,176)*y(k,41) + rxt(k,244)*y(k,45) + mat(k,981) = rxt(k,303)*y(k,218) + mat(k,838) = .620_r8*rxt(k,386)*y(k,134) + mat(k,1209) = .650_r8*rxt(k,339)*y(k,134) + mat(k,955) = .230_r8*rxt(k,444)*y(k,134) + mat(k,1329) = .560_r8*rxt(k,353)*y(k,134) + mat(k,1899) = .170_r8*rxt(k,412)*y(k,200) + .220_r8*rxt(k,337)*y(k,210) & + + .400_r8*rxt(k,415)*y(k,211) + .350_r8*rxt(k,418)*y(k,213) & + + .225_r8*rxt(k,453)*y(k,222) + .250_r8*rxt(k,394)*y(k,226) + mat(k,1754) = rxt(k,257)*y(k,41) + rxt(k,315)*y(k,48) + .220_r8*rxt(k,336) & + *y(k,210) + .500_r8*rxt(k,395)*y(k,226) + mat(k,2178) = rxt(k,258)*y(k,41) + rxt(k,465)*y(k,137) + mat(k,2229) = .230_r8*rxt(k,441)*y(k,5) + .630_r8*rxt(k,280)*y(k,24) & + + .560_r8*rxt(k,309)*y(k,28) + .620_r8*rxt(k,386)*y(k,97) & + + .650_r8*rxt(k,339)*y(k,104) + .230_r8*rxt(k,444)*y(k,109) & + + .560_r8*rxt(k,353)*y(k,110) + mat(k,361) = rxt(k,465)*y(k,133) + rxt(k,466)*y(k,218) + mat(k,1061) = .700_r8*rxt(k,462)*y(k,218) + mat(k,1376) = .220_r8*rxt(k,333)*y(k,210) + .250_r8*rxt(k,391)*y(k,226) + mat(k,1809) = .110_r8*rxt(k,334)*y(k,210) + .125_r8*rxt(k,451)*y(k,222) & + + .200_r8*rxt(k,392)*y(k,226) + mat(k,761) = .170_r8*rxt(k,412)*y(k,123) + .070_r8*rxt(k,411)*y(k,204) + mat(k,2089) = .070_r8*rxt(k,411)*y(k,200) + .160_r8*rxt(k,414)*y(k,211) & + + .140_r8*rxt(k,417)*y(k,213) + mat(k,1308) = .220_r8*rxt(k,337)*y(k,123) + .220_r8*rxt(k,336)*y(k,125) & + + .220_r8*rxt(k,333)*y(k,198) + .110_r8*rxt(k,334)*y(k,199) + mat(k,716) = .400_r8*rxt(k,415)*y(k,123) + .160_r8*rxt(k,414)*y(k,204) + mat(k,876) = .350_r8*rxt(k,418)*y(k,123) + .140_r8*rxt(k,417)*y(k,204) + mat(k,1670) = mat(k,1670) + .350_r8*rxt(k,278)*y(k,23) + rxt(k,259)*y(k,41) & + + rxt(k,316)*y(k,48) + rxt(k,303)*y(k,74) + rxt(k,466)*y(k,137) & + + .700_r8*rxt(k,462)*y(k,179) + mat(k,1111) = .225_r8*rxt(k,453)*y(k,123) + .125_r8*rxt(k,451)*y(k,199) + mat(k,1172) = .250_r8*rxt(k,394)*y(k,123) + .500_r8*rxt(k,395)*y(k,125) & + + .250_r8*rxt(k,391)*y(k,198) + .200_r8*rxt(k,392)*y(k,199) + mat(k,993) = .270_r8*rxt(k,441)*y(k,134) + mat(k,1022) = .200_r8*rxt(k,309)*y(k,134) + mat(k,686) = rxt(k,296)*y(k,218) + mat(k,612) = .500_r8*rxt(k,297)*y(k,218) + mat(k,1123) = rxt(k,276)*y(k,218) + mat(k,1095) = .800_r8*rxt(k,302)*y(k,218) + mat(k,979) = rxt(k,303)*y(k,218) + mat(k,929) = rxt(k,268)*y(k,218) + mat(k,574) = .500_r8*rxt(k,352)*y(k,218) + mat(k,944) = .270_r8*rxt(k,444)*y(k,134) + mat(k,1325) = .100_r8*rxt(k,353)*y(k,134) + mat(k,1883) = rxt(k,295)*y(k,198) + .900_r8*rxt(k,453)*y(k,222) + mat(k,2213) = .270_r8*rxt(k,441)*y(k,5) + .200_r8*rxt(k,309)*y(k,28) & + + .270_r8*rxt(k,444)*y(k,109) + .100_r8*rxt(k,353)*y(k,110) + mat(k,1058) = 1.800_r8*rxt(k,462)*y(k,218) + mat(k,1372) = rxt(k,295)*y(k,123) + 4.000_r8*rxt(k,292)*y(k,198) & + + .900_r8*rxt(k,293)*y(k,199) + .490_r8*rxt(k,294)*y(k,204) & + + rxt(k,366)*y(k,206) + 2.000_r8*rxt(k,342)*y(k,212) & + + rxt(k,391)*y(k,226) + mat(k,1796) = .900_r8*rxt(k,293)*y(k,198) + rxt(k,343)*y(k,212) & + + .500_r8*rxt(k,451)*y(k,222) + mat(k,2072) = .490_r8*rxt(k,294)*y(k,198) + .450_r8*rxt(k,344)*y(k,212) + mat(k,1249) = rxt(k,366)*y(k,198) + mat(k,1351) = 2.000_r8*rxt(k,342)*y(k,198) + rxt(k,343)*y(k,199) & + + .450_r8*rxt(k,344)*y(k,204) + 4.000_r8*rxt(k,345)*y(k,212) + mat(k,1645) = rxt(k,296)*y(k,49) + .500_r8*rxt(k,297)*y(k,50) + rxt(k,276) & + *y(k,61) + .800_r8*rxt(k,302)*y(k,73) + rxt(k,303)*y(k,74) & + + rxt(k,268)*y(k,86) + .500_r8*rxt(k,352)*y(k,108) & + + 1.800_r8*rxt(k,462)*y(k,179) + mat(k,1106) = .900_r8*rxt(k,453)*y(k,123) + .500_r8*rxt(k,451)*y(k,199) + mat(k,1169) = rxt(k,391)*y(k,198) + mat(k,239) = -(rxt(k,237)*y(k,217)) + mat(k,1511) = -rxt(k,237)*y(k,63) + mat(k,143) = rxt(k,202)*y(k,217) + mat(k,148) = rxt(k,228)*y(k,217) + mat(k,153) = rxt(k,204)*y(k,217) + mat(k,119) = 2.000_r8*rxt(k,205)*y(k,217) + mat(k,158) = 2.000_r8*rxt(k,206)*y(k,217) + mat(k,123) = rxt(k,207)*y(k,217) + mat(k,107) = 2.000_r8*rxt(k,230)*y(k,217) + mat(k,251) = rxt(k,254)*y(k,217) + rxt(k,249)*y(k,218) + mat(k,298) = rxt(k,255)*y(k,217) + rxt(k,250)*y(k,218) + mat(k,1511) = mat(k,1511) + rxt(k,202)*y(k,33) + rxt(k,228)*y(k,34) & + + rxt(k,204)*y(k,36) + 2.000_r8*rxt(k,205)*y(k,37) & + + 2.000_r8*rxt(k,206)*y(k,38) + rxt(k,207)*y(k,39) & + + 2.000_r8*rxt(k,230)*y(k,77) + rxt(k,254)*y(k,82) + rxt(k,255) & + *y(k,83) + mat(k,1574) = rxt(k,249)*y(k,82) + rxt(k,250)*y(k,83) + mat(k,247) = -(rxt(k,238)*y(k,217)) + mat(k,1513) = -rxt(k,238)*y(k,64) + mat(k,115) = rxt(k,203)*y(k,217) + mat(k,154) = rxt(k,204)*y(k,217) + mat(k,243) = rxt(k,253)*y(k,217) + rxt(k,248)*y(k,218) + mat(k,1513) = mat(k,1513) + rxt(k,203)*y(k,35) + rxt(k,204)*y(k,36) & + + rxt(k,253)*y(k,81) + mat(k,1576) = rxt(k,248)*y(k,81) + mat(k,195) = -(rxt(k,410)*y(k,218)) + mat(k,1565) = -rxt(k,410)*y(k,65) + mat(k,189) = .180_r8*rxt(k,430)*y(k,218) + mat(k,1565) = mat(k,1565) + .180_r8*rxt(k,430)*y(k,181) + mat(k,283) = -(rxt(k,463)*y(k,125) + (rxt(k,464) + rxt(k,478)) * y(k,218)) + mat(k,1734) = -rxt(k,463)*y(k,66) + mat(k,1581) = -(rxt(k,464) + rxt(k,478)) * y(k,66) + mat(k,705) = rxt(k,298)*y(k,204) + mat(k,2027) = rxt(k,298)*y(k,203) + mat(k,865) = -(rxt(k,233)*y(k,53) + rxt(k,234)*y(k,76) + rxt(k,235)*y(k,230) & + + rxt(k,236)*y(k,88)) + mat(k,1428) = -rxt(k,233)*y(k,72) + mat(k,1401) = -rxt(k,234)*y(k,72) + mat(k,2265) = -rxt(k,235)*y(k,72) + mat(k,1460) = -rxt(k,236)*y(k,72) + mat(k,149) = rxt(k,228)*y(k,217) + mat(k,159) = rxt(k,206)*y(k,217) + mat(k,240) = 2.000_r8*rxt(k,237)*y(k,217) + mat(k,248) = rxt(k,238)*y(k,217) + mat(k,1520) = rxt(k,228)*y(k,34) + rxt(k,206)*y(k,38) + 2.000_r8*rxt(k,237) & + *y(k,63) + rxt(k,238)*y(k,64) + mat(k,1097) = -(rxt(k,302)*y(k,218)) + mat(k,1668) = -rxt(k,302)*y(k,73) + mat(k,583) = .700_r8*rxt(k,377)*y(k,218) + mat(k,535) = .500_r8*rxt(k,378)*y(k,218) + mat(k,376) = rxt(k,389)*y(k,218) + mat(k,1897) = .050_r8*rxt(k,375)*y(k,207) + .530_r8*rxt(k,337)*y(k,210) & + + .225_r8*rxt(k,453)*y(k,222) + .250_r8*rxt(k,394)*y(k,226) + mat(k,1752) = .050_r8*rxt(k,376)*y(k,207) + .530_r8*rxt(k,336)*y(k,210) & + + .250_r8*rxt(k,395)*y(k,226) + mat(k,1375) = .530_r8*rxt(k,333)*y(k,210) + .250_r8*rxt(k,391)*y(k,226) + mat(k,1807) = .260_r8*rxt(k,334)*y(k,210) + .125_r8*rxt(k,451)*y(k,222) & + + .100_r8*rxt(k,392)*y(k,226) + mat(k,1282) = .050_r8*rxt(k,375)*y(k,123) + .050_r8*rxt(k,376)*y(k,125) + mat(k,1307) = .530_r8*rxt(k,337)*y(k,123) + .530_r8*rxt(k,336)*y(k,125) & + + .530_r8*rxt(k,333)*y(k,198) + .260_r8*rxt(k,334)*y(k,199) + mat(k,1668) = mat(k,1668) + .700_r8*rxt(k,377)*y(k,98) + .500_r8*rxt(k,378) & + *y(k,99) + rxt(k,389)*y(k,114) + mat(k,1109) = .225_r8*rxt(k,453)*y(k,123) + .125_r8*rxt(k,451)*y(k,199) + mat(k,1171) = .250_r8*rxt(k,394)*y(k,123) + .250_r8*rxt(k,395)*y(k,125) & + + .250_r8*rxt(k,391)*y(k,198) + .100_r8*rxt(k,392)*y(k,199) + mat(k,980) = -(rxt(k,303)*y(k,218)) + mat(k,1661) = -rxt(k,303)*y(k,74) + mat(k,294) = .650_r8*rxt(k,278)*y(k,218) + mat(k,1096) = .200_r8*rxt(k,302)*y(k,218) + mat(k,1073) = rxt(k,390)*y(k,218) + mat(k,1892) = rxt(k,401)*y(k,192) + .050_r8*rxt(k,375)*y(k,207) & + + .400_r8*rxt(k,415)*y(k,211) + .170_r8*rxt(k,418)*y(k,213) & + + .700_r8*rxt(k,421)*y(k,219) + .600_r8*rxt(k,428)*y(k,224) & + + .250_r8*rxt(k,394)*y(k,226) + .340_r8*rxt(k,434)*y(k,227) & + + .170_r8*rxt(k,437)*y(k,229) + mat(k,1745) = .050_r8*rxt(k,376)*y(k,207) + .250_r8*rxt(k,395)*y(k,226) + mat(k,486) = rxt(k,401)*y(k,123) + mat(k,1373) = .250_r8*rxt(k,391)*y(k,226) + mat(k,1802) = .100_r8*rxt(k,392)*y(k,226) + mat(k,2083) = .160_r8*rxt(k,414)*y(k,211) + .070_r8*rxt(k,417)*y(k,213) + mat(k,1281) = .050_r8*rxt(k,375)*y(k,123) + .050_r8*rxt(k,376)*y(k,125) + mat(k,715) = .400_r8*rxt(k,415)*y(k,123) + .160_r8*rxt(k,414)*y(k,204) + mat(k,875) = .170_r8*rxt(k,418)*y(k,123) + .070_r8*rxt(k,417)*y(k,204) + mat(k,1661) = mat(k,1661) + .650_r8*rxt(k,278)*y(k,23) + .200_r8*rxt(k,302) & + *y(k,73) + rxt(k,390)*y(k,115) + mat(k,450) = .700_r8*rxt(k,421)*y(k,123) + mat(k,728) = .600_r8*rxt(k,428)*y(k,123) + mat(k,1170) = .250_r8*rxt(k,394)*y(k,123) + .250_r8*rxt(k,395)*y(k,125) & + + .250_r8*rxt(k,391)*y(k,198) + .100_r8*rxt(k,392)*y(k,199) + mat(k,752) = .340_r8*rxt(k,434)*y(k,123) + mat(k,501) = .170_r8*rxt(k,437)*y(k,123) + mat(k,1446) = -((rxt(k,136) + rxt(k,137) + rxt(k,138)) * y(k,204) + rxt(k,142) & + *y(k,134)) + mat(k,2105) = -(rxt(k,136) + rxt(k,137) + rxt(k,138)) * y(k,75) + mat(k,2244) = -rxt(k,142)*y(k,75) + mat(k,1484) = rxt(k,259)*y(k,218) + mat(k,1432) = rxt(k,273)*y(k,217) + mat(k,1998) = rxt(k,178)*y(k,76) + mat(k,868) = rxt(k,234)*y(k,76) + mat(k,1404) = rxt(k,178)*y(k,55) + rxt(k,234)*y(k,72) + rxt(k,134)*y(k,133) & + + rxt(k,125)*y(k,217) + rxt(k,143)*y(k,218) + mat(k,807) = rxt(k,232)*y(k,217) + mat(k,2128) = rxt(k,209)*y(k,217) + mat(k,493) = rxt(k,164)*y(k,218) + mat(k,2183) = rxt(k,134)*y(k,76) + rxt(k,146)*y(k,218) + mat(k,363) = rxt(k,466)*y(k,218) + mat(k,514) = rxt(k,472)*y(k,218) + mat(k,1235) = rxt(k,477)*y(k,218) + mat(k,1524) = rxt(k,273)*y(k,53) + rxt(k,125)*y(k,76) + rxt(k,232)*y(k,80) & + + rxt(k,209)*y(k,84) + mat(k,1688) = rxt(k,259)*y(k,41) + rxt(k,143)*y(k,76) + rxt(k,164)*y(k,111) & + + rxt(k,146)*y(k,133) + rxt(k,466)*y(k,137) + rxt(k,472) & + *y(k,148) + rxt(k,477)*y(k,150) + mat(k,1402) = -(rxt(k,125)*y(k,217) + rxt(k,134)*y(k,133) + rxt(k,143) & + *y(k,218) + rxt(k,178)*y(k,55) + rxt(k,234)*y(k,72)) + mat(k,1521) = -rxt(k,125)*y(k,76) + mat(k,2180) = -rxt(k,134)*y(k,76) + mat(k,1685) = -rxt(k,143)*y(k,76) + mat(k,1995) = -rxt(k,178)*y(k,76) + mat(k,866) = -rxt(k,234)*y(k,76) + mat(k,1430) = rxt(k,274)*y(k,217) + mat(k,1444) = rxt(k,136)*y(k,204) + mat(k,2102) = rxt(k,136)*y(k,75) + mat(k,1521) = mat(k,1521) + rxt(k,274)*y(k,53) + end do + end subroutine nlnmat03 + subroutine nlnmat04( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,106) = -(rxt(k,230)*y(k,217)) + mat(k,1501) = -rxt(k,230)*y(k,77) + mat(k,604) = -(rxt(k,135)*y(k,133) + rxt(k,144)*y(k,218) + rxt(k,179)*y(k,55)) + mat(k,2172) = -rxt(k,135)*y(k,78) + mat(k,1625) = -rxt(k,144)*y(k,78) + mat(k,1984) = -rxt(k,179)*y(k,78) + mat(k,2054) = 2.000_r8*rxt(k,150)*y(k,204) + mat(k,1625) = mat(k,1625) + 2.000_r8*rxt(k,149)*y(k,218) + mat(k,257) = rxt(k,479)*y(k,230) + mat(k,2261) = rxt(k,479)*y(k,152) + mat(k,805) = -(rxt(k,225)*y(k,133) + rxt(k,226)*y(k,218) + (rxt(k,231) & + + rxt(k,232)) * y(k,217)) + mat(k,2174) = -rxt(k,225)*y(k,80) + mat(k,1646) = -rxt(k,226)*y(k,80) + mat(k,1519) = -(rxt(k,231) + rxt(k,232)) * y(k,80) + mat(k,1414) = rxt(k,212)*y(k,41) + rxt(k,213)*y(k,204) + mat(k,1478) = rxt(k,212)*y(k,16) + mat(k,2073) = rxt(k,213)*y(k,16) + mat(k,242) = -(rxt(k,248)*y(k,218) + rxt(k,253)*y(k,217)) + mat(k,1575) = -rxt(k,248)*y(k,81) + mat(k,1512) = -rxt(k,253)*y(k,81) + mat(k,252) = -(rxt(k,249)*y(k,218) + rxt(k,254)*y(k,217)) + mat(k,1577) = -rxt(k,249)*y(k,82) + mat(k,1514) = -rxt(k,254)*y(k,82) + mat(k,299) = -(rxt(k,250)*y(k,218) + rxt(k,255)*y(k,217)) + mat(k,1583) = -rxt(k,250)*y(k,83) + mat(k,1515) = -rxt(k,255)*y(k,83) + mat(k,2140) = -(rxt(k,196)*y(k,133) + rxt(k,197)*y(k,218) + (rxt(k,208) & + + rxt(k,209)) * y(k,217) + (rxt(k,524) + rxt(k,530) + rxt(k,535) & + ) * y(k,91) + (rxt(k,529) + rxt(k,534) + rxt(k,539)) * y(k,59) & + + (rxt(k,531) + rxt(k,536)) * y(k,90)) + mat(k,2195) = -rxt(k,196)*y(k,84) + mat(k,1700) = -rxt(k,197)*y(k,84) + mat(k,1536) = -(rxt(k,208) + rxt(k,209)) * y(k,84) + mat(k,818) = -(rxt(k,524) + rxt(k,530) + rxt(k,535)) * y(k,84) + mat(k,907) = -(rxt(k,529) + rxt(k,534) + rxt(k,539)) * y(k,84) + mat(k,783) = -(rxt(k,531) + rxt(k,536)) * y(k,84) + mat(k,309) = rxt(k,287)*y(k,55) + mat(k,473) = rxt(k,239)*y(k,55) + mat(k,1495) = rxt(k,176)*y(k,55) + mat(k,602) = rxt(k,241)*y(k,55) + mat(k,372) = 2.000_r8*rxt(k,244)*y(k,55) + mat(k,1441) = rxt(k,177)*y(k,55) + mat(k,391) = rxt(k,246)*y(k,55) + mat(k,2010) = rxt(k,287)*y(k,27) + rxt(k,239)*y(k,40) + rxt(k,176)*y(k,41) & + + rxt(k,241)*y(k,42) + 2.000_r8*rxt(k,244)*y(k,45) + rxt(k,177) & + *y(k,53) + rxt(k,246)*y(k,54) + rxt(k,178)*y(k,76) + rxt(k,179) & + *y(k,78) + rxt(k,198)*y(k,91) + rxt(k,180)*y(k,204) + mat(k,1726) = rxt(k,195)*y(k,218) + mat(k,1411) = rxt(k,178)*y(k,55) + mat(k,608) = rxt(k,179)*y(k,55) + mat(k,818) = mat(k,818) + rxt(k,198)*y(k,55) + mat(k,2117) = rxt(k,180)*y(k,55) + mat(k,1700) = mat(k,1700) + rxt(k,195)*y(k,58) + mat(k,180) = -(rxt(k,267)*y(k,218) + rxt(k,275)*y(k,217)) + mat(k,1563) = -rxt(k,267)*y(k,85) + mat(k,1509) = -rxt(k,275)*y(k,85) + mat(k,930) = -(rxt(k,268)*y(k,218)) + mat(k,1658) = -rxt(k,268)*y(k,86) + mat(k,997) = .050_r8*rxt(k,441)*y(k,134) + mat(k,293) = .350_r8*rxt(k,278)*y(k,218) + mat(k,551) = .370_r8*rxt(k,280)*y(k,134) + mat(k,1024) = .120_r8*rxt(k,309)*y(k,134) + mat(k,836) = .110_r8*rxt(k,386)*y(k,134) + mat(k,1208) = .330_r8*rxt(k,339)*y(k,134) + mat(k,948) = .050_r8*rxt(k,444)*y(k,134) + mat(k,1326) = .120_r8*rxt(k,353)*y(k,134) + mat(k,1890) = rxt(k,271)*y(k,205) + mat(k,2218) = .050_r8*rxt(k,441)*y(k,5) + .370_r8*rxt(k,280)*y(k,24) & + + .120_r8*rxt(k,309)*y(k,28) + .110_r8*rxt(k,386)*y(k,97) & + + .330_r8*rxt(k,339)*y(k,104) + .050_r8*rxt(k,444)*y(k,109) & + + .120_r8*rxt(k,353)*y(k,110) + mat(k,2081) = rxt(k,269)*y(k,205) + mat(k,443) = rxt(k,271)*y(k,123) + rxt(k,269)*y(k,204) + mat(k,1658) = mat(k,1658) + .350_r8*rxt(k,278)*y(k,23) + mat(k,1426) = rxt(k,233)*y(k,72) + mat(k,864) = rxt(k,233)*y(k,53) + rxt(k,234)*y(k,76) + rxt(k,236)*y(k,88) & + + rxt(k,235)*y(k,230) + mat(k,1400) = rxt(k,234)*y(k,72) + mat(k,1459) = rxt(k,236)*y(k,72) + mat(k,2263) = rxt(k,235)*y(k,72) + mat(k,1464) = -(rxt(k,173)*y(k,218) + rxt(k,236)*y(k,72)) + mat(k,1689) = -rxt(k,173)*y(k,88) + mat(k,869) = -rxt(k,236)*y(k,88) + mat(k,1485) = rxt(k,257)*y(k,125) + mat(k,1089) = rxt(k,289)*y(k,125) + mat(k,1224) = rxt(k,315)*y(k,125) + mat(k,901) = (rxt(k,529)+rxt(k,534)+rxt(k,539))*y(k,84) + mat(k,285) = rxt(k,463)*y(k,125) + mat(k,2129) = (rxt(k,529)+rxt(k,534)+rxt(k,539))*y(k,59) + mat(k,1960) = rxt(k,172)*y(k,218) + mat(k,1772) = rxt(k,257)*y(k,41) + rxt(k,289)*y(k,44) + rxt(k,315)*y(k,48) & + + rxt(k,463)*y(k,66) + mat(k,1689) = mat(k,1689) + rxt(k,172)*y(k,124) + mat(k,422) = -(rxt(k,151)*y(k,218)) + mat(k,1601) = -rxt(k,151)*y(k,89) + mat(k,1935) = rxt(k,170)*y(k,204) + mat(k,2041) = rxt(k,170)*y(k,124) + mat(k,779) = -(rxt(k,227)*y(k,133) + (rxt(k,531) + rxt(k,536)) * y(k,84)) + mat(k,2173) = -rxt(k,227)*y(k,90) + mat(k,2124) = -(rxt(k,531) + rxt(k,536)) * y(k,90) + mat(k,2148) = rxt(k,219)*y(k,204) + mat(k,2070) = rxt(k,219)*y(k,18) + mat(k,814) = -(rxt(k,198)*y(k,55) + rxt(k,199)*y(k,133) + rxt(k,200)*y(k,218) & + + (rxt(k,524) + rxt(k,530) + rxt(k,535)) * y(k,84)) + mat(k,1986) = -rxt(k,198)*y(k,91) + mat(k,2175) = -rxt(k,199)*y(k,91) + mat(k,1647) = -rxt(k,200)*y(k,91) + mat(k,2125) = -(rxt(k,524) + rxt(k,530) + rxt(k,535)) * y(k,91) + mat(k,1709) = rxt(k,187)*y(k,204) + mat(k,899) = rxt(k,192)*y(k,218) + mat(k,2074) = rxt(k,187)*y(k,58) + mat(k,1647) = mat(k,1647) + rxt(k,192)*y(k,59) + mat(k,1154) = -(rxt(k,332)*y(k,218)) + mat(k,1673) = -rxt(k,332)*y(k,92) + mat(k,585) = .300_r8*rxt(k,377)*y(k,218) + mat(k,537) = .500_r8*rxt(k,378)*y(k,218) + mat(k,1902) = rxt(k,331)*y(k,201) + rxt(k,338)*y(k,210) + mat(k,568) = rxt(k,331)*y(k,123) + mat(k,1310) = rxt(k,338)*y(k,123) + mat(k,1673) = mat(k,1673) + .300_r8*rxt(k,377)*y(k,98) + .500_r8*rxt(k,378) & + *y(k,99) + mat(k,222) = -(rxt(k,363)*y(k,218)) + mat(k,1570) = -rxt(k,363)*y(k,93) + mat(k,1141) = -(rxt(k,317)*y(k,218)) + mat(k,1672) = -rxt(k,317)*y(k,94) + mat(k,584) = .700_r8*rxt(k,377)*y(k,218) + mat(k,536) = .500_r8*rxt(k,378)*y(k,218) + mat(k,575) = .500_r8*rxt(k,352)*y(k,218) + mat(k,1901) = .050_r8*rxt(k,375)*y(k,207) + .220_r8*rxt(k,337)*y(k,210) & + + .250_r8*rxt(k,394)*y(k,226) + mat(k,1756) = .050_r8*rxt(k,376)*y(k,207) + .220_r8*rxt(k,336)*y(k,210) & + + .250_r8*rxt(k,395)*y(k,226) + mat(k,544) = .500_r8*rxt(k,321)*y(k,218) + mat(k,1377) = .220_r8*rxt(k,333)*y(k,210) + .250_r8*rxt(k,391)*y(k,226) + mat(k,1811) = .230_r8*rxt(k,334)*y(k,210) + .200_r8*rxt(k,322)*y(k,221) & + + .100_r8*rxt(k,392)*y(k,226) + mat(k,1284) = .050_r8*rxt(k,375)*y(k,123) + .050_r8*rxt(k,376)*y(k,125) + mat(k,1309) = .220_r8*rxt(k,337)*y(k,123) + .220_r8*rxt(k,336)*y(k,125) & + + .220_r8*rxt(k,333)*y(k,198) + .230_r8*rxt(k,334)*y(k,199) + mat(k,1672) = mat(k,1672) + .700_r8*rxt(k,377)*y(k,98) + .500_r8*rxt(k,378) & + *y(k,99) + .500_r8*rxt(k,352)*y(k,108) + .500_r8*rxt(k,321) & + *y(k,146) + mat(k,1131) = .200_r8*rxt(k,322)*y(k,199) + mat(k,1173) = .250_r8*rxt(k,394)*y(k,123) + .250_r8*rxt(k,395)*y(k,125) & + + .250_r8*rxt(k,391)*y(k,198) + .100_r8*rxt(k,392)*y(k,199) + mat(k,347) = -(rxt(k,364)*y(k,218)) + mat(k,1590) = -rxt(k,364)*y(k,95) + mat(k,1857) = .870_r8*rxt(k,375)*y(k,207) + mat(k,1735) = .950_r8*rxt(k,376)*y(k,207) + mat(k,1368) = rxt(k,371)*y(k,207) + mat(k,1789) = .750_r8*rxt(k,372)*y(k,207) + mat(k,1274) = .870_r8*rxt(k,375)*y(k,123) + .950_r8*rxt(k,376)*y(k,125) & + + rxt(k,371)*y(k,198) + .750_r8*rxt(k,372)*y(k,199) + mat(k,136) = -(rxt(k,365)*y(k,218)) + mat(k,1559) = -rxt(k,365)*y(k,96) + mat(k,735) = .600_r8*rxt(k,388)*y(k,218) + mat(k,1559) = mat(k,1559) + .600_r8*rxt(k,388)*y(k,102) + mat(k,835) = -(rxt(k,379)*y(k,125) + rxt(k,386)*y(k,134) + rxt(k,387) & + *y(k,218)) + mat(k,1738) = -rxt(k,379)*y(k,97) + mat(k,2214) = -rxt(k,386)*y(k,97) + mat(k,1649) = -rxt(k,387)*y(k,97) + mat(k,582) = -(rxt(k,377)*y(k,218)) + mat(k,1622) = -rxt(k,377)*y(k,98) + mat(k,1870) = .080_r8*rxt(k,369)*y(k,206) + mat(k,1246) = .080_r8*rxt(k,369)*y(k,123) + mat(k,533) = -(rxt(k,378)*y(k,218)) + mat(k,1617) = -rxt(k,378)*y(k,99) + mat(k,1868) = .080_r8*rxt(k,375)*y(k,207) + mat(k,1275) = .080_r8*rxt(k,375)*y(k,123) + mat(k,1194) = -(rxt(k,380)*y(k,198) + rxt(k,381)*y(k,199) + rxt(k,382) & + *y(k,204) + rxt(k,383)*y(k,123) + rxt(k,384)*y(k,125)) + mat(k,1379) = -rxt(k,380)*y(k,100) + mat(k,1813) = -rxt(k,381)*y(k,100) + mat(k,2093) = -rxt(k,382)*y(k,100) + mat(k,1904) = -rxt(k,383)*y(k,100) + mat(k,1759) = -rxt(k,384)*y(k,100) + mat(k,839) = rxt(k,379)*y(k,125) + mat(k,1759) = mat(k,1759) + rxt(k,379)*y(k,97) + mat(k,404) = -(rxt(k,385)*y(k,218)) + mat(k,1598) = -rxt(k,385)*y(k,101) + mat(k,1186) = rxt(k,382)*y(k,204) + mat(k,2038) = rxt(k,382)*y(k,100) + mat(k,736) = -(rxt(k,388)*y(k,218)) + mat(k,1639) = -rxt(k,388)*y(k,102) + mat(k,2066) = rxt(k,368)*y(k,206) + rxt(k,373)*y(k,207) + mat(k,1247) = rxt(k,368)*y(k,204) + mat(k,1277) = rxt(k,373)*y(k,204) + mat(k,75) = -(rxt(k,509)*y(k,218)) + mat(k,1551) = -rxt(k,509)*y(k,103) + mat(k,1210) = -(rxt(k,339)*y(k,134) + rxt(k,340)*y(k,218)) + mat(k,2233) = -rxt(k,339)*y(k,104) + mat(k,1676) = -rxt(k,340)*y(k,104) + mat(k,840) = .300_r8*rxt(k,386)*y(k,134) + mat(k,1905) = .360_r8*rxt(k,369)*y(k,206) + mat(k,1760) = .400_r8*rxt(k,370)*y(k,206) + mat(k,2233) = mat(k,2233) + .300_r8*rxt(k,386)*y(k,97) + mat(k,1380) = .390_r8*rxt(k,366)*y(k,206) + mat(k,1814) = .310_r8*rxt(k,367)*y(k,206) + mat(k,1255) = .360_r8*rxt(k,369)*y(k,123) + .400_r8*rxt(k,370)*y(k,125) & + + .390_r8*rxt(k,366)*y(k,198) + .310_r8*rxt(k,367)*y(k,199) + end do + end subroutine nlnmat04 + subroutine nlnmat05( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,311) = -(rxt(k,341)*y(k,218)) + mat(k,1585) = -rxt(k,341)*y(k,105) + mat(k,2031) = rxt(k,335)*y(k,210) + mat(k,1305) = rxt(k,335)*y(k,204) + mat(k,507) = -(rxt(k,350)*y(k,218)) + mat(k,1613) = -rxt(k,350)*y(k,106) + mat(k,1866) = .800_r8*rxt(k,359)*y(k,190) + mat(k,883) = .800_r8*rxt(k,359)*y(k,123) + mat(k,316) = -(rxt(k,351)*y(k,218)) + mat(k,1586) = -rxt(k,351)*y(k,107) + mat(k,2032) = .800_r8*rxt(k,348)*y(k,214) + mat(k,677) = .800_r8*rxt(k,348)*y(k,204) + mat(k,573) = -(rxt(k,352)*y(k,218)) + mat(k,1621) = -rxt(k,352)*y(k,108) + mat(k,1941) = rxt(k,355)*y(k,212) + mat(k,1348) = rxt(k,355)*y(k,124) + mat(k,949) = -(rxt(k,443)*y(k,125) + rxt(k,444)*y(k,134) + rxt(k,445) & + *y(k,218)) + mat(k,1743) = -rxt(k,443)*y(k,109) + mat(k,2219) = -rxt(k,444)*y(k,109) + mat(k,1659) = -rxt(k,445)*y(k,109) + mat(k,1333) = -(rxt(k,353)*y(k,134) + rxt(k,354)*y(k,218)) + mat(k,2239) = -rxt(k,353)*y(k,110) + mat(k,1682) = -rxt(k,354)*y(k,110) + mat(k,843) = .200_r8*rxt(k,386)*y(k,134) + mat(k,1910) = .560_r8*rxt(k,369)*y(k,206) + mat(k,1766) = .600_r8*rxt(k,370)*y(k,206) + mat(k,2239) = mat(k,2239) + .200_r8*rxt(k,386)*y(k,97) + mat(k,1385) = .610_r8*rxt(k,366)*y(k,206) + mat(k,1819) = .440_r8*rxt(k,367)*y(k,206) + mat(k,1259) = .560_r8*rxt(k,369)*y(k,123) + .600_r8*rxt(k,370)*y(k,125) & + + .610_r8*rxt(k,366)*y(k,198) + .440_r8*rxt(k,367)*y(k,199) + mat(k,492) = -(rxt(k,152)*y(k,123) + (rxt(k,153) + rxt(k,154) + rxt(k,155) & + ) * y(k,124) + rxt(k,164)*y(k,218)) + mat(k,1864) = -rxt(k,152)*y(k,111) + mat(k,1937) = -(rxt(k,153) + rxt(k,154) + rxt(k,155)) * y(k,111) + mat(k,1611) = -rxt(k,164)*y(k,111) + mat(k,184) = -((rxt(k,168) + rxt(k,169)) * y(k,217)) + mat(k,1510) = -(rxt(k,168) + rxt(k,169)) * y(k,112) + mat(k,491) = rxt(k,153)*y(k,124) + mat(k,1933) = rxt(k,153)*y(k,111) + mat(k,1934) = rxt(k,171)*y(k,125) + mat(k,1733) = rxt(k,171)*y(k,124) + mat(k,374) = -(rxt(k,389)*y(k,218)) + mat(k,1594) = -rxt(k,389)*y(k,114) + mat(k,1185) = .200_r8*rxt(k,381)*y(k,199) + mat(k,1790) = .200_r8*rxt(k,381)*y(k,100) + mat(k,1074) = -(rxt(k,390)*y(k,218)) + mat(k,1666) = -rxt(k,390)*y(k,115) + mat(k,1190) = rxt(k,383)*y(k,123) + rxt(k,384)*y(k,125) + rxt(k,380)*y(k,198) & + + .800_r8*rxt(k,381)*y(k,199) + mat(k,1895) = rxt(k,383)*y(k,100) + mat(k,1750) = rxt(k,384)*y(k,100) + mat(k,1374) = rxt(k,380)*y(k,100) + mat(k,1805) = .800_r8*rxt(k,381)*y(k,100) + mat(k,97) = -(rxt(k,480)*y(k,218)) + mat(k,1555) = -rxt(k,480)*y(k,119) + mat(k,1923) = -(rxt(k,152)*y(k,111) + rxt(k,161)*y(k,125) + rxt(k,165) & + *y(k,204) + rxt(k,166)*y(k,134) + rxt(k,167)*y(k,133) + rxt(k,188) & + *y(k,58) + rxt(k,220)*y(k,18) + rxt(k,263)*y(k,199) + rxt(k,271) & + *y(k,205) + rxt(k,284)*y(k,195) + rxt(k,295)*y(k,198) + rxt(k,299) & + *y(k,203) + rxt(k,312)*y(k,196) + rxt(k,320)*y(k,220) + rxt(k,324) & + *y(k,221) + (rxt(k,330) + rxt(k,331)) * y(k,201) + (rxt(k,337) & + + rxt(k,338)) * y(k,210) + rxt(k,346)*y(k,212) + rxt(k,349) & + *y(k,214) + (rxt(k,359) + rxt(k,360)) * y(k,190) + rxt(k,369) & + *y(k,206) + rxt(k,375)*y(k,207) + rxt(k,383)*y(k,100) + rxt(k,394) & + *y(k,226) + rxt(k,398)*y(k,189) + rxt(k,401)*y(k,192) + rxt(k,406) & + *y(k,194) + rxt(k,408)*y(k,197) + rxt(k,412)*y(k,200) + rxt(k,415) & + *y(k,211) + rxt(k,418)*y(k,213) + rxt(k,421)*y(k,219) + rxt(k,428) & + *y(k,224) + rxt(k,434)*y(k,227) + rxt(k,437)*y(k,229) + rxt(k,448) & + *y(k,216) + rxt(k,453)*y(k,222) + rxt(k,458)*y(k,223)) + mat(k,496) = -rxt(k,152)*y(k,123) + mat(k,1779) = -rxt(k,161)*y(k,123) + mat(k,2113) = -rxt(k,165)*y(k,123) + mat(k,2252) = -rxt(k,166)*y(k,123) + mat(k,2191) = -rxt(k,167)*y(k,123) + mat(k,1722) = -rxt(k,188)*y(k,123) + mat(k,2160) = -rxt(k,220)*y(k,123) + mat(k,1831) = -rxt(k,263)*y(k,123) + mat(k,445) = -rxt(k,271)*y(k,123) + mat(k,829) = -rxt(k,284)*y(k,123) + mat(k,1394) = -rxt(k,295)*y(k,123) + mat(k,711) = -rxt(k,299)*y(k,123) + mat(k,794) = -rxt(k,312)*y(k,123) + mat(k,774) = -rxt(k,320)*y(k,123) + mat(k,1137) = -rxt(k,324)*y(k,123) + mat(k,570) = -(rxt(k,330) + rxt(k,331)) * y(k,123) + mat(k,1320) = -(rxt(k,337) + rxt(k,338)) * y(k,123) + mat(k,1362) = -rxt(k,346)*y(k,123) + mat(k,682) = -rxt(k,349)*y(k,123) + mat(k,895) = -(rxt(k,359) + rxt(k,360)) * y(k,123) + mat(k,1267) = -rxt(k,369)*y(k,123) + mat(k,1299) = -rxt(k,375)*y(k,123) + mat(k,1204) = -rxt(k,383)*y(k,123) + mat(k,1181) = -rxt(k,394)*y(k,123) + mat(k,522) = -rxt(k,398)*y(k,123) + mat(k,488) = -rxt(k,401)*y(k,123) + mat(k,439) = -rxt(k,406)*y(k,123) + mat(k,628) = -rxt(k,408)*y(k,123) + mat(k,765) = -rxt(k,412)*y(k,123) + mat(k,717) = -rxt(k,415)*y(k,123) + mat(k,880) = -rxt(k,418)*y(k,123) + mat(k,452) = -rxt(k,421)*y(k,123) + mat(k,732) = -rxt(k,428)*y(k,123) + mat(k,757) = -rxt(k,434)*y(k,123) + mat(k,504) = -rxt(k,437)*y(k,123) + mat(k,1055) = -rxt(k,448)*y(k,123) + mat(k,1118) = -rxt(k,453)*y(k,123) + mat(k,920) = -rxt(k,458)*y(k,123) + mat(k,496) = mat(k,496) + 2.000_r8*rxt(k,154)*y(k,124) + rxt(k,164)*y(k,218) + mat(k,186) = 2.000_r8*rxt(k,168)*y(k,217) + mat(k,1967) = 2.000_r8*rxt(k,154)*y(k,111) + rxt(k,157)*y(k,133) + rxt(k,473) & + *y(k,150) + mat(k,2191) = mat(k,2191) + rxt(k,157)*y(k,124) + mat(k,1238) = rxt(k,473)*y(k,124) + mat(k,1532) = 2.000_r8*rxt(k,168)*y(k,112) + mat(k,1696) = rxt(k,164)*y(k,111) + mat(k,1968) = -((rxt(k,153) + rxt(k,154) + rxt(k,155)) * y(k,111) + (rxt(k,157) & + + rxt(k,159)) * y(k,133) + rxt(k,158)*y(k,134) + rxt(k,170) & + *y(k,204) + rxt(k,171)*y(k,125) + rxt(k,172)*y(k,218) + rxt(k,190) & + *y(k,58) + rxt(k,221)*y(k,18) + rxt(k,306)*y(k,198) + rxt(k,355) & + *y(k,212) + rxt(k,413)*y(k,200) + rxt(k,416)*y(k,211) + rxt(k,419) & + *y(k,213) + rxt(k,423)*y(k,141) + rxt(k,426)*y(k,189) + rxt(k,473) & + *y(k,150)) + mat(k,497) = -(rxt(k,153) + rxt(k,154) + rxt(k,155)) * y(k,124) + mat(k,2192) = -(rxt(k,157) + rxt(k,159)) * y(k,124) + mat(k,2253) = -rxt(k,158)*y(k,124) + mat(k,2114) = -rxt(k,170)*y(k,124) + mat(k,1780) = -rxt(k,171)*y(k,124) + mat(k,1697) = -rxt(k,172)*y(k,124) + mat(k,1723) = -rxt(k,190)*y(k,124) + mat(k,2161) = -rxt(k,221)*y(k,124) + mat(k,1395) = -rxt(k,306)*y(k,124) + mat(k,1363) = -rxt(k,355)*y(k,124) + mat(k,766) = -rxt(k,413)*y(k,124) + mat(k,718) = -rxt(k,416)*y(k,124) + mat(k,881) = -rxt(k,419)*y(k,124) + mat(k,466) = -rxt(k,423)*y(k,124) + mat(k,523) = -rxt(k,426)*y(k,124) + mat(k,1239) = -rxt(k,473)*y(k,124) + mat(k,675) = rxt(k,357)*y(k,218) + mat(k,357) = rxt(k,328)*y(k,125) + mat(k,2161) = mat(k,2161) + rxt(k,220)*y(k,123) + mat(k,1723) = mat(k,1723) + rxt(k,188)*y(k,123) + mat(k,425) = rxt(k,151)*y(k,218) + mat(k,589) = .700_r8*rxt(k,377)*y(k,218) + mat(k,1205) = rxt(k,383)*y(k,123) + rxt(k,384)*y(k,125) + mat(k,1924) = rxt(k,220)*y(k,18) + rxt(k,188)*y(k,58) + rxt(k,383)*y(k,100) & + + 2.000_r8*rxt(k,161)*y(k,125) + rxt(k,167)*y(k,133) & + + rxt(k,166)*y(k,134) + rxt(k,398)*y(k,189) + rxt(k,359) & + *y(k,190) + rxt(k,401)*y(k,192) + rxt(k,406)*y(k,194) & + + rxt(k,284)*y(k,195) + rxt(k,312)*y(k,196) + rxt(k,408) & + *y(k,197) + rxt(k,295)*y(k,198) + rxt(k,263)*y(k,199) & + + rxt(k,412)*y(k,200) + rxt(k,330)*y(k,201) + rxt(k,299) & + *y(k,203) + rxt(k,165)*y(k,204) + rxt(k,271)*y(k,205) & + + .920_r8*rxt(k,369)*y(k,206) + .920_r8*rxt(k,375)*y(k,207) & + + rxt(k,337)*y(k,210) + rxt(k,415)*y(k,211) + rxt(k,346) & + *y(k,212) + rxt(k,418)*y(k,213) + rxt(k,349)*y(k,214) & + + 1.600_r8*rxt(k,448)*y(k,216) + rxt(k,421)*y(k,219) & + + rxt(k,320)*y(k,220) + rxt(k,324)*y(k,221) + .900_r8*rxt(k,453) & + *y(k,222) + .800_r8*rxt(k,458)*y(k,223) + rxt(k,428)*y(k,224) & + + rxt(k,394)*y(k,226) + rxt(k,434)*y(k,227) + rxt(k,437) & + *y(k,229) + mat(k,1780) = mat(k,1780) + rxt(k,328)*y(k,15) + rxt(k,384)*y(k,100) & + + 2.000_r8*rxt(k,161)*y(k,123) + rxt(k,162)*y(k,133) & + + rxt(k,160)*y(k,204) + rxt(k,370)*y(k,206) + rxt(k,376) & + *y(k,207) + rxt(k,336)*y(k,210) + rxt(k,347)*y(k,212) & + + 2.000_r8*rxt(k,449)*y(k,216) + rxt(k,163)*y(k,218) & + + rxt(k,395)*y(k,226) + mat(k,863) = rxt(k,318)*y(k,218) + mat(k,2192) = mat(k,2192) + rxt(k,167)*y(k,123) + rxt(k,162)*y(k,125) + mat(k,2253) = mat(k,2253) + rxt(k,166)*y(k,123) + mat(k,622) = rxt(k,455)*y(k,218) + mat(k,523) = mat(k,523) + rxt(k,398)*y(k,123) + mat(k,896) = rxt(k,359)*y(k,123) + mat(k,489) = rxt(k,401)*y(k,123) + mat(k,440) = rxt(k,406)*y(k,123) + mat(k,830) = rxt(k,284)*y(k,123) + mat(k,795) = rxt(k,312)*y(k,123) + mat(k,629) = rxt(k,408)*y(k,123) + mat(k,1395) = mat(k,1395) + rxt(k,295)*y(k,123) + mat(k,1832) = rxt(k,263)*y(k,123) + .500_r8*rxt(k,446)*y(k,216) + mat(k,766) = mat(k,766) + rxt(k,412)*y(k,123) + mat(k,571) = rxt(k,330)*y(k,123) + mat(k,712) = rxt(k,299)*y(k,123) + mat(k,2114) = mat(k,2114) + rxt(k,165)*y(k,123) + rxt(k,160)*y(k,125) + mat(k,446) = rxt(k,271)*y(k,123) + mat(k,1268) = .920_r8*rxt(k,369)*y(k,123) + rxt(k,370)*y(k,125) + mat(k,1300) = .920_r8*rxt(k,375)*y(k,123) + rxt(k,376)*y(k,125) + mat(k,1321) = rxt(k,337)*y(k,123) + rxt(k,336)*y(k,125) + mat(k,718) = mat(k,718) + rxt(k,415)*y(k,123) + mat(k,1363) = mat(k,1363) + rxt(k,346)*y(k,123) + rxt(k,347)*y(k,125) + mat(k,881) = mat(k,881) + rxt(k,418)*y(k,123) + mat(k,683) = rxt(k,349)*y(k,123) + mat(k,1056) = 1.600_r8*rxt(k,448)*y(k,123) + 2.000_r8*rxt(k,449)*y(k,125) & + + .500_r8*rxt(k,446)*y(k,199) + mat(k,1697) = mat(k,1697) + rxt(k,357)*y(k,1) + rxt(k,151)*y(k,89) & + + .700_r8*rxt(k,377)*y(k,98) + rxt(k,163)*y(k,125) + rxt(k,318) & + *y(k,126) + rxt(k,455)*y(k,176) + mat(k,453) = rxt(k,421)*y(k,123) + mat(k,775) = rxt(k,320)*y(k,123) + mat(k,1138) = rxt(k,324)*y(k,123) + mat(k,1119) = .900_r8*rxt(k,453)*y(k,123) + mat(k,921) = .800_r8*rxt(k,458)*y(k,123) + mat(k,733) = rxt(k,428)*y(k,123) + mat(k,1182) = rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125) + mat(k,758) = rxt(k,434)*y(k,123) + mat(k,505) = rxt(k,437)*y(k,123) + end do + end subroutine nlnmat05 + subroutine nlnmat06( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,1777) = -(rxt(k,160)*y(k,204) + rxt(k,161)*y(k,123) + rxt(k,162) & + *y(k,133) + rxt(k,163)*y(k,218) + rxt(k,171)*y(k,124) + rxt(k,257) & + *y(k,41) + rxt(k,289)*y(k,44) + rxt(k,308)*y(k,28) + rxt(k,315) & + *y(k,48) + rxt(k,328)*y(k,15) + rxt(k,336)*y(k,210) + rxt(k,347) & + *y(k,212) + rxt(k,370)*y(k,206) + rxt(k,376)*y(k,207) + rxt(k,379) & + *y(k,97) + rxt(k,384)*y(k,100) + rxt(k,395)*y(k,226) + rxt(k,440) & + *y(k,5) + rxt(k,443)*y(k,109) + rxt(k,449)*y(k,216) + rxt(k,460) & + *y(k,178) + rxt(k,463)*y(k,66)) + mat(k,2111) = -rxt(k,160)*y(k,125) + mat(k,1921) = -rxt(k,161)*y(k,125) + mat(k,2189) = -rxt(k,162)*y(k,125) + mat(k,1694) = -rxt(k,163)*y(k,125) + mat(k,1965) = -rxt(k,171)*y(k,125) + mat(k,1489) = -rxt(k,257)*y(k,125) + mat(k,1091) = -rxt(k,289)*y(k,125) + mat(k,1034) = -rxt(k,308)*y(k,125) + mat(k,1226) = -rxt(k,315)*y(k,125) + mat(k,356) = -rxt(k,328)*y(k,125) + mat(k,1318) = -rxt(k,336)*y(k,125) + mat(k,1360) = -rxt(k,347)*y(k,125) + mat(k,1265) = -rxt(k,370)*y(k,125) + mat(k,1297) = -rxt(k,376)*y(k,125) + mat(k,847) = -rxt(k,379)*y(k,125) + mat(k,1202) = -rxt(k,384)*y(k,125) + mat(k,1179) = -rxt(k,395)*y(k,125) + mat(k,1012) = -rxt(k,440)*y(k,125) + mat(k,962) = -rxt(k,443)*y(k,125) + mat(k,1053) = -rxt(k,449)*y(k,125) + mat(k,976) = -rxt(k,460)*y(k,125) + mat(k,287) = -rxt(k,463)*y(k,125) + mat(k,561) = rxt(k,222)*y(k,133) + mat(k,2004) = rxt(k,189)*y(k,59) + mat(k,904) = rxt(k,189)*y(k,55) + rxt(k,191)*y(k,133) + rxt(k,192)*y(k,218) + mat(k,871) = rxt(k,236)*y(k,88) + mat(k,1468) = rxt(k,236)*y(k,72) + rxt(k,173)*y(k,218) + mat(k,579) = .500_r8*rxt(k,352)*y(k,218) + mat(k,1965) = mat(k,1965) + rxt(k,159)*y(k,133) + rxt(k,158)*y(k,134) + mat(k,2189) = mat(k,2189) + rxt(k,222)*y(k,19) + rxt(k,191)*y(k,59) & + + rxt(k,159)*y(k,124) + mat(k,2250) = rxt(k,158)*y(k,124) + mat(k,530) = rxt(k,304)*y(k,218) + mat(k,1694) = mat(k,1694) + rxt(k,192)*y(k,59) + rxt(k,173)*y(k,88) & + + .500_r8*rxt(k,352)*y(k,108) + rxt(k,304)*y(k,139) + mat(k,858) = -(rxt(k,318)*y(k,218)) + mat(k,1651) = -rxt(k,318)*y(k,126) + mat(k,1023) = rxt(k,308)*y(k,125) + mat(k,534) = .500_r8*rxt(k,378)*y(k,218) + mat(k,406) = rxt(k,385)*y(k,218) + mat(k,375) = rxt(k,389)*y(k,218) + mat(k,1071) = rxt(k,390)*y(k,218) + mat(k,1740) = rxt(k,308)*y(k,28) + mat(k,1651) = mat(k,1651) + .500_r8*rxt(k,378)*y(k,99) + rxt(k,385)*y(k,101) & + + rxt(k,389)*y(k,114) + rxt(k,390)*y(k,115) + mat(k,392) = -(rxt(k,450)*y(k,218)) + mat(k,1596) = -rxt(k,450)*y(k,127) + mat(k,2036) = rxt(k,447)*y(k,216) + mat(k,1042) = rxt(k,447)*y(k,204) + mat(k,2197) = -(rxt(k,131)*y(k,134) + 4._r8*rxt(k,132)*y(k,133) + rxt(k,134) & + *y(k,76) + rxt(k,135)*y(k,78) + rxt(k,140)*y(k,204) + rxt(k,146) & + *y(k,218) + (rxt(k,157) + rxt(k,159)) * y(k,124) + rxt(k,162) & + *y(k,125) + rxt(k,167)*y(k,123) + rxt(k,191)*y(k,59) + rxt(k,193) & + *y(k,58) + rxt(k,196)*y(k,84) + rxt(k,199)*y(k,91) + rxt(k,222) & + *y(k,19) + rxt(k,223)*y(k,18) + rxt(k,225)*y(k,80) + rxt(k,227) & + *y(k,90) + rxt(k,258)*y(k,41) + rxt(k,465)*y(k,137)) + mat(k,2258) = -rxt(k,131)*y(k,133) + mat(k,1412) = -rxt(k,134)*y(k,133) + mat(k,609) = -rxt(k,135)*y(k,133) + mat(k,2119) = -rxt(k,140)*y(k,133) + mat(k,1702) = -rxt(k,146)*y(k,133) + mat(k,1973) = -(rxt(k,157) + rxt(k,159)) * y(k,133) + mat(k,1785) = -rxt(k,162)*y(k,133) + mat(k,1929) = -rxt(k,167)*y(k,133) + mat(k,908) = -rxt(k,191)*y(k,133) + mat(k,1728) = -rxt(k,193)*y(k,133) + mat(k,2142) = -rxt(k,196)*y(k,133) + mat(k,819) = -rxt(k,199)*y(k,133) + mat(k,564) = -rxt(k,222)*y(k,133) + mat(k,2166) = -rxt(k,223)*y(k,133) + mat(k,811) = -rxt(k,225)*y(k,133) + mat(k,785) = -rxt(k,227)*y(k,133) + mat(k,1497) = -rxt(k,258)*y(k,133) + mat(k,365) = -rxt(k,465)*y(k,133) + mat(k,1456) = rxt(k,138)*y(k,204) + mat(k,498) = rxt(k,152)*y(k,123) + rxt(k,153)*y(k,124) + mat(k,1929) = mat(k,1929) + rxt(k,152)*y(k,111) + mat(k,1973) = mat(k,1973) + rxt(k,153)*y(k,111) + mat(k,2258) = mat(k,2258) + 2.000_r8*rxt(k,130)*y(k,217) + mat(k,2119) = mat(k,2119) + rxt(k,138)*y(k,75) + mat(k,1538) = 2.000_r8*rxt(k,130)*y(k,134) + mat(k,1702) = mat(k,1702) + 2.000_r8*rxt(k,148)*y(k,218) + mat(k,2259) = -((rxt(k,129) + rxt(k,130)) * y(k,217) + rxt(k,131)*y(k,133) & + + rxt(k,141)*y(k,204) + rxt(k,142)*y(k,75) + rxt(k,147)*y(k,218) & + + rxt(k,158)*y(k,124) + rxt(k,166)*y(k,123) + rxt(k,182)*y(k,55) & + + rxt(k,214)*y(k,16) + rxt(k,280)*y(k,24) + rxt(k,309)*y(k,28) & + + rxt(k,339)*y(k,104) + rxt(k,353)*y(k,110) + rxt(k,386)*y(k,97) & + + rxt(k,424)*y(k,141) + rxt(k,441)*y(k,5) + rxt(k,444)*y(k,109) & + + rxt(k,469)*y(k,148) + rxt(k,475)*y(k,150)) + mat(k,1539) = -(rxt(k,129) + rxt(k,130)) * y(k,134) + mat(k,2198) = -rxt(k,131)*y(k,134) + mat(k,2120) = -rxt(k,141)*y(k,134) + mat(k,1457) = -rxt(k,142)*y(k,134) + mat(k,1703) = -rxt(k,147)*y(k,134) + mat(k,1974) = -rxt(k,158)*y(k,134) + mat(k,1930) = -rxt(k,166)*y(k,134) + mat(k,2013) = -rxt(k,182)*y(k,134) + mat(k,1424) = -rxt(k,214)*y(k,134) + mat(k,556) = -rxt(k,280)*y(k,134) + mat(k,1040) = -rxt(k,309)*y(k,134) + mat(k,1219) = -rxt(k,339)*y(k,134) + mat(k,1346) = -rxt(k,353)*y(k,134) + mat(k,850) = -rxt(k,386)*y(k,134) + mat(k,467) = -rxt(k,424)*y(k,134) + mat(k,1018) = -rxt(k,441)*y(k,134) + mat(k,968) = -rxt(k,444)*y(k,134) + mat(k,517) = -rxt(k,469)*y(k,134) + mat(k,1244) = -rxt(k,475)*y(k,134) + mat(k,1398) = .150_r8*rxt(k,294)*y(k,204) + mat(k,2120) = mat(k,2120) + .150_r8*rxt(k,294)*y(k,198) + .150_r8*rxt(k,344) & + *y(k,212) + mat(k,1366) = .150_r8*rxt(k,344)*y(k,204) + mat(k,326) = -(rxt(k,476)*y(k,150)) + mat(k,1230) = -rxt(k,476)*y(k,136) + mat(k,2146) = rxt(k,216)*y(k,58) + mat(k,1708) = rxt(k,216)*y(k,18) + 2.000_r8*rxt(k,186)*y(k,58) + mat(k,358) = -(rxt(k,465)*y(k,133) + rxt(k,466)*y(k,218)) + mat(k,2169) = -rxt(k,465)*y(k,137) + mat(k,1592) = -rxt(k,466)*y(k,137) + mat(k,1147) = rxt(k,332)*y(k,218) + mat(k,1852) = .100_r8*rxt(k,453)*y(k,222) + mat(k,1572) = rxt(k,332)*y(k,92) + mat(k,1103) = .100_r8*rxt(k,453)*y(k,123) + mat(k,525) = -(rxt(k,304)*y(k,218)) + mat(k,1616) = -rxt(k,304)*y(k,139) + mat(k,1939) = rxt(k,306)*y(k,198) + mat(k,1369) = rxt(k,306)*y(k,124) + mat(k,1932) = rxt(k,426)*y(k,189) + mat(k,518) = rxt(k,426)*y(k,124) + mat(k,464) = -(rxt(k,423)*y(k,124) + rxt(k,424)*y(k,134)) + mat(k,1936) = -rxt(k,423)*y(k,141) + mat(k,2207) = -rxt(k,424)*y(k,141) + mat(k,197) = .070_r8*rxt(k,410)*y(k,218) + mat(k,1862) = rxt(k,408)*y(k,197) + mat(k,175) = .060_r8*rxt(k,422)*y(k,218) + mat(k,218) = .070_r8*rxt(k,438)*y(k,218) + mat(k,625) = rxt(k,408)*y(k,123) + mat(k,1607) = .070_r8*rxt(k,410)*y(k,65) + .060_r8*rxt(k,422)*y(k,142) & + + .070_r8*rxt(k,438)*y(k,185) + mat(k,173) = -(rxt(k,422)*y(k,218)) + mat(k,1562) = -rxt(k,422)*y(k,142) + mat(k,165) = .530_r8*rxt(k,399)*y(k,218) + mat(k,1562) = mat(k,1562) + .530_r8*rxt(k,399)*y(k,6) + mat(k,331) = -(rxt(k,425)*y(k,218)) + mat(k,1587) = -rxt(k,425)*y(k,143) + mat(k,2033) = rxt(k,420)*y(k,219) + mat(k,448) = rxt(k,420)*y(k,204) + mat(k,541) = -(rxt(k,321)*y(k,218)) + mat(k,1618) = -rxt(k,321)*y(k,146) + mat(k,2053) = rxt(k,319)*y(k,220) + mat(k,768) = rxt(k,319)*y(k,204) + mat(k,398) = -(rxt(k,325)*y(k,218)) + mat(k,1597) = -rxt(k,325)*y(k,147) + mat(k,2037) = .850_r8*rxt(k,323)*y(k,221) + mat(k,1128) = .850_r8*rxt(k,323)*y(k,204) + mat(k,512) = -(rxt(k,469)*y(k,134) + rxt(k,472)*y(k,218)) + mat(k,2208) = -rxt(k,469)*y(k,148) + mat(k,1614) = -rxt(k,472)*y(k,148) + mat(k,1233) = -(rxt(k,470)*y(k,18) + rxt(k,471)*y(k,58) + rxt(k,473)*y(k,124) & + + rxt(k,475)*y(k,134) + rxt(k,476)*y(k,136) + rxt(k,477) & + *y(k,218)) + mat(k,2150) = -rxt(k,470)*y(k,150) + mat(k,1712) = -rxt(k,471)*y(k,150) + mat(k,1954) = -rxt(k,473)*y(k,150) + mat(k,2235) = -rxt(k,475)*y(k,150) + mat(k,328) = -rxt(k,476)*y(k,150) + mat(k,1678) = -rxt(k,477)*y(k,150) + mat(k,2179) = rxt(k,465)*y(k,137) + mat(k,2235) = mat(k,2235) + rxt(k,469)*y(k,148) + mat(k,362) = rxt(k,465)*y(k,133) + mat(k,513) = rxt(k,469)*y(k,134) + rxt(k,472)*y(k,218) + mat(k,1678) = mat(k,1678) + rxt(k,472)*y(k,148) + mat(k,852) = -(rxt(k,468)*y(k,218)) + mat(k,1650) = -rxt(k,468)*y(k,151) + mat(k,2149) = rxt(k,470)*y(k,150) + mat(k,1710) = rxt(k,471)*y(k,150) + mat(k,284) = rxt(k,463)*y(k,125) + (rxt(k,464)+.500_r8*rxt(k,478))*y(k,218) + mat(k,1947) = rxt(k,473)*y(k,150) + mat(k,1739) = rxt(k,463)*y(k,66) + mat(k,2215) = rxt(k,475)*y(k,150) + mat(k,327) = rxt(k,476)*y(k,150) + mat(k,360) = rxt(k,466)*y(k,218) + mat(k,1232) = rxt(k,470)*y(k,18) + rxt(k,471)*y(k,58) + rxt(k,473)*y(k,124) & + + rxt(k,475)*y(k,134) + rxt(k,476)*y(k,136) + rxt(k,477) & + *y(k,218) + mat(k,1650) = mat(k,1650) + (rxt(k,464)+.500_r8*rxt(k,478))*y(k,66) & + + rxt(k,466)*y(k,137) + rxt(k,477)*y(k,150) + mat(k,258) = -(rxt(k,479)*y(k,230)) + mat(k,2262) = -rxt(k,479)*y(k,152) + mat(k,851) = rxt(k,468)*y(k,218) + mat(k,1578) = rxt(k,468)*y(k,151) + mat(k,985) = .2202005_r8*rxt(k,497)*y(k,134) + mat(k,936) = .0508005_r8*rxt(k,513)*y(k,134) + mat(k,1840) = .1279005_r8*rxt(k,496)*y(k,191) + .0097005_r8*rxt(k,501) & + *y(k,193) + .0003005_r8*rxt(k,504)*y(k,208) & + + .1056005_r8*rxt(k,508)*y(k,209) + .0245005_r8*rxt(k,512) & + *y(k,215) + .0154005_r8*rxt(k,518)*y(k,225) & + + .0063005_r8*rxt(k,522)*y(k,228) + mat(k,2200) = .2202005_r8*rxt(k,497)*y(k,5) + .0508005_r8*rxt(k,513)*y(k,109) + mat(k,44) = .5931005_r8*rxt(k,515)*y(k,218) + mat(k,50) = .1279005_r8*rxt(k,496)*y(k,123) + .2202005_r8*rxt(k,495)*y(k,204) + mat(k,56) = .0097005_r8*rxt(k,501)*y(k,123) + .0023005_r8*rxt(k,500)*y(k,204) + mat(k,2015) = .2202005_r8*rxt(k,495)*y(k,191) + .0023005_r8*rxt(k,500) & + *y(k,193) + .0031005_r8*rxt(k,503)*y(k,208) & + + .2381005_r8*rxt(k,507)*y(k,209) + .0508005_r8*rxt(k,511) & + *y(k,215) + .1364005_r8*rxt(k,517)*y(k,225) & + + .1677005_r8*rxt(k,521)*y(k,228) + mat(k,62) = .0003005_r8*rxt(k,504)*y(k,123) + .0031005_r8*rxt(k,503)*y(k,204) + mat(k,68) = .1056005_r8*rxt(k,508)*y(k,123) + .2381005_r8*rxt(k,507)*y(k,204) + mat(k,76) = .0245005_r8*rxt(k,512)*y(k,123) + .0508005_r8*rxt(k,511)*y(k,204) + mat(k,1541) = .5931005_r8*rxt(k,515)*y(k,173) + mat(k,82) = .0154005_r8*rxt(k,518)*y(k,123) + .1364005_r8*rxt(k,517)*y(k,204) + mat(k,88) = .0063005_r8*rxt(k,522)*y(k,123) + .1677005_r8*rxt(k,521)*y(k,204) + end do + end subroutine nlnmat06 + subroutine nlnmat07( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,986) = .2067005_r8*rxt(k,497)*y(k,134) + mat(k,937) = .1149005_r8*rxt(k,513)*y(k,134) + mat(k,1841) = .1792005_r8*rxt(k,496)*y(k,191) + .0034005_r8*rxt(k,501) & + *y(k,193) + .0003005_r8*rxt(k,504)*y(k,208) & + + .1026005_r8*rxt(k,508)*y(k,209) + .0082005_r8*rxt(k,512) & + *y(k,215) + .0452005_r8*rxt(k,518)*y(k,225) & + + .0237005_r8*rxt(k,522)*y(k,228) + mat(k,2201) = .2067005_r8*rxt(k,497)*y(k,5) + .1149005_r8*rxt(k,513)*y(k,109) + mat(k,45) = .1534005_r8*rxt(k,515)*y(k,218) + mat(k,51) = .1792005_r8*rxt(k,496)*y(k,123) + .2067005_r8*rxt(k,495)*y(k,204) + mat(k,57) = .0034005_r8*rxt(k,501)*y(k,123) + .0008005_r8*rxt(k,500)*y(k,204) + mat(k,2016) = .2067005_r8*rxt(k,495)*y(k,191) + .0008005_r8*rxt(k,500) & + *y(k,193) + .0035005_r8*rxt(k,503)*y(k,208) & + + .1308005_r8*rxt(k,507)*y(k,209) + .1149005_r8*rxt(k,511) & + *y(k,215) + .0101005_r8*rxt(k,517)*y(k,225) & + + .0174005_r8*rxt(k,521)*y(k,228) + mat(k,63) = .0003005_r8*rxt(k,504)*y(k,123) + .0035005_r8*rxt(k,503)*y(k,204) + mat(k,69) = .1026005_r8*rxt(k,508)*y(k,123) + .1308005_r8*rxt(k,507)*y(k,204) + mat(k,77) = .0082005_r8*rxt(k,512)*y(k,123) + .1149005_r8*rxt(k,511)*y(k,204) + mat(k,1542) = .1534005_r8*rxt(k,515)*y(k,173) + mat(k,83) = .0452005_r8*rxt(k,518)*y(k,123) + .0101005_r8*rxt(k,517)*y(k,204) + mat(k,89) = .0237005_r8*rxt(k,522)*y(k,123) + .0174005_r8*rxt(k,521)*y(k,204) + mat(k,987) = .0653005_r8*rxt(k,497)*y(k,134) + mat(k,938) = .0348005_r8*rxt(k,513)*y(k,134) + mat(k,1842) = .0676005_r8*rxt(k,496)*y(k,191) + .1579005_r8*rxt(k,501) & + *y(k,193) + .0073005_r8*rxt(k,504)*y(k,208) & + + .0521005_r8*rxt(k,508)*y(k,209) + .0772005_r8*rxt(k,512) & + *y(k,215) + .0966005_r8*rxt(k,518)*y(k,225) & + + .0025005_r8*rxt(k,522)*y(k,228) + mat(k,2202) = .0653005_r8*rxt(k,497)*y(k,5) + .0348005_r8*rxt(k,513)*y(k,109) + mat(k,46) = .0459005_r8*rxt(k,515)*y(k,218) + mat(k,52) = .0676005_r8*rxt(k,496)*y(k,123) + .0653005_r8*rxt(k,495)*y(k,204) + mat(k,58) = .1579005_r8*rxt(k,501)*y(k,123) + .0843005_r8*rxt(k,500)*y(k,204) + mat(k,2017) = .0653005_r8*rxt(k,495)*y(k,191) + .0843005_r8*rxt(k,500) & + *y(k,193) + .0003005_r8*rxt(k,503)*y(k,208) & + + .0348005_r8*rxt(k,507)*y(k,209) + .0348005_r8*rxt(k,511) & + *y(k,215) + .0763005_r8*rxt(k,517)*y(k,225) + .086_r8*rxt(k,521) & + *y(k,228) + mat(k,64) = .0073005_r8*rxt(k,504)*y(k,123) + .0003005_r8*rxt(k,503)*y(k,204) + mat(k,70) = .0521005_r8*rxt(k,508)*y(k,123) + .0348005_r8*rxt(k,507)*y(k,204) + mat(k,78) = .0772005_r8*rxt(k,512)*y(k,123) + .0348005_r8*rxt(k,511)*y(k,204) + mat(k,1543) = .0459005_r8*rxt(k,515)*y(k,173) + mat(k,84) = .0966005_r8*rxt(k,518)*y(k,123) + .0763005_r8*rxt(k,517)*y(k,204) + mat(k,90) = .0025005_r8*rxt(k,522)*y(k,123) + .086_r8*rxt(k,521)*y(k,204) + mat(k,988) = .1749305_r8*rxt(k,494)*y(k,125) + .1284005_r8*rxt(k,497) & + *y(k,134) + mat(k,832) = .0590245_r8*rxt(k,502)*y(k,125) + .0033005_r8*rxt(k,505) & + *y(k,134) + mat(k,939) = .1749305_r8*rxt(k,510)*y(k,125) + .0554005_r8*rxt(k,513) & + *y(k,134) + mat(k,1843) = .079_r8*rxt(k,496)*y(k,191) + .0059005_r8*rxt(k,501)*y(k,193) & + + .0057005_r8*rxt(k,504)*y(k,208) + .0143005_r8*rxt(k,508) & + *y(k,209) + .0332005_r8*rxt(k,512)*y(k,215) & + + .0073005_r8*rxt(k,518)*y(k,225) + .011_r8*rxt(k,522)*y(k,228) + mat(k,1731) = .1749305_r8*rxt(k,494)*y(k,5) + .0590245_r8*rxt(k,502)*y(k,97) & + + .1749305_r8*rxt(k,510)*y(k,109) + mat(k,2203) = .1284005_r8*rxt(k,497)*y(k,5) + .0033005_r8*rxt(k,505)*y(k,97) & + + .0554005_r8*rxt(k,513)*y(k,109) + mat(k,47) = .0085005_r8*rxt(k,515)*y(k,218) + mat(k,53) = .079_r8*rxt(k,496)*y(k,123) + .1284005_r8*rxt(k,495)*y(k,204) + mat(k,59) = .0059005_r8*rxt(k,501)*y(k,123) + .0443005_r8*rxt(k,500)*y(k,204) + mat(k,2018) = .1284005_r8*rxt(k,495)*y(k,191) + .0443005_r8*rxt(k,500) & + *y(k,193) + .0271005_r8*rxt(k,503)*y(k,208) & + + .0076005_r8*rxt(k,507)*y(k,209) + .0554005_r8*rxt(k,511) & + *y(k,215) + .2157005_r8*rxt(k,517)*y(k,225) & + + .0512005_r8*rxt(k,521)*y(k,228) + mat(k,65) = .0057005_r8*rxt(k,504)*y(k,123) + .0271005_r8*rxt(k,503)*y(k,204) + mat(k,71) = .0143005_r8*rxt(k,508)*y(k,123) + .0076005_r8*rxt(k,507)*y(k,204) + mat(k,79) = .0332005_r8*rxt(k,512)*y(k,123) + .0554005_r8*rxt(k,511)*y(k,204) + mat(k,1544) = .0085005_r8*rxt(k,515)*y(k,173) + mat(k,85) = .0073005_r8*rxt(k,518)*y(k,123) + .2157005_r8*rxt(k,517)*y(k,204) + mat(k,91) = .011_r8*rxt(k,522)*y(k,123) + .0512005_r8*rxt(k,521)*y(k,204) + mat(k,989) = .5901905_r8*rxt(k,494)*y(k,125) + .114_r8*rxt(k,497)*y(k,134) + mat(k,833) = .0250245_r8*rxt(k,502)*y(k,125) + mat(k,940) = .5901905_r8*rxt(k,510)*y(k,125) + .1278005_r8*rxt(k,513) & + *y(k,134) + mat(k,1844) = .1254005_r8*rxt(k,496)*y(k,191) + .0536005_r8*rxt(k,501) & + *y(k,193) + .0623005_r8*rxt(k,504)*y(k,208) & + + .0166005_r8*rxt(k,508)*y(k,209) + .130_r8*rxt(k,512)*y(k,215) & + + .238_r8*rxt(k,518)*y(k,225) + .1185005_r8*rxt(k,522)*y(k,228) + mat(k,1732) = .5901905_r8*rxt(k,494)*y(k,5) + .0250245_r8*rxt(k,502)*y(k,97) & + + .5901905_r8*rxt(k,510)*y(k,109) + mat(k,2204) = .114_r8*rxt(k,497)*y(k,5) + .1278005_r8*rxt(k,513)*y(k,109) + mat(k,48) = .0128005_r8*rxt(k,515)*y(k,218) + mat(k,54) = .1254005_r8*rxt(k,496)*y(k,123) + .114_r8*rxt(k,495)*y(k,204) + mat(k,60) = .0536005_r8*rxt(k,501)*y(k,123) + .1621005_r8*rxt(k,500)*y(k,204) + mat(k,2019) = .114_r8*rxt(k,495)*y(k,191) + .1621005_r8*rxt(k,500)*y(k,193) & + + .0474005_r8*rxt(k,503)*y(k,208) + .0113005_r8*rxt(k,507) & + *y(k,209) + .1278005_r8*rxt(k,511)*y(k,215) & + + .0738005_r8*rxt(k,517)*y(k,225) + .1598005_r8*rxt(k,521) & + *y(k,228) + mat(k,66) = .0623005_r8*rxt(k,504)*y(k,123) + .0474005_r8*rxt(k,503)*y(k,204) + mat(k,72) = .0166005_r8*rxt(k,508)*y(k,123) + .0113005_r8*rxt(k,507)*y(k,204) + mat(k,80) = .130_r8*rxt(k,512)*y(k,123) + .1278005_r8*rxt(k,511)*y(k,204) + mat(k,1545) = .0128005_r8*rxt(k,515)*y(k,173) + mat(k,86) = .238_r8*rxt(k,518)*y(k,123) + .0738005_r8*rxt(k,517)*y(k,204) + mat(k,92) = .1185005_r8*rxt(k,522)*y(k,123) + .1598005_r8*rxt(k,521)*y(k,204) + mat(k,49) = -(rxt(k,515)*y(k,218)) + mat(k,1546) = -rxt(k,515)*y(k,173) + mat(k,190) = .100_r8*rxt(k,430)*y(k,218) + mat(k,208) = .230_r8*rxt(k,432)*y(k,218) + mat(k,1566) = .100_r8*rxt(k,430)*y(k,181) + .230_r8*rxt(k,432)*y(k,183) + mat(k,643) = -(rxt(k,454)*y(k,218)) + mat(k,1630) = -rxt(k,454)*y(k,175) + mat(k,2058) = rxt(k,452)*y(k,222) + mat(k,1104) = rxt(k,452)*y(k,204) + mat(k,618) = -(rxt(k,455)*y(k,218)) + mat(k,1627) = -rxt(k,455)*y(k,176) + mat(k,1872) = .200_r8*rxt(k,448)*y(k,216) + .200_r8*rxt(k,458)*y(k,223) + mat(k,1792) = .500_r8*rxt(k,446)*y(k,216) + mat(k,1043) = .200_r8*rxt(k,448)*y(k,123) + .500_r8*rxt(k,446)*y(k,199) + mat(k,911) = .200_r8*rxt(k,458)*y(k,123) + mat(k,475) = -(rxt(k,459)*y(k,218)) + mat(k,1609) = -rxt(k,459)*y(k,177) + mat(k,2049) = rxt(k,457)*y(k,223) + mat(k,910) = rxt(k,457)*y(k,204) + mat(k,970) = -(rxt(k,460)*y(k,125) + rxt(k,461)*y(k,218)) + mat(k,1744) = -rxt(k,460)*y(k,178) + mat(k,1660) = -rxt(k,461)*y(k,178) + mat(k,998) = .330_r8*rxt(k,441)*y(k,134) + mat(k,950) = .330_r8*rxt(k,444)*y(k,134) + mat(k,1891) = .800_r8*rxt(k,448)*y(k,216) + .800_r8*rxt(k,458)*y(k,223) + mat(k,1744) = mat(k,1744) + rxt(k,449)*y(k,216) + mat(k,2220) = .330_r8*rxt(k,441)*y(k,5) + .330_r8*rxt(k,444)*y(k,109) + mat(k,619) = rxt(k,455)*y(k,218) + mat(k,1801) = .500_r8*rxt(k,446)*y(k,216) + rxt(k,456)*y(k,223) + mat(k,1045) = .800_r8*rxt(k,448)*y(k,123) + rxt(k,449)*y(k,125) & + + .500_r8*rxt(k,446)*y(k,199) + mat(k,1660) = mat(k,1660) + rxt(k,455)*y(k,176) + mat(k,915) = .800_r8*rxt(k,458)*y(k,123) + rxt(k,456)*y(k,199) + mat(k,1060) = -(rxt(k,462)*y(k,218)) + mat(k,1665) = -rxt(k,462)*y(k,179) + mat(k,1002) = .300_r8*rxt(k,441)*y(k,134) + mat(k,953) = .300_r8*rxt(k,444)*y(k,134) + mat(k,1894) = .900_r8*rxt(k,453)*y(k,222) + mat(k,2225) = .300_r8*rxt(k,441)*y(k,5) + .300_r8*rxt(k,444)*y(k,109) + mat(k,1804) = rxt(k,451)*y(k,222) + mat(k,1108) = .900_r8*rxt(k,453)*y(k,123) + rxt(k,451)*y(k,199) + mat(k,656) = -(rxt(k,429)*y(k,218)) + mat(k,1631) = -rxt(k,429)*y(k,180) + mat(k,2059) = rxt(k,427)*y(k,224) + mat(k,723) = rxt(k,427)*y(k,204) + mat(k,188) = -(rxt(k,430)*y(k,218)) + mat(k,1564) = -rxt(k,430)*y(k,181) + mat(k,204) = -(rxt(k,396)*y(k,218)) + mat(k,1567) = -rxt(k,396)*y(k,182) + mat(k,2028) = rxt(k,393)*y(k,226) + mat(k,1167) = rxt(k,393)*y(k,204) + mat(k,209) = -(rxt(k,432)*y(k,218)) + mat(k,1568) = -rxt(k,432)*y(k,183) + mat(k,694) = -(rxt(k,435)*y(k,218)) + mat(k,1635) = -rxt(k,435)*y(k,184) + mat(k,2062) = rxt(k,433)*y(k,227) + mat(k,747) = rxt(k,433)*y(k,204) + mat(k,217) = -(rxt(k,438)*y(k,218)) + mat(k,1569) = -rxt(k,438)*y(k,185) + mat(k,210) = .150_r8*rxt(k,432)*y(k,218) + mat(k,1569) = mat(k,1569) + .150_r8*rxt(k,432)*y(k,183) + mat(k,428) = -(rxt(k,439)*y(k,218)) + mat(k,1602) = -rxt(k,439)*y(k,186) + mat(k,2042) = rxt(k,436)*y(k,229) + mat(k,499) = rxt(k,436)*y(k,204) + mat(k,519) = -(rxt(k,397)*y(k,204) + rxt(k,398)*y(k,123) + rxt(k,426) & + *y(k,124)) + mat(k,2052) = -rxt(k,397)*y(k,189) + mat(k,1867) = -rxt(k,398)*y(k,189) + mat(k,1938) = -rxt(k,426)*y(k,189) + mat(k,237) = rxt(k,403)*y(k,218) + mat(k,1615) = rxt(k,403)*y(k,21) + mat(k,888) = -(rxt(k,358)*y(k,204) + (rxt(k,359) + rxt(k,360)) * y(k,123)) + mat(k,2078) = -rxt(k,358)*y(k,190) + mat(k,1887) = -(rxt(k,359) + rxt(k,360)) * y(k,190) + mat(k,636) = rxt(k,361)*y(k,218) + mat(k,228) = rxt(k,362)*y(k,218) + mat(k,1654) = rxt(k,361)*y(k,2) + rxt(k,362)*y(k,14) + mat(k,55) = -(rxt(k,495)*y(k,204) + rxt(k,496)*y(k,123)) + mat(k,2020) = -rxt(k,495)*y(k,191) + mat(k,1845) = -rxt(k,496)*y(k,191) + mat(k,990) = rxt(k,498)*y(k,218) + mat(k,1547) = rxt(k,498)*y(k,5) + mat(k,484) = -(rxt(k,400)*y(k,204) + rxt(k,401)*y(k,123)) + mat(k,2050) = -rxt(k,400)*y(k,192) + mat(k,1863) = -rxt(k,401)*y(k,192) + mat(k,166) = .350_r8*rxt(k,399)*y(k,218) + mat(k,418) = rxt(k,402)*y(k,218) + mat(k,1610) = .350_r8*rxt(k,399)*y(k,6) + rxt(k,402)*y(k,7) + mat(k,61) = -(rxt(k,500)*y(k,204) + rxt(k,501)*y(k,123)) + mat(k,2021) = -rxt(k,500)*y(k,193) + mat(k,1846) = -rxt(k,501)*y(k,193) + mat(k,162) = rxt(k,499)*y(k,218) + mat(k,1548) = rxt(k,499)*y(k,6) + mat(k,436) = -(rxt(k,404)*y(k,204) + rxt(k,406)*y(k,123)) + mat(k,2043) = -rxt(k,404)*y(k,194) + mat(k,1858) = -rxt(k,406)*y(k,194) + mat(k,338) = rxt(k,405)*y(k,218) + mat(k,191) = .070_r8*rxt(k,430)*y(k,218) + mat(k,211) = .060_r8*rxt(k,432)*y(k,218) + mat(k,1603) = rxt(k,405)*y(k,22) + .070_r8*rxt(k,430)*y(k,181) & + + .060_r8*rxt(k,432)*y(k,183) + mat(k,824) = -(4._r8*rxt(k,281)*y(k,195) + rxt(k,282)*y(k,199) + rxt(k,283) & + *y(k,204) + rxt(k,284)*y(k,123)) + mat(k,1797) = -rxt(k,282)*y(k,195) + mat(k,2075) = -rxt(k,283)*y(k,195) + mat(k,1884) = -rxt(k,284)*y(k,195) + mat(k,343) = .500_r8*rxt(k,286)*y(k,218) + mat(k,306) = rxt(k,287)*y(k,55) + rxt(k,288)*y(k,218) + mat(k,1987) = rxt(k,287)*y(k,27) + mat(k,1648) = .500_r8*rxt(k,286)*y(k,26) + rxt(k,288)*y(k,27) + end do + end subroutine nlnmat07 + subroutine nlnmat08( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,788) = -(rxt(k,310)*y(k,199) + rxt(k,311)*y(k,204) + rxt(k,312) & + *y(k,123)) + mat(k,1794) = -rxt(k,310)*y(k,196) + mat(k,2071) = -rxt(k,311)*y(k,196) + mat(k,1882) = -rxt(k,312)*y(k,196) + mat(k,411) = rxt(k,313)*y(k,218) + mat(k,111) = rxt(k,314)*y(k,218) + mat(k,1643) = rxt(k,313)*y(k,29) + rxt(k,314)*y(k,30) + mat(k,626) = -(rxt(k,407)*y(k,204) + rxt(k,408)*y(k,123)) + mat(k,2056) = -rxt(k,407)*y(k,197) + mat(k,1873) = -rxt(k,408)*y(k,197) + mat(k,268) = rxt(k,409)*y(k,218) + mat(k,1873) = mat(k,1873) + rxt(k,398)*y(k,189) + mat(k,2210) = rxt(k,424)*y(k,141) + mat(k,465) = rxt(k,424)*y(k,134) + mat(k,520) = rxt(k,398)*y(k,123) + .400_r8*rxt(k,397)*y(k,204) + mat(k,2056) = mat(k,2056) + .400_r8*rxt(k,397)*y(k,189) + mat(k,1628) = rxt(k,409)*y(k,31) + mat(k,1387) = -(4._r8*rxt(k,292)*y(k,198) + rxt(k,293)*y(k,199) + rxt(k,294) & + *y(k,204) + rxt(k,295)*y(k,123) + rxt(k,306)*y(k,124) + rxt(k,333) & + *y(k,210) + rxt(k,366)*y(k,206) + rxt(k,371)*y(k,207) + rxt(k,380) & + *y(k,100) + rxt(k,391)*y(k,226)) + mat(k,1821) = -rxt(k,293)*y(k,198) + mat(k,2101) = -rxt(k,294)*y(k,198) + mat(k,1912) = -rxt(k,295)*y(k,198) + mat(k,1956) = -rxt(k,306)*y(k,198) + mat(k,1314) = -rxt(k,333)*y(k,198) + mat(k,1261) = -rxt(k,366)*y(k,198) + mat(k,1293) = -rxt(k,371)*y(k,198) + mat(k,1198) = -rxt(k,380)*y(k,198) + mat(k,1176) = -rxt(k,391)*y(k,198) + mat(k,1008) = .060_r8*rxt(k,441)*y(k,134) + mat(k,1088) = rxt(k,289)*y(k,125) + rxt(k,290)*y(k,218) + mat(k,1223) = rxt(k,315)*y(k,125) + rxt(k,316)*y(k,218) + mat(k,613) = .500_r8*rxt(k,297)*y(k,218) + mat(k,844) = .080_r8*rxt(k,386)*y(k,134) + mat(k,1214) = .100_r8*rxt(k,339)*y(k,134) + mat(k,958) = .060_r8*rxt(k,444)*y(k,134) + mat(k,1335) = .280_r8*rxt(k,353)*y(k,134) + mat(k,1912) = mat(k,1912) + .530_r8*rxt(k,337)*y(k,210) + rxt(k,346)*y(k,212) & + + rxt(k,349)*y(k,214) + rxt(k,324)*y(k,221) + mat(k,1768) = rxt(k,289)*y(k,44) + rxt(k,315)*y(k,48) + .530_r8*rxt(k,336) & + *y(k,210) + rxt(k,347)*y(k,212) + mat(k,2241) = .060_r8*rxt(k,441)*y(k,5) + .080_r8*rxt(k,386)*y(k,97) & + + .100_r8*rxt(k,339)*y(k,104) + .060_r8*rxt(k,444)*y(k,109) & + + .280_r8*rxt(k,353)*y(k,110) + mat(k,1063) = .650_r8*rxt(k,462)*y(k,218) + mat(k,1387) = mat(k,1387) + .530_r8*rxt(k,333)*y(k,210) + mat(k,1821) = mat(k,1821) + .260_r8*rxt(k,334)*y(k,210) + rxt(k,343)*y(k,212) & + + .300_r8*rxt(k,322)*y(k,221) + mat(k,2101) = mat(k,2101) + .450_r8*rxt(k,344)*y(k,212) + .200_r8*rxt(k,348) & + *y(k,214) + .150_r8*rxt(k,323)*y(k,221) + mat(k,1314) = mat(k,1314) + .530_r8*rxt(k,337)*y(k,123) + .530_r8*rxt(k,336) & + *y(k,125) + .530_r8*rxt(k,333)*y(k,198) + .260_r8*rxt(k,334) & + *y(k,199) + mat(k,1356) = rxt(k,346)*y(k,123) + rxt(k,347)*y(k,125) + rxt(k,343)*y(k,199) & + + .450_r8*rxt(k,344)*y(k,204) + 4.000_r8*rxt(k,345)*y(k,212) + mat(k,680) = rxt(k,349)*y(k,123) + .200_r8*rxt(k,348)*y(k,204) + mat(k,1684) = rxt(k,290)*y(k,44) + rxt(k,316)*y(k,48) + .500_r8*rxt(k,297) & + *y(k,50) + .650_r8*rxt(k,462)*y(k,179) + mat(k,1133) = rxt(k,324)*y(k,123) + .300_r8*rxt(k,322)*y(k,199) & + + .150_r8*rxt(k,323)*y(k,204) + mat(k,1830) = -(rxt(k,183)*y(k,58) + (4._r8*rxt(k,260) + 4._r8*rxt(k,261) & + ) * y(k,199) + rxt(k,262)*y(k,204) + rxt(k,263)*y(k,123) & + + rxt(k,282)*y(k,195) + rxt(k,293)*y(k,198) + rxt(k,310) & + *y(k,196) + rxt(k,322)*y(k,221) + rxt(k,334)*y(k,210) + rxt(k,343) & + *y(k,212) + rxt(k,367)*y(k,206) + rxt(k,372)*y(k,207) + rxt(k,381) & + *y(k,100) + rxt(k,392)*y(k,226) + rxt(k,446)*y(k,216) + rxt(k,451) & + *y(k,222) + rxt(k,456)*y(k,223)) + mat(k,1721) = -rxt(k,183)*y(k,199) + mat(k,2112) = -rxt(k,262)*y(k,199) + mat(k,1922) = -rxt(k,263)*y(k,199) + mat(k,828) = -rxt(k,282)*y(k,199) + mat(k,1393) = -rxt(k,293)*y(k,199) + mat(k,793) = -rxt(k,310)*y(k,199) + mat(k,1136) = -rxt(k,322)*y(k,199) + mat(k,1319) = -rxt(k,334)*y(k,199) + mat(k,1361) = -rxt(k,343)*y(k,199) + mat(k,1266) = -rxt(k,367)*y(k,199) + mat(k,1298) = -rxt(k,372)*y(k,199) + mat(k,1203) = -rxt(k,381)*y(k,199) + mat(k,1180) = -rxt(k,392)*y(k,199) + mat(k,1054) = -rxt(k,446)*y(k,199) + mat(k,1117) = -rxt(k,451)*y(k,199) + mat(k,919) = -rxt(k,456)*y(k,199) + mat(k,1035) = .280_r8*rxt(k,309)*y(k,134) + mat(k,688) = rxt(k,296)*y(k,218) + mat(k,459) = .700_r8*rxt(k,265)*y(k,218) + mat(k,1438) = rxt(k,177)*y(k,55) + rxt(k,233)*y(k,72) + rxt(k,272)*y(k,217) & + + rxt(k,266)*y(k,218) + mat(k,2005) = rxt(k,177)*y(k,53) + mat(k,872) = rxt(k,233)*y(k,53) + mat(k,848) = .050_r8*rxt(k,386)*y(k,134) + mat(k,1203) = mat(k,1203) + rxt(k,380)*y(k,198) + mat(k,1922) = mat(k,1922) + rxt(k,295)*y(k,198) + .830_r8*rxt(k,412)*y(k,200) & + + .170_r8*rxt(k,418)*y(k,213) + mat(k,2251) = .280_r8*rxt(k,309)*y(k,28) + .050_r8*rxt(k,386)*y(k,97) + mat(k,1393) = mat(k,1393) + rxt(k,380)*y(k,100) + rxt(k,295)*y(k,123) & + + 4.000_r8*rxt(k,292)*y(k,198) + .900_r8*rxt(k,293)*y(k,199) & + + .490_r8*rxt(k,294)*y(k,204) + rxt(k,366)*y(k,206) + rxt(k,371) & + *y(k,207) + rxt(k,333)*y(k,210) + rxt(k,342)*y(k,212) & + + rxt(k,391)*y(k,226) + mat(k,1830) = mat(k,1830) + .900_r8*rxt(k,293)*y(k,198) + mat(k,764) = .830_r8*rxt(k,412)*y(k,123) + .330_r8*rxt(k,411)*y(k,204) + mat(k,2112) = mat(k,2112) + .490_r8*rxt(k,294)*y(k,198) + .330_r8*rxt(k,411) & + *y(k,200) + .070_r8*rxt(k,417)*y(k,213) + mat(k,1266) = mat(k,1266) + rxt(k,366)*y(k,198) + mat(k,1298) = mat(k,1298) + rxt(k,371)*y(k,198) + mat(k,1319) = mat(k,1319) + rxt(k,333)*y(k,198) + mat(k,1361) = mat(k,1361) + rxt(k,342)*y(k,198) + mat(k,879) = .170_r8*rxt(k,418)*y(k,123) + .070_r8*rxt(k,417)*y(k,204) + mat(k,1531) = rxt(k,272)*y(k,53) + mat(k,1695) = rxt(k,296)*y(k,49) + .700_r8*rxt(k,265)*y(k,52) + rxt(k,266) & + *y(k,53) + mat(k,1180) = mat(k,1180) + rxt(k,391)*y(k,198) + mat(k,760) = -(rxt(k,411)*y(k,204) + rxt(k,412)*y(k,123) + rxt(k,413) & + *y(k,124)) + mat(k,2068) = -rxt(k,411)*y(k,200) + mat(k,1880) = -rxt(k,412)*y(k,200) + mat(k,1944) = -rxt(k,413)*y(k,200) + mat(k,565) = -((rxt(k,330) + rxt(k,331)) * y(k,123)) + mat(k,1869) = -(rxt(k,330) + rxt(k,331)) * y(k,201) + mat(k,351) = rxt(k,329)*y(k,218) + mat(k,1620) = rxt(k,329)*y(k,15) + mat(k,1854) = .750_r8*rxt(k,299)*y(k,203) + mat(k,706) = .750_r8*rxt(k,299)*y(k,123) + mat(k,707) = -(rxt(k,298)*y(k,204) + rxt(k,299)*y(k,123)) + mat(k,2063) = -rxt(k,298)*y(k,203) + mat(k,1876) = -rxt(k,299)*y(k,203) + mat(k,550) = rxt(k,305)*y(k,218) + mat(k,1636) = rxt(k,305)*y(k,24) + mat(k,2116) = -((rxt(k,136) + rxt(k,137) + rxt(k,138)) * y(k,75) + rxt(k,140) & + *y(k,133) + rxt(k,141)*y(k,134) + rxt(k,145)*y(k,218) & + + 4._r8*rxt(k,150)*y(k,204) + rxt(k,160)*y(k,125) + rxt(k,165) & + *y(k,123) + rxt(k,170)*y(k,124) + (rxt(k,180) + rxt(k,181) & + ) * y(k,55) + rxt(k,187)*y(k,58) + rxt(k,213)*y(k,16) + rxt(k,219) & + *y(k,18) + rxt(k,256)*y(k,41) + rxt(k,262)*y(k,199) + rxt(k,269) & + *y(k,205) + rxt(k,283)*y(k,195) + rxt(k,294)*y(k,198) + rxt(k,298) & + *y(k,203) + rxt(k,311)*y(k,196) + rxt(k,319)*y(k,220) + rxt(k,323) & + *y(k,221) + rxt(k,335)*y(k,210) + rxt(k,344)*y(k,212) + rxt(k,348) & + *y(k,214) + rxt(k,358)*y(k,190) + rxt(k,368)*y(k,206) + rxt(k,373) & + *y(k,207) + rxt(k,382)*y(k,100) + rxt(k,393)*y(k,226) + rxt(k,397) & + *y(k,189) + rxt(k,400)*y(k,192) + rxt(k,404)*y(k,194) + rxt(k,407) & + *y(k,197) + rxt(k,411)*y(k,200) + rxt(k,414)*y(k,211) + rxt(k,417) & + *y(k,213) + rxt(k,420)*y(k,219) + rxt(k,427)*y(k,224) + rxt(k,433) & + *y(k,227) + rxt(k,436)*y(k,229) + rxt(k,447)*y(k,216) + rxt(k,452) & + *y(k,222) + rxt(k,457)*y(k,223)) + mat(k,1454) = -(rxt(k,136) + rxt(k,137) + rxt(k,138)) * y(k,204) + mat(k,2194) = -rxt(k,140)*y(k,204) + mat(k,2255) = -rxt(k,141)*y(k,204) + mat(k,1699) = -rxt(k,145)*y(k,204) + mat(k,1782) = -rxt(k,160)*y(k,204) + mat(k,1926) = -rxt(k,165)*y(k,204) + mat(k,1970) = -rxt(k,170)*y(k,204) + mat(k,2009) = -(rxt(k,180) + rxt(k,181)) * y(k,204) + mat(k,1725) = -rxt(k,187)*y(k,204) + mat(k,1421) = -rxt(k,213)*y(k,204) + mat(k,2163) = -rxt(k,219)*y(k,204) + mat(k,1494) = -rxt(k,256)*y(k,204) + mat(k,1834) = -rxt(k,262)*y(k,204) + mat(k,447) = -rxt(k,269)*y(k,204) + mat(k,831) = -rxt(k,283)*y(k,204) + mat(k,1396) = -rxt(k,294)*y(k,204) + mat(k,713) = -rxt(k,298)*y(k,204) + mat(k,796) = -rxt(k,311)*y(k,204) + mat(k,776) = -rxt(k,319)*y(k,204) + mat(k,1139) = -rxt(k,323)*y(k,204) + mat(k,1322) = -rxt(k,335)*y(k,204) + mat(k,1364) = -rxt(k,344)*y(k,204) + mat(k,684) = -rxt(k,348)*y(k,204) + mat(k,897) = -rxt(k,358)*y(k,204) + mat(k,1269) = -rxt(k,368)*y(k,204) + mat(k,1301) = -rxt(k,373)*y(k,204) + mat(k,1206) = -rxt(k,382)*y(k,204) + mat(k,1183) = -rxt(k,393)*y(k,204) + mat(k,524) = -rxt(k,397)*y(k,204) + mat(k,490) = -rxt(k,400)*y(k,204) + mat(k,441) = -rxt(k,404)*y(k,204) + mat(k,630) = -rxt(k,407)*y(k,204) + mat(k,767) = -rxt(k,411)*y(k,204) + mat(k,719) = -rxt(k,414)*y(k,204) + mat(k,882) = -rxt(k,417)*y(k,204) + mat(k,454) = -rxt(k,420)*y(k,204) + mat(k,734) = -rxt(k,427)*y(k,204) + mat(k,759) = -rxt(k,433)*y(k,204) + mat(k,506) = -rxt(k,436)*y(k,204) + mat(k,1057) = -rxt(k,447)*y(k,204) + mat(k,1120) = -rxt(k,452)*y(k,204) + mat(k,922) = -rxt(k,457)*y(k,204) + mat(k,1016) = .570_r8*rxt(k,441)*y(k,134) + mat(k,168) = .650_r8*rxt(k,399)*y(k,218) + mat(k,1421) = mat(k,1421) + rxt(k,212)*y(k,41) + mat(k,2163) = mat(k,2163) + rxt(k,224)*y(k,218) + mat(k,297) = .350_r8*rxt(k,278)*y(k,218) + mat(k,555) = .130_r8*rxt(k,280)*y(k,134) + mat(k,265) = rxt(k,285)*y(k,218) + mat(k,1038) = .280_r8*rxt(k,309)*y(k,134) + mat(k,1494) = mat(k,1494) + rxt(k,212)*y(k,16) + rxt(k,176)*y(k,55) & + + rxt(k,257)*y(k,125) + rxt(k,258)*y(k,133) + mat(k,601) = rxt(k,241)*y(k,55) + rxt(k,242)*y(k,218) + mat(k,371) = rxt(k,244)*y(k,55) + rxt(k,245)*y(k,218) + mat(k,105) = rxt(k,291)*y(k,218) + mat(k,801) = rxt(k,264)*y(k,218) + mat(k,1440) = rxt(k,273)*y(k,217) + mat(k,2009) = mat(k,2009) + rxt(k,176)*y(k,41) + rxt(k,241)*y(k,42) & + + rxt(k,244)*y(k,45) + rxt(k,179)*y(k,78) + mat(k,1725) = mat(k,1725) + rxt(k,183)*y(k,199) + rxt(k,194)*y(k,218) + mat(k,1126) = rxt(k,276)*y(k,218) + mat(k,199) = .730_r8*rxt(k,410)*y(k,218) + mat(k,288) = .500_r8*rxt(k,478)*y(k,218) + mat(k,1101) = rxt(k,302)*y(k,218) + mat(k,983) = rxt(k,303)*y(k,218) + mat(k,607) = rxt(k,179)*y(k,55) + rxt(k,135)*y(k,133) + rxt(k,144)*y(k,218) + mat(k,183) = rxt(k,267)*y(k,218) + mat(k,933) = rxt(k,268)*y(k,218) + mat(k,1164) = rxt(k,332)*y(k,218) + mat(k,1146) = rxt(k,317)*y(k,218) + mat(k,849) = .370_r8*rxt(k,386)*y(k,134) + mat(k,590) = .300_r8*rxt(k,377)*y(k,218) + mat(k,540) = rxt(k,378)*y(k,218) + mat(k,1206) = mat(k,1206) + rxt(k,383)*y(k,123) + rxt(k,384)*y(k,125) & + + rxt(k,380)*y(k,198) + 1.200_r8*rxt(k,381)*y(k,199) + mat(k,409) = rxt(k,385)*y(k,218) + mat(k,1217) = .140_r8*rxt(k,339)*y(k,134) + mat(k,315) = .200_r8*rxt(k,341)*y(k,218) + mat(k,581) = .500_r8*rxt(k,352)*y(k,218) + mat(k,966) = .570_r8*rxt(k,444)*y(k,134) + mat(k,1344) = .280_r8*rxt(k,353)*y(k,134) + mat(k,379) = rxt(k,389)*y(k,218) + mat(k,1084) = rxt(k,390)*y(k,218) + mat(k,1926) = mat(k,1926) + rxt(k,383)*y(k,100) + rxt(k,359)*y(k,190) & + + rxt(k,401)*y(k,192) + rxt(k,406)*y(k,194) + rxt(k,284) & + *y(k,195) + rxt(k,312)*y(k,196) + rxt(k,263)*y(k,199) & + + .170_r8*rxt(k,412)*y(k,200) + rxt(k,330)*y(k,201) & + + .250_r8*rxt(k,299)*y(k,203) + rxt(k,271)*y(k,205) & + + .920_r8*rxt(k,369)*y(k,206) + .920_r8*rxt(k,375)*y(k,207) & + + .470_r8*rxt(k,337)*y(k,210) + .400_r8*rxt(k,415)*y(k,211) & + + .830_r8*rxt(k,418)*y(k,213) + rxt(k,421)*y(k,219) + rxt(k,320) & + *y(k,220) + .900_r8*rxt(k,453)*y(k,222) + .800_r8*rxt(k,458) & + *y(k,223) + rxt(k,428)*y(k,224) + rxt(k,394)*y(k,226) & + + rxt(k,434)*y(k,227) + rxt(k,437)*y(k,229) + mat(k,1782) = mat(k,1782) + rxt(k,257)*y(k,41) + rxt(k,384)*y(k,100) & + + rxt(k,370)*y(k,206) + rxt(k,376)*y(k,207) + .470_r8*rxt(k,336) & + *y(k,210) + rxt(k,163)*y(k,218) + rxt(k,395)*y(k,226) + mat(k,2194) = mat(k,2194) + rxt(k,258)*y(k,41) + rxt(k,135)*y(k,78) + mat(k,2255) = mat(k,2255) + .570_r8*rxt(k,441)*y(k,5) + .130_r8*rxt(k,280) & + *y(k,24) + .280_r8*rxt(k,309)*y(k,28) + .370_r8*rxt(k,386) & + *y(k,97) + .140_r8*rxt(k,339)*y(k,104) + .570_r8*rxt(k,444) & + *y(k,109) + .280_r8*rxt(k,353)*y(k,110) + rxt(k,147)*y(k,218) + mat(k,177) = .800_r8*rxt(k,422)*y(k,218) + mat(k,855) = rxt(k,468)*y(k,218) + mat(k,1067) = .200_r8*rxt(k,462)*y(k,218) + mat(k,194) = .280_r8*rxt(k,430)*y(k,218) + mat(k,216) = .380_r8*rxt(k,432)*y(k,218) + mat(k,221) = .630_r8*rxt(k,438)*y(k,218) + mat(k,897) = mat(k,897) + rxt(k,359)*y(k,123) + mat(k,490) = mat(k,490) + rxt(k,401)*y(k,123) + mat(k,441) = mat(k,441) + rxt(k,406)*y(k,123) + mat(k,831) = mat(k,831) + rxt(k,284)*y(k,123) + 2.400_r8*rxt(k,281)*y(k,195) & + + rxt(k,282)*y(k,199) + mat(k,796) = mat(k,796) + rxt(k,312)*y(k,123) + rxt(k,310)*y(k,199) + mat(k,1396) = mat(k,1396) + rxt(k,380)*y(k,100) + .900_r8*rxt(k,293)*y(k,199) & + + rxt(k,366)*y(k,206) + rxt(k,371)*y(k,207) + .470_r8*rxt(k,333) & + *y(k,210) + rxt(k,391)*y(k,226) + mat(k,1834) = mat(k,1834) + rxt(k,183)*y(k,58) + 1.200_r8*rxt(k,381)*y(k,100) & + + rxt(k,263)*y(k,123) + rxt(k,282)*y(k,195) + rxt(k,310) & + *y(k,196) + .900_r8*rxt(k,293)*y(k,198) + 4.000_r8*rxt(k,260) & + *y(k,199) + rxt(k,367)*y(k,206) + rxt(k,372)*y(k,207) & + + .730_r8*rxt(k,334)*y(k,210) + rxt(k,343)*y(k,212) & + + .500_r8*rxt(k,446)*y(k,216) + .300_r8*rxt(k,322)*y(k,221) & + + rxt(k,451)*y(k,222) + rxt(k,456)*y(k,223) + .800_r8*rxt(k,392) & + *y(k,226) + mat(k,767) = mat(k,767) + .170_r8*rxt(k,412)*y(k,123) + .070_r8*rxt(k,411) & + *y(k,204) + mat(k,572) = rxt(k,330)*y(k,123) + mat(k,713) = mat(k,713) + .250_r8*rxt(k,299)*y(k,123) + mat(k,2116) = mat(k,2116) + .070_r8*rxt(k,411)*y(k,200) + .160_r8*rxt(k,414) & + *y(k,211) + .330_r8*rxt(k,417)*y(k,213) + mat(k,447) = mat(k,447) + rxt(k,271)*y(k,123) + mat(k,1269) = mat(k,1269) + .920_r8*rxt(k,369)*y(k,123) + rxt(k,370)*y(k,125) & + + rxt(k,366)*y(k,198) + rxt(k,367)*y(k,199) + mat(k,1301) = mat(k,1301) + .920_r8*rxt(k,375)*y(k,123) + rxt(k,376)*y(k,125) & + + rxt(k,371)*y(k,198) + rxt(k,372)*y(k,199) + mat(k,1322) = mat(k,1322) + .470_r8*rxt(k,337)*y(k,123) + .470_r8*rxt(k,336) & + *y(k,125) + .470_r8*rxt(k,333)*y(k,198) + .730_r8*rxt(k,334) & + *y(k,199) + mat(k,719) = mat(k,719) + .400_r8*rxt(k,415)*y(k,123) + .160_r8*rxt(k,414) & + *y(k,204) + mat(k,1364) = mat(k,1364) + rxt(k,343)*y(k,199) + mat(k,882) = mat(k,882) + .830_r8*rxt(k,418)*y(k,123) + .330_r8*rxt(k,417) & + *y(k,204) + mat(k,1057) = mat(k,1057) + .500_r8*rxt(k,446)*y(k,199) + mat(k,1535) = rxt(k,273)*y(k,53) + mat(k,1699) = mat(k,1699) + .650_r8*rxt(k,399)*y(k,6) + rxt(k,224)*y(k,18) & + + .350_r8*rxt(k,278)*y(k,23) + rxt(k,285)*y(k,25) + rxt(k,242) & + *y(k,42) + rxt(k,245)*y(k,45) + rxt(k,291)*y(k,46) + rxt(k,264) & + *y(k,51) + rxt(k,194)*y(k,58) + rxt(k,276)*y(k,61) & + + .730_r8*rxt(k,410)*y(k,65) + .500_r8*rxt(k,478)*y(k,66) & + + rxt(k,302)*y(k,73) + rxt(k,303)*y(k,74) + rxt(k,144)*y(k,78) & + + rxt(k,267)*y(k,85) + rxt(k,268)*y(k,86) + rxt(k,332)*y(k,92) & + + rxt(k,317)*y(k,94) + .300_r8*rxt(k,377)*y(k,98) + rxt(k,378) & + *y(k,99) + rxt(k,385)*y(k,101) + .200_r8*rxt(k,341)*y(k,105) & + + .500_r8*rxt(k,352)*y(k,108) + rxt(k,389)*y(k,114) + rxt(k,390) & + *y(k,115) + rxt(k,163)*y(k,125) + rxt(k,147)*y(k,134) & + + .800_r8*rxt(k,422)*y(k,142) + rxt(k,468)*y(k,151) & + + .200_r8*rxt(k,462)*y(k,179) + .280_r8*rxt(k,430)*y(k,181) & + + .380_r8*rxt(k,432)*y(k,183) + .630_r8*rxt(k,438)*y(k,185) + mat(k,454) = mat(k,454) + rxt(k,421)*y(k,123) + mat(k,776) = mat(k,776) + rxt(k,320)*y(k,123) + mat(k,1139) = mat(k,1139) + .300_r8*rxt(k,322)*y(k,199) + mat(k,1120) = mat(k,1120) + .900_r8*rxt(k,453)*y(k,123) + rxt(k,451)*y(k,199) + mat(k,922) = mat(k,922) + .800_r8*rxt(k,458)*y(k,123) + rxt(k,456)*y(k,199) + mat(k,734) = mat(k,734) + rxt(k,428)*y(k,123) + mat(k,1183) = mat(k,1183) + rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125) & + + rxt(k,391)*y(k,198) + .800_r8*rxt(k,392)*y(k,199) + mat(k,759) = mat(k,759) + rxt(k,434)*y(k,123) + mat(k,506) = mat(k,506) + rxt(k,437)*y(k,123) + end do + end subroutine nlnmat08 + subroutine nlnmat09( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,442) = -(rxt(k,269)*y(k,204) + rxt(k,271)*y(k,123)) + mat(k,2044) = -rxt(k,269)*y(k,205) + mat(k,1859) = -rxt(k,271)*y(k,205) + mat(k,1477) = rxt(k,256)*y(k,204) + mat(k,2044) = mat(k,2044) + rxt(k,256)*y(k,41) + mat(k,1257) = -(rxt(k,366)*y(k,198) + rxt(k,367)*y(k,199) + rxt(k,368) & + *y(k,204) + rxt(k,369)*y(k,123) + rxt(k,370)*y(k,125)) + mat(k,1382) = -rxt(k,366)*y(k,206) + mat(k,1816) = -rxt(k,367)*y(k,206) + mat(k,2096) = -rxt(k,368)*y(k,206) + mat(k,1907) = -rxt(k,369)*y(k,206) + mat(k,1763) = -rxt(k,370)*y(k,206) + mat(k,841) = .600_r8*rxt(k,387)*y(k,218) + mat(k,1679) = .600_r8*rxt(k,387)*y(k,97) + mat(k,1289) = -(rxt(k,371)*y(k,198) + rxt(k,372)*y(k,199) + rxt(k,373) & + *y(k,204) + rxt(k,375)*y(k,123) + rxt(k,376)*y(k,125)) + mat(k,1383) = -rxt(k,371)*y(k,207) + mat(k,1817) = -rxt(k,372)*y(k,207) + mat(k,2097) = -rxt(k,373)*y(k,207) + mat(k,1908) = -rxt(k,375)*y(k,207) + mat(k,1764) = -rxt(k,376)*y(k,207) + mat(k,842) = .400_r8*rxt(k,387)*y(k,218) + mat(k,1680) = .400_r8*rxt(k,387)*y(k,97) + mat(k,67) = -(rxt(k,503)*y(k,204) + rxt(k,504)*y(k,123)) + mat(k,2022) = -rxt(k,503)*y(k,208) + mat(k,1847) = -rxt(k,504)*y(k,208) + mat(k,834) = rxt(k,506)*y(k,218) + mat(k,1549) = rxt(k,506)*y(k,97) + mat(k,73) = -(rxt(k,507)*y(k,204) + rxt(k,508)*y(k,123)) + mat(k,2023) = -rxt(k,507)*y(k,209) + mat(k,1848) = -rxt(k,508)*y(k,209) + mat(k,74) = rxt(k,509)*y(k,218) + mat(k,1550) = rxt(k,509)*y(k,103) + mat(k,1312) = -(rxt(k,333)*y(k,198) + rxt(k,334)*y(k,199) + rxt(k,335) & + *y(k,204) + rxt(k,336)*y(k,125) + (rxt(k,337) + rxt(k,338) & + ) * y(k,123)) + mat(k,1384) = -rxt(k,333)*y(k,210) + mat(k,1818) = -rxt(k,334)*y(k,210) + mat(k,2098) = -rxt(k,335)*y(k,210) + mat(k,1765) = -rxt(k,336)*y(k,210) + mat(k,1909) = -(rxt(k,337) + rxt(k,338)) * y(k,210) + mat(k,1212) = .500_r8*rxt(k,340)*y(k,218) + mat(k,312) = .200_r8*rxt(k,341)*y(k,218) + mat(k,1332) = rxt(k,354)*y(k,218) + mat(k,1681) = .500_r8*rxt(k,340)*y(k,104) + .200_r8*rxt(k,341)*y(k,105) & + + rxt(k,354)*y(k,110) + mat(k,714) = -(rxt(k,414)*y(k,204) + rxt(k,415)*y(k,123) + rxt(k,416) & + *y(k,124)) + mat(k,2064) = -rxt(k,414)*y(k,211) + mat(k,1877) = -rxt(k,415)*y(k,211) + mat(k,1943) = -rxt(k,416)*y(k,211) + mat(k,1355) = -(rxt(k,342)*y(k,198) + rxt(k,343)*y(k,199) + rxt(k,344) & + *y(k,204) + 4._r8*rxt(k,345)*y(k,212) + rxt(k,346)*y(k,123) & + + rxt(k,347)*y(k,125) + rxt(k,355)*y(k,124)) + mat(k,1386) = -rxt(k,342)*y(k,212) + mat(k,1820) = -rxt(k,343)*y(k,212) + mat(k,2100) = -rxt(k,344)*y(k,212) + mat(k,1911) = -rxt(k,346)*y(k,212) + mat(k,1767) = -rxt(k,347)*y(k,212) + mat(k,1955) = -rxt(k,355)*y(k,212) + mat(k,1213) = .500_r8*rxt(k,340)*y(k,218) + mat(k,313) = .500_r8*rxt(k,341)*y(k,218) + mat(k,1683) = .500_r8*rxt(k,340)*y(k,104) + .500_r8*rxt(k,341)*y(k,105) + mat(k,874) = -(rxt(k,417)*y(k,204) + rxt(k,418)*y(k,123) + rxt(k,419) & + *y(k,124)) + mat(k,2077) = -rxt(k,417)*y(k,213) + mat(k,1886) = -rxt(k,418)*y(k,213) + mat(k,1948) = -rxt(k,419)*y(k,213) + mat(k,678) = -(rxt(k,348)*y(k,204) + rxt(k,349)*y(k,123)) + mat(k,2060) = -rxt(k,348)*y(k,214) + mat(k,1875) = -rxt(k,349)*y(k,214) + mat(k,508) = rxt(k,350)*y(k,218) + mat(k,317) = rxt(k,351)*y(k,218) + mat(k,1633) = rxt(k,350)*y(k,106) + rxt(k,351)*y(k,107) + mat(k,81) = -(rxt(k,511)*y(k,204) + rxt(k,512)*y(k,123)) + mat(k,2024) = -rxt(k,511)*y(k,215) + mat(k,1849) = -rxt(k,512)*y(k,215) + mat(k,941) = rxt(k,514)*y(k,218) + mat(k,1552) = rxt(k,514)*y(k,109) + mat(k,1046) = -(rxt(k,446)*y(k,199) + rxt(k,447)*y(k,204) + rxt(k,448) & + *y(k,123) + rxt(k,449)*y(k,125)) + mat(k,1803) = -rxt(k,446)*y(k,216) + mat(k,2084) = -rxt(k,447)*y(k,216) + mat(k,1893) = -rxt(k,448)*y(k,216) + mat(k,1748) = -rxt(k,449)*y(k,216) + mat(k,1001) = rxt(k,440)*y(k,125) + mat(k,952) = rxt(k,443)*y(k,125) + mat(k,1748) = mat(k,1748) + rxt(k,440)*y(k,5) + rxt(k,443)*y(k,109) & + + .500_r8*rxt(k,460)*y(k,178) + mat(k,394) = rxt(k,450)*y(k,218) + mat(k,971) = .500_r8*rxt(k,460)*y(k,125) + mat(k,1664) = rxt(k,450)*y(k,127) + mat(k,1527) = -(rxt(k,125)*y(k,76) + rxt(k,126)*y(k,230) + (rxt(k,129) & + + rxt(k,130)) * y(k,134) + (rxt(k,168) + rxt(k,169)) * y(k,112) & + + rxt(k,201)*y(k,32) + rxt(k,202)*y(k,33) + rxt(k,203)*y(k,35) & + + rxt(k,204)*y(k,36) + rxt(k,205)*y(k,37) + rxt(k,206)*y(k,38) & + + rxt(k,207)*y(k,39) + (rxt(k,208) + rxt(k,209)) * y(k,84) & + + rxt(k,228)*y(k,34) + rxt(k,229)*y(k,54) + rxt(k,230)*y(k,77) & + + (rxt(k,231) + rxt(k,232)) * y(k,80) + rxt(k,237)*y(k,63) & + + rxt(k,238)*y(k,64) + rxt(k,251)*y(k,40) + rxt(k,252)*y(k,42) & + + rxt(k,253)*y(k,81) + rxt(k,254)*y(k,82) + rxt(k,255)*y(k,83) & + + (rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,53) + rxt(k,275) & + *y(k,85)) + mat(k,1406) = -rxt(k,125)*y(k,217) + mat(k,2273) = -rxt(k,126)*y(k,217) + mat(k,2247) = -(rxt(k,129) + rxt(k,130)) * y(k,217) + mat(k,185) = -(rxt(k,168) + rxt(k,169)) * y(k,217) + mat(k,101) = -rxt(k,201)*y(k,217) + mat(k,145) = -rxt(k,202)*y(k,217) + mat(k,116) = -rxt(k,203)*y(k,217) + mat(k,155) = -rxt(k,204)*y(k,217) + mat(k,120) = -rxt(k,205)*y(k,217) + mat(k,160) = -rxt(k,206)*y(k,217) + mat(k,124) = -rxt(k,207)*y(k,217) + mat(k,2131) = -(rxt(k,208) + rxt(k,209)) * y(k,217) + mat(k,151) = -rxt(k,228)*y(k,217) + mat(k,388) = -rxt(k,229)*y(k,217) + mat(k,109) = -rxt(k,230)*y(k,217) + mat(k,808) = -(rxt(k,231) + rxt(k,232)) * y(k,217) + mat(k,241) = -rxt(k,237)*y(k,217) + mat(k,249) = -rxt(k,238)*y(k,217) + mat(k,470) = -rxt(k,251)*y(k,217) + mat(k,597) = -rxt(k,252)*y(k,217) + mat(k,244) = -rxt(k,253)*y(k,217) + mat(k,254) = -rxt(k,254)*y(k,217) + mat(k,301) = -rxt(k,255)*y(k,217) + mat(k,1435) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,217) + mat(k,181) = -rxt(k,275)*y(k,217) + mat(k,1692) = -(rxt(k,143)*y(k,76) + rxt(k,144)*y(k,78) + rxt(k,145)*y(k,204) & + + rxt(k,146)*y(k,133) + rxt(k,147)*y(k,134) + (4._r8*rxt(k,148) & + + 4._r8*rxt(k,149)) * y(k,218) + rxt(k,151)*y(k,89) + rxt(k,163) & + *y(k,125) + rxt(k,164)*y(k,111) + rxt(k,172)*y(k,124) + rxt(k,173) & + *y(k,88) + rxt(k,192)*y(k,59) + (rxt(k,194) + rxt(k,195) & + ) * y(k,58) + rxt(k,197)*y(k,84) + rxt(k,200)*y(k,91) + rxt(k,224) & + *y(k,18) + rxt(k,226)*y(k,80) + rxt(k,240)*y(k,40) + rxt(k,242) & + *y(k,42) + rxt(k,243)*y(k,43) + rxt(k,245)*y(k,45) + rxt(k,247) & + *y(k,54) + rxt(k,248)*y(k,81) + rxt(k,249)*y(k,82) + rxt(k,250) & + *y(k,83) + rxt(k,259)*y(k,41) + rxt(k,264)*y(k,51) + rxt(k,265) & + *y(k,52) + rxt(k,266)*y(k,53) + rxt(k,267)*y(k,85) + rxt(k,268) & + *y(k,86) + rxt(k,276)*y(k,61) + rxt(k,278)*y(k,23) + rxt(k,285) & + *y(k,25) + rxt(k,286)*y(k,26) + rxt(k,288)*y(k,27) + rxt(k,290) & + *y(k,44) + rxt(k,291)*y(k,46) + rxt(k,296)*y(k,49) + rxt(k,297) & + *y(k,50) + rxt(k,302)*y(k,73) + rxt(k,303)*y(k,74) + rxt(k,304) & + *y(k,139) + rxt(k,305)*y(k,24) + rxt(k,313)*y(k,29) + rxt(k,314) & + *y(k,30) + rxt(k,316)*y(k,48) + rxt(k,317)*y(k,94) + rxt(k,318) & + *y(k,126) + rxt(k,321)*y(k,146) + rxt(k,325)*y(k,147) + rxt(k,326) & + *y(k,28) + rxt(k,327)*y(k,47) + rxt(k,329)*y(k,15) + rxt(k,332) & + *y(k,92) + rxt(k,340)*y(k,104) + rxt(k,341)*y(k,105) + rxt(k,350) & + *y(k,106) + rxt(k,351)*y(k,107) + rxt(k,352)*y(k,108) + rxt(k,354) & + *y(k,110) + rxt(k,357)*y(k,1) + rxt(k,361)*y(k,2) + rxt(k,362) & + *y(k,14) + rxt(k,363)*y(k,93) + rxt(k,364)*y(k,95) + rxt(k,365) & + *y(k,96) + rxt(k,377)*y(k,98) + rxt(k,378)*y(k,99) + rxt(k,385) & + *y(k,101) + rxt(k,387)*y(k,97) + rxt(k,388)*y(k,102) + rxt(k,389) & + *y(k,114) + rxt(k,390)*y(k,115) + rxt(k,396)*y(k,182) + rxt(k,399) & + *y(k,6) + rxt(k,402)*y(k,7) + rxt(k,403)*y(k,21) + rxt(k,405) & + *y(k,22) + rxt(k,409)*y(k,31) + rxt(k,410)*y(k,65) + rxt(k,422) & + *y(k,142) + rxt(k,425)*y(k,143) + rxt(k,429)*y(k,180) + rxt(k,430) & + *y(k,181) + rxt(k,432)*y(k,183) + rxt(k,435)*y(k,184) + rxt(k,438) & + *y(k,185) + rxt(k,439)*y(k,186) + rxt(k,442)*y(k,5) + rxt(k,445) & + *y(k,109) + rxt(k,450)*y(k,127) + rxt(k,454)*y(k,175) + rxt(k,455) & + *y(k,176) + rxt(k,459)*y(k,177) + rxt(k,461)*y(k,178) + rxt(k,462) & + *y(k,179) + (rxt(k,464) + rxt(k,478)) * y(k,66) + rxt(k,466) & + *y(k,137) + rxt(k,468)*y(k,151) + rxt(k,472)*y(k,148) + rxt(k,477) & + *y(k,150) + rxt(k,480)*y(k,119)) + mat(k,1407) = -rxt(k,143)*y(k,218) + mat(k,605) = -rxt(k,144)*y(k,218) + mat(k,2109) = -rxt(k,145)*y(k,218) + mat(k,2187) = -rxt(k,146)*y(k,218) + mat(k,2248) = -rxt(k,147)*y(k,218) + mat(k,423) = -rxt(k,151)*y(k,218) + mat(k,1775) = -rxt(k,163)*y(k,218) + mat(k,495) = -rxt(k,164)*y(k,218) + mat(k,1963) = -rxt(k,172)*y(k,218) + mat(k,1467) = -rxt(k,173)*y(k,218) + mat(k,902) = -rxt(k,192)*y(k,218) + mat(k,1718) = -(rxt(k,194) + rxt(k,195)) * y(k,218) + mat(k,2132) = -rxt(k,197)*y(k,218) + mat(k,815) = -rxt(k,200)*y(k,218) + mat(k,2156) = -rxt(k,224)*y(k,218) + mat(k,809) = -rxt(k,226)*y(k,218) + mat(k,471) = -rxt(k,240)*y(k,218) + mat(k,598) = -rxt(k,242)*y(k,218) + mat(k,127) = -rxt(k,243)*y(k,218) + mat(k,368) = -rxt(k,245)*y(k,218) + mat(k,389) = -rxt(k,247)*y(k,218) + mat(k,245) = -rxt(k,248)*y(k,218) + mat(k,255) = -rxt(k,249)*y(k,218) + mat(k,302) = -rxt(k,250)*y(k,218) + mat(k,1488) = -rxt(k,259)*y(k,218) + mat(k,800) = -rxt(k,264)*y(k,218) + mat(k,458) = -rxt(k,265)*y(k,218) + mat(k,1436) = -rxt(k,266)*y(k,218) + mat(k,182) = -rxt(k,267)*y(k,218) + mat(k,932) = -rxt(k,268)*y(k,218) + mat(k,1125) = -rxt(k,276)*y(k,218) + mat(k,296) = -rxt(k,278)*y(k,218) + mat(k,264) = -rxt(k,285)*y(k,218) + mat(k,345) = -rxt(k,286)*y(k,218) + mat(k,307) = -rxt(k,288)*y(k,218) + mat(k,1090) = -rxt(k,290)*y(k,218) + mat(k,104) = -rxt(k,291)*y(k,218) + mat(k,687) = -rxt(k,296)*y(k,218) + mat(k,615) = -rxt(k,297)*y(k,218) + mat(k,1100) = -rxt(k,302)*y(k,218) + mat(k,982) = -rxt(k,303)*y(k,218) + mat(k,529) = -rxt(k,304)*y(k,218) + mat(k,554) = -rxt(k,305)*y(k,218) + mat(k,413) = -rxt(k,313)*y(k,218) + mat(k,112) = -rxt(k,314)*y(k,218) + mat(k,1225) = -rxt(k,316)*y(k,218) + mat(k,1145) = -rxt(k,317)*y(k,218) + mat(k,862) = -rxt(k,318)*y(k,218) + mat(k,546) = -rxt(k,321)*y(k,218) + mat(k,402) = -rxt(k,325)*y(k,218) + mat(k,1033) = -rxt(k,326)*y(k,218) + mat(k,926) = -rxt(k,327)*y(k,218) + mat(k,355) = -rxt(k,329)*y(k,218) + mat(k,1159) = -rxt(k,332)*y(k,218) + mat(k,1216) = -rxt(k,340)*y(k,218) + mat(k,314) = -rxt(k,341)*y(k,218) + mat(k,511) = -rxt(k,350)*y(k,218) + mat(k,320) = -rxt(k,351)*y(k,218) + mat(k,578) = -rxt(k,352)*y(k,218) + mat(k,1339) = -rxt(k,354)*y(k,218) + mat(k,674) = -rxt(k,357)*y(k,218) + mat(k,641) = -rxt(k,361)*y(k,218) + mat(k,229) = -rxt(k,362)*y(k,218) + mat(k,225) = -rxt(k,363)*y(k,218) + mat(k,349) = -rxt(k,364)*y(k,218) + mat(k,138) = -rxt(k,365)*y(k,218) + mat(k,588) = -rxt(k,377)*y(k,218) + mat(k,539) = -rxt(k,378)*y(k,218) + mat(k,407) = -rxt(k,385)*y(k,218) + mat(k,846) = -rxt(k,387)*y(k,218) + mat(k,741) = -rxt(k,388)*y(k,218) + mat(k,378) = -rxt(k,389)*y(k,218) + mat(k,1080) = -rxt(k,390)*y(k,218) + mat(k,206) = -rxt(k,396)*y(k,218) + mat(k,167) = -rxt(k,399)*y(k,218) + mat(k,420) = -rxt(k,402)*y(k,218) + mat(k,238) = -rxt(k,403)*y(k,218) + mat(k,340) = -rxt(k,405)*y(k,218) + mat(k,269) = -rxt(k,409)*y(k,218) + mat(k,198) = -rxt(k,410)*y(k,218) + mat(k,176) = -rxt(k,422)*y(k,218) + mat(k,334) = -rxt(k,425)*y(k,218) + mat(k,664) = -rxt(k,429)*y(k,218) + mat(k,193) = -rxt(k,430)*y(k,218) + mat(k,215) = -rxt(k,432)*y(k,218) + mat(k,703) = -rxt(k,435)*y(k,218) + mat(k,220) = -rxt(k,438)*y(k,218) + mat(k,432) = -rxt(k,439)*y(k,218) + mat(k,1011) = -rxt(k,442)*y(k,218) + mat(k,961) = -rxt(k,445)*y(k,218) + mat(k,396) = -rxt(k,450)*y(k,218) + mat(k,651) = -rxt(k,454)*y(k,218) + mat(k,621) = -rxt(k,455)*y(k,218) + mat(k,480) = -rxt(k,459)*y(k,218) + mat(k,975) = -rxt(k,461)*y(k,218) + mat(k,1065) = -rxt(k,462)*y(k,218) + mat(k,286) = -(rxt(k,464) + rxt(k,478)) * y(k,218) + mat(k,364) = -rxt(k,466)*y(k,218) + mat(k,854) = -rxt(k,468)*y(k,218) + mat(k,515) = -rxt(k,472)*y(k,218) + mat(k,1236) = -rxt(k,477)*y(k,218) + mat(k,98) = -rxt(k,480)*y(k,218) + mat(k,1011) = mat(k,1011) + .630_r8*rxt(k,441)*y(k,134) + mat(k,296) = mat(k,296) + .650_r8*rxt(k,278)*y(k,218) + mat(k,554) = mat(k,554) + .130_r8*rxt(k,280)*y(k,134) + mat(k,345) = mat(k,345) + .500_r8*rxt(k,286)*y(k,218) + mat(k,1033) = mat(k,1033) + .360_r8*rxt(k,309)*y(k,134) + mat(k,1488) = mat(k,1488) + rxt(k,258)*y(k,133) + mat(k,458) = mat(k,458) + .300_r8*rxt(k,265)*y(k,218) + mat(k,1436) = mat(k,1436) + rxt(k,272)*y(k,217) + mat(k,2002) = rxt(k,181)*y(k,204) + mat(k,870) = rxt(k,235)*y(k,230) + mat(k,1450) = rxt(k,142)*y(k,134) + 2.000_r8*rxt(k,137)*y(k,204) + mat(k,1407) = mat(k,1407) + rxt(k,134)*y(k,133) + rxt(k,125)*y(k,217) + mat(k,605) = mat(k,605) + rxt(k,135)*y(k,133) + mat(k,809) = mat(k,809) + rxt(k,225)*y(k,133) + rxt(k,231)*y(k,217) + mat(k,2132) = mat(k,2132) + rxt(k,196)*y(k,133) + rxt(k,208)*y(k,217) + mat(k,182) = mat(k,182) + rxt(k,275)*y(k,217) + mat(k,781) = rxt(k,227)*y(k,133) + mat(k,815) = mat(k,815) + rxt(k,199)*y(k,133) + mat(k,846) = mat(k,846) + .320_r8*rxt(k,386)*y(k,134) + mat(k,741) = mat(k,741) + .600_r8*rxt(k,388)*y(k,218) + mat(k,1216) = mat(k,1216) + .240_r8*rxt(k,339)*y(k,134) + mat(k,314) = mat(k,314) + .100_r8*rxt(k,341)*y(k,218) + mat(k,961) = mat(k,961) + .630_r8*rxt(k,444)*y(k,134) + mat(k,1339) = mat(k,1339) + .360_r8*rxt(k,353)*y(k,134) + mat(k,1919) = rxt(k,165)*y(k,204) + mat(k,1775) = mat(k,1775) + rxt(k,160)*y(k,204) + mat(k,2187) = mat(k,2187) + rxt(k,258)*y(k,41) + rxt(k,134)*y(k,76) & + + rxt(k,135)*y(k,78) + rxt(k,225)*y(k,80) + rxt(k,196)*y(k,84) & + + rxt(k,227)*y(k,90) + rxt(k,199)*y(k,91) + rxt(k,140)*y(k,204) + mat(k,2248) = mat(k,2248) + .630_r8*rxt(k,441)*y(k,5) + .130_r8*rxt(k,280) & + *y(k,24) + .360_r8*rxt(k,309)*y(k,28) + rxt(k,142)*y(k,75) & + + .320_r8*rxt(k,386)*y(k,97) + .240_r8*rxt(k,339)*y(k,104) & + + .630_r8*rxt(k,444)*y(k,109) + .360_r8*rxt(k,353)*y(k,110) & + + rxt(k,141)*y(k,204) + mat(k,546) = mat(k,546) + .500_r8*rxt(k,321)*y(k,218) + mat(k,206) = mat(k,206) + .500_r8*rxt(k,396)*y(k,218) + mat(k,521) = .400_r8*rxt(k,397)*y(k,204) + mat(k,1391) = .490_r8*rxt(k,294)*y(k,204) + mat(k,763) = .400_r8*rxt(k,411)*y(k,204) + mat(k,2109) = mat(k,2109) + rxt(k,181)*y(k,55) + 2.000_r8*rxt(k,137)*y(k,75) & + + rxt(k,165)*y(k,123) + rxt(k,160)*y(k,125) + rxt(k,140) & + *y(k,133) + rxt(k,141)*y(k,134) + .400_r8*rxt(k,397)*y(k,189) & + + .490_r8*rxt(k,294)*y(k,198) + .400_r8*rxt(k,411)*y(k,200) & + + .450_r8*rxt(k,344)*y(k,212) + .400_r8*rxt(k,417)*y(k,213) & + + .200_r8*rxt(k,348)*y(k,214) + .150_r8*rxt(k,323)*y(k,221) + mat(k,1359) = .450_r8*rxt(k,344)*y(k,204) + mat(k,878) = .400_r8*rxt(k,417)*y(k,204) + mat(k,681) = .200_r8*rxt(k,348)*y(k,204) + mat(k,1528) = rxt(k,272)*y(k,53) + rxt(k,125)*y(k,76) + rxt(k,231)*y(k,80) & + + rxt(k,208)*y(k,84) + rxt(k,275)*y(k,85) + 2.000_r8*rxt(k,126) & + *y(k,230) + mat(k,1692) = mat(k,1692) + .650_r8*rxt(k,278)*y(k,23) + .500_r8*rxt(k,286) & + *y(k,26) + .300_r8*rxt(k,265)*y(k,52) + .600_r8*rxt(k,388) & + *y(k,102) + .100_r8*rxt(k,341)*y(k,105) + .500_r8*rxt(k,321) & + *y(k,146) + .500_r8*rxt(k,396)*y(k,182) + mat(k,1135) = .150_r8*rxt(k,323)*y(k,204) + mat(k,2274) = rxt(k,235)*y(k,72) + 2.000_r8*rxt(k,126)*y(k,217) + end do + end subroutine nlnmat09 + subroutine nlnmat10( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,449) = -(rxt(k,420)*y(k,204) + rxt(k,421)*y(k,123)) + mat(k,2045) = -rxt(k,420)*y(k,219) + mat(k,1860) = -rxt(k,421)*y(k,219) + mat(k,196) = .200_r8*rxt(k,410)*y(k,218) + mat(k,174) = .140_r8*rxt(k,422)*y(k,218) + mat(k,332) = rxt(k,425)*y(k,218) + mat(k,1604) = .200_r8*rxt(k,410)*y(k,65) + .140_r8*rxt(k,422)*y(k,142) & + + rxt(k,425)*y(k,143) + mat(k,769) = -(rxt(k,319)*y(k,204) + rxt(k,320)*y(k,123)) + mat(k,2069) = -rxt(k,319)*y(k,220) + mat(k,1881) = -rxt(k,320)*y(k,220) + mat(k,1021) = rxt(k,326)*y(k,218) + mat(k,542) = .500_r8*rxt(k,321)*y(k,218) + mat(k,1642) = rxt(k,326)*y(k,28) + .500_r8*rxt(k,321)*y(k,146) + mat(k,1130) = -(rxt(k,322)*y(k,199) + rxt(k,323)*y(k,204) + rxt(k,324) & + *y(k,123)) + mat(k,1810) = -rxt(k,322)*y(k,221) + mat(k,2090) = -rxt(k,323)*y(k,221) + mat(k,1900) = -rxt(k,324)*y(k,221) + mat(k,1006) = .060_r8*rxt(k,441)*y(k,134) + mat(k,924) = rxt(k,327)*y(k,218) + mat(k,956) = .060_r8*rxt(k,444)*y(k,134) + mat(k,2230) = .060_r8*rxt(k,441)*y(k,5) + .060_r8*rxt(k,444)*y(k,109) + mat(k,399) = rxt(k,325)*y(k,218) + mat(k,1062) = .150_r8*rxt(k,462)*y(k,218) + mat(k,1671) = rxt(k,327)*y(k,47) + rxt(k,325)*y(k,147) + .150_r8*rxt(k,462) & + *y(k,179) + mat(k,1110) = -(rxt(k,451)*y(k,199) + rxt(k,452)*y(k,204) + rxt(k,453) & + *y(k,123)) + mat(k,1808) = -rxt(k,451)*y(k,222) + mat(k,2088) = -rxt(k,452)*y(k,222) + mat(k,1898) = -rxt(k,453)*y(k,222) + mat(k,1753) = .500_r8*rxt(k,460)*y(k,178) + mat(k,648) = rxt(k,454)*y(k,218) + mat(k,973) = .500_r8*rxt(k,460)*y(k,125) + rxt(k,461)*y(k,218) + mat(k,1669) = rxt(k,454)*y(k,175) + rxt(k,461)*y(k,178) + mat(k,913) = -(rxt(k,456)*y(k,199) + rxt(k,457)*y(k,204) + rxt(k,458) & + *y(k,123)) + mat(k,1799) = -rxt(k,456)*y(k,223) + mat(k,2079) = -rxt(k,457)*y(k,223) + mat(k,1888) = -rxt(k,458)*y(k,223) + mat(k,995) = rxt(k,442)*y(k,218) + mat(k,946) = rxt(k,445)*y(k,218) + mat(k,476) = rxt(k,459)*y(k,218) + mat(k,1656) = rxt(k,442)*y(k,5) + rxt(k,445)*y(k,109) + rxt(k,459)*y(k,177) + mat(k,725) = -(rxt(k,427)*y(k,204) + rxt(k,428)*y(k,123)) + mat(k,2065) = -rxt(k,427)*y(k,224) + mat(k,1878) = -rxt(k,428)*y(k,224) + mat(k,658) = rxt(k,429)*y(k,218) + mat(k,192) = .650_r8*rxt(k,430)*y(k,218) + mat(k,1638) = rxt(k,429)*y(k,180) + .650_r8*rxt(k,430)*y(k,181) + mat(k,87) = -(rxt(k,517)*y(k,204) + rxt(k,518)*y(k,123)) + mat(k,2025) = -rxt(k,517)*y(k,225) + mat(k,1850) = -rxt(k,518)*y(k,225) + mat(k,187) = rxt(k,516)*y(k,218) + mat(k,1553) = rxt(k,516)*y(k,181) + mat(k,1174) = -(rxt(k,391)*y(k,198) + rxt(k,392)*y(k,199) + rxt(k,393) & + *y(k,204) + rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125)) + mat(k,1378) = -rxt(k,391)*y(k,226) + mat(k,1812) = -rxt(k,392)*y(k,226) + mat(k,2092) = -rxt(k,393)*y(k,226) + mat(k,1903) = -rxt(k,394)*y(k,226) + mat(k,1758) = -rxt(k,395)*y(k,226) + mat(k,224) = rxt(k,363)*y(k,218) + mat(k,348) = rxt(k,364)*y(k,218) + mat(k,137) = rxt(k,365)*y(k,218) + mat(k,737) = .400_r8*rxt(k,388)*y(k,218) + mat(k,205) = .500_r8*rxt(k,396)*y(k,218) + mat(k,1674) = rxt(k,363)*y(k,93) + rxt(k,364)*y(k,95) + rxt(k,365)*y(k,96) & + + .400_r8*rxt(k,388)*y(k,102) + .500_r8*rxt(k,396)*y(k,182) + mat(k,749) = -(rxt(k,433)*y(k,204) + rxt(k,434)*y(k,123)) + mat(k,2067) = -rxt(k,433)*y(k,227) + mat(k,1879) = -rxt(k,434)*y(k,227) + mat(k,212) = .560_r8*rxt(k,432)*y(k,218) + mat(k,696) = rxt(k,435)*y(k,218) + mat(k,1640) = .560_r8*rxt(k,432)*y(k,183) + rxt(k,435)*y(k,184) + mat(k,93) = -(rxt(k,521)*y(k,204) + rxt(k,522)*y(k,123)) + mat(k,2026) = -rxt(k,521)*y(k,228) + mat(k,1851) = -rxt(k,522)*y(k,228) + mat(k,207) = rxt(k,520)*y(k,218) + mat(k,1554) = rxt(k,520)*y(k,183) + mat(k,500) = -(rxt(k,436)*y(k,204) + rxt(k,437)*y(k,123)) + mat(k,2051) = -rxt(k,436)*y(k,229) + mat(k,1865) = -rxt(k,437)*y(k,229) + mat(k,219) = .300_r8*rxt(k,438)*y(k,218) + mat(k,429) = rxt(k,439)*y(k,218) + mat(k,1612) = .300_r8*rxt(k,438)*y(k,185) + rxt(k,439)*y(k,186) + mat(k,2286) = -(rxt(k,126)*y(k,217) + rxt(k,235)*y(k,72) + rxt(k,479) & + *y(k,152)) + mat(k,1540) = -rxt(k,126)*y(k,230) + mat(k,873) = -rxt(k,235)*y(k,230) + mat(k,261) = -rxt(k,479)*y(k,230) + mat(k,310) = rxt(k,288)*y(k,218) + mat(k,415) = rxt(k,313)*y(k,218) + mat(k,113) = rxt(k,314)*y(k,218) + mat(k,474) = rxt(k,240)*y(k,218) + mat(k,1499) = rxt(k,259)*y(k,218) + mat(k,603) = rxt(k,242)*y(k,218) + mat(k,129) = rxt(k,243)*y(k,218) + mat(k,1094) = rxt(k,290)*y(k,218) + mat(k,373) = rxt(k,245)*y(k,218) + mat(k,928) = rxt(k,327)*y(k,218) + mat(k,1229) = rxt(k,316)*y(k,218) + mat(k,689) = rxt(k,296)*y(k,218) + mat(k,617) = rxt(k,297)*y(k,218) + mat(k,460) = rxt(k,265)*y(k,218) + mat(k,1443) = rxt(k,266)*y(k,218) + mat(k,1458) = rxt(k,138)*y(k,204) + mat(k,1413) = rxt(k,143)*y(k,218) + mat(k,610) = rxt(k,144)*y(k,218) + mat(k,812) = rxt(k,226)*y(k,218) + mat(k,304) = rxt(k,250)*y(k,218) + mat(k,2144) = (rxt(k,531)+rxt(k,536))*y(k,90) + (rxt(k,524)+rxt(k,530) & + +rxt(k,535))*y(k,91) + rxt(k,197)*y(k,218) + mat(k,935) = rxt(k,268)*y(k,218) + mat(k,1476) = rxt(k,173)*y(k,218) + mat(k,427) = rxt(k,151)*y(k,218) + mat(k,786) = (rxt(k,531)+rxt(k,536))*y(k,84) + mat(k,820) = (rxt(k,524)+rxt(k,530)+rxt(k,535))*y(k,84) + rxt(k,200)*y(k,218) + mat(k,1220) = .500_r8*rxt(k,340)*y(k,218) + mat(k,99) = rxt(k,480)*y(k,218) + mat(k,548) = rxt(k,321)*y(k,218) + mat(k,403) = rxt(k,325)*y(k,218) + mat(k,2121) = rxt(k,138)*y(k,75) + rxt(k,145)*y(k,218) + mat(k,1704) = rxt(k,288)*y(k,27) + rxt(k,313)*y(k,29) + rxt(k,314)*y(k,30) & + + rxt(k,240)*y(k,40) + rxt(k,259)*y(k,41) + rxt(k,242)*y(k,42) & + + rxt(k,243)*y(k,43) + rxt(k,290)*y(k,44) + rxt(k,245)*y(k,45) & + + rxt(k,327)*y(k,47) + rxt(k,316)*y(k,48) + rxt(k,296)*y(k,49) & + + rxt(k,297)*y(k,50) + rxt(k,265)*y(k,52) + rxt(k,266)*y(k,53) & + + rxt(k,143)*y(k,76) + rxt(k,144)*y(k,78) + rxt(k,226)*y(k,80) & + + rxt(k,250)*y(k,83) + rxt(k,197)*y(k,84) + rxt(k,268)*y(k,86) & + + rxt(k,173)*y(k,88) + rxt(k,151)*y(k,89) + rxt(k,200)*y(k,91) & + + .500_r8*rxt(k,340)*y(k,104) + rxt(k,480)*y(k,119) + rxt(k,321) & + *y(k,146) + rxt(k,325)*y(k,147) + rxt(k,145)*y(k,204) & + + 2.000_r8*rxt(k,148)*y(k,218) + end do + end subroutine nlnmat10 + subroutine nlnmat_finit( avec_len, mat, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k, 1) = lmat(k, 1) + mat(k, 2) = lmat(k, 2) + mat(k, 3) = lmat(k, 3) + mat(k, 4) = lmat(k, 4) + mat(k, 5) = lmat(k, 5) + mat(k, 6) = lmat(k, 6) + mat(k, 7) = lmat(k, 7) + mat(k, 8) = lmat(k, 8) + mat(k, 9) = lmat(k, 9) + mat(k, 10) = lmat(k, 10) + mat(k, 11) = lmat(k, 11) + mat(k, 12) = lmat(k, 12) + mat(k, 13) = lmat(k, 13) + mat(k, 14) = lmat(k, 14) + mat(k, 15) = lmat(k, 15) + mat(k, 16) = lmat(k, 16) + mat(k, 17) = lmat(k, 17) + mat(k, 18) = lmat(k, 18) + mat(k, 19) = lmat(k, 19) + mat(k, 20) = lmat(k, 20) + mat(k, 21) = lmat(k, 21) + mat(k, 22) = lmat(k, 22) + mat(k, 23) = lmat(k, 23) + mat(k, 24) = lmat(k, 24) + mat(k, 25) = lmat(k, 25) + mat(k, 26) = lmat(k, 26) + mat(k, 27) = lmat(k, 27) + mat(k, 28) = lmat(k, 28) + mat(k, 29) = lmat(k, 29) + mat(k, 30) = lmat(k, 30) + mat(k, 31) = lmat(k, 31) + mat(k, 32) = lmat(k, 32) + mat(k, 33) = lmat(k, 33) + mat(k, 34) = lmat(k, 34) + mat(k, 35) = lmat(k, 35) + mat(k, 36) = lmat(k, 36) + mat(k, 37) = lmat(k, 37) + mat(k, 38) = lmat(k, 38) + mat(k, 39) = lmat(k, 39) + mat(k, 40) = lmat(k, 40) + mat(k, 41) = lmat(k, 41) + mat(k, 42) = lmat(k, 42) + mat(k, 43) = lmat(k, 43) + mat(k, 49) = mat(k, 49) + lmat(k, 49) + mat(k, 55) = mat(k, 55) + lmat(k, 55) + mat(k, 61) = mat(k, 61) + lmat(k, 61) + mat(k, 67) = mat(k, 67) + lmat(k, 67) + mat(k, 73) = mat(k, 73) + lmat(k, 73) + mat(k, 75) = mat(k, 75) + lmat(k, 75) + mat(k, 81) = mat(k, 81) + lmat(k, 81) + mat(k, 87) = mat(k, 87) + lmat(k, 87) + mat(k, 93) = mat(k, 93) + lmat(k, 93) + mat(k, 94) = lmat(k, 94) + mat(k, 95) = lmat(k, 95) + mat(k, 96) = lmat(k, 96) + mat(k, 97) = mat(k, 97) + lmat(k, 97) + mat(k, 100) = mat(k, 100) + lmat(k, 100) + mat(k, 102) = mat(k, 102) + lmat(k, 102) + mat(k, 103) = mat(k, 103) + lmat(k, 103) + mat(k, 106) = mat(k, 106) + lmat(k, 106) + mat(k, 107) = mat(k, 107) + lmat(k, 107) + mat(k, 108) = mat(k, 108) + lmat(k, 108) + mat(k, 110) = mat(k, 110) + lmat(k, 110) + mat(k, 114) = mat(k, 114) + lmat(k, 114) + mat(k, 115) = mat(k, 115) + lmat(k, 115) + mat(k, 117) = mat(k, 117) + lmat(k, 117) + mat(k, 118) = mat(k, 118) + lmat(k, 118) + mat(k, 119) = mat(k, 119) + lmat(k, 119) + mat(k, 121) = mat(k, 121) + lmat(k, 121) + mat(k, 122) = mat(k, 122) + lmat(k, 122) + mat(k, 123) = mat(k, 123) + lmat(k, 123) + mat(k, 125) = mat(k, 125) + lmat(k, 125) + mat(k, 126) = mat(k, 126) + lmat(k, 126) + mat(k, 128) = mat(k, 128) + lmat(k, 128) + mat(k, 130) = lmat(k, 130) + mat(k, 131) = lmat(k, 131) + mat(k, 132) = lmat(k, 132) + mat(k, 133) = lmat(k, 133) + mat(k, 134) = lmat(k, 134) + mat(k, 135) = lmat(k, 135) + mat(k, 136) = mat(k, 136) + lmat(k, 136) + mat(k, 139) = lmat(k, 139) + mat(k, 140) = lmat(k, 140) + mat(k, 141) = lmat(k, 141) + mat(k, 142) = mat(k, 142) + lmat(k, 142) + mat(k, 143) = mat(k, 143) + lmat(k, 143) + mat(k, 144) = mat(k, 144) + lmat(k, 144) + mat(k, 146) = mat(k, 146) + lmat(k, 146) + mat(k, 147) = mat(k, 147) + lmat(k, 147) + mat(k, 148) = mat(k, 148) + lmat(k, 148) + mat(k, 149) = mat(k, 149) + lmat(k, 149) + mat(k, 150) = mat(k, 150) + lmat(k, 150) + mat(k, 152) = mat(k, 152) + lmat(k, 152) + mat(k, 153) = mat(k, 153) + lmat(k, 153) + mat(k, 154) = mat(k, 154) + lmat(k, 154) + mat(k, 156) = mat(k, 156) + lmat(k, 156) + mat(k, 157) = mat(k, 157) + lmat(k, 157) + mat(k, 158) = mat(k, 158) + lmat(k, 158) + mat(k, 159) = mat(k, 159) + lmat(k, 159) + mat(k, 161) = mat(k, 161) + lmat(k, 161) + mat(k, 163) = mat(k, 163) + lmat(k, 163) + mat(k, 169) = lmat(k, 169) + mat(k, 170) = lmat(k, 170) + mat(k, 171) = lmat(k, 171) + mat(k, 172) = lmat(k, 172) + mat(k, 173) = mat(k, 173) + lmat(k, 173) + mat(k, 178) = lmat(k, 178) + mat(k, 179) = lmat(k, 179) + mat(k, 180) = mat(k, 180) + lmat(k, 180) + mat(k, 184) = mat(k, 184) + lmat(k, 184) + mat(k, 185) = mat(k, 185) + lmat(k, 185) + mat(k, 188) = mat(k, 188) + lmat(k, 188) + mat(k, 195) = mat(k, 195) + lmat(k, 195) + mat(k, 200) = lmat(k, 200) + mat(k, 201) = lmat(k, 201) + mat(k, 202) = lmat(k, 202) + mat(k, 203) = lmat(k, 203) + mat(k, 204) = mat(k, 204) + lmat(k, 204) + mat(k, 206) = mat(k, 206) + lmat(k, 206) + mat(k, 209) = mat(k, 209) + lmat(k, 209) + mat(k, 217) = mat(k, 217) + lmat(k, 217) + mat(k, 222) = mat(k, 222) + lmat(k, 222) + mat(k, 223) = lmat(k, 223) + mat(k, 225) = mat(k, 225) + lmat(k, 225) + mat(k, 226) = lmat(k, 226) + mat(k, 227) = mat(k, 227) + lmat(k, 227) + mat(k, 230) = lmat(k, 230) + mat(k, 231) = lmat(k, 231) + mat(k, 232) = lmat(k, 232) + mat(k, 233) = lmat(k, 233) + mat(k, 234) = lmat(k, 234) + mat(k, 235) = lmat(k, 235) + mat(k, 236) = mat(k, 236) + lmat(k, 236) + mat(k, 239) = mat(k, 239) + lmat(k, 239) + mat(k, 240) = mat(k, 240) + lmat(k, 240) + mat(k, 242) = mat(k, 242) + lmat(k, 242) + mat(k, 243) = mat(k, 243) + lmat(k, 243) + mat(k, 246) = mat(k, 246) + lmat(k, 246) + mat(k, 247) = mat(k, 247) + lmat(k, 247) + mat(k, 248) = mat(k, 248) + lmat(k, 248) + mat(k, 250) = mat(k, 250) + lmat(k, 250) + mat(k, 251) = mat(k, 251) + lmat(k, 251) + mat(k, 252) = mat(k, 252) + lmat(k, 252) + mat(k, 256) = mat(k, 256) + lmat(k, 256) + mat(k, 258) = mat(k, 258) + lmat(k, 258) + mat(k, 259) = lmat(k, 259) + mat(k, 260) = lmat(k, 260) + mat(k, 262) = mat(k, 262) + lmat(k, 262) + mat(k, 266) = mat(k, 266) + lmat(k, 266) + mat(k, 267) = lmat(k, 267) + mat(k, 269) = mat(k, 269) + lmat(k, 269) + mat(k, 270) = lmat(k, 270) + mat(k, 271) = lmat(k, 271) + mat(k, 272) = lmat(k, 272) + mat(k, 273) = lmat(k, 273) + mat(k, 274) = lmat(k, 274) + mat(k, 275) = lmat(k, 275) + mat(k, 276) = lmat(k, 276) + mat(k, 277) = lmat(k, 277) + mat(k, 278) = lmat(k, 278) + mat(k, 279) = lmat(k, 279) + mat(k, 280) = lmat(k, 280) + mat(k, 281) = lmat(k, 281) + mat(k, 282) = lmat(k, 282) + mat(k, 283) = mat(k, 283) + lmat(k, 283) + mat(k, 289) = lmat(k, 289) + mat(k, 290) = lmat(k, 290) + mat(k, 291) = lmat(k, 291) + mat(k, 292) = mat(k, 292) + lmat(k, 292) + mat(k, 298) = mat(k, 298) + lmat(k, 298) + mat(k, 299) = mat(k, 299) + lmat(k, 299) + mat(k, 303) = mat(k, 303) + lmat(k, 303) + mat(k, 305) = mat(k, 305) + lmat(k, 305) + mat(k, 311) = mat(k, 311) + lmat(k, 311) + mat(k, 316) = mat(k, 316) + lmat(k, 316) + mat(k, 318) = lmat(k, 318) + mat(k, 319) = lmat(k, 319) + mat(k, 320) = mat(k, 320) + lmat(k, 320) + mat(k, 321) = lmat(k, 321) + mat(k, 322) = lmat(k, 322) + mat(k, 323) = lmat(k, 323) + mat(k, 324) = lmat(k, 324) + mat(k, 325) = lmat(k, 325) + mat(k, 326) = mat(k, 326) + lmat(k, 326) + mat(k, 329) = mat(k, 329) + lmat(k, 329) + mat(k, 330) = lmat(k, 330) + mat(k, 331) = mat(k, 331) + lmat(k, 331) + mat(k, 333) = lmat(k, 333) + mat(k, 334) = mat(k, 334) + lmat(k, 334) + mat(k, 335) = lmat(k, 335) + mat(k, 336) = lmat(k, 336) + mat(k, 337) = mat(k, 337) + lmat(k, 337) + mat(k, 340) = mat(k, 340) + lmat(k, 340) + mat(k, 341) = lmat(k, 341) + mat(k, 342) = mat(k, 342) + lmat(k, 342) + mat(k, 344) = mat(k, 344) + lmat(k, 344) + mat(k, 345) = mat(k, 345) + lmat(k, 345) + mat(k, 346) = lmat(k, 346) + mat(k, 347) = mat(k, 347) + lmat(k, 347) + mat(k, 350) = mat(k, 350) + lmat(k, 350) + mat(k, 358) = mat(k, 358) + lmat(k, 358) + mat(k, 359) = lmat(k, 359) + mat(k, 361) = mat(k, 361) + lmat(k, 361) + mat(k, 366) = mat(k, 366) + lmat(k, 366) + mat(k, 369) = lmat(k, 369) + mat(k, 370) = mat(k, 370) + lmat(k, 370) + mat(k, 374) = mat(k, 374) + lmat(k, 374) + mat(k, 377) = lmat(k, 377) + mat(k, 380) = lmat(k, 380) + mat(k, 381) = lmat(k, 381) + mat(k, 382) = lmat(k, 382) + mat(k, 383) = lmat(k, 383) + mat(k, 384) = lmat(k, 384) + mat(k, 385) = lmat(k, 385) + mat(k, 386) = mat(k, 386) + lmat(k, 386) + mat(k, 387) = mat(k, 387) + lmat(k, 387) + mat(k, 392) = mat(k, 392) + lmat(k, 392) + mat(k, 393) = lmat(k, 393) + mat(k, 395) = lmat(k, 395) + mat(k, 396) = mat(k, 396) + lmat(k, 396) + mat(k, 397) = lmat(k, 397) + mat(k, 398) = mat(k, 398) + lmat(k, 398) + mat(k, 400) = lmat(k, 400) + mat(k, 401) = lmat(k, 401) + mat(k, 402) = mat(k, 402) + lmat(k, 402) + mat(k, 404) = mat(k, 404) + lmat(k, 404) + mat(k, 405) = lmat(k, 405) + mat(k, 408) = lmat(k, 408) + mat(k, 409) = mat(k, 409) + lmat(k, 409) + mat(k, 410) = mat(k, 410) + lmat(k, 410) + mat(k, 412) = lmat(k, 412) + mat(k, 413) = mat(k, 413) + lmat(k, 413) + mat(k, 414) = lmat(k, 414) + mat(k, 416) = mat(k, 416) + lmat(k, 416) + mat(k, 417) = lmat(k, 417) + mat(k, 419) = lmat(k, 419) + mat(k, 420) = mat(k, 420) + lmat(k, 420) + mat(k, 421) = lmat(k, 421) + mat(k, 422) = mat(k, 422) + lmat(k, 422) + mat(k, 423) = mat(k, 423) + lmat(k, 423) + mat(k, 424) = lmat(k, 424) + mat(k, 425) = mat(k, 425) + lmat(k, 425) + mat(k, 426) = lmat(k, 426) + mat(k, 428) = mat(k, 428) + lmat(k, 428) + mat(k, 430) = lmat(k, 430) + mat(k, 431) = lmat(k, 431) + mat(k, 432) = mat(k, 432) + lmat(k, 432) + mat(k, 433) = lmat(k, 433) + mat(k, 436) = mat(k, 436) + lmat(k, 436) + mat(k, 442) = mat(k, 442) + lmat(k, 442) + mat(k, 444) = lmat(k, 444) + mat(k, 447) = mat(k, 447) + lmat(k, 447) + mat(k, 449) = mat(k, 449) + lmat(k, 449) + mat(k, 455) = mat(k, 455) + lmat(k, 455) + mat(k, 456) = lmat(k, 456) + mat(k, 457) = mat(k, 457) + lmat(k, 457) + mat(k, 458) = mat(k, 458) + lmat(k, 458) + mat(k, 461) = lmat(k, 461) + mat(k, 462) = lmat(k, 462) + mat(k, 463) = lmat(k, 463) + mat(k, 464) = mat(k, 464) + lmat(k, 464) + mat(k, 468) = mat(k, 468) + lmat(k, 468) + mat(k, 469) = mat(k, 469) + lmat(k, 469) + mat(k, 475) = mat(k, 475) + lmat(k, 475) + mat(k, 477) = lmat(k, 477) + mat(k, 478) = lmat(k, 478) + mat(k, 479) = lmat(k, 479) + mat(k, 480) = mat(k, 480) + lmat(k, 480) + mat(k, 481) = lmat(k, 481) + mat(k, 484) = mat(k, 484) + lmat(k, 484) + mat(k, 492) = mat(k, 492) + lmat(k, 492) + mat(k, 496) = mat(k, 496) + lmat(k, 496) + mat(k, 498) = mat(k, 498) + lmat(k, 498) + mat(k, 500) = mat(k, 500) + lmat(k, 500) + mat(k, 507) = mat(k, 507) + lmat(k, 507) + mat(k, 509) = lmat(k, 509) + mat(k, 510) = lmat(k, 510) + mat(k, 512) = mat(k, 512) + lmat(k, 512) + mat(k, 513) = mat(k, 513) + lmat(k, 513) + mat(k, 516) = lmat(k, 516) + mat(k, 519) = mat(k, 519) + lmat(k, 519) + mat(k, 525) = mat(k, 525) + lmat(k, 525) + mat(k, 526) = lmat(k, 526) + mat(k, 527) = lmat(k, 527) + mat(k, 530) = mat(k, 530) + lmat(k, 530) + mat(k, 531) = lmat(k, 531) + mat(k, 532) = lmat(k, 532) + mat(k, 533) = mat(k, 533) + lmat(k, 533) + mat(k, 538) = lmat(k, 538) + mat(k, 541) = mat(k, 541) + lmat(k, 541) + mat(k, 543) = lmat(k, 543) + mat(k, 545) = lmat(k, 545) + mat(k, 546) = mat(k, 546) + lmat(k, 546) + mat(k, 547) = lmat(k, 547) + mat(k, 549) = mat(k, 549) + lmat(k, 549) + mat(k, 557) = mat(k, 557) + lmat(k, 557) + mat(k, 558) = lmat(k, 558) + mat(k, 559) = lmat(k, 559) + mat(k, 560) = lmat(k, 560) + mat(k, 561) = mat(k, 561) + lmat(k, 561) + mat(k, 562) = lmat(k, 562) + mat(k, 563) = mat(k, 563) + lmat(k, 563) + mat(k, 565) = mat(k, 565) + lmat(k, 565) + mat(k, 573) = mat(k, 573) + lmat(k, 573) + mat(k, 576) = lmat(k, 576) + mat(k, 580) = lmat(k, 580) + mat(k, 582) = mat(k, 582) + lmat(k, 582) + mat(k, 586) = lmat(k, 586) + mat(k, 591) = lmat(k, 591) + mat(k, 592) = lmat(k, 592) + mat(k, 593) = lmat(k, 593) + mat(k, 594) = lmat(k, 594) + mat(k, 595) = mat(k, 595) + lmat(k, 595) + mat(k, 596) = mat(k, 596) + lmat(k, 596) + mat(k, 599) = lmat(k, 599) + mat(k, 604) = mat(k, 604) + lmat(k, 604) + mat(k, 605) = mat(k, 605) + lmat(k, 605) + mat(k, 611) = mat(k, 611) + lmat(k, 611) + mat(k, 612) = mat(k, 612) + lmat(k, 612) + mat(k, 615) = mat(k, 615) + lmat(k, 615) + mat(k, 616) = lmat(k, 616) + mat(k, 618) = mat(k, 618) + lmat(k, 618) + mat(k, 619) = mat(k, 619) + lmat(k, 619) + mat(k, 620) = lmat(k, 620) + mat(k, 622) = mat(k, 622) + lmat(k, 622) + mat(k, 623) = lmat(k, 623) + mat(k, 626) = mat(k, 626) + lmat(k, 626) + mat(k, 632) = lmat(k, 632) + mat(k, 633) = mat(k, 633) + lmat(k, 633) + mat(k, 637) = lmat(k, 637) + mat(k, 638) = lmat(k, 638) + mat(k, 640) = lmat(k, 640) + mat(k, 641) = mat(k, 641) + lmat(k, 641) + mat(k, 642) = lmat(k, 642) + mat(k, 643) = mat(k, 643) + lmat(k, 643) + mat(k, 644) = lmat(k, 644) + mat(k, 645) = lmat(k, 645) + mat(k, 646) = lmat(k, 646) + mat(k, 647) = lmat(k, 647) + mat(k, 649) = lmat(k, 649) + mat(k, 650) = lmat(k, 650) + mat(k, 651) = mat(k, 651) + lmat(k, 651) + mat(k, 652) = lmat(k, 652) + mat(k, 653) = lmat(k, 653) + mat(k, 654) = lmat(k, 654) + mat(k, 655) = lmat(k, 655) + mat(k, 656) = mat(k, 656) + lmat(k, 656) + mat(k, 661) = lmat(k, 661) + mat(k, 663) = lmat(k, 663) + mat(k, 664) = mat(k, 664) + lmat(k, 664) + mat(k, 665) = lmat(k, 665) + mat(k, 666) = lmat(k, 666) + mat(k, 667) = mat(k, 667) + lmat(k, 667) + mat(k, 670) = mat(k, 670) + lmat(k, 670) + mat(k, 671) = mat(k, 671) + lmat(k, 671) + mat(k, 673) = mat(k, 673) + lmat(k, 673) + mat(k, 675) = mat(k, 675) + lmat(k, 675) + mat(k, 676) = lmat(k, 676) + mat(k, 678) = mat(k, 678) + lmat(k, 678) + mat(k, 685) = mat(k, 685) + lmat(k, 685) + mat(k, 690) = lmat(k, 690) + mat(k, 691) = lmat(k, 691) + mat(k, 692) = lmat(k, 692) + mat(k, 693) = lmat(k, 693) + mat(k, 694) = mat(k, 694) + lmat(k, 694) + mat(k, 699) = lmat(k, 699) + mat(k, 701) = lmat(k, 701) + mat(k, 703) = mat(k, 703) + lmat(k, 703) + mat(k, 704) = lmat(k, 704) + mat(k, 707) = mat(k, 707) + lmat(k, 707) + mat(k, 714) = mat(k, 714) + lmat(k, 714) + mat(k, 725) = mat(k, 725) + lmat(k, 725) + mat(k, 736) = mat(k, 736) + lmat(k, 736) + mat(k, 738) = lmat(k, 738) + mat(k, 739) = lmat(k, 739) + mat(k, 740) = lmat(k, 740) + mat(k, 741) = mat(k, 741) + lmat(k, 741) + mat(k, 742) = lmat(k, 742) + mat(k, 749) = mat(k, 749) + lmat(k, 749) + mat(k, 760) = mat(k, 760) + lmat(k, 760) + mat(k, 769) = mat(k, 769) + lmat(k, 769) + mat(k, 779) = mat(k, 779) + lmat(k, 779) + mat(k, 780) = lmat(k, 780) + mat(k, 781) = mat(k, 781) + lmat(k, 781) + mat(k, 788) = mat(k, 788) + lmat(k, 788) + mat(k, 798) = mat(k, 798) + lmat(k, 798) + mat(k, 802) = lmat(k, 802) + mat(k, 803) = lmat(k, 803) + mat(k, 804) = lmat(k, 804) + mat(k, 805) = mat(k, 805) + lmat(k, 805) + mat(k, 806) = mat(k, 806) + lmat(k, 806) + mat(k, 807) = mat(k, 807) + lmat(k, 807) + mat(k, 814) = mat(k, 814) + lmat(k, 814) + mat(k, 815) = mat(k, 815) + lmat(k, 815) + mat(k, 817) = mat(k, 817) + lmat(k, 817) + mat(k, 824) = mat(k, 824) + lmat(k, 824) + mat(k, 835) = mat(k, 835) + lmat(k, 835) + mat(k, 852) = mat(k, 852) + lmat(k, 852) + mat(k, 853) = lmat(k, 853) + mat(k, 856) = lmat(k, 856) + mat(k, 858) = mat(k, 858) + lmat(k, 858) + mat(k, 860) = lmat(k, 860) + mat(k, 861) = lmat(k, 861) + mat(k, 863) = mat(k, 863) + lmat(k, 863) + mat(k, 865) = mat(k, 865) + lmat(k, 865) + mat(k, 874) = mat(k, 874) + lmat(k, 874) + mat(k, 888) = mat(k, 888) + lmat(k, 888) + mat(k, 899) = mat(k, 899) + lmat(k, 899) + mat(k, 900) = mat(k, 900) + lmat(k, 900) + mat(k, 901) = mat(k, 901) + lmat(k, 901) + mat(k, 903) = mat(k, 903) + lmat(k, 903) + mat(k, 904) = mat(k, 904) + lmat(k, 904) + mat(k, 905) = lmat(k, 905) + mat(k, 906) = mat(k, 906) + lmat(k, 906) + mat(k, 913) = mat(k, 913) + lmat(k, 913) + mat(k, 923) = mat(k, 923) + lmat(k, 923) + mat(k, 925) = lmat(k, 925) + mat(k, 927) = lmat(k, 927) + mat(k, 930) = mat(k, 930) + lmat(k, 930) + mat(k, 949) = mat(k, 949) + lmat(k, 949) + mat(k, 970) = mat(k, 970) + lmat(k, 970) + mat(k, 972) = lmat(k, 972) + mat(k, 974) = lmat(k, 974) + mat(k, 977) = lmat(k, 977) + mat(k, 978) = lmat(k, 978) + mat(k, 980) = mat(k, 980) + lmat(k, 980) + mat(k, 981) = mat(k, 981) + lmat(k, 981) + mat(k, 983) = mat(k, 983) + lmat(k, 983) + mat(k,1000) = mat(k,1000) + lmat(k,1000) + mat(k,1025) = mat(k,1025) + lmat(k,1025) + mat(k,1046) = mat(k,1046) + lmat(k,1046) + mat(k,1058) = mat(k,1058) + lmat(k,1058) + mat(k,1059) = mat(k,1059) + lmat(k,1059) + mat(k,1060) = mat(k,1060) + lmat(k,1060) + mat(k,1061) = mat(k,1061) + lmat(k,1061) + mat(k,1062) = mat(k,1062) + lmat(k,1062) + mat(k,1063) = mat(k,1063) + lmat(k,1063) + mat(k,1064) = mat(k,1064) + lmat(k,1064) + mat(k,1067) = mat(k,1067) + lmat(k,1067) + mat(k,1070) = lmat(k,1070) + mat(k,1074) = mat(k,1074) + lmat(k,1074) + mat(k,1078) = lmat(k,1078) + mat(k,1083) = lmat(k,1083) + mat(k,1084) = mat(k,1084) + lmat(k,1084) + mat(k,1086) = mat(k,1086) + lmat(k,1086) + mat(k,1087) = lmat(k,1087) + mat(k,1092) = lmat(k,1092) + mat(k,1093) = lmat(k,1093) + mat(k,1097) = mat(k,1097) + lmat(k,1097) + mat(k,1098) = lmat(k,1098) + mat(k,1099) = mat(k,1099) + lmat(k,1099) + mat(k,1101) = mat(k,1101) + lmat(k,1101) + mat(k,1110) = mat(k,1110) + lmat(k,1110) + mat(k,1124) = mat(k,1124) + lmat(k,1124) + mat(k,1130) = mat(k,1130) + lmat(k,1130) + mat(k,1141) = mat(k,1141) + lmat(k,1141) + mat(k,1143) = lmat(k,1143) + mat(k,1144) = lmat(k,1144) + mat(k,1146) = mat(k,1146) + lmat(k,1146) + mat(k,1148) = lmat(k,1148) + mat(k,1149) = lmat(k,1149) + mat(k,1150) = lmat(k,1150) + mat(k,1151) = lmat(k,1151) + mat(k,1153) = lmat(k,1153) + mat(k,1154) = mat(k,1154) + lmat(k,1154) + mat(k,1156) = lmat(k,1156) + mat(k,1157) = lmat(k,1157) + mat(k,1158) = lmat(k,1158) + mat(k,1163) = lmat(k,1163) + mat(k,1164) = mat(k,1164) + lmat(k,1164) + mat(k,1174) = mat(k,1174) + lmat(k,1174) + mat(k,1194) = mat(k,1194) + lmat(k,1194) + mat(k,1209) = mat(k,1209) + lmat(k,1209) + mat(k,1210) = mat(k,1210) + lmat(k,1210) + mat(k,1213) = mat(k,1213) + lmat(k,1213) + mat(k,1214) = mat(k,1214) + lmat(k,1214) + mat(k,1215) = mat(k,1215) + lmat(k,1215) + mat(k,1217) = mat(k,1217) + lmat(k,1217) + mat(k,1221) = mat(k,1221) + lmat(k,1221) + mat(k,1222) = mat(k,1222) + lmat(k,1222) + mat(k,1223) = mat(k,1223) + lmat(k,1223) + mat(k,1227) = lmat(k,1227) + mat(k,1231) = lmat(k,1231) + mat(k,1232) = mat(k,1232) + lmat(k,1232) + mat(k,1233) = mat(k,1233) + lmat(k,1233) + mat(k,1243) = lmat(k,1243) + mat(k,1257) = mat(k,1257) + lmat(k,1257) + mat(k,1273) = lmat(k,1273) + mat(k,1289) = mat(k,1289) + lmat(k,1289) + mat(k,1301) = mat(k,1301) + lmat(k,1301) + mat(k,1312) = mat(k,1312) + lmat(k,1312) + mat(k,1327) = lmat(k,1327) + mat(k,1329) = mat(k,1329) + lmat(k,1329) + mat(k,1333) = mat(k,1333) + lmat(k,1333) + mat(k,1335) = mat(k,1335) + lmat(k,1335) + mat(k,1341) = lmat(k,1341) + mat(k,1355) = mat(k,1355) + lmat(k,1355) + mat(k,1387) = mat(k,1387) + lmat(k,1387) + mat(k,1402) = mat(k,1402) + lmat(k,1402) + mat(k,1416) = mat(k,1416) + lmat(k,1416) + mat(k,1427) = lmat(k,1427) + mat(k,1429) = lmat(k,1429) + mat(k,1430) = mat(k,1430) + lmat(k,1430) + mat(k,1431) = mat(k,1431) + lmat(k,1431) + mat(k,1432) = mat(k,1432) + lmat(k,1432) + mat(k,1434) = mat(k,1434) + lmat(k,1434) + mat(k,1436) = mat(k,1436) + lmat(k,1436) + mat(k,1438) = mat(k,1438) + lmat(k,1438) + mat(k,1442) = lmat(k,1442) + mat(k,1443) = mat(k,1443) + lmat(k,1443) + mat(k,1446) = mat(k,1446) + lmat(k,1446) + mat(k,1454) = mat(k,1454) + lmat(k,1454) + mat(k,1464) = mat(k,1464) + lmat(k,1464) + mat(k,1467) = mat(k,1467) + lmat(k,1467) + mat(k,1470) = lmat(k,1470) + mat(k,1480) = mat(k,1480) + lmat(k,1480) + mat(k,1481) = lmat(k,1481) + mat(k,1484) = mat(k,1484) + lmat(k,1484) + mat(k,1486) = mat(k,1486) + lmat(k,1486) + mat(k,1527) = mat(k,1527) + lmat(k,1527) + mat(k,1538) = mat(k,1538) + lmat(k,1538) + mat(k,1692) = mat(k,1692) + lmat(k,1692) + mat(k,1719) = mat(k,1719) + lmat(k,1719) + mat(k,1724) = mat(k,1724) + lmat(k,1724) + mat(k,1728) = mat(k,1728) + lmat(k,1728) + mat(k,1772) = mat(k,1772) + lmat(k,1772) + mat(k,1777) = mat(k,1777) + lmat(k,1777) + mat(k,1779) = mat(k,1779) + lmat(k,1779) + mat(k,1780) = mat(k,1780) + lmat(k,1780) + mat(k,1785) = mat(k,1785) + lmat(k,1785) + mat(k,1830) = mat(k,1830) + lmat(k,1830) + mat(k,1864) = mat(k,1864) + lmat(k,1864) + mat(k,1923) = mat(k,1923) + lmat(k,1923) + mat(k,1929) = mat(k,1929) + lmat(k,1929) + mat(k,1960) = mat(k,1960) + lmat(k,1960) + mat(k,1963) = mat(k,1963) + lmat(k,1963) + mat(k,1967) = mat(k,1967) + lmat(k,1967) + mat(k,1968) = mat(k,1968) + lmat(k,1968) + mat(k,1973) = mat(k,1973) + lmat(k,1973) + mat(k,2008) = mat(k,2008) + lmat(k,2008) + mat(k,2116) = mat(k,2116) + lmat(k,2116) + mat(k,2121) = mat(k,2121) + lmat(k,2121) + mat(k,2128) = mat(k,2128) + lmat(k,2128) + mat(k,2138) = mat(k,2138) + lmat(k,2138) + mat(k,2140) = mat(k,2140) + lmat(k,2140) + mat(k,2151) = mat(k,2151) + lmat(k,2151) + mat(k,2165) = mat(k,2165) + lmat(k,2165) + mat(k,2166) = mat(k,2166) + lmat(k,2166) + mat(k,2197) = mat(k,2197) + lmat(k,2197) + mat(k,2198) = mat(k,2198) + lmat(k,2198) + mat(k,2247) = mat(k,2247) + lmat(k,2247) + mat(k,2258) = mat(k,2258) + lmat(k,2258) + mat(k,2259) = mat(k,2259) + lmat(k,2259) + mat(k,2267) = lmat(k,2267) + mat(k,2270) = lmat(k,2270) + mat(k,2273) = mat(k,2273) + lmat(k,2273) + mat(k,2274) = mat(k,2274) + lmat(k,2274) + mat(k,2284) = lmat(k,2284) + mat(k,2286) = mat(k,2286) + lmat(k,2286) + mat(k, 213) = 0._r8 + mat(k, 214) = 0._r8 + mat(k, 253) = 0._r8 + mat(k, 300) = 0._r8 + mat(k, 339) = 0._r8 + mat(k, 437) = 0._r8 + mat(k, 438) = 0._r8 + mat(k, 451) = 0._r8 + mat(k, 485) = 0._r8 + mat(k, 487) = 0._r8 + mat(k, 494) = 0._r8 + mat(k, 503) = 0._r8 + mat(k, 627) = 0._r8 + mat(k, 631) = 0._r8 + mat(k, 634) = 0._r8 + mat(k, 635) = 0._r8 + mat(k, 639) = 0._r8 + mat(k, 657) = 0._r8 + mat(k, 659) = 0._r8 + mat(k, 660) = 0._r8 + mat(k, 662) = 0._r8 + mat(k, 668) = 0._r8 + mat(k, 669) = 0._r8 + mat(k, 672) = 0._r8 + mat(k, 695) = 0._r8 + mat(k, 697) = 0._r8 + mat(k, 698) = 0._r8 + mat(k, 700) = 0._r8 + mat(k, 702) = 0._r8 + mat(k, 708) = 0._r8 + mat(k, 710) = 0._r8 + mat(k, 724) = 0._r8 + mat(k, 726) = 0._r8 + mat(k, 727) = 0._r8 + mat(k, 729) = 0._r8 + mat(k, 731) = 0._r8 + mat(k, 748) = 0._r8 + mat(k, 750) = 0._r8 + mat(k, 751) = 0._r8 + mat(k, 753) = 0._r8 + mat(k, 755) = 0._r8 + mat(k, 756) = 0._r8 + mat(k, 771) = 0._r8 + mat(k, 773) = 0._r8 + mat(k, 777) = 0._r8 + mat(k, 782) = 0._r8 + mat(k, 792) = 0._r8 + mat(k, 797) = 0._r8 + mat(k, 827) = 0._r8 + mat(k, 857) = 0._r8 + mat(k, 886) = 0._r8 + mat(k, 887) = 0._r8 + mat(k, 891) = 0._r8 + mat(k, 893) = 0._r8 + mat(k, 894) = 0._r8 + mat(k, 909) = 0._r8 + mat(k, 916) = 0._r8 + mat(k, 918) = 0._r8 + mat(k, 931) = 0._r8 + mat(k, 934) = 0._r8 + mat(k, 945) = 0._r8 + mat(k, 951) = 0._r8 + mat(k, 954) = 0._r8 + mat(k, 957) = 0._r8 + mat(k, 959) = 0._r8 + mat(k, 963) = 0._r8 + mat(k, 964) = 0._r8 + mat(k, 965) = 0._r8 + mat(k, 967) = 0._r8 + mat(k, 969) = 0._r8 + mat(k, 984) = 0._r8 + mat(k, 994) = 0._r8 + mat(k, 999) = 0._r8 + mat(k,1003) = 0._r8 + mat(k,1004) = 0._r8 + mat(k,1007) = 0._r8 + mat(k,1009) = 0._r8 + mat(k,1013) = 0._r8 + mat(k,1014) = 0._r8 + mat(k,1015) = 0._r8 + mat(k,1017) = 0._r8 + mat(k,1019) = 0._r8 + mat(k,1028) = 0._r8 + mat(k,1029) = 0._r8 + mat(k,1030) = 0._r8 + mat(k,1036) = 0._r8 + mat(k,1037) = 0._r8 + mat(k,1039) = 0._r8 + mat(k,1041) = 0._r8 + mat(k,1047) = 0._r8 + mat(k,1048) = 0._r8 + mat(k,1049) = 0._r8 + mat(k,1050) = 0._r8 + mat(k,1052) = 0._r8 + mat(k,1066) = 0._r8 + mat(k,1068) = 0._r8 + mat(k,1069) = 0._r8 + mat(k,1072) = 0._r8 + mat(k,1075) = 0._r8 + mat(k,1076) = 0._r8 + mat(k,1077) = 0._r8 + mat(k,1079) = 0._r8 + mat(k,1081) = 0._r8 + mat(k,1082) = 0._r8 + mat(k,1085) = 0._r8 + mat(k,1102) = 0._r8 + mat(k,1112) = 0._r8 + mat(k,1113) = 0._r8 + mat(k,1114) = 0._r8 + mat(k,1116) = 0._r8 + mat(k,1121) = 0._r8 + mat(k,1122) = 0._r8 + mat(k,1127) = 0._r8 + mat(k,1140) = 0._r8 + mat(k,1152) = 0._r8 + mat(k,1155) = 0._r8 + mat(k,1160) = 0._r8 + mat(k,1161) = 0._r8 + mat(k,1162) = 0._r8 + mat(k,1165) = 0._r8 + mat(k,1166) = 0._r8 + mat(k,1178) = 0._r8 + mat(k,1184) = 0._r8 + mat(k,1187) = 0._r8 + mat(k,1189) = 0._r8 + mat(k,1191) = 0._r8 + mat(k,1192) = 0._r8 + mat(k,1193) = 0._r8 + mat(k,1195) = 0._r8 + mat(k,1196) = 0._r8 + mat(k,1197) = 0._r8 + mat(k,1199) = 0._r8 + mat(k,1201) = 0._r8 + mat(k,1207) = 0._r8 + mat(k,1218) = 0._r8 + mat(k,1228) = 0._r8 + mat(k,1241) = 0._r8 + mat(k,1245) = 0._r8 + mat(k,1250) = 0._r8 + mat(k,1251) = 0._r8 + mat(k,1252) = 0._r8 + mat(k,1253) = 0._r8 + mat(k,1254) = 0._r8 + mat(k,1256) = 0._r8 + mat(k,1258) = 0._r8 + mat(k,1260) = 0._r8 + mat(k,1262) = 0._r8 + mat(k,1264) = 0._r8 + mat(k,1270) = 0._r8 + mat(k,1271) = 0._r8 + mat(k,1272) = 0._r8 + mat(k,1276) = 0._r8 + mat(k,1279) = 0._r8 + mat(k,1280) = 0._r8 + mat(k,1283) = 0._r8 + mat(k,1285) = 0._r8 + mat(k,1286) = 0._r8 + mat(k,1287) = 0._r8 + mat(k,1290) = 0._r8 + mat(k,1291) = 0._r8 + mat(k,1292) = 0._r8 + mat(k,1294) = 0._r8 + mat(k,1296) = 0._r8 + mat(k,1302) = 0._r8 + mat(k,1303) = 0._r8 + mat(k,1304) = 0._r8 + mat(k,1313) = 0._r8 + mat(k,1315) = 0._r8 + mat(k,1317) = 0._r8 + mat(k,1323) = 0._r8 + mat(k,1324) = 0._r8 + mat(k,1330) = 0._r8 + mat(k,1334) = 0._r8 + mat(k,1336) = 0._r8 + mat(k,1337) = 0._r8 + mat(k,1340) = 0._r8 + mat(k,1342) = 0._r8 + mat(k,1343) = 0._r8 + mat(k,1345) = 0._r8 + mat(k,1347) = 0._r8 + mat(k,1352) = 0._r8 + mat(k,1353) = 0._r8 + mat(k,1354) = 0._r8 + mat(k,1357) = 0._r8 + mat(k,1365) = 0._r8 + mat(k,1367) = 0._r8 + mat(k,1388) = 0._r8 + mat(k,1389) = 0._r8 + mat(k,1392) = 0._r8 + mat(k,1397) = 0._r8 + mat(k,1399) = 0._r8 + mat(k,1403) = 0._r8 + mat(k,1405) = 0._r8 + mat(k,1408) = 0._r8 + mat(k,1409) = 0._r8 + mat(k,1417) = 0._r8 + mat(k,1419) = 0._r8 + mat(k,1420) = 0._r8 + mat(k,1423) = 0._r8 + mat(k,1425) = 0._r8 + mat(k,1433) = 0._r8 + mat(k,1437) = 0._r8 + mat(k,1445) = 0._r8 + mat(k,1447) = 0._r8 + mat(k,1448) = 0._r8 + mat(k,1449) = 0._r8 + mat(k,1451) = 0._r8 + mat(k,1452) = 0._r8 + mat(k,1453) = 0._r8 + mat(k,1455) = 0._r8 + mat(k,1461) = 0._r8 + mat(k,1462) = 0._r8 + mat(k,1463) = 0._r8 + mat(k,1465) = 0._r8 + mat(k,1466) = 0._r8 + mat(k,1469) = 0._r8 + mat(k,1471) = 0._r8 + mat(k,1472) = 0._r8 + mat(k,1473) = 0._r8 + mat(k,1474) = 0._r8 + mat(k,1475) = 0._r8 + mat(k,1479) = 0._r8 + mat(k,1483) = 0._r8 + mat(k,1487) = 0._r8 + mat(k,1490) = 0._r8 + mat(k,1491) = 0._r8 + mat(k,1492) = 0._r8 + mat(k,1496) = 0._r8 + mat(k,1498) = 0._r8 + mat(k,1525) = 0._r8 + mat(k,1530) = 0._r8 + mat(k,1533) = 0._r8 + mat(k,1606) = 0._r8 + mat(k,1623) = 0._r8 + mat(k,1637) = 0._r8 + mat(k,1641) = 0._r8 + mat(k,1652) = 0._r8 + mat(k,1653) = 0._r8 + mat(k,1675) = 0._r8 + mat(k,1691) = 0._r8 + mat(k,1714) = 0._r8 + mat(k,1715) = 0._r8 + mat(k,1717) = 0._r8 + mat(k,1720) = 0._r8 + mat(k,1729) = 0._r8 + mat(k,1730) = 0._r8 + mat(k,1737) = 0._r8 + mat(k,1742) = 0._r8 + mat(k,1749) = 0._r8 + mat(k,1755) = 0._r8 + mat(k,1757) = 0._r8 + mat(k,1762) = 0._r8 + mat(k,1769) = 0._r8 + mat(k,1770) = 0._r8 + mat(k,1771) = 0._r8 + mat(k,1774) = 0._r8 + mat(k,1776) = 0._r8 + mat(k,1778) = 0._r8 + mat(k,1781) = 0._r8 + mat(k,1783) = 0._r8 + mat(k,1784) = 0._r8 + mat(k,1786) = 0._r8 + mat(k,1787) = 0._r8 + mat(k,1798) = 0._r8 + mat(k,1822) = 0._r8 + mat(k,1823) = 0._r8 + mat(k,1824) = 0._r8 + mat(k,1826) = 0._r8 + mat(k,1827) = 0._r8 + mat(k,1829) = 0._r8 + mat(k,1835) = 0._r8 + mat(k,1836) = 0._r8 + mat(k,1837) = 0._r8 + mat(k,1838) = 0._r8 + mat(k,1839) = 0._r8 + mat(k,1885) = 0._r8 + mat(k,1914) = 0._r8 + mat(k,1915) = 0._r8 + mat(k,1916) = 0._r8 + mat(k,1918) = 0._r8 + mat(k,1927) = 0._r8 + mat(k,1931) = 0._r8 + mat(k,1942) = 0._r8 + mat(k,1945) = 0._r8 + mat(k,1946) = 0._r8 + mat(k,1950) = 0._r8 + mat(k,1951) = 0._r8 + mat(k,1952) = 0._r8 + mat(k,1953) = 0._r8 + mat(k,1957) = 0._r8 + mat(k,1958) = 0._r8 + mat(k,1959) = 0._r8 + mat(k,1961) = 0._r8 + mat(k,1962) = 0._r8 + mat(k,1966) = 0._r8 + mat(k,1969) = 0._r8 + mat(k,1971) = 0._r8 + mat(k,1975) = 0._r8 + mat(k,1985) = 0._r8 + mat(k,1989) = 0._r8 + mat(k,1990) = 0._r8 + mat(k,1991) = 0._r8 + mat(k,1992) = 0._r8 + mat(k,1994) = 0._r8 + mat(k,1999) = 0._r8 + mat(k,2001) = 0._r8 + mat(k,2006) = 0._r8 + mat(k,2007) = 0._r8 + mat(k,2011) = 0._r8 + mat(k,2012) = 0._r8 + mat(k,2014) = 0._r8 + mat(k,2030) = 0._r8 + mat(k,2047) = 0._r8 + mat(k,2048) = 0._r8 + mat(k,2076) = 0._r8 + mat(k,2080) = 0._r8 + mat(k,2082) = 0._r8 + mat(k,2085) = 0._r8 + mat(k,2087) = 0._r8 + mat(k,2091) = 0._r8 + mat(k,2094) = 0._r8 + mat(k,2099) = 0._r8 + mat(k,2104) = 0._r8 + mat(k,2106) = 0._r8 + mat(k,2108) = 0._r8 + mat(k,2127) = 0._r8 + mat(k,2130) = 0._r8 + mat(k,2134) = 0._r8 + mat(k,2135) = 0._r8 + mat(k,2136) = 0._r8 + mat(k,2137) = 0._r8 + mat(k,2139) = 0._r8 + mat(k,2141) = 0._r8 + mat(k,2143) = 0._r8 + mat(k,2152) = 0._r8 + mat(k,2153) = 0._r8 + mat(k,2154) = 0._r8 + mat(k,2155) = 0._r8 + mat(k,2158) = 0._r8 + mat(k,2159) = 0._r8 + mat(k,2164) = 0._r8 + mat(k,2167) = 0._r8 + mat(k,2168) = 0._r8 + mat(k,2170) = 0._r8 + mat(k,2176) = 0._r8 + mat(k,2182) = 0._r8 + mat(k,2184) = 0._r8 + mat(k,2186) = 0._r8 + mat(k,2190) = 0._r8 + mat(k,2199) = 0._r8 + mat(k,2212) = 0._r8 + mat(k,2216) = 0._r8 + mat(k,2221) = 0._r8 + mat(k,2224) = 0._r8 + mat(k,2227) = 0._r8 + mat(k,2228) = 0._r8 + mat(k,2231) = 0._r8 + mat(k,2232) = 0._r8 + mat(k,2236) = 0._r8 + mat(k,2237) = 0._r8 + mat(k,2238) = 0._r8 + mat(k,2240) = 0._r8 + mat(k,2245) = 0._r8 + mat(k,2256) = 0._r8 + mat(k,2260) = 0._r8 + mat(k,2264) = 0._r8 + mat(k,2266) = 0._r8 + mat(k,2268) = 0._r8 + mat(k,2269) = 0._r8 + mat(k,2271) = 0._r8 + mat(k,2272) = 0._r8 + mat(k,2275) = 0._r8 + mat(k,2276) = 0._r8 + mat(k,2277) = 0._r8 + mat(k,2278) = 0._r8 + mat(k,2279) = 0._r8 + mat(k,2280) = 0._r8 + mat(k,2281) = 0._r8 + mat(k,2282) = 0._r8 + mat(k,2283) = 0._r8 + mat(k,2285) = 0._r8 + mat(k, 1) = mat(k, 1) - dti(k) + mat(k, 2) = mat(k, 2) - dti(k) + mat(k, 3) = mat(k, 3) - dti(k) + mat(k, 4) = mat(k, 4) - dti(k) + mat(k, 5) = mat(k, 5) - dti(k) + mat(k, 6) = mat(k, 6) - dti(k) + mat(k, 7) = mat(k, 7) - dti(k) + mat(k, 8) = mat(k, 8) - dti(k) + mat(k, 9) = mat(k, 9) - dti(k) + mat(k, 10) = mat(k, 10) - dti(k) + mat(k, 11) = mat(k, 11) - dti(k) + mat(k, 12) = mat(k, 12) - dti(k) + mat(k, 13) = mat(k, 13) - dti(k) + mat(k, 14) = mat(k, 14) - dti(k) + mat(k, 15) = mat(k, 15) - dti(k) + mat(k, 16) = mat(k, 16) - dti(k) + mat(k, 17) = mat(k, 17) - dti(k) + mat(k, 18) = mat(k, 18) - dti(k) + mat(k, 19) = mat(k, 19) - dti(k) + mat(k, 20) = mat(k, 20) - dti(k) + mat(k, 21) = mat(k, 21) - dti(k) + mat(k, 22) = mat(k, 22) - dti(k) + mat(k, 23) = mat(k, 23) - dti(k) + mat(k, 24) = mat(k, 24) - dti(k) + mat(k, 25) = mat(k, 25) - dti(k) + mat(k, 26) = mat(k, 26) - dti(k) + mat(k, 27) = mat(k, 27) - dti(k) + mat(k, 28) = mat(k, 28) - dti(k) + mat(k, 29) = mat(k, 29) - dti(k) + mat(k, 30) = mat(k, 30) - dti(k) + mat(k, 31) = mat(k, 31) - dti(k) + mat(k, 32) = mat(k, 32) - dti(k) + mat(k, 33) = mat(k, 33) - dti(k) + mat(k, 34) = mat(k, 34) - dti(k) + mat(k, 35) = mat(k, 35) - dti(k) + mat(k, 36) = mat(k, 36) - dti(k) + mat(k, 37) = mat(k, 37) - dti(k) + mat(k, 38) = mat(k, 38) - dti(k) + mat(k, 39) = mat(k, 39) - dti(k) + mat(k, 40) = mat(k, 40) - dti(k) + mat(k, 41) = mat(k, 41) - dti(k) + mat(k, 42) = mat(k, 42) - dti(k) + mat(k, 43) = mat(k, 43) - dti(k) + mat(k, 49) = mat(k, 49) - dti(k) + mat(k, 55) = mat(k, 55) - dti(k) + mat(k, 61) = mat(k, 61) - dti(k) + mat(k, 67) = mat(k, 67) - dti(k) + mat(k, 73) = mat(k, 73) - dti(k) + mat(k, 75) = mat(k, 75) - dti(k) + mat(k, 81) = mat(k, 81) - dti(k) + mat(k, 87) = mat(k, 87) - dti(k) + mat(k, 93) = mat(k, 93) - dti(k) + mat(k, 94) = mat(k, 94) - dti(k) + mat(k, 97) = mat(k, 97) - dti(k) + mat(k, 100) = mat(k, 100) - dti(k) + mat(k, 103) = mat(k, 103) - dti(k) + mat(k, 106) = mat(k, 106) - dti(k) + mat(k, 110) = mat(k, 110) - dti(k) + mat(k, 114) = mat(k, 114) - dti(k) + mat(k, 118) = mat(k, 118) - dti(k) + mat(k, 122) = mat(k, 122) - dti(k) + mat(k, 126) = mat(k, 126) - dti(k) + mat(k, 130) = mat(k, 130) - dti(k) + mat(k, 133) = mat(k, 133) - dti(k) + mat(k, 136) = mat(k, 136) - dti(k) + mat(k, 139) = mat(k, 139) - dti(k) + mat(k, 142) = mat(k, 142) - dti(k) + mat(k, 147) = mat(k, 147) - dti(k) + mat(k, 152) = mat(k, 152) - dti(k) + mat(k, 157) = mat(k, 157) - dti(k) + mat(k, 163) = mat(k, 163) - dti(k) + mat(k, 169) = mat(k, 169) - dti(k) + mat(k, 173) = mat(k, 173) - dti(k) + mat(k, 178) = mat(k, 178) - dti(k) + mat(k, 180) = mat(k, 180) - dti(k) + mat(k, 184) = mat(k, 184) - dti(k) + mat(k, 188) = mat(k, 188) - dti(k) + mat(k, 195) = mat(k, 195) - dti(k) + mat(k, 200) = mat(k, 200) - dti(k) + mat(k, 204) = mat(k, 204) - dti(k) + mat(k, 209) = mat(k, 209) - dti(k) + mat(k, 217) = mat(k, 217) - dti(k) + mat(k, 222) = mat(k, 222) - dti(k) + mat(k, 227) = mat(k, 227) - dti(k) + mat(k, 230) = mat(k, 230) - dti(k) + mat(k, 233) = mat(k, 233) - dti(k) + mat(k, 236) = mat(k, 236) - dti(k) + mat(k, 239) = mat(k, 239) - dti(k) + mat(k, 242) = mat(k, 242) - dti(k) + mat(k, 247) = mat(k, 247) - dti(k) + mat(k, 252) = mat(k, 252) - dti(k) + mat(k, 258) = mat(k, 258) - dti(k) + mat(k, 262) = mat(k, 262) - dti(k) + mat(k, 266) = mat(k, 266) - dti(k) + mat(k, 270) = mat(k, 270) - dti(k) + mat(k, 274) = mat(k, 274) - dti(k) + mat(k, 280) = mat(k, 280) - dti(k) + mat(k, 283) = mat(k, 283) - dti(k) + mat(k, 289) = mat(k, 289) - dti(k) + mat(k, 292) = mat(k, 292) - dti(k) + mat(k, 299) = mat(k, 299) - dti(k) + mat(k, 305) = mat(k, 305) - dti(k) + mat(k, 311) = mat(k, 311) - dti(k) + mat(k, 316) = mat(k, 316) - dti(k) + mat(k, 321) = mat(k, 321) - dti(k) + mat(k, 326) = mat(k, 326) - dti(k) + mat(k, 331) = mat(k, 331) - dti(k) + mat(k, 337) = mat(k, 337) - dti(k) + mat(k, 342) = mat(k, 342) - dti(k) + mat(k, 347) = mat(k, 347) - dti(k) + mat(k, 350) = mat(k, 350) - dti(k) + mat(k, 358) = mat(k, 358) - dti(k) + mat(k, 366) = mat(k, 366) - dti(k) + mat(k, 374) = mat(k, 374) - dti(k) + mat(k, 380) = mat(k, 380) - dti(k) + mat(k, 386) = mat(k, 386) - dti(k) + mat(k, 392) = mat(k, 392) - dti(k) + mat(k, 398) = mat(k, 398) - dti(k) + mat(k, 404) = mat(k, 404) - dti(k) + mat(k, 410) = mat(k, 410) - dti(k) + mat(k, 416) = mat(k, 416) - dti(k) + mat(k, 422) = mat(k, 422) - dti(k) + mat(k, 428) = mat(k, 428) - dti(k) + mat(k, 436) = mat(k, 436) - dti(k) + mat(k, 442) = mat(k, 442) - dti(k) + mat(k, 449) = mat(k, 449) - dti(k) + mat(k, 455) = mat(k, 455) - dti(k) + mat(k, 461) = mat(k, 461) - dti(k) + mat(k, 464) = mat(k, 464) - dti(k) + mat(k, 468) = mat(k, 468) - dti(k) + mat(k, 475) = mat(k, 475) - dti(k) + mat(k, 484) = mat(k, 484) - dti(k) + mat(k, 492) = mat(k, 492) - dti(k) + mat(k, 500) = mat(k, 500) - dti(k) + mat(k, 507) = mat(k, 507) - dti(k) + mat(k, 512) = mat(k, 512) - dti(k) + mat(k, 519) = mat(k, 519) - dti(k) + mat(k, 525) = mat(k, 525) - dti(k) + mat(k, 533) = mat(k, 533) - dti(k) + mat(k, 541) = mat(k, 541) - dti(k) + mat(k, 549) = mat(k, 549) - dti(k) + mat(k, 557) = mat(k, 557) - dti(k) + mat(k, 565) = mat(k, 565) - dti(k) + mat(k, 573) = mat(k, 573) - dti(k) + mat(k, 582) = mat(k, 582) - dti(k) + mat(k, 591) = mat(k, 591) - dti(k) + mat(k, 595) = mat(k, 595) - dti(k) + mat(k, 604) = mat(k, 604) - dti(k) + mat(k, 611) = mat(k, 611) - dti(k) + mat(k, 618) = mat(k, 618) - dti(k) + mat(k, 626) = mat(k, 626) - dti(k) + mat(k, 633) = mat(k, 633) - dti(k) + mat(k, 643) = mat(k, 643) - dti(k) + mat(k, 656) = mat(k, 656) - dti(k) + mat(k, 667) = mat(k, 667) - dti(k) + mat(k, 678) = mat(k, 678) - dti(k) + mat(k, 685) = mat(k, 685) - dti(k) + mat(k, 694) = mat(k, 694) - dti(k) + mat(k, 707) = mat(k, 707) - dti(k) + mat(k, 714) = mat(k, 714) - dti(k) + mat(k, 725) = mat(k, 725) - dti(k) + mat(k, 736) = mat(k, 736) - dti(k) + mat(k, 749) = mat(k, 749) - dti(k) + mat(k, 760) = mat(k, 760) - dti(k) + mat(k, 769) = mat(k, 769) - dti(k) + mat(k, 779) = mat(k, 779) - dti(k) + mat(k, 788) = mat(k, 788) - dti(k) + mat(k, 798) = mat(k, 798) - dti(k) + mat(k, 802) = mat(k, 802) - dti(k) + mat(k, 805) = mat(k, 805) - dti(k) + mat(k, 814) = mat(k, 814) - dti(k) + mat(k, 824) = mat(k, 824) - dti(k) + mat(k, 835) = mat(k, 835) - dti(k) + mat(k, 852) = mat(k, 852) - dti(k) + mat(k, 858) = mat(k, 858) - dti(k) + mat(k, 865) = mat(k, 865) - dti(k) + mat(k, 874) = mat(k, 874) - dti(k) + mat(k, 888) = mat(k, 888) - dti(k) + mat(k, 900) = mat(k, 900) - dti(k) + mat(k, 913) = mat(k, 913) - dti(k) + mat(k, 923) = mat(k, 923) - dti(k) + mat(k, 930) = mat(k, 930) - dti(k) + mat(k, 949) = mat(k, 949) - dti(k) + mat(k, 970) = mat(k, 970) - dti(k) + mat(k, 980) = mat(k, 980) - dti(k) + mat(k,1000) = mat(k,1000) - dti(k) + mat(k,1025) = mat(k,1025) - dti(k) + mat(k,1046) = mat(k,1046) - dti(k) + mat(k,1060) = mat(k,1060) - dti(k) + mat(k,1074) = mat(k,1074) - dti(k) + mat(k,1086) = mat(k,1086) - dti(k) + mat(k,1097) = mat(k,1097) - dti(k) + mat(k,1110) = mat(k,1110) - dti(k) + mat(k,1124) = mat(k,1124) - dti(k) + mat(k,1130) = mat(k,1130) - dti(k) + mat(k,1141) = mat(k,1141) - dti(k) + mat(k,1154) = mat(k,1154) - dti(k) + mat(k,1174) = mat(k,1174) - dti(k) + mat(k,1194) = mat(k,1194) - dti(k) + mat(k,1210) = mat(k,1210) - dti(k) + mat(k,1222) = mat(k,1222) - dti(k) + mat(k,1233) = mat(k,1233) - dti(k) + mat(k,1257) = mat(k,1257) - dti(k) + mat(k,1289) = mat(k,1289) - dti(k) + mat(k,1312) = mat(k,1312) - dti(k) + mat(k,1333) = mat(k,1333) - dti(k) + mat(k,1355) = mat(k,1355) - dti(k) + mat(k,1387) = mat(k,1387) - dti(k) + mat(k,1402) = mat(k,1402) - dti(k) + mat(k,1416) = mat(k,1416) - dti(k) + mat(k,1431) = mat(k,1431) - dti(k) + mat(k,1446) = mat(k,1446) - dti(k) + mat(k,1464) = mat(k,1464) - dti(k) + mat(k,1486) = mat(k,1486) - dti(k) + mat(k,1527) = mat(k,1527) - dti(k) + mat(k,1692) = mat(k,1692) - dti(k) + mat(k,1719) = mat(k,1719) - dti(k) + mat(k,1777) = mat(k,1777) - dti(k) + mat(k,1830) = mat(k,1830) - dti(k) + mat(k,1923) = mat(k,1923) - dti(k) + mat(k,1968) = mat(k,1968) - dti(k) + mat(k,2008) = mat(k,2008) - dti(k) + mat(k,2116) = mat(k,2116) - dti(k) + mat(k,2140) = mat(k,2140) - dti(k) + mat(k,2165) = mat(k,2165) - dti(k) + mat(k,2197) = mat(k,2197) - dti(k) + mat(k,2259) = mat(k,2259) - dti(k) + mat(k,2286) = mat(k,2286) - dti(k) + end do + end subroutine nlnmat_finit + subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call nlnmat01( avec_len, mat, y, rxt ) + call nlnmat02( avec_len, mat, y, rxt ) + call nlnmat03( avec_len, mat, y, rxt ) + call nlnmat04( avec_len, mat, y, rxt ) + call nlnmat05( avec_len, mat, y, rxt ) + call nlnmat06( avec_len, mat, y, rxt ) + call nlnmat07( avec_len, mat, y, rxt ) + call nlnmat08( avec_len, mat, y, rxt ) + call nlnmat09( avec_len, mat, y, rxt ) + call nlnmat10( avec_len, mat, y, rxt ) + call nlnmat_finit( avec_len, mat, lmat, dti ) + end subroutine nlnmat + end module mo_nln_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_phtadj.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_phtadj.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_phtadj.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/mo_phtadj.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_prod_loss.F90 new file mode 100644 index 0000000000..af48ac289e --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_prod_loss.F90 @@ -0,0 +1,1247 @@ + module mo_prod_loss + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : veclen + private + public :: exp_prod_loss + public :: imp_prod_loss + contains + subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & + rxt, het_rates, chnkpnts ) + use chem_mods, only : gas_pcnst,rxntot,clscnt1 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: ofl, ofu, chnkpnts + real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(chnkpnts,gas_pcnst) + real(r8), intent(in) :: rxt(chnkpnts,rxntot) + real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Explicit method +!-------------------------------------------------------------------- + do k = ofl,ofu + loss(k,1) = ( + het_rates(k,188))* y(k,188) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,187))* y(k,187) + prod(k,2) = 0._r8 + end do + end subroutine exp_prod_loss + subroutine imp_prod_loss( avec_len, prod, loss, y, & + rxt, het_rates ) + use chem_mods, only : gas_pcnst,rxntot,clscnt4 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), dimension(veclen,clscnt4), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Implicit method +!-------------------------------------------------------------------- + do k = 1,avec_len + loss(k,155) = (rxt(k,357)* y(k,218) + rxt(k,19) + het_rates(k,1))* y(k,1) + prod(k,155) =rxt(k,360)*y(k,190)*y(k,123) + loss(k,152) = (rxt(k,361)* y(k,218) + rxt(k,20) + het_rates(k,2))* y(k,2) + prod(k,152) =rxt(k,358)*y(k,204)*y(k,190) + loss(k,1) = ( + het_rates(k,3))* y(k,3) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,4))* y(k,4) + prod(k,2) = 0._r8 + loss(k,186) = (rxt(k,440)* y(k,125) +rxt(k,441)* y(k,134) +rxt(k,442) & + * y(k,218) + het_rates(k,5))* y(k,5) + prod(k,186) = 0._r8 + loss(k,71) = (rxt(k,399)* y(k,218) + het_rates(k,6))* y(k,6) + prod(k,71) = 0._r8 + loss(k,121) = (rxt(k,402)* y(k,218) + rxt(k,21) + het_rates(k,7))* y(k,7) + prod(k,121) =rxt(k,400)*y(k,204)*y(k,192) + loss(k,72) = ( + rxt(k,22) + het_rates(k,8))* y(k,8) + prod(k,72) =.120_r8*rxt(k,399)*y(k,218)*y(k,6) + loss(k,115) = ( + rxt(k,23) + het_rates(k,9))* y(k,9) + prod(k,115) = (.100_r8*rxt(k,441)*y(k,5) +.100_r8*rxt(k,444)*y(k,109)) & + *y(k,134) + loss(k,128) = ( + rxt(k,24) + het_rates(k,10))* y(k,10) + prod(k,128) = (.500_r8*rxt(k,401)*y(k,192) +.200_r8*rxt(k,428)*y(k,224) + & + .060_r8*rxt(k,434)*y(k,227))*y(k,123) +.500_r8*rxt(k,21)*y(k,7) & + +rxt(k,22)*y(k,8) +.200_r8*rxt(k,70)*y(k,180) +.060_r8*rxt(k,72) & + *y(k,184) + loss(k,97) = ( + rxt(k,25) + het_rates(k,11))* y(k,11) + prod(k,97) = (.200_r8*rxt(k,428)*y(k,224) +.200_r8*rxt(k,434)*y(k,227)) & + *y(k,123) +.200_r8*rxt(k,70)*y(k,180) +.200_r8*rxt(k,72)*y(k,184) + loss(k,146) = ( + rxt(k,26) + het_rates(k,12))* y(k,12) + prod(k,146) = (.200_r8*rxt(k,428)*y(k,224) +.150_r8*rxt(k,434)*y(k,227)) & + *y(k,123) +rxt(k,46)*y(k,93) +rxt(k,56)*y(k,115) +.200_r8*rxt(k,70) & + *y(k,180) +.150_r8*rxt(k,72)*y(k,184) + loss(k,105) = ( + rxt(k,27) + het_rates(k,13))* y(k,13) + prod(k,105) =.210_r8*rxt(k,434)*y(k,227)*y(k,123) +.210_r8*rxt(k,72)*y(k,184) + loss(k,84) = (rxt(k,362)* y(k,218) + het_rates(k,14))* y(k,14) + prod(k,84) = (.050_r8*rxt(k,441)*y(k,5) +.050_r8*rxt(k,444)*y(k,109)) & + *y(k,134) + loss(k,111) = (rxt(k,328)* y(k,125) +rxt(k,329)* y(k,218) + het_rates(k,15)) & + * y(k,15) + prod(k,111) = 0._r8 + loss(k,210) = (rxt(k,212)* y(k,41) +rxt(k,214)* y(k,134) +rxt(k,213) & + * y(k,204) + het_rates(k,16))* y(k,16) + prod(k,210) = (rxt(k,75) +2.000_r8*rxt(k,215)*y(k,18) +rxt(k,216)*y(k,58) + & + rxt(k,217)*y(k,58) +rxt(k,220)*y(k,123) +rxt(k,223)*y(k,133) + & + rxt(k,224)*y(k,218) +rxt(k,470)*y(k,150))*y(k,18) & + + (rxt(k,202)*y(k,33) +rxt(k,228)*y(k,34) + & + 3.000_r8*rxt(k,229)*y(k,54) +2.000_r8*rxt(k,230)*y(k,77) + & + rxt(k,231)*y(k,80) +2.000_r8*rxt(k,251)*y(k,40) +rxt(k,252)*y(k,42)) & + *y(k,217) + (rxt(k,226)*y(k,80) +2.000_r8*rxt(k,240)*y(k,40) + & + rxt(k,242)*y(k,42) +3.000_r8*rxt(k,247)*y(k,54))*y(k,218) & + + (2.000_r8*rxt(k,239)*y(k,40) +rxt(k,241)*y(k,42) + & + 3.000_r8*rxt(k,246)*y(k,54))*y(k,55) + (rxt(k,99) + & + rxt(k,225)*y(k,133))*y(k,80) +rxt(k,74)*y(k,17) +rxt(k,77)*y(k,19) & + +rxt(k,79)*y(k,33) +rxt(k,80)*y(k,34) +2.000_r8*rxt(k,86)*y(k,40) & + +rxt(k,87)*y(k,42) +3.000_r8*rxt(k,90)*y(k,54) +2.000_r8*rxt(k,98) & + *y(k,77) +rxt(k,105)*y(k,90) + loss(k,85) = ( + rxt(k,74) + het_rates(k,17))* y(k,17) + prod(k,85) = (rxt(k,531)*y(k,90) +rxt(k,536)*y(k,90))*y(k,84) & + +rxt(k,218)*y(k,58)*y(k,18) + loss(k,225) = (2._r8*rxt(k,215)* y(k,18) + (rxt(k,216) +rxt(k,217) + & + rxt(k,218))* y(k,58) +rxt(k,220)* y(k,123) +rxt(k,221)* y(k,124) & + +rxt(k,223)* y(k,133) +rxt(k,470)* y(k,150) +rxt(k,219)* y(k,204) & + +rxt(k,224)* y(k,218) + rxt(k,75) + het_rates(k,18))* y(k,18) + prod(k,225) = (rxt(k,76) +rxt(k,222)*y(k,133))*y(k,19) +rxt(k,214)*y(k,134) & + *y(k,16) +rxt(k,232)*y(k,217)*y(k,80) +rxt(k,227)*y(k,133)*y(k,90) + loss(k,142) = (rxt(k,222)* y(k,133) + rxt(k,76) + rxt(k,77) + rxt(k,525) & + + rxt(k,528) + rxt(k,533) + het_rates(k,19))* y(k,19) + prod(k,142) =rxt(k,221)*y(k,124)*y(k,18) + loss(k,3) = ( + het_rates(k,20))* y(k,20) + prod(k,3) = 0._r8 + loss(k,87) = (rxt(k,403)* y(k,218) + het_rates(k,21))* y(k,21) + prod(k,87) =rxt(k,28)*y(k,22) +rxt(k,406)*y(k,194)*y(k,123) + loss(k,108) = (rxt(k,405)* y(k,218) + rxt(k,28) + het_rates(k,22))* y(k,22) + prod(k,108) =rxt(k,404)*y(k,204)*y(k,194) + loss(k,100) = (rxt(k,277)* y(k,55) +rxt(k,278)* y(k,218) + het_rates(k,23)) & + * y(k,23) + prod(k,100) = 0._r8 + loss(k,141) = (rxt(k,279)* y(k,55) +rxt(k,280)* y(k,134) +rxt(k,305) & + * y(k,218) + het_rates(k,24))* y(k,24) + prod(k,141) = 0._r8 + loss(k,93) = (rxt(k,285)* y(k,218) + het_rates(k,25))* y(k,25) + prod(k,93) = (.400_r8*rxt(k,281)*y(k,195) +.200_r8*rxt(k,282)*y(k,199)) & + *y(k,195) + loss(k,109) = (rxt(k,286)* y(k,218) + rxt(k,29) + het_rates(k,26))* y(k,26) + prod(k,109) =rxt(k,283)*y(k,204)*y(k,195) + loss(k,102) = (rxt(k,287)* y(k,55) +rxt(k,288)* y(k,218) + het_rates(k,27)) & + * y(k,27) + prod(k,102) = 0._r8 + loss(k,187) = (rxt(k,308)* y(k,125) +rxt(k,309)* y(k,134) +rxt(k,326) & + * y(k,218) + het_rates(k,28))* y(k,28) + prod(k,187) =.130_r8*rxt(k,386)*y(k,134)*y(k,97) +.700_r8*rxt(k,55)*y(k,110) + loss(k,120) = (rxt(k,313)* y(k,218) + rxt(k,30) + het_rates(k,29))* y(k,29) + prod(k,120) =rxt(k,311)*y(k,204)*y(k,196) + loss(k,58) = (rxt(k,314)* y(k,218) + het_rates(k,30))* y(k,30) + prod(k,58) = 0._r8 + loss(k,94) = (rxt(k,409)* y(k,218) + rxt(k,31) + het_rates(k,31))* y(k,31) + prod(k,94) =rxt(k,407)*y(k,204)*y(k,197) + loss(k,55) = (rxt(k,201)* y(k,217) + rxt(k,78) + het_rates(k,32))* y(k,32) + prod(k,55) = 0._r8 + loss(k,67) = (rxt(k,202)* y(k,217) + rxt(k,79) + het_rates(k,33))* y(k,33) + prod(k,67) = 0._r8 + loss(k,68) = (rxt(k,228)* y(k,217) + rxt(k,80) + het_rates(k,34))* y(k,34) + prod(k,68) = 0._r8 + loss(k,59) = (rxt(k,203)* y(k,217) + rxt(k,81) + het_rates(k,35))* y(k,35) + prod(k,59) = 0._r8 + loss(k,69) = (rxt(k,204)* y(k,217) + rxt(k,82) + het_rates(k,36))* y(k,36) + prod(k,69) = 0._r8 + loss(k,60) = (rxt(k,205)* y(k,217) + rxt(k,83) + het_rates(k,37))* y(k,37) + prod(k,60) = 0._r8 + loss(k,70) = (rxt(k,206)* y(k,217) + rxt(k,84) + het_rates(k,38))* y(k,38) + prod(k,70) = 0._r8 + loss(k,61) = (rxt(k,207)* y(k,217) + rxt(k,85) + het_rates(k,39))* y(k,39) + prod(k,61) = 0._r8 + loss(k,130) = (rxt(k,239)* y(k,55) +rxt(k,251)* y(k,217) +rxt(k,240) & + * y(k,218) + rxt(k,86) + het_rates(k,40))* y(k,40) + prod(k,130) = 0._r8 + loss(k,214) = (rxt(k,212)* y(k,16) +rxt(k,176)* y(k,55) +rxt(k,257)* y(k,125) & + +rxt(k,258)* y(k,133) +rxt(k,256)* y(k,204) +rxt(k,259)* y(k,218) & + + rxt(k,32) + rxt(k,33) + het_rates(k,41))* y(k,41) + prod(k,214) = (rxt(k,183)*y(k,58) +2.000_r8*rxt(k,260)*y(k,199) + & + rxt(k,261)*y(k,199) +rxt(k,263)*y(k,123) + & + .700_r8*rxt(k,282)*y(k,195) +rxt(k,293)*y(k,198) + & + rxt(k,310)*y(k,196) +.800_r8*rxt(k,322)*y(k,221) + & + .880_r8*rxt(k,334)*y(k,210) +2.000_r8*rxt(k,343)*y(k,212) + & + 1.500_r8*rxt(k,367)*y(k,206) +.750_r8*rxt(k,372)*y(k,207) + & + .800_r8*rxt(k,381)*y(k,100) +.800_r8*rxt(k,392)*y(k,226) + & + .750_r8*rxt(k,446)*y(k,216) +.930_r8*rxt(k,451)*y(k,222) + & + .950_r8*rxt(k,456)*y(k,223))*y(k,199) & + + (.500_r8*rxt(k,299)*y(k,203) +rxt(k,320)*y(k,220) + & + rxt(k,324)*y(k,221) +.500_r8*rxt(k,330)*y(k,201) + & + .250_r8*rxt(k,337)*y(k,210) +rxt(k,346)*y(k,212) + & + .100_r8*rxt(k,359)*y(k,190) +.920_r8*rxt(k,369)*y(k,206) + & + .250_r8*rxt(k,394)*y(k,226) +.340_r8*rxt(k,453)*y(k,222) + & + .320_r8*rxt(k,458)*y(k,223))*y(k,123) + (rxt(k,264)*y(k,51) + & + .300_r8*rxt(k,265)*y(k,52) +.500_r8*rxt(k,297)*y(k,50) + & + .800_r8*rxt(k,302)*y(k,73) +rxt(k,304)*y(k,139) + & + .500_r8*rxt(k,352)*y(k,108) +.400_r8*rxt(k,357)*y(k,1) + & + .300_r8*rxt(k,377)*y(k,98) +.680_r8*rxt(k,462)*y(k,179))*y(k,218) & + + (rxt(k,280)*y(k,24) +.500_r8*rxt(k,309)*y(k,28) + & + .120_r8*rxt(k,339)*y(k,104) +.600_r8*rxt(k,353)*y(k,110) + & + .910_r8*rxt(k,386)*y(k,97) +.340_r8*rxt(k,441)*y(k,5) + & + .340_r8*rxt(k,444)*y(k,109))*y(k,134) + (.500_r8*rxt(k,328)*y(k,15) + & + .250_r8*rxt(k,336)*y(k,210) +rxt(k,347)*y(k,212) + & + rxt(k,370)*y(k,206))*y(k,125) + (.250_r8*rxt(k,333)*y(k,210) + & + rxt(k,342)*y(k,212) +rxt(k,366)*y(k,206) + & + .250_r8*rxt(k,391)*y(k,226))*y(k,198) + (.180_r8*rxt(k,39) + & + rxt(k,273)*y(k,217) +rxt(k,274)*y(k,217))*y(k,53) & + + (.150_r8*rxt(k,323)*y(k,221) +.450_r8*rxt(k,344)*y(k,212)) & + *y(k,204) +.100_r8*rxt(k,19)*y(k,1) +.100_r8*rxt(k,20)*y(k,2) & + +rxt(k,38)*y(k,52) +rxt(k,43)*y(k,73) +.330_r8*rxt(k,45)*y(k,92) & + +rxt(k,47)*y(k,94) +rxt(k,49)*y(k,102) +1.340_r8*rxt(k,50)*y(k,104) & + +rxt(k,57)*y(k,126) +rxt(k,62)*y(k,146) +rxt(k,63)*y(k,147) & + +.375_r8*rxt(k,65)*y(k,175) +.400_r8*rxt(k,67)*y(k,177) & + +.680_r8*rxt(k,69)*y(k,179) +2.000_r8*rxt(k,300)*y(k,202) & + +rxt(k,270)*y(k,205) +2.000_r8*rxt(k,345)*y(k,212)*y(k,212) + loss(k,147) = (rxt(k,241)* y(k,55) +rxt(k,252)* y(k,217) +rxt(k,242) & + * y(k,218) + rxt(k,87) + het_rates(k,42))* y(k,42) + prod(k,147) = 0._r8 + loss(k,62) = (rxt(k,243)* y(k,218) + rxt(k,88) + het_rates(k,43))* y(k,43) + prod(k,62) = 0._r8 + loss(k,191) = (rxt(k,289)* y(k,125) +rxt(k,290)* y(k,218) + rxt(k,34) & + + het_rates(k,44))* y(k,44) + prod(k,191) = (rxt(k,284)*y(k,195) +.270_r8*rxt(k,312)*y(k,196) + & + rxt(k,320)*y(k,220) +rxt(k,330)*y(k,201) +rxt(k,349)*y(k,214) + & + .400_r8*rxt(k,359)*y(k,190))*y(k,123) + (rxt(k,285)*y(k,25) + & + .500_r8*rxt(k,286)*y(k,26) +.800_r8*rxt(k,357)*y(k,1))*y(k,218) & + + (.500_r8*rxt(k,309)*y(k,28) +.100_r8*rxt(k,353)*y(k,110))*y(k,134) & + + (1.600_r8*rxt(k,281)*y(k,195) +.800_r8*rxt(k,282)*y(k,199)) & + *y(k,195) +.400_r8*rxt(k,19)*y(k,1) +.400_r8*rxt(k,20)*y(k,2) & + +rxt(k,328)*y(k,125)*y(k,15) +rxt(k,29)*y(k,26) +.330_r8*rxt(k,45) & + *y(k,92) +rxt(k,53)*y(k,107) +rxt(k,62)*y(k,146) & + +.200_r8*rxt(k,348)*y(k,214)*y(k,204) + loss(k,113) = (rxt(k,244)* y(k,55) +rxt(k,245)* y(k,218) + rxt(k,89) & + + het_rates(k,45))* y(k,45) + prod(k,113) = 0._r8 + loss(k,56) = (rxt(k,291)* y(k,218) + het_rates(k,46))* y(k,46) + prod(k,56) = 0._r8 + loss(k,181) = (rxt(k,327)* y(k,218) + rxt(k,35) + het_rates(k,47))* y(k,47) + prod(k,181) = (.820_r8*rxt(k,312)*y(k,196) +.500_r8*rxt(k,330)*y(k,201) + & + .250_r8*rxt(k,359)*y(k,190) +.270_r8*rxt(k,453)*y(k,222) + & + .040_r8*rxt(k,458)*y(k,223))*y(k,123) & + + (.820_r8*rxt(k,310)*y(k,196) +.150_r8*rxt(k,451)*y(k,222) + & + .025_r8*rxt(k,456)*y(k,223))*y(k,199) + (.250_r8*rxt(k,19) + & + .800_r8*rxt(k,357)*y(k,218))*y(k,1) + (.520_r8*rxt(k,441)*y(k,5) + & + .520_r8*rxt(k,444)*y(k,109))*y(k,134) + (.500_r8*rxt(k,69) + & + .500_r8*rxt(k,462)*y(k,218))*y(k,179) +.250_r8*rxt(k,20)*y(k,2) & + +.500_r8*rxt(k,328)*y(k,125)*y(k,15) +.820_r8*rxt(k,30)*y(k,29) & + +.170_r8*rxt(k,45)*y(k,92) +.300_r8*rxt(k,65)*y(k,175) & + +.050_r8*rxt(k,67)*y(k,177) + loss(k,201) = (rxt(k,315)* y(k,125) +rxt(k,316)* y(k,218) + rxt(k,36) & + + het_rates(k,48))* y(k,48) + prod(k,201) = (.250_r8*rxt(k,337)*y(k,210) +.050_r8*rxt(k,375)*y(k,207) + & + .250_r8*rxt(k,394)*y(k,226) +.170_r8*rxt(k,412)*y(k,200) + & + .170_r8*rxt(k,418)*y(k,213) +.400_r8*rxt(k,428)*y(k,224) + & + .540_r8*rxt(k,434)*y(k,227) +.510_r8*rxt(k,437)*y(k,229))*y(k,123) & + + (.250_r8*rxt(k,336)*y(k,210) +.050_r8*rxt(k,376)*y(k,207) + & + .250_r8*rxt(k,395)*y(k,226))*y(k,125) & + + (.500_r8*rxt(k,322)*y(k,221) +.240_r8*rxt(k,334)*y(k,210) + & + .100_r8*rxt(k,392)*y(k,226))*y(k,199) & + + (.880_r8*rxt(k,339)*y(k,104) +.500_r8*rxt(k,353)*y(k,110)) & + *y(k,134) + (.250_r8*rxt(k,333)*y(k,210) + & + .250_r8*rxt(k,391)*y(k,226))*y(k,198) & + + (.070_r8*rxt(k,411)*y(k,200) +.070_r8*rxt(k,417)*y(k,213)) & + *y(k,204) + (rxt(k,317)*y(k,94) +rxt(k,318)*y(k,126))*y(k,218) & + +.180_r8*rxt(k,23)*y(k,9) +rxt(k,27)*y(k,13) +.400_r8*rxt(k,70) & + *y(k,180) +.540_r8*rxt(k,72)*y(k,184) +.510_r8*rxt(k,73)*y(k,186) + loss(k,157) = (rxt(k,296)* y(k,218) + het_rates(k,49))* y(k,49) + prod(k,157) = (.100_r8*rxt(k,293)*y(k,199) +.150_r8*rxt(k,294)*y(k,204)) & + *y(k,198) +.120_r8*rxt(k,309)*y(k,134)*y(k,28) & + +.150_r8*rxt(k,344)*y(k,212)*y(k,204) + loss(k,149) = (rxt(k,297)* y(k,218) + rxt(k,37) + het_rates(k,50))* y(k,50) + prod(k,149) = (.360_r8*rxt(k,294)*y(k,198) +.400_r8*rxt(k,344)*y(k,212)) & + *y(k,204) + loss(k,168) = (rxt(k,264)* y(k,218) + het_rates(k,51))* y(k,51) + prod(k,168) = (rxt(k,261)*y(k,199) +.300_r8*rxt(k,282)*y(k,195) + & + .500_r8*rxt(k,322)*y(k,221) +.250_r8*rxt(k,334)*y(k,210) + & + .250_r8*rxt(k,367)*y(k,206) +.250_r8*rxt(k,372)*y(k,207) + & + .200_r8*rxt(k,381)*y(k,100) +.300_r8*rxt(k,392)*y(k,226) + & + .250_r8*rxt(k,446)*y(k,216) +.250_r8*rxt(k,451)*y(k,222) + & + .250_r8*rxt(k,456)*y(k,223))*y(k,199) + loss(k,127) = (rxt(k,265)* y(k,218) + rxt(k,38) + het_rates(k,52))* y(k,52) + prod(k,127) =rxt(k,262)*y(k,204)*y(k,199) + loss(k,211) = (rxt(k,177)* y(k,55) +rxt(k,233)* y(k,72) + (rxt(k,272) + & + rxt(k,273) +rxt(k,274))* y(k,217) +rxt(k,266)* y(k,218) + rxt(k,39) & + + rxt(k,40) + het_rates(k,53))* y(k,53) + prod(k,211) =.100_r8*rxt(k,309)*y(k,134)*y(k,28) + loss(k,116) = (rxt(k,246)* y(k,55) +rxt(k,229)* y(k,217) +rxt(k,247) & + * y(k,218) + rxt(k,90) + het_rates(k,54))* y(k,54) + prod(k,116) = 0._r8 + loss(k,222) = (rxt(k,287)* y(k,27) +rxt(k,239)* y(k,40) +rxt(k,176)* y(k,41) & + +rxt(k,241)* y(k,42) +rxt(k,244)* y(k,45) +rxt(k,177)* y(k,53) & + +rxt(k,246)* y(k,54) +rxt(k,189)* y(k,59) +rxt(k,178)* y(k,76) & + +rxt(k,179)* y(k,78) +rxt(k,198)* y(k,91) +rxt(k,182)* y(k,134) & + + (rxt(k,180) +rxt(k,181))* y(k,204) + het_rates(k,55))* y(k,55) + prod(k,222) = (4.000_r8*rxt(k,201)*y(k,32) +rxt(k,202)*y(k,33) + & + 2.000_r8*rxt(k,203)*y(k,35) +2.000_r8*rxt(k,204)*y(k,36) + & + 2.000_r8*rxt(k,205)*y(k,37) +rxt(k,206)*y(k,38) + & + 2.000_r8*rxt(k,207)*y(k,39) +rxt(k,208)*y(k,84) +rxt(k,238)*y(k,64) + & + rxt(k,253)*y(k,81) +rxt(k,254)*y(k,82) +rxt(k,255)*y(k,83))*y(k,217) & + + (rxt(k,93) +rxt(k,183)*y(k,199) +2.000_r8*rxt(k,184)*y(k,58) + & + rxt(k,186)*y(k,58) +rxt(k,188)*y(k,123) +rxt(k,193)*y(k,133) + & + rxt(k,194)*y(k,218) +rxt(k,217)*y(k,18) +rxt(k,471)*y(k,150))*y(k,58) & + + (rxt(k,197)*y(k,84) +3.000_r8*rxt(k,243)*y(k,43) + & + rxt(k,245)*y(k,45) +rxt(k,248)*y(k,81) +rxt(k,249)*y(k,82) + & + rxt(k,250)*y(k,83))*y(k,218) + (rxt(k,103) +rxt(k,196)*y(k,133)) & + *y(k,84) +rxt(k,74)*y(k,17) +4.000_r8*rxt(k,78)*y(k,32) +rxt(k,79) & + *y(k,33) +2.000_r8*rxt(k,81)*y(k,35) +2.000_r8*rxt(k,82)*y(k,36) & + +2.000_r8*rxt(k,83)*y(k,37) +rxt(k,84)*y(k,38) +2.000_r8*rxt(k,85) & + *y(k,39) +3.000_r8*rxt(k,88)*y(k,43) +rxt(k,89)*y(k,45) & + +2.000_r8*rxt(k,91)*y(k,56) +2.000_r8*rxt(k,92)*y(k,57) +rxt(k,94) & + *y(k,59) +rxt(k,97)*y(k,64) +rxt(k,100)*y(k,81) +rxt(k,101)*y(k,82) & + +rxt(k,102)*y(k,83) +rxt(k,106)*y(k,91) + loss(k,74) = ( + rxt(k,91) + het_rates(k,56))* y(k,56) + prod(k,74) = (rxt(k,524)*y(k,91) +rxt(k,529)*y(k,59) +rxt(k,530)*y(k,91) + & + rxt(k,534)*y(k,59) +rxt(k,535)*y(k,91) +rxt(k,539)*y(k,59))*y(k,84) & + +rxt(k,189)*y(k,59)*y(k,55) +rxt(k,185)*y(k,58)*y(k,58) + loss(k,53) = ( + rxt(k,92) + rxt(k,211) + het_rates(k,57))* y(k,57) + prod(k,53) =rxt(k,210)*y(k,58)*y(k,58) + loss(k,217) = ((rxt(k,216) +rxt(k,217) +rxt(k,218))* y(k,18) & + + 2._r8*(rxt(k,184) +rxt(k,185) +rxt(k,186) +rxt(k,210))* y(k,58) & + +rxt(k,188)* y(k,123) +rxt(k,190)* y(k,124) +rxt(k,193)* y(k,133) & + +rxt(k,471)* y(k,150) +rxt(k,183)* y(k,199) +rxt(k,187)* y(k,204) & + + (rxt(k,194) +rxt(k,195))* y(k,218) + rxt(k,93) + het_rates(k,58)) & + * y(k,58) + prod(k,217) = (rxt(k,181)*y(k,204) +rxt(k,182)*y(k,134) +rxt(k,198)*y(k,91)) & + *y(k,55) + (rxt(k,95) +rxt(k,191)*y(k,133))*y(k,59) & + + (rxt(k,199)*y(k,133) +rxt(k,200)*y(k,218))*y(k,91) + (rxt(k,107) + & + rxt(k,476)*y(k,150))*y(k,136) +2.000_r8*rxt(k,211)*y(k,57) & + +rxt(k,209)*y(k,217)*y(k,84) + loss(k,179) = (rxt(k,189)* y(k,55) + (rxt(k,529) +rxt(k,534) +rxt(k,539)) & + * y(k,84) +rxt(k,191)* y(k,133) +rxt(k,192)* y(k,218) + rxt(k,94) & + + rxt(k,95) + rxt(k,527) + rxt(k,532) + rxt(k,538) & + + het_rates(k,59))* y(k,59) + prod(k,179) =rxt(k,190)*y(k,124)*y(k,58) + loss(k,4) = ( + het_rates(k,60))* y(k,60) + prod(k,4) = 0._r8 + loss(k,194) = (rxt(k,276)* y(k,218) + het_rates(k,61))* y(k,61) + prod(k,194) = (rxt(k,32) +rxt(k,33) +rxt(k,176)*y(k,55) +rxt(k,212)*y(k,16) + & + rxt(k,257)*y(k,125) +rxt(k,258)*y(k,133) +rxt(k,259)*y(k,218)) & + *y(k,41) + (.630_r8*rxt(k,280)*y(k,24) +.560_r8*rxt(k,309)*y(k,28) + & + .650_r8*rxt(k,339)*y(k,104) +.560_r8*rxt(k,353)*y(k,110) + & + .620_r8*rxt(k,386)*y(k,97) +.230_r8*rxt(k,441)*y(k,5) + & + .230_r8*rxt(k,444)*y(k,109))*y(k,134) & + + (.220_r8*rxt(k,337)*y(k,210) +.250_r8*rxt(k,394)*y(k,226) + & + .170_r8*rxt(k,412)*y(k,200) +.400_r8*rxt(k,415)*y(k,211) + & + .350_r8*rxt(k,418)*y(k,213) +.225_r8*rxt(k,453)*y(k,222))*y(k,123) & + + (.350_r8*rxt(k,278)*y(k,23) +rxt(k,303)*y(k,74) + & + rxt(k,316)*y(k,48) +.700_r8*rxt(k,462)*y(k,179) +rxt(k,466)*y(k,137)) & + *y(k,218) + (rxt(k,315)*y(k,48) +.220_r8*rxt(k,336)*y(k,210) + & + .500_r8*rxt(k,395)*y(k,226))*y(k,125) & + + (.110_r8*rxt(k,334)*y(k,210) +.200_r8*rxt(k,392)*y(k,226) + & + .125_r8*rxt(k,451)*y(k,222))*y(k,199) & + + (.070_r8*rxt(k,411)*y(k,200) +.160_r8*rxt(k,414)*y(k,211) + & + .140_r8*rxt(k,417)*y(k,213))*y(k,204) + (rxt(k,110) + & + rxt(k,465)*y(k,133))*y(k,137) + (.220_r8*rxt(k,333)*y(k,210) + & + .250_r8*rxt(k,391)*y(k,226))*y(k,198) +1.500_r8*rxt(k,22)*y(k,8) & + +.450_r8*rxt(k,23)*y(k,9) +.600_r8*rxt(k,26)*y(k,12) +rxt(k,27) & + *y(k,13) +rxt(k,34)*y(k,44) +rxt(k,244)*y(k,55)*y(k,45) +rxt(k,36) & + *y(k,48) +.380_r8*rxt(k,39)*y(k,53) +rxt(k,41)*y(k,62) +rxt(k,43) & + *y(k,73) +2.000_r8*rxt(k,44)*y(k,74) +.330_r8*rxt(k,45)*y(k,92) & + +1.340_r8*rxt(k,51)*y(k,104) +.700_r8*rxt(k,55)*y(k,110) & + +1.500_r8*rxt(k,64)*y(k,174) +.250_r8*rxt(k,65)*y(k,175) +rxt(k,68) & + *y(k,178) +1.700_r8*rxt(k,69)*y(k,179) + loss(k,169) = ( + rxt(k,41) + het_rates(k,62))* y(k,62) + prod(k,169) = (rxt(k,268)*y(k,86) +rxt(k,276)*y(k,61) +rxt(k,296)*y(k,49) + & + .500_r8*rxt(k,297)*y(k,50) +.800_r8*rxt(k,302)*y(k,73) + & + rxt(k,303)*y(k,74) +.500_r8*rxt(k,352)*y(k,108) + & + 1.800_r8*rxt(k,462)*y(k,179))*y(k,218) & + + (2.000_r8*rxt(k,292)*y(k,198) +.900_r8*rxt(k,293)*y(k,199) + & + .490_r8*rxt(k,294)*y(k,204) +rxt(k,295)*y(k,123) + & + 2.000_r8*rxt(k,342)*y(k,212) +rxt(k,366)*y(k,206) + & + rxt(k,391)*y(k,226))*y(k,198) + (.200_r8*rxt(k,309)*y(k,28) + & + .100_r8*rxt(k,353)*y(k,110) +.270_r8*rxt(k,441)*y(k,5) + & + .270_r8*rxt(k,444)*y(k,109))*y(k,134) + (rxt(k,343)*y(k,199) + & + .450_r8*rxt(k,344)*y(k,204) +2.000_r8*rxt(k,345)*y(k,212))*y(k,212) & + + (.500_r8*rxt(k,451)*y(k,199) +.900_r8*rxt(k,453)*y(k,123)) & + *y(k,222) +rxt(k,37)*y(k,50) +.440_r8*rxt(k,39)*y(k,53) & + +.400_r8*rxt(k,60)*y(k,139) +rxt(k,65)*y(k,175) +.800_r8*rxt(k,69) & + *y(k,179) + loss(k,88) = (rxt(k,237)* y(k,217) + rxt(k,96) + het_rates(k,63))* y(k,63) + prod(k,88) = (rxt(k,202)*y(k,33) +rxt(k,204)*y(k,36) + & + 2.000_r8*rxt(k,205)*y(k,37) +2.000_r8*rxt(k,206)*y(k,38) + & + rxt(k,207)*y(k,39) +rxt(k,228)*y(k,34) +2.000_r8*rxt(k,230)*y(k,77) + & + rxt(k,254)*y(k,82) +rxt(k,255)*y(k,83))*y(k,217) + (rxt(k,101) + & + rxt(k,249)*y(k,218))*y(k,82) + (rxt(k,102) +rxt(k,250)*y(k,218)) & + *y(k,83) +rxt(k,79)*y(k,33) +rxt(k,80)*y(k,34) +rxt(k,82)*y(k,36) & + +2.000_r8*rxt(k,83)*y(k,37) +2.000_r8*rxt(k,84)*y(k,38) +rxt(k,85) & + *y(k,39) +2.000_r8*rxt(k,98)*y(k,77) + loss(k,90) = (rxt(k,238)* y(k,217) + rxt(k,97) + het_rates(k,64))* y(k,64) + prod(k,90) = (rxt(k,100) +rxt(k,248)*y(k,218) +rxt(k,253)*y(k,217))*y(k,81) & + + (rxt(k,81) +rxt(k,203)*y(k,217))*y(k,35) + (rxt(k,82) + & + rxt(k,204)*y(k,217))*y(k,36) + loss(k,78) = (rxt(k,410)* y(k,218) + het_rates(k,65))* y(k,65) + prod(k,78) =.180_r8*rxt(k,430)*y(k,218)*y(k,181) + loss(k,98) = (rxt(k,463)* y(k,125) + (rxt(k,464) +rxt(k,478))* y(k,218) & + + het_rates(k,66))* y(k,66) + prod(k,98) = 0._r8 + loss(k,5) = ( + het_rates(k,67))* y(k,67) + prod(k,5) = 0._r8 + loss(k,6) = ( + het_rates(k,68))* y(k,68) + prod(k,6) = 0._r8 + loss(k,7) = ( + het_rates(k,69))* y(k,69) + prod(k,7) = 0._r8 + loss(k,8) = ( + rxt(k,124) + het_rates(k,70))* y(k,70) + prod(k,8) = 0._r8 + loss(k,63) = ( + rxt(k,42) + het_rates(k,71))* y(k,71) + prod(k,63) =rxt(k,298)*y(k,204)*y(k,203) + loss(k,176) = (rxt(k,233)* y(k,53) +rxt(k,234)* y(k,76) +rxt(k,236)* y(k,88) & + +rxt(k,235)* y(k,230) + het_rates(k,72))* y(k,72) + prod(k,176) = (rxt(k,206)*y(k,38) +rxt(k,228)*y(k,34) + & + 2.000_r8*rxt(k,237)*y(k,63) +rxt(k,238)*y(k,64))*y(k,217) +rxt(k,80) & + *y(k,34) +rxt(k,84)*y(k,38) +2.000_r8*rxt(k,96)*y(k,63) +rxt(k,97) & + *y(k,64) +rxt(k,104)*y(k,87) + loss(k,192) = (rxt(k,302)* y(k,218) + rxt(k,43) + het_rates(k,73))* y(k,73) + prod(k,192) = (.530_r8*rxt(k,337)*y(k,210) +.050_r8*rxt(k,375)*y(k,207) + & + .250_r8*rxt(k,394)*y(k,226) +.225_r8*rxt(k,453)*y(k,222))*y(k,123) & + + (.530_r8*rxt(k,336)*y(k,210) +.050_r8*rxt(k,376)*y(k,207) + & + .250_r8*rxt(k,395)*y(k,226))*y(k,125) & + + (.260_r8*rxt(k,334)*y(k,210) +.100_r8*rxt(k,392)*y(k,226) + & + .125_r8*rxt(k,451)*y(k,222))*y(k,199) + (.700_r8*rxt(k,377)*y(k,98) + & + .500_r8*rxt(k,378)*y(k,99) +rxt(k,389)*y(k,114))*y(k,218) & + + (.530_r8*rxt(k,333)*y(k,210) +.250_r8*rxt(k,391)*y(k,226)) & + *y(k,198) +.330_r8*rxt(k,45)*y(k,92) +.250_r8*rxt(k,65)*y(k,175) & + +rxt(k,301)*y(k,202) + loss(k,185) = (rxt(k,303)* y(k,218) + rxt(k,44) + rxt(k,519) & + + het_rates(k,74))* y(k,74) + prod(k,185) = (.050_r8*rxt(k,375)*y(k,207) +.250_r8*rxt(k,394)*y(k,226) + & + rxt(k,401)*y(k,192) +.400_r8*rxt(k,415)*y(k,211) + & + .170_r8*rxt(k,418)*y(k,213) +.700_r8*rxt(k,421)*y(k,219) + & + .600_r8*rxt(k,428)*y(k,224) +.340_r8*rxt(k,434)*y(k,227) + & + .170_r8*rxt(k,437)*y(k,229))*y(k,123) + (.650_r8*rxt(k,278)*y(k,23) + & + .200_r8*rxt(k,302)*y(k,73) +rxt(k,390)*y(k,115))*y(k,218) & + + (.250_r8*rxt(k,391)*y(k,198) +.100_r8*rxt(k,392)*y(k,199) + & + .250_r8*rxt(k,395)*y(k,125))*y(k,226) & + + (.160_r8*rxt(k,414)*y(k,211) +.070_r8*rxt(k,417)*y(k,213)) & + *y(k,204) +rxt(k,21)*y(k,7) +.130_r8*rxt(k,23)*y(k,9) & + +.050_r8*rxt(k,376)*y(k,207)*y(k,125) +.700_r8*rxt(k,61)*y(k,143) & + +.600_r8*rxt(k,70)*y(k,180) +.340_r8*rxt(k,72)*y(k,184) & + +.170_r8*rxt(k,73)*y(k,186) + loss(k,212) = (rxt(k,142)* y(k,134) + (rxt(k,136) +rxt(k,137) +rxt(k,138)) & + * y(k,204) + rxt(k,139) + het_rates(k,75))* y(k,75) + prod(k,212) = (rxt(k,143)*y(k,76) +rxt(k,146)*y(k,133) +rxt(k,164)*y(k,111) + & + rxt(k,259)*y(k,41) +rxt(k,466)*y(k,137) +rxt(k,472)*y(k,148) + & + rxt(k,477)*y(k,150))*y(k,218) + (rxt(k,125)*y(k,217) + & + rxt(k,134)*y(k,133) +rxt(k,178)*y(k,55) +rxt(k,234)*y(k,72))*y(k,76) & + + (.330_r8*rxt(k,39) +rxt(k,40) +rxt(k,273)*y(k,217))*y(k,53) & + + (rxt(k,99) +rxt(k,232)*y(k,217))*y(k,80) + (rxt(k,103) + & + rxt(k,209)*y(k,217))*y(k,84) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,230) & + +2.000_r8*rxt(k,33)*y(k,41) +rxt(k,38)*y(k,52) +rxt(k,104)*y(k,87) + loss(k,209) = (rxt(k,178)* y(k,55) +rxt(k,234)* y(k,72) +rxt(k,134)* y(k,133) & + +rxt(k,125)* y(k,217) +rxt(k,143)* y(k,218) + het_rates(k,76)) & + * y(k,76) + prod(k,209) = (1.440_r8*rxt(k,39) +rxt(k,274)*y(k,217))*y(k,53) +rxt(k,32) & + *y(k,41) +rxt(k,136)*y(k,204)*y(k,75) +rxt(k,1)*y(k,230) + loss(k,57) = (rxt(k,230)* y(k,217) + rxt(k,98) + het_rates(k,77))* y(k,77) + prod(k,57) = 0._r8 + loss(k,148) = (rxt(k,179)* y(k,55) +rxt(k,135)* y(k,133) +rxt(k,144) & + * y(k,218) + rxt(k,4) + het_rates(k,78))* y(k,78) + prod(k,148) =rxt(k,150)*y(k,204)*y(k,204) +rxt(k,149)*y(k,218)*y(k,218) + loss(k,64) = ( + rxt(k,109) + het_rates(k,79))* y(k,79) + prod(k,64) =rxt(k,479)*y(k,230)*y(k,152) + loss(k,170) = (rxt(k,225)* y(k,133) + (rxt(k,231) +rxt(k,232))* y(k,217) & + +rxt(k,226)* y(k,218) + rxt(k,99) + het_rates(k,80))* y(k,80) + prod(k,170) = (rxt(k,212)*y(k,41) +rxt(k,213)*y(k,204))*y(k,16) + loss(k,89) = (rxt(k,253)* y(k,217) +rxt(k,248)* y(k,218) + rxt(k,100) & + + het_rates(k,81))* y(k,81) + prod(k,89) = 0._r8 + loss(k,91) = (rxt(k,254)* y(k,217) +rxt(k,249)* y(k,218) + rxt(k,101) & + + het_rates(k,82))* y(k,82) + prod(k,91) = 0._r8 + loss(k,101) = (rxt(k,255)* y(k,217) +rxt(k,250)* y(k,218) + rxt(k,102) & + + het_rates(k,83))* y(k,83) + prod(k,101) = 0._r8 + loss(k,224) = ((rxt(k,529) +rxt(k,534) +rxt(k,539))* y(k,59) + (rxt(k,531) + & + rxt(k,536))* y(k,90) + (rxt(k,524) +rxt(k,530) +rxt(k,535))* y(k,91) & + +rxt(k,196)* y(k,133) + (rxt(k,208) +rxt(k,209))* y(k,217) & + +rxt(k,197)* y(k,218) + rxt(k,103) + het_rates(k,84))* y(k,84) + prod(k,224) = (rxt(k,176)*y(k,41) +rxt(k,177)*y(k,53) +rxt(k,178)*y(k,76) + & + rxt(k,179)*y(k,78) +rxt(k,180)*y(k,204) +rxt(k,198)*y(k,91) + & + rxt(k,239)*y(k,40) +rxt(k,241)*y(k,42) +2.000_r8*rxt(k,244)*y(k,45) + & + rxt(k,246)*y(k,54) +rxt(k,287)*y(k,27))*y(k,55) +rxt(k,195)*y(k,218) & + *y(k,58) + loss(k,75) = (rxt(k,275)* y(k,217) +rxt(k,267)* y(k,218) + het_rates(k,85)) & + * y(k,85) + prod(k,75) = 0._r8 + loss(k,182) = (rxt(k,268)* y(k,218) + het_rates(k,86))* y(k,86) + prod(k,182) = (.370_r8*rxt(k,280)*y(k,24) +.120_r8*rxt(k,309)*y(k,28) + & + .330_r8*rxt(k,339)*y(k,104) +.120_r8*rxt(k,353)*y(k,110) + & + .110_r8*rxt(k,386)*y(k,97) +.050_r8*rxt(k,441)*y(k,5) + & + .050_r8*rxt(k,444)*y(k,109))*y(k,134) + (rxt(k,269)*y(k,204) + & + rxt(k,271)*y(k,123))*y(k,205) +.350_r8*rxt(k,278)*y(k,218)*y(k,23) + loss(k,99) = ( + rxt(k,104) + het_rates(k,87))* y(k,87) + prod(k,99) = (rxt(k,233)*y(k,53) +rxt(k,234)*y(k,76) +rxt(k,235)*y(k,230) + & + rxt(k,236)*y(k,88))*y(k,72) + loss(k,213) = (rxt(k,236)* y(k,72) +rxt(k,173)* y(k,218) + rxt(k,9) & + + het_rates(k,88))* y(k,88) + prod(k,213) = (rxt(k,527) +rxt(k,532) +rxt(k,538) +rxt(k,529)*y(k,84) + & + rxt(k,534)*y(k,84) +rxt(k,539)*y(k,84))*y(k,59) + (rxt(k,490) + & + rxt(k,257)*y(k,41) +rxt(k,289)*y(k,44) +rxt(k,315)*y(k,48) + & + rxt(k,463)*y(k,66))*y(k,125) + (2.000_r8*rxt(k,485) + & + 2.000_r8*rxt(k,523) +2.000_r8*rxt(k,526) +2.000_r8*rxt(k,537)) & + *y(k,113) + (rxt(k,525) +rxt(k,528) +rxt(k,533))*y(k,19) & + + (.500_r8*rxt(k,489) +rxt(k,172)*y(k,218))*y(k,124) +rxt(k,482) & + *y(k,92) +rxt(k,483)*y(k,98) +rxt(k,484)*y(k,99) +rxt(k,486)*y(k,114) & + +rxt(k,487)*y(k,115) +rxt(k,491)*y(k,127) +rxt(k,492)*y(k,138) & + +rxt(k,493)*y(k,176) + loss(k,122) = (rxt(k,151)* y(k,218) + rxt(k,10) + rxt(k,11) + rxt(k,174) & + + het_rates(k,89))* y(k,89) + prod(k,122) =rxt(k,170)*y(k,204)*y(k,124) + loss(k,166) = ((rxt(k,531) +rxt(k,536))* y(k,84) +rxt(k,227)* y(k,133) & + + rxt(k,105) + het_rates(k,90))* y(k,90) + prod(k,166) = (rxt(k,525) +rxt(k,528) +rxt(k,533))*y(k,19) & + +rxt(k,219)*y(k,204)*y(k,18) + loss(k,171) = (rxt(k,198)* y(k,55) + (rxt(k,524) +rxt(k,530) +rxt(k,535)) & + * y(k,84) +rxt(k,199)* y(k,133) +rxt(k,200)* y(k,218) + rxt(k,106) & + + het_rates(k,91))* y(k,91) + prod(k,171) = (rxt(k,527) +rxt(k,532) +rxt(k,538) +rxt(k,192)*y(k,218)) & + *y(k,59) +rxt(k,187)*y(k,204)*y(k,58) + loss(k,197) = (rxt(k,332)* y(k,218) + rxt(k,45) + rxt(k,482) & + + het_rates(k,92))* y(k,92) + prod(k,197) = (rxt(k,331)*y(k,201) +rxt(k,338)*y(k,210))*y(k,123) & + + (.300_r8*rxt(k,377)*y(k,98) +.500_r8*rxt(k,378)*y(k,99))*y(k,218) + loss(k,83) = (rxt(k,363)* y(k,218) + rxt(k,46) + het_rates(k,93))* y(k,93) + prod(k,83) =rxt(k,374)*y(k,207) + loss(k,196) = (rxt(k,317)* y(k,218) + rxt(k,47) + het_rates(k,94))* y(k,94) + prod(k,196) = (.220_r8*rxt(k,333)*y(k,198) +.230_r8*rxt(k,334)*y(k,199) + & + .220_r8*rxt(k,336)*y(k,125) +.220_r8*rxt(k,337)*y(k,123))*y(k,210) & + + (.500_r8*rxt(k,321)*y(k,146) +.500_r8*rxt(k,352)*y(k,108) + & + .700_r8*rxt(k,377)*y(k,98) +.500_r8*rxt(k,378)*y(k,99))*y(k,218) & + + (.250_r8*rxt(k,391)*y(k,198) +.100_r8*rxt(k,392)*y(k,199) + & + .250_r8*rxt(k,394)*y(k,123) +.250_r8*rxt(k,395)*y(k,125))*y(k,226) & + + (.050_r8*rxt(k,375)*y(k,123) +.050_r8*rxt(k,376)*y(k,125)) & + *y(k,207) +.170_r8*rxt(k,45)*y(k,92) +.200_r8*rxt(k,322)*y(k,221) & + *y(k,199) + loss(k,110) = (rxt(k,364)* y(k,218) + het_rates(k,95))* y(k,95) + prod(k,110) = (rxt(k,371)*y(k,198) +.750_r8*rxt(k,372)*y(k,199) + & + .870_r8*rxt(k,375)*y(k,123) +.950_r8*rxt(k,376)*y(k,125))*y(k,207) + loss(k,65) = (rxt(k,365)* y(k,218) + het_rates(k,96))* y(k,96) + prod(k,65) =.600_r8*rxt(k,388)*y(k,218)*y(k,102) + loss(k,173) = (rxt(k,379)* y(k,125) +rxt(k,386)* y(k,134) +rxt(k,387) & + * y(k,218) + het_rates(k,97))* y(k,97) + prod(k,173) = 0._r8 + loss(k,145) = (rxt(k,377)* y(k,218) + rxt(k,483) + het_rates(k,98))* y(k,98) + prod(k,145) =.080_r8*rxt(k,369)*y(k,206)*y(k,123) + loss(k,139) = (rxt(k,378)* y(k,218) + rxt(k,484) + het_rates(k,99))* y(k,99) + prod(k,139) =.080_r8*rxt(k,375)*y(k,207)*y(k,123) + loss(k,199) = (rxt(k,383)* y(k,123) +rxt(k,384)* y(k,125) +rxt(k,380) & + * y(k,198) +rxt(k,381)* y(k,199) +rxt(k,382)* y(k,204) & + + het_rates(k,100))* y(k,100) + prod(k,199) =rxt(k,379)*y(k,125)*y(k,97) + loss(k,119) = (rxt(k,385)* y(k,218) + rxt(k,48) + het_rates(k,101))* y(k,101) + prod(k,119) =rxt(k,382)*y(k,204)*y(k,100) + loss(k,162) = (rxt(k,388)* y(k,218) + rxt(k,49) + het_rates(k,102))* y(k,102) + prod(k,162) = (rxt(k,368)*y(k,206) +rxt(k,373)*y(k,207))*y(k,204) +rxt(k,48) & + *y(k,101) + loss(k,49) = (rxt(k,509)* y(k,218) + het_rates(k,103))* y(k,103) + prod(k,49) = 0._r8 + loss(k,200) = (rxt(k,339)* y(k,134) +rxt(k,340)* y(k,218) + rxt(k,50) & + + rxt(k,51) + het_rates(k,104))* y(k,104) + prod(k,200) = (.390_r8*rxt(k,366)*y(k,198) +.310_r8*rxt(k,367)*y(k,199) + & + .360_r8*rxt(k,369)*y(k,123) +.400_r8*rxt(k,370)*y(k,125))*y(k,206) & + +.300_r8*rxt(k,386)*y(k,134)*y(k,97) +.300_r8*rxt(k,49)*y(k,102) + loss(k,103) = (rxt(k,341)* y(k,218) + het_rates(k,105))* y(k,105) + prod(k,103) =rxt(k,335)*y(k,210)*y(k,204) + loss(k,135) = (rxt(k,350)* y(k,218) + rxt(k,52) + het_rates(k,106))* y(k,106) + prod(k,135) =.800_r8*rxt(k,19)*y(k,1) +.800_r8*rxt(k,20)*y(k,2) & + +.800_r8*rxt(k,359)*y(k,190)*y(k,123) + loss(k,104) = (rxt(k,351)* y(k,218) + rxt(k,53) + het_rates(k,107))* y(k,107) + prod(k,104) =.800_r8*rxt(k,348)*y(k,214)*y(k,204) + loss(k,144) = (rxt(k,352)* y(k,218) + rxt(k,54) + rxt(k,356) & + + het_rates(k,108))* y(k,108) + prod(k,144) =rxt(k,355)*y(k,212)*y(k,124) + loss(k,183) = (rxt(k,443)* y(k,125) +rxt(k,444)* y(k,134) +rxt(k,445) & + * y(k,218) + het_rates(k,109))* y(k,109) + prod(k,183) = 0._r8 + loss(k,206) = (rxt(k,353)* y(k,134) +rxt(k,354)* y(k,218) + rxt(k,55) & + + het_rates(k,110))* y(k,110) + prod(k,206) = (.610_r8*rxt(k,366)*y(k,198) +.440_r8*rxt(k,367)*y(k,199) + & + .560_r8*rxt(k,369)*y(k,123) +.600_r8*rxt(k,370)*y(k,125))*y(k,206) & + +.200_r8*rxt(k,386)*y(k,134)*y(k,97) +.700_r8*rxt(k,49)*y(k,102) + loss(k,133) = (rxt(k,152)* y(k,123) + (rxt(k,153) +rxt(k,154) +rxt(k,155)) & + * y(k,124) +rxt(k,164)* y(k,218) + rxt(k,156) + het_rates(k,111)) & + * y(k,111) + prod(k,133) =rxt(k,15)*y(k,123) + loss(k,76) = ((rxt(k,168) +rxt(k,169))* y(k,217) + rxt(k,12) & + + het_rates(k,112))* y(k,112) + prod(k,76) =rxt(k,153)*y(k,124)*y(k,111) + loss(k,96) = ( + rxt(k,13) + rxt(k,14) + rxt(k,175) + rxt(k,485) + rxt(k,523) & + + rxt(k,526) + rxt(k,537) + het_rates(k,113))* y(k,113) + prod(k,96) =rxt(k,171)*y(k,125)*y(k,124) + loss(k,114) = (rxt(k,389)* y(k,218) + rxt(k,486) + het_rates(k,114)) & + * y(k,114) + prod(k,114) =.200_r8*rxt(k,381)*y(k,199)*y(k,100) + loss(k,190) = (rxt(k,390)* y(k,218) + rxt(k,56) + rxt(k,487) & + + het_rates(k,115))* y(k,115) + prod(k,190) = (rxt(k,380)*y(k,198) +.800_r8*rxt(k,381)*y(k,199) + & + rxt(k,383)*y(k,123) +rxt(k,384)*y(k,125))*y(k,100) + loss(k,9) = ( + het_rates(k,116))* y(k,116) + prod(k,9) = 0._r8 + loss(k,10) = ( + het_rates(k,117))* y(k,117) + prod(k,10) = 0._r8 + loss(k,11) = ( + het_rates(k,118))* y(k,118) + prod(k,11) = 0._r8 + loss(k,54) = (rxt(k,480)* y(k,218) + het_rates(k,119))* y(k,119) + prod(k,54) = 0._r8 + loss(k,12) = ( + rxt(k,488) + het_rates(k,120))* y(k,120) + prod(k,12) = 0._r8 + loss(k,13) = ( + rxt(k,541) + het_rates(k,121))* y(k,121) + prod(k,13) = 0._r8 + loss(k,14) = ( + rxt(k,540) + het_rates(k,122))* y(k,122) + prod(k,14) = 0._r8 + loss(k,220) = (rxt(k,220)* y(k,18) +rxt(k,188)* y(k,58) +rxt(k,383)* y(k,100) & + +rxt(k,152)* y(k,111) +rxt(k,161)* y(k,125) +rxt(k,167)* y(k,133) & + +rxt(k,166)* y(k,134) +rxt(k,398)* y(k,189) + (rxt(k,359) + & + rxt(k,360))* y(k,190) +rxt(k,401)* y(k,192) +rxt(k,406)* y(k,194) & + +rxt(k,284)* y(k,195) +rxt(k,312)* y(k,196) +rxt(k,408)* y(k,197) & + +rxt(k,295)* y(k,198) +rxt(k,263)* y(k,199) +rxt(k,412)* y(k,200) & + + (rxt(k,330) +rxt(k,331))* y(k,201) +rxt(k,299)* y(k,203) & + +rxt(k,165)* y(k,204) +rxt(k,271)* y(k,205) +rxt(k,369)* y(k,206) & + +rxt(k,375)* y(k,207) + (rxt(k,337) +rxt(k,338))* y(k,210) & + +rxt(k,415)* y(k,211) +rxt(k,346)* y(k,212) +rxt(k,418)* y(k,213) & + +rxt(k,349)* y(k,214) +rxt(k,448)* y(k,216) +rxt(k,421)* y(k,219) & + +rxt(k,320)* y(k,220) +rxt(k,324)* y(k,221) +rxt(k,453)* y(k,222) & + +rxt(k,458)* y(k,223) +rxt(k,428)* y(k,224) +rxt(k,394)* y(k,226) & + +rxt(k,434)* y(k,227) +rxt(k,437)* y(k,229) + rxt(k,15) & + + het_rates(k,123))* y(k,123) + prod(k,220) = (rxt(k,16) +.500_r8*rxt(k,489) +2.000_r8*rxt(k,154)*y(k,111) + & + rxt(k,157)*y(k,133) +rxt(k,473)*y(k,150))*y(k,124) + (rxt(k,156) + & + rxt(k,164)*y(k,218))*y(k,111) +2.000_r8*rxt(k,168)*y(k,217)*y(k,112) & + +rxt(k,14)*y(k,113) +rxt(k,17)*y(k,125) + loss(k,221) = (rxt(k,221)* y(k,18) +rxt(k,190)* y(k,58) + (rxt(k,153) + & + rxt(k,154) +rxt(k,155))* y(k,111) +rxt(k,171)* y(k,125) & + + (rxt(k,157) +rxt(k,159))* y(k,133) +rxt(k,158)* y(k,134) & + +rxt(k,423)* y(k,141) +rxt(k,473)* y(k,150) +rxt(k,426)* y(k,189) & + +rxt(k,306)* y(k,198) +rxt(k,413)* y(k,200) +rxt(k,170)* y(k,204) & + +rxt(k,416)* y(k,211) +rxt(k,355)* y(k,212) +rxt(k,419)* y(k,213) & + +rxt(k,172)* y(k,218) + rxt(k,16) + rxt(k,489) + het_rates(k,124)) & + * y(k,124) + prod(k,221) = (2.000_r8*rxt(k,161)*y(k,125) +rxt(k,165)*y(k,204) + & + rxt(k,166)*y(k,134) +rxt(k,167)*y(k,133) +rxt(k,188)*y(k,58) + & + rxt(k,220)*y(k,18) +rxt(k,263)*y(k,199) +rxt(k,271)*y(k,205) + & + rxt(k,284)*y(k,195) +rxt(k,295)*y(k,198) +rxt(k,299)*y(k,203) + & + rxt(k,312)*y(k,196) +rxt(k,320)*y(k,220) +rxt(k,324)*y(k,221) + & + rxt(k,330)*y(k,201) +rxt(k,337)*y(k,210) +rxt(k,346)*y(k,212) + & + rxt(k,349)*y(k,214) +rxt(k,359)*y(k,190) + & + .920_r8*rxt(k,369)*y(k,206) +.920_r8*rxt(k,375)*y(k,207) + & + rxt(k,383)*y(k,100) +rxt(k,394)*y(k,226) +rxt(k,398)*y(k,189) + & + rxt(k,401)*y(k,192) +rxt(k,406)*y(k,194) +rxt(k,408)*y(k,197) + & + rxt(k,412)*y(k,200) +rxt(k,415)*y(k,211) +rxt(k,418)*y(k,213) + & + rxt(k,421)*y(k,219) +rxt(k,428)*y(k,224) +rxt(k,434)*y(k,227) + & + rxt(k,437)*y(k,229) +1.600_r8*rxt(k,448)*y(k,216) + & + .900_r8*rxt(k,453)*y(k,222) +.800_r8*rxt(k,458)*y(k,223))*y(k,123) & + + (rxt(k,18) +rxt(k,160)*y(k,204) +rxt(k,162)*y(k,133) + & + rxt(k,163)*y(k,218) +rxt(k,328)*y(k,15) +rxt(k,336)*y(k,210) + & + rxt(k,347)*y(k,212) +rxt(k,370)*y(k,206) +rxt(k,376)*y(k,207) + & + rxt(k,384)*y(k,100) +rxt(k,395)*y(k,226) + & + 2.000_r8*rxt(k,449)*y(k,216))*y(k,125) + (rxt(k,151)*y(k,89) + & + rxt(k,318)*y(k,126) +rxt(k,357)*y(k,1) +.700_r8*rxt(k,377)*y(k,98) + & + rxt(k,455)*y(k,176))*y(k,218) + (rxt(k,11) +rxt(k,174))*y(k,89) & + + (rxt(k,54) +rxt(k,356))*y(k,108) + (rxt(k,13) +rxt(k,175)) & + *y(k,113) + (.600_r8*rxt(k,60) +rxt(k,307))*y(k,139) +rxt(k,19) & + *y(k,1) +rxt(k,76)*y(k,19) +rxt(k,95)*y(k,59) +rxt(k,9)*y(k,88) & + +rxt(k,45)*y(k,92) +rxt(k,48)*y(k,101) +rxt(k,56)*y(k,115) & + +rxt(k,57)*y(k,126) +rxt(k,58)*y(k,127) +rxt(k,59)*y(k,138) & + +rxt(k,431)*y(k,140) +rxt(k,66)*y(k,176) & + +.500_r8*rxt(k,446)*y(k,216)*y(k,199) + loss(k,218) = (rxt(k,440)* y(k,5) +rxt(k,328)* y(k,15) +rxt(k,308)* y(k,28) & + +rxt(k,257)* y(k,41) +rxt(k,289)* y(k,44) +rxt(k,315)* y(k,48) & + +rxt(k,463)* y(k,66) +rxt(k,379)* y(k,97) +rxt(k,384)* y(k,100) & + +rxt(k,443)* y(k,109) +rxt(k,161)* y(k,123) +rxt(k,171)* y(k,124) & + +rxt(k,162)* y(k,133) +rxt(k,460)* y(k,178) +rxt(k,160)* y(k,204) & + +rxt(k,370)* y(k,206) +rxt(k,376)* y(k,207) +rxt(k,336)* y(k,210) & + +rxt(k,347)* y(k,212) +rxt(k,449)* y(k,216) +rxt(k,163)* y(k,218) & + +rxt(k,395)* y(k,226) + rxt(k,17) + rxt(k,18) + rxt(k,490) & + + het_rates(k,125))* y(k,125) + prod(k,218) = (rxt(k,94) +rxt(k,189)*y(k,55) +rxt(k,191)*y(k,133) + & + rxt(k,192)*y(k,218))*y(k,59) + (rxt(k,13) +rxt(k,14) +rxt(k,175)) & + *y(k,113) + (rxt(k,173)*y(k,88) +rxt(k,304)*y(k,139) + & + .500_r8*rxt(k,352)*y(k,108))*y(k,218) + (rxt(k,77) + & + rxt(k,222)*y(k,133))*y(k,19) + (rxt(k,158)*y(k,134) + & + rxt(k,159)*y(k,133))*y(k,124) +rxt(k,236)*y(k,88)*y(k,72) +rxt(k,10) & + *y(k,89) +.400_r8*rxt(k,60)*y(k,139) + loss(k,175) = (rxt(k,318)* y(k,218) + rxt(k,57) + het_rates(k,126))* y(k,126) + prod(k,175) = (.500_r8*rxt(k,378)*y(k,99) +rxt(k,385)*y(k,101) + & + rxt(k,389)*y(k,114) +rxt(k,390)*y(k,115))*y(k,218) & + +rxt(k,308)*y(k,125)*y(k,28) + loss(k,117) = (rxt(k,450)* y(k,218) + rxt(k,58) + rxt(k,491) & + + het_rates(k,127))* y(k,127) + prod(k,117) =rxt(k,447)*y(k,216)*y(k,204) + loss(k,15) = ( + het_rates(k,128))* y(k,128) + prod(k,15) = 0._r8 + loss(k,16) = ( + het_rates(k,129))* y(k,129) + prod(k,16) = 0._r8 + loss(k,17) = ( + het_rates(k,130))* y(k,130) + prod(k,17) = 0._r8 + loss(k,18) = ( + het_rates(k,131))* y(k,131) + prod(k,18) = 0._r8 + loss(k,19) = ( + het_rates(k,132))* y(k,132) + prod(k,19) = 0._r8 + loss(k,226) = (rxt(k,223)* y(k,18) +rxt(k,222)* y(k,19) +rxt(k,258)* y(k,41) & + +rxt(k,193)* y(k,58) +rxt(k,191)* y(k,59) +rxt(k,134)* y(k,76) & + +rxt(k,135)* y(k,78) +rxt(k,225)* y(k,80) +rxt(k,196)* y(k,84) & + +rxt(k,227)* y(k,90) +rxt(k,199)* y(k,91) +rxt(k,167)* y(k,123) & + + (rxt(k,157) +rxt(k,159))* y(k,124) +rxt(k,162)* y(k,125) & + + 2._r8*rxt(k,132)* y(k,133) +rxt(k,131)* y(k,134) +rxt(k,465) & + * y(k,137) +rxt(k,140)* y(k,204) +rxt(k,146)* y(k,218) + rxt(k,133) & + + het_rates(k,133))* y(k,133) + prod(k,226) = (rxt(k,156) +rxt(k,152)*y(k,123) +rxt(k,153)*y(k,124))*y(k,111) & + + (rxt(k,127) +rxt(k,128) +2.000_r8*rxt(k,130)*y(k,134))*y(k,217) & + + (rxt(k,111) +rxt(k,474))*y(k,150) +rxt(k,75)*y(k,18) & + +.180_r8*rxt(k,39)*y(k,53) +rxt(k,93)*y(k,58) +rxt(k,41)*y(k,62) & + +rxt(k,138)*y(k,204)*y(k,75) +rxt(k,14)*y(k,113) +rxt(k,15)*y(k,123) & + +rxt(k,16)*y(k,124) +rxt(k,18)*y(k,125) +rxt(k,8)*y(k,134) & + +rxt(k,107)*y(k,136) +rxt(k,467)*y(k,148) +rxt(k,112)*y(k,151) & + +rxt(k,113)*y(k,152) +rxt(k,148)*y(k,218)*y(k,218) +rxt(k,3) & + *y(k,230) + loss(k,227) = (rxt(k,441)* y(k,5) +rxt(k,214)* y(k,16) +rxt(k,280)* y(k,24) & + +rxt(k,309)* y(k,28) +rxt(k,182)* y(k,55) +rxt(k,142)* y(k,75) & + +rxt(k,386)* y(k,97) +rxt(k,339)* y(k,104) +rxt(k,444)* y(k,109) & + +rxt(k,353)* y(k,110) +rxt(k,166)* y(k,123) +rxt(k,158)* y(k,124) & + +rxt(k,131)* y(k,133) +rxt(k,424)* y(k,141) +rxt(k,469)* y(k,148) & + +rxt(k,475)* y(k,150) +rxt(k,141)* y(k,204) + (rxt(k,129) + & + rxt(k,130))* y(k,217) +rxt(k,147)* y(k,218) + rxt(k,7) + rxt(k,8) & + + het_rates(k,134))* y(k,134) + prod(k,227) = (.150_r8*rxt(k,294)*y(k,198) +.150_r8*rxt(k,344)*y(k,212)) & + *y(k,204) +rxt(k,133)*y(k,133) + loss(k,20) = ( + het_rates(k,135))* y(k,135) + prod(k,20) = 0._r8 + loss(k,106) = (rxt(k,476)* y(k,150) + rxt(k,107) + het_rates(k,136)) & + * y(k,136) + prod(k,106) = (rxt(k,186)*y(k,58) +rxt(k,216)*y(k,18))*y(k,58) + loss(k,112) = (rxt(k,465)* y(k,133) +rxt(k,466)* y(k,218) + rxt(k,110) & + + het_rates(k,137))* y(k,137) + prod(k,112) = 0._r8 + loss(k,86) = ( + rxt(k,59) + rxt(k,492) + het_rates(k,138))* y(k,138) + prod(k,86) =rxt(k,332)*y(k,218)*y(k,92) +.100_r8*rxt(k,453)*y(k,222)*y(k,123) + loss(k,138) = (rxt(k,304)* y(k,218) + rxt(k,60) + rxt(k,307) & + + het_rates(k,139))* y(k,139) + prod(k,138) =rxt(k,306)*y(k,198)*y(k,124) + loss(k,66) = ( + rxt(k,431) + het_rates(k,140))* y(k,140) + prod(k,66) =rxt(k,426)*y(k,189)*y(k,124) + loss(k,129) = (rxt(k,423)* y(k,124) +rxt(k,424)* y(k,134) + het_rates(k,141)) & + * y(k,141) + prod(k,129) = (.070_r8*rxt(k,410)*y(k,65) +.060_r8*rxt(k,422)*y(k,142) + & + .070_r8*rxt(k,438)*y(k,185))*y(k,218) +rxt(k,31)*y(k,31) & + +rxt(k,408)*y(k,197)*y(k,123) + loss(k,73) = (rxt(k,422)* y(k,218) + het_rates(k,142))* y(k,142) + prod(k,73) =.530_r8*rxt(k,399)*y(k,218)*y(k,6) + loss(k,107) = (rxt(k,425)* y(k,218) + rxt(k,61) + het_rates(k,143))* y(k,143) + prod(k,107) =rxt(k,420)*y(k,219)*y(k,204) + loss(k,21) = ( + het_rates(k,144))* y(k,144) + prod(k,21) = 0._r8 + loss(k,22) = ( + het_rates(k,145))* y(k,145) + prod(k,22) = 0._r8 + loss(k,140) = (rxt(k,321)* y(k,218) + rxt(k,62) + het_rates(k,146))* y(k,146) + prod(k,140) =rxt(k,319)*y(k,220)*y(k,204) + loss(k,118) = (rxt(k,325)* y(k,218) + rxt(k,63) + het_rates(k,147))* y(k,147) + prod(k,118) =.850_r8*rxt(k,323)*y(k,221)*y(k,204) + loss(k,136) = (rxt(k,469)* y(k,134) +rxt(k,472)* y(k,218) + rxt(k,467) & + + het_rates(k,148))* y(k,148) + prod(k,136) =rxt(k,110)*y(k,137) +rxt(k,111)*y(k,150) + loss(k,23) = ( + rxt(k,108) + het_rates(k,149))* y(k,149) + prod(k,23) = 0._r8 + loss(k,202) = (rxt(k,470)* y(k,18) +rxt(k,471)* y(k,58) +rxt(k,473)* y(k,124) & + +rxt(k,475)* y(k,134) +rxt(k,476)* y(k,136) +rxt(k,477)* y(k,218) & + + rxt(k,111) + rxt(k,474) + het_rates(k,150))* y(k,150) + prod(k,202) = (rxt(k,467) +rxt(k,469)*y(k,134) +rxt(k,472)*y(k,218))*y(k,148) & + +rxt(k,465)*y(k,137)*y(k,133) +rxt(k,112)*y(k,151) + loss(k,174) = (rxt(k,468)* y(k,218) + rxt(k,112) + het_rates(k,151)) & + * y(k,151) + prod(k,174) = (rxt(k,474) +rxt(k,470)*y(k,18) +rxt(k,471)*y(k,58) + & + rxt(k,473)*y(k,124) +rxt(k,475)*y(k,134) +rxt(k,476)*y(k,136) + & + rxt(k,477)*y(k,218))*y(k,150) + (rxt(k,463)*y(k,125) + & + rxt(k,464)*y(k,218) +.500_r8*rxt(k,478)*y(k,218))*y(k,66) & + +rxt(k,466)*y(k,218)*y(k,137) +rxt(k,113)*y(k,152) + loss(k,92) = (rxt(k,479)* y(k,230) + rxt(k,113) + het_rates(k,152))* y(k,152) + prod(k,92) =rxt(k,109)*y(k,79) +rxt(k,468)*y(k,218)*y(k,151) + loss(k,24) = ( + het_rates(k,153))* y(k,153) + prod(k,24) = 0._r8 + loss(k,25) = ( + het_rates(k,154))* y(k,154) + prod(k,25) = 0._r8 + loss(k,26) = ( + het_rates(k,155))* y(k,155) + prod(k,26) = 0._r8 + loss(k,27) = ( + het_rates(k,156))* y(k,156) + prod(k,27) = 0._r8 + loss(k,28) = ( + rxt(k,114) + het_rates(k,157))* y(k,157) + prod(k,28) = 0._r8 + loss(k,29) = ( + rxt(k,115) + het_rates(k,158))* y(k,158) + prod(k,29) = 0._r8 + loss(k,30) = ( + rxt(k,116) + het_rates(k,159))* y(k,159) + prod(k,30) = 0._r8 + loss(k,31) = ( + rxt(k,117) + het_rates(k,160))* y(k,160) + prod(k,31) = 0._r8 + loss(k,32) = ( + rxt(k,118) + het_rates(k,161))* y(k,161) + prod(k,32) = 0._r8 + loss(k,33) = ( + rxt(k,119) + het_rates(k,162))* y(k,162) + prod(k,33) = 0._r8 + loss(k,34) = ( + rxt(k,120) + het_rates(k,163))* y(k,163) + prod(k,34) = 0._r8 + loss(k,35) = ( + rxt(k,121) + het_rates(k,164))* y(k,164) + prod(k,35) = 0._r8 + loss(k,36) = ( + rxt(k,122) + het_rates(k,165))* y(k,165) + prod(k,36) = 0._r8 + loss(k,37) = ( + rxt(k,123) + het_rates(k,166))* y(k,166) + prod(k,37) = 0._r8 + loss(k,38) = ( + het_rates(k,167))* y(k,167) + prod(k,38) = (.1279005_r8*rxt(k,496)*y(k,191) + & + .0097005_r8*rxt(k,501)*y(k,193) +.0003005_r8*rxt(k,504)*y(k,208) + & + .1056005_r8*rxt(k,508)*y(k,209) +.0245005_r8*rxt(k,512)*y(k,215) + & + .0154005_r8*rxt(k,518)*y(k,225) +.0063005_r8*rxt(k,522)*y(k,228)) & + *y(k,123) + (.2202005_r8*rxt(k,495)*y(k,191) + & + .0023005_r8*rxt(k,500)*y(k,193) +.0031005_r8*rxt(k,503)*y(k,208) + & + .2381005_r8*rxt(k,507)*y(k,209) +.0508005_r8*rxt(k,511)*y(k,215) + & + .1364005_r8*rxt(k,517)*y(k,225) +.1677005_r8*rxt(k,521)*y(k,228)) & + *y(k,204) + (.2202005_r8*rxt(k,497)*y(k,5) + & + .0508005_r8*rxt(k,513)*y(k,109))*y(k,134) +rxt(k,519)*y(k,74) & + +.5931005_r8*rxt(k,515)*y(k,218)*y(k,173) + loss(k,39) = ( + het_rates(k,168))* y(k,168) + prod(k,39) = (.1792005_r8*rxt(k,496)*y(k,191) + & + .0034005_r8*rxt(k,501)*y(k,193) +.0003005_r8*rxt(k,504)*y(k,208) + & + .1026005_r8*rxt(k,508)*y(k,209) +.0082005_r8*rxt(k,512)*y(k,215) + & + .0452005_r8*rxt(k,518)*y(k,225) +.0237005_r8*rxt(k,522)*y(k,228)) & + *y(k,123) + (.2067005_r8*rxt(k,495)*y(k,191) + & + .0008005_r8*rxt(k,500)*y(k,193) +.0035005_r8*rxt(k,503)*y(k,208) + & + .1308005_r8*rxt(k,507)*y(k,209) +.1149005_r8*rxt(k,511)*y(k,215) + & + .0101005_r8*rxt(k,517)*y(k,225) +.0174005_r8*rxt(k,521)*y(k,228)) & + *y(k,204) + (.2067005_r8*rxt(k,497)*y(k,5) + & + .1149005_r8*rxt(k,513)*y(k,109))*y(k,134) & + +.1534005_r8*rxt(k,515)*y(k,218)*y(k,173) + loss(k,40) = ( + het_rates(k,169))* y(k,169) + prod(k,40) = (.0676005_r8*rxt(k,496)*y(k,191) + & + .1579005_r8*rxt(k,501)*y(k,193) +.0073005_r8*rxt(k,504)*y(k,208) + & + .0521005_r8*rxt(k,508)*y(k,209) +.0772005_r8*rxt(k,512)*y(k,215) + & + .0966005_r8*rxt(k,518)*y(k,225) +.0025005_r8*rxt(k,522)*y(k,228)) & + *y(k,123) + (.0653005_r8*rxt(k,495)*y(k,191) + & + .0843005_r8*rxt(k,500)*y(k,193) +.0003005_r8*rxt(k,503)*y(k,208) + & + .0348005_r8*rxt(k,507)*y(k,209) +.0348005_r8*rxt(k,511)*y(k,215) + & + .0763005_r8*rxt(k,517)*y(k,225) +.086_r8*rxt(k,521)*y(k,228)) & + *y(k,204) + (.0653005_r8*rxt(k,497)*y(k,5) + & + .0348005_r8*rxt(k,513)*y(k,109))*y(k,134) & + +.0459005_r8*rxt(k,515)*y(k,218)*y(k,173) + loss(k,41) = ( + het_rates(k,170))* y(k,170) + prod(k,41) = (.079_r8*rxt(k,496)*y(k,191) +.0059005_r8*rxt(k,501)*y(k,193) + & + .0057005_r8*rxt(k,504)*y(k,208) +.0143005_r8*rxt(k,508)*y(k,209) + & + .0332005_r8*rxt(k,512)*y(k,215) +.0073005_r8*rxt(k,518)*y(k,225) + & + .011_r8*rxt(k,522)*y(k,228))*y(k,123) & + + (.1284005_r8*rxt(k,495)*y(k,191) + & + .0443005_r8*rxt(k,500)*y(k,193) +.0271005_r8*rxt(k,503)*y(k,208) + & + .0076005_r8*rxt(k,507)*y(k,209) +.0554005_r8*rxt(k,511)*y(k,215) + & + .2157005_r8*rxt(k,517)*y(k,225) +.0512005_r8*rxt(k,521)*y(k,228)) & + *y(k,204) + (.1749305_r8*rxt(k,494)*y(k,5) + & + .0590245_r8*rxt(k,502)*y(k,97) +.1749305_r8*rxt(k,510)*y(k,109)) & + *y(k,125) + (.1284005_r8*rxt(k,497)*y(k,5) + & + .0033005_r8*rxt(k,505)*y(k,97) +.0554005_r8*rxt(k,513)*y(k,109)) & + *y(k,134) +.0085005_r8*rxt(k,515)*y(k,218)*y(k,173) + loss(k,42) = ( + het_rates(k,171))* y(k,171) + prod(k,42) = (.1254005_r8*rxt(k,496)*y(k,191) + & + .0536005_r8*rxt(k,501)*y(k,193) +.0623005_r8*rxt(k,504)*y(k,208) + & + .0166005_r8*rxt(k,508)*y(k,209) +.130_r8*rxt(k,512)*y(k,215) + & + .238_r8*rxt(k,518)*y(k,225) +.1185005_r8*rxt(k,522)*y(k,228)) & + *y(k,123) + (.114_r8*rxt(k,495)*y(k,191) + & + .1621005_r8*rxt(k,500)*y(k,193) +.0474005_r8*rxt(k,503)*y(k,208) + & + .0113005_r8*rxt(k,507)*y(k,209) +.1278005_r8*rxt(k,511)*y(k,215) + & + .0738005_r8*rxt(k,517)*y(k,225) +.1598005_r8*rxt(k,521)*y(k,228)) & + *y(k,204) + (.5901905_r8*rxt(k,494)*y(k,5) + & + .0250245_r8*rxt(k,502)*y(k,97) +.5901905_r8*rxt(k,510)*y(k,109)) & + *y(k,125) + (.114_r8*rxt(k,497)*y(k,5) + & + .1278005_r8*rxt(k,513)*y(k,109))*y(k,134) & + +.0128005_r8*rxt(k,515)*y(k,218)*y(k,173) + loss(k,43) = ( + rxt(k,542) + het_rates(k,172))* y(k,172) + prod(k,43) = 0._r8 + loss(k,44) = (rxt(k,515)* y(k,218) + het_rates(k,173))* y(k,173) + prod(k,44) = 0._r8 + loss(k,79) = ( + rxt(k,64) + het_rates(k,174))* y(k,174) + prod(k,79) = (.100_r8*rxt(k,430)*y(k,181) +.230_r8*rxt(k,432)*y(k,183)) & + *y(k,218) + loss(k,153) = (rxt(k,454)* y(k,218) + rxt(k,65) + het_rates(k,175))* y(k,175) + prod(k,153) =rxt(k,452)*y(k,222)*y(k,204) + loss(k,150) = (rxt(k,455)* y(k,218) + rxt(k,66) + rxt(k,493) & + + het_rates(k,176))* y(k,176) + prod(k,150) = (.200_r8*rxt(k,448)*y(k,216) +.200_r8*rxt(k,458)*y(k,223)) & + *y(k,123) +.500_r8*rxt(k,446)*y(k,216)*y(k,199) + loss(k,131) = (rxt(k,459)* y(k,218) + rxt(k,67) + het_rates(k,177))* y(k,177) + prod(k,131) =rxt(k,457)*y(k,223)*y(k,204) + loss(k,184) = (rxt(k,460)* y(k,125) +rxt(k,461)* y(k,218) + rxt(k,68) & + + het_rates(k,178))* y(k,178) + prod(k,184) = (.500_r8*rxt(k,446)*y(k,199) +.800_r8*rxt(k,448)*y(k,123) + & + rxt(k,449)*y(k,125))*y(k,216) + (.330_r8*rxt(k,441)*y(k,5) + & + .330_r8*rxt(k,444)*y(k,109))*y(k,134) + (rxt(k,66) + & + rxt(k,455)*y(k,218))*y(k,176) + (rxt(k,456)*y(k,199) + & + .800_r8*rxt(k,458)*y(k,123))*y(k,223) +rxt(k,58)*y(k,127) +rxt(k,67) & + *y(k,177) + loss(k,189) = (rxt(k,462)* y(k,218) + rxt(k,69) + het_rates(k,179))* y(k,179) + prod(k,189) = (.300_r8*rxt(k,441)*y(k,5) +.300_r8*rxt(k,444)*y(k,109)) & + *y(k,134) + (rxt(k,451)*y(k,199) +.900_r8*rxt(k,453)*y(k,123)) & + *y(k,222) +rxt(k,65)*y(k,175) +rxt(k,68)*y(k,178) + loss(k,154) = (rxt(k,429)* y(k,218) + rxt(k,70) + het_rates(k,180))* y(k,180) + prod(k,154) =rxt(k,427)*y(k,224)*y(k,204) + loss(k,77) = (rxt(k,430)* y(k,218) + het_rates(k,181))* y(k,181) + prod(k,77) = 0._r8 + loss(k,80) = (rxt(k,396)* y(k,218) + rxt(k,71) + het_rates(k,182))* y(k,182) + prod(k,80) =rxt(k,393)*y(k,226)*y(k,204) + loss(k,81) = (rxt(k,432)* y(k,218) + het_rates(k,183))* y(k,183) + prod(k,81) = 0._r8 + loss(k,158) = (rxt(k,435)* y(k,218) + rxt(k,72) + het_rates(k,184))* y(k,184) + prod(k,158) =rxt(k,433)*y(k,227)*y(k,204) + loss(k,82) = (rxt(k,438)* y(k,218) + het_rates(k,185))* y(k,185) + prod(k,82) =.150_r8*rxt(k,432)*y(k,218)*y(k,183) + loss(k,123) = (rxt(k,439)* y(k,218) + rxt(k,73) + het_rates(k,186))* y(k,186) + prod(k,123) =rxt(k,436)*y(k,229)*y(k,204) + loss(k,137) = (rxt(k,398)* y(k,123) +rxt(k,426)* y(k,124) +rxt(k,397) & + * y(k,204) + het_rates(k,189))* y(k,189) + prod(k,137) =rxt(k,403)*y(k,218)*y(k,21) +rxt(k,431)*y(k,140) + loss(k,178) = ((rxt(k,359) +rxt(k,360))* y(k,123) +rxt(k,358)* y(k,204) & + + het_rates(k,190))* y(k,190) + prod(k,178) = (rxt(k,361)*y(k,2) +rxt(k,362)*y(k,14))*y(k,218) + loss(k,45) = (rxt(k,496)* y(k,123) +rxt(k,495)* y(k,204) + het_rates(k,191)) & + * y(k,191) + prod(k,45) =rxt(k,498)*y(k,218)*y(k,5) + loss(k,132) = (rxt(k,401)* y(k,123) +rxt(k,400)* y(k,204) + het_rates(k,192)) & + * y(k,192) + prod(k,132) = (.350_r8*rxt(k,399)*y(k,6) +rxt(k,402)*y(k,7))*y(k,218) + loss(k,46) = (rxt(k,501)* y(k,123) +rxt(k,500)* y(k,204) + het_rates(k,193)) & + * y(k,193) + prod(k,46) =rxt(k,499)*y(k,218)*y(k,6) + loss(k,124) = (rxt(k,406)* y(k,123) +rxt(k,404)* y(k,204) + het_rates(k,194)) & + * y(k,194) + prod(k,124) = (rxt(k,405)*y(k,22) +.070_r8*rxt(k,430)*y(k,181) + & + .060_r8*rxt(k,432)*y(k,183))*y(k,218) + loss(k,172) = (rxt(k,284)* y(k,123) + 2._r8*rxt(k,281)* y(k,195) +rxt(k,282) & + * y(k,199) +rxt(k,283)* y(k,204) + het_rates(k,195))* y(k,195) + prod(k,172) = (rxt(k,287)*y(k,55) +rxt(k,288)*y(k,218))*y(k,27) & + +.500_r8*rxt(k,286)*y(k,218)*y(k,26) +rxt(k,52)*y(k,106) + loss(k,167) = (rxt(k,312)* y(k,123) +rxt(k,310)* y(k,199) +rxt(k,311) & + * y(k,204) + het_rates(k,196))* y(k,196) + prod(k,167) = (rxt(k,313)*y(k,29) +rxt(k,314)*y(k,30))*y(k,218) + loss(k,151) = (rxt(k,408)* y(k,123) +rxt(k,407)* y(k,204) + het_rates(k,197)) & + * y(k,197) + prod(k,151) = (.400_r8*rxt(k,397)*y(k,204) +rxt(k,398)*y(k,123))*y(k,189) & + +rxt(k,409)*y(k,218)*y(k,31) +rxt(k,424)*y(k,141)*y(k,134) + loss(k,208) = (rxt(k,380)* y(k,100) +rxt(k,295)* y(k,123) +rxt(k,306) & + * y(k,124) + 2._r8*rxt(k,292)* y(k,198) +rxt(k,293)* y(k,199) & + +rxt(k,294)* y(k,204) +rxt(k,366)* y(k,206) +rxt(k,371)* y(k,207) & + +rxt(k,333)* y(k,210) +rxt(k,391)* y(k,226) + het_rates(k,198)) & + * y(k,198) + prod(k,208) = (.100_r8*rxt(k,339)*y(k,104) +.280_r8*rxt(k,353)*y(k,110) + & + .080_r8*rxt(k,386)*y(k,97) +.060_r8*rxt(k,441)*y(k,5) + & + .060_r8*rxt(k,444)*y(k,109))*y(k,134) + (rxt(k,343)*y(k,199) + & + .450_r8*rxt(k,344)*y(k,204) +2.000_r8*rxt(k,345)*y(k,212) + & + rxt(k,346)*y(k,123) +rxt(k,347)*y(k,125))*y(k,212) & + + (.530_r8*rxt(k,333)*y(k,198) +.260_r8*rxt(k,334)*y(k,199) + & + .530_r8*rxt(k,336)*y(k,125) +.530_r8*rxt(k,337)*y(k,123))*y(k,210) & + + (rxt(k,290)*y(k,44) +.500_r8*rxt(k,297)*y(k,50) + & + rxt(k,316)*y(k,48) +.650_r8*rxt(k,462)*y(k,179))*y(k,218) & + + (.300_r8*rxt(k,322)*y(k,199) +.150_r8*rxt(k,323)*y(k,204) + & + rxt(k,324)*y(k,123))*y(k,221) + (rxt(k,36) +rxt(k,315)*y(k,125)) & + *y(k,48) + (.600_r8*rxt(k,60) +rxt(k,307))*y(k,139) & + + (.200_r8*rxt(k,348)*y(k,204) +rxt(k,349)*y(k,123))*y(k,214) & + +.130_r8*rxt(k,23)*y(k,9) +rxt(k,27)*y(k,13) +rxt(k,289)*y(k,125) & + *y(k,44) +rxt(k,35)*y(k,47) +.330_r8*rxt(k,45)*y(k,92) +rxt(k,47) & + *y(k,94) +1.340_r8*rxt(k,50)*y(k,104) +rxt(k,52)*y(k,106) +rxt(k,53) & + *y(k,107) +.300_r8*rxt(k,55)*y(k,110) +rxt(k,57)*y(k,126) +rxt(k,63) & + *y(k,147) +.500_r8*rxt(k,64)*y(k,174) +.650_r8*rxt(k,69)*y(k,179) + loss(k,219) = (rxt(k,183)* y(k,58) +rxt(k,381)* y(k,100) +rxt(k,263) & + * y(k,123) +rxt(k,282)* y(k,195) +rxt(k,310)* y(k,196) +rxt(k,293) & + * y(k,198) + 2._r8*(rxt(k,260) +rxt(k,261))* y(k,199) +rxt(k,262) & + * y(k,204) +rxt(k,367)* y(k,206) +rxt(k,372)* y(k,207) +rxt(k,334) & + * y(k,210) +rxt(k,343)* y(k,212) +rxt(k,446)* y(k,216) +rxt(k,322) & + * y(k,221) +rxt(k,451)* y(k,222) +rxt(k,456)* y(k,223) +rxt(k,392) & + * y(k,226) + het_rates(k,199))* y(k,199) + prod(k,219) = (2.000_r8*rxt(k,292)*y(k,198) +.900_r8*rxt(k,293)*y(k,199) + & + .490_r8*rxt(k,294)*y(k,204) +rxt(k,295)*y(k,123) + & + rxt(k,333)*y(k,210) +rxt(k,342)*y(k,212) +rxt(k,366)*y(k,206) + & + rxt(k,371)*y(k,207) +rxt(k,380)*y(k,100) +rxt(k,391)*y(k,226)) & + *y(k,198) + (rxt(k,40) +rxt(k,177)*y(k,55) +rxt(k,233)*y(k,72) + & + rxt(k,266)*y(k,218) +rxt(k,272)*y(k,217))*y(k,53) & + + (.830_r8*rxt(k,412)*y(k,200) +.170_r8*rxt(k,418)*y(k,213)) & + *y(k,123) + (.280_r8*rxt(k,309)*y(k,28) +.050_r8*rxt(k,386)*y(k,97)) & + *y(k,134) + (.330_r8*rxt(k,411)*y(k,200) + & + .070_r8*rxt(k,417)*y(k,213))*y(k,204) + (.700_r8*rxt(k,265)*y(k,52) + & + rxt(k,296)*y(k,49))*y(k,218) +rxt(k,87)*y(k,42) +rxt(k,34)*y(k,44) & + +rxt(k,89)*y(k,45) +rxt(k,35)*y(k,47) +rxt(k,37)*y(k,50) & + +.300_r8*rxt(k,55)*y(k,110) +.400_r8*rxt(k,60)*y(k,139) + loss(k,164) = (rxt(k,412)* y(k,123) +rxt(k,413)* y(k,124) +rxt(k,411) & + * y(k,204) + het_rates(k,200))* y(k,200) + prod(k,164) =.600_r8*rxt(k,25)*y(k,11) + loss(k,143) = ((rxt(k,330) +rxt(k,331))* y(k,123) + het_rates(k,201)) & + * y(k,201) + prod(k,143) =rxt(k,329)*y(k,218)*y(k,15) + loss(k,95) = ( + rxt(k,300) + rxt(k,301) + het_rates(k,202))* y(k,202) + prod(k,95) =rxt(k,42)*y(k,71) +.750_r8*rxt(k,299)*y(k,203)*y(k,123) + loss(k,159) = (rxt(k,299)* y(k,123) +rxt(k,298)* y(k,204) + het_rates(k,203)) & + * y(k,203) + prod(k,159) =rxt(k,305)*y(k,218)*y(k,24) + loss(k,223) = (rxt(k,213)* y(k,16) +rxt(k,219)* y(k,18) +rxt(k,256)* y(k,41) & + + (rxt(k,180) +rxt(k,181))* y(k,55) +rxt(k,187)* y(k,58) & + + (rxt(k,136) +rxt(k,137) +rxt(k,138))* y(k,75) +rxt(k,382) & + * y(k,100) +rxt(k,165)* y(k,123) +rxt(k,170)* y(k,124) +rxt(k,160) & + * y(k,125) +rxt(k,140)* y(k,133) +rxt(k,141)* y(k,134) +rxt(k,397) & + * y(k,189) +rxt(k,358)* y(k,190) +rxt(k,400)* y(k,192) +rxt(k,404) & + * y(k,194) +rxt(k,283)* y(k,195) +rxt(k,311)* y(k,196) +rxt(k,407) & + * y(k,197) +rxt(k,294)* y(k,198) +rxt(k,262)* y(k,199) +rxt(k,411) & + * y(k,200) +rxt(k,298)* y(k,203) + 2._r8*rxt(k,150)* y(k,204) & + +rxt(k,269)* y(k,205) +rxt(k,368)* y(k,206) +rxt(k,373)* y(k,207) & + +rxt(k,335)* y(k,210) +rxt(k,414)* y(k,211) +rxt(k,344)* y(k,212) & + +rxt(k,417)* y(k,213) +rxt(k,348)* y(k,214) +rxt(k,447)* y(k,216) & + +rxt(k,145)* y(k,218) +rxt(k,420)* y(k,219) +rxt(k,319)* y(k,220) & + +rxt(k,323)* y(k,221) +rxt(k,452)* y(k,222) +rxt(k,457)* y(k,223) & + +rxt(k,427)* y(k,224) +rxt(k,393)* y(k,226) +rxt(k,433)* y(k,227) & + +rxt(k,436)* y(k,229) + rxt(k,481) + het_rates(k,204))* y(k,204) + prod(k,223) = (rxt(k,144)*y(k,78) +rxt(k,147)*y(k,134) +rxt(k,163)*y(k,125) + & + rxt(k,194)*y(k,58) +rxt(k,224)*y(k,18) +rxt(k,242)*y(k,42) + & + rxt(k,245)*y(k,45) +rxt(k,264)*y(k,51) +rxt(k,267)*y(k,85) + & + rxt(k,268)*y(k,86) +rxt(k,276)*y(k,61) +.350_r8*rxt(k,278)*y(k,23) + & + rxt(k,285)*y(k,25) +rxt(k,291)*y(k,46) +rxt(k,302)*y(k,73) + & + rxt(k,303)*y(k,74) +rxt(k,317)*y(k,94) +rxt(k,332)*y(k,92) + & + .200_r8*rxt(k,341)*y(k,105) +.500_r8*rxt(k,352)*y(k,108) + & + .300_r8*rxt(k,377)*y(k,98) +rxt(k,378)*y(k,99) +rxt(k,385)*y(k,101) + & + rxt(k,389)*y(k,114) +rxt(k,390)*y(k,115) +.650_r8*rxt(k,399)*y(k,6) + & + .730_r8*rxt(k,410)*y(k,65) +.800_r8*rxt(k,422)*y(k,142) + & + .280_r8*rxt(k,430)*y(k,181) +.380_r8*rxt(k,432)*y(k,183) + & + .630_r8*rxt(k,438)*y(k,185) +.200_r8*rxt(k,462)*y(k,179) + & + rxt(k,468)*y(k,151) +.500_r8*rxt(k,478)*y(k,66))*y(k,218) & + + (rxt(k,263)*y(k,199) +rxt(k,271)*y(k,205) +rxt(k,284)*y(k,195) + & + .250_r8*rxt(k,299)*y(k,203) +rxt(k,312)*y(k,196) + & + rxt(k,320)*y(k,220) +rxt(k,330)*y(k,201) + & + .470_r8*rxt(k,337)*y(k,210) +rxt(k,359)*y(k,190) + & + .920_r8*rxt(k,369)*y(k,206) +.920_r8*rxt(k,375)*y(k,207) + & + rxt(k,383)*y(k,100) +rxt(k,394)*y(k,226) +rxt(k,401)*y(k,192) + & + rxt(k,406)*y(k,194) +.170_r8*rxt(k,412)*y(k,200) + & + .400_r8*rxt(k,415)*y(k,211) +.830_r8*rxt(k,418)*y(k,213) + & + rxt(k,421)*y(k,219) +rxt(k,428)*y(k,224) +rxt(k,434)*y(k,227) + & + rxt(k,437)*y(k,229) +.900_r8*rxt(k,453)*y(k,222) + & + .800_r8*rxt(k,458)*y(k,223))*y(k,123) + (rxt(k,183)*y(k,58) + & + 2.000_r8*rxt(k,260)*y(k,199) +rxt(k,282)*y(k,195) + & + .900_r8*rxt(k,293)*y(k,198) +rxt(k,310)*y(k,196) + & + .300_r8*rxt(k,322)*y(k,221) +.730_r8*rxt(k,334)*y(k,210) + & + rxt(k,343)*y(k,212) +rxt(k,367)*y(k,206) +rxt(k,372)*y(k,207) + & + 1.200_r8*rxt(k,381)*y(k,100) +.800_r8*rxt(k,392)*y(k,226) + & + .500_r8*rxt(k,446)*y(k,216) +rxt(k,451)*y(k,222) + & + rxt(k,456)*y(k,223))*y(k,199) + (.130_r8*rxt(k,280)*y(k,24) + & + .280_r8*rxt(k,309)*y(k,28) +.140_r8*rxt(k,339)*y(k,104) + & + .280_r8*rxt(k,353)*y(k,110) +.370_r8*rxt(k,386)*y(k,97) + & + .570_r8*rxt(k,441)*y(k,5) +.570_r8*rxt(k,444)*y(k,109))*y(k,134) & + + (rxt(k,257)*y(k,41) +.470_r8*rxt(k,336)*y(k,210) + & + rxt(k,370)*y(k,206) +rxt(k,376)*y(k,207) +rxt(k,384)*y(k,100) + & + rxt(k,395)*y(k,226))*y(k,125) + (.470_r8*rxt(k,333)*y(k,210) + & + rxt(k,366)*y(k,206) +rxt(k,371)*y(k,207) +rxt(k,380)*y(k,100) + & + rxt(k,391)*y(k,226))*y(k,198) + (rxt(k,176)*y(k,41) + & + rxt(k,179)*y(k,78) +rxt(k,241)*y(k,42) +rxt(k,244)*y(k,45))*y(k,55) & + + (.070_r8*rxt(k,411)*y(k,200) +.160_r8*rxt(k,414)*y(k,211) + & + .330_r8*rxt(k,417)*y(k,213))*y(k,204) + (rxt(k,212)*y(k,16) + & + rxt(k,258)*y(k,133))*y(k,41) + (rxt(k,11) +rxt(k,174))*y(k,89) & + + (1.340_r8*rxt(k,50) +.660_r8*rxt(k,51))*y(k,104) + (rxt(k,300) + & + rxt(k,301))*y(k,202) +rxt(k,19)*y(k,1) +.900_r8*rxt(k,20)*y(k,2) & + +rxt(k,21)*y(k,7) +1.500_r8*rxt(k,22)*y(k,8) +.560_r8*rxt(k,23) & + *y(k,9) +rxt(k,24)*y(k,10) +.600_r8*rxt(k,25)*y(k,11) & + +.600_r8*rxt(k,26)*y(k,12) +rxt(k,27)*y(k,13) +rxt(k,28)*y(k,22) & + +rxt(k,29)*y(k,26) +rxt(k,30)*y(k,29) +rxt(k,34)*y(k,44) +rxt(k,36) & + *y(k,48) +rxt(k,273)*y(k,217)*y(k,53) +2.000_r8*rxt(k,43)*y(k,73) & + +2.000_r8*rxt(k,44)*y(k,74) +rxt(k,139)*y(k,75) +rxt(k,135)*y(k,133) & + *y(k,78) +.670_r8*rxt(k,45)*y(k,92) +rxt(k,46)*y(k,93) +rxt(k,47) & + *y(k,94) +rxt(k,48)*y(k,101) +rxt(k,49)*y(k,102) +rxt(k,56)*y(k,115) & + +rxt(k,61)*y(k,143) +rxt(k,62)*y(k,146) +rxt(k,64)*y(k,174) & + +rxt(k,65)*y(k,175) +rxt(k,66)*y(k,176) +rxt(k,67)*y(k,177) & + +rxt(k,68)*y(k,178) +1.200_r8*rxt(k,69)*y(k,179) +rxt(k,70)*y(k,180) & + +rxt(k,72)*y(k,184) +rxt(k,73)*y(k,186) & + +1.200_r8*rxt(k,281)*y(k,195)*y(k,195) +rxt(k,270)*y(k,205) & + +rxt(k,374)*y(k,207) + loss(k,125) = (rxt(k,271)* y(k,123) +rxt(k,269)* y(k,204) + rxt(k,270) & + + het_rates(k,205))* y(k,205) + prod(k,125) =rxt(k,256)*y(k,204)*y(k,41) + loss(k,203) = (rxt(k,369)* y(k,123) +rxt(k,370)* y(k,125) +rxt(k,366) & + * y(k,198) +rxt(k,367)* y(k,199) +rxt(k,368)* y(k,204) & + + het_rates(k,206))* y(k,206) + prod(k,203) =.600_r8*rxt(k,387)*y(k,218)*y(k,97) + loss(k,204) = (rxt(k,375)* y(k,123) +rxt(k,376)* y(k,125) +rxt(k,371) & + * y(k,198) +rxt(k,372)* y(k,199) +rxt(k,373)* y(k,204) + rxt(k,374) & + + het_rates(k,207))* y(k,207) + prod(k,204) =.400_r8*rxt(k,387)*y(k,218)*y(k,97) + loss(k,47) = (rxt(k,504)* y(k,123) +rxt(k,503)* y(k,204) + het_rates(k,208)) & + * y(k,208) + prod(k,47) =rxt(k,506)*y(k,218)*y(k,97) + loss(k,48) = (rxt(k,508)* y(k,123) +rxt(k,507)* y(k,204) + het_rates(k,209)) & + * y(k,209) + prod(k,48) =rxt(k,509)*y(k,218)*y(k,103) + loss(k,205) = ((rxt(k,337) +rxt(k,338))* y(k,123) +rxt(k,336)* y(k,125) & + +rxt(k,333)* y(k,198) +rxt(k,334)* y(k,199) +rxt(k,335)* y(k,204) & + + het_rates(k,210))* y(k,210) + prod(k,205) = (.500_r8*rxt(k,340)*y(k,104) +.200_r8*rxt(k,341)*y(k,105) + & + rxt(k,354)*y(k,110))*y(k,218) + loss(k,160) = (rxt(k,415)* y(k,123) +rxt(k,416)* y(k,124) +rxt(k,414) & + * y(k,204) + het_rates(k,211))* y(k,211) + prod(k,160) =.600_r8*rxt(k,24)*y(k,10) + loss(k,207) = (rxt(k,346)* y(k,123) +rxt(k,355)* y(k,124) +rxt(k,347) & + * y(k,125) +rxt(k,342)* y(k,198) +rxt(k,343)* y(k,199) +rxt(k,344) & + * y(k,204) + 2._r8*rxt(k,345)* y(k,212) + het_rates(k,212))* y(k,212) + prod(k,207) = (.660_r8*rxt(k,50) +.500_r8*rxt(k,340)*y(k,218))*y(k,104) & + + (rxt(k,54) +rxt(k,356))*y(k,108) +.500_r8*rxt(k,341)*y(k,218) & + *y(k,105) + loss(k,177) = (rxt(k,418)* y(k,123) +rxt(k,419)* y(k,124) +rxt(k,417) & + * y(k,204) + het_rates(k,213))* y(k,213) + prod(k,177) =.600_r8*rxt(k,26)*y(k,12) + loss(k,156) = (rxt(k,349)* y(k,123) +rxt(k,348)* y(k,204) + het_rates(k,214)) & + * y(k,214) + prod(k,156) = (rxt(k,350)*y(k,106) +rxt(k,351)*y(k,107))*y(k,218) + loss(k,50) = (rxt(k,512)* y(k,123) +rxt(k,511)* y(k,204) + het_rates(k,215)) & + * y(k,215) + prod(k,50) =rxt(k,514)*y(k,218)*y(k,109) + loss(k,188) = (rxt(k,448)* y(k,123) +rxt(k,449)* y(k,125) +rxt(k,446) & + * y(k,199) +rxt(k,447)* y(k,204) + het_rates(k,216))* y(k,216) + prod(k,188) = (rxt(k,440)*y(k,5) +rxt(k,443)*y(k,109) + & + .500_r8*rxt(k,460)*y(k,178))*y(k,125) +rxt(k,450)*y(k,218)*y(k,127) + loss(k,215) = (rxt(k,201)* y(k,32) +rxt(k,202)* y(k,33) +rxt(k,228)* y(k,34) & + +rxt(k,203)* y(k,35) +rxt(k,204)* y(k,36) +rxt(k,205)* y(k,37) & + +rxt(k,206)* y(k,38) +rxt(k,207)* y(k,39) +rxt(k,251)* y(k,40) & + +rxt(k,252)* y(k,42) + (rxt(k,272) +rxt(k,273) +rxt(k,274))* y(k,53) & + +rxt(k,229)* y(k,54) +rxt(k,237)* y(k,63) +rxt(k,238)* y(k,64) & + +rxt(k,125)* y(k,76) +rxt(k,230)* y(k,77) + (rxt(k,231) +rxt(k,232)) & + * y(k,80) +rxt(k,253)* y(k,81) +rxt(k,254)* y(k,82) +rxt(k,255) & + * y(k,83) + (rxt(k,208) +rxt(k,209))* y(k,84) +rxt(k,275)* y(k,85) & + + (rxt(k,168) +rxt(k,169))* y(k,112) + (rxt(k,129) +rxt(k,130)) & + * y(k,134) +rxt(k,126)* y(k,230) + rxt(k,127) + rxt(k,128) & + + het_rates(k,217))* y(k,217) + prod(k,215) =rxt(k,12)*y(k,112) +rxt(k,7)*y(k,134) +rxt(k,1)*y(k,230) + loss(k,216) = (rxt(k,357)* y(k,1) +rxt(k,361)* y(k,2) +rxt(k,442)* y(k,5) & + +rxt(k,399)* y(k,6) +rxt(k,402)* y(k,7) +rxt(k,362)* y(k,14) & + +rxt(k,329)* y(k,15) +rxt(k,224)* y(k,18) +rxt(k,403)* y(k,21) & + +rxt(k,405)* y(k,22) +rxt(k,278)* y(k,23) +rxt(k,305)* y(k,24) & + +rxt(k,285)* y(k,25) +rxt(k,286)* y(k,26) +rxt(k,288)* y(k,27) & + +rxt(k,326)* y(k,28) +rxt(k,313)* y(k,29) +rxt(k,314)* y(k,30) & + +rxt(k,409)* y(k,31) +rxt(k,240)* y(k,40) +rxt(k,259)* y(k,41) & + +rxt(k,242)* y(k,42) +rxt(k,243)* y(k,43) +rxt(k,290)* y(k,44) & + +rxt(k,245)* y(k,45) +rxt(k,291)* y(k,46) +rxt(k,327)* y(k,47) & + +rxt(k,316)* y(k,48) +rxt(k,296)* y(k,49) +rxt(k,297)* y(k,50) & + +rxt(k,264)* y(k,51) +rxt(k,265)* y(k,52) +rxt(k,266)* y(k,53) & + +rxt(k,247)* y(k,54) + (rxt(k,194) +rxt(k,195))* y(k,58) +rxt(k,192) & + * y(k,59) +rxt(k,276)* y(k,61) +rxt(k,410)* y(k,65) + (rxt(k,464) + & + rxt(k,478))* y(k,66) +rxt(k,302)* y(k,73) +rxt(k,303)* y(k,74) & + +rxt(k,143)* y(k,76) +rxt(k,144)* y(k,78) +rxt(k,226)* y(k,80) & + +rxt(k,248)* y(k,81) +rxt(k,249)* y(k,82) +rxt(k,250)* y(k,83) & + +rxt(k,197)* y(k,84) +rxt(k,267)* y(k,85) +rxt(k,268)* y(k,86) & + +rxt(k,173)* y(k,88) +rxt(k,151)* y(k,89) +rxt(k,200)* y(k,91) & + +rxt(k,332)* y(k,92) +rxt(k,363)* y(k,93) +rxt(k,317)* y(k,94) & + +rxt(k,364)* y(k,95) +rxt(k,365)* y(k,96) +rxt(k,387)* y(k,97) & + +rxt(k,377)* y(k,98) +rxt(k,378)* y(k,99) +rxt(k,385)* y(k,101) & + +rxt(k,388)* y(k,102) +rxt(k,340)* y(k,104) +rxt(k,341)* y(k,105) & + +rxt(k,350)* y(k,106) +rxt(k,351)* y(k,107) +rxt(k,352)* y(k,108) & + +rxt(k,445)* y(k,109) +rxt(k,354)* y(k,110) +rxt(k,164)* y(k,111) & + +rxt(k,389)* y(k,114) +rxt(k,390)* y(k,115) +rxt(k,480)* y(k,119) & + +rxt(k,172)* y(k,124) +rxt(k,163)* y(k,125) +rxt(k,318)* y(k,126) & + +rxt(k,450)* y(k,127) +rxt(k,146)* y(k,133) +rxt(k,147)* y(k,134) & + +rxt(k,466)* y(k,137) +rxt(k,304)* y(k,139) +rxt(k,422)* y(k,142) & + +rxt(k,425)* y(k,143) +rxt(k,321)* y(k,146) +rxt(k,325)* y(k,147) & + +rxt(k,472)* y(k,148) +rxt(k,477)* y(k,150) +rxt(k,468)* y(k,151) & + +rxt(k,454)* y(k,175) +rxt(k,455)* y(k,176) +rxt(k,459)* y(k,177) & + +rxt(k,461)* y(k,178) +rxt(k,462)* y(k,179) +rxt(k,429)* y(k,180) & + +rxt(k,430)* y(k,181) +rxt(k,396)* y(k,182) +rxt(k,432)* y(k,183) & + +rxt(k,435)* y(k,184) +rxt(k,438)* y(k,185) +rxt(k,439)* y(k,186) & + +rxt(k,145)* y(k,204) + 2._r8*(rxt(k,148) +rxt(k,149))* y(k,218) & + + het_rates(k,218))* y(k,218) + prod(k,216) = (2.000_r8*rxt(k,137)*y(k,75) +rxt(k,140)*y(k,133) + & + rxt(k,141)*y(k,134) +rxt(k,160)*y(k,125) +rxt(k,165)*y(k,123) + & + rxt(k,181)*y(k,55) +.490_r8*rxt(k,294)*y(k,198) + & + .150_r8*rxt(k,323)*y(k,221) +.450_r8*rxt(k,344)*y(k,212) + & + .200_r8*rxt(k,348)*y(k,214) +.400_r8*rxt(k,397)*y(k,189) + & + .400_r8*rxt(k,411)*y(k,200) +.400_r8*rxt(k,417)*y(k,213))*y(k,204) & + + (rxt(k,142)*y(k,75) +.130_r8*rxt(k,280)*y(k,24) + & + .360_r8*rxt(k,309)*y(k,28) +.240_r8*rxt(k,339)*y(k,104) + & + .360_r8*rxt(k,353)*y(k,110) +.320_r8*rxt(k,386)*y(k,97) + & + .630_r8*rxt(k,441)*y(k,5) +.630_r8*rxt(k,444)*y(k,109))*y(k,134) & + + (rxt(k,134)*y(k,76) +rxt(k,135)*y(k,78) +rxt(k,196)*y(k,84) + & + rxt(k,199)*y(k,91) +rxt(k,225)*y(k,80) +rxt(k,227)*y(k,90) + & + rxt(k,258)*y(k,41))*y(k,133) + (.300_r8*rxt(k,265)*y(k,52) + & + .650_r8*rxt(k,278)*y(k,23) +.500_r8*rxt(k,286)*y(k,26) + & + .500_r8*rxt(k,321)*y(k,146) +.100_r8*rxt(k,341)*y(k,105) + & + .600_r8*rxt(k,388)*y(k,102) +.500_r8*rxt(k,396)*y(k,182))*y(k,218) & + + (rxt(k,125)*y(k,76) +2.000_r8*rxt(k,126)*y(k,230) + & + rxt(k,208)*y(k,84) +rxt(k,231)*y(k,80) +rxt(k,272)*y(k,53) + & + rxt(k,275)*y(k,85))*y(k,217) + (rxt(k,2) +rxt(k,235)*y(k,72)) & + *y(k,230) +rxt(k,20)*y(k,2) +rxt(k,21)*y(k,7) +rxt(k,28)*y(k,22) & + +rxt(k,29)*y(k,26) +rxt(k,30)*y(k,29) +rxt(k,31)*y(k,31) +rxt(k,37) & + *y(k,50) +rxt(k,38)*y(k,52) +.330_r8*rxt(k,39)*y(k,53) +rxt(k,42) & + *y(k,71) +2.000_r8*rxt(k,4)*y(k,78) +rxt(k,9)*y(k,88) +rxt(k,10) & + *y(k,89) +rxt(k,105)*y(k,90) +rxt(k,106)*y(k,91) +rxt(k,46)*y(k,93) & + +rxt(k,49)*y(k,102) +rxt(k,53)*y(k,107) +.500_r8*rxt(k,489)*y(k,124) & + +rxt(k,58)*y(k,127) +rxt(k,61)*y(k,143) +rxt(k,62)*y(k,146) & + +rxt(k,63)*y(k,147) +rxt(k,65)*y(k,175) +rxt(k,67)*y(k,177) & + +rxt(k,70)*y(k,180) +rxt(k,71)*y(k,182) +rxt(k,72)*y(k,184) & + +rxt(k,73)*y(k,186) + loss(k,126) = (rxt(k,421)* y(k,123) +rxt(k,420)* y(k,204) + het_rates(k,219)) & + * y(k,219) + prod(k,126) = (.200_r8*rxt(k,410)*y(k,65) +.140_r8*rxt(k,422)*y(k,142) + & + rxt(k,425)*y(k,143))*y(k,218) + loss(k,165) = (rxt(k,320)* y(k,123) +rxt(k,319)* y(k,204) + het_rates(k,220)) & + * y(k,220) + prod(k,165) = (.500_r8*rxt(k,321)*y(k,146) +rxt(k,326)*y(k,28))*y(k,218) + loss(k,195) = (rxt(k,324)* y(k,123) +rxt(k,322)* y(k,199) +rxt(k,323) & + * y(k,204) + het_rates(k,221))* y(k,221) + prod(k,195) = (rxt(k,325)*y(k,147) +rxt(k,327)*y(k,47) + & + .150_r8*rxt(k,462)*y(k,179))*y(k,218) + (.060_r8*rxt(k,441)*y(k,5) + & + .060_r8*rxt(k,444)*y(k,109))*y(k,134) +.150_r8*rxt(k,69)*y(k,179) + loss(k,193) = (rxt(k,453)* y(k,123) +rxt(k,451)* y(k,199) +rxt(k,452) & + * y(k,204) + het_rates(k,222))* y(k,222) + prod(k,193) = (.500_r8*rxt(k,460)*y(k,125) +rxt(k,461)*y(k,218))*y(k,178) & + +rxt(k,454)*y(k,218)*y(k,175) + loss(k,180) = (rxt(k,458)* y(k,123) +rxt(k,456)* y(k,199) +rxt(k,457) & + * y(k,204) + het_rates(k,223))* y(k,223) + prod(k,180) = (rxt(k,442)*y(k,5) +rxt(k,445)*y(k,109) +rxt(k,459)*y(k,177)) & + *y(k,218) + loss(k,161) = (rxt(k,428)* y(k,123) +rxt(k,427)* y(k,204) + het_rates(k,224)) & + * y(k,224) + prod(k,161) = (rxt(k,429)*y(k,180) +.650_r8*rxt(k,430)*y(k,181))*y(k,218) + loss(k,51) = (rxt(k,518)* y(k,123) +rxt(k,517)* y(k,204) + het_rates(k,225)) & + * y(k,225) + prod(k,51) =rxt(k,516)*y(k,218)*y(k,181) + loss(k,198) = (rxt(k,394)* y(k,123) +rxt(k,395)* y(k,125) +rxt(k,391) & + * y(k,198) +rxt(k,392)* y(k,199) +rxt(k,393)* y(k,204) & + + het_rates(k,226))* y(k,226) + prod(k,198) = (rxt(k,363)*y(k,93) +rxt(k,364)*y(k,95) +rxt(k,365)*y(k,96) + & + .400_r8*rxt(k,388)*y(k,102) +.500_r8*rxt(k,396)*y(k,182))*y(k,218) + loss(k,163) = (rxt(k,434)* y(k,123) +rxt(k,433)* y(k,204) + het_rates(k,227)) & + * y(k,227) + prod(k,163) = (.560_r8*rxt(k,432)*y(k,183) +rxt(k,435)*y(k,184))*y(k,218) + loss(k,52) = (rxt(k,522)* y(k,123) +rxt(k,521)* y(k,204) + het_rates(k,228)) & + * y(k,228) + prod(k,52) =rxt(k,520)*y(k,218)*y(k,183) + loss(k,134) = (rxt(k,437)* y(k,123) +rxt(k,436)* y(k,204) + het_rates(k,229)) & + * y(k,229) + prod(k,134) = (.300_r8*rxt(k,438)*y(k,185) +rxt(k,439)*y(k,186))*y(k,218) + loss(k,228) = (rxt(k,235)* y(k,72) +rxt(k,479)* y(k,152) +rxt(k,126) & + * y(k,217) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,230)) & + * y(k,230) + prod(k,228) = (rxt(k,143)*y(k,76) +rxt(k,144)*y(k,78) +rxt(k,145)*y(k,204) + & + rxt(k,148)*y(k,218) +rxt(k,151)*y(k,89) +rxt(k,173)*y(k,88) + & + rxt(k,197)*y(k,84) +rxt(k,200)*y(k,91) +rxt(k,226)*y(k,80) + & + rxt(k,240)*y(k,40) +rxt(k,242)*y(k,42) +rxt(k,243)*y(k,43) + & + rxt(k,245)*y(k,45) +rxt(k,250)*y(k,83) +rxt(k,259)*y(k,41) + & + rxt(k,265)*y(k,52) +rxt(k,266)*y(k,53) +rxt(k,268)*y(k,86) + & + rxt(k,288)*y(k,27) +rxt(k,290)*y(k,44) +rxt(k,296)*y(k,49) + & + rxt(k,297)*y(k,50) +rxt(k,313)*y(k,29) +rxt(k,314)*y(k,30) + & + rxt(k,316)*y(k,48) +rxt(k,321)*y(k,146) +rxt(k,325)*y(k,147) + & + rxt(k,327)*y(k,47) +.500_r8*rxt(k,340)*y(k,104) +rxt(k,480)*y(k,119)) & + *y(k,218) + (rxt(k,524)*y(k,91) +rxt(k,530)*y(k,91) + & + rxt(k,531)*y(k,90) +rxt(k,535)*y(k,91) +rxt(k,536)*y(k,90))*y(k,84) & + + (rxt(k,481) +rxt(k,138)*y(k,75))*y(k,204) +.050_r8*rxt(k,39) & + *y(k,53) +rxt(k,109)*y(k,79) + end do + end subroutine imp_prod_loss + end module mo_prod_loss diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_rxt_rates_conv.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_rxt_rates_conv.F90 similarity index 65% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_rxt_rates_conv.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s1/mo_rxt_rates_conv.F90 index 4a5f4c3eed..23f3cfd888 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_rxt_rates_conv.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_rxt_rates_conv.F90 @@ -8,546 +8,547 @@ subroutine set_rates( rxt_rates, sol, ncol ) real(r8), intent(inout) :: rxt_rates(:,:,:) real(r8), intent(in) :: sol(:,:,:) integer, intent(in) :: ncol - rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 231) ! rate_const*H2O - rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 231) ! rate_const*H2O - rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 231) ! rate_const*H2O - rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 79) ! rate_const*H2O2 + rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 230) ! rate_const*H2O + rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 230) ! rate_const*H2O + rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 230) ! rate_const*H2O + rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 78) ! rate_const*H2O2 ! rate_const*O2 ! rate_const*O2 - rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 135) ! rate_const*O3 - rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 135) ! rate_const*O3 - rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 89) ! rate_const*HNO3 - rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 90) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 90) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 113) ! rate_const*N2O - rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 124) ! rate_const*NO - rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 125) ! rate_const*NO2 - rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 126) ! rate_const*NO3 - rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 126) ! rate_const*NO3 + rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 134) ! rate_const*O3 + rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 134) ! rate_const*O3 + rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 88) ! rate_const*HNO3 + rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 89) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 89) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 112) ! rate_const*N2O + rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 123) ! rate_const*NO + rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 124) ! rate_const*NO2 + rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 125) ! rate_const*NO3 + rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 125) ! rate_const*NO3 rxt_rates(:ncol,:, 19) = rxt_rates(:ncol,:, 19)*sol(:ncol,:, 1) ! rate_const*ALKNIT rxt_rates(:ncol,:, 20) = rxt_rates(:ncol,:, 20)*sol(:ncol,:, 2) ! rate_const*ALKOOH - rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 8) ! rate_const*BENZOOH - rxt_rates(:ncol,:, 22) = rxt_rates(:ncol,:, 22)*sol(:ncol,:, 9) ! rate_const*BEPOMUC - rxt_rates(:ncol,:, 23) = rxt_rates(:ncol,:, 23)*sol(:ncol,:, 10) ! rate_const*BIGALD - rxt_rates(:ncol,:, 24) = rxt_rates(:ncol,:, 24)*sol(:ncol,:, 11) ! rate_const*BIGALD1 - rxt_rates(:ncol,:, 25) = rxt_rates(:ncol,:, 25)*sol(:ncol,:, 12) ! rate_const*BIGALD2 - rxt_rates(:ncol,:, 26) = rxt_rates(:ncol,:, 26)*sol(:ncol,:, 13) ! rate_const*BIGALD3 - rxt_rates(:ncol,:, 27) = rxt_rates(:ncol,:, 27)*sol(:ncol,:, 14) ! rate_const*BIGALD4 - rxt_rates(:ncol,:, 28) = rxt_rates(:ncol,:, 28)*sol(:ncol,:, 23) ! rate_const*BZOOH - rxt_rates(:ncol,:, 29) = rxt_rates(:ncol,:, 29)*sol(:ncol,:, 27) ! rate_const*C2H5OOH - rxt_rates(:ncol,:, 30) = rxt_rates(:ncol,:, 30)*sol(:ncol,:, 30) ! rate_const*C3H7OOH - rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 32) ! rate_const*C6H5OOH - rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 42) ! rate_const*CH2O - rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 42) ! rate_const*CH2O - rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 45) ! rate_const*CH3CHO - rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 48) ! rate_const*CH3COCH3 - rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 49) ! rate_const*CH3COCHO - rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 51) ! rate_const*CH3COOOH - rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 53) ! rate_const*CH3OOH - rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 54) ! rate_const*CH4 - rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 54) ! rate_const*CH4 - rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 63) ! rate_const*CO2 - rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 72) ! rate_const*EOOH - rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 74) ! rate_const*GLYALD - rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 75) ! rate_const*GLYOXAL - rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 93) ! rate_const*HONITR - rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 94) ! rate_const*HPALD - rxt_rates(:ncol,:, 47) = rxt_rates(:ncol,:, 47)*sol(:ncol,:, 95) ! rate_const*HYAC - rxt_rates(:ncol,:, 48) = rxt_rates(:ncol,:, 48)*sol(:ncol,:, 102) ! rate_const*ISOPNOOH - rxt_rates(:ncol,:, 49) = rxt_rates(:ncol,:, 49)*sol(:ncol,:, 103) ! rate_const*ISOPOOH - rxt_rates(:ncol,:, 50) = rxt_rates(:ncol,:, 50)*sol(:ncol,:, 105) ! rate_const*MACR - rxt_rates(:ncol,:, 51) = rxt_rates(:ncol,:, 51)*sol(:ncol,:, 105) ! rate_const*MACR - rxt_rates(:ncol,:, 52) = rxt_rates(:ncol,:, 52)*sol(:ncol,:, 107) ! rate_const*MEK - rxt_rates(:ncol,:, 53) = rxt_rates(:ncol,:, 53)*sol(:ncol,:, 108) ! rate_const*MEKOOH - rxt_rates(:ncol,:, 54) = rxt_rates(:ncol,:, 54)*sol(:ncol,:, 109) ! rate_const*MPAN - rxt_rates(:ncol,:, 55) = rxt_rates(:ncol,:, 55)*sol(:ncol,:, 111) ! rate_const*MVK - rxt_rates(:ncol,:, 56) = rxt_rates(:ncol,:, 56)*sol(:ncol,:, 116) ! rate_const*NC4CHO - rxt_rates(:ncol,:, 57) = rxt_rates(:ncol,:, 57)*sol(:ncol,:, 127) ! rate_const*NOA - rxt_rates(:ncol,:, 58) = rxt_rates(:ncol,:, 58)*sol(:ncol,:, 128) ! rate_const*NTERPOOH - rxt_rates(:ncol,:, 59) = rxt_rates(:ncol,:, 59)*sol(:ncol,:, 139) ! rate_const*ONITR - rxt_rates(:ncol,:, 60) = rxt_rates(:ncol,:, 60)*sol(:ncol,:, 140) ! rate_const*PAN - rxt_rates(:ncol,:, 61) = rxt_rates(:ncol,:, 61)*sol(:ncol,:, 144) ! rate_const*PHENOOH - rxt_rates(:ncol,:, 62) = rxt_rates(:ncol,:, 62)*sol(:ncol,:, 147) ! rate_const*POOH - rxt_rates(:ncol,:, 63) = rxt_rates(:ncol,:, 63)*sol(:ncol,:, 148) ! rate_const*ROOH - rxt_rates(:ncol,:, 64) = rxt_rates(:ncol,:, 64)*sol(:ncol,:, 175) ! rate_const*TEPOMUC - rxt_rates(:ncol,:, 65) = rxt_rates(:ncol,:, 65)*sol(:ncol,:, 176) ! rate_const*TERP2OOH - rxt_rates(:ncol,:, 66) = rxt_rates(:ncol,:, 66)*sol(:ncol,:, 177) ! rate_const*TERPNIT - rxt_rates(:ncol,:, 67) = rxt_rates(:ncol,:, 67)*sol(:ncol,:, 178) ! rate_const*TERPOOH - rxt_rates(:ncol,:, 68) = rxt_rates(:ncol,:, 68)*sol(:ncol,:, 179) ! rate_const*TERPROD1 - rxt_rates(:ncol,:, 69) = rxt_rates(:ncol,:, 69)*sol(:ncol,:, 180) ! rate_const*TERPROD2 - rxt_rates(:ncol,:, 70) = rxt_rates(:ncol,:, 70)*sol(:ncol,:, 181) ! rate_const*TOLOOH - rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 183) ! rate_const*XOOH - rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 185) ! rate_const*XYLENOOH - rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 187) ! rate_const*XYLOLOOH - rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 18) ! rate_const*BRCL - rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 19) ! rate_const*BRO - rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 20) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 20) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 33) ! rate_const*CCL4 - rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 34) ! rate_const*CF2CLBR - rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 35) ! rate_const*CF3BR - rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 36) ! rate_const*CFC11 - rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 37) ! rate_const*CFC113 - rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 38) ! rate_const*CFC114 - rxt_rates(:ncol,:, 84) = rxt_rates(:ncol,:, 84)*sol(:ncol,:, 39) ! rate_const*CFC115 - rxt_rates(:ncol,:, 85) = rxt_rates(:ncol,:, 85)*sol(:ncol,:, 40) ! rate_const*CFC12 - rxt_rates(:ncol,:, 86) = rxt_rates(:ncol,:, 86)*sol(:ncol,:, 41) ! rate_const*CH2BR2 - rxt_rates(:ncol,:, 87) = rxt_rates(:ncol,:, 87)*sol(:ncol,:, 43) ! rate_const*CH3BR - rxt_rates(:ncol,:, 88) = rxt_rates(:ncol,:, 88)*sol(:ncol,:, 44) ! rate_const*CH3CCL3 - rxt_rates(:ncol,:, 89) = rxt_rates(:ncol,:, 89)*sol(:ncol,:, 46) ! rate_const*CH3CL - rxt_rates(:ncol,:, 90) = rxt_rates(:ncol,:, 90)*sol(:ncol,:, 55) ! rate_const*CHBR3 - rxt_rates(:ncol,:, 91) = rxt_rates(:ncol,:, 91)*sol(:ncol,:, 57) ! rate_const*CL2 - rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 58) ! rate_const*CL2O2 - rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 59) ! rate_const*CLO - rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 60) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 60) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 64) ! rate_const*COF2 - rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 65) ! rate_const*COFCL - rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 78) ! rate_const*H2402 - rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 81) ! rate_const*HBR - rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 82) ! rate_const*HCFC141B - rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 83) ! rate_const*HCFC142B - rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 84) ! rate_const*HCFC22 - rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 85) ! rate_const*HCL - rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 88) ! rate_const*HF - rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 91) ! rate_const*HOBR - rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 92) ! rate_const*HOCL - rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 137) ! rate_const*OCLO - rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 150) ! rate_const*SF6 - rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 80) ! rate_const*H2SO4 - rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 138) ! rate_const*OCS - rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 151) ! rate_const*SO - rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 152) ! rate_const*SO2 - rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 153) ! rate_const*SO3 - rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 158) ! rate_const*soa1_a1 - rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 159) ! rate_const*soa1_a2 - rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 160) ! rate_const*soa2_a1 - rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 161) ! rate_const*soa2_a2 - rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 162) ! rate_const*soa3_a1 - rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 163) ! rate_const*soa3_a2 - rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 164) ! rate_const*soa4_a1 - rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 165) ! rate_const*soa4_a2 - rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 166) ! rate_const*soa5_a1 - rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 167) ! rate_const*soa5_a2 - rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 71) ! rate_const*E90 - rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 218)*sol(:ncol,:, 77) ! rate_const*O1D*H2 - rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 218)*sol(:ncol,:, 231) ! rate_const*O1D*H2O - rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 218) ! rate_const*N2*O1D - rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 218) ! rate_const*O2*O1D - rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 218)*sol(:ncol,:, 135) ! rate_const*O1D*O3 - rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 134)*sol(:ncol,:, 135) ! rate_const*O*O3 - rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 134)*sol(:ncol,:, 134) ! rate_const*M*O*O - rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 134) ! rate_const*O2*M*O - rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 77)*sol(:ncol,:, 134) ! rate_const*H2*O - rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 79)*sol(:ncol,:, 134) ! rate_const*H2O2*O - rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 76)*sol(:ncol,:, 205) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 76)*sol(:ncol,:, 205) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 76)*sol(:ncol,:, 205) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 76) ! rate_const*O2*M*H - rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 205)*sol(:ncol,:, 134) ! rate_const*HO2*O - rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 205)*sol(:ncol,:, 135) ! rate_const*HO2*O3 - rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 76)*sol(:ncol,:, 135) ! rate_const*H*O3 - rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 219)*sol(:ncol,:, 77) ! rate_const*OH*H2 - rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 219)*sol(:ncol,:, 79) ! rate_const*OH*H2O2 - rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 219)*sol(:ncol,:, 205) ! rate_const*OH*HO2 - rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 219)*sol(:ncol,:, 134) ! rate_const*OH*O - rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 219)*sol(:ncol,:, 135) ! rate_const*OH*O3 - rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 219)*sol(:ncol,:, 219) ! rate_const*OH*OH - rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 219)*sol(:ncol,:, 219) ! rate_const*M*OH*OH - rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 205)*sol(:ncol,:, 205) ! rate_const*HO2*HO2 - rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 90)*sol(:ncol,:, 219) ! rate_const*HO2NO2*OH - rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 112)*sol(:ncol,:, 124) ! rate_const*N*NO - rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 112)*sol(:ncol,:, 125) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 112)*sol(:ncol,:, 125) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 112)*sol(:ncol,:, 125) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 112) ! rate_const*O2*N - rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 125)*sol(:ncol,:, 134) ! rate_const*NO2*O - rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 125)*sol(:ncol,:, 135) ! rate_const*NO2*O3 - rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 125)*sol(:ncol,:, 134) ! rate_const*M*NO2*O - rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 126)*sol(:ncol,:, 205) ! rate_const*NO3*HO2 - rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 126)*sol(:ncol,:, 124) ! rate_const*NO3*NO - rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 126)*sol(:ncol,:, 134) ! rate_const*NO3*O - rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 126)*sol(:ncol,:, 219) ! rate_const*NO3*OH - rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 112)*sol(:ncol,:, 219) ! rate_const*N*OH - rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 124)*sol(:ncol,:, 205) ! rate_const*NO*HO2 - rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 124)*sol(:ncol,:, 135) ! rate_const*NO*O3 - rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 124)*sol(:ncol,:, 134) ! rate_const*M*NO*O - rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 218)*sol(:ncol,:, 113) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 218)*sol(:ncol,:, 113) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 125)*sol(:ncol,:, 205) ! rate_const*M*NO2*HO2 - rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 125)*sol(:ncol,:, 126) ! rate_const*M*NO2*NO3 - rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 125)*sol(:ncol,:, 219) ! rate_const*M*NO2*OH - rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 89)*sol(:ncol,:, 219) ! rate_const*HNO3*OH - rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 90) ! rate_const*M*HO2NO2 - rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 114) ! rate_const*M*N2O5 - rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 56)*sol(:ncol,:, 42) ! rate_const*CL*CH2O - rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 56)*sol(:ncol,:, 54) ! rate_const*CL*CH4 - rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 56)*sol(:ncol,:, 77) ! rate_const*CL*H2 - rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 56)*sol(:ncol,:, 79) ! rate_const*CL*H2O2 - rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 56)*sol(:ncol,:, 205) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 56)*sol(:ncol,:, 205) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 56)*sol(:ncol,:, 135) ! rate_const*CL*O3 - rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 59)*sol(:ncol,:, 200) ! rate_const*CLO*CH3O2 - rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 59)*sol(:ncol,:, 59) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 59)*sol(:ncol,:, 59) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 59)*sol(:ncol,:, 59) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 59)*sol(:ncol,:, 205) ! rate_const*CLO*HO2 - rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 59)*sol(:ncol,:, 124) ! rate_const*CLO*NO - rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 60)*sol(:ncol,:, 56) ! rate_const*CLONO2*CL - rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 59)*sol(:ncol,:, 125) ! rate_const*M*CLO*NO2 - rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 60)*sol(:ncol,:, 134) ! rate_const*CLONO2*O - rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 60)*sol(:ncol,:, 219) ! rate_const*CLONO2*OH - rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 59)*sol(:ncol,:, 134) ! rate_const*CLO*O - rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 59)*sol(:ncol,:, 219) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 59)*sol(:ncol,:, 219) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 85)*sol(:ncol,:, 134) ! rate_const*HCL*O - rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 85)*sol(:ncol,:, 219) ! rate_const*HCL*OH - rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 92)*sol(:ncol,:, 56) ! rate_const*HOCL*CL - rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 92)*sol(:ncol,:, 134) ! rate_const*HOCL*O - rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 92)*sol(:ncol,:, 219) ! rate_const*HOCL*OH - rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 218)*sol(:ncol,:, 33) ! rate_const*O1D*CCL4 - rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 218)*sol(:ncol,:, 34) ! rate_const*O1D*CF2CLBR - rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 218)*sol(:ncol,:, 36) ! rate_const*O1D*CFC11 - rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 218)*sol(:ncol,:, 37) ! rate_const*O1D*CFC113 - rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 218)*sol(:ncol,:, 38) ! rate_const*O1D*CFC114 - rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 218)*sol(:ncol,:, 39) ! rate_const*O1D*CFC115 - rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 218)*sol(:ncol,:, 40) ! rate_const*O1D*CFC12 - rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 218)*sol(:ncol,:, 85) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 218)*sol(:ncol,:, 85) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 59)*sol(:ncol,:, 59) ! rate_const*M*CLO*CLO - rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 58) ! rate_const*M*CL2O2 - rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 17)*sol(:ncol,:, 42) ! rate_const*BR*CH2O - rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 17)*sol(:ncol,:, 205) ! rate_const*BR*HO2 - rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 17)*sol(:ncol,:, 135) ! rate_const*BR*O3 - rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 19)*sol(:ncol,:, 19) ! rate_const*BRO*BRO - rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 19)*sol(:ncol,:, 59) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 19)*sol(:ncol,:, 59) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 19)*sol(:ncol,:, 59) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 19)*sol(:ncol,:, 205) ! rate_const*BRO*HO2 - rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 19)*sol(:ncol,:, 124) ! rate_const*BRO*NO - rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 19)*sol(:ncol,:, 125) ! rate_const*M*BRO*NO2 - rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 20)*sol(:ncol,:, 134) ! rate_const*BRONO2*O - rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 19)*sol(:ncol,:, 134) ! rate_const*BRO*O - rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 19)*sol(:ncol,:, 219) ! rate_const*BRO*OH - rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 81)*sol(:ncol,:, 134) ! rate_const*HBR*O - rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 81)*sol(:ncol,:, 219) ! rate_const*HBR*OH - rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 91)*sol(:ncol,:, 134) ! rate_const*HOBR*O - rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 218)*sol(:ncol,:, 35) ! rate_const*O1D*CF3BR - rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 218)*sol(:ncol,:, 55) ! rate_const*O1D*CHBR3 - rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 218)*sol(:ncol,:, 78) ! rate_const*O1D*H2402 - rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 218)*sol(:ncol,:, 81) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 218)*sol(:ncol,:, 81) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 73)*sol(:ncol,:, 54) ! rate_const*F*CH4 - rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 73)*sol(:ncol,:, 77) ! rate_const*F*H2 - rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 73)*sol(:ncol,:, 231) ! rate_const*F*H2O - rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 73)*sol(:ncol,:, 89) ! rate_const*F*HNO3 - rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 218)*sol(:ncol,:, 64) ! rate_const*O1D*COF2 - rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 218)*sol(:ncol,:, 65) ! rate_const*O1D*COFCL - rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 41)*sol(:ncol,:, 56) ! rate_const*CH2BR2*CL - rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 41)*sol(:ncol,:, 219) ! rate_const*CH2BR2*OH - rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 43)*sol(:ncol,:, 56) ! rate_const*CH3BR*CL - rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 43)*sol(:ncol,:, 219) ! rate_const*CH3BR*OH - rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 44)*sol(:ncol,:, 219) ! rate_const*CH3CCL3*OH - rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 46)*sol(:ncol,:, 56) ! rate_const*CH3CL*CL - rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 46)*sol(:ncol,:, 219) ! rate_const*CH3CL*OH - rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 55)*sol(:ncol,:, 56) ! rate_const*CHBR3*CL - rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 55)*sol(:ncol,:, 219) ! rate_const*CHBR3*OH - rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 82)*sol(:ncol,:, 219) ! rate_const*HCFC141B*OH - rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 83)*sol(:ncol,:, 219) ! rate_const*HCFC142B*OH - rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 84)*sol(:ncol,:, 219) ! rate_const*HCFC22*OH - rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 218)*sol(:ncol,:, 41) ! rate_const*O1D*CH2BR2 - rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 218)*sol(:ncol,:, 43) ! rate_const*O1D*CH3BR - rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 218)*sol(:ncol,:, 82) ! rate_const*O1D*HCFC141B - rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 218)*sol(:ncol,:, 83) ! rate_const*O1D*HCFC142B - rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 218)*sol(:ncol,:, 84) ! rate_const*O1D*HCFC22 - rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 42)*sol(:ncol,:, 205) ! rate_const*CH2O*HO2 - rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 42)*sol(:ncol,:, 126) ! rate_const*CH2O*NO3 - rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 42)*sol(:ncol,:, 134) ! rate_const*CH2O*O - rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 42)*sol(:ncol,:, 219) ! rate_const*CH2O*OH - rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 200)*sol(:ncol,:, 200) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 200)*sol(:ncol,:, 200) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 200)*sol(:ncol,:, 205) ! rate_const*CH3O2*HO2 - rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 200)*sol(:ncol,:, 124) ! rate_const*CH3O2*NO - rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 52)*sol(:ncol,:, 219) ! rate_const*CH3OH*OH - rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 53)*sol(:ncol,:, 219) ! rate_const*CH3OOH*OH - rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 54)*sol(:ncol,:, 219) ! rate_const*CH4*OH - rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 86)*sol(:ncol,:, 219) ! rate_const*M*HCN*OH - rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 87)*sol(:ncol,:, 219) ! rate_const*HCOOH*OH - rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 206)*sol(:ncol,:, 205) ! rate_const*HOCH2OO*HO2 - rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 206) ! rate_const*HOCH2OO - rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 206)*sol(:ncol,:, 124) ! rate_const*HOCH2OO*NO - rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 218)*sol(:ncol,:, 54) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 218)*sol(:ncol,:, 54) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 218)*sol(:ncol,:, 54) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 218)*sol(:ncol,:, 86) ! rate_const*O1D*HCN - rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 62)*sol(:ncol,:, 219) ! rate_const*CO*OH - rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 24)*sol(:ncol,:, 56) ! rate_const*M*C2H2*CL - rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 24)*sol(:ncol,:, 219) ! rate_const*M*C2H2*OH - rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 25)*sol(:ncol,:, 56) ! rate_const*M*C2H4*CL - rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 25)*sol(:ncol,:, 135) ! rate_const*C2H4*O3 - rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 196)*sol(:ncol,:, 196) ! rate_const*C2H5O2*C2H5O2 - rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 196)*sol(:ncol,:, 200) ! rate_const*C2H5O2*CH3O2 - rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 196)*sol(:ncol,:, 205) ! rate_const*C2H5O2*HO2 - rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 196)*sol(:ncol,:, 124) ! rate_const*C2H5O2*NO - rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 26)*sol(:ncol,:, 219) ! rate_const*C2H5OH*OH - rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 27)*sol(:ncol,:, 219) ! rate_const*C2H5OOH*OH - rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 28)*sol(:ncol,:, 56) ! rate_const*C2H6*CL - rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 28)*sol(:ncol,:, 219) ! rate_const*C2H6*OH - rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 45)*sol(:ncol,:, 126) ! rate_const*CH3CHO*NO3 - rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 45)*sol(:ncol,:, 219) ! rate_const*CH3CHO*OH - rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 47)*sol(:ncol,:, 219) ! rate_const*CH3CN*OH - rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 199)*sol(:ncol,:, 199) ! rate_const*CH3CO3*CH3CO3 - rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 199)*sol(:ncol,:, 200) ! rate_const*CH3CO3*CH3O2 - rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 199)*sol(:ncol,:, 205) ! rate_const*CH3CO3*HO2 - rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 199)*sol(:ncol,:, 124) ! rate_const*CH3CO3*NO - rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 50)*sol(:ncol,:, 219) ! rate_const*CH3COOH*OH - rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 51)*sol(:ncol,:, 219) ! rate_const*CH3COOOH*OH - rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 204)*sol(:ncol,:, 205) ! rate_const*EO2*HO2 - rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 204)*sol(:ncol,:, 124) ! rate_const*EO2*NO - rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 203) ! rate_const*EO - rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 203) ! rate_const*O2*EO - rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 74)*sol(:ncol,:, 219) ! rate_const*GLYALD*OH - rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 75)*sol(:ncol,:, 219) ! rate_const*GLYOXAL*OH - rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 140)*sol(:ncol,:, 219) ! rate_const*PAN*OH - rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 25)*sol(:ncol,:, 219) ! rate_const*M*C2H4*OH - rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 199)*sol(:ncol,:, 125) ! rate_const*M*CH3CO3*NO2 - rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 140) ! rate_const*M*PAN - rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 29)*sol(:ncol,:, 126) ! rate_const*C3H6*NO3 - rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 29)*sol(:ncol,:, 135) ! rate_const*C3H6*O3 - rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 197)*sol(:ncol,:, 200) ! rate_const*C3H7O2*CH3O2 - rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 197)*sol(:ncol,:, 205) ! rate_const*C3H7O2*HO2 - rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 197)*sol(:ncol,:, 124) ! rate_const*C3H7O2*NO - rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 30)*sol(:ncol,:, 219) ! rate_const*C3H7OOH*OH - rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 31)*sol(:ncol,:, 219) ! rate_const*C3H8*OH - rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 49)*sol(:ncol,:, 126) ! rate_const*CH3COCHO*NO3 - rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 49)*sol(:ncol,:, 219) ! rate_const*CH3COCHO*OH - rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 95)*sol(:ncol,:, 219) ! rate_const*HYAC*OH - rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 127)*sol(:ncol,:, 219) ! rate_const*NOA*OH - rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 221)*sol(:ncol,:, 205) ! rate_const*PO2*HO2 - rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 221)*sol(:ncol,:, 124) ! rate_const*PO2*NO - rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 147)*sol(:ncol,:, 219) ! rate_const*POOH*OH - rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 222)*sol(:ncol,:, 200) ! rate_const*RO2*CH3O2 - rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 222)*sol(:ncol,:, 205) ! rate_const*RO2*HO2 - rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 222)*sol(:ncol,:, 124) ! rate_const*RO2*NO - rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 148)*sol(:ncol,:, 219) ! rate_const*ROOH*OH - rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 29)*sol(:ncol,:, 219) ! rate_const*M*C3H6*OH - rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 48)*sol(:ncol,:, 219) ! rate_const*CH3COCH3*OH - rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 16)*sol(:ncol,:, 126) ! rate_const*BIGENE*NO3 - rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 16)*sol(:ncol,:, 219) ! rate_const*BIGENE*OH - rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 202)*sol(:ncol,:, 124) ! rate_const*ENEO2*NO - rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 202)*sol(:ncol,:, 124) ! rate_const*ENEO2*NO - rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 93)*sol(:ncol,:, 219) ! rate_const*HONITR*OH - rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 211)*sol(:ncol,:, 199) ! rate_const*MACRO2*CH3CO3 - rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 211)*sol(:ncol,:, 200) ! rate_const*MACRO2*CH3O2 - rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 211)*sol(:ncol,:, 205) ! rate_const*MACRO2*HO2 - rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 211)*sol(:ncol,:, 126) ! rate_const*MACRO2*NO3 - rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 211)*sol(:ncol,:, 124) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 211)*sol(:ncol,:, 124) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 105)*sol(:ncol,:, 135) ! rate_const*MACR*O3 - rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 105)*sol(:ncol,:, 219) ! rate_const*MACR*OH - rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 106)*sol(:ncol,:, 219) ! rate_const*MACROOH*OH - rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 213)*sol(:ncol,:, 199) ! rate_const*MCO3*CH3CO3 - rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 213)*sol(:ncol,:, 200) ! rate_const*MCO3*CH3O2 - rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 213)*sol(:ncol,:, 205) ! rate_const*MCO3*HO2 - rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 213)*sol(:ncol,:, 213) ! rate_const*MCO3*MCO3 - rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 213)*sol(:ncol,:, 124) ! rate_const*MCO3*NO - rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 213)*sol(:ncol,:, 126) ! rate_const*MCO3*NO3 - rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 215)*sol(:ncol,:, 205) ! rate_const*MEKO2*HO2 - rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 215)*sol(:ncol,:, 124) ! rate_const*MEKO2*NO - rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 107)*sol(:ncol,:, 219) ! rate_const*MEK*OH - rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 108)*sol(:ncol,:, 219) ! rate_const*MEKOOH*OH - rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 109)*sol(:ncol,:, 219) ! rate_const*M*MPAN*OH - rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 111)*sol(:ncol,:, 135) ! rate_const*MVK*O3 - rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 111)*sol(:ncol,:, 219) ! rate_const*MVK*OH - rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 213)*sol(:ncol,:, 125) ! rate_const*M*MCO3*NO2 - rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 109) ! rate_const*M*MPAN - rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 1)*sol(:ncol,:, 219) ! rate_const*ALKNIT*OH - rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 191)*sol(:ncol,:, 205) ! rate_const*ALKO2*HO2 - rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 191)*sol(:ncol,:, 124) ! rate_const*ALKO2*NO - rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 191)*sol(:ncol,:, 124) ! rate_const*ALKO2*NO - rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 2)*sol(:ncol,:, 219) ! rate_const*ALKOOH*OH - rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 15)*sol(:ncol,:, 219) ! rate_const*BIGALK*OH - rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 94)*sol(:ncol,:, 219) ! rate_const*HPALD*OH - rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 96)*sol(:ncol,:, 219) ! rate_const*HYDRALD*OH - rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 97)*sol(:ncol,:, 219) ! rate_const*IEPOX*OH - rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 207)*sol(:ncol,:, 199) ! rate_const*ISOPAO2*CH3CO3 - rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 207)*sol(:ncol,:, 200) ! rate_const*ISOPAO2*CH3O2 - rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 207)*sol(:ncol,:, 205) ! rate_const*ISOPAO2*HO2 - rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 207)*sol(:ncol,:, 124) ! rate_const*ISOPAO2*NO - rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 207)*sol(:ncol,:, 126) ! rate_const*ISOPAO2*NO3 - rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 208)*sol(:ncol,:, 199) ! rate_const*ISOPBO2*CH3CO3 - rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 208)*sol(:ncol,:, 200) ! rate_const*ISOPBO2*CH3O2 - rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 208)*sol(:ncol,:, 205) ! rate_const*ISOPBO2*HO2 - rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 208) ! rate_const*ISOPBO2 - rxt_rates(:ncol,:, 374) = rxt_rates(:ncol,:, 374)*sol(:ncol,:, 208)*sol(:ncol,:, 124) ! rate_const*ISOPBO2*NO - rxt_rates(:ncol,:, 375) = rxt_rates(:ncol,:, 375)*sol(:ncol,:, 208)*sol(:ncol,:, 126) ! rate_const*ISOPBO2*NO3 - rxt_rates(:ncol,:, 376) = rxt_rates(:ncol,:, 376)*sol(:ncol,:, 99)*sol(:ncol,:, 219) ! rate_const*ISOPNITA*OH - rxt_rates(:ncol,:, 377) = rxt_rates(:ncol,:, 377)*sol(:ncol,:, 100)*sol(:ncol,:, 219) ! rate_const*ISOPNITB*OH - rxt_rates(:ncol,:, 378) = rxt_rates(:ncol,:, 378)*sol(:ncol,:, 98)*sol(:ncol,:, 126) ! rate_const*ISOP*NO3 - rxt_rates(:ncol,:, 379) = rxt_rates(:ncol,:, 379)*sol(:ncol,:, 101)*sol(:ncol,:, 199) ! rate_const*ISOPNO3*CH3CO3 - rxt_rates(:ncol,:, 380) = rxt_rates(:ncol,:, 380)*sol(:ncol,:, 101)*sol(:ncol,:, 200) ! rate_const*ISOPNO3*CH3O2 - rxt_rates(:ncol,:, 381) = rxt_rates(:ncol,:, 381)*sol(:ncol,:, 101)*sol(:ncol,:, 205) ! rate_const*ISOPNO3*HO2 - rxt_rates(:ncol,:, 382) = rxt_rates(:ncol,:, 382)*sol(:ncol,:, 101)*sol(:ncol,:, 124) ! rate_const*ISOPNO3*NO - rxt_rates(:ncol,:, 383) = rxt_rates(:ncol,:, 383)*sol(:ncol,:, 101)*sol(:ncol,:, 126) ! rate_const*ISOPNO3*NO3 - rxt_rates(:ncol,:, 384) = rxt_rates(:ncol,:, 384)*sol(:ncol,:, 102)*sol(:ncol,:, 219) ! rate_const*ISOPNOOH*OH - rxt_rates(:ncol,:, 385) = rxt_rates(:ncol,:, 385)*sol(:ncol,:, 98)*sol(:ncol,:, 135) ! rate_const*ISOP*O3 - rxt_rates(:ncol,:, 386) = rxt_rates(:ncol,:, 386)*sol(:ncol,:, 98)*sol(:ncol,:, 219) ! rate_const*ISOP*OH - rxt_rates(:ncol,:, 387) = rxt_rates(:ncol,:, 387)*sol(:ncol,:, 103)*sol(:ncol,:, 219) ! rate_const*ISOPOOH*OH - rxt_rates(:ncol,:, 388) = rxt_rates(:ncol,:, 388)*sol(:ncol,:, 115)*sol(:ncol,:, 219) ! rate_const*NC4CH2OH*OH - rxt_rates(:ncol,:, 389) = rxt_rates(:ncol,:, 389)*sol(:ncol,:, 116)*sol(:ncol,:, 219) ! rate_const*NC4CHO*OH - rxt_rates(:ncol,:, 390) = rxt_rates(:ncol,:, 390)*sol(:ncol,:, 227)*sol(:ncol,:, 199) ! rate_const*XO2*CH3CO3 - rxt_rates(:ncol,:, 391) = rxt_rates(:ncol,:, 391)*sol(:ncol,:, 227)*sol(:ncol,:, 200) ! rate_const*XO2*CH3O2 - rxt_rates(:ncol,:, 392) = rxt_rates(:ncol,:, 392)*sol(:ncol,:, 227)*sol(:ncol,:, 205) ! rate_const*XO2*HO2 - rxt_rates(:ncol,:, 393) = rxt_rates(:ncol,:, 393)*sol(:ncol,:, 227)*sol(:ncol,:, 124) ! rate_const*XO2*NO - rxt_rates(:ncol,:, 394) = rxt_rates(:ncol,:, 394)*sol(:ncol,:, 227)*sol(:ncol,:, 126) ! rate_const*XO2*NO3 - rxt_rates(:ncol,:, 395) = rxt_rates(:ncol,:, 395)*sol(:ncol,:, 183)*sol(:ncol,:, 219) ! rate_const*XOOH*OH - rxt_rates(:ncol,:, 396) = rxt_rates(:ncol,:, 396)*sol(:ncol,:, 190)*sol(:ncol,:, 205) ! rate_const*ACBZO2*HO2 - rxt_rates(:ncol,:, 397) = rxt_rates(:ncol,:, 397)*sol(:ncol,:, 190)*sol(:ncol,:, 124) ! rate_const*ACBZO2*NO - rxt_rates(:ncol,:, 398) = rxt_rates(:ncol,:, 398)*sol(:ncol,:, 7)*sol(:ncol,:, 219) ! rate_const*BENZENE*OH - rxt_rates(:ncol,:, 399) = rxt_rates(:ncol,:, 399)*sol(:ncol,:, 193)*sol(:ncol,:, 205) ! rate_const*BENZO2*HO2 - rxt_rates(:ncol,:, 400) = rxt_rates(:ncol,:, 400)*sol(:ncol,:, 193)*sol(:ncol,:, 124) ! rate_const*BENZO2*NO - rxt_rates(:ncol,:, 401) = rxt_rates(:ncol,:, 401)*sol(:ncol,:, 8)*sol(:ncol,:, 219) ! rate_const*BENZOOH*OH - rxt_rates(:ncol,:, 402) = rxt_rates(:ncol,:, 402)*sol(:ncol,:, 22)*sol(:ncol,:, 219) ! rate_const*BZALD*OH - rxt_rates(:ncol,:, 403) = rxt_rates(:ncol,:, 403)*sol(:ncol,:, 195)*sol(:ncol,:, 205) ! rate_const*BZOO*HO2 - rxt_rates(:ncol,:, 404) = rxt_rates(:ncol,:, 404)*sol(:ncol,:, 23)*sol(:ncol,:, 219) ! rate_const*BZOOH*OH - rxt_rates(:ncol,:, 405) = rxt_rates(:ncol,:, 405)*sol(:ncol,:, 195)*sol(:ncol,:, 124) ! rate_const*BZOO*NO - rxt_rates(:ncol,:, 406) = rxt_rates(:ncol,:, 406)*sol(:ncol,:, 198)*sol(:ncol,:, 205) ! rate_const*C6H5O2*HO2 - rxt_rates(:ncol,:, 407) = rxt_rates(:ncol,:, 407)*sol(:ncol,:, 198)*sol(:ncol,:, 124) ! rate_const*C6H5O2*NO - rxt_rates(:ncol,:, 408) = rxt_rates(:ncol,:, 408)*sol(:ncol,:, 32)*sol(:ncol,:, 219) ! rate_const*C6H5OOH*OH - rxt_rates(:ncol,:, 409) = rxt_rates(:ncol,:, 409)*sol(:ncol,:, 66)*sol(:ncol,:, 219) ! rate_const*CRESOL*OH - rxt_rates(:ncol,:, 410) = rxt_rates(:ncol,:, 410)*sol(:ncol,:, 201)*sol(:ncol,:, 205) ! rate_const*DICARBO2*HO2 - rxt_rates(:ncol,:, 411) = rxt_rates(:ncol,:, 411)*sol(:ncol,:, 201)*sol(:ncol,:, 124) ! rate_const*DICARBO2*NO - rxt_rates(:ncol,:, 412) = rxt_rates(:ncol,:, 412)*sol(:ncol,:, 201)*sol(:ncol,:, 125) ! rate_const*M*DICARBO2*NO2 - rxt_rates(:ncol,:, 413) = rxt_rates(:ncol,:, 413)*sol(:ncol,:, 212)*sol(:ncol,:, 205) ! rate_const*MALO2*HO2 - rxt_rates(:ncol,:, 414) = rxt_rates(:ncol,:, 414)*sol(:ncol,:, 212)*sol(:ncol,:, 124) ! rate_const*MALO2*NO - rxt_rates(:ncol,:, 415) = rxt_rates(:ncol,:, 415)*sol(:ncol,:, 212)*sol(:ncol,:, 125) ! rate_const*M*MALO2*NO2 - rxt_rates(:ncol,:, 416) = rxt_rates(:ncol,:, 416)*sol(:ncol,:, 214)*sol(:ncol,:, 205) ! rate_const*MDIALO2*HO2 - rxt_rates(:ncol,:, 417) = rxt_rates(:ncol,:, 417)*sol(:ncol,:, 214)*sol(:ncol,:, 124) ! rate_const*MDIALO2*NO - rxt_rates(:ncol,:, 418) = rxt_rates(:ncol,:, 418)*sol(:ncol,:, 214)*sol(:ncol,:, 125) ! rate_const*M*MDIALO2*NO2 - rxt_rates(:ncol,:, 419) = rxt_rates(:ncol,:, 419)*sol(:ncol,:, 220)*sol(:ncol,:, 205) ! rate_const*PHENO2*HO2 - rxt_rates(:ncol,:, 420) = rxt_rates(:ncol,:, 420)*sol(:ncol,:, 220)*sol(:ncol,:, 124) ! rate_const*PHENO2*NO - rxt_rates(:ncol,:, 421) = rxt_rates(:ncol,:, 421)*sol(:ncol,:, 143)*sol(:ncol,:, 219) ! rate_const*PHENOL*OH - rxt_rates(:ncol,:, 422) = rxt_rates(:ncol,:, 422)*sol(:ncol,:, 142)*sol(:ncol,:, 125) ! rate_const*PHENO*NO2 - rxt_rates(:ncol,:, 423) = rxt_rates(:ncol,:, 423)*sol(:ncol,:, 142)*sol(:ncol,:, 135) ! rate_const*PHENO*O3 - rxt_rates(:ncol,:, 424) = rxt_rates(:ncol,:, 424)*sol(:ncol,:, 144)*sol(:ncol,:, 219) ! rate_const*PHENOOH*OH - rxt_rates(:ncol,:, 425) = rxt_rates(:ncol,:, 425)*sol(:ncol,:, 190)*sol(:ncol,:, 125) ! rate_const*M*ACBZO2*NO2 - rxt_rates(:ncol,:, 426) = rxt_rates(:ncol,:, 426)*sol(:ncol,:, 225)*sol(:ncol,:, 205) ! rate_const*TOLO2*HO2 - rxt_rates(:ncol,:, 427) = rxt_rates(:ncol,:, 427)*sol(:ncol,:, 225)*sol(:ncol,:, 124) ! rate_const*TOLO2*NO - rxt_rates(:ncol,:, 428) = rxt_rates(:ncol,:, 428)*sol(:ncol,:, 181)*sol(:ncol,:, 219) ! rate_const*TOLOOH*OH - rxt_rates(:ncol,:, 429) = rxt_rates(:ncol,:, 429)*sol(:ncol,:, 182)*sol(:ncol,:, 219) ! rate_const*TOLUENE*OH - rxt_rates(:ncol,:, 430) = rxt_rates(:ncol,:, 430)*sol(:ncol,:, 141) ! rate_const*M*PBZNIT - rxt_rates(:ncol,:, 431) = rxt_rates(:ncol,:, 431)*sol(:ncol,:, 184)*sol(:ncol,:, 219) ! rate_const*XYLENES*OH - rxt_rates(:ncol,:, 432) = rxt_rates(:ncol,:, 432)*sol(:ncol,:, 228)*sol(:ncol,:, 205) ! rate_const*XYLENO2*HO2 - rxt_rates(:ncol,:, 433) = rxt_rates(:ncol,:, 433)*sol(:ncol,:, 228)*sol(:ncol,:, 124) ! rate_const*XYLENO2*NO - rxt_rates(:ncol,:, 434) = rxt_rates(:ncol,:, 434)*sol(:ncol,:, 185)*sol(:ncol,:, 219) ! rate_const*XYLENOOH*OH - rxt_rates(:ncol,:, 435) = rxt_rates(:ncol,:, 435)*sol(:ncol,:, 230)*sol(:ncol,:, 205) ! rate_const*XYLOLO2*HO2 - rxt_rates(:ncol,:, 436) = rxt_rates(:ncol,:, 436)*sol(:ncol,:, 230)*sol(:ncol,:, 124) ! rate_const*XYLOLO2*NO - rxt_rates(:ncol,:, 437) = rxt_rates(:ncol,:, 437)*sol(:ncol,:, 186)*sol(:ncol,:, 219) ! rate_const*XYLOL*OH - rxt_rates(:ncol,:, 438) = rxt_rates(:ncol,:, 438)*sol(:ncol,:, 187)*sol(:ncol,:, 219) ! rate_const*XYLOLOOH*OH - rxt_rates(:ncol,:, 439) = rxt_rates(:ncol,:, 439)*sol(:ncol,:, 6)*sol(:ncol,:, 126) ! rate_const*BCARY*NO3 - rxt_rates(:ncol,:, 440) = rxt_rates(:ncol,:, 440)*sol(:ncol,:, 6)*sol(:ncol,:, 135) ! rate_const*BCARY*O3 - rxt_rates(:ncol,:, 441) = rxt_rates(:ncol,:, 441)*sol(:ncol,:, 6)*sol(:ncol,:, 219) ! rate_const*BCARY*OH - rxt_rates(:ncol,:, 442) = rxt_rates(:ncol,:, 442)*sol(:ncol,:, 110)*sol(:ncol,:, 126) ! rate_const*MTERP*NO3 - rxt_rates(:ncol,:, 443) = rxt_rates(:ncol,:, 443)*sol(:ncol,:, 110)*sol(:ncol,:, 135) ! rate_const*MTERP*O3 - rxt_rates(:ncol,:, 444) = rxt_rates(:ncol,:, 444)*sol(:ncol,:, 110)*sol(:ncol,:, 219) ! rate_const*MTERP*OH - rxt_rates(:ncol,:, 445) = rxt_rates(:ncol,:, 445)*sol(:ncol,:, 217)*sol(:ncol,:, 200) ! rate_const*NTERPO2*CH3O2 - rxt_rates(:ncol,:, 446) = rxt_rates(:ncol,:, 446)*sol(:ncol,:, 217)*sol(:ncol,:, 205) ! rate_const*NTERPO2*HO2 - rxt_rates(:ncol,:, 447) = rxt_rates(:ncol,:, 447)*sol(:ncol,:, 217)*sol(:ncol,:, 124) ! rate_const*NTERPO2*NO - rxt_rates(:ncol,:, 448) = rxt_rates(:ncol,:, 448)*sol(:ncol,:, 217)*sol(:ncol,:, 126) ! rate_const*NTERPO2*NO3 - rxt_rates(:ncol,:, 449) = rxt_rates(:ncol,:, 449)*sol(:ncol,:, 128)*sol(:ncol,:, 219) ! rate_const*NTERPOOH*OH - rxt_rates(:ncol,:, 450) = rxt_rates(:ncol,:, 450)*sol(:ncol,:, 223)*sol(:ncol,:, 200) ! rate_const*TERP2O2*CH3O2 - rxt_rates(:ncol,:, 451) = rxt_rates(:ncol,:, 451)*sol(:ncol,:, 223)*sol(:ncol,:, 205) ! rate_const*TERP2O2*HO2 - rxt_rates(:ncol,:, 452) = rxt_rates(:ncol,:, 452)*sol(:ncol,:, 223)*sol(:ncol,:, 124) ! rate_const*TERP2O2*NO - rxt_rates(:ncol,:, 453) = rxt_rates(:ncol,:, 453)*sol(:ncol,:, 176)*sol(:ncol,:, 219) ! rate_const*TERP2OOH*OH - rxt_rates(:ncol,:, 454) = rxt_rates(:ncol,:, 454)*sol(:ncol,:, 177)*sol(:ncol,:, 219) ! rate_const*TERPNIT*OH - rxt_rates(:ncol,:, 455) = rxt_rates(:ncol,:, 455)*sol(:ncol,:, 224)*sol(:ncol,:, 200) ! rate_const*TERPO2*CH3O2 - rxt_rates(:ncol,:, 456) = rxt_rates(:ncol,:, 456)*sol(:ncol,:, 224)*sol(:ncol,:, 205) ! rate_const*TERPO2*HO2 - rxt_rates(:ncol,:, 457) = rxt_rates(:ncol,:, 457)*sol(:ncol,:, 224)*sol(:ncol,:, 124) ! rate_const*TERPO2*NO - rxt_rates(:ncol,:, 458) = rxt_rates(:ncol,:, 458)*sol(:ncol,:, 178)*sol(:ncol,:, 219) ! rate_const*TERPOOH*OH - rxt_rates(:ncol,:, 459) = rxt_rates(:ncol,:, 459)*sol(:ncol,:, 179)*sol(:ncol,:, 126) ! rate_const*TERPROD1*NO3 - rxt_rates(:ncol,:, 460) = rxt_rates(:ncol,:, 460)*sol(:ncol,:, 179)*sol(:ncol,:, 219) ! rate_const*TERPROD1*OH - rxt_rates(:ncol,:, 461) = rxt_rates(:ncol,:, 461)*sol(:ncol,:, 180)*sol(:ncol,:, 219) ! rate_const*TERPROD2*OH - rxt_rates(:ncol,:, 462) = rxt_rates(:ncol,:, 462)*sol(:ncol,:, 67)*sol(:ncol,:, 126) ! rate_const*DMS*NO3 - rxt_rates(:ncol,:, 463) = rxt_rates(:ncol,:, 463)*sol(:ncol,:, 67)*sol(:ncol,:, 219) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 464) = rxt_rates(:ncol,:, 464)*sol(:ncol,:, 138)*sol(:ncol,:, 134) ! rate_const*OCS*O - rxt_rates(:ncol,:, 465) = rxt_rates(:ncol,:, 465)*sol(:ncol,:, 138)*sol(:ncol,:, 219) ! rate_const*OCS*OH - rxt_rates(:ncol,:, 466) = rxt_rates(:ncol,:, 466)*sol(:ncol,:, 149) ! rate_const*O2*S - rxt_rates(:ncol,:, 467) = rxt_rates(:ncol,:, 467)*sol(:ncol,:, 152)*sol(:ncol,:, 219) ! rate_const*M*SO2*OH - rxt_rates(:ncol,:, 468) = rxt_rates(:ncol,:, 468)*sol(:ncol,:, 149)*sol(:ncol,:, 135) ! rate_const*S*O3 - rxt_rates(:ncol,:, 469) = rxt_rates(:ncol,:, 469)*sol(:ncol,:, 151)*sol(:ncol,:, 19) ! rate_const*SO*BRO - rxt_rates(:ncol,:, 470) = rxt_rates(:ncol,:, 470)*sol(:ncol,:, 151)*sol(:ncol,:, 59) ! rate_const*SO*CLO - rxt_rates(:ncol,:, 471) = rxt_rates(:ncol,:, 471)*sol(:ncol,:, 149)*sol(:ncol,:, 219) ! rate_const*S*OH - rxt_rates(:ncol,:, 472) = rxt_rates(:ncol,:, 472)*sol(:ncol,:, 151)*sol(:ncol,:, 125) ! rate_const*SO*NO2 - rxt_rates(:ncol,:, 473) = rxt_rates(:ncol,:, 473)*sol(:ncol,:, 151) ! rate_const*O2*SO - rxt_rates(:ncol,:, 474) = rxt_rates(:ncol,:, 474)*sol(:ncol,:, 151)*sol(:ncol,:, 135) ! rate_const*SO*O3 - rxt_rates(:ncol,:, 475) = rxt_rates(:ncol,:, 475)*sol(:ncol,:, 151)*sol(:ncol,:, 137) ! rate_const*SO*OCLO - rxt_rates(:ncol,:, 476) = rxt_rates(:ncol,:, 476)*sol(:ncol,:, 151)*sol(:ncol,:, 219) ! rate_const*SO*OH - rxt_rates(:ncol,:, 477) = rxt_rates(:ncol,:, 477)*sol(:ncol,:, 67)*sol(:ncol,:, 219) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 478) = rxt_rates(:ncol,:, 478)*sol(:ncol,:, 153)*sol(:ncol,:, 231) ! rate_const*SO3*H2O - rxt_rates(:ncol,:, 479) = rxt_rates(:ncol,:, 479)*sol(:ncol,:, 120)*sol(:ncol,:, 219) ! rate_const*NH3*OH - rxt_rates(:ncol,:, 480) = rxt_rates(:ncol,:, 480)*sol(:ncol,:, 75) ! rate_const*GLYOXAL - rxt_rates(:ncol,:, 481) = rxt_rates(:ncol,:, 481)*sol(:ncol,:, 205) ! rate_const*HO2 - rxt_rates(:ncol,:, 482) = rxt_rates(:ncol,:, 482)*sol(:ncol,:, 93) ! rate_const*HONITR - rxt_rates(:ncol,:, 483) = rxt_rates(:ncol,:, 483)*sol(:ncol,:, 99) ! rate_const*ISOPNITA - rxt_rates(:ncol,:, 484) = rxt_rates(:ncol,:, 484)*sol(:ncol,:, 100) ! rate_const*ISOPNITB - rxt_rates(:ncol,:, 485) = rxt_rates(:ncol,:, 485)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 486) = rxt_rates(:ncol,:, 486)*sol(:ncol,:, 115) ! rate_const*NC4CH2OH - rxt_rates(:ncol,:, 487) = rxt_rates(:ncol,:, 487)*sol(:ncol,:, 116) ! rate_const*NC4CHO - rxt_rates(:ncol,:, 488) = rxt_rates(:ncol,:, 488)*sol(:ncol,:, 121) ! rate_const*NH4 - rxt_rates(:ncol,:, 489) = rxt_rates(:ncol,:, 489)*sol(:ncol,:, 125) ! rate_const*NO2 - rxt_rates(:ncol,:, 490) = rxt_rates(:ncol,:, 490)*sol(:ncol,:, 126) ! rate_const*NO3 - rxt_rates(:ncol,:, 491) = rxt_rates(:ncol,:, 491)*sol(:ncol,:, 128) ! rate_const*NTERPOOH - rxt_rates(:ncol,:, 492) = rxt_rates(:ncol,:, 492)*sol(:ncol,:, 139) ! rate_const*ONITR - rxt_rates(:ncol,:, 493) = rxt_rates(:ncol,:, 493)*sol(:ncol,:, 177) ! rate_const*TERPNIT - rxt_rates(:ncol,:, 494) = rxt_rates(:ncol,:, 494)*sol(:ncol,:, 6)*sol(:ncol,:, 126) ! rate_const*BCARY*NO3 - rxt_rates(:ncol,:, 495) = rxt_rates(:ncol,:, 495)*sol(:ncol,:, 192)*sol(:ncol,:, 205) ! rate_const*BCARYO2VBS*HO2 - rxt_rates(:ncol,:, 496) = rxt_rates(:ncol,:, 496)*sol(:ncol,:, 192)*sol(:ncol,:, 124) ! rate_const*BCARYO2VBS*NO - rxt_rates(:ncol,:, 497) = rxt_rates(:ncol,:, 497)*sol(:ncol,:, 6)*sol(:ncol,:, 135) ! rate_const*BCARY*O3 - rxt_rates(:ncol,:, 498) = rxt_rates(:ncol,:, 498)*sol(:ncol,:, 6)*sol(:ncol,:, 219) ! rate_const*BCARY*OH - rxt_rates(:ncol,:, 499) = rxt_rates(:ncol,:, 499)*sol(:ncol,:, 7)*sol(:ncol,:, 219) ! rate_const*BENZENE*OH - rxt_rates(:ncol,:, 500) = rxt_rates(:ncol,:, 500)*sol(:ncol,:, 194)*sol(:ncol,:, 205) ! rate_const*BENZO2VBS*HO2 - rxt_rates(:ncol,:, 501) = rxt_rates(:ncol,:, 501)*sol(:ncol,:, 194)*sol(:ncol,:, 124) ! rate_const*BENZO2VBS*NO - rxt_rates(:ncol,:, 502) = rxt_rates(:ncol,:, 502)*sol(:ncol,:, 98)*sol(:ncol,:, 126) ! rate_const*ISOP*NO3 - rxt_rates(:ncol,:, 503) = rxt_rates(:ncol,:, 503)*sol(:ncol,:, 209)*sol(:ncol,:, 205) ! rate_const*ISOPO2VBS*HO2 - rxt_rates(:ncol,:, 504) = rxt_rates(:ncol,:, 504)*sol(:ncol,:, 209)*sol(:ncol,:, 124) ! rate_const*ISOPO2VBS*NO - rxt_rates(:ncol,:, 505) = rxt_rates(:ncol,:, 505)*sol(:ncol,:, 98)*sol(:ncol,:, 135) ! rate_const*ISOP*O3 - rxt_rates(:ncol,:, 506) = rxt_rates(:ncol,:, 506)*sol(:ncol,:, 98)*sol(:ncol,:, 219) ! rate_const*ISOP*OH - rxt_rates(:ncol,:, 507) = rxt_rates(:ncol,:, 507)*sol(:ncol,:, 210)*sol(:ncol,:, 205) ! rate_const*IVOCO2VBS*HO2 - rxt_rates(:ncol,:, 508) = rxt_rates(:ncol,:, 508)*sol(:ncol,:, 210)*sol(:ncol,:, 124) ! rate_const*IVOCO2VBS*NO - rxt_rates(:ncol,:, 509) = rxt_rates(:ncol,:, 509)*sol(:ncol,:, 104)*sol(:ncol,:, 219) ! rate_const*IVOC*OH - rxt_rates(:ncol,:, 510) = rxt_rates(:ncol,:, 510)*sol(:ncol,:, 110)*sol(:ncol,:, 126) ! rate_const*MTERP*NO3 - rxt_rates(:ncol,:, 511) = rxt_rates(:ncol,:, 511)*sol(:ncol,:, 216)*sol(:ncol,:, 205) ! rate_const*MTERPO2VBS*HO2 - rxt_rates(:ncol,:, 512) = rxt_rates(:ncol,:, 512)*sol(:ncol,:, 216)*sol(:ncol,:, 124) ! rate_const*MTERPO2VBS*NO - rxt_rates(:ncol,:, 513) = rxt_rates(:ncol,:, 513)*sol(:ncol,:, 110)*sol(:ncol,:, 135) ! rate_const*MTERP*O3 - rxt_rates(:ncol,:, 514) = rxt_rates(:ncol,:, 514)*sol(:ncol,:, 110)*sol(:ncol,:, 219) ! rate_const*MTERP*OH - rxt_rates(:ncol,:, 515) = rxt_rates(:ncol,:, 515)*sol(:ncol,:, 174)*sol(:ncol,:, 219) ! rate_const*SVOC*OH - rxt_rates(:ncol,:, 516) = rxt_rates(:ncol,:, 516)*sol(:ncol,:, 182)*sol(:ncol,:, 219) ! rate_const*TOLUENE*OH - rxt_rates(:ncol,:, 517) = rxt_rates(:ncol,:, 517)*sol(:ncol,:, 226)*sol(:ncol,:, 205) ! rate_const*TOLUO2VBS*HO2 - rxt_rates(:ncol,:, 518) = rxt_rates(:ncol,:, 518)*sol(:ncol,:, 226)*sol(:ncol,:, 124) ! rate_const*TOLUO2VBS*NO - rxt_rates(:ncol,:, 519) = rxt_rates(:ncol,:, 519)*sol(:ncol,:, 184)*sol(:ncol,:, 219) ! rate_const*XYLENES*OH - rxt_rates(:ncol,:, 520) = rxt_rates(:ncol,:, 520)*sol(:ncol,:, 229)*sol(:ncol,:, 205) ! rate_const*XYLEO2VBS*HO2 - rxt_rates(:ncol,:, 521) = rxt_rates(:ncol,:, 521)*sol(:ncol,:, 229)*sol(:ncol,:, 124) ! rate_const*XYLEO2VBS*NO - rxt_rates(:ncol,:, 522) = rxt_rates(:ncol,:, 522)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 523) = rxt_rates(:ncol,:, 523)*sol(:ncol,:, 92)*sol(:ncol,:, 85) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 524) = rxt_rates(:ncol,:, 524)*sol(:ncol,:, 20) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 525) = rxt_rates(:ncol,:, 525)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 526) = rxt_rates(:ncol,:, 526)*sol(:ncol,:, 60) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 527) = rxt_rates(:ncol,:, 527)*sol(:ncol,:, 20) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 528) = rxt_rates(:ncol,:, 528)*sol(:ncol,:, 60)*sol(:ncol,:, 85) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 529) = rxt_rates(:ncol,:, 529)*sol(:ncol,:, 92)*sol(:ncol,:, 85) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 530) = rxt_rates(:ncol,:, 530)*sol(:ncol,:, 91)*sol(:ncol,:, 85) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 531) = rxt_rates(:ncol,:, 531)*sol(:ncol,:, 60) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 532) = rxt_rates(:ncol,:, 532)*sol(:ncol,:, 20) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 533) = rxt_rates(:ncol,:, 533)*sol(:ncol,:, 60)*sol(:ncol,:, 85) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 534) = rxt_rates(:ncol,:, 534)*sol(:ncol,:, 92)*sol(:ncol,:, 85) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 535) = rxt_rates(:ncol,:, 535)*sol(:ncol,:, 91)*sol(:ncol,:, 85) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 536) = rxt_rates(:ncol,:, 536)*sol(:ncol,:, 114) ! rate_const*N2O5 - rxt_rates(:ncol,:, 537) = rxt_rates(:ncol,:, 537)*sol(:ncol,:, 60) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 538) = rxt_rates(:ncol,:, 538)*sol(:ncol,:, 60)*sol(:ncol,:, 85) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 539) = rxt_rates(:ncol,:, 539)*sol(:ncol,:, 123) ! rate_const*NH_50 - rxt_rates(:ncol,:, 540) = rxt_rates(:ncol,:, 540)*sol(:ncol,:, 122) ! rate_const*NH_5 - rxt_rates(:ncol,:, 541) = rxt_rates(:ncol,:, 541)*sol(:ncol,:, 173) ! rate_const*ST80_25 + rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 7) ! rate_const*BENZOOH + rxt_rates(:ncol,:, 22) = rxt_rates(:ncol,:, 22)*sol(:ncol,:, 8) ! rate_const*BEPOMUC + rxt_rates(:ncol,:, 23) = rxt_rates(:ncol,:, 23)*sol(:ncol,:, 9) ! rate_const*BIGALD + rxt_rates(:ncol,:, 24) = rxt_rates(:ncol,:, 24)*sol(:ncol,:, 10) ! rate_const*BIGALD1 + rxt_rates(:ncol,:, 25) = rxt_rates(:ncol,:, 25)*sol(:ncol,:, 11) ! rate_const*BIGALD2 + rxt_rates(:ncol,:, 26) = rxt_rates(:ncol,:, 26)*sol(:ncol,:, 12) ! rate_const*BIGALD3 + rxt_rates(:ncol,:, 27) = rxt_rates(:ncol,:, 27)*sol(:ncol,:, 13) ! rate_const*BIGALD4 + rxt_rates(:ncol,:, 28) = rxt_rates(:ncol,:, 28)*sol(:ncol,:, 22) ! rate_const*BZOOH + rxt_rates(:ncol,:, 29) = rxt_rates(:ncol,:, 29)*sol(:ncol,:, 26) ! rate_const*C2H5OOH + rxt_rates(:ncol,:, 30) = rxt_rates(:ncol,:, 30)*sol(:ncol,:, 29) ! rate_const*C3H7OOH + rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 31) ! rate_const*C6H5OOH + rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 41) ! rate_const*CH2O + rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 41) ! rate_const*CH2O + rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 44) ! rate_const*CH3CHO + rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 47) ! rate_const*CH3COCH3 + rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 48) ! rate_const*CH3COCHO + rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 50) ! rate_const*CH3COOOH + rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 52) ! rate_const*CH3OOH + rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 53) ! rate_const*CH4 + rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 53) ! rate_const*CH4 + rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 62) ! rate_const*CO2 + rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 71) ! rate_const*EOOH + rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 73) ! rate_const*GLYALD + rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 74) ! rate_const*GLYOXAL + rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 92) ! rate_const*HONITR + rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 93) ! rate_const*HPALD + rxt_rates(:ncol,:, 47) = rxt_rates(:ncol,:, 47)*sol(:ncol,:, 94) ! rate_const*HYAC + rxt_rates(:ncol,:, 48) = rxt_rates(:ncol,:, 48)*sol(:ncol,:, 101) ! rate_const*ISOPNOOH + rxt_rates(:ncol,:, 49) = rxt_rates(:ncol,:, 49)*sol(:ncol,:, 102) ! rate_const*ISOPOOH + rxt_rates(:ncol,:, 50) = rxt_rates(:ncol,:, 50)*sol(:ncol,:, 104) ! rate_const*MACR + rxt_rates(:ncol,:, 51) = rxt_rates(:ncol,:, 51)*sol(:ncol,:, 104) ! rate_const*MACR + rxt_rates(:ncol,:, 52) = rxt_rates(:ncol,:, 52)*sol(:ncol,:, 106) ! rate_const*MEK + rxt_rates(:ncol,:, 53) = rxt_rates(:ncol,:, 53)*sol(:ncol,:, 107) ! rate_const*MEKOOH + rxt_rates(:ncol,:, 54) = rxt_rates(:ncol,:, 54)*sol(:ncol,:, 108) ! rate_const*MPAN + rxt_rates(:ncol,:, 55) = rxt_rates(:ncol,:, 55)*sol(:ncol,:, 110) ! rate_const*MVK + rxt_rates(:ncol,:, 56) = rxt_rates(:ncol,:, 56)*sol(:ncol,:, 115) ! rate_const*NC4CHO + rxt_rates(:ncol,:, 57) = rxt_rates(:ncol,:, 57)*sol(:ncol,:, 126) ! rate_const*NOA + rxt_rates(:ncol,:, 58) = rxt_rates(:ncol,:, 58)*sol(:ncol,:, 127) ! rate_const*NTERPOOH + rxt_rates(:ncol,:, 59) = rxt_rates(:ncol,:, 59)*sol(:ncol,:, 138) ! rate_const*ONITR + rxt_rates(:ncol,:, 60) = rxt_rates(:ncol,:, 60)*sol(:ncol,:, 139) ! rate_const*PAN + rxt_rates(:ncol,:, 61) = rxt_rates(:ncol,:, 61)*sol(:ncol,:, 143) ! rate_const*PHENOOH + rxt_rates(:ncol,:, 62) = rxt_rates(:ncol,:, 62)*sol(:ncol,:, 146) ! rate_const*POOH + rxt_rates(:ncol,:, 63) = rxt_rates(:ncol,:, 63)*sol(:ncol,:, 147) ! rate_const*ROOH + rxt_rates(:ncol,:, 64) = rxt_rates(:ncol,:, 64)*sol(:ncol,:, 174) ! rate_const*TEPOMUC + rxt_rates(:ncol,:, 65) = rxt_rates(:ncol,:, 65)*sol(:ncol,:, 175) ! rate_const*TERP2OOH + rxt_rates(:ncol,:, 66) = rxt_rates(:ncol,:, 66)*sol(:ncol,:, 176) ! rate_const*TERPNIT + rxt_rates(:ncol,:, 67) = rxt_rates(:ncol,:, 67)*sol(:ncol,:, 177) ! rate_const*TERPOOH + rxt_rates(:ncol,:, 68) = rxt_rates(:ncol,:, 68)*sol(:ncol,:, 178) ! rate_const*TERPROD1 + rxt_rates(:ncol,:, 69) = rxt_rates(:ncol,:, 69)*sol(:ncol,:, 179) ! rate_const*TERPROD2 + rxt_rates(:ncol,:, 70) = rxt_rates(:ncol,:, 70)*sol(:ncol,:, 180) ! rate_const*TOLOOH + rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 182) ! rate_const*XOOH + rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 184) ! rate_const*XYLENOOH + rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 186) ! rate_const*XYLOLOOH + rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 17) ! rate_const*BRCL + rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 18) ! rate_const*BRO + rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 32) ! rate_const*CCL4 + rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 33) ! rate_const*CF2CLBR + rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 34) ! rate_const*CF3BR + rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 35) ! rate_const*CFC11 + rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 36) ! rate_const*CFC113 + rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 37) ! rate_const*CFC114 + rxt_rates(:ncol,:, 84) = rxt_rates(:ncol,:, 84)*sol(:ncol,:, 38) ! rate_const*CFC115 + rxt_rates(:ncol,:, 85) = rxt_rates(:ncol,:, 85)*sol(:ncol,:, 39) ! rate_const*CFC12 + rxt_rates(:ncol,:, 86) = rxt_rates(:ncol,:, 86)*sol(:ncol,:, 40) ! rate_const*CH2BR2 + rxt_rates(:ncol,:, 87) = rxt_rates(:ncol,:, 87)*sol(:ncol,:, 42) ! rate_const*CH3BR + rxt_rates(:ncol,:, 88) = rxt_rates(:ncol,:, 88)*sol(:ncol,:, 43) ! rate_const*CH3CCL3 + rxt_rates(:ncol,:, 89) = rxt_rates(:ncol,:, 89)*sol(:ncol,:, 45) ! rate_const*CH3CL + rxt_rates(:ncol,:, 90) = rxt_rates(:ncol,:, 90)*sol(:ncol,:, 54) ! rate_const*CHBR3 + rxt_rates(:ncol,:, 91) = rxt_rates(:ncol,:, 91)*sol(:ncol,:, 56) ! rate_const*CL2 + rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 57) ! rate_const*CL2O2 + rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 58) ! rate_const*CLO + rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 63) ! rate_const*COF2 + rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 64) ! rate_const*COFCL + rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 77) ! rate_const*H2402 + rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 80) ! rate_const*HBR + rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 81) ! rate_const*HCFC141B + rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 82) ! rate_const*HCFC142B + rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 83) ! rate_const*HCFC22 + rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 84) ! rate_const*HCL + rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 87) ! rate_const*HF + rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 90) ! rate_const*HOBR + rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 91) ! rate_const*HOCL + rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 136) ! rate_const*OCLO + rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 149) ! rate_const*SF6 + rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 79) ! rate_const*H2SO4 + rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 137) ! rate_const*OCS + rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 150) ! rate_const*SO + rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 151) ! rate_const*SO2 + rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 152) ! rate_const*SO3 + rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 157) ! rate_const*soa1_a1 + rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 158) ! rate_const*soa1_a2 + rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 159) ! rate_const*soa2_a1 + rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 160) ! rate_const*soa2_a2 + rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 161) ! rate_const*soa3_a1 + rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 162) ! rate_const*soa3_a2 + rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 163) ! rate_const*soa4_a1 + rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 164) ! rate_const*soa4_a2 + rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 165) ! rate_const*soa5_a1 + rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 166) ! rate_const*soa5_a2 + rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 70) ! rate_const*E90 + rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 217)*sol(:ncol,:, 76) ! rate_const*O1D*H2 + rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 217)*sol(:ncol,:, 230) ! rate_const*O1D*H2O + rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 217) ! rate_const*N2*O1D + rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 217) ! rate_const*O2*O1D + rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 217)*sol(:ncol,:, 134) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 217)*sol(:ncol,:, 134) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 133)*sol(:ncol,:, 134) ! rate_const*O*O3 + rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 133)*sol(:ncol,:, 133) ! rate_const*M*O*O + rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 133) ! rate_const*O2*M*O + rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 76)*sol(:ncol,:, 133) ! rate_const*H2*O + rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 78)*sol(:ncol,:, 133) ! rate_const*H2O2*O + rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 75)*sol(:ncol,:, 204) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 75)*sol(:ncol,:, 204) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 75)*sol(:ncol,:, 204) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 75) ! rate_const*O2*M*H + rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 204)*sol(:ncol,:, 133) ! rate_const*HO2*O + rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 204)*sol(:ncol,:, 134) ! rate_const*HO2*O3 + rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 75)*sol(:ncol,:, 134) ! rate_const*H*O3 + rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 218)*sol(:ncol,:, 76) ! rate_const*OH*H2 + rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 218)*sol(:ncol,:, 78) ! rate_const*OH*H2O2 + rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 218)*sol(:ncol,:, 204) ! rate_const*OH*HO2 + rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 218)*sol(:ncol,:, 133) ! rate_const*OH*O + rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 218)*sol(:ncol,:, 134) ! rate_const*OH*O3 + rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 218)*sol(:ncol,:, 218) ! rate_const*OH*OH + rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 218)*sol(:ncol,:, 218) ! rate_const*M*OH*OH + rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 204)*sol(:ncol,:, 204) ! rate_const*HO2*HO2 + rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 89)*sol(:ncol,:, 218) ! rate_const*HO2NO2*OH + rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 111)*sol(:ncol,:, 123) ! rate_const*N*NO + rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 111) ! rate_const*O2*N + rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 124)*sol(:ncol,:, 133) ! rate_const*NO2*O + rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 124)*sol(:ncol,:, 134) ! rate_const*NO2*O3 + rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 124)*sol(:ncol,:, 133) ! rate_const*M*NO2*O + rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 125)*sol(:ncol,:, 204) ! rate_const*NO3*HO2 + rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 125)*sol(:ncol,:, 123) ! rate_const*NO3*NO + rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 125)*sol(:ncol,:, 133) ! rate_const*NO3*O + rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 125)*sol(:ncol,:, 218) ! rate_const*NO3*OH + rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 111)*sol(:ncol,:, 218) ! rate_const*N*OH + rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 123)*sol(:ncol,:, 204) ! rate_const*NO*HO2 + rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 123)*sol(:ncol,:, 134) ! rate_const*NO*O3 + rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 123)*sol(:ncol,:, 133) ! rate_const*M*NO*O + rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 217)*sol(:ncol,:, 112) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 217)*sol(:ncol,:, 112) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 124)*sol(:ncol,:, 204) ! rate_const*M*NO2*HO2 + rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 124)*sol(:ncol,:, 125) ! rate_const*M*NO2*NO3 + rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 124)*sol(:ncol,:, 218) ! rate_const*M*NO2*OH + rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 88)*sol(:ncol,:, 218) ! rate_const*HNO3*OH + rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 89) ! rate_const*M*HO2NO2 + rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 113) ! rate_const*M*N2O5 + rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 55)*sol(:ncol,:, 41) ! rate_const*CL*CH2O + rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 55)*sol(:ncol,:, 53) ! rate_const*CL*CH4 + rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 55)*sol(:ncol,:, 76) ! rate_const*CL*H2 + rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 55)*sol(:ncol,:, 78) ! rate_const*CL*H2O2 + rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 55)*sol(:ncol,:, 204) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 55)*sol(:ncol,:, 204) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 55)*sol(:ncol,:, 134) ! rate_const*CL*O3 + rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 58)*sol(:ncol,:, 199) ! rate_const*CLO*CH3O2 + rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 58)*sol(:ncol,:, 204) ! rate_const*CLO*HO2 + rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 58)*sol(:ncol,:, 123) ! rate_const*CLO*NO + rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 59)*sol(:ncol,:, 55) ! rate_const*CLONO2*CL + rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 58)*sol(:ncol,:, 124) ! rate_const*M*CLO*NO2 + rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 59)*sol(:ncol,:, 133) ! rate_const*CLONO2*O + rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 59)*sol(:ncol,:, 218) ! rate_const*CLONO2*OH + rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 58)*sol(:ncol,:, 133) ! rate_const*CLO*O + rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 58)*sol(:ncol,:, 218) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 58)*sol(:ncol,:, 218) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 84)*sol(:ncol,:, 133) ! rate_const*HCL*O + rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 84)*sol(:ncol,:, 218) ! rate_const*HCL*OH + rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 91)*sol(:ncol,:, 55) ! rate_const*HOCL*CL + rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 91)*sol(:ncol,:, 133) ! rate_const*HOCL*O + rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 91)*sol(:ncol,:, 218) ! rate_const*HOCL*OH + rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 217)*sol(:ncol,:, 32) ! rate_const*O1D*CCL4 + rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 217)*sol(:ncol,:, 33) ! rate_const*O1D*CF2CLBR + rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 217)*sol(:ncol,:, 35) ! rate_const*O1D*CFC11 + rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 217)*sol(:ncol,:, 36) ! rate_const*O1D*CFC113 + rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 217)*sol(:ncol,:, 37) ! rate_const*O1D*CFC114 + rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 217)*sol(:ncol,:, 38) ! rate_const*O1D*CFC115 + rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 217)*sol(:ncol,:, 39) ! rate_const*O1D*CFC12 + rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 217)*sol(:ncol,:, 84) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 217)*sol(:ncol,:, 84) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*M*CLO*CLO + rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 57) ! rate_const*M*CL2O2 + rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 16)*sol(:ncol,:, 41) ! rate_const*BR*CH2O + rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 16)*sol(:ncol,:, 204) ! rate_const*BR*HO2 + rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 16)*sol(:ncol,:, 134) ! rate_const*BR*O3 + rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 18)*sol(:ncol,:, 18) ! rate_const*BRO*BRO + rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 18)*sol(:ncol,:, 204) ! rate_const*BRO*HO2 + rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 18)*sol(:ncol,:, 123) ! rate_const*BRO*NO + rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 18)*sol(:ncol,:, 124) ! rate_const*M*BRO*NO2 + rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 19)*sol(:ncol,:, 133) ! rate_const*BRONO2*O + rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 18)*sol(:ncol,:, 133) ! rate_const*BRO*O + rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 18)*sol(:ncol,:, 218) ! rate_const*BRO*OH + rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 80)*sol(:ncol,:, 133) ! rate_const*HBR*O + rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 80)*sol(:ncol,:, 218) ! rate_const*HBR*OH + rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 90)*sol(:ncol,:, 133) ! rate_const*HOBR*O + rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 217)*sol(:ncol,:, 34) ! rate_const*O1D*CF3BR + rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 217)*sol(:ncol,:, 54) ! rate_const*O1D*CHBR3 + rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 217)*sol(:ncol,:, 77) ! rate_const*O1D*H2402 + rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 217)*sol(:ncol,:, 80) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 217)*sol(:ncol,:, 80) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 72)*sol(:ncol,:, 53) ! rate_const*F*CH4 + rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 72)*sol(:ncol,:, 76) ! rate_const*F*H2 + rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 72)*sol(:ncol,:, 230) ! rate_const*F*H2O + rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 72)*sol(:ncol,:, 88) ! rate_const*F*HNO3 + rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 217)*sol(:ncol,:, 63) ! rate_const*O1D*COF2 + rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 217)*sol(:ncol,:, 64) ! rate_const*O1D*COFCL + rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 40)*sol(:ncol,:, 55) ! rate_const*CH2BR2*CL + rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 40)*sol(:ncol,:, 218) ! rate_const*CH2BR2*OH + rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 42)*sol(:ncol,:, 55) ! rate_const*CH3BR*CL + rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 42)*sol(:ncol,:, 218) ! rate_const*CH3BR*OH + rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 43)*sol(:ncol,:, 218) ! rate_const*CH3CCL3*OH + rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 45)*sol(:ncol,:, 55) ! rate_const*CH3CL*CL + rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 45)*sol(:ncol,:, 218) ! rate_const*CH3CL*OH + rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 54)*sol(:ncol,:, 55) ! rate_const*CHBR3*CL + rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 54)*sol(:ncol,:, 218) ! rate_const*CHBR3*OH + rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 81)*sol(:ncol,:, 218) ! rate_const*HCFC141B*OH + rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 82)*sol(:ncol,:, 218) ! rate_const*HCFC142B*OH + rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 83)*sol(:ncol,:, 218) ! rate_const*HCFC22*OH + rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 217)*sol(:ncol,:, 40) ! rate_const*O1D*CH2BR2 + rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 217)*sol(:ncol,:, 42) ! rate_const*O1D*CH3BR + rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 217)*sol(:ncol,:, 81) ! rate_const*O1D*HCFC141B + rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 217)*sol(:ncol,:, 82) ! rate_const*O1D*HCFC142B + rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 217)*sol(:ncol,:, 83) ! rate_const*O1D*HCFC22 + rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 41)*sol(:ncol,:, 204) ! rate_const*CH2O*HO2 + rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 41)*sol(:ncol,:, 125) ! rate_const*CH2O*NO3 + rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 41)*sol(:ncol,:, 133) ! rate_const*CH2O*O + rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 41)*sol(:ncol,:, 218) ! rate_const*CH2O*OH + rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 199)*sol(:ncol,:, 199) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 199)*sol(:ncol,:, 199) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 199)*sol(:ncol,:, 204) ! rate_const*CH3O2*HO2 + rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 199)*sol(:ncol,:, 123) ! rate_const*CH3O2*NO + rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 51)*sol(:ncol,:, 218) ! rate_const*CH3OH*OH + rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 52)*sol(:ncol,:, 218) ! rate_const*CH3OOH*OH + rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 53)*sol(:ncol,:, 218) ! rate_const*CH4*OH + rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 85)*sol(:ncol,:, 218) ! rate_const*M*HCN*OH + rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 86)*sol(:ncol,:, 218) ! rate_const*HCOOH*OH + rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 205)*sol(:ncol,:, 204) ! rate_const*HOCH2OO*HO2 + rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 205) ! rate_const*HOCH2OO + rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 205)*sol(:ncol,:, 123) ! rate_const*HOCH2OO*NO + rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 217)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 217)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 217)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 217)*sol(:ncol,:, 85) ! rate_const*O1D*HCN + rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 61)*sol(:ncol,:, 218) ! rate_const*CO*OH + rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 23)*sol(:ncol,:, 55) ! rate_const*M*C2H2*CL + rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 23)*sol(:ncol,:, 218) ! rate_const*M*C2H2*OH + rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 24)*sol(:ncol,:, 55) ! rate_const*M*C2H4*CL + rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 24)*sol(:ncol,:, 134) ! rate_const*C2H4*O3 + rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 195)*sol(:ncol,:, 195) ! rate_const*C2H5O2*C2H5O2 + rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 195)*sol(:ncol,:, 199) ! rate_const*C2H5O2*CH3O2 + rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 195)*sol(:ncol,:, 204) ! rate_const*C2H5O2*HO2 + rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 195)*sol(:ncol,:, 123) ! rate_const*C2H5O2*NO + rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 25)*sol(:ncol,:, 218) ! rate_const*C2H5OH*OH + rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 26)*sol(:ncol,:, 218) ! rate_const*C2H5OOH*OH + rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 27)*sol(:ncol,:, 55) ! rate_const*C2H6*CL + rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 27)*sol(:ncol,:, 218) ! rate_const*C2H6*OH + rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 44)*sol(:ncol,:, 125) ! rate_const*CH3CHO*NO3 + rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 44)*sol(:ncol,:, 218) ! rate_const*CH3CHO*OH + rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 46)*sol(:ncol,:, 218) ! rate_const*CH3CN*OH + rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 198)*sol(:ncol,:, 198) ! rate_const*CH3CO3*CH3CO3 + rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 198)*sol(:ncol,:, 199) ! rate_const*CH3CO3*CH3O2 + rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 198)*sol(:ncol,:, 204) ! rate_const*CH3CO3*HO2 + rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 198)*sol(:ncol,:, 123) ! rate_const*CH3CO3*NO + rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 49)*sol(:ncol,:, 218) ! rate_const*CH3COOH*OH + rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 50)*sol(:ncol,:, 218) ! rate_const*CH3COOOH*OH + rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 203)*sol(:ncol,:, 204) ! rate_const*EO2*HO2 + rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 203)*sol(:ncol,:, 123) ! rate_const*EO2*NO + rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 202) ! rate_const*EO + rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 202) ! rate_const*O2*EO + rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 73)*sol(:ncol,:, 218) ! rate_const*GLYALD*OH + rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 74)*sol(:ncol,:, 218) ! rate_const*GLYOXAL*OH + rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 139)*sol(:ncol,:, 218) ! rate_const*PAN*OH + rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 24)*sol(:ncol,:, 218) ! rate_const*M*C2H4*OH + rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 198)*sol(:ncol,:, 124) ! rate_const*M*CH3CO3*NO2 + rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 139) ! rate_const*M*PAN + rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 28)*sol(:ncol,:, 125) ! rate_const*C3H6*NO3 + rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 28)*sol(:ncol,:, 134) ! rate_const*C3H6*O3 + rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 196)*sol(:ncol,:, 199) ! rate_const*C3H7O2*CH3O2 + rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 196)*sol(:ncol,:, 204) ! rate_const*C3H7O2*HO2 + rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 196)*sol(:ncol,:, 123) ! rate_const*C3H7O2*NO + rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 29)*sol(:ncol,:, 218) ! rate_const*C3H7OOH*OH + rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 30)*sol(:ncol,:, 218) ! rate_const*C3H8*OH + rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 48)*sol(:ncol,:, 125) ! rate_const*CH3COCHO*NO3 + rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 48)*sol(:ncol,:, 218) ! rate_const*CH3COCHO*OH + rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 94)*sol(:ncol,:, 218) ! rate_const*HYAC*OH + rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 126)*sol(:ncol,:, 218) ! rate_const*NOA*OH + rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 220)*sol(:ncol,:, 204) ! rate_const*PO2*HO2 + rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 220)*sol(:ncol,:, 123) ! rate_const*PO2*NO + rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 146)*sol(:ncol,:, 218) ! rate_const*POOH*OH + rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 221)*sol(:ncol,:, 199) ! rate_const*RO2*CH3O2 + rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 221)*sol(:ncol,:, 204) ! rate_const*RO2*HO2 + rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 221)*sol(:ncol,:, 123) ! rate_const*RO2*NO + rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 147)*sol(:ncol,:, 218) ! rate_const*ROOH*OH + rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 28)*sol(:ncol,:, 218) ! rate_const*M*C3H6*OH + rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 47)*sol(:ncol,:, 218) ! rate_const*CH3COCH3*OH + rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 15)*sol(:ncol,:, 125) ! rate_const*BIGENE*NO3 + rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 15)*sol(:ncol,:, 218) ! rate_const*BIGENE*OH + rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 201)*sol(:ncol,:, 123) ! rate_const*ENEO2*NO + rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 201)*sol(:ncol,:, 123) ! rate_const*ENEO2*NO + rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 92)*sol(:ncol,:, 218) ! rate_const*HONITR*OH + rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 210)*sol(:ncol,:, 198) ! rate_const*MACRO2*CH3CO3 + rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 210)*sol(:ncol,:, 199) ! rate_const*MACRO2*CH3O2 + rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 210)*sol(:ncol,:, 204) ! rate_const*MACRO2*HO2 + rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 210)*sol(:ncol,:, 125) ! rate_const*MACRO2*NO3 + rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 210)*sol(:ncol,:, 123) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 210)*sol(:ncol,:, 123) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 104)*sol(:ncol,:, 134) ! rate_const*MACR*O3 + rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 104)*sol(:ncol,:, 218) ! rate_const*MACR*OH + rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 105)*sol(:ncol,:, 218) ! rate_const*MACROOH*OH + rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 212)*sol(:ncol,:, 198) ! rate_const*MCO3*CH3CO3 + rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 212)*sol(:ncol,:, 199) ! rate_const*MCO3*CH3O2 + rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 212)*sol(:ncol,:, 204) ! rate_const*MCO3*HO2 + rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 212)*sol(:ncol,:, 212) ! rate_const*MCO3*MCO3 + rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 212)*sol(:ncol,:, 123) ! rate_const*MCO3*NO + rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 212)*sol(:ncol,:, 125) ! rate_const*MCO3*NO3 + rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 214)*sol(:ncol,:, 204) ! rate_const*MEKO2*HO2 + rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 214)*sol(:ncol,:, 123) ! rate_const*MEKO2*NO + rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 106)*sol(:ncol,:, 218) ! rate_const*MEK*OH + rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 107)*sol(:ncol,:, 218) ! rate_const*MEKOOH*OH + rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 108)*sol(:ncol,:, 218) ! rate_const*M*MPAN*OH + rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 110)*sol(:ncol,:, 134) ! rate_const*MVK*O3 + rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 110)*sol(:ncol,:, 218) ! rate_const*MVK*OH + rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 212)*sol(:ncol,:, 124) ! rate_const*M*MCO3*NO2 + rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 108) ! rate_const*M*MPAN + rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 1)*sol(:ncol,:, 218) ! rate_const*ALKNIT*OH + rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 190)*sol(:ncol,:, 204) ! rate_const*ALKO2*HO2 + rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 190)*sol(:ncol,:, 123) ! rate_const*ALKO2*NO + rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 190)*sol(:ncol,:, 123) ! rate_const*ALKO2*NO + rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 2)*sol(:ncol,:, 218) ! rate_const*ALKOOH*OH + rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 14)*sol(:ncol,:, 218) ! rate_const*BIGALK*OH + rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 93)*sol(:ncol,:, 218) ! rate_const*HPALD*OH + rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 95)*sol(:ncol,:, 218) ! rate_const*HYDRALD*OH + rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 96)*sol(:ncol,:, 218) ! rate_const*IEPOX*OH + rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 206)*sol(:ncol,:, 198) ! rate_const*ISOPAO2*CH3CO3 + rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 206)*sol(:ncol,:, 199) ! rate_const*ISOPAO2*CH3O2 + rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 206)*sol(:ncol,:, 204) ! rate_const*ISOPAO2*HO2 + rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 206)*sol(:ncol,:, 123) ! rate_const*ISOPAO2*NO + rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 206)*sol(:ncol,:, 125) ! rate_const*ISOPAO2*NO3 + rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 207)*sol(:ncol,:, 198) ! rate_const*ISOPBO2*CH3CO3 + rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 207)*sol(:ncol,:, 199) ! rate_const*ISOPBO2*CH3O2 + rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 207)*sol(:ncol,:, 204) ! rate_const*ISOPBO2*HO2 + rxt_rates(:ncol,:, 374) = rxt_rates(:ncol,:, 374)*sol(:ncol,:, 207) ! rate_const*ISOPBO2 + rxt_rates(:ncol,:, 375) = rxt_rates(:ncol,:, 375)*sol(:ncol,:, 207)*sol(:ncol,:, 123) ! rate_const*ISOPBO2*NO + rxt_rates(:ncol,:, 376) = rxt_rates(:ncol,:, 376)*sol(:ncol,:, 207)*sol(:ncol,:, 125) ! rate_const*ISOPBO2*NO3 + rxt_rates(:ncol,:, 377) = rxt_rates(:ncol,:, 377)*sol(:ncol,:, 98)*sol(:ncol,:, 218) ! rate_const*ISOPNITA*OH + rxt_rates(:ncol,:, 378) = rxt_rates(:ncol,:, 378)*sol(:ncol,:, 99)*sol(:ncol,:, 218) ! rate_const*ISOPNITB*OH + rxt_rates(:ncol,:, 379) = rxt_rates(:ncol,:, 379)*sol(:ncol,:, 97)*sol(:ncol,:, 125) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 380) = rxt_rates(:ncol,:, 380)*sol(:ncol,:, 100)*sol(:ncol,:, 198) ! rate_const*ISOPNO3*CH3CO3 + rxt_rates(:ncol,:, 381) = rxt_rates(:ncol,:, 381)*sol(:ncol,:, 100)*sol(:ncol,:, 199) ! rate_const*ISOPNO3*CH3O2 + rxt_rates(:ncol,:, 382) = rxt_rates(:ncol,:, 382)*sol(:ncol,:, 100)*sol(:ncol,:, 204) ! rate_const*ISOPNO3*HO2 + rxt_rates(:ncol,:, 383) = rxt_rates(:ncol,:, 383)*sol(:ncol,:, 100)*sol(:ncol,:, 123) ! rate_const*ISOPNO3*NO + rxt_rates(:ncol,:, 384) = rxt_rates(:ncol,:, 384)*sol(:ncol,:, 100)*sol(:ncol,:, 125) ! rate_const*ISOPNO3*NO3 + rxt_rates(:ncol,:, 385) = rxt_rates(:ncol,:, 385)*sol(:ncol,:, 101)*sol(:ncol,:, 218) ! rate_const*ISOPNOOH*OH + rxt_rates(:ncol,:, 386) = rxt_rates(:ncol,:, 386)*sol(:ncol,:, 97)*sol(:ncol,:, 134) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 387) = rxt_rates(:ncol,:, 387)*sol(:ncol,:, 97)*sol(:ncol,:, 218) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 388) = rxt_rates(:ncol,:, 388)*sol(:ncol,:, 102)*sol(:ncol,:, 218) ! rate_const*ISOPOOH*OH + rxt_rates(:ncol,:, 389) = rxt_rates(:ncol,:, 389)*sol(:ncol,:, 114)*sol(:ncol,:, 218) ! rate_const*NC4CH2OH*OH + rxt_rates(:ncol,:, 390) = rxt_rates(:ncol,:, 390)*sol(:ncol,:, 115)*sol(:ncol,:, 218) ! rate_const*NC4CHO*OH + rxt_rates(:ncol,:, 391) = rxt_rates(:ncol,:, 391)*sol(:ncol,:, 226)*sol(:ncol,:, 198) ! rate_const*XO2*CH3CO3 + rxt_rates(:ncol,:, 392) = rxt_rates(:ncol,:, 392)*sol(:ncol,:, 226)*sol(:ncol,:, 199) ! rate_const*XO2*CH3O2 + rxt_rates(:ncol,:, 393) = rxt_rates(:ncol,:, 393)*sol(:ncol,:, 226)*sol(:ncol,:, 204) ! rate_const*XO2*HO2 + rxt_rates(:ncol,:, 394) = rxt_rates(:ncol,:, 394)*sol(:ncol,:, 226)*sol(:ncol,:, 123) ! rate_const*XO2*NO + rxt_rates(:ncol,:, 395) = rxt_rates(:ncol,:, 395)*sol(:ncol,:, 226)*sol(:ncol,:, 125) ! rate_const*XO2*NO3 + rxt_rates(:ncol,:, 396) = rxt_rates(:ncol,:, 396)*sol(:ncol,:, 182)*sol(:ncol,:, 218) ! rate_const*XOOH*OH + rxt_rates(:ncol,:, 397) = rxt_rates(:ncol,:, 397)*sol(:ncol,:, 189)*sol(:ncol,:, 204) ! rate_const*ACBZO2*HO2 + rxt_rates(:ncol,:, 398) = rxt_rates(:ncol,:, 398)*sol(:ncol,:, 189)*sol(:ncol,:, 123) ! rate_const*ACBZO2*NO + rxt_rates(:ncol,:, 399) = rxt_rates(:ncol,:, 399)*sol(:ncol,:, 6)*sol(:ncol,:, 218) ! rate_const*BENZENE*OH + rxt_rates(:ncol,:, 400) = rxt_rates(:ncol,:, 400)*sol(:ncol,:, 192)*sol(:ncol,:, 204) ! rate_const*BENZO2*HO2 + rxt_rates(:ncol,:, 401) = rxt_rates(:ncol,:, 401)*sol(:ncol,:, 192)*sol(:ncol,:, 123) ! rate_const*BENZO2*NO + rxt_rates(:ncol,:, 402) = rxt_rates(:ncol,:, 402)*sol(:ncol,:, 7)*sol(:ncol,:, 218) ! rate_const*BENZOOH*OH + rxt_rates(:ncol,:, 403) = rxt_rates(:ncol,:, 403)*sol(:ncol,:, 21)*sol(:ncol,:, 218) ! rate_const*BZALD*OH + rxt_rates(:ncol,:, 404) = rxt_rates(:ncol,:, 404)*sol(:ncol,:, 194)*sol(:ncol,:, 204) ! rate_const*BZOO*HO2 + rxt_rates(:ncol,:, 405) = rxt_rates(:ncol,:, 405)*sol(:ncol,:, 22)*sol(:ncol,:, 218) ! rate_const*BZOOH*OH + rxt_rates(:ncol,:, 406) = rxt_rates(:ncol,:, 406)*sol(:ncol,:, 194)*sol(:ncol,:, 123) ! rate_const*BZOO*NO + rxt_rates(:ncol,:, 407) = rxt_rates(:ncol,:, 407)*sol(:ncol,:, 197)*sol(:ncol,:, 204) ! rate_const*C6H5O2*HO2 + rxt_rates(:ncol,:, 408) = rxt_rates(:ncol,:, 408)*sol(:ncol,:, 197)*sol(:ncol,:, 123) ! rate_const*C6H5O2*NO + rxt_rates(:ncol,:, 409) = rxt_rates(:ncol,:, 409)*sol(:ncol,:, 31)*sol(:ncol,:, 218) ! rate_const*C6H5OOH*OH + rxt_rates(:ncol,:, 410) = rxt_rates(:ncol,:, 410)*sol(:ncol,:, 65)*sol(:ncol,:, 218) ! rate_const*CRESOL*OH + rxt_rates(:ncol,:, 411) = rxt_rates(:ncol,:, 411)*sol(:ncol,:, 200)*sol(:ncol,:, 204) ! rate_const*DICARBO2*HO2 + rxt_rates(:ncol,:, 412) = rxt_rates(:ncol,:, 412)*sol(:ncol,:, 200)*sol(:ncol,:, 123) ! rate_const*DICARBO2*NO + rxt_rates(:ncol,:, 413) = rxt_rates(:ncol,:, 413)*sol(:ncol,:, 200)*sol(:ncol,:, 124) ! rate_const*M*DICARBO2*NO2 + rxt_rates(:ncol,:, 414) = rxt_rates(:ncol,:, 414)*sol(:ncol,:, 211)*sol(:ncol,:, 204) ! rate_const*MALO2*HO2 + rxt_rates(:ncol,:, 415) = rxt_rates(:ncol,:, 415)*sol(:ncol,:, 211)*sol(:ncol,:, 123) ! rate_const*MALO2*NO + rxt_rates(:ncol,:, 416) = rxt_rates(:ncol,:, 416)*sol(:ncol,:, 211)*sol(:ncol,:, 124) ! rate_const*M*MALO2*NO2 + rxt_rates(:ncol,:, 417) = rxt_rates(:ncol,:, 417)*sol(:ncol,:, 213)*sol(:ncol,:, 204) ! rate_const*MDIALO2*HO2 + rxt_rates(:ncol,:, 418) = rxt_rates(:ncol,:, 418)*sol(:ncol,:, 213)*sol(:ncol,:, 123) ! rate_const*MDIALO2*NO + rxt_rates(:ncol,:, 419) = rxt_rates(:ncol,:, 419)*sol(:ncol,:, 213)*sol(:ncol,:, 124) ! rate_const*M*MDIALO2*NO2 + rxt_rates(:ncol,:, 420) = rxt_rates(:ncol,:, 420)*sol(:ncol,:, 219)*sol(:ncol,:, 204) ! rate_const*PHENO2*HO2 + rxt_rates(:ncol,:, 421) = rxt_rates(:ncol,:, 421)*sol(:ncol,:, 219)*sol(:ncol,:, 123) ! rate_const*PHENO2*NO + rxt_rates(:ncol,:, 422) = rxt_rates(:ncol,:, 422)*sol(:ncol,:, 142)*sol(:ncol,:, 218) ! rate_const*PHENOL*OH + rxt_rates(:ncol,:, 423) = rxt_rates(:ncol,:, 423)*sol(:ncol,:, 141)*sol(:ncol,:, 124) ! rate_const*PHENO*NO2 + rxt_rates(:ncol,:, 424) = rxt_rates(:ncol,:, 424)*sol(:ncol,:, 141)*sol(:ncol,:, 134) ! rate_const*PHENO*O3 + rxt_rates(:ncol,:, 425) = rxt_rates(:ncol,:, 425)*sol(:ncol,:, 143)*sol(:ncol,:, 218) ! rate_const*PHENOOH*OH + rxt_rates(:ncol,:, 426) = rxt_rates(:ncol,:, 426)*sol(:ncol,:, 189)*sol(:ncol,:, 124) ! rate_const*M*ACBZO2*NO2 + rxt_rates(:ncol,:, 427) = rxt_rates(:ncol,:, 427)*sol(:ncol,:, 224)*sol(:ncol,:, 204) ! rate_const*TOLO2*HO2 + rxt_rates(:ncol,:, 428) = rxt_rates(:ncol,:, 428)*sol(:ncol,:, 224)*sol(:ncol,:, 123) ! rate_const*TOLO2*NO + rxt_rates(:ncol,:, 429) = rxt_rates(:ncol,:, 429)*sol(:ncol,:, 180)*sol(:ncol,:, 218) ! rate_const*TOLOOH*OH + rxt_rates(:ncol,:, 430) = rxt_rates(:ncol,:, 430)*sol(:ncol,:, 181)*sol(:ncol,:, 218) ! rate_const*TOLUENE*OH + rxt_rates(:ncol,:, 431) = rxt_rates(:ncol,:, 431)*sol(:ncol,:, 140) ! rate_const*M*PBZNIT + rxt_rates(:ncol,:, 432) = rxt_rates(:ncol,:, 432)*sol(:ncol,:, 183)*sol(:ncol,:, 218) ! rate_const*XYLENES*OH + rxt_rates(:ncol,:, 433) = rxt_rates(:ncol,:, 433)*sol(:ncol,:, 227)*sol(:ncol,:, 204) ! rate_const*XYLENO2*HO2 + rxt_rates(:ncol,:, 434) = rxt_rates(:ncol,:, 434)*sol(:ncol,:, 227)*sol(:ncol,:, 123) ! rate_const*XYLENO2*NO + rxt_rates(:ncol,:, 435) = rxt_rates(:ncol,:, 435)*sol(:ncol,:, 184)*sol(:ncol,:, 218) ! rate_const*XYLENOOH*OH + rxt_rates(:ncol,:, 436) = rxt_rates(:ncol,:, 436)*sol(:ncol,:, 229)*sol(:ncol,:, 204) ! rate_const*XYLOLO2*HO2 + rxt_rates(:ncol,:, 437) = rxt_rates(:ncol,:, 437)*sol(:ncol,:, 229)*sol(:ncol,:, 123) ! rate_const*XYLOLO2*NO + rxt_rates(:ncol,:, 438) = rxt_rates(:ncol,:, 438)*sol(:ncol,:, 185)*sol(:ncol,:, 218) ! rate_const*XYLOL*OH + rxt_rates(:ncol,:, 439) = rxt_rates(:ncol,:, 439)*sol(:ncol,:, 186)*sol(:ncol,:, 218) ! rate_const*XYLOLOOH*OH + rxt_rates(:ncol,:, 440) = rxt_rates(:ncol,:, 440)*sol(:ncol,:, 5)*sol(:ncol,:, 125) ! rate_const*BCARY*NO3 + rxt_rates(:ncol,:, 441) = rxt_rates(:ncol,:, 441)*sol(:ncol,:, 5)*sol(:ncol,:, 134) ! rate_const*BCARY*O3 + rxt_rates(:ncol,:, 442) = rxt_rates(:ncol,:, 442)*sol(:ncol,:, 5)*sol(:ncol,:, 218) ! rate_const*BCARY*OH + rxt_rates(:ncol,:, 443) = rxt_rates(:ncol,:, 443)*sol(:ncol,:, 109)*sol(:ncol,:, 125) ! rate_const*MTERP*NO3 + rxt_rates(:ncol,:, 444) = rxt_rates(:ncol,:, 444)*sol(:ncol,:, 109)*sol(:ncol,:, 134) ! rate_const*MTERP*O3 + rxt_rates(:ncol,:, 445) = rxt_rates(:ncol,:, 445)*sol(:ncol,:, 109)*sol(:ncol,:, 218) ! rate_const*MTERP*OH + rxt_rates(:ncol,:, 446) = rxt_rates(:ncol,:, 446)*sol(:ncol,:, 216)*sol(:ncol,:, 199) ! rate_const*NTERPO2*CH3O2 + rxt_rates(:ncol,:, 447) = rxt_rates(:ncol,:, 447)*sol(:ncol,:, 216)*sol(:ncol,:, 204) ! rate_const*NTERPO2*HO2 + rxt_rates(:ncol,:, 448) = rxt_rates(:ncol,:, 448)*sol(:ncol,:, 216)*sol(:ncol,:, 123) ! rate_const*NTERPO2*NO + rxt_rates(:ncol,:, 449) = rxt_rates(:ncol,:, 449)*sol(:ncol,:, 216)*sol(:ncol,:, 125) ! rate_const*NTERPO2*NO3 + rxt_rates(:ncol,:, 450) = rxt_rates(:ncol,:, 450)*sol(:ncol,:, 127)*sol(:ncol,:, 218) ! rate_const*NTERPOOH*OH + rxt_rates(:ncol,:, 451) = rxt_rates(:ncol,:, 451)*sol(:ncol,:, 222)*sol(:ncol,:, 199) ! rate_const*TERP2O2*CH3O2 + rxt_rates(:ncol,:, 452) = rxt_rates(:ncol,:, 452)*sol(:ncol,:, 222)*sol(:ncol,:, 204) ! rate_const*TERP2O2*HO2 + rxt_rates(:ncol,:, 453) = rxt_rates(:ncol,:, 453)*sol(:ncol,:, 222)*sol(:ncol,:, 123) ! rate_const*TERP2O2*NO + rxt_rates(:ncol,:, 454) = rxt_rates(:ncol,:, 454)*sol(:ncol,:, 175)*sol(:ncol,:, 218) ! rate_const*TERP2OOH*OH + rxt_rates(:ncol,:, 455) = rxt_rates(:ncol,:, 455)*sol(:ncol,:, 176)*sol(:ncol,:, 218) ! rate_const*TERPNIT*OH + rxt_rates(:ncol,:, 456) = rxt_rates(:ncol,:, 456)*sol(:ncol,:, 223)*sol(:ncol,:, 199) ! rate_const*TERPO2*CH3O2 + rxt_rates(:ncol,:, 457) = rxt_rates(:ncol,:, 457)*sol(:ncol,:, 223)*sol(:ncol,:, 204) ! rate_const*TERPO2*HO2 + rxt_rates(:ncol,:, 458) = rxt_rates(:ncol,:, 458)*sol(:ncol,:, 223)*sol(:ncol,:, 123) ! rate_const*TERPO2*NO + rxt_rates(:ncol,:, 459) = rxt_rates(:ncol,:, 459)*sol(:ncol,:, 177)*sol(:ncol,:, 218) ! rate_const*TERPOOH*OH + rxt_rates(:ncol,:, 460) = rxt_rates(:ncol,:, 460)*sol(:ncol,:, 178)*sol(:ncol,:, 125) ! rate_const*TERPROD1*NO3 + rxt_rates(:ncol,:, 461) = rxt_rates(:ncol,:, 461)*sol(:ncol,:, 178)*sol(:ncol,:, 218) ! rate_const*TERPROD1*OH + rxt_rates(:ncol,:, 462) = rxt_rates(:ncol,:, 462)*sol(:ncol,:, 179)*sol(:ncol,:, 218) ! rate_const*TERPROD2*OH + rxt_rates(:ncol,:, 463) = rxt_rates(:ncol,:, 463)*sol(:ncol,:, 66)*sol(:ncol,:, 125) ! rate_const*DMS*NO3 + rxt_rates(:ncol,:, 464) = rxt_rates(:ncol,:, 464)*sol(:ncol,:, 66)*sol(:ncol,:, 218) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 465) = rxt_rates(:ncol,:, 465)*sol(:ncol,:, 137)*sol(:ncol,:, 133) ! rate_const*OCS*O + rxt_rates(:ncol,:, 466) = rxt_rates(:ncol,:, 466)*sol(:ncol,:, 137)*sol(:ncol,:, 218) ! rate_const*OCS*OH + rxt_rates(:ncol,:, 467) = rxt_rates(:ncol,:, 467)*sol(:ncol,:, 148) ! rate_const*O2*S + rxt_rates(:ncol,:, 468) = rxt_rates(:ncol,:, 468)*sol(:ncol,:, 151)*sol(:ncol,:, 218) ! rate_const*M*SO2*OH + rxt_rates(:ncol,:, 469) = rxt_rates(:ncol,:, 469)*sol(:ncol,:, 148)*sol(:ncol,:, 134) ! rate_const*S*O3 + rxt_rates(:ncol,:, 470) = rxt_rates(:ncol,:, 470)*sol(:ncol,:, 150)*sol(:ncol,:, 18) ! rate_const*SO*BRO + rxt_rates(:ncol,:, 471) = rxt_rates(:ncol,:, 471)*sol(:ncol,:, 150)*sol(:ncol,:, 58) ! rate_const*SO*CLO + rxt_rates(:ncol,:, 472) = rxt_rates(:ncol,:, 472)*sol(:ncol,:, 148)*sol(:ncol,:, 218) ! rate_const*S*OH + rxt_rates(:ncol,:, 473) = rxt_rates(:ncol,:, 473)*sol(:ncol,:, 150)*sol(:ncol,:, 124) ! rate_const*SO*NO2 + rxt_rates(:ncol,:, 474) = rxt_rates(:ncol,:, 474)*sol(:ncol,:, 150) ! rate_const*O2*SO + rxt_rates(:ncol,:, 475) = rxt_rates(:ncol,:, 475)*sol(:ncol,:, 150)*sol(:ncol,:, 134) ! rate_const*SO*O3 + rxt_rates(:ncol,:, 476) = rxt_rates(:ncol,:, 476)*sol(:ncol,:, 150)*sol(:ncol,:, 136) ! rate_const*SO*OCLO + rxt_rates(:ncol,:, 477) = rxt_rates(:ncol,:, 477)*sol(:ncol,:, 150)*sol(:ncol,:, 218) ! rate_const*SO*OH + rxt_rates(:ncol,:, 478) = rxt_rates(:ncol,:, 478)*sol(:ncol,:, 66)*sol(:ncol,:, 218) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 479) = rxt_rates(:ncol,:, 479)*sol(:ncol,:, 152)*sol(:ncol,:, 230) ! rate_const*SO3*H2O + rxt_rates(:ncol,:, 480) = rxt_rates(:ncol,:, 480)*sol(:ncol,:, 119)*sol(:ncol,:, 218) ! rate_const*NH3*OH + rxt_rates(:ncol,:, 481) = rxt_rates(:ncol,:, 481)*sol(:ncol,:, 204) ! rate_const*HO2 + rxt_rates(:ncol,:, 482) = rxt_rates(:ncol,:, 482)*sol(:ncol,:, 92) ! rate_const*HONITR + rxt_rates(:ncol,:, 483) = rxt_rates(:ncol,:, 483)*sol(:ncol,:, 98) ! rate_const*ISOPNITA + rxt_rates(:ncol,:, 484) = rxt_rates(:ncol,:, 484)*sol(:ncol,:, 99) ! rate_const*ISOPNITB + rxt_rates(:ncol,:, 485) = rxt_rates(:ncol,:, 485)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 486) = rxt_rates(:ncol,:, 486)*sol(:ncol,:, 114) ! rate_const*NC4CH2OH + rxt_rates(:ncol,:, 487) = rxt_rates(:ncol,:, 487)*sol(:ncol,:, 115) ! rate_const*NC4CHO + rxt_rates(:ncol,:, 488) = rxt_rates(:ncol,:, 488)*sol(:ncol,:, 120) ! rate_const*NH4 + rxt_rates(:ncol,:, 489) = rxt_rates(:ncol,:, 489)*sol(:ncol,:, 124) ! rate_const*NO2 + rxt_rates(:ncol,:, 490) = rxt_rates(:ncol,:, 490)*sol(:ncol,:, 125) ! rate_const*NO3 + rxt_rates(:ncol,:, 491) = rxt_rates(:ncol,:, 491)*sol(:ncol,:, 127) ! rate_const*NTERPOOH + rxt_rates(:ncol,:, 492) = rxt_rates(:ncol,:, 492)*sol(:ncol,:, 138) ! rate_const*ONITR + rxt_rates(:ncol,:, 493) = rxt_rates(:ncol,:, 493)*sol(:ncol,:, 176) ! rate_const*TERPNIT + rxt_rates(:ncol,:, 494) = rxt_rates(:ncol,:, 494)*sol(:ncol,:, 5)*sol(:ncol,:, 125) ! rate_const*BCARY*NO3 + rxt_rates(:ncol,:, 495) = rxt_rates(:ncol,:, 495)*sol(:ncol,:, 191)*sol(:ncol,:, 204) ! rate_const*BCARYO2VBS*HO2 + rxt_rates(:ncol,:, 496) = rxt_rates(:ncol,:, 496)*sol(:ncol,:, 191)*sol(:ncol,:, 123) ! rate_const*BCARYO2VBS*NO + rxt_rates(:ncol,:, 497) = rxt_rates(:ncol,:, 497)*sol(:ncol,:, 5)*sol(:ncol,:, 134) ! rate_const*BCARY*O3 + rxt_rates(:ncol,:, 498) = rxt_rates(:ncol,:, 498)*sol(:ncol,:, 5)*sol(:ncol,:, 218) ! rate_const*BCARY*OH + rxt_rates(:ncol,:, 499) = rxt_rates(:ncol,:, 499)*sol(:ncol,:, 6)*sol(:ncol,:, 218) ! rate_const*BENZENE*OH + rxt_rates(:ncol,:, 500) = rxt_rates(:ncol,:, 500)*sol(:ncol,:, 193)*sol(:ncol,:, 204) ! rate_const*BENZO2VBS*HO2 + rxt_rates(:ncol,:, 501) = rxt_rates(:ncol,:, 501)*sol(:ncol,:, 193)*sol(:ncol,:, 123) ! rate_const*BENZO2VBS*NO + rxt_rates(:ncol,:, 502) = rxt_rates(:ncol,:, 502)*sol(:ncol,:, 97)*sol(:ncol,:, 125) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 503) = rxt_rates(:ncol,:, 503)*sol(:ncol,:, 208)*sol(:ncol,:, 204) ! rate_const*ISOPO2VBS*HO2 + rxt_rates(:ncol,:, 504) = rxt_rates(:ncol,:, 504)*sol(:ncol,:, 208)*sol(:ncol,:, 123) ! rate_const*ISOPO2VBS*NO + rxt_rates(:ncol,:, 505) = rxt_rates(:ncol,:, 505)*sol(:ncol,:, 97)*sol(:ncol,:, 134) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 506) = rxt_rates(:ncol,:, 506)*sol(:ncol,:, 97)*sol(:ncol,:, 218) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 507) = rxt_rates(:ncol,:, 507)*sol(:ncol,:, 209)*sol(:ncol,:, 204) ! rate_const*IVOCO2VBS*HO2 + rxt_rates(:ncol,:, 508) = rxt_rates(:ncol,:, 508)*sol(:ncol,:, 209)*sol(:ncol,:, 123) ! rate_const*IVOCO2VBS*NO + rxt_rates(:ncol,:, 509) = rxt_rates(:ncol,:, 509)*sol(:ncol,:, 103)*sol(:ncol,:, 218) ! rate_const*IVOC*OH + rxt_rates(:ncol,:, 510) = rxt_rates(:ncol,:, 510)*sol(:ncol,:, 109)*sol(:ncol,:, 125) ! rate_const*MTERP*NO3 + rxt_rates(:ncol,:, 511) = rxt_rates(:ncol,:, 511)*sol(:ncol,:, 215)*sol(:ncol,:, 204) ! rate_const*MTERPO2VBS*HO2 + rxt_rates(:ncol,:, 512) = rxt_rates(:ncol,:, 512)*sol(:ncol,:, 215)*sol(:ncol,:, 123) ! rate_const*MTERPO2VBS*NO + rxt_rates(:ncol,:, 513) = rxt_rates(:ncol,:, 513)*sol(:ncol,:, 109)*sol(:ncol,:, 134) ! rate_const*MTERP*O3 + rxt_rates(:ncol,:, 514) = rxt_rates(:ncol,:, 514)*sol(:ncol,:, 109)*sol(:ncol,:, 218) ! rate_const*MTERP*OH + rxt_rates(:ncol,:, 515) = rxt_rates(:ncol,:, 515)*sol(:ncol,:, 173)*sol(:ncol,:, 218) ! rate_const*SVOC*OH + rxt_rates(:ncol,:, 516) = rxt_rates(:ncol,:, 516)*sol(:ncol,:, 181)*sol(:ncol,:, 218) ! rate_const*TOLUENE*OH + rxt_rates(:ncol,:, 517) = rxt_rates(:ncol,:, 517)*sol(:ncol,:, 225)*sol(:ncol,:, 204) ! rate_const*TOLUO2VBS*HO2 + rxt_rates(:ncol,:, 518) = rxt_rates(:ncol,:, 518)*sol(:ncol,:, 225)*sol(:ncol,:, 123) ! rate_const*TOLUO2VBS*NO + rxt_rates(:ncol,:, 519) = rxt_rates(:ncol,:, 519)*sol(:ncol,:, 74) ! rate_const*GLYOXAL + rxt_rates(:ncol,:, 520) = rxt_rates(:ncol,:, 520)*sol(:ncol,:, 183)*sol(:ncol,:, 218) ! rate_const*XYLENES*OH + rxt_rates(:ncol,:, 521) = rxt_rates(:ncol,:, 521)*sol(:ncol,:, 228)*sol(:ncol,:, 204) ! rate_const*XYLEO2VBS*HO2 + rxt_rates(:ncol,:, 522) = rxt_rates(:ncol,:, 522)*sol(:ncol,:, 228)*sol(:ncol,:, 123) ! rate_const*XYLEO2VBS*NO + rxt_rates(:ncol,:, 523) = rxt_rates(:ncol,:, 523)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 524) = rxt_rates(:ncol,:, 524)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 525) = rxt_rates(:ncol,:, 525)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 526) = rxt_rates(:ncol,:, 526)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 527) = rxt_rates(:ncol,:, 527)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 528) = rxt_rates(:ncol,:, 528)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 529) = rxt_rates(:ncol,:, 529)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 530) = rxt_rates(:ncol,:, 530)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 531) = rxt_rates(:ncol,:, 531)*sol(:ncol,:, 90)*sol(:ncol,:, 84) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 532) = rxt_rates(:ncol,:, 532)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 533) = rxt_rates(:ncol,:, 533)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 534) = rxt_rates(:ncol,:, 534)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 535) = rxt_rates(:ncol,:, 535)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 536) = rxt_rates(:ncol,:, 536)*sol(:ncol,:, 90)*sol(:ncol,:, 84) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 537) = rxt_rates(:ncol,:, 537)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 538) = rxt_rates(:ncol,:, 538)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 539) = rxt_rates(:ncol,:, 539)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 540) = rxt_rates(:ncol,:, 540)*sol(:ncol,:, 122) ! rate_const*NH_50 + rxt_rates(:ncol,:, 541) = rxt_rates(:ncol,:, 541)*sol(:ncol,:, 121) ! rate_const*NH_5 + rxt_rates(:ncol,:, 542) = rxt_rates(:ncol,:, 542)*sol(:ncol,:, 172) ! rate_const*ST80_25 end subroutine set_rates end module mo_rxt_rates_conv diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_setrxt.F90 new file mode 100644 index 0000000000..5bfd9116ca --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_setrxt.F90 @@ -0,0 +1,701 @@ + + module mo_setrxt + + use shr_kind_mod, only : r8 => shr_kind_r8 + + private + public :: setrxt + public :: setrxt_hrates + + contains + + subroutine setrxt( rate, temp, m, ncol ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + real(r8) :: itemp(ncol*pver) + real(r8) :: exp_fac(ncol*pver) + real(r8) :: ko(ncol*pver) + real(r8) :: kinf(ncol*pver) + + rate(:,124) = 1.29e-07_r8 + rate(:,125) = 1.2e-10_r8 + rate(:,129) = 1.2e-10_r8 + rate(:,130) = 1.2e-10_r8 + rate(:,136) = 6.9e-12_r8 + rate(:,137) = 7.2e-11_r8 + rate(:,138) = 1.6e-12_r8 + rate(:,144) = 1.8e-12_r8 + rate(:,148) = 1.8e-12_r8 + rate(:,160) = 3.5e-12_r8 + rate(:,162) = 1.3e-11_r8 + rate(:,163) = 2.2e-11_r8 + rate(:,164) = 5e-11_r8 + rate(:,199) = 1.7e-13_r8 + rate(:,201) = 2.607e-10_r8 + rate(:,202) = 9.75e-11_r8 + rate(:,203) = 2.07e-10_r8 + rate(:,204) = 2.088e-10_r8 + rate(:,205) = 1.17e-10_r8 + rate(:,206) = 4.644e-11_r8 + rate(:,207) = 1.204e-10_r8 + rate(:,208) = 9.9e-11_r8 + rate(:,209) = 3.3e-12_r8 + rate(:,228) = 4.5e-11_r8 + rate(:,229) = 4.62e-10_r8 + rate(:,230) = 1.2e-10_r8 + rate(:,231) = 9e-11_r8 + rate(:,232) = 3e-11_r8 + rate(:,237) = 2.14e-11_r8 + rate(:,238) = 1.9e-10_r8 + rate(:,251) = 2.57e-10_r8 + rate(:,252) = 1.8e-10_r8 + rate(:,253) = 1.794e-10_r8 + rate(:,254) = 1.3e-10_r8 + rate(:,255) = 7.65e-11_r8 + rate(:,268) = 4e-13_r8 + rate(:,272) = 1.31e-10_r8 + rate(:,273) = 3.5e-11_r8 + rate(:,274) = 9e-12_r8 + rate(:,281) = 6.8e-14_r8 + rate(:,282) = 2e-13_r8 + rate(:,297) = 1e-12_r8 + rate(:,301) = 1e-14_r8 + rate(:,302) = 1e-11_r8 + rate(:,303) = 1.15e-11_r8 + rate(:,304) = 4e-14_r8 + rate(:,317) = 3e-12_r8 + rate(:,318) = 6.7e-13_r8 + rate(:,328) = 3.5e-13_r8 + rate(:,329) = 5.4e-11_r8 + rate(:,332) = 2e-12_r8 + rate(:,333) = 1.4e-11_r8 + rate(:,336) = 2.4e-12_r8 + rate(:,347) = 5e-12_r8 + rate(:,357) = 2.2e-12_r8 + rate(:,359) = 6.7e-12_r8 + rate(:,362) = 3.5e-12_r8 + rate(:,365) = 1.3e-11_r8 + rate(:,366) = 1.4e-11_r8 + rate(:,370) = 2.4e-12_r8 + rate(:,371) = 1.4e-11_r8 + rate(:,376) = 2.4e-12_r8 + rate(:,377) = 4e-11_r8 + rate(:,378) = 4e-11_r8 + rate(:,380) = 1.4e-11_r8 + rate(:,384) = 2.4e-12_r8 + rate(:,385) = 4e-11_r8 + rate(:,389) = 7e-11_r8 + rate(:,390) = 1e-10_r8 + rate(:,395) = 2.4e-12_r8 + rate(:,410) = 4.7e-11_r8 + rate(:,423) = 2.1e-12_r8 + rate(:,424) = 2.8e-13_r8 + rate(:,432) = 1.7e-11_r8 + rate(:,438) = 8.4e-11_r8 + rate(:,440) = 1.9e-11_r8 + rate(:,441) = 1.2e-14_r8 + rate(:,442) = 2e-10_r8 + rate(:,449) = 2.4e-12_r8 + rate(:,450) = 2e-11_r8 + rate(:,454) = 2.3e-11_r8 + rate(:,455) = 2e-11_r8 + rate(:,459) = 3.3e-11_r8 + rate(:,460) = 1e-12_r8 + rate(:,461) = 5.7e-11_r8 + rate(:,462) = 3.4e-11_r8 + rate(:,467) = 2.3e-12_r8 + rate(:,469) = 1.2e-11_r8 + rate(:,470) = 5.7e-11_r8 + rate(:,471) = 2.8e-11_r8 + rate(:,472) = 6.6e-11_r8 + rate(:,473) = 1.4e-11_r8 + rate(:,476) = 1.9e-12_r8 + rate(:,488) = 6.34e-08_r8 + rate(:,494) = 1.9e-11_r8 + rate(:,497) = 1.2e-14_r8 + rate(:,498) = 2e-10_r8 + rate(:,509) = 1.34e-11_r8 + rate(:,515) = 1.34e-11_r8 + rate(:,520) = 1.7e-11_r8 + rate(:,540) = 2.31e-07_r8 + rate(:,541) = 2.31e-06_r8 + rate(:,542) = 4.63e-07_r8 + + do n = 1,pver + offset = (n-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n) + end do + + rate(:,126) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) ) + rate(:,127) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + rate(:,128) = 3.3e-11_r8 * exp( 55._r8 * itemp(:) ) + rate(:,131) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:,134) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) ) + exp_fac(:) = exp( -2000._r8 * itemp(:) ) + rate(:,135) = 1.4e-12_r8 * exp_fac(:) + rate(:,386) = 1.05e-14_r8 * exp_fac(:) + rate(:,505) = 1.05e-14_r8 * exp_fac(:) + exp_fac(:) = exp( 200._r8 * itemp(:) ) + rate(:,140) = 3e-11_r8 * exp_fac(:) + rate(:,226) = 5.5e-12_r8 * exp_fac(:) + rate(:,265) = 3.8e-12_r8 * exp_fac(:) + rate(:,286) = 3.8e-12_r8 * exp_fac(:) + rate(:,313) = 3.8e-12_r8 * exp_fac(:) + rate(:,321) = 3.8e-12_r8 * exp_fac(:) + rate(:,325) = 3.8e-12_r8 * exp_fac(:) + rate(:,341) = 2.3e-11_r8 * exp_fac(:) + rate(:,351) = 3.8e-12_r8 * exp_fac(:) + rate(:,361) = 3.8e-12_r8 * exp_fac(:) + rate(:,388) = 1.52e-11_r8 * exp_fac(:) + rate(:,396) = 1.52e-12_r8 * exp_fac(:) + rate(:,402) = 3.8e-12_r8 * exp_fac(:) + rate(:,405) = 3.8e-12_r8 * exp_fac(:) + rate(:,409) = 3.8e-12_r8 * exp_fac(:) + rate(:,425) = 3.8e-12_r8 * exp_fac(:) + rate(:,429) = 3.8e-12_r8 * exp_fac(:) + rate(:,435) = 3.8e-12_r8 * exp_fac(:) + rate(:,439) = 3.8e-12_r8 * exp_fac(:) + rate(:,141) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:,142) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:,143) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) ) + exp_fac(:) = exp( 250._r8 * itemp(:) ) + rate(:,145) = 4.8e-11_r8 * exp_fac(:) + rate(:,224) = 1.7e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 180._r8 * itemp(:) ) + rate(:,146) = 1.8e-11_r8 * exp_fac(:) + rate(:,299) = 4.2e-12_r8 * exp_fac(:) + rate(:,320) = 4.2e-12_r8 * exp_fac(:) + rate(:,349) = 4.2e-12_r8 * exp_fac(:) + rate(:,369) = 4.4e-12_r8 * exp_fac(:) + rate(:,375) = 4.4e-12_r8 * exp_fac(:) + rate(:,448) = 4.2e-12_r8 * exp_fac(:) + rate(:,453) = 4.2e-12_r8 * exp_fac(:) + rate(:,458) = 4.2e-12_r8 * exp_fac(:) + rate(:,147) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:,151) = 4.5e-13_r8 * exp( 610._r8 * itemp(:) ) + rate(:,152) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + exp_fac(:) = exp( 220._r8 * itemp(:) ) + rate(:,153) = 2.9e-12_r8 * exp_fac(:) + rate(:,154) = 1.45e-12_r8 * exp_fac(:) + rate(:,155) = 1.45e-12_r8 * exp_fac(:) + rate(:,156) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:,157) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + exp_fac(:) = exp( -2450._r8 * itemp(:) ) + rate(:,158) = 1.2e-13_r8 * exp_fac(:) + rate(:,184) = 3e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 125._r8 * itemp(:) ) + rate(:,161) = 1.7e-11_r8 * exp_fac(:) + rate(:,259) = 5.5e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 260._r8 * itemp(:) ) + rate(:,165) = 3.44e-12_r8 * exp_fac(:) + rate(:,217) = 2.3e-12_r8 * exp_fac(:) + rate(:,220) = 8.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( -1500._r8 * itemp(:) ) + rate(:,166) = 3e-12_r8 * exp_fac(:) + rate(:,225) = 5.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 20._r8 * itemp(:) ) + rate(:,168) = 7.26e-11_r8 * exp_fac(:) + rate(:,169) = 4.64e-11_r8 * exp_fac(:) + rate(:,176) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) ) + rate(:,177) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) ) + rate(:,178) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) ) + rate(:,179) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) ) + exp_fac(:) = exp( 270._r8 * itemp(:) ) + rate(:,180) = 1.4e-11_r8 * exp_fac(:) + rate(:,194) = 7.4e-12_r8 * exp_fac(:) + rate(:,295) = 8.1e-12_r8 * exp_fac(:) + rate(:,181) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) ) + rate(:,182) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) ) + rate(:,183) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) ) + rate(:,185) = 1e-12_r8 * exp( -1590._r8 * itemp(:) ) + rate(:,186) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) ) + exp_fac(:) = exp( 290._r8 * itemp(:) ) + rate(:,187) = 2.6e-12_r8 * exp_fac(:) + rate(:,188) = 6.4e-12_r8 * exp_fac(:) + rate(:,218) = 4.1e-13_r8 * exp_fac(:) + rate(:,398) = 7.5e-12_r8 * exp_fac(:) + rate(:,412) = 7.5e-12_r8 * exp_fac(:) + rate(:,415) = 7.5e-12_r8 * exp_fac(:) + rate(:,418) = 7.5e-12_r8 * exp_fac(:) + rate(:,189) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) ) + exp_fac(:) = exp( -840._r8 * itemp(:) ) + rate(:,191) = 3.6e-12_r8 * exp_fac(:) + rate(:,240) = 2e-12_r8 * exp_fac(:) + rate(:,192) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) ) + rate(:,193) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) ) + exp_fac(:) = exp( 230._r8 * itemp(:) ) + rate(:,195) = 6e-13_r8 * exp_fac(:) + rate(:,215) = 1.5e-12_r8 * exp_fac(:) + rate(:,223) = 1.9e-11_r8 * exp_fac(:) + rate(:,196) = 1e-11_r8 * exp( -3300._r8 * itemp(:) ) + rate(:,197) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) ) + rate(:,198) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) ) + exp_fac(:) = exp( -500._r8 * itemp(:) ) + rate(:,200) = 3e-12_r8 * exp_fac(:) + rate(:,234) = 1.4e-10_r8 * exp_fac(:) + exp_fac(:) = exp( -800._r8 * itemp(:) ) + rate(:,212) = 1.7e-11_r8 * exp_fac(:) + rate(:,239) = 6.3e-12_r8 * exp_fac(:) + rate(:,213) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) ) + rate(:,214) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) ) + rate(:,216) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) ) + rate(:,219) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) ) + rate(:,222) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) ) + rate(:,227) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) ) + rate(:,233) = 1.6e-10_r8 * exp( -260._r8 * itemp(:) ) + exp_fac(:) = exp( 0._r8 * itemp(:) ) + rate(:,235) = 1.4e-11_r8 * exp_fac(:) + rate(:,237) = 2.14e-11_r8 * exp_fac(:) + rate(:,238) = 1.9e-10_r8 * exp_fac(:) + rate(:,251) = 2.57e-10_r8 * exp_fac(:) + rate(:,252) = 1.8e-10_r8 * exp_fac(:) + rate(:,253) = 1.794e-10_r8 * exp_fac(:) + rate(:,254) = 1.3e-10_r8 * exp_fac(:) + rate(:,255) = 7.65e-11_r8 * exp_fac(:) + rate(:,268) = 4e-13_r8 * exp_fac(:) + rate(:,272) = 1.31e-10_r8 * exp_fac(:) + rate(:,273) = 3.5e-11_r8 * exp_fac(:) + rate(:,274) = 9e-12_r8 * exp_fac(:) + rate(:,281) = 6.8e-14_r8 * exp_fac(:) + rate(:,282) = 2e-13_r8 * exp_fac(:) + rate(:,297) = 1e-12_r8 * exp_fac(:) + rate(:,301) = 1e-14_r8 * exp_fac(:) + rate(:,302) = 1e-11_r8 * exp_fac(:) + rate(:,303) = 1.15e-11_r8 * exp_fac(:) + rate(:,304) = 4e-14_r8 * exp_fac(:) + rate(:,317) = 3e-12_r8 * exp_fac(:) + rate(:,318) = 6.7e-13_r8 * exp_fac(:) + rate(:,328) = 3.5e-13_r8 * exp_fac(:) + rate(:,329) = 5.4e-11_r8 * exp_fac(:) + rate(:,332) = 2e-12_r8 * exp_fac(:) + rate(:,333) = 1.4e-11_r8 * exp_fac(:) + rate(:,336) = 2.4e-12_r8 * exp_fac(:) + rate(:,347) = 5e-12_r8 * exp_fac(:) + rate(:,357) = 2.2e-12_r8 * exp_fac(:) + rate(:,359) = 6.7e-12_r8 * exp_fac(:) + rate(:,362) = 3.5e-12_r8 * exp_fac(:) + rate(:,365) = 1.3e-11_r8 * exp_fac(:) + rate(:,366) = 1.4e-11_r8 * exp_fac(:) + rate(:,370) = 2.4e-12_r8 * exp_fac(:) + rate(:,371) = 1.4e-11_r8 * exp_fac(:) + rate(:,376) = 2.4e-12_r8 * exp_fac(:) + rate(:,377) = 4e-11_r8 * exp_fac(:) + rate(:,378) = 4e-11_r8 * exp_fac(:) + rate(:,380) = 1.4e-11_r8 * exp_fac(:) + rate(:,384) = 2.4e-12_r8 * exp_fac(:) + rate(:,385) = 4e-11_r8 * exp_fac(:) + rate(:,389) = 7e-11_r8 * exp_fac(:) + rate(:,390) = 1e-10_r8 * exp_fac(:) + rate(:,395) = 2.4e-12_r8 * exp_fac(:) + rate(:,410) = 4.7e-11_r8 * exp_fac(:) + rate(:,423) = 2.1e-12_r8 * exp_fac(:) + rate(:,424) = 2.8e-13_r8 * exp_fac(:) + rate(:,432) = 1.7e-11_r8 * exp_fac(:) + rate(:,438) = 8.4e-11_r8 * exp_fac(:) + rate(:,440) = 1.9e-11_r8 * exp_fac(:) + rate(:,441) = 1.2e-14_r8 * exp_fac(:) + rate(:,442) = 2e-10_r8 * exp_fac(:) + rate(:,449) = 2.4e-12_r8 * exp_fac(:) + rate(:,450) = 2e-11_r8 * exp_fac(:) + rate(:,454) = 2.3e-11_r8 * exp_fac(:) + rate(:,455) = 2e-11_r8 * exp_fac(:) + rate(:,459) = 3.3e-11_r8 * exp_fac(:) + rate(:,460) = 1e-12_r8 * exp_fac(:) + rate(:,461) = 5.7e-11_r8 * exp_fac(:) + rate(:,462) = 3.4e-11_r8 * exp_fac(:) + rate(:,467) = 2.3e-12_r8 * exp_fac(:) + rate(:,469) = 1.2e-11_r8 * exp_fac(:) + rate(:,470) = 5.7e-11_r8 * exp_fac(:) + rate(:,471) = 2.8e-11_r8 * exp_fac(:) + rate(:,472) = 6.6e-11_r8 * exp_fac(:) + rate(:,473) = 1.4e-11_r8 * exp_fac(:) + rate(:,476) = 1.9e-12_r8 * exp_fac(:) + rate(:,488) = 6.34e-08_r8 * exp_fac(:) + rate(:,494) = 1.9e-11_r8 * exp_fac(:) + rate(:,497) = 1.2e-14_r8 * exp_fac(:) + rate(:,498) = 2e-10_r8 * exp_fac(:) + rate(:,509) = 1.34e-11_r8 * exp_fac(:) + rate(:,515) = 1.34e-11_r8 * exp_fac(:) + rate(:,520) = 1.7e-11_r8 * exp_fac(:) + rate(:,540) = 2.31e-07_r8 * exp_fac(:) + rate(:,541) = 2.31e-06_r8 * exp_fac(:) + rate(:,542) = 4.63e-07_r8 * exp_fac(:) + exp_fac(:) = exp( 400._r8 * itemp(:) ) + rate(:,236) = 6e-12_r8 * exp_fac(:) + rate(:,334) = 5e-13_r8 * exp_fac(:) + rate(:,367) = 5e-13_r8 * exp_fac(:) + rate(:,372) = 5e-13_r8 * exp_fac(:) + rate(:,381) = 5e-13_r8 * exp_fac(:) + rate(:,392) = 5e-13_r8 * exp_fac(:) + rate(:,241) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) ) + rate(:,242) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) ) + exp_fac(:) = exp( -1520._r8 * itemp(:) ) + rate(:,243) = 1.64e-12_r8 * exp_fac(:) + rate(:,353) = 8.5e-16_r8 * exp_fac(:) + exp_fac(:) = exp( -1100._r8 * itemp(:) ) + rate(:,244) = 2.03e-11_r8 * exp_fac(:) + rate(:,475) = 3.4e-12_r8 * exp_fac(:) + rate(:,245) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) ) + rate(:,246) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) ) + rate(:,247) = 9e-13_r8 * exp( -360._r8 * itemp(:) ) + exp_fac(:) = exp( -1600._r8 * itemp(:) ) + rate(:,248) = 1.25e-12_r8 * exp_fac(:) + rate(:,258) = 3.4e-11_r8 * exp_fac(:) + rate(:,249) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) ) + rate(:,250) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) ) + rate(:,256) = 9.7e-15_r8 * exp( 625._r8 * itemp(:) ) + rate(:,257) = 6e-13_r8 * exp( -2058._r8 * itemp(:) ) + rate(:,260) = 5e-13_r8 * exp( -424._r8 * itemp(:) ) + rate(:,261) = 1.9e-14_r8 * exp( 706._r8 * itemp(:) ) + rate(:,262) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) ) + exp_fac(:) = exp( 300._r8 * itemp(:) ) + rate(:,263) = 2.8e-12_r8 * exp_fac(:) + rate(:,324) = 2.9e-12_r8 * exp_fac(:) + rate(:,264) = 2.9e-12_r8 * exp( -345._r8 * itemp(:) ) + rate(:,266) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) ) + exp_fac(:) = exp( 700._r8 * itemp(:) ) + rate(:,269) = 7.5e-13_r8 * exp_fac(:) + rate(:,283) = 7.5e-13_r8 * exp_fac(:) + rate(:,298) = 7.5e-13_r8 * exp_fac(:) + rate(:,319) = 7.5e-13_r8 * exp_fac(:) + rate(:,323) = 8.6e-13_r8 * exp_fac(:) + rate(:,335) = 8e-13_r8 * exp_fac(:) + rate(:,348) = 7.5e-13_r8 * exp_fac(:) + rate(:,358) = 7.5e-13_r8 * exp_fac(:) + rate(:,368) = 8e-13_r8 * exp_fac(:) + rate(:,373) = 8e-13_r8 * exp_fac(:) + rate(:,382) = 8e-13_r8 * exp_fac(:) + rate(:,393) = 8e-13_r8 * exp_fac(:) + rate(:,400) = 7.5e-13_r8 * exp_fac(:) + rate(:,404) = 7.5e-13_r8 * exp_fac(:) + rate(:,407) = 7.5e-13_r8 * exp_fac(:) + rate(:,420) = 7.5e-13_r8 * exp_fac(:) + rate(:,427) = 7.5e-13_r8 * exp_fac(:) + rate(:,433) = 7.5e-13_r8 * exp_fac(:) + rate(:,436) = 7.5e-13_r8 * exp_fac(:) + rate(:,447) = 7.5e-13_r8 * exp_fac(:) + rate(:,452) = 7.5e-13_r8 * exp_fac(:) + rate(:,457) = 7.5e-13_r8 * exp_fac(:) + rate(:,500) = 7.5e-13_r8 * exp_fac(:) + rate(:,507) = 7.5e-13_r8 * exp_fac(:) + rate(:,517) = 7.5e-13_r8 * exp_fac(:) + rate(:,521) = 7.5e-13_r8 * exp_fac(:) + rate(:,270) = 2.4e+12_r8 * exp( -7000._r8 * itemp(:) ) + rate(:,271) = 2.6e-12_r8 * exp( 265._r8 * itemp(:) ) + rate(:,275) = 1.08e-10_r8 * exp( 105._r8 * itemp(:) ) + rate(:,280) = 1.2e-14_r8 * exp( -2630._r8 * itemp(:) ) + exp_fac(:) = exp( 365._r8 * itemp(:) ) + rate(:,284) = 2.6e-12_r8 * exp_fac(:) + rate(:,401) = 2.6e-12_r8 * exp_fac(:) + rate(:,406) = 2.6e-12_r8 * exp_fac(:) + rate(:,408) = 2.6e-12_r8 * exp_fac(:) + rate(:,421) = 2.6e-12_r8 * exp_fac(:) + rate(:,428) = 2.6e-12_r8 * exp_fac(:) + rate(:,434) = 2.6e-12_r8 * exp_fac(:) + rate(:,437) = 2.6e-12_r8 * exp_fac(:) + rate(:,501) = 2.6e-12_r8 * exp_fac(:) + rate(:,508) = 2.6e-12_r8 * exp_fac(:) + rate(:,518) = 2.6e-12_r8 * exp_fac(:) + rate(:,522) = 2.6e-12_r8 * exp_fac(:) + rate(:,285) = 6.9e-12_r8 * exp( -230._r8 * itemp(:) ) + rate(:,287) = 7.2e-11_r8 * exp( -70._r8 * itemp(:) ) + rate(:,288) = 7.66e-12_r8 * exp( -1020._r8 * itemp(:) ) + exp_fac(:) = exp( -1900._r8 * itemp(:) ) + rate(:,289) = 1.4e-12_r8 * exp_fac(:) + rate(:,309) = 6.5e-15_r8 * exp_fac(:) + exp_fac(:) = exp( 350._r8 * itemp(:) ) + rate(:,290) = 4.63e-12_r8 * exp_fac(:) + rate(:,504) = 2.7e-12_r8 * exp_fac(:) + rate(:,291) = 7.8e-13_r8 * exp( -1050._r8 * itemp(:) ) + exp_fac(:) = exp( 500._r8 * itemp(:) ) + rate(:,292) = 2.9e-12_r8 * exp_fac(:) + rate(:,293) = 2e-12_r8 * exp_fac(:) + rate(:,322) = 7.1e-13_r8 * exp_fac(:) + rate(:,343) = 2e-12_r8 * exp_fac(:) + rate(:,446) = 2e-12_r8 * exp_fac(:) + rate(:,451) = 2e-12_r8 * exp_fac(:) + rate(:,456) = 2e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 1040._r8 * itemp(:) ) + rate(:,294) = 4.3e-13_r8 * exp_fac(:) + rate(:,344) = 4.3e-13_r8 * exp_fac(:) + rate(:,397) = 4.3e-13_r8 * exp_fac(:) + rate(:,411) = 4.3e-13_r8 * exp_fac(:) + rate(:,414) = 4.3e-13_r8 * exp_fac(:) + rate(:,417) = 4.3e-13_r8 * exp_fac(:) + rate(:,296) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) + rate(:,300) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) + rate(:,308) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) + rate(:,310) = 1e-13_r8 * exp( 557._r8 * itemp(:) ) + exp_fac(:) = exp( 1300._r8 * itemp(:) ) + rate(:,311) = 1.41e-13_r8 * exp_fac(:) + rate(:,495) = 2.75e-13_r8 * exp_fac(:) + rate(:,503) = 2.12e-13_r8 * exp_fac(:) + rate(:,511) = 2.6e-13_r8 * exp_fac(:) + exp_fac(:) = exp( 360._r8 * itemp(:) ) + rate(:,312) = 2.7e-12_r8 * exp_fac(:) + rate(:,337) = 2.7e-12_r8 * exp_fac(:) + rate(:,338) = 1.3e-13_r8 * exp_fac(:) + rate(:,340) = 9.6e-12_r8 * exp_fac(:) + rate(:,346) = 5.3e-12_r8 * exp_fac(:) + rate(:,383) = 2.7e-12_r8 * exp_fac(:) + rate(:,394) = 2.7e-12_r8 * exp_fac(:) + rate(:,496) = 2.7e-12_r8 * exp_fac(:) + rate(:,512) = 2.7e-12_r8 * exp_fac(:) + rate(:,314) = 9.19e-12_r8 * exp( -630._r8 * itemp(:) ) + rate(:,315) = 1.4e-12_r8 * exp( -1860._r8 * itemp(:) ) + rate(:,316) = 8.4e-13_r8 * exp( 830._r8 * itemp(:) ) + rate(:,330) = 4.8e-12_r8 * exp( 120._r8 * itemp(:) ) + rate(:,331) = 5.1e-14_r8 * exp( 693._r8 * itemp(:) ) + rate(:,339) = 1.5e-15_r8 * exp( -2100._r8 * itemp(:) ) + exp_fac(:) = exp( 530._r8 * itemp(:) ) + rate(:,342) = 4.6e-12_r8 * exp_fac(:) + rate(:,345) = 2.3e-12_r8 * exp_fac(:) + rate(:,350) = 2.3e-12_r8 * exp( -170._r8 * itemp(:) ) + rate(:,354) = 4.13e-12_r8 * exp( 452._r8 * itemp(:) ) + rate(:,360) = 5.4e-14_r8 * exp( 870._r8 * itemp(:) ) + exp_fac(:) = exp( 175._r8 * itemp(:) ) + rate(:,363) = 1.86e-11_r8 * exp_fac(:) + rate(:,364) = 1.86e-11_r8 * exp_fac(:) + rate(:,374) = 1.6e+09_r8 * exp( -8300._r8 * itemp(:) ) + exp_fac(:) = exp( -446._r8 * itemp(:) ) + rate(:,379) = 3.03e-12_r8 * exp_fac(:) + rate(:,502) = 3.03e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 410._r8 * itemp(:) ) + rate(:,387) = 2.54e-11_r8 * exp_fac(:) + rate(:,506) = 2.54e-11_r8 * exp_fac(:) + rate(:,391) = 1.3e-12_r8 * exp( 640._r8 * itemp(:) ) + exp_fac(:) = exp( -193._r8 * itemp(:) ) + rate(:,399) = 2.3e-12_r8 * exp_fac(:) + rate(:,499) = 2.3e-12_r8 * exp_fac(:) + rate(:,403) = 5.9e-12_r8 * exp( 225._r8 * itemp(:) ) + rate(:,422) = 4.7e-13_r8 * exp( 1220._r8 * itemp(:) ) + exp_fac(:) = exp( 352._r8 * itemp(:) ) + rate(:,430) = 1.7e-12_r8 * exp_fac(:) + rate(:,516) = 1.7e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 490._r8 * itemp(:) ) + rate(:,443) = 1.2e-12_r8 * exp_fac(:) + rate(:,510) = 1.2e-12_r8 * exp_fac(:) + exp_fac(:) = exp( -580._r8 * itemp(:) ) + rate(:,444) = 6.3e-16_r8 * exp_fac(:) + rate(:,513) = 6.3e-16_r8 * exp_fac(:) + exp_fac(:) = exp( 440._r8 * itemp(:) ) + rate(:,445) = 1.2e-11_r8 * exp_fac(:) + rate(:,514) = 1.2e-11_r8 * exp_fac(:) + rate(:,463) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) ) + rate(:,464) = 1.1e-11_r8 * exp( -280._r8 * itemp(:) ) + rate(:,465) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) ) + rate(:,466) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) ) + rate(:,474) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) ) + rate(:,477) = 2.6e-11_r8 * exp( 330._r8 * itemp(:) ) + rate(:,480) = 1.7e-12_r8 * exp( -710._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + n = ncol*pver + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( rate(:,139), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 6.9e-31_r8 * itemp(:)**1._r8 + kinf(:) = 2.6e-11_r8 + call jpl( rate(:,149), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8 + kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8 + call jpl( rate(:,159), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9e-32_r8 * itemp(:)**1.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,167), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8 + call jpl( rate(:,170), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.4e-30_r8 * itemp(:)**3._r8 + kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8) + call jpl( rate(:,171), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-30_r8 * itemp(:)**3._r8 + kinf(:) = 2.8e-11_r8 + call jpl( rate(:,172), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8 + call jpl( rate(:,190), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8 + kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,210), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8 + kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8 + call jpl( rate(:,221), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 6.1e-33_r8 * itemp(:)**1.5_r8 + kinf(:) = 9.8e-15_r8 * itemp(:)**(-4.6_r8) + call jpl( rate(:,267), m, 0.8_r8, ko, kinf, n ) + + ko(:) = 5.2e-30_r8 * itemp(:)**2.4_r8 + kinf(:) = 2.2e-10_r8 * itemp(:)**0.7_r8 + call jpl( rate(:,277), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 5.5e-30_r8 + kinf(:) = 8.3e-13_r8 * itemp(:)**(-2._r8) + call jpl( rate(:,278), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.6e-29_r8 * itemp(:)**3.3_r8 + kinf(:) = 3.1e-10_r8 * itemp(:) + call jpl( rate(:,279), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8.6e-29_r8 * itemp(:)**3.1_r8 + kinf(:) = 9e-12_r8 * itemp(:)**0.85_r8 + call jpl( rate(:,305), m, 0.48_r8, ko, kinf, n ) + + ko(:) = 7.3e-29_r8 * itemp(:)**4.1_r8 + kinf(:) = 9.5e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,306), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,326), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,352), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,355), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,413), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,416), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,419), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,426), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.9e-31_r8 * itemp(:)**4.1_r8 + kinf(:) = 1.7e-12_r8 * itemp(:)**(-0.2_r8) + call jpl( rate(:,468), m, 0.6_r8, ko, kinf, n ) + + end subroutine setrxt + + + subroutine setrxt_hrates( rate, temp, m, ncol, kbot ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + integer, intent(in) :: kbot + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + integer :: k + real(r8) :: itemp(ncol*kbot) + real(r8) :: exp_fac(ncol*kbot) + real(r8) :: ko(ncol*kbot) + real(r8) :: kinf(ncol*kbot) + real(r8) :: wrk(ncol*kbot) + + n = ncol*kbot + + rate(:n,136) = 6.9e-12_r8 + + do k = 1,kbot + offset = (k-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k) + end do + + rate(:n,127) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + rate(:n,131) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:n,140) = 3e-11_r8 * exp( 200._r8 * itemp(:) ) + rate(:n,141) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:n,142) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:n,145) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) ) + rate(:n,146) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) ) + rate(:n,147) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:n,152) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + rate(:n,156) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:n,157) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + rate(:n,165) = 3.44e-12_r8 * exp( 260._r8 * itemp(:) ) + rate(:n,166) = 3e-12_r8 * exp( -1500._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( wrk, m, 0.6_r8, ko, kinf, n ) + rate(:n,139) = wrk(:) + + + + + + + + + + + + + + + + + + + + + + + + + end subroutine setrxt_hrates + + end module mo_setrxt diff --git a/src/chemistry/pp_trop_strat_mam5_t1s1/mo_sim_dat.F90 b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_sim_dat.F90 new file mode 100644 index 0000000000..2c4c734035 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s1/mo_sim_dat.F90 @@ -0,0 +1,813 @@ + + module mo_sim_dat + + private + public :: set_sim_dat + + contains + + subroutine set_sim_dat + + use chem_mods, only : clscnt, cls_rxt_cnt, clsmap, permute, adv_mass, fix_mass, crb_mass + use chem_mods, only : diag_map + use chem_mods, only : phtcnt, rxt_tag_cnt, rxt_tag_lst, rxt_tag_map + use chem_mods, only : pht_alias_lst, pht_alias_mult + use chem_mods, only : extfrc_lst, inv_lst, slvd_lst + use chem_mods, only : enthalpy_cnt, cph_enthalpy, cph_rid, num_rnts, rxntot + use cam_abortutils,only : endrun + use mo_tracname, only : solsym + use chem_mods, only : frc_from_dataset + use chem_mods, only : is_scalar, is_vector + use shr_kind_mod, only : r8 => shr_kind_r8 + use cam_logfile, only : iulog + + implicit none + +!-------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------- + integer :: ios + + is_scalar = .false. + is_vector = .true. + + clscnt(:) = (/ 2, 0, 0, 228, 0 /) + + cls_rxt_cnt(:,1) = (/ 9, 0, 0, 2 /) + cls_rxt_cnt(:,4) = (/ 2, 165, 375, 228 /) + + solsym(:230) = (/ 'ALKNIT ','ALKOOH ','bc_a1 ','bc_a4 ','BCARY ', & + 'BENZENE ','BENZOOH ','BEPOMUC ','BIGALD ','BIGALD1 ', & + 'BIGALD2 ','BIGALD3 ','BIGALD4 ','BIGALK ','BIGENE ', & + 'BR ','BRCL ','BRO ','BRONO2 ','BRY ', & + 'BZALD ','BZOOH ','C2H2 ','C2H4 ','C2H5OH ', & + 'C2H5OOH ','C2H6 ','C3H6 ','C3H7OOH ','C3H8 ', & + 'C6H5OOH ','CCL4 ','CF2CLBR ','CF3BR ','CFC11 ', & + 'CFC113 ','CFC114 ','CFC115 ','CFC12 ','CH2BR2 ', & + 'CH2O ','CH3BR ','CH3CCL3 ','CH3CHO ','CH3CL ', & + 'CH3CN ','CH3COCH3 ','CH3COCHO ','CH3COOH ','CH3COOOH ', & + 'CH3OH ','CH3OOH ','CH4 ','CHBR3 ','CL ', & + 'CL2 ','CL2O2 ','CLO ','CLONO2 ','CLY ', & + 'CO ','CO2 ','COF2 ','COFCL ','CRESOL ', & + 'DMS ','dst_a1 ','dst_a2 ','dst_a3 ','E90 ', & + 'EOOH ','F ','GLYALD ','GLYOXAL ','H ', & + 'H2 ','H2402 ','H2O2 ','H2SO4 ','HBR ', & + 'HCFC141B ','HCFC142B ','HCFC22 ','HCL ','HCN ', & + 'HCOOH ','HF ','HNO3 ','HO2NO2 ','HOBR ', & + 'HOCL ','HONITR ','HPALD ','HYAC ','HYDRALD ', & + 'IEPOX ','ISOP ','ISOPNITA ','ISOPNITB ','ISOPNO3 ', & + 'ISOPNOOH ','ISOPOOH ','IVOC ','MACR ','MACROOH ', & + 'MEK ','MEKOOH ','MPAN ','MTERP ','MVK ', & + 'N ','N2O ','N2O5 ','NC4CH2OH ','NC4CHO ', & + 'ncl_a1 ','ncl_a2 ','ncl_a3 ','NH3 ','NH4 ', & + 'NH_5 ','NH_50 ','NO ','NO2 ','NO3 ', & + 'NOA ','NTERPOOH ','num_a1 ','num_a2 ','num_a3 ', & + 'num_a4 ','num_a5 ','O ','O3 ','O3S ', & + 'OCLO ','OCS ','ONITR ','PAN ','PBZNIT ', & + 'PHENO ','PHENOL ','PHENOOH ','pom_a1 ','pom_a4 ', & + 'POOH ','ROOH ','S ','SF6 ','SO ', & + 'SO2 ','SO3 ','so4_a1 ','so4_a2 ','so4_a3 ', & + 'so4_a5 ','soa1_a1 ','soa1_a2 ','soa2_a1 ','soa2_a2 ', & + 'soa3_a1 ','soa3_a2 ','soa4_a1 ','soa4_a2 ','soa5_a1 ', & + 'soa5_a2 ','SOAG0 ','SOAG1 ','SOAG2 ','SOAG3 ', & + 'SOAG4 ','ST80_25 ','SVOC ','TEPOMUC ','TERP2OOH ', & + 'TERPNIT ','TERPOOH ','TERPROD1 ','TERPROD2 ','TOLOOH ', & + 'TOLUENE ','XOOH ','XYLENES ','XYLENOOH ','XYLOL ', & + 'XYLOLOOH ','NHDEP ','NDEP ','ACBZO2 ','ALKO2 ', & + 'BCARYO2VBS ','BENZO2 ','BENZO2VBS ','BZOO ','C2H5O2 ', & + 'C3H7O2 ','C6H5O2 ','CH3CO3 ','CH3O2 ','DICARBO2 ', & + 'ENEO2 ','EO ','EO2 ','HO2 ','HOCH2OO ', & + 'ISOPAO2 ','ISOPBO2 ','ISOPO2VBS ','IVOCO2VBS ','MACRO2 ', & + 'MALO2 ','MCO3 ','MDIALO2 ','MEKO2 ','MTERPO2VBS ', & + 'NTERPO2 ','O1D ','OH ','PHENO2 ','PO2 ', & + 'RO2 ','TERP2O2 ','TERPO2 ','TOLO2 ','TOLUO2VBS ', & + 'XO2 ','XYLENO2 ','XYLEO2VBS ','XYLOLO2 ','H2O ' /) + + adv_mass(:230) = (/ 133.141340_r8, 104.142600_r8, 12.011000_r8, 12.011000_r8, 204.342600_r8, & + 78.110400_r8, 160.122200_r8, 126.108600_r8, 98.098200_r8, 84.072400_r8, & + 98.098200_r8, 98.098200_r8, 112.124000_r8, 72.143800_r8, 56.103200_r8, & + 79.904000_r8, 115.356700_r8, 95.903400_r8, 141.908940_r8, 99.716850_r8, & + 106.120800_r8, 124.135000_r8, 26.036800_r8, 28.051600_r8, 46.065800_r8, & + 62.065200_r8, 30.066400_r8, 42.077400_r8, 76.091000_r8, 44.092200_r8, & + 110.109200_r8, 153.821800_r8, 165.364506_r8, 148.910210_r8, 137.367503_r8, & + 187.375310_r8, 170.921013_r8, 154.466716_r8, 120.913206_r8, 173.833800_r8, & + 30.025200_r8, 94.937200_r8, 133.402300_r8, 44.051000_r8, 50.485900_r8, & + 41.050940_r8, 58.076800_r8, 72.061400_r8, 60.050400_r8, 76.049800_r8, & + 32.040000_r8, 48.039400_r8, 16.040600_r8, 252.730400_r8, 35.452700_r8, & + 70.905400_r8, 102.904200_r8, 51.452100_r8, 97.457640_r8, 100.916850_r8, & + 28.010400_r8, 44.009800_r8, 66.007206_r8, 82.461503_r8, 108.135600_r8, & + 62.132400_r8, 135.064039_r8, 135.064039_r8, 135.064039_r8, 28.010400_r8, & + 78.064600_r8, 18.998403_r8, 60.050400_r8, 58.035600_r8, 1.007400_r8, & + 2.014800_r8, 259.823613_r8, 34.013600_r8, 98.078400_r8, 80.911400_r8, & + 116.948003_r8, 100.493706_r8, 86.467906_r8, 36.460100_r8, 27.025140_r8, & + 46.024600_r8, 20.005803_r8, 63.012340_r8, 79.011740_r8, 96.910800_r8, & + 52.459500_r8, 135.114940_r8, 116.112400_r8, 74.076200_r8, 100.113000_r8, & + 118.127200_r8, 68.114200_r8, 147.125940_r8, 147.125940_r8, 162.117940_r8, & + 163.125340_r8, 118.127200_r8, 184.350200_r8, 70.087800_r8, 120.100800_r8, & + 72.102600_r8, 104.101400_r8, 147.084740_r8, 136.228400_r8, 70.087800_r8, & + 14.006740_r8, 44.012880_r8, 108.010480_r8, 147.125940_r8, 145.111140_r8, & + 58.442468_r8, 58.442468_r8, 58.442468_r8, 17.028940_r8, 18.036340_r8, & + 28.010400_r8, 28.010400_r8, 30.006140_r8, 46.005540_r8, 62.004940_r8, & + 119.074340_r8, 231.239540_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, & + 1.007400_r8, 1.007400_r8, 15.999400_r8, 47.998200_r8, 47.998200_r8, & + 67.451500_r8, 60.076400_r8, 133.100140_r8, 121.047940_r8, 183.117740_r8, & + 93.102400_r8, 94.109800_r8, 176.121600_r8, 12.011000_r8, 12.011000_r8, & + 92.090400_r8, 90.075600_r8, 32.066000_r8, 146.056419_r8, 48.065400_r8, & + 64.064800_r8, 80.064200_r8, 115.107340_r8, 115.107340_r8, 115.107340_r8, & + 115.107340_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & + 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & + 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & + 250.445000_r8, 28.010400_r8, 310.582400_r8, 140.134400_r8, 200.226000_r8, & + 215.240140_r8, 186.241400_r8, 168.227200_r8, 154.201400_r8, 174.148000_r8, & + 92.136200_r8, 150.126000_r8, 106.162000_r8, 188.173800_r8, 122.161400_r8, & + 204.173200_r8, 14.006740_r8, 14.006740_r8, 137.112200_r8, 103.135200_r8, & + 253.348200_r8, 159.114800_r8, 159.114800_r8, 123.127600_r8, 61.057800_r8, & + 75.083600_r8, 109.101800_r8, 75.042400_r8, 47.032000_r8, 129.089600_r8, & + 105.108800_r8, 61.057800_r8, 77.057200_r8, 33.006200_r8, 63.031400_r8, & + 117.119800_r8, 117.119800_r8, 117.119800_r8, 233.355800_r8, 119.093400_r8, & + 115.063800_r8, 101.079200_r8, 117.078600_r8, 103.094000_r8, 185.234000_r8, & + 230.232140_r8, 15.999400_r8, 17.006800_r8, 175.114200_r8, 91.083000_r8, & + 89.068200_r8, 199.218600_r8, 185.234000_r8, 173.140600_r8, 173.140600_r8, & + 149.118600_r8, 187.166400_r8, 187.166400_r8, 203.165800_r8, 18.014200_r8 /) + + crb_mass(:230) = (/ 60.055000_r8, 60.055000_r8, 12.011000_r8, 12.011000_r8, 180.165000_r8, & + 72.066000_r8, 72.066000_r8, 72.066000_r8, 60.055000_r8, 48.044000_r8, & + 60.055000_r8, 60.055000_r8, 72.066000_r8, 60.055000_r8, 48.044000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 84.077000_r8, 84.077000_r8, 24.022000_r8, 24.022000_r8, 24.022000_r8, & + 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 36.033000_r8, & + 72.066000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + 24.022000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, & + 24.022000_r8, 36.033000_r8, 36.033000_r8, 24.022000_r8, 24.022000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 84.077000_r8, & + 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 24.022000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, & + 0.000000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 24.022000_r8, 24.022000_r8, 12.011000_r8, 0.000000_r8, 12.011000_r8, & + 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 48.044000_r8, 60.055000_r8, 36.033000_r8, 60.055000_r8, & + 60.055000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, & + 60.055000_r8, 60.055000_r8, 156.143000_r8, 48.044000_r8, 48.044000_r8, & + 48.044000_r8, 48.044000_r8, 48.044000_r8, 120.110000_r8, 48.044000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 60.055000_r8, 60.055000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 36.033000_r8, 120.110000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 12.011000_r8, 48.044000_r8, 24.022000_r8, 84.077000_r8, & + 72.066000_r8, 72.066000_r8, 72.066000_r8, 12.011000_r8, 12.011000_r8, & + 36.033000_r8, 36.033000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & + 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & + 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & + 180.165000_r8, 12.011000_r8, 264.242000_r8, 84.077000_r8, 120.110000_r8, & + 120.110000_r8, 120.110000_r8, 120.110000_r8, 108.099000_r8, 84.077000_r8, & + 84.077000_r8, 60.055000_r8, 96.088000_r8, 96.088000_r8, 96.088000_r8, & + 96.088000_r8, 0.000000_r8, 0.000000_r8, 84.077000_r8, 60.055000_r8, & + 180.165000_r8, 72.066000_r8, 72.066000_r8, 84.077000_r8, 24.022000_r8, & + 36.033000_r8, 72.066000_r8, 24.022000_r8, 12.011000_r8, 60.055000_r8, & + 48.044000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, 12.011000_r8, & + 60.055000_r8, 60.055000_r8, 60.055000_r8, 156.143000_r8, 48.044000_r8, & + 48.044000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, 120.110000_r8, & + 120.110000_r8, 0.000000_r8, 0.000000_r8, 72.066000_r8, 36.033000_r8, & + 36.033000_r8, 120.110000_r8, 120.110000_r8, 84.077000_r8, 84.077000_r8, & + 60.055000_r8, 96.088000_r8, 96.088000_r8, 96.088000_r8, 0.000000_r8 /) + + fix_mass(: 3) = (/ 0.00000000_r8, 31.9988000_r8, 28.0134800_r8 /) + + clsmap(: 2,1) = (/ 188, 187 /) + clsmap(:228,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, & + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, & + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, & + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, & + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, & + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, & + 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, & + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, & + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, & + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, & + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, & + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, & + 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, & + 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, & + 181, 182, 183, 184, 185, 186, 189, 190, 191, 192, & + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, & + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, & + 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, & + 223, 224, 225, 226, 227, 228, 229, 230 /) + + permute(:228,4) = (/ 155, 152, 1, 2, 186, 71, 121, 72, 115, 128, & + 97, 146, 105, 84, 111, 210, 85, 225, 142, 3, & + 87, 108, 100, 141, 93, 109, 102, 187, 120, 58, & + 94, 55, 67, 68, 59, 69, 60, 70, 61, 130, & + 214, 147, 62, 191, 113, 56, 181, 201, 157, 149, & + 168, 127, 211, 116, 222, 74, 53, 217, 179, 4, & + 194, 169, 88, 90, 78, 98, 5, 6, 7, 8, & + 63, 176, 192, 185, 212, 209, 57, 148, 64, 170, & + 89, 91, 101, 224, 75, 182, 99, 213, 122, 166, & + 171, 197, 83, 196, 110, 65, 173, 145, 139, 199, & + 119, 162, 49, 200, 103, 135, 104, 144, 183, 206, & + 133, 76, 96, 114, 190, 9, 10, 11, 54, 12, & + 13, 14, 220, 221, 218, 175, 117, 15, 16, 17, & + 18, 19, 226, 227, 20, 106, 112, 86, 138, 66, & + 129, 73, 107, 21, 22, 140, 118, 136, 23, 202, & + 174, 92, 24, 25, 26, 27, 28, 29, 30, 31, & + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, & + 42, 43, 44, 79, 153, 150, 131, 184, 189, 154, & + 77, 80, 81, 158, 82, 123, 137, 178, 45, 132, & + 46, 124, 172, 167, 151, 208, 219, 164, 143, 95, & + 159, 223, 125, 203, 204, 47, 48, 205, 160, 207, & + 177, 156, 50, 188, 215, 216, 126, 165, 195, 193, & + 180, 161, 51, 198, 163, 52, 134, 228 /) + + diag_map(:228) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & + 41, 42, 43, 49, 55, 61, 67, 73, 75, 81, & + 87, 93, 94, 97, 100, 103, 106, 110, 114, 118, & + 122, 126, 130, 133, 136, 139, 142, 147, 152, 157, & + 163, 169, 173, 178, 180, 184, 188, 195, 200, 204, & + 209, 217, 222, 227, 230, 233, 236, 239, 242, 247, & + 252, 258, 262, 266, 270, 274, 280, 283, 289, 292, & + 299, 305, 311, 316, 321, 326, 331, 337, 342, 347, & + 350, 358, 366, 374, 380, 386, 392, 398, 404, 410, & + 416, 422, 428, 436, 442, 449, 455, 461, 464, 468, & + 475, 484, 492, 500, 507, 512, 519, 525, 533, 541, & + 549, 557, 565, 573, 582, 591, 595, 604, 611, 618, & + 626, 633, 643, 656, 667, 678, 685, 694, 707, 714, & + 725, 736, 749, 760, 769, 779, 788, 798, 802, 805, & + 814, 824, 835, 852, 858, 865, 874, 888, 900, 913, & + 923, 930, 949, 970, 980,1000,1025,1046,1060,1074, & + 1086,1097,1110,1124,1130,1141,1154,1174,1194,1210, & + 1222,1233,1257,1289,1312,1333,1355,1387,1402,1416, & + 1431,1446,1464,1486,1527,1692,1719,1777,1830,1923, & + 1968,2008,2116,2140,2165,2197,2259,2286 /) + + extfrc_lst(: 13) = (/ 'num_a4 ','pom_a4 ','bc_a4 ','SVOC ','SO2 ', & + 'NO2 ','CO ','num_a1 ','num_a2 ','so4_a1 ', & + 'so4_a2 ','H2O ','NO ' /) + + frc_from_dataset(: 13) = (/ .true., .true., .true., .true., .true., & + .true., .true., .true., .true., .true., & + .true., .true., .false. /) + + inv_lst(: 3) = (/ 'M ', 'O2 ', 'N2 ' /) + + slvd_lst(: 41) = (/ 'ACBZO2 ', 'ALKO2 ', 'BCARYO2VBS ', 'BENZO2 ', 'BENZO2VBS ', & + 'BZOO ', 'C2H5O2 ', 'C3H7O2 ', 'C6H5O2 ', 'CH3CO3 ', & + 'CH3O2 ', 'DICARBO2 ', 'ENEO2 ', 'EO ', 'EO2 ', & + 'HO2 ', 'HOCH2OO ', 'ISOPAO2 ', 'ISOPBO2 ', 'ISOPO2VBS ', & + 'IVOCO2VBS ', 'MACRO2 ', 'MALO2 ', 'MCO3 ', 'MDIALO2 ', & + 'MEKO2 ', 'MTERPO2VBS ', 'NTERPO2 ', 'O1D ', 'OH ', & + 'PHENO2 ', 'PO2 ', 'RO2 ', 'TERP2O2 ', 'TERPO2 ', & + 'TOLO2 ', 'TOLUO2VBS ', 'XO2 ', 'XYLENO2 ', 'XYLEO2VBS ', & + 'XYLOLO2 ' /) + + if( allocated( rxt_tag_lst ) ) then + deallocate( rxt_tag_lst ) + end if + allocate( rxt_tag_lst(rxt_tag_cnt),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate rxt_tag_lst; error = ',ios + call endrun + end if + if( allocated( rxt_tag_map ) ) then + deallocate( rxt_tag_map ) + end if + allocate( rxt_tag_map(rxt_tag_cnt),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate rxt_tag_map; error = ',ios + call endrun + end if + rxt_tag_lst( 1: 200) = (/ 'jh2o_b ', 'jh2o_a ', & + 'jh2o_c ', 'jh2o2 ', & + 'jo2_a ', 'jo2_b ', & + 'jo3_a ', 'jo3_b ', & + 'jhno3 ', 'jho2no2_a ', & + 'jho2no2_b ', 'jn2o ', & + 'jn2o5_a ', 'jn2o5_b ', & + 'jno ', 'jno2 ', & + 'jno3_b ', 'jno3_a ', & + 'jalknit ', 'jalkooh ', & + 'jbenzooh ', 'jbepomuc ', & + 'jbigald ', 'jbigald1 ', & + 'jbigald2 ', 'jbigald3 ', & + 'jbigald4 ', 'jbzooh ', & + 'jc2h5ooh ', 'jc3h7ooh ', & + 'jc6h5ooh ', 'jch2o_b ', & + 'jch2o_a ', 'jch3cho ', & + 'jacet ', 'jmgly ', & + 'jch3co3h ', 'jch3ooh ', & + 'jch4_b ', 'jch4_a ', & + 'jco2 ', 'jeooh ', & + 'jglyald ', 'jglyoxal ', & + 'jhonitr ', 'jhpald ', & + 'jhyac ', 'jisopnooh ', & + 'jisopooh ', 'jmacr_a ', & + 'jmacr_b ', 'jmek ', & + 'jmekooh ', 'jmpan ', & + 'jmvk ', 'jnc4cho ', & + 'jnoa ', 'jnterpooh ', & + 'jonitr ', 'jpan ', & + 'jphenooh ', 'jpooh ', & + 'jrooh ', 'jtepomuc ', & + 'jterp2ooh ', 'jterpnit ', & + 'jterpooh ', 'jterprd1 ', & + 'jterprd2 ', 'jtolooh ', & + 'jxooh ', 'jxylenooh ', & + 'jxylolooh ', 'jbrcl ', & + 'jbro ', 'jbrono2_b ', & + 'jbrono2_a ', 'jccl4 ', & + 'jcf2clbr ', 'jcf3br ', & + 'jcfcl3 ', 'jcfc113 ', & + 'jcfc114 ', 'jcfc115 ', & + 'jcf2cl2 ', 'jch2br2 ', & + 'jch3br ', 'jch3ccl3 ', & + 'jch3cl ', 'jchbr3 ', & + 'jcl2 ', 'jcl2o2 ', & + 'jclo ', 'jclono2_a ', & + 'jclono2_b ', 'jcof2 ', & + 'jcofcl ', 'jh2402 ', & + 'jhbr ', 'jhcfc141b ', & + 'jhcfc142b ', 'jhcfc22 ', & + 'jhcl ', 'jhf ', & + 'jhobr ', 'jhocl ', & + 'joclo ', 'jsf6 ', & + 'jh2so4 ', 'jocs ', & + 'jso ', 'jso2 ', & + 'jso3 ', 'jsoa1_a1 ', & + 'jsoa1_a2 ', 'jsoa2_a1 ', & + 'jsoa2_a2 ', 'jsoa3_a1 ', & + 'jsoa3_a2 ', 'jsoa4_a1 ', & + 'jsoa4_a2 ', 'jsoa5_a1 ', & + 'jsoa5_a2 ', 'E90_tau ', & + 'O1D_H2 ', 'O1D_H2O ', & + 'O1D_N2 ', 'O1D_O2ab ', & + 'O1D_O3 ', 'O1D_O3a ', & + 'O_O3 ', 'usr_O_O ', & + 'usr_O_O2 ', 'H2_O ', & + 'H2O2_O ', 'H_HO2 ', & + 'H_HO2a ', 'H_HO2b ', & + 'H_O2 ', 'HO2_O ', & + 'HO2_O3 ', 'H_O3 ', & + 'OH_H2 ', 'OH_H2O2 ', & + 'OH_HO2 ', 'OH_O ', & + 'OH_O3 ', 'OH_OH ', & + 'OH_OH_M ', 'usr_HO2_HO2 ', & + 'HO2NO2_OH ', 'N_NO ', & + 'N_NO2a ', 'N_NO2b ', & + 'N_NO2c ', 'N_O2 ', & + 'NO2_O ', 'NO2_O3 ', & + 'NO2_O_M ', 'NO3_HO2 ', & + 'NO3_NO ', 'NO3_O ', & + 'NO3_OH ', 'N_OH ', & + 'NO_HO2 ', 'NO_O3 ', & + 'NO_O_M ', 'O1D_N2Oa ', & + 'O1D_N2Ob ', 'tag_NO2_HO2 ', & + 'tag_NO2_NO3 ', 'tag_NO2_OH ', & + 'usr_HNO3_OH ', 'usr_HO2NO2_M ', & + 'usr_N2O5_M ', 'CL_CH2O ', & + 'CL_CH4 ', 'CL_H2 ', & + 'CL_H2O2 ', 'CL_HO2a ', & + 'CL_HO2b ', 'CL_O3 ', & + 'CLO_CH3O2 ', 'CLO_CLOa ', & + 'CLO_CLOb ', 'CLO_CLOc ', & + 'CLO_HO2 ', 'CLO_NO ', & + 'CLONO2_CL ', 'CLO_NO2_M ', & + 'CLONO2_O ', 'CLONO2_OH ', & + 'CLO_O ', 'CLO_OHa ', & + 'CLO_OHb ', 'HCL_O ', & + 'HCL_OH ', 'HOCL_CL ', & + 'HOCL_O ', 'HOCL_OH ' /) + rxt_tag_lst( 201: 400) = (/ 'O1D_CCL4 ', 'O1D_CF2CLBR ', & + 'O1D_CFC11 ', 'O1D_CFC113 ', & + 'O1D_CFC114 ', 'O1D_CFC115 ', & + 'O1D_CFC12 ', 'O1D_HCLa ', & + 'O1D_HCLb ', 'tag_CLO_CLO_M ', & + 'usr_CL2O2_M ', 'BR_CH2O ', & + 'BR_HO2 ', 'BR_O3 ', & + 'BRO_BRO ', 'BRO_CLOa ', & + 'BRO_CLOb ', 'BRO_CLOc ', & + 'BRO_HO2 ', 'BRO_NO ', & + 'BRO_NO2_M ', 'BRONO2_O ', & + 'BRO_O ', 'BRO_OH ', & + 'HBR_O ', 'HBR_OH ', & + 'HOBR_O ', 'O1D_CF3BR ', & + 'O1D_CHBR3 ', 'O1D_H2402 ', & + 'O1D_HBRa ', 'O1D_HBRb ', & + 'F_CH4 ', 'F_H2 ', & + 'F_H2O ', 'F_HNO3 ', & + 'O1D_COF2 ', 'O1D_COFCL ', & + 'CH2BR2_CL ', 'CH2BR2_OH ', & + 'CH3BR_CL ', 'CH3BR_OH ', & + 'CH3CCL3_OH ', 'CH3CL_CL ', & + 'CH3CL_OH ', 'CHBR3_CL ', & + 'CHBR3_OH ', 'HCFC141B_OH ', & + 'HCFC142B_OH ', 'HCFC22_OH ', & + 'O1D_CH2BR2 ', 'O1D_CH3BR ', & + 'O1D_HCFC141B ', 'O1D_HCFC142B ', & + 'O1D_HCFC22 ', 'CH2O_HO2 ', & + 'CH2O_NO3 ', 'CH2O_O ', & + 'CH2O_OH ', 'CH3O2_CH3O2a ', & + 'CH3O2_CH3O2b ', 'CH3O2_HO2 ', & + 'CH3O2_NO ', 'CH3OH_OH ', & + 'CH3OOH_OH ', 'CH4_OH ', & + 'HCN_OH ', 'HCOOH_OH ', & + 'HOCH2OO_HO2 ', 'HOCH2OO_M ', & + 'HOCH2OO_NO ', 'O1D_CH4a ', & + 'O1D_CH4b ', 'O1D_CH4c ', & + 'O1D_HCN ', 'usr_CO_OH ', & + 'C2H2_CL_M ', 'C2H2_OH_M ', & + 'C2H4_CL_M ', 'C2H4_O3 ', & + 'C2H5O2_C2H5O2 ', 'C2H5O2_CH3O2 ', & + 'C2H5O2_HO2 ', 'C2H5O2_NO ', & + 'C2H5OH_OH ', 'C2H5OOH_OH ', & + 'C2H6_CL ', 'C2H6_OH ', & + 'CH3CHO_NO3 ', 'CH3CHO_OH ', & + 'CH3CN_OH ', 'CH3CO3_CH3CO3 ', & + 'CH3CO3_CH3O2 ', 'CH3CO3_HO2 ', & + 'CH3CO3_NO ', 'CH3COOH_OH ', & + 'CH3COOOH_OH ', 'EO2_HO2 ', & + 'EO2_NO ', 'EO_M ', & + 'EO_O2 ', 'GLYALD_OH ', & + 'GLYOXAL_OH ', 'PAN_OH ', & + 'tag_C2H4_OH ', 'tag_CH3CO3_NO2 ', & + 'usr_PAN_M ', 'C3H6_NO3 ', & + 'C3H6_O3 ', 'C3H7O2_CH3O2 ', & + 'C3H7O2_HO2 ', 'C3H7O2_NO ', & + 'C3H7OOH_OH ', 'C3H8_OH ', & + 'CH3COCHO_NO3 ', 'CH3COCHO_OH ', & + 'HYAC_OH ', 'NOA_OH ', & + 'PO2_HO2 ', 'PO2_NO ', & + 'POOH_OH ', 'RO2_CH3O2 ', & + 'RO2_HO2 ', 'RO2_NO ', & + 'ROOH_OH ', 'tag_C3H6_OH ', & + 'usr_CH3COCH3_OH ', 'BIGENE_NO3 ', & + 'BIGENE_OH ', 'ENEO2_NO ', & + 'ENEO2_NOb ', 'HONITR_OH ', & + 'MACRO2_CH3CO3 ', 'MACRO2_CH3O2 ', & + 'MACRO2_HO2 ', 'MACRO2_NO3 ', & + 'MACRO2_NOa ', 'MACRO2_NOb ', & + 'MACR_O3 ', 'MACR_OH ', & + 'MACROOH_OH ', 'MCO3_CH3CO3 ', & + 'MCO3_CH3O2 ', 'MCO3_HO2 ', & + 'MCO3_MCO3 ', 'MCO3_NO ', & + 'MCO3_NO3 ', 'MEKO2_HO2 ', & + 'MEKO2_NO ', 'MEK_OH ', & + 'MEKOOH_OH ', 'MPAN_OH_M ', & + 'MVK_O3 ', 'MVK_OH ', & + 'tag_MCO3_NO2 ', 'usr_MPAN_M ', & + 'ALKNIT_OH ', 'ALKO2_HO2 ', & + 'ALKO2_NO ', 'ALKO2_NOb ', & + 'ALKOOH_OH ', 'BIGALK_OH ', & + 'HPALD_OH ', 'HYDRALD_OH ', & + 'IEPOX_OH ', 'ISOPAO2_CH3CO3 ', & + 'ISOPAO2_CH3O2 ', 'ISOPAO2_HO2 ', & + 'ISOPAO2_NO ', 'ISOPAO2_NO3 ', & + 'ISOPBO2_CH3CO3 ', 'ISOPBO2_CH3O2 ', & + 'ISOPBO2_HO2 ', 'ISOPBO2_M ', & + 'ISOPBO2_NO ', 'ISOPBO2_NO3 ', & + 'ISOPNITA_OH ', 'ISOPNITB_OH ', & + 'ISOP_NO3 ', 'ISOPNO3_CH3CO3 ', & + 'ISOPNO3_CH3O2 ', 'ISOPNO3_HO2 ', & + 'ISOPNO3_NO ', 'ISOPNO3_NO3 ', & + 'ISOPNOOH_OH ', 'ISOP_O3 ', & + 'ISOP_OH ', 'ISOPOOH_OH ', & + 'NC4CH2OH_OH ', 'NC4CHO_OH ', & + 'XO2_CH3CO3 ', 'XO2_CH3O2 ', & + 'XO2_HO2 ', 'XO2_NO ', & + 'XO2_NO3 ', 'XOOH_OH ', & + 'ACBZO2_HO2 ', 'ACBZO2_NO ', & + 'BENZENE_OH ', 'BENZO2_HO2 ' /) + rxt_tag_lst( 401: 542) = (/ 'BENZO2_NO ', 'BENZOOH_OH ', & + 'BZALD_OH ', 'BZOO_HO2 ', & + 'BZOOH_OH ', 'BZOO_NO ', & + 'C6H5O2_HO2 ', 'C6H5O2_NO ', & + 'C6H5OOH_OH ', 'CRESOL_OH ', & + 'DICARBO2_HO2 ', 'DICARBO2_NO ', & + 'DICARBO2_NO2 ', 'MALO2_HO2 ', & + 'MALO2_NO ', 'MALO2_NO2 ', & + 'MDIALO2_HO2 ', 'MDIALO2_NO ', & + 'MDIALO2_NO2 ', 'PHENO2_HO2 ', & + 'PHENO2_NO ', 'PHENOL_OH ', & + 'PHENO_NO2 ', 'PHENO_O3 ', & + 'PHENOOH_OH ', 'tag_ACBZO2_NO2 ', & + 'TOLO2_HO2 ', 'TOLO2_NO ', & + 'TOLOOH_OH ', 'TOLUENE_OH ', & + 'usr_PBZNIT_M ', 'XYLENES_OH ', & + 'XYLENO2_HO2 ', 'XYLENO2_NO ', & + 'XYLENOOH_OH ', 'XYLOLO2_HO2 ', & + 'XYLOLO2_NO ', 'XYLOL_OH ', & + 'XYLOLOOH_OH ', 'BCARY_NO3 ', & + 'BCARY_O3 ', 'BCARY_OH ', & + 'MTERP_NO3 ', 'MTERP_O3 ', & + 'MTERP_OH ', 'NTERPO2_CH3O2 ', & + 'NTERPO2_HO2 ', 'NTERPO2_NO ', & + 'NTERPO2_NO3 ', 'NTERPOOH_OH ', & + 'TERP2O2_CH3O2 ', 'TERP2O2_HO2 ', & + 'TERP2O2_NO ', 'TERP2OOH_OH ', & + 'TERPNIT_OH ', 'TERPO2_CH3O2 ', & + 'TERPO2_HO2 ', 'TERPO2_NO ', & + 'TERPOOH_OH ', 'TERPROD1_NO3 ', & + 'TERPROD1_OH ', 'TERPROD2_OH ', & + 'DMS_NO3 ', 'DMS_OHa ', & + 'OCS_O ', 'OCS_OH ', & + 'S_O2 ', 'SO2_OH_M ', & + 'S_O3 ', 'SO_BRO ', & + 'SO_CLO ', 'S_OH ', & + 'SO_NO2 ', 'SO_O2 ', & + 'SO_O3 ', 'SO_OCLO ', & + 'SO_OH ', 'usr_DMS_OH ', & + 'usr_SO3_H2O ', 'NH3_OH ', & + 'usr_HO2_aer ', 'usr_HONITR_aer ', & + 'usr_ISOPNITA_aer ', 'usr_ISOPNITB_aer ', & + 'usr_N2O5_aer ', 'usr_NC4CH2OH_aer ', & + 'usr_NC4CHO_aer ', 'usr_NH4_strat_tau ', & + 'usr_NO2_aer ', 'usr_NO3_aer ', & + 'usr_NTERPOOH_aer ', 'usr_ONITR_aer ', & + 'usr_TERPNIT_aer ', 'BCARY_NO3_vbs ', & + 'BCARYO2_HO2_vbs ', 'BCARYO2_NO_vbs ', & + 'BCARY_O3_vbs ', 'BCARY_OH_vbs ', & + 'BENZENE_OH_vbs ', 'BENZO2_HO2_vbs ', & + 'BENZO2_NO_vbs ', 'ISOP_NO3_vbs ', & + 'ISOPO2_HO2_vbs ', 'ISOPO2_NO_vbs ', & + 'ISOP_O3_vbs ', 'ISOP_OH_vbs ', & + 'IVOCO2_HO2_vbs ', 'IVOCO2_NO_vbs ', & + 'IVOC_OH_vbs ', 'MTERP_NO3_vbs ', & + 'MTERPO2_HO2_vbs ', 'MTERPO2_NO_vbs ', & + 'MTERP_O3_vbs ', 'MTERP_OH_vbs ', & + 'SVOC_OH ', 'TOLUENE_OH_vbs ', & + 'TOLUO2_HO2_vbs ', 'TOLUO2_NO_vbs ', & + 'usr_GLYOXAL_aer ', 'XYLENES_OH_vbs ', & + 'XYLEO2_HO2_vbs ', 'XYLEO2_NO_vbs ', & + 'het1 ', 'het10 ', & + 'het11 ', 'het12 ', & + 'het13 ', 'het14 ', & + 'het15 ', 'het16 ', & + 'het17 ', 'het2 ', & + 'het3 ', 'het4 ', & + 'het5 ', 'het6 ', & + 'het7 ', 'het8 ', & + 'het9 ', 'NH_50_tau ', & + 'NH_5_tau ', 'ST80_25_tau ' /) + rxt_tag_map(:rxt_tag_cnt) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, & + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, & + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, & + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, & + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, & + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, & + 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, & + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, & + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, & + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, & + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, & + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, & + 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, & + 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, & + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, & + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, & + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, & + 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, & + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, & + 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, & + 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, & + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, & + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, & + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, & + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, & + 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, & + 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, & + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, & + 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, & + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, & + 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, & + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, & + 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, & + 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, & + 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, & + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, & + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, & + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, & + 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, & + 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, & + 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, & + 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, & + 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, & + 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, & + 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, & + 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, & + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, & + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, & + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, & + 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, & + 541, 542 /) + if( allocated( pht_alias_lst ) ) then + deallocate( pht_alias_lst ) + end if + allocate( pht_alias_lst(phtcnt,2),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate pht_alias_lst; error = ',ios + call endrun + end if + if( allocated( pht_alias_mult ) ) then + deallocate( pht_alias_mult ) + end if + allocate( pht_alias_mult(phtcnt,2),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate pht_alias_mult; error = ',ios + call endrun + end if + pht_alias_lst(:,1) = (/ ' ', ' ', ' ', ' ', & + 'userdefined ', 'userdefined ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', 'userdefined ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ' /) + pht_alias_lst(:,2) = (/ ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', 'jch3ooh ', 'jch3ooh ', & + 'jch3ooh ', 'jno2 ', 'jno2 ', 'jno2 ', & + 'jno2 ', 'jno2 ', 'jno2 ', 'jch3ooh ', & + 'jch3ooh ', 'jch3ooh ', 'jch3ooh ', ' ', & + ' ', ' ', ' ', ' ', & + 'jh2o2 ', ' ', ' ', ' ', & + ' ', 'jch3ooh ', ' ', 'jmgly ', & + 'jch2o_a ', 'jno2 ', ' ', 'jch3ooh ', & + 'jch3ooh ', ' ', ' ', 'jacet ', & + 'jch3ooh ', 'jpan ', ' ', 'jch2o_a ', & + 'jch2o_a ', 'jch3ooh ', 'jch3cho ', ' ', & + 'jch3ooh ', 'jch3ooh ', 'jch3ooh ', 'jno2 ', & + 'jch3ooh ', 'jch3ooh ', 'jch3ooh ', 'jch3cho ', & + 'jch3cho ', 'jch3ooh ', 'jch3ooh ', 'jch3ooh ', & + 'jch3ooh ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', ' ', ' ', ' ', & + ' ', 'jno2 ', 'jno2 ', 'jno2 ', & + 'jno2 ', 'jno2 ', 'jno2 ', 'jno2 ', & + 'jno2 ', 'jno2 ', 'jno2 ' /) + pht_alias_mult(:,1) = (/ 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8 /) + pht_alias_mult(:,2) = (/ 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, .10_r8, 0.2_r8, .14_r8, .20_r8, & + .20_r8, .006_r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 0.28_r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + .006_r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, .10_r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & + 1._r8, 1._r8, 1._r8, .0004_r8, .0004_r8, & + .0004_r8, .0004_r8, .0004_r8, .0004_r8, .0004_r8, & + .0004_r8, .0004_r8, .0004_r8 /) + allocate( cph_enthalpy(enthalpy_cnt),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate cph_enthalpy; error = ',ios + call endrun + end if + allocate( cph_rid(enthalpy_cnt),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate cph_rid; error = ',ios + call endrun + end if + cph_rid(:) = (/ 127, 131, 132, 133, 136, & + 139, 140, 141, 142, 145, & + 146, 147, 150, 152, 156, & + 157, 165, 166 /) + cph_enthalpy(:) = (/ 189.810000_r8, 392.190000_r8, 493.580000_r8, 101.390000_r8, 232.590000_r8, & + 203.400000_r8, 226.580000_r8, 120.100000_r8, 194.710000_r8, 293.620000_r8, & + 67.670000_r8, 165.300000_r8, 165.510000_r8, 313.750000_r8, 133.750000_r8, & + 193.020000_r8, 34.470000_r8, 199.170000_r8 /) + allocate( num_rnts(rxntot-phtcnt),stat=ios ) + if( ios /= 0 ) then + write(iulog,*) 'set_sim_dat: failed to allocate num_rnts; error = ',ios + call endrun + end if + num_rnts(:) = (/ 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, & + 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 3, 2, 2, 3, 3, 3, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 3, 2, 2, 1, 2, 2, 2, & + 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, & + 2, 3, 3, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, & + 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, & + 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, & + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, & + 2, 1, 1, 1, 1, 2, 2, 2, 1, 1, & + 2, 2, 2, 1, 1, 2, 1, 1, 1 /) + + end subroutine set_sim_dat + + end module mo_sim_dat diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.doc b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.doc new file mode 100644 index 0000000000..cf7f15ead8 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.doc @@ -0,0 +1,1858 @@ + + + Solution species + ( 1) ALKNIT (C5H11ONO2) + ( 2) ALKOOH (C5H12O2) + ( 3) bc_a1 (C) + ( 4) bc_a4 (C) + ( 5) BCARY (C15H24) + ( 6) BENZENE (C6H6) + ( 7) BENZOOH (C6H8O5) + ( 8) BEPOMUC (C6H6O3) + ( 9) BIGALD (C5H6O2) + ( 10) BIGALD1 (C4H4O2) + ( 11) BIGALD2 (C5H6O2) + ( 12) BIGALD3 (C5H6O2) + ( 13) BIGALD4 (C6H8O2) + ( 14) BIGALK (C5H12) + ( 15) BIGENE (C4H8) + ( 16) BR (Br) + ( 17) BRCL (BrCl) + ( 18) BRO (BrO) + ( 19) BRONO2 (BrONO2) + ( 20) BRY + ( 21) BZALD (C7H6O) + ( 22) BZOOH (C7H8O2) + ( 23) C2H2 + ( 24) C2H4 + ( 25) C2H5OH + ( 26) C2H5OOH + ( 27) C2H6 + ( 28) C3H6 + ( 29) C3H7OOH + ( 30) C3H8 + ( 31) C6H5OOH (C6H5OOH) + ( 32) CCL4 (CCl4) + ( 33) CF2CLBR (CF2ClBr) + ( 34) CF3BR (CF3Br) + ( 35) CFC11 (CFCl3) + ( 36) CFC113 (CCl2FCClF2) + ( 37) CFC114 (CClF2CClF2) + ( 38) CFC115 (CClF2CF3) + ( 39) CFC12 (CF2Cl2) + ( 40) CH2BR2 (CH2Br2) + ( 41) CH2O + ( 42) CH3BR (CH3Br) + ( 43) CH3CCL3 (CH3CCl3) + ( 44) CH3CHO + ( 45) CH3CL (CH3Cl) + ( 46) CH3CN + ( 47) CH3COCH3 + ( 48) CH3COCHO + ( 49) CH3COOH + ( 50) CH3COOOH + ( 51) CH3OH + ( 52) CH3OOH + ( 53) CH4 + ( 54) CHBR3 (CHBr3) + ( 55) CL (Cl) + ( 56) CL2 (Cl2) + ( 57) CL2O2 (Cl2O2) + ( 58) CLO (ClO) + ( 59) CLONO2 (ClONO2) + ( 60) CLY + ( 61) CO + ( 62) CO2 + ( 63) COF2 + ( 64) COFCL (COFCl) + ( 65) CRESOL (C7H8O) + ( 66) DMS (CH3SCH3) + ( 67) dst_a1 (AlSiO5) + ( 68) dst_a2 (AlSiO5) + ( 69) dst_a3 (AlSiO5) + ( 70) E90 (CO) + ( 71) EOOH (HOCH2CH2OOH) + ( 72) F + ( 73) GLYALD (HOCH2CHO) + ( 74) GLYOXAL (C2H2O2) + ( 75) H + ( 76) H2 + ( 77) H2402 (CBrF2CBrF2) + ( 78) H2O2 + ( 79) H2SO4 (H2SO4) + ( 80) HBR (HBr) + ( 81) HCFC141B (CH3CCl2F) + ( 82) HCFC142B (CH3CClF2) + ( 83) HCFC22 (CHF2Cl) + ( 84) HCL (HCl) + ( 85) HCN + ( 86) HCOOH + ( 87) HF + ( 88) HNO3 + ( 89) HO2NO2 + ( 90) HOBR (HOBr) + ( 91) HOCL (HOCl) + ( 92) HONITR (C4H9NO4) + ( 93) HPALD (HOOCH2CCH3CHCHO) + ( 94) HYAC (CH3COCH2OH) + ( 95) HYDRALD (HOCH2CCH3CHCHO) + ( 96) IEPOX (C5H10O3) + ( 97) ISOP (C5H8) + ( 98) ISOPNITA (C5H9NO4) + ( 99) ISOPNITB (C5H9NO4) + (100) ISOPNO3 (CH2CHCCH3OOCH2ONO2) + (101) ISOPNOOH (C5H9NO5) + (102) ISOPOOH (HOCH2COOHCH3CHCH2) + (103) IVOC (C13H28) + (104) MACR (CH2CCH3CHO) + (105) MACROOH (CH3COCHOOHCH2OH) + (106) MEK (C4H8O) + (107) MEKOOH (C4H8O3) + (108) MPAN (CH2CCH3CO3NO2) + (109) MTERP (C10H16) + (110) MVK (CH2CHCOCH3) + (111) N + (112) N2O + (113) N2O5 + (114) NC4CH2OH (C5H9NO4) + (115) NC4CHO (C5H7NO4) + (116) ncl_a1 (NaCl) + (117) ncl_a2 (NaCl) + (118) ncl_a3 (NaCl) + (119) NH3 + (120) NH4 + (121) NH_5 (CO) + (122) NH_50 (CO) + (123) NO + (124) NO2 + (125) NO3 + (126) NOA (CH3COCH2ONO2) + (127) NTERPOOH (C10H17NO5) + (128) num_a1 (H) + (129) num_a2 (H) + (130) num_a3 (H) + (131) num_a4 (H) + (132) num_a5 (H) + (133) O + (134) O2 + (135) O2_1D (O2) + (136) O2_1S (O2) + (137) O3 + (138) O3S (O3) + (139) OCLO (OClO) + (140) OCS (OCS) + (141) ONITR (C4H7NO4) + (142) PAN (CH3CO3NO2) + (143) PBZNIT (C7H5O3NO2) + (144) PHENO (C6H5O) + (145) PHENOL (C6H5OH) + (146) PHENOOH (C6H8O6) + (147) pom_a1 (C) + (148) pom_a4 (C) + (149) POOH (C3H6OHOOH) + (150) ROOH (CH3COCH2OOH) + (151) S (S) + (152) SF6 + (153) SO (SO) + (154) SO2 + (155) SO3 (SO3) + (156) so4_a1 (NH4HSO4) + (157) so4_a2 (NH4HSO4) + (158) so4_a3 (NH4HSO4) + (159) so4_a5 (NH4HSO4) + (160) soa1_a1 (C15H38O2) + (161) soa1_a2 (C15H38O2) + (162) soa2_a1 (C15H38O2) + (163) soa2_a2 (C15H38O2) + (164) soa3_a1 (C15H38O2) + (165) soa3_a2 (C15H38O2) + (166) soa4_a1 (C15H38O2) + (167) soa4_a2 (C15H38O2) + (168) soa5_a1 (C15H38O2) + (169) soa5_a2 (C15H38O2) + (170) SOAG0 (C15H38O2) + (171) SOAG1 (C15H38O2) + (172) SOAG2 (C15H38O2) + (173) SOAG3 (C15H38O2) + (174) SOAG4 (C15H38O2) + (175) ST80_25 (CO) + (176) SVOC (C22H46) + (177) TEPOMUC (C7H8O3) + (178) TERP2OOH (C10H16O4) + (179) TERPNIT (C10H17NO4) + (180) TERPOOH (C10H18O3) + (181) TERPROD1 (C10H16O2) + (182) TERPROD2 (C9H14O2) + (183) TOLOOH (C7H10O5) + (184) TOLUENE (C7H8) + (185) XOOH (HOCH2COOHCH3CHOHCHO) + (186) XYLENES (C8H10) + (187) XYLENOOH (C8H12O5) + (188) XYLOL (C8H10O) + (189) XYLOLOOH (C8H12O6) + (190) NHDEP (N) + (191) NDEP (N) + (192) ACBZO2 (C7H5O3) + (193) ALKO2 (C5H11O2) + (194) BCARYO2VBS (C15H25O3) + (195) BENZO2 (C6H7O5) + (196) BENZO2VBS (C6H7O5) + (197) BZOO (C7H7O2) + (198) C2H5O2 + (199) C3H7O2 + (200) C6H5O2 + (201) CH3CO3 + (202) CH3O2 + (203) DICARBO2 (C5H5O4) + (204) ENEO2 (C4H9O3) + (205) EO (HOCH2CH2O) + (206) EO2 (HOCH2CH2O2) + (207) HO2 + (208) HOCH2OO + (209) ISOPAO2 (HOC5H8O2) + (210) ISOPBO2 (HOC5H8O2) + (211) ISOPO2VBS (C5H9O3) + (212) IVOCO2VBS (C13H29O3) + (213) MACRO2 (CH3COCHO2CH2OH) + (214) MALO2 (C4H3O4) + (215) MCO3 (CH2CCH3CO3) + (216) MDIALO2 (C4H5O4) + (217) MEKO2 (C4H7O3) + (218) MTERPO2VBS (C10H17O3) + (219) NTERPO2 (C10H16NO5) + (220) O1D (O) + (221) OH + (222) PHENO2 (C6H7O6) + (223) PO2 (C3H6OHO2) + (224) RO2 (CH3COCH2O2) + (225) TERP2O2 (C10H15O4) + (226) TERPO2 (C10H17O3) + (227) TOLO2 (C7H9O5) + (228) TOLUO2VBS (C7H9O5) + (229) XO2 (HOCH2COOCH3CHOHCHO) + (230) XYLENO2 (C8H11O5) + (231) XYLEO2VBS (C8H11O5) + (232) XYLOLO2 (C8H11O6) + (233) H2O + + + Invariant species + ( 1) M + ( 2) N2 + + + Column integrals + ( 1) O3 - 0.000E+00 + ( 2) O2 - 0.000E+00 + +Class List +========== + Explicit + -------- + ( 1) NHDEP + ( 2) NDEP + + Implicit + -------- + ( 1) ALKNIT + ( 2) ALKOOH + ( 3) bc_a1 + ( 4) bc_a4 + ( 5) BCARY + ( 6) BENZENE + ( 7) BENZOOH + ( 8) BEPOMUC + ( 9) BIGALD + ( 10) BIGALD1 + ( 11) BIGALD2 + ( 12) BIGALD3 + ( 13) BIGALD4 + ( 14) BIGALK + ( 15) BIGENE + ( 16) BR + ( 17) BRCL + ( 18) BRO + ( 19) BRONO2 + ( 20) BRY + ( 21) BZALD + ( 22) BZOOH + ( 23) C2H2 + ( 24) C2H4 + ( 25) C2H5OH + ( 26) C2H5OOH + ( 27) C2H6 + ( 28) C3H6 + ( 29) C3H7OOH + ( 30) C3H8 + ( 31) C6H5OOH + ( 32) CCL4 + ( 33) CF2CLBR + ( 34) CF3BR + ( 35) CFC11 + ( 36) CFC113 + ( 37) CFC114 + ( 38) CFC115 + ( 39) CFC12 + ( 40) CH2BR2 + ( 41) CH2O + ( 42) CH3BR + ( 43) CH3CCL3 + ( 44) CH3CHO + ( 45) CH3CL + ( 46) CH3CN + ( 47) CH3COCH3 + ( 48) CH3COCHO + ( 49) CH3COOH + ( 50) CH3COOOH + ( 51) CH3OH + ( 52) CH3OOH + ( 53) CH4 + ( 54) CHBR3 + ( 55) CL + ( 56) CL2 + ( 57) CL2O2 + ( 58) CLO + ( 59) CLONO2 + ( 60) CLY + ( 61) CO + ( 62) CO2 + ( 63) COF2 + ( 64) COFCL + ( 65) CRESOL + ( 66) DMS + ( 67) dst_a1 + ( 68) dst_a2 + ( 69) dst_a3 + ( 70) E90 + ( 71) EOOH + ( 72) F + ( 73) GLYALD + ( 74) GLYOXAL + ( 75) H + ( 76) H2 + ( 77) H2402 + ( 78) H2O2 + ( 79) H2SO4 + ( 80) HBR + ( 81) HCFC141B + ( 82) HCFC142B + ( 83) HCFC22 + ( 84) HCL + ( 85) HCN + ( 86) HCOOH + ( 87) HF + ( 88) HNO3 + ( 89) HO2NO2 + ( 90) HOBR + ( 91) HOCL + ( 92) HONITR + ( 93) HPALD + ( 94) HYAC + ( 95) HYDRALD + ( 96) IEPOX + ( 97) ISOP + ( 98) ISOPNITA + ( 99) ISOPNITB + (100) ISOPNO3 + (101) ISOPNOOH + (102) ISOPOOH + (103) IVOC + (104) MACR + (105) MACROOH + (106) MEK + (107) MEKOOH + (108) MPAN + (109) MTERP + (110) MVK + (111) N + (112) N2O + (113) N2O5 + (114) NC4CH2OH + (115) NC4CHO + (116) ncl_a1 + (117) ncl_a2 + (118) ncl_a3 + (119) NH3 + (120) NH4 + (121) NH_5 + (122) NH_50 + (123) NO + (124) NO2 + (125) NO3 + (126) NOA + (127) NTERPOOH + (128) num_a1 + (129) num_a2 + (130) num_a3 + (131) num_a4 + (132) num_a5 + (133) O + (134) O2 + (135) O2_1D + (136) O2_1S + (137) O3 + (138) O3S + (139) OCLO + (140) OCS + (141) ONITR + (142) PAN + (143) PBZNIT + (144) PHENO + (145) PHENOL + (146) PHENOOH + (147) pom_a1 + (148) pom_a4 + (149) POOH + (150) ROOH + (151) S + (152) SF6 + (153) SO + (154) SO2 + (155) SO3 + (156) so4_a1 + (157) so4_a2 + (158) so4_a3 + (159) so4_a5 + (160) soa1_a1 + (161) soa1_a2 + (162) soa2_a1 + (163) soa2_a2 + (164) soa3_a1 + (165) soa3_a2 + (166) soa4_a1 + (167) soa4_a2 + (168) soa5_a1 + (169) soa5_a2 + (170) SOAG0 + (171) SOAG1 + (172) SOAG2 + (173) SOAG3 + (174) SOAG4 + (175) ST80_25 + (176) SVOC + (177) TEPOMUC + (178) TERP2OOH + (179) TERPNIT + (180) TERPOOH + (181) TERPROD1 + (182) TERPROD2 + (183) TOLOOH + (184) TOLUENE + (185) XOOH + (186) XYLENES + (187) XYLENOOH + (188) XYLOL + (189) XYLOLOOH + (190) ACBZO2 + (191) ALKO2 + (192) BCARYO2VBS + (193) BENZO2 + (194) BENZO2VBS + (195) BZOO + (196) C2H5O2 + (197) C3H7O2 + (198) C6H5O2 + (199) CH3CO3 + (200) CH3O2 + (201) DICARBO2 + (202) ENEO2 + (203) EO + (204) EO2 + (205) HO2 + (206) HOCH2OO + (207) ISOPAO2 + (208) ISOPBO2 + (209) ISOPO2VBS + (210) IVOCO2VBS + (211) MACRO2 + (212) MALO2 + (213) MCO3 + (214) MDIALO2 + (215) MEKO2 + (216) MTERPO2VBS + (217) NTERPO2 + (218) O1D + (219) OH + (220) PHENO2 + (221) PO2 + (222) RO2 + (223) TERP2O2 + (224) TERPO2 + (225) TOLO2 + (226) TOLUO2VBS + (227) XO2 + (228) XYLENO2 + (229) XYLEO2VBS + (230) XYLOLO2 + (231) H2O + + Photolysis + jh2o_b ( 1) H2O + hv -> H2 + O1D rate = ** User defined ** ( 1) + jh2o_a ( 2) H2O + hv -> OH + H rate = ** User defined ** ( 2) + jh2o_c ( 3) H2O + hv -> 2*H + O rate = ** User defined ** ( 3) + jh2o2 ( 4) H2O2 + hv -> 2*OH rate = ** User defined ** ( 4) + jo2_a ( 5) O2 + hv -> O + O1D rate = ** User defined ** ( 5) + jo2_b ( 6) O2 + hv -> 2*O rate = ** User defined ** ( 6) + jo3_a ( 7) O3 + hv -> O1D + O2_1D rate = ** User defined ** ( 7) + jo3_b ( 8) O3 + hv -> O + O2 rate = ** User defined ** ( 8) + jhno3 ( 9) HNO3 + hv -> NO2 + OH rate = ** User defined ** ( 9) + jho2no2_a ( 10) HO2NO2 + hv -> OH + NO3 rate = ** User defined ** ( 10) + jho2no2_b ( 11) HO2NO2 + hv -> NO2 + HO2 rate = ** User defined ** ( 11) + jn2o ( 12) N2O + hv -> O1D + N2 rate = ** User defined ** ( 12) + jn2o5_a ( 13) N2O5 + hv -> NO2 + NO3 rate = ** User defined ** ( 13) + jn2o5_b ( 14) N2O5 + hv -> NO + O + NO3 rate = ** User defined ** ( 14) + jno ( 15) NO + hv -> N + O rate = ** User defined ** ( 15) + jno2 ( 16) NO2 + hv -> NO + O rate = ** User defined ** ( 16) + jno3_b ( 17) NO3 + hv -> NO + O2 rate = ** User defined ** ( 17) + jno3_a ( 18) NO3 + hv -> NO2 + O rate = ** User defined ** ( 18) + jalknit ( 19) ALKNIT + hv -> NO2 + 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 rate = ** User defined ** ( 19) + + 0.8*MEK + jalkooh ( 20) ALKOOH + hv -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + 0.9*HO2 rate = ** User defined ** ( 20) + + 0.8*MEK + OH + jbenzooh ( 21) BENZOOH + hv -> OH + GLYOXAL + 0.5*BIGALD1 + HO2 rate = ** User defined ** ( 21) + jbepomuc ( 22) BEPOMUC + hv -> BIGALD1 + 1.5*HO2 + 1.5*CO rate = ** User defined ** ( 22) + jbigald ( 23) BIGALD + hv -> 0.45*CO + 0.13*GLYOXAL + 0.56*HO2 + 0.13*CH3CO3 rate = ** User defined ** ( 23) + + 0.18*CH3COCHO + jbigald1 ( 24) BIGALD1 + hv -> 0.6*MALO2 + HO2 rate = ** User defined ** ( 24) + jbigald2 ( 25) BIGALD2 + hv -> 0.6*HO2 + 0.6*DICARBO2 rate = ** User defined ** ( 25) + jbigald3 ( 26) BIGALD3 + hv -> 0.6*HO2 + 0.6*CO + 0.6*MDIALO2 rate = ** User defined ** ( 26) + jbigald4 ( 27) BIGALD4 + hv -> HO2 + CO + CH3COCHO + CH3CO3 rate = ** User defined ** ( 27) + jbzooh ( 28) BZOOH + hv -> BZALD + OH + HO2 rate = ** User defined ** ( 28) + jc2h5ooh ( 29) C2H5OOH + hv -> CH3CHO + HO2 + OH rate = ** User defined ** ( 29) + jc3h7ooh ( 30) C3H7OOH + hv -> 0.82*CH3COCH3 + OH + HO2 rate = ** User defined ** ( 30) + jc6h5ooh ( 31) C6H5OOH + hv -> PHENO + OH rate = ** User defined ** ( 31) + jch2o_b ( 32) CH2O + hv -> CO + H2 rate = ** User defined ** ( 32) + jch2o_a ( 33) CH2O + hv -> CO + 2*H rate = ** User defined ** ( 33) + jch3cho ( 34) CH3CHO + hv -> CH3O2 + CO + HO2 rate = ** User defined ** ( 34) + jacet ( 35) CH3COCH3 + hv -> CH3CO3 + CH3O2 rate = ** User defined ** ( 35) + jmgly ( 36) CH3COCHO + hv -> CH3CO3 + CO + HO2 rate = ** User defined ** ( 36) + jch3co3h ( 37) CH3COOOH + hv -> CH3O2 + OH + CO2 rate = ** User defined ** ( 37) + jch3ooh ( 38) CH3OOH + hv -> CH2O + H + OH rate = ** User defined ** ( 38) + jch4_b ( 39) CH4 + hv -> 1.44*H2 + 0.18*CH2O + 0.18*O + 0.33*OH + 0.33*H rate = ** User defined ** ( 39) + + 0.44*CO2 + 0.38*CO + 0.05*H2O + jch4_a ( 40) CH4 + hv -> H + CH3O2 rate = ** User defined ** ( 40) + jco2 ( 41) CO2 + hv -> CO + O rate = ** User defined ** ( 41) + jeooh ( 42) EOOH + hv -> EO + OH rate = ** User defined ** ( 42) + jglyald ( 43) GLYALD + hv -> 2*HO2 + CO + CH2O rate = ** User defined ** ( 43) + jglyoxal ( 44) GLYOXAL + hv -> 2*CO + 2*HO2 rate = ** User defined ** ( 44) + jhonitr ( 45) HONITR + hv -> NO2 + 0.67*HO2 + 0.33*CH3CHO + 0.33*CH2O + 0.33*CO rate = ** User defined ** ( 45) + + 0.33*GLYALD + 0.33*CH3CO3 + 0.17*HYAC + + 0.17*CH3COCH3 + jhpald ( 46) HPALD + hv -> BIGALD3 + OH + HO2 rate = ** User defined ** ( 46) + jhyac ( 47) HYAC + hv -> CH3CO3 + HO2 + CH2O rate = ** User defined ** ( 47) + jisopnooh ( 48) ISOPNOOH + hv -> NO2 + HO2 + ISOPOOH rate = ** User defined ** ( 48) + jisopooh ( 49) ISOPOOH + hv -> 0.7*MVK + 0.3*MACR + OH + CH2O + HO2 rate = ** User defined ** ( 49) + jmacr_a ( 50) MACR + hv -> 1.34*HO2 + 0.66*MCO3 + 1.34*CH2O + 1.34*CH3CO3 rate = ** User defined ** ( 50) + jmacr_b ( 51) MACR + hv -> 0.66*HO2 + 1.34*CO rate = ** User defined ** ( 51) + jmek ( 52) MEK + hv -> CH3CO3 + C2H5O2 rate = ** User defined ** ( 52) + jmekooh ( 53) MEKOOH + hv -> OH + CH3CO3 + CH3CHO rate = ** User defined ** ( 53) + jmpan ( 54) MPAN + hv -> MCO3 + NO2 rate = ** User defined ** ( 54) + jmvk ( 55) MVK + hv -> 0.7*C3H6 + 0.7*CO + 0.3*CH3O2 + 0.3*CH3CO3 rate = ** User defined ** ( 55) + jnc4cho ( 56) NC4CHO + hv -> BIGALD3 + NO2 + HO2 rate = ** User defined ** ( 56) + jnoa ( 57) NOA + hv -> NO2 + CH2O + CH3CO3 rate = ** User defined ** ( 57) + jnterpooh ( 58) NTERPOOH + hv -> TERPROD1 + NO2 + OH rate = ** User defined ** ( 58) + jonitr ( 59) ONITR + hv -> NO2 rate = ** User defined ** ( 59) + jpan ( 60) PAN + hv -> 0.6*CH3CO3 + 0.6*NO2 + 0.4*CH3O2 + 0.4*NO3 + 0.4*CO2 rate = ** User defined ** ( 60) + jphenooh ( 61) PHENOOH + hv -> OH + HO2 + 0.7*GLYOXAL rate = ** User defined ** ( 61) + jpooh ( 62) POOH + hv -> CH3CHO + CH2O + HO2 + OH rate = ** User defined ** ( 62) + jrooh ( 63) ROOH + hv -> CH3CO3 + CH2O + OH rate = ** User defined ** ( 63) + jtepomuc ( 64) TEPOMUC + hv -> 0.5*CH3CO3 + HO2 + 1.5*CO rate = ** User defined ** ( 64) + jterp2ooh ( 65) TERP2OOH + hv -> OH + 0.375*CH2O + 0.3*CH3COCH3 + 0.25*CO + CO2 rate = ** User defined ** ( 65) + + TERPROD2 + HO2 + 0.25*GLYALD + jterpnit ( 66) TERPNIT + hv -> TERPROD1 + NO2 + HO2 rate = ** User defined ** ( 66) + jterpooh ( 67) TERPOOH + hv -> 0.4*CH2O + 0.05*CH3COCH3 + TERPROD1 + HO2 + OH rate = ** User defined ** ( 67) + jterprd1 ( 68) TERPROD1 + hv -> HO2 + CO + TERPROD2 rate = ** User defined ** ( 68) + jterprd2 ( 69) TERPROD2 + hv -> 0.15*RO2 + 0.68*CH2O + 0.8*CO2 + 0.5*CH3COCH3 rate = ** User defined ** ( 69) + + 0.65*CH3CO3 + 1.2*HO2 + 1.7*CO + jtolooh ( 70) TOLOOH + hv -> OH + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 rate = ** User defined ** ( 70) + + 0.2*BIGALD2 + 0.2*BIGALD3 + jxooh ( 71) XOOH + hv -> OH rate = ** User defined ** ( 71) + jxylenooh ( 72) XYLENOOH + hv -> OH + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO rate = ** User defined ** ( 72) + + 0.06*BIGALD1 + 0.2*BIGALD2 + 0.15*BIGALD3 + + 0.21*BIGALD4 + jxylolooh ( 73) XYLOLOOH + hv -> OH + 0.17*GLYOXAL + 0.51*CH3COCHO + HO2 rate = ** User defined ** ( 73) + jbrcl ( 74) BRCL + hv -> BR + CL rate = ** User defined ** ( 74) + jbro ( 75) BRO + hv -> BR + O rate = ** User defined ** ( 75) + jbrono2_b ( 76) BRONO2 + hv -> BRO + NO2 rate = ** User defined ** ( 76) + jbrono2_a ( 77) BRONO2 + hv -> BR + NO3 rate = ** User defined ** ( 77) + jccl4 ( 78) CCL4 + hv -> 4*CL rate = ** User defined ** ( 78) + jcf2clbr ( 79) CF2CLBR + hv -> BR + CL + COF2 rate = ** User defined ** ( 79) + jcf3br ( 80) CF3BR + hv -> BR + F + COF2 rate = ** User defined ** ( 80) + jcfcl3 ( 81) CFC11 + hv -> 2*CL + COFCL rate = ** User defined ** ( 81) + jcfc113 ( 82) CFC113 + hv -> 2*CL + COFCL + COF2 rate = ** User defined ** ( 82) + jcfc114 ( 83) CFC114 + hv -> 2*CL + 2*COF2 rate = ** User defined ** ( 83) + jcfc115 ( 84) CFC115 + hv -> CL + F + 2*COF2 rate = ** User defined ** ( 84) + jcf2cl2 ( 85) CFC12 + hv -> 2*CL + COF2 rate = ** User defined ** ( 85) + jch2br2 ( 86) CH2BR2 + hv -> 2*BR rate = ** User defined ** ( 86) + jch3br ( 87) CH3BR + hv -> BR + CH3O2 rate = ** User defined ** ( 87) + jch3ccl3 ( 88) CH3CCL3 + hv -> 3*CL rate = ** User defined ** ( 88) + jch3cl ( 89) CH3CL + hv -> CL + CH3O2 rate = ** User defined ** ( 89) + jchbr3 ( 90) CHBR3 + hv -> 3*BR rate = ** User defined ** ( 90) + jcl2 ( 91) CL2 + hv -> 2*CL rate = ** User defined ** ( 91) + jcl2o2 ( 92) CL2O2 + hv -> 2*CL rate = ** User defined ** ( 92) + jclo ( 93) CLO + hv -> CL + O rate = ** User defined ** ( 93) + jclono2_a ( 94) CLONO2 + hv -> CL + NO3 rate = ** User defined ** ( 94) + jclono2_b ( 95) CLONO2 + hv -> CLO + NO2 rate = ** User defined ** ( 95) + jcof2 ( 96) COF2 + hv -> 2*F rate = ** User defined ** ( 96) + jcofcl ( 97) COFCL + hv -> F + CL rate = ** User defined ** ( 97) + jh2402 ( 98) H2402 + hv -> 2*BR + 2*COF2 rate = ** User defined ** ( 98) + jhbr ( 99) HBR + hv -> BR + H rate = ** User defined ** ( 99) + jhcfc141b (100) HCFC141B + hv -> CL + COFCL rate = ** User defined ** (100) + jhcfc142b (101) HCFC142B + hv -> CL + COF2 rate = ** User defined ** (101) + jhcfc22 (102) HCFC22 + hv -> CL + COF2 rate = ** User defined ** (102) + jhcl (103) HCL + hv -> H + CL rate = ** User defined ** (103) + jhf (104) HF + hv -> H + F rate = ** User defined ** (104) + jhobr (105) HOBR + hv -> BR + OH rate = ** User defined ** (105) + jhocl (106) HOCL + hv -> OH + CL rate = ** User defined ** (106) + joclo (107) OCLO + hv -> O + CLO rate = ** User defined ** (107) + jsf6 (108) SF6 + hv -> {sink} rate = ** User defined ** (108) + jh2so4 (109) H2SO4 + hv -> SO3 + H2O rate = ** User defined ** (109) + jocs (110) OCS + hv -> S + CO rate = ** User defined ** (110) + jso (111) SO + hv -> S + O rate = ** User defined ** (111) + jso2 (112) SO2 + hv -> SO + O rate = ** User defined ** (112) + jso3 (113) SO3 + hv -> SO2 + O rate = ** User defined ** (113) + jsoa1_a1 (114) soa1_a1 + hv -> (No products) rate = ** User defined ** (114) + jsoa1_a2 (115) soa1_a2 + hv -> (No products) rate = ** User defined ** (115) + jsoa2_a1 (116) soa2_a1 + hv -> (No products) rate = ** User defined ** (116) + jsoa2_a2 (117) soa2_a2 + hv -> (No products) rate = ** User defined ** (117) + jsoa3_a1 (118) soa3_a1 + hv -> (No products) rate = ** User defined ** (118) + jsoa3_a2 (119) soa3_a2 + hv -> (No products) rate = ** User defined ** (119) + jsoa4_a1 (120) soa4_a1 + hv -> (No products) rate = ** User defined ** (120) + jsoa4_a2 (121) soa4_a2 + hv -> (No products) rate = ** User defined ** (121) + jsoa5_a1 (122) soa5_a1 + hv -> (No products) rate = ** User defined ** (122) + jsoa5_a2 (123) soa5_a2 + hv -> (No products) rate = ** User defined ** (123) + + Reactions + E90_tau ( 1) E90 -> (No products) rate = 1.29E-07 (124) + ag1 ( 2) O2_1D -> O2 rate = 2.58E-04 (125) + ag2 ( 3) O2_1S -> O2 rate = 8.50E-02 (126) + O1D_H2 ( 4) O1D + H2 -> H + OH rate = 1.20E-10 (127) + O1D_H2O ( 5) O1D + H2O -> 2*OH rate = 1.63E-10*exp( 60./t) (128) + O1D_N2 ( 6) O1D + N2 -> O + N2 rate = 2.15E-11*exp( 110./t) (129) + O1D_O2 ( 7) O1D + O2 -> O + O2_1S rate = 2.64E-11*exp( 55./t) (130) + O1D_O2b ( 8) O1D + O2 -> O + O2 rate = 6.60E-12*exp( 55./t) (131) + O1D_O3 ( 9) O1D + O3 -> O2 + O2 rate = 1.20E-10 (132) + O1D_O3a ( 10) O1D + O3 -> O2 + 2*O rate = 1.20E-10 (133) + O2_1D_N2 ( 11) O2_1D + N2 -> O2 + N2 rate = 1.00E-20 (134) + O2_1D_O ( 12) O2_1D + O -> O2 + O rate = 1.30E-16 (135) + O2_1D_O2 ( 13) O2_1D + O2 -> 2*O2 rate = 3.60E-18*exp( -220./t) (136) + O2_1S_CO2 ( 14) O2_1S + CO2 -> O2_1D + CO2 rate = 4.20E-13 (137) + O2_1S_N2 ( 15) O2_1S + N2 -> O2_1D + N2 rate = 1.80E-15*exp( 45./t) (138) + O2_1S_O ( 16) O2_1S + O -> O2_1D + O rate = 8.00E-14 (139) + O2_1S_O2 ( 17) O2_1S + O2 -> O2_1D + O2 rate = 3.90E-17 (140) + O2_1S_O3 ( 18) O2_1S + O3 -> O2_1D + O3 rate = 3.50E-11*exp( -135./t) (141) + O_O3 ( 19) O + O3 -> 2*O2 rate = 8.00E-12*exp( -2060./t) (142) + usr_O_O ( 20) O + O + M -> O2 + M rate = ** User defined ** (143) + usr_O_O2 ( 21) O + O2 + M -> O3 + M rate = ** User defined ** (144) + H2_O ( 22) H2 + O -> OH + H rate = 1.60E-11*exp( -4570./t) (145) + H2O2_O ( 23) H2O2 + O -> OH + HO2 rate = 1.40E-12*exp( -2000./t) (146) + H_HO2 ( 24) H + HO2 -> H2 + O2 rate = 6.90E-12 (147) + H_HO2a ( 25) H + HO2 -> 2*OH rate = 7.20E-11 (148) + H_HO2b ( 26) H + HO2 -> H2O + O rate = 1.60E-12 (149) + H_O2 ( 27) H + O2 + M -> HO2 + M troe : ko=5.30E-32*(300/t)**1.80 (150) + ki=9.50E-11*(300/t)**-0.40 + f=0.60 + HO2_O ( 28) HO2 + O -> OH + O2 rate = 3.00E-11*exp( 200./t) (151) + HO2_O3 ( 29) HO2 + O3 -> OH + 2*O2 rate = 1.00E-14*exp( -490./t) (152) + H_O3 ( 30) H + O3 -> OH + O2 rate = 1.40E-10*exp( -470./t) (153) + OH_H2 ( 31) OH + H2 -> H2O + H rate = 2.80E-12*exp( -1800./t) (154) + OH_H2O2 ( 32) OH + H2O2 -> H2O + HO2 rate = 1.80E-12 (155) + OH_HO2 ( 33) OH + HO2 -> H2O + O2 rate = 4.80E-11*exp( 250./t) (156) + OH_O ( 34) OH + O -> H + O2 rate = 1.80E-11*exp( 180./t) (157) + OH_O3 ( 35) OH + O3 -> HO2 + O2 rate = 1.70E-12*exp( -940./t) (158) + OH_OH ( 36) OH + OH -> H2O + O rate = 1.80E-12 (159) + OH_OH_M ( 37) OH + OH + M -> H2O2 + M troe : ko=6.90E-31*(300/t)**1.00 (160) + ki=2.60E-11 + f=0.60 + usr_HO2_HO2 ( 38) HO2 + HO2 -> H2O2 + O2 rate = ** User defined ** (161) + HO2NO2_OH ( 39) HO2NO2 + OH -> H2O + NO2 + O2 rate = 4.50E-13*exp( 610./t) (162) + N_NO ( 40) N + NO -> N2 + O rate = 2.10E-11*exp( 100./t) (163) + N_NO2a ( 41) N + NO2 -> N2O + O rate = 2.90E-12*exp( 220./t) (164) + N_NO2b ( 42) N + NO2 -> 2*NO rate = 1.45E-12*exp( 220./t) (165) + N_NO2c ( 43) N + NO2 -> N2 + O2 rate = 1.45E-12*exp( 220./t) (166) + N_O2 ( 44) N + O2 -> NO + O rate = 3.30E-12*exp( -3150./t) (167) + NO2_O ( 45) NO2 + O -> NO + O2 rate = 5.10E-12*exp( 210./t) (168) + NO2_O3 ( 46) NO2 + O3 -> NO3 + O2 rate = 1.20E-13*exp( -2450./t) (169) + NO2_O_M ( 47) NO2 + O + M -> NO3 + M troe : ko=2.50E-31*(300/t)**1.80 (170) + ki=2.20E-11*(300/t)**0.70 + f=0.60 + NO3_HO2 ( 48) NO3 + HO2 -> OH + NO2 + O2 rate = 3.50E-12 (171) + NO3_NO ( 49) NO3 + NO -> 2*NO2 rate = 1.70E-11*exp( 125./t) (172) + NO3_O ( 50) NO3 + O -> NO2 + O2 rate = 1.30E-11 (173) + NO3_OH ( 51) NO3 + OH -> HO2 + NO2 rate = 2.20E-11 (174) + N_OH ( 52) N + OH -> NO + H rate = 5.00E-11 (175) + NO_HO2 ( 53) NO + HO2 -> NO2 + OH rate = 3.44E-12*exp( 260./t) (176) + NO_O3 ( 54) NO + O3 -> NO2 + O2 rate = 3.00E-12*exp( -1500./t) (177) + NO_O_M ( 55) NO + O + M -> NO2 + M troe : ko=9.00E-32*(300/t)**1.50 (178) + ki=3.00E-11 + f=0.60 + O1D_N2Oa ( 56) O1D + N2O -> 2*NO rate = 7.26E-11*exp( 20./t) (179) + O1D_N2Ob ( 57) O1D + N2O -> N2 + O2 rate = 4.64E-11*exp( 20./t) (180) + tag_NO2_HO2 ( 58) NO2 + HO2 + M -> HO2NO2 + M troe : ko=1.90E-31*(300/t)**3.40 (181) + ki=4.00E-12*(300/t)**0.30 + f=0.60 + tag_NO2_NO3 ( 59) NO2 + NO3 + M -> N2O5 + M troe : ko=2.40E-30*(300/t)**3.00 (182) + ki=1.60E-12*(300/t)**-0.10 + f=0.60 + tag_NO2_OH ( 60) NO2 + OH + M -> HNO3 + M troe : ko=1.80E-30*(300/t)**3.00 (183) + ki=2.80E-11 + f=0.60 + usr_HNO3_OH ( 61) HNO3 + OH -> NO3 + H2O rate = ** User defined ** (184) + usr_HO2NO2_M ( 62) HO2NO2 + M -> HO2 + NO2 + M rate = ** User defined ** (185) + usr_N2O5_M ( 63) N2O5 + M -> NO2 + NO3 + M rate = ** User defined ** (186) + CL_CH2O ( 64) CL + CH2O -> HCL + HO2 + CO rate = 8.10E-11*exp( -30./t) (187) + CL_CH4 ( 65) CL + CH4 -> CH3O2 + HCL rate = 7.10E-12*exp( -1270./t) (188) + CL_H2 ( 66) CL + H2 -> HCL + H rate = 3.05E-11*exp( -2270./t) (189) + CL_H2O2 ( 67) CL + H2O2 -> HCL + HO2 rate = 1.10E-11*exp( -980./t) (190) + CL_HO2a ( 68) CL + HO2 -> HCL + O2 rate = 1.40E-11*exp( 270./t) (191) + CL_HO2b ( 69) CL + HO2 -> OH + CLO rate = 3.60E-11*exp( -375./t) (192) + CL_O3 ( 70) CL + O3 -> CLO + O2 rate = 2.30E-11*exp( -200./t) (193) + CLO_CH3O2 ( 71) CLO + CH3O2 -> CL + HO2 + CH2O rate = 3.30E-12*exp( -115./t) (194) + CLO_CLOa ( 72) CLO + CLO -> 2*CL + O2 rate = 3.00E-11*exp( -2450./t) (195) + CLO_CLOb ( 73) CLO + CLO -> CL2 + O2 rate = 1.00E-12*exp( -1590./t) (196) + CLO_CLOc ( 74) CLO + CLO -> CL + OCLO rate = 3.50E-13*exp( -1370./t) (197) + CLO_HO2 ( 75) CLO + HO2 -> O2 + HOCL rate = 2.60E-12*exp( 290./t) (198) + CLO_NO ( 76) CLO + NO -> NO2 + CL rate = 6.40E-12*exp( 290./t) (199) + CLONO2_CL ( 77) CLONO2 + CL -> CL2 + NO3 rate = 6.50E-12*exp( 135./t) (200) + CLO_NO2_M ( 78) CLO + NO2 + M -> CLONO2 + M troe : ko=1.80E-31*(300/t)**3.40 (201) + ki=1.50E-11*(300/t)**1.90 + f=0.60 + CLONO2_O ( 79) CLONO2 + O -> CLO + NO3 rate = 3.60E-12*exp( -840./t) (202) + CLONO2_OH ( 80) CLONO2 + OH -> HOCL + NO3 rate = 1.20E-12*exp( -330./t) (203) + CLO_O ( 81) CLO + O -> CL + O2 rate = 2.80E-11*exp( 85./t) (204) + CLO_OHa ( 82) CLO + OH -> CL + HO2 rate = 7.40E-12*exp( 270./t) (205) + CLO_OHb ( 83) CLO + OH -> HCL + O2 rate = 6.00E-13*exp( 230./t) (206) + HCL_O ( 84) HCL + O -> CL + OH rate = 1.00E-11*exp( -3300./t) (207) + HCL_OH ( 85) HCL + OH -> H2O + CL rate = 1.80E-12*exp( -250./t) (208) + HOCL_CL ( 86) HOCL + CL -> HCL + CLO rate = 3.40E-12*exp( -130./t) (209) + HOCL_O ( 87) HOCL + O -> CLO + OH rate = 1.70E-13 (210) + HOCL_OH ( 88) HOCL + OH -> H2O + CLO rate = 3.00E-12*exp( -500./t) (211) + O1D_CCL4 ( 89) O1D + CCL4 -> 4*CL rate = 2.61E-10 (212) + O1D_CF2CLBR ( 90) O1D + CF2CLBR -> CL + BR + COF2 rate = 9.75E-11 (213) + O1D_CFC11 ( 91) O1D + CFC11 -> 2*CL + COFCL rate = 2.07E-10 (214) + O1D_CFC113 ( 92) O1D + CFC113 -> 2*CL + COFCL + COF2 rate = 2.09E-10 (215) + O1D_CFC114 ( 93) O1D + CFC114 -> 2*CL + 2*COF2 rate = 1.17E-10 (216) + O1D_CFC115 ( 94) O1D + CFC115 -> CL + F + 2*COF2 rate = 4.64E-11 (217) + O1D_CFC12 ( 95) O1D + CFC12 -> 2*CL + COF2 rate = 1.20E-10 (218) + O1D_HCLa ( 96) O1D + HCL -> CL + OH rate = 9.90E-11 (219) + O1D_HCLb ( 97) O1D + HCL -> CLO + H rate = 3.30E-12 (220) + tag_CLO_CLO_M ( 98) CLO + CLO + M -> CL2O2 + M troe : ko=1.90E-32*(300/t)**3.60 (221) + ki=3.70E-12*(300/t)**1.60 + f=0.60 + usr_CL2O2_M ( 99) CL2O2 + M -> CLO + CLO + M rate = ** User defined ** (222) + BR_CH2O (100) BR + CH2O -> HBR + HO2 + CO rate = 1.70E-11*exp( -800./t) (223) + BR_HO2 (101) BR + HO2 -> HBR + O2 rate = 4.80E-12*exp( -310./t) (224) + BR_O3 (102) BR + O3 -> BRO + O2 rate = 1.60E-11*exp( -780./t) (225) + BRO_BRO (103) BRO + BRO -> 2*BR + O2 rate = 1.50E-12*exp( 230./t) (226) + BRO_CLOa (104) BRO + CLO -> BR + OCLO rate = 9.50E-13*exp( 550./t) (227) + BRO_CLOb (105) BRO + CLO -> BR + CL + O2 rate = 2.30E-12*exp( 260./t) (228) + BRO_CLOc (106) BRO + CLO -> BRCL + O2 rate = 4.10E-13*exp( 290./t) (229) + BRO_HO2 (107) BRO + HO2 -> HOBR + O2 rate = 4.50E-12*exp( 460./t) (230) + BRO_NO (108) BRO + NO -> BR + NO2 rate = 8.80E-12*exp( 260./t) (231) + BRO_NO2_M (109) BRO + NO2 + M -> BRONO2 + M troe : ko=5.20E-31*(300/t)**3.20 (232) + ki=6.90E-12*(300/t)**2.90 + f=0.60 + BRONO2_O (110) BRONO2 + O -> BRO + NO3 rate = 1.90E-11*exp( 215./t) (233) + BRO_O (111) BRO + O -> BR + O2 rate = 1.90E-11*exp( 230./t) (234) + BRO_OH (112) BRO + OH -> BR + HO2 rate = 1.70E-11*exp( 250./t) (235) + HBR_O (113) HBR + O -> BR + OH rate = 5.80E-12*exp( -1500./t) (236) + HBR_OH (114) HBR + OH -> BR + H2O rate = 5.50E-12*exp( 200./t) (237) + HOBR_O (115) HOBR + O -> BRO + OH rate = 1.20E-10*exp( -430./t) (238) + O1D_CF3BR (116) O1D + CF3BR -> BR + F + COF2 rate = 4.50E-11 (239) + O1D_CHBR3 (117) O1D + CHBR3 -> 3*BR rate = 4.62E-10 (240) + O1D_H2402 (118) O1D + H2402 -> 2*BR + 2*COF2 rate = 1.20E-10 (241) + O1D_HBRa (119) O1D + HBR -> BR + OH rate = 9.00E-11 (242) + O1D_HBRb (120) O1D + HBR -> BRO + H rate = 3.00E-11 (243) + F_CH4 (121) F + CH4 -> HF + CH3O2 rate = 1.60E-10*exp( -260./t) (244) + F_H2 (122) F + H2 -> HF + H rate = 1.40E-10*exp( -500./t) (245) + F_H2O (123) F + H2O -> HF + OH rate = 1.40E-11 (246) + F_HNO3 (124) F + HNO3 -> HF + NO3 rate = 6.00E-12*exp( 400./t) (247) + O1D_COF2 (125) O1D + COF2 -> 2*F rate = 2.14E-11 (248) + O1D_COFCL (126) O1D + COFCL -> F + CL rate = 1.90E-10 (249) + CH2BR2_CL (127) CH2BR2 + CL -> 2*BR + HCL rate = 6.30E-12*exp( -800./t) (250) + CH2BR2_OH (128) CH2BR2 + OH -> 2*BR + H2O rate = 2.00E-12*exp( -840./t) (251) + CH3BR_CL (129) CH3BR + CL -> HCL + HO2 + BR rate = 1.46E-11*exp( -1040./t) (252) + CH3BR_OH (130) CH3BR + OH -> BR + H2O + HO2 rate = 1.42E-12*exp( -1150./t) (253) + CH3CCL3_OH (131) CH3CCL3 + OH -> H2O + 3*CL rate = 1.64E-12*exp( -1520./t) (254) + CH3CL_CL (132) CH3CL + CL -> HO2 + CO + 2*HCL rate = 2.03E-11*exp( -1100./t) (255) + CH3CL_OH (133) CH3CL + OH -> CL + H2O + HO2 rate = 1.96E-12*exp( -1200./t) (256) + CHBR3_CL (134) CHBR3 + CL -> 3*BR + HCL rate = 4.85E-12*exp( -850./t) (257) + CHBR3_OH (135) CHBR3 + OH -> 3*BR rate = 9.00E-13*exp( -360./t) (258) + HCFC141B_OH (136) HCFC141B + OH -> CL + COFCL rate = 1.25E-12*exp( -1600./t) (259) + HCFC142B_OH (137) HCFC142B + OH -> CL + COF2 rate = 1.30E-12*exp( -1770./t) (260) + HCFC22_OH (138) HCFC22 + OH -> H2O + CL + COF2 rate = 9.20E-13*exp( -1560./t) (261) + O1D_CH2BR2 (139) O1D + CH2BR2 -> 2*BR rate = 2.57E-10 (262) + O1D_CH3BR (140) O1D + CH3BR -> BR rate = 1.80E-10 (263) + O1D_HCFC141B (141) O1D + HCFC141B -> CL + COFCL rate = 1.79E-10 (264) + O1D_HCFC142B (142) O1D + HCFC142B -> CL + COF2 rate = 1.30E-10 (265) + O1D_HCFC22 (143) O1D + HCFC22 -> CL + COF2 rate = 7.65E-11 (266) + CH2O_HO2 (144) CH2O + HO2 -> HOCH2OO rate = 9.70E-15*exp( 625./t) (267) + CH2O_NO3 (145) CH2O + NO3 -> CO + HO2 + HNO3 rate = 6.00E-13*exp( -2058./t) (268) + CH2O_O (146) CH2O + O -> HO2 + OH + CO rate = 3.40E-11*exp( -1600./t) (269) + CH2O_OH (147) CH2O + OH -> CO + H2O + H rate = 5.50E-12*exp( 125./t) (270) + CH3O2_CH3O2a (148) CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 rate = 5.00E-13*exp( -424./t) (271) + CH3O2_CH3O2b (149) CH3O2 + CH3O2 -> CH2O + CH3OH rate = 1.90E-14*exp( 706./t) (272) + CH3O2_HO2 (150) CH3O2 + HO2 -> CH3OOH + O2 rate = 4.10E-13*exp( 750./t) (273) + CH3O2_NO (151) CH3O2 + NO -> CH2O + NO2 + HO2 rate = 2.80E-12*exp( 300./t) (274) + CH3OH_OH (152) CH3OH + OH -> HO2 + CH2O rate = 2.90E-12*exp( -345./t) (275) + CH3OOH_OH (153) CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O rate = 3.80E-12*exp( 200./t) (276) + CH4_OH (154) CH4 + OH -> CH3O2 + H2O rate = 2.45E-12*exp( -1775./t) (277) + HCN_OH (155) HCN + OH + M -> HO2 + M troe : ko=6.10E-33*(300/t)**1.50 (278) + ki=9.80E-15*(300/t)**-4.60 + f=0.80 + HCOOH_OH (156) HCOOH + OH -> HO2 + CO2 + H2O rate = 4.00E-13 (279) + HOCH2OO_HO2 (157) HOCH2OO + HO2 -> HCOOH rate = 7.50E-13*exp( 700./t) (280) + HOCH2OO_M (158) HOCH2OO -> CH2O + HO2 rate = 2.40E+12*exp( -7000./t) (281) + HOCH2OO_NO (159) HOCH2OO + NO -> HCOOH + NO2 + HO2 rate = 2.60E-12*exp( 265./t) (282) + O1D_CH4a (160) O1D + CH4 -> CH3O2 + OH rate = 1.31E-10 (283) + O1D_CH4b (161) O1D + CH4 -> CH2O + H + HO2 rate = 3.50E-11 (284) + O1D_CH4c (162) O1D + CH4 -> CH2O + H2 rate = 9.00E-12 (285) + O1D_HCN (163) O1D + HCN -> OH rate = 1.08E-10*exp( 105./t) (286) + usr_CO_OH (164) CO + OH -> CO2 + HO2 rate = ** User defined ** (287) + C2H2_CL_M (165) C2H2 + CL + M -> CL + M troe : ko=5.20E-30*(300/t)**2.40 (288) + ki=2.20E-10*(300/t)**0.70 + f=0.60 + C2H2_OH_M (166) C2H2 + OH + M -> 0.65*GLYOXAL + 0.65*OH + 0.35*HCOOH + 0.35*HO2 troe : ko=5.50E-30 (289) + + 0.35*CO + M ki=8.30E-13*(300/t)**-2.00 + f=0.60 + C2H4_CL_M (167) C2H4 + CL + M -> CL + M troe : ko=1.60E-29*(300/t)**3.30 (290) + ki=3.10E-10*(300/t) + f=0.60 + C2H4_O3 (168) C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*HCOOH + CH2O rate = 1.20E-14*exp( -2630./t) (291) + C2H5O2_C2H5O2 (169) C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH rate = 6.80E-14 (292) + C2H5O2_CH3O2 (170) C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH rate = 2.00E-13 (293) + + 0.2*C2H5OH + C2H5O2_HO2 (171) C2H5O2 + HO2 -> C2H5OOH + O2 rate = 7.50E-13*exp( 700./t) (294) + C2H5O2_NO (172) C2H5O2 + NO -> CH3CHO + HO2 + NO2 rate = 2.60E-12*exp( 365./t) (295) + C2H5OH_OH (173) C2H5OH + OH -> HO2 + CH3CHO rate = 6.90E-12*exp( -230./t) (296) + C2H5OOH_OH (174) C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH rate = 3.80E-12*exp( 200./t) (297) + C2H6_CL (175) C2H6 + CL -> HCL + C2H5O2 rate = 7.20E-11*exp( -70./t) (298) + C2H6_OH (176) C2H6 + OH -> C2H5O2 + H2O rate = 7.66E-12*exp( -1020./t) (299) + CH3CHO_NO3 (177) CH3CHO + NO3 -> CH3CO3 + HNO3 rate = 1.40E-12*exp( -1900./t) (300) + CH3CHO_OH (178) CH3CHO + OH -> CH3CO3 + H2O rate = 4.63E-12*exp( 350./t) (301) + CH3CN_OH (179) CH3CN + OH -> HO2 rate = 7.80E-13*exp( -1050./t) (302) + CH3CO3_CH3CO3 (180) CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 rate = 2.90E-12*exp( 500./t) (303) + CH3CO3_CH3O2 (181) CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 rate = 2.00E-12*exp( 500./t) (304) + + 0.1*CH3COOH + CH3CO3_HO2 (182) CH3CO3 + HO2 -> 0.36*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.49*OH rate = 4.30E-13*exp( 1040./t) (305) + + 0.49*CH3O2 + 0.49*CO2 + CH3CO3_NO (183) CH3CO3 + NO -> CH3O2 + CO2 + NO2 rate = 8.10E-12*exp( 270./t) (306) + CH3COOH_OH (184) CH3COOH + OH -> CH3O2 + CO2 + H2O rate = 3.15E-14*exp( 920./t) (307) + CH3COOOH_OH (185) CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O rate = 1.00E-12 (308) + EO2_HO2 (186) EO2 + HO2 -> EOOH rate = 7.50E-13*exp( 700./t) (309) + EO2_NO (187) EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 rate = 4.20E-12*exp( 180./t) (310) + EO_M (188) EO -> 2*CH2O + HO2 rate = 1.60E+11*exp( -4150./t) (311) + EO_O2 (189) EO + O2 -> GLYALD + HO2 rate = 1.00E-14 (312) + GLYALD_OH (190) GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 rate = 1.00E-11 (313) + GLYOXAL_OH (191) GLYOXAL + OH -> HO2 + CO + CO2 rate = 1.15E-11 (314) + PAN_OH (192) PAN + OH -> CH2O + NO3 rate = 4.00E-14 (315) + tag_C2H4_OH (193) C2H4 + OH + M -> EO2 + M troe : ko=8.60E-29*(300/t)**3.10 (316) + ki=9.00E-12*(300/t)**0.85 + f=0.48 + tag_CH3CO3_NO2 (194) CH3CO3 + NO2 + M -> PAN + M troe : ko=7.30E-29*(300/t)**4.10 (317) + ki=9.50E-12*(300/t)**1.60 + f=0.60 + usr_PAN_M (195) PAN + M -> CH3CO3 + NO2 + M rate = ** User defined ** (318) + C3H6_NO3 (196) C3H6 + NO3 -> NOA rate = 4.60E-13*exp( -1156./t) (319) + C3H6_O3 (197) C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (320) + + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + + 0.36*OH + C3H7O2_CH3O2 (198) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 1.00E-13*exp( 557./t) (321) + C3H7O2_HO2 (199) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 1.41E-13*exp( 1300./t) (322) + C3H7O2_NO (200) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 2.70E-12*exp( 360./t) (323) + C3H7OOH_OH (201) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (324) + C3H8_OH (202) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (325) + CH3COCHO_NO3 (203) CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 rate = 1.40E-12*exp( -1860./t) (326) + CH3COCHO_OH (204) CH3COCHO + OH -> CH3CO3 + CO + H2O rate = 8.40E-13*exp( 830./t) (327) + HYAC_OH (205) HYAC + OH -> CH3COCHO + HO2 rate = 3.00E-12 (328) + NOA_OH (206) NOA + OH -> NO2 + CH3COCHO rate = 6.70E-13 (329) + PO2_HO2 (207) PO2 + HO2 -> POOH + O2 rate = 7.50E-13*exp( 700./t) (330) + PO2_NO (208) PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 rate = 4.20E-12*exp( 180./t) (331) + POOH_OH (209) POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O rate = 3.80E-12*exp( 200./t) (332) + RO2_CH3O2 (210) RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC rate = 7.10E-13*exp( 500./t) (333) + + 0.5*CH3COCHO + 0.5*CH3OH + RO2_HO2 (211) RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 rate = 8.60E-13*exp( 700./t) (334) + RO2_NO (212) RO2 + NO -> CH3CO3 + CH2O + NO2 rate = 2.90E-12*exp( 300./t) (335) + ROOH_OH (213) ROOH + OH -> RO2 + H2O rate = 3.80E-12*exp( 200./t) (336) + tag_C3H6_OH (214) C3H6 + OH + M -> PO2 + M troe : ko=8.00E-27*(300/t)**3.50 (337) + ki=3.00E-11 + f=0.50 + usr_CH3COCH3_OH (215) CH3COCH3 + OH -> RO2 + H2O rate = ** User defined ** (338) + BIGENE_NO3 (216) BIGENE + NO3 -> NO2 + CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 rate = 3.50E-13 (339) + BIGENE_OH (217) BIGENE + OH -> ENEO2 rate = 5.40E-11 (340) + ENEO2_NO (218) ENEO2 + NO -> CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 + HO2 + NO2 rate = 4.80E-12*exp( 120./t) (341) + ENEO2_NOb (219) ENEO2 + NO -> HONITR rate = 5.10E-14*exp( 693./t) (342) + HONITR_OH (220) HONITR + OH -> ONITR + HO2 rate = 2.00E-12 (343) + MACRO2_CH3CO3 (221) MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 rate = 1.40E-11 (344) + + 0.53*GLYALD + 0.22*HYAC + 0.25*CH2O + + 0.53*CH3CO3 + MACRO2_CH3O2 (222) MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO rate = 5.00E-13*exp( 400./t) (345) + + 0.26*GLYALD + 0.26*CH3CO3 + 0.25*CH3OH + + 0.23*HYAC + MACRO2_HO2 (223) MACRO2 + HO2 -> MACROOH rate = 8.00E-13*exp( 700./t) (346) + MACRO2_NO3 (224) MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO rate = 2.40E-12 (347) + + 0.22*CO + 0.53*GLYALD + 0.22*HYAC + 0.53*CH3CO3 + MACRO2_NOa (225) MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD rate = 2.70E-12*exp( 360./t) (348) + + 0.25*CH3COCHO + 0.53*CH3CO3 + 0.22*HYAC + 0.22*CO + MACRO2_NOb (226) MACRO2 + NO -> HONITR rate = 1.30E-13*exp( 360./t) (349) + MACR_O3 (227) MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 rate = 1.50E-15*exp( -2100./t) (350) + + 0.88*CH3COCHO + 0.33*HCOOH + 0.14*HO2 + MACR_OH (228) MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 rate = 9.60E-12*exp( 360./t) (351) + MACROOH_OH (229) MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 rate = 2.30E-11*exp( 200./t) (352) + MCO3_CH3CO3 (230) MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 rate = 4.60E-12*exp( 530./t) (353) + MCO3_CH3O2 (231) MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 rate = 2.00E-12*exp( 500./t) (354) + MCO3_HO2 (232) MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH rate = 4.30E-13*exp( 1040./t) (355) + + 0.45*CO2 + 0.45*CH2O + 0.45*CH3CO3 + MCO3_MCO3 (233) MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 rate = 2.30E-12*exp( 530./t) (356) + MCO3_NO (234) MCO3 + NO -> NO2 + CH2O + CH3CO3 rate = 5.30E-12*exp( 360./t) (357) + MCO3_NO3 (235) MCO3 + NO3 -> NO2 + CH2O + CH3CO3 rate = 5.00E-12 (358) + MEKO2_HO2 (236) MEKO2 + HO2 -> 0.8*MEKOOH + 0.2*OH + 0.2*CH3CHO + 0.2*CH3CO3 rate = 7.50E-13*exp( 700./t) (359) + MEKO2_NO (237) MEKO2 + NO -> CH3CO3 + CH3CHO + NO2 rate = 4.20E-12*exp( 180./t) (360) + MEK_OH (238) MEK + OH -> MEKO2 rate = 2.30E-12*exp( -170./t) (361) + MEKOOH_OH (239) MEKOOH + OH -> MEKO2 rate = 3.80E-12*exp( 200./t) (362) + MPAN_OH_M (240) MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 troe : ko=8.00E-27*(300/t)**3.50 (363) + + 0.5*NDEP + M ki=3.00E-11 + f=0.50 + MVK_O3 (241) MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 rate = 8.50E-16*exp( -1520./t) (364) + + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*HCOOH + MVK_OH (242) MVK + OH -> MACRO2 rate = 4.13E-12*exp( 452./t) (365) + tag_MCO3_NO2 (243) MCO3 + NO2 + M -> MPAN + M troe : ko=9.70E-29*(300/t)**5.60 (366) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + usr_MPAN_M (244) MPAN + M -> MCO3 + NO2 + M rate = ** User defined ** (367) + ALKNIT_OH (245) ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 rate = 2.20E-12 (368) + ALKO2_HO2 (246) ALKO2 + HO2 -> ALKOOH rate = 7.50E-13*exp( 700./t) (369) + ALKO2_NO (247) ALKO2 + NO -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK rate = 6.70E-12 (370) + + NO2 + ALKO2_NOb (248) ALKO2 + NO -> ALKNIT rate = 5.40E-14*exp( 870./t) (371) + ALKOOH_OH (249) ALKOOH + OH -> ALKO2 rate = 3.80E-12*exp( 200./t) (372) + BIGALK_OH (250) BIGALK + OH -> ALKO2 rate = 3.50E-12 (373) + HPALD_OH (251) HPALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (374) + HYDRALD_OH (252) HYDRALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (375) + IEPOX_OH (253) IEPOX + OH -> XO2 rate = 1.30E-11 (376) + ISOPAO2_CH3CO3 (254) ISOPAO2 + CH3CO3 -> CH3O2 + HO2 + CH2O + 0.39*MACR + 0.61*MVK + CO2 rate = 1.40E-11 (377) + ISOPAO2_CH3O2 (255) ISOPAO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.5*CH2O + 0.31*MACR rate = 5.00E-13*exp( 400./t) (378) + + 0.44*MVK + ISOPAO2_HO2 (256) ISOPAO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (379) + ISOPAO2_NO (257) ISOPAO2 + NO -> 0.08*ISOPNITA + 0.92*NO2 + 0.36*MACR + 0.56*MVK rate = 4.40E-12*exp( 180./t) (380) + + 0.92*CH2O + 0.92*HO2 + ISOPAO2_NO3 (258) ISOPAO2 + NO3 -> NO2 + 0.4*MACR + 0.6*MVK + CH2O + HO2 rate = 2.40E-12 (381) + ISOPBO2_CH3CO3 (259) ISOPBO2 + CH3CO3 -> HYDRALD + CH3O2 + HO2 rate = 1.40E-11 (382) + ISOPBO2_CH3O2 (260) ISOPBO2 + CH3O2 -> 0.25*CH3OH + HO2 + 0.75*CH2O + 0.75*HYDRALD rate = 5.00E-13*exp( 400./t) (383) + ISOPBO2_HO2 (261) ISOPBO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (384) + ISOPBO2_M (262) ISOPBO2 -> HPALD + HO2 rate = 1.60E+09*exp( -8300./t) (385) + ISOPBO2_NO (263) ISOPBO2 + NO -> 0.87*HYDRALD + 0.08*ISOPNITB + 0.92*NO2 + 0.92*HO2 rate = 4.40E-12*exp( 180./t) (386) + + 0.05*GLYOXAL + 0.05*GLYALD + 0.05*CH3COCHO + + 0.05*HYAC + ISOPBO2_NO3 (264) ISOPBO2 + NO3 -> NO2 + 0.95*HYDRALD + HO2 + 0.05*GLYOXAL rate = 2.40E-12 (387) + + 0.05*GLYALD + 0.05*CH3COCHO + 0.05*HYAC + ISOPNITA_OH (265) ISOPNITA + OH -> 0.7*HYAC + 0.7*GLYALD + 0.7*NO2 + 0.3*CH2O rate = 4.00E-11 (388) + + 0.3*HONITR + 0.3*HO2 + ISOPNITB_OH (266) ISOPNITB + OH -> 0.5*HYAC + 0.5*GLYALD + 0.5*NOA + HO2 + 0.5*HONITR rate = 4.00E-11 (389) + ISOP_NO3 (267) ISOP + NO3 -> ISOPNO3 rate = 3.03E-12*exp( -446./t) (390) + ISOPNO3_CH3CO3 (268) ISOPNO3 + CH3CO3 -> NC4CHO + CH3O2 + HO2 rate = 1.40E-11 (391) + ISOPNO3_CH3O2 (269) ISOPNO3 + CH3O2 -> 0.8*NC4CHO + 1.2*HO2 + 0.8*CH2O + 0.2*CH3OH rate = 5.00E-13*exp( 400./t) (392) + + 0.2*NC4CH2OH + ISOPNO3_HO2 (270) ISOPNO3 + HO2 -> ISOPNOOH rate = 8.00E-13*exp( 700./t) (393) + ISOPNO3_NO (271) ISOPNO3 + NO -> NC4CHO + NO2 + HO2 rate = 2.70E-12*exp( 360./t) (394) + ISOPNO3_NO3 (272) ISOPNO3 + NO3 -> NC4CHO + NO2 + HO2 rate = 2.40E-12 (395) + ISOPNOOH_OH (273) ISOPNOOH + OH -> NOA + HO2 rate = 4.00E-11 (396) + ISOP_O3 (274) ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*HCOOH + 0.62*CO + 0.32*OH rate = 1.05E-14*exp( -2000./t) (397) + + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 + + 0.05*CH3O2 + ISOP_OH (275) ISOP + OH -> 0.6*ISOPAO2 + 0.4*ISOPBO2 rate = 2.54E-11*exp( 410./t) (398) + ISOPOOH_OH (276) ISOPOOH + OH -> 0.4*XO2 + 0.6*IEPOX + 0.6*OH rate = 1.52E-11*exp( 200./t) (399) + NC4CH2OH_OH (277) NC4CH2OH + OH -> GLYALD + NOA + HO2 rate = 7.00E-11 (400) + NC4CHO_OH (278) NC4CHO + OH -> GLYOXAL + NOA + HO2 rate = 1.00E-10 (401) + XO2_CH3CO3 (279) XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 rate = 1.30E-12*exp( 640./t) (402) + + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 + XO2_CH3O2 (280) XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO rate = 5.00E-13*exp( 400./t) (403) + + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD + XO2_HO2 (281) XO2 + HO2 -> XOOH rate = 8.00E-13*exp( 700./t) (404) + XO2_NO (282) XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL rate = 2.70E-12*exp( 360./t) (405) + + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + XO2_NO3 (283) XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL rate = 2.40E-12 (406) + + 0.25*CH3COCHO + 0.25*GLYALD + XOOH_OH (284) XOOH + OH -> 0.5*XO2 + 0.5*OH rate = 1.52E-12*exp( 200./t) (407) + ACBZO2_HO2 (285) ACBZO2 + HO2 -> 0.4*C6H5O2 + 0.4*OH rate = 4.30E-13*exp( 1040./t) (408) + ACBZO2_NO (286) ACBZO2 + NO -> C6H5O2 + NO2 rate = 7.50E-12*exp( 290./t) (409) + BENZENE_OH (287) BENZENE + OH -> 0.53*PHENOL + 0.12*BEPOMUC + 0.65*HO2 + 0.35*BENZO2 rate = 2.30E-12*exp( -193./t) (410) + BENZO2_HO2 (288) BENZO2 + HO2 -> BENZOOH rate = 7.50E-13*exp( 700./t) (411) + BENZO2_NO (289) BENZO2 + NO -> NO2 + GLYOXAL + 0.5*BIGALD1 + HO2 rate = 2.60E-12*exp( 365./t) (412) + BENZOOH_OH (290) BENZOOH + OH -> BENZO2 rate = 3.80E-12*exp( 200./t) (413) + BZALD_OH (291) BZALD + OH -> ACBZO2 rate = 5.90E-12*exp( 225./t) (414) + BZOO_HO2 (292) BZOO + HO2 -> BZOOH rate = 7.50E-13*exp( 700./t) (415) + BZOOH_OH (293) BZOOH + OH -> BZOO rate = 3.80E-12*exp( 200./t) (416) + BZOO_NO (294) BZOO + NO -> BZALD + NO2 + HO2 rate = 2.60E-12*exp( 365./t) (417) + C6H5O2_HO2 (295) C6H5O2 + HO2 -> C6H5OOH rate = 7.50E-13*exp( 700./t) (418) + C6H5O2_NO (296) C6H5O2 + NO -> PHENO + NO2 rate = 2.60E-12*exp( 365./t) (419) + C6H5OOH_OH (297) C6H5OOH + OH -> C6H5O2 rate = 3.80E-12*exp( 200./t) (420) + CRESOL_OH (298) CRESOL + OH -> 0.2*PHENO2 + 0.73*HO2 + 0.07*PHENO rate = 4.70E-11 (421) + DICARBO2_HO2 (299) DICARBO2 + HO2 -> 0.4*OH + 0.07*HO2 + 0.07*CH3COCHO + 0.07*CO rate = 4.30E-13*exp( 1040./t) (422) + + 0.33*CH3O2 + DICARBO2_NO (300) DICARBO2 + NO -> NO2 + 0.17*HO2 + 0.17*CH3COCHO + 0.17*CO rate = 7.50E-12*exp( 290./t) (423) + + 0.83*CH3O2 + DICARBO2_NO2 (301) DICARBO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (424) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + MALO2_HO2 (302) MALO2 + HO2 -> 0.16*GLYOXAL + 0.16*HO2 + 0.16*CO rate = 4.30E-13*exp( 1040./t) (425) + MALO2_NO (303) MALO2 + NO -> 0.4*GLYOXAL + 0.4*HO2 + 0.4*CO + NO2 rate = 7.50E-12*exp( 290./t) (426) + MALO2_NO2 (304) MALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (427) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + MDIALO2_HO2 (305) MDIALO2 + HO2 -> 0.4*OH + 0.33*HO2 + 0.07*CH3COCHO + 0.14*CO rate = 4.30E-13*exp( 1040./t) (428) + + 0.07*CH3O2 + 0.07*GLYOXAL + MDIALO2_NO (306) MDIALO2 + NO -> NO2 + 0.83*HO2 + 0.17*CH3COCHO + 0.35*CO rate = 7.50E-12*exp( 290./t) (429) + + 0.17*CH3O2 + 0.17*GLYOXAL + MDIALO2_NO2 (307) MDIALO2 + NO2 + M -> M + NDEP troe : ko=9.70E-29*(300/t)**5.60 (430) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + PHENO2_HO2 (308) PHENO2 + HO2 -> PHENOOH rate = 7.50E-13*exp( 700./t) (431) + PHENO2_NO (309) PHENO2 + NO -> HO2 + 0.7*GLYOXAL + NO2 rate = 2.60E-12*exp( 365./t) (432) + PHENOL_OH (310) PHENOL + OH -> 0.14*PHENO2 + 0.8*HO2 + 0.06*PHENO rate = 4.70E-13*exp( 1220./t) (433) + PHENO_NO2 (311) PHENO + NO2 -> NDEP rate = 2.10E-12 (434) + PHENO_O3 (312) PHENO + O3 -> C6H5O2 rate = 2.80E-13 (435) + PHENOOH_OH (313) PHENOOH + OH -> PHENO2 rate = 3.80E-12*exp( 200./t) (436) + tag_ACBZO2_NO2 (314) ACBZO2 + NO2 + M -> PBZNIT + M troe : ko=9.70E-29*(300/t)**5.60 (437) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + TOLO2_HO2 (315) TOLO2 + HO2 -> TOLOOH rate = 7.50E-13*exp( 700./t) (438) + TOLO2_NO (316) TOLO2 + NO -> NO2 + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 rate = 2.60E-12*exp( 365./t) (439) + + 0.2*BIGALD2 + 0.2*BIGALD3 + TOLOOH_OH (317) TOLOOH + OH -> TOLO2 rate = 3.80E-12*exp( 200./t) (440) + TOLUENE_OH (318) TOLUENE + OH -> 0.18*CRESOL + 0.1*TEPOMUC + 0.07*BZOO + 0.65*TOLO2 rate = 1.70E-12*exp( 352./t) (441) + + 0.28*HO2 + usr_PBZNIT_M (319) PBZNIT + M -> ACBZO2 + NO2 + M rate = ** User defined ** (442) + XYLENES_OH (320) XYLENES + OH -> 0.15*XYLOL + 0.23*TEPOMUC + 0.06*BZOO rate = 1.70E-11 (443) + + 0.56*XYLENO2 + 0.38*HO2 + XYLENO2_HO2 (321) XYLENO2 + HO2 -> XYLENOOH rate = 7.50E-13*exp( 700./t) (444) + XYLENO2_NO (322) XYLENO2 + NO -> NO2 + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO rate = 2.60E-12*exp( 365./t) (445) + + 0.06*BIGALD1 + 0.2*BIGALD2 + 0.15*BIGALD3 + + 0.21*BIGALD4 + XYLENOOH_OH (323) XYLENOOH + OH -> XYLENO2 rate = 3.80E-12*exp( 200./t) (446) + XYLOLO2_HO2 (324) XYLOLO2 + HO2 -> XYLOLOOH rate = 7.50E-13*exp( 700./t) (447) + XYLOLO2_NO (325) XYLOLO2 + NO -> HO2 + NO2 + 0.17*GLYOXAL + 0.51*CH3COCHO rate = 2.60E-12*exp( 365./t) (448) + XYLOL_OH (326) XYLOL + OH -> 0.3*XYLOLO2 + 0.63*HO2 + 0.07*PHENO rate = 8.40E-11 (449) + XYLOLOOH_OH (327) XYLOLOOH + OH -> XYLOLO2 rate = 3.80E-12*exp( 200./t) (450) + BCARY_NO3 (328) BCARY + NO3 -> NTERPO2 rate = 1.90E-11 (451) + BCARY_O3 (329) BCARY + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 1.20E-14 (452) + + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + + 0.06*RO2 + BCARY_OH (330) BCARY + OH -> TERPO2 rate = 2.00E-10 (453) + MTERP_NO3 (331) MTERP + NO3 -> NTERPO2 rate = 1.20E-12*exp( 490./t) (454) + MTERP_O3 (332) MTERP + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 rate = 6.30E-16*exp( -580./t) (455) + + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + + 0.06*RO2 + MTERP_OH (333) MTERP + OH -> TERPO2 rate = 1.20E-11*exp( 440./t) (456) + NTERPO2_CH3O2 (334) NTERPO2 + CH3O2 -> 0.5*TERPNIT + 0.75*CH2O + 0.25*CH3OH + 0.5*HO2 rate = 2.00E-12*exp( 500./t) (457) + + 0.5*TERPROD1 + 0.5*NO2 + NTERPO2_HO2 (335) NTERPO2 + HO2 -> NTERPOOH rate = 7.50E-13*exp( 700./t) (458) + NTERPO2_NO (336) NTERPO2 + NO -> 0.2*TERPNIT + 1.6*NO2 + 0.8*TERPROD1 + 0.2*NDEP rate = 4.20E-12*exp( 180./t) (459) + NTERPO2_NO3 (337) NTERPO2 + NO3 -> 2*NO2 + TERPROD1 rate = 2.40E-12 (460) + NTERPOOH_OH (338) NTERPOOH + OH -> NTERPO2 rate = 2.00E-11 (461) + TERP2O2_CH3O2 (339) TERP2O2 + CH3O2 -> TERPROD2 + 0.93*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (462) + + 0.5*CO2 + 0.125*CO + 0.125*GLYALD + + 0.15*CH3COCH3 + TERP2O2_HO2 (340) TERP2O2 + HO2 -> TERP2OOH rate = 7.50E-13*exp( 700./t) (463) + TERP2O2_NO (341) TERP2O2 + NO -> 0.1*ONITR + 0.9*NO2 + 0.34*CH2O + 0.27*CH3COCH3 rate = 4.20E-12*exp( 180./t) (464) + + 0.225*CO + 0.9*CO2 + 0.9*TERPROD2 + 0.9*HO2 + + 0.225*GLYALD + TERP2OOH_OH (342) TERP2OOH + OH -> TERP2O2 rate = 2.30E-11 (465) + TERPNIT_OH (343) TERPNIT + OH -> NO2 + TERPROD1 rate = 2.00E-11 (466) + TERPO2_CH3O2 (344) TERPO2 + CH3O2 -> TERPROD1 + 0.95*CH2O + 0.25*CH3OH + HO2 rate = 2.00E-12*exp( 500./t) (467) + + 0.025*CH3COCH3 + TERPO2_HO2 (345) TERPO2 + HO2 -> TERPOOH rate = 7.50E-13*exp( 700./t) (468) + TERPO2_NO (346) TERPO2 + NO -> 0.2*TERPNIT + 0.8*NO2 + 0.32*CH2O + 0.04*CH3COCH3 rate = 4.20E-12*exp( 180./t) (469) + + 0.8*TERPROD1 + 0.8*HO2 + TERPOOH_OH (347) TERPOOH + OH -> TERPO2 rate = 3.30E-11 (470) + TERPROD1_NO3 (348) TERPROD1 + NO3 -> 0.5*TERP2O2 + 0.5*NTERPO2 + 0.5*NDEP rate = 1.00E-12 (471) + TERPROD1_OH (349) TERPROD1 + OH -> TERP2O2 rate = 5.70E-11 (472) + TERPROD2_OH (350) TERPROD2 + OH -> 0.15*RO2 + 0.68*CH2O + 1.8*CO2 + 0.5*CH3COCH3 rate = 3.40E-11 (473) + + 0.65*CH3CO3 + 0.2*HO2 + 0.7*CO + DMS_NO3 (351) DMS + NO3 -> SO2 + HNO3 rate = 1.90E-13*exp( 520./t) (474) + DMS_OHa (352) DMS + OH -> SO2 rate = 1.10E-11*exp( -280./t) (475) + OCS_O (353) OCS + O -> SO + CO rate = 2.10E-11*exp( -2200./t) (476) + OCS_OH (354) OCS + OH -> SO2 + CO + H rate = 7.20E-14*exp( -1070./t) (477) + S_O2 (355) S + O2 -> SO + O rate = 2.30E-12 (478) + SO2_OH_M (356) SO2 + OH + M -> SO3 + HO2 troe : ko=2.90E-31*(300/t)**4.10 (479) + ki=1.70E-12*(300/t)**-0.20 + f=0.60 + S_O3 (357) S + O3 -> SO + O2 rate = 1.20E-11 (480) + SO_BRO (358) SO + BRO -> SO2 + BR rate = 5.70E-11 (481) + SO_CLO (359) SO + CLO -> SO2 + CL rate = 2.80E-11 (482) + S_OH (360) S + OH -> SO + H rate = 6.60E-11 (483) + SO_NO2 (361) SO + NO2 -> SO2 + NO rate = 1.40E-11 (484) + SO_O2 (362) SO + O2 -> SO2 + O rate = 1.60E-13*exp( -2280./t) (485) + SO_O3 (363) SO + O3 -> SO2 + O2 rate = 3.40E-12*exp( -1100./t) (486) + SO_OCLO (364) SO + OCLO -> SO2 + CLO rate = 1.90E-12 (487) + SO_OH (365) SO + OH -> SO2 + H rate = 2.60E-11*exp( 330./t) (488) + usr_DMS_OH (366) DMS + OH -> 0.5*SO2 + 0.5*HO2 rate = ** User defined ** (489) + usr_SO3_H2O (367) SO3 + H2O -> H2SO4 rate = ** User defined ** (490) + NH3_OH (368) NH3 + OH -> H2O + NHDEP rate = 1.70E-12*exp( -710./t) (491) + usr_HO2_aer (369) HO2 -> H2O rate = ** User defined ** (492) + usr_HONITR_aer (370) HONITR -> HNO3 rate = ** User defined ** (493) + usr_ISOPNITA_aer (371) ISOPNITA -> HNO3 rate = ** User defined ** (494) + usr_ISOPNITB_aer (372) ISOPNITB -> HNO3 rate = ** User defined ** (495) + usr_N2O5_aer (373) N2O5 -> 2*HNO3 rate = ** User defined ** (496) + usr_NC4CH2OH_aer (374) NC4CH2OH -> HNO3 rate = ** User defined ** (497) + usr_NC4CHO_aer (375) NC4CHO -> HNO3 rate = ** User defined ** (498) + usr_NH4_strat_ta (376) NH4 -> NHDEP rate = 6.34E-08 (499) + usr_NO2_aer (377) NO2 -> 0.5*OH + 0.5*NO + 0.5*HNO3 rate = ** User defined ** (500) + usr_NO3_aer (378) NO3 -> HNO3 rate = ** User defined ** (501) + usr_NTERPOOH_aer (379) NTERPOOH -> HNO3 rate = ** User defined ** (502) + usr_ONITR_aer (380) ONITR -> HNO3 rate = ** User defined ** (503) + usr_TERPNIT_aer (381) TERPNIT -> HNO3 rate = ** User defined ** (504) + BCARY_NO3_vbs (382) BCARY + NO3 -> BCARY + NO3 + 0.17493*SOAG3 + 0.59019*SOAG4 rate = 1.90E-11 (505) + BCARYO2_HO2_vbs (383) BCARYO2VBS + HO2 -> HO2 + 0.2202*SOAG0 + 0.2067*SOAG1 rate = 2.75E-13*exp( 1300./t) (506) + + 0.0653*SOAG2 + 0.1284*SOAG3 + 0.114*SOAG4 + BCARYO2_NO_vbs (384) BCARYO2VBS + NO -> NO + 0.1279*SOAG0 + 0.1792*SOAG1 + 0.0676*SOAG2 rate = 2.70E-12*exp( 360./t) (507) + + 0.079*SOAG3 + 0.1254*SOAG4 + BCARY_O3_vbs (385) BCARY + O3 -> BCARY + O3 + 0.2202*SOAG0 + 0.2067*SOAG1 rate = 1.20E-14 (508) + + 0.0653*SOAG2 + 0.1284*SOAG3 + 0.114*SOAG4 + BCARY_OH_vbs (386) BCARY + OH -> BCARY + OH + BCARYO2VBS rate = 2.00E-10 (509) + BENZENE_OH_vbs (387) BENZENE + OH -> BENZENE + OH + BENZO2VBS rate = 2.30E-12*exp( -193./t) (510) + BENZO2_HO2_vbs (388) BENZO2VBS + HO2 -> HO2 + 0.0023*SOAG0 + 0.0008*SOAG1 + 0.0843*SOAG2 rate = 7.50E-13*exp( 700./t) (511) + + 0.0443*SOAG3 + 0.1621*SOAG4 + BENZO2_NO_vbs (389) BENZO2VBS + NO -> NO + 0.0097*SOAG0 + 0.0034*SOAG1 + 0.1579*SOAG2 rate = 2.60E-12*exp( 365./t) (512) + + 0.0059*SOAG3 + 0.0536*SOAG4 + ISOP_NO3_vbs (390) ISOP + NO3 -> ISOP + NO3 + 0.059024*SOAG3 + 0.025024*SOAG4 rate = 3.03E-12*exp( -446./t) (513) + ISOPO2_HO2_vbs (391) ISOPO2VBS + HO2 -> HO2 + 0.0031*SOAG0 + 0.0035*SOAG1 + 0.0003*SOAG2 rate = 2.12E-13*exp( 1300./t) (514) + + 0.0271*SOAG3 + 0.0474*SOAG4 + ISOPO2_NO_vbs (392) ISOPO2VBS + NO -> NO + 0.0003*SOAG0 + 0.0003*SOAG1 + 0.0073*SOAG2 rate = 2.70E-12*exp( 350./t) (515) + + 0.0057*SOAG3 + 0.0623*SOAG4 + ISOP_O3_vbs (393) ISOP + O3 -> ISOP + O3 + 0.0033*SOAG3 rate = 1.05E-14*exp( -2000./t) (516) + ISOP_OH_vbs (394) ISOP + OH -> ISOP + OH + ISOPO2VBS rate = 2.54E-11*exp( 410./t) (517) + IVOCO2_HO2_vbs (395) IVOCO2VBS + HO2 -> HO2 + 0.2381*SOAG0 + 0.1308*SOAG1 + 0.0348*SOAG2 rate = 7.50E-13*exp( 700./t) (518) + + 0.0076*SOAG3 + 0.0113*SOAG4 + IVOCO2_NO_vbs (396) IVOCO2VBS + NO -> NO + 0.1056*SOAG0 + 0.1026*SOAG1 + 0.0521*SOAG2 rate = 2.60E-12*exp( 365./t) (519) + + 0.0143*SOAG3 + 0.0166*SOAG4 + IVOC_OH_vbs (397) IVOC + OH -> OH + IVOCO2VBS rate = 1.34E-11 (520) + MTERP_NO3_vbs (398) MTERP + NO3 -> MTERP + NO3 + 0.17493*SOAG3 + 0.59019*SOAG4 rate = 1.20E-12*exp( 490./t) (521) + MTERPO2_HO2_vbs (399) MTERPO2VBS + HO2 -> HO2 + 0.0508*SOAG0 + 0.1149*SOAG1 rate = 2.60E-13*exp( 1300./t) (522) + + 0.0348*SOAG2 + 0.0554*SOAG3 + 0.1278*SOAG4 + MTERPO2_NO_vbs (400) MTERPO2VBS + NO -> NO + 0.0245*SOAG0 + 0.0082*SOAG1 + 0.0772*SOAG2 rate = 2.70E-12*exp( 360./t) (523) + + 0.0332*SOAG3 + 0.13*SOAG4 + MTERP_O3_vbs (401) MTERP + O3 -> MTERP + O3 + 0.0508*SOAG0 + 0.1149*SOAG1 rate = 6.30E-16*exp( -580./t) (524) + + 0.0348*SOAG2 + 0.0554*SOAG3 + 0.1278*SOAG4 + MTERP_OH_vbs (402) MTERP + OH -> MTERP + OH + MTERPO2VBS rate = 1.20E-11*exp( 440./t) (525) + SVOC_OH (403) SVOC + OH -> OH + 0.5931*SOAG0 + 0.1534*SOAG1 + 0.0459*SOAG2 rate = 1.34E-11 (526) + + 0.0085*SOAG3 + 0.0128*SOAG4 + TOLUENE_OH_vbs (404) TOLUENE + OH -> TOLUENE + OH + TOLUO2VBS rate = 1.70E-12*exp( 352./t) (527) + TOLUO2_HO2_vbs (405) TOLUO2VBS + HO2 -> HO2 + 0.1364*SOAG0 + 0.0101*SOAG1 + 0.0763*SOAG2 rate = 7.50E-13*exp( 700./t) (528) + + 0.2157*SOAG3 + 0.0738*SOAG4 + TOLUO2_NO_vbs (406) TOLUO2VBS + NO -> NO + 0.0154*SOAG0 + 0.0452*SOAG1 + 0.0966*SOAG2 rate = 2.60E-12*exp( 365./t) (529) + + 0.0073*SOAG3 + 0.238*SOAG4 + usr_GLYOXAL_aer (407) GLYOXAL -> SOAG0 rate = ** User defined ** (530) + XYLENES_OH_vbs (408) XYLENES + OH -> XYLENES + OH + XYLEO2VBS rate = 1.70E-11 (531) + XYLEO2_HO2_vbs (409) XYLEO2VBS + HO2 -> HO2 + 0.1677*SOAG0 + 0.0174*SOAG1 + 0.086*SOAG2 rate = 7.50E-13*exp( 700./t) (532) + + 0.0512*SOAG3 + 0.1598*SOAG4 + XYLEO2_NO_vbs (410) XYLEO2VBS + NO -> NO + 0.0063*SOAG0 + 0.0237*SOAG1 + 0.0025*SOAG2 rate = 2.60E-12*exp( 365./t) (533) + + 0.011*SOAG3 + 0.1185*SOAG4 + het1 (411) N2O5 -> 2*HNO3 rate = ** User defined ** (534) + het10 (412) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (535) + het11 (413) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (536) + het12 (414) N2O5 -> 2*HNO3 rate = ** User defined ** (537) + het13 (415) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (538) + het14 (416) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (539) + het15 (417) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (540) + het16 (418) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (541) + het17 (419) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (542) + het2 (420) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (543) + het3 (421) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (544) + het4 (422) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (545) + het5 (423) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (546) + het6 (424) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (547) + het7 (425) N2O5 -> 2*HNO3 rate = ** User defined ** (548) + het8 (426) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (549) + het9 (427) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (550) + NH_50_tau (428) NH_50 -> (No products) rate = 2.31E-07 (551) + NH_5_tau (429) NH_5 -> (No products) rate = 2.31E-06 (552) + ST80_25_tau (430) ST80_25 -> (No products) rate = 4.63E-07 (553) + +Extraneous prod/loss species + ( 1) SVOC (dataset) + ( 2) CO (dataset) + ( 3) bc_a4 (dataset) + ( 4) NO2 (dataset) + ( 5) num_a1 (dataset) + ( 6) num_a2 (dataset) + ( 7) num_a4 (dataset) + ( 8) pom_a4 (dataset) + ( 9) SO2 (dataset) + (10) so4_a1 (dataset) + (11) so4_a2 (dataset) + (12) H2O (dataset) + (13) NO + + + Equation Report + + d(ALKNIT)/dt = r248*ALKO2*NO + - j19*ALKNIT - r245*OH*ALKNIT + d(ALKOOH)/dt = r246*ALKO2*HO2 + - j20*ALKOOH - r249*OH*ALKOOH + d(bc_a1)/dt = 0 + d(bc_a4)/dt = 0 + d(BCARY)/dt = - r328*NO3*BCARY - r329*O3*BCARY - r330*OH*BCARY + d(BENZENE)/dt = - r287*OH*BENZENE + d(BENZOOH)/dt = r288*BENZO2*HO2 + - j21*BENZOOH - r290*OH*BENZOOH + d(BEPOMUC)/dt = .12*r287*BENZENE*OH + - j22*BEPOMUC + d(BIGALD)/dt = .1*r329*BCARY*O3 + .1*r332*MTERP*O3 + - j23*BIGALD + d(BIGALD1)/dt = .5*j21*BENZOOH + j22*BEPOMUC + .2*j70*TOLOOH + .06*j72*XYLENOOH + .5*r289*BENZO2*NO + + .2*r316*TOLO2*NO + .06*r322*XYLENO2*NO + - j24*BIGALD1 + d(BIGALD2)/dt = .2*j70*TOLOOH + .2*j72*XYLENOOH + .2*r316*TOLO2*NO + .2*r322*XYLENO2*NO + - j25*BIGALD2 + d(BIGALD3)/dt = j46*HPALD + j56*NC4CHO + .2*j70*TOLOOH + .15*j72*XYLENOOH + .2*r316*TOLO2*NO + + .15*r322*XYLENO2*NO + - j26*BIGALD3 + d(BIGALD4)/dt = .21*j72*XYLENOOH + .21*r322*XYLENO2*NO + - j27*BIGALD4 + d(BIGALK)/dt = .05*r329*BCARY*O3 + .05*r332*MTERP*O3 + - r250*OH*BIGALK + d(BIGENE)/dt = - r216*NO3*BIGENE - r217*OH*BIGENE + d(BR)/dt = j74*BRCL + j75*BRO + j77*BRONO2 + j79*CF2CLBR + j80*CF3BR + 2*j86*CH2BR2 + j87*CH3BR + + 3*j90*CHBR3 + 2*j98*H2402 + j99*HBR + j105*HOBR + r90*O1D*CF2CLBR + 2*r103*BRO*BRO + + r104*BRO*CLO + r105*BRO*CLO + r108*BRO*NO + r111*BRO*O + r112*BRO*OH + r113*HBR*O + + r114*HBR*OH + r116*O1D*CF3BR + 3*r117*O1D*CHBR3 + 2*r118*O1D*H2402 + r119*O1D*HBR + + 2*r127*CH2BR2*CL + 2*r128*CH2BR2*OH + r129*CH3BR*CL + r130*CH3BR*OH + 3*r134*CHBR3*CL + + 3*r135*CHBR3*OH + 2*r139*O1D*CH2BR2 + r140*O1D*CH3BR + r358*SO*BRO + - r100*CH2O*BR - r101*HO2*BR - r102*O3*BR + d(BRCL)/dt = r106*BRO*CLO + r419*HOBR*HCL + r424*HOBR*HCL + - j74*BRCL + d(BRO)/dt = j76*BRONO2 + r102*BR*O3 + r110*BRONO2*O + r115*HOBR*O + r120*O1D*HBR + - j75*BRO - 2*r103*BRO*BRO - r104*CLO*BRO - r105*CLO*BRO - r106*CLO*BRO - r107*HO2*BRO + - r108*NO*BRO - r109*M*NO2*BRO - r111*O*BRO - r112*OH*BRO - r358*SO*BRO + d(BRONO2)/dt = r109*M*BRO*NO2 + - j76*BRONO2 - j77*BRONO2 - r413*BRONO2 - r416*BRONO2 - r421*BRONO2 - r110*O*BRONO2 + d(BRY)/dt = 0 + d(BZALD)/dt = j28*BZOOH + r294*BZOO*NO + - r291*OH*BZALD + d(BZOOH)/dt = r292*BZOO*HO2 + - j28*BZOOH - r293*OH*BZOOH + d(C2H2)/dt = - r165*M*CL*C2H2 - r166*M*OH*C2H2 + d(C2H4)/dt = - r167*M*CL*C2H4 - r168*O3*C2H4 - r193*M*OH*C2H4 + d(C2H5OH)/dt = .4*r169*C2H5O2*C2H5O2 + .2*r170*C2H5O2*CH3O2 + - r173*OH*C2H5OH + d(C2H5OOH)/dt = r171*C2H5O2*HO2 + - j29*C2H5OOH - r174*OH*C2H5OOH + d(C2H6)/dt = - r175*CL*C2H6 - r176*OH*C2H6 + d(C3H6)/dt = .7*j55*MVK + .13*r274*ISOP*O3 + - r196*NO3*C3H6 - r197*O3*C3H6 - r214*M*OH*C3H6 + d(C3H7OOH)/dt = r199*C3H7O2*HO2 + - j30*C3H7OOH - r201*OH*C3H7OOH + d(C3H8)/dt = - r202*OH*C3H8 + d(C6H5OOH)/dt = r295*C6H5O2*HO2 + - j31*C6H5OOH - r297*OH*C6H5OOH + d(CCL4)/dt = - j78*CCL4 - r89*O1D*CCL4 + d(CF2CLBR)/dt = - j79*CF2CLBR - r90*O1D*CF2CLBR + d(CF3BR)/dt = - j80*CF3BR - r116*O1D*CF3BR + d(CFC11)/dt = - j81*CFC11 - r91*O1D*CFC11 + d(CFC113)/dt = - j82*CFC113 - r92*O1D*CFC113 + d(CFC114)/dt = - j83*CFC114 - r93*O1D*CFC114 + d(CFC115)/dt = - j84*CFC115 - r94*O1D*CFC115 + d(CFC12)/dt = - j85*CFC12 - r95*O1D*CFC12 + d(CH2BR2)/dt = - j86*CH2BR2 - r127*CL*CH2BR2 - r128*OH*CH2BR2 - r139*O1D*CH2BR2 + d(CH2O)/dt = .1*j19*ALKNIT + .1*j20*ALKOOH + j38*CH3OOH + .18*j39*CH4 + j43*GLYALD + .33*j45*HONITR + + j47*HYAC + j49*ISOPOOH + 1.34*j50*MACR + j57*NOA + j62*POOH + j63*ROOH + .375*j65*TERP2OOH + + .4*j67*TERPOOH + .68*j69*TERPROD2 + r158*HOCH2OO + 2*r188*EO + r71*CLO*CH3O2 + + 2*r148*CH3O2*CH3O2 + r149*CH3O2*CH3O2 + r151*CH3O2*NO + r152*CH3OH*OH + .3*r153*CH3OOH*OH + + r161*O1D*CH4 + r162*O1D*CH4 + r168*C2H4*O3 + .7*r170*C2H5O2*CH3O2 + r181*CH3CO3*CH3O2 + + .5*r185*CH3COOOH*OH + .5*r187*EO2*NO + .8*r190*GLYALD*OH + r192*PAN*OH + .5*r197*C3H6*O3 + + r198*C3H7O2*CH3O2 + r208*PO2*NO + .8*r210*RO2*CH3O2 + .15*r211*RO2*HO2 + r212*RO2*NO + + .5*r216*BIGENE*NO3 + .5*r218*ENEO2*NO + .25*r221*MACRO2*CH3CO3 + .88*r222*MACRO2*CH3O2 + + .25*r224*MACRO2*NO3 + .25*r225*MACRO2*NO + .12*r227*MACR*O3 + r230*MCO3*CH3CO3 + + 2*r231*MCO3*CH3O2 + .45*r232*MCO3*HO2 + 2*r233*MCO3*MCO3 + r234*MCO3*NO + r235*MCO3*NO3 + + .5*r240*M*MPAN*OH + .6*r241*MVK*O3 + .4*r245*ALKNIT*OH + .1*r247*ALKO2*NO + + r254*ISOPAO2*CH3CO3 + 1.5*r255*ISOPAO2*CH3O2 + .92*r257*ISOPAO2*NO + r258*ISOPAO2*NO3 + + .75*r260*ISOPBO2*CH3O2 + .3*r265*ISOPNITA*OH + .8*r269*ISOPNO3*CH3O2 + .91*r274*ISOP*O3 + + .25*r279*XO2*CH3CO3 + .8*r280*XO2*CH3O2 + .25*r282*XO2*NO + .34*r329*BCARY*O3 + + .34*r332*MTERP*O3 + .75*r334*NTERPO2*CH3O2 + .93*r339*TERP2O2*CH3O2 + .34*r341*TERP2O2*NO + + .95*r344*TERPO2*CH3O2 + .32*r346*TERPO2*NO + .68*r350*TERPROD2*OH + - j32*CH2O - j33*CH2O - r64*CL*CH2O - r100*BR*CH2O - r144*HO2*CH2O - r145*NO3*CH2O + - r146*O*CH2O - r147*OH*CH2O + d(CH3BR)/dt = - j87*CH3BR - r129*CL*CH3BR - r130*OH*CH3BR - r140*O1D*CH3BR + d(CH3CCL3)/dt = - j88*CH3CCL3 - r131*OH*CH3CCL3 + d(CH3CHO)/dt = .4*j19*ALKNIT + .4*j20*ALKOOH + j29*C2H5OOH + .33*j45*HONITR + j53*MEKOOH + j62*POOH + + 1.6*r169*C2H5O2*C2H5O2 + .8*r170*C2H5O2*CH3O2 + r172*C2H5O2*NO + r173*C2H5OH*OH + + .5*r174*C2H5OOH*OH + .5*r197*C3H6*O3 + .27*r200*C3H7O2*NO + r208*PO2*NO + r216*BIGENE*NO3 + + r218*ENEO2*NO + .2*r236*MEKO2*HO2 + r237*MEKO2*NO + .1*r241*MVK*O3 + .8*r245*ALKNIT*OH + + .4*r247*ALKO2*NO + - j34*CH3CHO - r177*NO3*CH3CHO - r178*OH*CH3CHO + d(CH3CL)/dt = - j89*CH3CL - r132*CL*CH3CL - r133*OH*CH3CL + d(CH3CN)/dt = - r179*OH*CH3CN + d(CH3COCH3)/dt = .25*j19*ALKNIT + .25*j20*ALKOOH + .82*j30*C3H7OOH + .17*j45*HONITR + .3*j65*TERP2OOH + + .05*j67*TERPOOH + .5*j69*TERPROD2 + .82*r198*C3H7O2*CH3O2 + .82*r200*C3H7O2*NO + + .5*r216*BIGENE*NO3 + .5*r218*ENEO2*NO + .8*r245*ALKNIT*OH + .25*r247*ALKO2*NO + + .52*r329*BCARY*O3 + .52*r332*MTERP*O3 + .15*r339*TERP2O2*CH3O2 + .27*r341*TERP2O2*NO + + .025*r344*TERPO2*CH3O2 + .04*r346*TERPO2*NO + .5*r350*TERPROD2*OH + - j35*CH3COCH3 - r215*OH*CH3COCH3 + d(CH3COCHO)/dt = .18*j23*BIGALD + j27*BIGALD4 + .4*j70*TOLOOH + .54*j72*XYLENOOH + .51*j73*XYLOLOOH + + r205*HYAC*OH + r206*NOA*OH + .5*r210*RO2*CH3O2 + .25*r221*MACRO2*CH3CO3 + + .24*r222*MACRO2*CH3O2 + .25*r224*MACRO2*NO3 + .25*r225*MACRO2*NO + .88*r227*MACR*O3 + + .5*r241*MVK*O3 + .05*r263*ISOPBO2*NO + .05*r264*ISOPBO2*NO3 + .25*r279*XO2*CH3CO3 + + .1*r280*XO2*CH3O2 + .25*r282*XO2*NO + .25*r283*XO2*NO3 + .07*r299*DICARBO2*HO2 + + .17*r300*DICARBO2*NO + .07*r305*MDIALO2*HO2 + .17*r306*MDIALO2*NO + .4*r316*TOLO2*NO + + .54*r322*XYLENO2*NO + .51*r325*XYLOLO2*NO + - j36*CH3COCHO - r203*NO3*CH3COCHO - r204*OH*CH3COCHO + d(CH3COOH)/dt = .1*r181*CH3CO3*CH3O2 + .15*r182*CH3CO3*HO2 + .12*r197*C3H6*O3 + .15*r232*MCO3*HO2 + - r184*OH*CH3COOH + d(CH3COOOH)/dt = .36*r182*CH3CO3*HO2 + .4*r232*MCO3*HO2 + - j37*CH3COOOH - r185*OH*CH3COOOH + d(CH3OH)/dt = r149*CH3O2*CH3O2 + .3*r170*C2H5O2*CH3O2 + .5*r210*RO2*CH3O2 + .25*r222*MACRO2*CH3O2 + + .25*r255*ISOPAO2*CH3O2 + .25*r260*ISOPBO2*CH3O2 + .2*r269*ISOPNO3*CH3O2 + .3*r280*XO2*CH3O2 + + .25*r334*NTERPO2*CH3O2 + .25*r339*TERP2O2*CH3O2 + .25*r344*TERPO2*CH3O2 + - r152*OH*CH3OH + d(CH3OOH)/dt = r150*CH3O2*HO2 + - j38*CH3OOH - r153*OH*CH3OOH + d(CH4)/dt = .1*r197*C3H6*O3 + - j39*CH4 - j40*CH4 - r65*CL*CH4 - r121*F*CH4 - r154*OH*CH4 - r160*O1D*CH4 - r161*O1D*CH4 + - r162*O1D*CH4 + d(CHBR3)/dt = - j90*CHBR3 - r117*O1D*CHBR3 - r134*CL*CHBR3 - r135*OH*CHBR3 + d(CL)/dt = j74*BRCL + 4*j78*CCL4 + j79*CF2CLBR + 2*j81*CFC11 + 2*j82*CFC113 + 2*j83*CFC114 + j84*CFC115 + + 2*j85*CFC12 + 3*j88*CH3CCL3 + j89*CH3CL + 2*j91*CL2 + 2*j92*CL2O2 + j93*CLO + j94*CLONO2 + + j97*COFCL + j100*HCFC141B + j101*HCFC142B + j102*HCFC22 + j103*HCL + j106*HOCL + r71*CLO*CH3O2 + + 2*r72*CLO*CLO + r74*CLO*CLO + r76*CLO*NO + r81*CLO*O + r82*CLO*OH + r84*HCL*O + r85*HCL*OH + + 4*r89*O1D*CCL4 + r90*O1D*CF2CLBR + 2*r91*O1D*CFC11 + 2*r92*O1D*CFC113 + 2*r93*O1D*CFC114 + + r94*O1D*CFC115 + 2*r95*O1D*CFC12 + r96*O1D*HCL + r105*BRO*CLO + r126*O1D*COFCL + + 3*r131*CH3CCL3*OH + r133*CH3CL*OH + r136*HCFC141B*OH + r137*HCFC142B*OH + r138*HCFC22*OH + + r141*O1D*HCFC141B + r142*O1D*HCFC142B + r143*O1D*HCFC22 + r359*SO*CLO + - r64*CH2O*CL - r65*CH4*CL - r66*H2*CL - r67*H2O2*CL - r68*HO2*CL - r69*HO2*CL - r70*O3*CL + - r77*CLONO2*CL - r86*HOCL*CL - r127*CH2BR2*CL - r129*CH3BR*CL - r132*CH3CL*CL - r134*CHBR3*CL + - r175*C2H6*CL + d(CL2)/dt = r73*CLO*CLO + r77*CLONO2*CL + r412*HOCL*HCL + r417*CLONO2*HCL + r418*HOCL*HCL + r422*CLONO2*HCL + + r423*HOCL*HCL + r427*CLONO2*HCL + - j91*CL2 + d(CL2O2)/dt = r98*M*CLO*CLO + - j92*CL2O2 - r99*M*CL2O2 + d(CLO)/dt = j95*CLONO2 + j107*OCLO + r99*M*CL2O2 + r99*M*CL2O2 + r69*CL*HO2 + r70*CL*O3 + r79*CLONO2*O + + r86*HOCL*CL + r87*HOCL*O + r88*HOCL*OH + r97*O1D*HCL + r364*SO*OCLO + - j93*CLO - r71*CH3O2*CLO - 2*r72*CLO*CLO - 2*r73*CLO*CLO - 2*r74*CLO*CLO - r75*HO2*CLO + - r76*NO*CLO - r78*M*NO2*CLO - r81*O*CLO - r82*OH*CLO - r83*OH*CLO - 2*r98*M*CLO*CLO + - r104*BRO*CLO - r105*BRO*CLO - r106*BRO*CLO - r359*SO*CLO + d(CLONO2)/dt = r78*M*CLO*NO2 + - j94*CLONO2 - j95*CLONO2 - r415*CLONO2 - r420*CLONO2 - r426*CLONO2 - r77*CL*CLONO2 + - r79*O*CLONO2 - r80*OH*CLONO2 - r417*HCL*CLONO2 - r422*HCL*CLONO2 - r427*HCL*CLONO2 + d(CLY)/dt = 0 + d(CO)/dt = 1.5*j22*BEPOMUC + .45*j23*BIGALD + .6*j26*BIGALD3 + j27*BIGALD4 + j32*CH2O + j33*CH2O + + j34*CH3CHO + j36*CH3COCHO + .38*j39*CH4 + j41*CO2 + j43*GLYALD + 2*j44*GLYOXAL + + .33*j45*HONITR + 1.34*j51*MACR + .7*j55*MVK + 1.5*j64*TEPOMUC + .25*j65*TERP2OOH + j68*TERPROD1 + + 1.7*j69*TERPROD2 + j110*OCS + r64*CL*CH2O + r100*BR*CH2O + r132*CH3CL*CL + r145*CH2O*NO3 + + r146*CH2O*O + r147*CH2O*OH + .35*r166*M*C2H2*OH + .63*r168*C2H4*O3 + r191*GLYOXAL*OH + + .56*r197*C3H6*O3 + r203*CH3COCHO*NO3 + r204*CH3COCHO*OH + .22*r221*MACRO2*CH3CO3 + + .11*r222*MACRO2*CH3O2 + .22*r224*MACRO2*NO3 + .22*r225*MACRO2*NO + .65*r227*MACR*O3 + + .56*r241*MVK*O3 + .62*r274*ISOP*O3 + .25*r279*XO2*CH3CO3 + .2*r280*XO2*CH3O2 + .25*r282*XO2*NO + + .5*r283*XO2*NO3 + .07*r299*DICARBO2*HO2 + .17*r300*DICARBO2*NO + .16*r302*MALO2*HO2 + + .4*r303*MALO2*NO + .14*r305*MDIALO2*HO2 + .35*r306*MDIALO2*NO + .23*r329*BCARY*O3 + + .23*r332*MTERP*O3 + .125*r339*TERP2O2*CH3O2 + .225*r341*TERP2O2*NO + .7*r350*TERPROD2*OH + + r353*OCS*O + r354*OCS*OH + - r164*OH*CO + d(CO2)/dt = j37*CH3COOOH + .44*j39*CH4 + .4*j60*PAN + j65*TERP2OOH + .8*j69*TERPROD2 + r156*HCOOH*OH + + r164*CO*OH + 2*r180*CH3CO3*CH3CO3 + .9*r181*CH3CO3*CH3O2 + .49*r182*CH3CO3*HO2 + r183*CH3CO3*NO + + r184*CH3COOH*OH + .5*r185*CH3COOOH*OH + .8*r190*GLYALD*OH + r191*GLYOXAL*OH + .2*r197*C3H6*O3 + + 2*r230*MCO3*CH3CO3 + r231*MCO3*CH3O2 + .45*r232*MCO3*HO2 + 2*r233*MCO3*MCO3 + .5*r240*M*MPAN*OH + + .1*r241*MVK*O3 + r254*ISOPAO2*CH3CO3 + r279*XO2*CH3CO3 + .27*r329*BCARY*O3 + .27*r332*MTERP*O3 + + .5*r339*TERP2O2*CH3O2 + .9*r341*TERP2O2*NO + 1.8*r350*TERPROD2*OH + - j41*CO2 + d(COF2)/dt = j79*CF2CLBR + j80*CF3BR + j82*CFC113 + 2*j83*CFC114 + 2*j84*CFC115 + j85*CFC12 + 2*j98*H2402 + + j101*HCFC142B + j102*HCFC22 + r90*O1D*CF2CLBR + r92*O1D*CFC113 + 2*r93*O1D*CFC114 + + 2*r94*O1D*CFC115 + r95*O1D*CFC12 + r116*O1D*CF3BR + 2*r118*O1D*H2402 + r137*HCFC142B*OH + + r138*HCFC22*OH + r142*O1D*HCFC142B + r143*O1D*HCFC22 + - j96*COF2 - r125*O1D*COF2 + d(COFCL)/dt = j81*CFC11 + j82*CFC113 + j100*HCFC141B + r91*O1D*CFC11 + r92*O1D*CFC113 + r136*HCFC141B*OH + + r141*O1D*HCFC141B + - j97*COFCL - r126*O1D*COFCL + d(CRESOL)/dt = .18*r318*TOLUENE*OH + - r298*OH*CRESOL + d(DMS)/dt = - r351*NO3*DMS - r352*OH*DMS - r366*OH*DMS + d(dst_a1)/dt = 0 + d(dst_a2)/dt = 0 + d(dst_a3)/dt = 0 + d(E90)/dt = - r1*E90 + d(EOOH)/dt = r186*EO2*HO2 + - j42*EOOH + d(F)/dt = j80*CF3BR + j84*CFC115 + 2*j96*COF2 + j97*COFCL + j104*HF + r94*O1D*CFC115 + r116*O1D*CF3BR + + 2*r125*O1D*COF2 + r126*O1D*COFCL + - r121*CH4*F - r122*H2*F - r123*H2O*F - r124*HNO3*F + d(GLYALD)/dt = .33*j45*HONITR + .25*j65*TERP2OOH + r189*EO*O2 + .53*r221*MACRO2*CH3CO3 + .26*r222*MACRO2*CH3O2 + + .53*r224*MACRO2*NO3 + .53*r225*MACRO2*NO + .05*r263*ISOPBO2*NO + .05*r264*ISOPBO2*NO3 + + .7*r265*ISOPNITA*OH + .5*r266*ISOPNITB*OH + r277*NC4CH2OH*OH + .25*r279*XO2*CH3CO3 + + .1*r280*XO2*CH3O2 + .25*r282*XO2*NO + .25*r283*XO2*NO3 + .125*r339*TERP2O2*CH3O2 + + .225*r341*TERP2O2*NO + - j43*GLYALD - r190*OH*GLYALD + d(GLYOXAL)/dt = j21*BENZOOH + .13*j23*BIGALD + .7*j61*PHENOOH + .6*j70*TOLOOH + .34*j72*XYLENOOH + + .17*j73*XYLOLOOH + .65*r166*M*C2H2*OH + .2*r190*GLYALD*OH + .05*r263*ISOPBO2*NO + + .05*r264*ISOPBO2*NO3 + r278*NC4CHO*OH + .25*r279*XO2*CH3CO3 + .1*r280*XO2*CH3O2 + + .25*r282*XO2*NO + .25*r283*XO2*NO3 + r289*BENZO2*NO + .16*r302*MALO2*HO2 + .4*r303*MALO2*NO + + .07*r305*MDIALO2*HO2 + .17*r306*MDIALO2*NO + .7*r309*PHENO2*NO + .6*r316*TOLO2*NO + + .34*r322*XYLENO2*NO + .17*r325*XYLOLO2*NO + - j44*GLYOXAL - r407*GLYOXAL - r191*OH*GLYOXAL + d(H)/dt = j2*H2O + 2*j3*H2O + 2*j33*CH2O + j38*CH3OOH + .33*j39*CH4 + j40*CH4 + j99*HBR + j103*HCL + + j104*HF + r4*O1D*H2 + r22*H2*O + r31*OH*H2 + r34*OH*O + r52*N*OH + r66*CL*H2 + r97*O1D*HCL + + r120*O1D*HBR + r122*F*H2 + r147*CH2O*OH + r161*O1D*CH4 + r354*OCS*OH + r360*S*OH + r365*SO*OH + - r24*HO2*H - r25*HO2*H - r26*HO2*H - r27*M*O2*H - r30*O3*H + d(H2)/dt = j1*H2O + j32*CH2O + 1.4400001*j39*CH4 + r24*H*HO2 + r162*O1D*CH4 + - r4*O1D*H2 - r22*O*H2 - r31*OH*H2 - r66*CL*H2 - r122*F*H2 + d(H2402)/dt = - j98*H2402 - r118*O1D*H2402 + d(H2O2)/dt = r37*M*OH*OH + r38*HO2*HO2 + - j4*H2O2 - r23*O*H2O2 - r32*OH*H2O2 - r67*CL*H2O2 + d(H2SO4)/dt = r367*SO3*H2O + - j109*H2SO4 + d(HBR)/dt = r100*BR*CH2O + r101*BR*HO2 + - j99*HBR - r113*O*HBR - r114*OH*HBR - r119*O1D*HBR - r120*O1D*HBR + d(HCFC141B)/dt = - j100*HCFC141B - r136*OH*HCFC141B - r141*O1D*HCFC141B + d(HCFC142B)/dt = - j101*HCFC142B - r137*OH*HCFC142B - r142*O1D*HCFC142B + d(HCFC22)/dt = - j102*HCFC22 - r138*OH*HCFC22 - r143*O1D*HCFC22 + d(HCL)/dt = r64*CL*CH2O + r65*CL*CH4 + r66*CL*H2 + r67*CL*H2O2 + r68*CL*HO2 + r83*CLO*OH + r86*HOCL*CL + + r127*CH2BR2*CL + r129*CH3BR*CL + 2*r132*CH3CL*CL + r134*CHBR3*CL + r175*C2H6*CL + - j103*HCL - r84*O*HCL - r85*OH*HCL - r96*O1D*HCL - r97*O1D*HCL - r412*HOCL*HCL + - r417*CLONO2*HCL - r418*HOCL*HCL - r419*HOBR*HCL - r422*CLONO2*HCL - r423*HOCL*HCL + - r424*HOBR*HCL - r427*CLONO2*HCL + d(HCN)/dt = - r155*M*OH*HCN - r163*O1D*HCN + d(HCOOH)/dt = r157*HOCH2OO*HO2 + r159*HOCH2OO*NO + .35*r166*M*C2H2*OH + .37*r168*C2H4*O3 + .12*r197*C3H6*O3 + + .33*r227*MACR*O3 + .12*r241*MVK*O3 + .11*r274*ISOP*O3 + .05*r329*BCARY*O3 + .05*r332*MTERP*O3 + - r156*OH*HCOOH + d(HF)/dt = r121*F*CH4 + r122*F*H2 + r123*F*H2O + r124*F*HNO3 + - j104*HF + d(HNO3)/dt = r370*HONITR + r371*ISOPNITA + r372*ISOPNITB + 2*r373*N2O5 + r374*NC4CH2OH + r375*NC4CHO + + .5*r377*NO2 + r378*NO3 + r379*NTERPOOH + r380*ONITR + r381*TERPNIT + 2*r411*N2O5 + + r413*BRONO2 + 2*r414*N2O5 + r415*CLONO2 + r416*BRONO2 + r420*CLONO2 + r421*BRONO2 + + 2*r425*N2O5 + r426*CLONO2 + r60*M*NO2*OH + r145*CH2O*NO3 + r177*CH3CHO*NO3 + + r203*CH3COCHO*NO3 + r351*DMS*NO3 + r417*CLONO2*HCL + r422*CLONO2*HCL + r427*CLONO2*HCL + - j9*HNO3 - r61*OH*HNO3 - r124*F*HNO3 + d(HO2NO2)/dt = r58*M*NO2*HO2 + - j10*HO2NO2 - j11*HO2NO2 - r62*M*HO2NO2 - r39*OH*HO2NO2 + d(HOBR)/dt = r413*BRONO2 + r416*BRONO2 + r421*BRONO2 + r107*BRO*HO2 + - j105*HOBR - r115*O*HOBR - r419*HCL*HOBR - r424*HCL*HOBR + d(HOCL)/dt = r415*CLONO2 + r420*CLONO2 + r426*CLONO2 + r75*CLO*HO2 + r80*CLONO2*OH + - j106*HOCL - r86*CL*HOCL - r87*O*HOCL - r88*OH*HOCL - r412*HCL*HOCL - r418*HCL*HOCL + - r423*HCL*HOCL + d(HONITR)/dt = r219*ENEO2*NO + r226*MACRO2*NO + .3*r265*ISOPNITA*OH + .5*r266*ISOPNITB*OH + - j45*HONITR - r370*HONITR - r220*OH*HONITR + d(HPALD)/dt = r262*ISOPBO2 + - j46*HPALD - r251*OH*HPALD + d(HYAC)/dt = .17*j45*HONITR + .5*r209*POOH*OH + .2*r210*RO2*CH3O2 + .22*r221*MACRO2*CH3CO3 + + .23*r222*MACRO2*CH3O2 + .22*r224*MACRO2*NO3 + .22*r225*MACRO2*NO + .5*r240*M*MPAN*OH + + .05*r263*ISOPBO2*NO + .05*r264*ISOPBO2*NO3 + .7*r265*ISOPNITA*OH + .5*r266*ISOPNITB*OH + + .25*r279*XO2*CH3CO3 + .1*r280*XO2*CH3O2 + .25*r282*XO2*NO + .25*r283*XO2*NO3 + - j47*HYAC - r205*OH*HYAC + d(HYDRALD)/dt = r259*ISOPBO2*CH3CO3 + .75*r260*ISOPBO2*CH3O2 + .87*r263*ISOPBO2*NO + .95*r264*ISOPBO2*NO3 + - r252*OH*HYDRALD + d(IEPOX)/dt = .6*r276*ISOPOOH*OH + - r253*OH*IEPOX + d(ISOP)/dt = - r267*NO3*ISOP - r274*O3*ISOP - r275*OH*ISOP + d(ISOPNITA)/dt = .08*r257*ISOPAO2*NO + - r371*ISOPNITA - r265*OH*ISOPNITA + d(ISOPNITB)/dt = .08*r263*ISOPBO2*NO + - r372*ISOPNITB - r266*OH*ISOPNITB + d(ISOPNO3)/dt = r267*ISOP*NO3 + - r268*CH3CO3*ISOPNO3 - r269*CH3O2*ISOPNO3 - r270*HO2*ISOPNO3 - r271*NO*ISOPNO3 + - r272*NO3*ISOPNO3 + d(ISOPNOOH)/dt = r270*ISOPNO3*HO2 + - j48*ISOPNOOH - r273*OH*ISOPNOOH + d(ISOPOOH)/dt = j48*ISOPNOOH + r256*ISOPAO2*HO2 + r261*ISOPBO2*HO2 + - j49*ISOPOOH - r276*OH*ISOPOOH + d(IVOC)/dt = - r397*OH*IVOC + d(MACR)/dt = .3*j49*ISOPOOH + .39*r254*ISOPAO2*CH3CO3 + .31*r255*ISOPAO2*CH3O2 + .36*r257*ISOPAO2*NO + + .4*r258*ISOPAO2*NO3 + .3*r274*ISOP*O3 + - j50*MACR - j51*MACR - r227*O3*MACR - r228*OH*MACR + d(MACROOH)/dt = r223*MACRO2*HO2 + - r229*OH*MACROOH + d(MEK)/dt = .8*j19*ALKNIT + .8*j20*ALKOOH + .8*r247*ALKO2*NO + - j52*MEK - r238*OH*MEK + d(MEKOOH)/dt = .8*r236*MEKO2*HO2 + - j53*MEKOOH - r239*OH*MEKOOH + d(MPAN)/dt = r243*M*MCO3*NO2 + - j54*MPAN - r244*M*MPAN - r240*M*OH*MPAN + d(MTERP)/dt = - r331*NO3*MTERP - r332*O3*MTERP - r333*OH*MTERP + d(MVK)/dt = .7*j49*ISOPOOH + .61*r254*ISOPAO2*CH3CO3 + .44*r255*ISOPAO2*CH3O2 + .56*r257*ISOPAO2*NO + + .6*r258*ISOPAO2*NO3 + .2*r274*ISOP*O3 + - j55*MVK - r241*O3*MVK - r242*OH*MVK + d(N)/dt = j15*NO + - r40*NO*N - r41*NO2*N - r42*NO2*N - r43*NO2*N - r44*O2*N - r52*OH*N + d(N2O)/dt = r41*N*NO2 + - j12*N2O - r56*O1D*N2O - r57*O1D*N2O + d(N2O5)/dt = r59*M*NO2*NO3 + - j13*N2O5 - j14*N2O5 - r63*M*N2O5 - r373*N2O5 - r411*N2O5 - r414*N2O5 - r425*N2O5 + d(NC4CH2OH)/dt = .2*r269*ISOPNO3*CH3O2 + - r374*NC4CH2OH - r277*OH*NC4CH2OH + d(NC4CHO)/dt = r268*ISOPNO3*CH3CO3 + .8*r269*ISOPNO3*CH3O2 + r271*ISOPNO3*NO + r272*ISOPNO3*NO3 + - j56*NC4CHO - r375*NC4CHO - r278*OH*NC4CHO + d(ncl_a1)/dt = 0 + d(ncl_a2)/dt = 0 + d(ncl_a3)/dt = 0 + d(NH3)/dt = - r368*OH*NH3 + d(NH4)/dt = - r376*NH4 + d(NH_5)/dt = - r429*NH_5 + d(NH_50)/dt = - r428*NH_50 + d(NO)/dt = j14*N2O5 + j16*NO2 + j17*NO3 + .5*r377*NO2 + 2*r42*N*NO2 + r44*N*O2 + r45*NO2*O + r52*N*OH + + 2*r56*O1D*N2O + r361*SO*NO2 + - j15*NO - r40*N*NO - r49*NO3*NO - r53*HO2*NO - r54*O3*NO - r55*M*O*NO - r76*CLO*NO + - r108*BRO*NO - r151*CH3O2*NO - r159*HOCH2OO*NO - r172*C2H5O2*NO - r183*CH3CO3*NO - r187*EO2*NO + - r200*C3H7O2*NO - r208*PO2*NO - r212*RO2*NO - r218*ENEO2*NO - r219*ENEO2*NO - r225*MACRO2*NO + - r226*MACRO2*NO - r234*MCO3*NO - r237*MEKO2*NO - r247*ALKO2*NO - r248*ALKO2*NO - r257*ISOPAO2*NO + - r263*ISOPBO2*NO - r271*ISOPNO3*NO - r282*XO2*NO - r286*ACBZO2*NO - r289*BENZO2*NO + - r294*BZOO*NO - r296*C6H5O2*NO - r300*DICARBO2*NO - r303*MALO2*NO - r306*MDIALO2*NO + - r309*PHENO2*NO - r316*TOLO2*NO - r322*XYLENO2*NO - r325*XYLOLO2*NO - r336*NTERPO2*NO + - r341*TERP2O2*NO - r346*TERPO2*NO + d(NO2)/dt = j9*HNO3 + j11*HO2NO2 + j13*N2O5 + j18*NO3 + j19*ALKNIT + j45*HONITR + j48*ISOPNOOH + j54*MPAN + + j56*NC4CHO + j57*NOA + j58*NTERPOOH + j59*ONITR + .6*j60*PAN + j66*TERPNIT + j76*BRONO2 + + j95*CLONO2 + r62*M*HO2NO2 + r63*M*N2O5 + r195*M*PAN + r244*M*MPAN + r319*M*PBZNIT + + r39*HO2NO2*OH + r48*NO3*HO2 + 2*r49*NO3*NO + r50*NO3*O + r51*NO3*OH + r53*NO*HO2 + r54*NO*O3 + + r55*M*NO*O + r76*CLO*NO + r108*BRO*NO + r151*CH3O2*NO + r159*HOCH2OO*NO + r172*C2H5O2*NO + + r183*CH3CO3*NO + r187*EO2*NO + r200*C3H7O2*NO + r206*NOA*OH + r208*PO2*NO + r212*RO2*NO + + r216*BIGENE*NO3 + r218*ENEO2*NO + r224*MACRO2*NO3 + r225*MACRO2*NO + r234*MCO3*NO + + r235*MCO3*NO3 + r237*MEKO2*NO + r245*ALKNIT*OH + r247*ALKO2*NO + .92*r257*ISOPAO2*NO + + r258*ISOPAO2*NO3 + .92*r263*ISOPBO2*NO + r264*ISOPBO2*NO3 + .7*r265*ISOPNITA*OH + + r271*ISOPNO3*NO + r272*ISOPNO3*NO3 + r282*XO2*NO + r283*XO2*NO3 + r286*ACBZO2*NO + + r289*BENZO2*NO + r294*BZOO*NO + r296*C6H5O2*NO + r300*DICARBO2*NO + r303*MALO2*NO + + r306*MDIALO2*NO + r309*PHENO2*NO + r316*TOLO2*NO + r322*XYLENO2*NO + r325*XYLOLO2*NO + + .5*r334*NTERPO2*CH3O2 + 1.6*r336*NTERPO2*NO + 2*r337*NTERPO2*NO3 + .9*r341*TERP2O2*NO + + r343*TERPNIT*OH + .8*r346*TERPO2*NO + - j16*NO2 - r377*NO2 - r41*N*NO2 - r42*N*NO2 - r43*N*NO2 - r45*O*NO2 - r46*O3*NO2 + - r47*M*O*NO2 - r58*M*HO2*NO2 - r59*M*NO3*NO2 - r60*M*OH*NO2 - r78*M*CLO*NO2 - r109*M*BRO*NO2 + - r194*M*CH3CO3*NO2 - r243*M*MCO3*NO2 - r301*M*DICARBO2*NO2 - r304*M*MALO2*NO2 + - r307*M*MDIALO2*NO2 - r311*PHENO*NO2 - r314*M*ACBZO2*NO2 - r361*SO*NO2 + d(NO3)/dt = j10*HO2NO2 + j13*N2O5 + j14*N2O5 + .4*j60*PAN + j77*BRONO2 + j94*CLONO2 + r63*M*N2O5 + + r46*NO2*O3 + r47*M*NO2*O + r61*HNO3*OH + r77*CLONO2*CL + r79*CLONO2*O + r80*CLONO2*OH + + r110*BRONO2*O + r124*F*HNO3 + r192*PAN*OH + .5*r240*M*MPAN*OH + - j17*NO3 - j18*NO3 - r378*NO3 - r48*HO2*NO3 - r49*NO*NO3 - r50*O*NO3 - r51*OH*NO3 + - r59*M*NO2*NO3 - r145*CH2O*NO3 - r177*CH3CHO*NO3 - r196*C3H6*NO3 - r203*CH3COCHO*NO3 + - r216*BIGENE*NO3 - r224*MACRO2*NO3 - r235*MCO3*NO3 - r258*ISOPAO2*NO3 - r264*ISOPBO2*NO3 + - r267*ISOP*NO3 - r272*ISOPNO3*NO3 - r283*XO2*NO3 - r328*BCARY*NO3 - r331*MTERP*NO3 + - r337*NTERPO2*NO3 - r348*TERPROD1*NO3 - r351*DMS*NO3 + d(NOA)/dt = r196*C3H6*NO3 + .5*r266*ISOPNITB*OH + r273*ISOPNOOH*OH + r277*NC4CH2OH*OH + r278*NC4CHO*OH + - j57*NOA - r206*OH*NOA + d(NTERPOOH)/dt = r335*NTERPO2*HO2 + - j58*NTERPOOH - r379*NTERPOOH - r338*OH*NTERPOOH + d(num_a1)/dt = 0 + d(num_a2)/dt = 0 + d(num_a3)/dt = 0 + d(num_a4)/dt = 0 + d(num_a5)/dt = 0 + d(O)/dt = j3*H2O + j5*O2 + 2*j6*O2 + j8*O3 + j14*N2O5 + j15*NO + j16*NO2 + j18*NO3 + .18*j39*CH4 + + j41*CO2 + j75*BRO + j93*CLO + j107*OCLO + j111*SO + j112*SO2 + j113*SO3 + r6*N2*O1D + + r7*O1D*O2 + r8*O1D*O2 + 2*r10*O1D*O3 + r26*H*HO2 + r36*OH*OH + r40*N*NO + r41*N*NO2 + r44*N*O2 + + r355*S*O2 + r362*SO*O2 + - r19*O3*O - 2*r20*M*O*O - r21*M*O2*O - r22*H2*O - r23*H2O2*O - r28*HO2*O - r34*OH*O - r45*NO2*O + - r47*M*NO2*O - r50*NO3*O - r55*M*NO*O - r79*CLONO2*O - r81*CLO*O - r84*HCL*O - r87*HOCL*O + - r110*BRONO2*O - r111*BRO*O - r113*HBR*O - r115*HOBR*O - r146*CH2O*O - r353*OCS*O + d(O2)/dt = j8*O3 + j17*NO3 + r2*O2_1D + r3*O2_1S + r11*N2*O2_1D + r9*O1D*O3 + r9*O1D*O3 + r10*O1D*O3 + + r12*O2_1D*O + 2*r13*O2_1D*O2 + 2*r19*O*O3 + r20*M*O*O + r24*H*HO2 + r28*HO2*O + 2*r29*HO2*O3 + + r30*H*O3 + r33*OH*HO2 + r34*OH*O + r35*OH*O3 + r38*HO2*HO2 + r39*HO2NO2*OH + r43*N*NO2 + + r45*NO2*O + r46*NO2*O3 + r48*NO3*HO2 + r50*NO3*O + r54*NO*O3 + r57*O1D*N2O + r68*CL*HO2 + + r70*CL*O3 + r72*CLO*CLO + r73*CLO*CLO + r75*CLO*HO2 + r81*CLO*O + r83*CLO*OH + r101*BR*HO2 + + r102*BR*O3 + r103*BRO*BRO + r105*BRO*CLO + r106*BRO*CLO + r107*BRO*HO2 + r111*BRO*O + + r150*CH3O2*HO2 + r171*C2H5O2*HO2 + r199*C3H7O2*HO2 + r207*PO2*HO2 + r357*S*O3 + r363*SO*O3 + - j5*O2 - j6*O2 - r7*O1D*O2 - r13*O2_1D*O2 - r21*M*O*O2 - r27*M*H*O2 - r44*N*O2 - r189*EO*O2 + - r355*S*O2 - r362*SO*O2 + d(O2_1D)/dt = j7*O3 + r15*N2*O2_1S + r14*O2_1S*CO2 + r16*O2_1S*O + r17*O2_1S*O2 + r18*O2_1S*O3 + - r2*O2_1D - r11*N2*O2_1D - r12*O*O2_1D - r13*O2*O2_1D + d(O2_1S)/dt = r7*O1D*O2 + - r3*O2_1S - r15*N2*O2_1S - r14*CO2*O2_1S - r16*O*O2_1S - r17*O2*O2_1S - r18*O3*O2_1S + d(O3)/dt = r21*M*O*O2 + .15*r182*CH3CO3*HO2 + .15*r232*MCO3*HO2 + - j7*O3 - j8*O3 - r9*O1D*O3 - r10*O1D*O3 - r19*O*O3 - r29*HO2*O3 - r30*H*O3 - r35*OH*O3 + - r46*NO2*O3 - r54*NO*O3 - r70*CL*O3 - r102*BR*O3 - r168*C2H4*O3 - r197*C3H6*O3 - r227*MACR*O3 + - r241*MVK*O3 - r274*ISOP*O3 - r312*PHENO*O3 - r329*BCARY*O3 - r332*MTERP*O3 - r357*S*O3 + - r363*SO*O3 + d(O3S)/dt = 0 + d(OCLO)/dt = r74*CLO*CLO + r104*BRO*CLO + - j107*OCLO - r364*SO*OCLO + d(OCS)/dt = - j110*OCS - r353*O*OCS - r354*OH*OCS + d(ONITR)/dt = r220*HONITR*OH + .1*r341*TERP2O2*NO + - j59*ONITR - r380*ONITR + d(PAN)/dt = r194*M*CH3CO3*NO2 + - j60*PAN - r195*M*PAN - r192*OH*PAN + d(PBZNIT)/dt = r314*M*ACBZO2*NO2 + - r319*M*PBZNIT + d(PHENO)/dt = j31*C6H5OOH + r296*C6H5O2*NO + .07*r298*CRESOL*OH + .06*r310*PHENOL*OH + .07*r326*XYLOL*OH + - r311*NO2*PHENO - r312*O3*PHENO + d(PHENOL)/dt = .53*r287*BENZENE*OH + - r310*OH*PHENOL + d(PHENOOH)/dt = r308*PHENO2*HO2 + - j61*PHENOOH - r313*OH*PHENOOH + d(pom_a1)/dt = 0 + d(pom_a4)/dt = 0 + d(POOH)/dt = r207*PO2*HO2 + - j62*POOH - r209*OH*POOH + d(ROOH)/dt = .85*r211*RO2*HO2 + - j63*ROOH - r213*OH*ROOH + d(S)/dt = j110*OCS + j111*SO + - r355*O2*S - r357*O3*S - r360*OH*S + d(SF6)/dt = - j108*SF6 + d(SO)/dt = j112*SO2 + r353*OCS*O + r355*S*O2 + r357*S*O3 + r360*S*OH + - j111*SO - r358*BRO*SO - r359*CLO*SO - r361*NO2*SO - r362*O2*SO - r363*O3*SO - r364*OCLO*SO + - r365*OH*SO + d(SO2)/dt = j113*SO3 + r351*DMS*NO3 + r352*DMS*OH + r354*OCS*OH + r358*SO*BRO + r359*SO*CLO + r361*SO*NO2 + + r362*SO*O2 + r363*SO*O3 + r364*SO*OCLO + r365*SO*OH + .5*r366*DMS*OH + - j112*SO2 - r356*M*OH*SO2 + d(SO3)/dt = j109*H2SO4 + r356*M*SO2*OH + - j113*SO3 - r367*H2O*SO3 + d(so4_a1)/dt = 0 + d(so4_a2)/dt = 0 + d(so4_a3)/dt = 0 + d(so4_a5)/dt = 0 + d(soa1_a1)/dt = - j114*soa1_a1 + d(soa1_a2)/dt = - j115*soa1_a2 + d(soa2_a1)/dt = - j116*soa2_a1 + d(soa2_a2)/dt = - j117*soa2_a2 + d(soa3_a1)/dt = - j118*soa3_a1 + d(soa3_a2)/dt = - j119*soa3_a2 + d(soa4_a1)/dt = - j120*soa4_a1 + d(soa4_a2)/dt = - j121*soa4_a2 + d(soa5_a1)/dt = - j122*soa5_a1 + d(soa5_a2)/dt = - j123*soa5_a2 + d(SOAG0)/dt = r407*GLYOXAL + .2202*r383*BCARYO2VBS*HO2 + .1279*r384*BCARYO2VBS*NO + .2202*r385*BCARY*O3 + + .0023*r388*BENZO2VBS*HO2 + .0097*r389*BENZO2VBS*NO + .0031*r391*ISOPO2VBS*HO2 + + .0003*r392*ISOPO2VBS*NO + .2381*r395*IVOCO2VBS*HO2 + .1056*r396*IVOCO2VBS*NO + + .0508*r399*MTERPO2VBS*HO2 + .0245*r400*MTERPO2VBS*NO + .0508*r401*MTERP*O3 + + .5931*r403*SVOC*OH + .1364*r405*TOLUO2VBS*HO2 + .0154*r406*TOLUO2VBS*NO + + .1677*r409*XYLEO2VBS*HO2 + .0063*r410*XYLEO2VBS*NO + d(SOAG1)/dt = .2067*r383*BCARYO2VBS*HO2 + .1792*r384*BCARYO2VBS*NO + .2067*r385*BCARY*O3 + + .0008*r388*BENZO2VBS*HO2 + .0034*r389*BENZO2VBS*NO + .0035*r391*ISOPO2VBS*HO2 + + .0003*r392*ISOPO2VBS*NO + .1308*r395*IVOCO2VBS*HO2 + .1026*r396*IVOCO2VBS*NO + + .1149*r399*MTERPO2VBS*HO2 + .0082*r400*MTERPO2VBS*NO + .1149*r401*MTERP*O3 + + .1534*r403*SVOC*OH + .0101*r405*TOLUO2VBS*HO2 + .0452*r406*TOLUO2VBS*NO + + .0174*r409*XYLEO2VBS*HO2 + .0237*r410*XYLEO2VBS*NO + d(SOAG2)/dt = .0653*r383*BCARYO2VBS*HO2 + .0676*r384*BCARYO2VBS*NO + .0653*r385*BCARY*O3 + + .0843*r388*BENZO2VBS*HO2 + .1579*r389*BENZO2VBS*NO + .0003*r391*ISOPO2VBS*HO2 + + .0073*r392*ISOPO2VBS*NO + .0348*r395*IVOCO2VBS*HO2 + .0521*r396*IVOCO2VBS*NO + + .0348*r399*MTERPO2VBS*HO2 + .0772*r400*MTERPO2VBS*NO + .0348*r401*MTERP*O3 + + .0459*r403*SVOC*OH + .0763*r405*TOLUO2VBS*HO2 + .0966*r406*TOLUO2VBS*NO + + .086*r409*XYLEO2VBS*HO2 + .0025*r410*XYLEO2VBS*NO + d(SOAG3)/dt = .17493*r382*BCARY*NO3 + .1284*r383*BCARYO2VBS*HO2 + .079*r384*BCARYO2VBS*NO + .1284*r385*BCARY*O3 + + .0443*r388*BENZO2VBS*HO2 + .0059*r389*BENZO2VBS*NO + .059024*r390*ISOP*NO3 + + .0271*r391*ISOPO2VBS*HO2 + .0057*r392*ISOPO2VBS*NO + .0033*r393*ISOP*O3 + + .0076*r395*IVOCO2VBS*HO2 + .0143*r396*IVOCO2VBS*NO + .17493*r398*MTERP*NO3 + + .0554*r399*MTERPO2VBS*HO2 + .0332*r400*MTERPO2VBS*NO + .0554*r401*MTERP*O3 + + .0085*r403*SVOC*OH + .2157*r405*TOLUO2VBS*HO2 + .0073*r406*TOLUO2VBS*NO + + .0512*r409*XYLEO2VBS*HO2 + .011*r410*XYLEO2VBS*NO + d(SOAG4)/dt = .59019*r382*BCARY*NO3 + .114*r383*BCARYO2VBS*HO2 + .1254*r384*BCARYO2VBS*NO + .114*r385*BCARY*O3 + + .1621*r388*BENZO2VBS*HO2 + .0536*r389*BENZO2VBS*NO + .025024*r390*ISOP*NO3 + + .0474*r391*ISOPO2VBS*HO2 + .0623*r392*ISOPO2VBS*NO + .0113*r395*IVOCO2VBS*HO2 + + .0166*r396*IVOCO2VBS*NO + .59019*r398*MTERP*NO3 + .1278*r399*MTERPO2VBS*HO2 + + .13*r400*MTERPO2VBS*NO + .1278*r401*MTERP*O3 + .0128*r403*SVOC*OH + .0738*r405*TOLUO2VBS*HO2 + + .238*r406*TOLUO2VBS*NO + .1598*r409*XYLEO2VBS*HO2 + .1185*r410*XYLEO2VBS*NO + d(ST80_25)/dt = - r430*ST80_25 + d(SVOC)/dt = - r403*OH*SVOC + d(TEPOMUC)/dt = .1*r318*TOLUENE*OH + .23*r320*XYLENES*OH + - j64*TEPOMUC + d(TERP2OOH)/dt = r340*TERP2O2*HO2 + - j65*TERP2OOH - r342*OH*TERP2OOH + d(TERPNIT)/dt = .5*r334*NTERPO2*CH3O2 + .2*r336*NTERPO2*NO + .2*r346*TERPO2*NO + - j66*TERPNIT - r381*TERPNIT - r343*OH*TERPNIT + d(TERPOOH)/dt = r345*TERPO2*HO2 + - j67*TERPOOH - r347*OH*TERPOOH + d(TERPROD1)/dt = j58*NTERPOOH + j66*TERPNIT + j67*TERPOOH + .33*r329*BCARY*O3 + .33*r332*MTERP*O3 + + .5*r334*NTERPO2*CH3O2 + .8*r336*NTERPO2*NO + r337*NTERPO2*NO3 + r343*TERPNIT*OH + + r344*TERPO2*CH3O2 + .8*r346*TERPO2*NO + - j68*TERPROD1 - r348*NO3*TERPROD1 - r349*OH*TERPROD1 + d(TERPROD2)/dt = j65*TERP2OOH + j68*TERPROD1 + .3*r329*BCARY*O3 + .3*r332*MTERP*O3 + r339*TERP2O2*CH3O2 + + .9*r341*TERP2O2*NO + - j69*TERPROD2 - r350*OH*TERPROD2 + d(TOLOOH)/dt = r315*TOLO2*HO2 + - j70*TOLOOH - r317*OH*TOLOOH + d(TOLUENE)/dt = - r318*OH*TOLUENE + d(XOOH)/dt = r281*XO2*HO2 + - j71*XOOH - r284*OH*XOOH + d(XYLENES)/dt = - r320*OH*XYLENES + d(XYLENOOH)/dt = r321*XYLENO2*HO2 + - j72*XYLENOOH - r323*OH*XYLENOOH + d(XYLOL)/dt = .15*r320*XYLENES*OH + - r326*OH*XYLOL + d(XYLOLOOH)/dt = r324*XYLOLO2*HO2 + - j73*XYLOLOOH - r327*OH*XYLOLOOH + d(NHDEP)/dt = r376*NH4 + r368*NH3*OH + d(NDEP)/dt = .5*r240*M*MPAN*OH + r301*M*DICARBO2*NO2 + r304*M*MALO2*NO2 + r307*M*MDIALO2*NO2 + r311*PHENO*NO2 + + .2*r336*NTERPO2*NO + .5*r348*TERPROD1*NO3 + d(ACBZO2)/dt = r319*M*PBZNIT + r291*BZALD*OH + - r285*HO2*ACBZO2 - r286*NO*ACBZO2 - r314*M*NO2*ACBZO2 + d(ALKO2)/dt = r249*ALKOOH*OH + r250*BIGALK*OH + - r246*HO2*ALKO2 - r247*NO*ALKO2 - r248*NO*ALKO2 + d(BCARYO2VBS)/dt = r386*BCARY*OH + - r383*HO2*BCARYO2VBS - r384*NO*BCARYO2VBS + d(BENZO2)/dt = .35*r287*BENZENE*OH + r290*BENZOOH*OH + - r288*HO2*BENZO2 - r289*NO*BENZO2 + d(BENZO2VBS)/dt = r387*BENZENE*OH + - r388*HO2*BENZO2VBS - r389*NO*BENZO2VBS + d(BZOO)/dt = r293*BZOOH*OH + .07*r318*TOLUENE*OH + .06*r320*XYLENES*OH + - r292*HO2*BZOO - r294*NO*BZOO + d(C2H5O2)/dt = j52*MEK + .5*r174*C2H5OOH*OH + r175*C2H6*CL + r176*C2H6*OH + - 2*r169*C2H5O2*C2H5O2 - r170*CH3O2*C2H5O2 - r171*HO2*C2H5O2 - r172*NO*C2H5O2 + d(C3H7O2)/dt = r201*C3H7OOH*OH + r202*C3H8*OH + - r198*CH3O2*C3H7O2 - r199*HO2*C3H7O2 - r200*NO*C3H7O2 + d(C6H5O2)/dt = .4*r285*ACBZO2*HO2 + r286*ACBZO2*NO + r297*C6H5OOH*OH + r312*PHENO*O3 + - r295*HO2*C6H5O2 - r296*NO*C6H5O2 + d(CH3CO3)/dt = .13*j23*BIGALD + j27*BIGALD4 + j35*CH3COCH3 + j36*CH3COCHO + .33*j45*HONITR + j47*HYAC + + 1.34*j50*MACR + j52*MEK + j53*MEKOOH + .3*j55*MVK + j57*NOA + .6*j60*PAN + j63*ROOH + + .5*j64*TEPOMUC + .65*j69*TERPROD2 + r195*M*PAN + r177*CH3CHO*NO3 + r178*CH3CHO*OH + + .5*r185*CH3COOOH*OH + r203*CH3COCHO*NO3 + r204*CH3COCHO*OH + .3*r210*RO2*CH3O2 + + .15*r211*RO2*HO2 + r212*RO2*NO + .53*r221*MACRO2*CH3CO3 + .26*r222*MACRO2*CH3O2 + + .53*r224*MACRO2*NO3 + .53*r225*MACRO2*NO + .1*r227*MACR*O3 + r231*MCO3*CH3O2 + + .45*r232*MCO3*HO2 + 2*r233*MCO3*MCO3 + r234*MCO3*NO + r235*MCO3*NO3 + .2*r236*MEKO2*HO2 + + r237*MEKO2*NO + .28*r241*MVK*O3 + .08*r274*ISOP*O3 + .06*r329*BCARY*O3 + .06*r332*MTERP*O3 + + .65*r350*TERPROD2*OH + - 2*r180*CH3CO3*CH3CO3 - r181*CH3O2*CH3CO3 - r182*HO2*CH3CO3 - r183*NO*CH3CO3 + - r194*M*NO2*CH3CO3 - r221*MACRO2*CH3CO3 - r254*ISOPAO2*CH3CO3 - r259*ISOPBO2*CH3CO3 + - r268*ISOPNO3*CH3CO3 - r279*XO2*CH3CO3 + d(CH3O2)/dt = j34*CH3CHO + j35*CH3COCH3 + j37*CH3COOOH + j40*CH4 + .3*j55*MVK + .4*j60*PAN + j87*CH3BR + + j89*CH3CL + r65*CL*CH4 + r121*F*CH4 + .7*r153*CH3OOH*OH + r154*CH4*OH + r160*O1D*CH4 + + 2*r180*CH3CO3*CH3CO3 + .9*r181*CH3CO3*CH3O2 + .49*r182*CH3CO3*HO2 + r183*CH3CO3*NO + + r184*CH3COOH*OH + .28*r197*C3H6*O3 + r221*MACRO2*CH3CO3 + r230*MCO3*CH3CO3 + + r254*ISOPAO2*CH3CO3 + r259*ISOPBO2*CH3CO3 + r268*ISOPNO3*CH3CO3 + .05*r274*ISOP*O3 + + r279*XO2*CH3CO3 + .33*r299*DICARBO2*HO2 + .83*r300*DICARBO2*NO + .07*r305*MDIALO2*HO2 + + .17*r306*MDIALO2*NO + - r71*CLO*CH3O2 - 2*r148*CH3O2*CH3O2 - 2*r149*CH3O2*CH3O2 - r150*HO2*CH3O2 - r151*NO*CH3O2 + - r170*C2H5O2*CH3O2 - r181*CH3CO3*CH3O2 - r198*C3H7O2*CH3O2 - r210*RO2*CH3O2 + - r222*MACRO2*CH3O2 - r231*MCO3*CH3O2 - r255*ISOPAO2*CH3O2 - r260*ISOPBO2*CH3O2 + - r269*ISOPNO3*CH3O2 - r280*XO2*CH3O2 - r334*NTERPO2*CH3O2 - r339*TERP2O2*CH3O2 + - r344*TERPO2*CH3O2 + d(DICARBO2)/dt = .6*j25*BIGALD2 + - r299*HO2*DICARBO2 - r300*NO*DICARBO2 - r301*M*NO2*DICARBO2 + d(ENEO2)/dt = r217*BIGENE*OH + - r218*NO*ENEO2 - r219*NO*ENEO2 + d(EO)/dt = j42*EOOH + .75*r187*EO2*NO + - r188*EO - r189*O2*EO + d(EO2)/dt = r193*M*C2H4*OH + - r186*HO2*EO2 - r187*NO*EO2 + d(HO2)/dt = j11*HO2NO2 + j19*ALKNIT + .9*j20*ALKOOH + j21*BENZOOH + 1.5*j22*BEPOMUC + .56*j23*BIGALD + + j24*BIGALD1 + .6*j25*BIGALD2 + .6*j26*BIGALD3 + j27*BIGALD4 + j28*BZOOH + j29*C2H5OOH + + j30*C3H7OOH + j34*CH3CHO + j36*CH3COCHO + 2*j43*GLYALD + 2*j44*GLYOXAL + .67*j45*HONITR + + j46*HPALD + j47*HYAC + j48*ISOPNOOH + j49*ISOPOOH + 1.34*j50*MACR + .66*j51*MACR + j56*NC4CHO + + j61*PHENOOH + j62*POOH + j64*TEPOMUC + j65*TERP2OOH + j66*TERPNIT + j67*TERPOOH + + j68*TERPROD1 + 1.2*j69*TERPROD2 + j70*TOLOOH + j72*XYLENOOH + j73*XYLOLOOH + r62*M*HO2NO2 + + r158*HOCH2OO + r188*EO + r262*ISOPBO2 + r23*H2O2*O + r27*M*H*O2 + r32*OH*H2O2 + r35*OH*O3 + + r51*NO3*OH + r64*CL*CH2O + r67*CL*H2O2 + r71*CLO*CH3O2 + r82*CLO*OH + r100*BR*CH2O + + r112*BRO*OH + r129*CH3BR*CL + r130*CH3BR*OH + r132*CH3CL*CL + r133*CH3CL*OH + r145*CH2O*NO3 + + r146*CH2O*O + 2*r148*CH3O2*CH3O2 + r151*CH3O2*NO + r152*CH3OH*OH + r155*M*HCN*OH + + r156*HCOOH*OH + r159*HOCH2OO*NO + r161*O1D*CH4 + r164*CO*OH + .35*r166*M*C2H2*OH + + .13*r168*C2H4*O3 + 1.2*r169*C2H5O2*C2H5O2 + r170*C2H5O2*CH3O2 + r172*C2H5O2*NO + r173*C2H5OH*OH + + r179*CH3CN*OH + .9*r181*CH3CO3*CH3O2 + .25*r187*EO2*NO + r189*EO*O2 + r190*GLYALD*OH + + r191*GLYOXAL*OH + .28*r197*C3H6*O3 + r198*C3H7O2*CH3O2 + r200*C3H7O2*NO + r205*HYAC*OH + + r208*PO2*NO + .3*r210*RO2*CH3O2 + r218*ENEO2*NO + r220*HONITR*OH + .47*r221*MACRO2*CH3CO3 + + .73*r222*MACRO2*CH3O2 + .47*r224*MACRO2*NO3 + .47*r225*MACRO2*NO + .14*r227*MACR*O3 + + .2*r229*MACROOH*OH + r231*MCO3*CH3O2 + .5*r240*M*MPAN*OH + .28*r241*MVK*O3 + r247*ALKO2*NO + + r254*ISOPAO2*CH3CO3 + r255*ISOPAO2*CH3O2 + .92*r257*ISOPAO2*NO + r258*ISOPAO2*NO3 + + r259*ISOPBO2*CH3CO3 + r260*ISOPBO2*CH3O2 + .92*r263*ISOPBO2*NO + r264*ISOPBO2*NO3 + + .3*r265*ISOPNITA*OH + r266*ISOPNITB*OH + r268*ISOPNO3*CH3CO3 + 1.2*r269*ISOPNO3*CH3O2 + + r271*ISOPNO3*NO + r272*ISOPNO3*NO3 + r273*ISOPNOOH*OH + .37*r274*ISOP*O3 + r277*NC4CH2OH*OH + + r278*NC4CHO*OH + r279*XO2*CH3CO3 + .8*r280*XO2*CH3O2 + r282*XO2*NO + r283*XO2*NO3 + + .65*r287*BENZENE*OH + r289*BENZO2*NO + r294*BZOO*NO + .73*r298*CRESOL*OH + + .07*r299*DICARBO2*HO2 + .17*r300*DICARBO2*NO + .16*r302*MALO2*HO2 + .4*r303*MALO2*NO + + .33*r305*MDIALO2*HO2 + .83*r306*MDIALO2*NO + r309*PHENO2*NO + .8*r310*PHENOL*OH + r316*TOLO2*NO + + .28*r318*TOLUENE*OH + .38*r320*XYLENES*OH + r322*XYLENO2*NO + r325*XYLOLO2*NO + + .63*r326*XYLOL*OH + .57*r329*BCARY*O3 + .57*r332*MTERP*O3 + .5*r334*NTERPO2*CH3O2 + + r339*TERP2O2*CH3O2 + .9*r341*TERP2O2*NO + r344*TERPO2*CH3O2 + .8*r346*TERPO2*NO + + .2*r350*TERPROD2*OH + r356*M*SO2*OH + .5*r366*DMS*OH + - r369*HO2 - r24*H*HO2 - r25*H*HO2 - r26*H*HO2 - r28*O*HO2 - r29*O3*HO2 - r33*OH*HO2 + - 2*r38*HO2*HO2 - r48*NO3*HO2 - r53*NO*HO2 - r58*M*NO2*HO2 - r68*CL*HO2 - r69*CL*HO2 + - r75*CLO*HO2 - r101*BR*HO2 - r107*BRO*HO2 - r144*CH2O*HO2 - r150*CH3O2*HO2 - r157*HOCH2OO*HO2 + - r171*C2H5O2*HO2 - r182*CH3CO3*HO2 - r186*EO2*HO2 - r199*C3H7O2*HO2 - r207*PO2*HO2 + - r211*RO2*HO2 - r223*MACRO2*HO2 - r232*MCO3*HO2 - r236*MEKO2*HO2 - r246*ALKO2*HO2 + - r256*ISOPAO2*HO2 - r261*ISOPBO2*HO2 - r270*ISOPNO3*HO2 - r281*XO2*HO2 - r285*ACBZO2*HO2 + - r288*BENZO2*HO2 - r292*BZOO*HO2 - r295*C6H5O2*HO2 - r299*DICARBO2*HO2 - r302*MALO2*HO2 + - r305*MDIALO2*HO2 - r308*PHENO2*HO2 - r315*TOLO2*HO2 - r321*XYLENO2*HO2 - r324*XYLOLO2*HO2 + - r335*NTERPO2*HO2 - r340*TERP2O2*HO2 - r345*TERPO2*HO2 + d(HOCH2OO)/dt = r144*CH2O*HO2 + - r158*HOCH2OO - r157*HO2*HOCH2OO - r159*NO*HOCH2OO + d(ISOPAO2)/dt = .6*r275*ISOP*OH + - r254*CH3CO3*ISOPAO2 - r255*CH3O2*ISOPAO2 - r256*HO2*ISOPAO2 - r257*NO*ISOPAO2 + - r258*NO3*ISOPAO2 + d(ISOPBO2)/dt = .4*r275*ISOP*OH + - r262*ISOPBO2 - r259*CH3CO3*ISOPBO2 - r260*CH3O2*ISOPBO2 - r261*HO2*ISOPBO2 + - r263*NO*ISOPBO2 - r264*NO3*ISOPBO2 + d(ISOPO2VBS)/dt = r394*ISOP*OH + - r391*HO2*ISOPO2VBS - r392*NO*ISOPO2VBS + d(IVOCO2VBS)/dt = r397*IVOC*OH + - r395*HO2*IVOCO2VBS - r396*NO*IVOCO2VBS + d(MACRO2)/dt = .5*r228*MACR*OH + .2*r229*MACROOH*OH + r242*MVK*OH + - r221*CH3CO3*MACRO2 - r222*CH3O2*MACRO2 - r223*HO2*MACRO2 - r224*NO3*MACRO2 - r225*NO*MACRO2 + - r226*NO*MACRO2 + d(MALO2)/dt = .6*j24*BIGALD1 + - r302*HO2*MALO2 - r303*NO*MALO2 - r304*M*NO2*MALO2 + d(MCO3)/dt = .66*j50*MACR + j54*MPAN + r244*M*MPAN + .5*r228*MACR*OH + .5*r229*MACROOH*OH + - r230*CH3CO3*MCO3 - r231*CH3O2*MCO3 - r232*HO2*MCO3 - 2*r233*MCO3*MCO3 - r234*NO*MCO3 + - r235*NO3*MCO3 - r243*M*NO2*MCO3 + d(MDIALO2)/dt = .6*j26*BIGALD3 + - r305*HO2*MDIALO2 - r306*NO*MDIALO2 - r307*M*NO2*MDIALO2 + d(MEKO2)/dt = r238*MEK*OH + r239*MEKOOH*OH + - r236*HO2*MEKO2 - r237*NO*MEKO2 + d(MTERPO2VBS)/dt = r402*MTERP*OH + - r399*HO2*MTERPO2VBS - r400*NO*MTERPO2VBS + d(NTERPO2)/dt = r328*BCARY*NO3 + r331*MTERP*NO3 + r338*NTERPOOH*OH + .5*r348*TERPROD1*NO3 + - r334*CH3O2*NTERPO2 - r335*HO2*NTERPO2 - r336*NO*NTERPO2 - r337*NO3*NTERPO2 + d(O1D)/dt = j1*H2O + j5*O2 + j7*O3 + j12*N2O + - r6*N2*O1D - r4*H2*O1D - r5*H2O*O1D - r7*O2*O1D - r8*O2*O1D - r9*O3*O1D - r10*O3*O1D + - r56*N2O*O1D - r57*N2O*O1D - r89*CCL4*O1D - r90*CF2CLBR*O1D - r91*CFC11*O1D - r92*CFC113*O1D + - r93*CFC114*O1D - r94*CFC115*O1D - r95*CFC12*O1D - r96*HCL*O1D - r97*HCL*O1D - r116*CF3BR*O1D + - r117*CHBR3*O1D - r118*H2402*O1D - r119*HBR*O1D - r120*HBR*O1D - r125*COF2*O1D - r126*COFCL*O1D + - r139*CH2BR2*O1D - r140*CH3BR*O1D - r141*HCFC141B*O1D - r142*HCFC142B*O1D - r143*HCFC22*O1D + - r160*CH4*O1D - r161*CH4*O1D - r162*CH4*O1D - r163*HCN*O1D + d(OH)/dt = j2*H2O + 2*j4*H2O2 + j9*HNO3 + j10*HO2NO2 + j20*ALKOOH + j21*BENZOOH + j28*BZOOH + j29*C2H5OOH + + j30*C3H7OOH + j31*C6H5OOH + j37*CH3COOOH + j38*CH3OOH + .33*j39*CH4 + j42*EOOH + j46*HPALD + + j49*ISOPOOH + j53*MEKOOH + j58*NTERPOOH + j61*PHENOOH + j62*POOH + j63*ROOH + j65*TERP2OOH + + j67*TERPOOH + j70*TOLOOH + j71*XOOH + j72*XYLENOOH + j73*XYLOLOOH + j105*HOBR + j106*HOCL + + .5*r377*NO2 + r4*O1D*H2 + 2*r5*O1D*H2O + r22*H2*O + r23*H2O2*O + 2*r25*H*HO2 + r28*HO2*O + + r29*HO2*O3 + r30*H*O3 + r48*NO3*HO2 + r53*NO*HO2 + r69*CL*HO2 + r84*HCL*O + r87*HOCL*O + + r96*O1D*HCL + r113*HBR*O + r115*HOBR*O + r119*O1D*HBR + r123*F*H2O + r146*CH2O*O + + .3*r153*CH3OOH*OH + r160*O1D*CH4 + r163*O1D*HCN + .65*r166*M*C2H2*OH + .13*r168*C2H4*O3 + + .5*r174*C2H5OOH*OH + .49*r182*CH3CO3*HO2 + .36*r197*C3H6*O3 + .5*r209*POOH*OH + .15*r211*RO2*HO2 + + .24*r227*MACR*O3 + .1*r229*MACROOH*OH + .45*r232*MCO3*HO2 + .2*r236*MEKO2*HO2 + .36*r241*MVK*O3 + + .32*r274*ISOP*O3 + .6*r276*ISOPOOH*OH + .5*r284*XOOH*OH + .4*r285*ACBZO2*HO2 + + .4*r299*DICARBO2*HO2 + .4*r305*MDIALO2*HO2 + .63*r329*BCARY*O3 + .63*r332*MTERP*O3 + - r31*H2*OH - r32*H2O2*OH - r33*HO2*OH - r34*O*OH - r35*O3*OH - 2*r36*OH*OH - 2*r37*M*OH*OH + - r39*HO2NO2*OH - r51*NO3*OH - r52*N*OH - r60*M*NO2*OH - r61*HNO3*OH - r80*CLONO2*OH + - r82*CLO*OH - r83*CLO*OH - r85*HCL*OH - r88*HOCL*OH - r112*BRO*OH - r114*HBR*OH + - r128*CH2BR2*OH - r130*CH3BR*OH - r131*CH3CCL3*OH - r133*CH3CL*OH - r135*CHBR3*OH + - r136*HCFC141B*OH - r137*HCFC142B*OH - r138*HCFC22*OH - r147*CH2O*OH - r152*CH3OH*OH + - r153*CH3OOH*OH - r154*CH4*OH - r155*M*HCN*OH - r156*HCOOH*OH - r164*CO*OH - r166*M*C2H2*OH + - r173*C2H5OH*OH - r174*C2H5OOH*OH - r176*C2H6*OH - r178*CH3CHO*OH - r179*CH3CN*OH + - r184*CH3COOH*OH - r185*CH3COOOH*OH - r190*GLYALD*OH - r191*GLYOXAL*OH - r192*PAN*OH + - r193*M*C2H4*OH - r201*C3H7OOH*OH - r202*C3H8*OH - r204*CH3COCHO*OH - r205*HYAC*OH - r206*NOA*OH + - r209*POOH*OH - r213*ROOH*OH - r214*M*C3H6*OH - r215*CH3COCH3*OH - r217*BIGENE*OH + - r220*HONITR*OH - r228*MACR*OH - r229*MACROOH*OH - r238*MEK*OH - r239*MEKOOH*OH - r240*M*MPAN*OH + - r242*MVK*OH - r245*ALKNIT*OH - r249*ALKOOH*OH - r250*BIGALK*OH - r251*HPALD*OH + - r252*HYDRALD*OH - r253*IEPOX*OH - r265*ISOPNITA*OH - r266*ISOPNITB*OH - r273*ISOPNOOH*OH + - r275*ISOP*OH - r276*ISOPOOH*OH - r277*NC4CH2OH*OH - r278*NC4CHO*OH - r284*XOOH*OH + - r287*BENZENE*OH - r290*BENZOOH*OH - r291*BZALD*OH - r293*BZOOH*OH - r297*C6H5OOH*OH + - r298*CRESOL*OH - r310*PHENOL*OH - r313*PHENOOH*OH - r317*TOLOOH*OH - r318*TOLUENE*OH + - r320*XYLENES*OH - r323*XYLENOOH*OH - r326*XYLOL*OH - r327*XYLOLOOH*OH - r330*BCARY*OH + - r333*MTERP*OH - r338*NTERPOOH*OH - r342*TERP2OOH*OH - r343*TERPNIT*OH - r347*TERPOOH*OH + - r349*TERPROD1*OH - r350*TERPROD2*OH - r352*DMS*OH - r354*OCS*OH - r356*M*SO2*OH - r360*S*OH + - r365*SO*OH - r366*DMS*OH - r368*NH3*OH + d(PHENO2)/dt = .2*r298*CRESOL*OH + .14*r310*PHENOL*OH + r313*PHENOOH*OH + - r308*HO2*PHENO2 - r309*NO*PHENO2 + d(PO2)/dt = .5*r209*POOH*OH + r214*M*C3H6*OH + - r207*HO2*PO2 - r208*NO*PO2 + d(RO2)/dt = .15*j69*TERPROD2 + r213*ROOH*OH + r215*CH3COCH3*OH + .06*r329*BCARY*O3 + .06*r332*MTERP*O3 + + .15*r350*TERPROD2*OH + - r210*CH3O2*RO2 - r211*HO2*RO2 - r212*NO*RO2 + d(TERP2O2)/dt = r342*TERP2OOH*OH + .5*r348*TERPROD1*NO3 + r349*TERPROD1*OH + - r339*CH3O2*TERP2O2 - r340*HO2*TERP2O2 - r341*NO*TERP2O2 + d(TERPO2)/dt = r330*BCARY*OH + r333*MTERP*OH + r347*TERPOOH*OH + - r344*CH3O2*TERPO2 - r345*HO2*TERPO2 - r346*NO*TERPO2 + d(TOLO2)/dt = r317*TOLOOH*OH + .65*r318*TOLUENE*OH + - r315*HO2*TOLO2 - r316*NO*TOLO2 + d(TOLUO2VBS)/dt = r404*TOLUENE*OH + - r405*HO2*TOLUO2VBS - r406*NO*TOLUO2VBS + d(XO2)/dt = r251*HPALD*OH + r252*HYDRALD*OH + r253*IEPOX*OH + .4*r276*ISOPOOH*OH + .5*r284*XOOH*OH + - r279*CH3CO3*XO2 - r280*CH3O2*XO2 - r281*HO2*XO2 - r282*NO*XO2 - r283*NO3*XO2 + d(XYLENO2)/dt = .56*r320*XYLENES*OH + r323*XYLENOOH*OH + - r321*HO2*XYLENO2 - r322*NO*XYLENO2 + d(XYLEO2VBS)/dt = r408*XYLENES*OH + - r409*HO2*XYLEO2VBS - r410*NO*XYLEO2VBS + d(XYLOLO2)/dt = .3*r326*XYLOL*OH + r327*XYLOLOOH*OH + - r324*HO2*XYLOLO2 - r325*NO*XYLOLO2 + d(H2O)/dt = .05*j39*CH4 + j109*H2SO4 + r369*HO2 + r26*H*HO2 + r31*OH*H2 + r32*OH*H2O2 + r33*OH*HO2 + + r36*OH*OH + r39*HO2NO2*OH + r61*HNO3*OH + r85*HCL*OH + r88*HOCL*OH + r114*HBR*OH + + r128*CH2BR2*OH + r130*CH3BR*OH + r131*CH3CCL3*OH + r133*CH3CL*OH + r138*HCFC22*OH + + r147*CH2O*OH + r153*CH3OOH*OH + r154*CH4*OH + r156*HCOOH*OH + r176*C2H6*OH + r178*CH3CHO*OH + + r184*CH3COOH*OH + r185*CH3COOOH*OH + r201*C3H7OOH*OH + r202*C3H8*OH + r204*CH3COCHO*OH + + r209*POOH*OH + r213*ROOH*OH + r215*CH3COCH3*OH + .5*r228*MACR*OH + r368*NH3*OH + r412*HOCL*HCL + + r418*HOCL*HCL + r419*HOBR*HCL + r423*HOCL*HCL + r424*HOBR*HCL + - j1*H2O - j2*H2O - j3*H2O - r5*O1D*H2O - r123*F*H2O - r367*SO3*H2O diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.in b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.in new file mode 100644 index 0000000000..f14fe7f60b --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mech.in @@ -0,0 +1,1217 @@ +* Comments +* User-given Tag Description: T1S2_midtop_mam5 +* Tag database identifier : MZ391_T1S2_20260129 +* Tag created by : lke +* Tag created from branch : T1S2 +* Tag created on : 2026-01-29 13:39:37.357515-07 +* Comments for this tag follow: +* lke : 2026-01-29 : T1 with S2 (adding O2_1S, O2_1D), for mid-top CESM3; MAM5; VBS-SOA; prognostic O2. + + SPECIES + + Solution + ALKNIT -> C5H11ONO2, + ALKOOH -> C5H12O2, + bc_a1 -> C, + bc_a4 -> C, + BCARY -> C15H24, + BENZENE -> C6H6, + BENZOOH -> C6H8O5, + BEPOMUC -> C6H6O3, + BIGALD -> C5H6O2, + BIGALD1 -> C4H4O2, + BIGALD2 -> C5H6O2, + BIGALD3 -> C5H6O2, + BIGALD4 -> C6H8O2, + BIGALK -> C5H12, + BIGENE -> C4H8, + BR -> Br, + BRCL -> BrCl, + BRO -> BrO, + BRONO2 -> BrONO2, + BRY, + BZALD -> C7H6O, + BZOOH -> C7H8O2, + C2H2, + C2H4, + C2H5OH, + C2H5OOH, + C2H6, + C3H6, + C3H7OOH, + C3H8, + C6H5OOH -> C6H5OOH, + CCL4 -> CCl4, + CF2CLBR -> CF2ClBr, + CF3BR -> CF3Br, + CFC11 -> CFCl3, + CFC113 -> CCl2FCClF2, + CFC114 -> CClF2CClF2, + CFC115 -> CClF2CF3, + CFC12 -> CF2Cl2, + CH2BR2 -> CH2Br2, + CH2O, + CH3BR -> CH3Br, + CH3CCL3 -> CH3CCl3, + CH3CHO, + CH3CL -> CH3Cl, + CH3CN, + CH3COCH3, + CH3COCHO, + CH3COOH, + CH3COOOH, + CH3OH, + CH3OOH, + CH4, + CHBR3 -> CHBr3, + CL -> Cl, + CL2 -> Cl2, + CL2O2 -> Cl2O2, + CLO -> ClO, + CLONO2 -> ClONO2, + CLY, + CO, + CO2, + COF2, + COFCL -> COFCl, + CRESOL -> C7H8O, + DMS -> CH3SCH3, + dst_a1 -> AlSiO5, + dst_a2 -> AlSiO5, + dst_a3 -> AlSiO5, + E90 -> CO, + EOOH -> HOCH2CH2OOH, + F, + GLYALD -> HOCH2CHO, + GLYOXAL -> C2H2O2, + H, + H2, + H2402 -> CBrF2CBrF2, + H2O2, + H2SO4 -> H2SO4, + HBR -> HBr, + HCFC141B -> CH3CCl2F, + HCFC142B -> CH3CClF2, + HCFC22 -> CHF2Cl, + HCL -> HCl, + HCN, + HCOOH, + HF, + HNO3, + HO2NO2, + HOBR -> HOBr, + HOCL -> HOCl, + HONITR -> C4H9NO4, + HPALD -> HOOCH2CCH3CHCHO, + HYAC -> CH3COCH2OH, + HYDRALD -> HOCH2CCH3CHCHO, + IEPOX -> C5H10O3, + ISOP -> C5H8, + ISOPNITA -> C5H9NO4, + ISOPNITB -> C5H9NO4, + ISOPNO3 -> CH2CHCCH3OOCH2ONO2, + ISOPNOOH -> C5H9NO5, + ISOPOOH -> HOCH2COOHCH3CHCH2, + IVOC -> C13H28, + MACR -> CH2CCH3CHO, + MACROOH -> CH3COCHOOHCH2OH, + MEK -> C4H8O, + MEKOOH -> C4H8O3, + MPAN -> CH2CCH3CO3NO2, + MTERP -> C10H16, + MVK -> CH2CHCOCH3, + N, + N2O, + N2O5, + NC4CH2OH -> C5H9NO4, + NC4CHO -> C5H7NO4, + ncl_a1 -> NaCl, + ncl_a2 -> NaCl, + ncl_a3 -> NaCl, + NH3, + NH4, + NH_5 -> CO, + NH_50 -> CO, + NO, + NO2, + NO3, + NOA -> CH3COCH2ONO2, + NTERPOOH -> C10H17NO5, + num_a1 -> H, + num_a2 -> H, + num_a3 -> H, + num_a4 -> H, + num_a5 -> H, + O, + O2, + O2_1D -> O2, + O2_1S -> O2, + O3, + O3S -> O3, + OCLO -> OClO, + OCS -> OCS, + ONITR -> C4H7NO4, + PAN -> CH3CO3NO2, + PBZNIT -> C7H5O3NO2, + PHENO -> C6H5O, + PHENOL -> C6H5OH, + PHENOOH -> C6H8O6, + pom_a1 -> C, + pom_a4 -> C, + POOH -> C3H6OHOOH, + ROOH -> CH3COCH2OOH, + S -> S, + SF6, + SO -> SO, + SO2, + SO3 -> SO3, + so4_a1 -> NH4HSO4, + so4_a2 -> NH4HSO4, + so4_a3 -> NH4HSO4, + so4_a5 -> NH4HSO4, + soa1_a1 -> C15H38O2, + soa1_a2 -> C15H38O2, + soa2_a1 -> C15H38O2, + soa2_a2 -> C15H38O2, + soa3_a1 -> C15H38O2, + soa3_a2 -> C15H38O2, + soa4_a1 -> C15H38O2, + soa4_a2 -> C15H38O2, + soa5_a1 -> C15H38O2, + soa5_a2 -> C15H38O2, + SOAG0 -> C15H38O2, + SOAG1 -> C15H38O2, + SOAG2 -> C15H38O2, + SOAG3 -> C15H38O2, + SOAG4 -> C15H38O2, + ST80_25 -> CO, + SVOC -> C22H46, + TEPOMUC -> C7H8O3, + TERP2OOH -> C10H16O4, + TERPNIT -> C10H17NO4, + TERPOOH -> C10H18O3, + TERPROD1 -> C10H16O2, + TERPROD2 -> C9H14O2, + TOLOOH -> C7H10O5, + TOLUENE -> C7H8, + XOOH -> HOCH2COOHCH3CHOHCHO, + XYLENES -> C8H10, + XYLENOOH -> C8H12O5, + XYLOL -> C8H10O, + XYLOLOOH -> C8H12O6, + NHDEP -> N, + NDEP -> N, + ACBZO2 -> C7H5O3, + ALKO2 -> C5H11O2, + BCARYO2VBS -> C15H25O3, + BENZO2 -> C6H7O5, + BENZO2VBS -> C6H7O5, + BZOO -> C7H7O2, + C2H5O2, + C3H7O2, + C6H5O2, + CH3CO3, + CH3O2, + DICARBO2 -> C5H5O4, + ENEO2 -> C4H9O3, + EO -> HOCH2CH2O, + EO2 -> HOCH2CH2O2, + HO2, + HOCH2OO, + ISOPAO2 -> HOC5H8O2, + ISOPBO2 -> HOC5H8O2, + ISOPO2VBS -> C5H9O3, + IVOCO2VBS -> C13H29O3, + MACRO2 -> CH3COCHO2CH2OH, + MALO2 -> C4H3O4, + MCO3 -> CH2CCH3CO3, + MDIALO2 -> C4H5O4, + MEKO2 -> C4H7O3, + MTERPO2VBS -> C10H17O3, + NTERPO2 -> C10H16NO5, + O1D -> O, + OH, + PHENO2 -> C6H7O6, + PO2 -> C3H6OHO2, + RO2 -> CH3COCH2O2, + TERP2O2 -> C10H15O4, + TERPO2 -> C10H17O3, + TOLO2 -> C7H9O5, + TOLUO2VBS -> C7H9O5, + XO2 -> HOCH2COOCH3CHOHCHO, + XYLENO2 -> C8H11O5, + XYLEO2VBS -> C8H11O5, + XYLOLO2 -> C8H11O6, + H2O + + End Solution + + + Fixed + M, N2 + End Fixed + + Col-int + O3 = 0. + O2 = 0. + End Col-int + + Not-Transported + ACBZO2, + ALKO2, + BCARYO2VBS, + BENZO2, + BENZO2VBS, + BZOO, + C2H5O2, + C3H7O2, + C6H5O2, + CH3CO3, + CH3O2, + DICARBO2, + ENEO2, + EO, + EO2, + HO2, + HOCH2OO, + ISOPAO2, + ISOPBO2, + ISOPO2VBS, + IVOCO2VBS, + MACRO2, + MALO2, + MCO3, + MDIALO2, + MEKO2, + MTERPO2VBS, + NTERPO2, + O1D, + OH, + PHENO2, + PO2, + RO2, + TERP2O2, + TERPO2, + TOLO2, + TOLUO2VBS, + XO2, + XYLENO2, + XYLEO2VBS, + XYLOLO2 + End Not-Transported + + END Species + + + Solution classes + Explicit + NHDEP + NDEP + End Explicit + + Implicit + ALKNIT + ALKOOH + bc_a1 + bc_a4 + BCARY + BENZENE + BENZOOH + BEPOMUC + BIGALD + BIGALD1 + BIGALD2 + BIGALD3 + BIGALD4 + BIGALK + BIGENE + BR + BRCL + BRO + BRONO2 + BRY + BZALD + BZOOH + C2H2 + C2H4 + C2H5OH + C2H5OOH + C2H6 + C3H6 + C3H7OOH + C3H8 + C6H5OOH + CCL4 + CF2CLBR + CF3BR + CFC11 + CFC113 + CFC114 + CFC115 + CFC12 + CH2BR2 + CH2O + CH3BR + CH3CCL3 + CH3CHO + CH3CL + CH3CN + CH3COCH3 + CH3COCHO + CH3COOH + CH3COOOH + CH3OH + CH3OOH + CH4 + CHBR3 + CL + CL2 + CL2O2 + CLO + CLONO2 + CLY + CO + CO2 + COF2 + COFCL + CRESOL + DMS + dst_a1 + dst_a2 + dst_a3 + E90 + EOOH + F + GLYALD + GLYOXAL + H + H2 + H2402 + H2O2 + H2SO4 + HBR + HCFC141B + HCFC142B + HCFC22 + HCL + HCN + HCOOH + HF + HNO3 + HO2NO2 + HOBR + HOCL + HONITR + HPALD + HYAC + HYDRALD + IEPOX + ISOP + ISOPNITA + ISOPNITB + ISOPNO3 + ISOPNOOH + ISOPOOH + IVOC + MACR + MACROOH + MEK + MEKOOH + MPAN + MTERP + MVK + N + N2O + N2O5 + NC4CH2OH + NC4CHO + ncl_a1 + ncl_a2 + ncl_a3 + NH3 + NH4 + NH_5 + NH_50 + NO + NO2 + NO3 + NOA + NTERPOOH + num_a1 + num_a2 + num_a3 + num_a4 + num_a5 + O + O2 + O2_1D + O2_1S + O3 + O3S + OCLO + OCS + ONITR + PAN + PBZNIT + PHENO + PHENOL + PHENOOH + pom_a1 + pom_a4 + POOH + ROOH + S + SF6 + SO + SO2 + SO3 + so4_a1 + so4_a2 + so4_a3 + so4_a5 + soa1_a1 + soa1_a2 + soa2_a1 + soa2_a2 + soa3_a1 + soa3_a2 + soa4_a1 + soa4_a2 + soa5_a1 + soa5_a2 + SOAG0 + SOAG1 + SOAG2 + SOAG3 + SOAG4 + ST80_25 + SVOC + TEPOMUC + TERP2OOH + TERPNIT + TERPOOH + TERPROD1 + TERPROD2 + TOLOOH + TOLUENE + XOOH + XYLENES + XYLENOOH + XYLOL + XYLOLOOH + ACBZO2 + ALKO2 + BCARYO2VBS + BENZO2 + BENZO2VBS + BZOO + C2H5O2 + C3H7O2 + C6H5O2 + CH3CO3 + CH3O2 + DICARBO2 + ENEO2 + EO + EO2 + HO2 + HOCH2OO + ISOPAO2 + ISOPBO2 + ISOPO2VBS + IVOCO2VBS + MACRO2 + MALO2 + MCO3 + MDIALO2 + MEKO2 + MTERPO2VBS + NTERPO2 + O1D + OH + PHENO2 + PO2 + RO2 + TERP2O2 + TERPO2 + TOLO2 + TOLUO2VBS + XO2 + XYLENO2 + XYLEO2VBS + XYLOLO2 + H2O + End Implicit + + End Solution classes + + + CHEMISTRY + Photolysis +********************************* +*** odd-oxygen +********************************* +[jh2o_b] H2O + hv -> H2 + O1D +[jh2o_a] H2O + hv -> OH + H +[jh2o_c] H2O + hv -> 2*H + O +[jh2o2] H2O2 + hv -> 2*OH +[jo2_a=userdefined,] O2 + hv -> O + O1D +[jo2_b=userdefined,] O2 + hv -> 2*O +[jo3_a] O3 + hv -> O1D + O2_1D +[jo3_b] O3 + hv -> O + O2 +********************************* +*** odd-nitrogen +********************************* +[jhno3] HNO3 + hv -> NO2 + OH +[jho2no2_a] HO2NO2 + hv -> OH + NO3 +[jho2no2_b] HO2NO2 + hv -> NO2 + HO2 +[jn2o] N2O + hv -> O1D + N2 +[jn2o5_a] N2O5 + hv -> NO2 + NO3 +[jn2o5_b] N2O5 + hv -> NO + O + NO3 +[jno=userdefined,] NO + hv -> N + O +[jno2] NO2 + hv -> NO + O +[jno3_b] NO3 + hv -> NO + O2 +[jno3_a] NO3 + hv -> NO2 + O +********************************* +*** organics +********************************* +[jalknit->,jch3ooh] ALKNIT + hv -> NO2 + 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK +[jalkooh->,jch3ooh] ALKOOH + hv -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + 0.9*HO2 + 0.8*MEK + OH +[jbenzooh->,jch3ooh] BENZOOH + hv -> OH + GLYOXAL + 0.5*BIGALD1 + HO2 +[jbepomuc->,.10*jno2] BEPOMUC + hv -> BIGALD1 + 1.5*HO2 + 1.5*CO +[jbigald->,0.2*jno2] BIGALD + hv -> 0.45*CO + 0.13*GLYOXAL + 0.56*HO2 + 0.13*CH3CO3 + 0.18*CH3COCHO +[jbigald1->,.14*jno2] BIGALD1 + hv -> 0.6*MALO2 + HO2 +[jbigald2->,.20*jno2] BIGALD2 + hv -> 0.6*HO2 + 0.6*DICARBO2 +[jbigald3->,.20*jno2] BIGALD3 + hv -> 0.6*HO2 + 0.6*CO + 0.6*MDIALO2 +[jbigald4->,.006*jno2] BIGALD4 + hv -> HO2 + CO + CH3COCHO + CH3CO3 +[jbzooh->,jch3ooh] BZOOH + hv -> BZALD + OH + HO2 +[jc2h5ooh->,jch3ooh] C2H5OOH + hv -> CH3CHO + HO2 + OH +[jc3h7ooh->,jch3ooh] C3H7OOH + hv -> 0.82*CH3COCH3 + OH + HO2 +[jc6h5ooh->,jch3ooh] C6H5OOH + hv -> PHENO + OH +[jch2o_b] CH2O + hv -> CO + H2 +[jch2o_a] CH2O + hv -> CO + 2*H +[jch3cho] CH3CHO + hv -> CH3O2 + CO + HO2 +[jacet] CH3COCH3 + hv -> CH3CO3 + CH3O2 +[jmgly] CH3COCHO + hv -> CH3CO3 + CO + HO2 +[jch3co3h->,0.28*jh2o2] CH3COOOH + hv -> CH3O2 + OH + CO2 +[jch3ooh] CH3OOH + hv -> CH2O + H + OH +[jch4_b] CH4 + hv -> 1.44*H2 + 0.18*CH2O + 0.18*O + 0.33*OH + 0.33*H + 0.44*CO2 + 0.38*CO + 0.05*H2O +[jch4_a] CH4 + hv -> H + CH3O2 +[jco2] CO2 + hv -> CO + O +[jeooh->,jch3ooh] EOOH + hv -> EO + OH +[jglyald] GLYALD + hv -> 2*HO2 + CO + CH2O +[jglyoxal->,jmgly] GLYOXAL + hv -> 2*CO + 2*HO2 +[jhonitr->,jch2o_a] HONITR + hv -> NO2 + 0.67*HO2 + 0.33*CH3CHO + 0.33*CH2O + 0.33*CO + 0.33*GLYALD + 0.33*CH3CO3 + 0.17*HYAC + 0.17*CH3COCH3 +[jhpald->,.006*jno2] HPALD + hv -> BIGALD3 + OH + HO2 +[jhyac] HYAC + hv -> CH3CO3 + HO2 + CH2O +[jisopnooh->,jch3ooh] ISOPNOOH + hv -> NO2 + HO2 + ISOPOOH +[jisopooh->,jch3ooh] ISOPOOH + hv -> 0.7*MVK + 0.3*MACR + OH + CH2O + HO2 +[jmacr_a] MACR + hv -> 1.34*HO2 + 0.66*MCO3 + 1.34*CH2O + 1.34*CH3CO3 +[jmacr_b] MACR + hv -> 0.66*HO2 + 1.34*CO +[jmek->,jacet] MEK + hv -> CH3CO3 + C2H5O2 +[jmekooh->,jch3ooh] MEKOOH + hv -> OH + CH3CO3 + CH3CHO +[jmpan->,jpan] MPAN + hv -> MCO3 + NO2 +[jmvk] MVK + hv -> 0.7*C3H6 + 0.7*CO + 0.3*CH3O2 + 0.3*CH3CO3 +[jnc4cho->,jch2o_a] NC4CHO + hv -> BIGALD3 + NO2 + HO2 +[jnoa->,jch2o_a] NOA + hv -> NO2 + CH2O + CH3CO3 +[jnterpooh->,jch3ooh] NTERPOOH + hv -> TERPROD1 + NO2 + OH +[jonitr->,jch3cho] ONITR + hv -> NO2 +[jpan] PAN + hv -> 0.6*CH3CO3 + 0.6*NO2 + 0.4*CH3O2 + 0.4*NO3 + 0.4*CO2 +[jphenooh->,jch3ooh] PHENOOH + hv -> OH + HO2 + 0.7*GLYOXAL +[jpooh->,jch3ooh] POOH + hv -> CH3CHO + CH2O + HO2 + OH +[jrooh->,jch3ooh] ROOH + hv -> CH3CO3 + CH2O + OH +[jtepomuc->,.10*jno2] TEPOMUC + hv -> 0.5*CH3CO3 + HO2 + 1.5*CO +[jterp2ooh->,jch3ooh] TERP2OOH + hv -> OH + 0.375*CH2O + 0.3*CH3COCH3 + 0.25*CO + CO2 + TERPROD2 + HO2 + 0.25*GLYALD +[jterpnit->,jch3ooh] TERPNIT + hv -> TERPROD1 + NO2 + HO2 +[jterpooh->,jch3ooh] TERPOOH + hv -> 0.4*CH2O + 0.05*CH3COCH3 + TERPROD1 + HO2 + OH +[jterprd1->,jch3cho] TERPROD1 + hv -> HO2 + CO + TERPROD2 +[jterprd2->,jch3cho] TERPROD2 + hv -> 0.15*RO2 + 0.68*CH2O + 0.8*CO2 + 0.5*CH3COCH3 + 0.65*CH3CO3 + 1.2*HO2 + 1.7*CO +[jtolooh->,jch3ooh] TOLOOH + hv -> OH + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 + 0.2*BIGALD2 + 0.2*BIGALD3 +[jxooh->,jch3ooh] XOOH + hv -> OH +[jxylenooh->,jch3ooh] XYLENOOH + hv -> OH + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO + 0.06*BIGALD1 + 0.2*BIGALD2 + 0.15*BIGALD3 + 0.21*BIGALD4 +[jxylolooh->,jch3ooh] XYLOLOOH + hv -> OH + 0.17*GLYOXAL + 0.51*CH3COCHO + HO2 +********************************* +*** halogens +********************************* +[jbrcl] BRCL + hv -> BR + CL +[jbro] BRO + hv -> BR + O +[jbrono2_b] BRONO2 + hv -> BRO + NO2 +[jbrono2_a] BRONO2 + hv -> BR + NO3 +[jccl4] CCL4 + hv -> 4*CL +[jcf2clbr] CF2CLBR + hv -> BR + CL + COF2 +[jcf3br] CF3BR + hv -> BR + F + COF2 +[jcfcl3] CFC11 + hv -> 2*CL + COFCL +[jcfc113] CFC113 + hv -> 2*CL + COFCL + COF2 +[jcfc114] CFC114 + hv -> 2*CL + 2*COF2 +[jcfc115] CFC115 + hv -> CL + F + 2*COF2 +[jcf2cl2] CFC12 + hv -> 2*CL + COF2 +[jch2br2] CH2BR2 + hv -> 2*BR +[jch3br] CH3BR + hv -> BR + CH3O2 +[jch3ccl3] CH3CCL3 + hv -> 3*CL +[jch3cl] CH3CL + hv -> CL + CH3O2 +[jchbr3] CHBR3 + hv -> 3*BR +[jcl2] CL2 + hv -> 2*CL +[jcl2o2] CL2O2 + hv -> 2*CL +[jclo] CLO + hv -> CL + O +[jclono2_a] CLONO2 + hv -> CL + NO3 +[jclono2_b] CLONO2 + hv -> CLO + NO2 +[jcof2] COF2 + hv -> 2*F +[jcofcl] COFCL + hv -> F + CL +[jh2402] H2402 + hv -> 2*BR + 2*COF2 +[jhbr] HBR + hv -> BR + H +[jhcfc141b] HCFC141B + hv -> CL + COFCL +[jhcfc142b] HCFC142B + hv -> CL + COF2 +[jhcfc22] HCFC22 + hv -> CL + COF2 +[jhcl] HCL + hv -> H + CL +[jhf] HF + hv -> H + F +[jhobr] HOBR + hv -> BR + OH +[jhocl] HOCL + hv -> OH + CL +[joclo] OCLO + hv -> O + CLO +[jsf6] SF6 + hv -> sink +********************************* +*** sulfur +********************************* +[jh2so4] H2SO4 + hv -> SO3 + H2O +[jocs] OCS + hv -> S + CO +[jso] SO + hv -> S + O +[jso2] SO2 + hv -> SO + O +[jso3] SO3 + hv -> SO2 + O +********************************* +*** soa +********************************* +[jsoa1_a1->,.0004*jno2] soa1_a1 + hv -> +[jsoa1_a2->,.0004*jno2] soa1_a2 + hv -> +[jsoa2_a1->,.0004*jno2] soa2_a1 + hv -> +[jsoa2_a2->,.0004*jno2] soa2_a2 + hv -> +[jsoa3_a1->,.0004*jno2] soa3_a1 + hv -> +[jsoa3_a2->,.0004*jno2] soa3_a2 + hv -> +[jsoa4_a1->,.0004*jno2] soa4_a1 + hv -> +[jsoa4_a2->,.0004*jno2] soa4_a2 + hv -> +[jsoa5_a1->,.0004*jno2] soa5_a1 + hv -> +[jsoa5_a2->,.0004*jno2] soa5_a2 + hv -> + End Photolysis + + Reactions +********************************* +*** Not Assigned to a Section +********************************* +[E90_tau] E90 -> ; 1.29e-07 +********************************* +*** odd-oxygen +********************************* +[ag1] O2_1D -> O2 ; 0.000258 +[ag2] O2_1S -> O2 ; 0.085 +[O1D_H2] O1D + H2 -> H + OH ; 1.2e-10 +[O1D_H2O] O1D + H2O -> 2*OH ; 1.63e-10, 60 +[O1D_N2,cph=189.81] O1D + N2 -> O + N2 ; 2.15e-11, 110 +[O1D_O2,cph=32.91] O1D + O2 -> O + O2_1S ; 2.64e-11, 55 +[O1D_O2b,cph=189.81] O1D + O2 -> O + O2 ; 6.6e-12, 55 +[O1D_O3] O1D + O3 -> O2 + O2 ; 1.2e-10 +[O1D_O3a] O1D + O3 -> O2 + 2*O ; 1.2e-10 +[O2_1D_N2,cph=94.3] O2_1D + N2 -> O2 + N2 ; 1e-20 +[O2_1D_O,cph=94.3] O2_1D + O -> O2 + O ; 1.3e-16 +[O2_1D_O2,cph=94.3] O2_1D + O2 -> 2*O2 ; 3.6e-18, -220 +[O2_1S_CO2] O2_1S + CO2 -> O2_1D + CO2 ; 4.2e-13 +[O2_1S_N2,cph=62.6] O2_1S + N2 -> O2_1D + N2 ; 1.8e-15, 45 +[O2_1S_O,cph=62.6] O2_1S + O -> O2_1D + O ; 8e-14 +[O2_1S_O2,cph=62.6] O2_1S + O2 -> O2_1D + O2 ; 3.9e-17 +[O2_1S_O3,cph=62.6] O2_1S + O3 -> O2_1D + O3 ; 3.5e-11, -135 +[O_O3,cph=392.19] O + O3 -> 2*O2 ; 8e-12, -2060 +[usr_O_O,cph=493.58] O + O + M -> O2 + M +[usr_O_O2,cph=101.39] O + O2 + M -> O3 + M +********************************* +*** odd-hydrogen +********************************* +[H2_O] H2 + O -> OH + H ; 1.6e-11, -4570 +[H2O2_O] H2O2 + O -> OH + HO2 ; 1.4e-12, -2000 +[H_HO2,cph=232.59] H + HO2 -> H2 + O2 ; 6.9e-12 +[H_HO2a] H + HO2 -> 2*OH ; 7.2e-11 +[H_HO2b] H + HO2 -> H2O + O ; 1.6e-12 +[H_O2,cph=203.4] H + O2 + M -> HO2 + M ; 5.3e-32, 1.8, 9.5e-11, -0.4, 0.6 +[HO2_O,cph=226.58] HO2 + O -> OH + O2 ; 3e-11, 200 +[HO2_O3,cph=120.1] HO2 + O3 -> OH + 2*O2 ; 1e-14, -490 +[H_O3,cph=194.71] H + O3 -> OH + O2 ; 1.4e-10, -470 +[OH_H2] OH + H2 -> H2O + H ; 2.8e-12, -1800 +[OH_H2O2] OH + H2O2 -> H2O + HO2 ; 1.8e-12 +[OH_HO2,cph=293.62] OH + HO2 -> H2O + O2 ; 4.8e-11, 250 +[OH_O,cph=67.67] OH + O -> H + O2 ; 1.8e-11, 180 +[OH_O3,cph=165.3] OH + O3 -> HO2 + O2 ; 1.7e-12, -940 +[OH_OH] OH + OH -> H2O + O ; 1.8e-12 +[OH_OH_M] OH + OH + M -> H2O2 + M ; 6.9e-31, 1, 2.6e-11, 0, 0.6 +[usr_HO2_HO2,cph=165.51] HO2 + HO2 -> H2O2 + O2 +********************************* +*** odd-nitrogen +********************************* +[HO2NO2_OH] HO2NO2 + OH -> H2O + NO2 + O2 ; 4.5e-13, 610 +[N_NO,cph=313.75] N + NO -> N2 + O ; 2.1e-11, 100 +[N_NO2a] N + NO2 -> N2O + O ; 2.9e-12, 220 +[N_NO2b] N + NO2 -> 2*NO ; 1.45e-12, 220 +[N_NO2c] N + NO2 -> N2 + O2 ; 1.45e-12, 220 +[N_O2,cph=133.75] N + O2 -> NO + O ; 3.3e-12, -3150 +[NO2_O,cph=193.02] NO2 + O -> NO + O2 ; 5.1e-12, 210 +[NO2_O3] NO2 + O3 -> NO3 + O2 ; 1.2e-13, -2450 +[NO2_O_M] NO2 + O + M -> NO3 + M ; 2.5e-31, 1.8, 2.2e-11, 0.7, 0.6 +[NO3_HO2] NO3 + HO2 -> OH + NO2 + O2 ; 3.5e-12 +[NO3_NO] NO3 + NO -> 2*NO2 ; 1.7e-11, 125 +[NO3_O] NO3 + O -> NO2 + O2 ; 1.3e-11 +[NO3_OH] NO3 + OH -> HO2 + NO2 ; 2.2e-11 +[N_OH] N + OH -> NO + H ; 5e-11 +[NO_HO2,cph=34.47] NO + HO2 -> NO2 + OH ; 3.44e-12, 260 +[NO_O3,cph=199.17] NO + O3 -> NO2 + O2 ; 3e-12, -1500 +[NO_O_M] NO + O + M -> NO2 + M ; 9e-32, 1.5, 3e-11, 0, 0.6 +[O1D_N2Oa] O1D + N2O -> 2*NO ; 7.26e-11, 20 +[O1D_N2Ob] O1D + N2O -> N2 + O2 ; 4.64e-11, 20 +[tag_NO2_HO2] NO2 + HO2 + M -> HO2NO2 + M ; 1.9e-31, 3.4, 4e-12, 0.3, 0.6 +[tag_NO2_NO3] NO2 + NO3 + M -> N2O5 + M ; 2.4e-30, 3, 1.6e-12, -0.1, 0.6 +[tag_NO2_OH] NO2 + OH + M -> HNO3 + M ; 1.8e-30, 3, 2.8e-11, 0, 0.6 +[usr_HNO3_OH] HNO3 + OH -> NO3 + H2O +[usr_HO2NO2_M] HO2NO2 + M -> HO2 + NO2 + M +[usr_N2O5_M] N2O5 + M -> NO2 + NO3 + M +********************************* +*** odd-chlorine +********************************* +[CL_CH2O] CL + CH2O -> HCL + HO2 + CO ; 8.1e-11, -30 +[CL_CH4] CL + CH4 -> CH3O2 + HCL ; 7.1e-12, -1270 +[CL_H2] CL + H2 -> HCL + H ; 3.05e-11, -2270 +[CL_H2O2] CL + H2O2 -> HCL + HO2 ; 1.1e-11, -980 +[CL_HO2a] CL + HO2 -> HCL + O2 ; 1.4e-11, 270 +[CL_HO2b] CL + HO2 -> OH + CLO ; 3.6e-11, -375 +[CL_O3] CL + O3 -> CLO + O2 ; 2.3e-11, -200 +[CLO_CH3O2] CLO + CH3O2 -> CL + HO2 + CH2O ; 3.3e-12, -115 +[CLO_CLOa] CLO + CLO -> 2*CL + O2 ; 3e-11, -2450 +[CLO_CLOb] CLO + CLO -> CL2 + O2 ; 1e-12, -1590 +[CLO_CLOc] CLO + CLO -> CL + OCLO ; 3.5e-13, -1370 +[CLO_HO2] CLO + HO2 -> O2 + HOCL ; 2.6e-12, 290 +[CLO_NO] CLO + NO -> NO2 + CL ; 6.4e-12, 290 +[CLONO2_CL] CLONO2 + CL -> CL2 + NO3 ; 6.5e-12, 135 +[CLO_NO2_M] CLO + NO2 + M -> CLONO2 + M ; 1.8e-31, 3.4, 1.5e-11, 1.9, 0.6 +[CLONO2_O] CLONO2 + O -> CLO + NO3 ; 3.6e-12, -840 +[CLONO2_OH] CLONO2 + OH -> HOCL + NO3 ; 1.2e-12, -330 +[CLO_O] CLO + O -> CL + O2 ; 2.8e-11, 85 +[CLO_OHa] CLO + OH -> CL + HO2 ; 7.4e-12, 270 +[CLO_OHb] CLO + OH -> HCL + O2 ; 6e-13, 230 +[HCL_O] HCL + O -> CL + OH ; 1e-11, -3300 +[HCL_OH] HCL + OH -> H2O + CL ; 1.8e-12, -250 +[HOCL_CL] HOCL + CL -> HCL + CLO ; 3.4e-12, -130 +[HOCL_O] HOCL + O -> CLO + OH ; 1.7e-13 +[HOCL_OH] HOCL + OH -> H2O + CLO ; 3e-12, -500 +[O1D_CCL4] O1D + CCL4 -> 4*CL ; 2.607e-10 +[O1D_CF2CLBR] O1D + CF2CLBR -> CL + BR + COF2 ; 9.75e-11 +[O1D_CFC11] O1D + CFC11 -> 2*CL + COFCL ; 2.07e-10 +[O1D_CFC113] O1D + CFC113 -> 2*CL + COFCL + COF2 ; 2.088e-10 +[O1D_CFC114] O1D + CFC114 -> 2*CL + 2*COF2 ; 1.17e-10 +[O1D_CFC115] O1D + CFC115 -> CL + F + 2*COF2 ; 4.644e-11 +[O1D_CFC12] O1D + CFC12 -> 2*CL + COF2 ; 1.204e-10 +[O1D_HCLa] O1D + HCL -> CL + OH ; 9.9e-11 +[O1D_HCLb] O1D + HCL -> CLO + H ; 3.3e-12 +[tag_CLO_CLO_M] CLO + CLO + M -> CL2O2 + M ; 1.9e-32, 3.6, 3.7e-12, 1.6, 0.6 +[usr_CL2O2_M] CL2O2 + M -> CLO + CLO + M +********************************* +*** odd-bromine +********************************* +[BR_CH2O] BR + CH2O -> HBR + HO2 + CO ; 1.7e-11, -800 +[BR_HO2] BR + HO2 -> HBR + O2 ; 4.8e-12, -310 +[BR_O3] BR + O3 -> BRO + O2 ; 1.6e-11, -780 +[BRO_BRO] BRO + BRO -> 2*BR + O2 ; 1.5e-12, 230 +[BRO_CLOa] BRO + CLO -> BR + OCLO ; 9.5e-13, 550 +[BRO_CLOb] BRO + CLO -> BR + CL + O2 ; 2.3e-12, 260 +[BRO_CLOc] BRO + CLO -> BRCL + O2 ; 4.1e-13, 290 +[BRO_HO2] BRO + HO2 -> HOBR + O2 ; 4.5e-12, 460 +[BRO_NO] BRO + NO -> BR + NO2 ; 8.8e-12, 260 +[BRO_NO2_M] BRO + NO2 + M -> BRONO2 + M ; 5.2e-31, 3.2, 6.9e-12, 2.9, 0.6 +[BRONO2_O] BRONO2 + O -> BRO + NO3 ; 1.9e-11, 215 +[BRO_O] BRO + O -> BR + O2 ; 1.9e-11, 230 +[BRO_OH] BRO + OH -> BR + HO2 ; 1.7e-11, 250 +[HBR_O] HBR + O -> BR + OH ; 5.8e-12, -1500 +[HBR_OH] HBR + OH -> BR + H2O ; 5.5e-12, 200 +[HOBR_O] HOBR + O -> BRO + OH ; 1.2e-10, -430 +[O1D_CF3BR] O1D + CF3BR -> BR + F + COF2 ; 4.5e-11 +[O1D_CHBR3] O1D + CHBR3 -> 3*BR ; 4.62e-10 +[O1D_H2402] O1D + H2402 -> 2*BR + 2*COF2 ; 1.2e-10 +[O1D_HBRa] O1D + HBR -> BR + OH ; 9e-11 +[O1D_HBRb] O1D + HBR -> BRO + H ; 3e-11 +********************************* +*** odd-fluorine +********************************* +[F_CH4] F + CH4 -> HF + CH3O2 ; 1.6e-10, -260 +[F_H2] F + H2 -> HF + H ; 1.4e-10, -500 +[F_H2O] F + H2O -> HF + OH ; 1.4e-11, 0 +[F_HNO3] F + HNO3 -> HF + NO3 ; 6e-12, 400 +[O1D_COF2] O1D + COF2 -> 2*F ; 2.14e-11 +[O1D_COFCL] O1D + COFCL -> F + CL ; 1.9e-10 +********************************* +*** organic-halogens +********************************* +[CH2BR2_CL] CH2BR2 + CL -> 2*BR + HCL ; 6.3e-12, -800 +[CH2BR2_OH] CH2BR2 + OH -> 2*BR + H2O ; 2e-12, -840 +[CH3BR_CL] CH3BR + CL -> HCL + HO2 + BR ; 1.46e-11, -1040 +[CH3BR_OH] CH3BR + OH -> BR + H2O + HO2 ; 1.42e-12, -1150 +[CH3CCL3_OH] CH3CCL3 + OH -> H2O + 3*CL ; 1.64e-12, -1520 +[CH3CL_CL] CH3CL + CL -> HO2 + CO + 2*HCL ; 2.03e-11, -1100 +[CH3CL_OH] CH3CL + OH -> CL + H2O + HO2 ; 1.96e-12, -1200 +[CHBR3_CL] CHBR3 + CL -> 3*BR + HCL ; 4.85e-12, -850 +[CHBR3_OH] CHBR3 + OH -> 3*BR ; 9e-13, -360 +[HCFC141B_OH] HCFC141B + OH -> CL + COFCL ; 1.25e-12, -1600 +[HCFC142B_OH] HCFC142B + OH -> CL + COF2 ; 1.3e-12, -1770 +[HCFC22_OH] HCFC22 + OH -> H2O + CL + COF2 ; 9.2e-13, -1560 +[O1D_CH2BR2] O1D + CH2BR2 -> 2*BR ; 2.57e-10 +[O1D_CH3BR] O1D + CH3BR -> BR ; 1.8e-10 +[O1D_HCFC141B] O1D + HCFC141B -> CL + COFCL ; 1.794e-10 +[O1D_HCFC142B] O1D + HCFC142B -> CL + COF2 ; 1.3e-10 +[O1D_HCFC22] O1D + HCFC22 -> CL + COF2 ; 7.65e-11 +********************************* +*** C1 +********************************* +[CH2O_HO2] CH2O + HO2 -> HOCH2OO ; 9.7e-15, 625 +[CH2O_NO3] CH2O + NO3 -> CO + HO2 + HNO3 ; 6e-13, -2058 +[CH2O_O] CH2O + O -> HO2 + OH + CO ; 3.4e-11, -1600 +[CH2O_OH] CH2O + OH -> CO + H2O + H ; 5.5e-12, 125 +[CH3O2_CH3O2a] CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 ; 5e-13, -424 +[CH3O2_CH3O2b] CH3O2 + CH3O2 -> CH2O + CH3OH ; 1.9e-14, 706 +[CH3O2_HO2] CH3O2 + HO2 -> CH3OOH + O2 ; 4.1e-13, 750 +[CH3O2_NO] CH3O2 + NO -> CH2O + NO2 + HO2 ; 2.8e-12, 300 +[CH3OH_OH] CH3OH + OH -> HO2 + CH2O ; 2.9e-12, -345 +[CH3OOH_OH] CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O ; 3.8e-12, 200 +[CH4_OH] CH4 + OH -> CH3O2 + H2O ; 2.45e-12, -1775 +[HCN_OH] HCN + OH + M -> HO2 + M ; 6.1e-33, 1.5, 9.8e-15, -4.6, 0.8 +[HCOOH_OH] HCOOH + OH -> HO2 + CO2 + H2O ; 4e-13 +[HOCH2OO_HO2] HOCH2OO + HO2 -> HCOOH ; 7.5e-13, 700 +[HOCH2OO_M] HOCH2OO -> CH2O + HO2 ; 2.4e+12, -7000 +[HOCH2OO_NO] HOCH2OO + NO -> HCOOH + NO2 + HO2 ; 2.6e-12, 265 +[O1D_CH4a] O1D + CH4 -> CH3O2 + OH ; 1.31e-10 +[O1D_CH4b] O1D + CH4 -> CH2O + H + HO2 ; 3.5e-11 +[O1D_CH4c] O1D + CH4 -> CH2O + H2 ; 9e-12 +[O1D_HCN] O1D + HCN -> OH ; 1.08e-10, 105 +[usr_CO_OH] CO + OH -> CO2 + HO2 +********************************* +*** C2 +********************************* +[C2H2_CL_M] C2H2 + CL + M -> CL + M ; 5.2e-30, 2.4, 2.2e-10, 0.7, 0.6 +[C2H2_OH_M] C2H2 + OH + M -> 0.65*GLYOXAL + 0.65*OH + 0.35*HCOOH + 0.35*HO2 + 0.35*CO + M ; 5.5e-30, 0, 8.3e-13, -2, 0.6 +[C2H4_CL_M] C2H4 + CL + M -> CL + M ; 1.6e-29, 3.3, 3.1e-10, 1, 0.6 +[C2H4_O3] C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*HCOOH + CH2O ; 1.2e-14, -2630 +[C2H5O2_C2H5O2] C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH ; 6.8e-14 +[C2H5O2_CH3O2] C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH + 0.2*C2H5OH ; 2e-13 +[C2H5O2_HO2] C2H5O2 + HO2 -> C2H5OOH + O2 ; 7.5e-13, 700 +[C2H5O2_NO] C2H5O2 + NO -> CH3CHO + HO2 + NO2 ; 2.6e-12, 365 +[C2H5OH_OH] C2H5OH + OH -> HO2 + CH3CHO ; 6.9e-12, -230 +[C2H5OOH_OH] C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH ; 3.8e-12, 200 +[C2H6_CL] C2H6 + CL -> HCL + C2H5O2 ; 7.2e-11, -70 +[C2H6_OH] C2H6 + OH -> C2H5O2 + H2O ; 7.66e-12, -1020 +[CH3CHO_NO3] CH3CHO + NO3 -> CH3CO3 + HNO3 ; 1.4e-12, -1900 +[CH3CHO_OH] CH3CHO + OH -> CH3CO3 + H2O ; 4.63e-12, 350 +[CH3CN_OH] CH3CN + OH -> HO2 ; 7.8e-13, -1050 +[CH3CO3_CH3CO3] CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 ; 2.9e-12, 500 +[CH3CO3_CH3O2] CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 + 0.1*CH3COOH ; 2e-12, 500 +[CH3CO3_HO2] CH3CO3 + HO2 -> 0.36*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.49*OH + 0.49*CH3O2 + 0.49*CO2 ; 4.3e-13, 1040 +[CH3CO3_NO] CH3CO3 + NO -> CH3O2 + CO2 + NO2 ; 8.1e-12, 270 +[CH3COOH_OH] CH3COOH + OH -> CH3O2 + CO2 + H2O ; 3.15e-14, 920 +[CH3COOOH_OH] CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O ; 1e-12 +[EO2_HO2] EO2 + HO2 -> EOOH ; 7.5e-13, 700 +[EO2_NO] EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 ; 4.2e-12, 180 +[EO_M] EO -> 2*CH2O + HO2 ; 1.6e+11, -4150 +[EO_O2] EO + O2 -> GLYALD + HO2 ; 1e-14 +[GLYALD_OH] GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 ; 1e-11 +[GLYOXAL_OH] GLYOXAL + OH -> HO2 + CO + CO2 ; 1.15e-11 +[PAN_OH] PAN + OH -> CH2O + NO3 ; 4e-14 +[tag_C2H4_OH] C2H4 + OH + M -> EO2 + M ; 8.6e-29, 3.1, 9e-12, 0.85, 0.48 +[tag_CH3CO3_NO2] CH3CO3 + NO2 + M -> PAN + M ; 7.3e-29, 4.1, 9.5e-12, 1.6, 0.6 +[usr_PAN_M] PAN + M -> CH3CO3 + NO2 + M +********************************* +*** C3 +********************************* +[C3H6_NO3] C3H6 + NO3 -> NOA ; 4.6e-13, -1156 +[C3H6_O3] C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH ; 6.5e-15, -1900 +[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 1e-13, 557 +[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 1.41e-13, 1300 +[C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 2.7e-12, 360 +[C3H7OOH_OH] C3H7OOH + OH -> H2O + C3H7O2 ; 3.8e-12, 200 +[C3H8_OH] C3H8 + OH -> C3H7O2 + H2O ; 9.19e-12, -630 +[CH3COCHO_NO3] CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 ; 1.4e-12, -1860 +[CH3COCHO_OH] CH3COCHO + OH -> CH3CO3 + CO + H2O ; 8.4e-13, 830 +[HYAC_OH] HYAC + OH -> CH3COCHO + HO2 ; 3e-12 +[NOA_OH] NOA + OH -> NO2 + CH3COCHO ; 6.7e-13 +[PO2_HO2] PO2 + HO2 -> POOH + O2 ; 7.5e-13, 700 +[PO2_NO] PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 ; 4.2e-12, 180 +[POOH_OH] POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O ; 3.8e-12, 200 +[RO2_CH3O2] RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC + 0.5*CH3COCHO + 0.5*CH3OH ; 7.1e-13, 500 +[RO2_HO2] RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 ; 8.6e-13, 700 +[RO2_NO] RO2 + NO -> CH3CO3 + CH2O + NO2 ; 2.9e-12, 300 +[ROOH_OH] ROOH + OH -> RO2 + H2O ; 3.8e-12, 200 +[tag_C3H6_OH] C3H6 + OH + M -> PO2 + M ; 8e-27, 3.5, 3e-11, 0, 0.5 +[usr_CH3COCH3_OH] CH3COCH3 + OH -> RO2 + H2O +********************************* +*** C4 +********************************* +[BIGENE_NO3] BIGENE + NO3 -> NO2 + CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 ; 3.5e-13 +[BIGENE_OH] BIGENE + OH -> ENEO2 ; 5.4e-11 +[ENEO2_NO] ENEO2 + NO -> CH3CHO + 0.5*CH2O + 0.5*CH3COCH3 + HO2 + NO2 ; 4.8e-12, 120 +[ENEO2_NOb] ENEO2 + NO -> HONITR ; 5.1e-14, 693 +[HONITR_OH] HONITR + OH -> ONITR + HO2 ; 2e-12 +[MACRO2_CH3CO3] MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 + 0.53*GLYALD + 0.22*HYAC + 0.25*CH2O + 0.53*CH3CO3 ; 1.4e-11 +[MACRO2_CH3O2] MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO + 0.26*GLYALD + 0.26*CH3CO3 + 0.25*CH3OH + 0.23*HYAC ; 5e-13, 400 +[MACRO2_HO2] MACRO2 + HO2 -> MACROOH ; 8e-13, 700 +[MACRO2_NO3] MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO + 0.22*CO + 0.53*GLYALD + 0.22*HYAC + 0.53*CH3CO3 ; 2.4e-12 +[MACRO2_NOa] MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD + 0.25*CH3COCHO + 0.53*CH3CO3 + 0.22*HYAC + 0.22*CO ; 2.7e-12, 360 +[MACRO2_NOb] MACRO2 + NO -> HONITR ; 1.3e-13, 360 +[MACR_O3] MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 + 0.88*CH3COCHO + 0.33*HCOOH + 0.14*HO2 ; 1.5e-15, -2100 +[MACR_OH] MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 ; 9.6e-12, 360 +[MACROOH_OH] MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 ; 2.3e-11, 200 +[MCO3_CH3CO3] MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 ; 4.6e-12, 530 +[MCO3_CH3O2] MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 ; 2e-12, 500 +[MCO3_HO2] MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH + 0.45*CO2 + 0.45*CH2O + 0.45*CH3CO3 ; 4.3e-13, 1040 +[MCO3_MCO3] MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 ; 2.3e-12, 530 +[MCO3_NO] MCO3 + NO -> NO2 + CH2O + CH3CO3 ; 5.3e-12, 360 +[MCO3_NO3] MCO3 + NO3 -> NO2 + CH2O + CH3CO3 ; 5e-12 +[MEKO2_HO2] MEKO2 + HO2 -> 0.8*MEKOOH + 0.2*OH + 0.2*CH3CHO + 0.2*CH3CO3 ; 7.5e-13, 700 +[MEKO2_NO] MEKO2 + NO -> CH3CO3 + CH3CHO + NO2 ; 4.2e-12, 180 +[MEK_OH] MEK + OH -> MEKO2 ; 2.3e-12, -170 +[MEKOOH_OH] MEKOOH + OH -> MEKO2 ; 3.8e-12, 200 +[MPAN_OH_M] MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 + 0.5*NDEP + M ; 8e-27, 3.5, 3e-11, 0, 0.5 +[MVK_O3] MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*HCOOH ; 8.5e-16, -1520 +[MVK_OH] MVK + OH -> MACRO2 ; 4.13e-12, 452 +[tag_MCO3_NO2] MCO3 + NO2 + M -> MPAN + M ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 +[usr_MPAN_M] MPAN + M -> MCO3 + NO2 + M +********************************* +*** C5 +********************************* +[ALKNIT_OH] ALKNIT + OH -> 0.4*CH2O + 0.8*CH3CHO + 0.8*CH3COCH3 + NO2 ; 2.2e-12 +[ALKO2_HO2] ALKO2 + HO2 -> ALKOOH ; 7.5e-13, 700 +[ALKO2_NO] ALKO2 + NO -> 0.4*CH3CHO + 0.1*CH2O + 0.25*CH3COCH3 + HO2 + 0.8*MEK + NO2 ; 6.7e-12 +[ALKO2_NOb] ALKO2 + NO -> ALKNIT ; 5.4e-14, 870 +[ALKOOH_OH] ALKOOH + OH -> ALKO2 ; 3.8e-12, 200 +[BIGALK_OH] BIGALK + OH -> ALKO2 ; 3.5e-12 +[HPALD_OH] HPALD + OH -> XO2 ; 1.86e-11, 175 +[HYDRALD_OH] HYDRALD + OH -> XO2 ; 1.86e-11, 175 +[IEPOX_OH] IEPOX + OH -> XO2 ; 1.3e-11 +[ISOPAO2_CH3CO3] ISOPAO2 + CH3CO3 -> CH3O2 + HO2 + CH2O + 0.39*MACR + 0.61*MVK + CO2 ; 1.4e-11 +[ISOPAO2_CH3O2] ISOPAO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.5*CH2O + 0.31*MACR + 0.44*MVK ; 5e-13, 400 +[ISOPAO2_HO2] ISOPAO2 + HO2 -> ISOPOOH ; 8e-13, 700 +[ISOPAO2_NO] ISOPAO2 + NO -> 0.08*ISOPNITA + 0.92*NO2 + 0.36*MACR + 0.56*MVK + 0.92*CH2O + 0.92*HO2 ; 4.4e-12, 180 +[ISOPAO2_NO3] ISOPAO2 + NO3 -> NO2 + 0.4*MACR + 0.6*MVK + CH2O + HO2 ; 2.4e-12 +[ISOPBO2_CH3CO3] ISOPBO2 + CH3CO3 -> HYDRALD + CH3O2 + HO2 ; 1.4e-11 +[ISOPBO2_CH3O2] ISOPBO2 + CH3O2 -> 0.25*CH3OH + HO2 + 0.75*CH2O + 0.75*HYDRALD ; 5e-13, 400 +[ISOPBO2_HO2] ISOPBO2 + HO2 -> ISOPOOH ; 8e-13, 700 +[ISOPBO2_M] ISOPBO2 -> HPALD + HO2 ; 1.6e+09, -8300 +[ISOPBO2_NO] ISOPBO2 + NO -> 0.87*HYDRALD + 0.08*ISOPNITB + 0.92*NO2 + 0.92*HO2 + 0.05*GLYOXAL + 0.05*GLYALD + 0.05*CH3COCHO + 0.05*HYAC ; 4.4e-12, 180 +[ISOPBO2_NO3] ISOPBO2 + NO3 -> NO2 + 0.95*HYDRALD + HO2 + 0.05*GLYOXAL + 0.05*GLYALD + 0.05*CH3COCHO + 0.05*HYAC ; 2.4e-12 +[ISOPNITA_OH] ISOPNITA + OH -> 0.7*HYAC + 0.7*GLYALD + 0.7*NO2 + 0.3*CH2O + 0.3*HONITR + 0.3*HO2 ; 4e-11 +[ISOPNITB_OH] ISOPNITB + OH -> 0.5*HYAC + 0.5*GLYALD + 0.5*NOA + HO2 + 0.5*HONITR ; 4e-11 +[ISOP_NO3] ISOP + NO3 -> ISOPNO3 ; 3.03e-12, -446 +[ISOPNO3_CH3CO3] ISOPNO3 + CH3CO3 -> NC4CHO + CH3O2 + HO2 ; 1.4e-11 +[ISOPNO3_CH3O2] ISOPNO3 + CH3O2 -> 0.8*NC4CHO + 1.2*HO2 + 0.8*CH2O + 0.2*CH3OH + 0.2*NC4CH2OH ; 5e-13, 400 +[ISOPNO3_HO2] ISOPNO3 + HO2 -> ISOPNOOH ; 8e-13, 700 +[ISOPNO3_NO] ISOPNO3 + NO -> NC4CHO + NO2 + HO2 ; 2.7e-12, 360 +[ISOPNO3_NO3] ISOPNO3 + NO3 -> NC4CHO + NO2 + HO2 ; 2.4e-12 +[ISOPNOOH_OH] ISOPNOOH + OH -> NOA + HO2 ; 4e-11 +[ISOP_O3] ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*HCOOH + 0.62*CO + 0.32*OH + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 + 0.05*CH3O2 ; 1.05e-14, -2000 +[ISOP_OH] ISOP + OH -> 0.6*ISOPAO2 + 0.4*ISOPBO2 ; 2.54e-11, 410 +[ISOPOOH_OH] ISOPOOH + OH -> 0.4*XO2 + 0.6*IEPOX + 0.6*OH ; 1.52e-11, 200 +[NC4CH2OH_OH] NC4CH2OH + OH -> GLYALD + NOA + HO2 ; 7e-11 +[NC4CHO_OH] NC4CHO + OH -> GLYOXAL + NOA + HO2 ; 1e-10 +[XO2_CH3CO3] XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 ; 1.3e-12, 640 +[XO2_CH3O2] XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD ; 5e-13, 400 +[XO2_HO2] XO2 + HO2 -> XOOH ; 8e-13, 700 +[XO2_NO] XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD ; 2.7e-12, 360 +[XO2_NO3] XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL + 0.25*CH3COCHO + 0.25*GLYALD ; 2.4e-12 +[XOOH_OH] XOOH + OH -> 0.5*XO2 + 0.5*OH ; 1.52e-12, 200 +********************************* +*** C7 +********************************* +[ACBZO2_HO2] ACBZO2 + HO2 -> 0.4*C6H5O2 + 0.4*OH ; 4.3e-13, 1040 +[ACBZO2_NO] ACBZO2 + NO -> C6H5O2 + NO2 ; 7.5e-12, 290 +[BENZENE_OH] BENZENE + OH -> 0.53*PHENOL + 0.12*BEPOMUC + 0.65*HO2 + 0.35*BENZO2 ; 2.3e-12, -193 +[BENZO2_HO2] BENZO2 + HO2 -> BENZOOH ; 7.5e-13, 700 +[BENZO2_NO] BENZO2 + NO -> NO2 + GLYOXAL + 0.5*BIGALD1 + HO2 ; 2.6e-12, 365 +[BENZOOH_OH] BENZOOH + OH -> BENZO2 ; 3.8e-12, 200 +[BZALD_OH] BZALD + OH -> ACBZO2 ; 5.9e-12, 225 +[BZOO_HO2] BZOO + HO2 -> BZOOH ; 7.5e-13, 700 +[BZOOH_OH] BZOOH + OH -> BZOO ; 3.8e-12, 200 +[BZOO_NO] BZOO + NO -> BZALD + NO2 + HO2 ; 2.6e-12, 365 +[C6H5O2_HO2] C6H5O2 + HO2 -> C6H5OOH ; 7.5e-13, 700 +[C6H5O2_NO] C6H5O2 + NO -> PHENO + NO2 ; 2.6e-12, 365 +[C6H5OOH_OH] C6H5OOH + OH -> C6H5O2 ; 3.8e-12, 200 +[CRESOL_OH] CRESOL + OH -> 0.2*PHENO2 + 0.73*HO2 + 0.07*PHENO ; 4.7e-11 +[DICARBO2_HO2] DICARBO2 + HO2 -> 0.4*OH + 0.07*HO2 + 0.07*CH3COCHO + 0.07*CO + 0.33*CH3O2 ; 4.3e-13, 1040 +[DICARBO2_NO] DICARBO2 + NO -> NO2 + 0.17*HO2 + 0.17*CH3COCHO + 0.17*CO + 0.83*CH3O2 ; 7.5e-12, 290 +[DICARBO2_NO2] DICARBO2 + NO2 + M -> M + 1*NDEP ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 +[MALO2_HO2] MALO2 + HO2 -> 0.16*GLYOXAL + 0.16*HO2 + 0.16*CO ; 4.3e-13, 1040 +[MALO2_NO] MALO2 + NO -> 0.4*GLYOXAL + 0.4*HO2 + 0.4*CO + NO2 ; 7.5e-12, 290 +[MALO2_NO2] MALO2 + NO2 + M -> M + 1*NDEP ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 +[MDIALO2_HO2] MDIALO2 + HO2 -> 0.4*OH + 0.33*HO2 + 0.07*CH3COCHO + 0.14*CO + 0.07*CH3O2 + 0.07*GLYOXAL ; 4.3e-13, 1040 +[MDIALO2_NO] MDIALO2 + NO -> NO2 + 0.83*HO2 + 0.17*CH3COCHO + 0.35*CO + 0.17*CH3O2 + 0.17*GLYOXAL ; 7.5e-12, 290 +[MDIALO2_NO2] MDIALO2 + NO2 + M -> M + 1*NDEP ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 +[PHENO2_HO2] PHENO2 + HO2 -> PHENOOH ; 7.5e-13, 700 +[PHENO2_NO] PHENO2 + NO -> HO2 + 0.7*GLYOXAL + NO2 ; 2.6e-12, 365 +[PHENOL_OH] PHENOL + OH -> 0.14*PHENO2 + 0.8*HO2 + 0.06*PHENO ; 4.7e-13, 1220 +[PHENO_NO2] PHENO + NO2 -> 1*NDEP ; 2.1e-12 +[PHENO_O3] PHENO + O3 -> C6H5O2 ; 2.8e-13 +[PHENOOH_OH] PHENOOH + OH -> PHENO2 ; 3.8e-12, 200 +[tag_ACBZO2_NO2] ACBZO2 + NO2 + M -> PBZNIT + M ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 +[TOLO2_HO2] TOLO2 + HO2 -> TOLOOH ; 7.5e-13, 700 +[TOLO2_NO] TOLO2 + NO -> NO2 + 0.6*GLYOXAL + 0.4*CH3COCHO + HO2 + 0.2*BIGALD1 + 0.2*BIGALD2 + 0.2*BIGALD3 ; 2.6e-12, 365 +[TOLOOH_OH] TOLOOH + OH -> TOLO2 ; 3.8e-12, 200 +[TOLUENE_OH] TOLUENE + OH -> 0.18*CRESOL + 0.1*TEPOMUC + 0.07*BZOO + 0.65*TOLO2 + 0.28*HO2 ; 1.7e-12, 352 +[usr_PBZNIT_M] PBZNIT + M -> ACBZO2 + NO2 + M +[XYLENES_OH] XYLENES + OH -> 0.15*XYLOL + 0.23*TEPOMUC + 0.06*BZOO + 0.56*XYLENO2 + 0.38*HO2 ; 1.7e-11 +[XYLENO2_HO2] XYLENO2 + HO2 -> XYLENOOH ; 7.5e-13, 700 +[XYLENO2_NO] XYLENO2 + NO -> NO2 + HO2 + 0.34*GLYOXAL + 0.54*CH3COCHO + 0.06*BIGALD1 + 0.2*BIGALD2 + 0.15*BIGALD3 + 0.21*BIGALD4 ; 2.6e-12, 365 +[XYLENOOH_OH] XYLENOOH + OH -> XYLENO2 ; 3.8e-12, 200 +[XYLOLO2_HO2] XYLOLO2 + HO2 -> XYLOLOOH ; 7.5e-13, 700 +[XYLOLO2_NO] XYLOLO2 + NO -> HO2 + NO2 + 0.17*GLYOXAL + 0.51*CH3COCHO ; 2.6e-12, 365 +[XYLOL_OH] XYLOL + OH -> 0.3*XYLOLO2 + 0.63*HO2 + 0.07*PHENO ; 8.4e-11 +[XYLOLOOH_OH] XYLOLOOH + OH -> XYLOLO2 ; 3.8e-12, 200 +********************************* +*** C10 +********************************* +[BCARY_NO3] BCARY + NO3 -> NTERPO2 ; 1.9e-11 +[BCARY_O3] BCARY + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + 0.06*RO2 ; 1.2e-14 +[BCARY_OH] BCARY + OH -> TERPO2 ; 2e-10 +[MTERP_NO3] MTERP + NO3 -> NTERPO2 ; 1.2e-12, 490 +[MTERP_O3] MTERP + O3 -> 0.33*TERPROD1 + 0.3*TERPROD2 + 0.63*OH + 0.57*HO2 + 0.23*CO + 0.27*CO2 + 0.52*CH3COCH3 + 0.34*CH2O + 0.1*BIGALD + 0.05*HCOOH + 0.05*BIGALK + 0.06*CH3CO3 + 0.06*RO2 ; 6.3e-16, -580 +[MTERP_OH] MTERP + OH -> TERPO2 ; 1.2e-11, 440 +[NTERPO2_CH3O2] NTERPO2 + CH3O2 -> 0.5*TERPNIT + 0.75*CH2O + 0.25*CH3OH + 0.5*HO2 + 0.5*TERPROD1 + 0.5*NO2 ; 2e-12, 500 +[NTERPO2_HO2] NTERPO2 + HO2 -> NTERPOOH ; 7.5e-13, 700 +[NTERPO2_NO] NTERPO2 + NO -> 0.2*TERPNIT + 1.6*NO2 + 0.8*TERPROD1 + 0.2*NDEP ; 4.2e-12, 180 +[NTERPO2_NO3] NTERPO2 + NO3 -> 2*NO2 + TERPROD1 ; 2.4e-12 +[NTERPOOH_OH] NTERPOOH + OH -> NTERPO2 ; 2e-11 +[TERP2O2_CH3O2] TERP2O2 + CH3O2 -> TERPROD2 + 0.93*CH2O + 0.25*CH3OH + HO2 + 0.5*CO2 + 0.125*CO + 0.125*GLYALD + 0.15*CH3COCH3 ; 2e-12, 500 +[TERP2O2_HO2] TERP2O2 + HO2 -> TERP2OOH ; 7.5e-13, 700 +[TERP2O2_NO] TERP2O2 + NO -> 0.1*ONITR + 0.9*NO2 + 0.34*CH2O + 0.27*CH3COCH3 + 0.225*CO + 0.9*CO2 + 0.9*TERPROD2 + 0.9*HO2 + 0.225*GLYALD ; 4.2e-12, 180 +[TERP2OOH_OH] TERP2OOH + OH -> TERP2O2 ; 2.3e-11 +[TERPNIT_OH] TERPNIT + OH -> NO2 + TERPROD1 ; 2e-11 +[TERPO2_CH3O2] TERPO2 + CH3O2 -> TERPROD1 + 0.95*CH2O + 0.25*CH3OH + HO2 + 0.025*CH3COCH3 ; 2e-12, 500 +[TERPO2_HO2] TERPO2 + HO2 -> TERPOOH ; 7.5e-13, 700 +[TERPO2_NO] TERPO2 + NO -> 0.2*TERPNIT + 0.8*NO2 + 0.32*CH2O + 0.04*CH3COCH3 + 0.8*TERPROD1 + 0.8*HO2 ; 4.2e-12, 180 +[TERPOOH_OH] TERPOOH + OH -> TERPO2 ; 3.3e-11 +[TERPROD1_NO3] TERPROD1 + NO3 -> 0.5*TERP2O2 + 0.5*NTERPO2 + 0.5*NDEP ; 1e-12 +[TERPROD1_OH] TERPROD1 + OH -> TERP2O2 ; 5.7e-11 +[TERPROD2_OH] TERPROD2 + OH -> 0.15*RO2 + 0.68*CH2O + 1.8*CO2 + 0.5*CH3COCH3 + 0.65*CH3CO3 + 0.2*HO2 + 0.7*CO ; 3.4e-11 +********************************* +*** Sulfur +********************************* +[DMS_NO3] DMS + NO3 -> SO2 + HNO3 ; 1.9e-13, 520 +[DMS_OHa] DMS + OH -> SO2 ; 1.1e-11, -280 +[OCS_O] OCS + O -> SO + CO ; 2.1e-11, -2200 +[OCS_OH] OCS + OH -> SO2 + CO + H ; 7.2e-14, -1070 +[S_O2] S + O2 -> SO + O ; 2.3e-12 +[SO2_OH_M] SO2 + OH + M -> SO3 + HO2 ; 2.9e-31, 4.1, 1.7e-12, -0.2, 0.6 +[S_O3] S + O3 -> SO + O2 ; 1.2e-11 +[SO_BRO] SO + BRO -> SO2 + BR ; 5.7e-11 +[SO_CLO] SO + CLO -> SO2 + CL ; 2.8e-11 +[S_OH] S + OH -> SO + H ; 6.6e-11 +[SO_NO2] SO + NO2 -> SO2 + NO ; 1.4e-11 +[SO_O2] SO + O2 -> SO2 + O ; 1.6e-13, -2280 +[SO_O3] SO + O3 -> SO2 + O2 ; 3.4e-12, -1100 +[SO_OCLO] SO + OCLO -> SO2 + CLO ; 1.9e-12 +[SO_OH] SO + OH -> SO2 + H ; 2.6e-11, 330 +[usr_DMS_OH] DMS + OH -> 0.5*SO2 + 0.5*HO2 +[usr_SO3_H2O] SO3 + H2O -> H2SO4 +********************************* +*** Tropospheric Aerosol +********************************* +[NH3_OH] NH3 + OH -> H2O + 1*NHDEP ; 1.7e-12, -710 +[usr_HO2_aer] HO2 -> H2O +[usr_HONITR_aer] HONITR -> HNO3 +[usr_ISOPNITA_aer] ISOPNITA -> HNO3 +[usr_ISOPNITB_aer] ISOPNITB -> HNO3 +[usr_N2O5_aer] N2O5 -> 2*HNO3 +[usr_NC4CH2OH_aer] NC4CH2OH -> HNO3 +[usr_NC4CHO_aer] NC4CHO -> HNO3 +[usr_NH4_strat_tau] NH4 -> 1*NHDEP ; 6.34e-08 +[usr_NO2_aer] NO2 -> 0.5*OH + 0.5*NO + 0.5*HNO3 +[usr_NO3_aer] NO3 -> HNO3 +[usr_NTERPOOH_aer] NTERPOOH -> HNO3 +[usr_ONITR_aer] ONITR -> HNO3 +[usr_TERPNIT_aer] TERPNIT -> HNO3 +********************************* +*** SOA +********************************* +[BCARY_NO3_vbs] BCARY + NO3 -> BCARY + NO3 + 0.17493*SOAG3 + 0.59019*SOAG4 ; 1.9e-11 +[BCARYO2_HO2_vbs] BCARYO2VBS + HO2 -> HO2 + 0.2202*SOAG0 + 0.2067*SOAG1 + 0.0653*SOAG2 + 0.1284*SOAG3 + 0.114*SOAG4 ; 2.75e-13, 1300 +[BCARYO2_NO_vbs] BCARYO2VBS + NO -> NO + 0.1279*SOAG0 + 0.1792*SOAG1 + 0.0676*SOAG2 + 0.079*SOAG3 + 0.1254*SOAG4 ; 2.7e-12, 360 +[BCARY_O3_vbs] BCARY + O3 -> BCARY + O3 + 0.2202*SOAG0 + 0.2067*SOAG1 + 0.0653*SOAG2 + 0.1284*SOAG3 + 0.114*SOAG4 ; 1.2e-14 +[BCARY_OH_vbs] BCARY + OH -> BCARY + OH + BCARYO2VBS ; 2e-10 +[BENZENE_OH_vbs] BENZENE + OH -> BENZENE + OH + BENZO2VBS ; 2.3e-12, -193 +[BENZO2_HO2_vbs] BENZO2VBS + HO2 -> HO2 + 0.0023*SOAG0 + 0.0008*SOAG1 + 0.0843*SOAG2 + 0.0443*SOAG3 + 0.1621*SOAG4 ; 7.5e-13, 700 +[BENZO2_NO_vbs] BENZO2VBS + NO -> NO + 0.0097*SOAG0 + 0.0034*SOAG1 + 0.1579*SOAG2 + 0.0059*SOAG3 + 0.0536*SOAG4 ; 2.6e-12, 365 +[ISOP_NO3_vbs] ISOP + NO3 -> ISOP + NO3 + 0.059024*SOAG3 + 0.025024*SOAG4 ; 3.03e-12, -446 +[ISOPO2_HO2_vbs] ISOPO2VBS + HO2 -> HO2 + 0.0031*SOAG0 + 0.0035*SOAG1 + 0.0003*SOAG2 + 0.0271*SOAG3 + 0.0474*SOAG4 ; 2.12e-13, 1300 +[ISOPO2_NO_vbs] ISOPO2VBS + NO -> NO + 0.0003*SOAG0 + 0.0003*SOAG1 + 0.0073*SOAG2 + 0.0057*SOAG3 + 0.0623*SOAG4 ; 2.7e-12, 350 +[ISOP_O3_vbs] ISOP + O3 -> ISOP + O3 + 0.0033*SOAG3 ; 1.05e-14, -2000 +[ISOP_OH_vbs] ISOP + OH -> ISOP + OH + ISOPO2VBS ; 2.54e-11, 410 +[IVOCO2_HO2_vbs] IVOCO2VBS + HO2 -> HO2 + 0.2381*SOAG0 + 0.1308*SOAG1 + 0.0348*SOAG2 + 0.0076*SOAG3 + 0.0113*SOAG4 ; 7.5e-13, 700 +[IVOCO2_NO_vbs] IVOCO2VBS + NO -> NO + 0.1056*SOAG0 + 0.1026*SOAG1 + 0.0521*SOAG2 + 0.0143*SOAG3 + 0.0166*SOAG4 ; 2.6e-12, 365 +[IVOC_OH_vbs] IVOC + OH -> OH + IVOCO2VBS ; 1.34e-11 +[MTERP_NO3_vbs] MTERP + NO3 -> MTERP + NO3 + 0.17493*SOAG3 + 0.59019*SOAG4 ; 1.2e-12, 490 +[MTERPO2_HO2_vbs] MTERPO2VBS + HO2 -> HO2 + 0.0508*SOAG0 + 0.1149*SOAG1 + 0.0348*SOAG2 + 0.0554*SOAG3 + 0.1278*SOAG4 ; 2.6e-13, 1300 +[MTERPO2_NO_vbs] MTERPO2VBS + NO -> NO + 0.0245*SOAG0 + 0.0082*SOAG1 + 0.0772*SOAG2 + 0.0332*SOAG3 + 0.13*SOAG4 ; 2.7e-12, 360 +[MTERP_O3_vbs] MTERP + O3 -> MTERP + O3 + 0.0508*SOAG0 + 0.1149*SOAG1 + 0.0348*SOAG2 + 0.0554*SOAG3 + 0.1278*SOAG4 ; 6.3e-16, -580 +[MTERP_OH_vbs] MTERP + OH -> MTERP + OH + MTERPO2VBS ; 1.2e-11, 440 +[SVOC_OH] SVOC + OH -> OH + 0.5931*SOAG0 + 0.1534*SOAG1 + 0.0459*SOAG2 + 0.0085*SOAG3 + 0.0128*SOAG4 ; 1.34e-11 +[TOLUENE_OH_vbs] TOLUENE + OH -> TOLUENE + OH + TOLUO2VBS ; 1.7e-12, 352 +[TOLUO2_HO2_vbs] TOLUO2VBS + HO2 -> HO2 + 0.1364*SOAG0 + 0.0101*SOAG1 + 0.0763*SOAG2 + 0.2157*SOAG3 + 0.0738*SOAG4 ; 7.5e-13, 700 +[TOLUO2_NO_vbs] TOLUO2VBS + NO -> NO + 0.0154*SOAG0 + 0.0452*SOAG1 + 0.0966*SOAG2 + 0.0073*SOAG3 + 0.238*SOAG4 ; 2.6e-12, 365 +[usr_GLYOXAL_aer] GLYOXAL -> SOAG0 +[XYLENES_OH_vbs] XYLENES + OH -> XYLENES + OH + XYLEO2VBS ; 1.7e-11 +[XYLEO2_HO2_vbs] XYLEO2VBS + HO2 -> HO2 + 0.1677*SOAG0 + 0.0174*SOAG1 + 0.086*SOAG2 + 0.0512*SOAG3 + 0.1598*SOAG4 ; 7.5e-13, 700 +[XYLEO2_NO_vbs] XYLEO2VBS + NO -> NO + 0.0063*SOAG0 + 0.0237*SOAG1 + 0.0025*SOAG2 + 0.011*SOAG3 + 0.1185*SOAG4 ; 2.6e-12, 365 +********************************* +*** Stratospheric Aerosol +********************************* +[het1] N2O5 -> 2*HNO3 +[het10] HOCL + HCL -> CL2 + H2O +[het11] BRONO2 -> HOBR + HNO3 +[het12] N2O5 -> 2*HNO3 +[het13] CLONO2 -> HOCL + HNO3 +[het14] BRONO2 -> HOBR + HNO3 +[het15] CLONO2 + HCL -> CL2 + HNO3 +[het16] HOCL + HCL -> CL2 + H2O +[het17] HOBR + HCL -> BRCL + H2O +[het2] CLONO2 -> HOCL + HNO3 +[het3] BRONO2 -> HOBR + HNO3 +[het4] CLONO2 + HCL -> CL2 + HNO3 +[het5] HOCL + HCL -> CL2 + H2O +[het6] HOBR + HCL -> BRCL + H2O +[het7] N2O5 -> 2*HNO3 +[het8] CLONO2 -> HOCL + HNO3 +[het9] CLONO2 + HCL -> CL2 + HNO3 +********************************* +*** Tracers +********************************* +[NH_50_tau] NH_50 -> ; 2.31e-07 +[NH_5_tau] NH_5 -> ; 2.31e-06 +[ST80_25_tau] ST80_25 -> ; 4.63e-07 + End Reactions + + Ext Forcing + SVOC <- dataset + CO <- dataset + bc_a4 <- dataset + NO2 <- dataset + num_a1 <- dataset + num_a2 <- dataset + num_a4 <- dataset + pom_a4 <- dataset + SO2 <- dataset + so4_a1 <- dataset + so4_a2 <- dataset + H2O <- dataset + NO + End Ext Forcing + + End Chemistry + + SIMULATION PARAMETERS + + Version Options + machine = nec + model = cam + model_architecture = VECTOR + vector_length = 32 + architecture = hybrid + namemod = on + End Version Options + + + End Simulation Parameters diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mods.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mods.F90 new file mode 100644 index 0000000000..8f6f3ad4cb --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/chem_mods.F90 @@ -0,0 +1,51 @@ + module chem_mods +!-------------------------------------------------------------- +! ... Basic chemistry parameters and arrays +!-------------------------------------------------------------- + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none + save + integer, parameter :: phtcnt = 123, & ! number of photolysis reactions + rxntot = 553, & ! number of total reactions + gascnt = 430, & ! number of gas phase reactions + nabscol = 2, & ! number of absorbing column densities + gas_pcnst = 233, & ! number of "gas phase" species + nfs = 2, & ! number of "fixed" species + relcnt = 0, & ! number of relationship species + grpcnt = 0, & ! number of group members + nzcnt = 2374, & ! number of non-zero matrix entries + extcnt = 13, & ! number of species with external forcing + clscnt1 = 2, & ! number of species in explicit class + clscnt2 = 0, & ! number of species in hov class + clscnt3 = 0, & ! number of species in ebi class + clscnt4 = 231, & ! number of species in implicit class + clscnt5 = 0, & ! number of species in rodas class + indexm = 1, & ! index of total atm density in invariant array + indexh2o = 0, & ! index of water vapor density + clsze = 1, & ! loop length for implicit chemistry + rxt_tag_cnt = 553, & + enthalpy_cnt = 27, & + nslvd = 41 + integer :: clscnt(5) = 0 + integer :: cls_rxt_cnt(4,5) = 0 + integer :: clsmap(gas_pcnst,5) = 0 + integer :: permute(gas_pcnst,5) = 0 + integer :: diag_map(clscnt4) = 0 + real(r8) :: adv_mass(gas_pcnst) = 0._r8 + real(r8) :: crb_mass(gas_pcnst) = 0._r8 + real(r8) :: fix_mass(max(1,nfs)) + real(r8), allocatable :: cph_enthalpy(:) + integer, allocatable :: cph_rid(:) + integer, allocatable :: num_rnts(:) + integer, allocatable :: rxt_tag_map(:) + real(r8), allocatable :: pht_alias_mult(:,:) + character(len=32), allocatable :: rxt_tag_lst(:) + character(len=16), allocatable :: pht_alias_lst(:,:) + character(len=16) :: inv_lst(max(1,nfs)) + character(len=16) :: extfrc_lst(max(1,extcnt)) + logical :: frc_from_dataset(max(1,extcnt)) + logical :: is_vector + logical :: is_scalar + character(len=16) :: slvd_lst(max(1,nslvd)) + integer, parameter :: veclen = 32 + end module chem_mods diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/m_rxt_id.F90 new file mode 100644 index 0000000000..50727810ce --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/m_rxt_id.F90 @@ -0,0 +1,556 @@ + module m_rxt_id + implicit none + integer, parameter :: rid_jh2o_b = 1 + integer, parameter :: rid_jh2o_a = 2 + integer, parameter :: rid_jh2o_c = 3 + integer, parameter :: rid_jh2o2 = 4 + integer, parameter :: rid_jo2_a = 5 + integer, parameter :: rid_jo2_b = 6 + integer, parameter :: rid_jo3_a = 7 + integer, parameter :: rid_jo3_b = 8 + integer, parameter :: rid_jhno3 = 9 + integer, parameter :: rid_jho2no2_a = 10 + integer, parameter :: rid_jho2no2_b = 11 + integer, parameter :: rid_jn2o = 12 + integer, parameter :: rid_jn2o5_a = 13 + integer, parameter :: rid_jn2o5_b = 14 + integer, parameter :: rid_jno = 15 + integer, parameter :: rid_jno2 = 16 + integer, parameter :: rid_jno3_b = 17 + integer, parameter :: rid_jno3_a = 18 + integer, parameter :: rid_jalknit = 19 + integer, parameter :: rid_jalkooh = 20 + integer, parameter :: rid_jbenzooh = 21 + integer, parameter :: rid_jbepomuc = 22 + integer, parameter :: rid_jbigald = 23 + integer, parameter :: rid_jbigald1 = 24 + integer, parameter :: rid_jbigald2 = 25 + integer, parameter :: rid_jbigald3 = 26 + integer, parameter :: rid_jbigald4 = 27 + integer, parameter :: rid_jbzooh = 28 + integer, parameter :: rid_jc2h5ooh = 29 + integer, parameter :: rid_jc3h7ooh = 30 + integer, parameter :: rid_jc6h5ooh = 31 + integer, parameter :: rid_jch2o_b = 32 + integer, parameter :: rid_jch2o_a = 33 + integer, parameter :: rid_jch3cho = 34 + integer, parameter :: rid_jacet = 35 + integer, parameter :: rid_jmgly = 36 + integer, parameter :: rid_jch3co3h = 37 + integer, parameter :: rid_jch3ooh = 38 + integer, parameter :: rid_jch4_b = 39 + integer, parameter :: rid_jch4_a = 40 + integer, parameter :: rid_jco2 = 41 + integer, parameter :: rid_jeooh = 42 + integer, parameter :: rid_jglyald = 43 + integer, parameter :: rid_jglyoxal = 44 + integer, parameter :: rid_jhonitr = 45 + integer, parameter :: rid_jhpald = 46 + integer, parameter :: rid_jhyac = 47 + integer, parameter :: rid_jisopnooh = 48 + integer, parameter :: rid_jisopooh = 49 + integer, parameter :: rid_jmacr_a = 50 + integer, parameter :: rid_jmacr_b = 51 + integer, parameter :: rid_jmek = 52 + integer, parameter :: rid_jmekooh = 53 + integer, parameter :: rid_jmpan = 54 + integer, parameter :: rid_jmvk = 55 + integer, parameter :: rid_jnc4cho = 56 + integer, parameter :: rid_jnoa = 57 + integer, parameter :: rid_jnterpooh = 58 + integer, parameter :: rid_jonitr = 59 + integer, parameter :: rid_jpan = 60 + integer, parameter :: rid_jphenooh = 61 + integer, parameter :: rid_jpooh = 62 + integer, parameter :: rid_jrooh = 63 + integer, parameter :: rid_jtepomuc = 64 + integer, parameter :: rid_jterp2ooh = 65 + integer, parameter :: rid_jterpnit = 66 + integer, parameter :: rid_jterpooh = 67 + integer, parameter :: rid_jterprd1 = 68 + integer, parameter :: rid_jterprd2 = 69 + integer, parameter :: rid_jtolooh = 70 + integer, parameter :: rid_jxooh = 71 + integer, parameter :: rid_jxylenooh = 72 + integer, parameter :: rid_jxylolooh = 73 + integer, parameter :: rid_jbrcl = 74 + integer, parameter :: rid_jbro = 75 + integer, parameter :: rid_jbrono2_b = 76 + integer, parameter :: rid_jbrono2_a = 77 + integer, parameter :: rid_jccl4 = 78 + integer, parameter :: rid_jcf2clbr = 79 + integer, parameter :: rid_jcf3br = 80 + integer, parameter :: rid_jcfcl3 = 81 + integer, parameter :: rid_jcfc113 = 82 + integer, parameter :: rid_jcfc114 = 83 + integer, parameter :: rid_jcfc115 = 84 + integer, parameter :: rid_jcf2cl2 = 85 + integer, parameter :: rid_jch2br2 = 86 + integer, parameter :: rid_jch3br = 87 + integer, parameter :: rid_jch3ccl3 = 88 + integer, parameter :: rid_jch3cl = 89 + integer, parameter :: rid_jchbr3 = 90 + integer, parameter :: rid_jcl2 = 91 + integer, parameter :: rid_jcl2o2 = 92 + integer, parameter :: rid_jclo = 93 + integer, parameter :: rid_jclono2_a = 94 + integer, parameter :: rid_jclono2_b = 95 + integer, parameter :: rid_jcof2 = 96 + integer, parameter :: rid_jcofcl = 97 + integer, parameter :: rid_jh2402 = 98 + integer, parameter :: rid_jhbr = 99 + integer, parameter :: rid_jhcfc141b = 100 + integer, parameter :: rid_jhcfc142b = 101 + integer, parameter :: rid_jhcfc22 = 102 + integer, parameter :: rid_jhcl = 103 + integer, parameter :: rid_jhf = 104 + integer, parameter :: rid_jhobr = 105 + integer, parameter :: rid_jhocl = 106 + integer, parameter :: rid_joclo = 107 + integer, parameter :: rid_jsf6 = 108 + integer, parameter :: rid_jh2so4 = 109 + integer, parameter :: rid_jocs = 110 + integer, parameter :: rid_jso = 111 + integer, parameter :: rid_jso2 = 112 + integer, parameter :: rid_jso3 = 113 + integer, parameter :: rid_jsoa1_a1 = 114 + integer, parameter :: rid_jsoa1_a2 = 115 + integer, parameter :: rid_jsoa2_a1 = 116 + integer, parameter :: rid_jsoa2_a2 = 117 + integer, parameter :: rid_jsoa3_a1 = 118 + integer, parameter :: rid_jsoa3_a2 = 119 + integer, parameter :: rid_jsoa4_a1 = 120 + integer, parameter :: rid_jsoa4_a2 = 121 + integer, parameter :: rid_jsoa5_a1 = 122 + integer, parameter :: rid_jsoa5_a2 = 123 + integer, parameter :: rid_E90_tau = 124 + integer, parameter :: rid_ag1 = 125 + integer, parameter :: rid_ag2 = 126 + integer, parameter :: rid_O1D_H2 = 127 + integer, parameter :: rid_O1D_H2O = 128 + integer, parameter :: rid_O1D_N2 = 129 + integer, parameter :: rid_O1D_O2 = 130 + integer, parameter :: rid_O1D_O2b = 131 + integer, parameter :: rid_O1D_O3 = 132 + integer, parameter :: rid_O1D_O3a = 133 + integer, parameter :: rid_O2_1D_N2 = 134 + integer, parameter :: rid_O2_1D_O = 135 + integer, parameter :: rid_O2_1D_O2 = 136 + integer, parameter :: rid_O2_1S_CO2 = 137 + integer, parameter :: rid_O2_1S_N2 = 138 + integer, parameter :: rid_O2_1S_O = 139 + integer, parameter :: rid_O2_1S_O2 = 140 + integer, parameter :: rid_O2_1S_O3 = 141 + integer, parameter :: rid_O_O3 = 142 + integer, parameter :: rid_usr_O_O = 143 + integer, parameter :: rid_usr_O_O2 = 144 + integer, parameter :: rid_H2_O = 145 + integer, parameter :: rid_H2O2_O = 146 + integer, parameter :: rid_H_HO2 = 147 + integer, parameter :: rid_H_HO2a = 148 + integer, parameter :: rid_H_HO2b = 149 + integer, parameter :: rid_H_O2 = 150 + integer, parameter :: rid_HO2_O = 151 + integer, parameter :: rid_HO2_O3 = 152 + integer, parameter :: rid_H_O3 = 153 + integer, parameter :: rid_OH_H2 = 154 + integer, parameter :: rid_OH_H2O2 = 155 + integer, parameter :: rid_OH_HO2 = 156 + integer, parameter :: rid_OH_O = 157 + integer, parameter :: rid_OH_O3 = 158 + integer, parameter :: rid_OH_OH = 159 + integer, parameter :: rid_OH_OH_M = 160 + integer, parameter :: rid_usr_HO2_HO2 = 161 + integer, parameter :: rid_HO2NO2_OH = 162 + integer, parameter :: rid_N_NO = 163 + integer, parameter :: rid_N_NO2a = 164 + integer, parameter :: rid_N_NO2b = 165 + integer, parameter :: rid_N_NO2c = 166 + integer, parameter :: rid_N_O2 = 167 + integer, parameter :: rid_NO2_O = 168 + integer, parameter :: rid_NO2_O3 = 169 + integer, parameter :: rid_NO2_O_M = 170 + integer, parameter :: rid_NO3_HO2 = 171 + integer, parameter :: rid_NO3_NO = 172 + integer, parameter :: rid_NO3_O = 173 + integer, parameter :: rid_NO3_OH = 174 + integer, parameter :: rid_N_OH = 175 + integer, parameter :: rid_NO_HO2 = 176 + integer, parameter :: rid_NO_O3 = 177 + integer, parameter :: rid_NO_O_M = 178 + integer, parameter :: rid_O1D_N2Oa = 179 + integer, parameter :: rid_O1D_N2Ob = 180 + integer, parameter :: rid_tag_NO2_HO2 = 181 + integer, parameter :: rid_tag_NO2_NO3 = 182 + integer, parameter :: rid_tag_NO2_OH = 183 + integer, parameter :: rid_usr_HNO3_OH = 184 + integer, parameter :: rid_usr_HO2NO2_M = 185 + integer, parameter :: rid_usr_N2O5_M = 186 + integer, parameter :: rid_CL_CH2O = 187 + integer, parameter :: rid_CL_CH4 = 188 + integer, parameter :: rid_CL_H2 = 189 + integer, parameter :: rid_CL_H2O2 = 190 + integer, parameter :: rid_CL_HO2a = 191 + integer, parameter :: rid_CL_HO2b = 192 + integer, parameter :: rid_CL_O3 = 193 + integer, parameter :: rid_CLO_CH3O2 = 194 + integer, parameter :: rid_CLO_CLOa = 195 + integer, parameter :: rid_CLO_CLOb = 196 + integer, parameter :: rid_CLO_CLOc = 197 + integer, parameter :: rid_CLO_HO2 = 198 + integer, parameter :: rid_CLO_NO = 199 + integer, parameter :: rid_CLONO2_CL = 200 + integer, parameter :: rid_CLO_NO2_M = 201 + integer, parameter :: rid_CLONO2_O = 202 + integer, parameter :: rid_CLONO2_OH = 203 + integer, parameter :: rid_CLO_O = 204 + integer, parameter :: rid_CLO_OHa = 205 + integer, parameter :: rid_CLO_OHb = 206 + integer, parameter :: rid_HCL_O = 207 + integer, parameter :: rid_HCL_OH = 208 + integer, parameter :: rid_HOCL_CL = 209 + integer, parameter :: rid_HOCL_O = 210 + integer, parameter :: rid_HOCL_OH = 211 + integer, parameter :: rid_O1D_CCL4 = 212 + integer, parameter :: rid_O1D_CF2CLBR = 213 + integer, parameter :: rid_O1D_CFC11 = 214 + integer, parameter :: rid_O1D_CFC113 = 215 + integer, parameter :: rid_O1D_CFC114 = 216 + integer, parameter :: rid_O1D_CFC115 = 217 + integer, parameter :: rid_O1D_CFC12 = 218 + integer, parameter :: rid_O1D_HCLa = 219 + integer, parameter :: rid_O1D_HCLb = 220 + integer, parameter :: rid_tag_CLO_CLO_M = 221 + integer, parameter :: rid_usr_CL2O2_M = 222 + integer, parameter :: rid_BR_CH2O = 223 + integer, parameter :: rid_BR_HO2 = 224 + integer, parameter :: rid_BR_O3 = 225 + integer, parameter :: rid_BRO_BRO = 226 + integer, parameter :: rid_BRO_CLOa = 227 + integer, parameter :: rid_BRO_CLOb = 228 + integer, parameter :: rid_BRO_CLOc = 229 + integer, parameter :: rid_BRO_HO2 = 230 + integer, parameter :: rid_BRO_NO = 231 + integer, parameter :: rid_BRO_NO2_M = 232 + integer, parameter :: rid_BRONO2_O = 233 + integer, parameter :: rid_BRO_O = 234 + integer, parameter :: rid_BRO_OH = 235 + integer, parameter :: rid_HBR_O = 236 + integer, parameter :: rid_HBR_OH = 237 + integer, parameter :: rid_HOBR_O = 238 + integer, parameter :: rid_O1D_CF3BR = 239 + integer, parameter :: rid_O1D_CHBR3 = 240 + integer, parameter :: rid_O1D_H2402 = 241 + integer, parameter :: rid_O1D_HBRa = 242 + integer, parameter :: rid_O1D_HBRb = 243 + integer, parameter :: rid_F_CH4 = 244 + integer, parameter :: rid_F_H2 = 245 + integer, parameter :: rid_F_H2O = 246 + integer, parameter :: rid_F_HNO3 = 247 + integer, parameter :: rid_O1D_COF2 = 248 + integer, parameter :: rid_O1D_COFCL = 249 + integer, parameter :: rid_CH2BR2_CL = 250 + integer, parameter :: rid_CH2BR2_OH = 251 + integer, parameter :: rid_CH3BR_CL = 252 + integer, parameter :: rid_CH3BR_OH = 253 + integer, parameter :: rid_CH3CCL3_OH = 254 + integer, parameter :: rid_CH3CL_CL = 255 + integer, parameter :: rid_CH3CL_OH = 256 + integer, parameter :: rid_CHBR3_CL = 257 + integer, parameter :: rid_CHBR3_OH = 258 + integer, parameter :: rid_HCFC141B_OH = 259 + integer, parameter :: rid_HCFC142B_OH = 260 + integer, parameter :: rid_HCFC22_OH = 261 + integer, parameter :: rid_O1D_CH2BR2 = 262 + integer, parameter :: rid_O1D_CH3BR = 263 + integer, parameter :: rid_O1D_HCFC141B = 264 + integer, parameter :: rid_O1D_HCFC142B = 265 + integer, parameter :: rid_O1D_HCFC22 = 266 + integer, parameter :: rid_CH2O_HO2 = 267 + integer, parameter :: rid_CH2O_NO3 = 268 + integer, parameter :: rid_CH2O_O = 269 + integer, parameter :: rid_CH2O_OH = 270 + integer, parameter :: rid_CH3O2_CH3O2a = 271 + integer, parameter :: rid_CH3O2_CH3O2b = 272 + integer, parameter :: rid_CH3O2_HO2 = 273 + integer, parameter :: rid_CH3O2_NO = 274 + integer, parameter :: rid_CH3OH_OH = 275 + integer, parameter :: rid_CH3OOH_OH = 276 + integer, parameter :: rid_CH4_OH = 277 + integer, parameter :: rid_HCN_OH = 278 + integer, parameter :: rid_HCOOH_OH = 279 + integer, parameter :: rid_HOCH2OO_HO2 = 280 + integer, parameter :: rid_HOCH2OO_M = 281 + integer, parameter :: rid_HOCH2OO_NO = 282 + integer, parameter :: rid_O1D_CH4a = 283 + integer, parameter :: rid_O1D_CH4b = 284 + integer, parameter :: rid_O1D_CH4c = 285 + integer, parameter :: rid_O1D_HCN = 286 + integer, parameter :: rid_usr_CO_OH = 287 + integer, parameter :: rid_C2H2_CL_M = 288 + integer, parameter :: rid_C2H2_OH_M = 289 + integer, parameter :: rid_C2H4_CL_M = 290 + integer, parameter :: rid_C2H4_O3 = 291 + integer, parameter :: rid_C2H5O2_C2H5O2 = 292 + integer, parameter :: rid_C2H5O2_CH3O2 = 293 + integer, parameter :: rid_C2H5O2_HO2 = 294 + integer, parameter :: rid_C2H5O2_NO = 295 + integer, parameter :: rid_C2H5OH_OH = 296 + integer, parameter :: rid_C2H5OOH_OH = 297 + integer, parameter :: rid_C2H6_CL = 298 + integer, parameter :: rid_C2H6_OH = 299 + integer, parameter :: rid_CH3CHO_NO3 = 300 + integer, parameter :: rid_CH3CHO_OH = 301 + integer, parameter :: rid_CH3CN_OH = 302 + integer, parameter :: rid_CH3CO3_CH3CO3 = 303 + integer, parameter :: rid_CH3CO3_CH3O2 = 304 + integer, parameter :: rid_CH3CO3_HO2 = 305 + integer, parameter :: rid_CH3CO3_NO = 306 + integer, parameter :: rid_CH3COOH_OH = 307 + integer, parameter :: rid_CH3COOOH_OH = 308 + integer, parameter :: rid_EO2_HO2 = 309 + integer, parameter :: rid_EO2_NO = 310 + integer, parameter :: rid_EO_M = 311 + integer, parameter :: rid_EO_O2 = 312 + integer, parameter :: rid_GLYALD_OH = 313 + integer, parameter :: rid_GLYOXAL_OH = 314 + integer, parameter :: rid_PAN_OH = 315 + integer, parameter :: rid_tag_C2H4_OH = 316 + integer, parameter :: rid_tag_CH3CO3_NO2 = 317 + integer, parameter :: rid_usr_PAN_M = 318 + integer, parameter :: rid_C3H6_NO3 = 319 + integer, parameter :: rid_C3H6_O3 = 320 + integer, parameter :: rid_C3H7O2_CH3O2 = 321 + integer, parameter :: rid_C3H7O2_HO2 = 322 + integer, parameter :: rid_C3H7O2_NO = 323 + integer, parameter :: rid_C3H7OOH_OH = 324 + integer, parameter :: rid_C3H8_OH = 325 + integer, parameter :: rid_CH3COCHO_NO3 = 326 + integer, parameter :: rid_CH3COCHO_OH = 327 + integer, parameter :: rid_HYAC_OH = 328 + integer, parameter :: rid_NOA_OH = 329 + integer, parameter :: rid_PO2_HO2 = 330 + integer, parameter :: rid_PO2_NO = 331 + integer, parameter :: rid_POOH_OH = 332 + integer, parameter :: rid_RO2_CH3O2 = 333 + integer, parameter :: rid_RO2_HO2 = 334 + integer, parameter :: rid_RO2_NO = 335 + integer, parameter :: rid_ROOH_OH = 336 + integer, parameter :: rid_tag_C3H6_OH = 337 + integer, parameter :: rid_usr_CH3COCH3_OH = 338 + integer, parameter :: rid_BIGENE_NO3 = 339 + integer, parameter :: rid_BIGENE_OH = 340 + integer, parameter :: rid_ENEO2_NO = 341 + integer, parameter :: rid_ENEO2_NOb = 342 + integer, parameter :: rid_HONITR_OH = 343 + integer, parameter :: rid_MACRO2_CH3CO3 = 344 + integer, parameter :: rid_MACRO2_CH3O2 = 345 + integer, parameter :: rid_MACRO2_HO2 = 346 + integer, parameter :: rid_MACRO2_NO3 = 347 + integer, parameter :: rid_MACRO2_NOa = 348 + integer, parameter :: rid_MACRO2_NOb = 349 + integer, parameter :: rid_MACR_O3 = 350 + integer, parameter :: rid_MACR_OH = 351 + integer, parameter :: rid_MACROOH_OH = 352 + integer, parameter :: rid_MCO3_CH3CO3 = 353 + integer, parameter :: rid_MCO3_CH3O2 = 354 + integer, parameter :: rid_MCO3_HO2 = 355 + integer, parameter :: rid_MCO3_MCO3 = 356 + integer, parameter :: rid_MCO3_NO = 357 + integer, parameter :: rid_MCO3_NO3 = 358 + integer, parameter :: rid_MEKO2_HO2 = 359 + integer, parameter :: rid_MEKO2_NO = 360 + integer, parameter :: rid_MEK_OH = 361 + integer, parameter :: rid_MEKOOH_OH = 362 + integer, parameter :: rid_MPAN_OH_M = 363 + integer, parameter :: rid_MVK_O3 = 364 + integer, parameter :: rid_MVK_OH = 365 + integer, parameter :: rid_tag_MCO3_NO2 = 366 + integer, parameter :: rid_usr_MPAN_M = 367 + integer, parameter :: rid_ALKNIT_OH = 368 + integer, parameter :: rid_ALKO2_HO2 = 369 + integer, parameter :: rid_ALKO2_NO = 370 + integer, parameter :: rid_ALKO2_NOb = 371 + integer, parameter :: rid_ALKOOH_OH = 372 + integer, parameter :: rid_BIGALK_OH = 373 + integer, parameter :: rid_HPALD_OH = 374 + integer, parameter :: rid_HYDRALD_OH = 375 + integer, parameter :: rid_IEPOX_OH = 376 + integer, parameter :: rid_ISOPAO2_CH3CO3 = 377 + integer, parameter :: rid_ISOPAO2_CH3O2 = 378 + integer, parameter :: rid_ISOPAO2_HO2 = 379 + integer, parameter :: rid_ISOPAO2_NO = 380 + integer, parameter :: rid_ISOPAO2_NO3 = 381 + integer, parameter :: rid_ISOPBO2_CH3CO3 = 382 + integer, parameter :: rid_ISOPBO2_CH3O2 = 383 + integer, parameter :: rid_ISOPBO2_HO2 = 384 + integer, parameter :: rid_ISOPBO2_M = 385 + integer, parameter :: rid_ISOPBO2_NO = 386 + integer, parameter :: rid_ISOPBO2_NO3 = 387 + integer, parameter :: rid_ISOPNITA_OH = 388 + integer, parameter :: rid_ISOPNITB_OH = 389 + integer, parameter :: rid_ISOP_NO3 = 390 + integer, parameter :: rid_ISOPNO3_CH3CO3 = 391 + integer, parameter :: rid_ISOPNO3_CH3O2 = 392 + integer, parameter :: rid_ISOPNO3_HO2 = 393 + integer, parameter :: rid_ISOPNO3_NO = 394 + integer, parameter :: rid_ISOPNO3_NO3 = 395 + integer, parameter :: rid_ISOPNOOH_OH = 396 + integer, parameter :: rid_ISOP_O3 = 397 + integer, parameter :: rid_ISOP_OH = 398 + integer, parameter :: rid_ISOPOOH_OH = 399 + integer, parameter :: rid_NC4CH2OH_OH = 400 + integer, parameter :: rid_NC4CHO_OH = 401 + integer, parameter :: rid_XO2_CH3CO3 = 402 + integer, parameter :: rid_XO2_CH3O2 = 403 + integer, parameter :: rid_XO2_HO2 = 404 + integer, parameter :: rid_XO2_NO = 405 + integer, parameter :: rid_XO2_NO3 = 406 + integer, parameter :: rid_XOOH_OH = 407 + integer, parameter :: rid_ACBZO2_HO2 = 408 + integer, parameter :: rid_ACBZO2_NO = 409 + integer, parameter :: rid_BENZENE_OH = 410 + integer, parameter :: rid_BENZO2_HO2 = 411 + integer, parameter :: rid_BENZO2_NO = 412 + integer, parameter :: rid_BENZOOH_OH = 413 + integer, parameter :: rid_BZALD_OH = 414 + integer, parameter :: rid_BZOO_HO2 = 415 + integer, parameter :: rid_BZOOH_OH = 416 + integer, parameter :: rid_BZOO_NO = 417 + integer, parameter :: rid_C6H5O2_HO2 = 418 + integer, parameter :: rid_C6H5O2_NO = 419 + integer, parameter :: rid_C6H5OOH_OH = 420 + integer, parameter :: rid_CRESOL_OH = 421 + integer, parameter :: rid_DICARBO2_HO2 = 422 + integer, parameter :: rid_DICARBO2_NO = 423 + integer, parameter :: rid_DICARBO2_NO2 = 424 + integer, parameter :: rid_MALO2_HO2 = 425 + integer, parameter :: rid_MALO2_NO = 426 + integer, parameter :: rid_MALO2_NO2 = 427 + integer, parameter :: rid_MDIALO2_HO2 = 428 + integer, parameter :: rid_MDIALO2_NO = 429 + integer, parameter :: rid_MDIALO2_NO2 = 430 + integer, parameter :: rid_PHENO2_HO2 = 431 + integer, parameter :: rid_PHENO2_NO = 432 + integer, parameter :: rid_PHENOL_OH = 433 + integer, parameter :: rid_PHENO_NO2 = 434 + integer, parameter :: rid_PHENO_O3 = 435 + integer, parameter :: rid_PHENOOH_OH = 436 + integer, parameter :: rid_tag_ACBZO2_NO2 = 437 + integer, parameter :: rid_TOLO2_HO2 = 438 + integer, parameter :: rid_TOLO2_NO = 439 + integer, parameter :: rid_TOLOOH_OH = 440 + integer, parameter :: rid_TOLUENE_OH = 441 + integer, parameter :: rid_usr_PBZNIT_M = 442 + integer, parameter :: rid_XYLENES_OH = 443 + integer, parameter :: rid_XYLENO2_HO2 = 444 + integer, parameter :: rid_XYLENO2_NO = 445 + integer, parameter :: rid_XYLENOOH_OH = 446 + integer, parameter :: rid_XYLOLO2_HO2 = 447 + integer, parameter :: rid_XYLOLO2_NO = 448 + integer, parameter :: rid_XYLOL_OH = 449 + integer, parameter :: rid_XYLOLOOH_OH = 450 + integer, parameter :: rid_BCARY_NO3 = 451 + integer, parameter :: rid_BCARY_O3 = 452 + integer, parameter :: rid_BCARY_OH = 453 + integer, parameter :: rid_MTERP_NO3 = 454 + integer, parameter :: rid_MTERP_O3 = 455 + integer, parameter :: rid_MTERP_OH = 456 + integer, parameter :: rid_NTERPO2_CH3O2 = 457 + integer, parameter :: rid_NTERPO2_HO2 = 458 + integer, parameter :: rid_NTERPO2_NO = 459 + integer, parameter :: rid_NTERPO2_NO3 = 460 + integer, parameter :: rid_NTERPOOH_OH = 461 + integer, parameter :: rid_TERP2O2_CH3O2 = 462 + integer, parameter :: rid_TERP2O2_HO2 = 463 + integer, parameter :: rid_TERP2O2_NO = 464 + integer, parameter :: rid_TERP2OOH_OH = 465 + integer, parameter :: rid_TERPNIT_OH = 466 + integer, parameter :: rid_TERPO2_CH3O2 = 467 + integer, parameter :: rid_TERPO2_HO2 = 468 + integer, parameter :: rid_TERPO2_NO = 469 + integer, parameter :: rid_TERPOOH_OH = 470 + integer, parameter :: rid_TERPROD1_NO3 = 471 + integer, parameter :: rid_TERPROD1_OH = 472 + integer, parameter :: rid_TERPROD2_OH = 473 + integer, parameter :: rid_DMS_NO3 = 474 + integer, parameter :: rid_DMS_OHa = 475 + integer, parameter :: rid_OCS_O = 476 + integer, parameter :: rid_OCS_OH = 477 + integer, parameter :: rid_S_O2 = 478 + integer, parameter :: rid_SO2_OH_M = 479 + integer, parameter :: rid_S_O3 = 480 + integer, parameter :: rid_SO_BRO = 481 + integer, parameter :: rid_SO_CLO = 482 + integer, parameter :: rid_S_OH = 483 + integer, parameter :: rid_SO_NO2 = 484 + integer, parameter :: rid_SO_O2 = 485 + integer, parameter :: rid_SO_O3 = 486 + integer, parameter :: rid_SO_OCLO = 487 + integer, parameter :: rid_SO_OH = 488 + integer, parameter :: rid_usr_DMS_OH = 489 + integer, parameter :: rid_usr_SO3_H2O = 490 + integer, parameter :: rid_NH3_OH = 491 + integer, parameter :: rid_usr_HO2_aer = 492 + integer, parameter :: rid_usr_HONITR_aer = 493 + integer, parameter :: rid_usr_ISOPNITA_aer = 494 + integer, parameter :: rid_usr_ISOPNITB_aer = 495 + integer, parameter :: rid_usr_N2O5_aer = 496 + integer, parameter :: rid_usr_NC4CH2OH_aer = 497 + integer, parameter :: rid_usr_NC4CHO_aer = 498 + integer, parameter :: rid_usr_NH4_strat_tau = 499 + integer, parameter :: rid_usr_NO2_aer = 500 + integer, parameter :: rid_usr_NO3_aer = 501 + integer, parameter :: rid_usr_NTERPOOH_aer = 502 + integer, parameter :: rid_usr_ONITR_aer = 503 + integer, parameter :: rid_usr_TERPNIT_aer = 504 + integer, parameter :: rid_BCARY_NO3_vbs = 505 + integer, parameter :: rid_BCARYO2_HO2_vbs = 506 + integer, parameter :: rid_BCARYO2_NO_vbs = 507 + integer, parameter :: rid_BCARY_O3_vbs = 508 + integer, parameter :: rid_BCARY_OH_vbs = 509 + integer, parameter :: rid_BENZENE_OH_vbs = 510 + integer, parameter :: rid_BENZO2_HO2_vbs = 511 + integer, parameter :: rid_BENZO2_NO_vbs = 512 + integer, parameter :: rid_ISOP_NO3_vbs = 513 + integer, parameter :: rid_ISOPO2_HO2_vbs = 514 + integer, parameter :: rid_ISOPO2_NO_vbs = 515 + integer, parameter :: rid_ISOP_O3_vbs = 516 + integer, parameter :: rid_ISOP_OH_vbs = 517 + integer, parameter :: rid_IVOCO2_HO2_vbs = 518 + integer, parameter :: rid_IVOCO2_NO_vbs = 519 + integer, parameter :: rid_IVOC_OH_vbs = 520 + integer, parameter :: rid_MTERP_NO3_vbs = 521 + integer, parameter :: rid_MTERPO2_HO2_vbs = 522 + integer, parameter :: rid_MTERPO2_NO_vbs = 523 + integer, parameter :: rid_MTERP_O3_vbs = 524 + integer, parameter :: rid_MTERP_OH_vbs = 525 + integer, parameter :: rid_SVOC_OH = 526 + integer, parameter :: rid_TOLUENE_OH_vbs = 527 + integer, parameter :: rid_TOLUO2_HO2_vbs = 528 + integer, parameter :: rid_TOLUO2_NO_vbs = 529 + integer, parameter :: rid_usr_GLYOXAL_aer = 530 + integer, parameter :: rid_XYLENES_OH_vbs = 531 + integer, parameter :: rid_XYLEO2_HO2_vbs = 532 + integer, parameter :: rid_XYLEO2_NO_vbs = 533 + integer, parameter :: rid_het1 = 534 + integer, parameter :: rid_het10 = 535 + integer, parameter :: rid_het11 = 536 + integer, parameter :: rid_het12 = 537 + integer, parameter :: rid_het13 = 538 + integer, parameter :: rid_het14 = 539 + integer, parameter :: rid_het15 = 540 + integer, parameter :: rid_het16 = 541 + integer, parameter :: rid_het17 = 542 + integer, parameter :: rid_het2 = 543 + integer, parameter :: rid_het3 = 544 + integer, parameter :: rid_het4 = 545 + integer, parameter :: rid_het5 = 546 + integer, parameter :: rid_het6 = 547 + integer, parameter :: rid_het7 = 548 + integer, parameter :: rid_het8 = 549 + integer, parameter :: rid_het9 = 550 + integer, parameter :: rid_NH_50_tau = 551 + integer, parameter :: rid_NH_5_tau = 552 + integer, parameter :: rid_ST80_25_tau = 553 + end module m_rxt_id diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/m_spc_id.F90 new file mode 100644 index 0000000000..217fce0975 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/m_spc_id.F90 @@ -0,0 +1,236 @@ + module m_spc_id + implicit none + integer, parameter :: id_ALKNIT = 1 + integer, parameter :: id_ALKOOH = 2 + integer, parameter :: id_bc_a1 = 3 + integer, parameter :: id_bc_a4 = 4 + integer, parameter :: id_BCARY = 5 + integer, parameter :: id_BENZENE = 6 + integer, parameter :: id_BENZOOH = 7 + integer, parameter :: id_BEPOMUC = 8 + integer, parameter :: id_BIGALD = 9 + integer, parameter :: id_BIGALD1 = 10 + integer, parameter :: id_BIGALD2 = 11 + integer, parameter :: id_BIGALD3 = 12 + integer, parameter :: id_BIGALD4 = 13 + integer, parameter :: id_BIGALK = 14 + integer, parameter :: id_BIGENE = 15 + integer, parameter :: id_BR = 16 + integer, parameter :: id_BRCL = 17 + integer, parameter :: id_BRO = 18 + integer, parameter :: id_BRONO2 = 19 + integer, parameter :: id_BRY = 20 + integer, parameter :: id_BZALD = 21 + integer, parameter :: id_BZOOH = 22 + integer, parameter :: id_C2H2 = 23 + integer, parameter :: id_C2H4 = 24 + integer, parameter :: id_C2H5OH = 25 + integer, parameter :: id_C2H5OOH = 26 + integer, parameter :: id_C2H6 = 27 + integer, parameter :: id_C3H6 = 28 + integer, parameter :: id_C3H7OOH = 29 + integer, parameter :: id_C3H8 = 30 + integer, parameter :: id_C6H5OOH = 31 + integer, parameter :: id_CCL4 = 32 + integer, parameter :: id_CF2CLBR = 33 + integer, parameter :: id_CF3BR = 34 + integer, parameter :: id_CFC11 = 35 + integer, parameter :: id_CFC113 = 36 + integer, parameter :: id_CFC114 = 37 + integer, parameter :: id_CFC115 = 38 + integer, parameter :: id_CFC12 = 39 + integer, parameter :: id_CH2BR2 = 40 + integer, parameter :: id_CH2O = 41 + integer, parameter :: id_CH3BR = 42 + integer, parameter :: id_CH3CCL3 = 43 + integer, parameter :: id_CH3CHO = 44 + integer, parameter :: id_CH3CL = 45 + integer, parameter :: id_CH3CN = 46 + integer, parameter :: id_CH3COCH3 = 47 + integer, parameter :: id_CH3COCHO = 48 + integer, parameter :: id_CH3COOH = 49 + integer, parameter :: id_CH3COOOH = 50 + integer, parameter :: id_CH3OH = 51 + integer, parameter :: id_CH3OOH = 52 + integer, parameter :: id_CH4 = 53 + integer, parameter :: id_CHBR3 = 54 + integer, parameter :: id_CL = 55 + integer, parameter :: id_CL2 = 56 + integer, parameter :: id_CL2O2 = 57 + integer, parameter :: id_CLO = 58 + integer, parameter :: id_CLONO2 = 59 + integer, parameter :: id_CLY = 60 + integer, parameter :: id_CO = 61 + integer, parameter :: id_CO2 = 62 + integer, parameter :: id_COF2 = 63 + integer, parameter :: id_COFCL = 64 + integer, parameter :: id_CRESOL = 65 + integer, parameter :: id_DMS = 66 + integer, parameter :: id_dst_a1 = 67 + integer, parameter :: id_dst_a2 = 68 + integer, parameter :: id_dst_a3 = 69 + integer, parameter :: id_E90 = 70 + integer, parameter :: id_EOOH = 71 + integer, parameter :: id_F = 72 + integer, parameter :: id_GLYALD = 73 + integer, parameter :: id_GLYOXAL = 74 + integer, parameter :: id_H = 75 + integer, parameter :: id_H2 = 76 + integer, parameter :: id_H2402 = 77 + integer, parameter :: id_H2O2 = 78 + integer, parameter :: id_H2SO4 = 79 + integer, parameter :: id_HBR = 80 + integer, parameter :: id_HCFC141B = 81 + integer, parameter :: id_HCFC142B = 82 + integer, parameter :: id_HCFC22 = 83 + integer, parameter :: id_HCL = 84 + integer, parameter :: id_HCN = 85 + integer, parameter :: id_HCOOH = 86 + integer, parameter :: id_HF = 87 + integer, parameter :: id_HNO3 = 88 + integer, parameter :: id_HO2NO2 = 89 + integer, parameter :: id_HOBR = 90 + integer, parameter :: id_HOCL = 91 + integer, parameter :: id_HONITR = 92 + integer, parameter :: id_HPALD = 93 + integer, parameter :: id_HYAC = 94 + integer, parameter :: id_HYDRALD = 95 + integer, parameter :: id_IEPOX = 96 + integer, parameter :: id_ISOP = 97 + integer, parameter :: id_ISOPNITA = 98 + integer, parameter :: id_ISOPNITB = 99 + integer, parameter :: id_ISOPNO3 = 100 + integer, parameter :: id_ISOPNOOH = 101 + integer, parameter :: id_ISOPOOH = 102 + integer, parameter :: id_IVOC = 103 + integer, parameter :: id_MACR = 104 + integer, parameter :: id_MACROOH = 105 + integer, parameter :: id_MEK = 106 + integer, parameter :: id_MEKOOH = 107 + integer, parameter :: id_MPAN = 108 + integer, parameter :: id_MTERP = 109 + integer, parameter :: id_MVK = 110 + integer, parameter :: id_N = 111 + integer, parameter :: id_N2O = 112 + integer, parameter :: id_N2O5 = 113 + integer, parameter :: id_NC4CH2OH = 114 + integer, parameter :: id_NC4CHO = 115 + integer, parameter :: id_ncl_a1 = 116 + integer, parameter :: id_ncl_a2 = 117 + integer, parameter :: id_ncl_a3 = 118 + integer, parameter :: id_NH3 = 119 + integer, parameter :: id_NH4 = 120 + integer, parameter :: id_NH_5 = 121 + integer, parameter :: id_NH_50 = 122 + integer, parameter :: id_NO = 123 + integer, parameter :: id_NO2 = 124 + integer, parameter :: id_NO3 = 125 + integer, parameter :: id_NOA = 126 + integer, parameter :: id_NTERPOOH = 127 + integer, parameter :: id_num_a1 = 128 + integer, parameter :: id_num_a2 = 129 + integer, parameter :: id_num_a3 = 130 + integer, parameter :: id_num_a4 = 131 + integer, parameter :: id_num_a5 = 132 + integer, parameter :: id_O = 133 + integer, parameter :: id_O2 = 134 + integer, parameter :: id_O2_1D = 135 + integer, parameter :: id_O2_1S = 136 + integer, parameter :: id_O3 = 137 + integer, parameter :: id_O3S = 138 + integer, parameter :: id_OCLO = 139 + integer, parameter :: id_OCS = 140 + integer, parameter :: id_ONITR = 141 + integer, parameter :: id_PAN = 142 + integer, parameter :: id_PBZNIT = 143 + integer, parameter :: id_PHENO = 144 + integer, parameter :: id_PHENOL = 145 + integer, parameter :: id_PHENOOH = 146 + integer, parameter :: id_pom_a1 = 147 + integer, parameter :: id_pom_a4 = 148 + integer, parameter :: id_POOH = 149 + integer, parameter :: id_ROOH = 150 + integer, parameter :: id_S = 151 + integer, parameter :: id_SF6 = 152 + integer, parameter :: id_SO = 153 + integer, parameter :: id_SO2 = 154 + integer, parameter :: id_SO3 = 155 + integer, parameter :: id_so4_a1 = 156 + integer, parameter :: id_so4_a2 = 157 + integer, parameter :: id_so4_a3 = 158 + integer, parameter :: id_so4_a5 = 159 + integer, parameter :: id_soa1_a1 = 160 + integer, parameter :: id_soa1_a2 = 161 + integer, parameter :: id_soa2_a1 = 162 + integer, parameter :: id_soa2_a2 = 163 + integer, parameter :: id_soa3_a1 = 164 + integer, parameter :: id_soa3_a2 = 165 + integer, parameter :: id_soa4_a1 = 166 + integer, parameter :: id_soa4_a2 = 167 + integer, parameter :: id_soa5_a1 = 168 + integer, parameter :: id_soa5_a2 = 169 + integer, parameter :: id_SOAG0 = 170 + integer, parameter :: id_SOAG1 = 171 + integer, parameter :: id_SOAG2 = 172 + integer, parameter :: id_SOAG3 = 173 + integer, parameter :: id_SOAG4 = 174 + integer, parameter :: id_ST80_25 = 175 + integer, parameter :: id_SVOC = 176 + integer, parameter :: id_TEPOMUC = 177 + integer, parameter :: id_TERP2OOH = 178 + integer, parameter :: id_TERPNIT = 179 + integer, parameter :: id_TERPOOH = 180 + integer, parameter :: id_TERPROD1 = 181 + integer, parameter :: id_TERPROD2 = 182 + integer, parameter :: id_TOLOOH = 183 + integer, parameter :: id_TOLUENE = 184 + integer, parameter :: id_XOOH = 185 + integer, parameter :: id_XYLENES = 186 + integer, parameter :: id_XYLENOOH = 187 + integer, parameter :: id_XYLOL = 188 + integer, parameter :: id_XYLOLOOH = 189 + integer, parameter :: id_NHDEP = 190 + integer, parameter :: id_NDEP = 191 + integer, parameter :: id_ACBZO2 = 192 + integer, parameter :: id_ALKO2 = 193 + integer, parameter :: id_BCARYO2VBS = 194 + integer, parameter :: id_BENZO2 = 195 + integer, parameter :: id_BENZO2VBS = 196 + integer, parameter :: id_BZOO = 197 + integer, parameter :: id_C2H5O2 = 198 + integer, parameter :: id_C3H7O2 = 199 + integer, parameter :: id_C6H5O2 = 200 + integer, parameter :: id_CH3CO3 = 201 + integer, parameter :: id_CH3O2 = 202 + integer, parameter :: id_DICARBO2 = 203 + integer, parameter :: id_ENEO2 = 204 + integer, parameter :: id_EO = 205 + integer, parameter :: id_EO2 = 206 + integer, parameter :: id_HO2 = 207 + integer, parameter :: id_HOCH2OO = 208 + integer, parameter :: id_ISOPAO2 = 209 + integer, parameter :: id_ISOPBO2 = 210 + integer, parameter :: id_ISOPO2VBS = 211 + integer, parameter :: id_IVOCO2VBS = 212 + integer, parameter :: id_MACRO2 = 213 + integer, parameter :: id_MALO2 = 214 + integer, parameter :: id_MCO3 = 215 + integer, parameter :: id_MDIALO2 = 216 + integer, parameter :: id_MEKO2 = 217 + integer, parameter :: id_MTERPO2VBS = 218 + integer, parameter :: id_NTERPO2 = 219 + integer, parameter :: id_O1D = 220 + integer, parameter :: id_OH = 221 + integer, parameter :: id_PHENO2 = 222 + integer, parameter :: id_PO2 = 223 + integer, parameter :: id_RO2 = 224 + integer, parameter :: id_TERP2O2 = 225 + integer, parameter :: id_TERPO2 = 226 + integer, parameter :: id_TOLO2 = 227 + integer, parameter :: id_TOLUO2VBS = 228 + integer, parameter :: id_XO2 = 229 + integer, parameter :: id_XYLENO2 = 230 + integer, parameter :: id_XYLEO2VBS = 231 + integer, parameter :: id_XYLOLO2 = 232 + integer, parameter :: id_H2O = 233 + end module m_spc_id diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_adjrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_adjrxt.F90 new file mode 100644 index 0000000000..3c284043fc --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_adjrxt.F90 @@ -0,0 +1,441 @@ + module mo_adjrxt + private + public :: adjrxt + contains + subroutine adjrxt( rate, inv, m, ncol, nlev ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : nfs, rxntot + implicit none +!-------------------------------------------------------------------- +! ... dummy arguments +!-------------------------------------------------------------------- + integer, intent(in) :: ncol, nlev + real(r8), intent(in) :: inv(ncol,nlev,nfs) + real(r8), intent(in) :: m(ncol,nlev) + real(r8), intent(inout) :: rate(ncol,nlev,rxntot) + rate(:,:, 129) = rate(:,:, 129) * inv(:,:, 2) + rate(:,:, 134) = rate(:,:, 134) * inv(:,:, 2) + rate(:,:, 138) = rate(:,:, 138) * inv(:,:, 2) + rate(:,:, 143) = rate(:,:, 143) * inv(:,:, 1) + rate(:,:, 144) = rate(:,:, 144) * inv(:,:, 1) + rate(:,:, 150) = rate(:,:, 150) * inv(:,:, 1) + rate(:,:, 160) = rate(:,:, 160) * inv(:,:, 1) + rate(:,:, 170) = rate(:,:, 170) * inv(:,:, 1) + rate(:,:, 178) = rate(:,:, 178) * inv(:,:, 1) + rate(:,:, 181) = rate(:,:, 181) * inv(:,:, 1) + rate(:,:, 182) = rate(:,:, 182) * inv(:,:, 1) + rate(:,:, 183) = rate(:,:, 183) * inv(:,:, 1) + rate(:,:, 185) = rate(:,:, 185) * inv(:,:, 1) + rate(:,:, 186) = rate(:,:, 186) * inv(:,:, 1) + rate(:,:, 201) = rate(:,:, 201) * inv(:,:, 1) + rate(:,:, 221) = rate(:,:, 221) * inv(:,:, 1) + rate(:,:, 222) = rate(:,:, 222) * inv(:,:, 1) + rate(:,:, 232) = rate(:,:, 232) * inv(:,:, 1) + rate(:,:, 278) = rate(:,:, 278) * inv(:,:, 1) + rate(:,:, 288) = rate(:,:, 288) * inv(:,:, 1) + rate(:,:, 289) = rate(:,:, 289) * inv(:,:, 1) + rate(:,:, 290) = rate(:,:, 290) * inv(:,:, 1) + rate(:,:, 316) = rate(:,:, 316) * inv(:,:, 1) + rate(:,:, 317) = rate(:,:, 317) * inv(:,:, 1) + rate(:,:, 318) = rate(:,:, 318) * inv(:,:, 1) + rate(:,:, 337) = rate(:,:, 337) * inv(:,:, 1) + rate(:,:, 363) = rate(:,:, 363) * inv(:,:, 1) + rate(:,:, 366) = rate(:,:, 366) * inv(:,:, 1) + rate(:,:, 367) = rate(:,:, 367) * inv(:,:, 1) + rate(:,:, 424) = rate(:,:, 424) * inv(:,:, 1) + rate(:,:, 427) = rate(:,:, 427) * inv(:,:, 1) + rate(:,:, 430) = rate(:,:, 430) * inv(:,:, 1) + rate(:,:, 437) = rate(:,:, 437) * inv(:,:, 1) + rate(:,:, 442) = rate(:,:, 442) * inv(:,:, 1) + rate(:,:, 479) = rate(:,:, 479) * inv(:,:, 1) + rate(:,:, 127) = rate(:,:, 127) * m(:,:) + rate(:,:, 128) = rate(:,:, 128) * m(:,:) + rate(:,:, 130) = rate(:,:, 130) * m(:,:) + rate(:,:, 131) = rate(:,:, 131) * m(:,:) + rate(:,:, 132) = rate(:,:, 132) * m(:,:) + rate(:,:, 133) = rate(:,:, 133) * m(:,:) + rate(:,:, 135) = rate(:,:, 135) * m(:,:) + rate(:,:, 136) = rate(:,:, 136) * m(:,:) + rate(:,:, 137) = rate(:,:, 137) * m(:,:) + rate(:,:, 139) = rate(:,:, 139) * m(:,:) + rate(:,:, 140) = rate(:,:, 140) * m(:,:) + rate(:,:, 141) = rate(:,:, 141) * m(:,:) + rate(:,:, 142) = rate(:,:, 142) * m(:,:) + rate(:,:, 143) = rate(:,:, 143) * m(:,:) + rate(:,:, 144) = rate(:,:, 144) * m(:,:) + rate(:,:, 145) = rate(:,:, 145) * m(:,:) + rate(:,:, 146) = rate(:,:, 146) * m(:,:) + rate(:,:, 147) = rate(:,:, 147) * m(:,:) + rate(:,:, 148) = rate(:,:, 148) * m(:,:) + rate(:,:, 149) = rate(:,:, 149) * m(:,:) + rate(:,:, 150) = rate(:,:, 150) * m(:,:) + rate(:,:, 151) = rate(:,:, 151) * m(:,:) + rate(:,:, 152) = rate(:,:, 152) * m(:,:) + rate(:,:, 153) = rate(:,:, 153) * m(:,:) + rate(:,:, 154) = rate(:,:, 154) * m(:,:) + rate(:,:, 155) = rate(:,:, 155) * m(:,:) + rate(:,:, 156) = rate(:,:, 156) * m(:,:) + rate(:,:, 157) = rate(:,:, 157) * m(:,:) + rate(:,:, 158) = rate(:,:, 158) * m(:,:) + rate(:,:, 159) = rate(:,:, 159) * m(:,:) + rate(:,:, 160) = rate(:,:, 160) * m(:,:) + rate(:,:, 161) = rate(:,:, 161) * m(:,:) + rate(:,:, 162) = rate(:,:, 162) * m(:,:) + rate(:,:, 163) = rate(:,:, 163) * m(:,:) + rate(:,:, 164) = rate(:,:, 164) * m(:,:) + rate(:,:, 165) = rate(:,:, 165) * m(:,:) + rate(:,:, 166) = rate(:,:, 166) * m(:,:) + rate(:,:, 167) = rate(:,:, 167) * m(:,:) + rate(:,:, 168) = rate(:,:, 168) * m(:,:) + rate(:,:, 169) = rate(:,:, 169) * m(:,:) + rate(:,:, 170) = rate(:,:, 170) * m(:,:) + rate(:,:, 171) = rate(:,:, 171) * m(:,:) + rate(:,:, 172) = rate(:,:, 172) * m(:,:) + rate(:,:, 173) = rate(:,:, 173) * m(:,:) + rate(:,:, 174) = rate(:,:, 174) * m(:,:) + rate(:,:, 175) = rate(:,:, 175) * m(:,:) + rate(:,:, 176) = rate(:,:, 176) * m(:,:) + rate(:,:, 177) = rate(:,:, 177) * m(:,:) + rate(:,:, 178) = rate(:,:, 178) * m(:,:) + rate(:,:, 179) = rate(:,:, 179) * m(:,:) + rate(:,:, 180) = rate(:,:, 180) * m(:,:) + rate(:,:, 181) = rate(:,:, 181) * m(:,:) + rate(:,:, 182) = rate(:,:, 182) * m(:,:) + rate(:,:, 183) = rate(:,:, 183) * m(:,:) + rate(:,:, 184) = rate(:,:, 184) * m(:,:) + rate(:,:, 187) = rate(:,:, 187) * m(:,:) + rate(:,:, 188) = rate(:,:, 188) * m(:,:) + rate(:,:, 189) = rate(:,:, 189) * m(:,:) + rate(:,:, 190) = rate(:,:, 190) * m(:,:) + rate(:,:, 191) = rate(:,:, 191) * m(:,:) + rate(:,:, 192) = rate(:,:, 192) * m(:,:) + rate(:,:, 193) = rate(:,:, 193) * m(:,:) + rate(:,:, 194) = rate(:,:, 194) * m(:,:) + rate(:,:, 195) = rate(:,:, 195) * m(:,:) + rate(:,:, 196) = rate(:,:, 196) * m(:,:) + rate(:,:, 197) = rate(:,:, 197) * m(:,:) + rate(:,:, 198) = rate(:,:, 198) * m(:,:) + rate(:,:, 199) = rate(:,:, 199) * m(:,:) + rate(:,:, 200) = rate(:,:, 200) * m(:,:) + rate(:,:, 201) = rate(:,:, 201) * m(:,:) + rate(:,:, 202) = rate(:,:, 202) * m(:,:) + rate(:,:, 203) = rate(:,:, 203) * m(:,:) + rate(:,:, 204) = rate(:,:, 204) * m(:,:) + rate(:,:, 205) = rate(:,:, 205) * m(:,:) + rate(:,:, 206) = rate(:,:, 206) * m(:,:) + rate(:,:, 207) = rate(:,:, 207) * m(:,:) + rate(:,:, 208) = rate(:,:, 208) * m(:,:) + rate(:,:, 209) = rate(:,:, 209) * m(:,:) + rate(:,:, 210) = rate(:,:, 210) * m(:,:) + rate(:,:, 211) = rate(:,:, 211) * m(:,:) + rate(:,:, 212) = rate(:,:, 212) * m(:,:) + rate(:,:, 213) = rate(:,:, 213) * m(:,:) + rate(:,:, 214) = rate(:,:, 214) * m(:,:) + rate(:,:, 215) = rate(:,:, 215) * m(:,:) + rate(:,:, 216) = rate(:,:, 216) * m(:,:) + rate(:,:, 217) = rate(:,:, 217) * m(:,:) + rate(:,:, 218) = rate(:,:, 218) * m(:,:) + rate(:,:, 219) = rate(:,:, 219) * m(:,:) + rate(:,:, 220) = rate(:,:, 220) * m(:,:) + rate(:,:, 221) = rate(:,:, 221) * m(:,:) + rate(:,:, 223) = rate(:,:, 223) * m(:,:) + rate(:,:, 224) = rate(:,:, 224) * m(:,:) + rate(:,:, 225) = rate(:,:, 225) * m(:,:) + rate(:,:, 226) = rate(:,:, 226) * m(:,:) + rate(:,:, 227) = rate(:,:, 227) * m(:,:) + rate(:,:, 228) = rate(:,:, 228) * m(:,:) + rate(:,:, 229) = rate(:,:, 229) * m(:,:) + rate(:,:, 230) = rate(:,:, 230) * m(:,:) + rate(:,:, 231) = rate(:,:, 231) * m(:,:) + rate(:,:, 232) = rate(:,:, 232) * m(:,:) + rate(:,:, 233) = rate(:,:, 233) * m(:,:) + rate(:,:, 234) = rate(:,:, 234) * m(:,:) + rate(:,:, 235) = rate(:,:, 235) * m(:,:) + rate(:,:, 236) = rate(:,:, 236) * m(:,:) + rate(:,:, 237) = rate(:,:, 237) * m(:,:) + rate(:,:, 238) = rate(:,:, 238) * m(:,:) + rate(:,:, 239) = rate(:,:, 239) * m(:,:) + rate(:,:, 240) = rate(:,:, 240) * m(:,:) + rate(:,:, 241) = rate(:,:, 241) * m(:,:) + rate(:,:, 242) = rate(:,:, 242) * m(:,:) + rate(:,:, 243) = rate(:,:, 243) * m(:,:) + rate(:,:, 244) = rate(:,:, 244) * m(:,:) + rate(:,:, 245) = rate(:,:, 245) * m(:,:) + rate(:,:, 246) = rate(:,:, 246) * m(:,:) + rate(:,:, 247) = rate(:,:, 247) * m(:,:) + rate(:,:, 248) = rate(:,:, 248) * m(:,:) + rate(:,:, 249) = rate(:,:, 249) * m(:,:) + rate(:,:, 250) = rate(:,:, 250) * m(:,:) + rate(:,:, 251) = rate(:,:, 251) * m(:,:) + rate(:,:, 252) = rate(:,:, 252) * m(:,:) + rate(:,:, 253) = rate(:,:, 253) * m(:,:) + rate(:,:, 254) = rate(:,:, 254) * m(:,:) + rate(:,:, 255) = rate(:,:, 255) * m(:,:) + rate(:,:, 256) = rate(:,:, 256) * m(:,:) + rate(:,:, 257) = rate(:,:, 257) * m(:,:) + rate(:,:, 258) = rate(:,:, 258) * m(:,:) + rate(:,:, 259) = rate(:,:, 259) * m(:,:) + rate(:,:, 260) = rate(:,:, 260) * m(:,:) + rate(:,:, 261) = rate(:,:, 261) * m(:,:) + rate(:,:, 262) = rate(:,:, 262) * m(:,:) + rate(:,:, 263) = rate(:,:, 263) * m(:,:) + rate(:,:, 264) = rate(:,:, 264) * m(:,:) + rate(:,:, 265) = rate(:,:, 265) * m(:,:) + rate(:,:, 266) = rate(:,:, 266) * m(:,:) + rate(:,:, 267) = rate(:,:, 267) * m(:,:) + rate(:,:, 268) = rate(:,:, 268) * m(:,:) + rate(:,:, 269) = rate(:,:, 269) * m(:,:) + rate(:,:, 270) = rate(:,:, 270) * m(:,:) + rate(:,:, 271) = rate(:,:, 271) * m(:,:) + rate(:,:, 272) = rate(:,:, 272) * m(:,:) + rate(:,:, 273) = rate(:,:, 273) * m(:,:) + rate(:,:, 274) = rate(:,:, 274) * m(:,:) + rate(:,:, 275) = rate(:,:, 275) * m(:,:) + rate(:,:, 276) = rate(:,:, 276) * m(:,:) + rate(:,:, 277) = rate(:,:, 277) * m(:,:) + rate(:,:, 278) = rate(:,:, 278) * m(:,:) + rate(:,:, 279) = rate(:,:, 279) * m(:,:) + rate(:,:, 280) = rate(:,:, 280) * m(:,:) + rate(:,:, 282) = rate(:,:, 282) * m(:,:) + rate(:,:, 283) = rate(:,:, 283) * m(:,:) + rate(:,:, 284) = rate(:,:, 284) * m(:,:) + rate(:,:, 285) = rate(:,:, 285) * m(:,:) + rate(:,:, 286) = rate(:,:, 286) * m(:,:) + rate(:,:, 287) = rate(:,:, 287) * m(:,:) + rate(:,:, 288) = rate(:,:, 288) * m(:,:) + rate(:,:, 289) = rate(:,:, 289) * m(:,:) + rate(:,:, 290) = rate(:,:, 290) * m(:,:) + rate(:,:, 291) = rate(:,:, 291) * m(:,:) + rate(:,:, 292) = rate(:,:, 292) * m(:,:) + rate(:,:, 293) = rate(:,:, 293) * m(:,:) + rate(:,:, 294) = rate(:,:, 294) * m(:,:) + rate(:,:, 295) = rate(:,:, 295) * m(:,:) + rate(:,:, 296) = rate(:,:, 296) * m(:,:) + rate(:,:, 297) = rate(:,:, 297) * m(:,:) + rate(:,:, 298) = rate(:,:, 298) * m(:,:) + rate(:,:, 299) = rate(:,:, 299) * m(:,:) + rate(:,:, 300) = rate(:,:, 300) * m(:,:) + rate(:,:, 301) = rate(:,:, 301) * m(:,:) + rate(:,:, 302) = rate(:,:, 302) * m(:,:) + rate(:,:, 303) = rate(:,:, 303) * m(:,:) + rate(:,:, 304) = rate(:,:, 304) * m(:,:) + rate(:,:, 305) = rate(:,:, 305) * m(:,:) + rate(:,:, 306) = rate(:,:, 306) * m(:,:) + rate(:,:, 307) = rate(:,:, 307) * m(:,:) + rate(:,:, 308) = rate(:,:, 308) * m(:,:) + rate(:,:, 309) = rate(:,:, 309) * m(:,:) + rate(:,:, 310) = rate(:,:, 310) * m(:,:) + rate(:,:, 312) = rate(:,:, 312) * m(:,:) + rate(:,:, 313) = rate(:,:, 313) * m(:,:) + rate(:,:, 314) = rate(:,:, 314) * m(:,:) + rate(:,:, 315) = rate(:,:, 315) * m(:,:) + rate(:,:, 316) = rate(:,:, 316) * m(:,:) + rate(:,:, 317) = rate(:,:, 317) * m(:,:) + rate(:,:, 319) = rate(:,:, 319) * m(:,:) + rate(:,:, 320) = rate(:,:, 320) * m(:,:) + rate(:,:, 321) = rate(:,:, 321) * m(:,:) + rate(:,:, 322) = rate(:,:, 322) * m(:,:) + rate(:,:, 323) = rate(:,:, 323) * m(:,:) + rate(:,:, 324) = rate(:,:, 324) * m(:,:) + rate(:,:, 325) = rate(:,:, 325) * m(:,:) + rate(:,:, 326) = rate(:,:, 326) * m(:,:) + rate(:,:, 327) = rate(:,:, 327) * m(:,:) + rate(:,:, 328) = rate(:,:, 328) * m(:,:) + rate(:,:, 329) = rate(:,:, 329) * m(:,:) + rate(:,:, 330) = rate(:,:, 330) * m(:,:) + rate(:,:, 331) = rate(:,:, 331) * m(:,:) + rate(:,:, 332) = rate(:,:, 332) * m(:,:) + rate(:,:, 333) = rate(:,:, 333) * m(:,:) + rate(:,:, 334) = rate(:,:, 334) * m(:,:) + rate(:,:, 335) = rate(:,:, 335) * m(:,:) + rate(:,:, 336) = rate(:,:, 336) * m(:,:) + rate(:,:, 337) = rate(:,:, 337) * m(:,:) + rate(:,:, 338) = rate(:,:, 338) * m(:,:) + rate(:,:, 339) = rate(:,:, 339) * m(:,:) + rate(:,:, 340) = rate(:,:, 340) * m(:,:) + rate(:,:, 341) = rate(:,:, 341) * m(:,:) + rate(:,:, 342) = rate(:,:, 342) * m(:,:) + rate(:,:, 343) = rate(:,:, 343) * m(:,:) + rate(:,:, 344) = rate(:,:, 344) * m(:,:) + rate(:,:, 345) = rate(:,:, 345) * m(:,:) + rate(:,:, 346) = rate(:,:, 346) * m(:,:) + rate(:,:, 347) = rate(:,:, 347) * m(:,:) + rate(:,:, 348) = rate(:,:, 348) * m(:,:) + rate(:,:, 349) = rate(:,:, 349) * m(:,:) + rate(:,:, 350) = rate(:,:, 350) * m(:,:) + rate(:,:, 351) = rate(:,:, 351) * m(:,:) + rate(:,:, 352) = rate(:,:, 352) * m(:,:) + rate(:,:, 353) = rate(:,:, 353) * m(:,:) + rate(:,:, 354) = rate(:,:, 354) * m(:,:) + rate(:,:, 355) = rate(:,:, 355) * m(:,:) + rate(:,:, 356) = rate(:,:, 356) * m(:,:) + rate(:,:, 357) = rate(:,:, 357) * m(:,:) + rate(:,:, 358) = rate(:,:, 358) * m(:,:) + rate(:,:, 359) = rate(:,:, 359) * m(:,:) + rate(:,:, 360) = rate(:,:, 360) * m(:,:) + rate(:,:, 361) = rate(:,:, 361) * m(:,:) + rate(:,:, 362) = rate(:,:, 362) * m(:,:) + rate(:,:, 363) = rate(:,:, 363) * m(:,:) + rate(:,:, 364) = rate(:,:, 364) * m(:,:) + rate(:,:, 365) = rate(:,:, 365) * m(:,:) + rate(:,:, 366) = rate(:,:, 366) * m(:,:) + rate(:,:, 368) = rate(:,:, 368) * m(:,:) + rate(:,:, 369) = rate(:,:, 369) * m(:,:) + rate(:,:, 370) = rate(:,:, 370) * m(:,:) + rate(:,:, 371) = rate(:,:, 371) * m(:,:) + rate(:,:, 372) = rate(:,:, 372) * m(:,:) + rate(:,:, 373) = rate(:,:, 373) * m(:,:) + rate(:,:, 374) = rate(:,:, 374) * m(:,:) + rate(:,:, 375) = rate(:,:, 375) * m(:,:) + rate(:,:, 376) = rate(:,:, 376) * m(:,:) + rate(:,:, 377) = rate(:,:, 377) * m(:,:) + rate(:,:, 378) = rate(:,:, 378) * m(:,:) + rate(:,:, 379) = rate(:,:, 379) * m(:,:) + rate(:,:, 380) = rate(:,:, 380) * m(:,:) + rate(:,:, 381) = rate(:,:, 381) * m(:,:) + rate(:,:, 382) = rate(:,:, 382) * m(:,:) + rate(:,:, 383) = rate(:,:, 383) * m(:,:) + rate(:,:, 384) = rate(:,:, 384) * m(:,:) + rate(:,:, 386) = rate(:,:, 386) * m(:,:) + rate(:,:, 387) = rate(:,:, 387) * m(:,:) + rate(:,:, 388) = rate(:,:, 388) * m(:,:) + rate(:,:, 389) = rate(:,:, 389) * m(:,:) + rate(:,:, 390) = rate(:,:, 390) * m(:,:) + rate(:,:, 391) = rate(:,:, 391) * m(:,:) + rate(:,:, 392) = rate(:,:, 392) * m(:,:) + rate(:,:, 393) = rate(:,:, 393) * m(:,:) + rate(:,:, 394) = rate(:,:, 394) * m(:,:) + rate(:,:, 395) = rate(:,:, 395) * m(:,:) + rate(:,:, 396) = rate(:,:, 396) * m(:,:) + rate(:,:, 397) = rate(:,:, 397) * m(:,:) + rate(:,:, 398) = rate(:,:, 398) * m(:,:) + rate(:,:, 399) = rate(:,:, 399) * m(:,:) + rate(:,:, 400) = rate(:,:, 400) * m(:,:) + rate(:,:, 401) = rate(:,:, 401) * m(:,:) + rate(:,:, 402) = rate(:,:, 402) * m(:,:) + rate(:,:, 403) = rate(:,:, 403) * m(:,:) + rate(:,:, 404) = rate(:,:, 404) * m(:,:) + rate(:,:, 405) = rate(:,:, 405) * m(:,:) + rate(:,:, 406) = rate(:,:, 406) * m(:,:) + rate(:,:, 407) = rate(:,:, 407) * m(:,:) + rate(:,:, 408) = rate(:,:, 408) * m(:,:) + rate(:,:, 409) = rate(:,:, 409) * m(:,:) + rate(:,:, 410) = rate(:,:, 410) * m(:,:) + rate(:,:, 411) = rate(:,:, 411) * m(:,:) + rate(:,:, 412) = rate(:,:, 412) * m(:,:) + rate(:,:, 413) = rate(:,:, 413) * m(:,:) + rate(:,:, 414) = rate(:,:, 414) * m(:,:) + rate(:,:, 415) = rate(:,:, 415) * m(:,:) + rate(:,:, 416) = rate(:,:, 416) * m(:,:) + rate(:,:, 417) = rate(:,:, 417) * m(:,:) + rate(:,:, 418) = rate(:,:, 418) * m(:,:) + rate(:,:, 419) = rate(:,:, 419) * m(:,:) + rate(:,:, 420) = rate(:,:, 420) * m(:,:) + rate(:,:, 421) = rate(:,:, 421) * m(:,:) + rate(:,:, 422) = rate(:,:, 422) * m(:,:) + rate(:,:, 423) = rate(:,:, 423) * m(:,:) + rate(:,:, 424) = rate(:,:, 424) * m(:,:) + rate(:,:, 425) = rate(:,:, 425) * m(:,:) + rate(:,:, 426) = rate(:,:, 426) * m(:,:) + rate(:,:, 427) = rate(:,:, 427) * m(:,:) + rate(:,:, 428) = rate(:,:, 428) * m(:,:) + rate(:,:, 429) = rate(:,:, 429) * m(:,:) + rate(:,:, 430) = rate(:,:, 430) * m(:,:) + rate(:,:, 431) = rate(:,:, 431) * m(:,:) + rate(:,:, 432) = rate(:,:, 432) * m(:,:) + rate(:,:, 433) = rate(:,:, 433) * m(:,:) + rate(:,:, 434) = rate(:,:, 434) * m(:,:) + rate(:,:, 435) = rate(:,:, 435) * m(:,:) + rate(:,:, 436) = rate(:,:, 436) * m(:,:) + rate(:,:, 437) = rate(:,:, 437) * m(:,:) + rate(:,:, 438) = rate(:,:, 438) * m(:,:) + rate(:,:, 439) = rate(:,:, 439) * m(:,:) + rate(:,:, 440) = rate(:,:, 440) * m(:,:) + rate(:,:, 441) = rate(:,:, 441) * m(:,:) + rate(:,:, 443) = rate(:,:, 443) * m(:,:) + rate(:,:, 444) = rate(:,:, 444) * m(:,:) + rate(:,:, 445) = rate(:,:, 445) * m(:,:) + rate(:,:, 446) = rate(:,:, 446) * m(:,:) + rate(:,:, 447) = rate(:,:, 447) * m(:,:) + rate(:,:, 448) = rate(:,:, 448) * m(:,:) + rate(:,:, 449) = rate(:,:, 449) * m(:,:) + rate(:,:, 450) = rate(:,:, 450) * m(:,:) + rate(:,:, 451) = rate(:,:, 451) * m(:,:) + rate(:,:, 452) = rate(:,:, 452) * m(:,:) + rate(:,:, 453) = rate(:,:, 453) * m(:,:) + rate(:,:, 454) = rate(:,:, 454) * m(:,:) + rate(:,:, 455) = rate(:,:, 455) * m(:,:) + rate(:,:, 456) = rate(:,:, 456) * m(:,:) + rate(:,:, 457) = rate(:,:, 457) * m(:,:) + rate(:,:, 458) = rate(:,:, 458) * m(:,:) + rate(:,:, 459) = rate(:,:, 459) * m(:,:) + rate(:,:, 460) = rate(:,:, 460) * m(:,:) + rate(:,:, 461) = rate(:,:, 461) * m(:,:) + rate(:,:, 462) = rate(:,:, 462) * m(:,:) + rate(:,:, 463) = rate(:,:, 463) * m(:,:) + rate(:,:, 464) = rate(:,:, 464) * m(:,:) + rate(:,:, 465) = rate(:,:, 465) * m(:,:) + rate(:,:, 466) = rate(:,:, 466) * m(:,:) + rate(:,:, 467) = rate(:,:, 467) * m(:,:) + rate(:,:, 468) = rate(:,:, 468) * m(:,:) + rate(:,:, 469) = rate(:,:, 469) * m(:,:) + rate(:,:, 470) = rate(:,:, 470) * m(:,:) + rate(:,:, 471) = rate(:,:, 471) * m(:,:) + rate(:,:, 472) = rate(:,:, 472) * m(:,:) + rate(:,:, 473) = rate(:,:, 473) * m(:,:) + rate(:,:, 474) = rate(:,:, 474) * m(:,:) + rate(:,:, 475) = rate(:,:, 475) * m(:,:) + rate(:,:, 476) = rate(:,:, 476) * m(:,:) + rate(:,:, 477) = rate(:,:, 477) * m(:,:) + rate(:,:, 478) = rate(:,:, 478) * m(:,:) + rate(:,:, 479) = rate(:,:, 479) * m(:,:) + rate(:,:, 480) = rate(:,:, 480) * m(:,:) + rate(:,:, 481) = rate(:,:, 481) * m(:,:) + rate(:,:, 482) = rate(:,:, 482) * m(:,:) + rate(:,:, 483) = rate(:,:, 483) * m(:,:) + rate(:,:, 484) = rate(:,:, 484) * m(:,:) + rate(:,:, 485) = rate(:,:, 485) * m(:,:) + rate(:,:, 486) = rate(:,:, 486) * m(:,:) + rate(:,:, 487) = rate(:,:, 487) * m(:,:) + rate(:,:, 488) = rate(:,:, 488) * m(:,:) + rate(:,:, 489) = rate(:,:, 489) * m(:,:) + rate(:,:, 490) = rate(:,:, 490) * m(:,:) + rate(:,:, 491) = rate(:,:, 491) * m(:,:) + rate(:,:, 505) = rate(:,:, 505) * m(:,:) + rate(:,:, 506) = rate(:,:, 506) * m(:,:) + rate(:,:, 507) = rate(:,:, 507) * m(:,:) + rate(:,:, 508) = rate(:,:, 508) * m(:,:) + rate(:,:, 509) = rate(:,:, 509) * m(:,:) + rate(:,:, 510) = rate(:,:, 510) * m(:,:) + rate(:,:, 511) = rate(:,:, 511) * m(:,:) + rate(:,:, 512) = rate(:,:, 512) * m(:,:) + rate(:,:, 513) = rate(:,:, 513) * m(:,:) + rate(:,:, 514) = rate(:,:, 514) * m(:,:) + rate(:,:, 515) = rate(:,:, 515) * m(:,:) + rate(:,:, 516) = rate(:,:, 516) * m(:,:) + rate(:,:, 517) = rate(:,:, 517) * m(:,:) + rate(:,:, 518) = rate(:,:, 518) * m(:,:) + rate(:,:, 519) = rate(:,:, 519) * m(:,:) + rate(:,:, 520) = rate(:,:, 520) * m(:,:) + rate(:,:, 521) = rate(:,:, 521) * m(:,:) + rate(:,:, 522) = rate(:,:, 522) * m(:,:) + rate(:,:, 523) = rate(:,:, 523) * m(:,:) + rate(:,:, 524) = rate(:,:, 524) * m(:,:) + rate(:,:, 525) = rate(:,:, 525) * m(:,:) + rate(:,:, 526) = rate(:,:, 526) * m(:,:) + rate(:,:, 527) = rate(:,:, 527) * m(:,:) + rate(:,:, 528) = rate(:,:, 528) * m(:,:) + rate(:,:, 529) = rate(:,:, 529) * m(:,:) + rate(:,:, 531) = rate(:,:, 531) * m(:,:) + rate(:,:, 532) = rate(:,:, 532) * m(:,:) + rate(:,:, 533) = rate(:,:, 533) * m(:,:) + rate(:,:, 535) = rate(:,:, 535) * m(:,:) + rate(:,:, 540) = rate(:,:, 540) * m(:,:) + rate(:,:, 541) = rate(:,:, 541) * m(:,:) + rate(:,:, 542) = rate(:,:, 542) * m(:,:) + rate(:,:, 545) = rate(:,:, 545) * m(:,:) + rate(:,:, 546) = rate(:,:, 546) * m(:,:) + rate(:,:, 547) = rate(:,:, 547) * m(:,:) + rate(:,:, 550) = rate(:,:, 550) * m(:,:) + end subroutine adjrxt + end module mo_adjrxt diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_exp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_exp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_exp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s2/mo_exp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_imp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_imp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_imp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s2/mo_imp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_indprd.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_indprd.F90 similarity index 84% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_indprd.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s2/mo_indprd.F90 index 70d5135f89..bcc7ac9ab1 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_indprd.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_indprd.F90 @@ -20,172 +20,175 @@ subroutine indprd( class, prod, nprod, y, extfrc, rxt, chnkpnts ) ! ... "independent" production for Explicit species !-------------------------------------------------------------------- if( class == 1 ) then - prod(:,1) =rxt(:,479)*y(:,219)*y(:,120) +rxt(:,488)*y(:,121) - prod(:,2) = (rxt(:,412)*y(:,201) +rxt(:,415)*y(:,212) +rxt(:,418)*y(:,214) + & - rxt(:,422)*y(:,142))*y(:,125) +.500_r8*rxt(:,351)*y(:,219)*y(:,109) & - +.200_r8*rxt(:,447)*y(:,217)*y(:,124) +.500_r8*rxt(:,459)*y(:,179) & - *y(:,126) + prod(:,1) =rxt(:,491)*y(:,221)*y(:,119) +rxt(:,499)*y(:,120) + prod(:,2) = (rxt(:,424)*y(:,203) +rxt(:,427)*y(:,214) +rxt(:,430)*y(:,216) + & + rxt(:,434)*y(:,144))*y(:,124) +.500_r8*rxt(:,363)*y(:,221)*y(:,108) & + +.200_r8*rxt(:,459)*y(:,219)*y(:,123) +.500_r8*rxt(:,471)*y(:,181) & + *y(:,125) !-------------------------------------------------------------------- ! ... "independent" production for Implicit species !-------------------------------------------------------------------- else if( class == 4 ) then - prod(:,153) = 0._r8 - prod(:,156) = 0._r8 - prod(:,1) = + extfrc(:,14) - prod(:,2) = 0._r8 - prod(:,3) = + extfrc(:,11) - prod(:,187) = 0._r8 - prod(:,72) = 0._r8 - prod(:,122) = 0._r8 + prod(:,155) = 0._r8 + prod(:,152) = 0._r8 + prod(:,1) = 0._r8 + prod(:,2) = + extfrc(:,3) + prod(:,181) = 0._r8 prod(:,73) = 0._r8 - prod(:,116) = 0._r8 + prod(:,121) = 0._r8 + prod(:,74) = 0._r8 + prod(:,115) = 0._r8 prod(:,129) = 0._r8 prod(:,98) = 0._r8 - prod(:,147) = 0._r8 + prod(:,146) = 0._r8 prod(:,106) = 0._r8 prod(:,85) = 0._r8 prod(:,112) = 0._r8 - prod(:,211) = 0._r8 + prod(:,212) = 0._r8 prod(:,86) = 0._r8 - prod(:,226) = 0._r8 - prod(:,143) = 0._r8 - prod(:,4) = 0._r8 - prod(:,88) = 0._r8 + prod(:,220) = 0._r8 + prod(:,141) = 0._r8 + prod(:,3) = 0._r8 + prod(:,89) = 0._r8 prod(:,109) = 0._r8 prod(:,101) = 0._r8 - prod(:,142) = 0._r8 - prod(:,94) = 0._r8 - prod(:,110) = 0._r8 - prod(:,103) = 0._r8 - prod(:,188) = 0._r8 - prod(:,121) = 0._r8 - prod(:,59) = 0._r8 + prod(:,140) = 0._r8 prod(:,95) = 0._r8 - prod(:,56) = 0._r8 + prod(:,111) = 0._r8 + prod(:,102) = 0._r8 + prod(:,188) = 0._r8 + prod(:,120) = 0._r8 + prod(:,58) = 0._r8 + prod(:,96) = 0._r8 + prod(:,55) = 0._r8 + prod(:,67) = 0._r8 prod(:,68) = 0._r8 + prod(:,59) = 0._r8 prod(:,69) = 0._r8 prod(:,60) = 0._r8 prod(:,70) = 0._r8 prod(:,61) = 0._r8 - prod(:,71) = 0._r8 + prod(:,132) = 0._r8 + prod(:,216) = 0._r8 + prod(:,147) = 0._r8 prod(:,62) = 0._r8 - prod(:,131) = 0._r8 - prod(:,215) = 0._r8 - prod(:,148) = 0._r8 - prod(:,63) = 0._r8 - prod(:,192) = 0._r8 + prod(:,190) = 0._r8 prod(:,114) = 0._r8 - prod(:,57) = 0._r8 - prod(:,182) = 0._r8 - prod(:,202) = 0._r8 + prod(:,56) = 0._r8 + prod(:,183) = 0._r8 + prod(:,203) = 0._r8 prod(:,158) = 0._r8 - prod(:,150) = 0._r8 + prod(:,149) = 0._r8 prod(:,169) = 0._r8 - prod(:,128) = 0._r8 - prod(:,212) = 0._r8 - prod(:,117) = 0._r8 - prod(:,223) = 0._r8 - prod(:,75) = 0._r8 - prod(:,54) = 0._r8 - prod(:,218) = 0._r8 - prod(:,180) = 0._r8 - prod(:,5) = 0._r8 - prod(:,195) = + extfrc(:,12) - prod(:,170) = 0._r8 - prod(:,89) = 0._r8 + prod(:,127) = 0._r8 + prod(:,213) = 0._r8 + prod(:,116) = 0._r8 + prod(:,228) = 0._r8 + prod(:,76) = 0._r8 + prod(:,53) = 0._r8 + prod(:,229) = 0._r8 + prod(:,185) = 0._r8 + prod(:,4) = 0._r8 + prod(:,199) = + extfrc(:,2) + prod(:,189) = 0._r8 + prod(:,87) = 0._r8 prod(:,91) = 0._r8 prod(:,79) = 0._r8 - prod(:,99) = 0._r8 + prod(:,100) = 0._r8 + prod(:,5) = 0._r8 prod(:,6) = 0._r8 prod(:,7) = 0._r8 prod(:,8) = 0._r8 - prod(:,9) = 0._r8 + prod(:,63) = 0._r8 + prod(:,178) = 0._r8 + prod(:,195) = 0._r8 + prod(:,184) = 0._r8 + prod(:,224) = 0._r8 + prod(:,204) = 0._r8 + prod(:,57) = 0._r8 + prod(:,148) = 0._r8 prod(:,64) = 0._r8 - prod(:,177) = 0._r8 - prod(:,193) = 0._r8 - prod(:,186) = 0._r8 - prod(:,213) = 0._r8 - prod(:,210) = 0._r8 - prod(:,58) = 0._r8 - prod(:,149) = 0._r8 - prod(:,65) = 0._r8 prod(:,171) = 0._r8 prod(:,90) = 0._r8 prod(:,92) = 0._r8 - prod(:,102) = 0._r8 + prod(:,103) = 0._r8 prod(:,225) = 0._r8 - prod(:,76) = 0._r8 - prod(:,183) = 0._r8 - prod(:,100) = 0._r8 + prod(:,77) = 0._r8 + prod(:,176) = 0._r8 + prod(:,99) = 0._r8 prod(:,214) = 0._r8 - prod(:,123) = 0._r8 - prod(:,167) = 0._r8 + prod(:,131) = 0._r8 + prod(:,166) = 0._r8 prod(:,172) = 0._r8 - prod(:,198) = 0._r8 + prod(:,192) = 0._r8 prod(:,84) = 0._r8 - prod(:,197) = 0._r8 - prod(:,111) = 0._r8 - prod(:,66) = 0._r8 - prod(:,174) = 0._r8 - prod(:,146) = 0._r8 - prod(:,140) = 0._r8 - prod(:,200) = 0._r8 - prod(:,120) = 0._r8 - prod(:,163) = 0._r8 - prod(:,50) = 0._r8 + prod(:,193) = 0._r8 + prod(:,110) = 0._r8 + prod(:,65) = 0._r8 + prod(:,173) = 0._r8 + prod(:,145) = 0._r8 + prod(:,143) = 0._r8 prod(:,201) = 0._r8 + prod(:,119) = 0._r8 + prod(:,159) = 0._r8 + prod(:,49) = 0._r8 + prod(:,202) = 0._r8 prod(:,104) = 0._r8 prod(:,136) = 0._r8 prod(:,105) = 0._r8 - prod(:,145) = 0._r8 - prod(:,184) = 0._r8 - prod(:,207) = 0._r8 - prod(:,134) = + extfrc(:,16) - prod(:,77) = 0._r8 + prod(:,144) = 0._r8 + prod(:,180) = 0._r8 + prod(:,208) = 0._r8 + prod(:,157) = 0._r8 + prod(:,93) = 0._r8 prod(:,97) = 0._r8 - prod(:,115) = 0._r8 - prod(:,191) = 0._r8 + prod(:,123) = 0._r8 + prod(:,187) = 0._r8 + prod(:,9) = 0._r8 prod(:,10) = 0._r8 prod(:,11) = 0._r8 + prod(:,54) = 0._r8 prod(:,12) = 0._r8 - prod(:,55) = 0._r8 prod(:,13) = 0._r8 prod(:,14) = 0._r8 - prod(:,15) = 0._r8 - prod(:,221) = + extfrc(:,15) - prod(:,222) = + extfrc(:,9) - prod(:,219) = 0._r8 - prod(:,176) = 0._r8 - prod(:,118) = 0._r8 - prod(:,16) = + extfrc(:,1) - prod(:,17) = + extfrc(:,2) - prod(:,18) = 0._r8 - prod(:,19) = + extfrc(:,6) - prod(:,20) = + extfrc(:,7) - prod(:,227) = (rxt(:,5) +2.000_r8*rxt(:,6)) - prod(:,228) = 0._r8 - prod(:,21) = 0._r8 + prod(:,230) = + extfrc(:,13) + prod(:,217) = + extfrc(:,4) + prod(:,226) = 0._r8 + prod(:,174) = 0._r8 + prod(:,117) = 0._r8 + prod(:,15) = + extfrc(:,5) + prod(:,16) = + extfrc(:,6) + prod(:,17) = 0._r8 + prod(:,18) = + extfrc(:,7) + prod(:,19) = 0._r8 + prod(:,223) = 0._r8 + prod(:,215) = 0._r8 + prod(:,71) = 0._r8 + prod(:,72) = 0._r8 + prod(:,222) = 0._r8 + prod(:,20) = 0._r8 prod(:,107) = 0._r8 prod(:,113) = 0._r8 - prod(:,87) = 0._r8 - prod(:,139) = 0._r8 - prod(:,67) = 0._r8 + prod(:,88) = 0._r8 + prod(:,138) = 0._r8 + prod(:,66) = 0._r8 prod(:,130) = 0._r8 - prod(:,74) = 0._r8 + prod(:,75) = 0._r8 prod(:,108) = 0._r8 - prod(:,22) = 0._r8 - prod(:,23) = + extfrc(:,10) - prod(:,141) = 0._r8 - prod(:,119) = 0._r8 - prod(:,137) = 0._r8 - prod(:,24) = 0._r8 - prod(:,203) = 0._r8 - prod(:,175) = + extfrc(:,8) - prod(:,93) = 0._r8 - prod(:,25) = + extfrc(:,3) - prod(:,26) = + extfrc(:,4) + prod(:,21) = 0._r8 + prod(:,22) = + extfrc(:,8) + prod(:,139) = 0._r8 + prod(:,118) = 0._r8 + prod(:,161) = 0._r8 + prod(:,23) = 0._r8 + prod(:,211) = 0._r8 + prod(:,179) = + extfrc(:,9) + prod(:,94) = 0._r8 + prod(:,24) = + extfrc(:,10) + prod(:,25) = + extfrc(:,11) + prod(:,26) = 0._r8 prod(:,27) = 0._r8 - prod(:,28) = + extfrc(:,5) + prod(:,28) = 0._r8 prod(:,29) = 0._r8 prod(:,30) = 0._r8 prod(:,31) = 0._r8 @@ -201,63 +204,62 @@ subroutine indprd( class, prod, nprod, y, extfrc, rxt, chnkpnts ) prod(:,41) = 0._r8 prod(:,42) = 0._r8 prod(:,43) = 0._r8 - prod(:,44) = 0._r8 - prod(:,45) = + extfrc(:,13) + prod(:,44) = + extfrc(:,1) prod(:,80) = 0._r8 + prod(:,153) = 0._r8 + prod(:,150) = 0._r8 + prod(:,133) = 0._r8 + prod(:,186) = 0._r8 + prod(:,194) = 0._r8 prod(:,154) = 0._r8 - prod(:,151) = 0._r8 - prod(:,132) = 0._r8 - prod(:,185) = 0._r8 - prod(:,190) = 0._r8 - prod(:,155) = 0._r8 prod(:,78) = 0._r8 prod(:,81) = 0._r8 prod(:,82) = 0._r8 - prod(:,159) = 0._r8 + prod(:,160) = 0._r8 prod(:,83) = 0._r8 - prod(:,124) = 0._r8 - prod(:,138) = 0._r8 - prod(:,179) = 0._r8 + prod(:,122) = 0._r8 + prod(:,137) = 0._r8 + prod(:,182) = 0._r8 + prod(:,45) = 0._r8 + prod(:,134) = 0._r8 prod(:,46) = 0._r8 - prod(:,133) = 0._r8 - prod(:,47) = 0._r8 - prod(:,125) = 0._r8 - prod(:,173) = 0._r8 - prod(:,168) = 0._r8 - prod(:,152) = 0._r8 - prod(:,209) = 0._r8 - prod(:,220) = 0._r8 + prod(:,124) = 0._r8 + prod(:,175) = 0._r8 + prod(:,170) = 0._r8 + prod(:,151) = 0._r8 + prod(:,210) = 0._r8 + prod(:,227) = 0._r8 prod(:,165) = 0._r8 - prod(:,144) = 0._r8 - prod(:,96) = 0._r8 - prod(:,160) = 0._r8 - prod(:,224) = 0._r8 - prod(:,126) = 0._r8 - prod(:,204) = 0._r8 + prod(:,142) = 0._r8 + prod(:,128) = 0._r8 + prod(:,167) = 0._r8 + prod(:,221) = 0._r8 + prod(:,125) = 0._r8 prod(:,205) = 0._r8 - prod(:,48) = 0._r8 - prod(:,49) = 0._r8 prod(:,206) = 0._r8 - prod(:,161) = 0._r8 - prod(:,208) = 0._r8 - prod(:,178) = 0._r8 - prod(:,157) = 0._r8 - prod(:,51) = 0._r8 - prod(:,189) = 0._r8 - prod(:,216) =rxt(:,5) - prod(:,217) = 0._r8 - prod(:,127) = 0._r8 - prod(:,166) = 0._r8 - prod(:,196) = 0._r8 - prod(:,194) = 0._r8 - prod(:,181) = 0._r8 + prod(:,47) = 0._r8 + prod(:,48) = 0._r8 + prod(:,207) = 0._r8 prod(:,162) = 0._r8 - prod(:,52) = 0._r8 - prod(:,199) = 0._r8 + prod(:,209) = 0._r8 + prod(:,177) = 0._r8 + prod(:,156) = 0._r8 + prod(:,50) = 0._r8 + prod(:,191) = 0._r8 + prod(:,218) = 0._r8 + prod(:,219) = 0._r8 + prod(:,126) = 0._r8 + prod(:,168) = 0._r8 + prod(:,198) = 0._r8 + prod(:,197) = 0._r8 + prod(:,196) = 0._r8 + prod(:,163) = 0._r8 + prod(:,51) = 0._r8 + prod(:,200) = 0._r8 prod(:,164) = 0._r8 - prod(:,53) = 0._r8 + prod(:,52) = 0._r8 prod(:,135) = 0._r8 - prod(:,229) = 0._r8 + prod(:,231) = + extfrc(:,12) end if end subroutine indprd end module mo_indprd diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lin_matrix.F90 new file mode 100644 index 0000000000..3718ede036 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lin_matrix.F90 @@ -0,0 +1,657 @@ + module mo_lin_matrix + use chem_mods, only: veclen + private + public :: linmat + contains + subroutine linmat01( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,661) = -( rxt(k,19) + het_rates(k,1) ) + mat(k,627) = -( rxt(k,20) + het_rates(k,2) ) + mat(k,1) = -( het_rates(k,3) ) + mat(k,2) = -( het_rates(k,4) ) + mat(k,936) = -( het_rates(k,5) ) + mat(k,168) = -( het_rates(k,6) ) + mat(k,412) = -( rxt(k,21) + het_rates(k,7) ) + mat(k,174) = -( rxt(k,22) + het_rates(k,8) ) + mat(k,376) = -( rxt(k,23) + het_rates(k,9) ) + mat(k,462) = -( rxt(k,24) + het_rates(k,10) ) + mat(k,413) = .500_r8*rxt(k,21) + mat(k,175) = rxt(k,22) + mat(k,648) = .200_r8*rxt(k,70) + mat(k,703) = .060_r8*rxt(k,72) + mat(k,282) = -( rxt(k,25) + het_rates(k,11) ) + mat(k,647) = .200_r8*rxt(k,70) + mat(k,701) = .200_r8*rxt(k,72) + mat(k,585) = -( rxt(k,26) + het_rates(k,12) ) + mat(k,225) = rxt(k,46) + mat(k,1003) = rxt(k,56) + mat(k,649) = .200_r8*rxt(k,70) + mat(k,704) = .150_r8*rxt(k,72) + mat(k,323) = -( rxt(k,27) + het_rates(k,13) ) + mat(k,702) = .210_r8*rxt(k,72) + mat(k,229) = -( het_rates(k,14) ) + mat(k,352) = -( het_rates(k,15) ) + mat(k,1446) = -( het_rates(k,16) ) + mat(k,233) = rxt(k,74) + mat(k,1803) = rxt(k,75) + mat(k,545) = rxt(k,77) + mat(k,144) = rxt(k,79) + mat(k,150) = rxt(k,80) + mat(k,477) = 2.000_r8*rxt(k,86) + mat(k,590) = rxt(k,87) + mat(k,383) = 3.000_r8*rxt(k,90) + mat(k,108) = 2.000_r8*rxt(k,98) + mat(k,816) = rxt(k,99) + mat(k,771) = rxt(k,105) + mat(k,232) = -( rxt(k,74) + het_rates(k,17) ) + mat(k,1810) = -( rxt(k,75) + het_rates(k,18) ) + mat(k,548) = rxt(k,76) + mat(k,543) = -( rxt(k,76) + rxt(k,77) + rxt(k,536) + rxt(k,539) + rxt(k,544) & + + het_rates(k,19) ) + mat(k,3) = -( het_rates(k,20) ) + mat(k,241) = -( het_rates(k,21) ) + mat(k,338) = rxt(k,28) + mat(k,339) = -( rxt(k,28) + het_rates(k,22) ) + mat(k,294) = -( het_rates(k,23) ) + mat(k,535) = -( het_rates(k,24) ) + mat(k,268) = -( het_rates(k,25) ) + mat(k,347) = -( rxt(k,29) + het_rates(k,26) ) + mat(k,300) = -( het_rates(k,27) ) + mat(k,1023) = -( het_rates(k,28) ) + mat(k,1350) = .700_r8*rxt(k,55) + mat(k,406) = -( rxt(k,30) + het_rates(k,29) ) + mat(k,110) = -( het_rates(k,30) ) + mat(k,272) = -( rxt(k,31) + het_rates(k,31) ) + mat(k,100) = -( rxt(k,78) + het_rates(k,32) ) + mat(k,142) = -( rxt(k,79) + het_rates(k,33) ) + mat(k,147) = -( rxt(k,80) + het_rates(k,34) ) + mat(k,114) = -( rxt(k,81) + het_rates(k,35) ) + mat(k,152) = -( rxt(k,82) + het_rates(k,36) ) + mat(k,118) = -( rxt(k,83) + het_rates(k,37) ) + mat(k,157) = -( rxt(k,84) + het_rates(k,38) ) + mat(k,122) = -( rxt(k,85) + het_rates(k,39) ) + mat(k,476) = -( rxt(k,86) + het_rates(k,40) ) + mat(k,1528) = -( rxt(k,32) + rxt(k,33) + het_rates(k,41) ) + mat(k,667) = .100_r8*rxt(k,19) + mat(k,634) = .100_r8*rxt(k,20) + mat(k,452) = rxt(k,38) + mat(k,1465) = .180_r8*rxt(k,39) + mat(k,1113) = rxt(k,43) + mat(k,1082) = .330_r8*rxt(k,45) + mat(k,1092) = rxt(k,47) + mat(k,698) = rxt(k,49) + mat(k,1233) = 1.340_r8*rxt(k,50) + mat(k,853) = rxt(k,57) + mat(k,531) = rxt(k,62) + mat(k,397) = rxt(k,63) + mat(k,644) = .375_r8*rxt(k,65) + mat(k,487) = .400_r8*rxt(k,67) + mat(k,1102) = .680_r8*rxt(k,69) + mat(k,440) = rxt(k,281) + mat(k,460) = 2.000_r8*rxt(k,311) + mat(k,589) = -( rxt(k,87) + het_rates(k,42) ) + mat(k,126) = -( rxt(k,88) + het_rates(k,43) ) + mat(k,1047) = -( rxt(k,34) + het_rates(k,44) ) + mat(k,665) = .400_r8*rxt(k,19) + mat(k,632) = .400_r8*rxt(k,20) + mat(k,349) = rxt(k,29) + mat(k,1074) = .330_r8*rxt(k,45) + mat(k,320) = rxt(k,53) + mat(k,529) = rxt(k,62) + mat(k,368) = -( rxt(k,89) + het_rates(k,45) ) + mat(k,103) = -( het_rates(k,46) ) + mat(k,971) = -( rxt(k,35) + het_rates(k,47) ) + mat(k,664) = .250_r8*rxt(k,19) + mat(k,631) = .250_r8*rxt(k,20) + mat(k,408) = .820_r8*rxt(k,30) + mat(k,1073) = .170_r8*rxt(k,45) + mat(k,638) = .300_r8*rxt(k,65) + mat(k,484) = .050_r8*rxt(k,67) + mat(k,1095) = .500_r8*rxt(k,69) + mat(k,1240) = -( rxt(k,36) + het_rates(k,48) ) + mat(k,379) = .180_r8*rxt(k,23) + mat(k,325) = rxt(k,27) + mat(k,657) = .400_r8*rxt(k,70) + mat(k,712) = .540_r8*rxt(k,72) + mat(k,421) = .510_r8*rxt(k,73) + mat(k,688) = -( het_rates(k,49) ) + mat(k,605) = -( rxt(k,37) + het_rates(k,50) ) + mat(k,799) = -( het_rates(k,51) ) + mat(k,451) = -( rxt(k,38) + het_rates(k,52) ) + mat(k,1462) = -( rxt(k,39) + rxt(k,40) + het_rates(k,53) ) + mat(k,382) = -( rxt(k,90) + het_rates(k,54) ) + mat(k,2224) = -( het_rates(k,55) ) + mat(k,234) = rxt(k,74) + mat(k,102) = 4.000_r8*rxt(k,78) + mat(k,146) = rxt(k,79) + mat(k,117) = 2.000_r8*rxt(k,81) + mat(k,156) = 2.000_r8*rxt(k,82) + mat(k,121) = 2.000_r8*rxt(k,83) + mat(k,161) = rxt(k,84) + mat(k,125) = 2.000_r8*rxt(k,85) + mat(k,128) = 3.000_r8*rxt(k,88) + mat(k,374) = rxt(k,89) + mat(k,184) = 2.000_r8*rxt(k,91) + mat(k,95) = 2.000_r8*rxt(k,92) + mat(k,2251) = rxt(k,93) + mat(k,992) = rxt(k,94) + mat(k,252) = rxt(k,97) + mat(k,248) = rxt(k,100) + mat(k,258) = rxt(k,101) + mat(k,311) = rxt(k,102) + mat(k,2069) = rxt(k,103) + mat(k,828) = rxt(k,106) + mat(k,183) = -( rxt(k,91) + het_rates(k,56) ) + mat(k,94) = -( rxt(k,92) + rxt(k,222) + het_rates(k,57) ) + mat(k,2252) = -( rxt(k,93) + het_rates(k,58) ) + mat(k,993) = rxt(k,95) + mat(k,332) = rxt(k,107) + mat(k,96) = 2.000_r8*rxt(k,222) + mat(k,985) = -( rxt(k,94) + rxt(k,95) + rxt(k,538) + rxt(k,543) + rxt(k,549) & + + het_rates(k,59) ) + mat(k,4) = -( het_rates(k,60) ) + mat(k,1175) = -( het_rates(k,61) ) + mat(k,176) = 1.500_r8*rxt(k,22) + mat(k,378) = .450_r8*rxt(k,23) + mat(k,587) = .600_r8*rxt(k,26) + mat(k,324) = rxt(k,27) + mat(k,1522) = rxt(k,32) + rxt(k,33) + mat(k,1048) = rxt(k,34) + mat(k,1239) = rxt(k,36) + mat(k,1460) = .380_r8*rxt(k,39) + mat(k,1044) = rxt(k,41) + mat(k,1111) = rxt(k,43) + mat(k,980) = 2.000_r8*rxt(k,44) + mat(k,1079) = .330_r8*rxt(k,45) + mat(k,1226) = 1.340_r8*rxt(k,51) + mat(k,1354) = .700_r8*rxt(k,55) + mat(k,203) = 1.500_r8*rxt(k,64) + mat(k,643) = .250_r8*rxt(k,65) + mat(k,999) = rxt(k,68) + mat(k,1099) = 1.700_r8*rxt(k,69) + mat(k,363) = rxt(k,110) + mat(k,1043) = -( rxt(k,41) + het_rates(k,62) ) + mat(k,606) = rxt(k,37) + mat(k,1459) = .440_r8*rxt(k,39) + mat(k,520) = .400_r8*rxt(k,60) + mat(k,639) = rxt(k,65) + mat(k,1096) = .800_r8*rxt(k,69) + mat(k,235) = -( rxt(k,96) + het_rates(k,63) ) + mat(k,143) = rxt(k,79) + mat(k,148) = rxt(k,80) + mat(k,153) = rxt(k,82) + mat(k,119) = 2.000_r8*rxt(k,83) + mat(k,158) = 2.000_r8*rxt(k,84) + mat(k,123) = rxt(k,85) + mat(k,107) = 2.000_r8*rxt(k,98) + mat(k,253) = rxt(k,101) + mat(k,306) = rxt(k,102) + mat(k,249) = -( rxt(k,97) + het_rates(k,64) ) + mat(k,115) = rxt(k,81) + mat(k,154) = rxt(k,82) + mat(k,245) = rxt(k,100) + mat(k,197) = -( het_rates(k,65) ) + mat(k,288) = -( het_rates(k,66) ) + mat(k,5) = -( het_rates(k,67) ) + mat(k,6) = -( het_rates(k,68) ) + mat(k,7) = -( het_rates(k,69) ) + mat(k,8) = -( rxt(k,124) + het_rates(k,70) ) + mat(k,130) = -( rxt(k,42) + het_rates(k,71) ) + mat(k,883) = -( het_rates(k,72) ) + mat(k,149) = rxt(k,80) + mat(k,159) = rxt(k,84) + mat(k,236) = 2.000_r8*rxt(k,96) + mat(k,250) = rxt(k,97) + mat(k,286) = rxt(k,104) + mat(k,1110) = -( rxt(k,43) + het_rates(k,73) ) + mat(k,1077) = .330_r8*rxt(k,45) + mat(k,641) = .250_r8*rxt(k,65) + end do + end subroutine linmat01 + subroutine linmat02( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,978) = -( rxt(k,44) + rxt(k,530) + het_rates(k,74) ) + mat(k,415) = rxt(k,21) + mat(k,377) = .130_r8*rxt(k,23) + mat(k,335) = .700_r8*rxt(k,61) + mat(k,655) = .600_r8*rxt(k,70) + mat(k,710) = .340_r8*rxt(k,72) + mat(k,420) = .170_r8*rxt(k,73) + mat(k,2041) = -( het_rates(k,75) ) + mat(k,2367) = rxt(k,2) + 2.000_r8*rxt(k,3) + mat(k,1536) = 2.000_r8*rxt(k,33) + mat(k,454) = rxt(k,38) + mat(k,1470) = .330_r8*rxt(k,39) + rxt(k,40) + mat(k,821) = rxt(k,99) + mat(k,2065) = rxt(k,103) + mat(k,287) = rxt(k,104) + mat(k,1251) = -( het_rates(k,76) ) + mat(k,2353) = rxt(k,1) + mat(k,1523) = rxt(k,32) + mat(k,1461) = 1.440_r8*rxt(k,39) + mat(k,106) = -( rxt(k,98) + het_rates(k,77) ) + mat(k,598) = -( rxt(k,4) + het_rates(k,78) ) + mat(k,133) = -( rxt(k,109) + het_rates(k,79) ) + mat(k,815) = -( rxt(k,99) + het_rates(k,80) ) + mat(k,244) = -( rxt(k,100) + het_rates(k,81) ) + mat(k,254) = -( rxt(k,101) + het_rates(k,82) ) + mat(k,307) = -( rxt(k,102) + het_rates(k,83) ) + mat(k,2066) = -( rxt(k,103) + het_rates(k,84) ) + mat(k,185) = -( het_rates(k,85) ) + mat(k,868) = -( het_rates(k,86) ) + mat(k,285) = -( rxt(k,104) + het_rates(k,87) ) + mat(k,1480) = -( rxt(k,9) + het_rates(k,88) ) + mat(k,1081) = rxt(k,493) + mat(k,580) = rxt(k,494) + mat(k,564) = rxt(k,495) + mat(k,277) = 2.000_r8*rxt(k,496) + 2.000_r8*rxt(k,534) + 2.000_r8*rxt(k,537) & + + 2.000_r8*rxt(k,548) + mat(k,427) = rxt(k,497) + mat(k,1012) = rxt(k,498) + mat(k,1571) = .500_r8*rxt(k,500) + mat(k,2116) = rxt(k,501) + mat(k,391) = rxt(k,502) + mat(k,239) = rxt(k,503) + mat(k,614) = rxt(k,504) + mat(k,546) = rxt(k,536) + rxt(k,539) + rxt(k,544) + mat(k,986) = rxt(k,538) + rxt(k,543) + rxt(k,549) + mat(k,469) = -( rxt(k,10) + rxt(k,11) + rxt(k,185) + het_rates(k,89) ) + mat(k,770) = -( rxt(k,105) + het_rates(k,90) ) + mat(k,544) = rxt(k,536) + rxt(k,539) + rxt(k,544) + mat(k,824) = -( rxt(k,106) + het_rates(k,91) ) + mat(k,984) = rxt(k,538) + rxt(k,543) + rxt(k,549) + mat(k,1075) = -( rxt(k,45) + rxt(k,493) + het_rates(k,92) ) + mat(k,224) = -( rxt(k,46) + het_rates(k,93) ) + mat(k,1292) = rxt(k,385) + mat(k,1089) = -( rxt(k,47) + het_rates(k,94) ) + mat(k,1076) = .170_r8*rxt(k,45) + mat(k,344) = -( het_rates(k,95) ) + mat(k,136) = -( het_rates(k,96) ) + mat(k,834) = -( het_rates(k,97) ) + mat(k,576) = -( rxt(k,494) + het_rates(k,98) ) + mat(k,559) = -( rxt(k,495) + het_rates(k,99) ) + mat(k,1209) = -( het_rates(k,100) ) + mat(k,400) = -( rxt(k,48) + het_rates(k,101) ) + mat(k,694) = -( rxt(k,49) + het_rates(k,102) ) + mat(k,401) = rxt(k,48) + mat(k,75) = -( het_rates(k,103) ) + mat(k,1227) = -( rxt(k,50) + rxt(k,51) + het_rates(k,104) ) + mat(k,696) = .300_r8*rxt(k,49) + mat(k,313) = -( het_rates(k,105) ) + mat(k,507) = -( rxt(k,52) + het_rates(k,106) ) + mat(k,660) = .800_r8*rxt(k,19) + mat(k,626) = .800_r8*rxt(k,20) + mat(k,318) = -( rxt(k,53) + het_rates(k,107) ) + mat(k,567) = -( rxt(k,54) + rxt(k,367) + het_rates(k,108) ) + mat(k,908) = -( het_rates(k,109) ) + mat(k,1357) = -( rxt(k,55) + het_rates(k,110) ) + mat(k,697) = .700_r8*rxt(k,49) + mat(k,680) = -( het_rates(k,111) ) + mat(k,2290) = rxt(k,15) + mat(k,259) = -( rxt(k,12) + het_rates(k,112) ) + mat(k,276) = -( rxt(k,13) + rxt(k,14) + rxt(k,186) + rxt(k,496) + rxt(k,534) & + + rxt(k,537) + rxt(k,548) + het_rates(k,113) ) + mat(k,424) = -( rxt(k,497) + het_rates(k,114) ) + mat(k,1007) = -( rxt(k,56) + rxt(k,498) + het_rates(k,115) ) + mat(k,9) = -( het_rates(k,116) ) + mat(k,10) = -( het_rates(k,117) ) + mat(k,11) = -( het_rates(k,118) ) + mat(k,97) = -( het_rates(k,119) ) + mat(k,12) = -( rxt(k,499) + het_rates(k,120) ) + mat(k,13) = -( rxt(k,552) + het_rates(k,121) ) + mat(k,14) = -( rxt(k,551) + het_rates(k,122) ) + mat(k,2346) = -( rxt(k,15) + het_rates(k,123) ) + mat(k,281) = rxt(k,14) + mat(k,1587) = rxt(k,16) + .500_r8*rxt(k,500) + mat(k,2132) = rxt(k,17) + mat(k,1574) = -( rxt(k,16) + rxt(k,500) + het_rates(k,124) ) + mat(k,1483) = rxt(k,9) + mat(k,471) = rxt(k,11) + rxt(k,185) + mat(k,278) = rxt(k,13) + rxt(k,186) + mat(k,2119) = rxt(k,18) + mat(k,668) = rxt(k,19) + mat(k,1083) = rxt(k,45) + mat(k,403) = rxt(k,48) + mat(k,572) = rxt(k,54) + rxt(k,367) + mat(k,1014) = rxt(k,56) + mat(k,854) = rxt(k,57) + mat(k,392) = rxt(k,58) + mat(k,240) = rxt(k,59) + mat(k,523) = .600_r8*rxt(k,60) + rxt(k,318) + mat(k,615) = rxt(k,66) + mat(k,547) = rxt(k,76) + mat(k,987) = rxt(k,95) + mat(k,141) = rxt(k,442) + mat(k,2128) = -( rxt(k,17) + rxt(k,18) + rxt(k,501) + het_rates(k,125) ) + mat(k,474) = rxt(k,10) + mat(k,280) = rxt(k,13) + rxt(k,14) + rxt(k,186) + mat(k,525) = .400_r8*rxt(k,60) + mat(k,550) = rxt(k,77) + mat(k,991) = rxt(k,94) + mat(k,850) = -( rxt(k,57) + het_rates(k,126) ) + mat(k,388) = -( rxt(k,58) + rxt(k,502) + het_rates(k,127) ) + mat(k,15) = -( het_rates(k,128) ) + mat(k,16) = -( het_rates(k,129) ) + mat(k,17) = -( het_rates(k,130) ) + mat(k,18) = -( het_rates(k,131) ) + mat(k,19) = -( het_rates(k,132) ) + mat(k,2020) = -( het_rates(k,133) ) + mat(k,2366) = rxt(k,3) + mat(k,1512) = rxt(k,5) + 2.000_r8*rxt(k,6) + mat(k,1986) = rxt(k,8) + mat(k,279) = rxt(k,14) + mat(k,2339) = rxt(k,15) + mat(k,1580) = rxt(k,16) + mat(k,2125) = rxt(k,18) + mat(k,1469) = .180_r8*rxt(k,39) + mat(k,1046) = rxt(k,41) + mat(k,1813) = rxt(k,75) + mat(k,2246) = rxt(k,93) + mat(k,331) = rxt(k,107) + mat(k,1438) = rxt(k,111) + mat(k,897) = rxt(k,112) + mat(k,266) = rxt(k,113) + mat(k,1623) = rxt(k,129) + mat(k,1504) = -( rxt(k,5) + rxt(k,6) + het_rates(k,134) ) + mat(k,1978) = rxt(k,8) + mat(k,2117) = rxt(k,17) + mat(k,163) = rxt(k,125) + rxt(k,134) + mat(k,166) = rxt(k,126) + mat(k,162) = -( rxt(k,125) + rxt(k,134) + het_rates(k,135) ) + mat(k,1935) = rxt(k,7) + mat(k,164) = rxt(k,138) + mat(k,165) = -( rxt(k,126) + rxt(k,138) + het_rates(k,136) ) + mat(k,1985) = -( rxt(k,7) + rxt(k,8) + het_rates(k,137) ) + mat(k,20) = -( het_rates(k,138) ) + mat(k,328) = -( rxt(k,107) + het_rates(k,139) ) + mat(k,360) = -( rxt(k,110) + het_rates(k,140) ) + mat(k,238) = -( rxt(k,59) + rxt(k,503) + het_rates(k,141) ) + mat(k,519) = -( rxt(k,60) + rxt(k,318) + het_rates(k,142) ) + mat(k,139) = -( rxt(k,442) + het_rates(k,143) ) + mat(k,465) = -( het_rates(k,144) ) + mat(k,273) = rxt(k,31) + mat(k,178) = -( het_rates(k,145) ) + mat(k,333) = -( rxt(k,61) + het_rates(k,146) ) + mat(k,21) = -( het_rates(k,147) ) + mat(k,22) = -( het_rates(k,148) ) + mat(k,527) = -( rxt(k,62) + het_rates(k,149) ) + mat(k,394) = -( rxt(k,63) + het_rates(k,150) ) + mat(k,716) = -( het_rates(k,151) ) + mat(k,361) = rxt(k,110) + mat(k,1428) = rxt(k,111) + mat(k,23) = -( rxt(k,108) + het_rates(k,152) ) + mat(k,1430) = -( rxt(k,111) + het_rates(k,153) ) + mat(k,894) = rxt(k,112) + mat(k,893) = -( rxt(k,112) + het_rates(k,154) ) + mat(k,265) = rxt(k,113) + mat(k,264) = -( rxt(k,113) + het_rates(k,155) ) + mat(k,134) = rxt(k,109) + mat(k,24) = -( het_rates(k,156) ) + mat(k,25) = -( het_rates(k,157) ) + mat(k,26) = -( het_rates(k,158) ) + mat(k,27) = -( het_rates(k,159) ) + mat(k,28) = -( rxt(k,114) + het_rates(k,160) ) + mat(k,29) = -( rxt(k,115) + het_rates(k,161) ) + mat(k,30) = -( rxt(k,116) + het_rates(k,162) ) + mat(k,31) = -( rxt(k,117) + het_rates(k,163) ) + mat(k,32) = -( rxt(k,118) + het_rates(k,164) ) + mat(k,33) = -( rxt(k,119) + het_rates(k,165) ) + mat(k,34) = -( rxt(k,120) + het_rates(k,166) ) + mat(k,35) = -( rxt(k,121) + het_rates(k,167) ) + mat(k,36) = -( rxt(k,122) + het_rates(k,168) ) + mat(k,37) = -( rxt(k,123) + het_rates(k,169) ) + mat(k,38) = -( het_rates(k,170) ) + mat(k,977) = rxt(k,530) + mat(k,39) = -( het_rates(k,171) ) + mat(k,40) = -( het_rates(k,172) ) + mat(k,41) = -( het_rates(k,173) ) + mat(k,42) = -( het_rates(k,174) ) + mat(k,43) = -( rxt(k,553) + het_rates(k,175) ) + mat(k,49) = -( het_rates(k,176) ) + mat(k,202) = -( rxt(k,64) + het_rates(k,177) ) + mat(k,637) = -( rxt(k,65) + het_rates(k,178) ) + mat(k,612) = -( rxt(k,66) + rxt(k,504) + het_rates(k,179) ) + end do + end subroutine linmat02 + subroutine linmat03( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,483) = -( rxt(k,67) + het_rates(k,180) ) + mat(k,995) = -( rxt(k,68) + het_rates(k,181) ) + mat(k,389) = rxt(k,58) + mat(k,613) = rxt(k,66) + mat(k,485) = rxt(k,67) + mat(k,1097) = -( rxt(k,69) + het_rates(k,182) ) + mat(k,640) = rxt(k,65) + mat(k,997) = rxt(k,68) + mat(k,650) = -( rxt(k,70) + het_rates(k,183) ) + mat(k,190) = -( het_rates(k,184) ) + mat(k,206) = -( rxt(k,71) + het_rates(k,185) ) + mat(k,211) = -( het_rates(k,186) ) + mat(k,705) = -( rxt(k,72) + het_rates(k,187) ) + mat(k,219) = -( het_rates(k,188) ) + mat(k,418) = -( rxt(k,73) + het_rates(k,189) ) + mat(k,513) = -( het_rates(k,192) ) + mat(k,140) = rxt(k,442) + mat(k,960) = -( het_rates(k,193) ) + mat(k,55) = -( het_rates(k,194) ) + mat(k,492) = -( het_rates(k,195) ) + mat(k,61) = -( het_rates(k,196) ) + mat(k,432) = -( het_rates(k,197) ) + mat(k,859) = -( het_rates(k,198) ) + mat(k,509) = rxt(k,52) + mat(k,804) = -( het_rates(k,199) ) + mat(k,620) = -( het_rates(k,200) ) + mat(k,1413) = -( het_rates(k,201) ) + mat(k,380) = .130_r8*rxt(k,23) + mat(k,326) = rxt(k,27) + mat(k,973) = rxt(k,35) + mat(k,1241) = rxt(k,36) + mat(k,1080) = .330_r8*rxt(k,45) + mat(k,1091) = rxt(k,47) + mat(k,1231) = 1.340_r8*rxt(k,50) + mat(k,510) = rxt(k,52) + mat(k,321) = rxt(k,53) + mat(k,1359) = .300_r8*rxt(k,55) + mat(k,852) = rxt(k,57) + mat(k,521) = .600_r8*rxt(k,60) + rxt(k,318) + mat(k,396) = rxt(k,63) + mat(k,204) = .500_r8*rxt(k,64) + mat(k,1100) = .650_r8*rxt(k,69) + mat(k,2182) = -( het_rates(k,202) ) + mat(k,1054) = rxt(k,34) + mat(k,975) = rxt(k,35) + mat(k,610) = rxt(k,37) + mat(k,1473) = rxt(k,40) + mat(k,1370) = .300_r8*rxt(k,55) + mat(k,526) = .400_r8*rxt(k,60) + mat(k,595) = rxt(k,87) + mat(k,373) = rxt(k,89) + mat(k,761) = -( het_rates(k,203) ) + mat(k,283) = .600_r8*rxt(k,25) + mat(k,551) = -( het_rates(k,204) ) + mat(k,457) = -( rxt(k,311) + het_rates(k,205) ) + mat(k,131) = rxt(k,42) + mat(k,780) = -( het_rates(k,206) ) + mat(k,1919) = -( rxt(k,492) + het_rates(k,207) ) + mat(k,473) = rxt(k,11) + rxt(k,185) + mat(k,670) = rxt(k,19) + mat(k,636) = .900_r8*rxt(k,20) + mat(k,417) = rxt(k,21) + mat(k,177) = 1.500_r8*rxt(k,22) + mat(k,381) = .560_r8*rxt(k,23) + mat(k,464) = rxt(k,24) + mat(k,284) = .600_r8*rxt(k,25) + mat(k,588) = .600_r8*rxt(k,26) + mat(k,327) = rxt(k,27) + mat(k,343) = rxt(k,28) + mat(k,351) = rxt(k,29) + mat(k,410) = rxt(k,30) + mat(k,1052) = rxt(k,34) + mat(k,1245) = rxt(k,36) + mat(k,1115) = 2.000_r8*rxt(k,43) + mat(k,982) = 2.000_r8*rxt(k,44) + mat(k,1085) = .670_r8*rxt(k,45) + mat(k,228) = rxt(k,46) + mat(k,1094) = rxt(k,47) + mat(k,405) = rxt(k,48) + mat(k,700) = rxt(k,49) + mat(k,1235) = 1.340_r8*rxt(k,50) + .660_r8*rxt(k,51) + mat(k,1016) = rxt(k,56) + mat(k,337) = rxt(k,61) + mat(k,533) = rxt(k,62) + mat(k,205) = rxt(k,64) + mat(k,646) = rxt(k,65) + mat(k,617) = rxt(k,66) + mat(k,489) = rxt(k,67) + mat(k,1001) = rxt(k,68) + mat(k,1104) = 1.200_r8*rxt(k,69) + mat(k,659) = rxt(k,70) + mat(k,715) = rxt(k,72) + mat(k,423) = rxt(k,73) + mat(k,442) = rxt(k,281) + mat(k,461) = rxt(k,311) + mat(k,1320) = rxt(k,385) + mat(k,438) = -( rxt(k,281) + het_rates(k,208) ) + mat(k,1275) = -( het_rates(k,209) ) + mat(k,1310) = -( rxt(k,385) + het_rates(k,210) ) + mat(k,67) = -( het_rates(k,211) ) + mat(k,73) = -( het_rates(k,212) ) + mat(k,1335) = -( het_rates(k,213) ) + mat(k,723) = -( het_rates(k,214) ) + mat(k,463) = .600_r8*rxt(k,24) + mat(k,1380) = -( het_rates(k,215) ) + mat(k,1230) = .660_r8*rxt(k,50) + mat(k,570) = rxt(k,54) + rxt(k,367) + mat(k,873) = -( het_rates(k,216) ) + mat(k,586) = .600_r8*rxt(k,26) + mat(k,672) = -( het_rates(k,217) ) + mat(k,81) = -( het_rates(k,218) ) + mat(k,1060) = -( het_rates(k,219) ) + mat(k,1618) = -( rxt(k,129) + het_rates(k,220) ) + mat(k,2361) = rxt(k,1) + mat(k,1507) = rxt(k,5) + mat(k,1981) = rxt(k,7) + mat(k,261) = rxt(k,12) + mat(k,1784) = -( het_rates(k,221) ) + mat(k,2362) = rxt(k,2) + mat(k,599) = 2.000_r8*rxt(k,4) + mat(k,1485) = rxt(k,9) + mat(k,472) = rxt(k,10) + mat(k,635) = rxt(k,20) + mat(k,416) = rxt(k,21) + mat(k,342) = rxt(k,28) + mat(k,350) = rxt(k,29) + mat(k,409) = rxt(k,30) + mat(k,275) = rxt(k,31) + mat(k,609) = rxt(k,37) + mat(k,453) = rxt(k,38) + mat(k,1467) = .330_r8*rxt(k,39) + mat(k,132) = rxt(k,42) + mat(k,227) = rxt(k,46) + mat(k,699) = rxt(k,49) + mat(k,322) = rxt(k,53) + mat(k,393) = rxt(k,58) + mat(k,336) = rxt(k,61) + mat(k,532) = rxt(k,62) + mat(k,398) = rxt(k,63) + mat(k,645) = rxt(k,65) + mat(k,488) = rxt(k,67) + mat(k,658) = rxt(k,70) + mat(k,208) = rxt(k,71) + mat(k,714) = rxt(k,72) + mat(k,422) = rxt(k,73) + mat(k,772) = rxt(k,105) + mat(k,825) = rxt(k,106) + mat(k,1576) = .500_r8*rxt(k,500) + mat(k,445) = -( het_rates(k,222) ) + mat(k,789) = -( het_rates(k,223) ) + mat(k,1164) = -( het_rates(k,224) ) + mat(k,1098) = .150_r8*rxt(k,69) + mat(k,1147) = -( het_rates(k,225) ) + mat(k,1124) = -( het_rates(k,226) ) + mat(k,734) = -( het_rates(k,227) ) + mat(k,87) = -( het_rates(k,228) ) + mat(k,1187) = -( het_rates(k,229) ) + mat(k,750) = -( het_rates(k,230) ) + mat(k,93) = -( het_rates(k,231) ) + mat(k,500) = -( het_rates(k,232) ) + mat(k,2374) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,233) ) + mat(k,1475) = .050_r8*rxt(k,39) + mat(k,135) = rxt(k,109) + mat(k,1929) = rxt(k,492) + end do + end subroutine linmat03 + subroutine linmat( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call linmat01( avec_len, mat, y, rxt, het_rates ) + call linmat02( avec_len, mat, y, rxt, het_rates ) + call linmat03( avec_len, mat, y, rxt, het_rates ) + end subroutine linmat + end module mo_lin_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_factor.F90 new file mode 100644 index 0000000000..aa855660eb --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_factor.F90 @@ -0,0 +1,8696 @@ + module mo_lu_factor + use chem_mods, only: veclen + private + public :: lu_fac + contains + subroutine lu_fac01( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1) = 1._r8 / lu(k,1) + lu(k,2) = 1._r8 / lu(k,2) + lu(k,3) = 1._r8 / lu(k,3) + lu(k,4) = 1._r8 / lu(k,4) + lu(k,5) = 1._r8 / lu(k,5) + lu(k,6) = 1._r8 / lu(k,6) + lu(k,7) = 1._r8 / lu(k,7) + lu(k,8) = 1._r8 / lu(k,8) + lu(k,9) = 1._r8 / lu(k,9) + lu(k,10) = 1._r8 / lu(k,10) + lu(k,11) = 1._r8 / lu(k,11) + lu(k,12) = 1._r8 / lu(k,12) + lu(k,13) = 1._r8 / lu(k,13) + lu(k,14) = 1._r8 / lu(k,14) + lu(k,15) = 1._r8 / lu(k,15) + lu(k,16) = 1._r8 / lu(k,16) + lu(k,17) = 1._r8 / lu(k,17) + lu(k,18) = 1._r8 / lu(k,18) + lu(k,19) = 1._r8 / lu(k,19) + lu(k,20) = 1._r8 / lu(k,20) + lu(k,21) = 1._r8 / lu(k,21) + lu(k,22) = 1._r8 / lu(k,22) + lu(k,23) = 1._r8 / lu(k,23) + lu(k,24) = 1._r8 / lu(k,24) + lu(k,25) = 1._r8 / lu(k,25) + lu(k,26) = 1._r8 / lu(k,26) + lu(k,27) = 1._r8 / lu(k,27) + lu(k,28) = 1._r8 / lu(k,28) + lu(k,29) = 1._r8 / lu(k,29) + lu(k,30) = 1._r8 / lu(k,30) + lu(k,31) = 1._r8 / lu(k,31) + lu(k,32) = 1._r8 / lu(k,32) + lu(k,33) = 1._r8 / lu(k,33) + lu(k,34) = 1._r8 / lu(k,34) + lu(k,35) = 1._r8 / lu(k,35) + lu(k,36) = 1._r8 / lu(k,36) + lu(k,37) = 1._r8 / lu(k,37) + lu(k,38) = 1._r8 / lu(k,38) + lu(k,39) = 1._r8 / lu(k,39) + lu(k,40) = 1._r8 / lu(k,40) + lu(k,41) = 1._r8 / lu(k,41) + lu(k,42) = 1._r8 / lu(k,42) + lu(k,43) = 1._r8 / lu(k,43) + lu(k,49) = 1._r8 / lu(k,49) + lu(k,55) = 1._r8 / lu(k,55) + lu(k,61) = 1._r8 / lu(k,61) + lu(k,67) = 1._r8 / lu(k,67) + lu(k,73) = 1._r8 / lu(k,73) + lu(k,75) = 1._r8 / lu(k,75) + lu(k,81) = 1._r8 / lu(k,81) + lu(k,87) = 1._r8 / lu(k,87) + end do + end subroutine lu_fac01 + subroutine lu_fac02( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,93) = 1._r8 / lu(k,93) + lu(k,94) = 1._r8 / lu(k,94) + lu(k,95) = lu(k,95) * lu(k,94) + lu(k,96) = lu(k,96) * lu(k,94) + lu(k,2251) = lu(k,2251) - lu(k,95) * lu(k,2228) + lu(k,2252) = lu(k,2252) - lu(k,96) * lu(k,2228) + lu(k,97) = 1._r8 / lu(k,97) + lu(k,98) = lu(k,98) * lu(k,97) + lu(k,99) = lu(k,99) * lu(k,97) + lu(k,1784) = lu(k,1784) - lu(k,98) * lu(k,1646) + lu(k,1796) = lu(k,1796) - lu(k,99) * lu(k,1646) + lu(k,100) = 1._r8 / lu(k,100) + lu(k,101) = lu(k,101) * lu(k,100) + lu(k,102) = lu(k,102) * lu(k,100) + lu(k,1618) = lu(k,1618) - lu(k,101) * lu(k,1589) + lu(k,1628) = lu(k,1628) - lu(k,102) * lu(k,1589) + lu(k,103) = 1._r8 / lu(k,103) + lu(k,104) = lu(k,104) * lu(k,103) + lu(k,105) = lu(k,105) * lu(k,103) + lu(k,1784) = lu(k,1784) - lu(k,104) * lu(k,1647) + lu(k,1786) = lu(k,1786) - lu(k,105) * lu(k,1647) + lu(k,106) = 1._r8 / lu(k,106) + lu(k,107) = lu(k,107) * lu(k,106) + lu(k,108) = lu(k,108) * lu(k,106) + lu(k,109) = lu(k,109) * lu(k,106) + lu(k,1600) = lu(k,1600) - lu(k,107) * lu(k,1590) + lu(k,1612) = lu(k,1612) - lu(k,108) * lu(k,1590) + lu(k,1618) = lu(k,1618) - lu(k,109) * lu(k,1590) + lu(k,110) = 1._r8 / lu(k,110) + lu(k,111) = lu(k,111) * lu(k,110) + lu(k,112) = lu(k,112) * lu(k,110) + lu(k,113) = lu(k,113) * lu(k,110) + lu(k,1735) = lu(k,1735) - lu(k,111) * lu(k,1648) + lu(k,1784) = lu(k,1784) - lu(k,112) * lu(k,1648) + lu(k,1796) = lu(k,1796) - lu(k,113) * lu(k,1648) + lu(k,114) = 1._r8 / lu(k,114) + lu(k,115) = lu(k,115) * lu(k,114) + lu(k,116) = lu(k,116) * lu(k,114) + lu(k,117) = lu(k,117) * lu(k,114) + lu(k,1602) = lu(k,1602) - lu(k,115) * lu(k,1591) + lu(k,1618) = lu(k,1618) - lu(k,116) * lu(k,1591) + lu(k,1628) = lu(k,1628) - lu(k,117) * lu(k,1591) + lu(k,118) = 1._r8 / lu(k,118) + lu(k,119) = lu(k,119) * lu(k,118) + lu(k,120) = lu(k,120) * lu(k,118) + lu(k,121) = lu(k,121) * lu(k,118) + lu(k,1600) = lu(k,1600) - lu(k,119) * lu(k,1592) + lu(k,1618) = lu(k,1618) - lu(k,120) * lu(k,1592) + lu(k,1628) = lu(k,1628) - lu(k,121) * lu(k,1592) + lu(k,122) = 1._r8 / lu(k,122) + lu(k,123) = lu(k,123) * lu(k,122) + lu(k,124) = lu(k,124) * lu(k,122) + lu(k,125) = lu(k,125) * lu(k,122) + lu(k,1600) = lu(k,1600) - lu(k,123) * lu(k,1593) + lu(k,1618) = lu(k,1618) - lu(k,124) * lu(k,1593) + lu(k,1628) = lu(k,1628) - lu(k,125) * lu(k,1593) + lu(k,126) = 1._r8 / lu(k,126) + lu(k,127) = lu(k,127) * lu(k,126) + lu(k,128) = lu(k,128) * lu(k,126) + lu(k,129) = lu(k,129) * lu(k,126) + lu(k,1784) = lu(k,1784) - lu(k,127) * lu(k,1649) + lu(k,1793) = lu(k,1793) - lu(k,128) * lu(k,1649) + lu(k,1796) = lu(k,1796) - lu(k,129) * lu(k,1649) + lu(k,130) = 1._r8 / lu(k,130) + lu(k,131) = lu(k,131) * lu(k,130) + lu(k,132) = lu(k,132) * lu(k,130) + lu(k,779) = lu(k,779) - lu(k,131) * lu(k,778) + lu(k,785) = - lu(k,132) * lu(k,778) + lu(k,1852) = - lu(k,131) * lu(k,1834) + lu(k,1917) = lu(k,1917) - lu(k,132) * lu(k,1834) + lu(k,133) = 1._r8 / lu(k,133) + lu(k,134) = lu(k,134) * lu(k,133) + lu(k,135) = lu(k,135) * lu(k,133) + lu(k,264) = lu(k,264) - lu(k,134) * lu(k,263) + lu(k,267) = lu(k,267) - lu(k,135) * lu(k,263) + lu(k,2349) = lu(k,2349) - lu(k,134) * lu(k,2348) + lu(k,2374) = lu(k,2374) - lu(k,135) * lu(k,2348) + lu(k,136) = 1._r8 / lu(k,136) + lu(k,137) = lu(k,137) * lu(k,136) + lu(k,138) = lu(k,138) * lu(k,136) + lu(k,695) = lu(k,695) - lu(k,137) * lu(k,693) + lu(k,699) = lu(k,699) - lu(k,138) * lu(k,693) + lu(k,1765) = lu(k,1765) - lu(k,137) * lu(k,1650) + lu(k,1784) = lu(k,1784) - lu(k,138) * lu(k,1650) + lu(k,139) = 1._r8 / lu(k,139) + lu(k,140) = lu(k,140) * lu(k,139) + lu(k,141) = lu(k,141) * lu(k,139) + lu(k,513) = lu(k,513) - lu(k,140) * lu(k,512) + lu(k,515) = lu(k,515) - lu(k,141) * lu(k,512) + lu(k,1549) = lu(k,1549) - lu(k,140) * lu(k,1544) + lu(k,1574) = lu(k,1574) - lu(k,141) * lu(k,1544) + end do + end subroutine lu_fac02 + subroutine lu_fac03( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,142) = 1._r8 / lu(k,142) + lu(k,143) = lu(k,143) * lu(k,142) + lu(k,144) = lu(k,144) * lu(k,142) + lu(k,145) = lu(k,145) * lu(k,142) + lu(k,146) = lu(k,146) * lu(k,142) + lu(k,1600) = lu(k,1600) - lu(k,143) * lu(k,1594) + lu(k,1612) = lu(k,1612) - lu(k,144) * lu(k,1594) + lu(k,1618) = lu(k,1618) - lu(k,145) * lu(k,1594) + lu(k,1628) = lu(k,1628) - lu(k,146) * lu(k,1594) + lu(k,147) = 1._r8 / lu(k,147) + lu(k,148) = lu(k,148) * lu(k,147) + lu(k,149) = lu(k,149) * lu(k,147) + lu(k,150) = lu(k,150) * lu(k,147) + lu(k,151) = lu(k,151) * lu(k,147) + lu(k,1600) = lu(k,1600) - lu(k,148) * lu(k,1595) + lu(k,1610) = lu(k,1610) - lu(k,149) * lu(k,1595) + lu(k,1612) = lu(k,1612) - lu(k,150) * lu(k,1595) + lu(k,1618) = lu(k,1618) - lu(k,151) * lu(k,1595) + lu(k,152) = 1._r8 / lu(k,152) + lu(k,153) = lu(k,153) * lu(k,152) + lu(k,154) = lu(k,154) * lu(k,152) + lu(k,155) = lu(k,155) * lu(k,152) + lu(k,156) = lu(k,156) * lu(k,152) + lu(k,1600) = lu(k,1600) - lu(k,153) * lu(k,1596) + lu(k,1602) = lu(k,1602) - lu(k,154) * lu(k,1596) + lu(k,1618) = lu(k,1618) - lu(k,155) * lu(k,1596) + lu(k,1628) = lu(k,1628) - lu(k,156) * lu(k,1596) + lu(k,157) = 1._r8 / lu(k,157) + lu(k,158) = lu(k,158) * lu(k,157) + lu(k,159) = lu(k,159) * lu(k,157) + lu(k,160) = lu(k,160) * lu(k,157) + lu(k,161) = lu(k,161) * lu(k,157) + lu(k,1600) = lu(k,1600) - lu(k,158) * lu(k,1597) + lu(k,1610) = lu(k,1610) - lu(k,159) * lu(k,1597) + lu(k,1618) = lu(k,1618) - lu(k,160) * lu(k,1597) + lu(k,1628) = lu(k,1628) - lu(k,161) * lu(k,1597) + lu(k,162) = 1._r8 / lu(k,162) + lu(k,163) = lu(k,163) * lu(k,162) + lu(k,166) = lu(k,166) - lu(k,163) * lu(k,164) + lu(k,1045) = - lu(k,163) * lu(k,1041) + lu(k,1504) = lu(k,1504) - lu(k,163) * lu(k,1494) + lu(k,1978) = lu(k,1978) - lu(k,163) * lu(k,1935) + lu(k,2012) = lu(k,2012) - lu(k,163) * lu(k,1995) + lu(k,165) = 1._r8 / lu(k,165) + lu(k,166) = lu(k,166) * lu(k,165) + lu(k,1045) = lu(k,1045) - lu(k,166) * lu(k,1042) + lu(k,1504) = lu(k,1504) - lu(k,166) * lu(k,1495) + lu(k,1615) = lu(k,1615) - lu(k,166) * lu(k,1598) + lu(k,1978) = lu(k,1978) - lu(k,166) * lu(k,1936) + lu(k,2012) = lu(k,2012) - lu(k,166) * lu(k,1996) + lu(k,168) = 1._r8 / lu(k,168) + lu(k,169) = lu(k,169) * lu(k,168) + lu(k,170) = lu(k,170) * lu(k,168) + lu(k,171) = lu(k,171) * lu(k,168) + lu(k,172) = lu(k,172) * lu(k,168) + lu(k,173) = lu(k,173) * lu(k,168) + lu(k,1652) = lu(k,1652) - lu(k,169) * lu(k,1651) + lu(k,1653) = lu(k,1653) - lu(k,170) * lu(k,1651) + lu(k,1701) = lu(k,1701) - lu(k,171) * lu(k,1651) + lu(k,1784) = lu(k,1784) - lu(k,172) * lu(k,1651) + lu(k,1786) = lu(k,1786) - lu(k,173) * lu(k,1651) + lu(k,174) = 1._r8 / lu(k,174) + lu(k,175) = lu(k,175) * lu(k,174) + lu(k,176) = lu(k,176) * lu(k,174) + lu(k,177) = lu(k,177) * lu(k,174) + lu(k,1696) = - lu(k,175) * lu(k,1652) + lu(k,1764) = lu(k,1764) - lu(k,176) * lu(k,1652) + lu(k,1786) = lu(k,1786) - lu(k,177) * lu(k,1652) + lu(k,178) = 1._r8 / lu(k,178) + lu(k,179) = lu(k,179) * lu(k,178) + lu(k,180) = lu(k,180) * lu(k,178) + lu(k,181) = lu(k,181) * lu(k,178) + lu(k,182) = lu(k,182) * lu(k,178) + lu(k,1694) = lu(k,1694) - lu(k,179) * lu(k,1653) + lu(k,1697) = lu(k,1697) - lu(k,180) * lu(k,1653) + lu(k,1784) = lu(k,1784) - lu(k,181) * lu(k,1653) + lu(k,1786) = lu(k,1786) - lu(k,182) * lu(k,1653) + lu(k,183) = 1._r8 / lu(k,183) + lu(k,184) = lu(k,184) * lu(k,183) + lu(k,828) = lu(k,828) - lu(k,184) * lu(k,823) + lu(k,992) = lu(k,992) - lu(k,184) * lu(k,983) + lu(k,2069) = lu(k,2069) - lu(k,184) * lu(k,2049) + lu(k,2224) = lu(k,2224) - lu(k,184) * lu(k,2187) + lu(k,2251) = lu(k,2251) - lu(k,184) * lu(k,2229) + lu(k,185) = 1._r8 / lu(k,185) + lu(k,186) = lu(k,186) * lu(k,185) + lu(k,187) = lu(k,187) * lu(k,185) + lu(k,188) = lu(k,188) * lu(k,185) + lu(k,1618) = lu(k,1618) - lu(k,186) * lu(k,1599) + lu(k,1619) = lu(k,1619) - lu(k,187) * lu(k,1599) + lu(k,1621) = lu(k,1621) - lu(k,188) * lu(k,1599) + lu(k,1783) = - lu(k,186) * lu(k,1654) + lu(k,1784) = lu(k,1784) - lu(k,187) * lu(k,1654) + lu(k,1786) = lu(k,1786) - lu(k,188) * lu(k,1654) + lu(k,190) = 1._r8 / lu(k,190) + lu(k,191) = lu(k,191) * lu(k,190) + lu(k,192) = lu(k,192) * lu(k,190) + lu(k,193) = lu(k,193) * lu(k,190) + lu(k,194) = lu(k,194) * lu(k,190) + lu(k,195) = lu(k,195) * lu(k,190) + lu(k,196) = lu(k,196) * lu(k,190) + lu(k,1656) = lu(k,1656) - lu(k,191) * lu(k,1655) + lu(k,1657) = lu(k,1657) - lu(k,192) * lu(k,1655) + lu(k,1693) = lu(k,1693) - lu(k,193) * lu(k,1655) + lu(k,1729) = lu(k,1729) - lu(k,194) * lu(k,1655) + lu(k,1784) = lu(k,1784) - lu(k,195) * lu(k,1655) + lu(k,1786) = lu(k,1786) - lu(k,196) * lu(k,1655) + end do + end subroutine lu_fac03 + subroutine lu_fac04( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,197) = 1._r8 / lu(k,197) + lu(k,198) = lu(k,198) * lu(k,197) + lu(k,199) = lu(k,199) * lu(k,197) + lu(k,200) = lu(k,200) * lu(k,197) + lu(k,201) = lu(k,201) * lu(k,197) + lu(k,1694) = lu(k,1694) - lu(k,198) * lu(k,1656) + lu(k,1697) = lu(k,1697) - lu(k,199) * lu(k,1656) + lu(k,1784) = lu(k,1784) - lu(k,200) * lu(k,1656) + lu(k,1786) = lu(k,1786) - lu(k,201) * lu(k,1656) + lu(k,202) = 1._r8 / lu(k,202) + lu(k,203) = lu(k,203) * lu(k,202) + lu(k,204) = lu(k,204) * lu(k,202) + lu(k,205) = lu(k,205) * lu(k,202) + lu(k,215) = - lu(k,203) * lu(k,210) + lu(k,216) = - lu(k,204) * lu(k,210) + lu(k,218) = lu(k,218) - lu(k,205) * lu(k,210) + lu(k,1764) = lu(k,1764) - lu(k,203) * lu(k,1657) + lu(k,1775) = lu(k,1775) - lu(k,204) * lu(k,1657) + lu(k,1786) = lu(k,1786) - lu(k,205) * lu(k,1657) + lu(k,206) = 1._r8 / lu(k,206) + lu(k,207) = lu(k,207) * lu(k,206) + lu(k,208) = lu(k,208) * lu(k,206) + lu(k,1187) = lu(k,1187) - lu(k,207) * lu(k,1180) + lu(k,1193) = - lu(k,208) * lu(k,1180) + lu(k,1765) = lu(k,1765) - lu(k,207) * lu(k,1658) + lu(k,1784) = lu(k,1784) - lu(k,208) * lu(k,1658) + lu(k,1899) = lu(k,1899) - lu(k,207) * lu(k,1835) + lu(k,1917) = lu(k,1917) - lu(k,208) * lu(k,1835) + lu(k,211) = 1._r8 / lu(k,211) + lu(k,212) = lu(k,212) * lu(k,211) + lu(k,213) = lu(k,213) * lu(k,211) + lu(k,214) = lu(k,214) * lu(k,211) + lu(k,215) = lu(k,215) * lu(k,211) + lu(k,216) = lu(k,216) * lu(k,211) + lu(k,217) = lu(k,217) * lu(k,211) + lu(k,218) = lu(k,218) * lu(k,211) + lu(k,1660) = lu(k,1660) - lu(k,212) * lu(k,1659) + lu(k,1693) = lu(k,1693) - lu(k,213) * lu(k,1659) + lu(k,1730) = lu(k,1730) - lu(k,214) * lu(k,1659) + lu(k,1764) = lu(k,1764) - lu(k,215) * lu(k,1659) + lu(k,1775) = lu(k,1775) - lu(k,216) * lu(k,1659) + lu(k,1784) = lu(k,1784) - lu(k,217) * lu(k,1659) + lu(k,1786) = lu(k,1786) - lu(k,218) * lu(k,1659) + lu(k,219) = 1._r8 / lu(k,219) + lu(k,220) = lu(k,220) * lu(k,219) + lu(k,221) = lu(k,221) * lu(k,219) + lu(k,222) = lu(k,222) * lu(k,219) + lu(k,223) = lu(k,223) * lu(k,219) + lu(k,1697) = lu(k,1697) - lu(k,220) * lu(k,1660) + lu(k,1702) = lu(k,1702) - lu(k,221) * lu(k,1660) + lu(k,1784) = lu(k,1784) - lu(k,222) * lu(k,1660) + lu(k,1786) = lu(k,1786) - lu(k,223) * lu(k,1660) + lu(k,224) = 1._r8 / lu(k,224) + lu(k,225) = lu(k,225) * lu(k,224) + lu(k,226) = lu(k,226) * lu(k,224) + lu(k,227) = lu(k,227) * lu(k,224) + lu(k,228) = lu(k,228) * lu(k,224) + lu(k,1295) = - lu(k,225) * lu(k,1292) + lu(k,1307) = - lu(k,226) * lu(k,1292) + lu(k,1319) = - lu(k,227) * lu(k,1292) + lu(k,1320) = lu(k,1320) - lu(k,228) * lu(k,1292) + lu(k,1712) = - lu(k,225) * lu(k,1661) + lu(k,1765) = lu(k,1765) - lu(k,226) * lu(k,1661) + lu(k,1784) = lu(k,1784) - lu(k,227) * lu(k,1661) + lu(k,1786) = lu(k,1786) - lu(k,228) * lu(k,1661) + lu(k,229) = 1._r8 / lu(k,229) + lu(k,230) = lu(k,230) * lu(k,229) + lu(k,231) = lu(k,231) * lu(k,229) + lu(k,909) = - lu(k,230) * lu(k,905) + lu(k,922) = lu(k,922) - lu(k,231) * lu(k,905) + lu(k,937) = - lu(k,230) * lu(k,933) + lu(k,950) = lu(k,950) - lu(k,231) * lu(k,933) + lu(k,1747) = lu(k,1747) - lu(k,230) * lu(k,1662) + lu(k,1784) = lu(k,1784) - lu(k,231) * lu(k,1662) + lu(k,1950) = - lu(k,230) * lu(k,1937) + lu(k,1982) = lu(k,1982) - lu(k,231) * lu(k,1937) + lu(k,232) = 1._r8 / lu(k,232) + lu(k,233) = lu(k,233) * lu(k,232) + lu(k,234) = lu(k,234) * lu(k,232) + lu(k,771) = lu(k,771) - lu(k,233) * lu(k,769) + lu(k,776) = - lu(k,234) * lu(k,769) + lu(k,1803) = lu(k,1803) - lu(k,233) * lu(k,1797) + lu(k,1818) = lu(k,1818) - lu(k,234) * lu(k,1797) + lu(k,2054) = - lu(k,233) * lu(k,2050) + lu(k,2069) = lu(k,2069) - lu(k,234) * lu(k,2050) + lu(k,2236) = lu(k,2236) - lu(k,233) * lu(k,2230) + lu(k,2251) = lu(k,2251) - lu(k,234) * lu(k,2230) + lu(k,235) = 1._r8 / lu(k,235) + lu(k,236) = lu(k,236) * lu(k,235) + lu(k,237) = lu(k,237) * lu(k,235) + lu(k,255) = - lu(k,236) * lu(k,253) + lu(k,256) = lu(k,256) - lu(k,237) * lu(k,253) + lu(k,308) = - lu(k,236) * lu(k,306) + lu(k,309) = lu(k,309) - lu(k,237) * lu(k,306) + lu(k,1610) = lu(k,1610) - lu(k,236) * lu(k,1600) + lu(k,1618) = lu(k,1618) - lu(k,237) * lu(k,1600) + lu(k,1743) = - lu(k,236) * lu(k,1663) + lu(k,1783) = lu(k,1783) - lu(k,237) * lu(k,1663) + end do + end subroutine lu_fac04 + subroutine lu_fac05( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,238) = 1._r8 / lu(k,238) + lu(k,239) = lu(k,239) * lu(k,238) + lu(k,240) = lu(k,240) * lu(k,238) + lu(k,1081) = lu(k,1081) - lu(k,239) * lu(k,1072) + lu(k,1083) = lu(k,1083) - lu(k,240) * lu(k,1072) + lu(k,1151) = - lu(k,239) * lu(k,1140) + lu(k,1154) = lu(k,1154) - lu(k,240) * lu(k,1140) + lu(k,1779) = lu(k,1779) - lu(k,239) * lu(k,1664) + lu(k,1782) = lu(k,1782) - lu(k,240) * lu(k,1664) + lu(k,2330) = - lu(k,239) * lu(k,2267) + lu(k,2333) = lu(k,2333) - lu(k,240) * lu(k,2267) + lu(k,241) = 1._r8 / lu(k,241) + lu(k,242) = lu(k,242) * lu(k,241) + lu(k,243) = lu(k,243) * lu(k,241) + lu(k,341) = - lu(k,242) * lu(k,338) + lu(k,342) = lu(k,342) - lu(k,243) * lu(k,338) + lu(k,433) = - lu(k,242) * lu(k,430) + lu(k,435) = - lu(k,243) * lu(k,430) + lu(k,1704) = lu(k,1704) - lu(k,242) * lu(k,1665) + lu(k,1784) = lu(k,1784) - lu(k,243) * lu(k,1665) + lu(k,2281) = lu(k,2281) - lu(k,242) * lu(k,2268) + lu(k,2335) = lu(k,2335) - lu(k,243) * lu(k,2268) + lu(k,244) = 1._r8 / lu(k,244) + lu(k,245) = lu(k,245) * lu(k,244) + lu(k,246) = lu(k,246) * lu(k,244) + lu(k,247) = lu(k,247) * lu(k,244) + lu(k,248) = lu(k,248) * lu(k,244) + lu(k,1602) = lu(k,1602) - lu(k,245) * lu(k,1601) + lu(k,1618) = lu(k,1618) - lu(k,246) * lu(k,1601) + lu(k,1619) = lu(k,1619) - lu(k,247) * lu(k,1601) + lu(k,1628) = lu(k,1628) - lu(k,248) * lu(k,1601) + lu(k,1667) = lu(k,1667) - lu(k,245) * lu(k,1666) + lu(k,1783) = lu(k,1783) - lu(k,246) * lu(k,1666) + lu(k,1784) = lu(k,1784) - lu(k,247) * lu(k,1666) + lu(k,1793) = lu(k,1793) - lu(k,248) * lu(k,1666) + lu(k,249) = 1._r8 / lu(k,249) + lu(k,250) = lu(k,250) * lu(k,249) + lu(k,251) = lu(k,251) * lu(k,249) + lu(k,252) = lu(k,252) * lu(k,249) + lu(k,1610) = lu(k,1610) - lu(k,250) * lu(k,1602) + lu(k,1618) = lu(k,1618) - lu(k,251) * lu(k,1602) + lu(k,1628) = lu(k,1628) - lu(k,252) * lu(k,1602) + lu(k,1743) = lu(k,1743) - lu(k,250) * lu(k,1667) + lu(k,1783) = lu(k,1783) - lu(k,251) * lu(k,1667) + lu(k,1793) = lu(k,1793) - lu(k,252) * lu(k,1667) + lu(k,254) = 1._r8 / lu(k,254) + lu(k,255) = lu(k,255) * lu(k,254) + lu(k,256) = lu(k,256) * lu(k,254) + lu(k,257) = lu(k,257) * lu(k,254) + lu(k,258) = lu(k,258) * lu(k,254) + lu(k,1610) = lu(k,1610) - lu(k,255) * lu(k,1603) + lu(k,1618) = lu(k,1618) - lu(k,256) * lu(k,1603) + lu(k,1619) = lu(k,1619) - lu(k,257) * lu(k,1603) + lu(k,1628) = lu(k,1628) - lu(k,258) * lu(k,1603) + lu(k,1743) = lu(k,1743) - lu(k,255) * lu(k,1668) + lu(k,1783) = lu(k,1783) - lu(k,256) * lu(k,1668) + lu(k,1784) = lu(k,1784) - lu(k,257) * lu(k,1668) + lu(k,1793) = lu(k,1793) - lu(k,258) * lu(k,1668) + lu(k,259) = 1._r8 / lu(k,259) + lu(k,260) = lu(k,260) * lu(k,259) + lu(k,261) = lu(k,261) * lu(k,259) + lu(k,262) = lu(k,262) * lu(k,259) + lu(k,681) = lu(k,681) - lu(k,260) * lu(k,679) + lu(k,683) = - lu(k,261) * lu(k,679) + lu(k,687) = lu(k,687) - lu(k,262) * lu(k,679) + lu(k,1572) = lu(k,1572) - lu(k,260) * lu(k,1545) + lu(k,1575) = - lu(k,261) * lu(k,1545) + lu(k,1587) = lu(k,1587) - lu(k,262) * lu(k,1545) + lu(k,1615) = lu(k,1615) - lu(k,260) * lu(k,1604) + lu(k,1618) = lu(k,1618) - lu(k,261) * lu(k,1604) + lu(k,1630) = lu(k,1630) - lu(k,262) * lu(k,1604) + lu(k,264) = 1._r8 / lu(k,264) + lu(k,265) = lu(k,265) * lu(k,264) + lu(k,266) = lu(k,266) * lu(k,264) + lu(k,267) = lu(k,267) * lu(k,264) + lu(k,893) = lu(k,893) - lu(k,265) * lu(k,892) + lu(k,897) = lu(k,897) - lu(k,266) * lu(k,892) + lu(k,898) = - lu(k,267) * lu(k,892) + lu(k,1744) = lu(k,1744) - lu(k,265) * lu(k,1669) + lu(k,1788) = lu(k,1788) - lu(k,266) * lu(k,1669) + lu(k,1796) = lu(k,1796) - lu(k,267) * lu(k,1669) + lu(k,2352) = - lu(k,265) * lu(k,2349) + lu(k,2366) = lu(k,2366) - lu(k,266) * lu(k,2349) + lu(k,2374) = lu(k,2374) - lu(k,267) * lu(k,2349) + lu(k,268) = 1._r8 / lu(k,268) + lu(k,269) = lu(k,269) * lu(k,268) + lu(k,270) = lu(k,270) * lu(k,268) + lu(k,271) = lu(k,271) * lu(k,268) + lu(k,860) = lu(k,860) - lu(k,269) * lu(k,856) + lu(k,864) = - lu(k,270) * lu(k,856) + lu(k,865) = lu(k,865) - lu(k,271) * lu(k,856) + lu(k,1755) = lu(k,1755) - lu(k,269) * lu(k,1670) + lu(k,1784) = lu(k,1784) - lu(k,270) * lu(k,1670) + lu(k,1786) = lu(k,1786) - lu(k,271) * lu(k,1670) + lu(k,2149) = lu(k,2149) - lu(k,269) * lu(k,2134) + lu(k,2174) = - lu(k,270) * lu(k,2134) + lu(k,2176) = lu(k,2176) - lu(k,271) * lu(k,2134) + lu(k,272) = 1._r8 / lu(k,272) + lu(k,273) = lu(k,273) * lu(k,272) + lu(k,274) = lu(k,274) * lu(k,272) + lu(k,275) = lu(k,275) * lu(k,272) + lu(k,619) = lu(k,619) - lu(k,273) * lu(k,618) + lu(k,620) = lu(k,620) - lu(k,274) * lu(k,618) + lu(k,622) = - lu(k,275) * lu(k,618) + lu(k,1697) = lu(k,1697) - lu(k,273) * lu(k,1671) + lu(k,1717) = lu(k,1717) - lu(k,274) * lu(k,1671) + lu(k,1784) = lu(k,1784) - lu(k,275) * lu(k,1671) + lu(k,1854) = - lu(k,273) * lu(k,1836) + lu(k,1863) = lu(k,1863) - lu(k,274) * lu(k,1836) + lu(k,1917) = lu(k,1917) - lu(k,275) * lu(k,1836) + lu(k,276) = 1._r8 / lu(k,276) + lu(k,277) = lu(k,277) * lu(k,276) + lu(k,278) = lu(k,278) * lu(k,276) + lu(k,279) = lu(k,279) * lu(k,276) + lu(k,280) = lu(k,280) * lu(k,276) + lu(k,281) = lu(k,281) * lu(k,276) + lu(k,1571) = lu(k,1571) - lu(k,277) * lu(k,1546) + lu(k,1574) = lu(k,1574) - lu(k,278) * lu(k,1546) + lu(k,1580) = lu(k,1580) - lu(k,279) * lu(k,1546) + lu(k,1583) = lu(k,1583) - lu(k,280) * lu(k,1546) + lu(k,1587) = lu(k,1587) - lu(k,281) * lu(k,1546) + lu(k,2116) = lu(k,2116) - lu(k,277) * lu(k,2075) + lu(k,2119) = lu(k,2119) - lu(k,278) * lu(k,2075) + lu(k,2125) = lu(k,2125) - lu(k,279) * lu(k,2075) + lu(k,2128) = lu(k,2128) - lu(k,280) * lu(k,2075) + lu(k,2132) = lu(k,2132) - lu(k,281) * lu(k,2075) + end do + end subroutine lu_fac05 + subroutine lu_fac06( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,282) = 1._r8 / lu(k,282) + lu(k,283) = lu(k,283) * lu(k,282) + lu(k,284) = lu(k,284) * lu(k,282) + lu(k,653) = - lu(k,283) * lu(k,647) + lu(k,659) = lu(k,659) - lu(k,284) * lu(k,647) + lu(k,708) = - lu(k,283) * lu(k,701) + lu(k,715) = lu(k,715) - lu(k,284) * lu(k,701) + lu(k,735) = - lu(k,283) * lu(k,729) + lu(k,742) = lu(k,742) - lu(k,284) * lu(k,729) + lu(k,751) = - lu(k,283) * lu(k,744) + lu(k,759) = lu(k,759) - lu(k,284) * lu(k,744) + lu(k,2294) = lu(k,2294) - lu(k,283) * lu(k,2269) + lu(k,2337) = lu(k,2337) - lu(k,284) * lu(k,2269) + lu(k,285) = 1._r8 / lu(k,285) + lu(k,286) = lu(k,286) * lu(k,285) + lu(k,287) = lu(k,287) * lu(k,285) + lu(k,883) = lu(k,883) - lu(k,286) * lu(k,882) + lu(k,888) = lu(k,888) - lu(k,287) * lu(k,882) + lu(k,1250) = lu(k,1250) - lu(k,286) * lu(k,1249) + lu(k,1257) = lu(k,1257) - lu(k,287) * lu(k,1249) + lu(k,1458) = lu(k,1458) - lu(k,286) * lu(k,1457) + lu(k,1470) = lu(k,1470) - lu(k,287) * lu(k,1457) + lu(k,1477) = lu(k,1477) - lu(k,286) * lu(k,1476) + lu(k,1488) = - lu(k,287) * lu(k,1476) + lu(k,2351) = lu(k,2351) - lu(k,286) * lu(k,2350) + lu(k,2367) = lu(k,2367) - lu(k,287) * lu(k,2350) + lu(k,288) = 1._r8 / lu(k,288) + lu(k,289) = lu(k,289) * lu(k,288) + lu(k,290) = lu(k,290) * lu(k,288) + lu(k,291) = lu(k,291) * lu(k,288) + lu(k,292) = lu(k,292) * lu(k,288) + lu(k,293) = lu(k,293) * lu(k,288) + lu(k,1744) = lu(k,1744) - lu(k,289) * lu(k,1672) + lu(k,1779) = lu(k,1779) - lu(k,290) * lu(k,1672) + lu(k,1784) = lu(k,1784) - lu(k,291) * lu(k,1672) + lu(k,1786) = lu(k,1786) - lu(k,292) * lu(k,1672) + lu(k,1791) = lu(k,1791) - lu(k,293) * lu(k,1672) + lu(k,2083) = lu(k,2083) - lu(k,289) * lu(k,2076) + lu(k,2116) = lu(k,2116) - lu(k,290) * lu(k,2076) + lu(k,2121) = lu(k,2121) - lu(k,291) * lu(k,2076) + lu(k,2123) = lu(k,2123) - lu(k,292) * lu(k,2076) + lu(k,2128) = lu(k,2128) - lu(k,293) * lu(k,2076) + lu(k,294) = 1._r8 / lu(k,294) + lu(k,295) = lu(k,295) * lu(k,294) + lu(k,296) = lu(k,296) * lu(k,294) + lu(k,297) = lu(k,297) * lu(k,294) + lu(k,298) = lu(k,298) * lu(k,294) + lu(k,299) = lu(k,299) * lu(k,294) + lu(k,1741) = lu(k,1741) - lu(k,295) * lu(k,1673) + lu(k,1749) = lu(k,1749) - lu(k,296) * lu(k,1673) + lu(k,1764) = lu(k,1764) - lu(k,297) * lu(k,1673) + lu(k,1784) = lu(k,1784) - lu(k,298) * lu(k,1673) + lu(k,1786) = lu(k,1786) - lu(k,299) * lu(k,1673) + lu(k,2199) = - lu(k,295) * lu(k,2188) + lu(k,2200) = - lu(k,296) * lu(k,2188) + lu(k,2205) = lu(k,2205) - lu(k,297) * lu(k,2188) + lu(k,2215) = lu(k,2215) - lu(k,298) * lu(k,2188) + lu(k,2217) = lu(k,2217) - lu(k,299) * lu(k,2188) + lu(k,300) = 1._r8 / lu(k,300) + lu(k,301) = lu(k,301) * lu(k,300) + lu(k,302) = lu(k,302) * lu(k,300) + lu(k,303) = lu(k,303) * lu(k,300) + lu(k,304) = lu(k,304) * lu(k,300) + lu(k,305) = lu(k,305) * lu(k,300) + lu(k,1740) = lu(k,1740) - lu(k,301) * lu(k,1674) + lu(k,1784) = lu(k,1784) - lu(k,302) * lu(k,1674) + lu(k,1790) = lu(k,1790) - lu(k,303) * lu(k,1674) + lu(k,1793) = lu(k,1793) - lu(k,304) * lu(k,1674) + lu(k,1796) = lu(k,1796) - lu(k,305) * lu(k,1674) + lu(k,2198) = lu(k,2198) - lu(k,301) * lu(k,2189) + lu(k,2215) = lu(k,2215) - lu(k,302) * lu(k,2189) + lu(k,2221) = lu(k,2221) - lu(k,303) * lu(k,2189) + lu(k,2224) = lu(k,2224) - lu(k,304) * lu(k,2189) + lu(k,2227) = - lu(k,305) * lu(k,2189) + lu(k,307) = 1._r8 / lu(k,307) + lu(k,308) = lu(k,308) * lu(k,307) + lu(k,309) = lu(k,309) * lu(k,307) + lu(k,310) = lu(k,310) * lu(k,307) + lu(k,311) = lu(k,311) * lu(k,307) + lu(k,312) = lu(k,312) * lu(k,307) + lu(k,1610) = lu(k,1610) - lu(k,308) * lu(k,1605) + lu(k,1618) = lu(k,1618) - lu(k,309) * lu(k,1605) + lu(k,1619) = lu(k,1619) - lu(k,310) * lu(k,1605) + lu(k,1628) = lu(k,1628) - lu(k,311) * lu(k,1605) + lu(k,1631) = lu(k,1631) - lu(k,312) * lu(k,1605) + lu(k,1743) = lu(k,1743) - lu(k,308) * lu(k,1675) + lu(k,1783) = lu(k,1783) - lu(k,309) * lu(k,1675) + lu(k,1784) = lu(k,1784) - lu(k,310) * lu(k,1675) + lu(k,1793) = lu(k,1793) - lu(k,311) * lu(k,1675) + lu(k,1796) = lu(k,1796) - lu(k,312) * lu(k,1675) + lu(k,313) = 1._r8 / lu(k,313) + lu(k,314) = lu(k,314) * lu(k,313) + lu(k,315) = lu(k,315) * lu(k,313) + lu(k,316) = lu(k,316) * lu(k,313) + lu(k,317) = lu(k,317) * lu(k,313) + lu(k,1335) = lu(k,1335) - lu(k,314) * lu(k,1327) + lu(k,1336) = - lu(k,315) * lu(k,1327) + lu(k,1342) = - lu(k,316) * lu(k,1327) + lu(k,1343) = lu(k,1343) - lu(k,317) * lu(k,1327) + lu(k,1772) = lu(k,1772) - lu(k,314) * lu(k,1676) + lu(k,1774) = lu(k,1774) - lu(k,315) * lu(k,1676) + lu(k,1784) = lu(k,1784) - lu(k,316) * lu(k,1676) + lu(k,1786) = lu(k,1786) - lu(k,317) * lu(k,1676) + lu(k,1906) = lu(k,1906) - lu(k,314) * lu(k,1837) + lu(k,1908) = lu(k,1908) - lu(k,315) * lu(k,1837) + lu(k,1917) = lu(k,1917) - lu(k,316) * lu(k,1837) + lu(k,1919) = lu(k,1919) - lu(k,317) * lu(k,1837) + lu(k,318) = 1._r8 / lu(k,318) + lu(k,319) = lu(k,319) * lu(k,318) + lu(k,320) = lu(k,320) * lu(k,318) + lu(k,321) = lu(k,321) * lu(k,318) + lu(k,322) = lu(k,322) * lu(k,318) + lu(k,672) = lu(k,672) - lu(k,319) * lu(k,671) + lu(k,673) = lu(k,673) - lu(k,320) * lu(k,671) + lu(k,674) = lu(k,674) - lu(k,321) * lu(k,671) + lu(k,676) = lu(k,676) - lu(k,322) * lu(k,671) + lu(k,1722) = lu(k,1722) - lu(k,319) * lu(k,1677) + lu(k,1755) = lu(k,1755) - lu(k,320) * lu(k,1677) + lu(k,1775) = lu(k,1775) - lu(k,321) * lu(k,1677) + lu(k,1784) = lu(k,1784) - lu(k,322) * lu(k,1677) + lu(k,1867) = lu(k,1867) - lu(k,319) * lu(k,1838) + lu(k,1890) = lu(k,1890) - lu(k,320) * lu(k,1838) + lu(k,1909) = lu(k,1909) - lu(k,321) * lu(k,1838) + lu(k,1917) = lu(k,1917) - lu(k,322) * lu(k,1838) + lu(k,323) = 1._r8 / lu(k,323) + lu(k,324) = lu(k,324) * lu(k,323) + lu(k,325) = lu(k,325) * lu(k,323) + lu(k,326) = lu(k,326) * lu(k,323) + lu(k,327) = lu(k,327) * lu(k,323) + lu(k,711) = - lu(k,324) * lu(k,702) + lu(k,712) = lu(k,712) - lu(k,325) * lu(k,702) + lu(k,713) = - lu(k,326) * lu(k,702) + lu(k,715) = lu(k,715) - lu(k,327) * lu(k,702) + lu(k,754) = - lu(k,324) * lu(k,745) + lu(k,755) = lu(k,755) - lu(k,325) * lu(k,745) + lu(k,756) = - lu(k,326) * lu(k,745) + lu(k,759) = lu(k,759) - lu(k,327) * lu(k,745) + lu(k,2317) = lu(k,2317) - lu(k,324) * lu(k,2270) + lu(k,2321) = lu(k,2321) - lu(k,325) * lu(k,2270) + lu(k,2327) = lu(k,2327) - lu(k,326) * lu(k,2270) + lu(k,2337) = lu(k,2337) - lu(k,327) * lu(k,2270) + end do + end subroutine lu_fac06 + subroutine lu_fac07( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,328) = 1._r8 / lu(k,328) + lu(k,329) = lu(k,329) * lu(k,328) + lu(k,330) = lu(k,330) * lu(k,328) + lu(k,331) = lu(k,331) * lu(k,328) + lu(k,332) = lu(k,332) * lu(k,328) + lu(k,1429) = lu(k,1429) - lu(k,329) * lu(k,1427) + lu(k,1430) = lu(k,1430) - lu(k,330) * lu(k,1427) + lu(k,1438) = lu(k,1438) - lu(k,331) * lu(k,1427) + lu(k,1441) = lu(k,1441) - lu(k,332) * lu(k,1427) + lu(k,1801) = lu(k,1801) - lu(k,329) * lu(k,1798) + lu(k,1802) = lu(k,1802) - lu(k,330) * lu(k,1798) + lu(k,1813) = lu(k,1813) - lu(k,331) * lu(k,1798) + lu(k,1819) = lu(k,1819) - lu(k,332) * lu(k,1798) + lu(k,2233) = lu(k,2233) - lu(k,329) * lu(k,2231) + lu(k,2235) = lu(k,2235) - lu(k,330) * lu(k,2231) + lu(k,2246) = lu(k,2246) - lu(k,331) * lu(k,2231) + lu(k,2252) = lu(k,2252) - lu(k,332) * lu(k,2231) + lu(k,333) = 1._r8 / lu(k,333) + lu(k,334) = lu(k,334) * lu(k,333) + lu(k,335) = lu(k,335) * lu(k,333) + lu(k,336) = lu(k,336) * lu(k,333) + lu(k,337) = lu(k,337) * lu(k,333) + lu(k,445) = lu(k,445) - lu(k,334) * lu(k,444) + lu(k,446) = lu(k,446) - lu(k,335) * lu(k,444) + lu(k,448) = - lu(k,336) * lu(k,444) + lu(k,449) = lu(k,449) - lu(k,337) * lu(k,444) + lu(k,1694) = lu(k,1694) - lu(k,334) * lu(k,1678) + lu(k,1749) = lu(k,1749) - lu(k,335) * lu(k,1678) + lu(k,1784) = lu(k,1784) - lu(k,336) * lu(k,1678) + lu(k,1786) = lu(k,1786) - lu(k,337) * lu(k,1678) + lu(k,1850) = lu(k,1850) - lu(k,334) * lu(k,1839) + lu(k,1887) = lu(k,1887) - lu(k,335) * lu(k,1839) + lu(k,1917) = lu(k,1917) - lu(k,336) * lu(k,1839) + lu(k,1919) = lu(k,1919) - lu(k,337) * lu(k,1839) + lu(k,339) = 1._r8 / lu(k,339) + lu(k,340) = lu(k,340) * lu(k,339) + lu(k,341) = lu(k,341) * lu(k,339) + lu(k,342) = lu(k,342) * lu(k,339) + lu(k,343) = lu(k,343) * lu(k,339) + lu(k,432) = lu(k,432) - lu(k,340) * lu(k,431) + lu(k,433) = lu(k,433) - lu(k,341) * lu(k,431) + lu(k,435) = lu(k,435) - lu(k,342) * lu(k,431) + lu(k,436) = lu(k,436) - lu(k,343) * lu(k,431) + lu(k,1693) = lu(k,1693) - lu(k,340) * lu(k,1679) + lu(k,1704) = lu(k,1704) - lu(k,341) * lu(k,1679) + lu(k,1784) = lu(k,1784) - lu(k,342) * lu(k,1679) + lu(k,1786) = lu(k,1786) - lu(k,343) * lu(k,1679) + lu(k,1848) = lu(k,1848) - lu(k,340) * lu(k,1840) + lu(k,1859) = lu(k,1859) - lu(k,341) * lu(k,1840) + lu(k,1917) = lu(k,1917) - lu(k,342) * lu(k,1840) + lu(k,1919) = lu(k,1919) - lu(k,343) * lu(k,1840) + lu(k,344) = 1._r8 / lu(k,344) + lu(k,345) = lu(k,345) * lu(k,344) + lu(k,346) = lu(k,346) * lu(k,344) + lu(k,1307) = lu(k,1307) - lu(k,345) * lu(k,1293) + lu(k,1319) = lu(k,1319) - lu(k,346) * lu(k,1293) + lu(k,1404) = lu(k,1404) - lu(k,345) * lu(k,1394) + lu(k,1419) = lu(k,1419) - lu(k,346) * lu(k,1394) + lu(k,1765) = lu(k,1765) - lu(k,345) * lu(k,1680) + lu(k,1784) = lu(k,1784) - lu(k,346) * lu(k,1680) + lu(k,2103) = lu(k,2103) - lu(k,345) * lu(k,2077) + lu(k,2121) = lu(k,2121) - lu(k,346) * lu(k,2077) + lu(k,2158) = lu(k,2158) - lu(k,345) * lu(k,2135) + lu(k,2174) = lu(k,2174) - lu(k,346) * lu(k,2135) + lu(k,2318) = lu(k,2318) - lu(k,345) * lu(k,2271) + lu(k,2335) = lu(k,2335) - lu(k,346) * lu(k,2271) + lu(k,347) = 1._r8 / lu(k,347) + lu(k,348) = lu(k,348) * lu(k,347) + lu(k,349) = lu(k,349) * lu(k,347) + lu(k,350) = lu(k,350) * lu(k,347) + lu(k,351) = lu(k,351) * lu(k,347) + lu(k,859) = lu(k,859) - lu(k,348) * lu(k,857) + lu(k,860) = lu(k,860) - lu(k,349) * lu(k,857) + lu(k,864) = lu(k,864) - lu(k,350) * lu(k,857) + lu(k,865) = lu(k,865) - lu(k,351) * lu(k,857) + lu(k,1740) = lu(k,1740) - lu(k,348) * lu(k,1681) + lu(k,1755) = lu(k,1755) - lu(k,349) * lu(k,1681) + lu(k,1784) = lu(k,1784) - lu(k,350) * lu(k,1681) + lu(k,1786) = lu(k,1786) - lu(k,351) * lu(k,1681) + lu(k,1882) = lu(k,1882) - lu(k,348) * lu(k,1841) + lu(k,1890) = lu(k,1890) - lu(k,349) * lu(k,1841) + lu(k,1917) = lu(k,1917) - lu(k,350) * lu(k,1841) + lu(k,1919) = lu(k,1919) - lu(k,351) * lu(k,1841) + lu(k,352) = 1._r8 / lu(k,352) + lu(k,353) = lu(k,353) * lu(k,352) + lu(k,354) = lu(k,354) * lu(k,352) + lu(k,355) = lu(k,355) * lu(k,352) + lu(k,356) = lu(k,356) * lu(k,352) + lu(k,357) = lu(k,357) * lu(k,352) + lu(k,358) = lu(k,358) * lu(k,352) + lu(k,359) = lu(k,359) * lu(k,352) + lu(k,1708) = lu(k,1708) - lu(k,353) * lu(k,1682) + lu(k,1748) = lu(k,1748) - lu(k,354) * lu(k,1682) + lu(k,1755) = lu(k,1755) - lu(k,355) * lu(k,1682) + lu(k,1781) = lu(k,1781) - lu(k,356) * lu(k,1682) + lu(k,1782) = lu(k,1782) - lu(k,357) * lu(k,1682) + lu(k,1784) = lu(k,1784) - lu(k,358) * lu(k,1682) + lu(k,1791) = lu(k,1791) - lu(k,359) * lu(k,1682) + lu(k,2079) = - lu(k,353) * lu(k,2078) + lu(k,2087) = lu(k,2087) - lu(k,354) * lu(k,2078) + lu(k,2093) = lu(k,2093) - lu(k,355) * lu(k,2078) + lu(k,2118) = lu(k,2118) - lu(k,356) * lu(k,2078) + lu(k,2119) = lu(k,2119) - lu(k,357) * lu(k,2078) + lu(k,2121) = lu(k,2121) - lu(k,358) * lu(k,2078) + lu(k,2128) = lu(k,2128) - lu(k,359) * lu(k,2078) + lu(k,360) = 1._r8 / lu(k,360) + lu(k,361) = lu(k,361) * lu(k,360) + lu(k,362) = lu(k,362) * lu(k,360) + lu(k,363) = lu(k,363) * lu(k,360) + lu(k,364) = lu(k,364) * lu(k,360) + lu(k,365) = lu(k,365) * lu(k,360) + lu(k,366) = lu(k,366) * lu(k,360) + lu(k,367) = lu(k,367) * lu(k,360) + lu(k,1727) = lu(k,1727) - lu(k,361) * lu(k,1683) + lu(k,1744) = lu(k,1744) - lu(k,362) * lu(k,1683) + lu(k,1764) = lu(k,1764) - lu(k,363) * lu(k,1683) + lu(k,1776) = lu(k,1776) - lu(k,364) * lu(k,1683) + lu(k,1784) = lu(k,1784) - lu(k,365) * lu(k,1683) + lu(k,1788) = lu(k,1788) - lu(k,366) * lu(k,1683) + lu(k,1789) = lu(k,1789) - lu(k,367) * lu(k,1683) + lu(k,2000) = - lu(k,361) * lu(k,1997) + lu(k,2004) = - lu(k,362) * lu(k,1997) + lu(k,2006) = lu(k,2006) - lu(k,363) * lu(k,1997) + lu(k,2008) = lu(k,2008) - lu(k,364) * lu(k,1997) + lu(k,2016) = lu(k,2016) - lu(k,365) * lu(k,1997) + lu(k,2020) = lu(k,2020) - lu(k,366) * lu(k,1997) + lu(k,2021) = lu(k,2021) - lu(k,367) * lu(k,1997) + lu(k,368) = 1._r8 / lu(k,368) + lu(k,369) = lu(k,369) * lu(k,368) + lu(k,370) = lu(k,370) * lu(k,368) + lu(k,371) = lu(k,371) * lu(k,368) + lu(k,372) = lu(k,372) * lu(k,368) + lu(k,373) = lu(k,373) * lu(k,368) + lu(k,374) = lu(k,374) * lu(k,368) + lu(k,375) = lu(k,375) * lu(k,368) + lu(k,1764) = lu(k,1764) - lu(k,369) * lu(k,1684) + lu(k,1784) = lu(k,1784) - lu(k,370) * lu(k,1684) + lu(k,1786) = lu(k,1786) - lu(k,371) * lu(k,1684) + lu(k,1790) = lu(k,1790) - lu(k,372) * lu(k,1684) + lu(k,1792) = lu(k,1792) - lu(k,373) * lu(k,1684) + lu(k,1793) = lu(k,1793) - lu(k,374) * lu(k,1684) + lu(k,1796) = lu(k,1796) - lu(k,375) * lu(k,1684) + lu(k,2205) = lu(k,2205) - lu(k,369) * lu(k,2190) + lu(k,2215) = lu(k,2215) - lu(k,370) * lu(k,2190) + lu(k,2217) = lu(k,2217) - lu(k,371) * lu(k,2190) + lu(k,2221) = lu(k,2221) - lu(k,372) * lu(k,2190) + lu(k,2223) = lu(k,2223) - lu(k,373) * lu(k,2190) + lu(k,2224) = lu(k,2224) - lu(k,374) * lu(k,2190) + lu(k,2227) = lu(k,2227) - lu(k,375) * lu(k,2190) + end do + end subroutine lu_fac07 + subroutine lu_fac08( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,376) = 1._r8 / lu(k,376) + lu(k,377) = lu(k,377) * lu(k,376) + lu(k,378) = lu(k,378) * lu(k,376) + lu(k,379) = lu(k,379) * lu(k,376) + lu(k,380) = lu(k,380) * lu(k,376) + lu(k,381) = lu(k,381) * lu(k,376) + lu(k,911) = - lu(k,377) * lu(k,906) + lu(k,918) = lu(k,918) - lu(k,378) * lu(k,906) + lu(k,919) = - lu(k,379) * lu(k,906) + lu(k,920) = lu(k,920) - lu(k,380) * lu(k,906) + lu(k,923) = lu(k,923) - lu(k,381) * lu(k,906) + lu(k,939) = - lu(k,377) * lu(k,934) + lu(k,946) = lu(k,946) - lu(k,378) * lu(k,934) + lu(k,947) = - lu(k,379) * lu(k,934) + lu(k,948) = lu(k,948) - lu(k,380) * lu(k,934) + lu(k,951) = lu(k,951) - lu(k,381) * lu(k,934) + lu(k,1952) = - lu(k,377) * lu(k,1938) + lu(k,1964) = lu(k,1964) - lu(k,378) * lu(k,1938) + lu(k,1967) = lu(k,1967) - lu(k,379) * lu(k,1938) + lu(k,1973) = lu(k,1973) - lu(k,380) * lu(k,1938) + lu(k,1984) = lu(k,1984) - lu(k,381) * lu(k,1938) + lu(k,382) = 1._r8 / lu(k,382) + lu(k,383) = lu(k,383) * lu(k,382) + lu(k,384) = lu(k,384) * lu(k,382) + lu(k,385) = lu(k,385) * lu(k,382) + lu(k,386) = lu(k,386) * lu(k,382) + lu(k,387) = lu(k,387) * lu(k,382) + lu(k,1612) = lu(k,1612) - lu(k,383) * lu(k,1606) + lu(k,1618) = lu(k,1618) - lu(k,384) * lu(k,1606) + lu(k,1619) = lu(k,1619) - lu(k,385) * lu(k,1606) + lu(k,1625) = lu(k,1625) - lu(k,386) * lu(k,1606) + lu(k,1628) = lu(k,1628) - lu(k,387) * lu(k,1606) + lu(k,1777) = lu(k,1777) - lu(k,383) * lu(k,1685) + lu(k,1783) = lu(k,1783) - lu(k,384) * lu(k,1685) + lu(k,1784) = lu(k,1784) - lu(k,385) * lu(k,1685) + lu(k,1790) = lu(k,1790) - lu(k,386) * lu(k,1685) + lu(k,1793) = lu(k,1793) - lu(k,387) * lu(k,1685) + lu(k,2208) = lu(k,2208) - lu(k,383) * lu(k,2191) + lu(k,2214) = - lu(k,384) * lu(k,2191) + lu(k,2215) = lu(k,2215) - lu(k,385) * lu(k,2191) + lu(k,2221) = lu(k,2221) - lu(k,386) * lu(k,2191) + lu(k,2224) = lu(k,2224) - lu(k,387) * lu(k,2191) + lu(k,388) = 1._r8 / lu(k,388) + lu(k,389) = lu(k,389) * lu(k,388) + lu(k,390) = lu(k,390) * lu(k,388) + lu(k,391) = lu(k,391) * lu(k,388) + lu(k,392) = lu(k,392) * lu(k,388) + lu(k,393) = lu(k,393) * lu(k,388) + lu(k,1059) = lu(k,1059) - lu(k,389) * lu(k,1056) + lu(k,1060) = lu(k,1060) - lu(k,390) * lu(k,1056) + lu(k,1064) = - lu(k,391) * lu(k,1056) + lu(k,1066) = lu(k,1066) - lu(k,392) * lu(k,1056) + lu(k,1067) = - lu(k,393) * lu(k,1056) + lu(k,1751) = lu(k,1751) - lu(k,389) * lu(k,1686) + lu(k,1756) = lu(k,1756) - lu(k,390) * lu(k,1686) + lu(k,1779) = lu(k,1779) - lu(k,391) * lu(k,1686) + lu(k,1782) = lu(k,1782) - lu(k,392) * lu(k,1686) + lu(k,1784) = lu(k,1784) - lu(k,393) * lu(k,1686) + lu(k,1888) = - lu(k,389) * lu(k,1842) + lu(k,1891) = lu(k,1891) - lu(k,390) * lu(k,1842) + lu(k,1912) = - lu(k,391) * lu(k,1842) + lu(k,1915) = lu(k,1915) - lu(k,392) * lu(k,1842) + lu(k,1917) = lu(k,1917) - lu(k,393) * lu(k,1842) + lu(k,394) = 1._r8 / lu(k,394) + lu(k,395) = lu(k,395) * lu(k,394) + lu(k,396) = lu(k,396) * lu(k,394) + lu(k,397) = lu(k,397) * lu(k,394) + lu(k,398) = lu(k,398) * lu(k,394) + lu(k,399) = lu(k,399) * lu(k,394) + lu(k,1164) = lu(k,1164) - lu(k,395) * lu(k,1161) + lu(k,1166) = lu(k,1166) - lu(k,396) * lu(k,1161) + lu(k,1167) = lu(k,1167) - lu(k,397) * lu(k,1161) + lu(k,1169) = lu(k,1169) - lu(k,398) * lu(k,1161) + lu(k,1173) = - lu(k,399) * lu(k,1161) + lu(k,1763) = lu(k,1763) - lu(k,395) * lu(k,1687) + lu(k,1775) = lu(k,1775) - lu(k,396) * lu(k,1687) + lu(k,1781) = lu(k,1781) - lu(k,397) * lu(k,1687) + lu(k,1784) = lu(k,1784) - lu(k,398) * lu(k,1687) + lu(k,1796) = lu(k,1796) - lu(k,399) * lu(k,1687) + lu(k,1897) = lu(k,1897) - lu(k,395) * lu(k,1843) + lu(k,1909) = lu(k,1909) - lu(k,396) * lu(k,1843) + lu(k,1914) = lu(k,1914) - lu(k,397) * lu(k,1843) + lu(k,1917) = lu(k,1917) - lu(k,398) * lu(k,1843) + lu(k,1929) = lu(k,1929) - lu(k,399) * lu(k,1843) + lu(k,400) = 1._r8 / lu(k,400) + lu(k,401) = lu(k,401) * lu(k,400) + lu(k,402) = lu(k,402) * lu(k,400) + lu(k,403) = lu(k,403) * lu(k,400) + lu(k,404) = lu(k,404) * lu(k,400) + lu(k,405) = lu(k,405) * lu(k,400) + lu(k,1201) = - lu(k,401) * lu(k,1199) + lu(k,1203) = - lu(k,402) * lu(k,1199) + lu(k,1217) = lu(k,1217) - lu(k,403) * lu(k,1199) + lu(k,1218) = - lu(k,404) * lu(k,1199) + lu(k,1219) = lu(k,1219) - lu(k,405) * lu(k,1199) + lu(k,1725) = lu(k,1725) - lu(k,401) * lu(k,1688) + lu(k,1739) = lu(k,1739) - lu(k,402) * lu(k,1688) + lu(k,1782) = lu(k,1782) - lu(k,403) * lu(k,1688) + lu(k,1784) = lu(k,1784) - lu(k,404) * lu(k,1688) + lu(k,1786) = lu(k,1786) - lu(k,405) * lu(k,1688) + lu(k,1869) = lu(k,1869) - lu(k,401) * lu(k,1844) + lu(k,1881) = - lu(k,402) * lu(k,1844) + lu(k,1915) = lu(k,1915) - lu(k,403) * lu(k,1844) + lu(k,1917) = lu(k,1917) - lu(k,404) * lu(k,1844) + lu(k,1919) = lu(k,1919) - lu(k,405) * lu(k,1844) + lu(k,406) = 1._r8 / lu(k,406) + lu(k,407) = lu(k,407) * lu(k,406) + lu(k,408) = lu(k,408) * lu(k,406) + lu(k,409) = lu(k,409) * lu(k,406) + lu(k,410) = lu(k,410) * lu(k,406) + lu(k,411) = lu(k,411) * lu(k,406) + lu(k,804) = lu(k,804) - lu(k,407) * lu(k,803) + lu(k,805) = lu(k,805) - lu(k,408) * lu(k,803) + lu(k,810) = - lu(k,409) * lu(k,803) + lu(k,811) = lu(k,811) - lu(k,410) * lu(k,803) + lu(k,814) = - lu(k,411) * lu(k,803) + lu(k,1735) = lu(k,1735) - lu(k,407) * lu(k,1689) + lu(k,1748) = lu(k,1748) - lu(k,408) * lu(k,1689) + lu(k,1784) = lu(k,1784) - lu(k,409) * lu(k,1689) + lu(k,1786) = lu(k,1786) - lu(k,410) * lu(k,1689) + lu(k,1796) = lu(k,1796) - lu(k,411) * lu(k,1689) + lu(k,1878) = lu(k,1878) - lu(k,407) * lu(k,1845) + lu(k,1886) = - lu(k,408) * lu(k,1845) + lu(k,1917) = lu(k,1917) - lu(k,409) * lu(k,1845) + lu(k,1919) = lu(k,1919) - lu(k,410) * lu(k,1845) + lu(k,1929) = lu(k,1929) - lu(k,411) * lu(k,1845) + end do + end subroutine lu_fac08 + subroutine lu_fac09( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,412) = 1._r8 / lu(k,412) + lu(k,413) = lu(k,413) * lu(k,412) + lu(k,414) = lu(k,414) * lu(k,412) + lu(k,415) = lu(k,415) * lu(k,412) + lu(k,416) = lu(k,416) * lu(k,412) + lu(k,417) = lu(k,417) * lu(k,412) + lu(k,491) = lu(k,491) - lu(k,413) * lu(k,490) + lu(k,492) = lu(k,492) - lu(k,414) * lu(k,490) + lu(k,494) = lu(k,494) - lu(k,415) * lu(k,490) + lu(k,496) = - lu(k,416) * lu(k,490) + lu(k,497) = lu(k,497) - lu(k,417) * lu(k,490) + lu(k,1696) = lu(k,1696) - lu(k,413) * lu(k,1690) + lu(k,1701) = lu(k,1701) - lu(k,414) * lu(k,1690) + lu(k,1749) = lu(k,1749) - lu(k,415) * lu(k,1690) + lu(k,1784) = lu(k,1784) - lu(k,416) * lu(k,1690) + lu(k,1786) = lu(k,1786) - lu(k,417) * lu(k,1690) + lu(k,1853) = - lu(k,413) * lu(k,1846) + lu(k,1857) = lu(k,1857) - lu(k,414) * lu(k,1846) + lu(k,1887) = lu(k,1887) - lu(k,415) * lu(k,1846) + lu(k,1917) = lu(k,1917) - lu(k,416) * lu(k,1846) + lu(k,1919) = lu(k,1919) - lu(k,417) * lu(k,1846) + lu(k,418) = 1._r8 / lu(k,418) + lu(k,419) = lu(k,419) * lu(k,418) + lu(k,420) = lu(k,420) * lu(k,418) + lu(k,421) = lu(k,421) * lu(k,418) + lu(k,422) = lu(k,422) * lu(k,418) + lu(k,423) = lu(k,423) * lu(k,418) + lu(k,500) = lu(k,500) - lu(k,419) * lu(k,499) + lu(k,501) = lu(k,501) - lu(k,420) * lu(k,499) + lu(k,502) = lu(k,502) - lu(k,421) * lu(k,499) + lu(k,504) = - lu(k,422) * lu(k,499) + lu(k,505) = lu(k,505) - lu(k,423) * lu(k,499) + lu(k,1702) = lu(k,1702) - lu(k,419) * lu(k,1691) + lu(k,1749) = lu(k,1749) - lu(k,420) * lu(k,1691) + lu(k,1768) = lu(k,1768) - lu(k,421) * lu(k,1691) + lu(k,1784) = lu(k,1784) - lu(k,422) * lu(k,1691) + lu(k,1786) = lu(k,1786) - lu(k,423) * lu(k,1691) + lu(k,1858) = lu(k,1858) - lu(k,419) * lu(k,1847) + lu(k,1887) = lu(k,1887) - lu(k,420) * lu(k,1847) + lu(k,1902) = lu(k,1902) - lu(k,421) * lu(k,1847) + lu(k,1917) = lu(k,1917) - lu(k,422) * lu(k,1847) + lu(k,1919) = lu(k,1919) - lu(k,423) * lu(k,1847) + lu(k,424) = 1._r8 / lu(k,424) + lu(k,425) = lu(k,425) * lu(k,424) + lu(k,426) = lu(k,426) * lu(k,424) + lu(k,427) = lu(k,427) * lu(k,424) + lu(k,428) = lu(k,428) * lu(k,424) + lu(k,429) = lu(k,429) * lu(k,424) + lu(k,1203) = lu(k,1203) - lu(k,425) * lu(k,1200) + lu(k,1206) = - lu(k,426) * lu(k,1200) + lu(k,1214) = - lu(k,427) * lu(k,1200) + lu(k,1218) = lu(k,1218) - lu(k,428) * lu(k,1200) + lu(k,1219) = lu(k,1219) - lu(k,429) * lu(k,1200) + lu(k,1739) = lu(k,1739) - lu(k,425) * lu(k,1692) + lu(k,1760) = lu(k,1760) - lu(k,426) * lu(k,1692) + lu(k,1779) = lu(k,1779) - lu(k,427) * lu(k,1692) + lu(k,1784) = lu(k,1784) - lu(k,428) * lu(k,1692) + lu(k,1786) = lu(k,1786) - lu(k,429) * lu(k,1692) + lu(k,2142) = - lu(k,425) * lu(k,2136) + lu(k,2153) = lu(k,2153) - lu(k,426) * lu(k,2136) + lu(k,2169) = - lu(k,427) * lu(k,2136) + lu(k,2174) = lu(k,2174) - lu(k,428) * lu(k,2136) + lu(k,2176) = lu(k,2176) - lu(k,429) * lu(k,2136) + lu(k,432) = 1._r8 / lu(k,432) + lu(k,433) = lu(k,433) * lu(k,432) + lu(k,434) = lu(k,434) * lu(k,432) + lu(k,435) = lu(k,435) * lu(k,432) + lu(k,436) = lu(k,436) * lu(k,432) + lu(k,437) = lu(k,437) * lu(k,432) + lu(k,1704) = lu(k,1704) - lu(k,433) * lu(k,1693) + lu(k,1782) = lu(k,1782) - lu(k,434) * lu(k,1693) + lu(k,1784) = lu(k,1784) - lu(k,435) * lu(k,1693) + lu(k,1786) = lu(k,1786) - lu(k,436) * lu(k,1693) + lu(k,1795) = lu(k,1795) - lu(k,437) * lu(k,1693) + lu(k,1859) = lu(k,1859) - lu(k,433) * lu(k,1848) + lu(k,1915) = lu(k,1915) - lu(k,434) * lu(k,1848) + lu(k,1917) = lu(k,1917) - lu(k,435) * lu(k,1848) + lu(k,1919) = lu(k,1919) - lu(k,436) * lu(k,1848) + lu(k,1928) = lu(k,1928) - lu(k,437) * lu(k,1848) + lu(k,2281) = lu(k,2281) - lu(k,433) * lu(k,2272) + lu(k,2333) = lu(k,2333) - lu(k,434) * lu(k,2272) + lu(k,2335) = lu(k,2335) - lu(k,435) * lu(k,2272) + lu(k,2337) = lu(k,2337) - lu(k,436) * lu(k,2272) + lu(k,2346) = lu(k,2346) - lu(k,437) * lu(k,2272) + lu(k,438) = 1._r8 / lu(k,438) + lu(k,439) = lu(k,439) * lu(k,438) + lu(k,440) = lu(k,440) * lu(k,438) + lu(k,441) = lu(k,441) * lu(k,438) + lu(k,442) = lu(k,442) * lu(k,438) + lu(k,443) = lu(k,443) * lu(k,438) + lu(k,1520) = - lu(k,439) * lu(k,1518) + lu(k,1528) = lu(k,1528) - lu(k,440) * lu(k,1518) + lu(k,1529) = - lu(k,441) * lu(k,1518) + lu(k,1533) = lu(k,1533) - lu(k,442) * lu(k,1518) + lu(k,1542) = - lu(k,443) * lu(k,1518) + lu(k,1883) = lu(k,1883) - lu(k,439) * lu(k,1849) + lu(k,1914) = lu(k,1914) - lu(k,440) * lu(k,1849) + lu(k,1915) = lu(k,1915) - lu(k,441) * lu(k,1849) + lu(k,1919) = lu(k,1919) - lu(k,442) * lu(k,1849) + lu(k,1928) = lu(k,1928) - lu(k,443) * lu(k,1849) + lu(k,2300) = lu(k,2300) - lu(k,439) * lu(k,2273) + lu(k,2332) = lu(k,2332) - lu(k,440) * lu(k,2273) + lu(k,2333) = lu(k,2333) - lu(k,441) * lu(k,2273) + lu(k,2337) = lu(k,2337) - lu(k,442) * lu(k,2273) + lu(k,2346) = lu(k,2346) - lu(k,443) * lu(k,2273) + lu(k,445) = 1._r8 / lu(k,445) + lu(k,446) = lu(k,446) * lu(k,445) + lu(k,447) = lu(k,447) * lu(k,445) + lu(k,448) = lu(k,448) * lu(k,445) + lu(k,449) = lu(k,449) * lu(k,445) + lu(k,450) = lu(k,450) * lu(k,445) + lu(k,1749) = lu(k,1749) - lu(k,446) * lu(k,1694) + lu(k,1782) = lu(k,1782) - lu(k,447) * lu(k,1694) + lu(k,1784) = lu(k,1784) - lu(k,448) * lu(k,1694) + lu(k,1786) = lu(k,1786) - lu(k,449) * lu(k,1694) + lu(k,1795) = lu(k,1795) - lu(k,450) * lu(k,1694) + lu(k,1887) = lu(k,1887) - lu(k,446) * lu(k,1850) + lu(k,1915) = lu(k,1915) - lu(k,447) * lu(k,1850) + lu(k,1917) = lu(k,1917) - lu(k,448) * lu(k,1850) + lu(k,1919) = lu(k,1919) - lu(k,449) * lu(k,1850) + lu(k,1928) = lu(k,1928) - lu(k,450) * lu(k,1850) + lu(k,2304) = lu(k,2304) - lu(k,446) * lu(k,2274) + lu(k,2333) = lu(k,2333) - lu(k,447) * lu(k,2274) + lu(k,2335) = lu(k,2335) - lu(k,448) * lu(k,2274) + lu(k,2337) = lu(k,2337) - lu(k,449) * lu(k,2274) + lu(k,2346) = lu(k,2346) - lu(k,450) * lu(k,2274) + lu(k,451) = 1._r8 / lu(k,451) + lu(k,452) = lu(k,452) * lu(k,451) + lu(k,453) = lu(k,453) * lu(k,451) + lu(k,454) = lu(k,454) * lu(k,451) + lu(k,455) = lu(k,455) * lu(k,451) + lu(k,456) = lu(k,456) * lu(k,451) + lu(k,1781) = lu(k,1781) - lu(k,452) * lu(k,1695) + lu(k,1784) = lu(k,1784) - lu(k,453) * lu(k,1695) + lu(k,1789) = lu(k,1789) - lu(k,454) * lu(k,1695) + lu(k,1792) = lu(k,1792) - lu(k,455) * lu(k,1695) + lu(k,1796) = lu(k,1796) - lu(k,456) * lu(k,1695) + lu(k,1914) = lu(k,1914) - lu(k,452) * lu(k,1851) + lu(k,1917) = lu(k,1917) - lu(k,453) * lu(k,1851) + lu(k,1922) = lu(k,1922) - lu(k,454) * lu(k,1851) + lu(k,1925) = lu(k,1925) - lu(k,455) * lu(k,1851) + lu(k,1929) = lu(k,1929) - lu(k,456) * lu(k,1851) + lu(k,2171) = lu(k,2171) - lu(k,452) * lu(k,2137) + lu(k,2174) = lu(k,2174) - lu(k,453) * lu(k,2137) + lu(k,2179) = - lu(k,454) * lu(k,2137) + lu(k,2182) = lu(k,2182) - lu(k,455) * lu(k,2137) + lu(k,2186) = - lu(k,456) * lu(k,2137) + end do + end subroutine lu_fac09 + subroutine lu_fac10( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,457) = 1._r8 / lu(k,457) + lu(k,458) = lu(k,458) * lu(k,457) + lu(k,459) = lu(k,459) * lu(k,457) + lu(k,460) = lu(k,460) * lu(k,457) + lu(k,461) = lu(k,461) * lu(k,457) + lu(k,781) = - lu(k,458) * lu(k,779) + lu(k,782) = - lu(k,459) * lu(k,779) + lu(k,783) = lu(k,783) - lu(k,460) * lu(k,779) + lu(k,786) = lu(k,786) - lu(k,461) * lu(k,779) + lu(k,1500) = lu(k,1500) - lu(k,458) * lu(k,1496) + lu(k,1504) = lu(k,1504) - lu(k,459) * lu(k,1496) + lu(k,1505) = - lu(k,460) * lu(k,1496) + lu(k,1510) = lu(k,1510) - lu(k,461) * lu(k,1496) + lu(k,1894) = - lu(k,458) * lu(k,1852) + lu(k,1913) = lu(k,1913) - lu(k,459) * lu(k,1852) + lu(k,1914) = lu(k,1914) - lu(k,460) * lu(k,1852) + lu(k,1919) = lu(k,1919) - lu(k,461) * lu(k,1852) + lu(k,2313) = lu(k,2313) - lu(k,458) * lu(k,2275) + lu(k,2331) = lu(k,2331) - lu(k,459) * lu(k,2275) + lu(k,2332) = lu(k,2332) - lu(k,460) * lu(k,2275) + lu(k,2337) = lu(k,2337) - lu(k,461) * lu(k,2275) + lu(k,462) = 1._r8 / lu(k,462) + lu(k,463) = lu(k,463) * lu(k,462) + lu(k,464) = lu(k,464) * lu(k,462) + lu(k,493) = - lu(k,463) * lu(k,491) + lu(k,497) = lu(k,497) - lu(k,464) * lu(k,491) + lu(k,651) = - lu(k,463) * lu(k,648) + lu(k,659) = lu(k,659) - lu(k,464) * lu(k,648) + lu(k,706) = - lu(k,463) * lu(k,703) + lu(k,715) = lu(k,715) - lu(k,464) * lu(k,703) + lu(k,733) = - lu(k,463) * lu(k,730) + lu(k,742) = lu(k,742) - lu(k,464) * lu(k,730) + lu(k,749) = - lu(k,463) * lu(k,746) + lu(k,759) = lu(k,759) - lu(k,464) * lu(k,746) + lu(k,1728) = - lu(k,463) * lu(k,1696) + lu(k,1786) = lu(k,1786) - lu(k,464) * lu(k,1696) + lu(k,1871) = lu(k,1871) - lu(k,463) * lu(k,1853) + lu(k,1919) = lu(k,1919) - lu(k,464) * lu(k,1853) + lu(k,2291) = lu(k,2291) - lu(k,463) * lu(k,2276) + lu(k,2337) = lu(k,2337) - lu(k,464) * lu(k,2276) + lu(k,465) = 1._r8 / lu(k,465) + lu(k,466) = lu(k,466) * lu(k,465) + lu(k,467) = lu(k,467) * lu(k,465) + lu(k,468) = lu(k,468) * lu(k,465) + lu(k,620) = lu(k,620) - lu(k,466) * lu(k,619) + lu(k,621) = lu(k,621) - lu(k,467) * lu(k,619) + lu(k,624) = - lu(k,468) * lu(k,619) + lu(k,1553) = - lu(k,466) * lu(k,1547) + lu(k,1574) = lu(k,1574) - lu(k,467) * lu(k,1547) + lu(k,1579) = lu(k,1579) - lu(k,468) * lu(k,1547) + lu(k,1717) = lu(k,1717) - lu(k,466) * lu(k,1697) + lu(k,1782) = lu(k,1782) - lu(k,467) * lu(k,1697) + lu(k,1787) = lu(k,1787) - lu(k,468) * lu(k,1697) + lu(k,1863) = lu(k,1863) - lu(k,466) * lu(k,1854) + lu(k,1915) = lu(k,1915) - lu(k,467) * lu(k,1854) + lu(k,1920) = lu(k,1920) - lu(k,468) * lu(k,1854) + lu(k,1941) = lu(k,1941) - lu(k,466) * lu(k,1939) + lu(k,1980) = lu(k,1980) - lu(k,467) * lu(k,1939) + lu(k,1985) = lu(k,1985) - lu(k,468) * lu(k,1939) + lu(k,2287) = lu(k,2287) - lu(k,466) * lu(k,2277) + lu(k,2333) = lu(k,2333) - lu(k,467) * lu(k,2277) + lu(k,2338) = lu(k,2338) - lu(k,468) * lu(k,2277) + lu(k,469) = 1._r8 / lu(k,469) + lu(k,470) = lu(k,470) * lu(k,469) + lu(k,471) = lu(k,471) * lu(k,469) + lu(k,472) = lu(k,472) * lu(k,469) + lu(k,473) = lu(k,473) * lu(k,469) + lu(k,474) = lu(k,474) * lu(k,469) + lu(k,475) = lu(k,475) * lu(k,469) + lu(k,1572) = lu(k,1572) - lu(k,470) * lu(k,1548) + lu(k,1574) = lu(k,1574) - lu(k,471) * lu(k,1548) + lu(k,1576) = lu(k,1576) - lu(k,472) * lu(k,1548) + lu(k,1578) = lu(k,1578) - lu(k,473) * lu(k,1548) + lu(k,1583) = lu(k,1583) - lu(k,474) * lu(k,1548) + lu(k,1588) = - lu(k,475) * lu(k,1548) + lu(k,1780) = lu(k,1780) - lu(k,470) * lu(k,1698) + lu(k,1782) = lu(k,1782) - lu(k,471) * lu(k,1698) + lu(k,1784) = lu(k,1784) - lu(k,472) * lu(k,1698) + lu(k,1786) = lu(k,1786) - lu(k,473) * lu(k,1698) + lu(k,1791) = lu(k,1791) - lu(k,474) * lu(k,1698) + lu(k,1796) = lu(k,1796) - lu(k,475) * lu(k,1698) + lu(k,1913) = lu(k,1913) - lu(k,470) * lu(k,1855) + lu(k,1915) = lu(k,1915) - lu(k,471) * lu(k,1855) + lu(k,1917) = lu(k,1917) - lu(k,472) * lu(k,1855) + lu(k,1919) = lu(k,1919) - lu(k,473) * lu(k,1855) + lu(k,1924) = lu(k,1924) - lu(k,474) * lu(k,1855) + lu(k,1929) = lu(k,1929) - lu(k,475) * lu(k,1855) + lu(k,476) = 1._r8 / lu(k,476) + lu(k,477) = lu(k,477) * lu(k,476) + lu(k,478) = lu(k,478) * lu(k,476) + lu(k,479) = lu(k,479) * lu(k,476) + lu(k,480) = lu(k,480) * lu(k,476) + lu(k,481) = lu(k,481) * lu(k,476) + lu(k,482) = lu(k,482) * lu(k,476) + lu(k,1612) = lu(k,1612) - lu(k,477) * lu(k,1607) + lu(k,1618) = lu(k,1618) - lu(k,478) * lu(k,1607) + lu(k,1619) = lu(k,1619) - lu(k,479) * lu(k,1607) + lu(k,1625) = lu(k,1625) - lu(k,480) * lu(k,1607) + lu(k,1628) = lu(k,1628) - lu(k,481) * lu(k,1607) + lu(k,1631) = lu(k,1631) - lu(k,482) * lu(k,1607) + lu(k,1777) = lu(k,1777) - lu(k,477) * lu(k,1699) + lu(k,1783) = lu(k,1783) - lu(k,478) * lu(k,1699) + lu(k,1784) = lu(k,1784) - lu(k,479) * lu(k,1699) + lu(k,1790) = lu(k,1790) - lu(k,480) * lu(k,1699) + lu(k,1793) = lu(k,1793) - lu(k,481) * lu(k,1699) + lu(k,1796) = lu(k,1796) - lu(k,482) * lu(k,1699) + lu(k,2208) = lu(k,2208) - lu(k,477) * lu(k,2192) + lu(k,2214) = lu(k,2214) - lu(k,478) * lu(k,2192) + lu(k,2215) = lu(k,2215) - lu(k,479) * lu(k,2192) + lu(k,2221) = lu(k,2221) - lu(k,480) * lu(k,2192) + lu(k,2224) = lu(k,2224) - lu(k,481) * lu(k,2192) + lu(k,2227) = lu(k,2227) - lu(k,482) * lu(k,2192) + lu(k,483) = 1._r8 / lu(k,483) + lu(k,484) = lu(k,484) * lu(k,483) + lu(k,485) = lu(k,485) * lu(k,483) + lu(k,486) = lu(k,486) * lu(k,483) + lu(k,487) = lu(k,487) * lu(k,483) + lu(k,488) = lu(k,488) * lu(k,483) + lu(k,489) = lu(k,489) * lu(k,483) + lu(k,1120) = lu(k,1120) - lu(k,484) * lu(k,1117) + lu(k,1121) = lu(k,1121) - lu(k,485) * lu(k,1117) + lu(k,1124) = lu(k,1124) - lu(k,486) * lu(k,1117) + lu(k,1131) = lu(k,1131) - lu(k,487) * lu(k,1117) + lu(k,1133) = - lu(k,488) * lu(k,1117) + lu(k,1134) = lu(k,1134) - lu(k,489) * lu(k,1117) + lu(k,1748) = lu(k,1748) - lu(k,484) * lu(k,1700) + lu(k,1751) = lu(k,1751) - lu(k,485) * lu(k,1700) + lu(k,1761) = lu(k,1761) - lu(k,486) * lu(k,1700) + lu(k,1781) = lu(k,1781) - lu(k,487) * lu(k,1700) + lu(k,1784) = lu(k,1784) - lu(k,488) * lu(k,1700) + lu(k,1786) = lu(k,1786) - lu(k,489) * lu(k,1700) + lu(k,1886) = lu(k,1886) - lu(k,484) * lu(k,1856) + lu(k,1888) = lu(k,1888) - lu(k,485) * lu(k,1856) + lu(k,1895) = lu(k,1895) - lu(k,486) * lu(k,1856) + lu(k,1914) = lu(k,1914) - lu(k,487) * lu(k,1856) + lu(k,1917) = lu(k,1917) - lu(k,488) * lu(k,1856) + lu(k,1919) = lu(k,1919) - lu(k,489) * lu(k,1856) + lu(k,492) = 1._r8 / lu(k,492) + lu(k,493) = lu(k,493) * lu(k,492) + lu(k,494) = lu(k,494) * lu(k,492) + lu(k,495) = lu(k,495) * lu(k,492) + lu(k,496) = lu(k,496) * lu(k,492) + lu(k,497) = lu(k,497) * lu(k,492) + lu(k,498) = lu(k,498) * lu(k,492) + lu(k,1728) = lu(k,1728) - lu(k,493) * lu(k,1701) + lu(k,1749) = lu(k,1749) - lu(k,494) * lu(k,1701) + lu(k,1782) = lu(k,1782) - lu(k,495) * lu(k,1701) + lu(k,1784) = lu(k,1784) - lu(k,496) * lu(k,1701) + lu(k,1786) = lu(k,1786) - lu(k,497) * lu(k,1701) + lu(k,1795) = lu(k,1795) - lu(k,498) * lu(k,1701) + lu(k,1871) = lu(k,1871) - lu(k,493) * lu(k,1857) + lu(k,1887) = lu(k,1887) - lu(k,494) * lu(k,1857) + lu(k,1915) = lu(k,1915) - lu(k,495) * lu(k,1857) + lu(k,1917) = lu(k,1917) - lu(k,496) * lu(k,1857) + lu(k,1919) = lu(k,1919) - lu(k,497) * lu(k,1857) + lu(k,1928) = lu(k,1928) - lu(k,498) * lu(k,1857) + lu(k,2291) = lu(k,2291) - lu(k,493) * lu(k,2278) + lu(k,2304) = lu(k,2304) - lu(k,494) * lu(k,2278) + lu(k,2333) = lu(k,2333) - lu(k,495) * lu(k,2278) + lu(k,2335) = lu(k,2335) - lu(k,496) * lu(k,2278) + lu(k,2337) = lu(k,2337) - lu(k,497) * lu(k,2278) + lu(k,2346) = lu(k,2346) - lu(k,498) * lu(k,2278) + end do + end subroutine lu_fac10 + subroutine lu_fac11( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,500) = 1._r8 / lu(k,500) + lu(k,501) = lu(k,501) * lu(k,500) + lu(k,502) = lu(k,502) * lu(k,500) + lu(k,503) = lu(k,503) * lu(k,500) + lu(k,504) = lu(k,504) * lu(k,500) + lu(k,505) = lu(k,505) * lu(k,500) + lu(k,506) = lu(k,506) * lu(k,500) + lu(k,1749) = lu(k,1749) - lu(k,501) * lu(k,1702) + lu(k,1768) = lu(k,1768) - lu(k,502) * lu(k,1702) + lu(k,1782) = lu(k,1782) - lu(k,503) * lu(k,1702) + lu(k,1784) = lu(k,1784) - lu(k,504) * lu(k,1702) + lu(k,1786) = lu(k,1786) - lu(k,505) * lu(k,1702) + lu(k,1795) = lu(k,1795) - lu(k,506) * lu(k,1702) + lu(k,1887) = lu(k,1887) - lu(k,501) * lu(k,1858) + lu(k,1902) = lu(k,1902) - lu(k,502) * lu(k,1858) + lu(k,1915) = lu(k,1915) - lu(k,503) * lu(k,1858) + lu(k,1917) = lu(k,1917) - lu(k,504) * lu(k,1858) + lu(k,1919) = lu(k,1919) - lu(k,505) * lu(k,1858) + lu(k,1928) = lu(k,1928) - lu(k,506) * lu(k,1858) + lu(k,2304) = lu(k,2304) - lu(k,501) * lu(k,2279) + lu(k,2321) = lu(k,2321) - lu(k,502) * lu(k,2279) + lu(k,2333) = lu(k,2333) - lu(k,503) * lu(k,2279) + lu(k,2335) = lu(k,2335) - lu(k,504) * lu(k,2279) + lu(k,2337) = lu(k,2337) - lu(k,505) * lu(k,2279) + lu(k,2346) = lu(k,2346) - lu(k,506) * lu(k,2279) + lu(k,507) = 1._r8 / lu(k,507) + lu(k,508) = lu(k,508) * lu(k,507) + lu(k,509) = lu(k,509) * lu(k,507) + lu(k,510) = lu(k,510) * lu(k,507) + lu(k,511) = lu(k,511) * lu(k,507) + lu(k,628) = - lu(k,508) * lu(k,626) + lu(k,629) = - lu(k,509) * lu(k,626) + lu(k,633) = - lu(k,510) * lu(k,626) + lu(k,635) = lu(k,635) - lu(k,511) * lu(k,626) + lu(k,662) = - lu(k,508) * lu(k,660) + lu(k,663) = - lu(k,509) * lu(k,660) + lu(k,666) = - lu(k,510) * lu(k,660) + lu(k,669) = lu(k,669) - lu(k,511) * lu(k,660) + lu(k,958) = - lu(k,508) * lu(k,955) + lu(k,959) = - lu(k,509) * lu(k,955) + lu(k,963) = - lu(k,510) * lu(k,955) + lu(k,967) = - lu(k,511) * lu(k,955) + lu(k,1722) = lu(k,1722) - lu(k,508) * lu(k,1703) + lu(k,1740) = lu(k,1740) - lu(k,509) * lu(k,1703) + lu(k,1775) = lu(k,1775) - lu(k,510) * lu(k,1703) + lu(k,1784) = lu(k,1784) - lu(k,511) * lu(k,1703) + lu(k,2289) = lu(k,2289) - lu(k,508) * lu(k,2280) + lu(k,2299) = lu(k,2299) - lu(k,509) * lu(k,2280) + lu(k,2327) = lu(k,2327) - lu(k,510) * lu(k,2280) + lu(k,2335) = lu(k,2335) - lu(k,511) * lu(k,2280) + lu(k,513) = 1._r8 / lu(k,513) + lu(k,514) = lu(k,514) * lu(k,513) + lu(k,515) = lu(k,515) * lu(k,513) + lu(k,516) = lu(k,516) * lu(k,513) + lu(k,517) = lu(k,517) * lu(k,513) + lu(k,518) = lu(k,518) * lu(k,513) + lu(k,1553) = lu(k,1553) - lu(k,514) * lu(k,1549) + lu(k,1574) = lu(k,1574) - lu(k,515) * lu(k,1549) + lu(k,1576) = lu(k,1576) - lu(k,516) * lu(k,1549) + lu(k,1578) = lu(k,1578) - lu(k,517) * lu(k,1549) + lu(k,1587) = lu(k,1587) - lu(k,518) * lu(k,1549) + lu(k,1717) = lu(k,1717) - lu(k,514) * lu(k,1704) + lu(k,1782) = lu(k,1782) - lu(k,515) * lu(k,1704) + lu(k,1784) = lu(k,1784) - lu(k,516) * lu(k,1704) + lu(k,1786) = lu(k,1786) - lu(k,517) * lu(k,1704) + lu(k,1795) = lu(k,1795) - lu(k,518) * lu(k,1704) + lu(k,1863) = lu(k,1863) - lu(k,514) * lu(k,1859) + lu(k,1915) = lu(k,1915) - lu(k,515) * lu(k,1859) + lu(k,1917) = lu(k,1917) - lu(k,516) * lu(k,1859) + lu(k,1919) = lu(k,1919) - lu(k,517) * lu(k,1859) + lu(k,1928) = lu(k,1928) - lu(k,518) * lu(k,1859) + lu(k,2287) = lu(k,2287) - lu(k,514) * lu(k,2281) + lu(k,2333) = lu(k,2333) - lu(k,515) * lu(k,2281) + lu(k,2335) = lu(k,2335) - lu(k,516) * lu(k,2281) + lu(k,2337) = lu(k,2337) - lu(k,517) * lu(k,2281) + lu(k,2346) = lu(k,2346) - lu(k,518) * lu(k,2281) + lu(k,519) = 1._r8 / lu(k,519) + lu(k,520) = lu(k,520) * lu(k,519) + lu(k,521) = lu(k,521) * lu(k,519) + lu(k,522) = lu(k,522) * lu(k,519) + lu(k,523) = lu(k,523) * lu(k,519) + lu(k,524) = lu(k,524) * lu(k,519) + lu(k,525) = lu(k,525) * lu(k,519) + lu(k,526) = lu(k,526) * lu(k,519) + lu(k,1400) = lu(k,1400) - lu(k,520) * lu(k,1395) + lu(k,1413) = lu(k,1413) - lu(k,521) * lu(k,1395) + lu(k,1417) = lu(k,1417) - lu(k,522) * lu(k,1395) + lu(k,1418) = lu(k,1418) - lu(k,523) * lu(k,1395) + lu(k,1419) = lu(k,1419) - lu(k,524) * lu(k,1395) + lu(k,1423) = - lu(k,525) * lu(k,1395) + lu(k,1424) = lu(k,1424) - lu(k,526) * lu(k,1395) + lu(k,1562) = - lu(k,520) * lu(k,1550) + lu(k,1567) = lu(k,1567) - lu(k,521) * lu(k,1550) + lu(k,1573) = - lu(k,522) * lu(k,1550) + lu(k,1574) = lu(k,1574) - lu(k,523) * lu(k,1550) + lu(k,1576) = lu(k,1576) - lu(k,524) * lu(k,1550) + lu(k,1583) = lu(k,1583) - lu(k,525) * lu(k,1550) + lu(k,1584) = - lu(k,526) * lu(k,1550) + lu(k,1754) = lu(k,1754) - lu(k,520) * lu(k,1705) + lu(k,1775) = lu(k,1775) - lu(k,521) * lu(k,1705) + lu(k,1781) = lu(k,1781) - lu(k,522) * lu(k,1705) + lu(k,1782) = lu(k,1782) - lu(k,523) * lu(k,1705) + lu(k,1784) = lu(k,1784) - lu(k,524) * lu(k,1705) + lu(k,1791) = lu(k,1791) - lu(k,525) * lu(k,1705) + lu(k,1792) = lu(k,1792) - lu(k,526) * lu(k,1705) + lu(k,527) = 1._r8 / lu(k,527) + lu(k,528) = lu(k,528) * lu(k,527) + lu(k,529) = lu(k,529) * lu(k,527) + lu(k,530) = lu(k,530) * lu(k,527) + lu(k,531) = lu(k,531) * lu(k,527) + lu(k,532) = lu(k,532) * lu(k,527) + lu(k,533) = lu(k,533) * lu(k,527) + lu(k,534) = lu(k,534) * lu(k,527) + lu(k,789) = lu(k,789) - lu(k,528) * lu(k,788) + lu(k,790) = lu(k,790) - lu(k,529) * lu(k,788) + lu(k,791) = - lu(k,530) * lu(k,788) + lu(k,793) = lu(k,793) - lu(k,531) * lu(k,788) + lu(k,795) = - lu(k,532) * lu(k,788) + lu(k,796) = lu(k,796) - lu(k,533) * lu(k,788) + lu(k,798) = - lu(k,534) * lu(k,788) + lu(k,1733) = lu(k,1733) - lu(k,528) * lu(k,1706) + lu(k,1755) = lu(k,1755) - lu(k,529) * lu(k,1706) + lu(k,1758) = lu(k,1758) - lu(k,530) * lu(k,1706) + lu(k,1781) = lu(k,1781) - lu(k,531) * lu(k,1706) + lu(k,1784) = lu(k,1784) - lu(k,532) * lu(k,1706) + lu(k,1786) = lu(k,1786) - lu(k,533) * lu(k,1706) + lu(k,1796) = lu(k,1796) - lu(k,534) * lu(k,1706) + lu(k,1877) = lu(k,1877) - lu(k,528) * lu(k,1860) + lu(k,1890) = lu(k,1890) - lu(k,529) * lu(k,1860) + lu(k,1892) = - lu(k,530) * lu(k,1860) + lu(k,1914) = lu(k,1914) - lu(k,531) * lu(k,1860) + lu(k,1917) = lu(k,1917) - lu(k,532) * lu(k,1860) + lu(k,1919) = lu(k,1919) - lu(k,533) * lu(k,1860) + lu(k,1929) = lu(k,1929) - lu(k,534) * lu(k,1860) + end do + end subroutine lu_fac11 + subroutine lu_fac12( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,535) = 1._r8 / lu(k,535) + lu(k,536) = lu(k,536) * lu(k,535) + lu(k,537) = lu(k,537) * lu(k,535) + lu(k,538) = lu(k,538) * lu(k,535) + lu(k,539) = lu(k,539) * lu(k,535) + lu(k,540) = lu(k,540) * lu(k,535) + lu(k,541) = lu(k,541) * lu(k,535) + lu(k,542) = lu(k,542) * lu(k,535) + lu(k,1732) = lu(k,1732) - lu(k,536) * lu(k,1707) + lu(k,1741) = lu(k,1741) - lu(k,537) * lu(k,1707) + lu(k,1764) = lu(k,1764) - lu(k,538) * lu(k,1707) + lu(k,1781) = lu(k,1781) - lu(k,539) * lu(k,1707) + lu(k,1784) = lu(k,1784) - lu(k,540) * lu(k,1707) + lu(k,1786) = lu(k,1786) - lu(k,541) * lu(k,1707) + lu(k,1787) = lu(k,1787) - lu(k,542) * lu(k,1707) + lu(k,1944) = - lu(k,536) * lu(k,1940) + lu(k,1946) = lu(k,1946) - lu(k,537) * lu(k,1940) + lu(k,1964) = lu(k,1964) - lu(k,538) * lu(k,1940) + lu(k,1979) = lu(k,1979) - lu(k,539) * lu(k,1940) + lu(k,1982) = lu(k,1982) - lu(k,540) * lu(k,1940) + lu(k,1984) = lu(k,1984) - lu(k,541) * lu(k,1940) + lu(k,1985) = lu(k,1985) - lu(k,542) * lu(k,1940) + lu(k,2196) = - lu(k,536) * lu(k,2193) + lu(k,2199) = lu(k,2199) - lu(k,537) * lu(k,2193) + lu(k,2205) = lu(k,2205) - lu(k,538) * lu(k,2193) + lu(k,2212) = lu(k,2212) - lu(k,539) * lu(k,2193) + lu(k,2215) = lu(k,2215) - lu(k,540) * lu(k,2193) + lu(k,2217) = lu(k,2217) - lu(k,541) * lu(k,2193) + lu(k,2218) = lu(k,2218) - lu(k,542) * lu(k,2193) + lu(k,543) = 1._r8 / lu(k,543) + lu(k,544) = lu(k,544) * lu(k,543) + lu(k,545) = lu(k,545) * lu(k,543) + lu(k,546) = lu(k,546) * lu(k,543) + lu(k,547) = lu(k,547) * lu(k,543) + lu(k,548) = lu(k,548) * lu(k,543) + lu(k,549) = lu(k,549) * lu(k,543) + lu(k,550) = lu(k,550) * lu(k,543) + lu(k,1557) = - lu(k,544) * lu(k,1551) + lu(k,1569) = - lu(k,545) * lu(k,1551) + lu(k,1571) = lu(k,1571) - lu(k,546) * lu(k,1551) + lu(k,1574) = lu(k,1574) - lu(k,547) * lu(k,1551) + lu(k,1577) = lu(k,1577) - lu(k,548) * lu(k,1551) + lu(k,1580) = lu(k,1580) - lu(k,549) * lu(k,1551) + lu(k,1583) = lu(k,1583) - lu(k,550) * lu(k,1551) + lu(k,1800) = lu(k,1800) - lu(k,544) * lu(k,1799) + lu(k,1803) = lu(k,1803) - lu(k,545) * lu(k,1799) + lu(k,1804) = - lu(k,546) * lu(k,1799) + lu(k,1807) = lu(k,1807) - lu(k,547) * lu(k,1799) + lu(k,1810) = lu(k,1810) - lu(k,548) * lu(k,1799) + lu(k,1813) = lu(k,1813) - lu(k,549) * lu(k,1799) + lu(k,1816) = - lu(k,550) * lu(k,1799) + lu(k,2001) = lu(k,2001) - lu(k,544) * lu(k,1998) + lu(k,2009) = lu(k,2009) - lu(k,545) * lu(k,1998) + lu(k,2011) = - lu(k,546) * lu(k,1998) + lu(k,2014) = lu(k,2014) - lu(k,547) * lu(k,1998) + lu(k,2017) = lu(k,2017) - lu(k,548) * lu(k,1998) + lu(k,2020) = lu(k,2020) - lu(k,549) * lu(k,1998) + lu(k,2023) = lu(k,2023) - lu(k,550) * lu(k,1998) + lu(k,551) = 1._r8 / lu(k,551) + lu(k,552) = lu(k,552) * lu(k,551) + lu(k,553) = lu(k,553) * lu(k,551) + lu(k,554) = lu(k,554) * lu(k,551) + lu(k,555) = lu(k,555) * lu(k,551) + lu(k,556) = lu(k,556) * lu(k,551) + lu(k,557) = lu(k,557) * lu(k,551) + lu(k,558) = lu(k,558) * lu(k,551) + lu(k,1748) = lu(k,1748) - lu(k,552) * lu(k,1708) + lu(k,1755) = lu(k,1755) - lu(k,553) * lu(k,1708) + lu(k,1757) = lu(k,1757) - lu(k,554) * lu(k,1708) + lu(k,1781) = lu(k,1781) - lu(k,555) * lu(k,1708) + lu(k,1782) = lu(k,1782) - lu(k,556) * lu(k,1708) + lu(k,1786) = lu(k,1786) - lu(k,557) * lu(k,1708) + lu(k,1795) = lu(k,1795) - lu(k,558) * lu(k,1708) + lu(k,2087) = lu(k,2087) - lu(k,552) * lu(k,2079) + lu(k,2093) = lu(k,2093) - lu(k,553) * lu(k,2079) + lu(k,2095) = - lu(k,554) * lu(k,2079) + lu(k,2118) = lu(k,2118) - lu(k,555) * lu(k,2079) + lu(k,2119) = lu(k,2119) - lu(k,556) * lu(k,2079) + lu(k,2123) = lu(k,2123) - lu(k,557) * lu(k,2079) + lu(k,2132) = lu(k,2132) - lu(k,558) * lu(k,2079) + lu(k,2303) = lu(k,2303) - lu(k,552) * lu(k,2282) + lu(k,2308) = lu(k,2308) - lu(k,553) * lu(k,2282) + lu(k,2310) = lu(k,2310) - lu(k,554) * lu(k,2282) + lu(k,2332) = lu(k,2332) - lu(k,555) * lu(k,2282) + lu(k,2333) = lu(k,2333) - lu(k,556) * lu(k,2282) + lu(k,2337) = lu(k,2337) - lu(k,557) * lu(k,2282) + lu(k,2346) = lu(k,2346) - lu(k,558) * lu(k,2282) + lu(k,559) = 1._r8 / lu(k,559) + lu(k,560) = lu(k,560) * lu(k,559) + lu(k,561) = lu(k,561) * lu(k,559) + lu(k,562) = lu(k,562) * lu(k,559) + lu(k,563) = lu(k,563) * lu(k,559) + lu(k,564) = lu(k,564) * lu(k,559) + lu(k,565) = lu(k,565) * lu(k,559) + lu(k,566) = lu(k,566) * lu(k,559) + lu(k,1298) = - lu(k,560) * lu(k,1294) + lu(k,1302) = - lu(k,561) * lu(k,1294) + lu(k,1303) = lu(k,1303) - lu(k,562) * lu(k,1294) + lu(k,1304) = lu(k,1304) - lu(k,563) * lu(k,1294) + lu(k,1315) = - lu(k,564) * lu(k,1294) + lu(k,1319) = lu(k,1319) - lu(k,565) * lu(k,1294) + lu(k,1320) = lu(k,1320) - lu(k,566) * lu(k,1294) + lu(k,1739) = lu(k,1739) - lu(k,560) * lu(k,1709) + lu(k,1757) = lu(k,1757) - lu(k,561) * lu(k,1709) + lu(k,1758) = lu(k,1758) - lu(k,562) * lu(k,1709) + lu(k,1760) = lu(k,1760) - lu(k,563) * lu(k,1709) + lu(k,1779) = lu(k,1779) - lu(k,564) * lu(k,1709) + lu(k,1784) = lu(k,1784) - lu(k,565) * lu(k,1709) + lu(k,1786) = lu(k,1786) - lu(k,566) * lu(k,1709) + lu(k,2298) = - lu(k,560) * lu(k,2283) + lu(k,2310) = lu(k,2310) - lu(k,561) * lu(k,2283) + lu(k,2311) = lu(k,2311) - lu(k,562) * lu(k,2283) + lu(k,2313) = lu(k,2313) - lu(k,563) * lu(k,2283) + lu(k,2330) = lu(k,2330) - lu(k,564) * lu(k,2283) + lu(k,2335) = lu(k,2335) - lu(k,565) * lu(k,2283) + lu(k,2337) = lu(k,2337) - lu(k,566) * lu(k,2283) + lu(k,567) = 1._r8 / lu(k,567) + lu(k,568) = lu(k,568) * lu(k,567) + lu(k,569) = lu(k,569) * lu(k,567) + lu(k,570) = lu(k,570) * lu(k,567) + lu(k,571) = lu(k,571) * lu(k,567) + lu(k,572) = lu(k,572) * lu(k,567) + lu(k,573) = lu(k,573) * lu(k,567) + lu(k,574) = lu(k,574) * lu(k,567) + lu(k,575) = lu(k,575) * lu(k,567) + lu(k,1376) = lu(k,1376) - lu(k,568) * lu(k,1373) + lu(k,1377) = - lu(k,569) * lu(k,1373) + lu(k,1380) = lu(k,1380) - lu(k,570) * lu(k,1373) + lu(k,1384) = lu(k,1384) - lu(k,571) * lu(k,1373) + lu(k,1385) = lu(k,1385) - lu(k,572) * lu(k,1373) + lu(k,1386) = lu(k,1386) - lu(k,573) * lu(k,1373) + lu(k,1387) = lu(k,1387) - lu(k,574) * lu(k,1373) + lu(k,1390) = lu(k,1390) - lu(k,575) * lu(k,1373) + lu(k,1562) = lu(k,1562) - lu(k,568) * lu(k,1552) + lu(k,1563) = - lu(k,569) * lu(k,1552) + lu(k,1566) = lu(k,1566) - lu(k,570) * lu(k,1552) + lu(k,1573) = lu(k,1573) - lu(k,571) * lu(k,1552) + lu(k,1574) = lu(k,1574) - lu(k,572) * lu(k,1552) + lu(k,1576) = lu(k,1576) - lu(k,573) * lu(k,1552) + lu(k,1578) = lu(k,1578) - lu(k,574) * lu(k,1552) + lu(k,1583) = lu(k,1583) - lu(k,575) * lu(k,1552) + lu(k,1754) = lu(k,1754) - lu(k,568) * lu(k,1710) + lu(k,1758) = lu(k,1758) - lu(k,569) * lu(k,1710) + lu(k,1774) = lu(k,1774) - lu(k,570) * lu(k,1710) + lu(k,1781) = lu(k,1781) - lu(k,571) * lu(k,1710) + lu(k,1782) = lu(k,1782) - lu(k,572) * lu(k,1710) + lu(k,1784) = lu(k,1784) - lu(k,573) * lu(k,1710) + lu(k,1786) = lu(k,1786) - lu(k,574) * lu(k,1710) + lu(k,1791) = lu(k,1791) - lu(k,575) * lu(k,1710) + end do + end subroutine lu_fac12 + subroutine lu_fac13( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,576) = 1._r8 / lu(k,576) + lu(k,577) = lu(k,577) * lu(k,576) + lu(k,578) = lu(k,578) * lu(k,576) + lu(k,579) = lu(k,579) * lu(k,576) + lu(k,580) = lu(k,580) * lu(k,576) + lu(k,581) = lu(k,581) * lu(k,576) + lu(k,582) = lu(k,582) * lu(k,576) + lu(k,583) = lu(k,583) * lu(k,576) + lu(k,584) = lu(k,584) * lu(k,576) + lu(k,1267) = - lu(k,577) * lu(k,1263) + lu(k,1268) = - lu(k,578) * lu(k,1263) + lu(k,1269) = - lu(k,579) * lu(k,1263) + lu(k,1280) = - lu(k,580) * lu(k,1263) + lu(k,1282) = lu(k,1282) - lu(k,581) * lu(k,1263) + lu(k,1283) = lu(k,1283) - lu(k,582) * lu(k,1263) + lu(k,1284) = - lu(k,583) * lu(k,1263) + lu(k,1285) = lu(k,1285) - lu(k,584) * lu(k,1263) + lu(k,1757) = lu(k,1757) - lu(k,577) * lu(k,1711) + lu(k,1758) = lu(k,1758) - lu(k,578) * lu(k,1711) + lu(k,1760) = lu(k,1760) - lu(k,579) * lu(k,1711) + lu(k,1779) = lu(k,1779) - lu(k,580) * lu(k,1711) + lu(k,1781) = lu(k,1781) - lu(k,581) * lu(k,1711) + lu(k,1782) = lu(k,1782) - lu(k,582) * lu(k,1711) + lu(k,1784) = lu(k,1784) - lu(k,583) * lu(k,1711) + lu(k,1786) = lu(k,1786) - lu(k,584) * lu(k,1711) + lu(k,2310) = lu(k,2310) - lu(k,577) * lu(k,2284) + lu(k,2311) = lu(k,2311) - lu(k,578) * lu(k,2284) + lu(k,2313) = lu(k,2313) - lu(k,579) * lu(k,2284) + lu(k,2330) = lu(k,2330) - lu(k,580) * lu(k,2284) + lu(k,2332) = lu(k,2332) - lu(k,581) * lu(k,2284) + lu(k,2333) = lu(k,2333) - lu(k,582) * lu(k,2284) + lu(k,2335) = lu(k,2335) - lu(k,583) * lu(k,2284) + lu(k,2337) = lu(k,2337) - lu(k,584) * lu(k,2284) + lu(k,585) = 1._r8 / lu(k,585) + lu(k,586) = lu(k,586) * lu(k,585) + lu(k,587) = lu(k,587) * lu(k,585) + lu(k,588) = lu(k,588) * lu(k,585) + lu(k,654) = - lu(k,586) * lu(k,649) + lu(k,656) = - lu(k,587) * lu(k,649) + lu(k,659) = lu(k,659) - lu(k,588) * lu(k,649) + lu(k,709) = - lu(k,586) * lu(k,704) + lu(k,711) = lu(k,711) - lu(k,587) * lu(k,704) + lu(k,715) = lu(k,715) - lu(k,588) * lu(k,704) + lu(k,736) = - lu(k,586) * lu(k,731) + lu(k,738) = - lu(k,587) * lu(k,731) + lu(k,742) = lu(k,742) - lu(k,588) * lu(k,731) + lu(k,752) = - lu(k,586) * lu(k,747) + lu(k,754) = lu(k,754) - lu(k,587) * lu(k,747) + lu(k,759) = lu(k,759) - lu(k,588) * lu(k,747) + lu(k,1005) = - lu(k,586) * lu(k,1003) + lu(k,1009) = - lu(k,587) * lu(k,1003) + lu(k,1016) = lu(k,1016) - lu(k,588) * lu(k,1003) + lu(k,1299) = - lu(k,586) * lu(k,1295) + lu(k,1306) = - lu(k,587) * lu(k,1295) + lu(k,1320) = lu(k,1320) - lu(k,588) * lu(k,1295) + lu(k,1742) = - lu(k,586) * lu(k,1712) + lu(k,1764) = lu(k,1764) - lu(k,587) * lu(k,1712) + lu(k,1786) = lu(k,1786) - lu(k,588) * lu(k,1712) + lu(k,2301) = lu(k,2301) - lu(k,586) * lu(k,2285) + lu(k,2317) = lu(k,2317) - lu(k,587) * lu(k,2285) + lu(k,2337) = lu(k,2337) - lu(k,588) * lu(k,2285) + lu(k,589) = 1._r8 / lu(k,589) + lu(k,590) = lu(k,590) * lu(k,589) + lu(k,591) = lu(k,591) * lu(k,589) + lu(k,592) = lu(k,592) * lu(k,589) + lu(k,593) = lu(k,593) * lu(k,589) + lu(k,594) = lu(k,594) * lu(k,589) + lu(k,595) = lu(k,595) * lu(k,589) + lu(k,596) = lu(k,596) * lu(k,589) + lu(k,597) = lu(k,597) * lu(k,589) + lu(k,1612) = lu(k,1612) - lu(k,590) * lu(k,1608) + lu(k,1618) = lu(k,1618) - lu(k,591) * lu(k,1608) + lu(k,1619) = lu(k,1619) - lu(k,592) * lu(k,1608) + lu(k,1621) = lu(k,1621) - lu(k,593) * lu(k,1608) + lu(k,1625) = lu(k,1625) - lu(k,594) * lu(k,1608) + lu(k,1627) = lu(k,1627) - lu(k,595) * lu(k,1608) + lu(k,1628) = lu(k,1628) - lu(k,596) * lu(k,1608) + lu(k,1631) = lu(k,1631) - lu(k,597) * lu(k,1608) + lu(k,1777) = lu(k,1777) - lu(k,590) * lu(k,1713) + lu(k,1783) = lu(k,1783) - lu(k,591) * lu(k,1713) + lu(k,1784) = lu(k,1784) - lu(k,592) * lu(k,1713) + lu(k,1786) = lu(k,1786) - lu(k,593) * lu(k,1713) + lu(k,1790) = lu(k,1790) - lu(k,594) * lu(k,1713) + lu(k,1792) = lu(k,1792) - lu(k,595) * lu(k,1713) + lu(k,1793) = lu(k,1793) - lu(k,596) * lu(k,1713) + lu(k,1796) = lu(k,1796) - lu(k,597) * lu(k,1713) + lu(k,2208) = lu(k,2208) - lu(k,590) * lu(k,2194) + lu(k,2214) = lu(k,2214) - lu(k,591) * lu(k,2194) + lu(k,2215) = lu(k,2215) - lu(k,592) * lu(k,2194) + lu(k,2217) = lu(k,2217) - lu(k,593) * lu(k,2194) + lu(k,2221) = lu(k,2221) - lu(k,594) * lu(k,2194) + lu(k,2223) = lu(k,2223) - lu(k,595) * lu(k,2194) + lu(k,2224) = lu(k,2224) - lu(k,596) * lu(k,2194) + lu(k,2227) = lu(k,2227) - lu(k,597) * lu(k,2194) + lu(k,598) = 1._r8 / lu(k,598) + lu(k,599) = lu(k,599) * lu(k,598) + lu(k,600) = lu(k,600) * lu(k,598) + lu(k,601) = lu(k,601) * lu(k,598) + lu(k,602) = lu(k,602) * lu(k,598) + lu(k,603) = lu(k,603) * lu(k,598) + lu(k,604) = lu(k,604) * lu(k,598) + lu(k,1784) = lu(k,1784) - lu(k,599) * lu(k,1714) + lu(k,1786) = lu(k,1786) - lu(k,600) * lu(k,1714) + lu(k,1788) = lu(k,1788) - lu(k,601) * lu(k,1714) + lu(k,1790) = lu(k,1790) - lu(k,602) * lu(k,1714) + lu(k,1793) = lu(k,1793) - lu(k,603) * lu(k,1714) + lu(k,1796) = lu(k,1796) - lu(k,604) * lu(k,1714) + lu(k,1917) = lu(k,1917) - lu(k,599) * lu(k,1861) + lu(k,1919) = lu(k,1919) - lu(k,600) * lu(k,1861) + lu(k,1921) = lu(k,1921) - lu(k,601) * lu(k,1861) + lu(k,1923) = lu(k,1923) - lu(k,602) * lu(k,1861) + lu(k,1926) = lu(k,1926) - lu(k,603) * lu(k,1861) + lu(k,1929) = lu(k,1929) - lu(k,604) * lu(k,1861) + lu(k,2016) = lu(k,2016) - lu(k,599) * lu(k,1999) + lu(k,2018) = lu(k,2018) - lu(k,600) * lu(k,1999) + lu(k,2020) = lu(k,2020) - lu(k,601) * lu(k,1999) + lu(k,2022) = lu(k,2022) - lu(k,602) * lu(k,1999) + lu(k,2025) = lu(k,2025) - lu(k,603) * lu(k,1999) + lu(k,2028) = - lu(k,604) * lu(k,1999) + lu(k,2215) = lu(k,2215) - lu(k,599) * lu(k,2195) + lu(k,2217) = lu(k,2217) - lu(k,600) * lu(k,2195) + lu(k,2219) = - lu(k,601) * lu(k,2195) + lu(k,2221) = lu(k,2221) - lu(k,602) * lu(k,2195) + lu(k,2224) = lu(k,2224) - lu(k,603) * lu(k,2195) + lu(k,2227) = lu(k,2227) - lu(k,604) * lu(k,2195) + lu(k,605) = 1._r8 / lu(k,605) + lu(k,606) = lu(k,606) * lu(k,605) + lu(k,607) = lu(k,607) * lu(k,605) + lu(k,608) = lu(k,608) * lu(k,605) + lu(k,609) = lu(k,609) * lu(k,605) + lu(k,610) = lu(k,610) * lu(k,605) + lu(k,611) = lu(k,611) * lu(k,605) + lu(k,1376) = lu(k,1376) - lu(k,606) * lu(k,1374) + lu(k,1381) = lu(k,1381) - lu(k,607) * lu(k,1374) + lu(k,1384) = lu(k,1384) - lu(k,608) * lu(k,1374) + lu(k,1386) = lu(k,1386) - lu(k,609) * lu(k,1374) + lu(k,1391) = lu(k,1391) - lu(k,610) * lu(k,1374) + lu(k,1393) = - lu(k,611) * lu(k,1374) + lu(k,1400) = lu(k,1400) - lu(k,606) * lu(k,1396) + lu(k,1413) = lu(k,1413) - lu(k,607) * lu(k,1396) + lu(k,1417) = lu(k,1417) - lu(k,608) * lu(k,1396) + lu(k,1419) = lu(k,1419) - lu(k,609) * lu(k,1396) + lu(k,1424) = lu(k,1424) - lu(k,610) * lu(k,1396) + lu(k,1426) = - lu(k,611) * lu(k,1396) + lu(k,1754) = lu(k,1754) - lu(k,606) * lu(k,1715) + lu(k,1775) = lu(k,1775) - lu(k,607) * lu(k,1715) + lu(k,1781) = lu(k,1781) - lu(k,608) * lu(k,1715) + lu(k,1784) = lu(k,1784) - lu(k,609) * lu(k,1715) + lu(k,1792) = lu(k,1792) - lu(k,610) * lu(k,1715) + lu(k,1796) = lu(k,1796) - lu(k,611) * lu(k,1715) + lu(k,1889) = lu(k,1889) - lu(k,606) * lu(k,1862) + lu(k,1909) = lu(k,1909) - lu(k,607) * lu(k,1862) + lu(k,1914) = lu(k,1914) - lu(k,608) * lu(k,1862) + lu(k,1917) = lu(k,1917) - lu(k,609) * lu(k,1862) + lu(k,1925) = lu(k,1925) - lu(k,610) * lu(k,1862) + lu(k,1929) = lu(k,1929) - lu(k,611) * lu(k,1862) + end do + end subroutine lu_fac13 + subroutine lu_fac14( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,612) = 1._r8 / lu(k,612) + lu(k,613) = lu(k,613) * lu(k,612) + lu(k,614) = lu(k,614) * lu(k,612) + lu(k,615) = lu(k,615) * lu(k,612) + lu(k,616) = lu(k,616) * lu(k,612) + lu(k,617) = lu(k,617) * lu(k,612) + lu(k,1059) = lu(k,1059) - lu(k,613) * lu(k,1057) + lu(k,1064) = lu(k,1064) - lu(k,614) * lu(k,1057) + lu(k,1066) = lu(k,1066) - lu(k,615) * lu(k,1057) + lu(k,1067) = lu(k,1067) - lu(k,616) * lu(k,1057) + lu(k,1068) = lu(k,1068) - lu(k,617) * lu(k,1057) + lu(k,1121) = lu(k,1121) - lu(k,613) * lu(k,1118) + lu(k,1129) = - lu(k,614) * lu(k,1118) + lu(k,1132) = lu(k,1132) - lu(k,615) * lu(k,1118) + lu(k,1133) = lu(k,1133) - lu(k,616) * lu(k,1118) + lu(k,1134) = lu(k,1134) - lu(k,617) * lu(k,1118) + lu(k,1751) = lu(k,1751) - lu(k,613) * lu(k,1716) + lu(k,1779) = lu(k,1779) - lu(k,614) * lu(k,1716) + lu(k,1782) = lu(k,1782) - lu(k,615) * lu(k,1716) + lu(k,1784) = lu(k,1784) - lu(k,616) * lu(k,1716) + lu(k,1786) = lu(k,1786) - lu(k,617) * lu(k,1716) + lu(k,2146) = lu(k,2146) - lu(k,613) * lu(k,2138) + lu(k,2169) = lu(k,2169) - lu(k,614) * lu(k,2138) + lu(k,2172) = lu(k,2172) - lu(k,615) * lu(k,2138) + lu(k,2174) = lu(k,2174) - lu(k,616) * lu(k,2138) + lu(k,2176) = lu(k,2176) - lu(k,617) * lu(k,2138) + lu(k,2305) = lu(k,2305) - lu(k,613) * lu(k,2286) + lu(k,2330) = lu(k,2330) - lu(k,614) * lu(k,2286) + lu(k,2333) = lu(k,2333) - lu(k,615) * lu(k,2286) + lu(k,2335) = lu(k,2335) - lu(k,616) * lu(k,2286) + lu(k,2337) = lu(k,2337) - lu(k,617) * lu(k,2286) + lu(k,620) = 1._r8 / lu(k,620) + lu(k,621) = lu(k,621) * lu(k,620) + lu(k,622) = lu(k,622) * lu(k,620) + lu(k,623) = lu(k,623) * lu(k,620) + lu(k,624) = lu(k,624) * lu(k,620) + lu(k,625) = lu(k,625) * lu(k,620) + lu(k,1574) = lu(k,1574) - lu(k,621) * lu(k,1553) + lu(k,1576) = lu(k,1576) - lu(k,622) * lu(k,1553) + lu(k,1578) = lu(k,1578) - lu(k,623) * lu(k,1553) + lu(k,1579) = lu(k,1579) - lu(k,624) * lu(k,1553) + lu(k,1587) = lu(k,1587) - lu(k,625) * lu(k,1553) + lu(k,1782) = lu(k,1782) - lu(k,621) * lu(k,1717) + lu(k,1784) = lu(k,1784) - lu(k,622) * lu(k,1717) + lu(k,1786) = lu(k,1786) - lu(k,623) * lu(k,1717) + lu(k,1787) = lu(k,1787) - lu(k,624) * lu(k,1717) + lu(k,1795) = lu(k,1795) - lu(k,625) * lu(k,1717) + lu(k,1915) = lu(k,1915) - lu(k,621) * lu(k,1863) + lu(k,1917) = lu(k,1917) - lu(k,622) * lu(k,1863) + lu(k,1919) = lu(k,1919) - lu(k,623) * lu(k,1863) + lu(k,1920) = lu(k,1920) - lu(k,624) * lu(k,1863) + lu(k,1928) = lu(k,1928) - lu(k,625) * lu(k,1863) + lu(k,1980) = lu(k,1980) - lu(k,621) * lu(k,1941) + lu(k,1982) = lu(k,1982) - lu(k,622) * lu(k,1941) + lu(k,1984) = lu(k,1984) - lu(k,623) * lu(k,1941) + lu(k,1985) = lu(k,1985) - lu(k,624) * lu(k,1941) + lu(k,1993) = lu(k,1993) - lu(k,625) * lu(k,1941) + lu(k,2333) = lu(k,2333) - lu(k,621) * lu(k,2287) + lu(k,2335) = lu(k,2335) - lu(k,622) * lu(k,2287) + lu(k,2337) = lu(k,2337) - lu(k,623) * lu(k,2287) + lu(k,2338) = lu(k,2338) - lu(k,624) * lu(k,2287) + lu(k,2346) = lu(k,2346) - lu(k,625) * lu(k,2287) + lu(k,627) = 1._r8 / lu(k,627) + lu(k,628) = lu(k,628) * lu(k,627) + lu(k,629) = lu(k,629) * lu(k,627) + lu(k,630) = lu(k,630) * lu(k,627) + lu(k,631) = lu(k,631) * lu(k,627) + lu(k,632) = lu(k,632) * lu(k,627) + lu(k,633) = lu(k,633) * lu(k,627) + lu(k,634) = lu(k,634) * lu(k,627) + lu(k,635) = lu(k,635) * lu(k,627) + lu(k,636) = lu(k,636) * lu(k,627) + lu(k,958) = lu(k,958) - lu(k,628) * lu(k,956) + lu(k,959) = lu(k,959) - lu(k,629) * lu(k,956) + lu(k,960) = lu(k,960) - lu(k,630) * lu(k,956) + lu(k,961) = lu(k,961) - lu(k,631) * lu(k,956) + lu(k,962) = lu(k,962) - lu(k,632) * lu(k,956) + lu(k,963) = lu(k,963) - lu(k,633) * lu(k,956) + lu(k,965) = lu(k,965) - lu(k,634) * lu(k,956) + lu(k,967) = lu(k,967) - lu(k,635) * lu(k,956) + lu(k,968) = lu(k,968) - lu(k,636) * lu(k,956) + lu(k,1722) = lu(k,1722) - lu(k,628) * lu(k,1718) + lu(k,1740) = lu(k,1740) - lu(k,629) * lu(k,1718) + lu(k,1747) = lu(k,1747) - lu(k,630) * lu(k,1718) + lu(k,1748) = lu(k,1748) - lu(k,631) * lu(k,1718) + lu(k,1755) = lu(k,1755) - lu(k,632) * lu(k,1718) + lu(k,1775) = lu(k,1775) - lu(k,633) * lu(k,1718) + lu(k,1781) = lu(k,1781) - lu(k,634) * lu(k,1718) + lu(k,1784) = lu(k,1784) - lu(k,635) * lu(k,1718) + lu(k,1786) = lu(k,1786) - lu(k,636) * lu(k,1718) + lu(k,1867) = lu(k,1867) - lu(k,628) * lu(k,1864) + lu(k,1882) = lu(k,1882) - lu(k,629) * lu(k,1864) + lu(k,1885) = lu(k,1885) - lu(k,630) * lu(k,1864) + lu(k,1886) = lu(k,1886) - lu(k,631) * lu(k,1864) + lu(k,1890) = lu(k,1890) - lu(k,632) * lu(k,1864) + lu(k,1909) = lu(k,1909) - lu(k,633) * lu(k,1864) + lu(k,1914) = lu(k,1914) - lu(k,634) * lu(k,1864) + lu(k,1917) = lu(k,1917) - lu(k,635) * lu(k,1864) + lu(k,1919) = lu(k,1919) - lu(k,636) * lu(k,1864) + lu(k,637) = 1._r8 / lu(k,637) + lu(k,638) = lu(k,638) * lu(k,637) + lu(k,639) = lu(k,639) * lu(k,637) + lu(k,640) = lu(k,640) * lu(k,637) + lu(k,641) = lu(k,641) * lu(k,637) + lu(k,642) = lu(k,642) * lu(k,637) + lu(k,643) = lu(k,643) * lu(k,637) + lu(k,644) = lu(k,644) * lu(k,637) + lu(k,645) = lu(k,645) * lu(k,637) + lu(k,646) = lu(k,646) * lu(k,637) + lu(k,1143) = lu(k,1143) - lu(k,638) * lu(k,1141) + lu(k,1144) = lu(k,1144) - lu(k,639) * lu(k,1141) + lu(k,1145) = lu(k,1145) - lu(k,640) * lu(k,1141) + lu(k,1146) = lu(k,1146) - lu(k,641) * lu(k,1141) + lu(k,1147) = lu(k,1147) - lu(k,642) * lu(k,1141) + lu(k,1149) = lu(k,1149) - lu(k,643) * lu(k,1141) + lu(k,1153) = lu(k,1153) - lu(k,644) * lu(k,1141) + lu(k,1155) = - lu(k,645) * lu(k,1141) + lu(k,1156) = lu(k,1156) - lu(k,646) * lu(k,1141) + lu(k,1748) = lu(k,1748) - lu(k,638) * lu(k,1719) + lu(k,1754) = lu(k,1754) - lu(k,639) * lu(k,1719) + lu(k,1759) = lu(k,1759) - lu(k,640) * lu(k,1719) + lu(k,1760) = lu(k,1760) - lu(k,641) * lu(k,1719) + lu(k,1762) = lu(k,1762) - lu(k,642) * lu(k,1719) + lu(k,1764) = lu(k,1764) - lu(k,643) * lu(k,1719) + lu(k,1781) = lu(k,1781) - lu(k,644) * lu(k,1719) + lu(k,1784) = lu(k,1784) - lu(k,645) * lu(k,1719) + lu(k,1786) = lu(k,1786) - lu(k,646) * lu(k,1719) + lu(k,1886) = lu(k,1886) - lu(k,638) * lu(k,1865) + lu(k,1889) = lu(k,1889) - lu(k,639) * lu(k,1865) + lu(k,1893) = - lu(k,640) * lu(k,1865) + lu(k,1894) = lu(k,1894) - lu(k,641) * lu(k,1865) + lu(k,1896) = lu(k,1896) - lu(k,642) * lu(k,1865) + lu(k,1898) = lu(k,1898) - lu(k,643) * lu(k,1865) + lu(k,1914) = lu(k,1914) - lu(k,644) * lu(k,1865) + lu(k,1917) = lu(k,1917) - lu(k,645) * lu(k,1865) + lu(k,1919) = lu(k,1919) - lu(k,646) * lu(k,1865) + lu(k,650) = 1._r8 / lu(k,650) + lu(k,651) = lu(k,651) * lu(k,650) + lu(k,652) = lu(k,652) * lu(k,650) + lu(k,653) = lu(k,653) * lu(k,650) + lu(k,654) = lu(k,654) * lu(k,650) + lu(k,655) = lu(k,655) * lu(k,650) + lu(k,656) = lu(k,656) * lu(k,650) + lu(k,657) = lu(k,657) * lu(k,650) + lu(k,658) = lu(k,658) * lu(k,650) + lu(k,659) = lu(k,659) * lu(k,650) + lu(k,733) = lu(k,733) - lu(k,651) * lu(k,732) + lu(k,734) = lu(k,734) - lu(k,652) * lu(k,732) + lu(k,735) = lu(k,735) - lu(k,653) * lu(k,732) + lu(k,736) = lu(k,736) - lu(k,654) * lu(k,732) + lu(k,737) = lu(k,737) - lu(k,655) * lu(k,732) + lu(k,738) = lu(k,738) - lu(k,656) * lu(k,732) + lu(k,739) = lu(k,739) - lu(k,657) * lu(k,732) + lu(k,741) = - lu(k,658) * lu(k,732) + lu(k,742) = lu(k,742) - lu(k,659) * lu(k,732) + lu(k,1728) = lu(k,1728) - lu(k,651) * lu(k,1720) + lu(k,1729) = lu(k,1729) - lu(k,652) * lu(k,1720) + lu(k,1731) = - lu(k,653) * lu(k,1720) + lu(k,1742) = lu(k,1742) - lu(k,654) * lu(k,1720) + lu(k,1749) = lu(k,1749) - lu(k,655) * lu(k,1720) + lu(k,1764) = lu(k,1764) - lu(k,656) * lu(k,1720) + lu(k,1768) = lu(k,1768) - lu(k,657) * lu(k,1720) + lu(k,1784) = lu(k,1784) - lu(k,658) * lu(k,1720) + lu(k,1786) = lu(k,1786) - lu(k,659) * lu(k,1720) + lu(k,1871) = lu(k,1871) - lu(k,651) * lu(k,1866) + lu(k,1872) = lu(k,1872) - lu(k,652) * lu(k,1866) + lu(k,1874) = lu(k,1874) - lu(k,653) * lu(k,1866) + lu(k,1884) = lu(k,1884) - lu(k,654) * lu(k,1866) + lu(k,1887) = lu(k,1887) - lu(k,655) * lu(k,1866) + lu(k,1898) = lu(k,1898) - lu(k,656) * lu(k,1866) + lu(k,1902) = lu(k,1902) - lu(k,657) * lu(k,1866) + lu(k,1917) = lu(k,1917) - lu(k,658) * lu(k,1866) + lu(k,1919) = lu(k,1919) - lu(k,659) * lu(k,1866) + lu(k,661) = 1._r8 / lu(k,661) + lu(k,662) = lu(k,662) * lu(k,661) + lu(k,663) = lu(k,663) * lu(k,661) + lu(k,664) = lu(k,664) * lu(k,661) + lu(k,665) = lu(k,665) * lu(k,661) + lu(k,666) = lu(k,666) * lu(k,661) + lu(k,667) = lu(k,667) * lu(k,661) + lu(k,668) = lu(k,668) * lu(k,661) + lu(k,669) = lu(k,669) * lu(k,661) + lu(k,670) = lu(k,670) * lu(k,661) + lu(k,958) = lu(k,958) - lu(k,662) * lu(k,957) + lu(k,959) = lu(k,959) - lu(k,663) * lu(k,957) + lu(k,961) = lu(k,961) - lu(k,664) * lu(k,957) + lu(k,962) = lu(k,962) - lu(k,665) * lu(k,957) + lu(k,963) = lu(k,963) - lu(k,666) * lu(k,957) + lu(k,965) = lu(k,965) - lu(k,667) * lu(k,957) + lu(k,966) = lu(k,966) - lu(k,668) * lu(k,957) + lu(k,967) = lu(k,967) - lu(k,669) * lu(k,957) + lu(k,968) = lu(k,968) - lu(k,670) * lu(k,957) + lu(k,1722) = lu(k,1722) - lu(k,662) * lu(k,1721) + lu(k,1740) = lu(k,1740) - lu(k,663) * lu(k,1721) + lu(k,1748) = lu(k,1748) - lu(k,664) * lu(k,1721) + lu(k,1755) = lu(k,1755) - lu(k,665) * lu(k,1721) + lu(k,1775) = lu(k,1775) - lu(k,666) * lu(k,1721) + lu(k,1781) = lu(k,1781) - lu(k,667) * lu(k,1721) + lu(k,1782) = lu(k,1782) - lu(k,668) * lu(k,1721) + lu(k,1784) = lu(k,1784) - lu(k,669) * lu(k,1721) + lu(k,1786) = lu(k,1786) - lu(k,670) * lu(k,1721) + lu(k,2289) = lu(k,2289) - lu(k,662) * lu(k,2288) + lu(k,2299) = lu(k,2299) - lu(k,663) * lu(k,2288) + lu(k,2303) = lu(k,2303) - lu(k,664) * lu(k,2288) + lu(k,2308) = lu(k,2308) - lu(k,665) * lu(k,2288) + lu(k,2327) = lu(k,2327) - lu(k,666) * lu(k,2288) + lu(k,2332) = lu(k,2332) - lu(k,667) * lu(k,2288) + lu(k,2333) = lu(k,2333) - lu(k,668) * lu(k,2288) + lu(k,2335) = lu(k,2335) - lu(k,669) * lu(k,2288) + lu(k,2337) = lu(k,2337) - lu(k,670) * lu(k,2288) + end do + end subroutine lu_fac14 + subroutine lu_fac15( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,672) = 1._r8 / lu(k,672) + lu(k,673) = lu(k,673) * lu(k,672) + lu(k,674) = lu(k,674) * lu(k,672) + lu(k,675) = lu(k,675) * lu(k,672) + lu(k,676) = lu(k,676) * lu(k,672) + lu(k,677) = lu(k,677) * lu(k,672) + lu(k,678) = lu(k,678) * lu(k,672) + lu(k,962) = lu(k,962) - lu(k,673) * lu(k,958) + lu(k,963) = lu(k,963) - lu(k,674) * lu(k,958) + lu(k,966) = lu(k,966) - lu(k,675) * lu(k,958) + lu(k,967) = lu(k,967) - lu(k,676) * lu(k,958) + lu(k,968) = lu(k,968) - lu(k,677) * lu(k,958) + lu(k,970) = lu(k,970) - lu(k,678) * lu(k,958) + lu(k,1755) = lu(k,1755) - lu(k,673) * lu(k,1722) + lu(k,1775) = lu(k,1775) - lu(k,674) * lu(k,1722) + lu(k,1782) = lu(k,1782) - lu(k,675) * lu(k,1722) + lu(k,1784) = lu(k,1784) - lu(k,676) * lu(k,1722) + lu(k,1786) = lu(k,1786) - lu(k,677) * lu(k,1722) + lu(k,1795) = lu(k,1795) - lu(k,678) * lu(k,1722) + lu(k,1890) = lu(k,1890) - lu(k,673) * lu(k,1867) + lu(k,1909) = lu(k,1909) - lu(k,674) * lu(k,1867) + lu(k,1915) = lu(k,1915) - lu(k,675) * lu(k,1867) + lu(k,1917) = lu(k,1917) - lu(k,676) * lu(k,1867) + lu(k,1919) = lu(k,1919) - lu(k,677) * lu(k,1867) + lu(k,1928) = lu(k,1928) - lu(k,678) * lu(k,1867) + lu(k,2308) = lu(k,2308) - lu(k,673) * lu(k,2289) + lu(k,2327) = lu(k,2327) - lu(k,674) * lu(k,2289) + lu(k,2333) = lu(k,2333) - lu(k,675) * lu(k,2289) + lu(k,2335) = lu(k,2335) - lu(k,676) * lu(k,2289) + lu(k,2337) = lu(k,2337) - lu(k,677) * lu(k,2289) + lu(k,2346) = lu(k,2346) - lu(k,678) * lu(k,2289) + lu(k,680) = 1._r8 / lu(k,680) + lu(k,681) = lu(k,681) * lu(k,680) + lu(k,682) = lu(k,682) * lu(k,680) + lu(k,683) = lu(k,683) * lu(k,680) + lu(k,684) = lu(k,684) * lu(k,680) + lu(k,685) = lu(k,685) * lu(k,680) + lu(k,686) = lu(k,686) * lu(k,680) + lu(k,687) = lu(k,687) * lu(k,680) + lu(k,1504) = lu(k,1504) - lu(k,681) * lu(k,1497) + lu(k,1506) = - lu(k,682) * lu(k,1497) + lu(k,1507) = lu(k,1507) - lu(k,683) * lu(k,1497) + lu(k,1508) = - lu(k,684) * lu(k,1497) + lu(k,1512) = lu(k,1512) - lu(k,685) * lu(k,1497) + lu(k,1513) = lu(k,1513) - lu(k,686) * lu(k,1497) + lu(k,1516) = lu(k,1516) - lu(k,687) * lu(k,1497) + lu(k,1572) = lu(k,1572) - lu(k,681) * lu(k,1554) + lu(k,1574) = lu(k,1574) - lu(k,682) * lu(k,1554) + lu(k,1575) = lu(k,1575) - lu(k,683) * lu(k,1554) + lu(k,1576) = lu(k,1576) - lu(k,684) * lu(k,1554) + lu(k,1580) = lu(k,1580) - lu(k,685) * lu(k,1554) + lu(k,1581) = - lu(k,686) * lu(k,1554) + lu(k,1587) = lu(k,1587) - lu(k,687) * lu(k,1554) + lu(k,1780) = lu(k,1780) - lu(k,681) * lu(k,1723) + lu(k,1782) = lu(k,1782) - lu(k,682) * lu(k,1723) + lu(k,1783) = lu(k,1783) - lu(k,683) * lu(k,1723) + lu(k,1784) = lu(k,1784) - lu(k,684) * lu(k,1723) + lu(k,1788) = lu(k,1788) - lu(k,685) * lu(k,1723) + lu(k,1789) = lu(k,1789) - lu(k,686) * lu(k,1723) + lu(k,1795) = lu(k,1795) - lu(k,687) * lu(k,1723) + lu(k,2331) = lu(k,2331) - lu(k,681) * lu(k,2290) + lu(k,2333) = lu(k,2333) - lu(k,682) * lu(k,2290) + lu(k,2334) = - lu(k,683) * lu(k,2290) + lu(k,2335) = lu(k,2335) - lu(k,684) * lu(k,2290) + lu(k,2339) = lu(k,2339) - lu(k,685) * lu(k,2290) + lu(k,2340) = - lu(k,686) * lu(k,2290) + lu(k,2346) = lu(k,2346) - lu(k,687) * lu(k,2290) + lu(k,688) = 1._r8 / lu(k,688) + lu(k,689) = lu(k,689) * lu(k,688) + lu(k,690) = lu(k,690) * lu(k,688) + lu(k,691) = lu(k,691) * lu(k,688) + lu(k,692) = lu(k,692) * lu(k,688) + lu(k,1024) = lu(k,1024) - lu(k,689) * lu(k,1019) + lu(k,1034) = lu(k,1034) - lu(k,690) * lu(k,1019) + lu(k,1038) = lu(k,1038) - lu(k,691) * lu(k,1019) + lu(k,1040) = - lu(k,692) * lu(k,1019) + lu(k,1376) = lu(k,1376) - lu(k,689) * lu(k,1375) + lu(k,1386) = lu(k,1386) - lu(k,690) * lu(k,1375) + lu(k,1391) = lu(k,1391) - lu(k,691) * lu(k,1375) + lu(k,1393) = lu(k,1393) - lu(k,692) * lu(k,1375) + lu(k,1400) = lu(k,1400) - lu(k,689) * lu(k,1397) + lu(k,1419) = lu(k,1419) - lu(k,690) * lu(k,1397) + lu(k,1424) = lu(k,1424) - lu(k,691) * lu(k,1397) + lu(k,1426) = lu(k,1426) - lu(k,692) * lu(k,1397) + lu(k,1754) = lu(k,1754) - lu(k,689) * lu(k,1724) + lu(k,1784) = lu(k,1784) - lu(k,690) * lu(k,1724) + lu(k,1792) = lu(k,1792) - lu(k,691) * lu(k,1724) + lu(k,1796) = lu(k,1796) - lu(k,692) * lu(k,1724) + lu(k,1889) = lu(k,1889) - lu(k,689) * lu(k,1868) + lu(k,1917) = lu(k,1917) - lu(k,690) * lu(k,1868) + lu(k,1925) = lu(k,1925) - lu(k,691) * lu(k,1868) + lu(k,1929) = lu(k,1929) - lu(k,692) * lu(k,1868) + lu(k,1955) = lu(k,1955) - lu(k,689) * lu(k,1942) + lu(k,1982) = lu(k,1982) - lu(k,690) * lu(k,1942) + lu(k,1990) = lu(k,1990) - lu(k,691) * lu(k,1942) + lu(k,1994) = - lu(k,692) * lu(k,1942) + lu(k,2148) = lu(k,2148) - lu(k,689) * lu(k,2139) + lu(k,2174) = lu(k,2174) - lu(k,690) * lu(k,2139) + lu(k,2182) = lu(k,2182) - lu(k,691) * lu(k,2139) + lu(k,2186) = lu(k,2186) - lu(k,692) * lu(k,2139) + lu(k,694) = 1._r8 / lu(k,694) + lu(k,695) = lu(k,695) * lu(k,694) + lu(k,696) = lu(k,696) * lu(k,694) + lu(k,697) = lu(k,697) * lu(k,694) + lu(k,698) = lu(k,698) * lu(k,694) + lu(k,699) = lu(k,699) * lu(k,694) + lu(k,700) = lu(k,700) * lu(k,694) + lu(k,1208) = - lu(k,695) * lu(k,1201) + lu(k,1210) = - lu(k,696) * lu(k,1201) + lu(k,1212) = - lu(k,697) * lu(k,1201) + lu(k,1216) = lu(k,1216) - lu(k,698) * lu(k,1201) + lu(k,1218) = lu(k,1218) - lu(k,699) * lu(k,1201) + lu(k,1219) = lu(k,1219) - lu(k,700) * lu(k,1201) + lu(k,1272) = - lu(k,695) * lu(k,1264) + lu(k,1273) = lu(k,1273) - lu(k,696) * lu(k,1264) + lu(k,1277) = lu(k,1277) - lu(k,697) * lu(k,1264) + lu(k,1282) = lu(k,1282) - lu(k,698) * lu(k,1264) + lu(k,1284) = lu(k,1284) - lu(k,699) * lu(k,1264) + lu(k,1285) = lu(k,1285) - lu(k,700) * lu(k,1264) + lu(k,1307) = lu(k,1307) - lu(k,695) * lu(k,1296) + lu(k,1308) = - lu(k,696) * lu(k,1296) + lu(k,1312) = - lu(k,697) * lu(k,1296) + lu(k,1317) = lu(k,1317) - lu(k,698) * lu(k,1296) + lu(k,1319) = lu(k,1319) - lu(k,699) * lu(k,1296) + lu(k,1320) = lu(k,1320) - lu(k,700) * lu(k,1296) + lu(k,1765) = lu(k,1765) - lu(k,695) * lu(k,1725) + lu(k,1767) = lu(k,1767) - lu(k,696) * lu(k,1725) + lu(k,1773) = lu(k,1773) - lu(k,697) * lu(k,1725) + lu(k,1781) = lu(k,1781) - lu(k,698) * lu(k,1725) + lu(k,1784) = lu(k,1784) - lu(k,699) * lu(k,1725) + lu(k,1786) = lu(k,1786) - lu(k,700) * lu(k,1725) + lu(k,1899) = lu(k,1899) - lu(k,695) * lu(k,1869) + lu(k,1901) = - lu(k,696) * lu(k,1869) + lu(k,1907) = - lu(k,697) * lu(k,1869) + lu(k,1914) = lu(k,1914) - lu(k,698) * lu(k,1869) + lu(k,1917) = lu(k,1917) - lu(k,699) * lu(k,1869) + lu(k,1919) = lu(k,1919) - lu(k,700) * lu(k,1869) + lu(k,705) = 1._r8 / lu(k,705) + lu(k,706) = lu(k,706) * lu(k,705) + lu(k,707) = lu(k,707) * lu(k,705) + lu(k,708) = lu(k,708) * lu(k,705) + lu(k,709) = lu(k,709) * lu(k,705) + lu(k,710) = lu(k,710) * lu(k,705) + lu(k,711) = lu(k,711) * lu(k,705) + lu(k,712) = lu(k,712) * lu(k,705) + lu(k,713) = lu(k,713) * lu(k,705) + lu(k,714) = lu(k,714) * lu(k,705) + lu(k,715) = lu(k,715) * lu(k,705) + lu(k,749) = lu(k,749) - lu(k,706) * lu(k,748) + lu(k,750) = lu(k,750) - lu(k,707) * lu(k,748) + lu(k,751) = lu(k,751) - lu(k,708) * lu(k,748) + lu(k,752) = lu(k,752) - lu(k,709) * lu(k,748) + lu(k,753) = lu(k,753) - lu(k,710) * lu(k,748) + lu(k,754) = lu(k,754) - lu(k,711) * lu(k,748) + lu(k,755) = lu(k,755) - lu(k,712) * lu(k,748) + lu(k,756) = lu(k,756) - lu(k,713) * lu(k,748) + lu(k,758) = - lu(k,714) * lu(k,748) + lu(k,759) = lu(k,759) - lu(k,715) * lu(k,748) + lu(k,1728) = lu(k,1728) - lu(k,706) * lu(k,1726) + lu(k,1730) = lu(k,1730) - lu(k,707) * lu(k,1726) + lu(k,1731) = lu(k,1731) - lu(k,708) * lu(k,1726) + lu(k,1742) = lu(k,1742) - lu(k,709) * lu(k,1726) + lu(k,1749) = lu(k,1749) - lu(k,710) * lu(k,1726) + lu(k,1764) = lu(k,1764) - lu(k,711) * lu(k,1726) + lu(k,1768) = lu(k,1768) - lu(k,712) * lu(k,1726) + lu(k,1775) = lu(k,1775) - lu(k,713) * lu(k,1726) + lu(k,1784) = lu(k,1784) - lu(k,714) * lu(k,1726) + lu(k,1786) = lu(k,1786) - lu(k,715) * lu(k,1726) + lu(k,1871) = lu(k,1871) - lu(k,706) * lu(k,1870) + lu(k,1873) = lu(k,1873) - lu(k,707) * lu(k,1870) + lu(k,1874) = lu(k,1874) - lu(k,708) * lu(k,1870) + lu(k,1884) = lu(k,1884) - lu(k,709) * lu(k,1870) + lu(k,1887) = lu(k,1887) - lu(k,710) * lu(k,1870) + lu(k,1898) = lu(k,1898) - lu(k,711) * lu(k,1870) + lu(k,1902) = lu(k,1902) - lu(k,712) * lu(k,1870) + lu(k,1909) = lu(k,1909) - lu(k,713) * lu(k,1870) + lu(k,1917) = lu(k,1917) - lu(k,714) * lu(k,1870) + lu(k,1919) = lu(k,1919) - lu(k,715) * lu(k,1870) + end do + end subroutine lu_fac15 + subroutine lu_fac16( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,716) = 1._r8 / lu(k,716) + lu(k,717) = lu(k,717) * lu(k,716) + lu(k,718) = lu(k,718) * lu(k,716) + lu(k,719) = lu(k,719) * lu(k,716) + lu(k,720) = lu(k,720) * lu(k,716) + lu(k,721) = lu(k,721) * lu(k,716) + lu(k,722) = lu(k,722) * lu(k,716) + lu(k,1430) = lu(k,1430) - lu(k,717) * lu(k,1428) + lu(k,1432) = lu(k,1432) - lu(k,718) * lu(k,1428) + lu(k,1434) = lu(k,1434) - lu(k,719) * lu(k,1428) + lu(k,1437) = lu(k,1437) - lu(k,720) * lu(k,1428) + lu(k,1438) = lu(k,1438) - lu(k,721) * lu(k,1428) + lu(k,1439) = lu(k,1439) - lu(k,722) * lu(k,1428) + lu(k,1502) = lu(k,1502) - lu(k,717) * lu(k,1498) + lu(k,1504) = lu(k,1504) - lu(k,718) * lu(k,1498) + lu(k,1508) = lu(k,1508) - lu(k,719) * lu(k,1498) + lu(k,1511) = lu(k,1511) - lu(k,720) * lu(k,1498) + lu(k,1512) = lu(k,1512) - lu(k,721) * lu(k,1498) + lu(k,1513) = lu(k,1513) - lu(k,722) * lu(k,1498) + lu(k,1776) = lu(k,1776) - lu(k,717) * lu(k,1727) + lu(k,1780) = lu(k,1780) - lu(k,718) * lu(k,1727) + lu(k,1784) = lu(k,1784) - lu(k,719) * lu(k,1727) + lu(k,1787) = lu(k,1787) - lu(k,720) * lu(k,1727) + lu(k,1788) = lu(k,1788) - lu(k,721) * lu(k,1727) + lu(k,1789) = lu(k,1789) - lu(k,722) * lu(k,1727) + lu(k,1974) = lu(k,1974) - lu(k,717) * lu(k,1943) + lu(k,1978) = lu(k,1978) - lu(k,718) * lu(k,1943) + lu(k,1982) = lu(k,1982) - lu(k,719) * lu(k,1943) + lu(k,1985) = lu(k,1985) - lu(k,720) * lu(k,1943) + lu(k,1986) = lu(k,1986) - lu(k,721) * lu(k,1943) + lu(k,1987) = lu(k,1987) - lu(k,722) * lu(k,1943) + lu(k,2008) = lu(k,2008) - lu(k,717) * lu(k,2000) + lu(k,2012) = lu(k,2012) - lu(k,718) * lu(k,2000) + lu(k,2016) = lu(k,2016) - lu(k,719) * lu(k,2000) + lu(k,2019) = lu(k,2019) - lu(k,720) * lu(k,2000) + lu(k,2020) = lu(k,2020) - lu(k,721) * lu(k,2000) + lu(k,2021) = lu(k,2021) - lu(k,722) * lu(k,2000) + lu(k,723) = 1._r8 / lu(k,723) + lu(k,724) = lu(k,724) * lu(k,723) + lu(k,725) = lu(k,725) * lu(k,723) + lu(k,726) = lu(k,726) * lu(k,723) + lu(k,727) = lu(k,727) * lu(k,723) + lu(k,728) = lu(k,728) * lu(k,723) + lu(k,737) = lu(k,737) - lu(k,724) * lu(k,733) + lu(k,738) = lu(k,738) - lu(k,725) * lu(k,733) + lu(k,740) = lu(k,740) - lu(k,726) * lu(k,733) + lu(k,742) = lu(k,742) - lu(k,727) * lu(k,733) + lu(k,743) = lu(k,743) - lu(k,728) * lu(k,733) + lu(k,753) = lu(k,753) - lu(k,724) * lu(k,749) + lu(k,754) = lu(k,754) - lu(k,725) * lu(k,749) + lu(k,757) = lu(k,757) - lu(k,726) * lu(k,749) + lu(k,759) = lu(k,759) - lu(k,727) * lu(k,749) + lu(k,760) = lu(k,760) - lu(k,728) * lu(k,749) + lu(k,1560) = - lu(k,724) * lu(k,1555) + lu(k,1564) = - lu(k,725) * lu(k,1555) + lu(k,1574) = lu(k,1574) - lu(k,726) * lu(k,1555) + lu(k,1578) = lu(k,1578) - lu(k,727) * lu(k,1555) + lu(k,1587) = lu(k,1587) - lu(k,728) * lu(k,1555) + lu(k,1749) = lu(k,1749) - lu(k,724) * lu(k,1728) + lu(k,1764) = lu(k,1764) - lu(k,725) * lu(k,1728) + lu(k,1782) = lu(k,1782) - lu(k,726) * lu(k,1728) + lu(k,1786) = lu(k,1786) - lu(k,727) * lu(k,1728) + lu(k,1795) = lu(k,1795) - lu(k,728) * lu(k,1728) + lu(k,1887) = lu(k,1887) - lu(k,724) * lu(k,1871) + lu(k,1898) = lu(k,1898) - lu(k,725) * lu(k,1871) + lu(k,1915) = lu(k,1915) - lu(k,726) * lu(k,1871) + lu(k,1919) = lu(k,1919) - lu(k,727) * lu(k,1871) + lu(k,1928) = lu(k,1928) - lu(k,728) * lu(k,1871) + lu(k,2304) = lu(k,2304) - lu(k,724) * lu(k,2291) + lu(k,2317) = lu(k,2317) - lu(k,725) * lu(k,2291) + lu(k,2333) = lu(k,2333) - lu(k,726) * lu(k,2291) + lu(k,2337) = lu(k,2337) - lu(k,727) * lu(k,2291) + lu(k,2346) = lu(k,2346) - lu(k,728) * lu(k,2291) + lu(k,734) = 1._r8 / lu(k,734) + lu(k,735) = lu(k,735) * lu(k,734) + lu(k,736) = lu(k,736) * lu(k,734) + lu(k,737) = lu(k,737) * lu(k,734) + lu(k,738) = lu(k,738) * lu(k,734) + lu(k,739) = lu(k,739) * lu(k,734) + lu(k,740) = lu(k,740) * lu(k,734) + lu(k,741) = lu(k,741) * lu(k,734) + lu(k,742) = lu(k,742) * lu(k,734) + lu(k,743) = lu(k,743) * lu(k,734) + lu(k,1731) = lu(k,1731) - lu(k,735) * lu(k,1729) + lu(k,1742) = lu(k,1742) - lu(k,736) * lu(k,1729) + lu(k,1749) = lu(k,1749) - lu(k,737) * lu(k,1729) + lu(k,1764) = lu(k,1764) - lu(k,738) * lu(k,1729) + lu(k,1768) = lu(k,1768) - lu(k,739) * lu(k,1729) + lu(k,1782) = lu(k,1782) - lu(k,740) * lu(k,1729) + lu(k,1784) = lu(k,1784) - lu(k,741) * lu(k,1729) + lu(k,1786) = lu(k,1786) - lu(k,742) * lu(k,1729) + lu(k,1795) = lu(k,1795) - lu(k,743) * lu(k,1729) + lu(k,1874) = lu(k,1874) - lu(k,735) * lu(k,1872) + lu(k,1884) = lu(k,1884) - lu(k,736) * lu(k,1872) + lu(k,1887) = lu(k,1887) - lu(k,737) * lu(k,1872) + lu(k,1898) = lu(k,1898) - lu(k,738) * lu(k,1872) + lu(k,1902) = lu(k,1902) - lu(k,739) * lu(k,1872) + lu(k,1915) = lu(k,1915) - lu(k,740) * lu(k,1872) + lu(k,1917) = lu(k,1917) - lu(k,741) * lu(k,1872) + lu(k,1919) = lu(k,1919) - lu(k,742) * lu(k,1872) + lu(k,1928) = lu(k,1928) - lu(k,743) * lu(k,1872) + lu(k,2294) = lu(k,2294) - lu(k,735) * lu(k,2292) + lu(k,2301) = lu(k,2301) - lu(k,736) * lu(k,2292) + lu(k,2304) = lu(k,2304) - lu(k,737) * lu(k,2292) + lu(k,2317) = lu(k,2317) - lu(k,738) * lu(k,2292) + lu(k,2321) = lu(k,2321) - lu(k,739) * lu(k,2292) + lu(k,2333) = lu(k,2333) - lu(k,740) * lu(k,2292) + lu(k,2335) = lu(k,2335) - lu(k,741) * lu(k,2292) + lu(k,2337) = lu(k,2337) - lu(k,742) * lu(k,2292) + lu(k,2346) = lu(k,2346) - lu(k,743) * lu(k,2292) + lu(k,750) = 1._r8 / lu(k,750) + lu(k,751) = lu(k,751) * lu(k,750) + lu(k,752) = lu(k,752) * lu(k,750) + lu(k,753) = lu(k,753) * lu(k,750) + lu(k,754) = lu(k,754) * lu(k,750) + lu(k,755) = lu(k,755) * lu(k,750) + lu(k,756) = lu(k,756) * lu(k,750) + lu(k,757) = lu(k,757) * lu(k,750) + lu(k,758) = lu(k,758) * lu(k,750) + lu(k,759) = lu(k,759) * lu(k,750) + lu(k,760) = lu(k,760) * lu(k,750) + lu(k,1731) = lu(k,1731) - lu(k,751) * lu(k,1730) + lu(k,1742) = lu(k,1742) - lu(k,752) * lu(k,1730) + lu(k,1749) = lu(k,1749) - lu(k,753) * lu(k,1730) + lu(k,1764) = lu(k,1764) - lu(k,754) * lu(k,1730) + lu(k,1768) = lu(k,1768) - lu(k,755) * lu(k,1730) + lu(k,1775) = lu(k,1775) - lu(k,756) * lu(k,1730) + lu(k,1782) = lu(k,1782) - lu(k,757) * lu(k,1730) + lu(k,1784) = lu(k,1784) - lu(k,758) * lu(k,1730) + lu(k,1786) = lu(k,1786) - lu(k,759) * lu(k,1730) + lu(k,1795) = lu(k,1795) - lu(k,760) * lu(k,1730) + lu(k,1874) = lu(k,1874) - lu(k,751) * lu(k,1873) + lu(k,1884) = lu(k,1884) - lu(k,752) * lu(k,1873) + lu(k,1887) = lu(k,1887) - lu(k,753) * lu(k,1873) + lu(k,1898) = lu(k,1898) - lu(k,754) * lu(k,1873) + lu(k,1902) = lu(k,1902) - lu(k,755) * lu(k,1873) + lu(k,1909) = lu(k,1909) - lu(k,756) * lu(k,1873) + lu(k,1915) = lu(k,1915) - lu(k,757) * lu(k,1873) + lu(k,1917) = lu(k,1917) - lu(k,758) * lu(k,1873) + lu(k,1919) = lu(k,1919) - lu(k,759) * lu(k,1873) + lu(k,1928) = lu(k,1928) - lu(k,760) * lu(k,1873) + lu(k,2294) = lu(k,2294) - lu(k,751) * lu(k,2293) + lu(k,2301) = lu(k,2301) - lu(k,752) * lu(k,2293) + lu(k,2304) = lu(k,2304) - lu(k,753) * lu(k,2293) + lu(k,2317) = lu(k,2317) - lu(k,754) * lu(k,2293) + lu(k,2321) = lu(k,2321) - lu(k,755) * lu(k,2293) + lu(k,2327) = lu(k,2327) - lu(k,756) * lu(k,2293) + lu(k,2333) = lu(k,2333) - lu(k,757) * lu(k,2293) + lu(k,2335) = lu(k,2335) - lu(k,758) * lu(k,2293) + lu(k,2337) = lu(k,2337) - lu(k,759) * lu(k,2293) + lu(k,2346) = lu(k,2346) - lu(k,760) * lu(k,2293) + lu(k,761) = 1._r8 / lu(k,761) + lu(k,762) = lu(k,762) * lu(k,761) + lu(k,763) = lu(k,763) * lu(k,761) + lu(k,764) = lu(k,764) * lu(k,761) + lu(k,765) = lu(k,765) * lu(k,761) + lu(k,766) = lu(k,766) * lu(k,761) + lu(k,767) = lu(k,767) * lu(k,761) + lu(k,768) = lu(k,768) * lu(k,761) + lu(k,1564) = lu(k,1564) - lu(k,762) * lu(k,1556) + lu(k,1565) = - lu(k,763) * lu(k,1556) + lu(k,1574) = lu(k,1574) - lu(k,764) * lu(k,1556) + lu(k,1576) = lu(k,1576) - lu(k,765) * lu(k,1556) + lu(k,1578) = lu(k,1578) - lu(k,766) * lu(k,1556) + lu(k,1584) = lu(k,1584) - lu(k,767) * lu(k,1556) + lu(k,1587) = lu(k,1587) - lu(k,768) * lu(k,1556) + lu(k,1764) = lu(k,1764) - lu(k,762) * lu(k,1731) + lu(k,1768) = lu(k,1768) - lu(k,763) * lu(k,1731) + lu(k,1782) = lu(k,1782) - lu(k,764) * lu(k,1731) + lu(k,1784) = lu(k,1784) - lu(k,765) * lu(k,1731) + lu(k,1786) = lu(k,1786) - lu(k,766) * lu(k,1731) + lu(k,1792) = lu(k,1792) - lu(k,767) * lu(k,1731) + lu(k,1795) = lu(k,1795) - lu(k,768) * lu(k,1731) + lu(k,1898) = lu(k,1898) - lu(k,762) * lu(k,1874) + lu(k,1902) = lu(k,1902) - lu(k,763) * lu(k,1874) + lu(k,1915) = lu(k,1915) - lu(k,764) * lu(k,1874) + lu(k,1917) = lu(k,1917) - lu(k,765) * lu(k,1874) + lu(k,1919) = lu(k,1919) - lu(k,766) * lu(k,1874) + lu(k,1925) = lu(k,1925) - lu(k,767) * lu(k,1874) + lu(k,1928) = lu(k,1928) - lu(k,768) * lu(k,1874) + lu(k,2317) = lu(k,2317) - lu(k,762) * lu(k,2294) + lu(k,2321) = lu(k,2321) - lu(k,763) * lu(k,2294) + lu(k,2333) = lu(k,2333) - lu(k,764) * lu(k,2294) + lu(k,2335) = lu(k,2335) - lu(k,765) * lu(k,2294) + lu(k,2337) = lu(k,2337) - lu(k,766) * lu(k,2294) + lu(k,2343) = lu(k,2343) - lu(k,767) * lu(k,2294) + lu(k,2346) = lu(k,2346) - lu(k,768) * lu(k,2294) + lu(k,770) = 1._r8 / lu(k,770) + lu(k,771) = lu(k,771) * lu(k,770) + lu(k,772) = lu(k,772) * lu(k,770) + lu(k,773) = lu(k,773) * lu(k,770) + lu(k,774) = lu(k,774) * lu(k,770) + lu(k,775) = lu(k,775) * lu(k,770) + lu(k,776) = lu(k,776) * lu(k,770) + lu(k,777) = lu(k,777) * lu(k,770) + lu(k,1569) = lu(k,1569) - lu(k,771) * lu(k,1557) + lu(k,1576) = lu(k,1576) - lu(k,772) * lu(k,1557) + lu(k,1577) = lu(k,1577) - lu(k,773) * lu(k,1557) + lu(k,1580) = lu(k,1580) - lu(k,774) * lu(k,1557) + lu(k,1582) = - lu(k,775) * lu(k,1557) + lu(k,1585) = - lu(k,776) * lu(k,1557) + lu(k,1588) = lu(k,1588) - lu(k,777) * lu(k,1557) + lu(k,1803) = lu(k,1803) - lu(k,771) * lu(k,1800) + lu(k,1809) = lu(k,1809) - lu(k,772) * lu(k,1800) + lu(k,1810) = lu(k,1810) - lu(k,773) * lu(k,1800) + lu(k,1813) = lu(k,1813) - lu(k,774) * lu(k,1800) + lu(k,1815) = - lu(k,775) * lu(k,1800) + lu(k,1818) = lu(k,1818) - lu(k,776) * lu(k,1800) + lu(k,1821) = - lu(k,777) * lu(k,1800) + lu(k,1910) = lu(k,1910) - lu(k,771) * lu(k,1875) + lu(k,1917) = lu(k,1917) - lu(k,772) * lu(k,1875) + lu(k,1918) = lu(k,1918) - lu(k,773) * lu(k,1875) + lu(k,1921) = lu(k,1921) - lu(k,774) * lu(k,1875) + lu(k,1923) = lu(k,1923) - lu(k,775) * lu(k,1875) + lu(k,1926) = lu(k,1926) - lu(k,776) * lu(k,1875) + lu(k,1929) = lu(k,1929) - lu(k,777) * lu(k,1875) + lu(k,2009) = lu(k,2009) - lu(k,771) * lu(k,2001) + lu(k,2016) = lu(k,2016) - lu(k,772) * lu(k,2001) + lu(k,2017) = lu(k,2017) - lu(k,773) * lu(k,2001) + lu(k,2020) = lu(k,2020) - lu(k,774) * lu(k,2001) + lu(k,2022) = lu(k,2022) - lu(k,775) * lu(k,2001) + lu(k,2025) = lu(k,2025) - lu(k,776) * lu(k,2001) + lu(k,2028) = lu(k,2028) - lu(k,777) * lu(k,2001) + lu(k,2054) = lu(k,2054) - lu(k,771) * lu(k,2051) + lu(k,2060) = lu(k,2060) - lu(k,772) * lu(k,2051) + lu(k,2061) = - lu(k,773) * lu(k,2051) + lu(k,2064) = lu(k,2064) - lu(k,774) * lu(k,2051) + lu(k,2066) = lu(k,2066) - lu(k,775) * lu(k,2051) + lu(k,2069) = lu(k,2069) - lu(k,776) * lu(k,2051) + lu(k,2072) = lu(k,2072) - lu(k,777) * lu(k,2051) + end do + end subroutine lu_fac16 + subroutine lu_fac17( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,780) = 1._r8 / lu(k,780) + lu(k,781) = lu(k,781) * lu(k,780) + lu(k,782) = lu(k,782) * lu(k,780) + lu(k,783) = lu(k,783) * lu(k,780) + lu(k,784) = lu(k,784) * lu(k,780) + lu(k,785) = lu(k,785) * lu(k,780) + lu(k,786) = lu(k,786) * lu(k,780) + lu(k,787) = lu(k,787) * lu(k,780) + lu(k,1760) = lu(k,1760) - lu(k,781) * lu(k,1732) + lu(k,1780) = lu(k,1780) - lu(k,782) * lu(k,1732) + lu(k,1781) = lu(k,1781) - lu(k,783) * lu(k,1732) + lu(k,1782) = lu(k,1782) - lu(k,784) * lu(k,1732) + lu(k,1784) = lu(k,1784) - lu(k,785) * lu(k,1732) + lu(k,1786) = lu(k,1786) - lu(k,786) * lu(k,1732) + lu(k,1795) = lu(k,1795) - lu(k,787) * lu(k,1732) + lu(k,1894) = lu(k,1894) - lu(k,781) * lu(k,1876) + lu(k,1913) = lu(k,1913) - lu(k,782) * lu(k,1876) + lu(k,1914) = lu(k,1914) - lu(k,783) * lu(k,1876) + lu(k,1915) = lu(k,1915) - lu(k,784) * lu(k,1876) + lu(k,1917) = lu(k,1917) - lu(k,785) * lu(k,1876) + lu(k,1919) = lu(k,1919) - lu(k,786) * lu(k,1876) + lu(k,1928) = lu(k,1928) - lu(k,787) * lu(k,1876) + lu(k,1960) = - lu(k,781) * lu(k,1944) + lu(k,1978) = lu(k,1978) - lu(k,782) * lu(k,1944) + lu(k,1979) = lu(k,1979) - lu(k,783) * lu(k,1944) + lu(k,1980) = lu(k,1980) - lu(k,784) * lu(k,1944) + lu(k,1982) = lu(k,1982) - lu(k,785) * lu(k,1944) + lu(k,1984) = lu(k,1984) - lu(k,786) * lu(k,1944) + lu(k,1993) = lu(k,1993) - lu(k,787) * lu(k,1944) + lu(k,2204) = - lu(k,781) * lu(k,2196) + lu(k,2211) = lu(k,2211) - lu(k,782) * lu(k,2196) + lu(k,2212) = lu(k,2212) - lu(k,783) * lu(k,2196) + lu(k,2213) = - lu(k,784) * lu(k,2196) + lu(k,2215) = lu(k,2215) - lu(k,785) * lu(k,2196) + lu(k,2217) = lu(k,2217) - lu(k,786) * lu(k,2196) + lu(k,2226) = - lu(k,787) * lu(k,2196) + lu(k,2313) = lu(k,2313) - lu(k,781) * lu(k,2295) + lu(k,2331) = lu(k,2331) - lu(k,782) * lu(k,2295) + lu(k,2332) = lu(k,2332) - lu(k,783) * lu(k,2295) + lu(k,2333) = lu(k,2333) - lu(k,784) * lu(k,2295) + lu(k,2335) = lu(k,2335) - lu(k,785) * lu(k,2295) + lu(k,2337) = lu(k,2337) - lu(k,786) * lu(k,2295) + lu(k,2346) = lu(k,2346) - lu(k,787) * lu(k,2295) + lu(k,789) = 1._r8 / lu(k,789) + lu(k,790) = lu(k,790) * lu(k,789) + lu(k,791) = lu(k,791) * lu(k,789) + lu(k,792) = lu(k,792) * lu(k,789) + lu(k,793) = lu(k,793) * lu(k,789) + lu(k,794) = lu(k,794) * lu(k,789) + lu(k,795) = lu(k,795) * lu(k,789) + lu(k,796) = lu(k,796) * lu(k,789) + lu(k,797) = lu(k,797) * lu(k,789) + lu(k,798) = lu(k,798) * lu(k,789) + lu(k,1025) = lu(k,1025) - lu(k,790) * lu(k,1020) + lu(k,1026) = - lu(k,791) * lu(k,1020) + lu(k,1031) = - lu(k,792) * lu(k,1020) + lu(k,1032) = lu(k,1032) - lu(k,793) * lu(k,1020) + lu(k,1033) = - lu(k,794) * lu(k,1020) + lu(k,1034) = lu(k,1034) - lu(k,795) * lu(k,1020) + lu(k,1035) = lu(k,1035) - lu(k,796) * lu(k,1020) + lu(k,1039) = - lu(k,797) * lu(k,1020) + lu(k,1040) = lu(k,1040) - lu(k,798) * lu(k,1020) + lu(k,1755) = lu(k,1755) - lu(k,790) * lu(k,1733) + lu(k,1758) = lu(k,1758) - lu(k,791) * lu(k,1733) + lu(k,1780) = lu(k,1780) - lu(k,792) * lu(k,1733) + lu(k,1781) = lu(k,1781) - lu(k,793) * lu(k,1733) + lu(k,1782) = lu(k,1782) - lu(k,794) * lu(k,1733) + lu(k,1784) = lu(k,1784) - lu(k,795) * lu(k,1733) + lu(k,1786) = lu(k,1786) - lu(k,796) * lu(k,1733) + lu(k,1795) = lu(k,1795) - lu(k,797) * lu(k,1733) + lu(k,1796) = lu(k,1796) - lu(k,798) * lu(k,1733) + lu(k,1890) = lu(k,1890) - lu(k,790) * lu(k,1877) + lu(k,1892) = lu(k,1892) - lu(k,791) * lu(k,1877) + lu(k,1913) = lu(k,1913) - lu(k,792) * lu(k,1877) + lu(k,1914) = lu(k,1914) - lu(k,793) * lu(k,1877) + lu(k,1915) = lu(k,1915) - lu(k,794) * lu(k,1877) + lu(k,1917) = lu(k,1917) - lu(k,795) * lu(k,1877) + lu(k,1919) = lu(k,1919) - lu(k,796) * lu(k,1877) + lu(k,1928) = lu(k,1928) - lu(k,797) * lu(k,1877) + lu(k,1929) = lu(k,1929) - lu(k,798) * lu(k,1877) + lu(k,2308) = lu(k,2308) - lu(k,790) * lu(k,2296) + lu(k,2311) = lu(k,2311) - lu(k,791) * lu(k,2296) + lu(k,2331) = lu(k,2331) - lu(k,792) * lu(k,2296) + lu(k,2332) = lu(k,2332) - lu(k,793) * lu(k,2296) + lu(k,2333) = lu(k,2333) - lu(k,794) * lu(k,2296) + lu(k,2335) = lu(k,2335) - lu(k,795) * lu(k,2296) + lu(k,2337) = lu(k,2337) - lu(k,796) * lu(k,2296) + lu(k,2346) = lu(k,2346) - lu(k,797) * lu(k,2296) + lu(k,2347) = - lu(k,798) * lu(k,2296) + lu(k,799) = 1._r8 / lu(k,799) + lu(k,800) = lu(k,800) * lu(k,799) + lu(k,801) = lu(k,801) * lu(k,799) + lu(k,802) = lu(k,802) * lu(k,799) + lu(k,862) = lu(k,862) - lu(k,800) * lu(k,858) + lu(k,864) = lu(k,864) - lu(k,801) * lu(k,858) + lu(k,865) = lu(k,865) - lu(k,802) * lu(k,858) + lu(k,1065) = lu(k,1065) - lu(k,800) * lu(k,1058) + lu(k,1067) = lu(k,1067) - lu(k,801) * lu(k,1058) + lu(k,1068) = lu(k,1068) - lu(k,802) * lu(k,1058) + lu(k,1131) = lu(k,1131) - lu(k,800) * lu(k,1119) + lu(k,1133) = lu(k,1133) - lu(k,801) * lu(k,1119) + lu(k,1134) = lu(k,1134) - lu(k,802) * lu(k,1119) + lu(k,1153) = lu(k,1153) - lu(k,800) * lu(k,1142) + lu(k,1155) = lu(k,1155) - lu(k,801) * lu(k,1142) + lu(k,1156) = lu(k,1156) - lu(k,802) * lu(k,1142) + lu(k,1167) = lu(k,1167) - lu(k,800) * lu(k,1162) + lu(k,1169) = lu(k,1169) - lu(k,801) * lu(k,1162) + lu(k,1170) = lu(k,1170) - lu(k,802) * lu(k,1162) + lu(k,1191) = lu(k,1191) - lu(k,800) * lu(k,1181) + lu(k,1193) = lu(k,1193) - lu(k,801) * lu(k,1181) + lu(k,1194) = lu(k,1194) - lu(k,802) * lu(k,1181) + lu(k,1216) = lu(k,1216) - lu(k,800) * lu(k,1202) + lu(k,1218) = lu(k,1218) - lu(k,801) * lu(k,1202) + lu(k,1219) = lu(k,1219) - lu(k,802) * lu(k,1202) + lu(k,1282) = lu(k,1282) - lu(k,800) * lu(k,1265) + lu(k,1284) = lu(k,1284) - lu(k,801) * lu(k,1265) + lu(k,1285) = lu(k,1285) - lu(k,802) * lu(k,1265) + lu(k,1317) = lu(k,1317) - lu(k,800) * lu(k,1297) + lu(k,1319) = lu(k,1319) - lu(k,801) * lu(k,1297) + lu(k,1320) = lu(k,1320) - lu(k,802) * lu(k,1297) + lu(k,1340) = lu(k,1340) - lu(k,800) * lu(k,1328) + lu(k,1342) = lu(k,1342) - lu(k,801) * lu(k,1328) + lu(k,1343) = lu(k,1343) - lu(k,802) * lu(k,1328) + lu(k,1781) = lu(k,1781) - lu(k,800) * lu(k,1734) + lu(k,1784) = lu(k,1784) - lu(k,801) * lu(k,1734) + lu(k,1786) = lu(k,1786) - lu(k,802) * lu(k,1734) + lu(k,2171) = lu(k,2171) - lu(k,800) * lu(k,2140) + lu(k,2174) = lu(k,2174) - lu(k,801) * lu(k,2140) + lu(k,2176) = lu(k,2176) - lu(k,802) * lu(k,2140) + lu(k,804) = 1._r8 / lu(k,804) + lu(k,805) = lu(k,805) * lu(k,804) + lu(k,806) = lu(k,806) * lu(k,804) + lu(k,807) = lu(k,807) * lu(k,804) + lu(k,808) = lu(k,808) * lu(k,804) + lu(k,809) = lu(k,809) * lu(k,804) + lu(k,810) = lu(k,810) * lu(k,804) + lu(k,811) = lu(k,811) * lu(k,804) + lu(k,812) = lu(k,812) * lu(k,804) + lu(k,813) = lu(k,813) * lu(k,804) + lu(k,814) = lu(k,814) * lu(k,804) + lu(k,1748) = lu(k,1748) - lu(k,805) * lu(k,1735) + lu(k,1755) = lu(k,1755) - lu(k,806) * lu(k,1735) + lu(k,1780) = lu(k,1780) - lu(k,807) * lu(k,1735) + lu(k,1781) = lu(k,1781) - lu(k,808) * lu(k,1735) + lu(k,1782) = lu(k,1782) - lu(k,809) * lu(k,1735) + lu(k,1784) = lu(k,1784) - lu(k,810) * lu(k,1735) + lu(k,1786) = lu(k,1786) - lu(k,811) * lu(k,1735) + lu(k,1792) = lu(k,1792) - lu(k,812) * lu(k,1735) + lu(k,1795) = lu(k,1795) - lu(k,813) * lu(k,1735) + lu(k,1796) = lu(k,1796) - lu(k,814) * lu(k,1735) + lu(k,1886) = lu(k,1886) - lu(k,805) * lu(k,1878) + lu(k,1890) = lu(k,1890) - lu(k,806) * lu(k,1878) + lu(k,1913) = lu(k,1913) - lu(k,807) * lu(k,1878) + lu(k,1914) = lu(k,1914) - lu(k,808) * lu(k,1878) + lu(k,1915) = lu(k,1915) - lu(k,809) * lu(k,1878) + lu(k,1917) = lu(k,1917) - lu(k,810) * lu(k,1878) + lu(k,1919) = lu(k,1919) - lu(k,811) * lu(k,1878) + lu(k,1925) = lu(k,1925) - lu(k,812) * lu(k,1878) + lu(k,1928) = lu(k,1928) - lu(k,813) * lu(k,1878) + lu(k,1929) = lu(k,1929) - lu(k,814) * lu(k,1878) + lu(k,2144) = lu(k,2144) - lu(k,805) * lu(k,2141) + lu(k,2149) = lu(k,2149) - lu(k,806) * lu(k,2141) + lu(k,2170) = lu(k,2170) - lu(k,807) * lu(k,2141) + lu(k,2171) = lu(k,2171) - lu(k,808) * lu(k,2141) + lu(k,2172) = lu(k,2172) - lu(k,809) * lu(k,2141) + lu(k,2174) = lu(k,2174) - lu(k,810) * lu(k,2141) + lu(k,2176) = lu(k,2176) - lu(k,811) * lu(k,2141) + lu(k,2182) = lu(k,2182) - lu(k,812) * lu(k,2141) + lu(k,2185) = lu(k,2185) - lu(k,813) * lu(k,2141) + lu(k,2186) = lu(k,2186) - lu(k,814) * lu(k,2141) + lu(k,2303) = lu(k,2303) - lu(k,805) * lu(k,2297) + lu(k,2308) = lu(k,2308) - lu(k,806) * lu(k,2297) + lu(k,2331) = lu(k,2331) - lu(k,807) * lu(k,2297) + lu(k,2332) = lu(k,2332) - lu(k,808) * lu(k,2297) + lu(k,2333) = lu(k,2333) - lu(k,809) * lu(k,2297) + lu(k,2335) = lu(k,2335) - lu(k,810) * lu(k,2297) + lu(k,2337) = lu(k,2337) - lu(k,811) * lu(k,2297) + lu(k,2343) = lu(k,2343) - lu(k,812) * lu(k,2297) + lu(k,2346) = lu(k,2346) - lu(k,813) * lu(k,2297) + lu(k,2347) = lu(k,2347) - lu(k,814) * lu(k,2297) + lu(k,815) = 1._r8 / lu(k,815) + lu(k,816) = lu(k,816) * lu(k,815) + lu(k,817) = lu(k,817) * lu(k,815) + lu(k,818) = lu(k,818) * lu(k,815) + lu(k,819) = lu(k,819) * lu(k,815) + lu(k,820) = lu(k,820) * lu(k,815) + lu(k,821) = lu(k,821) * lu(k,815) + lu(k,822) = lu(k,822) * lu(k,815) + lu(k,1446) = lu(k,1446) - lu(k,816) * lu(k,1444) + lu(k,1449) = - lu(k,817) * lu(k,1444) + lu(k,1450) = - lu(k,818) * lu(k,1444) + lu(k,1451) = lu(k,1451) - lu(k,819) * lu(k,1444) + lu(k,1454) = - lu(k,820) * lu(k,1444) + lu(k,1455) = - lu(k,821) * lu(k,1444) + lu(k,1456) = - lu(k,822) * lu(k,1444) + lu(k,1524) = lu(k,1524) - lu(k,816) * lu(k,1519) + lu(k,1530) = - lu(k,817) * lu(k,1519) + lu(k,1531) = lu(k,1531) - lu(k,818) * lu(k,1519) + lu(k,1532) = - lu(k,819) * lu(k,1519) + lu(k,1535) = lu(k,1535) - lu(k,820) * lu(k,1519) + lu(k,1536) = lu(k,1536) - lu(k,821) * lu(k,1519) + lu(k,1543) = lu(k,1543) - lu(k,822) * lu(k,1519) + lu(k,1612) = lu(k,1612) - lu(k,816) * lu(k,1609) + lu(k,1618) = lu(k,1618) - lu(k,817) * lu(k,1609) + lu(k,1619) = lu(k,1619) - lu(k,818) * lu(k,1609) + lu(k,1620) = lu(k,1620) - lu(k,819) * lu(k,1609) + lu(k,1623) = lu(k,1623) - lu(k,820) * lu(k,1609) + lu(k,1624) = lu(k,1624) - lu(k,821) * lu(k,1609) + lu(k,1631) = lu(k,1631) - lu(k,822) * lu(k,1609) + lu(k,1777) = lu(k,1777) - lu(k,816) * lu(k,1736) + lu(k,1783) = lu(k,1783) - lu(k,817) * lu(k,1736) + lu(k,1784) = lu(k,1784) - lu(k,818) * lu(k,1736) + lu(k,1785) = lu(k,1785) - lu(k,819) * lu(k,1736) + lu(k,1788) = lu(k,1788) - lu(k,820) * lu(k,1736) + lu(k,1789) = lu(k,1789) - lu(k,821) * lu(k,1736) + lu(k,1796) = lu(k,1796) - lu(k,822) * lu(k,1736) + lu(k,1910) = lu(k,1910) - lu(k,816) * lu(k,1879) + lu(k,1916) = - lu(k,817) * lu(k,1879) + lu(k,1917) = lu(k,1917) - lu(k,818) * lu(k,1879) + lu(k,1918) = lu(k,1918) - lu(k,819) * lu(k,1879) + lu(k,1921) = lu(k,1921) - lu(k,820) * lu(k,1879) + lu(k,1922) = lu(k,1922) - lu(k,821) * lu(k,1879) + lu(k,1929) = lu(k,1929) - lu(k,822) * lu(k,1879) + lu(k,2009) = lu(k,2009) - lu(k,816) * lu(k,2002) + lu(k,2015) = - lu(k,817) * lu(k,2002) + lu(k,2016) = lu(k,2016) - lu(k,818) * lu(k,2002) + lu(k,2017) = lu(k,2017) - lu(k,819) * lu(k,2002) + lu(k,2020) = lu(k,2020) - lu(k,820) * lu(k,2002) + lu(k,2021) = lu(k,2021) - lu(k,821) * lu(k,2002) + lu(k,2028) = lu(k,2028) - lu(k,822) * lu(k,2002) + end do + end subroutine lu_fac17 + subroutine lu_fac18( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,824) = 1._r8 / lu(k,824) + lu(k,825) = lu(k,825) * lu(k,824) + lu(k,826) = lu(k,826) * lu(k,824) + lu(k,827) = lu(k,827) * lu(k,824) + lu(k,828) = lu(k,828) * lu(k,824) + lu(k,829) = lu(k,829) * lu(k,824) + lu(k,830) = lu(k,830) * lu(k,824) + lu(k,988) = lu(k,988) - lu(k,825) * lu(k,984) + lu(k,989) = lu(k,989) - lu(k,826) * lu(k,984) + lu(k,990) = lu(k,990) - lu(k,827) * lu(k,984) + lu(k,992) = lu(k,992) - lu(k,828) * lu(k,984) + lu(k,993) = lu(k,993) - lu(k,829) * lu(k,984) + lu(k,994) = - lu(k,830) * lu(k,984) + lu(k,1784) = lu(k,1784) - lu(k,825) * lu(k,1737) + lu(k,1788) = lu(k,1788) - lu(k,826) * lu(k,1737) + lu(k,1790) = lu(k,1790) - lu(k,827) * lu(k,1737) + lu(k,1793) = lu(k,1793) - lu(k,828) * lu(k,1737) + lu(k,1794) = lu(k,1794) - lu(k,829) * lu(k,1737) + lu(k,1796) = lu(k,1796) - lu(k,830) * lu(k,1737) + lu(k,1917) = lu(k,1917) - lu(k,825) * lu(k,1880) + lu(k,1921) = lu(k,1921) - lu(k,826) * lu(k,1880) + lu(k,1923) = lu(k,1923) - lu(k,827) * lu(k,1880) + lu(k,1926) = lu(k,1926) - lu(k,828) * lu(k,1880) + lu(k,1927) = lu(k,1927) - lu(k,829) * lu(k,1880) + lu(k,1929) = lu(k,1929) - lu(k,830) * lu(k,1880) + lu(k,2016) = lu(k,2016) - lu(k,825) * lu(k,2003) + lu(k,2020) = lu(k,2020) - lu(k,826) * lu(k,2003) + lu(k,2022) = lu(k,2022) - lu(k,827) * lu(k,2003) + lu(k,2025) = lu(k,2025) - lu(k,828) * lu(k,2003) + lu(k,2026) = lu(k,2026) - lu(k,829) * lu(k,2003) + lu(k,2028) = lu(k,2028) - lu(k,830) * lu(k,2003) + lu(k,2060) = lu(k,2060) - lu(k,825) * lu(k,2052) + lu(k,2064) = lu(k,2064) - lu(k,826) * lu(k,2052) + lu(k,2066) = lu(k,2066) - lu(k,827) * lu(k,2052) + lu(k,2069) = lu(k,2069) - lu(k,828) * lu(k,2052) + lu(k,2070) = lu(k,2070) - lu(k,829) * lu(k,2052) + lu(k,2072) = lu(k,2072) - lu(k,830) * lu(k,2052) + lu(k,2215) = lu(k,2215) - lu(k,825) * lu(k,2197) + lu(k,2219) = lu(k,2219) - lu(k,826) * lu(k,2197) + lu(k,2221) = lu(k,2221) - lu(k,827) * lu(k,2197) + lu(k,2224) = lu(k,2224) - lu(k,828) * lu(k,2197) + lu(k,2225) = lu(k,2225) - lu(k,829) * lu(k,2197) + lu(k,2227) = lu(k,2227) - lu(k,830) * lu(k,2197) + lu(k,2242) = lu(k,2242) - lu(k,825) * lu(k,2232) + lu(k,2246) = lu(k,2246) - lu(k,826) * lu(k,2232) + lu(k,2248) = lu(k,2248) - lu(k,827) * lu(k,2232) + lu(k,2251) = lu(k,2251) - lu(k,828) * lu(k,2232) + lu(k,2252) = lu(k,2252) - lu(k,829) * lu(k,2232) + lu(k,2254) = - lu(k,830) * lu(k,2232) + lu(k,834) = 1._r8 / lu(k,834) + lu(k,835) = lu(k,835) * lu(k,834) + lu(k,836) = lu(k,836) * lu(k,834) + lu(k,837) = lu(k,837) * lu(k,834) + lu(k,838) = lu(k,838) * lu(k,834) + lu(k,839) = lu(k,839) * lu(k,834) + lu(k,840) = lu(k,840) * lu(k,834) + lu(k,841) = lu(k,841) * lu(k,834) + lu(k,842) = lu(k,842) * lu(k,834) + lu(k,843) = lu(k,843) * lu(k,834) + lu(k,844) = lu(k,844) * lu(k,834) + lu(k,845) = lu(k,845) * lu(k,834) + lu(k,846) = lu(k,846) * lu(k,834) + lu(k,847) = lu(k,847) * lu(k,834) + lu(k,848) = lu(k,848) * lu(k,834) + lu(k,849) = lu(k,849) * lu(k,834) + lu(k,1741) = lu(k,1741) - lu(k,835) * lu(k,1738) + lu(k,1753) = lu(k,1753) - lu(k,836) * lu(k,1738) + lu(k,1764) = lu(k,1764) - lu(k,837) * lu(k,1738) + lu(k,1766) = - lu(k,838) * lu(k,1738) + lu(k,1767) = lu(k,1767) - lu(k,839) * lu(k,1738) + lu(k,1770) = lu(k,1770) - lu(k,840) * lu(k,1738) + lu(k,1771) = lu(k,1771) - lu(k,841) * lu(k,1738) + lu(k,1773) = lu(k,1773) - lu(k,842) * lu(k,1738) + lu(k,1775) = lu(k,1775) - lu(k,843) * lu(k,1738) + lu(k,1781) = lu(k,1781) - lu(k,844) * lu(k,1738) + lu(k,1784) = lu(k,1784) - lu(k,845) * lu(k,1738) + lu(k,1786) = lu(k,1786) - lu(k,846) * lu(k,1738) + lu(k,1787) = lu(k,1787) - lu(k,847) * lu(k,1738) + lu(k,1791) = lu(k,1791) - lu(k,848) * lu(k,1738) + lu(k,1792) = lu(k,1792) - lu(k,849) * lu(k,1738) + lu(k,1946) = lu(k,1946) - lu(k,835) * lu(k,1945) + lu(k,1954) = lu(k,1954) - lu(k,836) * lu(k,1945) + lu(k,1964) = lu(k,1964) - lu(k,837) * lu(k,1945) + lu(k,1965) = - lu(k,838) * lu(k,1945) + lu(k,1966) = lu(k,1966) - lu(k,839) * lu(k,1945) + lu(k,1968) = - lu(k,840) * lu(k,1945) + lu(k,1969) = - lu(k,841) * lu(k,1945) + lu(k,1971) = lu(k,1971) - lu(k,842) * lu(k,1945) + lu(k,1973) = lu(k,1973) - lu(k,843) * lu(k,1945) + lu(k,1979) = lu(k,1979) - lu(k,844) * lu(k,1945) + lu(k,1982) = lu(k,1982) - lu(k,845) * lu(k,1945) + lu(k,1984) = lu(k,1984) - lu(k,846) * lu(k,1945) + lu(k,1985) = lu(k,1985) - lu(k,847) * lu(k,1945) + lu(k,1989) = lu(k,1989) - lu(k,848) * lu(k,1945) + lu(k,1990) = lu(k,1990) - lu(k,849) * lu(k,1945) + lu(k,2082) = - lu(k,835) * lu(k,2080) + lu(k,2091) = lu(k,2091) - lu(k,836) * lu(k,2080) + lu(k,2102) = lu(k,2102) - lu(k,837) * lu(k,2080) + lu(k,2104) = lu(k,2104) - lu(k,838) * lu(k,2080) + lu(k,2105) = lu(k,2105) - lu(k,839) * lu(k,2080) + lu(k,2107) = lu(k,2107) - lu(k,840) * lu(k,2080) + lu(k,2108) = lu(k,2108) - lu(k,841) * lu(k,2080) + lu(k,2110) = lu(k,2110) - lu(k,842) * lu(k,2080) + lu(k,2112) = lu(k,2112) - lu(k,843) * lu(k,2080) + lu(k,2118) = lu(k,2118) - lu(k,844) * lu(k,2080) + lu(k,2121) = lu(k,2121) - lu(k,845) * lu(k,2080) + lu(k,2123) = lu(k,2123) - lu(k,846) * lu(k,2080) + lu(k,2124) = - lu(k,847) * lu(k,2080) + lu(k,2128) = lu(k,2128) - lu(k,848) * lu(k,2080) + lu(k,2129) = - lu(k,849) * lu(k,2080) + lu(k,850) = 1._r8 / lu(k,850) + lu(k,851) = lu(k,851) * lu(k,850) + lu(k,852) = lu(k,852) * lu(k,850) + lu(k,853) = lu(k,853) * lu(k,850) + lu(k,854) = lu(k,854) * lu(k,850) + lu(k,855) = lu(k,855) * lu(k,850) + lu(k,1010) = - lu(k,851) * lu(k,1004) + lu(k,1011) = - lu(k,852) * lu(k,1004) + lu(k,1013) = - lu(k,853) * lu(k,1004) + lu(k,1014) = lu(k,1014) - lu(k,854) * lu(k,1004) + lu(k,1015) = lu(k,1015) - lu(k,855) * lu(k,1004) + lu(k,1028) = - lu(k,851) * lu(k,1021) + lu(k,1029) = - lu(k,852) * lu(k,1021) + lu(k,1032) = lu(k,1032) - lu(k,853) * lu(k,1021) + lu(k,1033) = lu(k,1033) - lu(k,854) * lu(k,1021) + lu(k,1034) = lu(k,1034) - lu(k,855) * lu(k,1021) + lu(k,1211) = - lu(k,851) * lu(k,1203) + lu(k,1213) = lu(k,1213) - lu(k,852) * lu(k,1203) + lu(k,1216) = lu(k,1216) - lu(k,853) * lu(k,1203) + lu(k,1217) = lu(k,1217) - lu(k,854) * lu(k,1203) + lu(k,1218) = lu(k,1218) - lu(k,855) * lu(k,1203) + lu(k,1309) = lu(k,1309) - lu(k,851) * lu(k,1298) + lu(k,1314) = lu(k,1314) - lu(k,852) * lu(k,1298) + lu(k,1317) = lu(k,1317) - lu(k,853) * lu(k,1298) + lu(k,1318) = lu(k,1318) - lu(k,854) * lu(k,1298) + lu(k,1319) = lu(k,1319) - lu(k,855) * lu(k,1298) + lu(k,1768) = lu(k,1768) - lu(k,851) * lu(k,1739) + lu(k,1775) = lu(k,1775) - lu(k,852) * lu(k,1739) + lu(k,1781) = lu(k,1781) - lu(k,853) * lu(k,1739) + lu(k,1782) = lu(k,1782) - lu(k,854) * lu(k,1739) + lu(k,1784) = lu(k,1784) - lu(k,855) * lu(k,1739) + lu(k,1902) = lu(k,1902) - lu(k,851) * lu(k,1881) + lu(k,1909) = lu(k,1909) - lu(k,852) * lu(k,1881) + lu(k,1914) = lu(k,1914) - lu(k,853) * lu(k,1881) + lu(k,1915) = lu(k,1915) - lu(k,854) * lu(k,1881) + lu(k,1917) = lu(k,1917) - lu(k,855) * lu(k,1881) + lu(k,2106) = lu(k,2106) - lu(k,851) * lu(k,2081) + lu(k,2112) = lu(k,2112) - lu(k,852) * lu(k,2081) + lu(k,2118) = lu(k,2118) - lu(k,853) * lu(k,2081) + lu(k,2119) = lu(k,2119) - lu(k,854) * lu(k,2081) + lu(k,2121) = lu(k,2121) - lu(k,855) * lu(k,2081) + lu(k,2161) = lu(k,2161) - lu(k,851) * lu(k,2142) + lu(k,2167) = lu(k,2167) - lu(k,852) * lu(k,2142) + lu(k,2171) = lu(k,2171) - lu(k,853) * lu(k,2142) + lu(k,2172) = lu(k,2172) - lu(k,854) * lu(k,2142) + lu(k,2174) = lu(k,2174) - lu(k,855) * lu(k,2142) + lu(k,2321) = lu(k,2321) - lu(k,851) * lu(k,2298) + lu(k,2327) = lu(k,2327) - lu(k,852) * lu(k,2298) + lu(k,2332) = lu(k,2332) - lu(k,853) * lu(k,2298) + lu(k,2333) = lu(k,2333) - lu(k,854) * lu(k,2298) + lu(k,2335) = lu(k,2335) - lu(k,855) * lu(k,2298) + lu(k,859) = 1._r8 / lu(k,859) + lu(k,860) = lu(k,860) * lu(k,859) + lu(k,861) = lu(k,861) * lu(k,859) + lu(k,862) = lu(k,862) * lu(k,859) + lu(k,863) = lu(k,863) * lu(k,859) + lu(k,864) = lu(k,864) * lu(k,859) + lu(k,865) = lu(k,865) * lu(k,859) + lu(k,866) = lu(k,866) * lu(k,859) + lu(k,867) = lu(k,867) * lu(k,859) + lu(k,962) = lu(k,962) - lu(k,860) * lu(k,959) + lu(k,964) = - lu(k,861) * lu(k,959) + lu(k,965) = lu(k,965) - lu(k,862) * lu(k,959) + lu(k,966) = lu(k,966) - lu(k,863) * lu(k,959) + lu(k,967) = lu(k,967) - lu(k,864) * lu(k,959) + lu(k,968) = lu(k,968) - lu(k,865) * lu(k,959) + lu(k,969) = - lu(k,866) * lu(k,959) + lu(k,970) = lu(k,970) - lu(k,867) * lu(k,959) + lu(k,1755) = lu(k,1755) - lu(k,860) * lu(k,1740) + lu(k,1780) = lu(k,1780) - lu(k,861) * lu(k,1740) + lu(k,1781) = lu(k,1781) - lu(k,862) * lu(k,1740) + lu(k,1782) = lu(k,1782) - lu(k,863) * lu(k,1740) + lu(k,1784) = lu(k,1784) - lu(k,864) * lu(k,1740) + lu(k,1786) = lu(k,1786) - lu(k,865) * lu(k,1740) + lu(k,1792) = lu(k,1792) - lu(k,866) * lu(k,1740) + lu(k,1795) = lu(k,1795) - lu(k,867) * lu(k,1740) + lu(k,1890) = lu(k,1890) - lu(k,860) * lu(k,1882) + lu(k,1913) = lu(k,1913) - lu(k,861) * lu(k,1882) + lu(k,1914) = lu(k,1914) - lu(k,862) * lu(k,1882) + lu(k,1915) = lu(k,1915) - lu(k,863) * lu(k,1882) + lu(k,1917) = lu(k,1917) - lu(k,864) * lu(k,1882) + lu(k,1919) = lu(k,1919) - lu(k,865) * lu(k,1882) + lu(k,1925) = lu(k,1925) - lu(k,866) * lu(k,1882) + lu(k,1928) = lu(k,1928) - lu(k,867) * lu(k,1882) + lu(k,2149) = lu(k,2149) - lu(k,860) * lu(k,2143) + lu(k,2170) = lu(k,2170) - lu(k,861) * lu(k,2143) + lu(k,2171) = lu(k,2171) - lu(k,862) * lu(k,2143) + lu(k,2172) = lu(k,2172) - lu(k,863) * lu(k,2143) + lu(k,2174) = lu(k,2174) - lu(k,864) * lu(k,2143) + lu(k,2176) = lu(k,2176) - lu(k,865) * lu(k,2143) + lu(k,2182) = lu(k,2182) - lu(k,866) * lu(k,2143) + lu(k,2185) = lu(k,2185) - lu(k,867) * lu(k,2143) + lu(k,2203) = - lu(k,860) * lu(k,2198) + lu(k,2211) = lu(k,2211) - lu(k,861) * lu(k,2198) + lu(k,2212) = lu(k,2212) - lu(k,862) * lu(k,2198) + lu(k,2213) = lu(k,2213) - lu(k,863) * lu(k,2198) + lu(k,2215) = lu(k,2215) - lu(k,864) * lu(k,2198) + lu(k,2217) = lu(k,2217) - lu(k,865) * lu(k,2198) + lu(k,2223) = lu(k,2223) - lu(k,866) * lu(k,2198) + lu(k,2226) = lu(k,2226) - lu(k,867) * lu(k,2198) + lu(k,2308) = lu(k,2308) - lu(k,860) * lu(k,2299) + lu(k,2331) = lu(k,2331) - lu(k,861) * lu(k,2299) + lu(k,2332) = lu(k,2332) - lu(k,862) * lu(k,2299) + lu(k,2333) = lu(k,2333) - lu(k,863) * lu(k,2299) + lu(k,2335) = lu(k,2335) - lu(k,864) * lu(k,2299) + lu(k,2337) = lu(k,2337) - lu(k,865) * lu(k,2299) + lu(k,2343) = lu(k,2343) - lu(k,866) * lu(k,2299) + lu(k,2346) = lu(k,2346) - lu(k,867) * lu(k,2299) + end do + end subroutine lu_fac18 + subroutine lu_fac19( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,868) = 1._r8 / lu(k,868) + lu(k,869) = lu(k,869) * lu(k,868) + lu(k,870) = lu(k,870) * lu(k,868) + lu(k,871) = lu(k,871) * lu(k,868) + lu(k,872) = lu(k,872) * lu(k,868) + lu(k,913) = lu(k,913) - lu(k,869) * lu(k,907) + lu(k,922) = lu(k,922) - lu(k,870) * lu(k,907) + lu(k,923) = lu(k,923) - lu(k,871) * lu(k,907) + lu(k,926) = - lu(k,872) * lu(k,907) + lu(k,941) = lu(k,941) - lu(k,869) * lu(k,935) + lu(k,950) = lu(k,950) - lu(k,870) * lu(k,935) + lu(k,951) = lu(k,951) - lu(k,871) * lu(k,935) + lu(k,954) = - lu(k,872) * lu(k,935) + lu(k,1024) = lu(k,1024) - lu(k,869) * lu(k,1022) + lu(k,1034) = lu(k,1034) - lu(k,870) * lu(k,1022) + lu(k,1035) = lu(k,1035) - lu(k,871) * lu(k,1022) + lu(k,1040) = lu(k,1040) - lu(k,872) * lu(k,1022) + lu(k,1225) = - lu(k,869) * lu(k,1224) + lu(k,1234) = lu(k,1234) - lu(k,870) * lu(k,1224) + lu(k,1235) = lu(k,1235) - lu(k,871) * lu(k,1224) + lu(k,1238) = lu(k,1238) - lu(k,872) * lu(k,1224) + lu(k,1351) = lu(k,1351) - lu(k,869) * lu(k,1349) + lu(k,1365) = lu(k,1365) - lu(k,870) * lu(k,1349) + lu(k,1366) = lu(k,1366) - lu(k,871) * lu(k,1349) + lu(k,1372) = - lu(k,872) * lu(k,1349) + lu(k,1521) = - lu(k,869) * lu(k,1520) + lu(k,1531) = lu(k,1531) - lu(k,870) * lu(k,1520) + lu(k,1533) = lu(k,1533) - lu(k,871) * lu(k,1520) + lu(k,1543) = lu(k,1543) - lu(k,872) * lu(k,1520) + lu(k,1754) = lu(k,1754) - lu(k,869) * lu(k,1741) + lu(k,1784) = lu(k,1784) - lu(k,870) * lu(k,1741) + lu(k,1786) = lu(k,1786) - lu(k,871) * lu(k,1741) + lu(k,1796) = lu(k,1796) - lu(k,872) * lu(k,1741) + lu(k,1889) = lu(k,1889) - lu(k,869) * lu(k,1883) + lu(k,1917) = lu(k,1917) - lu(k,870) * lu(k,1883) + lu(k,1919) = lu(k,1919) - lu(k,871) * lu(k,1883) + lu(k,1929) = lu(k,1929) - lu(k,872) * lu(k,1883) + lu(k,1955) = lu(k,1955) - lu(k,869) * lu(k,1946) + lu(k,1982) = lu(k,1982) - lu(k,870) * lu(k,1946) + lu(k,1984) = lu(k,1984) - lu(k,871) * lu(k,1946) + lu(k,1994) = lu(k,1994) - lu(k,872) * lu(k,1946) + lu(k,2092) = - lu(k,869) * lu(k,2082) + lu(k,2121) = lu(k,2121) - lu(k,870) * lu(k,2082) + lu(k,2123) = lu(k,2123) - lu(k,871) * lu(k,2082) + lu(k,2133) = - lu(k,872) * lu(k,2082) + lu(k,2202) = - lu(k,869) * lu(k,2199) + lu(k,2215) = lu(k,2215) - lu(k,870) * lu(k,2199) + lu(k,2217) = lu(k,2217) - lu(k,871) * lu(k,2199) + lu(k,2227) = lu(k,2227) - lu(k,872) * lu(k,2199) + lu(k,2307) = lu(k,2307) - lu(k,869) * lu(k,2300) + lu(k,2335) = lu(k,2335) - lu(k,870) * lu(k,2300) + lu(k,2337) = lu(k,2337) - lu(k,871) * lu(k,2300) + lu(k,2347) = lu(k,2347) - lu(k,872) * lu(k,2300) + lu(k,873) = 1._r8 / lu(k,873) + lu(k,874) = lu(k,874) * lu(k,873) + lu(k,875) = lu(k,875) * lu(k,873) + lu(k,876) = lu(k,876) * lu(k,873) + lu(k,877) = lu(k,877) * lu(k,873) + lu(k,878) = lu(k,878) * lu(k,873) + lu(k,879) = lu(k,879) * lu(k,873) + lu(k,880) = lu(k,880) * lu(k,873) + lu(k,881) = lu(k,881) * lu(k,873) + lu(k,1006) = lu(k,1006) - lu(k,874) * lu(k,1005) + lu(k,1009) = lu(k,1009) - lu(k,875) * lu(k,1005) + lu(k,1010) = lu(k,1010) - lu(k,876) * lu(k,1005) + lu(k,1014) = lu(k,1014) - lu(k,877) * lu(k,1005) + lu(k,1015) = lu(k,1015) - lu(k,878) * lu(k,1005) + lu(k,1016) = lu(k,1016) - lu(k,879) * lu(k,1005) + lu(k,1017) = - lu(k,880) * lu(k,1005) + lu(k,1018) = - lu(k,881) * lu(k,1005) + lu(k,1300) = lu(k,1300) - lu(k,874) * lu(k,1299) + lu(k,1306) = lu(k,1306) - lu(k,875) * lu(k,1299) + lu(k,1309) = lu(k,1309) - lu(k,876) * lu(k,1299) + lu(k,1318) = lu(k,1318) - lu(k,877) * lu(k,1299) + lu(k,1319) = lu(k,1319) - lu(k,878) * lu(k,1299) + lu(k,1320) = lu(k,1320) - lu(k,879) * lu(k,1299) + lu(k,1324) = lu(k,1324) - lu(k,880) * lu(k,1299) + lu(k,1325) = lu(k,1325) - lu(k,881) * lu(k,1299) + lu(k,1560) = lu(k,1560) - lu(k,874) * lu(k,1558) + lu(k,1564) = lu(k,1564) - lu(k,875) * lu(k,1558) + lu(k,1565) = lu(k,1565) - lu(k,876) * lu(k,1558) + lu(k,1574) = lu(k,1574) - lu(k,877) * lu(k,1558) + lu(k,1576) = lu(k,1576) - lu(k,878) * lu(k,1558) + lu(k,1578) = lu(k,1578) - lu(k,879) * lu(k,1558) + lu(k,1584) = lu(k,1584) - lu(k,880) * lu(k,1558) + lu(k,1587) = lu(k,1587) - lu(k,881) * lu(k,1558) + lu(k,1749) = lu(k,1749) - lu(k,874) * lu(k,1742) + lu(k,1764) = lu(k,1764) - lu(k,875) * lu(k,1742) + lu(k,1768) = lu(k,1768) - lu(k,876) * lu(k,1742) + lu(k,1782) = lu(k,1782) - lu(k,877) * lu(k,1742) + lu(k,1784) = lu(k,1784) - lu(k,878) * lu(k,1742) + lu(k,1786) = lu(k,1786) - lu(k,879) * lu(k,1742) + lu(k,1792) = lu(k,1792) - lu(k,880) * lu(k,1742) + lu(k,1795) = lu(k,1795) - lu(k,881) * lu(k,1742) + lu(k,1887) = lu(k,1887) - lu(k,874) * lu(k,1884) + lu(k,1898) = lu(k,1898) - lu(k,875) * lu(k,1884) + lu(k,1902) = lu(k,1902) - lu(k,876) * lu(k,1884) + lu(k,1915) = lu(k,1915) - lu(k,877) * lu(k,1884) + lu(k,1917) = lu(k,1917) - lu(k,878) * lu(k,1884) + lu(k,1919) = lu(k,1919) - lu(k,879) * lu(k,1884) + lu(k,1925) = lu(k,1925) - lu(k,880) * lu(k,1884) + lu(k,1928) = lu(k,1928) - lu(k,881) * lu(k,1884) + lu(k,2304) = lu(k,2304) - lu(k,874) * lu(k,2301) + lu(k,2317) = lu(k,2317) - lu(k,875) * lu(k,2301) + lu(k,2321) = lu(k,2321) - lu(k,876) * lu(k,2301) + lu(k,2333) = lu(k,2333) - lu(k,877) * lu(k,2301) + lu(k,2335) = lu(k,2335) - lu(k,878) * lu(k,2301) + lu(k,2337) = lu(k,2337) - lu(k,879) * lu(k,2301) + lu(k,2343) = lu(k,2343) - lu(k,880) * lu(k,2301) + lu(k,2346) = lu(k,2346) - lu(k,881) * lu(k,2301) + lu(k,883) = 1._r8 / lu(k,883) + lu(k,884) = lu(k,884) * lu(k,883) + lu(k,885) = lu(k,885) * lu(k,883) + lu(k,886) = lu(k,886) * lu(k,883) + lu(k,887) = lu(k,887) * lu(k,883) + lu(k,888) = lu(k,888) * lu(k,883) + lu(k,889) = lu(k,889) * lu(k,883) + lu(k,890) = lu(k,890) * lu(k,883) + lu(k,891) = lu(k,891) * lu(k,883) + lu(k,1251) = lu(k,1251) - lu(k,884) * lu(k,1250) + lu(k,1252) = - lu(k,885) * lu(k,1250) + lu(k,1253) = - lu(k,886) * lu(k,1250) + lu(k,1255) = lu(k,1255) - lu(k,887) * lu(k,1250) + lu(k,1257) = lu(k,1257) - lu(k,888) * lu(k,1250) + lu(k,1259) = - lu(k,889) * lu(k,1250) + lu(k,1260) = - lu(k,890) * lu(k,1250) + lu(k,1262) = lu(k,1262) - lu(k,891) * lu(k,1250) + lu(k,1461) = lu(k,1461) - lu(k,884) * lu(k,1458) + lu(k,1462) = lu(k,1462) - lu(k,885) * lu(k,1458) + lu(k,1463) = - lu(k,886) * lu(k,1458) + lu(k,1467) = lu(k,1467) - lu(k,887) * lu(k,1458) + lu(k,1470) = lu(k,1470) - lu(k,888) * lu(k,1458) + lu(k,1472) = - lu(k,889) * lu(k,1458) + lu(k,1473) = lu(k,1473) - lu(k,890) * lu(k,1458) + lu(k,1475) = lu(k,1475) - lu(k,891) * lu(k,1458) + lu(k,1478) = - lu(k,884) * lu(k,1477) + lu(k,1479) = - lu(k,885) * lu(k,1477) + lu(k,1480) = lu(k,1480) - lu(k,886) * lu(k,1477) + lu(k,1485) = lu(k,1485) - lu(k,887) * lu(k,1477) + lu(k,1488) = lu(k,1488) - lu(k,888) * lu(k,1477) + lu(k,1490) = lu(k,1490) - lu(k,889) * lu(k,1477) + lu(k,1491) = - lu(k,890) * lu(k,1477) + lu(k,1493) = lu(k,1493) - lu(k,891) * lu(k,1477) + lu(k,1611) = lu(k,1611) - lu(k,884) * lu(k,1610) + lu(k,1613) = lu(k,1613) - lu(k,885) * lu(k,1610) + lu(k,1614) = - lu(k,886) * lu(k,1610) + lu(k,1619) = lu(k,1619) - lu(k,887) * lu(k,1610) + lu(k,1624) = lu(k,1624) - lu(k,888) * lu(k,1610) + lu(k,1626) = - lu(k,889) * lu(k,1610) + lu(k,1627) = lu(k,1627) - lu(k,890) * lu(k,1610) + lu(k,1631) = lu(k,1631) - lu(k,891) * lu(k,1610) + lu(k,1769) = lu(k,1769) - lu(k,884) * lu(k,1743) + lu(k,1778) = lu(k,1778) - lu(k,885) * lu(k,1743) + lu(k,1779) = lu(k,1779) - lu(k,886) * lu(k,1743) + lu(k,1784) = lu(k,1784) - lu(k,887) * lu(k,1743) + lu(k,1789) = lu(k,1789) - lu(k,888) * lu(k,1743) + lu(k,1791) = lu(k,1791) - lu(k,889) * lu(k,1743) + lu(k,1792) = lu(k,1792) - lu(k,890) * lu(k,1743) + lu(k,1796) = lu(k,1796) - lu(k,891) * lu(k,1743) + lu(k,2353) = lu(k,2353) - lu(k,884) * lu(k,2351) + lu(k,2356) = - lu(k,885) * lu(k,2351) + lu(k,2357) = - lu(k,886) * lu(k,2351) + lu(k,2362) = lu(k,2362) - lu(k,887) * lu(k,2351) + lu(k,2367) = lu(k,2367) - lu(k,888) * lu(k,2351) + lu(k,2369) = - lu(k,889) * lu(k,2351) + lu(k,2370) = - lu(k,890) * lu(k,2351) + lu(k,2374) = lu(k,2374) - lu(k,891) * lu(k,2351) + lu(k,893) = 1._r8 / lu(k,893) + lu(k,894) = lu(k,894) * lu(k,893) + lu(k,895) = lu(k,895) * lu(k,893) + lu(k,896) = lu(k,896) * lu(k,893) + lu(k,897) = lu(k,897) * lu(k,893) + lu(k,898) = lu(k,898) * lu(k,893) + lu(k,1430) = lu(k,1430) - lu(k,894) * lu(k,1429) + lu(k,1434) = lu(k,1434) - lu(k,895) * lu(k,1429) + lu(k,1436) = - lu(k,896) * lu(k,1429) + lu(k,1438) = lu(k,1438) - lu(k,897) * lu(k,1429) + lu(k,1443) = - lu(k,898) * lu(k,1429) + lu(k,1502) = lu(k,1502) - lu(k,894) * lu(k,1499) + lu(k,1508) = lu(k,1508) - lu(k,895) * lu(k,1499) + lu(k,1510) = lu(k,1510) - lu(k,896) * lu(k,1499) + lu(k,1512) = lu(k,1512) - lu(k,897) * lu(k,1499) + lu(k,1517) = - lu(k,898) * lu(k,1499) + lu(k,1568) = lu(k,1568) - lu(k,894) * lu(k,1559) + lu(k,1576) = lu(k,1576) - lu(k,895) * lu(k,1559) + lu(k,1578) = lu(k,1578) - lu(k,896) * lu(k,1559) + lu(k,1580) = lu(k,1580) - lu(k,897) * lu(k,1559) + lu(k,1588) = lu(k,1588) - lu(k,898) * lu(k,1559) + lu(k,1776) = lu(k,1776) - lu(k,894) * lu(k,1744) + lu(k,1784) = lu(k,1784) - lu(k,895) * lu(k,1744) + lu(k,1786) = lu(k,1786) - lu(k,896) * lu(k,1744) + lu(k,1788) = lu(k,1788) - lu(k,897) * lu(k,1744) + lu(k,1796) = lu(k,1796) - lu(k,898) * lu(k,1744) + lu(k,1802) = lu(k,1802) - lu(k,894) * lu(k,1801) + lu(k,1809) = lu(k,1809) - lu(k,895) * lu(k,1801) + lu(k,1811) = lu(k,1811) - lu(k,896) * lu(k,1801) + lu(k,1813) = lu(k,1813) - lu(k,897) * lu(k,1801) + lu(k,1821) = lu(k,1821) - lu(k,898) * lu(k,1801) + lu(k,1974) = lu(k,1974) - lu(k,894) * lu(k,1947) + lu(k,1982) = lu(k,1982) - lu(k,895) * lu(k,1947) + lu(k,1984) = lu(k,1984) - lu(k,896) * lu(k,1947) + lu(k,1986) = lu(k,1986) - lu(k,897) * lu(k,1947) + lu(k,1994) = lu(k,1994) - lu(k,898) * lu(k,1947) + lu(k,2008) = lu(k,2008) - lu(k,894) * lu(k,2004) + lu(k,2016) = lu(k,2016) - lu(k,895) * lu(k,2004) + lu(k,2018) = lu(k,2018) - lu(k,896) * lu(k,2004) + lu(k,2020) = lu(k,2020) - lu(k,897) * lu(k,2004) + lu(k,2028) = lu(k,2028) - lu(k,898) * lu(k,2004) + lu(k,2113) = - lu(k,894) * lu(k,2083) + lu(k,2121) = lu(k,2121) - lu(k,895) * lu(k,2083) + lu(k,2123) = lu(k,2123) - lu(k,896) * lu(k,2083) + lu(k,2125) = lu(k,2125) - lu(k,897) * lu(k,2083) + lu(k,2133) = lu(k,2133) - lu(k,898) * lu(k,2083) + lu(k,2235) = lu(k,2235) - lu(k,894) * lu(k,2233) + lu(k,2242) = lu(k,2242) - lu(k,895) * lu(k,2233) + lu(k,2244) = lu(k,2244) - lu(k,896) * lu(k,2233) + lu(k,2246) = lu(k,2246) - lu(k,897) * lu(k,2233) + lu(k,2254) = lu(k,2254) - lu(k,898) * lu(k,2233) + lu(k,2354) = - lu(k,894) * lu(k,2352) + lu(k,2362) = lu(k,2362) - lu(k,895) * lu(k,2352) + lu(k,2364) = - lu(k,896) * lu(k,2352) + lu(k,2366) = lu(k,2366) - lu(k,897) * lu(k,2352) + lu(k,2374) = lu(k,2374) - lu(k,898) * lu(k,2352) + end do + end subroutine lu_fac19 + subroutine lu_fac20( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,908) = 1._r8 / lu(k,908) + lu(k,909) = lu(k,909) * lu(k,908) + lu(k,910) = lu(k,910) * lu(k,908) + lu(k,911) = lu(k,911) * lu(k,908) + lu(k,912) = lu(k,912) * lu(k,908) + lu(k,913) = lu(k,913) * lu(k,908) + lu(k,914) = lu(k,914) * lu(k,908) + lu(k,915) = lu(k,915) * lu(k,908) + lu(k,916) = lu(k,916) * lu(k,908) + lu(k,917) = lu(k,917) * lu(k,908) + lu(k,918) = lu(k,918) * lu(k,908) + lu(k,919) = lu(k,919) * lu(k,908) + lu(k,920) = lu(k,920) * lu(k,908) + lu(k,921) = lu(k,921) * lu(k,908) + lu(k,922) = lu(k,922) * lu(k,908) + lu(k,923) = lu(k,923) * lu(k,908) + lu(k,924) = lu(k,924) * lu(k,908) + lu(k,925) = lu(k,925) * lu(k,908) + lu(k,926) = lu(k,926) * lu(k,908) + lu(k,1747) = lu(k,1747) - lu(k,909) * lu(k,1745) + lu(k,1748) = lu(k,1748) - lu(k,910) * lu(k,1745) + lu(k,1749) = lu(k,1749) - lu(k,911) * lu(k,1745) + lu(k,1751) = lu(k,1751) - lu(k,912) * lu(k,1745) + lu(k,1754) = lu(k,1754) - lu(k,913) * lu(k,1745) + lu(k,1756) = lu(k,1756) - lu(k,914) * lu(k,1745) + lu(k,1759) = lu(k,1759) - lu(k,915) * lu(k,1745) + lu(k,1761) = lu(k,1761) - lu(k,916) * lu(k,1745) + lu(k,1763) = lu(k,1763) - lu(k,917) * lu(k,1745) + lu(k,1764) = lu(k,1764) - lu(k,918) * lu(k,1745) + lu(k,1768) = lu(k,1768) - lu(k,919) * lu(k,1745) + lu(k,1775) = lu(k,1775) - lu(k,920) * lu(k,1745) + lu(k,1781) = lu(k,1781) - lu(k,921) * lu(k,1745) + lu(k,1784) = lu(k,1784) - lu(k,922) * lu(k,1745) + lu(k,1786) = lu(k,1786) - lu(k,923) * lu(k,1745) + lu(k,1787) = lu(k,1787) - lu(k,924) * lu(k,1745) + lu(k,1791) = lu(k,1791) - lu(k,925) * lu(k,1745) + lu(k,1796) = lu(k,1796) - lu(k,926) * lu(k,1745) + lu(k,1950) = lu(k,1950) - lu(k,909) * lu(k,1948) + lu(k,1951) = lu(k,1951) - lu(k,910) * lu(k,1948) + lu(k,1952) = lu(k,1952) - lu(k,911) * lu(k,1948) + lu(k,1953) = lu(k,1953) - lu(k,912) * lu(k,1948) + lu(k,1955) = lu(k,1955) - lu(k,913) * lu(k,1948) + lu(k,1957) = - lu(k,914) * lu(k,1948) + lu(k,1959) = lu(k,1959) - lu(k,915) * lu(k,1948) + lu(k,1961) = - lu(k,916) * lu(k,1948) + lu(k,1963) = lu(k,1963) - lu(k,917) * lu(k,1948) + lu(k,1964) = lu(k,1964) - lu(k,918) * lu(k,1948) + lu(k,1967) = lu(k,1967) - lu(k,919) * lu(k,1948) + lu(k,1973) = lu(k,1973) - lu(k,920) * lu(k,1948) + lu(k,1979) = lu(k,1979) - lu(k,921) * lu(k,1948) + lu(k,1982) = lu(k,1982) - lu(k,922) * lu(k,1948) + lu(k,1984) = lu(k,1984) - lu(k,923) * lu(k,1948) + lu(k,1985) = lu(k,1985) - lu(k,924) * lu(k,1948) + lu(k,1989) = lu(k,1989) - lu(k,925) * lu(k,1948) + lu(k,1994) = lu(k,1994) - lu(k,926) * lu(k,1948) + lu(k,2086) = - lu(k,909) * lu(k,2084) + lu(k,2087) = lu(k,2087) - lu(k,910) * lu(k,2084) + lu(k,2088) = lu(k,2088) - lu(k,911) * lu(k,2084) + lu(k,2089) = lu(k,2089) - lu(k,912) * lu(k,2084) + lu(k,2092) = lu(k,2092) - lu(k,913) * lu(k,2084) + lu(k,2094) = lu(k,2094) - lu(k,914) * lu(k,2084) + lu(k,2097) = - lu(k,915) * lu(k,2084) + lu(k,2099) = - lu(k,916) * lu(k,2084) + lu(k,2101) = - lu(k,917) * lu(k,2084) + lu(k,2102) = lu(k,2102) - lu(k,918) * lu(k,2084) + lu(k,2106) = lu(k,2106) - lu(k,919) * lu(k,2084) + lu(k,2112) = lu(k,2112) - lu(k,920) * lu(k,2084) + lu(k,2118) = lu(k,2118) - lu(k,921) * lu(k,2084) + lu(k,2121) = lu(k,2121) - lu(k,922) * lu(k,2084) + lu(k,2123) = lu(k,2123) - lu(k,923) * lu(k,2084) + lu(k,2124) = lu(k,2124) - lu(k,924) * lu(k,2084) + lu(k,2128) = lu(k,2128) - lu(k,925) * lu(k,2084) + lu(k,2133) = lu(k,2133) - lu(k,926) * lu(k,2084) + lu(k,936) = 1._r8 / lu(k,936) + lu(k,937) = lu(k,937) * lu(k,936) + lu(k,938) = lu(k,938) * lu(k,936) + lu(k,939) = lu(k,939) * lu(k,936) + lu(k,940) = lu(k,940) * lu(k,936) + lu(k,941) = lu(k,941) * lu(k,936) + lu(k,942) = lu(k,942) * lu(k,936) + lu(k,943) = lu(k,943) * lu(k,936) + lu(k,944) = lu(k,944) * lu(k,936) + lu(k,945) = lu(k,945) * lu(k,936) + lu(k,946) = lu(k,946) * lu(k,936) + lu(k,947) = lu(k,947) * lu(k,936) + lu(k,948) = lu(k,948) * lu(k,936) + lu(k,949) = lu(k,949) * lu(k,936) + lu(k,950) = lu(k,950) * lu(k,936) + lu(k,951) = lu(k,951) * lu(k,936) + lu(k,952) = lu(k,952) * lu(k,936) + lu(k,953) = lu(k,953) * lu(k,936) + lu(k,954) = lu(k,954) * lu(k,936) + lu(k,1747) = lu(k,1747) - lu(k,937) * lu(k,1746) + lu(k,1748) = lu(k,1748) - lu(k,938) * lu(k,1746) + lu(k,1749) = lu(k,1749) - lu(k,939) * lu(k,1746) + lu(k,1751) = lu(k,1751) - lu(k,940) * lu(k,1746) + lu(k,1754) = lu(k,1754) - lu(k,941) * lu(k,1746) + lu(k,1756) = lu(k,1756) - lu(k,942) * lu(k,1746) + lu(k,1759) = lu(k,1759) - lu(k,943) * lu(k,1746) + lu(k,1761) = lu(k,1761) - lu(k,944) * lu(k,1746) + lu(k,1763) = lu(k,1763) - lu(k,945) * lu(k,1746) + lu(k,1764) = lu(k,1764) - lu(k,946) * lu(k,1746) + lu(k,1768) = lu(k,1768) - lu(k,947) * lu(k,1746) + lu(k,1775) = lu(k,1775) - lu(k,948) * lu(k,1746) + lu(k,1781) = lu(k,1781) - lu(k,949) * lu(k,1746) + lu(k,1784) = lu(k,1784) - lu(k,950) * lu(k,1746) + lu(k,1786) = lu(k,1786) - lu(k,951) * lu(k,1746) + lu(k,1787) = lu(k,1787) - lu(k,952) * lu(k,1746) + lu(k,1791) = lu(k,1791) - lu(k,953) * lu(k,1746) + lu(k,1796) = lu(k,1796) - lu(k,954) * lu(k,1746) + lu(k,1950) = lu(k,1950) - lu(k,937) * lu(k,1949) + lu(k,1951) = lu(k,1951) - lu(k,938) * lu(k,1949) + lu(k,1952) = lu(k,1952) - lu(k,939) * lu(k,1949) + lu(k,1953) = lu(k,1953) - lu(k,940) * lu(k,1949) + lu(k,1955) = lu(k,1955) - lu(k,941) * lu(k,1949) + lu(k,1957) = lu(k,1957) - lu(k,942) * lu(k,1949) + lu(k,1959) = lu(k,1959) - lu(k,943) * lu(k,1949) + lu(k,1961) = lu(k,1961) - lu(k,944) * lu(k,1949) + lu(k,1963) = lu(k,1963) - lu(k,945) * lu(k,1949) + lu(k,1964) = lu(k,1964) - lu(k,946) * lu(k,1949) + lu(k,1967) = lu(k,1967) - lu(k,947) * lu(k,1949) + lu(k,1973) = lu(k,1973) - lu(k,948) * lu(k,1949) + lu(k,1979) = lu(k,1979) - lu(k,949) * lu(k,1949) + lu(k,1982) = lu(k,1982) - lu(k,950) * lu(k,1949) + lu(k,1984) = lu(k,1984) - lu(k,951) * lu(k,1949) + lu(k,1985) = lu(k,1985) - lu(k,952) * lu(k,1949) + lu(k,1989) = lu(k,1989) - lu(k,953) * lu(k,1949) + lu(k,1994) = lu(k,1994) - lu(k,954) * lu(k,1949) + lu(k,2086) = lu(k,2086) - lu(k,937) * lu(k,2085) + lu(k,2087) = lu(k,2087) - lu(k,938) * lu(k,2085) + lu(k,2088) = lu(k,2088) - lu(k,939) * lu(k,2085) + lu(k,2089) = lu(k,2089) - lu(k,940) * lu(k,2085) + lu(k,2092) = lu(k,2092) - lu(k,941) * lu(k,2085) + lu(k,2094) = lu(k,2094) - lu(k,942) * lu(k,2085) + lu(k,2097) = lu(k,2097) - lu(k,943) * lu(k,2085) + lu(k,2099) = lu(k,2099) - lu(k,944) * lu(k,2085) + lu(k,2101) = lu(k,2101) - lu(k,945) * lu(k,2085) + lu(k,2102) = lu(k,2102) - lu(k,946) * lu(k,2085) + lu(k,2106) = lu(k,2106) - lu(k,947) * lu(k,2085) + lu(k,2112) = lu(k,2112) - lu(k,948) * lu(k,2085) + lu(k,2118) = lu(k,2118) - lu(k,949) * lu(k,2085) + lu(k,2121) = lu(k,2121) - lu(k,950) * lu(k,2085) + lu(k,2123) = lu(k,2123) - lu(k,951) * lu(k,2085) + lu(k,2124) = lu(k,2124) - lu(k,952) * lu(k,2085) + lu(k,2128) = lu(k,2128) - lu(k,953) * lu(k,2085) + lu(k,2133) = lu(k,2133) - lu(k,954) * lu(k,2085) + lu(k,960) = 1._r8 / lu(k,960) + lu(k,961) = lu(k,961) * lu(k,960) + lu(k,962) = lu(k,962) * lu(k,960) + lu(k,963) = lu(k,963) * lu(k,960) + lu(k,964) = lu(k,964) * lu(k,960) + lu(k,965) = lu(k,965) * lu(k,960) + lu(k,966) = lu(k,966) * lu(k,960) + lu(k,967) = lu(k,967) * lu(k,960) + lu(k,968) = lu(k,968) * lu(k,960) + lu(k,969) = lu(k,969) * lu(k,960) + lu(k,970) = lu(k,970) * lu(k,960) + lu(k,1748) = lu(k,1748) - lu(k,961) * lu(k,1747) + lu(k,1755) = lu(k,1755) - lu(k,962) * lu(k,1747) + lu(k,1775) = lu(k,1775) - lu(k,963) * lu(k,1747) + lu(k,1780) = lu(k,1780) - lu(k,964) * lu(k,1747) + lu(k,1781) = lu(k,1781) - lu(k,965) * lu(k,1747) + lu(k,1782) = lu(k,1782) - lu(k,966) * lu(k,1747) + lu(k,1784) = lu(k,1784) - lu(k,967) * lu(k,1747) + lu(k,1786) = lu(k,1786) - lu(k,968) * lu(k,1747) + lu(k,1792) = lu(k,1792) - lu(k,969) * lu(k,1747) + lu(k,1795) = lu(k,1795) - lu(k,970) * lu(k,1747) + lu(k,1886) = lu(k,1886) - lu(k,961) * lu(k,1885) + lu(k,1890) = lu(k,1890) - lu(k,962) * lu(k,1885) + lu(k,1909) = lu(k,1909) - lu(k,963) * lu(k,1885) + lu(k,1913) = lu(k,1913) - lu(k,964) * lu(k,1885) + lu(k,1914) = lu(k,1914) - lu(k,965) * lu(k,1885) + lu(k,1915) = lu(k,1915) - lu(k,966) * lu(k,1885) + lu(k,1917) = lu(k,1917) - lu(k,967) * lu(k,1885) + lu(k,1919) = lu(k,1919) - lu(k,968) * lu(k,1885) + lu(k,1925) = lu(k,1925) - lu(k,969) * lu(k,1885) + lu(k,1928) = lu(k,1928) - lu(k,970) * lu(k,1885) + lu(k,1951) = lu(k,1951) - lu(k,961) * lu(k,1950) + lu(k,1956) = lu(k,1956) - lu(k,962) * lu(k,1950) + lu(k,1973) = lu(k,1973) - lu(k,963) * lu(k,1950) + lu(k,1978) = lu(k,1978) - lu(k,964) * lu(k,1950) + lu(k,1979) = lu(k,1979) - lu(k,965) * lu(k,1950) + lu(k,1980) = lu(k,1980) - lu(k,966) * lu(k,1950) + lu(k,1982) = lu(k,1982) - lu(k,967) * lu(k,1950) + lu(k,1984) = lu(k,1984) - lu(k,968) * lu(k,1950) + lu(k,1990) = lu(k,1990) - lu(k,969) * lu(k,1950) + lu(k,1993) = lu(k,1993) - lu(k,970) * lu(k,1950) + lu(k,2087) = lu(k,2087) - lu(k,961) * lu(k,2086) + lu(k,2093) = lu(k,2093) - lu(k,962) * lu(k,2086) + lu(k,2112) = lu(k,2112) - lu(k,963) * lu(k,2086) + lu(k,2117) = lu(k,2117) - lu(k,964) * lu(k,2086) + lu(k,2118) = lu(k,2118) - lu(k,965) * lu(k,2086) + lu(k,2119) = lu(k,2119) - lu(k,966) * lu(k,2086) + lu(k,2121) = lu(k,2121) - lu(k,967) * lu(k,2086) + lu(k,2123) = lu(k,2123) - lu(k,968) * lu(k,2086) + lu(k,2129) = lu(k,2129) - lu(k,969) * lu(k,2086) + lu(k,2132) = lu(k,2132) - lu(k,970) * lu(k,2086) + lu(k,2303) = lu(k,2303) - lu(k,961) * lu(k,2302) + lu(k,2308) = lu(k,2308) - lu(k,962) * lu(k,2302) + lu(k,2327) = lu(k,2327) - lu(k,963) * lu(k,2302) + lu(k,2331) = lu(k,2331) - lu(k,964) * lu(k,2302) + lu(k,2332) = lu(k,2332) - lu(k,965) * lu(k,2302) + lu(k,2333) = lu(k,2333) - lu(k,966) * lu(k,2302) + lu(k,2335) = lu(k,2335) - lu(k,967) * lu(k,2302) + lu(k,2337) = lu(k,2337) - lu(k,968) * lu(k,2302) + lu(k,2343) = lu(k,2343) - lu(k,969) * lu(k,2302) + lu(k,2346) = lu(k,2346) - lu(k,970) * lu(k,2302) + end do + end subroutine lu_fac20 + subroutine lu_fac21( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,971) = 1._r8 / lu(k,971) + lu(k,972) = lu(k,972) * lu(k,971) + lu(k,973) = lu(k,973) * lu(k,971) + lu(k,974) = lu(k,974) * lu(k,971) + lu(k,975) = lu(k,975) * lu(k,971) + lu(k,976) = lu(k,976) * lu(k,971) + lu(k,1078) = - lu(k,972) * lu(k,1073) + lu(k,1080) = lu(k,1080) - lu(k,973) * lu(k,1073) + lu(k,1084) = lu(k,1084) - lu(k,974) * lu(k,1073) + lu(k,1087) = - lu(k,975) * lu(k,1073) + lu(k,1088) = - lu(k,976) * lu(k,1073) + lu(k,1098) = lu(k,1098) - lu(k,972) * lu(k,1095) + lu(k,1100) = lu(k,1100) - lu(k,973) * lu(k,1095) + lu(k,1103) = lu(k,1103) - lu(k,974) * lu(k,1095) + lu(k,1106) = - lu(k,975) * lu(k,1095) + lu(k,1107) = - lu(k,976) * lu(k,1095) + lu(k,1126) = - lu(k,972) * lu(k,1120) + lu(k,1128) = - lu(k,973) * lu(k,1120) + lu(k,1133) = lu(k,1133) - lu(k,974) * lu(k,1120) + lu(k,1137) = lu(k,1137) - lu(k,975) * lu(k,1120) + lu(k,1139) = - lu(k,976) * lu(k,1120) + lu(k,1148) = - lu(k,972) * lu(k,1143) + lu(k,1150) = - lu(k,973) * lu(k,1143) + lu(k,1155) = lu(k,1155) - lu(k,974) * lu(k,1143) + lu(k,1158) = lu(k,1158) - lu(k,975) * lu(k,1143) + lu(k,1160) = - lu(k,976) * lu(k,1143) + lu(k,1763) = lu(k,1763) - lu(k,972) * lu(k,1748) + lu(k,1775) = lu(k,1775) - lu(k,973) * lu(k,1748) + lu(k,1784) = lu(k,1784) - lu(k,974) * lu(k,1748) + lu(k,1792) = lu(k,1792) - lu(k,975) * lu(k,1748) + lu(k,1796) = lu(k,1796) - lu(k,976) * lu(k,1748) + lu(k,1897) = lu(k,1897) - lu(k,972) * lu(k,1886) + lu(k,1909) = lu(k,1909) - lu(k,973) * lu(k,1886) + lu(k,1917) = lu(k,1917) - lu(k,974) * lu(k,1886) + lu(k,1925) = lu(k,1925) - lu(k,975) * lu(k,1886) + lu(k,1929) = lu(k,1929) - lu(k,976) * lu(k,1886) + lu(k,1963) = lu(k,1963) - lu(k,972) * lu(k,1951) + lu(k,1973) = lu(k,1973) - lu(k,973) * lu(k,1951) + lu(k,1982) = lu(k,1982) - lu(k,974) * lu(k,1951) + lu(k,1990) = lu(k,1990) - lu(k,975) * lu(k,1951) + lu(k,1994) = lu(k,1994) - lu(k,976) * lu(k,1951) + lu(k,2101) = lu(k,2101) - lu(k,972) * lu(k,2087) + lu(k,2112) = lu(k,2112) - lu(k,973) * lu(k,2087) + lu(k,2121) = lu(k,2121) - lu(k,974) * lu(k,2087) + lu(k,2129) = lu(k,2129) - lu(k,975) * lu(k,2087) + lu(k,2133) = lu(k,2133) - lu(k,976) * lu(k,2087) + lu(k,2156) = lu(k,2156) - lu(k,972) * lu(k,2144) + lu(k,2167) = lu(k,2167) - lu(k,973) * lu(k,2144) + lu(k,2174) = lu(k,2174) - lu(k,974) * lu(k,2144) + lu(k,2182) = lu(k,2182) - lu(k,975) * lu(k,2144) + lu(k,2186) = lu(k,2186) - lu(k,976) * lu(k,2144) + lu(k,2316) = lu(k,2316) - lu(k,972) * lu(k,2303) + lu(k,2327) = lu(k,2327) - lu(k,973) * lu(k,2303) + lu(k,2335) = lu(k,2335) - lu(k,974) * lu(k,2303) + lu(k,2343) = lu(k,2343) - lu(k,975) * lu(k,2303) + lu(k,2347) = lu(k,2347) - lu(k,976) * lu(k,2303) + lu(k,978) = 1._r8 / lu(k,978) + lu(k,979) = lu(k,979) * lu(k,978) + lu(k,980) = lu(k,980) * lu(k,978) + lu(k,981) = lu(k,981) * lu(k,978) + lu(k,982) = lu(k,982) * lu(k,978) + lu(k,1008) = - lu(k,979) * lu(k,1006) + lu(k,1009) = lu(k,1009) - lu(k,980) * lu(k,1006) + lu(k,1015) = lu(k,1015) - lu(k,981) * lu(k,1006) + lu(k,1016) = lu(k,1016) - lu(k,982) * lu(k,1006) + lu(k,1109) = lu(k,1109) - lu(k,979) * lu(k,1108) + lu(k,1111) = lu(k,1111) - lu(k,980) * lu(k,1108) + lu(k,1114) = lu(k,1114) - lu(k,981) * lu(k,1108) + lu(k,1115) = lu(k,1115) - lu(k,982) * lu(k,1108) + lu(k,1183) = lu(k,1183) - lu(k,979) * lu(k,1182) + lu(k,1186) = lu(k,1186) - lu(k,980) * lu(k,1182) + lu(k,1193) = lu(k,1193) - lu(k,981) * lu(k,1182) + lu(k,1194) = lu(k,1194) - lu(k,982) * lu(k,1182) + lu(k,1301) = - lu(k,979) * lu(k,1300) + lu(k,1306) = lu(k,1306) - lu(k,980) * lu(k,1300) + lu(k,1319) = lu(k,1319) - lu(k,981) * lu(k,1300) + lu(k,1320) = lu(k,1320) - lu(k,982) * lu(k,1300) + lu(k,1400) = lu(k,1400) - lu(k,979) * lu(k,1398) + lu(k,1403) = lu(k,1403) - lu(k,980) * lu(k,1398) + lu(k,1419) = lu(k,1419) - lu(k,981) * lu(k,1398) + lu(k,1420) = lu(k,1420) - lu(k,982) * lu(k,1398) + lu(k,1562) = lu(k,1562) - lu(k,979) * lu(k,1560) + lu(k,1564) = lu(k,1564) - lu(k,980) * lu(k,1560) + lu(k,1576) = lu(k,1576) - lu(k,981) * lu(k,1560) + lu(k,1578) = lu(k,1578) - lu(k,982) * lu(k,1560) + lu(k,1754) = lu(k,1754) - lu(k,979) * lu(k,1749) + lu(k,1764) = lu(k,1764) - lu(k,980) * lu(k,1749) + lu(k,1784) = lu(k,1784) - lu(k,981) * lu(k,1749) + lu(k,1786) = lu(k,1786) - lu(k,982) * lu(k,1749) + lu(k,1889) = lu(k,1889) - lu(k,979) * lu(k,1887) + lu(k,1898) = lu(k,1898) - lu(k,980) * lu(k,1887) + lu(k,1917) = lu(k,1917) - lu(k,981) * lu(k,1887) + lu(k,1919) = lu(k,1919) - lu(k,982) * lu(k,1887) + lu(k,1955) = lu(k,1955) - lu(k,979) * lu(k,1952) + lu(k,1964) = lu(k,1964) - lu(k,980) * lu(k,1952) + lu(k,1982) = lu(k,1982) - lu(k,981) * lu(k,1952) + lu(k,1984) = lu(k,1984) - lu(k,982) * lu(k,1952) + lu(k,2092) = lu(k,2092) - lu(k,979) * lu(k,2088) + lu(k,2102) = lu(k,2102) - lu(k,980) * lu(k,2088) + lu(k,2121) = lu(k,2121) - lu(k,981) * lu(k,2088) + lu(k,2123) = lu(k,2123) - lu(k,982) * lu(k,2088) + lu(k,2148) = lu(k,2148) - lu(k,979) * lu(k,2145) + lu(k,2157) = lu(k,2157) - lu(k,980) * lu(k,2145) + lu(k,2174) = lu(k,2174) - lu(k,981) * lu(k,2145) + lu(k,2176) = lu(k,2176) - lu(k,982) * lu(k,2145) + lu(k,2202) = lu(k,2202) - lu(k,979) * lu(k,2200) + lu(k,2205) = lu(k,2205) - lu(k,980) * lu(k,2200) + lu(k,2215) = lu(k,2215) - lu(k,981) * lu(k,2200) + lu(k,2217) = lu(k,2217) - lu(k,982) * lu(k,2200) + lu(k,2307) = lu(k,2307) - lu(k,979) * lu(k,2304) + lu(k,2317) = lu(k,2317) - lu(k,980) * lu(k,2304) + lu(k,2335) = lu(k,2335) - lu(k,981) * lu(k,2304) + lu(k,2337) = lu(k,2337) - lu(k,982) * lu(k,2304) + lu(k,985) = 1._r8 / lu(k,985) + lu(k,986) = lu(k,986) * lu(k,985) + lu(k,987) = lu(k,987) * lu(k,985) + lu(k,988) = lu(k,988) * lu(k,985) + lu(k,989) = lu(k,989) * lu(k,985) + lu(k,990) = lu(k,990) * lu(k,985) + lu(k,991) = lu(k,991) * lu(k,985) + lu(k,992) = lu(k,992) * lu(k,985) + lu(k,993) = lu(k,993) * lu(k,985) + lu(k,994) = lu(k,994) * lu(k,985) + lu(k,1571) = lu(k,1571) - lu(k,986) * lu(k,1561) + lu(k,1574) = lu(k,1574) - lu(k,987) * lu(k,1561) + lu(k,1576) = lu(k,1576) - lu(k,988) * lu(k,1561) + lu(k,1580) = lu(k,1580) - lu(k,989) * lu(k,1561) + lu(k,1582) = lu(k,1582) - lu(k,990) * lu(k,1561) + lu(k,1583) = lu(k,1583) - lu(k,991) * lu(k,1561) + lu(k,1585) = lu(k,1585) - lu(k,992) * lu(k,1561) + lu(k,1586) = lu(k,1586) - lu(k,993) * lu(k,1561) + lu(k,1588) = lu(k,1588) - lu(k,994) * lu(k,1561) + lu(k,1779) = lu(k,1779) - lu(k,986) * lu(k,1750) + lu(k,1782) = lu(k,1782) - lu(k,987) * lu(k,1750) + lu(k,1784) = lu(k,1784) - lu(k,988) * lu(k,1750) + lu(k,1788) = lu(k,1788) - lu(k,989) * lu(k,1750) + lu(k,1790) = lu(k,1790) - lu(k,990) * lu(k,1750) + lu(k,1791) = lu(k,1791) - lu(k,991) * lu(k,1750) + lu(k,1793) = lu(k,1793) - lu(k,992) * lu(k,1750) + lu(k,1794) = lu(k,1794) - lu(k,993) * lu(k,1750) + lu(k,1796) = lu(k,1796) - lu(k,994) * lu(k,1750) + lu(k,2011) = lu(k,2011) - lu(k,986) * lu(k,2005) + lu(k,2014) = lu(k,2014) - lu(k,987) * lu(k,2005) + lu(k,2016) = lu(k,2016) - lu(k,988) * lu(k,2005) + lu(k,2020) = lu(k,2020) - lu(k,989) * lu(k,2005) + lu(k,2022) = lu(k,2022) - lu(k,990) * lu(k,2005) + lu(k,2023) = lu(k,2023) - lu(k,991) * lu(k,2005) + lu(k,2025) = lu(k,2025) - lu(k,992) * lu(k,2005) + lu(k,2026) = lu(k,2026) - lu(k,993) * lu(k,2005) + lu(k,2028) = lu(k,2028) - lu(k,994) * lu(k,2005) + lu(k,2055) = lu(k,2055) - lu(k,986) * lu(k,2053) + lu(k,2058) = - lu(k,987) * lu(k,2053) + lu(k,2060) = lu(k,2060) - lu(k,988) * lu(k,2053) + lu(k,2064) = lu(k,2064) - lu(k,989) * lu(k,2053) + lu(k,2066) = lu(k,2066) - lu(k,990) * lu(k,2053) + lu(k,2067) = - lu(k,991) * lu(k,2053) + lu(k,2069) = lu(k,2069) - lu(k,992) * lu(k,2053) + lu(k,2070) = lu(k,2070) - lu(k,993) * lu(k,2053) + lu(k,2072) = lu(k,2072) - lu(k,994) * lu(k,2053) + lu(k,2210) = - lu(k,986) * lu(k,2201) + lu(k,2213) = lu(k,2213) - lu(k,987) * lu(k,2201) + lu(k,2215) = lu(k,2215) - lu(k,988) * lu(k,2201) + lu(k,2219) = lu(k,2219) - lu(k,989) * lu(k,2201) + lu(k,2221) = lu(k,2221) - lu(k,990) * lu(k,2201) + lu(k,2222) = lu(k,2222) - lu(k,991) * lu(k,2201) + lu(k,2224) = lu(k,2224) - lu(k,992) * lu(k,2201) + lu(k,2225) = lu(k,2225) - lu(k,993) * lu(k,2201) + lu(k,2227) = lu(k,2227) - lu(k,994) * lu(k,2201) + lu(k,2237) = - lu(k,986) * lu(k,2234) + lu(k,2240) = lu(k,2240) - lu(k,987) * lu(k,2234) + lu(k,2242) = lu(k,2242) - lu(k,988) * lu(k,2234) + lu(k,2246) = lu(k,2246) - lu(k,989) * lu(k,2234) + lu(k,2248) = lu(k,2248) - lu(k,990) * lu(k,2234) + lu(k,2249) = - lu(k,991) * lu(k,2234) + lu(k,2251) = lu(k,2251) - lu(k,992) * lu(k,2234) + lu(k,2252) = lu(k,2252) - lu(k,993) * lu(k,2234) + lu(k,2254) = lu(k,2254) - lu(k,994) * lu(k,2234) + lu(k,995) = 1._r8 / lu(k,995) + lu(k,996) = lu(k,996) * lu(k,995) + lu(k,997) = lu(k,997) * lu(k,995) + lu(k,998) = lu(k,998) * lu(k,995) + lu(k,999) = lu(k,999) * lu(k,995) + lu(k,1000) = lu(k,1000) * lu(k,995) + lu(k,1001) = lu(k,1001) * lu(k,995) + lu(k,1002) = lu(k,1002) * lu(k,995) + lu(k,1060) = lu(k,1060) - lu(k,996) * lu(k,1059) + lu(k,1061) = - lu(k,997) * lu(k,1059) + lu(k,1062) = - lu(k,998) * lu(k,1059) + lu(k,1063) = - lu(k,999) * lu(k,1059) + lu(k,1067) = lu(k,1067) - lu(k,1000) * lu(k,1059) + lu(k,1068) = lu(k,1068) - lu(k,1001) * lu(k,1059) + lu(k,1069) = lu(k,1069) - lu(k,1002) * lu(k,1059) + lu(k,1122) = - lu(k,996) * lu(k,1121) + lu(k,1123) = - lu(k,997) * lu(k,1121) + lu(k,1125) = - lu(k,998) * lu(k,1121) + lu(k,1127) = - lu(k,999) * lu(k,1121) + lu(k,1133) = lu(k,1133) - lu(k,1000) * lu(k,1121) + lu(k,1134) = lu(k,1134) - lu(k,1001) * lu(k,1121) + lu(k,1136) = - lu(k,1002) * lu(k,1121) + lu(k,1756) = lu(k,1756) - lu(k,996) * lu(k,1751) + lu(k,1759) = lu(k,1759) - lu(k,997) * lu(k,1751) + lu(k,1762) = lu(k,1762) - lu(k,998) * lu(k,1751) + lu(k,1764) = lu(k,1764) - lu(k,999) * lu(k,1751) + lu(k,1784) = lu(k,1784) - lu(k,1000) * lu(k,1751) + lu(k,1786) = lu(k,1786) - lu(k,1001) * lu(k,1751) + lu(k,1791) = lu(k,1791) - lu(k,1002) * lu(k,1751) + lu(k,1891) = lu(k,1891) - lu(k,996) * lu(k,1888) + lu(k,1893) = lu(k,1893) - lu(k,997) * lu(k,1888) + lu(k,1896) = lu(k,1896) - lu(k,998) * lu(k,1888) + lu(k,1898) = lu(k,1898) - lu(k,999) * lu(k,1888) + lu(k,1917) = lu(k,1917) - lu(k,1000) * lu(k,1888) + lu(k,1919) = lu(k,1919) - lu(k,1001) * lu(k,1888) + lu(k,1924) = lu(k,1924) - lu(k,1002) * lu(k,1888) + lu(k,1957) = lu(k,1957) - lu(k,996) * lu(k,1953) + lu(k,1959) = lu(k,1959) - lu(k,997) * lu(k,1953) + lu(k,1962) = - lu(k,998) * lu(k,1953) + lu(k,1964) = lu(k,1964) - lu(k,999) * lu(k,1953) + lu(k,1982) = lu(k,1982) - lu(k,1000) * lu(k,1953) + lu(k,1984) = lu(k,1984) - lu(k,1001) * lu(k,1953) + lu(k,1989) = lu(k,1989) - lu(k,1002) * lu(k,1953) + lu(k,2094) = lu(k,2094) - lu(k,996) * lu(k,2089) + lu(k,2097) = lu(k,2097) - lu(k,997) * lu(k,2089) + lu(k,2100) = lu(k,2100) - lu(k,998) * lu(k,2089) + lu(k,2102) = lu(k,2102) - lu(k,999) * lu(k,2089) + lu(k,2121) = lu(k,2121) - lu(k,1000) * lu(k,2089) + lu(k,2123) = lu(k,2123) - lu(k,1001) * lu(k,2089) + lu(k,2128) = lu(k,2128) - lu(k,1002) * lu(k,2089) + lu(k,2150) = lu(k,2150) - lu(k,996) * lu(k,2146) + lu(k,2152) = lu(k,2152) - lu(k,997) * lu(k,2146) + lu(k,2155) = lu(k,2155) - lu(k,998) * lu(k,2146) + lu(k,2157) = lu(k,2157) - lu(k,999) * lu(k,2146) + lu(k,2174) = lu(k,2174) - lu(k,1000) * lu(k,2146) + lu(k,2176) = lu(k,2176) - lu(k,1001) * lu(k,2146) + lu(k,2181) = - lu(k,1002) * lu(k,2146) + lu(k,2309) = lu(k,2309) - lu(k,996) * lu(k,2305) + lu(k,2312) = lu(k,2312) - lu(k,997) * lu(k,2305) + lu(k,2315) = lu(k,2315) - lu(k,998) * lu(k,2305) + lu(k,2317) = lu(k,2317) - lu(k,999) * lu(k,2305) + lu(k,2335) = lu(k,2335) - lu(k,1000) * lu(k,2305) + lu(k,2337) = lu(k,2337) - lu(k,1001) * lu(k,2305) + lu(k,2342) = lu(k,2342) - lu(k,1002) * lu(k,2305) + end do + end subroutine lu_fac21 + subroutine lu_fac22( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1007) = 1._r8 / lu(k,1007) + lu(k,1008) = lu(k,1008) * lu(k,1007) + lu(k,1009) = lu(k,1009) * lu(k,1007) + lu(k,1010) = lu(k,1010) * lu(k,1007) + lu(k,1011) = lu(k,1011) * lu(k,1007) + lu(k,1012) = lu(k,1012) * lu(k,1007) + lu(k,1013) = lu(k,1013) * lu(k,1007) + lu(k,1014) = lu(k,1014) * lu(k,1007) + lu(k,1015) = lu(k,1015) * lu(k,1007) + lu(k,1016) = lu(k,1016) * lu(k,1007) + lu(k,1017) = lu(k,1017) * lu(k,1007) + lu(k,1018) = lu(k,1018) * lu(k,1007) + lu(k,1205) = - lu(k,1008) * lu(k,1204) + lu(k,1207) = - lu(k,1009) * lu(k,1204) + lu(k,1211) = lu(k,1211) - lu(k,1010) * lu(k,1204) + lu(k,1213) = lu(k,1213) - lu(k,1011) * lu(k,1204) + lu(k,1214) = lu(k,1214) - lu(k,1012) * lu(k,1204) + lu(k,1216) = lu(k,1216) - lu(k,1013) * lu(k,1204) + lu(k,1217) = lu(k,1217) - lu(k,1014) * lu(k,1204) + lu(k,1218) = lu(k,1218) - lu(k,1015) * lu(k,1204) + lu(k,1219) = lu(k,1219) - lu(k,1016) * lu(k,1204) + lu(k,1222) = lu(k,1222) - lu(k,1017) * lu(k,1204) + lu(k,1223) = lu(k,1223) - lu(k,1018) * lu(k,1204) + lu(k,1400) = lu(k,1400) - lu(k,1008) * lu(k,1399) + lu(k,1403) = lu(k,1403) - lu(k,1009) * lu(k,1399) + lu(k,1407) = lu(k,1407) - lu(k,1010) * lu(k,1399) + lu(k,1413) = lu(k,1413) - lu(k,1011) * lu(k,1399) + lu(k,1415) = - lu(k,1012) * lu(k,1399) + lu(k,1417) = lu(k,1417) - lu(k,1013) * lu(k,1399) + lu(k,1418) = lu(k,1418) - lu(k,1014) * lu(k,1399) + lu(k,1419) = lu(k,1419) - lu(k,1015) * lu(k,1399) + lu(k,1420) = lu(k,1420) - lu(k,1016) * lu(k,1399) + lu(k,1424) = lu(k,1424) - lu(k,1017) * lu(k,1399) + lu(k,1425) = lu(k,1425) - lu(k,1018) * lu(k,1399) + lu(k,1754) = lu(k,1754) - lu(k,1008) * lu(k,1752) + lu(k,1764) = lu(k,1764) - lu(k,1009) * lu(k,1752) + lu(k,1768) = lu(k,1768) - lu(k,1010) * lu(k,1752) + lu(k,1775) = lu(k,1775) - lu(k,1011) * lu(k,1752) + lu(k,1779) = lu(k,1779) - lu(k,1012) * lu(k,1752) + lu(k,1781) = lu(k,1781) - lu(k,1013) * lu(k,1752) + lu(k,1782) = lu(k,1782) - lu(k,1014) * lu(k,1752) + lu(k,1784) = lu(k,1784) - lu(k,1015) * lu(k,1752) + lu(k,1786) = lu(k,1786) - lu(k,1016) * lu(k,1752) + lu(k,1792) = lu(k,1792) - lu(k,1017) * lu(k,1752) + lu(k,1795) = lu(k,1795) - lu(k,1018) * lu(k,1752) + lu(k,2092) = lu(k,2092) - lu(k,1008) * lu(k,2090) + lu(k,2102) = lu(k,2102) - lu(k,1009) * lu(k,2090) + lu(k,2106) = lu(k,2106) - lu(k,1010) * lu(k,2090) + lu(k,2112) = lu(k,2112) - lu(k,1011) * lu(k,2090) + lu(k,2116) = lu(k,2116) - lu(k,1012) * lu(k,2090) + lu(k,2118) = lu(k,2118) - lu(k,1013) * lu(k,2090) + lu(k,2119) = lu(k,2119) - lu(k,1014) * lu(k,2090) + lu(k,2121) = lu(k,2121) - lu(k,1015) * lu(k,2090) + lu(k,2123) = lu(k,2123) - lu(k,1016) * lu(k,2090) + lu(k,2129) = lu(k,2129) - lu(k,1017) * lu(k,2090) + lu(k,2132) = lu(k,2132) - lu(k,1018) * lu(k,2090) + lu(k,2148) = lu(k,2148) - lu(k,1008) * lu(k,2147) + lu(k,2157) = lu(k,2157) - lu(k,1009) * lu(k,2147) + lu(k,2161) = lu(k,2161) - lu(k,1010) * lu(k,2147) + lu(k,2167) = lu(k,2167) - lu(k,1011) * lu(k,2147) + lu(k,2169) = lu(k,2169) - lu(k,1012) * lu(k,2147) + lu(k,2171) = lu(k,2171) - lu(k,1013) * lu(k,2147) + lu(k,2172) = lu(k,2172) - lu(k,1014) * lu(k,2147) + lu(k,2174) = lu(k,2174) - lu(k,1015) * lu(k,2147) + lu(k,2176) = lu(k,2176) - lu(k,1016) * lu(k,2147) + lu(k,2182) = lu(k,2182) - lu(k,1017) * lu(k,2147) + lu(k,2185) = lu(k,2185) - lu(k,1018) * lu(k,2147) + lu(k,2307) = lu(k,2307) - lu(k,1008) * lu(k,2306) + lu(k,2317) = lu(k,2317) - lu(k,1009) * lu(k,2306) + lu(k,2321) = lu(k,2321) - lu(k,1010) * lu(k,2306) + lu(k,2327) = lu(k,2327) - lu(k,1011) * lu(k,2306) + lu(k,2330) = lu(k,2330) - lu(k,1012) * lu(k,2306) + lu(k,2332) = lu(k,2332) - lu(k,1013) * lu(k,2306) + lu(k,2333) = lu(k,2333) - lu(k,1014) * lu(k,2306) + lu(k,2335) = lu(k,2335) - lu(k,1015) * lu(k,2306) + lu(k,2337) = lu(k,2337) - lu(k,1016) * lu(k,2306) + lu(k,2343) = lu(k,2343) - lu(k,1017) * lu(k,2306) + lu(k,2346) = lu(k,2346) - lu(k,1018) * lu(k,2306) + lu(k,1023) = 1._r8 / lu(k,1023) + lu(k,1024) = lu(k,1024) * lu(k,1023) + lu(k,1025) = lu(k,1025) * lu(k,1023) + lu(k,1026) = lu(k,1026) * lu(k,1023) + lu(k,1027) = lu(k,1027) * lu(k,1023) + lu(k,1028) = lu(k,1028) * lu(k,1023) + lu(k,1029) = lu(k,1029) * lu(k,1023) + lu(k,1030) = lu(k,1030) * lu(k,1023) + lu(k,1031) = lu(k,1031) * lu(k,1023) + lu(k,1032) = lu(k,1032) * lu(k,1023) + lu(k,1033) = lu(k,1033) * lu(k,1023) + lu(k,1034) = lu(k,1034) * lu(k,1023) + lu(k,1035) = lu(k,1035) * lu(k,1023) + lu(k,1036) = lu(k,1036) * lu(k,1023) + lu(k,1037) = lu(k,1037) * lu(k,1023) + lu(k,1038) = lu(k,1038) * lu(k,1023) + lu(k,1039) = lu(k,1039) * lu(k,1023) + lu(k,1040) = lu(k,1040) * lu(k,1023) + lu(k,1351) = lu(k,1351) - lu(k,1024) * lu(k,1350) + lu(k,1352) = lu(k,1352) - lu(k,1025) * lu(k,1350) + lu(k,1353) = - lu(k,1026) * lu(k,1350) + lu(k,1354) = lu(k,1354) - lu(k,1027) * lu(k,1350) + lu(k,1355) = lu(k,1355) - lu(k,1028) * lu(k,1350) + lu(k,1359) = lu(k,1359) - lu(k,1029) * lu(k,1350) + lu(k,1360) = - lu(k,1030) * lu(k,1350) + lu(k,1362) = - lu(k,1031) * lu(k,1350) + lu(k,1363) = lu(k,1363) - lu(k,1032) * lu(k,1350) + lu(k,1364) = - lu(k,1033) * lu(k,1350) + lu(k,1365) = lu(k,1365) - lu(k,1034) * lu(k,1350) + lu(k,1366) = lu(k,1366) - lu(k,1035) * lu(k,1350) + lu(k,1367) = lu(k,1367) - lu(k,1036) * lu(k,1350) + lu(k,1369) = - lu(k,1037) * lu(k,1350) + lu(k,1370) = lu(k,1370) - lu(k,1038) * lu(k,1350) + lu(k,1371) = - lu(k,1039) * lu(k,1350) + lu(k,1372) = lu(k,1372) - lu(k,1040) * lu(k,1350) + lu(k,1754) = lu(k,1754) - lu(k,1024) * lu(k,1753) + lu(k,1755) = lu(k,1755) - lu(k,1025) * lu(k,1753) + lu(k,1758) = lu(k,1758) - lu(k,1026) * lu(k,1753) + lu(k,1764) = lu(k,1764) - lu(k,1027) * lu(k,1753) + lu(k,1768) = lu(k,1768) - lu(k,1028) * lu(k,1753) + lu(k,1775) = lu(k,1775) - lu(k,1029) * lu(k,1753) + lu(k,1778) = lu(k,1778) - lu(k,1030) * lu(k,1753) + lu(k,1780) = lu(k,1780) - lu(k,1031) * lu(k,1753) + lu(k,1781) = lu(k,1781) - lu(k,1032) * lu(k,1753) + lu(k,1782) = lu(k,1782) - lu(k,1033) * lu(k,1753) + lu(k,1784) = lu(k,1784) - lu(k,1034) * lu(k,1753) + lu(k,1786) = lu(k,1786) - lu(k,1035) * lu(k,1753) + lu(k,1787) = lu(k,1787) - lu(k,1036) * lu(k,1753) + lu(k,1791) = lu(k,1791) - lu(k,1037) * lu(k,1753) + lu(k,1792) = lu(k,1792) - lu(k,1038) * lu(k,1753) + lu(k,1795) = lu(k,1795) - lu(k,1039) * lu(k,1753) + lu(k,1796) = lu(k,1796) - lu(k,1040) * lu(k,1753) + lu(k,1955) = lu(k,1955) - lu(k,1024) * lu(k,1954) + lu(k,1956) = lu(k,1956) - lu(k,1025) * lu(k,1954) + lu(k,1958) = - lu(k,1026) * lu(k,1954) + lu(k,1964) = lu(k,1964) - lu(k,1027) * lu(k,1954) + lu(k,1967) = lu(k,1967) - lu(k,1028) * lu(k,1954) + lu(k,1973) = lu(k,1973) - lu(k,1029) * lu(k,1954) + lu(k,1976) = lu(k,1976) - lu(k,1030) * lu(k,1954) + lu(k,1978) = lu(k,1978) - lu(k,1031) * lu(k,1954) + lu(k,1979) = lu(k,1979) - lu(k,1032) * lu(k,1954) + lu(k,1980) = lu(k,1980) - lu(k,1033) * lu(k,1954) + lu(k,1982) = lu(k,1982) - lu(k,1034) * lu(k,1954) + lu(k,1984) = lu(k,1984) - lu(k,1035) * lu(k,1954) + lu(k,1985) = lu(k,1985) - lu(k,1036) * lu(k,1954) + lu(k,1989) = lu(k,1989) - lu(k,1037) * lu(k,1954) + lu(k,1990) = lu(k,1990) - lu(k,1038) * lu(k,1954) + lu(k,1993) = lu(k,1993) - lu(k,1039) * lu(k,1954) + lu(k,1994) = lu(k,1994) - lu(k,1040) * lu(k,1954) + lu(k,2092) = lu(k,2092) - lu(k,1024) * lu(k,2091) + lu(k,2093) = lu(k,2093) - lu(k,1025) * lu(k,2091) + lu(k,2096) = lu(k,2096) - lu(k,1026) * lu(k,2091) + lu(k,2102) = lu(k,2102) - lu(k,1027) * lu(k,2091) + lu(k,2106) = lu(k,2106) - lu(k,1028) * lu(k,2091) + lu(k,2112) = lu(k,2112) - lu(k,1029) * lu(k,2091) + lu(k,2115) = - lu(k,1030) * lu(k,2091) + lu(k,2117) = lu(k,2117) - lu(k,1031) * lu(k,2091) + lu(k,2118) = lu(k,2118) - lu(k,1032) * lu(k,2091) + lu(k,2119) = lu(k,2119) - lu(k,1033) * lu(k,2091) + lu(k,2121) = lu(k,2121) - lu(k,1034) * lu(k,2091) + lu(k,2123) = lu(k,2123) - lu(k,1035) * lu(k,2091) + lu(k,2124) = lu(k,2124) - lu(k,1036) * lu(k,2091) + lu(k,2128) = lu(k,2128) - lu(k,1037) * lu(k,2091) + lu(k,2129) = lu(k,2129) - lu(k,1038) * lu(k,2091) + lu(k,2132) = lu(k,2132) - lu(k,1039) * lu(k,2091) + lu(k,2133) = lu(k,2133) - lu(k,1040) * lu(k,2091) + lu(k,1043) = 1._r8 / lu(k,1043) + lu(k,1044) = lu(k,1044) * lu(k,1043) + lu(k,1045) = lu(k,1045) * lu(k,1043) + lu(k,1046) = lu(k,1046) * lu(k,1043) + lu(k,1099) = lu(k,1099) - lu(k,1044) * lu(k,1096) + lu(k,1101) = - lu(k,1045) * lu(k,1096) + lu(k,1105) = - lu(k,1046) * lu(k,1096) + lu(k,1111) = lu(k,1111) - lu(k,1044) * lu(k,1109) + lu(k,1112) = - lu(k,1045) * lu(k,1109) + lu(k,1116) = - lu(k,1046) * lu(k,1109) + lu(k,1149) = lu(k,1149) - lu(k,1044) * lu(k,1144) + lu(k,1152) = - lu(k,1045) * lu(k,1144) + lu(k,1157) = - lu(k,1046) * lu(k,1144) + lu(k,1175) = lu(k,1175) - lu(k,1044) * lu(k,1174) + lu(k,1176) = - lu(k,1045) * lu(k,1174) + lu(k,1179) = - lu(k,1046) * lu(k,1174) + lu(k,1186) = lu(k,1186) - lu(k,1044) * lu(k,1183) + lu(k,1190) = - lu(k,1045) * lu(k,1183) + lu(k,1195) = - lu(k,1046) * lu(k,1183) + lu(k,1207) = lu(k,1207) - lu(k,1044) * lu(k,1205) + lu(k,1215) = - lu(k,1045) * lu(k,1205) + lu(k,1220) = - lu(k,1046) * lu(k,1205) + lu(k,1226) = lu(k,1226) - lu(k,1044) * lu(k,1225) + lu(k,1232) = - lu(k,1045) * lu(k,1225) + lu(k,1237) = - lu(k,1046) * lu(k,1225) + lu(k,1271) = - lu(k,1044) * lu(k,1266) + lu(k,1281) = - lu(k,1045) * lu(k,1266) + lu(k,1287) = - lu(k,1046) * lu(k,1266) + lu(k,1306) = lu(k,1306) - lu(k,1044) * lu(k,1301) + lu(k,1316) = - lu(k,1045) * lu(k,1301) + lu(k,1322) = - lu(k,1046) * lu(k,1301) + lu(k,1354) = lu(k,1354) - lu(k,1044) * lu(k,1351) + lu(k,1362) = lu(k,1362) - lu(k,1045) * lu(k,1351) + lu(k,1368) = - lu(k,1046) * lu(k,1351) + lu(k,1378) = - lu(k,1044) * lu(k,1376) + lu(k,1383) = - lu(k,1045) * lu(k,1376) + lu(k,1389) = - lu(k,1046) * lu(k,1376) + lu(k,1403) = lu(k,1403) - lu(k,1044) * lu(k,1400) + lu(k,1416) = - lu(k,1045) * lu(k,1400) + lu(k,1422) = - lu(k,1046) * lu(k,1400) + lu(k,1460) = lu(k,1460) - lu(k,1044) * lu(k,1459) + lu(k,1464) = - lu(k,1045) * lu(k,1459) + lu(k,1469) = lu(k,1469) - lu(k,1046) * lu(k,1459) + lu(k,1522) = lu(k,1522) - lu(k,1044) * lu(k,1521) + lu(k,1527) = - lu(k,1045) * lu(k,1521) + lu(k,1535) = lu(k,1535) - lu(k,1046) * lu(k,1521) + lu(k,1564) = lu(k,1564) - lu(k,1044) * lu(k,1562) + lu(k,1572) = lu(k,1572) - lu(k,1045) * lu(k,1562) + lu(k,1580) = lu(k,1580) - lu(k,1046) * lu(k,1562) + lu(k,1764) = lu(k,1764) - lu(k,1044) * lu(k,1754) + lu(k,1780) = lu(k,1780) - lu(k,1045) * lu(k,1754) + lu(k,1788) = lu(k,1788) - lu(k,1046) * lu(k,1754) + lu(k,1898) = lu(k,1898) - lu(k,1044) * lu(k,1889) + lu(k,1913) = lu(k,1913) - lu(k,1045) * lu(k,1889) + lu(k,1921) = lu(k,1921) - lu(k,1046) * lu(k,1889) + lu(k,1964) = lu(k,1964) - lu(k,1044) * lu(k,1955) + lu(k,1978) = lu(k,1978) - lu(k,1045) * lu(k,1955) + lu(k,1986) = lu(k,1986) - lu(k,1046) * lu(k,1955) + lu(k,2102) = lu(k,2102) - lu(k,1044) * lu(k,2092) + lu(k,2117) = lu(k,2117) - lu(k,1045) * lu(k,2092) + lu(k,2125) = lu(k,2125) - lu(k,1046) * lu(k,2092) + lu(k,2157) = lu(k,2157) - lu(k,1044) * lu(k,2148) + lu(k,2170) = lu(k,2170) - lu(k,1045) * lu(k,2148) + lu(k,2178) = - lu(k,1046) * lu(k,2148) + lu(k,2205) = lu(k,2205) - lu(k,1044) * lu(k,2202) + lu(k,2211) = lu(k,2211) - lu(k,1045) * lu(k,2202) + lu(k,2219) = lu(k,2219) - lu(k,1046) * lu(k,2202) + lu(k,2317) = lu(k,2317) - lu(k,1044) * lu(k,2307) + lu(k,2331) = lu(k,2331) - lu(k,1045) * lu(k,2307) + lu(k,2339) = lu(k,2339) - lu(k,1046) * lu(k,2307) + end do + end subroutine lu_fac22 + subroutine lu_fac23( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1047) = 1._r8 / lu(k,1047) + lu(k,1048) = lu(k,1048) * lu(k,1047) + lu(k,1049) = lu(k,1049) * lu(k,1047) + lu(k,1050) = lu(k,1050) * lu(k,1047) + lu(k,1051) = lu(k,1051) * lu(k,1047) + lu(k,1052) = lu(k,1052) * lu(k,1047) + lu(k,1053) = lu(k,1053) * lu(k,1047) + lu(k,1054) = lu(k,1054) * lu(k,1047) + lu(k,1055) = lu(k,1055) * lu(k,1047) + lu(k,1079) = lu(k,1079) - lu(k,1048) * lu(k,1074) + lu(k,1080) = lu(k,1080) - lu(k,1049) * lu(k,1074) + lu(k,1081) = lu(k,1081) - lu(k,1050) * lu(k,1074) + lu(k,1084) = lu(k,1084) - lu(k,1051) * lu(k,1074) + lu(k,1085) = lu(k,1085) - lu(k,1052) * lu(k,1074) + lu(k,1086) = - lu(k,1053) * lu(k,1074) + lu(k,1087) = lu(k,1087) - lu(k,1054) * lu(k,1074) + lu(k,1088) = lu(k,1088) - lu(k,1055) * lu(k,1074) + lu(k,1354) = lu(k,1354) - lu(k,1048) * lu(k,1352) + lu(k,1359) = lu(k,1359) - lu(k,1049) * lu(k,1352) + lu(k,1361) = - lu(k,1050) * lu(k,1352) + lu(k,1365) = lu(k,1365) - lu(k,1051) * lu(k,1352) + lu(k,1366) = lu(k,1366) - lu(k,1052) * lu(k,1352) + lu(k,1369) = lu(k,1369) - lu(k,1053) * lu(k,1352) + lu(k,1370) = lu(k,1370) - lu(k,1054) * lu(k,1352) + lu(k,1372) = lu(k,1372) - lu(k,1055) * lu(k,1352) + lu(k,1764) = lu(k,1764) - lu(k,1048) * lu(k,1755) + lu(k,1775) = lu(k,1775) - lu(k,1049) * lu(k,1755) + lu(k,1779) = lu(k,1779) - lu(k,1050) * lu(k,1755) + lu(k,1784) = lu(k,1784) - lu(k,1051) * lu(k,1755) + lu(k,1786) = lu(k,1786) - lu(k,1052) * lu(k,1755) + lu(k,1791) = lu(k,1791) - lu(k,1053) * lu(k,1755) + lu(k,1792) = lu(k,1792) - lu(k,1054) * lu(k,1755) + lu(k,1796) = lu(k,1796) - lu(k,1055) * lu(k,1755) + lu(k,1898) = lu(k,1898) - lu(k,1048) * lu(k,1890) + lu(k,1909) = lu(k,1909) - lu(k,1049) * lu(k,1890) + lu(k,1912) = lu(k,1912) - lu(k,1050) * lu(k,1890) + lu(k,1917) = lu(k,1917) - lu(k,1051) * lu(k,1890) + lu(k,1919) = lu(k,1919) - lu(k,1052) * lu(k,1890) + lu(k,1924) = lu(k,1924) - lu(k,1053) * lu(k,1890) + lu(k,1925) = lu(k,1925) - lu(k,1054) * lu(k,1890) + lu(k,1929) = lu(k,1929) - lu(k,1055) * lu(k,1890) + lu(k,1964) = lu(k,1964) - lu(k,1048) * lu(k,1956) + lu(k,1973) = lu(k,1973) - lu(k,1049) * lu(k,1956) + lu(k,1977) = - lu(k,1050) * lu(k,1956) + lu(k,1982) = lu(k,1982) - lu(k,1051) * lu(k,1956) + lu(k,1984) = lu(k,1984) - lu(k,1052) * lu(k,1956) + lu(k,1989) = lu(k,1989) - lu(k,1053) * lu(k,1956) + lu(k,1990) = lu(k,1990) - lu(k,1054) * lu(k,1956) + lu(k,1994) = lu(k,1994) - lu(k,1055) * lu(k,1956) + lu(k,2102) = lu(k,2102) - lu(k,1048) * lu(k,2093) + lu(k,2112) = lu(k,2112) - lu(k,1049) * lu(k,2093) + lu(k,2116) = lu(k,2116) - lu(k,1050) * lu(k,2093) + lu(k,2121) = lu(k,2121) - lu(k,1051) * lu(k,2093) + lu(k,2123) = lu(k,2123) - lu(k,1052) * lu(k,2093) + lu(k,2128) = lu(k,2128) - lu(k,1053) * lu(k,2093) + lu(k,2129) = lu(k,2129) - lu(k,1054) * lu(k,2093) + lu(k,2133) = lu(k,2133) - lu(k,1055) * lu(k,2093) + lu(k,2157) = lu(k,2157) - lu(k,1048) * lu(k,2149) + lu(k,2167) = lu(k,2167) - lu(k,1049) * lu(k,2149) + lu(k,2169) = lu(k,2169) - lu(k,1050) * lu(k,2149) + lu(k,2174) = lu(k,2174) - lu(k,1051) * lu(k,2149) + lu(k,2176) = lu(k,2176) - lu(k,1052) * lu(k,2149) + lu(k,2181) = lu(k,2181) - lu(k,1053) * lu(k,2149) + lu(k,2182) = lu(k,2182) - lu(k,1054) * lu(k,2149) + lu(k,2186) = lu(k,2186) - lu(k,1055) * lu(k,2149) + lu(k,2205) = lu(k,2205) - lu(k,1048) * lu(k,2203) + lu(k,2207) = - lu(k,1049) * lu(k,2203) + lu(k,2210) = lu(k,2210) - lu(k,1050) * lu(k,2203) + lu(k,2215) = lu(k,2215) - lu(k,1051) * lu(k,2203) + lu(k,2217) = lu(k,2217) - lu(k,1052) * lu(k,2203) + lu(k,2222) = lu(k,2222) - lu(k,1053) * lu(k,2203) + lu(k,2223) = lu(k,2223) - lu(k,1054) * lu(k,2203) + lu(k,2227) = lu(k,2227) - lu(k,1055) * lu(k,2203) + lu(k,2317) = lu(k,2317) - lu(k,1048) * lu(k,2308) + lu(k,2327) = lu(k,2327) - lu(k,1049) * lu(k,2308) + lu(k,2330) = lu(k,2330) - lu(k,1050) * lu(k,2308) + lu(k,2335) = lu(k,2335) - lu(k,1051) * lu(k,2308) + lu(k,2337) = lu(k,2337) - lu(k,1052) * lu(k,2308) + lu(k,2342) = lu(k,2342) - lu(k,1053) * lu(k,2308) + lu(k,2343) = lu(k,2343) - lu(k,1054) * lu(k,2308) + lu(k,2347) = lu(k,2347) - lu(k,1055) * lu(k,2308) + lu(k,1060) = 1._r8 / lu(k,1060) + lu(k,1061) = lu(k,1061) * lu(k,1060) + lu(k,1062) = lu(k,1062) * lu(k,1060) + lu(k,1063) = lu(k,1063) * lu(k,1060) + lu(k,1064) = lu(k,1064) * lu(k,1060) + lu(k,1065) = lu(k,1065) * lu(k,1060) + lu(k,1066) = lu(k,1066) * lu(k,1060) + lu(k,1067) = lu(k,1067) * lu(k,1060) + lu(k,1068) = lu(k,1068) * lu(k,1060) + lu(k,1069) = lu(k,1069) * lu(k,1060) + lu(k,1070) = lu(k,1070) * lu(k,1060) + lu(k,1071) = lu(k,1071) * lu(k,1060) + lu(k,1123) = lu(k,1123) - lu(k,1061) * lu(k,1122) + lu(k,1125) = lu(k,1125) - lu(k,1062) * lu(k,1122) + lu(k,1127) = lu(k,1127) - lu(k,1063) * lu(k,1122) + lu(k,1129) = lu(k,1129) - lu(k,1064) * lu(k,1122) + lu(k,1131) = lu(k,1131) - lu(k,1065) * lu(k,1122) + lu(k,1132) = lu(k,1132) - lu(k,1066) * lu(k,1122) + lu(k,1133) = lu(k,1133) - lu(k,1067) * lu(k,1122) + lu(k,1134) = lu(k,1134) - lu(k,1068) * lu(k,1122) + lu(k,1136) = lu(k,1136) - lu(k,1069) * lu(k,1122) + lu(k,1137) = lu(k,1137) - lu(k,1070) * lu(k,1122) + lu(k,1138) = lu(k,1138) - lu(k,1071) * lu(k,1122) + lu(k,1759) = lu(k,1759) - lu(k,1061) * lu(k,1756) + lu(k,1762) = lu(k,1762) - lu(k,1062) * lu(k,1756) + lu(k,1764) = lu(k,1764) - lu(k,1063) * lu(k,1756) + lu(k,1779) = lu(k,1779) - lu(k,1064) * lu(k,1756) + lu(k,1781) = lu(k,1781) - lu(k,1065) * lu(k,1756) + lu(k,1782) = lu(k,1782) - lu(k,1066) * lu(k,1756) + lu(k,1784) = lu(k,1784) - lu(k,1067) * lu(k,1756) + lu(k,1786) = lu(k,1786) - lu(k,1068) * lu(k,1756) + lu(k,1791) = lu(k,1791) - lu(k,1069) * lu(k,1756) + lu(k,1792) = lu(k,1792) - lu(k,1070) * lu(k,1756) + lu(k,1795) = lu(k,1795) - lu(k,1071) * lu(k,1756) + lu(k,1893) = lu(k,1893) - lu(k,1061) * lu(k,1891) + lu(k,1896) = lu(k,1896) - lu(k,1062) * lu(k,1891) + lu(k,1898) = lu(k,1898) - lu(k,1063) * lu(k,1891) + lu(k,1912) = lu(k,1912) - lu(k,1064) * lu(k,1891) + lu(k,1914) = lu(k,1914) - lu(k,1065) * lu(k,1891) + lu(k,1915) = lu(k,1915) - lu(k,1066) * lu(k,1891) + lu(k,1917) = lu(k,1917) - lu(k,1067) * lu(k,1891) + lu(k,1919) = lu(k,1919) - lu(k,1068) * lu(k,1891) + lu(k,1924) = lu(k,1924) - lu(k,1069) * lu(k,1891) + lu(k,1925) = lu(k,1925) - lu(k,1070) * lu(k,1891) + lu(k,1928) = lu(k,1928) - lu(k,1071) * lu(k,1891) + lu(k,1959) = lu(k,1959) - lu(k,1061) * lu(k,1957) + lu(k,1962) = lu(k,1962) - lu(k,1062) * lu(k,1957) + lu(k,1964) = lu(k,1964) - lu(k,1063) * lu(k,1957) + lu(k,1977) = lu(k,1977) - lu(k,1064) * lu(k,1957) + lu(k,1979) = lu(k,1979) - lu(k,1065) * lu(k,1957) + lu(k,1980) = lu(k,1980) - lu(k,1066) * lu(k,1957) + lu(k,1982) = lu(k,1982) - lu(k,1067) * lu(k,1957) + lu(k,1984) = lu(k,1984) - lu(k,1068) * lu(k,1957) + lu(k,1989) = lu(k,1989) - lu(k,1069) * lu(k,1957) + lu(k,1990) = lu(k,1990) - lu(k,1070) * lu(k,1957) + lu(k,1993) = lu(k,1993) - lu(k,1071) * lu(k,1957) + lu(k,2097) = lu(k,2097) - lu(k,1061) * lu(k,2094) + lu(k,2100) = lu(k,2100) - lu(k,1062) * lu(k,2094) + lu(k,2102) = lu(k,2102) - lu(k,1063) * lu(k,2094) + lu(k,2116) = lu(k,2116) - lu(k,1064) * lu(k,2094) + lu(k,2118) = lu(k,2118) - lu(k,1065) * lu(k,2094) + lu(k,2119) = lu(k,2119) - lu(k,1066) * lu(k,2094) + lu(k,2121) = lu(k,2121) - lu(k,1067) * lu(k,2094) + lu(k,2123) = lu(k,2123) - lu(k,1068) * lu(k,2094) + lu(k,2128) = lu(k,2128) - lu(k,1069) * lu(k,2094) + lu(k,2129) = lu(k,2129) - lu(k,1070) * lu(k,2094) + lu(k,2132) = lu(k,2132) - lu(k,1071) * lu(k,2094) + lu(k,2152) = lu(k,2152) - lu(k,1061) * lu(k,2150) + lu(k,2155) = lu(k,2155) - lu(k,1062) * lu(k,2150) + lu(k,2157) = lu(k,2157) - lu(k,1063) * lu(k,2150) + lu(k,2169) = lu(k,2169) - lu(k,1064) * lu(k,2150) + lu(k,2171) = lu(k,2171) - lu(k,1065) * lu(k,2150) + lu(k,2172) = lu(k,2172) - lu(k,1066) * lu(k,2150) + lu(k,2174) = lu(k,2174) - lu(k,1067) * lu(k,2150) + lu(k,2176) = lu(k,2176) - lu(k,1068) * lu(k,2150) + lu(k,2181) = lu(k,2181) - lu(k,1069) * lu(k,2150) + lu(k,2182) = lu(k,2182) - lu(k,1070) * lu(k,2150) + lu(k,2185) = lu(k,2185) - lu(k,1071) * lu(k,2150) + lu(k,2312) = lu(k,2312) - lu(k,1061) * lu(k,2309) + lu(k,2315) = lu(k,2315) - lu(k,1062) * lu(k,2309) + lu(k,2317) = lu(k,2317) - lu(k,1063) * lu(k,2309) + lu(k,2330) = lu(k,2330) - lu(k,1064) * lu(k,2309) + lu(k,2332) = lu(k,2332) - lu(k,1065) * lu(k,2309) + lu(k,2333) = lu(k,2333) - lu(k,1066) * lu(k,2309) + lu(k,2335) = lu(k,2335) - lu(k,1067) * lu(k,2309) + lu(k,2337) = lu(k,2337) - lu(k,1068) * lu(k,2309) + lu(k,2342) = lu(k,2342) - lu(k,1069) * lu(k,2309) + lu(k,2343) = lu(k,2343) - lu(k,1070) * lu(k,2309) + lu(k,2346) = lu(k,2346) - lu(k,1071) * lu(k,2309) + lu(k,1075) = 1._r8 / lu(k,1075) + lu(k,1076) = lu(k,1076) * lu(k,1075) + lu(k,1077) = lu(k,1077) * lu(k,1075) + lu(k,1078) = lu(k,1078) * lu(k,1075) + lu(k,1079) = lu(k,1079) * lu(k,1075) + lu(k,1080) = lu(k,1080) * lu(k,1075) + lu(k,1081) = lu(k,1081) * lu(k,1075) + lu(k,1082) = lu(k,1082) * lu(k,1075) + lu(k,1083) = lu(k,1083) * lu(k,1075) + lu(k,1084) = lu(k,1084) * lu(k,1075) + lu(k,1085) = lu(k,1085) * lu(k,1075) + lu(k,1086) = lu(k,1086) * lu(k,1075) + lu(k,1087) = lu(k,1087) * lu(k,1075) + lu(k,1088) = lu(k,1088) * lu(k,1075) + lu(k,1268) = lu(k,1268) - lu(k,1076) * lu(k,1267) + lu(k,1269) = lu(k,1269) - lu(k,1077) * lu(k,1267) + lu(k,1270) = - lu(k,1078) * lu(k,1267) + lu(k,1271) = lu(k,1271) - lu(k,1079) * lu(k,1267) + lu(k,1279) = lu(k,1279) - lu(k,1080) * lu(k,1267) + lu(k,1280) = lu(k,1280) - lu(k,1081) * lu(k,1267) + lu(k,1282) = lu(k,1282) - lu(k,1082) * lu(k,1267) + lu(k,1283) = lu(k,1283) - lu(k,1083) * lu(k,1267) + lu(k,1284) = lu(k,1284) - lu(k,1084) * lu(k,1267) + lu(k,1285) = lu(k,1285) - lu(k,1085) * lu(k,1267) + lu(k,1288) = lu(k,1288) - lu(k,1086) * lu(k,1267) + lu(k,1289) = lu(k,1289) - lu(k,1087) * lu(k,1267) + lu(k,1291) = - lu(k,1088) * lu(k,1267) + lu(k,1303) = lu(k,1303) - lu(k,1076) * lu(k,1302) + lu(k,1304) = lu(k,1304) - lu(k,1077) * lu(k,1302) + lu(k,1305) = - lu(k,1078) * lu(k,1302) + lu(k,1306) = lu(k,1306) - lu(k,1079) * lu(k,1302) + lu(k,1314) = lu(k,1314) - lu(k,1080) * lu(k,1302) + lu(k,1315) = lu(k,1315) - lu(k,1081) * lu(k,1302) + lu(k,1317) = lu(k,1317) - lu(k,1082) * lu(k,1302) + lu(k,1318) = lu(k,1318) - lu(k,1083) * lu(k,1302) + lu(k,1319) = lu(k,1319) - lu(k,1084) * lu(k,1302) + lu(k,1320) = lu(k,1320) - lu(k,1085) * lu(k,1302) + lu(k,1323) = lu(k,1323) - lu(k,1086) * lu(k,1302) + lu(k,1324) = lu(k,1324) - lu(k,1087) * lu(k,1302) + lu(k,1326) = - lu(k,1088) * lu(k,1302) + lu(k,1330) = lu(k,1330) - lu(k,1076) * lu(k,1329) + lu(k,1331) = lu(k,1331) - lu(k,1077) * lu(k,1329) + lu(k,1332) = - lu(k,1078) * lu(k,1329) + lu(k,1333) = lu(k,1333) - lu(k,1079) * lu(k,1329) + lu(k,1337) = lu(k,1337) - lu(k,1080) * lu(k,1329) + lu(k,1338) = - lu(k,1081) * lu(k,1329) + lu(k,1340) = lu(k,1340) - lu(k,1082) * lu(k,1329) + lu(k,1341) = lu(k,1341) - lu(k,1083) * lu(k,1329) + lu(k,1342) = lu(k,1342) - lu(k,1084) * lu(k,1329) + lu(k,1343) = lu(k,1343) - lu(k,1085) * lu(k,1329) + lu(k,1345) = lu(k,1345) - lu(k,1086) * lu(k,1329) + lu(k,1346) = lu(k,1346) - lu(k,1087) * lu(k,1329) + lu(k,1348) = - lu(k,1088) * lu(k,1329) + lu(k,1758) = lu(k,1758) - lu(k,1076) * lu(k,1757) + lu(k,1760) = lu(k,1760) - lu(k,1077) * lu(k,1757) + lu(k,1763) = lu(k,1763) - lu(k,1078) * lu(k,1757) + lu(k,1764) = lu(k,1764) - lu(k,1079) * lu(k,1757) + lu(k,1775) = lu(k,1775) - lu(k,1080) * lu(k,1757) + lu(k,1779) = lu(k,1779) - lu(k,1081) * lu(k,1757) + lu(k,1781) = lu(k,1781) - lu(k,1082) * lu(k,1757) + lu(k,1782) = lu(k,1782) - lu(k,1083) * lu(k,1757) + lu(k,1784) = lu(k,1784) - lu(k,1084) * lu(k,1757) + lu(k,1786) = lu(k,1786) - lu(k,1085) * lu(k,1757) + lu(k,1791) = lu(k,1791) - lu(k,1086) * lu(k,1757) + lu(k,1792) = lu(k,1792) - lu(k,1087) * lu(k,1757) + lu(k,1796) = lu(k,1796) - lu(k,1088) * lu(k,1757) + lu(k,2096) = lu(k,2096) - lu(k,1076) * lu(k,2095) + lu(k,2098) = lu(k,2098) - lu(k,1077) * lu(k,2095) + lu(k,2101) = lu(k,2101) - lu(k,1078) * lu(k,2095) + lu(k,2102) = lu(k,2102) - lu(k,1079) * lu(k,2095) + lu(k,2112) = lu(k,2112) - lu(k,1080) * lu(k,2095) + lu(k,2116) = lu(k,2116) - lu(k,1081) * lu(k,2095) + lu(k,2118) = lu(k,2118) - lu(k,1082) * lu(k,2095) + lu(k,2119) = lu(k,2119) - lu(k,1083) * lu(k,2095) + lu(k,2121) = lu(k,2121) - lu(k,1084) * lu(k,2095) + lu(k,2123) = lu(k,2123) - lu(k,1085) * lu(k,2095) + lu(k,2128) = lu(k,2128) - lu(k,1086) * lu(k,2095) + lu(k,2129) = lu(k,2129) - lu(k,1087) * lu(k,2095) + lu(k,2133) = lu(k,2133) - lu(k,1088) * lu(k,2095) + lu(k,2311) = lu(k,2311) - lu(k,1076) * lu(k,2310) + lu(k,2313) = lu(k,2313) - lu(k,1077) * lu(k,2310) + lu(k,2316) = lu(k,2316) - lu(k,1078) * lu(k,2310) + lu(k,2317) = lu(k,2317) - lu(k,1079) * lu(k,2310) + lu(k,2327) = lu(k,2327) - lu(k,1080) * lu(k,2310) + lu(k,2330) = lu(k,2330) - lu(k,1081) * lu(k,2310) + lu(k,2332) = lu(k,2332) - lu(k,1082) * lu(k,2310) + lu(k,2333) = lu(k,2333) - lu(k,1083) * lu(k,2310) + lu(k,2335) = lu(k,2335) - lu(k,1084) * lu(k,2310) + lu(k,2337) = lu(k,2337) - lu(k,1085) * lu(k,2310) + lu(k,2342) = lu(k,2342) - lu(k,1086) * lu(k,2310) + lu(k,2343) = lu(k,2343) - lu(k,1087) * lu(k,2310) + lu(k,2347) = lu(k,2347) - lu(k,1088) * lu(k,2310) + lu(k,1089) = 1._r8 / lu(k,1089) + lu(k,1090) = lu(k,1090) * lu(k,1089) + lu(k,1091) = lu(k,1091) * lu(k,1089) + lu(k,1092) = lu(k,1092) * lu(k,1089) + lu(k,1093) = lu(k,1093) * lu(k,1089) + lu(k,1094) = lu(k,1094) * lu(k,1089) + lu(k,1165) = lu(k,1165) - lu(k,1090) * lu(k,1163) + lu(k,1166) = lu(k,1166) - lu(k,1091) * lu(k,1163) + lu(k,1167) = lu(k,1167) - lu(k,1092) * lu(k,1163) + lu(k,1169) = lu(k,1169) - lu(k,1093) * lu(k,1163) + lu(k,1170) = lu(k,1170) - lu(k,1094) * lu(k,1163) + lu(k,1188) = lu(k,1188) - lu(k,1090) * lu(k,1184) + lu(k,1189) = lu(k,1189) - lu(k,1091) * lu(k,1184) + lu(k,1191) = lu(k,1191) - lu(k,1092) * lu(k,1184) + lu(k,1193) = lu(k,1193) - lu(k,1093) * lu(k,1184) + lu(k,1194) = lu(k,1194) - lu(k,1094) * lu(k,1184) + lu(k,1274) = - lu(k,1090) * lu(k,1268) + lu(k,1279) = lu(k,1279) - lu(k,1091) * lu(k,1268) + lu(k,1282) = lu(k,1282) - lu(k,1092) * lu(k,1268) + lu(k,1284) = lu(k,1284) - lu(k,1093) * lu(k,1268) + lu(k,1285) = lu(k,1285) - lu(k,1094) * lu(k,1268) + lu(k,1309) = lu(k,1309) - lu(k,1090) * lu(k,1303) + lu(k,1314) = lu(k,1314) - lu(k,1091) * lu(k,1303) + lu(k,1317) = lu(k,1317) - lu(k,1092) * lu(k,1303) + lu(k,1319) = lu(k,1319) - lu(k,1093) * lu(k,1303) + lu(k,1320) = lu(k,1320) - lu(k,1094) * lu(k,1303) + lu(k,1334) = lu(k,1334) - lu(k,1090) * lu(k,1330) + lu(k,1337) = lu(k,1337) - lu(k,1091) * lu(k,1330) + lu(k,1340) = lu(k,1340) - lu(k,1092) * lu(k,1330) + lu(k,1342) = lu(k,1342) - lu(k,1093) * lu(k,1330) + lu(k,1343) = lu(k,1343) - lu(k,1094) * lu(k,1330) + lu(k,1355) = lu(k,1355) - lu(k,1090) * lu(k,1353) + lu(k,1359) = lu(k,1359) - lu(k,1091) * lu(k,1353) + lu(k,1363) = lu(k,1363) - lu(k,1092) * lu(k,1353) + lu(k,1365) = lu(k,1365) - lu(k,1093) * lu(k,1353) + lu(k,1366) = lu(k,1366) - lu(k,1094) * lu(k,1353) + lu(k,1379) = - lu(k,1090) * lu(k,1377) + lu(k,1381) = lu(k,1381) - lu(k,1091) * lu(k,1377) + lu(k,1384) = lu(k,1384) - lu(k,1092) * lu(k,1377) + lu(k,1386) = lu(k,1386) - lu(k,1093) * lu(k,1377) + lu(k,1387) = lu(k,1387) - lu(k,1094) * lu(k,1377) + lu(k,1407) = lu(k,1407) - lu(k,1090) * lu(k,1401) + lu(k,1413) = lu(k,1413) - lu(k,1091) * lu(k,1401) + lu(k,1417) = lu(k,1417) - lu(k,1092) * lu(k,1401) + lu(k,1419) = lu(k,1419) - lu(k,1093) * lu(k,1401) + lu(k,1420) = lu(k,1420) - lu(k,1094) * lu(k,1401) + lu(k,1565) = lu(k,1565) - lu(k,1090) * lu(k,1563) + lu(k,1567) = lu(k,1567) - lu(k,1091) * lu(k,1563) + lu(k,1573) = lu(k,1573) - lu(k,1092) * lu(k,1563) + lu(k,1576) = lu(k,1576) - lu(k,1093) * lu(k,1563) + lu(k,1578) = lu(k,1578) - lu(k,1094) * lu(k,1563) + lu(k,1768) = lu(k,1768) - lu(k,1090) * lu(k,1758) + lu(k,1775) = lu(k,1775) - lu(k,1091) * lu(k,1758) + lu(k,1781) = lu(k,1781) - lu(k,1092) * lu(k,1758) + lu(k,1784) = lu(k,1784) - lu(k,1093) * lu(k,1758) + lu(k,1786) = lu(k,1786) - lu(k,1094) * lu(k,1758) + lu(k,1902) = lu(k,1902) - lu(k,1090) * lu(k,1892) + lu(k,1909) = lu(k,1909) - lu(k,1091) * lu(k,1892) + lu(k,1914) = lu(k,1914) - lu(k,1092) * lu(k,1892) + lu(k,1917) = lu(k,1917) - lu(k,1093) * lu(k,1892) + lu(k,1919) = lu(k,1919) - lu(k,1094) * lu(k,1892) + lu(k,1967) = lu(k,1967) - lu(k,1090) * lu(k,1958) + lu(k,1973) = lu(k,1973) - lu(k,1091) * lu(k,1958) + lu(k,1979) = lu(k,1979) - lu(k,1092) * lu(k,1958) + lu(k,1982) = lu(k,1982) - lu(k,1093) * lu(k,1958) + lu(k,1984) = lu(k,1984) - lu(k,1094) * lu(k,1958) + lu(k,2106) = lu(k,2106) - lu(k,1090) * lu(k,2096) + lu(k,2112) = lu(k,2112) - lu(k,1091) * lu(k,2096) + lu(k,2118) = lu(k,2118) - lu(k,1092) * lu(k,2096) + lu(k,2121) = lu(k,2121) - lu(k,1093) * lu(k,2096) + lu(k,2123) = lu(k,2123) - lu(k,1094) * lu(k,2096) + lu(k,2161) = lu(k,2161) - lu(k,1090) * lu(k,2151) + lu(k,2167) = lu(k,2167) - lu(k,1091) * lu(k,2151) + lu(k,2171) = lu(k,2171) - lu(k,1092) * lu(k,2151) + lu(k,2174) = lu(k,2174) - lu(k,1093) * lu(k,2151) + lu(k,2176) = lu(k,2176) - lu(k,1094) * lu(k,2151) + lu(k,2321) = lu(k,2321) - lu(k,1090) * lu(k,2311) + lu(k,2327) = lu(k,2327) - lu(k,1091) * lu(k,2311) + lu(k,2332) = lu(k,2332) - lu(k,1092) * lu(k,2311) + lu(k,2335) = lu(k,2335) - lu(k,1093) * lu(k,2311) + lu(k,2337) = lu(k,2337) - lu(k,1094) * lu(k,2311) + end do + end subroutine lu_fac23 + subroutine lu_fac24( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1097) = 1._r8 / lu(k,1097) + lu(k,1098) = lu(k,1098) * lu(k,1097) + lu(k,1099) = lu(k,1099) * lu(k,1097) + lu(k,1100) = lu(k,1100) * lu(k,1097) + lu(k,1101) = lu(k,1101) * lu(k,1097) + lu(k,1102) = lu(k,1102) * lu(k,1097) + lu(k,1103) = lu(k,1103) * lu(k,1097) + lu(k,1104) = lu(k,1104) * lu(k,1097) + lu(k,1105) = lu(k,1105) * lu(k,1097) + lu(k,1106) = lu(k,1106) * lu(k,1097) + lu(k,1107) = lu(k,1107) * lu(k,1097) + lu(k,1126) = lu(k,1126) - lu(k,1098) * lu(k,1123) + lu(k,1127) = lu(k,1127) - lu(k,1099) * lu(k,1123) + lu(k,1128) = lu(k,1128) - lu(k,1100) * lu(k,1123) + lu(k,1130) = - lu(k,1101) * lu(k,1123) + lu(k,1131) = lu(k,1131) - lu(k,1102) * lu(k,1123) + lu(k,1133) = lu(k,1133) - lu(k,1103) * lu(k,1123) + lu(k,1134) = lu(k,1134) - lu(k,1104) * lu(k,1123) + lu(k,1135) = - lu(k,1105) * lu(k,1123) + lu(k,1137) = lu(k,1137) - lu(k,1106) * lu(k,1123) + lu(k,1139) = lu(k,1139) - lu(k,1107) * lu(k,1123) + lu(k,1148) = lu(k,1148) - lu(k,1098) * lu(k,1145) + lu(k,1149) = lu(k,1149) - lu(k,1099) * lu(k,1145) + lu(k,1150) = lu(k,1150) - lu(k,1100) * lu(k,1145) + lu(k,1152) = lu(k,1152) - lu(k,1101) * lu(k,1145) + lu(k,1153) = lu(k,1153) - lu(k,1102) * lu(k,1145) + lu(k,1155) = lu(k,1155) - lu(k,1103) * lu(k,1145) + lu(k,1156) = lu(k,1156) - lu(k,1104) * lu(k,1145) + lu(k,1157) = lu(k,1157) - lu(k,1105) * lu(k,1145) + lu(k,1158) = lu(k,1158) - lu(k,1106) * lu(k,1145) + lu(k,1160) = lu(k,1160) - lu(k,1107) * lu(k,1145) + lu(k,1763) = lu(k,1763) - lu(k,1098) * lu(k,1759) + lu(k,1764) = lu(k,1764) - lu(k,1099) * lu(k,1759) + lu(k,1775) = lu(k,1775) - lu(k,1100) * lu(k,1759) + lu(k,1780) = lu(k,1780) - lu(k,1101) * lu(k,1759) + lu(k,1781) = lu(k,1781) - lu(k,1102) * lu(k,1759) + lu(k,1784) = lu(k,1784) - lu(k,1103) * lu(k,1759) + lu(k,1786) = lu(k,1786) - lu(k,1104) * lu(k,1759) + lu(k,1788) = lu(k,1788) - lu(k,1105) * lu(k,1759) + lu(k,1792) = lu(k,1792) - lu(k,1106) * lu(k,1759) + lu(k,1796) = lu(k,1796) - lu(k,1107) * lu(k,1759) + lu(k,1897) = lu(k,1897) - lu(k,1098) * lu(k,1893) + lu(k,1898) = lu(k,1898) - lu(k,1099) * lu(k,1893) + lu(k,1909) = lu(k,1909) - lu(k,1100) * lu(k,1893) + lu(k,1913) = lu(k,1913) - lu(k,1101) * lu(k,1893) + lu(k,1914) = lu(k,1914) - lu(k,1102) * lu(k,1893) + lu(k,1917) = lu(k,1917) - lu(k,1103) * lu(k,1893) + lu(k,1919) = lu(k,1919) - lu(k,1104) * lu(k,1893) + lu(k,1921) = lu(k,1921) - lu(k,1105) * lu(k,1893) + lu(k,1925) = lu(k,1925) - lu(k,1106) * lu(k,1893) + lu(k,1929) = lu(k,1929) - lu(k,1107) * lu(k,1893) + lu(k,1963) = lu(k,1963) - lu(k,1098) * lu(k,1959) + lu(k,1964) = lu(k,1964) - lu(k,1099) * lu(k,1959) + lu(k,1973) = lu(k,1973) - lu(k,1100) * lu(k,1959) + lu(k,1978) = lu(k,1978) - lu(k,1101) * lu(k,1959) + lu(k,1979) = lu(k,1979) - lu(k,1102) * lu(k,1959) + lu(k,1982) = lu(k,1982) - lu(k,1103) * lu(k,1959) + lu(k,1984) = lu(k,1984) - lu(k,1104) * lu(k,1959) + lu(k,1986) = lu(k,1986) - lu(k,1105) * lu(k,1959) + lu(k,1990) = lu(k,1990) - lu(k,1106) * lu(k,1959) + lu(k,1994) = lu(k,1994) - lu(k,1107) * lu(k,1959) + lu(k,2101) = lu(k,2101) - lu(k,1098) * lu(k,2097) + lu(k,2102) = lu(k,2102) - lu(k,1099) * lu(k,2097) + lu(k,2112) = lu(k,2112) - lu(k,1100) * lu(k,2097) + lu(k,2117) = lu(k,2117) - lu(k,1101) * lu(k,2097) + lu(k,2118) = lu(k,2118) - lu(k,1102) * lu(k,2097) + lu(k,2121) = lu(k,2121) - lu(k,1103) * lu(k,2097) + lu(k,2123) = lu(k,2123) - lu(k,1104) * lu(k,2097) + lu(k,2125) = lu(k,2125) - lu(k,1105) * lu(k,2097) + lu(k,2129) = lu(k,2129) - lu(k,1106) * lu(k,2097) + lu(k,2133) = lu(k,2133) - lu(k,1107) * lu(k,2097) + lu(k,2156) = lu(k,2156) - lu(k,1098) * lu(k,2152) + lu(k,2157) = lu(k,2157) - lu(k,1099) * lu(k,2152) + lu(k,2167) = lu(k,2167) - lu(k,1100) * lu(k,2152) + lu(k,2170) = lu(k,2170) - lu(k,1101) * lu(k,2152) + lu(k,2171) = lu(k,2171) - lu(k,1102) * lu(k,2152) + lu(k,2174) = lu(k,2174) - lu(k,1103) * lu(k,2152) + lu(k,2176) = lu(k,2176) - lu(k,1104) * lu(k,2152) + lu(k,2178) = lu(k,2178) - lu(k,1105) * lu(k,2152) + lu(k,2182) = lu(k,2182) - lu(k,1106) * lu(k,2152) + lu(k,2186) = lu(k,2186) - lu(k,1107) * lu(k,2152) + lu(k,2316) = lu(k,2316) - lu(k,1098) * lu(k,2312) + lu(k,2317) = lu(k,2317) - lu(k,1099) * lu(k,2312) + lu(k,2327) = lu(k,2327) - lu(k,1100) * lu(k,2312) + lu(k,2331) = lu(k,2331) - lu(k,1101) * lu(k,2312) + lu(k,2332) = lu(k,2332) - lu(k,1102) * lu(k,2312) + lu(k,2335) = lu(k,2335) - lu(k,1103) * lu(k,2312) + lu(k,2337) = lu(k,2337) - lu(k,1104) * lu(k,2312) + lu(k,2339) = lu(k,2339) - lu(k,1105) * lu(k,2312) + lu(k,2343) = lu(k,2343) - lu(k,1106) * lu(k,2312) + lu(k,2347) = lu(k,2347) - lu(k,1107) * lu(k,2312) + lu(k,1110) = 1._r8 / lu(k,1110) + lu(k,1111) = lu(k,1111) * lu(k,1110) + lu(k,1112) = lu(k,1112) * lu(k,1110) + lu(k,1113) = lu(k,1113) * lu(k,1110) + lu(k,1114) = lu(k,1114) * lu(k,1110) + lu(k,1115) = lu(k,1115) * lu(k,1110) + lu(k,1116) = lu(k,1116) * lu(k,1110) + lu(k,1149) = lu(k,1149) - lu(k,1111) * lu(k,1146) + lu(k,1152) = lu(k,1152) - lu(k,1112) * lu(k,1146) + lu(k,1153) = lu(k,1153) - lu(k,1113) * lu(k,1146) + lu(k,1155) = lu(k,1155) - lu(k,1114) * lu(k,1146) + lu(k,1156) = lu(k,1156) - lu(k,1115) * lu(k,1146) + lu(k,1157) = lu(k,1157) - lu(k,1116) * lu(k,1146) + lu(k,1186) = lu(k,1186) - lu(k,1111) * lu(k,1185) + lu(k,1190) = lu(k,1190) - lu(k,1112) * lu(k,1185) + lu(k,1191) = lu(k,1191) - lu(k,1113) * lu(k,1185) + lu(k,1193) = lu(k,1193) - lu(k,1114) * lu(k,1185) + lu(k,1194) = lu(k,1194) - lu(k,1115) * lu(k,1185) + lu(k,1195) = lu(k,1195) - lu(k,1116) * lu(k,1185) + lu(k,1207) = lu(k,1207) - lu(k,1111) * lu(k,1206) + lu(k,1215) = lu(k,1215) - lu(k,1112) * lu(k,1206) + lu(k,1216) = lu(k,1216) - lu(k,1113) * lu(k,1206) + lu(k,1218) = lu(k,1218) - lu(k,1114) * lu(k,1206) + lu(k,1219) = lu(k,1219) - lu(k,1115) * lu(k,1206) + lu(k,1220) = lu(k,1220) - lu(k,1116) * lu(k,1206) + lu(k,1271) = lu(k,1271) - lu(k,1111) * lu(k,1269) + lu(k,1281) = lu(k,1281) - lu(k,1112) * lu(k,1269) + lu(k,1282) = lu(k,1282) - lu(k,1113) * lu(k,1269) + lu(k,1284) = lu(k,1284) - lu(k,1114) * lu(k,1269) + lu(k,1285) = lu(k,1285) - lu(k,1115) * lu(k,1269) + lu(k,1287) = lu(k,1287) - lu(k,1116) * lu(k,1269) + lu(k,1306) = lu(k,1306) - lu(k,1111) * lu(k,1304) + lu(k,1316) = lu(k,1316) - lu(k,1112) * lu(k,1304) + lu(k,1317) = lu(k,1317) - lu(k,1113) * lu(k,1304) + lu(k,1319) = lu(k,1319) - lu(k,1114) * lu(k,1304) + lu(k,1320) = lu(k,1320) - lu(k,1115) * lu(k,1304) + lu(k,1322) = lu(k,1322) - lu(k,1116) * lu(k,1304) + lu(k,1333) = lu(k,1333) - lu(k,1111) * lu(k,1331) + lu(k,1339) = - lu(k,1112) * lu(k,1331) + lu(k,1340) = lu(k,1340) - lu(k,1113) * lu(k,1331) + lu(k,1342) = lu(k,1342) - lu(k,1114) * lu(k,1331) + lu(k,1343) = lu(k,1343) - lu(k,1115) * lu(k,1331) + lu(k,1344) = - lu(k,1116) * lu(k,1331) + lu(k,1403) = lu(k,1403) - lu(k,1111) * lu(k,1402) + lu(k,1416) = lu(k,1416) - lu(k,1112) * lu(k,1402) + lu(k,1417) = lu(k,1417) - lu(k,1113) * lu(k,1402) + lu(k,1419) = lu(k,1419) - lu(k,1114) * lu(k,1402) + lu(k,1420) = lu(k,1420) - lu(k,1115) * lu(k,1402) + lu(k,1422) = lu(k,1422) - lu(k,1116) * lu(k,1402) + lu(k,1501) = - lu(k,1111) * lu(k,1500) + lu(k,1504) = lu(k,1504) - lu(k,1112) * lu(k,1500) + lu(k,1505) = lu(k,1505) - lu(k,1113) * lu(k,1500) + lu(k,1508) = lu(k,1508) - lu(k,1114) * lu(k,1500) + lu(k,1510) = lu(k,1510) - lu(k,1115) * lu(k,1500) + lu(k,1512) = lu(k,1512) - lu(k,1116) * lu(k,1500) + lu(k,1764) = lu(k,1764) - lu(k,1111) * lu(k,1760) + lu(k,1780) = lu(k,1780) - lu(k,1112) * lu(k,1760) + lu(k,1781) = lu(k,1781) - lu(k,1113) * lu(k,1760) + lu(k,1784) = lu(k,1784) - lu(k,1114) * lu(k,1760) + lu(k,1786) = lu(k,1786) - lu(k,1115) * lu(k,1760) + lu(k,1788) = lu(k,1788) - lu(k,1116) * lu(k,1760) + lu(k,1898) = lu(k,1898) - lu(k,1111) * lu(k,1894) + lu(k,1913) = lu(k,1913) - lu(k,1112) * lu(k,1894) + lu(k,1914) = lu(k,1914) - lu(k,1113) * lu(k,1894) + lu(k,1917) = lu(k,1917) - lu(k,1114) * lu(k,1894) + lu(k,1919) = lu(k,1919) - lu(k,1115) * lu(k,1894) + lu(k,1921) = lu(k,1921) - lu(k,1116) * lu(k,1894) + lu(k,1964) = lu(k,1964) - lu(k,1111) * lu(k,1960) + lu(k,1978) = lu(k,1978) - lu(k,1112) * lu(k,1960) + lu(k,1979) = lu(k,1979) - lu(k,1113) * lu(k,1960) + lu(k,1982) = lu(k,1982) - lu(k,1114) * lu(k,1960) + lu(k,1984) = lu(k,1984) - lu(k,1115) * lu(k,1960) + lu(k,1986) = lu(k,1986) - lu(k,1116) * lu(k,1960) + lu(k,2102) = lu(k,2102) - lu(k,1111) * lu(k,2098) + lu(k,2117) = lu(k,2117) - lu(k,1112) * lu(k,2098) + lu(k,2118) = lu(k,2118) - lu(k,1113) * lu(k,2098) + lu(k,2121) = lu(k,2121) - lu(k,1114) * lu(k,2098) + lu(k,2123) = lu(k,2123) - lu(k,1115) * lu(k,2098) + lu(k,2125) = lu(k,2125) - lu(k,1116) * lu(k,2098) + lu(k,2157) = lu(k,2157) - lu(k,1111) * lu(k,2153) + lu(k,2170) = lu(k,2170) - lu(k,1112) * lu(k,2153) + lu(k,2171) = lu(k,2171) - lu(k,1113) * lu(k,2153) + lu(k,2174) = lu(k,2174) - lu(k,1114) * lu(k,2153) + lu(k,2176) = lu(k,2176) - lu(k,1115) * lu(k,2153) + lu(k,2178) = lu(k,2178) - lu(k,1116) * lu(k,2153) + lu(k,2205) = lu(k,2205) - lu(k,1111) * lu(k,2204) + lu(k,2211) = lu(k,2211) - lu(k,1112) * lu(k,2204) + lu(k,2212) = lu(k,2212) - lu(k,1113) * lu(k,2204) + lu(k,2215) = lu(k,2215) - lu(k,1114) * lu(k,2204) + lu(k,2217) = lu(k,2217) - lu(k,1115) * lu(k,2204) + lu(k,2219) = lu(k,2219) - lu(k,1116) * lu(k,2204) + lu(k,2317) = lu(k,2317) - lu(k,1111) * lu(k,2313) + lu(k,2331) = lu(k,2331) - lu(k,1112) * lu(k,2313) + lu(k,2332) = lu(k,2332) - lu(k,1113) * lu(k,2313) + lu(k,2335) = lu(k,2335) - lu(k,1114) * lu(k,2313) + lu(k,2337) = lu(k,2337) - lu(k,1115) * lu(k,2313) + lu(k,2339) = lu(k,2339) - lu(k,1116) * lu(k,2313) + lu(k,1124) = 1._r8 / lu(k,1124) + lu(k,1125) = lu(k,1125) * lu(k,1124) + lu(k,1126) = lu(k,1126) * lu(k,1124) + lu(k,1127) = lu(k,1127) * lu(k,1124) + lu(k,1128) = lu(k,1128) * lu(k,1124) + lu(k,1129) = lu(k,1129) * lu(k,1124) + lu(k,1130) = lu(k,1130) * lu(k,1124) + lu(k,1131) = lu(k,1131) * lu(k,1124) + lu(k,1132) = lu(k,1132) * lu(k,1124) + lu(k,1133) = lu(k,1133) * lu(k,1124) + lu(k,1134) = lu(k,1134) * lu(k,1124) + lu(k,1135) = lu(k,1135) * lu(k,1124) + lu(k,1136) = lu(k,1136) * lu(k,1124) + lu(k,1137) = lu(k,1137) * lu(k,1124) + lu(k,1138) = lu(k,1138) * lu(k,1124) + lu(k,1139) = lu(k,1139) * lu(k,1124) + lu(k,1762) = lu(k,1762) - lu(k,1125) * lu(k,1761) + lu(k,1763) = lu(k,1763) - lu(k,1126) * lu(k,1761) + lu(k,1764) = lu(k,1764) - lu(k,1127) * lu(k,1761) + lu(k,1775) = lu(k,1775) - lu(k,1128) * lu(k,1761) + lu(k,1779) = lu(k,1779) - lu(k,1129) * lu(k,1761) + lu(k,1780) = lu(k,1780) - lu(k,1130) * lu(k,1761) + lu(k,1781) = lu(k,1781) - lu(k,1131) * lu(k,1761) + lu(k,1782) = lu(k,1782) - lu(k,1132) * lu(k,1761) + lu(k,1784) = lu(k,1784) - lu(k,1133) * lu(k,1761) + lu(k,1786) = lu(k,1786) - lu(k,1134) * lu(k,1761) + lu(k,1788) = lu(k,1788) - lu(k,1135) * lu(k,1761) + lu(k,1791) = lu(k,1791) - lu(k,1136) * lu(k,1761) + lu(k,1792) = lu(k,1792) - lu(k,1137) * lu(k,1761) + lu(k,1795) = lu(k,1795) - lu(k,1138) * lu(k,1761) + lu(k,1796) = lu(k,1796) - lu(k,1139) * lu(k,1761) + lu(k,1896) = lu(k,1896) - lu(k,1125) * lu(k,1895) + lu(k,1897) = lu(k,1897) - lu(k,1126) * lu(k,1895) + lu(k,1898) = lu(k,1898) - lu(k,1127) * lu(k,1895) + lu(k,1909) = lu(k,1909) - lu(k,1128) * lu(k,1895) + lu(k,1912) = lu(k,1912) - lu(k,1129) * lu(k,1895) + lu(k,1913) = lu(k,1913) - lu(k,1130) * lu(k,1895) + lu(k,1914) = lu(k,1914) - lu(k,1131) * lu(k,1895) + lu(k,1915) = lu(k,1915) - lu(k,1132) * lu(k,1895) + lu(k,1917) = lu(k,1917) - lu(k,1133) * lu(k,1895) + lu(k,1919) = lu(k,1919) - lu(k,1134) * lu(k,1895) + lu(k,1921) = lu(k,1921) - lu(k,1135) * lu(k,1895) + lu(k,1924) = lu(k,1924) - lu(k,1136) * lu(k,1895) + lu(k,1925) = lu(k,1925) - lu(k,1137) * lu(k,1895) + lu(k,1928) = lu(k,1928) - lu(k,1138) * lu(k,1895) + lu(k,1929) = lu(k,1929) - lu(k,1139) * lu(k,1895) + lu(k,1962) = lu(k,1962) - lu(k,1125) * lu(k,1961) + lu(k,1963) = lu(k,1963) - lu(k,1126) * lu(k,1961) + lu(k,1964) = lu(k,1964) - lu(k,1127) * lu(k,1961) + lu(k,1973) = lu(k,1973) - lu(k,1128) * lu(k,1961) + lu(k,1977) = lu(k,1977) - lu(k,1129) * lu(k,1961) + lu(k,1978) = lu(k,1978) - lu(k,1130) * lu(k,1961) + lu(k,1979) = lu(k,1979) - lu(k,1131) * lu(k,1961) + lu(k,1980) = lu(k,1980) - lu(k,1132) * lu(k,1961) + lu(k,1982) = lu(k,1982) - lu(k,1133) * lu(k,1961) + lu(k,1984) = lu(k,1984) - lu(k,1134) * lu(k,1961) + lu(k,1986) = lu(k,1986) - lu(k,1135) * lu(k,1961) + lu(k,1989) = lu(k,1989) - lu(k,1136) * lu(k,1961) + lu(k,1990) = lu(k,1990) - lu(k,1137) * lu(k,1961) + lu(k,1993) = lu(k,1993) - lu(k,1138) * lu(k,1961) + lu(k,1994) = lu(k,1994) - lu(k,1139) * lu(k,1961) + lu(k,2100) = lu(k,2100) - lu(k,1125) * lu(k,2099) + lu(k,2101) = lu(k,2101) - lu(k,1126) * lu(k,2099) + lu(k,2102) = lu(k,2102) - lu(k,1127) * lu(k,2099) + lu(k,2112) = lu(k,2112) - lu(k,1128) * lu(k,2099) + lu(k,2116) = lu(k,2116) - lu(k,1129) * lu(k,2099) + lu(k,2117) = lu(k,2117) - lu(k,1130) * lu(k,2099) + lu(k,2118) = lu(k,2118) - lu(k,1131) * lu(k,2099) + lu(k,2119) = lu(k,2119) - lu(k,1132) * lu(k,2099) + lu(k,2121) = lu(k,2121) - lu(k,1133) * lu(k,2099) + lu(k,2123) = lu(k,2123) - lu(k,1134) * lu(k,2099) + lu(k,2125) = lu(k,2125) - lu(k,1135) * lu(k,2099) + lu(k,2128) = lu(k,2128) - lu(k,1136) * lu(k,2099) + lu(k,2129) = lu(k,2129) - lu(k,1137) * lu(k,2099) + lu(k,2132) = lu(k,2132) - lu(k,1138) * lu(k,2099) + lu(k,2133) = lu(k,2133) - lu(k,1139) * lu(k,2099) + lu(k,2155) = lu(k,2155) - lu(k,1125) * lu(k,2154) + lu(k,2156) = lu(k,2156) - lu(k,1126) * lu(k,2154) + lu(k,2157) = lu(k,2157) - lu(k,1127) * lu(k,2154) + lu(k,2167) = lu(k,2167) - lu(k,1128) * lu(k,2154) + lu(k,2169) = lu(k,2169) - lu(k,1129) * lu(k,2154) + lu(k,2170) = lu(k,2170) - lu(k,1130) * lu(k,2154) + lu(k,2171) = lu(k,2171) - lu(k,1131) * lu(k,2154) + lu(k,2172) = lu(k,2172) - lu(k,1132) * lu(k,2154) + lu(k,2174) = lu(k,2174) - lu(k,1133) * lu(k,2154) + lu(k,2176) = lu(k,2176) - lu(k,1134) * lu(k,2154) + lu(k,2178) = lu(k,2178) - lu(k,1135) * lu(k,2154) + lu(k,2181) = lu(k,2181) - lu(k,1136) * lu(k,2154) + lu(k,2182) = lu(k,2182) - lu(k,1137) * lu(k,2154) + lu(k,2185) = lu(k,2185) - lu(k,1138) * lu(k,2154) + lu(k,2186) = lu(k,2186) - lu(k,1139) * lu(k,2154) + lu(k,2315) = lu(k,2315) - lu(k,1125) * lu(k,2314) + lu(k,2316) = lu(k,2316) - lu(k,1126) * lu(k,2314) + lu(k,2317) = lu(k,2317) - lu(k,1127) * lu(k,2314) + lu(k,2327) = lu(k,2327) - lu(k,1128) * lu(k,2314) + lu(k,2330) = lu(k,2330) - lu(k,1129) * lu(k,2314) + lu(k,2331) = lu(k,2331) - lu(k,1130) * lu(k,2314) + lu(k,2332) = lu(k,2332) - lu(k,1131) * lu(k,2314) + lu(k,2333) = lu(k,2333) - lu(k,1132) * lu(k,2314) + lu(k,2335) = lu(k,2335) - lu(k,1133) * lu(k,2314) + lu(k,2337) = lu(k,2337) - lu(k,1134) * lu(k,2314) + lu(k,2339) = lu(k,2339) - lu(k,1135) * lu(k,2314) + lu(k,2342) = lu(k,2342) - lu(k,1136) * lu(k,2314) + lu(k,2343) = lu(k,2343) - lu(k,1137) * lu(k,2314) + lu(k,2346) = lu(k,2346) - lu(k,1138) * lu(k,2314) + lu(k,2347) = lu(k,2347) - lu(k,1139) * lu(k,2314) + lu(k,1147) = 1._r8 / lu(k,1147) + lu(k,1148) = lu(k,1148) * lu(k,1147) + lu(k,1149) = lu(k,1149) * lu(k,1147) + lu(k,1150) = lu(k,1150) * lu(k,1147) + lu(k,1151) = lu(k,1151) * lu(k,1147) + lu(k,1152) = lu(k,1152) * lu(k,1147) + lu(k,1153) = lu(k,1153) * lu(k,1147) + lu(k,1154) = lu(k,1154) * lu(k,1147) + lu(k,1155) = lu(k,1155) * lu(k,1147) + lu(k,1156) = lu(k,1156) * lu(k,1147) + lu(k,1157) = lu(k,1157) * lu(k,1147) + lu(k,1158) = lu(k,1158) * lu(k,1147) + lu(k,1159) = lu(k,1159) * lu(k,1147) + lu(k,1160) = lu(k,1160) * lu(k,1147) + lu(k,1763) = lu(k,1763) - lu(k,1148) * lu(k,1762) + lu(k,1764) = lu(k,1764) - lu(k,1149) * lu(k,1762) + lu(k,1775) = lu(k,1775) - lu(k,1150) * lu(k,1762) + lu(k,1779) = lu(k,1779) - lu(k,1151) * lu(k,1762) + lu(k,1780) = lu(k,1780) - lu(k,1152) * lu(k,1762) + lu(k,1781) = lu(k,1781) - lu(k,1153) * lu(k,1762) + lu(k,1782) = lu(k,1782) - lu(k,1154) * lu(k,1762) + lu(k,1784) = lu(k,1784) - lu(k,1155) * lu(k,1762) + lu(k,1786) = lu(k,1786) - lu(k,1156) * lu(k,1762) + lu(k,1788) = lu(k,1788) - lu(k,1157) * lu(k,1762) + lu(k,1792) = lu(k,1792) - lu(k,1158) * lu(k,1762) + lu(k,1795) = lu(k,1795) - lu(k,1159) * lu(k,1762) + lu(k,1796) = lu(k,1796) - lu(k,1160) * lu(k,1762) + lu(k,1897) = lu(k,1897) - lu(k,1148) * lu(k,1896) + lu(k,1898) = lu(k,1898) - lu(k,1149) * lu(k,1896) + lu(k,1909) = lu(k,1909) - lu(k,1150) * lu(k,1896) + lu(k,1912) = lu(k,1912) - lu(k,1151) * lu(k,1896) + lu(k,1913) = lu(k,1913) - lu(k,1152) * lu(k,1896) + lu(k,1914) = lu(k,1914) - lu(k,1153) * lu(k,1896) + lu(k,1915) = lu(k,1915) - lu(k,1154) * lu(k,1896) + lu(k,1917) = lu(k,1917) - lu(k,1155) * lu(k,1896) + lu(k,1919) = lu(k,1919) - lu(k,1156) * lu(k,1896) + lu(k,1921) = lu(k,1921) - lu(k,1157) * lu(k,1896) + lu(k,1925) = lu(k,1925) - lu(k,1158) * lu(k,1896) + lu(k,1928) = lu(k,1928) - lu(k,1159) * lu(k,1896) + lu(k,1929) = lu(k,1929) - lu(k,1160) * lu(k,1896) + lu(k,1963) = lu(k,1963) - lu(k,1148) * lu(k,1962) + lu(k,1964) = lu(k,1964) - lu(k,1149) * lu(k,1962) + lu(k,1973) = lu(k,1973) - lu(k,1150) * lu(k,1962) + lu(k,1977) = lu(k,1977) - lu(k,1151) * lu(k,1962) + lu(k,1978) = lu(k,1978) - lu(k,1152) * lu(k,1962) + lu(k,1979) = lu(k,1979) - lu(k,1153) * lu(k,1962) + lu(k,1980) = lu(k,1980) - lu(k,1154) * lu(k,1962) + lu(k,1982) = lu(k,1982) - lu(k,1155) * lu(k,1962) + lu(k,1984) = lu(k,1984) - lu(k,1156) * lu(k,1962) + lu(k,1986) = lu(k,1986) - lu(k,1157) * lu(k,1962) + lu(k,1990) = lu(k,1990) - lu(k,1158) * lu(k,1962) + lu(k,1993) = lu(k,1993) - lu(k,1159) * lu(k,1962) + lu(k,1994) = lu(k,1994) - lu(k,1160) * lu(k,1962) + lu(k,2101) = lu(k,2101) - lu(k,1148) * lu(k,2100) + lu(k,2102) = lu(k,2102) - lu(k,1149) * lu(k,2100) + lu(k,2112) = lu(k,2112) - lu(k,1150) * lu(k,2100) + lu(k,2116) = lu(k,2116) - lu(k,1151) * lu(k,2100) + lu(k,2117) = lu(k,2117) - lu(k,1152) * lu(k,2100) + lu(k,2118) = lu(k,2118) - lu(k,1153) * lu(k,2100) + lu(k,2119) = lu(k,2119) - lu(k,1154) * lu(k,2100) + lu(k,2121) = lu(k,2121) - lu(k,1155) * lu(k,2100) + lu(k,2123) = lu(k,2123) - lu(k,1156) * lu(k,2100) + lu(k,2125) = lu(k,2125) - lu(k,1157) * lu(k,2100) + lu(k,2129) = lu(k,2129) - lu(k,1158) * lu(k,2100) + lu(k,2132) = lu(k,2132) - lu(k,1159) * lu(k,2100) + lu(k,2133) = lu(k,2133) - lu(k,1160) * lu(k,2100) + lu(k,2156) = lu(k,2156) - lu(k,1148) * lu(k,2155) + lu(k,2157) = lu(k,2157) - lu(k,1149) * lu(k,2155) + lu(k,2167) = lu(k,2167) - lu(k,1150) * lu(k,2155) + lu(k,2169) = lu(k,2169) - lu(k,1151) * lu(k,2155) + lu(k,2170) = lu(k,2170) - lu(k,1152) * lu(k,2155) + lu(k,2171) = lu(k,2171) - lu(k,1153) * lu(k,2155) + lu(k,2172) = lu(k,2172) - lu(k,1154) * lu(k,2155) + lu(k,2174) = lu(k,2174) - lu(k,1155) * lu(k,2155) + lu(k,2176) = lu(k,2176) - lu(k,1156) * lu(k,2155) + lu(k,2178) = lu(k,2178) - lu(k,1157) * lu(k,2155) + lu(k,2182) = lu(k,2182) - lu(k,1158) * lu(k,2155) + lu(k,2185) = lu(k,2185) - lu(k,1159) * lu(k,2155) + lu(k,2186) = lu(k,2186) - lu(k,1160) * lu(k,2155) + lu(k,2316) = lu(k,2316) - lu(k,1148) * lu(k,2315) + lu(k,2317) = lu(k,2317) - lu(k,1149) * lu(k,2315) + lu(k,2327) = lu(k,2327) - lu(k,1150) * lu(k,2315) + lu(k,2330) = lu(k,2330) - lu(k,1151) * lu(k,2315) + lu(k,2331) = lu(k,2331) - lu(k,1152) * lu(k,2315) + lu(k,2332) = lu(k,2332) - lu(k,1153) * lu(k,2315) + lu(k,2333) = lu(k,2333) - lu(k,1154) * lu(k,2315) + lu(k,2335) = lu(k,2335) - lu(k,1155) * lu(k,2315) + lu(k,2337) = lu(k,2337) - lu(k,1156) * lu(k,2315) + lu(k,2339) = lu(k,2339) - lu(k,1157) * lu(k,2315) + lu(k,2343) = lu(k,2343) - lu(k,1158) * lu(k,2315) + lu(k,2346) = lu(k,2346) - lu(k,1159) * lu(k,2315) + lu(k,2347) = lu(k,2347) - lu(k,1160) * lu(k,2315) + end do + end subroutine lu_fac24 + subroutine lu_fac25( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1164) = 1._r8 / lu(k,1164) + lu(k,1165) = lu(k,1165) * lu(k,1164) + lu(k,1166) = lu(k,1166) * lu(k,1164) + lu(k,1167) = lu(k,1167) * lu(k,1164) + lu(k,1168) = lu(k,1168) * lu(k,1164) + lu(k,1169) = lu(k,1169) * lu(k,1164) + lu(k,1170) = lu(k,1170) * lu(k,1164) + lu(k,1171) = lu(k,1171) * lu(k,1164) + lu(k,1172) = lu(k,1172) * lu(k,1164) + lu(k,1173) = lu(k,1173) * lu(k,1164) + lu(k,1274) = lu(k,1274) - lu(k,1165) * lu(k,1270) + lu(k,1279) = lu(k,1279) - lu(k,1166) * lu(k,1270) + lu(k,1282) = lu(k,1282) - lu(k,1167) * lu(k,1270) + lu(k,1283) = lu(k,1283) - lu(k,1168) * lu(k,1270) + lu(k,1284) = lu(k,1284) - lu(k,1169) * lu(k,1270) + lu(k,1285) = lu(k,1285) - lu(k,1170) * lu(k,1270) + lu(k,1289) = lu(k,1289) - lu(k,1171) * lu(k,1270) + lu(k,1290) = lu(k,1290) - lu(k,1172) * lu(k,1270) + lu(k,1291) = lu(k,1291) - lu(k,1173) * lu(k,1270) + lu(k,1309) = lu(k,1309) - lu(k,1165) * lu(k,1305) + lu(k,1314) = lu(k,1314) - lu(k,1166) * lu(k,1305) + lu(k,1317) = lu(k,1317) - lu(k,1167) * lu(k,1305) + lu(k,1318) = lu(k,1318) - lu(k,1168) * lu(k,1305) + lu(k,1319) = lu(k,1319) - lu(k,1169) * lu(k,1305) + lu(k,1320) = lu(k,1320) - lu(k,1170) * lu(k,1305) + lu(k,1324) = lu(k,1324) - lu(k,1171) * lu(k,1305) + lu(k,1325) = lu(k,1325) - lu(k,1172) * lu(k,1305) + lu(k,1326) = lu(k,1326) - lu(k,1173) * lu(k,1305) + lu(k,1334) = lu(k,1334) - lu(k,1165) * lu(k,1332) + lu(k,1337) = lu(k,1337) - lu(k,1166) * lu(k,1332) + lu(k,1340) = lu(k,1340) - lu(k,1167) * lu(k,1332) + lu(k,1341) = lu(k,1341) - lu(k,1168) * lu(k,1332) + lu(k,1342) = lu(k,1342) - lu(k,1169) * lu(k,1332) + lu(k,1343) = lu(k,1343) - lu(k,1170) * lu(k,1332) + lu(k,1346) = lu(k,1346) - lu(k,1171) * lu(k,1332) + lu(k,1347) = lu(k,1347) - lu(k,1172) * lu(k,1332) + lu(k,1348) = lu(k,1348) - lu(k,1173) * lu(k,1332) + lu(k,1768) = lu(k,1768) - lu(k,1165) * lu(k,1763) + lu(k,1775) = lu(k,1775) - lu(k,1166) * lu(k,1763) + lu(k,1781) = lu(k,1781) - lu(k,1167) * lu(k,1763) + lu(k,1782) = lu(k,1782) - lu(k,1168) * lu(k,1763) + lu(k,1784) = lu(k,1784) - lu(k,1169) * lu(k,1763) + lu(k,1786) = lu(k,1786) - lu(k,1170) * lu(k,1763) + lu(k,1792) = lu(k,1792) - lu(k,1171) * lu(k,1763) + lu(k,1795) = lu(k,1795) - lu(k,1172) * lu(k,1763) + lu(k,1796) = lu(k,1796) - lu(k,1173) * lu(k,1763) + lu(k,1902) = lu(k,1902) - lu(k,1165) * lu(k,1897) + lu(k,1909) = lu(k,1909) - lu(k,1166) * lu(k,1897) + lu(k,1914) = lu(k,1914) - lu(k,1167) * lu(k,1897) + lu(k,1915) = lu(k,1915) - lu(k,1168) * lu(k,1897) + lu(k,1917) = lu(k,1917) - lu(k,1169) * lu(k,1897) + lu(k,1919) = lu(k,1919) - lu(k,1170) * lu(k,1897) + lu(k,1925) = lu(k,1925) - lu(k,1171) * lu(k,1897) + lu(k,1928) = lu(k,1928) - lu(k,1172) * lu(k,1897) + lu(k,1929) = lu(k,1929) - lu(k,1173) * lu(k,1897) + lu(k,1967) = lu(k,1967) - lu(k,1165) * lu(k,1963) + lu(k,1973) = lu(k,1973) - lu(k,1166) * lu(k,1963) + lu(k,1979) = lu(k,1979) - lu(k,1167) * lu(k,1963) + lu(k,1980) = lu(k,1980) - lu(k,1168) * lu(k,1963) + lu(k,1982) = lu(k,1982) - lu(k,1169) * lu(k,1963) + lu(k,1984) = lu(k,1984) - lu(k,1170) * lu(k,1963) + lu(k,1990) = lu(k,1990) - lu(k,1171) * lu(k,1963) + lu(k,1993) = lu(k,1993) - lu(k,1172) * lu(k,1963) + lu(k,1994) = lu(k,1994) - lu(k,1173) * lu(k,1963) + lu(k,2106) = lu(k,2106) - lu(k,1165) * lu(k,2101) + lu(k,2112) = lu(k,2112) - lu(k,1166) * lu(k,2101) + lu(k,2118) = lu(k,2118) - lu(k,1167) * lu(k,2101) + lu(k,2119) = lu(k,2119) - lu(k,1168) * lu(k,2101) + lu(k,2121) = lu(k,2121) - lu(k,1169) * lu(k,2101) + lu(k,2123) = lu(k,2123) - lu(k,1170) * lu(k,2101) + lu(k,2129) = lu(k,2129) - lu(k,1171) * lu(k,2101) + lu(k,2132) = lu(k,2132) - lu(k,1172) * lu(k,2101) + lu(k,2133) = lu(k,2133) - lu(k,1173) * lu(k,2101) + lu(k,2161) = lu(k,2161) - lu(k,1165) * lu(k,2156) + lu(k,2167) = lu(k,2167) - lu(k,1166) * lu(k,2156) + lu(k,2171) = lu(k,2171) - lu(k,1167) * lu(k,2156) + lu(k,2172) = lu(k,2172) - lu(k,1168) * lu(k,2156) + lu(k,2174) = lu(k,2174) - lu(k,1169) * lu(k,2156) + lu(k,2176) = lu(k,2176) - lu(k,1170) * lu(k,2156) + lu(k,2182) = lu(k,2182) - lu(k,1171) * lu(k,2156) + lu(k,2185) = lu(k,2185) - lu(k,1172) * lu(k,2156) + lu(k,2186) = lu(k,2186) - lu(k,1173) * lu(k,2156) + lu(k,2321) = lu(k,2321) - lu(k,1165) * lu(k,2316) + lu(k,2327) = lu(k,2327) - lu(k,1166) * lu(k,2316) + lu(k,2332) = lu(k,2332) - lu(k,1167) * lu(k,2316) + lu(k,2333) = lu(k,2333) - lu(k,1168) * lu(k,2316) + lu(k,2335) = lu(k,2335) - lu(k,1169) * lu(k,2316) + lu(k,2337) = lu(k,2337) - lu(k,1170) * lu(k,2316) + lu(k,2343) = lu(k,2343) - lu(k,1171) * lu(k,2316) + lu(k,2346) = lu(k,2346) - lu(k,1172) * lu(k,2316) + lu(k,2347) = lu(k,2347) - lu(k,1173) * lu(k,2316) + lu(k,1175) = 1._r8 / lu(k,1175) + lu(k,1176) = lu(k,1176) * lu(k,1175) + lu(k,1177) = lu(k,1177) * lu(k,1175) + lu(k,1178) = lu(k,1178) * lu(k,1175) + lu(k,1179) = lu(k,1179) * lu(k,1175) + lu(k,1190) = lu(k,1190) - lu(k,1176) * lu(k,1186) + lu(k,1193) = lu(k,1193) - lu(k,1177) * lu(k,1186) + lu(k,1194) = lu(k,1194) - lu(k,1178) * lu(k,1186) + lu(k,1195) = lu(k,1195) - lu(k,1179) * lu(k,1186) + lu(k,1215) = lu(k,1215) - lu(k,1176) * lu(k,1207) + lu(k,1218) = lu(k,1218) - lu(k,1177) * lu(k,1207) + lu(k,1219) = lu(k,1219) - lu(k,1178) * lu(k,1207) + lu(k,1220) = lu(k,1220) - lu(k,1179) * lu(k,1207) + lu(k,1232) = lu(k,1232) - lu(k,1176) * lu(k,1226) + lu(k,1234) = lu(k,1234) - lu(k,1177) * lu(k,1226) + lu(k,1235) = lu(k,1235) - lu(k,1178) * lu(k,1226) + lu(k,1237) = lu(k,1237) - lu(k,1179) * lu(k,1226) + lu(k,1243) = - lu(k,1176) * lu(k,1239) + lu(k,1244) = lu(k,1244) - lu(k,1177) * lu(k,1239) + lu(k,1245) = lu(k,1245) - lu(k,1178) * lu(k,1239) + lu(k,1246) = - lu(k,1179) * lu(k,1239) + lu(k,1281) = lu(k,1281) - lu(k,1176) * lu(k,1271) + lu(k,1284) = lu(k,1284) - lu(k,1177) * lu(k,1271) + lu(k,1285) = lu(k,1285) - lu(k,1178) * lu(k,1271) + lu(k,1287) = lu(k,1287) - lu(k,1179) * lu(k,1271) + lu(k,1316) = lu(k,1316) - lu(k,1176) * lu(k,1306) + lu(k,1319) = lu(k,1319) - lu(k,1177) * lu(k,1306) + lu(k,1320) = lu(k,1320) - lu(k,1178) * lu(k,1306) + lu(k,1322) = lu(k,1322) - lu(k,1179) * lu(k,1306) + lu(k,1339) = lu(k,1339) - lu(k,1176) * lu(k,1333) + lu(k,1342) = lu(k,1342) - lu(k,1177) * lu(k,1333) + lu(k,1343) = lu(k,1343) - lu(k,1178) * lu(k,1333) + lu(k,1344) = lu(k,1344) - lu(k,1179) * lu(k,1333) + lu(k,1362) = lu(k,1362) - lu(k,1176) * lu(k,1354) + lu(k,1365) = lu(k,1365) - lu(k,1177) * lu(k,1354) + lu(k,1366) = lu(k,1366) - lu(k,1178) * lu(k,1354) + lu(k,1368) = lu(k,1368) - lu(k,1179) * lu(k,1354) + lu(k,1383) = lu(k,1383) - lu(k,1176) * lu(k,1378) + lu(k,1386) = lu(k,1386) - lu(k,1177) * lu(k,1378) + lu(k,1387) = lu(k,1387) - lu(k,1178) * lu(k,1378) + lu(k,1389) = lu(k,1389) - lu(k,1179) * lu(k,1378) + lu(k,1416) = lu(k,1416) - lu(k,1176) * lu(k,1403) + lu(k,1419) = lu(k,1419) - lu(k,1177) * lu(k,1403) + lu(k,1420) = lu(k,1420) - lu(k,1178) * lu(k,1403) + lu(k,1422) = lu(k,1422) - lu(k,1179) * lu(k,1403) + lu(k,1447) = lu(k,1447) - lu(k,1176) * lu(k,1445) + lu(k,1450) = lu(k,1450) - lu(k,1177) * lu(k,1445) + lu(k,1452) = lu(k,1452) - lu(k,1178) * lu(k,1445) + lu(k,1454) = lu(k,1454) - lu(k,1179) * lu(k,1445) + lu(k,1464) = lu(k,1464) - lu(k,1176) * lu(k,1460) + lu(k,1467) = lu(k,1467) - lu(k,1177) * lu(k,1460) + lu(k,1468) = lu(k,1468) - lu(k,1178) * lu(k,1460) + lu(k,1469) = lu(k,1469) - lu(k,1179) * lu(k,1460) + lu(k,1504) = lu(k,1504) - lu(k,1176) * lu(k,1501) + lu(k,1508) = lu(k,1508) - lu(k,1177) * lu(k,1501) + lu(k,1510) = lu(k,1510) - lu(k,1178) * lu(k,1501) + lu(k,1512) = lu(k,1512) - lu(k,1179) * lu(k,1501) + lu(k,1527) = lu(k,1527) - lu(k,1176) * lu(k,1522) + lu(k,1531) = lu(k,1531) - lu(k,1177) * lu(k,1522) + lu(k,1533) = lu(k,1533) - lu(k,1178) * lu(k,1522) + lu(k,1535) = lu(k,1535) - lu(k,1179) * lu(k,1522) + lu(k,1572) = lu(k,1572) - lu(k,1176) * lu(k,1564) + lu(k,1576) = lu(k,1576) - lu(k,1177) * lu(k,1564) + lu(k,1578) = lu(k,1578) - lu(k,1178) * lu(k,1564) + lu(k,1580) = lu(k,1580) - lu(k,1179) * lu(k,1564) + lu(k,1780) = lu(k,1780) - lu(k,1176) * lu(k,1764) + lu(k,1784) = lu(k,1784) - lu(k,1177) * lu(k,1764) + lu(k,1786) = lu(k,1786) - lu(k,1178) * lu(k,1764) + lu(k,1788) = lu(k,1788) - lu(k,1179) * lu(k,1764) + lu(k,1913) = lu(k,1913) - lu(k,1176) * lu(k,1898) + lu(k,1917) = lu(k,1917) - lu(k,1177) * lu(k,1898) + lu(k,1919) = lu(k,1919) - lu(k,1178) * lu(k,1898) + lu(k,1921) = lu(k,1921) - lu(k,1179) * lu(k,1898) + lu(k,1978) = lu(k,1978) - lu(k,1176) * lu(k,1964) + lu(k,1982) = lu(k,1982) - lu(k,1177) * lu(k,1964) + lu(k,1984) = lu(k,1984) - lu(k,1178) * lu(k,1964) + lu(k,1986) = lu(k,1986) - lu(k,1179) * lu(k,1964) + lu(k,2012) = lu(k,2012) - lu(k,1176) * lu(k,2006) + lu(k,2016) = lu(k,2016) - lu(k,1177) * lu(k,2006) + lu(k,2018) = lu(k,2018) - lu(k,1178) * lu(k,2006) + lu(k,2020) = lu(k,2020) - lu(k,1179) * lu(k,2006) + lu(k,2117) = lu(k,2117) - lu(k,1176) * lu(k,2102) + lu(k,2121) = lu(k,2121) - lu(k,1177) * lu(k,2102) + lu(k,2123) = lu(k,2123) - lu(k,1178) * lu(k,2102) + lu(k,2125) = lu(k,2125) - lu(k,1179) * lu(k,2102) + lu(k,2170) = lu(k,2170) - lu(k,1176) * lu(k,2157) + lu(k,2174) = lu(k,2174) - lu(k,1177) * lu(k,2157) + lu(k,2176) = lu(k,2176) - lu(k,1178) * lu(k,2157) + lu(k,2178) = lu(k,2178) - lu(k,1179) * lu(k,2157) + lu(k,2211) = lu(k,2211) - lu(k,1176) * lu(k,2205) + lu(k,2215) = lu(k,2215) - lu(k,1177) * lu(k,2205) + lu(k,2217) = lu(k,2217) - lu(k,1178) * lu(k,2205) + lu(k,2219) = lu(k,2219) - lu(k,1179) * lu(k,2205) + lu(k,2331) = lu(k,2331) - lu(k,1176) * lu(k,2317) + lu(k,2335) = lu(k,2335) - lu(k,1177) * lu(k,2317) + lu(k,2337) = lu(k,2337) - lu(k,1178) * lu(k,2317) + lu(k,2339) = lu(k,2339) - lu(k,1179) * lu(k,2317) + lu(k,1187) = 1._r8 / lu(k,1187) + lu(k,1188) = lu(k,1188) * lu(k,1187) + lu(k,1189) = lu(k,1189) * lu(k,1187) + lu(k,1190) = lu(k,1190) * lu(k,1187) + lu(k,1191) = lu(k,1191) * lu(k,1187) + lu(k,1192) = lu(k,1192) * lu(k,1187) + lu(k,1193) = lu(k,1193) * lu(k,1187) + lu(k,1194) = lu(k,1194) * lu(k,1187) + lu(k,1195) = lu(k,1195) * lu(k,1187) + lu(k,1196) = lu(k,1196) * lu(k,1187) + lu(k,1197) = lu(k,1197) * lu(k,1187) + lu(k,1198) = lu(k,1198) * lu(k,1187) + lu(k,1211) = lu(k,1211) - lu(k,1188) * lu(k,1208) + lu(k,1213) = lu(k,1213) - lu(k,1189) * lu(k,1208) + lu(k,1215) = lu(k,1215) - lu(k,1190) * lu(k,1208) + lu(k,1216) = lu(k,1216) - lu(k,1191) * lu(k,1208) + lu(k,1217) = lu(k,1217) - lu(k,1192) * lu(k,1208) + lu(k,1218) = lu(k,1218) - lu(k,1193) * lu(k,1208) + lu(k,1219) = lu(k,1219) - lu(k,1194) * lu(k,1208) + lu(k,1220) = lu(k,1220) - lu(k,1195) * lu(k,1208) + lu(k,1221) = lu(k,1221) - lu(k,1196) * lu(k,1208) + lu(k,1222) = lu(k,1222) - lu(k,1197) * lu(k,1208) + lu(k,1223) = lu(k,1223) - lu(k,1198) * lu(k,1208) + lu(k,1274) = lu(k,1274) - lu(k,1188) * lu(k,1272) + lu(k,1279) = lu(k,1279) - lu(k,1189) * lu(k,1272) + lu(k,1281) = lu(k,1281) - lu(k,1190) * lu(k,1272) + lu(k,1282) = lu(k,1282) - lu(k,1191) * lu(k,1272) + lu(k,1283) = lu(k,1283) - lu(k,1192) * lu(k,1272) + lu(k,1284) = lu(k,1284) - lu(k,1193) * lu(k,1272) + lu(k,1285) = lu(k,1285) - lu(k,1194) * lu(k,1272) + lu(k,1287) = lu(k,1287) - lu(k,1195) * lu(k,1272) + lu(k,1288) = lu(k,1288) - lu(k,1196) * lu(k,1272) + lu(k,1289) = lu(k,1289) - lu(k,1197) * lu(k,1272) + lu(k,1290) = lu(k,1290) - lu(k,1198) * lu(k,1272) + lu(k,1309) = lu(k,1309) - lu(k,1188) * lu(k,1307) + lu(k,1314) = lu(k,1314) - lu(k,1189) * lu(k,1307) + lu(k,1316) = lu(k,1316) - lu(k,1190) * lu(k,1307) + lu(k,1317) = lu(k,1317) - lu(k,1191) * lu(k,1307) + lu(k,1318) = lu(k,1318) - lu(k,1192) * lu(k,1307) + lu(k,1319) = lu(k,1319) - lu(k,1193) * lu(k,1307) + lu(k,1320) = lu(k,1320) - lu(k,1194) * lu(k,1307) + lu(k,1322) = lu(k,1322) - lu(k,1195) * lu(k,1307) + lu(k,1323) = lu(k,1323) - lu(k,1196) * lu(k,1307) + lu(k,1324) = lu(k,1324) - lu(k,1197) * lu(k,1307) + lu(k,1325) = lu(k,1325) - lu(k,1198) * lu(k,1307) + lu(k,1407) = lu(k,1407) - lu(k,1188) * lu(k,1404) + lu(k,1413) = lu(k,1413) - lu(k,1189) * lu(k,1404) + lu(k,1416) = lu(k,1416) - lu(k,1190) * lu(k,1404) + lu(k,1417) = lu(k,1417) - lu(k,1191) * lu(k,1404) + lu(k,1418) = lu(k,1418) - lu(k,1192) * lu(k,1404) + lu(k,1419) = lu(k,1419) - lu(k,1193) * lu(k,1404) + lu(k,1420) = lu(k,1420) - lu(k,1194) * lu(k,1404) + lu(k,1422) = lu(k,1422) - lu(k,1195) * lu(k,1404) + lu(k,1423) = lu(k,1423) - lu(k,1196) * lu(k,1404) + lu(k,1424) = lu(k,1424) - lu(k,1197) * lu(k,1404) + lu(k,1425) = lu(k,1425) - lu(k,1198) * lu(k,1404) + lu(k,1768) = lu(k,1768) - lu(k,1188) * lu(k,1765) + lu(k,1775) = lu(k,1775) - lu(k,1189) * lu(k,1765) + lu(k,1780) = lu(k,1780) - lu(k,1190) * lu(k,1765) + lu(k,1781) = lu(k,1781) - lu(k,1191) * lu(k,1765) + lu(k,1782) = lu(k,1782) - lu(k,1192) * lu(k,1765) + lu(k,1784) = lu(k,1784) - lu(k,1193) * lu(k,1765) + lu(k,1786) = lu(k,1786) - lu(k,1194) * lu(k,1765) + lu(k,1788) = lu(k,1788) - lu(k,1195) * lu(k,1765) + lu(k,1791) = lu(k,1791) - lu(k,1196) * lu(k,1765) + lu(k,1792) = lu(k,1792) - lu(k,1197) * lu(k,1765) + lu(k,1795) = lu(k,1795) - lu(k,1198) * lu(k,1765) + lu(k,1902) = lu(k,1902) - lu(k,1188) * lu(k,1899) + lu(k,1909) = lu(k,1909) - lu(k,1189) * lu(k,1899) + lu(k,1913) = lu(k,1913) - lu(k,1190) * lu(k,1899) + lu(k,1914) = lu(k,1914) - lu(k,1191) * lu(k,1899) + lu(k,1915) = lu(k,1915) - lu(k,1192) * lu(k,1899) + lu(k,1917) = lu(k,1917) - lu(k,1193) * lu(k,1899) + lu(k,1919) = lu(k,1919) - lu(k,1194) * lu(k,1899) + lu(k,1921) = lu(k,1921) - lu(k,1195) * lu(k,1899) + lu(k,1924) = lu(k,1924) - lu(k,1196) * lu(k,1899) + lu(k,1925) = lu(k,1925) - lu(k,1197) * lu(k,1899) + lu(k,1928) = lu(k,1928) - lu(k,1198) * lu(k,1899) + lu(k,2106) = lu(k,2106) - lu(k,1188) * lu(k,2103) + lu(k,2112) = lu(k,2112) - lu(k,1189) * lu(k,2103) + lu(k,2117) = lu(k,2117) - lu(k,1190) * lu(k,2103) + lu(k,2118) = lu(k,2118) - lu(k,1191) * lu(k,2103) + lu(k,2119) = lu(k,2119) - lu(k,1192) * lu(k,2103) + lu(k,2121) = lu(k,2121) - lu(k,1193) * lu(k,2103) + lu(k,2123) = lu(k,2123) - lu(k,1194) * lu(k,2103) + lu(k,2125) = lu(k,2125) - lu(k,1195) * lu(k,2103) + lu(k,2128) = lu(k,2128) - lu(k,1196) * lu(k,2103) + lu(k,2129) = lu(k,2129) - lu(k,1197) * lu(k,2103) + lu(k,2132) = lu(k,2132) - lu(k,1198) * lu(k,2103) + lu(k,2161) = lu(k,2161) - lu(k,1188) * lu(k,2158) + lu(k,2167) = lu(k,2167) - lu(k,1189) * lu(k,2158) + lu(k,2170) = lu(k,2170) - lu(k,1190) * lu(k,2158) + lu(k,2171) = lu(k,2171) - lu(k,1191) * lu(k,2158) + lu(k,2172) = lu(k,2172) - lu(k,1192) * lu(k,2158) + lu(k,2174) = lu(k,2174) - lu(k,1193) * lu(k,2158) + lu(k,2176) = lu(k,2176) - lu(k,1194) * lu(k,2158) + lu(k,2178) = lu(k,2178) - lu(k,1195) * lu(k,2158) + lu(k,2181) = lu(k,2181) - lu(k,1196) * lu(k,2158) + lu(k,2182) = lu(k,2182) - lu(k,1197) * lu(k,2158) + lu(k,2185) = lu(k,2185) - lu(k,1198) * lu(k,2158) + lu(k,2321) = lu(k,2321) - lu(k,1188) * lu(k,2318) + lu(k,2327) = lu(k,2327) - lu(k,1189) * lu(k,2318) + lu(k,2331) = lu(k,2331) - lu(k,1190) * lu(k,2318) + lu(k,2332) = lu(k,2332) - lu(k,1191) * lu(k,2318) + lu(k,2333) = lu(k,2333) - lu(k,1192) * lu(k,2318) + lu(k,2335) = lu(k,2335) - lu(k,1193) * lu(k,2318) + lu(k,2337) = lu(k,2337) - lu(k,1194) * lu(k,2318) + lu(k,2339) = lu(k,2339) - lu(k,1195) * lu(k,2318) + lu(k,2342) = lu(k,2342) - lu(k,1196) * lu(k,2318) + lu(k,2343) = lu(k,2343) - lu(k,1197) * lu(k,2318) + lu(k,2346) = lu(k,2346) - lu(k,1198) * lu(k,2318) + lu(k,1209) = 1._r8 / lu(k,1209) + lu(k,1210) = lu(k,1210) * lu(k,1209) + lu(k,1211) = lu(k,1211) * lu(k,1209) + lu(k,1212) = lu(k,1212) * lu(k,1209) + lu(k,1213) = lu(k,1213) * lu(k,1209) + lu(k,1214) = lu(k,1214) * lu(k,1209) + lu(k,1215) = lu(k,1215) * lu(k,1209) + lu(k,1216) = lu(k,1216) * lu(k,1209) + lu(k,1217) = lu(k,1217) * lu(k,1209) + lu(k,1218) = lu(k,1218) * lu(k,1209) + lu(k,1219) = lu(k,1219) * lu(k,1209) + lu(k,1220) = lu(k,1220) * lu(k,1209) + lu(k,1221) = lu(k,1221) * lu(k,1209) + lu(k,1222) = lu(k,1222) * lu(k,1209) + lu(k,1223) = lu(k,1223) * lu(k,1209) + lu(k,1406) = lu(k,1406) - lu(k,1210) * lu(k,1405) + lu(k,1407) = lu(k,1407) - lu(k,1211) * lu(k,1405) + lu(k,1411) = lu(k,1411) - lu(k,1212) * lu(k,1405) + lu(k,1413) = lu(k,1413) - lu(k,1213) * lu(k,1405) + lu(k,1415) = lu(k,1415) - lu(k,1214) * lu(k,1405) + lu(k,1416) = lu(k,1416) - lu(k,1215) * lu(k,1405) + lu(k,1417) = lu(k,1417) - lu(k,1216) * lu(k,1405) + lu(k,1418) = lu(k,1418) - lu(k,1217) * lu(k,1405) + lu(k,1419) = lu(k,1419) - lu(k,1218) * lu(k,1405) + lu(k,1420) = lu(k,1420) - lu(k,1219) * lu(k,1405) + lu(k,1422) = lu(k,1422) - lu(k,1220) * lu(k,1405) + lu(k,1423) = lu(k,1423) - lu(k,1221) * lu(k,1405) + lu(k,1424) = lu(k,1424) - lu(k,1222) * lu(k,1405) + lu(k,1425) = lu(k,1425) - lu(k,1223) * lu(k,1405) + lu(k,1767) = lu(k,1767) - lu(k,1210) * lu(k,1766) + lu(k,1768) = lu(k,1768) - lu(k,1211) * lu(k,1766) + lu(k,1773) = lu(k,1773) - lu(k,1212) * lu(k,1766) + lu(k,1775) = lu(k,1775) - lu(k,1213) * lu(k,1766) + lu(k,1779) = lu(k,1779) - lu(k,1214) * lu(k,1766) + lu(k,1780) = lu(k,1780) - lu(k,1215) * lu(k,1766) + lu(k,1781) = lu(k,1781) - lu(k,1216) * lu(k,1766) + lu(k,1782) = lu(k,1782) - lu(k,1217) * lu(k,1766) + lu(k,1784) = lu(k,1784) - lu(k,1218) * lu(k,1766) + lu(k,1786) = lu(k,1786) - lu(k,1219) * lu(k,1766) + lu(k,1788) = lu(k,1788) - lu(k,1220) * lu(k,1766) + lu(k,1791) = lu(k,1791) - lu(k,1221) * lu(k,1766) + lu(k,1792) = lu(k,1792) - lu(k,1222) * lu(k,1766) + lu(k,1795) = lu(k,1795) - lu(k,1223) * lu(k,1766) + lu(k,1901) = lu(k,1901) - lu(k,1210) * lu(k,1900) + lu(k,1902) = lu(k,1902) - lu(k,1211) * lu(k,1900) + lu(k,1907) = lu(k,1907) - lu(k,1212) * lu(k,1900) + lu(k,1909) = lu(k,1909) - lu(k,1213) * lu(k,1900) + lu(k,1912) = lu(k,1912) - lu(k,1214) * lu(k,1900) + lu(k,1913) = lu(k,1913) - lu(k,1215) * lu(k,1900) + lu(k,1914) = lu(k,1914) - lu(k,1216) * lu(k,1900) + lu(k,1915) = lu(k,1915) - lu(k,1217) * lu(k,1900) + lu(k,1917) = lu(k,1917) - lu(k,1218) * lu(k,1900) + lu(k,1919) = lu(k,1919) - lu(k,1219) * lu(k,1900) + lu(k,1921) = lu(k,1921) - lu(k,1220) * lu(k,1900) + lu(k,1924) = lu(k,1924) - lu(k,1221) * lu(k,1900) + lu(k,1925) = lu(k,1925) - lu(k,1222) * lu(k,1900) + lu(k,1928) = lu(k,1928) - lu(k,1223) * lu(k,1900) + lu(k,1966) = lu(k,1966) - lu(k,1210) * lu(k,1965) + lu(k,1967) = lu(k,1967) - lu(k,1211) * lu(k,1965) + lu(k,1971) = lu(k,1971) - lu(k,1212) * lu(k,1965) + lu(k,1973) = lu(k,1973) - lu(k,1213) * lu(k,1965) + lu(k,1977) = lu(k,1977) - lu(k,1214) * lu(k,1965) + lu(k,1978) = lu(k,1978) - lu(k,1215) * lu(k,1965) + lu(k,1979) = lu(k,1979) - lu(k,1216) * lu(k,1965) + lu(k,1980) = lu(k,1980) - lu(k,1217) * lu(k,1965) + lu(k,1982) = lu(k,1982) - lu(k,1218) * lu(k,1965) + lu(k,1984) = lu(k,1984) - lu(k,1219) * lu(k,1965) + lu(k,1986) = lu(k,1986) - lu(k,1220) * lu(k,1965) + lu(k,1989) = lu(k,1989) - lu(k,1221) * lu(k,1965) + lu(k,1990) = lu(k,1990) - lu(k,1222) * lu(k,1965) + lu(k,1993) = lu(k,1993) - lu(k,1223) * lu(k,1965) + lu(k,2105) = lu(k,2105) - lu(k,1210) * lu(k,2104) + lu(k,2106) = lu(k,2106) - lu(k,1211) * lu(k,2104) + lu(k,2110) = lu(k,2110) - lu(k,1212) * lu(k,2104) + lu(k,2112) = lu(k,2112) - lu(k,1213) * lu(k,2104) + lu(k,2116) = lu(k,2116) - lu(k,1214) * lu(k,2104) + lu(k,2117) = lu(k,2117) - lu(k,1215) * lu(k,2104) + lu(k,2118) = lu(k,2118) - lu(k,1216) * lu(k,2104) + lu(k,2119) = lu(k,2119) - lu(k,1217) * lu(k,2104) + lu(k,2121) = lu(k,2121) - lu(k,1218) * lu(k,2104) + lu(k,2123) = lu(k,2123) - lu(k,1219) * lu(k,2104) + lu(k,2125) = lu(k,2125) - lu(k,1220) * lu(k,2104) + lu(k,2128) = lu(k,2128) - lu(k,1221) * lu(k,2104) + lu(k,2129) = lu(k,2129) - lu(k,1222) * lu(k,2104) + lu(k,2132) = lu(k,2132) - lu(k,1223) * lu(k,2104) + lu(k,2160) = lu(k,2160) - lu(k,1210) * lu(k,2159) + lu(k,2161) = lu(k,2161) - lu(k,1211) * lu(k,2159) + lu(k,2165) = lu(k,2165) - lu(k,1212) * lu(k,2159) + lu(k,2167) = lu(k,2167) - lu(k,1213) * lu(k,2159) + lu(k,2169) = lu(k,2169) - lu(k,1214) * lu(k,2159) + lu(k,2170) = lu(k,2170) - lu(k,1215) * lu(k,2159) + lu(k,2171) = lu(k,2171) - lu(k,1216) * lu(k,2159) + lu(k,2172) = lu(k,2172) - lu(k,1217) * lu(k,2159) + lu(k,2174) = lu(k,2174) - lu(k,1218) * lu(k,2159) + lu(k,2176) = lu(k,2176) - lu(k,1219) * lu(k,2159) + lu(k,2178) = lu(k,2178) - lu(k,1220) * lu(k,2159) + lu(k,2181) = lu(k,2181) - lu(k,1221) * lu(k,2159) + lu(k,2182) = lu(k,2182) - lu(k,1222) * lu(k,2159) + lu(k,2185) = lu(k,2185) - lu(k,1223) * lu(k,2159) + lu(k,2320) = lu(k,2320) - lu(k,1210) * lu(k,2319) + lu(k,2321) = lu(k,2321) - lu(k,1211) * lu(k,2319) + lu(k,2325) = lu(k,2325) - lu(k,1212) * lu(k,2319) + lu(k,2327) = lu(k,2327) - lu(k,1213) * lu(k,2319) + lu(k,2330) = lu(k,2330) - lu(k,1214) * lu(k,2319) + lu(k,2331) = lu(k,2331) - lu(k,1215) * lu(k,2319) + lu(k,2332) = lu(k,2332) - lu(k,1216) * lu(k,2319) + lu(k,2333) = lu(k,2333) - lu(k,1217) * lu(k,2319) + lu(k,2335) = lu(k,2335) - lu(k,1218) * lu(k,2319) + lu(k,2337) = lu(k,2337) - lu(k,1219) * lu(k,2319) + lu(k,2339) = lu(k,2339) - lu(k,1220) * lu(k,2319) + lu(k,2342) = lu(k,2342) - lu(k,1221) * lu(k,2319) + lu(k,2343) = lu(k,2343) - lu(k,1222) * lu(k,2319) + lu(k,2346) = lu(k,2346) - lu(k,1223) * lu(k,2319) + lu(k,1227) = 1._r8 / lu(k,1227) + lu(k,1228) = lu(k,1228) * lu(k,1227) + lu(k,1229) = lu(k,1229) * lu(k,1227) + lu(k,1230) = lu(k,1230) * lu(k,1227) + lu(k,1231) = lu(k,1231) * lu(k,1227) + lu(k,1232) = lu(k,1232) * lu(k,1227) + lu(k,1233) = lu(k,1233) * lu(k,1227) + lu(k,1234) = lu(k,1234) * lu(k,1227) + lu(k,1235) = lu(k,1235) * lu(k,1227) + lu(k,1236) = lu(k,1236) * lu(k,1227) + lu(k,1237) = lu(k,1237) * lu(k,1227) + lu(k,1238) = lu(k,1238) * lu(k,1227) + lu(k,1274) = lu(k,1274) - lu(k,1228) * lu(k,1273) + lu(k,1276) = - lu(k,1229) * lu(k,1273) + lu(k,1278) = - lu(k,1230) * lu(k,1273) + lu(k,1279) = lu(k,1279) - lu(k,1231) * lu(k,1273) + lu(k,1281) = lu(k,1281) - lu(k,1232) * lu(k,1273) + lu(k,1282) = lu(k,1282) - lu(k,1233) * lu(k,1273) + lu(k,1284) = lu(k,1284) - lu(k,1234) * lu(k,1273) + lu(k,1285) = lu(k,1285) - lu(k,1235) * lu(k,1273) + lu(k,1286) = - lu(k,1236) * lu(k,1273) + lu(k,1287) = lu(k,1287) - lu(k,1237) * lu(k,1273) + lu(k,1291) = lu(k,1291) - lu(k,1238) * lu(k,1273) + lu(k,1309) = lu(k,1309) - lu(k,1228) * lu(k,1308) + lu(k,1311) = - lu(k,1229) * lu(k,1308) + lu(k,1313) = - lu(k,1230) * lu(k,1308) + lu(k,1314) = lu(k,1314) - lu(k,1231) * lu(k,1308) + lu(k,1316) = lu(k,1316) - lu(k,1232) * lu(k,1308) + lu(k,1317) = lu(k,1317) - lu(k,1233) * lu(k,1308) + lu(k,1319) = lu(k,1319) - lu(k,1234) * lu(k,1308) + lu(k,1320) = lu(k,1320) - lu(k,1235) * lu(k,1308) + lu(k,1321) = - lu(k,1236) * lu(k,1308) + lu(k,1322) = lu(k,1322) - lu(k,1237) * lu(k,1308) + lu(k,1326) = lu(k,1326) - lu(k,1238) * lu(k,1308) + lu(k,1407) = lu(k,1407) - lu(k,1228) * lu(k,1406) + lu(k,1410) = lu(k,1410) - lu(k,1229) * lu(k,1406) + lu(k,1412) = lu(k,1412) - lu(k,1230) * lu(k,1406) + lu(k,1413) = lu(k,1413) - lu(k,1231) * lu(k,1406) + lu(k,1416) = lu(k,1416) - lu(k,1232) * lu(k,1406) + lu(k,1417) = lu(k,1417) - lu(k,1233) * lu(k,1406) + lu(k,1419) = lu(k,1419) - lu(k,1234) * lu(k,1406) + lu(k,1420) = lu(k,1420) - lu(k,1235) * lu(k,1406) + lu(k,1421) = lu(k,1421) - lu(k,1236) * lu(k,1406) + lu(k,1422) = lu(k,1422) - lu(k,1237) * lu(k,1406) + lu(k,1426) = lu(k,1426) - lu(k,1238) * lu(k,1406) + lu(k,1768) = lu(k,1768) - lu(k,1228) * lu(k,1767) + lu(k,1772) = lu(k,1772) - lu(k,1229) * lu(k,1767) + lu(k,1774) = lu(k,1774) - lu(k,1230) * lu(k,1767) + lu(k,1775) = lu(k,1775) - lu(k,1231) * lu(k,1767) + lu(k,1780) = lu(k,1780) - lu(k,1232) * lu(k,1767) + lu(k,1781) = lu(k,1781) - lu(k,1233) * lu(k,1767) + lu(k,1784) = lu(k,1784) - lu(k,1234) * lu(k,1767) + lu(k,1786) = lu(k,1786) - lu(k,1235) * lu(k,1767) + lu(k,1787) = lu(k,1787) - lu(k,1236) * lu(k,1767) + lu(k,1788) = lu(k,1788) - lu(k,1237) * lu(k,1767) + lu(k,1796) = lu(k,1796) - lu(k,1238) * lu(k,1767) + lu(k,1902) = lu(k,1902) - lu(k,1228) * lu(k,1901) + lu(k,1906) = lu(k,1906) - lu(k,1229) * lu(k,1901) + lu(k,1908) = lu(k,1908) - lu(k,1230) * lu(k,1901) + lu(k,1909) = lu(k,1909) - lu(k,1231) * lu(k,1901) + lu(k,1913) = lu(k,1913) - lu(k,1232) * lu(k,1901) + lu(k,1914) = lu(k,1914) - lu(k,1233) * lu(k,1901) + lu(k,1917) = lu(k,1917) - lu(k,1234) * lu(k,1901) + lu(k,1919) = lu(k,1919) - lu(k,1235) * lu(k,1901) + lu(k,1920) = lu(k,1920) - lu(k,1236) * lu(k,1901) + lu(k,1921) = lu(k,1921) - lu(k,1237) * lu(k,1901) + lu(k,1929) = lu(k,1929) - lu(k,1238) * lu(k,1901) + lu(k,1967) = lu(k,1967) - lu(k,1228) * lu(k,1966) + lu(k,1970) = - lu(k,1229) * lu(k,1966) + lu(k,1972) = - lu(k,1230) * lu(k,1966) + lu(k,1973) = lu(k,1973) - lu(k,1231) * lu(k,1966) + lu(k,1978) = lu(k,1978) - lu(k,1232) * lu(k,1966) + lu(k,1979) = lu(k,1979) - lu(k,1233) * lu(k,1966) + lu(k,1982) = lu(k,1982) - lu(k,1234) * lu(k,1966) + lu(k,1984) = lu(k,1984) - lu(k,1235) * lu(k,1966) + lu(k,1985) = lu(k,1985) - lu(k,1236) * lu(k,1966) + lu(k,1986) = lu(k,1986) - lu(k,1237) * lu(k,1966) + lu(k,1994) = lu(k,1994) - lu(k,1238) * lu(k,1966) + lu(k,2106) = lu(k,2106) - lu(k,1228) * lu(k,2105) + lu(k,2109) = lu(k,2109) - lu(k,1229) * lu(k,2105) + lu(k,2111) = lu(k,2111) - lu(k,1230) * lu(k,2105) + lu(k,2112) = lu(k,2112) - lu(k,1231) * lu(k,2105) + lu(k,2117) = lu(k,2117) - lu(k,1232) * lu(k,2105) + lu(k,2118) = lu(k,2118) - lu(k,1233) * lu(k,2105) + lu(k,2121) = lu(k,2121) - lu(k,1234) * lu(k,2105) + lu(k,2123) = lu(k,2123) - lu(k,1235) * lu(k,2105) + lu(k,2124) = lu(k,2124) - lu(k,1236) * lu(k,2105) + lu(k,2125) = lu(k,2125) - lu(k,1237) * lu(k,2105) + lu(k,2133) = lu(k,2133) - lu(k,1238) * lu(k,2105) + lu(k,2161) = lu(k,2161) - lu(k,1228) * lu(k,2160) + lu(k,2164) = lu(k,2164) - lu(k,1229) * lu(k,2160) + lu(k,2166) = lu(k,2166) - lu(k,1230) * lu(k,2160) + lu(k,2167) = lu(k,2167) - lu(k,1231) * lu(k,2160) + lu(k,2170) = lu(k,2170) - lu(k,1232) * lu(k,2160) + lu(k,2171) = lu(k,2171) - lu(k,1233) * lu(k,2160) + lu(k,2174) = lu(k,2174) - lu(k,1234) * lu(k,2160) + lu(k,2176) = lu(k,2176) - lu(k,1235) * lu(k,2160) + lu(k,2177) = - lu(k,1236) * lu(k,2160) + lu(k,2178) = lu(k,2178) - lu(k,1237) * lu(k,2160) + lu(k,2186) = lu(k,2186) - lu(k,1238) * lu(k,2160) + lu(k,2321) = lu(k,2321) - lu(k,1228) * lu(k,2320) + lu(k,2324) = lu(k,2324) - lu(k,1229) * lu(k,2320) + lu(k,2326) = lu(k,2326) - lu(k,1230) * lu(k,2320) + lu(k,2327) = lu(k,2327) - lu(k,1231) * lu(k,2320) + lu(k,2331) = lu(k,2331) - lu(k,1232) * lu(k,2320) + lu(k,2332) = lu(k,2332) - lu(k,1233) * lu(k,2320) + lu(k,2335) = lu(k,2335) - lu(k,1234) * lu(k,2320) + lu(k,2337) = lu(k,2337) - lu(k,1235) * lu(k,2320) + lu(k,2338) = lu(k,2338) - lu(k,1236) * lu(k,2320) + lu(k,2339) = lu(k,2339) - lu(k,1237) * lu(k,2320) + lu(k,2347) = lu(k,2347) - lu(k,1238) * lu(k,2320) + end do + end subroutine lu_fac25 + subroutine lu_fac26( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1240) = 1._r8 / lu(k,1240) + lu(k,1241) = lu(k,1241) * lu(k,1240) + lu(k,1242) = lu(k,1242) * lu(k,1240) + lu(k,1243) = lu(k,1243) * lu(k,1240) + lu(k,1244) = lu(k,1244) * lu(k,1240) + lu(k,1245) = lu(k,1245) * lu(k,1240) + lu(k,1246) = lu(k,1246) * lu(k,1240) + lu(k,1247) = lu(k,1247) * lu(k,1240) + lu(k,1248) = lu(k,1248) * lu(k,1240) + lu(k,1279) = lu(k,1279) - lu(k,1241) * lu(k,1274) + lu(k,1280) = lu(k,1280) - lu(k,1242) * lu(k,1274) + lu(k,1281) = lu(k,1281) - lu(k,1243) * lu(k,1274) + lu(k,1284) = lu(k,1284) - lu(k,1244) * lu(k,1274) + lu(k,1285) = lu(k,1285) - lu(k,1245) * lu(k,1274) + lu(k,1287) = lu(k,1287) - lu(k,1246) * lu(k,1274) + lu(k,1288) = lu(k,1288) - lu(k,1247) * lu(k,1274) + lu(k,1291) = lu(k,1291) - lu(k,1248) * lu(k,1274) + lu(k,1314) = lu(k,1314) - lu(k,1241) * lu(k,1309) + lu(k,1315) = lu(k,1315) - lu(k,1242) * lu(k,1309) + lu(k,1316) = lu(k,1316) - lu(k,1243) * lu(k,1309) + lu(k,1319) = lu(k,1319) - lu(k,1244) * lu(k,1309) + lu(k,1320) = lu(k,1320) - lu(k,1245) * lu(k,1309) + lu(k,1322) = lu(k,1322) - lu(k,1246) * lu(k,1309) + lu(k,1323) = lu(k,1323) - lu(k,1247) * lu(k,1309) + lu(k,1326) = lu(k,1326) - lu(k,1248) * lu(k,1309) + lu(k,1337) = lu(k,1337) - lu(k,1241) * lu(k,1334) + lu(k,1338) = lu(k,1338) - lu(k,1242) * lu(k,1334) + lu(k,1339) = lu(k,1339) - lu(k,1243) * lu(k,1334) + lu(k,1342) = lu(k,1342) - lu(k,1244) * lu(k,1334) + lu(k,1343) = lu(k,1343) - lu(k,1245) * lu(k,1334) + lu(k,1344) = lu(k,1344) - lu(k,1246) * lu(k,1334) + lu(k,1345) = lu(k,1345) - lu(k,1247) * lu(k,1334) + lu(k,1348) = lu(k,1348) - lu(k,1248) * lu(k,1334) + lu(k,1359) = lu(k,1359) - lu(k,1241) * lu(k,1355) + lu(k,1361) = lu(k,1361) - lu(k,1242) * lu(k,1355) + lu(k,1362) = lu(k,1362) - lu(k,1243) * lu(k,1355) + lu(k,1365) = lu(k,1365) - lu(k,1244) * lu(k,1355) + lu(k,1366) = lu(k,1366) - lu(k,1245) * lu(k,1355) + lu(k,1368) = lu(k,1368) - lu(k,1246) * lu(k,1355) + lu(k,1369) = lu(k,1369) - lu(k,1247) * lu(k,1355) + lu(k,1372) = lu(k,1372) - lu(k,1248) * lu(k,1355) + lu(k,1381) = lu(k,1381) - lu(k,1241) * lu(k,1379) + lu(k,1382) = - lu(k,1242) * lu(k,1379) + lu(k,1383) = lu(k,1383) - lu(k,1243) * lu(k,1379) + lu(k,1386) = lu(k,1386) - lu(k,1244) * lu(k,1379) + lu(k,1387) = lu(k,1387) - lu(k,1245) * lu(k,1379) + lu(k,1389) = lu(k,1389) - lu(k,1246) * lu(k,1379) + lu(k,1390) = lu(k,1390) - lu(k,1247) * lu(k,1379) + lu(k,1393) = lu(k,1393) - lu(k,1248) * lu(k,1379) + lu(k,1413) = lu(k,1413) - lu(k,1241) * lu(k,1407) + lu(k,1415) = lu(k,1415) - lu(k,1242) * lu(k,1407) + lu(k,1416) = lu(k,1416) - lu(k,1243) * lu(k,1407) + lu(k,1419) = lu(k,1419) - lu(k,1244) * lu(k,1407) + lu(k,1420) = lu(k,1420) - lu(k,1245) * lu(k,1407) + lu(k,1422) = lu(k,1422) - lu(k,1246) * lu(k,1407) + lu(k,1423) = lu(k,1423) - lu(k,1247) * lu(k,1407) + lu(k,1426) = lu(k,1426) - lu(k,1248) * lu(k,1407) + lu(k,1567) = lu(k,1567) - lu(k,1241) * lu(k,1565) + lu(k,1571) = lu(k,1571) - lu(k,1242) * lu(k,1565) + lu(k,1572) = lu(k,1572) - lu(k,1243) * lu(k,1565) + lu(k,1576) = lu(k,1576) - lu(k,1244) * lu(k,1565) + lu(k,1578) = lu(k,1578) - lu(k,1245) * lu(k,1565) + lu(k,1580) = lu(k,1580) - lu(k,1246) * lu(k,1565) + lu(k,1583) = lu(k,1583) - lu(k,1247) * lu(k,1565) + lu(k,1588) = lu(k,1588) - lu(k,1248) * lu(k,1565) + lu(k,1775) = lu(k,1775) - lu(k,1241) * lu(k,1768) + lu(k,1779) = lu(k,1779) - lu(k,1242) * lu(k,1768) + lu(k,1780) = lu(k,1780) - lu(k,1243) * lu(k,1768) + lu(k,1784) = lu(k,1784) - lu(k,1244) * lu(k,1768) + lu(k,1786) = lu(k,1786) - lu(k,1245) * lu(k,1768) + lu(k,1788) = lu(k,1788) - lu(k,1246) * lu(k,1768) + lu(k,1791) = lu(k,1791) - lu(k,1247) * lu(k,1768) + lu(k,1796) = lu(k,1796) - lu(k,1248) * lu(k,1768) + lu(k,1909) = lu(k,1909) - lu(k,1241) * lu(k,1902) + lu(k,1912) = lu(k,1912) - lu(k,1242) * lu(k,1902) + lu(k,1913) = lu(k,1913) - lu(k,1243) * lu(k,1902) + lu(k,1917) = lu(k,1917) - lu(k,1244) * lu(k,1902) + lu(k,1919) = lu(k,1919) - lu(k,1245) * lu(k,1902) + lu(k,1921) = lu(k,1921) - lu(k,1246) * lu(k,1902) + lu(k,1924) = lu(k,1924) - lu(k,1247) * lu(k,1902) + lu(k,1929) = lu(k,1929) - lu(k,1248) * lu(k,1902) + lu(k,1973) = lu(k,1973) - lu(k,1241) * lu(k,1967) + lu(k,1977) = lu(k,1977) - lu(k,1242) * lu(k,1967) + lu(k,1978) = lu(k,1978) - lu(k,1243) * lu(k,1967) + lu(k,1982) = lu(k,1982) - lu(k,1244) * lu(k,1967) + lu(k,1984) = lu(k,1984) - lu(k,1245) * lu(k,1967) + lu(k,1986) = lu(k,1986) - lu(k,1246) * lu(k,1967) + lu(k,1989) = lu(k,1989) - lu(k,1247) * lu(k,1967) + lu(k,1994) = lu(k,1994) - lu(k,1248) * lu(k,1967) + lu(k,2112) = lu(k,2112) - lu(k,1241) * lu(k,2106) + lu(k,2116) = lu(k,2116) - lu(k,1242) * lu(k,2106) + lu(k,2117) = lu(k,2117) - lu(k,1243) * lu(k,2106) + lu(k,2121) = lu(k,2121) - lu(k,1244) * lu(k,2106) + lu(k,2123) = lu(k,2123) - lu(k,1245) * lu(k,2106) + lu(k,2125) = lu(k,2125) - lu(k,1246) * lu(k,2106) + lu(k,2128) = lu(k,2128) - lu(k,1247) * lu(k,2106) + lu(k,2133) = lu(k,2133) - lu(k,1248) * lu(k,2106) + lu(k,2167) = lu(k,2167) - lu(k,1241) * lu(k,2161) + lu(k,2169) = lu(k,2169) - lu(k,1242) * lu(k,2161) + lu(k,2170) = lu(k,2170) - lu(k,1243) * lu(k,2161) + lu(k,2174) = lu(k,2174) - lu(k,1244) * lu(k,2161) + lu(k,2176) = lu(k,2176) - lu(k,1245) * lu(k,2161) + lu(k,2178) = lu(k,2178) - lu(k,1246) * lu(k,2161) + lu(k,2181) = lu(k,2181) - lu(k,1247) * lu(k,2161) + lu(k,2186) = lu(k,2186) - lu(k,1248) * lu(k,2161) + lu(k,2327) = lu(k,2327) - lu(k,1241) * lu(k,2321) + lu(k,2330) = lu(k,2330) - lu(k,1242) * lu(k,2321) + lu(k,2331) = lu(k,2331) - lu(k,1243) * lu(k,2321) + lu(k,2335) = lu(k,2335) - lu(k,1244) * lu(k,2321) + lu(k,2337) = lu(k,2337) - lu(k,1245) * lu(k,2321) + lu(k,2339) = lu(k,2339) - lu(k,1246) * lu(k,2321) + lu(k,2342) = lu(k,2342) - lu(k,1247) * lu(k,2321) + lu(k,2347) = lu(k,2347) - lu(k,1248) * lu(k,2321) + lu(k,1251) = 1._r8 / lu(k,1251) + lu(k,1252) = lu(k,1252) * lu(k,1251) + lu(k,1253) = lu(k,1253) * lu(k,1251) + lu(k,1254) = lu(k,1254) * lu(k,1251) + lu(k,1255) = lu(k,1255) * lu(k,1251) + lu(k,1256) = lu(k,1256) * lu(k,1251) + lu(k,1257) = lu(k,1257) * lu(k,1251) + lu(k,1258) = lu(k,1258) * lu(k,1251) + lu(k,1259) = lu(k,1259) * lu(k,1251) + lu(k,1260) = lu(k,1260) * lu(k,1251) + lu(k,1261) = lu(k,1261) * lu(k,1251) + lu(k,1262) = lu(k,1262) * lu(k,1251) + lu(k,1462) = lu(k,1462) - lu(k,1252) * lu(k,1461) + lu(k,1463) = lu(k,1463) - lu(k,1253) * lu(k,1461) + lu(k,1466) = lu(k,1466) - lu(k,1254) * lu(k,1461) + lu(k,1467) = lu(k,1467) - lu(k,1255) * lu(k,1461) + lu(k,1469) = lu(k,1469) - lu(k,1256) * lu(k,1461) + lu(k,1470) = lu(k,1470) - lu(k,1257) * lu(k,1461) + lu(k,1471) = lu(k,1471) - lu(k,1258) * lu(k,1461) + lu(k,1472) = lu(k,1472) - lu(k,1259) * lu(k,1461) + lu(k,1473) = lu(k,1473) - lu(k,1260) * lu(k,1461) + lu(k,1474) = lu(k,1474) - lu(k,1261) * lu(k,1461) + lu(k,1475) = lu(k,1475) - lu(k,1262) * lu(k,1461) + lu(k,1479) = lu(k,1479) - lu(k,1252) * lu(k,1478) + lu(k,1480) = lu(k,1480) - lu(k,1253) * lu(k,1478) + lu(k,1484) = - lu(k,1254) * lu(k,1478) + lu(k,1485) = lu(k,1485) - lu(k,1255) * lu(k,1478) + lu(k,1487) = - lu(k,1256) * lu(k,1478) + lu(k,1488) = lu(k,1488) - lu(k,1257) * lu(k,1478) + lu(k,1489) = - lu(k,1258) * lu(k,1478) + lu(k,1490) = lu(k,1490) - lu(k,1259) * lu(k,1478) + lu(k,1491) = lu(k,1491) - lu(k,1260) * lu(k,1478) + lu(k,1492) = - lu(k,1261) * lu(k,1478) + lu(k,1493) = lu(k,1493) - lu(k,1262) * lu(k,1478) + lu(k,1525) = - lu(k,1252) * lu(k,1523) + lu(k,1526) = lu(k,1526) - lu(k,1253) * lu(k,1523) + lu(k,1530) = lu(k,1530) - lu(k,1254) * lu(k,1523) + lu(k,1531) = lu(k,1531) - lu(k,1255) * lu(k,1523) + lu(k,1535) = lu(k,1535) - lu(k,1256) * lu(k,1523) + lu(k,1536) = lu(k,1536) - lu(k,1257) * lu(k,1523) + lu(k,1537) = lu(k,1537) - lu(k,1258) * lu(k,1523) + lu(k,1538) = lu(k,1538) - lu(k,1259) * lu(k,1523) + lu(k,1539) = - lu(k,1260) * lu(k,1523) + lu(k,1540) = lu(k,1540) - lu(k,1261) * lu(k,1523) + lu(k,1543) = lu(k,1543) - lu(k,1262) * lu(k,1523) + lu(k,1613) = lu(k,1613) - lu(k,1252) * lu(k,1611) + lu(k,1614) = lu(k,1614) - lu(k,1253) * lu(k,1611) + lu(k,1618) = lu(k,1618) - lu(k,1254) * lu(k,1611) + lu(k,1619) = lu(k,1619) - lu(k,1255) * lu(k,1611) + lu(k,1623) = lu(k,1623) - lu(k,1256) * lu(k,1611) + lu(k,1624) = lu(k,1624) - lu(k,1257) * lu(k,1611) + lu(k,1625) = lu(k,1625) - lu(k,1258) * lu(k,1611) + lu(k,1626) = lu(k,1626) - lu(k,1259) * lu(k,1611) + lu(k,1627) = lu(k,1627) - lu(k,1260) * lu(k,1611) + lu(k,1628) = lu(k,1628) - lu(k,1261) * lu(k,1611) + lu(k,1631) = lu(k,1631) - lu(k,1262) * lu(k,1611) + lu(k,1778) = lu(k,1778) - lu(k,1252) * lu(k,1769) + lu(k,1779) = lu(k,1779) - lu(k,1253) * lu(k,1769) + lu(k,1783) = lu(k,1783) - lu(k,1254) * lu(k,1769) + lu(k,1784) = lu(k,1784) - lu(k,1255) * lu(k,1769) + lu(k,1788) = lu(k,1788) - lu(k,1256) * lu(k,1769) + lu(k,1789) = lu(k,1789) - lu(k,1257) * lu(k,1769) + lu(k,1790) = lu(k,1790) - lu(k,1258) * lu(k,1769) + lu(k,1791) = lu(k,1791) - lu(k,1259) * lu(k,1769) + lu(k,1792) = lu(k,1792) - lu(k,1260) * lu(k,1769) + lu(k,1793) = lu(k,1793) - lu(k,1261) * lu(k,1769) + lu(k,1796) = lu(k,1796) - lu(k,1262) * lu(k,1769) + lu(k,1911) = - lu(k,1252) * lu(k,1903) + lu(k,1912) = lu(k,1912) - lu(k,1253) * lu(k,1903) + lu(k,1916) = lu(k,1916) - lu(k,1254) * lu(k,1903) + lu(k,1917) = lu(k,1917) - lu(k,1255) * lu(k,1903) + lu(k,1921) = lu(k,1921) - lu(k,1256) * lu(k,1903) + lu(k,1922) = lu(k,1922) - lu(k,1257) * lu(k,1903) + lu(k,1923) = lu(k,1923) - lu(k,1258) * lu(k,1903) + lu(k,1924) = lu(k,1924) - lu(k,1259) * lu(k,1903) + lu(k,1925) = lu(k,1925) - lu(k,1260) * lu(k,1903) + lu(k,1926) = lu(k,1926) - lu(k,1261) * lu(k,1903) + lu(k,1929) = lu(k,1929) - lu(k,1262) * lu(k,1903) + lu(k,2010) = - lu(k,1252) * lu(k,2007) + lu(k,2011) = lu(k,2011) - lu(k,1253) * lu(k,2007) + lu(k,2015) = lu(k,2015) - lu(k,1254) * lu(k,2007) + lu(k,2016) = lu(k,2016) - lu(k,1255) * lu(k,2007) + lu(k,2020) = lu(k,2020) - lu(k,1256) * lu(k,2007) + lu(k,2021) = lu(k,2021) - lu(k,1257) * lu(k,2007) + lu(k,2022) = lu(k,2022) - lu(k,1258) * lu(k,2007) + lu(k,2023) = lu(k,2023) - lu(k,1259) * lu(k,2007) + lu(k,2024) = - lu(k,1260) * lu(k,2007) + lu(k,2025) = lu(k,2025) - lu(k,1261) * lu(k,2007) + lu(k,2028) = lu(k,2028) - lu(k,1262) * lu(k,2007) + lu(k,2030) = - lu(k,1252) * lu(k,2029) + lu(k,2031) = - lu(k,1253) * lu(k,2029) + lu(k,2035) = - lu(k,1254) * lu(k,2029) + lu(k,2036) = lu(k,2036) - lu(k,1255) * lu(k,2029) + lu(k,2040) = lu(k,2040) - lu(k,1256) * lu(k,2029) + lu(k,2041) = lu(k,2041) - lu(k,1257) * lu(k,2029) + lu(k,2042) = - lu(k,1258) * lu(k,2029) + lu(k,2043) = - lu(k,1259) * lu(k,2029) + lu(k,2044) = - lu(k,1260) * lu(k,2029) + lu(k,2045) = - lu(k,1261) * lu(k,2029) + lu(k,2048) = lu(k,2048) - lu(k,1262) * lu(k,2029) + lu(k,2209) = lu(k,2209) - lu(k,1252) * lu(k,2206) + lu(k,2210) = lu(k,2210) - lu(k,1253) * lu(k,2206) + lu(k,2214) = lu(k,2214) - lu(k,1254) * lu(k,2206) + lu(k,2215) = lu(k,2215) - lu(k,1255) * lu(k,2206) + lu(k,2219) = lu(k,2219) - lu(k,1256) * lu(k,2206) + lu(k,2220) = lu(k,2220) - lu(k,1257) * lu(k,2206) + lu(k,2221) = lu(k,2221) - lu(k,1258) * lu(k,2206) + lu(k,2222) = lu(k,2222) - lu(k,1259) * lu(k,2206) + lu(k,2223) = lu(k,2223) - lu(k,1260) * lu(k,2206) + lu(k,2224) = lu(k,2224) - lu(k,1261) * lu(k,2206) + lu(k,2227) = lu(k,2227) - lu(k,1262) * lu(k,2206) + lu(k,2356) = lu(k,2356) - lu(k,1252) * lu(k,2353) + lu(k,2357) = lu(k,2357) - lu(k,1253) * lu(k,2353) + lu(k,2361) = lu(k,2361) - lu(k,1254) * lu(k,2353) + lu(k,2362) = lu(k,2362) - lu(k,1255) * lu(k,2353) + lu(k,2366) = lu(k,2366) - lu(k,1256) * lu(k,2353) + lu(k,2367) = lu(k,2367) - lu(k,1257) * lu(k,2353) + lu(k,2368) = - lu(k,1258) * lu(k,2353) + lu(k,2369) = lu(k,2369) - lu(k,1259) * lu(k,2353) + lu(k,2370) = lu(k,2370) - lu(k,1260) * lu(k,2353) + lu(k,2371) = - lu(k,1261) * lu(k,2353) + lu(k,2374) = lu(k,2374) - lu(k,1262) * lu(k,2353) + lu(k,1275) = 1._r8 / lu(k,1275) + lu(k,1276) = lu(k,1276) * lu(k,1275) + lu(k,1277) = lu(k,1277) * lu(k,1275) + lu(k,1278) = lu(k,1278) * lu(k,1275) + lu(k,1279) = lu(k,1279) * lu(k,1275) + lu(k,1280) = lu(k,1280) * lu(k,1275) + lu(k,1281) = lu(k,1281) * lu(k,1275) + lu(k,1282) = lu(k,1282) * lu(k,1275) + lu(k,1283) = lu(k,1283) * lu(k,1275) + lu(k,1284) = lu(k,1284) * lu(k,1275) + lu(k,1285) = lu(k,1285) * lu(k,1275) + lu(k,1286) = lu(k,1286) * lu(k,1275) + lu(k,1287) = lu(k,1287) * lu(k,1275) + lu(k,1288) = lu(k,1288) * lu(k,1275) + lu(k,1289) = lu(k,1289) * lu(k,1275) + lu(k,1290) = lu(k,1290) * lu(k,1275) + lu(k,1291) = lu(k,1291) * lu(k,1275) + lu(k,1410) = lu(k,1410) - lu(k,1276) * lu(k,1408) + lu(k,1411) = lu(k,1411) - lu(k,1277) * lu(k,1408) + lu(k,1412) = lu(k,1412) - lu(k,1278) * lu(k,1408) + lu(k,1413) = lu(k,1413) - lu(k,1279) * lu(k,1408) + lu(k,1415) = lu(k,1415) - lu(k,1280) * lu(k,1408) + lu(k,1416) = lu(k,1416) - lu(k,1281) * lu(k,1408) + lu(k,1417) = lu(k,1417) - lu(k,1282) * lu(k,1408) + lu(k,1418) = lu(k,1418) - lu(k,1283) * lu(k,1408) + lu(k,1419) = lu(k,1419) - lu(k,1284) * lu(k,1408) + lu(k,1420) = lu(k,1420) - lu(k,1285) * lu(k,1408) + lu(k,1421) = lu(k,1421) - lu(k,1286) * lu(k,1408) + lu(k,1422) = lu(k,1422) - lu(k,1287) * lu(k,1408) + lu(k,1423) = lu(k,1423) - lu(k,1288) * lu(k,1408) + lu(k,1424) = lu(k,1424) - lu(k,1289) * lu(k,1408) + lu(k,1425) = lu(k,1425) - lu(k,1290) * lu(k,1408) + lu(k,1426) = lu(k,1426) - lu(k,1291) * lu(k,1408) + lu(k,1772) = lu(k,1772) - lu(k,1276) * lu(k,1770) + lu(k,1773) = lu(k,1773) - lu(k,1277) * lu(k,1770) + lu(k,1774) = lu(k,1774) - lu(k,1278) * lu(k,1770) + lu(k,1775) = lu(k,1775) - lu(k,1279) * lu(k,1770) + lu(k,1779) = lu(k,1779) - lu(k,1280) * lu(k,1770) + lu(k,1780) = lu(k,1780) - lu(k,1281) * lu(k,1770) + lu(k,1781) = lu(k,1781) - lu(k,1282) * lu(k,1770) + lu(k,1782) = lu(k,1782) - lu(k,1283) * lu(k,1770) + lu(k,1784) = lu(k,1784) - lu(k,1284) * lu(k,1770) + lu(k,1786) = lu(k,1786) - lu(k,1285) * lu(k,1770) + lu(k,1787) = lu(k,1787) - lu(k,1286) * lu(k,1770) + lu(k,1788) = lu(k,1788) - lu(k,1287) * lu(k,1770) + lu(k,1791) = lu(k,1791) - lu(k,1288) * lu(k,1770) + lu(k,1792) = lu(k,1792) - lu(k,1289) * lu(k,1770) + lu(k,1795) = lu(k,1795) - lu(k,1290) * lu(k,1770) + lu(k,1796) = lu(k,1796) - lu(k,1291) * lu(k,1770) + lu(k,1906) = lu(k,1906) - lu(k,1276) * lu(k,1904) + lu(k,1907) = lu(k,1907) - lu(k,1277) * lu(k,1904) + lu(k,1908) = lu(k,1908) - lu(k,1278) * lu(k,1904) + lu(k,1909) = lu(k,1909) - lu(k,1279) * lu(k,1904) + lu(k,1912) = lu(k,1912) - lu(k,1280) * lu(k,1904) + lu(k,1913) = lu(k,1913) - lu(k,1281) * lu(k,1904) + lu(k,1914) = lu(k,1914) - lu(k,1282) * lu(k,1904) + lu(k,1915) = lu(k,1915) - lu(k,1283) * lu(k,1904) + lu(k,1917) = lu(k,1917) - lu(k,1284) * lu(k,1904) + lu(k,1919) = lu(k,1919) - lu(k,1285) * lu(k,1904) + lu(k,1920) = lu(k,1920) - lu(k,1286) * lu(k,1904) + lu(k,1921) = lu(k,1921) - lu(k,1287) * lu(k,1904) + lu(k,1924) = lu(k,1924) - lu(k,1288) * lu(k,1904) + lu(k,1925) = lu(k,1925) - lu(k,1289) * lu(k,1904) + lu(k,1928) = lu(k,1928) - lu(k,1290) * lu(k,1904) + lu(k,1929) = lu(k,1929) - lu(k,1291) * lu(k,1904) + lu(k,1970) = lu(k,1970) - lu(k,1276) * lu(k,1968) + lu(k,1971) = lu(k,1971) - lu(k,1277) * lu(k,1968) + lu(k,1972) = lu(k,1972) - lu(k,1278) * lu(k,1968) + lu(k,1973) = lu(k,1973) - lu(k,1279) * lu(k,1968) + lu(k,1977) = lu(k,1977) - lu(k,1280) * lu(k,1968) + lu(k,1978) = lu(k,1978) - lu(k,1281) * lu(k,1968) + lu(k,1979) = lu(k,1979) - lu(k,1282) * lu(k,1968) + lu(k,1980) = lu(k,1980) - lu(k,1283) * lu(k,1968) + lu(k,1982) = lu(k,1982) - lu(k,1284) * lu(k,1968) + lu(k,1984) = lu(k,1984) - lu(k,1285) * lu(k,1968) + lu(k,1985) = lu(k,1985) - lu(k,1286) * lu(k,1968) + lu(k,1986) = lu(k,1986) - lu(k,1287) * lu(k,1968) + lu(k,1989) = lu(k,1989) - lu(k,1288) * lu(k,1968) + lu(k,1990) = lu(k,1990) - lu(k,1289) * lu(k,1968) + lu(k,1993) = lu(k,1993) - lu(k,1290) * lu(k,1968) + lu(k,1994) = lu(k,1994) - lu(k,1291) * lu(k,1968) + lu(k,2109) = lu(k,2109) - lu(k,1276) * lu(k,2107) + lu(k,2110) = lu(k,2110) - lu(k,1277) * lu(k,2107) + lu(k,2111) = lu(k,2111) - lu(k,1278) * lu(k,2107) + lu(k,2112) = lu(k,2112) - lu(k,1279) * lu(k,2107) + lu(k,2116) = lu(k,2116) - lu(k,1280) * lu(k,2107) + lu(k,2117) = lu(k,2117) - lu(k,1281) * lu(k,2107) + lu(k,2118) = lu(k,2118) - lu(k,1282) * lu(k,2107) + lu(k,2119) = lu(k,2119) - lu(k,1283) * lu(k,2107) + lu(k,2121) = lu(k,2121) - lu(k,1284) * lu(k,2107) + lu(k,2123) = lu(k,2123) - lu(k,1285) * lu(k,2107) + lu(k,2124) = lu(k,2124) - lu(k,1286) * lu(k,2107) + lu(k,2125) = lu(k,2125) - lu(k,1287) * lu(k,2107) + lu(k,2128) = lu(k,2128) - lu(k,1288) * lu(k,2107) + lu(k,2129) = lu(k,2129) - lu(k,1289) * lu(k,2107) + lu(k,2132) = lu(k,2132) - lu(k,1290) * lu(k,2107) + lu(k,2133) = lu(k,2133) - lu(k,1291) * lu(k,2107) + lu(k,2164) = lu(k,2164) - lu(k,1276) * lu(k,2162) + lu(k,2165) = lu(k,2165) - lu(k,1277) * lu(k,2162) + lu(k,2166) = lu(k,2166) - lu(k,1278) * lu(k,2162) + lu(k,2167) = lu(k,2167) - lu(k,1279) * lu(k,2162) + lu(k,2169) = lu(k,2169) - lu(k,1280) * lu(k,2162) + lu(k,2170) = lu(k,2170) - lu(k,1281) * lu(k,2162) + lu(k,2171) = lu(k,2171) - lu(k,1282) * lu(k,2162) + lu(k,2172) = lu(k,2172) - lu(k,1283) * lu(k,2162) + lu(k,2174) = lu(k,2174) - lu(k,1284) * lu(k,2162) + lu(k,2176) = lu(k,2176) - lu(k,1285) * lu(k,2162) + lu(k,2177) = lu(k,2177) - lu(k,1286) * lu(k,2162) + lu(k,2178) = lu(k,2178) - lu(k,1287) * lu(k,2162) + lu(k,2181) = lu(k,2181) - lu(k,1288) * lu(k,2162) + lu(k,2182) = lu(k,2182) - lu(k,1289) * lu(k,2162) + lu(k,2185) = lu(k,2185) - lu(k,1290) * lu(k,2162) + lu(k,2186) = lu(k,2186) - lu(k,1291) * lu(k,2162) + lu(k,2324) = lu(k,2324) - lu(k,1276) * lu(k,2322) + lu(k,2325) = lu(k,2325) - lu(k,1277) * lu(k,2322) + lu(k,2326) = lu(k,2326) - lu(k,1278) * lu(k,2322) + lu(k,2327) = lu(k,2327) - lu(k,1279) * lu(k,2322) + lu(k,2330) = lu(k,2330) - lu(k,1280) * lu(k,2322) + lu(k,2331) = lu(k,2331) - lu(k,1281) * lu(k,2322) + lu(k,2332) = lu(k,2332) - lu(k,1282) * lu(k,2322) + lu(k,2333) = lu(k,2333) - lu(k,1283) * lu(k,2322) + lu(k,2335) = lu(k,2335) - lu(k,1284) * lu(k,2322) + lu(k,2337) = lu(k,2337) - lu(k,1285) * lu(k,2322) + lu(k,2338) = lu(k,2338) - lu(k,1286) * lu(k,2322) + lu(k,2339) = lu(k,2339) - lu(k,1287) * lu(k,2322) + lu(k,2342) = lu(k,2342) - lu(k,1288) * lu(k,2322) + lu(k,2343) = lu(k,2343) - lu(k,1289) * lu(k,2322) + lu(k,2346) = lu(k,2346) - lu(k,1290) * lu(k,2322) + lu(k,2347) = lu(k,2347) - lu(k,1291) * lu(k,2322) + end do + end subroutine lu_fac26 + subroutine lu_fac27( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1310) = 1._r8 / lu(k,1310) + lu(k,1311) = lu(k,1311) * lu(k,1310) + lu(k,1312) = lu(k,1312) * lu(k,1310) + lu(k,1313) = lu(k,1313) * lu(k,1310) + lu(k,1314) = lu(k,1314) * lu(k,1310) + lu(k,1315) = lu(k,1315) * lu(k,1310) + lu(k,1316) = lu(k,1316) * lu(k,1310) + lu(k,1317) = lu(k,1317) * lu(k,1310) + lu(k,1318) = lu(k,1318) * lu(k,1310) + lu(k,1319) = lu(k,1319) * lu(k,1310) + lu(k,1320) = lu(k,1320) * lu(k,1310) + lu(k,1321) = lu(k,1321) * lu(k,1310) + lu(k,1322) = lu(k,1322) * lu(k,1310) + lu(k,1323) = lu(k,1323) * lu(k,1310) + lu(k,1324) = lu(k,1324) * lu(k,1310) + lu(k,1325) = lu(k,1325) * lu(k,1310) + lu(k,1326) = lu(k,1326) * lu(k,1310) + lu(k,1410) = lu(k,1410) - lu(k,1311) * lu(k,1409) + lu(k,1411) = lu(k,1411) - lu(k,1312) * lu(k,1409) + lu(k,1412) = lu(k,1412) - lu(k,1313) * lu(k,1409) + lu(k,1413) = lu(k,1413) - lu(k,1314) * lu(k,1409) + lu(k,1415) = lu(k,1415) - lu(k,1315) * lu(k,1409) + lu(k,1416) = lu(k,1416) - lu(k,1316) * lu(k,1409) + lu(k,1417) = lu(k,1417) - lu(k,1317) * lu(k,1409) + lu(k,1418) = lu(k,1418) - lu(k,1318) * lu(k,1409) + lu(k,1419) = lu(k,1419) - lu(k,1319) * lu(k,1409) + lu(k,1420) = lu(k,1420) - lu(k,1320) * lu(k,1409) + lu(k,1421) = lu(k,1421) - lu(k,1321) * lu(k,1409) + lu(k,1422) = lu(k,1422) - lu(k,1322) * lu(k,1409) + lu(k,1423) = lu(k,1423) - lu(k,1323) * lu(k,1409) + lu(k,1424) = lu(k,1424) - lu(k,1324) * lu(k,1409) + lu(k,1425) = lu(k,1425) - lu(k,1325) * lu(k,1409) + lu(k,1426) = lu(k,1426) - lu(k,1326) * lu(k,1409) + lu(k,1772) = lu(k,1772) - lu(k,1311) * lu(k,1771) + lu(k,1773) = lu(k,1773) - lu(k,1312) * lu(k,1771) + lu(k,1774) = lu(k,1774) - lu(k,1313) * lu(k,1771) + lu(k,1775) = lu(k,1775) - lu(k,1314) * lu(k,1771) + lu(k,1779) = lu(k,1779) - lu(k,1315) * lu(k,1771) + lu(k,1780) = lu(k,1780) - lu(k,1316) * lu(k,1771) + lu(k,1781) = lu(k,1781) - lu(k,1317) * lu(k,1771) + lu(k,1782) = lu(k,1782) - lu(k,1318) * lu(k,1771) + lu(k,1784) = lu(k,1784) - lu(k,1319) * lu(k,1771) + lu(k,1786) = lu(k,1786) - lu(k,1320) * lu(k,1771) + lu(k,1787) = lu(k,1787) - lu(k,1321) * lu(k,1771) + lu(k,1788) = lu(k,1788) - lu(k,1322) * lu(k,1771) + lu(k,1791) = lu(k,1791) - lu(k,1323) * lu(k,1771) + lu(k,1792) = lu(k,1792) - lu(k,1324) * lu(k,1771) + lu(k,1795) = lu(k,1795) - lu(k,1325) * lu(k,1771) + lu(k,1796) = lu(k,1796) - lu(k,1326) * lu(k,1771) + lu(k,1906) = lu(k,1906) - lu(k,1311) * lu(k,1905) + lu(k,1907) = lu(k,1907) - lu(k,1312) * lu(k,1905) + lu(k,1908) = lu(k,1908) - lu(k,1313) * lu(k,1905) + lu(k,1909) = lu(k,1909) - lu(k,1314) * lu(k,1905) + lu(k,1912) = lu(k,1912) - lu(k,1315) * lu(k,1905) + lu(k,1913) = lu(k,1913) - lu(k,1316) * lu(k,1905) + lu(k,1914) = lu(k,1914) - lu(k,1317) * lu(k,1905) + lu(k,1915) = lu(k,1915) - lu(k,1318) * lu(k,1905) + lu(k,1917) = lu(k,1917) - lu(k,1319) * lu(k,1905) + lu(k,1919) = lu(k,1919) - lu(k,1320) * lu(k,1905) + lu(k,1920) = lu(k,1920) - lu(k,1321) * lu(k,1905) + lu(k,1921) = lu(k,1921) - lu(k,1322) * lu(k,1905) + lu(k,1924) = lu(k,1924) - lu(k,1323) * lu(k,1905) + lu(k,1925) = lu(k,1925) - lu(k,1324) * lu(k,1905) + lu(k,1928) = lu(k,1928) - lu(k,1325) * lu(k,1905) + lu(k,1929) = lu(k,1929) - lu(k,1326) * lu(k,1905) + lu(k,1970) = lu(k,1970) - lu(k,1311) * lu(k,1969) + lu(k,1971) = lu(k,1971) - lu(k,1312) * lu(k,1969) + lu(k,1972) = lu(k,1972) - lu(k,1313) * lu(k,1969) + lu(k,1973) = lu(k,1973) - lu(k,1314) * lu(k,1969) + lu(k,1977) = lu(k,1977) - lu(k,1315) * lu(k,1969) + lu(k,1978) = lu(k,1978) - lu(k,1316) * lu(k,1969) + lu(k,1979) = lu(k,1979) - lu(k,1317) * lu(k,1969) + lu(k,1980) = lu(k,1980) - lu(k,1318) * lu(k,1969) + lu(k,1982) = lu(k,1982) - lu(k,1319) * lu(k,1969) + lu(k,1984) = lu(k,1984) - lu(k,1320) * lu(k,1969) + lu(k,1985) = lu(k,1985) - lu(k,1321) * lu(k,1969) + lu(k,1986) = lu(k,1986) - lu(k,1322) * lu(k,1969) + lu(k,1989) = lu(k,1989) - lu(k,1323) * lu(k,1969) + lu(k,1990) = lu(k,1990) - lu(k,1324) * lu(k,1969) + lu(k,1993) = lu(k,1993) - lu(k,1325) * lu(k,1969) + lu(k,1994) = lu(k,1994) - lu(k,1326) * lu(k,1969) + lu(k,2109) = lu(k,2109) - lu(k,1311) * lu(k,2108) + lu(k,2110) = lu(k,2110) - lu(k,1312) * lu(k,2108) + lu(k,2111) = lu(k,2111) - lu(k,1313) * lu(k,2108) + lu(k,2112) = lu(k,2112) - lu(k,1314) * lu(k,2108) + lu(k,2116) = lu(k,2116) - lu(k,1315) * lu(k,2108) + lu(k,2117) = lu(k,2117) - lu(k,1316) * lu(k,2108) + lu(k,2118) = lu(k,2118) - lu(k,1317) * lu(k,2108) + lu(k,2119) = lu(k,2119) - lu(k,1318) * lu(k,2108) + lu(k,2121) = lu(k,2121) - lu(k,1319) * lu(k,2108) + lu(k,2123) = lu(k,2123) - lu(k,1320) * lu(k,2108) + lu(k,2124) = lu(k,2124) - lu(k,1321) * lu(k,2108) + lu(k,2125) = lu(k,2125) - lu(k,1322) * lu(k,2108) + lu(k,2128) = lu(k,2128) - lu(k,1323) * lu(k,2108) + lu(k,2129) = lu(k,2129) - lu(k,1324) * lu(k,2108) + lu(k,2132) = lu(k,2132) - lu(k,1325) * lu(k,2108) + lu(k,2133) = lu(k,2133) - lu(k,1326) * lu(k,2108) + lu(k,2164) = lu(k,2164) - lu(k,1311) * lu(k,2163) + lu(k,2165) = lu(k,2165) - lu(k,1312) * lu(k,2163) + lu(k,2166) = lu(k,2166) - lu(k,1313) * lu(k,2163) + lu(k,2167) = lu(k,2167) - lu(k,1314) * lu(k,2163) + lu(k,2169) = lu(k,2169) - lu(k,1315) * lu(k,2163) + lu(k,2170) = lu(k,2170) - lu(k,1316) * lu(k,2163) + lu(k,2171) = lu(k,2171) - lu(k,1317) * lu(k,2163) + lu(k,2172) = lu(k,2172) - lu(k,1318) * lu(k,2163) + lu(k,2174) = lu(k,2174) - lu(k,1319) * lu(k,2163) + lu(k,2176) = lu(k,2176) - lu(k,1320) * lu(k,2163) + lu(k,2177) = lu(k,2177) - lu(k,1321) * lu(k,2163) + lu(k,2178) = lu(k,2178) - lu(k,1322) * lu(k,2163) + lu(k,2181) = lu(k,2181) - lu(k,1323) * lu(k,2163) + lu(k,2182) = lu(k,2182) - lu(k,1324) * lu(k,2163) + lu(k,2185) = lu(k,2185) - lu(k,1325) * lu(k,2163) + lu(k,2186) = lu(k,2186) - lu(k,1326) * lu(k,2163) + lu(k,2324) = lu(k,2324) - lu(k,1311) * lu(k,2323) + lu(k,2325) = lu(k,2325) - lu(k,1312) * lu(k,2323) + lu(k,2326) = lu(k,2326) - lu(k,1313) * lu(k,2323) + lu(k,2327) = lu(k,2327) - lu(k,1314) * lu(k,2323) + lu(k,2330) = lu(k,2330) - lu(k,1315) * lu(k,2323) + lu(k,2331) = lu(k,2331) - lu(k,1316) * lu(k,2323) + lu(k,2332) = lu(k,2332) - lu(k,1317) * lu(k,2323) + lu(k,2333) = lu(k,2333) - lu(k,1318) * lu(k,2323) + lu(k,2335) = lu(k,2335) - lu(k,1319) * lu(k,2323) + lu(k,2337) = lu(k,2337) - lu(k,1320) * lu(k,2323) + lu(k,2338) = lu(k,2338) - lu(k,1321) * lu(k,2323) + lu(k,2339) = lu(k,2339) - lu(k,1322) * lu(k,2323) + lu(k,2342) = lu(k,2342) - lu(k,1323) * lu(k,2323) + lu(k,2343) = lu(k,2343) - lu(k,1324) * lu(k,2323) + lu(k,2346) = lu(k,2346) - lu(k,1325) * lu(k,2323) + lu(k,2347) = lu(k,2347) - lu(k,1326) * lu(k,2323) + lu(k,1335) = 1._r8 / lu(k,1335) + lu(k,1336) = lu(k,1336) * lu(k,1335) + lu(k,1337) = lu(k,1337) * lu(k,1335) + lu(k,1338) = lu(k,1338) * lu(k,1335) + lu(k,1339) = lu(k,1339) * lu(k,1335) + lu(k,1340) = lu(k,1340) * lu(k,1335) + lu(k,1341) = lu(k,1341) * lu(k,1335) + lu(k,1342) = lu(k,1342) * lu(k,1335) + lu(k,1343) = lu(k,1343) * lu(k,1335) + lu(k,1344) = lu(k,1344) * lu(k,1335) + lu(k,1345) = lu(k,1345) * lu(k,1335) + lu(k,1346) = lu(k,1346) * lu(k,1335) + lu(k,1347) = lu(k,1347) * lu(k,1335) + lu(k,1348) = lu(k,1348) * lu(k,1335) + lu(k,1358) = - lu(k,1336) * lu(k,1356) + lu(k,1359) = lu(k,1359) - lu(k,1337) * lu(k,1356) + lu(k,1361) = lu(k,1361) - lu(k,1338) * lu(k,1356) + lu(k,1362) = lu(k,1362) - lu(k,1339) * lu(k,1356) + lu(k,1363) = lu(k,1363) - lu(k,1340) * lu(k,1356) + lu(k,1364) = lu(k,1364) - lu(k,1341) * lu(k,1356) + lu(k,1365) = lu(k,1365) - lu(k,1342) * lu(k,1356) + lu(k,1366) = lu(k,1366) - lu(k,1343) * lu(k,1356) + lu(k,1368) = lu(k,1368) - lu(k,1344) * lu(k,1356) + lu(k,1369) = lu(k,1369) - lu(k,1345) * lu(k,1356) + lu(k,1370) = lu(k,1370) - lu(k,1346) * lu(k,1356) + lu(k,1371) = lu(k,1371) - lu(k,1347) * lu(k,1356) + lu(k,1372) = lu(k,1372) - lu(k,1348) * lu(k,1356) + lu(k,1412) = lu(k,1412) - lu(k,1336) * lu(k,1410) + lu(k,1413) = lu(k,1413) - lu(k,1337) * lu(k,1410) + lu(k,1415) = lu(k,1415) - lu(k,1338) * lu(k,1410) + lu(k,1416) = lu(k,1416) - lu(k,1339) * lu(k,1410) + lu(k,1417) = lu(k,1417) - lu(k,1340) * lu(k,1410) + lu(k,1418) = lu(k,1418) - lu(k,1341) * lu(k,1410) + lu(k,1419) = lu(k,1419) - lu(k,1342) * lu(k,1410) + lu(k,1420) = lu(k,1420) - lu(k,1343) * lu(k,1410) + lu(k,1422) = lu(k,1422) - lu(k,1344) * lu(k,1410) + lu(k,1423) = lu(k,1423) - lu(k,1345) * lu(k,1410) + lu(k,1424) = lu(k,1424) - lu(k,1346) * lu(k,1410) + lu(k,1425) = lu(k,1425) - lu(k,1347) * lu(k,1410) + lu(k,1426) = lu(k,1426) - lu(k,1348) * lu(k,1410) + lu(k,1774) = lu(k,1774) - lu(k,1336) * lu(k,1772) + lu(k,1775) = lu(k,1775) - lu(k,1337) * lu(k,1772) + lu(k,1779) = lu(k,1779) - lu(k,1338) * lu(k,1772) + lu(k,1780) = lu(k,1780) - lu(k,1339) * lu(k,1772) + lu(k,1781) = lu(k,1781) - lu(k,1340) * lu(k,1772) + lu(k,1782) = lu(k,1782) - lu(k,1341) * lu(k,1772) + lu(k,1784) = lu(k,1784) - lu(k,1342) * lu(k,1772) + lu(k,1786) = lu(k,1786) - lu(k,1343) * lu(k,1772) + lu(k,1788) = lu(k,1788) - lu(k,1344) * lu(k,1772) + lu(k,1791) = lu(k,1791) - lu(k,1345) * lu(k,1772) + lu(k,1792) = lu(k,1792) - lu(k,1346) * lu(k,1772) + lu(k,1795) = lu(k,1795) - lu(k,1347) * lu(k,1772) + lu(k,1796) = lu(k,1796) - lu(k,1348) * lu(k,1772) + lu(k,1908) = lu(k,1908) - lu(k,1336) * lu(k,1906) + lu(k,1909) = lu(k,1909) - lu(k,1337) * lu(k,1906) + lu(k,1912) = lu(k,1912) - lu(k,1338) * lu(k,1906) + lu(k,1913) = lu(k,1913) - lu(k,1339) * lu(k,1906) + lu(k,1914) = lu(k,1914) - lu(k,1340) * lu(k,1906) + lu(k,1915) = lu(k,1915) - lu(k,1341) * lu(k,1906) + lu(k,1917) = lu(k,1917) - lu(k,1342) * lu(k,1906) + lu(k,1919) = lu(k,1919) - lu(k,1343) * lu(k,1906) + lu(k,1921) = lu(k,1921) - lu(k,1344) * lu(k,1906) + lu(k,1924) = lu(k,1924) - lu(k,1345) * lu(k,1906) + lu(k,1925) = lu(k,1925) - lu(k,1346) * lu(k,1906) + lu(k,1928) = lu(k,1928) - lu(k,1347) * lu(k,1906) + lu(k,1929) = lu(k,1929) - lu(k,1348) * lu(k,1906) + lu(k,1972) = lu(k,1972) - lu(k,1336) * lu(k,1970) + lu(k,1973) = lu(k,1973) - lu(k,1337) * lu(k,1970) + lu(k,1977) = lu(k,1977) - lu(k,1338) * lu(k,1970) + lu(k,1978) = lu(k,1978) - lu(k,1339) * lu(k,1970) + lu(k,1979) = lu(k,1979) - lu(k,1340) * lu(k,1970) + lu(k,1980) = lu(k,1980) - lu(k,1341) * lu(k,1970) + lu(k,1982) = lu(k,1982) - lu(k,1342) * lu(k,1970) + lu(k,1984) = lu(k,1984) - lu(k,1343) * lu(k,1970) + lu(k,1986) = lu(k,1986) - lu(k,1344) * lu(k,1970) + lu(k,1989) = lu(k,1989) - lu(k,1345) * lu(k,1970) + lu(k,1990) = lu(k,1990) - lu(k,1346) * lu(k,1970) + lu(k,1993) = lu(k,1993) - lu(k,1347) * lu(k,1970) + lu(k,1994) = lu(k,1994) - lu(k,1348) * lu(k,1970) + lu(k,2111) = lu(k,2111) - lu(k,1336) * lu(k,2109) + lu(k,2112) = lu(k,2112) - lu(k,1337) * lu(k,2109) + lu(k,2116) = lu(k,2116) - lu(k,1338) * lu(k,2109) + lu(k,2117) = lu(k,2117) - lu(k,1339) * lu(k,2109) + lu(k,2118) = lu(k,2118) - lu(k,1340) * lu(k,2109) + lu(k,2119) = lu(k,2119) - lu(k,1341) * lu(k,2109) + lu(k,2121) = lu(k,2121) - lu(k,1342) * lu(k,2109) + lu(k,2123) = lu(k,2123) - lu(k,1343) * lu(k,2109) + lu(k,2125) = lu(k,2125) - lu(k,1344) * lu(k,2109) + lu(k,2128) = lu(k,2128) - lu(k,1345) * lu(k,2109) + lu(k,2129) = lu(k,2129) - lu(k,1346) * lu(k,2109) + lu(k,2132) = lu(k,2132) - lu(k,1347) * lu(k,2109) + lu(k,2133) = lu(k,2133) - lu(k,1348) * lu(k,2109) + lu(k,2166) = lu(k,2166) - lu(k,1336) * lu(k,2164) + lu(k,2167) = lu(k,2167) - lu(k,1337) * lu(k,2164) + lu(k,2169) = lu(k,2169) - lu(k,1338) * lu(k,2164) + lu(k,2170) = lu(k,2170) - lu(k,1339) * lu(k,2164) + lu(k,2171) = lu(k,2171) - lu(k,1340) * lu(k,2164) + lu(k,2172) = lu(k,2172) - lu(k,1341) * lu(k,2164) + lu(k,2174) = lu(k,2174) - lu(k,1342) * lu(k,2164) + lu(k,2176) = lu(k,2176) - lu(k,1343) * lu(k,2164) + lu(k,2178) = lu(k,2178) - lu(k,1344) * lu(k,2164) + lu(k,2181) = lu(k,2181) - lu(k,1345) * lu(k,2164) + lu(k,2182) = lu(k,2182) - lu(k,1346) * lu(k,2164) + lu(k,2185) = lu(k,2185) - lu(k,1347) * lu(k,2164) + lu(k,2186) = lu(k,2186) - lu(k,1348) * lu(k,2164) + lu(k,2326) = lu(k,2326) - lu(k,1336) * lu(k,2324) + lu(k,2327) = lu(k,2327) - lu(k,1337) * lu(k,2324) + lu(k,2330) = lu(k,2330) - lu(k,1338) * lu(k,2324) + lu(k,2331) = lu(k,2331) - lu(k,1339) * lu(k,2324) + lu(k,2332) = lu(k,2332) - lu(k,1340) * lu(k,2324) + lu(k,2333) = lu(k,2333) - lu(k,1341) * lu(k,2324) + lu(k,2335) = lu(k,2335) - lu(k,1342) * lu(k,2324) + lu(k,2337) = lu(k,2337) - lu(k,1343) * lu(k,2324) + lu(k,2339) = lu(k,2339) - lu(k,1344) * lu(k,2324) + lu(k,2342) = lu(k,2342) - lu(k,1345) * lu(k,2324) + lu(k,2343) = lu(k,2343) - lu(k,1346) * lu(k,2324) + lu(k,2346) = lu(k,2346) - lu(k,1347) * lu(k,2324) + lu(k,2347) = lu(k,2347) - lu(k,1348) * lu(k,2324) + lu(k,1357) = 1._r8 / lu(k,1357) + lu(k,1358) = lu(k,1358) * lu(k,1357) + lu(k,1359) = lu(k,1359) * lu(k,1357) + lu(k,1360) = lu(k,1360) * lu(k,1357) + lu(k,1361) = lu(k,1361) * lu(k,1357) + lu(k,1362) = lu(k,1362) * lu(k,1357) + lu(k,1363) = lu(k,1363) * lu(k,1357) + lu(k,1364) = lu(k,1364) * lu(k,1357) + lu(k,1365) = lu(k,1365) * lu(k,1357) + lu(k,1366) = lu(k,1366) * lu(k,1357) + lu(k,1367) = lu(k,1367) * lu(k,1357) + lu(k,1368) = lu(k,1368) * lu(k,1357) + lu(k,1369) = lu(k,1369) * lu(k,1357) + lu(k,1370) = lu(k,1370) * lu(k,1357) + lu(k,1371) = lu(k,1371) * lu(k,1357) + lu(k,1372) = lu(k,1372) * lu(k,1357) + lu(k,1412) = lu(k,1412) - lu(k,1358) * lu(k,1411) + lu(k,1413) = lu(k,1413) - lu(k,1359) * lu(k,1411) + lu(k,1414) = - lu(k,1360) * lu(k,1411) + lu(k,1415) = lu(k,1415) - lu(k,1361) * lu(k,1411) + lu(k,1416) = lu(k,1416) - lu(k,1362) * lu(k,1411) + lu(k,1417) = lu(k,1417) - lu(k,1363) * lu(k,1411) + lu(k,1418) = lu(k,1418) - lu(k,1364) * lu(k,1411) + lu(k,1419) = lu(k,1419) - lu(k,1365) * lu(k,1411) + lu(k,1420) = lu(k,1420) - lu(k,1366) * lu(k,1411) + lu(k,1421) = lu(k,1421) - lu(k,1367) * lu(k,1411) + lu(k,1422) = lu(k,1422) - lu(k,1368) * lu(k,1411) + lu(k,1423) = lu(k,1423) - lu(k,1369) * lu(k,1411) + lu(k,1424) = lu(k,1424) - lu(k,1370) * lu(k,1411) + lu(k,1425) = lu(k,1425) - lu(k,1371) * lu(k,1411) + lu(k,1426) = lu(k,1426) - lu(k,1372) * lu(k,1411) + lu(k,1774) = lu(k,1774) - lu(k,1358) * lu(k,1773) + lu(k,1775) = lu(k,1775) - lu(k,1359) * lu(k,1773) + lu(k,1778) = lu(k,1778) - lu(k,1360) * lu(k,1773) + lu(k,1779) = lu(k,1779) - lu(k,1361) * lu(k,1773) + lu(k,1780) = lu(k,1780) - lu(k,1362) * lu(k,1773) + lu(k,1781) = lu(k,1781) - lu(k,1363) * lu(k,1773) + lu(k,1782) = lu(k,1782) - lu(k,1364) * lu(k,1773) + lu(k,1784) = lu(k,1784) - lu(k,1365) * lu(k,1773) + lu(k,1786) = lu(k,1786) - lu(k,1366) * lu(k,1773) + lu(k,1787) = lu(k,1787) - lu(k,1367) * lu(k,1773) + lu(k,1788) = lu(k,1788) - lu(k,1368) * lu(k,1773) + lu(k,1791) = lu(k,1791) - lu(k,1369) * lu(k,1773) + lu(k,1792) = lu(k,1792) - lu(k,1370) * lu(k,1773) + lu(k,1795) = lu(k,1795) - lu(k,1371) * lu(k,1773) + lu(k,1796) = lu(k,1796) - lu(k,1372) * lu(k,1773) + lu(k,1908) = lu(k,1908) - lu(k,1358) * lu(k,1907) + lu(k,1909) = lu(k,1909) - lu(k,1359) * lu(k,1907) + lu(k,1911) = lu(k,1911) - lu(k,1360) * lu(k,1907) + lu(k,1912) = lu(k,1912) - lu(k,1361) * lu(k,1907) + lu(k,1913) = lu(k,1913) - lu(k,1362) * lu(k,1907) + lu(k,1914) = lu(k,1914) - lu(k,1363) * lu(k,1907) + lu(k,1915) = lu(k,1915) - lu(k,1364) * lu(k,1907) + lu(k,1917) = lu(k,1917) - lu(k,1365) * lu(k,1907) + lu(k,1919) = lu(k,1919) - lu(k,1366) * lu(k,1907) + lu(k,1920) = lu(k,1920) - lu(k,1367) * lu(k,1907) + lu(k,1921) = lu(k,1921) - lu(k,1368) * lu(k,1907) + lu(k,1924) = lu(k,1924) - lu(k,1369) * lu(k,1907) + lu(k,1925) = lu(k,1925) - lu(k,1370) * lu(k,1907) + lu(k,1928) = lu(k,1928) - lu(k,1371) * lu(k,1907) + lu(k,1929) = lu(k,1929) - lu(k,1372) * lu(k,1907) + lu(k,1972) = lu(k,1972) - lu(k,1358) * lu(k,1971) + lu(k,1973) = lu(k,1973) - lu(k,1359) * lu(k,1971) + lu(k,1976) = lu(k,1976) - lu(k,1360) * lu(k,1971) + lu(k,1977) = lu(k,1977) - lu(k,1361) * lu(k,1971) + lu(k,1978) = lu(k,1978) - lu(k,1362) * lu(k,1971) + lu(k,1979) = lu(k,1979) - lu(k,1363) * lu(k,1971) + lu(k,1980) = lu(k,1980) - lu(k,1364) * lu(k,1971) + lu(k,1982) = lu(k,1982) - lu(k,1365) * lu(k,1971) + lu(k,1984) = lu(k,1984) - lu(k,1366) * lu(k,1971) + lu(k,1985) = lu(k,1985) - lu(k,1367) * lu(k,1971) + lu(k,1986) = lu(k,1986) - lu(k,1368) * lu(k,1971) + lu(k,1989) = lu(k,1989) - lu(k,1369) * lu(k,1971) + lu(k,1990) = lu(k,1990) - lu(k,1370) * lu(k,1971) + lu(k,1993) = lu(k,1993) - lu(k,1371) * lu(k,1971) + lu(k,1994) = lu(k,1994) - lu(k,1372) * lu(k,1971) + lu(k,2111) = lu(k,2111) - lu(k,1358) * lu(k,2110) + lu(k,2112) = lu(k,2112) - lu(k,1359) * lu(k,2110) + lu(k,2115) = lu(k,2115) - lu(k,1360) * lu(k,2110) + lu(k,2116) = lu(k,2116) - lu(k,1361) * lu(k,2110) + lu(k,2117) = lu(k,2117) - lu(k,1362) * lu(k,2110) + lu(k,2118) = lu(k,2118) - lu(k,1363) * lu(k,2110) + lu(k,2119) = lu(k,2119) - lu(k,1364) * lu(k,2110) + lu(k,2121) = lu(k,2121) - lu(k,1365) * lu(k,2110) + lu(k,2123) = lu(k,2123) - lu(k,1366) * lu(k,2110) + lu(k,2124) = lu(k,2124) - lu(k,1367) * lu(k,2110) + lu(k,2125) = lu(k,2125) - lu(k,1368) * lu(k,2110) + lu(k,2128) = lu(k,2128) - lu(k,1369) * lu(k,2110) + lu(k,2129) = lu(k,2129) - lu(k,1370) * lu(k,2110) + lu(k,2132) = lu(k,2132) - lu(k,1371) * lu(k,2110) + lu(k,2133) = lu(k,2133) - lu(k,1372) * lu(k,2110) + lu(k,2166) = lu(k,2166) - lu(k,1358) * lu(k,2165) + lu(k,2167) = lu(k,2167) - lu(k,1359) * lu(k,2165) + lu(k,2168) = - lu(k,1360) * lu(k,2165) + lu(k,2169) = lu(k,2169) - lu(k,1361) * lu(k,2165) + lu(k,2170) = lu(k,2170) - lu(k,1362) * lu(k,2165) + lu(k,2171) = lu(k,2171) - lu(k,1363) * lu(k,2165) + lu(k,2172) = lu(k,2172) - lu(k,1364) * lu(k,2165) + lu(k,2174) = lu(k,2174) - lu(k,1365) * lu(k,2165) + lu(k,2176) = lu(k,2176) - lu(k,1366) * lu(k,2165) + lu(k,2177) = lu(k,2177) - lu(k,1367) * lu(k,2165) + lu(k,2178) = lu(k,2178) - lu(k,1368) * lu(k,2165) + lu(k,2181) = lu(k,2181) - lu(k,1369) * lu(k,2165) + lu(k,2182) = lu(k,2182) - lu(k,1370) * lu(k,2165) + lu(k,2185) = lu(k,2185) - lu(k,1371) * lu(k,2165) + lu(k,2186) = lu(k,2186) - lu(k,1372) * lu(k,2165) + lu(k,2326) = lu(k,2326) - lu(k,1358) * lu(k,2325) + lu(k,2327) = lu(k,2327) - lu(k,1359) * lu(k,2325) + lu(k,2329) = - lu(k,1360) * lu(k,2325) + lu(k,2330) = lu(k,2330) - lu(k,1361) * lu(k,2325) + lu(k,2331) = lu(k,2331) - lu(k,1362) * lu(k,2325) + lu(k,2332) = lu(k,2332) - lu(k,1363) * lu(k,2325) + lu(k,2333) = lu(k,2333) - lu(k,1364) * lu(k,2325) + lu(k,2335) = lu(k,2335) - lu(k,1365) * lu(k,2325) + lu(k,2337) = lu(k,2337) - lu(k,1366) * lu(k,2325) + lu(k,2338) = lu(k,2338) - lu(k,1367) * lu(k,2325) + lu(k,2339) = lu(k,2339) - lu(k,1368) * lu(k,2325) + lu(k,2342) = lu(k,2342) - lu(k,1369) * lu(k,2325) + lu(k,2343) = lu(k,2343) - lu(k,1370) * lu(k,2325) + lu(k,2346) = lu(k,2346) - lu(k,1371) * lu(k,2325) + lu(k,2347) = lu(k,2347) - lu(k,1372) * lu(k,2325) + end do + end subroutine lu_fac27 + subroutine lu_fac28( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1380) = 1._r8 / lu(k,1380) + lu(k,1381) = lu(k,1381) * lu(k,1380) + lu(k,1382) = lu(k,1382) * lu(k,1380) + lu(k,1383) = lu(k,1383) * lu(k,1380) + lu(k,1384) = lu(k,1384) * lu(k,1380) + lu(k,1385) = lu(k,1385) * lu(k,1380) + lu(k,1386) = lu(k,1386) * lu(k,1380) + lu(k,1387) = lu(k,1387) * lu(k,1380) + lu(k,1388) = lu(k,1388) * lu(k,1380) + lu(k,1389) = lu(k,1389) * lu(k,1380) + lu(k,1390) = lu(k,1390) * lu(k,1380) + lu(k,1391) = lu(k,1391) * lu(k,1380) + lu(k,1392) = lu(k,1392) * lu(k,1380) + lu(k,1393) = lu(k,1393) * lu(k,1380) + lu(k,1413) = lu(k,1413) - lu(k,1381) * lu(k,1412) + lu(k,1415) = lu(k,1415) - lu(k,1382) * lu(k,1412) + lu(k,1416) = lu(k,1416) - lu(k,1383) * lu(k,1412) + lu(k,1417) = lu(k,1417) - lu(k,1384) * lu(k,1412) + lu(k,1418) = lu(k,1418) - lu(k,1385) * lu(k,1412) + lu(k,1419) = lu(k,1419) - lu(k,1386) * lu(k,1412) + lu(k,1420) = lu(k,1420) - lu(k,1387) * lu(k,1412) + lu(k,1421) = lu(k,1421) - lu(k,1388) * lu(k,1412) + lu(k,1422) = lu(k,1422) - lu(k,1389) * lu(k,1412) + lu(k,1423) = lu(k,1423) - lu(k,1390) * lu(k,1412) + lu(k,1424) = lu(k,1424) - lu(k,1391) * lu(k,1412) + lu(k,1425) = lu(k,1425) - lu(k,1392) * lu(k,1412) + lu(k,1426) = lu(k,1426) - lu(k,1393) * lu(k,1412) + lu(k,1567) = lu(k,1567) - lu(k,1381) * lu(k,1566) + lu(k,1571) = lu(k,1571) - lu(k,1382) * lu(k,1566) + lu(k,1572) = lu(k,1572) - lu(k,1383) * lu(k,1566) + lu(k,1573) = lu(k,1573) - lu(k,1384) * lu(k,1566) + lu(k,1574) = lu(k,1574) - lu(k,1385) * lu(k,1566) + lu(k,1576) = lu(k,1576) - lu(k,1386) * lu(k,1566) + lu(k,1578) = lu(k,1578) - lu(k,1387) * lu(k,1566) + lu(k,1579) = lu(k,1579) - lu(k,1388) * lu(k,1566) + lu(k,1580) = lu(k,1580) - lu(k,1389) * lu(k,1566) + lu(k,1583) = lu(k,1583) - lu(k,1390) * lu(k,1566) + lu(k,1584) = lu(k,1584) - lu(k,1391) * lu(k,1566) + lu(k,1587) = lu(k,1587) - lu(k,1392) * lu(k,1566) + lu(k,1588) = lu(k,1588) - lu(k,1393) * lu(k,1566) + lu(k,1775) = lu(k,1775) - lu(k,1381) * lu(k,1774) + lu(k,1779) = lu(k,1779) - lu(k,1382) * lu(k,1774) + lu(k,1780) = lu(k,1780) - lu(k,1383) * lu(k,1774) + lu(k,1781) = lu(k,1781) - lu(k,1384) * lu(k,1774) + lu(k,1782) = lu(k,1782) - lu(k,1385) * lu(k,1774) + lu(k,1784) = lu(k,1784) - lu(k,1386) * lu(k,1774) + lu(k,1786) = lu(k,1786) - lu(k,1387) * lu(k,1774) + lu(k,1787) = lu(k,1787) - lu(k,1388) * lu(k,1774) + lu(k,1788) = lu(k,1788) - lu(k,1389) * lu(k,1774) + lu(k,1791) = lu(k,1791) - lu(k,1390) * lu(k,1774) + lu(k,1792) = lu(k,1792) - lu(k,1391) * lu(k,1774) + lu(k,1795) = lu(k,1795) - lu(k,1392) * lu(k,1774) + lu(k,1796) = lu(k,1796) - lu(k,1393) * lu(k,1774) + lu(k,1909) = lu(k,1909) - lu(k,1381) * lu(k,1908) + lu(k,1912) = lu(k,1912) - lu(k,1382) * lu(k,1908) + lu(k,1913) = lu(k,1913) - lu(k,1383) * lu(k,1908) + lu(k,1914) = lu(k,1914) - lu(k,1384) * lu(k,1908) + lu(k,1915) = lu(k,1915) - lu(k,1385) * lu(k,1908) + lu(k,1917) = lu(k,1917) - lu(k,1386) * lu(k,1908) + lu(k,1919) = lu(k,1919) - lu(k,1387) * lu(k,1908) + lu(k,1920) = lu(k,1920) - lu(k,1388) * lu(k,1908) + lu(k,1921) = lu(k,1921) - lu(k,1389) * lu(k,1908) + lu(k,1924) = lu(k,1924) - lu(k,1390) * lu(k,1908) + lu(k,1925) = lu(k,1925) - lu(k,1391) * lu(k,1908) + lu(k,1928) = lu(k,1928) - lu(k,1392) * lu(k,1908) + lu(k,1929) = lu(k,1929) - lu(k,1393) * lu(k,1908) + lu(k,1973) = lu(k,1973) - lu(k,1381) * lu(k,1972) + lu(k,1977) = lu(k,1977) - lu(k,1382) * lu(k,1972) + lu(k,1978) = lu(k,1978) - lu(k,1383) * lu(k,1972) + lu(k,1979) = lu(k,1979) - lu(k,1384) * lu(k,1972) + lu(k,1980) = lu(k,1980) - lu(k,1385) * lu(k,1972) + lu(k,1982) = lu(k,1982) - lu(k,1386) * lu(k,1972) + lu(k,1984) = lu(k,1984) - lu(k,1387) * lu(k,1972) + lu(k,1985) = lu(k,1985) - lu(k,1388) * lu(k,1972) + lu(k,1986) = lu(k,1986) - lu(k,1389) * lu(k,1972) + lu(k,1989) = lu(k,1989) - lu(k,1390) * lu(k,1972) + lu(k,1990) = lu(k,1990) - lu(k,1391) * lu(k,1972) + lu(k,1993) = lu(k,1993) - lu(k,1392) * lu(k,1972) + lu(k,1994) = lu(k,1994) - lu(k,1393) * lu(k,1972) + lu(k,2112) = lu(k,2112) - lu(k,1381) * lu(k,2111) + lu(k,2116) = lu(k,2116) - lu(k,1382) * lu(k,2111) + lu(k,2117) = lu(k,2117) - lu(k,1383) * lu(k,2111) + lu(k,2118) = lu(k,2118) - lu(k,1384) * lu(k,2111) + lu(k,2119) = lu(k,2119) - lu(k,1385) * lu(k,2111) + lu(k,2121) = lu(k,2121) - lu(k,1386) * lu(k,2111) + lu(k,2123) = lu(k,2123) - lu(k,1387) * lu(k,2111) + lu(k,2124) = lu(k,2124) - lu(k,1388) * lu(k,2111) + lu(k,2125) = lu(k,2125) - lu(k,1389) * lu(k,2111) + lu(k,2128) = lu(k,2128) - lu(k,1390) * lu(k,2111) + lu(k,2129) = lu(k,2129) - lu(k,1391) * lu(k,2111) + lu(k,2132) = lu(k,2132) - lu(k,1392) * lu(k,2111) + lu(k,2133) = lu(k,2133) - lu(k,1393) * lu(k,2111) + lu(k,2167) = lu(k,2167) - lu(k,1381) * lu(k,2166) + lu(k,2169) = lu(k,2169) - lu(k,1382) * lu(k,2166) + lu(k,2170) = lu(k,2170) - lu(k,1383) * lu(k,2166) + lu(k,2171) = lu(k,2171) - lu(k,1384) * lu(k,2166) + lu(k,2172) = lu(k,2172) - lu(k,1385) * lu(k,2166) + lu(k,2174) = lu(k,2174) - lu(k,1386) * lu(k,2166) + lu(k,2176) = lu(k,2176) - lu(k,1387) * lu(k,2166) + lu(k,2177) = lu(k,2177) - lu(k,1388) * lu(k,2166) + lu(k,2178) = lu(k,2178) - lu(k,1389) * lu(k,2166) + lu(k,2181) = lu(k,2181) - lu(k,1390) * lu(k,2166) + lu(k,2182) = lu(k,2182) - lu(k,1391) * lu(k,2166) + lu(k,2185) = lu(k,2185) - lu(k,1392) * lu(k,2166) + lu(k,2186) = lu(k,2186) - lu(k,1393) * lu(k,2166) + lu(k,2327) = lu(k,2327) - lu(k,1381) * lu(k,2326) + lu(k,2330) = lu(k,2330) - lu(k,1382) * lu(k,2326) + lu(k,2331) = lu(k,2331) - lu(k,1383) * lu(k,2326) + lu(k,2332) = lu(k,2332) - lu(k,1384) * lu(k,2326) + lu(k,2333) = lu(k,2333) - lu(k,1385) * lu(k,2326) + lu(k,2335) = lu(k,2335) - lu(k,1386) * lu(k,2326) + lu(k,2337) = lu(k,2337) - lu(k,1387) * lu(k,2326) + lu(k,2338) = lu(k,2338) - lu(k,1388) * lu(k,2326) + lu(k,2339) = lu(k,2339) - lu(k,1389) * lu(k,2326) + lu(k,2342) = lu(k,2342) - lu(k,1390) * lu(k,2326) + lu(k,2343) = lu(k,2343) - lu(k,1391) * lu(k,2326) + lu(k,2346) = lu(k,2346) - lu(k,1392) * lu(k,2326) + lu(k,2347) = lu(k,2347) - lu(k,1393) * lu(k,2326) + lu(k,1413) = 1._r8 / lu(k,1413) + lu(k,1414) = lu(k,1414) * lu(k,1413) + lu(k,1415) = lu(k,1415) * lu(k,1413) + lu(k,1416) = lu(k,1416) * lu(k,1413) + lu(k,1417) = lu(k,1417) * lu(k,1413) + lu(k,1418) = lu(k,1418) * lu(k,1413) + lu(k,1419) = lu(k,1419) * lu(k,1413) + lu(k,1420) = lu(k,1420) * lu(k,1413) + lu(k,1421) = lu(k,1421) * lu(k,1413) + lu(k,1422) = lu(k,1422) * lu(k,1413) + lu(k,1423) = lu(k,1423) * lu(k,1413) + lu(k,1424) = lu(k,1424) * lu(k,1413) + lu(k,1425) = lu(k,1425) * lu(k,1413) + lu(k,1426) = lu(k,1426) * lu(k,1413) + lu(k,1570) = - lu(k,1414) * lu(k,1567) + lu(k,1571) = lu(k,1571) - lu(k,1415) * lu(k,1567) + lu(k,1572) = lu(k,1572) - lu(k,1416) * lu(k,1567) + lu(k,1573) = lu(k,1573) - lu(k,1417) * lu(k,1567) + lu(k,1574) = lu(k,1574) - lu(k,1418) * lu(k,1567) + lu(k,1576) = lu(k,1576) - lu(k,1419) * lu(k,1567) + lu(k,1578) = lu(k,1578) - lu(k,1420) * lu(k,1567) + lu(k,1579) = lu(k,1579) - lu(k,1421) * lu(k,1567) + lu(k,1580) = lu(k,1580) - lu(k,1422) * lu(k,1567) + lu(k,1583) = lu(k,1583) - lu(k,1423) * lu(k,1567) + lu(k,1584) = lu(k,1584) - lu(k,1424) * lu(k,1567) + lu(k,1587) = lu(k,1587) - lu(k,1425) * lu(k,1567) + lu(k,1588) = lu(k,1588) - lu(k,1426) * lu(k,1567) + lu(k,1778) = lu(k,1778) - lu(k,1414) * lu(k,1775) + lu(k,1779) = lu(k,1779) - lu(k,1415) * lu(k,1775) + lu(k,1780) = lu(k,1780) - lu(k,1416) * lu(k,1775) + lu(k,1781) = lu(k,1781) - lu(k,1417) * lu(k,1775) + lu(k,1782) = lu(k,1782) - lu(k,1418) * lu(k,1775) + lu(k,1784) = lu(k,1784) - lu(k,1419) * lu(k,1775) + lu(k,1786) = lu(k,1786) - lu(k,1420) * lu(k,1775) + lu(k,1787) = lu(k,1787) - lu(k,1421) * lu(k,1775) + lu(k,1788) = lu(k,1788) - lu(k,1422) * lu(k,1775) + lu(k,1791) = lu(k,1791) - lu(k,1423) * lu(k,1775) + lu(k,1792) = lu(k,1792) - lu(k,1424) * lu(k,1775) + lu(k,1795) = lu(k,1795) - lu(k,1425) * lu(k,1775) + lu(k,1796) = lu(k,1796) - lu(k,1426) * lu(k,1775) + lu(k,1911) = lu(k,1911) - lu(k,1414) * lu(k,1909) + lu(k,1912) = lu(k,1912) - lu(k,1415) * lu(k,1909) + lu(k,1913) = lu(k,1913) - lu(k,1416) * lu(k,1909) + lu(k,1914) = lu(k,1914) - lu(k,1417) * lu(k,1909) + lu(k,1915) = lu(k,1915) - lu(k,1418) * lu(k,1909) + lu(k,1917) = lu(k,1917) - lu(k,1419) * lu(k,1909) + lu(k,1919) = lu(k,1919) - lu(k,1420) * lu(k,1909) + lu(k,1920) = lu(k,1920) - lu(k,1421) * lu(k,1909) + lu(k,1921) = lu(k,1921) - lu(k,1422) * lu(k,1909) + lu(k,1924) = lu(k,1924) - lu(k,1423) * lu(k,1909) + lu(k,1925) = lu(k,1925) - lu(k,1424) * lu(k,1909) + lu(k,1928) = lu(k,1928) - lu(k,1425) * lu(k,1909) + lu(k,1929) = lu(k,1929) - lu(k,1426) * lu(k,1909) + lu(k,1976) = lu(k,1976) - lu(k,1414) * lu(k,1973) + lu(k,1977) = lu(k,1977) - lu(k,1415) * lu(k,1973) + lu(k,1978) = lu(k,1978) - lu(k,1416) * lu(k,1973) + lu(k,1979) = lu(k,1979) - lu(k,1417) * lu(k,1973) + lu(k,1980) = lu(k,1980) - lu(k,1418) * lu(k,1973) + lu(k,1982) = lu(k,1982) - lu(k,1419) * lu(k,1973) + lu(k,1984) = lu(k,1984) - lu(k,1420) * lu(k,1973) + lu(k,1985) = lu(k,1985) - lu(k,1421) * lu(k,1973) + lu(k,1986) = lu(k,1986) - lu(k,1422) * lu(k,1973) + lu(k,1989) = lu(k,1989) - lu(k,1423) * lu(k,1973) + lu(k,1990) = lu(k,1990) - lu(k,1424) * lu(k,1973) + lu(k,1993) = lu(k,1993) - lu(k,1425) * lu(k,1973) + lu(k,1994) = lu(k,1994) - lu(k,1426) * lu(k,1973) + lu(k,2115) = lu(k,2115) - lu(k,1414) * lu(k,2112) + lu(k,2116) = lu(k,2116) - lu(k,1415) * lu(k,2112) + lu(k,2117) = lu(k,2117) - lu(k,1416) * lu(k,2112) + lu(k,2118) = lu(k,2118) - lu(k,1417) * lu(k,2112) + lu(k,2119) = lu(k,2119) - lu(k,1418) * lu(k,2112) + lu(k,2121) = lu(k,2121) - lu(k,1419) * lu(k,2112) + lu(k,2123) = lu(k,2123) - lu(k,1420) * lu(k,2112) + lu(k,2124) = lu(k,2124) - lu(k,1421) * lu(k,2112) + lu(k,2125) = lu(k,2125) - lu(k,1422) * lu(k,2112) + lu(k,2128) = lu(k,2128) - lu(k,1423) * lu(k,2112) + lu(k,2129) = lu(k,2129) - lu(k,1424) * lu(k,2112) + lu(k,2132) = lu(k,2132) - lu(k,1425) * lu(k,2112) + lu(k,2133) = lu(k,2133) - lu(k,1426) * lu(k,2112) + lu(k,2168) = lu(k,2168) - lu(k,1414) * lu(k,2167) + lu(k,2169) = lu(k,2169) - lu(k,1415) * lu(k,2167) + lu(k,2170) = lu(k,2170) - lu(k,1416) * lu(k,2167) + lu(k,2171) = lu(k,2171) - lu(k,1417) * lu(k,2167) + lu(k,2172) = lu(k,2172) - lu(k,1418) * lu(k,2167) + lu(k,2174) = lu(k,2174) - lu(k,1419) * lu(k,2167) + lu(k,2176) = lu(k,2176) - lu(k,1420) * lu(k,2167) + lu(k,2177) = lu(k,2177) - lu(k,1421) * lu(k,2167) + lu(k,2178) = lu(k,2178) - lu(k,1422) * lu(k,2167) + lu(k,2181) = lu(k,2181) - lu(k,1423) * lu(k,2167) + lu(k,2182) = lu(k,2182) - lu(k,1424) * lu(k,2167) + lu(k,2185) = lu(k,2185) - lu(k,1425) * lu(k,2167) + lu(k,2186) = lu(k,2186) - lu(k,1426) * lu(k,2167) + lu(k,2209) = lu(k,2209) - lu(k,1414) * lu(k,2207) + lu(k,2210) = lu(k,2210) - lu(k,1415) * lu(k,2207) + lu(k,2211) = lu(k,2211) - lu(k,1416) * lu(k,2207) + lu(k,2212) = lu(k,2212) - lu(k,1417) * lu(k,2207) + lu(k,2213) = lu(k,2213) - lu(k,1418) * lu(k,2207) + lu(k,2215) = lu(k,2215) - lu(k,1419) * lu(k,2207) + lu(k,2217) = lu(k,2217) - lu(k,1420) * lu(k,2207) + lu(k,2218) = lu(k,2218) - lu(k,1421) * lu(k,2207) + lu(k,2219) = lu(k,2219) - lu(k,1422) * lu(k,2207) + lu(k,2222) = lu(k,2222) - lu(k,1423) * lu(k,2207) + lu(k,2223) = lu(k,2223) - lu(k,1424) * lu(k,2207) + lu(k,2226) = lu(k,2226) - lu(k,1425) * lu(k,2207) + lu(k,2227) = lu(k,2227) - lu(k,1426) * lu(k,2207) + lu(k,2329) = lu(k,2329) - lu(k,1414) * lu(k,2327) + lu(k,2330) = lu(k,2330) - lu(k,1415) * lu(k,2327) + lu(k,2331) = lu(k,2331) - lu(k,1416) * lu(k,2327) + lu(k,2332) = lu(k,2332) - lu(k,1417) * lu(k,2327) + lu(k,2333) = lu(k,2333) - lu(k,1418) * lu(k,2327) + lu(k,2335) = lu(k,2335) - lu(k,1419) * lu(k,2327) + lu(k,2337) = lu(k,2337) - lu(k,1420) * lu(k,2327) + lu(k,2338) = lu(k,2338) - lu(k,1421) * lu(k,2327) + lu(k,2339) = lu(k,2339) - lu(k,1422) * lu(k,2327) + lu(k,2342) = lu(k,2342) - lu(k,1423) * lu(k,2327) + lu(k,2343) = lu(k,2343) - lu(k,1424) * lu(k,2327) + lu(k,2346) = lu(k,2346) - lu(k,1425) * lu(k,2327) + lu(k,2347) = lu(k,2347) - lu(k,1426) * lu(k,2327) + lu(k,1430) = 1._r8 / lu(k,1430) + lu(k,1431) = lu(k,1431) * lu(k,1430) + lu(k,1432) = lu(k,1432) * lu(k,1430) + lu(k,1433) = lu(k,1433) * lu(k,1430) + lu(k,1434) = lu(k,1434) * lu(k,1430) + lu(k,1435) = lu(k,1435) * lu(k,1430) + lu(k,1436) = lu(k,1436) * lu(k,1430) + lu(k,1437) = lu(k,1437) * lu(k,1430) + lu(k,1438) = lu(k,1438) * lu(k,1430) + lu(k,1439) = lu(k,1439) * lu(k,1430) + lu(k,1440) = lu(k,1440) * lu(k,1430) + lu(k,1441) = lu(k,1441) * lu(k,1430) + lu(k,1442) = lu(k,1442) * lu(k,1430) + lu(k,1443) = lu(k,1443) * lu(k,1430) + lu(k,1503) = - lu(k,1431) * lu(k,1502) + lu(k,1504) = lu(k,1504) - lu(k,1432) * lu(k,1502) + lu(k,1506) = lu(k,1506) - lu(k,1433) * lu(k,1502) + lu(k,1508) = lu(k,1508) - lu(k,1434) * lu(k,1502) + lu(k,1509) = - lu(k,1435) * lu(k,1502) + lu(k,1510) = lu(k,1510) - lu(k,1436) * lu(k,1502) + lu(k,1511) = lu(k,1511) - lu(k,1437) * lu(k,1502) + lu(k,1512) = lu(k,1512) - lu(k,1438) * lu(k,1502) + lu(k,1513) = lu(k,1513) - lu(k,1439) * lu(k,1502) + lu(k,1514) = - lu(k,1440) * lu(k,1502) + lu(k,1515) = - lu(k,1441) * lu(k,1502) + lu(k,1516) = lu(k,1516) - lu(k,1442) * lu(k,1502) + lu(k,1517) = lu(k,1517) - lu(k,1443) * lu(k,1502) + lu(k,1569) = lu(k,1569) - lu(k,1431) * lu(k,1568) + lu(k,1572) = lu(k,1572) - lu(k,1432) * lu(k,1568) + lu(k,1574) = lu(k,1574) - lu(k,1433) * lu(k,1568) + lu(k,1576) = lu(k,1576) - lu(k,1434) * lu(k,1568) + lu(k,1577) = lu(k,1577) - lu(k,1435) * lu(k,1568) + lu(k,1578) = lu(k,1578) - lu(k,1436) * lu(k,1568) + lu(k,1579) = lu(k,1579) - lu(k,1437) * lu(k,1568) + lu(k,1580) = lu(k,1580) - lu(k,1438) * lu(k,1568) + lu(k,1581) = lu(k,1581) - lu(k,1439) * lu(k,1568) + lu(k,1585) = lu(k,1585) - lu(k,1440) * lu(k,1568) + lu(k,1586) = lu(k,1586) - lu(k,1441) * lu(k,1568) + lu(k,1587) = lu(k,1587) - lu(k,1442) * lu(k,1568) + lu(k,1588) = lu(k,1588) - lu(k,1443) * lu(k,1568) + lu(k,1777) = lu(k,1777) - lu(k,1431) * lu(k,1776) + lu(k,1780) = lu(k,1780) - lu(k,1432) * lu(k,1776) + lu(k,1782) = lu(k,1782) - lu(k,1433) * lu(k,1776) + lu(k,1784) = lu(k,1784) - lu(k,1434) * lu(k,1776) + lu(k,1785) = lu(k,1785) - lu(k,1435) * lu(k,1776) + lu(k,1786) = lu(k,1786) - lu(k,1436) * lu(k,1776) + lu(k,1787) = lu(k,1787) - lu(k,1437) * lu(k,1776) + lu(k,1788) = lu(k,1788) - lu(k,1438) * lu(k,1776) + lu(k,1789) = lu(k,1789) - lu(k,1439) * lu(k,1776) + lu(k,1793) = lu(k,1793) - lu(k,1440) * lu(k,1776) + lu(k,1794) = lu(k,1794) - lu(k,1441) * lu(k,1776) + lu(k,1795) = lu(k,1795) - lu(k,1442) * lu(k,1776) + lu(k,1796) = lu(k,1796) - lu(k,1443) * lu(k,1776) + lu(k,1803) = lu(k,1803) - lu(k,1431) * lu(k,1802) + lu(k,1805) = lu(k,1805) - lu(k,1432) * lu(k,1802) + lu(k,1807) = lu(k,1807) - lu(k,1433) * lu(k,1802) + lu(k,1809) = lu(k,1809) - lu(k,1434) * lu(k,1802) + lu(k,1810) = lu(k,1810) - lu(k,1435) * lu(k,1802) + lu(k,1811) = lu(k,1811) - lu(k,1436) * lu(k,1802) + lu(k,1812) = - lu(k,1437) * lu(k,1802) + lu(k,1813) = lu(k,1813) - lu(k,1438) * lu(k,1802) + lu(k,1814) = - lu(k,1439) * lu(k,1802) + lu(k,1818) = lu(k,1818) - lu(k,1440) * lu(k,1802) + lu(k,1819) = lu(k,1819) - lu(k,1441) * lu(k,1802) + lu(k,1820) = lu(k,1820) - lu(k,1442) * lu(k,1802) + lu(k,1821) = lu(k,1821) - lu(k,1443) * lu(k,1802) + lu(k,1975) = lu(k,1975) - lu(k,1431) * lu(k,1974) + lu(k,1978) = lu(k,1978) - lu(k,1432) * lu(k,1974) + lu(k,1980) = lu(k,1980) - lu(k,1433) * lu(k,1974) + lu(k,1982) = lu(k,1982) - lu(k,1434) * lu(k,1974) + lu(k,1983) = lu(k,1983) - lu(k,1435) * lu(k,1974) + lu(k,1984) = lu(k,1984) - lu(k,1436) * lu(k,1974) + lu(k,1985) = lu(k,1985) - lu(k,1437) * lu(k,1974) + lu(k,1986) = lu(k,1986) - lu(k,1438) * lu(k,1974) + lu(k,1987) = lu(k,1987) - lu(k,1439) * lu(k,1974) + lu(k,1991) = lu(k,1991) - lu(k,1440) * lu(k,1974) + lu(k,1992) = lu(k,1992) - lu(k,1441) * lu(k,1974) + lu(k,1993) = lu(k,1993) - lu(k,1442) * lu(k,1974) + lu(k,1994) = lu(k,1994) - lu(k,1443) * lu(k,1974) + lu(k,2009) = lu(k,2009) - lu(k,1431) * lu(k,2008) + lu(k,2012) = lu(k,2012) - lu(k,1432) * lu(k,2008) + lu(k,2014) = lu(k,2014) - lu(k,1433) * lu(k,2008) + lu(k,2016) = lu(k,2016) - lu(k,1434) * lu(k,2008) + lu(k,2017) = lu(k,2017) - lu(k,1435) * lu(k,2008) + lu(k,2018) = lu(k,2018) - lu(k,1436) * lu(k,2008) + lu(k,2019) = lu(k,2019) - lu(k,1437) * lu(k,2008) + lu(k,2020) = lu(k,2020) - lu(k,1438) * lu(k,2008) + lu(k,2021) = lu(k,2021) - lu(k,1439) * lu(k,2008) + lu(k,2025) = lu(k,2025) - lu(k,1440) * lu(k,2008) + lu(k,2026) = lu(k,2026) - lu(k,1441) * lu(k,2008) + lu(k,2027) = lu(k,2027) - lu(k,1442) * lu(k,2008) + lu(k,2028) = lu(k,2028) - lu(k,1443) * lu(k,2008) + lu(k,2114) = - lu(k,1431) * lu(k,2113) + lu(k,2117) = lu(k,2117) - lu(k,1432) * lu(k,2113) + lu(k,2119) = lu(k,2119) - lu(k,1433) * lu(k,2113) + lu(k,2121) = lu(k,2121) - lu(k,1434) * lu(k,2113) + lu(k,2122) = - lu(k,1435) * lu(k,2113) + lu(k,2123) = lu(k,2123) - lu(k,1436) * lu(k,2113) + lu(k,2124) = lu(k,2124) - lu(k,1437) * lu(k,2113) + lu(k,2125) = lu(k,2125) - lu(k,1438) * lu(k,2113) + lu(k,2126) = - lu(k,1439) * lu(k,2113) + lu(k,2130) = - lu(k,1440) * lu(k,2113) + lu(k,2131) = - lu(k,1441) * lu(k,2113) + lu(k,2132) = lu(k,2132) - lu(k,1442) * lu(k,2113) + lu(k,2133) = lu(k,2133) - lu(k,1443) * lu(k,2113) + lu(k,2236) = lu(k,2236) - lu(k,1431) * lu(k,2235) + lu(k,2238) = lu(k,2238) - lu(k,1432) * lu(k,2235) + lu(k,2240) = lu(k,2240) - lu(k,1433) * lu(k,2235) + lu(k,2242) = lu(k,2242) - lu(k,1434) * lu(k,2235) + lu(k,2243) = lu(k,2243) - lu(k,1435) * lu(k,2235) + lu(k,2244) = lu(k,2244) - lu(k,1436) * lu(k,2235) + lu(k,2245) = - lu(k,1437) * lu(k,2235) + lu(k,2246) = lu(k,2246) - lu(k,1438) * lu(k,2235) + lu(k,2247) = - lu(k,1439) * lu(k,2235) + lu(k,2251) = lu(k,2251) - lu(k,1440) * lu(k,2235) + lu(k,2252) = lu(k,2252) - lu(k,1441) * lu(k,2235) + lu(k,2253) = lu(k,2253) - lu(k,1442) * lu(k,2235) + lu(k,2254) = lu(k,2254) - lu(k,1443) * lu(k,2235) + lu(k,2355) = - lu(k,1431) * lu(k,2354) + lu(k,2358) = - lu(k,1432) * lu(k,2354) + lu(k,2360) = - lu(k,1433) * lu(k,2354) + lu(k,2362) = lu(k,2362) - lu(k,1434) * lu(k,2354) + lu(k,2363) = - lu(k,1435) * lu(k,2354) + lu(k,2364) = lu(k,2364) - lu(k,1436) * lu(k,2354) + lu(k,2365) = - lu(k,1437) * lu(k,2354) + lu(k,2366) = lu(k,2366) - lu(k,1438) * lu(k,2354) + lu(k,2367) = lu(k,2367) - lu(k,1439) * lu(k,2354) + lu(k,2371) = lu(k,2371) - lu(k,1440) * lu(k,2354) + lu(k,2372) = - lu(k,1441) * lu(k,2354) + lu(k,2373) = - lu(k,1442) * lu(k,2354) + lu(k,2374) = lu(k,2374) - lu(k,1443) * lu(k,2354) + end do + end subroutine lu_fac28 + subroutine lu_fac29( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1446) = 1._r8 / lu(k,1446) + lu(k,1447) = lu(k,1447) * lu(k,1446) + lu(k,1448) = lu(k,1448) * lu(k,1446) + lu(k,1449) = lu(k,1449) * lu(k,1446) + lu(k,1450) = lu(k,1450) * lu(k,1446) + lu(k,1451) = lu(k,1451) * lu(k,1446) + lu(k,1452) = lu(k,1452) * lu(k,1446) + lu(k,1453) = lu(k,1453) * lu(k,1446) + lu(k,1454) = lu(k,1454) * lu(k,1446) + lu(k,1455) = lu(k,1455) * lu(k,1446) + lu(k,1456) = lu(k,1456) * lu(k,1446) + lu(k,1504) = lu(k,1504) - lu(k,1447) * lu(k,1503) + lu(k,1505) = lu(k,1505) - lu(k,1448) * lu(k,1503) + lu(k,1507) = lu(k,1507) - lu(k,1449) * lu(k,1503) + lu(k,1508) = lu(k,1508) - lu(k,1450) * lu(k,1503) + lu(k,1509) = lu(k,1509) - lu(k,1451) * lu(k,1503) + lu(k,1510) = lu(k,1510) - lu(k,1452) * lu(k,1503) + lu(k,1511) = lu(k,1511) - lu(k,1453) * lu(k,1503) + lu(k,1512) = lu(k,1512) - lu(k,1454) * lu(k,1503) + lu(k,1513) = lu(k,1513) - lu(k,1455) * lu(k,1503) + lu(k,1517) = lu(k,1517) - lu(k,1456) * lu(k,1503) + lu(k,1527) = lu(k,1527) - lu(k,1447) * lu(k,1524) + lu(k,1528) = lu(k,1528) - lu(k,1448) * lu(k,1524) + lu(k,1530) = lu(k,1530) - lu(k,1449) * lu(k,1524) + lu(k,1531) = lu(k,1531) - lu(k,1450) * lu(k,1524) + lu(k,1532) = lu(k,1532) - lu(k,1451) * lu(k,1524) + lu(k,1533) = lu(k,1533) - lu(k,1452) * lu(k,1524) + lu(k,1534) = - lu(k,1453) * lu(k,1524) + lu(k,1535) = lu(k,1535) - lu(k,1454) * lu(k,1524) + lu(k,1536) = lu(k,1536) - lu(k,1455) * lu(k,1524) + lu(k,1543) = lu(k,1543) - lu(k,1456) * lu(k,1524) + lu(k,1572) = lu(k,1572) - lu(k,1447) * lu(k,1569) + lu(k,1573) = lu(k,1573) - lu(k,1448) * lu(k,1569) + lu(k,1575) = lu(k,1575) - lu(k,1449) * lu(k,1569) + lu(k,1576) = lu(k,1576) - lu(k,1450) * lu(k,1569) + lu(k,1577) = lu(k,1577) - lu(k,1451) * lu(k,1569) + lu(k,1578) = lu(k,1578) - lu(k,1452) * lu(k,1569) + lu(k,1579) = lu(k,1579) - lu(k,1453) * lu(k,1569) + lu(k,1580) = lu(k,1580) - lu(k,1454) * lu(k,1569) + lu(k,1581) = lu(k,1581) - lu(k,1455) * lu(k,1569) + lu(k,1588) = lu(k,1588) - lu(k,1456) * lu(k,1569) + lu(k,1615) = lu(k,1615) - lu(k,1447) * lu(k,1612) + lu(k,1616) = lu(k,1616) - lu(k,1448) * lu(k,1612) + lu(k,1618) = lu(k,1618) - lu(k,1449) * lu(k,1612) + lu(k,1619) = lu(k,1619) - lu(k,1450) * lu(k,1612) + lu(k,1620) = lu(k,1620) - lu(k,1451) * lu(k,1612) + lu(k,1621) = lu(k,1621) - lu(k,1452) * lu(k,1612) + lu(k,1622) = lu(k,1622) - lu(k,1453) * lu(k,1612) + lu(k,1623) = lu(k,1623) - lu(k,1454) * lu(k,1612) + lu(k,1624) = lu(k,1624) - lu(k,1455) * lu(k,1612) + lu(k,1631) = lu(k,1631) - lu(k,1456) * lu(k,1612) + lu(k,1780) = lu(k,1780) - lu(k,1447) * lu(k,1777) + lu(k,1781) = lu(k,1781) - lu(k,1448) * lu(k,1777) + lu(k,1783) = lu(k,1783) - lu(k,1449) * lu(k,1777) + lu(k,1784) = lu(k,1784) - lu(k,1450) * lu(k,1777) + lu(k,1785) = lu(k,1785) - lu(k,1451) * lu(k,1777) + lu(k,1786) = lu(k,1786) - lu(k,1452) * lu(k,1777) + lu(k,1787) = lu(k,1787) - lu(k,1453) * lu(k,1777) + lu(k,1788) = lu(k,1788) - lu(k,1454) * lu(k,1777) + lu(k,1789) = lu(k,1789) - lu(k,1455) * lu(k,1777) + lu(k,1796) = lu(k,1796) - lu(k,1456) * lu(k,1777) + lu(k,1805) = lu(k,1805) - lu(k,1447) * lu(k,1803) + lu(k,1806) = - lu(k,1448) * lu(k,1803) + lu(k,1808) = - lu(k,1449) * lu(k,1803) + lu(k,1809) = lu(k,1809) - lu(k,1450) * lu(k,1803) + lu(k,1810) = lu(k,1810) - lu(k,1451) * lu(k,1803) + lu(k,1811) = lu(k,1811) - lu(k,1452) * lu(k,1803) + lu(k,1812) = lu(k,1812) - lu(k,1453) * lu(k,1803) + lu(k,1813) = lu(k,1813) - lu(k,1454) * lu(k,1803) + lu(k,1814) = lu(k,1814) - lu(k,1455) * lu(k,1803) + lu(k,1821) = lu(k,1821) - lu(k,1456) * lu(k,1803) + lu(k,1913) = lu(k,1913) - lu(k,1447) * lu(k,1910) + lu(k,1914) = lu(k,1914) - lu(k,1448) * lu(k,1910) + lu(k,1916) = lu(k,1916) - lu(k,1449) * lu(k,1910) + lu(k,1917) = lu(k,1917) - lu(k,1450) * lu(k,1910) + lu(k,1918) = lu(k,1918) - lu(k,1451) * lu(k,1910) + lu(k,1919) = lu(k,1919) - lu(k,1452) * lu(k,1910) + lu(k,1920) = lu(k,1920) - lu(k,1453) * lu(k,1910) + lu(k,1921) = lu(k,1921) - lu(k,1454) * lu(k,1910) + lu(k,1922) = lu(k,1922) - lu(k,1455) * lu(k,1910) + lu(k,1929) = lu(k,1929) - lu(k,1456) * lu(k,1910) + lu(k,1978) = lu(k,1978) - lu(k,1447) * lu(k,1975) + lu(k,1979) = lu(k,1979) - lu(k,1448) * lu(k,1975) + lu(k,1981) = lu(k,1981) - lu(k,1449) * lu(k,1975) + lu(k,1982) = lu(k,1982) - lu(k,1450) * lu(k,1975) + lu(k,1983) = lu(k,1983) - lu(k,1451) * lu(k,1975) + lu(k,1984) = lu(k,1984) - lu(k,1452) * lu(k,1975) + lu(k,1985) = lu(k,1985) - lu(k,1453) * lu(k,1975) + lu(k,1986) = lu(k,1986) - lu(k,1454) * lu(k,1975) + lu(k,1987) = lu(k,1987) - lu(k,1455) * lu(k,1975) + lu(k,1994) = lu(k,1994) - lu(k,1456) * lu(k,1975) + lu(k,2012) = lu(k,2012) - lu(k,1447) * lu(k,2009) + lu(k,2013) = lu(k,2013) - lu(k,1448) * lu(k,2009) + lu(k,2015) = lu(k,2015) - lu(k,1449) * lu(k,2009) + lu(k,2016) = lu(k,2016) - lu(k,1450) * lu(k,2009) + lu(k,2017) = lu(k,2017) - lu(k,1451) * lu(k,2009) + lu(k,2018) = lu(k,2018) - lu(k,1452) * lu(k,2009) + lu(k,2019) = lu(k,2019) - lu(k,1453) * lu(k,2009) + lu(k,2020) = lu(k,2020) - lu(k,1454) * lu(k,2009) + lu(k,2021) = lu(k,2021) - lu(k,1455) * lu(k,2009) + lu(k,2028) = lu(k,2028) - lu(k,1456) * lu(k,2009) + lu(k,2056) = - lu(k,1447) * lu(k,2054) + lu(k,2057) = - lu(k,1448) * lu(k,2054) + lu(k,2059) = lu(k,2059) - lu(k,1449) * lu(k,2054) + lu(k,2060) = lu(k,2060) - lu(k,1450) * lu(k,2054) + lu(k,2061) = lu(k,2061) - lu(k,1451) * lu(k,2054) + lu(k,2062) = - lu(k,1452) * lu(k,2054) + lu(k,2063) = - lu(k,1453) * lu(k,2054) + lu(k,2064) = lu(k,2064) - lu(k,1454) * lu(k,2054) + lu(k,2065) = lu(k,2065) - lu(k,1455) * lu(k,2054) + lu(k,2072) = lu(k,2072) - lu(k,1456) * lu(k,2054) + lu(k,2117) = lu(k,2117) - lu(k,1447) * lu(k,2114) + lu(k,2118) = lu(k,2118) - lu(k,1448) * lu(k,2114) + lu(k,2120) = - lu(k,1449) * lu(k,2114) + lu(k,2121) = lu(k,2121) - lu(k,1450) * lu(k,2114) + lu(k,2122) = lu(k,2122) - lu(k,1451) * lu(k,2114) + lu(k,2123) = lu(k,2123) - lu(k,1452) * lu(k,2114) + lu(k,2124) = lu(k,2124) - lu(k,1453) * lu(k,2114) + lu(k,2125) = lu(k,2125) - lu(k,1454) * lu(k,2114) + lu(k,2126) = lu(k,2126) - lu(k,1455) * lu(k,2114) + lu(k,2133) = lu(k,2133) - lu(k,1456) * lu(k,2114) + lu(k,2211) = lu(k,2211) - lu(k,1447) * lu(k,2208) + lu(k,2212) = lu(k,2212) - lu(k,1448) * lu(k,2208) + lu(k,2214) = lu(k,2214) - lu(k,1449) * lu(k,2208) + lu(k,2215) = lu(k,2215) - lu(k,1450) * lu(k,2208) + lu(k,2216) = - lu(k,1451) * lu(k,2208) + lu(k,2217) = lu(k,2217) - lu(k,1452) * lu(k,2208) + lu(k,2218) = lu(k,2218) - lu(k,1453) * lu(k,2208) + lu(k,2219) = lu(k,2219) - lu(k,1454) * lu(k,2208) + lu(k,2220) = lu(k,2220) - lu(k,1455) * lu(k,2208) + lu(k,2227) = lu(k,2227) - lu(k,1456) * lu(k,2208) + lu(k,2238) = lu(k,2238) - lu(k,1447) * lu(k,2236) + lu(k,2239) = lu(k,2239) - lu(k,1448) * lu(k,2236) + lu(k,2241) = - lu(k,1449) * lu(k,2236) + lu(k,2242) = lu(k,2242) - lu(k,1450) * lu(k,2236) + lu(k,2243) = lu(k,2243) - lu(k,1451) * lu(k,2236) + lu(k,2244) = lu(k,2244) - lu(k,1452) * lu(k,2236) + lu(k,2245) = lu(k,2245) - lu(k,1453) * lu(k,2236) + lu(k,2246) = lu(k,2246) - lu(k,1454) * lu(k,2236) + lu(k,2247) = lu(k,2247) - lu(k,1455) * lu(k,2236) + lu(k,2254) = lu(k,2254) - lu(k,1456) * lu(k,2236) + lu(k,2331) = lu(k,2331) - lu(k,1447) * lu(k,2328) + lu(k,2332) = lu(k,2332) - lu(k,1448) * lu(k,2328) + lu(k,2334) = lu(k,2334) - lu(k,1449) * lu(k,2328) + lu(k,2335) = lu(k,2335) - lu(k,1450) * lu(k,2328) + lu(k,2336) = lu(k,2336) - lu(k,1451) * lu(k,2328) + lu(k,2337) = lu(k,2337) - lu(k,1452) * lu(k,2328) + lu(k,2338) = lu(k,2338) - lu(k,1453) * lu(k,2328) + lu(k,2339) = lu(k,2339) - lu(k,1454) * lu(k,2328) + lu(k,2340) = lu(k,2340) - lu(k,1455) * lu(k,2328) + lu(k,2347) = lu(k,2347) - lu(k,1456) * lu(k,2328) + lu(k,2358) = lu(k,2358) - lu(k,1447) * lu(k,2355) + lu(k,2359) = - lu(k,1448) * lu(k,2355) + lu(k,2361) = lu(k,2361) - lu(k,1449) * lu(k,2355) + lu(k,2362) = lu(k,2362) - lu(k,1450) * lu(k,2355) + lu(k,2363) = lu(k,2363) - lu(k,1451) * lu(k,2355) + lu(k,2364) = lu(k,2364) - lu(k,1452) * lu(k,2355) + lu(k,2365) = lu(k,2365) - lu(k,1453) * lu(k,2355) + lu(k,2366) = lu(k,2366) - lu(k,1454) * lu(k,2355) + lu(k,2367) = lu(k,2367) - lu(k,1455) * lu(k,2355) + lu(k,2374) = lu(k,2374) - lu(k,1456) * lu(k,2355) + lu(k,1462) = 1._r8 / lu(k,1462) + lu(k,1463) = lu(k,1463) * lu(k,1462) + lu(k,1464) = lu(k,1464) * lu(k,1462) + lu(k,1465) = lu(k,1465) * lu(k,1462) + lu(k,1466) = lu(k,1466) * lu(k,1462) + lu(k,1467) = lu(k,1467) * lu(k,1462) + lu(k,1468) = lu(k,1468) * lu(k,1462) + lu(k,1469) = lu(k,1469) * lu(k,1462) + lu(k,1470) = lu(k,1470) * lu(k,1462) + lu(k,1471) = lu(k,1471) * lu(k,1462) + lu(k,1472) = lu(k,1472) * lu(k,1462) + lu(k,1473) = lu(k,1473) * lu(k,1462) + lu(k,1474) = lu(k,1474) * lu(k,1462) + lu(k,1475) = lu(k,1475) * lu(k,1462) + lu(k,1480) = lu(k,1480) - lu(k,1463) * lu(k,1479) + lu(k,1481) = - lu(k,1464) * lu(k,1479) + lu(k,1482) = - lu(k,1465) * lu(k,1479) + lu(k,1484) = lu(k,1484) - lu(k,1466) * lu(k,1479) + lu(k,1485) = lu(k,1485) - lu(k,1467) * lu(k,1479) + lu(k,1486) = - lu(k,1468) * lu(k,1479) + lu(k,1487) = lu(k,1487) - lu(k,1469) * lu(k,1479) + lu(k,1488) = lu(k,1488) - lu(k,1470) * lu(k,1479) + lu(k,1489) = lu(k,1489) - lu(k,1471) * lu(k,1479) + lu(k,1490) = lu(k,1490) - lu(k,1472) * lu(k,1479) + lu(k,1491) = lu(k,1491) - lu(k,1473) * lu(k,1479) + lu(k,1492) = lu(k,1492) - lu(k,1474) * lu(k,1479) + lu(k,1493) = lu(k,1493) - lu(k,1475) * lu(k,1479) + lu(k,1526) = lu(k,1526) - lu(k,1463) * lu(k,1525) + lu(k,1527) = lu(k,1527) - lu(k,1464) * lu(k,1525) + lu(k,1528) = lu(k,1528) - lu(k,1465) * lu(k,1525) + lu(k,1530) = lu(k,1530) - lu(k,1466) * lu(k,1525) + lu(k,1531) = lu(k,1531) - lu(k,1467) * lu(k,1525) + lu(k,1533) = lu(k,1533) - lu(k,1468) * lu(k,1525) + lu(k,1535) = lu(k,1535) - lu(k,1469) * lu(k,1525) + lu(k,1536) = lu(k,1536) - lu(k,1470) * lu(k,1525) + lu(k,1537) = lu(k,1537) - lu(k,1471) * lu(k,1525) + lu(k,1538) = lu(k,1538) - lu(k,1472) * lu(k,1525) + lu(k,1539) = lu(k,1539) - lu(k,1473) * lu(k,1525) + lu(k,1540) = lu(k,1540) - lu(k,1474) * lu(k,1525) + lu(k,1543) = lu(k,1543) - lu(k,1475) * lu(k,1525) + lu(k,1571) = lu(k,1571) - lu(k,1463) * lu(k,1570) + lu(k,1572) = lu(k,1572) - lu(k,1464) * lu(k,1570) + lu(k,1573) = lu(k,1573) - lu(k,1465) * lu(k,1570) + lu(k,1575) = lu(k,1575) - lu(k,1466) * lu(k,1570) + lu(k,1576) = lu(k,1576) - lu(k,1467) * lu(k,1570) + lu(k,1578) = lu(k,1578) - lu(k,1468) * lu(k,1570) + lu(k,1580) = lu(k,1580) - lu(k,1469) * lu(k,1570) + lu(k,1581) = lu(k,1581) - lu(k,1470) * lu(k,1570) + lu(k,1582) = lu(k,1582) - lu(k,1471) * lu(k,1570) + lu(k,1583) = lu(k,1583) - lu(k,1472) * lu(k,1570) + lu(k,1584) = lu(k,1584) - lu(k,1473) * lu(k,1570) + lu(k,1585) = lu(k,1585) - lu(k,1474) * lu(k,1570) + lu(k,1588) = lu(k,1588) - lu(k,1475) * lu(k,1570) + lu(k,1614) = lu(k,1614) - lu(k,1463) * lu(k,1613) + lu(k,1615) = lu(k,1615) - lu(k,1464) * lu(k,1613) + lu(k,1616) = lu(k,1616) - lu(k,1465) * lu(k,1613) + lu(k,1618) = lu(k,1618) - lu(k,1466) * lu(k,1613) + lu(k,1619) = lu(k,1619) - lu(k,1467) * lu(k,1613) + lu(k,1621) = lu(k,1621) - lu(k,1468) * lu(k,1613) + lu(k,1623) = lu(k,1623) - lu(k,1469) * lu(k,1613) + lu(k,1624) = lu(k,1624) - lu(k,1470) * lu(k,1613) + lu(k,1625) = lu(k,1625) - lu(k,1471) * lu(k,1613) + lu(k,1626) = lu(k,1626) - lu(k,1472) * lu(k,1613) + lu(k,1627) = lu(k,1627) - lu(k,1473) * lu(k,1613) + lu(k,1628) = lu(k,1628) - lu(k,1474) * lu(k,1613) + lu(k,1631) = lu(k,1631) - lu(k,1475) * lu(k,1613) + lu(k,1779) = lu(k,1779) - lu(k,1463) * lu(k,1778) + lu(k,1780) = lu(k,1780) - lu(k,1464) * lu(k,1778) + lu(k,1781) = lu(k,1781) - lu(k,1465) * lu(k,1778) + lu(k,1783) = lu(k,1783) - lu(k,1466) * lu(k,1778) + lu(k,1784) = lu(k,1784) - lu(k,1467) * lu(k,1778) + lu(k,1786) = lu(k,1786) - lu(k,1468) * lu(k,1778) + lu(k,1788) = lu(k,1788) - lu(k,1469) * lu(k,1778) + lu(k,1789) = lu(k,1789) - lu(k,1470) * lu(k,1778) + lu(k,1790) = lu(k,1790) - lu(k,1471) * lu(k,1778) + lu(k,1791) = lu(k,1791) - lu(k,1472) * lu(k,1778) + lu(k,1792) = lu(k,1792) - lu(k,1473) * lu(k,1778) + lu(k,1793) = lu(k,1793) - lu(k,1474) * lu(k,1778) + lu(k,1796) = lu(k,1796) - lu(k,1475) * lu(k,1778) + lu(k,1912) = lu(k,1912) - lu(k,1463) * lu(k,1911) + lu(k,1913) = lu(k,1913) - lu(k,1464) * lu(k,1911) + lu(k,1914) = lu(k,1914) - lu(k,1465) * lu(k,1911) + lu(k,1916) = lu(k,1916) - lu(k,1466) * lu(k,1911) + lu(k,1917) = lu(k,1917) - lu(k,1467) * lu(k,1911) + lu(k,1919) = lu(k,1919) - lu(k,1468) * lu(k,1911) + lu(k,1921) = lu(k,1921) - lu(k,1469) * lu(k,1911) + lu(k,1922) = lu(k,1922) - lu(k,1470) * lu(k,1911) + lu(k,1923) = lu(k,1923) - lu(k,1471) * lu(k,1911) + lu(k,1924) = lu(k,1924) - lu(k,1472) * lu(k,1911) + lu(k,1925) = lu(k,1925) - lu(k,1473) * lu(k,1911) + lu(k,1926) = lu(k,1926) - lu(k,1474) * lu(k,1911) + lu(k,1929) = lu(k,1929) - lu(k,1475) * lu(k,1911) + lu(k,1977) = lu(k,1977) - lu(k,1463) * lu(k,1976) + lu(k,1978) = lu(k,1978) - lu(k,1464) * lu(k,1976) + lu(k,1979) = lu(k,1979) - lu(k,1465) * lu(k,1976) + lu(k,1981) = lu(k,1981) - lu(k,1466) * lu(k,1976) + lu(k,1982) = lu(k,1982) - lu(k,1467) * lu(k,1976) + lu(k,1984) = lu(k,1984) - lu(k,1468) * lu(k,1976) + lu(k,1986) = lu(k,1986) - lu(k,1469) * lu(k,1976) + lu(k,1987) = lu(k,1987) - lu(k,1470) * lu(k,1976) + lu(k,1988) = - lu(k,1471) * lu(k,1976) + lu(k,1989) = lu(k,1989) - lu(k,1472) * lu(k,1976) + lu(k,1990) = lu(k,1990) - lu(k,1473) * lu(k,1976) + lu(k,1991) = lu(k,1991) - lu(k,1474) * lu(k,1976) + lu(k,1994) = lu(k,1994) - lu(k,1475) * lu(k,1976) + lu(k,2011) = lu(k,2011) - lu(k,1463) * lu(k,2010) + lu(k,2012) = lu(k,2012) - lu(k,1464) * lu(k,2010) + lu(k,2013) = lu(k,2013) - lu(k,1465) * lu(k,2010) + lu(k,2015) = lu(k,2015) - lu(k,1466) * lu(k,2010) + lu(k,2016) = lu(k,2016) - lu(k,1467) * lu(k,2010) + lu(k,2018) = lu(k,2018) - lu(k,1468) * lu(k,2010) + lu(k,2020) = lu(k,2020) - lu(k,1469) * lu(k,2010) + lu(k,2021) = lu(k,2021) - lu(k,1470) * lu(k,2010) + lu(k,2022) = lu(k,2022) - lu(k,1471) * lu(k,2010) + lu(k,2023) = lu(k,2023) - lu(k,1472) * lu(k,2010) + lu(k,2024) = lu(k,2024) - lu(k,1473) * lu(k,2010) + lu(k,2025) = lu(k,2025) - lu(k,1474) * lu(k,2010) + lu(k,2028) = lu(k,2028) - lu(k,1475) * lu(k,2010) + lu(k,2031) = lu(k,2031) - lu(k,1463) * lu(k,2030) + lu(k,2032) = lu(k,2032) - lu(k,1464) * lu(k,2030) + lu(k,2033) = - lu(k,1465) * lu(k,2030) + lu(k,2035) = lu(k,2035) - lu(k,1466) * lu(k,2030) + lu(k,2036) = lu(k,2036) - lu(k,1467) * lu(k,2030) + lu(k,2038) = lu(k,2038) - lu(k,1468) * lu(k,2030) + lu(k,2040) = lu(k,2040) - lu(k,1469) * lu(k,2030) + lu(k,2041) = lu(k,2041) - lu(k,1470) * lu(k,2030) + lu(k,2042) = lu(k,2042) - lu(k,1471) * lu(k,2030) + lu(k,2043) = lu(k,2043) - lu(k,1472) * lu(k,2030) + lu(k,2044) = lu(k,2044) - lu(k,1473) * lu(k,2030) + lu(k,2045) = lu(k,2045) - lu(k,1474) * lu(k,2030) + lu(k,2048) = lu(k,2048) - lu(k,1475) * lu(k,2030) + lu(k,2116) = lu(k,2116) - lu(k,1463) * lu(k,2115) + lu(k,2117) = lu(k,2117) - lu(k,1464) * lu(k,2115) + lu(k,2118) = lu(k,2118) - lu(k,1465) * lu(k,2115) + lu(k,2120) = lu(k,2120) - lu(k,1466) * lu(k,2115) + lu(k,2121) = lu(k,2121) - lu(k,1467) * lu(k,2115) + lu(k,2123) = lu(k,2123) - lu(k,1468) * lu(k,2115) + lu(k,2125) = lu(k,2125) - lu(k,1469) * lu(k,2115) + lu(k,2126) = lu(k,2126) - lu(k,1470) * lu(k,2115) + lu(k,2127) = - lu(k,1471) * lu(k,2115) + lu(k,2128) = lu(k,2128) - lu(k,1472) * lu(k,2115) + lu(k,2129) = lu(k,2129) - lu(k,1473) * lu(k,2115) + lu(k,2130) = lu(k,2130) - lu(k,1474) * lu(k,2115) + lu(k,2133) = lu(k,2133) - lu(k,1475) * lu(k,2115) + lu(k,2169) = lu(k,2169) - lu(k,1463) * lu(k,2168) + lu(k,2170) = lu(k,2170) - lu(k,1464) * lu(k,2168) + lu(k,2171) = lu(k,2171) - lu(k,1465) * lu(k,2168) + lu(k,2173) = - lu(k,1466) * lu(k,2168) + lu(k,2174) = lu(k,2174) - lu(k,1467) * lu(k,2168) + lu(k,2176) = lu(k,2176) - lu(k,1468) * lu(k,2168) + lu(k,2178) = lu(k,2178) - lu(k,1469) * lu(k,2168) + lu(k,2179) = lu(k,2179) - lu(k,1470) * lu(k,2168) + lu(k,2180) = - lu(k,1471) * lu(k,2168) + lu(k,2181) = lu(k,2181) - lu(k,1472) * lu(k,2168) + lu(k,2182) = lu(k,2182) - lu(k,1473) * lu(k,2168) + lu(k,2183) = lu(k,2183) - lu(k,1474) * lu(k,2168) + lu(k,2186) = lu(k,2186) - lu(k,1475) * lu(k,2168) + lu(k,2210) = lu(k,2210) - lu(k,1463) * lu(k,2209) + lu(k,2211) = lu(k,2211) - lu(k,1464) * lu(k,2209) + lu(k,2212) = lu(k,2212) - lu(k,1465) * lu(k,2209) + lu(k,2214) = lu(k,2214) - lu(k,1466) * lu(k,2209) + lu(k,2215) = lu(k,2215) - lu(k,1467) * lu(k,2209) + lu(k,2217) = lu(k,2217) - lu(k,1468) * lu(k,2209) + lu(k,2219) = lu(k,2219) - lu(k,1469) * lu(k,2209) + lu(k,2220) = lu(k,2220) - lu(k,1470) * lu(k,2209) + lu(k,2221) = lu(k,2221) - lu(k,1471) * lu(k,2209) + lu(k,2222) = lu(k,2222) - lu(k,1472) * lu(k,2209) + lu(k,2223) = lu(k,2223) - lu(k,1473) * lu(k,2209) + lu(k,2224) = lu(k,2224) - lu(k,1474) * lu(k,2209) + lu(k,2227) = lu(k,2227) - lu(k,1475) * lu(k,2209) + lu(k,2330) = lu(k,2330) - lu(k,1463) * lu(k,2329) + lu(k,2331) = lu(k,2331) - lu(k,1464) * lu(k,2329) + lu(k,2332) = lu(k,2332) - lu(k,1465) * lu(k,2329) + lu(k,2334) = lu(k,2334) - lu(k,1466) * lu(k,2329) + lu(k,2335) = lu(k,2335) - lu(k,1467) * lu(k,2329) + lu(k,2337) = lu(k,2337) - lu(k,1468) * lu(k,2329) + lu(k,2339) = lu(k,2339) - lu(k,1469) * lu(k,2329) + lu(k,2340) = lu(k,2340) - lu(k,1470) * lu(k,2329) + lu(k,2341) = - lu(k,1471) * lu(k,2329) + lu(k,2342) = lu(k,2342) - lu(k,1472) * lu(k,2329) + lu(k,2343) = lu(k,2343) - lu(k,1473) * lu(k,2329) + lu(k,2344) = lu(k,2344) - lu(k,1474) * lu(k,2329) + lu(k,2347) = lu(k,2347) - lu(k,1475) * lu(k,2329) + lu(k,2357) = lu(k,2357) - lu(k,1463) * lu(k,2356) + lu(k,2358) = lu(k,2358) - lu(k,1464) * lu(k,2356) + lu(k,2359) = lu(k,2359) - lu(k,1465) * lu(k,2356) + lu(k,2361) = lu(k,2361) - lu(k,1466) * lu(k,2356) + lu(k,2362) = lu(k,2362) - lu(k,1467) * lu(k,2356) + lu(k,2364) = lu(k,2364) - lu(k,1468) * lu(k,2356) + lu(k,2366) = lu(k,2366) - lu(k,1469) * lu(k,2356) + lu(k,2367) = lu(k,2367) - lu(k,1470) * lu(k,2356) + lu(k,2368) = lu(k,2368) - lu(k,1471) * lu(k,2356) + lu(k,2369) = lu(k,2369) - lu(k,1472) * lu(k,2356) + lu(k,2370) = lu(k,2370) - lu(k,1473) * lu(k,2356) + lu(k,2371) = lu(k,2371) - lu(k,1474) * lu(k,2356) + lu(k,2374) = lu(k,2374) - lu(k,1475) * lu(k,2356) + lu(k,1480) = 1._r8 / lu(k,1480) + lu(k,1481) = lu(k,1481) * lu(k,1480) + lu(k,1482) = lu(k,1482) * lu(k,1480) + lu(k,1483) = lu(k,1483) * lu(k,1480) + lu(k,1484) = lu(k,1484) * lu(k,1480) + lu(k,1485) = lu(k,1485) * lu(k,1480) + lu(k,1486) = lu(k,1486) * lu(k,1480) + lu(k,1487) = lu(k,1487) * lu(k,1480) + lu(k,1488) = lu(k,1488) * lu(k,1480) + lu(k,1489) = lu(k,1489) * lu(k,1480) + lu(k,1490) = lu(k,1490) * lu(k,1480) + lu(k,1491) = lu(k,1491) * lu(k,1480) + lu(k,1492) = lu(k,1492) * lu(k,1480) + lu(k,1493) = lu(k,1493) * lu(k,1480) + lu(k,1527) = lu(k,1527) - lu(k,1481) * lu(k,1526) + lu(k,1528) = lu(k,1528) - lu(k,1482) * lu(k,1526) + lu(k,1529) = lu(k,1529) - lu(k,1483) * lu(k,1526) + lu(k,1530) = lu(k,1530) - lu(k,1484) * lu(k,1526) + lu(k,1531) = lu(k,1531) - lu(k,1485) * lu(k,1526) + lu(k,1533) = lu(k,1533) - lu(k,1486) * lu(k,1526) + lu(k,1535) = lu(k,1535) - lu(k,1487) * lu(k,1526) + lu(k,1536) = lu(k,1536) - lu(k,1488) * lu(k,1526) + lu(k,1537) = lu(k,1537) - lu(k,1489) * lu(k,1526) + lu(k,1538) = lu(k,1538) - lu(k,1490) * lu(k,1526) + lu(k,1539) = lu(k,1539) - lu(k,1491) * lu(k,1526) + lu(k,1540) = lu(k,1540) - lu(k,1492) * lu(k,1526) + lu(k,1543) = lu(k,1543) - lu(k,1493) * lu(k,1526) + lu(k,1572) = lu(k,1572) - lu(k,1481) * lu(k,1571) + lu(k,1573) = lu(k,1573) - lu(k,1482) * lu(k,1571) + lu(k,1574) = lu(k,1574) - lu(k,1483) * lu(k,1571) + lu(k,1575) = lu(k,1575) - lu(k,1484) * lu(k,1571) + lu(k,1576) = lu(k,1576) - lu(k,1485) * lu(k,1571) + lu(k,1578) = lu(k,1578) - lu(k,1486) * lu(k,1571) + lu(k,1580) = lu(k,1580) - lu(k,1487) * lu(k,1571) + lu(k,1581) = lu(k,1581) - lu(k,1488) * lu(k,1571) + lu(k,1582) = lu(k,1582) - lu(k,1489) * lu(k,1571) + lu(k,1583) = lu(k,1583) - lu(k,1490) * lu(k,1571) + lu(k,1584) = lu(k,1584) - lu(k,1491) * lu(k,1571) + lu(k,1585) = lu(k,1585) - lu(k,1492) * lu(k,1571) + lu(k,1588) = lu(k,1588) - lu(k,1493) * lu(k,1571) + lu(k,1615) = lu(k,1615) - lu(k,1481) * lu(k,1614) + lu(k,1616) = lu(k,1616) - lu(k,1482) * lu(k,1614) + lu(k,1617) = - lu(k,1483) * lu(k,1614) + lu(k,1618) = lu(k,1618) - lu(k,1484) * lu(k,1614) + lu(k,1619) = lu(k,1619) - lu(k,1485) * lu(k,1614) + lu(k,1621) = lu(k,1621) - lu(k,1486) * lu(k,1614) + lu(k,1623) = lu(k,1623) - lu(k,1487) * lu(k,1614) + lu(k,1624) = lu(k,1624) - lu(k,1488) * lu(k,1614) + lu(k,1625) = lu(k,1625) - lu(k,1489) * lu(k,1614) + lu(k,1626) = lu(k,1626) - lu(k,1490) * lu(k,1614) + lu(k,1627) = lu(k,1627) - lu(k,1491) * lu(k,1614) + lu(k,1628) = lu(k,1628) - lu(k,1492) * lu(k,1614) + lu(k,1631) = lu(k,1631) - lu(k,1493) * lu(k,1614) + lu(k,1780) = lu(k,1780) - lu(k,1481) * lu(k,1779) + lu(k,1781) = lu(k,1781) - lu(k,1482) * lu(k,1779) + lu(k,1782) = lu(k,1782) - lu(k,1483) * lu(k,1779) + lu(k,1783) = lu(k,1783) - lu(k,1484) * lu(k,1779) + lu(k,1784) = lu(k,1784) - lu(k,1485) * lu(k,1779) + lu(k,1786) = lu(k,1786) - lu(k,1486) * lu(k,1779) + lu(k,1788) = lu(k,1788) - lu(k,1487) * lu(k,1779) + lu(k,1789) = lu(k,1789) - lu(k,1488) * lu(k,1779) + lu(k,1790) = lu(k,1790) - lu(k,1489) * lu(k,1779) + lu(k,1791) = lu(k,1791) - lu(k,1490) * lu(k,1779) + lu(k,1792) = lu(k,1792) - lu(k,1491) * lu(k,1779) + lu(k,1793) = lu(k,1793) - lu(k,1492) * lu(k,1779) + lu(k,1796) = lu(k,1796) - lu(k,1493) * lu(k,1779) + lu(k,1805) = lu(k,1805) - lu(k,1481) * lu(k,1804) + lu(k,1806) = lu(k,1806) - lu(k,1482) * lu(k,1804) + lu(k,1807) = lu(k,1807) - lu(k,1483) * lu(k,1804) + lu(k,1808) = lu(k,1808) - lu(k,1484) * lu(k,1804) + lu(k,1809) = lu(k,1809) - lu(k,1485) * lu(k,1804) + lu(k,1811) = lu(k,1811) - lu(k,1486) * lu(k,1804) + lu(k,1813) = lu(k,1813) - lu(k,1487) * lu(k,1804) + lu(k,1814) = lu(k,1814) - lu(k,1488) * lu(k,1804) + lu(k,1815) = lu(k,1815) - lu(k,1489) * lu(k,1804) + lu(k,1816) = lu(k,1816) - lu(k,1490) * lu(k,1804) + lu(k,1817) = - lu(k,1491) * lu(k,1804) + lu(k,1818) = lu(k,1818) - lu(k,1492) * lu(k,1804) + lu(k,1821) = lu(k,1821) - lu(k,1493) * lu(k,1804) + lu(k,1913) = lu(k,1913) - lu(k,1481) * lu(k,1912) + lu(k,1914) = lu(k,1914) - lu(k,1482) * lu(k,1912) + lu(k,1915) = lu(k,1915) - lu(k,1483) * lu(k,1912) + lu(k,1916) = lu(k,1916) - lu(k,1484) * lu(k,1912) + lu(k,1917) = lu(k,1917) - lu(k,1485) * lu(k,1912) + lu(k,1919) = lu(k,1919) - lu(k,1486) * lu(k,1912) + lu(k,1921) = lu(k,1921) - lu(k,1487) * lu(k,1912) + lu(k,1922) = lu(k,1922) - lu(k,1488) * lu(k,1912) + lu(k,1923) = lu(k,1923) - lu(k,1489) * lu(k,1912) + lu(k,1924) = lu(k,1924) - lu(k,1490) * lu(k,1912) + lu(k,1925) = lu(k,1925) - lu(k,1491) * lu(k,1912) + lu(k,1926) = lu(k,1926) - lu(k,1492) * lu(k,1912) + lu(k,1929) = lu(k,1929) - lu(k,1493) * lu(k,1912) + lu(k,1978) = lu(k,1978) - lu(k,1481) * lu(k,1977) + lu(k,1979) = lu(k,1979) - lu(k,1482) * lu(k,1977) + lu(k,1980) = lu(k,1980) - lu(k,1483) * lu(k,1977) + lu(k,1981) = lu(k,1981) - lu(k,1484) * lu(k,1977) + lu(k,1982) = lu(k,1982) - lu(k,1485) * lu(k,1977) + lu(k,1984) = lu(k,1984) - lu(k,1486) * lu(k,1977) + lu(k,1986) = lu(k,1986) - lu(k,1487) * lu(k,1977) + lu(k,1987) = lu(k,1987) - lu(k,1488) * lu(k,1977) + lu(k,1988) = lu(k,1988) - lu(k,1489) * lu(k,1977) + lu(k,1989) = lu(k,1989) - lu(k,1490) * lu(k,1977) + lu(k,1990) = lu(k,1990) - lu(k,1491) * lu(k,1977) + lu(k,1991) = lu(k,1991) - lu(k,1492) * lu(k,1977) + lu(k,1994) = lu(k,1994) - lu(k,1493) * lu(k,1977) + lu(k,2012) = lu(k,2012) - lu(k,1481) * lu(k,2011) + lu(k,2013) = lu(k,2013) - lu(k,1482) * lu(k,2011) + lu(k,2014) = lu(k,2014) - lu(k,1483) * lu(k,2011) + lu(k,2015) = lu(k,2015) - lu(k,1484) * lu(k,2011) + lu(k,2016) = lu(k,2016) - lu(k,1485) * lu(k,2011) + lu(k,2018) = lu(k,2018) - lu(k,1486) * lu(k,2011) + lu(k,2020) = lu(k,2020) - lu(k,1487) * lu(k,2011) + lu(k,2021) = lu(k,2021) - lu(k,1488) * lu(k,2011) + lu(k,2022) = lu(k,2022) - lu(k,1489) * lu(k,2011) + lu(k,2023) = lu(k,2023) - lu(k,1490) * lu(k,2011) + lu(k,2024) = lu(k,2024) - lu(k,1491) * lu(k,2011) + lu(k,2025) = lu(k,2025) - lu(k,1492) * lu(k,2011) + lu(k,2028) = lu(k,2028) - lu(k,1493) * lu(k,2011) + lu(k,2032) = lu(k,2032) - lu(k,1481) * lu(k,2031) + lu(k,2033) = lu(k,2033) - lu(k,1482) * lu(k,2031) + lu(k,2034) = - lu(k,1483) * lu(k,2031) + lu(k,2035) = lu(k,2035) - lu(k,1484) * lu(k,2031) + lu(k,2036) = lu(k,2036) - lu(k,1485) * lu(k,2031) + lu(k,2038) = lu(k,2038) - lu(k,1486) * lu(k,2031) + lu(k,2040) = lu(k,2040) - lu(k,1487) * lu(k,2031) + lu(k,2041) = lu(k,2041) - lu(k,1488) * lu(k,2031) + lu(k,2042) = lu(k,2042) - lu(k,1489) * lu(k,2031) + lu(k,2043) = lu(k,2043) - lu(k,1490) * lu(k,2031) + lu(k,2044) = lu(k,2044) - lu(k,1491) * lu(k,2031) + lu(k,2045) = lu(k,2045) - lu(k,1492) * lu(k,2031) + lu(k,2048) = lu(k,2048) - lu(k,1493) * lu(k,2031) + lu(k,2056) = lu(k,2056) - lu(k,1481) * lu(k,2055) + lu(k,2057) = lu(k,2057) - lu(k,1482) * lu(k,2055) + lu(k,2058) = lu(k,2058) - lu(k,1483) * lu(k,2055) + lu(k,2059) = lu(k,2059) - lu(k,1484) * lu(k,2055) + lu(k,2060) = lu(k,2060) - lu(k,1485) * lu(k,2055) + lu(k,2062) = lu(k,2062) - lu(k,1486) * lu(k,2055) + lu(k,2064) = lu(k,2064) - lu(k,1487) * lu(k,2055) + lu(k,2065) = lu(k,2065) - lu(k,1488) * lu(k,2055) + lu(k,2066) = lu(k,2066) - lu(k,1489) * lu(k,2055) + lu(k,2067) = lu(k,2067) - lu(k,1490) * lu(k,2055) + lu(k,2068) = - lu(k,1491) * lu(k,2055) + lu(k,2069) = lu(k,2069) - lu(k,1492) * lu(k,2055) + lu(k,2072) = lu(k,2072) - lu(k,1493) * lu(k,2055) + lu(k,2117) = lu(k,2117) - lu(k,1481) * lu(k,2116) + lu(k,2118) = lu(k,2118) - lu(k,1482) * lu(k,2116) + lu(k,2119) = lu(k,2119) - lu(k,1483) * lu(k,2116) + lu(k,2120) = lu(k,2120) - lu(k,1484) * lu(k,2116) + lu(k,2121) = lu(k,2121) - lu(k,1485) * lu(k,2116) + lu(k,2123) = lu(k,2123) - lu(k,1486) * lu(k,2116) + lu(k,2125) = lu(k,2125) - lu(k,1487) * lu(k,2116) + lu(k,2126) = lu(k,2126) - lu(k,1488) * lu(k,2116) + lu(k,2127) = lu(k,2127) - lu(k,1489) * lu(k,2116) + lu(k,2128) = lu(k,2128) - lu(k,1490) * lu(k,2116) + lu(k,2129) = lu(k,2129) - lu(k,1491) * lu(k,2116) + lu(k,2130) = lu(k,2130) - lu(k,1492) * lu(k,2116) + lu(k,2133) = lu(k,2133) - lu(k,1493) * lu(k,2116) + lu(k,2170) = lu(k,2170) - lu(k,1481) * lu(k,2169) + lu(k,2171) = lu(k,2171) - lu(k,1482) * lu(k,2169) + lu(k,2172) = lu(k,2172) - lu(k,1483) * lu(k,2169) + lu(k,2173) = lu(k,2173) - lu(k,1484) * lu(k,2169) + lu(k,2174) = lu(k,2174) - lu(k,1485) * lu(k,2169) + lu(k,2176) = lu(k,2176) - lu(k,1486) * lu(k,2169) + lu(k,2178) = lu(k,2178) - lu(k,1487) * lu(k,2169) + lu(k,2179) = lu(k,2179) - lu(k,1488) * lu(k,2169) + lu(k,2180) = lu(k,2180) - lu(k,1489) * lu(k,2169) + lu(k,2181) = lu(k,2181) - lu(k,1490) * lu(k,2169) + lu(k,2182) = lu(k,2182) - lu(k,1491) * lu(k,2169) + lu(k,2183) = lu(k,2183) - lu(k,1492) * lu(k,2169) + lu(k,2186) = lu(k,2186) - lu(k,1493) * lu(k,2169) + lu(k,2211) = lu(k,2211) - lu(k,1481) * lu(k,2210) + lu(k,2212) = lu(k,2212) - lu(k,1482) * lu(k,2210) + lu(k,2213) = lu(k,2213) - lu(k,1483) * lu(k,2210) + lu(k,2214) = lu(k,2214) - lu(k,1484) * lu(k,2210) + lu(k,2215) = lu(k,2215) - lu(k,1485) * lu(k,2210) + lu(k,2217) = lu(k,2217) - lu(k,1486) * lu(k,2210) + lu(k,2219) = lu(k,2219) - lu(k,1487) * lu(k,2210) + lu(k,2220) = lu(k,2220) - lu(k,1488) * lu(k,2210) + lu(k,2221) = lu(k,2221) - lu(k,1489) * lu(k,2210) + lu(k,2222) = lu(k,2222) - lu(k,1490) * lu(k,2210) + lu(k,2223) = lu(k,2223) - lu(k,1491) * lu(k,2210) + lu(k,2224) = lu(k,2224) - lu(k,1492) * lu(k,2210) + lu(k,2227) = lu(k,2227) - lu(k,1493) * lu(k,2210) + lu(k,2238) = lu(k,2238) - lu(k,1481) * lu(k,2237) + lu(k,2239) = lu(k,2239) - lu(k,1482) * lu(k,2237) + lu(k,2240) = lu(k,2240) - lu(k,1483) * lu(k,2237) + lu(k,2241) = lu(k,2241) - lu(k,1484) * lu(k,2237) + lu(k,2242) = lu(k,2242) - lu(k,1485) * lu(k,2237) + lu(k,2244) = lu(k,2244) - lu(k,1486) * lu(k,2237) + lu(k,2246) = lu(k,2246) - lu(k,1487) * lu(k,2237) + lu(k,2247) = lu(k,2247) - lu(k,1488) * lu(k,2237) + lu(k,2248) = lu(k,2248) - lu(k,1489) * lu(k,2237) + lu(k,2249) = lu(k,2249) - lu(k,1490) * lu(k,2237) + lu(k,2250) = lu(k,2250) - lu(k,1491) * lu(k,2237) + lu(k,2251) = lu(k,2251) - lu(k,1492) * lu(k,2237) + lu(k,2254) = lu(k,2254) - lu(k,1493) * lu(k,2237) + lu(k,2331) = lu(k,2331) - lu(k,1481) * lu(k,2330) + lu(k,2332) = lu(k,2332) - lu(k,1482) * lu(k,2330) + lu(k,2333) = lu(k,2333) - lu(k,1483) * lu(k,2330) + lu(k,2334) = lu(k,2334) - lu(k,1484) * lu(k,2330) + lu(k,2335) = lu(k,2335) - lu(k,1485) * lu(k,2330) + lu(k,2337) = lu(k,2337) - lu(k,1486) * lu(k,2330) + lu(k,2339) = lu(k,2339) - lu(k,1487) * lu(k,2330) + lu(k,2340) = lu(k,2340) - lu(k,1488) * lu(k,2330) + lu(k,2341) = lu(k,2341) - lu(k,1489) * lu(k,2330) + lu(k,2342) = lu(k,2342) - lu(k,1490) * lu(k,2330) + lu(k,2343) = lu(k,2343) - lu(k,1491) * lu(k,2330) + lu(k,2344) = lu(k,2344) - lu(k,1492) * lu(k,2330) + lu(k,2347) = lu(k,2347) - lu(k,1493) * lu(k,2330) + lu(k,2358) = lu(k,2358) - lu(k,1481) * lu(k,2357) + lu(k,2359) = lu(k,2359) - lu(k,1482) * lu(k,2357) + lu(k,2360) = lu(k,2360) - lu(k,1483) * lu(k,2357) + lu(k,2361) = lu(k,2361) - lu(k,1484) * lu(k,2357) + lu(k,2362) = lu(k,2362) - lu(k,1485) * lu(k,2357) + lu(k,2364) = lu(k,2364) - lu(k,1486) * lu(k,2357) + lu(k,2366) = lu(k,2366) - lu(k,1487) * lu(k,2357) + lu(k,2367) = lu(k,2367) - lu(k,1488) * lu(k,2357) + lu(k,2368) = lu(k,2368) - lu(k,1489) * lu(k,2357) + lu(k,2369) = lu(k,2369) - lu(k,1490) * lu(k,2357) + lu(k,2370) = lu(k,2370) - lu(k,1491) * lu(k,2357) + lu(k,2371) = lu(k,2371) - lu(k,1492) * lu(k,2357) + lu(k,2374) = lu(k,2374) - lu(k,1493) * lu(k,2357) + end do + end subroutine lu_fac29 + subroutine lu_fac30( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1504) = 1._r8 / lu(k,1504) + lu(k,1505) = lu(k,1505) * lu(k,1504) + lu(k,1506) = lu(k,1506) * lu(k,1504) + lu(k,1507) = lu(k,1507) * lu(k,1504) + lu(k,1508) = lu(k,1508) * lu(k,1504) + lu(k,1509) = lu(k,1509) * lu(k,1504) + lu(k,1510) = lu(k,1510) * lu(k,1504) + lu(k,1511) = lu(k,1511) * lu(k,1504) + lu(k,1512) = lu(k,1512) * lu(k,1504) + lu(k,1513) = lu(k,1513) * lu(k,1504) + lu(k,1514) = lu(k,1514) * lu(k,1504) + lu(k,1515) = lu(k,1515) * lu(k,1504) + lu(k,1516) = lu(k,1516) * lu(k,1504) + lu(k,1517) = lu(k,1517) * lu(k,1504) + lu(k,1528) = lu(k,1528) - lu(k,1505) * lu(k,1527) + lu(k,1529) = lu(k,1529) - lu(k,1506) * lu(k,1527) + lu(k,1530) = lu(k,1530) - lu(k,1507) * lu(k,1527) + lu(k,1531) = lu(k,1531) - lu(k,1508) * lu(k,1527) + lu(k,1532) = lu(k,1532) - lu(k,1509) * lu(k,1527) + lu(k,1533) = lu(k,1533) - lu(k,1510) * lu(k,1527) + lu(k,1534) = lu(k,1534) - lu(k,1511) * lu(k,1527) + lu(k,1535) = lu(k,1535) - lu(k,1512) * lu(k,1527) + lu(k,1536) = lu(k,1536) - lu(k,1513) * lu(k,1527) + lu(k,1540) = lu(k,1540) - lu(k,1514) * lu(k,1527) + lu(k,1541) = - lu(k,1515) * lu(k,1527) + lu(k,1542) = lu(k,1542) - lu(k,1516) * lu(k,1527) + lu(k,1543) = lu(k,1543) - lu(k,1517) * lu(k,1527) + lu(k,1573) = lu(k,1573) - lu(k,1505) * lu(k,1572) + lu(k,1574) = lu(k,1574) - lu(k,1506) * lu(k,1572) + lu(k,1575) = lu(k,1575) - lu(k,1507) * lu(k,1572) + lu(k,1576) = lu(k,1576) - lu(k,1508) * lu(k,1572) + lu(k,1577) = lu(k,1577) - lu(k,1509) * lu(k,1572) + lu(k,1578) = lu(k,1578) - lu(k,1510) * lu(k,1572) + lu(k,1579) = lu(k,1579) - lu(k,1511) * lu(k,1572) + lu(k,1580) = lu(k,1580) - lu(k,1512) * lu(k,1572) + lu(k,1581) = lu(k,1581) - lu(k,1513) * lu(k,1572) + lu(k,1585) = lu(k,1585) - lu(k,1514) * lu(k,1572) + lu(k,1586) = lu(k,1586) - lu(k,1515) * lu(k,1572) + lu(k,1587) = lu(k,1587) - lu(k,1516) * lu(k,1572) + lu(k,1588) = lu(k,1588) - lu(k,1517) * lu(k,1572) + lu(k,1616) = lu(k,1616) - lu(k,1505) * lu(k,1615) + lu(k,1617) = lu(k,1617) - lu(k,1506) * lu(k,1615) + lu(k,1618) = lu(k,1618) - lu(k,1507) * lu(k,1615) + lu(k,1619) = lu(k,1619) - lu(k,1508) * lu(k,1615) + lu(k,1620) = lu(k,1620) - lu(k,1509) * lu(k,1615) + lu(k,1621) = lu(k,1621) - lu(k,1510) * lu(k,1615) + lu(k,1622) = lu(k,1622) - lu(k,1511) * lu(k,1615) + lu(k,1623) = lu(k,1623) - lu(k,1512) * lu(k,1615) + lu(k,1624) = lu(k,1624) - lu(k,1513) * lu(k,1615) + lu(k,1628) = lu(k,1628) - lu(k,1514) * lu(k,1615) + lu(k,1629) = lu(k,1629) - lu(k,1515) * lu(k,1615) + lu(k,1630) = lu(k,1630) - lu(k,1516) * lu(k,1615) + lu(k,1631) = lu(k,1631) - lu(k,1517) * lu(k,1615) + lu(k,1781) = lu(k,1781) - lu(k,1505) * lu(k,1780) + lu(k,1782) = lu(k,1782) - lu(k,1506) * lu(k,1780) + lu(k,1783) = lu(k,1783) - lu(k,1507) * lu(k,1780) + lu(k,1784) = lu(k,1784) - lu(k,1508) * lu(k,1780) + lu(k,1785) = lu(k,1785) - lu(k,1509) * lu(k,1780) + lu(k,1786) = lu(k,1786) - lu(k,1510) * lu(k,1780) + lu(k,1787) = lu(k,1787) - lu(k,1511) * lu(k,1780) + lu(k,1788) = lu(k,1788) - lu(k,1512) * lu(k,1780) + lu(k,1789) = lu(k,1789) - lu(k,1513) * lu(k,1780) + lu(k,1793) = lu(k,1793) - lu(k,1514) * lu(k,1780) + lu(k,1794) = lu(k,1794) - lu(k,1515) * lu(k,1780) + lu(k,1795) = lu(k,1795) - lu(k,1516) * lu(k,1780) + lu(k,1796) = lu(k,1796) - lu(k,1517) * lu(k,1780) + lu(k,1806) = lu(k,1806) - lu(k,1505) * lu(k,1805) + lu(k,1807) = lu(k,1807) - lu(k,1506) * lu(k,1805) + lu(k,1808) = lu(k,1808) - lu(k,1507) * lu(k,1805) + lu(k,1809) = lu(k,1809) - lu(k,1508) * lu(k,1805) + lu(k,1810) = lu(k,1810) - lu(k,1509) * lu(k,1805) + lu(k,1811) = lu(k,1811) - lu(k,1510) * lu(k,1805) + lu(k,1812) = lu(k,1812) - lu(k,1511) * lu(k,1805) + lu(k,1813) = lu(k,1813) - lu(k,1512) * lu(k,1805) + lu(k,1814) = lu(k,1814) - lu(k,1513) * lu(k,1805) + lu(k,1818) = lu(k,1818) - lu(k,1514) * lu(k,1805) + lu(k,1819) = lu(k,1819) - lu(k,1515) * lu(k,1805) + lu(k,1820) = lu(k,1820) - lu(k,1516) * lu(k,1805) + lu(k,1821) = lu(k,1821) - lu(k,1517) * lu(k,1805) + lu(k,1914) = lu(k,1914) - lu(k,1505) * lu(k,1913) + lu(k,1915) = lu(k,1915) - lu(k,1506) * lu(k,1913) + lu(k,1916) = lu(k,1916) - lu(k,1507) * lu(k,1913) + lu(k,1917) = lu(k,1917) - lu(k,1508) * lu(k,1913) + lu(k,1918) = lu(k,1918) - lu(k,1509) * lu(k,1913) + lu(k,1919) = lu(k,1919) - lu(k,1510) * lu(k,1913) + lu(k,1920) = lu(k,1920) - lu(k,1511) * lu(k,1913) + lu(k,1921) = lu(k,1921) - lu(k,1512) * lu(k,1913) + lu(k,1922) = lu(k,1922) - lu(k,1513) * lu(k,1913) + lu(k,1926) = lu(k,1926) - lu(k,1514) * lu(k,1913) + lu(k,1927) = lu(k,1927) - lu(k,1515) * lu(k,1913) + lu(k,1928) = lu(k,1928) - lu(k,1516) * lu(k,1913) + lu(k,1929) = lu(k,1929) - lu(k,1517) * lu(k,1913) + lu(k,1979) = lu(k,1979) - lu(k,1505) * lu(k,1978) + lu(k,1980) = lu(k,1980) - lu(k,1506) * lu(k,1978) + lu(k,1981) = lu(k,1981) - lu(k,1507) * lu(k,1978) + lu(k,1982) = lu(k,1982) - lu(k,1508) * lu(k,1978) + lu(k,1983) = lu(k,1983) - lu(k,1509) * lu(k,1978) + lu(k,1984) = lu(k,1984) - lu(k,1510) * lu(k,1978) + lu(k,1985) = lu(k,1985) - lu(k,1511) * lu(k,1978) + lu(k,1986) = lu(k,1986) - lu(k,1512) * lu(k,1978) + lu(k,1987) = lu(k,1987) - lu(k,1513) * lu(k,1978) + lu(k,1991) = lu(k,1991) - lu(k,1514) * lu(k,1978) + lu(k,1992) = lu(k,1992) - lu(k,1515) * lu(k,1978) + lu(k,1993) = lu(k,1993) - lu(k,1516) * lu(k,1978) + lu(k,1994) = lu(k,1994) - lu(k,1517) * lu(k,1978) + lu(k,2013) = lu(k,2013) - lu(k,1505) * lu(k,2012) + lu(k,2014) = lu(k,2014) - lu(k,1506) * lu(k,2012) + lu(k,2015) = lu(k,2015) - lu(k,1507) * lu(k,2012) + lu(k,2016) = lu(k,2016) - lu(k,1508) * lu(k,2012) + lu(k,2017) = lu(k,2017) - lu(k,1509) * lu(k,2012) + lu(k,2018) = lu(k,2018) - lu(k,1510) * lu(k,2012) + lu(k,2019) = lu(k,2019) - lu(k,1511) * lu(k,2012) + lu(k,2020) = lu(k,2020) - lu(k,1512) * lu(k,2012) + lu(k,2021) = lu(k,2021) - lu(k,1513) * lu(k,2012) + lu(k,2025) = lu(k,2025) - lu(k,1514) * lu(k,2012) + lu(k,2026) = lu(k,2026) - lu(k,1515) * lu(k,2012) + lu(k,2027) = lu(k,2027) - lu(k,1516) * lu(k,2012) + lu(k,2028) = lu(k,2028) - lu(k,1517) * lu(k,2012) + lu(k,2033) = lu(k,2033) - lu(k,1505) * lu(k,2032) + lu(k,2034) = lu(k,2034) - lu(k,1506) * lu(k,2032) + lu(k,2035) = lu(k,2035) - lu(k,1507) * lu(k,2032) + lu(k,2036) = lu(k,2036) - lu(k,1508) * lu(k,2032) + lu(k,2037) = - lu(k,1509) * lu(k,2032) + lu(k,2038) = lu(k,2038) - lu(k,1510) * lu(k,2032) + lu(k,2039) = lu(k,2039) - lu(k,1511) * lu(k,2032) + lu(k,2040) = lu(k,2040) - lu(k,1512) * lu(k,2032) + lu(k,2041) = lu(k,2041) - lu(k,1513) * lu(k,2032) + lu(k,2045) = lu(k,2045) - lu(k,1514) * lu(k,2032) + lu(k,2046) = - lu(k,1515) * lu(k,2032) + lu(k,2047) = - lu(k,1516) * lu(k,2032) + lu(k,2048) = lu(k,2048) - lu(k,1517) * lu(k,2032) + lu(k,2057) = lu(k,2057) - lu(k,1505) * lu(k,2056) + lu(k,2058) = lu(k,2058) - lu(k,1506) * lu(k,2056) + lu(k,2059) = lu(k,2059) - lu(k,1507) * lu(k,2056) + lu(k,2060) = lu(k,2060) - lu(k,1508) * lu(k,2056) + lu(k,2061) = lu(k,2061) - lu(k,1509) * lu(k,2056) + lu(k,2062) = lu(k,2062) - lu(k,1510) * lu(k,2056) + lu(k,2063) = lu(k,2063) - lu(k,1511) * lu(k,2056) + lu(k,2064) = lu(k,2064) - lu(k,1512) * lu(k,2056) + lu(k,2065) = lu(k,2065) - lu(k,1513) * lu(k,2056) + lu(k,2069) = lu(k,2069) - lu(k,1514) * lu(k,2056) + lu(k,2070) = lu(k,2070) - lu(k,1515) * lu(k,2056) + lu(k,2071) = - lu(k,1516) * lu(k,2056) + lu(k,2072) = lu(k,2072) - lu(k,1517) * lu(k,2056) + lu(k,2118) = lu(k,2118) - lu(k,1505) * lu(k,2117) + lu(k,2119) = lu(k,2119) - lu(k,1506) * lu(k,2117) + lu(k,2120) = lu(k,2120) - lu(k,1507) * lu(k,2117) + lu(k,2121) = lu(k,2121) - lu(k,1508) * lu(k,2117) + lu(k,2122) = lu(k,2122) - lu(k,1509) * lu(k,2117) + lu(k,2123) = lu(k,2123) - lu(k,1510) * lu(k,2117) + lu(k,2124) = lu(k,2124) - lu(k,1511) * lu(k,2117) + lu(k,2125) = lu(k,2125) - lu(k,1512) * lu(k,2117) + lu(k,2126) = lu(k,2126) - lu(k,1513) * lu(k,2117) + lu(k,2130) = lu(k,2130) - lu(k,1514) * lu(k,2117) + lu(k,2131) = lu(k,2131) - lu(k,1515) * lu(k,2117) + lu(k,2132) = lu(k,2132) - lu(k,1516) * lu(k,2117) + lu(k,2133) = lu(k,2133) - lu(k,1517) * lu(k,2117) + lu(k,2171) = lu(k,2171) - lu(k,1505) * lu(k,2170) + lu(k,2172) = lu(k,2172) - lu(k,1506) * lu(k,2170) + lu(k,2173) = lu(k,2173) - lu(k,1507) * lu(k,2170) + lu(k,2174) = lu(k,2174) - lu(k,1508) * lu(k,2170) + lu(k,2175) = - lu(k,1509) * lu(k,2170) + lu(k,2176) = lu(k,2176) - lu(k,1510) * lu(k,2170) + lu(k,2177) = lu(k,2177) - lu(k,1511) * lu(k,2170) + lu(k,2178) = lu(k,2178) - lu(k,1512) * lu(k,2170) + lu(k,2179) = lu(k,2179) - lu(k,1513) * lu(k,2170) + lu(k,2183) = lu(k,2183) - lu(k,1514) * lu(k,2170) + lu(k,2184) = lu(k,2184) - lu(k,1515) * lu(k,2170) + lu(k,2185) = lu(k,2185) - lu(k,1516) * lu(k,2170) + lu(k,2186) = lu(k,2186) - lu(k,1517) * lu(k,2170) + lu(k,2212) = lu(k,2212) - lu(k,1505) * lu(k,2211) + lu(k,2213) = lu(k,2213) - lu(k,1506) * lu(k,2211) + lu(k,2214) = lu(k,2214) - lu(k,1507) * lu(k,2211) + lu(k,2215) = lu(k,2215) - lu(k,1508) * lu(k,2211) + lu(k,2216) = lu(k,2216) - lu(k,1509) * lu(k,2211) + lu(k,2217) = lu(k,2217) - lu(k,1510) * lu(k,2211) + lu(k,2218) = lu(k,2218) - lu(k,1511) * lu(k,2211) + lu(k,2219) = lu(k,2219) - lu(k,1512) * lu(k,2211) + lu(k,2220) = lu(k,2220) - lu(k,1513) * lu(k,2211) + lu(k,2224) = lu(k,2224) - lu(k,1514) * lu(k,2211) + lu(k,2225) = lu(k,2225) - lu(k,1515) * lu(k,2211) + lu(k,2226) = lu(k,2226) - lu(k,1516) * lu(k,2211) + lu(k,2227) = lu(k,2227) - lu(k,1517) * lu(k,2211) + lu(k,2239) = lu(k,2239) - lu(k,1505) * lu(k,2238) + lu(k,2240) = lu(k,2240) - lu(k,1506) * lu(k,2238) + lu(k,2241) = lu(k,2241) - lu(k,1507) * lu(k,2238) + lu(k,2242) = lu(k,2242) - lu(k,1508) * lu(k,2238) + lu(k,2243) = lu(k,2243) - lu(k,1509) * lu(k,2238) + lu(k,2244) = lu(k,2244) - lu(k,1510) * lu(k,2238) + lu(k,2245) = lu(k,2245) - lu(k,1511) * lu(k,2238) + lu(k,2246) = lu(k,2246) - lu(k,1512) * lu(k,2238) + lu(k,2247) = lu(k,2247) - lu(k,1513) * lu(k,2238) + lu(k,2251) = lu(k,2251) - lu(k,1514) * lu(k,2238) + lu(k,2252) = lu(k,2252) - lu(k,1515) * lu(k,2238) + lu(k,2253) = lu(k,2253) - lu(k,1516) * lu(k,2238) + lu(k,2254) = lu(k,2254) - lu(k,1517) * lu(k,2238) + lu(k,2332) = lu(k,2332) - lu(k,1505) * lu(k,2331) + lu(k,2333) = lu(k,2333) - lu(k,1506) * lu(k,2331) + lu(k,2334) = lu(k,2334) - lu(k,1507) * lu(k,2331) + lu(k,2335) = lu(k,2335) - lu(k,1508) * lu(k,2331) + lu(k,2336) = lu(k,2336) - lu(k,1509) * lu(k,2331) + lu(k,2337) = lu(k,2337) - lu(k,1510) * lu(k,2331) + lu(k,2338) = lu(k,2338) - lu(k,1511) * lu(k,2331) + lu(k,2339) = lu(k,2339) - lu(k,1512) * lu(k,2331) + lu(k,2340) = lu(k,2340) - lu(k,1513) * lu(k,2331) + lu(k,2344) = lu(k,2344) - lu(k,1514) * lu(k,2331) + lu(k,2345) = lu(k,2345) - lu(k,1515) * lu(k,2331) + lu(k,2346) = lu(k,2346) - lu(k,1516) * lu(k,2331) + lu(k,2347) = lu(k,2347) - lu(k,1517) * lu(k,2331) + lu(k,2359) = lu(k,2359) - lu(k,1505) * lu(k,2358) + lu(k,2360) = lu(k,2360) - lu(k,1506) * lu(k,2358) + lu(k,2361) = lu(k,2361) - lu(k,1507) * lu(k,2358) + lu(k,2362) = lu(k,2362) - lu(k,1508) * lu(k,2358) + lu(k,2363) = lu(k,2363) - lu(k,1509) * lu(k,2358) + lu(k,2364) = lu(k,2364) - lu(k,1510) * lu(k,2358) + lu(k,2365) = lu(k,2365) - lu(k,1511) * lu(k,2358) + lu(k,2366) = lu(k,2366) - lu(k,1512) * lu(k,2358) + lu(k,2367) = lu(k,2367) - lu(k,1513) * lu(k,2358) + lu(k,2371) = lu(k,2371) - lu(k,1514) * lu(k,2358) + lu(k,2372) = lu(k,2372) - lu(k,1515) * lu(k,2358) + lu(k,2373) = lu(k,2373) - lu(k,1516) * lu(k,2358) + lu(k,2374) = lu(k,2374) - lu(k,1517) * lu(k,2358) + lu(k,1528) = 1._r8 / lu(k,1528) + lu(k,1529) = lu(k,1529) * lu(k,1528) + lu(k,1530) = lu(k,1530) * lu(k,1528) + lu(k,1531) = lu(k,1531) * lu(k,1528) + lu(k,1532) = lu(k,1532) * lu(k,1528) + lu(k,1533) = lu(k,1533) * lu(k,1528) + lu(k,1534) = lu(k,1534) * lu(k,1528) + lu(k,1535) = lu(k,1535) * lu(k,1528) + lu(k,1536) = lu(k,1536) * lu(k,1528) + lu(k,1537) = lu(k,1537) * lu(k,1528) + lu(k,1538) = lu(k,1538) * lu(k,1528) + lu(k,1539) = lu(k,1539) * lu(k,1528) + lu(k,1540) = lu(k,1540) * lu(k,1528) + lu(k,1541) = lu(k,1541) * lu(k,1528) + lu(k,1542) = lu(k,1542) * lu(k,1528) + lu(k,1543) = lu(k,1543) * lu(k,1528) + lu(k,1574) = lu(k,1574) - lu(k,1529) * lu(k,1573) + lu(k,1575) = lu(k,1575) - lu(k,1530) * lu(k,1573) + lu(k,1576) = lu(k,1576) - lu(k,1531) * lu(k,1573) + lu(k,1577) = lu(k,1577) - lu(k,1532) * lu(k,1573) + lu(k,1578) = lu(k,1578) - lu(k,1533) * lu(k,1573) + lu(k,1579) = lu(k,1579) - lu(k,1534) * lu(k,1573) + lu(k,1580) = lu(k,1580) - lu(k,1535) * lu(k,1573) + lu(k,1581) = lu(k,1581) - lu(k,1536) * lu(k,1573) + lu(k,1582) = lu(k,1582) - lu(k,1537) * lu(k,1573) + lu(k,1583) = lu(k,1583) - lu(k,1538) * lu(k,1573) + lu(k,1584) = lu(k,1584) - lu(k,1539) * lu(k,1573) + lu(k,1585) = lu(k,1585) - lu(k,1540) * lu(k,1573) + lu(k,1586) = lu(k,1586) - lu(k,1541) * lu(k,1573) + lu(k,1587) = lu(k,1587) - lu(k,1542) * lu(k,1573) + lu(k,1588) = lu(k,1588) - lu(k,1543) * lu(k,1573) + lu(k,1617) = lu(k,1617) - lu(k,1529) * lu(k,1616) + lu(k,1618) = lu(k,1618) - lu(k,1530) * lu(k,1616) + lu(k,1619) = lu(k,1619) - lu(k,1531) * lu(k,1616) + lu(k,1620) = lu(k,1620) - lu(k,1532) * lu(k,1616) + lu(k,1621) = lu(k,1621) - lu(k,1533) * lu(k,1616) + lu(k,1622) = lu(k,1622) - lu(k,1534) * lu(k,1616) + lu(k,1623) = lu(k,1623) - lu(k,1535) * lu(k,1616) + lu(k,1624) = lu(k,1624) - lu(k,1536) * lu(k,1616) + lu(k,1625) = lu(k,1625) - lu(k,1537) * lu(k,1616) + lu(k,1626) = lu(k,1626) - lu(k,1538) * lu(k,1616) + lu(k,1627) = lu(k,1627) - lu(k,1539) * lu(k,1616) + lu(k,1628) = lu(k,1628) - lu(k,1540) * lu(k,1616) + lu(k,1629) = lu(k,1629) - lu(k,1541) * lu(k,1616) + lu(k,1630) = lu(k,1630) - lu(k,1542) * lu(k,1616) + lu(k,1631) = lu(k,1631) - lu(k,1543) * lu(k,1616) + lu(k,1782) = lu(k,1782) - lu(k,1529) * lu(k,1781) + lu(k,1783) = lu(k,1783) - lu(k,1530) * lu(k,1781) + lu(k,1784) = lu(k,1784) - lu(k,1531) * lu(k,1781) + lu(k,1785) = lu(k,1785) - lu(k,1532) * lu(k,1781) + lu(k,1786) = lu(k,1786) - lu(k,1533) * lu(k,1781) + lu(k,1787) = lu(k,1787) - lu(k,1534) * lu(k,1781) + lu(k,1788) = lu(k,1788) - lu(k,1535) * lu(k,1781) + lu(k,1789) = lu(k,1789) - lu(k,1536) * lu(k,1781) + lu(k,1790) = lu(k,1790) - lu(k,1537) * lu(k,1781) + lu(k,1791) = lu(k,1791) - lu(k,1538) * lu(k,1781) + lu(k,1792) = lu(k,1792) - lu(k,1539) * lu(k,1781) + lu(k,1793) = lu(k,1793) - lu(k,1540) * lu(k,1781) + lu(k,1794) = lu(k,1794) - lu(k,1541) * lu(k,1781) + lu(k,1795) = lu(k,1795) - lu(k,1542) * lu(k,1781) + lu(k,1796) = lu(k,1796) - lu(k,1543) * lu(k,1781) + lu(k,1807) = lu(k,1807) - lu(k,1529) * lu(k,1806) + lu(k,1808) = lu(k,1808) - lu(k,1530) * lu(k,1806) + lu(k,1809) = lu(k,1809) - lu(k,1531) * lu(k,1806) + lu(k,1810) = lu(k,1810) - lu(k,1532) * lu(k,1806) + lu(k,1811) = lu(k,1811) - lu(k,1533) * lu(k,1806) + lu(k,1812) = lu(k,1812) - lu(k,1534) * lu(k,1806) + lu(k,1813) = lu(k,1813) - lu(k,1535) * lu(k,1806) + lu(k,1814) = lu(k,1814) - lu(k,1536) * lu(k,1806) + lu(k,1815) = lu(k,1815) - lu(k,1537) * lu(k,1806) + lu(k,1816) = lu(k,1816) - lu(k,1538) * lu(k,1806) + lu(k,1817) = lu(k,1817) - lu(k,1539) * lu(k,1806) + lu(k,1818) = lu(k,1818) - lu(k,1540) * lu(k,1806) + lu(k,1819) = lu(k,1819) - lu(k,1541) * lu(k,1806) + lu(k,1820) = lu(k,1820) - lu(k,1542) * lu(k,1806) + lu(k,1821) = lu(k,1821) - lu(k,1543) * lu(k,1806) + lu(k,1915) = lu(k,1915) - lu(k,1529) * lu(k,1914) + lu(k,1916) = lu(k,1916) - lu(k,1530) * lu(k,1914) + lu(k,1917) = lu(k,1917) - lu(k,1531) * lu(k,1914) + lu(k,1918) = lu(k,1918) - lu(k,1532) * lu(k,1914) + lu(k,1919) = lu(k,1919) - lu(k,1533) * lu(k,1914) + lu(k,1920) = lu(k,1920) - lu(k,1534) * lu(k,1914) + lu(k,1921) = lu(k,1921) - lu(k,1535) * lu(k,1914) + lu(k,1922) = lu(k,1922) - lu(k,1536) * lu(k,1914) + lu(k,1923) = lu(k,1923) - lu(k,1537) * lu(k,1914) + lu(k,1924) = lu(k,1924) - lu(k,1538) * lu(k,1914) + lu(k,1925) = lu(k,1925) - lu(k,1539) * lu(k,1914) + lu(k,1926) = lu(k,1926) - lu(k,1540) * lu(k,1914) + lu(k,1927) = lu(k,1927) - lu(k,1541) * lu(k,1914) + lu(k,1928) = lu(k,1928) - lu(k,1542) * lu(k,1914) + lu(k,1929) = lu(k,1929) - lu(k,1543) * lu(k,1914) + lu(k,1980) = lu(k,1980) - lu(k,1529) * lu(k,1979) + lu(k,1981) = lu(k,1981) - lu(k,1530) * lu(k,1979) + lu(k,1982) = lu(k,1982) - lu(k,1531) * lu(k,1979) + lu(k,1983) = lu(k,1983) - lu(k,1532) * lu(k,1979) + lu(k,1984) = lu(k,1984) - lu(k,1533) * lu(k,1979) + lu(k,1985) = lu(k,1985) - lu(k,1534) * lu(k,1979) + lu(k,1986) = lu(k,1986) - lu(k,1535) * lu(k,1979) + lu(k,1987) = lu(k,1987) - lu(k,1536) * lu(k,1979) + lu(k,1988) = lu(k,1988) - lu(k,1537) * lu(k,1979) + lu(k,1989) = lu(k,1989) - lu(k,1538) * lu(k,1979) + lu(k,1990) = lu(k,1990) - lu(k,1539) * lu(k,1979) + lu(k,1991) = lu(k,1991) - lu(k,1540) * lu(k,1979) + lu(k,1992) = lu(k,1992) - lu(k,1541) * lu(k,1979) + lu(k,1993) = lu(k,1993) - lu(k,1542) * lu(k,1979) + lu(k,1994) = lu(k,1994) - lu(k,1543) * lu(k,1979) + lu(k,2014) = lu(k,2014) - lu(k,1529) * lu(k,2013) + lu(k,2015) = lu(k,2015) - lu(k,1530) * lu(k,2013) + lu(k,2016) = lu(k,2016) - lu(k,1531) * lu(k,2013) + lu(k,2017) = lu(k,2017) - lu(k,1532) * lu(k,2013) + lu(k,2018) = lu(k,2018) - lu(k,1533) * lu(k,2013) + lu(k,2019) = lu(k,2019) - lu(k,1534) * lu(k,2013) + lu(k,2020) = lu(k,2020) - lu(k,1535) * lu(k,2013) + lu(k,2021) = lu(k,2021) - lu(k,1536) * lu(k,2013) + lu(k,2022) = lu(k,2022) - lu(k,1537) * lu(k,2013) + lu(k,2023) = lu(k,2023) - lu(k,1538) * lu(k,2013) + lu(k,2024) = lu(k,2024) - lu(k,1539) * lu(k,2013) + lu(k,2025) = lu(k,2025) - lu(k,1540) * lu(k,2013) + lu(k,2026) = lu(k,2026) - lu(k,1541) * lu(k,2013) + lu(k,2027) = lu(k,2027) - lu(k,1542) * lu(k,2013) + lu(k,2028) = lu(k,2028) - lu(k,1543) * lu(k,2013) + lu(k,2034) = lu(k,2034) - lu(k,1529) * lu(k,2033) + lu(k,2035) = lu(k,2035) - lu(k,1530) * lu(k,2033) + lu(k,2036) = lu(k,2036) - lu(k,1531) * lu(k,2033) + lu(k,2037) = lu(k,2037) - lu(k,1532) * lu(k,2033) + lu(k,2038) = lu(k,2038) - lu(k,1533) * lu(k,2033) + lu(k,2039) = lu(k,2039) - lu(k,1534) * lu(k,2033) + lu(k,2040) = lu(k,2040) - lu(k,1535) * lu(k,2033) + lu(k,2041) = lu(k,2041) - lu(k,1536) * lu(k,2033) + lu(k,2042) = lu(k,2042) - lu(k,1537) * lu(k,2033) + lu(k,2043) = lu(k,2043) - lu(k,1538) * lu(k,2033) + lu(k,2044) = lu(k,2044) - lu(k,1539) * lu(k,2033) + lu(k,2045) = lu(k,2045) - lu(k,1540) * lu(k,2033) + lu(k,2046) = lu(k,2046) - lu(k,1541) * lu(k,2033) + lu(k,2047) = lu(k,2047) - lu(k,1542) * lu(k,2033) + lu(k,2048) = lu(k,2048) - lu(k,1543) * lu(k,2033) + lu(k,2058) = lu(k,2058) - lu(k,1529) * lu(k,2057) + lu(k,2059) = lu(k,2059) - lu(k,1530) * lu(k,2057) + lu(k,2060) = lu(k,2060) - lu(k,1531) * lu(k,2057) + lu(k,2061) = lu(k,2061) - lu(k,1532) * lu(k,2057) + lu(k,2062) = lu(k,2062) - lu(k,1533) * lu(k,2057) + lu(k,2063) = lu(k,2063) - lu(k,1534) * lu(k,2057) + lu(k,2064) = lu(k,2064) - lu(k,1535) * lu(k,2057) + lu(k,2065) = lu(k,2065) - lu(k,1536) * lu(k,2057) + lu(k,2066) = lu(k,2066) - lu(k,1537) * lu(k,2057) + lu(k,2067) = lu(k,2067) - lu(k,1538) * lu(k,2057) + lu(k,2068) = lu(k,2068) - lu(k,1539) * lu(k,2057) + lu(k,2069) = lu(k,2069) - lu(k,1540) * lu(k,2057) + lu(k,2070) = lu(k,2070) - lu(k,1541) * lu(k,2057) + lu(k,2071) = lu(k,2071) - lu(k,1542) * lu(k,2057) + lu(k,2072) = lu(k,2072) - lu(k,1543) * lu(k,2057) + lu(k,2119) = lu(k,2119) - lu(k,1529) * lu(k,2118) + lu(k,2120) = lu(k,2120) - lu(k,1530) * lu(k,2118) + lu(k,2121) = lu(k,2121) - lu(k,1531) * lu(k,2118) + lu(k,2122) = lu(k,2122) - lu(k,1532) * lu(k,2118) + lu(k,2123) = lu(k,2123) - lu(k,1533) * lu(k,2118) + lu(k,2124) = lu(k,2124) - lu(k,1534) * lu(k,2118) + lu(k,2125) = lu(k,2125) - lu(k,1535) * lu(k,2118) + lu(k,2126) = lu(k,2126) - lu(k,1536) * lu(k,2118) + lu(k,2127) = lu(k,2127) - lu(k,1537) * lu(k,2118) + lu(k,2128) = lu(k,2128) - lu(k,1538) * lu(k,2118) + lu(k,2129) = lu(k,2129) - lu(k,1539) * lu(k,2118) + lu(k,2130) = lu(k,2130) - lu(k,1540) * lu(k,2118) + lu(k,2131) = lu(k,2131) - lu(k,1541) * lu(k,2118) + lu(k,2132) = lu(k,2132) - lu(k,1542) * lu(k,2118) + lu(k,2133) = lu(k,2133) - lu(k,1543) * lu(k,2118) + lu(k,2172) = lu(k,2172) - lu(k,1529) * lu(k,2171) + lu(k,2173) = lu(k,2173) - lu(k,1530) * lu(k,2171) + lu(k,2174) = lu(k,2174) - lu(k,1531) * lu(k,2171) + lu(k,2175) = lu(k,2175) - lu(k,1532) * lu(k,2171) + lu(k,2176) = lu(k,2176) - lu(k,1533) * lu(k,2171) + lu(k,2177) = lu(k,2177) - lu(k,1534) * lu(k,2171) + lu(k,2178) = lu(k,2178) - lu(k,1535) * lu(k,2171) + lu(k,2179) = lu(k,2179) - lu(k,1536) * lu(k,2171) + lu(k,2180) = lu(k,2180) - lu(k,1537) * lu(k,2171) + lu(k,2181) = lu(k,2181) - lu(k,1538) * lu(k,2171) + lu(k,2182) = lu(k,2182) - lu(k,1539) * lu(k,2171) + lu(k,2183) = lu(k,2183) - lu(k,1540) * lu(k,2171) + lu(k,2184) = lu(k,2184) - lu(k,1541) * lu(k,2171) + lu(k,2185) = lu(k,2185) - lu(k,1542) * lu(k,2171) + lu(k,2186) = lu(k,2186) - lu(k,1543) * lu(k,2171) + lu(k,2213) = lu(k,2213) - lu(k,1529) * lu(k,2212) + lu(k,2214) = lu(k,2214) - lu(k,1530) * lu(k,2212) + lu(k,2215) = lu(k,2215) - lu(k,1531) * lu(k,2212) + lu(k,2216) = lu(k,2216) - lu(k,1532) * lu(k,2212) + lu(k,2217) = lu(k,2217) - lu(k,1533) * lu(k,2212) + lu(k,2218) = lu(k,2218) - lu(k,1534) * lu(k,2212) + lu(k,2219) = lu(k,2219) - lu(k,1535) * lu(k,2212) + lu(k,2220) = lu(k,2220) - lu(k,1536) * lu(k,2212) + lu(k,2221) = lu(k,2221) - lu(k,1537) * lu(k,2212) + lu(k,2222) = lu(k,2222) - lu(k,1538) * lu(k,2212) + lu(k,2223) = lu(k,2223) - lu(k,1539) * lu(k,2212) + lu(k,2224) = lu(k,2224) - lu(k,1540) * lu(k,2212) + lu(k,2225) = lu(k,2225) - lu(k,1541) * lu(k,2212) + lu(k,2226) = lu(k,2226) - lu(k,1542) * lu(k,2212) + lu(k,2227) = lu(k,2227) - lu(k,1543) * lu(k,2212) + lu(k,2240) = lu(k,2240) - lu(k,1529) * lu(k,2239) + lu(k,2241) = lu(k,2241) - lu(k,1530) * lu(k,2239) + lu(k,2242) = lu(k,2242) - lu(k,1531) * lu(k,2239) + lu(k,2243) = lu(k,2243) - lu(k,1532) * lu(k,2239) + lu(k,2244) = lu(k,2244) - lu(k,1533) * lu(k,2239) + lu(k,2245) = lu(k,2245) - lu(k,1534) * lu(k,2239) + lu(k,2246) = lu(k,2246) - lu(k,1535) * lu(k,2239) + lu(k,2247) = lu(k,2247) - lu(k,1536) * lu(k,2239) + lu(k,2248) = lu(k,2248) - lu(k,1537) * lu(k,2239) + lu(k,2249) = lu(k,2249) - lu(k,1538) * lu(k,2239) + lu(k,2250) = lu(k,2250) - lu(k,1539) * lu(k,2239) + lu(k,2251) = lu(k,2251) - lu(k,1540) * lu(k,2239) + lu(k,2252) = lu(k,2252) - lu(k,1541) * lu(k,2239) + lu(k,2253) = lu(k,2253) - lu(k,1542) * lu(k,2239) + lu(k,2254) = lu(k,2254) - lu(k,1543) * lu(k,2239) + lu(k,2333) = lu(k,2333) - lu(k,1529) * lu(k,2332) + lu(k,2334) = lu(k,2334) - lu(k,1530) * lu(k,2332) + lu(k,2335) = lu(k,2335) - lu(k,1531) * lu(k,2332) + lu(k,2336) = lu(k,2336) - lu(k,1532) * lu(k,2332) + lu(k,2337) = lu(k,2337) - lu(k,1533) * lu(k,2332) + lu(k,2338) = lu(k,2338) - lu(k,1534) * lu(k,2332) + lu(k,2339) = lu(k,2339) - lu(k,1535) * lu(k,2332) + lu(k,2340) = lu(k,2340) - lu(k,1536) * lu(k,2332) + lu(k,2341) = lu(k,2341) - lu(k,1537) * lu(k,2332) + lu(k,2342) = lu(k,2342) - lu(k,1538) * lu(k,2332) + lu(k,2343) = lu(k,2343) - lu(k,1539) * lu(k,2332) + lu(k,2344) = lu(k,2344) - lu(k,1540) * lu(k,2332) + lu(k,2345) = lu(k,2345) - lu(k,1541) * lu(k,2332) + lu(k,2346) = lu(k,2346) - lu(k,1542) * lu(k,2332) + lu(k,2347) = lu(k,2347) - lu(k,1543) * lu(k,2332) + lu(k,2360) = lu(k,2360) - lu(k,1529) * lu(k,2359) + lu(k,2361) = lu(k,2361) - lu(k,1530) * lu(k,2359) + lu(k,2362) = lu(k,2362) - lu(k,1531) * lu(k,2359) + lu(k,2363) = lu(k,2363) - lu(k,1532) * lu(k,2359) + lu(k,2364) = lu(k,2364) - lu(k,1533) * lu(k,2359) + lu(k,2365) = lu(k,2365) - lu(k,1534) * lu(k,2359) + lu(k,2366) = lu(k,2366) - lu(k,1535) * lu(k,2359) + lu(k,2367) = lu(k,2367) - lu(k,1536) * lu(k,2359) + lu(k,2368) = lu(k,2368) - lu(k,1537) * lu(k,2359) + lu(k,2369) = lu(k,2369) - lu(k,1538) * lu(k,2359) + lu(k,2370) = lu(k,2370) - lu(k,1539) * lu(k,2359) + lu(k,2371) = lu(k,2371) - lu(k,1540) * lu(k,2359) + lu(k,2372) = lu(k,2372) - lu(k,1541) * lu(k,2359) + lu(k,2373) = lu(k,2373) - lu(k,1542) * lu(k,2359) + lu(k,2374) = lu(k,2374) - lu(k,1543) * lu(k,2359) + lu(k,1574) = 1._r8 / lu(k,1574) + lu(k,1575) = lu(k,1575) * lu(k,1574) + lu(k,1576) = lu(k,1576) * lu(k,1574) + lu(k,1577) = lu(k,1577) * lu(k,1574) + lu(k,1578) = lu(k,1578) * lu(k,1574) + lu(k,1579) = lu(k,1579) * lu(k,1574) + lu(k,1580) = lu(k,1580) * lu(k,1574) + lu(k,1581) = lu(k,1581) * lu(k,1574) + lu(k,1582) = lu(k,1582) * lu(k,1574) + lu(k,1583) = lu(k,1583) * lu(k,1574) + lu(k,1584) = lu(k,1584) * lu(k,1574) + lu(k,1585) = lu(k,1585) * lu(k,1574) + lu(k,1586) = lu(k,1586) * lu(k,1574) + lu(k,1587) = lu(k,1587) * lu(k,1574) + lu(k,1588) = lu(k,1588) * lu(k,1574) + lu(k,1618) = lu(k,1618) - lu(k,1575) * lu(k,1617) + lu(k,1619) = lu(k,1619) - lu(k,1576) * lu(k,1617) + lu(k,1620) = lu(k,1620) - lu(k,1577) * lu(k,1617) + lu(k,1621) = lu(k,1621) - lu(k,1578) * lu(k,1617) + lu(k,1622) = lu(k,1622) - lu(k,1579) * lu(k,1617) + lu(k,1623) = lu(k,1623) - lu(k,1580) * lu(k,1617) + lu(k,1624) = lu(k,1624) - lu(k,1581) * lu(k,1617) + lu(k,1625) = lu(k,1625) - lu(k,1582) * lu(k,1617) + lu(k,1626) = lu(k,1626) - lu(k,1583) * lu(k,1617) + lu(k,1627) = lu(k,1627) - lu(k,1584) * lu(k,1617) + lu(k,1628) = lu(k,1628) - lu(k,1585) * lu(k,1617) + lu(k,1629) = lu(k,1629) - lu(k,1586) * lu(k,1617) + lu(k,1630) = lu(k,1630) - lu(k,1587) * lu(k,1617) + lu(k,1631) = lu(k,1631) - lu(k,1588) * lu(k,1617) + lu(k,1783) = lu(k,1783) - lu(k,1575) * lu(k,1782) + lu(k,1784) = lu(k,1784) - lu(k,1576) * lu(k,1782) + lu(k,1785) = lu(k,1785) - lu(k,1577) * lu(k,1782) + lu(k,1786) = lu(k,1786) - lu(k,1578) * lu(k,1782) + lu(k,1787) = lu(k,1787) - lu(k,1579) * lu(k,1782) + lu(k,1788) = lu(k,1788) - lu(k,1580) * lu(k,1782) + lu(k,1789) = lu(k,1789) - lu(k,1581) * lu(k,1782) + lu(k,1790) = lu(k,1790) - lu(k,1582) * lu(k,1782) + lu(k,1791) = lu(k,1791) - lu(k,1583) * lu(k,1782) + lu(k,1792) = lu(k,1792) - lu(k,1584) * lu(k,1782) + lu(k,1793) = lu(k,1793) - lu(k,1585) * lu(k,1782) + lu(k,1794) = lu(k,1794) - lu(k,1586) * lu(k,1782) + lu(k,1795) = lu(k,1795) - lu(k,1587) * lu(k,1782) + lu(k,1796) = lu(k,1796) - lu(k,1588) * lu(k,1782) + lu(k,1808) = lu(k,1808) - lu(k,1575) * lu(k,1807) + lu(k,1809) = lu(k,1809) - lu(k,1576) * lu(k,1807) + lu(k,1810) = lu(k,1810) - lu(k,1577) * lu(k,1807) + lu(k,1811) = lu(k,1811) - lu(k,1578) * lu(k,1807) + lu(k,1812) = lu(k,1812) - lu(k,1579) * lu(k,1807) + lu(k,1813) = lu(k,1813) - lu(k,1580) * lu(k,1807) + lu(k,1814) = lu(k,1814) - lu(k,1581) * lu(k,1807) + lu(k,1815) = lu(k,1815) - lu(k,1582) * lu(k,1807) + lu(k,1816) = lu(k,1816) - lu(k,1583) * lu(k,1807) + lu(k,1817) = lu(k,1817) - lu(k,1584) * lu(k,1807) + lu(k,1818) = lu(k,1818) - lu(k,1585) * lu(k,1807) + lu(k,1819) = lu(k,1819) - lu(k,1586) * lu(k,1807) + lu(k,1820) = lu(k,1820) - lu(k,1587) * lu(k,1807) + lu(k,1821) = lu(k,1821) - lu(k,1588) * lu(k,1807) + lu(k,1916) = lu(k,1916) - lu(k,1575) * lu(k,1915) + lu(k,1917) = lu(k,1917) - lu(k,1576) * lu(k,1915) + lu(k,1918) = lu(k,1918) - lu(k,1577) * lu(k,1915) + lu(k,1919) = lu(k,1919) - lu(k,1578) * lu(k,1915) + lu(k,1920) = lu(k,1920) - lu(k,1579) * lu(k,1915) + lu(k,1921) = lu(k,1921) - lu(k,1580) * lu(k,1915) + lu(k,1922) = lu(k,1922) - lu(k,1581) * lu(k,1915) + lu(k,1923) = lu(k,1923) - lu(k,1582) * lu(k,1915) + lu(k,1924) = lu(k,1924) - lu(k,1583) * lu(k,1915) + lu(k,1925) = lu(k,1925) - lu(k,1584) * lu(k,1915) + lu(k,1926) = lu(k,1926) - lu(k,1585) * lu(k,1915) + lu(k,1927) = lu(k,1927) - lu(k,1586) * lu(k,1915) + lu(k,1928) = lu(k,1928) - lu(k,1587) * lu(k,1915) + lu(k,1929) = lu(k,1929) - lu(k,1588) * lu(k,1915) + lu(k,1981) = lu(k,1981) - lu(k,1575) * lu(k,1980) + lu(k,1982) = lu(k,1982) - lu(k,1576) * lu(k,1980) + lu(k,1983) = lu(k,1983) - lu(k,1577) * lu(k,1980) + lu(k,1984) = lu(k,1984) - lu(k,1578) * lu(k,1980) + lu(k,1985) = lu(k,1985) - lu(k,1579) * lu(k,1980) + lu(k,1986) = lu(k,1986) - lu(k,1580) * lu(k,1980) + lu(k,1987) = lu(k,1987) - lu(k,1581) * lu(k,1980) + lu(k,1988) = lu(k,1988) - lu(k,1582) * lu(k,1980) + lu(k,1989) = lu(k,1989) - lu(k,1583) * lu(k,1980) + lu(k,1990) = lu(k,1990) - lu(k,1584) * lu(k,1980) + lu(k,1991) = lu(k,1991) - lu(k,1585) * lu(k,1980) + lu(k,1992) = lu(k,1992) - lu(k,1586) * lu(k,1980) + lu(k,1993) = lu(k,1993) - lu(k,1587) * lu(k,1980) + lu(k,1994) = lu(k,1994) - lu(k,1588) * lu(k,1980) + lu(k,2015) = lu(k,2015) - lu(k,1575) * lu(k,2014) + lu(k,2016) = lu(k,2016) - lu(k,1576) * lu(k,2014) + lu(k,2017) = lu(k,2017) - lu(k,1577) * lu(k,2014) + lu(k,2018) = lu(k,2018) - lu(k,1578) * lu(k,2014) + lu(k,2019) = lu(k,2019) - lu(k,1579) * lu(k,2014) + lu(k,2020) = lu(k,2020) - lu(k,1580) * lu(k,2014) + lu(k,2021) = lu(k,2021) - lu(k,1581) * lu(k,2014) + lu(k,2022) = lu(k,2022) - lu(k,1582) * lu(k,2014) + lu(k,2023) = lu(k,2023) - lu(k,1583) * lu(k,2014) + lu(k,2024) = lu(k,2024) - lu(k,1584) * lu(k,2014) + lu(k,2025) = lu(k,2025) - lu(k,1585) * lu(k,2014) + lu(k,2026) = lu(k,2026) - lu(k,1586) * lu(k,2014) + lu(k,2027) = lu(k,2027) - lu(k,1587) * lu(k,2014) + lu(k,2028) = lu(k,2028) - lu(k,1588) * lu(k,2014) + lu(k,2035) = lu(k,2035) - lu(k,1575) * lu(k,2034) + lu(k,2036) = lu(k,2036) - lu(k,1576) * lu(k,2034) + lu(k,2037) = lu(k,2037) - lu(k,1577) * lu(k,2034) + lu(k,2038) = lu(k,2038) - lu(k,1578) * lu(k,2034) + lu(k,2039) = lu(k,2039) - lu(k,1579) * lu(k,2034) + lu(k,2040) = lu(k,2040) - lu(k,1580) * lu(k,2034) + lu(k,2041) = lu(k,2041) - lu(k,1581) * lu(k,2034) + lu(k,2042) = lu(k,2042) - lu(k,1582) * lu(k,2034) + lu(k,2043) = lu(k,2043) - lu(k,1583) * lu(k,2034) + lu(k,2044) = lu(k,2044) - lu(k,1584) * lu(k,2034) + lu(k,2045) = lu(k,2045) - lu(k,1585) * lu(k,2034) + lu(k,2046) = lu(k,2046) - lu(k,1586) * lu(k,2034) + lu(k,2047) = lu(k,2047) - lu(k,1587) * lu(k,2034) + lu(k,2048) = lu(k,2048) - lu(k,1588) * lu(k,2034) + lu(k,2059) = lu(k,2059) - lu(k,1575) * lu(k,2058) + lu(k,2060) = lu(k,2060) - lu(k,1576) * lu(k,2058) + lu(k,2061) = lu(k,2061) - lu(k,1577) * lu(k,2058) + lu(k,2062) = lu(k,2062) - lu(k,1578) * lu(k,2058) + lu(k,2063) = lu(k,2063) - lu(k,1579) * lu(k,2058) + lu(k,2064) = lu(k,2064) - lu(k,1580) * lu(k,2058) + lu(k,2065) = lu(k,2065) - lu(k,1581) * lu(k,2058) + lu(k,2066) = lu(k,2066) - lu(k,1582) * lu(k,2058) + lu(k,2067) = lu(k,2067) - lu(k,1583) * lu(k,2058) + lu(k,2068) = lu(k,2068) - lu(k,1584) * lu(k,2058) + lu(k,2069) = lu(k,2069) - lu(k,1585) * lu(k,2058) + lu(k,2070) = lu(k,2070) - lu(k,1586) * lu(k,2058) + lu(k,2071) = lu(k,2071) - lu(k,1587) * lu(k,2058) + lu(k,2072) = lu(k,2072) - lu(k,1588) * lu(k,2058) + lu(k,2120) = lu(k,2120) - lu(k,1575) * lu(k,2119) + lu(k,2121) = lu(k,2121) - lu(k,1576) * lu(k,2119) + lu(k,2122) = lu(k,2122) - lu(k,1577) * lu(k,2119) + lu(k,2123) = lu(k,2123) - lu(k,1578) * lu(k,2119) + lu(k,2124) = lu(k,2124) - lu(k,1579) * lu(k,2119) + lu(k,2125) = lu(k,2125) - lu(k,1580) * lu(k,2119) + lu(k,2126) = lu(k,2126) - lu(k,1581) * lu(k,2119) + lu(k,2127) = lu(k,2127) - lu(k,1582) * lu(k,2119) + lu(k,2128) = lu(k,2128) - lu(k,1583) * lu(k,2119) + lu(k,2129) = lu(k,2129) - lu(k,1584) * lu(k,2119) + lu(k,2130) = lu(k,2130) - lu(k,1585) * lu(k,2119) + lu(k,2131) = lu(k,2131) - lu(k,1586) * lu(k,2119) + lu(k,2132) = lu(k,2132) - lu(k,1587) * lu(k,2119) + lu(k,2133) = lu(k,2133) - lu(k,1588) * lu(k,2119) + lu(k,2173) = lu(k,2173) - lu(k,1575) * lu(k,2172) + lu(k,2174) = lu(k,2174) - lu(k,1576) * lu(k,2172) + lu(k,2175) = lu(k,2175) - lu(k,1577) * lu(k,2172) + lu(k,2176) = lu(k,2176) - lu(k,1578) * lu(k,2172) + lu(k,2177) = lu(k,2177) - lu(k,1579) * lu(k,2172) + lu(k,2178) = lu(k,2178) - lu(k,1580) * lu(k,2172) + lu(k,2179) = lu(k,2179) - lu(k,1581) * lu(k,2172) + lu(k,2180) = lu(k,2180) - lu(k,1582) * lu(k,2172) + lu(k,2181) = lu(k,2181) - lu(k,1583) * lu(k,2172) + lu(k,2182) = lu(k,2182) - lu(k,1584) * lu(k,2172) + lu(k,2183) = lu(k,2183) - lu(k,1585) * lu(k,2172) + lu(k,2184) = lu(k,2184) - lu(k,1586) * lu(k,2172) + lu(k,2185) = lu(k,2185) - lu(k,1587) * lu(k,2172) + lu(k,2186) = lu(k,2186) - lu(k,1588) * lu(k,2172) + lu(k,2214) = lu(k,2214) - lu(k,1575) * lu(k,2213) + lu(k,2215) = lu(k,2215) - lu(k,1576) * lu(k,2213) + lu(k,2216) = lu(k,2216) - lu(k,1577) * lu(k,2213) + lu(k,2217) = lu(k,2217) - lu(k,1578) * lu(k,2213) + lu(k,2218) = lu(k,2218) - lu(k,1579) * lu(k,2213) + lu(k,2219) = lu(k,2219) - lu(k,1580) * lu(k,2213) + lu(k,2220) = lu(k,2220) - lu(k,1581) * lu(k,2213) + lu(k,2221) = lu(k,2221) - lu(k,1582) * lu(k,2213) + lu(k,2222) = lu(k,2222) - lu(k,1583) * lu(k,2213) + lu(k,2223) = lu(k,2223) - lu(k,1584) * lu(k,2213) + lu(k,2224) = lu(k,2224) - lu(k,1585) * lu(k,2213) + lu(k,2225) = lu(k,2225) - lu(k,1586) * lu(k,2213) + lu(k,2226) = lu(k,2226) - lu(k,1587) * lu(k,2213) + lu(k,2227) = lu(k,2227) - lu(k,1588) * lu(k,2213) + lu(k,2241) = lu(k,2241) - lu(k,1575) * lu(k,2240) + lu(k,2242) = lu(k,2242) - lu(k,1576) * lu(k,2240) + lu(k,2243) = lu(k,2243) - lu(k,1577) * lu(k,2240) + lu(k,2244) = lu(k,2244) - lu(k,1578) * lu(k,2240) + lu(k,2245) = lu(k,2245) - lu(k,1579) * lu(k,2240) + lu(k,2246) = lu(k,2246) - lu(k,1580) * lu(k,2240) + lu(k,2247) = lu(k,2247) - lu(k,1581) * lu(k,2240) + lu(k,2248) = lu(k,2248) - lu(k,1582) * lu(k,2240) + lu(k,2249) = lu(k,2249) - lu(k,1583) * lu(k,2240) + lu(k,2250) = lu(k,2250) - lu(k,1584) * lu(k,2240) + lu(k,2251) = lu(k,2251) - lu(k,1585) * lu(k,2240) + lu(k,2252) = lu(k,2252) - lu(k,1586) * lu(k,2240) + lu(k,2253) = lu(k,2253) - lu(k,1587) * lu(k,2240) + lu(k,2254) = lu(k,2254) - lu(k,1588) * lu(k,2240) + lu(k,2334) = lu(k,2334) - lu(k,1575) * lu(k,2333) + lu(k,2335) = lu(k,2335) - lu(k,1576) * lu(k,2333) + lu(k,2336) = lu(k,2336) - lu(k,1577) * lu(k,2333) + lu(k,2337) = lu(k,2337) - lu(k,1578) * lu(k,2333) + lu(k,2338) = lu(k,2338) - lu(k,1579) * lu(k,2333) + lu(k,2339) = lu(k,2339) - lu(k,1580) * lu(k,2333) + lu(k,2340) = lu(k,2340) - lu(k,1581) * lu(k,2333) + lu(k,2341) = lu(k,2341) - lu(k,1582) * lu(k,2333) + lu(k,2342) = lu(k,2342) - lu(k,1583) * lu(k,2333) + lu(k,2343) = lu(k,2343) - lu(k,1584) * lu(k,2333) + lu(k,2344) = lu(k,2344) - lu(k,1585) * lu(k,2333) + lu(k,2345) = lu(k,2345) - lu(k,1586) * lu(k,2333) + lu(k,2346) = lu(k,2346) - lu(k,1587) * lu(k,2333) + lu(k,2347) = lu(k,2347) - lu(k,1588) * lu(k,2333) + lu(k,2361) = lu(k,2361) - lu(k,1575) * lu(k,2360) + lu(k,2362) = lu(k,2362) - lu(k,1576) * lu(k,2360) + lu(k,2363) = lu(k,2363) - lu(k,1577) * lu(k,2360) + lu(k,2364) = lu(k,2364) - lu(k,1578) * lu(k,2360) + lu(k,2365) = lu(k,2365) - lu(k,1579) * lu(k,2360) + lu(k,2366) = lu(k,2366) - lu(k,1580) * lu(k,2360) + lu(k,2367) = lu(k,2367) - lu(k,1581) * lu(k,2360) + lu(k,2368) = lu(k,2368) - lu(k,1582) * lu(k,2360) + lu(k,2369) = lu(k,2369) - lu(k,1583) * lu(k,2360) + lu(k,2370) = lu(k,2370) - lu(k,1584) * lu(k,2360) + lu(k,2371) = lu(k,2371) - lu(k,1585) * lu(k,2360) + lu(k,2372) = lu(k,2372) - lu(k,1586) * lu(k,2360) + lu(k,2373) = lu(k,2373) - lu(k,1587) * lu(k,2360) + lu(k,2374) = lu(k,2374) - lu(k,1588) * lu(k,2360) + end do + end subroutine lu_fac30 + subroutine lu_fac31( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1618) = 1._r8 / lu(k,1618) + lu(k,1619) = lu(k,1619) * lu(k,1618) + lu(k,1620) = lu(k,1620) * lu(k,1618) + lu(k,1621) = lu(k,1621) * lu(k,1618) + lu(k,1622) = lu(k,1622) * lu(k,1618) + lu(k,1623) = lu(k,1623) * lu(k,1618) + lu(k,1624) = lu(k,1624) * lu(k,1618) + lu(k,1625) = lu(k,1625) * lu(k,1618) + lu(k,1626) = lu(k,1626) * lu(k,1618) + lu(k,1627) = lu(k,1627) * lu(k,1618) + lu(k,1628) = lu(k,1628) * lu(k,1618) + lu(k,1629) = lu(k,1629) * lu(k,1618) + lu(k,1630) = lu(k,1630) * lu(k,1618) + lu(k,1631) = lu(k,1631) * lu(k,1618) + lu(k,1784) = lu(k,1784) - lu(k,1619) * lu(k,1783) + lu(k,1785) = lu(k,1785) - lu(k,1620) * lu(k,1783) + lu(k,1786) = lu(k,1786) - lu(k,1621) * lu(k,1783) + lu(k,1787) = lu(k,1787) - lu(k,1622) * lu(k,1783) + lu(k,1788) = lu(k,1788) - lu(k,1623) * lu(k,1783) + lu(k,1789) = lu(k,1789) - lu(k,1624) * lu(k,1783) + lu(k,1790) = lu(k,1790) - lu(k,1625) * lu(k,1783) + lu(k,1791) = lu(k,1791) - lu(k,1626) * lu(k,1783) + lu(k,1792) = lu(k,1792) - lu(k,1627) * lu(k,1783) + lu(k,1793) = lu(k,1793) - lu(k,1628) * lu(k,1783) + lu(k,1794) = lu(k,1794) - lu(k,1629) * lu(k,1783) + lu(k,1795) = lu(k,1795) - lu(k,1630) * lu(k,1783) + lu(k,1796) = lu(k,1796) - lu(k,1631) * lu(k,1783) + lu(k,1809) = lu(k,1809) - lu(k,1619) * lu(k,1808) + lu(k,1810) = lu(k,1810) - lu(k,1620) * lu(k,1808) + lu(k,1811) = lu(k,1811) - lu(k,1621) * lu(k,1808) + lu(k,1812) = lu(k,1812) - lu(k,1622) * lu(k,1808) + lu(k,1813) = lu(k,1813) - lu(k,1623) * lu(k,1808) + lu(k,1814) = lu(k,1814) - lu(k,1624) * lu(k,1808) + lu(k,1815) = lu(k,1815) - lu(k,1625) * lu(k,1808) + lu(k,1816) = lu(k,1816) - lu(k,1626) * lu(k,1808) + lu(k,1817) = lu(k,1817) - lu(k,1627) * lu(k,1808) + lu(k,1818) = lu(k,1818) - lu(k,1628) * lu(k,1808) + lu(k,1819) = lu(k,1819) - lu(k,1629) * lu(k,1808) + lu(k,1820) = lu(k,1820) - lu(k,1630) * lu(k,1808) + lu(k,1821) = lu(k,1821) - lu(k,1631) * lu(k,1808) + lu(k,1917) = lu(k,1917) - lu(k,1619) * lu(k,1916) + lu(k,1918) = lu(k,1918) - lu(k,1620) * lu(k,1916) + lu(k,1919) = lu(k,1919) - lu(k,1621) * lu(k,1916) + lu(k,1920) = lu(k,1920) - lu(k,1622) * lu(k,1916) + lu(k,1921) = lu(k,1921) - lu(k,1623) * lu(k,1916) + lu(k,1922) = lu(k,1922) - lu(k,1624) * lu(k,1916) + lu(k,1923) = lu(k,1923) - lu(k,1625) * lu(k,1916) + lu(k,1924) = lu(k,1924) - lu(k,1626) * lu(k,1916) + lu(k,1925) = lu(k,1925) - lu(k,1627) * lu(k,1916) + lu(k,1926) = lu(k,1926) - lu(k,1628) * lu(k,1916) + lu(k,1927) = lu(k,1927) - lu(k,1629) * lu(k,1916) + lu(k,1928) = lu(k,1928) - lu(k,1630) * lu(k,1916) + lu(k,1929) = lu(k,1929) - lu(k,1631) * lu(k,1916) + lu(k,1982) = lu(k,1982) - lu(k,1619) * lu(k,1981) + lu(k,1983) = lu(k,1983) - lu(k,1620) * lu(k,1981) + lu(k,1984) = lu(k,1984) - lu(k,1621) * lu(k,1981) + lu(k,1985) = lu(k,1985) - lu(k,1622) * lu(k,1981) + lu(k,1986) = lu(k,1986) - lu(k,1623) * lu(k,1981) + lu(k,1987) = lu(k,1987) - lu(k,1624) * lu(k,1981) + lu(k,1988) = lu(k,1988) - lu(k,1625) * lu(k,1981) + lu(k,1989) = lu(k,1989) - lu(k,1626) * lu(k,1981) + lu(k,1990) = lu(k,1990) - lu(k,1627) * lu(k,1981) + lu(k,1991) = lu(k,1991) - lu(k,1628) * lu(k,1981) + lu(k,1992) = lu(k,1992) - lu(k,1629) * lu(k,1981) + lu(k,1993) = lu(k,1993) - lu(k,1630) * lu(k,1981) + lu(k,1994) = lu(k,1994) - lu(k,1631) * lu(k,1981) + lu(k,2016) = lu(k,2016) - lu(k,1619) * lu(k,2015) + lu(k,2017) = lu(k,2017) - lu(k,1620) * lu(k,2015) + lu(k,2018) = lu(k,2018) - lu(k,1621) * lu(k,2015) + lu(k,2019) = lu(k,2019) - lu(k,1622) * lu(k,2015) + lu(k,2020) = lu(k,2020) - lu(k,1623) * lu(k,2015) + lu(k,2021) = lu(k,2021) - lu(k,1624) * lu(k,2015) + lu(k,2022) = lu(k,2022) - lu(k,1625) * lu(k,2015) + lu(k,2023) = lu(k,2023) - lu(k,1626) * lu(k,2015) + lu(k,2024) = lu(k,2024) - lu(k,1627) * lu(k,2015) + lu(k,2025) = lu(k,2025) - lu(k,1628) * lu(k,2015) + lu(k,2026) = lu(k,2026) - lu(k,1629) * lu(k,2015) + lu(k,2027) = lu(k,2027) - lu(k,1630) * lu(k,2015) + lu(k,2028) = lu(k,2028) - lu(k,1631) * lu(k,2015) + lu(k,2036) = lu(k,2036) - lu(k,1619) * lu(k,2035) + lu(k,2037) = lu(k,2037) - lu(k,1620) * lu(k,2035) + lu(k,2038) = lu(k,2038) - lu(k,1621) * lu(k,2035) + lu(k,2039) = lu(k,2039) - lu(k,1622) * lu(k,2035) + lu(k,2040) = lu(k,2040) - lu(k,1623) * lu(k,2035) + lu(k,2041) = lu(k,2041) - lu(k,1624) * lu(k,2035) + lu(k,2042) = lu(k,2042) - lu(k,1625) * lu(k,2035) + lu(k,2043) = lu(k,2043) - lu(k,1626) * lu(k,2035) + lu(k,2044) = lu(k,2044) - lu(k,1627) * lu(k,2035) + lu(k,2045) = lu(k,2045) - lu(k,1628) * lu(k,2035) + lu(k,2046) = lu(k,2046) - lu(k,1629) * lu(k,2035) + lu(k,2047) = lu(k,2047) - lu(k,1630) * lu(k,2035) + lu(k,2048) = lu(k,2048) - lu(k,1631) * lu(k,2035) + lu(k,2060) = lu(k,2060) - lu(k,1619) * lu(k,2059) + lu(k,2061) = lu(k,2061) - lu(k,1620) * lu(k,2059) + lu(k,2062) = lu(k,2062) - lu(k,1621) * lu(k,2059) + lu(k,2063) = lu(k,2063) - lu(k,1622) * lu(k,2059) + lu(k,2064) = lu(k,2064) - lu(k,1623) * lu(k,2059) + lu(k,2065) = lu(k,2065) - lu(k,1624) * lu(k,2059) + lu(k,2066) = lu(k,2066) - lu(k,1625) * lu(k,2059) + lu(k,2067) = lu(k,2067) - lu(k,1626) * lu(k,2059) + lu(k,2068) = lu(k,2068) - lu(k,1627) * lu(k,2059) + lu(k,2069) = lu(k,2069) - lu(k,1628) * lu(k,2059) + lu(k,2070) = lu(k,2070) - lu(k,1629) * lu(k,2059) + lu(k,2071) = lu(k,2071) - lu(k,1630) * lu(k,2059) + lu(k,2072) = lu(k,2072) - lu(k,1631) * lu(k,2059) + lu(k,2121) = lu(k,2121) - lu(k,1619) * lu(k,2120) + lu(k,2122) = lu(k,2122) - lu(k,1620) * lu(k,2120) + lu(k,2123) = lu(k,2123) - lu(k,1621) * lu(k,2120) + lu(k,2124) = lu(k,2124) - lu(k,1622) * lu(k,2120) + lu(k,2125) = lu(k,2125) - lu(k,1623) * lu(k,2120) + lu(k,2126) = lu(k,2126) - lu(k,1624) * lu(k,2120) + lu(k,2127) = lu(k,2127) - lu(k,1625) * lu(k,2120) + lu(k,2128) = lu(k,2128) - lu(k,1626) * lu(k,2120) + lu(k,2129) = lu(k,2129) - lu(k,1627) * lu(k,2120) + lu(k,2130) = lu(k,2130) - lu(k,1628) * lu(k,2120) + lu(k,2131) = lu(k,2131) - lu(k,1629) * lu(k,2120) + lu(k,2132) = lu(k,2132) - lu(k,1630) * lu(k,2120) + lu(k,2133) = lu(k,2133) - lu(k,1631) * lu(k,2120) + lu(k,2174) = lu(k,2174) - lu(k,1619) * lu(k,2173) + lu(k,2175) = lu(k,2175) - lu(k,1620) * lu(k,2173) + lu(k,2176) = lu(k,2176) - lu(k,1621) * lu(k,2173) + lu(k,2177) = lu(k,2177) - lu(k,1622) * lu(k,2173) + lu(k,2178) = lu(k,2178) - lu(k,1623) * lu(k,2173) + lu(k,2179) = lu(k,2179) - lu(k,1624) * lu(k,2173) + lu(k,2180) = lu(k,2180) - lu(k,1625) * lu(k,2173) + lu(k,2181) = lu(k,2181) - lu(k,1626) * lu(k,2173) + lu(k,2182) = lu(k,2182) - lu(k,1627) * lu(k,2173) + lu(k,2183) = lu(k,2183) - lu(k,1628) * lu(k,2173) + lu(k,2184) = lu(k,2184) - lu(k,1629) * lu(k,2173) + lu(k,2185) = lu(k,2185) - lu(k,1630) * lu(k,2173) + lu(k,2186) = lu(k,2186) - lu(k,1631) * lu(k,2173) + lu(k,2215) = lu(k,2215) - lu(k,1619) * lu(k,2214) + lu(k,2216) = lu(k,2216) - lu(k,1620) * lu(k,2214) + lu(k,2217) = lu(k,2217) - lu(k,1621) * lu(k,2214) + lu(k,2218) = lu(k,2218) - lu(k,1622) * lu(k,2214) + lu(k,2219) = lu(k,2219) - lu(k,1623) * lu(k,2214) + lu(k,2220) = lu(k,2220) - lu(k,1624) * lu(k,2214) + lu(k,2221) = lu(k,2221) - lu(k,1625) * lu(k,2214) + lu(k,2222) = lu(k,2222) - lu(k,1626) * lu(k,2214) + lu(k,2223) = lu(k,2223) - lu(k,1627) * lu(k,2214) + lu(k,2224) = lu(k,2224) - lu(k,1628) * lu(k,2214) + lu(k,2225) = lu(k,2225) - lu(k,1629) * lu(k,2214) + lu(k,2226) = lu(k,2226) - lu(k,1630) * lu(k,2214) + lu(k,2227) = lu(k,2227) - lu(k,1631) * lu(k,2214) + lu(k,2242) = lu(k,2242) - lu(k,1619) * lu(k,2241) + lu(k,2243) = lu(k,2243) - lu(k,1620) * lu(k,2241) + lu(k,2244) = lu(k,2244) - lu(k,1621) * lu(k,2241) + lu(k,2245) = lu(k,2245) - lu(k,1622) * lu(k,2241) + lu(k,2246) = lu(k,2246) - lu(k,1623) * lu(k,2241) + lu(k,2247) = lu(k,2247) - lu(k,1624) * lu(k,2241) + lu(k,2248) = lu(k,2248) - lu(k,1625) * lu(k,2241) + lu(k,2249) = lu(k,2249) - lu(k,1626) * lu(k,2241) + lu(k,2250) = lu(k,2250) - lu(k,1627) * lu(k,2241) + lu(k,2251) = lu(k,2251) - lu(k,1628) * lu(k,2241) + lu(k,2252) = lu(k,2252) - lu(k,1629) * lu(k,2241) + lu(k,2253) = lu(k,2253) - lu(k,1630) * lu(k,2241) + lu(k,2254) = lu(k,2254) - lu(k,1631) * lu(k,2241) + lu(k,2335) = lu(k,2335) - lu(k,1619) * lu(k,2334) + lu(k,2336) = lu(k,2336) - lu(k,1620) * lu(k,2334) + lu(k,2337) = lu(k,2337) - lu(k,1621) * lu(k,2334) + lu(k,2338) = lu(k,2338) - lu(k,1622) * lu(k,2334) + lu(k,2339) = lu(k,2339) - lu(k,1623) * lu(k,2334) + lu(k,2340) = lu(k,2340) - lu(k,1624) * lu(k,2334) + lu(k,2341) = lu(k,2341) - lu(k,1625) * lu(k,2334) + lu(k,2342) = lu(k,2342) - lu(k,1626) * lu(k,2334) + lu(k,2343) = lu(k,2343) - lu(k,1627) * lu(k,2334) + lu(k,2344) = lu(k,2344) - lu(k,1628) * lu(k,2334) + lu(k,2345) = lu(k,2345) - lu(k,1629) * lu(k,2334) + lu(k,2346) = lu(k,2346) - lu(k,1630) * lu(k,2334) + lu(k,2347) = lu(k,2347) - lu(k,1631) * lu(k,2334) + lu(k,2362) = lu(k,2362) - lu(k,1619) * lu(k,2361) + lu(k,2363) = lu(k,2363) - lu(k,1620) * lu(k,2361) + lu(k,2364) = lu(k,2364) - lu(k,1621) * lu(k,2361) + lu(k,2365) = lu(k,2365) - lu(k,1622) * lu(k,2361) + lu(k,2366) = lu(k,2366) - lu(k,1623) * lu(k,2361) + lu(k,2367) = lu(k,2367) - lu(k,1624) * lu(k,2361) + lu(k,2368) = lu(k,2368) - lu(k,1625) * lu(k,2361) + lu(k,2369) = lu(k,2369) - lu(k,1626) * lu(k,2361) + lu(k,2370) = lu(k,2370) - lu(k,1627) * lu(k,2361) + lu(k,2371) = lu(k,2371) - lu(k,1628) * lu(k,2361) + lu(k,2372) = lu(k,2372) - lu(k,1629) * lu(k,2361) + lu(k,2373) = lu(k,2373) - lu(k,1630) * lu(k,2361) + lu(k,2374) = lu(k,2374) - lu(k,1631) * lu(k,2361) + lu(k,1784) = 1._r8 / lu(k,1784) + lu(k,1785) = lu(k,1785) * lu(k,1784) + lu(k,1786) = lu(k,1786) * lu(k,1784) + lu(k,1787) = lu(k,1787) * lu(k,1784) + lu(k,1788) = lu(k,1788) * lu(k,1784) + lu(k,1789) = lu(k,1789) * lu(k,1784) + lu(k,1790) = lu(k,1790) * lu(k,1784) + lu(k,1791) = lu(k,1791) * lu(k,1784) + lu(k,1792) = lu(k,1792) * lu(k,1784) + lu(k,1793) = lu(k,1793) * lu(k,1784) + lu(k,1794) = lu(k,1794) * lu(k,1784) + lu(k,1795) = lu(k,1795) * lu(k,1784) + lu(k,1796) = lu(k,1796) * lu(k,1784) + lu(k,1810) = lu(k,1810) - lu(k,1785) * lu(k,1809) + lu(k,1811) = lu(k,1811) - lu(k,1786) * lu(k,1809) + lu(k,1812) = lu(k,1812) - lu(k,1787) * lu(k,1809) + lu(k,1813) = lu(k,1813) - lu(k,1788) * lu(k,1809) + lu(k,1814) = lu(k,1814) - lu(k,1789) * lu(k,1809) + lu(k,1815) = lu(k,1815) - lu(k,1790) * lu(k,1809) + lu(k,1816) = lu(k,1816) - lu(k,1791) * lu(k,1809) + lu(k,1817) = lu(k,1817) - lu(k,1792) * lu(k,1809) + lu(k,1818) = lu(k,1818) - lu(k,1793) * lu(k,1809) + lu(k,1819) = lu(k,1819) - lu(k,1794) * lu(k,1809) + lu(k,1820) = lu(k,1820) - lu(k,1795) * lu(k,1809) + lu(k,1821) = lu(k,1821) - lu(k,1796) * lu(k,1809) + lu(k,1918) = lu(k,1918) - lu(k,1785) * lu(k,1917) + lu(k,1919) = lu(k,1919) - lu(k,1786) * lu(k,1917) + lu(k,1920) = lu(k,1920) - lu(k,1787) * lu(k,1917) + lu(k,1921) = lu(k,1921) - lu(k,1788) * lu(k,1917) + lu(k,1922) = lu(k,1922) - lu(k,1789) * lu(k,1917) + lu(k,1923) = lu(k,1923) - lu(k,1790) * lu(k,1917) + lu(k,1924) = lu(k,1924) - lu(k,1791) * lu(k,1917) + lu(k,1925) = lu(k,1925) - lu(k,1792) * lu(k,1917) + lu(k,1926) = lu(k,1926) - lu(k,1793) * lu(k,1917) + lu(k,1927) = lu(k,1927) - lu(k,1794) * lu(k,1917) + lu(k,1928) = lu(k,1928) - lu(k,1795) * lu(k,1917) + lu(k,1929) = lu(k,1929) - lu(k,1796) * lu(k,1917) + lu(k,1983) = lu(k,1983) - lu(k,1785) * lu(k,1982) + lu(k,1984) = lu(k,1984) - lu(k,1786) * lu(k,1982) + lu(k,1985) = lu(k,1985) - lu(k,1787) * lu(k,1982) + lu(k,1986) = lu(k,1986) - lu(k,1788) * lu(k,1982) + lu(k,1987) = lu(k,1987) - lu(k,1789) * lu(k,1982) + lu(k,1988) = lu(k,1988) - lu(k,1790) * lu(k,1982) + lu(k,1989) = lu(k,1989) - lu(k,1791) * lu(k,1982) + lu(k,1990) = lu(k,1990) - lu(k,1792) * lu(k,1982) + lu(k,1991) = lu(k,1991) - lu(k,1793) * lu(k,1982) + lu(k,1992) = lu(k,1992) - lu(k,1794) * lu(k,1982) + lu(k,1993) = lu(k,1993) - lu(k,1795) * lu(k,1982) + lu(k,1994) = lu(k,1994) - lu(k,1796) * lu(k,1982) + lu(k,2017) = lu(k,2017) - lu(k,1785) * lu(k,2016) + lu(k,2018) = lu(k,2018) - lu(k,1786) * lu(k,2016) + lu(k,2019) = lu(k,2019) - lu(k,1787) * lu(k,2016) + lu(k,2020) = lu(k,2020) - lu(k,1788) * lu(k,2016) + lu(k,2021) = lu(k,2021) - lu(k,1789) * lu(k,2016) + lu(k,2022) = lu(k,2022) - lu(k,1790) * lu(k,2016) + lu(k,2023) = lu(k,2023) - lu(k,1791) * lu(k,2016) + lu(k,2024) = lu(k,2024) - lu(k,1792) * lu(k,2016) + lu(k,2025) = lu(k,2025) - lu(k,1793) * lu(k,2016) + lu(k,2026) = lu(k,2026) - lu(k,1794) * lu(k,2016) + lu(k,2027) = lu(k,2027) - lu(k,1795) * lu(k,2016) + lu(k,2028) = lu(k,2028) - lu(k,1796) * lu(k,2016) + lu(k,2037) = lu(k,2037) - lu(k,1785) * lu(k,2036) + lu(k,2038) = lu(k,2038) - lu(k,1786) * lu(k,2036) + lu(k,2039) = lu(k,2039) - lu(k,1787) * lu(k,2036) + lu(k,2040) = lu(k,2040) - lu(k,1788) * lu(k,2036) + lu(k,2041) = lu(k,2041) - lu(k,1789) * lu(k,2036) + lu(k,2042) = lu(k,2042) - lu(k,1790) * lu(k,2036) + lu(k,2043) = lu(k,2043) - lu(k,1791) * lu(k,2036) + lu(k,2044) = lu(k,2044) - lu(k,1792) * lu(k,2036) + lu(k,2045) = lu(k,2045) - lu(k,1793) * lu(k,2036) + lu(k,2046) = lu(k,2046) - lu(k,1794) * lu(k,2036) + lu(k,2047) = lu(k,2047) - lu(k,1795) * lu(k,2036) + lu(k,2048) = lu(k,2048) - lu(k,1796) * lu(k,2036) + lu(k,2061) = lu(k,2061) - lu(k,1785) * lu(k,2060) + lu(k,2062) = lu(k,2062) - lu(k,1786) * lu(k,2060) + lu(k,2063) = lu(k,2063) - lu(k,1787) * lu(k,2060) + lu(k,2064) = lu(k,2064) - lu(k,1788) * lu(k,2060) + lu(k,2065) = lu(k,2065) - lu(k,1789) * lu(k,2060) + lu(k,2066) = lu(k,2066) - lu(k,1790) * lu(k,2060) + lu(k,2067) = lu(k,2067) - lu(k,1791) * lu(k,2060) + lu(k,2068) = lu(k,2068) - lu(k,1792) * lu(k,2060) + lu(k,2069) = lu(k,2069) - lu(k,1793) * lu(k,2060) + lu(k,2070) = lu(k,2070) - lu(k,1794) * lu(k,2060) + lu(k,2071) = lu(k,2071) - lu(k,1795) * lu(k,2060) + lu(k,2072) = lu(k,2072) - lu(k,1796) * lu(k,2060) + lu(k,2122) = lu(k,2122) - lu(k,1785) * lu(k,2121) + lu(k,2123) = lu(k,2123) - lu(k,1786) * lu(k,2121) + lu(k,2124) = lu(k,2124) - lu(k,1787) * lu(k,2121) + lu(k,2125) = lu(k,2125) - lu(k,1788) * lu(k,2121) + lu(k,2126) = lu(k,2126) - lu(k,1789) * lu(k,2121) + lu(k,2127) = lu(k,2127) - lu(k,1790) * lu(k,2121) + lu(k,2128) = lu(k,2128) - lu(k,1791) * lu(k,2121) + lu(k,2129) = lu(k,2129) - lu(k,1792) * lu(k,2121) + lu(k,2130) = lu(k,2130) - lu(k,1793) * lu(k,2121) + lu(k,2131) = lu(k,2131) - lu(k,1794) * lu(k,2121) + lu(k,2132) = lu(k,2132) - lu(k,1795) * lu(k,2121) + lu(k,2133) = lu(k,2133) - lu(k,1796) * lu(k,2121) + lu(k,2175) = lu(k,2175) - lu(k,1785) * lu(k,2174) + lu(k,2176) = lu(k,2176) - lu(k,1786) * lu(k,2174) + lu(k,2177) = lu(k,2177) - lu(k,1787) * lu(k,2174) + lu(k,2178) = lu(k,2178) - lu(k,1788) * lu(k,2174) + lu(k,2179) = lu(k,2179) - lu(k,1789) * lu(k,2174) + lu(k,2180) = lu(k,2180) - lu(k,1790) * lu(k,2174) + lu(k,2181) = lu(k,2181) - lu(k,1791) * lu(k,2174) + lu(k,2182) = lu(k,2182) - lu(k,1792) * lu(k,2174) + lu(k,2183) = lu(k,2183) - lu(k,1793) * lu(k,2174) + lu(k,2184) = lu(k,2184) - lu(k,1794) * lu(k,2174) + lu(k,2185) = lu(k,2185) - lu(k,1795) * lu(k,2174) + lu(k,2186) = lu(k,2186) - lu(k,1796) * lu(k,2174) + lu(k,2216) = lu(k,2216) - lu(k,1785) * lu(k,2215) + lu(k,2217) = lu(k,2217) - lu(k,1786) * lu(k,2215) + lu(k,2218) = lu(k,2218) - lu(k,1787) * lu(k,2215) + lu(k,2219) = lu(k,2219) - lu(k,1788) * lu(k,2215) + lu(k,2220) = lu(k,2220) - lu(k,1789) * lu(k,2215) + lu(k,2221) = lu(k,2221) - lu(k,1790) * lu(k,2215) + lu(k,2222) = lu(k,2222) - lu(k,1791) * lu(k,2215) + lu(k,2223) = lu(k,2223) - lu(k,1792) * lu(k,2215) + lu(k,2224) = lu(k,2224) - lu(k,1793) * lu(k,2215) + lu(k,2225) = lu(k,2225) - lu(k,1794) * lu(k,2215) + lu(k,2226) = lu(k,2226) - lu(k,1795) * lu(k,2215) + lu(k,2227) = lu(k,2227) - lu(k,1796) * lu(k,2215) + lu(k,2243) = lu(k,2243) - lu(k,1785) * lu(k,2242) + lu(k,2244) = lu(k,2244) - lu(k,1786) * lu(k,2242) + lu(k,2245) = lu(k,2245) - lu(k,1787) * lu(k,2242) + lu(k,2246) = lu(k,2246) - lu(k,1788) * lu(k,2242) + lu(k,2247) = lu(k,2247) - lu(k,1789) * lu(k,2242) + lu(k,2248) = lu(k,2248) - lu(k,1790) * lu(k,2242) + lu(k,2249) = lu(k,2249) - lu(k,1791) * lu(k,2242) + lu(k,2250) = lu(k,2250) - lu(k,1792) * lu(k,2242) + lu(k,2251) = lu(k,2251) - lu(k,1793) * lu(k,2242) + lu(k,2252) = lu(k,2252) - lu(k,1794) * lu(k,2242) + lu(k,2253) = lu(k,2253) - lu(k,1795) * lu(k,2242) + lu(k,2254) = lu(k,2254) - lu(k,1796) * lu(k,2242) + lu(k,2336) = lu(k,2336) - lu(k,1785) * lu(k,2335) + lu(k,2337) = lu(k,2337) - lu(k,1786) * lu(k,2335) + lu(k,2338) = lu(k,2338) - lu(k,1787) * lu(k,2335) + lu(k,2339) = lu(k,2339) - lu(k,1788) * lu(k,2335) + lu(k,2340) = lu(k,2340) - lu(k,1789) * lu(k,2335) + lu(k,2341) = lu(k,2341) - lu(k,1790) * lu(k,2335) + lu(k,2342) = lu(k,2342) - lu(k,1791) * lu(k,2335) + lu(k,2343) = lu(k,2343) - lu(k,1792) * lu(k,2335) + lu(k,2344) = lu(k,2344) - lu(k,1793) * lu(k,2335) + lu(k,2345) = lu(k,2345) - lu(k,1794) * lu(k,2335) + lu(k,2346) = lu(k,2346) - lu(k,1795) * lu(k,2335) + lu(k,2347) = lu(k,2347) - lu(k,1796) * lu(k,2335) + lu(k,2363) = lu(k,2363) - lu(k,1785) * lu(k,2362) + lu(k,2364) = lu(k,2364) - lu(k,1786) * lu(k,2362) + lu(k,2365) = lu(k,2365) - lu(k,1787) * lu(k,2362) + lu(k,2366) = lu(k,2366) - lu(k,1788) * lu(k,2362) + lu(k,2367) = lu(k,2367) - lu(k,1789) * lu(k,2362) + lu(k,2368) = lu(k,2368) - lu(k,1790) * lu(k,2362) + lu(k,2369) = lu(k,2369) - lu(k,1791) * lu(k,2362) + lu(k,2370) = lu(k,2370) - lu(k,1792) * lu(k,2362) + lu(k,2371) = lu(k,2371) - lu(k,1793) * lu(k,2362) + lu(k,2372) = lu(k,2372) - lu(k,1794) * lu(k,2362) + lu(k,2373) = lu(k,2373) - lu(k,1795) * lu(k,2362) + lu(k,2374) = lu(k,2374) - lu(k,1796) * lu(k,2362) + lu(k,1810) = 1._r8 / lu(k,1810) + lu(k,1811) = lu(k,1811) * lu(k,1810) + lu(k,1812) = lu(k,1812) * lu(k,1810) + lu(k,1813) = lu(k,1813) * lu(k,1810) + lu(k,1814) = lu(k,1814) * lu(k,1810) + lu(k,1815) = lu(k,1815) * lu(k,1810) + lu(k,1816) = lu(k,1816) * lu(k,1810) + lu(k,1817) = lu(k,1817) * lu(k,1810) + lu(k,1818) = lu(k,1818) * lu(k,1810) + lu(k,1819) = lu(k,1819) * lu(k,1810) + lu(k,1820) = lu(k,1820) * lu(k,1810) + lu(k,1821) = lu(k,1821) * lu(k,1810) + lu(k,1919) = lu(k,1919) - lu(k,1811) * lu(k,1918) + lu(k,1920) = lu(k,1920) - lu(k,1812) * lu(k,1918) + lu(k,1921) = lu(k,1921) - lu(k,1813) * lu(k,1918) + lu(k,1922) = lu(k,1922) - lu(k,1814) * lu(k,1918) + lu(k,1923) = lu(k,1923) - lu(k,1815) * lu(k,1918) + lu(k,1924) = lu(k,1924) - lu(k,1816) * lu(k,1918) + lu(k,1925) = lu(k,1925) - lu(k,1817) * lu(k,1918) + lu(k,1926) = lu(k,1926) - lu(k,1818) * lu(k,1918) + lu(k,1927) = lu(k,1927) - lu(k,1819) * lu(k,1918) + lu(k,1928) = lu(k,1928) - lu(k,1820) * lu(k,1918) + lu(k,1929) = lu(k,1929) - lu(k,1821) * lu(k,1918) + lu(k,1984) = lu(k,1984) - lu(k,1811) * lu(k,1983) + lu(k,1985) = lu(k,1985) - lu(k,1812) * lu(k,1983) + lu(k,1986) = lu(k,1986) - lu(k,1813) * lu(k,1983) + lu(k,1987) = lu(k,1987) - lu(k,1814) * lu(k,1983) + lu(k,1988) = lu(k,1988) - lu(k,1815) * lu(k,1983) + lu(k,1989) = lu(k,1989) - lu(k,1816) * lu(k,1983) + lu(k,1990) = lu(k,1990) - lu(k,1817) * lu(k,1983) + lu(k,1991) = lu(k,1991) - lu(k,1818) * lu(k,1983) + lu(k,1992) = lu(k,1992) - lu(k,1819) * lu(k,1983) + lu(k,1993) = lu(k,1993) - lu(k,1820) * lu(k,1983) + lu(k,1994) = lu(k,1994) - lu(k,1821) * lu(k,1983) + lu(k,2018) = lu(k,2018) - lu(k,1811) * lu(k,2017) + lu(k,2019) = lu(k,2019) - lu(k,1812) * lu(k,2017) + lu(k,2020) = lu(k,2020) - lu(k,1813) * lu(k,2017) + lu(k,2021) = lu(k,2021) - lu(k,1814) * lu(k,2017) + lu(k,2022) = lu(k,2022) - lu(k,1815) * lu(k,2017) + lu(k,2023) = lu(k,2023) - lu(k,1816) * lu(k,2017) + lu(k,2024) = lu(k,2024) - lu(k,1817) * lu(k,2017) + lu(k,2025) = lu(k,2025) - lu(k,1818) * lu(k,2017) + lu(k,2026) = lu(k,2026) - lu(k,1819) * lu(k,2017) + lu(k,2027) = lu(k,2027) - lu(k,1820) * lu(k,2017) + lu(k,2028) = lu(k,2028) - lu(k,1821) * lu(k,2017) + lu(k,2038) = lu(k,2038) - lu(k,1811) * lu(k,2037) + lu(k,2039) = lu(k,2039) - lu(k,1812) * lu(k,2037) + lu(k,2040) = lu(k,2040) - lu(k,1813) * lu(k,2037) + lu(k,2041) = lu(k,2041) - lu(k,1814) * lu(k,2037) + lu(k,2042) = lu(k,2042) - lu(k,1815) * lu(k,2037) + lu(k,2043) = lu(k,2043) - lu(k,1816) * lu(k,2037) + lu(k,2044) = lu(k,2044) - lu(k,1817) * lu(k,2037) + lu(k,2045) = lu(k,2045) - lu(k,1818) * lu(k,2037) + lu(k,2046) = lu(k,2046) - lu(k,1819) * lu(k,2037) + lu(k,2047) = lu(k,2047) - lu(k,1820) * lu(k,2037) + lu(k,2048) = lu(k,2048) - lu(k,1821) * lu(k,2037) + lu(k,2062) = lu(k,2062) - lu(k,1811) * lu(k,2061) + lu(k,2063) = lu(k,2063) - lu(k,1812) * lu(k,2061) + lu(k,2064) = lu(k,2064) - lu(k,1813) * lu(k,2061) + lu(k,2065) = lu(k,2065) - lu(k,1814) * lu(k,2061) + lu(k,2066) = lu(k,2066) - lu(k,1815) * lu(k,2061) + lu(k,2067) = lu(k,2067) - lu(k,1816) * lu(k,2061) + lu(k,2068) = lu(k,2068) - lu(k,1817) * lu(k,2061) + lu(k,2069) = lu(k,2069) - lu(k,1818) * lu(k,2061) + lu(k,2070) = lu(k,2070) - lu(k,1819) * lu(k,2061) + lu(k,2071) = lu(k,2071) - lu(k,1820) * lu(k,2061) + lu(k,2072) = lu(k,2072) - lu(k,1821) * lu(k,2061) + lu(k,2123) = lu(k,2123) - lu(k,1811) * lu(k,2122) + lu(k,2124) = lu(k,2124) - lu(k,1812) * lu(k,2122) + lu(k,2125) = lu(k,2125) - lu(k,1813) * lu(k,2122) + lu(k,2126) = lu(k,2126) - lu(k,1814) * lu(k,2122) + lu(k,2127) = lu(k,2127) - lu(k,1815) * lu(k,2122) + lu(k,2128) = lu(k,2128) - lu(k,1816) * lu(k,2122) + lu(k,2129) = lu(k,2129) - lu(k,1817) * lu(k,2122) + lu(k,2130) = lu(k,2130) - lu(k,1818) * lu(k,2122) + lu(k,2131) = lu(k,2131) - lu(k,1819) * lu(k,2122) + lu(k,2132) = lu(k,2132) - lu(k,1820) * lu(k,2122) + lu(k,2133) = lu(k,2133) - lu(k,1821) * lu(k,2122) + lu(k,2176) = lu(k,2176) - lu(k,1811) * lu(k,2175) + lu(k,2177) = lu(k,2177) - lu(k,1812) * lu(k,2175) + lu(k,2178) = lu(k,2178) - lu(k,1813) * lu(k,2175) + lu(k,2179) = lu(k,2179) - lu(k,1814) * lu(k,2175) + lu(k,2180) = lu(k,2180) - lu(k,1815) * lu(k,2175) + lu(k,2181) = lu(k,2181) - lu(k,1816) * lu(k,2175) + lu(k,2182) = lu(k,2182) - lu(k,1817) * lu(k,2175) + lu(k,2183) = lu(k,2183) - lu(k,1818) * lu(k,2175) + lu(k,2184) = lu(k,2184) - lu(k,1819) * lu(k,2175) + lu(k,2185) = lu(k,2185) - lu(k,1820) * lu(k,2175) + lu(k,2186) = lu(k,2186) - lu(k,1821) * lu(k,2175) + lu(k,2217) = lu(k,2217) - lu(k,1811) * lu(k,2216) + lu(k,2218) = lu(k,2218) - lu(k,1812) * lu(k,2216) + lu(k,2219) = lu(k,2219) - lu(k,1813) * lu(k,2216) + lu(k,2220) = lu(k,2220) - lu(k,1814) * lu(k,2216) + lu(k,2221) = lu(k,2221) - lu(k,1815) * lu(k,2216) + lu(k,2222) = lu(k,2222) - lu(k,1816) * lu(k,2216) + lu(k,2223) = lu(k,2223) - lu(k,1817) * lu(k,2216) + lu(k,2224) = lu(k,2224) - lu(k,1818) * lu(k,2216) + lu(k,2225) = lu(k,2225) - lu(k,1819) * lu(k,2216) + lu(k,2226) = lu(k,2226) - lu(k,1820) * lu(k,2216) + lu(k,2227) = lu(k,2227) - lu(k,1821) * lu(k,2216) + lu(k,2244) = lu(k,2244) - lu(k,1811) * lu(k,2243) + lu(k,2245) = lu(k,2245) - lu(k,1812) * lu(k,2243) + lu(k,2246) = lu(k,2246) - lu(k,1813) * lu(k,2243) + lu(k,2247) = lu(k,2247) - lu(k,1814) * lu(k,2243) + lu(k,2248) = lu(k,2248) - lu(k,1815) * lu(k,2243) + lu(k,2249) = lu(k,2249) - lu(k,1816) * lu(k,2243) + lu(k,2250) = lu(k,2250) - lu(k,1817) * lu(k,2243) + lu(k,2251) = lu(k,2251) - lu(k,1818) * lu(k,2243) + lu(k,2252) = lu(k,2252) - lu(k,1819) * lu(k,2243) + lu(k,2253) = lu(k,2253) - lu(k,1820) * lu(k,2243) + lu(k,2254) = lu(k,2254) - lu(k,1821) * lu(k,2243) + lu(k,2337) = lu(k,2337) - lu(k,1811) * lu(k,2336) + lu(k,2338) = lu(k,2338) - lu(k,1812) * lu(k,2336) + lu(k,2339) = lu(k,2339) - lu(k,1813) * lu(k,2336) + lu(k,2340) = lu(k,2340) - lu(k,1814) * lu(k,2336) + lu(k,2341) = lu(k,2341) - lu(k,1815) * lu(k,2336) + lu(k,2342) = lu(k,2342) - lu(k,1816) * lu(k,2336) + lu(k,2343) = lu(k,2343) - lu(k,1817) * lu(k,2336) + lu(k,2344) = lu(k,2344) - lu(k,1818) * lu(k,2336) + lu(k,2345) = lu(k,2345) - lu(k,1819) * lu(k,2336) + lu(k,2346) = lu(k,2346) - lu(k,1820) * lu(k,2336) + lu(k,2347) = lu(k,2347) - lu(k,1821) * lu(k,2336) + lu(k,2364) = lu(k,2364) - lu(k,1811) * lu(k,2363) + lu(k,2365) = lu(k,2365) - lu(k,1812) * lu(k,2363) + lu(k,2366) = lu(k,2366) - lu(k,1813) * lu(k,2363) + lu(k,2367) = lu(k,2367) - lu(k,1814) * lu(k,2363) + lu(k,2368) = lu(k,2368) - lu(k,1815) * lu(k,2363) + lu(k,2369) = lu(k,2369) - lu(k,1816) * lu(k,2363) + lu(k,2370) = lu(k,2370) - lu(k,1817) * lu(k,2363) + lu(k,2371) = lu(k,2371) - lu(k,1818) * lu(k,2363) + lu(k,2372) = lu(k,2372) - lu(k,1819) * lu(k,2363) + lu(k,2373) = lu(k,2373) - lu(k,1820) * lu(k,2363) + lu(k,2374) = lu(k,2374) - lu(k,1821) * lu(k,2363) + lu(k,1919) = 1._r8 / lu(k,1919) + lu(k,1920) = lu(k,1920) * lu(k,1919) + lu(k,1921) = lu(k,1921) * lu(k,1919) + lu(k,1922) = lu(k,1922) * lu(k,1919) + lu(k,1923) = lu(k,1923) * lu(k,1919) + lu(k,1924) = lu(k,1924) * lu(k,1919) + lu(k,1925) = lu(k,1925) * lu(k,1919) + lu(k,1926) = lu(k,1926) * lu(k,1919) + lu(k,1927) = lu(k,1927) * lu(k,1919) + lu(k,1928) = lu(k,1928) * lu(k,1919) + lu(k,1929) = lu(k,1929) * lu(k,1919) + lu(k,1985) = lu(k,1985) - lu(k,1920) * lu(k,1984) + lu(k,1986) = lu(k,1986) - lu(k,1921) * lu(k,1984) + lu(k,1987) = lu(k,1987) - lu(k,1922) * lu(k,1984) + lu(k,1988) = lu(k,1988) - lu(k,1923) * lu(k,1984) + lu(k,1989) = lu(k,1989) - lu(k,1924) * lu(k,1984) + lu(k,1990) = lu(k,1990) - lu(k,1925) * lu(k,1984) + lu(k,1991) = lu(k,1991) - lu(k,1926) * lu(k,1984) + lu(k,1992) = lu(k,1992) - lu(k,1927) * lu(k,1984) + lu(k,1993) = lu(k,1993) - lu(k,1928) * lu(k,1984) + lu(k,1994) = lu(k,1994) - lu(k,1929) * lu(k,1984) + lu(k,2019) = lu(k,2019) - lu(k,1920) * lu(k,2018) + lu(k,2020) = lu(k,2020) - lu(k,1921) * lu(k,2018) + lu(k,2021) = lu(k,2021) - lu(k,1922) * lu(k,2018) + lu(k,2022) = lu(k,2022) - lu(k,1923) * lu(k,2018) + lu(k,2023) = lu(k,2023) - lu(k,1924) * lu(k,2018) + lu(k,2024) = lu(k,2024) - lu(k,1925) * lu(k,2018) + lu(k,2025) = lu(k,2025) - lu(k,1926) * lu(k,2018) + lu(k,2026) = lu(k,2026) - lu(k,1927) * lu(k,2018) + lu(k,2027) = lu(k,2027) - lu(k,1928) * lu(k,2018) + lu(k,2028) = lu(k,2028) - lu(k,1929) * lu(k,2018) + lu(k,2039) = lu(k,2039) - lu(k,1920) * lu(k,2038) + lu(k,2040) = lu(k,2040) - lu(k,1921) * lu(k,2038) + lu(k,2041) = lu(k,2041) - lu(k,1922) * lu(k,2038) + lu(k,2042) = lu(k,2042) - lu(k,1923) * lu(k,2038) + lu(k,2043) = lu(k,2043) - lu(k,1924) * lu(k,2038) + lu(k,2044) = lu(k,2044) - lu(k,1925) * lu(k,2038) + lu(k,2045) = lu(k,2045) - lu(k,1926) * lu(k,2038) + lu(k,2046) = lu(k,2046) - lu(k,1927) * lu(k,2038) + lu(k,2047) = lu(k,2047) - lu(k,1928) * lu(k,2038) + lu(k,2048) = lu(k,2048) - lu(k,1929) * lu(k,2038) + lu(k,2063) = lu(k,2063) - lu(k,1920) * lu(k,2062) + lu(k,2064) = lu(k,2064) - lu(k,1921) * lu(k,2062) + lu(k,2065) = lu(k,2065) - lu(k,1922) * lu(k,2062) + lu(k,2066) = lu(k,2066) - lu(k,1923) * lu(k,2062) + lu(k,2067) = lu(k,2067) - lu(k,1924) * lu(k,2062) + lu(k,2068) = lu(k,2068) - lu(k,1925) * lu(k,2062) + lu(k,2069) = lu(k,2069) - lu(k,1926) * lu(k,2062) + lu(k,2070) = lu(k,2070) - lu(k,1927) * lu(k,2062) + lu(k,2071) = lu(k,2071) - lu(k,1928) * lu(k,2062) + lu(k,2072) = lu(k,2072) - lu(k,1929) * lu(k,2062) + lu(k,2124) = lu(k,2124) - lu(k,1920) * lu(k,2123) + lu(k,2125) = lu(k,2125) - lu(k,1921) * lu(k,2123) + lu(k,2126) = lu(k,2126) - lu(k,1922) * lu(k,2123) + lu(k,2127) = lu(k,2127) - lu(k,1923) * lu(k,2123) + lu(k,2128) = lu(k,2128) - lu(k,1924) * lu(k,2123) + lu(k,2129) = lu(k,2129) - lu(k,1925) * lu(k,2123) + lu(k,2130) = lu(k,2130) - lu(k,1926) * lu(k,2123) + lu(k,2131) = lu(k,2131) - lu(k,1927) * lu(k,2123) + lu(k,2132) = lu(k,2132) - lu(k,1928) * lu(k,2123) + lu(k,2133) = lu(k,2133) - lu(k,1929) * lu(k,2123) + lu(k,2177) = lu(k,2177) - lu(k,1920) * lu(k,2176) + lu(k,2178) = lu(k,2178) - lu(k,1921) * lu(k,2176) + lu(k,2179) = lu(k,2179) - lu(k,1922) * lu(k,2176) + lu(k,2180) = lu(k,2180) - lu(k,1923) * lu(k,2176) + lu(k,2181) = lu(k,2181) - lu(k,1924) * lu(k,2176) + lu(k,2182) = lu(k,2182) - lu(k,1925) * lu(k,2176) + lu(k,2183) = lu(k,2183) - lu(k,1926) * lu(k,2176) + lu(k,2184) = lu(k,2184) - lu(k,1927) * lu(k,2176) + lu(k,2185) = lu(k,2185) - lu(k,1928) * lu(k,2176) + lu(k,2186) = lu(k,2186) - lu(k,1929) * lu(k,2176) + lu(k,2218) = lu(k,2218) - lu(k,1920) * lu(k,2217) + lu(k,2219) = lu(k,2219) - lu(k,1921) * lu(k,2217) + lu(k,2220) = lu(k,2220) - lu(k,1922) * lu(k,2217) + lu(k,2221) = lu(k,2221) - lu(k,1923) * lu(k,2217) + lu(k,2222) = lu(k,2222) - lu(k,1924) * lu(k,2217) + lu(k,2223) = lu(k,2223) - lu(k,1925) * lu(k,2217) + lu(k,2224) = lu(k,2224) - lu(k,1926) * lu(k,2217) + lu(k,2225) = lu(k,2225) - lu(k,1927) * lu(k,2217) + lu(k,2226) = lu(k,2226) - lu(k,1928) * lu(k,2217) + lu(k,2227) = lu(k,2227) - lu(k,1929) * lu(k,2217) + lu(k,2245) = lu(k,2245) - lu(k,1920) * lu(k,2244) + lu(k,2246) = lu(k,2246) - lu(k,1921) * lu(k,2244) + lu(k,2247) = lu(k,2247) - lu(k,1922) * lu(k,2244) + lu(k,2248) = lu(k,2248) - lu(k,1923) * lu(k,2244) + lu(k,2249) = lu(k,2249) - lu(k,1924) * lu(k,2244) + lu(k,2250) = lu(k,2250) - lu(k,1925) * lu(k,2244) + lu(k,2251) = lu(k,2251) - lu(k,1926) * lu(k,2244) + lu(k,2252) = lu(k,2252) - lu(k,1927) * lu(k,2244) + lu(k,2253) = lu(k,2253) - lu(k,1928) * lu(k,2244) + lu(k,2254) = lu(k,2254) - lu(k,1929) * lu(k,2244) + lu(k,2338) = lu(k,2338) - lu(k,1920) * lu(k,2337) + lu(k,2339) = lu(k,2339) - lu(k,1921) * lu(k,2337) + lu(k,2340) = lu(k,2340) - lu(k,1922) * lu(k,2337) + lu(k,2341) = lu(k,2341) - lu(k,1923) * lu(k,2337) + lu(k,2342) = lu(k,2342) - lu(k,1924) * lu(k,2337) + lu(k,2343) = lu(k,2343) - lu(k,1925) * lu(k,2337) + lu(k,2344) = lu(k,2344) - lu(k,1926) * lu(k,2337) + lu(k,2345) = lu(k,2345) - lu(k,1927) * lu(k,2337) + lu(k,2346) = lu(k,2346) - lu(k,1928) * lu(k,2337) + lu(k,2347) = lu(k,2347) - lu(k,1929) * lu(k,2337) + lu(k,2365) = lu(k,2365) - lu(k,1920) * lu(k,2364) + lu(k,2366) = lu(k,2366) - lu(k,1921) * lu(k,2364) + lu(k,2367) = lu(k,2367) - lu(k,1922) * lu(k,2364) + lu(k,2368) = lu(k,2368) - lu(k,1923) * lu(k,2364) + lu(k,2369) = lu(k,2369) - lu(k,1924) * lu(k,2364) + lu(k,2370) = lu(k,2370) - lu(k,1925) * lu(k,2364) + lu(k,2371) = lu(k,2371) - lu(k,1926) * lu(k,2364) + lu(k,2372) = lu(k,2372) - lu(k,1927) * lu(k,2364) + lu(k,2373) = lu(k,2373) - lu(k,1928) * lu(k,2364) + lu(k,2374) = lu(k,2374) - lu(k,1929) * lu(k,2364) + lu(k,1985) = 1._r8 / lu(k,1985) + lu(k,1986) = lu(k,1986) * lu(k,1985) + lu(k,1987) = lu(k,1987) * lu(k,1985) + lu(k,1988) = lu(k,1988) * lu(k,1985) + lu(k,1989) = lu(k,1989) * lu(k,1985) + lu(k,1990) = lu(k,1990) * lu(k,1985) + lu(k,1991) = lu(k,1991) * lu(k,1985) + lu(k,1992) = lu(k,1992) * lu(k,1985) + lu(k,1993) = lu(k,1993) * lu(k,1985) + lu(k,1994) = lu(k,1994) * lu(k,1985) + lu(k,2020) = lu(k,2020) - lu(k,1986) * lu(k,2019) + lu(k,2021) = lu(k,2021) - lu(k,1987) * lu(k,2019) + lu(k,2022) = lu(k,2022) - lu(k,1988) * lu(k,2019) + lu(k,2023) = lu(k,2023) - lu(k,1989) * lu(k,2019) + lu(k,2024) = lu(k,2024) - lu(k,1990) * lu(k,2019) + lu(k,2025) = lu(k,2025) - lu(k,1991) * lu(k,2019) + lu(k,2026) = lu(k,2026) - lu(k,1992) * lu(k,2019) + lu(k,2027) = lu(k,2027) - lu(k,1993) * lu(k,2019) + lu(k,2028) = lu(k,2028) - lu(k,1994) * lu(k,2019) + lu(k,2040) = lu(k,2040) - lu(k,1986) * lu(k,2039) + lu(k,2041) = lu(k,2041) - lu(k,1987) * lu(k,2039) + lu(k,2042) = lu(k,2042) - lu(k,1988) * lu(k,2039) + lu(k,2043) = lu(k,2043) - lu(k,1989) * lu(k,2039) + lu(k,2044) = lu(k,2044) - lu(k,1990) * lu(k,2039) + lu(k,2045) = lu(k,2045) - lu(k,1991) * lu(k,2039) + lu(k,2046) = lu(k,2046) - lu(k,1992) * lu(k,2039) + lu(k,2047) = lu(k,2047) - lu(k,1993) * lu(k,2039) + lu(k,2048) = lu(k,2048) - lu(k,1994) * lu(k,2039) + lu(k,2064) = lu(k,2064) - lu(k,1986) * lu(k,2063) + lu(k,2065) = lu(k,2065) - lu(k,1987) * lu(k,2063) + lu(k,2066) = lu(k,2066) - lu(k,1988) * lu(k,2063) + lu(k,2067) = lu(k,2067) - lu(k,1989) * lu(k,2063) + lu(k,2068) = lu(k,2068) - lu(k,1990) * lu(k,2063) + lu(k,2069) = lu(k,2069) - lu(k,1991) * lu(k,2063) + lu(k,2070) = lu(k,2070) - lu(k,1992) * lu(k,2063) + lu(k,2071) = lu(k,2071) - lu(k,1993) * lu(k,2063) + lu(k,2072) = lu(k,2072) - lu(k,1994) * lu(k,2063) + lu(k,2125) = lu(k,2125) - lu(k,1986) * lu(k,2124) + lu(k,2126) = lu(k,2126) - lu(k,1987) * lu(k,2124) + lu(k,2127) = lu(k,2127) - lu(k,1988) * lu(k,2124) + lu(k,2128) = lu(k,2128) - lu(k,1989) * lu(k,2124) + lu(k,2129) = lu(k,2129) - lu(k,1990) * lu(k,2124) + lu(k,2130) = lu(k,2130) - lu(k,1991) * lu(k,2124) + lu(k,2131) = lu(k,2131) - lu(k,1992) * lu(k,2124) + lu(k,2132) = lu(k,2132) - lu(k,1993) * lu(k,2124) + lu(k,2133) = lu(k,2133) - lu(k,1994) * lu(k,2124) + lu(k,2178) = lu(k,2178) - lu(k,1986) * lu(k,2177) + lu(k,2179) = lu(k,2179) - lu(k,1987) * lu(k,2177) + lu(k,2180) = lu(k,2180) - lu(k,1988) * lu(k,2177) + lu(k,2181) = lu(k,2181) - lu(k,1989) * lu(k,2177) + lu(k,2182) = lu(k,2182) - lu(k,1990) * lu(k,2177) + lu(k,2183) = lu(k,2183) - lu(k,1991) * lu(k,2177) + lu(k,2184) = lu(k,2184) - lu(k,1992) * lu(k,2177) + lu(k,2185) = lu(k,2185) - lu(k,1993) * lu(k,2177) + lu(k,2186) = lu(k,2186) - lu(k,1994) * lu(k,2177) + lu(k,2219) = lu(k,2219) - lu(k,1986) * lu(k,2218) + lu(k,2220) = lu(k,2220) - lu(k,1987) * lu(k,2218) + lu(k,2221) = lu(k,2221) - lu(k,1988) * lu(k,2218) + lu(k,2222) = lu(k,2222) - lu(k,1989) * lu(k,2218) + lu(k,2223) = lu(k,2223) - lu(k,1990) * lu(k,2218) + lu(k,2224) = lu(k,2224) - lu(k,1991) * lu(k,2218) + lu(k,2225) = lu(k,2225) - lu(k,1992) * lu(k,2218) + lu(k,2226) = lu(k,2226) - lu(k,1993) * lu(k,2218) + lu(k,2227) = lu(k,2227) - lu(k,1994) * lu(k,2218) + lu(k,2246) = lu(k,2246) - lu(k,1986) * lu(k,2245) + lu(k,2247) = lu(k,2247) - lu(k,1987) * lu(k,2245) + lu(k,2248) = lu(k,2248) - lu(k,1988) * lu(k,2245) + lu(k,2249) = lu(k,2249) - lu(k,1989) * lu(k,2245) + lu(k,2250) = lu(k,2250) - lu(k,1990) * lu(k,2245) + lu(k,2251) = lu(k,2251) - lu(k,1991) * lu(k,2245) + lu(k,2252) = lu(k,2252) - lu(k,1992) * lu(k,2245) + lu(k,2253) = lu(k,2253) - lu(k,1993) * lu(k,2245) + lu(k,2254) = lu(k,2254) - lu(k,1994) * lu(k,2245) + lu(k,2339) = lu(k,2339) - lu(k,1986) * lu(k,2338) + lu(k,2340) = lu(k,2340) - lu(k,1987) * lu(k,2338) + lu(k,2341) = lu(k,2341) - lu(k,1988) * lu(k,2338) + lu(k,2342) = lu(k,2342) - lu(k,1989) * lu(k,2338) + lu(k,2343) = lu(k,2343) - lu(k,1990) * lu(k,2338) + lu(k,2344) = lu(k,2344) - lu(k,1991) * lu(k,2338) + lu(k,2345) = lu(k,2345) - lu(k,1992) * lu(k,2338) + lu(k,2346) = lu(k,2346) - lu(k,1993) * lu(k,2338) + lu(k,2347) = lu(k,2347) - lu(k,1994) * lu(k,2338) + lu(k,2366) = lu(k,2366) - lu(k,1986) * lu(k,2365) + lu(k,2367) = lu(k,2367) - lu(k,1987) * lu(k,2365) + lu(k,2368) = lu(k,2368) - lu(k,1988) * lu(k,2365) + lu(k,2369) = lu(k,2369) - lu(k,1989) * lu(k,2365) + lu(k,2370) = lu(k,2370) - lu(k,1990) * lu(k,2365) + lu(k,2371) = lu(k,2371) - lu(k,1991) * lu(k,2365) + lu(k,2372) = lu(k,2372) - lu(k,1992) * lu(k,2365) + lu(k,2373) = lu(k,2373) - lu(k,1993) * lu(k,2365) + lu(k,2374) = lu(k,2374) - lu(k,1994) * lu(k,2365) + end do + end subroutine lu_fac31 + subroutine lu_fac32( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,2020) = 1._r8 / lu(k,2020) + lu(k,2021) = lu(k,2021) * lu(k,2020) + lu(k,2022) = lu(k,2022) * lu(k,2020) + lu(k,2023) = lu(k,2023) * lu(k,2020) + lu(k,2024) = lu(k,2024) * lu(k,2020) + lu(k,2025) = lu(k,2025) * lu(k,2020) + lu(k,2026) = lu(k,2026) * lu(k,2020) + lu(k,2027) = lu(k,2027) * lu(k,2020) + lu(k,2028) = lu(k,2028) * lu(k,2020) + lu(k,2041) = lu(k,2041) - lu(k,2021) * lu(k,2040) + lu(k,2042) = lu(k,2042) - lu(k,2022) * lu(k,2040) + lu(k,2043) = lu(k,2043) - lu(k,2023) * lu(k,2040) + lu(k,2044) = lu(k,2044) - lu(k,2024) * lu(k,2040) + lu(k,2045) = lu(k,2045) - lu(k,2025) * lu(k,2040) + lu(k,2046) = lu(k,2046) - lu(k,2026) * lu(k,2040) + lu(k,2047) = lu(k,2047) - lu(k,2027) * lu(k,2040) + lu(k,2048) = lu(k,2048) - lu(k,2028) * lu(k,2040) + lu(k,2065) = lu(k,2065) - lu(k,2021) * lu(k,2064) + lu(k,2066) = lu(k,2066) - lu(k,2022) * lu(k,2064) + lu(k,2067) = lu(k,2067) - lu(k,2023) * lu(k,2064) + lu(k,2068) = lu(k,2068) - lu(k,2024) * lu(k,2064) + lu(k,2069) = lu(k,2069) - lu(k,2025) * lu(k,2064) + lu(k,2070) = lu(k,2070) - lu(k,2026) * lu(k,2064) + lu(k,2071) = lu(k,2071) - lu(k,2027) * lu(k,2064) + lu(k,2072) = lu(k,2072) - lu(k,2028) * lu(k,2064) + lu(k,2126) = lu(k,2126) - lu(k,2021) * lu(k,2125) + lu(k,2127) = lu(k,2127) - lu(k,2022) * lu(k,2125) + lu(k,2128) = lu(k,2128) - lu(k,2023) * lu(k,2125) + lu(k,2129) = lu(k,2129) - lu(k,2024) * lu(k,2125) + lu(k,2130) = lu(k,2130) - lu(k,2025) * lu(k,2125) + lu(k,2131) = lu(k,2131) - lu(k,2026) * lu(k,2125) + lu(k,2132) = lu(k,2132) - lu(k,2027) * lu(k,2125) + lu(k,2133) = lu(k,2133) - lu(k,2028) * lu(k,2125) + lu(k,2179) = lu(k,2179) - lu(k,2021) * lu(k,2178) + lu(k,2180) = lu(k,2180) - lu(k,2022) * lu(k,2178) + lu(k,2181) = lu(k,2181) - lu(k,2023) * lu(k,2178) + lu(k,2182) = lu(k,2182) - lu(k,2024) * lu(k,2178) + lu(k,2183) = lu(k,2183) - lu(k,2025) * lu(k,2178) + lu(k,2184) = lu(k,2184) - lu(k,2026) * lu(k,2178) + lu(k,2185) = lu(k,2185) - lu(k,2027) * lu(k,2178) + lu(k,2186) = lu(k,2186) - lu(k,2028) * lu(k,2178) + lu(k,2220) = lu(k,2220) - lu(k,2021) * lu(k,2219) + lu(k,2221) = lu(k,2221) - lu(k,2022) * lu(k,2219) + lu(k,2222) = lu(k,2222) - lu(k,2023) * lu(k,2219) + lu(k,2223) = lu(k,2223) - lu(k,2024) * lu(k,2219) + lu(k,2224) = lu(k,2224) - lu(k,2025) * lu(k,2219) + lu(k,2225) = lu(k,2225) - lu(k,2026) * lu(k,2219) + lu(k,2226) = lu(k,2226) - lu(k,2027) * lu(k,2219) + lu(k,2227) = lu(k,2227) - lu(k,2028) * lu(k,2219) + lu(k,2247) = lu(k,2247) - lu(k,2021) * lu(k,2246) + lu(k,2248) = lu(k,2248) - lu(k,2022) * lu(k,2246) + lu(k,2249) = lu(k,2249) - lu(k,2023) * lu(k,2246) + lu(k,2250) = lu(k,2250) - lu(k,2024) * lu(k,2246) + lu(k,2251) = lu(k,2251) - lu(k,2025) * lu(k,2246) + lu(k,2252) = lu(k,2252) - lu(k,2026) * lu(k,2246) + lu(k,2253) = lu(k,2253) - lu(k,2027) * lu(k,2246) + lu(k,2254) = lu(k,2254) - lu(k,2028) * lu(k,2246) + lu(k,2340) = lu(k,2340) - lu(k,2021) * lu(k,2339) + lu(k,2341) = lu(k,2341) - lu(k,2022) * lu(k,2339) + lu(k,2342) = lu(k,2342) - lu(k,2023) * lu(k,2339) + lu(k,2343) = lu(k,2343) - lu(k,2024) * lu(k,2339) + lu(k,2344) = lu(k,2344) - lu(k,2025) * lu(k,2339) + lu(k,2345) = lu(k,2345) - lu(k,2026) * lu(k,2339) + lu(k,2346) = lu(k,2346) - lu(k,2027) * lu(k,2339) + lu(k,2347) = lu(k,2347) - lu(k,2028) * lu(k,2339) + lu(k,2367) = lu(k,2367) - lu(k,2021) * lu(k,2366) + lu(k,2368) = lu(k,2368) - lu(k,2022) * lu(k,2366) + lu(k,2369) = lu(k,2369) - lu(k,2023) * lu(k,2366) + lu(k,2370) = lu(k,2370) - lu(k,2024) * lu(k,2366) + lu(k,2371) = lu(k,2371) - lu(k,2025) * lu(k,2366) + lu(k,2372) = lu(k,2372) - lu(k,2026) * lu(k,2366) + lu(k,2373) = lu(k,2373) - lu(k,2027) * lu(k,2366) + lu(k,2374) = lu(k,2374) - lu(k,2028) * lu(k,2366) + lu(k,2041) = 1._r8 / lu(k,2041) + lu(k,2042) = lu(k,2042) * lu(k,2041) + lu(k,2043) = lu(k,2043) * lu(k,2041) + lu(k,2044) = lu(k,2044) * lu(k,2041) + lu(k,2045) = lu(k,2045) * lu(k,2041) + lu(k,2046) = lu(k,2046) * lu(k,2041) + lu(k,2047) = lu(k,2047) * lu(k,2041) + lu(k,2048) = lu(k,2048) * lu(k,2041) + lu(k,2066) = lu(k,2066) - lu(k,2042) * lu(k,2065) + lu(k,2067) = lu(k,2067) - lu(k,2043) * lu(k,2065) + lu(k,2068) = lu(k,2068) - lu(k,2044) * lu(k,2065) + lu(k,2069) = lu(k,2069) - lu(k,2045) * lu(k,2065) + lu(k,2070) = lu(k,2070) - lu(k,2046) * lu(k,2065) + lu(k,2071) = lu(k,2071) - lu(k,2047) * lu(k,2065) + lu(k,2072) = lu(k,2072) - lu(k,2048) * lu(k,2065) + lu(k,2127) = lu(k,2127) - lu(k,2042) * lu(k,2126) + lu(k,2128) = lu(k,2128) - lu(k,2043) * lu(k,2126) + lu(k,2129) = lu(k,2129) - lu(k,2044) * lu(k,2126) + lu(k,2130) = lu(k,2130) - lu(k,2045) * lu(k,2126) + lu(k,2131) = lu(k,2131) - lu(k,2046) * lu(k,2126) + lu(k,2132) = lu(k,2132) - lu(k,2047) * lu(k,2126) + lu(k,2133) = lu(k,2133) - lu(k,2048) * lu(k,2126) + lu(k,2180) = lu(k,2180) - lu(k,2042) * lu(k,2179) + lu(k,2181) = lu(k,2181) - lu(k,2043) * lu(k,2179) + lu(k,2182) = lu(k,2182) - lu(k,2044) * lu(k,2179) + lu(k,2183) = lu(k,2183) - lu(k,2045) * lu(k,2179) + lu(k,2184) = lu(k,2184) - lu(k,2046) * lu(k,2179) + lu(k,2185) = lu(k,2185) - lu(k,2047) * lu(k,2179) + lu(k,2186) = lu(k,2186) - lu(k,2048) * lu(k,2179) + lu(k,2221) = lu(k,2221) - lu(k,2042) * lu(k,2220) + lu(k,2222) = lu(k,2222) - lu(k,2043) * lu(k,2220) + lu(k,2223) = lu(k,2223) - lu(k,2044) * lu(k,2220) + lu(k,2224) = lu(k,2224) - lu(k,2045) * lu(k,2220) + lu(k,2225) = lu(k,2225) - lu(k,2046) * lu(k,2220) + lu(k,2226) = lu(k,2226) - lu(k,2047) * lu(k,2220) + lu(k,2227) = lu(k,2227) - lu(k,2048) * lu(k,2220) + lu(k,2248) = lu(k,2248) - lu(k,2042) * lu(k,2247) + lu(k,2249) = lu(k,2249) - lu(k,2043) * lu(k,2247) + lu(k,2250) = lu(k,2250) - lu(k,2044) * lu(k,2247) + lu(k,2251) = lu(k,2251) - lu(k,2045) * lu(k,2247) + lu(k,2252) = lu(k,2252) - lu(k,2046) * lu(k,2247) + lu(k,2253) = lu(k,2253) - lu(k,2047) * lu(k,2247) + lu(k,2254) = lu(k,2254) - lu(k,2048) * lu(k,2247) + lu(k,2341) = lu(k,2341) - lu(k,2042) * lu(k,2340) + lu(k,2342) = lu(k,2342) - lu(k,2043) * lu(k,2340) + lu(k,2343) = lu(k,2343) - lu(k,2044) * lu(k,2340) + lu(k,2344) = lu(k,2344) - lu(k,2045) * lu(k,2340) + lu(k,2345) = lu(k,2345) - lu(k,2046) * lu(k,2340) + lu(k,2346) = lu(k,2346) - lu(k,2047) * lu(k,2340) + lu(k,2347) = lu(k,2347) - lu(k,2048) * lu(k,2340) + lu(k,2368) = lu(k,2368) - lu(k,2042) * lu(k,2367) + lu(k,2369) = lu(k,2369) - lu(k,2043) * lu(k,2367) + lu(k,2370) = lu(k,2370) - lu(k,2044) * lu(k,2367) + lu(k,2371) = lu(k,2371) - lu(k,2045) * lu(k,2367) + lu(k,2372) = lu(k,2372) - lu(k,2046) * lu(k,2367) + lu(k,2373) = lu(k,2373) - lu(k,2047) * lu(k,2367) + lu(k,2374) = lu(k,2374) - lu(k,2048) * lu(k,2367) + lu(k,2066) = 1._r8 / lu(k,2066) + lu(k,2067) = lu(k,2067) * lu(k,2066) + lu(k,2068) = lu(k,2068) * lu(k,2066) + lu(k,2069) = lu(k,2069) * lu(k,2066) + lu(k,2070) = lu(k,2070) * lu(k,2066) + lu(k,2071) = lu(k,2071) * lu(k,2066) + lu(k,2072) = lu(k,2072) * lu(k,2066) + lu(k,2128) = lu(k,2128) - lu(k,2067) * lu(k,2127) + lu(k,2129) = lu(k,2129) - lu(k,2068) * lu(k,2127) + lu(k,2130) = lu(k,2130) - lu(k,2069) * lu(k,2127) + lu(k,2131) = lu(k,2131) - lu(k,2070) * lu(k,2127) + lu(k,2132) = lu(k,2132) - lu(k,2071) * lu(k,2127) + lu(k,2133) = lu(k,2133) - lu(k,2072) * lu(k,2127) + lu(k,2181) = lu(k,2181) - lu(k,2067) * lu(k,2180) + lu(k,2182) = lu(k,2182) - lu(k,2068) * lu(k,2180) + lu(k,2183) = lu(k,2183) - lu(k,2069) * lu(k,2180) + lu(k,2184) = lu(k,2184) - lu(k,2070) * lu(k,2180) + lu(k,2185) = lu(k,2185) - lu(k,2071) * lu(k,2180) + lu(k,2186) = lu(k,2186) - lu(k,2072) * lu(k,2180) + lu(k,2222) = lu(k,2222) - lu(k,2067) * lu(k,2221) + lu(k,2223) = lu(k,2223) - lu(k,2068) * lu(k,2221) + lu(k,2224) = lu(k,2224) - lu(k,2069) * lu(k,2221) + lu(k,2225) = lu(k,2225) - lu(k,2070) * lu(k,2221) + lu(k,2226) = lu(k,2226) - lu(k,2071) * lu(k,2221) + lu(k,2227) = lu(k,2227) - lu(k,2072) * lu(k,2221) + lu(k,2249) = lu(k,2249) - lu(k,2067) * lu(k,2248) + lu(k,2250) = lu(k,2250) - lu(k,2068) * lu(k,2248) + lu(k,2251) = lu(k,2251) - lu(k,2069) * lu(k,2248) + lu(k,2252) = lu(k,2252) - lu(k,2070) * lu(k,2248) + lu(k,2253) = lu(k,2253) - lu(k,2071) * lu(k,2248) + lu(k,2254) = lu(k,2254) - lu(k,2072) * lu(k,2248) + lu(k,2342) = lu(k,2342) - lu(k,2067) * lu(k,2341) + lu(k,2343) = lu(k,2343) - lu(k,2068) * lu(k,2341) + lu(k,2344) = lu(k,2344) - lu(k,2069) * lu(k,2341) + lu(k,2345) = lu(k,2345) - lu(k,2070) * lu(k,2341) + lu(k,2346) = lu(k,2346) - lu(k,2071) * lu(k,2341) + lu(k,2347) = lu(k,2347) - lu(k,2072) * lu(k,2341) + lu(k,2369) = lu(k,2369) - lu(k,2067) * lu(k,2368) + lu(k,2370) = lu(k,2370) - lu(k,2068) * lu(k,2368) + lu(k,2371) = lu(k,2371) - lu(k,2069) * lu(k,2368) + lu(k,2372) = lu(k,2372) - lu(k,2070) * lu(k,2368) + lu(k,2373) = lu(k,2373) - lu(k,2071) * lu(k,2368) + lu(k,2374) = lu(k,2374) - lu(k,2072) * lu(k,2368) + lu(k,2128) = 1._r8 / lu(k,2128) + lu(k,2129) = lu(k,2129) * lu(k,2128) + lu(k,2130) = lu(k,2130) * lu(k,2128) + lu(k,2131) = lu(k,2131) * lu(k,2128) + lu(k,2132) = lu(k,2132) * lu(k,2128) + lu(k,2133) = lu(k,2133) * lu(k,2128) + lu(k,2182) = lu(k,2182) - lu(k,2129) * lu(k,2181) + lu(k,2183) = lu(k,2183) - lu(k,2130) * lu(k,2181) + lu(k,2184) = lu(k,2184) - lu(k,2131) * lu(k,2181) + lu(k,2185) = lu(k,2185) - lu(k,2132) * lu(k,2181) + lu(k,2186) = lu(k,2186) - lu(k,2133) * lu(k,2181) + lu(k,2223) = lu(k,2223) - lu(k,2129) * lu(k,2222) + lu(k,2224) = lu(k,2224) - lu(k,2130) * lu(k,2222) + lu(k,2225) = lu(k,2225) - lu(k,2131) * lu(k,2222) + lu(k,2226) = lu(k,2226) - lu(k,2132) * lu(k,2222) + lu(k,2227) = lu(k,2227) - lu(k,2133) * lu(k,2222) + lu(k,2250) = lu(k,2250) - lu(k,2129) * lu(k,2249) + lu(k,2251) = lu(k,2251) - lu(k,2130) * lu(k,2249) + lu(k,2252) = lu(k,2252) - lu(k,2131) * lu(k,2249) + lu(k,2253) = lu(k,2253) - lu(k,2132) * lu(k,2249) + lu(k,2254) = lu(k,2254) - lu(k,2133) * lu(k,2249) + lu(k,2343) = lu(k,2343) - lu(k,2129) * lu(k,2342) + lu(k,2344) = lu(k,2344) - lu(k,2130) * lu(k,2342) + lu(k,2345) = lu(k,2345) - lu(k,2131) * lu(k,2342) + lu(k,2346) = lu(k,2346) - lu(k,2132) * lu(k,2342) + lu(k,2347) = lu(k,2347) - lu(k,2133) * lu(k,2342) + lu(k,2370) = lu(k,2370) - lu(k,2129) * lu(k,2369) + lu(k,2371) = lu(k,2371) - lu(k,2130) * lu(k,2369) + lu(k,2372) = lu(k,2372) - lu(k,2131) * lu(k,2369) + lu(k,2373) = lu(k,2373) - lu(k,2132) * lu(k,2369) + lu(k,2374) = lu(k,2374) - lu(k,2133) * lu(k,2369) + lu(k,2182) = 1._r8 / lu(k,2182) + lu(k,2183) = lu(k,2183) * lu(k,2182) + lu(k,2184) = lu(k,2184) * lu(k,2182) + lu(k,2185) = lu(k,2185) * lu(k,2182) + lu(k,2186) = lu(k,2186) * lu(k,2182) + lu(k,2224) = lu(k,2224) - lu(k,2183) * lu(k,2223) + lu(k,2225) = lu(k,2225) - lu(k,2184) * lu(k,2223) + lu(k,2226) = lu(k,2226) - lu(k,2185) * lu(k,2223) + lu(k,2227) = lu(k,2227) - lu(k,2186) * lu(k,2223) + lu(k,2251) = lu(k,2251) - lu(k,2183) * lu(k,2250) + lu(k,2252) = lu(k,2252) - lu(k,2184) * lu(k,2250) + lu(k,2253) = lu(k,2253) - lu(k,2185) * lu(k,2250) + lu(k,2254) = lu(k,2254) - lu(k,2186) * lu(k,2250) + lu(k,2344) = lu(k,2344) - lu(k,2183) * lu(k,2343) + lu(k,2345) = lu(k,2345) - lu(k,2184) * lu(k,2343) + lu(k,2346) = lu(k,2346) - lu(k,2185) * lu(k,2343) + lu(k,2347) = lu(k,2347) - lu(k,2186) * lu(k,2343) + lu(k,2371) = lu(k,2371) - lu(k,2183) * lu(k,2370) + lu(k,2372) = lu(k,2372) - lu(k,2184) * lu(k,2370) + lu(k,2373) = lu(k,2373) - lu(k,2185) * lu(k,2370) + lu(k,2374) = lu(k,2374) - lu(k,2186) * lu(k,2370) + lu(k,2224) = 1._r8 / lu(k,2224) + lu(k,2225) = lu(k,2225) * lu(k,2224) + lu(k,2226) = lu(k,2226) * lu(k,2224) + lu(k,2227) = lu(k,2227) * lu(k,2224) + lu(k,2252) = lu(k,2252) - lu(k,2225) * lu(k,2251) + lu(k,2253) = lu(k,2253) - lu(k,2226) * lu(k,2251) + lu(k,2254) = lu(k,2254) - lu(k,2227) * lu(k,2251) + lu(k,2345) = lu(k,2345) - lu(k,2225) * lu(k,2344) + lu(k,2346) = lu(k,2346) - lu(k,2226) * lu(k,2344) + lu(k,2347) = lu(k,2347) - lu(k,2227) * lu(k,2344) + lu(k,2372) = lu(k,2372) - lu(k,2225) * lu(k,2371) + lu(k,2373) = lu(k,2373) - lu(k,2226) * lu(k,2371) + lu(k,2374) = lu(k,2374) - lu(k,2227) * lu(k,2371) + lu(k,2252) = 1._r8 / lu(k,2252) + lu(k,2253) = lu(k,2253) * lu(k,2252) + lu(k,2254) = lu(k,2254) * lu(k,2252) + lu(k,2346) = lu(k,2346) - lu(k,2253) * lu(k,2345) + lu(k,2347) = lu(k,2347) - lu(k,2254) * lu(k,2345) + lu(k,2373) = lu(k,2373) - lu(k,2253) * lu(k,2372) + lu(k,2374) = lu(k,2374) - lu(k,2254) * lu(k,2372) + lu(k,2346) = 1._r8 / lu(k,2346) + lu(k,2347) = lu(k,2347) * lu(k,2346) + lu(k,2374) = lu(k,2374) - lu(k,2347) * lu(k,2373) + lu(k,2374) = 1._r8 / lu(k,2374) + end do + end subroutine lu_fac32 + subroutine lu_fac( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) + call lu_fac01( avec_len, lu ) + call lu_fac02( avec_len, lu ) + call lu_fac03( avec_len, lu ) + call lu_fac04( avec_len, lu ) + call lu_fac05( avec_len, lu ) + call lu_fac06( avec_len, lu ) + call lu_fac07( avec_len, lu ) + call lu_fac08( avec_len, lu ) + call lu_fac09( avec_len, lu ) + call lu_fac10( avec_len, lu ) + call lu_fac11( avec_len, lu ) + call lu_fac12( avec_len, lu ) + call lu_fac13( avec_len, lu ) + call lu_fac14( avec_len, lu ) + call lu_fac15( avec_len, lu ) + call lu_fac16( avec_len, lu ) + call lu_fac17( avec_len, lu ) + call lu_fac18( avec_len, lu ) + call lu_fac19( avec_len, lu ) + call lu_fac20( avec_len, lu ) + call lu_fac21( avec_len, lu ) + call lu_fac22( avec_len, lu ) + call lu_fac23( avec_len, lu ) + call lu_fac24( avec_len, lu ) + call lu_fac25( avec_len, lu ) + call lu_fac26( avec_len, lu ) + call lu_fac27( avec_len, lu ) + call lu_fac28( avec_len, lu ) + call lu_fac29( avec_len, lu ) + call lu_fac30( avec_len, lu ) + call lu_fac31( avec_len, lu ) + call lu_fac32( avec_len, lu ) + end subroutine lu_fac + end module mo_lu_factor diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_solve.F90 new file mode 100644 index 0000000000..980863037d --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_lu_solve.F90 @@ -0,0 +1,2646 @@ + module mo_lu_solve + use chem_mods, only: veclen + private + public :: lu_slv + contains + subroutine lu_slv01( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,228) = b(k,228) - lu(k,95) * b(k,53) + b(k,229) = b(k,229) - lu(k,96) * b(k,53) + b(k,219) = b(k,219) - lu(k,98) * b(k,54) + b(k,231) = b(k,231) - lu(k,99) * b(k,54) + b(k,218) = b(k,218) - lu(k,101) * b(k,55) + b(k,228) = b(k,228) - lu(k,102) * b(k,55) + b(k,219) = b(k,219) - lu(k,104) * b(k,56) + b(k,221) = b(k,221) - lu(k,105) * b(k,56) + b(k,87) = b(k,87) - lu(k,107) * b(k,57) + b(k,212) = b(k,212) - lu(k,108) * b(k,57) + b(k,218) = b(k,218) - lu(k,109) * b(k,57) + b(k,170) = b(k,170) - lu(k,111) * b(k,58) + b(k,219) = b(k,219) - lu(k,112) * b(k,58) + b(k,231) = b(k,231) - lu(k,113) * b(k,58) + b(k,91) = b(k,91) - lu(k,115) * b(k,59) + b(k,218) = b(k,218) - lu(k,116) * b(k,59) + b(k,228) = b(k,228) - lu(k,117) * b(k,59) + b(k,87) = b(k,87) - lu(k,119) * b(k,60) + b(k,218) = b(k,218) - lu(k,120) * b(k,60) + b(k,228) = b(k,228) - lu(k,121) * b(k,60) + b(k,87) = b(k,87) - lu(k,123) * b(k,61) + b(k,218) = b(k,218) - lu(k,124) * b(k,61) + b(k,228) = b(k,228) - lu(k,125) * b(k,61) + b(k,219) = b(k,219) - lu(k,127) * b(k,62) + b(k,228) = b(k,228) - lu(k,128) * b(k,62) + b(k,231) = b(k,231) - lu(k,129) * b(k,62) + b(k,128) = b(k,128) - lu(k,131) * b(k,63) + b(k,219) = b(k,219) - lu(k,132) * b(k,63) + b(k,94) = b(k,94) - lu(k,134) * b(k,64) + b(k,231) = b(k,231) - lu(k,135) * b(k,64) + b(k,200) = b(k,200) - lu(k,137) * b(k,65) + b(k,219) = b(k,219) - lu(k,138) * b(k,65) + b(k,137) = b(k,137) - lu(k,140) * b(k,66) + b(k,217) = b(k,217) - lu(k,141) * b(k,66) + b(k,87) = b(k,87) - lu(k,143) * b(k,67) + b(k,212) = b(k,212) - lu(k,144) * b(k,67) + b(k,218) = b(k,218) - lu(k,145) * b(k,67) + b(k,228) = b(k,228) - lu(k,146) * b(k,67) + b(k,87) = b(k,87) - lu(k,148) * b(k,68) + b(k,178) = b(k,178) - lu(k,149) * b(k,68) + b(k,212) = b(k,212) - lu(k,150) * b(k,68) + b(k,218) = b(k,218) - lu(k,151) * b(k,68) + b(k,87) = b(k,87) - lu(k,153) * b(k,69) + b(k,91) = b(k,91) - lu(k,154) * b(k,69) + b(k,218) = b(k,218) - lu(k,155) * b(k,69) + b(k,228) = b(k,228) - lu(k,156) * b(k,69) + b(k,87) = b(k,87) - lu(k,158) * b(k,70) + b(k,178) = b(k,178) - lu(k,159) * b(k,70) + b(k,218) = b(k,218) - lu(k,160) * b(k,70) + b(k,228) = b(k,228) - lu(k,161) * b(k,70) + b(k,215) = b(k,215) - lu(k,163) * b(k,71) + b(k,215) = b(k,215) - lu(k,166) * b(k,72) + b(k,74) = b(k,74) - lu(k,169) * b(k,73) + b(k,75) = b(k,75) - lu(k,170) * b(k,73) + b(k,134) = b(k,134) - lu(k,171) * b(k,73) + b(k,219) = b(k,219) - lu(k,172) * b(k,73) + b(k,221) = b(k,221) - lu(k,173) * b(k,73) + b(k,129) = b(k,129) - lu(k,175) * b(k,74) + b(k,199) = b(k,199) - lu(k,176) * b(k,74) + b(k,221) = b(k,221) - lu(k,177) * b(k,74) + b(k,126) = b(k,126) - lu(k,179) * b(k,75) + b(k,130) = b(k,130) - lu(k,180) * b(k,75) + b(k,219) = b(k,219) - lu(k,181) * b(k,75) + b(k,221) = b(k,221) - lu(k,182) * b(k,75) + b(k,228) = b(k,228) - lu(k,184) * b(k,76) + b(k,218) = b(k,218) - lu(k,186) * b(k,77) + b(k,219) = b(k,219) - lu(k,187) * b(k,77) + b(k,221) = b(k,221) - lu(k,188) * b(k,77) + b(k,79) = b(k,79) - lu(k,191) * b(k,78) + b(k,80) = b(k,80) - lu(k,192) * b(k,78) + b(k,124) = b(k,124) - lu(k,193) * b(k,78) + b(k,163) = b(k,163) - lu(k,194) * b(k,78) + b(k,219) = b(k,219) - lu(k,195) * b(k,78) + b(k,221) = b(k,221) - lu(k,196) * b(k,78) + b(k,126) = b(k,126) - lu(k,198) * b(k,79) + b(k,130) = b(k,130) - lu(k,199) * b(k,79) + b(k,219) = b(k,219) - lu(k,200) * b(k,79) + b(k,221) = b(k,221) - lu(k,201) * b(k,79) + b(k,199) = b(k,199) - lu(k,203) * b(k,80) + b(k,210) = b(k,210) - lu(k,204) * b(k,80) + b(k,221) = b(k,221) - lu(k,205) * b(k,80) + b(k,200) = b(k,200) - lu(k,207) * b(k,81) + b(k,219) = b(k,219) - lu(k,208) * b(k,81) + b(k,83) = b(k,83) - lu(k,212) * b(k,82) + b(k,124) = b(k,124) - lu(k,213) * b(k,82) + b(k,164) = b(k,164) - lu(k,214) * b(k,82) + b(k,199) = b(k,199) - lu(k,215) * b(k,82) + b(k,210) = b(k,210) - lu(k,216) * b(k,82) + b(k,219) = b(k,219) - lu(k,217) * b(k,82) + b(k,221) = b(k,221) - lu(k,218) * b(k,82) + b(k,130) = b(k,130) - lu(k,220) * b(k,83) + b(k,135) = b(k,135) - lu(k,221) * b(k,83) + b(k,219) = b(k,219) - lu(k,222) * b(k,83) + b(k,221) = b(k,221) - lu(k,223) * b(k,83) + b(k,146) = b(k,146) - lu(k,225) * b(k,84) + b(k,200) = b(k,200) - lu(k,226) * b(k,84) + b(k,219) = b(k,219) - lu(k,227) * b(k,84) + b(k,221) = b(k,221) - lu(k,228) * b(k,84) + b(k,182) = b(k,182) - lu(k,230) * b(k,85) + b(k,219) = b(k,219) - lu(k,231) * b(k,85) + b(k,212) = b(k,212) - lu(k,233) * b(k,86) + b(k,228) = b(k,228) - lu(k,234) * b(k,86) + b(k,178) = b(k,178) - lu(k,236) * b(k,87) + b(k,218) = b(k,218) - lu(k,237) * b(k,87) + b(k,214) = b(k,214) - lu(k,239) * b(k,88) + b(k,217) = b(k,217) - lu(k,240) * b(k,88) + b(k,137) = b(k,137) - lu(k,242) * b(k,89) + b(k,219) = b(k,219) - lu(k,243) * b(k,89) + b(k,91) = b(k,91) - lu(k,245) * b(k,90) + b(k,218) = b(k,218) - lu(k,246) * b(k,90) + b(k,219) = b(k,219) - lu(k,247) * b(k,90) + b(k,228) = b(k,228) - lu(k,248) * b(k,90) + b(k,178) = b(k,178) - lu(k,250) * b(k,91) + b(k,218) = b(k,218) - lu(k,251) * b(k,91) + b(k,228) = b(k,228) - lu(k,252) * b(k,91) + b(k,178) = b(k,178) - lu(k,255) * b(k,92) + b(k,218) = b(k,218) - lu(k,256) * b(k,92) + b(k,219) = b(k,219) - lu(k,257) * b(k,92) + b(k,228) = b(k,228) - lu(k,258) * b(k,92) + b(k,215) = b(k,215) - lu(k,260) * b(k,93) + b(k,218) = b(k,218) - lu(k,261) * b(k,93) + b(k,230) = b(k,230) - lu(k,262) * b(k,93) + b(k,179) = b(k,179) - lu(k,265) * b(k,94) + b(k,223) = b(k,223) - lu(k,266) * b(k,94) + b(k,231) = b(k,231) - lu(k,267) * b(k,94) + b(k,190) = b(k,190) - lu(k,269) * b(k,95) + b(k,219) = b(k,219) - lu(k,270) * b(k,95) + b(k,221) = b(k,221) - lu(k,271) * b(k,95) + b(k,130) = b(k,130) - lu(k,273) * b(k,96) + b(k,151) = b(k,151) - lu(k,274) * b(k,96) + b(k,219) = b(k,219) - lu(k,275) * b(k,96) + b(k,214) = b(k,214) - lu(k,277) * b(k,97) + b(k,217) = b(k,217) - lu(k,278) * b(k,97) + b(k,223) = b(k,223) - lu(k,279) * b(k,97) + b(k,226) = b(k,226) - lu(k,280) * b(k,97) + b(k,230) = b(k,230) - lu(k,281) * b(k,97) + b(k,165) = b(k,165) - lu(k,283) * b(k,98) + b(k,221) = b(k,221) - lu(k,284) * b(k,98) + b(k,178) = b(k,178) - lu(k,286) * b(k,99) + b(k,224) = b(k,224) - lu(k,287) * b(k,99) + b(k,179) = b(k,179) - lu(k,289) * b(k,100) + b(k,214) = b(k,214) - lu(k,290) * b(k,100) + b(k,219) = b(k,219) - lu(k,291) * b(k,100) + b(k,221) = b(k,221) - lu(k,292) * b(k,100) + b(k,226) = b(k,226) - lu(k,293) * b(k,100) + b(k,176) = b(k,176) - lu(k,295) * b(k,101) + b(k,184) = b(k,184) - lu(k,296) * b(k,101) + b(k,199) = b(k,199) - lu(k,297) * b(k,101) + b(k,219) = b(k,219) - lu(k,298) * b(k,101) + b(k,221) = b(k,221) - lu(k,299) * b(k,101) + b(k,175) = b(k,175) - lu(k,301) * b(k,102) + b(k,219) = b(k,219) - lu(k,302) * b(k,102) + b(k,225) = b(k,225) - lu(k,303) * b(k,102) + b(k,228) = b(k,228) - lu(k,304) * b(k,102) + b(k,231) = b(k,231) - lu(k,305) * b(k,102) + b(k,178) = b(k,178) - lu(k,308) * b(k,103) + b(k,218) = b(k,218) - lu(k,309) * b(k,103) + b(k,219) = b(k,219) - lu(k,310) * b(k,103) + b(k,228) = b(k,228) - lu(k,311) * b(k,103) + b(k,231) = b(k,231) - lu(k,312) * b(k,103) + b(k,207) = b(k,207) - lu(k,314) * b(k,104) + b(k,209) = b(k,209) - lu(k,315) * b(k,104) + b(k,219) = b(k,219) - lu(k,316) * b(k,104) + b(k,221) = b(k,221) - lu(k,317) * b(k,104) + b(k,156) = b(k,156) - lu(k,319) * b(k,105) + b(k,190) = b(k,190) - lu(k,320) * b(k,105) + b(k,210) = b(k,210) - lu(k,321) * b(k,105) + b(k,219) = b(k,219) - lu(k,322) * b(k,105) + b(k,199) = b(k,199) - lu(k,324) * b(k,106) + b(k,203) = b(k,203) - lu(k,325) * b(k,106) + b(k,210) = b(k,210) - lu(k,326) * b(k,106) + b(k,221) = b(k,221) - lu(k,327) * b(k,106) + b(k,179) = b(k,179) - lu(k,329) * b(k,107) + b(k,211) = b(k,211) - lu(k,330) * b(k,107) + b(k,223) = b(k,223) - lu(k,331) * b(k,107) + b(k,229) = b(k,229) - lu(k,332) * b(k,107) + b(k,126) = b(k,126) - lu(k,334) * b(k,108) + b(k,184) = b(k,184) - lu(k,335) * b(k,108) + b(k,219) = b(k,219) - lu(k,336) * b(k,108) + b(k,221) = b(k,221) - lu(k,337) * b(k,108) + b(k,124) = b(k,124) - lu(k,340) * b(k,109) + b(k,137) = b(k,137) - lu(k,341) * b(k,109) + b(k,219) = b(k,219) - lu(k,342) * b(k,109) + b(k,221) = b(k,221) - lu(k,343) * b(k,109) + b(k,200) = b(k,200) - lu(k,345) * b(k,110) + b(k,219) = b(k,219) - lu(k,346) * b(k,110) + b(k,175) = b(k,175) - lu(k,348) * b(k,111) + b(k,190) = b(k,190) - lu(k,349) * b(k,111) + b(k,219) = b(k,219) - lu(k,350) * b(k,111) + b(k,221) = b(k,221) - lu(k,351) * b(k,111) + b(k,142) = b(k,142) - lu(k,353) * b(k,112) + b(k,183) = b(k,183) - lu(k,354) * b(k,112) + b(k,190) = b(k,190) - lu(k,355) * b(k,112) + b(k,216) = b(k,216) - lu(k,356) * b(k,112) + b(k,217) = b(k,217) - lu(k,357) * b(k,112) + b(k,219) = b(k,219) - lu(k,358) * b(k,112) + b(k,226) = b(k,226) - lu(k,359) * b(k,112) + b(k,161) = b(k,161) - lu(k,361) * b(k,113) + b(k,179) = b(k,179) - lu(k,362) * b(k,113) + b(k,199) = b(k,199) - lu(k,363) * b(k,113) + b(k,211) = b(k,211) - lu(k,364) * b(k,113) + b(k,219) = b(k,219) - lu(k,365) * b(k,113) + b(k,223) = b(k,223) - lu(k,366) * b(k,113) + b(k,224) = b(k,224) - lu(k,367) * b(k,113) + end do + end subroutine lu_slv01 + subroutine lu_slv02( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,199) = b(k,199) - lu(k,369) * b(k,114) + b(k,219) = b(k,219) - lu(k,370) * b(k,114) + b(k,221) = b(k,221) - lu(k,371) * b(k,114) + b(k,225) = b(k,225) - lu(k,372) * b(k,114) + b(k,227) = b(k,227) - lu(k,373) * b(k,114) + b(k,228) = b(k,228) - lu(k,374) * b(k,114) + b(k,231) = b(k,231) - lu(k,375) * b(k,114) + b(k,184) = b(k,184) - lu(k,377) * b(k,115) + b(k,199) = b(k,199) - lu(k,378) * b(k,115) + b(k,203) = b(k,203) - lu(k,379) * b(k,115) + b(k,210) = b(k,210) - lu(k,380) * b(k,115) + b(k,221) = b(k,221) - lu(k,381) * b(k,115) + b(k,212) = b(k,212) - lu(k,383) * b(k,116) + b(k,218) = b(k,218) - lu(k,384) * b(k,116) + b(k,219) = b(k,219) - lu(k,385) * b(k,116) + b(k,225) = b(k,225) - lu(k,386) * b(k,116) + b(k,228) = b(k,228) - lu(k,387) * b(k,116) + b(k,186) = b(k,186) - lu(k,389) * b(k,117) + b(k,191) = b(k,191) - lu(k,390) * b(k,117) + b(k,214) = b(k,214) - lu(k,391) * b(k,117) + b(k,217) = b(k,217) - lu(k,392) * b(k,117) + b(k,219) = b(k,219) - lu(k,393) * b(k,117) + b(k,198) = b(k,198) - lu(k,395) * b(k,118) + b(k,210) = b(k,210) - lu(k,396) * b(k,118) + b(k,216) = b(k,216) - lu(k,397) * b(k,118) + b(k,219) = b(k,219) - lu(k,398) * b(k,118) + b(k,231) = b(k,231) - lu(k,399) * b(k,118) + b(k,159) = b(k,159) - lu(k,401) * b(k,119) + b(k,174) = b(k,174) - lu(k,402) * b(k,119) + b(k,217) = b(k,217) - lu(k,403) * b(k,119) + b(k,219) = b(k,219) - lu(k,404) * b(k,119) + b(k,221) = b(k,221) - lu(k,405) * b(k,119) + b(k,170) = b(k,170) - lu(k,407) * b(k,120) + b(k,183) = b(k,183) - lu(k,408) * b(k,120) + b(k,219) = b(k,219) - lu(k,409) * b(k,120) + b(k,221) = b(k,221) - lu(k,410) * b(k,120) + b(k,231) = b(k,231) - lu(k,411) * b(k,120) + b(k,129) = b(k,129) - lu(k,413) * b(k,121) + b(k,134) = b(k,134) - lu(k,414) * b(k,121) + b(k,184) = b(k,184) - lu(k,415) * b(k,121) + b(k,219) = b(k,219) - lu(k,416) * b(k,121) + b(k,221) = b(k,221) - lu(k,417) * b(k,121) + b(k,135) = b(k,135) - lu(k,419) * b(k,122) + b(k,184) = b(k,184) - lu(k,420) * b(k,122) + b(k,203) = b(k,203) - lu(k,421) * b(k,122) + b(k,219) = b(k,219) - lu(k,422) * b(k,122) + b(k,221) = b(k,221) - lu(k,423) * b(k,122) + b(k,174) = b(k,174) - lu(k,425) * b(k,123) + b(k,195) = b(k,195) - lu(k,426) * b(k,123) + b(k,214) = b(k,214) - lu(k,427) * b(k,123) + b(k,219) = b(k,219) - lu(k,428) * b(k,123) + b(k,221) = b(k,221) - lu(k,429) * b(k,123) + b(k,137) = b(k,137) - lu(k,433) * b(k,124) + b(k,217) = b(k,217) - lu(k,434) * b(k,124) + b(k,219) = b(k,219) - lu(k,435) * b(k,124) + b(k,221) = b(k,221) - lu(k,436) * b(k,124) + b(k,230) = b(k,230) - lu(k,437) * b(k,124) + b(k,176) = b(k,176) - lu(k,439) * b(k,125) + b(k,216) = b(k,216) - lu(k,440) * b(k,125) + b(k,217) = b(k,217) - lu(k,441) * b(k,125) + b(k,221) = b(k,221) - lu(k,442) * b(k,125) + b(k,230) = b(k,230) - lu(k,443) * b(k,125) + b(k,184) = b(k,184) - lu(k,446) * b(k,126) + b(k,217) = b(k,217) - lu(k,447) * b(k,126) + b(k,219) = b(k,219) - lu(k,448) * b(k,126) + b(k,221) = b(k,221) - lu(k,449) * b(k,126) + b(k,230) = b(k,230) - lu(k,450) * b(k,126) + b(k,216) = b(k,216) - lu(k,452) * b(k,127) + b(k,219) = b(k,219) - lu(k,453) * b(k,127) + b(k,224) = b(k,224) - lu(k,454) * b(k,127) + b(k,227) = b(k,227) - lu(k,455) * b(k,127) + b(k,231) = b(k,231) - lu(k,456) * b(k,127) + b(k,195) = b(k,195) - lu(k,458) * b(k,128) + b(k,215) = b(k,215) - lu(k,459) * b(k,128) + b(k,216) = b(k,216) - lu(k,460) * b(k,128) + b(k,221) = b(k,221) - lu(k,461) * b(k,128) + b(k,162) = b(k,162) - lu(k,463) * b(k,129) + b(k,221) = b(k,221) - lu(k,464) * b(k,129) + b(k,151) = b(k,151) - lu(k,466) * b(k,130) + b(k,217) = b(k,217) - lu(k,467) * b(k,130) + b(k,222) = b(k,222) - lu(k,468) * b(k,130) + b(k,215) = b(k,215) - lu(k,470) * b(k,131) + b(k,217) = b(k,217) - lu(k,471) * b(k,131) + b(k,219) = b(k,219) - lu(k,472) * b(k,131) + b(k,221) = b(k,221) - lu(k,473) * b(k,131) + b(k,226) = b(k,226) - lu(k,474) * b(k,131) + b(k,231) = b(k,231) - lu(k,475) * b(k,131) + b(k,212) = b(k,212) - lu(k,477) * b(k,132) + b(k,218) = b(k,218) - lu(k,478) * b(k,132) + b(k,219) = b(k,219) - lu(k,479) * b(k,132) + b(k,225) = b(k,225) - lu(k,480) * b(k,132) + b(k,228) = b(k,228) - lu(k,481) * b(k,132) + b(k,231) = b(k,231) - lu(k,482) * b(k,132) + b(k,183) = b(k,183) - lu(k,484) * b(k,133) + b(k,186) = b(k,186) - lu(k,485) * b(k,133) + b(k,196) = b(k,196) - lu(k,486) * b(k,133) + b(k,216) = b(k,216) - lu(k,487) * b(k,133) + b(k,219) = b(k,219) - lu(k,488) * b(k,133) + b(k,221) = b(k,221) - lu(k,489) * b(k,133) + b(k,162) = b(k,162) - lu(k,493) * b(k,134) + b(k,184) = b(k,184) - lu(k,494) * b(k,134) + b(k,217) = b(k,217) - lu(k,495) * b(k,134) + b(k,219) = b(k,219) - lu(k,496) * b(k,134) + b(k,221) = b(k,221) - lu(k,497) * b(k,134) + b(k,230) = b(k,230) - lu(k,498) * b(k,134) + b(k,184) = b(k,184) - lu(k,501) * b(k,135) + b(k,203) = b(k,203) - lu(k,502) * b(k,135) + b(k,217) = b(k,217) - lu(k,503) * b(k,135) + b(k,219) = b(k,219) - lu(k,504) * b(k,135) + b(k,221) = b(k,221) - lu(k,505) * b(k,135) + b(k,230) = b(k,230) - lu(k,506) * b(k,135) + b(k,156) = b(k,156) - lu(k,508) * b(k,136) + b(k,175) = b(k,175) - lu(k,509) * b(k,136) + b(k,210) = b(k,210) - lu(k,510) * b(k,136) + b(k,219) = b(k,219) - lu(k,511) * b(k,136) + b(k,151) = b(k,151) - lu(k,514) * b(k,137) + b(k,217) = b(k,217) - lu(k,515) * b(k,137) + b(k,219) = b(k,219) - lu(k,516) * b(k,137) + b(k,221) = b(k,221) - lu(k,517) * b(k,137) + b(k,230) = b(k,230) - lu(k,518) * b(k,137) + b(k,189) = b(k,189) - lu(k,520) * b(k,138) + b(k,210) = b(k,210) - lu(k,521) * b(k,138) + b(k,216) = b(k,216) - lu(k,522) * b(k,138) + b(k,217) = b(k,217) - lu(k,523) * b(k,138) + b(k,219) = b(k,219) - lu(k,524) * b(k,138) + b(k,226) = b(k,226) - lu(k,525) * b(k,138) + b(k,227) = b(k,227) - lu(k,526) * b(k,138) + b(k,168) = b(k,168) - lu(k,528) * b(k,139) + b(k,190) = b(k,190) - lu(k,529) * b(k,139) + b(k,193) = b(k,193) - lu(k,530) * b(k,139) + b(k,216) = b(k,216) - lu(k,531) * b(k,139) + b(k,219) = b(k,219) - lu(k,532) * b(k,139) + b(k,221) = b(k,221) - lu(k,533) * b(k,139) + b(k,231) = b(k,231) - lu(k,534) * b(k,139) + b(k,167) = b(k,167) - lu(k,536) * b(k,140) + b(k,176) = b(k,176) - lu(k,537) * b(k,140) + b(k,199) = b(k,199) - lu(k,538) * b(k,140) + b(k,216) = b(k,216) - lu(k,539) * b(k,140) + b(k,219) = b(k,219) - lu(k,540) * b(k,140) + b(k,221) = b(k,221) - lu(k,541) * b(k,140) + b(k,222) = b(k,222) - lu(k,542) * b(k,140) + b(k,166) = b(k,166) - lu(k,544) * b(k,141) + b(k,212) = b(k,212) - lu(k,545) * b(k,141) + b(k,214) = b(k,214) - lu(k,546) * b(k,141) + b(k,217) = b(k,217) - lu(k,547) * b(k,141) + b(k,220) = b(k,220) - lu(k,548) * b(k,141) + b(k,223) = b(k,223) - lu(k,549) * b(k,141) + b(k,226) = b(k,226) - lu(k,550) * b(k,141) + b(k,183) = b(k,183) - lu(k,552) * b(k,142) + b(k,190) = b(k,190) - lu(k,553) * b(k,142) + b(k,192) = b(k,192) - lu(k,554) * b(k,142) + b(k,216) = b(k,216) - lu(k,555) * b(k,142) + b(k,217) = b(k,217) - lu(k,556) * b(k,142) + b(k,221) = b(k,221) - lu(k,557) * b(k,142) + b(k,230) = b(k,230) - lu(k,558) * b(k,142) + b(k,174) = b(k,174) - lu(k,560) * b(k,143) + b(k,192) = b(k,192) - lu(k,561) * b(k,143) + b(k,193) = b(k,193) - lu(k,562) * b(k,143) + b(k,195) = b(k,195) - lu(k,563) * b(k,143) + b(k,214) = b(k,214) - lu(k,564) * b(k,143) + b(k,219) = b(k,219) - lu(k,565) * b(k,143) + b(k,221) = b(k,221) - lu(k,566) * b(k,143) + b(k,189) = b(k,189) - lu(k,568) * b(k,144) + b(k,193) = b(k,193) - lu(k,569) * b(k,144) + b(k,209) = b(k,209) - lu(k,570) * b(k,144) + b(k,216) = b(k,216) - lu(k,571) * b(k,144) + b(k,217) = b(k,217) - lu(k,572) * b(k,144) + b(k,219) = b(k,219) - lu(k,573) * b(k,144) + b(k,221) = b(k,221) - lu(k,574) * b(k,144) + b(k,226) = b(k,226) - lu(k,575) * b(k,144) + b(k,192) = b(k,192) - lu(k,577) * b(k,145) + b(k,193) = b(k,193) - lu(k,578) * b(k,145) + b(k,195) = b(k,195) - lu(k,579) * b(k,145) + b(k,214) = b(k,214) - lu(k,580) * b(k,145) + b(k,216) = b(k,216) - lu(k,581) * b(k,145) + b(k,217) = b(k,217) - lu(k,582) * b(k,145) + b(k,219) = b(k,219) - lu(k,583) * b(k,145) + b(k,221) = b(k,221) - lu(k,584) * b(k,145) + b(k,177) = b(k,177) - lu(k,586) * b(k,146) + b(k,199) = b(k,199) - lu(k,587) * b(k,146) + b(k,221) = b(k,221) - lu(k,588) * b(k,146) + b(k,212) = b(k,212) - lu(k,590) * b(k,147) + b(k,218) = b(k,218) - lu(k,591) * b(k,147) + b(k,219) = b(k,219) - lu(k,592) * b(k,147) + b(k,221) = b(k,221) - lu(k,593) * b(k,147) + b(k,225) = b(k,225) - lu(k,594) * b(k,147) + b(k,227) = b(k,227) - lu(k,595) * b(k,147) + b(k,228) = b(k,228) - lu(k,596) * b(k,147) + b(k,231) = b(k,231) - lu(k,597) * b(k,147) + b(k,219) = b(k,219) - lu(k,599) * b(k,148) + b(k,221) = b(k,221) - lu(k,600) * b(k,148) + b(k,223) = b(k,223) - lu(k,601) * b(k,148) + b(k,225) = b(k,225) - lu(k,602) * b(k,148) + b(k,228) = b(k,228) - lu(k,603) * b(k,148) + b(k,231) = b(k,231) - lu(k,604) * b(k,148) + b(k,189) = b(k,189) - lu(k,606) * b(k,149) + b(k,210) = b(k,210) - lu(k,607) * b(k,149) + b(k,216) = b(k,216) - lu(k,608) * b(k,149) + b(k,219) = b(k,219) - lu(k,609) * b(k,149) + b(k,227) = b(k,227) - lu(k,610) * b(k,149) + b(k,231) = b(k,231) - lu(k,611) * b(k,149) + end do + end subroutine lu_slv02 + subroutine lu_slv03( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,186) = b(k,186) - lu(k,613) * b(k,150) + b(k,214) = b(k,214) - lu(k,614) * b(k,150) + b(k,217) = b(k,217) - lu(k,615) * b(k,150) + b(k,219) = b(k,219) - lu(k,616) * b(k,150) + b(k,221) = b(k,221) - lu(k,617) * b(k,150) + b(k,217) = b(k,217) - lu(k,621) * b(k,151) + b(k,219) = b(k,219) - lu(k,622) * b(k,151) + b(k,221) = b(k,221) - lu(k,623) * b(k,151) + b(k,222) = b(k,222) - lu(k,624) * b(k,151) + b(k,230) = b(k,230) - lu(k,625) * b(k,151) + b(k,156) = b(k,156) - lu(k,628) * b(k,152) + b(k,175) = b(k,175) - lu(k,629) * b(k,152) + b(k,182) = b(k,182) - lu(k,630) * b(k,152) + b(k,183) = b(k,183) - lu(k,631) * b(k,152) + b(k,190) = b(k,190) - lu(k,632) * b(k,152) + b(k,210) = b(k,210) - lu(k,633) * b(k,152) + b(k,216) = b(k,216) - lu(k,634) * b(k,152) + b(k,219) = b(k,219) - lu(k,635) * b(k,152) + b(k,221) = b(k,221) - lu(k,636) * b(k,152) + b(k,183) = b(k,183) - lu(k,638) * b(k,153) + b(k,189) = b(k,189) - lu(k,639) * b(k,153) + b(k,194) = b(k,194) - lu(k,640) * b(k,153) + b(k,195) = b(k,195) - lu(k,641) * b(k,153) + b(k,197) = b(k,197) - lu(k,642) * b(k,153) + b(k,199) = b(k,199) - lu(k,643) * b(k,153) + b(k,216) = b(k,216) - lu(k,644) * b(k,153) + b(k,219) = b(k,219) - lu(k,645) * b(k,153) + b(k,221) = b(k,221) - lu(k,646) * b(k,153) + b(k,162) = b(k,162) - lu(k,651) * b(k,154) + b(k,163) = b(k,163) - lu(k,652) * b(k,154) + b(k,165) = b(k,165) - lu(k,653) * b(k,154) + b(k,177) = b(k,177) - lu(k,654) * b(k,154) + b(k,184) = b(k,184) - lu(k,655) * b(k,154) + b(k,199) = b(k,199) - lu(k,656) * b(k,154) + b(k,203) = b(k,203) - lu(k,657) * b(k,154) + b(k,219) = b(k,219) - lu(k,658) * b(k,154) + b(k,221) = b(k,221) - lu(k,659) * b(k,154) + b(k,156) = b(k,156) - lu(k,662) * b(k,155) + b(k,175) = b(k,175) - lu(k,663) * b(k,155) + b(k,183) = b(k,183) - lu(k,664) * b(k,155) + b(k,190) = b(k,190) - lu(k,665) * b(k,155) + b(k,210) = b(k,210) - lu(k,666) * b(k,155) + b(k,216) = b(k,216) - lu(k,667) * b(k,155) + b(k,217) = b(k,217) - lu(k,668) * b(k,155) + b(k,219) = b(k,219) - lu(k,669) * b(k,155) + b(k,221) = b(k,221) - lu(k,670) * b(k,155) + b(k,190) = b(k,190) - lu(k,673) * b(k,156) + b(k,210) = b(k,210) - lu(k,674) * b(k,156) + b(k,217) = b(k,217) - lu(k,675) * b(k,156) + b(k,219) = b(k,219) - lu(k,676) * b(k,156) + b(k,221) = b(k,221) - lu(k,677) * b(k,156) + b(k,230) = b(k,230) - lu(k,678) * b(k,156) + b(k,215) = b(k,215) - lu(k,681) * b(k,157) + b(k,217) = b(k,217) - lu(k,682) * b(k,157) + b(k,218) = b(k,218) - lu(k,683) * b(k,157) + b(k,219) = b(k,219) - lu(k,684) * b(k,157) + b(k,223) = b(k,223) - lu(k,685) * b(k,157) + b(k,224) = b(k,224) - lu(k,686) * b(k,157) + b(k,230) = b(k,230) - lu(k,687) * b(k,157) + b(k,189) = b(k,189) - lu(k,689) * b(k,158) + b(k,219) = b(k,219) - lu(k,690) * b(k,158) + b(k,227) = b(k,227) - lu(k,691) * b(k,158) + b(k,231) = b(k,231) - lu(k,692) * b(k,158) + b(k,200) = b(k,200) - lu(k,695) * b(k,159) + b(k,202) = b(k,202) - lu(k,696) * b(k,159) + b(k,208) = b(k,208) - lu(k,697) * b(k,159) + b(k,216) = b(k,216) - lu(k,698) * b(k,159) + b(k,219) = b(k,219) - lu(k,699) * b(k,159) + b(k,221) = b(k,221) - lu(k,700) * b(k,159) + b(k,162) = b(k,162) - lu(k,706) * b(k,160) + b(k,164) = b(k,164) - lu(k,707) * b(k,160) + b(k,165) = b(k,165) - lu(k,708) * b(k,160) + b(k,177) = b(k,177) - lu(k,709) * b(k,160) + b(k,184) = b(k,184) - lu(k,710) * b(k,160) + b(k,199) = b(k,199) - lu(k,711) * b(k,160) + b(k,203) = b(k,203) - lu(k,712) * b(k,160) + b(k,210) = b(k,210) - lu(k,713) * b(k,160) + b(k,219) = b(k,219) - lu(k,714) * b(k,160) + b(k,221) = b(k,221) - lu(k,715) * b(k,160) + b(k,211) = b(k,211) - lu(k,717) * b(k,161) + b(k,215) = b(k,215) - lu(k,718) * b(k,161) + b(k,219) = b(k,219) - lu(k,719) * b(k,161) + b(k,222) = b(k,222) - lu(k,720) * b(k,161) + b(k,223) = b(k,223) - lu(k,721) * b(k,161) + b(k,224) = b(k,224) - lu(k,722) * b(k,161) + b(k,184) = b(k,184) - lu(k,724) * b(k,162) + b(k,199) = b(k,199) - lu(k,725) * b(k,162) + b(k,217) = b(k,217) - lu(k,726) * b(k,162) + b(k,221) = b(k,221) - lu(k,727) * b(k,162) + b(k,230) = b(k,230) - lu(k,728) * b(k,162) + b(k,165) = b(k,165) - lu(k,735) * b(k,163) + b(k,177) = b(k,177) - lu(k,736) * b(k,163) + b(k,184) = b(k,184) - lu(k,737) * b(k,163) + b(k,199) = b(k,199) - lu(k,738) * b(k,163) + b(k,203) = b(k,203) - lu(k,739) * b(k,163) + b(k,217) = b(k,217) - lu(k,740) * b(k,163) + b(k,219) = b(k,219) - lu(k,741) * b(k,163) + b(k,221) = b(k,221) - lu(k,742) * b(k,163) + b(k,230) = b(k,230) - lu(k,743) * b(k,163) + b(k,165) = b(k,165) - lu(k,751) * b(k,164) + b(k,177) = b(k,177) - lu(k,752) * b(k,164) + b(k,184) = b(k,184) - lu(k,753) * b(k,164) + b(k,199) = b(k,199) - lu(k,754) * b(k,164) + b(k,203) = b(k,203) - lu(k,755) * b(k,164) + b(k,210) = b(k,210) - lu(k,756) * b(k,164) + b(k,217) = b(k,217) - lu(k,757) * b(k,164) + b(k,219) = b(k,219) - lu(k,758) * b(k,164) + b(k,221) = b(k,221) - lu(k,759) * b(k,164) + b(k,230) = b(k,230) - lu(k,760) * b(k,164) + b(k,199) = b(k,199) - lu(k,762) * b(k,165) + b(k,203) = b(k,203) - lu(k,763) * b(k,165) + b(k,217) = b(k,217) - lu(k,764) * b(k,165) + b(k,219) = b(k,219) - lu(k,765) * b(k,165) + b(k,221) = b(k,221) - lu(k,766) * b(k,165) + b(k,227) = b(k,227) - lu(k,767) * b(k,165) + b(k,230) = b(k,230) - lu(k,768) * b(k,165) + b(k,212) = b(k,212) - lu(k,771) * b(k,166) + b(k,219) = b(k,219) - lu(k,772) * b(k,166) + b(k,220) = b(k,220) - lu(k,773) * b(k,166) + b(k,223) = b(k,223) - lu(k,774) * b(k,166) + b(k,225) = b(k,225) - lu(k,775) * b(k,166) + b(k,228) = b(k,228) - lu(k,776) * b(k,166) + b(k,231) = b(k,231) - lu(k,777) * b(k,166) + b(k,195) = b(k,195) - lu(k,781) * b(k,167) + b(k,215) = b(k,215) - lu(k,782) * b(k,167) + b(k,216) = b(k,216) - lu(k,783) * b(k,167) + b(k,217) = b(k,217) - lu(k,784) * b(k,167) + b(k,219) = b(k,219) - lu(k,785) * b(k,167) + b(k,221) = b(k,221) - lu(k,786) * b(k,167) + b(k,230) = b(k,230) - lu(k,787) * b(k,167) + b(k,190) = b(k,190) - lu(k,790) * b(k,168) + b(k,193) = b(k,193) - lu(k,791) * b(k,168) + b(k,215) = b(k,215) - lu(k,792) * b(k,168) + b(k,216) = b(k,216) - lu(k,793) * b(k,168) + b(k,217) = b(k,217) - lu(k,794) * b(k,168) + b(k,219) = b(k,219) - lu(k,795) * b(k,168) + b(k,221) = b(k,221) - lu(k,796) * b(k,168) + b(k,230) = b(k,230) - lu(k,797) * b(k,168) + b(k,231) = b(k,231) - lu(k,798) * b(k,168) + b(k,216) = b(k,216) - lu(k,800) * b(k,169) + b(k,219) = b(k,219) - lu(k,801) * b(k,169) + b(k,221) = b(k,221) - lu(k,802) * b(k,169) + b(k,183) = b(k,183) - lu(k,805) * b(k,170) + b(k,190) = b(k,190) - lu(k,806) * b(k,170) + b(k,215) = b(k,215) - lu(k,807) * b(k,170) + b(k,216) = b(k,216) - lu(k,808) * b(k,170) + b(k,217) = b(k,217) - lu(k,809) * b(k,170) + b(k,219) = b(k,219) - lu(k,810) * b(k,170) + b(k,221) = b(k,221) - lu(k,811) * b(k,170) + b(k,227) = b(k,227) - lu(k,812) * b(k,170) + b(k,230) = b(k,230) - lu(k,813) * b(k,170) + b(k,231) = b(k,231) - lu(k,814) * b(k,170) + b(k,212) = b(k,212) - lu(k,816) * b(k,171) + b(k,218) = b(k,218) - lu(k,817) * b(k,171) + b(k,219) = b(k,219) - lu(k,818) * b(k,171) + b(k,220) = b(k,220) - lu(k,819) * b(k,171) + b(k,223) = b(k,223) - lu(k,820) * b(k,171) + b(k,224) = b(k,224) - lu(k,821) * b(k,171) + b(k,231) = b(k,231) - lu(k,822) * b(k,171) + b(k,219) = b(k,219) - lu(k,825) * b(k,172) + b(k,223) = b(k,223) - lu(k,826) * b(k,172) + b(k,225) = b(k,225) - lu(k,827) * b(k,172) + b(k,228) = b(k,228) - lu(k,828) * b(k,172) + b(k,229) = b(k,229) - lu(k,829) * b(k,172) + b(k,231) = b(k,231) - lu(k,830) * b(k,172) + b(k,176) = b(k,176) - lu(k,835) * b(k,173) + b(k,188) = b(k,188) - lu(k,836) * b(k,173) + b(k,199) = b(k,199) - lu(k,837) * b(k,173) + b(k,201) = b(k,201) - lu(k,838) * b(k,173) + b(k,202) = b(k,202) - lu(k,839) * b(k,173) + b(k,205) = b(k,205) - lu(k,840) * b(k,173) + b(k,206) = b(k,206) - lu(k,841) * b(k,173) + b(k,208) = b(k,208) - lu(k,842) * b(k,173) + b(k,210) = b(k,210) - lu(k,843) * b(k,173) + b(k,216) = b(k,216) - lu(k,844) * b(k,173) + b(k,219) = b(k,219) - lu(k,845) * b(k,173) + b(k,221) = b(k,221) - lu(k,846) * b(k,173) + b(k,222) = b(k,222) - lu(k,847) * b(k,173) + b(k,226) = b(k,226) - lu(k,848) * b(k,173) + b(k,227) = b(k,227) - lu(k,849) * b(k,173) + b(k,203) = b(k,203) - lu(k,851) * b(k,174) + b(k,210) = b(k,210) - lu(k,852) * b(k,174) + b(k,216) = b(k,216) - lu(k,853) * b(k,174) + b(k,217) = b(k,217) - lu(k,854) * b(k,174) + b(k,219) = b(k,219) - lu(k,855) * b(k,174) + b(k,190) = b(k,190) - lu(k,860) * b(k,175) + b(k,215) = b(k,215) - lu(k,861) * b(k,175) + b(k,216) = b(k,216) - lu(k,862) * b(k,175) + b(k,217) = b(k,217) - lu(k,863) * b(k,175) + b(k,219) = b(k,219) - lu(k,864) * b(k,175) + b(k,221) = b(k,221) - lu(k,865) * b(k,175) + b(k,227) = b(k,227) - lu(k,866) * b(k,175) + b(k,230) = b(k,230) - lu(k,867) * b(k,175) + b(k,189) = b(k,189) - lu(k,869) * b(k,176) + b(k,219) = b(k,219) - lu(k,870) * b(k,176) + b(k,221) = b(k,221) - lu(k,871) * b(k,176) + b(k,231) = b(k,231) - lu(k,872) * b(k,176) + b(k,184) = b(k,184) - lu(k,874) * b(k,177) + b(k,199) = b(k,199) - lu(k,875) * b(k,177) + b(k,203) = b(k,203) - lu(k,876) * b(k,177) + b(k,217) = b(k,217) - lu(k,877) * b(k,177) + b(k,219) = b(k,219) - lu(k,878) * b(k,177) + b(k,221) = b(k,221) - lu(k,879) * b(k,177) + b(k,227) = b(k,227) - lu(k,880) * b(k,177) + b(k,230) = b(k,230) - lu(k,881) * b(k,177) + end do + end subroutine lu_slv03 + subroutine lu_slv04( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,204) = b(k,204) - lu(k,884) * b(k,178) + b(k,213) = b(k,213) - lu(k,885) * b(k,178) + b(k,214) = b(k,214) - lu(k,886) * b(k,178) + b(k,219) = b(k,219) - lu(k,887) * b(k,178) + b(k,224) = b(k,224) - lu(k,888) * b(k,178) + b(k,226) = b(k,226) - lu(k,889) * b(k,178) + b(k,227) = b(k,227) - lu(k,890) * b(k,178) + b(k,231) = b(k,231) - lu(k,891) * b(k,178) + b(k,211) = b(k,211) - lu(k,894) * b(k,179) + b(k,219) = b(k,219) - lu(k,895) * b(k,179) + b(k,221) = b(k,221) - lu(k,896) * b(k,179) + b(k,223) = b(k,223) - lu(k,897) * b(k,179) + b(k,231) = b(k,231) - lu(k,898) * b(k,179) + b(k,182) = b(k,182) - lu(k,909) * b(k,180) + b(k,183) = b(k,183) - lu(k,910) * b(k,180) + b(k,184) = b(k,184) - lu(k,911) * b(k,180) + b(k,186) = b(k,186) - lu(k,912) * b(k,180) + b(k,189) = b(k,189) - lu(k,913) * b(k,180) + b(k,191) = b(k,191) - lu(k,914) * b(k,180) + b(k,194) = b(k,194) - lu(k,915) * b(k,180) + b(k,196) = b(k,196) - lu(k,916) * b(k,180) + b(k,198) = b(k,198) - lu(k,917) * b(k,180) + b(k,199) = b(k,199) - lu(k,918) * b(k,180) + b(k,203) = b(k,203) - lu(k,919) * b(k,180) + b(k,210) = b(k,210) - lu(k,920) * b(k,180) + b(k,216) = b(k,216) - lu(k,921) * b(k,180) + b(k,219) = b(k,219) - lu(k,922) * b(k,180) + b(k,221) = b(k,221) - lu(k,923) * b(k,180) + b(k,222) = b(k,222) - lu(k,924) * b(k,180) + b(k,226) = b(k,226) - lu(k,925) * b(k,180) + b(k,231) = b(k,231) - lu(k,926) * b(k,180) + b(k,182) = b(k,182) - lu(k,937) * b(k,181) + b(k,183) = b(k,183) - lu(k,938) * b(k,181) + b(k,184) = b(k,184) - lu(k,939) * b(k,181) + b(k,186) = b(k,186) - lu(k,940) * b(k,181) + b(k,189) = b(k,189) - lu(k,941) * b(k,181) + b(k,191) = b(k,191) - lu(k,942) * b(k,181) + b(k,194) = b(k,194) - lu(k,943) * b(k,181) + b(k,196) = b(k,196) - lu(k,944) * b(k,181) + b(k,198) = b(k,198) - lu(k,945) * b(k,181) + b(k,199) = b(k,199) - lu(k,946) * b(k,181) + b(k,203) = b(k,203) - lu(k,947) * b(k,181) + b(k,210) = b(k,210) - lu(k,948) * b(k,181) + b(k,216) = b(k,216) - lu(k,949) * b(k,181) + b(k,219) = b(k,219) - lu(k,950) * b(k,181) + b(k,221) = b(k,221) - lu(k,951) * b(k,181) + b(k,222) = b(k,222) - lu(k,952) * b(k,181) + b(k,226) = b(k,226) - lu(k,953) * b(k,181) + b(k,231) = b(k,231) - lu(k,954) * b(k,181) + b(k,183) = b(k,183) - lu(k,961) * b(k,182) + b(k,190) = b(k,190) - lu(k,962) * b(k,182) + b(k,210) = b(k,210) - lu(k,963) * b(k,182) + b(k,215) = b(k,215) - lu(k,964) * b(k,182) + b(k,216) = b(k,216) - lu(k,965) * b(k,182) + b(k,217) = b(k,217) - lu(k,966) * b(k,182) + b(k,219) = b(k,219) - lu(k,967) * b(k,182) + b(k,221) = b(k,221) - lu(k,968) * b(k,182) + b(k,227) = b(k,227) - lu(k,969) * b(k,182) + b(k,230) = b(k,230) - lu(k,970) * b(k,182) + b(k,198) = b(k,198) - lu(k,972) * b(k,183) + b(k,210) = b(k,210) - lu(k,973) * b(k,183) + b(k,219) = b(k,219) - lu(k,974) * b(k,183) + b(k,227) = b(k,227) - lu(k,975) * b(k,183) + b(k,231) = b(k,231) - lu(k,976) * b(k,183) + b(k,189) = b(k,189) - lu(k,979) * b(k,184) + b(k,199) = b(k,199) - lu(k,980) * b(k,184) + b(k,219) = b(k,219) - lu(k,981) * b(k,184) + b(k,221) = b(k,221) - lu(k,982) * b(k,184) + b(k,214) = b(k,214) - lu(k,986) * b(k,185) + b(k,217) = b(k,217) - lu(k,987) * b(k,185) + b(k,219) = b(k,219) - lu(k,988) * b(k,185) + b(k,223) = b(k,223) - lu(k,989) * b(k,185) + b(k,225) = b(k,225) - lu(k,990) * b(k,185) + b(k,226) = b(k,226) - lu(k,991) * b(k,185) + b(k,228) = b(k,228) - lu(k,992) * b(k,185) + b(k,229) = b(k,229) - lu(k,993) * b(k,185) + b(k,231) = b(k,231) - lu(k,994) * b(k,185) + b(k,191) = b(k,191) - lu(k,996) * b(k,186) + b(k,194) = b(k,194) - lu(k,997) * b(k,186) + b(k,197) = b(k,197) - lu(k,998) * b(k,186) + b(k,199) = b(k,199) - lu(k,999) * b(k,186) + b(k,219) = b(k,219) - lu(k,1000) * b(k,186) + b(k,221) = b(k,221) - lu(k,1001) * b(k,186) + b(k,226) = b(k,226) - lu(k,1002) * b(k,186) + b(k,189) = b(k,189) - lu(k,1008) * b(k,187) + b(k,199) = b(k,199) - lu(k,1009) * b(k,187) + b(k,203) = b(k,203) - lu(k,1010) * b(k,187) + b(k,210) = b(k,210) - lu(k,1011) * b(k,187) + b(k,214) = b(k,214) - lu(k,1012) * b(k,187) + b(k,216) = b(k,216) - lu(k,1013) * b(k,187) + b(k,217) = b(k,217) - lu(k,1014) * b(k,187) + b(k,219) = b(k,219) - lu(k,1015) * b(k,187) + b(k,221) = b(k,221) - lu(k,1016) * b(k,187) + b(k,227) = b(k,227) - lu(k,1017) * b(k,187) + b(k,230) = b(k,230) - lu(k,1018) * b(k,187) + b(k,189) = b(k,189) - lu(k,1024) * b(k,188) + b(k,190) = b(k,190) - lu(k,1025) * b(k,188) + b(k,193) = b(k,193) - lu(k,1026) * b(k,188) + b(k,199) = b(k,199) - lu(k,1027) * b(k,188) + b(k,203) = b(k,203) - lu(k,1028) * b(k,188) + b(k,210) = b(k,210) - lu(k,1029) * b(k,188) + b(k,213) = b(k,213) - lu(k,1030) * b(k,188) + b(k,215) = b(k,215) - lu(k,1031) * b(k,188) + b(k,216) = b(k,216) - lu(k,1032) * b(k,188) + b(k,217) = b(k,217) - lu(k,1033) * b(k,188) + b(k,219) = b(k,219) - lu(k,1034) * b(k,188) + b(k,221) = b(k,221) - lu(k,1035) * b(k,188) + b(k,222) = b(k,222) - lu(k,1036) * b(k,188) + b(k,226) = b(k,226) - lu(k,1037) * b(k,188) + b(k,227) = b(k,227) - lu(k,1038) * b(k,188) + b(k,230) = b(k,230) - lu(k,1039) * b(k,188) + b(k,231) = b(k,231) - lu(k,1040) * b(k,188) + b(k,199) = b(k,199) - lu(k,1044) * b(k,189) + b(k,215) = b(k,215) - lu(k,1045) * b(k,189) + b(k,223) = b(k,223) - lu(k,1046) * b(k,189) + b(k,199) = b(k,199) - lu(k,1048) * b(k,190) + b(k,210) = b(k,210) - lu(k,1049) * b(k,190) + b(k,214) = b(k,214) - lu(k,1050) * b(k,190) + b(k,219) = b(k,219) - lu(k,1051) * b(k,190) + b(k,221) = b(k,221) - lu(k,1052) * b(k,190) + b(k,226) = b(k,226) - lu(k,1053) * b(k,190) + b(k,227) = b(k,227) - lu(k,1054) * b(k,190) + b(k,231) = b(k,231) - lu(k,1055) * b(k,190) + b(k,194) = b(k,194) - lu(k,1061) * b(k,191) + b(k,197) = b(k,197) - lu(k,1062) * b(k,191) + b(k,199) = b(k,199) - lu(k,1063) * b(k,191) + b(k,214) = b(k,214) - lu(k,1064) * b(k,191) + b(k,216) = b(k,216) - lu(k,1065) * b(k,191) + b(k,217) = b(k,217) - lu(k,1066) * b(k,191) + b(k,219) = b(k,219) - lu(k,1067) * b(k,191) + b(k,221) = b(k,221) - lu(k,1068) * b(k,191) + b(k,226) = b(k,226) - lu(k,1069) * b(k,191) + b(k,227) = b(k,227) - lu(k,1070) * b(k,191) + b(k,230) = b(k,230) - lu(k,1071) * b(k,191) + b(k,193) = b(k,193) - lu(k,1076) * b(k,192) + b(k,195) = b(k,195) - lu(k,1077) * b(k,192) + b(k,198) = b(k,198) - lu(k,1078) * b(k,192) + b(k,199) = b(k,199) - lu(k,1079) * b(k,192) + b(k,210) = b(k,210) - lu(k,1080) * b(k,192) + b(k,214) = b(k,214) - lu(k,1081) * b(k,192) + b(k,216) = b(k,216) - lu(k,1082) * b(k,192) + b(k,217) = b(k,217) - lu(k,1083) * b(k,192) + b(k,219) = b(k,219) - lu(k,1084) * b(k,192) + b(k,221) = b(k,221) - lu(k,1085) * b(k,192) + b(k,226) = b(k,226) - lu(k,1086) * b(k,192) + b(k,227) = b(k,227) - lu(k,1087) * b(k,192) + b(k,231) = b(k,231) - lu(k,1088) * b(k,192) + b(k,203) = b(k,203) - lu(k,1090) * b(k,193) + b(k,210) = b(k,210) - lu(k,1091) * b(k,193) + b(k,216) = b(k,216) - lu(k,1092) * b(k,193) + b(k,219) = b(k,219) - lu(k,1093) * b(k,193) + b(k,221) = b(k,221) - lu(k,1094) * b(k,193) + b(k,198) = b(k,198) - lu(k,1098) * b(k,194) + b(k,199) = b(k,199) - lu(k,1099) * b(k,194) + b(k,210) = b(k,210) - lu(k,1100) * b(k,194) + b(k,215) = b(k,215) - lu(k,1101) * b(k,194) + b(k,216) = b(k,216) - lu(k,1102) * b(k,194) + b(k,219) = b(k,219) - lu(k,1103) * b(k,194) + b(k,221) = b(k,221) - lu(k,1104) * b(k,194) + b(k,223) = b(k,223) - lu(k,1105) * b(k,194) + b(k,227) = b(k,227) - lu(k,1106) * b(k,194) + b(k,231) = b(k,231) - lu(k,1107) * b(k,194) + b(k,199) = b(k,199) - lu(k,1111) * b(k,195) + b(k,215) = b(k,215) - lu(k,1112) * b(k,195) + b(k,216) = b(k,216) - lu(k,1113) * b(k,195) + b(k,219) = b(k,219) - lu(k,1114) * b(k,195) + b(k,221) = b(k,221) - lu(k,1115) * b(k,195) + b(k,223) = b(k,223) - lu(k,1116) * b(k,195) + b(k,197) = b(k,197) - lu(k,1125) * b(k,196) + b(k,198) = b(k,198) - lu(k,1126) * b(k,196) + b(k,199) = b(k,199) - lu(k,1127) * b(k,196) + b(k,210) = b(k,210) - lu(k,1128) * b(k,196) + b(k,214) = b(k,214) - lu(k,1129) * b(k,196) + b(k,215) = b(k,215) - lu(k,1130) * b(k,196) + b(k,216) = b(k,216) - lu(k,1131) * b(k,196) + b(k,217) = b(k,217) - lu(k,1132) * b(k,196) + b(k,219) = b(k,219) - lu(k,1133) * b(k,196) + b(k,221) = b(k,221) - lu(k,1134) * b(k,196) + b(k,223) = b(k,223) - lu(k,1135) * b(k,196) + b(k,226) = b(k,226) - lu(k,1136) * b(k,196) + b(k,227) = b(k,227) - lu(k,1137) * b(k,196) + b(k,230) = b(k,230) - lu(k,1138) * b(k,196) + b(k,231) = b(k,231) - lu(k,1139) * b(k,196) + b(k,198) = b(k,198) - lu(k,1148) * b(k,197) + b(k,199) = b(k,199) - lu(k,1149) * b(k,197) + b(k,210) = b(k,210) - lu(k,1150) * b(k,197) + b(k,214) = b(k,214) - lu(k,1151) * b(k,197) + b(k,215) = b(k,215) - lu(k,1152) * b(k,197) + b(k,216) = b(k,216) - lu(k,1153) * b(k,197) + b(k,217) = b(k,217) - lu(k,1154) * b(k,197) + b(k,219) = b(k,219) - lu(k,1155) * b(k,197) + b(k,221) = b(k,221) - lu(k,1156) * b(k,197) + b(k,223) = b(k,223) - lu(k,1157) * b(k,197) + b(k,227) = b(k,227) - lu(k,1158) * b(k,197) + b(k,230) = b(k,230) - lu(k,1159) * b(k,197) + b(k,231) = b(k,231) - lu(k,1160) * b(k,197) + b(k,203) = b(k,203) - lu(k,1165) * b(k,198) + b(k,210) = b(k,210) - lu(k,1166) * b(k,198) + b(k,216) = b(k,216) - lu(k,1167) * b(k,198) + b(k,217) = b(k,217) - lu(k,1168) * b(k,198) + b(k,219) = b(k,219) - lu(k,1169) * b(k,198) + b(k,221) = b(k,221) - lu(k,1170) * b(k,198) + b(k,227) = b(k,227) - lu(k,1171) * b(k,198) + b(k,230) = b(k,230) - lu(k,1172) * b(k,198) + b(k,231) = b(k,231) - lu(k,1173) * b(k,198) + end do + end subroutine lu_slv04 + subroutine lu_slv05( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,215) = b(k,215) - lu(k,1176) * b(k,199) + b(k,219) = b(k,219) - lu(k,1177) * b(k,199) + b(k,221) = b(k,221) - lu(k,1178) * b(k,199) + b(k,223) = b(k,223) - lu(k,1179) * b(k,199) + b(k,203) = b(k,203) - lu(k,1188) * b(k,200) + b(k,210) = b(k,210) - lu(k,1189) * b(k,200) + b(k,215) = b(k,215) - lu(k,1190) * b(k,200) + b(k,216) = b(k,216) - lu(k,1191) * b(k,200) + b(k,217) = b(k,217) - lu(k,1192) * b(k,200) + b(k,219) = b(k,219) - lu(k,1193) * b(k,200) + b(k,221) = b(k,221) - lu(k,1194) * b(k,200) + b(k,223) = b(k,223) - lu(k,1195) * b(k,200) + b(k,226) = b(k,226) - lu(k,1196) * b(k,200) + b(k,227) = b(k,227) - lu(k,1197) * b(k,200) + b(k,230) = b(k,230) - lu(k,1198) * b(k,200) + b(k,202) = b(k,202) - lu(k,1210) * b(k,201) + b(k,203) = b(k,203) - lu(k,1211) * b(k,201) + b(k,208) = b(k,208) - lu(k,1212) * b(k,201) + b(k,210) = b(k,210) - lu(k,1213) * b(k,201) + b(k,214) = b(k,214) - lu(k,1214) * b(k,201) + b(k,215) = b(k,215) - lu(k,1215) * b(k,201) + b(k,216) = b(k,216) - lu(k,1216) * b(k,201) + b(k,217) = b(k,217) - lu(k,1217) * b(k,201) + b(k,219) = b(k,219) - lu(k,1218) * b(k,201) + b(k,221) = b(k,221) - lu(k,1219) * b(k,201) + b(k,223) = b(k,223) - lu(k,1220) * b(k,201) + b(k,226) = b(k,226) - lu(k,1221) * b(k,201) + b(k,227) = b(k,227) - lu(k,1222) * b(k,201) + b(k,230) = b(k,230) - lu(k,1223) * b(k,201) + b(k,203) = b(k,203) - lu(k,1228) * b(k,202) + b(k,207) = b(k,207) - lu(k,1229) * b(k,202) + b(k,209) = b(k,209) - lu(k,1230) * b(k,202) + b(k,210) = b(k,210) - lu(k,1231) * b(k,202) + b(k,215) = b(k,215) - lu(k,1232) * b(k,202) + b(k,216) = b(k,216) - lu(k,1233) * b(k,202) + b(k,219) = b(k,219) - lu(k,1234) * b(k,202) + b(k,221) = b(k,221) - lu(k,1235) * b(k,202) + b(k,222) = b(k,222) - lu(k,1236) * b(k,202) + b(k,223) = b(k,223) - lu(k,1237) * b(k,202) + b(k,231) = b(k,231) - lu(k,1238) * b(k,202) + b(k,210) = b(k,210) - lu(k,1241) * b(k,203) + b(k,214) = b(k,214) - lu(k,1242) * b(k,203) + b(k,215) = b(k,215) - lu(k,1243) * b(k,203) + b(k,219) = b(k,219) - lu(k,1244) * b(k,203) + b(k,221) = b(k,221) - lu(k,1245) * b(k,203) + b(k,223) = b(k,223) - lu(k,1246) * b(k,203) + b(k,226) = b(k,226) - lu(k,1247) * b(k,203) + b(k,231) = b(k,231) - lu(k,1248) * b(k,203) + b(k,213) = b(k,213) - lu(k,1252) * b(k,204) + b(k,214) = b(k,214) - lu(k,1253) * b(k,204) + b(k,218) = b(k,218) - lu(k,1254) * b(k,204) + b(k,219) = b(k,219) - lu(k,1255) * b(k,204) + b(k,223) = b(k,223) - lu(k,1256) * b(k,204) + b(k,224) = b(k,224) - lu(k,1257) * b(k,204) + b(k,225) = b(k,225) - lu(k,1258) * b(k,204) + b(k,226) = b(k,226) - lu(k,1259) * b(k,204) + b(k,227) = b(k,227) - lu(k,1260) * b(k,204) + b(k,228) = b(k,228) - lu(k,1261) * b(k,204) + b(k,231) = b(k,231) - lu(k,1262) * b(k,204) + b(k,207) = b(k,207) - lu(k,1276) * b(k,205) + b(k,208) = b(k,208) - lu(k,1277) * b(k,205) + b(k,209) = b(k,209) - lu(k,1278) * b(k,205) + b(k,210) = b(k,210) - lu(k,1279) * b(k,205) + b(k,214) = b(k,214) - lu(k,1280) * b(k,205) + b(k,215) = b(k,215) - lu(k,1281) * b(k,205) + b(k,216) = b(k,216) - lu(k,1282) * b(k,205) + b(k,217) = b(k,217) - lu(k,1283) * b(k,205) + b(k,219) = b(k,219) - lu(k,1284) * b(k,205) + b(k,221) = b(k,221) - lu(k,1285) * b(k,205) + b(k,222) = b(k,222) - lu(k,1286) * b(k,205) + b(k,223) = b(k,223) - lu(k,1287) * b(k,205) + b(k,226) = b(k,226) - lu(k,1288) * b(k,205) + b(k,227) = b(k,227) - lu(k,1289) * b(k,205) + b(k,230) = b(k,230) - lu(k,1290) * b(k,205) + b(k,231) = b(k,231) - lu(k,1291) * b(k,205) + b(k,207) = b(k,207) - lu(k,1311) * b(k,206) + b(k,208) = b(k,208) - lu(k,1312) * b(k,206) + b(k,209) = b(k,209) - lu(k,1313) * b(k,206) + b(k,210) = b(k,210) - lu(k,1314) * b(k,206) + b(k,214) = b(k,214) - lu(k,1315) * b(k,206) + b(k,215) = b(k,215) - lu(k,1316) * b(k,206) + b(k,216) = b(k,216) - lu(k,1317) * b(k,206) + b(k,217) = b(k,217) - lu(k,1318) * b(k,206) + b(k,219) = b(k,219) - lu(k,1319) * b(k,206) + b(k,221) = b(k,221) - lu(k,1320) * b(k,206) + b(k,222) = b(k,222) - lu(k,1321) * b(k,206) + b(k,223) = b(k,223) - lu(k,1322) * b(k,206) + b(k,226) = b(k,226) - lu(k,1323) * b(k,206) + b(k,227) = b(k,227) - lu(k,1324) * b(k,206) + b(k,230) = b(k,230) - lu(k,1325) * b(k,206) + b(k,231) = b(k,231) - lu(k,1326) * b(k,206) + b(k,209) = b(k,209) - lu(k,1336) * b(k,207) + b(k,210) = b(k,210) - lu(k,1337) * b(k,207) + b(k,214) = b(k,214) - lu(k,1338) * b(k,207) + b(k,215) = b(k,215) - lu(k,1339) * b(k,207) + b(k,216) = b(k,216) - lu(k,1340) * b(k,207) + b(k,217) = b(k,217) - lu(k,1341) * b(k,207) + b(k,219) = b(k,219) - lu(k,1342) * b(k,207) + b(k,221) = b(k,221) - lu(k,1343) * b(k,207) + b(k,223) = b(k,223) - lu(k,1344) * b(k,207) + b(k,226) = b(k,226) - lu(k,1345) * b(k,207) + b(k,227) = b(k,227) - lu(k,1346) * b(k,207) + b(k,230) = b(k,230) - lu(k,1347) * b(k,207) + b(k,231) = b(k,231) - lu(k,1348) * b(k,207) + b(k,209) = b(k,209) - lu(k,1358) * b(k,208) + b(k,210) = b(k,210) - lu(k,1359) * b(k,208) + b(k,213) = b(k,213) - lu(k,1360) * b(k,208) + b(k,214) = b(k,214) - lu(k,1361) * b(k,208) + b(k,215) = b(k,215) - lu(k,1362) * b(k,208) + b(k,216) = b(k,216) - lu(k,1363) * b(k,208) + b(k,217) = b(k,217) - lu(k,1364) * b(k,208) + b(k,219) = b(k,219) - lu(k,1365) * b(k,208) + b(k,221) = b(k,221) - lu(k,1366) * b(k,208) + b(k,222) = b(k,222) - lu(k,1367) * b(k,208) + b(k,223) = b(k,223) - lu(k,1368) * b(k,208) + b(k,226) = b(k,226) - lu(k,1369) * b(k,208) + b(k,227) = b(k,227) - lu(k,1370) * b(k,208) + b(k,230) = b(k,230) - lu(k,1371) * b(k,208) + b(k,231) = b(k,231) - lu(k,1372) * b(k,208) + b(k,210) = b(k,210) - lu(k,1381) * b(k,209) + b(k,214) = b(k,214) - lu(k,1382) * b(k,209) + b(k,215) = b(k,215) - lu(k,1383) * b(k,209) + b(k,216) = b(k,216) - lu(k,1384) * b(k,209) + b(k,217) = b(k,217) - lu(k,1385) * b(k,209) + b(k,219) = b(k,219) - lu(k,1386) * b(k,209) + b(k,221) = b(k,221) - lu(k,1387) * b(k,209) + b(k,222) = b(k,222) - lu(k,1388) * b(k,209) + b(k,223) = b(k,223) - lu(k,1389) * b(k,209) + b(k,226) = b(k,226) - lu(k,1390) * b(k,209) + b(k,227) = b(k,227) - lu(k,1391) * b(k,209) + b(k,230) = b(k,230) - lu(k,1392) * b(k,209) + b(k,231) = b(k,231) - lu(k,1393) * b(k,209) + b(k,213) = b(k,213) - lu(k,1414) * b(k,210) + b(k,214) = b(k,214) - lu(k,1415) * b(k,210) + b(k,215) = b(k,215) - lu(k,1416) * b(k,210) + b(k,216) = b(k,216) - lu(k,1417) * b(k,210) + b(k,217) = b(k,217) - lu(k,1418) * b(k,210) + b(k,219) = b(k,219) - lu(k,1419) * b(k,210) + b(k,221) = b(k,221) - lu(k,1420) * b(k,210) + b(k,222) = b(k,222) - lu(k,1421) * b(k,210) + b(k,223) = b(k,223) - lu(k,1422) * b(k,210) + b(k,226) = b(k,226) - lu(k,1423) * b(k,210) + b(k,227) = b(k,227) - lu(k,1424) * b(k,210) + b(k,230) = b(k,230) - lu(k,1425) * b(k,210) + b(k,231) = b(k,231) - lu(k,1426) * b(k,210) + b(k,212) = b(k,212) - lu(k,1431) * b(k,211) + b(k,215) = b(k,215) - lu(k,1432) * b(k,211) + b(k,217) = b(k,217) - lu(k,1433) * b(k,211) + b(k,219) = b(k,219) - lu(k,1434) * b(k,211) + b(k,220) = b(k,220) - lu(k,1435) * b(k,211) + b(k,221) = b(k,221) - lu(k,1436) * b(k,211) + b(k,222) = b(k,222) - lu(k,1437) * b(k,211) + b(k,223) = b(k,223) - lu(k,1438) * b(k,211) + b(k,224) = b(k,224) - lu(k,1439) * b(k,211) + b(k,228) = b(k,228) - lu(k,1440) * b(k,211) + b(k,229) = b(k,229) - lu(k,1441) * b(k,211) + b(k,230) = b(k,230) - lu(k,1442) * b(k,211) + b(k,231) = b(k,231) - lu(k,1443) * b(k,211) + b(k,215) = b(k,215) - lu(k,1447) * b(k,212) + b(k,216) = b(k,216) - lu(k,1448) * b(k,212) + b(k,218) = b(k,218) - lu(k,1449) * b(k,212) + b(k,219) = b(k,219) - lu(k,1450) * b(k,212) + b(k,220) = b(k,220) - lu(k,1451) * b(k,212) + b(k,221) = b(k,221) - lu(k,1452) * b(k,212) + b(k,222) = b(k,222) - lu(k,1453) * b(k,212) + b(k,223) = b(k,223) - lu(k,1454) * b(k,212) + b(k,224) = b(k,224) - lu(k,1455) * b(k,212) + b(k,231) = b(k,231) - lu(k,1456) * b(k,212) + b(k,214) = b(k,214) - lu(k,1463) * b(k,213) + b(k,215) = b(k,215) - lu(k,1464) * b(k,213) + b(k,216) = b(k,216) - lu(k,1465) * b(k,213) + b(k,218) = b(k,218) - lu(k,1466) * b(k,213) + b(k,219) = b(k,219) - lu(k,1467) * b(k,213) + b(k,221) = b(k,221) - lu(k,1468) * b(k,213) + b(k,223) = b(k,223) - lu(k,1469) * b(k,213) + b(k,224) = b(k,224) - lu(k,1470) * b(k,213) + b(k,225) = b(k,225) - lu(k,1471) * b(k,213) + b(k,226) = b(k,226) - lu(k,1472) * b(k,213) + b(k,227) = b(k,227) - lu(k,1473) * b(k,213) + b(k,228) = b(k,228) - lu(k,1474) * b(k,213) + b(k,231) = b(k,231) - lu(k,1475) * b(k,213) + b(k,215) = b(k,215) - lu(k,1481) * b(k,214) + b(k,216) = b(k,216) - lu(k,1482) * b(k,214) + b(k,217) = b(k,217) - lu(k,1483) * b(k,214) + b(k,218) = b(k,218) - lu(k,1484) * b(k,214) + b(k,219) = b(k,219) - lu(k,1485) * b(k,214) + b(k,221) = b(k,221) - lu(k,1486) * b(k,214) + b(k,223) = b(k,223) - lu(k,1487) * b(k,214) + b(k,224) = b(k,224) - lu(k,1488) * b(k,214) + b(k,225) = b(k,225) - lu(k,1489) * b(k,214) + b(k,226) = b(k,226) - lu(k,1490) * b(k,214) + b(k,227) = b(k,227) - lu(k,1491) * b(k,214) + b(k,228) = b(k,228) - lu(k,1492) * b(k,214) + b(k,231) = b(k,231) - lu(k,1493) * b(k,214) + b(k,216) = b(k,216) - lu(k,1505) * b(k,215) + b(k,217) = b(k,217) - lu(k,1506) * b(k,215) + b(k,218) = b(k,218) - lu(k,1507) * b(k,215) + b(k,219) = b(k,219) - lu(k,1508) * b(k,215) + b(k,220) = b(k,220) - lu(k,1509) * b(k,215) + b(k,221) = b(k,221) - lu(k,1510) * b(k,215) + b(k,222) = b(k,222) - lu(k,1511) * b(k,215) + b(k,223) = b(k,223) - lu(k,1512) * b(k,215) + b(k,224) = b(k,224) - lu(k,1513) * b(k,215) + b(k,228) = b(k,228) - lu(k,1514) * b(k,215) + b(k,229) = b(k,229) - lu(k,1515) * b(k,215) + b(k,230) = b(k,230) - lu(k,1516) * b(k,215) + b(k,231) = b(k,231) - lu(k,1517) * b(k,215) + end do + end subroutine lu_slv05 + subroutine lu_slv06( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,217) = b(k,217) - lu(k,1529) * b(k,216) + b(k,218) = b(k,218) - lu(k,1530) * b(k,216) + b(k,219) = b(k,219) - lu(k,1531) * b(k,216) + b(k,220) = b(k,220) - lu(k,1532) * b(k,216) + b(k,221) = b(k,221) - lu(k,1533) * b(k,216) + b(k,222) = b(k,222) - lu(k,1534) * b(k,216) + b(k,223) = b(k,223) - lu(k,1535) * b(k,216) + b(k,224) = b(k,224) - lu(k,1536) * b(k,216) + b(k,225) = b(k,225) - lu(k,1537) * b(k,216) + b(k,226) = b(k,226) - lu(k,1538) * b(k,216) + b(k,227) = b(k,227) - lu(k,1539) * b(k,216) + b(k,228) = b(k,228) - lu(k,1540) * b(k,216) + b(k,229) = b(k,229) - lu(k,1541) * b(k,216) + b(k,230) = b(k,230) - lu(k,1542) * b(k,216) + b(k,231) = b(k,231) - lu(k,1543) * b(k,216) + b(k,218) = b(k,218) - lu(k,1575) * b(k,217) + b(k,219) = b(k,219) - lu(k,1576) * b(k,217) + b(k,220) = b(k,220) - lu(k,1577) * b(k,217) + b(k,221) = b(k,221) - lu(k,1578) * b(k,217) + b(k,222) = b(k,222) - lu(k,1579) * b(k,217) + b(k,223) = b(k,223) - lu(k,1580) * b(k,217) + b(k,224) = b(k,224) - lu(k,1581) * b(k,217) + b(k,225) = b(k,225) - lu(k,1582) * b(k,217) + b(k,226) = b(k,226) - lu(k,1583) * b(k,217) + b(k,227) = b(k,227) - lu(k,1584) * b(k,217) + b(k,228) = b(k,228) - lu(k,1585) * b(k,217) + b(k,229) = b(k,229) - lu(k,1586) * b(k,217) + b(k,230) = b(k,230) - lu(k,1587) * b(k,217) + b(k,231) = b(k,231) - lu(k,1588) * b(k,217) + b(k,219) = b(k,219) - lu(k,1619) * b(k,218) + b(k,220) = b(k,220) - lu(k,1620) * b(k,218) + b(k,221) = b(k,221) - lu(k,1621) * b(k,218) + b(k,222) = b(k,222) - lu(k,1622) * b(k,218) + b(k,223) = b(k,223) - lu(k,1623) * b(k,218) + b(k,224) = b(k,224) - lu(k,1624) * b(k,218) + b(k,225) = b(k,225) - lu(k,1625) * b(k,218) + b(k,226) = b(k,226) - lu(k,1626) * b(k,218) + b(k,227) = b(k,227) - lu(k,1627) * b(k,218) + b(k,228) = b(k,228) - lu(k,1628) * b(k,218) + b(k,229) = b(k,229) - lu(k,1629) * b(k,218) + b(k,230) = b(k,230) - lu(k,1630) * b(k,218) + b(k,231) = b(k,231) - lu(k,1631) * b(k,218) + b(k,220) = b(k,220) - lu(k,1785) * b(k,219) + b(k,221) = b(k,221) - lu(k,1786) * b(k,219) + b(k,222) = b(k,222) - lu(k,1787) * b(k,219) + b(k,223) = b(k,223) - lu(k,1788) * b(k,219) + b(k,224) = b(k,224) - lu(k,1789) * b(k,219) + b(k,225) = b(k,225) - lu(k,1790) * b(k,219) + b(k,226) = b(k,226) - lu(k,1791) * b(k,219) + b(k,227) = b(k,227) - lu(k,1792) * b(k,219) + b(k,228) = b(k,228) - lu(k,1793) * b(k,219) + b(k,229) = b(k,229) - lu(k,1794) * b(k,219) + b(k,230) = b(k,230) - lu(k,1795) * b(k,219) + b(k,231) = b(k,231) - lu(k,1796) * b(k,219) + b(k,221) = b(k,221) - lu(k,1811) * b(k,220) + b(k,222) = b(k,222) - lu(k,1812) * b(k,220) + b(k,223) = b(k,223) - lu(k,1813) * b(k,220) + b(k,224) = b(k,224) - lu(k,1814) * b(k,220) + b(k,225) = b(k,225) - lu(k,1815) * b(k,220) + b(k,226) = b(k,226) - lu(k,1816) * b(k,220) + b(k,227) = b(k,227) - lu(k,1817) * b(k,220) + b(k,228) = b(k,228) - lu(k,1818) * b(k,220) + b(k,229) = b(k,229) - lu(k,1819) * b(k,220) + b(k,230) = b(k,230) - lu(k,1820) * b(k,220) + b(k,231) = b(k,231) - lu(k,1821) * b(k,220) + b(k,222) = b(k,222) - lu(k,1920) * b(k,221) + b(k,223) = b(k,223) - lu(k,1921) * b(k,221) + b(k,224) = b(k,224) - lu(k,1922) * b(k,221) + b(k,225) = b(k,225) - lu(k,1923) * b(k,221) + b(k,226) = b(k,226) - lu(k,1924) * b(k,221) + b(k,227) = b(k,227) - lu(k,1925) * b(k,221) + b(k,228) = b(k,228) - lu(k,1926) * b(k,221) + b(k,229) = b(k,229) - lu(k,1927) * b(k,221) + b(k,230) = b(k,230) - lu(k,1928) * b(k,221) + b(k,231) = b(k,231) - lu(k,1929) * b(k,221) + b(k,223) = b(k,223) - lu(k,1986) * b(k,222) + b(k,224) = b(k,224) - lu(k,1987) * b(k,222) + b(k,225) = b(k,225) - lu(k,1988) * b(k,222) + b(k,226) = b(k,226) - lu(k,1989) * b(k,222) + b(k,227) = b(k,227) - lu(k,1990) * b(k,222) + b(k,228) = b(k,228) - lu(k,1991) * b(k,222) + b(k,229) = b(k,229) - lu(k,1992) * b(k,222) + b(k,230) = b(k,230) - lu(k,1993) * b(k,222) + b(k,231) = b(k,231) - lu(k,1994) * b(k,222) + b(k,224) = b(k,224) - lu(k,2021) * b(k,223) + b(k,225) = b(k,225) - lu(k,2022) * b(k,223) + b(k,226) = b(k,226) - lu(k,2023) * b(k,223) + b(k,227) = b(k,227) - lu(k,2024) * b(k,223) + b(k,228) = b(k,228) - lu(k,2025) * b(k,223) + b(k,229) = b(k,229) - lu(k,2026) * b(k,223) + b(k,230) = b(k,230) - lu(k,2027) * b(k,223) + b(k,231) = b(k,231) - lu(k,2028) * b(k,223) + b(k,225) = b(k,225) - lu(k,2042) * b(k,224) + b(k,226) = b(k,226) - lu(k,2043) * b(k,224) + b(k,227) = b(k,227) - lu(k,2044) * b(k,224) + b(k,228) = b(k,228) - lu(k,2045) * b(k,224) + b(k,229) = b(k,229) - lu(k,2046) * b(k,224) + b(k,230) = b(k,230) - lu(k,2047) * b(k,224) + b(k,231) = b(k,231) - lu(k,2048) * b(k,224) + b(k,226) = b(k,226) - lu(k,2067) * b(k,225) + b(k,227) = b(k,227) - lu(k,2068) * b(k,225) + b(k,228) = b(k,228) - lu(k,2069) * b(k,225) + b(k,229) = b(k,229) - lu(k,2070) * b(k,225) + b(k,230) = b(k,230) - lu(k,2071) * b(k,225) + b(k,231) = b(k,231) - lu(k,2072) * b(k,225) + b(k,227) = b(k,227) - lu(k,2129) * b(k,226) + b(k,228) = b(k,228) - lu(k,2130) * b(k,226) + b(k,229) = b(k,229) - lu(k,2131) * b(k,226) + b(k,230) = b(k,230) - lu(k,2132) * b(k,226) + b(k,231) = b(k,231) - lu(k,2133) * b(k,226) + b(k,228) = b(k,228) - lu(k,2183) * b(k,227) + b(k,229) = b(k,229) - lu(k,2184) * b(k,227) + b(k,230) = b(k,230) - lu(k,2185) * b(k,227) + b(k,231) = b(k,231) - lu(k,2186) * b(k,227) + b(k,229) = b(k,229) - lu(k,2225) * b(k,228) + b(k,230) = b(k,230) - lu(k,2226) * b(k,228) + b(k,231) = b(k,231) - lu(k,2227) * b(k,228) + b(k,230) = b(k,230) - lu(k,2253) * b(k,229) + b(k,231) = b(k,231) - lu(k,2254) * b(k,229) + b(k,231) = b(k,231) - lu(k,2347) * b(k,230) + end do + end subroutine lu_slv06 + subroutine lu_slv07( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len +!----------------------------------------------------------------------- +! ... Solve U * x = y +!----------------------------------------------------------------------- + b(k,231) = b(k,231) * lu(k,2374) + b(k,230) = b(k,230) - lu(k,2373) * b(k,231) + b(k,229) = b(k,229) - lu(k,2372) * b(k,231) + b(k,228) = b(k,228) - lu(k,2371) * b(k,231) + b(k,227) = b(k,227) - lu(k,2370) * b(k,231) + b(k,226) = b(k,226) - lu(k,2369) * b(k,231) + b(k,225) = b(k,225) - lu(k,2368) * b(k,231) + b(k,224) = b(k,224) - lu(k,2367) * b(k,231) + b(k,223) = b(k,223) - lu(k,2366) * b(k,231) + b(k,222) = b(k,222) - lu(k,2365) * b(k,231) + b(k,221) = b(k,221) - lu(k,2364) * b(k,231) + b(k,220) = b(k,220) - lu(k,2363) * b(k,231) + b(k,219) = b(k,219) - lu(k,2362) * b(k,231) + b(k,218) = b(k,218) - lu(k,2361) * b(k,231) + b(k,217) = b(k,217) - lu(k,2360) * b(k,231) + b(k,216) = b(k,216) - lu(k,2359) * b(k,231) + b(k,215) = b(k,215) - lu(k,2358) * b(k,231) + b(k,214) = b(k,214) - lu(k,2357) * b(k,231) + b(k,213) = b(k,213) - lu(k,2356) * b(k,231) + b(k,212) = b(k,212) - lu(k,2355) * b(k,231) + b(k,211) = b(k,211) - lu(k,2354) * b(k,231) + b(k,204) = b(k,204) - lu(k,2353) * b(k,231) + b(k,179) = b(k,179) - lu(k,2352) * b(k,231) + b(k,178) = b(k,178) - lu(k,2351) * b(k,231) + b(k,99) = b(k,99) - lu(k,2350) * b(k,231) + b(k,94) = b(k,94) - lu(k,2349) * b(k,231) + b(k,64) = b(k,64) - lu(k,2348) * b(k,231) + b(k,230) = b(k,230) * lu(k,2346) + b(k,229) = b(k,229) - lu(k,2345) * b(k,230) + b(k,228) = b(k,228) - lu(k,2344) * b(k,230) + b(k,227) = b(k,227) - lu(k,2343) * b(k,230) + b(k,226) = b(k,226) - lu(k,2342) * b(k,230) + b(k,225) = b(k,225) - lu(k,2341) * b(k,230) + b(k,224) = b(k,224) - lu(k,2340) * b(k,230) + b(k,223) = b(k,223) - lu(k,2339) * b(k,230) + b(k,222) = b(k,222) - lu(k,2338) * b(k,230) + b(k,221) = b(k,221) - lu(k,2337) * b(k,230) + b(k,220) = b(k,220) - lu(k,2336) * b(k,230) + b(k,219) = b(k,219) - lu(k,2335) * b(k,230) + b(k,218) = b(k,218) - lu(k,2334) * b(k,230) + b(k,217) = b(k,217) - lu(k,2333) * b(k,230) + b(k,216) = b(k,216) - lu(k,2332) * b(k,230) + b(k,215) = b(k,215) - lu(k,2331) * b(k,230) + b(k,214) = b(k,214) - lu(k,2330) * b(k,230) + b(k,213) = b(k,213) - lu(k,2329) * b(k,230) + b(k,212) = b(k,212) - lu(k,2328) * b(k,230) + b(k,210) = b(k,210) - lu(k,2327) * b(k,230) + b(k,209) = b(k,209) - lu(k,2326) * b(k,230) + b(k,208) = b(k,208) - lu(k,2325) * b(k,230) + b(k,207) = b(k,207) - lu(k,2324) * b(k,230) + b(k,206) = b(k,206) - lu(k,2323) * b(k,230) + b(k,205) = b(k,205) - lu(k,2322) * b(k,230) + b(k,203) = b(k,203) - lu(k,2321) * b(k,230) + b(k,202) = b(k,202) - lu(k,2320) * b(k,230) + b(k,201) = b(k,201) - lu(k,2319) * b(k,230) + b(k,200) = b(k,200) - lu(k,2318) * b(k,230) + b(k,199) = b(k,199) - lu(k,2317) * b(k,230) + b(k,198) = b(k,198) - lu(k,2316) * b(k,230) + b(k,197) = b(k,197) - lu(k,2315) * b(k,230) + b(k,196) = b(k,196) - lu(k,2314) * b(k,230) + b(k,195) = b(k,195) - lu(k,2313) * b(k,230) + b(k,194) = b(k,194) - lu(k,2312) * b(k,230) + b(k,193) = b(k,193) - lu(k,2311) * b(k,230) + b(k,192) = b(k,192) - lu(k,2310) * b(k,230) + b(k,191) = b(k,191) - lu(k,2309) * b(k,230) + b(k,190) = b(k,190) - lu(k,2308) * b(k,230) + b(k,189) = b(k,189) - lu(k,2307) * b(k,230) + b(k,187) = b(k,187) - lu(k,2306) * b(k,230) + b(k,186) = b(k,186) - lu(k,2305) * b(k,230) + b(k,184) = b(k,184) - lu(k,2304) * b(k,230) + b(k,183) = b(k,183) - lu(k,2303) * b(k,230) + b(k,182) = b(k,182) - lu(k,2302) * b(k,230) + b(k,177) = b(k,177) - lu(k,2301) * b(k,230) + b(k,176) = b(k,176) - lu(k,2300) * b(k,230) + b(k,175) = b(k,175) - lu(k,2299) * b(k,230) + b(k,174) = b(k,174) - lu(k,2298) * b(k,230) + b(k,170) = b(k,170) - lu(k,2297) * b(k,230) + b(k,168) = b(k,168) - lu(k,2296) * b(k,230) + b(k,167) = b(k,167) - lu(k,2295) * b(k,230) + b(k,165) = b(k,165) - lu(k,2294) * b(k,230) + b(k,164) = b(k,164) - lu(k,2293) * b(k,230) + b(k,163) = b(k,163) - lu(k,2292) * b(k,230) + b(k,162) = b(k,162) - lu(k,2291) * b(k,230) + b(k,157) = b(k,157) - lu(k,2290) * b(k,230) + b(k,156) = b(k,156) - lu(k,2289) * b(k,230) + b(k,155) = b(k,155) - lu(k,2288) * b(k,230) + b(k,151) = b(k,151) - lu(k,2287) * b(k,230) + b(k,150) = b(k,150) - lu(k,2286) * b(k,230) + b(k,146) = b(k,146) - lu(k,2285) * b(k,230) + b(k,145) = b(k,145) - lu(k,2284) * b(k,230) + b(k,143) = b(k,143) - lu(k,2283) * b(k,230) + b(k,142) = b(k,142) - lu(k,2282) * b(k,230) + b(k,137) = b(k,137) - lu(k,2281) * b(k,230) + b(k,136) = b(k,136) - lu(k,2280) * b(k,230) + b(k,135) = b(k,135) - lu(k,2279) * b(k,230) + b(k,134) = b(k,134) - lu(k,2278) * b(k,230) + b(k,130) = b(k,130) - lu(k,2277) * b(k,230) + b(k,129) = b(k,129) - lu(k,2276) * b(k,230) + b(k,128) = b(k,128) - lu(k,2275) * b(k,230) + b(k,126) = b(k,126) - lu(k,2274) * b(k,230) + b(k,125) = b(k,125) - lu(k,2273) * b(k,230) + b(k,124) = b(k,124) - lu(k,2272) * b(k,230) + b(k,110) = b(k,110) - lu(k,2271) * b(k,230) + b(k,106) = b(k,106) - lu(k,2270) * b(k,230) + b(k,98) = b(k,98) - lu(k,2269) * b(k,230) + b(k,89) = b(k,89) - lu(k,2268) * b(k,230) + b(k,88) = b(k,88) - lu(k,2267) * b(k,230) + b(k,52) = b(k,52) - lu(k,2266) * b(k,230) + b(k,51) = b(k,51) - lu(k,2265) * b(k,230) + b(k,50) = b(k,50) - lu(k,2264) * b(k,230) + b(k,48) = b(k,48) - lu(k,2263) * b(k,230) + b(k,47) = b(k,47) - lu(k,2262) * b(k,230) + b(k,46) = b(k,46) - lu(k,2261) * b(k,230) + b(k,45) = b(k,45) - lu(k,2260) * b(k,230) + b(k,42) = b(k,42) - lu(k,2259) * b(k,230) + b(k,41) = b(k,41) - lu(k,2258) * b(k,230) + b(k,40) = b(k,40) - lu(k,2257) * b(k,230) + b(k,39) = b(k,39) - lu(k,2256) * b(k,230) + b(k,38) = b(k,38) - lu(k,2255) * b(k,230) + b(k,229) = b(k,229) * lu(k,2252) + b(k,228) = b(k,228) - lu(k,2251) * b(k,229) + b(k,227) = b(k,227) - lu(k,2250) * b(k,229) + b(k,226) = b(k,226) - lu(k,2249) * b(k,229) + b(k,225) = b(k,225) - lu(k,2248) * b(k,229) + b(k,224) = b(k,224) - lu(k,2247) * b(k,229) + b(k,223) = b(k,223) - lu(k,2246) * b(k,229) + b(k,222) = b(k,222) - lu(k,2245) * b(k,229) + b(k,221) = b(k,221) - lu(k,2244) * b(k,229) + b(k,220) = b(k,220) - lu(k,2243) * b(k,229) + b(k,219) = b(k,219) - lu(k,2242) * b(k,229) + b(k,218) = b(k,218) - lu(k,2241) * b(k,229) + b(k,217) = b(k,217) - lu(k,2240) * b(k,229) + b(k,216) = b(k,216) - lu(k,2239) * b(k,229) + b(k,215) = b(k,215) - lu(k,2238) * b(k,229) + b(k,214) = b(k,214) - lu(k,2237) * b(k,229) + b(k,212) = b(k,212) - lu(k,2236) * b(k,229) + b(k,211) = b(k,211) - lu(k,2235) * b(k,229) + b(k,185) = b(k,185) - lu(k,2234) * b(k,229) + b(k,179) = b(k,179) - lu(k,2233) * b(k,229) + b(k,172) = b(k,172) - lu(k,2232) * b(k,229) + b(k,107) = b(k,107) - lu(k,2231) * b(k,229) + b(k,86) = b(k,86) - lu(k,2230) * b(k,229) + b(k,76) = b(k,76) - lu(k,2229) * b(k,229) + b(k,53) = b(k,53) - lu(k,2228) * b(k,229) + b(k,228) = b(k,228) * lu(k,2224) + b(k,227) = b(k,227) - lu(k,2223) * b(k,228) + b(k,226) = b(k,226) - lu(k,2222) * b(k,228) + b(k,225) = b(k,225) - lu(k,2221) * b(k,228) + b(k,224) = b(k,224) - lu(k,2220) * b(k,228) + b(k,223) = b(k,223) - lu(k,2219) * b(k,228) + b(k,222) = b(k,222) - lu(k,2218) * b(k,228) + b(k,221) = b(k,221) - lu(k,2217) * b(k,228) + b(k,220) = b(k,220) - lu(k,2216) * b(k,228) + b(k,219) = b(k,219) - lu(k,2215) * b(k,228) + b(k,218) = b(k,218) - lu(k,2214) * b(k,228) + b(k,217) = b(k,217) - lu(k,2213) * b(k,228) + b(k,216) = b(k,216) - lu(k,2212) * b(k,228) + b(k,215) = b(k,215) - lu(k,2211) * b(k,228) + b(k,214) = b(k,214) - lu(k,2210) * b(k,228) + b(k,213) = b(k,213) - lu(k,2209) * b(k,228) + b(k,212) = b(k,212) - lu(k,2208) * b(k,228) + b(k,210) = b(k,210) - lu(k,2207) * b(k,228) + b(k,204) = b(k,204) - lu(k,2206) * b(k,228) + b(k,199) = b(k,199) - lu(k,2205) * b(k,228) + b(k,195) = b(k,195) - lu(k,2204) * b(k,228) + b(k,190) = b(k,190) - lu(k,2203) * b(k,228) + b(k,189) = b(k,189) - lu(k,2202) * b(k,228) + b(k,185) = b(k,185) - lu(k,2201) * b(k,228) + b(k,184) = b(k,184) - lu(k,2200) * b(k,228) + b(k,176) = b(k,176) - lu(k,2199) * b(k,228) + b(k,175) = b(k,175) - lu(k,2198) * b(k,228) + b(k,172) = b(k,172) - lu(k,2197) * b(k,228) + b(k,167) = b(k,167) - lu(k,2196) * b(k,228) + b(k,148) = b(k,148) - lu(k,2195) * b(k,228) + b(k,147) = b(k,147) - lu(k,2194) * b(k,228) + b(k,140) = b(k,140) - lu(k,2193) * b(k,228) + b(k,132) = b(k,132) - lu(k,2192) * b(k,228) + b(k,116) = b(k,116) - lu(k,2191) * b(k,228) + b(k,114) = b(k,114) - lu(k,2190) * b(k,228) + b(k,102) = b(k,102) - lu(k,2189) * b(k,228) + b(k,101) = b(k,101) - lu(k,2188) * b(k,228) + b(k,76) = b(k,76) - lu(k,2187) * b(k,228) + b(k,227) = b(k,227) * lu(k,2182) + b(k,226) = b(k,226) - lu(k,2181) * b(k,227) + b(k,225) = b(k,225) - lu(k,2180) * b(k,227) + b(k,224) = b(k,224) - lu(k,2179) * b(k,227) + b(k,223) = b(k,223) - lu(k,2178) * b(k,227) + b(k,222) = b(k,222) - lu(k,2177) * b(k,227) + b(k,221) = b(k,221) - lu(k,2176) * b(k,227) + b(k,220) = b(k,220) - lu(k,2175) * b(k,227) + b(k,219) = b(k,219) - lu(k,2174) * b(k,227) + b(k,218) = b(k,218) - lu(k,2173) * b(k,227) + b(k,217) = b(k,217) - lu(k,2172) * b(k,227) + b(k,216) = b(k,216) - lu(k,2171) * b(k,227) + b(k,215) = b(k,215) - lu(k,2170) * b(k,227) + b(k,214) = b(k,214) - lu(k,2169) * b(k,227) + b(k,213) = b(k,213) - lu(k,2168) * b(k,227) + b(k,210) = b(k,210) - lu(k,2167) * b(k,227) + b(k,209) = b(k,209) - lu(k,2166) * b(k,227) + b(k,208) = b(k,208) - lu(k,2165) * b(k,227) + b(k,207) = b(k,207) - lu(k,2164) * b(k,227) + b(k,206) = b(k,206) - lu(k,2163) * b(k,227) + b(k,205) = b(k,205) - lu(k,2162) * b(k,227) + b(k,203) = b(k,203) - lu(k,2161) * b(k,227) + b(k,202) = b(k,202) - lu(k,2160) * b(k,227) + b(k,201) = b(k,201) - lu(k,2159) * b(k,227) + b(k,200) = b(k,200) - lu(k,2158) * b(k,227) + b(k,199) = b(k,199) - lu(k,2157) * b(k,227) + b(k,198) = b(k,198) - lu(k,2156) * b(k,227) + b(k,197) = b(k,197) - lu(k,2155) * b(k,227) + b(k,196) = b(k,196) - lu(k,2154) * b(k,227) + b(k,195) = b(k,195) - lu(k,2153) * b(k,227) + b(k,194) = b(k,194) - lu(k,2152) * b(k,227) + b(k,193) = b(k,193) - lu(k,2151) * b(k,227) + b(k,191) = b(k,191) - lu(k,2150) * b(k,227) + b(k,190) = b(k,190) - lu(k,2149) * b(k,227) + b(k,189) = b(k,189) - lu(k,2148) * b(k,227) + b(k,187) = b(k,187) - lu(k,2147) * b(k,227) + b(k,186) = b(k,186) - lu(k,2146) * b(k,227) + b(k,184) = b(k,184) - lu(k,2145) * b(k,227) + b(k,183) = b(k,183) - lu(k,2144) * b(k,227) + b(k,175) = b(k,175) - lu(k,2143) * b(k,227) + b(k,174) = b(k,174) - lu(k,2142) * b(k,227) + b(k,170) = b(k,170) - lu(k,2141) * b(k,227) + b(k,169) = b(k,169) - lu(k,2140) * b(k,227) + b(k,158) = b(k,158) - lu(k,2139) * b(k,227) + b(k,150) = b(k,150) - lu(k,2138) * b(k,227) + b(k,127) = b(k,127) - lu(k,2137) * b(k,227) + b(k,123) = b(k,123) - lu(k,2136) * b(k,227) + b(k,110) = b(k,110) - lu(k,2135) * b(k,227) + b(k,95) = b(k,95) - lu(k,2134) * b(k,227) + end do + end subroutine lu_slv07 + subroutine lu_slv08( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,226) = b(k,226) * lu(k,2128) + b(k,225) = b(k,225) - lu(k,2127) * b(k,226) + b(k,224) = b(k,224) - lu(k,2126) * b(k,226) + b(k,223) = b(k,223) - lu(k,2125) * b(k,226) + b(k,222) = b(k,222) - lu(k,2124) * b(k,226) + b(k,221) = b(k,221) - lu(k,2123) * b(k,226) + b(k,220) = b(k,220) - lu(k,2122) * b(k,226) + b(k,219) = b(k,219) - lu(k,2121) * b(k,226) + b(k,218) = b(k,218) - lu(k,2120) * b(k,226) + b(k,217) = b(k,217) - lu(k,2119) * b(k,226) + b(k,216) = b(k,216) - lu(k,2118) * b(k,226) + b(k,215) = b(k,215) - lu(k,2117) * b(k,226) + b(k,214) = b(k,214) - lu(k,2116) * b(k,226) + b(k,213) = b(k,213) - lu(k,2115) * b(k,226) + b(k,212) = b(k,212) - lu(k,2114) * b(k,226) + b(k,211) = b(k,211) - lu(k,2113) * b(k,226) + b(k,210) = b(k,210) - lu(k,2112) * b(k,226) + b(k,209) = b(k,209) - lu(k,2111) * b(k,226) + b(k,208) = b(k,208) - lu(k,2110) * b(k,226) + b(k,207) = b(k,207) - lu(k,2109) * b(k,226) + b(k,206) = b(k,206) - lu(k,2108) * b(k,226) + b(k,205) = b(k,205) - lu(k,2107) * b(k,226) + b(k,203) = b(k,203) - lu(k,2106) * b(k,226) + b(k,202) = b(k,202) - lu(k,2105) * b(k,226) + b(k,201) = b(k,201) - lu(k,2104) * b(k,226) + b(k,200) = b(k,200) - lu(k,2103) * b(k,226) + b(k,199) = b(k,199) - lu(k,2102) * b(k,226) + b(k,198) = b(k,198) - lu(k,2101) * b(k,226) + b(k,197) = b(k,197) - lu(k,2100) * b(k,226) + b(k,196) = b(k,196) - lu(k,2099) * b(k,226) + b(k,195) = b(k,195) - lu(k,2098) * b(k,226) + b(k,194) = b(k,194) - lu(k,2097) * b(k,226) + b(k,193) = b(k,193) - lu(k,2096) * b(k,226) + b(k,192) = b(k,192) - lu(k,2095) * b(k,226) + b(k,191) = b(k,191) - lu(k,2094) * b(k,226) + b(k,190) = b(k,190) - lu(k,2093) * b(k,226) + b(k,189) = b(k,189) - lu(k,2092) * b(k,226) + b(k,188) = b(k,188) - lu(k,2091) * b(k,226) + b(k,187) = b(k,187) - lu(k,2090) * b(k,226) + b(k,186) = b(k,186) - lu(k,2089) * b(k,226) + b(k,184) = b(k,184) - lu(k,2088) * b(k,226) + b(k,183) = b(k,183) - lu(k,2087) * b(k,226) + b(k,182) = b(k,182) - lu(k,2086) * b(k,226) + b(k,181) = b(k,181) - lu(k,2085) * b(k,226) + b(k,180) = b(k,180) - lu(k,2084) * b(k,226) + b(k,179) = b(k,179) - lu(k,2083) * b(k,226) + b(k,176) = b(k,176) - lu(k,2082) * b(k,226) + b(k,174) = b(k,174) - lu(k,2081) * b(k,226) + b(k,173) = b(k,173) - lu(k,2080) * b(k,226) + b(k,142) = b(k,142) - lu(k,2079) * b(k,226) + b(k,112) = b(k,112) - lu(k,2078) * b(k,226) + b(k,110) = b(k,110) - lu(k,2077) * b(k,226) + b(k,100) = b(k,100) - lu(k,2076) * b(k,226) + b(k,97) = b(k,97) - lu(k,2075) * b(k,226) + b(k,42) = b(k,42) - lu(k,2074) * b(k,226) + b(k,41) = b(k,41) - lu(k,2073) * b(k,226) + b(k,225) = b(k,225) * lu(k,2066) + b(k,224) = b(k,224) - lu(k,2065) * b(k,225) + b(k,223) = b(k,223) - lu(k,2064) * b(k,225) + b(k,222) = b(k,222) - lu(k,2063) * b(k,225) + b(k,221) = b(k,221) - lu(k,2062) * b(k,225) + b(k,220) = b(k,220) - lu(k,2061) * b(k,225) + b(k,219) = b(k,219) - lu(k,2060) * b(k,225) + b(k,218) = b(k,218) - lu(k,2059) * b(k,225) + b(k,217) = b(k,217) - lu(k,2058) * b(k,225) + b(k,216) = b(k,216) - lu(k,2057) * b(k,225) + b(k,215) = b(k,215) - lu(k,2056) * b(k,225) + b(k,214) = b(k,214) - lu(k,2055) * b(k,225) + b(k,212) = b(k,212) - lu(k,2054) * b(k,225) + b(k,185) = b(k,185) - lu(k,2053) * b(k,225) + b(k,172) = b(k,172) - lu(k,2052) * b(k,225) + b(k,166) = b(k,166) - lu(k,2051) * b(k,225) + b(k,86) = b(k,86) - lu(k,2050) * b(k,225) + b(k,76) = b(k,76) - lu(k,2049) * b(k,225) + b(k,224) = b(k,224) * lu(k,2041) + b(k,223) = b(k,223) - lu(k,2040) * b(k,224) + b(k,222) = b(k,222) - lu(k,2039) * b(k,224) + b(k,221) = b(k,221) - lu(k,2038) * b(k,224) + b(k,220) = b(k,220) - lu(k,2037) * b(k,224) + b(k,219) = b(k,219) - lu(k,2036) * b(k,224) + b(k,218) = b(k,218) - lu(k,2035) * b(k,224) + b(k,217) = b(k,217) - lu(k,2034) * b(k,224) + b(k,216) = b(k,216) - lu(k,2033) * b(k,224) + b(k,215) = b(k,215) - lu(k,2032) * b(k,224) + b(k,214) = b(k,214) - lu(k,2031) * b(k,224) + b(k,213) = b(k,213) - lu(k,2030) * b(k,224) + b(k,204) = b(k,204) - lu(k,2029) * b(k,224) + b(k,223) = b(k,223) * lu(k,2020) + b(k,222) = b(k,222) - lu(k,2019) * b(k,223) + b(k,221) = b(k,221) - lu(k,2018) * b(k,223) + b(k,220) = b(k,220) - lu(k,2017) * b(k,223) + b(k,219) = b(k,219) - lu(k,2016) * b(k,223) + b(k,218) = b(k,218) - lu(k,2015) * b(k,223) + b(k,217) = b(k,217) - lu(k,2014) * b(k,223) + b(k,216) = b(k,216) - lu(k,2013) * b(k,223) + b(k,215) = b(k,215) - lu(k,2012) * b(k,223) + b(k,214) = b(k,214) - lu(k,2011) * b(k,223) + b(k,213) = b(k,213) - lu(k,2010) * b(k,223) + b(k,212) = b(k,212) - lu(k,2009) * b(k,223) + b(k,211) = b(k,211) - lu(k,2008) * b(k,223) + b(k,204) = b(k,204) - lu(k,2007) * b(k,223) + b(k,199) = b(k,199) - lu(k,2006) * b(k,223) + b(k,185) = b(k,185) - lu(k,2005) * b(k,223) + b(k,179) = b(k,179) - lu(k,2004) * b(k,223) + b(k,172) = b(k,172) - lu(k,2003) * b(k,223) + b(k,171) = b(k,171) - lu(k,2002) * b(k,223) + b(k,166) = b(k,166) - lu(k,2001) * b(k,223) + b(k,161) = b(k,161) - lu(k,2000) * b(k,223) + b(k,148) = b(k,148) - lu(k,1999) * b(k,223) + b(k,141) = b(k,141) - lu(k,1998) * b(k,223) + b(k,113) = b(k,113) - lu(k,1997) * b(k,223) + b(k,72) = b(k,72) - lu(k,1996) * b(k,223) + b(k,71) = b(k,71) - lu(k,1995) * b(k,223) + b(k,222) = b(k,222) * lu(k,1985) + b(k,221) = b(k,221) - lu(k,1984) * b(k,222) + b(k,220) = b(k,220) - lu(k,1983) * b(k,222) + b(k,219) = b(k,219) - lu(k,1982) * b(k,222) + b(k,218) = b(k,218) - lu(k,1981) * b(k,222) + b(k,217) = b(k,217) - lu(k,1980) * b(k,222) + b(k,216) = b(k,216) - lu(k,1979) * b(k,222) + b(k,215) = b(k,215) - lu(k,1978) * b(k,222) + b(k,214) = b(k,214) - lu(k,1977) * b(k,222) + b(k,213) = b(k,213) - lu(k,1976) * b(k,222) + b(k,212) = b(k,212) - lu(k,1975) * b(k,222) + b(k,211) = b(k,211) - lu(k,1974) * b(k,222) + b(k,210) = b(k,210) - lu(k,1973) * b(k,222) + b(k,209) = b(k,209) - lu(k,1972) * b(k,222) + b(k,208) = b(k,208) - lu(k,1971) * b(k,222) + b(k,207) = b(k,207) - lu(k,1970) * b(k,222) + b(k,206) = b(k,206) - lu(k,1969) * b(k,222) + b(k,205) = b(k,205) - lu(k,1968) * b(k,222) + b(k,203) = b(k,203) - lu(k,1967) * b(k,222) + b(k,202) = b(k,202) - lu(k,1966) * b(k,222) + b(k,201) = b(k,201) - lu(k,1965) * b(k,222) + b(k,199) = b(k,199) - lu(k,1964) * b(k,222) + b(k,198) = b(k,198) - lu(k,1963) * b(k,222) + b(k,197) = b(k,197) - lu(k,1962) * b(k,222) + b(k,196) = b(k,196) - lu(k,1961) * b(k,222) + b(k,195) = b(k,195) - lu(k,1960) * b(k,222) + b(k,194) = b(k,194) - lu(k,1959) * b(k,222) + b(k,193) = b(k,193) - lu(k,1958) * b(k,222) + b(k,191) = b(k,191) - lu(k,1957) * b(k,222) + b(k,190) = b(k,190) - lu(k,1956) * b(k,222) + b(k,189) = b(k,189) - lu(k,1955) * b(k,222) + b(k,188) = b(k,188) - lu(k,1954) * b(k,222) + b(k,186) = b(k,186) - lu(k,1953) * b(k,222) + b(k,184) = b(k,184) - lu(k,1952) * b(k,222) + b(k,183) = b(k,183) - lu(k,1951) * b(k,222) + b(k,182) = b(k,182) - lu(k,1950) * b(k,222) + b(k,181) = b(k,181) - lu(k,1949) * b(k,222) + b(k,180) = b(k,180) - lu(k,1948) * b(k,222) + b(k,179) = b(k,179) - lu(k,1947) * b(k,222) + b(k,176) = b(k,176) - lu(k,1946) * b(k,222) + b(k,173) = b(k,173) - lu(k,1945) * b(k,222) + b(k,167) = b(k,167) - lu(k,1944) * b(k,222) + b(k,161) = b(k,161) - lu(k,1943) * b(k,222) + b(k,158) = b(k,158) - lu(k,1942) * b(k,222) + b(k,151) = b(k,151) - lu(k,1941) * b(k,222) + b(k,140) = b(k,140) - lu(k,1940) * b(k,222) + b(k,130) = b(k,130) - lu(k,1939) * b(k,222) + b(k,115) = b(k,115) - lu(k,1938) * b(k,222) + b(k,85) = b(k,85) - lu(k,1937) * b(k,222) + b(k,72) = b(k,72) - lu(k,1936) * b(k,222) + b(k,71) = b(k,71) - lu(k,1935) * b(k,222) + b(k,42) = b(k,42) - lu(k,1934) * b(k,222) + b(k,41) = b(k,41) - lu(k,1933) * b(k,222) + b(k,40) = b(k,40) - lu(k,1932) * b(k,222) + b(k,39) = b(k,39) - lu(k,1931) * b(k,222) + b(k,38) = b(k,38) - lu(k,1930) * b(k,222) + b(k,221) = b(k,221) * lu(k,1919) + b(k,220) = b(k,220) - lu(k,1918) * b(k,221) + b(k,219) = b(k,219) - lu(k,1917) * b(k,221) + b(k,218) = b(k,218) - lu(k,1916) * b(k,221) + b(k,217) = b(k,217) - lu(k,1915) * b(k,221) + b(k,216) = b(k,216) - lu(k,1914) * b(k,221) + b(k,215) = b(k,215) - lu(k,1913) * b(k,221) + b(k,214) = b(k,214) - lu(k,1912) * b(k,221) + b(k,213) = b(k,213) - lu(k,1911) * b(k,221) + b(k,212) = b(k,212) - lu(k,1910) * b(k,221) + b(k,210) = b(k,210) - lu(k,1909) * b(k,221) + b(k,209) = b(k,209) - lu(k,1908) * b(k,221) + b(k,208) = b(k,208) - lu(k,1907) * b(k,221) + b(k,207) = b(k,207) - lu(k,1906) * b(k,221) + b(k,206) = b(k,206) - lu(k,1905) * b(k,221) + b(k,205) = b(k,205) - lu(k,1904) * b(k,221) + b(k,204) = b(k,204) - lu(k,1903) * b(k,221) + b(k,203) = b(k,203) - lu(k,1902) * b(k,221) + b(k,202) = b(k,202) - lu(k,1901) * b(k,221) + b(k,201) = b(k,201) - lu(k,1900) * b(k,221) + b(k,200) = b(k,200) - lu(k,1899) * b(k,221) + b(k,199) = b(k,199) - lu(k,1898) * b(k,221) + b(k,198) = b(k,198) - lu(k,1897) * b(k,221) + b(k,197) = b(k,197) - lu(k,1896) * b(k,221) + b(k,196) = b(k,196) - lu(k,1895) * b(k,221) + b(k,195) = b(k,195) - lu(k,1894) * b(k,221) + b(k,194) = b(k,194) - lu(k,1893) * b(k,221) + b(k,193) = b(k,193) - lu(k,1892) * b(k,221) + b(k,191) = b(k,191) - lu(k,1891) * b(k,221) + b(k,190) = b(k,190) - lu(k,1890) * b(k,221) + b(k,189) = b(k,189) - lu(k,1889) * b(k,221) + b(k,186) = b(k,186) - lu(k,1888) * b(k,221) + b(k,184) = b(k,184) - lu(k,1887) * b(k,221) + b(k,183) = b(k,183) - lu(k,1886) * b(k,221) + b(k,182) = b(k,182) - lu(k,1885) * b(k,221) + b(k,177) = b(k,177) - lu(k,1884) * b(k,221) + b(k,176) = b(k,176) - lu(k,1883) * b(k,221) + b(k,175) = b(k,175) - lu(k,1882) * b(k,221) + b(k,174) = b(k,174) - lu(k,1881) * b(k,221) + b(k,172) = b(k,172) - lu(k,1880) * b(k,221) + b(k,171) = b(k,171) - lu(k,1879) * b(k,221) + b(k,170) = b(k,170) - lu(k,1878) * b(k,221) + b(k,168) = b(k,168) - lu(k,1877) * b(k,221) + b(k,167) = b(k,167) - lu(k,1876) * b(k,221) + b(k,166) = b(k,166) - lu(k,1875) * b(k,221) + b(k,165) = b(k,165) - lu(k,1874) * b(k,221) + b(k,164) = b(k,164) - lu(k,1873) * b(k,221) + b(k,163) = b(k,163) - lu(k,1872) * b(k,221) + b(k,162) = b(k,162) - lu(k,1871) * b(k,221) + b(k,160) = b(k,160) - lu(k,1870) * b(k,221) + b(k,159) = b(k,159) - lu(k,1869) * b(k,221) + b(k,158) = b(k,158) - lu(k,1868) * b(k,221) + b(k,156) = b(k,156) - lu(k,1867) * b(k,221) + b(k,154) = b(k,154) - lu(k,1866) * b(k,221) + b(k,153) = b(k,153) - lu(k,1865) * b(k,221) + b(k,152) = b(k,152) - lu(k,1864) * b(k,221) + b(k,151) = b(k,151) - lu(k,1863) * b(k,221) + b(k,149) = b(k,149) - lu(k,1862) * b(k,221) + b(k,148) = b(k,148) - lu(k,1861) * b(k,221) + b(k,139) = b(k,139) - lu(k,1860) * b(k,221) + b(k,137) = b(k,137) - lu(k,1859) * b(k,221) + b(k,135) = b(k,135) - lu(k,1858) * b(k,221) + b(k,134) = b(k,134) - lu(k,1857) * b(k,221) + b(k,133) = b(k,133) - lu(k,1856) * b(k,221) + b(k,131) = b(k,131) - lu(k,1855) * b(k,221) + b(k,130) = b(k,130) - lu(k,1854) * b(k,221) + b(k,129) = b(k,129) - lu(k,1853) * b(k,221) + b(k,128) = b(k,128) - lu(k,1852) * b(k,221) + b(k,127) = b(k,127) - lu(k,1851) * b(k,221) + b(k,126) = b(k,126) - lu(k,1850) * b(k,221) + b(k,125) = b(k,125) - lu(k,1849) * b(k,221) + b(k,124) = b(k,124) - lu(k,1848) * b(k,221) + b(k,122) = b(k,122) - lu(k,1847) * b(k,221) + b(k,121) = b(k,121) - lu(k,1846) * b(k,221) + b(k,120) = b(k,120) - lu(k,1845) * b(k,221) + b(k,119) = b(k,119) - lu(k,1844) * b(k,221) + b(k,118) = b(k,118) - lu(k,1843) * b(k,221) + b(k,117) = b(k,117) - lu(k,1842) * b(k,221) + b(k,111) = b(k,111) - lu(k,1841) * b(k,221) + b(k,109) = b(k,109) - lu(k,1840) * b(k,221) + b(k,108) = b(k,108) - lu(k,1839) * b(k,221) + b(k,105) = b(k,105) - lu(k,1838) * b(k,221) + b(k,104) = b(k,104) - lu(k,1837) * b(k,221) + b(k,96) = b(k,96) - lu(k,1836) * b(k,221) + b(k,81) = b(k,81) - lu(k,1835) * b(k,221) + b(k,63) = b(k,63) - lu(k,1834) * b(k,221) + b(k,52) = b(k,52) - lu(k,1833) * b(k,221) + b(k,51) = b(k,51) - lu(k,1832) * b(k,221) + b(k,50) = b(k,50) - lu(k,1831) * b(k,221) + b(k,48) = b(k,48) - lu(k,1830) * b(k,221) + b(k,47) = b(k,47) - lu(k,1829) * b(k,221) + b(k,46) = b(k,46) - lu(k,1828) * b(k,221) + b(k,45) = b(k,45) - lu(k,1827) * b(k,221) + b(k,42) = b(k,42) - lu(k,1826) * b(k,221) + b(k,41) = b(k,41) - lu(k,1825) * b(k,221) + b(k,40) = b(k,40) - lu(k,1824) * b(k,221) + b(k,39) = b(k,39) - lu(k,1823) * b(k,221) + b(k,38) = b(k,38) - lu(k,1822) * b(k,221) + end do + end subroutine lu_slv08 + subroutine lu_slv09( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,220) = b(k,220) * lu(k,1810) + b(k,219) = b(k,219) - lu(k,1809) * b(k,220) + b(k,218) = b(k,218) - lu(k,1808) * b(k,220) + b(k,217) = b(k,217) - lu(k,1807) * b(k,220) + b(k,216) = b(k,216) - lu(k,1806) * b(k,220) + b(k,215) = b(k,215) - lu(k,1805) * b(k,220) + b(k,214) = b(k,214) - lu(k,1804) * b(k,220) + b(k,212) = b(k,212) - lu(k,1803) * b(k,220) + b(k,211) = b(k,211) - lu(k,1802) * b(k,220) + b(k,179) = b(k,179) - lu(k,1801) * b(k,220) + b(k,166) = b(k,166) - lu(k,1800) * b(k,220) + b(k,141) = b(k,141) - lu(k,1799) * b(k,220) + b(k,107) = b(k,107) - lu(k,1798) * b(k,220) + b(k,86) = b(k,86) - lu(k,1797) * b(k,220) + b(k,219) = b(k,219) * lu(k,1784) + b(k,218) = b(k,218) - lu(k,1783) * b(k,219) + b(k,217) = b(k,217) - lu(k,1782) * b(k,219) + b(k,216) = b(k,216) - lu(k,1781) * b(k,219) + b(k,215) = b(k,215) - lu(k,1780) * b(k,219) + b(k,214) = b(k,214) - lu(k,1779) * b(k,219) + b(k,213) = b(k,213) - lu(k,1778) * b(k,219) + b(k,212) = b(k,212) - lu(k,1777) * b(k,219) + b(k,211) = b(k,211) - lu(k,1776) * b(k,219) + b(k,210) = b(k,210) - lu(k,1775) * b(k,219) + b(k,209) = b(k,209) - lu(k,1774) * b(k,219) + b(k,208) = b(k,208) - lu(k,1773) * b(k,219) + b(k,207) = b(k,207) - lu(k,1772) * b(k,219) + b(k,206) = b(k,206) - lu(k,1771) * b(k,219) + b(k,205) = b(k,205) - lu(k,1770) * b(k,219) + b(k,204) = b(k,204) - lu(k,1769) * b(k,219) + b(k,203) = b(k,203) - lu(k,1768) * b(k,219) + b(k,202) = b(k,202) - lu(k,1767) * b(k,219) + b(k,201) = b(k,201) - lu(k,1766) * b(k,219) + b(k,200) = b(k,200) - lu(k,1765) * b(k,219) + b(k,199) = b(k,199) - lu(k,1764) * b(k,219) + b(k,198) = b(k,198) - lu(k,1763) * b(k,219) + b(k,197) = b(k,197) - lu(k,1762) * b(k,219) + b(k,196) = b(k,196) - lu(k,1761) * b(k,219) + b(k,195) = b(k,195) - lu(k,1760) * b(k,219) + b(k,194) = b(k,194) - lu(k,1759) * b(k,219) + b(k,193) = b(k,193) - lu(k,1758) * b(k,219) + b(k,192) = b(k,192) - lu(k,1757) * b(k,219) + b(k,191) = b(k,191) - lu(k,1756) * b(k,219) + b(k,190) = b(k,190) - lu(k,1755) * b(k,219) + b(k,189) = b(k,189) - lu(k,1754) * b(k,219) + b(k,188) = b(k,188) - lu(k,1753) * b(k,219) + b(k,187) = b(k,187) - lu(k,1752) * b(k,219) + b(k,186) = b(k,186) - lu(k,1751) * b(k,219) + b(k,185) = b(k,185) - lu(k,1750) * b(k,219) + b(k,184) = b(k,184) - lu(k,1749) * b(k,219) + b(k,183) = b(k,183) - lu(k,1748) * b(k,219) + b(k,182) = b(k,182) - lu(k,1747) * b(k,219) + b(k,181) = b(k,181) - lu(k,1746) * b(k,219) + b(k,180) = b(k,180) - lu(k,1745) * b(k,219) + b(k,179) = b(k,179) - lu(k,1744) * b(k,219) + b(k,178) = b(k,178) - lu(k,1743) * b(k,219) + b(k,177) = b(k,177) - lu(k,1742) * b(k,219) + b(k,176) = b(k,176) - lu(k,1741) * b(k,219) + b(k,175) = b(k,175) - lu(k,1740) * b(k,219) + b(k,174) = b(k,174) - lu(k,1739) * b(k,219) + b(k,173) = b(k,173) - lu(k,1738) * b(k,219) + b(k,172) = b(k,172) - lu(k,1737) * b(k,219) + b(k,171) = b(k,171) - lu(k,1736) * b(k,219) + b(k,170) = b(k,170) - lu(k,1735) * b(k,219) + b(k,169) = b(k,169) - lu(k,1734) * b(k,219) + b(k,168) = b(k,168) - lu(k,1733) * b(k,219) + b(k,167) = b(k,167) - lu(k,1732) * b(k,219) + b(k,165) = b(k,165) - lu(k,1731) * b(k,219) + b(k,164) = b(k,164) - lu(k,1730) * b(k,219) + b(k,163) = b(k,163) - lu(k,1729) * b(k,219) + b(k,162) = b(k,162) - lu(k,1728) * b(k,219) + b(k,161) = b(k,161) - lu(k,1727) * b(k,219) + b(k,160) = b(k,160) - lu(k,1726) * b(k,219) + b(k,159) = b(k,159) - lu(k,1725) * b(k,219) + b(k,158) = b(k,158) - lu(k,1724) * b(k,219) + b(k,157) = b(k,157) - lu(k,1723) * b(k,219) + b(k,156) = b(k,156) - lu(k,1722) * b(k,219) + b(k,155) = b(k,155) - lu(k,1721) * b(k,219) + b(k,154) = b(k,154) - lu(k,1720) * b(k,219) + b(k,153) = b(k,153) - lu(k,1719) * b(k,219) + b(k,152) = b(k,152) - lu(k,1718) * b(k,219) + b(k,151) = b(k,151) - lu(k,1717) * b(k,219) + b(k,150) = b(k,150) - lu(k,1716) * b(k,219) + b(k,149) = b(k,149) - lu(k,1715) * b(k,219) + b(k,148) = b(k,148) - lu(k,1714) * b(k,219) + b(k,147) = b(k,147) - lu(k,1713) * b(k,219) + b(k,146) = b(k,146) - lu(k,1712) * b(k,219) + b(k,145) = b(k,145) - lu(k,1711) * b(k,219) + b(k,144) = b(k,144) - lu(k,1710) * b(k,219) + b(k,143) = b(k,143) - lu(k,1709) * b(k,219) + b(k,142) = b(k,142) - lu(k,1708) * b(k,219) + b(k,140) = b(k,140) - lu(k,1707) * b(k,219) + b(k,139) = b(k,139) - lu(k,1706) * b(k,219) + b(k,138) = b(k,138) - lu(k,1705) * b(k,219) + b(k,137) = b(k,137) - lu(k,1704) * b(k,219) + b(k,136) = b(k,136) - lu(k,1703) * b(k,219) + b(k,135) = b(k,135) - lu(k,1702) * b(k,219) + b(k,134) = b(k,134) - lu(k,1701) * b(k,219) + b(k,133) = b(k,133) - lu(k,1700) * b(k,219) + b(k,132) = b(k,132) - lu(k,1699) * b(k,219) + b(k,131) = b(k,131) - lu(k,1698) * b(k,219) + b(k,130) = b(k,130) - lu(k,1697) * b(k,219) + b(k,129) = b(k,129) - lu(k,1696) * b(k,219) + b(k,127) = b(k,127) - lu(k,1695) * b(k,219) + b(k,126) = b(k,126) - lu(k,1694) * b(k,219) + b(k,124) = b(k,124) - lu(k,1693) * b(k,219) + b(k,123) = b(k,123) - lu(k,1692) * b(k,219) + b(k,122) = b(k,122) - lu(k,1691) * b(k,219) + b(k,121) = b(k,121) - lu(k,1690) * b(k,219) + b(k,120) = b(k,120) - lu(k,1689) * b(k,219) + b(k,119) = b(k,119) - lu(k,1688) * b(k,219) + b(k,118) = b(k,118) - lu(k,1687) * b(k,219) + b(k,117) = b(k,117) - lu(k,1686) * b(k,219) + b(k,116) = b(k,116) - lu(k,1685) * b(k,219) + b(k,114) = b(k,114) - lu(k,1684) * b(k,219) + b(k,113) = b(k,113) - lu(k,1683) * b(k,219) + b(k,112) = b(k,112) - lu(k,1682) * b(k,219) + b(k,111) = b(k,111) - lu(k,1681) * b(k,219) + b(k,110) = b(k,110) - lu(k,1680) * b(k,219) + b(k,109) = b(k,109) - lu(k,1679) * b(k,219) + b(k,108) = b(k,108) - lu(k,1678) * b(k,219) + b(k,105) = b(k,105) - lu(k,1677) * b(k,219) + b(k,104) = b(k,104) - lu(k,1676) * b(k,219) + b(k,103) = b(k,103) - lu(k,1675) * b(k,219) + b(k,102) = b(k,102) - lu(k,1674) * b(k,219) + b(k,101) = b(k,101) - lu(k,1673) * b(k,219) + b(k,100) = b(k,100) - lu(k,1672) * b(k,219) + b(k,96) = b(k,96) - lu(k,1671) * b(k,219) + b(k,95) = b(k,95) - lu(k,1670) * b(k,219) + b(k,94) = b(k,94) - lu(k,1669) * b(k,219) + b(k,92) = b(k,92) - lu(k,1668) * b(k,219) + b(k,91) = b(k,91) - lu(k,1667) * b(k,219) + b(k,90) = b(k,90) - lu(k,1666) * b(k,219) + b(k,89) = b(k,89) - lu(k,1665) * b(k,219) + b(k,88) = b(k,88) - lu(k,1664) * b(k,219) + b(k,87) = b(k,87) - lu(k,1663) * b(k,219) + b(k,85) = b(k,85) - lu(k,1662) * b(k,219) + b(k,84) = b(k,84) - lu(k,1661) * b(k,219) + b(k,83) = b(k,83) - lu(k,1660) * b(k,219) + b(k,82) = b(k,82) - lu(k,1659) * b(k,219) + b(k,81) = b(k,81) - lu(k,1658) * b(k,219) + b(k,80) = b(k,80) - lu(k,1657) * b(k,219) + b(k,79) = b(k,79) - lu(k,1656) * b(k,219) + b(k,78) = b(k,78) - lu(k,1655) * b(k,219) + b(k,77) = b(k,77) - lu(k,1654) * b(k,219) + b(k,75) = b(k,75) - lu(k,1653) * b(k,219) + b(k,74) = b(k,74) - lu(k,1652) * b(k,219) + b(k,73) = b(k,73) - lu(k,1651) * b(k,219) + b(k,65) = b(k,65) - lu(k,1650) * b(k,219) + b(k,62) = b(k,62) - lu(k,1649) * b(k,219) + b(k,58) = b(k,58) - lu(k,1648) * b(k,219) + b(k,56) = b(k,56) - lu(k,1647) * b(k,219) + b(k,54) = b(k,54) - lu(k,1646) * b(k,219) + b(k,52) = b(k,52) - lu(k,1645) * b(k,219) + b(k,51) = b(k,51) - lu(k,1644) * b(k,219) + b(k,50) = b(k,50) - lu(k,1643) * b(k,219) + b(k,49) = b(k,49) - lu(k,1642) * b(k,219) + b(k,48) = b(k,48) - lu(k,1641) * b(k,219) + b(k,47) = b(k,47) - lu(k,1640) * b(k,219) + b(k,46) = b(k,46) - lu(k,1639) * b(k,219) + b(k,45) = b(k,45) - lu(k,1638) * b(k,219) + b(k,44) = b(k,44) - lu(k,1637) * b(k,219) + b(k,42) = b(k,42) - lu(k,1636) * b(k,219) + b(k,41) = b(k,41) - lu(k,1635) * b(k,219) + b(k,40) = b(k,40) - lu(k,1634) * b(k,219) + b(k,39) = b(k,39) - lu(k,1633) * b(k,219) + b(k,38) = b(k,38) - lu(k,1632) * b(k,219) + b(k,218) = b(k,218) * lu(k,1618) + b(k,217) = b(k,217) - lu(k,1617) * b(k,218) + b(k,216) = b(k,216) - lu(k,1616) * b(k,218) + b(k,215) = b(k,215) - lu(k,1615) * b(k,218) + b(k,214) = b(k,214) - lu(k,1614) * b(k,218) + b(k,213) = b(k,213) - lu(k,1613) * b(k,218) + b(k,212) = b(k,212) - lu(k,1612) * b(k,218) + b(k,204) = b(k,204) - lu(k,1611) * b(k,218) + b(k,178) = b(k,178) - lu(k,1610) * b(k,218) + b(k,171) = b(k,171) - lu(k,1609) * b(k,218) + b(k,147) = b(k,147) - lu(k,1608) * b(k,218) + b(k,132) = b(k,132) - lu(k,1607) * b(k,218) + b(k,116) = b(k,116) - lu(k,1606) * b(k,218) + b(k,103) = b(k,103) - lu(k,1605) * b(k,218) + b(k,93) = b(k,93) - lu(k,1604) * b(k,218) + b(k,92) = b(k,92) - lu(k,1603) * b(k,218) + b(k,91) = b(k,91) - lu(k,1602) * b(k,218) + b(k,90) = b(k,90) - lu(k,1601) * b(k,218) + b(k,87) = b(k,87) - lu(k,1600) * b(k,218) + b(k,77) = b(k,77) - lu(k,1599) * b(k,218) + b(k,72) = b(k,72) - lu(k,1598) * b(k,218) + b(k,70) = b(k,70) - lu(k,1597) * b(k,218) + b(k,69) = b(k,69) - lu(k,1596) * b(k,218) + b(k,68) = b(k,68) - lu(k,1595) * b(k,218) + b(k,67) = b(k,67) - lu(k,1594) * b(k,218) + b(k,61) = b(k,61) - lu(k,1593) * b(k,218) + b(k,60) = b(k,60) - lu(k,1592) * b(k,218) + b(k,59) = b(k,59) - lu(k,1591) * b(k,218) + b(k,57) = b(k,57) - lu(k,1590) * b(k,218) + b(k,55) = b(k,55) - lu(k,1589) * b(k,218) + b(k,217) = b(k,217) * lu(k,1574) + b(k,216) = b(k,216) - lu(k,1573) * b(k,217) + b(k,215) = b(k,215) - lu(k,1572) * b(k,217) + b(k,214) = b(k,214) - lu(k,1571) * b(k,217) + b(k,213) = b(k,213) - lu(k,1570) * b(k,217) + b(k,212) = b(k,212) - lu(k,1569) * b(k,217) + b(k,211) = b(k,211) - lu(k,1568) * b(k,217) + b(k,210) = b(k,210) - lu(k,1567) * b(k,217) + b(k,209) = b(k,209) - lu(k,1566) * b(k,217) + b(k,203) = b(k,203) - lu(k,1565) * b(k,217) + b(k,199) = b(k,199) - lu(k,1564) * b(k,217) + b(k,193) = b(k,193) - lu(k,1563) * b(k,217) + b(k,189) = b(k,189) - lu(k,1562) * b(k,217) + b(k,185) = b(k,185) - lu(k,1561) * b(k,217) + b(k,184) = b(k,184) - lu(k,1560) * b(k,217) + b(k,179) = b(k,179) - lu(k,1559) * b(k,217) + b(k,177) = b(k,177) - lu(k,1558) * b(k,217) + b(k,166) = b(k,166) - lu(k,1557) * b(k,217) + b(k,165) = b(k,165) - lu(k,1556) * b(k,217) + b(k,162) = b(k,162) - lu(k,1555) * b(k,217) + b(k,157) = b(k,157) - lu(k,1554) * b(k,217) + b(k,151) = b(k,151) - lu(k,1553) * b(k,217) + b(k,144) = b(k,144) - lu(k,1552) * b(k,217) + b(k,141) = b(k,141) - lu(k,1551) * b(k,217) + b(k,138) = b(k,138) - lu(k,1550) * b(k,217) + b(k,137) = b(k,137) - lu(k,1549) * b(k,217) + b(k,131) = b(k,131) - lu(k,1548) * b(k,217) + b(k,130) = b(k,130) - lu(k,1547) * b(k,217) + b(k,97) = b(k,97) - lu(k,1546) * b(k,217) + b(k,93) = b(k,93) - lu(k,1545) * b(k,217) + b(k,66) = b(k,66) - lu(k,1544) * b(k,217) + end do + end subroutine lu_slv09 + subroutine lu_slv10( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,216) = b(k,216) * lu(k,1528) + b(k,215) = b(k,215) - lu(k,1527) * b(k,216) + b(k,214) = b(k,214) - lu(k,1526) * b(k,216) + b(k,213) = b(k,213) - lu(k,1525) * b(k,216) + b(k,212) = b(k,212) - lu(k,1524) * b(k,216) + b(k,204) = b(k,204) - lu(k,1523) * b(k,216) + b(k,199) = b(k,199) - lu(k,1522) * b(k,216) + b(k,189) = b(k,189) - lu(k,1521) * b(k,216) + b(k,176) = b(k,176) - lu(k,1520) * b(k,216) + b(k,171) = b(k,171) - lu(k,1519) * b(k,216) + b(k,125) = b(k,125) - lu(k,1518) * b(k,216) + b(k,215) = b(k,215) * lu(k,1504) + b(k,212) = b(k,212) - lu(k,1503) * b(k,215) + b(k,211) = b(k,211) - lu(k,1502) * b(k,215) + b(k,199) = b(k,199) - lu(k,1501) * b(k,215) + b(k,195) = b(k,195) - lu(k,1500) * b(k,215) + b(k,179) = b(k,179) - lu(k,1499) * b(k,215) + b(k,161) = b(k,161) - lu(k,1498) * b(k,215) + b(k,157) = b(k,157) - lu(k,1497) * b(k,215) + b(k,128) = b(k,128) - lu(k,1496) * b(k,215) + b(k,72) = b(k,72) - lu(k,1495) * b(k,215) + b(k,71) = b(k,71) - lu(k,1494) * b(k,215) + b(k,214) = b(k,214) * lu(k,1480) + b(k,213) = b(k,213) - lu(k,1479) * b(k,214) + b(k,204) = b(k,204) - lu(k,1478) * b(k,214) + b(k,178) = b(k,178) - lu(k,1477) * b(k,214) + b(k,99) = b(k,99) - lu(k,1476) * b(k,214) + b(k,213) = b(k,213) * lu(k,1462) + b(k,204) = b(k,204) - lu(k,1461) * b(k,213) + b(k,199) = b(k,199) - lu(k,1460) * b(k,213) + b(k,189) = b(k,189) - lu(k,1459) * b(k,213) + b(k,178) = b(k,178) - lu(k,1458) * b(k,213) + b(k,99) = b(k,99) - lu(k,1457) * b(k,213) + b(k,212) = b(k,212) * lu(k,1446) + b(k,199) = b(k,199) - lu(k,1445) * b(k,212) + b(k,171) = b(k,171) - lu(k,1444) * b(k,212) + b(k,211) = b(k,211) * lu(k,1430) + b(k,179) = b(k,179) - lu(k,1429) * b(k,211) + b(k,161) = b(k,161) - lu(k,1428) * b(k,211) + b(k,107) = b(k,107) - lu(k,1427) * b(k,211) + b(k,210) = b(k,210) * lu(k,1413) + b(k,209) = b(k,209) - lu(k,1412) * b(k,210) + b(k,208) = b(k,208) - lu(k,1411) * b(k,210) + b(k,207) = b(k,207) - lu(k,1410) * b(k,210) + b(k,206) = b(k,206) - lu(k,1409) * b(k,210) + b(k,205) = b(k,205) - lu(k,1408) * b(k,210) + b(k,203) = b(k,203) - lu(k,1407) * b(k,210) + b(k,202) = b(k,202) - lu(k,1406) * b(k,210) + b(k,201) = b(k,201) - lu(k,1405) * b(k,210) + b(k,200) = b(k,200) - lu(k,1404) * b(k,210) + b(k,199) = b(k,199) - lu(k,1403) * b(k,210) + b(k,195) = b(k,195) - lu(k,1402) * b(k,210) + b(k,193) = b(k,193) - lu(k,1401) * b(k,210) + b(k,189) = b(k,189) - lu(k,1400) * b(k,210) + b(k,187) = b(k,187) - lu(k,1399) * b(k,210) + b(k,184) = b(k,184) - lu(k,1398) * b(k,210) + b(k,158) = b(k,158) - lu(k,1397) * b(k,210) + b(k,149) = b(k,149) - lu(k,1396) * b(k,210) + b(k,138) = b(k,138) - lu(k,1395) * b(k,210) + b(k,110) = b(k,110) - lu(k,1394) * b(k,210) + b(k,209) = b(k,209) * lu(k,1380) + b(k,203) = b(k,203) - lu(k,1379) * b(k,209) + b(k,199) = b(k,199) - lu(k,1378) * b(k,209) + b(k,193) = b(k,193) - lu(k,1377) * b(k,209) + b(k,189) = b(k,189) - lu(k,1376) * b(k,209) + b(k,158) = b(k,158) - lu(k,1375) * b(k,209) + b(k,149) = b(k,149) - lu(k,1374) * b(k,209) + b(k,144) = b(k,144) - lu(k,1373) * b(k,209) + b(k,208) = b(k,208) * lu(k,1357) + b(k,207) = b(k,207) - lu(k,1356) * b(k,208) + b(k,203) = b(k,203) - lu(k,1355) * b(k,208) + b(k,199) = b(k,199) - lu(k,1354) * b(k,208) + b(k,193) = b(k,193) - lu(k,1353) * b(k,208) + b(k,190) = b(k,190) - lu(k,1352) * b(k,208) + b(k,189) = b(k,189) - lu(k,1351) * b(k,208) + b(k,188) = b(k,188) - lu(k,1350) * b(k,208) + b(k,176) = b(k,176) - lu(k,1349) * b(k,208) + b(k,207) = b(k,207) * lu(k,1335) + b(k,203) = b(k,203) - lu(k,1334) * b(k,207) + b(k,199) = b(k,199) - lu(k,1333) * b(k,207) + b(k,198) = b(k,198) - lu(k,1332) * b(k,207) + b(k,195) = b(k,195) - lu(k,1331) * b(k,207) + b(k,193) = b(k,193) - lu(k,1330) * b(k,207) + b(k,192) = b(k,192) - lu(k,1329) * b(k,207) + b(k,169) = b(k,169) - lu(k,1328) * b(k,207) + b(k,104) = b(k,104) - lu(k,1327) * b(k,207) + b(k,206) = b(k,206) * lu(k,1310) + b(k,203) = b(k,203) - lu(k,1309) * b(k,206) + b(k,202) = b(k,202) - lu(k,1308) * b(k,206) + b(k,200) = b(k,200) - lu(k,1307) * b(k,206) + b(k,199) = b(k,199) - lu(k,1306) * b(k,206) + b(k,198) = b(k,198) - lu(k,1305) * b(k,206) + b(k,195) = b(k,195) - lu(k,1304) * b(k,206) + b(k,193) = b(k,193) - lu(k,1303) * b(k,206) + b(k,192) = b(k,192) - lu(k,1302) * b(k,206) + b(k,189) = b(k,189) - lu(k,1301) * b(k,206) + b(k,184) = b(k,184) - lu(k,1300) * b(k,206) + b(k,177) = b(k,177) - lu(k,1299) * b(k,206) + b(k,174) = b(k,174) - lu(k,1298) * b(k,206) + b(k,169) = b(k,169) - lu(k,1297) * b(k,206) + b(k,159) = b(k,159) - lu(k,1296) * b(k,206) + b(k,146) = b(k,146) - lu(k,1295) * b(k,206) + b(k,143) = b(k,143) - lu(k,1294) * b(k,206) + b(k,110) = b(k,110) - lu(k,1293) * b(k,206) + b(k,84) = b(k,84) - lu(k,1292) * b(k,206) + b(k,205) = b(k,205) * lu(k,1275) + b(k,203) = b(k,203) - lu(k,1274) * b(k,205) + b(k,202) = b(k,202) - lu(k,1273) * b(k,205) + b(k,200) = b(k,200) - lu(k,1272) * b(k,205) + b(k,199) = b(k,199) - lu(k,1271) * b(k,205) + b(k,198) = b(k,198) - lu(k,1270) * b(k,205) + b(k,195) = b(k,195) - lu(k,1269) * b(k,205) + b(k,193) = b(k,193) - lu(k,1268) * b(k,205) + b(k,192) = b(k,192) - lu(k,1267) * b(k,205) + b(k,189) = b(k,189) - lu(k,1266) * b(k,205) + b(k,169) = b(k,169) - lu(k,1265) * b(k,205) + b(k,159) = b(k,159) - lu(k,1264) * b(k,205) + b(k,145) = b(k,145) - lu(k,1263) * b(k,205) + b(k,204) = b(k,204) * lu(k,1251) + b(k,178) = b(k,178) - lu(k,1250) * b(k,204) + b(k,99) = b(k,99) - lu(k,1249) * b(k,204) + b(k,203) = b(k,203) * lu(k,1240) + b(k,199) = b(k,199) - lu(k,1239) * b(k,203) + b(k,202) = b(k,202) * lu(k,1227) + b(k,199) = b(k,199) - lu(k,1226) * b(k,202) + b(k,189) = b(k,189) - lu(k,1225) * b(k,202) + b(k,176) = b(k,176) - lu(k,1224) * b(k,202) + b(k,201) = b(k,201) * lu(k,1209) + b(k,200) = b(k,200) - lu(k,1208) * b(k,201) + b(k,199) = b(k,199) - lu(k,1207) * b(k,201) + b(k,195) = b(k,195) - lu(k,1206) * b(k,201) + b(k,189) = b(k,189) - lu(k,1205) * b(k,201) + b(k,187) = b(k,187) - lu(k,1204) * b(k,201) + b(k,174) = b(k,174) - lu(k,1203) * b(k,201) + b(k,169) = b(k,169) - lu(k,1202) * b(k,201) + b(k,159) = b(k,159) - lu(k,1201) * b(k,201) + b(k,123) = b(k,123) - lu(k,1200) * b(k,201) + b(k,119) = b(k,119) - lu(k,1199) * b(k,201) + b(k,200) = b(k,200) * lu(k,1187) + b(k,199) = b(k,199) - lu(k,1186) * b(k,200) + b(k,195) = b(k,195) - lu(k,1185) * b(k,200) + b(k,193) = b(k,193) - lu(k,1184) * b(k,200) + b(k,189) = b(k,189) - lu(k,1183) * b(k,200) + b(k,184) = b(k,184) - lu(k,1182) * b(k,200) + b(k,169) = b(k,169) - lu(k,1181) * b(k,200) + b(k,81) = b(k,81) - lu(k,1180) * b(k,200) + b(k,199) = b(k,199) * lu(k,1175) + b(k,189) = b(k,189) - lu(k,1174) * b(k,199) + b(k,198) = b(k,198) * lu(k,1164) + b(k,193) = b(k,193) - lu(k,1163) * b(k,198) + b(k,169) = b(k,169) - lu(k,1162) * b(k,198) + b(k,118) = b(k,118) - lu(k,1161) * b(k,198) + b(k,197) = b(k,197) * lu(k,1147) + b(k,195) = b(k,195) - lu(k,1146) * b(k,197) + b(k,194) = b(k,194) - lu(k,1145) * b(k,197) + b(k,189) = b(k,189) - lu(k,1144) * b(k,197) + b(k,183) = b(k,183) - lu(k,1143) * b(k,197) + b(k,169) = b(k,169) - lu(k,1142) * b(k,197) + b(k,153) = b(k,153) - lu(k,1141) * b(k,197) + b(k,88) = b(k,88) - lu(k,1140) * b(k,197) + b(k,196) = b(k,196) * lu(k,1124) + b(k,194) = b(k,194) - lu(k,1123) * b(k,196) + b(k,191) = b(k,191) - lu(k,1122) * b(k,196) + b(k,186) = b(k,186) - lu(k,1121) * b(k,196) + b(k,183) = b(k,183) - lu(k,1120) * b(k,196) + b(k,169) = b(k,169) - lu(k,1119) * b(k,196) + b(k,150) = b(k,150) - lu(k,1118) * b(k,196) + b(k,133) = b(k,133) - lu(k,1117) * b(k,196) + b(k,195) = b(k,195) * lu(k,1110) + b(k,189) = b(k,189) - lu(k,1109) * b(k,195) + b(k,184) = b(k,184) - lu(k,1108) * b(k,195) + b(k,194) = b(k,194) * lu(k,1097) + b(k,189) = b(k,189) - lu(k,1096) * b(k,194) + b(k,183) = b(k,183) - lu(k,1095) * b(k,194) + b(k,193) = b(k,193) * lu(k,1089) + b(k,192) = b(k,192) * lu(k,1075) + b(k,190) = b(k,190) - lu(k,1074) * b(k,192) + b(k,183) = b(k,183) - lu(k,1073) * b(k,192) + b(k,88) = b(k,88) - lu(k,1072) * b(k,192) + b(k,191) = b(k,191) * lu(k,1060) + b(k,186) = b(k,186) - lu(k,1059) * b(k,191) + b(k,169) = b(k,169) - lu(k,1058) * b(k,191) + b(k,150) = b(k,150) - lu(k,1057) * b(k,191) + b(k,117) = b(k,117) - lu(k,1056) * b(k,191) + b(k,190) = b(k,190) * lu(k,1047) + b(k,189) = b(k,189) * lu(k,1043) + b(k,72) = b(k,72) - lu(k,1042) * b(k,189) + b(k,71) = b(k,71) - lu(k,1041) * b(k,189) + b(k,188) = b(k,188) * lu(k,1023) + b(k,176) = b(k,176) - lu(k,1022) * b(k,188) + b(k,174) = b(k,174) - lu(k,1021) * b(k,188) + b(k,168) = b(k,168) - lu(k,1020) * b(k,188) + b(k,158) = b(k,158) - lu(k,1019) * b(k,188) + b(k,187) = b(k,187) * lu(k,1007) + b(k,184) = b(k,184) - lu(k,1006) * b(k,187) + b(k,177) = b(k,177) - lu(k,1005) * b(k,187) + b(k,174) = b(k,174) - lu(k,1004) * b(k,187) + b(k,146) = b(k,146) - lu(k,1003) * b(k,187) + b(k,186) = b(k,186) * lu(k,995) + b(k,185) = b(k,185) * lu(k,985) + b(k,172) = b(k,172) - lu(k,984) * b(k,185) + b(k,76) = b(k,76) - lu(k,983) * b(k,185) + end do + end subroutine lu_slv10 + subroutine lu_slv11( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,184) = b(k,184) * lu(k,978) + b(k,38) = b(k,38) - lu(k,977) * b(k,184) + b(k,183) = b(k,183) * lu(k,971) + b(k,182) = b(k,182) * lu(k,960) + b(k,175) = b(k,175) - lu(k,959) * b(k,182) + b(k,156) = b(k,156) - lu(k,958) * b(k,182) + b(k,155) = b(k,155) - lu(k,957) * b(k,182) + b(k,152) = b(k,152) - lu(k,956) * b(k,182) + b(k,136) = b(k,136) - lu(k,955) * b(k,182) + b(k,181) = b(k,181) * lu(k,936) + b(k,176) = b(k,176) - lu(k,935) * b(k,181) + b(k,115) = b(k,115) - lu(k,934) * b(k,181) + b(k,85) = b(k,85) - lu(k,933) * b(k,181) + b(k,45) = b(k,45) - lu(k,932) * b(k,181) + b(k,42) = b(k,42) - lu(k,931) * b(k,181) + b(k,41) = b(k,41) - lu(k,930) * b(k,181) + b(k,40) = b(k,40) - lu(k,929) * b(k,181) + b(k,39) = b(k,39) - lu(k,928) * b(k,181) + b(k,38) = b(k,38) - lu(k,927) * b(k,181) + b(k,180) = b(k,180) * lu(k,908) + b(k,176) = b(k,176) - lu(k,907) * b(k,180) + b(k,115) = b(k,115) - lu(k,906) * b(k,180) + b(k,85) = b(k,85) - lu(k,905) * b(k,180) + b(k,50) = b(k,50) - lu(k,904) * b(k,180) + b(k,42) = b(k,42) - lu(k,903) * b(k,180) + b(k,41) = b(k,41) - lu(k,902) * b(k,180) + b(k,40) = b(k,40) - lu(k,901) * b(k,180) + b(k,39) = b(k,39) - lu(k,900) * b(k,180) + b(k,38) = b(k,38) - lu(k,899) * b(k,180) + b(k,179) = b(k,179) * lu(k,893) + b(k,94) = b(k,94) - lu(k,892) * b(k,179) + b(k,178) = b(k,178) * lu(k,883) + b(k,99) = b(k,99) - lu(k,882) * b(k,178) + b(k,177) = b(k,177) * lu(k,873) + b(k,176) = b(k,176) * lu(k,868) + b(k,175) = b(k,175) * lu(k,859) + b(k,169) = b(k,169) - lu(k,858) * b(k,175) + b(k,111) = b(k,111) - lu(k,857) * b(k,175) + b(k,95) = b(k,95) - lu(k,856) * b(k,175) + b(k,174) = b(k,174) * lu(k,850) + b(k,173) = b(k,173) * lu(k,834) + b(k,47) = b(k,47) - lu(k,833) * b(k,173) + b(k,42) = b(k,42) - lu(k,832) * b(k,173) + b(k,41) = b(k,41) - lu(k,831) * b(k,173) + b(k,172) = b(k,172) * lu(k,824) + b(k,76) = b(k,76) - lu(k,823) * b(k,172) + b(k,171) = b(k,171) * lu(k,815) + b(k,170) = b(k,170) * lu(k,804) + b(k,120) = b(k,120) - lu(k,803) * b(k,170) + b(k,169) = b(k,169) * lu(k,799) + b(k,168) = b(k,168) * lu(k,789) + b(k,139) = b(k,139) - lu(k,788) * b(k,168) + b(k,167) = b(k,167) * lu(k,780) + b(k,128) = b(k,128) - lu(k,779) * b(k,167) + b(k,63) = b(k,63) - lu(k,778) * b(k,167) + b(k,166) = b(k,166) * lu(k,770) + b(k,86) = b(k,86) - lu(k,769) * b(k,166) + b(k,165) = b(k,165) * lu(k,761) + b(k,164) = b(k,164) * lu(k,750) + b(k,162) = b(k,162) - lu(k,749) * b(k,164) + b(k,160) = b(k,160) - lu(k,748) * b(k,164) + b(k,146) = b(k,146) - lu(k,747) * b(k,164) + b(k,129) = b(k,129) - lu(k,746) * b(k,164) + b(k,106) = b(k,106) - lu(k,745) * b(k,164) + b(k,98) = b(k,98) - lu(k,744) * b(k,164) + b(k,163) = b(k,163) * lu(k,734) + b(k,162) = b(k,162) - lu(k,733) * b(k,163) + b(k,154) = b(k,154) - lu(k,732) * b(k,163) + b(k,146) = b(k,146) - lu(k,731) * b(k,163) + b(k,129) = b(k,129) - lu(k,730) * b(k,163) + b(k,98) = b(k,98) - lu(k,729) * b(k,163) + b(k,162) = b(k,162) * lu(k,723) + b(k,161) = b(k,161) * lu(k,716) + b(k,160) = b(k,160) * lu(k,705) + b(k,146) = b(k,146) - lu(k,704) * b(k,160) + b(k,129) = b(k,129) - lu(k,703) * b(k,160) + b(k,106) = b(k,106) - lu(k,702) * b(k,160) + b(k,98) = b(k,98) - lu(k,701) * b(k,160) + b(k,159) = b(k,159) * lu(k,694) + b(k,65) = b(k,65) - lu(k,693) * b(k,159) + b(k,158) = b(k,158) * lu(k,688) + b(k,157) = b(k,157) * lu(k,680) + b(k,93) = b(k,93) - lu(k,679) * b(k,157) + b(k,156) = b(k,156) * lu(k,672) + b(k,105) = b(k,105) - lu(k,671) * b(k,156) + b(k,155) = b(k,155) * lu(k,661) + b(k,136) = b(k,136) - lu(k,660) * b(k,155) + b(k,154) = b(k,154) * lu(k,650) + b(k,146) = b(k,146) - lu(k,649) * b(k,154) + b(k,129) = b(k,129) - lu(k,648) * b(k,154) + b(k,98) = b(k,98) - lu(k,647) * b(k,154) + b(k,153) = b(k,153) * lu(k,637) + b(k,152) = b(k,152) * lu(k,627) + b(k,136) = b(k,136) - lu(k,626) * b(k,152) + b(k,151) = b(k,151) * lu(k,620) + b(k,130) = b(k,130) - lu(k,619) * b(k,151) + b(k,96) = b(k,96) - lu(k,618) * b(k,151) + b(k,150) = b(k,150) * lu(k,612) + b(k,149) = b(k,149) * lu(k,605) + b(k,148) = b(k,148) * lu(k,598) + b(k,147) = b(k,147) * lu(k,589) + b(k,146) = b(k,146) * lu(k,585) + b(k,145) = b(k,145) * lu(k,576) + b(k,144) = b(k,144) * lu(k,567) + b(k,143) = b(k,143) * lu(k,559) + b(k,142) = b(k,142) * lu(k,551) + b(k,141) = b(k,141) * lu(k,543) + b(k,140) = b(k,140) * lu(k,535) + b(k,139) = b(k,139) * lu(k,527) + b(k,138) = b(k,138) * lu(k,519) + b(k,137) = b(k,137) * lu(k,513) + b(k,66) = b(k,66) - lu(k,512) * b(k,137) + b(k,136) = b(k,136) * lu(k,507) + b(k,135) = b(k,135) * lu(k,500) + b(k,122) = b(k,122) - lu(k,499) * b(k,135) + b(k,134) = b(k,134) * lu(k,492) + b(k,129) = b(k,129) - lu(k,491) * b(k,134) + b(k,121) = b(k,121) - lu(k,490) * b(k,134) + b(k,133) = b(k,133) * lu(k,483) + b(k,132) = b(k,132) * lu(k,476) + b(k,131) = b(k,131) * lu(k,469) + b(k,130) = b(k,130) * lu(k,465) + b(k,129) = b(k,129) * lu(k,462) + b(k,128) = b(k,128) * lu(k,457) + b(k,127) = b(k,127) * lu(k,451) + b(k,126) = b(k,126) * lu(k,445) + b(k,108) = b(k,108) - lu(k,444) * b(k,126) + b(k,125) = b(k,125) * lu(k,438) + b(k,124) = b(k,124) * lu(k,432) + b(k,109) = b(k,109) - lu(k,431) * b(k,124) + b(k,89) = b(k,89) - lu(k,430) * b(k,124) + b(k,123) = b(k,123) * lu(k,424) + b(k,122) = b(k,122) * lu(k,418) + b(k,121) = b(k,121) * lu(k,412) + b(k,120) = b(k,120) * lu(k,406) + b(k,119) = b(k,119) * lu(k,400) + b(k,118) = b(k,118) * lu(k,394) + b(k,117) = b(k,117) * lu(k,388) + b(k,116) = b(k,116) * lu(k,382) + b(k,115) = b(k,115) * lu(k,376) + b(k,114) = b(k,114) * lu(k,368) + b(k,113) = b(k,113) * lu(k,360) + b(k,112) = b(k,112) * lu(k,352) + b(k,111) = b(k,111) * lu(k,347) + b(k,110) = b(k,110) * lu(k,344) + b(k,109) = b(k,109) * lu(k,339) + b(k,89) = b(k,89) - lu(k,338) * b(k,109) + b(k,108) = b(k,108) * lu(k,333) + b(k,107) = b(k,107) * lu(k,328) + b(k,106) = b(k,106) * lu(k,323) + b(k,105) = b(k,105) * lu(k,318) + b(k,104) = b(k,104) * lu(k,313) + b(k,103) = b(k,103) * lu(k,307) + b(k,87) = b(k,87) - lu(k,306) * b(k,103) + b(k,102) = b(k,102) * lu(k,300) + b(k,101) = b(k,101) * lu(k,294) + b(k,100) = b(k,100) * lu(k,288) + b(k,99) = b(k,99) * lu(k,285) + b(k,98) = b(k,98) * lu(k,282) + b(k,97) = b(k,97) * lu(k,276) + b(k,96) = b(k,96) * lu(k,272) + b(k,95) = b(k,95) * lu(k,268) + b(k,94) = b(k,94) * lu(k,264) + b(k,64) = b(k,64) - lu(k,263) * b(k,94) + b(k,93) = b(k,93) * lu(k,259) + b(k,92) = b(k,92) * lu(k,254) + b(k,87) = b(k,87) - lu(k,253) * b(k,92) + b(k,91) = b(k,91) * lu(k,249) + b(k,90) = b(k,90) * lu(k,244) + b(k,89) = b(k,89) * lu(k,241) + b(k,88) = b(k,88) * lu(k,238) + b(k,87) = b(k,87) * lu(k,235) + b(k,86) = b(k,86) * lu(k,232) + b(k,85) = b(k,85) * lu(k,229) + b(k,84) = b(k,84) * lu(k,224) + b(k,83) = b(k,83) * lu(k,219) + b(k,82) = b(k,82) * lu(k,211) + b(k,80) = b(k,80) - lu(k,210) * b(k,82) + b(k,52) = b(k,52) - lu(k,209) * b(k,82) + b(k,81) = b(k,81) * lu(k,206) + b(k,80) = b(k,80) * lu(k,202) + b(k,79) = b(k,79) * lu(k,197) + b(k,78) = b(k,78) * lu(k,190) + b(k,51) = b(k,51) - lu(k,189) * b(k,78) + b(k,77) = b(k,77) * lu(k,185) + b(k,76) = b(k,76) * lu(k,183) + b(k,75) = b(k,75) * lu(k,178) + b(k,74) = b(k,74) * lu(k,174) + b(k,73) = b(k,73) * lu(k,168) + b(k,46) = b(k,46) - lu(k,167) * b(k,73) + b(k,72) = b(k,72) * lu(k,165) + b(k,71) = b(k,71) - lu(k,164) * b(k,72) + b(k,71) = b(k,71) * lu(k,162) + b(k,70) = b(k,70) * lu(k,157) + b(k,69) = b(k,69) * lu(k,152) + b(k,68) = b(k,68) * lu(k,147) + b(k,67) = b(k,67) * lu(k,142) + b(k,66) = b(k,66) * lu(k,139) + b(k,65) = b(k,65) * lu(k,136) + b(k,64) = b(k,64) * lu(k,133) + b(k,63) = b(k,63) * lu(k,130) + end do + end subroutine lu_slv11 + subroutine lu_slv12( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,62) = b(k,62) * lu(k,126) + b(k,61) = b(k,61) * lu(k,122) + b(k,60) = b(k,60) * lu(k,118) + b(k,59) = b(k,59) * lu(k,114) + b(k,58) = b(k,58) * lu(k,110) + b(k,57) = b(k,57) * lu(k,106) + b(k,56) = b(k,56) * lu(k,103) + b(k,55) = b(k,55) * lu(k,100) + b(k,54) = b(k,54) * lu(k,97) + b(k,53) = b(k,53) * lu(k,94) + b(k,52) = b(k,52) * lu(k,93) + b(k,42) = b(k,42) - lu(k,92) * b(k,52) + b(k,41) = b(k,41) - lu(k,91) * b(k,52) + b(k,40) = b(k,40) - lu(k,90) * b(k,52) + b(k,39) = b(k,39) - lu(k,89) * b(k,52) + b(k,38) = b(k,38) - lu(k,88) * b(k,52) + b(k,51) = b(k,51) * lu(k,87) + b(k,42) = b(k,42) - lu(k,86) * b(k,51) + b(k,41) = b(k,41) - lu(k,85) * b(k,51) + b(k,40) = b(k,40) - lu(k,84) * b(k,51) + b(k,39) = b(k,39) - lu(k,83) * b(k,51) + b(k,38) = b(k,38) - lu(k,82) * b(k,51) + b(k,50) = b(k,50) * lu(k,81) + b(k,42) = b(k,42) - lu(k,80) * b(k,50) + b(k,41) = b(k,41) - lu(k,79) * b(k,50) + b(k,40) = b(k,40) - lu(k,78) * b(k,50) + b(k,39) = b(k,39) - lu(k,77) * b(k,50) + b(k,38) = b(k,38) - lu(k,76) * b(k,50) + b(k,49) = b(k,49) * lu(k,75) + b(k,48) = b(k,48) - lu(k,74) * b(k,49) + b(k,48) = b(k,48) * lu(k,73) + b(k,42) = b(k,42) - lu(k,72) * b(k,48) + b(k,41) = b(k,41) - lu(k,71) * b(k,48) + b(k,40) = b(k,40) - lu(k,70) * b(k,48) + b(k,39) = b(k,39) - lu(k,69) * b(k,48) + b(k,38) = b(k,38) - lu(k,68) * b(k,48) + b(k,47) = b(k,47) * lu(k,67) + b(k,42) = b(k,42) - lu(k,66) * b(k,47) + b(k,41) = b(k,41) - lu(k,65) * b(k,47) + b(k,40) = b(k,40) - lu(k,64) * b(k,47) + b(k,39) = b(k,39) - lu(k,63) * b(k,47) + b(k,38) = b(k,38) - lu(k,62) * b(k,47) + b(k,46) = b(k,46) * lu(k,61) + b(k,42) = b(k,42) - lu(k,60) * b(k,46) + b(k,41) = b(k,41) - lu(k,59) * b(k,46) + b(k,40) = b(k,40) - lu(k,58) * b(k,46) + b(k,39) = b(k,39) - lu(k,57) * b(k,46) + b(k,38) = b(k,38) - lu(k,56) * b(k,46) + b(k,45) = b(k,45) * lu(k,55) + b(k,42) = b(k,42) - lu(k,54) * b(k,45) + b(k,41) = b(k,41) - lu(k,53) * b(k,45) + b(k,40) = b(k,40) - lu(k,52) * b(k,45) + b(k,39) = b(k,39) - lu(k,51) * b(k,45) + b(k,38) = b(k,38) - lu(k,50) * b(k,45) + b(k,44) = b(k,44) * lu(k,49) + b(k,42) = b(k,42) - lu(k,48) * b(k,44) + b(k,41) = b(k,41) - lu(k,47) * b(k,44) + b(k,40) = b(k,40) - lu(k,46) * b(k,44) + b(k,39) = b(k,39) - lu(k,45) * b(k,44) + b(k,38) = b(k,38) - lu(k,44) * b(k,44) + b(k,43) = b(k,43) * lu(k,43) + b(k,42) = b(k,42) * lu(k,42) + b(k,41) = b(k,41) * lu(k,41) + b(k,40) = b(k,40) * lu(k,40) + b(k,39) = b(k,39) * lu(k,39) + b(k,38) = b(k,38) * lu(k,38) + b(k,37) = b(k,37) * lu(k,37) + b(k,36) = b(k,36) * lu(k,36) + b(k,35) = b(k,35) * lu(k,35) + b(k,34) = b(k,34) * lu(k,34) + b(k,33) = b(k,33) * lu(k,33) + b(k,32) = b(k,32) * lu(k,32) + b(k,31) = b(k,31) * lu(k,31) + b(k,30) = b(k,30) * lu(k,30) + b(k,29) = b(k,29) * lu(k,29) + b(k,28) = b(k,28) * lu(k,28) + b(k,27) = b(k,27) * lu(k,27) + b(k,26) = b(k,26) * lu(k,26) + b(k,25) = b(k,25) * lu(k,25) + b(k,24) = b(k,24) * lu(k,24) + b(k,23) = b(k,23) * lu(k,23) + b(k,22) = b(k,22) * lu(k,22) + b(k,21) = b(k,21) * lu(k,21) + b(k,20) = b(k,20) * lu(k,20) + b(k,19) = b(k,19) * lu(k,19) + b(k,18) = b(k,18) * lu(k,18) + b(k,17) = b(k,17) * lu(k,17) + b(k,16) = b(k,16) * lu(k,16) + b(k,15) = b(k,15) * lu(k,15) + b(k,14) = b(k,14) * lu(k,14) + b(k,13) = b(k,13) * lu(k,13) + b(k,12) = b(k,12) * lu(k,12) + b(k,11) = b(k,11) * lu(k,11) + b(k,10) = b(k,10) * lu(k,10) + b(k,9) = b(k,9) * lu(k,9) + b(k,8) = b(k,8) * lu(k,8) + b(k,7) = b(k,7) * lu(k,7) + b(k,6) = b(k,6) * lu(k,6) + b(k,5) = b(k,5) * lu(k,5) + b(k,4) = b(k,4) * lu(k,4) + b(k,3) = b(k,3) * lu(k,3) + b(k,2) = b(k,2) * lu(k,2) + b(k,1) = b(k,1) * lu(k,1) + end do + end subroutine lu_slv12 + subroutine lu_slv( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) + call lu_slv01( avec_len, lu, b ) + call lu_slv02( avec_len, lu, b ) + call lu_slv03( avec_len, lu, b ) + call lu_slv04( avec_len, lu, b ) + call lu_slv05( avec_len, lu, b ) + call lu_slv06( avec_len, lu, b ) + call lu_slv07( avec_len, lu, b ) + call lu_slv08( avec_len, lu, b ) + call lu_slv09( avec_len, lu, b ) + call lu_slv10( avec_len, lu, b ) + call lu_slv11( avec_len, lu, b ) + call lu_slv12( avec_len, lu, b ) + end subroutine lu_slv + end module mo_lu_solve diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_nln_matrix.F90 new file mode 100644 index 0000000000..c397802851 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_nln_matrix.F90 @@ -0,0 +1,3859 @@ + module mo_nln_matrix + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only: veclen + private + public :: nlnmat + contains + subroutine nlnmat01( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,661) = -(rxt(k,368)*y(k,221)) + mat(k,1721) = -rxt(k,368)*y(k,1) + mat(k,2288) = rxt(k,371)*y(k,193) + mat(k,957) = rxt(k,371)*y(k,123) + mat(k,627) = -(rxt(k,372)*y(k,221)) + mat(k,1718) = -rxt(k,372)*y(k,2) + mat(k,956) = rxt(k,369)*y(k,207) + mat(k,1864) = rxt(k,369)*y(k,193) + mat(k,936) = -(rxt(k,451)*y(k,125) + rxt(k,452)*y(k,137) + rxt(k,453) & + *y(k,221)) + mat(k,2085) = -rxt(k,451)*y(k,5) + mat(k,1949) = -rxt(k,452)*y(k,5) + mat(k,1746) = -rxt(k,453)*y(k,5) + mat(k,168) = -(rxt(k,410)*y(k,221)) + mat(k,1651) = -rxt(k,410)*y(k,6) + mat(k,412) = -(rxt(k,413)*y(k,221)) + mat(k,1690) = -rxt(k,413)*y(k,7) + mat(k,490) = rxt(k,411)*y(k,207) + mat(k,1846) = rxt(k,411)*y(k,195) + mat(k,169) = .120_r8*rxt(k,410)*y(k,221) + mat(k,1652) = .120_r8*rxt(k,410)*y(k,6) + mat(k,934) = .100_r8*rxt(k,452)*y(k,137) + mat(k,906) = .100_r8*rxt(k,455)*y(k,137) + mat(k,1938) = .100_r8*rxt(k,452)*y(k,5) + .100_r8*rxt(k,455)*y(k,109) + mat(k,2276) = .500_r8*rxt(k,412)*y(k,195) + .200_r8*rxt(k,439)*y(k,227) & + + .060_r8*rxt(k,445)*y(k,230) + mat(k,491) = .500_r8*rxt(k,412)*y(k,123) + mat(k,730) = .200_r8*rxt(k,439)*y(k,123) + mat(k,746) = .060_r8*rxt(k,445)*y(k,123) + mat(k,2269) = .200_r8*rxt(k,439)*y(k,227) + .200_r8*rxt(k,445)*y(k,230) + mat(k,729) = .200_r8*rxt(k,439)*y(k,123) + mat(k,744) = .200_r8*rxt(k,445)*y(k,123) + mat(k,2285) = .200_r8*rxt(k,439)*y(k,227) + .150_r8*rxt(k,445)*y(k,230) + mat(k,731) = .200_r8*rxt(k,439)*y(k,123) + mat(k,747) = .150_r8*rxt(k,445)*y(k,123) + mat(k,2270) = .210_r8*rxt(k,445)*y(k,230) + mat(k,745) = .210_r8*rxt(k,445)*y(k,123) + mat(k,229) = -(rxt(k,373)*y(k,221)) + mat(k,1662) = -rxt(k,373)*y(k,14) + mat(k,933) = .050_r8*rxt(k,452)*y(k,137) + mat(k,905) = .050_r8*rxt(k,455)*y(k,137) + mat(k,1937) = .050_r8*rxt(k,452)*y(k,5) + .050_r8*rxt(k,455)*y(k,109) + mat(k,352) = -(rxt(k,339)*y(k,125) + rxt(k,340)*y(k,221)) + mat(k,2078) = -rxt(k,339)*y(k,15) + mat(k,1682) = -rxt(k,340)*y(k,15) + mat(k,1446) = -(rxt(k,223)*y(k,41) + rxt(k,224)*y(k,207) + rxt(k,225) & + *y(k,137)) + mat(k,1524) = -rxt(k,223)*y(k,16) + mat(k,1910) = -rxt(k,224)*y(k,16) + mat(k,1975) = -rxt(k,225)*y(k,16) + mat(k,1803) = 4.000_r8*rxt(k,226)*y(k,18) + (rxt(k,227)+rxt(k,228))*y(k,58) & + + rxt(k,231)*y(k,123) + rxt(k,234)*y(k,133) + rxt(k,481) & + *y(k,153) + rxt(k,235)*y(k,221) + mat(k,144) = rxt(k,213)*y(k,220) + mat(k,150) = rxt(k,239)*y(k,220) + mat(k,477) = 2.000_r8*rxt(k,250)*y(k,55) + 2.000_r8*rxt(k,262)*y(k,220) & + + 2.000_r8*rxt(k,251)*y(k,221) + mat(k,590) = rxt(k,252)*y(k,55) + rxt(k,263)*y(k,220) + rxt(k,253)*y(k,221) + mat(k,383) = 3.000_r8*rxt(k,257)*y(k,55) + 3.000_r8*rxt(k,240)*y(k,220) & + + 3.000_r8*rxt(k,258)*y(k,221) + mat(k,2208) = 2.000_r8*rxt(k,250)*y(k,40) + rxt(k,252)*y(k,42) & + + 3.000_r8*rxt(k,257)*y(k,54) + mat(k,2236) = (rxt(k,227)+rxt(k,228))*y(k,18) + mat(k,108) = 2.000_r8*rxt(k,241)*y(k,220) + mat(k,816) = rxt(k,236)*y(k,133) + rxt(k,242)*y(k,220) + rxt(k,237)*y(k,221) + mat(k,2328) = rxt(k,231)*y(k,18) + mat(k,2009) = rxt(k,234)*y(k,18) + rxt(k,236)*y(k,80) + mat(k,1431) = rxt(k,481)*y(k,18) + mat(k,1612) = rxt(k,213)*y(k,33) + rxt(k,239)*y(k,34) + 2.000_r8*rxt(k,262) & + *y(k,40) + rxt(k,263)*y(k,42) + 3.000_r8*rxt(k,240)*y(k,54) & + + 2.000_r8*rxt(k,241)*y(k,77) + rxt(k,242)*y(k,80) + mat(k,1777) = rxt(k,235)*y(k,18) + 2.000_r8*rxt(k,251)*y(k,40) + rxt(k,253) & + *y(k,42) + 3.000_r8*rxt(k,258)*y(k,54) + rxt(k,237)*y(k,80) + mat(k,1797) = rxt(k,229)*y(k,58) + mat(k,2230) = rxt(k,229)*y(k,18) + mat(k,2050) = (rxt(k,542)+rxt(k,547))*y(k,90) + mat(k,769) = (rxt(k,542)+rxt(k,547))*y(k,84) + mat(k,1810) = -(4._r8*rxt(k,226)*y(k,18) + (rxt(k,227) + rxt(k,228) + rxt(k,229) & + ) * y(k,58) + rxt(k,230)*y(k,207) + rxt(k,231)*y(k,123) & + + rxt(k,232)*y(k,124) + rxt(k,234)*y(k,133) + rxt(k,235) & + *y(k,221) + rxt(k,481)*y(k,153)) + mat(k,2243) = -(rxt(k,227) + rxt(k,228) + rxt(k,229)) * y(k,18) + mat(k,1918) = -rxt(k,230)*y(k,18) + mat(k,2336) = -rxt(k,231)*y(k,18) + mat(k,1577) = -rxt(k,232)*y(k,18) + mat(k,2017) = -rxt(k,234)*y(k,18) + mat(k,1785) = -rxt(k,235)*y(k,18) + mat(k,1435) = -rxt(k,481)*y(k,18) + mat(k,1451) = rxt(k,225)*y(k,137) + mat(k,548) = rxt(k,233)*y(k,133) + mat(k,819) = rxt(k,243)*y(k,220) + mat(k,773) = rxt(k,238)*y(k,133) + mat(k,2017) = mat(k,2017) + rxt(k,233)*y(k,19) + rxt(k,238)*y(k,90) + mat(k,1983) = rxt(k,225)*y(k,16) + mat(k,1620) = rxt(k,243)*y(k,80) + mat(k,543) = -(rxt(k,233)*y(k,133)) + mat(k,1998) = -rxt(k,233)*y(k,19) + mat(k,1799) = rxt(k,232)*y(k,124) + mat(k,1551) = rxt(k,232)*y(k,18) + mat(k,241) = -(rxt(k,414)*y(k,221)) + mat(k,1665) = -rxt(k,414)*y(k,21) + mat(k,2268) = rxt(k,417)*y(k,197) + mat(k,430) = rxt(k,417)*y(k,123) + mat(k,339) = -(rxt(k,416)*y(k,221)) + mat(k,1679) = -rxt(k,416)*y(k,22) + mat(k,431) = rxt(k,415)*y(k,207) + mat(k,1840) = rxt(k,415)*y(k,197) + mat(k,294) = -(rxt(k,288)*y(k,55) + rxt(k,289)*y(k,221)) + mat(k,2188) = -rxt(k,288)*y(k,23) + mat(k,1673) = -rxt(k,289)*y(k,23) + mat(k,535) = -(rxt(k,290)*y(k,55) + rxt(k,291)*y(k,137) + rxt(k,316)*y(k,221)) + mat(k,2193) = -rxt(k,290)*y(k,24) + mat(k,1940) = -rxt(k,291)*y(k,24) + mat(k,1707) = -rxt(k,316)*y(k,24) + mat(k,268) = -(rxt(k,296)*y(k,221)) + mat(k,1670) = -rxt(k,296)*y(k,25) + mat(k,856) = .800_r8*rxt(k,292)*y(k,198) + .200_r8*rxt(k,293)*y(k,202) + mat(k,2134) = .200_r8*rxt(k,293)*y(k,198) + mat(k,347) = -(rxt(k,297)*y(k,221)) + mat(k,1681) = -rxt(k,297)*y(k,26) + mat(k,857) = rxt(k,294)*y(k,207) + mat(k,1841) = rxt(k,294)*y(k,198) + mat(k,300) = -(rxt(k,298)*y(k,55) + rxt(k,299)*y(k,221)) + mat(k,2189) = -rxt(k,298)*y(k,27) + mat(k,1674) = -rxt(k,299)*y(k,27) + mat(k,1023) = -(rxt(k,319)*y(k,125) + rxt(k,320)*y(k,137) + rxt(k,337) & + *y(k,221)) + mat(k,2091) = -rxt(k,319)*y(k,28) + mat(k,1954) = -rxt(k,320)*y(k,28) + mat(k,1753) = -rxt(k,337)*y(k,28) + mat(k,836) = .130_r8*rxt(k,397)*y(k,137) + mat(k,1954) = mat(k,1954) + .130_r8*rxt(k,397)*y(k,97) + mat(k,406) = -(rxt(k,324)*y(k,221)) + mat(k,1689) = -rxt(k,324)*y(k,29) + mat(k,803) = rxt(k,322)*y(k,207) + mat(k,1845) = rxt(k,322)*y(k,199) + mat(k,110) = -(rxt(k,325)*y(k,221)) + mat(k,1648) = -rxt(k,325)*y(k,30) + mat(k,272) = -(rxt(k,420)*y(k,221)) + mat(k,1671) = -rxt(k,420)*y(k,31) + mat(k,618) = rxt(k,418)*y(k,207) + mat(k,1836) = rxt(k,418)*y(k,200) + mat(k,100) = -(rxt(k,212)*y(k,220)) + mat(k,1589) = -rxt(k,212)*y(k,32) + mat(k,142) = -(rxt(k,213)*y(k,220)) + mat(k,1594) = -rxt(k,213)*y(k,33) + mat(k,147) = -(rxt(k,239)*y(k,220)) + mat(k,1595) = -rxt(k,239)*y(k,34) + mat(k,114) = -(rxt(k,214)*y(k,220)) + mat(k,1591) = -rxt(k,214)*y(k,35) + mat(k,152) = -(rxt(k,215)*y(k,220)) + mat(k,1596) = -rxt(k,215)*y(k,36) + mat(k,118) = -(rxt(k,216)*y(k,220)) + mat(k,1592) = -rxt(k,216)*y(k,37) + mat(k,157) = -(rxt(k,217)*y(k,220)) + mat(k,1597) = -rxt(k,217)*y(k,38) + mat(k,122) = -(rxt(k,218)*y(k,220)) + mat(k,1593) = -rxt(k,218)*y(k,39) + mat(k,476) = -(rxt(k,250)*y(k,55) + rxt(k,251)*y(k,221) + rxt(k,262)*y(k,220)) + mat(k,2192) = -rxt(k,250)*y(k,40) + mat(k,1699) = -rxt(k,251)*y(k,40) + mat(k,1607) = -rxt(k,262)*y(k,40) + mat(k,1528) = -(rxt(k,187)*y(k,55) + rxt(k,223)*y(k,16) + rxt(k,267)*y(k,207) & + + rxt(k,268)*y(k,125) + rxt(k,269)*y(k,133) + rxt(k,270) & + *y(k,221)) + mat(k,2212) = -rxt(k,187)*y(k,41) + mat(k,1448) = -rxt(k,223)*y(k,41) + mat(k,1914) = -rxt(k,267)*y(k,41) + mat(k,2118) = -rxt(k,268)*y(k,41) + mat(k,2013) = -rxt(k,269)*y(k,41) + mat(k,1781) = -rxt(k,270)*y(k,41) + mat(k,667) = .400_r8*rxt(k,368)*y(k,221) + mat(k,949) = .340_r8*rxt(k,452)*y(k,137) + mat(k,356) = .500_r8*rxt(k,339)*y(k,125) + mat(k,539) = rxt(k,291)*y(k,137) + mat(k,1032) = .500_r8*rxt(k,320)*y(k,137) + mat(k,608) = .500_r8*rxt(k,308)*y(k,221) + mat(k,800) = rxt(k,275)*y(k,221) + mat(k,452) = .300_r8*rxt(k,276)*y(k,221) + mat(k,1465) = (rxt(k,284)+rxt(k,285))*y(k,220) + mat(k,2239) = rxt(k,194)*y(k,202) + mat(k,1113) = .800_r8*rxt(k,313)*y(k,221) + mat(k,844) = .910_r8*rxt(k,397)*y(k,137) + mat(k,581) = .300_r8*rxt(k,388)*y(k,221) + mat(k,1216) = .800_r8*rxt(k,392)*y(k,202) + mat(k,1233) = .120_r8*rxt(k,350)*y(k,137) + mat(k,571) = .500_r8*rxt(k,363)*y(k,221) + mat(k,921) = .340_r8*rxt(k,455)*y(k,137) + mat(k,1363) = .600_r8*rxt(k,364)*y(k,137) + mat(k,2332) = .100_r8*rxt(k,370)*y(k,193) + rxt(k,274)*y(k,202) & + + .500_r8*rxt(k,341)*y(k,204) + .500_r8*rxt(k,310)*y(k,206) & + + .920_r8*rxt(k,380)*y(k,209) + .250_r8*rxt(k,348)*y(k,213) & + + rxt(k,357)*y(k,215) + rxt(k,331)*y(k,223) + rxt(k,335) & + *y(k,224) + .340_r8*rxt(k,464)*y(k,225) + .320_r8*rxt(k,469) & + *y(k,226) + .250_r8*rxt(k,405)*y(k,229) + mat(k,2118) = mat(k,2118) + .500_r8*rxt(k,339)*y(k,15) + rxt(k,381)*y(k,209) & + + .250_r8*rxt(k,347)*y(k,213) + rxt(k,358)*y(k,215) + mat(k,1979) = .340_r8*rxt(k,452)*y(k,5) + rxt(k,291)*y(k,24) & + + .500_r8*rxt(k,320)*y(k,28) + .910_r8*rxt(k,397)*y(k,97) & + + .120_r8*rxt(k,350)*y(k,104) + .340_r8*rxt(k,455)*y(k,109) & + + .600_r8*rxt(k,364)*y(k,110) + mat(k,522) = rxt(k,315)*y(k,221) + mat(k,1102) = .680_r8*rxt(k,473)*y(k,221) + mat(k,965) = .100_r8*rxt(k,370)*y(k,123) + mat(k,862) = .700_r8*rxt(k,293)*y(k,202) + mat(k,808) = rxt(k,321)*y(k,202) + mat(k,1417) = rxt(k,304)*y(k,202) + rxt(k,377)*y(k,209) + .250_r8*rxt(k,344) & + *y(k,213) + rxt(k,353)*y(k,215) + .250_r8*rxt(k,402)*y(k,229) + mat(k,2171) = rxt(k,194)*y(k,58) + .800_r8*rxt(k,392)*y(k,100) + rxt(k,274) & + *y(k,123) + .700_r8*rxt(k,293)*y(k,198) + rxt(k,321)*y(k,199) & + + rxt(k,304)*y(k,201) + (4.000_r8*rxt(k,271)+2.000_r8*rxt(k,272)) & + *y(k,202) + 1.500_r8*rxt(k,378)*y(k,209) + .750_r8*rxt(k,383) & + *y(k,210) + .880_r8*rxt(k,345)*y(k,213) + 2.000_r8*rxt(k,354) & + *y(k,215) + .750_r8*rxt(k,457)*y(k,219) + .800_r8*rxt(k,333) & + *y(k,224) + .930_r8*rxt(k,462)*y(k,225) + .950_r8*rxt(k,467) & + *y(k,226) + .800_r8*rxt(k,403)*y(k,229) + mat(k,555) = .500_r8*rxt(k,341)*y(k,123) + mat(k,783) = .500_r8*rxt(k,310)*y(k,123) + mat(k,1914) = mat(k,1914) + .450_r8*rxt(k,355)*y(k,215) + .150_r8*rxt(k,334) & + *y(k,224) + mat(k,1282) = .920_r8*rxt(k,380)*y(k,123) + rxt(k,381)*y(k,125) + rxt(k,377) & + *y(k,201) + 1.500_r8*rxt(k,378)*y(k,202) + mat(k,1317) = .750_r8*rxt(k,383)*y(k,202) + mat(k,1340) = .250_r8*rxt(k,348)*y(k,123) + .250_r8*rxt(k,347)*y(k,125) & + + .250_r8*rxt(k,344)*y(k,201) + .880_r8*rxt(k,345)*y(k,202) + mat(k,1384) = rxt(k,357)*y(k,123) + rxt(k,358)*y(k,125) + rxt(k,353)*y(k,201) & + + 2.000_r8*rxt(k,354)*y(k,202) + .450_r8*rxt(k,355)*y(k,207) & + + 4.000_r8*rxt(k,356)*y(k,215) + mat(k,1065) = .750_r8*rxt(k,457)*y(k,202) + mat(k,1616) = (rxt(k,284)+rxt(k,285))*y(k,53) + mat(k,1781) = mat(k,1781) + .400_r8*rxt(k,368)*y(k,1) + .500_r8*rxt(k,308) & + *y(k,50) + rxt(k,275)*y(k,51) + .300_r8*rxt(k,276)*y(k,52) & + + .800_r8*rxt(k,313)*y(k,73) + .300_r8*rxt(k,388)*y(k,98) & + + .500_r8*rxt(k,363)*y(k,108) + rxt(k,315)*y(k,142) & + + .680_r8*rxt(k,473)*y(k,182) + mat(k,793) = rxt(k,331)*y(k,123) + mat(k,1167) = rxt(k,335)*y(k,123) + .800_r8*rxt(k,333)*y(k,202) & + + .150_r8*rxt(k,334)*y(k,207) + mat(k,1153) = .340_r8*rxt(k,464)*y(k,123) + .930_r8*rxt(k,462)*y(k,202) + mat(k,1131) = .320_r8*rxt(k,469)*y(k,123) + .950_r8*rxt(k,467)*y(k,202) + mat(k,1191) = .250_r8*rxt(k,405)*y(k,123) + .250_r8*rxt(k,402)*y(k,201) & + + .800_r8*rxt(k,403)*y(k,202) + end do + end subroutine nlnmat01 + subroutine nlnmat02( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,589) = -(rxt(k,252)*y(k,55) + rxt(k,253)*y(k,221) + rxt(k,263)*y(k,220)) + mat(k,2194) = -rxt(k,252)*y(k,42) + mat(k,1713) = -rxt(k,253)*y(k,42) + mat(k,1608) = -rxt(k,263)*y(k,42) + mat(k,126) = -(rxt(k,254)*y(k,221)) + mat(k,1649) = -rxt(k,254)*y(k,43) + mat(k,1047) = -(rxt(k,300)*y(k,125) + rxt(k,301)*y(k,221)) + mat(k,2093) = -rxt(k,300)*y(k,44) + mat(k,1755) = -rxt(k,301)*y(k,44) + mat(k,665) = .800_r8*rxt(k,368)*y(k,221) + mat(k,355) = rxt(k,339)*y(k,125) + mat(k,269) = rxt(k,296)*y(k,221) + mat(k,349) = .500_r8*rxt(k,297)*y(k,221) + mat(k,1025) = .500_r8*rxt(k,320)*y(k,137) + mat(k,1352) = .100_r8*rxt(k,364)*y(k,137) + mat(k,2308) = .400_r8*rxt(k,370)*y(k,193) + rxt(k,295)*y(k,198) & + + .270_r8*rxt(k,323)*y(k,199) + rxt(k,341)*y(k,204) + rxt(k,360) & + *y(k,217) + rxt(k,331)*y(k,223) + mat(k,2093) = mat(k,2093) + rxt(k,339)*y(k,15) + mat(k,1956) = .500_r8*rxt(k,320)*y(k,28) + .100_r8*rxt(k,364)*y(k,110) + mat(k,962) = .400_r8*rxt(k,370)*y(k,123) + mat(k,860) = rxt(k,295)*y(k,123) + 3.200_r8*rxt(k,292)*y(k,198) & + + .800_r8*rxt(k,293)*y(k,202) + mat(k,806) = .270_r8*rxt(k,323)*y(k,123) + mat(k,2149) = .800_r8*rxt(k,293)*y(k,198) + mat(k,553) = rxt(k,341)*y(k,123) + mat(k,1890) = .200_r8*rxt(k,359)*y(k,217) + mat(k,673) = rxt(k,360)*y(k,123) + .200_r8*rxt(k,359)*y(k,207) + mat(k,1755) = mat(k,1755) + .800_r8*rxt(k,368)*y(k,1) + rxt(k,296)*y(k,25) & + + .500_r8*rxt(k,297)*y(k,26) + mat(k,790) = rxt(k,331)*y(k,123) + mat(k,368) = -(rxt(k,255)*y(k,55) + rxt(k,256)*y(k,221)) + mat(k,2190) = -rxt(k,255)*y(k,45) + mat(k,1684) = -rxt(k,256)*y(k,45) + mat(k,103) = -(rxt(k,302)*y(k,221)) + mat(k,1647) = -rxt(k,302)*y(k,46) + mat(k,971) = -(rxt(k,338)*y(k,221)) + mat(k,1748) = -rxt(k,338)*y(k,47) + mat(k,664) = .800_r8*rxt(k,368)*y(k,221) + mat(k,938) = .520_r8*rxt(k,452)*y(k,137) + mat(k,354) = .500_r8*rxt(k,339)*y(k,125) + mat(k,910) = .520_r8*rxt(k,455)*y(k,137) + mat(k,2303) = .250_r8*rxt(k,370)*y(k,193) + .820_r8*rxt(k,323)*y(k,199) & + + .500_r8*rxt(k,341)*y(k,204) + .270_r8*rxt(k,464)*y(k,225) & + + .040_r8*rxt(k,469)*y(k,226) + mat(k,2087) = .500_r8*rxt(k,339)*y(k,15) + mat(k,1951) = .520_r8*rxt(k,452)*y(k,5) + .520_r8*rxt(k,455)*y(k,109) + mat(k,1095) = .500_r8*rxt(k,473)*y(k,221) + mat(k,961) = .250_r8*rxt(k,370)*y(k,123) + mat(k,805) = .820_r8*rxt(k,323)*y(k,123) + .820_r8*rxt(k,321)*y(k,202) + mat(k,2144) = .820_r8*rxt(k,321)*y(k,199) + .150_r8*rxt(k,462)*y(k,225) & + + .025_r8*rxt(k,467)*y(k,226) + mat(k,552) = .500_r8*rxt(k,341)*y(k,123) + mat(k,1748) = mat(k,1748) + .800_r8*rxt(k,368)*y(k,1) + .500_r8*rxt(k,473) & + *y(k,182) + mat(k,1143) = .270_r8*rxt(k,464)*y(k,123) + .150_r8*rxt(k,462)*y(k,202) + mat(k,1120) = .040_r8*rxt(k,469)*y(k,123) + .025_r8*rxt(k,467)*y(k,202) + mat(k,1240) = -(rxt(k,326)*y(k,125) + rxt(k,327)*y(k,221)) + mat(k,2106) = -rxt(k,326)*y(k,48) + mat(k,1768) = -rxt(k,327)*y(k,48) + mat(k,1090) = rxt(k,328)*y(k,221) + mat(k,1228) = .880_r8*rxt(k,350)*y(k,137) + mat(k,1355) = .500_r8*rxt(k,364)*y(k,137) + mat(k,2321) = .170_r8*rxt(k,423)*y(k,203) + .050_r8*rxt(k,386)*y(k,210) & + + .250_r8*rxt(k,348)*y(k,213) + .170_r8*rxt(k,429)*y(k,216) & + + .400_r8*rxt(k,439)*y(k,227) + .250_r8*rxt(k,405)*y(k,229) & + + .540_r8*rxt(k,445)*y(k,230) + .510_r8*rxt(k,448)*y(k,232) + mat(k,2106) = mat(k,2106) + .050_r8*rxt(k,387)*y(k,210) + .250_r8*rxt(k,347) & + *y(k,213) + .250_r8*rxt(k,406)*y(k,229) + mat(k,851) = rxt(k,329)*y(k,221) + mat(k,1967) = .880_r8*rxt(k,350)*y(k,104) + .500_r8*rxt(k,364)*y(k,110) + mat(k,1407) = .250_r8*rxt(k,344)*y(k,213) + .250_r8*rxt(k,402)*y(k,229) + mat(k,2161) = .240_r8*rxt(k,345)*y(k,213) + .500_r8*rxt(k,333)*y(k,224) & + + .100_r8*rxt(k,403)*y(k,229) + mat(k,763) = .170_r8*rxt(k,423)*y(k,123) + .070_r8*rxt(k,422)*y(k,207) + mat(k,1902) = .070_r8*rxt(k,422)*y(k,203) + .070_r8*rxt(k,428)*y(k,216) + mat(k,1309) = .050_r8*rxt(k,386)*y(k,123) + .050_r8*rxt(k,387)*y(k,125) + mat(k,1334) = .250_r8*rxt(k,348)*y(k,123) + .250_r8*rxt(k,347)*y(k,125) & + + .250_r8*rxt(k,344)*y(k,201) + .240_r8*rxt(k,345)*y(k,202) + mat(k,876) = .170_r8*rxt(k,429)*y(k,123) + .070_r8*rxt(k,428)*y(k,207) + mat(k,1768) = mat(k,1768) + rxt(k,328)*y(k,94) + rxt(k,329)*y(k,126) + mat(k,1165) = .500_r8*rxt(k,333)*y(k,202) + mat(k,739) = .400_r8*rxt(k,439)*y(k,123) + mat(k,1188) = .250_r8*rxt(k,405)*y(k,123) + .250_r8*rxt(k,406)*y(k,125) & + + .250_r8*rxt(k,402)*y(k,201) + .100_r8*rxt(k,403)*y(k,202) + mat(k,755) = .540_r8*rxt(k,445)*y(k,123) + mat(k,502) = .510_r8*rxt(k,448)*y(k,123) + mat(k,688) = -(rxt(k,307)*y(k,221)) + mat(k,1724) = -rxt(k,307)*y(k,49) + mat(k,1019) = .120_r8*rxt(k,320)*y(k,137) + mat(k,1942) = .120_r8*rxt(k,320)*y(k,28) + mat(k,1397) = .100_r8*rxt(k,304)*y(k,202) + .150_r8*rxt(k,305)*y(k,207) + mat(k,2139) = .100_r8*rxt(k,304)*y(k,201) + mat(k,1868) = .150_r8*rxt(k,305)*y(k,201) + .150_r8*rxt(k,355)*y(k,215) + mat(k,1375) = .150_r8*rxt(k,355)*y(k,207) + mat(k,605) = -(rxt(k,308)*y(k,221)) + mat(k,1715) = -rxt(k,308)*y(k,50) + mat(k,1396) = .360_r8*rxt(k,305)*y(k,207) + mat(k,1862) = .360_r8*rxt(k,305)*y(k,201) + .400_r8*rxt(k,355)*y(k,215) + mat(k,1374) = .400_r8*rxt(k,355)*y(k,207) + mat(k,799) = -(rxt(k,275)*y(k,221)) + mat(k,1734) = -rxt(k,275)*y(k,51) + mat(k,1202) = .200_r8*rxt(k,392)*y(k,202) + mat(k,858) = .300_r8*rxt(k,293)*y(k,202) + mat(k,2140) = .200_r8*rxt(k,392)*y(k,100) + .300_r8*rxt(k,293)*y(k,198) & + + 2.000_r8*rxt(k,272)*y(k,202) + .250_r8*rxt(k,378)*y(k,209) & + + .250_r8*rxt(k,383)*y(k,210) + .250_r8*rxt(k,345)*y(k,213) & + + .250_r8*rxt(k,457)*y(k,219) + .500_r8*rxt(k,333)*y(k,224) & + + .250_r8*rxt(k,462)*y(k,225) + .250_r8*rxt(k,467)*y(k,226) & + + .300_r8*rxt(k,403)*y(k,229) + mat(k,1265) = .250_r8*rxt(k,378)*y(k,202) + mat(k,1297) = .250_r8*rxt(k,383)*y(k,202) + mat(k,1328) = .250_r8*rxt(k,345)*y(k,202) + mat(k,1058) = .250_r8*rxt(k,457)*y(k,202) + mat(k,1162) = .500_r8*rxt(k,333)*y(k,202) + mat(k,1142) = .250_r8*rxt(k,462)*y(k,202) + mat(k,1119) = .250_r8*rxt(k,467)*y(k,202) + mat(k,1181) = .300_r8*rxt(k,403)*y(k,202) + mat(k,451) = -(rxt(k,276)*y(k,221)) + mat(k,1695) = -rxt(k,276)*y(k,52) + mat(k,2137) = rxt(k,273)*y(k,207) + mat(k,1851) = rxt(k,273)*y(k,202) + mat(k,1462) = -(rxt(k,188)*y(k,55) + rxt(k,244)*y(k,72) + rxt(k,277)*y(k,221) & + + (rxt(k,283) + rxt(k,284) + rxt(k,285)) * y(k,220)) + mat(k,2209) = -rxt(k,188)*y(k,53) + mat(k,885) = -rxt(k,244)*y(k,53) + mat(k,1778) = -rxt(k,277)*y(k,53) + mat(k,1613) = -(rxt(k,283) + rxt(k,284) + rxt(k,285)) * y(k,53) + mat(k,1030) = .100_r8*rxt(k,320)*y(k,137) + mat(k,1976) = .100_r8*rxt(k,320)*y(k,28) + mat(k,382) = -(rxt(k,240)*y(k,220) + rxt(k,257)*y(k,55) + rxt(k,258)*y(k,221)) + mat(k,1606) = -rxt(k,240)*y(k,54) + mat(k,2191) = -rxt(k,257)*y(k,54) + mat(k,1685) = -rxt(k,258)*y(k,54) + mat(k,2224) = -(rxt(k,187)*y(k,41) + rxt(k,188)*y(k,53) + rxt(k,189)*y(k,76) & + + rxt(k,190)*y(k,78) + (rxt(k,191) + rxt(k,192)) * y(k,207) & + + rxt(k,193)*y(k,137) + rxt(k,200)*y(k,59) + rxt(k,209)*y(k,91) & + + rxt(k,250)*y(k,40) + rxt(k,252)*y(k,42) + rxt(k,255)*y(k,45) & + + rxt(k,257)*y(k,54) + rxt(k,298)*y(k,27)) + mat(k,1540) = -rxt(k,187)*y(k,55) + mat(k,1474) = -rxt(k,188)*y(k,55) + mat(k,1261) = -rxt(k,189)*y(k,55) + mat(k,603) = -rxt(k,190)*y(k,55) + mat(k,1926) = -(rxt(k,191) + rxt(k,192)) * y(k,55) + mat(k,1991) = -rxt(k,193)*y(k,55) + mat(k,992) = -rxt(k,200)*y(k,55) + mat(k,828) = -rxt(k,209)*y(k,55) + mat(k,481) = -rxt(k,250)*y(k,55) + mat(k,596) = -rxt(k,252)*y(k,55) + mat(k,374) = -rxt(k,255)*y(k,55) + mat(k,387) = -rxt(k,257)*y(k,55) + mat(k,304) = -rxt(k,298)*y(k,55) + mat(k,1818) = rxt(k,228)*y(k,58) + mat(k,102) = 4.000_r8*rxt(k,212)*y(k,220) + mat(k,146) = rxt(k,213)*y(k,220) + mat(k,117) = 2.000_r8*rxt(k,214)*y(k,220) + mat(k,156) = 2.000_r8*rxt(k,215)*y(k,220) + mat(k,121) = 2.000_r8*rxt(k,216)*y(k,220) + mat(k,161) = rxt(k,217)*y(k,220) + mat(k,125) = 2.000_r8*rxt(k,218)*y(k,220) + mat(k,128) = 3.000_r8*rxt(k,254)*y(k,221) + mat(k,374) = mat(k,374) + rxt(k,256)*y(k,221) + mat(k,2251) = rxt(k,228)*y(k,18) + (4.000_r8*rxt(k,195)+2.000_r8*rxt(k,197)) & + *y(k,58) + rxt(k,199)*y(k,123) + rxt(k,204)*y(k,133) & + + rxt(k,482)*y(k,153) + rxt(k,194)*y(k,202) + rxt(k,205) & + *y(k,221) + mat(k,252) = rxt(k,249)*y(k,220) + mat(k,248) = rxt(k,264)*y(k,220) + rxt(k,259)*y(k,221) + mat(k,258) = rxt(k,265)*y(k,220) + rxt(k,260)*y(k,221) + mat(k,311) = rxt(k,266)*y(k,220) + rxt(k,261)*y(k,221) + mat(k,2069) = rxt(k,207)*y(k,133) + rxt(k,219)*y(k,220) + rxt(k,208)*y(k,221) + mat(k,2344) = rxt(k,199)*y(k,58) + mat(k,2025) = rxt(k,204)*y(k,58) + rxt(k,207)*y(k,84) + mat(k,1440) = rxt(k,482)*y(k,58) + mat(k,2183) = rxt(k,194)*y(k,58) + mat(k,1628) = 4.000_r8*rxt(k,212)*y(k,32) + rxt(k,213)*y(k,33) & + + 2.000_r8*rxt(k,214)*y(k,35) + 2.000_r8*rxt(k,215)*y(k,36) & + + 2.000_r8*rxt(k,216)*y(k,37) + rxt(k,217)*y(k,38) & + + 2.000_r8*rxt(k,218)*y(k,39) + rxt(k,249)*y(k,64) + rxt(k,264) & + *y(k,81) + rxt(k,265)*y(k,82) + rxt(k,266)*y(k,83) + rxt(k,219) & + *y(k,84) + mat(k,1793) = 3.000_r8*rxt(k,254)*y(k,43) + rxt(k,256)*y(k,45) + rxt(k,205) & + *y(k,58) + rxt(k,259)*y(k,81) + rxt(k,260)*y(k,82) + rxt(k,261) & + *y(k,83) + rxt(k,208)*y(k,84) + mat(k,2187) = rxt(k,200)*y(k,59) + mat(k,2229) = 2.000_r8*rxt(k,196)*y(k,58) + mat(k,983) = rxt(k,200)*y(k,55) + (rxt(k,540)+rxt(k,545)+rxt(k,550))*y(k,84) + mat(k,2049) = (rxt(k,540)+rxt(k,545)+rxt(k,550))*y(k,59) + (rxt(k,535) & + +rxt(k,541)+rxt(k,546))*y(k,91) + mat(k,823) = (rxt(k,535)+rxt(k,541)+rxt(k,546))*y(k,84) + mat(k,2228) = 2.000_r8*rxt(k,221)*y(k,58) + mat(k,2252) = -(rxt(k,194)*y(k,202) + (4._r8*rxt(k,195) + 4._r8*rxt(k,196) & + + 4._r8*rxt(k,197) + 4._r8*rxt(k,221)) * y(k,58) + rxt(k,198) & + *y(k,207) + rxt(k,199)*y(k,123) + rxt(k,201)*y(k,124) + rxt(k,204) & + *y(k,133) + (rxt(k,205) + rxt(k,206)) * y(k,221) + (rxt(k,227) & + + rxt(k,228) + rxt(k,229)) * y(k,18) + rxt(k,482)*y(k,153)) + mat(k,2184) = -rxt(k,194)*y(k,58) + mat(k,1927) = -rxt(k,198)*y(k,58) + mat(k,2345) = -rxt(k,199)*y(k,58) + mat(k,1586) = -rxt(k,201)*y(k,58) + mat(k,2026) = -rxt(k,204)*y(k,58) + mat(k,1794) = -(rxt(k,205) + rxt(k,206)) * y(k,58) + mat(k,1819) = -(rxt(k,227) + rxt(k,228) + rxt(k,229)) * y(k,58) + mat(k,1441) = -rxt(k,482)*y(k,58) + mat(k,2225) = rxt(k,209)*y(k,91) + rxt(k,193)*y(k,137) + rxt(k,192)*y(k,207) + mat(k,993) = rxt(k,202)*y(k,133) + mat(k,2070) = rxt(k,220)*y(k,220) + mat(k,829) = rxt(k,209)*y(k,55) + rxt(k,210)*y(k,133) + rxt(k,211)*y(k,221) + mat(k,2026) = mat(k,2026) + rxt(k,202)*y(k,59) + rxt(k,210)*y(k,91) + mat(k,1992) = rxt(k,193)*y(k,55) + mat(k,332) = rxt(k,487)*y(k,153) + mat(k,1441) = mat(k,1441) + rxt(k,487)*y(k,139) + mat(k,1927) = mat(k,1927) + rxt(k,192)*y(k,55) + mat(k,1629) = rxt(k,220)*y(k,84) + mat(k,1794) = mat(k,1794) + rxt(k,211)*y(k,91) + end do + end subroutine nlnmat02 + subroutine nlnmat03( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,985) = -(rxt(k,200)*y(k,55) + rxt(k,202)*y(k,133) + rxt(k,203)*y(k,221) & + + (rxt(k,540) + rxt(k,545) + rxt(k,550)) * y(k,84)) + mat(k,2201) = -rxt(k,200)*y(k,59) + mat(k,2005) = -rxt(k,202)*y(k,59) + mat(k,1750) = -rxt(k,203)*y(k,59) + mat(k,2053) = -(rxt(k,540) + rxt(k,545) + rxt(k,550)) * y(k,59) + mat(k,2234) = rxt(k,201)*y(k,124) + mat(k,1561) = rxt(k,201)*y(k,58) + mat(k,1175) = -(rxt(k,287)*y(k,221)) + mat(k,1764) = -rxt(k,287)*y(k,61) + mat(k,946) = .230_r8*rxt(k,452)*y(k,137) + mat(k,1445) = rxt(k,223)*y(k,41) + mat(k,297) = .350_r8*rxt(k,289)*y(k,221) + mat(k,538) = .630_r8*rxt(k,291)*y(k,137) + mat(k,1027) = .560_r8*rxt(k,320)*y(k,137) + mat(k,1522) = rxt(k,223)*y(k,16) + rxt(k,187)*y(k,55) + rxt(k,268)*y(k,125) & + + rxt(k,269)*y(k,133) + rxt(k,270)*y(k,221) + mat(k,369) = rxt(k,255)*y(k,55) + mat(k,1239) = rxt(k,326)*y(k,125) + rxt(k,327)*y(k,221) + mat(k,2205) = rxt(k,187)*y(k,41) + rxt(k,255)*y(k,45) + mat(k,980) = rxt(k,314)*y(k,221) + mat(k,837) = .620_r8*rxt(k,397)*y(k,137) + mat(k,1226) = .650_r8*rxt(k,350)*y(k,137) + mat(k,918) = .230_r8*rxt(k,455)*y(k,137) + mat(k,1354) = .560_r8*rxt(k,364)*y(k,137) + mat(k,2317) = .170_r8*rxt(k,423)*y(k,203) + .220_r8*rxt(k,348)*y(k,213) & + + .400_r8*rxt(k,426)*y(k,214) + .350_r8*rxt(k,429)*y(k,216) & + + .225_r8*rxt(k,464)*y(k,225) + .250_r8*rxt(k,405)*y(k,229) + mat(k,2102) = rxt(k,268)*y(k,41) + rxt(k,326)*y(k,48) + .220_r8*rxt(k,347) & + *y(k,213) + .500_r8*rxt(k,406)*y(k,229) + mat(k,2006) = rxt(k,269)*y(k,41) + rxt(k,476)*y(k,140) + mat(k,1964) = .230_r8*rxt(k,452)*y(k,5) + .630_r8*rxt(k,291)*y(k,24) & + + .560_r8*rxt(k,320)*y(k,28) + .620_r8*rxt(k,397)*y(k,97) & + + .650_r8*rxt(k,350)*y(k,104) + .230_r8*rxt(k,455)*y(k,109) & + + .560_r8*rxt(k,364)*y(k,110) + mat(k,363) = rxt(k,476)*y(k,133) + rxt(k,477)*y(k,221) + mat(k,1099) = .700_r8*rxt(k,473)*y(k,221) + mat(k,1403) = .220_r8*rxt(k,344)*y(k,213) + .250_r8*rxt(k,402)*y(k,229) + mat(k,2157) = .110_r8*rxt(k,345)*y(k,213) + .125_r8*rxt(k,462)*y(k,225) & + + .200_r8*rxt(k,403)*y(k,229) + mat(k,762) = .170_r8*rxt(k,423)*y(k,123) + .070_r8*rxt(k,422)*y(k,207) + mat(k,1898) = .070_r8*rxt(k,422)*y(k,203) + .160_r8*rxt(k,425)*y(k,214) & + + .140_r8*rxt(k,428)*y(k,216) + mat(k,1333) = .220_r8*rxt(k,348)*y(k,123) + .220_r8*rxt(k,347)*y(k,125) & + + .220_r8*rxt(k,344)*y(k,201) + .110_r8*rxt(k,345)*y(k,202) + mat(k,725) = .400_r8*rxt(k,426)*y(k,123) + .160_r8*rxt(k,425)*y(k,207) + mat(k,875) = .350_r8*rxt(k,429)*y(k,123) + .140_r8*rxt(k,428)*y(k,207) + mat(k,1764) = mat(k,1764) + .350_r8*rxt(k,289)*y(k,23) + rxt(k,270)*y(k,41) & + + rxt(k,327)*y(k,48) + rxt(k,314)*y(k,74) + rxt(k,477)*y(k,140) & + + .700_r8*rxt(k,473)*y(k,182) + mat(k,1149) = .225_r8*rxt(k,464)*y(k,123) + .125_r8*rxt(k,462)*y(k,202) + mat(k,1186) = .250_r8*rxt(k,405)*y(k,123) + .500_r8*rxt(k,406)*y(k,125) & + + .250_r8*rxt(k,402)*y(k,201) + .200_r8*rxt(k,403)*y(k,202) + mat(k,941) = .270_r8*rxt(k,452)*y(k,137) + mat(k,1024) = .200_r8*rxt(k,320)*y(k,137) + mat(k,689) = rxt(k,307)*y(k,221) + mat(k,606) = .500_r8*rxt(k,308)*y(k,221) + mat(k,1174) = rxt(k,287)*y(k,221) + mat(k,1109) = .800_r8*rxt(k,313)*y(k,221) + mat(k,979) = rxt(k,314)*y(k,221) + mat(k,869) = rxt(k,279)*y(k,221) + mat(k,568) = .500_r8*rxt(k,363)*y(k,221) + mat(k,913) = .270_r8*rxt(k,455)*y(k,137) + mat(k,1351) = .100_r8*rxt(k,364)*y(k,137) + mat(k,2307) = rxt(k,306)*y(k,201) + .900_r8*rxt(k,464)*y(k,225) + mat(k,1955) = .270_r8*rxt(k,452)*y(k,5) + .200_r8*rxt(k,320)*y(k,28) & + + .270_r8*rxt(k,455)*y(k,109) + .100_r8*rxt(k,364)*y(k,110) + mat(k,1096) = 1.800_r8*rxt(k,473)*y(k,221) + mat(k,1400) = rxt(k,306)*y(k,123) + 4.000_r8*rxt(k,303)*y(k,201) & + + .900_r8*rxt(k,304)*y(k,202) + .490_r8*rxt(k,305)*y(k,207) & + + rxt(k,377)*y(k,209) + 2.000_r8*rxt(k,353)*y(k,215) & + + rxt(k,402)*y(k,229) + mat(k,2148) = .900_r8*rxt(k,304)*y(k,201) + rxt(k,354)*y(k,215) & + + .500_r8*rxt(k,462)*y(k,225) + mat(k,1889) = .490_r8*rxt(k,305)*y(k,201) + .450_r8*rxt(k,355)*y(k,215) + mat(k,1266) = rxt(k,377)*y(k,201) + mat(k,1376) = 2.000_r8*rxt(k,353)*y(k,201) + rxt(k,354)*y(k,202) & + + .450_r8*rxt(k,355)*y(k,207) + 4.000_r8*rxt(k,356)*y(k,215) + mat(k,1754) = rxt(k,307)*y(k,49) + .500_r8*rxt(k,308)*y(k,50) + rxt(k,287) & + *y(k,61) + .800_r8*rxt(k,313)*y(k,73) + rxt(k,314)*y(k,74) & + + rxt(k,279)*y(k,86) + .500_r8*rxt(k,363)*y(k,108) & + + 1.800_r8*rxt(k,473)*y(k,182) + mat(k,1144) = .900_r8*rxt(k,464)*y(k,123) + .500_r8*rxt(k,462)*y(k,202) + mat(k,1183) = rxt(k,402)*y(k,201) + mat(k,235) = -(rxt(k,248)*y(k,220)) + mat(k,1600) = -rxt(k,248)*y(k,63) + mat(k,143) = rxt(k,213)*y(k,220) + mat(k,148) = rxt(k,239)*y(k,220) + mat(k,153) = rxt(k,215)*y(k,220) + mat(k,119) = 2.000_r8*rxt(k,216)*y(k,220) + mat(k,158) = 2.000_r8*rxt(k,217)*y(k,220) + mat(k,123) = rxt(k,218)*y(k,220) + mat(k,107) = 2.000_r8*rxt(k,241)*y(k,220) + mat(k,253) = rxt(k,265)*y(k,220) + rxt(k,260)*y(k,221) + mat(k,306) = rxt(k,266)*y(k,220) + rxt(k,261)*y(k,221) + mat(k,1600) = mat(k,1600) + rxt(k,213)*y(k,33) + rxt(k,239)*y(k,34) & + + rxt(k,215)*y(k,36) + 2.000_r8*rxt(k,216)*y(k,37) & + + 2.000_r8*rxt(k,217)*y(k,38) + rxt(k,218)*y(k,39) & + + 2.000_r8*rxt(k,241)*y(k,77) + rxt(k,265)*y(k,82) + rxt(k,266) & + *y(k,83) + mat(k,1663) = rxt(k,260)*y(k,82) + rxt(k,261)*y(k,83) + mat(k,249) = -(rxt(k,249)*y(k,220)) + mat(k,1602) = -rxt(k,249)*y(k,64) + mat(k,115) = rxt(k,214)*y(k,220) + mat(k,154) = rxt(k,215)*y(k,220) + mat(k,245) = rxt(k,264)*y(k,220) + rxt(k,259)*y(k,221) + mat(k,1602) = mat(k,1602) + rxt(k,214)*y(k,35) + rxt(k,215)*y(k,36) & + + rxt(k,264)*y(k,81) + mat(k,1667) = rxt(k,259)*y(k,81) + mat(k,197) = -(rxt(k,421)*y(k,221)) + mat(k,1656) = -rxt(k,421)*y(k,65) + mat(k,191) = .180_r8*rxt(k,441)*y(k,221) + mat(k,1656) = mat(k,1656) + .180_r8*rxt(k,441)*y(k,184) + mat(k,288) = -(rxt(k,474)*y(k,125) + (rxt(k,475) + rxt(k,489)) * y(k,221)) + mat(k,2076) = -rxt(k,474)*y(k,66) + mat(k,1672) = -(rxt(k,475) + rxt(k,489)) * y(k,66) + mat(k,778) = rxt(k,309)*y(k,207) + mat(k,1834) = rxt(k,309)*y(k,206) + mat(k,883) = -(rxt(k,244)*y(k,53) + rxt(k,245)*y(k,76) + rxt(k,246)*y(k,233) & + + rxt(k,247)*y(k,88)) + mat(k,1458) = -rxt(k,244)*y(k,72) + mat(k,1250) = -rxt(k,245)*y(k,72) + mat(k,2351) = -rxt(k,246)*y(k,72) + mat(k,1477) = -rxt(k,247)*y(k,72) + mat(k,149) = rxt(k,239)*y(k,220) + mat(k,159) = rxt(k,217)*y(k,220) + mat(k,236) = 2.000_r8*rxt(k,248)*y(k,220) + mat(k,250) = rxt(k,249)*y(k,220) + mat(k,1610) = rxt(k,239)*y(k,34) + rxt(k,217)*y(k,38) + 2.000_r8*rxt(k,248) & + *y(k,63) + rxt(k,249)*y(k,64) + mat(k,1110) = -(rxt(k,313)*y(k,221)) + mat(k,1760) = -rxt(k,313)*y(k,73) + mat(k,579) = .700_r8*rxt(k,388)*y(k,221) + mat(k,563) = .500_r8*rxt(k,389)*y(k,221) + mat(k,426) = rxt(k,400)*y(k,221) + mat(k,2313) = .050_r8*rxt(k,386)*y(k,210) + .530_r8*rxt(k,348)*y(k,213) & + + .225_r8*rxt(k,464)*y(k,225) + .250_r8*rxt(k,405)*y(k,229) + mat(k,2098) = .050_r8*rxt(k,387)*y(k,210) + .530_r8*rxt(k,347)*y(k,213) & + + .250_r8*rxt(k,406)*y(k,229) + mat(k,1500) = rxt(k,312)*y(k,205) + mat(k,1402) = .530_r8*rxt(k,344)*y(k,213) + .250_r8*rxt(k,402)*y(k,229) + mat(k,2153) = .260_r8*rxt(k,345)*y(k,213) + .125_r8*rxt(k,462)*y(k,225) & + + .100_r8*rxt(k,403)*y(k,229) + mat(k,458) = rxt(k,312)*y(k,134) + mat(k,1304) = .050_r8*rxt(k,386)*y(k,123) + .050_r8*rxt(k,387)*y(k,125) + mat(k,1331) = .530_r8*rxt(k,348)*y(k,123) + .530_r8*rxt(k,347)*y(k,125) & + + .530_r8*rxt(k,344)*y(k,201) + .260_r8*rxt(k,345)*y(k,202) + mat(k,1760) = mat(k,1760) + .700_r8*rxt(k,388)*y(k,98) + .500_r8*rxt(k,389) & + *y(k,99) + rxt(k,400)*y(k,114) + mat(k,1146) = .225_r8*rxt(k,464)*y(k,123) + .125_r8*rxt(k,462)*y(k,202) + mat(k,1185) = .250_r8*rxt(k,405)*y(k,123) + .250_r8*rxt(k,406)*y(k,125) & + + .250_r8*rxt(k,402)*y(k,201) + .100_r8*rxt(k,403)*y(k,202) + mat(k,978) = -(rxt(k,314)*y(k,221)) + mat(k,1749) = -rxt(k,314)*y(k,74) + mat(k,296) = .650_r8*rxt(k,289)*y(k,221) + mat(k,1108) = .200_r8*rxt(k,313)*y(k,221) + mat(k,1006) = rxt(k,401)*y(k,221) + mat(k,2304) = rxt(k,412)*y(k,195) + .050_r8*rxt(k,386)*y(k,210) & + + .400_r8*rxt(k,426)*y(k,214) + .170_r8*rxt(k,429)*y(k,216) & + + .700_r8*rxt(k,432)*y(k,222) + .600_r8*rxt(k,439)*y(k,227) & + + .250_r8*rxt(k,405)*y(k,229) + .340_r8*rxt(k,445)*y(k,230) & + + .170_r8*rxt(k,448)*y(k,232) + mat(k,2088) = .050_r8*rxt(k,387)*y(k,210) + .250_r8*rxt(k,406)*y(k,229) + mat(k,494) = rxt(k,412)*y(k,123) + mat(k,1398) = .250_r8*rxt(k,402)*y(k,229) + mat(k,2145) = .100_r8*rxt(k,403)*y(k,229) + mat(k,1887) = .160_r8*rxt(k,425)*y(k,214) + .070_r8*rxt(k,428)*y(k,216) + mat(k,1300) = .050_r8*rxt(k,386)*y(k,123) + .050_r8*rxt(k,387)*y(k,125) + mat(k,724) = .400_r8*rxt(k,426)*y(k,123) + .160_r8*rxt(k,425)*y(k,207) + mat(k,874) = .170_r8*rxt(k,429)*y(k,123) + .070_r8*rxt(k,428)*y(k,207) + mat(k,1749) = mat(k,1749) + .650_r8*rxt(k,289)*y(k,23) + .200_r8*rxt(k,313) & + *y(k,73) + rxt(k,401)*y(k,115) + mat(k,446) = .700_r8*rxt(k,432)*y(k,123) + mat(k,737) = .600_r8*rxt(k,439)*y(k,123) + mat(k,1182) = .250_r8*rxt(k,405)*y(k,123) + .250_r8*rxt(k,406)*y(k,125) & + + .250_r8*rxt(k,402)*y(k,201) + .100_r8*rxt(k,403)*y(k,202) + mat(k,753) = .340_r8*rxt(k,445)*y(k,123) + mat(k,501) = .170_r8*rxt(k,448)*y(k,123) + mat(k,2041) = -((rxt(k,147) + rxt(k,148) + rxt(k,149)) * y(k,207) + rxt(k,150) & + *y(k,134) + rxt(k,153)*y(k,137)) + mat(k,1922) = -(rxt(k,147) + rxt(k,148) + rxt(k,149)) * y(k,75) + mat(k,1513) = -rxt(k,150)*y(k,75) + mat(k,1987) = -rxt(k,153)*y(k,75) + mat(k,1536) = rxt(k,270)*y(k,221) + mat(k,1470) = rxt(k,284)*y(k,220) + mat(k,2220) = rxt(k,189)*y(k,76) + mat(k,888) = rxt(k,245)*y(k,76) + mat(k,1257) = rxt(k,189)*y(k,55) + rxt(k,245)*y(k,72) + rxt(k,145)*y(k,133) & + + rxt(k,127)*y(k,220) + rxt(k,154)*y(k,221) + mat(k,821) = rxt(k,243)*y(k,220) + mat(k,2065) = rxt(k,220)*y(k,220) + mat(k,686) = rxt(k,175)*y(k,221) + mat(k,2021) = rxt(k,145)*y(k,76) + rxt(k,157)*y(k,221) + mat(k,367) = rxt(k,477)*y(k,221) + mat(k,722) = rxt(k,483)*y(k,221) + mat(k,1439) = rxt(k,488)*y(k,221) + mat(k,1624) = rxt(k,284)*y(k,53) + rxt(k,127)*y(k,76) + rxt(k,243)*y(k,80) & + + rxt(k,220)*y(k,84) + mat(k,1789) = rxt(k,270)*y(k,41) + rxt(k,154)*y(k,76) + rxt(k,175)*y(k,111) & + + rxt(k,157)*y(k,133) + rxt(k,477)*y(k,140) + rxt(k,483) & + *y(k,151) + rxt(k,488)*y(k,153) + end do + end subroutine nlnmat03 + subroutine nlnmat04( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,1251) = -(rxt(k,127)*y(k,220) + rxt(k,145)*y(k,133) + rxt(k,154) & + *y(k,221) + rxt(k,189)*y(k,55) + rxt(k,245)*y(k,72)) + mat(k,1611) = -rxt(k,127)*y(k,76) + mat(k,2007) = -rxt(k,145)*y(k,76) + mat(k,1769) = -rxt(k,154)*y(k,76) + mat(k,2206) = -rxt(k,189)*y(k,76) + mat(k,884) = -rxt(k,245)*y(k,76) + mat(k,1461) = rxt(k,285)*y(k,220) + mat(k,2029) = rxt(k,147)*y(k,207) + mat(k,1903) = rxt(k,147)*y(k,75) + mat(k,1611) = mat(k,1611) + rxt(k,285)*y(k,53) + mat(k,106) = -(rxt(k,241)*y(k,220)) + mat(k,1590) = -rxt(k,241)*y(k,77) + mat(k,598) = -(rxt(k,146)*y(k,133) + rxt(k,155)*y(k,221) + rxt(k,190)*y(k,55)) + mat(k,1999) = -rxt(k,146)*y(k,78) + mat(k,1714) = -rxt(k,155)*y(k,78) + mat(k,2195) = -rxt(k,190)*y(k,78) + mat(k,1861) = 2.000_r8*rxt(k,161)*y(k,207) + mat(k,1714) = mat(k,1714) + 2.000_r8*rxt(k,160)*y(k,221) + mat(k,263) = rxt(k,490)*y(k,233) + mat(k,2348) = rxt(k,490)*y(k,155) + mat(k,815) = -(rxt(k,236)*y(k,133) + rxt(k,237)*y(k,221) + (rxt(k,242) & + + rxt(k,243)) * y(k,220)) + mat(k,2002) = -rxt(k,236)*y(k,80) + mat(k,1736) = -rxt(k,237)*y(k,80) + mat(k,1609) = -(rxt(k,242) + rxt(k,243)) * y(k,80) + mat(k,1444) = rxt(k,223)*y(k,41) + rxt(k,224)*y(k,207) + mat(k,1519) = rxt(k,223)*y(k,16) + mat(k,1879) = rxt(k,224)*y(k,16) + mat(k,244) = -(rxt(k,259)*y(k,221) + rxt(k,264)*y(k,220)) + mat(k,1666) = -rxt(k,259)*y(k,81) + mat(k,1601) = -rxt(k,264)*y(k,81) + mat(k,254) = -(rxt(k,260)*y(k,221) + rxt(k,265)*y(k,220)) + mat(k,1668) = -rxt(k,260)*y(k,82) + mat(k,1603) = -rxt(k,265)*y(k,82) + mat(k,307) = -(rxt(k,261)*y(k,221) + rxt(k,266)*y(k,220)) + mat(k,1675) = -rxt(k,261)*y(k,83) + mat(k,1605) = -rxt(k,266)*y(k,83) + mat(k,2066) = -(rxt(k,207)*y(k,133) + rxt(k,208)*y(k,221) + (rxt(k,219) & + + rxt(k,220)) * y(k,220) + (rxt(k,535) + rxt(k,541) + rxt(k,546) & + ) * y(k,91) + (rxt(k,540) + rxt(k,545) + rxt(k,550)) * y(k,59) & + + (rxt(k,542) + rxt(k,547)) * y(k,90)) + mat(k,2022) = -rxt(k,207)*y(k,84) + mat(k,1790) = -rxt(k,208)*y(k,84) + mat(k,1625) = -(rxt(k,219) + rxt(k,220)) * y(k,84) + mat(k,827) = -(rxt(k,535) + rxt(k,541) + rxt(k,546)) * y(k,84) + mat(k,990) = -(rxt(k,540) + rxt(k,545) + rxt(k,550)) * y(k,84) + mat(k,775) = -(rxt(k,542) + rxt(k,547)) * y(k,84) + mat(k,303) = rxt(k,298)*y(k,55) + mat(k,480) = rxt(k,250)*y(k,55) + mat(k,1537) = rxt(k,187)*y(k,55) + mat(k,594) = rxt(k,252)*y(k,55) + mat(k,372) = 2.000_r8*rxt(k,255)*y(k,55) + mat(k,1471) = rxt(k,188)*y(k,55) + mat(k,386) = rxt(k,257)*y(k,55) + mat(k,2221) = rxt(k,298)*y(k,27) + rxt(k,250)*y(k,40) + rxt(k,187)*y(k,41) & + + rxt(k,252)*y(k,42) + 2.000_r8*rxt(k,255)*y(k,45) + rxt(k,188) & + *y(k,53) + rxt(k,257)*y(k,54) + rxt(k,189)*y(k,76) + rxt(k,190) & + *y(k,78) + rxt(k,209)*y(k,91) + rxt(k,191)*y(k,207) + mat(k,2248) = rxt(k,206)*y(k,221) + mat(k,1258) = rxt(k,189)*y(k,55) + mat(k,602) = rxt(k,190)*y(k,55) + mat(k,827) = mat(k,827) + rxt(k,209)*y(k,55) + mat(k,1923) = rxt(k,191)*y(k,55) + mat(k,1790) = mat(k,1790) + rxt(k,206)*y(k,58) + mat(k,185) = -(rxt(k,278)*y(k,221) + rxt(k,286)*y(k,220)) + mat(k,1654) = -rxt(k,278)*y(k,85) + mat(k,1599) = -rxt(k,286)*y(k,85) + mat(k,868) = -(rxt(k,279)*y(k,221)) + mat(k,1741) = -rxt(k,279)*y(k,86) + mat(k,935) = .050_r8*rxt(k,452)*y(k,137) + mat(k,295) = .350_r8*rxt(k,289)*y(k,221) + mat(k,537) = .370_r8*rxt(k,291)*y(k,137) + mat(k,1022) = .120_r8*rxt(k,320)*y(k,137) + mat(k,835) = .110_r8*rxt(k,397)*y(k,137) + mat(k,1224) = .330_r8*rxt(k,350)*y(k,137) + mat(k,907) = .050_r8*rxt(k,455)*y(k,137) + mat(k,1349) = .120_r8*rxt(k,364)*y(k,137) + mat(k,2300) = rxt(k,282)*y(k,208) + mat(k,1946) = .050_r8*rxt(k,452)*y(k,5) + .370_r8*rxt(k,291)*y(k,24) & + + .120_r8*rxt(k,320)*y(k,28) + .110_r8*rxt(k,397)*y(k,97) & + + .330_r8*rxt(k,350)*y(k,104) + .050_r8*rxt(k,455)*y(k,109) & + + .120_r8*rxt(k,364)*y(k,110) + mat(k,1883) = rxt(k,280)*y(k,208) + mat(k,439) = rxt(k,282)*y(k,123) + rxt(k,280)*y(k,207) + mat(k,1741) = mat(k,1741) + .350_r8*rxt(k,289)*y(k,23) + mat(k,1457) = rxt(k,244)*y(k,72) + mat(k,882) = rxt(k,244)*y(k,53) + rxt(k,245)*y(k,76) + rxt(k,247)*y(k,88) & + + rxt(k,246)*y(k,233) + mat(k,1249) = rxt(k,245)*y(k,72) + mat(k,1476) = rxt(k,247)*y(k,72) + mat(k,2350) = rxt(k,246)*y(k,72) + mat(k,1480) = -(rxt(k,184)*y(k,221) + rxt(k,247)*y(k,72)) + mat(k,1779) = -rxt(k,184)*y(k,88) + mat(k,886) = -rxt(k,247)*y(k,88) + mat(k,1526) = rxt(k,268)*y(k,125) + mat(k,1050) = rxt(k,300)*y(k,125) + mat(k,1242) = rxt(k,326)*y(k,125) + mat(k,986) = (rxt(k,540)+rxt(k,545)+rxt(k,550))*y(k,84) + mat(k,290) = rxt(k,474)*y(k,125) + mat(k,2055) = (rxt(k,540)+rxt(k,545)+rxt(k,550))*y(k,59) + mat(k,1571) = rxt(k,183)*y(k,221) + mat(k,2116) = rxt(k,268)*y(k,41) + rxt(k,300)*y(k,44) + rxt(k,326)*y(k,48) & + + rxt(k,474)*y(k,66) + mat(k,1779) = mat(k,1779) + rxt(k,183)*y(k,124) + mat(k,469) = -(rxt(k,162)*y(k,221)) + mat(k,1698) = -rxt(k,162)*y(k,89) + mat(k,1548) = rxt(k,181)*y(k,207) + mat(k,1855) = rxt(k,181)*y(k,124) + mat(k,770) = -(rxt(k,238)*y(k,133) + (rxt(k,542) + rxt(k,547)) * y(k,84)) + mat(k,2001) = -rxt(k,238)*y(k,90) + mat(k,2051) = -(rxt(k,542) + rxt(k,547)) * y(k,90) + mat(k,1800) = rxt(k,230)*y(k,207) + mat(k,1875) = rxt(k,230)*y(k,18) + mat(k,824) = -(rxt(k,209)*y(k,55) + rxt(k,210)*y(k,133) + rxt(k,211)*y(k,221) & + + (rxt(k,535) + rxt(k,541) + rxt(k,546)) * y(k,84)) + mat(k,2197) = -rxt(k,209)*y(k,91) + mat(k,2003) = -rxt(k,210)*y(k,91) + mat(k,1737) = -rxt(k,211)*y(k,91) + mat(k,2052) = -(rxt(k,535) + rxt(k,541) + rxt(k,546)) * y(k,91) + mat(k,2232) = rxt(k,198)*y(k,207) + mat(k,984) = rxt(k,203)*y(k,221) + mat(k,1880) = rxt(k,198)*y(k,58) + mat(k,1737) = mat(k,1737) + rxt(k,203)*y(k,59) + mat(k,1075) = -(rxt(k,343)*y(k,221)) + mat(k,1757) = -rxt(k,343)*y(k,92) + mat(k,577) = .300_r8*rxt(k,388)*y(k,221) + mat(k,561) = .500_r8*rxt(k,389)*y(k,221) + mat(k,2310) = rxt(k,342)*y(k,204) + rxt(k,349)*y(k,213) + mat(k,554) = rxt(k,342)*y(k,123) + mat(k,1329) = rxt(k,349)*y(k,123) + mat(k,1757) = mat(k,1757) + .300_r8*rxt(k,388)*y(k,98) + .500_r8*rxt(k,389) & + *y(k,99) + mat(k,224) = -(rxt(k,374)*y(k,221)) + mat(k,1661) = -rxt(k,374)*y(k,93) + mat(k,1089) = -(rxt(k,328)*y(k,221)) + mat(k,1758) = -rxt(k,328)*y(k,94) + mat(k,578) = .700_r8*rxt(k,388)*y(k,221) + mat(k,562) = .500_r8*rxt(k,389)*y(k,221) + mat(k,569) = .500_r8*rxt(k,363)*y(k,221) + mat(k,2311) = .050_r8*rxt(k,386)*y(k,210) + .220_r8*rxt(k,348)*y(k,213) & + + .250_r8*rxt(k,405)*y(k,229) + mat(k,2096) = .050_r8*rxt(k,387)*y(k,210) + .220_r8*rxt(k,347)*y(k,213) & + + .250_r8*rxt(k,406)*y(k,229) + mat(k,530) = .500_r8*rxt(k,332)*y(k,221) + mat(k,1401) = .220_r8*rxt(k,344)*y(k,213) + .250_r8*rxt(k,402)*y(k,229) + mat(k,2151) = .230_r8*rxt(k,345)*y(k,213) + .200_r8*rxt(k,333)*y(k,224) & + + .100_r8*rxt(k,403)*y(k,229) + mat(k,1303) = .050_r8*rxt(k,386)*y(k,123) + .050_r8*rxt(k,387)*y(k,125) + mat(k,1330) = .220_r8*rxt(k,348)*y(k,123) + .220_r8*rxt(k,347)*y(k,125) & + + .220_r8*rxt(k,344)*y(k,201) + .230_r8*rxt(k,345)*y(k,202) + mat(k,1758) = mat(k,1758) + .700_r8*rxt(k,388)*y(k,98) + .500_r8*rxt(k,389) & + *y(k,99) + .500_r8*rxt(k,363)*y(k,108) + .500_r8*rxt(k,332) & + *y(k,149) + mat(k,1163) = .200_r8*rxt(k,333)*y(k,202) + mat(k,1184) = .250_r8*rxt(k,405)*y(k,123) + .250_r8*rxt(k,406)*y(k,125) & + + .250_r8*rxt(k,402)*y(k,201) + .100_r8*rxt(k,403)*y(k,202) + mat(k,344) = -(rxt(k,375)*y(k,221)) + mat(k,1680) = -rxt(k,375)*y(k,95) + mat(k,2271) = .870_r8*rxt(k,386)*y(k,210) + mat(k,2077) = .950_r8*rxt(k,387)*y(k,210) + mat(k,1394) = rxt(k,382)*y(k,210) + mat(k,2135) = .750_r8*rxt(k,383)*y(k,210) + mat(k,1293) = .870_r8*rxt(k,386)*y(k,123) + .950_r8*rxt(k,387)*y(k,125) & + + rxt(k,382)*y(k,201) + .750_r8*rxt(k,383)*y(k,202) + mat(k,136) = -(rxt(k,376)*y(k,221)) + mat(k,1650) = -rxt(k,376)*y(k,96) + mat(k,693) = .600_r8*rxt(k,399)*y(k,221) + mat(k,1650) = mat(k,1650) + .600_r8*rxt(k,399)*y(k,102) + mat(k,834) = -(rxt(k,390)*y(k,125) + rxt(k,397)*y(k,137) + rxt(k,398) & + *y(k,221)) + mat(k,2080) = -rxt(k,390)*y(k,97) + mat(k,1945) = -rxt(k,397)*y(k,97) + mat(k,1738) = -rxt(k,398)*y(k,97) + mat(k,576) = -(rxt(k,388)*y(k,221)) + mat(k,1711) = -rxt(k,388)*y(k,98) + mat(k,2284) = .080_r8*rxt(k,380)*y(k,209) + mat(k,1263) = .080_r8*rxt(k,380)*y(k,123) + mat(k,559) = -(rxt(k,389)*y(k,221)) + mat(k,1709) = -rxt(k,389)*y(k,99) + mat(k,2283) = .080_r8*rxt(k,386)*y(k,210) + mat(k,1294) = .080_r8*rxt(k,386)*y(k,123) + mat(k,1209) = -(rxt(k,391)*y(k,201) + rxt(k,392)*y(k,202) + rxt(k,393) & + *y(k,207) + rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125)) + mat(k,1405) = -rxt(k,391)*y(k,100) + mat(k,2159) = -rxt(k,392)*y(k,100) + mat(k,1900) = -rxt(k,393)*y(k,100) + mat(k,2319) = -rxt(k,394)*y(k,100) + mat(k,2104) = -rxt(k,395)*y(k,100) + mat(k,838) = rxt(k,390)*y(k,125) + mat(k,2104) = mat(k,2104) + rxt(k,390)*y(k,97) + mat(k,400) = -(rxt(k,396)*y(k,221)) + mat(k,1688) = -rxt(k,396)*y(k,101) + mat(k,1199) = rxt(k,393)*y(k,207) + mat(k,1844) = rxt(k,393)*y(k,100) + mat(k,694) = -(rxt(k,399)*y(k,221)) + mat(k,1725) = -rxt(k,399)*y(k,102) + mat(k,1869) = rxt(k,379)*y(k,209) + rxt(k,384)*y(k,210) + mat(k,1264) = rxt(k,379)*y(k,207) + mat(k,1296) = rxt(k,384)*y(k,207) + mat(k,75) = -(rxt(k,520)*y(k,221)) + mat(k,1642) = -rxt(k,520)*y(k,103) + mat(k,1227) = -(rxt(k,350)*y(k,137) + rxt(k,351)*y(k,221)) + mat(k,1966) = -rxt(k,350)*y(k,104) + mat(k,1767) = -rxt(k,351)*y(k,104) + mat(k,839) = .300_r8*rxt(k,397)*y(k,137) + mat(k,2320) = .360_r8*rxt(k,380)*y(k,209) + mat(k,2105) = .400_r8*rxt(k,381)*y(k,209) + mat(k,1966) = mat(k,1966) + .300_r8*rxt(k,397)*y(k,97) + mat(k,1406) = .390_r8*rxt(k,377)*y(k,209) + mat(k,2160) = .310_r8*rxt(k,378)*y(k,209) + mat(k,1273) = .360_r8*rxt(k,380)*y(k,123) + .400_r8*rxt(k,381)*y(k,125) & + + .390_r8*rxt(k,377)*y(k,201) + .310_r8*rxt(k,378)*y(k,202) + end do + end subroutine nlnmat04 + subroutine nlnmat05( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,313) = -(rxt(k,352)*y(k,221)) + mat(k,1676) = -rxt(k,352)*y(k,105) + mat(k,1837) = rxt(k,346)*y(k,213) + mat(k,1327) = rxt(k,346)*y(k,207) + mat(k,507) = -(rxt(k,361)*y(k,221)) + mat(k,1703) = -rxt(k,361)*y(k,106) + mat(k,2280) = .800_r8*rxt(k,370)*y(k,193) + mat(k,955) = .800_r8*rxt(k,370)*y(k,123) + mat(k,318) = -(rxt(k,362)*y(k,221)) + mat(k,1677) = -rxt(k,362)*y(k,107) + mat(k,1838) = .800_r8*rxt(k,359)*y(k,217) + mat(k,671) = .800_r8*rxt(k,359)*y(k,207) + mat(k,567) = -(rxt(k,363)*y(k,221)) + mat(k,1710) = -rxt(k,363)*y(k,108) + mat(k,1552) = rxt(k,366)*y(k,215) + mat(k,1373) = rxt(k,366)*y(k,124) + mat(k,908) = -(rxt(k,454)*y(k,125) + rxt(k,455)*y(k,137) + rxt(k,456) & + *y(k,221)) + mat(k,2084) = -rxt(k,454)*y(k,109) + mat(k,1948) = -rxt(k,455)*y(k,109) + mat(k,1745) = -rxt(k,456)*y(k,109) + mat(k,1357) = -(rxt(k,364)*y(k,137) + rxt(k,365)*y(k,221)) + mat(k,1971) = -rxt(k,364)*y(k,110) + mat(k,1773) = -rxt(k,365)*y(k,110) + mat(k,842) = .200_r8*rxt(k,397)*y(k,137) + mat(k,2325) = .560_r8*rxt(k,380)*y(k,209) + mat(k,2110) = .600_r8*rxt(k,381)*y(k,209) + mat(k,1971) = mat(k,1971) + .200_r8*rxt(k,397)*y(k,97) + mat(k,1411) = .610_r8*rxt(k,377)*y(k,209) + mat(k,2165) = .440_r8*rxt(k,378)*y(k,209) + mat(k,1277) = .560_r8*rxt(k,380)*y(k,123) + .600_r8*rxt(k,381)*y(k,125) & + + .610_r8*rxt(k,377)*y(k,201) + .440_r8*rxt(k,378)*y(k,202) + mat(k,680) = -(rxt(k,163)*y(k,123) + (rxt(k,164) + rxt(k,165) + rxt(k,166) & + ) * y(k,124) + rxt(k,167)*y(k,134) + rxt(k,175)*y(k,221)) + mat(k,2290) = -rxt(k,163)*y(k,111) + mat(k,1554) = -(rxt(k,164) + rxt(k,165) + rxt(k,166)) * y(k,111) + mat(k,1497) = -rxt(k,167)*y(k,111) + mat(k,1723) = -rxt(k,175)*y(k,111) + mat(k,259) = -((rxt(k,179) + rxt(k,180)) * y(k,220)) + mat(k,1604) = -(rxt(k,179) + rxt(k,180)) * y(k,112) + mat(k,679) = rxt(k,164)*y(k,124) + mat(k,1545) = rxt(k,164)*y(k,111) + mat(k,1546) = rxt(k,182)*y(k,125) + mat(k,2075) = rxt(k,182)*y(k,124) + mat(k,424) = -(rxt(k,400)*y(k,221)) + mat(k,1692) = -rxt(k,400)*y(k,114) + mat(k,1200) = .200_r8*rxt(k,392)*y(k,202) + mat(k,2136) = .200_r8*rxt(k,392)*y(k,100) + mat(k,1007) = -(rxt(k,401)*y(k,221)) + mat(k,1752) = -rxt(k,401)*y(k,115) + mat(k,1204) = rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125) + rxt(k,391)*y(k,201) & + + .800_r8*rxt(k,392)*y(k,202) + mat(k,2306) = rxt(k,394)*y(k,100) + mat(k,2090) = rxt(k,395)*y(k,100) + mat(k,1399) = rxt(k,391)*y(k,100) + mat(k,2147) = .800_r8*rxt(k,392)*y(k,100) + mat(k,97) = -(rxt(k,491)*y(k,221)) + mat(k,1646) = -rxt(k,491)*y(k,119) + mat(k,2346) = -(rxt(k,163)*y(k,111) + rxt(k,172)*y(k,125) + rxt(k,176) & + *y(k,207) + rxt(k,177)*y(k,137) + rxt(k,178)*y(k,133) + rxt(k,199) & + *y(k,58) + rxt(k,231)*y(k,18) + rxt(k,274)*y(k,202) + rxt(k,282) & + *y(k,208) + rxt(k,295)*y(k,198) + rxt(k,306)*y(k,201) + rxt(k,310) & + *y(k,206) + rxt(k,323)*y(k,199) + rxt(k,331)*y(k,223) + rxt(k,335) & + *y(k,224) + (rxt(k,341) + rxt(k,342)) * y(k,204) + (rxt(k,348) & + + rxt(k,349)) * y(k,213) + rxt(k,357)*y(k,215) + rxt(k,360) & + *y(k,217) + (rxt(k,370) + rxt(k,371)) * y(k,193) + rxt(k,380) & + *y(k,209) + rxt(k,386)*y(k,210) + rxt(k,394)*y(k,100) + rxt(k,405) & + *y(k,229) + rxt(k,409)*y(k,192) + rxt(k,412)*y(k,195) + rxt(k,417) & + *y(k,197) + rxt(k,419)*y(k,200) + rxt(k,423)*y(k,203) + rxt(k,426) & + *y(k,214) + rxt(k,429)*y(k,216) + rxt(k,432)*y(k,222) + rxt(k,439) & + *y(k,227) + rxt(k,445)*y(k,230) + rxt(k,448)*y(k,232) + rxt(k,459) & + *y(k,219) + rxt(k,464)*y(k,225) + rxt(k,469)*y(k,226)) + mat(k,687) = -rxt(k,163)*y(k,123) + mat(k,2132) = -rxt(k,172)*y(k,123) + mat(k,1928) = -rxt(k,176)*y(k,123) + mat(k,1993) = -rxt(k,177)*y(k,123) + mat(k,2027) = -rxt(k,178)*y(k,123) + mat(k,2253) = -rxt(k,199)*y(k,123) + mat(k,1820) = -rxt(k,231)*y(k,123) + mat(k,2185) = -rxt(k,274)*y(k,123) + mat(k,443) = -rxt(k,282)*y(k,123) + mat(k,867) = -rxt(k,295)*y(k,123) + mat(k,1425) = -rxt(k,306)*y(k,123) + mat(k,787) = -rxt(k,310)*y(k,123) + mat(k,813) = -rxt(k,323)*y(k,123) + mat(k,797) = -rxt(k,331)*y(k,123) + mat(k,1172) = -rxt(k,335)*y(k,123) + mat(k,558) = -(rxt(k,341) + rxt(k,342)) * y(k,123) + mat(k,1347) = -(rxt(k,348) + rxt(k,349)) * y(k,123) + mat(k,1392) = -rxt(k,357)*y(k,123) + mat(k,678) = -rxt(k,360)*y(k,123) + mat(k,970) = -(rxt(k,370) + rxt(k,371)) * y(k,123) + mat(k,1290) = -rxt(k,380)*y(k,123) + mat(k,1325) = -rxt(k,386)*y(k,123) + mat(k,1223) = -rxt(k,394)*y(k,123) + mat(k,1198) = -rxt(k,405)*y(k,123) + mat(k,518) = -rxt(k,409)*y(k,123) + mat(k,498) = -rxt(k,412)*y(k,123) + mat(k,437) = -rxt(k,417)*y(k,123) + mat(k,625) = -rxt(k,419)*y(k,123) + mat(k,768) = -rxt(k,423)*y(k,123) + mat(k,728) = -rxt(k,426)*y(k,123) + mat(k,881) = -rxt(k,429)*y(k,123) + mat(k,450) = -rxt(k,432)*y(k,123) + mat(k,743) = -rxt(k,439)*y(k,123) + mat(k,760) = -rxt(k,445)*y(k,123) + mat(k,506) = -rxt(k,448)*y(k,123) + mat(k,1071) = -rxt(k,459)*y(k,123) + mat(k,1159) = -rxt(k,464)*y(k,123) + mat(k,1138) = -rxt(k,469)*y(k,123) + mat(k,687) = mat(k,687) + 2.000_r8*rxt(k,165)*y(k,124) + rxt(k,167)*y(k,134) & + + rxt(k,175)*y(k,221) + mat(k,262) = 2.000_r8*rxt(k,179)*y(k,220) + mat(k,1587) = 2.000_r8*rxt(k,165)*y(k,111) + rxt(k,168)*y(k,133) + rxt(k,484) & + *y(k,153) + mat(k,2027) = mat(k,2027) + rxt(k,168)*y(k,124) + mat(k,1516) = rxt(k,167)*y(k,111) + mat(k,1442) = rxt(k,484)*y(k,124) + mat(k,1630) = 2.000_r8*rxt(k,179)*y(k,112) + mat(k,1795) = rxt(k,175)*y(k,111) + mat(k,1574) = -((rxt(k,164) + rxt(k,165) + rxt(k,166)) * y(k,111) + (rxt(k,168) & + + rxt(k,170)) * y(k,133) + rxt(k,169)*y(k,137) + rxt(k,181) & + *y(k,207) + rxt(k,182)*y(k,125) + rxt(k,183)*y(k,221) + rxt(k,201) & + *y(k,58) + rxt(k,232)*y(k,18) + rxt(k,317)*y(k,201) + rxt(k,366) & + *y(k,215) + rxt(k,424)*y(k,203) + rxt(k,427)*y(k,214) + rxt(k,430) & + *y(k,216) + rxt(k,434)*y(k,144) + rxt(k,437)*y(k,192) + rxt(k,484) & + *y(k,153)) + mat(k,682) = -(rxt(k,164) + rxt(k,165) + rxt(k,166)) * y(k,124) + mat(k,2014) = -(rxt(k,168) + rxt(k,170)) * y(k,124) + mat(k,1980) = -rxt(k,169)*y(k,124) + mat(k,1915) = -rxt(k,181)*y(k,124) + mat(k,2119) = -rxt(k,182)*y(k,124) + mat(k,1782) = -rxt(k,183)*y(k,124) + mat(k,2240) = -rxt(k,201)*y(k,124) + mat(k,1807) = -rxt(k,232)*y(k,124) + mat(k,1418) = -rxt(k,317)*y(k,124) + mat(k,1385) = -rxt(k,366)*y(k,124) + mat(k,764) = -rxt(k,424)*y(k,124) + mat(k,726) = -rxt(k,427)*y(k,124) + mat(k,877) = -rxt(k,430)*y(k,124) + mat(k,467) = -rxt(k,434)*y(k,124) + mat(k,515) = -rxt(k,437)*y(k,124) + mat(k,1433) = -rxt(k,484)*y(k,124) + mat(k,668) = rxt(k,368)*y(k,221) + mat(k,357) = rxt(k,339)*y(k,125) + mat(k,1807) = mat(k,1807) + rxt(k,231)*y(k,123) + mat(k,2240) = mat(k,2240) + rxt(k,199)*y(k,123) + mat(k,471) = rxt(k,162)*y(k,221) + mat(k,582) = .700_r8*rxt(k,388)*y(k,221) + mat(k,1217) = rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125) + mat(k,2333) = rxt(k,231)*y(k,18) + rxt(k,199)*y(k,58) + rxt(k,394)*y(k,100) & + + 2.000_r8*rxt(k,172)*y(k,125) + rxt(k,178)*y(k,133) & + + rxt(k,177)*y(k,137) + rxt(k,409)*y(k,192) + rxt(k,370) & + *y(k,193) + rxt(k,412)*y(k,195) + rxt(k,417)*y(k,197) & + + rxt(k,295)*y(k,198) + rxt(k,323)*y(k,199) + rxt(k,419) & + *y(k,200) + rxt(k,306)*y(k,201) + rxt(k,274)*y(k,202) & + + rxt(k,423)*y(k,203) + rxt(k,341)*y(k,204) + rxt(k,310) & + *y(k,206) + rxt(k,176)*y(k,207) + rxt(k,282)*y(k,208) & + + .920_r8*rxt(k,380)*y(k,209) + .920_r8*rxt(k,386)*y(k,210) & + + rxt(k,348)*y(k,213) + rxt(k,426)*y(k,214) + rxt(k,357) & + *y(k,215) + rxt(k,429)*y(k,216) + rxt(k,360)*y(k,217) & + + 1.600_r8*rxt(k,459)*y(k,219) + rxt(k,432)*y(k,222) & + + rxt(k,331)*y(k,223) + rxt(k,335)*y(k,224) + .900_r8*rxt(k,464) & + *y(k,225) + .800_r8*rxt(k,469)*y(k,226) + rxt(k,439)*y(k,227) & + + rxt(k,405)*y(k,229) + rxt(k,445)*y(k,230) + rxt(k,448) & + *y(k,232) + mat(k,2119) = mat(k,2119) + rxt(k,339)*y(k,15) + rxt(k,395)*y(k,100) & + + 2.000_r8*rxt(k,172)*y(k,123) + rxt(k,173)*y(k,133) & + + rxt(k,171)*y(k,207) + rxt(k,381)*y(k,209) + rxt(k,387) & + *y(k,210) + rxt(k,347)*y(k,213) + rxt(k,358)*y(k,215) & + + 2.000_r8*rxt(k,460)*y(k,219) + rxt(k,174)*y(k,221) & + + rxt(k,406)*y(k,229) + mat(k,854) = rxt(k,329)*y(k,221) + mat(k,2014) = mat(k,2014) + rxt(k,178)*y(k,123) + rxt(k,173)*y(k,125) + mat(k,1980) = mat(k,1980) + rxt(k,177)*y(k,123) + mat(k,615) = rxt(k,466)*y(k,221) + mat(k,515) = mat(k,515) + rxt(k,409)*y(k,123) + mat(k,966) = rxt(k,370)*y(k,123) + mat(k,495) = rxt(k,412)*y(k,123) + mat(k,434) = rxt(k,417)*y(k,123) + mat(k,863) = rxt(k,295)*y(k,123) + mat(k,809) = rxt(k,323)*y(k,123) + mat(k,621) = rxt(k,419)*y(k,123) + mat(k,1418) = mat(k,1418) + rxt(k,306)*y(k,123) + mat(k,2172) = rxt(k,274)*y(k,123) + .500_r8*rxt(k,457)*y(k,219) + mat(k,764) = mat(k,764) + rxt(k,423)*y(k,123) + mat(k,556) = rxt(k,341)*y(k,123) + mat(k,784) = rxt(k,310)*y(k,123) + mat(k,1915) = mat(k,1915) + rxt(k,176)*y(k,123) + rxt(k,171)*y(k,125) + mat(k,441) = rxt(k,282)*y(k,123) + mat(k,1283) = .920_r8*rxt(k,380)*y(k,123) + rxt(k,381)*y(k,125) + mat(k,1318) = .920_r8*rxt(k,386)*y(k,123) + rxt(k,387)*y(k,125) + mat(k,1341) = rxt(k,348)*y(k,123) + rxt(k,347)*y(k,125) + mat(k,726) = mat(k,726) + rxt(k,426)*y(k,123) + mat(k,1385) = mat(k,1385) + rxt(k,357)*y(k,123) + rxt(k,358)*y(k,125) + mat(k,877) = mat(k,877) + rxt(k,429)*y(k,123) + mat(k,675) = rxt(k,360)*y(k,123) + mat(k,1066) = 1.600_r8*rxt(k,459)*y(k,123) + 2.000_r8*rxt(k,460)*y(k,125) & + + .500_r8*rxt(k,457)*y(k,202) + mat(k,1782) = mat(k,1782) + rxt(k,368)*y(k,1) + rxt(k,162)*y(k,89) & + + .700_r8*rxt(k,388)*y(k,98) + rxt(k,174)*y(k,125) + rxt(k,329) & + *y(k,126) + rxt(k,466)*y(k,179) + mat(k,447) = rxt(k,432)*y(k,123) + mat(k,794) = rxt(k,331)*y(k,123) + mat(k,1168) = rxt(k,335)*y(k,123) + mat(k,1154) = .900_r8*rxt(k,464)*y(k,123) + mat(k,1132) = .800_r8*rxt(k,469)*y(k,123) + mat(k,740) = rxt(k,439)*y(k,123) + mat(k,1192) = rxt(k,405)*y(k,123) + rxt(k,406)*y(k,125) + mat(k,757) = rxt(k,445)*y(k,123) + mat(k,503) = rxt(k,448)*y(k,123) + end do + end subroutine nlnmat05 + subroutine nlnmat06( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,2128) = -(rxt(k,171)*y(k,207) + rxt(k,172)*y(k,123) + rxt(k,173) & + *y(k,133) + rxt(k,174)*y(k,221) + rxt(k,182)*y(k,124) + rxt(k,268) & + *y(k,41) + rxt(k,300)*y(k,44) + rxt(k,319)*y(k,28) + rxt(k,326) & + *y(k,48) + rxt(k,339)*y(k,15) + rxt(k,347)*y(k,213) + rxt(k,358) & + *y(k,215) + rxt(k,381)*y(k,209) + rxt(k,387)*y(k,210) + rxt(k,390) & + *y(k,97) + rxt(k,395)*y(k,100) + rxt(k,406)*y(k,229) + rxt(k,451) & + *y(k,5) + rxt(k,454)*y(k,109) + rxt(k,460)*y(k,219) + rxt(k,471) & + *y(k,181) + rxt(k,474)*y(k,66)) + mat(k,1924) = -rxt(k,171)*y(k,125) + mat(k,2342) = -rxt(k,172)*y(k,125) + mat(k,2023) = -rxt(k,173)*y(k,125) + mat(k,1791) = -rxt(k,174)*y(k,125) + mat(k,1583) = -rxt(k,182)*y(k,125) + mat(k,1538) = -rxt(k,268)*y(k,125) + mat(k,1053) = -rxt(k,300)*y(k,125) + mat(k,1037) = -rxt(k,319)*y(k,125) + mat(k,1247) = -rxt(k,326)*y(k,125) + mat(k,359) = -rxt(k,339)*y(k,125) + mat(k,1345) = -rxt(k,347)*y(k,125) + mat(k,1390) = -rxt(k,358)*y(k,125) + mat(k,1288) = -rxt(k,381)*y(k,125) + mat(k,1323) = -rxt(k,387)*y(k,125) + mat(k,848) = -rxt(k,390)*y(k,125) + mat(k,1221) = -rxt(k,395)*y(k,125) + mat(k,1196) = -rxt(k,406)*y(k,125) + mat(k,953) = -rxt(k,451)*y(k,125) + mat(k,925) = -rxt(k,454)*y(k,125) + mat(k,1069) = -rxt(k,460)*y(k,125) + mat(k,1002) = -rxt(k,471)*y(k,125) + mat(k,293) = -rxt(k,474)*y(k,125) + mat(k,550) = rxt(k,233)*y(k,133) + mat(k,2222) = rxt(k,200)*y(k,59) + mat(k,991) = rxt(k,200)*y(k,55) + rxt(k,202)*y(k,133) + rxt(k,203)*y(k,221) + mat(k,889) = rxt(k,247)*y(k,88) + mat(k,1490) = rxt(k,247)*y(k,72) + rxt(k,184)*y(k,221) + mat(k,575) = .500_r8*rxt(k,363)*y(k,221) + mat(k,1583) = mat(k,1583) + rxt(k,170)*y(k,133) + rxt(k,169)*y(k,137) + mat(k,2023) = mat(k,2023) + rxt(k,233)*y(k,19) + rxt(k,202)*y(k,59) & + + rxt(k,170)*y(k,124) + mat(k,1989) = rxt(k,169)*y(k,124) + mat(k,525) = rxt(k,315)*y(k,221) + mat(k,1791) = mat(k,1791) + rxt(k,203)*y(k,59) + rxt(k,184)*y(k,88) & + + .500_r8*rxt(k,363)*y(k,108) + rxt(k,315)*y(k,142) + mat(k,850) = -(rxt(k,329)*y(k,221)) + mat(k,1739) = -rxt(k,329)*y(k,126) + mat(k,1021) = rxt(k,319)*y(k,125) + mat(k,560) = .500_r8*rxt(k,389)*y(k,221) + mat(k,402) = rxt(k,396)*y(k,221) + mat(k,425) = rxt(k,400)*y(k,221) + mat(k,1004) = rxt(k,401)*y(k,221) + mat(k,2081) = rxt(k,319)*y(k,28) + mat(k,1739) = mat(k,1739) + .500_r8*rxt(k,389)*y(k,99) + rxt(k,396)*y(k,101) & + + rxt(k,400)*y(k,114) + rxt(k,401)*y(k,115) + mat(k,388) = -(rxt(k,461)*y(k,221)) + mat(k,1686) = -rxt(k,461)*y(k,127) + mat(k,1842) = rxt(k,458)*y(k,219) + mat(k,1056) = rxt(k,458)*y(k,207) + mat(k,2020) = -(rxt(k,142)*y(k,137) + 4._r8*rxt(k,143)*y(k,133) + rxt(k,144) & + *y(k,134) + rxt(k,145)*y(k,76) + rxt(k,146)*y(k,78) + rxt(k,151) & + *y(k,207) + rxt(k,157)*y(k,221) + (rxt(k,168) + rxt(k,170) & + ) * y(k,124) + rxt(k,173)*y(k,125) + rxt(k,178)*y(k,123) & + + rxt(k,202)*y(k,59) + rxt(k,204)*y(k,58) + rxt(k,207)*y(k,84) & + + rxt(k,210)*y(k,91) + rxt(k,233)*y(k,19) + rxt(k,234)*y(k,18) & + + rxt(k,236)*y(k,80) + rxt(k,238)*y(k,90) + rxt(k,269)*y(k,41) & + + rxt(k,476)*y(k,140)) + mat(k,1986) = -rxt(k,142)*y(k,133) + mat(k,1512) = -rxt(k,144)*y(k,133) + mat(k,1256) = -rxt(k,145)*y(k,133) + mat(k,601) = -rxt(k,146)*y(k,133) + mat(k,1921) = -rxt(k,151)*y(k,133) + mat(k,1788) = -rxt(k,157)*y(k,133) + mat(k,1580) = -(rxt(k,168) + rxt(k,170)) * y(k,133) + mat(k,2125) = -rxt(k,173)*y(k,133) + mat(k,2339) = -rxt(k,178)*y(k,133) + mat(k,989) = -rxt(k,202)*y(k,133) + mat(k,2246) = -rxt(k,204)*y(k,133) + mat(k,2064) = -rxt(k,207)*y(k,133) + mat(k,826) = -rxt(k,210)*y(k,133) + mat(k,549) = -rxt(k,233)*y(k,133) + mat(k,1813) = -rxt(k,234)*y(k,133) + mat(k,820) = -rxt(k,236)*y(k,133) + mat(k,774) = -rxt(k,238)*y(k,133) + mat(k,1535) = -rxt(k,269)*y(k,133) + mat(k,366) = -rxt(k,476)*y(k,133) + mat(k,2040) = rxt(k,149)*y(k,207) + mat(k,685) = rxt(k,163)*y(k,123) + rxt(k,164)*y(k,124) + rxt(k,167)*y(k,134) + mat(k,2339) = mat(k,2339) + rxt(k,163)*y(k,111) + mat(k,1580) = mat(k,1580) + rxt(k,164)*y(k,111) + mat(k,1512) = mat(k,1512) + rxt(k,167)*y(k,111) + rxt(k,478)*y(k,151) & + + rxt(k,485)*y(k,153) + (rxt(k,130)+rxt(k,131))*y(k,220) + mat(k,1986) = mat(k,1986) + 2.000_r8*rxt(k,133)*y(k,220) + mat(k,721) = rxt(k,478)*y(k,134) + mat(k,1438) = rxt(k,485)*y(k,134) + mat(k,1921) = mat(k,1921) + rxt(k,149)*y(k,75) + mat(k,1623) = (rxt(k,130)+rxt(k,131))*y(k,134) + 2.000_r8*rxt(k,133)*y(k,137) + mat(k,1788) = mat(k,1788) + 2.000_r8*rxt(k,159)*y(k,221) + mat(k,1504) = -(rxt(k,130)*y(k,220) + rxt(k,136)*y(k,135) + rxt(k,144) & + *y(k,133) + rxt(k,150)*y(k,75) + rxt(k,167)*y(k,111) + rxt(k,312) & + *y(k,205) + rxt(k,478)*y(k,151) + rxt(k,485)*y(k,153)) + mat(k,1615) = -rxt(k,130)*y(k,134) + mat(k,163) = -rxt(k,136)*y(k,134) + mat(k,2012) = -rxt(k,144)*y(k,134) + mat(k,2032) = -rxt(k,150)*y(k,134) + mat(k,681) = -rxt(k,167)*y(k,134) + mat(k,459) = -rxt(k,312)*y(k,134) + mat(k,718) = -rxt(k,478)*y(k,134) + mat(k,1432) = -rxt(k,485)*y(k,134) + mat(k,1447) = rxt(k,225)*y(k,137) + rxt(k,224)*y(k,207) + mat(k,1805) = 2.000_r8*rxt(k,226)*y(k,18) + (rxt(k,228)+rxt(k,229))*y(k,58) & + + rxt(k,234)*y(k,133) + rxt(k,230)*y(k,207) + mat(k,2211) = rxt(k,193)*y(k,137) + rxt(k,191)*y(k,207) + mat(k,2238) = (rxt(k,228)+rxt(k,229))*y(k,18) + (2.000_r8*rxt(k,195) & + +2.000_r8*rxt(k,196))*y(k,58) + rxt(k,204)*y(k,133) & + + rxt(k,198)*y(k,207) + rxt(k,206)*y(k,221) + mat(k,2032) = mat(k,2032) + rxt(k,153)*y(k,137) + rxt(k,147)*y(k,207) + mat(k,470) = rxt(k,162)*y(k,221) + mat(k,681) = mat(k,681) + rxt(k,166)*y(k,124) + mat(k,260) = rxt(k,180)*y(k,220) + mat(k,2331) = rxt(k,177)*y(k,137) + mat(k,1572) = rxt(k,166)*y(k,111) + rxt(k,168)*y(k,133) + rxt(k,169)*y(k,137) + mat(k,2117) = rxt(k,173)*y(k,133) + rxt(k,171)*y(k,207) + mat(k,2012) = mat(k,2012) + rxt(k,234)*y(k,18) + rxt(k,204)*y(k,58) & + + rxt(k,168)*y(k,124) + rxt(k,173)*y(k,125) & + + 2.000_r8*rxt(k,143)*y(k,133) + rxt(k,135)*y(k,135) & + + 2.000_r8*rxt(k,142)*y(k,137) + rxt(k,151)*y(k,207) & + + rxt(k,157)*y(k,221) + mat(k,1504) = mat(k,1504) + 2.000_r8*rxt(k,136)*y(k,135) + mat(k,163) = mat(k,163) + rxt(k,135)*y(k,133) + 2.000_r8*rxt(k,136)*y(k,134) + mat(k,1978) = rxt(k,225)*y(k,16) + rxt(k,193)*y(k,55) + rxt(k,153)*y(k,75) & + + rxt(k,177)*y(k,123) + rxt(k,169)*y(k,124) & + + 2.000_r8*rxt(k,142)*y(k,133) + rxt(k,480)*y(k,151) & + + rxt(k,486)*y(k,153) + 2.000_r8*rxt(k,152)*y(k,207) + ( & + + 2.000_r8*rxt(k,132)+rxt(k,133))*y(k,220) + rxt(k,158)*y(k,221) + mat(k,718) = mat(k,718) + rxt(k,480)*y(k,137) + mat(k,1432) = mat(k,1432) + rxt(k,486)*y(k,137) + mat(k,861) = rxt(k,294)*y(k,207) + mat(k,807) = rxt(k,322)*y(k,207) + mat(k,2170) = rxt(k,273)*y(k,207) + mat(k,1913) = rxt(k,224)*y(k,16) + rxt(k,230)*y(k,18) + rxt(k,191)*y(k,55) & + + rxt(k,198)*y(k,58) + rxt(k,147)*y(k,75) + rxt(k,171)*y(k,125) & + + rxt(k,151)*y(k,133) + 2.000_r8*rxt(k,152)*y(k,137) & + + rxt(k,294)*y(k,198) + rxt(k,322)*y(k,199) + rxt(k,273) & + *y(k,202) + 2.000_r8*rxt(k,161)*y(k,207) + rxt(k,156)*y(k,221) & + + rxt(k,330)*y(k,223) + mat(k,1615) = mat(k,1615) + rxt(k,180)*y(k,112) + (2.000_r8*rxt(k,132) & + +rxt(k,133))*y(k,137) + mat(k,1780) = rxt(k,206)*y(k,58) + rxt(k,162)*y(k,89) + rxt(k,157)*y(k,133) & + + rxt(k,158)*y(k,137) + rxt(k,156)*y(k,207) + mat(k,792) = rxt(k,330)*y(k,207) + mat(k,162) = -(rxt(k,135)*y(k,133) + rxt(k,136)*y(k,134)) + mat(k,1995) = -rxt(k,135)*y(k,135) + mat(k,1494) = -rxt(k,136)*y(k,135) + mat(k,1041) = rxt(k,137)*y(k,136) + mat(k,1995) = mat(k,1995) + rxt(k,139)*y(k,136) + mat(k,1494) = mat(k,1494) + rxt(k,140)*y(k,136) + mat(k,164) = rxt(k,137)*y(k,62) + rxt(k,139)*y(k,133) + rxt(k,140)*y(k,134) & + + rxt(k,141)*y(k,137) + mat(k,1935) = rxt(k,141)*y(k,136) + mat(k,165) = -(rxt(k,137)*y(k,62) + rxt(k,139)*y(k,133) + rxt(k,140)*y(k,134) & + + rxt(k,141)*y(k,137)) + mat(k,1042) = -rxt(k,137)*y(k,136) + mat(k,1996) = -rxt(k,139)*y(k,136) + mat(k,1495) = -rxt(k,140)*y(k,136) + mat(k,1936) = -rxt(k,141)*y(k,136) + mat(k,1495) = mat(k,1495) + rxt(k,130)*y(k,220) + mat(k,1598) = rxt(k,130)*y(k,134) + mat(k,1985) = -((rxt(k,132) + rxt(k,133)) * y(k,220) + rxt(k,142)*y(k,133) & + + rxt(k,152)*y(k,207) + rxt(k,153)*y(k,75) + rxt(k,158)*y(k,221) & + + rxt(k,169)*y(k,124) + rxt(k,177)*y(k,123) + rxt(k,193)*y(k,55) & + + rxt(k,225)*y(k,16) + rxt(k,291)*y(k,24) + rxt(k,320)*y(k,28) & + + rxt(k,350)*y(k,104) + rxt(k,364)*y(k,110) + rxt(k,397)*y(k,97) & + + rxt(k,435)*y(k,144) + rxt(k,452)*y(k,5) + rxt(k,455)*y(k,109) & + + rxt(k,480)*y(k,151) + rxt(k,486)*y(k,153)) + mat(k,1622) = -(rxt(k,132) + rxt(k,133)) * y(k,137) + mat(k,2019) = -rxt(k,142)*y(k,137) + mat(k,1920) = -rxt(k,152)*y(k,137) + mat(k,2039) = -rxt(k,153)*y(k,137) + mat(k,1787) = -rxt(k,158)*y(k,137) + mat(k,1579) = -rxt(k,169)*y(k,137) + mat(k,2338) = -rxt(k,177)*y(k,137) + mat(k,2218) = -rxt(k,193)*y(k,137) + mat(k,1453) = -rxt(k,225)*y(k,137) + mat(k,542) = -rxt(k,291)*y(k,137) + mat(k,1036) = -rxt(k,320)*y(k,137) + mat(k,1236) = -rxt(k,350)*y(k,137) + mat(k,1367) = -rxt(k,364)*y(k,137) + mat(k,847) = -rxt(k,397)*y(k,137) + mat(k,468) = -rxt(k,435)*y(k,137) + mat(k,952) = -rxt(k,452)*y(k,137) + mat(k,924) = -rxt(k,455)*y(k,137) + mat(k,720) = -rxt(k,480)*y(k,137) + mat(k,1437) = -rxt(k,486)*y(k,137) + mat(k,2019) = mat(k,2019) + rxt(k,144)*y(k,134) + mat(k,1511) = rxt(k,144)*y(k,133) + mat(k,1421) = .150_r8*rxt(k,305)*y(k,207) + mat(k,1920) = mat(k,1920) + .150_r8*rxt(k,305)*y(k,201) + .150_r8*rxt(k,355) & + *y(k,215) + mat(k,1388) = .150_r8*rxt(k,355)*y(k,207) + mat(k,328) = -(rxt(k,487)*y(k,153)) + mat(k,1427) = -rxt(k,487)*y(k,139) + mat(k,1798) = rxt(k,227)*y(k,58) + mat(k,2231) = rxt(k,227)*y(k,18) + 2.000_r8*rxt(k,197)*y(k,58) + end do + end subroutine nlnmat06 + subroutine nlnmat07( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,360) = -(rxt(k,476)*y(k,133) + rxt(k,477)*y(k,221)) + mat(k,1997) = -rxt(k,476)*y(k,140) + mat(k,1683) = -rxt(k,477)*y(k,140) + mat(k,1072) = rxt(k,343)*y(k,221) + mat(k,2267) = .100_r8*rxt(k,464)*y(k,225) + mat(k,1664) = rxt(k,343)*y(k,92) + mat(k,1140) = .100_r8*rxt(k,464)*y(k,123) + mat(k,519) = -(rxt(k,315)*y(k,221)) + mat(k,1705) = -rxt(k,315)*y(k,142) + mat(k,1550) = rxt(k,317)*y(k,201) + mat(k,1395) = rxt(k,317)*y(k,124) + mat(k,1544) = rxt(k,437)*y(k,192) + mat(k,512) = rxt(k,437)*y(k,124) + mat(k,465) = -(rxt(k,434)*y(k,124) + rxt(k,435)*y(k,137)) + mat(k,1547) = -rxt(k,434)*y(k,144) + mat(k,1939) = -rxt(k,435)*y(k,144) + mat(k,199) = .070_r8*rxt(k,421)*y(k,221) + mat(k,2277) = rxt(k,419)*y(k,200) + mat(k,180) = .060_r8*rxt(k,433)*y(k,221) + mat(k,220) = .070_r8*rxt(k,449)*y(k,221) + mat(k,619) = rxt(k,419)*y(k,123) + mat(k,1697) = .070_r8*rxt(k,421)*y(k,65) + .060_r8*rxt(k,433)*y(k,145) & + + .070_r8*rxt(k,449)*y(k,188) + mat(k,178) = -(rxt(k,433)*y(k,221)) + mat(k,1653) = -rxt(k,433)*y(k,145) + mat(k,170) = .530_r8*rxt(k,410)*y(k,221) + mat(k,1653) = mat(k,1653) + .530_r8*rxt(k,410)*y(k,6) + mat(k,333) = -(rxt(k,436)*y(k,221)) + mat(k,1678) = -rxt(k,436)*y(k,146) + mat(k,1839) = rxt(k,431)*y(k,222) + mat(k,444) = rxt(k,431)*y(k,207) + mat(k,527) = -(rxt(k,332)*y(k,221)) + mat(k,1706) = -rxt(k,332)*y(k,149) + mat(k,1860) = rxt(k,330)*y(k,223) + mat(k,788) = rxt(k,330)*y(k,207) + mat(k,394) = -(rxt(k,336)*y(k,221)) + mat(k,1687) = -rxt(k,336)*y(k,150) + mat(k,1843) = .850_r8*rxt(k,334)*y(k,224) + mat(k,1161) = .850_r8*rxt(k,334)*y(k,207) + mat(k,716) = -(rxt(k,478)*y(k,134) + rxt(k,480)*y(k,137) + rxt(k,483) & + *y(k,221)) + mat(k,1498) = -rxt(k,478)*y(k,151) + mat(k,1943) = -rxt(k,480)*y(k,151) + mat(k,1727) = -rxt(k,483)*y(k,151) + mat(k,1430) = -(rxt(k,481)*y(k,18) + rxt(k,482)*y(k,58) + rxt(k,484)*y(k,124) & + + rxt(k,485)*y(k,134) + rxt(k,486)*y(k,137) + rxt(k,487) & + *y(k,139) + rxt(k,488)*y(k,221)) + mat(k,1802) = -rxt(k,481)*y(k,153) + mat(k,2235) = -rxt(k,482)*y(k,153) + mat(k,1568) = -rxt(k,484)*y(k,153) + mat(k,1502) = -rxt(k,485)*y(k,153) + mat(k,1974) = -rxt(k,486)*y(k,153) + mat(k,330) = -rxt(k,487)*y(k,153) + mat(k,1776) = -rxt(k,488)*y(k,153) + mat(k,2008) = rxt(k,476)*y(k,140) + mat(k,1502) = mat(k,1502) + rxt(k,478)*y(k,151) + mat(k,1974) = mat(k,1974) + rxt(k,480)*y(k,151) + mat(k,364) = rxt(k,476)*y(k,133) + mat(k,717) = rxt(k,478)*y(k,134) + rxt(k,480)*y(k,137) + rxt(k,483)*y(k,221) + mat(k,1776) = mat(k,1776) + rxt(k,483)*y(k,151) + mat(k,893) = -(rxt(k,479)*y(k,221)) + mat(k,1744) = -rxt(k,479)*y(k,154) + mat(k,1801) = rxt(k,481)*y(k,153) + mat(k,2233) = rxt(k,482)*y(k,153) + mat(k,289) = rxt(k,474)*y(k,125) + (rxt(k,475)+.500_r8*rxt(k,489))*y(k,221) + mat(k,1559) = rxt(k,484)*y(k,153) + mat(k,2083) = rxt(k,474)*y(k,66) + mat(k,1499) = rxt(k,485)*y(k,153) + mat(k,1947) = rxt(k,486)*y(k,153) + mat(k,329) = rxt(k,487)*y(k,153) + mat(k,362) = rxt(k,477)*y(k,221) + mat(k,1429) = rxt(k,481)*y(k,18) + rxt(k,482)*y(k,58) + rxt(k,484)*y(k,124) & + + rxt(k,485)*y(k,134) + rxt(k,486)*y(k,137) + rxt(k,487) & + *y(k,139) + rxt(k,488)*y(k,221) + mat(k,1744) = mat(k,1744) + (rxt(k,475)+.500_r8*rxt(k,489))*y(k,66) & + + rxt(k,477)*y(k,140) + rxt(k,488)*y(k,153) + mat(k,264) = -(rxt(k,490)*y(k,233)) + mat(k,2349) = -rxt(k,490)*y(k,155) + mat(k,892) = rxt(k,479)*y(k,221) + mat(k,1669) = rxt(k,479)*y(k,154) + mat(k,927) = .2202005_r8*rxt(k,508)*y(k,137) + mat(k,899) = .0508005_r8*rxt(k,524)*y(k,137) + mat(k,2255) = .1279005_r8*rxt(k,507)*y(k,194) + .0097005_r8*rxt(k,512) & + *y(k,196) + .0003005_r8*rxt(k,515)*y(k,211) & + + .1056005_r8*rxt(k,519)*y(k,212) + .0245005_r8*rxt(k,523) & + *y(k,218) + .0154005_r8*rxt(k,529)*y(k,228) & + + .0063005_r8*rxt(k,533)*y(k,231) + mat(k,1930) = .2202005_r8*rxt(k,508)*y(k,5) + .0508005_r8*rxt(k,524)*y(k,109) + mat(k,44) = .5931005_r8*rxt(k,526)*y(k,221) + mat(k,50) = .1279005_r8*rxt(k,507)*y(k,123) + .2202005_r8*rxt(k,506)*y(k,207) + mat(k,56) = .0097005_r8*rxt(k,512)*y(k,123) + .0023005_r8*rxt(k,511)*y(k,207) + mat(k,1822) = .2202005_r8*rxt(k,506)*y(k,194) + .0023005_r8*rxt(k,511) & + *y(k,196) + .0031005_r8*rxt(k,514)*y(k,211) & + + .2381005_r8*rxt(k,518)*y(k,212) + .0508005_r8*rxt(k,522) & + *y(k,218) + .1364005_r8*rxt(k,528)*y(k,228) & + + .1677005_r8*rxt(k,532)*y(k,231) + mat(k,62) = .0003005_r8*rxt(k,515)*y(k,123) + .0031005_r8*rxt(k,514)*y(k,207) + mat(k,68) = .1056005_r8*rxt(k,519)*y(k,123) + .2381005_r8*rxt(k,518)*y(k,207) + mat(k,76) = .0245005_r8*rxt(k,523)*y(k,123) + .0508005_r8*rxt(k,522)*y(k,207) + mat(k,1632) = .5931005_r8*rxt(k,526)*y(k,176) + mat(k,82) = .0154005_r8*rxt(k,529)*y(k,123) + .1364005_r8*rxt(k,528)*y(k,207) + mat(k,88) = .0063005_r8*rxt(k,533)*y(k,123) + .1677005_r8*rxt(k,532)*y(k,207) + mat(k,928) = .2067005_r8*rxt(k,508)*y(k,137) + mat(k,900) = .1149005_r8*rxt(k,524)*y(k,137) + mat(k,2256) = .1792005_r8*rxt(k,507)*y(k,194) + .0034005_r8*rxt(k,512) & + *y(k,196) + .0003005_r8*rxt(k,515)*y(k,211) & + + .1026005_r8*rxt(k,519)*y(k,212) + .0082005_r8*rxt(k,523) & + *y(k,218) + .0452005_r8*rxt(k,529)*y(k,228) & + + .0237005_r8*rxt(k,533)*y(k,231) + mat(k,1931) = .2067005_r8*rxt(k,508)*y(k,5) + .1149005_r8*rxt(k,524)*y(k,109) + mat(k,45) = .1534005_r8*rxt(k,526)*y(k,221) + mat(k,51) = .1792005_r8*rxt(k,507)*y(k,123) + .2067005_r8*rxt(k,506)*y(k,207) + mat(k,57) = .0034005_r8*rxt(k,512)*y(k,123) + .0008005_r8*rxt(k,511)*y(k,207) + mat(k,1823) = .2067005_r8*rxt(k,506)*y(k,194) + .0008005_r8*rxt(k,511) & + *y(k,196) + .0035005_r8*rxt(k,514)*y(k,211) & + + .1308005_r8*rxt(k,518)*y(k,212) + .1149005_r8*rxt(k,522) & + *y(k,218) + .0101005_r8*rxt(k,528)*y(k,228) & + + .0174005_r8*rxt(k,532)*y(k,231) + mat(k,63) = .0003005_r8*rxt(k,515)*y(k,123) + .0035005_r8*rxt(k,514)*y(k,207) + mat(k,69) = .1026005_r8*rxt(k,519)*y(k,123) + .1308005_r8*rxt(k,518)*y(k,207) + mat(k,77) = .0082005_r8*rxt(k,523)*y(k,123) + .1149005_r8*rxt(k,522)*y(k,207) + mat(k,1633) = .1534005_r8*rxt(k,526)*y(k,176) + mat(k,83) = .0452005_r8*rxt(k,529)*y(k,123) + .0101005_r8*rxt(k,528)*y(k,207) + mat(k,89) = .0237005_r8*rxt(k,533)*y(k,123) + .0174005_r8*rxt(k,532)*y(k,207) + mat(k,929) = .0653005_r8*rxt(k,508)*y(k,137) + mat(k,901) = .0348005_r8*rxt(k,524)*y(k,137) + mat(k,2257) = .0676005_r8*rxt(k,507)*y(k,194) + .1579005_r8*rxt(k,512) & + *y(k,196) + .0073005_r8*rxt(k,515)*y(k,211) & + + .0521005_r8*rxt(k,519)*y(k,212) + .0772005_r8*rxt(k,523) & + *y(k,218) + .0966005_r8*rxt(k,529)*y(k,228) & + + .0025005_r8*rxt(k,533)*y(k,231) + mat(k,1932) = .0653005_r8*rxt(k,508)*y(k,5) + .0348005_r8*rxt(k,524)*y(k,109) + mat(k,46) = .0459005_r8*rxt(k,526)*y(k,221) + mat(k,52) = .0676005_r8*rxt(k,507)*y(k,123) + .0653005_r8*rxt(k,506)*y(k,207) + mat(k,58) = .1579005_r8*rxt(k,512)*y(k,123) + .0843005_r8*rxt(k,511)*y(k,207) + mat(k,1824) = .0653005_r8*rxt(k,506)*y(k,194) + .0843005_r8*rxt(k,511) & + *y(k,196) + .0003005_r8*rxt(k,514)*y(k,211) & + + .0348005_r8*rxt(k,518)*y(k,212) + .0348005_r8*rxt(k,522) & + *y(k,218) + .0763005_r8*rxt(k,528)*y(k,228) + .086_r8*rxt(k,532) & + *y(k,231) + mat(k,64) = .0073005_r8*rxt(k,515)*y(k,123) + .0003005_r8*rxt(k,514)*y(k,207) + mat(k,70) = .0521005_r8*rxt(k,519)*y(k,123) + .0348005_r8*rxt(k,518)*y(k,207) + mat(k,78) = .0772005_r8*rxt(k,523)*y(k,123) + .0348005_r8*rxt(k,522)*y(k,207) + mat(k,1634) = .0459005_r8*rxt(k,526)*y(k,176) + mat(k,84) = .0966005_r8*rxt(k,529)*y(k,123) + .0763005_r8*rxt(k,528)*y(k,207) + mat(k,90) = .0025005_r8*rxt(k,533)*y(k,123) + .086_r8*rxt(k,532)*y(k,207) + mat(k,930) = .1749305_r8*rxt(k,505)*y(k,125) + .1284005_r8*rxt(k,508) & + *y(k,137) + mat(k,831) = .0590245_r8*rxt(k,513)*y(k,125) + .0033005_r8*rxt(k,516) & + *y(k,137) + mat(k,902) = .1749305_r8*rxt(k,521)*y(k,125) + .0554005_r8*rxt(k,524) & + *y(k,137) + mat(k,2258) = .079_r8*rxt(k,507)*y(k,194) + .0059005_r8*rxt(k,512)*y(k,196) & + + .0057005_r8*rxt(k,515)*y(k,211) + .0143005_r8*rxt(k,519) & + *y(k,212) + .0332005_r8*rxt(k,523)*y(k,218) & + + .0073005_r8*rxt(k,529)*y(k,228) + .011_r8*rxt(k,533)*y(k,231) + mat(k,2073) = .1749305_r8*rxt(k,505)*y(k,5) + .0590245_r8*rxt(k,513)*y(k,97) & + + .1749305_r8*rxt(k,521)*y(k,109) + mat(k,1933) = .1284005_r8*rxt(k,508)*y(k,5) + .0033005_r8*rxt(k,516)*y(k,97) & + + .0554005_r8*rxt(k,524)*y(k,109) + mat(k,47) = .0085005_r8*rxt(k,526)*y(k,221) + mat(k,53) = .079_r8*rxt(k,507)*y(k,123) + .1284005_r8*rxt(k,506)*y(k,207) + mat(k,59) = .0059005_r8*rxt(k,512)*y(k,123) + .0443005_r8*rxt(k,511)*y(k,207) + mat(k,1825) = .1284005_r8*rxt(k,506)*y(k,194) + .0443005_r8*rxt(k,511) & + *y(k,196) + .0271005_r8*rxt(k,514)*y(k,211) & + + .0076005_r8*rxt(k,518)*y(k,212) + .0554005_r8*rxt(k,522) & + *y(k,218) + .2157005_r8*rxt(k,528)*y(k,228) & + + .0512005_r8*rxt(k,532)*y(k,231) + mat(k,65) = .0057005_r8*rxt(k,515)*y(k,123) + .0271005_r8*rxt(k,514)*y(k,207) + mat(k,71) = .0143005_r8*rxt(k,519)*y(k,123) + .0076005_r8*rxt(k,518)*y(k,207) + mat(k,79) = .0332005_r8*rxt(k,523)*y(k,123) + .0554005_r8*rxt(k,522)*y(k,207) + mat(k,1635) = .0085005_r8*rxt(k,526)*y(k,176) + mat(k,85) = .0073005_r8*rxt(k,529)*y(k,123) + .2157005_r8*rxt(k,528)*y(k,207) + mat(k,91) = .011_r8*rxt(k,533)*y(k,123) + .0512005_r8*rxt(k,532)*y(k,207) + mat(k,931) = .5901905_r8*rxt(k,505)*y(k,125) + .114_r8*rxt(k,508)*y(k,137) + mat(k,832) = .0250245_r8*rxt(k,513)*y(k,125) + mat(k,903) = .5901905_r8*rxt(k,521)*y(k,125) + .1278005_r8*rxt(k,524) & + *y(k,137) + mat(k,2259) = .1254005_r8*rxt(k,507)*y(k,194) + .0536005_r8*rxt(k,512) & + *y(k,196) + .0623005_r8*rxt(k,515)*y(k,211) & + + .0166005_r8*rxt(k,519)*y(k,212) + .130_r8*rxt(k,523)*y(k,218) & + + .238_r8*rxt(k,529)*y(k,228) + .1185005_r8*rxt(k,533)*y(k,231) + mat(k,2074) = .5901905_r8*rxt(k,505)*y(k,5) + .0250245_r8*rxt(k,513)*y(k,97) & + + .5901905_r8*rxt(k,521)*y(k,109) + mat(k,1934) = .114_r8*rxt(k,508)*y(k,5) + .1278005_r8*rxt(k,524)*y(k,109) + mat(k,48) = .0128005_r8*rxt(k,526)*y(k,221) + mat(k,54) = .1254005_r8*rxt(k,507)*y(k,123) + .114_r8*rxt(k,506)*y(k,207) + mat(k,60) = .0536005_r8*rxt(k,512)*y(k,123) + .1621005_r8*rxt(k,511)*y(k,207) + mat(k,1826) = .114_r8*rxt(k,506)*y(k,194) + .1621005_r8*rxt(k,511)*y(k,196) & + + .0474005_r8*rxt(k,514)*y(k,211) + .0113005_r8*rxt(k,518) & + *y(k,212) + .1278005_r8*rxt(k,522)*y(k,218) & + + .0738005_r8*rxt(k,528)*y(k,228) + .1598005_r8*rxt(k,532) & + *y(k,231) + mat(k,66) = .0623005_r8*rxt(k,515)*y(k,123) + .0474005_r8*rxt(k,514)*y(k,207) + mat(k,72) = .0166005_r8*rxt(k,519)*y(k,123) + .0113005_r8*rxt(k,518)*y(k,207) + mat(k,80) = .130_r8*rxt(k,523)*y(k,123) + .1278005_r8*rxt(k,522)*y(k,207) + mat(k,1636) = .0128005_r8*rxt(k,526)*y(k,176) + mat(k,86) = .238_r8*rxt(k,529)*y(k,123) + .0738005_r8*rxt(k,528)*y(k,207) + mat(k,92) = .1185005_r8*rxt(k,533)*y(k,123) + .1598005_r8*rxt(k,532)*y(k,207) + mat(k,49) = -(rxt(k,526)*y(k,221)) + mat(k,1637) = -rxt(k,526)*y(k,176) + mat(k,192) = .100_r8*rxt(k,441)*y(k,221) + mat(k,210) = .230_r8*rxt(k,443)*y(k,221) + mat(k,1657) = .100_r8*rxt(k,441)*y(k,184) + .230_r8*rxt(k,443)*y(k,186) + end do + end subroutine nlnmat07 + subroutine nlnmat08( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,637) = -(rxt(k,465)*y(k,221)) + mat(k,1719) = -rxt(k,465)*y(k,178) + mat(k,1865) = rxt(k,463)*y(k,225) + mat(k,1141) = rxt(k,463)*y(k,207) + mat(k,612) = -(rxt(k,466)*y(k,221)) + mat(k,1716) = -rxt(k,466)*y(k,179) + mat(k,2286) = .200_r8*rxt(k,459)*y(k,219) + .200_r8*rxt(k,469)*y(k,226) + mat(k,2138) = .500_r8*rxt(k,457)*y(k,219) + mat(k,1057) = .200_r8*rxt(k,459)*y(k,123) + .500_r8*rxt(k,457)*y(k,202) + mat(k,1118) = .200_r8*rxt(k,469)*y(k,123) + mat(k,483) = -(rxt(k,470)*y(k,221)) + mat(k,1700) = -rxt(k,470)*y(k,180) + mat(k,1856) = rxt(k,468)*y(k,226) + mat(k,1117) = rxt(k,468)*y(k,207) + mat(k,995) = -(rxt(k,471)*y(k,125) + rxt(k,472)*y(k,221)) + mat(k,2089) = -rxt(k,471)*y(k,181) + mat(k,1751) = -rxt(k,472)*y(k,181) + mat(k,940) = .330_r8*rxt(k,452)*y(k,137) + mat(k,912) = .330_r8*rxt(k,455)*y(k,137) + mat(k,2305) = .800_r8*rxt(k,459)*y(k,219) + .800_r8*rxt(k,469)*y(k,226) + mat(k,2089) = mat(k,2089) + rxt(k,460)*y(k,219) + mat(k,1953) = .330_r8*rxt(k,452)*y(k,5) + .330_r8*rxt(k,455)*y(k,109) + mat(k,613) = rxt(k,466)*y(k,221) + mat(k,2146) = .500_r8*rxt(k,457)*y(k,219) + rxt(k,467)*y(k,226) + mat(k,1059) = .800_r8*rxt(k,459)*y(k,123) + rxt(k,460)*y(k,125) & + + .500_r8*rxt(k,457)*y(k,202) + mat(k,1751) = mat(k,1751) + rxt(k,466)*y(k,179) + mat(k,1121) = .800_r8*rxt(k,469)*y(k,123) + rxt(k,467)*y(k,202) + mat(k,1097) = -(rxt(k,473)*y(k,221)) + mat(k,1759) = -rxt(k,473)*y(k,182) + mat(k,943) = .300_r8*rxt(k,452)*y(k,137) + mat(k,915) = .300_r8*rxt(k,455)*y(k,137) + mat(k,2312) = .900_r8*rxt(k,464)*y(k,225) + mat(k,1959) = .300_r8*rxt(k,452)*y(k,5) + .300_r8*rxt(k,455)*y(k,109) + mat(k,2152) = rxt(k,462)*y(k,225) + mat(k,1145) = .900_r8*rxt(k,464)*y(k,123) + rxt(k,462)*y(k,202) + mat(k,650) = -(rxt(k,440)*y(k,221)) + mat(k,1720) = -rxt(k,440)*y(k,183) + mat(k,1866) = rxt(k,438)*y(k,227) + mat(k,732) = rxt(k,438)*y(k,207) + mat(k,190) = -(rxt(k,441)*y(k,221)) + mat(k,1655) = -rxt(k,441)*y(k,184) + mat(k,206) = -(rxt(k,407)*y(k,221)) + mat(k,1658) = -rxt(k,407)*y(k,185) + mat(k,1835) = rxt(k,404)*y(k,229) + mat(k,1180) = rxt(k,404)*y(k,207) + mat(k,211) = -(rxt(k,443)*y(k,221)) + mat(k,1659) = -rxt(k,443)*y(k,186) + mat(k,705) = -(rxt(k,446)*y(k,221)) + mat(k,1726) = -rxt(k,446)*y(k,187) + mat(k,1870) = rxt(k,444)*y(k,230) + mat(k,748) = rxt(k,444)*y(k,207) + mat(k,219) = -(rxt(k,449)*y(k,221)) + mat(k,1660) = -rxt(k,449)*y(k,188) + mat(k,212) = .150_r8*rxt(k,443)*y(k,221) + mat(k,1660) = mat(k,1660) + .150_r8*rxt(k,443)*y(k,186) + mat(k,418) = -(rxt(k,450)*y(k,221)) + mat(k,1691) = -rxt(k,450)*y(k,189) + mat(k,1847) = rxt(k,447)*y(k,232) + mat(k,499) = rxt(k,447)*y(k,207) + mat(k,513) = -(rxt(k,408)*y(k,207) + rxt(k,409)*y(k,123) + rxt(k,437) & + *y(k,124)) + mat(k,1859) = -rxt(k,408)*y(k,192) + mat(k,2281) = -rxt(k,409)*y(k,192) + mat(k,1549) = -rxt(k,437)*y(k,192) + mat(k,242) = rxt(k,414)*y(k,221) + mat(k,1704) = rxt(k,414)*y(k,21) + mat(k,960) = -(rxt(k,369)*y(k,207) + (rxt(k,370) + rxt(k,371)) * y(k,123)) + mat(k,1885) = -rxt(k,369)*y(k,193) + mat(k,2302) = -(rxt(k,370) + rxt(k,371)) * y(k,193) + mat(k,630) = rxt(k,372)*y(k,221) + mat(k,230) = rxt(k,373)*y(k,221) + mat(k,1747) = rxt(k,372)*y(k,2) + rxt(k,373)*y(k,14) + mat(k,55) = -(rxt(k,506)*y(k,207) + rxt(k,507)*y(k,123)) + mat(k,1827) = -rxt(k,506)*y(k,194) + mat(k,2260) = -rxt(k,507)*y(k,194) + mat(k,932) = rxt(k,509)*y(k,221) + mat(k,1638) = rxt(k,509)*y(k,5) + mat(k,492) = -(rxt(k,411)*y(k,207) + rxt(k,412)*y(k,123)) + mat(k,1857) = -rxt(k,411)*y(k,195) + mat(k,2278) = -rxt(k,412)*y(k,195) + mat(k,171) = .350_r8*rxt(k,410)*y(k,221) + mat(k,414) = rxt(k,413)*y(k,221) + mat(k,1701) = .350_r8*rxt(k,410)*y(k,6) + rxt(k,413)*y(k,7) + mat(k,61) = -(rxt(k,511)*y(k,207) + rxt(k,512)*y(k,123)) + mat(k,1828) = -rxt(k,511)*y(k,196) + mat(k,2261) = -rxt(k,512)*y(k,196) + mat(k,167) = rxt(k,510)*y(k,221) + mat(k,1639) = rxt(k,510)*y(k,6) + mat(k,432) = -(rxt(k,415)*y(k,207) + rxt(k,417)*y(k,123)) + mat(k,1848) = -rxt(k,415)*y(k,197) + mat(k,2272) = -rxt(k,417)*y(k,197) + mat(k,340) = rxt(k,416)*y(k,221) + mat(k,193) = .070_r8*rxt(k,441)*y(k,221) + mat(k,213) = .060_r8*rxt(k,443)*y(k,221) + mat(k,1693) = rxt(k,416)*y(k,22) + .070_r8*rxt(k,441)*y(k,184) & + + .060_r8*rxt(k,443)*y(k,186) + mat(k,859) = -(4._r8*rxt(k,292)*y(k,198) + rxt(k,293)*y(k,202) + rxt(k,294) & + *y(k,207) + rxt(k,295)*y(k,123)) + mat(k,2143) = -rxt(k,293)*y(k,198) + mat(k,1882) = -rxt(k,294)*y(k,198) + mat(k,2299) = -rxt(k,295)*y(k,198) + mat(k,348) = .500_r8*rxt(k,297)*y(k,221) + mat(k,301) = rxt(k,298)*y(k,55) + rxt(k,299)*y(k,221) + mat(k,2198) = rxt(k,298)*y(k,27) + mat(k,1740) = .500_r8*rxt(k,297)*y(k,26) + rxt(k,299)*y(k,27) + mat(k,804) = -(rxt(k,321)*y(k,202) + rxt(k,322)*y(k,207) + rxt(k,323) & + *y(k,123)) + mat(k,2141) = -rxt(k,321)*y(k,199) + mat(k,1878) = -rxt(k,322)*y(k,199) + mat(k,2297) = -rxt(k,323)*y(k,199) + mat(k,407) = rxt(k,324)*y(k,221) + mat(k,111) = rxt(k,325)*y(k,221) + mat(k,1735) = rxt(k,324)*y(k,29) + rxt(k,325)*y(k,30) + mat(k,620) = -(rxt(k,418)*y(k,207) + rxt(k,419)*y(k,123)) + mat(k,1863) = -rxt(k,418)*y(k,200) + mat(k,2287) = -rxt(k,419)*y(k,200) + mat(k,274) = rxt(k,420)*y(k,221) + mat(k,2287) = mat(k,2287) + rxt(k,409)*y(k,192) + mat(k,1941) = rxt(k,435)*y(k,144) + mat(k,466) = rxt(k,435)*y(k,137) + mat(k,514) = rxt(k,409)*y(k,123) + .400_r8*rxt(k,408)*y(k,207) + mat(k,1863) = mat(k,1863) + .400_r8*rxt(k,408)*y(k,192) + mat(k,1717) = rxt(k,420)*y(k,31) + mat(k,1413) = -(4._r8*rxt(k,303)*y(k,201) + rxt(k,304)*y(k,202) + rxt(k,305) & + *y(k,207) + rxt(k,306)*y(k,123) + rxt(k,317)*y(k,124) + rxt(k,344) & + *y(k,213) + rxt(k,377)*y(k,209) + rxt(k,382)*y(k,210) + rxt(k,391) & + *y(k,100) + rxt(k,402)*y(k,229)) + mat(k,2167) = -rxt(k,304)*y(k,201) + mat(k,1909) = -rxt(k,305)*y(k,201) + mat(k,2327) = -rxt(k,306)*y(k,201) + mat(k,1567) = -rxt(k,317)*y(k,201) + mat(k,1337) = -rxt(k,344)*y(k,201) + mat(k,1279) = -rxt(k,377)*y(k,201) + mat(k,1314) = -rxt(k,382)*y(k,201) + mat(k,1213) = -rxt(k,391)*y(k,201) + mat(k,1189) = -rxt(k,402)*y(k,201) + mat(k,948) = .060_r8*rxt(k,452)*y(k,137) + mat(k,1049) = rxt(k,300)*y(k,125) + rxt(k,301)*y(k,221) + mat(k,1241) = rxt(k,326)*y(k,125) + rxt(k,327)*y(k,221) + mat(k,607) = .500_r8*rxt(k,308)*y(k,221) + mat(k,843) = .080_r8*rxt(k,397)*y(k,137) + mat(k,1231) = .100_r8*rxt(k,350)*y(k,137) + mat(k,920) = .060_r8*rxt(k,455)*y(k,137) + mat(k,1359) = .280_r8*rxt(k,364)*y(k,137) + mat(k,2327) = mat(k,2327) + .530_r8*rxt(k,348)*y(k,213) + rxt(k,357)*y(k,215) & + + rxt(k,360)*y(k,217) + rxt(k,335)*y(k,224) + mat(k,2112) = rxt(k,300)*y(k,44) + rxt(k,326)*y(k,48) + .530_r8*rxt(k,347) & + *y(k,213) + rxt(k,358)*y(k,215) + mat(k,1973) = .060_r8*rxt(k,452)*y(k,5) + .080_r8*rxt(k,397)*y(k,97) & + + .100_r8*rxt(k,350)*y(k,104) + .060_r8*rxt(k,455)*y(k,109) & + + .280_r8*rxt(k,364)*y(k,110) + mat(k,1100) = .650_r8*rxt(k,473)*y(k,221) + mat(k,1413) = mat(k,1413) + .530_r8*rxt(k,344)*y(k,213) + mat(k,2167) = mat(k,2167) + .260_r8*rxt(k,345)*y(k,213) + rxt(k,354)*y(k,215) & + + .300_r8*rxt(k,333)*y(k,224) + mat(k,1909) = mat(k,1909) + .450_r8*rxt(k,355)*y(k,215) + .200_r8*rxt(k,359) & + *y(k,217) + .150_r8*rxt(k,334)*y(k,224) + mat(k,1337) = mat(k,1337) + .530_r8*rxt(k,348)*y(k,123) + .530_r8*rxt(k,347) & + *y(k,125) + .530_r8*rxt(k,344)*y(k,201) + .260_r8*rxt(k,345) & + *y(k,202) + mat(k,1381) = rxt(k,357)*y(k,123) + rxt(k,358)*y(k,125) + rxt(k,354)*y(k,202) & + + .450_r8*rxt(k,355)*y(k,207) + 4.000_r8*rxt(k,356)*y(k,215) + mat(k,674) = rxt(k,360)*y(k,123) + .200_r8*rxt(k,359)*y(k,207) + mat(k,1775) = rxt(k,301)*y(k,44) + rxt(k,327)*y(k,48) + .500_r8*rxt(k,308) & + *y(k,50) + .650_r8*rxt(k,473)*y(k,182) + mat(k,1166) = rxt(k,335)*y(k,123) + .300_r8*rxt(k,333)*y(k,202) & + + .150_r8*rxt(k,334)*y(k,207) + mat(k,2182) = -(rxt(k,194)*y(k,58) + (4._r8*rxt(k,271) + 4._r8*rxt(k,272) & + ) * y(k,202) + rxt(k,273)*y(k,207) + rxt(k,274)*y(k,123) & + + rxt(k,293)*y(k,198) + rxt(k,304)*y(k,201) + rxt(k,321) & + *y(k,199) + rxt(k,333)*y(k,224) + rxt(k,345)*y(k,213) + rxt(k,354) & + *y(k,215) + rxt(k,378)*y(k,209) + rxt(k,383)*y(k,210) + rxt(k,392) & + *y(k,100) + rxt(k,403)*y(k,229) + rxt(k,457)*y(k,219) + rxt(k,462) & + *y(k,225) + rxt(k,467)*y(k,226)) + mat(k,2250) = -rxt(k,194)*y(k,202) + mat(k,1925) = -rxt(k,273)*y(k,202) + mat(k,2343) = -rxt(k,274)*y(k,202) + mat(k,866) = -rxt(k,293)*y(k,202) + mat(k,1424) = -rxt(k,304)*y(k,202) + mat(k,812) = -rxt(k,321)*y(k,202) + mat(k,1171) = -rxt(k,333)*y(k,202) + mat(k,1346) = -rxt(k,345)*y(k,202) + mat(k,1391) = -rxt(k,354)*y(k,202) + mat(k,1289) = -rxt(k,378)*y(k,202) + mat(k,1324) = -rxt(k,383)*y(k,202) + mat(k,1222) = -rxt(k,392)*y(k,202) + mat(k,1197) = -rxt(k,403)*y(k,202) + mat(k,1070) = -rxt(k,457)*y(k,202) + mat(k,1158) = -rxt(k,462)*y(k,202) + mat(k,1137) = -rxt(k,467)*y(k,202) + mat(k,1038) = .280_r8*rxt(k,320)*y(k,137) + mat(k,691) = rxt(k,307)*y(k,221) + mat(k,455) = .700_r8*rxt(k,276)*y(k,221) + mat(k,1473) = rxt(k,188)*y(k,55) + rxt(k,244)*y(k,72) + rxt(k,283)*y(k,220) & + + rxt(k,277)*y(k,221) + mat(k,2223) = rxt(k,188)*y(k,53) + mat(k,890) = rxt(k,244)*y(k,53) + mat(k,849) = .050_r8*rxt(k,397)*y(k,137) + mat(k,1222) = mat(k,1222) + rxt(k,391)*y(k,201) + mat(k,2343) = mat(k,2343) + rxt(k,306)*y(k,201) + .830_r8*rxt(k,423)*y(k,203) & + + .170_r8*rxt(k,429)*y(k,216) + mat(k,1990) = .280_r8*rxt(k,320)*y(k,28) + .050_r8*rxt(k,397)*y(k,97) + mat(k,1424) = mat(k,1424) + rxt(k,391)*y(k,100) + rxt(k,306)*y(k,123) & + + 4.000_r8*rxt(k,303)*y(k,201) + .900_r8*rxt(k,304)*y(k,202) & + + .490_r8*rxt(k,305)*y(k,207) + rxt(k,377)*y(k,209) + rxt(k,382) & + *y(k,210) + rxt(k,344)*y(k,213) + rxt(k,353)*y(k,215) & + + rxt(k,402)*y(k,229) + mat(k,2182) = mat(k,2182) + .900_r8*rxt(k,304)*y(k,201) + mat(k,767) = .830_r8*rxt(k,423)*y(k,123) + .330_r8*rxt(k,422)*y(k,207) + mat(k,1925) = mat(k,1925) + .490_r8*rxt(k,305)*y(k,201) + .330_r8*rxt(k,422) & + *y(k,203) + .070_r8*rxt(k,428)*y(k,216) + mat(k,1289) = mat(k,1289) + rxt(k,377)*y(k,201) + mat(k,1324) = mat(k,1324) + rxt(k,382)*y(k,201) + mat(k,1346) = mat(k,1346) + rxt(k,344)*y(k,201) + mat(k,1391) = mat(k,1391) + rxt(k,353)*y(k,201) + mat(k,880) = .170_r8*rxt(k,429)*y(k,123) + .070_r8*rxt(k,428)*y(k,207) + mat(k,1627) = rxt(k,283)*y(k,53) + mat(k,1792) = rxt(k,307)*y(k,49) + .700_r8*rxt(k,276)*y(k,52) + rxt(k,277) & + *y(k,53) + mat(k,1197) = mat(k,1197) + rxt(k,402)*y(k,201) + end do + end subroutine nlnmat08 + subroutine nlnmat09( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,761) = -(rxt(k,422)*y(k,207) + rxt(k,423)*y(k,123) + rxt(k,424) & + *y(k,124)) + mat(k,1874) = -rxt(k,422)*y(k,203) + mat(k,2294) = -rxt(k,423)*y(k,203) + mat(k,1556) = -rxt(k,424)*y(k,203) + mat(k,551) = -((rxt(k,341) + rxt(k,342)) * y(k,123)) + mat(k,2282) = -(rxt(k,341) + rxt(k,342)) * y(k,204) + mat(k,353) = rxt(k,340)*y(k,221) + mat(k,1708) = rxt(k,340)*y(k,15) + mat(k,457) = -(rxt(k,312)*y(k,134)) + mat(k,1496) = -rxt(k,312)*y(k,205) + mat(k,2275) = .750_r8*rxt(k,310)*y(k,206) + mat(k,779) = .750_r8*rxt(k,310)*y(k,123) + mat(k,780) = -(rxt(k,309)*y(k,207) + rxt(k,310)*y(k,123)) + mat(k,1876) = -rxt(k,309)*y(k,206) + mat(k,2295) = -rxt(k,310)*y(k,206) + mat(k,536) = rxt(k,316)*y(k,221) + mat(k,1732) = rxt(k,316)*y(k,24) + mat(k,1919) = -((rxt(k,147) + rxt(k,148) + rxt(k,149)) * y(k,75) + rxt(k,151) & + *y(k,133) + rxt(k,152)*y(k,137) + rxt(k,156)*y(k,221) & + + 4._r8*rxt(k,161)*y(k,207) + rxt(k,171)*y(k,125) + rxt(k,176) & + *y(k,123) + rxt(k,181)*y(k,124) + (rxt(k,191) + rxt(k,192) & + ) * y(k,55) + rxt(k,198)*y(k,58) + rxt(k,224)*y(k,16) + rxt(k,230) & + *y(k,18) + rxt(k,267)*y(k,41) + rxt(k,273)*y(k,202) + rxt(k,280) & + *y(k,208) + rxt(k,294)*y(k,198) + rxt(k,305)*y(k,201) + rxt(k,309) & + *y(k,206) + rxt(k,322)*y(k,199) + rxt(k,330)*y(k,223) + rxt(k,334) & + *y(k,224) + rxt(k,346)*y(k,213) + rxt(k,355)*y(k,215) + rxt(k,359) & + *y(k,217) + rxt(k,369)*y(k,193) + rxt(k,379)*y(k,209) + rxt(k,384) & + *y(k,210) + rxt(k,393)*y(k,100) + rxt(k,404)*y(k,229) + rxt(k,408) & + *y(k,192) + rxt(k,411)*y(k,195) + rxt(k,415)*y(k,197) + rxt(k,418) & + *y(k,200) + rxt(k,422)*y(k,203) + rxt(k,425)*y(k,214) + rxt(k,428) & + *y(k,216) + rxt(k,431)*y(k,222) + rxt(k,438)*y(k,227) + rxt(k,444) & + *y(k,230) + rxt(k,447)*y(k,232) + rxt(k,458)*y(k,219) + rxt(k,463) & + *y(k,225) + rxt(k,468)*y(k,226)) + mat(k,2038) = -(rxt(k,147) + rxt(k,148) + rxt(k,149)) * y(k,207) + mat(k,2018) = -rxt(k,151)*y(k,207) + mat(k,1984) = -rxt(k,152)*y(k,207) + mat(k,1786) = -rxt(k,156)*y(k,207) + mat(k,2123) = -rxt(k,171)*y(k,207) + mat(k,2337) = -rxt(k,176)*y(k,207) + mat(k,1578) = -rxt(k,181)*y(k,207) + mat(k,2217) = -(rxt(k,191) + rxt(k,192)) * y(k,207) + mat(k,2244) = -rxt(k,198)*y(k,207) + mat(k,1452) = -rxt(k,224)*y(k,207) + mat(k,1811) = -rxt(k,230)*y(k,207) + mat(k,1533) = -rxt(k,267)*y(k,207) + mat(k,2176) = -rxt(k,273)*y(k,207) + mat(k,442) = -rxt(k,280)*y(k,207) + mat(k,865) = -rxt(k,294)*y(k,207) + mat(k,1420) = -rxt(k,305)*y(k,207) + mat(k,786) = -rxt(k,309)*y(k,207) + mat(k,811) = -rxt(k,322)*y(k,207) + mat(k,796) = -rxt(k,330)*y(k,207) + mat(k,1170) = -rxt(k,334)*y(k,207) + mat(k,1343) = -rxt(k,346)*y(k,207) + mat(k,1387) = -rxt(k,355)*y(k,207) + mat(k,677) = -rxt(k,359)*y(k,207) + mat(k,968) = -rxt(k,369)*y(k,207) + mat(k,1285) = -rxt(k,379)*y(k,207) + mat(k,1320) = -rxt(k,384)*y(k,207) + mat(k,1219) = -rxt(k,393)*y(k,207) + mat(k,1194) = -rxt(k,404)*y(k,207) + mat(k,517) = -rxt(k,408)*y(k,207) + mat(k,497) = -rxt(k,411)*y(k,207) + mat(k,436) = -rxt(k,415)*y(k,207) + mat(k,623) = -rxt(k,418)*y(k,207) + mat(k,766) = -rxt(k,422)*y(k,207) + mat(k,727) = -rxt(k,425)*y(k,207) + mat(k,879) = -rxt(k,428)*y(k,207) + mat(k,449) = -rxt(k,431)*y(k,207) + mat(k,742) = -rxt(k,438)*y(k,207) + mat(k,759) = -rxt(k,444)*y(k,207) + mat(k,505) = -rxt(k,447)*y(k,207) + mat(k,1068) = -rxt(k,458)*y(k,207) + mat(k,1156) = -rxt(k,463)*y(k,207) + mat(k,1134) = -rxt(k,468)*y(k,207) + mat(k,951) = .570_r8*rxt(k,452)*y(k,137) + mat(k,173) = .650_r8*rxt(k,410)*y(k,221) + mat(k,1452) = mat(k,1452) + rxt(k,223)*y(k,41) + mat(k,1811) = mat(k,1811) + rxt(k,235)*y(k,221) + mat(k,299) = .350_r8*rxt(k,289)*y(k,221) + mat(k,541) = .130_r8*rxt(k,291)*y(k,137) + mat(k,271) = rxt(k,296)*y(k,221) + mat(k,1035) = .280_r8*rxt(k,320)*y(k,137) + mat(k,1533) = mat(k,1533) + rxt(k,223)*y(k,16) + rxt(k,187)*y(k,55) & + + rxt(k,268)*y(k,125) + rxt(k,269)*y(k,133) + mat(k,593) = rxt(k,252)*y(k,55) + rxt(k,253)*y(k,221) + mat(k,371) = rxt(k,255)*y(k,55) + rxt(k,256)*y(k,221) + mat(k,105) = rxt(k,302)*y(k,221) + mat(k,802) = rxt(k,275)*y(k,221) + mat(k,1468) = rxt(k,284)*y(k,220) + mat(k,2217) = mat(k,2217) + rxt(k,187)*y(k,41) + rxt(k,252)*y(k,42) & + + rxt(k,255)*y(k,45) + rxt(k,190)*y(k,78) + mat(k,2244) = mat(k,2244) + rxt(k,194)*y(k,202) + rxt(k,205)*y(k,221) + mat(k,1178) = rxt(k,287)*y(k,221) + mat(k,201) = .730_r8*rxt(k,421)*y(k,221) + mat(k,292) = .500_r8*rxt(k,489)*y(k,221) + mat(k,1115) = rxt(k,313)*y(k,221) + mat(k,982) = rxt(k,314)*y(k,221) + mat(k,2038) = mat(k,2038) + rxt(k,150)*y(k,134) + mat(k,600) = rxt(k,190)*y(k,55) + rxt(k,146)*y(k,133) + rxt(k,155)*y(k,221) + mat(k,188) = rxt(k,278)*y(k,221) + mat(k,871) = rxt(k,279)*y(k,221) + mat(k,1085) = rxt(k,343)*y(k,221) + mat(k,1094) = rxt(k,328)*y(k,221) + mat(k,846) = .370_r8*rxt(k,397)*y(k,137) + mat(k,584) = .300_r8*rxt(k,388)*y(k,221) + mat(k,566) = rxt(k,389)*y(k,221) + mat(k,1219) = mat(k,1219) + rxt(k,394)*y(k,123) + rxt(k,395)*y(k,125) & + + rxt(k,391)*y(k,201) + 1.200_r8*rxt(k,392)*y(k,202) + mat(k,405) = rxt(k,396)*y(k,221) + mat(k,1235) = .140_r8*rxt(k,350)*y(k,137) + mat(k,317) = .200_r8*rxt(k,352)*y(k,221) + mat(k,574) = .500_r8*rxt(k,363)*y(k,221) + mat(k,923) = .570_r8*rxt(k,455)*y(k,137) + mat(k,1366) = .280_r8*rxt(k,364)*y(k,137) + mat(k,429) = rxt(k,400)*y(k,221) + mat(k,1016) = rxt(k,401)*y(k,221) + mat(k,2337) = mat(k,2337) + rxt(k,394)*y(k,100) + rxt(k,370)*y(k,193) & + + rxt(k,412)*y(k,195) + rxt(k,417)*y(k,197) + rxt(k,295) & + *y(k,198) + rxt(k,323)*y(k,199) + rxt(k,274)*y(k,202) & + + .170_r8*rxt(k,423)*y(k,203) + rxt(k,341)*y(k,204) & + + .250_r8*rxt(k,310)*y(k,206) + rxt(k,282)*y(k,208) & + + .920_r8*rxt(k,380)*y(k,209) + .920_r8*rxt(k,386)*y(k,210) & + + .470_r8*rxt(k,348)*y(k,213) + .400_r8*rxt(k,426)*y(k,214) & + + .830_r8*rxt(k,429)*y(k,216) + rxt(k,432)*y(k,222) + rxt(k,331) & + *y(k,223) + .900_r8*rxt(k,464)*y(k,225) + .800_r8*rxt(k,469) & + *y(k,226) + rxt(k,439)*y(k,227) + rxt(k,405)*y(k,229) & + + rxt(k,445)*y(k,230) + rxt(k,448)*y(k,232) + mat(k,2123) = mat(k,2123) + rxt(k,268)*y(k,41) + rxt(k,395)*y(k,100) & + + rxt(k,381)*y(k,209) + rxt(k,387)*y(k,210) + .470_r8*rxt(k,347) & + *y(k,213) + rxt(k,174)*y(k,221) + rxt(k,406)*y(k,229) + mat(k,2018) = mat(k,2018) + rxt(k,269)*y(k,41) + rxt(k,146)*y(k,78) + mat(k,1510) = rxt(k,150)*y(k,75) + rxt(k,312)*y(k,205) + mat(k,1984) = mat(k,1984) + .570_r8*rxt(k,452)*y(k,5) + .130_r8*rxt(k,291) & + *y(k,24) + .280_r8*rxt(k,320)*y(k,28) + .370_r8*rxt(k,397) & + *y(k,97) + .140_r8*rxt(k,350)*y(k,104) + .570_r8*rxt(k,455) & + *y(k,109) + .280_r8*rxt(k,364)*y(k,110) + rxt(k,158)*y(k,221) + mat(k,182) = .800_r8*rxt(k,433)*y(k,221) + mat(k,896) = rxt(k,479)*y(k,221) + mat(k,1104) = .200_r8*rxt(k,473)*y(k,221) + mat(k,196) = .280_r8*rxt(k,441)*y(k,221) + mat(k,218) = .380_r8*rxt(k,443)*y(k,221) + mat(k,223) = .630_r8*rxt(k,449)*y(k,221) + mat(k,968) = mat(k,968) + rxt(k,370)*y(k,123) + mat(k,497) = mat(k,497) + rxt(k,412)*y(k,123) + mat(k,436) = mat(k,436) + rxt(k,417)*y(k,123) + mat(k,865) = mat(k,865) + rxt(k,295)*y(k,123) + 2.400_r8*rxt(k,292)*y(k,198) & + + rxt(k,293)*y(k,202) + mat(k,811) = mat(k,811) + rxt(k,323)*y(k,123) + rxt(k,321)*y(k,202) + mat(k,1420) = mat(k,1420) + rxt(k,391)*y(k,100) + .900_r8*rxt(k,304)*y(k,202) & + + rxt(k,377)*y(k,209) + rxt(k,382)*y(k,210) + .470_r8*rxt(k,344) & + *y(k,213) + rxt(k,402)*y(k,229) + mat(k,2176) = mat(k,2176) + rxt(k,194)*y(k,58) + 1.200_r8*rxt(k,392)*y(k,100) & + + rxt(k,274)*y(k,123) + rxt(k,293)*y(k,198) + rxt(k,321) & + *y(k,199) + .900_r8*rxt(k,304)*y(k,201) + 4.000_r8*rxt(k,271) & + *y(k,202) + rxt(k,378)*y(k,209) + rxt(k,383)*y(k,210) & + + .730_r8*rxt(k,345)*y(k,213) + rxt(k,354)*y(k,215) & + + .500_r8*rxt(k,457)*y(k,219) + .300_r8*rxt(k,333)*y(k,224) & + + rxt(k,462)*y(k,225) + rxt(k,467)*y(k,226) + .800_r8*rxt(k,403) & + *y(k,229) + mat(k,766) = mat(k,766) + .170_r8*rxt(k,423)*y(k,123) + .070_r8*rxt(k,422) & + *y(k,207) + mat(k,557) = rxt(k,341)*y(k,123) + mat(k,461) = rxt(k,312)*y(k,134) + mat(k,786) = mat(k,786) + .250_r8*rxt(k,310)*y(k,123) + mat(k,1919) = mat(k,1919) + .070_r8*rxt(k,422)*y(k,203) + .160_r8*rxt(k,425) & + *y(k,214) + .330_r8*rxt(k,428)*y(k,216) + mat(k,442) = mat(k,442) + rxt(k,282)*y(k,123) + mat(k,1285) = mat(k,1285) + .920_r8*rxt(k,380)*y(k,123) + rxt(k,381)*y(k,125) & + + rxt(k,377)*y(k,201) + rxt(k,378)*y(k,202) + mat(k,1320) = mat(k,1320) + .920_r8*rxt(k,386)*y(k,123) + rxt(k,387)*y(k,125) & + + rxt(k,382)*y(k,201) + rxt(k,383)*y(k,202) + mat(k,1343) = mat(k,1343) + .470_r8*rxt(k,348)*y(k,123) + .470_r8*rxt(k,347) & + *y(k,125) + .470_r8*rxt(k,344)*y(k,201) + .730_r8*rxt(k,345) & + *y(k,202) + mat(k,727) = mat(k,727) + .400_r8*rxt(k,426)*y(k,123) + .160_r8*rxt(k,425) & + *y(k,207) + mat(k,1387) = mat(k,1387) + rxt(k,354)*y(k,202) + mat(k,879) = mat(k,879) + .830_r8*rxt(k,429)*y(k,123) + .330_r8*rxt(k,428) & + *y(k,207) + mat(k,1068) = mat(k,1068) + .500_r8*rxt(k,457)*y(k,202) + mat(k,1621) = rxt(k,284)*y(k,53) + mat(k,1786) = mat(k,1786) + .650_r8*rxt(k,410)*y(k,6) + rxt(k,235)*y(k,18) & + + .350_r8*rxt(k,289)*y(k,23) + rxt(k,296)*y(k,25) + rxt(k,253) & + *y(k,42) + rxt(k,256)*y(k,45) + rxt(k,302)*y(k,46) + rxt(k,275) & + *y(k,51) + rxt(k,205)*y(k,58) + rxt(k,287)*y(k,61) & + + .730_r8*rxt(k,421)*y(k,65) + .500_r8*rxt(k,489)*y(k,66) & + + rxt(k,313)*y(k,73) + rxt(k,314)*y(k,74) + rxt(k,155)*y(k,78) & + + rxt(k,278)*y(k,85) + rxt(k,279)*y(k,86) + rxt(k,343)*y(k,92) & + + rxt(k,328)*y(k,94) + .300_r8*rxt(k,388)*y(k,98) + rxt(k,389) & + *y(k,99) + rxt(k,396)*y(k,101) + .200_r8*rxt(k,352)*y(k,105) & + + .500_r8*rxt(k,363)*y(k,108) + rxt(k,400)*y(k,114) + rxt(k,401) & + *y(k,115) + rxt(k,174)*y(k,125) + rxt(k,158)*y(k,137) & + + .800_r8*rxt(k,433)*y(k,145) + rxt(k,479)*y(k,154) & + + .200_r8*rxt(k,473)*y(k,182) + .280_r8*rxt(k,441)*y(k,184) & + + .380_r8*rxt(k,443)*y(k,186) + .630_r8*rxt(k,449)*y(k,188) + mat(k,449) = mat(k,449) + rxt(k,432)*y(k,123) + mat(k,796) = mat(k,796) + rxt(k,331)*y(k,123) + mat(k,1170) = mat(k,1170) + .300_r8*rxt(k,333)*y(k,202) + mat(k,1156) = mat(k,1156) + .900_r8*rxt(k,464)*y(k,123) + rxt(k,462)*y(k,202) + mat(k,1134) = mat(k,1134) + .800_r8*rxt(k,469)*y(k,123) + rxt(k,467)*y(k,202) + mat(k,742) = mat(k,742) + rxt(k,439)*y(k,123) + mat(k,1194) = mat(k,1194) + rxt(k,405)*y(k,123) + rxt(k,406)*y(k,125) & + + rxt(k,402)*y(k,201) + .800_r8*rxt(k,403)*y(k,202) + mat(k,759) = mat(k,759) + rxt(k,445)*y(k,123) + mat(k,505) = mat(k,505) + rxt(k,448)*y(k,123) + end do + end subroutine nlnmat09 + subroutine nlnmat10( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,438) = -(rxt(k,280)*y(k,207) + rxt(k,282)*y(k,123)) + mat(k,1849) = -rxt(k,280)*y(k,208) + mat(k,2273) = -rxt(k,282)*y(k,208) + mat(k,1518) = rxt(k,267)*y(k,207) + mat(k,1849) = mat(k,1849) + rxt(k,267)*y(k,41) + mat(k,1275) = -(rxt(k,377)*y(k,201) + rxt(k,378)*y(k,202) + rxt(k,379) & + *y(k,207) + rxt(k,380)*y(k,123) + rxt(k,381)*y(k,125)) + mat(k,1408) = -rxt(k,377)*y(k,209) + mat(k,2162) = -rxt(k,378)*y(k,209) + mat(k,1904) = -rxt(k,379)*y(k,209) + mat(k,2322) = -rxt(k,380)*y(k,209) + mat(k,2107) = -rxt(k,381)*y(k,209) + mat(k,840) = .600_r8*rxt(k,398)*y(k,221) + mat(k,1770) = .600_r8*rxt(k,398)*y(k,97) + mat(k,1310) = -(rxt(k,382)*y(k,201) + rxt(k,383)*y(k,202) + rxt(k,384) & + *y(k,207) + rxt(k,386)*y(k,123) + rxt(k,387)*y(k,125)) + mat(k,1409) = -rxt(k,382)*y(k,210) + mat(k,2163) = -rxt(k,383)*y(k,210) + mat(k,1905) = -rxt(k,384)*y(k,210) + mat(k,2323) = -rxt(k,386)*y(k,210) + mat(k,2108) = -rxt(k,387)*y(k,210) + mat(k,841) = .400_r8*rxt(k,398)*y(k,221) + mat(k,1771) = .400_r8*rxt(k,398)*y(k,97) + mat(k,67) = -(rxt(k,514)*y(k,207) + rxt(k,515)*y(k,123)) + mat(k,1829) = -rxt(k,514)*y(k,211) + mat(k,2262) = -rxt(k,515)*y(k,211) + mat(k,833) = rxt(k,517)*y(k,221) + mat(k,1640) = rxt(k,517)*y(k,97) + mat(k,73) = -(rxt(k,518)*y(k,207) + rxt(k,519)*y(k,123)) + mat(k,1830) = -rxt(k,518)*y(k,212) + mat(k,2263) = -rxt(k,519)*y(k,212) + mat(k,74) = rxt(k,520)*y(k,221) + mat(k,1641) = rxt(k,520)*y(k,103) + mat(k,1335) = -(rxt(k,344)*y(k,201) + rxt(k,345)*y(k,202) + rxt(k,346) & + *y(k,207) + rxt(k,347)*y(k,125) + (rxt(k,348) + rxt(k,349) & + ) * y(k,123)) + mat(k,1410) = -rxt(k,344)*y(k,213) + mat(k,2164) = -rxt(k,345)*y(k,213) + mat(k,1906) = -rxt(k,346)*y(k,213) + mat(k,2109) = -rxt(k,347)*y(k,213) + mat(k,2324) = -(rxt(k,348) + rxt(k,349)) * y(k,213) + mat(k,1229) = .500_r8*rxt(k,351)*y(k,221) + mat(k,314) = .200_r8*rxt(k,352)*y(k,221) + mat(k,1356) = rxt(k,365)*y(k,221) + mat(k,1772) = .500_r8*rxt(k,351)*y(k,104) + .200_r8*rxt(k,352)*y(k,105) & + + rxt(k,365)*y(k,110) + mat(k,723) = -(rxt(k,425)*y(k,207) + rxt(k,426)*y(k,123) + rxt(k,427) & + *y(k,124)) + mat(k,1871) = -rxt(k,425)*y(k,214) + mat(k,2291) = -rxt(k,426)*y(k,214) + mat(k,1555) = -rxt(k,427)*y(k,214) + mat(k,1380) = -(rxt(k,353)*y(k,201) + rxt(k,354)*y(k,202) + rxt(k,355) & + *y(k,207) + 4._r8*rxt(k,356)*y(k,215) + rxt(k,357)*y(k,123) & + + rxt(k,358)*y(k,125) + rxt(k,366)*y(k,124)) + mat(k,1412) = -rxt(k,353)*y(k,215) + mat(k,2166) = -rxt(k,354)*y(k,215) + mat(k,1908) = -rxt(k,355)*y(k,215) + mat(k,2326) = -rxt(k,357)*y(k,215) + mat(k,2111) = -rxt(k,358)*y(k,215) + mat(k,1566) = -rxt(k,366)*y(k,215) + mat(k,1230) = .500_r8*rxt(k,351)*y(k,221) + mat(k,315) = .500_r8*rxt(k,352)*y(k,221) + mat(k,1774) = .500_r8*rxt(k,351)*y(k,104) + .500_r8*rxt(k,352)*y(k,105) + mat(k,873) = -(rxt(k,428)*y(k,207) + rxt(k,429)*y(k,123) + rxt(k,430) & + *y(k,124)) + mat(k,1884) = -rxt(k,428)*y(k,216) + mat(k,2301) = -rxt(k,429)*y(k,216) + mat(k,1558) = -rxt(k,430)*y(k,216) + mat(k,672) = -(rxt(k,359)*y(k,207) + rxt(k,360)*y(k,123)) + mat(k,1867) = -rxt(k,359)*y(k,217) + mat(k,2289) = -rxt(k,360)*y(k,217) + mat(k,508) = rxt(k,361)*y(k,221) + mat(k,319) = rxt(k,362)*y(k,221) + mat(k,1722) = rxt(k,361)*y(k,106) + rxt(k,362)*y(k,107) + mat(k,81) = -(rxt(k,522)*y(k,207) + rxt(k,523)*y(k,123)) + mat(k,1831) = -rxt(k,522)*y(k,218) + mat(k,2264) = -rxt(k,523)*y(k,218) + mat(k,904) = rxt(k,525)*y(k,221) + mat(k,1643) = rxt(k,525)*y(k,109) + mat(k,1060) = -(rxt(k,457)*y(k,202) + rxt(k,458)*y(k,207) + rxt(k,459) & + *y(k,123) + rxt(k,460)*y(k,125)) + mat(k,2150) = -rxt(k,457)*y(k,219) + mat(k,1891) = -rxt(k,458)*y(k,219) + mat(k,2309) = -rxt(k,459)*y(k,219) + mat(k,2094) = -rxt(k,460)*y(k,219) + mat(k,942) = rxt(k,451)*y(k,125) + mat(k,914) = rxt(k,454)*y(k,125) + mat(k,2094) = mat(k,2094) + rxt(k,451)*y(k,5) + rxt(k,454)*y(k,109) & + + .500_r8*rxt(k,471)*y(k,181) + mat(k,390) = rxt(k,461)*y(k,221) + mat(k,996) = .500_r8*rxt(k,471)*y(k,125) + mat(k,1756) = rxt(k,461)*y(k,127) + mat(k,1618) = -(rxt(k,127)*y(k,76) + rxt(k,128)*y(k,233) + (rxt(k,130) & + + rxt(k,131)) * y(k,134) + (rxt(k,132) + rxt(k,133)) * y(k,137) & + + (rxt(k,179) + rxt(k,180)) * y(k,112) + rxt(k,212)*y(k,32) & + + rxt(k,213)*y(k,33) + rxt(k,214)*y(k,35) + rxt(k,215)*y(k,36) & + + rxt(k,216)*y(k,37) + rxt(k,217)*y(k,38) + rxt(k,218)*y(k,39) & + + (rxt(k,219) + rxt(k,220)) * y(k,84) + rxt(k,239)*y(k,34) & + + rxt(k,240)*y(k,54) + rxt(k,241)*y(k,77) + (rxt(k,242) & + + rxt(k,243)) * y(k,80) + rxt(k,248)*y(k,63) + rxt(k,249) & + *y(k,64) + rxt(k,262)*y(k,40) + rxt(k,263)*y(k,42) + rxt(k,264) & + *y(k,81) + rxt(k,265)*y(k,82) + rxt(k,266)*y(k,83) + (rxt(k,283) & + + rxt(k,284) + rxt(k,285)) * y(k,53) + rxt(k,286)*y(k,85)) + mat(k,1254) = -rxt(k,127)*y(k,220) + mat(k,2361) = -rxt(k,128)*y(k,220) + mat(k,1507) = -(rxt(k,130) + rxt(k,131)) * y(k,220) + mat(k,1981) = -(rxt(k,132) + rxt(k,133)) * y(k,220) + mat(k,261) = -(rxt(k,179) + rxt(k,180)) * y(k,220) + mat(k,101) = -rxt(k,212)*y(k,220) + mat(k,145) = -rxt(k,213)*y(k,220) + mat(k,116) = -rxt(k,214)*y(k,220) + mat(k,155) = -rxt(k,215)*y(k,220) + mat(k,120) = -rxt(k,216)*y(k,220) + mat(k,160) = -rxt(k,217)*y(k,220) + mat(k,124) = -rxt(k,218)*y(k,220) + mat(k,2059) = -(rxt(k,219) + rxt(k,220)) * y(k,220) + mat(k,151) = -rxt(k,239)*y(k,220) + mat(k,384) = -rxt(k,240)*y(k,220) + mat(k,109) = -rxt(k,241)*y(k,220) + mat(k,817) = -(rxt(k,242) + rxt(k,243)) * y(k,220) + mat(k,237) = -rxt(k,248)*y(k,220) + mat(k,251) = -rxt(k,249)*y(k,220) + mat(k,478) = -rxt(k,262)*y(k,220) + mat(k,591) = -rxt(k,263)*y(k,220) + mat(k,246) = -rxt(k,264)*y(k,220) + mat(k,256) = -rxt(k,265)*y(k,220) + mat(k,309) = -rxt(k,266)*y(k,220) + mat(k,1466) = -(rxt(k,283) + rxt(k,284) + rxt(k,285)) * y(k,220) + mat(k,186) = -rxt(k,286)*y(k,220) + mat(k,1784) = -(rxt(k,154)*y(k,76) + rxt(k,155)*y(k,78) + rxt(k,156)*y(k,207) & + + rxt(k,157)*y(k,133) + rxt(k,158)*y(k,137) + (4._r8*rxt(k,159) & + + 4._r8*rxt(k,160)) * y(k,221) + rxt(k,162)*y(k,89) + rxt(k,174) & + *y(k,125) + rxt(k,175)*y(k,111) + rxt(k,183)*y(k,124) + rxt(k,184) & + *y(k,88) + rxt(k,203)*y(k,59) + (rxt(k,205) + rxt(k,206) & + ) * y(k,58) + rxt(k,208)*y(k,84) + rxt(k,211)*y(k,91) + rxt(k,235) & + *y(k,18) + rxt(k,237)*y(k,80) + rxt(k,251)*y(k,40) + rxt(k,253) & + *y(k,42) + rxt(k,254)*y(k,43) + rxt(k,256)*y(k,45) + rxt(k,258) & + *y(k,54) + rxt(k,259)*y(k,81) + rxt(k,260)*y(k,82) + rxt(k,261) & + *y(k,83) + rxt(k,270)*y(k,41) + rxt(k,275)*y(k,51) + rxt(k,276) & + *y(k,52) + rxt(k,277)*y(k,53) + rxt(k,278)*y(k,85) + rxt(k,279) & + *y(k,86) + rxt(k,287)*y(k,61) + rxt(k,289)*y(k,23) + rxt(k,296) & + *y(k,25) + rxt(k,297)*y(k,26) + rxt(k,299)*y(k,27) + rxt(k,301) & + *y(k,44) + rxt(k,302)*y(k,46) + rxt(k,307)*y(k,49) + rxt(k,308) & + *y(k,50) + rxt(k,313)*y(k,73) + rxt(k,314)*y(k,74) + rxt(k,315) & + *y(k,142) + rxt(k,316)*y(k,24) + rxt(k,324)*y(k,29) + rxt(k,325) & + *y(k,30) + rxt(k,327)*y(k,48) + rxt(k,328)*y(k,94) + rxt(k,329) & + *y(k,126) + rxt(k,332)*y(k,149) + rxt(k,336)*y(k,150) + rxt(k,337) & + *y(k,28) + rxt(k,338)*y(k,47) + rxt(k,340)*y(k,15) + rxt(k,343) & + *y(k,92) + rxt(k,351)*y(k,104) + rxt(k,352)*y(k,105) + rxt(k,361) & + *y(k,106) + rxt(k,362)*y(k,107) + rxt(k,363)*y(k,108) + rxt(k,365) & + *y(k,110) + rxt(k,368)*y(k,1) + rxt(k,372)*y(k,2) + rxt(k,373) & + *y(k,14) + rxt(k,374)*y(k,93) + rxt(k,375)*y(k,95) + rxt(k,376) & + *y(k,96) + rxt(k,388)*y(k,98) + rxt(k,389)*y(k,99) + rxt(k,396) & + *y(k,101) + rxt(k,398)*y(k,97) + rxt(k,399)*y(k,102) + rxt(k,400) & + *y(k,114) + rxt(k,401)*y(k,115) + rxt(k,407)*y(k,185) + rxt(k,410) & + *y(k,6) + rxt(k,413)*y(k,7) + rxt(k,414)*y(k,21) + rxt(k,416) & + *y(k,22) + rxt(k,420)*y(k,31) + rxt(k,421)*y(k,65) + rxt(k,433) & + *y(k,145) + rxt(k,436)*y(k,146) + rxt(k,440)*y(k,183) + rxt(k,441) & + *y(k,184) + rxt(k,443)*y(k,186) + rxt(k,446)*y(k,187) + rxt(k,449) & + *y(k,188) + rxt(k,450)*y(k,189) + rxt(k,453)*y(k,5) + rxt(k,456) & + *y(k,109) + rxt(k,461)*y(k,127) + rxt(k,465)*y(k,178) + rxt(k,466) & + *y(k,179) + rxt(k,470)*y(k,180) + rxt(k,472)*y(k,181) + rxt(k,473) & + *y(k,182) + (rxt(k,475) + rxt(k,489)) * y(k,66) + rxt(k,477) & + *y(k,140) + rxt(k,479)*y(k,154) + rxt(k,483)*y(k,151) + rxt(k,488) & + *y(k,153) + rxt(k,491)*y(k,119)) + mat(k,1255) = -rxt(k,154)*y(k,221) + mat(k,599) = -rxt(k,155)*y(k,221) + mat(k,1917) = -rxt(k,156)*y(k,221) + mat(k,2016) = -rxt(k,157)*y(k,221) + mat(k,1982) = -rxt(k,158)*y(k,221) + mat(k,472) = -rxt(k,162)*y(k,221) + mat(k,2121) = -rxt(k,174)*y(k,221) + mat(k,684) = -rxt(k,175)*y(k,221) + mat(k,1576) = -rxt(k,183)*y(k,221) + mat(k,1485) = -rxt(k,184)*y(k,221) + mat(k,988) = -rxt(k,203)*y(k,221) + mat(k,2242) = -(rxt(k,205) + rxt(k,206)) * y(k,221) + mat(k,2060) = -rxt(k,208)*y(k,221) + mat(k,825) = -rxt(k,211)*y(k,221) + mat(k,1809) = -rxt(k,235)*y(k,221) + mat(k,818) = -rxt(k,237)*y(k,221) + mat(k,479) = -rxt(k,251)*y(k,221) + mat(k,592) = -rxt(k,253)*y(k,221) + mat(k,127) = -rxt(k,254)*y(k,221) + mat(k,370) = -rxt(k,256)*y(k,221) + mat(k,385) = -rxt(k,258)*y(k,221) + mat(k,247) = -rxt(k,259)*y(k,221) + mat(k,257) = -rxt(k,260)*y(k,221) + mat(k,310) = -rxt(k,261)*y(k,221) + mat(k,1531) = -rxt(k,270)*y(k,221) + mat(k,801) = -rxt(k,275)*y(k,221) + mat(k,453) = -rxt(k,276)*y(k,221) + mat(k,1467) = -rxt(k,277)*y(k,221) + mat(k,187) = -rxt(k,278)*y(k,221) + mat(k,870) = -rxt(k,279)*y(k,221) + mat(k,1177) = -rxt(k,287)*y(k,221) + mat(k,298) = -rxt(k,289)*y(k,221) + mat(k,270) = -rxt(k,296)*y(k,221) + mat(k,350) = -rxt(k,297)*y(k,221) + mat(k,302) = -rxt(k,299)*y(k,221) + mat(k,1051) = -rxt(k,301)*y(k,221) + mat(k,104) = -rxt(k,302)*y(k,221) + mat(k,690) = -rxt(k,307)*y(k,221) + mat(k,609) = -rxt(k,308)*y(k,221) + mat(k,1114) = -rxt(k,313)*y(k,221) + mat(k,981) = -rxt(k,314)*y(k,221) + mat(k,524) = -rxt(k,315)*y(k,221) + mat(k,540) = -rxt(k,316)*y(k,221) + mat(k,409) = -rxt(k,324)*y(k,221) + mat(k,112) = -rxt(k,325)*y(k,221) + mat(k,1244) = -rxt(k,327)*y(k,221) + mat(k,1093) = -rxt(k,328)*y(k,221) + mat(k,855) = -rxt(k,329)*y(k,221) + mat(k,532) = -rxt(k,332)*y(k,221) + mat(k,398) = -rxt(k,336)*y(k,221) + mat(k,1034) = -rxt(k,337)*y(k,221) + mat(k,974) = -rxt(k,338)*y(k,221) + mat(k,358) = -rxt(k,340)*y(k,221) + mat(k,1084) = -rxt(k,343)*y(k,221) + mat(k,1234) = -rxt(k,351)*y(k,221) + mat(k,316) = -rxt(k,352)*y(k,221) + mat(k,511) = -rxt(k,361)*y(k,221) + mat(k,322) = -rxt(k,362)*y(k,221) + mat(k,573) = -rxt(k,363)*y(k,221) + mat(k,1365) = -rxt(k,365)*y(k,221) + mat(k,669) = -rxt(k,368)*y(k,221) + mat(k,635) = -rxt(k,372)*y(k,221) + mat(k,231) = -rxt(k,373)*y(k,221) + mat(k,227) = -rxt(k,374)*y(k,221) + mat(k,346) = -rxt(k,375)*y(k,221) + mat(k,138) = -rxt(k,376)*y(k,221) + mat(k,583) = -rxt(k,388)*y(k,221) + mat(k,565) = -rxt(k,389)*y(k,221) + mat(k,404) = -rxt(k,396)*y(k,221) + mat(k,845) = -rxt(k,398)*y(k,221) + mat(k,699) = -rxt(k,399)*y(k,221) + mat(k,428) = -rxt(k,400)*y(k,221) + mat(k,1015) = -rxt(k,401)*y(k,221) + mat(k,208) = -rxt(k,407)*y(k,221) + mat(k,172) = -rxt(k,410)*y(k,221) + mat(k,416) = -rxt(k,413)*y(k,221) + mat(k,243) = -rxt(k,414)*y(k,221) + mat(k,342) = -rxt(k,416)*y(k,221) + mat(k,275) = -rxt(k,420)*y(k,221) + mat(k,200) = -rxt(k,421)*y(k,221) + mat(k,181) = -rxt(k,433)*y(k,221) + mat(k,336) = -rxt(k,436)*y(k,221) + mat(k,658) = -rxt(k,440)*y(k,221) + mat(k,195) = -rxt(k,441)*y(k,221) + mat(k,217) = -rxt(k,443)*y(k,221) + mat(k,714) = -rxt(k,446)*y(k,221) + mat(k,222) = -rxt(k,449)*y(k,221) + mat(k,422) = -rxt(k,450)*y(k,221) + mat(k,950) = -rxt(k,453)*y(k,221) + mat(k,922) = -rxt(k,456)*y(k,221) + mat(k,393) = -rxt(k,461)*y(k,221) + mat(k,645) = -rxt(k,465)*y(k,221) + mat(k,616) = -rxt(k,466)*y(k,221) + mat(k,488) = -rxt(k,470)*y(k,221) + mat(k,1000) = -rxt(k,472)*y(k,221) + mat(k,1103) = -rxt(k,473)*y(k,221) + mat(k,291) = -(rxt(k,475) + rxt(k,489)) * y(k,221) + mat(k,365) = -rxt(k,477)*y(k,221) + mat(k,895) = -rxt(k,479)*y(k,221) + mat(k,719) = -rxt(k,483)*y(k,221) + mat(k,1434) = -rxt(k,488)*y(k,221) + mat(k,98) = -rxt(k,491)*y(k,221) + mat(k,950) = mat(k,950) + .630_r8*rxt(k,452)*y(k,137) + mat(k,298) = mat(k,298) + .650_r8*rxt(k,289)*y(k,221) + mat(k,540) = mat(k,540) + .130_r8*rxt(k,291)*y(k,137) + mat(k,350) = mat(k,350) + .500_r8*rxt(k,297)*y(k,221) + mat(k,1034) = mat(k,1034) + .360_r8*rxt(k,320)*y(k,137) + mat(k,1531) = mat(k,1531) + rxt(k,269)*y(k,133) + mat(k,453) = mat(k,453) + .300_r8*rxt(k,276)*y(k,221) + mat(k,1467) = mat(k,1467) + rxt(k,283)*y(k,220) + mat(k,2215) = rxt(k,192)*y(k,207) + mat(k,887) = rxt(k,246)*y(k,233) + mat(k,2036) = rxt(k,153)*y(k,137) + 2.000_r8*rxt(k,148)*y(k,207) + mat(k,1255) = mat(k,1255) + rxt(k,145)*y(k,133) + rxt(k,127)*y(k,220) + mat(k,599) = mat(k,599) + rxt(k,146)*y(k,133) + mat(k,818) = mat(k,818) + rxt(k,236)*y(k,133) + rxt(k,242)*y(k,220) + mat(k,2060) = mat(k,2060) + rxt(k,207)*y(k,133) + rxt(k,219)*y(k,220) + mat(k,187) = mat(k,187) + rxt(k,286)*y(k,220) + mat(k,772) = rxt(k,238)*y(k,133) + mat(k,825) = mat(k,825) + rxt(k,210)*y(k,133) + mat(k,845) = mat(k,845) + .320_r8*rxt(k,397)*y(k,137) + mat(k,699) = mat(k,699) + .600_r8*rxt(k,399)*y(k,221) + mat(k,1234) = mat(k,1234) + .240_r8*rxt(k,350)*y(k,137) + mat(k,316) = mat(k,316) + .100_r8*rxt(k,352)*y(k,221) + mat(k,922) = mat(k,922) + .630_r8*rxt(k,455)*y(k,137) + mat(k,1365) = mat(k,1365) + .360_r8*rxt(k,364)*y(k,137) + mat(k,2335) = rxt(k,176)*y(k,207) + mat(k,2121) = mat(k,2121) + rxt(k,171)*y(k,207) + mat(k,2016) = mat(k,2016) + rxt(k,269)*y(k,41) + rxt(k,145)*y(k,76) & + + rxt(k,146)*y(k,78) + rxt(k,236)*y(k,80) + rxt(k,207)*y(k,84) & + + rxt(k,238)*y(k,90) + rxt(k,210)*y(k,91) + rxt(k,151)*y(k,207) + mat(k,1982) = mat(k,1982) + .630_r8*rxt(k,452)*y(k,5) + .130_r8*rxt(k,291) & + *y(k,24) + .360_r8*rxt(k,320)*y(k,28) + rxt(k,153)*y(k,75) & + + .320_r8*rxt(k,397)*y(k,97) + .240_r8*rxt(k,350)*y(k,104) & + + .630_r8*rxt(k,455)*y(k,109) + .360_r8*rxt(k,364)*y(k,110) & + + rxt(k,152)*y(k,207) + mat(k,532) = mat(k,532) + .500_r8*rxt(k,332)*y(k,221) + mat(k,208) = mat(k,208) + .500_r8*rxt(k,407)*y(k,221) + mat(k,516) = .400_r8*rxt(k,408)*y(k,207) + mat(k,1419) = .490_r8*rxt(k,305)*y(k,207) + mat(k,765) = .400_r8*rxt(k,422)*y(k,207) + mat(k,1917) = mat(k,1917) + rxt(k,192)*y(k,55) + 2.000_r8*rxt(k,148)*y(k,75) & + + rxt(k,176)*y(k,123) + rxt(k,171)*y(k,125) + rxt(k,151) & + *y(k,133) + rxt(k,152)*y(k,137) + .400_r8*rxt(k,408)*y(k,192) & + + .490_r8*rxt(k,305)*y(k,201) + .400_r8*rxt(k,422)*y(k,203) & + + .450_r8*rxt(k,355)*y(k,215) + .400_r8*rxt(k,428)*y(k,216) & + + .200_r8*rxt(k,359)*y(k,217) + .150_r8*rxt(k,334)*y(k,224) + mat(k,1386) = .450_r8*rxt(k,355)*y(k,207) + mat(k,878) = .400_r8*rxt(k,428)*y(k,207) + mat(k,676) = .200_r8*rxt(k,359)*y(k,207) + mat(k,1619) = rxt(k,283)*y(k,53) + rxt(k,127)*y(k,76) + rxt(k,242)*y(k,80) & + + rxt(k,219)*y(k,84) + rxt(k,286)*y(k,85) + 2.000_r8*rxt(k,128) & + *y(k,233) + mat(k,1784) = mat(k,1784) + .650_r8*rxt(k,289)*y(k,23) + .500_r8*rxt(k,297) & + *y(k,26) + .300_r8*rxt(k,276)*y(k,52) + .600_r8*rxt(k,399) & + *y(k,102) + .100_r8*rxt(k,352)*y(k,105) + .500_r8*rxt(k,332) & + *y(k,149) + .500_r8*rxt(k,407)*y(k,185) + mat(k,1169) = .150_r8*rxt(k,334)*y(k,207) + mat(k,2362) = rxt(k,246)*y(k,72) + 2.000_r8*rxt(k,128)*y(k,220) + end do + end subroutine nlnmat10 + subroutine nlnmat11( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,445) = -(rxt(k,431)*y(k,207) + rxt(k,432)*y(k,123)) + mat(k,1850) = -rxt(k,431)*y(k,222) + mat(k,2274) = -rxt(k,432)*y(k,222) + mat(k,198) = .200_r8*rxt(k,421)*y(k,221) + mat(k,179) = .140_r8*rxt(k,433)*y(k,221) + mat(k,334) = rxt(k,436)*y(k,221) + mat(k,1694) = .200_r8*rxt(k,421)*y(k,65) + .140_r8*rxt(k,433)*y(k,145) & + + rxt(k,436)*y(k,146) + mat(k,789) = -(rxt(k,330)*y(k,207) + rxt(k,331)*y(k,123)) + mat(k,1877) = -rxt(k,330)*y(k,223) + mat(k,2296) = -rxt(k,331)*y(k,223) + mat(k,1020) = rxt(k,337)*y(k,221) + mat(k,528) = .500_r8*rxt(k,332)*y(k,221) + mat(k,1733) = rxt(k,337)*y(k,28) + .500_r8*rxt(k,332)*y(k,149) + mat(k,1164) = -(rxt(k,333)*y(k,202) + rxt(k,334)*y(k,207) + rxt(k,335) & + *y(k,123)) + mat(k,2156) = -rxt(k,333)*y(k,224) + mat(k,1897) = -rxt(k,334)*y(k,224) + mat(k,2316) = -rxt(k,335)*y(k,224) + mat(k,945) = .060_r8*rxt(k,452)*y(k,137) + mat(k,972) = rxt(k,338)*y(k,221) + mat(k,917) = .060_r8*rxt(k,455)*y(k,137) + mat(k,1963) = .060_r8*rxt(k,452)*y(k,5) + .060_r8*rxt(k,455)*y(k,109) + mat(k,395) = rxt(k,336)*y(k,221) + mat(k,1098) = .150_r8*rxt(k,473)*y(k,221) + mat(k,1763) = rxt(k,338)*y(k,47) + rxt(k,336)*y(k,150) + .150_r8*rxt(k,473) & + *y(k,182) + mat(k,1147) = -(rxt(k,462)*y(k,202) + rxt(k,463)*y(k,207) + rxt(k,464) & + *y(k,123)) + mat(k,2155) = -rxt(k,462)*y(k,225) + mat(k,1896) = -rxt(k,463)*y(k,225) + mat(k,2315) = -rxt(k,464)*y(k,225) + mat(k,2100) = .500_r8*rxt(k,471)*y(k,181) + mat(k,642) = rxt(k,465)*y(k,221) + mat(k,998) = .500_r8*rxt(k,471)*y(k,125) + rxt(k,472)*y(k,221) + mat(k,1762) = rxt(k,465)*y(k,178) + rxt(k,472)*y(k,181) + mat(k,1124) = -(rxt(k,467)*y(k,202) + rxt(k,468)*y(k,207) + rxt(k,469) & + *y(k,123)) + mat(k,2154) = -rxt(k,467)*y(k,226) + mat(k,1895) = -rxt(k,468)*y(k,226) + mat(k,2314) = -rxt(k,469)*y(k,226) + mat(k,944) = rxt(k,453)*y(k,221) + mat(k,916) = rxt(k,456)*y(k,221) + mat(k,486) = rxt(k,470)*y(k,221) + mat(k,1761) = rxt(k,453)*y(k,5) + rxt(k,456)*y(k,109) + rxt(k,470)*y(k,180) + mat(k,734) = -(rxt(k,438)*y(k,207) + rxt(k,439)*y(k,123)) + mat(k,1872) = -rxt(k,438)*y(k,227) + mat(k,2292) = -rxt(k,439)*y(k,227) + mat(k,652) = rxt(k,440)*y(k,221) + mat(k,194) = .650_r8*rxt(k,441)*y(k,221) + mat(k,1729) = rxt(k,440)*y(k,183) + .650_r8*rxt(k,441)*y(k,184) + mat(k,87) = -(rxt(k,528)*y(k,207) + rxt(k,529)*y(k,123)) + mat(k,1832) = -rxt(k,528)*y(k,228) + mat(k,2265) = -rxt(k,529)*y(k,228) + mat(k,189) = rxt(k,527)*y(k,221) + mat(k,1644) = rxt(k,527)*y(k,184) + mat(k,1187) = -(rxt(k,402)*y(k,201) + rxt(k,403)*y(k,202) + rxt(k,404) & + *y(k,207) + rxt(k,405)*y(k,123) + rxt(k,406)*y(k,125)) + mat(k,1404) = -rxt(k,402)*y(k,229) + mat(k,2158) = -rxt(k,403)*y(k,229) + mat(k,1899) = -rxt(k,404)*y(k,229) + mat(k,2318) = -rxt(k,405)*y(k,229) + mat(k,2103) = -rxt(k,406)*y(k,229) + mat(k,226) = rxt(k,374)*y(k,221) + mat(k,345) = rxt(k,375)*y(k,221) + mat(k,137) = rxt(k,376)*y(k,221) + mat(k,695) = .400_r8*rxt(k,399)*y(k,221) + mat(k,207) = .500_r8*rxt(k,407)*y(k,221) + mat(k,1765) = rxt(k,374)*y(k,93) + rxt(k,375)*y(k,95) + rxt(k,376)*y(k,96) & + + .400_r8*rxt(k,399)*y(k,102) + .500_r8*rxt(k,407)*y(k,185) + mat(k,750) = -(rxt(k,444)*y(k,207) + rxt(k,445)*y(k,123)) + mat(k,1873) = -rxt(k,444)*y(k,230) + mat(k,2293) = -rxt(k,445)*y(k,230) + mat(k,214) = .560_r8*rxt(k,443)*y(k,221) + mat(k,707) = rxt(k,446)*y(k,221) + mat(k,1730) = .560_r8*rxt(k,443)*y(k,186) + rxt(k,446)*y(k,187) + mat(k,93) = -(rxt(k,532)*y(k,207) + rxt(k,533)*y(k,123)) + mat(k,1833) = -rxt(k,532)*y(k,231) + mat(k,2266) = -rxt(k,533)*y(k,231) + mat(k,209) = rxt(k,531)*y(k,221) + mat(k,1645) = rxt(k,531)*y(k,186) + mat(k,500) = -(rxt(k,447)*y(k,207) + rxt(k,448)*y(k,123)) + mat(k,1858) = -rxt(k,447)*y(k,232) + mat(k,2279) = -rxt(k,448)*y(k,232) + mat(k,221) = .300_r8*rxt(k,449)*y(k,221) + mat(k,419) = rxt(k,450)*y(k,221) + mat(k,1702) = .300_r8*rxt(k,449)*y(k,188) + rxt(k,450)*y(k,189) + mat(k,2374) = -(rxt(k,128)*y(k,220) + rxt(k,246)*y(k,72) + rxt(k,490) & + *y(k,155)) + mat(k,1631) = -rxt(k,128)*y(k,233) + mat(k,891) = -rxt(k,246)*y(k,233) + mat(k,267) = -rxt(k,490)*y(k,233) + mat(k,305) = rxt(k,299)*y(k,221) + mat(k,411) = rxt(k,324)*y(k,221) + mat(k,113) = rxt(k,325)*y(k,221) + mat(k,482) = rxt(k,251)*y(k,221) + mat(k,1543) = rxt(k,270)*y(k,221) + mat(k,597) = rxt(k,253)*y(k,221) + mat(k,129) = rxt(k,254)*y(k,221) + mat(k,1055) = rxt(k,301)*y(k,221) + mat(k,375) = rxt(k,256)*y(k,221) + mat(k,976) = rxt(k,338)*y(k,221) + mat(k,1248) = rxt(k,327)*y(k,221) + mat(k,692) = rxt(k,307)*y(k,221) + mat(k,611) = rxt(k,308)*y(k,221) + mat(k,456) = rxt(k,276)*y(k,221) + mat(k,1475) = rxt(k,277)*y(k,221) + mat(k,2048) = rxt(k,149)*y(k,207) + mat(k,1262) = rxt(k,154)*y(k,221) + mat(k,604) = rxt(k,155)*y(k,221) + mat(k,822) = rxt(k,237)*y(k,221) + mat(k,312) = rxt(k,261)*y(k,221) + mat(k,2072) = (rxt(k,542)+rxt(k,547))*y(k,90) + (rxt(k,535)+rxt(k,541) & + +rxt(k,546))*y(k,91) + rxt(k,208)*y(k,221) + mat(k,872) = rxt(k,279)*y(k,221) + mat(k,1493) = rxt(k,184)*y(k,221) + mat(k,475) = rxt(k,162)*y(k,221) + mat(k,777) = (rxt(k,542)+rxt(k,547))*y(k,84) + mat(k,830) = (rxt(k,535)+rxt(k,541)+rxt(k,546))*y(k,84) + rxt(k,211)*y(k,221) + mat(k,1238) = .500_r8*rxt(k,351)*y(k,221) + mat(k,99) = rxt(k,491)*y(k,221) + mat(k,534) = rxt(k,332)*y(k,221) + mat(k,399) = rxt(k,336)*y(k,221) + mat(k,1929) = rxt(k,149)*y(k,75) + rxt(k,156)*y(k,221) + mat(k,1796) = rxt(k,299)*y(k,27) + rxt(k,324)*y(k,29) + rxt(k,325)*y(k,30) & + + rxt(k,251)*y(k,40) + rxt(k,270)*y(k,41) + rxt(k,253)*y(k,42) & + + rxt(k,254)*y(k,43) + rxt(k,301)*y(k,44) + rxt(k,256)*y(k,45) & + + rxt(k,338)*y(k,47) + rxt(k,327)*y(k,48) + rxt(k,307)*y(k,49) & + + rxt(k,308)*y(k,50) + rxt(k,276)*y(k,52) + rxt(k,277)*y(k,53) & + + rxt(k,154)*y(k,76) + rxt(k,155)*y(k,78) + rxt(k,237)*y(k,80) & + + rxt(k,261)*y(k,83) + rxt(k,208)*y(k,84) + rxt(k,279)*y(k,86) & + + rxt(k,184)*y(k,88) + rxt(k,162)*y(k,89) + rxt(k,211)*y(k,91) & + + .500_r8*rxt(k,351)*y(k,104) + rxt(k,491)*y(k,119) + rxt(k,332) & + *y(k,149) + rxt(k,336)*y(k,150) + rxt(k,156)*y(k,207) & + + 2.000_r8*rxt(k,159)*y(k,221) + end do + end subroutine nlnmat11 + subroutine nlnmat_finit( avec_len, mat, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k, 1) = lmat(k, 1) + mat(k, 2) = lmat(k, 2) + mat(k, 3) = lmat(k, 3) + mat(k, 4) = lmat(k, 4) + mat(k, 5) = lmat(k, 5) + mat(k, 6) = lmat(k, 6) + mat(k, 7) = lmat(k, 7) + mat(k, 8) = lmat(k, 8) + mat(k, 9) = lmat(k, 9) + mat(k, 10) = lmat(k, 10) + mat(k, 11) = lmat(k, 11) + mat(k, 12) = lmat(k, 12) + mat(k, 13) = lmat(k, 13) + mat(k, 14) = lmat(k, 14) + mat(k, 15) = lmat(k, 15) + mat(k, 16) = lmat(k, 16) + mat(k, 17) = lmat(k, 17) + mat(k, 18) = lmat(k, 18) + mat(k, 19) = lmat(k, 19) + mat(k, 20) = lmat(k, 20) + mat(k, 21) = lmat(k, 21) + mat(k, 22) = lmat(k, 22) + mat(k, 23) = lmat(k, 23) + mat(k, 24) = lmat(k, 24) + mat(k, 25) = lmat(k, 25) + mat(k, 26) = lmat(k, 26) + mat(k, 27) = lmat(k, 27) + mat(k, 28) = lmat(k, 28) + mat(k, 29) = lmat(k, 29) + mat(k, 30) = lmat(k, 30) + mat(k, 31) = lmat(k, 31) + mat(k, 32) = lmat(k, 32) + mat(k, 33) = lmat(k, 33) + mat(k, 34) = lmat(k, 34) + mat(k, 35) = lmat(k, 35) + mat(k, 36) = lmat(k, 36) + mat(k, 37) = lmat(k, 37) + mat(k, 38) = lmat(k, 38) + mat(k, 39) = lmat(k, 39) + mat(k, 40) = lmat(k, 40) + mat(k, 41) = lmat(k, 41) + mat(k, 42) = lmat(k, 42) + mat(k, 43) = lmat(k, 43) + mat(k, 49) = mat(k, 49) + lmat(k, 49) + mat(k, 55) = mat(k, 55) + lmat(k, 55) + mat(k, 61) = mat(k, 61) + lmat(k, 61) + mat(k, 67) = mat(k, 67) + lmat(k, 67) + mat(k, 73) = mat(k, 73) + lmat(k, 73) + mat(k, 75) = mat(k, 75) + lmat(k, 75) + mat(k, 81) = mat(k, 81) + lmat(k, 81) + mat(k, 87) = mat(k, 87) + lmat(k, 87) + mat(k, 93) = mat(k, 93) + lmat(k, 93) + mat(k, 94) = lmat(k, 94) + mat(k, 95) = lmat(k, 95) + mat(k, 96) = lmat(k, 96) + mat(k, 97) = mat(k, 97) + lmat(k, 97) + mat(k, 100) = mat(k, 100) + lmat(k, 100) + mat(k, 102) = mat(k, 102) + lmat(k, 102) + mat(k, 103) = mat(k, 103) + lmat(k, 103) + mat(k, 106) = mat(k, 106) + lmat(k, 106) + mat(k, 107) = mat(k, 107) + lmat(k, 107) + mat(k, 108) = mat(k, 108) + lmat(k, 108) + mat(k, 110) = mat(k, 110) + lmat(k, 110) + mat(k, 114) = mat(k, 114) + lmat(k, 114) + mat(k, 115) = mat(k, 115) + lmat(k, 115) + mat(k, 117) = mat(k, 117) + lmat(k, 117) + mat(k, 118) = mat(k, 118) + lmat(k, 118) + mat(k, 119) = mat(k, 119) + lmat(k, 119) + mat(k, 121) = mat(k, 121) + lmat(k, 121) + mat(k, 122) = mat(k, 122) + lmat(k, 122) + mat(k, 123) = mat(k, 123) + lmat(k, 123) + mat(k, 125) = mat(k, 125) + lmat(k, 125) + mat(k, 126) = mat(k, 126) + lmat(k, 126) + mat(k, 128) = mat(k, 128) + lmat(k, 128) + mat(k, 130) = lmat(k, 130) + mat(k, 131) = lmat(k, 131) + mat(k, 132) = lmat(k, 132) + mat(k, 133) = lmat(k, 133) + mat(k, 134) = lmat(k, 134) + mat(k, 135) = lmat(k, 135) + mat(k, 136) = mat(k, 136) + lmat(k, 136) + mat(k, 139) = lmat(k, 139) + mat(k, 140) = lmat(k, 140) + mat(k, 141) = lmat(k, 141) + mat(k, 142) = mat(k, 142) + lmat(k, 142) + mat(k, 143) = mat(k, 143) + lmat(k, 143) + mat(k, 144) = mat(k, 144) + lmat(k, 144) + mat(k, 146) = mat(k, 146) + lmat(k, 146) + mat(k, 147) = mat(k, 147) + lmat(k, 147) + mat(k, 148) = mat(k, 148) + lmat(k, 148) + mat(k, 149) = mat(k, 149) + lmat(k, 149) + mat(k, 150) = mat(k, 150) + lmat(k, 150) + mat(k, 152) = mat(k, 152) + lmat(k, 152) + mat(k, 153) = mat(k, 153) + lmat(k, 153) + mat(k, 154) = mat(k, 154) + lmat(k, 154) + mat(k, 156) = mat(k, 156) + lmat(k, 156) + mat(k, 157) = mat(k, 157) + lmat(k, 157) + mat(k, 158) = mat(k, 158) + lmat(k, 158) + mat(k, 159) = mat(k, 159) + lmat(k, 159) + mat(k, 161) = mat(k, 161) + lmat(k, 161) + mat(k, 162) = mat(k, 162) + lmat(k, 162) + mat(k, 163) = mat(k, 163) + lmat(k, 163) + mat(k, 164) = mat(k, 164) + lmat(k, 164) + mat(k, 165) = mat(k, 165) + lmat(k, 165) + mat(k, 166) = lmat(k, 166) + mat(k, 168) = mat(k, 168) + lmat(k, 168) + mat(k, 174) = lmat(k, 174) + mat(k, 175) = lmat(k, 175) + mat(k, 176) = lmat(k, 176) + mat(k, 177) = lmat(k, 177) + mat(k, 178) = mat(k, 178) + lmat(k, 178) + mat(k, 183) = lmat(k, 183) + mat(k, 184) = lmat(k, 184) + mat(k, 185) = mat(k, 185) + lmat(k, 185) + mat(k, 190) = mat(k, 190) + lmat(k, 190) + mat(k, 197) = mat(k, 197) + lmat(k, 197) + mat(k, 202) = lmat(k, 202) + mat(k, 203) = lmat(k, 203) + mat(k, 204) = lmat(k, 204) + mat(k, 205) = lmat(k, 205) + mat(k, 206) = mat(k, 206) + lmat(k, 206) + mat(k, 208) = mat(k, 208) + lmat(k, 208) + mat(k, 211) = mat(k, 211) + lmat(k, 211) + mat(k, 219) = mat(k, 219) + lmat(k, 219) + mat(k, 224) = mat(k, 224) + lmat(k, 224) + mat(k, 225) = lmat(k, 225) + mat(k, 227) = mat(k, 227) + lmat(k, 227) + mat(k, 228) = lmat(k, 228) + mat(k, 229) = mat(k, 229) + lmat(k, 229) + mat(k, 232) = lmat(k, 232) + mat(k, 233) = lmat(k, 233) + mat(k, 234) = lmat(k, 234) + mat(k, 235) = mat(k, 235) + lmat(k, 235) + mat(k, 236) = mat(k, 236) + lmat(k, 236) + mat(k, 238) = lmat(k, 238) + mat(k, 239) = lmat(k, 239) + mat(k, 240) = lmat(k, 240) + mat(k, 241) = mat(k, 241) + lmat(k, 241) + mat(k, 244) = mat(k, 244) + lmat(k, 244) + mat(k, 245) = mat(k, 245) + lmat(k, 245) + mat(k, 248) = mat(k, 248) + lmat(k, 248) + mat(k, 249) = mat(k, 249) + lmat(k, 249) + mat(k, 250) = mat(k, 250) + lmat(k, 250) + mat(k, 252) = mat(k, 252) + lmat(k, 252) + mat(k, 253) = mat(k, 253) + lmat(k, 253) + mat(k, 254) = mat(k, 254) + lmat(k, 254) + mat(k, 258) = mat(k, 258) + lmat(k, 258) + mat(k, 259) = mat(k, 259) + lmat(k, 259) + mat(k, 261) = mat(k, 261) + lmat(k, 261) + mat(k, 264) = mat(k, 264) + lmat(k, 264) + mat(k, 265) = lmat(k, 265) + mat(k, 266) = lmat(k, 266) + mat(k, 268) = mat(k, 268) + lmat(k, 268) + mat(k, 272) = mat(k, 272) + lmat(k, 272) + mat(k, 273) = lmat(k, 273) + mat(k, 275) = mat(k, 275) + lmat(k, 275) + mat(k, 276) = lmat(k, 276) + mat(k, 277) = lmat(k, 277) + mat(k, 278) = lmat(k, 278) + mat(k, 279) = lmat(k, 279) + mat(k, 280) = lmat(k, 280) + mat(k, 281) = lmat(k, 281) + mat(k, 282) = lmat(k, 282) + mat(k, 283) = lmat(k, 283) + mat(k, 284) = lmat(k, 284) + mat(k, 285) = lmat(k, 285) + mat(k, 286) = lmat(k, 286) + mat(k, 287) = lmat(k, 287) + mat(k, 288) = mat(k, 288) + lmat(k, 288) + mat(k, 294) = mat(k, 294) + lmat(k, 294) + mat(k, 300) = mat(k, 300) + lmat(k, 300) + mat(k, 306) = mat(k, 306) + lmat(k, 306) + mat(k, 307) = mat(k, 307) + lmat(k, 307) + mat(k, 311) = mat(k, 311) + lmat(k, 311) + mat(k, 313) = mat(k, 313) + lmat(k, 313) + mat(k, 318) = mat(k, 318) + lmat(k, 318) + mat(k, 320) = lmat(k, 320) + mat(k, 321) = lmat(k, 321) + mat(k, 322) = mat(k, 322) + lmat(k, 322) + mat(k, 323) = lmat(k, 323) + mat(k, 324) = lmat(k, 324) + mat(k, 325) = lmat(k, 325) + mat(k, 326) = lmat(k, 326) + mat(k, 327) = lmat(k, 327) + mat(k, 328) = mat(k, 328) + lmat(k, 328) + mat(k, 331) = lmat(k, 331) + mat(k, 332) = mat(k, 332) + lmat(k, 332) + mat(k, 333) = mat(k, 333) + lmat(k, 333) + mat(k, 335) = lmat(k, 335) + mat(k, 336) = mat(k, 336) + lmat(k, 336) + mat(k, 337) = lmat(k, 337) + mat(k, 338) = lmat(k, 338) + mat(k, 339) = mat(k, 339) + lmat(k, 339) + mat(k, 342) = mat(k, 342) + lmat(k, 342) + mat(k, 343) = lmat(k, 343) + mat(k, 344) = mat(k, 344) + lmat(k, 344) + mat(k, 347) = mat(k, 347) + lmat(k, 347) + mat(k, 349) = mat(k, 349) + lmat(k, 349) + mat(k, 350) = mat(k, 350) + lmat(k, 350) + mat(k, 351) = lmat(k, 351) + mat(k, 352) = mat(k, 352) + lmat(k, 352) + mat(k, 360) = mat(k, 360) + lmat(k, 360) + mat(k, 361) = lmat(k, 361) + mat(k, 363) = mat(k, 363) + lmat(k, 363) + mat(k, 368) = mat(k, 368) + lmat(k, 368) + mat(k, 373) = lmat(k, 373) + mat(k, 374) = mat(k, 374) + lmat(k, 374) + mat(k, 376) = lmat(k, 376) + mat(k, 377) = lmat(k, 377) + mat(k, 378) = lmat(k, 378) + mat(k, 379) = lmat(k, 379) + mat(k, 380) = lmat(k, 380) + mat(k, 381) = lmat(k, 381) + mat(k, 382) = mat(k, 382) + lmat(k, 382) + mat(k, 383) = mat(k, 383) + lmat(k, 383) + mat(k, 388) = mat(k, 388) + lmat(k, 388) + mat(k, 389) = lmat(k, 389) + mat(k, 391) = lmat(k, 391) + mat(k, 392) = lmat(k, 392) + mat(k, 393) = mat(k, 393) + lmat(k, 393) + mat(k, 394) = mat(k, 394) + lmat(k, 394) + mat(k, 396) = lmat(k, 396) + mat(k, 397) = lmat(k, 397) + mat(k, 398) = mat(k, 398) + lmat(k, 398) + mat(k, 400) = mat(k, 400) + lmat(k, 400) + mat(k, 401) = lmat(k, 401) + mat(k, 403) = lmat(k, 403) + mat(k, 405) = mat(k, 405) + lmat(k, 405) + mat(k, 406) = mat(k, 406) + lmat(k, 406) + mat(k, 408) = lmat(k, 408) + mat(k, 409) = mat(k, 409) + lmat(k, 409) + mat(k, 410) = lmat(k, 410) + mat(k, 412) = mat(k, 412) + lmat(k, 412) + mat(k, 413) = lmat(k, 413) + mat(k, 415) = lmat(k, 415) + mat(k, 416) = mat(k, 416) + lmat(k, 416) + mat(k, 417) = lmat(k, 417) + mat(k, 418) = mat(k, 418) + lmat(k, 418) + mat(k, 420) = lmat(k, 420) + mat(k, 421) = lmat(k, 421) + mat(k, 422) = mat(k, 422) + lmat(k, 422) + mat(k, 423) = lmat(k, 423) + mat(k, 424) = mat(k, 424) + lmat(k, 424) + mat(k, 427) = lmat(k, 427) + mat(k, 432) = mat(k, 432) + lmat(k, 432) + mat(k, 438) = mat(k, 438) + lmat(k, 438) + mat(k, 440) = lmat(k, 440) + mat(k, 442) = mat(k, 442) + lmat(k, 442) + mat(k, 445) = mat(k, 445) + lmat(k, 445) + mat(k, 451) = mat(k, 451) + lmat(k, 451) + mat(k, 452) = mat(k, 452) + lmat(k, 452) + mat(k, 453) = mat(k, 453) + lmat(k, 453) + mat(k, 454) = lmat(k, 454) + mat(k, 457) = mat(k, 457) + lmat(k, 457) + mat(k, 460) = lmat(k, 460) + mat(k, 461) = mat(k, 461) + lmat(k, 461) + mat(k, 462) = lmat(k, 462) + mat(k, 463) = lmat(k, 463) + mat(k, 464) = lmat(k, 464) + mat(k, 465) = mat(k, 465) + lmat(k, 465) + mat(k, 469) = mat(k, 469) + lmat(k, 469) + mat(k, 471) = mat(k, 471) + lmat(k, 471) + mat(k, 472) = mat(k, 472) + lmat(k, 472) + mat(k, 473) = lmat(k, 473) + mat(k, 474) = lmat(k, 474) + mat(k, 476) = mat(k, 476) + lmat(k, 476) + mat(k, 477) = mat(k, 477) + lmat(k, 477) + mat(k, 483) = mat(k, 483) + lmat(k, 483) + mat(k, 484) = lmat(k, 484) + mat(k, 485) = lmat(k, 485) + mat(k, 487) = lmat(k, 487) + mat(k, 488) = mat(k, 488) + lmat(k, 488) + mat(k, 489) = lmat(k, 489) + mat(k, 492) = mat(k, 492) + lmat(k, 492) + mat(k, 500) = mat(k, 500) + lmat(k, 500) + mat(k, 507) = mat(k, 507) + lmat(k, 507) + mat(k, 509) = lmat(k, 509) + mat(k, 510) = lmat(k, 510) + mat(k, 513) = mat(k, 513) + lmat(k, 513) + mat(k, 519) = mat(k, 519) + lmat(k, 519) + mat(k, 520) = lmat(k, 520) + mat(k, 521) = lmat(k, 521) + mat(k, 523) = lmat(k, 523) + mat(k, 525) = mat(k, 525) + lmat(k, 525) + mat(k, 526) = lmat(k, 526) + mat(k, 527) = mat(k, 527) + lmat(k, 527) + mat(k, 529) = lmat(k, 529) + mat(k, 531) = lmat(k, 531) + mat(k, 532) = mat(k, 532) + lmat(k, 532) + mat(k, 533) = lmat(k, 533) + mat(k, 535) = mat(k, 535) + lmat(k, 535) + mat(k, 543) = mat(k, 543) + lmat(k, 543) + mat(k, 544) = lmat(k, 544) + mat(k, 545) = lmat(k, 545) + mat(k, 546) = lmat(k, 546) + mat(k, 547) = lmat(k, 547) + mat(k, 548) = mat(k, 548) + lmat(k, 548) + mat(k, 550) = mat(k, 550) + lmat(k, 550) + mat(k, 551) = mat(k, 551) + lmat(k, 551) + mat(k, 559) = mat(k, 559) + lmat(k, 559) + mat(k, 564) = lmat(k, 564) + mat(k, 567) = mat(k, 567) + lmat(k, 567) + mat(k, 570) = lmat(k, 570) + mat(k, 572) = lmat(k, 572) + mat(k, 576) = mat(k, 576) + lmat(k, 576) + mat(k, 580) = lmat(k, 580) + mat(k, 585) = lmat(k, 585) + mat(k, 586) = lmat(k, 586) + mat(k, 587) = lmat(k, 587) + mat(k, 588) = lmat(k, 588) + mat(k, 589) = mat(k, 589) + lmat(k, 589) + mat(k, 590) = mat(k, 590) + lmat(k, 590) + mat(k, 595) = lmat(k, 595) + mat(k, 598) = mat(k, 598) + lmat(k, 598) + mat(k, 599) = mat(k, 599) + lmat(k, 599) + mat(k, 605) = mat(k, 605) + lmat(k, 605) + mat(k, 606) = mat(k, 606) + lmat(k, 606) + mat(k, 609) = mat(k, 609) + lmat(k, 609) + mat(k, 610) = lmat(k, 610) + mat(k, 612) = mat(k, 612) + lmat(k, 612) + mat(k, 613) = mat(k, 613) + lmat(k, 613) + mat(k, 614) = lmat(k, 614) + mat(k, 615) = mat(k, 615) + lmat(k, 615) + mat(k, 617) = lmat(k, 617) + mat(k, 620) = mat(k, 620) + lmat(k, 620) + mat(k, 626) = lmat(k, 626) + mat(k, 627) = mat(k, 627) + lmat(k, 627) + mat(k, 631) = lmat(k, 631) + mat(k, 632) = lmat(k, 632) + mat(k, 634) = lmat(k, 634) + mat(k, 635) = mat(k, 635) + lmat(k, 635) + mat(k, 636) = lmat(k, 636) + mat(k, 637) = mat(k, 637) + lmat(k, 637) + mat(k, 638) = lmat(k, 638) + mat(k, 639) = lmat(k, 639) + mat(k, 640) = lmat(k, 640) + mat(k, 641) = lmat(k, 641) + mat(k, 643) = lmat(k, 643) + mat(k, 644) = lmat(k, 644) + mat(k, 645) = mat(k, 645) + lmat(k, 645) + mat(k, 646) = lmat(k, 646) + mat(k, 647) = lmat(k, 647) + mat(k, 648) = lmat(k, 648) + mat(k, 649) = lmat(k, 649) + mat(k, 650) = mat(k, 650) + lmat(k, 650) + mat(k, 655) = lmat(k, 655) + mat(k, 657) = lmat(k, 657) + mat(k, 658) = mat(k, 658) + lmat(k, 658) + mat(k, 659) = lmat(k, 659) + mat(k, 660) = lmat(k, 660) + mat(k, 661) = mat(k, 661) + lmat(k, 661) + mat(k, 664) = mat(k, 664) + lmat(k, 664) + mat(k, 665) = mat(k, 665) + lmat(k, 665) + mat(k, 667) = mat(k, 667) + lmat(k, 667) + mat(k, 668) = mat(k, 668) + lmat(k, 668) + mat(k, 670) = lmat(k, 670) + mat(k, 672) = mat(k, 672) + lmat(k, 672) + mat(k, 680) = mat(k, 680) + lmat(k, 680) + mat(k, 688) = mat(k, 688) + lmat(k, 688) + mat(k, 694) = mat(k, 694) + lmat(k, 694) + mat(k, 696) = lmat(k, 696) + mat(k, 697) = lmat(k, 697) + mat(k, 698) = lmat(k, 698) + mat(k, 699) = mat(k, 699) + lmat(k, 699) + mat(k, 700) = lmat(k, 700) + mat(k, 701) = lmat(k, 701) + mat(k, 702) = lmat(k, 702) + mat(k, 703) = lmat(k, 703) + mat(k, 704) = lmat(k, 704) + mat(k, 705) = mat(k, 705) + lmat(k, 705) + mat(k, 710) = lmat(k, 710) + mat(k, 712) = lmat(k, 712) + mat(k, 714) = mat(k, 714) + lmat(k, 714) + mat(k, 715) = lmat(k, 715) + mat(k, 716) = mat(k, 716) + lmat(k, 716) + mat(k, 723) = mat(k, 723) + lmat(k, 723) + mat(k, 734) = mat(k, 734) + lmat(k, 734) + mat(k, 750) = mat(k, 750) + lmat(k, 750) + mat(k, 761) = mat(k, 761) + lmat(k, 761) + mat(k, 770) = mat(k, 770) + lmat(k, 770) + mat(k, 771) = lmat(k, 771) + mat(k, 772) = mat(k, 772) + lmat(k, 772) + mat(k, 780) = mat(k, 780) + lmat(k, 780) + mat(k, 789) = mat(k, 789) + lmat(k, 789) + mat(k, 799) = mat(k, 799) + lmat(k, 799) + mat(k, 804) = mat(k, 804) + lmat(k, 804) + mat(k, 815) = mat(k, 815) + lmat(k, 815) + mat(k, 816) = mat(k, 816) + lmat(k, 816) + mat(k, 821) = mat(k, 821) + lmat(k, 821) + mat(k, 824) = mat(k, 824) + lmat(k, 824) + mat(k, 825) = mat(k, 825) + lmat(k, 825) + mat(k, 828) = mat(k, 828) + lmat(k, 828) + mat(k, 834) = mat(k, 834) + lmat(k, 834) + mat(k, 850) = mat(k, 850) + lmat(k, 850) + mat(k, 852) = lmat(k, 852) + mat(k, 853) = lmat(k, 853) + mat(k, 854) = mat(k, 854) + lmat(k, 854) + mat(k, 859) = mat(k, 859) + lmat(k, 859) + mat(k, 868) = mat(k, 868) + lmat(k, 868) + mat(k, 873) = mat(k, 873) + lmat(k, 873) + mat(k, 883) = mat(k, 883) + lmat(k, 883) + mat(k, 893) = mat(k, 893) + lmat(k, 893) + mat(k, 894) = lmat(k, 894) + mat(k, 897) = lmat(k, 897) + mat(k, 908) = mat(k, 908) + lmat(k, 908) + mat(k, 936) = mat(k, 936) + lmat(k, 936) + mat(k, 960) = mat(k, 960) + lmat(k, 960) + mat(k, 971) = mat(k, 971) + lmat(k, 971) + mat(k, 973) = lmat(k, 973) + mat(k, 975) = lmat(k, 975) + mat(k, 977) = lmat(k, 977) + mat(k, 978) = mat(k, 978) + lmat(k, 978) + mat(k, 980) = mat(k, 980) + lmat(k, 980) + mat(k, 982) = mat(k, 982) + lmat(k, 982) + mat(k, 984) = mat(k, 984) + lmat(k, 984) + mat(k, 985) = mat(k, 985) + lmat(k, 985) + mat(k, 986) = mat(k, 986) + lmat(k, 986) + mat(k, 987) = lmat(k, 987) + mat(k, 991) = mat(k, 991) + lmat(k, 991) + mat(k, 992) = mat(k, 992) + lmat(k, 992) + mat(k, 993) = mat(k, 993) + lmat(k, 993) + mat(k, 995) = mat(k, 995) + lmat(k, 995) + mat(k, 997) = lmat(k, 997) + mat(k, 999) = lmat(k, 999) + mat(k,1001) = lmat(k,1001) + mat(k,1003) = lmat(k,1003) + mat(k,1007) = mat(k,1007) + lmat(k,1007) + mat(k,1012) = lmat(k,1012) + mat(k,1014) = lmat(k,1014) + mat(k,1016) = mat(k,1016) + lmat(k,1016) + mat(k,1023) = mat(k,1023) + lmat(k,1023) + mat(k,1043) = lmat(k,1043) + mat(k,1044) = lmat(k,1044) + mat(k,1046) = lmat(k,1046) + mat(k,1047) = mat(k,1047) + lmat(k,1047) + mat(k,1048) = lmat(k,1048) + mat(k,1052) = lmat(k,1052) + mat(k,1054) = lmat(k,1054) + mat(k,1060) = mat(k,1060) + lmat(k,1060) + mat(k,1073) = lmat(k,1073) + mat(k,1074) = lmat(k,1074) + mat(k,1075) = mat(k,1075) + lmat(k,1075) + mat(k,1076) = lmat(k,1076) + mat(k,1077) = lmat(k,1077) + mat(k,1079) = lmat(k,1079) + mat(k,1080) = lmat(k,1080) + mat(k,1081) = lmat(k,1081) + mat(k,1082) = lmat(k,1082) + mat(k,1083) = lmat(k,1083) + mat(k,1085) = mat(k,1085) + lmat(k,1085) + mat(k,1089) = mat(k,1089) + lmat(k,1089) + mat(k,1091) = lmat(k,1091) + mat(k,1092) = lmat(k,1092) + mat(k,1094) = mat(k,1094) + lmat(k,1094) + mat(k,1095) = mat(k,1095) + lmat(k,1095) + mat(k,1096) = mat(k,1096) + lmat(k,1096) + mat(k,1097) = mat(k,1097) + lmat(k,1097) + mat(k,1098) = mat(k,1098) + lmat(k,1098) + mat(k,1099) = mat(k,1099) + lmat(k,1099) + mat(k,1100) = mat(k,1100) + lmat(k,1100) + mat(k,1102) = mat(k,1102) + lmat(k,1102) + mat(k,1104) = mat(k,1104) + lmat(k,1104) + mat(k,1110) = mat(k,1110) + lmat(k,1110) + mat(k,1111) = lmat(k,1111) + mat(k,1113) = mat(k,1113) + lmat(k,1113) + mat(k,1115) = mat(k,1115) + lmat(k,1115) + mat(k,1124) = mat(k,1124) + lmat(k,1124) + mat(k,1147) = mat(k,1147) + lmat(k,1147) + mat(k,1164) = mat(k,1164) + lmat(k,1164) + mat(k,1175) = mat(k,1175) + lmat(k,1175) + mat(k,1187) = mat(k,1187) + lmat(k,1187) + mat(k,1209) = mat(k,1209) + lmat(k,1209) + mat(k,1226) = mat(k,1226) + lmat(k,1226) + mat(k,1227) = mat(k,1227) + lmat(k,1227) + mat(k,1230) = mat(k,1230) + lmat(k,1230) + mat(k,1231) = mat(k,1231) + lmat(k,1231) + mat(k,1233) = mat(k,1233) + lmat(k,1233) + mat(k,1235) = mat(k,1235) + lmat(k,1235) + mat(k,1239) = mat(k,1239) + lmat(k,1239) + mat(k,1240) = mat(k,1240) + lmat(k,1240) + mat(k,1241) = mat(k,1241) + lmat(k,1241) + mat(k,1245) = lmat(k,1245) + mat(k,1251) = mat(k,1251) + lmat(k,1251) + mat(k,1275) = mat(k,1275) + lmat(k,1275) + mat(k,1292) = lmat(k,1292) + mat(k,1310) = mat(k,1310) + lmat(k,1310) + mat(k,1320) = mat(k,1320) + lmat(k,1320) + mat(k,1335) = mat(k,1335) + lmat(k,1335) + mat(k,1350) = lmat(k,1350) + mat(k,1354) = mat(k,1354) + lmat(k,1354) + mat(k,1357) = mat(k,1357) + lmat(k,1357) + mat(k,1359) = mat(k,1359) + lmat(k,1359) + mat(k,1370) = lmat(k,1370) + mat(k,1380) = mat(k,1380) + lmat(k,1380) + mat(k,1413) = mat(k,1413) + lmat(k,1413) + mat(k,1428) = lmat(k,1428) + mat(k,1430) = mat(k,1430) + lmat(k,1430) + mat(k,1438) = mat(k,1438) + lmat(k,1438) + mat(k,1446) = mat(k,1446) + lmat(k,1446) + mat(k,1459) = lmat(k,1459) + mat(k,1460) = lmat(k,1460) + mat(k,1461) = mat(k,1461) + lmat(k,1461) + mat(k,1462) = mat(k,1462) + lmat(k,1462) + mat(k,1465) = mat(k,1465) + lmat(k,1465) + mat(k,1467) = mat(k,1467) + lmat(k,1467) + mat(k,1469) = lmat(k,1469) + mat(k,1470) = mat(k,1470) + lmat(k,1470) + mat(k,1473) = mat(k,1473) + lmat(k,1473) + mat(k,1475) = mat(k,1475) + lmat(k,1475) + mat(k,1480) = mat(k,1480) + lmat(k,1480) + mat(k,1483) = lmat(k,1483) + mat(k,1485) = mat(k,1485) + lmat(k,1485) + mat(k,1504) = mat(k,1504) + lmat(k,1504) + mat(k,1507) = mat(k,1507) + lmat(k,1507) + mat(k,1512) = mat(k,1512) + lmat(k,1512) + mat(k,1522) = mat(k,1522) + lmat(k,1522) + mat(k,1523) = lmat(k,1523) + mat(k,1528) = mat(k,1528) + lmat(k,1528) + mat(k,1536) = mat(k,1536) + lmat(k,1536) + mat(k,1571) = mat(k,1571) + lmat(k,1571) + mat(k,1574) = mat(k,1574) + lmat(k,1574) + mat(k,1576) = mat(k,1576) + lmat(k,1576) + mat(k,1580) = mat(k,1580) + lmat(k,1580) + mat(k,1587) = mat(k,1587) + lmat(k,1587) + mat(k,1618) = mat(k,1618) + lmat(k,1618) + mat(k,1623) = mat(k,1623) + lmat(k,1623) + mat(k,1784) = mat(k,1784) + lmat(k,1784) + mat(k,1803) = mat(k,1803) + lmat(k,1803) + mat(k,1810) = mat(k,1810) + lmat(k,1810) + mat(k,1813) = mat(k,1813) + lmat(k,1813) + mat(k,1919) = mat(k,1919) + lmat(k,1919) + mat(k,1929) = mat(k,1929) + lmat(k,1929) + mat(k,1935) = mat(k,1935) + lmat(k,1935) + mat(k,1978) = mat(k,1978) + lmat(k,1978) + mat(k,1981) = mat(k,1981) + lmat(k,1981) + mat(k,1985) = mat(k,1985) + lmat(k,1985) + mat(k,1986) = mat(k,1986) + lmat(k,1986) + mat(k,2020) = mat(k,2020) + lmat(k,2020) + mat(k,2041) = mat(k,2041) + lmat(k,2041) + mat(k,2065) = mat(k,2065) + lmat(k,2065) + mat(k,2066) = mat(k,2066) + lmat(k,2066) + mat(k,2069) = mat(k,2069) + lmat(k,2069) + mat(k,2116) = mat(k,2116) + lmat(k,2116) + mat(k,2117) = mat(k,2117) + lmat(k,2117) + mat(k,2119) = mat(k,2119) + lmat(k,2119) + mat(k,2125) = mat(k,2125) + lmat(k,2125) + mat(k,2128) = mat(k,2128) + lmat(k,2128) + mat(k,2132) = mat(k,2132) + lmat(k,2132) + mat(k,2182) = mat(k,2182) + lmat(k,2182) + mat(k,2224) = mat(k,2224) + lmat(k,2224) + mat(k,2246) = mat(k,2246) + lmat(k,2246) + mat(k,2251) = mat(k,2251) + lmat(k,2251) + mat(k,2252) = mat(k,2252) + lmat(k,2252) + mat(k,2290) = mat(k,2290) + lmat(k,2290) + mat(k,2339) = mat(k,2339) + lmat(k,2339) + mat(k,2346) = mat(k,2346) + lmat(k,2346) + mat(k,2353) = lmat(k,2353) + mat(k,2361) = mat(k,2361) + lmat(k,2361) + mat(k,2362) = mat(k,2362) + lmat(k,2362) + mat(k,2366) = lmat(k,2366) + mat(k,2367) = lmat(k,2367) + mat(k,2374) = mat(k,2374) + lmat(k,2374) + mat(k, 215) = 0._r8 + mat(k, 216) = 0._r8 + mat(k, 255) = 0._r8 + mat(k, 308) = 0._r8 + mat(k, 341) = 0._r8 + mat(k, 433) = 0._r8 + mat(k, 435) = 0._r8 + mat(k, 448) = 0._r8 + mat(k, 493) = 0._r8 + mat(k, 496) = 0._r8 + mat(k, 504) = 0._r8 + mat(k, 622) = 0._r8 + mat(k, 624) = 0._r8 + mat(k, 628) = 0._r8 + mat(k, 629) = 0._r8 + mat(k, 633) = 0._r8 + mat(k, 651) = 0._r8 + mat(k, 653) = 0._r8 + mat(k, 654) = 0._r8 + mat(k, 656) = 0._r8 + mat(k, 662) = 0._r8 + mat(k, 663) = 0._r8 + mat(k, 666) = 0._r8 + mat(k, 683) = 0._r8 + mat(k, 706) = 0._r8 + mat(k, 708) = 0._r8 + mat(k, 709) = 0._r8 + mat(k, 711) = 0._r8 + mat(k, 713) = 0._r8 + mat(k, 733) = 0._r8 + mat(k, 735) = 0._r8 + mat(k, 736) = 0._r8 + mat(k, 738) = 0._r8 + mat(k, 741) = 0._r8 + mat(k, 749) = 0._r8 + mat(k, 751) = 0._r8 + mat(k, 752) = 0._r8 + mat(k, 754) = 0._r8 + mat(k, 756) = 0._r8 + mat(k, 758) = 0._r8 + mat(k, 776) = 0._r8 + mat(k, 781) = 0._r8 + mat(k, 782) = 0._r8 + mat(k, 785) = 0._r8 + mat(k, 791) = 0._r8 + mat(k, 795) = 0._r8 + mat(k, 798) = 0._r8 + mat(k, 810) = 0._r8 + mat(k, 814) = 0._r8 + mat(k, 864) = 0._r8 + mat(k, 898) = 0._r8 + mat(k, 909) = 0._r8 + mat(k, 911) = 0._r8 + mat(k, 919) = 0._r8 + mat(k, 926) = 0._r8 + mat(k, 937) = 0._r8 + mat(k, 939) = 0._r8 + mat(k, 947) = 0._r8 + mat(k, 954) = 0._r8 + mat(k, 958) = 0._r8 + mat(k, 959) = 0._r8 + mat(k, 963) = 0._r8 + mat(k, 964) = 0._r8 + mat(k, 967) = 0._r8 + mat(k, 969) = 0._r8 + mat(k, 994) = 0._r8 + mat(k,1005) = 0._r8 + mat(k,1008) = 0._r8 + mat(k,1009) = 0._r8 + mat(k,1010) = 0._r8 + mat(k,1011) = 0._r8 + mat(k,1013) = 0._r8 + mat(k,1017) = 0._r8 + mat(k,1018) = 0._r8 + mat(k,1026) = 0._r8 + mat(k,1028) = 0._r8 + mat(k,1029) = 0._r8 + mat(k,1031) = 0._r8 + mat(k,1033) = 0._r8 + mat(k,1039) = 0._r8 + mat(k,1040) = 0._r8 + mat(k,1045) = 0._r8 + mat(k,1061) = 0._r8 + mat(k,1062) = 0._r8 + mat(k,1063) = 0._r8 + mat(k,1064) = 0._r8 + mat(k,1067) = 0._r8 + mat(k,1078) = 0._r8 + mat(k,1086) = 0._r8 + mat(k,1087) = 0._r8 + mat(k,1088) = 0._r8 + mat(k,1101) = 0._r8 + mat(k,1105) = 0._r8 + mat(k,1106) = 0._r8 + mat(k,1107) = 0._r8 + mat(k,1112) = 0._r8 + mat(k,1116) = 0._r8 + mat(k,1122) = 0._r8 + mat(k,1123) = 0._r8 + mat(k,1125) = 0._r8 + mat(k,1126) = 0._r8 + mat(k,1127) = 0._r8 + mat(k,1128) = 0._r8 + mat(k,1129) = 0._r8 + mat(k,1130) = 0._r8 + mat(k,1133) = 0._r8 + mat(k,1135) = 0._r8 + mat(k,1136) = 0._r8 + mat(k,1139) = 0._r8 + mat(k,1148) = 0._r8 + mat(k,1150) = 0._r8 + mat(k,1151) = 0._r8 + mat(k,1152) = 0._r8 + mat(k,1155) = 0._r8 + mat(k,1157) = 0._r8 + mat(k,1160) = 0._r8 + mat(k,1173) = 0._r8 + mat(k,1176) = 0._r8 + mat(k,1179) = 0._r8 + mat(k,1190) = 0._r8 + mat(k,1193) = 0._r8 + mat(k,1195) = 0._r8 + mat(k,1201) = 0._r8 + mat(k,1203) = 0._r8 + mat(k,1205) = 0._r8 + mat(k,1206) = 0._r8 + mat(k,1207) = 0._r8 + mat(k,1208) = 0._r8 + mat(k,1210) = 0._r8 + mat(k,1211) = 0._r8 + mat(k,1212) = 0._r8 + mat(k,1214) = 0._r8 + mat(k,1215) = 0._r8 + mat(k,1218) = 0._r8 + mat(k,1220) = 0._r8 + mat(k,1225) = 0._r8 + mat(k,1232) = 0._r8 + mat(k,1237) = 0._r8 + mat(k,1243) = 0._r8 + mat(k,1246) = 0._r8 + mat(k,1252) = 0._r8 + mat(k,1253) = 0._r8 + mat(k,1259) = 0._r8 + mat(k,1260) = 0._r8 + mat(k,1267) = 0._r8 + mat(k,1268) = 0._r8 + mat(k,1269) = 0._r8 + mat(k,1270) = 0._r8 + mat(k,1271) = 0._r8 + mat(k,1272) = 0._r8 + mat(k,1274) = 0._r8 + mat(k,1276) = 0._r8 + mat(k,1278) = 0._r8 + mat(k,1280) = 0._r8 + mat(k,1281) = 0._r8 + mat(k,1284) = 0._r8 + mat(k,1286) = 0._r8 + mat(k,1287) = 0._r8 + mat(k,1291) = 0._r8 + mat(k,1295) = 0._r8 + mat(k,1298) = 0._r8 + mat(k,1299) = 0._r8 + mat(k,1301) = 0._r8 + mat(k,1302) = 0._r8 + mat(k,1305) = 0._r8 + mat(k,1306) = 0._r8 + mat(k,1307) = 0._r8 + mat(k,1308) = 0._r8 + mat(k,1311) = 0._r8 + mat(k,1312) = 0._r8 + mat(k,1313) = 0._r8 + mat(k,1315) = 0._r8 + mat(k,1316) = 0._r8 + mat(k,1319) = 0._r8 + mat(k,1321) = 0._r8 + mat(k,1322) = 0._r8 + mat(k,1326) = 0._r8 + mat(k,1332) = 0._r8 + mat(k,1336) = 0._r8 + mat(k,1338) = 0._r8 + mat(k,1339) = 0._r8 + mat(k,1342) = 0._r8 + mat(k,1344) = 0._r8 + mat(k,1348) = 0._r8 + mat(k,1353) = 0._r8 + mat(k,1358) = 0._r8 + mat(k,1360) = 0._r8 + mat(k,1361) = 0._r8 + mat(k,1362) = 0._r8 + mat(k,1364) = 0._r8 + mat(k,1368) = 0._r8 + mat(k,1369) = 0._r8 + mat(k,1371) = 0._r8 + mat(k,1372) = 0._r8 + mat(k,1377) = 0._r8 + mat(k,1378) = 0._r8 + mat(k,1379) = 0._r8 + mat(k,1382) = 0._r8 + mat(k,1383) = 0._r8 + mat(k,1389) = 0._r8 + mat(k,1393) = 0._r8 + mat(k,1414) = 0._r8 + mat(k,1415) = 0._r8 + mat(k,1416) = 0._r8 + mat(k,1422) = 0._r8 + mat(k,1423) = 0._r8 + mat(k,1426) = 0._r8 + mat(k,1436) = 0._r8 + mat(k,1443) = 0._r8 + mat(k,1449) = 0._r8 + mat(k,1450) = 0._r8 + mat(k,1454) = 0._r8 + mat(k,1455) = 0._r8 + mat(k,1456) = 0._r8 + mat(k,1463) = 0._r8 + mat(k,1464) = 0._r8 + mat(k,1472) = 0._r8 + mat(k,1478) = 0._r8 + mat(k,1479) = 0._r8 + mat(k,1481) = 0._r8 + mat(k,1482) = 0._r8 + mat(k,1484) = 0._r8 + mat(k,1486) = 0._r8 + mat(k,1487) = 0._r8 + mat(k,1488) = 0._r8 + mat(k,1489) = 0._r8 + mat(k,1491) = 0._r8 + mat(k,1492) = 0._r8 + mat(k,1501) = 0._r8 + mat(k,1503) = 0._r8 + mat(k,1505) = 0._r8 + mat(k,1506) = 0._r8 + mat(k,1508) = 0._r8 + mat(k,1509) = 0._r8 + mat(k,1514) = 0._r8 + mat(k,1515) = 0._r8 + mat(k,1517) = 0._r8 + mat(k,1520) = 0._r8 + mat(k,1521) = 0._r8 + mat(k,1525) = 0._r8 + mat(k,1527) = 0._r8 + mat(k,1529) = 0._r8 + mat(k,1530) = 0._r8 + mat(k,1532) = 0._r8 + mat(k,1534) = 0._r8 + mat(k,1539) = 0._r8 + mat(k,1541) = 0._r8 + mat(k,1542) = 0._r8 + mat(k,1553) = 0._r8 + mat(k,1557) = 0._r8 + mat(k,1560) = 0._r8 + mat(k,1562) = 0._r8 + mat(k,1563) = 0._r8 + mat(k,1564) = 0._r8 + mat(k,1565) = 0._r8 + mat(k,1569) = 0._r8 + mat(k,1570) = 0._r8 + mat(k,1573) = 0._r8 + mat(k,1575) = 0._r8 + mat(k,1581) = 0._r8 + mat(k,1582) = 0._r8 + mat(k,1584) = 0._r8 + mat(k,1585) = 0._r8 + mat(k,1588) = 0._r8 + mat(k,1614) = 0._r8 + mat(k,1617) = 0._r8 + mat(k,1626) = 0._r8 + mat(k,1696) = 0._r8 + mat(k,1712) = 0._r8 + mat(k,1728) = 0._r8 + mat(k,1731) = 0._r8 + mat(k,1742) = 0._r8 + mat(k,1743) = 0._r8 + mat(k,1766) = 0._r8 + mat(k,1783) = 0._r8 + mat(k,1804) = 0._r8 + mat(k,1806) = 0._r8 + mat(k,1808) = 0._r8 + mat(k,1812) = 0._r8 + mat(k,1814) = 0._r8 + mat(k,1815) = 0._r8 + mat(k,1816) = 0._r8 + mat(k,1817) = 0._r8 + mat(k,1821) = 0._r8 + mat(k,1852) = 0._r8 + mat(k,1853) = 0._r8 + mat(k,1854) = 0._r8 + mat(k,1881) = 0._r8 + mat(k,1886) = 0._r8 + mat(k,1888) = 0._r8 + mat(k,1892) = 0._r8 + mat(k,1893) = 0._r8 + mat(k,1894) = 0._r8 + mat(k,1901) = 0._r8 + mat(k,1907) = 0._r8 + mat(k,1911) = 0._r8 + mat(k,1912) = 0._r8 + mat(k,1916) = 0._r8 + mat(k,1944) = 0._r8 + mat(k,1950) = 0._r8 + mat(k,1952) = 0._r8 + mat(k,1957) = 0._r8 + mat(k,1958) = 0._r8 + mat(k,1960) = 0._r8 + mat(k,1961) = 0._r8 + mat(k,1962) = 0._r8 + mat(k,1965) = 0._r8 + mat(k,1968) = 0._r8 + mat(k,1969) = 0._r8 + mat(k,1970) = 0._r8 + mat(k,1972) = 0._r8 + mat(k,1977) = 0._r8 + mat(k,1988) = 0._r8 + mat(k,1994) = 0._r8 + mat(k,2000) = 0._r8 + mat(k,2004) = 0._r8 + mat(k,2010) = 0._r8 + mat(k,2011) = 0._r8 + mat(k,2015) = 0._r8 + mat(k,2024) = 0._r8 + mat(k,2028) = 0._r8 + mat(k,2030) = 0._r8 + mat(k,2031) = 0._r8 + mat(k,2033) = 0._r8 + mat(k,2034) = 0._r8 + mat(k,2035) = 0._r8 + mat(k,2037) = 0._r8 + mat(k,2042) = 0._r8 + mat(k,2043) = 0._r8 + mat(k,2044) = 0._r8 + mat(k,2045) = 0._r8 + mat(k,2046) = 0._r8 + mat(k,2047) = 0._r8 + mat(k,2054) = 0._r8 + mat(k,2056) = 0._r8 + mat(k,2057) = 0._r8 + mat(k,2058) = 0._r8 + mat(k,2061) = 0._r8 + mat(k,2062) = 0._r8 + mat(k,2063) = 0._r8 + mat(k,2067) = 0._r8 + mat(k,2068) = 0._r8 + mat(k,2071) = 0._r8 + mat(k,2079) = 0._r8 + mat(k,2082) = 0._r8 + mat(k,2086) = 0._r8 + mat(k,2092) = 0._r8 + mat(k,2095) = 0._r8 + mat(k,2097) = 0._r8 + mat(k,2099) = 0._r8 + mat(k,2101) = 0._r8 + mat(k,2113) = 0._r8 + mat(k,2114) = 0._r8 + mat(k,2115) = 0._r8 + mat(k,2120) = 0._r8 + mat(k,2122) = 0._r8 + mat(k,2124) = 0._r8 + mat(k,2126) = 0._r8 + mat(k,2127) = 0._r8 + mat(k,2129) = 0._r8 + mat(k,2130) = 0._r8 + mat(k,2131) = 0._r8 + mat(k,2133) = 0._r8 + mat(k,2142) = 0._r8 + mat(k,2168) = 0._r8 + mat(k,2169) = 0._r8 + mat(k,2173) = 0._r8 + mat(k,2174) = 0._r8 + mat(k,2175) = 0._r8 + mat(k,2177) = 0._r8 + mat(k,2178) = 0._r8 + mat(k,2179) = 0._r8 + mat(k,2180) = 0._r8 + mat(k,2181) = 0._r8 + mat(k,2186) = 0._r8 + mat(k,2196) = 0._r8 + mat(k,2199) = 0._r8 + mat(k,2200) = 0._r8 + mat(k,2202) = 0._r8 + mat(k,2203) = 0._r8 + mat(k,2204) = 0._r8 + mat(k,2207) = 0._r8 + mat(k,2210) = 0._r8 + mat(k,2213) = 0._r8 + mat(k,2214) = 0._r8 + mat(k,2216) = 0._r8 + mat(k,2219) = 0._r8 + mat(k,2226) = 0._r8 + mat(k,2227) = 0._r8 + mat(k,2237) = 0._r8 + mat(k,2241) = 0._r8 + mat(k,2245) = 0._r8 + mat(k,2247) = 0._r8 + mat(k,2249) = 0._r8 + mat(k,2254) = 0._r8 + mat(k,2298) = 0._r8 + mat(k,2329) = 0._r8 + mat(k,2330) = 0._r8 + mat(k,2334) = 0._r8 + mat(k,2340) = 0._r8 + mat(k,2341) = 0._r8 + mat(k,2347) = 0._r8 + mat(k,2352) = 0._r8 + mat(k,2354) = 0._r8 + mat(k,2355) = 0._r8 + mat(k,2356) = 0._r8 + mat(k,2357) = 0._r8 + mat(k,2358) = 0._r8 + mat(k,2359) = 0._r8 + mat(k,2360) = 0._r8 + mat(k,2363) = 0._r8 + mat(k,2364) = 0._r8 + mat(k,2365) = 0._r8 + mat(k,2368) = 0._r8 + mat(k,2369) = 0._r8 + mat(k,2370) = 0._r8 + mat(k,2371) = 0._r8 + mat(k,2372) = 0._r8 + mat(k,2373) = 0._r8 + mat(k, 1) = mat(k, 1) - dti(k) + mat(k, 2) = mat(k, 2) - dti(k) + mat(k, 3) = mat(k, 3) - dti(k) + mat(k, 4) = mat(k, 4) - dti(k) + mat(k, 5) = mat(k, 5) - dti(k) + mat(k, 6) = mat(k, 6) - dti(k) + mat(k, 7) = mat(k, 7) - dti(k) + mat(k, 8) = mat(k, 8) - dti(k) + mat(k, 9) = mat(k, 9) - dti(k) + mat(k, 10) = mat(k, 10) - dti(k) + mat(k, 11) = mat(k, 11) - dti(k) + mat(k, 12) = mat(k, 12) - dti(k) + mat(k, 13) = mat(k, 13) - dti(k) + mat(k, 14) = mat(k, 14) - dti(k) + mat(k, 15) = mat(k, 15) - dti(k) + mat(k, 16) = mat(k, 16) - dti(k) + mat(k, 17) = mat(k, 17) - dti(k) + mat(k, 18) = mat(k, 18) - dti(k) + mat(k, 19) = mat(k, 19) - dti(k) + mat(k, 20) = mat(k, 20) - dti(k) + mat(k, 21) = mat(k, 21) - dti(k) + mat(k, 22) = mat(k, 22) - dti(k) + mat(k, 23) = mat(k, 23) - dti(k) + mat(k, 24) = mat(k, 24) - dti(k) + mat(k, 25) = mat(k, 25) - dti(k) + mat(k, 26) = mat(k, 26) - dti(k) + mat(k, 27) = mat(k, 27) - dti(k) + mat(k, 28) = mat(k, 28) - dti(k) + mat(k, 29) = mat(k, 29) - dti(k) + mat(k, 30) = mat(k, 30) - dti(k) + mat(k, 31) = mat(k, 31) - dti(k) + mat(k, 32) = mat(k, 32) - dti(k) + mat(k, 33) = mat(k, 33) - dti(k) + mat(k, 34) = mat(k, 34) - dti(k) + mat(k, 35) = mat(k, 35) - dti(k) + mat(k, 36) = mat(k, 36) - dti(k) + mat(k, 37) = mat(k, 37) - dti(k) + mat(k, 38) = mat(k, 38) - dti(k) + mat(k, 39) = mat(k, 39) - dti(k) + mat(k, 40) = mat(k, 40) - dti(k) + mat(k, 41) = mat(k, 41) - dti(k) + mat(k, 42) = mat(k, 42) - dti(k) + mat(k, 43) = mat(k, 43) - dti(k) + mat(k, 49) = mat(k, 49) - dti(k) + mat(k, 55) = mat(k, 55) - dti(k) + mat(k, 61) = mat(k, 61) - dti(k) + mat(k, 67) = mat(k, 67) - dti(k) + mat(k, 73) = mat(k, 73) - dti(k) + mat(k, 75) = mat(k, 75) - dti(k) + mat(k, 81) = mat(k, 81) - dti(k) + mat(k, 87) = mat(k, 87) - dti(k) + mat(k, 93) = mat(k, 93) - dti(k) + mat(k, 94) = mat(k, 94) - dti(k) + mat(k, 97) = mat(k, 97) - dti(k) + mat(k, 100) = mat(k, 100) - dti(k) + mat(k, 103) = mat(k, 103) - dti(k) + mat(k, 106) = mat(k, 106) - dti(k) + mat(k, 110) = mat(k, 110) - dti(k) + mat(k, 114) = mat(k, 114) - dti(k) + mat(k, 118) = mat(k, 118) - dti(k) + mat(k, 122) = mat(k, 122) - dti(k) + mat(k, 126) = mat(k, 126) - dti(k) + mat(k, 130) = mat(k, 130) - dti(k) + mat(k, 133) = mat(k, 133) - dti(k) + mat(k, 136) = mat(k, 136) - dti(k) + mat(k, 139) = mat(k, 139) - dti(k) + mat(k, 142) = mat(k, 142) - dti(k) + mat(k, 147) = mat(k, 147) - dti(k) + mat(k, 152) = mat(k, 152) - dti(k) + mat(k, 157) = mat(k, 157) - dti(k) + mat(k, 162) = mat(k, 162) - dti(k) + mat(k, 165) = mat(k, 165) - dti(k) + mat(k, 168) = mat(k, 168) - dti(k) + mat(k, 174) = mat(k, 174) - dti(k) + mat(k, 178) = mat(k, 178) - dti(k) + mat(k, 183) = mat(k, 183) - dti(k) + mat(k, 185) = mat(k, 185) - dti(k) + mat(k, 190) = mat(k, 190) - dti(k) + mat(k, 197) = mat(k, 197) - dti(k) + mat(k, 202) = mat(k, 202) - dti(k) + mat(k, 206) = mat(k, 206) - dti(k) + mat(k, 211) = mat(k, 211) - dti(k) + mat(k, 219) = mat(k, 219) - dti(k) + mat(k, 224) = mat(k, 224) - dti(k) + mat(k, 229) = mat(k, 229) - dti(k) + mat(k, 232) = mat(k, 232) - dti(k) + mat(k, 235) = mat(k, 235) - dti(k) + mat(k, 238) = mat(k, 238) - dti(k) + mat(k, 241) = mat(k, 241) - dti(k) + mat(k, 244) = mat(k, 244) - dti(k) + mat(k, 249) = mat(k, 249) - dti(k) + mat(k, 254) = mat(k, 254) - dti(k) + mat(k, 259) = mat(k, 259) - dti(k) + mat(k, 264) = mat(k, 264) - dti(k) + mat(k, 268) = mat(k, 268) - dti(k) + mat(k, 272) = mat(k, 272) - dti(k) + mat(k, 276) = mat(k, 276) - dti(k) + mat(k, 282) = mat(k, 282) - dti(k) + mat(k, 285) = mat(k, 285) - dti(k) + mat(k, 288) = mat(k, 288) - dti(k) + mat(k, 294) = mat(k, 294) - dti(k) + mat(k, 300) = mat(k, 300) - dti(k) + mat(k, 307) = mat(k, 307) - dti(k) + mat(k, 313) = mat(k, 313) - dti(k) + mat(k, 318) = mat(k, 318) - dti(k) + mat(k, 323) = mat(k, 323) - dti(k) + mat(k, 328) = mat(k, 328) - dti(k) + mat(k, 333) = mat(k, 333) - dti(k) + mat(k, 339) = mat(k, 339) - dti(k) + mat(k, 344) = mat(k, 344) - dti(k) + mat(k, 347) = mat(k, 347) - dti(k) + mat(k, 352) = mat(k, 352) - dti(k) + mat(k, 360) = mat(k, 360) - dti(k) + mat(k, 368) = mat(k, 368) - dti(k) + mat(k, 376) = mat(k, 376) - dti(k) + mat(k, 382) = mat(k, 382) - dti(k) + mat(k, 388) = mat(k, 388) - dti(k) + mat(k, 394) = mat(k, 394) - dti(k) + mat(k, 400) = mat(k, 400) - dti(k) + mat(k, 406) = mat(k, 406) - dti(k) + mat(k, 412) = mat(k, 412) - dti(k) + mat(k, 418) = mat(k, 418) - dti(k) + mat(k, 424) = mat(k, 424) - dti(k) + mat(k, 432) = mat(k, 432) - dti(k) + mat(k, 438) = mat(k, 438) - dti(k) + mat(k, 445) = mat(k, 445) - dti(k) + mat(k, 451) = mat(k, 451) - dti(k) + mat(k, 457) = mat(k, 457) - dti(k) + mat(k, 462) = mat(k, 462) - dti(k) + mat(k, 465) = mat(k, 465) - dti(k) + mat(k, 469) = mat(k, 469) - dti(k) + mat(k, 476) = mat(k, 476) - dti(k) + mat(k, 483) = mat(k, 483) - dti(k) + mat(k, 492) = mat(k, 492) - dti(k) + mat(k, 500) = mat(k, 500) - dti(k) + mat(k, 507) = mat(k, 507) - dti(k) + mat(k, 513) = mat(k, 513) - dti(k) + mat(k, 519) = mat(k, 519) - dti(k) + mat(k, 527) = mat(k, 527) - dti(k) + mat(k, 535) = mat(k, 535) - dti(k) + mat(k, 543) = mat(k, 543) - dti(k) + mat(k, 551) = mat(k, 551) - dti(k) + mat(k, 559) = mat(k, 559) - dti(k) + mat(k, 567) = mat(k, 567) - dti(k) + mat(k, 576) = mat(k, 576) - dti(k) + mat(k, 585) = mat(k, 585) - dti(k) + mat(k, 589) = mat(k, 589) - dti(k) + mat(k, 598) = mat(k, 598) - dti(k) + mat(k, 605) = mat(k, 605) - dti(k) + mat(k, 612) = mat(k, 612) - dti(k) + mat(k, 620) = mat(k, 620) - dti(k) + mat(k, 627) = mat(k, 627) - dti(k) + mat(k, 637) = mat(k, 637) - dti(k) + mat(k, 650) = mat(k, 650) - dti(k) + mat(k, 661) = mat(k, 661) - dti(k) + mat(k, 672) = mat(k, 672) - dti(k) + mat(k, 680) = mat(k, 680) - dti(k) + mat(k, 688) = mat(k, 688) - dti(k) + mat(k, 694) = mat(k, 694) - dti(k) + mat(k, 705) = mat(k, 705) - dti(k) + mat(k, 716) = mat(k, 716) - dti(k) + mat(k, 723) = mat(k, 723) - dti(k) + mat(k, 734) = mat(k, 734) - dti(k) + mat(k, 750) = mat(k, 750) - dti(k) + mat(k, 761) = mat(k, 761) - dti(k) + mat(k, 770) = mat(k, 770) - dti(k) + mat(k, 780) = mat(k, 780) - dti(k) + mat(k, 789) = mat(k, 789) - dti(k) + mat(k, 799) = mat(k, 799) - dti(k) + mat(k, 804) = mat(k, 804) - dti(k) + mat(k, 815) = mat(k, 815) - dti(k) + mat(k, 824) = mat(k, 824) - dti(k) + mat(k, 834) = mat(k, 834) - dti(k) + mat(k, 850) = mat(k, 850) - dti(k) + mat(k, 859) = mat(k, 859) - dti(k) + mat(k, 868) = mat(k, 868) - dti(k) + mat(k, 873) = mat(k, 873) - dti(k) + mat(k, 883) = mat(k, 883) - dti(k) + mat(k, 893) = mat(k, 893) - dti(k) + mat(k, 908) = mat(k, 908) - dti(k) + mat(k, 936) = mat(k, 936) - dti(k) + mat(k, 960) = mat(k, 960) - dti(k) + mat(k, 971) = mat(k, 971) - dti(k) + mat(k, 978) = mat(k, 978) - dti(k) + mat(k, 985) = mat(k, 985) - dti(k) + mat(k, 995) = mat(k, 995) - dti(k) + mat(k,1007) = mat(k,1007) - dti(k) + mat(k,1023) = mat(k,1023) - dti(k) + mat(k,1043) = mat(k,1043) - dti(k) + mat(k,1047) = mat(k,1047) - dti(k) + mat(k,1060) = mat(k,1060) - dti(k) + mat(k,1075) = mat(k,1075) - dti(k) + mat(k,1089) = mat(k,1089) - dti(k) + mat(k,1097) = mat(k,1097) - dti(k) + mat(k,1110) = mat(k,1110) - dti(k) + mat(k,1124) = mat(k,1124) - dti(k) + mat(k,1147) = mat(k,1147) - dti(k) + mat(k,1164) = mat(k,1164) - dti(k) + mat(k,1175) = mat(k,1175) - dti(k) + mat(k,1187) = mat(k,1187) - dti(k) + mat(k,1209) = mat(k,1209) - dti(k) + mat(k,1227) = mat(k,1227) - dti(k) + mat(k,1240) = mat(k,1240) - dti(k) + mat(k,1251) = mat(k,1251) - dti(k) + mat(k,1275) = mat(k,1275) - dti(k) + mat(k,1310) = mat(k,1310) - dti(k) + mat(k,1335) = mat(k,1335) - dti(k) + mat(k,1357) = mat(k,1357) - dti(k) + mat(k,1380) = mat(k,1380) - dti(k) + mat(k,1413) = mat(k,1413) - dti(k) + mat(k,1430) = mat(k,1430) - dti(k) + mat(k,1446) = mat(k,1446) - dti(k) + mat(k,1462) = mat(k,1462) - dti(k) + mat(k,1480) = mat(k,1480) - dti(k) + mat(k,1504) = mat(k,1504) - dti(k) + mat(k,1528) = mat(k,1528) - dti(k) + mat(k,1574) = mat(k,1574) - dti(k) + mat(k,1618) = mat(k,1618) - dti(k) + mat(k,1784) = mat(k,1784) - dti(k) + mat(k,1810) = mat(k,1810) - dti(k) + mat(k,1919) = mat(k,1919) - dti(k) + mat(k,1985) = mat(k,1985) - dti(k) + mat(k,2020) = mat(k,2020) - dti(k) + mat(k,2041) = mat(k,2041) - dti(k) + mat(k,2066) = mat(k,2066) - dti(k) + mat(k,2128) = mat(k,2128) - dti(k) + mat(k,2182) = mat(k,2182) - dti(k) + mat(k,2224) = mat(k,2224) - dti(k) + mat(k,2252) = mat(k,2252) - dti(k) + mat(k,2346) = mat(k,2346) - dti(k) + mat(k,2374) = mat(k,2374) - dti(k) + end do + end subroutine nlnmat_finit + subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call nlnmat01( avec_len, mat, y, rxt ) + call nlnmat02( avec_len, mat, y, rxt ) + call nlnmat03( avec_len, mat, y, rxt ) + call nlnmat04( avec_len, mat, y, rxt ) + call nlnmat05( avec_len, mat, y, rxt ) + call nlnmat06( avec_len, mat, y, rxt ) + call nlnmat07( avec_len, mat, y, rxt ) + call nlnmat08( avec_len, mat, y, rxt ) + call nlnmat09( avec_len, mat, y, rxt ) + call nlnmat10( avec_len, mat, y, rxt ) + call nlnmat11( avec_len, mat, y, rxt ) + call nlnmat_finit( avec_len, mat, lmat, dti ) + end subroutine nlnmat + end module mo_nln_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_phtadj.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_phtadj.F90 similarity index 84% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_phtadj.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s2/mo_phtadj.F90 index 6698bf2f2b..aaa43829fe 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_phtadj.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_phtadj.F90 @@ -19,9 +19,6 @@ subroutine phtadj( p_rate, inv, m, ncol, nlev ) integer :: k real(r8) :: im(ncol,nlev) do k = 1,nlev - im(:ncol,k) = 1._r8 / m(:ncol,k) - p_rate(:,k, 5) = p_rate(:,k, 5) * inv(:,k, 2) * im(:,k) - p_rate(:,k, 6) = p_rate(:,k, 6) * inv(:,k, 2) * im(:,k) end do end subroutine phtadj end module mo_phtadj diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_prod_loss.F90 new file mode 100644 index 0000000000..3c24b07ae0 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_prod_loss.F90 @@ -0,0 +1,1283 @@ + module mo_prod_loss + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : veclen + private + public :: exp_prod_loss + public :: imp_prod_loss + contains + subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & + rxt, het_rates, chnkpnts ) + use chem_mods, only : gas_pcnst,rxntot,clscnt1 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: ofl, ofu, chnkpnts + real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(chnkpnts,gas_pcnst) + real(r8), intent(in) :: rxt(chnkpnts,rxntot) + real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Explicit method +!-------------------------------------------------------------------- + do k = ofl,ofu + loss(k,1) = ( + het_rates(k,190))* y(k,190) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,191))* y(k,191) + prod(k,2) = 0._r8 + end do + end subroutine exp_prod_loss + subroutine imp_prod_loss( avec_len, prod, loss, y, & + rxt, het_rates ) + use chem_mods, only : gas_pcnst,rxntot,clscnt4 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), dimension(veclen,clscnt4), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Implicit method +!-------------------------------------------------------------------- + do k = 1,avec_len + loss(k,155) = (rxt(k,368)* y(k,221) + rxt(k,19) + het_rates(k,1))* y(k,1) + prod(k,155) =rxt(k,371)*y(k,193)*y(k,123) + loss(k,152) = (rxt(k,372)* y(k,221) + rxt(k,20) + het_rates(k,2))* y(k,2) + prod(k,152) =rxt(k,369)*y(k,207)*y(k,193) + loss(k,1) = ( + het_rates(k,3))* y(k,3) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,4))* y(k,4) + prod(k,2) = 0._r8 + loss(k,181) = (rxt(k,451)* y(k,125) +rxt(k,452)* y(k,137) +rxt(k,453) & + * y(k,221) + het_rates(k,5))* y(k,5) + prod(k,181) = 0._r8 + loss(k,73) = (rxt(k,410)* y(k,221) + het_rates(k,6))* y(k,6) + prod(k,73) = 0._r8 + loss(k,121) = (rxt(k,413)* y(k,221) + rxt(k,21) + het_rates(k,7))* y(k,7) + prod(k,121) =rxt(k,411)*y(k,207)*y(k,195) + loss(k,74) = ( + rxt(k,22) + het_rates(k,8))* y(k,8) + prod(k,74) =.120_r8*rxt(k,410)*y(k,221)*y(k,6) + loss(k,115) = ( + rxt(k,23) + het_rates(k,9))* y(k,9) + prod(k,115) = (.100_r8*rxt(k,452)*y(k,5) +.100_r8*rxt(k,455)*y(k,109)) & + *y(k,137) + loss(k,129) = ( + rxt(k,24) + het_rates(k,10))* y(k,10) + prod(k,129) = (.500_r8*rxt(k,412)*y(k,195) +.200_r8*rxt(k,439)*y(k,227) + & + .060_r8*rxt(k,445)*y(k,230))*y(k,123) +.500_r8*rxt(k,21)*y(k,7) & + +rxt(k,22)*y(k,8) +.200_r8*rxt(k,70)*y(k,183) +.060_r8*rxt(k,72) & + *y(k,187) + loss(k,98) = ( + rxt(k,25) + het_rates(k,11))* y(k,11) + prod(k,98) = (.200_r8*rxt(k,439)*y(k,227) +.200_r8*rxt(k,445)*y(k,230)) & + *y(k,123) +.200_r8*rxt(k,70)*y(k,183) +.200_r8*rxt(k,72)*y(k,187) + loss(k,146) = ( + rxt(k,26) + het_rates(k,12))* y(k,12) + prod(k,146) = (.200_r8*rxt(k,439)*y(k,227) +.150_r8*rxt(k,445)*y(k,230)) & + *y(k,123) +rxt(k,46)*y(k,93) +rxt(k,56)*y(k,115) +.200_r8*rxt(k,70) & + *y(k,183) +.150_r8*rxt(k,72)*y(k,187) + loss(k,106) = ( + rxt(k,27) + het_rates(k,13))* y(k,13) + prod(k,106) =.210_r8*rxt(k,445)*y(k,230)*y(k,123) +.210_r8*rxt(k,72)*y(k,187) + loss(k,85) = (rxt(k,373)* y(k,221) + het_rates(k,14))* y(k,14) + prod(k,85) = (.050_r8*rxt(k,452)*y(k,5) +.050_r8*rxt(k,455)*y(k,109)) & + *y(k,137) + loss(k,112) = (rxt(k,339)* y(k,125) +rxt(k,340)* y(k,221) + het_rates(k,15)) & + * y(k,15) + prod(k,112) = 0._r8 + loss(k,212) = (rxt(k,223)* y(k,41) +rxt(k,225)* y(k,137) +rxt(k,224) & + * y(k,207) + het_rates(k,16))* y(k,16) + prod(k,212) = (rxt(k,75) +2.000_r8*rxt(k,226)*y(k,18) +rxt(k,227)*y(k,58) + & + rxt(k,228)*y(k,58) +rxt(k,231)*y(k,123) +rxt(k,234)*y(k,133) + & + rxt(k,235)*y(k,221) +rxt(k,481)*y(k,153))*y(k,18) & + + (rxt(k,213)*y(k,33) +rxt(k,239)*y(k,34) + & + 3.000_r8*rxt(k,240)*y(k,54) +2.000_r8*rxt(k,241)*y(k,77) + & + rxt(k,242)*y(k,80) +2.000_r8*rxt(k,262)*y(k,40) +rxt(k,263)*y(k,42)) & + *y(k,220) + (rxt(k,237)*y(k,80) +2.000_r8*rxt(k,251)*y(k,40) + & + rxt(k,253)*y(k,42) +3.000_r8*rxt(k,258)*y(k,54))*y(k,221) & + + (2.000_r8*rxt(k,250)*y(k,40) +rxt(k,252)*y(k,42) + & + 3.000_r8*rxt(k,257)*y(k,54))*y(k,55) + (rxt(k,99) + & + rxt(k,236)*y(k,133))*y(k,80) +rxt(k,74)*y(k,17) +rxt(k,77)*y(k,19) & + +rxt(k,79)*y(k,33) +rxt(k,80)*y(k,34) +2.000_r8*rxt(k,86)*y(k,40) & + +rxt(k,87)*y(k,42) +3.000_r8*rxt(k,90)*y(k,54) +2.000_r8*rxt(k,98) & + *y(k,77) +rxt(k,105)*y(k,90) + loss(k,86) = ( + rxt(k,74) + het_rates(k,17))* y(k,17) + prod(k,86) = (rxt(k,542)*y(k,90) +rxt(k,547)*y(k,90))*y(k,84) & + +rxt(k,229)*y(k,58)*y(k,18) + loss(k,220) = (2._r8*rxt(k,226)* y(k,18) + (rxt(k,227) +rxt(k,228) + & + rxt(k,229))* y(k,58) +rxt(k,231)* y(k,123) +rxt(k,232)* y(k,124) & + +rxt(k,234)* y(k,133) +rxt(k,481)* y(k,153) +rxt(k,230)* y(k,207) & + +rxt(k,235)* y(k,221) + rxt(k,75) + het_rates(k,18))* y(k,18) + prod(k,220) = (rxt(k,76) +rxt(k,233)*y(k,133))*y(k,19) +rxt(k,225)*y(k,137) & + *y(k,16) +rxt(k,243)*y(k,220)*y(k,80) +rxt(k,238)*y(k,133)*y(k,90) + loss(k,141) = (rxt(k,233)* y(k,133) + rxt(k,76) + rxt(k,77) + rxt(k,536) & + + rxt(k,539) + rxt(k,544) + het_rates(k,19))* y(k,19) + prod(k,141) =rxt(k,232)*y(k,124)*y(k,18) + loss(k,3) = ( + het_rates(k,20))* y(k,20) + prod(k,3) = 0._r8 + loss(k,89) = (rxt(k,414)* y(k,221) + het_rates(k,21))* y(k,21) + prod(k,89) =rxt(k,28)*y(k,22) +rxt(k,417)*y(k,197)*y(k,123) + loss(k,109) = (rxt(k,416)* y(k,221) + rxt(k,28) + het_rates(k,22))* y(k,22) + prod(k,109) =rxt(k,415)*y(k,207)*y(k,197) + loss(k,101) = (rxt(k,288)* y(k,55) +rxt(k,289)* y(k,221) + het_rates(k,23)) & + * y(k,23) + prod(k,101) = 0._r8 + loss(k,140) = (rxt(k,290)* y(k,55) +rxt(k,291)* y(k,137) +rxt(k,316) & + * y(k,221) + het_rates(k,24))* y(k,24) + prod(k,140) = 0._r8 + loss(k,95) = (rxt(k,296)* y(k,221) + het_rates(k,25))* y(k,25) + prod(k,95) = (.400_r8*rxt(k,292)*y(k,198) +.200_r8*rxt(k,293)*y(k,202)) & + *y(k,198) + loss(k,111) = (rxt(k,297)* y(k,221) + rxt(k,29) + het_rates(k,26))* y(k,26) + prod(k,111) =rxt(k,294)*y(k,207)*y(k,198) + loss(k,102) = (rxt(k,298)* y(k,55) +rxt(k,299)* y(k,221) + het_rates(k,27)) & + * y(k,27) + prod(k,102) = 0._r8 + loss(k,188) = (rxt(k,319)* y(k,125) +rxt(k,320)* y(k,137) +rxt(k,337) & + * y(k,221) + het_rates(k,28))* y(k,28) + prod(k,188) =.130_r8*rxt(k,397)*y(k,137)*y(k,97) +.700_r8*rxt(k,55)*y(k,110) + loss(k,120) = (rxt(k,324)* y(k,221) + rxt(k,30) + het_rates(k,29))* y(k,29) + prod(k,120) =rxt(k,322)*y(k,207)*y(k,199) + loss(k,58) = (rxt(k,325)* y(k,221) + het_rates(k,30))* y(k,30) + prod(k,58) = 0._r8 + loss(k,96) = (rxt(k,420)* y(k,221) + rxt(k,31) + het_rates(k,31))* y(k,31) + prod(k,96) =rxt(k,418)*y(k,207)*y(k,200) + loss(k,55) = (rxt(k,212)* y(k,220) + rxt(k,78) + het_rates(k,32))* y(k,32) + prod(k,55) = 0._r8 + loss(k,67) = (rxt(k,213)* y(k,220) + rxt(k,79) + het_rates(k,33))* y(k,33) + prod(k,67) = 0._r8 + loss(k,68) = (rxt(k,239)* y(k,220) + rxt(k,80) + het_rates(k,34))* y(k,34) + prod(k,68) = 0._r8 + loss(k,59) = (rxt(k,214)* y(k,220) + rxt(k,81) + het_rates(k,35))* y(k,35) + prod(k,59) = 0._r8 + loss(k,69) = (rxt(k,215)* y(k,220) + rxt(k,82) + het_rates(k,36))* y(k,36) + prod(k,69) = 0._r8 + loss(k,60) = (rxt(k,216)* y(k,220) + rxt(k,83) + het_rates(k,37))* y(k,37) + prod(k,60) = 0._r8 + loss(k,70) = (rxt(k,217)* y(k,220) + rxt(k,84) + het_rates(k,38))* y(k,38) + prod(k,70) = 0._r8 + loss(k,61) = (rxt(k,218)* y(k,220) + rxt(k,85) + het_rates(k,39))* y(k,39) + prod(k,61) = 0._r8 + loss(k,132) = (rxt(k,250)* y(k,55) +rxt(k,262)* y(k,220) +rxt(k,251) & + * y(k,221) + rxt(k,86) + het_rates(k,40))* y(k,40) + prod(k,132) = 0._r8 + loss(k,216) = (rxt(k,223)* y(k,16) +rxt(k,187)* y(k,55) +rxt(k,268)* y(k,125) & + +rxt(k,269)* y(k,133) +rxt(k,267)* y(k,207) +rxt(k,270)* y(k,221) & + + rxt(k,32) + rxt(k,33) + het_rates(k,41))* y(k,41) + prod(k,216) = (rxt(k,194)*y(k,58) +2.000_r8*rxt(k,271)*y(k,202) + & + rxt(k,272)*y(k,202) +rxt(k,274)*y(k,123) + & + .700_r8*rxt(k,293)*y(k,198) +rxt(k,304)*y(k,201) + & + rxt(k,321)*y(k,199) +.800_r8*rxt(k,333)*y(k,224) + & + .880_r8*rxt(k,345)*y(k,213) +2.000_r8*rxt(k,354)*y(k,215) + & + 1.500_r8*rxt(k,378)*y(k,209) +.750_r8*rxt(k,383)*y(k,210) + & + .800_r8*rxt(k,392)*y(k,100) +.800_r8*rxt(k,403)*y(k,229) + & + .750_r8*rxt(k,457)*y(k,219) +.930_r8*rxt(k,462)*y(k,225) + & + .950_r8*rxt(k,467)*y(k,226))*y(k,202) & + + (.500_r8*rxt(k,310)*y(k,206) +rxt(k,331)*y(k,223) + & + rxt(k,335)*y(k,224) +.500_r8*rxt(k,341)*y(k,204) + & + .250_r8*rxt(k,348)*y(k,213) +rxt(k,357)*y(k,215) + & + .100_r8*rxt(k,370)*y(k,193) +.920_r8*rxt(k,380)*y(k,209) + & + .250_r8*rxt(k,405)*y(k,229) +.340_r8*rxt(k,464)*y(k,225) + & + .320_r8*rxt(k,469)*y(k,226))*y(k,123) + (rxt(k,275)*y(k,51) + & + .300_r8*rxt(k,276)*y(k,52) +.500_r8*rxt(k,308)*y(k,50) + & + .800_r8*rxt(k,313)*y(k,73) +rxt(k,315)*y(k,142) + & + .500_r8*rxt(k,363)*y(k,108) +.400_r8*rxt(k,368)*y(k,1) + & + .300_r8*rxt(k,388)*y(k,98) +.680_r8*rxt(k,473)*y(k,182))*y(k,221) & + + (rxt(k,291)*y(k,24) +.500_r8*rxt(k,320)*y(k,28) + & + .120_r8*rxt(k,350)*y(k,104) +.600_r8*rxt(k,364)*y(k,110) + & + .910_r8*rxt(k,397)*y(k,97) +.340_r8*rxt(k,452)*y(k,5) + & + .340_r8*rxt(k,455)*y(k,109))*y(k,137) + (.500_r8*rxt(k,339)*y(k,15) + & + .250_r8*rxt(k,347)*y(k,213) +rxt(k,358)*y(k,215) + & + rxt(k,381)*y(k,209))*y(k,125) + (.250_r8*rxt(k,344)*y(k,213) + & + rxt(k,353)*y(k,215) +rxt(k,377)*y(k,209) + & + .250_r8*rxt(k,402)*y(k,229))*y(k,201) + (.180_r8*rxt(k,39) + & + rxt(k,284)*y(k,220) +rxt(k,285)*y(k,220))*y(k,53) & + + (.150_r8*rxt(k,334)*y(k,224) +.450_r8*rxt(k,355)*y(k,215)) & + *y(k,207) +.100_r8*rxt(k,19)*y(k,1) +.100_r8*rxt(k,20)*y(k,2) & + +rxt(k,38)*y(k,52) +rxt(k,43)*y(k,73) +.330_r8*rxt(k,45)*y(k,92) & + +rxt(k,47)*y(k,94) +rxt(k,49)*y(k,102) +1.340_r8*rxt(k,50)*y(k,104) & + +rxt(k,57)*y(k,126) +rxt(k,62)*y(k,149) +rxt(k,63)*y(k,150) & + +.375_r8*rxt(k,65)*y(k,178) +.400_r8*rxt(k,67)*y(k,180) & + +.680_r8*rxt(k,69)*y(k,182) +2.000_r8*rxt(k,311)*y(k,205) & + +rxt(k,281)*y(k,208) +2.000_r8*rxt(k,356)*y(k,215)*y(k,215) + loss(k,147) = (rxt(k,252)* y(k,55) +rxt(k,263)* y(k,220) +rxt(k,253) & + * y(k,221) + rxt(k,87) + het_rates(k,42))* y(k,42) + prod(k,147) = 0._r8 + loss(k,62) = (rxt(k,254)* y(k,221) + rxt(k,88) + het_rates(k,43))* y(k,43) + prod(k,62) = 0._r8 + loss(k,190) = (rxt(k,300)* y(k,125) +rxt(k,301)* y(k,221) + rxt(k,34) & + + het_rates(k,44))* y(k,44) + prod(k,190) = (rxt(k,295)*y(k,198) +.270_r8*rxt(k,323)*y(k,199) + & + rxt(k,331)*y(k,223) +rxt(k,341)*y(k,204) +rxt(k,360)*y(k,217) + & + .400_r8*rxt(k,370)*y(k,193))*y(k,123) + (rxt(k,296)*y(k,25) + & + .500_r8*rxt(k,297)*y(k,26) +.800_r8*rxt(k,368)*y(k,1))*y(k,221) & + + (.500_r8*rxt(k,320)*y(k,28) +.100_r8*rxt(k,364)*y(k,110))*y(k,137) & + + (1.600_r8*rxt(k,292)*y(k,198) +.800_r8*rxt(k,293)*y(k,202)) & + *y(k,198) +.400_r8*rxt(k,19)*y(k,1) +.400_r8*rxt(k,20)*y(k,2) & + +rxt(k,339)*y(k,125)*y(k,15) +rxt(k,29)*y(k,26) +.330_r8*rxt(k,45) & + *y(k,92) +rxt(k,53)*y(k,107) +rxt(k,62)*y(k,149) & + +.200_r8*rxt(k,359)*y(k,217)*y(k,207) + loss(k,114) = (rxt(k,255)* y(k,55) +rxt(k,256)* y(k,221) + rxt(k,89) & + + het_rates(k,45))* y(k,45) + prod(k,114) = 0._r8 + loss(k,56) = (rxt(k,302)* y(k,221) + het_rates(k,46))* y(k,46) + prod(k,56) = 0._r8 + loss(k,183) = (rxt(k,338)* y(k,221) + rxt(k,35) + het_rates(k,47))* y(k,47) + prod(k,183) = (.820_r8*rxt(k,323)*y(k,199) +.500_r8*rxt(k,341)*y(k,204) + & + .250_r8*rxt(k,370)*y(k,193) +.270_r8*rxt(k,464)*y(k,225) + & + .040_r8*rxt(k,469)*y(k,226))*y(k,123) & + + (.820_r8*rxt(k,321)*y(k,199) +.150_r8*rxt(k,462)*y(k,225) + & + .025_r8*rxt(k,467)*y(k,226))*y(k,202) + (.250_r8*rxt(k,19) + & + .800_r8*rxt(k,368)*y(k,221))*y(k,1) + (.520_r8*rxt(k,452)*y(k,5) + & + .520_r8*rxt(k,455)*y(k,109))*y(k,137) + (.500_r8*rxt(k,69) + & + .500_r8*rxt(k,473)*y(k,221))*y(k,182) +.250_r8*rxt(k,20)*y(k,2) & + +.500_r8*rxt(k,339)*y(k,125)*y(k,15) +.820_r8*rxt(k,30)*y(k,29) & + +.170_r8*rxt(k,45)*y(k,92) +.300_r8*rxt(k,65)*y(k,178) & + +.050_r8*rxt(k,67)*y(k,180) + loss(k,203) = (rxt(k,326)* y(k,125) +rxt(k,327)* y(k,221) + rxt(k,36) & + + het_rates(k,48))* y(k,48) + prod(k,203) = (.250_r8*rxt(k,348)*y(k,213) +.050_r8*rxt(k,386)*y(k,210) + & + .250_r8*rxt(k,405)*y(k,229) +.170_r8*rxt(k,423)*y(k,203) + & + .170_r8*rxt(k,429)*y(k,216) +.400_r8*rxt(k,439)*y(k,227) + & + .540_r8*rxt(k,445)*y(k,230) +.510_r8*rxt(k,448)*y(k,232))*y(k,123) & + + (.250_r8*rxt(k,347)*y(k,213) +.050_r8*rxt(k,387)*y(k,210) + & + .250_r8*rxt(k,406)*y(k,229))*y(k,125) & + + (.500_r8*rxt(k,333)*y(k,224) +.240_r8*rxt(k,345)*y(k,213) + & + .100_r8*rxt(k,403)*y(k,229))*y(k,202) & + + (.880_r8*rxt(k,350)*y(k,104) +.500_r8*rxt(k,364)*y(k,110)) & + *y(k,137) + (.250_r8*rxt(k,344)*y(k,213) + & + .250_r8*rxt(k,402)*y(k,229))*y(k,201) & + + (.070_r8*rxt(k,422)*y(k,203) +.070_r8*rxt(k,428)*y(k,216)) & + *y(k,207) + (rxt(k,328)*y(k,94) +rxt(k,329)*y(k,126))*y(k,221) & + +.180_r8*rxt(k,23)*y(k,9) +rxt(k,27)*y(k,13) +.400_r8*rxt(k,70) & + *y(k,183) +.540_r8*rxt(k,72)*y(k,187) +.510_r8*rxt(k,73)*y(k,189) + loss(k,158) = (rxt(k,307)* y(k,221) + het_rates(k,49))* y(k,49) + prod(k,158) = (.100_r8*rxt(k,304)*y(k,202) +.150_r8*rxt(k,305)*y(k,207)) & + *y(k,201) +.120_r8*rxt(k,320)*y(k,137)*y(k,28) & + +.150_r8*rxt(k,355)*y(k,215)*y(k,207) + loss(k,149) = (rxt(k,308)* y(k,221) + rxt(k,37) + het_rates(k,50))* y(k,50) + prod(k,149) = (.360_r8*rxt(k,305)*y(k,201) +.400_r8*rxt(k,355)*y(k,215)) & + *y(k,207) + loss(k,169) = (rxt(k,275)* y(k,221) + het_rates(k,51))* y(k,51) + prod(k,169) = (rxt(k,272)*y(k,202) +.300_r8*rxt(k,293)*y(k,198) + & + .500_r8*rxt(k,333)*y(k,224) +.250_r8*rxt(k,345)*y(k,213) + & + .250_r8*rxt(k,378)*y(k,209) +.250_r8*rxt(k,383)*y(k,210) + & + .200_r8*rxt(k,392)*y(k,100) +.300_r8*rxt(k,403)*y(k,229) + & + .250_r8*rxt(k,457)*y(k,219) +.250_r8*rxt(k,462)*y(k,225) + & + .250_r8*rxt(k,467)*y(k,226))*y(k,202) + loss(k,127) = (rxt(k,276)* y(k,221) + rxt(k,38) + het_rates(k,52))* y(k,52) + prod(k,127) =rxt(k,273)*y(k,207)*y(k,202) + loss(k,213) = (rxt(k,188)* y(k,55) +rxt(k,244)* y(k,72) + (rxt(k,283) + & + rxt(k,284) +rxt(k,285))* y(k,220) +rxt(k,277)* y(k,221) + rxt(k,39) & + + rxt(k,40) + het_rates(k,53))* y(k,53) + prod(k,213) =.100_r8*rxt(k,320)*y(k,137)*y(k,28) + loss(k,116) = (rxt(k,257)* y(k,55) +rxt(k,240)* y(k,220) +rxt(k,258) & + * y(k,221) + rxt(k,90) + het_rates(k,54))* y(k,54) + prod(k,116) = 0._r8 + loss(k,228) = (rxt(k,298)* y(k,27) +rxt(k,250)* y(k,40) +rxt(k,187)* y(k,41) & + +rxt(k,252)* y(k,42) +rxt(k,255)* y(k,45) +rxt(k,188)* y(k,53) & + +rxt(k,257)* y(k,54) +rxt(k,200)* y(k,59) +rxt(k,189)* y(k,76) & + +rxt(k,190)* y(k,78) +rxt(k,209)* y(k,91) +rxt(k,193)* y(k,137) & + + (rxt(k,191) +rxt(k,192))* y(k,207) + het_rates(k,55))* y(k,55) + prod(k,228) = (4.000_r8*rxt(k,212)*y(k,32) +rxt(k,213)*y(k,33) + & + 2.000_r8*rxt(k,214)*y(k,35) +2.000_r8*rxt(k,215)*y(k,36) + & + 2.000_r8*rxt(k,216)*y(k,37) +rxt(k,217)*y(k,38) + & + 2.000_r8*rxt(k,218)*y(k,39) +rxt(k,219)*y(k,84) +rxt(k,249)*y(k,64) + & + rxt(k,264)*y(k,81) +rxt(k,265)*y(k,82) +rxt(k,266)*y(k,83))*y(k,220) & + + (rxt(k,93) +rxt(k,194)*y(k,202) +2.000_r8*rxt(k,195)*y(k,58) + & + rxt(k,197)*y(k,58) +rxt(k,199)*y(k,123) +rxt(k,204)*y(k,133) + & + rxt(k,205)*y(k,221) +rxt(k,228)*y(k,18) +rxt(k,482)*y(k,153))*y(k,58) & + + (rxt(k,208)*y(k,84) +3.000_r8*rxt(k,254)*y(k,43) + & + rxt(k,256)*y(k,45) +rxt(k,259)*y(k,81) +rxt(k,260)*y(k,82) + & + rxt(k,261)*y(k,83))*y(k,221) + (rxt(k,103) +rxt(k,207)*y(k,133)) & + *y(k,84) +rxt(k,74)*y(k,17) +4.000_r8*rxt(k,78)*y(k,32) +rxt(k,79) & + *y(k,33) +2.000_r8*rxt(k,81)*y(k,35) +2.000_r8*rxt(k,82)*y(k,36) & + +2.000_r8*rxt(k,83)*y(k,37) +rxt(k,84)*y(k,38) +2.000_r8*rxt(k,85) & + *y(k,39) +3.000_r8*rxt(k,88)*y(k,43) +rxt(k,89)*y(k,45) & + +2.000_r8*rxt(k,91)*y(k,56) +2.000_r8*rxt(k,92)*y(k,57) +rxt(k,94) & + *y(k,59) +rxt(k,97)*y(k,64) +rxt(k,100)*y(k,81) +rxt(k,101)*y(k,82) & + +rxt(k,102)*y(k,83) +rxt(k,106)*y(k,91) + loss(k,76) = ( + rxt(k,91) + het_rates(k,56))* y(k,56) + prod(k,76) = (rxt(k,535)*y(k,91) +rxt(k,540)*y(k,59) +rxt(k,541)*y(k,91) + & + rxt(k,545)*y(k,59) +rxt(k,546)*y(k,91) +rxt(k,550)*y(k,59))*y(k,84) & + +rxt(k,200)*y(k,59)*y(k,55) +rxt(k,196)*y(k,58)*y(k,58) + loss(k,53) = ( + rxt(k,92) + rxt(k,222) + het_rates(k,57))* y(k,57) + prod(k,53) =rxt(k,221)*y(k,58)*y(k,58) + loss(k,229) = ((rxt(k,227) +rxt(k,228) +rxt(k,229))* y(k,18) & + + 2._r8*(rxt(k,195) +rxt(k,196) +rxt(k,197) +rxt(k,221))* y(k,58) & + +rxt(k,199)* y(k,123) +rxt(k,201)* y(k,124) +rxt(k,204)* y(k,133) & + +rxt(k,482)* y(k,153) +rxt(k,194)* y(k,202) +rxt(k,198)* y(k,207) & + + (rxt(k,205) +rxt(k,206))* y(k,221) + rxt(k,93) + het_rates(k,58)) & + * y(k,58) + prod(k,229) = (rxt(k,192)*y(k,207) +rxt(k,193)*y(k,137) +rxt(k,209)*y(k,91)) & + *y(k,55) + (rxt(k,95) +rxt(k,202)*y(k,133))*y(k,59) & + + (rxt(k,210)*y(k,133) +rxt(k,211)*y(k,221))*y(k,91) + (rxt(k,107) + & + rxt(k,487)*y(k,153))*y(k,139) +2.000_r8*rxt(k,222)*y(k,57) & + +rxt(k,220)*y(k,220)*y(k,84) + loss(k,185) = (rxt(k,200)* y(k,55) + (rxt(k,540) +rxt(k,545) +rxt(k,550)) & + * y(k,84) +rxt(k,202)* y(k,133) +rxt(k,203)* y(k,221) + rxt(k,94) & + + rxt(k,95) + rxt(k,538) + rxt(k,543) + rxt(k,549) & + + het_rates(k,59))* y(k,59) + prod(k,185) =rxt(k,201)*y(k,124)*y(k,58) + loss(k,4) = ( + het_rates(k,60))* y(k,60) + prod(k,4) = 0._r8 + loss(k,199) = (rxt(k,287)* y(k,221) + het_rates(k,61))* y(k,61) + prod(k,199) = (rxt(k,32) +rxt(k,33) +rxt(k,187)*y(k,55) +rxt(k,223)*y(k,16) + & + rxt(k,268)*y(k,125) +rxt(k,269)*y(k,133) +rxt(k,270)*y(k,221)) & + *y(k,41) + (.630_r8*rxt(k,291)*y(k,24) +.560_r8*rxt(k,320)*y(k,28) + & + .650_r8*rxt(k,350)*y(k,104) +.560_r8*rxt(k,364)*y(k,110) + & + .620_r8*rxt(k,397)*y(k,97) +.230_r8*rxt(k,452)*y(k,5) + & + .230_r8*rxt(k,455)*y(k,109))*y(k,137) & + + (.220_r8*rxt(k,348)*y(k,213) +.250_r8*rxt(k,405)*y(k,229) + & + .170_r8*rxt(k,423)*y(k,203) +.400_r8*rxt(k,426)*y(k,214) + & + .350_r8*rxt(k,429)*y(k,216) +.225_r8*rxt(k,464)*y(k,225))*y(k,123) & + + (.350_r8*rxt(k,289)*y(k,23) +rxt(k,314)*y(k,74) + & + rxt(k,327)*y(k,48) +.700_r8*rxt(k,473)*y(k,182) +rxt(k,477)*y(k,140)) & + *y(k,221) + (rxt(k,326)*y(k,48) +.220_r8*rxt(k,347)*y(k,213) + & + .500_r8*rxt(k,406)*y(k,229))*y(k,125) & + + (.110_r8*rxt(k,345)*y(k,213) +.200_r8*rxt(k,403)*y(k,229) + & + .125_r8*rxt(k,462)*y(k,225))*y(k,202) & + + (.070_r8*rxt(k,422)*y(k,203) +.160_r8*rxt(k,425)*y(k,214) + & + .140_r8*rxt(k,428)*y(k,216))*y(k,207) + (rxt(k,110) + & + rxt(k,476)*y(k,133))*y(k,140) + (.220_r8*rxt(k,344)*y(k,213) + & + .250_r8*rxt(k,402)*y(k,229))*y(k,201) +1.500_r8*rxt(k,22)*y(k,8) & + +.450_r8*rxt(k,23)*y(k,9) +.600_r8*rxt(k,26)*y(k,12) +rxt(k,27) & + *y(k,13) +rxt(k,34)*y(k,44) +rxt(k,255)*y(k,55)*y(k,45) +rxt(k,36) & + *y(k,48) +.380_r8*rxt(k,39)*y(k,53) +rxt(k,41)*y(k,62) +rxt(k,43) & + *y(k,73) +2.000_r8*rxt(k,44)*y(k,74) +.330_r8*rxt(k,45)*y(k,92) & + +1.340_r8*rxt(k,51)*y(k,104) +.700_r8*rxt(k,55)*y(k,110) & + +1.500_r8*rxt(k,64)*y(k,177) +.250_r8*rxt(k,65)*y(k,178) +rxt(k,68) & + *y(k,181) +1.700_r8*rxt(k,69)*y(k,182) + loss(k,189) = ( + rxt(k,41) + het_rates(k,62))* y(k,62) + prod(k,189) = (rxt(k,279)*y(k,86) +rxt(k,287)*y(k,61) +rxt(k,307)*y(k,49) + & + .500_r8*rxt(k,308)*y(k,50) +.800_r8*rxt(k,313)*y(k,73) + & + rxt(k,314)*y(k,74) +.500_r8*rxt(k,363)*y(k,108) + & + 1.800_r8*rxt(k,473)*y(k,182))*y(k,221) & + + (2.000_r8*rxt(k,303)*y(k,201) +.900_r8*rxt(k,304)*y(k,202) + & + .490_r8*rxt(k,305)*y(k,207) +rxt(k,306)*y(k,123) + & + 2.000_r8*rxt(k,353)*y(k,215) +rxt(k,377)*y(k,209) + & + rxt(k,402)*y(k,229))*y(k,201) + (.200_r8*rxt(k,320)*y(k,28) + & + .100_r8*rxt(k,364)*y(k,110) +.270_r8*rxt(k,452)*y(k,5) + & + .270_r8*rxt(k,455)*y(k,109))*y(k,137) + (rxt(k,354)*y(k,202) + & + .450_r8*rxt(k,355)*y(k,207) +2.000_r8*rxt(k,356)*y(k,215))*y(k,215) & + + (.500_r8*rxt(k,462)*y(k,202) +.900_r8*rxt(k,464)*y(k,123)) & + *y(k,225) +rxt(k,37)*y(k,50) +.440_r8*rxt(k,39)*y(k,53) & + +.400_r8*rxt(k,60)*y(k,142) +rxt(k,65)*y(k,178) +.800_r8*rxt(k,69) & + *y(k,182) + loss(k,87) = (rxt(k,248)* y(k,220) + rxt(k,96) + het_rates(k,63))* y(k,63) + prod(k,87) = (rxt(k,213)*y(k,33) +rxt(k,215)*y(k,36) + & + 2.000_r8*rxt(k,216)*y(k,37) +2.000_r8*rxt(k,217)*y(k,38) + & + rxt(k,218)*y(k,39) +rxt(k,239)*y(k,34) +2.000_r8*rxt(k,241)*y(k,77) + & + rxt(k,265)*y(k,82) +rxt(k,266)*y(k,83))*y(k,220) + (rxt(k,101) + & + rxt(k,260)*y(k,221))*y(k,82) + (rxt(k,102) +rxt(k,261)*y(k,221)) & + *y(k,83) +rxt(k,79)*y(k,33) +rxt(k,80)*y(k,34) +rxt(k,82)*y(k,36) & + +2.000_r8*rxt(k,83)*y(k,37) +2.000_r8*rxt(k,84)*y(k,38) +rxt(k,85) & + *y(k,39) +2.000_r8*rxt(k,98)*y(k,77) + loss(k,91) = (rxt(k,249)* y(k,220) + rxt(k,97) + het_rates(k,64))* y(k,64) + prod(k,91) = (rxt(k,100) +rxt(k,259)*y(k,221) +rxt(k,264)*y(k,220))*y(k,81) & + + (rxt(k,81) +rxt(k,214)*y(k,220))*y(k,35) + (rxt(k,82) + & + rxt(k,215)*y(k,220))*y(k,36) + loss(k,79) = (rxt(k,421)* y(k,221) + het_rates(k,65))* y(k,65) + prod(k,79) =.180_r8*rxt(k,441)*y(k,221)*y(k,184) + loss(k,100) = (rxt(k,474)* y(k,125) + (rxt(k,475) +rxt(k,489))* y(k,221) & + + het_rates(k,66))* y(k,66) + prod(k,100) = 0._r8 + loss(k,5) = ( + het_rates(k,67))* y(k,67) + prod(k,5) = 0._r8 + loss(k,6) = ( + het_rates(k,68))* y(k,68) + prod(k,6) = 0._r8 + loss(k,7) = ( + het_rates(k,69))* y(k,69) + prod(k,7) = 0._r8 + loss(k,8) = ( + rxt(k,124) + het_rates(k,70))* y(k,70) + prod(k,8) = 0._r8 + loss(k,63) = ( + rxt(k,42) + het_rates(k,71))* y(k,71) + prod(k,63) =rxt(k,309)*y(k,207)*y(k,206) + loss(k,178) = (rxt(k,244)* y(k,53) +rxt(k,245)* y(k,76) +rxt(k,247)* y(k,88) & + +rxt(k,246)* y(k,233) + het_rates(k,72))* y(k,72) + prod(k,178) = (rxt(k,217)*y(k,38) +rxt(k,239)*y(k,34) + & + 2.000_r8*rxt(k,248)*y(k,63) +rxt(k,249)*y(k,64))*y(k,220) +rxt(k,80) & + *y(k,34) +rxt(k,84)*y(k,38) +2.000_r8*rxt(k,96)*y(k,63) +rxt(k,97) & + *y(k,64) +rxt(k,104)*y(k,87) + loss(k,195) = (rxt(k,313)* y(k,221) + rxt(k,43) + het_rates(k,73))* y(k,73) + prod(k,195) = (.530_r8*rxt(k,348)*y(k,213) +.050_r8*rxt(k,386)*y(k,210) + & + .250_r8*rxt(k,405)*y(k,229) +.225_r8*rxt(k,464)*y(k,225))*y(k,123) & + + (.530_r8*rxt(k,347)*y(k,213) +.050_r8*rxt(k,387)*y(k,210) + & + .250_r8*rxt(k,406)*y(k,229))*y(k,125) & + + (.260_r8*rxt(k,345)*y(k,213) +.100_r8*rxt(k,403)*y(k,229) + & + .125_r8*rxt(k,462)*y(k,225))*y(k,202) + (.700_r8*rxt(k,388)*y(k,98) + & + .500_r8*rxt(k,389)*y(k,99) +rxt(k,400)*y(k,114))*y(k,221) & + + (.530_r8*rxt(k,344)*y(k,213) +.250_r8*rxt(k,402)*y(k,229)) & + *y(k,201) +.330_r8*rxt(k,45)*y(k,92) +rxt(k,312)*y(k,205)*y(k,134) & + +.250_r8*rxt(k,65)*y(k,178) + loss(k,184) = (rxt(k,314)* y(k,221) + rxt(k,44) + rxt(k,530) & + + het_rates(k,74))* y(k,74) + prod(k,184) = (.050_r8*rxt(k,386)*y(k,210) +.250_r8*rxt(k,405)*y(k,229) + & + rxt(k,412)*y(k,195) +.400_r8*rxt(k,426)*y(k,214) + & + .170_r8*rxt(k,429)*y(k,216) +.700_r8*rxt(k,432)*y(k,222) + & + .600_r8*rxt(k,439)*y(k,227) +.340_r8*rxt(k,445)*y(k,230) + & + .170_r8*rxt(k,448)*y(k,232))*y(k,123) + (.650_r8*rxt(k,289)*y(k,23) + & + .200_r8*rxt(k,313)*y(k,73) +rxt(k,401)*y(k,115))*y(k,221) & + + (.250_r8*rxt(k,402)*y(k,201) +.100_r8*rxt(k,403)*y(k,202) + & + .250_r8*rxt(k,406)*y(k,125))*y(k,229) & + + (.160_r8*rxt(k,425)*y(k,214) +.070_r8*rxt(k,428)*y(k,216)) & + *y(k,207) +rxt(k,21)*y(k,7) +.130_r8*rxt(k,23)*y(k,9) & + +.050_r8*rxt(k,387)*y(k,210)*y(k,125) +.700_r8*rxt(k,61)*y(k,146) & + +.600_r8*rxt(k,70)*y(k,183) +.340_r8*rxt(k,72)*y(k,187) & + +.170_r8*rxt(k,73)*y(k,189) + loss(k,224) = (rxt(k,150)* y(k,134) +rxt(k,153)* y(k,137) + (rxt(k,147) + & + rxt(k,148) +rxt(k,149))* y(k,207) + het_rates(k,75))* y(k,75) + prod(k,224) = (rxt(k,154)*y(k,76) +rxt(k,157)*y(k,133) +rxt(k,175)*y(k,111) + & + rxt(k,270)*y(k,41) +rxt(k,477)*y(k,140) +rxt(k,483)*y(k,151) + & + rxt(k,488)*y(k,153))*y(k,221) + (rxt(k,127)*y(k,220) + & + rxt(k,145)*y(k,133) +rxt(k,189)*y(k,55) +rxt(k,245)*y(k,72))*y(k,76) & + + (.330_r8*rxt(k,39) +rxt(k,40) +rxt(k,284)*y(k,220))*y(k,53) & + + (rxt(k,99) +rxt(k,243)*y(k,220))*y(k,80) + (rxt(k,103) + & + rxt(k,220)*y(k,220))*y(k,84) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,233) & + +2.000_r8*rxt(k,33)*y(k,41) +rxt(k,38)*y(k,52) +rxt(k,104)*y(k,87) + loss(k,204) = (rxt(k,189)* y(k,55) +rxt(k,245)* y(k,72) +rxt(k,145)* y(k,133) & + +rxt(k,127)* y(k,220) +rxt(k,154)* y(k,221) + het_rates(k,76)) & + * y(k,76) + prod(k,204) = (1.440_r8*rxt(k,39) +rxt(k,285)*y(k,220))*y(k,53) +rxt(k,32) & + *y(k,41) +rxt(k,147)*y(k,207)*y(k,75) +rxt(k,1)*y(k,233) + loss(k,57) = (rxt(k,241)* y(k,220) + rxt(k,98) + het_rates(k,77))* y(k,77) + prod(k,57) = 0._r8 + loss(k,148) = (rxt(k,190)* y(k,55) +rxt(k,146)* y(k,133) +rxt(k,155) & + * y(k,221) + rxt(k,4) + het_rates(k,78))* y(k,78) + prod(k,148) =rxt(k,161)*y(k,207)*y(k,207) +rxt(k,160)*y(k,221)*y(k,221) + loss(k,64) = ( + rxt(k,109) + het_rates(k,79))* y(k,79) + prod(k,64) =rxt(k,490)*y(k,233)*y(k,155) + loss(k,171) = (rxt(k,236)* y(k,133) + (rxt(k,242) +rxt(k,243))* y(k,220) & + +rxt(k,237)* y(k,221) + rxt(k,99) + het_rates(k,80))* y(k,80) + prod(k,171) = (rxt(k,223)*y(k,41) +rxt(k,224)*y(k,207))*y(k,16) + loss(k,90) = (rxt(k,264)* y(k,220) +rxt(k,259)* y(k,221) + rxt(k,100) & + + het_rates(k,81))* y(k,81) + prod(k,90) = 0._r8 + loss(k,92) = (rxt(k,265)* y(k,220) +rxt(k,260)* y(k,221) + rxt(k,101) & + + het_rates(k,82))* y(k,82) + prod(k,92) = 0._r8 + loss(k,103) = (rxt(k,266)* y(k,220) +rxt(k,261)* y(k,221) + rxt(k,102) & + + het_rates(k,83))* y(k,83) + prod(k,103) = 0._r8 + loss(k,225) = ((rxt(k,540) +rxt(k,545) +rxt(k,550))* y(k,59) + (rxt(k,542) + & + rxt(k,547))* y(k,90) + (rxt(k,535) +rxt(k,541) +rxt(k,546))* y(k,91) & + +rxt(k,207)* y(k,133) + (rxt(k,219) +rxt(k,220))* y(k,220) & + +rxt(k,208)* y(k,221) + rxt(k,103) + het_rates(k,84))* y(k,84) + prod(k,225) = (rxt(k,187)*y(k,41) +rxt(k,188)*y(k,53) +rxt(k,189)*y(k,76) + & + rxt(k,190)*y(k,78) +rxt(k,191)*y(k,207) +rxt(k,209)*y(k,91) + & + rxt(k,250)*y(k,40) +rxt(k,252)*y(k,42) +2.000_r8*rxt(k,255)*y(k,45) + & + rxt(k,257)*y(k,54) +rxt(k,298)*y(k,27))*y(k,55) +rxt(k,206)*y(k,221) & + *y(k,58) + loss(k,77) = (rxt(k,286)* y(k,220) +rxt(k,278)* y(k,221) + het_rates(k,85)) & + * y(k,85) + prod(k,77) = 0._r8 + loss(k,176) = (rxt(k,279)* y(k,221) + het_rates(k,86))* y(k,86) + prod(k,176) = (.370_r8*rxt(k,291)*y(k,24) +.120_r8*rxt(k,320)*y(k,28) + & + .330_r8*rxt(k,350)*y(k,104) +.120_r8*rxt(k,364)*y(k,110) + & + .110_r8*rxt(k,397)*y(k,97) +.050_r8*rxt(k,452)*y(k,5) + & + .050_r8*rxt(k,455)*y(k,109))*y(k,137) + (rxt(k,280)*y(k,207) + & + rxt(k,282)*y(k,123))*y(k,208) +.350_r8*rxt(k,289)*y(k,221)*y(k,23) + loss(k,99) = ( + rxt(k,104) + het_rates(k,87))* y(k,87) + prod(k,99) = (rxt(k,244)*y(k,53) +rxt(k,245)*y(k,76) +rxt(k,246)*y(k,233) + & + rxt(k,247)*y(k,88))*y(k,72) + loss(k,214) = (rxt(k,247)* y(k,72) +rxt(k,184)* y(k,221) + rxt(k,9) & + + het_rates(k,88))* y(k,88) + prod(k,214) = (rxt(k,538) +rxt(k,543) +rxt(k,549) +rxt(k,540)*y(k,84) + & + rxt(k,545)*y(k,84) +rxt(k,550)*y(k,84))*y(k,59) + (rxt(k,501) + & + rxt(k,268)*y(k,41) +rxt(k,300)*y(k,44) +rxt(k,326)*y(k,48) + & + rxt(k,474)*y(k,66))*y(k,125) + (2.000_r8*rxt(k,496) + & + 2.000_r8*rxt(k,534) +2.000_r8*rxt(k,537) +2.000_r8*rxt(k,548)) & + *y(k,113) + (rxt(k,536) +rxt(k,539) +rxt(k,544))*y(k,19) & + + (.500_r8*rxt(k,500) +rxt(k,183)*y(k,221))*y(k,124) +rxt(k,493) & + *y(k,92) +rxt(k,494)*y(k,98) +rxt(k,495)*y(k,99) +rxt(k,497)*y(k,114) & + +rxt(k,498)*y(k,115) +rxt(k,502)*y(k,127) +rxt(k,503)*y(k,141) & + +rxt(k,504)*y(k,179) + loss(k,131) = (rxt(k,162)* y(k,221) + rxt(k,10) + rxt(k,11) + rxt(k,185) & + + het_rates(k,89))* y(k,89) + prod(k,131) =rxt(k,181)*y(k,207)*y(k,124) + loss(k,166) = ((rxt(k,542) +rxt(k,547))* y(k,84) +rxt(k,238)* y(k,133) & + + rxt(k,105) + het_rates(k,90))* y(k,90) + prod(k,166) = (rxt(k,536) +rxt(k,539) +rxt(k,544))*y(k,19) & + +rxt(k,230)*y(k,207)*y(k,18) + loss(k,172) = (rxt(k,209)* y(k,55) + (rxt(k,535) +rxt(k,541) +rxt(k,546)) & + * y(k,84) +rxt(k,210)* y(k,133) +rxt(k,211)* y(k,221) + rxt(k,106) & + + het_rates(k,91))* y(k,91) + prod(k,172) = (rxt(k,538) +rxt(k,543) +rxt(k,549) +rxt(k,203)*y(k,221)) & + *y(k,59) +rxt(k,198)*y(k,207)*y(k,58) + loss(k,192) = (rxt(k,343)* y(k,221) + rxt(k,45) + rxt(k,493) & + + het_rates(k,92))* y(k,92) + prod(k,192) = (rxt(k,342)*y(k,204) +rxt(k,349)*y(k,213))*y(k,123) & + + (.300_r8*rxt(k,388)*y(k,98) +.500_r8*rxt(k,389)*y(k,99))*y(k,221) + loss(k,84) = (rxt(k,374)* y(k,221) + rxt(k,46) + het_rates(k,93))* y(k,93) + prod(k,84) =rxt(k,385)*y(k,210) + loss(k,193) = (rxt(k,328)* y(k,221) + rxt(k,47) + het_rates(k,94))* y(k,94) + prod(k,193) = (.220_r8*rxt(k,344)*y(k,201) +.230_r8*rxt(k,345)*y(k,202) + & + .220_r8*rxt(k,347)*y(k,125) +.220_r8*rxt(k,348)*y(k,123))*y(k,213) & + + (.500_r8*rxt(k,332)*y(k,149) +.500_r8*rxt(k,363)*y(k,108) + & + .700_r8*rxt(k,388)*y(k,98) +.500_r8*rxt(k,389)*y(k,99))*y(k,221) & + + (.250_r8*rxt(k,402)*y(k,201) +.100_r8*rxt(k,403)*y(k,202) + & + .250_r8*rxt(k,405)*y(k,123) +.250_r8*rxt(k,406)*y(k,125))*y(k,229) & + + (.050_r8*rxt(k,386)*y(k,123) +.050_r8*rxt(k,387)*y(k,125)) & + *y(k,210) +.170_r8*rxt(k,45)*y(k,92) +.200_r8*rxt(k,333)*y(k,224) & + *y(k,202) + loss(k,110) = (rxt(k,375)* y(k,221) + het_rates(k,95))* y(k,95) + prod(k,110) = (rxt(k,382)*y(k,201) +.750_r8*rxt(k,383)*y(k,202) + & + .870_r8*rxt(k,386)*y(k,123) +.950_r8*rxt(k,387)*y(k,125))*y(k,210) + loss(k,65) = (rxt(k,376)* y(k,221) + het_rates(k,96))* y(k,96) + prod(k,65) =.600_r8*rxt(k,399)*y(k,221)*y(k,102) + loss(k,173) = (rxt(k,390)* y(k,125) +rxt(k,397)* y(k,137) +rxt(k,398) & + * y(k,221) + het_rates(k,97))* y(k,97) + prod(k,173) = 0._r8 + loss(k,145) = (rxt(k,388)* y(k,221) + rxt(k,494) + het_rates(k,98))* y(k,98) + prod(k,145) =.080_r8*rxt(k,380)*y(k,209)*y(k,123) + loss(k,143) = (rxt(k,389)* y(k,221) + rxt(k,495) + het_rates(k,99))* y(k,99) + prod(k,143) =.080_r8*rxt(k,386)*y(k,210)*y(k,123) + loss(k,201) = (rxt(k,394)* y(k,123) +rxt(k,395)* y(k,125) +rxt(k,391) & + * y(k,201) +rxt(k,392)* y(k,202) +rxt(k,393)* y(k,207) & + + het_rates(k,100))* y(k,100) + prod(k,201) =rxt(k,390)*y(k,125)*y(k,97) + loss(k,119) = (rxt(k,396)* y(k,221) + rxt(k,48) + het_rates(k,101))* y(k,101) + prod(k,119) =rxt(k,393)*y(k,207)*y(k,100) + loss(k,159) = (rxt(k,399)* y(k,221) + rxt(k,49) + het_rates(k,102))* y(k,102) + prod(k,159) = (rxt(k,379)*y(k,209) +rxt(k,384)*y(k,210))*y(k,207) +rxt(k,48) & + *y(k,101) + loss(k,49) = (rxt(k,520)* y(k,221) + het_rates(k,103))* y(k,103) + prod(k,49) = 0._r8 + loss(k,202) = (rxt(k,350)* y(k,137) +rxt(k,351)* y(k,221) + rxt(k,50) & + + rxt(k,51) + het_rates(k,104))* y(k,104) + prod(k,202) = (.390_r8*rxt(k,377)*y(k,201) +.310_r8*rxt(k,378)*y(k,202) + & + .360_r8*rxt(k,380)*y(k,123) +.400_r8*rxt(k,381)*y(k,125))*y(k,209) & + +.300_r8*rxt(k,397)*y(k,137)*y(k,97) +.300_r8*rxt(k,49)*y(k,102) + loss(k,104) = (rxt(k,352)* y(k,221) + het_rates(k,105))* y(k,105) + prod(k,104) =rxt(k,346)*y(k,213)*y(k,207) + loss(k,136) = (rxt(k,361)* y(k,221) + rxt(k,52) + het_rates(k,106))* y(k,106) + prod(k,136) =.800_r8*rxt(k,19)*y(k,1) +.800_r8*rxt(k,20)*y(k,2) & + +.800_r8*rxt(k,370)*y(k,193)*y(k,123) + loss(k,105) = (rxt(k,362)* y(k,221) + rxt(k,53) + het_rates(k,107))* y(k,107) + prod(k,105) =.800_r8*rxt(k,359)*y(k,217)*y(k,207) + loss(k,144) = (rxt(k,363)* y(k,221) + rxt(k,54) + rxt(k,367) & + + het_rates(k,108))* y(k,108) + prod(k,144) =rxt(k,366)*y(k,215)*y(k,124) + loss(k,180) = (rxt(k,454)* y(k,125) +rxt(k,455)* y(k,137) +rxt(k,456) & + * y(k,221) + het_rates(k,109))* y(k,109) + prod(k,180) = 0._r8 + loss(k,208) = (rxt(k,364)* y(k,137) +rxt(k,365)* y(k,221) + rxt(k,55) & + + het_rates(k,110))* y(k,110) + prod(k,208) = (.610_r8*rxt(k,377)*y(k,201) +.440_r8*rxt(k,378)*y(k,202) + & + .560_r8*rxt(k,380)*y(k,123) +.600_r8*rxt(k,381)*y(k,125))*y(k,209) & + +.200_r8*rxt(k,397)*y(k,137)*y(k,97) +.700_r8*rxt(k,49)*y(k,102) + loss(k,157) = (rxt(k,163)* y(k,123) + (rxt(k,164) +rxt(k,165) +rxt(k,166)) & + * y(k,124) +rxt(k,167)* y(k,134) +rxt(k,175)* y(k,221) & + + het_rates(k,111))* y(k,111) + prod(k,157) =rxt(k,15)*y(k,123) + loss(k,93) = ((rxt(k,179) +rxt(k,180))* y(k,220) + rxt(k,12) & + + het_rates(k,112))* y(k,112) + prod(k,93) =rxt(k,164)*y(k,124)*y(k,111) + loss(k,97) = ( + rxt(k,13) + rxt(k,14) + rxt(k,186) + rxt(k,496) + rxt(k,534) & + + rxt(k,537) + rxt(k,548) + het_rates(k,113))* y(k,113) + prod(k,97) =rxt(k,182)*y(k,125)*y(k,124) + loss(k,123) = (rxt(k,400)* y(k,221) + rxt(k,497) + het_rates(k,114)) & + * y(k,114) + prod(k,123) =.200_r8*rxt(k,392)*y(k,202)*y(k,100) + loss(k,187) = (rxt(k,401)* y(k,221) + rxt(k,56) + rxt(k,498) & + + het_rates(k,115))* y(k,115) + prod(k,187) = (rxt(k,391)*y(k,201) +.800_r8*rxt(k,392)*y(k,202) + & + rxt(k,394)*y(k,123) +rxt(k,395)*y(k,125))*y(k,100) + loss(k,9) = ( + het_rates(k,116))* y(k,116) + prod(k,9) = 0._r8 + loss(k,10) = ( + het_rates(k,117))* y(k,117) + prod(k,10) = 0._r8 + loss(k,11) = ( + het_rates(k,118))* y(k,118) + prod(k,11) = 0._r8 + loss(k,54) = (rxt(k,491)* y(k,221) + het_rates(k,119))* y(k,119) + prod(k,54) = 0._r8 + loss(k,12) = ( + rxt(k,499) + het_rates(k,120))* y(k,120) + prod(k,12) = 0._r8 + loss(k,13) = ( + rxt(k,552) + het_rates(k,121))* y(k,121) + prod(k,13) = 0._r8 + loss(k,14) = ( + rxt(k,551) + het_rates(k,122))* y(k,122) + prod(k,14) = 0._r8 + loss(k,230) = (rxt(k,231)* y(k,18) +rxt(k,199)* y(k,58) +rxt(k,394)* y(k,100) & + +rxt(k,163)* y(k,111) +rxt(k,172)* y(k,125) +rxt(k,178)* y(k,133) & + +rxt(k,177)* y(k,137) +rxt(k,409)* y(k,192) + (rxt(k,370) + & + rxt(k,371))* y(k,193) +rxt(k,412)* y(k,195) +rxt(k,417)* y(k,197) & + +rxt(k,295)* y(k,198) +rxt(k,323)* y(k,199) +rxt(k,419)* y(k,200) & + +rxt(k,306)* y(k,201) +rxt(k,274)* y(k,202) +rxt(k,423)* y(k,203) & + + (rxt(k,341) +rxt(k,342))* y(k,204) +rxt(k,310)* y(k,206) & + +rxt(k,176)* y(k,207) +rxt(k,282)* y(k,208) +rxt(k,380)* y(k,209) & + +rxt(k,386)* y(k,210) + (rxt(k,348) +rxt(k,349))* y(k,213) & + +rxt(k,426)* y(k,214) +rxt(k,357)* y(k,215) +rxt(k,429)* y(k,216) & + +rxt(k,360)* y(k,217) +rxt(k,459)* y(k,219) +rxt(k,432)* y(k,222) & + +rxt(k,331)* y(k,223) +rxt(k,335)* y(k,224) +rxt(k,464)* y(k,225) & + +rxt(k,469)* y(k,226) +rxt(k,439)* y(k,227) +rxt(k,405)* y(k,229) & + +rxt(k,445)* y(k,230) +rxt(k,448)* y(k,232) + rxt(k,15) & + + het_rates(k,123))* y(k,123) + prod(k,230) = (rxt(k,16) +.500_r8*rxt(k,500) +2.000_r8*rxt(k,165)*y(k,111) + & + rxt(k,168)*y(k,133) +rxt(k,484)*y(k,153))*y(k,124) & + + (rxt(k,167)*y(k,134) +rxt(k,175)*y(k,221))*y(k,111) & + +2.000_r8*rxt(k,179)*y(k,220)*y(k,112) +rxt(k,14)*y(k,113) & + +rxt(k,17)*y(k,125) + loss(k,217) = (rxt(k,232)* y(k,18) +rxt(k,201)* y(k,58) + (rxt(k,164) + & + rxt(k,165) +rxt(k,166))* y(k,111) +rxt(k,182)* y(k,125) & + + (rxt(k,168) +rxt(k,170))* y(k,133) +rxt(k,169)* y(k,137) & + +rxt(k,434)* y(k,144) +rxt(k,484)* y(k,153) +rxt(k,437)* y(k,192) & + +rxt(k,317)* y(k,201) +rxt(k,424)* y(k,203) +rxt(k,181)* y(k,207) & + +rxt(k,427)* y(k,214) +rxt(k,366)* y(k,215) +rxt(k,430)* y(k,216) & + +rxt(k,183)* y(k,221) + rxt(k,16) + rxt(k,500) + het_rates(k,124)) & + * y(k,124) + prod(k,217) = (2.000_r8*rxt(k,172)*y(k,125) +rxt(k,176)*y(k,207) + & + rxt(k,177)*y(k,137) +rxt(k,178)*y(k,133) +rxt(k,199)*y(k,58) + & + rxt(k,231)*y(k,18) +rxt(k,274)*y(k,202) +rxt(k,282)*y(k,208) + & + rxt(k,295)*y(k,198) +rxt(k,306)*y(k,201) +rxt(k,310)*y(k,206) + & + rxt(k,323)*y(k,199) +rxt(k,331)*y(k,223) +rxt(k,335)*y(k,224) + & + rxt(k,341)*y(k,204) +rxt(k,348)*y(k,213) +rxt(k,357)*y(k,215) + & + rxt(k,360)*y(k,217) +rxt(k,370)*y(k,193) + & + .920_r8*rxt(k,380)*y(k,209) +.920_r8*rxt(k,386)*y(k,210) + & + rxt(k,394)*y(k,100) +rxt(k,405)*y(k,229) +rxt(k,409)*y(k,192) + & + rxt(k,412)*y(k,195) +rxt(k,417)*y(k,197) +rxt(k,419)*y(k,200) + & + rxt(k,423)*y(k,203) +rxt(k,426)*y(k,214) +rxt(k,429)*y(k,216) + & + rxt(k,432)*y(k,222) +rxt(k,439)*y(k,227) +rxt(k,445)*y(k,230) + & + rxt(k,448)*y(k,232) +1.600_r8*rxt(k,459)*y(k,219) + & + .900_r8*rxt(k,464)*y(k,225) +.800_r8*rxt(k,469)*y(k,226))*y(k,123) & + + (rxt(k,18) +rxt(k,171)*y(k,207) +rxt(k,173)*y(k,133) + & + rxt(k,174)*y(k,221) +rxt(k,339)*y(k,15) +rxt(k,347)*y(k,213) + & + rxt(k,358)*y(k,215) +rxt(k,381)*y(k,209) +rxt(k,387)*y(k,210) + & + rxt(k,395)*y(k,100) +rxt(k,406)*y(k,229) + & + 2.000_r8*rxt(k,460)*y(k,219))*y(k,125) + (rxt(k,162)*y(k,89) + & + rxt(k,329)*y(k,126) +rxt(k,368)*y(k,1) +.700_r8*rxt(k,388)*y(k,98) + & + rxt(k,466)*y(k,179))*y(k,221) + (rxt(k,11) +rxt(k,185))*y(k,89) & + + (rxt(k,54) +rxt(k,367))*y(k,108) + (rxt(k,13) +rxt(k,186)) & + *y(k,113) + (.600_r8*rxt(k,60) +rxt(k,318))*y(k,142) +rxt(k,19) & + *y(k,1) +rxt(k,76)*y(k,19) +rxt(k,95)*y(k,59) +rxt(k,9)*y(k,88) & + +rxt(k,45)*y(k,92) +rxt(k,48)*y(k,101) +rxt(k,56)*y(k,115) & + +rxt(k,57)*y(k,126) +rxt(k,58)*y(k,127) +rxt(k,59)*y(k,141) & + +rxt(k,442)*y(k,143) +rxt(k,66)*y(k,179) & + +.500_r8*rxt(k,457)*y(k,219)*y(k,202) + loss(k,226) = (rxt(k,451)* y(k,5) +rxt(k,339)* y(k,15) +rxt(k,319)* y(k,28) & + +rxt(k,268)* y(k,41) +rxt(k,300)* y(k,44) +rxt(k,326)* y(k,48) & + +rxt(k,474)* y(k,66) +rxt(k,390)* y(k,97) +rxt(k,395)* y(k,100) & + +rxt(k,454)* y(k,109) +rxt(k,172)* y(k,123) +rxt(k,182)* y(k,124) & + +rxt(k,173)* y(k,133) +rxt(k,471)* y(k,181) +rxt(k,171)* y(k,207) & + +rxt(k,381)* y(k,209) +rxt(k,387)* y(k,210) +rxt(k,347)* y(k,213) & + +rxt(k,358)* y(k,215) +rxt(k,460)* y(k,219) +rxt(k,174)* y(k,221) & + +rxt(k,406)* y(k,229) + rxt(k,17) + rxt(k,18) + rxt(k,501) & + + het_rates(k,125))* y(k,125) + prod(k,226) = (rxt(k,94) +rxt(k,200)*y(k,55) +rxt(k,202)*y(k,133) + & + rxt(k,203)*y(k,221))*y(k,59) + (rxt(k,13) +rxt(k,14) +rxt(k,186)) & + *y(k,113) + (rxt(k,184)*y(k,88) +rxt(k,315)*y(k,142) + & + .500_r8*rxt(k,363)*y(k,108))*y(k,221) + (rxt(k,77) + & + rxt(k,233)*y(k,133))*y(k,19) + (rxt(k,169)*y(k,137) + & + rxt(k,170)*y(k,133))*y(k,124) +rxt(k,247)*y(k,88)*y(k,72) +rxt(k,10) & + *y(k,89) +.400_r8*rxt(k,60)*y(k,142) + loss(k,174) = (rxt(k,329)* y(k,221) + rxt(k,57) + het_rates(k,126))* y(k,126) + prod(k,174) = (.500_r8*rxt(k,389)*y(k,99) +rxt(k,396)*y(k,101) + & + rxt(k,400)*y(k,114) +rxt(k,401)*y(k,115))*y(k,221) & + +rxt(k,319)*y(k,125)*y(k,28) + loss(k,117) = (rxt(k,461)* y(k,221) + rxt(k,58) + rxt(k,502) & + + het_rates(k,127))* y(k,127) + prod(k,117) =rxt(k,458)*y(k,219)*y(k,207) + loss(k,15) = ( + het_rates(k,128))* y(k,128) + prod(k,15) = 0._r8 + loss(k,16) = ( + het_rates(k,129))* y(k,129) + prod(k,16) = 0._r8 + loss(k,17) = ( + het_rates(k,130))* y(k,130) + prod(k,17) = 0._r8 + loss(k,18) = ( + het_rates(k,131))* y(k,131) + prod(k,18) = 0._r8 + loss(k,19) = ( + het_rates(k,132))* y(k,132) + prod(k,19) = 0._r8 + loss(k,223) = (rxt(k,234)* y(k,18) +rxt(k,233)* y(k,19) +rxt(k,269)* y(k,41) & + +rxt(k,204)* y(k,58) +rxt(k,202)* y(k,59) +rxt(k,145)* y(k,76) & + +rxt(k,146)* y(k,78) +rxt(k,236)* y(k,80) +rxt(k,207)* y(k,84) & + +rxt(k,238)* y(k,90) +rxt(k,210)* y(k,91) +rxt(k,178)* y(k,123) & + + (rxt(k,168) +rxt(k,170))* y(k,124) +rxt(k,173)* y(k,125) & + + 2._r8*rxt(k,143)* y(k,133) +rxt(k,144)* y(k,134) +rxt(k,142) & + * y(k,137) +rxt(k,476)* y(k,140) +rxt(k,151)* y(k,207) +rxt(k,157) & + * y(k,221) + het_rates(k,133))* y(k,133) + prod(k,223) = (rxt(k,5) +2.000_r8*rxt(k,6) +rxt(k,130)*y(k,220) + & + rxt(k,131)*y(k,220) +rxt(k,167)*y(k,111) +rxt(k,478)*y(k,151) + & + rxt(k,485)*y(k,153))*y(k,134) + (rxt(k,163)*y(k,123) + & + rxt(k,164)*y(k,124))*y(k,111) + (rxt(k,8) + & + 2.000_r8*rxt(k,133)*y(k,220))*y(k,137) +rxt(k,75)*y(k,18) & + +.180_r8*rxt(k,39)*y(k,53) +rxt(k,93)*y(k,58) +rxt(k,41)*y(k,62) & + +rxt(k,149)*y(k,207)*y(k,75) +rxt(k,14)*y(k,113) +rxt(k,15)*y(k,123) & + +rxt(k,16)*y(k,124) +rxt(k,18)*y(k,125) +rxt(k,107)*y(k,139) & + +rxt(k,111)*y(k,153) +rxt(k,112)*y(k,154) +rxt(k,113)*y(k,155) & + +rxt(k,129)*y(k,220) +rxt(k,159)*y(k,221)*y(k,221) +rxt(k,3) & + *y(k,233) + loss(k,215) = (rxt(k,150)* y(k,75) +rxt(k,167)* y(k,111) +rxt(k,144) & + * y(k,133) +rxt(k,136)* y(k,135) +rxt(k,478)* y(k,151) +rxt(k,485) & + * y(k,153) +rxt(k,312)* y(k,205) +rxt(k,130)* y(k,220) + rxt(k,5) & + + rxt(k,6) + het_rates(k,134))* y(k,134) + prod(k,215) = (rxt(k,147)*y(k,75) +rxt(k,151)*y(k,133) + & + 2.000_r8*rxt(k,152)*y(k,137) +rxt(k,156)*y(k,221) + & + rxt(k,161)*y(k,207) +rxt(k,171)*y(k,125) +rxt(k,191)*y(k,55) + & + rxt(k,198)*y(k,58) +rxt(k,224)*y(k,16) +rxt(k,230)*y(k,18) + & + rxt(k,273)*y(k,202) +rxt(k,294)*y(k,198) +rxt(k,322)*y(k,199) + & + rxt(k,330)*y(k,223))*y(k,207) + (rxt(k,8) + & + 2.000_r8*rxt(k,132)*y(k,220) +rxt(k,133)*y(k,220) + & + 2.000_r8*rxt(k,142)*y(k,133) +rxt(k,153)*y(k,75) + & + rxt(k,158)*y(k,221) +rxt(k,169)*y(k,124) +rxt(k,177)*y(k,123) + & + rxt(k,193)*y(k,55) +rxt(k,225)*y(k,16) +rxt(k,480)*y(k,151) + & + rxt(k,486)*y(k,153))*y(k,137) + (rxt(k,135)*y(k,135) + & + rxt(k,143)*y(k,133) +rxt(k,157)*y(k,221) +rxt(k,168)*y(k,124) + & + rxt(k,173)*y(k,125) +rxt(k,204)*y(k,58) +rxt(k,234)*y(k,18))*y(k,133) & + + (rxt(k,195)*y(k,58) +rxt(k,196)*y(k,58) +rxt(k,206)*y(k,221) + & + rxt(k,228)*y(k,18) +rxt(k,229)*y(k,18))*y(k,58) + (rxt(k,125) + & + rxt(k,134) +2.000_r8*rxt(k,136)*y(k,134))*y(k,135) & + +rxt(k,226)*y(k,18)*y(k,18) +rxt(k,162)*y(k,221)*y(k,89) & + +rxt(k,166)*y(k,124)*y(k,111) +rxt(k,180)*y(k,220)*y(k,112) & + +rxt(k,17)*y(k,125) +rxt(k,126)*y(k,136) + loss(k,71) = (rxt(k,135)* y(k,133) +rxt(k,136)* y(k,134) + rxt(k,125) & + + rxt(k,134) + het_rates(k,135))* y(k,135) + prod(k,71) = (rxt(k,138) +rxt(k,137)*y(k,62) +rxt(k,139)*y(k,133) + & + rxt(k,140)*y(k,134) +rxt(k,141)*y(k,137))*y(k,136) +rxt(k,7)*y(k,137) + loss(k,72) = (rxt(k,137)* y(k,62) +rxt(k,139)* y(k,133) +rxt(k,140)* y(k,134) & + +rxt(k,141)* y(k,137) + rxt(k,126) + rxt(k,138) + het_rates(k,136)) & + * y(k,136) + prod(k,72) =rxt(k,130)*y(k,220)*y(k,134) + loss(k,222) = (rxt(k,452)* y(k,5) +rxt(k,225)* y(k,16) +rxt(k,291)* y(k,24) & + +rxt(k,320)* y(k,28) +rxt(k,193)* y(k,55) +rxt(k,153)* y(k,75) & + +rxt(k,397)* y(k,97) +rxt(k,350)* y(k,104) +rxt(k,455)* y(k,109) & + +rxt(k,364)* y(k,110) +rxt(k,177)* y(k,123) +rxt(k,169)* y(k,124) & + +rxt(k,142)* y(k,133) +rxt(k,435)* y(k,144) +rxt(k,480)* y(k,151) & + +rxt(k,486)* y(k,153) +rxt(k,152)* y(k,207) + (rxt(k,132) + & + rxt(k,133))* y(k,220) +rxt(k,158)* y(k,221) + rxt(k,7) + rxt(k,8) & + + het_rates(k,137))* y(k,137) + prod(k,222) = (.150_r8*rxt(k,305)*y(k,201) +.150_r8*rxt(k,355)*y(k,215)) & + *y(k,207) +rxt(k,144)*y(k,134)*y(k,133) + loss(k,20) = ( + het_rates(k,138))* y(k,138) + prod(k,20) = 0._r8 + loss(k,107) = (rxt(k,487)* y(k,153) + rxt(k,107) + het_rates(k,139)) & + * y(k,139) + prod(k,107) = (rxt(k,197)*y(k,58) +rxt(k,227)*y(k,18))*y(k,58) + loss(k,113) = (rxt(k,476)* y(k,133) +rxt(k,477)* y(k,221) + rxt(k,110) & + + het_rates(k,140))* y(k,140) + prod(k,113) = 0._r8 + loss(k,88) = ( + rxt(k,59) + rxt(k,503) + het_rates(k,141))* y(k,141) + prod(k,88) =rxt(k,343)*y(k,221)*y(k,92) +.100_r8*rxt(k,464)*y(k,225)*y(k,123) + loss(k,138) = (rxt(k,315)* y(k,221) + rxt(k,60) + rxt(k,318) & + + het_rates(k,142))* y(k,142) + prod(k,138) =rxt(k,317)*y(k,201)*y(k,124) + loss(k,66) = ( + rxt(k,442) + het_rates(k,143))* y(k,143) + prod(k,66) =rxt(k,437)*y(k,192)*y(k,124) + loss(k,130) = (rxt(k,434)* y(k,124) +rxt(k,435)* y(k,137) + het_rates(k,144)) & + * y(k,144) + prod(k,130) = (.070_r8*rxt(k,421)*y(k,65) +.060_r8*rxt(k,433)*y(k,145) + & + .070_r8*rxt(k,449)*y(k,188))*y(k,221) +rxt(k,31)*y(k,31) & + +rxt(k,419)*y(k,200)*y(k,123) + loss(k,75) = (rxt(k,433)* y(k,221) + het_rates(k,145))* y(k,145) + prod(k,75) =.530_r8*rxt(k,410)*y(k,221)*y(k,6) + loss(k,108) = (rxt(k,436)* y(k,221) + rxt(k,61) + het_rates(k,146))* y(k,146) + prod(k,108) =rxt(k,431)*y(k,222)*y(k,207) + loss(k,21) = ( + het_rates(k,147))* y(k,147) + prod(k,21) = 0._r8 + loss(k,22) = ( + het_rates(k,148))* y(k,148) + prod(k,22) = 0._r8 + loss(k,139) = (rxt(k,332)* y(k,221) + rxt(k,62) + het_rates(k,149))* y(k,149) + prod(k,139) =rxt(k,330)*y(k,223)*y(k,207) + loss(k,118) = (rxt(k,336)* y(k,221) + rxt(k,63) + het_rates(k,150))* y(k,150) + prod(k,118) =.850_r8*rxt(k,334)*y(k,224)*y(k,207) + loss(k,161) = (rxt(k,478)* y(k,134) +rxt(k,480)* y(k,137) +rxt(k,483) & + * y(k,221) + het_rates(k,151))* y(k,151) + prod(k,161) =rxt(k,110)*y(k,140) +rxt(k,111)*y(k,153) + loss(k,23) = ( + rxt(k,108) + het_rates(k,152))* y(k,152) + prod(k,23) = 0._r8 + loss(k,211) = (rxt(k,481)* y(k,18) +rxt(k,482)* y(k,58) +rxt(k,484)* y(k,124) & + +rxt(k,485)* y(k,134) +rxt(k,486)* y(k,137) +rxt(k,487)* y(k,139) & + +rxt(k,488)* y(k,221) + rxt(k,111) + het_rates(k,153))* y(k,153) + prod(k,211) = (rxt(k,478)*y(k,134) +rxt(k,480)*y(k,137) +rxt(k,483)*y(k,221)) & + *y(k,151) +rxt(k,476)*y(k,140)*y(k,133) +rxt(k,112)*y(k,154) + loss(k,179) = (rxt(k,479)* y(k,221) + rxt(k,112) + het_rates(k,154)) & + * y(k,154) + prod(k,179) = (rxt(k,481)*y(k,18) +rxt(k,482)*y(k,58) +rxt(k,484)*y(k,124) + & + rxt(k,485)*y(k,134) +rxt(k,486)*y(k,137) +rxt(k,487)*y(k,139) + & + rxt(k,488)*y(k,221))*y(k,153) + (rxt(k,474)*y(k,125) + & + rxt(k,475)*y(k,221) +.500_r8*rxt(k,489)*y(k,221))*y(k,66) & + +rxt(k,477)*y(k,221)*y(k,140) +rxt(k,113)*y(k,155) + loss(k,94) = (rxt(k,490)* y(k,233) + rxt(k,113) + het_rates(k,155))* y(k,155) + prod(k,94) =rxt(k,109)*y(k,79) +rxt(k,479)*y(k,221)*y(k,154) + loss(k,24) = ( + het_rates(k,156))* y(k,156) + prod(k,24) = 0._r8 + loss(k,25) = ( + het_rates(k,157))* y(k,157) + prod(k,25) = 0._r8 + loss(k,26) = ( + het_rates(k,158))* y(k,158) + prod(k,26) = 0._r8 + loss(k,27) = ( + het_rates(k,159))* y(k,159) + prod(k,27) = 0._r8 + loss(k,28) = ( + rxt(k,114) + het_rates(k,160))* y(k,160) + prod(k,28) = 0._r8 + loss(k,29) = ( + rxt(k,115) + het_rates(k,161))* y(k,161) + prod(k,29) = 0._r8 + loss(k,30) = ( + rxt(k,116) + het_rates(k,162))* y(k,162) + prod(k,30) = 0._r8 + loss(k,31) = ( + rxt(k,117) + het_rates(k,163))* y(k,163) + prod(k,31) = 0._r8 + loss(k,32) = ( + rxt(k,118) + het_rates(k,164))* y(k,164) + prod(k,32) = 0._r8 + loss(k,33) = ( + rxt(k,119) + het_rates(k,165))* y(k,165) + prod(k,33) = 0._r8 + loss(k,34) = ( + rxt(k,120) + het_rates(k,166))* y(k,166) + prod(k,34) = 0._r8 + loss(k,35) = ( + rxt(k,121) + het_rates(k,167))* y(k,167) + prod(k,35) = 0._r8 + loss(k,36) = ( + rxt(k,122) + het_rates(k,168))* y(k,168) + prod(k,36) = 0._r8 + loss(k,37) = ( + rxt(k,123) + het_rates(k,169))* y(k,169) + prod(k,37) = 0._r8 + loss(k,38) = ( + het_rates(k,170))* y(k,170) + prod(k,38) = (.1279005_r8*rxt(k,507)*y(k,194) + & + .0097005_r8*rxt(k,512)*y(k,196) +.0003005_r8*rxt(k,515)*y(k,211) + & + .1056005_r8*rxt(k,519)*y(k,212) +.0245005_r8*rxt(k,523)*y(k,218) + & + .0154005_r8*rxt(k,529)*y(k,228) +.0063005_r8*rxt(k,533)*y(k,231)) & + *y(k,123) + (.2202005_r8*rxt(k,506)*y(k,194) + & + .0023005_r8*rxt(k,511)*y(k,196) +.0031005_r8*rxt(k,514)*y(k,211) + & + .2381005_r8*rxt(k,518)*y(k,212) +.0508005_r8*rxt(k,522)*y(k,218) + & + .1364005_r8*rxt(k,528)*y(k,228) +.1677005_r8*rxt(k,532)*y(k,231)) & + *y(k,207) + (.2202005_r8*rxt(k,508)*y(k,5) + & + .0508005_r8*rxt(k,524)*y(k,109))*y(k,137) +rxt(k,530)*y(k,74) & + +.5931005_r8*rxt(k,526)*y(k,221)*y(k,176) + loss(k,39) = ( + het_rates(k,171))* y(k,171) + prod(k,39) = (.1792005_r8*rxt(k,507)*y(k,194) + & + .0034005_r8*rxt(k,512)*y(k,196) +.0003005_r8*rxt(k,515)*y(k,211) + & + .1026005_r8*rxt(k,519)*y(k,212) +.0082005_r8*rxt(k,523)*y(k,218) + & + .0452005_r8*rxt(k,529)*y(k,228) +.0237005_r8*rxt(k,533)*y(k,231)) & + *y(k,123) + (.2067005_r8*rxt(k,506)*y(k,194) + & + .0008005_r8*rxt(k,511)*y(k,196) +.0035005_r8*rxt(k,514)*y(k,211) + & + .1308005_r8*rxt(k,518)*y(k,212) +.1149005_r8*rxt(k,522)*y(k,218) + & + .0101005_r8*rxt(k,528)*y(k,228) +.0174005_r8*rxt(k,532)*y(k,231)) & + *y(k,207) + (.2067005_r8*rxt(k,508)*y(k,5) + & + .1149005_r8*rxt(k,524)*y(k,109))*y(k,137) & + +.1534005_r8*rxt(k,526)*y(k,221)*y(k,176) + loss(k,40) = ( + het_rates(k,172))* y(k,172) + prod(k,40) = (.0676005_r8*rxt(k,507)*y(k,194) + & + .1579005_r8*rxt(k,512)*y(k,196) +.0073005_r8*rxt(k,515)*y(k,211) + & + .0521005_r8*rxt(k,519)*y(k,212) +.0772005_r8*rxt(k,523)*y(k,218) + & + .0966005_r8*rxt(k,529)*y(k,228) +.0025005_r8*rxt(k,533)*y(k,231)) & + *y(k,123) + (.0653005_r8*rxt(k,506)*y(k,194) + & + .0843005_r8*rxt(k,511)*y(k,196) +.0003005_r8*rxt(k,514)*y(k,211) + & + .0348005_r8*rxt(k,518)*y(k,212) +.0348005_r8*rxt(k,522)*y(k,218) + & + .0763005_r8*rxt(k,528)*y(k,228) +.086_r8*rxt(k,532)*y(k,231)) & + *y(k,207) + (.0653005_r8*rxt(k,508)*y(k,5) + & + .0348005_r8*rxt(k,524)*y(k,109))*y(k,137) & + +.0459005_r8*rxt(k,526)*y(k,221)*y(k,176) + loss(k,41) = ( + het_rates(k,173))* y(k,173) + prod(k,41) = (.079_r8*rxt(k,507)*y(k,194) +.0059005_r8*rxt(k,512)*y(k,196) + & + .0057005_r8*rxt(k,515)*y(k,211) +.0143005_r8*rxt(k,519)*y(k,212) + & + .0332005_r8*rxt(k,523)*y(k,218) +.0073005_r8*rxt(k,529)*y(k,228) + & + .011_r8*rxt(k,533)*y(k,231))*y(k,123) & + + (.1284005_r8*rxt(k,506)*y(k,194) + & + .0443005_r8*rxt(k,511)*y(k,196) +.0271005_r8*rxt(k,514)*y(k,211) + & + .0076005_r8*rxt(k,518)*y(k,212) +.0554005_r8*rxt(k,522)*y(k,218) + & + .2157005_r8*rxt(k,528)*y(k,228) +.0512005_r8*rxt(k,532)*y(k,231)) & + *y(k,207) + (.1749305_r8*rxt(k,505)*y(k,5) + & + .0590245_r8*rxt(k,513)*y(k,97) +.1749305_r8*rxt(k,521)*y(k,109)) & + *y(k,125) + (.1284005_r8*rxt(k,508)*y(k,5) + & + .0033005_r8*rxt(k,516)*y(k,97) +.0554005_r8*rxt(k,524)*y(k,109)) & + *y(k,137) +.0085005_r8*rxt(k,526)*y(k,221)*y(k,176) + loss(k,42) = ( + het_rates(k,174))* y(k,174) + prod(k,42) = (.1254005_r8*rxt(k,507)*y(k,194) + & + .0536005_r8*rxt(k,512)*y(k,196) +.0623005_r8*rxt(k,515)*y(k,211) + & + .0166005_r8*rxt(k,519)*y(k,212) +.130_r8*rxt(k,523)*y(k,218) + & + .238_r8*rxt(k,529)*y(k,228) +.1185005_r8*rxt(k,533)*y(k,231)) & + *y(k,123) + (.114_r8*rxt(k,506)*y(k,194) + & + .1621005_r8*rxt(k,511)*y(k,196) +.0474005_r8*rxt(k,514)*y(k,211) + & + .0113005_r8*rxt(k,518)*y(k,212) +.1278005_r8*rxt(k,522)*y(k,218) + & + .0738005_r8*rxt(k,528)*y(k,228) +.1598005_r8*rxt(k,532)*y(k,231)) & + *y(k,207) + (.5901905_r8*rxt(k,505)*y(k,5) + & + .0250245_r8*rxt(k,513)*y(k,97) +.5901905_r8*rxt(k,521)*y(k,109)) & + *y(k,125) + (.114_r8*rxt(k,508)*y(k,5) + & + .1278005_r8*rxt(k,524)*y(k,109))*y(k,137) & + +.0128005_r8*rxt(k,526)*y(k,221)*y(k,176) + loss(k,43) = ( + rxt(k,553) + het_rates(k,175))* y(k,175) + prod(k,43) = 0._r8 + loss(k,44) = (rxt(k,526)* y(k,221) + het_rates(k,176))* y(k,176) + prod(k,44) = 0._r8 + loss(k,80) = ( + rxt(k,64) + het_rates(k,177))* y(k,177) + prod(k,80) = (.100_r8*rxt(k,441)*y(k,184) +.230_r8*rxt(k,443)*y(k,186)) & + *y(k,221) + loss(k,153) = (rxt(k,465)* y(k,221) + rxt(k,65) + het_rates(k,178))* y(k,178) + prod(k,153) =rxt(k,463)*y(k,225)*y(k,207) + loss(k,150) = (rxt(k,466)* y(k,221) + rxt(k,66) + rxt(k,504) & + + het_rates(k,179))* y(k,179) + prod(k,150) = (.200_r8*rxt(k,459)*y(k,219) +.200_r8*rxt(k,469)*y(k,226)) & + *y(k,123) +.500_r8*rxt(k,457)*y(k,219)*y(k,202) + loss(k,133) = (rxt(k,470)* y(k,221) + rxt(k,67) + het_rates(k,180))* y(k,180) + prod(k,133) =rxt(k,468)*y(k,226)*y(k,207) + loss(k,186) = (rxt(k,471)* y(k,125) +rxt(k,472)* y(k,221) + rxt(k,68) & + + het_rates(k,181))* y(k,181) + prod(k,186) = (.500_r8*rxt(k,457)*y(k,202) +.800_r8*rxt(k,459)*y(k,123) + & + rxt(k,460)*y(k,125))*y(k,219) + (.330_r8*rxt(k,452)*y(k,5) + & + .330_r8*rxt(k,455)*y(k,109))*y(k,137) + (rxt(k,66) + & + rxt(k,466)*y(k,221))*y(k,179) + (rxt(k,467)*y(k,202) + & + .800_r8*rxt(k,469)*y(k,123))*y(k,226) +rxt(k,58)*y(k,127) +rxt(k,67) & + *y(k,180) + loss(k,194) = (rxt(k,473)* y(k,221) + rxt(k,69) + het_rates(k,182))* y(k,182) + prod(k,194) = (.300_r8*rxt(k,452)*y(k,5) +.300_r8*rxt(k,455)*y(k,109)) & + *y(k,137) + (rxt(k,462)*y(k,202) +.900_r8*rxt(k,464)*y(k,123)) & + *y(k,225) +rxt(k,65)*y(k,178) +rxt(k,68)*y(k,181) + loss(k,154) = (rxt(k,440)* y(k,221) + rxt(k,70) + het_rates(k,183))* y(k,183) + prod(k,154) =rxt(k,438)*y(k,227)*y(k,207) + loss(k,78) = (rxt(k,441)* y(k,221) + het_rates(k,184))* y(k,184) + prod(k,78) = 0._r8 + loss(k,81) = (rxt(k,407)* y(k,221) + rxt(k,71) + het_rates(k,185))* y(k,185) + prod(k,81) =rxt(k,404)*y(k,229)*y(k,207) + loss(k,82) = (rxt(k,443)* y(k,221) + het_rates(k,186))* y(k,186) + prod(k,82) = 0._r8 + loss(k,160) = (rxt(k,446)* y(k,221) + rxt(k,72) + het_rates(k,187))* y(k,187) + prod(k,160) =rxt(k,444)*y(k,230)*y(k,207) + loss(k,83) = (rxt(k,449)* y(k,221) + het_rates(k,188))* y(k,188) + prod(k,83) =.150_r8*rxt(k,443)*y(k,221)*y(k,186) + loss(k,122) = (rxt(k,450)* y(k,221) + rxt(k,73) + het_rates(k,189))* y(k,189) + prod(k,122) =rxt(k,447)*y(k,232)*y(k,207) + loss(k,137) = (rxt(k,409)* y(k,123) +rxt(k,437)* y(k,124) +rxt(k,408) & + * y(k,207) + het_rates(k,192))* y(k,192) + prod(k,137) =rxt(k,414)*y(k,221)*y(k,21) +rxt(k,442)*y(k,143) + loss(k,182) = ((rxt(k,370) +rxt(k,371))* y(k,123) +rxt(k,369)* y(k,207) & + + het_rates(k,193))* y(k,193) + prod(k,182) = (rxt(k,372)*y(k,2) +rxt(k,373)*y(k,14))*y(k,221) + loss(k,45) = (rxt(k,507)* y(k,123) +rxt(k,506)* y(k,207) + het_rates(k,194)) & + * y(k,194) + prod(k,45) =rxt(k,509)*y(k,221)*y(k,5) + loss(k,134) = (rxt(k,412)* y(k,123) +rxt(k,411)* y(k,207) + het_rates(k,195)) & + * y(k,195) + prod(k,134) = (.350_r8*rxt(k,410)*y(k,6) +rxt(k,413)*y(k,7))*y(k,221) + loss(k,46) = (rxt(k,512)* y(k,123) +rxt(k,511)* y(k,207) + het_rates(k,196)) & + * y(k,196) + prod(k,46) =rxt(k,510)*y(k,221)*y(k,6) + loss(k,124) = (rxt(k,417)* y(k,123) +rxt(k,415)* y(k,207) + het_rates(k,197)) & + * y(k,197) + prod(k,124) = (rxt(k,416)*y(k,22) +.070_r8*rxt(k,441)*y(k,184) + & + .060_r8*rxt(k,443)*y(k,186))*y(k,221) + loss(k,175) = (rxt(k,295)* y(k,123) + 2._r8*rxt(k,292)* y(k,198) +rxt(k,293) & + * y(k,202) +rxt(k,294)* y(k,207) + het_rates(k,198))* y(k,198) + prod(k,175) = (rxt(k,298)*y(k,55) +rxt(k,299)*y(k,221))*y(k,27) & + +.500_r8*rxt(k,297)*y(k,221)*y(k,26) +rxt(k,52)*y(k,106) + loss(k,170) = (rxt(k,323)* y(k,123) +rxt(k,321)* y(k,202) +rxt(k,322) & + * y(k,207) + het_rates(k,199))* y(k,199) + prod(k,170) = (rxt(k,324)*y(k,29) +rxt(k,325)*y(k,30))*y(k,221) + loss(k,151) = (rxt(k,419)* y(k,123) +rxt(k,418)* y(k,207) + het_rates(k,200)) & + * y(k,200) + prod(k,151) = (.400_r8*rxt(k,408)*y(k,207) +rxt(k,409)*y(k,123))*y(k,192) & + +rxt(k,420)*y(k,221)*y(k,31) +rxt(k,435)*y(k,144)*y(k,137) + loss(k,210) = (rxt(k,391)* y(k,100) +rxt(k,306)* y(k,123) +rxt(k,317) & + * y(k,124) + 2._r8*rxt(k,303)* y(k,201) +rxt(k,304)* y(k,202) & + +rxt(k,305)* y(k,207) +rxt(k,377)* y(k,209) +rxt(k,382)* y(k,210) & + +rxt(k,344)* y(k,213) +rxt(k,402)* y(k,229) + het_rates(k,201)) & + * y(k,201) + prod(k,210) = (.100_r8*rxt(k,350)*y(k,104) +.280_r8*rxt(k,364)*y(k,110) + & + .080_r8*rxt(k,397)*y(k,97) +.060_r8*rxt(k,452)*y(k,5) + & + .060_r8*rxt(k,455)*y(k,109))*y(k,137) + (rxt(k,354)*y(k,202) + & + .450_r8*rxt(k,355)*y(k,207) +2.000_r8*rxt(k,356)*y(k,215) + & + rxt(k,357)*y(k,123) +rxt(k,358)*y(k,125))*y(k,215) & + + (.530_r8*rxt(k,344)*y(k,201) +.260_r8*rxt(k,345)*y(k,202) + & + .530_r8*rxt(k,347)*y(k,125) +.530_r8*rxt(k,348)*y(k,123))*y(k,213) & + + (rxt(k,301)*y(k,44) +.500_r8*rxt(k,308)*y(k,50) + & + rxt(k,327)*y(k,48) +.650_r8*rxt(k,473)*y(k,182))*y(k,221) & + + (.300_r8*rxt(k,333)*y(k,202) +.150_r8*rxt(k,334)*y(k,207) + & + rxt(k,335)*y(k,123))*y(k,224) + (rxt(k,36) +rxt(k,326)*y(k,125)) & + *y(k,48) + (.600_r8*rxt(k,60) +rxt(k,318))*y(k,142) & + + (.200_r8*rxt(k,359)*y(k,207) +rxt(k,360)*y(k,123))*y(k,217) & + +.130_r8*rxt(k,23)*y(k,9) +rxt(k,27)*y(k,13) +rxt(k,300)*y(k,125) & + *y(k,44) +rxt(k,35)*y(k,47) +.330_r8*rxt(k,45)*y(k,92) +rxt(k,47) & + *y(k,94) +1.340_r8*rxt(k,50)*y(k,104) +rxt(k,52)*y(k,106) +rxt(k,53) & + *y(k,107) +.300_r8*rxt(k,55)*y(k,110) +rxt(k,57)*y(k,126) +rxt(k,63) & + *y(k,150) +.500_r8*rxt(k,64)*y(k,177) +.650_r8*rxt(k,69)*y(k,182) + loss(k,227) = (rxt(k,194)* y(k,58) +rxt(k,392)* y(k,100) +rxt(k,274) & + * y(k,123) +rxt(k,293)* y(k,198) +rxt(k,321)* y(k,199) +rxt(k,304) & + * y(k,201) + 2._r8*(rxt(k,271) +rxt(k,272))* y(k,202) +rxt(k,273) & + * y(k,207) +rxt(k,378)* y(k,209) +rxt(k,383)* y(k,210) +rxt(k,345) & + * y(k,213) +rxt(k,354)* y(k,215) +rxt(k,457)* y(k,219) +rxt(k,333) & + * y(k,224) +rxt(k,462)* y(k,225) +rxt(k,467)* y(k,226) +rxt(k,403) & + * y(k,229) + het_rates(k,202))* y(k,202) + prod(k,227) = (2.000_r8*rxt(k,303)*y(k,201) +.900_r8*rxt(k,304)*y(k,202) + & + .490_r8*rxt(k,305)*y(k,207) +rxt(k,306)*y(k,123) + & + rxt(k,344)*y(k,213) +rxt(k,353)*y(k,215) +rxt(k,377)*y(k,209) + & + rxt(k,382)*y(k,210) +rxt(k,391)*y(k,100) +rxt(k,402)*y(k,229)) & + *y(k,201) + (rxt(k,40) +rxt(k,188)*y(k,55) +rxt(k,244)*y(k,72) + & + rxt(k,277)*y(k,221) +rxt(k,283)*y(k,220))*y(k,53) & + + (.830_r8*rxt(k,423)*y(k,203) +.170_r8*rxt(k,429)*y(k,216)) & + *y(k,123) + (.280_r8*rxt(k,320)*y(k,28) +.050_r8*rxt(k,397)*y(k,97)) & + *y(k,137) + (.330_r8*rxt(k,422)*y(k,203) + & + .070_r8*rxt(k,428)*y(k,216))*y(k,207) + (.700_r8*rxt(k,276)*y(k,52) + & + rxt(k,307)*y(k,49))*y(k,221) +rxt(k,87)*y(k,42) +rxt(k,34)*y(k,44) & + +rxt(k,89)*y(k,45) +rxt(k,35)*y(k,47) +rxt(k,37)*y(k,50) & + +.300_r8*rxt(k,55)*y(k,110) +.400_r8*rxt(k,60)*y(k,142) + loss(k,165) = (rxt(k,423)* y(k,123) +rxt(k,424)* y(k,124) +rxt(k,422) & + * y(k,207) + het_rates(k,203))* y(k,203) + prod(k,165) =.600_r8*rxt(k,25)*y(k,11) + loss(k,142) = ((rxt(k,341) +rxt(k,342))* y(k,123) + het_rates(k,204)) & + * y(k,204) + prod(k,142) =rxt(k,340)*y(k,221)*y(k,15) + loss(k,128) = (rxt(k,312)* y(k,134) + rxt(k,311) + het_rates(k,205)) & + * y(k,205) + prod(k,128) =rxt(k,42)*y(k,71) +.750_r8*rxt(k,310)*y(k,206)*y(k,123) + loss(k,167) = (rxt(k,310)* y(k,123) +rxt(k,309)* y(k,207) + het_rates(k,206)) & + * y(k,206) + prod(k,167) =rxt(k,316)*y(k,221)*y(k,24) + loss(k,221) = (rxt(k,224)* y(k,16) +rxt(k,230)* y(k,18) +rxt(k,267)* y(k,41) & + + (rxt(k,191) +rxt(k,192))* y(k,55) +rxt(k,198)* y(k,58) & + + (rxt(k,147) +rxt(k,148) +rxt(k,149))* y(k,75) +rxt(k,393) & + * y(k,100) +rxt(k,176)* y(k,123) +rxt(k,181)* y(k,124) +rxt(k,171) & + * y(k,125) +rxt(k,151)* y(k,133) +rxt(k,152)* y(k,137) +rxt(k,408) & + * y(k,192) +rxt(k,369)* y(k,193) +rxt(k,411)* y(k,195) +rxt(k,415) & + * y(k,197) +rxt(k,294)* y(k,198) +rxt(k,322)* y(k,199) +rxt(k,418) & + * y(k,200) +rxt(k,305)* y(k,201) +rxt(k,273)* y(k,202) +rxt(k,422) & + * y(k,203) +rxt(k,309)* y(k,206) + 2._r8*rxt(k,161)* y(k,207) & + +rxt(k,280)* y(k,208) +rxt(k,379)* y(k,209) +rxt(k,384)* y(k,210) & + +rxt(k,346)* y(k,213) +rxt(k,425)* y(k,214) +rxt(k,355)* y(k,215) & + +rxt(k,428)* y(k,216) +rxt(k,359)* y(k,217) +rxt(k,458)* y(k,219) & + +rxt(k,156)* y(k,221) +rxt(k,431)* y(k,222) +rxt(k,330)* y(k,223) & + +rxt(k,334)* y(k,224) +rxt(k,463)* y(k,225) +rxt(k,468)* y(k,226) & + +rxt(k,438)* y(k,227) +rxt(k,404)* y(k,229) +rxt(k,444)* y(k,230) & + +rxt(k,447)* y(k,232) + rxt(k,492) + het_rates(k,207))* y(k,207) + prod(k,221) = (rxt(k,155)*y(k,78) +rxt(k,158)*y(k,137) +rxt(k,174)*y(k,125) + & + rxt(k,205)*y(k,58) +rxt(k,235)*y(k,18) +rxt(k,253)*y(k,42) + & + rxt(k,256)*y(k,45) +rxt(k,275)*y(k,51) +rxt(k,278)*y(k,85) + & + rxt(k,279)*y(k,86) +rxt(k,287)*y(k,61) +.350_r8*rxt(k,289)*y(k,23) + & + rxt(k,296)*y(k,25) +rxt(k,302)*y(k,46) +rxt(k,313)*y(k,73) + & + rxt(k,314)*y(k,74) +rxt(k,328)*y(k,94) +rxt(k,343)*y(k,92) + & + .200_r8*rxt(k,352)*y(k,105) +.500_r8*rxt(k,363)*y(k,108) + & + .300_r8*rxt(k,388)*y(k,98) +rxt(k,389)*y(k,99) +rxt(k,396)*y(k,101) + & + rxt(k,400)*y(k,114) +rxt(k,401)*y(k,115) +.650_r8*rxt(k,410)*y(k,6) + & + .730_r8*rxt(k,421)*y(k,65) +.800_r8*rxt(k,433)*y(k,145) + & + .280_r8*rxt(k,441)*y(k,184) +.380_r8*rxt(k,443)*y(k,186) + & + .630_r8*rxt(k,449)*y(k,188) +.200_r8*rxt(k,473)*y(k,182) + & + rxt(k,479)*y(k,154) +.500_r8*rxt(k,489)*y(k,66))*y(k,221) & + + (rxt(k,274)*y(k,202) +rxt(k,282)*y(k,208) +rxt(k,295)*y(k,198) + & + .250_r8*rxt(k,310)*y(k,206) +rxt(k,323)*y(k,199) + & + rxt(k,331)*y(k,223) +rxt(k,341)*y(k,204) + & + .470_r8*rxt(k,348)*y(k,213) +rxt(k,370)*y(k,193) + & + .920_r8*rxt(k,380)*y(k,209) +.920_r8*rxt(k,386)*y(k,210) + & + rxt(k,394)*y(k,100) +rxt(k,405)*y(k,229) +rxt(k,412)*y(k,195) + & + rxt(k,417)*y(k,197) +.170_r8*rxt(k,423)*y(k,203) + & + .400_r8*rxt(k,426)*y(k,214) +.830_r8*rxt(k,429)*y(k,216) + & + rxt(k,432)*y(k,222) +rxt(k,439)*y(k,227) +rxt(k,445)*y(k,230) + & + rxt(k,448)*y(k,232) +.900_r8*rxt(k,464)*y(k,225) + & + .800_r8*rxt(k,469)*y(k,226))*y(k,123) + (rxt(k,194)*y(k,58) + & + 2.000_r8*rxt(k,271)*y(k,202) +rxt(k,293)*y(k,198) + & + .900_r8*rxt(k,304)*y(k,201) +rxt(k,321)*y(k,199) + & + .300_r8*rxt(k,333)*y(k,224) +.730_r8*rxt(k,345)*y(k,213) + & + rxt(k,354)*y(k,215) +rxt(k,378)*y(k,209) +rxt(k,383)*y(k,210) + & + 1.200_r8*rxt(k,392)*y(k,100) +.800_r8*rxt(k,403)*y(k,229) + & + .500_r8*rxt(k,457)*y(k,219) +rxt(k,462)*y(k,225) + & + rxt(k,467)*y(k,226))*y(k,202) + (.130_r8*rxt(k,291)*y(k,24) + & + .280_r8*rxt(k,320)*y(k,28) +.140_r8*rxt(k,350)*y(k,104) + & + .280_r8*rxt(k,364)*y(k,110) +.370_r8*rxt(k,397)*y(k,97) + & + .570_r8*rxt(k,452)*y(k,5) +.570_r8*rxt(k,455)*y(k,109))*y(k,137) & + + (rxt(k,268)*y(k,41) +.470_r8*rxt(k,347)*y(k,213) + & + rxt(k,381)*y(k,209) +rxt(k,387)*y(k,210) +rxt(k,395)*y(k,100) + & + rxt(k,406)*y(k,229))*y(k,125) + (.470_r8*rxt(k,344)*y(k,213) + & + rxt(k,377)*y(k,209) +rxt(k,382)*y(k,210) +rxt(k,391)*y(k,100) + & + rxt(k,402)*y(k,229))*y(k,201) + (rxt(k,187)*y(k,41) + & + rxt(k,190)*y(k,78) +rxt(k,252)*y(k,42) +rxt(k,255)*y(k,45))*y(k,55) & + + (.070_r8*rxt(k,422)*y(k,203) +.160_r8*rxt(k,425)*y(k,214) + & + .330_r8*rxt(k,428)*y(k,216))*y(k,207) + (rxt(k,223)*y(k,16) + & + rxt(k,269)*y(k,133))*y(k,41) + (rxt(k,11) +rxt(k,185))*y(k,89) & + + (1.340_r8*rxt(k,50) +.660_r8*rxt(k,51))*y(k,104) & + + (rxt(k,150)*y(k,75) +rxt(k,312)*y(k,205))*y(k,134) +rxt(k,19) & + *y(k,1) +.900_r8*rxt(k,20)*y(k,2) +rxt(k,21)*y(k,7) & + +1.500_r8*rxt(k,22)*y(k,8) +.560_r8*rxt(k,23)*y(k,9) +rxt(k,24) & + *y(k,10) +.600_r8*rxt(k,25)*y(k,11) +.600_r8*rxt(k,26)*y(k,12) & + +rxt(k,27)*y(k,13) +rxt(k,28)*y(k,22) +rxt(k,29)*y(k,26) +rxt(k,30) & + *y(k,29) +rxt(k,34)*y(k,44) +rxt(k,36)*y(k,48) +rxt(k,284)*y(k,220) & + *y(k,53) +2.000_r8*rxt(k,43)*y(k,73) +2.000_r8*rxt(k,44)*y(k,74) & + +rxt(k,146)*y(k,133)*y(k,78) +.670_r8*rxt(k,45)*y(k,92) +rxt(k,46) & + *y(k,93) +rxt(k,47)*y(k,94) +rxt(k,48)*y(k,101) +rxt(k,49)*y(k,102) & + +rxt(k,56)*y(k,115) +rxt(k,61)*y(k,146) +rxt(k,62)*y(k,149) & + +rxt(k,64)*y(k,177) +rxt(k,65)*y(k,178) +rxt(k,66)*y(k,179) & + +rxt(k,67)*y(k,180) +rxt(k,68)*y(k,181) +1.200_r8*rxt(k,69)*y(k,182) & + +rxt(k,70)*y(k,183) +rxt(k,72)*y(k,187) +rxt(k,73)*y(k,189) & + +1.200_r8*rxt(k,292)*y(k,198)*y(k,198) +rxt(k,311)*y(k,205) & + +rxt(k,281)*y(k,208) +rxt(k,385)*y(k,210) + loss(k,125) = (rxt(k,282)* y(k,123) +rxt(k,280)* y(k,207) + rxt(k,281) & + + het_rates(k,208))* y(k,208) + prod(k,125) =rxt(k,267)*y(k,207)*y(k,41) + loss(k,205) = (rxt(k,380)* y(k,123) +rxt(k,381)* y(k,125) +rxt(k,377) & + * y(k,201) +rxt(k,378)* y(k,202) +rxt(k,379)* y(k,207) & + + het_rates(k,209))* y(k,209) + prod(k,205) =.600_r8*rxt(k,398)*y(k,221)*y(k,97) + loss(k,206) = (rxt(k,386)* y(k,123) +rxt(k,387)* y(k,125) +rxt(k,382) & + * y(k,201) +rxt(k,383)* y(k,202) +rxt(k,384)* y(k,207) + rxt(k,385) & + + het_rates(k,210))* y(k,210) + prod(k,206) =.400_r8*rxt(k,398)*y(k,221)*y(k,97) + loss(k,47) = (rxt(k,515)* y(k,123) +rxt(k,514)* y(k,207) + het_rates(k,211)) & + * y(k,211) + prod(k,47) =rxt(k,517)*y(k,221)*y(k,97) + loss(k,48) = (rxt(k,519)* y(k,123) +rxt(k,518)* y(k,207) + het_rates(k,212)) & + * y(k,212) + prod(k,48) =rxt(k,520)*y(k,221)*y(k,103) + loss(k,207) = ((rxt(k,348) +rxt(k,349))* y(k,123) +rxt(k,347)* y(k,125) & + +rxt(k,344)* y(k,201) +rxt(k,345)* y(k,202) +rxt(k,346)* y(k,207) & + + het_rates(k,213))* y(k,213) + prod(k,207) = (.500_r8*rxt(k,351)*y(k,104) +.200_r8*rxt(k,352)*y(k,105) + & + rxt(k,365)*y(k,110))*y(k,221) + loss(k,162) = (rxt(k,426)* y(k,123) +rxt(k,427)* y(k,124) +rxt(k,425) & + * y(k,207) + het_rates(k,214))* y(k,214) + prod(k,162) =.600_r8*rxt(k,24)*y(k,10) + loss(k,209) = (rxt(k,357)* y(k,123) +rxt(k,366)* y(k,124) +rxt(k,358) & + * y(k,125) +rxt(k,353)* y(k,201) +rxt(k,354)* y(k,202) +rxt(k,355) & + * y(k,207) + 2._r8*rxt(k,356)* y(k,215) + het_rates(k,215))* y(k,215) + prod(k,209) = (.660_r8*rxt(k,50) +.500_r8*rxt(k,351)*y(k,221))*y(k,104) & + + (rxt(k,54) +rxt(k,367))*y(k,108) +.500_r8*rxt(k,352)*y(k,221) & + *y(k,105) + loss(k,177) = (rxt(k,429)* y(k,123) +rxt(k,430)* y(k,124) +rxt(k,428) & + * y(k,207) + het_rates(k,216))* y(k,216) + prod(k,177) =.600_r8*rxt(k,26)*y(k,12) + loss(k,156) = (rxt(k,360)* y(k,123) +rxt(k,359)* y(k,207) + het_rates(k,217)) & + * y(k,217) + prod(k,156) = (rxt(k,361)*y(k,106) +rxt(k,362)*y(k,107))*y(k,221) + loss(k,50) = (rxt(k,523)* y(k,123) +rxt(k,522)* y(k,207) + het_rates(k,218)) & + * y(k,218) + prod(k,50) =rxt(k,525)*y(k,221)*y(k,109) + loss(k,191) = (rxt(k,459)* y(k,123) +rxt(k,460)* y(k,125) +rxt(k,457) & + * y(k,202) +rxt(k,458)* y(k,207) + het_rates(k,219))* y(k,219) + prod(k,191) = (rxt(k,451)*y(k,5) +rxt(k,454)*y(k,109) + & + .500_r8*rxt(k,471)*y(k,181))*y(k,125) +rxt(k,461)*y(k,221)*y(k,127) + loss(k,218) = (rxt(k,212)* y(k,32) +rxt(k,213)* y(k,33) +rxt(k,239)* y(k,34) & + +rxt(k,214)* y(k,35) +rxt(k,215)* y(k,36) +rxt(k,216)* y(k,37) & + +rxt(k,217)* y(k,38) +rxt(k,218)* y(k,39) +rxt(k,262)* y(k,40) & + +rxt(k,263)* y(k,42) + (rxt(k,283) +rxt(k,284) +rxt(k,285))* y(k,53) & + +rxt(k,240)* y(k,54) +rxt(k,248)* y(k,63) +rxt(k,249)* y(k,64) & + +rxt(k,127)* y(k,76) +rxt(k,241)* y(k,77) + (rxt(k,242) +rxt(k,243)) & + * y(k,80) +rxt(k,264)* y(k,81) +rxt(k,265)* y(k,82) +rxt(k,266) & + * y(k,83) + (rxt(k,219) +rxt(k,220))* y(k,84) +rxt(k,286)* y(k,85) & + + (rxt(k,179) +rxt(k,180))* y(k,112) + (rxt(k,130) +rxt(k,131)) & + * y(k,134) + (rxt(k,132) +rxt(k,133))* y(k,137) +rxt(k,128)* y(k,233) & + + rxt(k,129) + het_rates(k,220))* y(k,220) + prod(k,218) =rxt(k,12)*y(k,112) +rxt(k,5)*y(k,134) +rxt(k,7)*y(k,137) & + +rxt(k,1)*y(k,233) + loss(k,219) = (rxt(k,368)* y(k,1) +rxt(k,372)* y(k,2) +rxt(k,453)* y(k,5) & + +rxt(k,410)* y(k,6) +rxt(k,413)* y(k,7) +rxt(k,373)* y(k,14) & + +rxt(k,340)* y(k,15) +rxt(k,235)* y(k,18) +rxt(k,414)* y(k,21) & + +rxt(k,416)* y(k,22) +rxt(k,289)* y(k,23) +rxt(k,316)* y(k,24) & + +rxt(k,296)* y(k,25) +rxt(k,297)* y(k,26) +rxt(k,299)* y(k,27) & + +rxt(k,337)* y(k,28) +rxt(k,324)* y(k,29) +rxt(k,325)* y(k,30) & + +rxt(k,420)* y(k,31) +rxt(k,251)* y(k,40) +rxt(k,270)* y(k,41) & + +rxt(k,253)* y(k,42) +rxt(k,254)* y(k,43) +rxt(k,301)* y(k,44) & + +rxt(k,256)* y(k,45) +rxt(k,302)* y(k,46) +rxt(k,338)* y(k,47) & + +rxt(k,327)* y(k,48) +rxt(k,307)* y(k,49) +rxt(k,308)* y(k,50) & + +rxt(k,275)* y(k,51) +rxt(k,276)* y(k,52) +rxt(k,277)* y(k,53) & + +rxt(k,258)* y(k,54) + (rxt(k,205) +rxt(k,206))* y(k,58) +rxt(k,203) & + * y(k,59) +rxt(k,287)* y(k,61) +rxt(k,421)* y(k,65) + (rxt(k,475) + & + rxt(k,489))* y(k,66) +rxt(k,313)* y(k,73) +rxt(k,314)* y(k,74) & + +rxt(k,154)* y(k,76) +rxt(k,155)* y(k,78) +rxt(k,237)* y(k,80) & + +rxt(k,259)* y(k,81) +rxt(k,260)* y(k,82) +rxt(k,261)* y(k,83) & + +rxt(k,208)* y(k,84) +rxt(k,278)* y(k,85) +rxt(k,279)* y(k,86) & + +rxt(k,184)* y(k,88) +rxt(k,162)* y(k,89) +rxt(k,211)* y(k,91) & + +rxt(k,343)* y(k,92) +rxt(k,374)* y(k,93) +rxt(k,328)* y(k,94) & + +rxt(k,375)* y(k,95) +rxt(k,376)* y(k,96) +rxt(k,398)* y(k,97) & + +rxt(k,388)* y(k,98) +rxt(k,389)* y(k,99) +rxt(k,396)* y(k,101) & + +rxt(k,399)* y(k,102) +rxt(k,351)* y(k,104) +rxt(k,352)* y(k,105) & + +rxt(k,361)* y(k,106) +rxt(k,362)* y(k,107) +rxt(k,363)* y(k,108) & + +rxt(k,456)* y(k,109) +rxt(k,365)* y(k,110) +rxt(k,175)* y(k,111) & + +rxt(k,400)* y(k,114) +rxt(k,401)* y(k,115) +rxt(k,491)* y(k,119) & + +rxt(k,183)* y(k,124) +rxt(k,174)* y(k,125) +rxt(k,329)* y(k,126) & + +rxt(k,461)* y(k,127) +rxt(k,157)* y(k,133) +rxt(k,158)* y(k,137) & + +rxt(k,477)* y(k,140) +rxt(k,315)* y(k,142) +rxt(k,433)* y(k,145) & + +rxt(k,436)* y(k,146) +rxt(k,332)* y(k,149) +rxt(k,336)* y(k,150) & + +rxt(k,483)* y(k,151) +rxt(k,488)* y(k,153) +rxt(k,479)* y(k,154) & + +rxt(k,465)* y(k,178) +rxt(k,466)* y(k,179) +rxt(k,470)* y(k,180) & + +rxt(k,472)* y(k,181) +rxt(k,473)* y(k,182) +rxt(k,440)* y(k,183) & + +rxt(k,441)* y(k,184) +rxt(k,407)* y(k,185) +rxt(k,443)* y(k,186) & + +rxt(k,446)* y(k,187) +rxt(k,449)* y(k,188) +rxt(k,450)* y(k,189) & + +rxt(k,156)* y(k,207) + 2._r8*(rxt(k,159) +rxt(k,160))* y(k,221) & + + het_rates(k,221))* y(k,221) + prod(k,219) = (2.000_r8*rxt(k,148)*y(k,75) +rxt(k,151)*y(k,133) + & + rxt(k,152)*y(k,137) +rxt(k,171)*y(k,125) +rxt(k,176)*y(k,123) + & + rxt(k,192)*y(k,55) +.490_r8*rxt(k,305)*y(k,201) + & + .150_r8*rxt(k,334)*y(k,224) +.450_r8*rxt(k,355)*y(k,215) + & + .200_r8*rxt(k,359)*y(k,217) +.400_r8*rxt(k,408)*y(k,192) + & + .400_r8*rxt(k,422)*y(k,203) +.400_r8*rxt(k,428)*y(k,216))*y(k,207) & + + (rxt(k,153)*y(k,75) +.130_r8*rxt(k,291)*y(k,24) + & + .360_r8*rxt(k,320)*y(k,28) +.240_r8*rxt(k,350)*y(k,104) + & + .360_r8*rxt(k,364)*y(k,110) +.320_r8*rxt(k,397)*y(k,97) + & + .630_r8*rxt(k,452)*y(k,5) +.630_r8*rxt(k,455)*y(k,109))*y(k,137) & + + (rxt(k,145)*y(k,76) +rxt(k,146)*y(k,78) +rxt(k,207)*y(k,84) + & + rxt(k,210)*y(k,91) +rxt(k,236)*y(k,80) +rxt(k,238)*y(k,90) + & + rxt(k,269)*y(k,41))*y(k,133) + (.300_r8*rxt(k,276)*y(k,52) + & + .650_r8*rxt(k,289)*y(k,23) +.500_r8*rxt(k,297)*y(k,26) + & + .500_r8*rxt(k,332)*y(k,149) +.100_r8*rxt(k,352)*y(k,105) + & + .600_r8*rxt(k,399)*y(k,102) +.500_r8*rxt(k,407)*y(k,185))*y(k,221) & + + (rxt(k,127)*y(k,76) +2.000_r8*rxt(k,128)*y(k,233) + & + rxt(k,219)*y(k,84) +rxt(k,242)*y(k,80) +rxt(k,283)*y(k,53) + & + rxt(k,286)*y(k,85))*y(k,220) + (rxt(k,2) +rxt(k,246)*y(k,72)) & + *y(k,233) +rxt(k,20)*y(k,2) +rxt(k,21)*y(k,7) +rxt(k,28)*y(k,22) & + +rxt(k,29)*y(k,26) +rxt(k,30)*y(k,29) +rxt(k,31)*y(k,31) +rxt(k,37) & + *y(k,50) +rxt(k,38)*y(k,52) +.330_r8*rxt(k,39)*y(k,53) +rxt(k,42) & + *y(k,71) +2.000_r8*rxt(k,4)*y(k,78) +rxt(k,9)*y(k,88) +rxt(k,10) & + *y(k,89) +rxt(k,105)*y(k,90) +rxt(k,106)*y(k,91) +rxt(k,46)*y(k,93) & + +rxt(k,49)*y(k,102) +rxt(k,53)*y(k,107) +.500_r8*rxt(k,500)*y(k,124) & + +rxt(k,58)*y(k,127) +rxt(k,61)*y(k,146) +rxt(k,62)*y(k,149) & + +rxt(k,63)*y(k,150) +rxt(k,65)*y(k,178) +rxt(k,67)*y(k,180) & + +rxt(k,70)*y(k,183) +rxt(k,71)*y(k,185) +rxt(k,72)*y(k,187) & + +rxt(k,73)*y(k,189) + loss(k,126) = (rxt(k,432)* y(k,123) +rxt(k,431)* y(k,207) + het_rates(k,222)) & + * y(k,222) + prod(k,126) = (.200_r8*rxt(k,421)*y(k,65) +.140_r8*rxt(k,433)*y(k,145) + & + rxt(k,436)*y(k,146))*y(k,221) + loss(k,168) = (rxt(k,331)* y(k,123) +rxt(k,330)* y(k,207) + het_rates(k,223)) & + * y(k,223) + prod(k,168) = (.500_r8*rxt(k,332)*y(k,149) +rxt(k,337)*y(k,28))*y(k,221) + loss(k,198) = (rxt(k,335)* y(k,123) +rxt(k,333)* y(k,202) +rxt(k,334) & + * y(k,207) + het_rates(k,224))* y(k,224) + prod(k,198) = (rxt(k,336)*y(k,150) +rxt(k,338)*y(k,47) + & + .150_r8*rxt(k,473)*y(k,182))*y(k,221) + (.060_r8*rxt(k,452)*y(k,5) + & + .060_r8*rxt(k,455)*y(k,109))*y(k,137) +.150_r8*rxt(k,69)*y(k,182) + loss(k,197) = (rxt(k,464)* y(k,123) +rxt(k,462)* y(k,202) +rxt(k,463) & + * y(k,207) + het_rates(k,225))* y(k,225) + prod(k,197) = (.500_r8*rxt(k,471)*y(k,125) +rxt(k,472)*y(k,221))*y(k,181) & + +rxt(k,465)*y(k,221)*y(k,178) + loss(k,196) = (rxt(k,469)* y(k,123) +rxt(k,467)* y(k,202) +rxt(k,468) & + * y(k,207) + het_rates(k,226))* y(k,226) + prod(k,196) = (rxt(k,453)*y(k,5) +rxt(k,456)*y(k,109) +rxt(k,470)*y(k,180)) & + *y(k,221) + loss(k,163) = (rxt(k,439)* y(k,123) +rxt(k,438)* y(k,207) + het_rates(k,227)) & + * y(k,227) + prod(k,163) = (rxt(k,440)*y(k,183) +.650_r8*rxt(k,441)*y(k,184))*y(k,221) + loss(k,51) = (rxt(k,529)* y(k,123) +rxt(k,528)* y(k,207) + het_rates(k,228)) & + * y(k,228) + prod(k,51) =rxt(k,527)*y(k,221)*y(k,184) + loss(k,200) = (rxt(k,405)* y(k,123) +rxt(k,406)* y(k,125) +rxt(k,402) & + * y(k,201) +rxt(k,403)* y(k,202) +rxt(k,404)* y(k,207) & + + het_rates(k,229))* y(k,229) + prod(k,200) = (rxt(k,374)*y(k,93) +rxt(k,375)*y(k,95) +rxt(k,376)*y(k,96) + & + .400_r8*rxt(k,399)*y(k,102) +.500_r8*rxt(k,407)*y(k,185))*y(k,221) + loss(k,164) = (rxt(k,445)* y(k,123) +rxt(k,444)* y(k,207) + het_rates(k,230)) & + * y(k,230) + prod(k,164) = (.560_r8*rxt(k,443)*y(k,186) +rxt(k,446)*y(k,187))*y(k,221) + loss(k,52) = (rxt(k,533)* y(k,123) +rxt(k,532)* y(k,207) + het_rates(k,231)) & + * y(k,231) + prod(k,52) =rxt(k,531)*y(k,221)*y(k,186) + loss(k,135) = (rxt(k,448)* y(k,123) +rxt(k,447)* y(k,207) + het_rates(k,232)) & + * y(k,232) + prod(k,135) = (.300_r8*rxt(k,449)*y(k,188) +rxt(k,450)*y(k,189))*y(k,221) + loss(k,231) = (rxt(k,246)* y(k,72) +rxt(k,490)* y(k,155) +rxt(k,128) & + * y(k,220) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,233)) & + * y(k,233) + prod(k,231) = (rxt(k,154)*y(k,76) +rxt(k,155)*y(k,78) +rxt(k,156)*y(k,207) + & + rxt(k,159)*y(k,221) +rxt(k,162)*y(k,89) +rxt(k,184)*y(k,88) + & + rxt(k,208)*y(k,84) +rxt(k,211)*y(k,91) +rxt(k,237)*y(k,80) + & + rxt(k,251)*y(k,40) +rxt(k,253)*y(k,42) +rxt(k,254)*y(k,43) + & + rxt(k,256)*y(k,45) +rxt(k,261)*y(k,83) +rxt(k,270)*y(k,41) + & + rxt(k,276)*y(k,52) +rxt(k,277)*y(k,53) +rxt(k,279)*y(k,86) + & + rxt(k,299)*y(k,27) +rxt(k,301)*y(k,44) +rxt(k,307)*y(k,49) + & + rxt(k,308)*y(k,50) +rxt(k,324)*y(k,29) +rxt(k,325)*y(k,30) + & + rxt(k,327)*y(k,48) +rxt(k,332)*y(k,149) +rxt(k,336)*y(k,150) + & + rxt(k,338)*y(k,47) +.500_r8*rxt(k,351)*y(k,104) +rxt(k,491)*y(k,119)) & + *y(k,221) + (rxt(k,535)*y(k,91) +rxt(k,541)*y(k,91) + & + rxt(k,542)*y(k,90) +rxt(k,546)*y(k,91) +rxt(k,547)*y(k,90))*y(k,84) & + + (rxt(k,492) +rxt(k,149)*y(k,75))*y(k,207) +.050_r8*rxt(k,39) & + *y(k,53) +rxt(k,109)*y(k,79) + end do + end subroutine imp_prod_loss + end module mo_prod_loss diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_rxt_rates_conv.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_rxt_rates_conv.F90 new file mode 100644 index 0000000000..a5f245cb9d --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_rxt_rates_conv.F90 @@ -0,0 +1,565 @@ +module mo_rxt_rates_conv + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none + private + public :: set_rates +contains + subroutine set_rates( rxt_rates, sol, ncol ) + real(r8), intent(inout) :: rxt_rates(:,:,:) + real(r8), intent(in) :: sol(:,:,:) + integer, intent(in) :: ncol + rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 233) ! rate_const*H2O + rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 233) ! rate_const*H2O + rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 233) ! rate_const*H2O + rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 78) ! rate_const*H2O2 + rxt_rates(:ncol,:, 5) = rxt_rates(:ncol,:, 5)*sol(:ncol,:, 134) ! rate_const*O2 + rxt_rates(:ncol,:, 6) = rxt_rates(:ncol,:, 6)*sol(:ncol,:, 134) ! rate_const*O2 + rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 137) ! rate_const*O3 + rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 137) ! rate_const*O3 + rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 88) ! rate_const*HNO3 + rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 89) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 89) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 112) ! rate_const*N2O + rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 123) ! rate_const*NO + rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 124) ! rate_const*NO2 + rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 125) ! rate_const*NO3 + rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 125) ! rate_const*NO3 + rxt_rates(:ncol,:, 19) = rxt_rates(:ncol,:, 19)*sol(:ncol,:, 1) ! rate_const*ALKNIT + rxt_rates(:ncol,:, 20) = rxt_rates(:ncol,:, 20)*sol(:ncol,:, 2) ! rate_const*ALKOOH + rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 7) ! rate_const*BENZOOH + rxt_rates(:ncol,:, 22) = rxt_rates(:ncol,:, 22)*sol(:ncol,:, 8) ! rate_const*BEPOMUC + rxt_rates(:ncol,:, 23) = rxt_rates(:ncol,:, 23)*sol(:ncol,:, 9) ! rate_const*BIGALD + rxt_rates(:ncol,:, 24) = rxt_rates(:ncol,:, 24)*sol(:ncol,:, 10) ! rate_const*BIGALD1 + rxt_rates(:ncol,:, 25) = rxt_rates(:ncol,:, 25)*sol(:ncol,:, 11) ! rate_const*BIGALD2 + rxt_rates(:ncol,:, 26) = rxt_rates(:ncol,:, 26)*sol(:ncol,:, 12) ! rate_const*BIGALD3 + rxt_rates(:ncol,:, 27) = rxt_rates(:ncol,:, 27)*sol(:ncol,:, 13) ! rate_const*BIGALD4 + rxt_rates(:ncol,:, 28) = rxt_rates(:ncol,:, 28)*sol(:ncol,:, 22) ! rate_const*BZOOH + rxt_rates(:ncol,:, 29) = rxt_rates(:ncol,:, 29)*sol(:ncol,:, 26) ! rate_const*C2H5OOH + rxt_rates(:ncol,:, 30) = rxt_rates(:ncol,:, 30)*sol(:ncol,:, 29) ! rate_const*C3H7OOH + rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 31) ! rate_const*C6H5OOH + rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 41) ! rate_const*CH2O + rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 41) ! rate_const*CH2O + rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 44) ! rate_const*CH3CHO + rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 47) ! rate_const*CH3COCH3 + rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 48) ! rate_const*CH3COCHO + rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 50) ! rate_const*CH3COOOH + rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 52) ! rate_const*CH3OOH + rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 53) ! rate_const*CH4 + rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 53) ! rate_const*CH4 + rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 62) ! rate_const*CO2 + rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 71) ! rate_const*EOOH + rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 73) ! rate_const*GLYALD + rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 74) ! rate_const*GLYOXAL + rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 92) ! rate_const*HONITR + rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 93) ! rate_const*HPALD + rxt_rates(:ncol,:, 47) = rxt_rates(:ncol,:, 47)*sol(:ncol,:, 94) ! rate_const*HYAC + rxt_rates(:ncol,:, 48) = rxt_rates(:ncol,:, 48)*sol(:ncol,:, 101) ! rate_const*ISOPNOOH + rxt_rates(:ncol,:, 49) = rxt_rates(:ncol,:, 49)*sol(:ncol,:, 102) ! rate_const*ISOPOOH + rxt_rates(:ncol,:, 50) = rxt_rates(:ncol,:, 50)*sol(:ncol,:, 104) ! rate_const*MACR + rxt_rates(:ncol,:, 51) = rxt_rates(:ncol,:, 51)*sol(:ncol,:, 104) ! rate_const*MACR + rxt_rates(:ncol,:, 52) = rxt_rates(:ncol,:, 52)*sol(:ncol,:, 106) ! rate_const*MEK + rxt_rates(:ncol,:, 53) = rxt_rates(:ncol,:, 53)*sol(:ncol,:, 107) ! rate_const*MEKOOH + rxt_rates(:ncol,:, 54) = rxt_rates(:ncol,:, 54)*sol(:ncol,:, 108) ! rate_const*MPAN + rxt_rates(:ncol,:, 55) = rxt_rates(:ncol,:, 55)*sol(:ncol,:, 110) ! rate_const*MVK + rxt_rates(:ncol,:, 56) = rxt_rates(:ncol,:, 56)*sol(:ncol,:, 115) ! rate_const*NC4CHO + rxt_rates(:ncol,:, 57) = rxt_rates(:ncol,:, 57)*sol(:ncol,:, 126) ! rate_const*NOA + rxt_rates(:ncol,:, 58) = rxt_rates(:ncol,:, 58)*sol(:ncol,:, 127) ! rate_const*NTERPOOH + rxt_rates(:ncol,:, 59) = rxt_rates(:ncol,:, 59)*sol(:ncol,:, 141) ! rate_const*ONITR + rxt_rates(:ncol,:, 60) = rxt_rates(:ncol,:, 60)*sol(:ncol,:, 142) ! rate_const*PAN + rxt_rates(:ncol,:, 61) = rxt_rates(:ncol,:, 61)*sol(:ncol,:, 146) ! rate_const*PHENOOH + rxt_rates(:ncol,:, 62) = rxt_rates(:ncol,:, 62)*sol(:ncol,:, 149) ! rate_const*POOH + rxt_rates(:ncol,:, 63) = rxt_rates(:ncol,:, 63)*sol(:ncol,:, 150) ! rate_const*ROOH + rxt_rates(:ncol,:, 64) = rxt_rates(:ncol,:, 64)*sol(:ncol,:, 177) ! rate_const*TEPOMUC + rxt_rates(:ncol,:, 65) = rxt_rates(:ncol,:, 65)*sol(:ncol,:, 178) ! rate_const*TERP2OOH + rxt_rates(:ncol,:, 66) = rxt_rates(:ncol,:, 66)*sol(:ncol,:, 179) ! rate_const*TERPNIT + rxt_rates(:ncol,:, 67) = rxt_rates(:ncol,:, 67)*sol(:ncol,:, 180) ! rate_const*TERPOOH + rxt_rates(:ncol,:, 68) = rxt_rates(:ncol,:, 68)*sol(:ncol,:, 181) ! rate_const*TERPROD1 + rxt_rates(:ncol,:, 69) = rxt_rates(:ncol,:, 69)*sol(:ncol,:, 182) ! rate_const*TERPROD2 + rxt_rates(:ncol,:, 70) = rxt_rates(:ncol,:, 70)*sol(:ncol,:, 183) ! rate_const*TOLOOH + rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 185) ! rate_const*XOOH + rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 187) ! rate_const*XYLENOOH + rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 189) ! rate_const*XYLOLOOH + rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 17) ! rate_const*BRCL + rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 18) ! rate_const*BRO + rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 32) ! rate_const*CCL4 + rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 33) ! rate_const*CF2CLBR + rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 34) ! rate_const*CF3BR + rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 35) ! rate_const*CFC11 + rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 36) ! rate_const*CFC113 + rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 37) ! rate_const*CFC114 + rxt_rates(:ncol,:, 84) = rxt_rates(:ncol,:, 84)*sol(:ncol,:, 38) ! rate_const*CFC115 + rxt_rates(:ncol,:, 85) = rxt_rates(:ncol,:, 85)*sol(:ncol,:, 39) ! rate_const*CFC12 + rxt_rates(:ncol,:, 86) = rxt_rates(:ncol,:, 86)*sol(:ncol,:, 40) ! rate_const*CH2BR2 + rxt_rates(:ncol,:, 87) = rxt_rates(:ncol,:, 87)*sol(:ncol,:, 42) ! rate_const*CH3BR + rxt_rates(:ncol,:, 88) = rxt_rates(:ncol,:, 88)*sol(:ncol,:, 43) ! rate_const*CH3CCL3 + rxt_rates(:ncol,:, 89) = rxt_rates(:ncol,:, 89)*sol(:ncol,:, 45) ! rate_const*CH3CL + rxt_rates(:ncol,:, 90) = rxt_rates(:ncol,:, 90)*sol(:ncol,:, 54) ! rate_const*CHBR3 + rxt_rates(:ncol,:, 91) = rxt_rates(:ncol,:, 91)*sol(:ncol,:, 56) ! rate_const*CL2 + rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 57) ! rate_const*CL2O2 + rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 58) ! rate_const*CLO + rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 63) ! rate_const*COF2 + rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 64) ! rate_const*COFCL + rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 77) ! rate_const*H2402 + rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 80) ! rate_const*HBR + rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 81) ! rate_const*HCFC141B + rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 82) ! rate_const*HCFC142B + rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 83) ! rate_const*HCFC22 + rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 84) ! rate_const*HCL + rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 87) ! rate_const*HF + rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 90) ! rate_const*HOBR + rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 91) ! rate_const*HOCL + rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 139) ! rate_const*OCLO + rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 152) ! rate_const*SF6 + rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 79) ! rate_const*H2SO4 + rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 140) ! rate_const*OCS + rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 153) ! rate_const*SO + rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 154) ! rate_const*SO2 + rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 155) ! rate_const*SO3 + rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 160) ! rate_const*soa1_a1 + rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 161) ! rate_const*soa1_a2 + rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 162) ! rate_const*soa2_a1 + rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 163) ! rate_const*soa2_a2 + rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 164) ! rate_const*soa3_a1 + rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 165) ! rate_const*soa3_a2 + rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 166) ! rate_const*soa4_a1 + rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 167) ! rate_const*soa4_a2 + rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 168) ! rate_const*soa5_a1 + rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 169) ! rate_const*soa5_a2 + rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 70) ! rate_const*E90 + rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 135) ! rate_const*O2_1D + rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 136) ! rate_const*O2_1S + rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 220)*sol(:ncol,:, 76) ! rate_const*O1D*H2 + rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 220)*sol(:ncol,:, 233) ! rate_const*O1D*H2O + rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 220) ! rate_const*N2*O1D + rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 220)*sol(:ncol,:, 134) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 220)*sol(:ncol,:, 134) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 220)*sol(:ncol,:, 137) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 220)*sol(:ncol,:, 137) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 135) ! rate_const*N2*O2_1D + rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 135)*sol(:ncol,:, 133) ! rate_const*O2_1D*O + rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 135)*sol(:ncol,:, 134) ! rate_const*O2_1D*O2 + rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 136)*sol(:ncol,:, 62) ! rate_const*O2_1S*CO2 + rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 136) ! rate_const*N2*O2_1S + rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 136)*sol(:ncol,:, 133) ! rate_const*O2_1S*O + rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 136)*sol(:ncol,:, 134) ! rate_const*O2_1S*O2 + rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 136)*sol(:ncol,:, 137) ! rate_const*O2_1S*O3 + rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 133)*sol(:ncol,:, 137) ! rate_const*O*O3 + rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 133)*sol(:ncol,:, 133) ! rate_const*M*O*O + rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 133)*sol(:ncol,:, 134) ! rate_const*M*O*O2 + rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 76)*sol(:ncol,:, 133) ! rate_const*H2*O + rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 78)*sol(:ncol,:, 133) ! rate_const*H2O2*O + rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 75)*sol(:ncol,:, 207) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 75)*sol(:ncol,:, 207) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 75)*sol(:ncol,:, 207) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 75)*sol(:ncol,:, 134) ! rate_const*M*H*O2 + rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 207)*sol(:ncol,:, 133) ! rate_const*HO2*O + rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 207)*sol(:ncol,:, 137) ! rate_const*HO2*O3 + rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 75)*sol(:ncol,:, 137) ! rate_const*H*O3 + rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 221)*sol(:ncol,:, 76) ! rate_const*OH*H2 + rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 221)*sol(:ncol,:, 78) ! rate_const*OH*H2O2 + rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 221)*sol(:ncol,:, 207) ! rate_const*OH*HO2 + rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 221)*sol(:ncol,:, 133) ! rate_const*OH*O + rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 221)*sol(:ncol,:, 137) ! rate_const*OH*O3 + rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 221)*sol(:ncol,:, 221) ! rate_const*OH*OH + rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 221)*sol(:ncol,:, 221) ! rate_const*M*OH*OH + rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 207)*sol(:ncol,:, 207) ! rate_const*HO2*HO2 + rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 89)*sol(:ncol,:, 221) ! rate_const*HO2NO2*OH + rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 111)*sol(:ncol,:, 123) ! rate_const*N*NO + rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 111)*sol(:ncol,:, 124) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 111)*sol(:ncol,:, 134) ! rate_const*N*O2 + rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 124)*sol(:ncol,:, 133) ! rate_const*NO2*O + rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 124)*sol(:ncol,:, 137) ! rate_const*NO2*O3 + rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 124)*sol(:ncol,:, 133) ! rate_const*M*NO2*O + rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 125)*sol(:ncol,:, 207) ! rate_const*NO3*HO2 + rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 125)*sol(:ncol,:, 123) ! rate_const*NO3*NO + rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 125)*sol(:ncol,:, 133) ! rate_const*NO3*O + rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 125)*sol(:ncol,:, 221) ! rate_const*NO3*OH + rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 111)*sol(:ncol,:, 221) ! rate_const*N*OH + rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 123)*sol(:ncol,:, 207) ! rate_const*NO*HO2 + rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 123)*sol(:ncol,:, 137) ! rate_const*NO*O3 + rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 123)*sol(:ncol,:, 133) ! rate_const*M*NO*O + rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 220)*sol(:ncol,:, 112) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 220)*sol(:ncol,:, 112) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 124)*sol(:ncol,:, 207) ! rate_const*M*NO2*HO2 + rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 124)*sol(:ncol,:, 125) ! rate_const*M*NO2*NO3 + rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 124)*sol(:ncol,:, 221) ! rate_const*M*NO2*OH + rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 88)*sol(:ncol,:, 221) ! rate_const*HNO3*OH + rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 89) ! rate_const*M*HO2NO2 + rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 113) ! rate_const*M*N2O5 + rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 55)*sol(:ncol,:, 41) ! rate_const*CL*CH2O + rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 55)*sol(:ncol,:, 53) ! rate_const*CL*CH4 + rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 55)*sol(:ncol,:, 76) ! rate_const*CL*H2 + rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 55)*sol(:ncol,:, 78) ! rate_const*CL*H2O2 + rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 55)*sol(:ncol,:, 207) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 55)*sol(:ncol,:, 207) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 55)*sol(:ncol,:, 137) ! rate_const*CL*O3 + rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 58)*sol(:ncol,:, 202) ! rate_const*CLO*CH3O2 + rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 58)*sol(:ncol,:, 207) ! rate_const*CLO*HO2 + rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 58)*sol(:ncol,:, 123) ! rate_const*CLO*NO + rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 59)*sol(:ncol,:, 55) ! rate_const*CLONO2*CL + rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 58)*sol(:ncol,:, 124) ! rate_const*M*CLO*NO2 + rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 59)*sol(:ncol,:, 133) ! rate_const*CLONO2*O + rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 59)*sol(:ncol,:, 221) ! rate_const*CLONO2*OH + rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 58)*sol(:ncol,:, 133) ! rate_const*CLO*O + rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 58)*sol(:ncol,:, 221) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 58)*sol(:ncol,:, 221) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 84)*sol(:ncol,:, 133) ! rate_const*HCL*O + rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 84)*sol(:ncol,:, 221) ! rate_const*HCL*OH + rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 91)*sol(:ncol,:, 55) ! rate_const*HOCL*CL + rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 91)*sol(:ncol,:, 133) ! rate_const*HOCL*O + rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 91)*sol(:ncol,:, 221) ! rate_const*HOCL*OH + rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 220)*sol(:ncol,:, 32) ! rate_const*O1D*CCL4 + rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 220)*sol(:ncol,:, 33) ! rate_const*O1D*CF2CLBR + rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 220)*sol(:ncol,:, 35) ! rate_const*O1D*CFC11 + rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 220)*sol(:ncol,:, 36) ! rate_const*O1D*CFC113 + rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 220)*sol(:ncol,:, 37) ! rate_const*O1D*CFC114 + rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 220)*sol(:ncol,:, 38) ! rate_const*O1D*CFC115 + rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 220)*sol(:ncol,:, 39) ! rate_const*O1D*CFC12 + rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 220)*sol(:ncol,:, 84) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 220)*sol(:ncol,:, 84) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 58)*sol(:ncol,:, 58) ! rate_const*M*CLO*CLO + rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 57) ! rate_const*M*CL2O2 + rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 16)*sol(:ncol,:, 41) ! rate_const*BR*CH2O + rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 16)*sol(:ncol,:, 207) ! rate_const*BR*HO2 + rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 16)*sol(:ncol,:, 137) ! rate_const*BR*O3 + rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 18)*sol(:ncol,:, 18) ! rate_const*BRO*BRO + rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 18)*sol(:ncol,:, 58) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 18)*sol(:ncol,:, 207) ! rate_const*BRO*HO2 + rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 18)*sol(:ncol,:, 123) ! rate_const*BRO*NO + rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 18)*sol(:ncol,:, 124) ! rate_const*M*BRO*NO2 + rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 19)*sol(:ncol,:, 133) ! rate_const*BRONO2*O + rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 18)*sol(:ncol,:, 133) ! rate_const*BRO*O + rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 18)*sol(:ncol,:, 221) ! rate_const*BRO*OH + rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 80)*sol(:ncol,:, 133) ! rate_const*HBR*O + rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 80)*sol(:ncol,:, 221) ! rate_const*HBR*OH + rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 90)*sol(:ncol,:, 133) ! rate_const*HOBR*O + rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 220)*sol(:ncol,:, 34) ! rate_const*O1D*CF3BR + rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 220)*sol(:ncol,:, 54) ! rate_const*O1D*CHBR3 + rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 220)*sol(:ncol,:, 77) ! rate_const*O1D*H2402 + rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 220)*sol(:ncol,:, 80) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 220)*sol(:ncol,:, 80) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 72)*sol(:ncol,:, 53) ! rate_const*F*CH4 + rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 72)*sol(:ncol,:, 76) ! rate_const*F*H2 + rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 72)*sol(:ncol,:, 233) ! rate_const*F*H2O + rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 72)*sol(:ncol,:, 88) ! rate_const*F*HNO3 + rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 220)*sol(:ncol,:, 63) ! rate_const*O1D*COF2 + rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 220)*sol(:ncol,:, 64) ! rate_const*O1D*COFCL + rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 40)*sol(:ncol,:, 55) ! rate_const*CH2BR2*CL + rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 40)*sol(:ncol,:, 221) ! rate_const*CH2BR2*OH + rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 42)*sol(:ncol,:, 55) ! rate_const*CH3BR*CL + rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 42)*sol(:ncol,:, 221) ! rate_const*CH3BR*OH + rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 43)*sol(:ncol,:, 221) ! rate_const*CH3CCL3*OH + rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 45)*sol(:ncol,:, 55) ! rate_const*CH3CL*CL + rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 45)*sol(:ncol,:, 221) ! rate_const*CH3CL*OH + rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 54)*sol(:ncol,:, 55) ! rate_const*CHBR3*CL + rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 54)*sol(:ncol,:, 221) ! rate_const*CHBR3*OH + rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 81)*sol(:ncol,:, 221) ! rate_const*HCFC141B*OH + rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 82)*sol(:ncol,:, 221) ! rate_const*HCFC142B*OH + rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 83)*sol(:ncol,:, 221) ! rate_const*HCFC22*OH + rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 220)*sol(:ncol,:, 40) ! rate_const*O1D*CH2BR2 + rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 220)*sol(:ncol,:, 42) ! rate_const*O1D*CH3BR + rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 220)*sol(:ncol,:, 81) ! rate_const*O1D*HCFC141B + rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 220)*sol(:ncol,:, 82) ! rate_const*O1D*HCFC142B + rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 220)*sol(:ncol,:, 83) ! rate_const*O1D*HCFC22 + rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 41)*sol(:ncol,:, 207) ! rate_const*CH2O*HO2 + rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 41)*sol(:ncol,:, 125) ! rate_const*CH2O*NO3 + rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 41)*sol(:ncol,:, 133) ! rate_const*CH2O*O + rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 41)*sol(:ncol,:, 221) ! rate_const*CH2O*OH + rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 202)*sol(:ncol,:, 202) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 202)*sol(:ncol,:, 202) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 202)*sol(:ncol,:, 207) ! rate_const*CH3O2*HO2 + rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 202)*sol(:ncol,:, 123) ! rate_const*CH3O2*NO + rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 51)*sol(:ncol,:, 221) ! rate_const*CH3OH*OH + rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 52)*sol(:ncol,:, 221) ! rate_const*CH3OOH*OH + rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 53)*sol(:ncol,:, 221) ! rate_const*CH4*OH + rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 85)*sol(:ncol,:, 221) ! rate_const*M*HCN*OH + rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 86)*sol(:ncol,:, 221) ! rate_const*HCOOH*OH + rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 208)*sol(:ncol,:, 207) ! rate_const*HOCH2OO*HO2 + rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 208) ! rate_const*HOCH2OO + rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 208)*sol(:ncol,:, 123) ! rate_const*HOCH2OO*NO + rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 220)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 220)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 220)*sol(:ncol,:, 53) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 220)*sol(:ncol,:, 85) ! rate_const*O1D*HCN + rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 61)*sol(:ncol,:, 221) ! rate_const*CO*OH + rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 23)*sol(:ncol,:, 55) ! rate_const*M*C2H2*CL + rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 23)*sol(:ncol,:, 221) ! rate_const*M*C2H2*OH + rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 24)*sol(:ncol,:, 55) ! rate_const*M*C2H4*CL + rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 24)*sol(:ncol,:, 137) ! rate_const*C2H4*O3 + rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 198)*sol(:ncol,:, 198) ! rate_const*C2H5O2*C2H5O2 + rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 198)*sol(:ncol,:, 202) ! rate_const*C2H5O2*CH3O2 + rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 198)*sol(:ncol,:, 207) ! rate_const*C2H5O2*HO2 + rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 198)*sol(:ncol,:, 123) ! rate_const*C2H5O2*NO + rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 25)*sol(:ncol,:, 221) ! rate_const*C2H5OH*OH + rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 26)*sol(:ncol,:, 221) ! rate_const*C2H5OOH*OH + rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 27)*sol(:ncol,:, 55) ! rate_const*C2H6*CL + rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 27)*sol(:ncol,:, 221) ! rate_const*C2H6*OH + rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 44)*sol(:ncol,:, 125) ! rate_const*CH3CHO*NO3 + rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 44)*sol(:ncol,:, 221) ! rate_const*CH3CHO*OH + rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 46)*sol(:ncol,:, 221) ! rate_const*CH3CN*OH + rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 201)*sol(:ncol,:, 201) ! rate_const*CH3CO3*CH3CO3 + rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 201)*sol(:ncol,:, 202) ! rate_const*CH3CO3*CH3O2 + rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 201)*sol(:ncol,:, 207) ! rate_const*CH3CO3*HO2 + rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 201)*sol(:ncol,:, 123) ! rate_const*CH3CO3*NO + rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 49)*sol(:ncol,:, 221) ! rate_const*CH3COOH*OH + rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 50)*sol(:ncol,:, 221) ! rate_const*CH3COOOH*OH + rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 206)*sol(:ncol,:, 207) ! rate_const*EO2*HO2 + rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 206)*sol(:ncol,:, 123) ! rate_const*EO2*NO + rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 205) ! rate_const*EO + rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 205)*sol(:ncol,:, 134) ! rate_const*EO*O2 + rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 73)*sol(:ncol,:, 221) ! rate_const*GLYALD*OH + rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 74)*sol(:ncol,:, 221) ! rate_const*GLYOXAL*OH + rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 142)*sol(:ncol,:, 221) ! rate_const*PAN*OH + rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 24)*sol(:ncol,:, 221) ! rate_const*M*C2H4*OH + rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 201)*sol(:ncol,:, 124) ! rate_const*M*CH3CO3*NO2 + rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 142) ! rate_const*M*PAN + rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 28)*sol(:ncol,:, 125) ! rate_const*C3H6*NO3 + rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 28)*sol(:ncol,:, 137) ! rate_const*C3H6*O3 + rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 199)*sol(:ncol,:, 202) ! rate_const*C3H7O2*CH3O2 + rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 199)*sol(:ncol,:, 207) ! rate_const*C3H7O2*HO2 + rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 199)*sol(:ncol,:, 123) ! rate_const*C3H7O2*NO + rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 29)*sol(:ncol,:, 221) ! rate_const*C3H7OOH*OH + rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 30)*sol(:ncol,:, 221) ! rate_const*C3H8*OH + rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 48)*sol(:ncol,:, 125) ! rate_const*CH3COCHO*NO3 + rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 48)*sol(:ncol,:, 221) ! rate_const*CH3COCHO*OH + rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 94)*sol(:ncol,:, 221) ! rate_const*HYAC*OH + rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 126)*sol(:ncol,:, 221) ! rate_const*NOA*OH + rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 223)*sol(:ncol,:, 207) ! rate_const*PO2*HO2 + rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 223)*sol(:ncol,:, 123) ! rate_const*PO2*NO + rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 149)*sol(:ncol,:, 221) ! rate_const*POOH*OH + rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 224)*sol(:ncol,:, 202) ! rate_const*RO2*CH3O2 + rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 224)*sol(:ncol,:, 207) ! rate_const*RO2*HO2 + rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 224)*sol(:ncol,:, 123) ! rate_const*RO2*NO + rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 150)*sol(:ncol,:, 221) ! rate_const*ROOH*OH + rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 28)*sol(:ncol,:, 221) ! rate_const*M*C3H6*OH + rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 47)*sol(:ncol,:, 221) ! rate_const*CH3COCH3*OH + rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 15)*sol(:ncol,:, 125) ! rate_const*BIGENE*NO3 + rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 15)*sol(:ncol,:, 221) ! rate_const*BIGENE*OH + rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 204)*sol(:ncol,:, 123) ! rate_const*ENEO2*NO + rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 204)*sol(:ncol,:, 123) ! rate_const*ENEO2*NO + rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 92)*sol(:ncol,:, 221) ! rate_const*HONITR*OH + rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 213)*sol(:ncol,:, 201) ! rate_const*MACRO2*CH3CO3 + rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 213)*sol(:ncol,:, 202) ! rate_const*MACRO2*CH3O2 + rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 213)*sol(:ncol,:, 207) ! rate_const*MACRO2*HO2 + rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 213)*sol(:ncol,:, 125) ! rate_const*MACRO2*NO3 + rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 213)*sol(:ncol,:, 123) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 213)*sol(:ncol,:, 123) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 104)*sol(:ncol,:, 137) ! rate_const*MACR*O3 + rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 104)*sol(:ncol,:, 221) ! rate_const*MACR*OH + rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 105)*sol(:ncol,:, 221) ! rate_const*MACROOH*OH + rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 215)*sol(:ncol,:, 201) ! rate_const*MCO3*CH3CO3 + rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 215)*sol(:ncol,:, 202) ! rate_const*MCO3*CH3O2 + rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 215)*sol(:ncol,:, 207) ! rate_const*MCO3*HO2 + rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 215)*sol(:ncol,:, 215) ! rate_const*MCO3*MCO3 + rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 215)*sol(:ncol,:, 123) ! rate_const*MCO3*NO + rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 215)*sol(:ncol,:, 125) ! rate_const*MCO3*NO3 + rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 217)*sol(:ncol,:, 207) ! rate_const*MEKO2*HO2 + rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 217)*sol(:ncol,:, 123) ! rate_const*MEKO2*NO + rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 106)*sol(:ncol,:, 221) ! rate_const*MEK*OH + rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 107)*sol(:ncol,:, 221) ! rate_const*MEKOOH*OH + rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 108)*sol(:ncol,:, 221) ! rate_const*M*MPAN*OH + rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 110)*sol(:ncol,:, 137) ! rate_const*MVK*O3 + rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 110)*sol(:ncol,:, 221) ! rate_const*MVK*OH + rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 215)*sol(:ncol,:, 124) ! rate_const*M*MCO3*NO2 + rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 108) ! rate_const*M*MPAN + rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 1)*sol(:ncol,:, 221) ! rate_const*ALKNIT*OH + rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 193)*sol(:ncol,:, 207) ! rate_const*ALKO2*HO2 + rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 193)*sol(:ncol,:, 123) ! rate_const*ALKO2*NO + rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 193)*sol(:ncol,:, 123) ! rate_const*ALKO2*NO + rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 2)*sol(:ncol,:, 221) ! rate_const*ALKOOH*OH + rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 14)*sol(:ncol,:, 221) ! rate_const*BIGALK*OH + rxt_rates(:ncol,:, 374) = rxt_rates(:ncol,:, 374)*sol(:ncol,:, 93)*sol(:ncol,:, 221) ! rate_const*HPALD*OH + rxt_rates(:ncol,:, 375) = rxt_rates(:ncol,:, 375)*sol(:ncol,:, 95)*sol(:ncol,:, 221) ! rate_const*HYDRALD*OH + rxt_rates(:ncol,:, 376) = rxt_rates(:ncol,:, 376)*sol(:ncol,:, 96)*sol(:ncol,:, 221) ! rate_const*IEPOX*OH + rxt_rates(:ncol,:, 377) = rxt_rates(:ncol,:, 377)*sol(:ncol,:, 209)*sol(:ncol,:, 201) ! rate_const*ISOPAO2*CH3CO3 + rxt_rates(:ncol,:, 378) = rxt_rates(:ncol,:, 378)*sol(:ncol,:, 209)*sol(:ncol,:, 202) ! rate_const*ISOPAO2*CH3O2 + rxt_rates(:ncol,:, 379) = rxt_rates(:ncol,:, 379)*sol(:ncol,:, 209)*sol(:ncol,:, 207) ! rate_const*ISOPAO2*HO2 + rxt_rates(:ncol,:, 380) = rxt_rates(:ncol,:, 380)*sol(:ncol,:, 209)*sol(:ncol,:, 123) ! rate_const*ISOPAO2*NO + rxt_rates(:ncol,:, 381) = rxt_rates(:ncol,:, 381)*sol(:ncol,:, 209)*sol(:ncol,:, 125) ! rate_const*ISOPAO2*NO3 + rxt_rates(:ncol,:, 382) = rxt_rates(:ncol,:, 382)*sol(:ncol,:, 210)*sol(:ncol,:, 201) ! rate_const*ISOPBO2*CH3CO3 + rxt_rates(:ncol,:, 383) = rxt_rates(:ncol,:, 383)*sol(:ncol,:, 210)*sol(:ncol,:, 202) ! rate_const*ISOPBO2*CH3O2 + rxt_rates(:ncol,:, 384) = rxt_rates(:ncol,:, 384)*sol(:ncol,:, 210)*sol(:ncol,:, 207) ! rate_const*ISOPBO2*HO2 + rxt_rates(:ncol,:, 385) = rxt_rates(:ncol,:, 385)*sol(:ncol,:, 210) ! rate_const*ISOPBO2 + rxt_rates(:ncol,:, 386) = rxt_rates(:ncol,:, 386)*sol(:ncol,:, 210)*sol(:ncol,:, 123) ! rate_const*ISOPBO2*NO + rxt_rates(:ncol,:, 387) = rxt_rates(:ncol,:, 387)*sol(:ncol,:, 210)*sol(:ncol,:, 125) ! rate_const*ISOPBO2*NO3 + rxt_rates(:ncol,:, 388) = rxt_rates(:ncol,:, 388)*sol(:ncol,:, 98)*sol(:ncol,:, 221) ! rate_const*ISOPNITA*OH + rxt_rates(:ncol,:, 389) = rxt_rates(:ncol,:, 389)*sol(:ncol,:, 99)*sol(:ncol,:, 221) ! rate_const*ISOPNITB*OH + rxt_rates(:ncol,:, 390) = rxt_rates(:ncol,:, 390)*sol(:ncol,:, 97)*sol(:ncol,:, 125) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 391) = rxt_rates(:ncol,:, 391)*sol(:ncol,:, 100)*sol(:ncol,:, 201) ! rate_const*ISOPNO3*CH3CO3 + rxt_rates(:ncol,:, 392) = rxt_rates(:ncol,:, 392)*sol(:ncol,:, 100)*sol(:ncol,:, 202) ! rate_const*ISOPNO3*CH3O2 + rxt_rates(:ncol,:, 393) = rxt_rates(:ncol,:, 393)*sol(:ncol,:, 100)*sol(:ncol,:, 207) ! rate_const*ISOPNO3*HO2 + rxt_rates(:ncol,:, 394) = rxt_rates(:ncol,:, 394)*sol(:ncol,:, 100)*sol(:ncol,:, 123) ! rate_const*ISOPNO3*NO + rxt_rates(:ncol,:, 395) = rxt_rates(:ncol,:, 395)*sol(:ncol,:, 100)*sol(:ncol,:, 125) ! rate_const*ISOPNO3*NO3 + rxt_rates(:ncol,:, 396) = rxt_rates(:ncol,:, 396)*sol(:ncol,:, 101)*sol(:ncol,:, 221) ! rate_const*ISOPNOOH*OH + rxt_rates(:ncol,:, 397) = rxt_rates(:ncol,:, 397)*sol(:ncol,:, 97)*sol(:ncol,:, 137) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 398) = rxt_rates(:ncol,:, 398)*sol(:ncol,:, 97)*sol(:ncol,:, 221) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 399) = rxt_rates(:ncol,:, 399)*sol(:ncol,:, 102)*sol(:ncol,:, 221) ! rate_const*ISOPOOH*OH + rxt_rates(:ncol,:, 400) = rxt_rates(:ncol,:, 400)*sol(:ncol,:, 114)*sol(:ncol,:, 221) ! rate_const*NC4CH2OH*OH + rxt_rates(:ncol,:, 401) = rxt_rates(:ncol,:, 401)*sol(:ncol,:, 115)*sol(:ncol,:, 221) ! rate_const*NC4CHO*OH + rxt_rates(:ncol,:, 402) = rxt_rates(:ncol,:, 402)*sol(:ncol,:, 229)*sol(:ncol,:, 201) ! rate_const*XO2*CH3CO3 + rxt_rates(:ncol,:, 403) = rxt_rates(:ncol,:, 403)*sol(:ncol,:, 229)*sol(:ncol,:, 202) ! rate_const*XO2*CH3O2 + rxt_rates(:ncol,:, 404) = rxt_rates(:ncol,:, 404)*sol(:ncol,:, 229)*sol(:ncol,:, 207) ! rate_const*XO2*HO2 + rxt_rates(:ncol,:, 405) = rxt_rates(:ncol,:, 405)*sol(:ncol,:, 229)*sol(:ncol,:, 123) ! rate_const*XO2*NO + rxt_rates(:ncol,:, 406) = rxt_rates(:ncol,:, 406)*sol(:ncol,:, 229)*sol(:ncol,:, 125) ! rate_const*XO2*NO3 + rxt_rates(:ncol,:, 407) = rxt_rates(:ncol,:, 407)*sol(:ncol,:, 185)*sol(:ncol,:, 221) ! rate_const*XOOH*OH + rxt_rates(:ncol,:, 408) = rxt_rates(:ncol,:, 408)*sol(:ncol,:, 192)*sol(:ncol,:, 207) ! rate_const*ACBZO2*HO2 + rxt_rates(:ncol,:, 409) = rxt_rates(:ncol,:, 409)*sol(:ncol,:, 192)*sol(:ncol,:, 123) ! rate_const*ACBZO2*NO + rxt_rates(:ncol,:, 410) = rxt_rates(:ncol,:, 410)*sol(:ncol,:, 6)*sol(:ncol,:, 221) ! rate_const*BENZENE*OH + rxt_rates(:ncol,:, 411) = rxt_rates(:ncol,:, 411)*sol(:ncol,:, 195)*sol(:ncol,:, 207) ! rate_const*BENZO2*HO2 + rxt_rates(:ncol,:, 412) = rxt_rates(:ncol,:, 412)*sol(:ncol,:, 195)*sol(:ncol,:, 123) ! rate_const*BENZO2*NO + rxt_rates(:ncol,:, 413) = rxt_rates(:ncol,:, 413)*sol(:ncol,:, 7)*sol(:ncol,:, 221) ! rate_const*BENZOOH*OH + rxt_rates(:ncol,:, 414) = rxt_rates(:ncol,:, 414)*sol(:ncol,:, 21)*sol(:ncol,:, 221) ! rate_const*BZALD*OH + rxt_rates(:ncol,:, 415) = rxt_rates(:ncol,:, 415)*sol(:ncol,:, 197)*sol(:ncol,:, 207) ! rate_const*BZOO*HO2 + rxt_rates(:ncol,:, 416) = rxt_rates(:ncol,:, 416)*sol(:ncol,:, 22)*sol(:ncol,:, 221) ! rate_const*BZOOH*OH + rxt_rates(:ncol,:, 417) = rxt_rates(:ncol,:, 417)*sol(:ncol,:, 197)*sol(:ncol,:, 123) ! rate_const*BZOO*NO + rxt_rates(:ncol,:, 418) = rxt_rates(:ncol,:, 418)*sol(:ncol,:, 200)*sol(:ncol,:, 207) ! rate_const*C6H5O2*HO2 + rxt_rates(:ncol,:, 419) = rxt_rates(:ncol,:, 419)*sol(:ncol,:, 200)*sol(:ncol,:, 123) ! rate_const*C6H5O2*NO + rxt_rates(:ncol,:, 420) = rxt_rates(:ncol,:, 420)*sol(:ncol,:, 31)*sol(:ncol,:, 221) ! rate_const*C6H5OOH*OH + rxt_rates(:ncol,:, 421) = rxt_rates(:ncol,:, 421)*sol(:ncol,:, 65)*sol(:ncol,:, 221) ! rate_const*CRESOL*OH + rxt_rates(:ncol,:, 422) = rxt_rates(:ncol,:, 422)*sol(:ncol,:, 203)*sol(:ncol,:, 207) ! rate_const*DICARBO2*HO2 + rxt_rates(:ncol,:, 423) = rxt_rates(:ncol,:, 423)*sol(:ncol,:, 203)*sol(:ncol,:, 123) ! rate_const*DICARBO2*NO + rxt_rates(:ncol,:, 424) = rxt_rates(:ncol,:, 424)*sol(:ncol,:, 203)*sol(:ncol,:, 124) ! rate_const*M*DICARBO2*NO2 + rxt_rates(:ncol,:, 425) = rxt_rates(:ncol,:, 425)*sol(:ncol,:, 214)*sol(:ncol,:, 207) ! rate_const*MALO2*HO2 + rxt_rates(:ncol,:, 426) = rxt_rates(:ncol,:, 426)*sol(:ncol,:, 214)*sol(:ncol,:, 123) ! rate_const*MALO2*NO + rxt_rates(:ncol,:, 427) = rxt_rates(:ncol,:, 427)*sol(:ncol,:, 214)*sol(:ncol,:, 124) ! rate_const*M*MALO2*NO2 + rxt_rates(:ncol,:, 428) = rxt_rates(:ncol,:, 428)*sol(:ncol,:, 216)*sol(:ncol,:, 207) ! rate_const*MDIALO2*HO2 + rxt_rates(:ncol,:, 429) = rxt_rates(:ncol,:, 429)*sol(:ncol,:, 216)*sol(:ncol,:, 123) ! rate_const*MDIALO2*NO + rxt_rates(:ncol,:, 430) = rxt_rates(:ncol,:, 430)*sol(:ncol,:, 216)*sol(:ncol,:, 124) ! rate_const*M*MDIALO2*NO2 + rxt_rates(:ncol,:, 431) = rxt_rates(:ncol,:, 431)*sol(:ncol,:, 222)*sol(:ncol,:, 207) ! rate_const*PHENO2*HO2 + rxt_rates(:ncol,:, 432) = rxt_rates(:ncol,:, 432)*sol(:ncol,:, 222)*sol(:ncol,:, 123) ! rate_const*PHENO2*NO + rxt_rates(:ncol,:, 433) = rxt_rates(:ncol,:, 433)*sol(:ncol,:, 145)*sol(:ncol,:, 221) ! rate_const*PHENOL*OH + rxt_rates(:ncol,:, 434) = rxt_rates(:ncol,:, 434)*sol(:ncol,:, 144)*sol(:ncol,:, 124) ! rate_const*PHENO*NO2 + rxt_rates(:ncol,:, 435) = rxt_rates(:ncol,:, 435)*sol(:ncol,:, 144)*sol(:ncol,:, 137) ! rate_const*PHENO*O3 + rxt_rates(:ncol,:, 436) = rxt_rates(:ncol,:, 436)*sol(:ncol,:, 146)*sol(:ncol,:, 221) ! rate_const*PHENOOH*OH + rxt_rates(:ncol,:, 437) = rxt_rates(:ncol,:, 437)*sol(:ncol,:, 192)*sol(:ncol,:, 124) ! rate_const*M*ACBZO2*NO2 + rxt_rates(:ncol,:, 438) = rxt_rates(:ncol,:, 438)*sol(:ncol,:, 227)*sol(:ncol,:, 207) ! rate_const*TOLO2*HO2 + rxt_rates(:ncol,:, 439) = rxt_rates(:ncol,:, 439)*sol(:ncol,:, 227)*sol(:ncol,:, 123) ! rate_const*TOLO2*NO + rxt_rates(:ncol,:, 440) = rxt_rates(:ncol,:, 440)*sol(:ncol,:, 183)*sol(:ncol,:, 221) ! rate_const*TOLOOH*OH + rxt_rates(:ncol,:, 441) = rxt_rates(:ncol,:, 441)*sol(:ncol,:, 184)*sol(:ncol,:, 221) ! rate_const*TOLUENE*OH + rxt_rates(:ncol,:, 442) = rxt_rates(:ncol,:, 442)*sol(:ncol,:, 143) ! rate_const*M*PBZNIT + rxt_rates(:ncol,:, 443) = rxt_rates(:ncol,:, 443)*sol(:ncol,:, 186)*sol(:ncol,:, 221) ! rate_const*XYLENES*OH + rxt_rates(:ncol,:, 444) = rxt_rates(:ncol,:, 444)*sol(:ncol,:, 230)*sol(:ncol,:, 207) ! rate_const*XYLENO2*HO2 + rxt_rates(:ncol,:, 445) = rxt_rates(:ncol,:, 445)*sol(:ncol,:, 230)*sol(:ncol,:, 123) ! rate_const*XYLENO2*NO + rxt_rates(:ncol,:, 446) = rxt_rates(:ncol,:, 446)*sol(:ncol,:, 187)*sol(:ncol,:, 221) ! rate_const*XYLENOOH*OH + rxt_rates(:ncol,:, 447) = rxt_rates(:ncol,:, 447)*sol(:ncol,:, 232)*sol(:ncol,:, 207) ! rate_const*XYLOLO2*HO2 + rxt_rates(:ncol,:, 448) = rxt_rates(:ncol,:, 448)*sol(:ncol,:, 232)*sol(:ncol,:, 123) ! rate_const*XYLOLO2*NO + rxt_rates(:ncol,:, 449) = rxt_rates(:ncol,:, 449)*sol(:ncol,:, 188)*sol(:ncol,:, 221) ! rate_const*XYLOL*OH + rxt_rates(:ncol,:, 450) = rxt_rates(:ncol,:, 450)*sol(:ncol,:, 189)*sol(:ncol,:, 221) ! rate_const*XYLOLOOH*OH + rxt_rates(:ncol,:, 451) = rxt_rates(:ncol,:, 451)*sol(:ncol,:, 5)*sol(:ncol,:, 125) ! rate_const*BCARY*NO3 + rxt_rates(:ncol,:, 452) = rxt_rates(:ncol,:, 452)*sol(:ncol,:, 5)*sol(:ncol,:, 137) ! rate_const*BCARY*O3 + rxt_rates(:ncol,:, 453) = rxt_rates(:ncol,:, 453)*sol(:ncol,:, 5)*sol(:ncol,:, 221) ! rate_const*BCARY*OH + rxt_rates(:ncol,:, 454) = rxt_rates(:ncol,:, 454)*sol(:ncol,:, 109)*sol(:ncol,:, 125) ! rate_const*MTERP*NO3 + rxt_rates(:ncol,:, 455) = rxt_rates(:ncol,:, 455)*sol(:ncol,:, 109)*sol(:ncol,:, 137) ! rate_const*MTERP*O3 + rxt_rates(:ncol,:, 456) = rxt_rates(:ncol,:, 456)*sol(:ncol,:, 109)*sol(:ncol,:, 221) ! rate_const*MTERP*OH + rxt_rates(:ncol,:, 457) = rxt_rates(:ncol,:, 457)*sol(:ncol,:, 219)*sol(:ncol,:, 202) ! rate_const*NTERPO2*CH3O2 + rxt_rates(:ncol,:, 458) = rxt_rates(:ncol,:, 458)*sol(:ncol,:, 219)*sol(:ncol,:, 207) ! rate_const*NTERPO2*HO2 + rxt_rates(:ncol,:, 459) = rxt_rates(:ncol,:, 459)*sol(:ncol,:, 219)*sol(:ncol,:, 123) ! rate_const*NTERPO2*NO + rxt_rates(:ncol,:, 460) = rxt_rates(:ncol,:, 460)*sol(:ncol,:, 219)*sol(:ncol,:, 125) ! rate_const*NTERPO2*NO3 + rxt_rates(:ncol,:, 461) = rxt_rates(:ncol,:, 461)*sol(:ncol,:, 127)*sol(:ncol,:, 221) ! rate_const*NTERPOOH*OH + rxt_rates(:ncol,:, 462) = rxt_rates(:ncol,:, 462)*sol(:ncol,:, 225)*sol(:ncol,:, 202) ! rate_const*TERP2O2*CH3O2 + rxt_rates(:ncol,:, 463) = rxt_rates(:ncol,:, 463)*sol(:ncol,:, 225)*sol(:ncol,:, 207) ! rate_const*TERP2O2*HO2 + rxt_rates(:ncol,:, 464) = rxt_rates(:ncol,:, 464)*sol(:ncol,:, 225)*sol(:ncol,:, 123) ! rate_const*TERP2O2*NO + rxt_rates(:ncol,:, 465) = rxt_rates(:ncol,:, 465)*sol(:ncol,:, 178)*sol(:ncol,:, 221) ! rate_const*TERP2OOH*OH + rxt_rates(:ncol,:, 466) = rxt_rates(:ncol,:, 466)*sol(:ncol,:, 179)*sol(:ncol,:, 221) ! rate_const*TERPNIT*OH + rxt_rates(:ncol,:, 467) = rxt_rates(:ncol,:, 467)*sol(:ncol,:, 226)*sol(:ncol,:, 202) ! rate_const*TERPO2*CH3O2 + rxt_rates(:ncol,:, 468) = rxt_rates(:ncol,:, 468)*sol(:ncol,:, 226)*sol(:ncol,:, 207) ! rate_const*TERPO2*HO2 + rxt_rates(:ncol,:, 469) = rxt_rates(:ncol,:, 469)*sol(:ncol,:, 226)*sol(:ncol,:, 123) ! rate_const*TERPO2*NO + rxt_rates(:ncol,:, 470) = rxt_rates(:ncol,:, 470)*sol(:ncol,:, 180)*sol(:ncol,:, 221) ! rate_const*TERPOOH*OH + rxt_rates(:ncol,:, 471) = rxt_rates(:ncol,:, 471)*sol(:ncol,:, 181)*sol(:ncol,:, 125) ! rate_const*TERPROD1*NO3 + rxt_rates(:ncol,:, 472) = rxt_rates(:ncol,:, 472)*sol(:ncol,:, 181)*sol(:ncol,:, 221) ! rate_const*TERPROD1*OH + rxt_rates(:ncol,:, 473) = rxt_rates(:ncol,:, 473)*sol(:ncol,:, 182)*sol(:ncol,:, 221) ! rate_const*TERPROD2*OH + rxt_rates(:ncol,:, 474) = rxt_rates(:ncol,:, 474)*sol(:ncol,:, 66)*sol(:ncol,:, 125) ! rate_const*DMS*NO3 + rxt_rates(:ncol,:, 475) = rxt_rates(:ncol,:, 475)*sol(:ncol,:, 66)*sol(:ncol,:, 221) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 476) = rxt_rates(:ncol,:, 476)*sol(:ncol,:, 140)*sol(:ncol,:, 133) ! rate_const*OCS*O + rxt_rates(:ncol,:, 477) = rxt_rates(:ncol,:, 477)*sol(:ncol,:, 140)*sol(:ncol,:, 221) ! rate_const*OCS*OH + rxt_rates(:ncol,:, 478) = rxt_rates(:ncol,:, 478)*sol(:ncol,:, 151)*sol(:ncol,:, 134) ! rate_const*S*O2 + rxt_rates(:ncol,:, 479) = rxt_rates(:ncol,:, 479)*sol(:ncol,:, 154)*sol(:ncol,:, 221) ! rate_const*M*SO2*OH + rxt_rates(:ncol,:, 480) = rxt_rates(:ncol,:, 480)*sol(:ncol,:, 151)*sol(:ncol,:, 137) ! rate_const*S*O3 + rxt_rates(:ncol,:, 481) = rxt_rates(:ncol,:, 481)*sol(:ncol,:, 153)*sol(:ncol,:, 18) ! rate_const*SO*BRO + rxt_rates(:ncol,:, 482) = rxt_rates(:ncol,:, 482)*sol(:ncol,:, 153)*sol(:ncol,:, 58) ! rate_const*SO*CLO + rxt_rates(:ncol,:, 483) = rxt_rates(:ncol,:, 483)*sol(:ncol,:, 151)*sol(:ncol,:, 221) ! rate_const*S*OH + rxt_rates(:ncol,:, 484) = rxt_rates(:ncol,:, 484)*sol(:ncol,:, 153)*sol(:ncol,:, 124) ! rate_const*SO*NO2 + rxt_rates(:ncol,:, 485) = rxt_rates(:ncol,:, 485)*sol(:ncol,:, 153)*sol(:ncol,:, 134) ! rate_const*SO*O2 + rxt_rates(:ncol,:, 486) = rxt_rates(:ncol,:, 486)*sol(:ncol,:, 153)*sol(:ncol,:, 137) ! rate_const*SO*O3 + rxt_rates(:ncol,:, 487) = rxt_rates(:ncol,:, 487)*sol(:ncol,:, 153)*sol(:ncol,:, 139) ! rate_const*SO*OCLO + rxt_rates(:ncol,:, 488) = rxt_rates(:ncol,:, 488)*sol(:ncol,:, 153)*sol(:ncol,:, 221) ! rate_const*SO*OH + rxt_rates(:ncol,:, 489) = rxt_rates(:ncol,:, 489)*sol(:ncol,:, 66)*sol(:ncol,:, 221) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 490) = rxt_rates(:ncol,:, 490)*sol(:ncol,:, 155)*sol(:ncol,:, 233) ! rate_const*SO3*H2O + rxt_rates(:ncol,:, 491) = rxt_rates(:ncol,:, 491)*sol(:ncol,:, 119)*sol(:ncol,:, 221) ! rate_const*NH3*OH + rxt_rates(:ncol,:, 492) = rxt_rates(:ncol,:, 492)*sol(:ncol,:, 207) ! rate_const*HO2 + rxt_rates(:ncol,:, 493) = rxt_rates(:ncol,:, 493)*sol(:ncol,:, 92) ! rate_const*HONITR + rxt_rates(:ncol,:, 494) = rxt_rates(:ncol,:, 494)*sol(:ncol,:, 98) ! rate_const*ISOPNITA + rxt_rates(:ncol,:, 495) = rxt_rates(:ncol,:, 495)*sol(:ncol,:, 99) ! rate_const*ISOPNITB + rxt_rates(:ncol,:, 496) = rxt_rates(:ncol,:, 496)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 497) = rxt_rates(:ncol,:, 497)*sol(:ncol,:, 114) ! rate_const*NC4CH2OH + rxt_rates(:ncol,:, 498) = rxt_rates(:ncol,:, 498)*sol(:ncol,:, 115) ! rate_const*NC4CHO + rxt_rates(:ncol,:, 499) = rxt_rates(:ncol,:, 499)*sol(:ncol,:, 120) ! rate_const*NH4 + rxt_rates(:ncol,:, 500) = rxt_rates(:ncol,:, 500)*sol(:ncol,:, 124) ! rate_const*NO2 + rxt_rates(:ncol,:, 501) = rxt_rates(:ncol,:, 501)*sol(:ncol,:, 125) ! rate_const*NO3 + rxt_rates(:ncol,:, 502) = rxt_rates(:ncol,:, 502)*sol(:ncol,:, 127) ! rate_const*NTERPOOH + rxt_rates(:ncol,:, 503) = rxt_rates(:ncol,:, 503)*sol(:ncol,:, 141) ! rate_const*ONITR + rxt_rates(:ncol,:, 504) = rxt_rates(:ncol,:, 504)*sol(:ncol,:, 179) ! rate_const*TERPNIT + rxt_rates(:ncol,:, 505) = rxt_rates(:ncol,:, 505)*sol(:ncol,:, 5)*sol(:ncol,:, 125) ! rate_const*BCARY*NO3 + rxt_rates(:ncol,:, 506) = rxt_rates(:ncol,:, 506)*sol(:ncol,:, 194)*sol(:ncol,:, 207) ! rate_const*BCARYO2VBS*HO2 + rxt_rates(:ncol,:, 507) = rxt_rates(:ncol,:, 507)*sol(:ncol,:, 194)*sol(:ncol,:, 123) ! rate_const*BCARYO2VBS*NO + rxt_rates(:ncol,:, 508) = rxt_rates(:ncol,:, 508)*sol(:ncol,:, 5)*sol(:ncol,:, 137) ! rate_const*BCARY*O3 + rxt_rates(:ncol,:, 509) = rxt_rates(:ncol,:, 509)*sol(:ncol,:, 5)*sol(:ncol,:, 221) ! rate_const*BCARY*OH + rxt_rates(:ncol,:, 510) = rxt_rates(:ncol,:, 510)*sol(:ncol,:, 6)*sol(:ncol,:, 221) ! rate_const*BENZENE*OH + rxt_rates(:ncol,:, 511) = rxt_rates(:ncol,:, 511)*sol(:ncol,:, 196)*sol(:ncol,:, 207) ! rate_const*BENZO2VBS*HO2 + rxt_rates(:ncol,:, 512) = rxt_rates(:ncol,:, 512)*sol(:ncol,:, 196)*sol(:ncol,:, 123) ! rate_const*BENZO2VBS*NO + rxt_rates(:ncol,:, 513) = rxt_rates(:ncol,:, 513)*sol(:ncol,:, 97)*sol(:ncol,:, 125) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 514) = rxt_rates(:ncol,:, 514)*sol(:ncol,:, 211)*sol(:ncol,:, 207) ! rate_const*ISOPO2VBS*HO2 + rxt_rates(:ncol,:, 515) = rxt_rates(:ncol,:, 515)*sol(:ncol,:, 211)*sol(:ncol,:, 123) ! rate_const*ISOPO2VBS*NO + rxt_rates(:ncol,:, 516) = rxt_rates(:ncol,:, 516)*sol(:ncol,:, 97)*sol(:ncol,:, 137) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 517) = rxt_rates(:ncol,:, 517)*sol(:ncol,:, 97)*sol(:ncol,:, 221) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 518) = rxt_rates(:ncol,:, 518)*sol(:ncol,:, 212)*sol(:ncol,:, 207) ! rate_const*IVOCO2VBS*HO2 + rxt_rates(:ncol,:, 519) = rxt_rates(:ncol,:, 519)*sol(:ncol,:, 212)*sol(:ncol,:, 123) ! rate_const*IVOCO2VBS*NO + rxt_rates(:ncol,:, 520) = rxt_rates(:ncol,:, 520)*sol(:ncol,:, 103)*sol(:ncol,:, 221) ! rate_const*IVOC*OH + rxt_rates(:ncol,:, 521) = rxt_rates(:ncol,:, 521)*sol(:ncol,:, 109)*sol(:ncol,:, 125) ! rate_const*MTERP*NO3 + rxt_rates(:ncol,:, 522) = rxt_rates(:ncol,:, 522)*sol(:ncol,:, 218)*sol(:ncol,:, 207) ! rate_const*MTERPO2VBS*HO2 + rxt_rates(:ncol,:, 523) = rxt_rates(:ncol,:, 523)*sol(:ncol,:, 218)*sol(:ncol,:, 123) ! rate_const*MTERPO2VBS*NO + rxt_rates(:ncol,:, 524) = rxt_rates(:ncol,:, 524)*sol(:ncol,:, 109)*sol(:ncol,:, 137) ! rate_const*MTERP*O3 + rxt_rates(:ncol,:, 525) = rxt_rates(:ncol,:, 525)*sol(:ncol,:, 109)*sol(:ncol,:, 221) ! rate_const*MTERP*OH + rxt_rates(:ncol,:, 526) = rxt_rates(:ncol,:, 526)*sol(:ncol,:, 176)*sol(:ncol,:, 221) ! rate_const*SVOC*OH + rxt_rates(:ncol,:, 527) = rxt_rates(:ncol,:, 527)*sol(:ncol,:, 184)*sol(:ncol,:, 221) ! rate_const*TOLUENE*OH + rxt_rates(:ncol,:, 528) = rxt_rates(:ncol,:, 528)*sol(:ncol,:, 228)*sol(:ncol,:, 207) ! rate_const*TOLUO2VBS*HO2 + rxt_rates(:ncol,:, 529) = rxt_rates(:ncol,:, 529)*sol(:ncol,:, 228)*sol(:ncol,:, 123) ! rate_const*TOLUO2VBS*NO + rxt_rates(:ncol,:, 530) = rxt_rates(:ncol,:, 530)*sol(:ncol,:, 74) ! rate_const*GLYOXAL + rxt_rates(:ncol,:, 531) = rxt_rates(:ncol,:, 531)*sol(:ncol,:, 186)*sol(:ncol,:, 221) ! rate_const*XYLENES*OH + rxt_rates(:ncol,:, 532) = rxt_rates(:ncol,:, 532)*sol(:ncol,:, 231)*sol(:ncol,:, 207) ! rate_const*XYLEO2VBS*HO2 + rxt_rates(:ncol,:, 533) = rxt_rates(:ncol,:, 533)*sol(:ncol,:, 231)*sol(:ncol,:, 123) ! rate_const*XYLEO2VBS*NO + rxt_rates(:ncol,:, 534) = rxt_rates(:ncol,:, 534)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 535) = rxt_rates(:ncol,:, 535)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 536) = rxt_rates(:ncol,:, 536)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 537) = rxt_rates(:ncol,:, 537)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 538) = rxt_rates(:ncol,:, 538)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 539) = rxt_rates(:ncol,:, 539)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 540) = rxt_rates(:ncol,:, 540)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 541) = rxt_rates(:ncol,:, 541)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 542) = rxt_rates(:ncol,:, 542)*sol(:ncol,:, 90)*sol(:ncol,:, 84) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 543) = rxt_rates(:ncol,:, 543)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 544) = rxt_rates(:ncol,:, 544)*sol(:ncol,:, 19) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 545) = rxt_rates(:ncol,:, 545)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 546) = rxt_rates(:ncol,:, 546)*sol(:ncol,:, 91)*sol(:ncol,:, 84) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 547) = rxt_rates(:ncol,:, 547)*sol(:ncol,:, 90)*sol(:ncol,:, 84) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 548) = rxt_rates(:ncol,:, 548)*sol(:ncol,:, 113) ! rate_const*N2O5 + rxt_rates(:ncol,:, 549) = rxt_rates(:ncol,:, 549)*sol(:ncol,:, 59) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 550) = rxt_rates(:ncol,:, 550)*sol(:ncol,:, 59)*sol(:ncol,:, 84) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 551) = rxt_rates(:ncol,:, 551)*sol(:ncol,:, 122) ! rate_const*NH_50 + rxt_rates(:ncol,:, 552) = rxt_rates(:ncol,:, 552)*sol(:ncol,:, 121) ! rate_const*NH_5 + rxt_rates(:ncol,:, 553) = rxt_rates(:ncol,:, 553)*sol(:ncol,:, 175) ! rate_const*ST80_25 + end subroutine set_rates +end module mo_rxt_rates_conv diff --git a/src/chemistry/pp_trop_strat_mam5_t1s2/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_setrxt.F90 new file mode 100644 index 0000000000..698739f57c --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_setrxt.F90 @@ -0,0 +1,723 @@ + + module mo_setrxt + + use shr_kind_mod, only : r8 => shr_kind_r8 + + private + public :: setrxt + public :: setrxt_hrates + + contains + + subroutine setrxt( rate, temp, m, ncol ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + real(r8) :: itemp(ncol*pver) + real(r8) :: exp_fac(ncol*pver) + real(r8) :: ko(ncol*pver) + real(r8) :: kinf(ncol*pver) + + rate(:,124) = 1.29e-07_r8 + rate(:,125) = 0.000258_r8 + rate(:,126) = 0.085_r8 + rate(:,127) = 1.2e-10_r8 + rate(:,132) = 1.2e-10_r8 + rate(:,133) = 1.2e-10_r8 + rate(:,134) = 1e-20_r8 + rate(:,135) = 1.3e-16_r8 + rate(:,137) = 4.2e-13_r8 + rate(:,139) = 8e-14_r8 + rate(:,140) = 3.9e-17_r8 + rate(:,147) = 6.9e-12_r8 + rate(:,148) = 7.2e-11_r8 + rate(:,149) = 1.6e-12_r8 + rate(:,155) = 1.8e-12_r8 + rate(:,159) = 1.8e-12_r8 + rate(:,171) = 3.5e-12_r8 + rate(:,173) = 1.3e-11_r8 + rate(:,174) = 2.2e-11_r8 + rate(:,175) = 5e-11_r8 + rate(:,210) = 1.7e-13_r8 + rate(:,212) = 2.607e-10_r8 + rate(:,213) = 9.75e-11_r8 + rate(:,214) = 2.07e-10_r8 + rate(:,215) = 2.088e-10_r8 + rate(:,216) = 1.17e-10_r8 + rate(:,217) = 4.644e-11_r8 + rate(:,218) = 1.204e-10_r8 + rate(:,219) = 9.9e-11_r8 + rate(:,220) = 3.3e-12_r8 + rate(:,239) = 4.5e-11_r8 + rate(:,240) = 4.62e-10_r8 + rate(:,241) = 1.2e-10_r8 + rate(:,242) = 9e-11_r8 + rate(:,243) = 3e-11_r8 + rate(:,248) = 2.14e-11_r8 + rate(:,249) = 1.9e-10_r8 + rate(:,262) = 2.57e-10_r8 + rate(:,263) = 1.8e-10_r8 + rate(:,264) = 1.794e-10_r8 + rate(:,265) = 1.3e-10_r8 + rate(:,266) = 7.65e-11_r8 + rate(:,279) = 4e-13_r8 + rate(:,283) = 1.31e-10_r8 + rate(:,284) = 3.5e-11_r8 + rate(:,285) = 9e-12_r8 + rate(:,292) = 6.8e-14_r8 + rate(:,293) = 2e-13_r8 + rate(:,308) = 1e-12_r8 + rate(:,312) = 1e-14_r8 + rate(:,313) = 1e-11_r8 + rate(:,314) = 1.15e-11_r8 + rate(:,315) = 4e-14_r8 + rate(:,328) = 3e-12_r8 + rate(:,329) = 6.7e-13_r8 + rate(:,339) = 3.5e-13_r8 + rate(:,340) = 5.4e-11_r8 + rate(:,343) = 2e-12_r8 + rate(:,344) = 1.4e-11_r8 + rate(:,347) = 2.4e-12_r8 + rate(:,358) = 5e-12_r8 + rate(:,368) = 2.2e-12_r8 + rate(:,370) = 6.7e-12_r8 + rate(:,373) = 3.5e-12_r8 + rate(:,376) = 1.3e-11_r8 + rate(:,377) = 1.4e-11_r8 + rate(:,381) = 2.4e-12_r8 + rate(:,382) = 1.4e-11_r8 + rate(:,387) = 2.4e-12_r8 + rate(:,388) = 4e-11_r8 + rate(:,389) = 4e-11_r8 + rate(:,391) = 1.4e-11_r8 + rate(:,395) = 2.4e-12_r8 + rate(:,396) = 4e-11_r8 + rate(:,400) = 7e-11_r8 + rate(:,401) = 1e-10_r8 + rate(:,406) = 2.4e-12_r8 + rate(:,421) = 4.7e-11_r8 + rate(:,434) = 2.1e-12_r8 + rate(:,435) = 2.8e-13_r8 + rate(:,443) = 1.7e-11_r8 + rate(:,449) = 8.4e-11_r8 + rate(:,451) = 1.9e-11_r8 + rate(:,452) = 1.2e-14_r8 + rate(:,453) = 2e-10_r8 + rate(:,460) = 2.4e-12_r8 + rate(:,461) = 2e-11_r8 + rate(:,465) = 2.3e-11_r8 + rate(:,466) = 2e-11_r8 + rate(:,470) = 3.3e-11_r8 + rate(:,471) = 1e-12_r8 + rate(:,472) = 5.7e-11_r8 + rate(:,473) = 3.4e-11_r8 + rate(:,478) = 2.3e-12_r8 + rate(:,480) = 1.2e-11_r8 + rate(:,481) = 5.7e-11_r8 + rate(:,482) = 2.8e-11_r8 + rate(:,483) = 6.6e-11_r8 + rate(:,484) = 1.4e-11_r8 + rate(:,487) = 1.9e-12_r8 + rate(:,499) = 6.34e-08_r8 + rate(:,505) = 1.9e-11_r8 + rate(:,508) = 1.2e-14_r8 + rate(:,509) = 2e-10_r8 + rate(:,520) = 1.34e-11_r8 + rate(:,526) = 1.34e-11_r8 + rate(:,531) = 1.7e-11_r8 + rate(:,551) = 2.31e-07_r8 + rate(:,552) = 2.31e-06_r8 + rate(:,553) = 4.63e-07_r8 + + do n = 1,pver + offset = (n-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n) + end do + + rate(:,128) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) ) + rate(:,129) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + exp_fac(:) = exp( 55._r8 * itemp(:) ) + rate(:,130) = 2.64e-11_r8 * exp_fac(:) + rate(:,131) = 6.6e-12_r8 * exp_fac(:) + rate(:,136) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) ) + rate(:,138) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) ) + rate(:,141) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) ) + rate(:,142) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:,145) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) ) + exp_fac(:) = exp( -2000._r8 * itemp(:) ) + rate(:,146) = 1.4e-12_r8 * exp_fac(:) + rate(:,397) = 1.05e-14_r8 * exp_fac(:) + rate(:,516) = 1.05e-14_r8 * exp_fac(:) + exp_fac(:) = exp( 200._r8 * itemp(:) ) + rate(:,151) = 3e-11_r8 * exp_fac(:) + rate(:,237) = 5.5e-12_r8 * exp_fac(:) + rate(:,276) = 3.8e-12_r8 * exp_fac(:) + rate(:,297) = 3.8e-12_r8 * exp_fac(:) + rate(:,324) = 3.8e-12_r8 * exp_fac(:) + rate(:,332) = 3.8e-12_r8 * exp_fac(:) + rate(:,336) = 3.8e-12_r8 * exp_fac(:) + rate(:,352) = 2.3e-11_r8 * exp_fac(:) + rate(:,362) = 3.8e-12_r8 * exp_fac(:) + rate(:,372) = 3.8e-12_r8 * exp_fac(:) + rate(:,399) = 1.52e-11_r8 * exp_fac(:) + rate(:,407) = 1.52e-12_r8 * exp_fac(:) + rate(:,413) = 3.8e-12_r8 * exp_fac(:) + rate(:,416) = 3.8e-12_r8 * exp_fac(:) + rate(:,420) = 3.8e-12_r8 * exp_fac(:) + rate(:,436) = 3.8e-12_r8 * exp_fac(:) + rate(:,440) = 3.8e-12_r8 * exp_fac(:) + rate(:,446) = 3.8e-12_r8 * exp_fac(:) + rate(:,450) = 3.8e-12_r8 * exp_fac(:) + rate(:,152) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:,153) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:,154) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) ) + exp_fac(:) = exp( 250._r8 * itemp(:) ) + rate(:,156) = 4.8e-11_r8 * exp_fac(:) + rate(:,235) = 1.7e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 180._r8 * itemp(:) ) + rate(:,157) = 1.8e-11_r8 * exp_fac(:) + rate(:,310) = 4.2e-12_r8 * exp_fac(:) + rate(:,331) = 4.2e-12_r8 * exp_fac(:) + rate(:,360) = 4.2e-12_r8 * exp_fac(:) + rate(:,380) = 4.4e-12_r8 * exp_fac(:) + rate(:,386) = 4.4e-12_r8 * exp_fac(:) + rate(:,459) = 4.2e-12_r8 * exp_fac(:) + rate(:,464) = 4.2e-12_r8 * exp_fac(:) + rate(:,469) = 4.2e-12_r8 * exp_fac(:) + rate(:,158) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:,162) = 4.5e-13_r8 * exp( 610._r8 * itemp(:) ) + rate(:,163) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + exp_fac(:) = exp( 220._r8 * itemp(:) ) + rate(:,164) = 2.9e-12_r8 * exp_fac(:) + rate(:,165) = 1.45e-12_r8 * exp_fac(:) + rate(:,166) = 1.45e-12_r8 * exp_fac(:) + rate(:,167) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:,168) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + exp_fac(:) = exp( -2450._r8 * itemp(:) ) + rate(:,169) = 1.2e-13_r8 * exp_fac(:) + rate(:,195) = 3e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 125._r8 * itemp(:) ) + rate(:,172) = 1.7e-11_r8 * exp_fac(:) + rate(:,270) = 5.5e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 260._r8 * itemp(:) ) + rate(:,176) = 3.44e-12_r8 * exp_fac(:) + rate(:,228) = 2.3e-12_r8 * exp_fac(:) + rate(:,231) = 8.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( -1500._r8 * itemp(:) ) + rate(:,177) = 3e-12_r8 * exp_fac(:) + rate(:,236) = 5.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 20._r8 * itemp(:) ) + rate(:,179) = 7.26e-11_r8 * exp_fac(:) + rate(:,180) = 4.64e-11_r8 * exp_fac(:) + rate(:,187) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) ) + rate(:,188) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) ) + rate(:,189) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) ) + rate(:,190) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) ) + exp_fac(:) = exp( 270._r8 * itemp(:) ) + rate(:,191) = 1.4e-11_r8 * exp_fac(:) + rate(:,205) = 7.4e-12_r8 * exp_fac(:) + rate(:,306) = 8.1e-12_r8 * exp_fac(:) + rate(:,192) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) ) + rate(:,193) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) ) + rate(:,194) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) ) + rate(:,196) = 1e-12_r8 * exp( -1590._r8 * itemp(:) ) + rate(:,197) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) ) + exp_fac(:) = exp( 290._r8 * itemp(:) ) + rate(:,198) = 2.6e-12_r8 * exp_fac(:) + rate(:,199) = 6.4e-12_r8 * exp_fac(:) + rate(:,229) = 4.1e-13_r8 * exp_fac(:) + rate(:,409) = 7.5e-12_r8 * exp_fac(:) + rate(:,423) = 7.5e-12_r8 * exp_fac(:) + rate(:,426) = 7.5e-12_r8 * exp_fac(:) + rate(:,429) = 7.5e-12_r8 * exp_fac(:) + rate(:,200) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) ) + exp_fac(:) = exp( -840._r8 * itemp(:) ) + rate(:,202) = 3.6e-12_r8 * exp_fac(:) + rate(:,251) = 2e-12_r8 * exp_fac(:) + rate(:,203) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) ) + rate(:,204) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) ) + exp_fac(:) = exp( 230._r8 * itemp(:) ) + rate(:,206) = 6e-13_r8 * exp_fac(:) + rate(:,226) = 1.5e-12_r8 * exp_fac(:) + rate(:,234) = 1.9e-11_r8 * exp_fac(:) + rate(:,207) = 1e-11_r8 * exp( -3300._r8 * itemp(:) ) + rate(:,208) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) ) + rate(:,209) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) ) + exp_fac(:) = exp( -500._r8 * itemp(:) ) + rate(:,211) = 3e-12_r8 * exp_fac(:) + rate(:,245) = 1.4e-10_r8 * exp_fac(:) + exp_fac(:) = exp( -800._r8 * itemp(:) ) + rate(:,223) = 1.7e-11_r8 * exp_fac(:) + rate(:,250) = 6.3e-12_r8 * exp_fac(:) + rate(:,224) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) ) + rate(:,225) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) ) + rate(:,227) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) ) + rate(:,230) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) ) + rate(:,233) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) ) + rate(:,238) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) ) + rate(:,244) = 1.6e-10_r8 * exp( -260._r8 * itemp(:) ) + exp_fac(:) = exp( 0._r8 * itemp(:) ) + rate(:,246) = 1.4e-11_r8 * exp_fac(:) + rate(:,248) = 2.14e-11_r8 * exp_fac(:) + rate(:,249) = 1.9e-10_r8 * exp_fac(:) + rate(:,262) = 2.57e-10_r8 * exp_fac(:) + rate(:,263) = 1.8e-10_r8 * exp_fac(:) + rate(:,264) = 1.794e-10_r8 * exp_fac(:) + rate(:,265) = 1.3e-10_r8 * exp_fac(:) + rate(:,266) = 7.65e-11_r8 * exp_fac(:) + rate(:,279) = 4e-13_r8 * exp_fac(:) + rate(:,283) = 1.31e-10_r8 * exp_fac(:) + rate(:,284) = 3.5e-11_r8 * exp_fac(:) + rate(:,285) = 9e-12_r8 * exp_fac(:) + rate(:,292) = 6.8e-14_r8 * exp_fac(:) + rate(:,293) = 2e-13_r8 * exp_fac(:) + rate(:,308) = 1e-12_r8 * exp_fac(:) + rate(:,312) = 1e-14_r8 * exp_fac(:) + rate(:,313) = 1e-11_r8 * exp_fac(:) + rate(:,314) = 1.15e-11_r8 * exp_fac(:) + rate(:,315) = 4e-14_r8 * exp_fac(:) + rate(:,328) = 3e-12_r8 * exp_fac(:) + rate(:,329) = 6.7e-13_r8 * exp_fac(:) + rate(:,339) = 3.5e-13_r8 * exp_fac(:) + rate(:,340) = 5.4e-11_r8 * exp_fac(:) + rate(:,343) = 2e-12_r8 * exp_fac(:) + rate(:,344) = 1.4e-11_r8 * exp_fac(:) + rate(:,347) = 2.4e-12_r8 * exp_fac(:) + rate(:,358) = 5e-12_r8 * exp_fac(:) + rate(:,368) = 2.2e-12_r8 * exp_fac(:) + rate(:,370) = 6.7e-12_r8 * exp_fac(:) + rate(:,373) = 3.5e-12_r8 * exp_fac(:) + rate(:,376) = 1.3e-11_r8 * exp_fac(:) + rate(:,377) = 1.4e-11_r8 * exp_fac(:) + rate(:,381) = 2.4e-12_r8 * exp_fac(:) + rate(:,382) = 1.4e-11_r8 * exp_fac(:) + rate(:,387) = 2.4e-12_r8 * exp_fac(:) + rate(:,388) = 4e-11_r8 * exp_fac(:) + rate(:,389) = 4e-11_r8 * exp_fac(:) + rate(:,391) = 1.4e-11_r8 * exp_fac(:) + rate(:,395) = 2.4e-12_r8 * exp_fac(:) + rate(:,396) = 4e-11_r8 * exp_fac(:) + rate(:,400) = 7e-11_r8 * exp_fac(:) + rate(:,401) = 1e-10_r8 * exp_fac(:) + rate(:,406) = 2.4e-12_r8 * exp_fac(:) + rate(:,421) = 4.7e-11_r8 * exp_fac(:) + rate(:,434) = 2.1e-12_r8 * exp_fac(:) + rate(:,435) = 2.8e-13_r8 * exp_fac(:) + rate(:,443) = 1.7e-11_r8 * exp_fac(:) + rate(:,449) = 8.4e-11_r8 * exp_fac(:) + rate(:,451) = 1.9e-11_r8 * exp_fac(:) + rate(:,452) = 1.2e-14_r8 * exp_fac(:) + rate(:,453) = 2e-10_r8 * exp_fac(:) + rate(:,460) = 2.4e-12_r8 * exp_fac(:) + rate(:,461) = 2e-11_r8 * exp_fac(:) + rate(:,465) = 2.3e-11_r8 * exp_fac(:) + rate(:,466) = 2e-11_r8 * exp_fac(:) + rate(:,470) = 3.3e-11_r8 * exp_fac(:) + rate(:,471) = 1e-12_r8 * exp_fac(:) + rate(:,472) = 5.7e-11_r8 * exp_fac(:) + rate(:,473) = 3.4e-11_r8 * exp_fac(:) + rate(:,478) = 2.3e-12_r8 * exp_fac(:) + rate(:,480) = 1.2e-11_r8 * exp_fac(:) + rate(:,481) = 5.7e-11_r8 * exp_fac(:) + rate(:,482) = 2.8e-11_r8 * exp_fac(:) + rate(:,483) = 6.6e-11_r8 * exp_fac(:) + rate(:,484) = 1.4e-11_r8 * exp_fac(:) + rate(:,487) = 1.9e-12_r8 * exp_fac(:) + rate(:,499) = 6.34e-08_r8 * exp_fac(:) + rate(:,505) = 1.9e-11_r8 * exp_fac(:) + rate(:,508) = 1.2e-14_r8 * exp_fac(:) + rate(:,509) = 2e-10_r8 * exp_fac(:) + rate(:,520) = 1.34e-11_r8 * exp_fac(:) + rate(:,526) = 1.34e-11_r8 * exp_fac(:) + rate(:,531) = 1.7e-11_r8 * exp_fac(:) + rate(:,551) = 2.31e-07_r8 * exp_fac(:) + rate(:,552) = 2.31e-06_r8 * exp_fac(:) + rate(:,553) = 4.63e-07_r8 * exp_fac(:) + exp_fac(:) = exp( 400._r8 * itemp(:) ) + rate(:,247) = 6e-12_r8 * exp_fac(:) + rate(:,345) = 5e-13_r8 * exp_fac(:) + rate(:,378) = 5e-13_r8 * exp_fac(:) + rate(:,383) = 5e-13_r8 * exp_fac(:) + rate(:,392) = 5e-13_r8 * exp_fac(:) + rate(:,403) = 5e-13_r8 * exp_fac(:) + rate(:,252) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) ) + rate(:,253) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) ) + exp_fac(:) = exp( -1520._r8 * itemp(:) ) + rate(:,254) = 1.64e-12_r8 * exp_fac(:) + rate(:,364) = 8.5e-16_r8 * exp_fac(:) + exp_fac(:) = exp( -1100._r8 * itemp(:) ) + rate(:,255) = 2.03e-11_r8 * exp_fac(:) + rate(:,486) = 3.4e-12_r8 * exp_fac(:) + rate(:,256) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) ) + rate(:,257) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) ) + rate(:,258) = 9e-13_r8 * exp( -360._r8 * itemp(:) ) + exp_fac(:) = exp( -1600._r8 * itemp(:) ) + rate(:,259) = 1.25e-12_r8 * exp_fac(:) + rate(:,269) = 3.4e-11_r8 * exp_fac(:) + rate(:,260) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) ) + rate(:,261) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) ) + rate(:,267) = 9.7e-15_r8 * exp( 625._r8 * itemp(:) ) + rate(:,268) = 6e-13_r8 * exp( -2058._r8 * itemp(:) ) + rate(:,271) = 5e-13_r8 * exp( -424._r8 * itemp(:) ) + rate(:,272) = 1.9e-14_r8 * exp( 706._r8 * itemp(:) ) + rate(:,273) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) ) + exp_fac(:) = exp( 300._r8 * itemp(:) ) + rate(:,274) = 2.8e-12_r8 * exp_fac(:) + rate(:,335) = 2.9e-12_r8 * exp_fac(:) + rate(:,275) = 2.9e-12_r8 * exp( -345._r8 * itemp(:) ) + rate(:,277) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) ) + exp_fac(:) = exp( 700._r8 * itemp(:) ) + rate(:,280) = 7.5e-13_r8 * exp_fac(:) + rate(:,294) = 7.5e-13_r8 * exp_fac(:) + rate(:,309) = 7.5e-13_r8 * exp_fac(:) + rate(:,330) = 7.5e-13_r8 * exp_fac(:) + rate(:,334) = 8.6e-13_r8 * exp_fac(:) + rate(:,346) = 8e-13_r8 * exp_fac(:) + rate(:,359) = 7.5e-13_r8 * exp_fac(:) + rate(:,369) = 7.5e-13_r8 * exp_fac(:) + rate(:,379) = 8e-13_r8 * exp_fac(:) + rate(:,384) = 8e-13_r8 * exp_fac(:) + rate(:,393) = 8e-13_r8 * exp_fac(:) + rate(:,404) = 8e-13_r8 * exp_fac(:) + rate(:,411) = 7.5e-13_r8 * exp_fac(:) + rate(:,415) = 7.5e-13_r8 * exp_fac(:) + rate(:,418) = 7.5e-13_r8 * exp_fac(:) + rate(:,431) = 7.5e-13_r8 * exp_fac(:) + rate(:,438) = 7.5e-13_r8 * exp_fac(:) + rate(:,444) = 7.5e-13_r8 * exp_fac(:) + rate(:,447) = 7.5e-13_r8 * exp_fac(:) + rate(:,458) = 7.5e-13_r8 * exp_fac(:) + rate(:,463) = 7.5e-13_r8 * exp_fac(:) + rate(:,468) = 7.5e-13_r8 * exp_fac(:) + rate(:,511) = 7.5e-13_r8 * exp_fac(:) + rate(:,518) = 7.5e-13_r8 * exp_fac(:) + rate(:,528) = 7.5e-13_r8 * exp_fac(:) + rate(:,532) = 7.5e-13_r8 * exp_fac(:) + rate(:,281) = 2.4e+12_r8 * exp( -7000._r8 * itemp(:) ) + rate(:,282) = 2.6e-12_r8 * exp( 265._r8 * itemp(:) ) + rate(:,286) = 1.08e-10_r8 * exp( 105._r8 * itemp(:) ) + rate(:,291) = 1.2e-14_r8 * exp( -2630._r8 * itemp(:) ) + exp_fac(:) = exp( 365._r8 * itemp(:) ) + rate(:,295) = 2.6e-12_r8 * exp_fac(:) + rate(:,412) = 2.6e-12_r8 * exp_fac(:) + rate(:,417) = 2.6e-12_r8 * exp_fac(:) + rate(:,419) = 2.6e-12_r8 * exp_fac(:) + rate(:,432) = 2.6e-12_r8 * exp_fac(:) + rate(:,439) = 2.6e-12_r8 * exp_fac(:) + rate(:,445) = 2.6e-12_r8 * exp_fac(:) + rate(:,448) = 2.6e-12_r8 * exp_fac(:) + rate(:,512) = 2.6e-12_r8 * exp_fac(:) + rate(:,519) = 2.6e-12_r8 * exp_fac(:) + rate(:,529) = 2.6e-12_r8 * exp_fac(:) + rate(:,533) = 2.6e-12_r8 * exp_fac(:) + rate(:,296) = 6.9e-12_r8 * exp( -230._r8 * itemp(:) ) + rate(:,298) = 7.2e-11_r8 * exp( -70._r8 * itemp(:) ) + rate(:,299) = 7.66e-12_r8 * exp( -1020._r8 * itemp(:) ) + exp_fac(:) = exp( -1900._r8 * itemp(:) ) + rate(:,300) = 1.4e-12_r8 * exp_fac(:) + rate(:,320) = 6.5e-15_r8 * exp_fac(:) + exp_fac(:) = exp( 350._r8 * itemp(:) ) + rate(:,301) = 4.63e-12_r8 * exp_fac(:) + rate(:,515) = 2.7e-12_r8 * exp_fac(:) + rate(:,302) = 7.8e-13_r8 * exp( -1050._r8 * itemp(:) ) + exp_fac(:) = exp( 500._r8 * itemp(:) ) + rate(:,303) = 2.9e-12_r8 * exp_fac(:) + rate(:,304) = 2e-12_r8 * exp_fac(:) + rate(:,333) = 7.1e-13_r8 * exp_fac(:) + rate(:,354) = 2e-12_r8 * exp_fac(:) + rate(:,457) = 2e-12_r8 * exp_fac(:) + rate(:,462) = 2e-12_r8 * exp_fac(:) + rate(:,467) = 2e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 1040._r8 * itemp(:) ) + rate(:,305) = 4.3e-13_r8 * exp_fac(:) + rate(:,355) = 4.3e-13_r8 * exp_fac(:) + rate(:,408) = 4.3e-13_r8 * exp_fac(:) + rate(:,422) = 4.3e-13_r8 * exp_fac(:) + rate(:,425) = 4.3e-13_r8 * exp_fac(:) + rate(:,428) = 4.3e-13_r8 * exp_fac(:) + rate(:,307) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) + rate(:,311) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) + rate(:,319) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) + rate(:,321) = 1e-13_r8 * exp( 557._r8 * itemp(:) ) + exp_fac(:) = exp( 1300._r8 * itemp(:) ) + rate(:,322) = 1.41e-13_r8 * exp_fac(:) + rate(:,506) = 2.75e-13_r8 * exp_fac(:) + rate(:,514) = 2.12e-13_r8 * exp_fac(:) + rate(:,522) = 2.6e-13_r8 * exp_fac(:) + exp_fac(:) = exp( 360._r8 * itemp(:) ) + rate(:,323) = 2.7e-12_r8 * exp_fac(:) + rate(:,348) = 2.7e-12_r8 * exp_fac(:) + rate(:,349) = 1.3e-13_r8 * exp_fac(:) + rate(:,351) = 9.6e-12_r8 * exp_fac(:) + rate(:,357) = 5.3e-12_r8 * exp_fac(:) + rate(:,394) = 2.7e-12_r8 * exp_fac(:) + rate(:,405) = 2.7e-12_r8 * exp_fac(:) + rate(:,507) = 2.7e-12_r8 * exp_fac(:) + rate(:,523) = 2.7e-12_r8 * exp_fac(:) + rate(:,325) = 9.19e-12_r8 * exp( -630._r8 * itemp(:) ) + rate(:,326) = 1.4e-12_r8 * exp( -1860._r8 * itemp(:) ) + rate(:,327) = 8.4e-13_r8 * exp( 830._r8 * itemp(:) ) + rate(:,341) = 4.8e-12_r8 * exp( 120._r8 * itemp(:) ) + rate(:,342) = 5.1e-14_r8 * exp( 693._r8 * itemp(:) ) + rate(:,350) = 1.5e-15_r8 * exp( -2100._r8 * itemp(:) ) + exp_fac(:) = exp( 530._r8 * itemp(:) ) + rate(:,353) = 4.6e-12_r8 * exp_fac(:) + rate(:,356) = 2.3e-12_r8 * exp_fac(:) + rate(:,361) = 2.3e-12_r8 * exp( -170._r8 * itemp(:) ) + rate(:,365) = 4.13e-12_r8 * exp( 452._r8 * itemp(:) ) + rate(:,371) = 5.4e-14_r8 * exp( 870._r8 * itemp(:) ) + exp_fac(:) = exp( 175._r8 * itemp(:) ) + rate(:,374) = 1.86e-11_r8 * exp_fac(:) + rate(:,375) = 1.86e-11_r8 * exp_fac(:) + rate(:,385) = 1.6e+09_r8 * exp( -8300._r8 * itemp(:) ) + exp_fac(:) = exp( -446._r8 * itemp(:) ) + rate(:,390) = 3.03e-12_r8 * exp_fac(:) + rate(:,513) = 3.03e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 410._r8 * itemp(:) ) + rate(:,398) = 2.54e-11_r8 * exp_fac(:) + rate(:,517) = 2.54e-11_r8 * exp_fac(:) + rate(:,402) = 1.3e-12_r8 * exp( 640._r8 * itemp(:) ) + exp_fac(:) = exp( -193._r8 * itemp(:) ) + rate(:,410) = 2.3e-12_r8 * exp_fac(:) + rate(:,510) = 2.3e-12_r8 * exp_fac(:) + rate(:,414) = 5.9e-12_r8 * exp( 225._r8 * itemp(:) ) + rate(:,433) = 4.7e-13_r8 * exp( 1220._r8 * itemp(:) ) + exp_fac(:) = exp( 352._r8 * itemp(:) ) + rate(:,441) = 1.7e-12_r8 * exp_fac(:) + rate(:,527) = 1.7e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 490._r8 * itemp(:) ) + rate(:,454) = 1.2e-12_r8 * exp_fac(:) + rate(:,521) = 1.2e-12_r8 * exp_fac(:) + exp_fac(:) = exp( -580._r8 * itemp(:) ) + rate(:,455) = 6.3e-16_r8 * exp_fac(:) + rate(:,524) = 6.3e-16_r8 * exp_fac(:) + exp_fac(:) = exp( 440._r8 * itemp(:) ) + rate(:,456) = 1.2e-11_r8 * exp_fac(:) + rate(:,525) = 1.2e-11_r8 * exp_fac(:) + rate(:,474) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) ) + rate(:,475) = 1.1e-11_r8 * exp( -280._r8 * itemp(:) ) + rate(:,476) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) ) + rate(:,477) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) ) + rate(:,485) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) ) + rate(:,488) = 2.6e-11_r8 * exp( 330._r8 * itemp(:) ) + rate(:,491) = 1.7e-12_r8 * exp( -710._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + n = ncol*pver + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( rate(:,150), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 6.9e-31_r8 * itemp(:)**1._r8 + kinf(:) = 2.6e-11_r8 + call jpl( rate(:,160), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8 + kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8 + call jpl( rate(:,170), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9e-32_r8 * itemp(:)**1.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,178), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8 + call jpl( rate(:,181), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.4e-30_r8 * itemp(:)**3._r8 + kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8) + call jpl( rate(:,182), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-30_r8 * itemp(:)**3._r8 + kinf(:) = 2.8e-11_r8 + call jpl( rate(:,183), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8 + call jpl( rate(:,201), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8 + kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,221), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8 + kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8 + call jpl( rate(:,232), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 6.1e-33_r8 * itemp(:)**1.5_r8 + kinf(:) = 9.8e-15_r8 * itemp(:)**(-4.6_r8) + call jpl( rate(:,278), m, 0.8_r8, ko, kinf, n ) + + ko(:) = 5.2e-30_r8 * itemp(:)**2.4_r8 + kinf(:) = 2.2e-10_r8 * itemp(:)**0.7_r8 + call jpl( rate(:,288), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 5.5e-30_r8 + kinf(:) = 8.3e-13_r8 * itemp(:)**(-2._r8) + call jpl( rate(:,289), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.6e-29_r8 * itemp(:)**3.3_r8 + kinf(:) = 3.1e-10_r8 * itemp(:) + call jpl( rate(:,290), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8.6e-29_r8 * itemp(:)**3.1_r8 + kinf(:) = 9e-12_r8 * itemp(:)**0.85_r8 + call jpl( rate(:,316), m, 0.48_r8, ko, kinf, n ) + + ko(:) = 7.3e-29_r8 * itemp(:)**4.1_r8 + kinf(:) = 9.5e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,317), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,337), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,363), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,366), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,424), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,427), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,430), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,437), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.9e-31_r8 * itemp(:)**4.1_r8 + kinf(:) = 1.7e-12_r8 * itemp(:)**(-0.2_r8) + call jpl( rate(:,479), m, 0.6_r8, ko, kinf, n ) + + end subroutine setrxt + + + subroutine setrxt_hrates( rate, temp, m, ncol, kbot ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + integer, intent(in) :: kbot + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + integer :: k + real(r8) :: itemp(ncol*kbot) + real(r8) :: exp_fac(ncol*kbot) + real(r8) :: ko(ncol*kbot) + real(r8) :: kinf(ncol*kbot) + real(r8) :: wrk(ncol*kbot) + + n = ncol*kbot + + rate(:n,134) = 1e-20_r8 + rate(:n,135) = 1.3e-16_r8 + rate(:n,139) = 8e-14_r8 + rate(:n,140) = 3.9e-17_r8 + rate(:n,147) = 6.9e-12_r8 + + do k = 1,kbot + offset = (k-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k) + end do + + rate(:n,129) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + exp_fac(:) = exp( 55._r8 * itemp(:) ) + rate(:n,130) = 2.64e-11_r8 * exp_fac(:) + rate(:n,131) = 6.6e-12_r8 * exp_fac(:) + rate(:n,136) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) ) + rate(:n,138) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) ) + rate(:n,141) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) ) + rate(:n,142) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:n,151) = 3e-11_r8 * exp( 200._r8 * itemp(:) ) + rate(:n,152) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:n,153) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:n,156) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) ) + rate(:n,157) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) ) + rate(:n,158) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:n,163) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + rate(:n,167) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:n,168) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + rate(:n,176) = 3.44e-12_r8 * exp( 260._r8 * itemp(:) ) + rate(:n,177) = 3e-12_r8 * exp( -1500._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( wrk, m, 0.6_r8, ko, kinf, n ) + rate(:n,150) = wrk(:) + + + + + + + + + + + + + + + + + + + + + + + + + end subroutine setrxt_hrates + + end module mo_setrxt diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_sim_dat.F90 b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_sim_dat.F90 similarity index 68% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_sim_dat.F90 rename to src/chemistry/pp_trop_strat_mam5_t1s2/mo_sim_dat.F90 index 8def9fb8ae..7d327b39a1 100644 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_sim_dat.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t1s2/mo_sim_dat.F90 @@ -31,159 +31,159 @@ subroutine set_sim_dat is_scalar = .false. is_vector = .true. - clscnt(:) = (/ 2, 0, 0, 229, 0 /) + clscnt(:) = (/ 2, 0, 0, 231, 0 /) cls_rxt_cnt(:,1) = (/ 9, 0, 0, 2 /) - cls_rxt_cnt(:,4) = (/ 2, 165, 374, 229 /) + cls_rxt_cnt(:,4) = (/ 0, 164, 389, 231 /) - solsym(:231) = (/ 'ALKNIT ','ALKOOH ','AOA_NH ','bc_a1 ','bc_a4 ', & - 'BCARY ','BENZENE ','BENZOOH ','BEPOMUC ','BIGALD ', & - 'BIGALD1 ','BIGALD2 ','BIGALD3 ','BIGALD4 ','BIGALK ', & - 'BIGENE ','BR ','BRCL ','BRO ','BRONO2 ', & - 'BRY ','BZALD ','BZOOH ','C2H2 ','C2H4 ', & - 'C2H5OH ','C2H5OOH ','C2H6 ','C3H6 ','C3H7OOH ', & - 'C3H8 ','C6H5OOH ','CCL4 ','CF2CLBR ','CF3BR ', & - 'CFC11 ','CFC113 ','CFC114 ','CFC115 ','CFC12 ', & - 'CH2BR2 ','CH2O ','CH3BR ','CH3CCL3 ','CH3CHO ', & - 'CH3CL ','CH3CN ','CH3COCH3 ','CH3COCHO ','CH3COOH ', & - 'CH3COOOH ','CH3OH ','CH3OOH ','CH4 ','CHBR3 ', & - 'CL ','CL2 ','CL2O2 ','CLO ','CLONO2 ', & - 'CLY ','CO ','CO2 ','COF2 ','COFCL ', & - 'CRESOL ','DMS ','dst_a1 ','dst_a2 ','dst_a3 ', & - 'E90 ','EOOH ','F ','GLYALD ','GLYOXAL ', & - 'H ','H2 ','H2402 ','H2O2 ','H2SO4 ', & - 'HBR ','HCFC141B ','HCFC142B ','HCFC22 ','HCL ', & - 'HCN ','HCOOH ','HF ','HNO3 ','HO2NO2 ', & - 'HOBR ','HOCL ','HONITR ','HPALD ','HYAC ', & - 'HYDRALD ','IEPOX ','ISOP ','ISOPNITA ','ISOPNITB ', & - 'ISOPNO3 ','ISOPNOOH ','ISOPOOH ','IVOC ','MACR ', & - 'MACROOH ','MEK ','MEKOOH ','MPAN ','MTERP ', & - 'MVK ','N ','N2O ','N2O5 ','NC4CH2OH ', & - 'NC4CHO ','ncl_a1 ','ncl_a2 ','ncl_a3 ','NH3 ', & - 'NH4 ','NH_5 ','NH_50 ','NO ','NO2 ', & - 'NO3 ','NOA ','NTERPOOH ','num_a1 ','num_a2 ', & - 'num_a3 ','num_a4 ','num_a5 ','O ','O3 ', & - 'O3S ','OCLO ','OCS ','ONITR ','PAN ', & - 'PBZNIT ','PHENO ','PHENOL ','PHENOOH ','pom_a1 ', & - 'pom_a4 ','POOH ','ROOH ','S ','SF6 ', & - 'SO ','SO2 ','SO3 ','so4_a1 ','so4_a2 ', & - 'so4_a3 ','so4_a5 ','soa1_a1 ','soa1_a2 ','soa2_a1 ', & - 'soa2_a2 ','soa3_a1 ','soa3_a2 ','soa4_a1 ','soa4_a2 ', & - 'soa5_a1 ','soa5_a2 ','SOAG0 ','SOAG1 ','SOAG2 ', & - 'SOAG3 ','SOAG4 ','ST80_25 ','SVOC ','TEPOMUC ', & - 'TERP2OOH ','TERPNIT ','TERPOOH ','TERPROD1 ','TERPROD2 ', & - 'TOLOOH ','TOLUENE ','XOOH ','XYLENES ','XYLENOOH ', & - 'XYLOL ','XYLOLOOH ','NHDEP ','NDEP ','ACBZO2 ', & - 'ALKO2 ','BCARYO2VBS ','BENZO2 ','BENZO2VBS ','BZOO ', & - 'C2H5O2 ','C3H7O2 ','C6H5O2 ','CH3CO3 ','CH3O2 ', & - 'DICARBO2 ','ENEO2 ','EO ','EO2 ','HO2 ', & - 'HOCH2OO ','ISOPAO2 ','ISOPBO2 ','ISOPO2VBS ','IVOCO2VBS ', & - 'MACRO2 ','MALO2 ','MCO3 ','MDIALO2 ','MEKO2 ', & - 'MTERPO2VBS ','NTERPO2 ','O1D ','OH ','PHENO2 ', & - 'PO2 ','RO2 ','TERP2O2 ','TERPO2 ','TOLO2 ', & - 'TOLUO2VBS ','XO2 ','XYLENO2 ','XYLEO2VBS ','XYLOLO2 ', & - 'H2O ' /) + solsym(:233) = (/ 'ALKNIT ','ALKOOH ','bc_a1 ','bc_a4 ','BCARY ', & + 'BENZENE ','BENZOOH ','BEPOMUC ','BIGALD ','BIGALD1 ', & + 'BIGALD2 ','BIGALD3 ','BIGALD4 ','BIGALK ','BIGENE ', & + 'BR ','BRCL ','BRO ','BRONO2 ','BRY ', & + 'BZALD ','BZOOH ','C2H2 ','C2H4 ','C2H5OH ', & + 'C2H5OOH ','C2H6 ','C3H6 ','C3H7OOH ','C3H8 ', & + 'C6H5OOH ','CCL4 ','CF2CLBR ','CF3BR ','CFC11 ', & + 'CFC113 ','CFC114 ','CFC115 ','CFC12 ','CH2BR2 ', & + 'CH2O ','CH3BR ','CH3CCL3 ','CH3CHO ','CH3CL ', & + 'CH3CN ','CH3COCH3 ','CH3COCHO ','CH3COOH ','CH3COOOH ', & + 'CH3OH ','CH3OOH ','CH4 ','CHBR3 ','CL ', & + 'CL2 ','CL2O2 ','CLO ','CLONO2 ','CLY ', & + 'CO ','CO2 ','COF2 ','COFCL ','CRESOL ', & + 'DMS ','dst_a1 ','dst_a2 ','dst_a3 ','E90 ', & + 'EOOH ','F ','GLYALD ','GLYOXAL ','H ', & + 'H2 ','H2402 ','H2O2 ','H2SO4 ','HBR ', & + 'HCFC141B ','HCFC142B ','HCFC22 ','HCL ','HCN ', & + 'HCOOH ','HF ','HNO3 ','HO2NO2 ','HOBR ', & + 'HOCL ','HONITR ','HPALD ','HYAC ','HYDRALD ', & + 'IEPOX ','ISOP ','ISOPNITA ','ISOPNITB ','ISOPNO3 ', & + 'ISOPNOOH ','ISOPOOH ','IVOC ','MACR ','MACROOH ', & + 'MEK ','MEKOOH ','MPAN ','MTERP ','MVK ', & + 'N ','N2O ','N2O5 ','NC4CH2OH ','NC4CHO ', & + 'ncl_a1 ','ncl_a2 ','ncl_a3 ','NH3 ','NH4 ', & + 'NH_5 ','NH_50 ','NO ','NO2 ','NO3 ', & + 'NOA ','NTERPOOH ','num_a1 ','num_a2 ','num_a3 ', & + 'num_a4 ','num_a5 ','O ','O2 ','O2_1D ', & + 'O2_1S ','O3 ','O3S ','OCLO ','OCS ', & + 'ONITR ','PAN ','PBZNIT ','PHENO ','PHENOL ', & + 'PHENOOH ','pom_a1 ','pom_a4 ','POOH ','ROOH ', & + 'S ','SF6 ','SO ','SO2 ','SO3 ', & + 'so4_a1 ','so4_a2 ','so4_a3 ','so4_a5 ','soa1_a1 ', & + 'soa1_a2 ','soa2_a1 ','soa2_a2 ','soa3_a1 ','soa3_a2 ', & + 'soa4_a1 ','soa4_a2 ','soa5_a1 ','soa5_a2 ','SOAG0 ', & + 'SOAG1 ','SOAG2 ','SOAG3 ','SOAG4 ','ST80_25 ', & + 'SVOC ','TEPOMUC ','TERP2OOH ','TERPNIT ','TERPOOH ', & + 'TERPROD1 ','TERPROD2 ','TOLOOH ','TOLUENE ','XOOH ', & + 'XYLENES ','XYLENOOH ','XYLOL ','XYLOLOOH ','NHDEP ', & + 'NDEP ','ACBZO2 ','ALKO2 ','BCARYO2VBS ','BENZO2 ', & + 'BENZO2VBS ','BZOO ','C2H5O2 ','C3H7O2 ','C6H5O2 ', & + 'CH3CO3 ','CH3O2 ','DICARBO2 ','ENEO2 ','EO ', & + 'EO2 ','HO2 ','HOCH2OO ','ISOPAO2 ','ISOPBO2 ', & + 'ISOPO2VBS ','IVOCO2VBS ','MACRO2 ','MALO2 ','MCO3 ', & + 'MDIALO2 ','MEKO2 ','MTERPO2VBS ','NTERPO2 ','O1D ', & + 'OH ','PHENO2 ','PO2 ','RO2 ','TERP2O2 ', & + 'TERPO2 ','TOLO2 ','TOLUO2VBS ','XO2 ','XYLENO2 ', & + 'XYLEO2VBS ','XYLOLO2 ','H2O ' /) - adv_mass(:231) = (/ 133.141340_r8, 104.142600_r8, 28.010400_r8, 12.011000_r8, 12.011000_r8, & - 204.342600_r8, 78.110400_r8, 160.122200_r8, 126.108600_r8, 98.098200_r8, & - 84.072400_r8, 98.098200_r8, 98.098200_r8, 112.124000_r8, 72.143800_r8, & - 56.103200_r8, 79.904000_r8, 115.356700_r8, 95.903400_r8, 141.908940_r8, & - 99.716850_r8, 106.120800_r8, 124.135000_r8, 26.036800_r8, 28.051600_r8, & - 46.065800_r8, 62.065200_r8, 30.066400_r8, 42.077400_r8, 76.091000_r8, & - 44.092200_r8, 110.109200_r8, 153.821800_r8, 165.364506_r8, 148.910210_r8, & - 137.367503_r8, 187.375310_r8, 170.921013_r8, 154.466716_r8, 120.913206_r8, & - 173.833800_r8, 30.025200_r8, 94.937200_r8, 133.402300_r8, 44.051000_r8, & - 50.485900_r8, 41.050940_r8, 58.076800_r8, 72.061400_r8, 60.050400_r8, & - 76.049800_r8, 32.040000_r8, 48.039400_r8, 16.040600_r8, 252.730400_r8, & - 35.452700_r8, 70.905400_r8, 102.904200_r8, 51.452100_r8, 97.457640_r8, & - 100.916850_r8, 28.010400_r8, 44.009800_r8, 66.007206_r8, 82.461503_r8, & - 108.135600_r8, 62.132400_r8, 135.064039_r8, 135.064039_r8, 135.064039_r8, & - 28.010400_r8, 78.064600_r8, 18.998403_r8, 60.050400_r8, 58.035600_r8, & - 1.007400_r8, 2.014800_r8, 259.823613_r8, 34.013600_r8, 98.078400_r8, & - 80.911400_r8, 116.948003_r8, 100.493706_r8, 86.467906_r8, 36.460100_r8, & - 27.025140_r8, 46.024600_r8, 20.005803_r8, 63.012340_r8, 79.011740_r8, & - 96.910800_r8, 52.459500_r8, 135.114940_r8, 116.112400_r8, 74.076200_r8, & - 100.113000_r8, 118.127200_r8, 68.114200_r8, 147.125940_r8, 147.125940_r8, & - 162.117940_r8, 163.125340_r8, 118.127200_r8, 184.350200_r8, 70.087800_r8, & - 120.100800_r8, 72.102600_r8, 104.101400_r8, 147.084740_r8, 136.228400_r8, & - 70.087800_r8, 14.006740_r8, 44.012880_r8, 108.010480_r8, 147.125940_r8, & - 145.111140_r8, 58.442468_r8, 58.442468_r8, 58.442468_r8, 17.028940_r8, & - 18.036340_r8, 28.010400_r8, 28.010400_r8, 30.006140_r8, 46.005540_r8, & - 62.004940_r8, 119.074340_r8, 231.239540_r8, 1.007400_r8, 1.007400_r8, & - 1.007400_r8, 1.007400_r8, 1.007400_r8, 15.999400_r8, 47.998200_r8, & - 47.998200_r8, 67.451500_r8, 60.076400_r8, 133.100140_r8, 121.047940_r8, & - 183.117740_r8, 93.102400_r8, 94.109800_r8, 176.121600_r8, 12.011000_r8, & - 12.011000_r8, 92.090400_r8, 90.075600_r8, 32.066000_r8, 146.056419_r8, & - 48.065400_r8, 64.064800_r8, 80.064200_r8, 115.107340_r8, 115.107340_r8, & - 115.107340_r8, 115.107340_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & + adv_mass(:233) = (/ 133.141340_r8, 104.142600_r8, 12.011000_r8, 12.011000_r8, 204.342600_r8, & + 78.110400_r8, 160.122200_r8, 126.108600_r8, 98.098200_r8, 84.072400_r8, & + 98.098200_r8, 98.098200_r8, 112.124000_r8, 72.143800_r8, 56.103200_r8, & + 79.904000_r8, 115.356700_r8, 95.903400_r8, 141.908940_r8, 99.716850_r8, & + 106.120800_r8, 124.135000_r8, 26.036800_r8, 28.051600_r8, 46.065800_r8, & + 62.065200_r8, 30.066400_r8, 42.077400_r8, 76.091000_r8, 44.092200_r8, & + 110.109200_r8, 153.821800_r8, 165.364506_r8, 148.910210_r8, 137.367503_r8, & + 187.375310_r8, 170.921013_r8, 154.466716_r8, 120.913206_r8, 173.833800_r8, & + 30.025200_r8, 94.937200_r8, 133.402300_r8, 44.051000_r8, 50.485900_r8, & + 41.050940_r8, 58.076800_r8, 72.061400_r8, 60.050400_r8, 76.049800_r8, & + 32.040000_r8, 48.039400_r8, 16.040600_r8, 252.730400_r8, 35.452700_r8, & + 70.905400_r8, 102.904200_r8, 51.452100_r8, 97.457640_r8, 100.916850_r8, & + 28.010400_r8, 44.009800_r8, 66.007206_r8, 82.461503_r8, 108.135600_r8, & + 62.132400_r8, 135.064039_r8, 135.064039_r8, 135.064039_r8, 28.010400_r8, & + 78.064600_r8, 18.998403_r8, 60.050400_r8, 58.035600_r8, 1.007400_r8, & + 2.014800_r8, 259.823613_r8, 34.013600_r8, 98.078400_r8, 80.911400_r8, & + 116.948003_r8, 100.493706_r8, 86.467906_r8, 36.460100_r8, 27.025140_r8, & + 46.024600_r8, 20.005803_r8, 63.012340_r8, 79.011740_r8, 96.910800_r8, & + 52.459500_r8, 135.114940_r8, 116.112400_r8, 74.076200_r8, 100.113000_r8, & + 118.127200_r8, 68.114200_r8, 147.125940_r8, 147.125940_r8, 162.117940_r8, & + 163.125340_r8, 118.127200_r8, 184.350200_r8, 70.087800_r8, 120.100800_r8, & + 72.102600_r8, 104.101400_r8, 147.084740_r8, 136.228400_r8, 70.087800_r8, & + 14.006740_r8, 44.012880_r8, 108.010480_r8, 147.125940_r8, 145.111140_r8, & + 58.442468_r8, 58.442468_r8, 58.442468_r8, 17.028940_r8, 18.036340_r8, & + 28.010400_r8, 28.010400_r8, 30.006140_r8, 46.005540_r8, 62.004940_r8, & + 119.074340_r8, 231.239540_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, & + 1.007400_r8, 1.007400_r8, 15.999400_r8, 31.998800_r8, 31.998800_r8, & + 31.998800_r8, 47.998200_r8, 47.998200_r8, 67.451500_r8, 60.076400_r8, & + 133.100140_r8, 121.047940_r8, 183.117740_r8, 93.102400_r8, 94.109800_r8, & + 176.121600_r8, 12.011000_r8, 12.011000_r8, 92.090400_r8, 90.075600_r8, & + 32.066000_r8, 146.056419_r8, 48.065400_r8, 64.064800_r8, 80.064200_r8, & + 115.107340_r8, 115.107340_r8, 115.107340_r8, 115.107340_r8, 250.445000_r8, & 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, & - 250.445000_r8, 250.445000_r8, 28.010400_r8, 310.582400_r8, 140.134400_r8, & - 200.226000_r8, 215.240140_r8, 186.241400_r8, 168.227200_r8, 154.201400_r8, & - 174.148000_r8, 92.136200_r8, 150.126000_r8, 106.162000_r8, 188.173800_r8, & - 122.161400_r8, 204.173200_r8, 14.006740_r8, 14.006740_r8, 137.112200_r8, & - 103.135200_r8, 253.348200_r8, 159.114800_r8, 159.114800_r8, 123.127600_r8, & - 61.057800_r8, 75.083600_r8, 109.101800_r8, 75.042400_r8, 47.032000_r8, & - 129.089600_r8, 105.108800_r8, 61.057800_r8, 77.057200_r8, 33.006200_r8, & - 63.031400_r8, 117.119800_r8, 117.119800_r8, 117.119800_r8, 233.355800_r8, & - 119.093400_r8, 115.063800_r8, 101.079200_r8, 117.078600_r8, 103.094000_r8, & - 185.234000_r8, 230.232140_r8, 15.999400_r8, 17.006800_r8, 175.114200_r8, & - 91.083000_r8, 89.068200_r8, 199.218600_r8, 185.234000_r8, 173.140600_r8, & - 173.140600_r8, 149.118600_r8, 187.166400_r8, 187.166400_r8, 203.165800_r8, & - 18.014200_r8 /) + 250.445000_r8, 250.445000_r8, 250.445000_r8, 250.445000_r8, 28.010400_r8, & + 310.582400_r8, 140.134400_r8, 200.226000_r8, 215.240140_r8, 186.241400_r8, & + 168.227200_r8, 154.201400_r8, 174.148000_r8, 92.136200_r8, 150.126000_r8, & + 106.162000_r8, 188.173800_r8, 122.161400_r8, 204.173200_r8, 14.006740_r8, & + 14.006740_r8, 137.112200_r8, 103.135200_r8, 253.348200_r8, 159.114800_r8, & + 159.114800_r8, 123.127600_r8, 61.057800_r8, 75.083600_r8, 109.101800_r8, & + 75.042400_r8, 47.032000_r8, 129.089600_r8, 105.108800_r8, 61.057800_r8, & + 77.057200_r8, 33.006200_r8, 63.031400_r8, 117.119800_r8, 117.119800_r8, & + 117.119800_r8, 233.355800_r8, 119.093400_r8, 115.063800_r8, 101.079200_r8, & + 117.078600_r8, 103.094000_r8, 185.234000_r8, 230.232140_r8, 15.999400_r8, & + 17.006800_r8, 175.114200_r8, 91.083000_r8, 89.068200_r8, 199.218600_r8, & + 185.234000_r8, 173.140600_r8, 173.140600_r8, 149.118600_r8, 187.166400_r8, & + 187.166400_r8, 203.165800_r8, 18.014200_r8 /) - crb_mass(:231) = (/ 60.055000_r8, 60.055000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 180.165000_r8, 72.066000_r8, 72.066000_r8, 72.066000_r8, 60.055000_r8, & - 48.044000_r8, 60.055000_r8, 60.055000_r8, 72.066000_r8, 60.055000_r8, & - 48.044000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 84.077000_r8, 84.077000_r8, 24.022000_r8, 24.022000_r8, & - 24.022000_r8, 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, & - 36.033000_r8, 72.066000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 24.022000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, & - 12.011000_r8, 12.011000_r8, 12.011000_r8, 24.022000_r8, 24.022000_r8, & - 12.011000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 24.022000_r8, & - 24.022000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + crb_mass(:233) = (/ 60.055000_r8, 60.055000_r8, 12.011000_r8, 12.011000_r8, 180.165000_r8, & + 72.066000_r8, 72.066000_r8, 72.066000_r8, 60.055000_r8, 48.044000_r8, & + 60.055000_r8, 60.055000_r8, 72.066000_r8, 60.055000_r8, 48.044000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 84.077000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 12.011000_r8, 24.022000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, & - 0.000000_r8, 0.000000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, 0.000000_r8, & - 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 48.044000_r8, 60.055000_r8, 36.033000_r8, & + 84.077000_r8, 84.077000_r8, 24.022000_r8, 24.022000_r8, 24.022000_r8, & + 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 36.033000_r8, & + 72.066000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + 24.022000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, & + 24.022000_r8, 36.033000_r8, 36.033000_r8, 24.022000_r8, 24.022000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 84.077000_r8, & + 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 24.022000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, & + 0.000000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 24.022000_r8, 24.022000_r8, 12.011000_r8, 0.000000_r8, 12.011000_r8, & + 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 48.044000_r8, 60.055000_r8, 36.033000_r8, 60.055000_r8, & 60.055000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, & - 60.055000_r8, 60.055000_r8, 60.055000_r8, 156.143000_r8, 48.044000_r8, & - 48.044000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, 120.110000_r8, & - 48.044000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 60.055000_r8, & - 60.055000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 36.033000_r8, 120.110000_r8, 0.000000_r8, 0.000000_r8, & + 60.055000_r8, 60.055000_r8, 156.143000_r8, 48.044000_r8, 48.044000_r8, & + 48.044000_r8, 48.044000_r8, 48.044000_r8, 120.110000_r8, 48.044000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 60.055000_r8, 60.055000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 36.033000_r8, 120.110000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 12.011000_r8, 48.044000_r8, 24.022000_r8, & - 84.077000_r8, 72.066000_r8, 72.066000_r8, 72.066000_r8, 12.011000_r8, & - 12.011000_r8, 36.033000_r8, 36.033000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 48.044000_r8, 24.022000_r8, 84.077000_r8, 72.066000_r8, 72.066000_r8, & + 72.066000_r8, 12.011000_r8, 12.011000_r8, 36.033000_r8, 36.033000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 180.165000_r8, & 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, & - 180.165000_r8, 180.165000_r8, 12.011000_r8, 264.242000_r8, 84.077000_r8, & - 120.110000_r8, 120.110000_r8, 120.110000_r8, 120.110000_r8, 108.099000_r8, & - 84.077000_r8, 84.077000_r8, 60.055000_r8, 96.088000_r8, 96.088000_r8, & - 96.088000_r8, 96.088000_r8, 0.000000_r8, 0.000000_r8, 84.077000_r8, & - 60.055000_r8, 180.165000_r8, 72.066000_r8, 72.066000_r8, 84.077000_r8, & - 24.022000_r8, 36.033000_r8, 72.066000_r8, 24.022000_r8, 12.011000_r8, & - 60.055000_r8, 48.044000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, & - 12.011000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, 156.143000_r8, & - 48.044000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, & - 120.110000_r8, 120.110000_r8, 0.000000_r8, 0.000000_r8, 72.066000_r8, & - 36.033000_r8, 36.033000_r8, 120.110000_r8, 120.110000_r8, 84.077000_r8, & - 84.077000_r8, 60.055000_r8, 96.088000_r8, 96.088000_r8, 96.088000_r8, & - 0.000000_r8 /) + 180.165000_r8, 180.165000_r8, 180.165000_r8, 180.165000_r8, 12.011000_r8, & + 264.242000_r8, 84.077000_r8, 120.110000_r8, 120.110000_r8, 120.110000_r8, & + 120.110000_r8, 108.099000_r8, 84.077000_r8, 84.077000_r8, 60.055000_r8, & + 96.088000_r8, 96.088000_r8, 96.088000_r8, 96.088000_r8, 0.000000_r8, & + 0.000000_r8, 84.077000_r8, 60.055000_r8, 180.165000_r8, 72.066000_r8, & + 72.066000_r8, 84.077000_r8, 24.022000_r8, 36.033000_r8, 72.066000_r8, & + 24.022000_r8, 12.011000_r8, 60.055000_r8, 48.044000_r8, 24.022000_r8, & + 24.022000_r8, 0.000000_r8, 12.011000_r8, 60.055000_r8, 60.055000_r8, & + 60.055000_r8, 156.143000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, & + 48.044000_r8, 48.044000_r8, 120.110000_r8, 120.110000_r8, 0.000000_r8, & + 0.000000_r8, 72.066000_r8, 36.033000_r8, 36.033000_r8, 120.110000_r8, & + 120.110000_r8, 84.077000_r8, 84.077000_r8, 60.055000_r8, 96.088000_r8, & + 96.088000_r8, 96.088000_r8, 0.000000_r8 /) - fix_mass(: 3) = (/ 0.00000000_r8, 31.9988000_r8, 28.0134800_r8 /) + fix_mass(: 2) = (/ 0.00000000_r8, 28.0134800_r8 /) - clsmap(: 2,1) = (/ 188, 189 /) - clsmap(:229,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + clsmap(: 2,1) = (/ 190, 191 /) + clsmap(:231,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & @@ -201,71 +201,72 @@ subroutine set_sim_dat 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, & 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, & 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, & - 181, 182, 183, 184, 185, 186, 187, 190, 191, 192, & + 181, 182, 183, 184, 185, 186, 187, 188, 189, 192, & 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, & 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, & 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, & - 223, 224, 225, 226, 227, 228, 229, 230, 231 /) + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, & + 233 /) - permute(:229,4) = (/ 153, 156, 1, 2, 3, 187, 72, 122, 73, 116, & - 129, 98, 147, 106, 85, 112, 211, 86, 226, 143, & - 4, 88, 109, 101, 142, 94, 110, 103, 188, 121, & - 59, 95, 56, 68, 69, 60, 70, 61, 71, 62, & - 131, 215, 148, 63, 192, 114, 57, 182, 202, 158, & - 150, 169, 128, 212, 117, 223, 75, 54, 218, 180, & - 5, 195, 170, 89, 91, 79, 99, 6, 7, 8, & - 9, 64, 177, 193, 186, 213, 210, 58, 149, 65, & - 171, 90, 92, 102, 225, 76, 183, 100, 214, 123, & - 167, 172, 198, 84, 197, 111, 66, 174, 146, 140, & - 200, 120, 163, 50, 201, 104, 136, 105, 145, 184, & - 207, 134, 77, 97, 115, 191, 10, 11, 12, 55, & - 13, 14, 15, 221, 222, 219, 176, 118, 16, 17, & - 18, 19, 20, 227, 228, 21, 107, 113, 87, 139, & - 67, 130, 74, 108, 22, 23, 141, 119, 137, 24, & - 203, 175, 93, 25, 26, 27, 28, 29, 30, 31, & - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, & - 42, 43, 44, 45, 80, 154, 151, 132, 185, 190, & - 155, 78, 81, 82, 159, 83, 124, 138, 179, 46, & - 133, 47, 125, 173, 168, 152, 209, 220, 165, 144, & - 96, 160, 224, 126, 204, 205, 48, 49, 206, 161, & - 208, 178, 157, 51, 189, 216, 217, 127, 166, 196, & - 194, 181, 162, 52, 199, 164, 53, 135, 229 /) + permute(:231,4) = (/ 155, 152, 1, 2, 181, 73, 121, 74, 115, 129, & + 98, 146, 106, 85, 112, 212, 86, 220, 141, 3, & + 89, 109, 101, 140, 95, 111, 102, 188, 120, 58, & + 96, 55, 67, 68, 59, 69, 60, 70, 61, 132, & + 216, 147, 62, 190, 114, 56, 183, 203, 158, 149, & + 169, 127, 213, 116, 228, 76, 53, 229, 185, 4, & + 199, 189, 87, 91, 79, 100, 5, 6, 7, 8, & + 63, 178, 195, 184, 224, 204, 57, 148, 64, 171, & + 90, 92, 103, 225, 77, 176, 99, 214, 131, 166, & + 172, 192, 84, 193, 110, 65, 173, 145, 143, 201, & + 119, 159, 49, 202, 104, 136, 105, 144, 180, 208, & + 157, 93, 97, 123, 187, 9, 10, 11, 54, 12, & + 13, 14, 230, 217, 226, 174, 117, 15, 16, 17, & + 18, 19, 223, 215, 71, 72, 222, 20, 107, 113, & + 88, 138, 66, 130, 75, 108, 21, 22, 139, 118, & + 161, 23, 211, 179, 94, 24, 25, 26, 27, 28, & + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, & + 39, 40, 41, 42, 43, 44, 80, 153, 150, 133, & + 186, 194, 154, 78, 81, 82, 160, 83, 122, 137, & + 182, 45, 134, 46, 124, 175, 170, 151, 210, 227, & + 165, 142, 128, 167, 221, 125, 205, 206, 47, 48, & + 207, 162, 209, 177, 156, 50, 191, 218, 219, 126, & + 168, 198, 197, 196, 163, 51, 200, 164, 52, 135, & + 231 /) - diag_map(:229) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + diag_map(:231) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & - 41, 42, 43, 44, 50, 56, 62, 68, 74, 76, & - 82, 88, 94, 95, 98, 101, 104, 107, 111, 115, & - 119, 123, 127, 131, 134, 137, 140, 143, 148, 153, & - 158, 164, 170, 174, 179, 181, 185, 189, 196, 201, & - 205, 210, 218, 223, 228, 231, 234, 237, 240, 243, & - 248, 253, 259, 263, 267, 271, 275, 281, 284, 290, & - 293, 300, 306, 312, 317, 322, 327, 332, 338, 343, & - 348, 351, 359, 367, 375, 381, 387, 393, 399, 405, & - 411, 417, 423, 429, 437, 443, 450, 456, 462, 465, & - 469, 476, 485, 493, 501, 508, 513, 520, 526, 534, & - 542, 550, 558, 566, 574, 583, 592, 596, 605, 612, & - 619, 627, 634, 644, 657, 668, 679, 686, 695, 708, & - 715, 726, 737, 750, 761, 770, 780, 789, 799, 803, & - 806, 815, 825, 836, 853, 859, 866, 875, 889, 901, & - 914, 924, 931, 950, 971, 981,1001,1026,1047,1061, & - 1075,1087,1098,1111,1125,1131,1142,1155,1175,1195, & - 1211,1223,1234,1258,1290,1313,1334,1356,1388,1403, & - 1417,1432,1447,1465,1487,1528,1693,1720,1778,1831, & - 1924,1969,2009,2117,2141,2166,2198,2260,2287 /) + 41, 42, 43, 49, 55, 61, 67, 73, 75, 81, & + 87, 93, 94, 97, 100, 103, 106, 110, 114, 118, & + 122, 126, 130, 133, 136, 139, 142, 147, 152, 157, & + 162, 165, 168, 174, 178, 183, 185, 190, 197, 202, & + 206, 211, 219, 224, 229, 232, 235, 238, 241, 244, & + 249, 254, 259, 264, 268, 272, 276, 282, 285, 288, & + 294, 300, 307, 313, 318, 323, 328, 333, 339, 344, & + 347, 352, 360, 368, 376, 382, 388, 394, 400, 406, & + 412, 418, 424, 432, 438, 445, 451, 457, 462, 465, & + 469, 476, 483, 492, 500, 507, 513, 519, 527, 535, & + 543, 551, 559, 567, 576, 585, 589, 598, 605, 612, & + 620, 627, 637, 650, 661, 672, 680, 688, 694, 705, & + 716, 723, 734, 750, 761, 770, 780, 789, 799, 804, & + 815, 824, 834, 850, 859, 868, 873, 883, 893, 908, & + 936, 960, 971, 978, 985, 995,1007,1023,1043,1047, & + 1060,1075,1089,1097,1110,1124,1147,1164,1175,1187, & + 1209,1227,1240,1251,1275,1310,1335,1357,1380,1413, & + 1430,1446,1462,1480,1504,1528,1574,1618,1784,1810, & + 1919,1985,2020,2041,2066,2128,2182,2224,2252,2346, & + 2374 /) - extfrc_lst(: 16) = (/ 'num_a1 ','num_a2 ','so4_a1 ','so4_a2 ','so4_a5 ', & - 'num_a4 ','num_a5 ','SO2 ','NO2 ','pom_a4 ', & - 'bc_a4 ','CO ','SVOC ','AOA_NH ','NO ', & - 'N ' /) + extfrc_lst(: 13) = (/ 'SVOC ','CO ','bc_a4 ','NO2 ','num_a1 ', & + 'num_a2 ','num_a4 ','pom_a4 ','SO2 ','so4_a1 ', & + 'so4_a2 ','H2O ','NO ' /) - frc_from_dataset(: 16) = (/ .true., .true., .true., .true., .true., & + frc_from_dataset(: 13) = (/ .true., .true., .true., .true., .true., & .true., .true., .true., .true., .true., & - .true., .true., .true., .false., .false., & - .false. /) + .true., .true., .false. /) - inv_lst(: 3) = (/ 'M ', 'O2 ', 'N2 ' /) + inv_lst(: 2) = (/ 'M ', 'N2 ' /) slvd_lst(: 41) = (/ 'ACBZO2 ', 'ALKO2 ', 'BCARYO2VBS ', 'BENZO2 ', 'BENZO2VBS ', & 'BZOO ', 'C2H5O2 ', 'C3H7O2 ', 'C6H5O2 ', 'CH3CO3 ', & @@ -355,9 +356,15 @@ subroutine set_sim_dat 'jsoa3_a2 ', 'jsoa4_a1 ', & 'jsoa4_a2 ', 'jsoa5_a1 ', & 'jsoa5_a2 ', 'E90_tau ', & + 'ag1 ', 'ag2 ', & 'O1D_H2 ', 'O1D_H2O ', & - 'O1D_N2 ', 'O1D_O2ab ', & - 'O1D_O3 ', 'O_O3 ', & + 'O1D_N2 ', 'O1D_O2 ', & + 'O1D_O2b ', 'O1D_O3 ', & + 'O1D_O3a ', 'O2_1D_N2 ', & + 'O2_1D_O ', 'O2_1D_O2 ', & + 'O2_1S_CO2 ', 'O2_1S_N2 ', & + 'O2_1S_O ', 'O2_1S_O2 ', & + 'O2_1S_O3 ', 'O_O3 ', & 'usr_O_O ', 'usr_O_O2 ', & 'H2_O ', 'H2O2_O ', & 'H_HO2 ', 'H_HO2a ', & @@ -386,14 +393,14 @@ subroutine set_sim_dat 'CL_O3 ', 'CLO_CH3O2 ', & 'CLO_CLOa ', 'CLO_CLOb ', & 'CLO_CLOc ', 'CLO_HO2 ', & - 'CLO_NO ', 'CLONO2_CL ', & - 'CLO_NO2_M ', 'CLONO2_O ', & + 'CLO_NO ', 'CLONO2_CL ' /) + rxt_tag_lst( 201: 400) = (/ 'CLO_NO2_M ', 'CLONO2_O ', & 'CLONO2_OH ', 'CLO_O ', & 'CLO_OHa ', 'CLO_OHb ', & 'HCL_O ', 'HCL_OH ', & 'HOCL_CL ', 'HOCL_O ', & - 'HOCL_OH ', 'O1D_CCL4 ' /) - rxt_tag_lst( 201: 400) = (/ 'O1D_CF2CLBR ', 'O1D_CFC11 ', & + 'HOCL_OH ', 'O1D_CCL4 ', & + 'O1D_CF2CLBR ', 'O1D_CFC11 ', & 'O1D_CFC113 ', 'O1D_CFC114 ', & 'O1D_CFC115 ', 'O1D_CFC12 ', & 'O1D_HCLa ', 'O1D_HCLb ', & @@ -486,14 +493,14 @@ subroutine set_sim_dat 'ISOPNO3_HO2 ', 'ISOPNO3_NO ', & 'ISOPNO3_NO3 ', 'ISOPNOOH_OH ', & 'ISOP_O3 ', 'ISOP_OH ', & - 'ISOPOOH_OH ', 'NC4CH2OH_OH ', & - 'NC4CHO_OH ', 'XO2_CH3CO3 ', & + 'ISOPOOH_OH ', 'NC4CH2OH_OH ' /) + rxt_tag_lst( 401: 553) = (/ 'NC4CHO_OH ', 'XO2_CH3CO3 ', & 'XO2_CH3O2 ', 'XO2_HO2 ', & 'XO2_NO ', 'XO2_NO3 ', & 'XOOH_OH ', 'ACBZO2_HO2 ', & 'ACBZO2_NO ', 'BENZENE_OH ', & - 'BENZO2_HO2 ', 'BENZO2_NO ' /) - rxt_tag_lst( 401: 541) = (/ 'BENZOOH_OH ', 'BZALD_OH ', & + 'BENZO2_HO2 ', 'BENZO2_NO ', & + 'BENZOOH_OH ', 'BZALD_OH ', & 'BZOO_HO2 ', 'BZOOH_OH ', & 'BZOO_NO ', 'C6H5O2_HO2 ', & 'C6H5O2_NO ', 'C6H5OOH_OH ', & @@ -532,26 +539,26 @@ subroutine set_sim_dat 'SO_O2 ', 'SO_O3 ', & 'SO_OCLO ', 'SO_OH ', & 'usr_DMS_OH ', 'usr_SO3_H2O ', & - 'NH3_OH ', 'usr_GLYOXAL_aer ', & - 'usr_HO2_aer ', 'usr_HONITR_aer ', & - 'usr_ISOPNITA_aer ', 'usr_ISOPNITB_aer ', & - 'usr_N2O5_aer ', 'usr_NC4CH2OH_aer ', & - 'usr_NC4CHO_aer ', 'usr_NH4_strat_tau ', & - 'usr_NO2_aer ', 'usr_NO3_aer ', & - 'usr_NTERPOOH_aer ', 'usr_ONITR_aer ', & - 'usr_TERPNIT_aer ', 'BCARY_NO3_vbs ', & - 'BCARYO2_HO2_vbs ', 'BCARYO2_NO_vbs ', & - 'BCARY_O3_vbs ', 'BCARY_OH_vbs ', & - 'BENZENE_OH_vbs ', 'BENZO2_HO2_vbs ', & - 'BENZO2_NO_vbs ', 'ISOP_NO3_vbs ', & - 'ISOPO2_HO2_vbs ', 'ISOPO2_NO_vbs ', & - 'ISOP_O3_vbs ', 'ISOP_OH_vbs ', & - 'IVOCO2_HO2_vbs ', 'IVOCO2_NO_vbs ', & - 'IVOC_OH_vbs ', 'MTERP_NO3_vbs ', & - 'MTERPO2_HO2_vbs ', 'MTERPO2_NO_vbs ', & - 'MTERP_O3_vbs ', 'MTERP_OH_vbs ', & - 'SVOC_OH ', 'TOLUENE_OH_vbs ', & - 'TOLUO2_HO2_vbs ', 'TOLUO2_NO_vbs ', & + 'NH3_OH ', 'usr_HO2_aer ', & + 'usr_HONITR_aer ', 'usr_ISOPNITA_aer ', & + 'usr_ISOPNITB_aer ', 'usr_N2O5_aer ', & + 'usr_NC4CH2OH_aer ', 'usr_NC4CHO_aer ', & + 'usr_NH4_strat_tau ', 'usr_NO2_aer ', & + 'usr_NO3_aer ', 'usr_NTERPOOH_aer ', & + 'usr_ONITR_aer ', 'usr_TERPNIT_aer ', & + 'BCARY_NO3_vbs ', 'BCARYO2_HO2_vbs ', & + 'BCARYO2_NO_vbs ', 'BCARY_O3_vbs ', & + 'BCARY_OH_vbs ', 'BENZENE_OH_vbs ', & + 'BENZO2_HO2_vbs ', 'BENZO2_NO_vbs ', & + 'ISOP_NO3_vbs ', 'ISOPO2_HO2_vbs ', & + 'ISOPO2_NO_vbs ', 'ISOP_O3_vbs ', & + 'ISOP_OH_vbs ', 'IVOCO2_HO2_vbs ', & + 'IVOCO2_NO_vbs ', 'IVOC_OH_vbs ', & + 'MTERP_NO3_vbs ', 'MTERPO2_HO2_vbs ', & + 'MTERPO2_NO_vbs ', 'MTERP_O3_vbs ', & + 'MTERP_OH_vbs ', 'SVOC_OH ', & + 'TOLUENE_OH_vbs ', 'TOLUO2_HO2_vbs ', & + 'TOLUO2_NO_vbs ', 'usr_GLYOXAL_aer ', & 'XYLENES_OH_vbs ', 'XYLEO2_HO2_vbs ', & 'XYLEO2_NO_vbs ', 'het1 ', & 'het10 ', 'het11 ', & @@ -618,7 +625,8 @@ subroutine set_sim_dat 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, & 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, & 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, & - 541 /) + 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, & + 551, 552, 553 /) if( allocated( pht_alias_lst ) ) then deallocate( pht_alias_lst ) end if @@ -757,61 +765,66 @@ subroutine set_sim_dat write(iulog,*) 'set_sim_dat: failed to allocate cph_rid; error = ',ios call endrun end if - cph_rid(:) = (/ 127, 130, 131, 132, 135, & - 138, 139, 140, 141, 144, & - 145, 146, 149, 151, 155, & - 156, 164, 165 /) - cph_enthalpy(:) = (/ 189.810000_r8, 392.190000_r8, 493.580000_r8, 101.390000_r8, 232.590000_r8, & - 203.400000_r8, 226.580000_r8, 120.100000_r8, 194.710000_r8, 293.620000_r8, & - 67.670000_r8, 165.300000_r8, 165.510000_r8, 313.750000_r8, 133.750000_r8, & - 193.020000_r8, 34.470000_r8, 199.170000_r8 /) + cph_rid(:) = (/ 129, 130, 131, 134, 135, & + 136, 138, 139, 140, 141, & + 142, 143, 144, 147, 150, & + 151, 152, 153, 156, 157, & + 158, 161, 163, 167, 168, & + 176, 177 /) + cph_enthalpy(:) = (/ 189.810000_r8, 32.910000_r8, 189.810000_r8, 94.300000_r8, 94.300000_r8, & + 94.300000_r8, 62.600000_r8, 62.600000_r8, 62.600000_r8, 62.600000_r8, & + 392.190000_r8, 493.580000_r8, 101.390000_r8, 232.590000_r8, 203.400000_r8, & + 226.580000_r8, 120.100000_r8, 194.710000_r8, 293.620000_r8, 67.670000_r8, & + 165.300000_r8, 165.510000_r8, 313.750000_r8, 133.750000_r8, 193.020000_r8, & + 34.470000_r8, 199.170000_r8 /) allocate( num_rnts(rxntot-phtcnt),stat=ios ) if( ios /= 0 ) then write(iulog,*) 'set_sim_dat: failed to allocate num_rnts; error = ',ios call endrun end if - num_rnts(:) = (/ 1, 2, 2, 2, 2, 2, 2, 3, 3, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 3, 2, 2, 3, 3, 3, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + num_rnts(:) = (/ 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, & + 3, 2, 2, 2, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 3, 2, 2, 3, 3, 3, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 3, 2, 2, 1, 2, 2, 2, 2, & - 2, 2, 3, 3, 3, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, & - 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 3, 2, 2, 1, 2, 2, & + 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & - 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, & + 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, & + 2, 2, 3, 3, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, & + 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, & - 2, 3, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 3, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 3, 2, 2, 3, 2, 2, 3, 2, 2, 2, & 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, & - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, & - 1, 1, 1, 1, 2, 2, 2, 1, 1, 2, & - 2, 2, 1, 1, 2, 1, 1, 1 /) + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, & + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, & + 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, & + 1, 2, 1, 1, 1, 1, 2, 2, 2, 1, & + 1, 2, 2, 2, 1, 1, 2, 1, 1, 1 /) end subroutine set_sim_dat diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/chem_mech.doc b/src/chemistry/pp_trop_strat_mam5_t2s1/chem_mech.doc similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/chem_mech.doc rename to src/chemistry/pp_trop_strat_mam5_t2s1/chem_mech.doc diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/chem_mech.in b/src/chemistry/pp_trop_strat_mam5_t2s1/chem_mech.in similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/chem_mech.in rename to src/chemistry/pp_trop_strat_mam5_t2s1/chem_mech.in diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/chem_mods.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/chem_mods.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/chem_mods.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/chem_mods.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/m_rxt_id.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/m_rxt_id.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/m_rxt_id.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/m_spc_id.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/m_spc_id.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/m_spc_id.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_adjrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_adjrxt.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_adjrxt.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_adjrxt.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_exp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_exp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_exp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_exp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_imp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_imp_sol.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_vbs/mo_imp_sol.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_imp_sol.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_indprd.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_indprd.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_indprd.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_indprd.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_lin_matrix.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_lin_matrix.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_lin_matrix.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_lu_factor.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_lu_factor.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_lu_factor.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_lu_solve.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_lu_solve.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_lu_solve.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_nln_matrix.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_nln_matrix.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_nln_matrix.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_phtadj.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_phtadj.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_phtadj.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_phtadj.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_prod_loss.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_prod_loss.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_prod_loss.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_rxt_rates_conv.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_rxt_rates_conv.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_rxt_rates_conv.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_rxt_rates_conv.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_setrxt.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_setrxt.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_setrxt.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_ts2/mo_sim_dat.F90 b/src/chemistry/pp_trop_strat_mam5_t2s1/mo_sim_dat.F90 similarity index 100% rename from src/chemistry/pp_trop_strat_mam5_ts2/mo_sim_dat.F90 rename to src/chemistry/pp_trop_strat_mam5_t2s1/mo_sim_dat.F90 diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.doc b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.doc new file mode 100644 index 0000000000..e0fa9b114f --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.doc @@ -0,0 +1,1153 @@ + + + Solution species + ( 1) bc_a1 (C) + ( 2) bc_a4 (C) + ( 3) BIGALK (C5H12) + ( 4) BR (Br) + ( 5) BRCL (BrCl) + ( 6) BRO (BrO) + ( 7) BRONO2 (BrONO2) + ( 8) BRY + ( 9) C2H4 + ( 10) C2H5OH + ( 11) C2H5OOH + ( 12) C2H6 + ( 13) C3H6 + ( 14) C3H7OOH + ( 15) C3H8 + ( 16) CCL4 (CCl4) + ( 17) CF2CLBR (CF2ClBr) + ( 18) CF3BR (CF3Br) + ( 19) CFC11 (CFCl3) + ( 20) CFC113 (CCl2FCClF2) + ( 21) CFC114 (CClF2CClF2) + ( 22) CFC115 (CClF2CF3) + ( 23) CFC12 (CF2Cl2) + ( 24) CH2BR2 (CH2Br2) + ( 25) CH2O + ( 26) CH3BR (CH3Br) + ( 27) CH3CCL3 (CH3CCl3) + ( 28) CH3CHO + ( 29) CH3CL (CH3Cl) + ( 30) CH3COCH3 + ( 31) CH3COCHO + ( 32) CH3COOH + ( 33) CH3COOOH + ( 34) CH3OH + ( 35) CH3OOH + ( 36) CH4 + ( 37) CHBR3 (CHBr3) + ( 38) CL (Cl) + ( 39) CL2 (Cl2) + ( 40) CL2O2 (Cl2O2) + ( 41) CLO (ClO) + ( 42) CLONO2 (ClONO2) + ( 43) CLY + ( 44) CO + ( 45) CO2 + ( 46) DMS (CH3SCH3) + ( 47) dst_a1 (AlSiO5) + ( 48) dst_a2 (AlSiO5) + ( 49) dst_a3 (AlSiO5) + ( 50) E90 (CO) + ( 51) EOOH (HOCH2CH2OOH) + ( 52) GLYALD (HOCH2CHO) + ( 53) GLYOXAL (C2H2O2) + ( 54) H + ( 55) H2 + ( 56) H2402 (CBrF2CBrF2) + ( 57) H2O2 + ( 58) H2SO4 (H2SO4) + ( 59) HBR (HBr) + ( 60) HCFC141B (CH3CCl2F) + ( 61) HCFC142B (CH3CClF2) + ( 62) HCFC22 (CHF2Cl) + ( 63) HCL (HCl) + ( 64) HNO3 + ( 65) HO2NO2 + ( 66) HOBR (HOBr) + ( 67) HOCL (HOCl) + ( 68) HYAC (CH3COCH2OH) + ( 69) HYDRALD (HOCH2CCH3CHCHO) + ( 70) ISOP (C5H8) + ( 71) ISOPNO3 (CH2CHCCH3OOCH2ONO2) + ( 72) ISOPOOH (HOCH2COOHCH3CHCH2) + ( 73) MACR (CH2CCH3CHO) + ( 74) MACROOH (CH3COCHOOHCH2OH) + ( 75) MPAN (CH2CCH3CO3NO2) + ( 76) MVK (CH2CHCOCH3) + ( 77) N + ( 78) N2O + ( 79) N2O5 + ( 80) ncl_a1 (NaCl) + ( 81) ncl_a2 (NaCl) + ( 82) ncl_a3 (NaCl) + ( 83) NH3 + ( 84) NH4 + ( 85) NH_5 (CO) + ( 86) NH_50 (CO) + ( 87) NO + ( 88) NO2 + ( 89) NO3 + ( 90) NOA (CH3COCH2ONO2) + ( 91) num_a1 (H) + ( 92) num_a2 (H) + ( 93) num_a3 (H) + ( 94) num_a4 (H) + ( 95) num_a5 (H) + ( 96) O + ( 97) O2 + ( 98) O2_1D (O2) + ( 99) O2_1S (O2) + (100) O3 + (101) O3S (O3) + (102) OCLO (OClO) + (103) OCS (OCS) + (104) ONITR (C4H7NO4) + (105) PAN (CH3CO3NO2) + (106) pom_a1 (C) + (107) pom_a4 (C) + (108) POOH (C3H6OHOOH) + (109) ROOH (CH3COCH2OOH) + (110) S (S) + (111) SF6 + (112) SO (SO) + (113) SO2 + (114) SO3 (SO3) + (115) so4_a1 (NH4HSO4) + (116) so4_a2 (NH4HSO4) + (117) so4_a3 (NH4HSO4) + (118) so4_a5 (NH4HSO4) + (119) soa_a1 (C) + (120) soa_a2 (C) + (121) SOAE (C) + (122) SOAG (C) + (123) ST80_25 (CO) + (124) TERP (C10H16) + (125) XOOH (HOCH2COOHCH3CHOHCHO) + (126) NDEP (N) + (127) NHDEP (N) + (128) C2H5O2 + (129) C3H7O2 + (130) CH3CO3 + (131) CH3O2 + (132) EO (HOCH2CH2O) + (133) EO2 (HOCH2CH2O2) + (134) HO2 + (135) ISOPO2 (HOCH2COOCH3CHCH2) + (136) MACRO2 (CH3COCHO2CH2OH) + (137) MCO3 (CH2CCH3CO3) + (138) O1D (O) + (139) OH + (140) PO2 (C3H6OHO2) + (141) RO2 (CH3COCH2O2) + (142) XO2 (HOCH2COOCH3CHOHCHO) + (143) H2O + + + Invariant species + ( 1) M + ( 2) N2 + + + Column integrals + ( 1) O3 - 0.000E+00 + ( 2) O2 - 0.000E+00 + +Class List +========== + Explicit + -------- + ( 1) NDEP + ( 2) NHDEP + + Implicit + -------- + ( 1) bc_a1 + ( 2) bc_a4 + ( 3) BIGALK + ( 4) BR + ( 5) BRCL + ( 6) BRO + ( 7) BRONO2 + ( 8) BRY + ( 9) C2H4 + ( 10) C2H5OH + ( 11) C2H5OOH + ( 12) C2H6 + ( 13) C3H6 + ( 14) C3H7OOH + ( 15) C3H8 + ( 16) CCL4 + ( 17) CF2CLBR + ( 18) CF3BR + ( 19) CFC11 + ( 20) CFC113 + ( 21) CFC114 + ( 22) CFC115 + ( 23) CFC12 + ( 24) CH2BR2 + ( 25) CH2O + ( 26) CH3BR + ( 27) CH3CCL3 + ( 28) CH3CHO + ( 29) CH3CL + ( 30) CH3COCH3 + ( 31) CH3COCHO + ( 32) CH3COOH + ( 33) CH3COOOH + ( 34) CH3OH + ( 35) CH3OOH + ( 36) CH4 + ( 37) CHBR3 + ( 38) CL + ( 39) CL2 + ( 40) CL2O2 + ( 41) CLO + ( 42) CLONO2 + ( 43) CLY + ( 44) CO + ( 45) CO2 + ( 46) DMS + ( 47) dst_a1 + ( 48) dst_a2 + ( 49) dst_a3 + ( 50) E90 + ( 51) EOOH + ( 52) GLYALD + ( 53) GLYOXAL + ( 54) H + ( 55) H2 + ( 56) H2402 + ( 57) H2O2 + ( 58) H2SO4 + ( 59) HBR + ( 60) HCFC141B + ( 61) HCFC142B + ( 62) HCFC22 + ( 63) HCL + ( 64) HNO3 + ( 65) HO2NO2 + ( 66) HOBR + ( 67) HOCL + ( 68) HYAC + ( 69) HYDRALD + ( 70) ISOP + ( 71) ISOPNO3 + ( 72) ISOPOOH + ( 73) MACR + ( 74) MACROOH + ( 75) MPAN + ( 76) MVK + ( 77) N + ( 78) N2O + ( 79) N2O5 + ( 80) ncl_a1 + ( 81) ncl_a2 + ( 82) ncl_a3 + ( 83) NH3 + ( 84) NH4 + ( 85) NH_5 + ( 86) NH_50 + ( 87) NO + ( 88) NO2 + ( 89) NO3 + ( 90) NOA + ( 91) num_a1 + ( 92) num_a2 + ( 93) num_a3 + ( 94) num_a4 + ( 95) num_a5 + ( 96) O + ( 97) O2 + ( 98) O2_1D + ( 99) O2_1S + (100) O3 + (101) O3S + (102) OCLO + (103) OCS + (104) ONITR + (105) PAN + (106) pom_a1 + (107) pom_a4 + (108) POOH + (109) ROOH + (110) S + (111) SF6 + (112) SO + (113) SO2 + (114) SO3 + (115) so4_a1 + (116) so4_a2 + (117) so4_a3 + (118) so4_a5 + (119) soa_a1 + (120) soa_a2 + (121) SOAE + (122) SOAG + (123) ST80_25 + (124) TERP + (125) XOOH + (126) C2H5O2 + (127) C3H7O2 + (128) CH3CO3 + (129) CH3O2 + (130) EO + (131) EO2 + (132) HO2 + (133) ISOPO2 + (134) MACRO2 + (135) MCO3 + (136) O1D + (137) OH + (138) PO2 + (139) RO2 + (140) XO2 + (141) H2O + + Photolysis + jh2o_b ( 1) H2O + hv -> H2 + O1D rate = ** User defined ** ( 1) + jh2o_a ( 2) H2O + hv -> OH + H rate = ** User defined ** ( 2) + jh2o_c ( 3) H2O + hv -> 2*H + O rate = ** User defined ** ( 3) + jh2o2 ( 4) H2O2 + hv -> 2*OH rate = ** User defined ** ( 4) + jo2_a ( 5) O2 + hv -> O + O1D rate = ** User defined ** ( 5) + jo2_b ( 6) O2 + hv -> 2*O rate = ** User defined ** ( 6) + jo3_a ( 7) O3 + hv -> O1D + O2_1D rate = ** User defined ** ( 7) + jo3_b ( 8) O3 + hv -> O + O2 rate = ** User defined ** ( 8) + jhno3 ( 9) HNO3 + hv -> NO2 + OH rate = ** User defined ** ( 9) + jho2no2_a ( 10) HO2NO2 + hv -> OH + NO3 rate = ** User defined ** ( 10) + jho2no2_b ( 11) HO2NO2 + hv -> NO2 + HO2 rate = ** User defined ** ( 11) + jn2o ( 12) N2O + hv -> O1D + N2 rate = ** User defined ** ( 12) + jn2o5_a ( 13) N2O5 + hv -> NO2 + NO3 rate = ** User defined ** ( 13) + jn2o5_b ( 14) N2O5 + hv -> NO + O + NO3 rate = ** User defined ** ( 14) + jno ( 15) NO + hv -> N + O rate = ** User defined ** ( 15) + jno2 ( 16) NO2 + hv -> NO + O rate = ** User defined ** ( 16) + jno3_b ( 17) NO3 + hv -> NO + O2 rate = ** User defined ** ( 17) + jno3_a ( 18) NO3 + hv -> NO2 + O rate = ** User defined ** ( 18) + jc2h5ooh ( 19) C2H5OOH + hv -> CH3CHO + HO2 + OH rate = ** User defined ** ( 19) + jc3h7ooh ( 20) C3H7OOH + hv -> 0.82*CH3COCH3 + OH + HO2 rate = ** User defined ** ( 20) + jch2o_a ( 21) CH2O + hv -> CO + 2*H rate = ** User defined ** ( 21) + jch2o_b ( 22) CH2O + hv -> CO + H2 rate = ** User defined ** ( 22) + jch3cho ( 23) CH3CHO + hv -> CH3O2 + CO + HO2 rate = ** User defined ** ( 23) + jacet ( 24) CH3COCH3 + hv -> CH3CO3 + CH3O2 rate = ** User defined ** ( 24) + jmgly ( 25) CH3COCHO + hv -> CH3CO3 + CO + HO2 rate = ** User defined ** ( 25) + jch3co3h ( 26) CH3COOOH + hv -> CH3O2 + OH + CO2 rate = ** User defined ** ( 26) + jch3ooh ( 27) CH3OOH + hv -> CH2O + H + OH rate = ** User defined ** ( 27) + jch4_b ( 28) CH4 + hv -> 1.44*H2 + 0.18*CH2O + 0.18*O + 0.33*OH + 0.33*H rate = ** User defined ** ( 28) + + 0.44*CO2 + 0.38*CO + 0.05*H2O + jch4_a ( 29) CH4 + hv -> H + CH3O2 rate = ** User defined ** ( 29) + jco2 ( 30) CO2 + hv -> CO + O rate = ** User defined ** ( 30) + jeooh ( 31) EOOH + hv -> EO + OH rate = ** User defined ** ( 31) + jglyald ( 32) GLYALD + hv -> 2*HO2 + CO + CH2O rate = ** User defined ** ( 32) + jglyoxal ( 33) GLYOXAL + hv -> 2*CO + 2*HO2 rate = ** User defined ** ( 33) + jhyac ( 34) HYAC + hv -> CH3CO3 + HO2 + CH2O rate = ** User defined ** ( 34) + jisopooh ( 35) ISOPOOH + hv -> 0.7*MVK + 0.3*MACR + OH + CH2O + HO2 rate = ** User defined ** ( 35) + jmacr_a ( 36) MACR + hv -> 1.34*HO2 + 0.66*MCO3 + 1.34*CH2O + 1.34*CH3CO3 rate = ** User defined ** ( 36) + jmacr_b ( 37) MACR + hv -> 0.66*HO2 + 1.34*CO rate = ** User defined ** ( 37) + jmpan ( 38) MPAN + hv -> MCO3 + NO2 rate = ** User defined ** ( 38) + jmvk ( 39) MVK + hv -> 0.7*C3H6 + 0.7*CO + 0.3*CH3O2 + 0.3*CH3CO3 rate = ** User defined ** ( 39) + jnoa ( 40) NOA + hv -> NO2 + CH2O + CH3CO3 rate = ** User defined ** ( 40) + jonitr ( 41) ONITR + hv -> HO2 + CO + NO2 + CH2O rate = ** User defined ** ( 41) + jpan ( 42) PAN + hv -> 0.6*CH3CO3 + 0.6*NO2 + 0.4*CH3O2 + 0.4*NO3 + 0.4*CO2 rate = ** User defined ** ( 42) + jpooh ( 43) POOH + hv -> CH3CHO + CH2O + HO2 + OH rate = ** User defined ** ( 43) + jrooh ( 44) ROOH + hv -> CH3CO3 + CH2O + OH rate = ** User defined ** ( 44) + jxooh ( 45) XOOH + hv -> OH rate = ** User defined ** ( 45) + jbrcl ( 46) BRCL + hv -> BR + CL rate = ** User defined ** ( 46) + jbro ( 47) BRO + hv -> BR + O rate = ** User defined ** ( 47) + jbrono2_b ( 48) BRONO2 + hv -> BRO + NO2 rate = ** User defined ** ( 48) + jbrono2_a ( 49) BRONO2 + hv -> BR + NO3 rate = ** User defined ** ( 49) + jccl4 ( 50) CCL4 + hv -> 4*CL rate = ** User defined ** ( 50) + jcf2clbr ( 51) CF2CLBR + hv -> BR + CL + {COF2} rate = ** User defined ** ( 51) + jcf3br ( 52) CF3BR + hv -> BR + {F} + {COF2} rate = ** User defined ** ( 52) + jcfcl3 ( 53) CFC11 + hv -> 3*CL rate = ** User defined ** ( 53) + jcfc113 ( 54) CFC113 + hv -> 3*CL rate = ** User defined ** ( 54) + jcfc114 ( 55) CFC114 + hv -> 2*CL + 2*{COF2} rate = ** User defined ** ( 55) + jcfc115 ( 56) CFC115 + hv -> CL + {F} + 2*{COF2} rate = ** User defined ** ( 56) + jcf2cl2 ( 57) CFC12 + hv -> 2*CL + {COF2} rate = ** User defined ** ( 57) + jch2br2 ( 58) CH2BR2 + hv -> 2*BR rate = ** User defined ** ( 58) + jch3br ( 59) CH3BR + hv -> BR + CH3O2 rate = ** User defined ** ( 59) + jch3ccl3 ( 60) CH3CCL3 + hv -> 3*CL rate = ** User defined ** ( 60) + jch3cl ( 61) CH3CL + hv -> CL + CH3O2 rate = ** User defined ** ( 61) + jchbr3 ( 62) CHBR3 + hv -> 3*BR rate = ** User defined ** ( 62) + jcl2 ( 63) CL2 + hv -> 2*CL rate = ** User defined ** ( 63) + jcl2o2 ( 64) CL2O2 + hv -> 2*CL rate = ** User defined ** ( 64) + jclo ( 65) CLO + hv -> CL + O rate = ** User defined ** ( 65) + jclono2_b ( 66) CLONO2 + hv -> CLO + NO2 rate = ** User defined ** ( 66) + jclono2_a ( 67) CLONO2 + hv -> CL + NO3 rate = ** User defined ** ( 67) + jh2402 ( 68) H2402 + hv -> 2*BR + 2*{COF2} rate = ** User defined ** ( 68) + jhbr ( 69) HBR + hv -> BR + H rate = ** User defined ** ( 69) + jhcfc141b ( 70) HCFC141B + hv -> 2*CL rate = ** User defined ** ( 70) + jhcfc142b ( 71) HCFC142B + hv -> CL + {COF2} rate = ** User defined ** ( 71) + jhcfc22 ( 72) HCFC22 + hv -> CL + {COF2} rate = ** User defined ** ( 72) + jhcl ( 73) HCL + hv -> H + CL rate = ** User defined ** ( 73) + jhobr ( 74) HOBR + hv -> BR + OH rate = ** User defined ** ( 74) + jhocl ( 75) HOCL + hv -> OH + CL rate = ** User defined ** ( 75) + joclo ( 76) OCLO + hv -> O + CLO rate = ** User defined ** ( 76) + jsf6 ( 77) SF6 + hv -> {sink} rate = ** User defined ** ( 77) + jh2so4 ( 78) H2SO4 + hv -> SO3 + H2O rate = ** User defined ** ( 78) + jocs ( 79) OCS + hv -> S + CO rate = ** User defined ** ( 79) + jso ( 80) SO + hv -> S + O rate = ** User defined ** ( 80) + jso2 ( 81) SO2 + hv -> SO + O rate = ** User defined ** ( 81) + jso3 ( 82) SO3 + hv -> SO2 + O rate = ** User defined ** ( 82) + jsoa_a1 ( 83) soa_a1 + hv -> (No products) rate = ** User defined ** ( 83) + jsoa_a2 ( 84) soa_a2 + hv -> (No products) rate = ** User defined ** ( 84) + + Reactions + ag1 ( 1) O2_1D -> O2 rate = 2.58E-04 ( 85) + ag2 ( 2) O2_1S -> O2 rate = 8.50E-02 ( 86) + O1D_H2 ( 3) O1D + H2 -> H + OH rate = 1.20E-10 ( 87) + O1D_H2O ( 4) O1D + H2O -> 2*OH rate = 1.63E-10*exp( 60./t) ( 88) + O1D_N2 ( 5) O1D + N2 -> O + N2 rate = 2.15E-11*exp( 110./t) ( 89) + O1D_O2 ( 6) O1D + O2 -> O + O2_1S rate = 2.64E-11*exp( 55./t) ( 90) + O1D_O2b ( 7) O1D + O2 -> O + O2 rate = 6.60E-12*exp( 55./t) ( 91) + O1D_O3 ( 8) O1D + O3 -> O2 + O2 rate = 1.20E-10 ( 92) + O1D_O3a ( 9) O1D + O3 -> O2 + 2*O rate = 1.20E-10 ( 93) + O2_1D_N2 ( 10) O2_1D + N2 -> O2 + N2 rate = 1.00E-20 ( 94) + O2_1D_O ( 11) O2_1D + O -> O2 + O rate = 1.30E-16 ( 95) + O2_1D_O2 ( 12) O2_1D + O2 -> 2*O2 rate = 3.60E-18*exp( -220./t) ( 96) + O2_1S_CO2 ( 13) O2_1S + CO2 -> O2_1D + CO2 rate = 4.20E-13 ( 97) + O2_1S_N2 ( 14) O2_1S + N2 -> O2_1D + N2 rate = 1.80E-15*exp( 45./t) ( 98) + O2_1S_O ( 15) O2_1S + O -> O2_1D + O rate = 8.00E-14 ( 99) + O2_1S_O2 ( 16) O2_1S + O2 -> O2_1D + O2 rate = 3.90E-17 (100) + O2_1S_O3 ( 17) O2_1S + O3 -> O2_1D + O3 rate = 3.50E-11*exp( -135./t) (101) + O_O3 ( 18) O + O3 -> 2*O2 rate = 8.00E-12*exp( -2060./t) (102) + usr_O_O ( 19) O + O + M -> O2 + M rate = ** User defined ** (103) + usr_O_O2 ( 20) O + O2 + M -> O3 + M rate = ** User defined ** (104) + H2_O ( 21) H2 + O -> OH + H rate = 1.60E-11*exp( -4570./t) (105) + H2O2_O ( 22) H2O2 + O -> OH + HO2 rate = 1.40E-12*exp( -2000./t) (106) + H_HO2 ( 23) H + HO2 -> H2 + O2 rate = 6.90E-12 (107) + H_HO2a ( 24) H + HO2 -> 2*OH rate = 7.20E-11 (108) + H_HO2b ( 25) H + HO2 -> H2O + O rate = 1.60E-12 (109) + H_O2 ( 26) H + O2 + M -> HO2 + M troe : ko=5.30E-32*(300/t)**1.80 (110) + ki=9.50E-11*(300/t)**-0.40 + f=0.60 + HO2_O ( 27) HO2 + O -> OH + O2 rate = 3.00E-11*exp( 200./t) (111) + HO2_O3 ( 28) HO2 + O3 -> OH + 2*O2 rate = 1.00E-14*exp( -490./t) (112) + H_O3 ( 29) H + O3 -> OH + O2 rate = 1.40E-10*exp( -470./t) (113) + OH_H2 ( 30) OH + H2 -> H2O + H rate = 2.80E-12*exp( -1800./t) (114) + OH_H2O2 ( 31) OH + H2O2 -> H2O + HO2 rate = 1.80E-12 (115) + OH_HO2 ( 32) OH + HO2 -> H2O + O2 rate = 4.80E-11*exp( 250./t) (116) + OH_O ( 33) OH + O -> H + O2 rate = 1.80E-11*exp( 180./t) (117) + OH_O3 ( 34) OH + O3 -> HO2 + O2 rate = 1.70E-12*exp( -940./t) (118) + OH_OH ( 35) OH + OH -> H2O + O rate = 1.80E-12 (119) + OH_OH_M ( 36) OH + OH + M -> H2O2 + M troe : ko=6.90E-31*(300/t)**1.00 (120) + ki=2.60E-11 + f=0.60 + usr_HO2_HO2 ( 37) HO2 + HO2 -> H2O2 + O2 rate = ** User defined ** (121) + HO2NO2_OH ( 38) HO2NO2 + OH -> H2O + NO2 + O2 rate = 4.50E-13*exp( 610./t) (122) + N_NO ( 39) N + NO -> N2 + O rate = 2.10E-11*exp( 100./t) (123) + N_NO2a ( 40) N + NO2 -> N2O + O rate = 2.90E-12*exp( 220./t) (124) + N_NO2b ( 41) N + NO2 -> 2*NO rate = 1.45E-12*exp( 220./t) (125) + N_NO2c ( 42) N + NO2 -> N2 + O2 rate = 1.45E-12*exp( 220./t) (126) + N_O2 ( 43) N + O2 -> NO + O rate = 3.30E-12*exp( -3150./t) (127) + NO2_O ( 44) NO2 + O -> NO + O2 rate = 5.10E-12*exp( 210./t) (128) + NO2_O3 ( 45) NO2 + O3 -> NO3 + O2 rate = 1.20E-13*exp( -2450./t) (129) + NO2_O_M ( 46) NO2 + O + M -> NO3 + M troe : ko=2.50E-31*(300/t)**1.80 (130) + ki=2.20E-11*(300/t)**0.70 + f=0.60 + NO3_HO2 ( 47) NO3 + HO2 -> OH + NO2 + O2 rate = 3.50E-12 (131) + NO3_NO ( 48) NO3 + NO -> 2*NO2 rate = 1.70E-11*exp( 125./t) (132) + NO3_O ( 49) NO3 + O -> NO2 + O2 rate = 1.30E-11 (133) + NO3_OH ( 50) NO3 + OH -> HO2 + NO2 rate = 2.20E-11 (134) + N_OH ( 51) N + OH -> NO + H rate = 5.00E-11 (135) + NO_HO2 ( 52) NO + HO2 -> NO2 + OH rate = 3.44E-12*exp( 260./t) (136) + NO_O3 ( 53) NO + O3 -> NO2 + O2 rate = 3.00E-12*exp( -1500./t) (137) + NO_O_M ( 54) NO + O + M -> NO2 + M troe : ko=9.00E-32*(300/t)**1.50 (138) + ki=3.00E-11 + f=0.60 + O1D_N2Oa ( 55) O1D + N2O -> 2*NO rate = 7.26E-11*exp( 20./t) (139) + O1D_N2Ob ( 56) O1D + N2O -> N2 + O2 rate = 4.64E-11*exp( 20./t) (140) + tag_NO2_HO2 ( 57) NO2 + HO2 + M -> HO2NO2 + M troe : ko=1.90E-31*(300/t)**3.40 (141) + ki=4.00E-12*(300/t)**0.30 + f=0.60 + tag_NO2_NO3 ( 58) NO2 + NO3 + M -> N2O5 + M troe : ko=2.40E-30*(300/t)**3.00 (142) + ki=1.60E-12*(300/t)**-0.10 + f=0.60 + tag_NO2_OH ( 59) NO2 + OH + M -> HNO3 + M troe : ko=1.80E-30*(300/t)**3.00 (143) + ki=2.80E-11 + f=0.60 + usr_HNO3_OH ( 60) HNO3 + OH -> NO3 + H2O rate = ** User defined ** (144) + usr_HO2NO2_M ( 61) HO2NO2 + M -> HO2 + NO2 + M rate = ** User defined ** (145) + usr_N2O5_M ( 62) N2O5 + M -> NO2 + NO3 + M rate = ** User defined ** (146) + CL_CH2O ( 63) CL + CH2O -> HCL + HO2 + CO rate = 8.10E-11*exp( -30./t) (147) + CL_CH4 ( 64) CL + CH4 -> CH3O2 + HCL rate = 7.10E-12*exp( -1270./t) (148) + CL_H2 ( 65) CL + H2 -> HCL + H rate = 3.05E-11*exp( -2270./t) (149) + CL_H2O2 ( 66) CL + H2O2 -> HCL + HO2 rate = 1.10E-11*exp( -980./t) (150) + CL_HO2a ( 67) CL + HO2 -> HCL + O2 rate = 1.40E-11*exp( 270./t) (151) + CL_HO2b ( 68) CL + HO2 -> OH + CLO rate = 3.60E-11*exp( -375./t) (152) + CL_O3 ( 69) CL + O3 -> CLO + O2 rate = 2.30E-11*exp( -200./t) (153) + CLO_CH3O2 ( 70) CLO + CH3O2 -> CL + HO2 + CH2O rate = 3.30E-12*exp( -115./t) (154) + CLO_CLOa ( 71) CLO + CLO -> 2*CL + O2 rate = 3.00E-11*exp( -2450./t) (155) + CLO_CLOb ( 72) CLO + CLO -> CL2 + O2 rate = 1.00E-12*exp( -1590./t) (156) + CLO_CLOc ( 73) CLO + CLO -> CL + OCLO rate = 3.50E-13*exp( -1370./t) (157) + CLO_HO2 ( 74) CLO + HO2 -> O2 + HOCL rate = 2.60E-12*exp( 290./t) (158) + CLO_NO ( 75) CLO + NO -> NO2 + CL rate = 6.40E-12*exp( 290./t) (159) + CLONO2_CL ( 76) CLONO2 + CL -> CL2 + NO3 rate = 6.50E-12*exp( 135./t) (160) + CLO_NO2_M ( 77) CLO + NO2 + M -> CLONO2 + M troe : ko=1.80E-31*(300/t)**3.40 (161) + ki=1.50E-11*(300/t)**1.90 + f=0.60 + CLONO2_O ( 78) CLONO2 + O -> CLO + NO3 rate = 3.60E-12*exp( -840./t) (162) + CLONO2_OH ( 79) CLONO2 + OH -> HOCL + NO3 rate = 1.20E-12*exp( -330./t) (163) + CLO_O ( 80) CLO + O -> CL + O2 rate = 2.80E-11*exp( 85./t) (164) + CLO_OHa ( 81) CLO + OH -> CL + HO2 rate = 7.40E-12*exp( 270./t) (165) + CLO_OHb ( 82) CLO + OH -> HCL + O2 rate = 6.00E-13*exp( 230./t) (166) + HCL_O ( 83) HCL + O -> CL + OH rate = 1.00E-11*exp( -3300./t) (167) + HCL_OH ( 84) HCL + OH -> H2O + CL rate = 1.80E-12*exp( -250./t) (168) + HOCL_CL ( 85) HOCL + CL -> HCL + CLO rate = 3.40E-12*exp( -130./t) (169) + HOCL_O ( 86) HOCL + O -> CLO + OH rate = 1.70E-13 (170) + HOCL_OH ( 87) HOCL + OH -> H2O + CLO rate = 3.00E-12*exp( -500./t) (171) + O1D_CCL4 ( 88) O1D + CCL4 -> 4*CL rate = 2.61E-10 (172) + O1D_CF2CLBR ( 89) O1D + CF2CLBR -> CL + BR + {COF2} rate = 9.75E-11 (173) + O1D_CFC11 ( 90) O1D + CFC11 -> 3*CL rate = 2.07E-10 (174) + O1D_CFC113 ( 91) O1D + CFC113 -> 3*CL rate = 2.09E-10 (175) + O1D_CFC114 ( 92) O1D + CFC114 -> 2*CL + 2*{COF2} rate = 1.17E-10 (176) + O1D_CFC115 ( 93) O1D + CFC115 -> CL + {F} + 2*{COF2} rate = 4.64E-11 (177) + O1D_CFC12 ( 94) O1D + CFC12 -> 2*CL + {COF2} rate = 1.20E-10 (178) + O1D_HCLa ( 95) O1D + HCL -> CL + OH rate = 9.90E-11 (179) + O1D_HCLb ( 96) O1D + HCL -> CLO + H rate = 3.30E-12 (180) + tag_CLO_CLO_M ( 97) CLO + CLO + M -> CL2O2 + M troe : ko=1.90E-32*(300/t)**3.60 (181) + ki=3.70E-12*(300/t)**1.60 + f=0.60 + usr_CL2O2_M ( 98) CL2O2 + M -> CLO + CLO + M rate = ** User defined ** (182) + BR_CH2O ( 99) BR + CH2O -> HBR + HO2 + CO rate = 1.70E-11*exp( -800./t) (183) + BR_HO2 (100) BR + HO2 -> HBR + O2 rate = 4.80E-12*exp( -310./t) (184) + BR_O3 (101) BR + O3 -> BRO + O2 rate = 1.60E-11*exp( -780./t) (185) + BRO_BRO (102) BRO + BRO -> 2*BR + O2 rate = 1.50E-12*exp( 230./t) (186) + BRO_CLOa (103) BRO + CLO -> BR + OCLO rate = 9.50E-13*exp( 550./t) (187) + BRO_CLOb (104) BRO + CLO -> BR + CL + O2 rate = 2.30E-12*exp( 260./t) (188) + BRO_CLOc (105) BRO + CLO -> BRCL + O2 rate = 4.10E-13*exp( 290./t) (189) + BRO_HO2 (106) BRO + HO2 -> HOBR + O2 rate = 4.50E-12*exp( 460./t) (190) + BRO_NO (107) BRO + NO -> BR + NO2 rate = 8.80E-12*exp( 260./t) (191) + BRO_NO2_M (108) BRO + NO2 + M -> BRONO2 + M troe : ko=5.20E-31*(300/t)**3.20 (192) + ki=6.90E-12*(300/t)**2.90 + f=0.60 + BRONO2_O (109) BRONO2 + O -> BRO + NO3 rate = 1.90E-11*exp( 215./t) (193) + BRO_O (110) BRO + O -> BR + O2 rate = 1.90E-11*exp( 230./t) (194) + BRO_OH (111) BRO + OH -> BR + HO2 rate = 1.70E-11*exp( 250./t) (195) + HBR_O (112) HBR + O -> BR + OH rate = 5.80E-12*exp( -1500./t) (196) + HBR_OH (113) HBR + OH -> BR + H2O rate = 5.50E-12*exp( 200./t) (197) + HOBR_O (114) HOBR + O -> BRO + OH rate = 1.20E-10*exp( -430./t) (198) + O1D_CF3BR (115) O1D + CF3BR -> BR + {F} + {COF2} rate = 4.50E-11 (199) + O1D_CHBR3 (116) O1D + CHBR3 -> 3*BR rate = 4.62E-10 (200) + O1D_H2402 (117) O1D + H2402 -> 2*BR + 2*{COF2} rate = 1.20E-10 (201) + O1D_HBRa (118) O1D + HBR -> BR + OH rate = 9.00E-11 (202) + O1D_HBRb (119) O1D + HBR -> BRO + H rate = 3.00E-11 (203) + CH2BR2_CL (120) CH2BR2 + CL -> 2*BR + HCL rate = 6.30E-12*exp( -800./t) (204) + CH2BR2_OH (121) CH2BR2 + OH -> 2*BR + H2O rate = 2.00E-12*exp( -840./t) (205) + CH3BR_CL (122) CH3BR + CL -> HCL + HO2 + BR rate = 1.46E-11*exp( -1040./t) (206) + CH3BR_OH (123) CH3BR + OH -> BR + H2O + HO2 rate = 1.42E-12*exp( -1150./t) (207) + CH3CCL3_OH (124) CH3CCL3 + OH -> H2O + 3*CL rate = 1.64E-12*exp( -1520./t) (208) + CH3CL_CL (125) CH3CL + CL -> HO2 + CO + 2*HCL rate = 2.03E-11*exp( -1100./t) (209) + CH3CL_OH (126) CH3CL + OH -> CL + H2O + HO2 rate = 1.96E-12*exp( -1200./t) (210) + CHBR3_CL (127) CHBR3 + CL -> 3*BR + HCL rate = 4.85E-12*exp( -850./t) (211) + CHBR3_OH (128) CHBR3 + OH -> 3*BR rate = 9.00E-13*exp( -360./t) (212) + HCFC141B_OH (129) HCFC141B + OH -> CL + CL rate = 1.25E-12*exp( -1600./t) (213) + HCFC142B_OH (130) HCFC142B + OH -> CL + {COF2} rate = 1.30E-12*exp( -1770./t) (214) + HCFC22_OH (131) HCFC22 + OH -> H2O + CL + {COF2} rate = 9.20E-13*exp( -1560./t) (215) + O1D_CH2BR2 (132) O1D + CH2BR2 -> 2*BR rate = 2.57E-10 (216) + O1D_CH3BR (133) O1D + CH3BR -> BR rate = 1.80E-10 (217) + O1D_HCFC141B (134) O1D + HCFC141B -> CL + CL rate = 1.79E-10 (218) + O1D_HCFC142B (135) O1D + HCFC142B -> CL + {COF2} rate = 1.30E-10 (219) + O1D_HCFC22 (136) O1D + HCFC22 -> CL + {COF2} rate = 7.65E-11 (220) + CH2O_NO3 (137) CH2O + NO3 -> CO + HO2 + HNO3 rate = 6.00E-13*exp( -2058./t) (221) + CH2O_O (138) CH2O + O -> HO2 + OH + CO rate = 3.40E-11*exp( -1600./t) (222) + CH2O_OH (139) CH2O + OH -> CO + H2O + H rate = 5.50E-12*exp( 125./t) (223) + CH3O2_CH3O2a (140) CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 rate = 5.00E-13*exp( -424./t) (224) + CH3O2_CH3O2b (141) CH3O2 + CH3O2 -> CH2O + CH3OH rate = 1.90E-14*exp( 706./t) (225) + CH3O2_HO2 (142) CH3O2 + HO2 -> CH3OOH + O2 rate = 4.10E-13*exp( 750./t) (226) + CH3O2_NO (143) CH3O2 + NO -> CH2O + NO2 + HO2 rate = 2.80E-12*exp( 300./t) (227) + CH3OH_OH (144) CH3OH + OH -> HO2 + CH2O rate = 2.90E-12*exp( -345./t) (228) + CH3OOH_OH (145) CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O rate = 3.80E-12*exp( 200./t) (229) + CH4_OH (146) CH4 + OH -> CH3O2 + H2O rate = 2.45E-12*exp( -1775./t) (230) + O1D_CH4a (147) O1D + CH4 -> CH3O2 + OH rate = 1.31E-10 (231) + O1D_CH4b (148) O1D + CH4 -> CH2O + H + HO2 rate = 3.50E-11 (232) + O1D_CH4c (149) O1D + CH4 -> CH2O + H2 rate = 9.00E-12 (233) + usr_CO_OH (150) CO + OH -> CO2 + HO2 rate = ** User defined ** (234) + C2H4_CL_M (151) C2H4 + CL + M -> CL + M troe : ko=1.60E-29*(300/t)**3.30 (235) + ki=3.10E-10*(300/t) + f=0.60 + C2H4_O3 (152) C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*{HCOOH} + CH2O rate = 1.20E-14*exp( -2630./t) (236) + C2H5O2_C2H5O2 (153) C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH rate = 6.80E-14 (237) + C2H5O2_CH3O2 (154) C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH rate = 2.00E-13 (238) + + 0.2*C2H5OH + C2H5O2_HO2 (155) C2H5O2 + HO2 -> C2H5OOH + O2 rate = 7.50E-13*exp( 700./t) (239) + C2H5O2_NO (156) C2H5O2 + NO -> CH3CHO + HO2 + NO2 rate = 2.60E-12*exp( 365./t) (240) + C2H5OH_OH (157) C2H5OH + OH -> HO2 + CH3CHO rate = 6.90E-12*exp( -230./t) (241) + C2H5OOH_OH (158) C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH rate = 3.80E-12*exp( 200./t) (242) + C2H6_CL (159) C2H6 + CL -> HCL + C2H5O2 rate = 7.20E-11*exp( -70./t) (243) + C2H6_OH (160) C2H6 + OH -> C2H5O2 + H2O rate = 7.66E-12*exp( -1020./t) (244) + CH3CHO_NO3 (161) CH3CHO + NO3 -> CH3CO3 + HNO3 rate = 1.40E-12*exp( -1900./t) (245) + CH3CHO_OH (162) CH3CHO + OH -> CH3CO3 + H2O rate = 4.63E-12*exp( 350./t) (246) + CH3CO3_CH3CO3 (163) CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 rate = 2.90E-12*exp( 500./t) (247) + CH3CO3_CH3O2 (164) CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 rate = 2.00E-12*exp( 500./t) (248) + + 0.1*CH3COOH + CH3CO3_HO2 (165) CH3CO3 + HO2 -> 0.4*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.45*OH rate = 4.30E-13*exp( 1040./t) (249) + + 0.45*CH3O2 + CH3CO3_NO (166) CH3CO3 + NO -> CH3O2 + CO2 + NO2 rate = 8.10E-12*exp( 270./t) (250) + CH3COOH_OH (167) CH3COOH + OH -> CH3O2 + CO2 + H2O rate = 3.15E-14*exp( 920./t) (251) + CH3COOOH_OH (168) CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O rate = 1.00E-12 (252) + EO2_HO2 (169) EO2 + HO2 -> EOOH rate = 7.50E-13*exp( 700./t) (253) + EO2_NO (170) EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 rate = 4.20E-12*exp( 180./t) (254) + EO_M (171) EO -> 2*CH2O + HO2 rate = 1.60E+11*exp( -4150./t) (255) + EO_O2 (172) EO + O2 -> GLYALD + HO2 rate = 1.00E-14 (256) + GLYALD_OH (173) GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 rate = 1.00E-11 (257) + GLYOXAL_OH (174) GLYOXAL + OH -> HO2 + CO + CO2 rate = 1.15E-11 (258) + PAN_OH (175) PAN + OH -> CH2O + NO3 rate = 4.00E-14 (259) + tag_C2H4_OH (176) C2H4 + OH + M -> EO2 + M troe : ko=8.60E-29*(300/t)**3.10 (260) + ki=9.00E-12*(300/t)**0.85 + f=0.48 + tag_CH3CO3_NO2 (177) CH3CO3 + NO2 + M -> PAN + M troe : ko=7.30E-29*(300/t)**4.10 (261) + ki=9.50E-12*(300/t)**1.60 + f=0.60 + usr_PAN_M (178) PAN + M -> CH3CO3 + NO2 + M rate = ** User defined ** (262) + C3H6_NO3 (179) C3H6 + NO3 -> NOA rate = 4.60E-13*exp( -1156./t) (263) + C3H6_O3 (180) C3H6 + O3 -> 0.5*CH2O + 0.12*{HCOOH} + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (264) + + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + + 0.36*OH + C3H7O2_CH3O2 (181) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 1.00E-13*exp( 557./t) (265) + C3H7O2_HO2 (182) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 1.41E-13*exp( 1300./t) (266) + C3H7O2_NO (183) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 2.70E-12*exp( 360./t) (267) + C3H7OOH_OH (184) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (268) + C3H8_OH (185) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (269) + CH3COCHO_NO3 (186) CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 rate = 1.40E-12*exp( -1860./t) (270) + CH3COCHO_OH (187) CH3COCHO + OH -> CH3CO3 + CO + H2O rate = 8.40E-13*exp( 830./t) (271) + HYAC_OH (188) HYAC + OH -> CH3COCHO + HO2 rate = 3.00E-12 (272) + NOA_OH (189) NOA + OH -> NO2 + CH3COCHO rate = 6.70E-13 (273) + PO2_HO2 (190) PO2 + HO2 -> POOH + O2 rate = 7.50E-13*exp( 700./t) (274) + PO2_NO (191) PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 rate = 4.20E-12*exp( 180./t) (275) + POOH_OH (192) POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O rate = 3.80E-12*exp( 200./t) (276) + RO2_CH3O2 (193) RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC rate = 7.10E-13*exp( 500./t) (277) + + 0.5*CH3COCHO + 0.5*CH3OH + RO2_HO2 (194) RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 rate = 8.60E-13*exp( 700./t) (278) + RO2_NO (195) RO2 + NO -> CH3CO3 + CH2O + NO2 rate = 2.90E-12*exp( 300./t) (279) + ROOH_OH (196) ROOH + OH -> RO2 + H2O rate = 3.80E-12*exp( 200./t) (280) + tag_C3H6_OH (197) C3H6 + OH + M -> PO2 + M troe : ko=8.00E-27*(300/t)**3.50 (281) + ki=3.00E-11 + f=0.50 + usr_CH3COCH3_OH (198) CH3COCH3 + OH -> RO2 + H2O rate = ** User defined ** (282) + MACRO2_CH3CO3 (199) MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 rate = 1.40E-11 (283) + + 0.53*GLYALD + 0.22*HYAC + 0.25*CH2O + + 0.53*CH3CO3 + MACRO2_CH3O2 (200) MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO rate = 5.00E-13*exp( 400./t) (284) + + 0.26*GLYALD + 0.26*CH3CO3 + 0.25*CH3OH + + 0.23*HYAC + MACRO2_HO2 (201) MACRO2 + HO2 -> MACROOH rate = 8.00E-13*exp( 700./t) (285) + MACRO2_NO3 (202) MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO rate = 2.40E-12 (286) + + 0.22*CO + 0.53*GLYALD + 0.22*HYAC + 0.53*CH3CO3 + MACRO2_NOa (203) MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD rate = 2.70E-12*exp( 360./t) (287) + + 0.25*CH3COCHO + 0.53*CH3CO3 + 0.22*HYAC + 0.22*CO + MACRO2_NOb (204) MACRO2 + NO -> 0.8*ONITR rate = 1.30E-13*exp( 360./t) (288) + MACR_O3 (205) MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 rate = 1.50E-15*exp( -2100./t) (289) + + 0.88*CH3COCHO + 0.33*{HCOOH} + 0.14*HO2 + MACR_OH (206) MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 rate = 9.60E-12*exp( 360./t) (290) + MACROOH_OH (207) MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 rate = 2.30E-11*exp( 200./t) (291) + MCO3_CH3CO3 (208) MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 rate = 4.60E-12*exp( 530./t) (292) + MCO3_CH3O2 (209) MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 rate = 2.00E-12*exp( 500./t) (293) + MCO3_HO2 (210) MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH rate = 4.30E-13*exp( 1040./t) (294) + + 0.45*CO2 + 0.45*CH2O + 0.45*CH3CO3 + MCO3_MCO3 (211) MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 rate = 2.30E-12*exp( 530./t) (295) + MCO3_NO (212) MCO3 + NO -> NO2 + CH2O + CH3CO3 rate = 5.30E-12*exp( 360./t) (296) + MCO3_NO3 (213) MCO3 + NO3 -> NO2 + CH2O + CH3CO3 rate = 5.00E-12 (297) + MPAN_OH_M (214) MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 troe : ko=8.00E-27*(300/t)**3.50 (298) + + 0.5*NDEP + M ki=3.00E-11 + f=0.50 + MVK_O3 (215) MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 rate = 8.50E-16*exp( -1520./t) (299) + + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*{HCOOH} + MVK_OH (216) MVK + OH -> MACRO2 rate = 4.13E-12*exp( 452./t) (300) + tag_MCO3_NO2 (217) MCO3 + NO2 + M -> MPAN + M troe : ko=9.70E-29*(300/t)**5.60 (301) + ki=9.30E-12*(300/t)**1.50 + f=0.60 + usr_MPAN_M (218) MPAN + M -> MCO3 + NO2 + M rate = ** User defined ** (302) + BIGALK_OH (219) BIGALK + OH -> 1.67*C3H7O2 rate = 3.50E-12 (303) + HYDRALD_OH (220) HYDRALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (304) + ISOP_NO3 (221) ISOP + NO3 -> ISOPNO3 rate = 3.03E-12*exp( -446./t) (305) + ISOPNO3_HO2 (222) ISOPNO3 + HO2 -> 0.206*NO2 + 0.206*CH2O + 0.206*OH + 0.167*MACR rate = 8.00E-13*exp( 700./t) (306) + + 0.039*MVK + 0.794*ONITR + ISOPNO3_NO (223) ISOPNO3 + NO -> 1.206*NO2 + 0.794*HO2 + 0.072*CH2O + 0.167*MACR rate = 2.70E-12*exp( 360./t) (307) + + 0.039*MVK + 0.794*ONITR + ISOPNO3_NO3 (224) ISOPNO3 + NO3 -> 1.206*NO2 + 0.072*CH2O + 0.167*MACR + 0.039*MVK rate = 2.40E-12 (308) + + 0.794*ONITR + 0.794*HO2 + ISOPO2_CH3CO3 (225) ISOPO2 + CH3CO3 -> CH3O2 + HO2 + 0.6*CH2O + 0.25*MACR + 0.35*MVK rate = 1.40E-11 (309) + + 0.4*HYDRALD + ISOPO2_CH3O2 (226) ISOPO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.2*CH2O + 0.19*MACR rate = 5.00E-13*exp( 400./t) (310) + + 0.26*MVK + 0.3*HYDRALD + ISOPO2_HO2 (227) ISOPO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (311) + ISOPO2_NO (228) ISOPO2 + NO -> 0.08*ONITR + 0.92*NO2 + 0.23*MACR + 0.32*MVK rate = 4.40E-12*exp( 180./t) (312) + + 0.33*HYDRALD + 0.02*GLYOXAL + 0.02*GLYALD + + 0.02*CH3COCHO + 0.02*HYAC + 0.55*CH2O + 0.92*HO2 + ISOPO2_NO3 (229) ISOPO2 + NO3 -> HO2 + NO2 + 0.6*CH2O + 0.25*MACR + 0.35*MVK rate = 2.40E-12 (313) + + 0.4*HYDRALD + ISOP_O3 (230) ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*{HCOOH} + 0.62*CO + 0.32*OH rate = 1.05E-14*exp( -2000./t) (314) + + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 + + 0.05*CH3O2 + ISOP_OH (231) ISOP + OH -> ISOPO2 rate = 2.54E-11*exp( 410./t) (315) + ISOPOOH_OH (232) ISOPOOH + OH -> 0.8*XO2 + 0.2*ISOPO2 rate = 1.52E-11*exp( 200./t) (316) + ONITR_NO3 (233) ONITR + NO3 -> HO2 + NO2 + HYDRALD + NDEP rate = 1.40E-12*exp( -1860./t) (317) + ONITR_OH (234) ONITR + OH -> HYDRALD + 0.4*NO2 + HO2 + 0.6*NDEP rate = 4.50E-11 (318) + XO2_CH3CO3 (235) XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 rate = 1.30E-12*exp( 640./t) (319) + + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 + XO2_CH3O2 (236) XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO rate = 5.00E-13*exp( 400./t) (320) + + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD + XO2_HO2 (237) XO2 + HO2 -> XOOH rate = 8.00E-13*exp( 700./t) (321) + XO2_NO (238) XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL rate = 2.70E-12*exp( 360./t) (322) + + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + XO2_NO3 (239) XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL rate = 2.40E-12 (323) + + 0.25*CH3COCHO + 0.25*GLYALD + XOOH_OH (240) XOOH + OH -> 0.5*XO2 + 0.5*OH rate = 1.52E-12*exp( 200./t) (324) + TERP_NO3 (241) TERP + NO3 -> 1.7*ISOPO2 + NO2 rate = 1.20E-12*exp( 490./t) (325) + TERP_O3 (242) TERP + O3 -> 1.122*MACR + 0.442*MVK + 0.765*O + 1.156*OH rate = 6.30E-16*exp( -580./t) (326) + TERP_OH (243) TERP + OH -> 1.64*ISOPO2 + 0.1*CH3COCH3 rate = 1.20E-11*exp( 440./t) (327) + DMS_NO3 (244) DMS + NO3 -> SO2 + HNO3 rate = 1.90E-13*exp( 520./t) (328) + DMS_OHa (245) DMS + OH -> SO2 rate = 1.10E-11*exp( -280./t) (329) + OCS_O (246) OCS + O -> SO + CO rate = 2.10E-11*exp( -2200./t) (330) + OCS_OH (247) OCS + OH -> SO2 + CO + H rate = 7.20E-14*exp( -1070./t) (331) + S_O2 (248) S + O2 -> SO + O rate = 2.30E-12 (332) + SO2_OH_M (249) SO2 + OH + M -> SO3 + HO2 troe : ko=2.90E-31*(300/t)**4.10 (333) + ki=1.70E-12*(300/t)**-0.20 + f=0.60 + S_O3 (250) S + O3 -> SO + O2 rate = 1.20E-11 (334) + SO_BRO (251) SO + BRO -> SO2 + BR rate = 5.70E-11 (335) + SO_CLO (252) SO + CLO -> SO2 + CL rate = 2.80E-11 (336) + S_OH (253) S + OH -> SO + H rate = 6.60E-11 (337) + SO_NO2 (254) SO + NO2 -> SO2 + NO rate = 1.40E-11 (338) + SO_O2 (255) SO + O2 -> SO2 + O rate = 1.60E-13*exp( -2280./t) (339) + SO_O3 (256) SO + O3 -> SO2 + O2 rate = 3.40E-12*exp( -1100./t) (340) + SO_OCLO (257) SO + OCLO -> SO2 + CLO rate = 1.90E-12 (341) + SO_OH (258) SO + OH -> SO2 + H rate = 2.60E-11*exp( 330./t) (342) + usr_DMS_OH (259) DMS + OH -> 0.5*SO2 + 0.5*HO2 rate = ** User defined ** (343) + usr_SO3_H2O (260) SO3 + H2O -> H2SO4 rate = ** User defined ** (344) + NH3_OH (261) NH3 + OH -> H2O + NHDEP rate = 1.70E-12*exp( -710./t) (345) + usr_HO2_aer (262) HO2 -> H2O rate = ** User defined ** (346) + usr_N2O5_aer (263) N2O5 -> 2*HNO3 rate = ** User defined ** (347) + usr_NH4_strat_ta (264) NH4 -> NHDEP rate = 6.34E-08 (348) + usr_NO2_aer (265) NO2 -> 0.5*OH + 0.5*NO + 0.5*HNO3 rate = ** User defined ** (349) + usr_NO3_aer (266) NO3 -> HNO3 rate = ** User defined ** (350) + usr_ONITR_aer (267) ONITR -> HNO3 rate = ** User defined ** (351) + SOAE_tau (268) SOAE -> SOAG rate = 1.16E-05 (352) + het1 (269) N2O5 -> 2*HNO3 rate = ** User defined ** (353) + het10 (270) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (354) + het11 (271) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (355) + het12 (272) N2O5 -> 2*HNO3 rate = ** User defined ** (356) + het13 (273) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (357) + het14 (274) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (358) + het15 (275) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (359) + het16 (276) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (360) + het17 (277) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (361) + het2 (278) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (362) + het3 (279) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (363) + het4 (280) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (364) + het5 (281) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (365) + het6 (282) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (366) + het7 (283) N2O5 -> 2*HNO3 rate = ** User defined ** (367) + het8 (284) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (368) + het9 (285) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (369) + E90_tau (286) E90 -> {sink} rate = 1.29E-07 (370) + NH_50_tau (287) NH_50 -> (No products) rate = 2.31E-07 (371) + NH_5_tau (288) NH_5 -> (No products) rate = 2.31E-06 (372) + ST80_25_tau (289) ST80_25 -> (No products) rate = 4.63E-07 (373) + +Extraneous prod/loss species + ( 1) H2O (dataset) + ( 2) CO (dataset) + ( 3) bc_a4 (dataset) + ( 4) NO2 (dataset) + ( 5) num_a1 (dataset) + ( 6) num_a2 (dataset) + ( 7) num_a4 (dataset) + ( 8) SO2 (dataset) + ( 9) so4_a1 (dataset) + (10) so4_a2 (dataset) + (11) NO + + + Equation Report + + d(bc_a1)/dt = 0 + d(bc_a4)/dt = 0 + d(BIGALK)/dt = - r219*OH*BIGALK + d(BR)/dt = j46*BRCL + j47*BRO + j49*BRONO2 + j51*CF2CLBR + j52*CF3BR + 2*j58*CH2BR2 + j59*CH3BR + + 3*j62*CHBR3 + 2*j68*H2402 + j69*HBR + j74*HOBR + r89*O1D*CF2CLBR + 2*r102*BRO*BRO + + r103*BRO*CLO + r104*BRO*CLO + r107*BRO*NO + r110*BRO*O + r111*BRO*OH + r112*HBR*O + + r113*HBR*OH + r115*O1D*CF3BR + 3*r116*O1D*CHBR3 + 2*r117*O1D*H2402 + r118*O1D*HBR + + 2*r120*CH2BR2*CL + 2*r121*CH2BR2*OH + r122*CH3BR*CL + r123*CH3BR*OH + 3*r127*CHBR3*CL + + 3*r128*CHBR3*OH + 2*r132*O1D*CH2BR2 + r133*O1D*CH3BR + r251*SO*BRO + - r99*CH2O*BR - r100*HO2*BR - r101*O3*BR + d(BRCL)/dt = r105*BRO*CLO + r277*HOBR*HCL + r282*HOBR*HCL + - j46*BRCL + d(BRO)/dt = j48*BRONO2 + r101*BR*O3 + r109*BRONO2*O + r114*HOBR*O + r119*O1D*HBR + - j47*BRO - 2*r102*BRO*BRO - r103*CLO*BRO - r104*CLO*BRO - r105*CLO*BRO - r106*HO2*BRO + - r107*NO*BRO - r108*M*NO2*BRO - r110*O*BRO - r111*OH*BRO - r251*SO*BRO + d(BRONO2)/dt = r108*M*BRO*NO2 + - j48*BRONO2 - j49*BRONO2 - r271*BRONO2 - r274*BRONO2 - r279*BRONO2 - r109*O*BRONO2 + d(BRY)/dt = 0 + d(C2H4)/dt = - r151*M*CL*C2H4 - r152*O3*C2H4 - r176*M*OH*C2H4 + d(C2H5OH)/dt = .4*r153*C2H5O2*C2H5O2 + .2*r154*C2H5O2*CH3O2 + - r157*OH*C2H5OH + d(C2H5OOH)/dt = r155*C2H5O2*HO2 + - j19*C2H5OOH - r158*OH*C2H5OOH + d(C2H6)/dt = - r159*CL*C2H6 - r160*OH*C2H6 + d(C3H6)/dt = .7*j39*MVK + .13*r230*ISOP*O3 + - r179*NO3*C3H6 - r180*O3*C3H6 - r197*M*OH*C3H6 + d(C3H7OOH)/dt = r182*C3H7O2*HO2 + - j20*C3H7OOH - r184*OH*C3H7OOH + d(C3H8)/dt = - r185*OH*C3H8 + d(CCL4)/dt = - j50*CCL4 - r88*O1D*CCL4 + d(CF2CLBR)/dt = - j51*CF2CLBR - r89*O1D*CF2CLBR + d(CF3BR)/dt = - j52*CF3BR - r115*O1D*CF3BR + d(CFC11)/dt = - j53*CFC11 - r90*O1D*CFC11 + d(CFC113)/dt = - j54*CFC113 - r91*O1D*CFC113 + d(CFC114)/dt = - j55*CFC114 - r92*O1D*CFC114 + d(CFC115)/dt = - j56*CFC115 - r93*O1D*CFC115 + d(CFC12)/dt = - j57*CFC12 - r94*O1D*CFC12 + d(CH2BR2)/dt = - j58*CH2BR2 - r120*CL*CH2BR2 - r121*OH*CH2BR2 - r132*O1D*CH2BR2 + d(CH2O)/dt = j27*CH3OOH + .18*j28*CH4 + j32*GLYALD + j34*HYAC + j35*ISOPOOH + 1.34*j36*MACR + j40*NOA + + j41*ONITR + j43*POOH + j44*ROOH + 2*r171*EO + r70*CLO*CH3O2 + 2*r140*CH3O2*CH3O2 + + r141*CH3O2*CH3O2 + r143*CH3O2*NO + r144*CH3OH*OH + .3*r145*CH3OOH*OH + r148*O1D*CH4 + + r149*O1D*CH4 + r152*C2H4*O3 + .7*r154*C2H5O2*CH3O2 + r164*CH3CO3*CH3O2 + .5*r168*CH3COOOH*OH + + .5*r170*EO2*NO + .8*r173*GLYALD*OH + r175*PAN*OH + .5*r180*C3H6*O3 + r181*C3H7O2*CH3O2 + + r191*PO2*NO + .8*r193*RO2*CH3O2 + .15*r194*RO2*HO2 + r195*RO2*NO + .25*r199*MACRO2*CH3CO3 + + .88*r200*MACRO2*CH3O2 + .25*r202*MACRO2*NO3 + .25*r203*MACRO2*NO + .12*r205*MACR*O3 + + r208*MCO3*CH3CO3 + 2*r209*MCO3*CH3O2 + .45*r210*MCO3*HO2 + 2*r211*MCO3*MCO3 + r212*MCO3*NO + + r213*MCO3*NO3 + .5*r214*M*MPAN*OH + .6*r215*MVK*O3 + .206*r222*ISOPNO3*HO2 + + .072*r223*ISOPNO3*NO + .072*r224*ISOPNO3*NO3 + .6*r225*ISOPO2*CH3CO3 + 1.2*r226*ISOPO2*CH3O2 + + .55*r228*ISOPO2*NO + .6*r229*ISOPO2*NO3 + .91*r230*ISOP*O3 + .25*r235*XO2*CH3CO3 + + .8*r236*XO2*CH3O2 + .25*r238*XO2*NO + - j21*CH2O - j22*CH2O - r63*CL*CH2O - r99*BR*CH2O - r137*NO3*CH2O - r138*O*CH2O - r139*OH*CH2O + d(CH3BR)/dt = - j59*CH3BR - r122*CL*CH3BR - r123*OH*CH3BR - r133*O1D*CH3BR + d(CH3CCL3)/dt = - j60*CH3CCL3 - r124*OH*CH3CCL3 + d(CH3CHO)/dt = j19*C2H5OOH + j43*POOH + 1.6*r153*C2H5O2*C2H5O2 + .8*r154*C2H5O2*CH3O2 + r156*C2H5O2*NO + + r157*C2H5OH*OH + .5*r158*C2H5OOH*OH + .5*r180*C3H6*O3 + .27*r183*C3H7O2*NO + r191*PO2*NO + + .1*r215*MVK*O3 + - j23*CH3CHO - r161*NO3*CH3CHO - r162*OH*CH3CHO + d(CH3CL)/dt = - j61*CH3CL - r125*CL*CH3CL - r126*OH*CH3CL + d(CH3COCH3)/dt = .82*j20*C3H7OOH + .82*r181*C3H7O2*CH3O2 + .82*r183*C3H7O2*NO + .1*r243*TERP*OH + - j24*CH3COCH3 - r198*OH*CH3COCH3 + d(CH3COCHO)/dt = r188*HYAC*OH + r189*NOA*OH + .5*r193*RO2*CH3O2 + .25*r199*MACRO2*CH3CO3 + + .24*r200*MACRO2*CH3O2 + .25*r202*MACRO2*NO3 + .25*r203*MACRO2*NO + .88*r205*MACR*O3 + + .5*r215*MVK*O3 + .02*r228*ISOPO2*NO + .25*r235*XO2*CH3CO3 + .1*r236*XO2*CH3O2 + + .25*r238*XO2*NO + .25*r239*XO2*NO3 + - j25*CH3COCHO - r186*NO3*CH3COCHO - r187*OH*CH3COCHO + d(CH3COOH)/dt = .1*r164*CH3CO3*CH3O2 + .15*r165*CH3CO3*HO2 + .12*r180*C3H6*O3 + .15*r210*MCO3*HO2 + - r167*OH*CH3COOH + d(CH3COOOH)/dt = .4*r165*CH3CO3*HO2 + .4*r210*MCO3*HO2 + - j26*CH3COOOH - r168*OH*CH3COOOH + d(CH3OH)/dt = r141*CH3O2*CH3O2 + .3*r154*C2H5O2*CH3O2 + .5*r193*RO2*CH3O2 + .25*r200*MACRO2*CH3O2 + + .25*r226*ISOPO2*CH3O2 + .3*r236*XO2*CH3O2 + - r144*OH*CH3OH + d(CH3OOH)/dt = r142*CH3O2*HO2 + - j27*CH3OOH - r145*OH*CH3OOH + d(CH4)/dt = .1*r180*C3H6*O3 + - j28*CH4 - j29*CH4 - r64*CL*CH4 - r146*OH*CH4 - r147*O1D*CH4 - r148*O1D*CH4 - r149*O1D*CH4 + d(CHBR3)/dt = - j62*CHBR3 - r116*O1D*CHBR3 - r127*CL*CHBR3 - r128*OH*CHBR3 + d(CL)/dt = j46*BRCL + 4*j50*CCL4 + j51*CF2CLBR + 3*j53*CFC11 + 3*j54*CFC113 + 2*j55*CFC114 + j56*CFC115 + + 2*j57*CFC12 + 3*j60*CH3CCL3 + j61*CH3CL + 2*j63*CL2 + 2*j64*CL2O2 + j65*CLO + j67*CLONO2 + + 2*j70*HCFC141B + j71*HCFC142B + j72*HCFC22 + j73*HCL + j75*HOCL + r70*CLO*CH3O2 + + 2*r71*CLO*CLO + r73*CLO*CLO + r75*CLO*NO + r80*CLO*O + r81*CLO*OH + r83*HCL*O + r84*HCL*OH + + 4*r88*O1D*CCL4 + r89*O1D*CF2CLBR + 3*r90*O1D*CFC11 + 3*r91*O1D*CFC113 + 2*r92*O1D*CFC114 + + r93*O1D*CFC115 + 2*r94*O1D*CFC12 + r95*O1D*HCL + r104*BRO*CLO + 3*r124*CH3CCL3*OH + + r126*CH3CL*OH + r129*HCFC141B*OH + r129*HCFC141B*OH + r130*HCFC142B*OH + r131*HCFC22*OH + + r134*O1D*HCFC141B + r134*O1D*HCFC141B + r135*O1D*HCFC142B + r136*O1D*HCFC22 + r252*SO*CLO + - r63*CH2O*CL - r64*CH4*CL - r65*H2*CL - r66*H2O2*CL - r67*HO2*CL - r68*HO2*CL - r69*O3*CL + - r76*CLONO2*CL - r85*HOCL*CL - r120*CH2BR2*CL - r122*CH3BR*CL - r125*CH3CL*CL - r127*CHBR3*CL + - r159*C2H6*CL + d(CL2)/dt = r72*CLO*CLO + r76*CLONO2*CL + r270*HOCL*HCL + r275*CLONO2*HCL + r276*HOCL*HCL + r280*CLONO2*HCL + + r281*HOCL*HCL + r285*CLONO2*HCL + - j63*CL2 + d(CL2O2)/dt = r97*M*CLO*CLO + - j64*CL2O2 - r98*M*CL2O2 + d(CLO)/dt = j66*CLONO2 + j76*OCLO + r98*M*CL2O2 + r98*M*CL2O2 + r68*CL*HO2 + r69*CL*O3 + r78*CLONO2*O + + r85*HOCL*CL + r86*HOCL*O + r87*HOCL*OH + r96*O1D*HCL + r257*SO*OCLO + - j65*CLO - r70*CH3O2*CLO - 2*r71*CLO*CLO - 2*r72*CLO*CLO - 2*r73*CLO*CLO - r74*HO2*CLO + - r75*NO*CLO - r77*M*NO2*CLO - r80*O*CLO - r81*OH*CLO - r82*OH*CLO - 2*r97*M*CLO*CLO + - r103*BRO*CLO - r104*BRO*CLO - r105*BRO*CLO - r252*SO*CLO + d(CLONO2)/dt = r77*M*CLO*NO2 + - j66*CLONO2 - j67*CLONO2 - r273*CLONO2 - r278*CLONO2 - r284*CLONO2 - r76*CL*CLONO2 + - r78*O*CLONO2 - r79*OH*CLONO2 - r275*HCL*CLONO2 - r280*HCL*CLONO2 - r285*HCL*CLONO2 + d(CLY)/dt = 0 + d(CO)/dt = j21*CH2O + j22*CH2O + j23*CH3CHO + j25*CH3COCHO + .38*j28*CH4 + j30*CO2 + j32*GLYALD + + 2*j33*GLYOXAL + 1.34*j37*MACR + .7*j39*MVK + j41*ONITR + j79*OCS + r63*CL*CH2O + r99*BR*CH2O + + r125*CH3CL*CL + r137*CH2O*NO3 + r138*CH2O*O + r139*CH2O*OH + .63*r152*C2H4*O3 + r174*GLYOXAL*OH + + .56*r180*C3H6*O3 + r186*CH3COCHO*NO3 + r187*CH3COCHO*OH + .22*r199*MACRO2*CH3CO3 + + .11*r200*MACRO2*CH3O2 + .22*r202*MACRO2*NO3 + .22*r203*MACRO2*NO + .65*r205*MACR*O3 + + .56*r215*MVK*O3 + .62*r230*ISOP*O3 + .25*r235*XO2*CH3CO3 + .2*r236*XO2*CH3O2 + .25*r238*XO2*NO + + .5*r239*XO2*NO3 + r246*OCS*O + r247*OCS*OH + - r150*OH*CO + d(CO2)/dt = j26*CH3COOOH + .44*j28*CH4 + .4*j42*PAN + r150*CO*OH + 2*r163*CH3CO3*CH3CO3 + + .9*r164*CH3CO3*CH3O2 + r166*CH3CO3*NO + r167*CH3COOH*OH + .5*r168*CH3COOOH*OH + + .8*r173*GLYALD*OH + r174*GLYOXAL*OH + .2*r180*C3H6*O3 + 2*r208*MCO3*CH3CO3 + r209*MCO3*CH3O2 + + .45*r210*MCO3*HO2 + 2*r211*MCO3*MCO3 + .5*r214*M*MPAN*OH + .1*r215*MVK*O3 + r235*XO2*CH3CO3 + - j30*CO2 + d(DMS)/dt = - r244*NO3*DMS - r245*OH*DMS - r259*OH*DMS + d(dst_a1)/dt = 0 + d(dst_a2)/dt = 0 + d(dst_a3)/dt = 0 + d(E90)/dt = - r286*E90 + d(EOOH)/dt = r169*EO2*HO2 + - j31*EOOH + d(GLYALD)/dt = r172*EO*O2 + .53*r199*MACRO2*CH3CO3 + .26*r200*MACRO2*CH3O2 + .53*r202*MACRO2*NO3 + + .53*r203*MACRO2*NO + .02*r228*ISOPO2*NO + .25*r235*XO2*CH3CO3 + .1*r236*XO2*CH3O2 + + .25*r238*XO2*NO + .25*r239*XO2*NO3 + - j32*GLYALD - r173*OH*GLYALD + d(GLYOXAL)/dt = .2*r173*GLYALD*OH + .02*r228*ISOPO2*NO + .25*r235*XO2*CH3CO3 + .1*r236*XO2*CH3O2 + + .25*r238*XO2*NO + .25*r239*XO2*NO3 + - j33*GLYOXAL - r174*OH*GLYOXAL + d(H)/dt = j2*H2O + 2*j3*H2O + 2*j21*CH2O + j27*CH3OOH + .33*j28*CH4 + j29*CH4 + j69*HBR + j73*HCL + + r3*O1D*H2 + r21*H2*O + r30*OH*H2 + r33*OH*O + r51*N*OH + r65*CL*H2 + r96*O1D*HCL + + r119*O1D*HBR + r139*CH2O*OH + r148*O1D*CH4 + r247*OCS*OH + r253*S*OH + r258*SO*OH + - r23*HO2*H - r24*HO2*H - r25*HO2*H - r26*M*O2*H - r29*O3*H + d(H2)/dt = j1*H2O + j22*CH2O + 1.4400001*j28*CH4 + r23*H*HO2 + r149*O1D*CH4 + - r3*O1D*H2 - r21*O*H2 - r30*OH*H2 - r65*CL*H2 + d(H2402)/dt = - j68*H2402 - r117*O1D*H2402 + d(H2O2)/dt = r36*M*OH*OH + r37*HO2*HO2 + - j4*H2O2 - r22*O*H2O2 - r31*OH*H2O2 - r66*CL*H2O2 + d(H2SO4)/dt = r260*SO3*H2O + - j78*H2SO4 + d(HBR)/dt = r99*BR*CH2O + r100*BR*HO2 + - j69*HBR - r112*O*HBR - r113*OH*HBR - r118*O1D*HBR - r119*O1D*HBR + d(HCFC141B)/dt = - j70*HCFC141B - r129*OH*HCFC141B - r134*O1D*HCFC141B + d(HCFC142B)/dt = - j71*HCFC142B - r130*OH*HCFC142B - r135*O1D*HCFC142B + d(HCFC22)/dt = - j72*HCFC22 - r131*OH*HCFC22 - r136*O1D*HCFC22 + d(HCL)/dt = r63*CL*CH2O + r64*CL*CH4 + r65*CL*H2 + r66*CL*H2O2 + r67*CL*HO2 + r82*CLO*OH + r85*HOCL*CL + + r120*CH2BR2*CL + r122*CH3BR*CL + 2*r125*CH3CL*CL + r127*CHBR3*CL + r159*C2H6*CL + - j73*HCL - r83*O*HCL - r84*OH*HCL - r95*O1D*HCL - r96*O1D*HCL - r270*HOCL*HCL + - r275*CLONO2*HCL - r276*HOCL*HCL - r277*HOBR*HCL - r280*CLONO2*HCL - r281*HOCL*HCL + - r282*HOBR*HCL - r285*CLONO2*HCL + d(HNO3)/dt = 2*r263*N2O5 + .5*r265*NO2 + r266*NO3 + r267*ONITR + 2*r269*N2O5 + r271*BRONO2 + 2*r272*N2O5 + + r273*CLONO2 + r274*BRONO2 + r278*CLONO2 + r279*BRONO2 + 2*r283*N2O5 + r284*CLONO2 + + r59*M*NO2*OH + r137*CH2O*NO3 + r161*CH3CHO*NO3 + r186*CH3COCHO*NO3 + r244*DMS*NO3 + + r275*CLONO2*HCL + r280*CLONO2*HCL + r285*CLONO2*HCL + - j9*HNO3 - r60*OH*HNO3 + d(HO2NO2)/dt = r57*M*NO2*HO2 + - j10*HO2NO2 - j11*HO2NO2 - r61*M*HO2NO2 - r38*OH*HO2NO2 + d(HOBR)/dt = r271*BRONO2 + r274*BRONO2 + r279*BRONO2 + r106*BRO*HO2 + - j74*HOBR - r114*O*HOBR - r277*HCL*HOBR - r282*HCL*HOBR + d(HOCL)/dt = r273*CLONO2 + r278*CLONO2 + r284*CLONO2 + r74*CLO*HO2 + r79*CLONO2*OH + - j75*HOCL - r85*CL*HOCL - r86*O*HOCL - r87*OH*HOCL - r270*HCL*HOCL - r276*HCL*HOCL + - r281*HCL*HOCL + d(HYAC)/dt = .5*r192*POOH*OH + .2*r193*RO2*CH3O2 + .22*r199*MACRO2*CH3CO3 + .23*r200*MACRO2*CH3O2 + + .22*r202*MACRO2*NO3 + .22*r203*MACRO2*NO + .5*r214*M*MPAN*OH + .02*r228*ISOPO2*NO + + .25*r235*XO2*CH3CO3 + .1*r236*XO2*CH3O2 + .25*r238*XO2*NO + .25*r239*XO2*NO3 + - j34*HYAC - r188*OH*HYAC + d(HYDRALD)/dt = .4*r225*ISOPO2*CH3CO3 + .3*r226*ISOPO2*CH3O2 + .33*r228*ISOPO2*NO + .4*r229*ISOPO2*NO3 + + r233*ONITR*NO3 + r234*ONITR*OH + - r220*OH*HYDRALD + d(ISOP)/dt = - r221*NO3*ISOP - r230*O3*ISOP - r231*OH*ISOP + d(ISOPNO3)/dt = r221*ISOP*NO3 + - r222*HO2*ISOPNO3 - r223*NO*ISOPNO3 - r224*NO3*ISOPNO3 + d(ISOPOOH)/dt = r227*ISOPO2*HO2 + - j35*ISOPOOH - r232*OH*ISOPOOH + d(MACR)/dt = .3*j35*ISOPOOH + .167*r222*ISOPNO3*HO2 + .167*r223*ISOPNO3*NO + .167*r224*ISOPNO3*NO3 + + .25*r225*ISOPO2*CH3CO3 + .19*r226*ISOPO2*CH3O2 + .23*r228*ISOPO2*NO + .25*r229*ISOPO2*NO3 + + .3*r230*ISOP*O3 + 1.122*r242*TERP*O3 + - j36*MACR - j37*MACR - r205*O3*MACR - r206*OH*MACR + d(MACROOH)/dt = r201*MACRO2*HO2 + - r207*OH*MACROOH + d(MPAN)/dt = r217*M*MCO3*NO2 + - j38*MPAN - r218*M*MPAN - r214*M*OH*MPAN + d(MVK)/dt = .7*j35*ISOPOOH + .039*r222*ISOPNO3*HO2 + .039*r223*ISOPNO3*NO + .039*r224*ISOPNO3*NO3 + + .35*r225*ISOPO2*CH3CO3 + .26*r226*ISOPO2*CH3O2 + .32*r228*ISOPO2*NO + .35*r229*ISOPO2*NO3 + + .2*r230*ISOP*O3 + .442*r242*TERP*O3 + - j39*MVK - r215*O3*MVK - r216*OH*MVK + d(N)/dt = j15*NO + - r39*NO*N - r40*NO2*N - r41*NO2*N - r42*NO2*N - r43*O2*N - r51*OH*N + d(N2O)/dt = r40*N*NO2 + - j12*N2O - r55*O1D*N2O - r56*O1D*N2O + d(N2O5)/dt = r58*M*NO2*NO3 + - j13*N2O5 - j14*N2O5 - r62*M*N2O5 - r263*N2O5 - r269*N2O5 - r272*N2O5 - r283*N2O5 + d(ncl_a1)/dt = 0 + d(ncl_a2)/dt = 0 + d(ncl_a3)/dt = 0 + d(NH3)/dt = - r261*OH*NH3 + d(NH4)/dt = - r264*NH4 + d(NH_5)/dt = - r288*NH_5 + d(NH_50)/dt = - r287*NH_50 + d(NO)/dt = j14*N2O5 + j16*NO2 + j17*NO3 + .5*r265*NO2 + 2*r41*N*NO2 + r43*N*O2 + r44*NO2*O + r51*N*OH + + 2*r55*O1D*N2O + r254*SO*NO2 + - j15*NO - r39*N*NO - r48*NO3*NO - r52*HO2*NO - r53*O3*NO - r54*M*O*NO - r75*CLO*NO + - r107*BRO*NO - r143*CH3O2*NO - r156*C2H5O2*NO - r166*CH3CO3*NO - r170*EO2*NO - r183*C3H7O2*NO + - r191*PO2*NO - r195*RO2*NO - r203*MACRO2*NO - r204*MACRO2*NO - r212*MCO3*NO - r223*ISOPNO3*NO + - r228*ISOPO2*NO - r238*XO2*NO + d(NO2)/dt = j9*HNO3 + j11*HO2NO2 + j13*N2O5 + j18*NO3 + j38*MPAN + j40*NOA + j41*ONITR + .6*j42*PAN + + j48*BRONO2 + j66*CLONO2 + r61*M*HO2NO2 + r62*M*N2O5 + r178*M*PAN + r218*M*MPAN + + r38*HO2NO2*OH + r47*NO3*HO2 + 2*r48*NO3*NO + r49*NO3*O + r50*NO3*OH + r52*NO*HO2 + r53*NO*O3 + + r54*M*NO*O + r75*CLO*NO + r107*BRO*NO + r143*CH3O2*NO + r156*C2H5O2*NO + r166*CH3CO3*NO + + r170*EO2*NO + r183*C3H7O2*NO + r189*NOA*OH + r191*PO2*NO + r195*RO2*NO + r202*MACRO2*NO3 + + r203*MACRO2*NO + r212*MCO3*NO + r213*MCO3*NO3 + .206*r222*ISOPNO3*HO2 + 1.206*r223*ISOPNO3*NO + + 1.206*r224*ISOPNO3*NO3 + .92*r228*ISOPO2*NO + r229*ISOPO2*NO3 + r233*ONITR*NO3 + + .4*r234*ONITR*OH + r238*XO2*NO + r239*XO2*NO3 + r241*TERP*NO3 + - j16*NO2 - r265*NO2 - r40*N*NO2 - r41*N*NO2 - r42*N*NO2 - r44*O*NO2 - r45*O3*NO2 + - r46*M*O*NO2 - r57*M*HO2*NO2 - r58*M*NO3*NO2 - r59*M*OH*NO2 - r77*M*CLO*NO2 - r108*M*BRO*NO2 + - r177*M*CH3CO3*NO2 - r217*M*MCO3*NO2 - r254*SO*NO2 + d(NO3)/dt = j10*HO2NO2 + j13*N2O5 + j14*N2O5 + .4*j42*PAN + j49*BRONO2 + j67*CLONO2 + r62*M*N2O5 + + r45*NO2*O3 + r46*M*NO2*O + r60*HNO3*OH + r76*CLONO2*CL + r78*CLONO2*O + r79*CLONO2*OH + + r109*BRONO2*O + r175*PAN*OH + .5*r214*M*MPAN*OH + - j17*NO3 - j18*NO3 - r266*NO3 - r47*HO2*NO3 - r48*NO*NO3 - r49*O*NO3 - r50*OH*NO3 + - r58*M*NO2*NO3 - r137*CH2O*NO3 - r161*CH3CHO*NO3 - r179*C3H6*NO3 - r186*CH3COCHO*NO3 + - r202*MACRO2*NO3 - r213*MCO3*NO3 - r221*ISOP*NO3 - r224*ISOPNO3*NO3 - r229*ISOPO2*NO3 + - r233*ONITR*NO3 - r239*XO2*NO3 - r241*TERP*NO3 - r244*DMS*NO3 + d(NOA)/dt = r179*C3H6*NO3 + - j40*NOA - r189*OH*NOA + d(num_a1)/dt = 0 + d(num_a2)/dt = 0 + d(num_a3)/dt = 0 + d(num_a4)/dt = 0 + d(num_a5)/dt = 0 + d(O)/dt = j3*H2O + j5*O2 + 2*j6*O2 + j8*O3 + j14*N2O5 + j15*NO + j16*NO2 + j18*NO3 + .18*j28*CH4 + + j30*CO2 + j47*BRO + j65*CLO + j76*OCLO + j80*SO + j81*SO2 + j82*SO3 + r5*N2*O1D + r6*O1D*O2 + + r7*O1D*O2 + 2*r9*O1D*O3 + r25*H*HO2 + r35*OH*OH + r39*N*NO + r40*N*NO2 + r43*N*O2 + + .765*r242*TERP*O3 + r248*S*O2 + r255*SO*O2 + - r18*O3*O - 2*r19*M*O*O - r20*M*O2*O - r21*H2*O - r22*H2O2*O - r27*HO2*O - r33*OH*O - r44*NO2*O + - r46*M*NO2*O - r49*NO3*O - r54*M*NO*O - r78*CLONO2*O - r80*CLO*O - r83*HCL*O - r86*HOCL*O + - r109*BRONO2*O - r110*BRO*O - r112*HBR*O - r114*HOBR*O - r138*CH2O*O - r246*OCS*O + d(O2)/dt = j8*O3 + j17*NO3 + r1*O2_1D + r2*O2_1S + r10*N2*O2_1D + r8*O1D*O3 + r8*O1D*O3 + r9*O1D*O3 + + r11*O2_1D*O + 2*r12*O2_1D*O2 + 2*r18*O*O3 + r19*M*O*O + r23*H*HO2 + r27*HO2*O + 2*r28*HO2*O3 + + r29*H*O3 + r32*OH*HO2 + r33*OH*O + r34*OH*O3 + r37*HO2*HO2 + r38*HO2NO2*OH + r42*N*NO2 + + r44*NO2*O + r45*NO2*O3 + r47*NO3*HO2 + r49*NO3*O + r53*NO*O3 + r56*O1D*N2O + r67*CL*HO2 + + r69*CL*O3 + r71*CLO*CLO + r72*CLO*CLO + r74*CLO*HO2 + r80*CLO*O + r82*CLO*OH + r100*BR*HO2 + + r101*BR*O3 + r102*BRO*BRO + r104*BRO*CLO + r105*BRO*CLO + r106*BRO*HO2 + r110*BRO*O + + r142*CH3O2*HO2 + r155*C2H5O2*HO2 + r182*C3H7O2*HO2 + r190*PO2*HO2 + r250*S*O3 + r256*SO*O3 + - j5*O2 - j6*O2 - r6*O1D*O2 - r12*O2_1D*O2 - r20*M*O*O2 - r26*M*H*O2 - r43*N*O2 - r172*EO*O2 + - r248*S*O2 - r255*SO*O2 + d(O2_1D)/dt = j7*O3 + r14*N2*O2_1S + r13*O2_1S*CO2 + r15*O2_1S*O + r16*O2_1S*O2 + r17*O2_1S*O3 + - r1*O2_1D - r10*N2*O2_1D - r11*O*O2_1D - r12*O2*O2_1D + d(O2_1S)/dt = r6*O1D*O2 + - r2*O2_1S - r14*N2*O2_1S - r13*CO2*O2_1S - r15*O*O2_1S - r16*O2*O2_1S - r17*O3*O2_1S + d(O3)/dt = r20*M*O*O2 + .15*r165*CH3CO3*HO2 + .15*r210*MCO3*HO2 + - j7*O3 - j8*O3 - r8*O1D*O3 - r9*O1D*O3 - r18*O*O3 - r28*HO2*O3 - r29*H*O3 - r34*OH*O3 + - r45*NO2*O3 - r53*NO*O3 - r69*CL*O3 - r101*BR*O3 - r152*C2H4*O3 - r180*C3H6*O3 - r205*MACR*O3 + - r215*MVK*O3 - r230*ISOP*O3 - r242*TERP*O3 - r250*S*O3 - r256*SO*O3 + d(O3S)/dt = 0 + d(OCLO)/dt = r73*CLO*CLO + r103*BRO*CLO + - j76*OCLO - r257*SO*OCLO + d(OCS)/dt = - j79*OCS - r246*O*OCS - r247*OH*OCS + d(ONITR)/dt = .8*r204*MACRO2*NO + .794*r222*ISOPNO3*HO2 + .794*r223*ISOPNO3*NO + .794*r224*ISOPNO3*NO3 + + .08*r228*ISOPO2*NO + - j41*ONITR - r267*ONITR - r233*NO3*ONITR - r234*OH*ONITR + d(PAN)/dt = r177*M*CH3CO3*NO2 + - j42*PAN - r178*M*PAN - r175*OH*PAN + d(pom_a1)/dt = 0 + d(pom_a4)/dt = 0 + d(POOH)/dt = r190*PO2*HO2 + - j43*POOH - r192*OH*POOH + d(ROOH)/dt = .85*r194*RO2*HO2 + - j44*ROOH - r196*OH*ROOH + d(S)/dt = j79*OCS + j80*SO + - r248*O2*S - r250*O3*S - r253*OH*S + d(SF6)/dt = - j77*SF6 + d(SO)/dt = j81*SO2 + r246*OCS*O + r248*S*O2 + r250*S*O3 + r253*S*OH + - j80*SO - r251*BRO*SO - r252*CLO*SO - r254*NO2*SO - r255*O2*SO - r256*O3*SO - r257*OCLO*SO + - r258*OH*SO + d(SO2)/dt = j82*SO3 + r244*DMS*NO3 + r245*DMS*OH + r247*OCS*OH + r251*SO*BRO + r252*SO*CLO + r254*SO*NO2 + + r255*SO*O2 + r256*SO*O3 + r257*SO*OCLO + r258*SO*OH + .5*r259*DMS*OH + - j81*SO2 - r249*M*OH*SO2 + d(SO3)/dt = j78*H2SO4 + r249*M*SO2*OH + - j82*SO3 - r260*H2O*SO3 + d(so4_a1)/dt = 0 + d(so4_a2)/dt = 0 + d(so4_a3)/dt = 0 + d(so4_a5)/dt = 0 + d(soa_a1)/dt = - j83*soa_a1 + d(soa_a2)/dt = - j84*soa_a2 + d(SOAE)/dt = - r268*SOAE + d(SOAG)/dt = r268*SOAE + d(ST80_25)/dt = - r289*ST80_25 + d(TERP)/dt = - r241*NO3*TERP - r242*O3*TERP - r243*OH*TERP + d(XOOH)/dt = r237*XO2*HO2 + - j45*XOOH - r240*OH*XOOH + d(NDEP)/dt = .5*r214*M*MPAN*OH + r233*ONITR*NO3 + .6*r234*ONITR*OH + d(NHDEP)/dt = r264*NH4 + r261*NH3*OH + d(C2H5O2)/dt = .5*r158*C2H5OOH*OH + r159*C2H6*CL + r160*C2H6*OH + - 2*r153*C2H5O2*C2H5O2 - r154*CH3O2*C2H5O2 - r155*HO2*C2H5O2 - r156*NO*C2H5O2 + d(C3H7O2)/dt = r184*C3H7OOH*OH + r185*C3H8*OH + 1.67*r219*BIGALK*OH + - r181*CH3O2*C3H7O2 - r182*HO2*C3H7O2 - r183*NO*C3H7O2 + d(CH3CO3)/dt = j24*CH3COCH3 + j25*CH3COCHO + j34*HYAC + 1.34*j36*MACR + .3*j39*MVK + j40*NOA + .6*j42*PAN + + j44*ROOH + r178*M*PAN + r161*CH3CHO*NO3 + r162*CH3CHO*OH + .5*r168*CH3COOOH*OH + + r186*CH3COCHO*NO3 + r187*CH3COCHO*OH + .3*r193*RO2*CH3O2 + .15*r194*RO2*HO2 + r195*RO2*NO + + .53*r199*MACRO2*CH3CO3 + .26*r200*MACRO2*CH3O2 + .53*r202*MACRO2*NO3 + .53*r203*MACRO2*NO + + .1*r205*MACR*O3 + r209*MCO3*CH3O2 + .45*r210*MCO3*HO2 + 2*r211*MCO3*MCO3 + r212*MCO3*NO + + r213*MCO3*NO3 + .28*r215*MVK*O3 + .08*r230*ISOP*O3 + - 2*r163*CH3CO3*CH3CO3 - r164*CH3O2*CH3CO3 - r165*HO2*CH3CO3 - r166*NO*CH3CO3 + - r177*M*NO2*CH3CO3 - r199*MACRO2*CH3CO3 - r225*ISOPO2*CH3CO3 - r235*XO2*CH3CO3 + d(CH3O2)/dt = j23*CH3CHO + j24*CH3COCH3 + j26*CH3COOOH + j29*CH4 + .3*j39*MVK + .4*j42*PAN + j59*CH3BR + + j61*CH3CL + r64*CL*CH4 + .7*r145*CH3OOH*OH + r146*CH4*OH + r147*O1D*CH4 + + 2*r163*CH3CO3*CH3CO3 + .9*r164*CH3CO3*CH3O2 + .45*r165*CH3CO3*HO2 + r166*CH3CO3*NO + + r167*CH3COOH*OH + .28*r180*C3H6*O3 + r199*MACRO2*CH3CO3 + r208*MCO3*CH3CO3 + + r225*ISOPO2*CH3CO3 + .05*r230*ISOP*O3 + r235*XO2*CH3CO3 + - r70*CLO*CH3O2 - 2*r140*CH3O2*CH3O2 - 2*r141*CH3O2*CH3O2 - r142*HO2*CH3O2 - r143*NO*CH3O2 + - r154*C2H5O2*CH3O2 - r164*CH3CO3*CH3O2 - r181*C3H7O2*CH3O2 - r193*RO2*CH3O2 + - r200*MACRO2*CH3O2 - r209*MCO3*CH3O2 - r226*ISOPO2*CH3O2 - r236*XO2*CH3O2 + d(EO)/dt = j31*EOOH + .75*r170*EO2*NO + - r171*EO - r172*O2*EO + d(EO2)/dt = r176*M*C2H4*OH + - r169*HO2*EO2 - r170*NO*EO2 + d(HO2)/dt = j11*HO2NO2 + j19*C2H5OOH + j20*C3H7OOH + j23*CH3CHO + j25*CH3COCHO + 2*j32*GLYALD + + 2*j33*GLYOXAL + j34*HYAC + j35*ISOPOOH + 1.34*j36*MACR + .66*j37*MACR + j41*ONITR + j43*POOH + + r61*M*HO2NO2 + r171*EO + r22*H2O2*O + r26*M*H*O2 + r31*OH*H2O2 + r34*OH*O3 + r50*NO3*OH + + r63*CL*CH2O + r66*CL*H2O2 + r70*CLO*CH3O2 + r81*CLO*OH + r99*BR*CH2O + r111*BRO*OH + + r122*CH3BR*CL + r123*CH3BR*OH + r125*CH3CL*CL + r126*CH3CL*OH + r137*CH2O*NO3 + r138*CH2O*O + + 2*r140*CH3O2*CH3O2 + r143*CH3O2*NO + r144*CH3OH*OH + r148*O1D*CH4 + r150*CO*OH + + .13*r152*C2H4*O3 + 1.2*r153*C2H5O2*C2H5O2 + r154*C2H5O2*CH3O2 + r156*C2H5O2*NO + r157*C2H5OH*OH + + .9*r164*CH3CO3*CH3O2 + .25*r170*EO2*NO + r172*EO*O2 + r173*GLYALD*OH + r174*GLYOXAL*OH + + .28*r180*C3H6*O3 + r181*C3H7O2*CH3O2 + r183*C3H7O2*NO + r188*HYAC*OH + r191*PO2*NO + + .3*r193*RO2*CH3O2 + .47*r199*MACRO2*CH3CO3 + .73*r200*MACRO2*CH3O2 + .47*r202*MACRO2*NO3 + + .47*r203*MACRO2*NO + .14*r205*MACR*O3 + .2*r207*MACROOH*OH + r209*MCO3*CH3O2 + + .5*r214*M*MPAN*OH + .28*r215*MVK*O3 + .794*r223*ISOPNO3*NO + .794*r224*ISOPNO3*NO3 + + r225*ISOPO2*CH3CO3 + r226*ISOPO2*CH3O2 + .92*r228*ISOPO2*NO + r229*ISOPO2*NO3 + + .37*r230*ISOP*O3 + r233*ONITR*NO3 + r234*ONITR*OH + r235*XO2*CH3CO3 + .8*r236*XO2*CH3O2 + + r238*XO2*NO + r239*XO2*NO3 + r249*M*SO2*OH + .5*r259*DMS*OH + - r262*HO2 - r23*H*HO2 - r24*H*HO2 - r25*H*HO2 - r27*O*HO2 - r28*O3*HO2 - r32*OH*HO2 + - 2*r37*HO2*HO2 - r47*NO3*HO2 - r52*NO*HO2 - r57*M*NO2*HO2 - r67*CL*HO2 - r68*CL*HO2 + - r74*CLO*HO2 - r100*BR*HO2 - r106*BRO*HO2 - r142*CH3O2*HO2 - r155*C2H5O2*HO2 - r165*CH3CO3*HO2 + - r169*EO2*HO2 - r182*C3H7O2*HO2 - r190*PO2*HO2 - r194*RO2*HO2 - r201*MACRO2*HO2 - r210*MCO3*HO2 + - r222*ISOPNO3*HO2 - r227*ISOPO2*HO2 - r237*XO2*HO2 + d(ISOPO2)/dt = r231*ISOP*OH + .2*r232*ISOPOOH*OH + 1.7*r241*TERP*NO3 + 1.64*r243*TERP*OH + - r225*CH3CO3*ISOPO2 - r226*CH3O2*ISOPO2 - r227*HO2*ISOPO2 - r228*NO*ISOPO2 - r229*NO3*ISOPO2 + d(MACRO2)/dt = .5*r206*MACR*OH + .2*r207*MACROOH*OH + r216*MVK*OH + - r199*CH3CO3*MACRO2 - r200*CH3O2*MACRO2 - r201*HO2*MACRO2 - r202*NO3*MACRO2 - r203*NO*MACRO2 + - r204*NO*MACRO2 + d(MCO3)/dt = .66*j36*MACR + j38*MPAN + r218*M*MPAN + .5*r206*MACR*OH + .5*r207*MACROOH*OH + - r208*CH3CO3*MCO3 - r209*CH3O2*MCO3 - r210*HO2*MCO3 - 2*r211*MCO3*MCO3 - r212*NO*MCO3 + - r213*NO3*MCO3 - r217*M*NO2*MCO3 + d(O1D)/dt = j1*H2O + j5*O2 + j7*O3 + j12*N2O + - r5*N2*O1D - r3*H2*O1D - r4*H2O*O1D - r6*O2*O1D - r7*O2*O1D - r8*O3*O1D - r9*O3*O1D + - r55*N2O*O1D - r56*N2O*O1D - r88*CCL4*O1D - r89*CF2CLBR*O1D - r90*CFC11*O1D - r91*CFC113*O1D + - r92*CFC114*O1D - r93*CFC115*O1D - r94*CFC12*O1D - r95*HCL*O1D - r96*HCL*O1D - r115*CF3BR*O1D + - r116*CHBR3*O1D - r117*H2402*O1D - r118*HBR*O1D - r119*HBR*O1D - r132*CH2BR2*O1D + - r133*CH3BR*O1D - r134*HCFC141B*O1D - r135*HCFC142B*O1D - r136*HCFC22*O1D - r147*CH4*O1D + - r148*CH4*O1D - r149*CH4*O1D + d(OH)/dt = j2*H2O + 2*j4*H2O2 + j9*HNO3 + j10*HO2NO2 + j19*C2H5OOH + j20*C3H7OOH + j26*CH3COOOH + + j27*CH3OOH + .33*j28*CH4 + j31*EOOH + j35*ISOPOOH + j43*POOH + j44*ROOH + j45*XOOH + j74*HOBR + + j75*HOCL + .5*r265*NO2 + r3*O1D*H2 + 2*r4*O1D*H2O + r21*H2*O + r22*H2O2*O + 2*r24*H*HO2 + + r27*HO2*O + r28*HO2*O3 + r29*H*O3 + r47*NO3*HO2 + r52*NO*HO2 + r68*CL*HO2 + r83*HCL*O + + r86*HOCL*O + r95*O1D*HCL + r112*HBR*O + r114*HOBR*O + r118*O1D*HBR + r138*CH2O*O + + .3*r145*CH3OOH*OH + r147*O1D*CH4 + .13*r152*C2H4*O3 + .5*r158*C2H5OOH*OH + .45*r165*CH3CO3*HO2 + + .36*r180*C3H6*O3 + .5*r192*POOH*OH + .15*r194*RO2*HO2 + .24*r205*MACR*O3 + .1*r207*MACROOH*OH + + .45*r210*MCO3*HO2 + .36*r215*MVK*O3 + .206*r222*ISOPNO3*HO2 + .32*r230*ISOP*O3 + .5*r240*XOOH*OH + + 1.156*r242*TERP*O3 + - r30*H2*OH - r31*H2O2*OH - r32*HO2*OH - r33*O*OH - r34*O3*OH - 2*r35*OH*OH - 2*r36*M*OH*OH + - r38*HO2NO2*OH - r50*NO3*OH - r51*N*OH - r59*M*NO2*OH - r60*HNO3*OH - r79*CLONO2*OH + - r81*CLO*OH - r82*CLO*OH - r84*HCL*OH - r87*HOCL*OH - r111*BRO*OH - r113*HBR*OH + - r121*CH2BR2*OH - r123*CH3BR*OH - r124*CH3CCL3*OH - r126*CH3CL*OH - r128*CHBR3*OH + - r129*HCFC141B*OH - r130*HCFC142B*OH - r131*HCFC22*OH - r139*CH2O*OH - r144*CH3OH*OH + - r145*CH3OOH*OH - r146*CH4*OH - r150*CO*OH - r157*C2H5OH*OH - r158*C2H5OOH*OH - r160*C2H6*OH + - r162*CH3CHO*OH - r167*CH3COOH*OH - r168*CH3COOOH*OH - r173*GLYALD*OH - r174*GLYOXAL*OH + - r175*PAN*OH - r176*M*C2H4*OH - r184*C3H7OOH*OH - r185*C3H8*OH - r187*CH3COCHO*OH - r188*HYAC*OH + - r189*NOA*OH - r192*POOH*OH - r196*ROOH*OH - r197*M*C3H6*OH - r198*CH3COCH3*OH - r206*MACR*OH + - r207*MACROOH*OH - r214*M*MPAN*OH - r216*MVK*OH - r219*BIGALK*OH - r220*HYDRALD*OH + - r231*ISOP*OH - r232*ISOPOOH*OH - r234*ONITR*OH - r240*XOOH*OH - r243*TERP*OH - r245*DMS*OH + - r247*OCS*OH - r249*M*SO2*OH - r253*S*OH - r258*SO*OH - r259*DMS*OH - r261*NH3*OH + d(PO2)/dt = .5*r192*POOH*OH + r197*M*C3H6*OH + - r190*HO2*PO2 - r191*NO*PO2 + d(RO2)/dt = r196*ROOH*OH + r198*CH3COCH3*OH + - r193*CH3O2*RO2 - r194*HO2*RO2 - r195*NO*RO2 + d(XO2)/dt = r220*HYDRALD*OH + .8*r232*ISOPOOH*OH + .5*r240*XOOH*OH + - r235*CH3CO3*XO2 - r236*CH3O2*XO2 - r237*HO2*XO2 - r238*NO*XO2 - r239*NO3*XO2 + d(H2O)/dt = .05*j28*CH4 + j78*H2SO4 + r262*HO2 + r25*H*HO2 + r30*OH*H2 + r31*OH*H2O2 + r32*OH*HO2 + + r35*OH*OH + r38*HO2NO2*OH + r60*HNO3*OH + r84*HCL*OH + r87*HOCL*OH + r113*HBR*OH + + r121*CH2BR2*OH + r123*CH3BR*OH + r124*CH3CCL3*OH + r126*CH3CL*OH + r131*HCFC22*OH + + r139*CH2O*OH + r145*CH3OOH*OH + r146*CH4*OH + r160*C2H6*OH + r162*CH3CHO*OH + r167*CH3COOH*OH + + r168*CH3COOOH*OH + r184*C3H7OOH*OH + r185*C3H8*OH + r187*CH3COCHO*OH + r192*POOH*OH + + r196*ROOH*OH + r198*CH3COCH3*OH + .5*r206*MACR*OH + r261*NH3*OH + r270*HOCL*HCL + + r276*HOCL*HCL + r277*HOBR*HCL + r281*HOCL*HCL + r282*HOBR*HCL + - j1*H2O - j2*H2O - j3*H2O - r4*O1D*H2O - r260*SO3*H2O diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.in b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.in similarity index 94% rename from src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.in rename to src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.in index afc2928b01..dca627bf6c 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.in +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mech.in @@ -1,11 +1,11 @@ * Comments -* User-given Tag Description: TS4-simpleSOA -* Tag database identifier : MZ331_TS4_20230410 +* User-given Tag Description: T4S2_midtop_mam5 +* Tag database identifier : MZ390_T4S2_20260129 * Tag created by : lke -* Tag created from branch : TS4 -* Tag created on : 2023-04-10 17:47:58.117698-06 +* Tag created from branch : T4S2 +* Tag created on : 2026-01-29 13:31:39.754816-07 * Comments for this tag follow: -* lke : 2023-04-10 : Reduced TS mechanism for climate simulations with new simple SOA scheme, with MAM5. +* lke : 2026-01-29 : T4 with S2 (adding O2_1S, O2_1D), for mid-top CESM3; MAM5; MAM-SOA; prognostic O2. SPECIES @@ -73,7 +73,6 @@ HCFC142B -> CH3CClF2, HCFC22 -> CHF2Cl, HCL -> HCl, - HF, HNO3, HO2NO2, HOBR -> HOBr, @@ -107,6 +106,9 @@ num_a4 -> H, num_a5 -> H, O, + O2, + O2_1D -> O2, + O2_1S -> O2, O3, O3S -> O3, OCLO -> OClO, @@ -133,8 +135,8 @@ ST80_25 -> CO, TERP -> C10H16, XOOH -> HOCH2COOHCH3CHOHCHO, - NHDEP -> N, NDEP -> N, + NHDEP -> N, C2H5O2, C3H7O2, CH3CO3, @@ -156,7 +158,7 @@ Fixed - M, O2, N2 + M, N2 End Fixed Col-int @@ -187,8 +189,8 @@ Solution classes Explicit - NHDEP NDEP + NHDEP End Explicit Implicit @@ -255,7 +257,6 @@ HCFC142B HCFC22 HCL - HF HNO3 HO2NO2 HOBR @@ -289,6 +290,9 @@ num_a4 num_a5 O + O2 + O2_1D + O2_1S O3 O3S OCLO @@ -347,7 +351,7 @@ [jh2o2] H2O2 + hv -> 2*OH [jo2_a=userdefined,] O2 + hv -> O + O1D [jo2_b=userdefined,] O2 + hv -> 2*O -[jo3_a] O3 + hv -> O1D + O2 +[jo3_a] O3 + hv -> O1D + O2_1D [jo3_b] O3 + hv -> O + O2 ********************************* *** odd-nitrogen @@ -381,7 +385,7 @@ [jglyald] GLYALD + hv -> 2*HO2 + CO + CH2O [jglyoxal->,jmgly] GLYOXAL + hv -> 2*CO + 2*HO2 [jhyac] HYAC + hv -> CH3CO3 + HO2 + CH2O -[jisopooh->,jch3ooh] ISOPOOH + hv -> 0.402*MVK + 0.288*MACR + 0.69*CH2O + HO2 +[jisopooh->,jch3ooh] ISOPOOH + hv -> 0.7*MVK + 0.3*MACR + OH + CH2O + HO2 [jmacr_a] MACR + hv -> 1.34*HO2 + 0.66*MCO3 + 1.34*CH2O + 1.34*CH3CO3 [jmacr_b] MACR + hv -> 0.66*HO2 + 1.34*CO [jmpan->,jpan] MPAN + hv -> MCO3 + NO2 @@ -419,11 +423,10 @@ [jclono2_a] CLONO2 + hv -> CL + NO3 [jh2402] H2402 + hv -> 2*BR + 2*COF2 [jhbr] HBR + hv -> BR + H -[jhcfc141b] HCFC141B + hv -> CL + COFCL +[jhcfc141b] HCFC141B + hv -> 2*CL [jhcfc142b] HCFC142B + hv -> CL + COF2 [jhcfc22] HCFC22 + hv -> CL + COF2 [jhcl] HCL + hv -> H + CL -[jhf] HF + hv -> H + F [jhobr] HOBR + hv -> BR + OH [jhocl] HOCL + hv -> OH + CL [joclo] OCLO + hv -> O + CLO @@ -447,12 +450,23 @@ ********************************* *** odd-oxygen ********************************* +[ag1] O2_1D -> O2 ; 0.000258 +[ag2] O2_1S -> O2 ; 0.085 [O1D_H2] O1D + H2 -> H + OH ; 1.2e-10 [O1D_H2O] O1D + H2O -> 2*OH ; 1.63e-10, 60 [O1D_N2,cph=189.81] O1D + N2 -> O + N2 ; 2.15e-11, 110 -[O1D_O2ab] O1D + O2 -> O + O2 ; 3.3e-11, 55 +[O1D_O2,cph=32.91] O1D + O2 -> O + O2_1S ; 2.64e-11, 55 +[O1D_O2b,cph=189.81] O1D + O2 -> O + O2 ; 6.6e-12, 55 [O1D_O3] O1D + O3 -> O2 + O2 ; 1.2e-10 [O1D_O3a] O1D + O3 -> O2 + 2*O ; 1.2e-10 +[O2_1D_N2,cph=94.3] O2_1D + N2 -> O2 + N2 ; 1e-20 +[O2_1D_O,cph=94.3] O2_1D + O -> O2 + O ; 1.3e-16 +[O2_1D_O2,cph=94.3] O2_1D + O2 -> 2*O2 ; 3.6e-18, -220 +[O2_1S_CO2] O2_1S + CO2 -> O2_1D + CO2 ; 4.2e-13 +[O2_1S_N2,cph=62.6] O2_1S + N2 -> O2_1D + N2 ; 1.8e-15, 45 +[O2_1S_O,cph=62.6] O2_1S + O -> O2_1D + O ; 8e-14 +[O2_1S_O2,cph=62.6] O2_1S + O2 -> O2_1D + O2 ; 3.9e-17 +[O2_1S_O3,cph=62.6] O2_1S + O3 -> O2_1D + O3 ; 3.5e-11, -135 [O_O3,cph=392.19] O + O3 -> 2*O2 ; 8e-12, -2060 [usr_O_O,cph=493.58] O + O + M -> O2 + M [usr_O_O2,cph=101.39] O + O2 + M -> O3 + M @@ -640,9 +654,9 @@ ********************************* [C3H6_NO3] C3H6 + NO3 -> NOA ; 4.6e-13, -1156 [C3H6_O3] C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH ; 6.5e-15, -1900 -[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 3.75e-13, -40 -[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 7.5e-13, 700 -[C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 4.2e-12, 180 +[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 1e-13, 557 +[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 1.41e-13, 1300 +[C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 2.7e-12, 360 [C3H7OOH_OH] C3H7OOH + OH -> H2O + C3H7O2 ; 3.8e-12, 200 [C3H8_OH] C3H8 + OH -> C3H7O2 + H2O ; 9.19e-12, -630 [CH3COCHO_NO3] CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 ; 1.4e-12, -1860 @@ -676,7 +690,7 @@ [MCO3_MCO3] MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 ; 2.3e-12, 530 [MCO3_NO] MCO3 + NO -> NO2 + CH2O + CH3CO3 ; 5.3e-12, 360 [MCO3_NO3] MCO3 + NO3 -> NO2 + CH2O + CH3CO3 ; 5e-12 -[MPAN_OH_M] MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 + M + 0.5*NDEP ; 8e-27, 3.5, 3e-11, 0, 0.5 +[MPAN_OH_M] MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 + 0.5*NDEP + M ; 8e-27, 3.5, 3e-11, 0, 0.5 [MVK_O3] MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*HCOOH ; 8.5e-16, -1520 [MVK_OH] MVK + OH -> MACRO2 ; 4.13e-12, 452 [tag_MCO3_NO2] MCO3 + NO2 + M -> MPAN + M ; 9.7e-29, 5.6, 9.3e-12, 1.5, 0.6 @@ -698,8 +712,8 @@ [ISOP_O3] ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*HCOOH + 0.62*CO + 0.32*OH + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 + 0.05*CH3O2 ; 1.05e-14, -2000 [ISOP_OH] ISOP + OH -> ISOPO2 ; 2.54e-11, 410 [ISOPOOH_OH] ISOPOOH + OH -> 0.8*XO2 + 0.2*ISOPO2 ; 1.52e-11, 200 -[ONITR_NO3] ONITR + NO3 -> HO2 + NO2 + HYDRALD ; 1.4e-12, -1860 -[ONITR_OH] ONITR + OH -> HYDRALD + 0.4*NO2 + HO2 ; 4.5e-11 +[ONITR_NO3] ONITR + NO3 -> HO2 + NO2 + HYDRALD + NDEP ; 1.4e-12, -1860 +[ONITR_OH] ONITR + OH -> HYDRALD + 0.4*NO2 + HO2 + 0.6*NDEP ; 4.5e-11 [XO2_CH3CO3] XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 ; 1.3e-12, 640 [XO2_CH3O2] XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD ; 5e-13, 400 [XO2_HO2] XO2 + HO2 -> XOOH ; 8e-13, 700 @@ -776,14 +790,16 @@ End Reactions Ext Forcing + H2O <- dataset + CO <- dataset + bc_a4 <- dataset NO2 <- dataset - so4_a2 <- dataset - SO2 <- dataset - so4_a1 <- dataset - num_a2 <- dataset num_a1 <- dataset - bc_a4 <- dataset + num_a2 <- dataset num_a4 <- dataset + SO2 <- dataset + so4_a1 <- dataset + so4_a2 <- dataset NO End Ext Forcing diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mods.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mods.F90 similarity index 77% rename from src/chemistry/pp_trop_strat_mam5_ts4/chem_mods.F90 rename to src/chemistry/pp_trop_strat_mam5_t4s2/chem_mods.F90 index 3c9024e6f9..5fbde684d2 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mods.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/chem_mods.F90 @@ -5,26 +5,26 @@ module chem_mods use shr_kind_mod, only : r8 => shr_kind_r8 implicit none save - integer, parameter :: phtcnt = 85, & ! number of photolysis reactions - rxntot = 363, & ! number of total reactions - gascnt = 278, & ! number of gas phase reactions + integer, parameter :: phtcnt = 84, & ! number of photolysis reactions + rxntot = 373, & ! number of total reactions + gascnt = 289, & ! number of gas phase reactions nabscol = 2, & ! number of absorbing column densities - gas_pcnst = 141, & ! number of "gas phase" species - nfs = 3, & ! number of "fixed" species + gas_pcnst = 143, & ! number of "gas phase" species + nfs = 2, & ! number of "fixed" species relcnt = 0, & ! number of relationship species grpcnt = 0, & ! number of group members - nzcnt = 1307, & ! number of non-zero matrix entries - extcnt = 9, & ! number of species with external forcing + nzcnt = 1379, & ! number of non-zero matrix entries + extcnt = 11, & ! number of species with external forcing clscnt1 = 2, & ! number of species in explicit class clscnt2 = 0, & ! number of species in hov class clscnt3 = 0, & ! number of species in ebi class - clscnt4 = 139, & ! number of species in implicit class + clscnt4 = 141, & ! number of species in implicit class clscnt5 = 0, & ! number of species in rodas class indexm = 1, & ! index of total atm density in invariant array indexh2o = 0, & ! index of water vapor density clsze = 1, & ! loop length for implicit chemistry - rxt_tag_cnt = 363, & - enthalpy_cnt = 18, & + rxt_tag_cnt = 373, & + enthalpy_cnt = 27, & nslvd = 15 integer :: clscnt(5) = 0 integer :: cls_rxt_cnt(4,5) = 0 diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/m_rxt_id.F90 new file mode 100644 index 0000000000..18a7048483 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/m_rxt_id.F90 @@ -0,0 +1,376 @@ + module m_rxt_id + implicit none + integer, parameter :: rid_jh2o_b = 1 + integer, parameter :: rid_jh2o_a = 2 + integer, parameter :: rid_jh2o_c = 3 + integer, parameter :: rid_jh2o2 = 4 + integer, parameter :: rid_jo2_a = 5 + integer, parameter :: rid_jo2_b = 6 + integer, parameter :: rid_jo3_a = 7 + integer, parameter :: rid_jo3_b = 8 + integer, parameter :: rid_jhno3 = 9 + integer, parameter :: rid_jho2no2_a = 10 + integer, parameter :: rid_jho2no2_b = 11 + integer, parameter :: rid_jn2o = 12 + integer, parameter :: rid_jn2o5_a = 13 + integer, parameter :: rid_jn2o5_b = 14 + integer, parameter :: rid_jno = 15 + integer, parameter :: rid_jno2 = 16 + integer, parameter :: rid_jno3_b = 17 + integer, parameter :: rid_jno3_a = 18 + integer, parameter :: rid_jc2h5ooh = 19 + integer, parameter :: rid_jc3h7ooh = 20 + integer, parameter :: rid_jch2o_a = 21 + integer, parameter :: rid_jch2o_b = 22 + integer, parameter :: rid_jch3cho = 23 + integer, parameter :: rid_jacet = 24 + integer, parameter :: rid_jmgly = 25 + integer, parameter :: rid_jch3co3h = 26 + integer, parameter :: rid_jch3ooh = 27 + integer, parameter :: rid_jch4_b = 28 + integer, parameter :: rid_jch4_a = 29 + integer, parameter :: rid_jco2 = 30 + integer, parameter :: rid_jeooh = 31 + integer, parameter :: rid_jglyald = 32 + integer, parameter :: rid_jglyoxal = 33 + integer, parameter :: rid_jhyac = 34 + integer, parameter :: rid_jisopooh = 35 + integer, parameter :: rid_jmacr_a = 36 + integer, parameter :: rid_jmacr_b = 37 + integer, parameter :: rid_jmpan = 38 + integer, parameter :: rid_jmvk = 39 + integer, parameter :: rid_jnoa = 40 + integer, parameter :: rid_jonitr = 41 + integer, parameter :: rid_jpan = 42 + integer, parameter :: rid_jpooh = 43 + integer, parameter :: rid_jrooh = 44 + integer, parameter :: rid_jxooh = 45 + integer, parameter :: rid_jbrcl = 46 + integer, parameter :: rid_jbro = 47 + integer, parameter :: rid_jbrono2_b = 48 + integer, parameter :: rid_jbrono2_a = 49 + integer, parameter :: rid_jccl4 = 50 + integer, parameter :: rid_jcf2clbr = 51 + integer, parameter :: rid_jcf3br = 52 + integer, parameter :: rid_jcfcl3 = 53 + integer, parameter :: rid_jcfc113 = 54 + integer, parameter :: rid_jcfc114 = 55 + integer, parameter :: rid_jcfc115 = 56 + integer, parameter :: rid_jcf2cl2 = 57 + integer, parameter :: rid_jch2br2 = 58 + integer, parameter :: rid_jch3br = 59 + integer, parameter :: rid_jch3ccl3 = 60 + integer, parameter :: rid_jch3cl = 61 + integer, parameter :: rid_jchbr3 = 62 + integer, parameter :: rid_jcl2 = 63 + integer, parameter :: rid_jcl2o2 = 64 + integer, parameter :: rid_jclo = 65 + integer, parameter :: rid_jclono2_b = 66 + integer, parameter :: rid_jclono2_a = 67 + integer, parameter :: rid_jh2402 = 68 + integer, parameter :: rid_jhbr = 69 + integer, parameter :: rid_jhcfc141b = 70 + integer, parameter :: rid_jhcfc142b = 71 + integer, parameter :: rid_jhcfc22 = 72 + integer, parameter :: rid_jhcl = 73 + integer, parameter :: rid_jhobr = 74 + integer, parameter :: rid_jhocl = 75 + integer, parameter :: rid_joclo = 76 + integer, parameter :: rid_jsf6 = 77 + integer, parameter :: rid_jh2so4 = 78 + integer, parameter :: rid_jocs = 79 + integer, parameter :: rid_jso = 80 + integer, parameter :: rid_jso2 = 81 + integer, parameter :: rid_jso3 = 82 + integer, parameter :: rid_jsoa_a1 = 83 + integer, parameter :: rid_jsoa_a2 = 84 + integer, parameter :: rid_ag1 = 85 + integer, parameter :: rid_ag2 = 86 + integer, parameter :: rid_O1D_H2 = 87 + integer, parameter :: rid_O1D_H2O = 88 + integer, parameter :: rid_O1D_N2 = 89 + integer, parameter :: rid_O1D_O2 = 90 + integer, parameter :: rid_O1D_O2b = 91 + integer, parameter :: rid_O1D_O3 = 92 + integer, parameter :: rid_O1D_O3a = 93 + integer, parameter :: rid_O2_1D_N2 = 94 + integer, parameter :: rid_O2_1D_O = 95 + integer, parameter :: rid_O2_1D_O2 = 96 + integer, parameter :: rid_O2_1S_CO2 = 97 + integer, parameter :: rid_O2_1S_N2 = 98 + integer, parameter :: rid_O2_1S_O = 99 + integer, parameter :: rid_O2_1S_O2 = 100 + integer, parameter :: rid_O2_1S_O3 = 101 + integer, parameter :: rid_O_O3 = 102 + integer, parameter :: rid_usr_O_O = 103 + integer, parameter :: rid_usr_O_O2 = 104 + integer, parameter :: rid_H2_O = 105 + integer, parameter :: rid_H2O2_O = 106 + integer, parameter :: rid_H_HO2 = 107 + integer, parameter :: rid_H_HO2a = 108 + integer, parameter :: rid_H_HO2b = 109 + integer, parameter :: rid_H_O2 = 110 + integer, parameter :: rid_HO2_O = 111 + integer, parameter :: rid_HO2_O3 = 112 + integer, parameter :: rid_H_O3 = 113 + integer, parameter :: rid_OH_H2 = 114 + integer, parameter :: rid_OH_H2O2 = 115 + integer, parameter :: rid_OH_HO2 = 116 + integer, parameter :: rid_OH_O = 117 + integer, parameter :: rid_OH_O3 = 118 + integer, parameter :: rid_OH_OH = 119 + integer, parameter :: rid_OH_OH_M = 120 + integer, parameter :: rid_usr_HO2_HO2 = 121 + integer, parameter :: rid_HO2NO2_OH = 122 + integer, parameter :: rid_N_NO = 123 + integer, parameter :: rid_N_NO2a = 124 + integer, parameter :: rid_N_NO2b = 125 + integer, parameter :: rid_N_NO2c = 126 + integer, parameter :: rid_N_O2 = 127 + integer, parameter :: rid_NO2_O = 128 + integer, parameter :: rid_NO2_O3 = 129 + integer, parameter :: rid_NO2_O_M = 130 + integer, parameter :: rid_NO3_HO2 = 131 + integer, parameter :: rid_NO3_NO = 132 + integer, parameter :: rid_NO3_O = 133 + integer, parameter :: rid_NO3_OH = 134 + integer, parameter :: rid_N_OH = 135 + integer, parameter :: rid_NO_HO2 = 136 + integer, parameter :: rid_NO_O3 = 137 + integer, parameter :: rid_NO_O_M = 138 + integer, parameter :: rid_O1D_N2Oa = 139 + integer, parameter :: rid_O1D_N2Ob = 140 + integer, parameter :: rid_tag_NO2_HO2 = 141 + integer, parameter :: rid_tag_NO2_NO3 = 142 + integer, parameter :: rid_tag_NO2_OH = 143 + integer, parameter :: rid_usr_HNO3_OH = 144 + integer, parameter :: rid_usr_HO2NO2_M = 145 + integer, parameter :: rid_usr_N2O5_M = 146 + integer, parameter :: rid_CL_CH2O = 147 + integer, parameter :: rid_CL_CH4 = 148 + integer, parameter :: rid_CL_H2 = 149 + integer, parameter :: rid_CL_H2O2 = 150 + integer, parameter :: rid_CL_HO2a = 151 + integer, parameter :: rid_CL_HO2b = 152 + integer, parameter :: rid_CL_O3 = 153 + integer, parameter :: rid_CLO_CH3O2 = 154 + integer, parameter :: rid_CLO_CLOa = 155 + integer, parameter :: rid_CLO_CLOb = 156 + integer, parameter :: rid_CLO_CLOc = 157 + integer, parameter :: rid_CLO_HO2 = 158 + integer, parameter :: rid_CLO_NO = 159 + integer, parameter :: rid_CLONO2_CL = 160 + integer, parameter :: rid_CLO_NO2_M = 161 + integer, parameter :: rid_CLONO2_O = 162 + integer, parameter :: rid_CLONO2_OH = 163 + integer, parameter :: rid_CLO_O = 164 + integer, parameter :: rid_CLO_OHa = 165 + integer, parameter :: rid_CLO_OHb = 166 + integer, parameter :: rid_HCL_O = 167 + integer, parameter :: rid_HCL_OH = 168 + integer, parameter :: rid_HOCL_CL = 169 + integer, parameter :: rid_HOCL_O = 170 + integer, parameter :: rid_HOCL_OH = 171 + integer, parameter :: rid_O1D_CCL4 = 172 + integer, parameter :: rid_O1D_CF2CLBR = 173 + integer, parameter :: rid_O1D_CFC11 = 174 + integer, parameter :: rid_O1D_CFC113 = 175 + integer, parameter :: rid_O1D_CFC114 = 176 + integer, parameter :: rid_O1D_CFC115 = 177 + integer, parameter :: rid_O1D_CFC12 = 178 + integer, parameter :: rid_O1D_HCLa = 179 + integer, parameter :: rid_O1D_HCLb = 180 + integer, parameter :: rid_tag_CLO_CLO_M = 181 + integer, parameter :: rid_usr_CL2O2_M = 182 + integer, parameter :: rid_BR_CH2O = 183 + integer, parameter :: rid_BR_HO2 = 184 + integer, parameter :: rid_BR_O3 = 185 + integer, parameter :: rid_BRO_BRO = 186 + integer, parameter :: rid_BRO_CLOa = 187 + integer, parameter :: rid_BRO_CLOb = 188 + integer, parameter :: rid_BRO_CLOc = 189 + integer, parameter :: rid_BRO_HO2 = 190 + integer, parameter :: rid_BRO_NO = 191 + integer, parameter :: rid_BRO_NO2_M = 192 + integer, parameter :: rid_BRONO2_O = 193 + integer, parameter :: rid_BRO_O = 194 + integer, parameter :: rid_BRO_OH = 195 + integer, parameter :: rid_HBR_O = 196 + integer, parameter :: rid_HBR_OH = 197 + integer, parameter :: rid_HOBR_O = 198 + integer, parameter :: rid_O1D_CF3BR = 199 + integer, parameter :: rid_O1D_CHBR3 = 200 + integer, parameter :: rid_O1D_H2402 = 201 + integer, parameter :: rid_O1D_HBRa = 202 + integer, parameter :: rid_O1D_HBRb = 203 + integer, parameter :: rid_CH2BR2_CL = 204 + integer, parameter :: rid_CH2BR2_OH = 205 + integer, parameter :: rid_CH3BR_CL = 206 + integer, parameter :: rid_CH3BR_OH = 207 + integer, parameter :: rid_CH3CCL3_OH = 208 + integer, parameter :: rid_CH3CL_CL = 209 + integer, parameter :: rid_CH3CL_OH = 210 + integer, parameter :: rid_CHBR3_CL = 211 + integer, parameter :: rid_CHBR3_OH = 212 + integer, parameter :: rid_HCFC141B_OH = 213 + integer, parameter :: rid_HCFC142B_OH = 214 + integer, parameter :: rid_HCFC22_OH = 215 + integer, parameter :: rid_O1D_CH2BR2 = 216 + integer, parameter :: rid_O1D_CH3BR = 217 + integer, parameter :: rid_O1D_HCFC141B = 218 + integer, parameter :: rid_O1D_HCFC142B = 219 + integer, parameter :: rid_O1D_HCFC22 = 220 + integer, parameter :: rid_CH2O_NO3 = 221 + integer, parameter :: rid_CH2O_O = 222 + integer, parameter :: rid_CH2O_OH = 223 + integer, parameter :: rid_CH3O2_CH3O2a = 224 + integer, parameter :: rid_CH3O2_CH3O2b = 225 + integer, parameter :: rid_CH3O2_HO2 = 226 + integer, parameter :: rid_CH3O2_NO = 227 + integer, parameter :: rid_CH3OH_OH = 228 + integer, parameter :: rid_CH3OOH_OH = 229 + integer, parameter :: rid_CH4_OH = 230 + integer, parameter :: rid_O1D_CH4a = 231 + integer, parameter :: rid_O1D_CH4b = 232 + integer, parameter :: rid_O1D_CH4c = 233 + integer, parameter :: rid_usr_CO_OH = 234 + integer, parameter :: rid_C2H4_CL_M = 235 + integer, parameter :: rid_C2H4_O3 = 236 + integer, parameter :: rid_C2H5O2_C2H5O2 = 237 + integer, parameter :: rid_C2H5O2_CH3O2 = 238 + integer, parameter :: rid_C2H5O2_HO2 = 239 + integer, parameter :: rid_C2H5O2_NO = 240 + integer, parameter :: rid_C2H5OH_OH = 241 + integer, parameter :: rid_C2H5OOH_OH = 242 + integer, parameter :: rid_C2H6_CL = 243 + integer, parameter :: rid_C2H6_OH = 244 + integer, parameter :: rid_CH3CHO_NO3 = 245 + integer, parameter :: rid_CH3CHO_OH = 246 + integer, parameter :: rid_CH3CO3_CH3CO3 = 247 + integer, parameter :: rid_CH3CO3_CH3O2 = 248 + integer, parameter :: rid_CH3CO3_HO2 = 249 + integer, parameter :: rid_CH3CO3_NO = 250 + integer, parameter :: rid_CH3COOH_OH = 251 + integer, parameter :: rid_CH3COOOH_OH = 252 + integer, parameter :: rid_EO2_HO2 = 253 + integer, parameter :: rid_EO2_NO = 254 + integer, parameter :: rid_EO_M = 255 + integer, parameter :: rid_EO_O2 = 256 + integer, parameter :: rid_GLYALD_OH = 257 + integer, parameter :: rid_GLYOXAL_OH = 258 + integer, parameter :: rid_PAN_OH = 259 + integer, parameter :: rid_tag_C2H4_OH = 260 + integer, parameter :: rid_tag_CH3CO3_NO2 = 261 + integer, parameter :: rid_usr_PAN_M = 262 + integer, parameter :: rid_C3H6_NO3 = 263 + integer, parameter :: rid_C3H6_O3 = 264 + integer, parameter :: rid_C3H7O2_CH3O2 = 265 + integer, parameter :: rid_C3H7O2_HO2 = 266 + integer, parameter :: rid_C3H7O2_NO = 267 + integer, parameter :: rid_C3H7OOH_OH = 268 + integer, parameter :: rid_C3H8_OH = 269 + integer, parameter :: rid_CH3COCHO_NO3 = 270 + integer, parameter :: rid_CH3COCHO_OH = 271 + integer, parameter :: rid_HYAC_OH = 272 + integer, parameter :: rid_NOA_OH = 273 + integer, parameter :: rid_PO2_HO2 = 274 + integer, parameter :: rid_PO2_NO = 275 + integer, parameter :: rid_POOH_OH = 276 + integer, parameter :: rid_RO2_CH3O2 = 277 + integer, parameter :: rid_RO2_HO2 = 278 + integer, parameter :: rid_RO2_NO = 279 + integer, parameter :: rid_ROOH_OH = 280 + integer, parameter :: rid_tag_C3H6_OH = 281 + integer, parameter :: rid_usr_CH3COCH3_OH = 282 + integer, parameter :: rid_MACRO2_CH3CO3 = 283 + integer, parameter :: rid_MACRO2_CH3O2 = 284 + integer, parameter :: rid_MACRO2_HO2 = 285 + integer, parameter :: rid_MACRO2_NO3 = 286 + integer, parameter :: rid_MACRO2_NOa = 287 + integer, parameter :: rid_MACRO2_NOb = 288 + integer, parameter :: rid_MACR_O3 = 289 + integer, parameter :: rid_MACR_OH = 290 + integer, parameter :: rid_MACROOH_OH = 291 + integer, parameter :: rid_MCO3_CH3CO3 = 292 + integer, parameter :: rid_MCO3_CH3O2 = 293 + integer, parameter :: rid_MCO3_HO2 = 294 + integer, parameter :: rid_MCO3_MCO3 = 295 + integer, parameter :: rid_MCO3_NO = 296 + integer, parameter :: rid_MCO3_NO3 = 297 + integer, parameter :: rid_MPAN_OH_M = 298 + integer, parameter :: rid_MVK_O3 = 299 + integer, parameter :: rid_MVK_OH = 300 + integer, parameter :: rid_tag_MCO3_NO2 = 301 + integer, parameter :: rid_usr_MPAN_M = 302 + integer, parameter :: rid_BIGALK_OH = 303 + integer, parameter :: rid_HYDRALD_OH = 304 + integer, parameter :: rid_ISOP_NO3 = 305 + integer, parameter :: rid_ISOPNO3_HO2 = 306 + integer, parameter :: rid_ISOPNO3_NO = 307 + integer, parameter :: rid_ISOPNO3_NO3 = 308 + integer, parameter :: rid_ISOPO2_CH3CO3 = 309 + integer, parameter :: rid_ISOPO2_CH3O2 = 310 + integer, parameter :: rid_ISOPO2_HO2 = 311 + integer, parameter :: rid_ISOPO2_NO = 312 + integer, parameter :: rid_ISOPO2_NO3 = 313 + integer, parameter :: rid_ISOP_O3 = 314 + integer, parameter :: rid_ISOP_OH = 315 + integer, parameter :: rid_ISOPOOH_OH = 316 + integer, parameter :: rid_ONITR_NO3 = 317 + integer, parameter :: rid_ONITR_OH = 318 + integer, parameter :: rid_XO2_CH3CO3 = 319 + integer, parameter :: rid_XO2_CH3O2 = 320 + integer, parameter :: rid_XO2_HO2 = 321 + integer, parameter :: rid_XO2_NO = 322 + integer, parameter :: rid_XO2_NO3 = 323 + integer, parameter :: rid_XOOH_OH = 324 + integer, parameter :: rid_TERP_NO3 = 325 + integer, parameter :: rid_TERP_O3 = 326 + integer, parameter :: rid_TERP_OH = 327 + integer, parameter :: rid_DMS_NO3 = 328 + integer, parameter :: rid_DMS_OHa = 329 + integer, parameter :: rid_OCS_O = 330 + integer, parameter :: rid_OCS_OH = 331 + integer, parameter :: rid_S_O2 = 332 + integer, parameter :: rid_SO2_OH_M = 333 + integer, parameter :: rid_S_O3 = 334 + integer, parameter :: rid_SO_BRO = 335 + integer, parameter :: rid_SO_CLO = 336 + integer, parameter :: rid_S_OH = 337 + integer, parameter :: rid_SO_NO2 = 338 + integer, parameter :: rid_SO_O2 = 339 + integer, parameter :: rid_SO_O3 = 340 + integer, parameter :: rid_SO_OCLO = 341 + integer, parameter :: rid_SO_OH = 342 + integer, parameter :: rid_usr_DMS_OH = 343 + integer, parameter :: rid_usr_SO3_H2O = 344 + integer, parameter :: rid_NH3_OH = 345 + integer, parameter :: rid_usr_HO2_aer = 346 + integer, parameter :: rid_usr_N2O5_aer = 347 + integer, parameter :: rid_usr_NH4_strat_tau = 348 + integer, parameter :: rid_usr_NO2_aer = 349 + integer, parameter :: rid_usr_NO3_aer = 350 + integer, parameter :: rid_usr_ONITR_aer = 351 + integer, parameter :: rid_SOAE_tau = 352 + integer, parameter :: rid_het1 = 353 + integer, parameter :: rid_het10 = 354 + integer, parameter :: rid_het11 = 355 + integer, parameter :: rid_het12 = 356 + integer, parameter :: rid_het13 = 357 + integer, parameter :: rid_het14 = 358 + integer, parameter :: rid_het15 = 359 + integer, parameter :: rid_het16 = 360 + integer, parameter :: rid_het17 = 361 + integer, parameter :: rid_het2 = 362 + integer, parameter :: rid_het3 = 363 + integer, parameter :: rid_het4 = 364 + integer, parameter :: rid_het5 = 365 + integer, parameter :: rid_het6 = 366 + integer, parameter :: rid_het7 = 367 + integer, parameter :: rid_het8 = 368 + integer, parameter :: rid_het9 = 369 + integer, parameter :: rid_E90_tau = 370 + integer, parameter :: rid_NH_50_tau = 371 + integer, parameter :: rid_NH_5_tau = 372 + integer, parameter :: rid_ST80_25_tau = 373 + end module m_rxt_id diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/m_spc_id.F90 new file mode 100644 index 0000000000..a4ce7d0c63 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/m_spc_id.F90 @@ -0,0 +1,146 @@ + module m_spc_id + implicit none + integer, parameter :: id_bc_a1 = 1 + integer, parameter :: id_bc_a4 = 2 + integer, parameter :: id_BIGALK = 3 + integer, parameter :: id_BR = 4 + integer, parameter :: id_BRCL = 5 + integer, parameter :: id_BRO = 6 + integer, parameter :: id_BRONO2 = 7 + integer, parameter :: id_BRY = 8 + integer, parameter :: id_C2H4 = 9 + integer, parameter :: id_C2H5OH = 10 + integer, parameter :: id_C2H5OOH = 11 + integer, parameter :: id_C2H6 = 12 + integer, parameter :: id_C3H6 = 13 + integer, parameter :: id_C3H7OOH = 14 + integer, parameter :: id_C3H8 = 15 + integer, parameter :: id_CCL4 = 16 + integer, parameter :: id_CF2CLBR = 17 + integer, parameter :: id_CF3BR = 18 + integer, parameter :: id_CFC11 = 19 + integer, parameter :: id_CFC113 = 20 + integer, parameter :: id_CFC114 = 21 + integer, parameter :: id_CFC115 = 22 + integer, parameter :: id_CFC12 = 23 + integer, parameter :: id_CH2BR2 = 24 + integer, parameter :: id_CH2O = 25 + integer, parameter :: id_CH3BR = 26 + integer, parameter :: id_CH3CCL3 = 27 + integer, parameter :: id_CH3CHO = 28 + integer, parameter :: id_CH3CL = 29 + integer, parameter :: id_CH3COCH3 = 30 + integer, parameter :: id_CH3COCHO = 31 + integer, parameter :: id_CH3COOH = 32 + integer, parameter :: id_CH3COOOH = 33 + integer, parameter :: id_CH3OH = 34 + integer, parameter :: id_CH3OOH = 35 + integer, parameter :: id_CH4 = 36 + integer, parameter :: id_CHBR3 = 37 + integer, parameter :: id_CL = 38 + integer, parameter :: id_CL2 = 39 + integer, parameter :: id_CL2O2 = 40 + integer, parameter :: id_CLO = 41 + integer, parameter :: id_CLONO2 = 42 + integer, parameter :: id_CLY = 43 + integer, parameter :: id_CO = 44 + integer, parameter :: id_CO2 = 45 + integer, parameter :: id_DMS = 46 + integer, parameter :: id_dst_a1 = 47 + integer, parameter :: id_dst_a2 = 48 + integer, parameter :: id_dst_a3 = 49 + integer, parameter :: id_E90 = 50 + integer, parameter :: id_EOOH = 51 + integer, parameter :: id_GLYALD = 52 + integer, parameter :: id_GLYOXAL = 53 + integer, parameter :: id_H = 54 + integer, parameter :: id_H2 = 55 + integer, parameter :: id_H2402 = 56 + integer, parameter :: id_H2O2 = 57 + integer, parameter :: id_H2SO4 = 58 + integer, parameter :: id_HBR = 59 + integer, parameter :: id_HCFC141B = 60 + integer, parameter :: id_HCFC142B = 61 + integer, parameter :: id_HCFC22 = 62 + integer, parameter :: id_HCL = 63 + integer, parameter :: id_HNO3 = 64 + integer, parameter :: id_HO2NO2 = 65 + integer, parameter :: id_HOBR = 66 + integer, parameter :: id_HOCL = 67 + integer, parameter :: id_HYAC = 68 + integer, parameter :: id_HYDRALD = 69 + integer, parameter :: id_ISOP = 70 + integer, parameter :: id_ISOPNO3 = 71 + integer, parameter :: id_ISOPOOH = 72 + integer, parameter :: id_MACR = 73 + integer, parameter :: id_MACROOH = 74 + integer, parameter :: id_MPAN = 75 + integer, parameter :: id_MVK = 76 + integer, parameter :: id_N = 77 + integer, parameter :: id_N2O = 78 + integer, parameter :: id_N2O5 = 79 + integer, parameter :: id_ncl_a1 = 80 + integer, parameter :: id_ncl_a2 = 81 + integer, parameter :: id_ncl_a3 = 82 + integer, parameter :: id_NH3 = 83 + integer, parameter :: id_NH4 = 84 + integer, parameter :: id_NH_5 = 85 + integer, parameter :: id_NH_50 = 86 + integer, parameter :: id_NO = 87 + integer, parameter :: id_NO2 = 88 + integer, parameter :: id_NO3 = 89 + integer, parameter :: id_NOA = 90 + integer, parameter :: id_num_a1 = 91 + integer, parameter :: id_num_a2 = 92 + integer, parameter :: id_num_a3 = 93 + integer, parameter :: id_num_a4 = 94 + integer, parameter :: id_num_a5 = 95 + integer, parameter :: id_O = 96 + integer, parameter :: id_O2 = 97 + integer, parameter :: id_O2_1D = 98 + integer, parameter :: id_O2_1S = 99 + integer, parameter :: id_O3 = 100 + integer, parameter :: id_O3S = 101 + integer, parameter :: id_OCLO = 102 + integer, parameter :: id_OCS = 103 + integer, parameter :: id_ONITR = 104 + integer, parameter :: id_PAN = 105 + integer, parameter :: id_pom_a1 = 106 + integer, parameter :: id_pom_a4 = 107 + integer, parameter :: id_POOH = 108 + integer, parameter :: id_ROOH = 109 + integer, parameter :: id_S = 110 + integer, parameter :: id_SF6 = 111 + integer, parameter :: id_SO = 112 + integer, parameter :: id_SO2 = 113 + integer, parameter :: id_SO3 = 114 + integer, parameter :: id_so4_a1 = 115 + integer, parameter :: id_so4_a2 = 116 + integer, parameter :: id_so4_a3 = 117 + integer, parameter :: id_so4_a5 = 118 + integer, parameter :: id_soa_a1 = 119 + integer, parameter :: id_soa_a2 = 120 + integer, parameter :: id_SOAE = 121 + integer, parameter :: id_SOAG = 122 + integer, parameter :: id_ST80_25 = 123 + integer, parameter :: id_TERP = 124 + integer, parameter :: id_XOOH = 125 + integer, parameter :: id_NDEP = 126 + integer, parameter :: id_NHDEP = 127 + integer, parameter :: id_C2H5O2 = 128 + integer, parameter :: id_C3H7O2 = 129 + integer, parameter :: id_CH3CO3 = 130 + integer, parameter :: id_CH3O2 = 131 + integer, parameter :: id_EO = 132 + integer, parameter :: id_EO2 = 133 + integer, parameter :: id_HO2 = 134 + integer, parameter :: id_ISOPO2 = 135 + integer, parameter :: id_MACRO2 = 136 + integer, parameter :: id_MCO3 = 137 + integer, parameter :: id_O1D = 138 + integer, parameter :: id_OH = 139 + integer, parameter :: id_PO2 = 140 + integer, parameter :: id_RO2 = 141 + integer, parameter :: id_XO2 = 142 + integer, parameter :: id_H2O = 143 + end module m_spc_id diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_adjrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_adjrxt.F90 similarity index 82% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_adjrxt.F90 rename to src/chemistry/pp_trop_strat_mam5_t4s2/mo_adjrxt.F90 index b8fc745806..787e2e6721 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_adjrxt.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_adjrxt.F90 @@ -13,38 +13,35 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) real(r8), intent(in) :: inv(ncol,nlev,nfs) real(r8), intent(in) :: m(ncol,nlev) real(r8), intent(inout) :: rate(ncol,nlev,rxntot) - rate(:,:, 88) = rate(:,:, 88) * inv(:,:, 3) rate(:,:, 89) = rate(:,:, 89) * inv(:,:, 2) - rate(:,:, 93) = rate(:,:, 93) * inv(:,:, 1) + rate(:,:, 94) = rate(:,:, 94) * inv(:,:, 2) + rate(:,:, 98) = rate(:,:, 98) * inv(:,:, 2) + rate(:,:, 103) = rate(:,:, 103) * inv(:,:, 1) + rate(:,:, 104) = rate(:,:, 104) * inv(:,:, 1) rate(:,:, 110) = rate(:,:, 110) * inv(:,:, 1) - rate(:,:, 117) = rate(:,:, 117) * inv(:,:, 2) rate(:,:, 120) = rate(:,:, 120) * inv(:,:, 1) - rate(:,:, 128) = rate(:,:, 128) * inv(:,:, 1) - rate(:,:, 131) = rate(:,:, 131) * inv(:,:, 1) - rate(:,:, 132) = rate(:,:, 132) * inv(:,:, 1) - rate(:,:, 133) = rate(:,:, 133) * inv(:,:, 1) - rate(:,:, 135) = rate(:,:, 135) * inv(:,:, 1) - rate(:,:, 136) = rate(:,:, 136) * inv(:,:, 1) - rate(:,:, 151) = rate(:,:, 151) * inv(:,:, 1) - rate(:,:, 171) = rate(:,:, 171) * inv(:,:, 1) - rate(:,:, 172) = rate(:,:, 172) * inv(:,:, 1) + rate(:,:, 130) = rate(:,:, 130) * inv(:,:, 1) + rate(:,:, 138) = rate(:,:, 138) * inv(:,:, 1) + rate(:,:, 141) = rate(:,:, 141) * inv(:,:, 1) + rate(:,:, 142) = rate(:,:, 142) * inv(:,:, 1) + rate(:,:, 143) = rate(:,:, 143) * inv(:,:, 1) + rate(:,:, 145) = rate(:,:, 145) * inv(:,:, 1) + rate(:,:, 146) = rate(:,:, 146) * inv(:,:, 1) + rate(:,:, 161) = rate(:,:, 161) * inv(:,:, 1) + rate(:,:, 181) = rate(:,:, 181) * inv(:,:, 1) rate(:,:, 182) = rate(:,:, 182) * inv(:,:, 1) - rate(:,:, 225) = rate(:,:, 225) * inv(:,:, 1) - rate(:,:, 246) = rate(:,:, 246) * inv(:,:, 2) - rate(:,:, 250) = rate(:,:, 250) * inv(:,:, 1) - rate(:,:, 251) = rate(:,:, 251) * inv(:,:, 1) - rate(:,:, 252) = rate(:,:, 252) * inv(:,:, 1) - rate(:,:, 271) = rate(:,:, 271) * inv(:,:, 1) - rate(:,:, 288) = rate(:,:, 288) * inv(:,:, 1) - rate(:,:, 291) = rate(:,:, 291) * inv(:,:, 1) - rate(:,:, 292) = rate(:,:, 292) * inv(:,:, 1) - rate(:,:, 322) = rate(:,:, 322) * inv(:,:, 2) - rate(:,:, 323) = rate(:,:, 323) * inv(:,:, 1) - rate(:,:, 329) = rate(:,:, 329) * inv(:,:, 2) - rate(:,:, 94) = rate(:,:, 94) * inv(:,:, 2) * inv(:,:, 1) - rate(:,:, 100) = rate(:,:, 100) * inv(:,:, 2) * inv(:,:, 1) - rate(:,:, 86) = rate(:,:, 86) * m(:,:) + rate(:,:, 192) = rate(:,:, 192) * inv(:,:, 1) + rate(:,:, 235) = rate(:,:, 235) * inv(:,:, 1) + rate(:,:, 260) = rate(:,:, 260) * inv(:,:, 1) + rate(:,:, 261) = rate(:,:, 261) * inv(:,:, 1) + rate(:,:, 262) = rate(:,:, 262) * inv(:,:, 1) + rate(:,:, 281) = rate(:,:, 281) * inv(:,:, 1) + rate(:,:, 298) = rate(:,:, 298) * inv(:,:, 1) + rate(:,:, 301) = rate(:,:, 301) * inv(:,:, 1) + rate(:,:, 302) = rate(:,:, 302) * inv(:,:, 1) + rate(:,:, 333) = rate(:,:, 333) * inv(:,:, 1) rate(:,:, 87) = rate(:,:, 87) * m(:,:) + rate(:,:, 88) = rate(:,:, 88) * m(:,:) rate(:,:, 90) = rate(:,:, 90) * m(:,:) rate(:,:, 91) = rate(:,:, 91) * m(:,:) rate(:,:, 92) = rate(:,:, 92) * m(:,:) @@ -52,8 +49,8 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 95) = rate(:,:, 95) * m(:,:) rate(:,:, 96) = rate(:,:, 96) * m(:,:) rate(:,:, 97) = rate(:,:, 97) * m(:,:) - rate(:,:, 98) = rate(:,:, 98) * m(:,:) rate(:,:, 99) = rate(:,:, 99) * m(:,:) + rate(:,:, 100) = rate(:,:, 100) * m(:,:) rate(:,:, 101) = rate(:,:, 101) * m(:,:) rate(:,:, 102) = rate(:,:, 102) * m(:,:) rate(:,:, 103) = rate(:,:, 103) * m(:,:) @@ -70,6 +67,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 114) = rate(:,:, 114) * m(:,:) rate(:,:, 115) = rate(:,:, 115) * m(:,:) rate(:,:, 116) = rate(:,:, 116) * m(:,:) + rate(:,:, 117) = rate(:,:, 117) * m(:,:) rate(:,:, 118) = rate(:,:, 118) * m(:,:) rate(:,:, 119) = rate(:,:, 119) * m(:,:) rate(:,:, 120) = rate(:,:, 120) * m(:,:) @@ -87,6 +85,8 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 132) = rate(:,:, 132) * m(:,:) rate(:,:, 133) = rate(:,:, 133) * m(:,:) rate(:,:, 134) = rate(:,:, 134) * m(:,:) + rate(:,:, 135) = rate(:,:, 135) * m(:,:) + rate(:,:, 136) = rate(:,:, 136) * m(:,:) rate(:,:, 137) = rate(:,:, 137) * m(:,:) rate(:,:, 138) = rate(:,:, 138) * m(:,:) rate(:,:, 139) = rate(:,:, 139) * m(:,:) @@ -95,8 +95,6 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 142) = rate(:,:, 142) * m(:,:) rate(:,:, 143) = rate(:,:, 143) * m(:,:) rate(:,:, 144) = rate(:,:, 144) * m(:,:) - rate(:,:, 145) = rate(:,:, 145) * m(:,:) - rate(:,:, 146) = rate(:,:, 146) * m(:,:) rate(:,:, 147) = rate(:,:, 147) * m(:,:) rate(:,:, 148) = rate(:,:, 148) * m(:,:) rate(:,:, 149) = rate(:,:, 149) * m(:,:) @@ -122,6 +120,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 169) = rate(:,:, 169) * m(:,:) rate(:,:, 170) = rate(:,:, 170) * m(:,:) rate(:,:, 171) = rate(:,:, 171) * m(:,:) + rate(:,:, 172) = rate(:,:, 172) * m(:,:) rate(:,:, 173) = rate(:,:, 173) * m(:,:) rate(:,:, 174) = rate(:,:, 174) * m(:,:) rate(:,:, 175) = rate(:,:, 175) * m(:,:) @@ -131,7 +130,6 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 179) = rate(:,:, 179) * m(:,:) rate(:,:, 180) = rate(:,:, 180) * m(:,:) rate(:,:, 181) = rate(:,:, 181) * m(:,:) - rate(:,:, 182) = rate(:,:, 182) * m(:,:) rate(:,:, 183) = rate(:,:, 183) * m(:,:) rate(:,:, 184) = rate(:,:, 184) * m(:,:) rate(:,:, 185) = rate(:,:, 185) * m(:,:) @@ -194,21 +192,22 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 242) = rate(:,:, 242) * m(:,:) rate(:,:, 243) = rate(:,:, 243) * m(:,:) rate(:,:, 244) = rate(:,:, 244) * m(:,:) + rate(:,:, 245) = rate(:,:, 245) * m(:,:) + rate(:,:, 246) = rate(:,:, 246) * m(:,:) rate(:,:, 247) = rate(:,:, 247) * m(:,:) rate(:,:, 248) = rate(:,:, 248) * m(:,:) rate(:,:, 249) = rate(:,:, 249) * m(:,:) rate(:,:, 250) = rate(:,:, 250) * m(:,:) rate(:,:, 251) = rate(:,:, 251) * m(:,:) + rate(:,:, 252) = rate(:,:, 252) * m(:,:) rate(:,:, 253) = rate(:,:, 253) * m(:,:) rate(:,:, 254) = rate(:,:, 254) * m(:,:) - rate(:,:, 255) = rate(:,:, 255) * m(:,:) rate(:,:, 256) = rate(:,:, 256) * m(:,:) rate(:,:, 257) = rate(:,:, 257) * m(:,:) rate(:,:, 258) = rate(:,:, 258) * m(:,:) rate(:,:, 259) = rate(:,:, 259) * m(:,:) rate(:,:, 260) = rate(:,:, 260) * m(:,:) rate(:,:, 261) = rate(:,:, 261) * m(:,:) - rate(:,:, 262) = rate(:,:, 262) * m(:,:) rate(:,:, 263) = rate(:,:, 263) * m(:,:) rate(:,:, 264) = rate(:,:, 264) * m(:,:) rate(:,:, 265) = rate(:,:, 265) * m(:,:) @@ -238,6 +237,7 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 289) = rate(:,:, 289) * m(:,:) rate(:,:, 290) = rate(:,:, 290) * m(:,:) rate(:,:, 291) = rate(:,:, 291) * m(:,:) + rate(:,:, 292) = rate(:,:, 292) * m(:,:) rate(:,:, 293) = rate(:,:, 293) * m(:,:) rate(:,:, 294) = rate(:,:, 294) * m(:,:) rate(:,:, 295) = rate(:,:, 295) * m(:,:) @@ -247,7 +247,6 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 299) = rate(:,:, 299) * m(:,:) rate(:,:, 300) = rate(:,:, 300) * m(:,:) rate(:,:, 301) = rate(:,:, 301) * m(:,:) - rate(:,:, 302) = rate(:,:, 302) * m(:,:) rate(:,:, 303) = rate(:,:, 303) * m(:,:) rate(:,:, 304) = rate(:,:, 304) * m(:,:) rate(:,:, 305) = rate(:,:, 305) * m(:,:) @@ -267,25 +266,37 @@ subroutine adjrxt( rate, inv, m, ncol, nlev ) rate(:,:, 319) = rate(:,:, 319) * m(:,:) rate(:,:, 320) = rate(:,:, 320) * m(:,:) rate(:,:, 321) = rate(:,:, 321) * m(:,:) + rate(:,:, 322) = rate(:,:, 322) * m(:,:) rate(:,:, 323) = rate(:,:, 323) * m(:,:) rate(:,:, 324) = rate(:,:, 324) * m(:,:) rate(:,:, 325) = rate(:,:, 325) * m(:,:) rate(:,:, 326) = rate(:,:, 326) * m(:,:) rate(:,:, 327) = rate(:,:, 327) * m(:,:) rate(:,:, 328) = rate(:,:, 328) * m(:,:) + rate(:,:, 329) = rate(:,:, 329) * m(:,:) rate(:,:, 330) = rate(:,:, 330) * m(:,:) rate(:,:, 331) = rate(:,:, 331) * m(:,:) rate(:,:, 332) = rate(:,:, 332) * m(:,:) rate(:,:, 333) = rate(:,:, 333) * m(:,:) rate(:,:, 334) = rate(:,:, 334) * m(:,:) rate(:,:, 335) = rate(:,:, 335) * m(:,:) + rate(:,:, 336) = rate(:,:, 336) * m(:,:) + rate(:,:, 337) = rate(:,:, 337) * m(:,:) + rate(:,:, 338) = rate(:,:, 338) * m(:,:) + rate(:,:, 339) = rate(:,:, 339) * m(:,:) + rate(:,:, 340) = rate(:,:, 340) * m(:,:) + rate(:,:, 341) = rate(:,:, 341) * m(:,:) + rate(:,:, 342) = rate(:,:, 342) * m(:,:) + rate(:,:, 343) = rate(:,:, 343) * m(:,:) rate(:,:, 344) = rate(:,:, 344) * m(:,:) - rate(:,:, 349) = rate(:,:, 349) * m(:,:) - rate(:,:, 350) = rate(:,:, 350) * m(:,:) - rate(:,:, 351) = rate(:,:, 351) * m(:,:) + rate(:,:, 345) = rate(:,:, 345) * m(:,:) rate(:,:, 354) = rate(:,:, 354) * m(:,:) - rate(:,:, 355) = rate(:,:, 355) * m(:,:) - rate(:,:, 356) = rate(:,:, 356) * m(:,:) rate(:,:, 359) = rate(:,:, 359) * m(:,:) + rate(:,:, 360) = rate(:,:, 360) * m(:,:) + rate(:,:, 361) = rate(:,:, 361) * m(:,:) + rate(:,:, 364) = rate(:,:, 364) * m(:,:) + rate(:,:, 365) = rate(:,:, 365) * m(:,:) + rate(:,:, 366) = rate(:,:, 366) * m(:,:) + rate(:,:, 369) = rate(:,:, 369) * m(:,:) end subroutine adjrxt end module mo_adjrxt diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_exp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_exp_sol.F90 new file mode 100644 index 0000000000..c1cde93fa7 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_exp_sol.F90 @@ -0,0 +1,81 @@ +module mo_exp_sol + private + public :: exp_sol + public :: exp_sol_inti +contains + subroutine exp_sol_inti + use mo_tracname, only : solsym + use chem_mods, only : clscnt1, clsmap + use cam_history, only : addfld + implicit none + integer :: i,j + do i = 1,clscnt1 + j = clsmap(i,1) + call addfld( trim(solsym(j))//'_CHMP', (/ 'lev' /), 'I', '/cm3/s', 'chemical production rate' ) + call addfld( trim(solsym(j))//'_CHML', (/ 'lev' /), 'I', '/cm3/s', 'chemical loss rate' ) + enddo + end subroutine exp_sol_inti + subroutine exp_sol( base_sol, reaction_rates, het_rates, extfrc, delt, xhnm, ncol, lchnk, ltrop ) + !----------------------------------------------------------------------- + ! ... Exp_sol advances the volumetric mixing ratio + ! forward one time step via the fully explicit + ! Euler scheme + !----------------------------------------------------------------------- + use chem_mods, only : clscnt1, extcnt, gas_pcnst, clsmap, rxntot + use ppgrid, only : pcols, pver + use mo_prod_loss, only : exp_prod_loss + use mo_indprd, only : indprd + use shr_kind_mod, only : r8 => shr_kind_r8 + use cam_history, only : outfld + use mo_tracname, only : solsym + implicit none + !----------------------------------------------------------------------- + ! ... Dummy arguments + !----------------------------------------------------------------------- + integer, intent(in) :: ncol ! columns in chunck + integer, intent(in) :: lchnk ! chunk id + real(r8), intent(in) :: delt ! time step (s) + real(r8), intent(in) :: het_rates(ncol,pver,max(1,gas_pcnst)) ! het rates (1/cm^3/s) + real(r8), intent(in) :: reaction_rates(ncol,pver,rxntot) ! rxt rates (1/cm^3/s) + real(r8), intent(in) :: extfrc(ncol,pver,extcnt) ! "external insitu forcing" (1/cm^3/s) + real(r8), intent(in) :: xhnm(ncol,pver) + integer, intent(in) :: ltrop(pcols) ! chemistry troposphere boundary (index) + real(r8), intent(inout) :: base_sol(ncol,pver,gas_pcnst) ! working mixing ratios (vmr) + !----------------------------------------------------------------------- + ! ... Local variables + !----------------------------------------------------------------------- + integer :: i, k, l, m + integer :: chnkpnts + real(r8), dimension(ncol,pver,max(1,clscnt1)) :: & + prod, & + loss + real(r8), dimension(ncol,pver,clscnt1) :: ind_prd + real(r8), dimension(ncol,pver) :: wrk + chnkpnts = ncol*pver + !----------------------------------------------------------------------- + ! ... Put "independent" production in the forcing + !----------------------------------------------------------------------- + call indprd( 1, ind_prd, clscnt1, base_sol, extfrc, & + reaction_rates, chnkpnts ) + !----------------------------------------------------------------------- + ! ... Form F(y) + !----------------------------------------------------------------------- + call exp_prod_loss( 1, chnkpnts, prod, loss, base_sol, reaction_rates, & + het_rates, chnkpnts ) + !----------------------------------------------------------------------- + ! ... Solve for the mixing ratio at t(n+1) + !----------------------------------------------------------------------- + do m = 1,clscnt1 + l = clsmap(m,1) + do i = 1,ncol + do k = ltrop(i)+1,pver + base_sol(i,k,l) = base_sol(i,k,l) + delt * (prod(i,k,m) + ind_prd(i,k,m) - loss(i,k,m)) + end do + end do + wrk(:,:) = (prod(:,:,m) + ind_prd(:,:,m))*xhnm + call outfld( trim(solsym(l))//'_CHMP', wrk(:,:), ncol, lchnk ) + wrk(:,:) = (loss(:,:,m))*xhnm + call outfld( trim(solsym(l))//'_CHML', wrk(:,:), ncol, lchnk ) + end do + end subroutine exp_sol +end module mo_exp_sol diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_imp_sol.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_imp_sol.F90 new file mode 100644 index 0000000000..98cadb9050 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_imp_sol.F90 @@ -0,0 +1,435 @@ +module mo_imp_sol + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, gas_pcnst, clsmap, veclen + use cam_logfile, only : iulog + implicit none + private + public :: imp_slv_inti, imp_sol + save + real(r8), parameter :: rel_err = 1.e-3_r8 + real(r8), parameter :: high_rel_err = 1.e-4_r8 + !----------------------------------------------------------------------- + ! Newton-Raphson iteration limits + !----------------------------------------------------------------------- + integer, parameter :: itermax = 11 + integer, parameter :: cut_limit = 5 + real(r8), parameter :: sol_min = 1.e-20_r8 + real(r8), parameter :: small = 1.e-40_r8 + real(r8) :: epsilon(clscnt4) + logical :: factor(itermax) +contains + subroutine imp_slv_inti + !----------------------------------------------------------------------- + ! ... Initialize the implict solver + !----------------------------------------------------------------------- + use mo_chem_utls, only : get_spc_ndx + implicit none + !----------------------------------------------------------------------- + ! ... Local variables + !----------------------------------------------------------------------- + integer :: m, ox_ndx, o3a_ndx + real(r8) :: eps(gas_pcnst) + factor(:) = .true. + eps(:) = rel_err + ox_ndx = get_spc_ndx( 'OX' ) + if( ox_ndx < 1 ) then + ox_ndx = get_spc_ndx( 'O3' ) + end if + if( ox_ndx > 0 ) then + eps(ox_ndx) = high_rel_err + end if + m = get_spc_ndx( 'NO' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'NO2' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'NO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'HNO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'HO2NO2' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'N2O5' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'OH' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'HO2' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + o3a_ndx = get_spc_ndx( 'O3A' ) + if( o3a_ndx > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XNO' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XNO2' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XNO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XHNO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XHO2NO2' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'XNO2NO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + m = get_spc_ndx( 'NO2XNO3' ) + if( m > 0 ) then + eps(m) = high_rel_err + end if + do m = 1,clscnt4 + epsilon(m) = eps(clsmap(m,4)) + end do + end subroutine imp_slv_inti + subroutine imp_sol( base_sol, reaction_rates, het_rates, extfrc, delt, & + ncol, nlev, lchnk, prod_out, loss_out ) + !----------------------------------------------------------------------- + ! ... imp_sol advances the volumetric mixing ratio + ! forward one time step via the fully implicit euler scheme. + ! this source is meant for vector architectures such as the + ! nec sx6 and cray x1 + !----------------------------------------------------------------------- + use chem_mods, only : rxntot, extcnt, nzcnt, permute, cls_rxt_cnt + use mo_tracname, only : solsym + use mo_lin_matrix, only : linmat + use mo_nln_matrix, only : nlnmat + use mo_lu_factor, only : lu_fac + use mo_lu_solve, only : lu_slv + use mo_prod_loss, only : imp_prod_loss + use mo_indprd, only : indprd + use time_manager, only : get_nstep + use perf_mod, only : t_startf, t_stopf + implicit none + !----------------------------------------------------------------------- + ! ... dummy args + !----------------------------------------------------------------------- + integer, intent(in) :: ncol ! columns in chunck + integer, intent(in) :: nlev + integer, intent(in) :: lchnk ! chunk id + real(r8), intent(in) :: delt ! time step (s) + real(r8), intent(in) :: reaction_rates(ncol*nlev,max(1,rxntot)) ! rxt rates (1/cm^3/s) + real(r8), intent(in) :: extfrc(ncol*nlev,max(1,extcnt)) ! external in-situ forcing (1/cm^3/s) + real(r8), intent(in) :: het_rates(ncol*nlev,max(1,gas_pcnst)) ! washout rates (1/s) + real(r8), intent(inout) :: base_sol(ncol*nlev,gas_pcnst) ! species mixing ratios (vmr) + real(r8), intent(out) :: prod_out(ncol*nlev,max(1,clscnt4)) + real(r8), intent(out) :: loss_out(ncol*nlev,max(1,clscnt4)) + !----------------------------------------------------------------------- + ! ... local variables + !----------------------------------------------------------------------- + integer :: nr_iter + integer :: ofl + integer :: ofu + integer :: avec_len + integer :: bndx ! base index + integer :: cndx ! class index + integer :: pndx ! permuted class index + integer :: i,m + integer :: fail_cnt(veclen) + integer :: cut_cnt(veclen) + integer :: stp_con_cnt(veclen) + integer :: nstep + real(r8) :: interval_done(veclen) + real(r8) :: dt(veclen) + real(r8) :: dti(veclen) + real(r8) :: max_delta(max(1,clscnt4)) + real(r8) :: ind_prd(ncol*nlev,max(1,clscnt4)) + logical :: convergence + integer :: chnkpnts ! total spatial points in chunk; ncol*ncol + logical :: diags_out(ncol*nlev,max(1,clscnt4)) + real(r8) :: sys_jac_blk(veclen,max(1,nzcnt)) + real(r8) :: lin_jac_blk(veclen,max(1,nzcnt)) + real(r8) :: solution_blk(veclen,max(1,clscnt4)) + real(r8) :: forcing_blk(veclen,max(1,clscnt4)) + real(r8) :: iter_invariant_blk(veclen,max(1,clscnt4)) + real(r8) :: prod_blk(veclen,max(1,clscnt4)) + real(r8) :: loss_blk(veclen,max(1,clscnt4)) + real(r8) :: ind_prd_blk(veclen,max(1,clscnt4)) + real(r8) :: sbase_sol_blk(veclen,gas_pcnst) + real(r8) :: wrk_blk(veclen) + logical :: spc_conv_blk(veclen,max(1,clscnt4)) + logical :: cls_conv_blk(veclen) + logical :: time_stp_done_blk(veclen) + real(r8) :: reaction_rates_blk(veclen,max(1,rxntot)) + real(r8) :: extfrc_blk(veclen,max(1,extcnt)) + real(r8) :: het_rates_blk(veclen,max(1,gas_pcnst)) + real(r8) :: base_sol_blk(veclen,gas_pcnst) + chnkpnts = ncol*nlev + prod_out = 0._r8 + loss_out = 0._r8 + diags_out = .false. + !----------------------------------------------------------------------- + ! ... class independent forcing + !----------------------------------------------------------------------- + if( cls_rxt_cnt(1,4) > 0 .or. extcnt > 0 ) then + call indprd( 4, ind_prd, clscnt4, base_sol, extfrc, & + reaction_rates, chnkpnts ) + else + do m = 1,clscnt4 + ind_prd(:,m) = 0._r8 + end do + end if + nstep = get_nstep() + ofl = 1 + chnkpnts_loop : do + ofu = min( chnkpnts,ofl + veclen - 1 ) + avec_len = (ofu - ofl) + 1 + reaction_rates_blk(1:avec_len,:) = reaction_rates(ofl:ofu,:) + extfrc_blk(1:avec_len,:) = extfrc(ofl:ofu,:) + het_rates_blk(1:avec_len,:) = het_rates(ofl:ofu,:) + ind_prd_blk(1:avec_len,:) = ind_prd(ofl:ofu,:) + base_sol_blk(1:avec_len,:) = base_sol(ofl:ofu,:) + cls_conv_blk(1:avec_len) = .false. + dt(1:avec_len) = delt + cut_cnt(1:avec_len) = 0 + fail_cnt(1:avec_len) = 0 + stp_con_cnt(1:avec_len) = 0 + interval_done(1:avec_len) = 0._r8 + time_stp_done_blk(1:avec_len) = .false. + !----------------------------------------------------------------------- + ! ... time step loop + !----------------------------------------------------------------------- + time_step_loop : do + dti(1:avec_len) = 1._r8 / dt(1:avec_len) + !----------------------------------------------------------------------- + ! ... transfer from base to class array + !----------------------------------------------------------------------- + do cndx = 1,clscnt4 + bndx = clsmap(cndx,4) + pndx = permute(cndx,4) + do i = 1, avec_len + solution_blk(i,pndx) = base_sol_blk(i,bndx) + end do + end do + do m = 1,gas_pcnst + sbase_sol_blk(1:avec_len,m) = base_sol_blk(1:avec_len,m) + end do + !----------------------------------------------------------------------- + ! ... set the iteration invariant part of the function f(y) + !----------------------------------------------------------------------- + if( cls_rxt_cnt(1,4) > 0 .or. extcnt > 0 ) then + do m = 1,clscnt4 + do i = 1, avec_len + iter_invariant_blk(i,m) = dti(i) * solution_blk(i,m) + ind_prd_blk(i,m) + end do + end do + else + do m = 1,clscnt4 + do i = 1, avec_len + iter_invariant_blk(i,m) = dti(i) * solution_blk(i,m) + end do + end do + end if + !----------------------------------------------------------------------- + ! ... the linear component + !----------------------------------------------------------------------- + if( cls_rxt_cnt(2,4) > 0 ) then + call t_startf( 'lin_mat' ) + call linmat( avec_len, lin_jac_blk, base_sol_blk, & + reaction_rates_blk, het_rates_blk ) + call t_stopf( 'lin_mat' ) + end if + !======================================================================= + ! the newton-raphson iteration for f(y) = 0 + !======================================================================= + iter_loop : do nr_iter = 1,itermax + !----------------------------------------------------------------------- + ! ... the non-linear component + !----------------------------------------------------------------------- + if( factor(nr_iter) ) then + call t_startf( 'nln_mat' ) + call nlnmat( avec_len, sys_jac_blk, base_sol_blk, & + reaction_rates_blk, lin_jac_blk, dti ) + call t_stopf( 'nln_mat' ) + !----------------------------------------------------------------------- + ! ... factor the "system" matrix + !----------------------------------------------------------------------- + call t_startf( 'lu_fac' ) + call lu_fac( avec_len, sys_jac_blk ) + call t_stopf( 'lu_fac' ) + end if + !----------------------------------------------------------------------- + ! ... form f(y) + !----------------------------------------------------------------------- + call t_startf( 'prod_loss' ) + call imp_prod_loss( avec_len, prod_blk, loss_blk, & + base_sol_blk, reaction_rates_blk, het_rates_blk ) + call t_stopf( 'prod_loss' ) + do m = 1,clscnt4 + do i = 1, avec_len + forcing_blk(i,m) = solution_blk(i,m)*dti(i) & + - (iter_invariant_blk(i,m) + prod_blk(i,m) - loss_blk(i,m)) + end do + end do + !----------------------------------------------------------------------- + ! ... solve for the mixing ratio at t(n+1) + !----------------------------------------------------------------------- + call t_startf( 'lu_slv' ) + call lu_slv( avec_len, sys_jac_blk, forcing_blk ) + call t_stopf( 'lu_slv' ) + do m = 1,clscnt4 + do i = 1, avec_len + if( .not. cls_conv_blk(i) )then + solution_blk(i,m) = solution_blk(i,m) + forcing_blk(i,m) + else + forcing_blk(i,m) = 0._r8 + endif + end do + end do + !----------------------------------------------------------------------- + ! ... convergence measures and test + !----------------------------------------------------------------------- + conv_chk : if( nr_iter > 1 ) then + !----------------------------------------------------------------------- + ! ... check for convergence + !----------------------------------------------------------------------- + do cndx = 1,clscnt4 + pndx = permute(cndx,4) + bndx = clsmap(cndx,4) + do i = 1, avec_len + if ( abs( solution_blk(i,pndx) ) > sol_min ) then + wrk_blk(i) = abs( forcing_blk(i,pndx)/solution_blk(i,pndx) ) + else + wrk_blk(i) = 0._r8 + endif + enddo + max_delta(cndx) = maxval( wrk_blk(1:avec_len) ) + do i = 1, avec_len + solution_blk(i,pndx) = max( 0._r8,solution_blk(i,pndx) ) + base_sol_blk(i,bndx) = solution_blk(i,pndx) + if ( abs( forcing_blk(i,pndx) ) > small ) then + spc_conv_blk(i,cndx) = abs(forcing_blk(i,pndx)) <= epsilon(cndx)*abs(solution_blk(i,pndx)) + else + spc_conv_blk(i,cndx) = .true. + endif + enddo + where( spc_conv_blk(1:avec_len,cndx) .and. .not.diags_out(ofl:ofu,cndx) ) + ! capture output production and loss diagnostics at converged ponits + prod_out(ofl:ofu,cndx) = prod_blk(1:avec_len,cndx) + ind_prd_blk(1:avec_len,cndx) + loss_out(ofl:ofu,cndx) = loss_blk(1:avec_len,cndx) + diags_out(ofl:ofu,cndx) = .true. + endwhere + end do + do i = 1, avec_len + if( .not. cls_conv_blk(i) ) then + cls_conv_blk(i) = all( spc_conv_blk(i,:) ) + end if + end do + convergence = all( cls_conv_blk(:) ) + if( convergence ) then + exit iter_loop + end if + else conv_chk +!----------------------------------------------------------------------- +! ... limit iterate +!----------------------------------------------------------------------- + do m = 1,clscnt4 + do i = 1, avec_len + solution_blk(i,m) = max( 0._r8,solution_blk(i,m) ) + end do + end do +!----------------------------------------------------------------------- +! ... transfer latest solution back to base array +!----------------------------------------------------------------------- + do cndx = 1,clscnt4 + pndx = permute(cndx,4) + bndx = clsmap(cndx,4) + do i = 1, avec_len + base_sol_blk(i,bndx) = solution_blk(i,pndx) + end do + end do + end if conv_chk + end do iter_loop + !----------------------------------------------------------------------- + ! ... check for newton-raphson convergence + !----------------------------------------------------------------------- + do i = 1,avec_len + if( .not. cls_conv_blk(i) ) then + fail_cnt(i) = fail_cnt(i) + 1 + write(iulog,'('' imp_sol: time step '',1p,g15.7,'' failed to converge @ (lchnk,vctrpos,nstep) = '',3i8)') & + dt(i),lchnk,ofl+i-1,nstep + stp_con_cnt(i) = 0 + if( cut_cnt(i) < cut_limit ) then + cut_cnt(i) = cut_cnt(i) + 1 + if( cut_cnt(i) < cut_limit ) then + dt(i) = .5_r8 * dt(i) + else + dt(i) = .1_r8 * dt(i) + end if + base_sol_blk(i,:) = sbase_sol_blk(i,:) + else + write(iulog,'('' imp_sol: step failed to converge @ (lchnk,vctrpos,nstep,dt,time) = '',3i8,1p,2g15.7)') & + lchnk,ofl+i-1,nstep,dt(i),interval_done+dt(i) + do m = 1,clscnt4 + if( .not. spc_conv_blk(i,m) ) then + write(iulog,'(1x,a16,1x,1pe10.3)') solsym(clsmap(m,4)), max_delta(m) + end if + end do + cls_conv_blk(i) = .true. + if( .not. time_stp_done_blk(i) ) then + interval_done(i) = interval_done(i) + dt(i) + time_stp_done_blk(i) = abs( delt - interval_done(i) ) <= .0001_r8 + endif + end if + elseif( .not. time_stp_done_blk(i) ) then + interval_done(i) = interval_done(i) + dt(i) + time_stp_done_blk(i) = abs( delt - interval_done(i) ) <= .0001_r8 + stp_con_cnt(i) = stp_con_cnt(i) + 1 + if( .not. time_stp_done_blk(i) ) then + if( stp_con_cnt(i) >= 2 ) then + dt(i) = 2._r8*dt(i) + stp_con_cnt(i) = 0 + end if + dt(i) = min( dt(i),delt-interval_done(i) ) + else + base_sol(ofl+i-1,1:gas_pcnst) = base_sol_blk(i,1:gas_pcnst) + endif + endif + end do + convergence = all( cls_conv_blk(:) ) + do i = 1,avec_len + if( cls_conv_blk(i) .and. .not. time_stp_done_blk(i) ) then + cls_conv_blk(i) = .false. + endif + end do + if( .not. convergence ) then + cycle time_step_loop + endif + !----------------------------------------------------------------------- + ! ... check for time step done + !----------------------------------------------------------------------- + if( all( time_stp_done_blk(1:avec_len) ) ) then + exit time_step_loop + end if + end do time_step_loop + ofl = ofu + 1 + if( ofl > chnkpnts ) then + exit chnkpnts_loop + end if + end do chnkpnts_loop + end subroutine imp_sol +end module mo_imp_sol diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_indprd.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_indprd.F90 similarity index 85% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_indprd.F90 rename to src/chemistry/pp_trop_strat_mam5_t4s2/mo_indprd.F90 index e3a9106c2e..f6f659134d 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_indprd.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_indprd.F90 @@ -20,151 +20,154 @@ subroutine indprd( class, prod, nprod, y, extfrc, rxt, chnkpnts ) ! ... "independent" production for Explicit species !-------------------------------------------------------------------- if( class == 1 ) then - prod(:,1) =rxt(:,335)*y(:,137)*y(:,84) +rxt(:,338)*y(:,85) - prod(:,2) =.500_r8*rxt(:,288)*y(:,137)*y(:,76) + prod(:,1) = (rxt(:,317)*y(:,89) +.600_r8*rxt(:,318)*y(:,139))*y(:,104) & + +.500_r8*rxt(:,298)*y(:,139)*y(:,75) + prod(:,2) =rxt(:,345)*y(:,139)*y(:,83) +rxt(:,348)*y(:,84) !-------------------------------------------------------------------- ! ... "independent" production for Implicit species !-------------------------------------------------------------------- else if( class == 4 ) then prod(:,1) = 0._r8 - prod(:,2) = + extfrc(:,7) - prod(:,35) = 0._r8 - prod(:,126) = 0._r8 + prod(:,2) = + extfrc(:,3) + prod(:,34) = 0._r8 + prod(:,134) = 0._r8 prod(:,56) = 0._r8 - prod(:,131) = 0._r8 - prod(:,83) = 0._r8 + prod(:,139) = 0._r8 + prod(:,78) = 0._r8 prod(:,3) = 0._r8 - prod(:,76) = 0._r8 - prod(:,57) = 0._r8 + prod(:,75) = 0._r8 + prod(:,58) = 0._r8 prod(:,64) = 0._r8 prod(:,61) = 0._r8 prod(:,112) = 0._r8 - prod(:,71) = 0._r8 + prod(:,69) = 0._r8 + prod(:,44) = 0._r8 + prod(:,37) = 0._r8 prod(:,45) = 0._r8 prod(:,38) = 0._r8 - prod(:,46) = 0._r8 prod(:,39) = 0._r8 prod(:,40) = 0._r8 prod(:,41) = 0._r8 prod(:,42) = 0._r8 prod(:,43) = 0._r8 - prod(:,44) = 0._r8 prod(:,77) = 0._r8 - prod(:,125) = 0._r8 + prod(:,126) = 0._r8 prod(:,86) = 0._r8 - prod(:,47) = 0._r8 - prod(:,113) = 0._r8 + prod(:,46) = 0._r8 + prod(:,111) = 0._r8 prod(:,68) = 0._r8 - prod(:,95) = 0._r8 - prod(:,116) = 0._r8 + prod(:,93) = 0._r8 + prod(:,117) = 0._r8 prod(:,89) = 0._r8 - prod(:,87) = 0._r8 - prod(:,80) = 0._r8 - prod(:,73) = 0._r8 - prod(:,107) = 0._r8 - prod(:,70) = 0._r8 + prod(:,85) = 0._r8 + prod(:,79) = 0._r8 + prod(:,72) = 0._r8 + prod(:,109) = 0._r8 + prod(:,71) = 0._r8 + prod(:,131) = 0._r8 + prod(:,49) = 0._r8 + prod(:,33) = 0._r8 prod(:,128) = 0._r8 - prod(:,50) = 0._r8 - prod(:,34) = 0._r8 - prod(:,137) = 0._r8 - prod(:,104) = 0._r8 + prod(:,103) = 0._r8 prod(:,4) = 0._r8 - prod(:,110) = 0._r8 - prod(:,90) = 0._r8 + prod(:,115) = + extfrc(:,2) + prod(:,104) = 0._r8 prod(:,62) = 0._r8 prod(:,5) = 0._r8 prod(:,6) = 0._r8 prod(:,7) = 0._r8 prod(:,8) = 0._r8 + prod(:,47) = 0._r8 + prod(:,113) = 0._r8 + prod(:,91) = 0._r8 + prod(:,125) = 0._r8 + prod(:,108) = 0._r8 + prod(:,35) = 0._r8 + prod(:,83) = 0._r8 prod(:,48) = 0._r8 - prod(:,105) = 0._r8 - prod(:,92) = 0._r8 - prod(:,124) = 0._r8 - prod(:,111) = 0._r8 - prod(:,36) = 0._r8 - prod(:,84) = 0._r8 - prod(:,49) = 0._r8 - prod(:,100) = 0._r8 - prod(:,51) = 0._r8 + prod(:,99) = 0._r8 prod(:,52) = 0._r8 + prod(:,53) = 0._r8 prod(:,55) = 0._r8 - prod(:,127) = 0._r8 - prod(:,9) = 0._r8 - prod(:,101) = 0._r8 - prod(:,69) = 0._r8 - prod(:,94) = 0._r8 - prod(:,99) = 0._r8 - prod(:,109) = 0._r8 + prod(:,130) = 0._r8 + prod(:,100) = 0._r8 + prod(:,76) = 0._r8 + prod(:,92) = 0._r8 + prod(:,98) = 0._r8 + prod(:,110) = 0._r8 prod(:,66) = 0._r8 - prod(:,103) = 0._r8 - prod(:,97) = 0._r8 - prod(:,79) = 0._r8 + prod(:,102) = 0._r8 + prod(:,95) = 0._r8 + prod(:,80) = 0._r8 prod(:,114) = 0._r8 prod(:,63) = 0._r8 - prod(:,85) = 0._r8 - prod(:,122) = 0._r8 - prod(:,75) = 0._r8 - prod(:,53) = 0._r8 + prod(:,84) = 0._r8 + prod(:,123) = 0._r8 + prod(:,88) = 0._r8 + prod(:,57) = 0._r8 prod(:,60) = 0._r8 + prod(:,9) = 0._r8 prod(:,10) = 0._r8 prod(:,11) = 0._r8 + prod(:,36) = 0._r8 prod(:,12) = 0._r8 - prod(:,37) = 0._r8 prod(:,13) = 0._r8 prod(:,14) = 0._r8 - prod(:,15) = 0._r8 - prod(:,138) = + extfrc(:,9) - prod(:,133) = + extfrc(:,1) - prod(:,136) = 0._r8 - prod(:,72) = 0._r8 + prod(:,127) = + extfrc(:,11) + prod(:,129) = + extfrc(:,4) + prod(:,135) = 0._r8 + prod(:,70) = 0._r8 + prod(:,15) = + extfrc(:,5) prod(:,16) = + extfrc(:,6) - prod(:,17) = + extfrc(:,5) - prod(:,18) = 0._r8 - prod(:,19) = + extfrc(:,8) + prod(:,17) = 0._r8 + prod(:,18) = + extfrc(:,7) + prod(:,19) = 0._r8 + prod(:,138) = 0._r8 + prod(:,140) = 0._r8 + prod(:,50) = 0._r8 + prod(:,51) = 0._r8 + prod(:,133) = 0._r8 prod(:,20) = 0._r8 - prod(:,129) = (rxt(:,5) +2.000_r8*rxt(:,6)) - prod(:,132) = 0._r8 - prod(:,21) = 0._r8 prod(:,65) = 0._r8 prod(:,67) = 0._r8 prod(:,106) = 0._r8 prod(:,81) = 0._r8 + prod(:,21) = 0._r8 prod(:,22) = 0._r8 - prod(:,23) = 0._r8 prod(:,82) = 0._r8 - prod(:,74) = 0._r8 - prod(:,78) = 0._r8 - prod(:,24) = 0._r8 - prod(:,117) = 0._r8 - prod(:,102) = + extfrc(:,3) - prod(:,58) = 0._r8 - prod(:,25) = + extfrc(:,4) - prod(:,26) = + extfrc(:,2) + prod(:,73) = 0._r8 + prod(:,90) = 0._r8 + prod(:,23) = 0._r8 + prod(:,122) = 0._r8 + prod(:,105) = + extfrc(:,8) + prod(:,59) = 0._r8 + prod(:,24) = + extfrc(:,9) + prod(:,25) = + extfrc(:,10) + prod(:,26) = 0._r8 prod(:,27) = 0._r8 prod(:,28) = 0._r8 prod(:,29) = 0._r8 prod(:,30) = 0._r8 prod(:,31) = 0._r8 prod(:,32) = 0._r8 - prod(:,33) = 0._r8 - prod(:,88) = 0._r8 + prod(:,87) = 0._r8 prod(:,54) = 0._r8 - prod(:,96) = 0._r8 - prod(:,98) = 0._r8 + prod(:,97) = 0._r8 + prod(:,101) = 0._r8 prod(:,121) = 0._r8 - prod(:,123) = 0._r8 - prod(:,59) = 0._r8 - prod(:,91) = 0._r8 - prod(:,130) = 0._r8 + prod(:,124) = 0._r8 + prod(:,74) = 0._r8 + prod(:,94) = 0._r8 + prod(:,132) = 0._r8 prod(:,118) = 0._r8 prod(:,119) = 0._r8 prod(:,120) = 0._r8 - prod(:,134) =rxt(:,5) - prod(:,135) = 0._r8 - prod(:,93) = 0._r8 - prod(:,108) = 0._r8 - prod(:,115) = 0._r8 - prod(:,139) = 0._r8 + prod(:,136) = 0._r8 + prod(:,137) = 0._r8 + prod(:,96) = 0._r8 + prod(:,107) = 0._r8 + prod(:,116) = 0._r8 + prod(:,141) = + extfrc(:,1) end if end subroutine indprd end module mo_indprd diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lin_matrix.F90 new file mode 100644 index 0000000000..febcfa4b26 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lin_matrix.F90 @@ -0,0 +1,398 @@ + module mo_lin_matrix + use chem_mods, only: veclen + private + public :: linmat + contains + subroutine linmat01( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,1) = -( het_rates(k,1) ) + mat(k,2) = -( het_rates(k,2) ) + mat(k,37) = -( het_rates(k,3) ) + mat(k,1099) = -( het_rates(k,4) ) + mat(k,110) = rxt(k,46) + mat(k,1325) = rxt(k,47) + mat(k,236) = rxt(k,49) + mat(k,73) = rxt(k,51) + mat(k,50) = rxt(k,52) + mat(k,228) = 2.000_r8*rxt(k,58) + mat(k,296) = rxt(k,59) + mat(k,191) = 3.000_r8*rxt(k,62) + mat(k,41) = 2.000_r8*rxt(k,68) + mat(k,404) = rxt(k,69) + mat(k,340) = rxt(k,74) + mat(k,108) = -( rxt(k,46) + het_rates(k,5) ) + mat(k,1330) = -( rxt(k,47) + het_rates(k,6) ) + mat(k,239) = rxt(k,48) + mat(k,232) = -( rxt(k,48) + rxt(k,49) + rxt(k,355) + rxt(k,358) + rxt(k,363) & + + het_rates(k,7) ) + mat(k,3) = -( het_rates(k,8) ) + mat(k,211) = -( het_rates(k,9) ) + mat(k,115) = -( het_rates(k,10) ) + mat(k,147) = -( rxt(k,19) + het_rates(k,11) ) + mat(k,130) = -( het_rates(k,12) ) + mat(k,541) = -( het_rates(k,13) ) + mat(k,732) = .700_r8*rxt(k,39) + mat(k,176) = -( rxt(k,20) + het_rates(k,14) ) + mat(k,67) = -( het_rates(k,15) ) + mat(k,46) = -( rxt(k,50) + het_rates(k,16) ) + mat(k,71) = -( rxt(k,51) + het_rates(k,17) ) + mat(k,49) = -( rxt(k,52) + het_rates(k,18) ) + mat(k,52) = -( rxt(k,53) + het_rates(k,19) ) + mat(k,55) = -( rxt(k,54) + het_rates(k,20) ) + mat(k,58) = -( rxt(k,55) + het_rates(k,21) ) + mat(k,61) = -( rxt(k,56) + het_rates(k,22) ) + mat(k,64) = -( rxt(k,57) + het_rates(k,23) ) + mat(k,225) = -( rxt(k,58) + het_rates(k,24) ) + mat(k,809) = -( rxt(k,21) + rxt(k,22) + het_rates(k,25) ) + mat(k,197) = rxt(k,27) + mat(k,509) = .180_r8*rxt(k,28) + mat(k,564) = rxt(k,32) + mat(k,521) = rxt(k,34) + mat(k,249) = rxt(k,35) + mat(k,575) = 1.340_r8*rxt(k,36) + mat(k,185) = rxt(k,40) + mat(k,476) = rxt(k,41) + mat(k,264) = rxt(k,43) + mat(k,203) = rxt(k,44) + mat(k,208) = 2.000_r8*rxt(k,255) + mat(k,291) = -( rxt(k,59) + het_rates(k,26) ) + mat(k,75) = -( rxt(k,60) + het_rates(k,27) ) + mat(k,525) = -( rxt(k,23) + het_rates(k,28) ) + mat(k,149) = rxt(k,19) + mat(k,263) = rxt(k,43) + mat(k,168) = -( rxt(k,61) + het_rates(k,29) ) + mat(k,345) = -( rxt(k,24) + het_rates(k,30) ) + mat(k,177) = .820_r8*rxt(k,20) + mat(k,607) = -( rxt(k,25) + het_rates(k,31) ) + mat(k,319) = -( het_rates(k,32) ) + mat(k,284) = -( rxt(k,26) + het_rates(k,33) ) + mat(k,240) = -( het_rates(k,34) ) + mat(k,194) = -( rxt(k,27) + het_rates(k,35) ) + mat(k,505) = -( rxt(k,28) + rxt(k,29) + het_rates(k,36) ) + mat(k,188) = -( rxt(k,62) + het_rates(k,37) ) + mat(k,976) = -( het_rates(k,38) ) + mat(k,109) = rxt(k,46) + mat(k,47) = 4.000_r8*rxt(k,50) + mat(k,72) = rxt(k,51) + mat(k,53) = 3.000_r8*rxt(k,53) + mat(k,56) = 3.000_r8*rxt(k,54) + mat(k,59) = 2.000_r8*rxt(k,55) + mat(k,62) = rxt(k,56) + mat(k,65) = 2.000_r8*rxt(k,57) + mat(k,76) = 3.000_r8*rxt(k,60) + mat(k,172) = rxt(k,61) + mat(k,86) = 2.000_r8*rxt(k,63) + mat(k,36) = 2.000_r8*rxt(k,64) + mat(k,881) = rxt(k,65) + mat(k,453) = rxt(k,67) + mat(k,93) = 2.000_r8*rxt(k,70) + mat(k,97) = rxt(k,71) + mat(k,104) = rxt(k,72) + mat(k,939) = rxt(k,73) + mat(k,398) = rxt(k,75) + mat(k,85) = -( rxt(k,63) + het_rates(k,39) ) + mat(k,34) = -( rxt(k,64) + rxt(k,182) + het_rates(k,40) ) + mat(k,878) = -( rxt(k,65) + het_rates(k,41) ) + mat(k,450) = rxt(k,66) + mat(k,155) = rxt(k,76) + mat(k,35) = 2.000_r8*rxt(k,182) + mat(k,449) = -( rxt(k,66) + rxt(k,67) + rxt(k,357) + rxt(k,362) + rxt(k,368) & + + het_rates(k,42) ) + mat(k,4) = -( het_rates(k,43) ) + mat(k,581) = -( het_rates(k,44) ) + mat(k,807) = rxt(k,21) + rxt(k,22) + mat(k,526) = rxt(k,23) + mat(k,606) = rxt(k,25) + mat(k,506) = .380_r8*rxt(k,28) + mat(k,461) = rxt(k,30) + mat(k,563) = rxt(k,32) + mat(k,333) = 2.000_r8*rxt(k,33) + mat(k,570) = 1.340_r8*rxt(k,37) + mat(k,733) = .700_r8*rxt(k,39) + mat(k,474) = rxt(k,41) + mat(k,163) = rxt(k,79) + mat(k,460) = -( rxt(k,30) + het_rates(k,45) ) + mat(k,285) = rxt(k,26) + mat(k,503) = .440_r8*rxt(k,28) + mat(k,253) = .400_r8*rxt(k,42) + mat(k,136) = -( het_rates(k,46) ) + mat(k,5) = -( het_rates(k,47) ) + mat(k,6) = -( het_rates(k,48) ) + mat(k,7) = -( het_rates(k,49) ) + mat(k,8) = -( rxt(k,370) + het_rates(k,50) ) + mat(k,79) = -( rxt(k,31) + het_rates(k,51) ) + mat(k,562) = -( rxt(k,32) + het_rates(k,52) ) + mat(k,331) = -( rxt(k,33) + het_rates(k,53) ) + mat(k,794) = -( het_rates(k,54) ) + mat(k,1364) = rxt(k,2) + 2.000_r8*rxt(k,3) + mat(k,808) = 2.000_r8*rxt(k,21) + mat(k,196) = rxt(k,27) + mat(k,508) = .330_r8*rxt(k,28) + rxt(k,29) + mat(k,403) = rxt(k,69) + mat(k,935) = rxt(k,73) + mat(k,495) = -( het_rates(k,55) ) + mat(k,1362) = rxt(k,1) + mat(k,806) = rxt(k,22) + mat(k,504) = 1.440_r8*rxt(k,28) + mat(k,40) = -( rxt(k,68) + het_rates(k,56) ) + mat(k,268) = -( rxt(k,4) + het_rates(k,57) ) + mat(k,82) = -( rxt(k,78) + het_rates(k,58) ) + mat(k,402) = -( rxt(k,69) + het_rates(k,59) ) + mat(k,92) = -( rxt(k,70) + het_rates(k,60) ) + mat(k,96) = -( rxt(k,71) + het_rates(k,61) ) + mat(k,103) = -( rxt(k,72) + het_rates(k,62) ) + mat(k,938) = -( rxt(k,73) + het_rates(k,63) ) + mat(k,410) = -( rxt(k,9) + het_rates(k,64) ) + mat(k,125) = 2.000_r8*rxt(k,347) + 2.000_r8*rxt(k,353) + 2.000_r8*rxt(k,356) & + + 2.000_r8*rxt(k,367) + mat(k,900) = .500_r8*rxt(k,349) + mat(k,1115) = rxt(k,350) + mat(k,472) = rxt(k,351) + mat(k,234) = rxt(k,355) + rxt(k,358) + rxt(k,363) + mat(k,448) = rxt(k,357) + rxt(k,362) + rxt(k,368) + mat(k,218) = -( rxt(k,10) + rxt(k,11) + rxt(k,145) + het_rates(k,65) ) + mat(k,337) = -( rxt(k,74) + het_rates(k,66) ) + mat(k,233) = rxt(k,355) + rxt(k,358) + rxt(k,363) + mat(k,395) = -( rxt(k,75) + het_rates(k,67) ) + mat(k,447) = rxt(k,357) + rxt(k,362) + rxt(k,368) + mat(k,518) = -( rxt(k,34) + het_rates(k,68) ) + mat(k,157) = -( het_rates(k,69) ) + mat(k,430) = -( het_rates(k,70) ) + mat(k,361) = -( het_rates(k,71) ) + mat(k,244) = -( rxt(k,35) + het_rates(k,72) ) + mat(k,569) = -( rxt(k,36) + rxt(k,37) + het_rates(k,73) ) + mat(k,245) = .300_r8*rxt(k,35) + mat(k,142) = -( het_rates(k,74) ) + mat(k,275) = -( rxt(k,38) + rxt(k,302) + het_rates(k,75) ) + mat(k,738) = -( rxt(k,39) + het_rates(k,76) ) + mat(k,248) = .700_r8*rxt(k,35) + mat(k,311) = -( het_rates(k,77) ) + mat(k,825) = rxt(k,15) + mat(k,111) = -( rxt(k,12) + het_rates(k,78) ) + mat(k,124) = -( rxt(k,13) + rxt(k,14) + rxt(k,146) + rxt(k,347) + rxt(k,353) & + + rxt(k,356) + rxt(k,367) + het_rates(k,79) ) + mat(k,9) = -( het_rates(k,80) ) + mat(k,10) = -( het_rates(k,81) ) + mat(k,11) = -( het_rates(k,82) ) + mat(k,43) = -( het_rates(k,83) ) + mat(k,12) = -( rxt(k,348) + het_rates(k,84) ) + mat(k,13) = -( rxt(k,372) + het_rates(k,85) ) + mat(k,14) = -( rxt(k,371) + het_rates(k,86) ) + mat(k,851) = -( rxt(k,15) + het_rates(k,87) ) + mat(k,126) = rxt(k,14) + mat(k,914) = rxt(k,16) + .500_r8*rxt(k,349) + mat(k,1138) = rxt(k,17) + mat(k,916) = -( rxt(k,16) + rxt(k,349) + het_rates(k,88) ) + mat(k,411) = rxt(k,9) + mat(k,219) = rxt(k,11) + rxt(k,145) + mat(k,127) = rxt(k,13) + rxt(k,146) + mat(k,1140) = rxt(k,18) + mat(k,280) = rxt(k,38) + rxt(k,302) + mat(k,186) = rxt(k,40) + mat(k,477) = rxt(k,41) + mat(k,257) = .600_r8*rxt(k,42) + rxt(k,262) + mat(k,235) = rxt(k,48) + mat(k,451) = rxt(k,66) + mat(k,1146) = -( rxt(k,17) + rxt(k,18) + rxt(k,350) + het_rates(k,89) ) + mat(k,221) = rxt(k,10) + mat(k,128) = rxt(k,13) + rxt(k,14) + rxt(k,146) + mat(k,258) = .400_r8*rxt(k,42) + mat(k,237) = rxt(k,49) + mat(k,454) = rxt(k,67) + mat(k,182) = -( rxt(k,40) + het_rates(k,90) ) + mat(k,15) = -( het_rates(k,91) ) + mat(k,16) = -( het_rates(k,92) ) + mat(k,17) = -( het_rates(k,93) ) + mat(k,18) = -( het_rates(k,94) ) + mat(k,19) = -( het_rates(k,95) ) + mat(k,1306) = -( het_rates(k,96) ) + mat(k,1376) = rxt(k,3) + mat(k,1355) = rxt(k,5) + 2.000_r8*rxt(k,6) + mat(k,1086) = rxt(k,8) + mat(k,129) = rxt(k,14) + mat(k,862) = rxt(k,15) + mat(k,925) = rxt(k,16) + mat(k,1149) = rxt(k,18) + mat(k,515) = .180_r8*rxt(k,28) + mat(k,462) = rxt(k,30) + mat(k,1329) = rxt(k,47) + mat(k,888) = rxt(k,65) + mat(k,156) = rxt(k,76) + mat(k,726) = rxt(k,80) + mat(k,469) = rxt(k,81) + mat(k,122) = rxt(k,82) + mat(k,1188) = rxt(k,89) + end do + end subroutine linmat01 + subroutine linmat02( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k + do k = 1,avec_len + mat(k,1357) = -( rxt(k,5) + rxt(k,6) + het_rates(k,97) ) + mat(k,1088) = rxt(k,8) + mat(k,1151) = rxt(k,17) + mat(k,88) = rxt(k,85) + rxt(k,94) + mat(k,91) = rxt(k,86) + mat(k,87) = -( rxt(k,85) + rxt(k,94) + het_rates(k,98) ) + mat(k,1044) = rxt(k,7) + mat(k,89) = rxt(k,98) + mat(k,90) = -( rxt(k,86) + rxt(k,98) + het_rates(k,99) ) + mat(k,1081) = -( rxt(k,7) + rxt(k,8) + het_rates(k,100) ) + mat(k,20) = -( het_rates(k,101) ) + mat(k,152) = -( rxt(k,76) + het_rates(k,102) ) + mat(k,160) = -( rxt(k,79) + het_rates(k,103) ) + mat(k,473) = -( rxt(k,41) + rxt(k,351) + het_rates(k,104) ) + mat(k,252) = -( rxt(k,42) + rxt(k,262) + het_rates(k,105) ) + mat(k,21) = -( het_rates(k,106) ) + mat(k,22) = -( het_rates(k,107) ) + mat(k,260) = -( rxt(k,43) + het_rates(k,108) ) + mat(k,200) = -( rxt(k,44) + het_rates(k,109) ) + mat(k,324) = -( het_rates(k,110) ) + mat(k,161) = rxt(k,79) + mat(k,714) = rxt(k,80) + mat(k,23) = -( rxt(k,77) + het_rates(k,111) ) + mat(k,716) = -( rxt(k,80) + het_rates(k,112) ) + mat(k,466) = rxt(k,81) + mat(k,465) = -( rxt(k,81) + het_rates(k,113) ) + mat(k,121) = rxt(k,82) + mat(k,120) = -( rxt(k,82) + het_rates(k,114) ) + mat(k,83) = rxt(k,78) + mat(k,24) = -( het_rates(k,115) ) + mat(k,25) = -( het_rates(k,116) ) + mat(k,26) = -( het_rates(k,117) ) + mat(k,27) = -( het_rates(k,118) ) + mat(k,28) = -( rxt(k,83) + het_rates(k,119) ) + mat(k,29) = -( rxt(k,84) + het_rates(k,120) ) + mat(k,30) = -( rxt(k,352) + het_rates(k,121) ) + mat(k,32) = -( het_rates(k,122) ) + mat(k,31) = rxt(k,352) + mat(k,33) = -( rxt(k,373) + het_rates(k,123) ) + mat(k,300) = -( het_rates(k,124) ) + mat(k,100) = -( rxt(k,45) + het_rates(k,125) ) + mat(k,385) = -( het_rates(k,128) ) + mat(k,417) = -( het_rates(k,129) ) + mat(k,700) = -( het_rates(k,130) ) + mat(k,347) = rxt(k,24) + mat(k,608) = rxt(k,25) + mat(k,520) = rxt(k,34) + mat(k,574) = 1.340_r8*rxt(k,36) + mat(k,737) = .300_r8*rxt(k,39) + mat(k,184) = rxt(k,40) + mat(k,254) = .600_r8*rxt(k,42) + rxt(k,262) + mat(k,202) = rxt(k,44) + mat(k,777) = -( het_rates(k,131) ) + mat(k,528) = rxt(k,23) + mat(k,348) = rxt(k,24) + mat(k,287) = rxt(k,26) + mat(k,507) = rxt(k,29) + mat(k,739) = .300_r8*rxt(k,39) + mat(k,255) = .400_r8*rxt(k,42) + mat(k,292) = rxt(k,59) + mat(k,170) = rxt(k,61) + mat(k,206) = -( rxt(k,255) + het_rates(k,132) ) + mat(k,80) = rxt(k,31) + mat(k,353) = -( het_rates(k,133) ) + mat(k,1034) = -( rxt(k,346) + het_rates(k,134) ) + mat(k,220) = rxt(k,11) + rxt(k,145) + mat(k,150) = rxt(k,19) + mat(k,179) = rxt(k,20) + mat(k,530) = rxt(k,23) + mat(k,610) = rxt(k,25) + mat(k,565) = 2.000_r8*rxt(k,32) + mat(k,334) = 2.000_r8*rxt(k,33) + mat(k,522) = rxt(k,34) + mat(k,250) = rxt(k,35) + mat(k,576) = 1.340_r8*rxt(k,36) + .660_r8*rxt(k,37) + mat(k,478) = rxt(k,41) + mat(k,265) = rxt(k,43) + mat(k,209) = rxt(k,255) + mat(k,628) = -( het_rates(k,135) ) + mat(k,652) = -( het_rates(k,136) ) + mat(k,672) = -( het_rates(k,137) ) + mat(k,573) = .660_r8*rxt(k,36) + mat(k,278) = rxt(k,38) + rxt(k,302) + mat(k,1186) = -( rxt(k,89) + het_rates(k,138) ) + mat(k,1374) = rxt(k,1) + mat(k,1353) = rxt(k,5) + mat(k,1084) = rxt(k,7) + mat(k,113) = rxt(k,12) + mat(k,1273) = -( het_rates(k,139) ) + mat(k,1375) = rxt(k,2) + mat(k,272) = 2.000_r8*rxt(k,4) + mat(k,413) = rxt(k,9) + mat(k,222) = rxt(k,10) + mat(k,151) = rxt(k,19) + mat(k,180) = rxt(k,20) + mat(k,289) = rxt(k,26) + mat(k,198) = rxt(k,27) + mat(k,514) = .330_r8*rxt(k,28) + mat(k,81) = rxt(k,31) + mat(k,251) = rxt(k,35) + mat(k,266) = rxt(k,43) + mat(k,204) = rxt(k,44) + mat(k,102) = rxt(k,45) + mat(k,341) = rxt(k,74) + mat(k,399) = rxt(k,75) + mat(k,924) = .500_r8*rxt(k,349) + mat(k,372) = -( het_rates(k,140) ) + mat(k,484) = -( het_rates(k,141) ) + mat(k,593) = -( het_rates(k,142) ) + mat(k,1379) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,143) ) + mat(k,517) = .050_r8*rxt(k,28) + mat(k,84) = rxt(k,78) + mat(k,1043) = rxt(k,346) + end do + end subroutine linmat02 + subroutine linmat( avec_len, mat, y, rxt, het_rates ) +!---------------------------------------------- +! ... linear matrix entries for implicit species +!---------------------------------------------- + use chem_mods, only : gas_pcnst, rxntot, nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call linmat01( avec_len, mat, y, rxt, het_rates ) + call linmat02( avec_len, mat, y, rxt, het_rates ) + end subroutine linmat + end module mo_lin_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_factor.F90 new file mode 100644 index 0000000000..c6bf7b6e7d --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_factor.F90 @@ -0,0 +1,5385 @@ + module mo_lu_factor + use chem_mods, only: veclen + private + public :: lu_fac + contains + subroutine lu_fac01( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1) = 1._r8 / lu(k,1) + lu(k,2) = 1._r8 / lu(k,2) + lu(k,3) = 1._r8 / lu(k,3) + lu(k,4) = 1._r8 / lu(k,4) + lu(k,5) = 1._r8 / lu(k,5) + lu(k,6) = 1._r8 / lu(k,6) + lu(k,7) = 1._r8 / lu(k,7) + lu(k,8) = 1._r8 / lu(k,8) + lu(k,9) = 1._r8 / lu(k,9) + lu(k,10) = 1._r8 / lu(k,10) + lu(k,11) = 1._r8 / lu(k,11) + lu(k,12) = 1._r8 / lu(k,12) + lu(k,13) = 1._r8 / lu(k,13) + lu(k,14) = 1._r8 / lu(k,14) + lu(k,15) = 1._r8 / lu(k,15) + lu(k,16) = 1._r8 / lu(k,16) + lu(k,17) = 1._r8 / lu(k,17) + lu(k,18) = 1._r8 / lu(k,18) + lu(k,19) = 1._r8 / lu(k,19) + lu(k,20) = 1._r8 / lu(k,20) + lu(k,21) = 1._r8 / lu(k,21) + lu(k,22) = 1._r8 / lu(k,22) + lu(k,23) = 1._r8 / lu(k,23) + lu(k,24) = 1._r8 / lu(k,24) + lu(k,25) = 1._r8 / lu(k,25) + lu(k,26) = 1._r8 / lu(k,26) + lu(k,27) = 1._r8 / lu(k,27) + lu(k,28) = 1._r8 / lu(k,28) + lu(k,29) = 1._r8 / lu(k,29) + lu(k,30) = 1._r8 / lu(k,30) + lu(k,31) = lu(k,31) * lu(k,30) + lu(k,32) = 1._r8 / lu(k,32) + lu(k,33) = 1._r8 / lu(k,33) + lu(k,34) = 1._r8 / lu(k,34) + lu(k,35) = lu(k,35) * lu(k,34) + lu(k,36) = lu(k,36) * lu(k,34) + lu(k,878) = lu(k,878) - lu(k,35) * lu(k,866) + lu(k,881) = lu(k,881) - lu(k,36) * lu(k,866) + lu(k,37) = 1._r8 / lu(k,37) + lu(k,38) = lu(k,38) * lu(k,37) + lu(k,39) = lu(k,39) * lu(k,37) + lu(k,1237) = lu(k,1237) - lu(k,38) * lu(k,1192) + lu(k,1273) = lu(k,1273) - lu(k,39) * lu(k,1192) + lu(k,40) = 1._r8 / lu(k,40) + lu(k,41) = lu(k,41) * lu(k,40) + lu(k,42) = lu(k,42) * lu(k,40) + lu(k,1184) = lu(k,1184) - lu(k,41) * lu(k,1153) + lu(k,1186) = lu(k,1186) - lu(k,42) * lu(k,1153) + lu(k,43) = 1._r8 / lu(k,43) + lu(k,44) = lu(k,44) * lu(k,43) + lu(k,45) = lu(k,45) * lu(k,43) + lu(k,1273) = lu(k,1273) - lu(k,44) * lu(k,1193) + lu(k,1277) = lu(k,1277) - lu(k,45) * lu(k,1193) + lu(k,46) = 1._r8 / lu(k,46) + lu(k,47) = lu(k,47) * lu(k,46) + lu(k,48) = lu(k,48) * lu(k,46) + lu(k,1181) = lu(k,1181) - lu(k,47) * lu(k,1154) + lu(k,1186) = lu(k,1186) - lu(k,48) * lu(k,1154) + lu(k,49) = 1._r8 / lu(k,49) + lu(k,50) = lu(k,50) * lu(k,49) + lu(k,51) = lu(k,51) * lu(k,49) + lu(k,1184) = lu(k,1184) - lu(k,50) * lu(k,1155) + lu(k,1186) = lu(k,1186) - lu(k,51) * lu(k,1155) + end do + end subroutine lu_fac01 + subroutine lu_fac02( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,52) = 1._r8 / lu(k,52) + lu(k,53) = lu(k,53) * lu(k,52) + lu(k,54) = lu(k,54) * lu(k,52) + lu(k,1181) = lu(k,1181) - lu(k,53) * lu(k,1156) + lu(k,1186) = lu(k,1186) - lu(k,54) * lu(k,1156) + lu(k,55) = 1._r8 / lu(k,55) + lu(k,56) = lu(k,56) * lu(k,55) + lu(k,57) = lu(k,57) * lu(k,55) + lu(k,1181) = lu(k,1181) - lu(k,56) * lu(k,1157) + lu(k,1186) = lu(k,1186) - lu(k,57) * lu(k,1157) + lu(k,58) = 1._r8 / lu(k,58) + lu(k,59) = lu(k,59) * lu(k,58) + lu(k,60) = lu(k,60) * lu(k,58) + lu(k,1181) = lu(k,1181) - lu(k,59) * lu(k,1158) + lu(k,1186) = lu(k,1186) - lu(k,60) * lu(k,1158) + lu(k,61) = 1._r8 / lu(k,61) + lu(k,62) = lu(k,62) * lu(k,61) + lu(k,63) = lu(k,63) * lu(k,61) + lu(k,1181) = lu(k,1181) - lu(k,62) * lu(k,1159) + lu(k,1186) = lu(k,1186) - lu(k,63) * lu(k,1159) + lu(k,64) = 1._r8 / lu(k,64) + lu(k,65) = lu(k,65) * lu(k,64) + lu(k,66) = lu(k,66) * lu(k,64) + lu(k,1181) = lu(k,1181) - lu(k,65) * lu(k,1160) + lu(k,1186) = lu(k,1186) - lu(k,66) * lu(k,1160) + lu(k,67) = 1._r8 / lu(k,67) + lu(k,68) = lu(k,68) * lu(k,67) + lu(k,69) = lu(k,69) * lu(k,67) + lu(k,70) = lu(k,70) * lu(k,67) + lu(k,1237) = lu(k,1237) - lu(k,68) * lu(k,1194) + lu(k,1273) = lu(k,1273) - lu(k,69) * lu(k,1194) + lu(k,1277) = lu(k,1277) - lu(k,70) * lu(k,1194) + lu(k,71) = 1._r8 / lu(k,71) + lu(k,72) = lu(k,72) * lu(k,71) + lu(k,73) = lu(k,73) * lu(k,71) + lu(k,74) = lu(k,74) * lu(k,71) + lu(k,1181) = lu(k,1181) - lu(k,72) * lu(k,1161) + lu(k,1184) = lu(k,1184) - lu(k,73) * lu(k,1161) + lu(k,1186) = lu(k,1186) - lu(k,74) * lu(k,1161) + lu(k,75) = 1._r8 / lu(k,75) + lu(k,76) = lu(k,76) * lu(k,75) + lu(k,77) = lu(k,77) * lu(k,75) + lu(k,78) = lu(k,78) * lu(k,75) + lu(k,1267) = lu(k,1267) - lu(k,76) * lu(k,1195) + lu(k,1273) = lu(k,1273) - lu(k,77) * lu(k,1195) + lu(k,1277) = lu(k,1277) - lu(k,78) * lu(k,1195) + lu(k,79) = 1._r8 / lu(k,79) + lu(k,80) = lu(k,80) * lu(k,79) + lu(k,81) = lu(k,81) * lu(k,79) + lu(k,352) = lu(k,352) - lu(k,80) * lu(k,351) + lu(k,359) = - lu(k,81) * lu(k,351) + lu(k,994) = - lu(k,80) * lu(k,987) + lu(k,1039) = lu(k,1039) - lu(k,81) * lu(k,987) + lu(k,82) = 1._r8 / lu(k,82) + lu(k,83) = lu(k,83) * lu(k,82) + lu(k,84) = lu(k,84) * lu(k,82) + lu(k,120) = lu(k,120) - lu(k,83) * lu(k,119) + lu(k,123) = lu(k,123) - lu(k,84) * lu(k,119) + lu(k,1360) = lu(k,1360) - lu(k,83) * lu(k,1359) + lu(k,1379) = lu(k,1379) - lu(k,84) * lu(k,1359) + lu(k,85) = 1._r8 / lu(k,85) + lu(k,86) = lu(k,86) * lu(k,85) + lu(k,398) = lu(k,398) - lu(k,86) * lu(k,394) + lu(k,453) = lu(k,453) - lu(k,86) * lu(k,446) + lu(k,881) = lu(k,881) - lu(k,86) * lu(k,867) + lu(k,939) = lu(k,939) - lu(k,86) * lu(k,929) + lu(k,976) = lu(k,976) - lu(k,86) * lu(k,950) + lu(k,87) = 1._r8 / lu(k,87) + lu(k,88) = lu(k,88) * lu(k,87) + lu(k,91) = lu(k,91) - lu(k,88) * lu(k,89) + lu(k,463) = - lu(k,88) * lu(k,458) + lu(k,1088) = lu(k,1088) - lu(k,88) * lu(k,1044) + lu(k,1308) = lu(k,1308) - lu(k,88) * lu(k,1278) + lu(k,1357) = lu(k,1357) - lu(k,88) * lu(k,1333) + lu(k,90) = 1._r8 / lu(k,90) + lu(k,91) = lu(k,91) * lu(k,90) + lu(k,463) = lu(k,463) - lu(k,91) * lu(k,459) + lu(k,1088) = lu(k,1088) - lu(k,91) * lu(k,1045) + lu(k,1190) = lu(k,1190) - lu(k,91) * lu(k,1162) + lu(k,1308) = lu(k,1308) - lu(k,91) * lu(k,1279) + lu(k,1357) = lu(k,1357) - lu(k,91) * lu(k,1334) + lu(k,92) = 1._r8 / lu(k,92) + lu(k,93) = lu(k,93) * lu(k,92) + lu(k,94) = lu(k,94) * lu(k,92) + lu(k,95) = lu(k,95) * lu(k,92) + lu(k,1181) = lu(k,1181) - lu(k,93) * lu(k,1163) + lu(k,1186) = lu(k,1186) - lu(k,94) * lu(k,1163) + lu(k,1187) = lu(k,1187) - lu(k,95) * lu(k,1163) + lu(k,1267) = lu(k,1267) - lu(k,93) * lu(k,1196) + lu(k,1272) = - lu(k,94) * lu(k,1196) + lu(k,1273) = lu(k,1273) - lu(k,95) * lu(k,1196) + lu(k,96) = 1._r8 / lu(k,96) + lu(k,97) = lu(k,97) * lu(k,96) + lu(k,98) = lu(k,98) * lu(k,96) + lu(k,99) = lu(k,99) * lu(k,96) + lu(k,1181) = lu(k,1181) - lu(k,97) * lu(k,1164) + lu(k,1186) = lu(k,1186) - lu(k,98) * lu(k,1164) + lu(k,1187) = lu(k,1187) - lu(k,99) * lu(k,1164) + lu(k,1267) = lu(k,1267) - lu(k,97) * lu(k,1197) + lu(k,1272) = lu(k,1272) - lu(k,98) * lu(k,1197) + lu(k,1273) = lu(k,1273) - lu(k,99) * lu(k,1197) + end do + end subroutine lu_fac02 + subroutine lu_fac03( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,100) = 1._r8 / lu(k,100) + lu(k,101) = lu(k,101) * lu(k,100) + lu(k,102) = lu(k,102) * lu(k,100) + lu(k,593) = lu(k,593) - lu(k,101) * lu(k,586) + lu(k,602) = - lu(k,102) * lu(k,586) + lu(k,1019) = lu(k,1019) - lu(k,101) * lu(k,988) + lu(k,1039) = lu(k,1039) - lu(k,102) * lu(k,988) + lu(k,1252) = lu(k,1252) - lu(k,101) * lu(k,1198) + lu(k,1273) = lu(k,1273) - lu(k,102) * lu(k,1198) + lu(k,103) = 1._r8 / lu(k,103) + lu(k,104) = lu(k,104) * lu(k,103) + lu(k,105) = lu(k,105) * lu(k,103) + lu(k,106) = lu(k,106) * lu(k,103) + lu(k,107) = lu(k,107) * lu(k,103) + lu(k,1181) = lu(k,1181) - lu(k,104) * lu(k,1165) + lu(k,1186) = lu(k,1186) - lu(k,105) * lu(k,1165) + lu(k,1187) = lu(k,1187) - lu(k,106) * lu(k,1165) + lu(k,1191) = lu(k,1191) - lu(k,107) * lu(k,1165) + lu(k,1267) = lu(k,1267) - lu(k,104) * lu(k,1199) + lu(k,1272) = lu(k,1272) - lu(k,105) * lu(k,1199) + lu(k,1273) = lu(k,1273) - lu(k,106) * lu(k,1199) + lu(k,1277) = lu(k,1277) - lu(k,107) * lu(k,1199) + lu(k,108) = 1._r8 / lu(k,108) + lu(k,109) = lu(k,109) * lu(k,108) + lu(k,110) = lu(k,110) * lu(k,108) + lu(k,339) = - lu(k,109) * lu(k,336) + lu(k,340) = lu(k,340) - lu(k,110) * lu(k,336) + lu(k,881) = lu(k,881) - lu(k,109) * lu(k,868) + lu(k,884) = lu(k,884) - lu(k,110) * lu(k,868) + lu(k,939) = lu(k,939) - lu(k,109) * lu(k,930) + lu(k,942) = - lu(k,110) * lu(k,930) + lu(k,1322) = lu(k,1322) - lu(k,109) * lu(k,1310) + lu(k,1325) = lu(k,1325) - lu(k,110) * lu(k,1310) + lu(k,111) = 1._r8 / lu(k,111) + lu(k,112) = lu(k,112) * lu(k,111) + lu(k,113) = lu(k,113) * lu(k,111) + lu(k,114) = lu(k,114) * lu(k,111) + lu(k,313) = lu(k,313) - lu(k,112) * lu(k,310) + lu(k,315) = - lu(k,113) * lu(k,310) + lu(k,318) = lu(k,318) - lu(k,114) * lu(k,310) + lu(k,914) = lu(k,914) - lu(k,112) * lu(k,892) + lu(k,923) = - lu(k,113) * lu(k,892) + lu(k,927) = lu(k,927) - lu(k,114) * lu(k,892) + lu(k,1177) = lu(k,1177) - lu(k,112) * lu(k,1166) + lu(k,1186) = lu(k,1186) - lu(k,113) * lu(k,1166) + lu(k,1190) = lu(k,1190) - lu(k,114) * lu(k,1166) + lu(k,115) = 1._r8 / lu(k,115) + lu(k,116) = lu(k,116) * lu(k,115) + lu(k,117) = lu(k,117) * lu(k,115) + lu(k,118) = lu(k,118) * lu(k,115) + lu(k,386) = lu(k,386) - lu(k,116) * lu(k,382) + lu(k,391) = lu(k,391) - lu(k,117) * lu(k,382) + lu(k,392) = - lu(k,118) * lu(k,382) + lu(k,766) = lu(k,766) - lu(k,116) * lu(k,754) + lu(k,785) = lu(k,785) - lu(k,117) * lu(k,754) + lu(k,789) = - lu(k,118) * lu(k,754) + lu(k,1247) = lu(k,1247) - lu(k,116) * lu(k,1200) + lu(k,1268) = lu(k,1268) - lu(k,117) * lu(k,1200) + lu(k,1273) = lu(k,1273) - lu(k,118) * lu(k,1200) + lu(k,120) = 1._r8 / lu(k,120) + lu(k,121) = lu(k,121) * lu(k,120) + lu(k,122) = lu(k,122) * lu(k,120) + lu(k,123) = lu(k,123) * lu(k,120) + lu(k,465) = lu(k,465) - lu(k,121) * lu(k,464) + lu(k,469) = lu(k,469) - lu(k,122) * lu(k,464) + lu(k,470) = - lu(k,123) * lu(k,464) + lu(k,1241) = lu(k,1241) - lu(k,121) * lu(k,1201) + lu(k,1274) = lu(k,1274) - lu(k,122) * lu(k,1201) + lu(k,1277) = lu(k,1277) - lu(k,123) * lu(k,1201) + lu(k,1361) = - lu(k,121) * lu(k,1360) + lu(k,1376) = lu(k,1376) - lu(k,122) * lu(k,1360) + lu(k,1379) = lu(k,1379) - lu(k,123) * lu(k,1360) + lu(k,124) = 1._r8 / lu(k,124) + lu(k,125) = lu(k,125) * lu(k,124) + lu(k,126) = lu(k,126) * lu(k,124) + lu(k,127) = lu(k,127) * lu(k,124) + lu(k,128) = lu(k,128) * lu(k,124) + lu(k,129) = lu(k,129) * lu(k,124) + lu(k,900) = lu(k,900) - lu(k,125) * lu(k,893) + lu(k,914) = lu(k,914) - lu(k,126) * lu(k,893) + lu(k,916) = lu(k,916) - lu(k,127) * lu(k,893) + lu(k,922) = lu(k,922) - lu(k,128) * lu(k,893) + lu(k,925) = lu(k,925) - lu(k,129) * lu(k,893) + lu(k,1115) = lu(k,1115) - lu(k,125) * lu(k,1107) + lu(k,1138) = lu(k,1138) - lu(k,126) * lu(k,1107) + lu(k,1140) = lu(k,1140) - lu(k,127) * lu(k,1107) + lu(k,1146) = lu(k,1146) - lu(k,128) * lu(k,1107) + lu(k,1149) = lu(k,1149) - lu(k,129) * lu(k,1107) + lu(k,130) = 1._r8 / lu(k,130) + lu(k,131) = lu(k,131) * lu(k,130) + lu(k,132) = lu(k,132) * lu(k,130) + lu(k,133) = lu(k,133) * lu(k,130) + lu(k,134) = lu(k,134) * lu(k,130) + lu(k,135) = lu(k,135) * lu(k,130) + lu(k,959) = lu(k,959) - lu(k,131) * lu(k,951) + lu(k,975) = lu(k,975) - lu(k,132) * lu(k,951) + lu(k,976) = lu(k,976) - lu(k,133) * lu(k,951) + lu(k,982) = lu(k,982) - lu(k,134) * lu(k,951) + lu(k,986) = - lu(k,135) * lu(k,951) + lu(k,1233) = lu(k,1233) - lu(k,131) * lu(k,1202) + lu(k,1266) = lu(k,1266) - lu(k,132) * lu(k,1202) + lu(k,1267) = lu(k,1267) - lu(k,133) * lu(k,1202) + lu(k,1273) = lu(k,1273) - lu(k,134) * lu(k,1202) + lu(k,1277) = lu(k,1277) - lu(k,135) * lu(k,1202) + lu(k,136) = 1._r8 / lu(k,136) + lu(k,137) = lu(k,137) * lu(k,136) + lu(k,138) = lu(k,138) * lu(k,136) + lu(k,139) = lu(k,139) * lu(k,136) + lu(k,140) = lu(k,140) * lu(k,136) + lu(k,141) = lu(k,141) * lu(k,136) + lu(k,1115) = lu(k,1115) - lu(k,137) * lu(k,1108) + lu(k,1118) = lu(k,1118) - lu(k,138) * lu(k,1108) + lu(k,1143) = lu(k,1143) - lu(k,139) * lu(k,1108) + lu(k,1146) = lu(k,1146) - lu(k,140) * lu(k,1108) + lu(k,1148) = lu(k,1148) - lu(k,141) * lu(k,1108) + lu(k,1236) = lu(k,1236) - lu(k,137) * lu(k,1203) + lu(k,1241) = lu(k,1241) - lu(k,138) * lu(k,1203) + lu(k,1268) = lu(k,1268) - lu(k,139) * lu(k,1203) + lu(k,1271) = lu(k,1271) - lu(k,140) * lu(k,1203) + lu(k,1273) = lu(k,1273) - lu(k,141) * lu(k,1203) + end do + end subroutine lu_fac03 + subroutine lu_fac04( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,142) = 1._r8 / lu(k,142) + lu(k,143) = lu(k,143) * lu(k,142) + lu(k,144) = lu(k,144) * lu(k,142) + lu(k,145) = lu(k,145) * lu(k,142) + lu(k,146) = lu(k,146) * lu(k,142) + lu(k,652) = lu(k,652) - lu(k,143) * lu(k,644) + lu(k,653) = - lu(k,144) * lu(k,644) + lu(k,659) = lu(k,659) - lu(k,145) * lu(k,644) + lu(k,661) = - lu(k,146) * lu(k,644) + lu(k,1022) = lu(k,1022) - lu(k,143) * lu(k,989) + lu(k,1023) = lu(k,1023) - lu(k,144) * lu(k,989) + lu(k,1034) = lu(k,1034) - lu(k,145) * lu(k,989) + lu(k,1039) = lu(k,1039) - lu(k,146) * lu(k,989) + lu(k,1255) = lu(k,1255) - lu(k,143) * lu(k,1204) + lu(k,1256) = lu(k,1256) - lu(k,144) * lu(k,1204) + lu(k,1268) = lu(k,1268) - lu(k,145) * lu(k,1204) + lu(k,1273) = lu(k,1273) - lu(k,146) * lu(k,1204) + lu(k,147) = 1._r8 / lu(k,147) + lu(k,148) = lu(k,148) * lu(k,147) + lu(k,149) = lu(k,149) * lu(k,147) + lu(k,150) = lu(k,150) * lu(k,147) + lu(k,151) = lu(k,151) * lu(k,147) + lu(k,385) = lu(k,385) - lu(k,148) * lu(k,383) + lu(k,386) = lu(k,386) - lu(k,149) * lu(k,383) + lu(k,391) = lu(k,391) - lu(k,150) * lu(k,383) + lu(k,392) = lu(k,392) - lu(k,151) * lu(k,383) + lu(k,1006) = lu(k,1006) - lu(k,148) * lu(k,990) + lu(k,1015) = - lu(k,149) * lu(k,990) + lu(k,1034) = lu(k,1034) - lu(k,150) * lu(k,990) + lu(k,1039) = lu(k,1039) - lu(k,151) * lu(k,990) + lu(k,1233) = lu(k,1233) - lu(k,148) * lu(k,1205) + lu(k,1247) = lu(k,1247) - lu(k,149) * lu(k,1205) + lu(k,1268) = lu(k,1268) - lu(k,150) * lu(k,1205) + lu(k,1273) = lu(k,1273) - lu(k,151) * lu(k,1205) + lu(k,152) = 1._r8 / lu(k,152) + lu(k,153) = lu(k,153) * lu(k,152) + lu(k,154) = lu(k,154) * lu(k,152) + lu(k,155) = lu(k,155) * lu(k,152) + lu(k,156) = lu(k,156) * lu(k,152) + lu(k,715) = lu(k,715) - lu(k,153) * lu(k,713) + lu(k,716) = lu(k,716) - lu(k,154) * lu(k,713) + lu(k,719) = lu(k,719) - lu(k,155) * lu(k,713) + lu(k,726) = lu(k,726) - lu(k,156) * lu(k,713) + lu(k,872) = lu(k,872) - lu(k,153) * lu(k,869) + lu(k,873) = lu(k,873) - lu(k,154) * lu(k,869) + lu(k,878) = lu(k,878) - lu(k,155) * lu(k,869) + lu(k,888) = lu(k,888) - lu(k,156) * lu(k,869) + lu(k,1315) = lu(k,1315) - lu(k,153) * lu(k,1311) + lu(k,1316) = lu(k,1316) - lu(k,154) * lu(k,1311) + lu(k,1319) = lu(k,1319) - lu(k,155) * lu(k,1311) + lu(k,1329) = lu(k,1329) - lu(k,156) * lu(k,1311) + lu(k,157) = 1._r8 / lu(k,157) + lu(k,158) = lu(k,158) * lu(k,157) + lu(k,159) = lu(k,159) * lu(k,157) + lu(k,475) = - lu(k,158) * lu(k,471) + lu(k,480) = lu(k,480) - lu(k,159) * lu(k,471) + lu(k,626) = - lu(k,158) * lu(k,616) + lu(k,640) = - lu(k,159) * lu(k,616) + lu(k,695) = lu(k,695) - lu(k,158) * lu(k,685) + lu(k,709) = lu(k,709) - lu(k,159) * lu(k,685) + lu(k,770) = lu(k,770) - lu(k,158) * lu(k,755) + lu(k,789) = lu(k,789) - lu(k,159) * lu(k,755) + lu(k,841) = lu(k,841) - lu(k,158) * lu(k,823) + lu(k,861) = lu(k,861) - lu(k,159) * lu(k,823) + lu(k,1127) = lu(k,1127) - lu(k,158) * lu(k,1109) + lu(k,1148) = lu(k,1148) - lu(k,159) * lu(k,1109) + lu(k,1252) = lu(k,1252) - lu(k,158) * lu(k,1206) + lu(k,1273) = lu(k,1273) - lu(k,159) * lu(k,1206) + lu(k,160) = 1._r8 / lu(k,160) + lu(k,161) = lu(k,161) * lu(k,160) + lu(k,162) = lu(k,162) * lu(k,160) + lu(k,163) = lu(k,163) * lu(k,160) + lu(k,164) = lu(k,164) * lu(k,160) + lu(k,165) = lu(k,165) * lu(k,160) + lu(k,166) = lu(k,166) * lu(k,160) + lu(k,167) = lu(k,167) * lu(k,160) + lu(k,1228) = lu(k,1228) - lu(k,161) * lu(k,1207) + lu(k,1241) = lu(k,1241) - lu(k,162) * lu(k,1207) + lu(k,1251) = lu(k,1251) - lu(k,163) * lu(k,1207) + lu(k,1258) = lu(k,1258) - lu(k,164) * lu(k,1207) + lu(k,1261) = lu(k,1261) - lu(k,165) * lu(k,1207) + lu(k,1273) = lu(k,1273) - lu(k,166) * lu(k,1207) + lu(k,1274) = lu(k,1274) - lu(k,167) * lu(k,1207) + lu(k,1283) = - lu(k,161) * lu(k,1280) + lu(k,1289) = - lu(k,162) * lu(k,1280) + lu(k,1291) = lu(k,1291) - lu(k,163) * lu(k,1280) + lu(k,1292) = lu(k,1292) - lu(k,164) * lu(k,1280) + lu(k,1293) = lu(k,1293) - lu(k,165) * lu(k,1280) + lu(k,1305) = lu(k,1305) - lu(k,166) * lu(k,1280) + lu(k,1306) = lu(k,1306) - lu(k,167) * lu(k,1280) + lu(k,168) = 1._r8 / lu(k,168) + lu(k,169) = lu(k,169) * lu(k,168) + lu(k,170) = lu(k,170) * lu(k,168) + lu(k,171) = lu(k,171) * lu(k,168) + lu(k,172) = lu(k,172) * lu(k,168) + lu(k,173) = lu(k,173) * lu(k,168) + lu(k,174) = lu(k,174) * lu(k,168) + lu(k,175) = lu(k,175) * lu(k,168) + lu(k,966) = lu(k,966) - lu(k,169) * lu(k,952) + lu(k,969) = lu(k,969) - lu(k,170) * lu(k,952) + lu(k,975) = lu(k,975) - lu(k,171) * lu(k,952) + lu(k,976) = lu(k,976) - lu(k,172) * lu(k,952) + lu(k,977) = lu(k,977) - lu(k,173) * lu(k,952) + lu(k,982) = lu(k,982) - lu(k,174) * lu(k,952) + lu(k,986) = lu(k,986) - lu(k,175) * lu(k,952) + lu(k,1251) = lu(k,1251) - lu(k,169) * lu(k,1208) + lu(k,1260) = lu(k,1260) - lu(k,170) * lu(k,1208) + lu(k,1266) = lu(k,1266) - lu(k,171) * lu(k,1208) + lu(k,1267) = lu(k,1267) - lu(k,172) * lu(k,1208) + lu(k,1268) = lu(k,1268) - lu(k,173) * lu(k,1208) + lu(k,1273) = lu(k,1273) - lu(k,174) * lu(k,1208) + lu(k,1277) = lu(k,1277) - lu(k,175) * lu(k,1208) + lu(k,176) = 1._r8 / lu(k,176) + lu(k,177) = lu(k,177) * lu(k,176) + lu(k,178) = lu(k,178) * lu(k,176) + lu(k,179) = lu(k,179) * lu(k,176) + lu(k,180) = lu(k,180) * lu(k,176) + lu(k,181) = lu(k,181) * lu(k,176) + lu(k,416) = lu(k,416) - lu(k,177) * lu(k,415) + lu(k,417) = lu(k,417) - lu(k,178) * lu(k,415) + lu(k,425) = lu(k,425) - lu(k,179) * lu(k,415) + lu(k,426) = - lu(k,180) * lu(k,415) + lu(k,428) = - lu(k,181) * lu(k,415) + lu(k,1002) = - lu(k,177) * lu(k,991) + lu(k,1009) = lu(k,1009) - lu(k,178) * lu(k,991) + lu(k,1034) = lu(k,1034) - lu(k,179) * lu(k,991) + lu(k,1039) = lu(k,1039) - lu(k,180) * lu(k,991) + lu(k,1043) = lu(k,1043) - lu(k,181) * lu(k,991) + lu(k,1230) = lu(k,1230) - lu(k,177) * lu(k,1209) + lu(k,1237) = lu(k,1237) - lu(k,178) * lu(k,1209) + lu(k,1268) = lu(k,1268) - lu(k,179) * lu(k,1209) + lu(k,1273) = lu(k,1273) - lu(k,180) * lu(k,1209) + lu(k,1277) = lu(k,1277) - lu(k,181) * lu(k,1209) + end do + end subroutine lu_fac04 + subroutine lu_fac05( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,182) = 1._r8 / lu(k,182) + lu(k,183) = lu(k,183) * lu(k,182) + lu(k,184) = lu(k,184) * lu(k,182) + lu(k,185) = lu(k,185) * lu(k,182) + lu(k,186) = lu(k,186) * lu(k,182) + lu(k,187) = lu(k,187) * lu(k,182) + lu(k,543) = - lu(k,183) * lu(k,534) + lu(k,544) = - lu(k,184) * lu(k,534) + lu(k,547) = lu(k,547) - lu(k,185) * lu(k,534) + lu(k,549) = - lu(k,186) * lu(k,534) + lu(k,556) = lu(k,556) - lu(k,187) * lu(k,534) + lu(k,1128) = lu(k,1128) - lu(k,183) * lu(k,1110) + lu(k,1132) = lu(k,1132) - lu(k,184) * lu(k,1110) + lu(k,1137) = lu(k,1137) - lu(k,185) * lu(k,1110) + lu(k,1140) = lu(k,1140) - lu(k,186) * lu(k,1110) + lu(k,1148) = lu(k,1148) - lu(k,187) * lu(k,1110) + lu(k,1253) = lu(k,1253) - lu(k,183) * lu(k,1210) + lu(k,1257) = lu(k,1257) - lu(k,184) * lu(k,1210) + lu(k,1262) = lu(k,1262) - lu(k,185) * lu(k,1210) + lu(k,1265) = lu(k,1265) - lu(k,186) * lu(k,1210) + lu(k,1273) = lu(k,1273) - lu(k,187) * lu(k,1210) + lu(k,188) = 1._r8 / lu(k,188) + lu(k,189) = lu(k,189) * lu(k,188) + lu(k,190) = lu(k,190) * lu(k,188) + lu(k,191) = lu(k,191) * lu(k,188) + lu(k,192) = lu(k,192) * lu(k,188) + lu(k,193) = lu(k,193) * lu(k,188) + lu(k,975) = lu(k,975) - lu(k,189) * lu(k,953) + lu(k,976) = lu(k,976) - lu(k,190) * lu(k,953) + lu(k,979) = lu(k,979) - lu(k,191) * lu(k,953) + lu(k,981) = - lu(k,192) * lu(k,953) + lu(k,982) = lu(k,982) - lu(k,193) * lu(k,953) + lu(k,1180) = lu(k,1180) - lu(k,189) * lu(k,1167) + lu(k,1181) = lu(k,1181) - lu(k,190) * lu(k,1167) + lu(k,1184) = lu(k,1184) - lu(k,191) * lu(k,1167) + lu(k,1186) = lu(k,1186) - lu(k,192) * lu(k,1167) + lu(k,1187) = lu(k,1187) - lu(k,193) * lu(k,1167) + lu(k,1266) = lu(k,1266) - lu(k,189) * lu(k,1211) + lu(k,1267) = lu(k,1267) - lu(k,190) * lu(k,1211) + lu(k,1270) = lu(k,1270) - lu(k,191) * lu(k,1211) + lu(k,1272) = lu(k,1272) - lu(k,192) * lu(k,1211) + lu(k,1273) = lu(k,1273) - lu(k,193) * lu(k,1211) + lu(k,194) = 1._r8 / lu(k,194) + lu(k,195) = lu(k,195) * lu(k,194) + lu(k,196) = lu(k,196) * lu(k,194) + lu(k,197) = lu(k,197) * lu(k,194) + lu(k,198) = lu(k,198) * lu(k,194) + lu(k,199) = lu(k,199) * lu(k,194) + lu(k,777) = lu(k,777) - lu(k,195) * lu(k,756) + lu(k,778) = - lu(k,196) * lu(k,756) + lu(k,779) = lu(k,779) - lu(k,197) * lu(k,756) + lu(k,789) = lu(k,789) - lu(k,198) * lu(k,756) + lu(k,792) = - lu(k,199) * lu(k,756) + lu(k,1026) = lu(k,1026) - lu(k,195) * lu(k,992) + lu(k,1027) = lu(k,1027) - lu(k,196) * lu(k,992) + lu(k,1028) = lu(k,1028) - lu(k,197) * lu(k,992) + lu(k,1039) = lu(k,1039) - lu(k,198) * lu(k,992) + lu(k,1043) = lu(k,1043) - lu(k,199) * lu(k,992) + lu(k,1260) = lu(k,1260) - lu(k,195) * lu(k,1212) + lu(k,1261) = lu(k,1261) - lu(k,196) * lu(k,1212) + lu(k,1262) = lu(k,1262) - lu(k,197) * lu(k,1212) + lu(k,1273) = lu(k,1273) - lu(k,198) * lu(k,1212) + lu(k,1277) = lu(k,1277) - lu(k,199) * lu(k,1212) + lu(k,200) = 1._r8 / lu(k,200) + lu(k,201) = lu(k,201) * lu(k,200) + lu(k,202) = lu(k,202) * lu(k,200) + lu(k,203) = lu(k,203) * lu(k,200) + lu(k,204) = lu(k,204) * lu(k,200) + lu(k,205) = lu(k,205) * lu(k,200) + lu(k,484) = lu(k,484) - lu(k,201) * lu(k,482) + lu(k,487) = lu(k,487) - lu(k,202) * lu(k,482) + lu(k,489) = lu(k,489) - lu(k,203) * lu(k,482) + lu(k,493) = lu(k,493) - lu(k,204) * lu(k,482) + lu(k,494) = - lu(k,205) * lu(k,482) + lu(k,1012) = lu(k,1012) - lu(k,201) * lu(k,993) + lu(k,1024) = lu(k,1024) - lu(k,202) * lu(k,993) + lu(k,1028) = lu(k,1028) - lu(k,203) * lu(k,993) + lu(k,1039) = lu(k,1039) - lu(k,204) * lu(k,993) + lu(k,1043) = lu(k,1043) - lu(k,205) * lu(k,993) + lu(k,1243) = lu(k,1243) - lu(k,201) * lu(k,1213) + lu(k,1257) = lu(k,1257) - lu(k,202) * lu(k,1213) + lu(k,1262) = lu(k,1262) - lu(k,203) * lu(k,1213) + lu(k,1273) = lu(k,1273) - lu(k,204) * lu(k,1213) + lu(k,1277) = lu(k,1277) - lu(k,205) * lu(k,1213) + lu(k,206) = 1._r8 / lu(k,206) + lu(k,207) = lu(k,207) * lu(k,206) + lu(k,208) = lu(k,208) * lu(k,206) + lu(k,209) = lu(k,209) * lu(k,206) + lu(k,210) = lu(k,210) * lu(k,206) + lu(k,354) = - lu(k,207) * lu(k,352) + lu(k,355) = lu(k,355) - lu(k,208) * lu(k,352) + lu(k,358) = lu(k,358) - lu(k,209) * lu(k,352) + lu(k,360) = - lu(k,210) * lu(k,352) + lu(k,838) = lu(k,838) - lu(k,207) * lu(k,824) + lu(k,850) = lu(k,850) - lu(k,208) * lu(k,824) + lu(k,856) = lu(k,856) - lu(k,209) * lu(k,824) + lu(k,864) = lu(k,864) - lu(k,210) * lu(k,824) + lu(k,1016) = - lu(k,207) * lu(k,994) + lu(k,1028) = lu(k,1028) - lu(k,208) * lu(k,994) + lu(k,1034) = lu(k,1034) - lu(k,209) * lu(k,994) + lu(k,1042) = lu(k,1042) - lu(k,210) * lu(k,994) + lu(k,1339) = lu(k,1339) - lu(k,207) * lu(k,1335) + lu(k,1343) = - lu(k,208) * lu(k,1335) + lu(k,1349) = lu(k,1349) - lu(k,209) * lu(k,1335) + lu(k,1357) = lu(k,1357) - lu(k,210) * lu(k,1335) + lu(k,211) = 1._r8 / lu(k,211) + lu(k,212) = lu(k,212) * lu(k,211) + lu(k,213) = lu(k,213) * lu(k,211) + lu(k,214) = lu(k,214) * lu(k,211) + lu(k,215) = lu(k,215) * lu(k,211) + lu(k,216) = lu(k,216) * lu(k,211) + lu(k,217) = lu(k,217) * lu(k,211) + lu(k,958) = - lu(k,212) * lu(k,954) + lu(k,966) = lu(k,966) - lu(k,213) * lu(k,954) + lu(k,971) = lu(k,971) - lu(k,214) * lu(k,954) + lu(k,977) = lu(k,977) - lu(k,215) * lu(k,954) + lu(k,978) = lu(k,978) - lu(k,216) * lu(k,954) + lu(k,982) = lu(k,982) - lu(k,217) * lu(k,954) + lu(k,1051) = - lu(k,212) * lu(k,1046) + lu(k,1063) = lu(k,1063) - lu(k,213) * lu(k,1046) + lu(k,1074) = lu(k,1074) - lu(k,214) * lu(k,1046) + lu(k,1080) = lu(k,1080) - lu(k,215) * lu(k,1046) + lu(k,1081) = lu(k,1081) - lu(k,216) * lu(k,1046) + lu(k,1085) = lu(k,1085) - lu(k,217) * lu(k,1046) + lu(k,1231) = lu(k,1231) - lu(k,212) * lu(k,1214) + lu(k,1251) = lu(k,1251) - lu(k,213) * lu(k,1214) + lu(k,1262) = lu(k,1262) - lu(k,214) * lu(k,1214) + lu(k,1268) = lu(k,1268) - lu(k,215) * lu(k,1214) + lu(k,1269) = lu(k,1269) - lu(k,216) * lu(k,1214) + lu(k,1273) = lu(k,1273) - lu(k,217) * lu(k,1214) + lu(k,218) = 1._r8 / lu(k,218) + lu(k,219) = lu(k,219) * lu(k,218) + lu(k,220) = lu(k,220) * lu(k,218) + lu(k,221) = lu(k,221) * lu(k,218) + lu(k,222) = lu(k,222) * lu(k,218) + lu(k,223) = lu(k,223) * lu(k,218) + lu(k,224) = lu(k,224) * lu(k,218) + lu(k,916) = lu(k,916) - lu(k,219) * lu(k,894) + lu(k,919) = lu(k,919) - lu(k,220) * lu(k,894) + lu(k,922) = lu(k,922) - lu(k,221) * lu(k,894) + lu(k,924) = lu(k,924) - lu(k,222) * lu(k,894) + lu(k,927) = lu(k,927) - lu(k,223) * lu(k,894) + lu(k,928) = - lu(k,224) * lu(k,894) + lu(k,1031) = lu(k,1031) - lu(k,219) * lu(k,995) + lu(k,1034) = lu(k,1034) - lu(k,220) * lu(k,995) + lu(k,1037) = lu(k,1037) - lu(k,221) * lu(k,995) + lu(k,1039) = lu(k,1039) - lu(k,222) * lu(k,995) + lu(k,1042) = lu(k,1042) - lu(k,223) * lu(k,995) + lu(k,1043) = lu(k,1043) - lu(k,224) * lu(k,995) + lu(k,1265) = lu(k,1265) - lu(k,219) * lu(k,1215) + lu(k,1268) = lu(k,1268) - lu(k,220) * lu(k,1215) + lu(k,1271) = lu(k,1271) - lu(k,221) * lu(k,1215) + lu(k,1273) = lu(k,1273) - lu(k,222) * lu(k,1215) + lu(k,1276) = lu(k,1276) - lu(k,223) * lu(k,1215) + lu(k,1277) = lu(k,1277) - lu(k,224) * lu(k,1215) + end do + end subroutine lu_fac05 + subroutine lu_fac06( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,225) = 1._r8 / lu(k,225) + lu(k,226) = lu(k,226) * lu(k,225) + lu(k,227) = lu(k,227) * lu(k,225) + lu(k,228) = lu(k,228) * lu(k,225) + lu(k,229) = lu(k,229) * lu(k,225) + lu(k,230) = lu(k,230) * lu(k,225) + lu(k,231) = lu(k,231) * lu(k,225) + lu(k,975) = lu(k,975) - lu(k,226) * lu(k,955) + lu(k,976) = lu(k,976) - lu(k,227) * lu(k,955) + lu(k,979) = lu(k,979) - lu(k,228) * lu(k,955) + lu(k,981) = lu(k,981) - lu(k,229) * lu(k,955) + lu(k,982) = lu(k,982) - lu(k,230) * lu(k,955) + lu(k,986) = lu(k,986) - lu(k,231) * lu(k,955) + lu(k,1180) = lu(k,1180) - lu(k,226) * lu(k,1168) + lu(k,1181) = lu(k,1181) - lu(k,227) * lu(k,1168) + lu(k,1184) = lu(k,1184) - lu(k,228) * lu(k,1168) + lu(k,1186) = lu(k,1186) - lu(k,229) * lu(k,1168) + lu(k,1187) = lu(k,1187) - lu(k,230) * lu(k,1168) + lu(k,1191) = lu(k,1191) - lu(k,231) * lu(k,1168) + lu(k,1266) = lu(k,1266) - lu(k,226) * lu(k,1216) + lu(k,1267) = lu(k,1267) - lu(k,227) * lu(k,1216) + lu(k,1270) = lu(k,1270) - lu(k,228) * lu(k,1216) + lu(k,1272) = lu(k,1272) - lu(k,229) * lu(k,1216) + lu(k,1273) = lu(k,1273) - lu(k,230) * lu(k,1216) + lu(k,1277) = lu(k,1277) - lu(k,231) * lu(k,1216) + lu(k,232) = 1._r8 / lu(k,232) + lu(k,233) = lu(k,233) * lu(k,232) + lu(k,234) = lu(k,234) * lu(k,232) + lu(k,235) = lu(k,235) * lu(k,232) + lu(k,236) = lu(k,236) * lu(k,232) + lu(k,237) = lu(k,237) * lu(k,232) + lu(k,238) = lu(k,238) * lu(k,232) + lu(k,239) = lu(k,239) * lu(k,232) + lu(k,899) = - lu(k,233) * lu(k,895) + lu(k,900) = lu(k,900) - lu(k,234) * lu(k,895) + lu(k,916) = lu(k,916) - lu(k,235) * lu(k,895) + lu(k,921) = - lu(k,236) * lu(k,895) + lu(k,922) = lu(k,922) - lu(k,237) * lu(k,895) + lu(k,925) = lu(k,925) - lu(k,238) * lu(k,895) + lu(k,926) = lu(k,926) - lu(k,239) * lu(k,895) + lu(k,1284) = lu(k,1284) - lu(k,233) * lu(k,1281) + lu(k,1287) = - lu(k,234) * lu(k,1281) + lu(k,1297) = lu(k,1297) - lu(k,235) * lu(k,1281) + lu(k,1302) = lu(k,1302) - lu(k,236) * lu(k,1281) + lu(k,1303) = lu(k,1303) - lu(k,237) * lu(k,1281) + lu(k,1306) = lu(k,1306) - lu(k,238) * lu(k,1281) + lu(k,1307) = lu(k,1307) - lu(k,239) * lu(k,1281) + lu(k,1313) = lu(k,1313) - lu(k,233) * lu(k,1312) + lu(k,1314) = - lu(k,234) * lu(k,1312) + lu(k,1320) = lu(k,1320) - lu(k,235) * lu(k,1312) + lu(k,1325) = lu(k,1325) - lu(k,236) * lu(k,1312) + lu(k,1326) = - lu(k,237) * lu(k,1312) + lu(k,1329) = lu(k,1329) - lu(k,238) * lu(k,1312) + lu(k,1330) = lu(k,1330) - lu(k,239) * lu(k,1312) + lu(k,240) = 1._r8 / lu(k,240) + lu(k,241) = lu(k,241) * lu(k,240) + lu(k,242) = lu(k,242) * lu(k,240) + lu(k,243) = lu(k,243) * lu(k,240) + lu(k,388) = lu(k,388) - lu(k,241) * lu(k,384) + lu(k,391) = lu(k,391) - lu(k,242) * lu(k,384) + lu(k,392) = lu(k,392) - lu(k,243) * lu(k,384) + lu(k,489) = lu(k,489) - lu(k,241) * lu(k,483) + lu(k,492) = lu(k,492) - lu(k,242) * lu(k,483) + lu(k,493) = lu(k,493) - lu(k,243) * lu(k,483) + lu(k,597) = lu(k,597) - lu(k,241) * lu(k,587) + lu(k,600) = lu(k,600) - lu(k,242) * lu(k,587) + lu(k,602) = lu(k,602) - lu(k,243) * lu(k,587) + lu(k,634) = lu(k,634) - lu(k,241) * lu(k,617) + lu(k,637) = lu(k,637) - lu(k,242) * lu(k,617) + lu(k,640) = lu(k,640) - lu(k,243) * lu(k,617) + lu(k,656) = lu(k,656) - lu(k,241) * lu(k,645) + lu(k,659) = lu(k,659) - lu(k,242) * lu(k,645) + lu(k,661) = lu(k,661) - lu(k,243) * lu(k,645) + lu(k,779) = lu(k,779) - lu(k,241) * lu(k,757) + lu(k,785) = lu(k,785) - lu(k,242) * lu(k,757) + lu(k,789) = lu(k,789) - lu(k,243) * lu(k,757) + lu(k,1262) = lu(k,1262) - lu(k,241) * lu(k,1217) + lu(k,1268) = lu(k,1268) - lu(k,242) * lu(k,1217) + lu(k,1273) = lu(k,1273) - lu(k,243) * lu(k,1217) + lu(k,244) = 1._r8 / lu(k,244) + lu(k,245) = lu(k,245) * lu(k,244) + lu(k,246) = lu(k,246) * lu(k,244) + lu(k,247) = lu(k,247) * lu(k,244) + lu(k,248) = lu(k,248) * lu(k,244) + lu(k,249) = lu(k,249) * lu(k,244) + lu(k,250) = lu(k,250) * lu(k,244) + lu(k,251) = lu(k,251) * lu(k,244) + lu(k,624) = lu(k,624) - lu(k,245) * lu(k,618) + lu(k,626) = lu(k,626) - lu(k,246) * lu(k,618) + lu(k,628) = lu(k,628) - lu(k,247) * lu(k,618) + lu(k,632) = lu(k,632) - lu(k,248) * lu(k,618) + lu(k,634) = lu(k,634) - lu(k,249) * lu(k,618) + lu(k,637) = lu(k,637) - lu(k,250) * lu(k,618) + lu(k,640) = lu(k,640) - lu(k,251) * lu(k,618) + lu(k,1017) = lu(k,1017) - lu(k,245) * lu(k,996) + lu(k,1019) = lu(k,1019) - lu(k,246) * lu(k,996) + lu(k,1021) = lu(k,1021) - lu(k,247) * lu(k,996) + lu(k,1025) = lu(k,1025) - lu(k,248) * lu(k,996) + lu(k,1028) = lu(k,1028) - lu(k,249) * lu(k,996) + lu(k,1034) = lu(k,1034) - lu(k,250) * lu(k,996) + lu(k,1039) = lu(k,1039) - lu(k,251) * lu(k,996) + lu(k,1250) = lu(k,1250) - lu(k,245) * lu(k,1218) + lu(k,1252) = lu(k,1252) - lu(k,246) * lu(k,1218) + lu(k,1254) = lu(k,1254) - lu(k,247) * lu(k,1218) + lu(k,1259) = lu(k,1259) - lu(k,248) * lu(k,1218) + lu(k,1262) = lu(k,1262) - lu(k,249) * lu(k,1218) + lu(k,1268) = lu(k,1268) - lu(k,250) * lu(k,1218) + lu(k,1273) = lu(k,1273) - lu(k,251) * lu(k,1218) + lu(k,252) = 1._r8 / lu(k,252) + lu(k,253) = lu(k,253) * lu(k,252) + lu(k,254) = lu(k,254) * lu(k,252) + lu(k,255) = lu(k,255) * lu(k,252) + lu(k,256) = lu(k,256) * lu(k,252) + lu(k,257) = lu(k,257) * lu(k,252) + lu(k,258) = lu(k,258) * lu(k,252) + lu(k,259) = lu(k,259) * lu(k,252) + lu(k,690) = lu(k,690) - lu(k,253) * lu(k,686) + lu(k,700) = lu(k,700) - lu(k,254) * lu(k,686) + lu(k,702) = lu(k,702) - lu(k,255) * lu(k,686) + lu(k,703) = lu(k,703) - lu(k,256) * lu(k,686) + lu(k,705) = lu(k,705) - lu(k,257) * lu(k,686) + lu(k,708) = - lu(k,258) * lu(k,686) + lu(k,709) = lu(k,709) - lu(k,259) * lu(k,686) + lu(k,902) = - lu(k,253) * lu(k,896) + lu(k,908) = lu(k,908) - lu(k,254) * lu(k,896) + lu(k,911) = - lu(k,255) * lu(k,896) + lu(k,913) = - lu(k,256) * lu(k,896) + lu(k,916) = lu(k,916) - lu(k,257) * lu(k,896) + lu(k,922) = lu(k,922) - lu(k,258) * lu(k,896) + lu(k,924) = lu(k,924) - lu(k,259) * lu(k,896) + lu(k,1240) = lu(k,1240) - lu(k,253) * lu(k,1219) + lu(k,1257) = lu(k,1257) - lu(k,254) * lu(k,1219) + lu(k,1260) = lu(k,1260) - lu(k,255) * lu(k,1219) + lu(k,1262) = lu(k,1262) - lu(k,256) * lu(k,1219) + lu(k,1265) = lu(k,1265) - lu(k,257) * lu(k,1219) + lu(k,1271) = lu(k,1271) - lu(k,258) * lu(k,1219) + lu(k,1273) = lu(k,1273) - lu(k,259) * lu(k,1219) + lu(k,260) = 1._r8 / lu(k,260) + lu(k,261) = lu(k,261) * lu(k,260) + lu(k,262) = lu(k,262) * lu(k,260) + lu(k,263) = lu(k,263) * lu(k,260) + lu(k,264) = lu(k,264) * lu(k,260) + lu(k,265) = lu(k,265) * lu(k,260) + lu(k,266) = lu(k,266) * lu(k,260) + lu(k,267) = lu(k,267) * lu(k,260) + lu(k,372) = lu(k,372) - lu(k,261) * lu(k,371) + lu(k,373) = - lu(k,262) * lu(k,371) + lu(k,374) = lu(k,374) - lu(k,263) * lu(k,371) + lu(k,375) = lu(k,375) - lu(k,264) * lu(k,371) + lu(k,378) = lu(k,378) - lu(k,265) * lu(k,371) + lu(k,379) = - lu(k,266) * lu(k,371) + lu(k,381) = - lu(k,267) * lu(k,371) + lu(k,1005) = lu(k,1005) - lu(k,261) * lu(k,997) + lu(k,1014) = - lu(k,262) * lu(k,997) + lu(k,1015) = lu(k,1015) - lu(k,263) * lu(k,997) + lu(k,1028) = lu(k,1028) - lu(k,264) * lu(k,997) + lu(k,1034) = lu(k,1034) - lu(k,265) * lu(k,997) + lu(k,1039) = lu(k,1039) - lu(k,266) * lu(k,997) + lu(k,1043) = lu(k,1043) - lu(k,267) * lu(k,997) + lu(k,1232) = lu(k,1232) - lu(k,261) * lu(k,1220) + lu(k,1246) = lu(k,1246) - lu(k,262) * lu(k,1220) + lu(k,1247) = lu(k,1247) - lu(k,263) * lu(k,1220) + lu(k,1262) = lu(k,1262) - lu(k,264) * lu(k,1220) + lu(k,1268) = lu(k,1268) - lu(k,265) * lu(k,1220) + lu(k,1273) = lu(k,1273) - lu(k,266) * lu(k,1220) + lu(k,1277) = lu(k,1277) - lu(k,267) * lu(k,1220) + end do + end subroutine lu_fac06 + subroutine lu_fac07( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,268) = 1._r8 / lu(k,268) + lu(k,269) = lu(k,269) * lu(k,268) + lu(k,270) = lu(k,270) * lu(k,268) + lu(k,271) = lu(k,271) * lu(k,268) + lu(k,272) = lu(k,272) * lu(k,268) + lu(k,273) = lu(k,273) * lu(k,268) + lu(k,274) = lu(k,274) * lu(k,268) + lu(k,975) = lu(k,975) - lu(k,269) * lu(k,956) + lu(k,976) = lu(k,976) - lu(k,270) * lu(k,956) + lu(k,977) = lu(k,977) - lu(k,271) * lu(k,956) + lu(k,982) = lu(k,982) - lu(k,272) * lu(k,956) + lu(k,983) = - lu(k,273) * lu(k,956) + lu(k,986) = lu(k,986) - lu(k,274) * lu(k,956) + lu(k,1032) = lu(k,1032) - lu(k,269) * lu(k,998) + lu(k,1033) = lu(k,1033) - lu(k,270) * lu(k,998) + lu(k,1034) = lu(k,1034) - lu(k,271) * lu(k,998) + lu(k,1039) = lu(k,1039) - lu(k,272) * lu(k,998) + lu(k,1040) = lu(k,1040) - lu(k,273) * lu(k,998) + lu(k,1043) = lu(k,1043) - lu(k,274) * lu(k,998) + lu(k,1266) = lu(k,1266) - lu(k,269) * lu(k,1221) + lu(k,1267) = lu(k,1267) - lu(k,270) * lu(k,1221) + lu(k,1268) = lu(k,1268) - lu(k,271) * lu(k,1221) + lu(k,1273) = lu(k,1273) - lu(k,272) * lu(k,1221) + lu(k,1274) = lu(k,1274) - lu(k,273) * lu(k,1221) + lu(k,1277) = lu(k,1277) - lu(k,274) * lu(k,1221) + lu(k,1298) = lu(k,1298) - lu(k,269) * lu(k,1282) + lu(k,1299) = lu(k,1299) - lu(k,270) * lu(k,1282) + lu(k,1300) = lu(k,1300) - lu(k,271) * lu(k,1282) + lu(k,1305) = lu(k,1305) - lu(k,272) * lu(k,1282) + lu(k,1306) = lu(k,1306) - lu(k,273) * lu(k,1282) + lu(k,1309) = - lu(k,274) * lu(k,1282) + lu(k,275) = 1._r8 / lu(k,275) + lu(k,276) = lu(k,276) * lu(k,275) + lu(k,277) = lu(k,277) * lu(k,275) + lu(k,278) = lu(k,278) * lu(k,275) + lu(k,279) = lu(k,279) * lu(k,275) + lu(k,280) = lu(k,280) * lu(k,275) + lu(k,281) = lu(k,281) * lu(k,275) + lu(k,282) = lu(k,282) * lu(k,275) + lu(k,283) = lu(k,283) * lu(k,275) + lu(k,668) = lu(k,668) - lu(k,276) * lu(k,665) + lu(k,669) = - lu(k,277) * lu(k,665) + lu(k,672) = lu(k,672) - lu(k,278) * lu(k,665) + lu(k,675) = lu(k,675) - lu(k,279) * lu(k,665) + lu(k,677) = lu(k,677) - lu(k,280) * lu(k,665) + lu(k,678) = lu(k,678) - lu(k,281) * lu(k,665) + lu(k,680) = lu(k,680) - lu(k,282) * lu(k,665) + lu(k,681) = lu(k,681) - lu(k,283) * lu(k,665) + lu(k,902) = lu(k,902) - lu(k,276) * lu(k,897) + lu(k,904) = - lu(k,277) * lu(k,897) + lu(k,907) = lu(k,907) - lu(k,278) * lu(k,897) + lu(k,913) = lu(k,913) - lu(k,279) * lu(k,897) + lu(k,916) = lu(k,916) - lu(k,280) * lu(k,897) + lu(k,919) = lu(k,919) - lu(k,281) * lu(k,897) + lu(k,922) = lu(k,922) - lu(k,282) * lu(k,897) + lu(k,924) = lu(k,924) - lu(k,283) * lu(k,897) + lu(k,1240) = lu(k,1240) - lu(k,276) * lu(k,1222) + lu(k,1246) = lu(k,1246) - lu(k,277) * lu(k,1222) + lu(k,1256) = lu(k,1256) - lu(k,278) * lu(k,1222) + lu(k,1262) = lu(k,1262) - lu(k,279) * lu(k,1222) + lu(k,1265) = lu(k,1265) - lu(k,280) * lu(k,1222) + lu(k,1268) = lu(k,1268) - lu(k,281) * lu(k,1222) + lu(k,1271) = lu(k,1271) - lu(k,282) * lu(k,1222) + lu(k,1273) = lu(k,1273) - lu(k,283) * lu(k,1222) + lu(k,284) = 1._r8 / lu(k,284) + lu(k,285) = lu(k,285) * lu(k,284) + lu(k,286) = lu(k,286) * lu(k,284) + lu(k,287) = lu(k,287) * lu(k,284) + lu(k,288) = lu(k,288) * lu(k,284) + lu(k,289) = lu(k,289) * lu(k,284) + lu(k,290) = lu(k,290) * lu(k,284) + lu(k,668) = lu(k,668) - lu(k,285) * lu(k,666) + lu(k,673) = lu(k,673) - lu(k,286) * lu(k,666) + lu(k,674) = lu(k,674) - lu(k,287) * lu(k,666) + lu(k,675) = lu(k,675) - lu(k,288) * lu(k,666) + lu(k,681) = lu(k,681) - lu(k,289) * lu(k,666) + lu(k,684) = - lu(k,290) * lu(k,666) + lu(k,690) = lu(k,690) - lu(k,285) * lu(k,687) + lu(k,700) = lu(k,700) - lu(k,286) * lu(k,687) + lu(k,702) = lu(k,702) - lu(k,287) * lu(k,687) + lu(k,703) = lu(k,703) - lu(k,288) * lu(k,687) + lu(k,709) = lu(k,709) - lu(k,289) * lu(k,687) + lu(k,712) = - lu(k,290) * lu(k,687) + lu(k,1010) = lu(k,1010) - lu(k,285) * lu(k,999) + lu(k,1024) = lu(k,1024) - lu(k,286) * lu(k,999) + lu(k,1026) = lu(k,1026) - lu(k,287) * lu(k,999) + lu(k,1028) = lu(k,1028) - lu(k,288) * lu(k,999) + lu(k,1039) = lu(k,1039) - lu(k,289) * lu(k,999) + lu(k,1043) = lu(k,1043) - lu(k,290) * lu(k,999) + lu(k,1240) = lu(k,1240) - lu(k,285) * lu(k,1223) + lu(k,1257) = lu(k,1257) - lu(k,286) * lu(k,1223) + lu(k,1260) = lu(k,1260) - lu(k,287) * lu(k,1223) + lu(k,1262) = lu(k,1262) - lu(k,288) * lu(k,1223) + lu(k,1273) = lu(k,1273) - lu(k,289) * lu(k,1223) + lu(k,1277) = lu(k,1277) - lu(k,290) * lu(k,1223) + lu(k,291) = 1._r8 / lu(k,291) + lu(k,292) = lu(k,292) * lu(k,291) + lu(k,293) = lu(k,293) * lu(k,291) + lu(k,294) = lu(k,294) * lu(k,291) + lu(k,295) = lu(k,295) * lu(k,291) + lu(k,296) = lu(k,296) * lu(k,291) + lu(k,297) = lu(k,297) * lu(k,291) + lu(k,298) = lu(k,298) * lu(k,291) + lu(k,299) = lu(k,299) * lu(k,291) + lu(k,969) = lu(k,969) - lu(k,292) * lu(k,957) + lu(k,975) = lu(k,975) - lu(k,293) * lu(k,957) + lu(k,976) = lu(k,976) - lu(k,294) * lu(k,957) + lu(k,977) = lu(k,977) - lu(k,295) * lu(k,957) + lu(k,979) = lu(k,979) - lu(k,296) * lu(k,957) + lu(k,981) = lu(k,981) - lu(k,297) * lu(k,957) + lu(k,982) = lu(k,982) - lu(k,298) * lu(k,957) + lu(k,986) = lu(k,986) - lu(k,299) * lu(k,957) + lu(k,1174) = lu(k,1174) - lu(k,292) * lu(k,1169) + lu(k,1180) = lu(k,1180) - lu(k,293) * lu(k,1169) + lu(k,1181) = lu(k,1181) - lu(k,294) * lu(k,1169) + lu(k,1182) = lu(k,1182) - lu(k,295) * lu(k,1169) + lu(k,1184) = lu(k,1184) - lu(k,296) * lu(k,1169) + lu(k,1186) = lu(k,1186) - lu(k,297) * lu(k,1169) + lu(k,1187) = lu(k,1187) - lu(k,298) * lu(k,1169) + lu(k,1191) = lu(k,1191) - lu(k,299) * lu(k,1169) + lu(k,1260) = lu(k,1260) - lu(k,292) * lu(k,1224) + lu(k,1266) = lu(k,1266) - lu(k,293) * lu(k,1224) + lu(k,1267) = lu(k,1267) - lu(k,294) * lu(k,1224) + lu(k,1268) = lu(k,1268) - lu(k,295) * lu(k,1224) + lu(k,1270) = lu(k,1270) - lu(k,296) * lu(k,1224) + lu(k,1272) = lu(k,1272) - lu(k,297) * lu(k,1224) + lu(k,1273) = lu(k,1273) - lu(k,298) * lu(k,1224) + lu(k,1277) = lu(k,1277) - lu(k,299) * lu(k,1224) + lu(k,300) = 1._r8 / lu(k,300) + lu(k,301) = lu(k,301) * lu(k,300) + lu(k,302) = lu(k,302) * lu(k,300) + lu(k,303) = lu(k,303) * lu(k,300) + lu(k,304) = lu(k,304) * lu(k,300) + lu(k,305) = lu(k,305) * lu(k,300) + lu(k,306) = lu(k,306) * lu(k,300) + lu(k,307) = lu(k,307) * lu(k,300) + lu(k,308) = lu(k,308) * lu(k,300) + lu(k,309) = lu(k,309) * lu(k,300) + lu(k,1050) = - lu(k,301) * lu(k,1047) + lu(k,1062) = lu(k,1062) - lu(k,302) * lu(k,1047) + lu(k,1066) = - lu(k,303) * lu(k,1047) + lu(k,1071) = lu(k,1071) - lu(k,304) * lu(k,1047) + lu(k,1077) = lu(k,1077) - lu(k,305) * lu(k,1047) + lu(k,1081) = lu(k,1081) - lu(k,306) * lu(k,1047) + lu(k,1083) = lu(k,1083) - lu(k,307) * lu(k,1047) + lu(k,1085) = lu(k,1085) - lu(k,308) * lu(k,1047) + lu(k,1086) = lu(k,1086) - lu(k,309) * lu(k,1047) + lu(k,1113) = - lu(k,301) * lu(k,1111) + lu(k,1125) = lu(k,1125) - lu(k,302) * lu(k,1111) + lu(k,1129) = lu(k,1129) - lu(k,303) * lu(k,1111) + lu(k,1134) = lu(k,1134) - lu(k,304) * lu(k,1111) + lu(k,1140) = lu(k,1140) - lu(k,305) * lu(k,1111) + lu(k,1144) = - lu(k,306) * lu(k,1111) + lu(k,1146) = lu(k,1146) - lu(k,307) * lu(k,1111) + lu(k,1148) = lu(k,1148) - lu(k,308) * lu(k,1111) + lu(k,1149) = lu(k,1149) - lu(k,309) * lu(k,1111) + lu(k,1230) = lu(k,1230) - lu(k,301) * lu(k,1225) + lu(k,1250) = lu(k,1250) - lu(k,302) * lu(k,1225) + lu(k,1254) = lu(k,1254) - lu(k,303) * lu(k,1225) + lu(k,1259) = lu(k,1259) - lu(k,304) * lu(k,1225) + lu(k,1265) = lu(k,1265) - lu(k,305) * lu(k,1225) + lu(k,1269) = lu(k,1269) - lu(k,306) * lu(k,1225) + lu(k,1271) = lu(k,1271) - lu(k,307) * lu(k,1225) + lu(k,1273) = lu(k,1273) - lu(k,308) * lu(k,1225) + lu(k,1274) = lu(k,1274) - lu(k,309) * lu(k,1225) + end do + end subroutine lu_fac07 + subroutine lu_fac08( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,311) = 1._r8 / lu(k,311) + lu(k,312) = lu(k,312) * lu(k,311) + lu(k,313) = lu(k,313) * lu(k,311) + lu(k,314) = lu(k,314) * lu(k,311) + lu(k,315) = lu(k,315) * lu(k,311) + lu(k,316) = lu(k,316) * lu(k,311) + lu(k,317) = lu(k,317) * lu(k,311) + lu(k,318) = lu(k,318) * lu(k,311) + lu(k,849) = - lu(k,312) * lu(k,825) + lu(k,851) = lu(k,851) - lu(k,313) * lu(k,825) + lu(k,853) = lu(k,853) - lu(k,314) * lu(k,825) + lu(k,860) = - lu(k,315) * lu(k,825) + lu(k,861) = lu(k,861) - lu(k,316) * lu(k,825) + lu(k,862) = lu(k,862) - lu(k,317) * lu(k,825) + lu(k,864) = lu(k,864) - lu(k,318) * lu(k,825) + lu(k,912) = - lu(k,312) * lu(k,898) + lu(k,914) = lu(k,914) - lu(k,313) * lu(k,898) + lu(k,916) = lu(k,916) - lu(k,314) * lu(k,898) + lu(k,923) = lu(k,923) - lu(k,315) * lu(k,898) + lu(k,924) = lu(k,924) - lu(k,316) * lu(k,898) + lu(k,925) = lu(k,925) - lu(k,317) * lu(k,898) + lu(k,927) = lu(k,927) - lu(k,318) * lu(k,898) + lu(k,1261) = lu(k,1261) - lu(k,312) * lu(k,1226) + lu(k,1263) = lu(k,1263) - lu(k,313) * lu(k,1226) + lu(k,1265) = lu(k,1265) - lu(k,314) * lu(k,1226) + lu(k,1272) = lu(k,1272) - lu(k,315) * lu(k,1226) + lu(k,1273) = lu(k,1273) - lu(k,316) * lu(k,1226) + lu(k,1274) = lu(k,1274) - lu(k,317) * lu(k,1226) + lu(k,1276) = lu(k,1276) - lu(k,318) * lu(k,1226) + lu(k,1342) = lu(k,1342) - lu(k,312) * lu(k,1336) + lu(k,1344) = lu(k,1344) - lu(k,313) * lu(k,1336) + lu(k,1346) = - lu(k,314) * lu(k,1336) + lu(k,1353) = lu(k,1353) - lu(k,315) * lu(k,1336) + lu(k,1354) = - lu(k,316) * lu(k,1336) + lu(k,1355) = lu(k,1355) - lu(k,317) * lu(k,1336) + lu(k,1357) = lu(k,1357) - lu(k,318) * lu(k,1336) + lu(k,319) = 1._r8 / lu(k,319) + lu(k,320) = lu(k,320) * lu(k,319) + lu(k,321) = lu(k,321) * lu(k,319) + lu(k,322) = lu(k,322) * lu(k,319) + lu(k,323) = lu(k,323) * lu(k,319) + lu(k,537) = lu(k,537) - lu(k,320) * lu(k,535) + lu(k,545) = lu(k,545) - lu(k,321) * lu(k,535) + lu(k,556) = lu(k,556) - lu(k,322) * lu(k,535) + lu(k,559) = - lu(k,323) * lu(k,535) + lu(k,668) = lu(k,668) - lu(k,320) * lu(k,667) + lu(k,674) = lu(k,674) - lu(k,321) * lu(k,667) + lu(k,681) = lu(k,681) - lu(k,322) * lu(k,667) + lu(k,684) = lu(k,684) - lu(k,323) * lu(k,667) + lu(k,690) = lu(k,690) - lu(k,320) * lu(k,688) + lu(k,702) = lu(k,702) - lu(k,321) * lu(k,688) + lu(k,709) = lu(k,709) - lu(k,322) * lu(k,688) + lu(k,712) = lu(k,712) - lu(k,323) * lu(k,688) + lu(k,763) = lu(k,763) - lu(k,320) * lu(k,758) + lu(k,777) = lu(k,777) - lu(k,321) * lu(k,758) + lu(k,789) = lu(k,789) - lu(k,322) * lu(k,758) + lu(k,792) = lu(k,792) - lu(k,323) * lu(k,758) + lu(k,1010) = lu(k,1010) - lu(k,320) * lu(k,1000) + lu(k,1026) = lu(k,1026) - lu(k,321) * lu(k,1000) + lu(k,1039) = lu(k,1039) - lu(k,322) * lu(k,1000) + lu(k,1043) = lu(k,1043) - lu(k,323) * lu(k,1000) + lu(k,1053) = lu(k,1053) - lu(k,320) * lu(k,1048) + lu(k,1072) = lu(k,1072) - lu(k,321) * lu(k,1048) + lu(k,1085) = lu(k,1085) - lu(k,322) * lu(k,1048) + lu(k,1089) = - lu(k,323) * lu(k,1048) + lu(k,1240) = lu(k,1240) - lu(k,320) * lu(k,1227) + lu(k,1260) = lu(k,1260) - lu(k,321) * lu(k,1227) + lu(k,1273) = lu(k,1273) - lu(k,322) * lu(k,1227) + lu(k,1277) = lu(k,1277) - lu(k,323) * lu(k,1227) + lu(k,324) = 1._r8 / lu(k,324) + lu(k,325) = lu(k,325) * lu(k,324) + lu(k,326) = lu(k,326) * lu(k,324) + lu(k,327) = lu(k,327) * lu(k,324) + lu(k,328) = lu(k,328) * lu(k,324) + lu(k,329) = lu(k,329) * lu(k,324) + lu(k,330) = lu(k,330) * lu(k,324) + lu(k,716) = lu(k,716) - lu(k,325) * lu(k,714) + lu(k,717) = lu(k,717) - lu(k,326) * lu(k,714) + lu(k,723) = lu(k,723) - lu(k,327) * lu(k,714) + lu(k,725) = lu(k,725) - lu(k,328) * lu(k,714) + lu(k,726) = lu(k,726) - lu(k,329) * lu(k,714) + lu(k,728) = lu(k,728) - lu(k,330) * lu(k,714) + lu(k,1070) = lu(k,1070) - lu(k,325) * lu(k,1049) + lu(k,1073) = lu(k,1073) - lu(k,326) * lu(k,1049) + lu(k,1081) = lu(k,1081) - lu(k,327) * lu(k,1049) + lu(k,1085) = lu(k,1085) - lu(k,328) * lu(k,1049) + lu(k,1086) = lu(k,1086) - lu(k,329) * lu(k,1049) + lu(k,1088) = lu(k,1088) - lu(k,330) * lu(k,1049) + lu(k,1258) = lu(k,1258) - lu(k,325) * lu(k,1228) + lu(k,1261) = lu(k,1261) - lu(k,326) * lu(k,1228) + lu(k,1269) = lu(k,1269) - lu(k,327) * lu(k,1228) + lu(k,1273) = lu(k,1273) - lu(k,328) * lu(k,1228) + lu(k,1274) = lu(k,1274) - lu(k,329) * lu(k,1228) + lu(k,1276) = lu(k,1276) - lu(k,330) * lu(k,1228) + lu(k,1292) = lu(k,1292) - lu(k,325) * lu(k,1283) + lu(k,1293) = lu(k,1293) - lu(k,326) * lu(k,1283) + lu(k,1301) = lu(k,1301) - lu(k,327) * lu(k,1283) + lu(k,1305) = lu(k,1305) - lu(k,328) * lu(k,1283) + lu(k,1306) = lu(k,1306) - lu(k,329) * lu(k,1283) + lu(k,1308) = lu(k,1308) - lu(k,330) * lu(k,1283) + lu(k,1341) = lu(k,1341) - lu(k,325) * lu(k,1337) + lu(k,1342) = lu(k,1342) - lu(k,326) * lu(k,1337) + lu(k,1350) = lu(k,1350) - lu(k,327) * lu(k,1337) + lu(k,1354) = lu(k,1354) - lu(k,328) * lu(k,1337) + lu(k,1355) = lu(k,1355) - lu(k,329) * lu(k,1337) + lu(k,1357) = lu(k,1357) - lu(k,330) * lu(k,1337) + lu(k,331) = 1._r8 / lu(k,331) + lu(k,332) = lu(k,332) * lu(k,331) + lu(k,333) = lu(k,333) * lu(k,331) + lu(k,334) = lu(k,334) * lu(k,331) + lu(k,335) = lu(k,335) * lu(k,331) + lu(k,561) = lu(k,561) - lu(k,332) * lu(k,560) + lu(k,563) = lu(k,563) - lu(k,333) * lu(k,560) + lu(k,565) = lu(k,565) - lu(k,334) * lu(k,560) + lu(k,566) = lu(k,566) - lu(k,335) * lu(k,560) + lu(k,589) = lu(k,589) - lu(k,332) * lu(k,588) + lu(k,592) = lu(k,592) - lu(k,333) * lu(k,588) + lu(k,600) = lu(k,600) - lu(k,334) * lu(k,588) + lu(k,602) = lu(k,602) - lu(k,335) * lu(k,588) + lu(k,620) = - lu(k,332) * lu(k,619) + lu(k,625) = - lu(k,333) * lu(k,619) + lu(k,637) = lu(k,637) - lu(k,334) * lu(k,619) + lu(k,640) = lu(k,640) - lu(k,335) * lu(k,619) + lu(k,690) = lu(k,690) - lu(k,332) * lu(k,689) + lu(k,694) = lu(k,694) - lu(k,333) * lu(k,689) + lu(k,706) = lu(k,706) - lu(k,334) * lu(k,689) + lu(k,709) = lu(k,709) - lu(k,335) * lu(k,689) + lu(k,763) = lu(k,763) - lu(k,332) * lu(k,759) + lu(k,769) = lu(k,769) - lu(k,333) * lu(k,759) + lu(k,785) = lu(k,785) - lu(k,334) * lu(k,759) + lu(k,789) = lu(k,789) - lu(k,335) * lu(k,759) + lu(k,833) = lu(k,833) - lu(k,332) * lu(k,826) + lu(k,840) = lu(k,840) - lu(k,333) * lu(k,826) + lu(k,856) = lu(k,856) - lu(k,334) * lu(k,826) + lu(k,861) = lu(k,861) - lu(k,335) * lu(k,826) + lu(k,1117) = - lu(k,332) * lu(k,1112) + lu(k,1126) = lu(k,1126) - lu(k,333) * lu(k,1112) + lu(k,1143) = lu(k,1143) - lu(k,334) * lu(k,1112) + lu(k,1148) = lu(k,1148) - lu(k,335) * lu(k,1112) + lu(k,1240) = lu(k,1240) - lu(k,332) * lu(k,1229) + lu(k,1251) = lu(k,1251) - lu(k,333) * lu(k,1229) + lu(k,1268) = lu(k,1268) - lu(k,334) * lu(k,1229) + lu(k,1273) = lu(k,1273) - lu(k,335) * lu(k,1229) + lu(k,337) = 1._r8 / lu(k,337) + lu(k,338) = lu(k,338) * lu(k,337) + lu(k,339) = lu(k,339) * lu(k,337) + lu(k,340) = lu(k,340) * lu(k,337) + lu(k,341) = lu(k,341) * lu(k,337) + lu(k,342) = lu(k,342) * lu(k,337) + lu(k,343) = lu(k,343) * lu(k,337) + lu(k,344) = lu(k,344) * lu(k,337) + lu(k,917) = - lu(k,338) * lu(k,899) + lu(k,918) = - lu(k,339) * lu(k,899) + lu(k,921) = lu(k,921) - lu(k,340) * lu(k,899) + lu(k,924) = lu(k,924) - lu(k,341) * lu(k,899) + lu(k,925) = lu(k,925) - lu(k,342) * lu(k,899) + lu(k,926) = lu(k,926) - lu(k,343) * lu(k,899) + lu(k,928) = lu(k,928) - lu(k,344) * lu(k,899) + lu(k,938) = lu(k,938) - lu(k,338) * lu(k,931) + lu(k,939) = lu(k,939) - lu(k,339) * lu(k,931) + lu(k,942) = lu(k,942) - lu(k,340) * lu(k,931) + lu(k,945) = lu(k,945) - lu(k,341) * lu(k,931) + lu(k,946) = lu(k,946) - lu(k,342) * lu(k,931) + lu(k,947) = - lu(k,343) * lu(k,931) + lu(k,949) = lu(k,949) - lu(k,344) * lu(k,931) + lu(k,1032) = lu(k,1032) - lu(k,338) * lu(k,1001) + lu(k,1033) = lu(k,1033) - lu(k,339) * lu(k,1001) + lu(k,1036) = lu(k,1036) - lu(k,340) * lu(k,1001) + lu(k,1039) = lu(k,1039) - lu(k,341) * lu(k,1001) + lu(k,1040) = lu(k,1040) - lu(k,342) * lu(k,1001) + lu(k,1041) = lu(k,1041) - lu(k,343) * lu(k,1001) + lu(k,1043) = lu(k,1043) - lu(k,344) * lu(k,1001) + lu(k,1298) = lu(k,1298) - lu(k,338) * lu(k,1284) + lu(k,1299) = lu(k,1299) - lu(k,339) * lu(k,1284) + lu(k,1302) = lu(k,1302) - lu(k,340) * lu(k,1284) + lu(k,1305) = lu(k,1305) - lu(k,341) * lu(k,1284) + lu(k,1306) = lu(k,1306) - lu(k,342) * lu(k,1284) + lu(k,1307) = lu(k,1307) - lu(k,343) * lu(k,1284) + lu(k,1309) = lu(k,1309) - lu(k,344) * lu(k,1284) + lu(k,1321) = - lu(k,338) * lu(k,1313) + lu(k,1322) = lu(k,1322) - lu(k,339) * lu(k,1313) + lu(k,1325) = lu(k,1325) - lu(k,340) * lu(k,1313) + lu(k,1328) = lu(k,1328) - lu(k,341) * lu(k,1313) + lu(k,1329) = lu(k,1329) - lu(k,342) * lu(k,1313) + lu(k,1330) = lu(k,1330) - lu(k,343) * lu(k,1313) + lu(k,1332) = - lu(k,344) * lu(k,1313) + lu(k,345) = 1._r8 / lu(k,345) + lu(k,346) = lu(k,346) * lu(k,345) + lu(k,347) = lu(k,347) * lu(k,345) + lu(k,348) = lu(k,348) * lu(k,345) + lu(k,349) = lu(k,349) * lu(k,345) + lu(k,350) = lu(k,350) * lu(k,345) + lu(k,418) = - lu(k,346) * lu(k,416) + lu(k,420) = - lu(k,347) * lu(k,416) + lu(k,421) = lu(k,421) - lu(k,348) * lu(k,416) + lu(k,426) = lu(k,426) - lu(k,349) * lu(k,416) + lu(k,428) = lu(k,428) - lu(k,350) * lu(k,416) + lu(k,764) = lu(k,764) - lu(k,346) * lu(k,760) + lu(k,775) = lu(k,775) - lu(k,347) * lu(k,760) + lu(k,777) = lu(k,777) - lu(k,348) * lu(k,760) + lu(k,789) = lu(k,789) - lu(k,349) * lu(k,760) + lu(k,792) = lu(k,792) - lu(k,350) * lu(k,760) + lu(k,835) = lu(k,835) - lu(k,346) * lu(k,827) + lu(k,846) = lu(k,846) - lu(k,347) * lu(k,827) + lu(k,848) = lu(k,848) - lu(k,348) * lu(k,827) + lu(k,861) = lu(k,861) - lu(k,349) * lu(k,827) + lu(k,865) = - lu(k,350) * lu(k,827) + lu(k,1012) = lu(k,1012) - lu(k,346) * lu(k,1002) + lu(k,1024) = lu(k,1024) - lu(k,347) * lu(k,1002) + lu(k,1026) = lu(k,1026) - lu(k,348) * lu(k,1002) + lu(k,1039) = lu(k,1039) - lu(k,349) * lu(k,1002) + lu(k,1043) = lu(k,1043) - lu(k,350) * lu(k,1002) + lu(k,1056) = - lu(k,346) * lu(k,1050) + lu(k,1069) = lu(k,1069) - lu(k,347) * lu(k,1050) + lu(k,1072) = lu(k,1072) - lu(k,348) * lu(k,1050) + lu(k,1085) = lu(k,1085) - lu(k,349) * lu(k,1050) + lu(k,1089) = lu(k,1089) - lu(k,350) * lu(k,1050) + lu(k,1120) = - lu(k,346) * lu(k,1113) + lu(k,1132) = lu(k,1132) - lu(k,347) * lu(k,1113) + lu(k,1135) = - lu(k,348) * lu(k,1113) + lu(k,1148) = lu(k,1148) - lu(k,349) * lu(k,1113) + lu(k,1152) = - lu(k,350) * lu(k,1113) + lu(k,1243) = lu(k,1243) - lu(k,346) * lu(k,1230) + lu(k,1257) = lu(k,1257) - lu(k,347) * lu(k,1230) + lu(k,1260) = lu(k,1260) - lu(k,348) * lu(k,1230) + lu(k,1273) = lu(k,1273) - lu(k,349) * lu(k,1230) + lu(k,1277) = lu(k,1277) - lu(k,350) * lu(k,1230) + end do + end subroutine lu_fac08 + subroutine lu_fac09( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,353) = 1._r8 / lu(k,353) + lu(k,354) = lu(k,354) * lu(k,353) + lu(k,355) = lu(k,355) * lu(k,353) + lu(k,356) = lu(k,356) * lu(k,353) + lu(k,357) = lu(k,357) * lu(k,353) + lu(k,358) = lu(k,358) * lu(k,353) + lu(k,359) = lu(k,359) * lu(k,353) + lu(k,360) = lu(k,360) * lu(k,353) + lu(k,838) = lu(k,838) - lu(k,354) * lu(k,828) + lu(k,850) = lu(k,850) - lu(k,355) * lu(k,828) + lu(k,851) = lu(k,851) - lu(k,356) * lu(k,828) + lu(k,853) = lu(k,853) - lu(k,357) * lu(k,828) + lu(k,856) = lu(k,856) - lu(k,358) * lu(k,828) + lu(k,861) = lu(k,861) - lu(k,359) * lu(k,828) + lu(k,864) = lu(k,864) - lu(k,360) * lu(k,828) + lu(k,965) = - lu(k,354) * lu(k,958) + lu(k,971) = lu(k,971) - lu(k,355) * lu(k,958) + lu(k,972) = - lu(k,356) * lu(k,958) + lu(k,974) = - lu(k,357) * lu(k,958) + lu(k,977) = lu(k,977) - lu(k,358) * lu(k,958) + lu(k,982) = lu(k,982) - lu(k,359) * lu(k,958) + lu(k,985) = lu(k,985) - lu(k,360) * lu(k,958) + lu(k,1016) = lu(k,1016) - lu(k,354) * lu(k,1003) + lu(k,1028) = lu(k,1028) - lu(k,355) * lu(k,1003) + lu(k,1029) = lu(k,1029) - lu(k,356) * lu(k,1003) + lu(k,1031) = lu(k,1031) - lu(k,357) * lu(k,1003) + lu(k,1034) = lu(k,1034) - lu(k,358) * lu(k,1003) + lu(k,1039) = lu(k,1039) - lu(k,359) * lu(k,1003) + lu(k,1042) = lu(k,1042) - lu(k,360) * lu(k,1003) + lu(k,1061) = - lu(k,354) * lu(k,1051) + lu(k,1074) = lu(k,1074) - lu(k,355) * lu(k,1051) + lu(k,1075) = lu(k,1075) - lu(k,356) * lu(k,1051) + lu(k,1077) = lu(k,1077) - lu(k,357) * lu(k,1051) + lu(k,1080) = lu(k,1080) - lu(k,358) * lu(k,1051) + lu(k,1085) = lu(k,1085) - lu(k,359) * lu(k,1051) + lu(k,1088) = lu(k,1088) - lu(k,360) * lu(k,1051) + lu(k,1249) = lu(k,1249) - lu(k,354) * lu(k,1231) + lu(k,1262) = lu(k,1262) - lu(k,355) * lu(k,1231) + lu(k,1263) = lu(k,1263) - lu(k,356) * lu(k,1231) + lu(k,1265) = lu(k,1265) - lu(k,357) * lu(k,1231) + lu(k,1268) = lu(k,1268) - lu(k,358) * lu(k,1231) + lu(k,1273) = lu(k,1273) - lu(k,359) * lu(k,1231) + lu(k,1276) = lu(k,1276) - lu(k,360) * lu(k,1231) + lu(k,361) = 1._r8 / lu(k,361) + lu(k,362) = lu(k,362) * lu(k,361) + lu(k,363) = lu(k,363) * lu(k,361) + lu(k,364) = lu(k,364) * lu(k,361) + lu(k,365) = lu(k,365) * lu(k,361) + lu(k,366) = lu(k,366) * lu(k,361) + lu(k,367) = lu(k,367) * lu(k,361) + lu(k,368) = lu(k,368) * lu(k,361) + lu(k,369) = lu(k,369) * lu(k,361) + lu(k,370) = lu(k,370) * lu(k,361) + lu(k,431) = - lu(k,362) * lu(k,429) + lu(k,433) = lu(k,433) - lu(k,363) * lu(k,429) + lu(k,437) = lu(k,437) - lu(k,364) * lu(k,429) + lu(k,439) = lu(k,439) - lu(k,365) * lu(k,429) + lu(k,440) = - lu(k,366) * lu(k,429) + lu(k,441) = - lu(k,367) * lu(k,429) + lu(k,442) = lu(k,442) - lu(k,368) * lu(k,429) + lu(k,444) = lu(k,444) - lu(k,369) * lu(k,429) + lu(k,445) = lu(k,445) - lu(k,370) * lu(k,429) + lu(k,834) = lu(k,834) - lu(k,362) * lu(k,829) + lu(k,839) = lu(k,839) - lu(k,363) * lu(k,829) + lu(k,847) = lu(k,847) - lu(k,364) * lu(k,829) + lu(k,850) = lu(k,850) - lu(k,365) * lu(k,829) + lu(k,851) = lu(k,851) - lu(k,366) * lu(k,829) + lu(k,853) = lu(k,853) - lu(k,367) * lu(k,829) + lu(k,856) = lu(k,856) - lu(k,368) * lu(k,829) + lu(k,859) = lu(k,859) - lu(k,369) * lu(k,829) + lu(k,861) = lu(k,861) - lu(k,370) * lu(k,829) + lu(k,1011) = lu(k,1011) - lu(k,362) * lu(k,1004) + lu(k,1017) = lu(k,1017) - lu(k,363) * lu(k,1004) + lu(k,1025) = lu(k,1025) - lu(k,364) * lu(k,1004) + lu(k,1028) = lu(k,1028) - lu(k,365) * lu(k,1004) + lu(k,1029) = lu(k,1029) - lu(k,366) * lu(k,1004) + lu(k,1031) = lu(k,1031) - lu(k,367) * lu(k,1004) + lu(k,1034) = lu(k,1034) - lu(k,368) * lu(k,1004) + lu(k,1037) = lu(k,1037) - lu(k,369) * lu(k,1004) + lu(k,1039) = lu(k,1039) - lu(k,370) * lu(k,1004) + lu(k,1119) = lu(k,1119) - lu(k,362) * lu(k,1114) + lu(k,1125) = lu(k,1125) - lu(k,363) * lu(k,1114) + lu(k,1134) = lu(k,1134) - lu(k,364) * lu(k,1114) + lu(k,1137) = lu(k,1137) - lu(k,365) * lu(k,1114) + lu(k,1138) = lu(k,1138) - lu(k,366) * lu(k,1114) + lu(k,1140) = lu(k,1140) - lu(k,367) * lu(k,1114) + lu(k,1143) = lu(k,1143) - lu(k,368) * lu(k,1114) + lu(k,1146) = lu(k,1146) - lu(k,369) * lu(k,1114) + lu(k,1148) = lu(k,1148) - lu(k,370) * lu(k,1114) + lu(k,372) = 1._r8 / lu(k,372) + lu(k,373) = lu(k,373) * lu(k,372) + lu(k,374) = lu(k,374) * lu(k,372) + lu(k,375) = lu(k,375) * lu(k,372) + lu(k,376) = lu(k,376) * lu(k,372) + lu(k,377) = lu(k,377) * lu(k,372) + lu(k,378) = lu(k,378) * lu(k,372) + lu(k,379) = lu(k,379) * lu(k,372) + lu(k,380) = lu(k,380) * lu(k,372) + lu(k,381) = lu(k,381) * lu(k,372) + lu(k,539) = - lu(k,373) * lu(k,536) + lu(k,540) = lu(k,540) - lu(k,374) * lu(k,536) + lu(k,547) = lu(k,547) - lu(k,375) * lu(k,536) + lu(k,548) = - lu(k,376) * lu(k,536) + lu(k,549) = lu(k,549) - lu(k,377) * lu(k,536) + lu(k,552) = lu(k,552) - lu(k,378) * lu(k,536) + lu(k,556) = lu(k,556) - lu(k,379) * lu(k,536) + lu(k,558) = - lu(k,380) * lu(k,536) + lu(k,559) = lu(k,559) - lu(k,381) * lu(k,536) + lu(k,836) = lu(k,836) - lu(k,373) * lu(k,830) + lu(k,837) = lu(k,837) - lu(k,374) * lu(k,830) + lu(k,850) = lu(k,850) - lu(k,375) * lu(k,830) + lu(k,851) = lu(k,851) - lu(k,376) * lu(k,830) + lu(k,853) = lu(k,853) - lu(k,377) * lu(k,830) + lu(k,856) = lu(k,856) - lu(k,378) * lu(k,830) + lu(k,861) = lu(k,861) - lu(k,379) * lu(k,830) + lu(k,864) = lu(k,864) - lu(k,380) * lu(k,830) + lu(k,865) = lu(k,865) - lu(k,381) * lu(k,830) + lu(k,1014) = lu(k,1014) - lu(k,373) * lu(k,1005) + lu(k,1015) = lu(k,1015) - lu(k,374) * lu(k,1005) + lu(k,1028) = lu(k,1028) - lu(k,375) * lu(k,1005) + lu(k,1029) = lu(k,1029) - lu(k,376) * lu(k,1005) + lu(k,1031) = lu(k,1031) - lu(k,377) * lu(k,1005) + lu(k,1034) = lu(k,1034) - lu(k,378) * lu(k,1005) + lu(k,1039) = lu(k,1039) - lu(k,379) * lu(k,1005) + lu(k,1042) = lu(k,1042) - lu(k,380) * lu(k,1005) + lu(k,1043) = lu(k,1043) - lu(k,381) * lu(k,1005) + lu(k,1246) = lu(k,1246) - lu(k,373) * lu(k,1232) + lu(k,1247) = lu(k,1247) - lu(k,374) * lu(k,1232) + lu(k,1262) = lu(k,1262) - lu(k,375) * lu(k,1232) + lu(k,1263) = lu(k,1263) - lu(k,376) * lu(k,1232) + lu(k,1265) = lu(k,1265) - lu(k,377) * lu(k,1232) + lu(k,1268) = lu(k,1268) - lu(k,378) * lu(k,1232) + lu(k,1273) = lu(k,1273) - lu(k,379) * lu(k,1232) + lu(k,1276) = lu(k,1276) - lu(k,380) * lu(k,1232) + lu(k,1277) = lu(k,1277) - lu(k,381) * lu(k,1232) + lu(k,385) = 1._r8 / lu(k,385) + lu(k,386) = lu(k,386) * lu(k,385) + lu(k,387) = lu(k,387) * lu(k,385) + lu(k,388) = lu(k,388) * lu(k,385) + lu(k,389) = lu(k,389) * lu(k,385) + lu(k,390) = lu(k,390) * lu(k,385) + lu(k,391) = lu(k,391) * lu(k,385) + lu(k,392) = lu(k,392) * lu(k,385) + lu(k,393) = lu(k,393) * lu(k,385) + lu(k,766) = lu(k,766) - lu(k,386) * lu(k,761) + lu(k,777) = lu(k,777) - lu(k,387) * lu(k,761) + lu(k,779) = lu(k,779) - lu(k,388) * lu(k,761) + lu(k,780) = lu(k,780) - lu(k,389) * lu(k,761) + lu(k,782) = lu(k,782) - lu(k,390) * lu(k,761) + lu(k,785) = lu(k,785) - lu(k,391) * lu(k,761) + lu(k,789) = lu(k,789) - lu(k,392) * lu(k,761) + lu(k,791) = lu(k,791) - lu(k,393) * lu(k,761) + lu(k,837) = lu(k,837) - lu(k,386) * lu(k,831) + lu(k,848) = lu(k,848) - lu(k,387) * lu(k,831) + lu(k,850) = lu(k,850) - lu(k,388) * lu(k,831) + lu(k,851) = lu(k,851) - lu(k,389) * lu(k,831) + lu(k,853) = lu(k,853) - lu(k,390) * lu(k,831) + lu(k,856) = lu(k,856) - lu(k,391) * lu(k,831) + lu(k,861) = lu(k,861) - lu(k,392) * lu(k,831) + lu(k,864) = lu(k,864) - lu(k,393) * lu(k,831) + lu(k,964) = - lu(k,386) * lu(k,959) + lu(k,969) = lu(k,969) - lu(k,387) * lu(k,959) + lu(k,971) = lu(k,971) - lu(k,388) * lu(k,959) + lu(k,972) = lu(k,972) - lu(k,389) * lu(k,959) + lu(k,974) = lu(k,974) - lu(k,390) * lu(k,959) + lu(k,977) = lu(k,977) - lu(k,391) * lu(k,959) + lu(k,982) = lu(k,982) - lu(k,392) * lu(k,959) + lu(k,985) = lu(k,985) - lu(k,393) * lu(k,959) + lu(k,1015) = lu(k,1015) - lu(k,386) * lu(k,1006) + lu(k,1026) = lu(k,1026) - lu(k,387) * lu(k,1006) + lu(k,1028) = lu(k,1028) - lu(k,388) * lu(k,1006) + lu(k,1029) = lu(k,1029) - lu(k,389) * lu(k,1006) + lu(k,1031) = lu(k,1031) - lu(k,390) * lu(k,1006) + lu(k,1034) = lu(k,1034) - lu(k,391) * lu(k,1006) + lu(k,1039) = lu(k,1039) - lu(k,392) * lu(k,1006) + lu(k,1042) = lu(k,1042) - lu(k,393) * lu(k,1006) + lu(k,1247) = lu(k,1247) - lu(k,386) * lu(k,1233) + lu(k,1260) = lu(k,1260) - lu(k,387) * lu(k,1233) + lu(k,1262) = lu(k,1262) - lu(k,388) * lu(k,1233) + lu(k,1263) = lu(k,1263) - lu(k,389) * lu(k,1233) + lu(k,1265) = lu(k,1265) - lu(k,390) * lu(k,1233) + lu(k,1268) = lu(k,1268) - lu(k,391) * lu(k,1233) + lu(k,1273) = lu(k,1273) - lu(k,392) * lu(k,1233) + lu(k,1276) = lu(k,1276) - lu(k,393) * lu(k,1233) + lu(k,395) = 1._r8 / lu(k,395) + lu(k,396) = lu(k,396) * lu(k,395) + lu(k,397) = lu(k,397) * lu(k,395) + lu(k,398) = lu(k,398) * lu(k,395) + lu(k,399) = lu(k,399) * lu(k,395) + lu(k,400) = lu(k,400) * lu(k,395) + lu(k,401) = lu(k,401) * lu(k,395) + lu(k,450) = lu(k,450) - lu(k,396) * lu(k,447) + lu(k,452) = lu(k,452) - lu(k,397) * lu(k,447) + lu(k,453) = lu(k,453) - lu(k,398) * lu(k,447) + lu(k,455) = lu(k,455) - lu(k,399) * lu(k,447) + lu(k,456) = lu(k,456) - lu(k,400) * lu(k,447) + lu(k,457) = - lu(k,401) * lu(k,447) + lu(k,878) = lu(k,878) - lu(k,396) * lu(k,870) + lu(k,880) = lu(k,880) - lu(k,397) * lu(k,870) + lu(k,881) = lu(k,881) - lu(k,398) * lu(k,870) + lu(k,887) = lu(k,887) - lu(k,399) * lu(k,870) + lu(k,888) = lu(k,888) - lu(k,400) * lu(k,870) + lu(k,891) = - lu(k,401) * lu(k,870) + lu(k,936) = lu(k,936) - lu(k,396) * lu(k,932) + lu(k,938) = lu(k,938) - lu(k,397) * lu(k,932) + lu(k,939) = lu(k,939) - lu(k,398) * lu(k,932) + lu(k,945) = lu(k,945) - lu(k,399) * lu(k,932) + lu(k,946) = lu(k,946) - lu(k,400) * lu(k,932) + lu(k,949) = lu(k,949) - lu(k,401) * lu(k,932) + lu(k,973) = lu(k,973) - lu(k,396) * lu(k,960) + lu(k,975) = lu(k,975) - lu(k,397) * lu(k,960) + lu(k,976) = lu(k,976) - lu(k,398) * lu(k,960) + lu(k,982) = lu(k,982) - lu(k,399) * lu(k,960) + lu(k,983) = lu(k,983) - lu(k,400) * lu(k,960) + lu(k,986) = lu(k,986) - lu(k,401) * lu(k,960) + lu(k,1030) = lu(k,1030) - lu(k,396) * lu(k,1007) + lu(k,1032) = lu(k,1032) - lu(k,397) * lu(k,1007) + lu(k,1033) = lu(k,1033) - lu(k,398) * lu(k,1007) + lu(k,1039) = lu(k,1039) - lu(k,399) * lu(k,1007) + lu(k,1040) = lu(k,1040) - lu(k,400) * lu(k,1007) + lu(k,1043) = lu(k,1043) - lu(k,401) * lu(k,1007) + lu(k,1264) = lu(k,1264) - lu(k,396) * lu(k,1234) + lu(k,1266) = lu(k,1266) - lu(k,397) * lu(k,1234) + lu(k,1267) = lu(k,1267) - lu(k,398) * lu(k,1234) + lu(k,1273) = lu(k,1273) - lu(k,399) * lu(k,1234) + lu(k,1274) = lu(k,1274) - lu(k,400) * lu(k,1234) + lu(k,1277) = lu(k,1277) - lu(k,401) * lu(k,1234) + lu(k,1296) = lu(k,1296) - lu(k,396) * lu(k,1285) + lu(k,1298) = lu(k,1298) - lu(k,397) * lu(k,1285) + lu(k,1299) = lu(k,1299) - lu(k,398) * lu(k,1285) + lu(k,1305) = lu(k,1305) - lu(k,399) * lu(k,1285) + lu(k,1306) = lu(k,1306) - lu(k,400) * lu(k,1285) + lu(k,1309) = lu(k,1309) - lu(k,401) * lu(k,1285) + end do + end subroutine lu_fac09 + subroutine lu_fac10( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,402) = 1._r8 / lu(k,402) + lu(k,403) = lu(k,403) * lu(k,402) + lu(k,404) = lu(k,404) * lu(k,402) + lu(k,405) = lu(k,405) * lu(k,402) + lu(k,406) = lu(k,406) * lu(k,402) + lu(k,407) = lu(k,407) * lu(k,402) + lu(k,408) = lu(k,408) * lu(k,402) + lu(k,409) = lu(k,409) * lu(k,402) + lu(k,808) = lu(k,808) - lu(k,403) * lu(k,804) + lu(k,815) = lu(k,815) - lu(k,404) * lu(k,804) + lu(k,817) = - lu(k,405) * lu(k,804) + lu(k,818) = lu(k,818) - lu(k,406) * lu(k,804) + lu(k,819) = lu(k,819) - lu(k,407) * lu(k,804) + lu(k,820) = - lu(k,408) * lu(k,804) + lu(k,822) = lu(k,822) - lu(k,409) * lu(k,804) + lu(k,1027) = lu(k,1027) - lu(k,403) * lu(k,1008) + lu(k,1036) = lu(k,1036) - lu(k,404) * lu(k,1008) + lu(k,1038) = - lu(k,405) * lu(k,1008) + lu(k,1039) = lu(k,1039) - lu(k,406) * lu(k,1008) + lu(k,1040) = lu(k,1040) - lu(k,407) * lu(k,1008) + lu(k,1041) = lu(k,1041) - lu(k,408) * lu(k,1008) + lu(k,1043) = lu(k,1043) - lu(k,409) * lu(k,1008) + lu(k,1092) = - lu(k,403) * lu(k,1090) + lu(k,1099) = lu(k,1099) - lu(k,404) * lu(k,1090) + lu(k,1101) = - lu(k,405) * lu(k,1090) + lu(k,1102) = - lu(k,406) * lu(k,1090) + lu(k,1103) = - lu(k,407) * lu(k,1090) + lu(k,1104) = lu(k,1104) - lu(k,408) * lu(k,1090) + lu(k,1106) = - lu(k,409) * lu(k,1090) + lu(k,1175) = lu(k,1175) - lu(k,403) * lu(k,1170) + lu(k,1184) = lu(k,1184) - lu(k,404) * lu(k,1170) + lu(k,1186) = lu(k,1186) - lu(k,405) * lu(k,1170) + lu(k,1187) = lu(k,1187) - lu(k,406) * lu(k,1170) + lu(k,1188) = lu(k,1188) - lu(k,407) * lu(k,1170) + lu(k,1189) = lu(k,1189) - lu(k,408) * lu(k,1170) + lu(k,1191) = lu(k,1191) - lu(k,409) * lu(k,1170) + lu(k,1261) = lu(k,1261) - lu(k,403) * lu(k,1235) + lu(k,1270) = lu(k,1270) - lu(k,404) * lu(k,1235) + lu(k,1272) = lu(k,1272) - lu(k,405) * lu(k,1235) + lu(k,1273) = lu(k,1273) - lu(k,406) * lu(k,1235) + lu(k,1274) = lu(k,1274) - lu(k,407) * lu(k,1235) + lu(k,1275) = lu(k,1275) - lu(k,408) * lu(k,1235) + lu(k,1277) = lu(k,1277) - lu(k,409) * lu(k,1235) + lu(k,1293) = lu(k,1293) - lu(k,403) * lu(k,1286) + lu(k,1302) = lu(k,1302) - lu(k,404) * lu(k,1286) + lu(k,1304) = - lu(k,405) * lu(k,1286) + lu(k,1305) = lu(k,1305) - lu(k,406) * lu(k,1286) + lu(k,1306) = lu(k,1306) - lu(k,407) * lu(k,1286) + lu(k,1307) = lu(k,1307) - lu(k,408) * lu(k,1286) + lu(k,1309) = lu(k,1309) - lu(k,409) * lu(k,1286) + lu(k,410) = 1._r8 / lu(k,410) + lu(k,411) = lu(k,411) * lu(k,410) + lu(k,412) = lu(k,412) * lu(k,410) + lu(k,413) = lu(k,413) * lu(k,410) + lu(k,414) = lu(k,414) * lu(k,410) + lu(k,451) = lu(k,451) - lu(k,411) * lu(k,448) + lu(k,454) = lu(k,454) - lu(k,412) * lu(k,448) + lu(k,455) = lu(k,455) - lu(k,413) * lu(k,448) + lu(k,457) = lu(k,457) - lu(k,414) * lu(k,448) + lu(k,477) = lu(k,477) - lu(k,411) * lu(k,472) + lu(k,479) = lu(k,479) - lu(k,412) * lu(k,472) + lu(k,480) = lu(k,480) - lu(k,413) * lu(k,472) + lu(k,481) = - lu(k,414) * lu(k,472) + lu(k,529) = - lu(k,411) * lu(k,524) + lu(k,531) = lu(k,531) - lu(k,412) * lu(k,524) + lu(k,532) = lu(k,532) - lu(k,413) * lu(k,524) + lu(k,533) = lu(k,533) - lu(k,414) * lu(k,524) + lu(k,609) = - lu(k,411) * lu(k,605) + lu(k,611) = lu(k,611) - lu(k,412) * lu(k,605) + lu(k,612) = lu(k,612) - lu(k,413) * lu(k,605) + lu(k,615) = lu(k,615) - lu(k,414) * lu(k,605) + lu(k,810) = - lu(k,411) * lu(k,805) + lu(k,816) = lu(k,816) - lu(k,412) * lu(k,805) + lu(k,818) = lu(k,818) - lu(k,413) * lu(k,805) + lu(k,822) = lu(k,822) - lu(k,414) * lu(k,805) + lu(k,916) = lu(k,916) - lu(k,411) * lu(k,900) + lu(k,922) = lu(k,922) - lu(k,412) * lu(k,900) + lu(k,924) = lu(k,924) - lu(k,413) * lu(k,900) + lu(k,928) = lu(k,928) - lu(k,414) * lu(k,900) + lu(k,937) = - lu(k,411) * lu(k,933) + lu(k,943) = - lu(k,412) * lu(k,933) + lu(k,945) = lu(k,945) - lu(k,413) * lu(k,933) + lu(k,949) = lu(k,949) - lu(k,414) * lu(k,933) + lu(k,1140) = lu(k,1140) - lu(k,411) * lu(k,1115) + lu(k,1146) = lu(k,1146) - lu(k,412) * lu(k,1115) + lu(k,1148) = lu(k,1148) - lu(k,413) * lu(k,1115) + lu(k,1152) = lu(k,1152) - lu(k,414) * lu(k,1115) + lu(k,1265) = lu(k,1265) - lu(k,411) * lu(k,1236) + lu(k,1271) = lu(k,1271) - lu(k,412) * lu(k,1236) + lu(k,1273) = lu(k,1273) - lu(k,413) * lu(k,1236) + lu(k,1277) = lu(k,1277) - lu(k,414) * lu(k,1236) + lu(k,1297) = lu(k,1297) - lu(k,411) * lu(k,1287) + lu(k,1303) = lu(k,1303) - lu(k,412) * lu(k,1287) + lu(k,1305) = lu(k,1305) - lu(k,413) * lu(k,1287) + lu(k,1309) = lu(k,1309) - lu(k,414) * lu(k,1287) + lu(k,1320) = lu(k,1320) - lu(k,411) * lu(k,1314) + lu(k,1326) = lu(k,1326) - lu(k,412) * lu(k,1314) + lu(k,1328) = lu(k,1328) - lu(k,413) * lu(k,1314) + lu(k,1332) = lu(k,1332) - lu(k,414) * lu(k,1314) + lu(k,417) = 1._r8 / lu(k,417) + lu(k,418) = lu(k,418) * lu(k,417) + lu(k,419) = lu(k,419) * lu(k,417) + lu(k,420) = lu(k,420) * lu(k,417) + lu(k,421) = lu(k,421) * lu(k,417) + lu(k,422) = lu(k,422) * lu(k,417) + lu(k,423) = lu(k,423) * lu(k,417) + lu(k,424) = lu(k,424) * lu(k,417) + lu(k,425) = lu(k,425) * lu(k,417) + lu(k,426) = lu(k,426) * lu(k,417) + lu(k,427) = lu(k,427) * lu(k,417) + lu(k,428) = lu(k,428) * lu(k,417) + lu(k,764) = lu(k,764) - lu(k,418) * lu(k,762) + lu(k,766) = lu(k,766) - lu(k,419) * lu(k,762) + lu(k,775) = lu(k,775) - lu(k,420) * lu(k,762) + lu(k,777) = lu(k,777) - lu(k,421) * lu(k,762) + lu(k,779) = lu(k,779) - lu(k,422) * lu(k,762) + lu(k,780) = lu(k,780) - lu(k,423) * lu(k,762) + lu(k,782) = lu(k,782) - lu(k,424) * lu(k,762) + lu(k,785) = lu(k,785) - lu(k,425) * lu(k,762) + lu(k,789) = lu(k,789) - lu(k,426) * lu(k,762) + lu(k,791) = lu(k,791) - lu(k,427) * lu(k,762) + lu(k,792) = lu(k,792) - lu(k,428) * lu(k,762) + lu(k,835) = lu(k,835) - lu(k,418) * lu(k,832) + lu(k,837) = lu(k,837) - lu(k,419) * lu(k,832) + lu(k,846) = lu(k,846) - lu(k,420) * lu(k,832) + lu(k,848) = lu(k,848) - lu(k,421) * lu(k,832) + lu(k,850) = lu(k,850) - lu(k,422) * lu(k,832) + lu(k,851) = lu(k,851) - lu(k,423) * lu(k,832) + lu(k,853) = lu(k,853) - lu(k,424) * lu(k,832) + lu(k,856) = lu(k,856) - lu(k,425) * lu(k,832) + lu(k,861) = lu(k,861) - lu(k,426) * lu(k,832) + lu(k,864) = lu(k,864) - lu(k,427) * lu(k,832) + lu(k,865) = lu(k,865) - lu(k,428) * lu(k,832) + lu(k,1012) = lu(k,1012) - lu(k,418) * lu(k,1009) + lu(k,1015) = lu(k,1015) - lu(k,419) * lu(k,1009) + lu(k,1024) = lu(k,1024) - lu(k,420) * lu(k,1009) + lu(k,1026) = lu(k,1026) - lu(k,421) * lu(k,1009) + lu(k,1028) = lu(k,1028) - lu(k,422) * lu(k,1009) + lu(k,1029) = lu(k,1029) - lu(k,423) * lu(k,1009) + lu(k,1031) = lu(k,1031) - lu(k,424) * lu(k,1009) + lu(k,1034) = lu(k,1034) - lu(k,425) * lu(k,1009) + lu(k,1039) = lu(k,1039) - lu(k,426) * lu(k,1009) + lu(k,1042) = lu(k,1042) - lu(k,427) * lu(k,1009) + lu(k,1043) = lu(k,1043) - lu(k,428) * lu(k,1009) + lu(k,1243) = lu(k,1243) - lu(k,418) * lu(k,1237) + lu(k,1247) = lu(k,1247) - lu(k,419) * lu(k,1237) + lu(k,1257) = lu(k,1257) - lu(k,420) * lu(k,1237) + lu(k,1260) = lu(k,1260) - lu(k,421) * lu(k,1237) + lu(k,1262) = lu(k,1262) - lu(k,422) * lu(k,1237) + lu(k,1263) = lu(k,1263) - lu(k,423) * lu(k,1237) + lu(k,1265) = lu(k,1265) - lu(k,424) * lu(k,1237) + lu(k,1268) = lu(k,1268) - lu(k,425) * lu(k,1237) + lu(k,1273) = lu(k,1273) - lu(k,426) * lu(k,1237) + lu(k,1276) = lu(k,1276) - lu(k,427) * lu(k,1237) + lu(k,1277) = lu(k,1277) - lu(k,428) * lu(k,1237) + lu(k,430) = 1._r8 / lu(k,430) + lu(k,431) = lu(k,431) * lu(k,430) + lu(k,432) = lu(k,432) * lu(k,430) + lu(k,433) = lu(k,433) * lu(k,430) + lu(k,434) = lu(k,434) * lu(k,430) + lu(k,435) = lu(k,435) * lu(k,430) + lu(k,436) = lu(k,436) * lu(k,430) + lu(k,437) = lu(k,437) * lu(k,430) + lu(k,438) = lu(k,438) * lu(k,430) + lu(k,439) = lu(k,439) * lu(k,430) + lu(k,440) = lu(k,440) * lu(k,430) + lu(k,441) = lu(k,441) * lu(k,430) + lu(k,442) = lu(k,442) * lu(k,430) + lu(k,443) = lu(k,443) * lu(k,430) + lu(k,444) = lu(k,444) * lu(k,430) + lu(k,445) = lu(k,445) * lu(k,430) + lu(k,1055) = - lu(k,431) * lu(k,1052) + lu(k,1060) = lu(k,1060) - lu(k,432) * lu(k,1052) + lu(k,1062) = lu(k,1062) - lu(k,433) * lu(k,1052) + lu(k,1063) = lu(k,1063) - lu(k,434) * lu(k,1052) + lu(k,1066) = lu(k,1066) - lu(k,435) * lu(k,1052) + lu(k,1069) = lu(k,1069) - lu(k,436) * lu(k,1052) + lu(k,1071) = lu(k,1071) - lu(k,437) * lu(k,1052) + lu(k,1072) = lu(k,1072) - lu(k,438) * lu(k,1052) + lu(k,1074) = lu(k,1074) - lu(k,439) * lu(k,1052) + lu(k,1075) = lu(k,1075) - lu(k,440) * lu(k,1052) + lu(k,1077) = lu(k,1077) - lu(k,441) * lu(k,1052) + lu(k,1080) = lu(k,1080) - lu(k,442) * lu(k,1052) + lu(k,1081) = lu(k,1081) - lu(k,443) * lu(k,1052) + lu(k,1083) = lu(k,1083) - lu(k,444) * lu(k,1052) + lu(k,1085) = lu(k,1085) - lu(k,445) * lu(k,1052) + lu(k,1119) = lu(k,1119) - lu(k,431) * lu(k,1116) + lu(k,1123) = lu(k,1123) - lu(k,432) * lu(k,1116) + lu(k,1125) = lu(k,1125) - lu(k,433) * lu(k,1116) + lu(k,1126) = lu(k,1126) - lu(k,434) * lu(k,1116) + lu(k,1129) = lu(k,1129) - lu(k,435) * lu(k,1116) + lu(k,1132) = lu(k,1132) - lu(k,436) * lu(k,1116) + lu(k,1134) = lu(k,1134) - lu(k,437) * lu(k,1116) + lu(k,1135) = lu(k,1135) - lu(k,438) * lu(k,1116) + lu(k,1137) = lu(k,1137) - lu(k,439) * lu(k,1116) + lu(k,1138) = lu(k,1138) - lu(k,440) * lu(k,1116) + lu(k,1140) = lu(k,1140) - lu(k,441) * lu(k,1116) + lu(k,1143) = lu(k,1143) - lu(k,442) * lu(k,1116) + lu(k,1144) = lu(k,1144) - lu(k,443) * lu(k,1116) + lu(k,1146) = lu(k,1146) - lu(k,444) * lu(k,1116) + lu(k,1148) = lu(k,1148) - lu(k,445) * lu(k,1116) + lu(k,1242) = lu(k,1242) - lu(k,431) * lu(k,1238) + lu(k,1248) = lu(k,1248) - lu(k,432) * lu(k,1238) + lu(k,1250) = lu(k,1250) - lu(k,433) * lu(k,1238) + lu(k,1251) = lu(k,1251) - lu(k,434) * lu(k,1238) + lu(k,1254) = lu(k,1254) - lu(k,435) * lu(k,1238) + lu(k,1257) = lu(k,1257) - lu(k,436) * lu(k,1238) + lu(k,1259) = lu(k,1259) - lu(k,437) * lu(k,1238) + lu(k,1260) = lu(k,1260) - lu(k,438) * lu(k,1238) + lu(k,1262) = lu(k,1262) - lu(k,439) * lu(k,1238) + lu(k,1263) = lu(k,1263) - lu(k,440) * lu(k,1238) + lu(k,1265) = lu(k,1265) - lu(k,441) * lu(k,1238) + lu(k,1268) = lu(k,1268) - lu(k,442) * lu(k,1238) + lu(k,1269) = lu(k,1269) - lu(k,443) * lu(k,1238) + lu(k,1271) = lu(k,1271) - lu(k,444) * lu(k,1238) + lu(k,1273) = lu(k,1273) - lu(k,445) * lu(k,1238) + end do + end subroutine lu_fac10 + subroutine lu_fac11( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,449) = 1._r8 / lu(k,449) + lu(k,450) = lu(k,450) * lu(k,449) + lu(k,451) = lu(k,451) * lu(k,449) + lu(k,452) = lu(k,452) * lu(k,449) + lu(k,453) = lu(k,453) * lu(k,449) + lu(k,454) = lu(k,454) * lu(k,449) + lu(k,455) = lu(k,455) * lu(k,449) + lu(k,456) = lu(k,456) * lu(k,449) + lu(k,457) = lu(k,457) * lu(k,449) + lu(k,878) = lu(k,878) - lu(k,450) * lu(k,871) + lu(k,879) = lu(k,879) - lu(k,451) * lu(k,871) + lu(k,880) = lu(k,880) - lu(k,452) * lu(k,871) + lu(k,881) = lu(k,881) - lu(k,453) * lu(k,871) + lu(k,885) = - lu(k,454) * lu(k,871) + lu(k,887) = lu(k,887) - lu(k,455) * lu(k,871) + lu(k,888) = lu(k,888) - lu(k,456) * lu(k,871) + lu(k,891) = lu(k,891) - lu(k,457) * lu(k,871) + lu(k,915) = lu(k,915) - lu(k,450) * lu(k,901) + lu(k,916) = lu(k,916) - lu(k,451) * lu(k,901) + lu(k,917) = lu(k,917) - lu(k,452) * lu(k,901) + lu(k,918) = lu(k,918) - lu(k,453) * lu(k,901) + lu(k,922) = lu(k,922) - lu(k,454) * lu(k,901) + lu(k,924) = lu(k,924) - lu(k,455) * lu(k,901) + lu(k,925) = lu(k,925) - lu(k,456) * lu(k,901) + lu(k,928) = lu(k,928) - lu(k,457) * lu(k,901) + lu(k,936) = lu(k,936) - lu(k,450) * lu(k,934) + lu(k,937) = lu(k,937) - lu(k,451) * lu(k,934) + lu(k,938) = lu(k,938) - lu(k,452) * lu(k,934) + lu(k,939) = lu(k,939) - lu(k,453) * lu(k,934) + lu(k,943) = lu(k,943) - lu(k,454) * lu(k,934) + lu(k,945) = lu(k,945) - lu(k,455) * lu(k,934) + lu(k,946) = lu(k,946) - lu(k,456) * lu(k,934) + lu(k,949) = lu(k,949) - lu(k,457) * lu(k,934) + lu(k,973) = lu(k,973) - lu(k,450) * lu(k,961) + lu(k,974) = lu(k,974) - lu(k,451) * lu(k,961) + lu(k,975) = lu(k,975) - lu(k,452) * lu(k,961) + lu(k,976) = lu(k,976) - lu(k,453) * lu(k,961) + lu(k,980) = lu(k,980) - lu(k,454) * lu(k,961) + lu(k,982) = lu(k,982) - lu(k,455) * lu(k,961) + lu(k,983) = lu(k,983) - lu(k,456) * lu(k,961) + lu(k,986) = lu(k,986) - lu(k,457) * lu(k,961) + lu(k,1264) = lu(k,1264) - lu(k,450) * lu(k,1239) + lu(k,1265) = lu(k,1265) - lu(k,451) * lu(k,1239) + lu(k,1266) = lu(k,1266) - lu(k,452) * lu(k,1239) + lu(k,1267) = lu(k,1267) - lu(k,453) * lu(k,1239) + lu(k,1271) = lu(k,1271) - lu(k,454) * lu(k,1239) + lu(k,1273) = lu(k,1273) - lu(k,455) * lu(k,1239) + lu(k,1274) = lu(k,1274) - lu(k,456) * lu(k,1239) + lu(k,1277) = lu(k,1277) - lu(k,457) * lu(k,1239) + lu(k,1296) = lu(k,1296) - lu(k,450) * lu(k,1288) + lu(k,1297) = lu(k,1297) - lu(k,451) * lu(k,1288) + lu(k,1298) = lu(k,1298) - lu(k,452) * lu(k,1288) + lu(k,1299) = lu(k,1299) - lu(k,453) * lu(k,1288) + lu(k,1303) = lu(k,1303) - lu(k,454) * lu(k,1288) + lu(k,1305) = lu(k,1305) - lu(k,455) * lu(k,1288) + lu(k,1306) = lu(k,1306) - lu(k,456) * lu(k,1288) + lu(k,1309) = lu(k,1309) - lu(k,457) * lu(k,1288) + lu(k,460) = 1._r8 / lu(k,460) + lu(k,461) = lu(k,461) * lu(k,460) + lu(k,462) = lu(k,462) * lu(k,460) + lu(k,463) = lu(k,463) * lu(k,460) + lu(k,506) = lu(k,506) - lu(k,461) * lu(k,503) + lu(k,515) = lu(k,515) - lu(k,462) * lu(k,503) + lu(k,516) = - lu(k,463) * lu(k,503) + lu(k,542) = lu(k,542) - lu(k,461) * lu(k,537) + lu(k,557) = - lu(k,462) * lu(k,537) + lu(k,558) = lu(k,558) - lu(k,463) * lu(k,537) + lu(k,563) = lu(k,563) - lu(k,461) * lu(k,561) + lu(k,567) = - lu(k,462) * lu(k,561) + lu(k,568) = - lu(k,463) * lu(k,561) + lu(k,581) = lu(k,581) - lu(k,461) * lu(k,580) + lu(k,584) = - lu(k,462) * lu(k,580) + lu(k,585) = - lu(k,463) * lu(k,580) + lu(k,592) = lu(k,592) - lu(k,461) * lu(k,589) + lu(k,603) = - lu(k,462) * lu(k,589) + lu(k,604) = - lu(k,463) * lu(k,589) + lu(k,625) = lu(k,625) - lu(k,461) * lu(k,620) + lu(k,641) = - lu(k,462) * lu(k,620) + lu(k,642) = - lu(k,463) * lu(k,620) + lu(k,670) = - lu(k,461) * lu(k,668) + lu(k,682) = - lu(k,462) * lu(k,668) + lu(k,683) = - lu(k,463) * lu(k,668) + lu(k,694) = lu(k,694) - lu(k,461) * lu(k,690) + lu(k,710) = - lu(k,462) * lu(k,690) + lu(k,711) = - lu(k,463) * lu(k,690) + lu(k,733) = lu(k,733) - lu(k,461) * lu(k,730) + lu(k,751) = - lu(k,462) * lu(k,730) + lu(k,752) = - lu(k,463) * lu(k,730) + lu(k,769) = lu(k,769) - lu(k,461) * lu(k,763) + lu(k,790) = - lu(k,462) * lu(k,763) + lu(k,791) = lu(k,791) - lu(k,463) * lu(k,763) + lu(k,840) = lu(k,840) - lu(k,461) * lu(k,833) + lu(k,862) = lu(k,862) - lu(k,462) * lu(k,833) + lu(k,864) = lu(k,864) - lu(k,463) * lu(k,833) + lu(k,905) = - lu(k,461) * lu(k,902) + lu(k,925) = lu(k,925) - lu(k,462) * lu(k,902) + lu(k,927) = lu(k,927) - lu(k,463) * lu(k,902) + lu(k,1018) = - lu(k,461) * lu(k,1010) + lu(k,1040) = lu(k,1040) - lu(k,462) * lu(k,1010) + lu(k,1042) = lu(k,1042) - lu(k,463) * lu(k,1010) + lu(k,1063) = lu(k,1063) - lu(k,461) * lu(k,1053) + lu(k,1086) = lu(k,1086) - lu(k,462) * lu(k,1053) + lu(k,1088) = lu(k,1088) - lu(k,463) * lu(k,1053) + lu(k,1126) = lu(k,1126) - lu(k,461) * lu(k,1117) + lu(k,1149) = lu(k,1149) - lu(k,462) * lu(k,1117) + lu(k,1151) = lu(k,1151) - lu(k,463) * lu(k,1117) + lu(k,1251) = lu(k,1251) - lu(k,461) * lu(k,1240) + lu(k,1274) = lu(k,1274) - lu(k,462) * lu(k,1240) + lu(k,1276) = lu(k,1276) - lu(k,463) * lu(k,1240) + lu(k,465) = 1._r8 / lu(k,465) + lu(k,466) = lu(k,466) * lu(k,465) + lu(k,467) = lu(k,467) * lu(k,465) + lu(k,468) = lu(k,468) * lu(k,465) + lu(k,469) = lu(k,469) * lu(k,465) + lu(k,470) = lu(k,470) * lu(k,465) + lu(k,716) = lu(k,716) - lu(k,466) * lu(k,715) + lu(k,722) = - lu(k,467) * lu(k,715) + lu(k,725) = lu(k,725) - lu(k,468) * lu(k,715) + lu(k,726) = lu(k,726) - lu(k,469) * lu(k,715) + lu(k,729) = - lu(k,470) * lu(k,715) + lu(k,873) = lu(k,873) - lu(k,466) * lu(k,872) + lu(k,882) = lu(k,882) - lu(k,467) * lu(k,872) + lu(k,887) = lu(k,887) - lu(k,468) * lu(k,872) + lu(k,888) = lu(k,888) - lu(k,469) * lu(k,872) + lu(k,891) = lu(k,891) - lu(k,470) * lu(k,872) + lu(k,909) = lu(k,909) - lu(k,466) * lu(k,903) + lu(k,919) = lu(k,919) - lu(k,467) * lu(k,903) + lu(k,924) = lu(k,924) - lu(k,468) * lu(k,903) + lu(k,925) = lu(k,925) - lu(k,469) * lu(k,903) + lu(k,928) = lu(k,928) - lu(k,470) * lu(k,903) + lu(k,1070) = lu(k,1070) - lu(k,466) * lu(k,1054) + lu(k,1080) = lu(k,1080) - lu(k,467) * lu(k,1054) + lu(k,1085) = lu(k,1085) - lu(k,468) * lu(k,1054) + lu(k,1086) = lu(k,1086) - lu(k,469) * lu(k,1054) + lu(k,1089) = lu(k,1089) - lu(k,470) * lu(k,1054) + lu(k,1133) = - lu(k,466) * lu(k,1118) + lu(k,1143) = lu(k,1143) - lu(k,467) * lu(k,1118) + lu(k,1148) = lu(k,1148) - lu(k,468) * lu(k,1118) + lu(k,1149) = lu(k,1149) - lu(k,469) * lu(k,1118) + lu(k,1152) = lu(k,1152) - lu(k,470) * lu(k,1118) + lu(k,1258) = lu(k,1258) - lu(k,466) * lu(k,1241) + lu(k,1268) = lu(k,1268) - lu(k,467) * lu(k,1241) + lu(k,1273) = lu(k,1273) - lu(k,468) * lu(k,1241) + lu(k,1274) = lu(k,1274) - lu(k,469) * lu(k,1241) + lu(k,1277) = lu(k,1277) - lu(k,470) * lu(k,1241) + lu(k,1292) = lu(k,1292) - lu(k,466) * lu(k,1289) + lu(k,1300) = lu(k,1300) - lu(k,467) * lu(k,1289) + lu(k,1305) = lu(k,1305) - lu(k,468) * lu(k,1289) + lu(k,1306) = lu(k,1306) - lu(k,469) * lu(k,1289) + lu(k,1309) = lu(k,1309) - lu(k,470) * lu(k,1289) + lu(k,1316) = lu(k,1316) - lu(k,466) * lu(k,1315) + lu(k,1323) = lu(k,1323) - lu(k,467) * lu(k,1315) + lu(k,1328) = lu(k,1328) - lu(k,468) * lu(k,1315) + lu(k,1329) = lu(k,1329) - lu(k,469) * lu(k,1315) + lu(k,1332) = lu(k,1332) - lu(k,470) * lu(k,1315) + lu(k,1341) = lu(k,1341) - lu(k,466) * lu(k,1338) + lu(k,1349) = lu(k,1349) - lu(k,467) * lu(k,1338) + lu(k,1354) = lu(k,1354) - lu(k,468) * lu(k,1338) + lu(k,1355) = lu(k,1355) - lu(k,469) * lu(k,1338) + lu(k,1358) = - lu(k,470) * lu(k,1338) + lu(k,1363) = - lu(k,466) * lu(k,1361) + lu(k,1370) = - lu(k,467) * lu(k,1361) + lu(k,1375) = lu(k,1375) - lu(k,468) * lu(k,1361) + lu(k,1376) = lu(k,1376) - lu(k,469) * lu(k,1361) + lu(k,1379) = lu(k,1379) - lu(k,470) * lu(k,1361) + lu(k,473) = 1._r8 / lu(k,473) + lu(k,474) = lu(k,474) * lu(k,473) + lu(k,475) = lu(k,475) * lu(k,473) + lu(k,476) = lu(k,476) * lu(k,473) + lu(k,477) = lu(k,477) * lu(k,473) + lu(k,478) = lu(k,478) * lu(k,473) + lu(k,479) = lu(k,479) * lu(k,473) + lu(k,480) = lu(k,480) * lu(k,473) + lu(k,481) = lu(k,481) * lu(k,473) + lu(k,625) = lu(k,625) - lu(k,474) * lu(k,621) + lu(k,626) = lu(k,626) - lu(k,475) * lu(k,621) + lu(k,634) = lu(k,634) - lu(k,476) * lu(k,621) + lu(k,636) = lu(k,636) - lu(k,477) * lu(k,621) + lu(k,637) = lu(k,637) - lu(k,478) * lu(k,621) + lu(k,639) = lu(k,639) - lu(k,479) * lu(k,621) + lu(k,640) = lu(k,640) - lu(k,480) * lu(k,621) + lu(k,643) = - lu(k,481) * lu(k,621) + lu(k,649) = lu(k,649) - lu(k,474) * lu(k,646) + lu(k,650) = - lu(k,475) * lu(k,646) + lu(k,656) = lu(k,656) - lu(k,476) * lu(k,646) + lu(k,658) = lu(k,658) - lu(k,477) * lu(k,646) + lu(k,659) = lu(k,659) - lu(k,478) * lu(k,646) + lu(k,660) = lu(k,660) - lu(k,479) * lu(k,646) + lu(k,661) = lu(k,661) - lu(k,480) * lu(k,646) + lu(k,664) = - lu(k,481) * lu(k,646) + lu(k,840) = lu(k,840) - lu(k,474) * lu(k,834) + lu(k,841) = lu(k,841) - lu(k,475) * lu(k,834) + lu(k,850) = lu(k,850) - lu(k,476) * lu(k,834) + lu(k,853) = lu(k,853) - lu(k,477) * lu(k,834) + lu(k,856) = lu(k,856) - lu(k,478) * lu(k,834) + lu(k,859) = lu(k,859) - lu(k,479) * lu(k,834) + lu(k,861) = lu(k,861) - lu(k,480) * lu(k,834) + lu(k,865) = lu(k,865) - lu(k,481) * lu(k,834) + lu(k,1018) = lu(k,1018) - lu(k,474) * lu(k,1011) + lu(k,1019) = lu(k,1019) - lu(k,475) * lu(k,1011) + lu(k,1028) = lu(k,1028) - lu(k,476) * lu(k,1011) + lu(k,1031) = lu(k,1031) - lu(k,477) * lu(k,1011) + lu(k,1034) = lu(k,1034) - lu(k,478) * lu(k,1011) + lu(k,1037) = lu(k,1037) - lu(k,479) * lu(k,1011) + lu(k,1039) = lu(k,1039) - lu(k,480) * lu(k,1011) + lu(k,1043) = lu(k,1043) - lu(k,481) * lu(k,1011) + lu(k,1063) = lu(k,1063) - lu(k,474) * lu(k,1055) + lu(k,1064) = - lu(k,475) * lu(k,1055) + lu(k,1074) = lu(k,1074) - lu(k,476) * lu(k,1055) + lu(k,1077) = lu(k,1077) - lu(k,477) * lu(k,1055) + lu(k,1080) = lu(k,1080) - lu(k,478) * lu(k,1055) + lu(k,1083) = lu(k,1083) - lu(k,479) * lu(k,1055) + lu(k,1085) = lu(k,1085) - lu(k,480) * lu(k,1055) + lu(k,1089) = lu(k,1089) - lu(k,481) * lu(k,1055) + lu(k,1126) = lu(k,1126) - lu(k,474) * lu(k,1119) + lu(k,1127) = lu(k,1127) - lu(k,475) * lu(k,1119) + lu(k,1137) = lu(k,1137) - lu(k,476) * lu(k,1119) + lu(k,1140) = lu(k,1140) - lu(k,477) * lu(k,1119) + lu(k,1143) = lu(k,1143) - lu(k,478) * lu(k,1119) + lu(k,1146) = lu(k,1146) - lu(k,479) * lu(k,1119) + lu(k,1148) = lu(k,1148) - lu(k,480) * lu(k,1119) + lu(k,1152) = lu(k,1152) - lu(k,481) * lu(k,1119) + lu(k,1251) = lu(k,1251) - lu(k,474) * lu(k,1242) + lu(k,1252) = lu(k,1252) - lu(k,475) * lu(k,1242) + lu(k,1262) = lu(k,1262) - lu(k,476) * lu(k,1242) + lu(k,1265) = lu(k,1265) - lu(k,477) * lu(k,1242) + lu(k,1268) = lu(k,1268) - lu(k,478) * lu(k,1242) + lu(k,1271) = lu(k,1271) - lu(k,479) * lu(k,1242) + lu(k,1273) = lu(k,1273) - lu(k,480) * lu(k,1242) + lu(k,1277) = lu(k,1277) - lu(k,481) * lu(k,1242) + end do + end subroutine lu_fac11 + subroutine lu_fac12( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,484) = 1._r8 / lu(k,484) + lu(k,485) = lu(k,485) * lu(k,484) + lu(k,486) = lu(k,486) * lu(k,484) + lu(k,487) = lu(k,487) * lu(k,484) + lu(k,488) = lu(k,488) * lu(k,484) + lu(k,489) = lu(k,489) * lu(k,484) + lu(k,490) = lu(k,490) * lu(k,484) + lu(k,491) = lu(k,491) * lu(k,484) + lu(k,492) = lu(k,492) * lu(k,484) + lu(k,493) = lu(k,493) * lu(k,484) + lu(k,494) = lu(k,494) * lu(k,484) + lu(k,765) = lu(k,765) - lu(k,485) * lu(k,764) + lu(k,771) = lu(k,771) - lu(k,486) * lu(k,764) + lu(k,775) = lu(k,775) - lu(k,487) * lu(k,764) + lu(k,777) = lu(k,777) - lu(k,488) * lu(k,764) + lu(k,779) = lu(k,779) - lu(k,489) * lu(k,764) + lu(k,780) = lu(k,780) - lu(k,490) * lu(k,764) + lu(k,782) = lu(k,782) - lu(k,491) * lu(k,764) + lu(k,785) = lu(k,785) - lu(k,492) * lu(k,764) + lu(k,789) = lu(k,789) - lu(k,493) * lu(k,764) + lu(k,792) = lu(k,792) - lu(k,494) * lu(k,764) + lu(k,836) = lu(k,836) - lu(k,485) * lu(k,835) + lu(k,842) = lu(k,842) - lu(k,486) * lu(k,835) + lu(k,846) = lu(k,846) - lu(k,487) * lu(k,835) + lu(k,848) = lu(k,848) - lu(k,488) * lu(k,835) + lu(k,850) = lu(k,850) - lu(k,489) * lu(k,835) + lu(k,851) = lu(k,851) - lu(k,490) * lu(k,835) + lu(k,853) = lu(k,853) - lu(k,491) * lu(k,835) + lu(k,856) = lu(k,856) - lu(k,492) * lu(k,835) + lu(k,861) = lu(k,861) - lu(k,493) * lu(k,835) + lu(k,865) = lu(k,865) - lu(k,494) * lu(k,835) + lu(k,1014) = lu(k,1014) - lu(k,485) * lu(k,1012) + lu(k,1020) = - lu(k,486) * lu(k,1012) + lu(k,1024) = lu(k,1024) - lu(k,487) * lu(k,1012) + lu(k,1026) = lu(k,1026) - lu(k,488) * lu(k,1012) + lu(k,1028) = lu(k,1028) - lu(k,489) * lu(k,1012) + lu(k,1029) = lu(k,1029) - lu(k,490) * lu(k,1012) + lu(k,1031) = lu(k,1031) - lu(k,491) * lu(k,1012) + lu(k,1034) = lu(k,1034) - lu(k,492) * lu(k,1012) + lu(k,1039) = lu(k,1039) - lu(k,493) * lu(k,1012) + lu(k,1043) = lu(k,1043) - lu(k,494) * lu(k,1012) + lu(k,1058) = - lu(k,485) * lu(k,1056) + lu(k,1065) = lu(k,1065) - lu(k,486) * lu(k,1056) + lu(k,1069) = lu(k,1069) - lu(k,487) * lu(k,1056) + lu(k,1072) = lu(k,1072) - lu(k,488) * lu(k,1056) + lu(k,1074) = lu(k,1074) - lu(k,489) * lu(k,1056) + lu(k,1075) = lu(k,1075) - lu(k,490) * lu(k,1056) + lu(k,1077) = lu(k,1077) - lu(k,491) * lu(k,1056) + lu(k,1080) = lu(k,1080) - lu(k,492) * lu(k,1056) + lu(k,1085) = lu(k,1085) - lu(k,493) * lu(k,1056) + lu(k,1089) = lu(k,1089) - lu(k,494) * lu(k,1056) + lu(k,1121) = lu(k,1121) - lu(k,485) * lu(k,1120) + lu(k,1128) = lu(k,1128) - lu(k,486) * lu(k,1120) + lu(k,1132) = lu(k,1132) - lu(k,487) * lu(k,1120) + lu(k,1135) = lu(k,1135) - lu(k,488) * lu(k,1120) + lu(k,1137) = lu(k,1137) - lu(k,489) * lu(k,1120) + lu(k,1138) = lu(k,1138) - lu(k,490) * lu(k,1120) + lu(k,1140) = lu(k,1140) - lu(k,491) * lu(k,1120) + lu(k,1143) = lu(k,1143) - lu(k,492) * lu(k,1120) + lu(k,1148) = lu(k,1148) - lu(k,493) * lu(k,1120) + lu(k,1152) = lu(k,1152) - lu(k,494) * lu(k,1120) + lu(k,1246) = lu(k,1246) - lu(k,485) * lu(k,1243) + lu(k,1253) = lu(k,1253) - lu(k,486) * lu(k,1243) + lu(k,1257) = lu(k,1257) - lu(k,487) * lu(k,1243) + lu(k,1260) = lu(k,1260) - lu(k,488) * lu(k,1243) + lu(k,1262) = lu(k,1262) - lu(k,489) * lu(k,1243) + lu(k,1263) = lu(k,1263) - lu(k,490) * lu(k,1243) + lu(k,1265) = lu(k,1265) - lu(k,491) * lu(k,1243) + lu(k,1268) = lu(k,1268) - lu(k,492) * lu(k,1243) + lu(k,1273) = lu(k,1273) - lu(k,493) * lu(k,1243) + lu(k,1277) = lu(k,1277) - lu(k,494) * lu(k,1243) + lu(k,495) = 1._r8 / lu(k,495) + lu(k,496) = lu(k,496) * lu(k,495) + lu(k,497) = lu(k,497) * lu(k,495) + lu(k,498) = lu(k,498) * lu(k,495) + lu(k,499) = lu(k,499) * lu(k,495) + lu(k,500) = lu(k,500) * lu(k,495) + lu(k,501) = lu(k,501) * lu(k,495) + lu(k,502) = lu(k,502) * lu(k,495) + lu(k,508) = lu(k,508) - lu(k,496) * lu(k,504) + lu(k,510) = lu(k,510) - lu(k,497) * lu(k,504) + lu(k,511) = lu(k,511) - lu(k,498) * lu(k,504) + lu(k,513) = lu(k,513) - lu(k,499) * lu(k,504) + lu(k,514) = lu(k,514) - lu(k,500) * lu(k,504) + lu(k,515) = lu(k,515) - lu(k,501) * lu(k,504) + lu(k,517) = lu(k,517) - lu(k,502) * lu(k,504) + lu(k,794) = lu(k,794) - lu(k,496) * lu(k,793) + lu(k,795) = - lu(k,497) * lu(k,793) + lu(k,796) = - lu(k,498) * lu(k,793) + lu(k,799) = - lu(k,499) * lu(k,793) + lu(k,800) = lu(k,800) - lu(k,500) * lu(k,793) + lu(k,801) = lu(k,801) - lu(k,501) * lu(k,793) + lu(k,803) = lu(k,803) - lu(k,502) * lu(k,793) + lu(k,808) = lu(k,808) - lu(k,496) * lu(k,806) + lu(k,811) = lu(k,811) - lu(k,497) * lu(k,806) + lu(k,812) = lu(k,812) - lu(k,498) * lu(k,806) + lu(k,817) = lu(k,817) - lu(k,499) * lu(k,806) + lu(k,818) = lu(k,818) - lu(k,500) * lu(k,806) + lu(k,819) = lu(k,819) - lu(k,501) * lu(k,806) + lu(k,822) = lu(k,822) - lu(k,502) * lu(k,806) + lu(k,970) = lu(k,970) - lu(k,496) * lu(k,962) + lu(k,975) = lu(k,975) - lu(k,497) * lu(k,962) + lu(k,976) = lu(k,976) - lu(k,498) * lu(k,962) + lu(k,981) = lu(k,981) - lu(k,499) * lu(k,962) + lu(k,982) = lu(k,982) - lu(k,500) * lu(k,962) + lu(k,983) = lu(k,983) - lu(k,501) * lu(k,962) + lu(k,986) = lu(k,986) - lu(k,502) * lu(k,962) + lu(k,1027) = lu(k,1027) - lu(k,496) * lu(k,1013) + lu(k,1032) = lu(k,1032) - lu(k,497) * lu(k,1013) + lu(k,1033) = lu(k,1033) - lu(k,498) * lu(k,1013) + lu(k,1038) = lu(k,1038) - lu(k,499) * lu(k,1013) + lu(k,1039) = lu(k,1039) - lu(k,500) * lu(k,1013) + lu(k,1040) = lu(k,1040) - lu(k,501) * lu(k,1013) + lu(k,1043) = lu(k,1043) - lu(k,502) * lu(k,1013) + lu(k,1175) = lu(k,1175) - lu(k,496) * lu(k,1171) + lu(k,1180) = lu(k,1180) - lu(k,497) * lu(k,1171) + lu(k,1181) = lu(k,1181) - lu(k,498) * lu(k,1171) + lu(k,1186) = lu(k,1186) - lu(k,499) * lu(k,1171) + lu(k,1187) = lu(k,1187) - lu(k,500) * lu(k,1171) + lu(k,1188) = lu(k,1188) - lu(k,501) * lu(k,1171) + lu(k,1191) = lu(k,1191) - lu(k,502) * lu(k,1171) + lu(k,1261) = lu(k,1261) - lu(k,496) * lu(k,1244) + lu(k,1266) = lu(k,1266) - lu(k,497) * lu(k,1244) + lu(k,1267) = lu(k,1267) - lu(k,498) * lu(k,1244) + lu(k,1272) = lu(k,1272) - lu(k,499) * lu(k,1244) + lu(k,1273) = lu(k,1273) - lu(k,500) * lu(k,1244) + lu(k,1274) = lu(k,1274) - lu(k,501) * lu(k,1244) + lu(k,1277) = lu(k,1277) - lu(k,502) * lu(k,1244) + lu(k,1293) = lu(k,1293) - lu(k,496) * lu(k,1290) + lu(k,1298) = lu(k,1298) - lu(k,497) * lu(k,1290) + lu(k,1299) = lu(k,1299) - lu(k,498) * lu(k,1290) + lu(k,1304) = lu(k,1304) - lu(k,499) * lu(k,1290) + lu(k,1305) = lu(k,1305) - lu(k,500) * lu(k,1290) + lu(k,1306) = lu(k,1306) - lu(k,501) * lu(k,1290) + lu(k,1309) = lu(k,1309) - lu(k,502) * lu(k,1290) + lu(k,1364) = lu(k,1364) - lu(k,496) * lu(k,1362) + lu(k,1368) = - lu(k,497) * lu(k,1362) + lu(k,1369) = - lu(k,498) * lu(k,1362) + lu(k,1374) = lu(k,1374) - lu(k,499) * lu(k,1362) + lu(k,1375) = lu(k,1375) - lu(k,500) * lu(k,1362) + lu(k,1376) = lu(k,1376) - lu(k,501) * lu(k,1362) + lu(k,1379) = lu(k,1379) - lu(k,502) * lu(k,1362) + lu(k,505) = 1._r8 / lu(k,505) + lu(k,506) = lu(k,506) * lu(k,505) + lu(k,507) = lu(k,507) * lu(k,505) + lu(k,508) = lu(k,508) * lu(k,505) + lu(k,509) = lu(k,509) * lu(k,505) + lu(k,510) = lu(k,510) * lu(k,505) + lu(k,511) = lu(k,511) * lu(k,505) + lu(k,512) = lu(k,512) * lu(k,505) + lu(k,513) = lu(k,513) * lu(k,505) + lu(k,514) = lu(k,514) * lu(k,505) + lu(k,515) = lu(k,515) * lu(k,505) + lu(k,516) = lu(k,516) * lu(k,505) + lu(k,517) = lu(k,517) * lu(k,505) + lu(k,542) = lu(k,542) - lu(k,506) * lu(k,538) + lu(k,545) = lu(k,545) - lu(k,507) * lu(k,538) + lu(k,546) = - lu(k,508) * lu(k,538) + lu(k,547) = lu(k,547) - lu(k,509) * lu(k,538) + lu(k,550) = - lu(k,510) * lu(k,538) + lu(k,551) = - lu(k,511) * lu(k,538) + lu(k,552) = lu(k,552) - lu(k,512) * lu(k,538) + lu(k,555) = - lu(k,513) * lu(k,538) + lu(k,556) = lu(k,556) - lu(k,514) * lu(k,538) + lu(k,557) = lu(k,557) - lu(k,515) * lu(k,538) + lu(k,558) = lu(k,558) - lu(k,516) * lu(k,538) + lu(k,559) = lu(k,559) - lu(k,517) * lu(k,538) + lu(k,966) = lu(k,966) - lu(k,506) * lu(k,963) + lu(k,969) = lu(k,969) - lu(k,507) * lu(k,963) + lu(k,970) = lu(k,970) - lu(k,508) * lu(k,963) + lu(k,971) = lu(k,971) - lu(k,509) * lu(k,963) + lu(k,975) = lu(k,975) - lu(k,510) * lu(k,963) + lu(k,976) = lu(k,976) - lu(k,511) * lu(k,963) + lu(k,977) = lu(k,977) - lu(k,512) * lu(k,963) + lu(k,981) = lu(k,981) - lu(k,513) * lu(k,963) + lu(k,982) = lu(k,982) - lu(k,514) * lu(k,963) + lu(k,983) = lu(k,983) - lu(k,515) * lu(k,963) + lu(k,985) = lu(k,985) - lu(k,516) * lu(k,963) + lu(k,986) = lu(k,986) - lu(k,517) * lu(k,963) + lu(k,1063) = lu(k,1063) - lu(k,506) * lu(k,1057) + lu(k,1072) = lu(k,1072) - lu(k,507) * lu(k,1057) + lu(k,1073) = lu(k,1073) - lu(k,508) * lu(k,1057) + lu(k,1074) = lu(k,1074) - lu(k,509) * lu(k,1057) + lu(k,1078) = - lu(k,510) * lu(k,1057) + lu(k,1079) = lu(k,1079) - lu(k,511) * lu(k,1057) + lu(k,1080) = lu(k,1080) - lu(k,512) * lu(k,1057) + lu(k,1084) = lu(k,1084) - lu(k,513) * lu(k,1057) + lu(k,1085) = lu(k,1085) - lu(k,514) * lu(k,1057) + lu(k,1086) = lu(k,1086) - lu(k,515) * lu(k,1057) + lu(k,1088) = lu(k,1088) - lu(k,516) * lu(k,1057) + lu(k,1089) = lu(k,1089) - lu(k,517) * lu(k,1057) + lu(k,1173) = - lu(k,506) * lu(k,1172) + lu(k,1174) = lu(k,1174) - lu(k,507) * lu(k,1172) + lu(k,1175) = lu(k,1175) - lu(k,508) * lu(k,1172) + lu(k,1176) = lu(k,1176) - lu(k,509) * lu(k,1172) + lu(k,1180) = lu(k,1180) - lu(k,510) * lu(k,1172) + lu(k,1181) = lu(k,1181) - lu(k,511) * lu(k,1172) + lu(k,1182) = lu(k,1182) - lu(k,512) * lu(k,1172) + lu(k,1186) = lu(k,1186) - lu(k,513) * lu(k,1172) + lu(k,1187) = lu(k,1187) - lu(k,514) * lu(k,1172) + lu(k,1188) = lu(k,1188) - lu(k,515) * lu(k,1172) + lu(k,1190) = lu(k,1190) - lu(k,516) * lu(k,1172) + lu(k,1191) = lu(k,1191) - lu(k,517) * lu(k,1172) + lu(k,1251) = lu(k,1251) - lu(k,506) * lu(k,1245) + lu(k,1260) = lu(k,1260) - lu(k,507) * lu(k,1245) + lu(k,1261) = lu(k,1261) - lu(k,508) * lu(k,1245) + lu(k,1262) = lu(k,1262) - lu(k,509) * lu(k,1245) + lu(k,1266) = lu(k,1266) - lu(k,510) * lu(k,1245) + lu(k,1267) = lu(k,1267) - lu(k,511) * lu(k,1245) + lu(k,1268) = lu(k,1268) - lu(k,512) * lu(k,1245) + lu(k,1272) = lu(k,1272) - lu(k,513) * lu(k,1245) + lu(k,1273) = lu(k,1273) - lu(k,514) * lu(k,1245) + lu(k,1274) = lu(k,1274) - lu(k,515) * lu(k,1245) + lu(k,1276) = lu(k,1276) - lu(k,516) * lu(k,1245) + lu(k,1277) = lu(k,1277) - lu(k,517) * lu(k,1245) + lu(k,518) = 1._r8 / lu(k,518) + lu(k,519) = lu(k,519) * lu(k,518) + lu(k,520) = lu(k,520) * lu(k,518) + lu(k,521) = lu(k,521) * lu(k,518) + lu(k,522) = lu(k,522) * lu(k,518) + lu(k,523) = lu(k,523) * lu(k,518) + lu(k,543) = lu(k,543) - lu(k,519) * lu(k,539) + lu(k,544) = lu(k,544) - lu(k,520) * lu(k,539) + lu(k,547) = lu(k,547) - lu(k,521) * lu(k,539) + lu(k,552) = lu(k,552) - lu(k,522) * lu(k,539) + lu(k,556) = lu(k,556) - lu(k,523) * lu(k,539) + lu(k,594) = lu(k,594) - lu(k,519) * lu(k,590) + lu(k,595) = lu(k,595) - lu(k,520) * lu(k,590) + lu(k,597) = lu(k,597) - lu(k,521) * lu(k,590) + lu(k,600) = lu(k,600) - lu(k,522) * lu(k,590) + lu(k,602) = lu(k,602) - lu(k,523) * lu(k,590) + lu(k,627) = lu(k,627) - lu(k,519) * lu(k,622) + lu(k,631) = lu(k,631) - lu(k,520) * lu(k,622) + lu(k,634) = lu(k,634) - lu(k,521) * lu(k,622) + lu(k,637) = lu(k,637) - lu(k,522) * lu(k,622) + lu(k,640) = lu(k,640) - lu(k,523) * lu(k,622) + lu(k,651) = lu(k,651) - lu(k,519) * lu(k,647) + lu(k,654) = lu(k,654) - lu(k,520) * lu(k,647) + lu(k,656) = lu(k,656) - lu(k,521) * lu(k,647) + lu(k,659) = lu(k,659) - lu(k,522) * lu(k,647) + lu(k,661) = lu(k,661) - lu(k,523) * lu(k,647) + lu(k,671) = - lu(k,519) * lu(k,669) + lu(k,673) = lu(k,673) - lu(k,520) * lu(k,669) + lu(k,675) = lu(k,675) - lu(k,521) * lu(k,669) + lu(k,678) = lu(k,678) - lu(k,522) * lu(k,669) + lu(k,681) = lu(k,681) - lu(k,523) * lu(k,669) + lu(k,696) = lu(k,696) - lu(k,519) * lu(k,691) + lu(k,700) = lu(k,700) - lu(k,520) * lu(k,691) + lu(k,703) = lu(k,703) - lu(k,521) * lu(k,691) + lu(k,706) = lu(k,706) - lu(k,522) * lu(k,691) + lu(k,709) = lu(k,709) - lu(k,523) * lu(k,691) + lu(k,771) = lu(k,771) - lu(k,519) * lu(k,765) + lu(k,775) = lu(k,775) - lu(k,520) * lu(k,765) + lu(k,779) = lu(k,779) - lu(k,521) * lu(k,765) + lu(k,785) = lu(k,785) - lu(k,522) * lu(k,765) + lu(k,789) = lu(k,789) - lu(k,523) * lu(k,765) + lu(k,842) = lu(k,842) - lu(k,519) * lu(k,836) + lu(k,846) = lu(k,846) - lu(k,520) * lu(k,836) + lu(k,850) = lu(k,850) - lu(k,521) * lu(k,836) + lu(k,856) = lu(k,856) - lu(k,522) * lu(k,836) + lu(k,861) = lu(k,861) - lu(k,523) * lu(k,836) + lu(k,906) = - lu(k,519) * lu(k,904) + lu(k,908) = lu(k,908) - lu(k,520) * lu(k,904) + lu(k,913) = lu(k,913) - lu(k,521) * lu(k,904) + lu(k,919) = lu(k,919) - lu(k,522) * lu(k,904) + lu(k,924) = lu(k,924) - lu(k,523) * lu(k,904) + lu(k,1020) = lu(k,1020) - lu(k,519) * lu(k,1014) + lu(k,1024) = lu(k,1024) - lu(k,520) * lu(k,1014) + lu(k,1028) = lu(k,1028) - lu(k,521) * lu(k,1014) + lu(k,1034) = lu(k,1034) - lu(k,522) * lu(k,1014) + lu(k,1039) = lu(k,1039) - lu(k,523) * lu(k,1014) + lu(k,1065) = lu(k,1065) - lu(k,519) * lu(k,1058) + lu(k,1069) = lu(k,1069) - lu(k,520) * lu(k,1058) + lu(k,1074) = lu(k,1074) - lu(k,521) * lu(k,1058) + lu(k,1080) = lu(k,1080) - lu(k,522) * lu(k,1058) + lu(k,1085) = lu(k,1085) - lu(k,523) * lu(k,1058) + lu(k,1128) = lu(k,1128) - lu(k,519) * lu(k,1121) + lu(k,1132) = lu(k,1132) - lu(k,520) * lu(k,1121) + lu(k,1137) = lu(k,1137) - lu(k,521) * lu(k,1121) + lu(k,1143) = lu(k,1143) - lu(k,522) * lu(k,1121) + lu(k,1148) = lu(k,1148) - lu(k,523) * lu(k,1121) + lu(k,1253) = lu(k,1253) - lu(k,519) * lu(k,1246) + lu(k,1257) = lu(k,1257) - lu(k,520) * lu(k,1246) + lu(k,1262) = lu(k,1262) - lu(k,521) * lu(k,1246) + lu(k,1268) = lu(k,1268) - lu(k,522) * lu(k,1246) + lu(k,1273) = lu(k,1273) - lu(k,523) * lu(k,1246) + end do + end subroutine lu_fac12 + subroutine lu_fac13( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,525) = 1._r8 / lu(k,525) + lu(k,526) = lu(k,526) * lu(k,525) + lu(k,527) = lu(k,527) * lu(k,525) + lu(k,528) = lu(k,528) * lu(k,525) + lu(k,529) = lu(k,529) * lu(k,525) + lu(k,530) = lu(k,530) * lu(k,525) + lu(k,531) = lu(k,531) * lu(k,525) + lu(k,532) = lu(k,532) * lu(k,525) + lu(k,533) = lu(k,533) * lu(k,525) + lu(k,542) = lu(k,542) - lu(k,526) * lu(k,540) + lu(k,544) = lu(k,544) - lu(k,527) * lu(k,540) + lu(k,545) = lu(k,545) - lu(k,528) * lu(k,540) + lu(k,549) = lu(k,549) - lu(k,529) * lu(k,540) + lu(k,552) = lu(k,552) - lu(k,530) * lu(k,540) + lu(k,554) = lu(k,554) - lu(k,531) * lu(k,540) + lu(k,556) = lu(k,556) - lu(k,532) * lu(k,540) + lu(k,559) = lu(k,559) - lu(k,533) * lu(k,540) + lu(k,733) = lu(k,733) - lu(k,526) * lu(k,731) + lu(k,737) = lu(k,737) - lu(k,527) * lu(k,731) + lu(k,739) = lu(k,739) - lu(k,528) * lu(k,731) + lu(k,743) = - lu(k,529) * lu(k,731) + lu(k,746) = lu(k,746) - lu(k,530) * lu(k,731) + lu(k,748) = - lu(k,531) * lu(k,731) + lu(k,750) = lu(k,750) - lu(k,532) * lu(k,731) + lu(k,753) = - lu(k,533) * lu(k,731) + lu(k,769) = lu(k,769) - lu(k,526) * lu(k,766) + lu(k,775) = lu(k,775) - lu(k,527) * lu(k,766) + lu(k,777) = lu(k,777) - lu(k,528) * lu(k,766) + lu(k,782) = lu(k,782) - lu(k,529) * lu(k,766) + lu(k,785) = lu(k,785) - lu(k,530) * lu(k,766) + lu(k,787) = - lu(k,531) * lu(k,766) + lu(k,789) = lu(k,789) - lu(k,532) * lu(k,766) + lu(k,792) = lu(k,792) - lu(k,533) * lu(k,766) + lu(k,840) = lu(k,840) - lu(k,526) * lu(k,837) + lu(k,846) = lu(k,846) - lu(k,527) * lu(k,837) + lu(k,848) = lu(k,848) - lu(k,528) * lu(k,837) + lu(k,853) = lu(k,853) - lu(k,529) * lu(k,837) + lu(k,856) = lu(k,856) - lu(k,530) * lu(k,837) + lu(k,859) = lu(k,859) - lu(k,531) * lu(k,837) + lu(k,861) = lu(k,861) - lu(k,532) * lu(k,837) + lu(k,865) = lu(k,865) - lu(k,533) * lu(k,837) + lu(k,966) = lu(k,966) - lu(k,526) * lu(k,964) + lu(k,967) = - lu(k,527) * lu(k,964) + lu(k,969) = lu(k,969) - lu(k,528) * lu(k,964) + lu(k,974) = lu(k,974) - lu(k,529) * lu(k,964) + lu(k,977) = lu(k,977) - lu(k,530) * lu(k,964) + lu(k,980) = lu(k,980) - lu(k,531) * lu(k,964) + lu(k,982) = lu(k,982) - lu(k,532) * lu(k,964) + lu(k,986) = lu(k,986) - lu(k,533) * lu(k,964) + lu(k,1018) = lu(k,1018) - lu(k,526) * lu(k,1015) + lu(k,1024) = lu(k,1024) - lu(k,527) * lu(k,1015) + lu(k,1026) = lu(k,1026) - lu(k,528) * lu(k,1015) + lu(k,1031) = lu(k,1031) - lu(k,529) * lu(k,1015) + lu(k,1034) = lu(k,1034) - lu(k,530) * lu(k,1015) + lu(k,1037) = lu(k,1037) - lu(k,531) * lu(k,1015) + lu(k,1039) = lu(k,1039) - lu(k,532) * lu(k,1015) + lu(k,1043) = lu(k,1043) - lu(k,533) * lu(k,1015) + lu(k,1063) = lu(k,1063) - lu(k,526) * lu(k,1059) + lu(k,1069) = lu(k,1069) - lu(k,527) * lu(k,1059) + lu(k,1072) = lu(k,1072) - lu(k,528) * lu(k,1059) + lu(k,1077) = lu(k,1077) - lu(k,529) * lu(k,1059) + lu(k,1080) = lu(k,1080) - lu(k,530) * lu(k,1059) + lu(k,1083) = lu(k,1083) - lu(k,531) * lu(k,1059) + lu(k,1085) = lu(k,1085) - lu(k,532) * lu(k,1059) + lu(k,1089) = lu(k,1089) - lu(k,533) * lu(k,1059) + lu(k,1126) = lu(k,1126) - lu(k,526) * lu(k,1122) + lu(k,1132) = lu(k,1132) - lu(k,527) * lu(k,1122) + lu(k,1135) = lu(k,1135) - lu(k,528) * lu(k,1122) + lu(k,1140) = lu(k,1140) - lu(k,529) * lu(k,1122) + lu(k,1143) = lu(k,1143) - lu(k,530) * lu(k,1122) + lu(k,1146) = lu(k,1146) - lu(k,531) * lu(k,1122) + lu(k,1148) = lu(k,1148) - lu(k,532) * lu(k,1122) + lu(k,1152) = lu(k,1152) - lu(k,533) * lu(k,1122) + lu(k,1251) = lu(k,1251) - lu(k,526) * lu(k,1247) + lu(k,1257) = lu(k,1257) - lu(k,527) * lu(k,1247) + lu(k,1260) = lu(k,1260) - lu(k,528) * lu(k,1247) + lu(k,1265) = lu(k,1265) - lu(k,529) * lu(k,1247) + lu(k,1268) = lu(k,1268) - lu(k,530) * lu(k,1247) + lu(k,1271) = lu(k,1271) - lu(k,531) * lu(k,1247) + lu(k,1273) = lu(k,1273) - lu(k,532) * lu(k,1247) + lu(k,1277) = lu(k,1277) - lu(k,533) * lu(k,1247) + lu(k,541) = 1._r8 / lu(k,541) + lu(k,542) = lu(k,542) * lu(k,541) + lu(k,543) = lu(k,543) * lu(k,541) + lu(k,544) = lu(k,544) * lu(k,541) + lu(k,545) = lu(k,545) * lu(k,541) + lu(k,546) = lu(k,546) * lu(k,541) + lu(k,547) = lu(k,547) * lu(k,541) + lu(k,548) = lu(k,548) * lu(k,541) + lu(k,549) = lu(k,549) * lu(k,541) + lu(k,550) = lu(k,550) * lu(k,541) + lu(k,551) = lu(k,551) * lu(k,541) + lu(k,552) = lu(k,552) * lu(k,541) + lu(k,553) = lu(k,553) * lu(k,541) + lu(k,554) = lu(k,554) * lu(k,541) + lu(k,555) = lu(k,555) * lu(k,541) + lu(k,556) = lu(k,556) * lu(k,541) + lu(k,557) = lu(k,557) * lu(k,541) + lu(k,558) = lu(k,558) * lu(k,541) + lu(k,559) = lu(k,559) * lu(k,541) + lu(k,733) = lu(k,733) - lu(k,542) * lu(k,732) + lu(k,734) = lu(k,734) - lu(k,543) * lu(k,732) + lu(k,737) = lu(k,737) - lu(k,544) * lu(k,732) + lu(k,739) = lu(k,739) - lu(k,545) * lu(k,732) + lu(k,740) = - lu(k,546) * lu(k,732) + lu(k,741) = lu(k,741) - lu(k,547) * lu(k,732) + lu(k,742) = - lu(k,548) * lu(k,732) + lu(k,743) = lu(k,743) - lu(k,549) * lu(k,732) + lu(k,744) = - lu(k,550) * lu(k,732) + lu(k,745) = - lu(k,551) * lu(k,732) + lu(k,746) = lu(k,746) - lu(k,552) * lu(k,732) + lu(k,747) = lu(k,747) - lu(k,553) * lu(k,732) + lu(k,748) = lu(k,748) - lu(k,554) * lu(k,732) + lu(k,749) = - lu(k,555) * lu(k,732) + lu(k,750) = lu(k,750) - lu(k,556) * lu(k,732) + lu(k,751) = lu(k,751) - lu(k,557) * lu(k,732) + lu(k,752) = lu(k,752) - lu(k,558) * lu(k,732) + lu(k,753) = lu(k,753) - lu(k,559) * lu(k,732) + lu(k,1063) = lu(k,1063) - lu(k,542) * lu(k,1060) + lu(k,1065) = lu(k,1065) - lu(k,543) * lu(k,1060) + lu(k,1069) = lu(k,1069) - lu(k,544) * lu(k,1060) + lu(k,1072) = lu(k,1072) - lu(k,545) * lu(k,1060) + lu(k,1073) = lu(k,1073) - lu(k,546) * lu(k,1060) + lu(k,1074) = lu(k,1074) - lu(k,547) * lu(k,1060) + lu(k,1075) = lu(k,1075) - lu(k,548) * lu(k,1060) + lu(k,1077) = lu(k,1077) - lu(k,549) * lu(k,1060) + lu(k,1078) = lu(k,1078) - lu(k,550) * lu(k,1060) + lu(k,1079) = lu(k,1079) - lu(k,551) * lu(k,1060) + lu(k,1080) = lu(k,1080) - lu(k,552) * lu(k,1060) + lu(k,1081) = lu(k,1081) - lu(k,553) * lu(k,1060) + lu(k,1083) = lu(k,1083) - lu(k,554) * lu(k,1060) + lu(k,1084) = lu(k,1084) - lu(k,555) * lu(k,1060) + lu(k,1085) = lu(k,1085) - lu(k,556) * lu(k,1060) + lu(k,1086) = lu(k,1086) - lu(k,557) * lu(k,1060) + lu(k,1088) = lu(k,1088) - lu(k,558) * lu(k,1060) + lu(k,1089) = lu(k,1089) - lu(k,559) * lu(k,1060) + lu(k,1126) = lu(k,1126) - lu(k,542) * lu(k,1123) + lu(k,1128) = lu(k,1128) - lu(k,543) * lu(k,1123) + lu(k,1132) = lu(k,1132) - lu(k,544) * lu(k,1123) + lu(k,1135) = lu(k,1135) - lu(k,545) * lu(k,1123) + lu(k,1136) = - lu(k,546) * lu(k,1123) + lu(k,1137) = lu(k,1137) - lu(k,547) * lu(k,1123) + lu(k,1138) = lu(k,1138) - lu(k,548) * lu(k,1123) + lu(k,1140) = lu(k,1140) - lu(k,549) * lu(k,1123) + lu(k,1141) = - lu(k,550) * lu(k,1123) + lu(k,1142) = - lu(k,551) * lu(k,1123) + lu(k,1143) = lu(k,1143) - lu(k,552) * lu(k,1123) + lu(k,1144) = lu(k,1144) - lu(k,553) * lu(k,1123) + lu(k,1146) = lu(k,1146) - lu(k,554) * lu(k,1123) + lu(k,1147) = - lu(k,555) * lu(k,1123) + lu(k,1148) = lu(k,1148) - lu(k,556) * lu(k,1123) + lu(k,1149) = lu(k,1149) - lu(k,557) * lu(k,1123) + lu(k,1151) = lu(k,1151) - lu(k,558) * lu(k,1123) + lu(k,1152) = lu(k,1152) - lu(k,559) * lu(k,1123) + lu(k,1251) = lu(k,1251) - lu(k,542) * lu(k,1248) + lu(k,1253) = lu(k,1253) - lu(k,543) * lu(k,1248) + lu(k,1257) = lu(k,1257) - lu(k,544) * lu(k,1248) + lu(k,1260) = lu(k,1260) - lu(k,545) * lu(k,1248) + lu(k,1261) = lu(k,1261) - lu(k,546) * lu(k,1248) + lu(k,1262) = lu(k,1262) - lu(k,547) * lu(k,1248) + lu(k,1263) = lu(k,1263) - lu(k,548) * lu(k,1248) + lu(k,1265) = lu(k,1265) - lu(k,549) * lu(k,1248) + lu(k,1266) = lu(k,1266) - lu(k,550) * lu(k,1248) + lu(k,1267) = lu(k,1267) - lu(k,551) * lu(k,1248) + lu(k,1268) = lu(k,1268) - lu(k,552) * lu(k,1248) + lu(k,1269) = lu(k,1269) - lu(k,553) * lu(k,1248) + lu(k,1271) = lu(k,1271) - lu(k,554) * lu(k,1248) + lu(k,1272) = lu(k,1272) - lu(k,555) * lu(k,1248) + lu(k,1273) = lu(k,1273) - lu(k,556) * lu(k,1248) + lu(k,1274) = lu(k,1274) - lu(k,557) * lu(k,1248) + lu(k,1276) = lu(k,1276) - lu(k,558) * lu(k,1248) + lu(k,1277) = lu(k,1277) - lu(k,559) * lu(k,1248) + lu(k,562) = 1._r8 / lu(k,562) + lu(k,563) = lu(k,563) * lu(k,562) + lu(k,564) = lu(k,564) * lu(k,562) + lu(k,565) = lu(k,565) * lu(k,562) + lu(k,566) = lu(k,566) * lu(k,562) + lu(k,567) = lu(k,567) * lu(k,562) + lu(k,568) = lu(k,568) * lu(k,562) + lu(k,592) = lu(k,592) - lu(k,563) * lu(k,591) + lu(k,597) = lu(k,597) - lu(k,564) * lu(k,591) + lu(k,600) = lu(k,600) - lu(k,565) * lu(k,591) + lu(k,602) = lu(k,602) - lu(k,566) * lu(k,591) + lu(k,603) = lu(k,603) - lu(k,567) * lu(k,591) + lu(k,604) = lu(k,604) - lu(k,568) * lu(k,591) + lu(k,625) = lu(k,625) - lu(k,563) * lu(k,623) + lu(k,634) = lu(k,634) - lu(k,564) * lu(k,623) + lu(k,637) = lu(k,637) - lu(k,565) * lu(k,623) + lu(k,640) = lu(k,640) - lu(k,566) * lu(k,623) + lu(k,641) = lu(k,641) - lu(k,567) * lu(k,623) + lu(k,642) = lu(k,642) - lu(k,568) * lu(k,623) + lu(k,649) = lu(k,649) - lu(k,563) * lu(k,648) + lu(k,656) = lu(k,656) - lu(k,564) * lu(k,648) + lu(k,659) = lu(k,659) - lu(k,565) * lu(k,648) + lu(k,661) = lu(k,661) - lu(k,566) * lu(k,648) + lu(k,662) = - lu(k,567) * lu(k,648) + lu(k,663) = - lu(k,568) * lu(k,648) + lu(k,694) = lu(k,694) - lu(k,563) * lu(k,692) + lu(k,703) = lu(k,703) - lu(k,564) * lu(k,692) + lu(k,706) = lu(k,706) - lu(k,565) * lu(k,692) + lu(k,709) = lu(k,709) - lu(k,566) * lu(k,692) + lu(k,710) = lu(k,710) - lu(k,567) * lu(k,692) + lu(k,711) = lu(k,711) - lu(k,568) * lu(k,692) + lu(k,769) = lu(k,769) - lu(k,563) * lu(k,767) + lu(k,779) = lu(k,779) - lu(k,564) * lu(k,767) + lu(k,785) = lu(k,785) - lu(k,565) * lu(k,767) + lu(k,789) = lu(k,789) - lu(k,566) * lu(k,767) + lu(k,790) = lu(k,790) - lu(k,567) * lu(k,767) + lu(k,791) = lu(k,791) - lu(k,568) * lu(k,767) + lu(k,840) = lu(k,840) - lu(k,563) * lu(k,838) + lu(k,850) = lu(k,850) - lu(k,564) * lu(k,838) + lu(k,856) = lu(k,856) - lu(k,565) * lu(k,838) + lu(k,861) = lu(k,861) - lu(k,566) * lu(k,838) + lu(k,862) = lu(k,862) - lu(k,567) * lu(k,838) + lu(k,864) = lu(k,864) - lu(k,568) * lu(k,838) + lu(k,966) = lu(k,966) - lu(k,563) * lu(k,965) + lu(k,971) = lu(k,971) - lu(k,564) * lu(k,965) + lu(k,977) = lu(k,977) - lu(k,565) * lu(k,965) + lu(k,982) = lu(k,982) - lu(k,566) * lu(k,965) + lu(k,983) = lu(k,983) - lu(k,567) * lu(k,965) + lu(k,985) = lu(k,985) - lu(k,568) * lu(k,965) + lu(k,1018) = lu(k,1018) - lu(k,563) * lu(k,1016) + lu(k,1028) = lu(k,1028) - lu(k,564) * lu(k,1016) + lu(k,1034) = lu(k,1034) - lu(k,565) * lu(k,1016) + lu(k,1039) = lu(k,1039) - lu(k,566) * lu(k,1016) + lu(k,1040) = lu(k,1040) - lu(k,567) * lu(k,1016) + lu(k,1042) = lu(k,1042) - lu(k,568) * lu(k,1016) + lu(k,1063) = lu(k,1063) - lu(k,563) * lu(k,1061) + lu(k,1074) = lu(k,1074) - lu(k,564) * lu(k,1061) + lu(k,1080) = lu(k,1080) - lu(k,565) * lu(k,1061) + lu(k,1085) = lu(k,1085) - lu(k,566) * lu(k,1061) + lu(k,1086) = lu(k,1086) - lu(k,567) * lu(k,1061) + lu(k,1088) = lu(k,1088) - lu(k,568) * lu(k,1061) + lu(k,1126) = lu(k,1126) - lu(k,563) * lu(k,1124) + lu(k,1137) = lu(k,1137) - lu(k,564) * lu(k,1124) + lu(k,1143) = lu(k,1143) - lu(k,565) * lu(k,1124) + lu(k,1148) = lu(k,1148) - lu(k,566) * lu(k,1124) + lu(k,1149) = lu(k,1149) - lu(k,567) * lu(k,1124) + lu(k,1151) = lu(k,1151) - lu(k,568) * lu(k,1124) + lu(k,1251) = lu(k,1251) - lu(k,563) * lu(k,1249) + lu(k,1262) = lu(k,1262) - lu(k,564) * lu(k,1249) + lu(k,1268) = lu(k,1268) - lu(k,565) * lu(k,1249) + lu(k,1273) = lu(k,1273) - lu(k,566) * lu(k,1249) + lu(k,1274) = lu(k,1274) - lu(k,567) * lu(k,1249) + lu(k,1276) = lu(k,1276) - lu(k,568) * lu(k,1249) + lu(k,1340) = - lu(k,563) * lu(k,1339) + lu(k,1343) = lu(k,1343) - lu(k,564) * lu(k,1339) + lu(k,1349) = lu(k,1349) - lu(k,565) * lu(k,1339) + lu(k,1354) = lu(k,1354) - lu(k,566) * lu(k,1339) + lu(k,1355) = lu(k,1355) - lu(k,567) * lu(k,1339) + lu(k,1357) = lu(k,1357) - lu(k,568) * lu(k,1339) + end do + end subroutine lu_fac13 + subroutine lu_fac14( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,569) = 1._r8 / lu(k,569) + lu(k,570) = lu(k,570) * lu(k,569) + lu(k,571) = lu(k,571) * lu(k,569) + lu(k,572) = lu(k,572) * lu(k,569) + lu(k,573) = lu(k,573) * lu(k,569) + lu(k,574) = lu(k,574) * lu(k,569) + lu(k,575) = lu(k,575) * lu(k,569) + lu(k,576) = lu(k,576) * lu(k,569) + lu(k,577) = lu(k,577) * lu(k,569) + lu(k,578) = lu(k,578) * lu(k,569) + lu(k,579) = lu(k,579) * lu(k,569) + lu(k,625) = lu(k,625) - lu(k,570) * lu(k,624) + lu(k,627) = lu(k,627) - lu(k,571) * lu(k,624) + lu(k,629) = - lu(k,572) * lu(k,624) + lu(k,630) = - lu(k,573) * lu(k,624) + lu(k,631) = lu(k,631) - lu(k,574) * lu(k,624) + lu(k,634) = lu(k,634) - lu(k,575) * lu(k,624) + lu(k,637) = lu(k,637) - lu(k,576) * lu(k,624) + lu(k,638) = - lu(k,577) * lu(k,624) + lu(k,640) = lu(k,640) - lu(k,578) * lu(k,624) + lu(k,643) = lu(k,643) - lu(k,579) * lu(k,624) + lu(k,694) = lu(k,694) - lu(k,570) * lu(k,693) + lu(k,696) = lu(k,696) - lu(k,571) * lu(k,693) + lu(k,698) = lu(k,698) - lu(k,572) * lu(k,693) + lu(k,699) = lu(k,699) - lu(k,573) * lu(k,693) + lu(k,700) = lu(k,700) - lu(k,574) * lu(k,693) + lu(k,703) = lu(k,703) - lu(k,575) * lu(k,693) + lu(k,706) = lu(k,706) - lu(k,576) * lu(k,693) + lu(k,707) = lu(k,707) - lu(k,577) * lu(k,693) + lu(k,709) = lu(k,709) - lu(k,578) * lu(k,693) + lu(k,712) = lu(k,712) - lu(k,579) * lu(k,693) + lu(k,769) = lu(k,769) - lu(k,570) * lu(k,768) + lu(k,771) = lu(k,771) - lu(k,571) * lu(k,768) + lu(k,773) = lu(k,773) - lu(k,572) * lu(k,768) + lu(k,774) = lu(k,774) - lu(k,573) * lu(k,768) + lu(k,775) = lu(k,775) - lu(k,574) * lu(k,768) + lu(k,779) = lu(k,779) - lu(k,575) * lu(k,768) + lu(k,785) = lu(k,785) - lu(k,576) * lu(k,768) + lu(k,786) = - lu(k,577) * lu(k,768) + lu(k,789) = lu(k,789) - lu(k,578) * lu(k,768) + lu(k,792) = lu(k,792) - lu(k,579) * lu(k,768) + lu(k,840) = lu(k,840) - lu(k,570) * lu(k,839) + lu(k,842) = lu(k,842) - lu(k,571) * lu(k,839) + lu(k,844) = lu(k,844) - lu(k,572) * lu(k,839) + lu(k,845) = lu(k,845) - lu(k,573) * lu(k,839) + lu(k,846) = lu(k,846) - lu(k,574) * lu(k,839) + lu(k,850) = lu(k,850) - lu(k,575) * lu(k,839) + lu(k,856) = lu(k,856) - lu(k,576) * lu(k,839) + lu(k,857) = lu(k,857) - lu(k,577) * lu(k,839) + lu(k,861) = lu(k,861) - lu(k,578) * lu(k,839) + lu(k,865) = lu(k,865) - lu(k,579) * lu(k,839) + lu(k,1018) = lu(k,1018) - lu(k,570) * lu(k,1017) + lu(k,1020) = lu(k,1020) - lu(k,571) * lu(k,1017) + lu(k,1022) = lu(k,1022) - lu(k,572) * lu(k,1017) + lu(k,1023) = lu(k,1023) - lu(k,573) * lu(k,1017) + lu(k,1024) = lu(k,1024) - lu(k,574) * lu(k,1017) + lu(k,1028) = lu(k,1028) - lu(k,575) * lu(k,1017) + lu(k,1034) = lu(k,1034) - lu(k,576) * lu(k,1017) + lu(k,1035) = lu(k,1035) - lu(k,577) * lu(k,1017) + lu(k,1039) = lu(k,1039) - lu(k,578) * lu(k,1017) + lu(k,1043) = lu(k,1043) - lu(k,579) * lu(k,1017) + lu(k,1063) = lu(k,1063) - lu(k,570) * lu(k,1062) + lu(k,1065) = lu(k,1065) - lu(k,571) * lu(k,1062) + lu(k,1067) = - lu(k,572) * lu(k,1062) + lu(k,1068) = - lu(k,573) * lu(k,1062) + lu(k,1069) = lu(k,1069) - lu(k,574) * lu(k,1062) + lu(k,1074) = lu(k,1074) - lu(k,575) * lu(k,1062) + lu(k,1080) = lu(k,1080) - lu(k,576) * lu(k,1062) + lu(k,1081) = lu(k,1081) - lu(k,577) * lu(k,1062) + lu(k,1085) = lu(k,1085) - lu(k,578) * lu(k,1062) + lu(k,1089) = lu(k,1089) - lu(k,579) * lu(k,1062) + lu(k,1126) = lu(k,1126) - lu(k,570) * lu(k,1125) + lu(k,1128) = lu(k,1128) - lu(k,571) * lu(k,1125) + lu(k,1130) = lu(k,1130) - lu(k,572) * lu(k,1125) + lu(k,1131) = lu(k,1131) - lu(k,573) * lu(k,1125) + lu(k,1132) = lu(k,1132) - lu(k,574) * lu(k,1125) + lu(k,1137) = lu(k,1137) - lu(k,575) * lu(k,1125) + lu(k,1143) = lu(k,1143) - lu(k,576) * lu(k,1125) + lu(k,1144) = lu(k,1144) - lu(k,577) * lu(k,1125) + lu(k,1148) = lu(k,1148) - lu(k,578) * lu(k,1125) + lu(k,1152) = lu(k,1152) - lu(k,579) * lu(k,1125) + lu(k,1251) = lu(k,1251) - lu(k,570) * lu(k,1250) + lu(k,1253) = lu(k,1253) - lu(k,571) * lu(k,1250) + lu(k,1255) = lu(k,1255) - lu(k,572) * lu(k,1250) + lu(k,1256) = lu(k,1256) - lu(k,573) * lu(k,1250) + lu(k,1257) = lu(k,1257) - lu(k,574) * lu(k,1250) + lu(k,1262) = lu(k,1262) - lu(k,575) * lu(k,1250) + lu(k,1268) = lu(k,1268) - lu(k,576) * lu(k,1250) + lu(k,1269) = lu(k,1269) - lu(k,577) * lu(k,1250) + lu(k,1273) = lu(k,1273) - lu(k,578) * lu(k,1250) + lu(k,1277) = lu(k,1277) - lu(k,579) * lu(k,1250) + lu(k,581) = 1._r8 / lu(k,581) + lu(k,582) = lu(k,582) * lu(k,581) + lu(k,583) = lu(k,583) * lu(k,581) + lu(k,584) = lu(k,584) * lu(k,581) + lu(k,585) = lu(k,585) * lu(k,581) + lu(k,600) = lu(k,600) - lu(k,582) * lu(k,592) + lu(k,602) = lu(k,602) - lu(k,583) * lu(k,592) + lu(k,603) = lu(k,603) - lu(k,584) * lu(k,592) + lu(k,604) = lu(k,604) - lu(k,585) * lu(k,592) + lu(k,610) = lu(k,610) - lu(k,582) * lu(k,606) + lu(k,612) = lu(k,612) - lu(k,583) * lu(k,606) + lu(k,613) = - lu(k,584) * lu(k,606) + lu(k,614) = - lu(k,585) * lu(k,606) + lu(k,637) = lu(k,637) - lu(k,582) * lu(k,625) + lu(k,640) = lu(k,640) - lu(k,583) * lu(k,625) + lu(k,641) = lu(k,641) - lu(k,584) * lu(k,625) + lu(k,642) = lu(k,642) - lu(k,585) * lu(k,625) + lu(k,659) = lu(k,659) - lu(k,582) * lu(k,649) + lu(k,661) = lu(k,661) - lu(k,583) * lu(k,649) + lu(k,662) = lu(k,662) - lu(k,584) * lu(k,649) + lu(k,663) = lu(k,663) - lu(k,585) * lu(k,649) + lu(k,678) = lu(k,678) - lu(k,582) * lu(k,670) + lu(k,681) = lu(k,681) - lu(k,583) * lu(k,670) + lu(k,682) = lu(k,682) - lu(k,584) * lu(k,670) + lu(k,683) = lu(k,683) - lu(k,585) * lu(k,670) + lu(k,706) = lu(k,706) - lu(k,582) * lu(k,694) + lu(k,709) = lu(k,709) - lu(k,583) * lu(k,694) + lu(k,710) = lu(k,710) - lu(k,584) * lu(k,694) + lu(k,711) = lu(k,711) - lu(k,585) * lu(k,694) + lu(k,746) = lu(k,746) - lu(k,582) * lu(k,733) + lu(k,750) = lu(k,750) - lu(k,583) * lu(k,733) + lu(k,751) = lu(k,751) - lu(k,584) * lu(k,733) + lu(k,752) = lu(k,752) - lu(k,585) * lu(k,733) + lu(k,785) = lu(k,785) - lu(k,582) * lu(k,769) + lu(k,789) = lu(k,789) - lu(k,583) * lu(k,769) + lu(k,790) = lu(k,790) - lu(k,584) * lu(k,769) + lu(k,791) = lu(k,791) - lu(k,585) * lu(k,769) + lu(k,813) = lu(k,813) - lu(k,582) * lu(k,807) + lu(k,818) = lu(k,818) - lu(k,583) * lu(k,807) + lu(k,819) = lu(k,819) - lu(k,584) * lu(k,807) + lu(k,821) = - lu(k,585) * lu(k,807) + lu(k,856) = lu(k,856) - lu(k,582) * lu(k,840) + lu(k,861) = lu(k,861) - lu(k,583) * lu(k,840) + lu(k,862) = lu(k,862) - lu(k,584) * lu(k,840) + lu(k,864) = lu(k,864) - lu(k,585) * lu(k,840) + lu(k,919) = lu(k,919) - lu(k,582) * lu(k,905) + lu(k,924) = lu(k,924) - lu(k,583) * lu(k,905) + lu(k,925) = lu(k,925) - lu(k,584) * lu(k,905) + lu(k,927) = lu(k,927) - lu(k,585) * lu(k,905) + lu(k,977) = lu(k,977) - lu(k,582) * lu(k,966) + lu(k,982) = lu(k,982) - lu(k,583) * lu(k,966) + lu(k,983) = lu(k,983) - lu(k,584) * lu(k,966) + lu(k,985) = lu(k,985) - lu(k,585) * lu(k,966) + lu(k,1034) = lu(k,1034) - lu(k,582) * lu(k,1018) + lu(k,1039) = lu(k,1039) - lu(k,583) * lu(k,1018) + lu(k,1040) = lu(k,1040) - lu(k,584) * lu(k,1018) + lu(k,1042) = lu(k,1042) - lu(k,585) * lu(k,1018) + lu(k,1080) = lu(k,1080) - lu(k,582) * lu(k,1063) + lu(k,1085) = lu(k,1085) - lu(k,583) * lu(k,1063) + lu(k,1086) = lu(k,1086) - lu(k,584) * lu(k,1063) + lu(k,1088) = lu(k,1088) - lu(k,585) * lu(k,1063) + lu(k,1097) = lu(k,1097) - lu(k,582) * lu(k,1091) + lu(k,1102) = lu(k,1102) - lu(k,583) * lu(k,1091) + lu(k,1103) = lu(k,1103) - lu(k,584) * lu(k,1091) + lu(k,1105) = lu(k,1105) - lu(k,585) * lu(k,1091) + lu(k,1143) = lu(k,1143) - lu(k,582) * lu(k,1126) + lu(k,1148) = lu(k,1148) - lu(k,583) * lu(k,1126) + lu(k,1149) = lu(k,1149) - lu(k,584) * lu(k,1126) + lu(k,1151) = lu(k,1151) - lu(k,585) * lu(k,1126) + lu(k,1182) = lu(k,1182) - lu(k,582) * lu(k,1173) + lu(k,1187) = lu(k,1187) - lu(k,583) * lu(k,1173) + lu(k,1188) = lu(k,1188) - lu(k,584) * lu(k,1173) + lu(k,1190) = lu(k,1190) - lu(k,585) * lu(k,1173) + lu(k,1268) = lu(k,1268) - lu(k,582) * lu(k,1251) + lu(k,1273) = lu(k,1273) - lu(k,583) * lu(k,1251) + lu(k,1274) = lu(k,1274) - lu(k,584) * lu(k,1251) + lu(k,1276) = lu(k,1276) - lu(k,585) * lu(k,1251) + lu(k,1300) = lu(k,1300) - lu(k,582) * lu(k,1291) + lu(k,1305) = lu(k,1305) - lu(k,583) * lu(k,1291) + lu(k,1306) = lu(k,1306) - lu(k,584) * lu(k,1291) + lu(k,1308) = lu(k,1308) - lu(k,585) * lu(k,1291) + lu(k,1349) = lu(k,1349) - lu(k,582) * lu(k,1340) + lu(k,1354) = lu(k,1354) - lu(k,583) * lu(k,1340) + lu(k,1355) = lu(k,1355) - lu(k,584) * lu(k,1340) + lu(k,1357) = lu(k,1357) - lu(k,585) * lu(k,1340) + lu(k,593) = 1._r8 / lu(k,593) + lu(k,594) = lu(k,594) * lu(k,593) + lu(k,595) = lu(k,595) * lu(k,593) + lu(k,596) = lu(k,596) * lu(k,593) + lu(k,597) = lu(k,597) * lu(k,593) + lu(k,598) = lu(k,598) * lu(k,593) + lu(k,599) = lu(k,599) * lu(k,593) + lu(k,600) = lu(k,600) * lu(k,593) + lu(k,601) = lu(k,601) * lu(k,593) + lu(k,602) = lu(k,602) * lu(k,593) + lu(k,603) = lu(k,603) * lu(k,593) + lu(k,604) = lu(k,604) * lu(k,593) + lu(k,627) = lu(k,627) - lu(k,594) * lu(k,626) + lu(k,631) = lu(k,631) - lu(k,595) * lu(k,626) + lu(k,633) = lu(k,633) - lu(k,596) * lu(k,626) + lu(k,634) = lu(k,634) - lu(k,597) * lu(k,626) + lu(k,635) = lu(k,635) - lu(k,598) * lu(k,626) + lu(k,636) = lu(k,636) - lu(k,599) * lu(k,626) + lu(k,637) = lu(k,637) - lu(k,600) * lu(k,626) + lu(k,639) = lu(k,639) - lu(k,601) * lu(k,626) + lu(k,640) = lu(k,640) - lu(k,602) * lu(k,626) + lu(k,641) = lu(k,641) - lu(k,603) * lu(k,626) + lu(k,642) = lu(k,642) - lu(k,604) * lu(k,626) + lu(k,651) = lu(k,651) - lu(k,594) * lu(k,650) + lu(k,654) = lu(k,654) - lu(k,595) * lu(k,650) + lu(k,655) = lu(k,655) - lu(k,596) * lu(k,650) + lu(k,656) = lu(k,656) - lu(k,597) * lu(k,650) + lu(k,657) = lu(k,657) - lu(k,598) * lu(k,650) + lu(k,658) = lu(k,658) - lu(k,599) * lu(k,650) + lu(k,659) = lu(k,659) - lu(k,600) * lu(k,650) + lu(k,660) = lu(k,660) - lu(k,601) * lu(k,650) + lu(k,661) = lu(k,661) - lu(k,602) * lu(k,650) + lu(k,662) = lu(k,662) - lu(k,603) * lu(k,650) + lu(k,663) = lu(k,663) - lu(k,604) * lu(k,650) + lu(k,696) = lu(k,696) - lu(k,594) * lu(k,695) + lu(k,700) = lu(k,700) - lu(k,595) * lu(k,695) + lu(k,702) = lu(k,702) - lu(k,596) * lu(k,695) + lu(k,703) = lu(k,703) - lu(k,597) * lu(k,695) + lu(k,704) = lu(k,704) - lu(k,598) * lu(k,695) + lu(k,705) = lu(k,705) - lu(k,599) * lu(k,695) + lu(k,706) = lu(k,706) - lu(k,600) * lu(k,695) + lu(k,708) = lu(k,708) - lu(k,601) * lu(k,695) + lu(k,709) = lu(k,709) - lu(k,602) * lu(k,695) + lu(k,710) = lu(k,710) - lu(k,603) * lu(k,695) + lu(k,711) = lu(k,711) - lu(k,604) * lu(k,695) + lu(k,771) = lu(k,771) - lu(k,594) * lu(k,770) + lu(k,775) = lu(k,775) - lu(k,595) * lu(k,770) + lu(k,777) = lu(k,777) - lu(k,596) * lu(k,770) + lu(k,779) = lu(k,779) - lu(k,597) * lu(k,770) + lu(k,780) = lu(k,780) - lu(k,598) * lu(k,770) + lu(k,782) = lu(k,782) - lu(k,599) * lu(k,770) + lu(k,785) = lu(k,785) - lu(k,600) * lu(k,770) + lu(k,787) = lu(k,787) - lu(k,601) * lu(k,770) + lu(k,789) = lu(k,789) - lu(k,602) * lu(k,770) + lu(k,790) = lu(k,790) - lu(k,603) * lu(k,770) + lu(k,791) = lu(k,791) - lu(k,604) * lu(k,770) + lu(k,842) = lu(k,842) - lu(k,594) * lu(k,841) + lu(k,846) = lu(k,846) - lu(k,595) * lu(k,841) + lu(k,848) = lu(k,848) - lu(k,596) * lu(k,841) + lu(k,850) = lu(k,850) - lu(k,597) * lu(k,841) + lu(k,851) = lu(k,851) - lu(k,598) * lu(k,841) + lu(k,853) = lu(k,853) - lu(k,599) * lu(k,841) + lu(k,856) = lu(k,856) - lu(k,600) * lu(k,841) + lu(k,859) = lu(k,859) - lu(k,601) * lu(k,841) + lu(k,861) = lu(k,861) - lu(k,602) * lu(k,841) + lu(k,862) = lu(k,862) - lu(k,603) * lu(k,841) + lu(k,864) = lu(k,864) - lu(k,604) * lu(k,841) + lu(k,1020) = lu(k,1020) - lu(k,594) * lu(k,1019) + lu(k,1024) = lu(k,1024) - lu(k,595) * lu(k,1019) + lu(k,1026) = lu(k,1026) - lu(k,596) * lu(k,1019) + lu(k,1028) = lu(k,1028) - lu(k,597) * lu(k,1019) + lu(k,1029) = lu(k,1029) - lu(k,598) * lu(k,1019) + lu(k,1031) = lu(k,1031) - lu(k,599) * lu(k,1019) + lu(k,1034) = lu(k,1034) - lu(k,600) * lu(k,1019) + lu(k,1037) = lu(k,1037) - lu(k,601) * lu(k,1019) + lu(k,1039) = lu(k,1039) - lu(k,602) * lu(k,1019) + lu(k,1040) = lu(k,1040) - lu(k,603) * lu(k,1019) + lu(k,1042) = lu(k,1042) - lu(k,604) * lu(k,1019) + lu(k,1065) = lu(k,1065) - lu(k,594) * lu(k,1064) + lu(k,1069) = lu(k,1069) - lu(k,595) * lu(k,1064) + lu(k,1072) = lu(k,1072) - lu(k,596) * lu(k,1064) + lu(k,1074) = lu(k,1074) - lu(k,597) * lu(k,1064) + lu(k,1075) = lu(k,1075) - lu(k,598) * lu(k,1064) + lu(k,1077) = lu(k,1077) - lu(k,599) * lu(k,1064) + lu(k,1080) = lu(k,1080) - lu(k,600) * lu(k,1064) + lu(k,1083) = lu(k,1083) - lu(k,601) * lu(k,1064) + lu(k,1085) = lu(k,1085) - lu(k,602) * lu(k,1064) + lu(k,1086) = lu(k,1086) - lu(k,603) * lu(k,1064) + lu(k,1088) = lu(k,1088) - lu(k,604) * lu(k,1064) + lu(k,1128) = lu(k,1128) - lu(k,594) * lu(k,1127) + lu(k,1132) = lu(k,1132) - lu(k,595) * lu(k,1127) + lu(k,1135) = lu(k,1135) - lu(k,596) * lu(k,1127) + lu(k,1137) = lu(k,1137) - lu(k,597) * lu(k,1127) + lu(k,1138) = lu(k,1138) - lu(k,598) * lu(k,1127) + lu(k,1140) = lu(k,1140) - lu(k,599) * lu(k,1127) + lu(k,1143) = lu(k,1143) - lu(k,600) * lu(k,1127) + lu(k,1146) = lu(k,1146) - lu(k,601) * lu(k,1127) + lu(k,1148) = lu(k,1148) - lu(k,602) * lu(k,1127) + lu(k,1149) = lu(k,1149) - lu(k,603) * lu(k,1127) + lu(k,1151) = lu(k,1151) - lu(k,604) * lu(k,1127) + lu(k,1253) = lu(k,1253) - lu(k,594) * lu(k,1252) + lu(k,1257) = lu(k,1257) - lu(k,595) * lu(k,1252) + lu(k,1260) = lu(k,1260) - lu(k,596) * lu(k,1252) + lu(k,1262) = lu(k,1262) - lu(k,597) * lu(k,1252) + lu(k,1263) = lu(k,1263) - lu(k,598) * lu(k,1252) + lu(k,1265) = lu(k,1265) - lu(k,599) * lu(k,1252) + lu(k,1268) = lu(k,1268) - lu(k,600) * lu(k,1252) + lu(k,1271) = lu(k,1271) - lu(k,601) * lu(k,1252) + lu(k,1273) = lu(k,1273) - lu(k,602) * lu(k,1252) + lu(k,1274) = lu(k,1274) - lu(k,603) * lu(k,1252) + lu(k,1276) = lu(k,1276) - lu(k,604) * lu(k,1252) + lu(k,607) = 1._r8 / lu(k,607) + lu(k,608) = lu(k,608) * lu(k,607) + lu(k,609) = lu(k,609) * lu(k,607) + lu(k,610) = lu(k,610) * lu(k,607) + lu(k,611) = lu(k,611) * lu(k,607) + lu(k,612) = lu(k,612) * lu(k,607) + lu(k,613) = lu(k,613) * lu(k,607) + lu(k,614) = lu(k,614) * lu(k,607) + lu(k,615) = lu(k,615) * lu(k,607) + lu(k,631) = lu(k,631) - lu(k,608) * lu(k,627) + lu(k,636) = lu(k,636) - lu(k,609) * lu(k,627) + lu(k,637) = lu(k,637) - lu(k,610) * lu(k,627) + lu(k,639) = lu(k,639) - lu(k,611) * lu(k,627) + lu(k,640) = lu(k,640) - lu(k,612) * lu(k,627) + lu(k,641) = lu(k,641) - lu(k,613) * lu(k,627) + lu(k,642) = lu(k,642) - lu(k,614) * lu(k,627) + lu(k,643) = lu(k,643) - lu(k,615) * lu(k,627) + lu(k,654) = lu(k,654) - lu(k,608) * lu(k,651) + lu(k,658) = lu(k,658) - lu(k,609) * lu(k,651) + lu(k,659) = lu(k,659) - lu(k,610) * lu(k,651) + lu(k,660) = lu(k,660) - lu(k,611) * lu(k,651) + lu(k,661) = lu(k,661) - lu(k,612) * lu(k,651) + lu(k,662) = lu(k,662) - lu(k,613) * lu(k,651) + lu(k,663) = lu(k,663) - lu(k,614) * lu(k,651) + lu(k,664) = lu(k,664) - lu(k,615) * lu(k,651) + lu(k,673) = lu(k,673) - lu(k,608) * lu(k,671) + lu(k,677) = lu(k,677) - lu(k,609) * lu(k,671) + lu(k,678) = lu(k,678) - lu(k,610) * lu(k,671) + lu(k,680) = lu(k,680) - lu(k,611) * lu(k,671) + lu(k,681) = lu(k,681) - lu(k,612) * lu(k,671) + lu(k,682) = lu(k,682) - lu(k,613) * lu(k,671) + lu(k,683) = lu(k,683) - lu(k,614) * lu(k,671) + lu(k,684) = lu(k,684) - lu(k,615) * lu(k,671) + lu(k,700) = lu(k,700) - lu(k,608) * lu(k,696) + lu(k,705) = lu(k,705) - lu(k,609) * lu(k,696) + lu(k,706) = lu(k,706) - lu(k,610) * lu(k,696) + lu(k,708) = lu(k,708) - lu(k,611) * lu(k,696) + lu(k,709) = lu(k,709) - lu(k,612) * lu(k,696) + lu(k,710) = lu(k,710) - lu(k,613) * lu(k,696) + lu(k,711) = lu(k,711) - lu(k,614) * lu(k,696) + lu(k,712) = lu(k,712) - lu(k,615) * lu(k,696) + lu(k,737) = lu(k,737) - lu(k,608) * lu(k,734) + lu(k,743) = lu(k,743) - lu(k,609) * lu(k,734) + lu(k,746) = lu(k,746) - lu(k,610) * lu(k,734) + lu(k,748) = lu(k,748) - lu(k,611) * lu(k,734) + lu(k,750) = lu(k,750) - lu(k,612) * lu(k,734) + lu(k,751) = lu(k,751) - lu(k,613) * lu(k,734) + lu(k,752) = lu(k,752) - lu(k,614) * lu(k,734) + lu(k,753) = lu(k,753) - lu(k,615) * lu(k,734) + lu(k,775) = lu(k,775) - lu(k,608) * lu(k,771) + lu(k,782) = lu(k,782) - lu(k,609) * lu(k,771) + lu(k,785) = lu(k,785) - lu(k,610) * lu(k,771) + lu(k,787) = lu(k,787) - lu(k,611) * lu(k,771) + lu(k,789) = lu(k,789) - lu(k,612) * lu(k,771) + lu(k,790) = lu(k,790) - lu(k,613) * lu(k,771) + lu(k,791) = lu(k,791) - lu(k,614) * lu(k,771) + lu(k,792) = lu(k,792) - lu(k,615) * lu(k,771) + lu(k,846) = lu(k,846) - lu(k,608) * lu(k,842) + lu(k,853) = lu(k,853) - lu(k,609) * lu(k,842) + lu(k,856) = lu(k,856) - lu(k,610) * lu(k,842) + lu(k,859) = lu(k,859) - lu(k,611) * lu(k,842) + lu(k,861) = lu(k,861) - lu(k,612) * lu(k,842) + lu(k,862) = lu(k,862) - lu(k,613) * lu(k,842) + lu(k,864) = lu(k,864) - lu(k,614) * lu(k,842) + lu(k,865) = lu(k,865) - lu(k,615) * lu(k,842) + lu(k,908) = lu(k,908) - lu(k,608) * lu(k,906) + lu(k,916) = lu(k,916) - lu(k,609) * lu(k,906) + lu(k,919) = lu(k,919) - lu(k,610) * lu(k,906) + lu(k,922) = lu(k,922) - lu(k,611) * lu(k,906) + lu(k,924) = lu(k,924) - lu(k,612) * lu(k,906) + lu(k,925) = lu(k,925) - lu(k,613) * lu(k,906) + lu(k,927) = lu(k,927) - lu(k,614) * lu(k,906) + lu(k,928) = lu(k,928) - lu(k,615) * lu(k,906) + lu(k,1024) = lu(k,1024) - lu(k,608) * lu(k,1020) + lu(k,1031) = lu(k,1031) - lu(k,609) * lu(k,1020) + lu(k,1034) = lu(k,1034) - lu(k,610) * lu(k,1020) + lu(k,1037) = lu(k,1037) - lu(k,611) * lu(k,1020) + lu(k,1039) = lu(k,1039) - lu(k,612) * lu(k,1020) + lu(k,1040) = lu(k,1040) - lu(k,613) * lu(k,1020) + lu(k,1042) = lu(k,1042) - lu(k,614) * lu(k,1020) + lu(k,1043) = lu(k,1043) - lu(k,615) * lu(k,1020) + lu(k,1069) = lu(k,1069) - lu(k,608) * lu(k,1065) + lu(k,1077) = lu(k,1077) - lu(k,609) * lu(k,1065) + lu(k,1080) = lu(k,1080) - lu(k,610) * lu(k,1065) + lu(k,1083) = lu(k,1083) - lu(k,611) * lu(k,1065) + lu(k,1085) = lu(k,1085) - lu(k,612) * lu(k,1065) + lu(k,1086) = lu(k,1086) - lu(k,613) * lu(k,1065) + lu(k,1088) = lu(k,1088) - lu(k,614) * lu(k,1065) + lu(k,1089) = lu(k,1089) - lu(k,615) * lu(k,1065) + lu(k,1132) = lu(k,1132) - lu(k,608) * lu(k,1128) + lu(k,1140) = lu(k,1140) - lu(k,609) * lu(k,1128) + lu(k,1143) = lu(k,1143) - lu(k,610) * lu(k,1128) + lu(k,1146) = lu(k,1146) - lu(k,611) * lu(k,1128) + lu(k,1148) = lu(k,1148) - lu(k,612) * lu(k,1128) + lu(k,1149) = lu(k,1149) - lu(k,613) * lu(k,1128) + lu(k,1151) = lu(k,1151) - lu(k,614) * lu(k,1128) + lu(k,1152) = lu(k,1152) - lu(k,615) * lu(k,1128) + lu(k,1257) = lu(k,1257) - lu(k,608) * lu(k,1253) + lu(k,1265) = lu(k,1265) - lu(k,609) * lu(k,1253) + lu(k,1268) = lu(k,1268) - lu(k,610) * lu(k,1253) + lu(k,1271) = lu(k,1271) - lu(k,611) * lu(k,1253) + lu(k,1273) = lu(k,1273) - lu(k,612) * lu(k,1253) + lu(k,1274) = lu(k,1274) - lu(k,613) * lu(k,1253) + lu(k,1276) = lu(k,1276) - lu(k,614) * lu(k,1253) + lu(k,1277) = lu(k,1277) - lu(k,615) * lu(k,1253) + lu(k,628) = 1._r8 / lu(k,628) + lu(k,629) = lu(k,629) * lu(k,628) + lu(k,630) = lu(k,630) * lu(k,628) + lu(k,631) = lu(k,631) * lu(k,628) + lu(k,632) = lu(k,632) * lu(k,628) + lu(k,633) = lu(k,633) * lu(k,628) + lu(k,634) = lu(k,634) * lu(k,628) + lu(k,635) = lu(k,635) * lu(k,628) + lu(k,636) = lu(k,636) * lu(k,628) + lu(k,637) = lu(k,637) * lu(k,628) + lu(k,638) = lu(k,638) * lu(k,628) + lu(k,639) = lu(k,639) * lu(k,628) + lu(k,640) = lu(k,640) * lu(k,628) + lu(k,641) = lu(k,641) * lu(k,628) + lu(k,642) = lu(k,642) * lu(k,628) + lu(k,643) = lu(k,643) * lu(k,628) + lu(k,698) = lu(k,698) - lu(k,629) * lu(k,697) + lu(k,699) = lu(k,699) - lu(k,630) * lu(k,697) + lu(k,700) = lu(k,700) - lu(k,631) * lu(k,697) + lu(k,701) = lu(k,701) - lu(k,632) * lu(k,697) + lu(k,702) = lu(k,702) - lu(k,633) * lu(k,697) + lu(k,703) = lu(k,703) - lu(k,634) * lu(k,697) + lu(k,704) = lu(k,704) - lu(k,635) * lu(k,697) + lu(k,705) = lu(k,705) - lu(k,636) * lu(k,697) + lu(k,706) = lu(k,706) - lu(k,637) * lu(k,697) + lu(k,707) = lu(k,707) - lu(k,638) * lu(k,697) + lu(k,708) = lu(k,708) - lu(k,639) * lu(k,697) + lu(k,709) = lu(k,709) - lu(k,640) * lu(k,697) + lu(k,710) = lu(k,710) - lu(k,641) * lu(k,697) + lu(k,711) = lu(k,711) - lu(k,642) * lu(k,697) + lu(k,712) = lu(k,712) - lu(k,643) * lu(k,697) + lu(k,773) = lu(k,773) - lu(k,629) * lu(k,772) + lu(k,774) = lu(k,774) - lu(k,630) * lu(k,772) + lu(k,775) = lu(k,775) - lu(k,631) * lu(k,772) + lu(k,776) = lu(k,776) - lu(k,632) * lu(k,772) + lu(k,777) = lu(k,777) - lu(k,633) * lu(k,772) + lu(k,779) = lu(k,779) - lu(k,634) * lu(k,772) + lu(k,780) = lu(k,780) - lu(k,635) * lu(k,772) + lu(k,782) = lu(k,782) - lu(k,636) * lu(k,772) + lu(k,785) = lu(k,785) - lu(k,637) * lu(k,772) + lu(k,786) = lu(k,786) - lu(k,638) * lu(k,772) + lu(k,787) = lu(k,787) - lu(k,639) * lu(k,772) + lu(k,789) = lu(k,789) - lu(k,640) * lu(k,772) + lu(k,790) = lu(k,790) - lu(k,641) * lu(k,772) + lu(k,791) = lu(k,791) - lu(k,642) * lu(k,772) + lu(k,792) = lu(k,792) - lu(k,643) * lu(k,772) + lu(k,844) = lu(k,844) - lu(k,629) * lu(k,843) + lu(k,845) = lu(k,845) - lu(k,630) * lu(k,843) + lu(k,846) = lu(k,846) - lu(k,631) * lu(k,843) + lu(k,847) = lu(k,847) - lu(k,632) * lu(k,843) + lu(k,848) = lu(k,848) - lu(k,633) * lu(k,843) + lu(k,850) = lu(k,850) - lu(k,634) * lu(k,843) + lu(k,851) = lu(k,851) - lu(k,635) * lu(k,843) + lu(k,853) = lu(k,853) - lu(k,636) * lu(k,843) + lu(k,856) = lu(k,856) - lu(k,637) * lu(k,843) + lu(k,857) = lu(k,857) - lu(k,638) * lu(k,843) + lu(k,859) = lu(k,859) - lu(k,639) * lu(k,843) + lu(k,861) = lu(k,861) - lu(k,640) * lu(k,843) + lu(k,862) = lu(k,862) - lu(k,641) * lu(k,843) + lu(k,864) = lu(k,864) - lu(k,642) * lu(k,843) + lu(k,865) = lu(k,865) - lu(k,643) * lu(k,843) + lu(k,1022) = lu(k,1022) - lu(k,629) * lu(k,1021) + lu(k,1023) = lu(k,1023) - lu(k,630) * lu(k,1021) + lu(k,1024) = lu(k,1024) - lu(k,631) * lu(k,1021) + lu(k,1025) = lu(k,1025) - lu(k,632) * lu(k,1021) + lu(k,1026) = lu(k,1026) - lu(k,633) * lu(k,1021) + lu(k,1028) = lu(k,1028) - lu(k,634) * lu(k,1021) + lu(k,1029) = lu(k,1029) - lu(k,635) * lu(k,1021) + lu(k,1031) = lu(k,1031) - lu(k,636) * lu(k,1021) + lu(k,1034) = lu(k,1034) - lu(k,637) * lu(k,1021) + lu(k,1035) = lu(k,1035) - lu(k,638) * lu(k,1021) + lu(k,1037) = lu(k,1037) - lu(k,639) * lu(k,1021) + lu(k,1039) = lu(k,1039) - lu(k,640) * lu(k,1021) + lu(k,1040) = lu(k,1040) - lu(k,641) * lu(k,1021) + lu(k,1042) = lu(k,1042) - lu(k,642) * lu(k,1021) + lu(k,1043) = lu(k,1043) - lu(k,643) * lu(k,1021) + lu(k,1067) = lu(k,1067) - lu(k,629) * lu(k,1066) + lu(k,1068) = lu(k,1068) - lu(k,630) * lu(k,1066) + lu(k,1069) = lu(k,1069) - lu(k,631) * lu(k,1066) + lu(k,1071) = lu(k,1071) - lu(k,632) * lu(k,1066) + lu(k,1072) = lu(k,1072) - lu(k,633) * lu(k,1066) + lu(k,1074) = lu(k,1074) - lu(k,634) * lu(k,1066) + lu(k,1075) = lu(k,1075) - lu(k,635) * lu(k,1066) + lu(k,1077) = lu(k,1077) - lu(k,636) * lu(k,1066) + lu(k,1080) = lu(k,1080) - lu(k,637) * lu(k,1066) + lu(k,1081) = lu(k,1081) - lu(k,638) * lu(k,1066) + lu(k,1083) = lu(k,1083) - lu(k,639) * lu(k,1066) + lu(k,1085) = lu(k,1085) - lu(k,640) * lu(k,1066) + lu(k,1086) = lu(k,1086) - lu(k,641) * lu(k,1066) + lu(k,1088) = lu(k,1088) - lu(k,642) * lu(k,1066) + lu(k,1089) = lu(k,1089) - lu(k,643) * lu(k,1066) + lu(k,1130) = lu(k,1130) - lu(k,629) * lu(k,1129) + lu(k,1131) = lu(k,1131) - lu(k,630) * lu(k,1129) + lu(k,1132) = lu(k,1132) - lu(k,631) * lu(k,1129) + lu(k,1134) = lu(k,1134) - lu(k,632) * lu(k,1129) + lu(k,1135) = lu(k,1135) - lu(k,633) * lu(k,1129) + lu(k,1137) = lu(k,1137) - lu(k,634) * lu(k,1129) + lu(k,1138) = lu(k,1138) - lu(k,635) * lu(k,1129) + lu(k,1140) = lu(k,1140) - lu(k,636) * lu(k,1129) + lu(k,1143) = lu(k,1143) - lu(k,637) * lu(k,1129) + lu(k,1144) = lu(k,1144) - lu(k,638) * lu(k,1129) + lu(k,1146) = lu(k,1146) - lu(k,639) * lu(k,1129) + lu(k,1148) = lu(k,1148) - lu(k,640) * lu(k,1129) + lu(k,1149) = lu(k,1149) - lu(k,641) * lu(k,1129) + lu(k,1151) = lu(k,1151) - lu(k,642) * lu(k,1129) + lu(k,1152) = lu(k,1152) - lu(k,643) * lu(k,1129) + lu(k,1255) = lu(k,1255) - lu(k,629) * lu(k,1254) + lu(k,1256) = lu(k,1256) - lu(k,630) * lu(k,1254) + lu(k,1257) = lu(k,1257) - lu(k,631) * lu(k,1254) + lu(k,1259) = lu(k,1259) - lu(k,632) * lu(k,1254) + lu(k,1260) = lu(k,1260) - lu(k,633) * lu(k,1254) + lu(k,1262) = lu(k,1262) - lu(k,634) * lu(k,1254) + lu(k,1263) = lu(k,1263) - lu(k,635) * lu(k,1254) + lu(k,1265) = lu(k,1265) - lu(k,636) * lu(k,1254) + lu(k,1268) = lu(k,1268) - lu(k,637) * lu(k,1254) + lu(k,1269) = lu(k,1269) - lu(k,638) * lu(k,1254) + lu(k,1271) = lu(k,1271) - lu(k,639) * lu(k,1254) + lu(k,1273) = lu(k,1273) - lu(k,640) * lu(k,1254) + lu(k,1274) = lu(k,1274) - lu(k,641) * lu(k,1254) + lu(k,1276) = lu(k,1276) - lu(k,642) * lu(k,1254) + lu(k,1277) = lu(k,1277) - lu(k,643) * lu(k,1254) + end do + end subroutine lu_fac14 + subroutine lu_fac15( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,652) = 1._r8 / lu(k,652) + lu(k,653) = lu(k,653) * lu(k,652) + lu(k,654) = lu(k,654) * lu(k,652) + lu(k,655) = lu(k,655) * lu(k,652) + lu(k,656) = lu(k,656) * lu(k,652) + lu(k,657) = lu(k,657) * lu(k,652) + lu(k,658) = lu(k,658) * lu(k,652) + lu(k,659) = lu(k,659) * lu(k,652) + lu(k,660) = lu(k,660) * lu(k,652) + lu(k,661) = lu(k,661) * lu(k,652) + lu(k,662) = lu(k,662) * lu(k,652) + lu(k,663) = lu(k,663) * lu(k,652) + lu(k,664) = lu(k,664) * lu(k,652) + lu(k,699) = lu(k,699) - lu(k,653) * lu(k,698) + lu(k,700) = lu(k,700) - lu(k,654) * lu(k,698) + lu(k,702) = lu(k,702) - lu(k,655) * lu(k,698) + lu(k,703) = lu(k,703) - lu(k,656) * lu(k,698) + lu(k,704) = lu(k,704) - lu(k,657) * lu(k,698) + lu(k,705) = lu(k,705) - lu(k,658) * lu(k,698) + lu(k,706) = lu(k,706) - lu(k,659) * lu(k,698) + lu(k,708) = lu(k,708) - lu(k,660) * lu(k,698) + lu(k,709) = lu(k,709) - lu(k,661) * lu(k,698) + lu(k,710) = lu(k,710) - lu(k,662) * lu(k,698) + lu(k,711) = lu(k,711) - lu(k,663) * lu(k,698) + lu(k,712) = lu(k,712) - lu(k,664) * lu(k,698) + lu(k,736) = - lu(k,653) * lu(k,735) + lu(k,737) = lu(k,737) - lu(k,654) * lu(k,735) + lu(k,739) = lu(k,739) - lu(k,655) * lu(k,735) + lu(k,741) = lu(k,741) - lu(k,656) * lu(k,735) + lu(k,742) = lu(k,742) - lu(k,657) * lu(k,735) + lu(k,743) = lu(k,743) - lu(k,658) * lu(k,735) + lu(k,746) = lu(k,746) - lu(k,659) * lu(k,735) + lu(k,748) = lu(k,748) - lu(k,660) * lu(k,735) + lu(k,750) = lu(k,750) - lu(k,661) * lu(k,735) + lu(k,751) = lu(k,751) - lu(k,662) * lu(k,735) + lu(k,752) = lu(k,752) - lu(k,663) * lu(k,735) + lu(k,753) = lu(k,753) - lu(k,664) * lu(k,735) + lu(k,774) = lu(k,774) - lu(k,653) * lu(k,773) + lu(k,775) = lu(k,775) - lu(k,654) * lu(k,773) + lu(k,777) = lu(k,777) - lu(k,655) * lu(k,773) + lu(k,779) = lu(k,779) - lu(k,656) * lu(k,773) + lu(k,780) = lu(k,780) - lu(k,657) * lu(k,773) + lu(k,782) = lu(k,782) - lu(k,658) * lu(k,773) + lu(k,785) = lu(k,785) - lu(k,659) * lu(k,773) + lu(k,787) = lu(k,787) - lu(k,660) * lu(k,773) + lu(k,789) = lu(k,789) - lu(k,661) * lu(k,773) + lu(k,790) = lu(k,790) - lu(k,662) * lu(k,773) + lu(k,791) = lu(k,791) - lu(k,663) * lu(k,773) + lu(k,792) = lu(k,792) - lu(k,664) * lu(k,773) + lu(k,845) = lu(k,845) - lu(k,653) * lu(k,844) + lu(k,846) = lu(k,846) - lu(k,654) * lu(k,844) + lu(k,848) = lu(k,848) - lu(k,655) * lu(k,844) + lu(k,850) = lu(k,850) - lu(k,656) * lu(k,844) + lu(k,851) = lu(k,851) - lu(k,657) * lu(k,844) + lu(k,853) = lu(k,853) - lu(k,658) * lu(k,844) + lu(k,856) = lu(k,856) - lu(k,659) * lu(k,844) + lu(k,859) = lu(k,859) - lu(k,660) * lu(k,844) + lu(k,861) = lu(k,861) - lu(k,661) * lu(k,844) + lu(k,862) = lu(k,862) - lu(k,662) * lu(k,844) + lu(k,864) = lu(k,864) - lu(k,663) * lu(k,844) + lu(k,865) = lu(k,865) - lu(k,664) * lu(k,844) + lu(k,1023) = lu(k,1023) - lu(k,653) * lu(k,1022) + lu(k,1024) = lu(k,1024) - lu(k,654) * lu(k,1022) + lu(k,1026) = lu(k,1026) - lu(k,655) * lu(k,1022) + lu(k,1028) = lu(k,1028) - lu(k,656) * lu(k,1022) + lu(k,1029) = lu(k,1029) - lu(k,657) * lu(k,1022) + lu(k,1031) = lu(k,1031) - lu(k,658) * lu(k,1022) + lu(k,1034) = lu(k,1034) - lu(k,659) * lu(k,1022) + lu(k,1037) = lu(k,1037) - lu(k,660) * lu(k,1022) + lu(k,1039) = lu(k,1039) - lu(k,661) * lu(k,1022) + lu(k,1040) = lu(k,1040) - lu(k,662) * lu(k,1022) + lu(k,1042) = lu(k,1042) - lu(k,663) * lu(k,1022) + lu(k,1043) = lu(k,1043) - lu(k,664) * lu(k,1022) + lu(k,1068) = lu(k,1068) - lu(k,653) * lu(k,1067) + lu(k,1069) = lu(k,1069) - lu(k,654) * lu(k,1067) + lu(k,1072) = lu(k,1072) - lu(k,655) * lu(k,1067) + lu(k,1074) = lu(k,1074) - lu(k,656) * lu(k,1067) + lu(k,1075) = lu(k,1075) - lu(k,657) * lu(k,1067) + lu(k,1077) = lu(k,1077) - lu(k,658) * lu(k,1067) + lu(k,1080) = lu(k,1080) - lu(k,659) * lu(k,1067) + lu(k,1083) = lu(k,1083) - lu(k,660) * lu(k,1067) + lu(k,1085) = lu(k,1085) - lu(k,661) * lu(k,1067) + lu(k,1086) = lu(k,1086) - lu(k,662) * lu(k,1067) + lu(k,1088) = lu(k,1088) - lu(k,663) * lu(k,1067) + lu(k,1089) = lu(k,1089) - lu(k,664) * lu(k,1067) + lu(k,1131) = lu(k,1131) - lu(k,653) * lu(k,1130) + lu(k,1132) = lu(k,1132) - lu(k,654) * lu(k,1130) + lu(k,1135) = lu(k,1135) - lu(k,655) * lu(k,1130) + lu(k,1137) = lu(k,1137) - lu(k,656) * lu(k,1130) + lu(k,1138) = lu(k,1138) - lu(k,657) * lu(k,1130) + lu(k,1140) = lu(k,1140) - lu(k,658) * lu(k,1130) + lu(k,1143) = lu(k,1143) - lu(k,659) * lu(k,1130) + lu(k,1146) = lu(k,1146) - lu(k,660) * lu(k,1130) + lu(k,1148) = lu(k,1148) - lu(k,661) * lu(k,1130) + lu(k,1149) = lu(k,1149) - lu(k,662) * lu(k,1130) + lu(k,1151) = lu(k,1151) - lu(k,663) * lu(k,1130) + lu(k,1152) = lu(k,1152) - lu(k,664) * lu(k,1130) + lu(k,1256) = lu(k,1256) - lu(k,653) * lu(k,1255) + lu(k,1257) = lu(k,1257) - lu(k,654) * lu(k,1255) + lu(k,1260) = lu(k,1260) - lu(k,655) * lu(k,1255) + lu(k,1262) = lu(k,1262) - lu(k,656) * lu(k,1255) + lu(k,1263) = lu(k,1263) - lu(k,657) * lu(k,1255) + lu(k,1265) = lu(k,1265) - lu(k,658) * lu(k,1255) + lu(k,1268) = lu(k,1268) - lu(k,659) * lu(k,1255) + lu(k,1271) = lu(k,1271) - lu(k,660) * lu(k,1255) + lu(k,1273) = lu(k,1273) - lu(k,661) * lu(k,1255) + lu(k,1274) = lu(k,1274) - lu(k,662) * lu(k,1255) + lu(k,1276) = lu(k,1276) - lu(k,663) * lu(k,1255) + lu(k,1277) = lu(k,1277) - lu(k,664) * lu(k,1255) + lu(k,672) = 1._r8 / lu(k,672) + lu(k,673) = lu(k,673) * lu(k,672) + lu(k,674) = lu(k,674) * lu(k,672) + lu(k,675) = lu(k,675) * lu(k,672) + lu(k,676) = lu(k,676) * lu(k,672) + lu(k,677) = lu(k,677) * lu(k,672) + lu(k,678) = lu(k,678) * lu(k,672) + lu(k,679) = lu(k,679) * lu(k,672) + lu(k,680) = lu(k,680) * lu(k,672) + lu(k,681) = lu(k,681) * lu(k,672) + lu(k,682) = lu(k,682) * lu(k,672) + lu(k,683) = lu(k,683) * lu(k,672) + lu(k,684) = lu(k,684) * lu(k,672) + lu(k,700) = lu(k,700) - lu(k,673) * lu(k,699) + lu(k,702) = lu(k,702) - lu(k,674) * lu(k,699) + lu(k,703) = lu(k,703) - lu(k,675) * lu(k,699) + lu(k,704) = lu(k,704) - lu(k,676) * lu(k,699) + lu(k,705) = lu(k,705) - lu(k,677) * lu(k,699) + lu(k,706) = lu(k,706) - lu(k,678) * lu(k,699) + lu(k,707) = lu(k,707) - lu(k,679) * lu(k,699) + lu(k,708) = lu(k,708) - lu(k,680) * lu(k,699) + lu(k,709) = lu(k,709) - lu(k,681) * lu(k,699) + lu(k,710) = lu(k,710) - lu(k,682) * lu(k,699) + lu(k,711) = lu(k,711) - lu(k,683) * lu(k,699) + lu(k,712) = lu(k,712) - lu(k,684) * lu(k,699) + lu(k,737) = lu(k,737) - lu(k,673) * lu(k,736) + lu(k,739) = lu(k,739) - lu(k,674) * lu(k,736) + lu(k,741) = lu(k,741) - lu(k,675) * lu(k,736) + lu(k,742) = lu(k,742) - lu(k,676) * lu(k,736) + lu(k,743) = lu(k,743) - lu(k,677) * lu(k,736) + lu(k,746) = lu(k,746) - lu(k,678) * lu(k,736) + lu(k,747) = lu(k,747) - lu(k,679) * lu(k,736) + lu(k,748) = lu(k,748) - lu(k,680) * lu(k,736) + lu(k,750) = lu(k,750) - lu(k,681) * lu(k,736) + lu(k,751) = lu(k,751) - lu(k,682) * lu(k,736) + lu(k,752) = lu(k,752) - lu(k,683) * lu(k,736) + lu(k,753) = lu(k,753) - lu(k,684) * lu(k,736) + lu(k,775) = lu(k,775) - lu(k,673) * lu(k,774) + lu(k,777) = lu(k,777) - lu(k,674) * lu(k,774) + lu(k,779) = lu(k,779) - lu(k,675) * lu(k,774) + lu(k,780) = lu(k,780) - lu(k,676) * lu(k,774) + lu(k,782) = lu(k,782) - lu(k,677) * lu(k,774) + lu(k,785) = lu(k,785) - lu(k,678) * lu(k,774) + lu(k,786) = lu(k,786) - lu(k,679) * lu(k,774) + lu(k,787) = lu(k,787) - lu(k,680) * lu(k,774) + lu(k,789) = lu(k,789) - lu(k,681) * lu(k,774) + lu(k,790) = lu(k,790) - lu(k,682) * lu(k,774) + lu(k,791) = lu(k,791) - lu(k,683) * lu(k,774) + lu(k,792) = lu(k,792) - lu(k,684) * lu(k,774) + lu(k,846) = lu(k,846) - lu(k,673) * lu(k,845) + lu(k,848) = lu(k,848) - lu(k,674) * lu(k,845) + lu(k,850) = lu(k,850) - lu(k,675) * lu(k,845) + lu(k,851) = lu(k,851) - lu(k,676) * lu(k,845) + lu(k,853) = lu(k,853) - lu(k,677) * lu(k,845) + lu(k,856) = lu(k,856) - lu(k,678) * lu(k,845) + lu(k,857) = lu(k,857) - lu(k,679) * lu(k,845) + lu(k,859) = lu(k,859) - lu(k,680) * lu(k,845) + lu(k,861) = lu(k,861) - lu(k,681) * lu(k,845) + lu(k,862) = lu(k,862) - lu(k,682) * lu(k,845) + lu(k,864) = lu(k,864) - lu(k,683) * lu(k,845) + lu(k,865) = lu(k,865) - lu(k,684) * lu(k,845) + lu(k,908) = lu(k,908) - lu(k,673) * lu(k,907) + lu(k,911) = lu(k,911) - lu(k,674) * lu(k,907) + lu(k,913) = lu(k,913) - lu(k,675) * lu(k,907) + lu(k,914) = lu(k,914) - lu(k,676) * lu(k,907) + lu(k,916) = lu(k,916) - lu(k,677) * lu(k,907) + lu(k,919) = lu(k,919) - lu(k,678) * lu(k,907) + lu(k,920) = lu(k,920) - lu(k,679) * lu(k,907) + lu(k,922) = lu(k,922) - lu(k,680) * lu(k,907) + lu(k,924) = lu(k,924) - lu(k,681) * lu(k,907) + lu(k,925) = lu(k,925) - lu(k,682) * lu(k,907) + lu(k,927) = lu(k,927) - lu(k,683) * lu(k,907) + lu(k,928) = lu(k,928) - lu(k,684) * lu(k,907) + lu(k,1024) = lu(k,1024) - lu(k,673) * lu(k,1023) + lu(k,1026) = lu(k,1026) - lu(k,674) * lu(k,1023) + lu(k,1028) = lu(k,1028) - lu(k,675) * lu(k,1023) + lu(k,1029) = lu(k,1029) - lu(k,676) * lu(k,1023) + lu(k,1031) = lu(k,1031) - lu(k,677) * lu(k,1023) + lu(k,1034) = lu(k,1034) - lu(k,678) * lu(k,1023) + lu(k,1035) = lu(k,1035) - lu(k,679) * lu(k,1023) + lu(k,1037) = lu(k,1037) - lu(k,680) * lu(k,1023) + lu(k,1039) = lu(k,1039) - lu(k,681) * lu(k,1023) + lu(k,1040) = lu(k,1040) - lu(k,682) * lu(k,1023) + lu(k,1042) = lu(k,1042) - lu(k,683) * lu(k,1023) + lu(k,1043) = lu(k,1043) - lu(k,684) * lu(k,1023) + lu(k,1069) = lu(k,1069) - lu(k,673) * lu(k,1068) + lu(k,1072) = lu(k,1072) - lu(k,674) * lu(k,1068) + lu(k,1074) = lu(k,1074) - lu(k,675) * lu(k,1068) + lu(k,1075) = lu(k,1075) - lu(k,676) * lu(k,1068) + lu(k,1077) = lu(k,1077) - lu(k,677) * lu(k,1068) + lu(k,1080) = lu(k,1080) - lu(k,678) * lu(k,1068) + lu(k,1081) = lu(k,1081) - lu(k,679) * lu(k,1068) + lu(k,1083) = lu(k,1083) - lu(k,680) * lu(k,1068) + lu(k,1085) = lu(k,1085) - lu(k,681) * lu(k,1068) + lu(k,1086) = lu(k,1086) - lu(k,682) * lu(k,1068) + lu(k,1088) = lu(k,1088) - lu(k,683) * lu(k,1068) + lu(k,1089) = lu(k,1089) - lu(k,684) * lu(k,1068) + lu(k,1132) = lu(k,1132) - lu(k,673) * lu(k,1131) + lu(k,1135) = lu(k,1135) - lu(k,674) * lu(k,1131) + lu(k,1137) = lu(k,1137) - lu(k,675) * lu(k,1131) + lu(k,1138) = lu(k,1138) - lu(k,676) * lu(k,1131) + lu(k,1140) = lu(k,1140) - lu(k,677) * lu(k,1131) + lu(k,1143) = lu(k,1143) - lu(k,678) * lu(k,1131) + lu(k,1144) = lu(k,1144) - lu(k,679) * lu(k,1131) + lu(k,1146) = lu(k,1146) - lu(k,680) * lu(k,1131) + lu(k,1148) = lu(k,1148) - lu(k,681) * lu(k,1131) + lu(k,1149) = lu(k,1149) - lu(k,682) * lu(k,1131) + lu(k,1151) = lu(k,1151) - lu(k,683) * lu(k,1131) + lu(k,1152) = lu(k,1152) - lu(k,684) * lu(k,1131) + lu(k,1257) = lu(k,1257) - lu(k,673) * lu(k,1256) + lu(k,1260) = lu(k,1260) - lu(k,674) * lu(k,1256) + lu(k,1262) = lu(k,1262) - lu(k,675) * lu(k,1256) + lu(k,1263) = lu(k,1263) - lu(k,676) * lu(k,1256) + lu(k,1265) = lu(k,1265) - lu(k,677) * lu(k,1256) + lu(k,1268) = lu(k,1268) - lu(k,678) * lu(k,1256) + lu(k,1269) = lu(k,1269) - lu(k,679) * lu(k,1256) + lu(k,1271) = lu(k,1271) - lu(k,680) * lu(k,1256) + lu(k,1273) = lu(k,1273) - lu(k,681) * lu(k,1256) + lu(k,1274) = lu(k,1274) - lu(k,682) * lu(k,1256) + lu(k,1276) = lu(k,1276) - lu(k,683) * lu(k,1256) + lu(k,1277) = lu(k,1277) - lu(k,684) * lu(k,1256) + lu(k,700) = 1._r8 / lu(k,700) + lu(k,701) = lu(k,701) * lu(k,700) + lu(k,702) = lu(k,702) * lu(k,700) + lu(k,703) = lu(k,703) * lu(k,700) + lu(k,704) = lu(k,704) * lu(k,700) + lu(k,705) = lu(k,705) * lu(k,700) + lu(k,706) = lu(k,706) * lu(k,700) + lu(k,707) = lu(k,707) * lu(k,700) + lu(k,708) = lu(k,708) * lu(k,700) + lu(k,709) = lu(k,709) * lu(k,700) + lu(k,710) = lu(k,710) * lu(k,700) + lu(k,711) = lu(k,711) * lu(k,700) + lu(k,712) = lu(k,712) * lu(k,700) + lu(k,738) = lu(k,738) - lu(k,701) * lu(k,737) + lu(k,739) = lu(k,739) - lu(k,702) * lu(k,737) + lu(k,741) = lu(k,741) - lu(k,703) * lu(k,737) + lu(k,742) = lu(k,742) - lu(k,704) * lu(k,737) + lu(k,743) = lu(k,743) - lu(k,705) * lu(k,737) + lu(k,746) = lu(k,746) - lu(k,706) * lu(k,737) + lu(k,747) = lu(k,747) - lu(k,707) * lu(k,737) + lu(k,748) = lu(k,748) - lu(k,708) * lu(k,737) + lu(k,750) = lu(k,750) - lu(k,709) * lu(k,737) + lu(k,751) = lu(k,751) - lu(k,710) * lu(k,737) + lu(k,752) = lu(k,752) - lu(k,711) * lu(k,737) + lu(k,753) = lu(k,753) - lu(k,712) * lu(k,737) + lu(k,776) = lu(k,776) - lu(k,701) * lu(k,775) + lu(k,777) = lu(k,777) - lu(k,702) * lu(k,775) + lu(k,779) = lu(k,779) - lu(k,703) * lu(k,775) + lu(k,780) = lu(k,780) - lu(k,704) * lu(k,775) + lu(k,782) = lu(k,782) - lu(k,705) * lu(k,775) + lu(k,785) = lu(k,785) - lu(k,706) * lu(k,775) + lu(k,786) = lu(k,786) - lu(k,707) * lu(k,775) + lu(k,787) = lu(k,787) - lu(k,708) * lu(k,775) + lu(k,789) = lu(k,789) - lu(k,709) * lu(k,775) + lu(k,790) = lu(k,790) - lu(k,710) * lu(k,775) + lu(k,791) = lu(k,791) - lu(k,711) * lu(k,775) + lu(k,792) = lu(k,792) - lu(k,712) * lu(k,775) + lu(k,847) = lu(k,847) - lu(k,701) * lu(k,846) + lu(k,848) = lu(k,848) - lu(k,702) * lu(k,846) + lu(k,850) = lu(k,850) - lu(k,703) * lu(k,846) + lu(k,851) = lu(k,851) - lu(k,704) * lu(k,846) + lu(k,853) = lu(k,853) - lu(k,705) * lu(k,846) + lu(k,856) = lu(k,856) - lu(k,706) * lu(k,846) + lu(k,857) = lu(k,857) - lu(k,707) * lu(k,846) + lu(k,859) = lu(k,859) - lu(k,708) * lu(k,846) + lu(k,861) = lu(k,861) - lu(k,709) * lu(k,846) + lu(k,862) = lu(k,862) - lu(k,710) * lu(k,846) + lu(k,864) = lu(k,864) - lu(k,711) * lu(k,846) + lu(k,865) = lu(k,865) - lu(k,712) * lu(k,846) + lu(k,910) = - lu(k,701) * lu(k,908) + lu(k,911) = lu(k,911) - lu(k,702) * lu(k,908) + lu(k,913) = lu(k,913) - lu(k,703) * lu(k,908) + lu(k,914) = lu(k,914) - lu(k,704) * lu(k,908) + lu(k,916) = lu(k,916) - lu(k,705) * lu(k,908) + lu(k,919) = lu(k,919) - lu(k,706) * lu(k,908) + lu(k,920) = lu(k,920) - lu(k,707) * lu(k,908) + lu(k,922) = lu(k,922) - lu(k,708) * lu(k,908) + lu(k,924) = lu(k,924) - lu(k,709) * lu(k,908) + lu(k,925) = lu(k,925) - lu(k,710) * lu(k,908) + lu(k,927) = lu(k,927) - lu(k,711) * lu(k,908) + lu(k,928) = lu(k,928) - lu(k,712) * lu(k,908) + lu(k,968) = - lu(k,701) * lu(k,967) + lu(k,969) = lu(k,969) - lu(k,702) * lu(k,967) + lu(k,971) = lu(k,971) - lu(k,703) * lu(k,967) + lu(k,972) = lu(k,972) - lu(k,704) * lu(k,967) + lu(k,974) = lu(k,974) - lu(k,705) * lu(k,967) + lu(k,977) = lu(k,977) - lu(k,706) * lu(k,967) + lu(k,978) = lu(k,978) - lu(k,707) * lu(k,967) + lu(k,980) = lu(k,980) - lu(k,708) * lu(k,967) + lu(k,982) = lu(k,982) - lu(k,709) * lu(k,967) + lu(k,983) = lu(k,983) - lu(k,710) * lu(k,967) + lu(k,985) = lu(k,985) - lu(k,711) * lu(k,967) + lu(k,986) = lu(k,986) - lu(k,712) * lu(k,967) + lu(k,1025) = lu(k,1025) - lu(k,701) * lu(k,1024) + lu(k,1026) = lu(k,1026) - lu(k,702) * lu(k,1024) + lu(k,1028) = lu(k,1028) - lu(k,703) * lu(k,1024) + lu(k,1029) = lu(k,1029) - lu(k,704) * lu(k,1024) + lu(k,1031) = lu(k,1031) - lu(k,705) * lu(k,1024) + lu(k,1034) = lu(k,1034) - lu(k,706) * lu(k,1024) + lu(k,1035) = lu(k,1035) - lu(k,707) * lu(k,1024) + lu(k,1037) = lu(k,1037) - lu(k,708) * lu(k,1024) + lu(k,1039) = lu(k,1039) - lu(k,709) * lu(k,1024) + lu(k,1040) = lu(k,1040) - lu(k,710) * lu(k,1024) + lu(k,1042) = lu(k,1042) - lu(k,711) * lu(k,1024) + lu(k,1043) = lu(k,1043) - lu(k,712) * lu(k,1024) + lu(k,1071) = lu(k,1071) - lu(k,701) * lu(k,1069) + lu(k,1072) = lu(k,1072) - lu(k,702) * lu(k,1069) + lu(k,1074) = lu(k,1074) - lu(k,703) * lu(k,1069) + lu(k,1075) = lu(k,1075) - lu(k,704) * lu(k,1069) + lu(k,1077) = lu(k,1077) - lu(k,705) * lu(k,1069) + lu(k,1080) = lu(k,1080) - lu(k,706) * lu(k,1069) + lu(k,1081) = lu(k,1081) - lu(k,707) * lu(k,1069) + lu(k,1083) = lu(k,1083) - lu(k,708) * lu(k,1069) + lu(k,1085) = lu(k,1085) - lu(k,709) * lu(k,1069) + lu(k,1086) = lu(k,1086) - lu(k,710) * lu(k,1069) + lu(k,1088) = lu(k,1088) - lu(k,711) * lu(k,1069) + lu(k,1089) = lu(k,1089) - lu(k,712) * lu(k,1069) + lu(k,1134) = lu(k,1134) - lu(k,701) * lu(k,1132) + lu(k,1135) = lu(k,1135) - lu(k,702) * lu(k,1132) + lu(k,1137) = lu(k,1137) - lu(k,703) * lu(k,1132) + lu(k,1138) = lu(k,1138) - lu(k,704) * lu(k,1132) + lu(k,1140) = lu(k,1140) - lu(k,705) * lu(k,1132) + lu(k,1143) = lu(k,1143) - lu(k,706) * lu(k,1132) + lu(k,1144) = lu(k,1144) - lu(k,707) * lu(k,1132) + lu(k,1146) = lu(k,1146) - lu(k,708) * lu(k,1132) + lu(k,1148) = lu(k,1148) - lu(k,709) * lu(k,1132) + lu(k,1149) = lu(k,1149) - lu(k,710) * lu(k,1132) + lu(k,1151) = lu(k,1151) - lu(k,711) * lu(k,1132) + lu(k,1152) = lu(k,1152) - lu(k,712) * lu(k,1132) + lu(k,1259) = lu(k,1259) - lu(k,701) * lu(k,1257) + lu(k,1260) = lu(k,1260) - lu(k,702) * lu(k,1257) + lu(k,1262) = lu(k,1262) - lu(k,703) * lu(k,1257) + lu(k,1263) = lu(k,1263) - lu(k,704) * lu(k,1257) + lu(k,1265) = lu(k,1265) - lu(k,705) * lu(k,1257) + lu(k,1268) = lu(k,1268) - lu(k,706) * lu(k,1257) + lu(k,1269) = lu(k,1269) - lu(k,707) * lu(k,1257) + lu(k,1271) = lu(k,1271) - lu(k,708) * lu(k,1257) + lu(k,1273) = lu(k,1273) - lu(k,709) * lu(k,1257) + lu(k,1274) = lu(k,1274) - lu(k,710) * lu(k,1257) + lu(k,1276) = lu(k,1276) - lu(k,711) * lu(k,1257) + lu(k,1277) = lu(k,1277) - lu(k,712) * lu(k,1257) + lu(k,716) = 1._r8 / lu(k,716) + lu(k,717) = lu(k,717) * lu(k,716) + lu(k,718) = lu(k,718) * lu(k,716) + lu(k,719) = lu(k,719) * lu(k,716) + lu(k,720) = lu(k,720) * lu(k,716) + lu(k,721) = lu(k,721) * lu(k,716) + lu(k,722) = lu(k,722) * lu(k,716) + lu(k,723) = lu(k,723) * lu(k,716) + lu(k,724) = lu(k,724) * lu(k,716) + lu(k,725) = lu(k,725) * lu(k,716) + lu(k,726) = lu(k,726) * lu(k,716) + lu(k,727) = lu(k,727) * lu(k,716) + lu(k,728) = lu(k,728) * lu(k,716) + lu(k,729) = lu(k,729) * lu(k,716) + lu(k,875) = - lu(k,717) * lu(k,873) + lu(k,877) = lu(k,877) - lu(k,718) * lu(k,873) + lu(k,878) = lu(k,878) - lu(k,719) * lu(k,873) + lu(k,879) = lu(k,879) - lu(k,720) * lu(k,873) + lu(k,881) = lu(k,881) - lu(k,721) * lu(k,873) + lu(k,882) = lu(k,882) - lu(k,722) * lu(k,873) + lu(k,883) = - lu(k,723) * lu(k,873) + lu(k,884) = lu(k,884) - lu(k,724) * lu(k,873) + lu(k,887) = lu(k,887) - lu(k,725) * lu(k,873) + lu(k,888) = lu(k,888) - lu(k,726) * lu(k,873) + lu(k,889) = lu(k,889) - lu(k,727) * lu(k,873) + lu(k,890) = lu(k,890) - lu(k,728) * lu(k,873) + lu(k,891) = lu(k,891) - lu(k,729) * lu(k,873) + lu(k,912) = lu(k,912) - lu(k,717) * lu(k,909) + lu(k,914) = lu(k,914) - lu(k,718) * lu(k,909) + lu(k,915) = lu(k,915) - lu(k,719) * lu(k,909) + lu(k,916) = lu(k,916) - lu(k,720) * lu(k,909) + lu(k,918) = lu(k,918) - lu(k,721) * lu(k,909) + lu(k,919) = lu(k,919) - lu(k,722) * lu(k,909) + lu(k,920) = lu(k,920) - lu(k,723) * lu(k,909) + lu(k,921) = lu(k,921) - lu(k,724) * lu(k,909) + lu(k,924) = lu(k,924) - lu(k,725) * lu(k,909) + lu(k,925) = lu(k,925) - lu(k,726) * lu(k,909) + lu(k,926) = lu(k,926) - lu(k,727) * lu(k,909) + lu(k,927) = lu(k,927) - lu(k,728) * lu(k,909) + lu(k,928) = lu(k,928) - lu(k,729) * lu(k,909) + lu(k,1073) = lu(k,1073) - lu(k,717) * lu(k,1070) + lu(k,1075) = lu(k,1075) - lu(k,718) * lu(k,1070) + lu(k,1076) = lu(k,1076) - lu(k,719) * lu(k,1070) + lu(k,1077) = lu(k,1077) - lu(k,720) * lu(k,1070) + lu(k,1079) = lu(k,1079) - lu(k,721) * lu(k,1070) + lu(k,1080) = lu(k,1080) - lu(k,722) * lu(k,1070) + lu(k,1081) = lu(k,1081) - lu(k,723) * lu(k,1070) + lu(k,1082) = lu(k,1082) - lu(k,724) * lu(k,1070) + lu(k,1085) = lu(k,1085) - lu(k,725) * lu(k,1070) + lu(k,1086) = lu(k,1086) - lu(k,726) * lu(k,1070) + lu(k,1087) = lu(k,1087) - lu(k,727) * lu(k,1070) + lu(k,1088) = lu(k,1088) - lu(k,728) * lu(k,1070) + lu(k,1089) = lu(k,1089) - lu(k,729) * lu(k,1070) + lu(k,1136) = lu(k,1136) - lu(k,717) * lu(k,1133) + lu(k,1138) = lu(k,1138) - lu(k,718) * lu(k,1133) + lu(k,1139) = - lu(k,719) * lu(k,1133) + lu(k,1140) = lu(k,1140) - lu(k,720) * lu(k,1133) + lu(k,1142) = lu(k,1142) - lu(k,721) * lu(k,1133) + lu(k,1143) = lu(k,1143) - lu(k,722) * lu(k,1133) + lu(k,1144) = lu(k,1144) - lu(k,723) * lu(k,1133) + lu(k,1145) = - lu(k,724) * lu(k,1133) + lu(k,1148) = lu(k,1148) - lu(k,725) * lu(k,1133) + lu(k,1149) = lu(k,1149) - lu(k,726) * lu(k,1133) + lu(k,1150) = - lu(k,727) * lu(k,1133) + lu(k,1151) = lu(k,1151) - lu(k,728) * lu(k,1133) + lu(k,1152) = lu(k,1152) - lu(k,729) * lu(k,1133) + lu(k,1261) = lu(k,1261) - lu(k,717) * lu(k,1258) + lu(k,1263) = lu(k,1263) - lu(k,718) * lu(k,1258) + lu(k,1264) = lu(k,1264) - lu(k,719) * lu(k,1258) + lu(k,1265) = lu(k,1265) - lu(k,720) * lu(k,1258) + lu(k,1267) = lu(k,1267) - lu(k,721) * lu(k,1258) + lu(k,1268) = lu(k,1268) - lu(k,722) * lu(k,1258) + lu(k,1269) = lu(k,1269) - lu(k,723) * lu(k,1258) + lu(k,1270) = lu(k,1270) - lu(k,724) * lu(k,1258) + lu(k,1273) = lu(k,1273) - lu(k,725) * lu(k,1258) + lu(k,1274) = lu(k,1274) - lu(k,726) * lu(k,1258) + lu(k,1275) = lu(k,1275) - lu(k,727) * lu(k,1258) + lu(k,1276) = lu(k,1276) - lu(k,728) * lu(k,1258) + lu(k,1277) = lu(k,1277) - lu(k,729) * lu(k,1258) + lu(k,1293) = lu(k,1293) - lu(k,717) * lu(k,1292) + lu(k,1295) = lu(k,1295) - lu(k,718) * lu(k,1292) + lu(k,1296) = lu(k,1296) - lu(k,719) * lu(k,1292) + lu(k,1297) = lu(k,1297) - lu(k,720) * lu(k,1292) + lu(k,1299) = lu(k,1299) - lu(k,721) * lu(k,1292) + lu(k,1300) = lu(k,1300) - lu(k,722) * lu(k,1292) + lu(k,1301) = lu(k,1301) - lu(k,723) * lu(k,1292) + lu(k,1302) = lu(k,1302) - lu(k,724) * lu(k,1292) + lu(k,1305) = lu(k,1305) - lu(k,725) * lu(k,1292) + lu(k,1306) = lu(k,1306) - lu(k,726) * lu(k,1292) + lu(k,1307) = lu(k,1307) - lu(k,727) * lu(k,1292) + lu(k,1308) = lu(k,1308) - lu(k,728) * lu(k,1292) + lu(k,1309) = lu(k,1309) - lu(k,729) * lu(k,1292) + lu(k,1317) = - lu(k,717) * lu(k,1316) + lu(k,1318) = lu(k,1318) - lu(k,718) * lu(k,1316) + lu(k,1319) = lu(k,1319) - lu(k,719) * lu(k,1316) + lu(k,1320) = lu(k,1320) - lu(k,720) * lu(k,1316) + lu(k,1322) = lu(k,1322) - lu(k,721) * lu(k,1316) + lu(k,1323) = lu(k,1323) - lu(k,722) * lu(k,1316) + lu(k,1324) = - lu(k,723) * lu(k,1316) + lu(k,1325) = lu(k,1325) - lu(k,724) * lu(k,1316) + lu(k,1328) = lu(k,1328) - lu(k,725) * lu(k,1316) + lu(k,1329) = lu(k,1329) - lu(k,726) * lu(k,1316) + lu(k,1330) = lu(k,1330) - lu(k,727) * lu(k,1316) + lu(k,1331) = lu(k,1331) - lu(k,728) * lu(k,1316) + lu(k,1332) = lu(k,1332) - lu(k,729) * lu(k,1316) + lu(k,1342) = lu(k,1342) - lu(k,717) * lu(k,1341) + lu(k,1344) = lu(k,1344) - lu(k,718) * lu(k,1341) + lu(k,1345) = - lu(k,719) * lu(k,1341) + lu(k,1346) = lu(k,1346) - lu(k,720) * lu(k,1341) + lu(k,1348) = - lu(k,721) * lu(k,1341) + lu(k,1349) = lu(k,1349) - lu(k,722) * lu(k,1341) + lu(k,1350) = lu(k,1350) - lu(k,723) * lu(k,1341) + lu(k,1351) = - lu(k,724) * lu(k,1341) + lu(k,1354) = lu(k,1354) - lu(k,725) * lu(k,1341) + lu(k,1355) = lu(k,1355) - lu(k,726) * lu(k,1341) + lu(k,1356) = - lu(k,727) * lu(k,1341) + lu(k,1357) = lu(k,1357) - lu(k,728) * lu(k,1341) + lu(k,1358) = lu(k,1358) - lu(k,729) * lu(k,1341) + lu(k,1364) = lu(k,1364) - lu(k,717) * lu(k,1363) + lu(k,1365) = - lu(k,718) * lu(k,1363) + lu(k,1366) = - lu(k,719) * lu(k,1363) + lu(k,1367) = - lu(k,720) * lu(k,1363) + lu(k,1369) = lu(k,1369) - lu(k,721) * lu(k,1363) + lu(k,1370) = lu(k,1370) - lu(k,722) * lu(k,1363) + lu(k,1371) = - lu(k,723) * lu(k,1363) + lu(k,1372) = - lu(k,724) * lu(k,1363) + lu(k,1375) = lu(k,1375) - lu(k,725) * lu(k,1363) + lu(k,1376) = lu(k,1376) - lu(k,726) * lu(k,1363) + lu(k,1377) = - lu(k,727) * lu(k,1363) + lu(k,1378) = - lu(k,728) * lu(k,1363) + lu(k,1379) = lu(k,1379) - lu(k,729) * lu(k,1363) + end do + end subroutine lu_fac15 + subroutine lu_fac16( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,738) = 1._r8 / lu(k,738) + lu(k,739) = lu(k,739) * lu(k,738) + lu(k,740) = lu(k,740) * lu(k,738) + lu(k,741) = lu(k,741) * lu(k,738) + lu(k,742) = lu(k,742) * lu(k,738) + lu(k,743) = lu(k,743) * lu(k,738) + lu(k,744) = lu(k,744) * lu(k,738) + lu(k,745) = lu(k,745) * lu(k,738) + lu(k,746) = lu(k,746) * lu(k,738) + lu(k,747) = lu(k,747) * lu(k,738) + lu(k,748) = lu(k,748) * lu(k,738) + lu(k,749) = lu(k,749) * lu(k,738) + lu(k,750) = lu(k,750) * lu(k,738) + lu(k,751) = lu(k,751) * lu(k,738) + lu(k,752) = lu(k,752) * lu(k,738) + lu(k,753) = lu(k,753) * lu(k,738) + lu(k,777) = lu(k,777) - lu(k,739) * lu(k,776) + lu(k,778) = lu(k,778) - lu(k,740) * lu(k,776) + lu(k,779) = lu(k,779) - lu(k,741) * lu(k,776) + lu(k,780) = lu(k,780) - lu(k,742) * lu(k,776) + lu(k,782) = lu(k,782) - lu(k,743) * lu(k,776) + lu(k,783) = - lu(k,744) * lu(k,776) + lu(k,784) = lu(k,784) - lu(k,745) * lu(k,776) + lu(k,785) = lu(k,785) - lu(k,746) * lu(k,776) + lu(k,786) = lu(k,786) - lu(k,747) * lu(k,776) + lu(k,787) = lu(k,787) - lu(k,748) * lu(k,776) + lu(k,788) = - lu(k,749) * lu(k,776) + lu(k,789) = lu(k,789) - lu(k,750) * lu(k,776) + lu(k,790) = lu(k,790) - lu(k,751) * lu(k,776) + lu(k,791) = lu(k,791) - lu(k,752) * lu(k,776) + lu(k,792) = lu(k,792) - lu(k,753) * lu(k,776) + lu(k,848) = lu(k,848) - lu(k,739) * lu(k,847) + lu(k,849) = lu(k,849) - lu(k,740) * lu(k,847) + lu(k,850) = lu(k,850) - lu(k,741) * lu(k,847) + lu(k,851) = lu(k,851) - lu(k,742) * lu(k,847) + lu(k,853) = lu(k,853) - lu(k,743) * lu(k,847) + lu(k,854) = - lu(k,744) * lu(k,847) + lu(k,855) = lu(k,855) - lu(k,745) * lu(k,847) + lu(k,856) = lu(k,856) - lu(k,746) * lu(k,847) + lu(k,857) = lu(k,857) - lu(k,747) * lu(k,847) + lu(k,859) = lu(k,859) - lu(k,748) * lu(k,847) + lu(k,860) = lu(k,860) - lu(k,749) * lu(k,847) + lu(k,861) = lu(k,861) - lu(k,750) * lu(k,847) + lu(k,862) = lu(k,862) - lu(k,751) * lu(k,847) + lu(k,864) = lu(k,864) - lu(k,752) * lu(k,847) + lu(k,865) = lu(k,865) - lu(k,753) * lu(k,847) + lu(k,911) = lu(k,911) - lu(k,739) * lu(k,910) + lu(k,912) = lu(k,912) - lu(k,740) * lu(k,910) + lu(k,913) = lu(k,913) - lu(k,741) * lu(k,910) + lu(k,914) = lu(k,914) - lu(k,742) * lu(k,910) + lu(k,916) = lu(k,916) - lu(k,743) * lu(k,910) + lu(k,917) = lu(k,917) - lu(k,744) * lu(k,910) + lu(k,918) = lu(k,918) - lu(k,745) * lu(k,910) + lu(k,919) = lu(k,919) - lu(k,746) * lu(k,910) + lu(k,920) = lu(k,920) - lu(k,747) * lu(k,910) + lu(k,922) = lu(k,922) - lu(k,748) * lu(k,910) + lu(k,923) = lu(k,923) - lu(k,749) * lu(k,910) + lu(k,924) = lu(k,924) - lu(k,750) * lu(k,910) + lu(k,925) = lu(k,925) - lu(k,751) * lu(k,910) + lu(k,927) = lu(k,927) - lu(k,752) * lu(k,910) + lu(k,928) = lu(k,928) - lu(k,753) * lu(k,910) + lu(k,969) = lu(k,969) - lu(k,739) * lu(k,968) + lu(k,970) = lu(k,970) - lu(k,740) * lu(k,968) + lu(k,971) = lu(k,971) - lu(k,741) * lu(k,968) + lu(k,972) = lu(k,972) - lu(k,742) * lu(k,968) + lu(k,974) = lu(k,974) - lu(k,743) * lu(k,968) + lu(k,975) = lu(k,975) - lu(k,744) * lu(k,968) + lu(k,976) = lu(k,976) - lu(k,745) * lu(k,968) + lu(k,977) = lu(k,977) - lu(k,746) * lu(k,968) + lu(k,978) = lu(k,978) - lu(k,747) * lu(k,968) + lu(k,980) = lu(k,980) - lu(k,748) * lu(k,968) + lu(k,981) = lu(k,981) - lu(k,749) * lu(k,968) + lu(k,982) = lu(k,982) - lu(k,750) * lu(k,968) + lu(k,983) = lu(k,983) - lu(k,751) * lu(k,968) + lu(k,985) = lu(k,985) - lu(k,752) * lu(k,968) + lu(k,986) = lu(k,986) - lu(k,753) * lu(k,968) + lu(k,1026) = lu(k,1026) - lu(k,739) * lu(k,1025) + lu(k,1027) = lu(k,1027) - lu(k,740) * lu(k,1025) + lu(k,1028) = lu(k,1028) - lu(k,741) * lu(k,1025) + lu(k,1029) = lu(k,1029) - lu(k,742) * lu(k,1025) + lu(k,1031) = lu(k,1031) - lu(k,743) * lu(k,1025) + lu(k,1032) = lu(k,1032) - lu(k,744) * lu(k,1025) + lu(k,1033) = lu(k,1033) - lu(k,745) * lu(k,1025) + lu(k,1034) = lu(k,1034) - lu(k,746) * lu(k,1025) + lu(k,1035) = lu(k,1035) - lu(k,747) * lu(k,1025) + lu(k,1037) = lu(k,1037) - lu(k,748) * lu(k,1025) + lu(k,1038) = lu(k,1038) - lu(k,749) * lu(k,1025) + lu(k,1039) = lu(k,1039) - lu(k,750) * lu(k,1025) + lu(k,1040) = lu(k,1040) - lu(k,751) * lu(k,1025) + lu(k,1042) = lu(k,1042) - lu(k,752) * lu(k,1025) + lu(k,1043) = lu(k,1043) - lu(k,753) * lu(k,1025) + lu(k,1072) = lu(k,1072) - lu(k,739) * lu(k,1071) + lu(k,1073) = lu(k,1073) - lu(k,740) * lu(k,1071) + lu(k,1074) = lu(k,1074) - lu(k,741) * lu(k,1071) + lu(k,1075) = lu(k,1075) - lu(k,742) * lu(k,1071) + lu(k,1077) = lu(k,1077) - lu(k,743) * lu(k,1071) + lu(k,1078) = lu(k,1078) - lu(k,744) * lu(k,1071) + lu(k,1079) = lu(k,1079) - lu(k,745) * lu(k,1071) + lu(k,1080) = lu(k,1080) - lu(k,746) * lu(k,1071) + lu(k,1081) = lu(k,1081) - lu(k,747) * lu(k,1071) + lu(k,1083) = lu(k,1083) - lu(k,748) * lu(k,1071) + lu(k,1084) = lu(k,1084) - lu(k,749) * lu(k,1071) + lu(k,1085) = lu(k,1085) - lu(k,750) * lu(k,1071) + lu(k,1086) = lu(k,1086) - lu(k,751) * lu(k,1071) + lu(k,1088) = lu(k,1088) - lu(k,752) * lu(k,1071) + lu(k,1089) = lu(k,1089) - lu(k,753) * lu(k,1071) + lu(k,1135) = lu(k,1135) - lu(k,739) * lu(k,1134) + lu(k,1136) = lu(k,1136) - lu(k,740) * lu(k,1134) + lu(k,1137) = lu(k,1137) - lu(k,741) * lu(k,1134) + lu(k,1138) = lu(k,1138) - lu(k,742) * lu(k,1134) + lu(k,1140) = lu(k,1140) - lu(k,743) * lu(k,1134) + lu(k,1141) = lu(k,1141) - lu(k,744) * lu(k,1134) + lu(k,1142) = lu(k,1142) - lu(k,745) * lu(k,1134) + lu(k,1143) = lu(k,1143) - lu(k,746) * lu(k,1134) + lu(k,1144) = lu(k,1144) - lu(k,747) * lu(k,1134) + lu(k,1146) = lu(k,1146) - lu(k,748) * lu(k,1134) + lu(k,1147) = lu(k,1147) - lu(k,749) * lu(k,1134) + lu(k,1148) = lu(k,1148) - lu(k,750) * lu(k,1134) + lu(k,1149) = lu(k,1149) - lu(k,751) * lu(k,1134) + lu(k,1151) = lu(k,1151) - lu(k,752) * lu(k,1134) + lu(k,1152) = lu(k,1152) - lu(k,753) * lu(k,1134) + lu(k,1260) = lu(k,1260) - lu(k,739) * lu(k,1259) + lu(k,1261) = lu(k,1261) - lu(k,740) * lu(k,1259) + lu(k,1262) = lu(k,1262) - lu(k,741) * lu(k,1259) + lu(k,1263) = lu(k,1263) - lu(k,742) * lu(k,1259) + lu(k,1265) = lu(k,1265) - lu(k,743) * lu(k,1259) + lu(k,1266) = lu(k,1266) - lu(k,744) * lu(k,1259) + lu(k,1267) = lu(k,1267) - lu(k,745) * lu(k,1259) + lu(k,1268) = lu(k,1268) - lu(k,746) * lu(k,1259) + lu(k,1269) = lu(k,1269) - lu(k,747) * lu(k,1259) + lu(k,1271) = lu(k,1271) - lu(k,748) * lu(k,1259) + lu(k,1272) = lu(k,1272) - lu(k,749) * lu(k,1259) + lu(k,1273) = lu(k,1273) - lu(k,750) * lu(k,1259) + lu(k,1274) = lu(k,1274) - lu(k,751) * lu(k,1259) + lu(k,1276) = lu(k,1276) - lu(k,752) * lu(k,1259) + lu(k,1277) = lu(k,1277) - lu(k,753) * lu(k,1259) + lu(k,777) = 1._r8 / lu(k,777) + lu(k,778) = lu(k,778) * lu(k,777) + lu(k,779) = lu(k,779) * lu(k,777) + lu(k,780) = lu(k,780) * lu(k,777) + lu(k,781) = lu(k,781) * lu(k,777) + lu(k,782) = lu(k,782) * lu(k,777) + lu(k,783) = lu(k,783) * lu(k,777) + lu(k,784) = lu(k,784) * lu(k,777) + lu(k,785) = lu(k,785) * lu(k,777) + lu(k,786) = lu(k,786) * lu(k,777) + lu(k,787) = lu(k,787) * lu(k,777) + lu(k,788) = lu(k,788) * lu(k,777) + lu(k,789) = lu(k,789) * lu(k,777) + lu(k,790) = lu(k,790) * lu(k,777) + lu(k,791) = lu(k,791) * lu(k,777) + lu(k,792) = lu(k,792) * lu(k,777) + lu(k,849) = lu(k,849) - lu(k,778) * lu(k,848) + lu(k,850) = lu(k,850) - lu(k,779) * lu(k,848) + lu(k,851) = lu(k,851) - lu(k,780) * lu(k,848) + lu(k,852) = lu(k,852) - lu(k,781) * lu(k,848) + lu(k,853) = lu(k,853) - lu(k,782) * lu(k,848) + lu(k,854) = lu(k,854) - lu(k,783) * lu(k,848) + lu(k,855) = lu(k,855) - lu(k,784) * lu(k,848) + lu(k,856) = lu(k,856) - lu(k,785) * lu(k,848) + lu(k,857) = lu(k,857) - lu(k,786) * lu(k,848) + lu(k,859) = lu(k,859) - lu(k,787) * lu(k,848) + lu(k,860) = lu(k,860) - lu(k,788) * lu(k,848) + lu(k,861) = lu(k,861) - lu(k,789) * lu(k,848) + lu(k,862) = lu(k,862) - lu(k,790) * lu(k,848) + lu(k,864) = lu(k,864) - lu(k,791) * lu(k,848) + lu(k,865) = lu(k,865) - lu(k,792) * lu(k,848) + lu(k,875) = lu(k,875) - lu(k,778) * lu(k,874) + lu(k,876) = lu(k,876) - lu(k,779) * lu(k,874) + lu(k,877) = lu(k,877) - lu(k,780) * lu(k,874) + lu(k,878) = lu(k,878) - lu(k,781) * lu(k,874) + lu(k,879) = lu(k,879) - lu(k,782) * lu(k,874) + lu(k,880) = lu(k,880) - lu(k,783) * lu(k,874) + lu(k,881) = lu(k,881) - lu(k,784) * lu(k,874) + lu(k,882) = lu(k,882) - lu(k,785) * lu(k,874) + lu(k,883) = lu(k,883) - lu(k,786) * lu(k,874) + lu(k,885) = lu(k,885) - lu(k,787) * lu(k,874) + lu(k,886) = - lu(k,788) * lu(k,874) + lu(k,887) = lu(k,887) - lu(k,789) * lu(k,874) + lu(k,888) = lu(k,888) - lu(k,790) * lu(k,874) + lu(k,890) = lu(k,890) - lu(k,791) * lu(k,874) + lu(k,891) = lu(k,891) - lu(k,792) * lu(k,874) + lu(k,912) = lu(k,912) - lu(k,778) * lu(k,911) + lu(k,913) = lu(k,913) - lu(k,779) * lu(k,911) + lu(k,914) = lu(k,914) - lu(k,780) * lu(k,911) + lu(k,915) = lu(k,915) - lu(k,781) * lu(k,911) + lu(k,916) = lu(k,916) - lu(k,782) * lu(k,911) + lu(k,917) = lu(k,917) - lu(k,783) * lu(k,911) + lu(k,918) = lu(k,918) - lu(k,784) * lu(k,911) + lu(k,919) = lu(k,919) - lu(k,785) * lu(k,911) + lu(k,920) = lu(k,920) - lu(k,786) * lu(k,911) + lu(k,922) = lu(k,922) - lu(k,787) * lu(k,911) + lu(k,923) = lu(k,923) - lu(k,788) * lu(k,911) + lu(k,924) = lu(k,924) - lu(k,789) * lu(k,911) + lu(k,925) = lu(k,925) - lu(k,790) * lu(k,911) + lu(k,927) = lu(k,927) - lu(k,791) * lu(k,911) + lu(k,928) = lu(k,928) - lu(k,792) * lu(k,911) + lu(k,970) = lu(k,970) - lu(k,778) * lu(k,969) + lu(k,971) = lu(k,971) - lu(k,779) * lu(k,969) + lu(k,972) = lu(k,972) - lu(k,780) * lu(k,969) + lu(k,973) = lu(k,973) - lu(k,781) * lu(k,969) + lu(k,974) = lu(k,974) - lu(k,782) * lu(k,969) + lu(k,975) = lu(k,975) - lu(k,783) * lu(k,969) + lu(k,976) = lu(k,976) - lu(k,784) * lu(k,969) + lu(k,977) = lu(k,977) - lu(k,785) * lu(k,969) + lu(k,978) = lu(k,978) - lu(k,786) * lu(k,969) + lu(k,980) = lu(k,980) - lu(k,787) * lu(k,969) + lu(k,981) = lu(k,981) - lu(k,788) * lu(k,969) + lu(k,982) = lu(k,982) - lu(k,789) * lu(k,969) + lu(k,983) = lu(k,983) - lu(k,790) * lu(k,969) + lu(k,985) = lu(k,985) - lu(k,791) * lu(k,969) + lu(k,986) = lu(k,986) - lu(k,792) * lu(k,969) + lu(k,1027) = lu(k,1027) - lu(k,778) * lu(k,1026) + lu(k,1028) = lu(k,1028) - lu(k,779) * lu(k,1026) + lu(k,1029) = lu(k,1029) - lu(k,780) * lu(k,1026) + lu(k,1030) = lu(k,1030) - lu(k,781) * lu(k,1026) + lu(k,1031) = lu(k,1031) - lu(k,782) * lu(k,1026) + lu(k,1032) = lu(k,1032) - lu(k,783) * lu(k,1026) + lu(k,1033) = lu(k,1033) - lu(k,784) * lu(k,1026) + lu(k,1034) = lu(k,1034) - lu(k,785) * lu(k,1026) + lu(k,1035) = lu(k,1035) - lu(k,786) * lu(k,1026) + lu(k,1037) = lu(k,1037) - lu(k,787) * lu(k,1026) + lu(k,1038) = lu(k,1038) - lu(k,788) * lu(k,1026) + lu(k,1039) = lu(k,1039) - lu(k,789) * lu(k,1026) + lu(k,1040) = lu(k,1040) - lu(k,790) * lu(k,1026) + lu(k,1042) = lu(k,1042) - lu(k,791) * lu(k,1026) + lu(k,1043) = lu(k,1043) - lu(k,792) * lu(k,1026) + lu(k,1073) = lu(k,1073) - lu(k,778) * lu(k,1072) + lu(k,1074) = lu(k,1074) - lu(k,779) * lu(k,1072) + lu(k,1075) = lu(k,1075) - lu(k,780) * lu(k,1072) + lu(k,1076) = lu(k,1076) - lu(k,781) * lu(k,1072) + lu(k,1077) = lu(k,1077) - lu(k,782) * lu(k,1072) + lu(k,1078) = lu(k,1078) - lu(k,783) * lu(k,1072) + lu(k,1079) = lu(k,1079) - lu(k,784) * lu(k,1072) + lu(k,1080) = lu(k,1080) - lu(k,785) * lu(k,1072) + lu(k,1081) = lu(k,1081) - lu(k,786) * lu(k,1072) + lu(k,1083) = lu(k,1083) - lu(k,787) * lu(k,1072) + lu(k,1084) = lu(k,1084) - lu(k,788) * lu(k,1072) + lu(k,1085) = lu(k,1085) - lu(k,789) * lu(k,1072) + lu(k,1086) = lu(k,1086) - lu(k,790) * lu(k,1072) + lu(k,1088) = lu(k,1088) - lu(k,791) * lu(k,1072) + lu(k,1089) = lu(k,1089) - lu(k,792) * lu(k,1072) + lu(k,1136) = lu(k,1136) - lu(k,778) * lu(k,1135) + lu(k,1137) = lu(k,1137) - lu(k,779) * lu(k,1135) + lu(k,1138) = lu(k,1138) - lu(k,780) * lu(k,1135) + lu(k,1139) = lu(k,1139) - lu(k,781) * lu(k,1135) + lu(k,1140) = lu(k,1140) - lu(k,782) * lu(k,1135) + lu(k,1141) = lu(k,1141) - lu(k,783) * lu(k,1135) + lu(k,1142) = lu(k,1142) - lu(k,784) * lu(k,1135) + lu(k,1143) = lu(k,1143) - lu(k,785) * lu(k,1135) + lu(k,1144) = lu(k,1144) - lu(k,786) * lu(k,1135) + lu(k,1146) = lu(k,1146) - lu(k,787) * lu(k,1135) + lu(k,1147) = lu(k,1147) - lu(k,788) * lu(k,1135) + lu(k,1148) = lu(k,1148) - lu(k,789) * lu(k,1135) + lu(k,1149) = lu(k,1149) - lu(k,790) * lu(k,1135) + lu(k,1151) = lu(k,1151) - lu(k,791) * lu(k,1135) + lu(k,1152) = lu(k,1152) - lu(k,792) * lu(k,1135) + lu(k,1175) = lu(k,1175) - lu(k,778) * lu(k,1174) + lu(k,1176) = lu(k,1176) - lu(k,779) * lu(k,1174) + lu(k,1177) = lu(k,1177) - lu(k,780) * lu(k,1174) + lu(k,1178) = lu(k,1178) - lu(k,781) * lu(k,1174) + lu(k,1179) = - lu(k,782) * lu(k,1174) + lu(k,1180) = lu(k,1180) - lu(k,783) * lu(k,1174) + lu(k,1181) = lu(k,1181) - lu(k,784) * lu(k,1174) + lu(k,1182) = lu(k,1182) - lu(k,785) * lu(k,1174) + lu(k,1183) = lu(k,1183) - lu(k,786) * lu(k,1174) + lu(k,1185) = - lu(k,787) * lu(k,1174) + lu(k,1186) = lu(k,1186) - lu(k,788) * lu(k,1174) + lu(k,1187) = lu(k,1187) - lu(k,789) * lu(k,1174) + lu(k,1188) = lu(k,1188) - lu(k,790) * lu(k,1174) + lu(k,1190) = lu(k,1190) - lu(k,791) * lu(k,1174) + lu(k,1191) = lu(k,1191) - lu(k,792) * lu(k,1174) + lu(k,1261) = lu(k,1261) - lu(k,778) * lu(k,1260) + lu(k,1262) = lu(k,1262) - lu(k,779) * lu(k,1260) + lu(k,1263) = lu(k,1263) - lu(k,780) * lu(k,1260) + lu(k,1264) = lu(k,1264) - lu(k,781) * lu(k,1260) + lu(k,1265) = lu(k,1265) - lu(k,782) * lu(k,1260) + lu(k,1266) = lu(k,1266) - lu(k,783) * lu(k,1260) + lu(k,1267) = lu(k,1267) - lu(k,784) * lu(k,1260) + lu(k,1268) = lu(k,1268) - lu(k,785) * lu(k,1260) + lu(k,1269) = lu(k,1269) - lu(k,786) * lu(k,1260) + lu(k,1271) = lu(k,1271) - lu(k,787) * lu(k,1260) + lu(k,1272) = lu(k,1272) - lu(k,788) * lu(k,1260) + lu(k,1273) = lu(k,1273) - lu(k,789) * lu(k,1260) + lu(k,1274) = lu(k,1274) - lu(k,790) * lu(k,1260) + lu(k,1276) = lu(k,1276) - lu(k,791) * lu(k,1260) + lu(k,1277) = lu(k,1277) - lu(k,792) * lu(k,1260) + lu(k,794) = 1._r8 / lu(k,794) + lu(k,795) = lu(k,795) * lu(k,794) + lu(k,796) = lu(k,796) * lu(k,794) + lu(k,797) = lu(k,797) * lu(k,794) + lu(k,798) = lu(k,798) * lu(k,794) + lu(k,799) = lu(k,799) * lu(k,794) + lu(k,800) = lu(k,800) * lu(k,794) + lu(k,801) = lu(k,801) * lu(k,794) + lu(k,802) = lu(k,802) * lu(k,794) + lu(k,803) = lu(k,803) * lu(k,794) + lu(k,811) = lu(k,811) - lu(k,795) * lu(k,808) + lu(k,812) = lu(k,812) - lu(k,796) * lu(k,808) + lu(k,813) = lu(k,813) - lu(k,797) * lu(k,808) + lu(k,814) = - lu(k,798) * lu(k,808) + lu(k,817) = lu(k,817) - lu(k,799) * lu(k,808) + lu(k,818) = lu(k,818) - lu(k,800) * lu(k,808) + lu(k,819) = lu(k,819) - lu(k,801) * lu(k,808) + lu(k,821) = lu(k,821) - lu(k,802) * lu(k,808) + lu(k,822) = lu(k,822) - lu(k,803) * lu(k,808) + lu(k,854) = lu(k,854) - lu(k,795) * lu(k,849) + lu(k,855) = lu(k,855) - lu(k,796) * lu(k,849) + lu(k,856) = lu(k,856) - lu(k,797) * lu(k,849) + lu(k,857) = lu(k,857) - lu(k,798) * lu(k,849) + lu(k,860) = lu(k,860) - lu(k,799) * lu(k,849) + lu(k,861) = lu(k,861) - lu(k,800) * lu(k,849) + lu(k,862) = lu(k,862) - lu(k,801) * lu(k,849) + lu(k,864) = lu(k,864) - lu(k,802) * lu(k,849) + lu(k,865) = lu(k,865) - lu(k,803) * lu(k,849) + lu(k,880) = lu(k,880) - lu(k,795) * lu(k,875) + lu(k,881) = lu(k,881) - lu(k,796) * lu(k,875) + lu(k,882) = lu(k,882) - lu(k,797) * lu(k,875) + lu(k,883) = lu(k,883) - lu(k,798) * lu(k,875) + lu(k,886) = lu(k,886) - lu(k,799) * lu(k,875) + lu(k,887) = lu(k,887) - lu(k,800) * lu(k,875) + lu(k,888) = lu(k,888) - lu(k,801) * lu(k,875) + lu(k,890) = lu(k,890) - lu(k,802) * lu(k,875) + lu(k,891) = lu(k,891) - lu(k,803) * lu(k,875) + lu(k,917) = lu(k,917) - lu(k,795) * lu(k,912) + lu(k,918) = lu(k,918) - lu(k,796) * lu(k,912) + lu(k,919) = lu(k,919) - lu(k,797) * lu(k,912) + lu(k,920) = lu(k,920) - lu(k,798) * lu(k,912) + lu(k,923) = lu(k,923) - lu(k,799) * lu(k,912) + lu(k,924) = lu(k,924) - lu(k,800) * lu(k,912) + lu(k,925) = lu(k,925) - lu(k,801) * lu(k,912) + lu(k,927) = lu(k,927) - lu(k,802) * lu(k,912) + lu(k,928) = lu(k,928) - lu(k,803) * lu(k,912) + lu(k,938) = lu(k,938) - lu(k,795) * lu(k,935) + lu(k,939) = lu(k,939) - lu(k,796) * lu(k,935) + lu(k,940) = - lu(k,797) * lu(k,935) + lu(k,941) = - lu(k,798) * lu(k,935) + lu(k,944) = lu(k,944) - lu(k,799) * lu(k,935) + lu(k,945) = lu(k,945) - lu(k,800) * lu(k,935) + lu(k,946) = lu(k,946) - lu(k,801) * lu(k,935) + lu(k,948) = - lu(k,802) * lu(k,935) + lu(k,949) = lu(k,949) - lu(k,803) * lu(k,935) + lu(k,975) = lu(k,975) - lu(k,795) * lu(k,970) + lu(k,976) = lu(k,976) - lu(k,796) * lu(k,970) + lu(k,977) = lu(k,977) - lu(k,797) * lu(k,970) + lu(k,978) = lu(k,978) - lu(k,798) * lu(k,970) + lu(k,981) = lu(k,981) - lu(k,799) * lu(k,970) + lu(k,982) = lu(k,982) - lu(k,800) * lu(k,970) + lu(k,983) = lu(k,983) - lu(k,801) * lu(k,970) + lu(k,985) = lu(k,985) - lu(k,802) * lu(k,970) + lu(k,986) = lu(k,986) - lu(k,803) * lu(k,970) + lu(k,1032) = lu(k,1032) - lu(k,795) * lu(k,1027) + lu(k,1033) = lu(k,1033) - lu(k,796) * lu(k,1027) + lu(k,1034) = lu(k,1034) - lu(k,797) * lu(k,1027) + lu(k,1035) = lu(k,1035) - lu(k,798) * lu(k,1027) + lu(k,1038) = lu(k,1038) - lu(k,799) * lu(k,1027) + lu(k,1039) = lu(k,1039) - lu(k,800) * lu(k,1027) + lu(k,1040) = lu(k,1040) - lu(k,801) * lu(k,1027) + lu(k,1042) = lu(k,1042) - lu(k,802) * lu(k,1027) + lu(k,1043) = lu(k,1043) - lu(k,803) * lu(k,1027) + lu(k,1078) = lu(k,1078) - lu(k,795) * lu(k,1073) + lu(k,1079) = lu(k,1079) - lu(k,796) * lu(k,1073) + lu(k,1080) = lu(k,1080) - lu(k,797) * lu(k,1073) + lu(k,1081) = lu(k,1081) - lu(k,798) * lu(k,1073) + lu(k,1084) = lu(k,1084) - lu(k,799) * lu(k,1073) + lu(k,1085) = lu(k,1085) - lu(k,800) * lu(k,1073) + lu(k,1086) = lu(k,1086) - lu(k,801) * lu(k,1073) + lu(k,1088) = lu(k,1088) - lu(k,802) * lu(k,1073) + lu(k,1089) = lu(k,1089) - lu(k,803) * lu(k,1073) + lu(k,1095) = - lu(k,795) * lu(k,1092) + lu(k,1096) = - lu(k,796) * lu(k,1092) + lu(k,1097) = lu(k,1097) - lu(k,797) * lu(k,1092) + lu(k,1098) = lu(k,1098) - lu(k,798) * lu(k,1092) + lu(k,1101) = lu(k,1101) - lu(k,799) * lu(k,1092) + lu(k,1102) = lu(k,1102) - lu(k,800) * lu(k,1092) + lu(k,1103) = lu(k,1103) - lu(k,801) * lu(k,1092) + lu(k,1105) = lu(k,1105) - lu(k,802) * lu(k,1092) + lu(k,1106) = lu(k,1106) - lu(k,803) * lu(k,1092) + lu(k,1141) = lu(k,1141) - lu(k,795) * lu(k,1136) + lu(k,1142) = lu(k,1142) - lu(k,796) * lu(k,1136) + lu(k,1143) = lu(k,1143) - lu(k,797) * lu(k,1136) + lu(k,1144) = lu(k,1144) - lu(k,798) * lu(k,1136) + lu(k,1147) = lu(k,1147) - lu(k,799) * lu(k,1136) + lu(k,1148) = lu(k,1148) - lu(k,800) * lu(k,1136) + lu(k,1149) = lu(k,1149) - lu(k,801) * lu(k,1136) + lu(k,1151) = lu(k,1151) - lu(k,802) * lu(k,1136) + lu(k,1152) = lu(k,1152) - lu(k,803) * lu(k,1136) + lu(k,1180) = lu(k,1180) - lu(k,795) * lu(k,1175) + lu(k,1181) = lu(k,1181) - lu(k,796) * lu(k,1175) + lu(k,1182) = lu(k,1182) - lu(k,797) * lu(k,1175) + lu(k,1183) = lu(k,1183) - lu(k,798) * lu(k,1175) + lu(k,1186) = lu(k,1186) - lu(k,799) * lu(k,1175) + lu(k,1187) = lu(k,1187) - lu(k,800) * lu(k,1175) + lu(k,1188) = lu(k,1188) - lu(k,801) * lu(k,1175) + lu(k,1190) = lu(k,1190) - lu(k,802) * lu(k,1175) + lu(k,1191) = lu(k,1191) - lu(k,803) * lu(k,1175) + lu(k,1266) = lu(k,1266) - lu(k,795) * lu(k,1261) + lu(k,1267) = lu(k,1267) - lu(k,796) * lu(k,1261) + lu(k,1268) = lu(k,1268) - lu(k,797) * lu(k,1261) + lu(k,1269) = lu(k,1269) - lu(k,798) * lu(k,1261) + lu(k,1272) = lu(k,1272) - lu(k,799) * lu(k,1261) + lu(k,1273) = lu(k,1273) - lu(k,800) * lu(k,1261) + lu(k,1274) = lu(k,1274) - lu(k,801) * lu(k,1261) + lu(k,1276) = lu(k,1276) - lu(k,802) * lu(k,1261) + lu(k,1277) = lu(k,1277) - lu(k,803) * lu(k,1261) + lu(k,1298) = lu(k,1298) - lu(k,795) * lu(k,1293) + lu(k,1299) = lu(k,1299) - lu(k,796) * lu(k,1293) + lu(k,1300) = lu(k,1300) - lu(k,797) * lu(k,1293) + lu(k,1301) = lu(k,1301) - lu(k,798) * lu(k,1293) + lu(k,1304) = lu(k,1304) - lu(k,799) * lu(k,1293) + lu(k,1305) = lu(k,1305) - lu(k,800) * lu(k,1293) + lu(k,1306) = lu(k,1306) - lu(k,801) * lu(k,1293) + lu(k,1308) = lu(k,1308) - lu(k,802) * lu(k,1293) + lu(k,1309) = lu(k,1309) - lu(k,803) * lu(k,1293) + lu(k,1321) = lu(k,1321) - lu(k,795) * lu(k,1317) + lu(k,1322) = lu(k,1322) - lu(k,796) * lu(k,1317) + lu(k,1323) = lu(k,1323) - lu(k,797) * lu(k,1317) + lu(k,1324) = lu(k,1324) - lu(k,798) * lu(k,1317) + lu(k,1327) = - lu(k,799) * lu(k,1317) + lu(k,1328) = lu(k,1328) - lu(k,800) * lu(k,1317) + lu(k,1329) = lu(k,1329) - lu(k,801) * lu(k,1317) + lu(k,1331) = lu(k,1331) - lu(k,802) * lu(k,1317) + lu(k,1332) = lu(k,1332) - lu(k,803) * lu(k,1317) + lu(k,1347) = - lu(k,795) * lu(k,1342) + lu(k,1348) = lu(k,1348) - lu(k,796) * lu(k,1342) + lu(k,1349) = lu(k,1349) - lu(k,797) * lu(k,1342) + lu(k,1350) = lu(k,1350) - lu(k,798) * lu(k,1342) + lu(k,1353) = lu(k,1353) - lu(k,799) * lu(k,1342) + lu(k,1354) = lu(k,1354) - lu(k,800) * lu(k,1342) + lu(k,1355) = lu(k,1355) - lu(k,801) * lu(k,1342) + lu(k,1357) = lu(k,1357) - lu(k,802) * lu(k,1342) + lu(k,1358) = lu(k,1358) - lu(k,803) * lu(k,1342) + lu(k,1368) = lu(k,1368) - lu(k,795) * lu(k,1364) + lu(k,1369) = lu(k,1369) - lu(k,796) * lu(k,1364) + lu(k,1370) = lu(k,1370) - lu(k,797) * lu(k,1364) + lu(k,1371) = lu(k,1371) - lu(k,798) * lu(k,1364) + lu(k,1374) = lu(k,1374) - lu(k,799) * lu(k,1364) + lu(k,1375) = lu(k,1375) - lu(k,800) * lu(k,1364) + lu(k,1376) = lu(k,1376) - lu(k,801) * lu(k,1364) + lu(k,1378) = lu(k,1378) - lu(k,802) * lu(k,1364) + lu(k,1379) = lu(k,1379) - lu(k,803) * lu(k,1364) + end do + end subroutine lu_fac16 + subroutine lu_fac17( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,809) = 1._r8 / lu(k,809) + lu(k,810) = lu(k,810) * lu(k,809) + lu(k,811) = lu(k,811) * lu(k,809) + lu(k,812) = lu(k,812) * lu(k,809) + lu(k,813) = lu(k,813) * lu(k,809) + lu(k,814) = lu(k,814) * lu(k,809) + lu(k,815) = lu(k,815) * lu(k,809) + lu(k,816) = lu(k,816) * lu(k,809) + lu(k,817) = lu(k,817) * lu(k,809) + lu(k,818) = lu(k,818) * lu(k,809) + lu(k,819) = lu(k,819) * lu(k,809) + lu(k,820) = lu(k,820) * lu(k,809) + lu(k,821) = lu(k,821) * lu(k,809) + lu(k,822) = lu(k,822) * lu(k,809) + lu(k,853) = lu(k,853) - lu(k,810) * lu(k,850) + lu(k,854) = lu(k,854) - lu(k,811) * lu(k,850) + lu(k,855) = lu(k,855) - lu(k,812) * lu(k,850) + lu(k,856) = lu(k,856) - lu(k,813) * lu(k,850) + lu(k,857) = lu(k,857) - lu(k,814) * lu(k,850) + lu(k,858) = lu(k,858) - lu(k,815) * lu(k,850) + lu(k,859) = lu(k,859) - lu(k,816) * lu(k,850) + lu(k,860) = lu(k,860) - lu(k,817) * lu(k,850) + lu(k,861) = lu(k,861) - lu(k,818) * lu(k,850) + lu(k,862) = lu(k,862) - lu(k,819) * lu(k,850) + lu(k,863) = lu(k,863) - lu(k,820) * lu(k,850) + lu(k,864) = lu(k,864) - lu(k,821) * lu(k,850) + lu(k,865) = lu(k,865) - lu(k,822) * lu(k,850) + lu(k,879) = lu(k,879) - lu(k,810) * lu(k,876) + lu(k,880) = lu(k,880) - lu(k,811) * lu(k,876) + lu(k,881) = lu(k,881) - lu(k,812) * lu(k,876) + lu(k,882) = lu(k,882) - lu(k,813) * lu(k,876) + lu(k,883) = lu(k,883) - lu(k,814) * lu(k,876) + lu(k,884) = lu(k,884) - lu(k,815) * lu(k,876) + lu(k,885) = lu(k,885) - lu(k,816) * lu(k,876) + lu(k,886) = lu(k,886) - lu(k,817) * lu(k,876) + lu(k,887) = lu(k,887) - lu(k,818) * lu(k,876) + lu(k,888) = lu(k,888) - lu(k,819) * lu(k,876) + lu(k,889) = lu(k,889) - lu(k,820) * lu(k,876) + lu(k,890) = lu(k,890) - lu(k,821) * lu(k,876) + lu(k,891) = lu(k,891) - lu(k,822) * lu(k,876) + lu(k,916) = lu(k,916) - lu(k,810) * lu(k,913) + lu(k,917) = lu(k,917) - lu(k,811) * lu(k,913) + lu(k,918) = lu(k,918) - lu(k,812) * lu(k,913) + lu(k,919) = lu(k,919) - lu(k,813) * lu(k,913) + lu(k,920) = lu(k,920) - lu(k,814) * lu(k,913) + lu(k,921) = lu(k,921) - lu(k,815) * lu(k,913) + lu(k,922) = lu(k,922) - lu(k,816) * lu(k,913) + lu(k,923) = lu(k,923) - lu(k,817) * lu(k,913) + lu(k,924) = lu(k,924) - lu(k,818) * lu(k,913) + lu(k,925) = lu(k,925) - lu(k,819) * lu(k,913) + lu(k,926) = lu(k,926) - lu(k,820) * lu(k,913) + lu(k,927) = lu(k,927) - lu(k,821) * lu(k,913) + lu(k,928) = lu(k,928) - lu(k,822) * lu(k,913) + lu(k,974) = lu(k,974) - lu(k,810) * lu(k,971) + lu(k,975) = lu(k,975) - lu(k,811) * lu(k,971) + lu(k,976) = lu(k,976) - lu(k,812) * lu(k,971) + lu(k,977) = lu(k,977) - lu(k,813) * lu(k,971) + lu(k,978) = lu(k,978) - lu(k,814) * lu(k,971) + lu(k,979) = lu(k,979) - lu(k,815) * lu(k,971) + lu(k,980) = lu(k,980) - lu(k,816) * lu(k,971) + lu(k,981) = lu(k,981) - lu(k,817) * lu(k,971) + lu(k,982) = lu(k,982) - lu(k,818) * lu(k,971) + lu(k,983) = lu(k,983) - lu(k,819) * lu(k,971) + lu(k,984) = - lu(k,820) * lu(k,971) + lu(k,985) = lu(k,985) - lu(k,821) * lu(k,971) + lu(k,986) = lu(k,986) - lu(k,822) * lu(k,971) + lu(k,1031) = lu(k,1031) - lu(k,810) * lu(k,1028) + lu(k,1032) = lu(k,1032) - lu(k,811) * lu(k,1028) + lu(k,1033) = lu(k,1033) - lu(k,812) * lu(k,1028) + lu(k,1034) = lu(k,1034) - lu(k,813) * lu(k,1028) + lu(k,1035) = lu(k,1035) - lu(k,814) * lu(k,1028) + lu(k,1036) = lu(k,1036) - lu(k,815) * lu(k,1028) + lu(k,1037) = lu(k,1037) - lu(k,816) * lu(k,1028) + lu(k,1038) = lu(k,1038) - lu(k,817) * lu(k,1028) + lu(k,1039) = lu(k,1039) - lu(k,818) * lu(k,1028) + lu(k,1040) = lu(k,1040) - lu(k,819) * lu(k,1028) + lu(k,1041) = lu(k,1041) - lu(k,820) * lu(k,1028) + lu(k,1042) = lu(k,1042) - lu(k,821) * lu(k,1028) + lu(k,1043) = lu(k,1043) - lu(k,822) * lu(k,1028) + lu(k,1077) = lu(k,1077) - lu(k,810) * lu(k,1074) + lu(k,1078) = lu(k,1078) - lu(k,811) * lu(k,1074) + lu(k,1079) = lu(k,1079) - lu(k,812) * lu(k,1074) + lu(k,1080) = lu(k,1080) - lu(k,813) * lu(k,1074) + lu(k,1081) = lu(k,1081) - lu(k,814) * lu(k,1074) + lu(k,1082) = lu(k,1082) - lu(k,815) * lu(k,1074) + lu(k,1083) = lu(k,1083) - lu(k,816) * lu(k,1074) + lu(k,1084) = lu(k,1084) - lu(k,817) * lu(k,1074) + lu(k,1085) = lu(k,1085) - lu(k,818) * lu(k,1074) + lu(k,1086) = lu(k,1086) - lu(k,819) * lu(k,1074) + lu(k,1087) = lu(k,1087) - lu(k,820) * lu(k,1074) + lu(k,1088) = lu(k,1088) - lu(k,821) * lu(k,1074) + lu(k,1089) = lu(k,1089) - lu(k,822) * lu(k,1074) + lu(k,1094) = - lu(k,810) * lu(k,1093) + lu(k,1095) = lu(k,1095) - lu(k,811) * lu(k,1093) + lu(k,1096) = lu(k,1096) - lu(k,812) * lu(k,1093) + lu(k,1097) = lu(k,1097) - lu(k,813) * lu(k,1093) + lu(k,1098) = lu(k,1098) - lu(k,814) * lu(k,1093) + lu(k,1099) = lu(k,1099) - lu(k,815) * lu(k,1093) + lu(k,1100) = - lu(k,816) * lu(k,1093) + lu(k,1101) = lu(k,1101) - lu(k,817) * lu(k,1093) + lu(k,1102) = lu(k,1102) - lu(k,818) * lu(k,1093) + lu(k,1103) = lu(k,1103) - lu(k,819) * lu(k,1093) + lu(k,1104) = lu(k,1104) - lu(k,820) * lu(k,1093) + lu(k,1105) = lu(k,1105) - lu(k,821) * lu(k,1093) + lu(k,1106) = lu(k,1106) - lu(k,822) * lu(k,1093) + lu(k,1140) = lu(k,1140) - lu(k,810) * lu(k,1137) + lu(k,1141) = lu(k,1141) - lu(k,811) * lu(k,1137) + lu(k,1142) = lu(k,1142) - lu(k,812) * lu(k,1137) + lu(k,1143) = lu(k,1143) - lu(k,813) * lu(k,1137) + lu(k,1144) = lu(k,1144) - lu(k,814) * lu(k,1137) + lu(k,1145) = lu(k,1145) - lu(k,815) * lu(k,1137) + lu(k,1146) = lu(k,1146) - lu(k,816) * lu(k,1137) + lu(k,1147) = lu(k,1147) - lu(k,817) * lu(k,1137) + lu(k,1148) = lu(k,1148) - lu(k,818) * lu(k,1137) + lu(k,1149) = lu(k,1149) - lu(k,819) * lu(k,1137) + lu(k,1150) = lu(k,1150) - lu(k,820) * lu(k,1137) + lu(k,1151) = lu(k,1151) - lu(k,821) * lu(k,1137) + lu(k,1152) = lu(k,1152) - lu(k,822) * lu(k,1137) + lu(k,1179) = lu(k,1179) - lu(k,810) * lu(k,1176) + lu(k,1180) = lu(k,1180) - lu(k,811) * lu(k,1176) + lu(k,1181) = lu(k,1181) - lu(k,812) * lu(k,1176) + lu(k,1182) = lu(k,1182) - lu(k,813) * lu(k,1176) + lu(k,1183) = lu(k,1183) - lu(k,814) * lu(k,1176) + lu(k,1184) = lu(k,1184) - lu(k,815) * lu(k,1176) + lu(k,1185) = lu(k,1185) - lu(k,816) * lu(k,1176) + lu(k,1186) = lu(k,1186) - lu(k,817) * lu(k,1176) + lu(k,1187) = lu(k,1187) - lu(k,818) * lu(k,1176) + lu(k,1188) = lu(k,1188) - lu(k,819) * lu(k,1176) + lu(k,1189) = lu(k,1189) - lu(k,820) * lu(k,1176) + lu(k,1190) = lu(k,1190) - lu(k,821) * lu(k,1176) + lu(k,1191) = lu(k,1191) - lu(k,822) * lu(k,1176) + lu(k,1265) = lu(k,1265) - lu(k,810) * lu(k,1262) + lu(k,1266) = lu(k,1266) - lu(k,811) * lu(k,1262) + lu(k,1267) = lu(k,1267) - lu(k,812) * lu(k,1262) + lu(k,1268) = lu(k,1268) - lu(k,813) * lu(k,1262) + lu(k,1269) = lu(k,1269) - lu(k,814) * lu(k,1262) + lu(k,1270) = lu(k,1270) - lu(k,815) * lu(k,1262) + lu(k,1271) = lu(k,1271) - lu(k,816) * lu(k,1262) + lu(k,1272) = lu(k,1272) - lu(k,817) * lu(k,1262) + lu(k,1273) = lu(k,1273) - lu(k,818) * lu(k,1262) + lu(k,1274) = lu(k,1274) - lu(k,819) * lu(k,1262) + lu(k,1275) = lu(k,1275) - lu(k,820) * lu(k,1262) + lu(k,1276) = lu(k,1276) - lu(k,821) * lu(k,1262) + lu(k,1277) = lu(k,1277) - lu(k,822) * lu(k,1262) + lu(k,1297) = lu(k,1297) - lu(k,810) * lu(k,1294) + lu(k,1298) = lu(k,1298) - lu(k,811) * lu(k,1294) + lu(k,1299) = lu(k,1299) - lu(k,812) * lu(k,1294) + lu(k,1300) = lu(k,1300) - lu(k,813) * lu(k,1294) + lu(k,1301) = lu(k,1301) - lu(k,814) * lu(k,1294) + lu(k,1302) = lu(k,1302) - lu(k,815) * lu(k,1294) + lu(k,1303) = lu(k,1303) - lu(k,816) * lu(k,1294) + lu(k,1304) = lu(k,1304) - lu(k,817) * lu(k,1294) + lu(k,1305) = lu(k,1305) - lu(k,818) * lu(k,1294) + lu(k,1306) = lu(k,1306) - lu(k,819) * lu(k,1294) + lu(k,1307) = lu(k,1307) - lu(k,820) * lu(k,1294) + lu(k,1308) = lu(k,1308) - lu(k,821) * lu(k,1294) + lu(k,1309) = lu(k,1309) - lu(k,822) * lu(k,1294) + lu(k,1346) = lu(k,1346) - lu(k,810) * lu(k,1343) + lu(k,1347) = lu(k,1347) - lu(k,811) * lu(k,1343) + lu(k,1348) = lu(k,1348) - lu(k,812) * lu(k,1343) + lu(k,1349) = lu(k,1349) - lu(k,813) * lu(k,1343) + lu(k,1350) = lu(k,1350) - lu(k,814) * lu(k,1343) + lu(k,1351) = lu(k,1351) - lu(k,815) * lu(k,1343) + lu(k,1352) = - lu(k,816) * lu(k,1343) + lu(k,1353) = lu(k,1353) - lu(k,817) * lu(k,1343) + lu(k,1354) = lu(k,1354) - lu(k,818) * lu(k,1343) + lu(k,1355) = lu(k,1355) - lu(k,819) * lu(k,1343) + lu(k,1356) = lu(k,1356) - lu(k,820) * lu(k,1343) + lu(k,1357) = lu(k,1357) - lu(k,821) * lu(k,1343) + lu(k,1358) = lu(k,1358) - lu(k,822) * lu(k,1343) + lu(k,851) = 1._r8 / lu(k,851) + lu(k,852) = lu(k,852) * lu(k,851) + lu(k,853) = lu(k,853) * lu(k,851) + lu(k,854) = lu(k,854) * lu(k,851) + lu(k,855) = lu(k,855) * lu(k,851) + lu(k,856) = lu(k,856) * lu(k,851) + lu(k,857) = lu(k,857) * lu(k,851) + lu(k,858) = lu(k,858) * lu(k,851) + lu(k,859) = lu(k,859) * lu(k,851) + lu(k,860) = lu(k,860) * lu(k,851) + lu(k,861) = lu(k,861) * lu(k,851) + lu(k,862) = lu(k,862) * lu(k,851) + lu(k,863) = lu(k,863) * lu(k,851) + lu(k,864) = lu(k,864) * lu(k,851) + lu(k,865) = lu(k,865) * lu(k,851) + lu(k,878) = lu(k,878) - lu(k,852) * lu(k,877) + lu(k,879) = lu(k,879) - lu(k,853) * lu(k,877) + lu(k,880) = lu(k,880) - lu(k,854) * lu(k,877) + lu(k,881) = lu(k,881) - lu(k,855) * lu(k,877) + lu(k,882) = lu(k,882) - lu(k,856) * lu(k,877) + lu(k,883) = lu(k,883) - lu(k,857) * lu(k,877) + lu(k,884) = lu(k,884) - lu(k,858) * lu(k,877) + lu(k,885) = lu(k,885) - lu(k,859) * lu(k,877) + lu(k,886) = lu(k,886) - lu(k,860) * lu(k,877) + lu(k,887) = lu(k,887) - lu(k,861) * lu(k,877) + lu(k,888) = lu(k,888) - lu(k,862) * lu(k,877) + lu(k,889) = lu(k,889) - lu(k,863) * lu(k,877) + lu(k,890) = lu(k,890) - lu(k,864) * lu(k,877) + lu(k,891) = lu(k,891) - lu(k,865) * lu(k,877) + lu(k,915) = lu(k,915) - lu(k,852) * lu(k,914) + lu(k,916) = lu(k,916) - lu(k,853) * lu(k,914) + lu(k,917) = lu(k,917) - lu(k,854) * lu(k,914) + lu(k,918) = lu(k,918) - lu(k,855) * lu(k,914) + lu(k,919) = lu(k,919) - lu(k,856) * lu(k,914) + lu(k,920) = lu(k,920) - lu(k,857) * lu(k,914) + lu(k,921) = lu(k,921) - lu(k,858) * lu(k,914) + lu(k,922) = lu(k,922) - lu(k,859) * lu(k,914) + lu(k,923) = lu(k,923) - lu(k,860) * lu(k,914) + lu(k,924) = lu(k,924) - lu(k,861) * lu(k,914) + lu(k,925) = lu(k,925) - lu(k,862) * lu(k,914) + lu(k,926) = lu(k,926) - lu(k,863) * lu(k,914) + lu(k,927) = lu(k,927) - lu(k,864) * lu(k,914) + lu(k,928) = lu(k,928) - lu(k,865) * lu(k,914) + lu(k,973) = lu(k,973) - lu(k,852) * lu(k,972) + lu(k,974) = lu(k,974) - lu(k,853) * lu(k,972) + lu(k,975) = lu(k,975) - lu(k,854) * lu(k,972) + lu(k,976) = lu(k,976) - lu(k,855) * lu(k,972) + lu(k,977) = lu(k,977) - lu(k,856) * lu(k,972) + lu(k,978) = lu(k,978) - lu(k,857) * lu(k,972) + lu(k,979) = lu(k,979) - lu(k,858) * lu(k,972) + lu(k,980) = lu(k,980) - lu(k,859) * lu(k,972) + lu(k,981) = lu(k,981) - lu(k,860) * lu(k,972) + lu(k,982) = lu(k,982) - lu(k,861) * lu(k,972) + lu(k,983) = lu(k,983) - lu(k,862) * lu(k,972) + lu(k,984) = lu(k,984) - lu(k,863) * lu(k,972) + lu(k,985) = lu(k,985) - lu(k,864) * lu(k,972) + lu(k,986) = lu(k,986) - lu(k,865) * lu(k,972) + lu(k,1030) = lu(k,1030) - lu(k,852) * lu(k,1029) + lu(k,1031) = lu(k,1031) - lu(k,853) * lu(k,1029) + lu(k,1032) = lu(k,1032) - lu(k,854) * lu(k,1029) + lu(k,1033) = lu(k,1033) - lu(k,855) * lu(k,1029) + lu(k,1034) = lu(k,1034) - lu(k,856) * lu(k,1029) + lu(k,1035) = lu(k,1035) - lu(k,857) * lu(k,1029) + lu(k,1036) = lu(k,1036) - lu(k,858) * lu(k,1029) + lu(k,1037) = lu(k,1037) - lu(k,859) * lu(k,1029) + lu(k,1038) = lu(k,1038) - lu(k,860) * lu(k,1029) + lu(k,1039) = lu(k,1039) - lu(k,861) * lu(k,1029) + lu(k,1040) = lu(k,1040) - lu(k,862) * lu(k,1029) + lu(k,1041) = lu(k,1041) - lu(k,863) * lu(k,1029) + lu(k,1042) = lu(k,1042) - lu(k,864) * lu(k,1029) + lu(k,1043) = lu(k,1043) - lu(k,865) * lu(k,1029) + lu(k,1076) = lu(k,1076) - lu(k,852) * lu(k,1075) + lu(k,1077) = lu(k,1077) - lu(k,853) * lu(k,1075) + lu(k,1078) = lu(k,1078) - lu(k,854) * lu(k,1075) + lu(k,1079) = lu(k,1079) - lu(k,855) * lu(k,1075) + lu(k,1080) = lu(k,1080) - lu(k,856) * lu(k,1075) + lu(k,1081) = lu(k,1081) - lu(k,857) * lu(k,1075) + lu(k,1082) = lu(k,1082) - lu(k,858) * lu(k,1075) + lu(k,1083) = lu(k,1083) - lu(k,859) * lu(k,1075) + lu(k,1084) = lu(k,1084) - lu(k,860) * lu(k,1075) + lu(k,1085) = lu(k,1085) - lu(k,861) * lu(k,1075) + lu(k,1086) = lu(k,1086) - lu(k,862) * lu(k,1075) + lu(k,1087) = lu(k,1087) - lu(k,863) * lu(k,1075) + lu(k,1088) = lu(k,1088) - lu(k,864) * lu(k,1075) + lu(k,1089) = lu(k,1089) - lu(k,865) * lu(k,1075) + lu(k,1139) = lu(k,1139) - lu(k,852) * lu(k,1138) + lu(k,1140) = lu(k,1140) - lu(k,853) * lu(k,1138) + lu(k,1141) = lu(k,1141) - lu(k,854) * lu(k,1138) + lu(k,1142) = lu(k,1142) - lu(k,855) * lu(k,1138) + lu(k,1143) = lu(k,1143) - lu(k,856) * lu(k,1138) + lu(k,1144) = lu(k,1144) - lu(k,857) * lu(k,1138) + lu(k,1145) = lu(k,1145) - lu(k,858) * lu(k,1138) + lu(k,1146) = lu(k,1146) - lu(k,859) * lu(k,1138) + lu(k,1147) = lu(k,1147) - lu(k,860) * lu(k,1138) + lu(k,1148) = lu(k,1148) - lu(k,861) * lu(k,1138) + lu(k,1149) = lu(k,1149) - lu(k,862) * lu(k,1138) + lu(k,1150) = lu(k,1150) - lu(k,863) * lu(k,1138) + lu(k,1151) = lu(k,1151) - lu(k,864) * lu(k,1138) + lu(k,1152) = lu(k,1152) - lu(k,865) * lu(k,1138) + lu(k,1178) = lu(k,1178) - lu(k,852) * lu(k,1177) + lu(k,1179) = lu(k,1179) - lu(k,853) * lu(k,1177) + lu(k,1180) = lu(k,1180) - lu(k,854) * lu(k,1177) + lu(k,1181) = lu(k,1181) - lu(k,855) * lu(k,1177) + lu(k,1182) = lu(k,1182) - lu(k,856) * lu(k,1177) + lu(k,1183) = lu(k,1183) - lu(k,857) * lu(k,1177) + lu(k,1184) = lu(k,1184) - lu(k,858) * lu(k,1177) + lu(k,1185) = lu(k,1185) - lu(k,859) * lu(k,1177) + lu(k,1186) = lu(k,1186) - lu(k,860) * lu(k,1177) + lu(k,1187) = lu(k,1187) - lu(k,861) * lu(k,1177) + lu(k,1188) = lu(k,1188) - lu(k,862) * lu(k,1177) + lu(k,1189) = lu(k,1189) - lu(k,863) * lu(k,1177) + lu(k,1190) = lu(k,1190) - lu(k,864) * lu(k,1177) + lu(k,1191) = lu(k,1191) - lu(k,865) * lu(k,1177) + lu(k,1264) = lu(k,1264) - lu(k,852) * lu(k,1263) + lu(k,1265) = lu(k,1265) - lu(k,853) * lu(k,1263) + lu(k,1266) = lu(k,1266) - lu(k,854) * lu(k,1263) + lu(k,1267) = lu(k,1267) - lu(k,855) * lu(k,1263) + lu(k,1268) = lu(k,1268) - lu(k,856) * lu(k,1263) + lu(k,1269) = lu(k,1269) - lu(k,857) * lu(k,1263) + lu(k,1270) = lu(k,1270) - lu(k,858) * lu(k,1263) + lu(k,1271) = lu(k,1271) - lu(k,859) * lu(k,1263) + lu(k,1272) = lu(k,1272) - lu(k,860) * lu(k,1263) + lu(k,1273) = lu(k,1273) - lu(k,861) * lu(k,1263) + lu(k,1274) = lu(k,1274) - lu(k,862) * lu(k,1263) + lu(k,1275) = lu(k,1275) - lu(k,863) * lu(k,1263) + lu(k,1276) = lu(k,1276) - lu(k,864) * lu(k,1263) + lu(k,1277) = lu(k,1277) - lu(k,865) * lu(k,1263) + lu(k,1296) = lu(k,1296) - lu(k,852) * lu(k,1295) + lu(k,1297) = lu(k,1297) - lu(k,853) * lu(k,1295) + lu(k,1298) = lu(k,1298) - lu(k,854) * lu(k,1295) + lu(k,1299) = lu(k,1299) - lu(k,855) * lu(k,1295) + lu(k,1300) = lu(k,1300) - lu(k,856) * lu(k,1295) + lu(k,1301) = lu(k,1301) - lu(k,857) * lu(k,1295) + lu(k,1302) = lu(k,1302) - lu(k,858) * lu(k,1295) + lu(k,1303) = lu(k,1303) - lu(k,859) * lu(k,1295) + lu(k,1304) = lu(k,1304) - lu(k,860) * lu(k,1295) + lu(k,1305) = lu(k,1305) - lu(k,861) * lu(k,1295) + lu(k,1306) = lu(k,1306) - lu(k,862) * lu(k,1295) + lu(k,1307) = lu(k,1307) - lu(k,863) * lu(k,1295) + lu(k,1308) = lu(k,1308) - lu(k,864) * lu(k,1295) + lu(k,1309) = lu(k,1309) - lu(k,865) * lu(k,1295) + lu(k,1319) = lu(k,1319) - lu(k,852) * lu(k,1318) + lu(k,1320) = lu(k,1320) - lu(k,853) * lu(k,1318) + lu(k,1321) = lu(k,1321) - lu(k,854) * lu(k,1318) + lu(k,1322) = lu(k,1322) - lu(k,855) * lu(k,1318) + lu(k,1323) = lu(k,1323) - lu(k,856) * lu(k,1318) + lu(k,1324) = lu(k,1324) - lu(k,857) * lu(k,1318) + lu(k,1325) = lu(k,1325) - lu(k,858) * lu(k,1318) + lu(k,1326) = lu(k,1326) - lu(k,859) * lu(k,1318) + lu(k,1327) = lu(k,1327) - lu(k,860) * lu(k,1318) + lu(k,1328) = lu(k,1328) - lu(k,861) * lu(k,1318) + lu(k,1329) = lu(k,1329) - lu(k,862) * lu(k,1318) + lu(k,1330) = lu(k,1330) - lu(k,863) * lu(k,1318) + lu(k,1331) = lu(k,1331) - lu(k,864) * lu(k,1318) + lu(k,1332) = lu(k,1332) - lu(k,865) * lu(k,1318) + lu(k,1345) = lu(k,1345) - lu(k,852) * lu(k,1344) + lu(k,1346) = lu(k,1346) - lu(k,853) * lu(k,1344) + lu(k,1347) = lu(k,1347) - lu(k,854) * lu(k,1344) + lu(k,1348) = lu(k,1348) - lu(k,855) * lu(k,1344) + lu(k,1349) = lu(k,1349) - lu(k,856) * lu(k,1344) + lu(k,1350) = lu(k,1350) - lu(k,857) * lu(k,1344) + lu(k,1351) = lu(k,1351) - lu(k,858) * lu(k,1344) + lu(k,1352) = lu(k,1352) - lu(k,859) * lu(k,1344) + lu(k,1353) = lu(k,1353) - lu(k,860) * lu(k,1344) + lu(k,1354) = lu(k,1354) - lu(k,861) * lu(k,1344) + lu(k,1355) = lu(k,1355) - lu(k,862) * lu(k,1344) + lu(k,1356) = lu(k,1356) - lu(k,863) * lu(k,1344) + lu(k,1357) = lu(k,1357) - lu(k,864) * lu(k,1344) + lu(k,1358) = lu(k,1358) - lu(k,865) * lu(k,1344) + lu(k,1366) = lu(k,1366) - lu(k,852) * lu(k,1365) + lu(k,1367) = lu(k,1367) - lu(k,853) * lu(k,1365) + lu(k,1368) = lu(k,1368) - lu(k,854) * lu(k,1365) + lu(k,1369) = lu(k,1369) - lu(k,855) * lu(k,1365) + lu(k,1370) = lu(k,1370) - lu(k,856) * lu(k,1365) + lu(k,1371) = lu(k,1371) - lu(k,857) * lu(k,1365) + lu(k,1372) = lu(k,1372) - lu(k,858) * lu(k,1365) + lu(k,1373) = - lu(k,859) * lu(k,1365) + lu(k,1374) = lu(k,1374) - lu(k,860) * lu(k,1365) + lu(k,1375) = lu(k,1375) - lu(k,861) * lu(k,1365) + lu(k,1376) = lu(k,1376) - lu(k,862) * lu(k,1365) + lu(k,1377) = lu(k,1377) - lu(k,863) * lu(k,1365) + lu(k,1378) = lu(k,1378) - lu(k,864) * lu(k,1365) + lu(k,1379) = lu(k,1379) - lu(k,865) * lu(k,1365) + lu(k,878) = 1._r8 / lu(k,878) + lu(k,879) = lu(k,879) * lu(k,878) + lu(k,880) = lu(k,880) * lu(k,878) + lu(k,881) = lu(k,881) * lu(k,878) + lu(k,882) = lu(k,882) * lu(k,878) + lu(k,883) = lu(k,883) * lu(k,878) + lu(k,884) = lu(k,884) * lu(k,878) + lu(k,885) = lu(k,885) * lu(k,878) + lu(k,886) = lu(k,886) * lu(k,878) + lu(k,887) = lu(k,887) * lu(k,878) + lu(k,888) = lu(k,888) * lu(k,878) + lu(k,889) = lu(k,889) * lu(k,878) + lu(k,890) = lu(k,890) * lu(k,878) + lu(k,891) = lu(k,891) * lu(k,878) + lu(k,916) = lu(k,916) - lu(k,879) * lu(k,915) + lu(k,917) = lu(k,917) - lu(k,880) * lu(k,915) + lu(k,918) = lu(k,918) - lu(k,881) * lu(k,915) + lu(k,919) = lu(k,919) - lu(k,882) * lu(k,915) + lu(k,920) = lu(k,920) - lu(k,883) * lu(k,915) + lu(k,921) = lu(k,921) - lu(k,884) * lu(k,915) + lu(k,922) = lu(k,922) - lu(k,885) * lu(k,915) + lu(k,923) = lu(k,923) - lu(k,886) * lu(k,915) + lu(k,924) = lu(k,924) - lu(k,887) * lu(k,915) + lu(k,925) = lu(k,925) - lu(k,888) * lu(k,915) + lu(k,926) = lu(k,926) - lu(k,889) * lu(k,915) + lu(k,927) = lu(k,927) - lu(k,890) * lu(k,915) + lu(k,928) = lu(k,928) - lu(k,891) * lu(k,915) + lu(k,937) = lu(k,937) - lu(k,879) * lu(k,936) + lu(k,938) = lu(k,938) - lu(k,880) * lu(k,936) + lu(k,939) = lu(k,939) - lu(k,881) * lu(k,936) + lu(k,940) = lu(k,940) - lu(k,882) * lu(k,936) + lu(k,941) = lu(k,941) - lu(k,883) * lu(k,936) + lu(k,942) = lu(k,942) - lu(k,884) * lu(k,936) + lu(k,943) = lu(k,943) - lu(k,885) * lu(k,936) + lu(k,944) = lu(k,944) - lu(k,886) * lu(k,936) + lu(k,945) = lu(k,945) - lu(k,887) * lu(k,936) + lu(k,946) = lu(k,946) - lu(k,888) * lu(k,936) + lu(k,947) = lu(k,947) - lu(k,889) * lu(k,936) + lu(k,948) = lu(k,948) - lu(k,890) * lu(k,936) + lu(k,949) = lu(k,949) - lu(k,891) * lu(k,936) + lu(k,974) = lu(k,974) - lu(k,879) * lu(k,973) + lu(k,975) = lu(k,975) - lu(k,880) * lu(k,973) + lu(k,976) = lu(k,976) - lu(k,881) * lu(k,973) + lu(k,977) = lu(k,977) - lu(k,882) * lu(k,973) + lu(k,978) = lu(k,978) - lu(k,883) * lu(k,973) + lu(k,979) = lu(k,979) - lu(k,884) * lu(k,973) + lu(k,980) = lu(k,980) - lu(k,885) * lu(k,973) + lu(k,981) = lu(k,981) - lu(k,886) * lu(k,973) + lu(k,982) = lu(k,982) - lu(k,887) * lu(k,973) + lu(k,983) = lu(k,983) - lu(k,888) * lu(k,973) + lu(k,984) = lu(k,984) - lu(k,889) * lu(k,973) + lu(k,985) = lu(k,985) - lu(k,890) * lu(k,973) + lu(k,986) = lu(k,986) - lu(k,891) * lu(k,973) + lu(k,1031) = lu(k,1031) - lu(k,879) * lu(k,1030) + lu(k,1032) = lu(k,1032) - lu(k,880) * lu(k,1030) + lu(k,1033) = lu(k,1033) - lu(k,881) * lu(k,1030) + lu(k,1034) = lu(k,1034) - lu(k,882) * lu(k,1030) + lu(k,1035) = lu(k,1035) - lu(k,883) * lu(k,1030) + lu(k,1036) = lu(k,1036) - lu(k,884) * lu(k,1030) + lu(k,1037) = lu(k,1037) - lu(k,885) * lu(k,1030) + lu(k,1038) = lu(k,1038) - lu(k,886) * lu(k,1030) + lu(k,1039) = lu(k,1039) - lu(k,887) * lu(k,1030) + lu(k,1040) = lu(k,1040) - lu(k,888) * lu(k,1030) + lu(k,1041) = lu(k,1041) - lu(k,889) * lu(k,1030) + lu(k,1042) = lu(k,1042) - lu(k,890) * lu(k,1030) + lu(k,1043) = lu(k,1043) - lu(k,891) * lu(k,1030) + lu(k,1077) = lu(k,1077) - lu(k,879) * lu(k,1076) + lu(k,1078) = lu(k,1078) - lu(k,880) * lu(k,1076) + lu(k,1079) = lu(k,1079) - lu(k,881) * lu(k,1076) + lu(k,1080) = lu(k,1080) - lu(k,882) * lu(k,1076) + lu(k,1081) = lu(k,1081) - lu(k,883) * lu(k,1076) + lu(k,1082) = lu(k,1082) - lu(k,884) * lu(k,1076) + lu(k,1083) = lu(k,1083) - lu(k,885) * lu(k,1076) + lu(k,1084) = lu(k,1084) - lu(k,886) * lu(k,1076) + lu(k,1085) = lu(k,1085) - lu(k,887) * lu(k,1076) + lu(k,1086) = lu(k,1086) - lu(k,888) * lu(k,1076) + lu(k,1087) = lu(k,1087) - lu(k,889) * lu(k,1076) + lu(k,1088) = lu(k,1088) - lu(k,890) * lu(k,1076) + lu(k,1089) = lu(k,1089) - lu(k,891) * lu(k,1076) + lu(k,1140) = lu(k,1140) - lu(k,879) * lu(k,1139) + lu(k,1141) = lu(k,1141) - lu(k,880) * lu(k,1139) + lu(k,1142) = lu(k,1142) - lu(k,881) * lu(k,1139) + lu(k,1143) = lu(k,1143) - lu(k,882) * lu(k,1139) + lu(k,1144) = lu(k,1144) - lu(k,883) * lu(k,1139) + lu(k,1145) = lu(k,1145) - lu(k,884) * lu(k,1139) + lu(k,1146) = lu(k,1146) - lu(k,885) * lu(k,1139) + lu(k,1147) = lu(k,1147) - lu(k,886) * lu(k,1139) + lu(k,1148) = lu(k,1148) - lu(k,887) * lu(k,1139) + lu(k,1149) = lu(k,1149) - lu(k,888) * lu(k,1139) + lu(k,1150) = lu(k,1150) - lu(k,889) * lu(k,1139) + lu(k,1151) = lu(k,1151) - lu(k,890) * lu(k,1139) + lu(k,1152) = lu(k,1152) - lu(k,891) * lu(k,1139) + lu(k,1179) = lu(k,1179) - lu(k,879) * lu(k,1178) + lu(k,1180) = lu(k,1180) - lu(k,880) * lu(k,1178) + lu(k,1181) = lu(k,1181) - lu(k,881) * lu(k,1178) + lu(k,1182) = lu(k,1182) - lu(k,882) * lu(k,1178) + lu(k,1183) = lu(k,1183) - lu(k,883) * lu(k,1178) + lu(k,1184) = lu(k,1184) - lu(k,884) * lu(k,1178) + lu(k,1185) = lu(k,1185) - lu(k,885) * lu(k,1178) + lu(k,1186) = lu(k,1186) - lu(k,886) * lu(k,1178) + lu(k,1187) = lu(k,1187) - lu(k,887) * lu(k,1178) + lu(k,1188) = lu(k,1188) - lu(k,888) * lu(k,1178) + lu(k,1189) = lu(k,1189) - lu(k,889) * lu(k,1178) + lu(k,1190) = lu(k,1190) - lu(k,890) * lu(k,1178) + lu(k,1191) = lu(k,1191) - lu(k,891) * lu(k,1178) + lu(k,1265) = lu(k,1265) - lu(k,879) * lu(k,1264) + lu(k,1266) = lu(k,1266) - lu(k,880) * lu(k,1264) + lu(k,1267) = lu(k,1267) - lu(k,881) * lu(k,1264) + lu(k,1268) = lu(k,1268) - lu(k,882) * lu(k,1264) + lu(k,1269) = lu(k,1269) - lu(k,883) * lu(k,1264) + lu(k,1270) = lu(k,1270) - lu(k,884) * lu(k,1264) + lu(k,1271) = lu(k,1271) - lu(k,885) * lu(k,1264) + lu(k,1272) = lu(k,1272) - lu(k,886) * lu(k,1264) + lu(k,1273) = lu(k,1273) - lu(k,887) * lu(k,1264) + lu(k,1274) = lu(k,1274) - lu(k,888) * lu(k,1264) + lu(k,1275) = lu(k,1275) - lu(k,889) * lu(k,1264) + lu(k,1276) = lu(k,1276) - lu(k,890) * lu(k,1264) + lu(k,1277) = lu(k,1277) - lu(k,891) * lu(k,1264) + lu(k,1297) = lu(k,1297) - lu(k,879) * lu(k,1296) + lu(k,1298) = lu(k,1298) - lu(k,880) * lu(k,1296) + lu(k,1299) = lu(k,1299) - lu(k,881) * lu(k,1296) + lu(k,1300) = lu(k,1300) - lu(k,882) * lu(k,1296) + lu(k,1301) = lu(k,1301) - lu(k,883) * lu(k,1296) + lu(k,1302) = lu(k,1302) - lu(k,884) * lu(k,1296) + lu(k,1303) = lu(k,1303) - lu(k,885) * lu(k,1296) + lu(k,1304) = lu(k,1304) - lu(k,886) * lu(k,1296) + lu(k,1305) = lu(k,1305) - lu(k,887) * lu(k,1296) + lu(k,1306) = lu(k,1306) - lu(k,888) * lu(k,1296) + lu(k,1307) = lu(k,1307) - lu(k,889) * lu(k,1296) + lu(k,1308) = lu(k,1308) - lu(k,890) * lu(k,1296) + lu(k,1309) = lu(k,1309) - lu(k,891) * lu(k,1296) + lu(k,1320) = lu(k,1320) - lu(k,879) * lu(k,1319) + lu(k,1321) = lu(k,1321) - lu(k,880) * lu(k,1319) + lu(k,1322) = lu(k,1322) - lu(k,881) * lu(k,1319) + lu(k,1323) = lu(k,1323) - lu(k,882) * lu(k,1319) + lu(k,1324) = lu(k,1324) - lu(k,883) * lu(k,1319) + lu(k,1325) = lu(k,1325) - lu(k,884) * lu(k,1319) + lu(k,1326) = lu(k,1326) - lu(k,885) * lu(k,1319) + lu(k,1327) = lu(k,1327) - lu(k,886) * lu(k,1319) + lu(k,1328) = lu(k,1328) - lu(k,887) * lu(k,1319) + lu(k,1329) = lu(k,1329) - lu(k,888) * lu(k,1319) + lu(k,1330) = lu(k,1330) - lu(k,889) * lu(k,1319) + lu(k,1331) = lu(k,1331) - lu(k,890) * lu(k,1319) + lu(k,1332) = lu(k,1332) - lu(k,891) * lu(k,1319) + lu(k,1346) = lu(k,1346) - lu(k,879) * lu(k,1345) + lu(k,1347) = lu(k,1347) - lu(k,880) * lu(k,1345) + lu(k,1348) = lu(k,1348) - lu(k,881) * lu(k,1345) + lu(k,1349) = lu(k,1349) - lu(k,882) * lu(k,1345) + lu(k,1350) = lu(k,1350) - lu(k,883) * lu(k,1345) + lu(k,1351) = lu(k,1351) - lu(k,884) * lu(k,1345) + lu(k,1352) = lu(k,1352) - lu(k,885) * lu(k,1345) + lu(k,1353) = lu(k,1353) - lu(k,886) * lu(k,1345) + lu(k,1354) = lu(k,1354) - lu(k,887) * lu(k,1345) + lu(k,1355) = lu(k,1355) - lu(k,888) * lu(k,1345) + lu(k,1356) = lu(k,1356) - lu(k,889) * lu(k,1345) + lu(k,1357) = lu(k,1357) - lu(k,890) * lu(k,1345) + lu(k,1358) = lu(k,1358) - lu(k,891) * lu(k,1345) + lu(k,1367) = lu(k,1367) - lu(k,879) * lu(k,1366) + lu(k,1368) = lu(k,1368) - lu(k,880) * lu(k,1366) + lu(k,1369) = lu(k,1369) - lu(k,881) * lu(k,1366) + lu(k,1370) = lu(k,1370) - lu(k,882) * lu(k,1366) + lu(k,1371) = lu(k,1371) - lu(k,883) * lu(k,1366) + lu(k,1372) = lu(k,1372) - lu(k,884) * lu(k,1366) + lu(k,1373) = lu(k,1373) - lu(k,885) * lu(k,1366) + lu(k,1374) = lu(k,1374) - lu(k,886) * lu(k,1366) + lu(k,1375) = lu(k,1375) - lu(k,887) * lu(k,1366) + lu(k,1376) = lu(k,1376) - lu(k,888) * lu(k,1366) + lu(k,1377) = lu(k,1377) - lu(k,889) * lu(k,1366) + lu(k,1378) = lu(k,1378) - lu(k,890) * lu(k,1366) + lu(k,1379) = lu(k,1379) - lu(k,891) * lu(k,1366) + lu(k,916) = 1._r8 / lu(k,916) + lu(k,917) = lu(k,917) * lu(k,916) + lu(k,918) = lu(k,918) * lu(k,916) + lu(k,919) = lu(k,919) * lu(k,916) + lu(k,920) = lu(k,920) * lu(k,916) + lu(k,921) = lu(k,921) * lu(k,916) + lu(k,922) = lu(k,922) * lu(k,916) + lu(k,923) = lu(k,923) * lu(k,916) + lu(k,924) = lu(k,924) * lu(k,916) + lu(k,925) = lu(k,925) * lu(k,916) + lu(k,926) = lu(k,926) * lu(k,916) + lu(k,927) = lu(k,927) * lu(k,916) + lu(k,928) = lu(k,928) * lu(k,916) + lu(k,938) = lu(k,938) - lu(k,917) * lu(k,937) + lu(k,939) = lu(k,939) - lu(k,918) * lu(k,937) + lu(k,940) = lu(k,940) - lu(k,919) * lu(k,937) + lu(k,941) = lu(k,941) - lu(k,920) * lu(k,937) + lu(k,942) = lu(k,942) - lu(k,921) * lu(k,937) + lu(k,943) = lu(k,943) - lu(k,922) * lu(k,937) + lu(k,944) = lu(k,944) - lu(k,923) * lu(k,937) + lu(k,945) = lu(k,945) - lu(k,924) * lu(k,937) + lu(k,946) = lu(k,946) - lu(k,925) * lu(k,937) + lu(k,947) = lu(k,947) - lu(k,926) * lu(k,937) + lu(k,948) = lu(k,948) - lu(k,927) * lu(k,937) + lu(k,949) = lu(k,949) - lu(k,928) * lu(k,937) + lu(k,975) = lu(k,975) - lu(k,917) * lu(k,974) + lu(k,976) = lu(k,976) - lu(k,918) * lu(k,974) + lu(k,977) = lu(k,977) - lu(k,919) * lu(k,974) + lu(k,978) = lu(k,978) - lu(k,920) * lu(k,974) + lu(k,979) = lu(k,979) - lu(k,921) * lu(k,974) + lu(k,980) = lu(k,980) - lu(k,922) * lu(k,974) + lu(k,981) = lu(k,981) - lu(k,923) * lu(k,974) + lu(k,982) = lu(k,982) - lu(k,924) * lu(k,974) + lu(k,983) = lu(k,983) - lu(k,925) * lu(k,974) + lu(k,984) = lu(k,984) - lu(k,926) * lu(k,974) + lu(k,985) = lu(k,985) - lu(k,927) * lu(k,974) + lu(k,986) = lu(k,986) - lu(k,928) * lu(k,974) + lu(k,1032) = lu(k,1032) - lu(k,917) * lu(k,1031) + lu(k,1033) = lu(k,1033) - lu(k,918) * lu(k,1031) + lu(k,1034) = lu(k,1034) - lu(k,919) * lu(k,1031) + lu(k,1035) = lu(k,1035) - lu(k,920) * lu(k,1031) + lu(k,1036) = lu(k,1036) - lu(k,921) * lu(k,1031) + lu(k,1037) = lu(k,1037) - lu(k,922) * lu(k,1031) + lu(k,1038) = lu(k,1038) - lu(k,923) * lu(k,1031) + lu(k,1039) = lu(k,1039) - lu(k,924) * lu(k,1031) + lu(k,1040) = lu(k,1040) - lu(k,925) * lu(k,1031) + lu(k,1041) = lu(k,1041) - lu(k,926) * lu(k,1031) + lu(k,1042) = lu(k,1042) - lu(k,927) * lu(k,1031) + lu(k,1043) = lu(k,1043) - lu(k,928) * lu(k,1031) + lu(k,1078) = lu(k,1078) - lu(k,917) * lu(k,1077) + lu(k,1079) = lu(k,1079) - lu(k,918) * lu(k,1077) + lu(k,1080) = lu(k,1080) - lu(k,919) * lu(k,1077) + lu(k,1081) = lu(k,1081) - lu(k,920) * lu(k,1077) + lu(k,1082) = lu(k,1082) - lu(k,921) * lu(k,1077) + lu(k,1083) = lu(k,1083) - lu(k,922) * lu(k,1077) + lu(k,1084) = lu(k,1084) - lu(k,923) * lu(k,1077) + lu(k,1085) = lu(k,1085) - lu(k,924) * lu(k,1077) + lu(k,1086) = lu(k,1086) - lu(k,925) * lu(k,1077) + lu(k,1087) = lu(k,1087) - lu(k,926) * lu(k,1077) + lu(k,1088) = lu(k,1088) - lu(k,927) * lu(k,1077) + lu(k,1089) = lu(k,1089) - lu(k,928) * lu(k,1077) + lu(k,1095) = lu(k,1095) - lu(k,917) * lu(k,1094) + lu(k,1096) = lu(k,1096) - lu(k,918) * lu(k,1094) + lu(k,1097) = lu(k,1097) - lu(k,919) * lu(k,1094) + lu(k,1098) = lu(k,1098) - lu(k,920) * lu(k,1094) + lu(k,1099) = lu(k,1099) - lu(k,921) * lu(k,1094) + lu(k,1100) = lu(k,1100) - lu(k,922) * lu(k,1094) + lu(k,1101) = lu(k,1101) - lu(k,923) * lu(k,1094) + lu(k,1102) = lu(k,1102) - lu(k,924) * lu(k,1094) + lu(k,1103) = lu(k,1103) - lu(k,925) * lu(k,1094) + lu(k,1104) = lu(k,1104) - lu(k,926) * lu(k,1094) + lu(k,1105) = lu(k,1105) - lu(k,927) * lu(k,1094) + lu(k,1106) = lu(k,1106) - lu(k,928) * lu(k,1094) + lu(k,1141) = lu(k,1141) - lu(k,917) * lu(k,1140) + lu(k,1142) = lu(k,1142) - lu(k,918) * lu(k,1140) + lu(k,1143) = lu(k,1143) - lu(k,919) * lu(k,1140) + lu(k,1144) = lu(k,1144) - lu(k,920) * lu(k,1140) + lu(k,1145) = lu(k,1145) - lu(k,921) * lu(k,1140) + lu(k,1146) = lu(k,1146) - lu(k,922) * lu(k,1140) + lu(k,1147) = lu(k,1147) - lu(k,923) * lu(k,1140) + lu(k,1148) = lu(k,1148) - lu(k,924) * lu(k,1140) + lu(k,1149) = lu(k,1149) - lu(k,925) * lu(k,1140) + lu(k,1150) = lu(k,1150) - lu(k,926) * lu(k,1140) + lu(k,1151) = lu(k,1151) - lu(k,927) * lu(k,1140) + lu(k,1152) = lu(k,1152) - lu(k,928) * lu(k,1140) + lu(k,1180) = lu(k,1180) - lu(k,917) * lu(k,1179) + lu(k,1181) = lu(k,1181) - lu(k,918) * lu(k,1179) + lu(k,1182) = lu(k,1182) - lu(k,919) * lu(k,1179) + lu(k,1183) = lu(k,1183) - lu(k,920) * lu(k,1179) + lu(k,1184) = lu(k,1184) - lu(k,921) * lu(k,1179) + lu(k,1185) = lu(k,1185) - lu(k,922) * lu(k,1179) + lu(k,1186) = lu(k,1186) - lu(k,923) * lu(k,1179) + lu(k,1187) = lu(k,1187) - lu(k,924) * lu(k,1179) + lu(k,1188) = lu(k,1188) - lu(k,925) * lu(k,1179) + lu(k,1189) = lu(k,1189) - lu(k,926) * lu(k,1179) + lu(k,1190) = lu(k,1190) - lu(k,927) * lu(k,1179) + lu(k,1191) = lu(k,1191) - lu(k,928) * lu(k,1179) + lu(k,1266) = lu(k,1266) - lu(k,917) * lu(k,1265) + lu(k,1267) = lu(k,1267) - lu(k,918) * lu(k,1265) + lu(k,1268) = lu(k,1268) - lu(k,919) * lu(k,1265) + lu(k,1269) = lu(k,1269) - lu(k,920) * lu(k,1265) + lu(k,1270) = lu(k,1270) - lu(k,921) * lu(k,1265) + lu(k,1271) = lu(k,1271) - lu(k,922) * lu(k,1265) + lu(k,1272) = lu(k,1272) - lu(k,923) * lu(k,1265) + lu(k,1273) = lu(k,1273) - lu(k,924) * lu(k,1265) + lu(k,1274) = lu(k,1274) - lu(k,925) * lu(k,1265) + lu(k,1275) = lu(k,1275) - lu(k,926) * lu(k,1265) + lu(k,1276) = lu(k,1276) - lu(k,927) * lu(k,1265) + lu(k,1277) = lu(k,1277) - lu(k,928) * lu(k,1265) + lu(k,1298) = lu(k,1298) - lu(k,917) * lu(k,1297) + lu(k,1299) = lu(k,1299) - lu(k,918) * lu(k,1297) + lu(k,1300) = lu(k,1300) - lu(k,919) * lu(k,1297) + lu(k,1301) = lu(k,1301) - lu(k,920) * lu(k,1297) + lu(k,1302) = lu(k,1302) - lu(k,921) * lu(k,1297) + lu(k,1303) = lu(k,1303) - lu(k,922) * lu(k,1297) + lu(k,1304) = lu(k,1304) - lu(k,923) * lu(k,1297) + lu(k,1305) = lu(k,1305) - lu(k,924) * lu(k,1297) + lu(k,1306) = lu(k,1306) - lu(k,925) * lu(k,1297) + lu(k,1307) = lu(k,1307) - lu(k,926) * lu(k,1297) + lu(k,1308) = lu(k,1308) - lu(k,927) * lu(k,1297) + lu(k,1309) = lu(k,1309) - lu(k,928) * lu(k,1297) + lu(k,1321) = lu(k,1321) - lu(k,917) * lu(k,1320) + lu(k,1322) = lu(k,1322) - lu(k,918) * lu(k,1320) + lu(k,1323) = lu(k,1323) - lu(k,919) * lu(k,1320) + lu(k,1324) = lu(k,1324) - lu(k,920) * lu(k,1320) + lu(k,1325) = lu(k,1325) - lu(k,921) * lu(k,1320) + lu(k,1326) = lu(k,1326) - lu(k,922) * lu(k,1320) + lu(k,1327) = lu(k,1327) - lu(k,923) * lu(k,1320) + lu(k,1328) = lu(k,1328) - lu(k,924) * lu(k,1320) + lu(k,1329) = lu(k,1329) - lu(k,925) * lu(k,1320) + lu(k,1330) = lu(k,1330) - lu(k,926) * lu(k,1320) + lu(k,1331) = lu(k,1331) - lu(k,927) * lu(k,1320) + lu(k,1332) = lu(k,1332) - lu(k,928) * lu(k,1320) + lu(k,1347) = lu(k,1347) - lu(k,917) * lu(k,1346) + lu(k,1348) = lu(k,1348) - lu(k,918) * lu(k,1346) + lu(k,1349) = lu(k,1349) - lu(k,919) * lu(k,1346) + lu(k,1350) = lu(k,1350) - lu(k,920) * lu(k,1346) + lu(k,1351) = lu(k,1351) - lu(k,921) * lu(k,1346) + lu(k,1352) = lu(k,1352) - lu(k,922) * lu(k,1346) + lu(k,1353) = lu(k,1353) - lu(k,923) * lu(k,1346) + lu(k,1354) = lu(k,1354) - lu(k,924) * lu(k,1346) + lu(k,1355) = lu(k,1355) - lu(k,925) * lu(k,1346) + lu(k,1356) = lu(k,1356) - lu(k,926) * lu(k,1346) + lu(k,1357) = lu(k,1357) - lu(k,927) * lu(k,1346) + lu(k,1358) = lu(k,1358) - lu(k,928) * lu(k,1346) + lu(k,1368) = lu(k,1368) - lu(k,917) * lu(k,1367) + lu(k,1369) = lu(k,1369) - lu(k,918) * lu(k,1367) + lu(k,1370) = lu(k,1370) - lu(k,919) * lu(k,1367) + lu(k,1371) = lu(k,1371) - lu(k,920) * lu(k,1367) + lu(k,1372) = lu(k,1372) - lu(k,921) * lu(k,1367) + lu(k,1373) = lu(k,1373) - lu(k,922) * lu(k,1367) + lu(k,1374) = lu(k,1374) - lu(k,923) * lu(k,1367) + lu(k,1375) = lu(k,1375) - lu(k,924) * lu(k,1367) + lu(k,1376) = lu(k,1376) - lu(k,925) * lu(k,1367) + lu(k,1377) = lu(k,1377) - lu(k,926) * lu(k,1367) + lu(k,1378) = lu(k,1378) - lu(k,927) * lu(k,1367) + lu(k,1379) = lu(k,1379) - lu(k,928) * lu(k,1367) + end do + end subroutine lu_fac17 + subroutine lu_fac18( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,938) = 1._r8 / lu(k,938) + lu(k,939) = lu(k,939) * lu(k,938) + lu(k,940) = lu(k,940) * lu(k,938) + lu(k,941) = lu(k,941) * lu(k,938) + lu(k,942) = lu(k,942) * lu(k,938) + lu(k,943) = lu(k,943) * lu(k,938) + lu(k,944) = lu(k,944) * lu(k,938) + lu(k,945) = lu(k,945) * lu(k,938) + lu(k,946) = lu(k,946) * lu(k,938) + lu(k,947) = lu(k,947) * lu(k,938) + lu(k,948) = lu(k,948) * lu(k,938) + lu(k,949) = lu(k,949) * lu(k,938) + lu(k,976) = lu(k,976) - lu(k,939) * lu(k,975) + lu(k,977) = lu(k,977) - lu(k,940) * lu(k,975) + lu(k,978) = lu(k,978) - lu(k,941) * lu(k,975) + lu(k,979) = lu(k,979) - lu(k,942) * lu(k,975) + lu(k,980) = lu(k,980) - lu(k,943) * lu(k,975) + lu(k,981) = lu(k,981) - lu(k,944) * lu(k,975) + lu(k,982) = lu(k,982) - lu(k,945) * lu(k,975) + lu(k,983) = lu(k,983) - lu(k,946) * lu(k,975) + lu(k,984) = lu(k,984) - lu(k,947) * lu(k,975) + lu(k,985) = lu(k,985) - lu(k,948) * lu(k,975) + lu(k,986) = lu(k,986) - lu(k,949) * lu(k,975) + lu(k,1033) = lu(k,1033) - lu(k,939) * lu(k,1032) + lu(k,1034) = lu(k,1034) - lu(k,940) * lu(k,1032) + lu(k,1035) = lu(k,1035) - lu(k,941) * lu(k,1032) + lu(k,1036) = lu(k,1036) - lu(k,942) * lu(k,1032) + lu(k,1037) = lu(k,1037) - lu(k,943) * lu(k,1032) + lu(k,1038) = lu(k,1038) - lu(k,944) * lu(k,1032) + lu(k,1039) = lu(k,1039) - lu(k,945) * lu(k,1032) + lu(k,1040) = lu(k,1040) - lu(k,946) * lu(k,1032) + lu(k,1041) = lu(k,1041) - lu(k,947) * lu(k,1032) + lu(k,1042) = lu(k,1042) - lu(k,948) * lu(k,1032) + lu(k,1043) = lu(k,1043) - lu(k,949) * lu(k,1032) + lu(k,1079) = lu(k,1079) - lu(k,939) * lu(k,1078) + lu(k,1080) = lu(k,1080) - lu(k,940) * lu(k,1078) + lu(k,1081) = lu(k,1081) - lu(k,941) * lu(k,1078) + lu(k,1082) = lu(k,1082) - lu(k,942) * lu(k,1078) + lu(k,1083) = lu(k,1083) - lu(k,943) * lu(k,1078) + lu(k,1084) = lu(k,1084) - lu(k,944) * lu(k,1078) + lu(k,1085) = lu(k,1085) - lu(k,945) * lu(k,1078) + lu(k,1086) = lu(k,1086) - lu(k,946) * lu(k,1078) + lu(k,1087) = lu(k,1087) - lu(k,947) * lu(k,1078) + lu(k,1088) = lu(k,1088) - lu(k,948) * lu(k,1078) + lu(k,1089) = lu(k,1089) - lu(k,949) * lu(k,1078) + lu(k,1096) = lu(k,1096) - lu(k,939) * lu(k,1095) + lu(k,1097) = lu(k,1097) - lu(k,940) * lu(k,1095) + lu(k,1098) = lu(k,1098) - lu(k,941) * lu(k,1095) + lu(k,1099) = lu(k,1099) - lu(k,942) * lu(k,1095) + lu(k,1100) = lu(k,1100) - lu(k,943) * lu(k,1095) + lu(k,1101) = lu(k,1101) - lu(k,944) * lu(k,1095) + lu(k,1102) = lu(k,1102) - lu(k,945) * lu(k,1095) + lu(k,1103) = lu(k,1103) - lu(k,946) * lu(k,1095) + lu(k,1104) = lu(k,1104) - lu(k,947) * lu(k,1095) + lu(k,1105) = lu(k,1105) - lu(k,948) * lu(k,1095) + lu(k,1106) = lu(k,1106) - lu(k,949) * lu(k,1095) + lu(k,1142) = lu(k,1142) - lu(k,939) * lu(k,1141) + lu(k,1143) = lu(k,1143) - lu(k,940) * lu(k,1141) + lu(k,1144) = lu(k,1144) - lu(k,941) * lu(k,1141) + lu(k,1145) = lu(k,1145) - lu(k,942) * lu(k,1141) + lu(k,1146) = lu(k,1146) - lu(k,943) * lu(k,1141) + lu(k,1147) = lu(k,1147) - lu(k,944) * lu(k,1141) + lu(k,1148) = lu(k,1148) - lu(k,945) * lu(k,1141) + lu(k,1149) = lu(k,1149) - lu(k,946) * lu(k,1141) + lu(k,1150) = lu(k,1150) - lu(k,947) * lu(k,1141) + lu(k,1151) = lu(k,1151) - lu(k,948) * lu(k,1141) + lu(k,1152) = lu(k,1152) - lu(k,949) * lu(k,1141) + lu(k,1181) = lu(k,1181) - lu(k,939) * lu(k,1180) + lu(k,1182) = lu(k,1182) - lu(k,940) * lu(k,1180) + lu(k,1183) = lu(k,1183) - lu(k,941) * lu(k,1180) + lu(k,1184) = lu(k,1184) - lu(k,942) * lu(k,1180) + lu(k,1185) = lu(k,1185) - lu(k,943) * lu(k,1180) + lu(k,1186) = lu(k,1186) - lu(k,944) * lu(k,1180) + lu(k,1187) = lu(k,1187) - lu(k,945) * lu(k,1180) + lu(k,1188) = lu(k,1188) - lu(k,946) * lu(k,1180) + lu(k,1189) = lu(k,1189) - lu(k,947) * lu(k,1180) + lu(k,1190) = lu(k,1190) - lu(k,948) * lu(k,1180) + lu(k,1191) = lu(k,1191) - lu(k,949) * lu(k,1180) + lu(k,1267) = lu(k,1267) - lu(k,939) * lu(k,1266) + lu(k,1268) = lu(k,1268) - lu(k,940) * lu(k,1266) + lu(k,1269) = lu(k,1269) - lu(k,941) * lu(k,1266) + lu(k,1270) = lu(k,1270) - lu(k,942) * lu(k,1266) + lu(k,1271) = lu(k,1271) - lu(k,943) * lu(k,1266) + lu(k,1272) = lu(k,1272) - lu(k,944) * lu(k,1266) + lu(k,1273) = lu(k,1273) - lu(k,945) * lu(k,1266) + lu(k,1274) = lu(k,1274) - lu(k,946) * lu(k,1266) + lu(k,1275) = lu(k,1275) - lu(k,947) * lu(k,1266) + lu(k,1276) = lu(k,1276) - lu(k,948) * lu(k,1266) + lu(k,1277) = lu(k,1277) - lu(k,949) * lu(k,1266) + lu(k,1299) = lu(k,1299) - lu(k,939) * lu(k,1298) + lu(k,1300) = lu(k,1300) - lu(k,940) * lu(k,1298) + lu(k,1301) = lu(k,1301) - lu(k,941) * lu(k,1298) + lu(k,1302) = lu(k,1302) - lu(k,942) * lu(k,1298) + lu(k,1303) = lu(k,1303) - lu(k,943) * lu(k,1298) + lu(k,1304) = lu(k,1304) - lu(k,944) * lu(k,1298) + lu(k,1305) = lu(k,1305) - lu(k,945) * lu(k,1298) + lu(k,1306) = lu(k,1306) - lu(k,946) * lu(k,1298) + lu(k,1307) = lu(k,1307) - lu(k,947) * lu(k,1298) + lu(k,1308) = lu(k,1308) - lu(k,948) * lu(k,1298) + lu(k,1309) = lu(k,1309) - lu(k,949) * lu(k,1298) + lu(k,1322) = lu(k,1322) - lu(k,939) * lu(k,1321) + lu(k,1323) = lu(k,1323) - lu(k,940) * lu(k,1321) + lu(k,1324) = lu(k,1324) - lu(k,941) * lu(k,1321) + lu(k,1325) = lu(k,1325) - lu(k,942) * lu(k,1321) + lu(k,1326) = lu(k,1326) - lu(k,943) * lu(k,1321) + lu(k,1327) = lu(k,1327) - lu(k,944) * lu(k,1321) + lu(k,1328) = lu(k,1328) - lu(k,945) * lu(k,1321) + lu(k,1329) = lu(k,1329) - lu(k,946) * lu(k,1321) + lu(k,1330) = lu(k,1330) - lu(k,947) * lu(k,1321) + lu(k,1331) = lu(k,1331) - lu(k,948) * lu(k,1321) + lu(k,1332) = lu(k,1332) - lu(k,949) * lu(k,1321) + lu(k,1348) = lu(k,1348) - lu(k,939) * lu(k,1347) + lu(k,1349) = lu(k,1349) - lu(k,940) * lu(k,1347) + lu(k,1350) = lu(k,1350) - lu(k,941) * lu(k,1347) + lu(k,1351) = lu(k,1351) - lu(k,942) * lu(k,1347) + lu(k,1352) = lu(k,1352) - lu(k,943) * lu(k,1347) + lu(k,1353) = lu(k,1353) - lu(k,944) * lu(k,1347) + lu(k,1354) = lu(k,1354) - lu(k,945) * lu(k,1347) + lu(k,1355) = lu(k,1355) - lu(k,946) * lu(k,1347) + lu(k,1356) = lu(k,1356) - lu(k,947) * lu(k,1347) + lu(k,1357) = lu(k,1357) - lu(k,948) * lu(k,1347) + lu(k,1358) = lu(k,1358) - lu(k,949) * lu(k,1347) + lu(k,1369) = lu(k,1369) - lu(k,939) * lu(k,1368) + lu(k,1370) = lu(k,1370) - lu(k,940) * lu(k,1368) + lu(k,1371) = lu(k,1371) - lu(k,941) * lu(k,1368) + lu(k,1372) = lu(k,1372) - lu(k,942) * lu(k,1368) + lu(k,1373) = lu(k,1373) - lu(k,943) * lu(k,1368) + lu(k,1374) = lu(k,1374) - lu(k,944) * lu(k,1368) + lu(k,1375) = lu(k,1375) - lu(k,945) * lu(k,1368) + lu(k,1376) = lu(k,1376) - lu(k,946) * lu(k,1368) + lu(k,1377) = lu(k,1377) - lu(k,947) * lu(k,1368) + lu(k,1378) = lu(k,1378) - lu(k,948) * lu(k,1368) + lu(k,1379) = lu(k,1379) - lu(k,949) * lu(k,1368) + lu(k,976) = 1._r8 / lu(k,976) + lu(k,977) = lu(k,977) * lu(k,976) + lu(k,978) = lu(k,978) * lu(k,976) + lu(k,979) = lu(k,979) * lu(k,976) + lu(k,980) = lu(k,980) * lu(k,976) + lu(k,981) = lu(k,981) * lu(k,976) + lu(k,982) = lu(k,982) * lu(k,976) + lu(k,983) = lu(k,983) * lu(k,976) + lu(k,984) = lu(k,984) * lu(k,976) + lu(k,985) = lu(k,985) * lu(k,976) + lu(k,986) = lu(k,986) * lu(k,976) + lu(k,1034) = lu(k,1034) - lu(k,977) * lu(k,1033) + lu(k,1035) = lu(k,1035) - lu(k,978) * lu(k,1033) + lu(k,1036) = lu(k,1036) - lu(k,979) * lu(k,1033) + lu(k,1037) = lu(k,1037) - lu(k,980) * lu(k,1033) + lu(k,1038) = lu(k,1038) - lu(k,981) * lu(k,1033) + lu(k,1039) = lu(k,1039) - lu(k,982) * lu(k,1033) + lu(k,1040) = lu(k,1040) - lu(k,983) * lu(k,1033) + lu(k,1041) = lu(k,1041) - lu(k,984) * lu(k,1033) + lu(k,1042) = lu(k,1042) - lu(k,985) * lu(k,1033) + lu(k,1043) = lu(k,1043) - lu(k,986) * lu(k,1033) + lu(k,1080) = lu(k,1080) - lu(k,977) * lu(k,1079) + lu(k,1081) = lu(k,1081) - lu(k,978) * lu(k,1079) + lu(k,1082) = lu(k,1082) - lu(k,979) * lu(k,1079) + lu(k,1083) = lu(k,1083) - lu(k,980) * lu(k,1079) + lu(k,1084) = lu(k,1084) - lu(k,981) * lu(k,1079) + lu(k,1085) = lu(k,1085) - lu(k,982) * lu(k,1079) + lu(k,1086) = lu(k,1086) - lu(k,983) * lu(k,1079) + lu(k,1087) = lu(k,1087) - lu(k,984) * lu(k,1079) + lu(k,1088) = lu(k,1088) - lu(k,985) * lu(k,1079) + lu(k,1089) = lu(k,1089) - lu(k,986) * lu(k,1079) + lu(k,1097) = lu(k,1097) - lu(k,977) * lu(k,1096) + lu(k,1098) = lu(k,1098) - lu(k,978) * lu(k,1096) + lu(k,1099) = lu(k,1099) - lu(k,979) * lu(k,1096) + lu(k,1100) = lu(k,1100) - lu(k,980) * lu(k,1096) + lu(k,1101) = lu(k,1101) - lu(k,981) * lu(k,1096) + lu(k,1102) = lu(k,1102) - lu(k,982) * lu(k,1096) + lu(k,1103) = lu(k,1103) - lu(k,983) * lu(k,1096) + lu(k,1104) = lu(k,1104) - lu(k,984) * lu(k,1096) + lu(k,1105) = lu(k,1105) - lu(k,985) * lu(k,1096) + lu(k,1106) = lu(k,1106) - lu(k,986) * lu(k,1096) + lu(k,1143) = lu(k,1143) - lu(k,977) * lu(k,1142) + lu(k,1144) = lu(k,1144) - lu(k,978) * lu(k,1142) + lu(k,1145) = lu(k,1145) - lu(k,979) * lu(k,1142) + lu(k,1146) = lu(k,1146) - lu(k,980) * lu(k,1142) + lu(k,1147) = lu(k,1147) - lu(k,981) * lu(k,1142) + lu(k,1148) = lu(k,1148) - lu(k,982) * lu(k,1142) + lu(k,1149) = lu(k,1149) - lu(k,983) * lu(k,1142) + lu(k,1150) = lu(k,1150) - lu(k,984) * lu(k,1142) + lu(k,1151) = lu(k,1151) - lu(k,985) * lu(k,1142) + lu(k,1152) = lu(k,1152) - lu(k,986) * lu(k,1142) + lu(k,1182) = lu(k,1182) - lu(k,977) * lu(k,1181) + lu(k,1183) = lu(k,1183) - lu(k,978) * lu(k,1181) + lu(k,1184) = lu(k,1184) - lu(k,979) * lu(k,1181) + lu(k,1185) = lu(k,1185) - lu(k,980) * lu(k,1181) + lu(k,1186) = lu(k,1186) - lu(k,981) * lu(k,1181) + lu(k,1187) = lu(k,1187) - lu(k,982) * lu(k,1181) + lu(k,1188) = lu(k,1188) - lu(k,983) * lu(k,1181) + lu(k,1189) = lu(k,1189) - lu(k,984) * lu(k,1181) + lu(k,1190) = lu(k,1190) - lu(k,985) * lu(k,1181) + lu(k,1191) = lu(k,1191) - lu(k,986) * lu(k,1181) + lu(k,1268) = lu(k,1268) - lu(k,977) * lu(k,1267) + lu(k,1269) = lu(k,1269) - lu(k,978) * lu(k,1267) + lu(k,1270) = lu(k,1270) - lu(k,979) * lu(k,1267) + lu(k,1271) = lu(k,1271) - lu(k,980) * lu(k,1267) + lu(k,1272) = lu(k,1272) - lu(k,981) * lu(k,1267) + lu(k,1273) = lu(k,1273) - lu(k,982) * lu(k,1267) + lu(k,1274) = lu(k,1274) - lu(k,983) * lu(k,1267) + lu(k,1275) = lu(k,1275) - lu(k,984) * lu(k,1267) + lu(k,1276) = lu(k,1276) - lu(k,985) * lu(k,1267) + lu(k,1277) = lu(k,1277) - lu(k,986) * lu(k,1267) + lu(k,1300) = lu(k,1300) - lu(k,977) * lu(k,1299) + lu(k,1301) = lu(k,1301) - lu(k,978) * lu(k,1299) + lu(k,1302) = lu(k,1302) - lu(k,979) * lu(k,1299) + lu(k,1303) = lu(k,1303) - lu(k,980) * lu(k,1299) + lu(k,1304) = lu(k,1304) - lu(k,981) * lu(k,1299) + lu(k,1305) = lu(k,1305) - lu(k,982) * lu(k,1299) + lu(k,1306) = lu(k,1306) - lu(k,983) * lu(k,1299) + lu(k,1307) = lu(k,1307) - lu(k,984) * lu(k,1299) + lu(k,1308) = lu(k,1308) - lu(k,985) * lu(k,1299) + lu(k,1309) = lu(k,1309) - lu(k,986) * lu(k,1299) + lu(k,1323) = lu(k,1323) - lu(k,977) * lu(k,1322) + lu(k,1324) = lu(k,1324) - lu(k,978) * lu(k,1322) + lu(k,1325) = lu(k,1325) - lu(k,979) * lu(k,1322) + lu(k,1326) = lu(k,1326) - lu(k,980) * lu(k,1322) + lu(k,1327) = lu(k,1327) - lu(k,981) * lu(k,1322) + lu(k,1328) = lu(k,1328) - lu(k,982) * lu(k,1322) + lu(k,1329) = lu(k,1329) - lu(k,983) * lu(k,1322) + lu(k,1330) = lu(k,1330) - lu(k,984) * lu(k,1322) + lu(k,1331) = lu(k,1331) - lu(k,985) * lu(k,1322) + lu(k,1332) = lu(k,1332) - lu(k,986) * lu(k,1322) + lu(k,1349) = lu(k,1349) - lu(k,977) * lu(k,1348) + lu(k,1350) = lu(k,1350) - lu(k,978) * lu(k,1348) + lu(k,1351) = lu(k,1351) - lu(k,979) * lu(k,1348) + lu(k,1352) = lu(k,1352) - lu(k,980) * lu(k,1348) + lu(k,1353) = lu(k,1353) - lu(k,981) * lu(k,1348) + lu(k,1354) = lu(k,1354) - lu(k,982) * lu(k,1348) + lu(k,1355) = lu(k,1355) - lu(k,983) * lu(k,1348) + lu(k,1356) = lu(k,1356) - lu(k,984) * lu(k,1348) + lu(k,1357) = lu(k,1357) - lu(k,985) * lu(k,1348) + lu(k,1358) = lu(k,1358) - lu(k,986) * lu(k,1348) + lu(k,1370) = lu(k,1370) - lu(k,977) * lu(k,1369) + lu(k,1371) = lu(k,1371) - lu(k,978) * lu(k,1369) + lu(k,1372) = lu(k,1372) - lu(k,979) * lu(k,1369) + lu(k,1373) = lu(k,1373) - lu(k,980) * lu(k,1369) + lu(k,1374) = lu(k,1374) - lu(k,981) * lu(k,1369) + lu(k,1375) = lu(k,1375) - lu(k,982) * lu(k,1369) + lu(k,1376) = lu(k,1376) - lu(k,983) * lu(k,1369) + lu(k,1377) = lu(k,1377) - lu(k,984) * lu(k,1369) + lu(k,1378) = lu(k,1378) - lu(k,985) * lu(k,1369) + lu(k,1379) = lu(k,1379) - lu(k,986) * lu(k,1369) + lu(k,1034) = 1._r8 / lu(k,1034) + lu(k,1035) = lu(k,1035) * lu(k,1034) + lu(k,1036) = lu(k,1036) * lu(k,1034) + lu(k,1037) = lu(k,1037) * lu(k,1034) + lu(k,1038) = lu(k,1038) * lu(k,1034) + lu(k,1039) = lu(k,1039) * lu(k,1034) + lu(k,1040) = lu(k,1040) * lu(k,1034) + lu(k,1041) = lu(k,1041) * lu(k,1034) + lu(k,1042) = lu(k,1042) * lu(k,1034) + lu(k,1043) = lu(k,1043) * lu(k,1034) + lu(k,1081) = lu(k,1081) - lu(k,1035) * lu(k,1080) + lu(k,1082) = lu(k,1082) - lu(k,1036) * lu(k,1080) + lu(k,1083) = lu(k,1083) - lu(k,1037) * lu(k,1080) + lu(k,1084) = lu(k,1084) - lu(k,1038) * lu(k,1080) + lu(k,1085) = lu(k,1085) - lu(k,1039) * lu(k,1080) + lu(k,1086) = lu(k,1086) - lu(k,1040) * lu(k,1080) + lu(k,1087) = lu(k,1087) - lu(k,1041) * lu(k,1080) + lu(k,1088) = lu(k,1088) - lu(k,1042) * lu(k,1080) + lu(k,1089) = lu(k,1089) - lu(k,1043) * lu(k,1080) + lu(k,1098) = lu(k,1098) - lu(k,1035) * lu(k,1097) + lu(k,1099) = lu(k,1099) - lu(k,1036) * lu(k,1097) + lu(k,1100) = lu(k,1100) - lu(k,1037) * lu(k,1097) + lu(k,1101) = lu(k,1101) - lu(k,1038) * lu(k,1097) + lu(k,1102) = lu(k,1102) - lu(k,1039) * lu(k,1097) + lu(k,1103) = lu(k,1103) - lu(k,1040) * lu(k,1097) + lu(k,1104) = lu(k,1104) - lu(k,1041) * lu(k,1097) + lu(k,1105) = lu(k,1105) - lu(k,1042) * lu(k,1097) + lu(k,1106) = lu(k,1106) - lu(k,1043) * lu(k,1097) + lu(k,1144) = lu(k,1144) - lu(k,1035) * lu(k,1143) + lu(k,1145) = lu(k,1145) - lu(k,1036) * lu(k,1143) + lu(k,1146) = lu(k,1146) - lu(k,1037) * lu(k,1143) + lu(k,1147) = lu(k,1147) - lu(k,1038) * lu(k,1143) + lu(k,1148) = lu(k,1148) - lu(k,1039) * lu(k,1143) + lu(k,1149) = lu(k,1149) - lu(k,1040) * lu(k,1143) + lu(k,1150) = lu(k,1150) - lu(k,1041) * lu(k,1143) + lu(k,1151) = lu(k,1151) - lu(k,1042) * lu(k,1143) + lu(k,1152) = lu(k,1152) - lu(k,1043) * lu(k,1143) + lu(k,1183) = lu(k,1183) - lu(k,1035) * lu(k,1182) + lu(k,1184) = lu(k,1184) - lu(k,1036) * lu(k,1182) + lu(k,1185) = lu(k,1185) - lu(k,1037) * lu(k,1182) + lu(k,1186) = lu(k,1186) - lu(k,1038) * lu(k,1182) + lu(k,1187) = lu(k,1187) - lu(k,1039) * lu(k,1182) + lu(k,1188) = lu(k,1188) - lu(k,1040) * lu(k,1182) + lu(k,1189) = lu(k,1189) - lu(k,1041) * lu(k,1182) + lu(k,1190) = lu(k,1190) - lu(k,1042) * lu(k,1182) + lu(k,1191) = lu(k,1191) - lu(k,1043) * lu(k,1182) + lu(k,1269) = lu(k,1269) - lu(k,1035) * lu(k,1268) + lu(k,1270) = lu(k,1270) - lu(k,1036) * lu(k,1268) + lu(k,1271) = lu(k,1271) - lu(k,1037) * lu(k,1268) + lu(k,1272) = lu(k,1272) - lu(k,1038) * lu(k,1268) + lu(k,1273) = lu(k,1273) - lu(k,1039) * lu(k,1268) + lu(k,1274) = lu(k,1274) - lu(k,1040) * lu(k,1268) + lu(k,1275) = lu(k,1275) - lu(k,1041) * lu(k,1268) + lu(k,1276) = lu(k,1276) - lu(k,1042) * lu(k,1268) + lu(k,1277) = lu(k,1277) - lu(k,1043) * lu(k,1268) + lu(k,1301) = lu(k,1301) - lu(k,1035) * lu(k,1300) + lu(k,1302) = lu(k,1302) - lu(k,1036) * lu(k,1300) + lu(k,1303) = lu(k,1303) - lu(k,1037) * lu(k,1300) + lu(k,1304) = lu(k,1304) - lu(k,1038) * lu(k,1300) + lu(k,1305) = lu(k,1305) - lu(k,1039) * lu(k,1300) + lu(k,1306) = lu(k,1306) - lu(k,1040) * lu(k,1300) + lu(k,1307) = lu(k,1307) - lu(k,1041) * lu(k,1300) + lu(k,1308) = lu(k,1308) - lu(k,1042) * lu(k,1300) + lu(k,1309) = lu(k,1309) - lu(k,1043) * lu(k,1300) + lu(k,1324) = lu(k,1324) - lu(k,1035) * lu(k,1323) + lu(k,1325) = lu(k,1325) - lu(k,1036) * lu(k,1323) + lu(k,1326) = lu(k,1326) - lu(k,1037) * lu(k,1323) + lu(k,1327) = lu(k,1327) - lu(k,1038) * lu(k,1323) + lu(k,1328) = lu(k,1328) - lu(k,1039) * lu(k,1323) + lu(k,1329) = lu(k,1329) - lu(k,1040) * lu(k,1323) + lu(k,1330) = lu(k,1330) - lu(k,1041) * lu(k,1323) + lu(k,1331) = lu(k,1331) - lu(k,1042) * lu(k,1323) + lu(k,1332) = lu(k,1332) - lu(k,1043) * lu(k,1323) + lu(k,1350) = lu(k,1350) - lu(k,1035) * lu(k,1349) + lu(k,1351) = lu(k,1351) - lu(k,1036) * lu(k,1349) + lu(k,1352) = lu(k,1352) - lu(k,1037) * lu(k,1349) + lu(k,1353) = lu(k,1353) - lu(k,1038) * lu(k,1349) + lu(k,1354) = lu(k,1354) - lu(k,1039) * lu(k,1349) + lu(k,1355) = lu(k,1355) - lu(k,1040) * lu(k,1349) + lu(k,1356) = lu(k,1356) - lu(k,1041) * lu(k,1349) + lu(k,1357) = lu(k,1357) - lu(k,1042) * lu(k,1349) + lu(k,1358) = lu(k,1358) - lu(k,1043) * lu(k,1349) + lu(k,1371) = lu(k,1371) - lu(k,1035) * lu(k,1370) + lu(k,1372) = lu(k,1372) - lu(k,1036) * lu(k,1370) + lu(k,1373) = lu(k,1373) - lu(k,1037) * lu(k,1370) + lu(k,1374) = lu(k,1374) - lu(k,1038) * lu(k,1370) + lu(k,1375) = lu(k,1375) - lu(k,1039) * lu(k,1370) + lu(k,1376) = lu(k,1376) - lu(k,1040) * lu(k,1370) + lu(k,1377) = lu(k,1377) - lu(k,1041) * lu(k,1370) + lu(k,1378) = lu(k,1378) - lu(k,1042) * lu(k,1370) + lu(k,1379) = lu(k,1379) - lu(k,1043) * lu(k,1370) + lu(k,1081) = 1._r8 / lu(k,1081) + lu(k,1082) = lu(k,1082) * lu(k,1081) + lu(k,1083) = lu(k,1083) * lu(k,1081) + lu(k,1084) = lu(k,1084) * lu(k,1081) + lu(k,1085) = lu(k,1085) * lu(k,1081) + lu(k,1086) = lu(k,1086) * lu(k,1081) + lu(k,1087) = lu(k,1087) * lu(k,1081) + lu(k,1088) = lu(k,1088) * lu(k,1081) + lu(k,1089) = lu(k,1089) * lu(k,1081) + lu(k,1099) = lu(k,1099) - lu(k,1082) * lu(k,1098) + lu(k,1100) = lu(k,1100) - lu(k,1083) * lu(k,1098) + lu(k,1101) = lu(k,1101) - lu(k,1084) * lu(k,1098) + lu(k,1102) = lu(k,1102) - lu(k,1085) * lu(k,1098) + lu(k,1103) = lu(k,1103) - lu(k,1086) * lu(k,1098) + lu(k,1104) = lu(k,1104) - lu(k,1087) * lu(k,1098) + lu(k,1105) = lu(k,1105) - lu(k,1088) * lu(k,1098) + lu(k,1106) = lu(k,1106) - lu(k,1089) * lu(k,1098) + lu(k,1145) = lu(k,1145) - lu(k,1082) * lu(k,1144) + lu(k,1146) = lu(k,1146) - lu(k,1083) * lu(k,1144) + lu(k,1147) = lu(k,1147) - lu(k,1084) * lu(k,1144) + lu(k,1148) = lu(k,1148) - lu(k,1085) * lu(k,1144) + lu(k,1149) = lu(k,1149) - lu(k,1086) * lu(k,1144) + lu(k,1150) = lu(k,1150) - lu(k,1087) * lu(k,1144) + lu(k,1151) = lu(k,1151) - lu(k,1088) * lu(k,1144) + lu(k,1152) = lu(k,1152) - lu(k,1089) * lu(k,1144) + lu(k,1184) = lu(k,1184) - lu(k,1082) * lu(k,1183) + lu(k,1185) = lu(k,1185) - lu(k,1083) * lu(k,1183) + lu(k,1186) = lu(k,1186) - lu(k,1084) * lu(k,1183) + lu(k,1187) = lu(k,1187) - lu(k,1085) * lu(k,1183) + lu(k,1188) = lu(k,1188) - lu(k,1086) * lu(k,1183) + lu(k,1189) = lu(k,1189) - lu(k,1087) * lu(k,1183) + lu(k,1190) = lu(k,1190) - lu(k,1088) * lu(k,1183) + lu(k,1191) = lu(k,1191) - lu(k,1089) * lu(k,1183) + lu(k,1270) = lu(k,1270) - lu(k,1082) * lu(k,1269) + lu(k,1271) = lu(k,1271) - lu(k,1083) * lu(k,1269) + lu(k,1272) = lu(k,1272) - lu(k,1084) * lu(k,1269) + lu(k,1273) = lu(k,1273) - lu(k,1085) * lu(k,1269) + lu(k,1274) = lu(k,1274) - lu(k,1086) * lu(k,1269) + lu(k,1275) = lu(k,1275) - lu(k,1087) * lu(k,1269) + lu(k,1276) = lu(k,1276) - lu(k,1088) * lu(k,1269) + lu(k,1277) = lu(k,1277) - lu(k,1089) * lu(k,1269) + lu(k,1302) = lu(k,1302) - lu(k,1082) * lu(k,1301) + lu(k,1303) = lu(k,1303) - lu(k,1083) * lu(k,1301) + lu(k,1304) = lu(k,1304) - lu(k,1084) * lu(k,1301) + lu(k,1305) = lu(k,1305) - lu(k,1085) * lu(k,1301) + lu(k,1306) = lu(k,1306) - lu(k,1086) * lu(k,1301) + lu(k,1307) = lu(k,1307) - lu(k,1087) * lu(k,1301) + lu(k,1308) = lu(k,1308) - lu(k,1088) * lu(k,1301) + lu(k,1309) = lu(k,1309) - lu(k,1089) * lu(k,1301) + lu(k,1325) = lu(k,1325) - lu(k,1082) * lu(k,1324) + lu(k,1326) = lu(k,1326) - lu(k,1083) * lu(k,1324) + lu(k,1327) = lu(k,1327) - lu(k,1084) * lu(k,1324) + lu(k,1328) = lu(k,1328) - lu(k,1085) * lu(k,1324) + lu(k,1329) = lu(k,1329) - lu(k,1086) * lu(k,1324) + lu(k,1330) = lu(k,1330) - lu(k,1087) * lu(k,1324) + lu(k,1331) = lu(k,1331) - lu(k,1088) * lu(k,1324) + lu(k,1332) = lu(k,1332) - lu(k,1089) * lu(k,1324) + lu(k,1351) = lu(k,1351) - lu(k,1082) * lu(k,1350) + lu(k,1352) = lu(k,1352) - lu(k,1083) * lu(k,1350) + lu(k,1353) = lu(k,1353) - lu(k,1084) * lu(k,1350) + lu(k,1354) = lu(k,1354) - lu(k,1085) * lu(k,1350) + lu(k,1355) = lu(k,1355) - lu(k,1086) * lu(k,1350) + lu(k,1356) = lu(k,1356) - lu(k,1087) * lu(k,1350) + lu(k,1357) = lu(k,1357) - lu(k,1088) * lu(k,1350) + lu(k,1358) = lu(k,1358) - lu(k,1089) * lu(k,1350) + lu(k,1372) = lu(k,1372) - lu(k,1082) * lu(k,1371) + lu(k,1373) = lu(k,1373) - lu(k,1083) * lu(k,1371) + lu(k,1374) = lu(k,1374) - lu(k,1084) * lu(k,1371) + lu(k,1375) = lu(k,1375) - lu(k,1085) * lu(k,1371) + lu(k,1376) = lu(k,1376) - lu(k,1086) * lu(k,1371) + lu(k,1377) = lu(k,1377) - lu(k,1087) * lu(k,1371) + lu(k,1378) = lu(k,1378) - lu(k,1088) * lu(k,1371) + lu(k,1379) = lu(k,1379) - lu(k,1089) * lu(k,1371) + lu(k,1099) = 1._r8 / lu(k,1099) + lu(k,1100) = lu(k,1100) * lu(k,1099) + lu(k,1101) = lu(k,1101) * lu(k,1099) + lu(k,1102) = lu(k,1102) * lu(k,1099) + lu(k,1103) = lu(k,1103) * lu(k,1099) + lu(k,1104) = lu(k,1104) * lu(k,1099) + lu(k,1105) = lu(k,1105) * lu(k,1099) + lu(k,1106) = lu(k,1106) * lu(k,1099) + lu(k,1146) = lu(k,1146) - lu(k,1100) * lu(k,1145) + lu(k,1147) = lu(k,1147) - lu(k,1101) * lu(k,1145) + lu(k,1148) = lu(k,1148) - lu(k,1102) * lu(k,1145) + lu(k,1149) = lu(k,1149) - lu(k,1103) * lu(k,1145) + lu(k,1150) = lu(k,1150) - lu(k,1104) * lu(k,1145) + lu(k,1151) = lu(k,1151) - lu(k,1105) * lu(k,1145) + lu(k,1152) = lu(k,1152) - lu(k,1106) * lu(k,1145) + lu(k,1185) = lu(k,1185) - lu(k,1100) * lu(k,1184) + lu(k,1186) = lu(k,1186) - lu(k,1101) * lu(k,1184) + lu(k,1187) = lu(k,1187) - lu(k,1102) * lu(k,1184) + lu(k,1188) = lu(k,1188) - lu(k,1103) * lu(k,1184) + lu(k,1189) = lu(k,1189) - lu(k,1104) * lu(k,1184) + lu(k,1190) = lu(k,1190) - lu(k,1105) * lu(k,1184) + lu(k,1191) = lu(k,1191) - lu(k,1106) * lu(k,1184) + lu(k,1271) = lu(k,1271) - lu(k,1100) * lu(k,1270) + lu(k,1272) = lu(k,1272) - lu(k,1101) * lu(k,1270) + lu(k,1273) = lu(k,1273) - lu(k,1102) * lu(k,1270) + lu(k,1274) = lu(k,1274) - lu(k,1103) * lu(k,1270) + lu(k,1275) = lu(k,1275) - lu(k,1104) * lu(k,1270) + lu(k,1276) = lu(k,1276) - lu(k,1105) * lu(k,1270) + lu(k,1277) = lu(k,1277) - lu(k,1106) * lu(k,1270) + lu(k,1303) = lu(k,1303) - lu(k,1100) * lu(k,1302) + lu(k,1304) = lu(k,1304) - lu(k,1101) * lu(k,1302) + lu(k,1305) = lu(k,1305) - lu(k,1102) * lu(k,1302) + lu(k,1306) = lu(k,1306) - lu(k,1103) * lu(k,1302) + lu(k,1307) = lu(k,1307) - lu(k,1104) * lu(k,1302) + lu(k,1308) = lu(k,1308) - lu(k,1105) * lu(k,1302) + lu(k,1309) = lu(k,1309) - lu(k,1106) * lu(k,1302) + lu(k,1326) = lu(k,1326) - lu(k,1100) * lu(k,1325) + lu(k,1327) = lu(k,1327) - lu(k,1101) * lu(k,1325) + lu(k,1328) = lu(k,1328) - lu(k,1102) * lu(k,1325) + lu(k,1329) = lu(k,1329) - lu(k,1103) * lu(k,1325) + lu(k,1330) = lu(k,1330) - lu(k,1104) * lu(k,1325) + lu(k,1331) = lu(k,1331) - lu(k,1105) * lu(k,1325) + lu(k,1332) = lu(k,1332) - lu(k,1106) * lu(k,1325) + lu(k,1352) = lu(k,1352) - lu(k,1100) * lu(k,1351) + lu(k,1353) = lu(k,1353) - lu(k,1101) * lu(k,1351) + lu(k,1354) = lu(k,1354) - lu(k,1102) * lu(k,1351) + lu(k,1355) = lu(k,1355) - lu(k,1103) * lu(k,1351) + lu(k,1356) = lu(k,1356) - lu(k,1104) * lu(k,1351) + lu(k,1357) = lu(k,1357) - lu(k,1105) * lu(k,1351) + lu(k,1358) = lu(k,1358) - lu(k,1106) * lu(k,1351) + lu(k,1373) = lu(k,1373) - lu(k,1100) * lu(k,1372) + lu(k,1374) = lu(k,1374) - lu(k,1101) * lu(k,1372) + lu(k,1375) = lu(k,1375) - lu(k,1102) * lu(k,1372) + lu(k,1376) = lu(k,1376) - lu(k,1103) * lu(k,1372) + lu(k,1377) = lu(k,1377) - lu(k,1104) * lu(k,1372) + lu(k,1378) = lu(k,1378) - lu(k,1105) * lu(k,1372) + lu(k,1379) = lu(k,1379) - lu(k,1106) * lu(k,1372) + lu(k,1146) = 1._r8 / lu(k,1146) + lu(k,1147) = lu(k,1147) * lu(k,1146) + lu(k,1148) = lu(k,1148) * lu(k,1146) + lu(k,1149) = lu(k,1149) * lu(k,1146) + lu(k,1150) = lu(k,1150) * lu(k,1146) + lu(k,1151) = lu(k,1151) * lu(k,1146) + lu(k,1152) = lu(k,1152) * lu(k,1146) + lu(k,1186) = lu(k,1186) - lu(k,1147) * lu(k,1185) + lu(k,1187) = lu(k,1187) - lu(k,1148) * lu(k,1185) + lu(k,1188) = lu(k,1188) - lu(k,1149) * lu(k,1185) + lu(k,1189) = lu(k,1189) - lu(k,1150) * lu(k,1185) + lu(k,1190) = lu(k,1190) - lu(k,1151) * lu(k,1185) + lu(k,1191) = lu(k,1191) - lu(k,1152) * lu(k,1185) + lu(k,1272) = lu(k,1272) - lu(k,1147) * lu(k,1271) + lu(k,1273) = lu(k,1273) - lu(k,1148) * lu(k,1271) + lu(k,1274) = lu(k,1274) - lu(k,1149) * lu(k,1271) + lu(k,1275) = lu(k,1275) - lu(k,1150) * lu(k,1271) + lu(k,1276) = lu(k,1276) - lu(k,1151) * lu(k,1271) + lu(k,1277) = lu(k,1277) - lu(k,1152) * lu(k,1271) + lu(k,1304) = lu(k,1304) - lu(k,1147) * lu(k,1303) + lu(k,1305) = lu(k,1305) - lu(k,1148) * lu(k,1303) + lu(k,1306) = lu(k,1306) - lu(k,1149) * lu(k,1303) + lu(k,1307) = lu(k,1307) - lu(k,1150) * lu(k,1303) + lu(k,1308) = lu(k,1308) - lu(k,1151) * lu(k,1303) + lu(k,1309) = lu(k,1309) - lu(k,1152) * lu(k,1303) + lu(k,1327) = lu(k,1327) - lu(k,1147) * lu(k,1326) + lu(k,1328) = lu(k,1328) - lu(k,1148) * lu(k,1326) + lu(k,1329) = lu(k,1329) - lu(k,1149) * lu(k,1326) + lu(k,1330) = lu(k,1330) - lu(k,1150) * lu(k,1326) + lu(k,1331) = lu(k,1331) - lu(k,1151) * lu(k,1326) + lu(k,1332) = lu(k,1332) - lu(k,1152) * lu(k,1326) + lu(k,1353) = lu(k,1353) - lu(k,1147) * lu(k,1352) + lu(k,1354) = lu(k,1354) - lu(k,1148) * lu(k,1352) + lu(k,1355) = lu(k,1355) - lu(k,1149) * lu(k,1352) + lu(k,1356) = lu(k,1356) - lu(k,1150) * lu(k,1352) + lu(k,1357) = lu(k,1357) - lu(k,1151) * lu(k,1352) + lu(k,1358) = lu(k,1358) - lu(k,1152) * lu(k,1352) + lu(k,1374) = lu(k,1374) - lu(k,1147) * lu(k,1373) + lu(k,1375) = lu(k,1375) - lu(k,1148) * lu(k,1373) + lu(k,1376) = lu(k,1376) - lu(k,1149) * lu(k,1373) + lu(k,1377) = lu(k,1377) - lu(k,1150) * lu(k,1373) + lu(k,1378) = lu(k,1378) - lu(k,1151) * lu(k,1373) + lu(k,1379) = lu(k,1379) - lu(k,1152) * lu(k,1373) + end do + end subroutine lu_fac18 + subroutine lu_fac19( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) +!----------------------------------------------------------------------- +! ... local variables +!----------------------------------------------------------------------- + integer :: k + do k = 1,avec_len + lu(k,1186) = 1._r8 / lu(k,1186) + lu(k,1187) = lu(k,1187) * lu(k,1186) + lu(k,1188) = lu(k,1188) * lu(k,1186) + lu(k,1189) = lu(k,1189) * lu(k,1186) + lu(k,1190) = lu(k,1190) * lu(k,1186) + lu(k,1191) = lu(k,1191) * lu(k,1186) + lu(k,1273) = lu(k,1273) - lu(k,1187) * lu(k,1272) + lu(k,1274) = lu(k,1274) - lu(k,1188) * lu(k,1272) + lu(k,1275) = lu(k,1275) - lu(k,1189) * lu(k,1272) + lu(k,1276) = lu(k,1276) - lu(k,1190) * lu(k,1272) + lu(k,1277) = lu(k,1277) - lu(k,1191) * lu(k,1272) + lu(k,1305) = lu(k,1305) - lu(k,1187) * lu(k,1304) + lu(k,1306) = lu(k,1306) - lu(k,1188) * lu(k,1304) + lu(k,1307) = lu(k,1307) - lu(k,1189) * lu(k,1304) + lu(k,1308) = lu(k,1308) - lu(k,1190) * lu(k,1304) + lu(k,1309) = lu(k,1309) - lu(k,1191) * lu(k,1304) + lu(k,1328) = lu(k,1328) - lu(k,1187) * lu(k,1327) + lu(k,1329) = lu(k,1329) - lu(k,1188) * lu(k,1327) + lu(k,1330) = lu(k,1330) - lu(k,1189) * lu(k,1327) + lu(k,1331) = lu(k,1331) - lu(k,1190) * lu(k,1327) + lu(k,1332) = lu(k,1332) - lu(k,1191) * lu(k,1327) + lu(k,1354) = lu(k,1354) - lu(k,1187) * lu(k,1353) + lu(k,1355) = lu(k,1355) - lu(k,1188) * lu(k,1353) + lu(k,1356) = lu(k,1356) - lu(k,1189) * lu(k,1353) + lu(k,1357) = lu(k,1357) - lu(k,1190) * lu(k,1353) + lu(k,1358) = lu(k,1358) - lu(k,1191) * lu(k,1353) + lu(k,1375) = lu(k,1375) - lu(k,1187) * lu(k,1374) + lu(k,1376) = lu(k,1376) - lu(k,1188) * lu(k,1374) + lu(k,1377) = lu(k,1377) - lu(k,1189) * lu(k,1374) + lu(k,1378) = lu(k,1378) - lu(k,1190) * lu(k,1374) + lu(k,1379) = lu(k,1379) - lu(k,1191) * lu(k,1374) + lu(k,1273) = 1._r8 / lu(k,1273) + lu(k,1274) = lu(k,1274) * lu(k,1273) + lu(k,1275) = lu(k,1275) * lu(k,1273) + lu(k,1276) = lu(k,1276) * lu(k,1273) + lu(k,1277) = lu(k,1277) * lu(k,1273) + lu(k,1306) = lu(k,1306) - lu(k,1274) * lu(k,1305) + lu(k,1307) = lu(k,1307) - lu(k,1275) * lu(k,1305) + lu(k,1308) = lu(k,1308) - lu(k,1276) * lu(k,1305) + lu(k,1309) = lu(k,1309) - lu(k,1277) * lu(k,1305) + lu(k,1329) = lu(k,1329) - lu(k,1274) * lu(k,1328) + lu(k,1330) = lu(k,1330) - lu(k,1275) * lu(k,1328) + lu(k,1331) = lu(k,1331) - lu(k,1276) * lu(k,1328) + lu(k,1332) = lu(k,1332) - lu(k,1277) * lu(k,1328) + lu(k,1355) = lu(k,1355) - lu(k,1274) * lu(k,1354) + lu(k,1356) = lu(k,1356) - lu(k,1275) * lu(k,1354) + lu(k,1357) = lu(k,1357) - lu(k,1276) * lu(k,1354) + lu(k,1358) = lu(k,1358) - lu(k,1277) * lu(k,1354) + lu(k,1376) = lu(k,1376) - lu(k,1274) * lu(k,1375) + lu(k,1377) = lu(k,1377) - lu(k,1275) * lu(k,1375) + lu(k,1378) = lu(k,1378) - lu(k,1276) * lu(k,1375) + lu(k,1379) = lu(k,1379) - lu(k,1277) * lu(k,1375) + lu(k,1306) = 1._r8 / lu(k,1306) + lu(k,1307) = lu(k,1307) * lu(k,1306) + lu(k,1308) = lu(k,1308) * lu(k,1306) + lu(k,1309) = lu(k,1309) * lu(k,1306) + lu(k,1330) = lu(k,1330) - lu(k,1307) * lu(k,1329) + lu(k,1331) = lu(k,1331) - lu(k,1308) * lu(k,1329) + lu(k,1332) = lu(k,1332) - lu(k,1309) * lu(k,1329) + lu(k,1356) = lu(k,1356) - lu(k,1307) * lu(k,1355) + lu(k,1357) = lu(k,1357) - lu(k,1308) * lu(k,1355) + lu(k,1358) = lu(k,1358) - lu(k,1309) * lu(k,1355) + lu(k,1377) = lu(k,1377) - lu(k,1307) * lu(k,1376) + lu(k,1378) = lu(k,1378) - lu(k,1308) * lu(k,1376) + lu(k,1379) = lu(k,1379) - lu(k,1309) * lu(k,1376) + lu(k,1330) = 1._r8 / lu(k,1330) + lu(k,1331) = lu(k,1331) * lu(k,1330) + lu(k,1332) = lu(k,1332) * lu(k,1330) + lu(k,1357) = lu(k,1357) - lu(k,1331) * lu(k,1356) + lu(k,1358) = lu(k,1358) - lu(k,1332) * lu(k,1356) + lu(k,1378) = lu(k,1378) - lu(k,1331) * lu(k,1377) + lu(k,1379) = lu(k,1379) - lu(k,1332) * lu(k,1377) + lu(k,1357) = 1._r8 / lu(k,1357) + lu(k,1358) = lu(k,1358) * lu(k,1357) + lu(k,1379) = lu(k,1379) - lu(k,1358) * lu(k,1378) + lu(k,1379) = 1._r8 / lu(k,1379) + end do + end subroutine lu_fac19 + subroutine lu_fac( avec_len, lu ) + use chem_mods, only : nzcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!----------------------------------------------------------------------- +! ... dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(inout) :: lu(veclen,nzcnt) + call lu_fac01( avec_len, lu ) + call lu_fac02( avec_len, lu ) + call lu_fac03( avec_len, lu ) + call lu_fac04( avec_len, lu ) + call lu_fac05( avec_len, lu ) + call lu_fac06( avec_len, lu ) + call lu_fac07( avec_len, lu ) + call lu_fac08( avec_len, lu ) + call lu_fac09( avec_len, lu ) + call lu_fac10( avec_len, lu ) + call lu_fac11( avec_len, lu ) + call lu_fac12( avec_len, lu ) + call lu_fac13( avec_len, lu ) + call lu_fac14( avec_len, lu ) + call lu_fac15( avec_len, lu ) + call lu_fac16( avec_len, lu ) + call lu_fac17( avec_len, lu ) + call lu_fac18( avec_len, lu ) + call lu_fac19( avec_len, lu ) + end subroutine lu_fac + end module mo_lu_factor diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_solve.F90 new file mode 100644 index 0000000000..2aa3e38a2b --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_lu_solve.F90 @@ -0,0 +1,1567 @@ + module mo_lu_solve + use chem_mods, only: veclen + private + public :: lu_slv + contains + subroutine lu_slv01( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,31) = b(k,31) - lu(k,31) * b(k,30) + b(k,128) = b(k,128) - lu(k,35) * b(k,33) + b(k,131) = b(k,131) - lu(k,36) * b(k,33) + b(k,101) = b(k,101) - lu(k,38) * b(k,34) + b(k,137) = b(k,137) - lu(k,39) * b(k,34) + b(k,134) = b(k,134) - lu(k,41) * b(k,35) + b(k,136) = b(k,136) - lu(k,42) * b(k,35) + b(k,137) = b(k,137) - lu(k,44) * b(k,36) + b(k,141) = b(k,141) - lu(k,45) * b(k,36) + b(k,131) = b(k,131) - lu(k,47) * b(k,37) + b(k,136) = b(k,136) - lu(k,48) * b(k,37) + b(k,134) = b(k,134) - lu(k,50) * b(k,38) + b(k,136) = b(k,136) - lu(k,51) * b(k,38) + b(k,131) = b(k,131) - lu(k,53) * b(k,39) + b(k,136) = b(k,136) - lu(k,54) * b(k,39) + b(k,131) = b(k,131) - lu(k,56) * b(k,40) + b(k,136) = b(k,136) - lu(k,57) * b(k,40) + b(k,131) = b(k,131) - lu(k,59) * b(k,41) + b(k,136) = b(k,136) - lu(k,60) * b(k,41) + b(k,131) = b(k,131) - lu(k,62) * b(k,42) + b(k,136) = b(k,136) - lu(k,63) * b(k,42) + b(k,131) = b(k,131) - lu(k,65) * b(k,43) + b(k,136) = b(k,136) - lu(k,66) * b(k,43) + b(k,101) = b(k,101) - lu(k,68) * b(k,44) + b(k,137) = b(k,137) - lu(k,69) * b(k,44) + b(k,141) = b(k,141) - lu(k,70) * b(k,44) + b(k,131) = b(k,131) - lu(k,72) * b(k,45) + b(k,134) = b(k,134) - lu(k,73) * b(k,45) + b(k,136) = b(k,136) - lu(k,74) * b(k,45) + b(k,131) = b(k,131) - lu(k,76) * b(k,46) + b(k,137) = b(k,137) - lu(k,77) * b(k,46) + b(k,141) = b(k,141) - lu(k,78) * b(k,46) + b(k,74) = b(k,74) - lu(k,80) * b(k,47) + b(k,137) = b(k,137) - lu(k,81) * b(k,47) + b(k,59) = b(k,59) - lu(k,83) * b(k,48) + b(k,141) = b(k,141) - lu(k,84) * b(k,48) + b(k,131) = b(k,131) - lu(k,86) * b(k,49) + b(k,140) = b(k,140) - lu(k,88) * b(k,50) + b(k,140) = b(k,140) - lu(k,91) * b(k,51) + b(k,131) = b(k,131) - lu(k,93) * b(k,52) + b(k,136) = b(k,136) - lu(k,94) * b(k,52) + b(k,137) = b(k,137) - lu(k,95) * b(k,52) + b(k,131) = b(k,131) - lu(k,97) * b(k,53) + b(k,136) = b(k,136) - lu(k,98) * b(k,53) + b(k,137) = b(k,137) - lu(k,99) * b(k,53) + b(k,116) = b(k,116) - lu(k,101) * b(k,54) + b(k,137) = b(k,137) - lu(k,102) * b(k,54) + b(k,131) = b(k,131) - lu(k,104) * b(k,55) + b(k,136) = b(k,136) - lu(k,105) * b(k,55) + b(k,137) = b(k,137) - lu(k,106) * b(k,55) + b(k,141) = b(k,141) - lu(k,107) * b(k,55) + b(k,131) = b(k,131) - lu(k,109) * b(k,56) + b(k,134) = b(k,134) - lu(k,110) * b(k,56) + b(k,127) = b(k,127) - lu(k,112) * b(k,57) + b(k,136) = b(k,136) - lu(k,113) * b(k,57) + b(k,140) = b(k,140) - lu(k,114) * b(k,57) + b(k,111) = b(k,111) - lu(k,116) * b(k,58) + b(k,132) = b(k,132) - lu(k,117) * b(k,58) + b(k,137) = b(k,137) - lu(k,118) * b(k,58) + b(k,105) = b(k,105) - lu(k,121) * b(k,59) + b(k,138) = b(k,138) - lu(k,122) * b(k,59) + b(k,141) = b(k,141) - lu(k,123) * b(k,59) + b(k,100) = b(k,100) - lu(k,125) * b(k,60) + b(k,127) = b(k,127) - lu(k,126) * b(k,60) + b(k,129) = b(k,129) - lu(k,127) * b(k,60) + b(k,135) = b(k,135) - lu(k,128) * b(k,60) + b(k,138) = b(k,138) - lu(k,129) * b(k,60) + b(k,97) = b(k,97) - lu(k,131) * b(k,61) + b(k,130) = b(k,130) - lu(k,132) * b(k,61) + b(k,131) = b(k,131) - lu(k,133) * b(k,61) + b(k,137) = b(k,137) - lu(k,134) * b(k,61) + b(k,141) = b(k,141) - lu(k,135) * b(k,61) + b(k,100) = b(k,100) - lu(k,137) * b(k,62) + b(k,105) = b(k,105) - lu(k,138) * b(k,62) + b(k,132) = b(k,132) - lu(k,139) * b(k,62) + b(k,135) = b(k,135) - lu(k,140) * b(k,62) + b(k,137) = b(k,137) - lu(k,141) * b(k,62) + b(k,119) = b(k,119) - lu(k,143) * b(k,63) + b(k,120) = b(k,120) - lu(k,144) * b(k,63) + b(k,132) = b(k,132) - lu(k,145) * b(k,63) + b(k,137) = b(k,137) - lu(k,146) * b(k,63) + b(k,97) = b(k,97) - lu(k,148) * b(k,64) + b(k,111) = b(k,111) - lu(k,149) * b(k,64) + b(k,132) = b(k,132) - lu(k,150) * b(k,64) + b(k,137) = b(k,137) - lu(k,151) * b(k,64) + b(k,105) = b(k,105) - lu(k,153) * b(k,65) + b(k,122) = b(k,122) - lu(k,154) * b(k,65) + b(k,128) = b(k,128) - lu(k,155) * b(k,65) + b(k,138) = b(k,138) - lu(k,156) * b(k,65) + b(k,116) = b(k,116) - lu(k,158) * b(k,66) + b(k,137) = b(k,137) - lu(k,159) * b(k,66) + b(k,90) = b(k,90) - lu(k,161) * b(k,67) + b(k,105) = b(k,105) - lu(k,162) * b(k,67) + b(k,115) = b(k,115) - lu(k,163) * b(k,67) + b(k,122) = b(k,122) - lu(k,164) * b(k,67) + b(k,125) = b(k,125) - lu(k,165) * b(k,67) + b(k,137) = b(k,137) - lu(k,166) * b(k,67) + b(k,138) = b(k,138) - lu(k,167) * b(k,67) + b(k,115) = b(k,115) - lu(k,169) * b(k,68) + b(k,124) = b(k,124) - lu(k,170) * b(k,68) + b(k,130) = b(k,130) - lu(k,171) * b(k,68) + b(k,131) = b(k,131) - lu(k,172) * b(k,68) + b(k,132) = b(k,132) - lu(k,173) * b(k,68) + b(k,137) = b(k,137) - lu(k,174) * b(k,68) + b(k,141) = b(k,141) - lu(k,175) * b(k,68) + b(k,93) = b(k,93) - lu(k,177) * b(k,69) + b(k,101) = b(k,101) - lu(k,178) * b(k,69) + b(k,132) = b(k,132) - lu(k,179) * b(k,69) + b(k,137) = b(k,137) - lu(k,180) * b(k,69) + b(k,141) = b(k,141) - lu(k,181) * b(k,69) + b(k,117) = b(k,117) - lu(k,183) * b(k,70) + b(k,121) = b(k,121) - lu(k,184) * b(k,70) + b(k,126) = b(k,126) - lu(k,185) * b(k,70) + b(k,129) = b(k,129) - lu(k,186) * b(k,70) + b(k,137) = b(k,137) - lu(k,187) * b(k,70) + b(k,130) = b(k,130) - lu(k,189) * b(k,71) + b(k,131) = b(k,131) - lu(k,190) * b(k,71) + b(k,134) = b(k,134) - lu(k,191) * b(k,71) + b(k,136) = b(k,136) - lu(k,192) * b(k,71) + b(k,137) = b(k,137) - lu(k,193) * b(k,71) + b(k,124) = b(k,124) - lu(k,195) * b(k,72) + b(k,125) = b(k,125) - lu(k,196) * b(k,72) + b(k,126) = b(k,126) - lu(k,197) * b(k,72) + b(k,137) = b(k,137) - lu(k,198) * b(k,72) + b(k,141) = b(k,141) - lu(k,199) * b(k,72) + b(k,107) = b(k,107) - lu(k,201) * b(k,73) + b(k,121) = b(k,121) - lu(k,202) * b(k,73) + b(k,126) = b(k,126) - lu(k,203) * b(k,73) + b(k,137) = b(k,137) - lu(k,204) * b(k,73) + b(k,141) = b(k,141) - lu(k,205) * b(k,73) + b(k,113) = b(k,113) - lu(k,207) * b(k,74) + b(k,126) = b(k,126) - lu(k,208) * b(k,74) + b(k,132) = b(k,132) - lu(k,209) * b(k,74) + b(k,140) = b(k,140) - lu(k,210) * b(k,74) + b(k,94) = b(k,94) - lu(k,212) * b(k,75) + b(k,115) = b(k,115) - lu(k,213) * b(k,75) + b(k,126) = b(k,126) - lu(k,214) * b(k,75) + b(k,132) = b(k,132) - lu(k,215) * b(k,75) + b(k,133) = b(k,133) - lu(k,216) * b(k,75) + b(k,137) = b(k,137) - lu(k,217) * b(k,75) + b(k,129) = b(k,129) - lu(k,219) * b(k,76) + b(k,132) = b(k,132) - lu(k,220) * b(k,76) + b(k,135) = b(k,135) - lu(k,221) * b(k,76) + b(k,137) = b(k,137) - lu(k,222) * b(k,76) + b(k,140) = b(k,140) - lu(k,223) * b(k,76) + b(k,141) = b(k,141) - lu(k,224) * b(k,76) + b(k,130) = b(k,130) - lu(k,226) * b(k,77) + b(k,131) = b(k,131) - lu(k,227) * b(k,77) + b(k,134) = b(k,134) - lu(k,228) * b(k,77) + b(k,136) = b(k,136) - lu(k,229) * b(k,77) + b(k,137) = b(k,137) - lu(k,230) * b(k,77) + b(k,141) = b(k,141) - lu(k,231) * b(k,77) + b(k,92) = b(k,92) - lu(k,233) * b(k,78) + b(k,100) = b(k,100) - lu(k,234) * b(k,78) + b(k,129) = b(k,129) - lu(k,235) * b(k,78) + b(k,134) = b(k,134) - lu(k,236) * b(k,78) + b(k,135) = b(k,135) - lu(k,237) * b(k,78) + b(k,138) = b(k,138) - lu(k,238) * b(k,78) + b(k,139) = b(k,139) - lu(k,239) * b(k,78) + b(k,126) = b(k,126) - lu(k,241) * b(k,79) + b(k,132) = b(k,132) - lu(k,242) * b(k,79) + b(k,137) = b(k,137) - lu(k,243) * b(k,79) + b(k,114) = b(k,114) - lu(k,245) * b(k,80) + b(k,116) = b(k,116) - lu(k,246) * b(k,80) + b(k,118) = b(k,118) - lu(k,247) * b(k,80) + b(k,123) = b(k,123) - lu(k,248) * b(k,80) + b(k,126) = b(k,126) - lu(k,249) * b(k,80) + b(k,132) = b(k,132) - lu(k,250) * b(k,80) + b(k,137) = b(k,137) - lu(k,251) * b(k,80) + b(k,104) = b(k,104) - lu(k,253) * b(k,81) + b(k,121) = b(k,121) - lu(k,254) * b(k,81) + b(k,124) = b(k,124) - lu(k,255) * b(k,81) + b(k,126) = b(k,126) - lu(k,256) * b(k,81) + b(k,129) = b(k,129) - lu(k,257) * b(k,81) + b(k,135) = b(k,135) - lu(k,258) * b(k,81) + b(k,137) = b(k,137) - lu(k,259) * b(k,81) + b(k,96) = b(k,96) - lu(k,261) * b(k,82) + b(k,110) = b(k,110) - lu(k,262) * b(k,82) + b(k,111) = b(k,111) - lu(k,263) * b(k,82) + b(k,126) = b(k,126) - lu(k,264) * b(k,82) + b(k,132) = b(k,132) - lu(k,265) * b(k,82) + b(k,137) = b(k,137) - lu(k,266) * b(k,82) + b(k,141) = b(k,141) - lu(k,267) * b(k,82) + b(k,130) = b(k,130) - lu(k,269) * b(k,83) + b(k,131) = b(k,131) - lu(k,270) * b(k,83) + b(k,132) = b(k,132) - lu(k,271) * b(k,83) + b(k,137) = b(k,137) - lu(k,272) * b(k,83) + b(k,138) = b(k,138) - lu(k,273) * b(k,83) + b(k,141) = b(k,141) - lu(k,274) * b(k,83) + b(k,104) = b(k,104) - lu(k,276) * b(k,84) + b(k,110) = b(k,110) - lu(k,277) * b(k,84) + b(k,120) = b(k,120) - lu(k,278) * b(k,84) + b(k,126) = b(k,126) - lu(k,279) * b(k,84) + b(k,129) = b(k,129) - lu(k,280) * b(k,84) + b(k,132) = b(k,132) - lu(k,281) * b(k,84) + b(k,135) = b(k,135) - lu(k,282) * b(k,84) + b(k,137) = b(k,137) - lu(k,283) * b(k,84) + b(k,104) = b(k,104) - lu(k,285) * b(k,85) + b(k,121) = b(k,121) - lu(k,286) * b(k,85) + b(k,124) = b(k,124) - lu(k,287) * b(k,85) + b(k,126) = b(k,126) - lu(k,288) * b(k,85) + b(k,137) = b(k,137) - lu(k,289) * b(k,85) + b(k,141) = b(k,141) - lu(k,290) * b(k,85) + end do + end subroutine lu_slv01 + subroutine lu_slv02( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,124) = b(k,124) - lu(k,292) * b(k,86) + b(k,130) = b(k,130) - lu(k,293) * b(k,86) + b(k,131) = b(k,131) - lu(k,294) * b(k,86) + b(k,132) = b(k,132) - lu(k,295) * b(k,86) + b(k,134) = b(k,134) - lu(k,296) * b(k,86) + b(k,136) = b(k,136) - lu(k,297) * b(k,86) + b(k,137) = b(k,137) - lu(k,298) * b(k,86) + b(k,141) = b(k,141) - lu(k,299) * b(k,86) + b(k,93) = b(k,93) - lu(k,301) * b(k,87) + b(k,114) = b(k,114) - lu(k,302) * b(k,87) + b(k,118) = b(k,118) - lu(k,303) * b(k,87) + b(k,123) = b(k,123) - lu(k,304) * b(k,87) + b(k,129) = b(k,129) - lu(k,305) * b(k,87) + b(k,133) = b(k,133) - lu(k,306) * b(k,87) + b(k,135) = b(k,135) - lu(k,307) * b(k,87) + b(k,137) = b(k,137) - lu(k,308) * b(k,87) + b(k,138) = b(k,138) - lu(k,309) * b(k,87) + b(k,125) = b(k,125) - lu(k,312) * b(k,88) + b(k,127) = b(k,127) - lu(k,313) * b(k,88) + b(k,129) = b(k,129) - lu(k,314) * b(k,88) + b(k,136) = b(k,136) - lu(k,315) * b(k,88) + b(k,137) = b(k,137) - lu(k,316) * b(k,88) + b(k,138) = b(k,138) - lu(k,317) * b(k,88) + b(k,140) = b(k,140) - lu(k,318) * b(k,88) + b(k,104) = b(k,104) - lu(k,320) * b(k,89) + b(k,124) = b(k,124) - lu(k,321) * b(k,89) + b(k,137) = b(k,137) - lu(k,322) * b(k,89) + b(k,141) = b(k,141) - lu(k,323) * b(k,89) + b(k,122) = b(k,122) - lu(k,325) * b(k,90) + b(k,125) = b(k,125) - lu(k,326) * b(k,90) + b(k,133) = b(k,133) - lu(k,327) * b(k,90) + b(k,137) = b(k,137) - lu(k,328) * b(k,90) + b(k,138) = b(k,138) - lu(k,329) * b(k,90) + b(k,140) = b(k,140) - lu(k,330) * b(k,90) + b(k,104) = b(k,104) - lu(k,332) * b(k,91) + b(k,115) = b(k,115) - lu(k,333) * b(k,91) + b(k,132) = b(k,132) - lu(k,334) * b(k,91) + b(k,137) = b(k,137) - lu(k,335) * b(k,91) + b(k,130) = b(k,130) - lu(k,338) * b(k,92) + b(k,131) = b(k,131) - lu(k,339) * b(k,92) + b(k,134) = b(k,134) - lu(k,340) * b(k,92) + b(k,137) = b(k,137) - lu(k,341) * b(k,92) + b(k,138) = b(k,138) - lu(k,342) * b(k,92) + b(k,139) = b(k,139) - lu(k,343) * b(k,92) + b(k,141) = b(k,141) - lu(k,344) * b(k,92) + b(k,107) = b(k,107) - lu(k,346) * b(k,93) + b(k,121) = b(k,121) - lu(k,347) * b(k,93) + b(k,124) = b(k,124) - lu(k,348) * b(k,93) + b(k,137) = b(k,137) - lu(k,349) * b(k,93) + b(k,141) = b(k,141) - lu(k,350) * b(k,93) + b(k,113) = b(k,113) - lu(k,354) * b(k,94) + b(k,126) = b(k,126) - lu(k,355) * b(k,94) + b(k,127) = b(k,127) - lu(k,356) * b(k,94) + b(k,129) = b(k,129) - lu(k,357) * b(k,94) + b(k,132) = b(k,132) - lu(k,358) * b(k,94) + b(k,137) = b(k,137) - lu(k,359) * b(k,94) + b(k,140) = b(k,140) - lu(k,360) * b(k,94) + b(k,106) = b(k,106) - lu(k,362) * b(k,95) + b(k,114) = b(k,114) - lu(k,363) * b(k,95) + b(k,123) = b(k,123) - lu(k,364) * b(k,95) + b(k,126) = b(k,126) - lu(k,365) * b(k,95) + b(k,127) = b(k,127) - lu(k,366) * b(k,95) + b(k,129) = b(k,129) - lu(k,367) * b(k,95) + b(k,132) = b(k,132) - lu(k,368) * b(k,95) + b(k,135) = b(k,135) - lu(k,369) * b(k,95) + b(k,137) = b(k,137) - lu(k,370) * b(k,95) + b(k,110) = b(k,110) - lu(k,373) * b(k,96) + b(k,111) = b(k,111) - lu(k,374) * b(k,96) + b(k,126) = b(k,126) - lu(k,375) * b(k,96) + b(k,127) = b(k,127) - lu(k,376) * b(k,96) + b(k,129) = b(k,129) - lu(k,377) * b(k,96) + b(k,132) = b(k,132) - lu(k,378) * b(k,96) + b(k,137) = b(k,137) - lu(k,379) * b(k,96) + b(k,140) = b(k,140) - lu(k,380) * b(k,96) + b(k,141) = b(k,141) - lu(k,381) * b(k,96) + b(k,111) = b(k,111) - lu(k,386) * b(k,97) + b(k,124) = b(k,124) - lu(k,387) * b(k,97) + b(k,126) = b(k,126) - lu(k,388) * b(k,97) + b(k,127) = b(k,127) - lu(k,389) * b(k,97) + b(k,129) = b(k,129) - lu(k,390) * b(k,97) + b(k,132) = b(k,132) - lu(k,391) * b(k,97) + b(k,137) = b(k,137) - lu(k,392) * b(k,97) + b(k,140) = b(k,140) - lu(k,393) * b(k,97) + b(k,128) = b(k,128) - lu(k,396) * b(k,98) + b(k,130) = b(k,130) - lu(k,397) * b(k,98) + b(k,131) = b(k,131) - lu(k,398) * b(k,98) + b(k,137) = b(k,137) - lu(k,399) * b(k,98) + b(k,138) = b(k,138) - lu(k,400) * b(k,98) + b(k,141) = b(k,141) - lu(k,401) * b(k,98) + b(k,125) = b(k,125) - lu(k,403) * b(k,99) + b(k,134) = b(k,134) - lu(k,404) * b(k,99) + b(k,136) = b(k,136) - lu(k,405) * b(k,99) + b(k,137) = b(k,137) - lu(k,406) * b(k,99) + b(k,138) = b(k,138) - lu(k,407) * b(k,99) + b(k,139) = b(k,139) - lu(k,408) * b(k,99) + b(k,141) = b(k,141) - lu(k,409) * b(k,99) + b(k,129) = b(k,129) - lu(k,411) * b(k,100) + b(k,135) = b(k,135) - lu(k,412) * b(k,100) + b(k,137) = b(k,137) - lu(k,413) * b(k,100) + b(k,141) = b(k,141) - lu(k,414) * b(k,100) + b(k,107) = b(k,107) - lu(k,418) * b(k,101) + b(k,111) = b(k,111) - lu(k,419) * b(k,101) + b(k,121) = b(k,121) - lu(k,420) * b(k,101) + b(k,124) = b(k,124) - lu(k,421) * b(k,101) + b(k,126) = b(k,126) - lu(k,422) * b(k,101) + b(k,127) = b(k,127) - lu(k,423) * b(k,101) + b(k,129) = b(k,129) - lu(k,424) * b(k,101) + b(k,132) = b(k,132) - lu(k,425) * b(k,101) + b(k,137) = b(k,137) - lu(k,426) * b(k,101) + b(k,140) = b(k,140) - lu(k,427) * b(k,101) + b(k,141) = b(k,141) - lu(k,428) * b(k,101) + b(k,106) = b(k,106) - lu(k,431) * b(k,102) + b(k,112) = b(k,112) - lu(k,432) * b(k,102) + b(k,114) = b(k,114) - lu(k,433) * b(k,102) + b(k,115) = b(k,115) - lu(k,434) * b(k,102) + b(k,118) = b(k,118) - lu(k,435) * b(k,102) + b(k,121) = b(k,121) - lu(k,436) * b(k,102) + b(k,123) = b(k,123) - lu(k,437) * b(k,102) + b(k,124) = b(k,124) - lu(k,438) * b(k,102) + b(k,126) = b(k,126) - lu(k,439) * b(k,102) + b(k,127) = b(k,127) - lu(k,440) * b(k,102) + b(k,129) = b(k,129) - lu(k,441) * b(k,102) + b(k,132) = b(k,132) - lu(k,442) * b(k,102) + b(k,133) = b(k,133) - lu(k,443) * b(k,102) + b(k,135) = b(k,135) - lu(k,444) * b(k,102) + b(k,137) = b(k,137) - lu(k,445) * b(k,102) + b(k,128) = b(k,128) - lu(k,450) * b(k,103) + b(k,129) = b(k,129) - lu(k,451) * b(k,103) + b(k,130) = b(k,130) - lu(k,452) * b(k,103) + b(k,131) = b(k,131) - lu(k,453) * b(k,103) + b(k,135) = b(k,135) - lu(k,454) * b(k,103) + b(k,137) = b(k,137) - lu(k,455) * b(k,103) + b(k,138) = b(k,138) - lu(k,456) * b(k,103) + b(k,141) = b(k,141) - lu(k,457) * b(k,103) + b(k,115) = b(k,115) - lu(k,461) * b(k,104) + b(k,138) = b(k,138) - lu(k,462) * b(k,104) + b(k,140) = b(k,140) - lu(k,463) * b(k,104) + b(k,122) = b(k,122) - lu(k,466) * b(k,105) + b(k,132) = b(k,132) - lu(k,467) * b(k,105) + b(k,137) = b(k,137) - lu(k,468) * b(k,105) + b(k,138) = b(k,138) - lu(k,469) * b(k,105) + b(k,141) = b(k,141) - lu(k,470) * b(k,105) + b(k,115) = b(k,115) - lu(k,474) * b(k,106) + b(k,116) = b(k,116) - lu(k,475) * b(k,106) + b(k,126) = b(k,126) - lu(k,476) * b(k,106) + b(k,129) = b(k,129) - lu(k,477) * b(k,106) + b(k,132) = b(k,132) - lu(k,478) * b(k,106) + b(k,135) = b(k,135) - lu(k,479) * b(k,106) + b(k,137) = b(k,137) - lu(k,480) * b(k,106) + b(k,141) = b(k,141) - lu(k,481) * b(k,106) + b(k,110) = b(k,110) - lu(k,485) * b(k,107) + b(k,117) = b(k,117) - lu(k,486) * b(k,107) + b(k,121) = b(k,121) - lu(k,487) * b(k,107) + b(k,124) = b(k,124) - lu(k,488) * b(k,107) + b(k,126) = b(k,126) - lu(k,489) * b(k,107) + b(k,127) = b(k,127) - lu(k,490) * b(k,107) + b(k,129) = b(k,129) - lu(k,491) * b(k,107) + b(k,132) = b(k,132) - lu(k,492) * b(k,107) + b(k,137) = b(k,137) - lu(k,493) * b(k,107) + b(k,141) = b(k,141) - lu(k,494) * b(k,107) + b(k,125) = b(k,125) - lu(k,496) * b(k,108) + b(k,130) = b(k,130) - lu(k,497) * b(k,108) + b(k,131) = b(k,131) - lu(k,498) * b(k,108) + b(k,136) = b(k,136) - lu(k,499) * b(k,108) + b(k,137) = b(k,137) - lu(k,500) * b(k,108) + b(k,138) = b(k,138) - lu(k,501) * b(k,108) + b(k,141) = b(k,141) - lu(k,502) * b(k,108) + b(k,115) = b(k,115) - lu(k,506) * b(k,109) + b(k,124) = b(k,124) - lu(k,507) * b(k,109) + b(k,125) = b(k,125) - lu(k,508) * b(k,109) + b(k,126) = b(k,126) - lu(k,509) * b(k,109) + b(k,130) = b(k,130) - lu(k,510) * b(k,109) + b(k,131) = b(k,131) - lu(k,511) * b(k,109) + b(k,132) = b(k,132) - lu(k,512) * b(k,109) + b(k,136) = b(k,136) - lu(k,513) * b(k,109) + b(k,137) = b(k,137) - lu(k,514) * b(k,109) + b(k,138) = b(k,138) - lu(k,515) * b(k,109) + b(k,140) = b(k,140) - lu(k,516) * b(k,109) + b(k,141) = b(k,141) - lu(k,517) * b(k,109) + b(k,117) = b(k,117) - lu(k,519) * b(k,110) + b(k,121) = b(k,121) - lu(k,520) * b(k,110) + b(k,126) = b(k,126) - lu(k,521) * b(k,110) + b(k,132) = b(k,132) - lu(k,522) * b(k,110) + b(k,137) = b(k,137) - lu(k,523) * b(k,110) + b(k,115) = b(k,115) - lu(k,526) * b(k,111) + b(k,121) = b(k,121) - lu(k,527) * b(k,111) + b(k,124) = b(k,124) - lu(k,528) * b(k,111) + b(k,129) = b(k,129) - lu(k,529) * b(k,111) + b(k,132) = b(k,132) - lu(k,530) * b(k,111) + b(k,135) = b(k,135) - lu(k,531) * b(k,111) + b(k,137) = b(k,137) - lu(k,532) * b(k,111) + b(k,141) = b(k,141) - lu(k,533) * b(k,111) + b(k,115) = b(k,115) - lu(k,542) * b(k,112) + b(k,117) = b(k,117) - lu(k,543) * b(k,112) + b(k,121) = b(k,121) - lu(k,544) * b(k,112) + b(k,124) = b(k,124) - lu(k,545) * b(k,112) + b(k,125) = b(k,125) - lu(k,546) * b(k,112) + b(k,126) = b(k,126) - lu(k,547) * b(k,112) + b(k,127) = b(k,127) - lu(k,548) * b(k,112) + b(k,129) = b(k,129) - lu(k,549) * b(k,112) + b(k,130) = b(k,130) - lu(k,550) * b(k,112) + b(k,131) = b(k,131) - lu(k,551) * b(k,112) + b(k,132) = b(k,132) - lu(k,552) * b(k,112) + b(k,133) = b(k,133) - lu(k,553) * b(k,112) + b(k,135) = b(k,135) - lu(k,554) * b(k,112) + b(k,136) = b(k,136) - lu(k,555) * b(k,112) + b(k,137) = b(k,137) - lu(k,556) * b(k,112) + b(k,138) = b(k,138) - lu(k,557) * b(k,112) + b(k,140) = b(k,140) - lu(k,558) * b(k,112) + b(k,141) = b(k,141) - lu(k,559) * b(k,112) + end do + end subroutine lu_slv02 + subroutine lu_slv03( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,115) = b(k,115) - lu(k,563) * b(k,113) + b(k,126) = b(k,126) - lu(k,564) * b(k,113) + b(k,132) = b(k,132) - lu(k,565) * b(k,113) + b(k,137) = b(k,137) - lu(k,566) * b(k,113) + b(k,138) = b(k,138) - lu(k,567) * b(k,113) + b(k,140) = b(k,140) - lu(k,568) * b(k,113) + b(k,115) = b(k,115) - lu(k,570) * b(k,114) + b(k,117) = b(k,117) - lu(k,571) * b(k,114) + b(k,119) = b(k,119) - lu(k,572) * b(k,114) + b(k,120) = b(k,120) - lu(k,573) * b(k,114) + b(k,121) = b(k,121) - lu(k,574) * b(k,114) + b(k,126) = b(k,126) - lu(k,575) * b(k,114) + b(k,132) = b(k,132) - lu(k,576) * b(k,114) + b(k,133) = b(k,133) - lu(k,577) * b(k,114) + b(k,137) = b(k,137) - lu(k,578) * b(k,114) + b(k,141) = b(k,141) - lu(k,579) * b(k,114) + b(k,132) = b(k,132) - lu(k,582) * b(k,115) + b(k,137) = b(k,137) - lu(k,583) * b(k,115) + b(k,138) = b(k,138) - lu(k,584) * b(k,115) + b(k,140) = b(k,140) - lu(k,585) * b(k,115) + b(k,117) = b(k,117) - lu(k,594) * b(k,116) + b(k,121) = b(k,121) - lu(k,595) * b(k,116) + b(k,124) = b(k,124) - lu(k,596) * b(k,116) + b(k,126) = b(k,126) - lu(k,597) * b(k,116) + b(k,127) = b(k,127) - lu(k,598) * b(k,116) + b(k,129) = b(k,129) - lu(k,599) * b(k,116) + b(k,132) = b(k,132) - lu(k,600) * b(k,116) + b(k,135) = b(k,135) - lu(k,601) * b(k,116) + b(k,137) = b(k,137) - lu(k,602) * b(k,116) + b(k,138) = b(k,138) - lu(k,603) * b(k,116) + b(k,140) = b(k,140) - lu(k,604) * b(k,116) + b(k,121) = b(k,121) - lu(k,608) * b(k,117) + b(k,129) = b(k,129) - lu(k,609) * b(k,117) + b(k,132) = b(k,132) - lu(k,610) * b(k,117) + b(k,135) = b(k,135) - lu(k,611) * b(k,117) + b(k,137) = b(k,137) - lu(k,612) * b(k,117) + b(k,138) = b(k,138) - lu(k,613) * b(k,117) + b(k,140) = b(k,140) - lu(k,614) * b(k,117) + b(k,141) = b(k,141) - lu(k,615) * b(k,117) + b(k,119) = b(k,119) - lu(k,629) * b(k,118) + b(k,120) = b(k,120) - lu(k,630) * b(k,118) + b(k,121) = b(k,121) - lu(k,631) * b(k,118) + b(k,123) = b(k,123) - lu(k,632) * b(k,118) + b(k,124) = b(k,124) - lu(k,633) * b(k,118) + b(k,126) = b(k,126) - lu(k,634) * b(k,118) + b(k,127) = b(k,127) - lu(k,635) * b(k,118) + b(k,129) = b(k,129) - lu(k,636) * b(k,118) + b(k,132) = b(k,132) - lu(k,637) * b(k,118) + b(k,133) = b(k,133) - lu(k,638) * b(k,118) + b(k,135) = b(k,135) - lu(k,639) * b(k,118) + b(k,137) = b(k,137) - lu(k,640) * b(k,118) + b(k,138) = b(k,138) - lu(k,641) * b(k,118) + b(k,140) = b(k,140) - lu(k,642) * b(k,118) + b(k,141) = b(k,141) - lu(k,643) * b(k,118) + b(k,120) = b(k,120) - lu(k,653) * b(k,119) + b(k,121) = b(k,121) - lu(k,654) * b(k,119) + b(k,124) = b(k,124) - lu(k,655) * b(k,119) + b(k,126) = b(k,126) - lu(k,656) * b(k,119) + b(k,127) = b(k,127) - lu(k,657) * b(k,119) + b(k,129) = b(k,129) - lu(k,658) * b(k,119) + b(k,132) = b(k,132) - lu(k,659) * b(k,119) + b(k,135) = b(k,135) - lu(k,660) * b(k,119) + b(k,137) = b(k,137) - lu(k,661) * b(k,119) + b(k,138) = b(k,138) - lu(k,662) * b(k,119) + b(k,140) = b(k,140) - lu(k,663) * b(k,119) + b(k,141) = b(k,141) - lu(k,664) * b(k,119) + b(k,121) = b(k,121) - lu(k,673) * b(k,120) + b(k,124) = b(k,124) - lu(k,674) * b(k,120) + b(k,126) = b(k,126) - lu(k,675) * b(k,120) + b(k,127) = b(k,127) - lu(k,676) * b(k,120) + b(k,129) = b(k,129) - lu(k,677) * b(k,120) + b(k,132) = b(k,132) - lu(k,678) * b(k,120) + b(k,133) = b(k,133) - lu(k,679) * b(k,120) + b(k,135) = b(k,135) - lu(k,680) * b(k,120) + b(k,137) = b(k,137) - lu(k,681) * b(k,120) + b(k,138) = b(k,138) - lu(k,682) * b(k,120) + b(k,140) = b(k,140) - lu(k,683) * b(k,120) + b(k,141) = b(k,141) - lu(k,684) * b(k,120) + b(k,123) = b(k,123) - lu(k,701) * b(k,121) + b(k,124) = b(k,124) - lu(k,702) * b(k,121) + b(k,126) = b(k,126) - lu(k,703) * b(k,121) + b(k,127) = b(k,127) - lu(k,704) * b(k,121) + b(k,129) = b(k,129) - lu(k,705) * b(k,121) + b(k,132) = b(k,132) - lu(k,706) * b(k,121) + b(k,133) = b(k,133) - lu(k,707) * b(k,121) + b(k,135) = b(k,135) - lu(k,708) * b(k,121) + b(k,137) = b(k,137) - lu(k,709) * b(k,121) + b(k,138) = b(k,138) - lu(k,710) * b(k,121) + b(k,140) = b(k,140) - lu(k,711) * b(k,121) + b(k,141) = b(k,141) - lu(k,712) * b(k,121) + b(k,125) = b(k,125) - lu(k,717) * b(k,122) + b(k,127) = b(k,127) - lu(k,718) * b(k,122) + b(k,128) = b(k,128) - lu(k,719) * b(k,122) + b(k,129) = b(k,129) - lu(k,720) * b(k,122) + b(k,131) = b(k,131) - lu(k,721) * b(k,122) + b(k,132) = b(k,132) - lu(k,722) * b(k,122) + b(k,133) = b(k,133) - lu(k,723) * b(k,122) + b(k,134) = b(k,134) - lu(k,724) * b(k,122) + b(k,137) = b(k,137) - lu(k,725) * b(k,122) + b(k,138) = b(k,138) - lu(k,726) * b(k,122) + b(k,139) = b(k,139) - lu(k,727) * b(k,122) + b(k,140) = b(k,140) - lu(k,728) * b(k,122) + b(k,141) = b(k,141) - lu(k,729) * b(k,122) + b(k,124) = b(k,124) - lu(k,739) * b(k,123) + b(k,125) = b(k,125) - lu(k,740) * b(k,123) + b(k,126) = b(k,126) - lu(k,741) * b(k,123) + b(k,127) = b(k,127) - lu(k,742) * b(k,123) + b(k,129) = b(k,129) - lu(k,743) * b(k,123) + b(k,130) = b(k,130) - lu(k,744) * b(k,123) + b(k,131) = b(k,131) - lu(k,745) * b(k,123) + b(k,132) = b(k,132) - lu(k,746) * b(k,123) + b(k,133) = b(k,133) - lu(k,747) * b(k,123) + b(k,135) = b(k,135) - lu(k,748) * b(k,123) + b(k,136) = b(k,136) - lu(k,749) * b(k,123) + b(k,137) = b(k,137) - lu(k,750) * b(k,123) + b(k,138) = b(k,138) - lu(k,751) * b(k,123) + b(k,140) = b(k,140) - lu(k,752) * b(k,123) + b(k,141) = b(k,141) - lu(k,753) * b(k,123) + b(k,125) = b(k,125) - lu(k,778) * b(k,124) + b(k,126) = b(k,126) - lu(k,779) * b(k,124) + b(k,127) = b(k,127) - lu(k,780) * b(k,124) + b(k,128) = b(k,128) - lu(k,781) * b(k,124) + b(k,129) = b(k,129) - lu(k,782) * b(k,124) + b(k,130) = b(k,130) - lu(k,783) * b(k,124) + b(k,131) = b(k,131) - lu(k,784) * b(k,124) + b(k,132) = b(k,132) - lu(k,785) * b(k,124) + b(k,133) = b(k,133) - lu(k,786) * b(k,124) + b(k,135) = b(k,135) - lu(k,787) * b(k,124) + b(k,136) = b(k,136) - lu(k,788) * b(k,124) + b(k,137) = b(k,137) - lu(k,789) * b(k,124) + b(k,138) = b(k,138) - lu(k,790) * b(k,124) + b(k,140) = b(k,140) - lu(k,791) * b(k,124) + b(k,141) = b(k,141) - lu(k,792) * b(k,124) + b(k,130) = b(k,130) - lu(k,795) * b(k,125) + b(k,131) = b(k,131) - lu(k,796) * b(k,125) + b(k,132) = b(k,132) - lu(k,797) * b(k,125) + b(k,133) = b(k,133) - lu(k,798) * b(k,125) + b(k,136) = b(k,136) - lu(k,799) * b(k,125) + b(k,137) = b(k,137) - lu(k,800) * b(k,125) + b(k,138) = b(k,138) - lu(k,801) * b(k,125) + b(k,140) = b(k,140) - lu(k,802) * b(k,125) + b(k,141) = b(k,141) - lu(k,803) * b(k,125) + b(k,129) = b(k,129) - lu(k,810) * b(k,126) + b(k,130) = b(k,130) - lu(k,811) * b(k,126) + b(k,131) = b(k,131) - lu(k,812) * b(k,126) + b(k,132) = b(k,132) - lu(k,813) * b(k,126) + b(k,133) = b(k,133) - lu(k,814) * b(k,126) + b(k,134) = b(k,134) - lu(k,815) * b(k,126) + b(k,135) = b(k,135) - lu(k,816) * b(k,126) + b(k,136) = b(k,136) - lu(k,817) * b(k,126) + b(k,137) = b(k,137) - lu(k,818) * b(k,126) + b(k,138) = b(k,138) - lu(k,819) * b(k,126) + b(k,139) = b(k,139) - lu(k,820) * b(k,126) + b(k,140) = b(k,140) - lu(k,821) * b(k,126) + b(k,141) = b(k,141) - lu(k,822) * b(k,126) + b(k,128) = b(k,128) - lu(k,852) * b(k,127) + b(k,129) = b(k,129) - lu(k,853) * b(k,127) + b(k,130) = b(k,130) - lu(k,854) * b(k,127) + b(k,131) = b(k,131) - lu(k,855) * b(k,127) + b(k,132) = b(k,132) - lu(k,856) * b(k,127) + b(k,133) = b(k,133) - lu(k,857) * b(k,127) + b(k,134) = b(k,134) - lu(k,858) * b(k,127) + b(k,135) = b(k,135) - lu(k,859) * b(k,127) + b(k,136) = b(k,136) - lu(k,860) * b(k,127) + b(k,137) = b(k,137) - lu(k,861) * b(k,127) + b(k,138) = b(k,138) - lu(k,862) * b(k,127) + b(k,139) = b(k,139) - lu(k,863) * b(k,127) + b(k,140) = b(k,140) - lu(k,864) * b(k,127) + b(k,141) = b(k,141) - lu(k,865) * b(k,127) + b(k,129) = b(k,129) - lu(k,879) * b(k,128) + b(k,130) = b(k,130) - lu(k,880) * b(k,128) + b(k,131) = b(k,131) - lu(k,881) * b(k,128) + b(k,132) = b(k,132) - lu(k,882) * b(k,128) + b(k,133) = b(k,133) - lu(k,883) * b(k,128) + b(k,134) = b(k,134) - lu(k,884) * b(k,128) + b(k,135) = b(k,135) - lu(k,885) * b(k,128) + b(k,136) = b(k,136) - lu(k,886) * b(k,128) + b(k,137) = b(k,137) - lu(k,887) * b(k,128) + b(k,138) = b(k,138) - lu(k,888) * b(k,128) + b(k,139) = b(k,139) - lu(k,889) * b(k,128) + b(k,140) = b(k,140) - lu(k,890) * b(k,128) + b(k,141) = b(k,141) - lu(k,891) * b(k,128) + b(k,130) = b(k,130) - lu(k,917) * b(k,129) + b(k,131) = b(k,131) - lu(k,918) * b(k,129) + b(k,132) = b(k,132) - lu(k,919) * b(k,129) + b(k,133) = b(k,133) - lu(k,920) * b(k,129) + b(k,134) = b(k,134) - lu(k,921) * b(k,129) + b(k,135) = b(k,135) - lu(k,922) * b(k,129) + b(k,136) = b(k,136) - lu(k,923) * b(k,129) + b(k,137) = b(k,137) - lu(k,924) * b(k,129) + b(k,138) = b(k,138) - lu(k,925) * b(k,129) + b(k,139) = b(k,139) - lu(k,926) * b(k,129) + b(k,140) = b(k,140) - lu(k,927) * b(k,129) + b(k,141) = b(k,141) - lu(k,928) * b(k,129) + b(k,131) = b(k,131) - lu(k,939) * b(k,130) + b(k,132) = b(k,132) - lu(k,940) * b(k,130) + b(k,133) = b(k,133) - lu(k,941) * b(k,130) + b(k,134) = b(k,134) - lu(k,942) * b(k,130) + b(k,135) = b(k,135) - lu(k,943) * b(k,130) + b(k,136) = b(k,136) - lu(k,944) * b(k,130) + b(k,137) = b(k,137) - lu(k,945) * b(k,130) + b(k,138) = b(k,138) - lu(k,946) * b(k,130) + b(k,139) = b(k,139) - lu(k,947) * b(k,130) + b(k,140) = b(k,140) - lu(k,948) * b(k,130) + b(k,141) = b(k,141) - lu(k,949) * b(k,130) + end do + end subroutine lu_slv03 + subroutine lu_slv04( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,132) = b(k,132) - lu(k,977) * b(k,131) + b(k,133) = b(k,133) - lu(k,978) * b(k,131) + b(k,134) = b(k,134) - lu(k,979) * b(k,131) + b(k,135) = b(k,135) - lu(k,980) * b(k,131) + b(k,136) = b(k,136) - lu(k,981) * b(k,131) + b(k,137) = b(k,137) - lu(k,982) * b(k,131) + b(k,138) = b(k,138) - lu(k,983) * b(k,131) + b(k,139) = b(k,139) - lu(k,984) * b(k,131) + b(k,140) = b(k,140) - lu(k,985) * b(k,131) + b(k,141) = b(k,141) - lu(k,986) * b(k,131) + b(k,133) = b(k,133) - lu(k,1035) * b(k,132) + b(k,134) = b(k,134) - lu(k,1036) * b(k,132) + b(k,135) = b(k,135) - lu(k,1037) * b(k,132) + b(k,136) = b(k,136) - lu(k,1038) * b(k,132) + b(k,137) = b(k,137) - lu(k,1039) * b(k,132) + b(k,138) = b(k,138) - lu(k,1040) * b(k,132) + b(k,139) = b(k,139) - lu(k,1041) * b(k,132) + b(k,140) = b(k,140) - lu(k,1042) * b(k,132) + b(k,141) = b(k,141) - lu(k,1043) * b(k,132) + b(k,134) = b(k,134) - lu(k,1082) * b(k,133) + b(k,135) = b(k,135) - lu(k,1083) * b(k,133) + b(k,136) = b(k,136) - lu(k,1084) * b(k,133) + b(k,137) = b(k,137) - lu(k,1085) * b(k,133) + b(k,138) = b(k,138) - lu(k,1086) * b(k,133) + b(k,139) = b(k,139) - lu(k,1087) * b(k,133) + b(k,140) = b(k,140) - lu(k,1088) * b(k,133) + b(k,141) = b(k,141) - lu(k,1089) * b(k,133) + b(k,135) = b(k,135) - lu(k,1100) * b(k,134) + b(k,136) = b(k,136) - lu(k,1101) * b(k,134) + b(k,137) = b(k,137) - lu(k,1102) * b(k,134) + b(k,138) = b(k,138) - lu(k,1103) * b(k,134) + b(k,139) = b(k,139) - lu(k,1104) * b(k,134) + b(k,140) = b(k,140) - lu(k,1105) * b(k,134) + b(k,141) = b(k,141) - lu(k,1106) * b(k,134) + b(k,136) = b(k,136) - lu(k,1147) * b(k,135) + b(k,137) = b(k,137) - lu(k,1148) * b(k,135) + b(k,138) = b(k,138) - lu(k,1149) * b(k,135) + b(k,139) = b(k,139) - lu(k,1150) * b(k,135) + b(k,140) = b(k,140) - lu(k,1151) * b(k,135) + b(k,141) = b(k,141) - lu(k,1152) * b(k,135) + b(k,137) = b(k,137) - lu(k,1187) * b(k,136) + b(k,138) = b(k,138) - lu(k,1188) * b(k,136) + b(k,139) = b(k,139) - lu(k,1189) * b(k,136) + b(k,140) = b(k,140) - lu(k,1190) * b(k,136) + b(k,141) = b(k,141) - lu(k,1191) * b(k,136) + b(k,138) = b(k,138) - lu(k,1274) * b(k,137) + b(k,139) = b(k,139) - lu(k,1275) * b(k,137) + b(k,140) = b(k,140) - lu(k,1276) * b(k,137) + b(k,141) = b(k,141) - lu(k,1277) * b(k,137) + b(k,139) = b(k,139) - lu(k,1307) * b(k,138) + b(k,140) = b(k,140) - lu(k,1308) * b(k,138) + b(k,141) = b(k,141) - lu(k,1309) * b(k,138) + b(k,140) = b(k,140) - lu(k,1331) * b(k,139) + b(k,141) = b(k,141) - lu(k,1332) * b(k,139) + b(k,141) = b(k,141) - lu(k,1358) * b(k,140) + end do + end subroutine lu_slv04 + subroutine lu_slv05( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len +!----------------------------------------------------------------------- +! ... Solve U * x = y +!----------------------------------------------------------------------- + b(k,141) = b(k,141) * lu(k,1379) + b(k,140) = b(k,140) - lu(k,1378) * b(k,141) + b(k,139) = b(k,139) - lu(k,1377) * b(k,141) + b(k,138) = b(k,138) - lu(k,1376) * b(k,141) + b(k,137) = b(k,137) - lu(k,1375) * b(k,141) + b(k,136) = b(k,136) - lu(k,1374) * b(k,141) + b(k,135) = b(k,135) - lu(k,1373) * b(k,141) + b(k,134) = b(k,134) - lu(k,1372) * b(k,141) + b(k,133) = b(k,133) - lu(k,1371) * b(k,141) + b(k,132) = b(k,132) - lu(k,1370) * b(k,141) + b(k,131) = b(k,131) - lu(k,1369) * b(k,141) + b(k,130) = b(k,130) - lu(k,1368) * b(k,141) + b(k,129) = b(k,129) - lu(k,1367) * b(k,141) + b(k,128) = b(k,128) - lu(k,1366) * b(k,141) + b(k,127) = b(k,127) - lu(k,1365) * b(k,141) + b(k,125) = b(k,125) - lu(k,1364) * b(k,141) + b(k,122) = b(k,122) - lu(k,1363) * b(k,141) + b(k,108) = b(k,108) - lu(k,1362) * b(k,141) + b(k,105) = b(k,105) - lu(k,1361) * b(k,141) + b(k,59) = b(k,59) - lu(k,1360) * b(k,141) + b(k,48) = b(k,48) - lu(k,1359) * b(k,141) + b(k,140) = b(k,140) * lu(k,1357) + b(k,139) = b(k,139) - lu(k,1356) * b(k,140) + b(k,138) = b(k,138) - lu(k,1355) * b(k,140) + b(k,137) = b(k,137) - lu(k,1354) * b(k,140) + b(k,136) = b(k,136) - lu(k,1353) * b(k,140) + b(k,135) = b(k,135) - lu(k,1352) * b(k,140) + b(k,134) = b(k,134) - lu(k,1351) * b(k,140) + b(k,133) = b(k,133) - lu(k,1350) * b(k,140) + b(k,132) = b(k,132) - lu(k,1349) * b(k,140) + b(k,131) = b(k,131) - lu(k,1348) * b(k,140) + b(k,130) = b(k,130) - lu(k,1347) * b(k,140) + b(k,129) = b(k,129) - lu(k,1346) * b(k,140) + b(k,128) = b(k,128) - lu(k,1345) * b(k,140) + b(k,127) = b(k,127) - lu(k,1344) * b(k,140) + b(k,126) = b(k,126) - lu(k,1343) * b(k,140) + b(k,125) = b(k,125) - lu(k,1342) * b(k,140) + b(k,122) = b(k,122) - lu(k,1341) * b(k,140) + b(k,115) = b(k,115) - lu(k,1340) * b(k,140) + b(k,113) = b(k,113) - lu(k,1339) * b(k,140) + b(k,105) = b(k,105) - lu(k,1338) * b(k,140) + b(k,90) = b(k,90) - lu(k,1337) * b(k,140) + b(k,88) = b(k,88) - lu(k,1336) * b(k,140) + b(k,74) = b(k,74) - lu(k,1335) * b(k,140) + b(k,51) = b(k,51) - lu(k,1334) * b(k,140) + b(k,50) = b(k,50) - lu(k,1333) * b(k,140) + b(k,139) = b(k,139) * lu(k,1330) + b(k,138) = b(k,138) - lu(k,1329) * b(k,139) + b(k,137) = b(k,137) - lu(k,1328) * b(k,139) + b(k,136) = b(k,136) - lu(k,1327) * b(k,139) + b(k,135) = b(k,135) - lu(k,1326) * b(k,139) + b(k,134) = b(k,134) - lu(k,1325) * b(k,139) + b(k,133) = b(k,133) - lu(k,1324) * b(k,139) + b(k,132) = b(k,132) - lu(k,1323) * b(k,139) + b(k,131) = b(k,131) - lu(k,1322) * b(k,139) + b(k,130) = b(k,130) - lu(k,1321) * b(k,139) + b(k,129) = b(k,129) - lu(k,1320) * b(k,139) + b(k,128) = b(k,128) - lu(k,1319) * b(k,139) + b(k,127) = b(k,127) - lu(k,1318) * b(k,139) + b(k,125) = b(k,125) - lu(k,1317) * b(k,139) + b(k,122) = b(k,122) - lu(k,1316) * b(k,139) + b(k,105) = b(k,105) - lu(k,1315) * b(k,139) + b(k,100) = b(k,100) - lu(k,1314) * b(k,139) + b(k,92) = b(k,92) - lu(k,1313) * b(k,139) + b(k,78) = b(k,78) - lu(k,1312) * b(k,139) + b(k,65) = b(k,65) - lu(k,1311) * b(k,139) + b(k,56) = b(k,56) - lu(k,1310) * b(k,139) + b(k,138) = b(k,138) * lu(k,1306) + b(k,137) = b(k,137) - lu(k,1305) * b(k,138) + b(k,136) = b(k,136) - lu(k,1304) * b(k,138) + b(k,135) = b(k,135) - lu(k,1303) * b(k,138) + b(k,134) = b(k,134) - lu(k,1302) * b(k,138) + b(k,133) = b(k,133) - lu(k,1301) * b(k,138) + b(k,132) = b(k,132) - lu(k,1300) * b(k,138) + b(k,131) = b(k,131) - lu(k,1299) * b(k,138) + b(k,130) = b(k,130) - lu(k,1298) * b(k,138) + b(k,129) = b(k,129) - lu(k,1297) * b(k,138) + b(k,128) = b(k,128) - lu(k,1296) * b(k,138) + b(k,127) = b(k,127) - lu(k,1295) * b(k,138) + b(k,126) = b(k,126) - lu(k,1294) * b(k,138) + b(k,125) = b(k,125) - lu(k,1293) * b(k,138) + b(k,122) = b(k,122) - lu(k,1292) * b(k,138) + b(k,115) = b(k,115) - lu(k,1291) * b(k,138) + b(k,108) = b(k,108) - lu(k,1290) * b(k,138) + b(k,105) = b(k,105) - lu(k,1289) * b(k,138) + b(k,103) = b(k,103) - lu(k,1288) * b(k,138) + b(k,100) = b(k,100) - lu(k,1287) * b(k,138) + b(k,99) = b(k,99) - lu(k,1286) * b(k,138) + b(k,98) = b(k,98) - lu(k,1285) * b(k,138) + b(k,92) = b(k,92) - lu(k,1284) * b(k,138) + b(k,90) = b(k,90) - lu(k,1283) * b(k,138) + b(k,83) = b(k,83) - lu(k,1282) * b(k,138) + b(k,78) = b(k,78) - lu(k,1281) * b(k,138) + b(k,67) = b(k,67) - lu(k,1280) * b(k,138) + b(k,51) = b(k,51) - lu(k,1279) * b(k,138) + b(k,50) = b(k,50) - lu(k,1278) * b(k,138) + b(k,137) = b(k,137) * lu(k,1273) + b(k,136) = b(k,136) - lu(k,1272) * b(k,137) + b(k,135) = b(k,135) - lu(k,1271) * b(k,137) + b(k,134) = b(k,134) - lu(k,1270) * b(k,137) + b(k,133) = b(k,133) - lu(k,1269) * b(k,137) + b(k,132) = b(k,132) - lu(k,1268) * b(k,137) + b(k,131) = b(k,131) - lu(k,1267) * b(k,137) + b(k,130) = b(k,130) - lu(k,1266) * b(k,137) + b(k,129) = b(k,129) - lu(k,1265) * b(k,137) + b(k,128) = b(k,128) - lu(k,1264) * b(k,137) + b(k,127) = b(k,127) - lu(k,1263) * b(k,137) + b(k,126) = b(k,126) - lu(k,1262) * b(k,137) + b(k,125) = b(k,125) - lu(k,1261) * b(k,137) + b(k,124) = b(k,124) - lu(k,1260) * b(k,137) + b(k,123) = b(k,123) - lu(k,1259) * b(k,137) + b(k,122) = b(k,122) - lu(k,1258) * b(k,137) + b(k,121) = b(k,121) - lu(k,1257) * b(k,137) + b(k,120) = b(k,120) - lu(k,1256) * b(k,137) + b(k,119) = b(k,119) - lu(k,1255) * b(k,137) + b(k,118) = b(k,118) - lu(k,1254) * b(k,137) + b(k,117) = b(k,117) - lu(k,1253) * b(k,137) + b(k,116) = b(k,116) - lu(k,1252) * b(k,137) + b(k,115) = b(k,115) - lu(k,1251) * b(k,137) + b(k,114) = b(k,114) - lu(k,1250) * b(k,137) + b(k,113) = b(k,113) - lu(k,1249) * b(k,137) + b(k,112) = b(k,112) - lu(k,1248) * b(k,137) + b(k,111) = b(k,111) - lu(k,1247) * b(k,137) + b(k,110) = b(k,110) - lu(k,1246) * b(k,137) + b(k,109) = b(k,109) - lu(k,1245) * b(k,137) + b(k,108) = b(k,108) - lu(k,1244) * b(k,137) + b(k,107) = b(k,107) - lu(k,1243) * b(k,137) + b(k,106) = b(k,106) - lu(k,1242) * b(k,137) + b(k,105) = b(k,105) - lu(k,1241) * b(k,137) + b(k,104) = b(k,104) - lu(k,1240) * b(k,137) + b(k,103) = b(k,103) - lu(k,1239) * b(k,137) + b(k,102) = b(k,102) - lu(k,1238) * b(k,137) + b(k,101) = b(k,101) - lu(k,1237) * b(k,137) + b(k,100) = b(k,100) - lu(k,1236) * b(k,137) + b(k,99) = b(k,99) - lu(k,1235) * b(k,137) + b(k,98) = b(k,98) - lu(k,1234) * b(k,137) + b(k,97) = b(k,97) - lu(k,1233) * b(k,137) + b(k,96) = b(k,96) - lu(k,1232) * b(k,137) + b(k,94) = b(k,94) - lu(k,1231) * b(k,137) + b(k,93) = b(k,93) - lu(k,1230) * b(k,137) + b(k,91) = b(k,91) - lu(k,1229) * b(k,137) + b(k,90) = b(k,90) - lu(k,1228) * b(k,137) + b(k,89) = b(k,89) - lu(k,1227) * b(k,137) + b(k,88) = b(k,88) - lu(k,1226) * b(k,137) + b(k,87) = b(k,87) - lu(k,1225) * b(k,137) + b(k,86) = b(k,86) - lu(k,1224) * b(k,137) + b(k,85) = b(k,85) - lu(k,1223) * b(k,137) + b(k,84) = b(k,84) - lu(k,1222) * b(k,137) + b(k,83) = b(k,83) - lu(k,1221) * b(k,137) + b(k,82) = b(k,82) - lu(k,1220) * b(k,137) + b(k,81) = b(k,81) - lu(k,1219) * b(k,137) + b(k,80) = b(k,80) - lu(k,1218) * b(k,137) + b(k,79) = b(k,79) - lu(k,1217) * b(k,137) + b(k,77) = b(k,77) - lu(k,1216) * b(k,137) + b(k,76) = b(k,76) - lu(k,1215) * b(k,137) + b(k,75) = b(k,75) - lu(k,1214) * b(k,137) + b(k,73) = b(k,73) - lu(k,1213) * b(k,137) + b(k,72) = b(k,72) - lu(k,1212) * b(k,137) + b(k,71) = b(k,71) - lu(k,1211) * b(k,137) + b(k,70) = b(k,70) - lu(k,1210) * b(k,137) + b(k,69) = b(k,69) - lu(k,1209) * b(k,137) + b(k,68) = b(k,68) - lu(k,1208) * b(k,137) + b(k,67) = b(k,67) - lu(k,1207) * b(k,137) + b(k,66) = b(k,66) - lu(k,1206) * b(k,137) + b(k,64) = b(k,64) - lu(k,1205) * b(k,137) + b(k,63) = b(k,63) - lu(k,1204) * b(k,137) + b(k,62) = b(k,62) - lu(k,1203) * b(k,137) + b(k,61) = b(k,61) - lu(k,1202) * b(k,137) + b(k,59) = b(k,59) - lu(k,1201) * b(k,137) + b(k,58) = b(k,58) - lu(k,1200) * b(k,137) + b(k,55) = b(k,55) - lu(k,1199) * b(k,137) + b(k,54) = b(k,54) - lu(k,1198) * b(k,137) + b(k,53) = b(k,53) - lu(k,1197) * b(k,137) + b(k,52) = b(k,52) - lu(k,1196) * b(k,137) + b(k,46) = b(k,46) - lu(k,1195) * b(k,137) + b(k,44) = b(k,44) - lu(k,1194) * b(k,137) + b(k,36) = b(k,36) - lu(k,1193) * b(k,137) + b(k,34) = b(k,34) - lu(k,1192) * b(k,137) + b(k,136) = b(k,136) * lu(k,1186) + b(k,135) = b(k,135) - lu(k,1185) * b(k,136) + b(k,134) = b(k,134) - lu(k,1184) * b(k,136) + b(k,133) = b(k,133) - lu(k,1183) * b(k,136) + b(k,132) = b(k,132) - lu(k,1182) * b(k,136) + b(k,131) = b(k,131) - lu(k,1181) * b(k,136) + b(k,130) = b(k,130) - lu(k,1180) * b(k,136) + b(k,129) = b(k,129) - lu(k,1179) * b(k,136) + b(k,128) = b(k,128) - lu(k,1178) * b(k,136) + b(k,127) = b(k,127) - lu(k,1177) * b(k,136) + b(k,126) = b(k,126) - lu(k,1176) * b(k,136) + b(k,125) = b(k,125) - lu(k,1175) * b(k,136) + b(k,124) = b(k,124) - lu(k,1174) * b(k,136) + b(k,115) = b(k,115) - lu(k,1173) * b(k,136) + b(k,109) = b(k,109) - lu(k,1172) * b(k,136) + b(k,108) = b(k,108) - lu(k,1171) * b(k,136) + b(k,99) = b(k,99) - lu(k,1170) * b(k,136) + b(k,86) = b(k,86) - lu(k,1169) * b(k,136) + b(k,77) = b(k,77) - lu(k,1168) * b(k,136) + b(k,71) = b(k,71) - lu(k,1167) * b(k,136) + b(k,57) = b(k,57) - lu(k,1166) * b(k,136) + b(k,55) = b(k,55) - lu(k,1165) * b(k,136) + b(k,53) = b(k,53) - lu(k,1164) * b(k,136) + b(k,52) = b(k,52) - lu(k,1163) * b(k,136) + b(k,51) = b(k,51) - lu(k,1162) * b(k,136) + b(k,45) = b(k,45) - lu(k,1161) * b(k,136) + b(k,43) = b(k,43) - lu(k,1160) * b(k,136) + b(k,42) = b(k,42) - lu(k,1159) * b(k,136) + b(k,41) = b(k,41) - lu(k,1158) * b(k,136) + b(k,40) = b(k,40) - lu(k,1157) * b(k,136) + b(k,39) = b(k,39) - lu(k,1156) * b(k,136) + b(k,38) = b(k,38) - lu(k,1155) * b(k,136) + b(k,37) = b(k,37) - lu(k,1154) * b(k,136) + b(k,35) = b(k,35) - lu(k,1153) * b(k,136) + end do + end subroutine lu_slv05 + subroutine lu_slv06( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,135) = b(k,135) * lu(k,1146) + b(k,134) = b(k,134) - lu(k,1145) * b(k,135) + b(k,133) = b(k,133) - lu(k,1144) * b(k,135) + b(k,132) = b(k,132) - lu(k,1143) * b(k,135) + b(k,131) = b(k,131) - lu(k,1142) * b(k,135) + b(k,130) = b(k,130) - lu(k,1141) * b(k,135) + b(k,129) = b(k,129) - lu(k,1140) * b(k,135) + b(k,128) = b(k,128) - lu(k,1139) * b(k,135) + b(k,127) = b(k,127) - lu(k,1138) * b(k,135) + b(k,126) = b(k,126) - lu(k,1137) * b(k,135) + b(k,125) = b(k,125) - lu(k,1136) * b(k,135) + b(k,124) = b(k,124) - lu(k,1135) * b(k,135) + b(k,123) = b(k,123) - lu(k,1134) * b(k,135) + b(k,122) = b(k,122) - lu(k,1133) * b(k,135) + b(k,121) = b(k,121) - lu(k,1132) * b(k,135) + b(k,120) = b(k,120) - lu(k,1131) * b(k,135) + b(k,119) = b(k,119) - lu(k,1130) * b(k,135) + b(k,118) = b(k,118) - lu(k,1129) * b(k,135) + b(k,117) = b(k,117) - lu(k,1128) * b(k,135) + b(k,116) = b(k,116) - lu(k,1127) * b(k,135) + b(k,115) = b(k,115) - lu(k,1126) * b(k,135) + b(k,114) = b(k,114) - lu(k,1125) * b(k,135) + b(k,113) = b(k,113) - lu(k,1124) * b(k,135) + b(k,112) = b(k,112) - lu(k,1123) * b(k,135) + b(k,111) = b(k,111) - lu(k,1122) * b(k,135) + b(k,110) = b(k,110) - lu(k,1121) * b(k,135) + b(k,107) = b(k,107) - lu(k,1120) * b(k,135) + b(k,106) = b(k,106) - lu(k,1119) * b(k,135) + b(k,105) = b(k,105) - lu(k,1118) * b(k,135) + b(k,104) = b(k,104) - lu(k,1117) * b(k,135) + b(k,102) = b(k,102) - lu(k,1116) * b(k,135) + b(k,100) = b(k,100) - lu(k,1115) * b(k,135) + b(k,95) = b(k,95) - lu(k,1114) * b(k,135) + b(k,93) = b(k,93) - lu(k,1113) * b(k,135) + b(k,91) = b(k,91) - lu(k,1112) * b(k,135) + b(k,87) = b(k,87) - lu(k,1111) * b(k,135) + b(k,70) = b(k,70) - lu(k,1110) * b(k,135) + b(k,66) = b(k,66) - lu(k,1109) * b(k,135) + b(k,62) = b(k,62) - lu(k,1108) * b(k,135) + b(k,60) = b(k,60) - lu(k,1107) * b(k,135) + b(k,134) = b(k,134) * lu(k,1099) + b(k,133) = b(k,133) - lu(k,1098) * b(k,134) + b(k,132) = b(k,132) - lu(k,1097) * b(k,134) + b(k,131) = b(k,131) - lu(k,1096) * b(k,134) + b(k,130) = b(k,130) - lu(k,1095) * b(k,134) + b(k,129) = b(k,129) - lu(k,1094) * b(k,134) + b(k,126) = b(k,126) - lu(k,1093) * b(k,134) + b(k,125) = b(k,125) - lu(k,1092) * b(k,134) + b(k,115) = b(k,115) - lu(k,1091) * b(k,134) + b(k,99) = b(k,99) - lu(k,1090) * b(k,134) + b(k,133) = b(k,133) * lu(k,1081) + b(k,132) = b(k,132) - lu(k,1080) * b(k,133) + b(k,131) = b(k,131) - lu(k,1079) * b(k,133) + b(k,130) = b(k,130) - lu(k,1078) * b(k,133) + b(k,129) = b(k,129) - lu(k,1077) * b(k,133) + b(k,128) = b(k,128) - lu(k,1076) * b(k,133) + b(k,127) = b(k,127) - lu(k,1075) * b(k,133) + b(k,126) = b(k,126) - lu(k,1074) * b(k,133) + b(k,125) = b(k,125) - lu(k,1073) * b(k,133) + b(k,124) = b(k,124) - lu(k,1072) * b(k,133) + b(k,123) = b(k,123) - lu(k,1071) * b(k,133) + b(k,122) = b(k,122) - lu(k,1070) * b(k,133) + b(k,121) = b(k,121) - lu(k,1069) * b(k,133) + b(k,120) = b(k,120) - lu(k,1068) * b(k,133) + b(k,119) = b(k,119) - lu(k,1067) * b(k,133) + b(k,118) = b(k,118) - lu(k,1066) * b(k,133) + b(k,117) = b(k,117) - lu(k,1065) * b(k,133) + b(k,116) = b(k,116) - lu(k,1064) * b(k,133) + b(k,115) = b(k,115) - lu(k,1063) * b(k,133) + b(k,114) = b(k,114) - lu(k,1062) * b(k,133) + b(k,113) = b(k,113) - lu(k,1061) * b(k,133) + b(k,112) = b(k,112) - lu(k,1060) * b(k,133) + b(k,111) = b(k,111) - lu(k,1059) * b(k,133) + b(k,110) = b(k,110) - lu(k,1058) * b(k,133) + b(k,109) = b(k,109) - lu(k,1057) * b(k,133) + b(k,107) = b(k,107) - lu(k,1056) * b(k,133) + b(k,106) = b(k,106) - lu(k,1055) * b(k,133) + b(k,105) = b(k,105) - lu(k,1054) * b(k,133) + b(k,104) = b(k,104) - lu(k,1053) * b(k,133) + b(k,102) = b(k,102) - lu(k,1052) * b(k,133) + b(k,94) = b(k,94) - lu(k,1051) * b(k,133) + b(k,93) = b(k,93) - lu(k,1050) * b(k,133) + b(k,90) = b(k,90) - lu(k,1049) * b(k,133) + b(k,89) = b(k,89) - lu(k,1048) * b(k,133) + b(k,87) = b(k,87) - lu(k,1047) * b(k,133) + b(k,75) = b(k,75) - lu(k,1046) * b(k,133) + b(k,51) = b(k,51) - lu(k,1045) * b(k,133) + b(k,50) = b(k,50) - lu(k,1044) * b(k,133) + b(k,132) = b(k,132) * lu(k,1034) + b(k,131) = b(k,131) - lu(k,1033) * b(k,132) + b(k,130) = b(k,130) - lu(k,1032) * b(k,132) + b(k,129) = b(k,129) - lu(k,1031) * b(k,132) + b(k,128) = b(k,128) - lu(k,1030) * b(k,132) + b(k,127) = b(k,127) - lu(k,1029) * b(k,132) + b(k,126) = b(k,126) - lu(k,1028) * b(k,132) + b(k,125) = b(k,125) - lu(k,1027) * b(k,132) + b(k,124) = b(k,124) - lu(k,1026) * b(k,132) + b(k,123) = b(k,123) - lu(k,1025) * b(k,132) + b(k,121) = b(k,121) - lu(k,1024) * b(k,132) + b(k,120) = b(k,120) - lu(k,1023) * b(k,132) + b(k,119) = b(k,119) - lu(k,1022) * b(k,132) + b(k,118) = b(k,118) - lu(k,1021) * b(k,132) + b(k,117) = b(k,117) - lu(k,1020) * b(k,132) + b(k,116) = b(k,116) - lu(k,1019) * b(k,132) + b(k,115) = b(k,115) - lu(k,1018) * b(k,132) + b(k,114) = b(k,114) - lu(k,1017) * b(k,132) + b(k,113) = b(k,113) - lu(k,1016) * b(k,132) + b(k,111) = b(k,111) - lu(k,1015) * b(k,132) + b(k,110) = b(k,110) - lu(k,1014) * b(k,132) + b(k,108) = b(k,108) - lu(k,1013) * b(k,132) + b(k,107) = b(k,107) - lu(k,1012) * b(k,132) + b(k,106) = b(k,106) - lu(k,1011) * b(k,132) + b(k,104) = b(k,104) - lu(k,1010) * b(k,132) + b(k,101) = b(k,101) - lu(k,1009) * b(k,132) + b(k,99) = b(k,99) - lu(k,1008) * b(k,132) + b(k,98) = b(k,98) - lu(k,1007) * b(k,132) + b(k,97) = b(k,97) - lu(k,1006) * b(k,132) + b(k,96) = b(k,96) - lu(k,1005) * b(k,132) + b(k,95) = b(k,95) - lu(k,1004) * b(k,132) + b(k,94) = b(k,94) - lu(k,1003) * b(k,132) + b(k,93) = b(k,93) - lu(k,1002) * b(k,132) + b(k,92) = b(k,92) - lu(k,1001) * b(k,132) + b(k,89) = b(k,89) - lu(k,1000) * b(k,132) + b(k,85) = b(k,85) - lu(k,999) * b(k,132) + b(k,83) = b(k,83) - lu(k,998) * b(k,132) + b(k,82) = b(k,82) - lu(k,997) * b(k,132) + b(k,80) = b(k,80) - lu(k,996) * b(k,132) + b(k,76) = b(k,76) - lu(k,995) * b(k,132) + b(k,74) = b(k,74) - lu(k,994) * b(k,132) + b(k,73) = b(k,73) - lu(k,993) * b(k,132) + b(k,72) = b(k,72) - lu(k,992) * b(k,132) + b(k,69) = b(k,69) - lu(k,991) * b(k,132) + b(k,64) = b(k,64) - lu(k,990) * b(k,132) + b(k,63) = b(k,63) - lu(k,989) * b(k,132) + b(k,54) = b(k,54) - lu(k,988) * b(k,132) + b(k,47) = b(k,47) - lu(k,987) * b(k,132) + b(k,131) = b(k,131) * lu(k,976) + b(k,130) = b(k,130) - lu(k,975) * b(k,131) + b(k,129) = b(k,129) - lu(k,974) * b(k,131) + b(k,128) = b(k,128) - lu(k,973) * b(k,131) + b(k,127) = b(k,127) - lu(k,972) * b(k,131) + b(k,126) = b(k,126) - lu(k,971) * b(k,131) + b(k,125) = b(k,125) - lu(k,970) * b(k,131) + b(k,124) = b(k,124) - lu(k,969) * b(k,131) + b(k,123) = b(k,123) - lu(k,968) * b(k,131) + b(k,121) = b(k,121) - lu(k,967) * b(k,131) + b(k,115) = b(k,115) - lu(k,966) * b(k,131) + b(k,113) = b(k,113) - lu(k,965) * b(k,131) + b(k,111) = b(k,111) - lu(k,964) * b(k,131) + b(k,109) = b(k,109) - lu(k,963) * b(k,131) + b(k,108) = b(k,108) - lu(k,962) * b(k,131) + b(k,103) = b(k,103) - lu(k,961) * b(k,131) + b(k,98) = b(k,98) - lu(k,960) * b(k,131) + b(k,97) = b(k,97) - lu(k,959) * b(k,131) + b(k,94) = b(k,94) - lu(k,958) * b(k,131) + b(k,86) = b(k,86) - lu(k,957) * b(k,131) + b(k,83) = b(k,83) - lu(k,956) * b(k,131) + b(k,77) = b(k,77) - lu(k,955) * b(k,131) + b(k,75) = b(k,75) - lu(k,954) * b(k,131) + b(k,71) = b(k,71) - lu(k,953) * b(k,131) + b(k,68) = b(k,68) - lu(k,952) * b(k,131) + b(k,61) = b(k,61) - lu(k,951) * b(k,131) + b(k,49) = b(k,49) - lu(k,950) * b(k,131) + b(k,130) = b(k,130) * lu(k,938) + b(k,129) = b(k,129) - lu(k,937) * b(k,130) + b(k,128) = b(k,128) - lu(k,936) * b(k,130) + b(k,125) = b(k,125) - lu(k,935) * b(k,130) + b(k,103) = b(k,103) - lu(k,934) * b(k,130) + b(k,100) = b(k,100) - lu(k,933) * b(k,130) + b(k,98) = b(k,98) - lu(k,932) * b(k,130) + b(k,92) = b(k,92) - lu(k,931) * b(k,130) + b(k,56) = b(k,56) - lu(k,930) * b(k,130) + b(k,49) = b(k,49) - lu(k,929) * b(k,130) + b(k,129) = b(k,129) * lu(k,916) + b(k,128) = b(k,128) - lu(k,915) * b(k,129) + b(k,127) = b(k,127) - lu(k,914) * b(k,129) + b(k,126) = b(k,126) - lu(k,913) * b(k,129) + b(k,125) = b(k,125) - lu(k,912) * b(k,129) + b(k,124) = b(k,124) - lu(k,911) * b(k,129) + b(k,123) = b(k,123) - lu(k,910) * b(k,129) + b(k,122) = b(k,122) - lu(k,909) * b(k,129) + b(k,121) = b(k,121) - lu(k,908) * b(k,129) + b(k,120) = b(k,120) - lu(k,907) * b(k,129) + b(k,117) = b(k,117) - lu(k,906) * b(k,129) + b(k,115) = b(k,115) - lu(k,905) * b(k,129) + b(k,110) = b(k,110) - lu(k,904) * b(k,129) + b(k,105) = b(k,105) - lu(k,903) * b(k,129) + b(k,104) = b(k,104) - lu(k,902) * b(k,129) + b(k,103) = b(k,103) - lu(k,901) * b(k,129) + b(k,100) = b(k,100) - lu(k,900) * b(k,129) + b(k,92) = b(k,92) - lu(k,899) * b(k,129) + b(k,88) = b(k,88) - lu(k,898) * b(k,129) + b(k,84) = b(k,84) - lu(k,897) * b(k,129) + b(k,81) = b(k,81) - lu(k,896) * b(k,129) + b(k,78) = b(k,78) - lu(k,895) * b(k,129) + b(k,76) = b(k,76) - lu(k,894) * b(k,129) + b(k,60) = b(k,60) - lu(k,893) * b(k,129) + b(k,57) = b(k,57) - lu(k,892) * b(k,129) + b(k,128) = b(k,128) * lu(k,878) + b(k,127) = b(k,127) - lu(k,877) * b(k,128) + b(k,126) = b(k,126) - lu(k,876) * b(k,128) + b(k,125) = b(k,125) - lu(k,875) * b(k,128) + b(k,124) = b(k,124) - lu(k,874) * b(k,128) + b(k,122) = b(k,122) - lu(k,873) * b(k,128) + b(k,105) = b(k,105) - lu(k,872) * b(k,128) + b(k,103) = b(k,103) - lu(k,871) * b(k,128) + b(k,98) = b(k,98) - lu(k,870) * b(k,128) + b(k,65) = b(k,65) - lu(k,869) * b(k,128) + b(k,56) = b(k,56) - lu(k,868) * b(k,128) + b(k,49) = b(k,49) - lu(k,867) * b(k,128) + b(k,33) = b(k,33) - lu(k,866) * b(k,128) + end do + end subroutine lu_slv06 + subroutine lu_slv07( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,127) = b(k,127) * lu(k,851) + b(k,126) = b(k,126) - lu(k,850) * b(k,127) + b(k,125) = b(k,125) - lu(k,849) * b(k,127) + b(k,124) = b(k,124) - lu(k,848) * b(k,127) + b(k,123) = b(k,123) - lu(k,847) * b(k,127) + b(k,121) = b(k,121) - lu(k,846) * b(k,127) + b(k,120) = b(k,120) - lu(k,845) * b(k,127) + b(k,119) = b(k,119) - lu(k,844) * b(k,127) + b(k,118) = b(k,118) - lu(k,843) * b(k,127) + b(k,117) = b(k,117) - lu(k,842) * b(k,127) + b(k,116) = b(k,116) - lu(k,841) * b(k,127) + b(k,115) = b(k,115) - lu(k,840) * b(k,127) + b(k,114) = b(k,114) - lu(k,839) * b(k,127) + b(k,113) = b(k,113) - lu(k,838) * b(k,127) + b(k,111) = b(k,111) - lu(k,837) * b(k,127) + b(k,110) = b(k,110) - lu(k,836) * b(k,127) + b(k,107) = b(k,107) - lu(k,835) * b(k,127) + b(k,106) = b(k,106) - lu(k,834) * b(k,127) + b(k,104) = b(k,104) - lu(k,833) * b(k,127) + b(k,101) = b(k,101) - lu(k,832) * b(k,127) + b(k,97) = b(k,97) - lu(k,831) * b(k,127) + b(k,96) = b(k,96) - lu(k,830) * b(k,127) + b(k,95) = b(k,95) - lu(k,829) * b(k,127) + b(k,94) = b(k,94) - lu(k,828) * b(k,127) + b(k,93) = b(k,93) - lu(k,827) * b(k,127) + b(k,91) = b(k,91) - lu(k,826) * b(k,127) + b(k,88) = b(k,88) - lu(k,825) * b(k,127) + b(k,74) = b(k,74) - lu(k,824) * b(k,127) + b(k,66) = b(k,66) - lu(k,823) * b(k,127) + b(k,126) = b(k,126) * lu(k,809) + b(k,125) = b(k,125) - lu(k,808) * b(k,126) + b(k,115) = b(k,115) - lu(k,807) * b(k,126) + b(k,108) = b(k,108) - lu(k,806) * b(k,126) + b(k,100) = b(k,100) - lu(k,805) * b(k,126) + b(k,99) = b(k,99) - lu(k,804) * b(k,126) + b(k,125) = b(k,125) * lu(k,794) + b(k,108) = b(k,108) - lu(k,793) * b(k,125) + b(k,124) = b(k,124) * lu(k,777) + b(k,123) = b(k,123) - lu(k,776) * b(k,124) + b(k,121) = b(k,121) - lu(k,775) * b(k,124) + b(k,120) = b(k,120) - lu(k,774) * b(k,124) + b(k,119) = b(k,119) - lu(k,773) * b(k,124) + b(k,118) = b(k,118) - lu(k,772) * b(k,124) + b(k,117) = b(k,117) - lu(k,771) * b(k,124) + b(k,116) = b(k,116) - lu(k,770) * b(k,124) + b(k,115) = b(k,115) - lu(k,769) * b(k,124) + b(k,114) = b(k,114) - lu(k,768) * b(k,124) + b(k,113) = b(k,113) - lu(k,767) * b(k,124) + b(k,111) = b(k,111) - lu(k,766) * b(k,124) + b(k,110) = b(k,110) - lu(k,765) * b(k,124) + b(k,107) = b(k,107) - lu(k,764) * b(k,124) + b(k,104) = b(k,104) - lu(k,763) * b(k,124) + b(k,101) = b(k,101) - lu(k,762) * b(k,124) + b(k,97) = b(k,97) - lu(k,761) * b(k,124) + b(k,93) = b(k,93) - lu(k,760) * b(k,124) + b(k,91) = b(k,91) - lu(k,759) * b(k,124) + b(k,89) = b(k,89) - lu(k,758) * b(k,124) + b(k,79) = b(k,79) - lu(k,757) * b(k,124) + b(k,72) = b(k,72) - lu(k,756) * b(k,124) + b(k,66) = b(k,66) - lu(k,755) * b(k,124) + b(k,58) = b(k,58) - lu(k,754) * b(k,124) + b(k,123) = b(k,123) * lu(k,738) + b(k,121) = b(k,121) - lu(k,737) * b(k,123) + b(k,120) = b(k,120) - lu(k,736) * b(k,123) + b(k,119) = b(k,119) - lu(k,735) * b(k,123) + b(k,117) = b(k,117) - lu(k,734) * b(k,123) + b(k,115) = b(k,115) - lu(k,733) * b(k,123) + b(k,112) = b(k,112) - lu(k,732) * b(k,123) + b(k,111) = b(k,111) - lu(k,731) * b(k,123) + b(k,104) = b(k,104) - lu(k,730) * b(k,123) + b(k,122) = b(k,122) * lu(k,716) + b(k,105) = b(k,105) - lu(k,715) * b(k,122) + b(k,90) = b(k,90) - lu(k,714) * b(k,122) + b(k,65) = b(k,65) - lu(k,713) * b(k,122) + b(k,121) = b(k,121) * lu(k,700) + b(k,120) = b(k,120) - lu(k,699) * b(k,121) + b(k,119) = b(k,119) - lu(k,698) * b(k,121) + b(k,118) = b(k,118) - lu(k,697) * b(k,121) + b(k,117) = b(k,117) - lu(k,696) * b(k,121) + b(k,116) = b(k,116) - lu(k,695) * b(k,121) + b(k,115) = b(k,115) - lu(k,694) * b(k,121) + b(k,114) = b(k,114) - lu(k,693) * b(k,121) + b(k,113) = b(k,113) - lu(k,692) * b(k,121) + b(k,110) = b(k,110) - lu(k,691) * b(k,121) + b(k,104) = b(k,104) - lu(k,690) * b(k,121) + b(k,91) = b(k,91) - lu(k,689) * b(k,121) + b(k,89) = b(k,89) - lu(k,688) * b(k,121) + b(k,85) = b(k,85) - lu(k,687) * b(k,121) + b(k,81) = b(k,81) - lu(k,686) * b(k,121) + b(k,66) = b(k,66) - lu(k,685) * b(k,121) + b(k,120) = b(k,120) * lu(k,672) + b(k,117) = b(k,117) - lu(k,671) * b(k,120) + b(k,115) = b(k,115) - lu(k,670) * b(k,120) + b(k,110) = b(k,110) - lu(k,669) * b(k,120) + b(k,104) = b(k,104) - lu(k,668) * b(k,120) + b(k,89) = b(k,89) - lu(k,667) * b(k,120) + b(k,85) = b(k,85) - lu(k,666) * b(k,120) + b(k,84) = b(k,84) - lu(k,665) * b(k,120) + b(k,119) = b(k,119) * lu(k,652) + b(k,117) = b(k,117) - lu(k,651) * b(k,119) + b(k,116) = b(k,116) - lu(k,650) * b(k,119) + b(k,115) = b(k,115) - lu(k,649) * b(k,119) + b(k,113) = b(k,113) - lu(k,648) * b(k,119) + b(k,110) = b(k,110) - lu(k,647) * b(k,119) + b(k,106) = b(k,106) - lu(k,646) * b(k,119) + b(k,79) = b(k,79) - lu(k,645) * b(k,119) + b(k,63) = b(k,63) - lu(k,644) * b(k,119) + b(k,118) = b(k,118) * lu(k,628) + b(k,117) = b(k,117) - lu(k,627) * b(k,118) + b(k,116) = b(k,116) - lu(k,626) * b(k,118) + b(k,115) = b(k,115) - lu(k,625) * b(k,118) + b(k,114) = b(k,114) - lu(k,624) * b(k,118) + b(k,113) = b(k,113) - lu(k,623) * b(k,118) + b(k,110) = b(k,110) - lu(k,622) * b(k,118) + b(k,106) = b(k,106) - lu(k,621) * b(k,118) + b(k,104) = b(k,104) - lu(k,620) * b(k,118) + b(k,91) = b(k,91) - lu(k,619) * b(k,118) + b(k,80) = b(k,80) - lu(k,618) * b(k,118) + b(k,79) = b(k,79) - lu(k,617) * b(k,118) + b(k,66) = b(k,66) - lu(k,616) * b(k,118) + b(k,117) = b(k,117) * lu(k,607) + b(k,115) = b(k,115) - lu(k,606) * b(k,117) + b(k,100) = b(k,100) - lu(k,605) * b(k,117) + b(k,116) = b(k,116) * lu(k,593) + b(k,115) = b(k,115) - lu(k,592) * b(k,116) + b(k,113) = b(k,113) - lu(k,591) * b(k,116) + b(k,110) = b(k,110) - lu(k,590) * b(k,116) + b(k,104) = b(k,104) - lu(k,589) * b(k,116) + b(k,91) = b(k,91) - lu(k,588) * b(k,116) + b(k,79) = b(k,79) - lu(k,587) * b(k,116) + b(k,54) = b(k,54) - lu(k,586) * b(k,116) + b(k,115) = b(k,115) * lu(k,581) + b(k,104) = b(k,104) - lu(k,580) * b(k,115) + b(k,114) = b(k,114) * lu(k,569) + b(k,113) = b(k,113) * lu(k,562) + b(k,104) = b(k,104) - lu(k,561) * b(k,113) + b(k,91) = b(k,91) - lu(k,560) * b(k,113) + b(k,112) = b(k,112) * lu(k,541) + b(k,111) = b(k,111) - lu(k,540) * b(k,112) + b(k,110) = b(k,110) - lu(k,539) * b(k,112) + b(k,109) = b(k,109) - lu(k,538) * b(k,112) + b(k,104) = b(k,104) - lu(k,537) * b(k,112) + b(k,96) = b(k,96) - lu(k,536) * b(k,112) + b(k,89) = b(k,89) - lu(k,535) * b(k,112) + b(k,70) = b(k,70) - lu(k,534) * b(k,112) + b(k,111) = b(k,111) * lu(k,525) + b(k,100) = b(k,100) - lu(k,524) * b(k,111) + b(k,110) = b(k,110) * lu(k,518) + b(k,109) = b(k,109) * lu(k,505) + b(k,108) = b(k,108) - lu(k,504) * b(k,109) + b(k,104) = b(k,104) - lu(k,503) * b(k,109) + b(k,108) = b(k,108) * lu(k,495) + b(k,107) = b(k,107) * lu(k,484) + b(k,79) = b(k,79) - lu(k,483) * b(k,107) + b(k,73) = b(k,73) - lu(k,482) * b(k,107) + b(k,106) = b(k,106) * lu(k,473) + b(k,100) = b(k,100) - lu(k,472) * b(k,106) + b(k,66) = b(k,66) - lu(k,471) * b(k,106) + b(k,105) = b(k,105) * lu(k,465) + b(k,59) = b(k,59) - lu(k,464) * b(k,105) + b(k,104) = b(k,104) * lu(k,460) + b(k,51) = b(k,51) - lu(k,459) * b(k,104) + b(k,50) = b(k,50) - lu(k,458) * b(k,104) + b(k,103) = b(k,103) * lu(k,449) + b(k,100) = b(k,100) - lu(k,448) * b(k,103) + b(k,98) = b(k,98) - lu(k,447) * b(k,103) + b(k,49) = b(k,49) - lu(k,446) * b(k,103) + b(k,102) = b(k,102) * lu(k,430) + b(k,95) = b(k,95) - lu(k,429) * b(k,102) + b(k,101) = b(k,101) * lu(k,417) + b(k,93) = b(k,93) - lu(k,416) * b(k,101) + b(k,69) = b(k,69) - lu(k,415) * b(k,101) + b(k,100) = b(k,100) * lu(k,410) + b(k,99) = b(k,99) * lu(k,402) + b(k,98) = b(k,98) * lu(k,395) + b(k,49) = b(k,49) - lu(k,394) * b(k,98) + b(k,97) = b(k,97) * lu(k,385) + b(k,79) = b(k,79) - lu(k,384) * b(k,97) + b(k,64) = b(k,64) - lu(k,383) * b(k,97) + b(k,58) = b(k,58) - lu(k,382) * b(k,97) + b(k,96) = b(k,96) * lu(k,372) + b(k,82) = b(k,82) - lu(k,371) * b(k,96) + b(k,95) = b(k,95) * lu(k,361) + b(k,94) = b(k,94) * lu(k,353) + b(k,74) = b(k,74) - lu(k,352) * b(k,94) + b(k,47) = b(k,47) - lu(k,351) * b(k,94) + b(k,93) = b(k,93) * lu(k,345) + b(k,92) = b(k,92) * lu(k,337) + b(k,56) = b(k,56) - lu(k,336) * b(k,92) + b(k,91) = b(k,91) * lu(k,331) + b(k,90) = b(k,90) * lu(k,324) + b(k,89) = b(k,89) * lu(k,319) + b(k,88) = b(k,88) * lu(k,311) + b(k,57) = b(k,57) - lu(k,310) * b(k,88) + b(k,87) = b(k,87) * lu(k,300) + b(k,86) = b(k,86) * lu(k,291) + b(k,85) = b(k,85) * lu(k,284) + b(k,84) = b(k,84) * lu(k,275) + b(k,83) = b(k,83) * lu(k,268) + b(k,82) = b(k,82) * lu(k,260) + b(k,81) = b(k,81) * lu(k,252) + end do + end subroutine lu_slv07 + subroutine lu_slv08( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) +!----------------------------------------------------------------------- +! ... Local variables +!----------------------------------------------------------------------- + integer :: k +!----------------------------------------------------------------------- +! ... solve L * y = b +!----------------------------------------------------------------------- + do k = 1,avec_len + b(k,80) = b(k,80) * lu(k,244) + b(k,79) = b(k,79) * lu(k,240) + b(k,78) = b(k,78) * lu(k,232) + b(k,77) = b(k,77) * lu(k,225) + b(k,76) = b(k,76) * lu(k,218) + b(k,75) = b(k,75) * lu(k,211) + b(k,74) = b(k,74) * lu(k,206) + b(k,73) = b(k,73) * lu(k,200) + b(k,72) = b(k,72) * lu(k,194) + b(k,71) = b(k,71) * lu(k,188) + b(k,70) = b(k,70) * lu(k,182) + b(k,69) = b(k,69) * lu(k,176) + b(k,68) = b(k,68) * lu(k,168) + b(k,67) = b(k,67) * lu(k,160) + b(k,66) = b(k,66) * lu(k,157) + b(k,65) = b(k,65) * lu(k,152) + b(k,64) = b(k,64) * lu(k,147) + b(k,63) = b(k,63) * lu(k,142) + b(k,62) = b(k,62) * lu(k,136) + b(k,61) = b(k,61) * lu(k,130) + b(k,60) = b(k,60) * lu(k,124) + b(k,59) = b(k,59) * lu(k,120) + b(k,48) = b(k,48) - lu(k,119) * b(k,59) + b(k,58) = b(k,58) * lu(k,115) + b(k,57) = b(k,57) * lu(k,111) + b(k,56) = b(k,56) * lu(k,108) + b(k,55) = b(k,55) * lu(k,103) + b(k,54) = b(k,54) * lu(k,100) + b(k,53) = b(k,53) * lu(k,96) + b(k,52) = b(k,52) * lu(k,92) + b(k,51) = b(k,51) * lu(k,90) + b(k,50) = b(k,50) - lu(k,89) * b(k,51) + b(k,50) = b(k,50) * lu(k,87) + b(k,49) = b(k,49) * lu(k,85) + b(k,48) = b(k,48) * lu(k,82) + b(k,47) = b(k,47) * lu(k,79) + b(k,46) = b(k,46) * lu(k,75) + b(k,45) = b(k,45) * lu(k,71) + b(k,44) = b(k,44) * lu(k,67) + b(k,43) = b(k,43) * lu(k,64) + b(k,42) = b(k,42) * lu(k,61) + b(k,41) = b(k,41) * lu(k,58) + b(k,40) = b(k,40) * lu(k,55) + b(k,39) = b(k,39) * lu(k,52) + b(k,38) = b(k,38) * lu(k,49) + b(k,37) = b(k,37) * lu(k,46) + b(k,36) = b(k,36) * lu(k,43) + b(k,35) = b(k,35) * lu(k,40) + b(k,34) = b(k,34) * lu(k,37) + b(k,33) = b(k,33) * lu(k,34) + b(k,32) = b(k,32) * lu(k,33) + b(k,31) = b(k,31) * lu(k,32) + b(k,30) = b(k,30) * lu(k,30) + b(k,29) = b(k,29) * lu(k,29) + b(k,28) = b(k,28) * lu(k,28) + b(k,27) = b(k,27) * lu(k,27) + b(k,26) = b(k,26) * lu(k,26) + b(k,25) = b(k,25) * lu(k,25) + b(k,24) = b(k,24) * lu(k,24) + b(k,23) = b(k,23) * lu(k,23) + b(k,22) = b(k,22) * lu(k,22) + b(k,21) = b(k,21) * lu(k,21) + b(k,20) = b(k,20) * lu(k,20) + b(k,19) = b(k,19) * lu(k,19) + b(k,18) = b(k,18) * lu(k,18) + b(k,17) = b(k,17) * lu(k,17) + b(k,16) = b(k,16) * lu(k,16) + b(k,15) = b(k,15) * lu(k,15) + b(k,14) = b(k,14) * lu(k,14) + b(k,13) = b(k,13) * lu(k,13) + b(k,12) = b(k,12) * lu(k,12) + b(k,11) = b(k,11) * lu(k,11) + b(k,10) = b(k,10) * lu(k,10) + b(k,9) = b(k,9) * lu(k,9) + b(k,8) = b(k,8) * lu(k,8) + b(k,7) = b(k,7) * lu(k,7) + b(k,6) = b(k,6) * lu(k,6) + b(k,5) = b(k,5) * lu(k,5) + b(k,4) = b(k,4) * lu(k,4) + b(k,3) = b(k,3) * lu(k,3) + b(k,2) = b(k,2) * lu(k,2) + b(k,1) = b(k,1) * lu(k,1) + end do + end subroutine lu_slv08 + subroutine lu_slv( avec_len, lu, b ) + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : clscnt4, nzcnt + implicit none +!----------------------------------------------------------------------- +! ... Dummy args +!----------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) + real(r8), intent(inout) :: b(veclen,clscnt4) + call lu_slv01( avec_len, lu, b ) + call lu_slv02( avec_len, lu, b ) + call lu_slv03( avec_len, lu, b ) + call lu_slv04( avec_len, lu, b ) + call lu_slv05( avec_len, lu, b ) + call lu_slv06( avec_len, lu, b ) + call lu_slv07( avec_len, lu, b ) + call lu_slv08( avec_len, lu, b ) + end subroutine lu_slv + end module mo_lu_solve diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_nln_matrix.F90 new file mode 100644 index 0000000000..4f4992c2cf --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_nln_matrix.F90 @@ -0,0 +1,2343 @@ + module mo_nln_matrix + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only: veclen + private + public :: nlnmat + contains + subroutine nlnmat01( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,37) = -(rxt(k,303)*y(k,139)) + mat(k,1192) = -rxt(k,303)*y(k,3) + mat(k,1099) = -(rxt(k,183)*y(k,25) + rxt(k,184)*y(k,134) + rxt(k,185) & + *y(k,100)) + mat(k,815) = -rxt(k,183)*y(k,4) + mat(k,1036) = -rxt(k,184)*y(k,4) + mat(k,1082) = -rxt(k,185)*y(k,4) + mat(k,1325) = 4.000_r8*rxt(k,186)*y(k,6) + (rxt(k,187)+rxt(k,188))*y(k,41) & + + rxt(k,191)*y(k,87) + rxt(k,194)*y(k,96) + rxt(k,335)*y(k,112) & + + rxt(k,195)*y(k,139) + mat(k,73) = rxt(k,173)*y(k,138) + mat(k,50) = rxt(k,199)*y(k,138) + mat(k,228) = 2.000_r8*rxt(k,204)*y(k,38) + 2.000_r8*rxt(k,216)*y(k,138) & + + 2.000_r8*rxt(k,205)*y(k,139) + mat(k,296) = rxt(k,206)*y(k,38) + rxt(k,217)*y(k,138) + rxt(k,207)*y(k,139) + mat(k,191) = 3.000_r8*rxt(k,211)*y(k,38) + 3.000_r8*rxt(k,200)*y(k,138) & + + 3.000_r8*rxt(k,212)*y(k,139) + mat(k,979) = 2.000_r8*rxt(k,204)*y(k,24) + rxt(k,206)*y(k,26) & + + 3.000_r8*rxt(k,211)*y(k,37) + mat(k,884) = (rxt(k,187)+rxt(k,188))*y(k,6) + mat(k,41) = 2.000_r8*rxt(k,201)*y(k,138) + mat(k,404) = rxt(k,196)*y(k,96) + rxt(k,202)*y(k,138) + rxt(k,197)*y(k,139) + mat(k,858) = rxt(k,191)*y(k,6) + mat(k,1302) = rxt(k,194)*y(k,6) + rxt(k,196)*y(k,59) + mat(k,724) = rxt(k,335)*y(k,6) + mat(k,1184) = rxt(k,173)*y(k,17) + rxt(k,199)*y(k,18) + 2.000_r8*rxt(k,216) & + *y(k,24) + rxt(k,217)*y(k,26) + 3.000_r8*rxt(k,200)*y(k,37) & + + 2.000_r8*rxt(k,201)*y(k,56) + rxt(k,202)*y(k,59) + mat(k,1270) = rxt(k,195)*y(k,6) + 2.000_r8*rxt(k,205)*y(k,24) + rxt(k,207) & + *y(k,26) + 3.000_r8*rxt(k,212)*y(k,37) + rxt(k,197)*y(k,59) + mat(k,1310) = rxt(k,189)*y(k,41) + mat(k,868) = rxt(k,189)*y(k,6) + mat(k,930) = (rxt(k,361)+rxt(k,366))*y(k,66) + mat(k,336) = (rxt(k,361)+rxt(k,366))*y(k,63) + mat(k,1330) = -(4._r8*rxt(k,186)*y(k,6) + (rxt(k,187) + rxt(k,188) + rxt(k,189) & + ) * y(k,41) + rxt(k,190)*y(k,134) + rxt(k,191)*y(k,87) + rxt(k,192) & + *y(k,88) + rxt(k,194)*y(k,96) + rxt(k,195)*y(k,139) + rxt(k,335) & + *y(k,112)) + mat(k,889) = -(rxt(k,187) + rxt(k,188) + rxt(k,189)) * y(k,6) + mat(k,1041) = -rxt(k,190)*y(k,6) + mat(k,863) = -rxt(k,191)*y(k,6) + mat(k,926) = -rxt(k,192)*y(k,6) + mat(k,1307) = -rxt(k,194)*y(k,6) + mat(k,1275) = -rxt(k,195)*y(k,6) + mat(k,727) = -rxt(k,335)*y(k,6) + mat(k,1104) = rxt(k,185)*y(k,100) + mat(k,239) = rxt(k,193)*y(k,96) + mat(k,408) = rxt(k,203)*y(k,138) + mat(k,343) = rxt(k,198)*y(k,96) + mat(k,1307) = mat(k,1307) + rxt(k,193)*y(k,7) + rxt(k,198)*y(k,66) + mat(k,1087) = rxt(k,185)*y(k,4) + mat(k,1189) = rxt(k,203)*y(k,59) + mat(k,232) = -(rxt(k,193)*y(k,96)) + mat(k,1281) = -rxt(k,193)*y(k,7) + mat(k,1312) = rxt(k,192)*y(k,88) + mat(k,895) = rxt(k,192)*y(k,6) + mat(k,211) = -(rxt(k,235)*y(k,38) + rxt(k,236)*y(k,100) + rxt(k,260)*y(k,139)) + mat(k,954) = -rxt(k,235)*y(k,9) + mat(k,1046) = -rxt(k,236)*y(k,9) + mat(k,1214) = -rxt(k,260)*y(k,9) + mat(k,115) = -(rxt(k,241)*y(k,139)) + mat(k,1200) = -rxt(k,241)*y(k,10) + mat(k,382) = .800_r8*rxt(k,237)*y(k,128) + .200_r8*rxt(k,238)*y(k,131) + mat(k,754) = .200_r8*rxt(k,238)*y(k,128) + mat(k,147) = -(rxt(k,242)*y(k,139)) + mat(k,1205) = -rxt(k,242)*y(k,11) + mat(k,383) = rxt(k,239)*y(k,134) + mat(k,990) = rxt(k,239)*y(k,128) + mat(k,130) = -(rxt(k,243)*y(k,38) + rxt(k,244)*y(k,139)) + mat(k,951) = -rxt(k,243)*y(k,12) + mat(k,1202) = -rxt(k,244)*y(k,12) + mat(k,541) = -(rxt(k,263)*y(k,89) + rxt(k,264)*y(k,100) + rxt(k,281)*y(k,139)) + mat(k,1123) = -rxt(k,263)*y(k,13) + mat(k,1060) = -rxt(k,264)*y(k,13) + mat(k,1248) = -rxt(k,281)*y(k,13) + mat(k,432) = .130_r8*rxt(k,314)*y(k,100) + mat(k,1060) = mat(k,1060) + .130_r8*rxt(k,314)*y(k,70) + mat(k,176) = -(rxt(k,268)*y(k,139)) + mat(k,1209) = -rxt(k,268)*y(k,14) + mat(k,415) = rxt(k,266)*y(k,134) + mat(k,991) = rxt(k,266)*y(k,129) + mat(k,67) = -(rxt(k,269)*y(k,139)) + mat(k,1194) = -rxt(k,269)*y(k,15) + mat(k,46) = -(rxt(k,172)*y(k,138)) + mat(k,1154) = -rxt(k,172)*y(k,16) + mat(k,71) = -(rxt(k,173)*y(k,138)) + mat(k,1161) = -rxt(k,173)*y(k,17) + mat(k,49) = -(rxt(k,199)*y(k,138)) + mat(k,1155) = -rxt(k,199)*y(k,18) + mat(k,52) = -(rxt(k,174)*y(k,138)) + mat(k,1156) = -rxt(k,174)*y(k,19) + mat(k,55) = -(rxt(k,175)*y(k,138)) + mat(k,1157) = -rxt(k,175)*y(k,20) + mat(k,58) = -(rxt(k,176)*y(k,138)) + mat(k,1158) = -rxt(k,176)*y(k,21) + mat(k,61) = -(rxt(k,177)*y(k,138)) + mat(k,1159) = -rxt(k,177)*y(k,22) + mat(k,64) = -(rxt(k,178)*y(k,138)) + mat(k,1160) = -rxt(k,178)*y(k,23) + mat(k,225) = -(rxt(k,204)*y(k,38) + rxt(k,205)*y(k,139) + rxt(k,216)*y(k,138)) + mat(k,955) = -rxt(k,204)*y(k,24) + mat(k,1216) = -rxt(k,205)*y(k,24) + mat(k,1168) = -rxt(k,216)*y(k,24) + mat(k,809) = -(rxt(k,147)*y(k,38) + rxt(k,183)*y(k,4) + rxt(k,221)*y(k,89) & + + rxt(k,222)*y(k,96) + rxt(k,223)*y(k,139)) + mat(k,971) = -rxt(k,147)*y(k,25) + mat(k,1093) = -rxt(k,183)*y(k,25) + mat(k,1137) = -rxt(k,221)*y(k,25) + mat(k,1294) = -rxt(k,222)*y(k,25) + mat(k,1262) = -rxt(k,223)*y(k,25) + mat(k,214) = rxt(k,236)*y(k,100) + mat(k,547) = .500_r8*rxt(k,264)*y(k,100) + mat(k,288) = .500_r8*rxt(k,252)*y(k,139) + mat(k,241) = rxt(k,228)*y(k,139) + mat(k,197) = .300_r8*rxt(k,229)*y(k,139) + mat(k,509) = (rxt(k,232)+rxt(k,233))*y(k,138) + mat(k,876) = rxt(k,154)*y(k,131) + mat(k,564) = .800_r8*rxt(k,257)*y(k,139) + mat(k,439) = .910_r8*rxt(k,314)*y(k,100) + mat(k,365) = .072_r8*rxt(k,307)*y(k,87) + .072_r8*rxt(k,308)*y(k,89) & + + .206_r8*rxt(k,306)*y(k,134) + mat(k,575) = .120_r8*rxt(k,289)*y(k,100) + mat(k,279) = .500_r8*rxt(k,298)*y(k,139) + mat(k,741) = .600_r8*rxt(k,299)*y(k,100) + mat(k,850) = .072_r8*rxt(k,307)*y(k,71) + rxt(k,227)*y(k,131) & + + .500_r8*rxt(k,254)*y(k,133) + .550_r8*rxt(k,312)*y(k,135) & + + .250_r8*rxt(k,287)*y(k,136) + rxt(k,296)*y(k,137) + rxt(k,275) & + *y(k,140) + rxt(k,279)*y(k,141) + .250_r8*rxt(k,322)*y(k,142) + mat(k,1137) = mat(k,1137) + .072_r8*rxt(k,308)*y(k,71) + .600_r8*rxt(k,313) & + *y(k,135) + .250_r8*rxt(k,286)*y(k,136) + rxt(k,297)*y(k,137) + mat(k,1074) = rxt(k,236)*y(k,9) + .500_r8*rxt(k,264)*y(k,13) & + + .910_r8*rxt(k,314)*y(k,70) + .120_r8*rxt(k,289)*y(k,73) & + + .600_r8*rxt(k,299)*y(k,76) + mat(k,256) = rxt(k,259)*y(k,139) + mat(k,388) = .700_r8*rxt(k,238)*y(k,131) + mat(k,422) = rxt(k,265)*y(k,131) + mat(k,703) = rxt(k,248)*y(k,131) + .600_r8*rxt(k,309)*y(k,135) & + + .250_r8*rxt(k,283)*y(k,136) + rxt(k,292)*y(k,137) & + + .250_r8*rxt(k,319)*y(k,142) + mat(k,779) = rxt(k,154)*y(k,41) + rxt(k,227)*y(k,87) + .700_r8*rxt(k,238) & + *y(k,128) + rxt(k,265)*y(k,129) + rxt(k,248)*y(k,130) + ( & + + 4.000_r8*rxt(k,224)+2.000_r8*rxt(k,225))*y(k,131) & + + 1.200_r8*rxt(k,310)*y(k,135) + .880_r8*rxt(k,284)*y(k,136) & + + 2.000_r8*rxt(k,293)*y(k,137) + .800_r8*rxt(k,277)*y(k,141) & + + .800_r8*rxt(k,320)*y(k,142) + mat(k,355) = .500_r8*rxt(k,254)*y(k,87) + mat(k,1028) = .206_r8*rxt(k,306)*y(k,71) + .450_r8*rxt(k,294)*y(k,137) & + + .150_r8*rxt(k,278)*y(k,141) + mat(k,634) = .550_r8*rxt(k,312)*y(k,87) + .600_r8*rxt(k,313)*y(k,89) & + + .600_r8*rxt(k,309)*y(k,130) + 1.200_r8*rxt(k,310)*y(k,131) + mat(k,656) = .250_r8*rxt(k,287)*y(k,87) + .250_r8*rxt(k,286)*y(k,89) & + + .250_r8*rxt(k,283)*y(k,130) + .880_r8*rxt(k,284)*y(k,131) + mat(k,675) = rxt(k,296)*y(k,87) + rxt(k,297)*y(k,89) + rxt(k,292)*y(k,130) & + + 2.000_r8*rxt(k,293)*y(k,131) + .450_r8*rxt(k,294)*y(k,134) & + + 4.000_r8*rxt(k,295)*y(k,137) + mat(k,1176) = (rxt(k,232)+rxt(k,233))*y(k,36) + mat(k,1262) = mat(k,1262) + .500_r8*rxt(k,252)*y(k,33) + rxt(k,228)*y(k,34) & + + .300_r8*rxt(k,229)*y(k,35) + .800_r8*rxt(k,257)*y(k,52) & + + .500_r8*rxt(k,298)*y(k,75) + rxt(k,259)*y(k,105) + mat(k,375) = rxt(k,275)*y(k,87) + mat(k,489) = rxt(k,279)*y(k,87) + .800_r8*rxt(k,277)*y(k,131) & + + .150_r8*rxt(k,278)*y(k,134) + mat(k,597) = .250_r8*rxt(k,322)*y(k,87) + .250_r8*rxt(k,319)*y(k,130) & + + .800_r8*rxt(k,320)*y(k,131) + mat(k,291) = -(rxt(k,206)*y(k,38) + rxt(k,207)*y(k,139) + rxt(k,217)*y(k,138)) + mat(k,957) = -rxt(k,206)*y(k,26) + mat(k,1224) = -rxt(k,207)*y(k,26) + mat(k,1169) = -rxt(k,217)*y(k,26) + mat(k,75) = -(rxt(k,208)*y(k,139)) + mat(k,1195) = -rxt(k,208)*y(k,27) + mat(k,525) = -(rxt(k,245)*y(k,89) + rxt(k,246)*y(k,139)) + mat(k,1122) = -rxt(k,245)*y(k,28) + mat(k,1247) = -rxt(k,246)*y(k,28) + mat(k,116) = rxt(k,241)*y(k,139) + mat(k,149) = .500_r8*rxt(k,242)*y(k,139) + mat(k,540) = .500_r8*rxt(k,264)*y(k,100) + mat(k,731) = .100_r8*rxt(k,299)*y(k,100) + mat(k,837) = rxt(k,240)*y(k,128) + .270_r8*rxt(k,267)*y(k,129) + rxt(k,275) & + *y(k,140) + mat(k,1059) = .500_r8*rxt(k,264)*y(k,13) + .100_r8*rxt(k,299)*y(k,76) + mat(k,386) = rxt(k,240)*y(k,87) + 3.200_r8*rxt(k,237)*y(k,128) & + + .800_r8*rxt(k,238)*y(k,131) + mat(k,419) = .270_r8*rxt(k,267)*y(k,87) + mat(k,766) = .800_r8*rxt(k,238)*y(k,128) + mat(k,1247) = mat(k,1247) + rxt(k,241)*y(k,10) + .500_r8*rxt(k,242)*y(k,11) + mat(k,374) = rxt(k,275)*y(k,87) + mat(k,168) = -(rxt(k,209)*y(k,38) + rxt(k,210)*y(k,139)) + mat(k,952) = -rxt(k,209)*y(k,29) + mat(k,1208) = -rxt(k,210)*y(k,29) + mat(k,345) = -(rxt(k,282)*y(k,139)) + mat(k,1230) = -rxt(k,282)*y(k,30) + mat(k,827) = .820_r8*rxt(k,267)*y(k,129) + mat(k,301) = .100_r8*rxt(k,327)*y(k,139) + mat(k,416) = .820_r8*rxt(k,267)*y(k,87) + .820_r8*rxt(k,265)*y(k,131) + mat(k,760) = .820_r8*rxt(k,265)*y(k,129) + mat(k,1230) = mat(k,1230) + .100_r8*rxt(k,327)*y(k,124) + mat(k,607) = -(rxt(k,270)*y(k,89) + rxt(k,271)*y(k,139)) + mat(k,1128) = -rxt(k,270)*y(k,31) + mat(k,1253) = -rxt(k,271)*y(k,31) + mat(k,519) = rxt(k,272)*y(k,139) + mat(k,571) = .880_r8*rxt(k,289)*y(k,100) + mat(k,734) = .500_r8*rxt(k,299)*y(k,100) + mat(k,842) = .020_r8*rxt(k,312)*y(k,135) + .250_r8*rxt(k,287)*y(k,136) & + + .250_r8*rxt(k,322)*y(k,142) + mat(k,1128) = mat(k,1128) + .250_r8*rxt(k,286)*y(k,136) + .250_r8*rxt(k,323) & + *y(k,142) + mat(k,183) = rxt(k,273)*y(k,139) + mat(k,1065) = .880_r8*rxt(k,289)*y(k,73) + .500_r8*rxt(k,299)*y(k,76) + mat(k,696) = .250_r8*rxt(k,283)*y(k,136) + .250_r8*rxt(k,319)*y(k,142) + mat(k,771) = .240_r8*rxt(k,284)*y(k,136) + .500_r8*rxt(k,277)*y(k,141) & + + .100_r8*rxt(k,320)*y(k,142) + mat(k,627) = .020_r8*rxt(k,312)*y(k,87) + mat(k,651) = .250_r8*rxt(k,287)*y(k,87) + .250_r8*rxt(k,286)*y(k,89) & + + .250_r8*rxt(k,283)*y(k,130) + .240_r8*rxt(k,284)*y(k,131) + mat(k,1253) = mat(k,1253) + rxt(k,272)*y(k,68) + rxt(k,273)*y(k,90) + mat(k,486) = .500_r8*rxt(k,277)*y(k,131) + mat(k,594) = .250_r8*rxt(k,322)*y(k,87) + .250_r8*rxt(k,323)*y(k,89) & + + .250_r8*rxt(k,319)*y(k,130) + .100_r8*rxt(k,320)*y(k,131) + end do + end subroutine nlnmat01 + subroutine nlnmat02( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,319) = -(rxt(k,251)*y(k,139)) + mat(k,1227) = -rxt(k,251)*y(k,32) + mat(k,535) = .120_r8*rxt(k,264)*y(k,100) + mat(k,1048) = .120_r8*rxt(k,264)*y(k,13) + mat(k,688) = .100_r8*rxt(k,248)*y(k,131) + .150_r8*rxt(k,249)*y(k,134) + mat(k,758) = .100_r8*rxt(k,248)*y(k,130) + mat(k,1000) = .150_r8*rxt(k,249)*y(k,130) + .150_r8*rxt(k,294)*y(k,137) + mat(k,667) = .150_r8*rxt(k,294)*y(k,134) + mat(k,284) = -(rxt(k,252)*y(k,139)) + mat(k,1223) = -rxt(k,252)*y(k,33) + mat(k,687) = .400_r8*rxt(k,249)*y(k,134) + mat(k,999) = .400_r8*rxt(k,249)*y(k,130) + .400_r8*rxt(k,294)*y(k,137) + mat(k,666) = .400_r8*rxt(k,294)*y(k,134) + mat(k,240) = -(rxt(k,228)*y(k,139)) + mat(k,1217) = -rxt(k,228)*y(k,34) + mat(k,384) = .300_r8*rxt(k,238)*y(k,131) + mat(k,757) = .300_r8*rxt(k,238)*y(k,128) + 2.000_r8*rxt(k,225)*y(k,131) & + + .250_r8*rxt(k,310)*y(k,135) + .250_r8*rxt(k,284)*y(k,136) & + + .500_r8*rxt(k,277)*y(k,141) + .300_r8*rxt(k,320)*y(k,142) + mat(k,617) = .250_r8*rxt(k,310)*y(k,131) + mat(k,645) = .250_r8*rxt(k,284)*y(k,131) + mat(k,483) = .500_r8*rxt(k,277)*y(k,131) + mat(k,587) = .300_r8*rxt(k,320)*y(k,131) + mat(k,194) = -(rxt(k,229)*y(k,139)) + mat(k,1212) = -rxt(k,229)*y(k,35) + mat(k,756) = rxt(k,226)*y(k,134) + mat(k,992) = rxt(k,226)*y(k,131) + mat(k,505) = -(rxt(k,148)*y(k,38) + rxt(k,230)*y(k,139) + (rxt(k,231) & + + rxt(k,232) + rxt(k,233)) * y(k,138)) + mat(k,963) = -rxt(k,148)*y(k,36) + mat(k,1245) = -rxt(k,230)*y(k,36) + mat(k,1172) = -(rxt(k,231) + rxt(k,232) + rxt(k,233)) * y(k,36) + mat(k,538) = .100_r8*rxt(k,264)*y(k,100) + mat(k,1057) = .100_r8*rxt(k,264)*y(k,13) + mat(k,188) = -(rxt(k,200)*y(k,138) + rxt(k,211)*y(k,38) + rxt(k,212)*y(k,139)) + mat(k,1167) = -rxt(k,200)*y(k,37) + mat(k,953) = -rxt(k,211)*y(k,37) + mat(k,1211) = -rxt(k,212)*y(k,37) + mat(k,976) = -(rxt(k,147)*y(k,25) + rxt(k,148)*y(k,36) + rxt(k,149)*y(k,55) & + + rxt(k,150)*y(k,57) + (rxt(k,151) + rxt(k,152)) * y(k,134) & + + rxt(k,153)*y(k,100) + rxt(k,160)*y(k,42) + rxt(k,169)*y(k,67) & + + rxt(k,204)*y(k,24) + rxt(k,206)*y(k,26) + rxt(k,209)*y(k,29) & + + rxt(k,211)*y(k,37) + rxt(k,243)*y(k,12)) + mat(k,812) = -rxt(k,147)*y(k,38) + mat(k,511) = -rxt(k,148)*y(k,38) + mat(k,498) = -rxt(k,149)*y(k,38) + mat(k,270) = -rxt(k,150)*y(k,38) + mat(k,1033) = -(rxt(k,151) + rxt(k,152)) * y(k,38) + mat(k,1079) = -rxt(k,153)*y(k,38) + mat(k,453) = -rxt(k,160)*y(k,38) + mat(k,398) = -rxt(k,169)*y(k,38) + mat(k,227) = -rxt(k,204)*y(k,38) + mat(k,294) = -rxt(k,206)*y(k,38) + mat(k,172) = -rxt(k,209)*y(k,38) + mat(k,190) = -rxt(k,211)*y(k,38) + mat(k,133) = -rxt(k,243)*y(k,38) + mat(k,1322) = rxt(k,188)*y(k,41) + mat(k,47) = 4.000_r8*rxt(k,172)*y(k,138) + mat(k,72) = rxt(k,173)*y(k,138) + mat(k,53) = 3.000_r8*rxt(k,174)*y(k,138) + mat(k,56) = 3.000_r8*rxt(k,175)*y(k,138) + mat(k,59) = 2.000_r8*rxt(k,176)*y(k,138) + mat(k,62) = rxt(k,177)*y(k,138) + mat(k,65) = 2.000_r8*rxt(k,178)*y(k,138) + mat(k,76) = 3.000_r8*rxt(k,208)*y(k,139) + mat(k,172) = mat(k,172) + rxt(k,210)*y(k,139) + mat(k,881) = rxt(k,188)*y(k,6) + (4.000_r8*rxt(k,155)+2.000_r8*rxt(k,157)) & + *y(k,41) + rxt(k,159)*y(k,87) + rxt(k,164)*y(k,96) + rxt(k,336) & + *y(k,112) + rxt(k,154)*y(k,131) + rxt(k,165)*y(k,139) + mat(k,93) = 2.000_r8*rxt(k,218)*y(k,138) + 2.000_r8*rxt(k,213)*y(k,139) + mat(k,97) = rxt(k,219)*y(k,138) + rxt(k,214)*y(k,139) + mat(k,104) = rxt(k,220)*y(k,138) + rxt(k,215)*y(k,139) + mat(k,939) = rxt(k,167)*y(k,96) + rxt(k,179)*y(k,138) + rxt(k,168)*y(k,139) + mat(k,855) = rxt(k,159)*y(k,41) + mat(k,1299) = rxt(k,164)*y(k,41) + rxt(k,167)*y(k,63) + mat(k,721) = rxt(k,336)*y(k,41) + mat(k,784) = rxt(k,154)*y(k,41) + mat(k,1181) = 4.000_r8*rxt(k,172)*y(k,16) + rxt(k,173)*y(k,17) & + + 3.000_r8*rxt(k,174)*y(k,19) + 3.000_r8*rxt(k,175)*y(k,20) & + + 2.000_r8*rxt(k,176)*y(k,21) + rxt(k,177)*y(k,22) & + + 2.000_r8*rxt(k,178)*y(k,23) + 2.000_r8*rxt(k,218)*y(k,60) & + + rxt(k,219)*y(k,61) + rxt(k,220)*y(k,62) + rxt(k,179)*y(k,63) + mat(k,1267) = 3.000_r8*rxt(k,208)*y(k,27) + rxt(k,210)*y(k,29) + rxt(k,165) & + *y(k,41) + 2.000_r8*rxt(k,213)*y(k,60) + rxt(k,214)*y(k,61) & + + rxt(k,215)*y(k,62) + rxt(k,168)*y(k,63) + mat(k,950) = rxt(k,160)*y(k,42) + mat(k,867) = 2.000_r8*rxt(k,156)*y(k,41) + mat(k,446) = rxt(k,160)*y(k,38) + (rxt(k,359)+rxt(k,364)+rxt(k,369))*y(k,63) + mat(k,929) = (rxt(k,359)+rxt(k,364)+rxt(k,369))*y(k,42) + (rxt(k,354) & + +rxt(k,360)+rxt(k,365))*y(k,67) + mat(k,394) = (rxt(k,354)+rxt(k,360)+rxt(k,365))*y(k,63) + mat(k,866) = 2.000_r8*rxt(k,181)*y(k,41) + mat(k,878) = -(rxt(k,154)*y(k,131) + (4._r8*rxt(k,155) + 4._r8*rxt(k,156) & + + 4._r8*rxt(k,157) + 4._r8*rxt(k,181)) * y(k,41) + rxt(k,158) & + *y(k,134) + rxt(k,159)*y(k,87) + rxt(k,161)*y(k,88) + rxt(k,164) & + *y(k,96) + (rxt(k,165) + rxt(k,166)) * y(k,139) + (rxt(k,187) & + + rxt(k,188) + rxt(k,189)) * y(k,6) + rxt(k,336)*y(k,112)) + mat(k,781) = -rxt(k,154)*y(k,41) + mat(k,1030) = -rxt(k,158)*y(k,41) + mat(k,852) = -rxt(k,159)*y(k,41) + mat(k,915) = -rxt(k,161)*y(k,41) + mat(k,1296) = -rxt(k,164)*y(k,41) + mat(k,1264) = -(rxt(k,165) + rxt(k,166)) * y(k,41) + mat(k,1319) = -(rxt(k,187) + rxt(k,188) + rxt(k,189)) * y(k,41) + mat(k,719) = -rxt(k,336)*y(k,41) + mat(k,973) = rxt(k,169)*y(k,67) + rxt(k,153)*y(k,100) + rxt(k,152)*y(k,134) + mat(k,450) = rxt(k,162)*y(k,96) + mat(k,936) = rxt(k,180)*y(k,138) + mat(k,396) = rxt(k,169)*y(k,38) + rxt(k,170)*y(k,96) + rxt(k,171)*y(k,139) + mat(k,1296) = mat(k,1296) + rxt(k,162)*y(k,42) + rxt(k,170)*y(k,67) + mat(k,1076) = rxt(k,153)*y(k,38) + mat(k,155) = rxt(k,341)*y(k,112) + mat(k,719) = mat(k,719) + rxt(k,341)*y(k,102) + mat(k,1030) = mat(k,1030) + rxt(k,152)*y(k,38) + mat(k,1178) = rxt(k,180)*y(k,63) + mat(k,1264) = mat(k,1264) + rxt(k,171)*y(k,67) + mat(k,449) = -(rxt(k,160)*y(k,38) + rxt(k,162)*y(k,96) + rxt(k,163)*y(k,139) & + + (rxt(k,359) + rxt(k,364) + rxt(k,369)) * y(k,63)) + mat(k,961) = -rxt(k,160)*y(k,42) + mat(k,1288) = -rxt(k,162)*y(k,42) + mat(k,1239) = -rxt(k,163)*y(k,42) + mat(k,934) = -(rxt(k,359) + rxt(k,364) + rxt(k,369)) * y(k,42) + mat(k,871) = rxt(k,161)*y(k,88) + mat(k,901) = rxt(k,161)*y(k,41) + mat(k,581) = -(rxt(k,234)*y(k,139)) + mat(k,1251) = -rxt(k,234)*y(k,44) + mat(k,1091) = rxt(k,183)*y(k,25) + mat(k,213) = .630_r8*rxt(k,236)*y(k,100) + mat(k,542) = .560_r8*rxt(k,264)*y(k,100) + mat(k,807) = rxt(k,183)*y(k,4) + rxt(k,147)*y(k,38) + rxt(k,221)*y(k,89) & + + rxt(k,222)*y(k,96) + rxt(k,223)*y(k,139) + mat(k,169) = rxt(k,209)*y(k,38) + mat(k,606) = rxt(k,270)*y(k,89) + rxt(k,271)*y(k,139) + mat(k,966) = rxt(k,147)*y(k,25) + rxt(k,209)*y(k,29) + mat(k,333) = rxt(k,258)*y(k,139) + mat(k,434) = .620_r8*rxt(k,314)*y(k,100) + mat(k,570) = .650_r8*rxt(k,289)*y(k,100) + mat(k,733) = .560_r8*rxt(k,299)*y(k,100) + mat(k,840) = .220_r8*rxt(k,287)*y(k,136) + .250_r8*rxt(k,322)*y(k,142) + mat(k,1126) = rxt(k,221)*y(k,25) + rxt(k,270)*y(k,31) + .220_r8*rxt(k,286) & + *y(k,136) + .500_r8*rxt(k,323)*y(k,142) + mat(k,1291) = rxt(k,222)*y(k,25) + rxt(k,330)*y(k,103) + mat(k,1063) = .630_r8*rxt(k,236)*y(k,9) + .560_r8*rxt(k,264)*y(k,13) & + + .620_r8*rxt(k,314)*y(k,70) + .650_r8*rxt(k,289)*y(k,73) & + + .560_r8*rxt(k,299)*y(k,76) + mat(k,163) = rxt(k,330)*y(k,96) + rxt(k,331)*y(k,139) + mat(k,694) = .220_r8*rxt(k,283)*y(k,136) + .250_r8*rxt(k,319)*y(k,142) + mat(k,769) = .110_r8*rxt(k,284)*y(k,136) + .200_r8*rxt(k,320)*y(k,142) + mat(k,649) = .220_r8*rxt(k,287)*y(k,87) + .220_r8*rxt(k,286)*y(k,89) & + + .220_r8*rxt(k,283)*y(k,130) + .110_r8*rxt(k,284)*y(k,131) + mat(k,1251) = mat(k,1251) + rxt(k,223)*y(k,25) + rxt(k,271)*y(k,31) & + + rxt(k,258)*y(k,53) + rxt(k,331)*y(k,103) + mat(k,592) = .250_r8*rxt(k,322)*y(k,87) + .500_r8*rxt(k,323)*y(k,89) & + + .250_r8*rxt(k,319)*y(k,130) + .200_r8*rxt(k,320)*y(k,131) + mat(k,537) = .200_r8*rxt(k,264)*y(k,100) + mat(k,320) = rxt(k,251)*y(k,139) + mat(k,285) = .500_r8*rxt(k,252)*y(k,139) + mat(k,580) = rxt(k,234)*y(k,139) + mat(k,561) = .800_r8*rxt(k,257)*y(k,139) + mat(k,332) = rxt(k,258)*y(k,139) + mat(k,276) = .500_r8*rxt(k,298)*y(k,139) + mat(k,730) = .100_r8*rxt(k,299)*y(k,100) + mat(k,833) = rxt(k,250)*y(k,130) + mat(k,1053) = .200_r8*rxt(k,264)*y(k,13) + .100_r8*rxt(k,299)*y(k,76) + mat(k,690) = rxt(k,250)*y(k,87) + 4.000_r8*rxt(k,247)*y(k,130) & + + .900_r8*rxt(k,248)*y(k,131) + 2.000_r8*rxt(k,292)*y(k,137) & + + rxt(k,319)*y(k,142) + mat(k,763) = .900_r8*rxt(k,248)*y(k,130) + rxt(k,293)*y(k,137) + mat(k,1010) = .450_r8*rxt(k,294)*y(k,137) + mat(k,668) = 2.000_r8*rxt(k,292)*y(k,130) + rxt(k,293)*y(k,131) & + + .450_r8*rxt(k,294)*y(k,134) + 4.000_r8*rxt(k,295)*y(k,137) + mat(k,1240) = rxt(k,251)*y(k,32) + .500_r8*rxt(k,252)*y(k,33) + rxt(k,234) & + *y(k,44) + .800_r8*rxt(k,257)*y(k,52) + rxt(k,258)*y(k,53) & + + .500_r8*rxt(k,298)*y(k,75) + mat(k,589) = rxt(k,319)*y(k,130) + mat(k,136) = -(rxt(k,328)*y(k,89) + (rxt(k,329) + rxt(k,343)) * y(k,139)) + mat(k,1108) = -rxt(k,328)*y(k,46) + mat(k,1203) = -(rxt(k,329) + rxt(k,343)) * y(k,46) + mat(k,351) = rxt(k,253)*y(k,134) + mat(k,987) = rxt(k,253)*y(k,133) + mat(k,562) = -(rxt(k,257)*y(k,139)) + mat(k,1249) = -rxt(k,257)*y(k,52) + mat(k,838) = .020_r8*rxt(k,312)*y(k,135) + .530_r8*rxt(k,287)*y(k,136) & + + .250_r8*rxt(k,322)*y(k,142) + mat(k,1124) = .530_r8*rxt(k,286)*y(k,136) + .250_r8*rxt(k,323)*y(k,142) + mat(k,1339) = rxt(k,256)*y(k,132) + mat(k,692) = .530_r8*rxt(k,283)*y(k,136) + .250_r8*rxt(k,319)*y(k,142) + mat(k,767) = .260_r8*rxt(k,284)*y(k,136) + .100_r8*rxt(k,320)*y(k,142) + mat(k,207) = rxt(k,256)*y(k,97) + mat(k,623) = .020_r8*rxt(k,312)*y(k,87) + mat(k,648) = .530_r8*rxt(k,287)*y(k,87) + .530_r8*rxt(k,286)*y(k,89) & + + .530_r8*rxt(k,283)*y(k,130) + .260_r8*rxt(k,284)*y(k,131) + mat(k,591) = .250_r8*rxt(k,322)*y(k,87) + .250_r8*rxt(k,323)*y(k,89) & + + .250_r8*rxt(k,319)*y(k,130) + .100_r8*rxt(k,320)*y(k,131) + mat(k,331) = -(rxt(k,258)*y(k,139)) + mat(k,1229) = -rxt(k,258)*y(k,53) + mat(k,560) = .200_r8*rxt(k,257)*y(k,139) + mat(k,826) = .020_r8*rxt(k,312)*y(k,135) + .250_r8*rxt(k,322)*y(k,142) + mat(k,1112) = .250_r8*rxt(k,323)*y(k,142) + mat(k,689) = .250_r8*rxt(k,319)*y(k,142) + mat(k,759) = .100_r8*rxt(k,320)*y(k,142) + mat(k,619) = .020_r8*rxt(k,312)*y(k,87) + mat(k,1229) = mat(k,1229) + .200_r8*rxt(k,257)*y(k,52) + mat(k,588) = .250_r8*rxt(k,322)*y(k,87) + .250_r8*rxt(k,323)*y(k,89) & + + .250_r8*rxt(k,319)*y(k,130) + .100_r8*rxt(k,320)*y(k,131) + end do + end subroutine nlnmat02 + subroutine nlnmat03( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,794) = -((rxt(k,107) + rxt(k,108) + rxt(k,109)) * y(k,134) + rxt(k,110) & + *y(k,97) + rxt(k,113)*y(k,100)) + mat(k,1027) = -(rxt(k,107) + rxt(k,108) + rxt(k,109)) * y(k,54) + mat(k,1342) = -rxt(k,110)*y(k,54) + mat(k,1073) = -rxt(k,113)*y(k,54) + mat(k,808) = rxt(k,223)*y(k,139) + mat(k,508) = rxt(k,232)*y(k,138) + mat(k,970) = rxt(k,149)*y(k,55) + mat(k,496) = rxt(k,149)*y(k,38) + rxt(k,105)*y(k,96) + rxt(k,87)*y(k,138) & + + rxt(k,114)*y(k,139) + mat(k,403) = rxt(k,203)*y(k,138) + mat(k,935) = rxt(k,180)*y(k,138) + mat(k,312) = rxt(k,135)*y(k,139) + mat(k,1293) = rxt(k,105)*y(k,55) + rxt(k,117)*y(k,139) + mat(k,165) = rxt(k,331)*y(k,139) + mat(k,326) = rxt(k,337)*y(k,139) + mat(k,717) = rxt(k,342)*y(k,139) + mat(k,1175) = rxt(k,232)*y(k,36) + rxt(k,87)*y(k,55) + rxt(k,203)*y(k,59) & + + rxt(k,180)*y(k,63) + mat(k,1261) = rxt(k,223)*y(k,25) + rxt(k,114)*y(k,55) + rxt(k,135)*y(k,77) & + + rxt(k,117)*y(k,96) + rxt(k,331)*y(k,103) + rxt(k,337)*y(k,110) & + + rxt(k,342)*y(k,112) + mat(k,495) = -(rxt(k,87)*y(k,138) + rxt(k,105)*y(k,96) + rxt(k,114)*y(k,139) & + + rxt(k,149)*y(k,38)) + mat(k,1171) = -rxt(k,87)*y(k,55) + mat(k,1290) = -rxt(k,105)*y(k,55) + mat(k,1244) = -rxt(k,114)*y(k,55) + mat(k,962) = -rxt(k,149)*y(k,55) + mat(k,504) = rxt(k,233)*y(k,138) + mat(k,793) = rxt(k,107)*y(k,134) + mat(k,1013) = rxt(k,107)*y(k,54) + mat(k,1171) = mat(k,1171) + rxt(k,233)*y(k,36) + mat(k,40) = -(rxt(k,201)*y(k,138)) + mat(k,1153) = -rxt(k,201)*y(k,56) + mat(k,268) = -(rxt(k,106)*y(k,96) + rxt(k,115)*y(k,139) + rxt(k,150)*y(k,38)) + mat(k,1282) = -rxt(k,106)*y(k,57) + mat(k,1221) = -rxt(k,115)*y(k,57) + mat(k,956) = -rxt(k,150)*y(k,57) + mat(k,998) = 2.000_r8*rxt(k,121)*y(k,134) + mat(k,1221) = mat(k,1221) + 2.000_r8*rxt(k,120)*y(k,139) + mat(k,119) = rxt(k,344)*y(k,143) + mat(k,1359) = rxt(k,344)*y(k,114) + mat(k,402) = -(rxt(k,196)*y(k,96) + rxt(k,197)*y(k,139) + (rxt(k,202) & + + rxt(k,203)) * y(k,138)) + mat(k,1286) = -rxt(k,196)*y(k,59) + mat(k,1235) = -rxt(k,197)*y(k,59) + mat(k,1170) = -(rxt(k,202) + rxt(k,203)) * y(k,59) + mat(k,1090) = rxt(k,183)*y(k,25) + rxt(k,184)*y(k,134) + mat(k,804) = rxt(k,183)*y(k,4) + mat(k,1008) = rxt(k,184)*y(k,4) + mat(k,92) = -(rxt(k,213)*y(k,139) + rxt(k,218)*y(k,138)) + mat(k,1196) = -rxt(k,213)*y(k,60) + mat(k,1163) = -rxt(k,218)*y(k,60) + mat(k,96) = -(rxt(k,214)*y(k,139) + rxt(k,219)*y(k,138)) + mat(k,1197) = -rxt(k,214)*y(k,61) + mat(k,1164) = -rxt(k,219)*y(k,61) + mat(k,103) = -(rxt(k,215)*y(k,139) + rxt(k,220)*y(k,138)) + mat(k,1199) = -rxt(k,215)*y(k,62) + mat(k,1165) = -rxt(k,220)*y(k,62) + mat(k,938) = -(rxt(k,167)*y(k,96) + rxt(k,168)*y(k,139) + (rxt(k,179) & + + rxt(k,180)) * y(k,138) + (rxt(k,354) + rxt(k,360) + rxt(k,365) & + ) * y(k,67) + (rxt(k,359) + rxt(k,364) + rxt(k,369)) * y(k,42) & + + (rxt(k,361) + rxt(k,366)) * y(k,66)) + mat(k,1298) = -rxt(k,167)*y(k,63) + mat(k,1266) = -rxt(k,168)*y(k,63) + mat(k,1180) = -(rxt(k,179) + rxt(k,180)) * y(k,63) + mat(k,397) = -(rxt(k,354) + rxt(k,360) + rxt(k,365)) * y(k,63) + mat(k,452) = -(rxt(k,359) + rxt(k,364) + rxt(k,369)) * y(k,63) + mat(k,338) = -(rxt(k,361) + rxt(k,366)) * y(k,63) + mat(k,132) = rxt(k,243)*y(k,38) + mat(k,226) = rxt(k,204)*y(k,38) + mat(k,811) = rxt(k,147)*y(k,38) + mat(k,293) = rxt(k,206)*y(k,38) + mat(k,171) = 2.000_r8*rxt(k,209)*y(k,38) + mat(k,510) = rxt(k,148)*y(k,38) + mat(k,189) = rxt(k,211)*y(k,38) + mat(k,975) = rxt(k,243)*y(k,12) + rxt(k,204)*y(k,24) + rxt(k,147)*y(k,25) & + + rxt(k,206)*y(k,26) + 2.000_r8*rxt(k,209)*y(k,29) + rxt(k,148) & + *y(k,36) + rxt(k,211)*y(k,37) + rxt(k,149)*y(k,55) + rxt(k,150) & + *y(k,57) + rxt(k,169)*y(k,67) + rxt(k,151)*y(k,134) + mat(k,880) = rxt(k,166)*y(k,139) + mat(k,497) = rxt(k,149)*y(k,38) + mat(k,269) = rxt(k,150)*y(k,38) + mat(k,397) = mat(k,397) + rxt(k,169)*y(k,38) + mat(k,1032) = rxt(k,151)*y(k,38) + mat(k,1266) = mat(k,1266) + rxt(k,166)*y(k,41) + mat(k,410) = -(rxt(k,144)*y(k,139)) + mat(k,1236) = -rxt(k,144)*y(k,64) + mat(k,805) = rxt(k,221)*y(k,89) + mat(k,524) = rxt(k,245)*y(k,89) + mat(k,605) = rxt(k,270)*y(k,89) + mat(k,448) = (rxt(k,359)+rxt(k,364)+rxt(k,369))*y(k,63) + mat(k,137) = rxt(k,328)*y(k,89) + mat(k,933) = (rxt(k,359)+rxt(k,364)+rxt(k,369))*y(k,42) + mat(k,900) = rxt(k,143)*y(k,139) + mat(k,1115) = rxt(k,221)*y(k,25) + rxt(k,245)*y(k,28) + rxt(k,270)*y(k,31) & + + rxt(k,328)*y(k,46) + mat(k,1236) = mat(k,1236) + rxt(k,143)*y(k,88) + mat(k,218) = -(rxt(k,122)*y(k,139)) + mat(k,1215) = -rxt(k,122)*y(k,65) + mat(k,894) = rxt(k,141)*y(k,134) + mat(k,995) = rxt(k,141)*y(k,88) + mat(k,337) = -(rxt(k,198)*y(k,96) + (rxt(k,361) + rxt(k,366)) * y(k,63)) + mat(k,1284) = -rxt(k,198)*y(k,66) + mat(k,931) = -(rxt(k,361) + rxt(k,366)) * y(k,66) + mat(k,1313) = rxt(k,190)*y(k,134) + mat(k,1001) = rxt(k,190)*y(k,6) + mat(k,395) = -(rxt(k,169)*y(k,38) + rxt(k,170)*y(k,96) + rxt(k,171)*y(k,139) & + + (rxt(k,354) + rxt(k,360) + rxt(k,365)) * y(k,63)) + mat(k,960) = -rxt(k,169)*y(k,67) + mat(k,1285) = -rxt(k,170)*y(k,67) + mat(k,1234) = -rxt(k,171)*y(k,67) + mat(k,932) = -(rxt(k,354) + rxt(k,360) + rxt(k,365)) * y(k,67) + mat(k,870) = rxt(k,158)*y(k,134) + mat(k,447) = rxt(k,163)*y(k,139) + mat(k,1007) = rxt(k,158)*y(k,41) + mat(k,1234) = mat(k,1234) + rxt(k,163)*y(k,42) + mat(k,518) = -(rxt(k,272)*y(k,139)) + mat(k,1246) = -rxt(k,272)*y(k,68) + mat(k,277) = .500_r8*rxt(k,298)*y(k,139) + mat(k,836) = .020_r8*rxt(k,312)*y(k,135) + .220_r8*rxt(k,287)*y(k,136) & + + .250_r8*rxt(k,322)*y(k,142) + mat(k,1121) = .220_r8*rxt(k,286)*y(k,136) + .250_r8*rxt(k,323)*y(k,142) + mat(k,262) = .500_r8*rxt(k,276)*y(k,139) + mat(k,691) = .220_r8*rxt(k,283)*y(k,136) + .250_r8*rxt(k,319)*y(k,142) + mat(k,765) = .230_r8*rxt(k,284)*y(k,136) + .200_r8*rxt(k,277)*y(k,141) & + + .100_r8*rxt(k,320)*y(k,142) + mat(k,622) = .020_r8*rxt(k,312)*y(k,87) + mat(k,647) = .220_r8*rxt(k,287)*y(k,87) + .220_r8*rxt(k,286)*y(k,89) & + + .220_r8*rxt(k,283)*y(k,130) + .230_r8*rxt(k,284)*y(k,131) + mat(k,1246) = mat(k,1246) + .500_r8*rxt(k,298)*y(k,75) + .500_r8*rxt(k,276) & + *y(k,108) + mat(k,485) = .200_r8*rxt(k,277)*y(k,131) + mat(k,590) = .250_r8*rxt(k,322)*y(k,87) + .250_r8*rxt(k,323)*y(k,89) & + + .250_r8*rxt(k,319)*y(k,130) + .100_r8*rxt(k,320)*y(k,131) + mat(k,157) = -(rxt(k,304)*y(k,139)) + mat(k,1206) = -rxt(k,304)*y(k,69) + mat(k,823) = .330_r8*rxt(k,312)*y(k,135) + mat(k,1109) = rxt(k,317)*y(k,104) + .400_r8*rxt(k,313)*y(k,135) + mat(k,471) = rxt(k,317)*y(k,89) + rxt(k,318)*y(k,139) + mat(k,685) = .400_r8*rxt(k,309)*y(k,135) + mat(k,755) = .300_r8*rxt(k,310)*y(k,135) + mat(k,616) = .330_r8*rxt(k,312)*y(k,87) + .400_r8*rxt(k,313)*y(k,89) & + + .400_r8*rxt(k,309)*y(k,130) + .300_r8*rxt(k,310)*y(k,131) + mat(k,1206) = mat(k,1206) + rxt(k,318)*y(k,104) + mat(k,430) = -(rxt(k,305)*y(k,89) + rxt(k,314)*y(k,100) + rxt(k,315)*y(k,139)) + mat(k,1116) = -rxt(k,305)*y(k,70) + mat(k,1052) = -rxt(k,314)*y(k,70) + mat(k,1238) = -rxt(k,315)*y(k,70) + mat(k,361) = -(rxt(k,306)*y(k,134) + rxt(k,307)*y(k,87) + rxt(k,308)*y(k,89)) + mat(k,1004) = -rxt(k,306)*y(k,71) + mat(k,829) = -rxt(k,307)*y(k,71) + mat(k,1114) = -rxt(k,308)*y(k,71) + mat(k,429) = rxt(k,305)*y(k,89) + mat(k,1114) = mat(k,1114) + rxt(k,305)*y(k,70) + mat(k,244) = -(rxt(k,316)*y(k,139)) + mat(k,1218) = -rxt(k,316)*y(k,72) + mat(k,996) = rxt(k,311)*y(k,135) + mat(k,618) = rxt(k,311)*y(k,134) + mat(k,569) = -(rxt(k,289)*y(k,100) + rxt(k,290)*y(k,139)) + mat(k,1062) = -rxt(k,289)*y(k,73) + mat(k,1250) = -rxt(k,290)*y(k,73) + mat(k,433) = .300_r8*rxt(k,314)*y(k,100) + mat(k,363) = .167_r8*rxt(k,307)*y(k,87) + .167_r8*rxt(k,308)*y(k,89) & + + .167_r8*rxt(k,306)*y(k,134) + mat(k,839) = .167_r8*rxt(k,307)*y(k,71) + .230_r8*rxt(k,312)*y(k,135) + mat(k,1125) = .167_r8*rxt(k,308)*y(k,71) + .250_r8*rxt(k,313)*y(k,135) + mat(k,1062) = mat(k,1062) + .300_r8*rxt(k,314)*y(k,70) + 1.122_r8*rxt(k,326) & + *y(k,124) + mat(k,302) = 1.122_r8*rxt(k,326)*y(k,100) + mat(k,693) = .250_r8*rxt(k,309)*y(k,135) + mat(k,768) = .190_r8*rxt(k,310)*y(k,135) + mat(k,1017) = .167_r8*rxt(k,306)*y(k,71) + mat(k,624) = .230_r8*rxt(k,312)*y(k,87) + .250_r8*rxt(k,313)*y(k,89) & + + .250_r8*rxt(k,309)*y(k,130) + .190_r8*rxt(k,310)*y(k,131) + mat(k,142) = -(rxt(k,291)*y(k,139)) + mat(k,1204) = -rxt(k,291)*y(k,74) + mat(k,989) = rxt(k,285)*y(k,136) + mat(k,644) = rxt(k,285)*y(k,134) + mat(k,275) = -(rxt(k,298)*y(k,139)) + mat(k,1222) = -rxt(k,298)*y(k,75) + mat(k,897) = rxt(k,301)*y(k,137) + mat(k,665) = rxt(k,301)*y(k,88) + mat(k,738) = -(rxt(k,299)*y(k,100) + rxt(k,300)*y(k,139)) + mat(k,1071) = -rxt(k,299)*y(k,76) + mat(k,1259) = -rxt(k,300)*y(k,76) + mat(k,437) = .200_r8*rxt(k,314)*y(k,100) + mat(k,364) = .039_r8*rxt(k,307)*y(k,87) + .039_r8*rxt(k,308)*y(k,89) & + + .039_r8*rxt(k,306)*y(k,134) + mat(k,847) = .039_r8*rxt(k,307)*y(k,71) + .320_r8*rxt(k,312)*y(k,135) + mat(k,1134) = .039_r8*rxt(k,308)*y(k,71) + .350_r8*rxt(k,313)*y(k,135) + mat(k,1071) = mat(k,1071) + .200_r8*rxt(k,314)*y(k,70) + .442_r8*rxt(k,326) & + *y(k,124) + mat(k,304) = .442_r8*rxt(k,326)*y(k,100) + mat(k,701) = .350_r8*rxt(k,309)*y(k,135) + mat(k,776) = .260_r8*rxt(k,310)*y(k,135) + mat(k,1025) = .039_r8*rxt(k,306)*y(k,71) + mat(k,632) = .320_r8*rxt(k,312)*y(k,87) + .350_r8*rxt(k,313)*y(k,89) & + + .350_r8*rxt(k,309)*y(k,130) + .260_r8*rxt(k,310)*y(k,131) + mat(k,311) = -(rxt(k,123)*y(k,87) + (rxt(k,124) + rxt(k,125) + rxt(k,126) & + ) * y(k,88) + rxt(k,127)*y(k,97) + rxt(k,135)*y(k,139)) + mat(k,825) = -rxt(k,123)*y(k,77) + mat(k,898) = -(rxt(k,124) + rxt(k,125) + rxt(k,126)) * y(k,77) + mat(k,1336) = -rxt(k,127)*y(k,77) + mat(k,1226) = -rxt(k,135)*y(k,77) + mat(k,111) = -((rxt(k,139) + rxt(k,140)) * y(k,138)) + mat(k,1166) = -(rxt(k,139) + rxt(k,140)) * y(k,78) + mat(k,310) = rxt(k,124)*y(k,88) + mat(k,892) = rxt(k,124)*y(k,77) + end do + end subroutine nlnmat03 + subroutine nlnmat04( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,893) = rxt(k,142)*y(k,89) + mat(k,1107) = rxt(k,142)*y(k,88) + mat(k,43) = -(rxt(k,345)*y(k,139)) + mat(k,1193) = -rxt(k,345)*y(k,83) + mat(k,851) = -(rxt(k,123)*y(k,77) + rxt(k,132)*y(k,89) + rxt(k,136)*y(k,134) & + + rxt(k,137)*y(k,100) + rxt(k,138)*y(k,96) + rxt(k,159)*y(k,41) & + + rxt(k,191)*y(k,6) + rxt(k,227)*y(k,131) + rxt(k,240)*y(k,128) & + + rxt(k,250)*y(k,130) + rxt(k,254)*y(k,133) + rxt(k,267) & + *y(k,129) + rxt(k,275)*y(k,140) + rxt(k,279)*y(k,141) + (rxt(k,287) & + + rxt(k,288)) * y(k,136) + rxt(k,296)*y(k,137) + rxt(k,307) & + *y(k,71) + rxt(k,312)*y(k,135) + rxt(k,322)*y(k,142)) + mat(k,313) = -rxt(k,123)*y(k,87) + mat(k,1138) = -rxt(k,132)*y(k,87) + mat(k,1029) = -rxt(k,136)*y(k,87) + mat(k,1075) = -rxt(k,137)*y(k,87) + mat(k,1295) = -rxt(k,138)*y(k,87) + mat(k,877) = -rxt(k,159)*y(k,87) + mat(k,1318) = -rxt(k,191)*y(k,87) + mat(k,780) = -rxt(k,227)*y(k,87) + mat(k,389) = -rxt(k,240)*y(k,87) + mat(k,704) = -rxt(k,250)*y(k,87) + mat(k,356) = -rxt(k,254)*y(k,87) + mat(k,423) = -rxt(k,267)*y(k,87) + mat(k,376) = -rxt(k,275)*y(k,87) + mat(k,490) = -rxt(k,279)*y(k,87) + mat(k,657) = -(rxt(k,287) + rxt(k,288)) * y(k,87) + mat(k,676) = -rxt(k,296)*y(k,87) + mat(k,366) = -rxt(k,307)*y(k,87) + mat(k,635) = -rxt(k,312)*y(k,87) + mat(k,598) = -rxt(k,322)*y(k,87) + mat(k,313) = mat(k,313) + 2.000_r8*rxt(k,125)*y(k,88) + rxt(k,127)*y(k,97) & + + rxt(k,135)*y(k,139) + mat(k,112) = 2.000_r8*rxt(k,139)*y(k,138) + mat(k,914) = 2.000_r8*rxt(k,125)*y(k,77) + rxt(k,128)*y(k,96) + rxt(k,338) & + *y(k,112) + mat(k,1295) = mat(k,1295) + rxt(k,128)*y(k,88) + mat(k,1344) = rxt(k,127)*y(k,77) + mat(k,718) = rxt(k,338)*y(k,88) + mat(k,1177) = 2.000_r8*rxt(k,139)*y(k,78) + mat(k,1263) = rxt(k,135)*y(k,77) + mat(k,916) = -((rxt(k,124) + rxt(k,125) + rxt(k,126)) * y(k,77) + (rxt(k,128) & + + rxt(k,130)) * y(k,96) + rxt(k,129)*y(k,100) + rxt(k,141) & + *y(k,134) + rxt(k,142)*y(k,89) + rxt(k,143)*y(k,139) + rxt(k,161) & + *y(k,41) + rxt(k,192)*y(k,6) + rxt(k,261)*y(k,130) + rxt(k,301) & + *y(k,137) + rxt(k,338)*y(k,112)) + mat(k,314) = -(rxt(k,124) + rxt(k,125) + rxt(k,126)) * y(k,88) + mat(k,1297) = -(rxt(k,128) + rxt(k,130)) * y(k,88) + mat(k,1077) = -rxt(k,129)*y(k,88) + mat(k,1031) = -rxt(k,141)*y(k,88) + mat(k,1140) = -rxt(k,142)*y(k,88) + mat(k,1265) = -rxt(k,143)*y(k,88) + mat(k,879) = -rxt(k,161)*y(k,88) + mat(k,1320) = -rxt(k,192)*y(k,88) + mat(k,705) = -rxt(k,261)*y(k,88) + mat(k,677) = -rxt(k,301)*y(k,88) + mat(k,720) = -rxt(k,338)*y(k,88) + mat(k,1320) = mat(k,1320) + rxt(k,191)*y(k,87) + mat(k,879) = mat(k,879) + rxt(k,159)*y(k,87) + mat(k,219) = rxt(k,122)*y(k,139) + mat(k,367) = 1.206_r8*rxt(k,307)*y(k,87) + 1.206_r8*rxt(k,308)*y(k,89) & + + .206_r8*rxt(k,306)*y(k,134) + mat(k,853) = rxt(k,191)*y(k,6) + rxt(k,159)*y(k,41) + 1.206_r8*rxt(k,307) & + *y(k,71) + 2.000_r8*rxt(k,132)*y(k,89) + rxt(k,138)*y(k,96) & + + rxt(k,137)*y(k,100) + rxt(k,240)*y(k,128) + rxt(k,267) & + *y(k,129) + rxt(k,250)*y(k,130) + rxt(k,227)*y(k,131) & + + rxt(k,254)*y(k,133) + rxt(k,136)*y(k,134) + .920_r8*rxt(k,312) & + *y(k,135) + rxt(k,287)*y(k,136) + rxt(k,296)*y(k,137) & + + rxt(k,275)*y(k,140) + rxt(k,279)*y(k,141) + rxt(k,322) & + *y(k,142) + mat(k,1140) = mat(k,1140) + 1.206_r8*rxt(k,308)*y(k,71) + 2.000_r8*rxt(k,132) & + *y(k,87) + rxt(k,133)*y(k,96) + rxt(k,317)*y(k,104) + rxt(k,325) & + *y(k,124) + rxt(k,131)*y(k,134) + rxt(k,313)*y(k,135) & + + rxt(k,286)*y(k,136) + rxt(k,297)*y(k,137) + rxt(k,134) & + *y(k,139) + rxt(k,323)*y(k,142) + mat(k,186) = rxt(k,273)*y(k,139) + mat(k,1297) = mat(k,1297) + rxt(k,138)*y(k,87) + rxt(k,133)*y(k,89) + mat(k,1077) = mat(k,1077) + rxt(k,137)*y(k,87) + mat(k,477) = rxt(k,317)*y(k,89) + .400_r8*rxt(k,318)*y(k,139) + mat(k,305) = rxt(k,325)*y(k,89) + mat(k,390) = rxt(k,240)*y(k,87) + mat(k,424) = rxt(k,267)*y(k,87) + mat(k,705) = mat(k,705) + rxt(k,250)*y(k,87) + mat(k,782) = rxt(k,227)*y(k,87) + mat(k,357) = rxt(k,254)*y(k,87) + mat(k,1031) = mat(k,1031) + .206_r8*rxt(k,306)*y(k,71) + rxt(k,136)*y(k,87) & + + rxt(k,131)*y(k,89) + mat(k,636) = .920_r8*rxt(k,312)*y(k,87) + rxt(k,313)*y(k,89) + mat(k,658) = rxt(k,287)*y(k,87) + rxt(k,286)*y(k,89) + mat(k,677) = mat(k,677) + rxt(k,296)*y(k,87) + rxt(k,297)*y(k,89) + mat(k,1265) = mat(k,1265) + rxt(k,122)*y(k,65) + rxt(k,134)*y(k,89) & + + rxt(k,273)*y(k,90) + .400_r8*rxt(k,318)*y(k,104) + mat(k,377) = rxt(k,275)*y(k,87) + mat(k,491) = rxt(k,279)*y(k,87) + mat(k,599) = rxt(k,322)*y(k,87) + rxt(k,323)*y(k,89) + mat(k,1146) = -(rxt(k,131)*y(k,134) + rxt(k,132)*y(k,87) + rxt(k,133)*y(k,96) & + + rxt(k,134)*y(k,139) + rxt(k,142)*y(k,88) + rxt(k,221)*y(k,25) & + + rxt(k,245)*y(k,28) + rxt(k,263)*y(k,13) + rxt(k,270)*y(k,31) & + + rxt(k,286)*y(k,136) + rxt(k,297)*y(k,137) + rxt(k,305)*y(k,70) & + + rxt(k,308)*y(k,71) + rxt(k,313)*y(k,135) + rxt(k,317)*y(k,104) & + + rxt(k,323)*y(k,142) + rxt(k,325)*y(k,124) + rxt(k,328)*y(k,46)) + mat(k,1037) = -rxt(k,131)*y(k,89) + mat(k,859) = -rxt(k,132)*y(k,89) + mat(k,1303) = -rxt(k,133)*y(k,89) + mat(k,1271) = -rxt(k,134)*y(k,89) + mat(k,922) = -rxt(k,142)*y(k,89) + mat(k,816) = -rxt(k,221)*y(k,89) + mat(k,531) = -rxt(k,245)*y(k,89) + mat(k,554) = -rxt(k,263)*y(k,89) + mat(k,611) = -rxt(k,270)*y(k,89) + mat(k,660) = -rxt(k,286)*y(k,89) + mat(k,680) = -rxt(k,297)*y(k,89) + mat(k,444) = -rxt(k,305)*y(k,89) + mat(k,369) = -rxt(k,308)*y(k,89) + mat(k,639) = -rxt(k,313)*y(k,89) + mat(k,479) = -rxt(k,317)*y(k,89) + mat(k,601) = -rxt(k,323)*y(k,89) + mat(k,307) = -rxt(k,325)*y(k,89) + mat(k,140) = -rxt(k,328)*y(k,89) + mat(k,237) = rxt(k,193)*y(k,96) + mat(k,980) = rxt(k,160)*y(k,42) + mat(k,454) = rxt(k,160)*y(k,38) + rxt(k,162)*y(k,96) + rxt(k,163)*y(k,139) + mat(k,412) = rxt(k,144)*y(k,139) + mat(k,282) = .500_r8*rxt(k,298)*y(k,139) + mat(k,922) = mat(k,922) + rxt(k,130)*y(k,96) + rxt(k,129)*y(k,100) + mat(k,1303) = mat(k,1303) + rxt(k,193)*y(k,7) + rxt(k,162)*y(k,42) & + + rxt(k,130)*y(k,88) + mat(k,1083) = rxt(k,129)*y(k,88) + mat(k,258) = rxt(k,259)*y(k,139) + mat(k,1271) = mat(k,1271) + rxt(k,163)*y(k,42) + rxt(k,144)*y(k,64) & + + .500_r8*rxt(k,298)*y(k,75) + rxt(k,259)*y(k,105) + mat(k,182) = -(rxt(k,273)*y(k,139)) + mat(k,1210) = -rxt(k,273)*y(k,90) + mat(k,534) = rxt(k,263)*y(k,89) + mat(k,1110) = rxt(k,263)*y(k,13) + mat(k,1306) = -(rxt(k,102)*y(k,100) + 4._r8*rxt(k,103)*y(k,96) + rxt(k,104) & + *y(k,97) + rxt(k,105)*y(k,55) + rxt(k,106)*y(k,57) + rxt(k,111) & + *y(k,134) + rxt(k,117)*y(k,139) + (rxt(k,128) + rxt(k,130) & + ) * y(k,88) + rxt(k,133)*y(k,89) + rxt(k,138)*y(k,87) + rxt(k,162) & + *y(k,42) + rxt(k,164)*y(k,41) + rxt(k,167)*y(k,63) + rxt(k,170) & + *y(k,67) + rxt(k,193)*y(k,7) + rxt(k,194)*y(k,6) + rxt(k,196) & + *y(k,59) + rxt(k,198)*y(k,66) + rxt(k,222)*y(k,25) + rxt(k,330) & + *y(k,103)) + mat(k,1086) = -rxt(k,102)*y(k,96) + mat(k,1355) = -rxt(k,104)*y(k,96) + mat(k,501) = -rxt(k,105)*y(k,96) + mat(k,273) = -rxt(k,106)*y(k,96) + mat(k,1040) = -rxt(k,111)*y(k,96) + mat(k,1274) = -rxt(k,117)*y(k,96) + mat(k,925) = -(rxt(k,128) + rxt(k,130)) * y(k,96) + mat(k,1149) = -rxt(k,133)*y(k,96) + mat(k,862) = -rxt(k,138)*y(k,96) + mat(k,456) = -rxt(k,162)*y(k,96) + mat(k,888) = -rxt(k,164)*y(k,96) + mat(k,946) = -rxt(k,167)*y(k,96) + mat(k,400) = -rxt(k,170)*y(k,96) + mat(k,238) = -rxt(k,193)*y(k,96) + mat(k,1329) = -rxt(k,194)*y(k,96) + mat(k,407) = -rxt(k,196)*y(k,96) + mat(k,342) = -rxt(k,198)*y(k,96) + mat(k,819) = -rxt(k,222)*y(k,96) + mat(k,167) = -rxt(k,330)*y(k,96) + mat(k,801) = rxt(k,109)*y(k,134) + mat(k,317) = rxt(k,123)*y(k,87) + rxt(k,124)*y(k,88) + rxt(k,127)*y(k,97) + mat(k,862) = mat(k,862) + rxt(k,123)*y(k,77) + mat(k,925) = mat(k,925) + rxt(k,124)*y(k,77) + mat(k,1355) = mat(k,1355) + rxt(k,127)*y(k,77) + rxt(k,332)*y(k,110) & + + rxt(k,339)*y(k,112) + (rxt(k,90)+rxt(k,91))*y(k,138) + mat(k,1086) = mat(k,1086) + .765_r8*rxt(k,326)*y(k,124) + 2.000_r8*rxt(k,93) & + *y(k,138) + mat(k,329) = rxt(k,332)*y(k,97) + mat(k,726) = rxt(k,339)*y(k,97) + mat(k,309) = .765_r8*rxt(k,326)*y(k,100) + mat(k,1040) = mat(k,1040) + rxt(k,109)*y(k,54) + mat(k,1188) = (rxt(k,90)+rxt(k,91))*y(k,97) + 2.000_r8*rxt(k,93)*y(k,100) + mat(k,1274) = mat(k,1274) + 2.000_r8*rxt(k,119)*y(k,139) + mat(k,1357) = -(rxt(k,90)*y(k,138) + rxt(k,96)*y(k,98) + rxt(k,104)*y(k,96) & + + rxt(k,110)*y(k,54) + rxt(k,127)*y(k,77) + rxt(k,256)*y(k,132) & + + rxt(k,332)*y(k,110) + rxt(k,339)*y(k,112)) + mat(k,1190) = -rxt(k,90)*y(k,97) + mat(k,88) = -rxt(k,96)*y(k,97) + mat(k,1308) = -rxt(k,104)*y(k,97) + mat(k,802) = -rxt(k,110)*y(k,97) + mat(k,318) = -rxt(k,127)*y(k,97) + mat(k,210) = -rxt(k,256)*y(k,97) + mat(k,330) = -rxt(k,332)*y(k,97) + mat(k,728) = -rxt(k,339)*y(k,97) + mat(k,1105) = rxt(k,185)*y(k,100) + rxt(k,184)*y(k,134) + mat(k,1331) = 2.000_r8*rxt(k,186)*y(k,6) + (rxt(k,188)+rxt(k,189))*y(k,41) & + + rxt(k,194)*y(k,96) + rxt(k,190)*y(k,134) + mat(k,985) = rxt(k,153)*y(k,100) + rxt(k,151)*y(k,134) + mat(k,890) = (rxt(k,188)+rxt(k,189))*y(k,6) + (2.000_r8*rxt(k,155) & + +2.000_r8*rxt(k,156))*y(k,41) + rxt(k,164)*y(k,96) + rxt(k,158) & + *y(k,134) + rxt(k,166)*y(k,139) + mat(k,802) = mat(k,802) + rxt(k,113)*y(k,100) + rxt(k,107)*y(k,134) + mat(k,223) = rxt(k,122)*y(k,139) + mat(k,318) = mat(k,318) + rxt(k,126)*y(k,88) + mat(k,114) = rxt(k,140)*y(k,138) + mat(k,864) = rxt(k,137)*y(k,100) + mat(k,927) = rxt(k,126)*y(k,77) + rxt(k,128)*y(k,96) + rxt(k,129)*y(k,100) + mat(k,1151) = rxt(k,133)*y(k,96) + rxt(k,131)*y(k,134) + mat(k,1308) = mat(k,1308) + rxt(k,194)*y(k,6) + rxt(k,164)*y(k,41) & + + rxt(k,128)*y(k,88) + rxt(k,133)*y(k,89) + 2.000_r8*rxt(k,103) & + *y(k,96) + rxt(k,95)*y(k,98) + 2.000_r8*rxt(k,102)*y(k,100) & + + rxt(k,111)*y(k,134) + rxt(k,117)*y(k,139) + mat(k,1357) = mat(k,1357) + 2.000_r8*rxt(k,96)*y(k,98) + mat(k,88) = mat(k,88) + rxt(k,95)*y(k,96) + 2.000_r8*rxt(k,96)*y(k,97) + mat(k,1088) = rxt(k,185)*y(k,4) + rxt(k,153)*y(k,38) + rxt(k,113)*y(k,54) & + + rxt(k,137)*y(k,87) + rxt(k,129)*y(k,88) + 2.000_r8*rxt(k,102) & + *y(k,96) + rxt(k,334)*y(k,110) + rxt(k,340)*y(k,112) & + + 2.000_r8*rxt(k,112)*y(k,134) + (2.000_r8*rxt(k,92)+rxt(k,93)) & + *y(k,138) + rxt(k,118)*y(k,139) + mat(k,330) = mat(k,330) + rxt(k,334)*y(k,100) + mat(k,728) = mat(k,728) + rxt(k,340)*y(k,100) + mat(k,393) = rxt(k,239)*y(k,134) + mat(k,427) = rxt(k,266)*y(k,134) + mat(k,791) = rxt(k,226)*y(k,134) + mat(k,1042) = rxt(k,184)*y(k,4) + rxt(k,190)*y(k,6) + rxt(k,151)*y(k,38) & + + rxt(k,158)*y(k,41) + rxt(k,107)*y(k,54) + rxt(k,131)*y(k,89) & + + rxt(k,111)*y(k,96) + 2.000_r8*rxt(k,112)*y(k,100) + rxt(k,239) & + *y(k,128) + rxt(k,266)*y(k,129) + rxt(k,226)*y(k,131) & + + 2.000_r8*rxt(k,121)*y(k,134) + rxt(k,116)*y(k,139) & + + rxt(k,274)*y(k,140) + mat(k,1190) = mat(k,1190) + rxt(k,140)*y(k,78) + (2.000_r8*rxt(k,92) & + +rxt(k,93))*y(k,100) + mat(k,1276) = rxt(k,166)*y(k,41) + rxt(k,122)*y(k,65) + rxt(k,117)*y(k,96) & + + rxt(k,118)*y(k,100) + rxt(k,116)*y(k,134) + mat(k,380) = rxt(k,274)*y(k,134) + end do + end subroutine nlnmat04 + subroutine nlnmat05( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,87) = -(rxt(k,95)*y(k,96) + rxt(k,96)*y(k,97)) + mat(k,1278) = -rxt(k,95)*y(k,98) + mat(k,1333) = -rxt(k,96)*y(k,98) + mat(k,458) = rxt(k,97)*y(k,99) + mat(k,1278) = mat(k,1278) + rxt(k,99)*y(k,99) + mat(k,1333) = mat(k,1333) + rxt(k,100)*y(k,99) + mat(k,89) = rxt(k,97)*y(k,45) + rxt(k,99)*y(k,96) + rxt(k,100)*y(k,97) & + + rxt(k,101)*y(k,100) + mat(k,1044) = rxt(k,101)*y(k,99) + mat(k,90) = -(rxt(k,97)*y(k,45) + rxt(k,99)*y(k,96) + rxt(k,100)*y(k,97) & + + rxt(k,101)*y(k,100)) + mat(k,459) = -rxt(k,97)*y(k,99) + mat(k,1279) = -rxt(k,99)*y(k,99) + mat(k,1334) = -rxt(k,100)*y(k,99) + mat(k,1045) = -rxt(k,101)*y(k,99) + mat(k,1334) = mat(k,1334) + rxt(k,90)*y(k,138) + mat(k,1162) = rxt(k,90)*y(k,97) + mat(k,1081) = -((rxt(k,92) + rxt(k,93)) * y(k,138) + rxt(k,102)*y(k,96) & + + rxt(k,112)*y(k,134) + rxt(k,113)*y(k,54) + rxt(k,118)*y(k,139) & + + rxt(k,129)*y(k,88) + rxt(k,137)*y(k,87) + rxt(k,153)*y(k,38) & + + rxt(k,185)*y(k,4) + rxt(k,236)*y(k,9) + rxt(k,264)*y(k,13) & + + rxt(k,289)*y(k,73) + rxt(k,299)*y(k,76) + rxt(k,314)*y(k,70) & + + rxt(k,326)*y(k,124) + rxt(k,334)*y(k,110) + rxt(k,340) & + *y(k,112)) + mat(k,1183) = -(rxt(k,92) + rxt(k,93)) * y(k,100) + mat(k,1301) = -rxt(k,102)*y(k,100) + mat(k,1035) = -rxt(k,112)*y(k,100) + mat(k,798) = -rxt(k,113)*y(k,100) + mat(k,1269) = -rxt(k,118)*y(k,100) + mat(k,920) = -rxt(k,129)*y(k,100) + mat(k,857) = -rxt(k,137)*y(k,100) + mat(k,978) = -rxt(k,153)*y(k,100) + mat(k,1098) = -rxt(k,185)*y(k,100) + mat(k,216) = -rxt(k,236)*y(k,100) + mat(k,553) = -rxt(k,264)*y(k,100) + mat(k,577) = -rxt(k,289)*y(k,100) + mat(k,747) = -rxt(k,299)*y(k,100) + mat(k,443) = -rxt(k,314)*y(k,100) + mat(k,306) = -rxt(k,326)*y(k,100) + mat(k,327) = -rxt(k,334)*y(k,100) + mat(k,723) = -rxt(k,340)*y(k,100) + mat(k,1301) = mat(k,1301) + rxt(k,104)*y(k,97) + mat(k,1350) = rxt(k,104)*y(k,96) + mat(k,707) = .150_r8*rxt(k,249)*y(k,134) + mat(k,1035) = mat(k,1035) + .150_r8*rxt(k,249)*y(k,130) + .150_r8*rxt(k,294) & + *y(k,137) + mat(k,679) = .150_r8*rxt(k,294)*y(k,134) + mat(k,152) = -(rxt(k,341)*y(k,112)) + mat(k,713) = -rxt(k,341)*y(k,102) + mat(k,1311) = rxt(k,187)*y(k,41) + mat(k,869) = rxt(k,187)*y(k,6) + 2.000_r8*rxt(k,157)*y(k,41) + mat(k,160) = -(rxt(k,330)*y(k,96) + rxt(k,331)*y(k,139)) + mat(k,1280) = -rxt(k,330)*y(k,103) + mat(k,1207) = -rxt(k,331)*y(k,103) + mat(k,473) = -(rxt(k,317)*y(k,89) + rxt(k,318)*y(k,139)) + mat(k,1119) = -rxt(k,317)*y(k,104) + mat(k,1242) = -rxt(k,318)*y(k,104) + mat(k,362) = .794_r8*rxt(k,307)*y(k,87) + .794_r8*rxt(k,308)*y(k,89) & + + .794_r8*rxt(k,306)*y(k,134) + mat(k,834) = .794_r8*rxt(k,307)*y(k,71) + .080_r8*rxt(k,312)*y(k,135) & + + .800_r8*rxt(k,288)*y(k,136) + mat(k,1119) = mat(k,1119) + .794_r8*rxt(k,308)*y(k,71) + mat(k,1011) = .794_r8*rxt(k,306)*y(k,71) + mat(k,621) = .080_r8*rxt(k,312)*y(k,87) + mat(k,646) = .800_r8*rxt(k,288)*y(k,87) + mat(k,252) = -(rxt(k,259)*y(k,139)) + mat(k,1219) = -rxt(k,259)*y(k,105) + mat(k,896) = rxt(k,261)*y(k,130) + mat(k,686) = rxt(k,261)*y(k,88) + mat(k,260) = -(rxt(k,276)*y(k,139)) + mat(k,1220) = -rxt(k,276)*y(k,108) + mat(k,997) = rxt(k,274)*y(k,140) + mat(k,371) = rxt(k,274)*y(k,134) + mat(k,200) = -(rxt(k,280)*y(k,139)) + mat(k,1213) = -rxt(k,280)*y(k,109) + mat(k,993) = .850_r8*rxt(k,278)*y(k,141) + mat(k,482) = .850_r8*rxt(k,278)*y(k,134) + mat(k,324) = -(rxt(k,332)*y(k,97) + rxt(k,334)*y(k,100) + rxt(k,337)*y(k,139)) + mat(k,1337) = -rxt(k,332)*y(k,110) + mat(k,1049) = -rxt(k,334)*y(k,110) + mat(k,1228) = -rxt(k,337)*y(k,110) + mat(k,716) = -(rxt(k,335)*y(k,6) + rxt(k,336)*y(k,41) + rxt(k,338)*y(k,88) & + + rxt(k,339)*y(k,97) + rxt(k,340)*y(k,100) + rxt(k,341)*y(k,102) & + + rxt(k,342)*y(k,139)) + mat(k,1316) = -rxt(k,335)*y(k,112) + mat(k,873) = -rxt(k,336)*y(k,112) + mat(k,909) = -rxt(k,338)*y(k,112) + mat(k,1341) = -rxt(k,339)*y(k,112) + mat(k,1070) = -rxt(k,340)*y(k,112) + mat(k,154) = -rxt(k,341)*y(k,112) + mat(k,1258) = -rxt(k,342)*y(k,112) + mat(k,1292) = rxt(k,330)*y(k,103) + mat(k,1341) = mat(k,1341) + rxt(k,332)*y(k,110) + mat(k,1070) = mat(k,1070) + rxt(k,334)*y(k,110) + mat(k,164) = rxt(k,330)*y(k,96) + mat(k,325) = rxt(k,332)*y(k,97) + rxt(k,334)*y(k,100) + rxt(k,337)*y(k,139) + mat(k,1258) = mat(k,1258) + rxt(k,337)*y(k,110) + mat(k,465) = -(rxt(k,333)*y(k,139)) + mat(k,1241) = -rxt(k,333)*y(k,113) + mat(k,1315) = rxt(k,335)*y(k,112) + mat(k,872) = rxt(k,336)*y(k,112) + mat(k,138) = rxt(k,328)*y(k,89) + (rxt(k,329)+.500_r8*rxt(k,343))*y(k,139) + mat(k,903) = rxt(k,338)*y(k,112) + mat(k,1118) = rxt(k,328)*y(k,46) + mat(k,1338) = rxt(k,339)*y(k,112) + mat(k,1054) = rxt(k,340)*y(k,112) + mat(k,153) = rxt(k,341)*y(k,112) + mat(k,162) = rxt(k,331)*y(k,139) + mat(k,715) = rxt(k,335)*y(k,6) + rxt(k,336)*y(k,41) + rxt(k,338)*y(k,88) & + + rxt(k,339)*y(k,97) + rxt(k,340)*y(k,100) + rxt(k,341)*y(k,102) & + + rxt(k,342)*y(k,139) + mat(k,1241) = mat(k,1241) + (rxt(k,329)+.500_r8*rxt(k,343))*y(k,46) & + + rxt(k,331)*y(k,103) + rxt(k,342)*y(k,112) + mat(k,120) = -(rxt(k,344)*y(k,143)) + mat(k,1360) = -rxt(k,344)*y(k,114) + mat(k,464) = rxt(k,333)*y(k,139) + mat(k,1201) = rxt(k,333)*y(k,113) + mat(k,300) = -(rxt(k,325)*y(k,89) + rxt(k,326)*y(k,100) + rxt(k,327)*y(k,139)) + mat(k,1111) = -rxt(k,325)*y(k,124) + mat(k,1047) = -rxt(k,326)*y(k,124) + mat(k,1225) = -rxt(k,327)*y(k,124) + mat(k,100) = -(rxt(k,324)*y(k,139)) + mat(k,1198) = -rxt(k,324)*y(k,125) + mat(k,988) = rxt(k,321)*y(k,142) + mat(k,586) = rxt(k,321)*y(k,134) + mat(k,385) = -(4._r8*rxt(k,237)*y(k,128) + rxt(k,238)*y(k,131) + rxt(k,239) & + *y(k,134) + rxt(k,240)*y(k,87)) + mat(k,761) = -rxt(k,238)*y(k,128) + mat(k,1006) = -rxt(k,239)*y(k,128) + mat(k,831) = -rxt(k,240)*y(k,128) + mat(k,148) = .500_r8*rxt(k,242)*y(k,139) + mat(k,131) = rxt(k,243)*y(k,38) + rxt(k,244)*y(k,139) + mat(k,959) = rxt(k,243)*y(k,12) + mat(k,1233) = .500_r8*rxt(k,242)*y(k,11) + rxt(k,244)*y(k,12) + mat(k,417) = -(rxt(k,265)*y(k,131) + rxt(k,266)*y(k,134) + rxt(k,267)*y(k,87)) + mat(k,762) = -rxt(k,265)*y(k,129) + mat(k,1009) = -rxt(k,266)*y(k,129) + mat(k,832) = -rxt(k,267)*y(k,129) + mat(k,38) = 1.670_r8*rxt(k,303)*y(k,139) + mat(k,178) = rxt(k,268)*y(k,139) + mat(k,68) = rxt(k,269)*y(k,139) + mat(k,1237) = 1.670_r8*rxt(k,303)*y(k,3) + rxt(k,268)*y(k,14) + rxt(k,269) & + *y(k,15) + mat(k,700) = -(4._r8*rxt(k,247)*y(k,130) + rxt(k,248)*y(k,131) + rxt(k,249) & + *y(k,134) + rxt(k,250)*y(k,87) + rxt(k,261)*y(k,88) + rxt(k,283) & + *y(k,136) + rxt(k,309)*y(k,135) + rxt(k,319)*y(k,142)) + mat(k,775) = -rxt(k,248)*y(k,130) + mat(k,1024) = -rxt(k,249)*y(k,130) + mat(k,846) = -rxt(k,250)*y(k,130) + mat(k,908) = -rxt(k,261)*y(k,130) + mat(k,654) = -rxt(k,283)*y(k,130) + mat(k,631) = -rxt(k,309)*y(k,130) + mat(k,595) = -rxt(k,319)*y(k,130) + mat(k,527) = rxt(k,245)*y(k,89) + rxt(k,246)*y(k,139) + mat(k,608) = rxt(k,270)*y(k,89) + rxt(k,271)*y(k,139) + mat(k,286) = .500_r8*rxt(k,252)*y(k,139) + mat(k,436) = .080_r8*rxt(k,314)*y(k,100) + mat(k,574) = .100_r8*rxt(k,289)*y(k,100) + mat(k,737) = .280_r8*rxt(k,299)*y(k,100) + mat(k,846) = mat(k,846) + .530_r8*rxt(k,287)*y(k,136) + rxt(k,296)*y(k,137) & + + rxt(k,279)*y(k,141) + mat(k,1132) = rxt(k,245)*y(k,28) + rxt(k,270)*y(k,31) + .530_r8*rxt(k,286) & + *y(k,136) + rxt(k,297)*y(k,137) + mat(k,1069) = .080_r8*rxt(k,314)*y(k,70) + .100_r8*rxt(k,289)*y(k,73) & + + .280_r8*rxt(k,299)*y(k,76) + mat(k,700) = mat(k,700) + .530_r8*rxt(k,283)*y(k,136) + mat(k,775) = mat(k,775) + .260_r8*rxt(k,284)*y(k,136) + rxt(k,293)*y(k,137) & + + .300_r8*rxt(k,277)*y(k,141) + mat(k,1024) = mat(k,1024) + .450_r8*rxt(k,294)*y(k,137) + .150_r8*rxt(k,278) & + *y(k,141) + mat(k,654) = mat(k,654) + .530_r8*rxt(k,287)*y(k,87) + .530_r8*rxt(k,286) & + *y(k,89) + .530_r8*rxt(k,283)*y(k,130) + .260_r8*rxt(k,284) & + *y(k,131) + mat(k,673) = rxt(k,296)*y(k,87) + rxt(k,297)*y(k,89) + rxt(k,293)*y(k,131) & + + .450_r8*rxt(k,294)*y(k,134) + 4.000_r8*rxt(k,295)*y(k,137) + mat(k,1257) = rxt(k,246)*y(k,28) + rxt(k,271)*y(k,31) + .500_r8*rxt(k,252) & + *y(k,33) + mat(k,487) = rxt(k,279)*y(k,87) + .300_r8*rxt(k,277)*y(k,131) & + + .150_r8*rxt(k,278)*y(k,134) + mat(k,777) = -(rxt(k,154)*y(k,41) + (4._r8*rxt(k,224) + 4._r8*rxt(k,225) & + ) * y(k,131) + rxt(k,226)*y(k,134) + rxt(k,227)*y(k,87) & + + rxt(k,238)*y(k,128) + rxt(k,248)*y(k,130) + rxt(k,265) & + *y(k,129) + rxt(k,277)*y(k,141) + rxt(k,284)*y(k,136) + rxt(k,293) & + *y(k,137) + rxt(k,310)*y(k,135) + rxt(k,320)*y(k,142)) + mat(k,874) = -rxt(k,154)*y(k,131) + mat(k,1026) = -rxt(k,226)*y(k,131) + mat(k,848) = -rxt(k,227)*y(k,131) + mat(k,387) = -rxt(k,238)*y(k,131) + mat(k,702) = -rxt(k,248)*y(k,131) + mat(k,421) = -rxt(k,265)*y(k,131) + mat(k,488) = -rxt(k,277)*y(k,131) + mat(k,655) = -rxt(k,284)*y(k,131) + mat(k,674) = -rxt(k,293)*y(k,131) + mat(k,633) = -rxt(k,310)*y(k,131) + mat(k,596) = -rxt(k,320)*y(k,131) + mat(k,545) = .280_r8*rxt(k,264)*y(k,100) + mat(k,321) = rxt(k,251)*y(k,139) + mat(k,195) = .700_r8*rxt(k,229)*y(k,139) + mat(k,507) = rxt(k,148)*y(k,38) + rxt(k,231)*y(k,138) + rxt(k,230)*y(k,139) + mat(k,969) = rxt(k,148)*y(k,36) + mat(k,438) = .050_r8*rxt(k,314)*y(k,100) + mat(k,848) = mat(k,848) + rxt(k,250)*y(k,130) + mat(k,1072) = .280_r8*rxt(k,264)*y(k,13) + .050_r8*rxt(k,314)*y(k,70) + mat(k,702) = mat(k,702) + rxt(k,250)*y(k,87) + 4.000_r8*rxt(k,247)*y(k,130) & + + .900_r8*rxt(k,248)*y(k,131) + .450_r8*rxt(k,249)*y(k,134) & + + rxt(k,309)*y(k,135) + rxt(k,283)*y(k,136) + rxt(k,292) & + *y(k,137) + rxt(k,319)*y(k,142) + mat(k,777) = mat(k,777) + .900_r8*rxt(k,248)*y(k,130) + mat(k,1026) = mat(k,1026) + .450_r8*rxt(k,249)*y(k,130) + mat(k,633) = mat(k,633) + rxt(k,309)*y(k,130) + mat(k,655) = mat(k,655) + rxt(k,283)*y(k,130) + mat(k,674) = mat(k,674) + rxt(k,292)*y(k,130) + mat(k,1174) = rxt(k,231)*y(k,36) + mat(k,1260) = rxt(k,251)*y(k,32) + .700_r8*rxt(k,229)*y(k,35) + rxt(k,230) & + *y(k,36) + mat(k,596) = mat(k,596) + rxt(k,319)*y(k,130) + end do + end subroutine nlnmat05 + subroutine nlnmat06( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,206) = -(rxt(k,256)*y(k,97)) + mat(k,1335) = -rxt(k,256)*y(k,132) + mat(k,824) = .750_r8*rxt(k,254)*y(k,133) + mat(k,352) = .750_r8*rxt(k,254)*y(k,87) + mat(k,353) = -(rxt(k,253)*y(k,134) + rxt(k,254)*y(k,87)) + mat(k,1003) = -rxt(k,253)*y(k,133) + mat(k,828) = -rxt(k,254)*y(k,133) + mat(k,212) = rxt(k,260)*y(k,139) + mat(k,1231) = rxt(k,260)*y(k,9) + mat(k,1034) = -((rxt(k,107) + rxt(k,108) + rxt(k,109)) * y(k,54) + rxt(k,111) & + *y(k,96) + rxt(k,112)*y(k,100) + rxt(k,116)*y(k,139) & + + 4._r8*rxt(k,121)*y(k,134) + rxt(k,131)*y(k,89) + rxt(k,136) & + *y(k,87) + rxt(k,141)*y(k,88) + (rxt(k,151) + rxt(k,152) & + ) * y(k,38) + rxt(k,158)*y(k,41) + rxt(k,184)*y(k,4) + rxt(k,190) & + *y(k,6) + rxt(k,226)*y(k,131) + rxt(k,239)*y(k,128) + rxt(k,249) & + *y(k,130) + rxt(k,253)*y(k,133) + rxt(k,266)*y(k,129) + rxt(k,274) & + *y(k,140) + rxt(k,278)*y(k,141) + rxt(k,285)*y(k,136) + rxt(k,294) & + *y(k,137) + rxt(k,306)*y(k,71) + rxt(k,311)*y(k,135) + rxt(k,321) & + *y(k,142)) + mat(k,797) = -(rxt(k,107) + rxt(k,108) + rxt(k,109)) * y(k,134) + mat(k,1300) = -rxt(k,111)*y(k,134) + mat(k,1080) = -rxt(k,112)*y(k,134) + mat(k,1268) = -rxt(k,116)*y(k,134) + mat(k,1143) = -rxt(k,131)*y(k,134) + mat(k,856) = -rxt(k,136)*y(k,134) + mat(k,919) = -rxt(k,141)*y(k,134) + mat(k,977) = -(rxt(k,151) + rxt(k,152)) * y(k,134) + mat(k,882) = -rxt(k,158)*y(k,134) + mat(k,1097) = -rxt(k,184)*y(k,134) + mat(k,1323) = -rxt(k,190)*y(k,134) + mat(k,785) = -rxt(k,226)*y(k,134) + mat(k,391) = -rxt(k,239)*y(k,134) + mat(k,706) = -rxt(k,249)*y(k,134) + mat(k,358) = -rxt(k,253)*y(k,134) + mat(k,425) = -rxt(k,266)*y(k,134) + mat(k,378) = -rxt(k,274)*y(k,134) + mat(k,492) = -rxt(k,278)*y(k,134) + mat(k,659) = -rxt(k,285)*y(k,134) + mat(k,678) = -rxt(k,294)*y(k,134) + mat(k,368) = -rxt(k,306)*y(k,134) + mat(k,637) = -rxt(k,311)*y(k,134) + mat(k,600) = -rxt(k,321)*y(k,134) + mat(k,1097) = mat(k,1097) + rxt(k,183)*y(k,25) + mat(k,1323) = mat(k,1323) + rxt(k,195)*y(k,139) + mat(k,215) = .130_r8*rxt(k,236)*y(k,100) + mat(k,117) = rxt(k,241)*y(k,139) + mat(k,552) = .280_r8*rxt(k,264)*y(k,100) + mat(k,813) = rxt(k,183)*y(k,4) + rxt(k,147)*y(k,38) + rxt(k,221)*y(k,89) & + + rxt(k,222)*y(k,96) + mat(k,295) = rxt(k,206)*y(k,38) + rxt(k,207)*y(k,139) + mat(k,173) = rxt(k,209)*y(k,38) + rxt(k,210)*y(k,139) + mat(k,242) = rxt(k,228)*y(k,139) + mat(k,512) = rxt(k,232)*y(k,138) + mat(k,977) = mat(k,977) + rxt(k,147)*y(k,25) + rxt(k,206)*y(k,26) & + + rxt(k,209)*y(k,29) + rxt(k,150)*y(k,57) + mat(k,882) = mat(k,882) + rxt(k,154)*y(k,131) + rxt(k,165)*y(k,139) + mat(k,582) = rxt(k,234)*y(k,139) + mat(k,139) = .500_r8*rxt(k,343)*y(k,139) + mat(k,565) = rxt(k,257)*y(k,139) + mat(k,334) = rxt(k,258)*y(k,139) + mat(k,797) = mat(k,797) + rxt(k,110)*y(k,97) + mat(k,271) = rxt(k,150)*y(k,38) + rxt(k,106)*y(k,96) + rxt(k,115)*y(k,139) + mat(k,522) = rxt(k,272)*y(k,139) + mat(k,442) = .370_r8*rxt(k,314)*y(k,100) + mat(k,368) = mat(k,368) + .794_r8*rxt(k,307)*y(k,87) + .794_r8*rxt(k,308) & + *y(k,89) + mat(k,576) = .140_r8*rxt(k,289)*y(k,100) + mat(k,145) = .200_r8*rxt(k,291)*y(k,139) + mat(k,281) = .500_r8*rxt(k,298)*y(k,139) + mat(k,746) = .280_r8*rxt(k,299)*y(k,100) + mat(k,856) = mat(k,856) + .794_r8*rxt(k,307)*y(k,71) + rxt(k,240)*y(k,128) & + + rxt(k,267)*y(k,129) + rxt(k,227)*y(k,131) + .250_r8*rxt(k,254) & + *y(k,133) + .920_r8*rxt(k,312)*y(k,135) + .470_r8*rxt(k,287) & + *y(k,136) + rxt(k,275)*y(k,140) + rxt(k,322)*y(k,142) + mat(k,1143) = mat(k,1143) + rxt(k,221)*y(k,25) + .794_r8*rxt(k,308)*y(k,71) & + + rxt(k,317)*y(k,104) + rxt(k,313)*y(k,135) + .470_r8*rxt(k,286) & + *y(k,136) + rxt(k,134)*y(k,139) + rxt(k,323)*y(k,142) + mat(k,1300) = mat(k,1300) + rxt(k,222)*y(k,25) + rxt(k,106)*y(k,57) + mat(k,1349) = rxt(k,110)*y(k,54) + rxt(k,256)*y(k,132) + mat(k,1080) = mat(k,1080) + .130_r8*rxt(k,236)*y(k,9) + .280_r8*rxt(k,264) & + *y(k,13) + .370_r8*rxt(k,314)*y(k,70) + .140_r8*rxt(k,289) & + *y(k,73) + .280_r8*rxt(k,299)*y(k,76) + rxt(k,118)*y(k,139) + mat(k,478) = rxt(k,317)*y(k,89) + rxt(k,318)*y(k,139) + mat(k,467) = rxt(k,333)*y(k,139) + mat(k,391) = mat(k,391) + rxt(k,240)*y(k,87) + 2.400_r8*rxt(k,237)*y(k,128) & + + rxt(k,238)*y(k,131) + mat(k,425) = mat(k,425) + rxt(k,267)*y(k,87) + rxt(k,265)*y(k,131) + mat(k,706) = mat(k,706) + .900_r8*rxt(k,248)*y(k,131) + rxt(k,309)*y(k,135) & + + .470_r8*rxt(k,283)*y(k,136) + rxt(k,319)*y(k,142) + mat(k,785) = mat(k,785) + rxt(k,154)*y(k,41) + rxt(k,227)*y(k,87) & + + rxt(k,238)*y(k,128) + rxt(k,265)*y(k,129) + .900_r8*rxt(k,248) & + *y(k,130) + 4.000_r8*rxt(k,224)*y(k,131) + rxt(k,310)*y(k,135) & + + .730_r8*rxt(k,284)*y(k,136) + rxt(k,293)*y(k,137) & + + .300_r8*rxt(k,277)*y(k,141) + .800_r8*rxt(k,320)*y(k,142) + mat(k,209) = rxt(k,256)*y(k,97) + mat(k,358) = mat(k,358) + .250_r8*rxt(k,254)*y(k,87) + mat(k,637) = mat(k,637) + .920_r8*rxt(k,312)*y(k,87) + rxt(k,313)*y(k,89) & + + rxt(k,309)*y(k,130) + rxt(k,310)*y(k,131) + mat(k,659) = mat(k,659) + .470_r8*rxt(k,287)*y(k,87) + .470_r8*rxt(k,286) & + *y(k,89) + .470_r8*rxt(k,283)*y(k,130) + .730_r8*rxt(k,284) & + *y(k,131) + mat(k,678) = mat(k,678) + rxt(k,293)*y(k,131) + mat(k,1182) = rxt(k,232)*y(k,36) + mat(k,1268) = mat(k,1268) + rxt(k,195)*y(k,6) + rxt(k,241)*y(k,10) & + + rxt(k,207)*y(k,26) + rxt(k,210)*y(k,29) + rxt(k,228)*y(k,34) & + + rxt(k,165)*y(k,41) + rxt(k,234)*y(k,44) + .500_r8*rxt(k,343) & + *y(k,46) + rxt(k,257)*y(k,52) + rxt(k,258)*y(k,53) + rxt(k,115) & + *y(k,57) + rxt(k,272)*y(k,68) + .200_r8*rxt(k,291)*y(k,74) & + + .500_r8*rxt(k,298)*y(k,75) + rxt(k,134)*y(k,89) + rxt(k,118) & + *y(k,100) + rxt(k,318)*y(k,104) + rxt(k,333)*y(k,113) + mat(k,378) = mat(k,378) + rxt(k,275)*y(k,87) + mat(k,492) = mat(k,492) + .300_r8*rxt(k,277)*y(k,131) + mat(k,600) = mat(k,600) + rxt(k,322)*y(k,87) + rxt(k,323)*y(k,89) & + + rxt(k,319)*y(k,130) + .800_r8*rxt(k,320)*y(k,131) + mat(k,628) = -(rxt(k,309)*y(k,130) + rxt(k,310)*y(k,131) + rxt(k,311) & + *y(k,134) + rxt(k,312)*y(k,87) + rxt(k,313)*y(k,89)) + mat(k,697) = -rxt(k,309)*y(k,135) + mat(k,772) = -rxt(k,310)*y(k,135) + mat(k,1021) = -rxt(k,311)*y(k,135) + mat(k,843) = -rxt(k,312)*y(k,135) + mat(k,1129) = -rxt(k,313)*y(k,135) + mat(k,435) = rxt(k,315)*y(k,139) + mat(k,247) = .200_r8*rxt(k,316)*y(k,139) + mat(k,1129) = mat(k,1129) + 1.700_r8*rxt(k,325)*y(k,124) + mat(k,303) = 1.700_r8*rxt(k,325)*y(k,89) + 1.640_r8*rxt(k,327)*y(k,139) + mat(k,1254) = rxt(k,315)*y(k,70) + .200_r8*rxt(k,316)*y(k,72) & + + 1.640_r8*rxt(k,327)*y(k,124) + mat(k,652) = -(rxt(k,283)*y(k,130) + rxt(k,284)*y(k,131) + rxt(k,285) & + *y(k,134) + rxt(k,286)*y(k,89) + (rxt(k,287) + rxt(k,288) & + ) * y(k,87)) + mat(k,698) = -rxt(k,283)*y(k,136) + mat(k,773) = -rxt(k,284)*y(k,136) + mat(k,1022) = -rxt(k,285)*y(k,136) + mat(k,1130) = -rxt(k,286)*y(k,136) + mat(k,844) = -(rxt(k,287) + rxt(k,288)) * y(k,136) + mat(k,572) = .500_r8*rxt(k,290)*y(k,139) + mat(k,143) = .200_r8*rxt(k,291)*y(k,139) + mat(k,735) = rxt(k,300)*y(k,139) + mat(k,1255) = .500_r8*rxt(k,290)*y(k,73) + .200_r8*rxt(k,291)*y(k,74) & + + rxt(k,300)*y(k,76) + mat(k,672) = -(rxt(k,292)*y(k,130) + rxt(k,293)*y(k,131) + rxt(k,294) & + *y(k,134) + 4._r8*rxt(k,295)*y(k,137) + rxt(k,296)*y(k,87) & + + rxt(k,297)*y(k,89) + rxt(k,301)*y(k,88)) + mat(k,699) = -rxt(k,292)*y(k,137) + mat(k,774) = -rxt(k,293)*y(k,137) + mat(k,1023) = -rxt(k,294)*y(k,137) + mat(k,845) = -rxt(k,296)*y(k,137) + mat(k,1131) = -rxt(k,297)*y(k,137) + mat(k,907) = -rxt(k,301)*y(k,137) + mat(k,573) = .500_r8*rxt(k,290)*y(k,139) + mat(k,144) = .500_r8*rxt(k,291)*y(k,139) + mat(k,1256) = .500_r8*rxt(k,290)*y(k,73) + .500_r8*rxt(k,291)*y(k,74) + mat(k,1186) = -(rxt(k,87)*y(k,55) + rxt(k,88)*y(k,143) + (rxt(k,90) + rxt(k,91) & + ) * y(k,97) + (rxt(k,92) + rxt(k,93)) * y(k,100) + (rxt(k,139) & + + rxt(k,140)) * y(k,78) + rxt(k,172)*y(k,16) + rxt(k,173) & + *y(k,17) + rxt(k,174)*y(k,19) + rxt(k,175)*y(k,20) + rxt(k,176) & + *y(k,21) + rxt(k,177)*y(k,22) + rxt(k,178)*y(k,23) + (rxt(k,179) & + + rxt(k,180)) * y(k,63) + rxt(k,199)*y(k,18) + rxt(k,200) & + *y(k,37) + rxt(k,201)*y(k,56) + (rxt(k,202) + rxt(k,203) & + ) * y(k,59) + rxt(k,216)*y(k,24) + rxt(k,217)*y(k,26) + rxt(k,218) & + *y(k,60) + rxt(k,219)*y(k,61) + rxt(k,220)*y(k,62) + (rxt(k,231) & + + rxt(k,232) + rxt(k,233)) * y(k,36)) + mat(k,499) = -rxt(k,87)*y(k,138) + mat(k,1374) = -rxt(k,88)*y(k,138) + mat(k,1353) = -(rxt(k,90) + rxt(k,91)) * y(k,138) + mat(k,1084) = -(rxt(k,92) + rxt(k,93)) * y(k,138) + mat(k,113) = -(rxt(k,139) + rxt(k,140)) * y(k,138) + mat(k,48) = -rxt(k,172)*y(k,138) + mat(k,74) = -rxt(k,173)*y(k,138) + mat(k,54) = -rxt(k,174)*y(k,138) + mat(k,57) = -rxt(k,175)*y(k,138) + mat(k,60) = -rxt(k,176)*y(k,138) + mat(k,63) = -rxt(k,177)*y(k,138) + mat(k,66) = -rxt(k,178)*y(k,138) + mat(k,944) = -(rxt(k,179) + rxt(k,180)) * y(k,138) + mat(k,51) = -rxt(k,199)*y(k,138) + mat(k,192) = -rxt(k,200)*y(k,138) + mat(k,42) = -rxt(k,201)*y(k,138) + mat(k,405) = -(rxt(k,202) + rxt(k,203)) * y(k,138) + mat(k,229) = -rxt(k,216)*y(k,138) + mat(k,297) = -rxt(k,217)*y(k,138) + mat(k,94) = -rxt(k,218)*y(k,138) + mat(k,98) = -rxt(k,219)*y(k,138) + mat(k,105) = -rxt(k,220)*y(k,138) + mat(k,513) = -(rxt(k,231) + rxt(k,232) + rxt(k,233)) * y(k,138) + mat(k,1273) = -(rxt(k,114)*y(k,55) + rxt(k,115)*y(k,57) + rxt(k,116)*y(k,134) & + + rxt(k,117)*y(k,96) + rxt(k,118)*y(k,100) + (4._r8*rxt(k,119) & + + 4._r8*rxt(k,120)) * y(k,139) + rxt(k,122)*y(k,65) + rxt(k,134) & + *y(k,89) + rxt(k,135)*y(k,77) + rxt(k,143)*y(k,88) + rxt(k,144) & + *y(k,64) + rxt(k,163)*y(k,42) + (rxt(k,165) + rxt(k,166) & + ) * y(k,41) + rxt(k,168)*y(k,63) + rxt(k,171)*y(k,67) + rxt(k,195) & + *y(k,6) + rxt(k,197)*y(k,59) + rxt(k,205)*y(k,24) + rxt(k,207) & + *y(k,26) + rxt(k,208)*y(k,27) + rxt(k,210)*y(k,29) + rxt(k,212) & + *y(k,37) + rxt(k,213)*y(k,60) + rxt(k,214)*y(k,61) + rxt(k,215) & + *y(k,62) + rxt(k,223)*y(k,25) + rxt(k,228)*y(k,34) + rxt(k,229) & + *y(k,35) + rxt(k,230)*y(k,36) + rxt(k,234)*y(k,44) + rxt(k,241) & + *y(k,10) + rxt(k,242)*y(k,11) + rxt(k,244)*y(k,12) + rxt(k,246) & + *y(k,28) + rxt(k,251)*y(k,32) + rxt(k,252)*y(k,33) + rxt(k,257) & + *y(k,52) + rxt(k,258)*y(k,53) + rxt(k,259)*y(k,105) + rxt(k,260) & + *y(k,9) + rxt(k,268)*y(k,14) + rxt(k,269)*y(k,15) + rxt(k,271) & + *y(k,31) + rxt(k,272)*y(k,68) + rxt(k,273)*y(k,90) + rxt(k,276) & + *y(k,108) + rxt(k,280)*y(k,109) + rxt(k,281)*y(k,13) + rxt(k,282) & + *y(k,30) + rxt(k,290)*y(k,73) + rxt(k,291)*y(k,74) + rxt(k,298) & + *y(k,75) + rxt(k,300)*y(k,76) + rxt(k,303)*y(k,3) + rxt(k,304) & + *y(k,69) + rxt(k,315)*y(k,70) + rxt(k,316)*y(k,72) + rxt(k,318) & + *y(k,104) + rxt(k,324)*y(k,125) + rxt(k,327)*y(k,124) + (rxt(k,329) & + + rxt(k,343)) * y(k,46) + rxt(k,331)*y(k,103) + rxt(k,333) & + *y(k,113) + rxt(k,337)*y(k,110) + rxt(k,342)*y(k,112) + rxt(k,345) & + *y(k,83)) + mat(k,500) = -rxt(k,114)*y(k,139) + mat(k,272) = -rxt(k,115)*y(k,139) + mat(k,1039) = -rxt(k,116)*y(k,139) + mat(k,1305) = -rxt(k,117)*y(k,139) + mat(k,1085) = -rxt(k,118)*y(k,139) + mat(k,222) = -rxt(k,122)*y(k,139) + mat(k,1148) = -rxt(k,134)*y(k,139) + mat(k,316) = -rxt(k,135)*y(k,139) + mat(k,924) = -rxt(k,143)*y(k,139) + mat(k,413) = -rxt(k,144)*y(k,139) + mat(k,455) = -rxt(k,163)*y(k,139) + mat(k,887) = -(rxt(k,165) + rxt(k,166)) * y(k,139) + mat(k,945) = -rxt(k,168)*y(k,139) + mat(k,399) = -rxt(k,171)*y(k,139) + mat(k,1328) = -rxt(k,195)*y(k,139) + mat(k,406) = -rxt(k,197)*y(k,139) + mat(k,230) = -rxt(k,205)*y(k,139) + mat(k,298) = -rxt(k,207)*y(k,139) + mat(k,77) = -rxt(k,208)*y(k,139) + mat(k,174) = -rxt(k,210)*y(k,139) + mat(k,193) = -rxt(k,212)*y(k,139) + mat(k,95) = -rxt(k,213)*y(k,139) + mat(k,99) = -rxt(k,214)*y(k,139) + mat(k,106) = -rxt(k,215)*y(k,139) + mat(k,818) = -rxt(k,223)*y(k,139) + mat(k,243) = -rxt(k,228)*y(k,139) + mat(k,198) = -rxt(k,229)*y(k,139) + mat(k,514) = -rxt(k,230)*y(k,139) + mat(k,583) = -rxt(k,234)*y(k,139) + mat(k,118) = -rxt(k,241)*y(k,139) + mat(k,151) = -rxt(k,242)*y(k,139) + mat(k,134) = -rxt(k,244)*y(k,139) + mat(k,532) = -rxt(k,246)*y(k,139) + mat(k,322) = -rxt(k,251)*y(k,139) + mat(k,289) = -rxt(k,252)*y(k,139) + mat(k,566) = -rxt(k,257)*y(k,139) + mat(k,335) = -rxt(k,258)*y(k,139) + mat(k,259) = -rxt(k,259)*y(k,139) + mat(k,217) = -rxt(k,260)*y(k,139) + mat(k,180) = -rxt(k,268)*y(k,139) + mat(k,69) = -rxt(k,269)*y(k,139) + mat(k,612) = -rxt(k,271)*y(k,139) + mat(k,523) = -rxt(k,272)*y(k,139) + mat(k,187) = -rxt(k,273)*y(k,139) + mat(k,266) = -rxt(k,276)*y(k,139) + mat(k,204) = -rxt(k,280)*y(k,139) + mat(k,556) = -rxt(k,281)*y(k,139) + mat(k,349) = -rxt(k,282)*y(k,139) + mat(k,578) = -rxt(k,290)*y(k,139) + mat(k,146) = -rxt(k,291)*y(k,139) + mat(k,283) = -rxt(k,298)*y(k,139) + mat(k,750) = -rxt(k,300)*y(k,139) + mat(k,39) = -rxt(k,303)*y(k,139) + mat(k,159) = -rxt(k,304)*y(k,139) + mat(k,445) = -rxt(k,315)*y(k,139) + mat(k,251) = -rxt(k,316)*y(k,139) + mat(k,480) = -rxt(k,318)*y(k,139) + mat(k,102) = -rxt(k,324)*y(k,139) + mat(k,308) = -rxt(k,327)*y(k,139) + mat(k,141) = -(rxt(k,329) + rxt(k,343)) * y(k,139) + mat(k,166) = -rxt(k,331)*y(k,139) + mat(k,468) = -rxt(k,333)*y(k,139) + mat(k,328) = -rxt(k,337)*y(k,139) + mat(k,725) = -rxt(k,342)*y(k,139) + mat(k,44) = -rxt(k,345)*y(k,139) + mat(k,217) = mat(k,217) + .130_r8*rxt(k,236)*y(k,100) + mat(k,151) = mat(k,151) + .500_r8*rxt(k,242)*y(k,139) + mat(k,556) = mat(k,556) + .360_r8*rxt(k,264)*y(k,100) + mat(k,818) = mat(k,818) + rxt(k,222)*y(k,96) + mat(k,198) = mat(k,198) + .300_r8*rxt(k,229)*y(k,139) + mat(k,514) = mat(k,514) + rxt(k,231)*y(k,138) + mat(k,982) = rxt(k,152)*y(k,134) + mat(k,800) = rxt(k,113)*y(k,100) + 2.000_r8*rxt(k,108)*y(k,134) + mat(k,500) = mat(k,500) + rxt(k,105)*y(k,96) + rxt(k,87)*y(k,138) + mat(k,272) = mat(k,272) + rxt(k,106)*y(k,96) + mat(k,406) = mat(k,406) + rxt(k,196)*y(k,96) + rxt(k,202)*y(k,138) + mat(k,945) = mat(k,945) + rxt(k,167)*y(k,96) + rxt(k,179)*y(k,138) + mat(k,341) = rxt(k,198)*y(k,96) + mat(k,399) = mat(k,399) + rxt(k,170)*y(k,96) + mat(k,445) = mat(k,445) + .320_r8*rxt(k,314)*y(k,100) + mat(k,370) = .206_r8*rxt(k,306)*y(k,134) + mat(k,578) = mat(k,578) + .240_r8*rxt(k,289)*y(k,100) + mat(k,146) = mat(k,146) + .100_r8*rxt(k,291)*y(k,139) + mat(k,750) = mat(k,750) + .360_r8*rxt(k,299)*y(k,100) + mat(k,861) = rxt(k,136)*y(k,134) + mat(k,1148) = mat(k,1148) + rxt(k,131)*y(k,134) + mat(k,1305) = mat(k,1305) + rxt(k,222)*y(k,25) + rxt(k,105)*y(k,55) & + + rxt(k,106)*y(k,57) + rxt(k,196)*y(k,59) + rxt(k,167)*y(k,63) & + + rxt(k,198)*y(k,66) + rxt(k,170)*y(k,67) + rxt(k,111)*y(k,134) + mat(k,1085) = mat(k,1085) + .130_r8*rxt(k,236)*y(k,9) + .360_r8*rxt(k,264) & + *y(k,13) + rxt(k,113)*y(k,54) + .320_r8*rxt(k,314)*y(k,70) & + + .240_r8*rxt(k,289)*y(k,73) + .360_r8*rxt(k,299)*y(k,76) & + + 1.156_r8*rxt(k,326)*y(k,124) + rxt(k,112)*y(k,134) + mat(k,266) = mat(k,266) + .500_r8*rxt(k,276)*y(k,139) + mat(k,308) = mat(k,308) + 1.156_r8*rxt(k,326)*y(k,100) + mat(k,102) = mat(k,102) + .500_r8*rxt(k,324)*y(k,139) + mat(k,709) = .450_r8*rxt(k,249)*y(k,134) + mat(k,1039) = mat(k,1039) + rxt(k,152)*y(k,38) + 2.000_r8*rxt(k,108)*y(k,54) & + + .206_r8*rxt(k,306)*y(k,71) + rxt(k,136)*y(k,87) + rxt(k,131) & + *y(k,89) + rxt(k,111)*y(k,96) + rxt(k,112)*y(k,100) & + + .450_r8*rxt(k,249)*y(k,130) + .450_r8*rxt(k,294)*y(k,137) & + + .150_r8*rxt(k,278)*y(k,141) + mat(k,681) = .450_r8*rxt(k,294)*y(k,134) + mat(k,1187) = rxt(k,231)*y(k,36) + rxt(k,87)*y(k,55) + rxt(k,202)*y(k,59) & + + rxt(k,179)*y(k,63) + 2.000_r8*rxt(k,88)*y(k,143) + mat(k,1273) = mat(k,1273) + .500_r8*rxt(k,242)*y(k,11) + .300_r8*rxt(k,229) & + *y(k,35) + .100_r8*rxt(k,291)*y(k,74) + .500_r8*rxt(k,276) & + *y(k,108) + .500_r8*rxt(k,324)*y(k,125) + mat(k,493) = .150_r8*rxt(k,278)*y(k,134) + mat(k,1375) = 2.000_r8*rxt(k,88)*y(k,138) + end do + end subroutine nlnmat06 + subroutine nlnmat07( avec_len, mat, y, rxt ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k,372) = -(rxt(k,274)*y(k,134) + rxt(k,275)*y(k,87)) + mat(k,1005) = -rxt(k,274)*y(k,140) + mat(k,830) = -rxt(k,275)*y(k,140) + mat(k,536) = rxt(k,281)*y(k,139) + mat(k,261) = .500_r8*rxt(k,276)*y(k,139) + mat(k,1232) = rxt(k,281)*y(k,13) + .500_r8*rxt(k,276)*y(k,108) + mat(k,484) = -(rxt(k,277)*y(k,131) + rxt(k,278)*y(k,134) + rxt(k,279)*y(k,87)) + mat(k,764) = -rxt(k,277)*y(k,141) + mat(k,1012) = -rxt(k,278)*y(k,141) + mat(k,835) = -rxt(k,279)*y(k,141) + mat(k,346) = rxt(k,282)*y(k,139) + mat(k,201) = rxt(k,280)*y(k,139) + mat(k,1243) = rxt(k,282)*y(k,30) + rxt(k,280)*y(k,109) + mat(k,593) = -(rxt(k,319)*y(k,130) + rxt(k,320)*y(k,131) + rxt(k,321) & + *y(k,134) + rxt(k,322)*y(k,87) + rxt(k,323)*y(k,89)) + mat(k,695) = -rxt(k,319)*y(k,142) + mat(k,770) = -rxt(k,320)*y(k,142) + mat(k,1019) = -rxt(k,321)*y(k,142) + mat(k,841) = -rxt(k,322)*y(k,142) + mat(k,1127) = -rxt(k,323)*y(k,142) + mat(k,158) = rxt(k,304)*y(k,139) + mat(k,246) = .800_r8*rxt(k,316)*y(k,139) + mat(k,101) = .500_r8*rxt(k,324)*y(k,139) + mat(k,1252) = rxt(k,304)*y(k,69) + .800_r8*rxt(k,316)*y(k,72) & + + .500_r8*rxt(k,324)*y(k,125) + mat(k,1379) = -(rxt(k,88)*y(k,138) + rxt(k,344)*y(k,114)) + mat(k,1191) = -rxt(k,88)*y(k,143) + mat(k,123) = -rxt(k,344)*y(k,143) + mat(k,135) = rxt(k,244)*y(k,139) + mat(k,181) = rxt(k,268)*y(k,139) + mat(k,70) = rxt(k,269)*y(k,139) + mat(k,231) = rxt(k,205)*y(k,139) + mat(k,822) = rxt(k,223)*y(k,139) + mat(k,299) = rxt(k,207)*y(k,139) + mat(k,78) = rxt(k,208)*y(k,139) + mat(k,533) = rxt(k,246)*y(k,139) + mat(k,175) = rxt(k,210)*y(k,139) + mat(k,350) = rxt(k,282)*y(k,139) + mat(k,615) = rxt(k,271)*y(k,139) + mat(k,323) = rxt(k,251)*y(k,139) + mat(k,290) = rxt(k,252)*y(k,139) + mat(k,199) = rxt(k,229)*y(k,139) + mat(k,517) = rxt(k,230)*y(k,139) + mat(k,803) = rxt(k,109)*y(k,134) + mat(k,502) = rxt(k,114)*y(k,139) + mat(k,274) = rxt(k,115)*y(k,139) + mat(k,409) = rxt(k,197)*y(k,139) + mat(k,107) = rxt(k,215)*y(k,139) + mat(k,949) = (rxt(k,361)+rxt(k,366))*y(k,66) + (rxt(k,354)+rxt(k,360) & + +rxt(k,365))*y(k,67) + rxt(k,168)*y(k,139) + mat(k,414) = rxt(k,144)*y(k,139) + mat(k,224) = rxt(k,122)*y(k,139) + mat(k,344) = (rxt(k,361)+rxt(k,366))*y(k,63) + mat(k,401) = (rxt(k,354)+rxt(k,360)+rxt(k,365))*y(k,63) + rxt(k,171)*y(k,139) + mat(k,579) = .500_r8*rxt(k,290)*y(k,139) + mat(k,45) = rxt(k,345)*y(k,139) + mat(k,267) = rxt(k,276)*y(k,139) + mat(k,205) = rxt(k,280)*y(k,139) + mat(k,1043) = rxt(k,109)*y(k,54) + rxt(k,116)*y(k,139) + mat(k,1277) = rxt(k,244)*y(k,12) + rxt(k,268)*y(k,14) + rxt(k,269)*y(k,15) & + + rxt(k,205)*y(k,24) + rxt(k,223)*y(k,25) + rxt(k,207)*y(k,26) & + + rxt(k,208)*y(k,27) + rxt(k,246)*y(k,28) + rxt(k,210)*y(k,29) & + + rxt(k,282)*y(k,30) + rxt(k,271)*y(k,31) + rxt(k,251)*y(k,32) & + + rxt(k,252)*y(k,33) + rxt(k,229)*y(k,35) + rxt(k,230)*y(k,36) & + + rxt(k,114)*y(k,55) + rxt(k,115)*y(k,57) + rxt(k,197)*y(k,59) & + + rxt(k,215)*y(k,62) + rxt(k,168)*y(k,63) + rxt(k,144)*y(k,64) & + + rxt(k,122)*y(k,65) + rxt(k,171)*y(k,67) + .500_r8*rxt(k,290) & + *y(k,73) + rxt(k,345)*y(k,83) + rxt(k,276)*y(k,108) + rxt(k,280) & + *y(k,109) + rxt(k,116)*y(k,134) + 2.000_r8*rxt(k,119)*y(k,139) + end do + end subroutine nlnmat07 + subroutine nlnmat_finit( avec_len, mat, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(inout) :: mat(veclen,nzcnt) +!---------------------------------------------- +! ... local variables +!---------------------------------------------- + integer :: k +!---------------------------------------------- +! ... complete matrix entries implicit species +!---------------------------------------------- + do k = 1,avec_len + mat(k, 1) = lmat(k, 1) + mat(k, 2) = lmat(k, 2) + mat(k, 3) = lmat(k, 3) + mat(k, 4) = lmat(k, 4) + mat(k, 5) = lmat(k, 5) + mat(k, 6) = lmat(k, 6) + mat(k, 7) = lmat(k, 7) + mat(k, 8) = lmat(k, 8) + mat(k, 9) = lmat(k, 9) + mat(k, 10) = lmat(k, 10) + mat(k, 11) = lmat(k, 11) + mat(k, 12) = lmat(k, 12) + mat(k, 13) = lmat(k, 13) + mat(k, 14) = lmat(k, 14) + mat(k, 15) = lmat(k, 15) + mat(k, 16) = lmat(k, 16) + mat(k, 17) = lmat(k, 17) + mat(k, 18) = lmat(k, 18) + mat(k, 19) = lmat(k, 19) + mat(k, 20) = lmat(k, 20) + mat(k, 21) = lmat(k, 21) + mat(k, 22) = lmat(k, 22) + mat(k, 23) = lmat(k, 23) + mat(k, 24) = lmat(k, 24) + mat(k, 25) = lmat(k, 25) + mat(k, 26) = lmat(k, 26) + mat(k, 27) = lmat(k, 27) + mat(k, 28) = lmat(k, 28) + mat(k, 29) = lmat(k, 29) + mat(k, 30) = lmat(k, 30) + mat(k, 31) = lmat(k, 31) + mat(k, 32) = lmat(k, 32) + mat(k, 33) = lmat(k, 33) + mat(k, 34) = lmat(k, 34) + mat(k, 35) = lmat(k, 35) + mat(k, 36) = lmat(k, 36) + mat(k, 37) = mat(k, 37) + lmat(k, 37) + mat(k, 40) = mat(k, 40) + lmat(k, 40) + mat(k, 41) = mat(k, 41) + lmat(k, 41) + mat(k, 43) = mat(k, 43) + lmat(k, 43) + mat(k, 46) = mat(k, 46) + lmat(k, 46) + mat(k, 47) = mat(k, 47) + lmat(k, 47) + mat(k, 49) = mat(k, 49) + lmat(k, 49) + mat(k, 50) = mat(k, 50) + lmat(k, 50) + mat(k, 52) = mat(k, 52) + lmat(k, 52) + mat(k, 53) = mat(k, 53) + lmat(k, 53) + mat(k, 55) = mat(k, 55) + lmat(k, 55) + mat(k, 56) = mat(k, 56) + lmat(k, 56) + mat(k, 58) = mat(k, 58) + lmat(k, 58) + mat(k, 59) = mat(k, 59) + lmat(k, 59) + mat(k, 61) = mat(k, 61) + lmat(k, 61) + mat(k, 62) = mat(k, 62) + lmat(k, 62) + mat(k, 64) = mat(k, 64) + lmat(k, 64) + mat(k, 65) = mat(k, 65) + lmat(k, 65) + mat(k, 67) = mat(k, 67) + lmat(k, 67) + mat(k, 71) = mat(k, 71) + lmat(k, 71) + mat(k, 72) = mat(k, 72) + lmat(k, 72) + mat(k, 73) = mat(k, 73) + lmat(k, 73) + mat(k, 75) = mat(k, 75) + lmat(k, 75) + mat(k, 76) = mat(k, 76) + lmat(k, 76) + mat(k, 79) = lmat(k, 79) + mat(k, 80) = lmat(k, 80) + mat(k, 81) = lmat(k, 81) + mat(k, 82) = lmat(k, 82) + mat(k, 83) = lmat(k, 83) + mat(k, 84) = lmat(k, 84) + mat(k, 85) = lmat(k, 85) + mat(k, 86) = lmat(k, 86) + mat(k, 87) = mat(k, 87) + lmat(k, 87) + mat(k, 88) = mat(k, 88) + lmat(k, 88) + mat(k, 89) = mat(k, 89) + lmat(k, 89) + mat(k, 90) = mat(k, 90) + lmat(k, 90) + mat(k, 91) = lmat(k, 91) + mat(k, 92) = mat(k, 92) + lmat(k, 92) + mat(k, 93) = mat(k, 93) + lmat(k, 93) + mat(k, 96) = mat(k, 96) + lmat(k, 96) + mat(k, 97) = mat(k, 97) + lmat(k, 97) + mat(k, 100) = mat(k, 100) + lmat(k, 100) + mat(k, 102) = mat(k, 102) + lmat(k, 102) + mat(k, 103) = mat(k, 103) + lmat(k, 103) + mat(k, 104) = mat(k, 104) + lmat(k, 104) + mat(k, 108) = lmat(k, 108) + mat(k, 109) = lmat(k, 109) + mat(k, 110) = lmat(k, 110) + mat(k, 111) = mat(k, 111) + lmat(k, 111) + mat(k, 113) = mat(k, 113) + lmat(k, 113) + mat(k, 115) = mat(k, 115) + lmat(k, 115) + mat(k, 120) = mat(k, 120) + lmat(k, 120) + mat(k, 121) = lmat(k, 121) + mat(k, 122) = lmat(k, 122) + mat(k, 124) = lmat(k, 124) + mat(k, 125) = lmat(k, 125) + mat(k, 126) = lmat(k, 126) + mat(k, 127) = lmat(k, 127) + mat(k, 128) = lmat(k, 128) + mat(k, 129) = lmat(k, 129) + mat(k, 130) = mat(k, 130) + lmat(k, 130) + mat(k, 136) = mat(k, 136) + lmat(k, 136) + mat(k, 142) = mat(k, 142) + lmat(k, 142) + mat(k, 147) = mat(k, 147) + lmat(k, 147) + mat(k, 149) = mat(k, 149) + lmat(k, 149) + mat(k, 150) = lmat(k, 150) + mat(k, 151) = mat(k, 151) + lmat(k, 151) + mat(k, 152) = mat(k, 152) + lmat(k, 152) + mat(k, 155) = mat(k, 155) + lmat(k, 155) + mat(k, 156) = lmat(k, 156) + mat(k, 157) = mat(k, 157) + lmat(k, 157) + mat(k, 160) = mat(k, 160) + lmat(k, 160) + mat(k, 161) = lmat(k, 161) + mat(k, 163) = mat(k, 163) + lmat(k, 163) + mat(k, 168) = mat(k, 168) + lmat(k, 168) + mat(k, 170) = lmat(k, 170) + mat(k, 172) = mat(k, 172) + lmat(k, 172) + mat(k, 176) = mat(k, 176) + lmat(k, 176) + mat(k, 177) = lmat(k, 177) + mat(k, 179) = lmat(k, 179) + mat(k, 180) = mat(k, 180) + lmat(k, 180) + mat(k, 182) = mat(k, 182) + lmat(k, 182) + mat(k, 184) = lmat(k, 184) + mat(k, 185) = lmat(k, 185) + mat(k, 186) = mat(k, 186) + lmat(k, 186) + mat(k, 188) = mat(k, 188) + lmat(k, 188) + mat(k, 191) = mat(k, 191) + lmat(k, 191) + mat(k, 194) = mat(k, 194) + lmat(k, 194) + mat(k, 196) = lmat(k, 196) + mat(k, 197) = mat(k, 197) + lmat(k, 197) + mat(k, 198) = mat(k, 198) + lmat(k, 198) + mat(k, 200) = mat(k, 200) + lmat(k, 200) + mat(k, 202) = lmat(k, 202) + mat(k, 203) = lmat(k, 203) + mat(k, 204) = mat(k, 204) + lmat(k, 204) + mat(k, 206) = mat(k, 206) + lmat(k, 206) + mat(k, 208) = lmat(k, 208) + mat(k, 209) = mat(k, 209) + lmat(k, 209) + mat(k, 211) = mat(k, 211) + lmat(k, 211) + mat(k, 218) = mat(k, 218) + lmat(k, 218) + mat(k, 219) = mat(k, 219) + lmat(k, 219) + mat(k, 220) = lmat(k, 220) + mat(k, 221) = lmat(k, 221) + mat(k, 222) = mat(k, 222) + lmat(k, 222) + mat(k, 225) = mat(k, 225) + lmat(k, 225) + mat(k, 228) = mat(k, 228) + lmat(k, 228) + mat(k, 232) = mat(k, 232) + lmat(k, 232) + mat(k, 233) = lmat(k, 233) + mat(k, 234) = lmat(k, 234) + mat(k, 235) = lmat(k, 235) + mat(k, 236) = lmat(k, 236) + mat(k, 237) = mat(k, 237) + lmat(k, 237) + mat(k, 239) = mat(k, 239) + lmat(k, 239) + mat(k, 240) = mat(k, 240) + lmat(k, 240) + mat(k, 244) = mat(k, 244) + lmat(k, 244) + mat(k, 245) = lmat(k, 245) + mat(k, 248) = lmat(k, 248) + mat(k, 249) = lmat(k, 249) + mat(k, 250) = lmat(k, 250) + mat(k, 251) = mat(k, 251) + lmat(k, 251) + mat(k, 252) = mat(k, 252) + lmat(k, 252) + mat(k, 253) = lmat(k, 253) + mat(k, 254) = lmat(k, 254) + mat(k, 255) = lmat(k, 255) + mat(k, 257) = lmat(k, 257) + mat(k, 258) = mat(k, 258) + lmat(k, 258) + mat(k, 260) = mat(k, 260) + lmat(k, 260) + mat(k, 263) = lmat(k, 263) + mat(k, 264) = lmat(k, 264) + mat(k, 265) = lmat(k, 265) + mat(k, 266) = mat(k, 266) + lmat(k, 266) + mat(k, 268) = mat(k, 268) + lmat(k, 268) + mat(k, 272) = mat(k, 272) + lmat(k, 272) + mat(k, 275) = mat(k, 275) + lmat(k, 275) + mat(k, 278) = lmat(k, 278) + mat(k, 280) = lmat(k, 280) + mat(k, 284) = mat(k, 284) + lmat(k, 284) + mat(k, 285) = mat(k, 285) + lmat(k, 285) + mat(k, 287) = lmat(k, 287) + mat(k, 289) = mat(k, 289) + lmat(k, 289) + mat(k, 291) = mat(k, 291) + lmat(k, 291) + mat(k, 292) = lmat(k, 292) + mat(k, 296) = mat(k, 296) + lmat(k, 296) + mat(k, 300) = mat(k, 300) + lmat(k, 300) + mat(k, 311) = mat(k, 311) + lmat(k, 311) + mat(k, 319) = mat(k, 319) + lmat(k, 319) + mat(k, 324) = mat(k, 324) + lmat(k, 324) + mat(k, 331) = mat(k, 331) + lmat(k, 331) + mat(k, 333) = mat(k, 333) + lmat(k, 333) + mat(k, 334) = mat(k, 334) + lmat(k, 334) + mat(k, 337) = mat(k, 337) + lmat(k, 337) + mat(k, 340) = lmat(k, 340) + mat(k, 341) = mat(k, 341) + lmat(k, 341) + mat(k, 345) = mat(k, 345) + lmat(k, 345) + mat(k, 347) = lmat(k, 347) + mat(k, 348) = lmat(k, 348) + mat(k, 353) = mat(k, 353) + lmat(k, 353) + mat(k, 361) = mat(k, 361) + lmat(k, 361) + mat(k, 372) = mat(k, 372) + lmat(k, 372) + mat(k, 385) = mat(k, 385) + lmat(k, 385) + mat(k, 395) = mat(k, 395) + lmat(k, 395) + mat(k, 398) = mat(k, 398) + lmat(k, 398) + mat(k, 399) = mat(k, 399) + lmat(k, 399) + mat(k, 402) = mat(k, 402) + lmat(k, 402) + mat(k, 403) = mat(k, 403) + lmat(k, 403) + mat(k, 404) = mat(k, 404) + lmat(k, 404) + mat(k, 410) = mat(k, 410) + lmat(k, 410) + mat(k, 411) = lmat(k, 411) + mat(k, 413) = mat(k, 413) + lmat(k, 413) + mat(k, 417) = mat(k, 417) + lmat(k, 417) + mat(k, 430) = mat(k, 430) + lmat(k, 430) + mat(k, 447) = mat(k, 447) + lmat(k, 447) + mat(k, 448) = mat(k, 448) + lmat(k, 448) + mat(k, 449) = mat(k, 449) + lmat(k, 449) + mat(k, 450) = mat(k, 450) + lmat(k, 450) + mat(k, 451) = lmat(k, 451) + mat(k, 453) = mat(k, 453) + lmat(k, 453) + mat(k, 454) = mat(k, 454) + lmat(k, 454) + mat(k, 460) = lmat(k, 460) + mat(k, 461) = lmat(k, 461) + mat(k, 462) = lmat(k, 462) + mat(k, 465) = mat(k, 465) + lmat(k, 465) + mat(k, 466) = lmat(k, 466) + mat(k, 469) = lmat(k, 469) + mat(k, 472) = lmat(k, 472) + mat(k, 473) = mat(k, 473) + lmat(k, 473) + mat(k, 474) = lmat(k, 474) + mat(k, 476) = lmat(k, 476) + mat(k, 477) = mat(k, 477) + lmat(k, 477) + mat(k, 478) = mat(k, 478) + lmat(k, 478) + mat(k, 484) = mat(k, 484) + lmat(k, 484) + mat(k, 495) = mat(k, 495) + lmat(k, 495) + mat(k, 503) = lmat(k, 503) + mat(k, 504) = mat(k, 504) + lmat(k, 504) + mat(k, 505) = mat(k, 505) + lmat(k, 505) + mat(k, 506) = lmat(k, 506) + mat(k, 507) = mat(k, 507) + lmat(k, 507) + mat(k, 508) = mat(k, 508) + lmat(k, 508) + mat(k, 509) = mat(k, 509) + lmat(k, 509) + mat(k, 514) = mat(k, 514) + lmat(k, 514) + mat(k, 515) = lmat(k, 515) + mat(k, 517) = mat(k, 517) + lmat(k, 517) + mat(k, 518) = mat(k, 518) + lmat(k, 518) + mat(k, 520) = lmat(k, 520) + mat(k, 521) = lmat(k, 521) + mat(k, 522) = mat(k, 522) + lmat(k, 522) + mat(k, 525) = mat(k, 525) + lmat(k, 525) + mat(k, 526) = lmat(k, 526) + mat(k, 528) = lmat(k, 528) + mat(k, 530) = lmat(k, 530) + mat(k, 541) = mat(k, 541) + lmat(k, 541) + mat(k, 562) = mat(k, 562) + lmat(k, 562) + mat(k, 563) = lmat(k, 563) + mat(k, 564) = mat(k, 564) + lmat(k, 564) + mat(k, 565) = mat(k, 565) + lmat(k, 565) + mat(k, 569) = mat(k, 569) + lmat(k, 569) + mat(k, 570) = mat(k, 570) + lmat(k, 570) + mat(k, 573) = mat(k, 573) + lmat(k, 573) + mat(k, 574) = mat(k, 574) + lmat(k, 574) + mat(k, 575) = mat(k, 575) + lmat(k, 575) + mat(k, 576) = mat(k, 576) + lmat(k, 576) + mat(k, 581) = mat(k, 581) + lmat(k, 581) + mat(k, 593) = mat(k, 593) + lmat(k, 593) + mat(k, 606) = mat(k, 606) + lmat(k, 606) + mat(k, 607) = mat(k, 607) + lmat(k, 607) + mat(k, 608) = mat(k, 608) + lmat(k, 608) + mat(k, 610) = lmat(k, 610) + mat(k, 628) = mat(k, 628) + lmat(k, 628) + mat(k, 652) = mat(k, 652) + lmat(k, 652) + mat(k, 672) = mat(k, 672) + lmat(k, 672) + mat(k, 700) = mat(k, 700) + lmat(k, 700) + mat(k, 714) = lmat(k, 714) + mat(k, 716) = mat(k, 716) + lmat(k, 716) + mat(k, 726) = mat(k, 726) + lmat(k, 726) + mat(k, 732) = lmat(k, 732) + mat(k, 733) = mat(k, 733) + lmat(k, 733) + mat(k, 737) = mat(k, 737) + lmat(k, 737) + mat(k, 738) = mat(k, 738) + lmat(k, 738) + mat(k, 739) = lmat(k, 739) + mat(k, 777) = mat(k, 777) + lmat(k, 777) + mat(k, 794) = mat(k, 794) + lmat(k, 794) + mat(k, 806) = lmat(k, 806) + mat(k, 807) = mat(k, 807) + lmat(k, 807) + mat(k, 808) = mat(k, 808) + lmat(k, 808) + mat(k, 809) = mat(k, 809) + lmat(k, 809) + mat(k, 825) = mat(k, 825) + lmat(k, 825) + mat(k, 851) = mat(k, 851) + lmat(k, 851) + mat(k, 862) = mat(k, 862) + lmat(k, 862) + mat(k, 878) = mat(k, 878) + lmat(k, 878) + mat(k, 881) = mat(k, 881) + lmat(k, 881) + mat(k, 888) = mat(k, 888) + lmat(k, 888) + mat(k, 900) = mat(k, 900) + lmat(k, 900) + mat(k, 914) = mat(k, 914) + lmat(k, 914) + mat(k, 916) = mat(k, 916) + lmat(k, 916) + mat(k, 924) = mat(k, 924) + lmat(k, 924) + mat(k, 925) = mat(k, 925) + lmat(k, 925) + mat(k, 935) = mat(k, 935) + lmat(k, 935) + mat(k, 938) = mat(k, 938) + lmat(k, 938) + mat(k, 939) = mat(k, 939) + lmat(k, 939) + mat(k, 976) = mat(k, 976) + lmat(k, 976) + mat(k,1034) = mat(k,1034) + lmat(k,1034) + mat(k,1043) = mat(k,1043) + lmat(k,1043) + mat(k,1044) = mat(k,1044) + lmat(k,1044) + mat(k,1081) = mat(k,1081) + lmat(k,1081) + mat(k,1084) = mat(k,1084) + lmat(k,1084) + mat(k,1086) = mat(k,1086) + lmat(k,1086) + mat(k,1088) = mat(k,1088) + lmat(k,1088) + mat(k,1099) = mat(k,1099) + lmat(k,1099) + mat(k,1115) = mat(k,1115) + lmat(k,1115) + mat(k,1138) = mat(k,1138) + lmat(k,1138) + mat(k,1140) = mat(k,1140) + lmat(k,1140) + mat(k,1146) = mat(k,1146) + lmat(k,1146) + mat(k,1149) = mat(k,1149) + lmat(k,1149) + mat(k,1151) = mat(k,1151) + lmat(k,1151) + mat(k,1186) = mat(k,1186) + lmat(k,1186) + mat(k,1188) = mat(k,1188) + lmat(k,1188) + mat(k,1273) = mat(k,1273) + lmat(k,1273) + mat(k,1306) = mat(k,1306) + lmat(k,1306) + mat(k,1325) = mat(k,1325) + lmat(k,1325) + mat(k,1329) = mat(k,1329) + lmat(k,1329) + mat(k,1330) = mat(k,1330) + lmat(k,1330) + mat(k,1353) = mat(k,1353) + lmat(k,1353) + mat(k,1355) = mat(k,1355) + lmat(k,1355) + mat(k,1357) = mat(k,1357) + lmat(k,1357) + mat(k,1362) = lmat(k,1362) + mat(k,1364) = lmat(k,1364) + mat(k,1374) = mat(k,1374) + lmat(k,1374) + mat(k,1375) = mat(k,1375) + lmat(k,1375) + mat(k,1376) = lmat(k,1376) + mat(k,1379) = mat(k,1379) + lmat(k,1379) + mat(k, 315) = 0._r8 + mat(k, 339) = 0._r8 + mat(k, 354) = 0._r8 + mat(k, 359) = 0._r8 + mat(k, 360) = 0._r8 + mat(k, 373) = 0._r8 + mat(k, 379) = 0._r8 + mat(k, 381) = 0._r8 + mat(k, 392) = 0._r8 + mat(k, 418) = 0._r8 + mat(k, 420) = 0._r8 + mat(k, 426) = 0._r8 + mat(k, 428) = 0._r8 + mat(k, 431) = 0._r8 + mat(k, 440) = 0._r8 + mat(k, 441) = 0._r8 + mat(k, 457) = 0._r8 + mat(k, 463) = 0._r8 + mat(k, 470) = 0._r8 + mat(k, 475) = 0._r8 + mat(k, 481) = 0._r8 + mat(k, 494) = 0._r8 + mat(k, 516) = 0._r8 + mat(k, 529) = 0._r8 + mat(k, 539) = 0._r8 + mat(k, 543) = 0._r8 + mat(k, 544) = 0._r8 + mat(k, 546) = 0._r8 + mat(k, 548) = 0._r8 + mat(k, 549) = 0._r8 + mat(k, 550) = 0._r8 + mat(k, 551) = 0._r8 + mat(k, 555) = 0._r8 + mat(k, 557) = 0._r8 + mat(k, 558) = 0._r8 + mat(k, 559) = 0._r8 + mat(k, 567) = 0._r8 + mat(k, 568) = 0._r8 + mat(k, 584) = 0._r8 + mat(k, 585) = 0._r8 + mat(k, 602) = 0._r8 + mat(k, 603) = 0._r8 + mat(k, 604) = 0._r8 + mat(k, 609) = 0._r8 + mat(k, 613) = 0._r8 + mat(k, 614) = 0._r8 + mat(k, 620) = 0._r8 + mat(k, 625) = 0._r8 + mat(k, 626) = 0._r8 + mat(k, 629) = 0._r8 + mat(k, 630) = 0._r8 + mat(k, 638) = 0._r8 + mat(k, 640) = 0._r8 + mat(k, 641) = 0._r8 + mat(k, 642) = 0._r8 + mat(k, 643) = 0._r8 + mat(k, 650) = 0._r8 + mat(k, 653) = 0._r8 + mat(k, 661) = 0._r8 + mat(k, 662) = 0._r8 + mat(k, 663) = 0._r8 + mat(k, 664) = 0._r8 + mat(k, 669) = 0._r8 + mat(k, 670) = 0._r8 + mat(k, 671) = 0._r8 + mat(k, 682) = 0._r8 + mat(k, 683) = 0._r8 + mat(k, 684) = 0._r8 + mat(k, 708) = 0._r8 + mat(k, 710) = 0._r8 + mat(k, 711) = 0._r8 + mat(k, 712) = 0._r8 + mat(k, 722) = 0._r8 + mat(k, 729) = 0._r8 + mat(k, 736) = 0._r8 + mat(k, 740) = 0._r8 + mat(k, 742) = 0._r8 + mat(k, 743) = 0._r8 + mat(k, 744) = 0._r8 + mat(k, 745) = 0._r8 + mat(k, 748) = 0._r8 + mat(k, 749) = 0._r8 + mat(k, 751) = 0._r8 + mat(k, 752) = 0._r8 + mat(k, 753) = 0._r8 + mat(k, 778) = 0._r8 + mat(k, 783) = 0._r8 + mat(k, 786) = 0._r8 + mat(k, 787) = 0._r8 + mat(k, 788) = 0._r8 + mat(k, 789) = 0._r8 + mat(k, 790) = 0._r8 + mat(k, 792) = 0._r8 + mat(k, 795) = 0._r8 + mat(k, 796) = 0._r8 + mat(k, 799) = 0._r8 + mat(k, 810) = 0._r8 + mat(k, 814) = 0._r8 + mat(k, 817) = 0._r8 + mat(k, 820) = 0._r8 + mat(k, 821) = 0._r8 + mat(k, 849) = 0._r8 + mat(k, 854) = 0._r8 + mat(k, 860) = 0._r8 + mat(k, 865) = 0._r8 + mat(k, 875) = 0._r8 + mat(k, 883) = 0._r8 + mat(k, 885) = 0._r8 + mat(k, 886) = 0._r8 + mat(k, 891) = 0._r8 + mat(k, 899) = 0._r8 + mat(k, 902) = 0._r8 + mat(k, 904) = 0._r8 + mat(k, 905) = 0._r8 + mat(k, 906) = 0._r8 + mat(k, 910) = 0._r8 + mat(k, 911) = 0._r8 + mat(k, 912) = 0._r8 + mat(k, 913) = 0._r8 + mat(k, 917) = 0._r8 + mat(k, 918) = 0._r8 + mat(k, 921) = 0._r8 + mat(k, 923) = 0._r8 + mat(k, 928) = 0._r8 + mat(k, 937) = 0._r8 + mat(k, 940) = 0._r8 + mat(k, 941) = 0._r8 + mat(k, 942) = 0._r8 + mat(k, 943) = 0._r8 + mat(k, 947) = 0._r8 + mat(k, 948) = 0._r8 + mat(k, 958) = 0._r8 + mat(k, 964) = 0._r8 + mat(k, 965) = 0._r8 + mat(k, 967) = 0._r8 + mat(k, 968) = 0._r8 + mat(k, 972) = 0._r8 + mat(k, 974) = 0._r8 + mat(k, 981) = 0._r8 + mat(k, 983) = 0._r8 + mat(k, 984) = 0._r8 + mat(k, 986) = 0._r8 + mat(k, 994) = 0._r8 + mat(k,1002) = 0._r8 + mat(k,1014) = 0._r8 + mat(k,1015) = 0._r8 + mat(k,1016) = 0._r8 + mat(k,1018) = 0._r8 + mat(k,1020) = 0._r8 + mat(k,1038) = 0._r8 + mat(k,1050) = 0._r8 + mat(k,1051) = 0._r8 + mat(k,1055) = 0._r8 + mat(k,1056) = 0._r8 + mat(k,1058) = 0._r8 + mat(k,1061) = 0._r8 + mat(k,1064) = 0._r8 + mat(k,1066) = 0._r8 + mat(k,1067) = 0._r8 + mat(k,1068) = 0._r8 + mat(k,1078) = 0._r8 + mat(k,1089) = 0._r8 + mat(k,1092) = 0._r8 + mat(k,1094) = 0._r8 + mat(k,1095) = 0._r8 + mat(k,1096) = 0._r8 + mat(k,1100) = 0._r8 + mat(k,1101) = 0._r8 + mat(k,1102) = 0._r8 + mat(k,1103) = 0._r8 + mat(k,1106) = 0._r8 + mat(k,1113) = 0._r8 + mat(k,1117) = 0._r8 + mat(k,1120) = 0._r8 + mat(k,1133) = 0._r8 + mat(k,1135) = 0._r8 + mat(k,1136) = 0._r8 + mat(k,1139) = 0._r8 + mat(k,1141) = 0._r8 + mat(k,1142) = 0._r8 + mat(k,1144) = 0._r8 + mat(k,1145) = 0._r8 + mat(k,1147) = 0._r8 + mat(k,1150) = 0._r8 + mat(k,1152) = 0._r8 + mat(k,1173) = 0._r8 + mat(k,1179) = 0._r8 + mat(k,1185) = 0._r8 + mat(k,1272) = 0._r8 + mat(k,1283) = 0._r8 + mat(k,1287) = 0._r8 + mat(k,1289) = 0._r8 + mat(k,1304) = 0._r8 + mat(k,1309) = 0._r8 + mat(k,1314) = 0._r8 + mat(k,1317) = 0._r8 + mat(k,1321) = 0._r8 + mat(k,1324) = 0._r8 + mat(k,1326) = 0._r8 + mat(k,1327) = 0._r8 + mat(k,1332) = 0._r8 + mat(k,1340) = 0._r8 + mat(k,1343) = 0._r8 + mat(k,1345) = 0._r8 + mat(k,1346) = 0._r8 + mat(k,1347) = 0._r8 + mat(k,1348) = 0._r8 + mat(k,1351) = 0._r8 + mat(k,1352) = 0._r8 + mat(k,1354) = 0._r8 + mat(k,1356) = 0._r8 + mat(k,1358) = 0._r8 + mat(k,1361) = 0._r8 + mat(k,1363) = 0._r8 + mat(k,1365) = 0._r8 + mat(k,1366) = 0._r8 + mat(k,1367) = 0._r8 + mat(k,1368) = 0._r8 + mat(k,1369) = 0._r8 + mat(k,1370) = 0._r8 + mat(k,1371) = 0._r8 + mat(k,1372) = 0._r8 + mat(k,1373) = 0._r8 + mat(k,1377) = 0._r8 + mat(k,1378) = 0._r8 + mat(k, 1) = mat(k, 1) - dti(k) + mat(k, 2) = mat(k, 2) - dti(k) + mat(k, 3) = mat(k, 3) - dti(k) + mat(k, 4) = mat(k, 4) - dti(k) + mat(k, 5) = mat(k, 5) - dti(k) + mat(k, 6) = mat(k, 6) - dti(k) + mat(k, 7) = mat(k, 7) - dti(k) + mat(k, 8) = mat(k, 8) - dti(k) + mat(k, 9) = mat(k, 9) - dti(k) + mat(k, 10) = mat(k, 10) - dti(k) + mat(k, 11) = mat(k, 11) - dti(k) + mat(k, 12) = mat(k, 12) - dti(k) + mat(k, 13) = mat(k, 13) - dti(k) + mat(k, 14) = mat(k, 14) - dti(k) + mat(k, 15) = mat(k, 15) - dti(k) + mat(k, 16) = mat(k, 16) - dti(k) + mat(k, 17) = mat(k, 17) - dti(k) + mat(k, 18) = mat(k, 18) - dti(k) + mat(k, 19) = mat(k, 19) - dti(k) + mat(k, 20) = mat(k, 20) - dti(k) + mat(k, 21) = mat(k, 21) - dti(k) + mat(k, 22) = mat(k, 22) - dti(k) + mat(k, 23) = mat(k, 23) - dti(k) + mat(k, 24) = mat(k, 24) - dti(k) + mat(k, 25) = mat(k, 25) - dti(k) + mat(k, 26) = mat(k, 26) - dti(k) + mat(k, 27) = mat(k, 27) - dti(k) + mat(k, 28) = mat(k, 28) - dti(k) + mat(k, 29) = mat(k, 29) - dti(k) + mat(k, 30) = mat(k, 30) - dti(k) + mat(k, 32) = mat(k, 32) - dti(k) + mat(k, 33) = mat(k, 33) - dti(k) + mat(k, 34) = mat(k, 34) - dti(k) + mat(k, 37) = mat(k, 37) - dti(k) + mat(k, 40) = mat(k, 40) - dti(k) + mat(k, 43) = mat(k, 43) - dti(k) + mat(k, 46) = mat(k, 46) - dti(k) + mat(k, 49) = mat(k, 49) - dti(k) + mat(k, 52) = mat(k, 52) - dti(k) + mat(k, 55) = mat(k, 55) - dti(k) + mat(k, 58) = mat(k, 58) - dti(k) + mat(k, 61) = mat(k, 61) - dti(k) + mat(k, 64) = mat(k, 64) - dti(k) + mat(k, 67) = mat(k, 67) - dti(k) + mat(k, 71) = mat(k, 71) - dti(k) + mat(k, 75) = mat(k, 75) - dti(k) + mat(k, 79) = mat(k, 79) - dti(k) + mat(k, 82) = mat(k, 82) - dti(k) + mat(k, 85) = mat(k, 85) - dti(k) + mat(k, 87) = mat(k, 87) - dti(k) + mat(k, 90) = mat(k, 90) - dti(k) + mat(k, 92) = mat(k, 92) - dti(k) + mat(k, 96) = mat(k, 96) - dti(k) + mat(k, 100) = mat(k, 100) - dti(k) + mat(k, 103) = mat(k, 103) - dti(k) + mat(k, 108) = mat(k, 108) - dti(k) + mat(k, 111) = mat(k, 111) - dti(k) + mat(k, 115) = mat(k, 115) - dti(k) + mat(k, 120) = mat(k, 120) - dti(k) + mat(k, 124) = mat(k, 124) - dti(k) + mat(k, 130) = mat(k, 130) - dti(k) + mat(k, 136) = mat(k, 136) - dti(k) + mat(k, 142) = mat(k, 142) - dti(k) + mat(k, 147) = mat(k, 147) - dti(k) + mat(k, 152) = mat(k, 152) - dti(k) + mat(k, 157) = mat(k, 157) - dti(k) + mat(k, 160) = mat(k, 160) - dti(k) + mat(k, 168) = mat(k, 168) - dti(k) + mat(k, 176) = mat(k, 176) - dti(k) + mat(k, 182) = mat(k, 182) - dti(k) + mat(k, 188) = mat(k, 188) - dti(k) + mat(k, 194) = mat(k, 194) - dti(k) + mat(k, 200) = mat(k, 200) - dti(k) + mat(k, 206) = mat(k, 206) - dti(k) + mat(k, 211) = mat(k, 211) - dti(k) + mat(k, 218) = mat(k, 218) - dti(k) + mat(k, 225) = mat(k, 225) - dti(k) + mat(k, 232) = mat(k, 232) - dti(k) + mat(k, 240) = mat(k, 240) - dti(k) + mat(k, 244) = mat(k, 244) - dti(k) + mat(k, 252) = mat(k, 252) - dti(k) + mat(k, 260) = mat(k, 260) - dti(k) + mat(k, 268) = mat(k, 268) - dti(k) + mat(k, 275) = mat(k, 275) - dti(k) + mat(k, 284) = mat(k, 284) - dti(k) + mat(k, 291) = mat(k, 291) - dti(k) + mat(k, 300) = mat(k, 300) - dti(k) + mat(k, 311) = mat(k, 311) - dti(k) + mat(k, 319) = mat(k, 319) - dti(k) + mat(k, 324) = mat(k, 324) - dti(k) + mat(k, 331) = mat(k, 331) - dti(k) + mat(k, 337) = mat(k, 337) - dti(k) + mat(k, 345) = mat(k, 345) - dti(k) + mat(k, 353) = mat(k, 353) - dti(k) + mat(k, 361) = mat(k, 361) - dti(k) + mat(k, 372) = mat(k, 372) - dti(k) + mat(k, 385) = mat(k, 385) - dti(k) + mat(k, 395) = mat(k, 395) - dti(k) + mat(k, 402) = mat(k, 402) - dti(k) + mat(k, 410) = mat(k, 410) - dti(k) + mat(k, 417) = mat(k, 417) - dti(k) + mat(k, 430) = mat(k, 430) - dti(k) + mat(k, 449) = mat(k, 449) - dti(k) + mat(k, 460) = mat(k, 460) - dti(k) + mat(k, 465) = mat(k, 465) - dti(k) + mat(k, 473) = mat(k, 473) - dti(k) + mat(k, 484) = mat(k, 484) - dti(k) + mat(k, 495) = mat(k, 495) - dti(k) + mat(k, 505) = mat(k, 505) - dti(k) + mat(k, 518) = mat(k, 518) - dti(k) + mat(k, 525) = mat(k, 525) - dti(k) + mat(k, 541) = mat(k, 541) - dti(k) + mat(k, 562) = mat(k, 562) - dti(k) + mat(k, 569) = mat(k, 569) - dti(k) + mat(k, 581) = mat(k, 581) - dti(k) + mat(k, 593) = mat(k, 593) - dti(k) + mat(k, 607) = mat(k, 607) - dti(k) + mat(k, 628) = mat(k, 628) - dti(k) + mat(k, 652) = mat(k, 652) - dti(k) + mat(k, 672) = mat(k, 672) - dti(k) + mat(k, 700) = mat(k, 700) - dti(k) + mat(k, 716) = mat(k, 716) - dti(k) + mat(k, 738) = mat(k, 738) - dti(k) + mat(k, 777) = mat(k, 777) - dti(k) + mat(k, 794) = mat(k, 794) - dti(k) + mat(k, 809) = mat(k, 809) - dti(k) + mat(k, 851) = mat(k, 851) - dti(k) + mat(k, 878) = mat(k, 878) - dti(k) + mat(k, 916) = mat(k, 916) - dti(k) + mat(k, 938) = mat(k, 938) - dti(k) + mat(k, 976) = mat(k, 976) - dti(k) + mat(k,1034) = mat(k,1034) - dti(k) + mat(k,1081) = mat(k,1081) - dti(k) + mat(k,1099) = mat(k,1099) - dti(k) + mat(k,1146) = mat(k,1146) - dti(k) + mat(k,1186) = mat(k,1186) - dti(k) + mat(k,1273) = mat(k,1273) - dti(k) + mat(k,1306) = mat(k,1306) - dti(k) + mat(k,1330) = mat(k,1330) - dti(k) + mat(k,1357) = mat(k,1357) - dti(k) + mat(k,1379) = mat(k,1379) - dti(k) + end do + end subroutine nlnmat_finit + subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) + use chem_mods, only : gas_pcnst, rxntot, nzcnt + implicit none +!---------------------------------------------- +! ... dummy arguments +!---------------------------------------------- + integer, intent(in) :: avec_len + real(r8), intent(in) :: dti(veclen) + real(r8), intent(in) :: lmat(veclen,nzcnt) + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(inout) :: mat(veclen,nzcnt) + call nlnmat01( avec_len, mat, y, rxt ) + call nlnmat02( avec_len, mat, y, rxt ) + call nlnmat03( avec_len, mat, y, rxt ) + call nlnmat04( avec_len, mat, y, rxt ) + call nlnmat05( avec_len, mat, y, rxt ) + call nlnmat06( avec_len, mat, y, rxt ) + call nlnmat07( avec_len, mat, y, rxt ) + call nlnmat_finit( avec_len, mat, lmat, dti ) + end subroutine nlnmat + end module mo_nln_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_phtadj.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_phtadj.F90 new file mode 100644 index 0000000000..aaa43829fe --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_phtadj.F90 @@ -0,0 +1,24 @@ + module mo_phtadj + private + public :: phtadj + contains + subroutine phtadj( p_rate, inv, m, ncol, nlev ) + use chem_mods, only : nfs, phtcnt + use shr_kind_mod, only : r8 => shr_kind_r8 + implicit none +!-------------------------------------------------------------------- +! ... dummy arguments +!-------------------------------------------------------------------- + integer, intent(in) :: ncol, nlev + real(r8), intent(in) :: inv(ncol,nlev,max(1,nfs)) + real(r8), intent(in) :: m(ncol,nlev) + real(r8), intent(inout) :: p_rate(ncol,nlev,max(1,phtcnt)) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k + real(r8) :: im(ncol,nlev) + do k = 1,nlev + end do + end subroutine phtadj + end module mo_phtadj diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_prod_loss.F90 new file mode 100644 index 0000000000..322959eb81 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_prod_loss.F90 @@ -0,0 +1,810 @@ + module mo_prod_loss + use shr_kind_mod, only : r8 => shr_kind_r8 + use chem_mods, only : veclen + private + public :: exp_prod_loss + public :: imp_prod_loss + contains + subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & + rxt, het_rates, chnkpnts ) + use chem_mods, only : gas_pcnst,rxntot,clscnt1 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: ofl, ofu, chnkpnts + real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(chnkpnts,gas_pcnst) + real(r8), intent(in) :: rxt(chnkpnts,rxntot) + real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Explicit method +!-------------------------------------------------------------------- + do k = ofl,ofu + loss(k,1) = ( + het_rates(k,126))* y(k,126) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,127))* y(k,127) + prod(k,2) = 0._r8 + end do + end subroutine exp_prod_loss + subroutine imp_prod_loss( avec_len, prod, loss, y, & + rxt, het_rates ) + use chem_mods, only : gas_pcnst,rxntot,clscnt4 + implicit none +!-------------------------------------------------------------------- +! ... dummy args +!-------------------------------------------------------------------- + integer, intent(in) :: avec_len + real(r8), dimension(veclen,clscnt4), intent(out) :: & + prod, & + loss + real(r8), intent(in) :: y(veclen,gas_pcnst) + real(r8), intent(in) :: rxt(veclen,rxntot) + real(r8), intent(in) :: het_rates(veclen,gas_pcnst) +!-------------------------------------------------------------------- +! ... local variables +!-------------------------------------------------------------------- + integer :: k +!-------------------------------------------------------------------- +! ... loss and production for Implicit method +!-------------------------------------------------------------------- + do k = 1,avec_len + loss(k,1) = ( + het_rates(k,1))* y(k,1) + prod(k,1) = 0._r8 + loss(k,2) = ( + het_rates(k,2))* y(k,2) + prod(k,2) = 0._r8 + loss(k,34) = (rxt(k,303)* y(k,139) + het_rates(k,3))* y(k,3) + prod(k,34) = 0._r8 + loss(k,134) = (rxt(k,183)* y(k,25) +rxt(k,185)* y(k,100) +rxt(k,184) & + * y(k,134) + het_rates(k,4))* y(k,4) + prod(k,134) = (rxt(k,47) +2.000_r8*rxt(k,186)*y(k,6) +rxt(k,187)*y(k,41) + & + rxt(k,188)*y(k,41) +rxt(k,191)*y(k,87) +rxt(k,194)*y(k,96) + & + rxt(k,195)*y(k,139) +rxt(k,335)*y(k,112))*y(k,6) & + + (rxt(k,173)*y(k,17) +rxt(k,199)*y(k,18) + & + 3.000_r8*rxt(k,200)*y(k,37) +2.000_r8*rxt(k,201)*y(k,56) + & + rxt(k,202)*y(k,59) +2.000_r8*rxt(k,216)*y(k,24) +rxt(k,217)*y(k,26)) & + *y(k,138) + (rxt(k,197)*y(k,59) +2.000_r8*rxt(k,205)*y(k,24) + & + rxt(k,207)*y(k,26) +3.000_r8*rxt(k,212)*y(k,37))*y(k,139) & + + (2.000_r8*rxt(k,204)*y(k,24) +rxt(k,206)*y(k,26) + & + 3.000_r8*rxt(k,211)*y(k,37))*y(k,38) + (rxt(k,69) + & + rxt(k,196)*y(k,96))*y(k,59) +rxt(k,46)*y(k,5) +rxt(k,49)*y(k,7) & + +rxt(k,51)*y(k,17) +rxt(k,52)*y(k,18) +2.000_r8*rxt(k,58)*y(k,24) & + +rxt(k,59)*y(k,26) +3.000_r8*rxt(k,62)*y(k,37) +2.000_r8*rxt(k,68) & + *y(k,56) +rxt(k,74)*y(k,66) + loss(k,56) = ( + rxt(k,46) + het_rates(k,5))* y(k,5) + prod(k,56) = (rxt(k,361)*y(k,66) +rxt(k,366)*y(k,66))*y(k,63) & + +rxt(k,189)*y(k,41)*y(k,6) + loss(k,139) = (2._r8*rxt(k,186)* y(k,6) + (rxt(k,187) +rxt(k,188) + & + rxt(k,189))* y(k,41) +rxt(k,191)* y(k,87) +rxt(k,192)* y(k,88) & + +rxt(k,194)* y(k,96) +rxt(k,335)* y(k,112) +rxt(k,190)* y(k,134) & + +rxt(k,195)* y(k,139) + rxt(k,47) + het_rates(k,6))* y(k,6) + prod(k,139) = (rxt(k,48) +rxt(k,193)*y(k,96))*y(k,7) +rxt(k,185)*y(k,100) & + *y(k,4) +rxt(k,203)*y(k,138)*y(k,59) +rxt(k,198)*y(k,96)*y(k,66) + loss(k,78) = (rxt(k,193)* y(k,96) + rxt(k,48) + rxt(k,49) + rxt(k,355) & + + rxt(k,358) + rxt(k,363) + het_rates(k,7))* y(k,7) + prod(k,78) =rxt(k,192)*y(k,88)*y(k,6) + loss(k,3) = ( + het_rates(k,8))* y(k,8) + prod(k,3) = 0._r8 + loss(k,75) = (rxt(k,235)* y(k,38) +rxt(k,236)* y(k,100) +rxt(k,260)* y(k,139) & + + het_rates(k,9))* y(k,9) + prod(k,75) = 0._r8 + loss(k,58) = (rxt(k,241)* y(k,139) + het_rates(k,10))* y(k,10) + prod(k,58) = (.400_r8*rxt(k,237)*y(k,128) +.200_r8*rxt(k,238)*y(k,131)) & + *y(k,128) + loss(k,64) = (rxt(k,242)* y(k,139) + rxt(k,19) + het_rates(k,11))* y(k,11) + prod(k,64) =rxt(k,239)*y(k,134)*y(k,128) + loss(k,61) = (rxt(k,243)* y(k,38) +rxt(k,244)* y(k,139) + het_rates(k,12)) & + * y(k,12) + prod(k,61) = 0._r8 + loss(k,112) = (rxt(k,263)* y(k,89) +rxt(k,264)* y(k,100) +rxt(k,281) & + * y(k,139) + het_rates(k,13))* y(k,13) + prod(k,112) =.130_r8*rxt(k,314)*y(k,100)*y(k,70) +.700_r8*rxt(k,39)*y(k,76) + loss(k,69) = (rxt(k,268)* y(k,139) + rxt(k,20) + het_rates(k,14))* y(k,14) + prod(k,69) =rxt(k,266)*y(k,134)*y(k,129) + loss(k,44) = (rxt(k,269)* y(k,139) + het_rates(k,15))* y(k,15) + prod(k,44) = 0._r8 + loss(k,37) = (rxt(k,172)* y(k,138) + rxt(k,50) + het_rates(k,16))* y(k,16) + prod(k,37) = 0._r8 + loss(k,45) = (rxt(k,173)* y(k,138) + rxt(k,51) + het_rates(k,17))* y(k,17) + prod(k,45) = 0._r8 + loss(k,38) = (rxt(k,199)* y(k,138) + rxt(k,52) + het_rates(k,18))* y(k,18) + prod(k,38) = 0._r8 + loss(k,39) = (rxt(k,174)* y(k,138) + rxt(k,53) + het_rates(k,19))* y(k,19) + prod(k,39) = 0._r8 + loss(k,40) = (rxt(k,175)* y(k,138) + rxt(k,54) + het_rates(k,20))* y(k,20) + prod(k,40) = 0._r8 + loss(k,41) = (rxt(k,176)* y(k,138) + rxt(k,55) + het_rates(k,21))* y(k,21) + prod(k,41) = 0._r8 + loss(k,42) = (rxt(k,177)* y(k,138) + rxt(k,56) + het_rates(k,22))* y(k,22) + prod(k,42) = 0._r8 + loss(k,43) = (rxt(k,178)* y(k,138) + rxt(k,57) + het_rates(k,23))* y(k,23) + prod(k,43) = 0._r8 + loss(k,77) = (rxt(k,204)* y(k,38) +rxt(k,216)* y(k,138) +rxt(k,205)* y(k,139) & + + rxt(k,58) + het_rates(k,24))* y(k,24) + prod(k,77) = 0._r8 + loss(k,126) = (rxt(k,183)* y(k,4) +rxt(k,147)* y(k,38) +rxt(k,221)* y(k,89) & + +rxt(k,222)* y(k,96) +rxt(k,223)* y(k,139) + rxt(k,21) + rxt(k,22) & + + het_rates(k,25))* y(k,25) + prod(k,126) = (rxt(k,154)*y(k,41) +2.000_r8*rxt(k,224)*y(k,131) + & + rxt(k,225)*y(k,131) +rxt(k,227)*y(k,87) + & + .700_r8*rxt(k,238)*y(k,128) +rxt(k,248)*y(k,130) + & + rxt(k,265)*y(k,129) +.800_r8*rxt(k,277)*y(k,141) + & + .880_r8*rxt(k,284)*y(k,136) +2.000_r8*rxt(k,293)*y(k,137) + & + 1.200_r8*rxt(k,310)*y(k,135) +.800_r8*rxt(k,320)*y(k,142))*y(k,131) & + + (.500_r8*rxt(k,254)*y(k,133) +rxt(k,275)*y(k,140) + & + rxt(k,279)*y(k,141) +.250_r8*rxt(k,287)*y(k,136) + & + rxt(k,296)*y(k,137) +.072_r8*rxt(k,307)*y(k,71) + & + .550_r8*rxt(k,312)*y(k,135) +.250_r8*rxt(k,322)*y(k,142))*y(k,87) & + + (rxt(k,228)*y(k,34) +.300_r8*rxt(k,229)*y(k,35) + & + .500_r8*rxt(k,252)*y(k,33) +.800_r8*rxt(k,257)*y(k,52) + & + rxt(k,259)*y(k,105) +.500_r8*rxt(k,298)*y(k,75))*y(k,139) & + + (rxt(k,236)*y(k,9) +.500_r8*rxt(k,264)*y(k,13) + & + .120_r8*rxt(k,289)*y(k,73) +.600_r8*rxt(k,299)*y(k,76) + & + .910_r8*rxt(k,314)*y(k,70))*y(k,100) + (.250_r8*rxt(k,286)*y(k,136) + & + rxt(k,297)*y(k,137) +.072_r8*rxt(k,308)*y(k,71) + & + .600_r8*rxt(k,313)*y(k,135))*y(k,89) + (.250_r8*rxt(k,283)*y(k,136) + & + rxt(k,292)*y(k,137) +.600_r8*rxt(k,309)*y(k,135) + & + .250_r8*rxt(k,319)*y(k,142))*y(k,130) + (.180_r8*rxt(k,28) + & + rxt(k,232)*y(k,138) +rxt(k,233)*y(k,138))*y(k,36) & + + (.150_r8*rxt(k,278)*y(k,141) +.450_r8*rxt(k,294)*y(k,137) + & + .206_r8*rxt(k,306)*y(k,71))*y(k,134) +rxt(k,27)*y(k,35) +rxt(k,32) & + *y(k,52) +rxt(k,34)*y(k,68) +rxt(k,35)*y(k,72) +1.340_r8*rxt(k,36) & + *y(k,73) +rxt(k,40)*y(k,90) +rxt(k,41)*y(k,104) +rxt(k,43)*y(k,108) & + +rxt(k,44)*y(k,109) +2.000_r8*rxt(k,255)*y(k,132) & + +2.000_r8*rxt(k,295)*y(k,137)*y(k,137) + loss(k,86) = (rxt(k,206)* y(k,38) +rxt(k,217)* y(k,138) +rxt(k,207)* y(k,139) & + + rxt(k,59) + het_rates(k,26))* y(k,26) + prod(k,86) = 0._r8 + loss(k,46) = (rxt(k,208)* y(k,139) + rxt(k,60) + het_rates(k,27))* y(k,27) + prod(k,46) = 0._r8 + loss(k,111) = (rxt(k,245)* y(k,89) +rxt(k,246)* y(k,139) + rxt(k,23) & + + het_rates(k,28))* y(k,28) + prod(k,111) = (rxt(k,240)*y(k,128) +.270_r8*rxt(k,267)*y(k,129) + & + rxt(k,275)*y(k,140))*y(k,87) + (rxt(k,19) + & + .500_r8*rxt(k,242)*y(k,139))*y(k,11) + (.500_r8*rxt(k,264)*y(k,13) + & + .100_r8*rxt(k,299)*y(k,76))*y(k,100) & + + (1.600_r8*rxt(k,237)*y(k,128) +.800_r8*rxt(k,238)*y(k,131)) & + *y(k,128) +rxt(k,241)*y(k,139)*y(k,10) +rxt(k,43)*y(k,108) + loss(k,68) = (rxt(k,209)* y(k,38) +rxt(k,210)* y(k,139) + rxt(k,61) & + + het_rates(k,29))* y(k,29) + prod(k,68) = 0._r8 + loss(k,93) = (rxt(k,282)* y(k,139) + rxt(k,24) + het_rates(k,30))* y(k,30) + prod(k,93) = (.820_r8*rxt(k,265)*y(k,131) +.820_r8*rxt(k,267)*y(k,87)) & + *y(k,129) +.820_r8*rxt(k,20)*y(k,14) +.100_r8*rxt(k,327)*y(k,139) & + *y(k,124) + loss(k,117) = (rxt(k,270)* y(k,89) +rxt(k,271)* y(k,139) + rxt(k,25) & + + het_rates(k,31))* y(k,31) + prod(k,117) = (.250_r8*rxt(k,283)*y(k,130) +.240_r8*rxt(k,284)*y(k,131) + & + .250_r8*rxt(k,286)*y(k,89) +.250_r8*rxt(k,287)*y(k,87))*y(k,136) & + + (.250_r8*rxt(k,319)*y(k,130) +.100_r8*rxt(k,320)*y(k,131) + & + .250_r8*rxt(k,322)*y(k,87) +.250_r8*rxt(k,323)*y(k,89))*y(k,142) & + + (.880_r8*rxt(k,289)*y(k,73) +.500_r8*rxt(k,299)*y(k,76))*y(k,100) & + + (rxt(k,272)*y(k,68) +rxt(k,273)*y(k,90))*y(k,139) & + +.020_r8*rxt(k,312)*y(k,135)*y(k,87) +.500_r8*rxt(k,277)*y(k,141) & + *y(k,131) + loss(k,89) = (rxt(k,251)* y(k,139) + het_rates(k,32))* y(k,32) + prod(k,89) = (.100_r8*rxt(k,248)*y(k,131) +.150_r8*rxt(k,249)*y(k,134)) & + *y(k,130) +.120_r8*rxt(k,264)*y(k,100)*y(k,13) & + +.150_r8*rxt(k,294)*y(k,137)*y(k,134) + loss(k,85) = (rxt(k,252)* y(k,139) + rxt(k,26) + het_rates(k,33))* y(k,33) + prod(k,85) = (.400_r8*rxt(k,249)*y(k,130) +.400_r8*rxt(k,294)*y(k,137)) & + *y(k,134) + loss(k,79) = (rxt(k,228)* y(k,139) + het_rates(k,34))* y(k,34) + prod(k,79) = (rxt(k,225)*y(k,131) +.300_r8*rxt(k,238)*y(k,128) + & + .500_r8*rxt(k,277)*y(k,141) +.250_r8*rxt(k,284)*y(k,136) + & + .250_r8*rxt(k,310)*y(k,135) +.300_r8*rxt(k,320)*y(k,142))*y(k,131) + loss(k,72) = (rxt(k,229)* y(k,139) + rxt(k,27) + het_rates(k,35))* y(k,35) + prod(k,72) =rxt(k,226)*y(k,134)*y(k,131) + loss(k,109) = (rxt(k,148)* y(k,38) + (rxt(k,231) +rxt(k,232) +rxt(k,233)) & + * y(k,138) +rxt(k,230)* y(k,139) + rxt(k,28) + rxt(k,29) & + + het_rates(k,36))* y(k,36) + prod(k,109) =.100_r8*rxt(k,264)*y(k,100)*y(k,13) + loss(k,71) = (rxt(k,211)* y(k,38) +rxt(k,200)* y(k,138) +rxt(k,212)* y(k,139) & + + rxt(k,62) + het_rates(k,37))* y(k,37) + prod(k,71) = 0._r8 + loss(k,131) = (rxt(k,243)* y(k,12) +rxt(k,204)* y(k,24) +rxt(k,147)* y(k,25) & + +rxt(k,206)* y(k,26) +rxt(k,209)* y(k,29) +rxt(k,148)* y(k,36) & + +rxt(k,211)* y(k,37) +rxt(k,160)* y(k,42) +rxt(k,149)* y(k,55) & + +rxt(k,150)* y(k,57) +rxt(k,169)* y(k,67) +rxt(k,153)* y(k,100) & + + (rxt(k,151) +rxt(k,152))* y(k,134) + het_rates(k,38))* y(k,38) + prod(k,131) = (4.000_r8*rxt(k,172)*y(k,16) +rxt(k,173)*y(k,17) + & + 3.000_r8*rxt(k,174)*y(k,19) +3.000_r8*rxt(k,175)*y(k,20) + & + 2.000_r8*rxt(k,176)*y(k,21) +rxt(k,177)*y(k,22) + & + 2.000_r8*rxt(k,178)*y(k,23) +rxt(k,179)*y(k,63) + & + 2.000_r8*rxt(k,218)*y(k,60) +rxt(k,219)*y(k,61) +rxt(k,220)*y(k,62)) & + *y(k,138) + (rxt(k,65) +rxt(k,154)*y(k,131) + & + 2.000_r8*rxt(k,155)*y(k,41) +rxt(k,157)*y(k,41) +rxt(k,159)*y(k,87) + & + rxt(k,164)*y(k,96) +rxt(k,165)*y(k,139) +rxt(k,188)*y(k,6) + & + rxt(k,336)*y(k,112))*y(k,41) + (rxt(k,168)*y(k,63) + & + 3.000_r8*rxt(k,208)*y(k,27) +rxt(k,210)*y(k,29) + & + 2.000_r8*rxt(k,213)*y(k,60) +rxt(k,214)*y(k,61) +rxt(k,215)*y(k,62)) & + *y(k,139) + (rxt(k,73) +rxt(k,167)*y(k,96))*y(k,63) +rxt(k,46)*y(k,5) & + +4.000_r8*rxt(k,50)*y(k,16) +rxt(k,51)*y(k,17) +3.000_r8*rxt(k,53) & + *y(k,19) +3.000_r8*rxt(k,54)*y(k,20) +2.000_r8*rxt(k,55)*y(k,21) & + +rxt(k,56)*y(k,22) +2.000_r8*rxt(k,57)*y(k,23) +3.000_r8*rxt(k,60) & + *y(k,27) +rxt(k,61)*y(k,29) +2.000_r8*rxt(k,63)*y(k,39) & + +2.000_r8*rxt(k,64)*y(k,40) +rxt(k,67)*y(k,42) +2.000_r8*rxt(k,70) & + *y(k,60) +rxt(k,71)*y(k,61) +rxt(k,72)*y(k,62) +rxt(k,75)*y(k,67) + loss(k,49) = ( + rxt(k,63) + het_rates(k,39))* y(k,39) + prod(k,49) = (rxt(k,354)*y(k,67) +rxt(k,359)*y(k,42) +rxt(k,360)*y(k,67) + & + rxt(k,364)*y(k,42) +rxt(k,365)*y(k,67) +rxt(k,369)*y(k,42))*y(k,63) & + +rxt(k,160)*y(k,42)*y(k,38) +rxt(k,156)*y(k,41)*y(k,41) + loss(k,33) = ( + rxt(k,64) + rxt(k,182) + het_rates(k,40))* y(k,40) + prod(k,33) =rxt(k,181)*y(k,41)*y(k,41) + loss(k,128) = ((rxt(k,187) +rxt(k,188) +rxt(k,189))* y(k,6) & + + 2._r8*(rxt(k,155) +rxt(k,156) +rxt(k,157) +rxt(k,181))* y(k,41) & + +rxt(k,159)* y(k,87) +rxt(k,161)* y(k,88) +rxt(k,164)* y(k,96) & + +rxt(k,336)* y(k,112) +rxt(k,154)* y(k,131) +rxt(k,158)* y(k,134) & + + (rxt(k,165) +rxt(k,166))* y(k,139) + rxt(k,65) + het_rates(k,41)) & + * y(k,41) + prod(k,128) = (rxt(k,152)*y(k,134) +rxt(k,153)*y(k,100) +rxt(k,169)*y(k,67)) & + *y(k,38) + (rxt(k,66) +rxt(k,162)*y(k,96))*y(k,42) & + + (rxt(k,170)*y(k,96) +rxt(k,171)*y(k,139))*y(k,67) + (rxt(k,76) + & + rxt(k,341)*y(k,112))*y(k,102) +2.000_r8*rxt(k,182)*y(k,40) & + +rxt(k,180)*y(k,138)*y(k,63) + loss(k,103) = (rxt(k,160)* y(k,38) + (rxt(k,359) +rxt(k,364) +rxt(k,369)) & + * y(k,63) +rxt(k,162)* y(k,96) +rxt(k,163)* y(k,139) + rxt(k,66) & + + rxt(k,67) + rxt(k,357) + rxt(k,362) + rxt(k,368) & + + het_rates(k,42))* y(k,42) + prod(k,103) =rxt(k,161)*y(k,88)*y(k,41) + loss(k,4) = ( + het_rates(k,43))* y(k,43) + prod(k,4) = 0._r8 + loss(k,115) = (rxt(k,234)* y(k,139) + het_rates(k,44))* y(k,44) + prod(k,115) = (rxt(k,21) +rxt(k,22) +rxt(k,147)*y(k,38) +rxt(k,183)*y(k,4) + & + rxt(k,221)*y(k,89) +rxt(k,222)*y(k,96) +rxt(k,223)*y(k,139))*y(k,25) & + + (.630_r8*rxt(k,236)*y(k,9) +.560_r8*rxt(k,264)*y(k,13) + & + .650_r8*rxt(k,289)*y(k,73) +.560_r8*rxt(k,299)*y(k,76) + & + .620_r8*rxt(k,314)*y(k,70))*y(k,100) + (.220_r8*rxt(k,283)*y(k,130) + & + .110_r8*rxt(k,284)*y(k,131) +.220_r8*rxt(k,286)*y(k,89) + & + .220_r8*rxt(k,287)*y(k,87))*y(k,136) + (.250_r8*rxt(k,319)*y(k,130) + & + .200_r8*rxt(k,320)*y(k,131) +.250_r8*rxt(k,322)*y(k,87) + & + .500_r8*rxt(k,323)*y(k,89))*y(k,142) + (rxt(k,25) + & + rxt(k,270)*y(k,89) +rxt(k,271)*y(k,139))*y(k,31) + (rxt(k,79) + & + rxt(k,330)*y(k,96) +rxt(k,331)*y(k,139))*y(k,103) & + + (2.000_r8*rxt(k,33) +rxt(k,258)*y(k,139))*y(k,53) +rxt(k,23) & + *y(k,28) +rxt(k,209)*y(k,38)*y(k,29) +.380_r8*rxt(k,28)*y(k,36) & + +rxt(k,30)*y(k,45) +rxt(k,32)*y(k,52) +1.340_r8*rxt(k,37)*y(k,73) & + +.700_r8*rxt(k,39)*y(k,76) +rxt(k,41)*y(k,104) + loss(k,104) = ( + rxt(k,30) + het_rates(k,45))* y(k,45) + prod(k,104) = (rxt(k,234)*y(k,44) +rxt(k,251)*y(k,32) + & + .500_r8*rxt(k,252)*y(k,33) +.800_r8*rxt(k,257)*y(k,52) + & + rxt(k,258)*y(k,53) +.500_r8*rxt(k,298)*y(k,75))*y(k,139) & + + (2.000_r8*rxt(k,247)*y(k,130) +.900_r8*rxt(k,248)*y(k,131) + & + rxt(k,250)*y(k,87) +2.000_r8*rxt(k,292)*y(k,137) + & + rxt(k,319)*y(k,142))*y(k,130) + (rxt(k,293)*y(k,131) + & + .450_r8*rxt(k,294)*y(k,134) +2.000_r8*rxt(k,295)*y(k,137))*y(k,137) & + + (.200_r8*rxt(k,264)*y(k,13) +.100_r8*rxt(k,299)*y(k,76))*y(k,100) & + +rxt(k,26)*y(k,33) +.440_r8*rxt(k,28)*y(k,36) +.400_r8*rxt(k,42) & + *y(k,105) + loss(k,62) = (rxt(k,328)* y(k,89) + (rxt(k,329) +rxt(k,343))* y(k,139) & + + het_rates(k,46))* y(k,46) + prod(k,62) = 0._r8 + loss(k,5) = ( + het_rates(k,47))* y(k,47) + prod(k,5) = 0._r8 + loss(k,6) = ( + het_rates(k,48))* y(k,48) + prod(k,6) = 0._r8 + loss(k,7) = ( + het_rates(k,49))* y(k,49) + prod(k,7) = 0._r8 + loss(k,8) = ( + rxt(k,370) + het_rates(k,50))* y(k,50) + prod(k,8) = 0._r8 + loss(k,47) = ( + rxt(k,31) + het_rates(k,51))* y(k,51) + prod(k,47) =rxt(k,253)*y(k,134)*y(k,133) + loss(k,113) = (rxt(k,257)* y(k,139) + rxt(k,32) + het_rates(k,52))* y(k,52) + prod(k,113) = (.530_r8*rxt(k,283)*y(k,130) +.260_r8*rxt(k,284)*y(k,131) + & + .530_r8*rxt(k,286)*y(k,89) +.530_r8*rxt(k,287)*y(k,87))*y(k,136) & + + (.250_r8*rxt(k,319)*y(k,130) +.100_r8*rxt(k,320)*y(k,131) + & + .250_r8*rxt(k,322)*y(k,87) +.250_r8*rxt(k,323)*y(k,89))*y(k,142) & + +.020_r8*rxt(k,312)*y(k,135)*y(k,87) +rxt(k,256)*y(k,132)*y(k,97) + loss(k,91) = (rxt(k,258)* y(k,139) + rxt(k,33) + het_rates(k,53))* y(k,53) + prod(k,91) = (.250_r8*rxt(k,319)*y(k,130) +.100_r8*rxt(k,320)*y(k,131) + & + .250_r8*rxt(k,322)*y(k,87) +.250_r8*rxt(k,323)*y(k,89))*y(k,142) & + +.200_r8*rxt(k,257)*y(k,139)*y(k,52) +.020_r8*rxt(k,312)*y(k,135) & + *y(k,87) + loss(k,125) = (rxt(k,110)* y(k,97) +rxt(k,113)* y(k,100) + (rxt(k,107) + & + rxt(k,108) +rxt(k,109))* y(k,134) + het_rates(k,54))* y(k,54) + prod(k,125) = (rxt(k,114)*y(k,55) +rxt(k,117)*y(k,96) +rxt(k,135)*y(k,77) + & + rxt(k,223)*y(k,25) +rxt(k,331)*y(k,103) +rxt(k,337)*y(k,110) + & + rxt(k,342)*y(k,112))*y(k,139) + (rxt(k,87)*y(k,55) + & + rxt(k,180)*y(k,63) +rxt(k,203)*y(k,59) +rxt(k,232)*y(k,36))*y(k,138) & + + (.330_r8*rxt(k,28) +rxt(k,29))*y(k,36) + (rxt(k,105)*y(k,96) + & + rxt(k,149)*y(k,38))*y(k,55) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,143) & + +2.000_r8*rxt(k,21)*y(k,25) +rxt(k,27)*y(k,35) +rxt(k,69)*y(k,59) & + +rxt(k,73)*y(k,63) + loss(k,108) = (rxt(k,149)* y(k,38) +rxt(k,105)* y(k,96) +rxt(k,87)* y(k,138) & + +rxt(k,114)* y(k,139) + het_rates(k,55))* y(k,55) + prod(k,108) = (1.440_r8*rxt(k,28) +rxt(k,233)*y(k,138))*y(k,36) +rxt(k,22) & + *y(k,25) +rxt(k,107)*y(k,134)*y(k,54) +rxt(k,1)*y(k,143) + loss(k,35) = (rxt(k,201)* y(k,138) + rxt(k,68) + het_rates(k,56))* y(k,56) + prod(k,35) = 0._r8 + loss(k,83) = (rxt(k,150)* y(k,38) +rxt(k,106)* y(k,96) +rxt(k,115)* y(k,139) & + + rxt(k,4) + het_rates(k,57))* y(k,57) + prod(k,83) =rxt(k,121)*y(k,134)*y(k,134) +rxt(k,120)*y(k,139)*y(k,139) + loss(k,48) = ( + rxt(k,78) + het_rates(k,58))* y(k,58) + prod(k,48) =rxt(k,344)*y(k,143)*y(k,114) + loss(k,99) = (rxt(k,196)* y(k,96) + (rxt(k,202) +rxt(k,203))* y(k,138) & + +rxt(k,197)* y(k,139) + rxt(k,69) + het_rates(k,59))* y(k,59) + prod(k,99) = (rxt(k,183)*y(k,25) +rxt(k,184)*y(k,134))*y(k,4) + loss(k,52) = (rxt(k,218)* y(k,138) +rxt(k,213)* y(k,139) + rxt(k,70) & + + het_rates(k,60))* y(k,60) + prod(k,52) = 0._r8 + loss(k,53) = (rxt(k,219)* y(k,138) +rxt(k,214)* y(k,139) + rxt(k,71) & + + het_rates(k,61))* y(k,61) + prod(k,53) = 0._r8 + loss(k,55) = (rxt(k,220)* y(k,138) +rxt(k,215)* y(k,139) + rxt(k,72) & + + het_rates(k,62))* y(k,62) + prod(k,55) = 0._r8 + loss(k,130) = ((rxt(k,359) +rxt(k,364) +rxt(k,369))* y(k,42) + (rxt(k,361) + & + rxt(k,366))* y(k,66) + (rxt(k,354) +rxt(k,360) +rxt(k,365))* y(k,67) & + +rxt(k,167)* y(k,96) + (rxt(k,179) +rxt(k,180))* y(k,138) & + +rxt(k,168)* y(k,139) + rxt(k,73) + het_rates(k,63))* y(k,63) + prod(k,130) = (rxt(k,147)*y(k,25) +rxt(k,148)*y(k,36) +rxt(k,149)*y(k,55) + & + rxt(k,150)*y(k,57) +rxt(k,151)*y(k,134) +rxt(k,169)*y(k,67) + & + rxt(k,204)*y(k,24) +rxt(k,206)*y(k,26) +2.000_r8*rxt(k,209)*y(k,29) + & + rxt(k,211)*y(k,37) +rxt(k,243)*y(k,12))*y(k,38) +rxt(k,166)*y(k,139) & + *y(k,41) + loss(k,100) = (rxt(k,144)* y(k,139) + rxt(k,9) + het_rates(k,64))* y(k,64) + prod(k,100) = (rxt(k,357) +rxt(k,362) +rxt(k,368) +rxt(k,359)*y(k,63) + & + rxt(k,364)*y(k,63) +rxt(k,369)*y(k,63))*y(k,42) + (rxt(k,350) + & + rxt(k,221)*y(k,25) +rxt(k,245)*y(k,28) +rxt(k,270)*y(k,31) + & + rxt(k,328)*y(k,46))*y(k,89) + (2.000_r8*rxt(k,347) + & + 2.000_r8*rxt(k,353) +2.000_r8*rxt(k,356) +2.000_r8*rxt(k,367)) & + *y(k,79) + (rxt(k,355) +rxt(k,358) +rxt(k,363))*y(k,7) & + + (.500_r8*rxt(k,349) +rxt(k,143)*y(k,139))*y(k,88) +rxt(k,351) & + *y(k,104) + loss(k,76) = (rxt(k,122)* y(k,139) + rxt(k,10) + rxt(k,11) + rxt(k,145) & + + het_rates(k,65))* y(k,65) + prod(k,76) =rxt(k,141)*y(k,134)*y(k,88) + loss(k,92) = ((rxt(k,361) +rxt(k,366))* y(k,63) +rxt(k,198)* y(k,96) & + + rxt(k,74) + het_rates(k,66))* y(k,66) + prod(k,92) = (rxt(k,355) +rxt(k,358) +rxt(k,363))*y(k,7) +rxt(k,190)*y(k,134) & + *y(k,6) + loss(k,98) = (rxt(k,169)* y(k,38) + (rxt(k,354) +rxt(k,360) +rxt(k,365)) & + * y(k,63) +rxt(k,170)* y(k,96) +rxt(k,171)* y(k,139) + rxt(k,75) & + + het_rates(k,67))* y(k,67) + prod(k,98) = (rxt(k,357) +rxt(k,362) +rxt(k,368) +rxt(k,163)*y(k,139)) & + *y(k,42) +rxt(k,158)*y(k,134)*y(k,41) + loss(k,110) = (rxt(k,272)* y(k,139) + rxt(k,34) + het_rates(k,68))* y(k,68) + prod(k,110) = (.220_r8*rxt(k,283)*y(k,130) +.230_r8*rxt(k,284)*y(k,131) + & + .220_r8*rxt(k,286)*y(k,89) +.220_r8*rxt(k,287)*y(k,87))*y(k,136) & + + (.250_r8*rxt(k,319)*y(k,130) +.100_r8*rxt(k,320)*y(k,131) + & + .250_r8*rxt(k,322)*y(k,87) +.250_r8*rxt(k,323)*y(k,89))*y(k,142) & + + (.500_r8*rxt(k,276)*y(k,108) +.500_r8*rxt(k,298)*y(k,75))*y(k,139) & + +.020_r8*rxt(k,312)*y(k,135)*y(k,87) +.200_r8*rxt(k,277)*y(k,141) & + *y(k,131) + loss(k,66) = (rxt(k,304)* y(k,139) + het_rates(k,69))* y(k,69) + prod(k,66) = (.400_r8*rxt(k,309)*y(k,130) +.300_r8*rxt(k,310)*y(k,131) + & + .330_r8*rxt(k,312)*y(k,87) +.400_r8*rxt(k,313)*y(k,89))*y(k,135) & + + (rxt(k,317)*y(k,89) +rxt(k,318)*y(k,139))*y(k,104) + loss(k,102) = (rxt(k,305)* y(k,89) +rxt(k,314)* y(k,100) +rxt(k,315) & + * y(k,139) + het_rates(k,70))* y(k,70) + prod(k,102) = 0._r8 + loss(k,95) = (rxt(k,307)* y(k,87) +rxt(k,308)* y(k,89) +rxt(k,306)* y(k,134) & + + het_rates(k,71))* y(k,71) + prod(k,95) =rxt(k,305)*y(k,89)*y(k,70) + loss(k,80) = (rxt(k,316)* y(k,139) + rxt(k,35) + het_rates(k,72))* y(k,72) + prod(k,80) =rxt(k,311)*y(k,135)*y(k,134) + loss(k,114) = (rxt(k,289)* y(k,100) +rxt(k,290)* y(k,139) + rxt(k,36) & + + rxt(k,37) + het_rates(k,73))* y(k,73) + prod(k,114) = (.250_r8*rxt(k,309)*y(k,130) +.190_r8*rxt(k,310)*y(k,131) + & + .230_r8*rxt(k,312)*y(k,87) +.250_r8*rxt(k,313)*y(k,89))*y(k,135) & + + (.167_r8*rxt(k,306)*y(k,134) +.167_r8*rxt(k,307)*y(k,87) + & + .167_r8*rxt(k,308)*y(k,89))*y(k,71) + (.300_r8*rxt(k,314)*y(k,70) + & + 1.122_r8*rxt(k,326)*y(k,124))*y(k,100) +.300_r8*rxt(k,35)*y(k,72) + loss(k,63) = (rxt(k,291)* y(k,139) + het_rates(k,74))* y(k,74) + prod(k,63) =rxt(k,285)*y(k,136)*y(k,134) + loss(k,84) = (rxt(k,298)* y(k,139) + rxt(k,38) + rxt(k,302) & + + het_rates(k,75))* y(k,75) + prod(k,84) =rxt(k,301)*y(k,137)*y(k,88) + loss(k,123) = (rxt(k,299)* y(k,100) +rxt(k,300)* y(k,139) + rxt(k,39) & + + het_rates(k,76))* y(k,76) + prod(k,123) = (.350_r8*rxt(k,309)*y(k,130) +.260_r8*rxt(k,310)*y(k,131) + & + .320_r8*rxt(k,312)*y(k,87) +.350_r8*rxt(k,313)*y(k,89))*y(k,135) & + + (.039_r8*rxt(k,306)*y(k,134) +.039_r8*rxt(k,307)*y(k,87) + & + .039_r8*rxt(k,308)*y(k,89))*y(k,71) + (.200_r8*rxt(k,314)*y(k,70) + & + .442_r8*rxt(k,326)*y(k,124))*y(k,100) +.700_r8*rxt(k,35)*y(k,72) + loss(k,88) = (rxt(k,123)* y(k,87) + (rxt(k,124) +rxt(k,125) +rxt(k,126)) & + * y(k,88) +rxt(k,127)* y(k,97) +rxt(k,135)* y(k,139) & + + het_rates(k,77))* y(k,77) + prod(k,88) =rxt(k,15)*y(k,87) + loss(k,57) = ((rxt(k,139) +rxt(k,140))* y(k,138) + rxt(k,12) & + + het_rates(k,78))* y(k,78) + prod(k,57) =rxt(k,124)*y(k,88)*y(k,77) + loss(k,60) = ( + rxt(k,13) + rxt(k,14) + rxt(k,146) + rxt(k,347) + rxt(k,353) & + + rxt(k,356) + rxt(k,367) + het_rates(k,79))* y(k,79) + prod(k,60) =rxt(k,142)*y(k,89)*y(k,88) + loss(k,9) = ( + het_rates(k,80))* y(k,80) + prod(k,9) = 0._r8 + loss(k,10) = ( + het_rates(k,81))* y(k,81) + prod(k,10) = 0._r8 + loss(k,11) = ( + het_rates(k,82))* y(k,82) + prod(k,11) = 0._r8 + loss(k,36) = (rxt(k,345)* y(k,139) + het_rates(k,83))* y(k,83) + prod(k,36) = 0._r8 + loss(k,12) = ( + rxt(k,348) + het_rates(k,84))* y(k,84) + prod(k,12) = 0._r8 + loss(k,13) = ( + rxt(k,372) + het_rates(k,85))* y(k,85) + prod(k,13) = 0._r8 + loss(k,14) = ( + rxt(k,371) + het_rates(k,86))* y(k,86) + prod(k,14) = 0._r8 + loss(k,127) = (rxt(k,191)* y(k,6) +rxt(k,159)* y(k,41) +rxt(k,307)* y(k,71) & + +rxt(k,123)* y(k,77) +rxt(k,132)* y(k,89) +rxt(k,138)* y(k,96) & + +rxt(k,137)* y(k,100) +rxt(k,240)* y(k,128) +rxt(k,267)* y(k,129) & + +rxt(k,250)* y(k,130) +rxt(k,227)* y(k,131) +rxt(k,254)* y(k,133) & + +rxt(k,136)* y(k,134) +rxt(k,312)* y(k,135) + (rxt(k,287) + & + rxt(k,288))* y(k,136) +rxt(k,296)* y(k,137) +rxt(k,275)* y(k,140) & + +rxt(k,279)* y(k,141) +rxt(k,322)* y(k,142) + rxt(k,15) & + + het_rates(k,87))* y(k,87) + prod(k,127) = (rxt(k,16) +.500_r8*rxt(k,349) +2.000_r8*rxt(k,125)*y(k,77) + & + rxt(k,128)*y(k,96) +rxt(k,338)*y(k,112))*y(k,88) & + + (rxt(k,127)*y(k,97) +rxt(k,135)*y(k,139))*y(k,77) & + +2.000_r8*rxt(k,139)*y(k,138)*y(k,78) +rxt(k,14)*y(k,79) +rxt(k,17) & + *y(k,89) + loss(k,129) = (rxt(k,192)* y(k,6) +rxt(k,161)* y(k,41) + (rxt(k,124) + & + rxt(k,125) +rxt(k,126))* y(k,77) +rxt(k,142)* y(k,89) + (rxt(k,128) + & + rxt(k,130))* y(k,96) +rxt(k,129)* y(k,100) +rxt(k,338)* y(k,112) & + +rxt(k,261)* y(k,130) +rxt(k,141)* y(k,134) +rxt(k,301)* y(k,137) & + +rxt(k,143)* y(k,139) + rxt(k,16) + rxt(k,349) + het_rates(k,88)) & + * y(k,88) + prod(k,129) = (2.000_r8*rxt(k,132)*y(k,89) +rxt(k,136)*y(k,134) + & + rxt(k,137)*y(k,100) +rxt(k,138)*y(k,96) +rxt(k,159)*y(k,41) + & + rxt(k,191)*y(k,6) +rxt(k,227)*y(k,131) +rxt(k,240)*y(k,128) + & + rxt(k,250)*y(k,130) +rxt(k,254)*y(k,133) +rxt(k,267)*y(k,129) + & + rxt(k,275)*y(k,140) +rxt(k,279)*y(k,141) +rxt(k,287)*y(k,136) + & + rxt(k,296)*y(k,137) +1.206_r8*rxt(k,307)*y(k,71) + & + .920_r8*rxt(k,312)*y(k,135) +rxt(k,322)*y(k,142))*y(k,87) & + + (rxt(k,18) +rxt(k,131)*y(k,134) +rxt(k,133)*y(k,96) + & + rxt(k,134)*y(k,139) +rxt(k,286)*y(k,136) +rxt(k,297)*y(k,137) + & + 1.206_r8*rxt(k,308)*y(k,71) +rxt(k,313)*y(k,135) + & + rxt(k,317)*y(k,104) +rxt(k,323)*y(k,142) +rxt(k,325)*y(k,124)) & + *y(k,89) + (rxt(k,11) +rxt(k,145) +rxt(k,122)*y(k,139))*y(k,65) & + + (rxt(k,38) +rxt(k,302))*y(k,75) + (rxt(k,13) +rxt(k,146))*y(k,79) & + + (rxt(k,40) +rxt(k,273)*y(k,139))*y(k,90) + (rxt(k,41) + & + .400_r8*rxt(k,318)*y(k,139))*y(k,104) + (.600_r8*rxt(k,42) + & + rxt(k,262))*y(k,105) +rxt(k,48)*y(k,7) +rxt(k,66)*y(k,42) +rxt(k,9) & + *y(k,64) +.206_r8*rxt(k,306)*y(k,134)*y(k,71) + loss(k,135) = (rxt(k,263)* y(k,13) +rxt(k,221)* y(k,25) +rxt(k,245)* y(k,28) & + +rxt(k,270)* y(k,31) +rxt(k,328)* y(k,46) +rxt(k,305)* y(k,70) & + +rxt(k,308)* y(k,71) +rxt(k,132)* y(k,87) +rxt(k,142)* y(k,88) & + +rxt(k,133)* y(k,96) +rxt(k,317)* y(k,104) +rxt(k,325)* y(k,124) & + +rxt(k,131)* y(k,134) +rxt(k,313)* y(k,135) +rxt(k,286)* y(k,136) & + +rxt(k,297)* y(k,137) +rxt(k,134)* y(k,139) +rxt(k,323)* y(k,142) & + + rxt(k,17) + rxt(k,18) + rxt(k,350) + het_rates(k,89))* y(k,89) + prod(k,135) = (rxt(k,67) +rxt(k,160)*y(k,38) +rxt(k,162)*y(k,96) + & + rxt(k,163)*y(k,139))*y(k,42) + (rxt(k,13) +rxt(k,14) +rxt(k,146)) & + *y(k,79) + (rxt(k,144)*y(k,64) +rxt(k,259)*y(k,105) + & + .500_r8*rxt(k,298)*y(k,75))*y(k,139) + (rxt(k,49) + & + rxt(k,193)*y(k,96))*y(k,7) + (rxt(k,129)*y(k,100) + & + rxt(k,130)*y(k,96))*y(k,88) +rxt(k,10)*y(k,65) +.400_r8*rxt(k,42) & + *y(k,105) + loss(k,70) = (rxt(k,273)* y(k,139) + rxt(k,40) + het_rates(k,90))* y(k,90) + prod(k,70) =rxt(k,263)*y(k,89)*y(k,13) + loss(k,15) = ( + het_rates(k,91))* y(k,91) + prod(k,15) = 0._r8 + loss(k,16) = ( + het_rates(k,92))* y(k,92) + prod(k,16) = 0._r8 + loss(k,17) = ( + het_rates(k,93))* y(k,93) + prod(k,17) = 0._r8 + loss(k,18) = ( + het_rates(k,94))* y(k,94) + prod(k,18) = 0._r8 + loss(k,19) = ( + het_rates(k,95))* y(k,95) + prod(k,19) = 0._r8 + loss(k,138) = (rxt(k,194)* y(k,6) +rxt(k,193)* y(k,7) +rxt(k,222)* y(k,25) & + +rxt(k,164)* y(k,41) +rxt(k,162)* y(k,42) +rxt(k,105)* y(k,55) & + +rxt(k,106)* y(k,57) +rxt(k,196)* y(k,59) +rxt(k,167)* y(k,63) & + +rxt(k,198)* y(k,66) +rxt(k,170)* y(k,67) +rxt(k,138)* y(k,87) & + + (rxt(k,128) +rxt(k,130))* y(k,88) +rxt(k,133)* y(k,89) & + + 2._r8*rxt(k,103)* y(k,96) +rxt(k,104)* y(k,97) +rxt(k,102) & + * y(k,100) +rxt(k,330)* y(k,103) +rxt(k,111)* y(k,134) +rxt(k,117) & + * y(k,139) + het_rates(k,96))* y(k,96) + prod(k,138) = (rxt(k,5) +2.000_r8*rxt(k,6) +rxt(k,90)*y(k,138) + & + rxt(k,91)*y(k,138) +rxt(k,127)*y(k,77) +rxt(k,332)*y(k,110) + & + rxt(k,339)*y(k,112))*y(k,97) + (rxt(k,8) + & + 2.000_r8*rxt(k,93)*y(k,138) +.765_r8*rxt(k,326)*y(k,124))*y(k,100) & + + (rxt(k,123)*y(k,87) +rxt(k,124)*y(k,88))*y(k,77) +rxt(k,47)*y(k,6) & + +.180_r8*rxt(k,28)*y(k,36) +rxt(k,65)*y(k,41) +rxt(k,30)*y(k,45) & + +rxt(k,109)*y(k,134)*y(k,54) +rxt(k,14)*y(k,79) +rxt(k,15)*y(k,87) & + +rxt(k,16)*y(k,88) +rxt(k,18)*y(k,89) +rxt(k,76)*y(k,102) +rxt(k,80) & + *y(k,112) +rxt(k,81)*y(k,113) +rxt(k,82)*y(k,114) +rxt(k,89)*y(k,138) & + +rxt(k,119)*y(k,139)*y(k,139) +rxt(k,3)*y(k,143) + loss(k,140) = (rxt(k,110)* y(k,54) +rxt(k,127)* y(k,77) +rxt(k,104)* y(k,96) & + +rxt(k,96)* y(k,98) +rxt(k,332)* y(k,110) +rxt(k,339)* y(k,112) & + +rxt(k,256)* y(k,132) +rxt(k,90)* y(k,138) + rxt(k,5) + rxt(k,6) & + + het_rates(k,97))* y(k,97) + prod(k,140) = (rxt(k,107)*y(k,54) +rxt(k,111)*y(k,96) + & + 2.000_r8*rxt(k,112)*y(k,100) +rxt(k,116)*y(k,139) + & + rxt(k,121)*y(k,134) +rxt(k,131)*y(k,89) +rxt(k,151)*y(k,38) + & + rxt(k,158)*y(k,41) +rxt(k,184)*y(k,4) +rxt(k,190)*y(k,6) + & + rxt(k,226)*y(k,131) +rxt(k,239)*y(k,128) +rxt(k,266)*y(k,129) + & + rxt(k,274)*y(k,140))*y(k,134) + (rxt(k,8) + & + 2.000_r8*rxt(k,92)*y(k,138) +rxt(k,93)*y(k,138) + & + 2.000_r8*rxt(k,102)*y(k,96) +rxt(k,113)*y(k,54) + & + rxt(k,118)*y(k,139) +rxt(k,129)*y(k,88) +rxt(k,137)*y(k,87) + & + rxt(k,153)*y(k,38) +rxt(k,185)*y(k,4) +rxt(k,334)*y(k,110) + & + rxt(k,340)*y(k,112))*y(k,100) + (rxt(k,95)*y(k,98) + & + rxt(k,103)*y(k,96) +rxt(k,117)*y(k,139) +rxt(k,128)*y(k,88) + & + rxt(k,133)*y(k,89) +rxt(k,164)*y(k,41) +rxt(k,194)*y(k,6))*y(k,96) & + + (rxt(k,155)*y(k,41) +rxt(k,156)*y(k,41) +rxt(k,166)*y(k,139) + & + rxt(k,188)*y(k,6) +rxt(k,189)*y(k,6))*y(k,41) + (rxt(k,85) + & + rxt(k,94) +2.000_r8*rxt(k,96)*y(k,97))*y(k,98) +rxt(k,186)*y(k,6) & + *y(k,6) +rxt(k,122)*y(k,139)*y(k,65) +rxt(k,126)*y(k,88)*y(k,77) & + +rxt(k,140)*y(k,138)*y(k,78) +rxt(k,17)*y(k,89) +rxt(k,86)*y(k,99) + loss(k,50) = (rxt(k,95)* y(k,96) +rxt(k,96)* y(k,97) + rxt(k,85) + rxt(k,94) & + + het_rates(k,98))* y(k,98) + prod(k,50) = (rxt(k,98) +rxt(k,97)*y(k,45) +rxt(k,99)*y(k,96) + & + rxt(k,100)*y(k,97) +rxt(k,101)*y(k,100))*y(k,99) +rxt(k,7)*y(k,100) + loss(k,51) = (rxt(k,97)* y(k,45) +rxt(k,99)* y(k,96) +rxt(k,100)* y(k,97) & + +rxt(k,101)* y(k,100) + rxt(k,86) + rxt(k,98) + het_rates(k,99)) & + * y(k,99) + prod(k,51) =rxt(k,90)*y(k,138)*y(k,97) + loss(k,133) = (rxt(k,185)* y(k,4) +rxt(k,236)* y(k,9) +rxt(k,264)* y(k,13) & + +rxt(k,153)* y(k,38) +rxt(k,113)* y(k,54) +rxt(k,314)* y(k,70) & + +rxt(k,289)* y(k,73) +rxt(k,299)* y(k,76) +rxt(k,137)* y(k,87) & + +rxt(k,129)* y(k,88) +rxt(k,102)* y(k,96) +rxt(k,334)* y(k,110) & + +rxt(k,340)* y(k,112) +rxt(k,326)* y(k,124) +rxt(k,112)* y(k,134) & + + (rxt(k,92) +rxt(k,93))* y(k,138) +rxt(k,118)* y(k,139) + rxt(k,7) & + + rxt(k,8) + het_rates(k,100))* y(k,100) + prod(k,133) = (.150_r8*rxt(k,249)*y(k,130) +.150_r8*rxt(k,294)*y(k,137)) & + *y(k,134) +rxt(k,104)*y(k,97)*y(k,96) + loss(k,20) = ( + het_rates(k,101))* y(k,101) + prod(k,20) = 0._r8 + loss(k,65) = (rxt(k,341)* y(k,112) + rxt(k,76) + het_rates(k,102))* y(k,102) + prod(k,65) = (rxt(k,157)*y(k,41) +rxt(k,187)*y(k,6))*y(k,41) + loss(k,67) = (rxt(k,330)* y(k,96) +rxt(k,331)* y(k,139) + rxt(k,79) & + + het_rates(k,103))* y(k,103) + prod(k,67) = 0._r8 + loss(k,106) = (rxt(k,317)* y(k,89) +rxt(k,318)* y(k,139) + rxt(k,41) & + + rxt(k,351) + het_rates(k,104))* y(k,104) + prod(k,106) = (.794_r8*rxt(k,306)*y(k,134) +.794_r8*rxt(k,307)*y(k,87) + & + .794_r8*rxt(k,308)*y(k,89))*y(k,71) + (.800_r8*rxt(k,288)*y(k,136) + & + .080_r8*rxt(k,312)*y(k,135))*y(k,87) + loss(k,81) = (rxt(k,259)* y(k,139) + rxt(k,42) + rxt(k,262) & + + het_rates(k,105))* y(k,105) + prod(k,81) =rxt(k,261)*y(k,130)*y(k,88) + loss(k,21) = ( + het_rates(k,106))* y(k,106) + prod(k,21) = 0._r8 + loss(k,22) = ( + het_rates(k,107))* y(k,107) + prod(k,22) = 0._r8 + loss(k,82) = (rxt(k,276)* y(k,139) + rxt(k,43) + het_rates(k,108))* y(k,108) + prod(k,82) =rxt(k,274)*y(k,140)*y(k,134) + loss(k,73) = (rxt(k,280)* y(k,139) + rxt(k,44) + het_rates(k,109))* y(k,109) + prod(k,73) =.850_r8*rxt(k,278)*y(k,141)*y(k,134) + loss(k,90) = (rxt(k,332)* y(k,97) +rxt(k,334)* y(k,100) +rxt(k,337)* y(k,139) & + + het_rates(k,110))* y(k,110) + prod(k,90) =rxt(k,79)*y(k,103) +rxt(k,80)*y(k,112) + loss(k,23) = ( + rxt(k,77) + het_rates(k,111))* y(k,111) + prod(k,23) = 0._r8 + loss(k,122) = (rxt(k,335)* y(k,6) +rxt(k,336)* y(k,41) +rxt(k,338)* y(k,88) & + +rxt(k,339)* y(k,97) +rxt(k,340)* y(k,100) +rxt(k,341)* y(k,102) & + +rxt(k,342)* y(k,139) + rxt(k,80) + het_rates(k,112))* y(k,112) + prod(k,122) = (rxt(k,332)*y(k,97) +rxt(k,334)*y(k,100) +rxt(k,337)*y(k,139)) & + *y(k,110) +rxt(k,330)*y(k,103)*y(k,96) +rxt(k,81)*y(k,113) + loss(k,105) = (rxt(k,333)* y(k,139) + rxt(k,81) + het_rates(k,113))* y(k,113) + prod(k,105) = (rxt(k,335)*y(k,6) +rxt(k,336)*y(k,41) +rxt(k,338)*y(k,88) + & + rxt(k,339)*y(k,97) +rxt(k,340)*y(k,100) +rxt(k,341)*y(k,102) + & + rxt(k,342)*y(k,139))*y(k,112) + (rxt(k,328)*y(k,89) + & + rxt(k,329)*y(k,139) +.500_r8*rxt(k,343)*y(k,139))*y(k,46) & + +rxt(k,331)*y(k,139)*y(k,103) +rxt(k,82)*y(k,114) + loss(k,59) = (rxt(k,344)* y(k,143) + rxt(k,82) + het_rates(k,114))* y(k,114) + prod(k,59) =rxt(k,78)*y(k,58) +rxt(k,333)*y(k,139)*y(k,113) + loss(k,24) = ( + het_rates(k,115))* y(k,115) + prod(k,24) = 0._r8 + loss(k,25) = ( + het_rates(k,116))* y(k,116) + prod(k,25) = 0._r8 + loss(k,26) = ( + het_rates(k,117))* y(k,117) + prod(k,26) = 0._r8 + loss(k,27) = ( + het_rates(k,118))* y(k,118) + prod(k,27) = 0._r8 + loss(k,28) = ( + rxt(k,83) + het_rates(k,119))* y(k,119) + prod(k,28) = 0._r8 + loss(k,29) = ( + rxt(k,84) + het_rates(k,120))* y(k,120) + prod(k,29) = 0._r8 + loss(k,30) = ( + rxt(k,352) + het_rates(k,121))* y(k,121) + prod(k,30) = 0._r8 + loss(k,31) = ( + het_rates(k,122))* y(k,122) + prod(k,31) =rxt(k,352)*y(k,121) + loss(k,32) = ( + rxt(k,373) + het_rates(k,123))* y(k,123) + prod(k,32) = 0._r8 + loss(k,87) = (rxt(k,325)* y(k,89) +rxt(k,326)* y(k,100) +rxt(k,327)* y(k,139) & + + het_rates(k,124))* y(k,124) + prod(k,87) = 0._r8 + loss(k,54) = (rxt(k,324)* y(k,139) + rxt(k,45) + het_rates(k,125))* y(k,125) + prod(k,54) =rxt(k,321)*y(k,142)*y(k,134) + loss(k,97) = (rxt(k,240)* y(k,87) + 2._r8*rxt(k,237)* y(k,128) +rxt(k,238) & + * y(k,131) +rxt(k,239)* y(k,134) + het_rates(k,128))* y(k,128) + prod(k,97) = (rxt(k,243)*y(k,38) +rxt(k,244)*y(k,139))*y(k,12) & + +.500_r8*rxt(k,242)*y(k,139)*y(k,11) + loss(k,101) = (rxt(k,267)* y(k,87) +rxt(k,265)* y(k,131) +rxt(k,266) & + * y(k,134) + het_rates(k,129))* y(k,129) + prod(k,101) = (rxt(k,268)*y(k,14) +rxt(k,269)*y(k,15) + & + 1.670_r8*rxt(k,303)*y(k,3))*y(k,139) + loss(k,121) = (rxt(k,250)* y(k,87) +rxt(k,261)* y(k,88) + 2._r8*rxt(k,247) & + * y(k,130) +rxt(k,248)* y(k,131) +rxt(k,249)* y(k,134) +rxt(k,309) & + * y(k,135) +rxt(k,283)* y(k,136) +rxt(k,319)* y(k,142) & + + het_rates(k,130))* y(k,130) + prod(k,121) = (rxt(k,293)*y(k,131) +.450_r8*rxt(k,294)*y(k,134) + & + 2.000_r8*rxt(k,295)*y(k,137) +rxt(k,296)*y(k,87) +rxt(k,297)*y(k,89)) & + *y(k,137) + (.530_r8*rxt(k,283)*y(k,130) + & + .260_r8*rxt(k,284)*y(k,131) +.530_r8*rxt(k,286)*y(k,89) + & + .530_r8*rxt(k,287)*y(k,87))*y(k,136) + (rxt(k,25) + & + rxt(k,270)*y(k,89) +rxt(k,271)*y(k,139))*y(k,31) & + + (.100_r8*rxt(k,289)*y(k,73) +.280_r8*rxt(k,299)*y(k,76) + & + .080_r8*rxt(k,314)*y(k,70))*y(k,100) + (.300_r8*rxt(k,277)*y(k,131) + & + .150_r8*rxt(k,278)*y(k,134) +rxt(k,279)*y(k,87))*y(k,141) & + + (rxt(k,245)*y(k,89) +rxt(k,246)*y(k,139))*y(k,28) & + + (.600_r8*rxt(k,42) +rxt(k,262))*y(k,105) +rxt(k,24)*y(k,30) & + +.500_r8*rxt(k,252)*y(k,139)*y(k,33) +rxt(k,34)*y(k,68) & + +1.340_r8*rxt(k,36)*y(k,73) +.300_r8*rxt(k,39)*y(k,76) +rxt(k,40) & + *y(k,90) +rxt(k,44)*y(k,109) + loss(k,124) = (rxt(k,154)* y(k,41) +rxt(k,227)* y(k,87) +rxt(k,238)* y(k,128) & + +rxt(k,265)* y(k,129) +rxt(k,248)* y(k,130) + 2._r8*(rxt(k,224) + & + rxt(k,225))* y(k,131) +rxt(k,226)* y(k,134) +rxt(k,310)* y(k,135) & + +rxt(k,284)* y(k,136) +rxt(k,293)* y(k,137) +rxt(k,277)* y(k,141) & + +rxt(k,320)* y(k,142) + het_rates(k,131))* y(k,131) + prod(k,124) = (2.000_r8*rxt(k,247)*y(k,130) +.900_r8*rxt(k,248)*y(k,131) + & + .450_r8*rxt(k,249)*y(k,134) +rxt(k,250)*y(k,87) + & + rxt(k,283)*y(k,136) +rxt(k,292)*y(k,137) +rxt(k,309)*y(k,135) + & + rxt(k,319)*y(k,142))*y(k,130) + (rxt(k,29) +rxt(k,148)*y(k,38) + & + rxt(k,230)*y(k,139) +rxt(k,231)*y(k,138))*y(k,36) & + + (.280_r8*rxt(k,264)*y(k,13) +.050_r8*rxt(k,314)*y(k,70))*y(k,100) & + + (.700_r8*rxt(k,229)*y(k,35) +rxt(k,251)*y(k,32))*y(k,139) & + +rxt(k,59)*y(k,26) +rxt(k,23)*y(k,28) +rxt(k,61)*y(k,29) +rxt(k,24) & + *y(k,30) +rxt(k,26)*y(k,33) +.300_r8*rxt(k,39)*y(k,76) & + +.400_r8*rxt(k,42)*y(k,105) + loss(k,74) = (rxt(k,256)* y(k,97) + rxt(k,255) + het_rates(k,132))* y(k,132) + prod(k,74) =rxt(k,31)*y(k,51) +.750_r8*rxt(k,254)*y(k,133)*y(k,87) + loss(k,94) = (rxt(k,254)* y(k,87) +rxt(k,253)* y(k,134) + het_rates(k,133)) & + * y(k,133) + prod(k,94) =rxt(k,260)*y(k,139)*y(k,9) + loss(k,132) = (rxt(k,184)* y(k,4) +rxt(k,190)* y(k,6) + (rxt(k,151) + & + rxt(k,152))* y(k,38) +rxt(k,158)* y(k,41) + (rxt(k,107) +rxt(k,108) + & + rxt(k,109))* y(k,54) +rxt(k,306)* y(k,71) +rxt(k,136)* y(k,87) & + +rxt(k,141)* y(k,88) +rxt(k,131)* y(k,89) +rxt(k,111)* y(k,96) & + +rxt(k,112)* y(k,100) +rxt(k,239)* y(k,128) +rxt(k,266)* y(k,129) & + +rxt(k,249)* y(k,130) +rxt(k,226)* y(k,131) +rxt(k,253)* y(k,133) & + + 2._r8*rxt(k,121)* y(k,134) +rxt(k,311)* y(k,135) +rxt(k,285) & + * y(k,136) +rxt(k,294)* y(k,137) +rxt(k,116)* y(k,139) +rxt(k,274) & + * y(k,140) +rxt(k,278)* y(k,141) +rxt(k,321)* y(k,142) + rxt(k,346) & + + het_rates(k,134))* y(k,134) + prod(k,132) = (rxt(k,115)*y(k,57) +rxt(k,118)*y(k,100) +rxt(k,134)*y(k,89) + & + rxt(k,165)*y(k,41) +rxt(k,195)*y(k,6) +rxt(k,207)*y(k,26) + & + rxt(k,210)*y(k,29) +rxt(k,228)*y(k,34) +rxt(k,234)*y(k,44) + & + rxt(k,241)*y(k,10) +rxt(k,257)*y(k,52) +rxt(k,258)*y(k,53) + & + rxt(k,272)*y(k,68) +.200_r8*rxt(k,291)*y(k,74) + & + .500_r8*rxt(k,298)*y(k,75) +rxt(k,318)*y(k,104) + & + rxt(k,333)*y(k,113) +.500_r8*rxt(k,343)*y(k,46))*y(k,139) & + + (rxt(k,154)*y(k,41) +2.000_r8*rxt(k,224)*y(k,131) + & + rxt(k,227)*y(k,87) +rxt(k,238)*y(k,128) + & + .900_r8*rxt(k,248)*y(k,130) +rxt(k,265)*y(k,129) + & + .300_r8*rxt(k,277)*y(k,141) +.730_r8*rxt(k,284)*y(k,136) + & + rxt(k,293)*y(k,137) +rxt(k,310)*y(k,135) + & + .800_r8*rxt(k,320)*y(k,142))*y(k,131) + (rxt(k,240)*y(k,128) + & + .250_r8*rxt(k,254)*y(k,133) +rxt(k,267)*y(k,129) + & + rxt(k,275)*y(k,140) +.470_r8*rxt(k,287)*y(k,136) + & + .794_r8*rxt(k,307)*y(k,71) +.920_r8*rxt(k,312)*y(k,135) + & + rxt(k,322)*y(k,142))*y(k,87) + (rxt(k,221)*y(k,25) + & + .470_r8*rxt(k,286)*y(k,136) +.794_r8*rxt(k,308)*y(k,71) + & + rxt(k,313)*y(k,135) +rxt(k,317)*y(k,104) +rxt(k,323)*y(k,142)) & + *y(k,89) + (.130_r8*rxt(k,236)*y(k,9) +.280_r8*rxt(k,264)*y(k,13) + & + .140_r8*rxt(k,289)*y(k,73) +.280_r8*rxt(k,299)*y(k,76) + & + .370_r8*rxt(k,314)*y(k,70))*y(k,100) + (rxt(k,147)*y(k,25) + & + rxt(k,150)*y(k,57) +rxt(k,206)*y(k,26) +rxt(k,209)*y(k,29))*y(k,38) & + + (.470_r8*rxt(k,283)*y(k,136) +rxt(k,309)*y(k,135) + & + rxt(k,319)*y(k,142))*y(k,130) + (rxt(k,183)*y(k,4) + & + rxt(k,222)*y(k,96))*y(k,25) + (rxt(k,11) +rxt(k,145))*y(k,65) & + + (1.340_r8*rxt(k,36) +.660_r8*rxt(k,37))*y(k,73) & + + (rxt(k,110)*y(k,54) +rxt(k,256)*y(k,132))*y(k,97) +rxt(k,19) & + *y(k,11) +rxt(k,20)*y(k,14) +rxt(k,23)*y(k,28) +rxt(k,25)*y(k,31) & + +rxt(k,232)*y(k,138)*y(k,36) +2.000_r8*rxt(k,32)*y(k,52) & + +2.000_r8*rxt(k,33)*y(k,53) +rxt(k,106)*y(k,96)*y(k,57) +rxt(k,34) & + *y(k,68) +rxt(k,35)*y(k,72) +rxt(k,41)*y(k,104) +rxt(k,43)*y(k,108) & + +1.200_r8*rxt(k,237)*y(k,128)*y(k,128) +rxt(k,255)*y(k,132) + loss(k,118) = (rxt(k,312)* y(k,87) +rxt(k,313)* y(k,89) +rxt(k,309)* y(k,130) & + +rxt(k,310)* y(k,131) +rxt(k,311)* y(k,134) + het_rates(k,135)) & + * y(k,135) + prod(k,118) = (rxt(k,315)*y(k,70) +.200_r8*rxt(k,316)*y(k,72) + & + 1.640_r8*rxt(k,327)*y(k,124))*y(k,139) +1.700_r8*rxt(k,325)*y(k,124) & + *y(k,89) + loss(k,119) = ((rxt(k,287) +rxt(k,288))* y(k,87) +rxt(k,286)* y(k,89) & + +rxt(k,283)* y(k,130) +rxt(k,284)* y(k,131) +rxt(k,285)* y(k,134) & + + het_rates(k,136))* y(k,136) + prod(k,119) = (.500_r8*rxt(k,290)*y(k,73) +.200_r8*rxt(k,291)*y(k,74) + & + rxt(k,300)*y(k,76))*y(k,139) + loss(k,120) = (rxt(k,296)* y(k,87) +rxt(k,301)* y(k,88) +rxt(k,297)* y(k,89) & + +rxt(k,292)* y(k,130) +rxt(k,293)* y(k,131) +rxt(k,294)* y(k,134) & + + 2._r8*rxt(k,295)* y(k,137) + het_rates(k,137))* y(k,137) + prod(k,120) = (.660_r8*rxt(k,36) +.500_r8*rxt(k,290)*y(k,139))*y(k,73) & + + (rxt(k,38) +rxt(k,302))*y(k,75) +.500_r8*rxt(k,291)*y(k,139) & + *y(k,74) + loss(k,136) = (rxt(k,172)* y(k,16) +rxt(k,173)* y(k,17) +rxt(k,199)* y(k,18) & + +rxt(k,174)* y(k,19) +rxt(k,175)* y(k,20) +rxt(k,176)* y(k,21) & + +rxt(k,177)* y(k,22) +rxt(k,178)* y(k,23) +rxt(k,216)* y(k,24) & + +rxt(k,217)* y(k,26) + (rxt(k,231) +rxt(k,232) +rxt(k,233))* y(k,36) & + +rxt(k,200)* y(k,37) +rxt(k,87)* y(k,55) +rxt(k,201)* y(k,56) & + + (rxt(k,202) +rxt(k,203))* y(k,59) +rxt(k,218)* y(k,60) +rxt(k,219) & + * y(k,61) +rxt(k,220)* y(k,62) + (rxt(k,179) +rxt(k,180))* y(k,63) & + + (rxt(k,139) +rxt(k,140))* y(k,78) + (rxt(k,90) +rxt(k,91)) & + * y(k,97) + (rxt(k,92) +rxt(k,93))* y(k,100) +rxt(k,88)* y(k,143) & + + rxt(k,89) + het_rates(k,138))* y(k,138) + prod(k,136) =rxt(k,12)*y(k,78) +rxt(k,5)*y(k,97) +rxt(k,7)*y(k,100) +rxt(k,1) & + *y(k,143) + loss(k,137) = (rxt(k,303)* y(k,3) +rxt(k,195)* y(k,6) +rxt(k,260)* y(k,9) & + +rxt(k,241)* y(k,10) +rxt(k,242)* y(k,11) +rxt(k,244)* y(k,12) & + +rxt(k,281)* y(k,13) +rxt(k,268)* y(k,14) +rxt(k,269)* y(k,15) & + +rxt(k,205)* y(k,24) +rxt(k,223)* y(k,25) +rxt(k,207)* y(k,26) & + +rxt(k,208)* y(k,27) +rxt(k,246)* y(k,28) +rxt(k,210)* y(k,29) & + +rxt(k,282)* y(k,30) +rxt(k,271)* y(k,31) +rxt(k,251)* y(k,32) & + +rxt(k,252)* y(k,33) +rxt(k,228)* y(k,34) +rxt(k,229)* y(k,35) & + +rxt(k,230)* y(k,36) +rxt(k,212)* y(k,37) + (rxt(k,165) +rxt(k,166)) & + * y(k,41) +rxt(k,163)* y(k,42) +rxt(k,234)* y(k,44) + (rxt(k,329) + & + rxt(k,343))* y(k,46) +rxt(k,257)* y(k,52) +rxt(k,258)* y(k,53) & + +rxt(k,114)* y(k,55) +rxt(k,115)* y(k,57) +rxt(k,197)* y(k,59) & + +rxt(k,213)* y(k,60) +rxt(k,214)* y(k,61) +rxt(k,215)* y(k,62) & + +rxt(k,168)* y(k,63) +rxt(k,144)* y(k,64) +rxt(k,122)* y(k,65) & + +rxt(k,171)* y(k,67) +rxt(k,272)* y(k,68) +rxt(k,304)* y(k,69) & + +rxt(k,315)* y(k,70) +rxt(k,316)* y(k,72) +rxt(k,290)* y(k,73) & + +rxt(k,291)* y(k,74) +rxt(k,298)* y(k,75) +rxt(k,300)* y(k,76) & + +rxt(k,135)* y(k,77) +rxt(k,345)* y(k,83) +rxt(k,143)* y(k,88) & + +rxt(k,134)* y(k,89) +rxt(k,273)* y(k,90) +rxt(k,117)* y(k,96) & + +rxt(k,118)* y(k,100) +rxt(k,331)* y(k,103) +rxt(k,318)* y(k,104) & + +rxt(k,259)* y(k,105) +rxt(k,276)* y(k,108) +rxt(k,280)* y(k,109) & + +rxt(k,337)* y(k,110) +rxt(k,342)* y(k,112) +rxt(k,333)* y(k,113) & + +rxt(k,327)* y(k,124) +rxt(k,324)* y(k,125) +rxt(k,116)* y(k,134) & + + 2._r8*(rxt(k,119) +rxt(k,120))* y(k,139) + het_rates(k,139)) & + * y(k,139) + prod(k,137) = (2.000_r8*rxt(k,108)*y(k,54) +rxt(k,111)*y(k,96) + & + rxt(k,112)*y(k,100) +rxt(k,131)*y(k,89) +rxt(k,136)*y(k,87) + & + rxt(k,152)*y(k,38) +.450_r8*rxt(k,249)*y(k,130) + & + .150_r8*rxt(k,278)*y(k,141) +.450_r8*rxt(k,294)*y(k,137) + & + .206_r8*rxt(k,306)*y(k,71))*y(k,134) + (rxt(k,105)*y(k,55) + & + rxt(k,106)*y(k,57) +rxt(k,167)*y(k,63) +rxt(k,170)*y(k,67) + & + rxt(k,196)*y(k,59) +rxt(k,198)*y(k,66) +rxt(k,222)*y(k,25))*y(k,96) & + + (rxt(k,113)*y(k,54) +.130_r8*rxt(k,236)*y(k,9) + & + .360_r8*rxt(k,264)*y(k,13) +.240_r8*rxt(k,289)*y(k,73) + & + .360_r8*rxt(k,299)*y(k,76) +.320_r8*rxt(k,314)*y(k,70) + & + 1.156_r8*rxt(k,326)*y(k,124))*y(k,100) + (rxt(k,87)*y(k,55) + & + 2.000_r8*rxt(k,88)*y(k,143) +rxt(k,179)*y(k,63) +rxt(k,202)*y(k,59) + & + rxt(k,231)*y(k,36))*y(k,138) + (.300_r8*rxt(k,229)*y(k,35) + & + .500_r8*rxt(k,242)*y(k,11) +.500_r8*rxt(k,276)*y(k,108) + & + .100_r8*rxt(k,291)*y(k,74) +.500_r8*rxt(k,324)*y(k,125))*y(k,139) & + +rxt(k,19)*y(k,11) +rxt(k,20)*y(k,14) +rxt(k,26)*y(k,33) +rxt(k,27) & + *y(k,35) +.330_r8*rxt(k,28)*y(k,36) +rxt(k,31)*y(k,51) & + +2.000_r8*rxt(k,4)*y(k,57) +rxt(k,9)*y(k,64) +rxt(k,10)*y(k,65) & + +rxt(k,74)*y(k,66) +rxt(k,75)*y(k,67) +rxt(k,35)*y(k,72) & + +.500_r8*rxt(k,349)*y(k,88) +rxt(k,43)*y(k,108) +rxt(k,44)*y(k,109) & + +rxt(k,45)*y(k,125) +rxt(k,2)*y(k,143) + loss(k,96) = (rxt(k,275)* y(k,87) +rxt(k,274)* y(k,134) + het_rates(k,140)) & + * y(k,140) + prod(k,96) = (.500_r8*rxt(k,276)*y(k,108) +rxt(k,281)*y(k,13))*y(k,139) + loss(k,107) = (rxt(k,279)* y(k,87) +rxt(k,277)* y(k,131) +rxt(k,278) & + * y(k,134) + het_rates(k,141))* y(k,141) + prod(k,107) = (rxt(k,280)*y(k,109) +rxt(k,282)*y(k,30))*y(k,139) + loss(k,116) = (rxt(k,322)* y(k,87) +rxt(k,323)* y(k,89) +rxt(k,319)* y(k,130) & + +rxt(k,320)* y(k,131) +rxt(k,321)* y(k,134) + het_rates(k,142)) & + * y(k,142) + prod(k,116) = (rxt(k,304)*y(k,69) +.800_r8*rxt(k,316)*y(k,72) + & + .500_r8*rxt(k,324)*y(k,125))*y(k,139) + loss(k,141) = (rxt(k,344)* y(k,114) +rxt(k,88)* y(k,138) + rxt(k,1) & + + rxt(k,2) + rxt(k,3) + het_rates(k,143))* y(k,143) + prod(k,141) = (rxt(k,114)*y(k,55) +rxt(k,115)*y(k,57) +rxt(k,116)*y(k,134) + & + rxt(k,119)*y(k,139) +rxt(k,122)*y(k,65) +rxt(k,144)*y(k,64) + & + rxt(k,168)*y(k,63) +rxt(k,171)*y(k,67) +rxt(k,197)*y(k,59) + & + rxt(k,205)*y(k,24) +rxt(k,207)*y(k,26) +rxt(k,208)*y(k,27) + & + rxt(k,210)*y(k,29) +rxt(k,215)*y(k,62) +rxt(k,223)*y(k,25) + & + rxt(k,229)*y(k,35) +rxt(k,230)*y(k,36) +rxt(k,244)*y(k,12) + & + rxt(k,246)*y(k,28) +rxt(k,251)*y(k,32) +rxt(k,252)*y(k,33) + & + rxt(k,268)*y(k,14) +rxt(k,269)*y(k,15) +rxt(k,271)*y(k,31) + & + rxt(k,276)*y(k,108) +rxt(k,280)*y(k,109) +rxt(k,282)*y(k,30) + & + .500_r8*rxt(k,290)*y(k,73) +rxt(k,345)*y(k,83))*y(k,139) & + + (rxt(k,354)*y(k,67) +rxt(k,360)*y(k,67) +rxt(k,361)*y(k,66) + & + rxt(k,365)*y(k,67) +rxt(k,366)*y(k,66))*y(k,63) + (rxt(k,346) + & + rxt(k,109)*y(k,54))*y(k,134) +.050_r8*rxt(k,28)*y(k,36) +rxt(k,78) & + *y(k,58) + end do + end subroutine imp_prod_loss + end module mo_prod_loss diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_rxt_rates_conv.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_rxt_rates_conv.F90 similarity index 68% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_rxt_rates_conv.F90 rename to src/chemistry/pp_trop_strat_mam5_t4s2/mo_rxt_rates_conv.F90 index e9e70b0ea6..1ce5d18db0 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_rxt_rates_conv.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_rxt_rates_conv.F90 @@ -8,24 +8,24 @@ subroutine set_rates( rxt_rates, sol, ncol ) real(r8), intent(inout) :: rxt_rates(:,:,:) real(r8), intent(in) :: sol(:,:,:) integer, intent(in) :: ncol - rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 141) ! rate_const*H2O - rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 141) ! rate_const*H2O - rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 141) ! rate_const*H2O + rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 143) ! rate_const*H2O + rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 143) ! rate_const*H2O + rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 143) ! rate_const*H2O rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 57) ! rate_const*H2O2 - ! rate_const*O2 - ! rate_const*O2 - rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 98) ! rate_const*O3 - rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 98) ! rate_const*O3 - rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 65) ! rate_const*HNO3 - rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 66) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 66) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 79) ! rate_const*N2O - rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 88) ! rate_const*NO - rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 89) ! rate_const*NO2 - rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 90) ! rate_const*NO3 - rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 90) ! rate_const*NO3 + rxt_rates(:ncol,:, 5) = rxt_rates(:ncol,:, 5)*sol(:ncol,:, 97) ! rate_const*O2 + rxt_rates(:ncol,:, 6) = rxt_rates(:ncol,:, 6)*sol(:ncol,:, 97) ! rate_const*O2 + rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 100) ! rate_const*O3 + rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 100) ! rate_const*O3 + rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 64) ! rate_const*HNO3 + rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 65) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 65) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 78) ! rate_const*N2O + rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 87) ! rate_const*NO + rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 88) ! rate_const*NO2 + rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 89) ! rate_const*NO3 + rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 89) ! rate_const*NO3 rxt_rates(:ncol,:, 19) = rxt_rates(:ncol,:, 19)*sol(:ncol,:, 11) ! rate_const*C2H5OOH rxt_rates(:ncol,:, 20) = rxt_rates(:ncol,:, 20)*sol(:ncol,:, 14) ! rate_const*C3H7OOH rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 25) ! rate_const*CH2O @@ -41,18 +41,18 @@ subroutine set_rates( rxt_rates, sol, ncol ) rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 51) ! rate_const*EOOH rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 52) ! rate_const*GLYALD rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 53) ! rate_const*GLYOXAL - rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 69) ! rate_const*HYAC - rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 73) ! rate_const*ISOPOOH - rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 74) ! rate_const*MACR - rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 74) ! rate_const*MACR - rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 76) ! rate_const*MPAN - rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 77) ! rate_const*MVK - rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 91) ! rate_const*NOA - rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 102) ! rate_const*ONITR - rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 103) ! rate_const*PAN - rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 106) ! rate_const*POOH - rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 107) ! rate_const*ROOH - rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 123) ! rate_const*XOOH + rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 68) ! rate_const*HYAC + rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 72) ! rate_const*ISOPOOH + rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 73) ! rate_const*MACR + rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 73) ! rate_const*MACR + rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 75) ! rate_const*MPAN + rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 76) ! rate_const*MVK + rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 90) ! rate_const*NOA + rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 104) ! rate_const*ONITR + rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 105) ! rate_const*PAN + rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 108) ! rate_const*POOH + rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 109) ! rate_const*ROOH + rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 125) ! rate_const*XOOH rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 5) ! rate_const*BRCL rxt_rates(:ncol,:, 47) = rxt_rates(:ncol,:, 47)*sol(:ncol,:, 6) ! rate_const*BRO rxt_rates(:ncol,:, 48) = rxt_rates(:ncol,:, 48)*sol(:ncol,:, 7) ! rate_const*BRONO2 @@ -81,295 +81,305 @@ subroutine set_rates( rxt_rates, sol, ncol ) rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 61) ! rate_const*HCFC142B rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 62) ! rate_const*HCFC22 rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 63) ! rate_const*HCL - rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 64) ! rate_const*HF - rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 67) ! rate_const*HOBR - rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 68) ! rate_const*HOCL - rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 100) ! rate_const*OCLO - rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 109) ! rate_const*SF6 - rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 58) ! rate_const*H2SO4 - rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 101) ! rate_const*OCS - rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 110) ! rate_const*SO - rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 111) ! rate_const*SO2 - rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 112) ! rate_const*SO3 - rxt_rates(:ncol,:, 84) = rxt_rates(:ncol,:, 84)*sol(:ncol,:, 117) ! rate_const*soa_a1 - rxt_rates(:ncol,:, 85) = rxt_rates(:ncol,:, 85)*sol(:ncol,:, 118) ! rate_const*soa_a2 - rxt_rates(:ncol,:, 86) = rxt_rates(:ncol,:, 86)*sol(:ncol,:, 136)*sol(:ncol,:, 55) ! rate_const*O1D*H2 - rxt_rates(:ncol,:, 87) = rxt_rates(:ncol,:, 87)*sol(:ncol,:, 136)*sol(:ncol,:, 141) ! rate_const*O1D*H2O - rxt_rates(:ncol,:, 88) = rxt_rates(:ncol,:, 88)*sol(:ncol,:, 136) ! rate_const*N2*O1D - rxt_rates(:ncol,:, 89) = rxt_rates(:ncol,:, 89)*sol(:ncol,:, 136) ! rate_const*O2*O1D - rxt_rates(:ncol,:, 90) = rxt_rates(:ncol,:, 90)*sol(:ncol,:, 136)*sol(:ncol,:, 98) ! rate_const*O1D*O3 - rxt_rates(:ncol,:, 91) = rxt_rates(:ncol,:, 91)*sol(:ncol,:, 136)*sol(:ncol,:, 98) ! rate_const*O1D*O3 - rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 97)*sol(:ncol,:, 98) ! rate_const*O*O3 - rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 97)*sol(:ncol,:, 97) ! rate_const*M*O*O - rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 97) ! rate_const*O2*M*O - rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 55)*sol(:ncol,:, 97) ! rate_const*H2*O - rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 57)*sol(:ncol,:, 97) ! rate_const*H2O2*O - rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 54)*sol(:ncol,:, 132) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 54)*sol(:ncol,:, 132) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 54)*sol(:ncol,:, 132) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 54) ! rate_const*O2*M*H - rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 132)*sol(:ncol,:, 97) ! rate_const*HO2*O - rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 132)*sol(:ncol,:, 98) ! rate_const*HO2*O3 - rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 54)*sol(:ncol,:, 98) ! rate_const*H*O3 - rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 137)*sol(:ncol,:, 55) ! rate_const*OH*H2 - rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 137)*sol(:ncol,:, 57) ! rate_const*OH*H2O2 - rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 137)*sol(:ncol,:, 132) ! rate_const*OH*HO2 - rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 137)*sol(:ncol,:, 97) ! rate_const*OH*O - rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 137)*sol(:ncol,:, 98) ! rate_const*OH*O3 - rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 137)*sol(:ncol,:, 137) ! rate_const*OH*OH - rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 137)*sol(:ncol,:, 137) ! rate_const*M*OH*OH - rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 132)*sol(:ncol,:, 132) ! rate_const*HO2*HO2 - rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 66)*sol(:ncol,:, 137) ! rate_const*HO2NO2*OH - rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 78)*sol(:ncol,:, 88) ! rate_const*N*NO - rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 78)*sol(:ncol,:, 89) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 78)*sol(:ncol,:, 89) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 78)*sol(:ncol,:, 89) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 78) ! rate_const*O2*N - rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 89)*sol(:ncol,:, 97) ! rate_const*NO2*O - rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 89)*sol(:ncol,:, 98) ! rate_const*NO2*O3 - rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 89)*sol(:ncol,:, 97) ! rate_const*M*NO2*O - rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 90)*sol(:ncol,:, 132) ! rate_const*NO3*HO2 - rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 90)*sol(:ncol,:, 88) ! rate_const*NO3*NO - rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 90)*sol(:ncol,:, 97) ! rate_const*NO3*O - rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 90)*sol(:ncol,:, 137) ! rate_const*NO3*OH - rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 78)*sol(:ncol,:, 137) ! rate_const*N*OH - rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 88)*sol(:ncol,:, 132) ! rate_const*NO*HO2 - rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 88)*sol(:ncol,:, 98) ! rate_const*NO*O3 - rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 88)*sol(:ncol,:, 97) ! rate_const*M*NO*O - rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 136)*sol(:ncol,:, 79) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 136)*sol(:ncol,:, 79) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 89)*sol(:ncol,:, 132) ! rate_const*M*NO2*HO2 - rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 89)*sol(:ncol,:, 90) ! rate_const*M*NO2*NO3 - rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 89)*sol(:ncol,:, 137) ! rate_const*M*NO2*OH - rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 65)*sol(:ncol,:, 137) ! rate_const*HNO3*OH - rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 66) ! rate_const*M*HO2NO2 - rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 80) ! rate_const*M*N2O5 - rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 38)*sol(:ncol,:, 25) ! rate_const*CL*CH2O - rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 38)*sol(:ncol,:, 36) ! rate_const*CL*CH4 - rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 38)*sol(:ncol,:, 55) ! rate_const*CL*H2 - rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 38)*sol(:ncol,:, 57) ! rate_const*CL*H2O2 - rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 38)*sol(:ncol,:, 132) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 38)*sol(:ncol,:, 132) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 38)*sol(:ncol,:, 98) ! rate_const*CL*O3 - rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 41)*sol(:ncol,:, 129) ! rate_const*CLO*CH3O2 - rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 41)*sol(:ncol,:, 132) ! rate_const*CLO*HO2 - rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 41)*sol(:ncol,:, 88) ! rate_const*CLO*NO - rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 42)*sol(:ncol,:, 38) ! rate_const*CLONO2*CL - rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 41)*sol(:ncol,:, 89) ! rate_const*M*CLO*NO2 - rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 42)*sol(:ncol,:, 97) ! rate_const*CLONO2*O - rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 42)*sol(:ncol,:, 137) ! rate_const*CLONO2*OH - rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 41)*sol(:ncol,:, 97) ! rate_const*CLO*O - rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 41)*sol(:ncol,:, 137) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 41)*sol(:ncol,:, 137) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 63)*sol(:ncol,:, 97) ! rate_const*HCL*O - rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 63)*sol(:ncol,:, 137) ! rate_const*HCL*OH - rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 68)*sol(:ncol,:, 38) ! rate_const*HOCL*CL - rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 68)*sol(:ncol,:, 97) ! rate_const*HOCL*O - rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 68)*sol(:ncol,:, 137) ! rate_const*HOCL*OH - rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 136)*sol(:ncol,:, 16) ! rate_const*O1D*CCL4 - rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 136)*sol(:ncol,:, 17) ! rate_const*O1D*CF2CLBR - rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 136)*sol(:ncol,:, 19) ! rate_const*O1D*CFC11 - rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 136)*sol(:ncol,:, 20) ! rate_const*O1D*CFC113 - rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 136)*sol(:ncol,:, 21) ! rate_const*O1D*CFC114 - rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 136)*sol(:ncol,:, 22) ! rate_const*O1D*CFC115 - rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 136)*sol(:ncol,:, 23) ! rate_const*O1D*CFC12 - rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 136)*sol(:ncol,:, 63) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 136)*sol(:ncol,:, 63) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*M*CLO*CLO - rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 40) ! rate_const*M*CL2O2 - rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 4)*sol(:ncol,:, 25) ! rate_const*BR*CH2O - rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 4)*sol(:ncol,:, 132) ! rate_const*BR*HO2 - rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 4)*sol(:ncol,:, 98) ! rate_const*BR*O3 - rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 6)*sol(:ncol,:, 6) ! rate_const*BRO*BRO - rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 6)*sol(:ncol,:, 132) ! rate_const*BRO*HO2 - rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 6)*sol(:ncol,:, 88) ! rate_const*BRO*NO - rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 6)*sol(:ncol,:, 89) ! rate_const*M*BRO*NO2 - rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 7)*sol(:ncol,:, 97) ! rate_const*BRONO2*O - rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 6)*sol(:ncol,:, 97) ! rate_const*BRO*O - rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 6)*sol(:ncol,:, 137) ! rate_const*BRO*OH - rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 59)*sol(:ncol,:, 97) ! rate_const*HBR*O - rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 59)*sol(:ncol,:, 137) ! rate_const*HBR*OH - rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 67)*sol(:ncol,:, 97) ! rate_const*HOBR*O - rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 136)*sol(:ncol,:, 18) ! rate_const*O1D*CF3BR - rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 136)*sol(:ncol,:, 37) ! rate_const*O1D*CHBR3 - rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 136)*sol(:ncol,:, 56) ! rate_const*O1D*H2402 - rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 136)*sol(:ncol,:, 59) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 136)*sol(:ncol,:, 59) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 24)*sol(:ncol,:, 38) ! rate_const*CH2BR2*CL - rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 24)*sol(:ncol,:, 137) ! rate_const*CH2BR2*OH - rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 26)*sol(:ncol,:, 38) ! rate_const*CH3BR*CL - rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 26)*sol(:ncol,:, 137) ! rate_const*CH3BR*OH - rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 27)*sol(:ncol,:, 137) ! rate_const*CH3CCL3*OH - rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 29)*sol(:ncol,:, 38) ! rate_const*CH3CL*CL - rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 29)*sol(:ncol,:, 137) ! rate_const*CH3CL*OH - rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 37)*sol(:ncol,:, 38) ! rate_const*CHBR3*CL - rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 37)*sol(:ncol,:, 137) ! rate_const*CHBR3*OH - rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 60)*sol(:ncol,:, 137) ! rate_const*HCFC141B*OH - rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 61)*sol(:ncol,:, 137) ! rate_const*HCFC142B*OH - rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 62)*sol(:ncol,:, 137) ! rate_const*HCFC22*OH - rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 136)*sol(:ncol,:, 24) ! rate_const*O1D*CH2BR2 - rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 136)*sol(:ncol,:, 26) ! rate_const*O1D*CH3BR - rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 136)*sol(:ncol,:, 60) ! rate_const*O1D*HCFC141B - rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 136)*sol(:ncol,:, 61) ! rate_const*O1D*HCFC142B - rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 136)*sol(:ncol,:, 62) ! rate_const*O1D*HCFC22 - rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 25)*sol(:ncol,:, 90) ! rate_const*CH2O*NO3 - rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 25)*sol(:ncol,:, 97) ! rate_const*CH2O*O - rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 25)*sol(:ncol,:, 137) ! rate_const*CH2O*OH - rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 129)*sol(:ncol,:, 129) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 129)*sol(:ncol,:, 129) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 129)*sol(:ncol,:, 132) ! rate_const*CH3O2*HO2 - rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 129)*sol(:ncol,:, 88) ! rate_const*CH3O2*NO - rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 34)*sol(:ncol,:, 137) ! rate_const*CH3OH*OH - rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 35)*sol(:ncol,:, 137) ! rate_const*CH3OOH*OH - rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 36)*sol(:ncol,:, 137) ! rate_const*CH4*OH - rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 136)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 136)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 136)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 44)*sol(:ncol,:, 137) ! rate_const*CO*OH - rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 9)*sol(:ncol,:, 38) ! rate_const*M*C2H4*CL - rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 9)*sol(:ncol,:, 98) ! rate_const*C2H4*O3 - rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 126)*sol(:ncol,:, 126) ! rate_const*C2H5O2*C2H5O2 - rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 126)*sol(:ncol,:, 129) ! rate_const*C2H5O2*CH3O2 - rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 126)*sol(:ncol,:, 132) ! rate_const*C2H5O2*HO2 - rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 126)*sol(:ncol,:, 88) ! rate_const*C2H5O2*NO - rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 10)*sol(:ncol,:, 137) ! rate_const*C2H5OH*OH - rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 11)*sol(:ncol,:, 137) ! rate_const*C2H5OOH*OH - rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 12)*sol(:ncol,:, 38) ! rate_const*C2H6*CL - rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 12)*sol(:ncol,:, 137) ! rate_const*C2H6*OH - rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 28)*sol(:ncol,:, 90) ! rate_const*CH3CHO*NO3 - rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 28)*sol(:ncol,:, 137) ! rate_const*CH3CHO*OH - rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 128)*sol(:ncol,:, 128) ! rate_const*CH3CO3*CH3CO3 - rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 128)*sol(:ncol,:, 129) ! rate_const*CH3CO3*CH3O2 - rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 128)*sol(:ncol,:, 132) ! rate_const*CH3CO3*HO2 - rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 128)*sol(:ncol,:, 88) ! rate_const*CH3CO3*NO - rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 32)*sol(:ncol,:, 137) ! rate_const*CH3COOH*OH - rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 33)*sol(:ncol,:, 137) ! rate_const*CH3COOOH*OH - rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 131)*sol(:ncol,:, 132) ! rate_const*EO2*HO2 - rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 131)*sol(:ncol,:, 88) ! rate_const*EO2*NO - rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 130) ! rate_const*EO - rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 130) ! rate_const*O2*EO - rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 52)*sol(:ncol,:, 137) ! rate_const*GLYALD*OH - rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 53)*sol(:ncol,:, 137) ! rate_const*GLYOXAL*OH - rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 103)*sol(:ncol,:, 137) ! rate_const*PAN*OH - rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 9)*sol(:ncol,:, 137) ! rate_const*M*C2H4*OH - rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 128)*sol(:ncol,:, 89) ! rate_const*M*CH3CO3*NO2 - rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 103) ! rate_const*M*PAN - rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 13)*sol(:ncol,:, 90) ! rate_const*C3H6*NO3 - rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 13)*sol(:ncol,:, 98) ! rate_const*C3H6*O3 - rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 127)*sol(:ncol,:, 129) ! rate_const*C3H7O2*CH3O2 - rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 127)*sol(:ncol,:, 132) ! rate_const*C3H7O2*HO2 - rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 127)*sol(:ncol,:, 88) ! rate_const*C3H7O2*NO - rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 14)*sol(:ncol,:, 137) ! rate_const*C3H7OOH*OH - rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 15)*sol(:ncol,:, 137) ! rate_const*C3H8*OH - rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 31)*sol(:ncol,:, 90) ! rate_const*CH3COCHO*NO3 - rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 31)*sol(:ncol,:, 137) ! rate_const*CH3COCHO*OH - rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 69)*sol(:ncol,:, 137) ! rate_const*HYAC*OH - rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 91)*sol(:ncol,:, 137) ! rate_const*NOA*OH - rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 138)*sol(:ncol,:, 132) ! rate_const*PO2*HO2 - rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 138)*sol(:ncol,:, 88) ! rate_const*PO2*NO - rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 106)*sol(:ncol,:, 137) ! rate_const*POOH*OH - rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 139)*sol(:ncol,:, 129) ! rate_const*RO2*CH3O2 - rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 139)*sol(:ncol,:, 132) ! rate_const*RO2*HO2 - rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 139)*sol(:ncol,:, 88) ! rate_const*RO2*NO - rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 107)*sol(:ncol,:, 137) ! rate_const*ROOH*OH - rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 13)*sol(:ncol,:, 137) ! rate_const*M*C3H6*OH - rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 30)*sol(:ncol,:, 137) ! rate_const*CH3COCH3*OH - rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 134)*sol(:ncol,:, 128) ! rate_const*MACRO2*CH3CO3 - rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 134)*sol(:ncol,:, 129) ! rate_const*MACRO2*CH3O2 - rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 134)*sol(:ncol,:, 132) ! rate_const*MACRO2*HO2 - rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 134)*sol(:ncol,:, 90) ! rate_const*MACRO2*NO3 - rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 134)*sol(:ncol,:, 88) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 134)*sol(:ncol,:, 88) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 74)*sol(:ncol,:, 98) ! rate_const*MACR*O3 - rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 74)*sol(:ncol,:, 137) ! rate_const*MACR*OH - rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 75)*sol(:ncol,:, 137) ! rate_const*MACROOH*OH - rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 135)*sol(:ncol,:, 128) ! rate_const*MCO3*CH3CO3 - rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 135)*sol(:ncol,:, 129) ! rate_const*MCO3*CH3O2 - rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 135)*sol(:ncol,:, 132) ! rate_const*MCO3*HO2 - rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 135)*sol(:ncol,:, 135) ! rate_const*MCO3*MCO3 - rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 135)*sol(:ncol,:, 88) ! rate_const*MCO3*NO - rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 135)*sol(:ncol,:, 90) ! rate_const*MCO3*NO3 - rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 76)*sol(:ncol,:, 137) ! rate_const*M*MPAN*OH - rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 77)*sol(:ncol,:, 98) ! rate_const*MVK*O3 - rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 77)*sol(:ncol,:, 137) ! rate_const*MVK*OH - rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 135)*sol(:ncol,:, 89) ! rate_const*M*MCO3*NO2 - rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 76) ! rate_const*M*MPAN - rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 3)*sol(:ncol,:, 137) ! rate_const*BIGALK*OH - rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 70)*sol(:ncol,:, 137) ! rate_const*HYDRALD*OH - rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 71)*sol(:ncol,:, 90) ! rate_const*ISOP*NO3 - rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 72)*sol(:ncol,:, 132) ! rate_const*ISOPNO3*HO2 - rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 72)*sol(:ncol,:, 88) ! rate_const*ISOPNO3*NO - rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 72)*sol(:ncol,:, 90) ! rate_const*ISOPNO3*NO3 - rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 133)*sol(:ncol,:, 128) ! rate_const*ISOPO2*CH3CO3 - rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 133)*sol(:ncol,:, 129) ! rate_const*ISOPO2*CH3O2 - rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 133)*sol(:ncol,:, 132) ! rate_const*ISOPO2*HO2 - rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 133)*sol(:ncol,:, 88) ! rate_const*ISOPO2*NO - rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 133)*sol(:ncol,:, 90) ! rate_const*ISOPO2*NO3 - rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 71)*sol(:ncol,:, 98) ! rate_const*ISOP*O3 - rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 71)*sol(:ncol,:, 137) ! rate_const*ISOP*OH - rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 73)*sol(:ncol,:, 137) ! rate_const*ISOPOOH*OH - rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 102)*sol(:ncol,:, 90) ! rate_const*ONITR*NO3 - rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 102)*sol(:ncol,:, 137) ! rate_const*ONITR*OH - rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 140)*sol(:ncol,:, 128) ! rate_const*XO2*CH3CO3 - rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 140)*sol(:ncol,:, 129) ! rate_const*XO2*CH3O2 - rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 140)*sol(:ncol,:, 132) ! rate_const*XO2*HO2 - rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 140)*sol(:ncol,:, 88) ! rate_const*XO2*NO - rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 140)*sol(:ncol,:, 90) ! rate_const*XO2*NO3 - rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 123)*sol(:ncol,:, 137) ! rate_const*XOOH*OH - rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 122)*sol(:ncol,:, 90) ! rate_const*TERP*NO3 - rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 122)*sol(:ncol,:, 98) ! rate_const*TERP*O3 - rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 122)*sol(:ncol,:, 137) ! rate_const*TERP*OH - rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 46)*sol(:ncol,:, 90) ! rate_const*DMS*NO3 - rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 46)*sol(:ncol,:, 137) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 101)*sol(:ncol,:, 97) ! rate_const*OCS*O - rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 101)*sol(:ncol,:, 137) ! rate_const*OCS*OH - rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 108) ! rate_const*O2*S - rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 111)*sol(:ncol,:, 137) ! rate_const*M*SO2*OH - rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 108)*sol(:ncol,:, 98) ! rate_const*S*O3 - rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 110)*sol(:ncol,:, 6) ! rate_const*SO*BRO - rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 110)*sol(:ncol,:, 41) ! rate_const*SO*CLO - rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 108)*sol(:ncol,:, 137) ! rate_const*S*OH - rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 110)*sol(:ncol,:, 89) ! rate_const*SO*NO2 - rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 110) ! rate_const*O2*SO - rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 110)*sol(:ncol,:, 98) ! rate_const*SO*O3 - rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 110)*sol(:ncol,:, 100) ! rate_const*SO*OCLO - rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 110)*sol(:ncol,:, 137) ! rate_const*SO*OH - rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 46)*sol(:ncol,:, 137) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 112)*sol(:ncol,:, 141) ! rate_const*SO3*H2O - rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 84)*sol(:ncol,:, 137) ! rate_const*NH3*OH - rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 132) ! rate_const*HO2 - rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 85) ! rate_const*NH4 - rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 89) ! rate_const*NO2 - rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 90) ! rate_const*NO3 - rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 102) ! rate_const*ONITR - rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 119) ! rate_const*SOAE - rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 68)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 42) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 68)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 67)*sol(:ncol,:, 63) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 42) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 68)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 67)*sol(:ncol,:, 63) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 80) ! rate_const*N2O5 - rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 42) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 66) ! rate_const*HOBR + rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 67) ! rate_const*HOCL + rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 102) ! rate_const*OCLO + rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 111) ! rate_const*SF6 + rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 58) ! rate_const*H2SO4 + rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 103) ! rate_const*OCS + rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 112) ! rate_const*SO + rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 113) ! rate_const*SO2 + rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 114) ! rate_const*SO3 + rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 119) ! rate_const*soa_a1 + rxt_rates(:ncol,:, 84) = rxt_rates(:ncol,:, 84)*sol(:ncol,:, 120) ! rate_const*soa_a2 + rxt_rates(:ncol,:, 85) = rxt_rates(:ncol,:, 85)*sol(:ncol,:, 98) ! rate_const*O2_1D + rxt_rates(:ncol,:, 86) = rxt_rates(:ncol,:, 86)*sol(:ncol,:, 99) ! rate_const*O2_1S + rxt_rates(:ncol,:, 87) = rxt_rates(:ncol,:, 87)*sol(:ncol,:, 138)*sol(:ncol,:, 55) ! rate_const*O1D*H2 + rxt_rates(:ncol,:, 88) = rxt_rates(:ncol,:, 88)*sol(:ncol,:, 138)*sol(:ncol,:, 143) ! rate_const*O1D*H2O + rxt_rates(:ncol,:, 89) = rxt_rates(:ncol,:, 89)*sol(:ncol,:, 138) ! rate_const*N2*O1D + rxt_rates(:ncol,:, 90) = rxt_rates(:ncol,:, 90)*sol(:ncol,:, 138)*sol(:ncol,:, 97) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 91) = rxt_rates(:ncol,:, 91)*sol(:ncol,:, 138)*sol(:ncol,:, 97) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 138)*sol(:ncol,:, 100) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 138)*sol(:ncol,:, 100) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 98) ! rate_const*N2*O2_1D + rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 98)*sol(:ncol,:, 96) ! rate_const*O2_1D*O + rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 98)*sol(:ncol,:, 97) ! rate_const*O2_1D*O2 + rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 99)*sol(:ncol,:, 45) ! rate_const*O2_1S*CO2 + rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 99) ! rate_const*N2*O2_1S + rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 99)*sol(:ncol,:, 96) ! rate_const*O2_1S*O + rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 99)*sol(:ncol,:, 97) ! rate_const*O2_1S*O2 + rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 99)*sol(:ncol,:, 100) ! rate_const*O2_1S*O3 + rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 96)*sol(:ncol,:, 100) ! rate_const*O*O3 + rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 96)*sol(:ncol,:, 96) ! rate_const*M*O*O + rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 96)*sol(:ncol,:, 97) ! rate_const*M*O*O2 + rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 55)*sol(:ncol,:, 96) ! rate_const*H2*O + rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 57)*sol(:ncol,:, 96) ! rate_const*H2O2*O + rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 54)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 54)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 54)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 54)*sol(:ncol,:, 97) ! rate_const*M*H*O2 + rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 134)*sol(:ncol,:, 96) ! rate_const*HO2*O + rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 134)*sol(:ncol,:, 100) ! rate_const*HO2*O3 + rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 54)*sol(:ncol,:, 100) ! rate_const*H*O3 + rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 139)*sol(:ncol,:, 55) ! rate_const*OH*H2 + rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 139)*sol(:ncol,:, 57) ! rate_const*OH*H2O2 + rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 139)*sol(:ncol,:, 134) ! rate_const*OH*HO2 + rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 139)*sol(:ncol,:, 96) ! rate_const*OH*O + rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 139)*sol(:ncol,:, 100) ! rate_const*OH*O3 + rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 139)*sol(:ncol,:, 139) ! rate_const*OH*OH + rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 139)*sol(:ncol,:, 139) ! rate_const*M*OH*OH + rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 134)*sol(:ncol,:, 134) ! rate_const*HO2*HO2 + rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 65)*sol(:ncol,:, 139) ! rate_const*HO2NO2*OH + rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 77)*sol(:ncol,:, 87) ! rate_const*N*NO + rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 77)*sol(:ncol,:, 88) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 77)*sol(:ncol,:, 88) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 77)*sol(:ncol,:, 88) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 77)*sol(:ncol,:, 97) ! rate_const*N*O2 + rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 88)*sol(:ncol,:, 96) ! rate_const*NO2*O + rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 88)*sol(:ncol,:, 100) ! rate_const*NO2*O3 + rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 88)*sol(:ncol,:, 96) ! rate_const*M*NO2*O + rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 89)*sol(:ncol,:, 134) ! rate_const*NO3*HO2 + rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 89)*sol(:ncol,:, 87) ! rate_const*NO3*NO + rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 89)*sol(:ncol,:, 96) ! rate_const*NO3*O + rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 89)*sol(:ncol,:, 139) ! rate_const*NO3*OH + rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 77)*sol(:ncol,:, 139) ! rate_const*N*OH + rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 87)*sol(:ncol,:, 134) ! rate_const*NO*HO2 + rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 87)*sol(:ncol,:, 100) ! rate_const*NO*O3 + rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 87)*sol(:ncol,:, 96) ! rate_const*M*NO*O + rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 138)*sol(:ncol,:, 78) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 138)*sol(:ncol,:, 78) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 88)*sol(:ncol,:, 134) ! rate_const*M*NO2*HO2 + rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 88)*sol(:ncol,:, 89) ! rate_const*M*NO2*NO3 + rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 88)*sol(:ncol,:, 139) ! rate_const*M*NO2*OH + rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 64)*sol(:ncol,:, 139) ! rate_const*HNO3*OH + rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 65) ! rate_const*M*HO2NO2 + rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 79) ! rate_const*M*N2O5 + rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 38)*sol(:ncol,:, 25) ! rate_const*CL*CH2O + rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 38)*sol(:ncol,:, 36) ! rate_const*CL*CH4 + rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 38)*sol(:ncol,:, 55) ! rate_const*CL*H2 + rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 38)*sol(:ncol,:, 57) ! rate_const*CL*H2O2 + rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 38)*sol(:ncol,:, 134) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 38)*sol(:ncol,:, 134) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 38)*sol(:ncol,:, 100) ! rate_const*CL*O3 + rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 41)*sol(:ncol,:, 131) ! rate_const*CLO*CH3O2 + rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 41)*sol(:ncol,:, 134) ! rate_const*CLO*HO2 + rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 41)*sol(:ncol,:, 87) ! rate_const*CLO*NO + rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 42)*sol(:ncol,:, 38) ! rate_const*CLONO2*CL + rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 41)*sol(:ncol,:, 88) ! rate_const*M*CLO*NO2 + rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 42)*sol(:ncol,:, 96) ! rate_const*CLONO2*O + rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 42)*sol(:ncol,:, 139) ! rate_const*CLONO2*OH + rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 41)*sol(:ncol,:, 96) ! rate_const*CLO*O + rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 41)*sol(:ncol,:, 139) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 41)*sol(:ncol,:, 139) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 63)*sol(:ncol,:, 96) ! rate_const*HCL*O + rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 63)*sol(:ncol,:, 139) ! rate_const*HCL*OH + rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 67)*sol(:ncol,:, 38) ! rate_const*HOCL*CL + rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 67)*sol(:ncol,:, 96) ! rate_const*HOCL*O + rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 67)*sol(:ncol,:, 139) ! rate_const*HOCL*OH + rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 138)*sol(:ncol,:, 16) ! rate_const*O1D*CCL4 + rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 138)*sol(:ncol,:, 17) ! rate_const*O1D*CF2CLBR + rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 138)*sol(:ncol,:, 19) ! rate_const*O1D*CFC11 + rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 138)*sol(:ncol,:, 20) ! rate_const*O1D*CFC113 + rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 138)*sol(:ncol,:, 21) ! rate_const*O1D*CFC114 + rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 138)*sol(:ncol,:, 22) ! rate_const*O1D*CFC115 + rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 138)*sol(:ncol,:, 23) ! rate_const*O1D*CFC12 + rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 138)*sol(:ncol,:, 63) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 138)*sol(:ncol,:, 63) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 41)*sol(:ncol,:, 41) ! rate_const*M*CLO*CLO + rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 40) ! rate_const*M*CL2O2 + rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 4)*sol(:ncol,:, 25) ! rate_const*BR*CH2O + rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 4)*sol(:ncol,:, 134) ! rate_const*BR*HO2 + rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 4)*sol(:ncol,:, 100) ! rate_const*BR*O3 + rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 6)*sol(:ncol,:, 6) ! rate_const*BRO*BRO + rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 6)*sol(:ncol,:, 41) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 6)*sol(:ncol,:, 134) ! rate_const*BRO*HO2 + rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 6)*sol(:ncol,:, 87) ! rate_const*BRO*NO + rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 6)*sol(:ncol,:, 88) ! rate_const*M*BRO*NO2 + rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 7)*sol(:ncol,:, 96) ! rate_const*BRONO2*O + rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 6)*sol(:ncol,:, 96) ! rate_const*BRO*O + rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 6)*sol(:ncol,:, 139) ! rate_const*BRO*OH + rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 59)*sol(:ncol,:, 96) ! rate_const*HBR*O + rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 59)*sol(:ncol,:, 139) ! rate_const*HBR*OH + rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 66)*sol(:ncol,:, 96) ! rate_const*HOBR*O + rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 138)*sol(:ncol,:, 18) ! rate_const*O1D*CF3BR + rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 138)*sol(:ncol,:, 37) ! rate_const*O1D*CHBR3 + rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 138)*sol(:ncol,:, 56) ! rate_const*O1D*H2402 + rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 138)*sol(:ncol,:, 59) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 138)*sol(:ncol,:, 59) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 24)*sol(:ncol,:, 38) ! rate_const*CH2BR2*CL + rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 24)*sol(:ncol,:, 139) ! rate_const*CH2BR2*OH + rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 26)*sol(:ncol,:, 38) ! rate_const*CH3BR*CL + rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 26)*sol(:ncol,:, 139) ! rate_const*CH3BR*OH + rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 27)*sol(:ncol,:, 139) ! rate_const*CH3CCL3*OH + rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 29)*sol(:ncol,:, 38) ! rate_const*CH3CL*CL + rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 29)*sol(:ncol,:, 139) ! rate_const*CH3CL*OH + rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 37)*sol(:ncol,:, 38) ! rate_const*CHBR3*CL + rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 37)*sol(:ncol,:, 139) ! rate_const*CHBR3*OH + rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 60)*sol(:ncol,:, 139) ! rate_const*HCFC141B*OH + rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 61)*sol(:ncol,:, 139) ! rate_const*HCFC142B*OH + rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 62)*sol(:ncol,:, 139) ! rate_const*HCFC22*OH + rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 138)*sol(:ncol,:, 24) ! rate_const*O1D*CH2BR2 + rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 138)*sol(:ncol,:, 26) ! rate_const*O1D*CH3BR + rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 138)*sol(:ncol,:, 60) ! rate_const*O1D*HCFC141B + rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 138)*sol(:ncol,:, 61) ! rate_const*O1D*HCFC142B + rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 138)*sol(:ncol,:, 62) ! rate_const*O1D*HCFC22 + rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 25)*sol(:ncol,:, 89) ! rate_const*CH2O*NO3 + rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 25)*sol(:ncol,:, 96) ! rate_const*CH2O*O + rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 25)*sol(:ncol,:, 139) ! rate_const*CH2O*OH + rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 131)*sol(:ncol,:, 131) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 131)*sol(:ncol,:, 131) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 131)*sol(:ncol,:, 134) ! rate_const*CH3O2*HO2 + rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 131)*sol(:ncol,:, 87) ! rate_const*CH3O2*NO + rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 34)*sol(:ncol,:, 139) ! rate_const*CH3OH*OH + rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 35)*sol(:ncol,:, 139) ! rate_const*CH3OOH*OH + rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 36)*sol(:ncol,:, 139) ! rate_const*CH4*OH + rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 138)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 138)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 138)*sol(:ncol,:, 36) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 44)*sol(:ncol,:, 139) ! rate_const*CO*OH + rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 9)*sol(:ncol,:, 38) ! rate_const*M*C2H4*CL + rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 9)*sol(:ncol,:, 100) ! rate_const*C2H4*O3 + rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 128)*sol(:ncol,:, 128) ! rate_const*C2H5O2*C2H5O2 + rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 128)*sol(:ncol,:, 131) ! rate_const*C2H5O2*CH3O2 + rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 128)*sol(:ncol,:, 134) ! rate_const*C2H5O2*HO2 + rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 128)*sol(:ncol,:, 87) ! rate_const*C2H5O2*NO + rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 10)*sol(:ncol,:, 139) ! rate_const*C2H5OH*OH + rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 11)*sol(:ncol,:, 139) ! rate_const*C2H5OOH*OH + rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 12)*sol(:ncol,:, 38) ! rate_const*C2H6*CL + rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 12)*sol(:ncol,:, 139) ! rate_const*C2H6*OH + rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 28)*sol(:ncol,:, 89) ! rate_const*CH3CHO*NO3 + rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 28)*sol(:ncol,:, 139) ! rate_const*CH3CHO*OH + rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 130)*sol(:ncol,:, 130) ! rate_const*CH3CO3*CH3CO3 + rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 130)*sol(:ncol,:, 131) ! rate_const*CH3CO3*CH3O2 + rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 130)*sol(:ncol,:, 134) ! rate_const*CH3CO3*HO2 + rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 130)*sol(:ncol,:, 87) ! rate_const*CH3CO3*NO + rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 32)*sol(:ncol,:, 139) ! rate_const*CH3COOH*OH + rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 33)*sol(:ncol,:, 139) ! rate_const*CH3COOOH*OH + rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 133)*sol(:ncol,:, 134) ! rate_const*EO2*HO2 + rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 133)*sol(:ncol,:, 87) ! rate_const*EO2*NO + rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 132) ! rate_const*EO + rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 132)*sol(:ncol,:, 97) ! rate_const*EO*O2 + rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 52)*sol(:ncol,:, 139) ! rate_const*GLYALD*OH + rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 53)*sol(:ncol,:, 139) ! rate_const*GLYOXAL*OH + rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 105)*sol(:ncol,:, 139) ! rate_const*PAN*OH + rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 9)*sol(:ncol,:, 139) ! rate_const*M*C2H4*OH + rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 130)*sol(:ncol,:, 88) ! rate_const*M*CH3CO3*NO2 + rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 105) ! rate_const*M*PAN + rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 13)*sol(:ncol,:, 89) ! rate_const*C3H6*NO3 + rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 13)*sol(:ncol,:, 100) ! rate_const*C3H6*O3 + rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 129)*sol(:ncol,:, 131) ! rate_const*C3H7O2*CH3O2 + rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 129)*sol(:ncol,:, 134) ! rate_const*C3H7O2*HO2 + rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 129)*sol(:ncol,:, 87) ! rate_const*C3H7O2*NO + rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 14)*sol(:ncol,:, 139) ! rate_const*C3H7OOH*OH + rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 15)*sol(:ncol,:, 139) ! rate_const*C3H8*OH + rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 31)*sol(:ncol,:, 89) ! rate_const*CH3COCHO*NO3 + rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 31)*sol(:ncol,:, 139) ! rate_const*CH3COCHO*OH + rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 68)*sol(:ncol,:, 139) ! rate_const*HYAC*OH + rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 90)*sol(:ncol,:, 139) ! rate_const*NOA*OH + rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 140)*sol(:ncol,:, 134) ! rate_const*PO2*HO2 + rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 140)*sol(:ncol,:, 87) ! rate_const*PO2*NO + rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 108)*sol(:ncol,:, 139) ! rate_const*POOH*OH + rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 141)*sol(:ncol,:, 131) ! rate_const*RO2*CH3O2 + rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 141)*sol(:ncol,:, 134) ! rate_const*RO2*HO2 + rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 141)*sol(:ncol,:, 87) ! rate_const*RO2*NO + rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 109)*sol(:ncol,:, 139) ! rate_const*ROOH*OH + rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 13)*sol(:ncol,:, 139) ! rate_const*M*C3H6*OH + rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 30)*sol(:ncol,:, 139) ! rate_const*CH3COCH3*OH + rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 136)*sol(:ncol,:, 130) ! rate_const*MACRO2*CH3CO3 + rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 136)*sol(:ncol,:, 131) ! rate_const*MACRO2*CH3O2 + rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 136)*sol(:ncol,:, 134) ! rate_const*MACRO2*HO2 + rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 136)*sol(:ncol,:, 89) ! rate_const*MACRO2*NO3 + rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 136)*sol(:ncol,:, 87) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 136)*sol(:ncol,:, 87) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 73)*sol(:ncol,:, 100) ! rate_const*MACR*O3 + rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 73)*sol(:ncol,:, 139) ! rate_const*MACR*OH + rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 74)*sol(:ncol,:, 139) ! rate_const*MACROOH*OH + rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 137)*sol(:ncol,:, 130) ! rate_const*MCO3*CH3CO3 + rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 137)*sol(:ncol,:, 131) ! rate_const*MCO3*CH3O2 + rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 137)*sol(:ncol,:, 134) ! rate_const*MCO3*HO2 + rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 137)*sol(:ncol,:, 137) ! rate_const*MCO3*MCO3 + rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 137)*sol(:ncol,:, 87) ! rate_const*MCO3*NO + rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 137)*sol(:ncol,:, 89) ! rate_const*MCO3*NO3 + rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 75)*sol(:ncol,:, 139) ! rate_const*M*MPAN*OH + rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 76)*sol(:ncol,:, 100) ! rate_const*MVK*O3 + rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 76)*sol(:ncol,:, 139) ! rate_const*MVK*OH + rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 137)*sol(:ncol,:, 88) ! rate_const*M*MCO3*NO2 + rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 75) ! rate_const*M*MPAN + rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 3)*sol(:ncol,:, 139) ! rate_const*BIGALK*OH + rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 69)*sol(:ncol,:, 139) ! rate_const*HYDRALD*OH + rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 70)*sol(:ncol,:, 89) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 71)*sol(:ncol,:, 134) ! rate_const*ISOPNO3*HO2 + rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 71)*sol(:ncol,:, 87) ! rate_const*ISOPNO3*NO + rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 71)*sol(:ncol,:, 89) ! rate_const*ISOPNO3*NO3 + rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 135)*sol(:ncol,:, 130) ! rate_const*ISOPO2*CH3CO3 + rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 135)*sol(:ncol,:, 131) ! rate_const*ISOPO2*CH3O2 + rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 135)*sol(:ncol,:, 134) ! rate_const*ISOPO2*HO2 + rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 135)*sol(:ncol,:, 87) ! rate_const*ISOPO2*NO + rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 135)*sol(:ncol,:, 89) ! rate_const*ISOPO2*NO3 + rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 70)*sol(:ncol,:, 100) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 70)*sol(:ncol,:, 139) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 72)*sol(:ncol,:, 139) ! rate_const*ISOPOOH*OH + rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 104)*sol(:ncol,:, 89) ! rate_const*ONITR*NO3 + rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 104)*sol(:ncol,:, 139) ! rate_const*ONITR*OH + rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 142)*sol(:ncol,:, 130) ! rate_const*XO2*CH3CO3 + rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 142)*sol(:ncol,:, 131) ! rate_const*XO2*CH3O2 + rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 142)*sol(:ncol,:, 134) ! rate_const*XO2*HO2 + rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 142)*sol(:ncol,:, 87) ! rate_const*XO2*NO + rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 142)*sol(:ncol,:, 89) ! rate_const*XO2*NO3 + rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 125)*sol(:ncol,:, 139) ! rate_const*XOOH*OH + rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 124)*sol(:ncol,:, 89) ! rate_const*TERP*NO3 + rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 124)*sol(:ncol,:, 100) ! rate_const*TERP*O3 + rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 124)*sol(:ncol,:, 139) ! rate_const*TERP*OH + rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 46)*sol(:ncol,:, 89) ! rate_const*DMS*NO3 + rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 46)*sol(:ncol,:, 139) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 103)*sol(:ncol,:, 96) ! rate_const*OCS*O + rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 103)*sol(:ncol,:, 139) ! rate_const*OCS*OH + rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 110)*sol(:ncol,:, 97) ! rate_const*S*O2 + rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 113)*sol(:ncol,:, 139) ! rate_const*M*SO2*OH + rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 110)*sol(:ncol,:, 100) ! rate_const*S*O3 + rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 112)*sol(:ncol,:, 6) ! rate_const*SO*BRO + rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 112)*sol(:ncol,:, 41) ! rate_const*SO*CLO + rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 110)*sol(:ncol,:, 139) ! rate_const*S*OH + rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 112)*sol(:ncol,:, 88) ! rate_const*SO*NO2 + rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 112)*sol(:ncol,:, 97) ! rate_const*SO*O2 + rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 112)*sol(:ncol,:, 100) ! rate_const*SO*O3 + rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 112)*sol(:ncol,:, 102) ! rate_const*SO*OCLO + rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 112)*sol(:ncol,:, 139) ! rate_const*SO*OH + rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 46)*sol(:ncol,:, 139) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 114)*sol(:ncol,:, 143) ! rate_const*SO3*H2O + rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 83)*sol(:ncol,:, 139) ! rate_const*NH3*OH + rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 134) ! rate_const*HO2 + rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 84) ! rate_const*NH4 + rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 88) ! rate_const*NO2 + rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 89) ! rate_const*NO3 + rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 104) ! rate_const*ONITR + rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 121) ! rate_const*SOAE + rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 67)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 7) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 42) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 7) ! rate_const*BRONO2 rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 50) ! rate_const*E90 - rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 87) ! rate_const*NH_50 - rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 86) ! rate_const*NH_5 - rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 121) ! rate_const*ST80_25 + rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 67)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 66)*sol(:ncol,:, 63) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 42) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 7) ! rate_const*BRONO2 + rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 67)*sol(:ncol,:, 63) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 66)*sol(:ncol,:, 63) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 79) ! rate_const*N2O5 + rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 42) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 50) ! rate_const*E90 + rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 86) ! rate_const*NH_50 + rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 85) ! rate_const*NH_5 + rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 123) ! rate_const*ST80_25 end subroutine set_rates end module mo_rxt_rates_conv diff --git a/src/chemistry/pp_trop_strat_mam5_t4s2/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_setrxt.F90 new file mode 100644 index 0000000000..1dcac96589 --- /dev/null +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_setrxt.F90 @@ -0,0 +1,476 @@ + + module mo_setrxt + + use shr_kind_mod, only : r8 => shr_kind_r8 + + private + public :: setrxt + public :: setrxt_hrates + + contains + + subroutine setrxt( rate, temp, m, ncol ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + real(r8) :: itemp(ncol*pver) + real(r8) :: exp_fac(ncol*pver) + real(r8) :: ko(ncol*pver) + real(r8) :: kinf(ncol*pver) + + rate(:,85) = 0.000258_r8 + rate(:,86) = 0.085_r8 + rate(:,87) = 1.2e-10_r8 + rate(:,92) = 1.2e-10_r8 + rate(:,93) = 1.2e-10_r8 + rate(:,94) = 1e-20_r8 + rate(:,95) = 1.3e-16_r8 + rate(:,97) = 4.2e-13_r8 + rate(:,99) = 8e-14_r8 + rate(:,100) = 3.9e-17_r8 + rate(:,107) = 6.9e-12_r8 + rate(:,108) = 7.2e-11_r8 + rate(:,109) = 1.6e-12_r8 + rate(:,115) = 1.8e-12_r8 + rate(:,119) = 1.8e-12_r8 + rate(:,131) = 3.5e-12_r8 + rate(:,133) = 1.3e-11_r8 + rate(:,134) = 2.2e-11_r8 + rate(:,135) = 5e-11_r8 + rate(:,170) = 1.7e-13_r8 + rate(:,172) = 2.607e-10_r8 + rate(:,173) = 9.75e-11_r8 + rate(:,174) = 2.07e-10_r8 + rate(:,175) = 2.088e-10_r8 + rate(:,176) = 1.17e-10_r8 + rate(:,177) = 4.644e-11_r8 + rate(:,178) = 1.204e-10_r8 + rate(:,179) = 9.9e-11_r8 + rate(:,180) = 3.3e-12_r8 + rate(:,199) = 4.5e-11_r8 + rate(:,200) = 4.62e-10_r8 + rate(:,201) = 1.2e-10_r8 + rate(:,202) = 9e-11_r8 + rate(:,203) = 3e-11_r8 + rate(:,216) = 2.57e-10_r8 + rate(:,217) = 1.8e-10_r8 + rate(:,218) = 1.794e-10_r8 + rate(:,219) = 1.3e-10_r8 + rate(:,220) = 7.65e-11_r8 + rate(:,231) = 1.31e-10_r8 + rate(:,232) = 3.5e-11_r8 + rate(:,233) = 9e-12_r8 + rate(:,237) = 6.8e-14_r8 + rate(:,238) = 2e-13_r8 + rate(:,252) = 1e-12_r8 + rate(:,256) = 1e-14_r8 + rate(:,257) = 1e-11_r8 + rate(:,258) = 1.15e-11_r8 + rate(:,259) = 4e-14_r8 + rate(:,272) = 3e-12_r8 + rate(:,273) = 6.7e-13_r8 + rate(:,283) = 1.4e-11_r8 + rate(:,286) = 2.4e-12_r8 + rate(:,297) = 5e-12_r8 + rate(:,303) = 3.5e-12_r8 + rate(:,308) = 2.4e-12_r8 + rate(:,309) = 1.4e-11_r8 + rate(:,313) = 2.4e-12_r8 + rate(:,318) = 4.5e-11_r8 + rate(:,323) = 2.4e-12_r8 + rate(:,332) = 2.3e-12_r8 + rate(:,334) = 1.2e-11_r8 + rate(:,335) = 5.7e-11_r8 + rate(:,336) = 2.8e-11_r8 + rate(:,337) = 6.6e-11_r8 + rate(:,338) = 1.4e-11_r8 + rate(:,341) = 1.9e-12_r8 + rate(:,348) = 6.34e-08_r8 + rate(:,352) = 1.157e-05_r8 + rate(:,370) = 1.29e-07_r8 + rate(:,371) = 2.31e-07_r8 + rate(:,372) = 2.31e-06_r8 + rate(:,373) = 4.63e-07_r8 + + do n = 1,pver + offset = (n-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n) + end do + + rate(:,88) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) ) + rate(:,89) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + exp_fac(:) = exp( 55._r8 * itemp(:) ) + rate(:,90) = 2.64e-11_r8 * exp_fac(:) + rate(:,91) = 6.6e-12_r8 * exp_fac(:) + rate(:,96) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) ) + rate(:,98) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) ) + rate(:,101) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) ) + rate(:,102) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:,105) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) ) + exp_fac(:) = exp( -2000._r8 * itemp(:) ) + rate(:,106) = 1.4e-12_r8 * exp_fac(:) + rate(:,314) = 1.05e-14_r8 * exp_fac(:) + exp_fac(:) = exp( 200._r8 * itemp(:) ) + rate(:,111) = 3e-11_r8 * exp_fac(:) + rate(:,197) = 5.5e-12_r8 * exp_fac(:) + rate(:,229) = 3.8e-12_r8 * exp_fac(:) + rate(:,242) = 3.8e-12_r8 * exp_fac(:) + rate(:,268) = 3.8e-12_r8 * exp_fac(:) + rate(:,276) = 3.8e-12_r8 * exp_fac(:) + rate(:,280) = 3.8e-12_r8 * exp_fac(:) + rate(:,291) = 2.3e-11_r8 * exp_fac(:) + rate(:,316) = 1.52e-11_r8 * exp_fac(:) + rate(:,324) = 1.52e-12_r8 * exp_fac(:) + rate(:,112) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:,113) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:,114) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) ) + exp_fac(:) = exp( 250._r8 * itemp(:) ) + rate(:,116) = 4.8e-11_r8 * exp_fac(:) + rate(:,195) = 1.7e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 180._r8 * itemp(:) ) + rate(:,117) = 1.8e-11_r8 * exp_fac(:) + rate(:,254) = 4.2e-12_r8 * exp_fac(:) + rate(:,275) = 4.2e-12_r8 * exp_fac(:) + rate(:,312) = 4.4e-12_r8 * exp_fac(:) + rate(:,118) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:,122) = 4.5e-13_r8 * exp( 610._r8 * itemp(:) ) + rate(:,123) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + exp_fac(:) = exp( 220._r8 * itemp(:) ) + rate(:,124) = 2.9e-12_r8 * exp_fac(:) + rate(:,125) = 1.45e-12_r8 * exp_fac(:) + rate(:,126) = 1.45e-12_r8 * exp_fac(:) + rate(:,127) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:,128) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + exp_fac(:) = exp( -2450._r8 * itemp(:) ) + rate(:,129) = 1.2e-13_r8 * exp_fac(:) + rate(:,155) = 3e-11_r8 * exp_fac(:) + exp_fac(:) = exp( 125._r8 * itemp(:) ) + rate(:,132) = 1.7e-11_r8 * exp_fac(:) + rate(:,223) = 5.5e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 260._r8 * itemp(:) ) + rate(:,136) = 3.44e-12_r8 * exp_fac(:) + rate(:,188) = 2.3e-12_r8 * exp_fac(:) + rate(:,191) = 8.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( -1500._r8 * itemp(:) ) + rate(:,137) = 3e-12_r8 * exp_fac(:) + rate(:,196) = 5.8e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 20._r8 * itemp(:) ) + rate(:,139) = 7.26e-11_r8 * exp_fac(:) + rate(:,140) = 4.64e-11_r8 * exp_fac(:) + rate(:,147) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) ) + rate(:,148) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) ) + rate(:,149) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) ) + rate(:,150) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) ) + exp_fac(:) = exp( 270._r8 * itemp(:) ) + rate(:,151) = 1.4e-11_r8 * exp_fac(:) + rate(:,165) = 7.4e-12_r8 * exp_fac(:) + rate(:,250) = 8.1e-12_r8 * exp_fac(:) + rate(:,152) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) ) + rate(:,153) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) ) + rate(:,154) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) ) + rate(:,156) = 1e-12_r8 * exp( -1590._r8 * itemp(:) ) + rate(:,157) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) ) + exp_fac(:) = exp( 290._r8 * itemp(:) ) + rate(:,158) = 2.6e-12_r8 * exp_fac(:) + rate(:,159) = 6.4e-12_r8 * exp_fac(:) + rate(:,189) = 4.1e-13_r8 * exp_fac(:) + rate(:,160) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) ) + exp_fac(:) = exp( -840._r8 * itemp(:) ) + rate(:,162) = 3.6e-12_r8 * exp_fac(:) + rate(:,205) = 2e-12_r8 * exp_fac(:) + rate(:,163) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) ) + rate(:,164) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) ) + exp_fac(:) = exp( 230._r8 * itemp(:) ) + rate(:,166) = 6e-13_r8 * exp_fac(:) + rate(:,186) = 1.5e-12_r8 * exp_fac(:) + rate(:,194) = 1.9e-11_r8 * exp_fac(:) + rate(:,167) = 1e-11_r8 * exp( -3300._r8 * itemp(:) ) + rate(:,168) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) ) + rate(:,169) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) ) + rate(:,171) = 3e-12_r8 * exp( -500._r8 * itemp(:) ) + exp_fac(:) = exp( -800._r8 * itemp(:) ) + rate(:,183) = 1.7e-11_r8 * exp_fac(:) + rate(:,204) = 6.3e-12_r8 * exp_fac(:) + rate(:,184) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) ) + rate(:,185) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) ) + rate(:,187) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) ) + rate(:,190) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) ) + rate(:,193) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) ) + rate(:,198) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) ) + rate(:,206) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) ) + rate(:,207) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) ) + exp_fac(:) = exp( -1520._r8 * itemp(:) ) + rate(:,208) = 1.64e-12_r8 * exp_fac(:) + rate(:,299) = 8.5e-16_r8 * exp_fac(:) + exp_fac(:) = exp( -1100._r8 * itemp(:) ) + rate(:,209) = 2.03e-11_r8 * exp_fac(:) + rate(:,340) = 3.4e-12_r8 * exp_fac(:) + rate(:,210) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) ) + rate(:,211) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) ) + rate(:,212) = 9e-13_r8 * exp( -360._r8 * itemp(:) ) + exp_fac(:) = exp( -1600._r8 * itemp(:) ) + rate(:,213) = 1.25e-12_r8 * exp_fac(:) + rate(:,222) = 3.4e-11_r8 * exp_fac(:) + rate(:,214) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) ) + rate(:,215) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) ) + rate(:,221) = 6e-13_r8 * exp( -2058._r8 * itemp(:) ) + rate(:,224) = 5e-13_r8 * exp( -424._r8 * itemp(:) ) + rate(:,225) = 1.9e-14_r8 * exp( 706._r8 * itemp(:) ) + rate(:,226) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) ) + exp_fac(:) = exp( 300._r8 * itemp(:) ) + rate(:,227) = 2.8e-12_r8 * exp_fac(:) + rate(:,279) = 2.9e-12_r8 * exp_fac(:) + rate(:,228) = 2.9e-12_r8 * exp( -345._r8 * itemp(:) ) + rate(:,230) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) ) + rate(:,236) = 1.2e-14_r8 * exp( -2630._r8 * itemp(:) ) + exp_fac(:) = exp( 700._r8 * itemp(:) ) + rate(:,239) = 7.5e-13_r8 * exp_fac(:) + rate(:,253) = 7.5e-13_r8 * exp_fac(:) + rate(:,274) = 7.5e-13_r8 * exp_fac(:) + rate(:,278) = 8.6e-13_r8 * exp_fac(:) + rate(:,285) = 8e-13_r8 * exp_fac(:) + rate(:,306) = 8e-13_r8 * exp_fac(:) + rate(:,311) = 8e-13_r8 * exp_fac(:) + rate(:,321) = 8e-13_r8 * exp_fac(:) + rate(:,240) = 2.6e-12_r8 * exp( 365._r8 * itemp(:) ) + rate(:,241) = 6.9e-12_r8 * exp( -230._r8 * itemp(:) ) + rate(:,243) = 7.2e-11_r8 * exp( -70._r8 * itemp(:) ) + rate(:,244) = 7.66e-12_r8 * exp( -1020._r8 * itemp(:) ) + exp_fac(:) = exp( -1900._r8 * itemp(:) ) + rate(:,245) = 1.4e-12_r8 * exp_fac(:) + rate(:,264) = 6.5e-15_r8 * exp_fac(:) + rate(:,246) = 4.63e-12_r8 * exp( 350._r8 * itemp(:) ) + exp_fac(:) = exp( 500._r8 * itemp(:) ) + rate(:,247) = 2.9e-12_r8 * exp_fac(:) + rate(:,248) = 2e-12_r8 * exp_fac(:) + rate(:,277) = 7.1e-13_r8 * exp_fac(:) + rate(:,293) = 2e-12_r8 * exp_fac(:) + exp_fac(:) = exp( 1040._r8 * itemp(:) ) + rate(:,249) = 4.3e-13_r8 * exp_fac(:) + rate(:,294) = 4.3e-13_r8 * exp_fac(:) + rate(:,251) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) + rate(:,255) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) + rate(:,263) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) + rate(:,265) = 1e-13_r8 * exp( 557._r8 * itemp(:) ) + rate(:,266) = 1.41e-13_r8 * exp( 1300._r8 * itemp(:) ) + exp_fac(:) = exp( 360._r8 * itemp(:) ) + rate(:,267) = 2.7e-12_r8 * exp_fac(:) + rate(:,287) = 2.7e-12_r8 * exp_fac(:) + rate(:,288) = 1.3e-13_r8 * exp_fac(:) + rate(:,290) = 9.6e-12_r8 * exp_fac(:) + rate(:,296) = 5.3e-12_r8 * exp_fac(:) + rate(:,307) = 2.7e-12_r8 * exp_fac(:) + rate(:,322) = 2.7e-12_r8 * exp_fac(:) + rate(:,269) = 9.19e-12_r8 * exp( -630._r8 * itemp(:) ) + exp_fac(:) = exp( -1860._r8 * itemp(:) ) + rate(:,270) = 1.4e-12_r8 * exp_fac(:) + rate(:,317) = 1.4e-12_r8 * exp_fac(:) + rate(:,271) = 8.4e-13_r8 * exp( 830._r8 * itemp(:) ) + exp_fac(:) = exp( 400._r8 * itemp(:) ) + rate(:,284) = 5e-13_r8 * exp_fac(:) + rate(:,310) = 5e-13_r8 * exp_fac(:) + rate(:,320) = 5e-13_r8 * exp_fac(:) + rate(:,289) = 1.5e-15_r8 * exp( -2100._r8 * itemp(:) ) + exp_fac(:) = exp( 530._r8 * itemp(:) ) + rate(:,292) = 4.6e-12_r8 * exp_fac(:) + rate(:,295) = 2.3e-12_r8 * exp_fac(:) + rate(:,300) = 4.13e-12_r8 * exp( 452._r8 * itemp(:) ) + rate(:,304) = 1.86e-11_r8 * exp( 175._r8 * itemp(:) ) + rate(:,305) = 3.03e-12_r8 * exp( -446._r8 * itemp(:) ) + rate(:,315) = 2.54e-11_r8 * exp( 410._r8 * itemp(:) ) + rate(:,319) = 1.3e-12_r8 * exp( 640._r8 * itemp(:) ) + rate(:,325) = 1.2e-12_r8 * exp( 490._r8 * itemp(:) ) + rate(:,326) = 6.3e-16_r8 * exp( -580._r8 * itemp(:) ) + rate(:,327) = 1.2e-11_r8 * exp( 440._r8 * itemp(:) ) + rate(:,328) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) ) + rate(:,329) = 1.1e-11_r8 * exp( -280._r8 * itemp(:) ) + rate(:,330) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) ) + rate(:,331) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) ) + rate(:,339) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) ) + rate(:,342) = 2.6e-11_r8 * exp( 330._r8 * itemp(:) ) + rate(:,345) = 1.7e-12_r8 * exp( -710._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + n = ncol*pver + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( rate(:,110), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 6.9e-31_r8 * itemp(:)**1._r8 + kinf(:) = 2.6e-11_r8 + call jpl( rate(:,120), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8 + kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8 + call jpl( rate(:,130), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 9e-32_r8 * itemp(:)**1.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,138), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8 + call jpl( rate(:,141), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.4e-30_r8 * itemp(:)**3._r8 + kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8) + call jpl( rate(:,142), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-30_r8 * itemp(:)**3._r8 + kinf(:) = 2.8e-11_r8 + call jpl( rate(:,143), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8 + kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8 + call jpl( rate(:,161), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8 + kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,181), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8 + kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8 + call jpl( rate(:,192), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 1.6e-29_r8 * itemp(:)**3.3_r8 + kinf(:) = 3.1e-10_r8 * itemp(:) + call jpl( rate(:,235), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8.6e-29_r8 * itemp(:)**3.1_r8 + kinf(:) = 9e-12_r8 * itemp(:)**0.85_r8 + call jpl( rate(:,260), m, 0.48_r8, ko, kinf, n ) + + ko(:) = 7.3e-29_r8 * itemp(:)**4.1_r8 + kinf(:) = 9.5e-12_r8 * itemp(:)**1.6_r8 + call jpl( rate(:,261), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,281), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 + kinf(:) = 3e-11_r8 + call jpl( rate(:,298), m, 0.5_r8, ko, kinf, n ) + + ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 + kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 + call jpl( rate(:,301), m, 0.6_r8, ko, kinf, n ) + + ko(:) = 2.9e-31_r8 * itemp(:)**4.1_r8 + kinf(:) = 1.7e-12_r8 * itemp(:)**(-0.2_r8) + call jpl( rate(:,333), m, 0.6_r8, ko, kinf, n ) + + end subroutine setrxt + + + subroutine setrxt_hrates( rate, temp, m, ncol, kbot ) + + use ppgrid, only : pcols, pver + + + use chem_mods, only : rxntot + use mo_jpl, only : jpl + + implicit none + +!------------------------------------------------------- +! ... dummy arguments +!------------------------------------------------------- + integer, intent(in) :: ncol + integer, intent(in) :: kbot + real(r8), intent(in) :: temp(pcols,pver) + real(r8), intent(in) :: m(ncol*pver) + real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) + +!------------------------------------------------------- +! ... local variables +!------------------------------------------------------- + integer :: n + integer :: offset + integer :: k + real(r8) :: itemp(ncol*kbot) + real(r8) :: exp_fac(ncol*kbot) + real(r8) :: ko(ncol*kbot) + real(r8) :: kinf(ncol*kbot) + real(r8) :: wrk(ncol*kbot) + + n = ncol*kbot + + rate(:n,94) = 1e-20_r8 + rate(:n,95) = 1.3e-16_r8 + rate(:n,99) = 8e-14_r8 + rate(:n,100) = 3.9e-17_r8 + rate(:n,107) = 6.9e-12_r8 + + do k = 1,kbot + offset = (k-1)*ncol + itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k) + end do + + rate(:n,89) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) + exp_fac(:) = exp( 55._r8 * itemp(:) ) + rate(:n,90) = 2.64e-11_r8 * exp_fac(:) + rate(:n,91) = 6.6e-12_r8 * exp_fac(:) + rate(:n,96) = 3.6e-18_r8 * exp( -220._r8 * itemp(:) ) + rate(:n,98) = 1.8e-15_r8 * exp( 45._r8 * itemp(:) ) + rate(:n,101) = 3.5e-11_r8 * exp( -135._r8 * itemp(:) ) + rate(:n,102) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) + rate(:n,111) = 3e-11_r8 * exp( 200._r8 * itemp(:) ) + rate(:n,112) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) + rate(:n,113) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) + rate(:n,116) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) ) + rate(:n,117) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) ) + rate(:n,118) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) + rate(:n,123) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) + rate(:n,127) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) + rate(:n,128) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) + rate(:n,136) = 3.44e-12_r8 * exp( 260._r8 * itemp(:) ) + rate(:n,137) = 3e-12_r8 * exp( -1500._r8 * itemp(:) ) + + itemp(:) = 300._r8 * itemp(:) + + ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 + kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) + call jpl( wrk, m, 0.6_r8, ko, kinf, n ) + rate(:n,110) = wrk(:) + + + + + + + + + + + + + + + + + + end subroutine setrxt_hrates + + end module mo_setrxt diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_sim_dat.F90 b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_sim_dat.F90 similarity index 76% rename from src/chemistry/pp_trop_strat_mam5_ts4/mo_sim_dat.F90 rename to src/chemistry/pp_trop_strat_mam5_t4s2/mo_sim_dat.F90 index b70148648c..85a76e400c 100644 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_sim_dat.F90 +++ b/src/chemistry/pp_trop_strat_mam5_t4s2/mo_sim_dat.F90 @@ -31,12 +31,12 @@ subroutine set_sim_dat is_scalar = .false. is_vector = .true. - clscnt(:) = (/ 2, 0, 0, 139, 0 /) + clscnt(:) = (/ 2, 0, 0, 141, 0 /) - cls_rxt_cnt(:,1) = (/ 3, 0, 0, 2 /) - cls_rxt_cnt(:,4) = (/ 2, 117, 244, 139 /) + cls_rxt_cnt(:,1) = (/ 5, 0, 0, 2 /) + cls_rxt_cnt(:,4) = (/ 0, 115, 258, 141 /) - solsym(:141) = (/ 'bc_a1 ','bc_a4 ','BIGALK ','BR ','BRCL ', & + solsym(:143) = (/ 'bc_a1 ','bc_a4 ','BIGALK ','BR ','BRCL ', & 'BRO ','BRONO2 ','BRY ','C2H4 ','C2H5OH ', & 'C2H5OOH ','C2H6 ','C3H6 ','C3H7OOH ','C3H8 ', & 'CCL4 ','CF2CLBR ','CF3BR ','CFC11 ','CFC113 ', & @@ -48,25 +48,25 @@ subroutine set_sim_dat 'DMS ','dst_a1 ','dst_a2 ','dst_a3 ','E90 ', & 'EOOH ','GLYALD ','GLYOXAL ','H ','H2 ', & 'H2402 ','H2O2 ','H2SO4 ','HBR ','HCFC141B ', & - 'HCFC142B ','HCFC22 ','HCL ','HF ','HNO3 ', & - 'HO2NO2 ','HOBR ','HOCL ','HYAC ','HYDRALD ', & - 'ISOP ','ISOPNO3 ','ISOPOOH ','MACR ','MACROOH ', & - 'MPAN ','MVK ','N ','N2O ','N2O5 ', & - 'ncl_a1 ','ncl_a2 ','ncl_a3 ','NH3 ','NH4 ', & - 'NH_5 ','NH_50 ','NO ','NO2 ','NO3 ', & - 'NOA ','num_a1 ','num_a2 ','num_a3 ','num_a4 ', & - 'num_a5 ','O ','O3 ','O3S ','OCLO ', & - 'OCS ','ONITR ','PAN ','pom_a1 ','pom_a4 ', & - 'POOH ','ROOH ','S ','SF6 ','SO ', & - 'SO2 ','SO3 ','so4_a1 ','so4_a2 ','so4_a3 ', & - 'so4_a5 ','soa_a1 ','soa_a2 ','SOAE ','SOAG ', & - 'ST80_25 ','TERP ','XOOH ','NHDEP ','NDEP ', & - 'C2H5O2 ','C3H7O2 ','CH3CO3 ','CH3O2 ','EO ', & - 'EO2 ','HO2 ','ISOPO2 ','MACRO2 ','MCO3 ', & - 'O1D ','OH ','PO2 ','RO2 ','XO2 ', & - 'H2O ' /) + 'HCFC142B ','HCFC22 ','HCL ','HNO3 ','HO2NO2 ', & + 'HOBR ','HOCL ','HYAC ','HYDRALD ','ISOP ', & + 'ISOPNO3 ','ISOPOOH ','MACR ','MACROOH ','MPAN ', & + 'MVK ','N ','N2O ','N2O5 ','ncl_a1 ', & + 'ncl_a2 ','ncl_a3 ','NH3 ','NH4 ','NH_5 ', & + 'NH_50 ','NO ','NO2 ','NO3 ','NOA ', & + 'num_a1 ','num_a2 ','num_a3 ','num_a4 ','num_a5 ', & + 'O ','O2 ','O2_1D ','O2_1S ','O3 ', & + 'O3S ','OCLO ','OCS ','ONITR ','PAN ', & + 'pom_a1 ','pom_a4 ','POOH ','ROOH ','S ', & + 'SF6 ','SO ','SO2 ','SO3 ','so4_a1 ', & + 'so4_a2 ','so4_a3 ','so4_a5 ','soa_a1 ','soa_a2 ', & + 'SOAE ','SOAG ','ST80_25 ','TERP ','XOOH ', & + 'NDEP ','NHDEP ','C2H5O2 ','C3H7O2 ','CH3CO3 ', & + 'CH3O2 ','EO ','EO2 ','HO2 ','ISOPO2 ', & + 'MACRO2 ','MCO3 ','O1D ','OH ','PO2 ', & + 'RO2 ','XO2 ','H2O ' /) - adv_mass(:141) = (/ 12.011000_r8, 12.011000_r8, 72.143800_r8, 79.904000_r8, 115.356700_r8, & + adv_mass(:143) = (/ 12.011000_r8, 12.011000_r8, 72.143800_r8, 79.904000_r8, 115.356700_r8, & 95.903400_r8, 141.908940_r8, 99.716850_r8, 28.051600_r8, 46.065800_r8, & 62.065200_r8, 30.066400_r8, 42.077400_r8, 76.091000_r8, 44.092200_r8, & 153.821800_r8, 165.364506_r8, 148.910210_r8, 137.367503_r8, 187.375310_r8, & @@ -78,25 +78,25 @@ subroutine set_sim_dat 62.132400_r8, 135.064039_r8, 135.064039_r8, 135.064039_r8, 28.010400_r8, & 78.064600_r8, 60.050400_r8, 58.035600_r8, 1.007400_r8, 2.014800_r8, & 259.823613_r8, 34.013600_r8, 98.078400_r8, 80.911400_r8, 116.948003_r8, & - 100.493706_r8, 86.467906_r8, 36.460100_r8, 20.005803_r8, 63.012340_r8, & - 79.011740_r8, 96.910800_r8, 52.459500_r8, 74.076200_r8, 100.113000_r8, & - 68.114200_r8, 162.117940_r8, 118.127200_r8, 70.087800_r8, 120.100800_r8, & - 147.084740_r8, 70.087800_r8, 14.006740_r8, 44.012880_r8, 108.010480_r8, & - 58.442468_r8, 58.442468_r8, 58.442468_r8, 17.028940_r8, 18.036340_r8, & - 28.010400_r8, 28.010400_r8, 30.006140_r8, 46.005540_r8, 62.004940_r8, & - 119.074340_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, & - 1.007400_r8, 15.999400_r8, 47.998200_r8, 47.998200_r8, 67.451500_r8, & - 60.076400_r8, 133.100140_r8, 121.047940_r8, 12.011000_r8, 12.011000_r8, & - 92.090400_r8, 90.075600_r8, 32.066000_r8, 146.056419_r8, 48.065400_r8, & - 64.064800_r8, 80.064200_r8, 115.107340_r8, 115.107340_r8, 115.107340_r8, & - 115.107340_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 28.010400_r8, 136.228400_r8, 150.126000_r8, 14.006740_r8, 14.006740_r8, & - 61.057800_r8, 75.083600_r8, 75.042400_r8, 47.032000_r8, 61.057800_r8, & - 77.057200_r8, 33.006200_r8, 117.119800_r8, 119.093400_r8, 101.079200_r8, & - 15.999400_r8, 17.006800_r8, 91.083000_r8, 89.068200_r8, 149.118600_r8, & - 18.014200_r8 /) + 100.493706_r8, 86.467906_r8, 36.460100_r8, 63.012340_r8, 79.011740_r8, & + 96.910800_r8, 52.459500_r8, 74.076200_r8, 100.113000_r8, 68.114200_r8, & + 162.117940_r8, 118.127200_r8, 70.087800_r8, 120.100800_r8, 147.084740_r8, & + 70.087800_r8, 14.006740_r8, 44.012880_r8, 108.010480_r8, 58.442468_r8, & + 58.442468_r8, 58.442468_r8, 17.028940_r8, 18.036340_r8, 28.010400_r8, & + 28.010400_r8, 30.006140_r8, 46.005540_r8, 62.004940_r8, 119.074340_r8, & + 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, & + 15.999400_r8, 31.998800_r8, 31.998800_r8, 31.998800_r8, 47.998200_r8, & + 47.998200_r8, 67.451500_r8, 60.076400_r8, 133.100140_r8, 121.047940_r8, & + 12.011000_r8, 12.011000_r8, 92.090400_r8, 90.075600_r8, 32.066000_r8, & + 146.056419_r8, 48.065400_r8, 64.064800_r8, 80.064200_r8, 115.107340_r8, & + 115.107340_r8, 115.107340_r8, 115.107340_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 28.010400_r8, 136.228400_r8, 150.126000_r8, & + 14.006740_r8, 14.006740_r8, 61.057800_r8, 75.083600_r8, 75.042400_r8, & + 47.032000_r8, 61.057800_r8, 77.057200_r8, 33.006200_r8, 117.119800_r8, & + 119.093400_r8, 101.079200_r8, 15.999400_r8, 17.006800_r8, 91.083000_r8, & + 89.068200_r8, 149.118600_r8, 18.014200_r8 /) - crb_mass(:141) = (/ 12.011000_r8, 12.011000_r8, 60.055000_r8, 0.000000_r8, 0.000000_r8, & + crb_mass(:143) = (/ 12.011000_r8, 12.011000_r8, 60.055000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, & 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 36.033000_r8, & 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 24.022000_r8, & @@ -109,27 +109,27 @@ subroutine set_sim_dat 24.022000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, & 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 24.022000_r8, & 24.022000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, 60.055000_r8, & - 60.055000_r8, 60.055000_r8, 60.055000_r8, 48.044000_r8, 48.044000_r8, & - 48.044000_r8, 48.044000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 36.033000_r8, 60.055000_r8, 60.055000_r8, & + 60.055000_r8, 60.055000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, & + 48.044000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 36.033000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 12.011000_r8, 48.044000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, & - 36.033000_r8, 36.033000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 12.011000_r8, 48.044000_r8, 24.022000_r8, & + 12.011000_r8, 12.011000_r8, 36.033000_r8, 36.033000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 120.110000_r8, 60.055000_r8, 0.000000_r8, 0.000000_r8, & - 24.022000_r8, 36.033000_r8, 24.022000_r8, 12.011000_r8, 24.022000_r8, & - 24.022000_r8, 0.000000_r8, 60.055000_r8, 48.044000_r8, 48.044000_r8, & - 0.000000_r8, 0.000000_r8, 36.033000_r8, 36.033000_r8, 60.055000_r8, & - 0.000000_r8 /) + 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 120.110000_r8, 60.055000_r8, & + 0.000000_r8, 0.000000_r8, 24.022000_r8, 36.033000_r8, 24.022000_r8, & + 12.011000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, 60.055000_r8, & + 48.044000_r8, 48.044000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, & + 36.033000_r8, 60.055000_r8, 0.000000_r8 /) - fix_mass(: 3) = (/ 0.00000000_r8, 31.9988000_r8, 28.0134800_r8 /) + fix_mass(: 2) = (/ 0.00000000_r8, 28.0134800_r8 /) - clsmap(: 2,1) = (/ 124, 125 /) - clsmap(:139,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + clsmap(: 2,1) = (/ 126, 127 /) + clsmap(:141,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & @@ -141,46 +141,51 @@ subroutine set_sim_dat 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, & 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, & 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, & - 121, 122, 123, 126, 127, 128, 129, 130, 131, 132, & - 133, 134, 135, 136, 137, 138, 139, 140, 141 /) + 121, 122, 123, 124, 125, 128, 129, 130, 131, 132, & + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, & + 143 /) - permute(:139,4) = (/ 1, 2, 35, 126, 56, 131, 83, 3, 76, 57, & - 64, 61, 112, 71, 45, 38, 46, 39, 40, 41, & - 42, 43, 44, 77, 125, 86, 47, 113, 68, 95, & - 116, 89, 87, 80, 73, 107, 70, 128, 50, 34, & - 137, 104, 4, 110, 90, 62, 5, 6, 7, 8, & - 48, 105, 92, 124, 111, 36, 84, 49, 100, 51, & - 52, 55, 127, 9, 101, 69, 94, 99, 109, 66, & - 103, 97, 79, 114, 63, 85, 122, 75, 53, 60, & - 10, 11, 12, 37, 13, 14, 15, 138, 133, 136, & - 72, 16, 17, 18, 19, 20, 129, 132, 21, 65, & - 67, 106, 81, 22, 23, 82, 74, 78, 24, 117, & - 102, 58, 25, 26, 27, 28, 29, 30, 31, 32, & - 33, 88, 54, 96, 98, 121, 123, 59, 91, 130, & - 118, 119, 120, 134, 135, 93, 108, 115, 139 /) + permute(:141,4) = (/ 1, 2, 34, 134, 56, 139, 78, 3, 75, 58, & + 64, 61, 112, 69, 44, 37, 45, 38, 39, 40, & + 41, 42, 43, 77, 126, 86, 46, 111, 68, 93, & + 117, 89, 85, 79, 72, 109, 71, 131, 49, 33, & + 128, 103, 4, 115, 104, 62, 5, 6, 7, 8, & + 47, 113, 91, 125, 108, 35, 83, 48, 99, 52, & + 53, 55, 130, 100, 76, 92, 98, 110, 66, 102, & + 95, 80, 114, 63, 84, 123, 88, 57, 60, 9, & + 10, 11, 36, 12, 13, 14, 127, 129, 135, 70, & + 15, 16, 17, 18, 19, 138, 140, 50, 51, 133, & + 20, 65, 67, 106, 81, 21, 22, 82, 73, 90, & + 23, 122, 105, 59, 24, 25, 26, 27, 28, 29, & + 30, 31, 32, 87, 54, 97, 101, 121, 124, 74, & + 94, 132, 118, 119, 120, 136, 137, 96, 107, 116, & + 141 /) - diag_map(:139) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, & - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, & - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, & - 32, 34, 35, 36, 39, 42, 45, 48, 51, 54, & - 57, 60, 63, 66, 69, 73, 77, 81, 84, 87, & - 89, 93, 97, 100, 103, 108, 111, 116, 120, 124, & + diag_map(:141) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & + 32, 33, 34, 37, 40, 43, 46, 49, 52, 55, & + 58, 61, 64, 67, 71, 75, 79, 82, 85, 87, & + 90, 92, 96, 100, 103, 108, 111, 115, 120, 124, & 130, 136, 142, 147, 152, 157, 160, 168, 176, 182, & - 188, 194, 200, 206, 213, 220, 227, 234, 240, 248, & - 252, 260, 268, 276, 283, 292, 301, 308, 318, 323, & - 328, 336, 342, 352, 360, 369, 377, 389, 401, 408, & - 416, 422, 429, 448, 459, 467, 477, 492, 503, 510, & - 514, 530, 550, 560, 578, 591, 602, 626, 649, 668, & - 695, 715, 753, 769, 783, 800, 820, 856, 886, 943, & - 966,1011,1048,1086,1172,1217,1243,1286,1307 /) + 188, 194, 200, 206, 211, 218, 225, 232, 240, 244, & + 252, 260, 268, 275, 284, 291, 300, 311, 319, 324, & + 331, 337, 345, 353, 361, 372, 385, 395, 402, 410, & + 417, 430, 449, 460, 465, 473, 484, 495, 505, 518, & + 525, 541, 562, 569, 581, 593, 607, 628, 652, 672, & + 700, 716, 738, 777, 794, 809, 851, 878, 916, 938, & + 976,1034,1081,1099,1146,1186,1273,1306,1330,1357, & + 1379 /) - extfrc_lst(: 9) = (/ 'NO2 ','so4_a2 ','SO2 ','so4_a1 ','num_a2 ', & - 'num_a1 ','bc_a4 ','num_a4 ','NO ' /) + extfrc_lst(: 11) = (/ 'H2O ','CO ','bc_a4 ','NO2 ','num_a1 ', & + 'num_a2 ','num_a4 ','SO2 ','so4_a1 ','so4_a2 ', & + 'NO ' /) - frc_from_dataset(: 9) = (/ .true., .true., .true., .true., .true., & - .true., .true., .true., .false. /) + frc_from_dataset(: 11) = (/ .true., .true., .true., .true., .true., & + .true., .true., .true., .true., .true., & + .false. /) - inv_lst(: 3) = (/ 'M ', 'O2 ', 'N2 ' /) + inv_lst(: 2) = (/ 'M ', 'N2 ' /) slvd_lst(: 15) = (/ 'C2H5O2 ', 'C3H7O2 ', 'CH3CO3 ', 'CH3O2 ', 'EO ', & 'EO2 ', 'HO2 ', 'ISOPO2 ', 'MACRO2 ', 'MCO3 ', & @@ -238,16 +243,21 @@ subroutine set_sim_dat 'jclono2_a ', 'jh2402 ', & 'jhbr ', 'jhcfc141b ', & 'jhcfc142b ', 'jhcfc22 ', & - 'jhcl ', 'jhf ', & - 'jhobr ', 'jhocl ', & - 'joclo ', 'jsf6 ', & - 'jh2so4 ', 'jocs ', & - 'jso ', 'jso2 ', & - 'jso3 ', 'jsoa_a1 ', & - 'jsoa_a2 ', 'O1D_H2 ', & - 'O1D_H2O ', 'O1D_N2 ', & - 'O1D_O2ab ', 'O1D_O3 ', & - 'O1D_O3a ', 'O_O3 ', & + 'jhcl ', 'jhobr ', & + 'jhocl ', 'joclo ', & + 'jsf6 ', 'jh2so4 ', & + 'jocs ', 'jso ', & + 'jso2 ', 'jso3 ', & + 'jsoa_a1 ', 'jsoa_a2 ', & + 'ag1 ', 'ag2 ', & + 'O1D_H2 ', 'O1D_H2O ', & + 'O1D_N2 ', 'O1D_O2 ', & + 'O1D_O2b ', 'O1D_O3 ', & + 'O1D_O3a ', 'O2_1D_N2 ', & + 'O2_1D_O ', 'O2_1D_O2 ', & + 'O2_1S_CO2 ', 'O2_1S_N2 ', & + 'O2_1S_O ', 'O2_1S_O2 ', & + 'O2_1S_O3 ', 'O_O3 ', & 'usr_O_O ', 'usr_O_O2 ', & 'H2_O ', 'H2O2_O ', & 'H_HO2 ', 'H_HO2a ', & @@ -296,13 +306,13 @@ subroutine set_sim_dat 'BRONO2_O ', 'BRO_O ', & 'BRO_OH ', 'HBR_O ', & 'HBR_OH ', 'HOBR_O ', & - 'O1D_CF3BR ', 'O1D_CHBR3 ', & - 'O1D_H2402 ', 'O1D_HBRa ', & + 'O1D_CF3BR ', 'O1D_CHBR3 ' /) + rxt_tag_lst( 201: 373) = (/ 'O1D_H2402 ', 'O1D_HBRa ', & 'O1D_HBRb ', 'CH2BR2_CL ', & 'CH2BR2_OH ', 'CH3BR_CL ', & 'CH3BR_OH ', 'CH3CCL3_OH ', & - 'CH3CL_CL ', 'CH3CL_OH ' /) - rxt_tag_lst( 201: 363) = (/ 'CHBR3_CL ', 'CHBR3_OH ', & + 'CH3CL_CL ', 'CH3CL_OH ', & + 'CHBR3_CL ', 'CHBR3_OH ', & 'HCFC141B_OH ', 'HCFC142B_OH ', & 'HCFC22_OH ', 'O1D_CH2BR2 ', & 'O1D_CH3BR ', 'O1D_HCFC141B ', & @@ -420,7 +430,8 @@ subroutine set_sim_dat 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, & 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, & 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, & - 361, 362, 363 /) + 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, & + 371, 372, 373 /) if( allocated( pht_alias_lst ) ) then deallocate( pht_alias_lst ) end if @@ -457,8 +468,7 @@ subroutine set_sim_dat ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & - ' ', ' ', ' ', ' ', & - ' ' /) + ' ', ' ', ' ', ' ' /) pht_alias_lst(:,2) = (/ ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & @@ -479,8 +489,7 @@ subroutine set_sim_dat ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & ' ', ' ', ' ', ' ', & - ' ', ' ', ' ', 'jno2 ', & - 'jno2 ' /) + ' ', ' ', 'jno2 ', 'jno2 ' /) pht_alias_mult(:,1) = (/ 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & @@ -497,7 +506,7 @@ subroutine set_sim_dat 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & - 1._r8, 1._r8, 1._r8, 1._r8, 1._r8 /) + 1._r8, 1._r8, 1._r8, 1._r8 /) pht_alias_mult(:,2) = (/ 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & @@ -514,7 +523,7 @@ subroutine set_sim_dat 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & 1._r8, 1._r8, 1._r8, 1._r8, 1._r8, & - 1._r8, 1._r8, 1._r8, .0004_r8, .0004_r8 /) + 1._r8, 1._r8, .0004_r8, .0004_r8 /) allocate( cph_enthalpy(enthalpy_cnt),stat=ios ) if( ios /= 0 ) then write(iulog,*) 'set_sim_dat: failed to allocate cph_enthalpy; error = ',ios @@ -525,47 +534,52 @@ subroutine set_sim_dat write(iulog,*) 'set_sim_dat: failed to allocate cph_rid; error = ',ios call endrun end if - cph_rid(:) = (/ 88, 92, 93, 94, 97, & - 100, 101, 102, 103, 106, & - 107, 108, 111, 113, 117, & - 118, 126, 127 /) - cph_enthalpy(:) = (/ 189.810000_r8, 392.190000_r8, 493.580000_r8, 101.390000_r8, 232.590000_r8, & - 203.400000_r8, 226.580000_r8, 120.100000_r8, 194.710000_r8, 293.620000_r8, & - 67.670000_r8, 165.300000_r8, 165.510000_r8, 313.750000_r8, 133.750000_r8, & - 193.020000_r8, 34.470000_r8, 199.170000_r8 /) + cph_rid(:) = (/ 89, 90, 91, 94, 95, & + 96, 98, 99, 100, 101, & + 102, 103, 104, 107, 110, & + 111, 112, 113, 116, 117, & + 118, 121, 123, 127, 128, & + 136, 137 /) + cph_enthalpy(:) = (/ 189.810000_r8, 32.910000_r8, 189.810000_r8, 94.300000_r8, 94.300000_r8, & + 94.300000_r8, 62.600000_r8, 62.600000_r8, 62.600000_r8, 62.600000_r8, & + 392.190000_r8, 493.580000_r8, 101.390000_r8, 232.590000_r8, 203.400000_r8, & + 226.580000_r8, 120.100000_r8, 194.710000_r8, 293.620000_r8, 67.670000_r8, & + 165.300000_r8, 165.510000_r8, 313.750000_r8, 133.750000_r8, 193.020000_r8, & + 34.470000_r8, 199.170000_r8 /) allocate( num_rnts(rxntot-phtcnt),stat=ios ) if( ios /= 0 ) then write(iulog,*) 'set_sim_dat: failed to allocate num_rnts; error = ',ios call endrun end if - num_rnts(:) = (/ 2, 2, 2, 2, 2, 2, 2, 3, 3, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, & - 2, 2, 3, 2, 2, 3, 3, 3, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + num_rnts(:) = (/ 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, & 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 2, 2, 2, 3, 2, 2, 3, 3, 3, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, & - 2, 2, 2, 2, 3, 3, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, & + 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, & + 1, 2, 2, 2, 2, 3, 3, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, & + 2, 2, 2, 3, 2, 2, 3, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & + 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, & 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, & - 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, & - 1, 1, 1, 2, 2, 2, 1, 1, 2, 2, & - 2, 1, 1, 2, 1, 1, 1, 1 /) + 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, & + 1, 1, 1, 1, 2, 2, 2, 1, 1, 2, & + 2, 2, 1, 1, 2, 1, 1, 1, 1 /) end subroutine set_sim_dat diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.doc b/src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.doc deleted file mode 100644 index 56b6bbe782..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/chem_mech.doc +++ /dev/null @@ -1,1126 +0,0 @@ - - - Solution species - ( 1) bc_a1 (C) - ( 2) bc_a4 (C) - ( 3) BIGALK (C5H12) - ( 4) BR (Br) - ( 5) BRCL (BrCl) - ( 6) BRO (BrO) - ( 7) BRONO2 (BrONO2) - ( 8) BRY - ( 9) C2H4 - ( 10) C2H5OH - ( 11) C2H5OOH - ( 12) C2H6 - ( 13) C3H6 - ( 14) C3H7OOH - ( 15) C3H8 - ( 16) CCL4 (CCl4) - ( 17) CF2CLBR (CF2ClBr) - ( 18) CF3BR (CF3Br) - ( 19) CFC11 (CFCl3) - ( 20) CFC113 (CCl2FCClF2) - ( 21) CFC114 (CClF2CClF2) - ( 22) CFC115 (CClF2CF3) - ( 23) CFC12 (CF2Cl2) - ( 24) CH2BR2 (CH2Br2) - ( 25) CH2O - ( 26) CH3BR (CH3Br) - ( 27) CH3CCL3 (CH3CCl3) - ( 28) CH3CHO - ( 29) CH3CL (CH3Cl) - ( 30) CH3COCH3 - ( 31) CH3COCHO - ( 32) CH3COOH - ( 33) CH3COOOH - ( 34) CH3OH - ( 35) CH3OOH - ( 36) CH4 - ( 37) CHBR3 (CHBr3) - ( 38) CL (Cl) - ( 39) CL2 (Cl2) - ( 40) CL2O2 (Cl2O2) - ( 41) CLO (ClO) - ( 42) CLONO2 (ClONO2) - ( 43) CLY - ( 44) CO - ( 45) CO2 - ( 46) DMS (CH3SCH3) - ( 47) dst_a1 (AlSiO5) - ( 48) dst_a2 (AlSiO5) - ( 49) dst_a3 (AlSiO5) - ( 50) E90 (CO) - ( 51) EOOH (HOCH2CH2OOH) - ( 52) GLYALD (HOCH2CHO) - ( 53) GLYOXAL (C2H2O2) - ( 54) H - ( 55) H2 - ( 56) H2402 (CBrF2CBrF2) - ( 57) H2O2 - ( 58) H2SO4 (H2SO4) - ( 59) HBR (HBr) - ( 60) HCFC141B (CH3CCl2F) - ( 61) HCFC142B (CH3CClF2) - ( 62) HCFC22 (CHF2Cl) - ( 63) HCL (HCl) - ( 64) HF - ( 65) HNO3 - ( 66) HO2NO2 - ( 67) HOBR (HOBr) - ( 68) HOCL (HOCl) - ( 69) HYAC (CH3COCH2OH) - ( 70) HYDRALD (HOCH2CCH3CHCHO) - ( 71) ISOP (C5H8) - ( 72) ISOPNO3 (CH2CHCCH3OOCH2ONO2) - ( 73) ISOPOOH (HOCH2COOHCH3CHCH2) - ( 74) MACR (CH2CCH3CHO) - ( 75) MACROOH (CH3COCHOOHCH2OH) - ( 76) MPAN (CH2CCH3CO3NO2) - ( 77) MVK (CH2CHCOCH3) - ( 78) N - ( 79) N2O - ( 80) N2O5 - ( 81) ncl_a1 (NaCl) - ( 82) ncl_a2 (NaCl) - ( 83) ncl_a3 (NaCl) - ( 84) NH3 - ( 85) NH4 - ( 86) NH_5 (CO) - ( 87) NH_50 (CO) - ( 88) NO - ( 89) NO2 - ( 90) NO3 - ( 91) NOA (CH3COCH2ONO2) - ( 92) num_a1 (H) - ( 93) num_a2 (H) - ( 94) num_a3 (H) - ( 95) num_a4 (H) - ( 96) num_a5 (H) - ( 97) O - ( 98) O3 - ( 99) O3S (O3) - (100) OCLO (OClO) - (101) OCS (OCS) - (102) ONITR (C4H7NO4) - (103) PAN (CH3CO3NO2) - (104) pom_a1 (C) - (105) pom_a4 (C) - (106) POOH (C3H6OHOOH) - (107) ROOH (CH3COCH2OOH) - (108) S (S) - (109) SF6 - (110) SO (SO) - (111) SO2 - (112) SO3 (SO3) - (113) so4_a1 (NH4HSO4) - (114) so4_a2 (NH4HSO4) - (115) so4_a3 (NH4HSO4) - (116) so4_a5 (NH4HSO4) - (117) soa_a1 (C) - (118) soa_a2 (C) - (119) SOAE (C) - (120) SOAG (C) - (121) ST80_25 (CO) - (122) TERP (C10H16) - (123) XOOH (HOCH2COOHCH3CHOHCHO) - (124) NHDEP (N) - (125) NDEP (N) - (126) C2H5O2 - (127) C3H7O2 - (128) CH3CO3 - (129) CH3O2 - (130) EO (HOCH2CH2O) - (131) EO2 (HOCH2CH2O2) - (132) HO2 - (133) ISOPO2 (HOCH2COOCH3CHCH2) - (134) MACRO2 (CH3COCHO2CH2OH) - (135) MCO3 (CH2CCH3CO3) - (136) O1D (O) - (137) OH - (138) PO2 (C3H6OHO2) - (139) RO2 (CH3COCH2O2) - (140) XO2 (HOCH2COOCH3CHOHCHO) - (141) H2O - - - Invariant species - ( 1) M - ( 2) O2 - ( 3) N2 - - - Column integrals - ( 1) O3 - 0.000E+00 - ( 2) O2 - 0.000E+00 - -Class List -========== - Explicit - -------- - ( 1) NHDEP - ( 2) NDEP - - Implicit - -------- - ( 1) bc_a1 - ( 2) bc_a4 - ( 3) BIGALK - ( 4) BR - ( 5) BRCL - ( 6) BRO - ( 7) BRONO2 - ( 8) BRY - ( 9) C2H4 - ( 10) C2H5OH - ( 11) C2H5OOH - ( 12) C2H6 - ( 13) C3H6 - ( 14) C3H7OOH - ( 15) C3H8 - ( 16) CCL4 - ( 17) CF2CLBR - ( 18) CF3BR - ( 19) CFC11 - ( 20) CFC113 - ( 21) CFC114 - ( 22) CFC115 - ( 23) CFC12 - ( 24) CH2BR2 - ( 25) CH2O - ( 26) CH3BR - ( 27) CH3CCL3 - ( 28) CH3CHO - ( 29) CH3CL - ( 30) CH3COCH3 - ( 31) CH3COCHO - ( 32) CH3COOH - ( 33) CH3COOOH - ( 34) CH3OH - ( 35) CH3OOH - ( 36) CH4 - ( 37) CHBR3 - ( 38) CL - ( 39) CL2 - ( 40) CL2O2 - ( 41) CLO - ( 42) CLONO2 - ( 43) CLY - ( 44) CO - ( 45) CO2 - ( 46) DMS - ( 47) dst_a1 - ( 48) dst_a2 - ( 49) dst_a3 - ( 50) E90 - ( 51) EOOH - ( 52) GLYALD - ( 53) GLYOXAL - ( 54) H - ( 55) H2 - ( 56) H2402 - ( 57) H2O2 - ( 58) H2SO4 - ( 59) HBR - ( 60) HCFC141B - ( 61) HCFC142B - ( 62) HCFC22 - ( 63) HCL - ( 64) HF - ( 65) HNO3 - ( 66) HO2NO2 - ( 67) HOBR - ( 68) HOCL - ( 69) HYAC - ( 70) HYDRALD - ( 71) ISOP - ( 72) ISOPNO3 - ( 73) ISOPOOH - ( 74) MACR - ( 75) MACROOH - ( 76) MPAN - ( 77) MVK - ( 78) N - ( 79) N2O - ( 80) N2O5 - ( 81) ncl_a1 - ( 82) ncl_a2 - ( 83) ncl_a3 - ( 84) NH3 - ( 85) NH4 - ( 86) NH_5 - ( 87) NH_50 - ( 88) NO - ( 89) NO2 - ( 90) NO3 - ( 91) NOA - ( 92) num_a1 - ( 93) num_a2 - ( 94) num_a3 - ( 95) num_a4 - ( 96) num_a5 - ( 97) O - ( 98) O3 - ( 99) O3S - (100) OCLO - (101) OCS - (102) ONITR - (103) PAN - (104) pom_a1 - (105) pom_a4 - (106) POOH - (107) ROOH - (108) S - (109) SF6 - (110) SO - (111) SO2 - (112) SO3 - (113) so4_a1 - (114) so4_a2 - (115) so4_a3 - (116) so4_a5 - (117) soa_a1 - (118) soa_a2 - (119) SOAE - (120) SOAG - (121) ST80_25 - (122) TERP - (123) XOOH - (124) C2H5O2 - (125) C3H7O2 - (126) CH3CO3 - (127) CH3O2 - (128) EO - (129) EO2 - (130) HO2 - (131) ISOPO2 - (132) MACRO2 - (133) MCO3 - (134) O1D - (135) OH - (136) PO2 - (137) RO2 - (138) XO2 - (139) H2O - - Photolysis - jh2o_b ( 1) H2O + hv -> H2 + O1D rate = ** User defined ** ( 1) - jh2o_a ( 2) H2O + hv -> OH + H rate = ** User defined ** ( 2) - jh2o_c ( 3) H2O + hv -> 2*H + O rate = ** User defined ** ( 3) - jh2o2 ( 4) H2O2 + hv -> 2*OH rate = ** User defined ** ( 4) - jo2_a ( 5) O2 + hv -> O + O1D rate = ** User defined ** ( 5) - jo2_b ( 6) O2 + hv -> 2*O rate = ** User defined ** ( 6) - jo3_a ( 7) O3 + hv -> O1D + O2 rate = ** User defined ** ( 7) - jo3_b ( 8) O3 + hv -> O + O2 rate = ** User defined ** ( 8) - jhno3 ( 9) HNO3 + hv -> NO2 + OH rate = ** User defined ** ( 9) - jho2no2_a ( 10) HO2NO2 + hv -> OH + NO3 rate = ** User defined ** ( 10) - jho2no2_b ( 11) HO2NO2 + hv -> NO2 + HO2 rate = ** User defined ** ( 11) - jn2o ( 12) N2O + hv -> O1D + N2 rate = ** User defined ** ( 12) - jn2o5_a ( 13) N2O5 + hv -> NO2 + NO3 rate = ** User defined ** ( 13) - jn2o5_b ( 14) N2O5 + hv -> NO + O + NO3 rate = ** User defined ** ( 14) - jno ( 15) NO + hv -> N + O rate = ** User defined ** ( 15) - jno2 ( 16) NO2 + hv -> NO + O rate = ** User defined ** ( 16) - jno3_b ( 17) NO3 + hv -> NO + O2 rate = ** User defined ** ( 17) - jno3_a ( 18) NO3 + hv -> NO2 + O rate = ** User defined ** ( 18) - jc2h5ooh ( 19) C2H5OOH + hv -> CH3CHO + HO2 + OH rate = ** User defined ** ( 19) - jc3h7ooh ( 20) C3H7OOH + hv -> 0.82*CH3COCH3 + OH + HO2 rate = ** User defined ** ( 20) - jch2o_a ( 21) CH2O + hv -> CO + 2*H rate = ** User defined ** ( 21) - jch2o_b ( 22) CH2O + hv -> CO + H2 rate = ** User defined ** ( 22) - jch3cho ( 23) CH3CHO + hv -> CH3O2 + CO + HO2 rate = ** User defined ** ( 23) - jacet ( 24) CH3COCH3 + hv -> CH3CO3 + CH3O2 rate = ** User defined ** ( 24) - jmgly ( 25) CH3COCHO + hv -> CH3CO3 + CO + HO2 rate = ** User defined ** ( 25) - jch3co3h ( 26) CH3COOOH + hv -> CH3O2 + OH + CO2 rate = ** User defined ** ( 26) - jch3ooh ( 27) CH3OOH + hv -> CH2O + H + OH rate = ** User defined ** ( 27) - jch4_b ( 28) CH4 + hv -> 1.44*H2 + 0.18*CH2O + 0.18*O + 0.33*OH + 0.33*H rate = ** User defined ** ( 28) - + 0.44*CO2 + 0.38*CO + 0.05*H2O - jch4_a ( 29) CH4 + hv -> H + CH3O2 rate = ** User defined ** ( 29) - jco2 ( 30) CO2 + hv -> CO + O rate = ** User defined ** ( 30) - jeooh ( 31) EOOH + hv -> EO + OH rate = ** User defined ** ( 31) - jglyald ( 32) GLYALD + hv -> 2*HO2 + CO + CH2O rate = ** User defined ** ( 32) - jglyoxal ( 33) GLYOXAL + hv -> 2*CO + 2*HO2 rate = ** User defined ** ( 33) - jhyac ( 34) HYAC + hv -> CH3CO3 + HO2 + CH2O rate = ** User defined ** ( 34) - jisopooh ( 35) ISOPOOH + hv -> 0.402*MVK + 0.288*MACR + 0.69*CH2O + HO2 rate = ** User defined ** ( 35) - jmacr_a ( 36) MACR + hv -> 1.34*HO2 + 0.66*MCO3 + 1.34*CH2O + 1.34*CH3CO3 rate = ** User defined ** ( 36) - jmacr_b ( 37) MACR + hv -> 0.66*HO2 + 1.34*CO rate = ** User defined ** ( 37) - jmpan ( 38) MPAN + hv -> MCO3 + NO2 rate = ** User defined ** ( 38) - jmvk ( 39) MVK + hv -> 0.7*C3H6 + 0.7*CO + 0.3*CH3O2 + 0.3*CH3CO3 rate = ** User defined ** ( 39) - jnoa ( 40) NOA + hv -> NO2 + CH2O + CH3CO3 rate = ** User defined ** ( 40) - jonitr ( 41) ONITR + hv -> HO2 + CO + NO2 + CH2O rate = ** User defined ** ( 41) - jpan ( 42) PAN + hv -> 0.6*CH3CO3 + 0.6*NO2 + 0.4*CH3O2 + 0.4*NO3 + 0.4*CO2 rate = ** User defined ** ( 42) - jpooh ( 43) POOH + hv -> CH3CHO + CH2O + HO2 + OH rate = ** User defined ** ( 43) - jrooh ( 44) ROOH + hv -> CH3CO3 + CH2O + OH rate = ** User defined ** ( 44) - jxooh ( 45) XOOH + hv -> OH rate = ** User defined ** ( 45) - jbrcl ( 46) BRCL + hv -> BR + CL rate = ** User defined ** ( 46) - jbro ( 47) BRO + hv -> BR + O rate = ** User defined ** ( 47) - jbrono2_b ( 48) BRONO2 + hv -> BRO + NO2 rate = ** User defined ** ( 48) - jbrono2_a ( 49) BRONO2 + hv -> BR + NO3 rate = ** User defined ** ( 49) - jccl4 ( 50) CCL4 + hv -> 4*CL rate = ** User defined ** ( 50) - jcf2clbr ( 51) CF2CLBR + hv -> BR + CL + {COF2} rate = ** User defined ** ( 51) - jcf3br ( 52) CF3BR + hv -> BR + {F} + {COF2} rate = ** User defined ** ( 52) - jcfcl3 ( 53) CFC11 + hv -> 3*CL rate = ** User defined ** ( 53) - jcfc113 ( 54) CFC113 + hv -> 3*CL rate = ** User defined ** ( 54) - jcfc114 ( 55) CFC114 + hv -> 2*CL + 2*{COF2} rate = ** User defined ** ( 55) - jcfc115 ( 56) CFC115 + hv -> CL + {F} + 2*{COF2} rate = ** User defined ** ( 56) - jcf2cl2 ( 57) CFC12 + hv -> 2*CL + {COF2} rate = ** User defined ** ( 57) - jch2br2 ( 58) CH2BR2 + hv -> 2*BR rate = ** User defined ** ( 58) - jch3br ( 59) CH3BR + hv -> BR + CH3O2 rate = ** User defined ** ( 59) - jch3ccl3 ( 60) CH3CCL3 + hv -> 3*CL rate = ** User defined ** ( 60) - jch3cl ( 61) CH3CL + hv -> CL + CH3O2 rate = ** User defined ** ( 61) - jchbr3 ( 62) CHBR3 + hv -> 3*BR rate = ** User defined ** ( 62) - jcl2 ( 63) CL2 + hv -> 2*CL rate = ** User defined ** ( 63) - jcl2o2 ( 64) CL2O2 + hv -> 2*CL rate = ** User defined ** ( 64) - jclo ( 65) CLO + hv -> CL + O rate = ** User defined ** ( 65) - jclono2_b ( 66) CLONO2 + hv -> CLO + NO2 rate = ** User defined ** ( 66) - jclono2_a ( 67) CLONO2 + hv -> CL + NO3 rate = ** User defined ** ( 67) - jh2402 ( 68) H2402 + hv -> 2*BR + 2*{COF2} rate = ** User defined ** ( 68) - jhbr ( 69) HBR + hv -> BR + H rate = ** User defined ** ( 69) - jhcfc141b ( 70) HCFC141B + hv -> CL + {COFCL} rate = ** User defined ** ( 70) - jhcfc142b ( 71) HCFC142B + hv -> CL + {COF2} rate = ** User defined ** ( 71) - jhcfc22 ( 72) HCFC22 + hv -> CL + {COF2} rate = ** User defined ** ( 72) - jhcl ( 73) HCL + hv -> H + CL rate = ** User defined ** ( 73) - jhf ( 74) HF + hv -> H + {F} rate = ** User defined ** ( 74) - jhobr ( 75) HOBR + hv -> BR + OH rate = ** User defined ** ( 75) - jhocl ( 76) HOCL + hv -> OH + CL rate = ** User defined ** ( 76) - joclo ( 77) OCLO + hv -> O + CLO rate = ** User defined ** ( 77) - jsf6 ( 78) SF6 + hv -> {sink} rate = ** User defined ** ( 78) - jh2so4 ( 79) H2SO4 + hv -> SO3 + H2O rate = ** User defined ** ( 79) - jocs ( 80) OCS + hv -> S + CO rate = ** User defined ** ( 80) - jso ( 81) SO + hv -> S + O rate = ** User defined ** ( 81) - jso2 ( 82) SO2 + hv -> SO + O rate = ** User defined ** ( 82) - jso3 ( 83) SO3 + hv -> SO2 + O rate = ** User defined ** ( 83) - jsoa_a1 ( 84) soa_a1 + hv -> (No products) rate = ** User defined ** ( 84) - jsoa_a2 ( 85) soa_a2 + hv -> (No products) rate = ** User defined ** ( 85) - - Reactions - O1D_H2 ( 1) O1D + H2 -> H + OH rate = 1.20E-10 ( 86) - O1D_H2O ( 2) O1D + H2O -> 2*OH rate = 1.63E-10*exp( 60./t) ( 87) - O1D_N2 ( 3) O1D + N2 -> O + N2 rate = 2.15E-11*exp( 110./t) ( 88) - O1D_O2ab ( 4) O1D + O2 -> O + O2 rate = 3.30E-11*exp( 55./t) ( 89) - O1D_O3 ( 5) O1D + O3 -> O2 + O2 rate = 1.20E-10 ( 90) - O1D_O3a ( 6) O1D + O3 -> O2 + 2*O rate = 1.20E-10 ( 91) - O_O3 ( 7) O + O3 -> 2*O2 rate = 8.00E-12*exp( -2060./t) ( 92) - usr_O_O ( 8) O + O + M -> O2 + M rate = ** User defined ** ( 93) - usr_O_O2 ( 9) O + O2 + M -> O3 + M rate = ** User defined ** ( 94) - H2_O ( 10) H2 + O -> OH + H rate = 1.60E-11*exp( -4570./t) ( 95) - H2O2_O ( 11) H2O2 + O -> OH + HO2 rate = 1.40E-12*exp( -2000./t) ( 96) - H_HO2 ( 12) H + HO2 -> H2 + O2 rate = 6.90E-12 ( 97) - H_HO2a ( 13) H + HO2 -> 2*OH rate = 7.20E-11 ( 98) - H_HO2b ( 14) H + HO2 -> H2O + O rate = 1.60E-12 ( 99) - H_O2 ( 15) H + O2 + M -> HO2 + M troe : ko=5.30E-32*(300/t)**1.80 (100) - ki=9.50E-11*(300/t)**-0.40 - f=0.60 - HO2_O ( 16) HO2 + O -> OH + O2 rate = 3.00E-11*exp( 200./t) (101) - HO2_O3 ( 17) HO2 + O3 -> OH + 2*O2 rate = 1.00E-14*exp( -490./t) (102) - H_O3 ( 18) H + O3 -> OH + O2 rate = 1.40E-10*exp( -470./t) (103) - OH_H2 ( 19) OH + H2 -> H2O + H rate = 2.80E-12*exp( -1800./t) (104) - OH_H2O2 ( 20) OH + H2O2 -> H2O + HO2 rate = 1.80E-12 (105) - OH_HO2 ( 21) OH + HO2 -> H2O + O2 rate = 4.80E-11*exp( 250./t) (106) - OH_O ( 22) OH + O -> H + O2 rate = 1.80E-11*exp( 180./t) (107) - OH_O3 ( 23) OH + O3 -> HO2 + O2 rate = 1.70E-12*exp( -940./t) (108) - OH_OH ( 24) OH + OH -> H2O + O rate = 1.80E-12 (109) - OH_OH_M ( 25) OH + OH + M -> H2O2 + M troe : ko=6.90E-31*(300/t)**1.00 (110) - ki=2.60E-11 - f=0.60 - usr_HO2_HO2 ( 26) HO2 + HO2 -> H2O2 + O2 rate = ** User defined ** (111) - HO2NO2_OH ( 27) HO2NO2 + OH -> H2O + NO2 + O2 rate = 4.50E-13*exp( 610./t) (112) - N_NO ( 28) N + NO -> N2 + O rate = 2.10E-11*exp( 100./t) (113) - N_NO2a ( 29) N + NO2 -> N2O + O rate = 2.90E-12*exp( 220./t) (114) - N_NO2b ( 30) N + NO2 -> 2*NO rate = 1.45E-12*exp( 220./t) (115) - N_NO2c ( 31) N + NO2 -> N2 + O2 rate = 1.45E-12*exp( 220./t) (116) - N_O2 ( 32) N + O2 -> NO + O rate = 3.30E-12*exp( -3150./t) (117) - NO2_O ( 33) NO2 + O -> NO + O2 rate = 5.10E-12*exp( 210./t) (118) - NO2_O3 ( 34) NO2 + O3 -> NO3 + O2 rate = 1.20E-13*exp( -2450./t) (119) - NO2_O_M ( 35) NO2 + O + M -> NO3 + M troe : ko=2.50E-31*(300/t)**1.80 (120) - ki=2.20E-11*(300/t)**0.70 - f=0.60 - NO3_HO2 ( 36) NO3 + HO2 -> OH + NO2 + O2 rate = 3.50E-12 (121) - NO3_NO ( 37) NO3 + NO -> 2*NO2 rate = 1.70E-11*exp( 125./t) (122) - NO3_O ( 38) NO3 + O -> NO2 + O2 rate = 1.30E-11 (123) - NO3_OH ( 39) NO3 + OH -> HO2 + NO2 rate = 2.20E-11 (124) - N_OH ( 40) N + OH -> NO + H rate = 5.00E-11 (125) - NO_HO2 ( 41) NO + HO2 -> NO2 + OH rate = 3.44E-12*exp( 260./t) (126) - NO_O3 ( 42) NO + O3 -> NO2 + O2 rate = 3.00E-12*exp( -1500./t) (127) - NO_O_M ( 43) NO + O + M -> NO2 + M troe : ko=9.00E-32*(300/t)**1.50 (128) - ki=3.00E-11 - f=0.60 - O1D_N2Oa ( 44) O1D + N2O -> 2*NO rate = 7.26E-11*exp( 20./t) (129) - O1D_N2Ob ( 45) O1D + N2O -> N2 + O2 rate = 4.64E-11*exp( 20./t) (130) - tag_NO2_HO2 ( 46) NO2 + HO2 + M -> HO2NO2 + M troe : ko=1.90E-31*(300/t)**3.40 (131) - ki=4.00E-12*(300/t)**0.30 - f=0.60 - tag_NO2_NO3 ( 47) NO2 + NO3 + M -> N2O5 + M troe : ko=2.40E-30*(300/t)**3.00 (132) - ki=1.60E-12*(300/t)**-0.10 - f=0.60 - tag_NO2_OH ( 48) NO2 + OH + M -> HNO3 + M troe : ko=1.80E-30*(300/t)**3.00 (133) - ki=2.80E-11 - f=0.60 - usr_HNO3_OH ( 49) HNO3 + OH -> NO3 + H2O rate = ** User defined ** (134) - usr_HO2NO2_M ( 50) HO2NO2 + M -> HO2 + NO2 + M rate = ** User defined ** (135) - usr_N2O5_M ( 51) N2O5 + M -> NO2 + NO3 + M rate = ** User defined ** (136) - CL_CH2O ( 52) CL + CH2O -> HCL + HO2 + CO rate = 8.10E-11*exp( -30./t) (137) - CL_CH4 ( 53) CL + CH4 -> CH3O2 + HCL rate = 7.10E-12*exp( -1270./t) (138) - CL_H2 ( 54) CL + H2 -> HCL + H rate = 3.05E-11*exp( -2270./t) (139) - CL_H2O2 ( 55) CL + H2O2 -> HCL + HO2 rate = 1.10E-11*exp( -980./t) (140) - CL_HO2a ( 56) CL + HO2 -> HCL + O2 rate = 1.40E-11*exp( 270./t) (141) - CL_HO2b ( 57) CL + HO2 -> OH + CLO rate = 3.60E-11*exp( -375./t) (142) - CL_O3 ( 58) CL + O3 -> CLO + O2 rate = 2.30E-11*exp( -200./t) (143) - CLO_CH3O2 ( 59) CLO + CH3O2 -> CL + HO2 + CH2O rate = 3.30E-12*exp( -115./t) (144) - CLO_CLOa ( 60) CLO + CLO -> 2*CL + O2 rate = 3.00E-11*exp( -2450./t) (145) - CLO_CLOb ( 61) CLO + CLO -> CL2 + O2 rate = 1.00E-12*exp( -1590./t) (146) - CLO_CLOc ( 62) CLO + CLO -> CL + OCLO rate = 3.50E-13*exp( -1370./t) (147) - CLO_HO2 ( 63) CLO + HO2 -> O2 + HOCL rate = 2.60E-12*exp( 290./t) (148) - CLO_NO ( 64) CLO + NO -> NO2 + CL rate = 6.40E-12*exp( 290./t) (149) - CLONO2_CL ( 65) CLONO2 + CL -> CL2 + NO3 rate = 6.50E-12*exp( 135./t) (150) - CLO_NO2_M ( 66) CLO + NO2 + M -> CLONO2 + M troe : ko=1.80E-31*(300/t)**3.40 (151) - ki=1.50E-11*(300/t)**1.90 - f=0.60 - CLONO2_O ( 67) CLONO2 + O -> CLO + NO3 rate = 3.60E-12*exp( -840./t) (152) - CLONO2_OH ( 68) CLONO2 + OH -> HOCL + NO3 rate = 1.20E-12*exp( -330./t) (153) - CLO_O ( 69) CLO + O -> CL + O2 rate = 2.80E-11*exp( 85./t) (154) - CLO_OHa ( 70) CLO + OH -> CL + HO2 rate = 7.40E-12*exp( 270./t) (155) - CLO_OHb ( 71) CLO + OH -> HCL + O2 rate = 6.00E-13*exp( 230./t) (156) - HCL_O ( 72) HCL + O -> CL + OH rate = 1.00E-11*exp( -3300./t) (157) - HCL_OH ( 73) HCL + OH -> H2O + CL rate = 1.80E-12*exp( -250./t) (158) - HOCL_CL ( 74) HOCL + CL -> HCL + CLO rate = 3.40E-12*exp( -130./t) (159) - HOCL_O ( 75) HOCL + O -> CLO + OH rate = 1.70E-13 (160) - HOCL_OH ( 76) HOCL + OH -> H2O + CLO rate = 3.00E-12*exp( -500./t) (161) - O1D_CCL4 ( 77) O1D + CCL4 -> 4*CL rate = 2.61E-10 (162) - O1D_CF2CLBR ( 78) O1D + CF2CLBR -> CL + BR + {COF2} rate = 9.75E-11 (163) - O1D_CFC11 ( 79) O1D + CFC11 -> 3*CL rate = 2.07E-10 (164) - O1D_CFC113 ( 80) O1D + CFC113 -> 3*CL rate = 2.09E-10 (165) - O1D_CFC114 ( 81) O1D + CFC114 -> 2*CL + 2*{COF2} rate = 1.17E-10 (166) - O1D_CFC115 ( 82) O1D + CFC115 -> CL + {F} + 2*{COF2} rate = 4.64E-11 (167) - O1D_CFC12 ( 83) O1D + CFC12 -> 2*CL + {COF2} rate = 1.20E-10 (168) - O1D_HCLa ( 84) O1D + HCL -> CL + OH rate = 9.90E-11 (169) - O1D_HCLb ( 85) O1D + HCL -> CLO + H rate = 3.30E-12 (170) - tag_CLO_CLO_M ( 86) CLO + CLO + M -> CL2O2 + M troe : ko=1.90E-32*(300/t)**3.60 (171) - ki=3.70E-12*(300/t)**1.60 - f=0.60 - usr_CL2O2_M ( 87) CL2O2 + M -> CLO + CLO + M rate = ** User defined ** (172) - BR_CH2O ( 88) BR + CH2O -> HBR + HO2 + CO rate = 1.70E-11*exp( -800./t) (173) - BR_HO2 ( 89) BR + HO2 -> HBR + O2 rate = 4.80E-12*exp( -310./t) (174) - BR_O3 ( 90) BR + O3 -> BRO + O2 rate = 1.60E-11*exp( -780./t) (175) - BRO_BRO ( 91) BRO + BRO -> 2*BR + O2 rate = 1.50E-12*exp( 230./t) (176) - BRO_CLOa ( 92) BRO + CLO -> BR + OCLO rate = 9.50E-13*exp( 550./t) (177) - BRO_CLOb ( 93) BRO + CLO -> BR + CL + O2 rate = 2.30E-12*exp( 260./t) (178) - BRO_CLOc ( 94) BRO + CLO -> BRCL + O2 rate = 4.10E-13*exp( 290./t) (179) - BRO_HO2 ( 95) BRO + HO2 -> HOBR + O2 rate = 4.50E-12*exp( 460./t) (180) - BRO_NO ( 96) BRO + NO -> BR + NO2 rate = 8.80E-12*exp( 260./t) (181) - BRO_NO2_M ( 97) BRO + NO2 + M -> BRONO2 + M troe : ko=5.20E-31*(300/t)**3.20 (182) - ki=6.90E-12*(300/t)**2.90 - f=0.60 - BRONO2_O ( 98) BRONO2 + O -> BRO + NO3 rate = 1.90E-11*exp( 215./t) (183) - BRO_O ( 99) BRO + O -> BR + O2 rate = 1.90E-11*exp( 230./t) (184) - BRO_OH (100) BRO + OH -> BR + HO2 rate = 1.70E-11*exp( 250./t) (185) - HBR_O (101) HBR + O -> BR + OH rate = 5.80E-12*exp( -1500./t) (186) - HBR_OH (102) HBR + OH -> BR + H2O rate = 5.50E-12*exp( 200./t) (187) - HOBR_O (103) HOBR + O -> BRO + OH rate = 1.20E-10*exp( -430./t) (188) - O1D_CF3BR (104) O1D + CF3BR -> BR + {F} + {COF2} rate = 4.50E-11 (189) - O1D_CHBR3 (105) O1D + CHBR3 -> 3*BR rate = 4.62E-10 (190) - O1D_H2402 (106) O1D + H2402 -> 2*BR + 2*{COF2} rate = 1.20E-10 (191) - O1D_HBRa (107) O1D + HBR -> BR + OH rate = 9.00E-11 (192) - O1D_HBRb (108) O1D + HBR -> BRO + H rate = 3.00E-11 (193) - CH2BR2_CL (109) CH2BR2 + CL -> 2*BR + HCL rate = 6.30E-12*exp( -800./t) (194) - CH2BR2_OH (110) CH2BR2 + OH -> 2*BR + H2O rate = 2.00E-12*exp( -840./t) (195) - CH3BR_CL (111) CH3BR + CL -> HCL + HO2 + BR rate = 1.46E-11*exp( -1040./t) (196) - CH3BR_OH (112) CH3BR + OH -> BR + H2O + HO2 rate = 1.42E-12*exp( -1150./t) (197) - CH3CCL3_OH (113) CH3CCL3 + OH -> H2O + 3*CL rate = 1.64E-12*exp( -1520./t) (198) - CH3CL_CL (114) CH3CL + CL -> HO2 + CO + 2*HCL rate = 2.03E-11*exp( -1100./t) (199) - CH3CL_OH (115) CH3CL + OH -> CL + H2O + HO2 rate = 1.96E-12*exp( -1200./t) (200) - CHBR3_CL (116) CHBR3 + CL -> 3*BR + HCL rate = 4.85E-12*exp( -850./t) (201) - CHBR3_OH (117) CHBR3 + OH -> 3*BR rate = 9.00E-13*exp( -360./t) (202) - HCFC141B_OH (118) HCFC141B + OH -> CL + CL rate = 1.25E-12*exp( -1600./t) (203) - HCFC142B_OH (119) HCFC142B + OH -> CL + {COF2} rate = 1.30E-12*exp( -1770./t) (204) - HCFC22_OH (120) HCFC22 + OH -> H2O + CL + {COF2} rate = 9.20E-13*exp( -1560./t) (205) - O1D_CH2BR2 (121) O1D + CH2BR2 -> 2*BR rate = 2.57E-10 (206) - O1D_CH3BR (122) O1D + CH3BR -> BR rate = 1.80E-10 (207) - O1D_HCFC141B (123) O1D + HCFC141B -> CL + CL rate = 1.79E-10 (208) - O1D_HCFC142B (124) O1D + HCFC142B -> CL + {COF2} rate = 1.30E-10 (209) - O1D_HCFC22 (125) O1D + HCFC22 -> CL + {COF2} rate = 7.65E-11 (210) - CH2O_NO3 (126) CH2O + NO3 -> CO + HO2 + HNO3 rate = 6.00E-13*exp( -2058./t) (211) - CH2O_O (127) CH2O + O -> HO2 + OH + CO rate = 3.40E-11*exp( -1600./t) (212) - CH2O_OH (128) CH2O + OH -> CO + H2O + H rate = 5.50E-12*exp( 125./t) (213) - CH3O2_CH3O2a (129) CH3O2 + CH3O2 -> 2*CH2O + 2*HO2 rate = 5.00E-13*exp( -424./t) (214) - CH3O2_CH3O2b (130) CH3O2 + CH3O2 -> CH2O + CH3OH rate = 1.90E-14*exp( 706./t) (215) - CH3O2_HO2 (131) CH3O2 + HO2 -> CH3OOH + O2 rate = 4.10E-13*exp( 750./t) (216) - CH3O2_NO (132) CH3O2 + NO -> CH2O + NO2 + HO2 rate = 2.80E-12*exp( 300./t) (217) - CH3OH_OH (133) CH3OH + OH -> HO2 + CH2O rate = 2.90E-12*exp( -345./t) (218) - CH3OOH_OH (134) CH3OOH + OH -> 0.7*CH3O2 + 0.3*OH + 0.3*CH2O + H2O rate = 3.80E-12*exp( 200./t) (219) - CH4_OH (135) CH4 + OH -> CH3O2 + H2O rate = 2.45E-12*exp( -1775./t) (220) - O1D_CH4a (136) O1D + CH4 -> CH3O2 + OH rate = 1.31E-10 (221) - O1D_CH4b (137) O1D + CH4 -> CH2O + H + HO2 rate = 3.50E-11 (222) - O1D_CH4c (138) O1D + CH4 -> CH2O + H2 rate = 9.00E-12 (223) - usr_CO_OH (139) CO + OH -> CO2 + HO2 rate = ** User defined ** (224) - C2H4_CL_M (140) C2H4 + CL + M -> CL + M troe : ko=1.60E-29*(300/t)**3.30 (225) - ki=3.10E-10*(300/t) - f=0.60 - C2H4_O3 (141) C2H4 + O3 -> 0.63*CO + 0.13*OH + 0.13*HO2 + 0.37*{HCOOH} + CH2O rate = 1.20E-14*exp( -2630./t) (226) - C2H5O2_C2H5O2 (142) C2H5O2 + C2H5O2 -> 1.6*CH3CHO + 1.2*HO2 + 0.4*C2H5OH rate = 6.80E-14 (227) - C2H5O2_CH3O2 (143) C2H5O2 + CH3O2 -> 0.7*CH2O + 0.8*CH3CHO + HO2 + 0.3*CH3OH rate = 2.00E-13 (228) - + 0.2*C2H5OH - C2H5O2_HO2 (144) C2H5O2 + HO2 -> C2H5OOH + O2 rate = 7.50E-13*exp( 700./t) (229) - C2H5O2_NO (145) C2H5O2 + NO -> CH3CHO + HO2 + NO2 rate = 2.60E-12*exp( 365./t) (230) - C2H5OH_OH (146) C2H5OH + OH -> HO2 + CH3CHO rate = 6.90E-12*exp( -230./t) (231) - C2H5OOH_OH (147) C2H5OOH + OH -> 0.5*C2H5O2 + 0.5*CH3CHO + 0.5*OH rate = 3.80E-12*exp( 200./t) (232) - C2H6_CL (148) C2H6 + CL -> HCL + C2H5O2 rate = 7.20E-11*exp( -70./t) (233) - C2H6_OH (149) C2H6 + OH -> C2H5O2 + H2O rate = 7.66E-12*exp( -1020./t) (234) - CH3CHO_NO3 (150) CH3CHO + NO3 -> CH3CO3 + HNO3 rate = 1.40E-12*exp( -1900./t) (235) - CH3CHO_OH (151) CH3CHO + OH -> CH3CO3 + H2O rate = 4.63E-12*exp( 350./t) (236) - CH3CO3_CH3CO3 (152) CH3CO3 + CH3CO3 -> 2*CH3O2 + 2*CO2 rate = 2.90E-12*exp( 500./t) (237) - CH3CO3_CH3O2 (153) CH3CO3 + CH3O2 -> 0.9*CH3O2 + CH2O + 0.9*HO2 + 0.9*CO2 rate = 2.00E-12*exp( 500./t) (238) - + 0.1*CH3COOH - CH3CO3_HO2 (154) CH3CO3 + HO2 -> 0.4*CH3COOOH + 0.15*CH3COOH + 0.15*O3 + 0.45*OH rate = 4.30E-13*exp( 1040./t) (239) - + 0.45*CH3O2 - CH3CO3_NO (155) CH3CO3 + NO -> CH3O2 + CO2 + NO2 rate = 8.10E-12*exp( 270./t) (240) - CH3COOH_OH (156) CH3COOH + OH -> CH3O2 + CO2 + H2O rate = 3.15E-14*exp( 920./t) (241) - CH3COOOH_OH (157) CH3COOOH + OH -> 0.5*CH3CO3 + 0.5*CH2O + 0.5*CO2 + H2O rate = 1.00E-12 (242) - EO2_HO2 (158) EO2 + HO2 -> EOOH rate = 7.50E-13*exp( 700./t) (243) - EO2_NO (159) EO2 + NO -> 0.5*CH2O + 0.25*HO2 + 0.75*EO + NO2 rate = 4.20E-12*exp( 180./t) (244) - EO_M (160) EO -> 2*CH2O + HO2 rate = 1.60E+11*exp( -4150./t) (245) - EO_O2 (161) EO + O2 -> GLYALD + HO2 rate = 1.00E-14 (246) - GLYALD_OH (162) GLYALD + OH -> HO2 + 0.2*GLYOXAL + 0.8*CH2O + 0.8*CO2 rate = 1.00E-11 (247) - GLYOXAL_OH (163) GLYOXAL + OH -> HO2 + CO + CO2 rate = 1.15E-11 (248) - PAN_OH (164) PAN + OH -> CH2O + NO3 rate = 4.00E-14 (249) - tag_C2H4_OH (165) C2H4 + OH + M -> EO2 + M troe : ko=8.60E-29*(300/t)**3.10 (250) - ki=9.00E-12*(300/t)**0.85 - f=0.48 - tag_CH3CO3_NO2 (166) CH3CO3 + NO2 + M -> PAN + M troe : ko=7.30E-29*(300/t)**4.10 (251) - ki=9.50E-12*(300/t)**1.60 - f=0.60 - usr_PAN_M (167) PAN + M -> CH3CO3 + NO2 + M rate = ** User defined ** (252) - C3H6_NO3 (168) C3H6 + NO3 -> NOA rate = 4.60E-13*exp( -1156./t) (253) - C3H6_O3 (169) C3H6 + O3 -> 0.5*CH2O + 0.12*{HCOOH} + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (254) - + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 - + 0.36*OH - C3H7O2_CH3O2 (170) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 3.75E-13*exp( -40./t) (255) - C3H7O2_HO2 (171) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 7.50E-13*exp( 700./t) (256) - C3H7O2_NO (172) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 4.20E-12*exp( 180./t) (257) - C3H7OOH_OH (173) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (258) - C3H8_OH (174) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (259) - CH3COCHO_NO3 (175) CH3COCHO + NO3 -> HNO3 + CO + CH3CO3 rate = 1.40E-12*exp( -1860./t) (260) - CH3COCHO_OH (176) CH3COCHO + OH -> CH3CO3 + CO + H2O rate = 8.40E-13*exp( 830./t) (261) - HYAC_OH (177) HYAC + OH -> CH3COCHO + HO2 rate = 3.00E-12 (262) - NOA_OH (178) NOA + OH -> NO2 + CH3COCHO rate = 6.70E-13 (263) - PO2_HO2 (179) PO2 + HO2 -> POOH + O2 rate = 7.50E-13*exp( 700./t) (264) - PO2_NO (180) PO2 + NO -> CH3CHO + CH2O + HO2 + NO2 rate = 4.20E-12*exp( 180./t) (265) - POOH_OH (181) POOH + OH -> 0.5*PO2 + 0.5*OH + 0.5*HYAC + H2O rate = 3.80E-12*exp( 200./t) (266) - RO2_CH3O2 (182) RO2 + CH3O2 -> 0.3*CH3CO3 + 0.8*CH2O + 0.3*HO2 + 0.2*HYAC rate = 7.10E-13*exp( 500./t) (267) - + 0.5*CH3COCHO + 0.5*CH3OH - RO2_HO2 (183) RO2 + HO2 -> 0.85*ROOH + 0.15*OH + 0.15*CH2O + 0.15*CH3CO3 rate = 8.60E-13*exp( 700./t) (268) - RO2_NO (184) RO2 + NO -> CH3CO3 + CH2O + NO2 rate = 2.90E-12*exp( 300./t) (269) - ROOH_OH (185) ROOH + OH -> RO2 + H2O rate = 3.80E-12*exp( 200./t) (270) - tag_C3H6_OH (186) C3H6 + OH + M -> PO2 + M troe : ko=8.00E-27*(300/t)**3.50 (271) - ki=3.00E-11 - f=0.50 - usr_CH3COCH3_OH (187) CH3COCH3 + OH -> RO2 + H2O rate = ** User defined ** (272) - MACRO2_CH3CO3 (188) MACRO2 + CH3CO3 -> 0.25*CH3COCHO + CH3O2 + 0.22*CO + 0.47*HO2 rate = 1.40E-11 (273) - + 0.53*GLYALD + 0.22*HYAC + 0.25*CH2O - + 0.53*CH3CO3 - MACRO2_CH3O2 (189) MACRO2 + CH3O2 -> 0.73*HO2 + 0.88*CH2O + 0.11*CO + 0.24*CH3COCHO rate = 5.00E-13*exp( 400./t) (274) - + 0.26*GLYALD + 0.26*CH3CO3 + 0.25*CH3OH - + 0.23*HYAC - MACRO2_HO2 (190) MACRO2 + HO2 -> MACROOH rate = 8.00E-13*exp( 700./t) (275) - MACRO2_NO3 (191) MACRO2 + NO3 -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.25*CH3COCHO rate = 2.40E-12 (276) - + 0.22*CO + 0.53*GLYALD + 0.22*HYAC + 0.53*CH3CO3 - MACRO2_NOa (192) MACRO2 + NO -> NO2 + 0.47*HO2 + 0.25*CH2O + 0.53*GLYALD rate = 2.70E-12*exp( 360./t) (277) - + 0.25*CH3COCHO + 0.53*CH3CO3 + 0.22*HYAC + 0.22*CO - MACRO2_NOb (193) MACRO2 + NO -> 0.8*ONITR rate = 1.30E-13*exp( 360./t) (278) - MACR_O3 (194) MACR + O3 -> 0.12*CH2O + 0.24*OH + 0.65*CO + 0.1*CH3CO3 rate = 1.50E-15*exp( -2100./t) (279) - + 0.88*CH3COCHO + 0.33*{HCOOH} + 0.14*HO2 - MACR_OH (195) MACR + OH -> 0.5*MACRO2 + 0.5*H2O + 0.5*MCO3 rate = 9.60E-12*exp( 360./t) (280) - MACROOH_OH (196) MACROOH + OH -> 0.5*MCO3 + 0.2*MACRO2 + 0.1*OH + 0.2*HO2 rate = 2.30E-11*exp( 200./t) (281) - MCO3_CH3CO3 (197) MCO3 + CH3CO3 -> 2*CO2 + CH3O2 + CH2O + CH3CO3 rate = 4.60E-12*exp( 530./t) (282) - MCO3_CH3O2 (198) MCO3 + CH3O2 -> 2*CH2O + HO2 + CO2 + CH3CO3 rate = 2.00E-12*exp( 500./t) (283) - MCO3_HO2 (199) MCO3 + HO2 -> 0.15*O3 + 0.15*CH3COOH + 0.4*CH3COOOH + 0.45*OH rate = 4.30E-13*exp( 1040./t) (284) - + 0.45*CO2 + 0.45*CH2O + 0.45*CH3CO3 - MCO3_MCO3 (200) MCO3 + MCO3 -> 2*CO2 + 2*CH2O + 2*CH3CO3 rate = 2.30E-12*exp( 530./t) (285) - MCO3_NO (201) MCO3 + NO -> NO2 + CH2O + CH3CO3 rate = 5.30E-12*exp( 360./t) (286) - MCO3_NO3 (202) MCO3 + NO3 -> NO2 + CH2O + CH3CO3 rate = 5.00E-12 (287) - MPAN_OH_M (203) MPAN + OH + M -> 0.5*HYAC + 0.5*NO3 + 0.5*CH2O + 0.5*HO2 + 0.5*CO2 troe : ko=8.00E-27*(300/t)**3.50 (288) - + M + 0.5*NDEP ki=3.00E-11 - f=0.50 - MVK_O3 (204) MVK + O3 -> 0.6*CH2O + 0.56*CO + 0.1*CH3CHO + 0.1*CO2 + 0.28*CH3CO3 rate = 8.50E-16*exp( -1520./t) (289) - + 0.5*CH3COCHO + 0.28*HO2 + 0.36*OH + 0.12*{HCOOH} - MVK_OH (205) MVK + OH -> MACRO2 rate = 4.13E-12*exp( 452./t) (290) - tag_MCO3_NO2 (206) MCO3 + NO2 + M -> MPAN + M troe : ko=9.70E-29*(300/t)**5.60 (291) - ki=9.30E-12*(300/t)**1.50 - f=0.60 - usr_MPAN_M (207) MPAN + M -> MCO3 + NO2 + M rate = ** User defined ** (292) - BIGALK_OH (208) BIGALK + OH -> 1.67*C3H7O2 rate = 3.50E-12 (293) - HYDRALD_OH (209) HYDRALD + OH -> XO2 rate = 1.86E-11*exp( 175./t) (294) - ISOP_NO3 (210) ISOP + NO3 -> ISOPNO3 rate = 3.03E-12*exp( -446./t) (295) - ISOPNO3_HO2 (211) ISOPNO3 + HO2 -> 0.206*NO2 + 0.206*CH2O + 0.206*OH + 0.167*MACR rate = 8.00E-13*exp( 700./t) (296) - + 0.039*MVK + 0.794*ONITR - ISOPNO3_NO (212) ISOPNO3 + NO -> 1.206*NO2 + 0.794*HO2 + 0.072*CH2O + 0.167*MACR rate = 2.70E-12*exp( 360./t) (297) - + 0.039*MVK + 0.794*ONITR - ISOPNO3_NO3 (213) ISOPNO3 + NO3 -> 1.206*NO2 + 0.072*CH2O + 0.167*MACR + 0.039*MVK rate = 2.40E-12 (298) - + 0.794*ONITR + 0.794*HO2 - ISOPO2_CH3CO3 (214) ISOPO2 + CH3CO3 -> CH3O2 + HO2 + 0.6*CH2O + 0.25*MACR + 0.35*MVK rate = 1.40E-11 (299) - + 0.4*HYDRALD - ISOPO2_CH3O2 (215) ISOPO2 + CH3O2 -> 0.25*CH3OH + HO2 + 1.2*CH2O + 0.19*MACR rate = 5.00E-13*exp( 400./t) (300) - + 0.26*MVK + 0.3*HYDRALD - ISOPO2_HO2 (216) ISOPO2 + HO2 -> ISOPOOH rate = 8.00E-13*exp( 700./t) (301) - ISOPO2_NO (217) ISOPO2 + NO -> 0.08*ONITR + 0.92*NO2 + 0.23*MACR + 0.32*MVK rate = 4.40E-12*exp( 180./t) (302) - + 0.33*HYDRALD + 0.02*GLYOXAL + 0.02*GLYALD - + 0.02*CH3COCHO + 0.02*HYAC + 0.55*CH2O + 0.92*HO2 - ISOPO2_NO3 (218) ISOPO2 + NO3 -> HO2 + NO2 + 0.6*CH2O + 0.25*MACR + 0.35*MVK rate = 2.40E-12 (303) - + 0.4*HYDRALD - ISOP_O3 (219) ISOP + O3 -> 0.3*MACR + 0.2*MVK + 0.11*{HCOOH} + 0.62*CO + 0.32*OH rate = 1.05E-14*exp( -2000./t) (304) - + 0.37*HO2 + 0.91*CH2O + 0.08*CH3CO3 + 0.13*C3H6 - + 0.05*CH3O2 - ISOP_OH (220) ISOP + OH -> ISOPO2 rate = 2.54E-11*exp( 410./t) (305) - ISOPOOH_OH (221) ISOPOOH + OH -> 0.8*XO2 + 0.2*ISOPO2 rate = 1.52E-11*exp( 200./t) (306) - ONITR_NO3 (222) ONITR + NO3 -> HO2 + NO2 + HYDRALD rate = 1.40E-12*exp( -1860./t) (307) - ONITR_OH (223) ONITR + OH -> HYDRALD + 0.4*NO2 + HO2 rate = 4.50E-11 (308) - XO2_CH3CO3 (224) XO2 + CH3CO3 -> 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL + CH3O2 + HO2 rate = 1.30E-12*exp( 640./t) (309) - + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD + CO2 - XO2_CH3O2 (225) XO2 + CH3O2 -> 0.3*CH3OH + 0.8*HO2 + 0.8*CH2O + 0.2*CO rate = 5.00E-13*exp( 400./t) (310) - + 0.1*GLYOXAL + 0.1*CH3COCHO + 0.1*HYAC + 0.1*GLYALD - XO2_HO2 (226) XO2 + HO2 -> XOOH rate = 8.00E-13*exp( 700./t) (311) - XO2_NO (227) XO2 + NO -> NO2 + HO2 + 0.25*CO + 0.25*CH2O + 0.25*GLYOXAL rate = 2.70E-12*exp( 360./t) (312) - + 0.25*CH3COCHO + 0.25*HYAC + 0.25*GLYALD - XO2_NO3 (228) XO2 + NO3 -> NO2 + HO2 + 0.5*CO + 0.25*HYAC + 0.25*GLYOXAL rate = 2.40E-12 (313) - + 0.25*CH3COCHO + 0.25*GLYALD - XOOH_OH (229) XOOH + OH -> 0.5*XO2 + 0.5*OH rate = 1.52E-12*exp( 200./t) (314) - TERP_NO3 (230) TERP + NO3 -> 1.7*ISOPO2 + NO2 rate = 1.20E-12*exp( 490./t) (315) - TERP_O3 (231) TERP + O3 -> 1.122*MACR + 0.442*MVK + 0.765*O + 1.156*OH rate = 6.30E-16*exp( -580./t) (316) - TERP_OH (232) TERP + OH -> 1.64*ISOPO2 + 0.1*CH3COCH3 rate = 1.20E-11*exp( 440./t) (317) - DMS_NO3 (233) DMS + NO3 -> SO2 + HNO3 rate = 1.90E-13*exp( 520./t) (318) - DMS_OHa (234) DMS + OH -> SO2 rate = 1.10E-11*exp( -280./t) (319) - OCS_O (235) OCS + O -> SO + CO rate = 2.10E-11*exp( -2200./t) (320) - OCS_OH (236) OCS + OH -> SO2 + CO + H rate = 7.20E-14*exp( -1070./t) (321) - S_O2 (237) S + O2 -> SO + O rate = 2.30E-12 (322) - SO2_OH_M (238) SO2 + OH + M -> SO3 + HO2 troe : ko=2.90E-31*(300/t)**4.10 (323) - ki=1.70E-12*(300/t)**-0.20 - f=0.60 - S_O3 (239) S + O3 -> SO + O2 rate = 1.20E-11 (324) - SO_BRO (240) SO + BRO -> SO2 + BR rate = 5.70E-11 (325) - SO_CLO (241) SO + CLO -> SO2 + CL rate = 2.80E-11 (326) - S_OH (242) S + OH -> SO + H rate = 6.60E-11 (327) - SO_NO2 (243) SO + NO2 -> SO2 + NO rate = 1.40E-11 (328) - SO_O2 (244) SO + O2 -> SO2 + O rate = 1.60E-13*exp( -2280./t) (329) - SO_O3 (245) SO + O3 -> SO2 + O2 rate = 3.40E-12*exp( -1100./t) (330) - SO_OCLO (246) SO + OCLO -> SO2 + CLO rate = 1.90E-12 (331) - SO_OH (247) SO + OH -> SO2 + H rate = 2.60E-11*exp( 330./t) (332) - usr_DMS_OH (248) DMS + OH -> 0.5*SO2 + 0.5*HO2 rate = ** User defined ** (333) - usr_SO3_H2O (249) SO3 + H2O -> H2SO4 rate = ** User defined ** (334) - NH3_OH (250) NH3 + OH -> H2O + NHDEP rate = 1.70E-12*exp( -710./t) (335) - usr_HO2_aer (251) HO2 -> H2O rate = ** User defined ** (336) - usr_N2O5_aer (252) N2O5 -> 2*HNO3 rate = ** User defined ** (337) - usr_NH4_strat_ta (253) NH4 -> NHDEP rate = 6.34E-08 (338) - usr_NO2_aer (254) NO2 -> 0.5*OH + 0.5*NO + 0.5*HNO3 rate = ** User defined ** (339) - usr_NO3_aer (255) NO3 -> HNO3 rate = ** User defined ** (340) - usr_ONITR_aer (256) ONITR -> HNO3 rate = ** User defined ** (341) - SOAE_tau (257) SOAE -> SOAG rate = 1.16E-05 (342) - het1 (258) N2O5 -> 2*HNO3 rate = ** User defined ** (343) - het10 (259) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (344) - het11 (260) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (345) - het12 (261) N2O5 -> 2*HNO3 rate = ** User defined ** (346) - het13 (262) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (347) - het14 (263) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (348) - het15 (264) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (349) - het16 (265) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (350) - het17 (266) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (351) - het2 (267) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (352) - het3 (268) BRONO2 -> HOBR + HNO3 rate = ** User defined ** (353) - het4 (269) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (354) - het5 (270) HOCL + HCL -> CL2 + H2O rate = ** User defined ** (355) - het6 (271) HOBR + HCL -> BRCL + H2O rate = ** User defined ** (356) - het7 (272) N2O5 -> 2*HNO3 rate = ** User defined ** (357) - het8 (273) CLONO2 -> HOCL + HNO3 rate = ** User defined ** (358) - het9 (274) CLONO2 + HCL -> CL2 + HNO3 rate = ** User defined ** (359) - E90_tau (275) E90 -> {sink} rate = 1.29E-07 (360) - NH_50_tau (276) NH_50 -> (No products) rate = 2.31E-07 (361) - NH_5_tau (277) NH_5 -> (No products) rate = 2.31E-06 (362) - ST80_25_tau (278) ST80_25 -> (No products) rate = 4.63E-07 (363) - -Extraneous prod/loss species - ( 1) NO2 (dataset) - ( 2) so4_a2 (dataset) - ( 3) SO2 (dataset) - ( 4) so4_a1 (dataset) - ( 5) num_a2 (dataset) - ( 6) num_a1 (dataset) - ( 7) bc_a4 (dataset) - ( 8) num_a4 (dataset) - ( 9) NO - - - Equation Report - - d(bc_a1)/dt = 0 - d(bc_a4)/dt = 0 - d(BIGALK)/dt = - r208*OH*BIGALK - d(BR)/dt = j46*BRCL + j47*BRO + j49*BRONO2 + j51*CF2CLBR + j52*CF3BR + 2*j58*CH2BR2 + j59*CH3BR - + 3*j62*CHBR3 + 2*j68*H2402 + j69*HBR + j75*HOBR + r78*O1D*CF2CLBR + 2*r91*BRO*BRO + r92*BRO*CLO - + r93*BRO*CLO + r96*BRO*NO + r99*BRO*O + r100*BRO*OH + r101*HBR*O + r102*HBR*OH + r104*O1D*CF3BR - + 3*r105*O1D*CHBR3 + 2*r106*O1D*H2402 + r107*O1D*HBR + 2*r109*CH2BR2*CL + 2*r110*CH2BR2*OH - + r111*CH3BR*CL + r112*CH3BR*OH + 3*r116*CHBR3*CL + 3*r117*CHBR3*OH + 2*r121*O1D*CH2BR2 - + r122*O1D*CH3BR + r240*SO*BRO - - r88*CH2O*BR - r89*HO2*BR - r90*O3*BR - d(BRCL)/dt = r94*BRO*CLO + r266*HOBR*HCL + r271*HOBR*HCL - - j46*BRCL - d(BRO)/dt = j48*BRONO2 + r90*BR*O3 + r98*BRONO2*O + r103*HOBR*O + r108*O1D*HBR - - j47*BRO - 2*r91*BRO*BRO - r92*CLO*BRO - r93*CLO*BRO - r94*CLO*BRO - r95*HO2*BRO - r96*NO*BRO - - r97*M*NO2*BRO - r99*O*BRO - r100*OH*BRO - r240*SO*BRO - d(BRONO2)/dt = r97*M*BRO*NO2 - - j48*BRONO2 - j49*BRONO2 - r260*BRONO2 - r263*BRONO2 - r268*BRONO2 - r98*O*BRONO2 - d(BRY)/dt = 0 - d(C2H4)/dt = - r140*M*CL*C2H4 - r141*O3*C2H4 - r165*M*OH*C2H4 - d(C2H5OH)/dt = .4*r142*C2H5O2*C2H5O2 + .2*r143*C2H5O2*CH3O2 - - r146*OH*C2H5OH - d(C2H5OOH)/dt = r144*C2H5O2*HO2 - - j19*C2H5OOH - r147*OH*C2H5OOH - d(C2H6)/dt = - r148*CL*C2H6 - r149*OH*C2H6 - d(C3H6)/dt = .7*j39*MVK + .13*r219*ISOP*O3 - - r168*NO3*C3H6 - r169*O3*C3H6 - r186*M*OH*C3H6 - d(C3H7OOH)/dt = r171*C3H7O2*HO2 - - j20*C3H7OOH - r173*OH*C3H7OOH - d(C3H8)/dt = - r174*OH*C3H8 - d(CCL4)/dt = - j50*CCL4 - r77*O1D*CCL4 - d(CF2CLBR)/dt = - j51*CF2CLBR - r78*O1D*CF2CLBR - d(CF3BR)/dt = - j52*CF3BR - r104*O1D*CF3BR - d(CFC11)/dt = - j53*CFC11 - r79*O1D*CFC11 - d(CFC113)/dt = - j54*CFC113 - r80*O1D*CFC113 - d(CFC114)/dt = - j55*CFC114 - r81*O1D*CFC114 - d(CFC115)/dt = - j56*CFC115 - r82*O1D*CFC115 - d(CFC12)/dt = - j57*CFC12 - r83*O1D*CFC12 - d(CH2BR2)/dt = - j58*CH2BR2 - r109*CL*CH2BR2 - r110*OH*CH2BR2 - r121*O1D*CH2BR2 - d(CH2O)/dt = j27*CH3OOH + .18*j28*CH4 + j32*GLYALD + j34*HYAC + .69*j35*ISOPOOH + 1.34*j36*MACR + j40*NOA - + j41*ONITR + j43*POOH + j44*ROOH + 2*r160*EO + r59*CLO*CH3O2 + 2*r129*CH3O2*CH3O2 - + r130*CH3O2*CH3O2 + r132*CH3O2*NO + r133*CH3OH*OH + .3*r134*CH3OOH*OH + r137*O1D*CH4 - + r138*O1D*CH4 + r141*C2H4*O3 + .7*r143*C2H5O2*CH3O2 + r153*CH3CO3*CH3O2 + .5*r157*CH3COOOH*OH - + .5*r159*EO2*NO + .8*r162*GLYALD*OH + r164*PAN*OH + .5*r169*C3H6*O3 + r170*C3H7O2*CH3O2 - + r180*PO2*NO + .8*r182*RO2*CH3O2 + .15*r183*RO2*HO2 + r184*RO2*NO + .25*r188*MACRO2*CH3CO3 - + .88*r189*MACRO2*CH3O2 + .25*r191*MACRO2*NO3 + .25*r192*MACRO2*NO + .12*r194*MACR*O3 - + r197*MCO3*CH3CO3 + 2*r198*MCO3*CH3O2 + .45*r199*MCO3*HO2 + 2*r200*MCO3*MCO3 + r201*MCO3*NO - + r202*MCO3*NO3 + .5*r203*M*MPAN*OH + .6*r204*MVK*O3 + .206*r211*ISOPNO3*HO2 - + .072*r212*ISOPNO3*NO + .072*r213*ISOPNO3*NO3 + .6*r214*ISOPO2*CH3CO3 + 1.2*r215*ISOPO2*CH3O2 - + .55*r217*ISOPO2*NO + .6*r218*ISOPO2*NO3 + .91*r219*ISOP*O3 + .25*r224*XO2*CH3CO3 - + .8*r225*XO2*CH3O2 + .25*r227*XO2*NO - - j21*CH2O - j22*CH2O - r52*CL*CH2O - r88*BR*CH2O - r126*NO3*CH2O - r127*O*CH2O - r128*OH*CH2O - d(CH3BR)/dt = - j59*CH3BR - r111*CL*CH3BR - r112*OH*CH3BR - r122*O1D*CH3BR - d(CH3CCL3)/dt = - j60*CH3CCL3 - r113*OH*CH3CCL3 - d(CH3CHO)/dt = j19*C2H5OOH + j43*POOH + 1.6*r142*C2H5O2*C2H5O2 + .8*r143*C2H5O2*CH3O2 + r145*C2H5O2*NO - + r146*C2H5OH*OH + .5*r147*C2H5OOH*OH + .5*r169*C3H6*O3 + .27*r172*C3H7O2*NO + r180*PO2*NO - + .1*r204*MVK*O3 - - j23*CH3CHO - r150*NO3*CH3CHO - r151*OH*CH3CHO - d(CH3CL)/dt = - j61*CH3CL - r114*CL*CH3CL - r115*OH*CH3CL - d(CH3COCH3)/dt = .82*j20*C3H7OOH + .82*r170*C3H7O2*CH3O2 + .82*r172*C3H7O2*NO + .1*r232*TERP*OH - - j24*CH3COCH3 - r187*OH*CH3COCH3 - d(CH3COCHO)/dt = r177*HYAC*OH + r178*NOA*OH + .5*r182*RO2*CH3O2 + .25*r188*MACRO2*CH3CO3 - + .24*r189*MACRO2*CH3O2 + .25*r191*MACRO2*NO3 + .25*r192*MACRO2*NO + .88*r194*MACR*O3 - + .5*r204*MVK*O3 + .02*r217*ISOPO2*NO + .25*r224*XO2*CH3CO3 + .1*r225*XO2*CH3O2 - + .25*r227*XO2*NO + .25*r228*XO2*NO3 - - j25*CH3COCHO - r175*NO3*CH3COCHO - r176*OH*CH3COCHO - d(CH3COOH)/dt = .1*r153*CH3CO3*CH3O2 + .15*r154*CH3CO3*HO2 + .12*r169*C3H6*O3 + .15*r199*MCO3*HO2 - - r156*OH*CH3COOH - d(CH3COOOH)/dt = .4*r154*CH3CO3*HO2 + .4*r199*MCO3*HO2 - - j26*CH3COOOH - r157*OH*CH3COOOH - d(CH3OH)/dt = r130*CH3O2*CH3O2 + .3*r143*C2H5O2*CH3O2 + .5*r182*RO2*CH3O2 + .25*r189*MACRO2*CH3O2 - + .25*r215*ISOPO2*CH3O2 + .3*r225*XO2*CH3O2 - - r133*OH*CH3OH - d(CH3OOH)/dt = r131*CH3O2*HO2 - - j27*CH3OOH - r134*OH*CH3OOH - d(CH4)/dt = .1*r169*C3H6*O3 - - j28*CH4 - j29*CH4 - r53*CL*CH4 - r135*OH*CH4 - r136*O1D*CH4 - r137*O1D*CH4 - r138*O1D*CH4 - d(CHBR3)/dt = - j62*CHBR3 - r105*O1D*CHBR3 - r116*CL*CHBR3 - r117*OH*CHBR3 - d(CL)/dt = j46*BRCL + 4*j50*CCL4 + j51*CF2CLBR + 3*j53*CFC11 + 3*j54*CFC113 + 2*j55*CFC114 + j56*CFC115 - + 2*j57*CFC12 + 3*j60*CH3CCL3 + j61*CH3CL + 2*j63*CL2 + 2*j64*CL2O2 + j65*CLO + j67*CLONO2 - + j70*HCFC141B + j71*HCFC142B + j72*HCFC22 + j73*HCL + j76*HOCL + r59*CLO*CH3O2 + 2*r60*CLO*CLO - + r62*CLO*CLO + r64*CLO*NO + r69*CLO*O + r70*CLO*OH + r72*HCL*O + r73*HCL*OH + 4*r77*O1D*CCL4 - + r78*O1D*CF2CLBR + 3*r79*O1D*CFC11 + 3*r80*O1D*CFC113 + 2*r81*O1D*CFC114 + r82*O1D*CFC115 - + 2*r83*O1D*CFC12 + r84*O1D*HCL + r93*BRO*CLO + 3*r113*CH3CCL3*OH + r115*CH3CL*OH - + r118*HCFC141B*OH + r118*HCFC141B*OH + r119*HCFC142B*OH + r120*HCFC22*OH + r123*O1D*HCFC141B - + r123*O1D*HCFC141B + r124*O1D*HCFC142B + r125*O1D*HCFC22 + r241*SO*CLO - - r52*CH2O*CL - r53*CH4*CL - r54*H2*CL - r55*H2O2*CL - r56*HO2*CL - r57*HO2*CL - r58*O3*CL - - r65*CLONO2*CL - r74*HOCL*CL - r109*CH2BR2*CL - r111*CH3BR*CL - r114*CH3CL*CL - r116*CHBR3*CL - - r148*C2H6*CL - d(CL2)/dt = r61*CLO*CLO + r65*CLONO2*CL + r259*HOCL*HCL + r264*CLONO2*HCL + r265*HOCL*HCL + r269*CLONO2*HCL - + r270*HOCL*HCL + r274*CLONO2*HCL - - j63*CL2 - d(CL2O2)/dt = r86*M*CLO*CLO - - j64*CL2O2 - r87*M*CL2O2 - d(CLO)/dt = j66*CLONO2 + j77*OCLO + r87*M*CL2O2 + r87*M*CL2O2 + r57*CL*HO2 + r58*CL*O3 + r67*CLONO2*O - + r74*HOCL*CL + r75*HOCL*O + r76*HOCL*OH + r85*O1D*HCL + r246*SO*OCLO - - j65*CLO - r59*CH3O2*CLO - 2*r60*CLO*CLO - 2*r61*CLO*CLO - 2*r62*CLO*CLO - r63*HO2*CLO - - r64*NO*CLO - r66*M*NO2*CLO - r69*O*CLO - r70*OH*CLO - r71*OH*CLO - 2*r86*M*CLO*CLO - - r92*BRO*CLO - r93*BRO*CLO - r94*BRO*CLO - r241*SO*CLO - d(CLONO2)/dt = r66*M*CLO*NO2 - - j66*CLONO2 - j67*CLONO2 - r262*CLONO2 - r267*CLONO2 - r273*CLONO2 - r65*CL*CLONO2 - - r67*O*CLONO2 - r68*OH*CLONO2 - r264*HCL*CLONO2 - r269*HCL*CLONO2 - r274*HCL*CLONO2 - d(CLY)/dt = 0 - d(CO)/dt = j21*CH2O + j22*CH2O + j23*CH3CHO + j25*CH3COCHO + .38*j28*CH4 + j30*CO2 + j32*GLYALD - + 2*j33*GLYOXAL + 1.34*j37*MACR + .7*j39*MVK + j41*ONITR + j80*OCS + r52*CL*CH2O + r88*BR*CH2O - + r114*CH3CL*CL + r126*CH2O*NO3 + r127*CH2O*O + r128*CH2O*OH + .63*r141*C2H4*O3 + r163*GLYOXAL*OH - + .56*r169*C3H6*O3 + r175*CH3COCHO*NO3 + r176*CH3COCHO*OH + .22*r188*MACRO2*CH3CO3 - + .11*r189*MACRO2*CH3O2 + .22*r191*MACRO2*NO3 + .22*r192*MACRO2*NO + .65*r194*MACR*O3 - + .56*r204*MVK*O3 + .62*r219*ISOP*O3 + .25*r224*XO2*CH3CO3 + .2*r225*XO2*CH3O2 + .25*r227*XO2*NO - + .5*r228*XO2*NO3 + r235*OCS*O + r236*OCS*OH - - r139*OH*CO - d(CO2)/dt = j26*CH3COOOH + .44*j28*CH4 + .4*j42*PAN + r139*CO*OH + 2*r152*CH3CO3*CH3CO3 - + .9*r153*CH3CO3*CH3O2 + r155*CH3CO3*NO + r156*CH3COOH*OH + .5*r157*CH3COOOH*OH - + .8*r162*GLYALD*OH + r163*GLYOXAL*OH + .2*r169*C3H6*O3 + 2*r197*MCO3*CH3CO3 + r198*MCO3*CH3O2 - + .45*r199*MCO3*HO2 + 2*r200*MCO3*MCO3 + .5*r203*M*MPAN*OH + .1*r204*MVK*O3 + r224*XO2*CH3CO3 - - j30*CO2 - d(DMS)/dt = - r233*NO3*DMS - r234*OH*DMS - r248*OH*DMS - d(dst_a1)/dt = 0 - d(dst_a2)/dt = 0 - d(dst_a3)/dt = 0 - d(E90)/dt = - r275*E90 - d(EOOH)/dt = r158*EO2*HO2 - - j31*EOOH - d(GLYALD)/dt = r161*O2*EO + .53*r188*MACRO2*CH3CO3 + .26*r189*MACRO2*CH3O2 + .53*r191*MACRO2*NO3 - + .53*r192*MACRO2*NO + .02*r217*ISOPO2*NO + .25*r224*XO2*CH3CO3 + .1*r225*XO2*CH3O2 - + .25*r227*XO2*NO + .25*r228*XO2*NO3 - - j32*GLYALD - r162*OH*GLYALD - d(GLYOXAL)/dt = .2*r162*GLYALD*OH + .02*r217*ISOPO2*NO + .25*r224*XO2*CH3CO3 + .1*r225*XO2*CH3O2 - + .25*r227*XO2*NO + .25*r228*XO2*NO3 - - j33*GLYOXAL - r163*OH*GLYOXAL - d(H)/dt = j2*H2O + 2*j3*H2O + 2*j21*CH2O + j27*CH3OOH + .33*j28*CH4 + j29*CH4 + j69*HBR + j73*HCL + j74*HF - + r1*O1D*H2 + r10*H2*O + r19*OH*H2 + r22*OH*O + r40*N*OH + r54*CL*H2 + r85*O1D*HCL - + r108*O1D*HBR + r128*CH2O*OH + r137*O1D*CH4 + r236*OCS*OH + r242*S*OH + r247*SO*OH - - r15*O2*M*H - r12*HO2*H - r13*HO2*H - r14*HO2*H - r18*O3*H - d(H2)/dt = j1*H2O + j22*CH2O + 1.4400001*j28*CH4 + r12*H*HO2 + r138*O1D*CH4 - - r1*O1D*H2 - r10*O*H2 - r19*OH*H2 - r54*CL*H2 - d(H2402)/dt = - j68*H2402 - r106*O1D*H2402 - d(H2O2)/dt = r25*M*OH*OH + r26*HO2*HO2 - - j4*H2O2 - r11*O*H2O2 - r20*OH*H2O2 - r55*CL*H2O2 - d(H2SO4)/dt = r249*SO3*H2O - - j79*H2SO4 - d(HBR)/dt = r88*BR*CH2O + r89*BR*HO2 - - j69*HBR - r101*O*HBR - r102*OH*HBR - r107*O1D*HBR - r108*O1D*HBR - d(HCFC141B)/dt = - j70*HCFC141B - r118*OH*HCFC141B - r123*O1D*HCFC141B - d(HCFC142B)/dt = - j71*HCFC142B - r119*OH*HCFC142B - r124*O1D*HCFC142B - d(HCFC22)/dt = - j72*HCFC22 - r120*OH*HCFC22 - r125*O1D*HCFC22 - d(HCL)/dt = r52*CL*CH2O + r53*CL*CH4 + r54*CL*H2 + r55*CL*H2O2 + r56*CL*HO2 + r71*CLO*OH + r74*HOCL*CL - + r109*CH2BR2*CL + r111*CH3BR*CL + 2*r114*CH3CL*CL + r116*CHBR3*CL + r148*C2H6*CL - - j73*HCL - r72*O*HCL - r73*OH*HCL - r84*O1D*HCL - r85*O1D*HCL - r259*HOCL*HCL - - r264*CLONO2*HCL - r265*HOCL*HCL - r266*HOBR*HCL - r269*CLONO2*HCL - r270*HOCL*HCL - - r271*HOBR*HCL - r274*CLONO2*HCL - d(HF)/dt = - j74*HF - d(HNO3)/dt = 2*r252*N2O5 + .5*r254*NO2 + r255*NO3 + r256*ONITR + 2*r258*N2O5 + r260*BRONO2 + 2*r261*N2O5 - + r262*CLONO2 + r263*BRONO2 + r267*CLONO2 + r268*BRONO2 + 2*r272*N2O5 + r273*CLONO2 - + r48*M*NO2*OH + r126*CH2O*NO3 + r150*CH3CHO*NO3 + r175*CH3COCHO*NO3 + r233*DMS*NO3 - + r264*CLONO2*HCL + r269*CLONO2*HCL + r274*CLONO2*HCL - - j9*HNO3 - r49*OH*HNO3 - d(HO2NO2)/dt = r46*M*NO2*HO2 - - j10*HO2NO2 - j11*HO2NO2 - r50*M*HO2NO2 - r27*OH*HO2NO2 - d(HOBR)/dt = r260*BRONO2 + r263*BRONO2 + r268*BRONO2 + r95*BRO*HO2 - - j75*HOBR - r103*O*HOBR - r266*HCL*HOBR - r271*HCL*HOBR - d(HOCL)/dt = r262*CLONO2 + r267*CLONO2 + r273*CLONO2 + r63*CLO*HO2 + r68*CLONO2*OH - - j76*HOCL - r74*CL*HOCL - r75*O*HOCL - r76*OH*HOCL - r259*HCL*HOCL - r265*HCL*HOCL - - r270*HCL*HOCL - d(HYAC)/dt = .5*r181*POOH*OH + .2*r182*RO2*CH3O2 + .22*r188*MACRO2*CH3CO3 + .23*r189*MACRO2*CH3O2 - + .22*r191*MACRO2*NO3 + .22*r192*MACRO2*NO + .5*r203*M*MPAN*OH + .02*r217*ISOPO2*NO - + .25*r224*XO2*CH3CO3 + .1*r225*XO2*CH3O2 + .25*r227*XO2*NO + .25*r228*XO2*NO3 - - j34*HYAC - r177*OH*HYAC - d(HYDRALD)/dt = .4*r214*ISOPO2*CH3CO3 + .3*r215*ISOPO2*CH3O2 + .33*r217*ISOPO2*NO + .4*r218*ISOPO2*NO3 - + r222*ONITR*NO3 + r223*ONITR*OH - - r209*OH*HYDRALD - d(ISOP)/dt = - r210*NO3*ISOP - r219*O3*ISOP - r220*OH*ISOP - d(ISOPNO3)/dt = r210*ISOP*NO3 - - r211*HO2*ISOPNO3 - r212*NO*ISOPNO3 - r213*NO3*ISOPNO3 - d(ISOPOOH)/dt = r216*ISOPO2*HO2 - - j35*ISOPOOH - r221*OH*ISOPOOH - d(MACR)/dt = .288*j35*ISOPOOH + .167*r211*ISOPNO3*HO2 + .167*r212*ISOPNO3*NO + .167*r213*ISOPNO3*NO3 - + .25*r214*ISOPO2*CH3CO3 + .19*r215*ISOPO2*CH3O2 + .23*r217*ISOPO2*NO + .25*r218*ISOPO2*NO3 - + .3*r219*ISOP*O3 + 1.122*r231*TERP*O3 - - j36*MACR - j37*MACR - r194*O3*MACR - r195*OH*MACR - d(MACROOH)/dt = r190*MACRO2*HO2 - - r196*OH*MACROOH - d(MPAN)/dt = r206*M*MCO3*NO2 - - j38*MPAN - r207*M*MPAN - r203*M*OH*MPAN - d(MVK)/dt = .402*j35*ISOPOOH + .039*r211*ISOPNO3*HO2 + .039*r212*ISOPNO3*NO + .039*r213*ISOPNO3*NO3 - + .35*r214*ISOPO2*CH3CO3 + .26*r215*ISOPO2*CH3O2 + .32*r217*ISOPO2*NO + .35*r218*ISOPO2*NO3 - + .2*r219*ISOP*O3 + .442*r231*TERP*O3 - - j39*MVK - r204*O3*MVK - r205*OH*MVK - d(N)/dt = j15*NO - - r32*O2*N - r28*NO*N - r29*NO2*N - r30*NO2*N - r31*NO2*N - r40*OH*N - d(N2O)/dt = r29*N*NO2 - - j12*N2O - r44*O1D*N2O - r45*O1D*N2O - d(N2O5)/dt = r47*M*NO2*NO3 - - j13*N2O5 - j14*N2O5 - r51*M*N2O5 - r252*N2O5 - r258*N2O5 - r261*N2O5 - r272*N2O5 - d(ncl_a1)/dt = 0 - d(ncl_a2)/dt = 0 - d(ncl_a3)/dt = 0 - d(NH3)/dt = - r250*OH*NH3 - d(NH4)/dt = - r253*NH4 - d(NH_5)/dt = - r277*NH_5 - d(NH_50)/dt = - r276*NH_50 - d(NO)/dt = j14*N2O5 + j16*NO2 + j17*NO3 + r32*O2*N + .5*r254*NO2 + 2*r30*N*NO2 + r33*NO2*O + r40*N*OH - + 2*r44*O1D*N2O + r243*SO*NO2 - - j15*NO - r28*N*NO - r37*NO3*NO - r41*HO2*NO - r42*O3*NO - r43*M*O*NO - r64*CLO*NO - - r96*BRO*NO - r132*CH3O2*NO - r145*C2H5O2*NO - r155*CH3CO3*NO - r159*EO2*NO - r172*C3H7O2*NO - - r180*PO2*NO - r184*RO2*NO - r192*MACRO2*NO - r193*MACRO2*NO - r201*MCO3*NO - r212*ISOPNO3*NO - - r217*ISOPO2*NO - r227*XO2*NO - d(NO2)/dt = j9*HNO3 + j11*HO2NO2 + j13*N2O5 + j18*NO3 + j38*MPAN + j40*NOA + j41*ONITR + .6*j42*PAN - + j48*BRONO2 + j66*CLONO2 + r50*M*HO2NO2 + r51*M*N2O5 + r167*M*PAN + r207*M*MPAN - + r27*HO2NO2*OH + r36*NO3*HO2 + 2*r37*NO3*NO + r38*NO3*O + r39*NO3*OH + r41*NO*HO2 + r42*NO*O3 - + r43*M*NO*O + r64*CLO*NO + r96*BRO*NO + r132*CH3O2*NO + r145*C2H5O2*NO + r155*CH3CO3*NO - + r159*EO2*NO + r172*C3H7O2*NO + r178*NOA*OH + r180*PO2*NO + r184*RO2*NO + r191*MACRO2*NO3 - + r192*MACRO2*NO + r201*MCO3*NO + r202*MCO3*NO3 + .206*r211*ISOPNO3*HO2 + 1.206*r212*ISOPNO3*NO - + 1.206*r213*ISOPNO3*NO3 + .92*r217*ISOPO2*NO + r218*ISOPO2*NO3 + r222*ONITR*NO3 - + .4*r223*ONITR*OH + r227*XO2*NO + r228*XO2*NO3 + r230*TERP*NO3 - - j16*NO2 - r254*NO2 - r29*N*NO2 - r30*N*NO2 - r31*N*NO2 - r33*O*NO2 - r34*O3*NO2 - - r35*M*O*NO2 - r46*M*HO2*NO2 - r47*M*NO3*NO2 - r48*M*OH*NO2 - r66*M*CLO*NO2 - r97*M*BRO*NO2 - - r166*M*CH3CO3*NO2 - r206*M*MCO3*NO2 - r243*SO*NO2 - d(NO3)/dt = j10*HO2NO2 + j13*N2O5 + j14*N2O5 + .4*j42*PAN + j49*BRONO2 + j67*CLONO2 + r51*M*N2O5 - + r34*NO2*O3 + r35*M*NO2*O + r49*HNO3*OH + r65*CLONO2*CL + r67*CLONO2*O + r68*CLONO2*OH - + r98*BRONO2*O + r164*PAN*OH + .5*r203*M*MPAN*OH - - j17*NO3 - j18*NO3 - r255*NO3 - r36*HO2*NO3 - r37*NO*NO3 - r38*O*NO3 - r39*OH*NO3 - - r47*M*NO2*NO3 - r126*CH2O*NO3 - r150*CH3CHO*NO3 - r168*C3H6*NO3 - r175*CH3COCHO*NO3 - - r191*MACRO2*NO3 - r202*MCO3*NO3 - r210*ISOP*NO3 - r213*ISOPNO3*NO3 - r218*ISOPO2*NO3 - - r222*ONITR*NO3 - r228*XO2*NO3 - r230*TERP*NO3 - r233*DMS*NO3 - d(NOA)/dt = r168*C3H6*NO3 - - j40*NOA - r178*OH*NOA - d(num_a1)/dt = 0 - d(num_a2)/dt = 0 - d(num_a3)/dt = 0 - d(num_a4)/dt = 0 - d(num_a5)/dt = 0 - d(O)/dt = j5*O2 + 2*j6*O2 + j3*H2O + j8*O3 + j14*N2O5 + j15*NO + j16*NO2 + j18*NO3 + .18*j28*CH4 - + j30*CO2 + j47*BRO + j65*CLO + j77*OCLO + j81*SO + j82*SO2 + j83*SO3 + r3*N2*O1D + r4*O2*O1D - + r32*O2*N + r237*O2*S + r244*O2*SO + 2*r6*O1D*O3 + r14*H*HO2 + r24*OH*OH + r28*N*NO + r29*N*NO2 - + .765*r231*TERP*O3 - - r9*O2*M*O - r7*O3*O - 2*r8*M*O*O - r10*H2*O - r11*H2O2*O - r16*HO2*O - r22*OH*O - r33*NO2*O - - r35*M*NO2*O - r38*NO3*O - r43*M*NO*O - r67*CLONO2*O - r69*CLO*O - r72*HCL*O - r75*HOCL*O - - r98*BRONO2*O - r99*BRO*O - r101*HBR*O - r103*HOBR*O - r127*CH2O*O - r235*OCS*O - d(O3)/dt = r9*O2*M*O + .15*r154*CH3CO3*HO2 + .15*r199*MCO3*HO2 - - j7*O3 - j8*O3 - r5*O1D*O3 - r6*O1D*O3 - r7*O*O3 - r17*HO2*O3 - r18*H*O3 - r23*OH*O3 - - r34*NO2*O3 - r42*NO*O3 - r58*CL*O3 - r90*BR*O3 - r141*C2H4*O3 - r169*C3H6*O3 - r194*MACR*O3 - - r204*MVK*O3 - r219*ISOP*O3 - r231*TERP*O3 - r239*S*O3 - r245*SO*O3 - d(O3S)/dt = 0 - d(OCLO)/dt = r62*CLO*CLO + r92*BRO*CLO - - j77*OCLO - r246*SO*OCLO - d(OCS)/dt = - j80*OCS - r235*O*OCS - r236*OH*OCS - d(ONITR)/dt = .8*r193*MACRO2*NO + .794*r211*ISOPNO3*HO2 + .794*r212*ISOPNO3*NO + .794*r213*ISOPNO3*NO3 - + .08*r217*ISOPO2*NO - - j41*ONITR - r256*ONITR - r222*NO3*ONITR - r223*OH*ONITR - d(PAN)/dt = r166*M*CH3CO3*NO2 - - j42*PAN - r167*M*PAN - r164*OH*PAN - d(pom_a1)/dt = 0 - d(pom_a4)/dt = 0 - d(POOH)/dt = r179*PO2*HO2 - - j43*POOH - r181*OH*POOH - d(ROOH)/dt = .85*r183*RO2*HO2 - - j44*ROOH - r185*OH*ROOH - d(S)/dt = j80*OCS + j81*SO - - r237*O2*S - r239*O3*S - r242*OH*S - d(SF6)/dt = - j78*SF6 - d(SO)/dt = j82*SO2 + r237*O2*S + r235*OCS*O + r239*S*O3 + r242*S*OH - - j81*SO - r244*O2*SO - r240*BRO*SO - r241*CLO*SO - r243*NO2*SO - r245*O3*SO - r246*OCLO*SO - - r247*OH*SO - d(SO2)/dt = j83*SO3 + r244*O2*SO + r233*DMS*NO3 + r234*DMS*OH + r236*OCS*OH + r240*SO*BRO + r241*SO*CLO - + r243*SO*NO2 + r245*SO*O3 + r246*SO*OCLO + r247*SO*OH + .5*r248*DMS*OH - - j82*SO2 - r238*M*OH*SO2 - d(SO3)/dt = j79*H2SO4 + r238*M*SO2*OH - - j83*SO3 - r249*H2O*SO3 - d(so4_a1)/dt = 0 - d(so4_a2)/dt = 0 - d(so4_a3)/dt = 0 - d(so4_a5)/dt = 0 - d(soa_a1)/dt = - j84*soa_a1 - d(soa_a2)/dt = - j85*soa_a2 - d(SOAE)/dt = - r257*SOAE - d(SOAG)/dt = r257*SOAE - d(ST80_25)/dt = - r278*ST80_25 - d(TERP)/dt = - r230*NO3*TERP - r231*O3*TERP - r232*OH*TERP - d(XOOH)/dt = r226*XO2*HO2 - - j45*XOOH - r229*OH*XOOH - d(NHDEP)/dt = r253*NH4 + r250*NH3*OH - d(NDEP)/dt = .5*r203*M*MPAN*OH - d(C2H5O2)/dt = .5*r147*C2H5OOH*OH + r148*C2H6*CL + r149*C2H6*OH - - 2*r142*C2H5O2*C2H5O2 - r143*CH3O2*C2H5O2 - r144*HO2*C2H5O2 - r145*NO*C2H5O2 - d(C3H7O2)/dt = r173*C3H7OOH*OH + r174*C3H8*OH + 1.67*r208*BIGALK*OH - - r170*CH3O2*C3H7O2 - r171*HO2*C3H7O2 - r172*NO*C3H7O2 - d(CH3CO3)/dt = j24*CH3COCH3 + j25*CH3COCHO + j34*HYAC + 1.34*j36*MACR + .3*j39*MVK + j40*NOA + .6*j42*PAN - + j44*ROOH + r167*M*PAN + r150*CH3CHO*NO3 + r151*CH3CHO*OH + .5*r157*CH3COOOH*OH - + r175*CH3COCHO*NO3 + r176*CH3COCHO*OH + .3*r182*RO2*CH3O2 + .15*r183*RO2*HO2 + r184*RO2*NO - + .53*r188*MACRO2*CH3CO3 + .26*r189*MACRO2*CH3O2 + .53*r191*MACRO2*NO3 + .53*r192*MACRO2*NO - + .1*r194*MACR*O3 + r198*MCO3*CH3O2 + .45*r199*MCO3*HO2 + 2*r200*MCO3*MCO3 + r201*MCO3*NO - + r202*MCO3*NO3 + .28*r204*MVK*O3 + .08*r219*ISOP*O3 - - 2*r152*CH3CO3*CH3CO3 - r153*CH3O2*CH3CO3 - r154*HO2*CH3CO3 - r155*NO*CH3CO3 - - r166*M*NO2*CH3CO3 - r188*MACRO2*CH3CO3 - r214*ISOPO2*CH3CO3 - r224*XO2*CH3CO3 - d(CH3O2)/dt = j23*CH3CHO + j24*CH3COCH3 + j26*CH3COOOH + j29*CH4 + .3*j39*MVK + .4*j42*PAN + j59*CH3BR - + j61*CH3CL + r53*CL*CH4 + .7*r134*CH3OOH*OH + r135*CH4*OH + r136*O1D*CH4 - + 2*r152*CH3CO3*CH3CO3 + .9*r153*CH3CO3*CH3O2 + .45*r154*CH3CO3*HO2 + r155*CH3CO3*NO - + r156*CH3COOH*OH + .28*r169*C3H6*O3 + r188*MACRO2*CH3CO3 + r197*MCO3*CH3CO3 - + r214*ISOPO2*CH3CO3 + .05*r219*ISOP*O3 + r224*XO2*CH3CO3 - - r59*CLO*CH3O2 - 2*r129*CH3O2*CH3O2 - 2*r130*CH3O2*CH3O2 - r131*HO2*CH3O2 - r132*NO*CH3O2 - - r143*C2H5O2*CH3O2 - r153*CH3CO3*CH3O2 - r170*C3H7O2*CH3O2 - r182*RO2*CH3O2 - - r189*MACRO2*CH3O2 - r198*MCO3*CH3O2 - r215*ISOPO2*CH3O2 - r225*XO2*CH3O2 - d(EO)/dt = j31*EOOH + .75*r159*EO2*NO - - r160*EO - r161*O2*EO - d(EO2)/dt = r165*M*C2H4*OH - - r158*HO2*EO2 - r159*NO*EO2 - d(HO2)/dt = j11*HO2NO2 + j19*C2H5OOH + j20*C3H7OOH + j23*CH3CHO + j25*CH3COCHO + 2*j32*GLYALD - + 2*j33*GLYOXAL + j34*HYAC + j35*ISOPOOH + 1.34*j36*MACR + .66*j37*MACR + j41*ONITR + j43*POOH - + r15*O2*M*H + r50*M*HO2NO2 + r160*EO + r161*O2*EO + r11*H2O2*O + r20*OH*H2O2 + r23*OH*O3 - + r39*NO3*OH + r52*CL*CH2O + r55*CL*H2O2 + r59*CLO*CH3O2 + r70*CLO*OH + r88*BR*CH2O - + r100*BRO*OH + r111*CH3BR*CL + r112*CH3BR*OH + r114*CH3CL*CL + r115*CH3CL*OH + r126*CH2O*NO3 - + r127*CH2O*O + 2*r129*CH3O2*CH3O2 + r132*CH3O2*NO + r133*CH3OH*OH + r137*O1D*CH4 + r139*CO*OH - + .13*r141*C2H4*O3 + 1.2*r142*C2H5O2*C2H5O2 + r143*C2H5O2*CH3O2 + r145*C2H5O2*NO + r146*C2H5OH*OH - + .9*r153*CH3CO3*CH3O2 + .25*r159*EO2*NO + r162*GLYALD*OH + r163*GLYOXAL*OH + .28*r169*C3H6*O3 - + r170*C3H7O2*CH3O2 + r172*C3H7O2*NO + r177*HYAC*OH + r180*PO2*NO + .3*r182*RO2*CH3O2 - + .47*r188*MACRO2*CH3CO3 + .73*r189*MACRO2*CH3O2 + .47*r191*MACRO2*NO3 + .47*r192*MACRO2*NO - + .14*r194*MACR*O3 + .2*r196*MACROOH*OH + r198*MCO3*CH3O2 + .5*r203*M*MPAN*OH + .28*r204*MVK*O3 - + .794*r212*ISOPNO3*NO + .794*r213*ISOPNO3*NO3 + r214*ISOPO2*CH3CO3 + r215*ISOPO2*CH3O2 - + .92*r217*ISOPO2*NO + r218*ISOPO2*NO3 + .37*r219*ISOP*O3 + r222*ONITR*NO3 + r223*ONITR*OH - + r224*XO2*CH3CO3 + .8*r225*XO2*CH3O2 + r227*XO2*NO + r228*XO2*NO3 + r238*M*SO2*OH - + .5*r248*DMS*OH - - r251*HO2 - r12*H*HO2 - r13*H*HO2 - r14*H*HO2 - r16*O*HO2 - r17*O3*HO2 - r21*OH*HO2 - - 2*r26*HO2*HO2 - r36*NO3*HO2 - r41*NO*HO2 - r46*M*NO2*HO2 - r56*CL*HO2 - r57*CL*HO2 - - r63*CLO*HO2 - r89*BR*HO2 - r95*BRO*HO2 - r131*CH3O2*HO2 - r144*C2H5O2*HO2 - r154*CH3CO3*HO2 - - r158*EO2*HO2 - r171*C3H7O2*HO2 - r179*PO2*HO2 - r183*RO2*HO2 - r190*MACRO2*HO2 - r199*MCO3*HO2 - - r211*ISOPNO3*HO2 - r216*ISOPO2*HO2 - r226*XO2*HO2 - d(ISOPO2)/dt = r220*ISOP*OH + .2*r221*ISOPOOH*OH + 1.7*r230*TERP*NO3 + 1.64*r232*TERP*OH - - r214*CH3CO3*ISOPO2 - r215*CH3O2*ISOPO2 - r216*HO2*ISOPO2 - r217*NO*ISOPO2 - r218*NO3*ISOPO2 - d(MACRO2)/dt = .5*r195*MACR*OH + .2*r196*MACROOH*OH + r205*MVK*OH - - r188*CH3CO3*MACRO2 - r189*CH3O2*MACRO2 - r190*HO2*MACRO2 - r191*NO3*MACRO2 - r192*NO*MACRO2 - - r193*NO*MACRO2 - d(MCO3)/dt = .66*j36*MACR + j38*MPAN + r207*M*MPAN + .5*r195*MACR*OH + .5*r196*MACROOH*OH - - r197*CH3CO3*MCO3 - r198*CH3O2*MCO3 - r199*HO2*MCO3 - 2*r200*MCO3*MCO3 - r201*NO*MCO3 - - r202*NO3*MCO3 - r206*M*NO2*MCO3 - d(O1D)/dt = j5*O2 + j1*H2O + j7*O3 + j12*N2O - - r3*N2*O1D - r4*O2*O1D - r1*H2*O1D - r2*H2O*O1D - r5*O3*O1D - r6*O3*O1D - r44*N2O*O1D - - r45*N2O*O1D - r77*CCL4*O1D - r78*CF2CLBR*O1D - r79*CFC11*O1D - r80*CFC113*O1D - r81*CFC114*O1D - - r82*CFC115*O1D - r83*CFC12*O1D - r84*HCL*O1D - r85*HCL*O1D - r104*CF3BR*O1D - r105*CHBR3*O1D - - r106*H2402*O1D - r107*HBR*O1D - r108*HBR*O1D - r121*CH2BR2*O1D - r122*CH3BR*O1D - - r123*HCFC141B*O1D - r124*HCFC142B*O1D - r125*HCFC22*O1D - r136*CH4*O1D - r137*CH4*O1D - - r138*CH4*O1D - d(OH)/dt = j2*H2O + 2*j4*H2O2 + j9*HNO3 + j10*HO2NO2 + j19*C2H5OOH + j20*C3H7OOH + j26*CH3COOOH - + j27*CH3OOH + .33*j28*CH4 + j31*EOOH + j43*POOH + j44*ROOH + j45*XOOH + j75*HOBR + j76*HOCL - + .5*r254*NO2 + r1*O1D*H2 + 2*r2*O1D*H2O + r10*H2*O + r11*H2O2*O + 2*r13*H*HO2 + r16*HO2*O - + r17*HO2*O3 + r18*H*O3 + r36*NO3*HO2 + r41*NO*HO2 + r57*CL*HO2 + r72*HCL*O + r75*HOCL*O - + r84*O1D*HCL + r101*HBR*O + r103*HOBR*O + r107*O1D*HBR + r127*CH2O*O + .3*r134*CH3OOH*OH - + r136*O1D*CH4 + .13*r141*C2H4*O3 + .5*r147*C2H5OOH*OH + .45*r154*CH3CO3*HO2 + .36*r169*C3H6*O3 - + .5*r181*POOH*OH + .15*r183*RO2*HO2 + .24*r194*MACR*O3 + .1*r196*MACROOH*OH + .45*r199*MCO3*HO2 - + .36*r204*MVK*O3 + .206*r211*ISOPNO3*HO2 + .32*r219*ISOP*O3 + .5*r229*XOOH*OH - + 1.156*r231*TERP*O3 - - r19*H2*OH - r20*H2O2*OH - r21*HO2*OH - r22*O*OH - r23*O3*OH - 2*r24*OH*OH - 2*r25*M*OH*OH - - r27*HO2NO2*OH - r39*NO3*OH - r40*N*OH - r48*M*NO2*OH - r49*HNO3*OH - r68*CLONO2*OH - - r70*CLO*OH - r71*CLO*OH - r73*HCL*OH - r76*HOCL*OH - r100*BRO*OH - r102*HBR*OH - - r110*CH2BR2*OH - r112*CH3BR*OH - r113*CH3CCL3*OH - r115*CH3CL*OH - r117*CHBR3*OH - - r118*HCFC141B*OH - r119*HCFC142B*OH - r120*HCFC22*OH - r128*CH2O*OH - r133*CH3OH*OH - - r134*CH3OOH*OH - r135*CH4*OH - r139*CO*OH - r146*C2H5OH*OH - r147*C2H5OOH*OH - r149*C2H6*OH - - r151*CH3CHO*OH - r156*CH3COOH*OH - r157*CH3COOOH*OH - r162*GLYALD*OH - r163*GLYOXAL*OH - - r164*PAN*OH - r165*M*C2H4*OH - r173*C3H7OOH*OH - r174*C3H8*OH - r176*CH3COCHO*OH - r177*HYAC*OH - - r178*NOA*OH - r181*POOH*OH - r185*ROOH*OH - r186*M*C3H6*OH - r187*CH3COCH3*OH - r195*MACR*OH - - r196*MACROOH*OH - r203*M*MPAN*OH - r205*MVK*OH - r208*BIGALK*OH - r209*HYDRALD*OH - - r220*ISOP*OH - r221*ISOPOOH*OH - r223*ONITR*OH - r229*XOOH*OH - r232*TERP*OH - r234*DMS*OH - - r236*OCS*OH - r238*M*SO2*OH - r242*S*OH - r247*SO*OH - r248*DMS*OH - r250*NH3*OH - d(PO2)/dt = .5*r181*POOH*OH + r186*M*C3H6*OH - - r179*HO2*PO2 - r180*NO*PO2 - d(RO2)/dt = r185*ROOH*OH + r187*CH3COCH3*OH - - r182*CH3O2*RO2 - r183*HO2*RO2 - r184*NO*RO2 - d(XO2)/dt = r209*HYDRALD*OH + .8*r221*ISOPOOH*OH + .5*r229*XOOH*OH - - r224*CH3CO3*XO2 - r225*CH3O2*XO2 - r226*HO2*XO2 - r227*NO*XO2 - r228*NO3*XO2 - d(H2O)/dt = .05*j28*CH4 + j79*H2SO4 + r251*HO2 + r14*H*HO2 + r19*OH*H2 + r20*OH*H2O2 + r21*OH*HO2 - + r24*OH*OH + r27*HO2NO2*OH + r49*HNO3*OH + r73*HCL*OH + r76*HOCL*OH + r102*HBR*OH - + r110*CH2BR2*OH + r112*CH3BR*OH + r113*CH3CCL3*OH + r115*CH3CL*OH + r120*HCFC22*OH - + r128*CH2O*OH + r134*CH3OOH*OH + r135*CH4*OH + r149*C2H6*OH + r151*CH3CHO*OH + r156*CH3COOH*OH - + r157*CH3COOOH*OH + r173*C3H7OOH*OH + r174*C3H8*OH + r176*CH3COCHO*OH + r181*POOH*OH - + r185*ROOH*OH + r187*CH3COCH3*OH + .5*r195*MACR*OH + r250*NH3*OH + r259*HOCL*HCL - + r265*HOCL*HCL + r266*HOBR*HCL + r270*HOCL*HCL + r271*HOBR*HCL - - j1*H2O - j2*H2O - j3*H2O - r2*O1D*H2O - r249*SO3*H2O diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/m_rxt_id.F90 deleted file mode 100644 index b11d3b8ba0..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/m_rxt_id.F90 +++ /dev/null @@ -1,366 +0,0 @@ - module m_rxt_id - implicit none - integer, parameter :: rid_jh2o_b = 1 - integer, parameter :: rid_jh2o_a = 2 - integer, parameter :: rid_jh2o_c = 3 - integer, parameter :: rid_jh2o2 = 4 - integer, parameter :: rid_jo2_a = 5 - integer, parameter :: rid_jo2_b = 6 - integer, parameter :: rid_jo3_a = 7 - integer, parameter :: rid_jo3_b = 8 - integer, parameter :: rid_jhno3 = 9 - integer, parameter :: rid_jho2no2_a = 10 - integer, parameter :: rid_jho2no2_b = 11 - integer, parameter :: rid_jn2o = 12 - integer, parameter :: rid_jn2o5_a = 13 - integer, parameter :: rid_jn2o5_b = 14 - integer, parameter :: rid_jno = 15 - integer, parameter :: rid_jno2 = 16 - integer, parameter :: rid_jno3_b = 17 - integer, parameter :: rid_jno3_a = 18 - integer, parameter :: rid_jc2h5ooh = 19 - integer, parameter :: rid_jc3h7ooh = 20 - integer, parameter :: rid_jch2o_a = 21 - integer, parameter :: rid_jch2o_b = 22 - integer, parameter :: rid_jch3cho = 23 - integer, parameter :: rid_jacet = 24 - integer, parameter :: rid_jmgly = 25 - integer, parameter :: rid_jch3co3h = 26 - integer, parameter :: rid_jch3ooh = 27 - integer, parameter :: rid_jch4_b = 28 - integer, parameter :: rid_jch4_a = 29 - integer, parameter :: rid_jco2 = 30 - integer, parameter :: rid_jeooh = 31 - integer, parameter :: rid_jglyald = 32 - integer, parameter :: rid_jglyoxal = 33 - integer, parameter :: rid_jhyac = 34 - integer, parameter :: rid_jisopooh = 35 - integer, parameter :: rid_jmacr_a = 36 - integer, parameter :: rid_jmacr_b = 37 - integer, parameter :: rid_jmpan = 38 - integer, parameter :: rid_jmvk = 39 - integer, parameter :: rid_jnoa = 40 - integer, parameter :: rid_jonitr = 41 - integer, parameter :: rid_jpan = 42 - integer, parameter :: rid_jpooh = 43 - integer, parameter :: rid_jrooh = 44 - integer, parameter :: rid_jxooh = 45 - integer, parameter :: rid_jbrcl = 46 - integer, parameter :: rid_jbro = 47 - integer, parameter :: rid_jbrono2_b = 48 - integer, parameter :: rid_jbrono2_a = 49 - integer, parameter :: rid_jccl4 = 50 - integer, parameter :: rid_jcf2clbr = 51 - integer, parameter :: rid_jcf3br = 52 - integer, parameter :: rid_jcfcl3 = 53 - integer, parameter :: rid_jcfc113 = 54 - integer, parameter :: rid_jcfc114 = 55 - integer, parameter :: rid_jcfc115 = 56 - integer, parameter :: rid_jcf2cl2 = 57 - integer, parameter :: rid_jch2br2 = 58 - integer, parameter :: rid_jch3br = 59 - integer, parameter :: rid_jch3ccl3 = 60 - integer, parameter :: rid_jch3cl = 61 - integer, parameter :: rid_jchbr3 = 62 - integer, parameter :: rid_jcl2 = 63 - integer, parameter :: rid_jcl2o2 = 64 - integer, parameter :: rid_jclo = 65 - integer, parameter :: rid_jclono2_b = 66 - integer, parameter :: rid_jclono2_a = 67 - integer, parameter :: rid_jh2402 = 68 - integer, parameter :: rid_jhbr = 69 - integer, parameter :: rid_jhcfc141b = 70 - integer, parameter :: rid_jhcfc142b = 71 - integer, parameter :: rid_jhcfc22 = 72 - integer, parameter :: rid_jhcl = 73 - integer, parameter :: rid_jhf = 74 - integer, parameter :: rid_jhobr = 75 - integer, parameter :: rid_jhocl = 76 - integer, parameter :: rid_joclo = 77 - integer, parameter :: rid_jsf6 = 78 - integer, parameter :: rid_jh2so4 = 79 - integer, parameter :: rid_jocs = 80 - integer, parameter :: rid_jso = 81 - integer, parameter :: rid_jso2 = 82 - integer, parameter :: rid_jso3 = 83 - integer, parameter :: rid_jsoa_a1 = 84 - integer, parameter :: rid_jsoa_a2 = 85 - integer, parameter :: rid_O1D_H2 = 86 - integer, parameter :: rid_O1D_H2O = 87 - integer, parameter :: rid_O1D_N2 = 88 - integer, parameter :: rid_O1D_O2ab = 89 - integer, parameter :: rid_O1D_O3 = 90 - integer, parameter :: rid_O1D_O3a = 91 - integer, parameter :: rid_O_O3 = 92 - integer, parameter :: rid_usr_O_O = 93 - integer, parameter :: rid_usr_O_O2 = 94 - integer, parameter :: rid_H2_O = 95 - integer, parameter :: rid_H2O2_O = 96 - integer, parameter :: rid_H_HO2 = 97 - integer, parameter :: rid_H_HO2a = 98 - integer, parameter :: rid_H_HO2b = 99 - integer, parameter :: rid_H_O2 = 100 - integer, parameter :: rid_HO2_O = 101 - integer, parameter :: rid_HO2_O3 = 102 - integer, parameter :: rid_H_O3 = 103 - integer, parameter :: rid_OH_H2 = 104 - integer, parameter :: rid_OH_H2O2 = 105 - integer, parameter :: rid_OH_HO2 = 106 - integer, parameter :: rid_OH_O = 107 - integer, parameter :: rid_OH_O3 = 108 - integer, parameter :: rid_OH_OH = 109 - integer, parameter :: rid_OH_OH_M = 110 - integer, parameter :: rid_usr_HO2_HO2 = 111 - integer, parameter :: rid_HO2NO2_OH = 112 - integer, parameter :: rid_N_NO = 113 - integer, parameter :: rid_N_NO2a = 114 - integer, parameter :: rid_N_NO2b = 115 - integer, parameter :: rid_N_NO2c = 116 - integer, parameter :: rid_N_O2 = 117 - integer, parameter :: rid_NO2_O = 118 - integer, parameter :: rid_NO2_O3 = 119 - integer, parameter :: rid_NO2_O_M = 120 - integer, parameter :: rid_NO3_HO2 = 121 - integer, parameter :: rid_NO3_NO = 122 - integer, parameter :: rid_NO3_O = 123 - integer, parameter :: rid_NO3_OH = 124 - integer, parameter :: rid_N_OH = 125 - integer, parameter :: rid_NO_HO2 = 126 - integer, parameter :: rid_NO_O3 = 127 - integer, parameter :: rid_NO_O_M = 128 - integer, parameter :: rid_O1D_N2Oa = 129 - integer, parameter :: rid_O1D_N2Ob = 130 - integer, parameter :: rid_tag_NO2_HO2 = 131 - integer, parameter :: rid_tag_NO2_NO3 = 132 - integer, parameter :: rid_tag_NO2_OH = 133 - integer, parameter :: rid_usr_HNO3_OH = 134 - integer, parameter :: rid_usr_HO2NO2_M = 135 - integer, parameter :: rid_usr_N2O5_M = 136 - integer, parameter :: rid_CL_CH2O = 137 - integer, parameter :: rid_CL_CH4 = 138 - integer, parameter :: rid_CL_H2 = 139 - integer, parameter :: rid_CL_H2O2 = 140 - integer, parameter :: rid_CL_HO2a = 141 - integer, parameter :: rid_CL_HO2b = 142 - integer, parameter :: rid_CL_O3 = 143 - integer, parameter :: rid_CLO_CH3O2 = 144 - integer, parameter :: rid_CLO_CLOa = 145 - integer, parameter :: rid_CLO_CLOb = 146 - integer, parameter :: rid_CLO_CLOc = 147 - integer, parameter :: rid_CLO_HO2 = 148 - integer, parameter :: rid_CLO_NO = 149 - integer, parameter :: rid_CLONO2_CL = 150 - integer, parameter :: rid_CLO_NO2_M = 151 - integer, parameter :: rid_CLONO2_O = 152 - integer, parameter :: rid_CLONO2_OH = 153 - integer, parameter :: rid_CLO_O = 154 - integer, parameter :: rid_CLO_OHa = 155 - integer, parameter :: rid_CLO_OHb = 156 - integer, parameter :: rid_HCL_O = 157 - integer, parameter :: rid_HCL_OH = 158 - integer, parameter :: rid_HOCL_CL = 159 - integer, parameter :: rid_HOCL_O = 160 - integer, parameter :: rid_HOCL_OH = 161 - integer, parameter :: rid_O1D_CCL4 = 162 - integer, parameter :: rid_O1D_CF2CLBR = 163 - integer, parameter :: rid_O1D_CFC11 = 164 - integer, parameter :: rid_O1D_CFC113 = 165 - integer, parameter :: rid_O1D_CFC114 = 166 - integer, parameter :: rid_O1D_CFC115 = 167 - integer, parameter :: rid_O1D_CFC12 = 168 - integer, parameter :: rid_O1D_HCLa = 169 - integer, parameter :: rid_O1D_HCLb = 170 - integer, parameter :: rid_tag_CLO_CLO_M = 171 - integer, parameter :: rid_usr_CL2O2_M = 172 - integer, parameter :: rid_BR_CH2O = 173 - integer, parameter :: rid_BR_HO2 = 174 - integer, parameter :: rid_BR_O3 = 175 - integer, parameter :: rid_BRO_BRO = 176 - integer, parameter :: rid_BRO_CLOa = 177 - integer, parameter :: rid_BRO_CLOb = 178 - integer, parameter :: rid_BRO_CLOc = 179 - integer, parameter :: rid_BRO_HO2 = 180 - integer, parameter :: rid_BRO_NO = 181 - integer, parameter :: rid_BRO_NO2_M = 182 - integer, parameter :: rid_BRONO2_O = 183 - integer, parameter :: rid_BRO_O = 184 - integer, parameter :: rid_BRO_OH = 185 - integer, parameter :: rid_HBR_O = 186 - integer, parameter :: rid_HBR_OH = 187 - integer, parameter :: rid_HOBR_O = 188 - integer, parameter :: rid_O1D_CF3BR = 189 - integer, parameter :: rid_O1D_CHBR3 = 190 - integer, parameter :: rid_O1D_H2402 = 191 - integer, parameter :: rid_O1D_HBRa = 192 - integer, parameter :: rid_O1D_HBRb = 193 - integer, parameter :: rid_CH2BR2_CL = 194 - integer, parameter :: rid_CH2BR2_OH = 195 - integer, parameter :: rid_CH3BR_CL = 196 - integer, parameter :: rid_CH3BR_OH = 197 - integer, parameter :: rid_CH3CCL3_OH = 198 - integer, parameter :: rid_CH3CL_CL = 199 - integer, parameter :: rid_CH3CL_OH = 200 - integer, parameter :: rid_CHBR3_CL = 201 - integer, parameter :: rid_CHBR3_OH = 202 - integer, parameter :: rid_HCFC141B_OH = 203 - integer, parameter :: rid_HCFC142B_OH = 204 - integer, parameter :: rid_HCFC22_OH = 205 - integer, parameter :: rid_O1D_CH2BR2 = 206 - integer, parameter :: rid_O1D_CH3BR = 207 - integer, parameter :: rid_O1D_HCFC141B = 208 - integer, parameter :: rid_O1D_HCFC142B = 209 - integer, parameter :: rid_O1D_HCFC22 = 210 - integer, parameter :: rid_CH2O_NO3 = 211 - integer, parameter :: rid_CH2O_O = 212 - integer, parameter :: rid_CH2O_OH = 213 - integer, parameter :: rid_CH3O2_CH3O2a = 214 - integer, parameter :: rid_CH3O2_CH3O2b = 215 - integer, parameter :: rid_CH3O2_HO2 = 216 - integer, parameter :: rid_CH3O2_NO = 217 - integer, parameter :: rid_CH3OH_OH = 218 - integer, parameter :: rid_CH3OOH_OH = 219 - integer, parameter :: rid_CH4_OH = 220 - integer, parameter :: rid_O1D_CH4a = 221 - integer, parameter :: rid_O1D_CH4b = 222 - integer, parameter :: rid_O1D_CH4c = 223 - integer, parameter :: rid_usr_CO_OH = 224 - integer, parameter :: rid_C2H4_CL_M = 225 - integer, parameter :: rid_C2H4_O3 = 226 - integer, parameter :: rid_C2H5O2_C2H5O2 = 227 - integer, parameter :: rid_C2H5O2_CH3O2 = 228 - integer, parameter :: rid_C2H5O2_HO2 = 229 - integer, parameter :: rid_C2H5O2_NO = 230 - integer, parameter :: rid_C2H5OH_OH = 231 - integer, parameter :: rid_C2H5OOH_OH = 232 - integer, parameter :: rid_C2H6_CL = 233 - integer, parameter :: rid_C2H6_OH = 234 - integer, parameter :: rid_CH3CHO_NO3 = 235 - integer, parameter :: rid_CH3CHO_OH = 236 - integer, parameter :: rid_CH3CO3_CH3CO3 = 237 - integer, parameter :: rid_CH3CO3_CH3O2 = 238 - integer, parameter :: rid_CH3CO3_HO2 = 239 - integer, parameter :: rid_CH3CO3_NO = 240 - integer, parameter :: rid_CH3COOH_OH = 241 - integer, parameter :: rid_CH3COOOH_OH = 242 - integer, parameter :: rid_EO2_HO2 = 243 - integer, parameter :: rid_EO2_NO = 244 - integer, parameter :: rid_EO_M = 245 - integer, parameter :: rid_EO_O2 = 246 - integer, parameter :: rid_GLYALD_OH = 247 - integer, parameter :: rid_GLYOXAL_OH = 248 - integer, parameter :: rid_PAN_OH = 249 - integer, parameter :: rid_tag_C2H4_OH = 250 - integer, parameter :: rid_tag_CH3CO3_NO2 = 251 - integer, parameter :: rid_usr_PAN_M = 252 - integer, parameter :: rid_C3H6_NO3 = 253 - integer, parameter :: rid_C3H6_O3 = 254 - integer, parameter :: rid_C3H7O2_CH3O2 = 255 - integer, parameter :: rid_C3H7O2_HO2 = 256 - integer, parameter :: rid_C3H7O2_NO = 257 - integer, parameter :: rid_C3H7OOH_OH = 258 - integer, parameter :: rid_C3H8_OH = 259 - integer, parameter :: rid_CH3COCHO_NO3 = 260 - integer, parameter :: rid_CH3COCHO_OH = 261 - integer, parameter :: rid_HYAC_OH = 262 - integer, parameter :: rid_NOA_OH = 263 - integer, parameter :: rid_PO2_HO2 = 264 - integer, parameter :: rid_PO2_NO = 265 - integer, parameter :: rid_POOH_OH = 266 - integer, parameter :: rid_RO2_CH3O2 = 267 - integer, parameter :: rid_RO2_HO2 = 268 - integer, parameter :: rid_RO2_NO = 269 - integer, parameter :: rid_ROOH_OH = 270 - integer, parameter :: rid_tag_C3H6_OH = 271 - integer, parameter :: rid_usr_CH3COCH3_OH = 272 - integer, parameter :: rid_MACRO2_CH3CO3 = 273 - integer, parameter :: rid_MACRO2_CH3O2 = 274 - integer, parameter :: rid_MACRO2_HO2 = 275 - integer, parameter :: rid_MACRO2_NO3 = 276 - integer, parameter :: rid_MACRO2_NOa = 277 - integer, parameter :: rid_MACRO2_NOb = 278 - integer, parameter :: rid_MACR_O3 = 279 - integer, parameter :: rid_MACR_OH = 280 - integer, parameter :: rid_MACROOH_OH = 281 - integer, parameter :: rid_MCO3_CH3CO3 = 282 - integer, parameter :: rid_MCO3_CH3O2 = 283 - integer, parameter :: rid_MCO3_HO2 = 284 - integer, parameter :: rid_MCO3_MCO3 = 285 - integer, parameter :: rid_MCO3_NO = 286 - integer, parameter :: rid_MCO3_NO3 = 287 - integer, parameter :: rid_MPAN_OH_M = 288 - integer, parameter :: rid_MVK_O3 = 289 - integer, parameter :: rid_MVK_OH = 290 - integer, parameter :: rid_tag_MCO3_NO2 = 291 - integer, parameter :: rid_usr_MPAN_M = 292 - integer, parameter :: rid_BIGALK_OH = 293 - integer, parameter :: rid_HYDRALD_OH = 294 - integer, parameter :: rid_ISOP_NO3 = 295 - integer, parameter :: rid_ISOPNO3_HO2 = 296 - integer, parameter :: rid_ISOPNO3_NO = 297 - integer, parameter :: rid_ISOPNO3_NO3 = 298 - integer, parameter :: rid_ISOPO2_CH3CO3 = 299 - integer, parameter :: rid_ISOPO2_CH3O2 = 300 - integer, parameter :: rid_ISOPO2_HO2 = 301 - integer, parameter :: rid_ISOPO2_NO = 302 - integer, parameter :: rid_ISOPO2_NO3 = 303 - integer, parameter :: rid_ISOP_O3 = 304 - integer, parameter :: rid_ISOP_OH = 305 - integer, parameter :: rid_ISOPOOH_OH = 306 - integer, parameter :: rid_ONITR_NO3 = 307 - integer, parameter :: rid_ONITR_OH = 308 - integer, parameter :: rid_XO2_CH3CO3 = 309 - integer, parameter :: rid_XO2_CH3O2 = 310 - integer, parameter :: rid_XO2_HO2 = 311 - integer, parameter :: rid_XO2_NO = 312 - integer, parameter :: rid_XO2_NO3 = 313 - integer, parameter :: rid_XOOH_OH = 314 - integer, parameter :: rid_TERP_NO3 = 315 - integer, parameter :: rid_TERP_O3 = 316 - integer, parameter :: rid_TERP_OH = 317 - integer, parameter :: rid_DMS_NO3 = 318 - integer, parameter :: rid_DMS_OHa = 319 - integer, parameter :: rid_OCS_O = 320 - integer, parameter :: rid_OCS_OH = 321 - integer, parameter :: rid_S_O2 = 322 - integer, parameter :: rid_SO2_OH_M = 323 - integer, parameter :: rid_S_O3 = 324 - integer, parameter :: rid_SO_BRO = 325 - integer, parameter :: rid_SO_CLO = 326 - integer, parameter :: rid_S_OH = 327 - integer, parameter :: rid_SO_NO2 = 328 - integer, parameter :: rid_SO_O2 = 329 - integer, parameter :: rid_SO_O3 = 330 - integer, parameter :: rid_SO_OCLO = 331 - integer, parameter :: rid_SO_OH = 332 - integer, parameter :: rid_usr_DMS_OH = 333 - integer, parameter :: rid_usr_SO3_H2O = 334 - integer, parameter :: rid_NH3_OH = 335 - integer, parameter :: rid_usr_HO2_aer = 336 - integer, parameter :: rid_usr_N2O5_aer = 337 - integer, parameter :: rid_usr_NH4_strat_tau = 338 - integer, parameter :: rid_usr_NO2_aer = 339 - integer, parameter :: rid_usr_NO3_aer = 340 - integer, parameter :: rid_usr_ONITR_aer = 341 - integer, parameter :: rid_SOAE_tau = 342 - integer, parameter :: rid_het1 = 343 - integer, parameter :: rid_het10 = 344 - integer, parameter :: rid_het11 = 345 - integer, parameter :: rid_het12 = 346 - integer, parameter :: rid_het13 = 347 - integer, parameter :: rid_het14 = 348 - integer, parameter :: rid_het15 = 349 - integer, parameter :: rid_het16 = 350 - integer, parameter :: rid_het17 = 351 - integer, parameter :: rid_het2 = 352 - integer, parameter :: rid_het3 = 353 - integer, parameter :: rid_het4 = 354 - integer, parameter :: rid_het5 = 355 - integer, parameter :: rid_het6 = 356 - integer, parameter :: rid_het7 = 357 - integer, parameter :: rid_het8 = 358 - integer, parameter :: rid_het9 = 359 - integer, parameter :: rid_E90_tau = 360 - integer, parameter :: rid_NH_50_tau = 361 - integer, parameter :: rid_NH_5_tau = 362 - integer, parameter :: rid_ST80_25_tau = 363 - end module m_rxt_id diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/m_spc_id.F90 deleted file mode 100644 index 83897dbc50..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/m_spc_id.F90 +++ /dev/null @@ -1,144 +0,0 @@ - module m_spc_id - implicit none - integer, parameter :: id_bc_a1 = 1 - integer, parameter :: id_bc_a4 = 2 - integer, parameter :: id_BIGALK = 3 - integer, parameter :: id_BR = 4 - integer, parameter :: id_BRCL = 5 - integer, parameter :: id_BRO = 6 - integer, parameter :: id_BRONO2 = 7 - integer, parameter :: id_BRY = 8 - integer, parameter :: id_C2H4 = 9 - integer, parameter :: id_C2H5OH = 10 - integer, parameter :: id_C2H5OOH = 11 - integer, parameter :: id_C2H6 = 12 - integer, parameter :: id_C3H6 = 13 - integer, parameter :: id_C3H7OOH = 14 - integer, parameter :: id_C3H8 = 15 - integer, parameter :: id_CCL4 = 16 - integer, parameter :: id_CF2CLBR = 17 - integer, parameter :: id_CF3BR = 18 - integer, parameter :: id_CFC11 = 19 - integer, parameter :: id_CFC113 = 20 - integer, parameter :: id_CFC114 = 21 - integer, parameter :: id_CFC115 = 22 - integer, parameter :: id_CFC12 = 23 - integer, parameter :: id_CH2BR2 = 24 - integer, parameter :: id_CH2O = 25 - integer, parameter :: id_CH3BR = 26 - integer, parameter :: id_CH3CCL3 = 27 - integer, parameter :: id_CH3CHO = 28 - integer, parameter :: id_CH3CL = 29 - integer, parameter :: id_CH3COCH3 = 30 - integer, parameter :: id_CH3COCHO = 31 - integer, parameter :: id_CH3COOH = 32 - integer, parameter :: id_CH3COOOH = 33 - integer, parameter :: id_CH3OH = 34 - integer, parameter :: id_CH3OOH = 35 - integer, parameter :: id_CH4 = 36 - integer, parameter :: id_CHBR3 = 37 - integer, parameter :: id_CL = 38 - integer, parameter :: id_CL2 = 39 - integer, parameter :: id_CL2O2 = 40 - integer, parameter :: id_CLO = 41 - integer, parameter :: id_CLONO2 = 42 - integer, parameter :: id_CLY = 43 - integer, parameter :: id_CO = 44 - integer, parameter :: id_CO2 = 45 - integer, parameter :: id_DMS = 46 - integer, parameter :: id_dst_a1 = 47 - integer, parameter :: id_dst_a2 = 48 - integer, parameter :: id_dst_a3 = 49 - integer, parameter :: id_E90 = 50 - integer, parameter :: id_EOOH = 51 - integer, parameter :: id_GLYALD = 52 - integer, parameter :: id_GLYOXAL = 53 - integer, parameter :: id_H = 54 - integer, parameter :: id_H2 = 55 - integer, parameter :: id_H2402 = 56 - integer, parameter :: id_H2O2 = 57 - integer, parameter :: id_H2SO4 = 58 - integer, parameter :: id_HBR = 59 - integer, parameter :: id_HCFC141B = 60 - integer, parameter :: id_HCFC142B = 61 - integer, parameter :: id_HCFC22 = 62 - integer, parameter :: id_HCL = 63 - integer, parameter :: id_HF = 64 - integer, parameter :: id_HNO3 = 65 - integer, parameter :: id_HO2NO2 = 66 - integer, parameter :: id_HOBR = 67 - integer, parameter :: id_HOCL = 68 - integer, parameter :: id_HYAC = 69 - integer, parameter :: id_HYDRALD = 70 - integer, parameter :: id_ISOP = 71 - integer, parameter :: id_ISOPNO3 = 72 - integer, parameter :: id_ISOPOOH = 73 - integer, parameter :: id_MACR = 74 - integer, parameter :: id_MACROOH = 75 - integer, parameter :: id_MPAN = 76 - integer, parameter :: id_MVK = 77 - integer, parameter :: id_N = 78 - integer, parameter :: id_N2O = 79 - integer, parameter :: id_N2O5 = 80 - integer, parameter :: id_ncl_a1 = 81 - integer, parameter :: id_ncl_a2 = 82 - integer, parameter :: id_ncl_a3 = 83 - integer, parameter :: id_NH3 = 84 - integer, parameter :: id_NH4 = 85 - integer, parameter :: id_NH_5 = 86 - integer, parameter :: id_NH_50 = 87 - integer, parameter :: id_NO = 88 - integer, parameter :: id_NO2 = 89 - integer, parameter :: id_NO3 = 90 - integer, parameter :: id_NOA = 91 - integer, parameter :: id_num_a1 = 92 - integer, parameter :: id_num_a2 = 93 - integer, parameter :: id_num_a3 = 94 - integer, parameter :: id_num_a4 = 95 - integer, parameter :: id_num_a5 = 96 - integer, parameter :: id_O = 97 - integer, parameter :: id_O3 = 98 - integer, parameter :: id_O3S = 99 - integer, parameter :: id_OCLO = 100 - integer, parameter :: id_OCS = 101 - integer, parameter :: id_ONITR = 102 - integer, parameter :: id_PAN = 103 - integer, parameter :: id_pom_a1 = 104 - integer, parameter :: id_pom_a4 = 105 - integer, parameter :: id_POOH = 106 - integer, parameter :: id_ROOH = 107 - integer, parameter :: id_S = 108 - integer, parameter :: id_SF6 = 109 - integer, parameter :: id_SO = 110 - integer, parameter :: id_SO2 = 111 - integer, parameter :: id_SO3 = 112 - integer, parameter :: id_so4_a1 = 113 - integer, parameter :: id_so4_a2 = 114 - integer, parameter :: id_so4_a3 = 115 - integer, parameter :: id_so4_a5 = 116 - integer, parameter :: id_soa_a1 = 117 - integer, parameter :: id_soa_a2 = 118 - integer, parameter :: id_SOAE = 119 - integer, parameter :: id_SOAG = 120 - integer, parameter :: id_ST80_25 = 121 - integer, parameter :: id_TERP = 122 - integer, parameter :: id_XOOH = 123 - integer, parameter :: id_NHDEP = 124 - integer, parameter :: id_NDEP = 125 - integer, parameter :: id_C2H5O2 = 126 - integer, parameter :: id_C3H7O2 = 127 - integer, parameter :: id_CH3CO3 = 128 - integer, parameter :: id_CH3O2 = 129 - integer, parameter :: id_EO = 130 - integer, parameter :: id_EO2 = 131 - integer, parameter :: id_HO2 = 132 - integer, parameter :: id_ISOPO2 = 133 - integer, parameter :: id_MACRO2 = 134 - integer, parameter :: id_MCO3 = 135 - integer, parameter :: id_O1D = 136 - integer, parameter :: id_OH = 137 - integer, parameter :: id_PO2 = 138 - integer, parameter :: id_RO2 = 139 - integer, parameter :: id_XO2 = 140 - integer, parameter :: id_H2O = 141 - end module m_spc_id diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_lin_matrix.F90 deleted file mode 100644 index e182d93817..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lin_matrix.F90 +++ /dev/null @@ -1,396 +0,0 @@ - module mo_lin_matrix - use chem_mods, only: veclen - private - public :: linmat - contains - subroutine linmat01( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k - do k = 1,avec_len - mat(k,1) = -( het_rates(k,1) ) - mat(k,2) = -( het_rates(k,2) ) - mat(k,39) = -( het_rates(k,3) ) - mat(k,800) = -( het_rates(k,4) ) - mat(k,109) = rxt(k,46) - mat(k,961) = rxt(k,47) - mat(k,271) = rxt(k,49) - mat(k,74) = rxt(k,51) - mat(k,52) = rxt(k,52) - mat(k,228) = 2.000_r8*rxt(k,58) - mat(k,294) = rxt(k,59) - mat(k,183) = 3.000_r8*rxt(k,62) - mat(k,43) = 2.000_r8*rxt(k,68) - mat(k,410) = rxt(k,69) - mat(k,353) = rxt(k,75) - mat(k,108) = -( rxt(k,46) + het_rates(k,5) ) - mat(k,966) = -( rxt(k,47) + het_rates(k,6) ) - mat(k,273) = rxt(k,48) - mat(k,268) = -( rxt(k,48) + rxt(k,49) + rxt(k,345) + rxt(k,348) + rxt(k,353) & - + het_rates(k,7) ) - mat(k,3) = -( het_rates(k,8) ) - mat(k,220) = -( het_rates(k,9) ) - mat(k,111) = -( het_rates(k,10) ) - mat(k,147) = -( rxt(k,19) + het_rates(k,11) ) - mat(k,130) = -( het_rates(k,12) ) - mat(k,530) = -( het_rates(k,13) ) - mat(k,709) = .700_r8*rxt(k,39) - mat(k,188) = -( rxt(k,20) + het_rates(k,14) ) - mat(k,69) = -( het_rates(k,15) ) - mat(k,48) = -( rxt(k,50) + het_rates(k,16) ) - mat(k,73) = -( rxt(k,51) + het_rates(k,17) ) - mat(k,51) = -( rxt(k,52) + het_rates(k,18) ) - mat(k,54) = -( rxt(k,53) + het_rates(k,19) ) - mat(k,57) = -( rxt(k,54) + het_rates(k,20) ) - mat(k,60) = -( rxt(k,55) + het_rates(k,21) ) - mat(k,63) = -( rxt(k,56) + het_rates(k,22) ) - mat(k,66) = -( rxt(k,57) + het_rates(k,23) ) - mat(k,227) = -( rxt(k,58) + het_rates(k,24) ) - mat(k,783) = -( rxt(k,21) + rxt(k,22) + het_rates(k,25) ) - mat(k,203) = rxt(k,27) - mat(k,482) = .180_r8*rxt(k,28) - mat(k,461) = rxt(k,32) - mat(k,506) = rxt(k,34) - mat(k,245) = .690_r8*rxt(k,35) - mat(k,565) = 1.340_r8*rxt(k,36) - mat(k,197) = rxt(k,40) - mat(k,470) = rxt(k,41) - mat(k,264) = rxt(k,43) - mat(k,209) = rxt(k,44) - mat(k,122) = 2.000_r8*rxt(k,245) - mat(k,292) = -( rxt(k,59) + het_rates(k,26) ) - mat(k,77) = -( rxt(k,60) + het_rates(k,27) ) - mat(k,550) = -( rxt(k,23) + het_rates(k,28) ) - mat(k,149) = rxt(k,19) - mat(k,263) = rxt(k,43) - mat(k,168) = -( rxt(k,61) + het_rates(k,29) ) - mat(k,360) = -( rxt(k,24) + het_rates(k,30) ) - mat(k,189) = .820_r8*rxt(k,20) - mat(k,591) = -( rxt(k,25) + het_rates(k,31) ) - mat(k,318) = -( het_rates(k,32) ) - mat(k,301) = -( rxt(k,26) + het_rates(k,33) ) - mat(k,248) = -( het_rates(k,34) ) - mat(k,200) = -( rxt(k,27) + het_rates(k,35) ) - mat(k,477) = -( rxt(k,28) + rxt(k,29) + het_rates(k,36) ) - mat(k,182) = -( rxt(k,62) + het_rates(k,37) ) - mat(k,856) = -( het_rates(k,38) ) - mat(k,110) = rxt(k,46) - mat(k,49) = 4.000_r8*rxt(k,50) - mat(k,75) = rxt(k,51) - mat(k,55) = 3.000_r8*rxt(k,53) - mat(k,58) = 3.000_r8*rxt(k,54) - mat(k,61) = 2.000_r8*rxt(k,55) - mat(k,64) = rxt(k,56) - mat(k,67) = 2.000_r8*rxt(k,57) - mat(k,78) = 3.000_r8*rxt(k,60) - mat(k,172) = rxt(k,61) - mat(k,88) = 2.000_r8*rxt(k,63) - mat(k,37) = 2.000_r8*rxt(k,64) - mat(k,1234) = rxt(k,65) - mat(k,450) = rxt(k,67) - mat(k,90) = rxt(k,70) - mat(k,94) = rxt(k,71) - mat(k,104) = rxt(k,72) - mat(k,821) = rxt(k,73) - mat(k,403) = rxt(k,76) - mat(k,87) = -( rxt(k,63) + het_rates(k,39) ) - mat(k,36) = -( rxt(k,64) + rxt(k,172) + het_rates(k,40) ) - mat(k,1243) = -( rxt(k,65) + het_rates(k,41) ) - mat(k,455) = rxt(k,66) - mat(k,156) = rxt(k,77) - mat(k,38) = 2.000_r8*rxt(k,172) - mat(k,448) = -( rxt(k,66) + rxt(k,67) + rxt(k,347) + rxt(k,352) + rxt(k,358) & - + het_rates(k,42) ) - mat(k,4) = -( het_rates(k,43) ) - mat(k,510) = -( het_rates(k,44) ) - mat(k,780) = rxt(k,21) + rxt(k,22) - mat(k,549) = rxt(k,23) - mat(k,590) = rxt(k,25) - mat(k,478) = .380_r8*rxt(k,28) - mat(k,324) = rxt(k,30) - mat(k,460) = rxt(k,32) - mat(k,337) = 2.000_r8*rxt(k,33) - mat(k,559) = 1.340_r8*rxt(k,37) - mat(k,708) = .700_r8*rxt(k,39) - mat(k,468) = rxt(k,41) - mat(k,163) = rxt(k,80) - mat(k,323) = -( rxt(k,30) + het_rates(k,45) ) - mat(k,302) = rxt(k,26) - mat(k,476) = .440_r8*rxt(k,28) - mat(k,253) = .400_r8*rxt(k,42) - mat(k,136) = -( het_rates(k,46) ) - mat(k,5) = -( het_rates(k,47) ) - mat(k,6) = -( het_rates(k,48) ) - mat(k,7) = -( het_rates(k,49) ) - mat(k,8) = -( rxt(k,360) + het_rates(k,50) ) - mat(k,81) = -( rxt(k,31) + het_rates(k,51) ) - mat(k,459) = -( rxt(k,32) + het_rates(k,52) ) - mat(k,121) = rxt(k,246) - mat(k,336) = -( rxt(k,33) + het_rates(k,53) ) - mat(k,769) = -( rxt(k,100) + het_rates(k,54) ) - mat(k,1293) = rxt(k,2) + 2.000_r8*rxt(k,3) - mat(k,782) = 2.000_r8*rxt(k,21) - mat(k,202) = rxt(k,27) - mat(k,481) = .330_r8*rxt(k,28) + rxt(k,29) - mat(k,409) = rxt(k,69) - mat(k,818) = rxt(k,73) - mat(k,10) = rxt(k,74) - mat(k,514) = -( het_rates(k,55) ) - mat(k,1291) = rxt(k,1) - mat(k,781) = rxt(k,22) - mat(k,479) = 1.440_r8*rxt(k,28) - mat(k,42) = -( rxt(k,68) + het_rates(k,56) ) - mat(k,276) = -( rxt(k,4) + het_rates(k,57) ) - mat(k,84) = -( rxt(k,79) + het_rates(k,58) ) - mat(k,408) = -( rxt(k,69) + het_rates(k,59) ) - mat(k,89) = -( rxt(k,70) + het_rates(k,60) ) - mat(k,93) = -( rxt(k,71) + het_rates(k,61) ) - mat(k,103) = -( rxt(k,72) + het_rates(k,62) ) - mat(k,820) = -( rxt(k,73) + het_rates(k,63) ) - mat(k,9) = -( rxt(k,74) + het_rates(k,64) ) - mat(k,416) = -( rxt(k,9) + het_rates(k,65) ) - mat(k,125) = 2.000_r8*rxt(k,337) + 2.000_r8*rxt(k,343) + 2.000_r8*rxt(k,346) & - + 2.000_r8*rxt(k,357) - mat(k,1028) = .500_r8*rxt(k,339) - mat(k,1185) = rxt(k,340) - mat(k,466) = rxt(k,341) - mat(k,270) = rxt(k,345) + rxt(k,348) + rxt(k,353) - mat(k,447) = rxt(k,347) + rxt(k,352) + rxt(k,358) - mat(k,176) = -( rxt(k,10) + rxt(k,11) + rxt(k,135) + het_rates(k,66) ) - mat(k,352) = -( rxt(k,75) + het_rates(k,67) ) - mat(k,269) = rxt(k,345) + rxt(k,348) + rxt(k,353) - mat(k,401) = -( rxt(k,76) + het_rates(k,68) ) - mat(k,446) = rxt(k,347) + rxt(k,352) + rxt(k,358) - mat(k,503) = -( rxt(k,34) + het_rates(k,69) ) - mat(k,157) = -( het_rates(k,70) ) - mat(k,429) = -( het_rates(k,71) ) - mat(k,377) = -( het_rates(k,72) ) - mat(k,240) = -( rxt(k,35) + het_rates(k,73) ) - mat(k,560) = -( rxt(k,36) + rxt(k,37) + het_rates(k,74) ) - mat(k,241) = .288_r8*rxt(k,35) - mat(k,142) = -( het_rates(k,75) ) - mat(k,283) = -( rxt(k,38) + rxt(k,292) + het_rates(k,76) ) - mat(k,715) = -( rxt(k,39) + het_rates(k,77) ) - mat(k,244) = .402_r8*rxt(k,35) - mat(k,213) = -( rxt(k,117) + het_rates(k,78) ) - mat(k,1248) = rxt(k,15) - mat(k,97) = -( rxt(k,12) + het_rates(k,79) ) - mat(k,124) = -( rxt(k,13) + rxt(k,14) + rxt(k,136) + rxt(k,337) + rxt(k,343) & - + rxt(k,346) + rxt(k,357) + het_rates(k,80) ) - mat(k,11) = -( het_rates(k,81) ) - mat(k,12) = -( het_rates(k,82) ) - mat(k,13) = -( het_rates(k,83) ) - mat(k,45) = -( het_rates(k,84) ) - mat(k,14) = -( rxt(k,338) + het_rates(k,85) ) - mat(k,15) = -( rxt(k,362) + het_rates(k,86) ) - mat(k,16) = -( rxt(k,361) + het_rates(k,87) ) - mat(k,1286) = -( rxt(k,15) + het_rates(k,88) ) - mat(k,129) = rxt(k,14) - mat(k,1053) = rxt(k,16) + .500_r8*rxt(k,339) - mat(k,1219) = rxt(k,17) - mat(k,219) = rxt(k,117) - mat(k,1048) = -( rxt(k,16) + rxt(k,339) + het_rates(k,89) ) - mat(k,417) = rxt(k,9) - mat(k,178) = rxt(k,11) + rxt(k,135) - mat(k,127) = rxt(k,13) + rxt(k,136) - mat(k,1214) = rxt(k,18) - mat(k,289) = rxt(k,38) + rxt(k,292) - mat(k,198) = rxt(k,40) - mat(k,472) = rxt(k,41) - mat(k,257) = .600_r8*rxt(k,42) + rxt(k,252) - mat(k,274) = rxt(k,48) - mat(k,452) = rxt(k,66) - mat(k,1217) = -( rxt(k,17) + rxt(k,18) + rxt(k,340) + het_rates(k,90) ) - mat(k,180) = rxt(k,10) - mat(k,128) = rxt(k,13) + rxt(k,14) + rxt(k,136) - mat(k,259) = .400_r8*rxt(k,42) - mat(k,275) = rxt(k,49) - mat(k,454) = rxt(k,67) - mat(k,194) = -( rxt(k,40) + het_rates(k,91) ) - mat(k,17) = -( het_rates(k,92) ) - mat(k,18) = -( het_rates(k,93) ) - end do - end subroutine linmat01 - subroutine linmat02( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k - do k = 1,avec_len - mat(k,19) = -( het_rates(k,94) ) - mat(k,20) = -( het_rates(k,95) ) - mat(k,21) = -( het_rates(k,96) ) - mat(k,886) = -( rxt(k,94) + het_rates(k,97) ) - mat(k,1297) = rxt(k,3) - mat(k,1008) = rxt(k,8) - mat(k,126) = rxt(k,14) - mat(k,1277) = rxt(k,15) - mat(k,1044) = rxt(k,16) - mat(k,1210) = rxt(k,18) - mat(k,485) = .180_r8*rxt(k,28) - mat(k,325) = rxt(k,30) - mat(k,964) = rxt(k,47) - mat(k,1235) = rxt(k,65) - mat(k,155) = rxt(k,77) - mat(k,606) = rxt(k,81) + rxt(k,329) - mat(k,424) = rxt(k,82) - mat(k,118) = rxt(k,83) - mat(k,1081) = rxt(k,88) + rxt(k,89) - mat(k,215) = rxt(k,117) - mat(k,237) = rxt(k,322) - mat(k,1011) = -( rxt(k,7) + rxt(k,8) + het_rates(k,98) ) - mat(k,889) = rxt(k,94) - mat(k,22) = -( het_rates(k,99) ) - mat(k,152) = -( rxt(k,77) + het_rates(k,100) ) - mat(k,160) = -( rxt(k,80) + het_rates(k,101) ) - mat(k,467) = -( rxt(k,41) + rxt(k,341) + het_rates(k,102) ) - mat(k,252) = -( rxt(k,42) + rxt(k,252) + het_rates(k,103) ) - mat(k,23) = -( het_rates(k,104) ) - mat(k,24) = -( het_rates(k,105) ) - mat(k,260) = -( rxt(k,43) + het_rates(k,106) ) - mat(k,206) = -( rxt(k,44) + het_rates(k,107) ) - mat(k,234) = -( rxt(k,322) + het_rates(k,108) ) - mat(k,161) = rxt(k,80) - mat(k,600) = rxt(k,81) - mat(k,25) = -( rxt(k,78) + het_rates(k,109) ) - mat(k,602) = -( rxt(k,81) + rxt(k,329) + het_rates(k,110) ) - mat(k,423) = rxt(k,82) - mat(k,235) = rxt(k,322) - mat(k,422) = -( rxt(k,82) + het_rates(k,111) ) - mat(k,117) = rxt(k,83) - mat(k,601) = rxt(k,329) - mat(k,116) = -( rxt(k,83) + het_rates(k,112) ) - mat(k,85) = rxt(k,79) - mat(k,26) = -( het_rates(k,113) ) - mat(k,27) = -( het_rates(k,114) ) - mat(k,28) = -( het_rates(k,115) ) - mat(k,29) = -( het_rates(k,116) ) - mat(k,30) = -( rxt(k,84) + het_rates(k,117) ) - mat(k,31) = -( rxt(k,85) + het_rates(k,118) ) - mat(k,32) = -( rxt(k,342) + het_rates(k,119) ) - mat(k,34) = -( het_rates(k,120) ) - mat(k,33) = rxt(k,342) - mat(k,35) = -( rxt(k,363) + het_rates(k,121) ) - mat(k,308) = -( het_rates(k,122) ) - mat(k,100) = -( rxt(k,45) + het_rates(k,123) ) - mat(k,369) = -( het_rates(k,126) ) - mat(k,389) = -( het_rates(k,127) ) - mat(k,695) = -( het_rates(k,128) ) - mat(k,362) = rxt(k,24) - mat(k,592) = rxt(k,25) - mat(k,505) = rxt(k,34) - mat(k,564) = 1.340_r8*rxt(k,36) - mat(k,714) = .300_r8*rxt(k,39) - mat(k,196) = rxt(k,40) - mat(k,254) = .600_r8*rxt(k,42) + rxt(k,252) - mat(k,208) = rxt(k,44) - mat(k,753) = -( het_rates(k,129) ) - mat(k,552) = rxt(k,23) - mat(k,363) = rxt(k,24) - mat(k,304) = rxt(k,26) - mat(k,480) = rxt(k,29) - mat(k,716) = .300_r8*rxt(k,39) - mat(k,255) = .400_r8*rxt(k,42) - mat(k,293) = rxt(k,59) - mat(k,170) = rxt(k,61) - mat(k,120) = -( rxt(k,245) + rxt(k,246) + het_rates(k,130) ) - mat(k,82) = rxt(k,31) - mat(k,328) = -( het_rates(k,131) ) - mat(k,943) = -( rxt(k,336) + het_rates(k,132) ) - mat(k,177) = rxt(k,11) + rxt(k,135) - mat(k,150) = rxt(k,19) - mat(k,191) = rxt(k,20) - mat(k,554) = rxt(k,23) - mat(k,594) = rxt(k,25) - mat(k,463) = 2.000_r8*rxt(k,32) - mat(k,339) = 2.000_r8*rxt(k,33) - mat(k,507) = rxt(k,34) - mat(k,246) = rxt(k,35) - mat(k,567) = 1.340_r8*rxt(k,36) + .660_r8*rxt(k,37) - mat(k,471) = rxt(k,41) - mat(k,265) = rxt(k,43) - mat(k,773) = rxt(k,100) - mat(k,123) = rxt(k,245) + rxt(k,246) - mat(k,626) = -( het_rates(k,133) ) - mat(k,649) = -( het_rates(k,134) ) - mat(k,668) = -( het_rates(k,135) ) - mat(k,563) = .660_r8*rxt(k,36) - mat(k,286) = rxt(k,38) + rxt(k,292) - mat(k,1086) = -( rxt(k,88) + rxt(k,89) + het_rates(k,136) ) - mat(k,1302) = rxt(k,1) - mat(k,1013) = rxt(k,7) - mat(k,98) = rxt(k,12) - mat(k,1172) = -( het_rates(k,137) ) - mat(k,1303) = rxt(k,2) - mat(k,281) = 2.000_r8*rxt(k,4) - mat(k,418) = rxt(k,9) - mat(k,179) = rxt(k,10) - mat(k,151) = rxt(k,19) - mat(k,192) = rxt(k,20) - mat(k,306) = rxt(k,26) - mat(k,204) = rxt(k,27) - mat(k,488) = .330_r8*rxt(k,28) - mat(k,83) = rxt(k,31) - mat(k,266) = rxt(k,43) - mat(k,210) = rxt(k,44) - mat(k,102) = rxt(k,45) - mat(k,358) = rxt(k,75) - mat(k,405) = rxt(k,76) - mat(k,1050) = .500_r8*rxt(k,339) - mat(k,342) = -( het_rates(k,138) ) - mat(k,492) = -( het_rates(k,139) ) - mat(k,578) = -( het_rates(k,140) ) - mat(k,1307) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,141) ) - mat(k,489) = .050_r8*rxt(k,28) - mat(k,86) = rxt(k,79) - mat(k,952) = rxt(k,336) - end do - end subroutine linmat02 - subroutine linmat( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) - call linmat01( avec_len, mat, y, rxt, het_rates ) - call linmat02( avec_len, mat, y, rxt, het_rates ) - end subroutine linmat - end module mo_lin_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_factor.F90 deleted file mode 100644 index 40790de3b2..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_factor.F90 +++ /dev/null @@ -1,4871 +0,0 @@ - module mo_lu_factor - use chem_mods, only: veclen - private - public :: lu_fac - contains - subroutine lu_fac01( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1) = 1._r8 / lu(k,1) - lu(k,2) = 1._r8 / lu(k,2) - lu(k,3) = 1._r8 / lu(k,3) - lu(k,4) = 1._r8 / lu(k,4) - lu(k,5) = 1._r8 / lu(k,5) - lu(k,6) = 1._r8 / lu(k,6) - lu(k,7) = 1._r8 / lu(k,7) - lu(k,8) = 1._r8 / lu(k,8) - lu(k,9) = 1._r8 / lu(k,9) - lu(k,10) = lu(k,10) * lu(k,9) - lu(k,11) = 1._r8 / lu(k,11) - lu(k,12) = 1._r8 / lu(k,12) - lu(k,13) = 1._r8 / lu(k,13) - lu(k,14) = 1._r8 / lu(k,14) - lu(k,15) = 1._r8 / lu(k,15) - lu(k,16) = 1._r8 / lu(k,16) - lu(k,17) = 1._r8 / lu(k,17) - lu(k,18) = 1._r8 / lu(k,18) - lu(k,19) = 1._r8 / lu(k,19) - lu(k,20) = 1._r8 / lu(k,20) - lu(k,21) = 1._r8 / lu(k,21) - lu(k,22) = 1._r8 / lu(k,22) - lu(k,23) = 1._r8 / lu(k,23) - lu(k,24) = 1._r8 / lu(k,24) - lu(k,25) = 1._r8 / lu(k,25) - lu(k,26) = 1._r8 / lu(k,26) - lu(k,27) = 1._r8 / lu(k,27) - lu(k,28) = 1._r8 / lu(k,28) - lu(k,29) = 1._r8 / lu(k,29) - lu(k,30) = 1._r8 / lu(k,30) - lu(k,31) = 1._r8 / lu(k,31) - lu(k,32) = 1._r8 / lu(k,32) - lu(k,33) = lu(k,33) * lu(k,32) - lu(k,34) = 1._r8 / lu(k,34) - lu(k,35) = 1._r8 / lu(k,35) - lu(k,36) = 1._r8 / lu(k,36) - lu(k,37) = lu(k,37) * lu(k,36) - lu(k,38) = lu(k,38) * lu(k,36) - lu(k,1234) = lu(k,1234) - lu(k,37) * lu(k,1221) - lu(k,1243) = lu(k,1243) - lu(k,38) * lu(k,1221) - lu(k,39) = 1._r8 / lu(k,39) - lu(k,40) = lu(k,40) * lu(k,39) - lu(k,41) = lu(k,41) * lu(k,39) - lu(k,1135) = lu(k,1135) - lu(k,40) * lu(k,1092) - lu(k,1172) = lu(k,1172) - lu(k,41) * lu(k,1092) - lu(k,42) = 1._r8 / lu(k,42) - lu(k,43) = lu(k,43) * lu(k,42) - lu(k,44) = lu(k,44) * lu(k,42) - lu(k,1078) = lu(k,1078) - lu(k,43) * lu(k,1055) - lu(k,1086) = lu(k,1086) - lu(k,44) * lu(k,1055) - lu(k,45) = 1._r8 / lu(k,45) - lu(k,46) = lu(k,46) * lu(k,45) - lu(k,47) = lu(k,47) * lu(k,45) - lu(k,1172) = lu(k,1172) - lu(k,46) * lu(k,1093) - lu(k,1176) = lu(k,1176) - lu(k,47) * lu(k,1093) - lu(k,48) = 1._r8 / lu(k,48) - lu(k,49) = lu(k,49) * lu(k,48) - lu(k,50) = lu(k,50) * lu(k,48) - lu(k,1080) = lu(k,1080) - lu(k,49) * lu(k,1056) - lu(k,1086) = lu(k,1086) - lu(k,50) * lu(k,1056) - lu(k,51) = 1._r8 / lu(k,51) - lu(k,52) = lu(k,52) * lu(k,51) - lu(k,53) = lu(k,53) * lu(k,51) - lu(k,1078) = lu(k,1078) - lu(k,52) * lu(k,1057) - lu(k,1086) = lu(k,1086) - lu(k,53) * lu(k,1057) - end do - end subroutine lu_fac01 - subroutine lu_fac02( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,54) = 1._r8 / lu(k,54) - lu(k,55) = lu(k,55) * lu(k,54) - lu(k,56) = lu(k,56) * lu(k,54) - lu(k,1080) = lu(k,1080) - lu(k,55) * lu(k,1058) - lu(k,1086) = lu(k,1086) - lu(k,56) * lu(k,1058) - lu(k,57) = 1._r8 / lu(k,57) - lu(k,58) = lu(k,58) * lu(k,57) - lu(k,59) = lu(k,59) * lu(k,57) - lu(k,1080) = lu(k,1080) - lu(k,58) * lu(k,1059) - lu(k,1086) = lu(k,1086) - lu(k,59) * lu(k,1059) - lu(k,60) = 1._r8 / lu(k,60) - lu(k,61) = lu(k,61) * lu(k,60) - lu(k,62) = lu(k,62) * lu(k,60) - lu(k,1080) = lu(k,1080) - lu(k,61) * lu(k,1060) - lu(k,1086) = lu(k,1086) - lu(k,62) * lu(k,1060) - lu(k,63) = 1._r8 / lu(k,63) - lu(k,64) = lu(k,64) * lu(k,63) - lu(k,65) = lu(k,65) * lu(k,63) - lu(k,1080) = lu(k,1080) - lu(k,64) * lu(k,1061) - lu(k,1086) = lu(k,1086) - lu(k,65) * lu(k,1061) - lu(k,66) = 1._r8 / lu(k,66) - lu(k,67) = lu(k,67) * lu(k,66) - lu(k,68) = lu(k,68) * lu(k,66) - lu(k,1080) = lu(k,1080) - lu(k,67) * lu(k,1062) - lu(k,1086) = lu(k,1086) - lu(k,68) * lu(k,1062) - lu(k,69) = 1._r8 / lu(k,69) - lu(k,70) = lu(k,70) * lu(k,69) - lu(k,71) = lu(k,71) * lu(k,69) - lu(k,72) = lu(k,72) * lu(k,69) - lu(k,1135) = lu(k,1135) - lu(k,70) * lu(k,1094) - lu(k,1172) = lu(k,1172) - lu(k,71) * lu(k,1094) - lu(k,1176) = lu(k,1176) - lu(k,72) * lu(k,1094) - lu(k,73) = 1._r8 / lu(k,73) - lu(k,74) = lu(k,74) * lu(k,73) - lu(k,75) = lu(k,75) * lu(k,73) - lu(k,76) = lu(k,76) * lu(k,73) - lu(k,1078) = lu(k,1078) - lu(k,74) * lu(k,1063) - lu(k,1080) = lu(k,1080) - lu(k,75) * lu(k,1063) - lu(k,1086) = lu(k,1086) - lu(k,76) * lu(k,1063) - lu(k,77) = 1._r8 / lu(k,77) - lu(k,78) = lu(k,78) * lu(k,77) - lu(k,79) = lu(k,79) * lu(k,77) - lu(k,80) = lu(k,80) * lu(k,77) - lu(k,1165) = lu(k,1165) - lu(k,78) * lu(k,1095) - lu(k,1172) = lu(k,1172) - lu(k,79) * lu(k,1095) - lu(k,1176) = lu(k,1176) - lu(k,80) * lu(k,1095) - lu(k,81) = 1._r8 / lu(k,81) - lu(k,82) = lu(k,82) * lu(k,81) - lu(k,83) = lu(k,83) * lu(k,81) - lu(k,327) = lu(k,327) - lu(k,82) * lu(k,326) - lu(k,333) = - lu(k,83) * lu(k,326) - lu(k,899) = - lu(k,82) * lu(k,897) - lu(k,948) = lu(k,948) - lu(k,83) * lu(k,897) - lu(k,84) = 1._r8 / lu(k,84) - lu(k,85) = lu(k,85) * lu(k,84) - lu(k,86) = lu(k,86) * lu(k,84) - lu(k,116) = lu(k,116) - lu(k,85) * lu(k,115) - lu(k,119) = lu(k,119) - lu(k,86) * lu(k,115) - lu(k,1289) = lu(k,1289) - lu(k,85) * lu(k,1288) - lu(k,1307) = lu(k,1307) - lu(k,86) * lu(k,1288) - lu(k,87) = 1._r8 / lu(k,87) - lu(k,88) = lu(k,88) * lu(k,87) - lu(k,403) = lu(k,403) - lu(k,88) * lu(k,400) - lu(k,450) = lu(k,450) - lu(k,88) * lu(k,445) - lu(k,821) = lu(k,821) - lu(k,88) * lu(k,812) - lu(k,856) = lu(k,856) - lu(k,88) * lu(k,832) - lu(k,1234) = lu(k,1234) - lu(k,88) * lu(k,1222) - lu(k,89) = 1._r8 / lu(k,89) - lu(k,90) = lu(k,90) * lu(k,89) - lu(k,91) = lu(k,91) * lu(k,89) - lu(k,92) = lu(k,92) * lu(k,89) - lu(k,1080) = lu(k,1080) - lu(k,90) * lu(k,1064) - lu(k,1086) = lu(k,1086) - lu(k,91) * lu(k,1064) - lu(k,1087) = lu(k,1087) - lu(k,92) * lu(k,1064) - lu(k,1165) = lu(k,1165) - lu(k,90) * lu(k,1096) - lu(k,1171) = - lu(k,91) * lu(k,1096) - lu(k,1172) = lu(k,1172) - lu(k,92) * lu(k,1096) - lu(k,93) = 1._r8 / lu(k,93) - lu(k,94) = lu(k,94) * lu(k,93) - lu(k,95) = lu(k,95) * lu(k,93) - lu(k,96) = lu(k,96) * lu(k,93) - lu(k,1080) = lu(k,1080) - lu(k,94) * lu(k,1065) - lu(k,1086) = lu(k,1086) - lu(k,95) * lu(k,1065) - lu(k,1087) = lu(k,1087) - lu(k,96) * lu(k,1065) - lu(k,1165) = lu(k,1165) - lu(k,94) * lu(k,1097) - lu(k,1171) = lu(k,1171) - lu(k,95) * lu(k,1097) - lu(k,1172) = lu(k,1172) - lu(k,96) * lu(k,1097) - lu(k,97) = 1._r8 / lu(k,97) - lu(k,98) = lu(k,98) * lu(k,97) - lu(k,99) = lu(k,99) * lu(k,97) - lu(k,217) = - lu(k,98) * lu(k,212) - lu(k,219) = lu(k,219) - lu(k,99) * lu(k,212) - lu(k,1049) = - lu(k,98) * lu(k,1019) - lu(k,1053) = lu(k,1053) - lu(k,99) * lu(k,1019) - lu(k,1086) = lu(k,1086) - lu(k,98) * lu(k,1066) - lu(k,1090) = lu(k,1090) - lu(k,99) * lu(k,1066) - end do - end subroutine lu_fac02 - subroutine lu_fac03( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,100) = 1._r8 / lu(k,100) - lu(k,101) = lu(k,101) * lu(k,100) - lu(k,102) = lu(k,102) * lu(k,100) - lu(k,578) = lu(k,578) - lu(k,101) * lu(k,571) - lu(k,586) = - lu(k,102) * lu(k,571) - lu(k,929) = lu(k,929) - lu(k,101) * lu(k,898) - lu(k,948) = lu(k,948) - lu(k,102) * lu(k,898) - lu(k,1152) = lu(k,1152) - lu(k,101) * lu(k,1098) - lu(k,1172) = lu(k,1172) - lu(k,102) * lu(k,1098) - lu(k,103) = 1._r8 / lu(k,103) - lu(k,104) = lu(k,104) * lu(k,103) - lu(k,105) = lu(k,105) * lu(k,103) - lu(k,106) = lu(k,106) * lu(k,103) - lu(k,107) = lu(k,107) * lu(k,103) - lu(k,1080) = lu(k,1080) - lu(k,104) * lu(k,1067) - lu(k,1086) = lu(k,1086) - lu(k,105) * lu(k,1067) - lu(k,1087) = lu(k,1087) - lu(k,106) * lu(k,1067) - lu(k,1091) = lu(k,1091) - lu(k,107) * lu(k,1067) - lu(k,1165) = lu(k,1165) - lu(k,104) * lu(k,1099) - lu(k,1171) = lu(k,1171) - lu(k,105) * lu(k,1099) - lu(k,1172) = lu(k,1172) - lu(k,106) * lu(k,1099) - lu(k,1176) = lu(k,1176) - lu(k,107) * lu(k,1099) - lu(k,108) = 1._r8 / lu(k,108) - lu(k,109) = lu(k,109) * lu(k,108) - lu(k,110) = lu(k,110) * lu(k,108) - lu(k,353) = lu(k,353) - lu(k,109) * lu(k,351) - lu(k,355) = - lu(k,110) * lu(k,351) - lu(k,819) = - lu(k,109) * lu(k,813) - lu(k,821) = lu(k,821) - lu(k,110) * lu(k,813) - lu(k,961) = lu(k,961) - lu(k,109) * lu(k,953) - lu(k,963) = lu(k,963) - lu(k,110) * lu(k,953) - lu(k,1232) = lu(k,1232) - lu(k,109) * lu(k,1223) - lu(k,1234) = lu(k,1234) - lu(k,110) * lu(k,1223) - lu(k,111) = 1._r8 / lu(k,111) - lu(k,112) = lu(k,112) * lu(k,111) - lu(k,113) = lu(k,113) * lu(k,111) - lu(k,114) = lu(k,114) * lu(k,111) - lu(k,370) = lu(k,370) - lu(k,112) * lu(k,366) - lu(k,373) = lu(k,373) - lu(k,113) * lu(k,366) - lu(k,375) = - lu(k,114) * lu(k,366) - lu(k,744) = lu(k,744) - lu(k,112) * lu(k,730) - lu(k,759) = lu(k,759) - lu(k,113) * lu(k,730) - lu(k,763) = - lu(k,114) * lu(k,730) - lu(k,1150) = lu(k,1150) - lu(k,112) * lu(k,1100) - lu(k,1167) = lu(k,1167) - lu(k,113) * lu(k,1100) - lu(k,1172) = lu(k,1172) - lu(k,114) * lu(k,1100) - lu(k,116) = 1._r8 / lu(k,116) - lu(k,117) = lu(k,117) * lu(k,116) - lu(k,118) = lu(k,118) * lu(k,116) - lu(k,119) = lu(k,119) * lu(k,116) - lu(k,422) = lu(k,422) - lu(k,117) * lu(k,421) - lu(k,424) = lu(k,424) - lu(k,118) * lu(k,421) - lu(k,427) = - lu(k,119) * lu(k,421) - lu(k,1139) = lu(k,1139) - lu(k,117) * lu(k,1101) - lu(k,1166) = lu(k,1166) - lu(k,118) * lu(k,1101) - lu(k,1176) = lu(k,1176) - lu(k,119) * lu(k,1101) - lu(k,1290) = - lu(k,117) * lu(k,1289) - lu(k,1297) = lu(k,1297) - lu(k,118) * lu(k,1289) - lu(k,1307) = lu(k,1307) - lu(k,119) * lu(k,1289) - lu(k,120) = 1._r8 / lu(k,120) - lu(k,121) = lu(k,121) * lu(k,120) - lu(k,122) = lu(k,122) * lu(k,120) - lu(k,123) = lu(k,123) * lu(k,120) - lu(k,329) = - lu(k,121) * lu(k,327) - lu(k,330) = lu(k,330) - lu(k,122) * lu(k,327) - lu(k,331) = lu(k,331) - lu(k,123) * lu(k,327) - lu(k,921) = - lu(k,121) * lu(k,899) - lu(k,938) = lu(k,938) - lu(k,122) * lu(k,899) - lu(k,943) = lu(k,943) - lu(k,123) * lu(k,899) - lu(k,1257) = lu(k,1257) - lu(k,121) * lu(k,1246) - lu(k,1273) = lu(k,1273) - lu(k,122) * lu(k,1246) - lu(k,1278) = lu(k,1278) - lu(k,123) * lu(k,1246) - lu(k,124) = 1._r8 / lu(k,124) - lu(k,125) = lu(k,125) * lu(k,124) - lu(k,126) = lu(k,126) * lu(k,124) - lu(k,127) = lu(k,127) * lu(k,124) - lu(k,128) = lu(k,128) * lu(k,124) - lu(k,129) = lu(k,129) * lu(k,124) - lu(k,1028) = lu(k,1028) - lu(k,125) * lu(k,1020) - lu(k,1044) = lu(k,1044) - lu(k,126) * lu(k,1020) - lu(k,1048) = lu(k,1048) - lu(k,127) * lu(k,1020) - lu(k,1051) = lu(k,1051) - lu(k,128) * lu(k,1020) - lu(k,1053) = lu(k,1053) - lu(k,129) * lu(k,1020) - lu(k,1185) = lu(k,1185) - lu(k,125) * lu(k,1177) - lu(k,1210) = lu(k,1210) - lu(k,126) * lu(k,1177) - lu(k,1214) = lu(k,1214) - lu(k,127) * lu(k,1177) - lu(k,1217) = lu(k,1217) - lu(k,128) * lu(k,1177) - lu(k,1219) = lu(k,1219) - lu(k,129) * lu(k,1177) - lu(k,130) = 1._r8 / lu(k,130) - lu(k,131) = lu(k,131) * lu(k,130) - lu(k,132) = lu(k,132) * lu(k,130) - lu(k,133) = lu(k,133) * lu(k,130) - lu(k,134) = lu(k,134) * lu(k,130) - lu(k,135) = lu(k,135) * lu(k,130) - lu(k,841) = lu(k,841) - lu(k,131) * lu(k,833) - lu(k,855) = lu(k,855) - lu(k,132) * lu(k,833) - lu(k,856) = lu(k,856) - lu(k,133) * lu(k,833) - lu(k,863) = lu(k,863) - lu(k,134) * lu(k,833) - lu(k,867) = - lu(k,135) * lu(k,833) - lu(k,1134) = lu(k,1134) - lu(k,131) * lu(k,1102) - lu(k,1164) = lu(k,1164) - lu(k,132) * lu(k,1102) - lu(k,1165) = lu(k,1165) - lu(k,133) * lu(k,1102) - lu(k,1172) = lu(k,1172) - lu(k,134) * lu(k,1102) - lu(k,1176) = lu(k,1176) - lu(k,135) * lu(k,1102) - lu(k,136) = 1._r8 / lu(k,136) - lu(k,137) = lu(k,137) * lu(k,136) - lu(k,138) = lu(k,138) * lu(k,136) - lu(k,139) = lu(k,139) * lu(k,136) - lu(k,140) = lu(k,140) * lu(k,136) - lu(k,141) = lu(k,141) * lu(k,136) - lu(k,1138) = lu(k,1138) - lu(k,137) * lu(k,1103) - lu(k,1139) = lu(k,1139) - lu(k,138) * lu(k,1103) - lu(k,1167) = lu(k,1167) - lu(k,139) * lu(k,1103) - lu(k,1172) = lu(k,1172) - lu(k,140) * lu(k,1103) - lu(k,1173) = lu(k,1173) - lu(k,141) * lu(k,1103) - lu(k,1185) = lu(k,1185) - lu(k,137) * lu(k,1178) - lu(k,1186) = lu(k,1186) - lu(k,138) * lu(k,1178) - lu(k,1211) = lu(k,1211) - lu(k,139) * lu(k,1178) - lu(k,1216) = lu(k,1216) - lu(k,140) * lu(k,1178) - lu(k,1217) = lu(k,1217) - lu(k,141) * lu(k,1178) - end do - end subroutine lu_fac03 - subroutine lu_fac04( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,142) = 1._r8 / lu(k,142) - lu(k,143) = lu(k,143) * lu(k,142) - lu(k,144) = lu(k,144) * lu(k,142) - lu(k,145) = lu(k,145) * lu(k,142) - lu(k,146) = lu(k,146) * lu(k,142) - lu(k,649) = lu(k,649) - lu(k,143) * lu(k,641) - lu(k,650) = - lu(k,144) * lu(k,641) - lu(k,655) = lu(k,655) - lu(k,145) * lu(k,641) - lu(k,657) = - lu(k,146) * lu(k,641) - lu(k,932) = lu(k,932) - lu(k,143) * lu(k,900) - lu(k,933) = lu(k,933) - lu(k,144) * lu(k,900) - lu(k,943) = lu(k,943) - lu(k,145) * lu(k,900) - lu(k,948) = lu(k,948) - lu(k,146) * lu(k,900) - lu(k,1156) = lu(k,1156) - lu(k,143) * lu(k,1104) - lu(k,1157) = lu(k,1157) - lu(k,144) * lu(k,1104) - lu(k,1167) = lu(k,1167) - lu(k,145) * lu(k,1104) - lu(k,1172) = lu(k,1172) - lu(k,146) * lu(k,1104) - lu(k,147) = 1._r8 / lu(k,147) - lu(k,148) = lu(k,148) * lu(k,147) - lu(k,149) = lu(k,149) * lu(k,147) - lu(k,150) = lu(k,150) * lu(k,147) - lu(k,151) = lu(k,151) * lu(k,147) - lu(k,369) = lu(k,369) - lu(k,148) * lu(k,367) - lu(k,370) = lu(k,370) - lu(k,149) * lu(k,367) - lu(k,373) = lu(k,373) - lu(k,150) * lu(k,367) - lu(k,375) = lu(k,375) - lu(k,151) * lu(k,367) - lu(k,916) = lu(k,916) - lu(k,148) * lu(k,901) - lu(k,927) = - lu(k,149) * lu(k,901) - lu(k,943) = lu(k,943) - lu(k,150) * lu(k,901) - lu(k,948) = lu(k,948) - lu(k,151) * lu(k,901) - lu(k,1134) = lu(k,1134) - lu(k,148) * lu(k,1105) - lu(k,1150) = lu(k,1150) - lu(k,149) * lu(k,1105) - lu(k,1167) = lu(k,1167) - lu(k,150) * lu(k,1105) - lu(k,1172) = lu(k,1172) - lu(k,151) * lu(k,1105) - lu(k,152) = 1._r8 / lu(k,152) - lu(k,153) = lu(k,153) * lu(k,152) - lu(k,154) = lu(k,154) * lu(k,152) - lu(k,155) = lu(k,155) * lu(k,152) - lu(k,156) = lu(k,156) * lu(k,152) - lu(k,601) = lu(k,601) - lu(k,153) * lu(k,599) - lu(k,602) = lu(k,602) - lu(k,154) * lu(k,599) - lu(k,606) = lu(k,606) - lu(k,155) * lu(k,599) - lu(k,612) = lu(k,612) - lu(k,156) * lu(k,599) - lu(k,958) = lu(k,958) - lu(k,153) * lu(k,954) - lu(k,959) = lu(k,959) - lu(k,154) * lu(k,954) - lu(k,964) = lu(k,964) - lu(k,155) * lu(k,954) - lu(k,972) = lu(k,972) - lu(k,156) * lu(k,954) - lu(k,1226) = lu(k,1226) - lu(k,153) * lu(k,1224) - lu(k,1228) = lu(k,1228) - lu(k,154) * lu(k,1224) - lu(k,1235) = lu(k,1235) - lu(k,155) * lu(k,1224) - lu(k,1243) = lu(k,1243) - lu(k,156) * lu(k,1224) - lu(k,157) = 1._r8 / lu(k,157) - lu(k,158) = lu(k,158) * lu(k,157) - lu(k,159) = lu(k,159) * lu(k,157) - lu(k,469) = - lu(k,158) * lu(k,465) - lu(k,473) = lu(k,473) - lu(k,159) * lu(k,465) - lu(k,624) = - lu(k,158) * lu(k,615) - lu(k,637) = - lu(k,159) * lu(k,615) - lu(k,690) = lu(k,690) - lu(k,158) * lu(k,680) - lu(k,703) = lu(k,703) - lu(k,159) * lu(k,680) - lu(k,746) = lu(k,746) - lu(k,158) * lu(k,731) - lu(k,763) = lu(k,763) - lu(k,159) * lu(k,731) - lu(k,1152) = lu(k,1152) - lu(k,158) * lu(k,1106) - lu(k,1172) = lu(k,1172) - lu(k,159) * lu(k,1106) - lu(k,1196) = lu(k,1196) - lu(k,158) * lu(k,1179) - lu(k,1216) = lu(k,1216) - lu(k,159) * lu(k,1179) - lu(k,1264) = lu(k,1264) - lu(k,158) * lu(k,1247) - lu(k,1283) = lu(k,1283) - lu(k,159) * lu(k,1247) - lu(k,160) = 1._r8 / lu(k,160) - lu(k,161) = lu(k,161) * lu(k,160) - lu(k,162) = lu(k,162) * lu(k,160) - lu(k,163) = lu(k,163) * lu(k,160) - lu(k,164) = lu(k,164) * lu(k,160) - lu(k,165) = lu(k,165) * lu(k,160) - lu(k,166) = lu(k,166) * lu(k,160) - lu(k,167) = lu(k,167) * lu(k,160) - lu(k,869) = - lu(k,161) * lu(k,868) - lu(k,876) = - lu(k,162) * lu(k,868) - lu(k,878) = lu(k,878) - lu(k,163) * lu(k,868) - lu(k,880) = lu(k,880) - lu(k,164) * lu(k,868) - lu(k,881) = lu(k,881) - lu(k,165) * lu(k,868) - lu(k,886) = lu(k,886) - lu(k,166) * lu(k,868) - lu(k,892) = lu(k,892) - lu(k,167) * lu(k,868) - lu(k,1118) = lu(k,1118) - lu(k,161) * lu(k,1107) - lu(k,1139) = lu(k,1139) - lu(k,162) * lu(k,1107) - lu(k,1147) = lu(k,1147) - lu(k,163) * lu(k,1107) - lu(k,1154) = lu(k,1154) - lu(k,164) * lu(k,1107) - lu(k,1161) = lu(k,1161) - lu(k,165) * lu(k,1107) - lu(k,1166) = lu(k,1166) - lu(k,166) * lu(k,1107) - lu(k,1172) = lu(k,1172) - lu(k,167) * lu(k,1107) - lu(k,168) = 1._r8 / lu(k,168) - lu(k,169) = lu(k,169) * lu(k,168) - lu(k,170) = lu(k,170) * lu(k,168) - lu(k,171) = lu(k,171) * lu(k,168) - lu(k,172) = lu(k,172) * lu(k,168) - lu(k,173) = lu(k,173) * lu(k,168) - lu(k,174) = lu(k,174) * lu(k,168) - lu(k,175) = lu(k,175) * lu(k,168) - lu(k,846) = lu(k,846) - lu(k,169) * lu(k,834) - lu(k,851) = lu(k,851) - lu(k,170) * lu(k,834) - lu(k,855) = lu(k,855) - lu(k,171) * lu(k,834) - lu(k,856) = lu(k,856) - lu(k,172) * lu(k,834) - lu(k,858) = lu(k,858) - lu(k,173) * lu(k,834) - lu(k,863) = lu(k,863) - lu(k,174) * lu(k,834) - lu(k,867) = lu(k,867) - lu(k,175) * lu(k,834) - lu(k,1147) = lu(k,1147) - lu(k,169) * lu(k,1108) - lu(k,1160) = lu(k,1160) - lu(k,170) * lu(k,1108) - lu(k,1164) = lu(k,1164) - lu(k,171) * lu(k,1108) - lu(k,1165) = lu(k,1165) - lu(k,172) * lu(k,1108) - lu(k,1167) = lu(k,1167) - lu(k,173) * lu(k,1108) - lu(k,1172) = lu(k,1172) - lu(k,174) * lu(k,1108) - lu(k,1176) = lu(k,1176) - lu(k,175) * lu(k,1108) - lu(k,176) = 1._r8 / lu(k,176) - lu(k,177) = lu(k,177) * lu(k,176) - lu(k,178) = lu(k,178) * lu(k,176) - lu(k,179) = lu(k,179) * lu(k,176) - lu(k,180) = lu(k,180) * lu(k,176) - lu(k,181) = lu(k,181) * lu(k,176) - lu(k,943) = lu(k,943) - lu(k,177) * lu(k,902) - lu(k,946) = lu(k,946) - lu(k,178) * lu(k,902) - lu(k,948) = lu(k,948) - lu(k,179) * lu(k,902) - lu(k,949) = lu(k,949) - lu(k,180) * lu(k,902) - lu(k,952) = lu(k,952) - lu(k,181) * lu(k,902) - lu(k,1045) = lu(k,1045) - lu(k,177) * lu(k,1021) - lu(k,1048) = lu(k,1048) - lu(k,178) * lu(k,1021) - lu(k,1050) = lu(k,1050) - lu(k,179) * lu(k,1021) - lu(k,1051) = lu(k,1051) - lu(k,180) * lu(k,1021) - lu(k,1054) = - lu(k,181) * lu(k,1021) - lu(k,1167) = lu(k,1167) - lu(k,177) * lu(k,1109) - lu(k,1170) = lu(k,1170) - lu(k,178) * lu(k,1109) - lu(k,1172) = lu(k,1172) - lu(k,179) * lu(k,1109) - lu(k,1173) = lu(k,1173) - lu(k,180) * lu(k,1109) - lu(k,1176) = lu(k,1176) - lu(k,181) * lu(k,1109) - lu(k,182) = 1._r8 / lu(k,182) - lu(k,183) = lu(k,183) * lu(k,182) - lu(k,184) = lu(k,184) * lu(k,182) - lu(k,185) = lu(k,185) * lu(k,182) - lu(k,186) = lu(k,186) * lu(k,182) - lu(k,187) = lu(k,187) * lu(k,182) - lu(k,854) = lu(k,854) - lu(k,183) * lu(k,835) - lu(k,855) = lu(k,855) - lu(k,184) * lu(k,835) - lu(k,856) = lu(k,856) - lu(k,185) * lu(k,835) - lu(k,862) = - lu(k,186) * lu(k,835) - lu(k,863) = lu(k,863) - lu(k,187) * lu(k,835) - lu(k,1078) = lu(k,1078) - lu(k,183) * lu(k,1068) - lu(k,1079) = lu(k,1079) - lu(k,184) * lu(k,1068) - lu(k,1080) = lu(k,1080) - lu(k,185) * lu(k,1068) - lu(k,1086) = lu(k,1086) - lu(k,186) * lu(k,1068) - lu(k,1087) = lu(k,1087) - lu(k,187) * lu(k,1068) - lu(k,1163) = lu(k,1163) - lu(k,183) * lu(k,1110) - lu(k,1164) = lu(k,1164) - lu(k,184) * lu(k,1110) - lu(k,1165) = lu(k,1165) - lu(k,185) * lu(k,1110) - lu(k,1171) = lu(k,1171) - lu(k,186) * lu(k,1110) - lu(k,1172) = lu(k,1172) - lu(k,187) * lu(k,1110) - end do - end subroutine lu_fac04 - subroutine lu_fac05( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,188) = 1._r8 / lu(k,188) - lu(k,189) = lu(k,189) * lu(k,188) - lu(k,190) = lu(k,190) * lu(k,188) - lu(k,191) = lu(k,191) * lu(k,188) - lu(k,192) = lu(k,192) * lu(k,188) - lu(k,193) = lu(k,193) * lu(k,188) - lu(k,388) = lu(k,388) - lu(k,189) * lu(k,387) - lu(k,389) = lu(k,389) - lu(k,190) * lu(k,387) - lu(k,395) = lu(k,395) - lu(k,191) * lu(k,387) - lu(k,397) = - lu(k,192) * lu(k,387) - lu(k,399) = - lu(k,193) * lu(k,387) - lu(k,915) = - lu(k,189) * lu(k,903) - lu(k,918) = lu(k,918) - lu(k,190) * lu(k,903) - lu(k,943) = lu(k,943) - lu(k,191) * lu(k,903) - lu(k,948) = lu(k,948) - lu(k,192) * lu(k,903) - lu(k,952) = lu(k,952) - lu(k,193) * lu(k,903) - lu(k,1133) = lu(k,1133) - lu(k,189) * lu(k,1111) - lu(k,1135) = lu(k,1135) - lu(k,190) * lu(k,1111) - lu(k,1167) = lu(k,1167) - lu(k,191) * lu(k,1111) - lu(k,1172) = lu(k,1172) - lu(k,192) * lu(k,1111) - lu(k,1176) = lu(k,1176) - lu(k,193) * lu(k,1111) - lu(k,194) = 1._r8 / lu(k,194) - lu(k,195) = lu(k,195) * lu(k,194) - lu(k,196) = lu(k,196) * lu(k,194) - lu(k,197) = lu(k,197) * lu(k,194) - lu(k,198) = lu(k,198) * lu(k,194) - lu(k,199) = lu(k,199) * lu(k,194) - lu(k,532) = - lu(k,195) * lu(k,522) - lu(k,533) = - lu(k,196) * lu(k,522) - lu(k,536) = lu(k,536) - lu(k,197) * lu(k,522) - lu(k,542) = - lu(k,198) * lu(k,522) - lu(k,544) = lu(k,544) - lu(k,199) * lu(k,522) - lu(k,1153) = lu(k,1153) - lu(k,195) * lu(k,1112) - lu(k,1158) = lu(k,1158) - lu(k,196) * lu(k,1112) - lu(k,1162) = lu(k,1162) - lu(k,197) * lu(k,1112) - lu(k,1170) = lu(k,1170) - lu(k,198) * lu(k,1112) - lu(k,1172) = lu(k,1172) - lu(k,199) * lu(k,1112) - lu(k,1197) = lu(k,1197) - lu(k,195) * lu(k,1180) - lu(k,1202) = lu(k,1202) - lu(k,196) * lu(k,1180) - lu(k,1206) = lu(k,1206) - lu(k,197) * lu(k,1180) - lu(k,1214) = lu(k,1214) - lu(k,198) * lu(k,1180) - lu(k,1216) = lu(k,1216) - lu(k,199) * lu(k,1180) - lu(k,200) = 1._r8 / lu(k,200) - lu(k,201) = lu(k,201) * lu(k,200) - lu(k,202) = lu(k,202) * lu(k,200) - lu(k,203) = lu(k,203) * lu(k,200) - lu(k,204) = lu(k,204) * lu(k,200) - lu(k,205) = lu(k,205) * lu(k,200) - lu(k,753) = lu(k,753) - lu(k,201) * lu(k,732) - lu(k,754) = - lu(k,202) * lu(k,732) - lu(k,755) = lu(k,755) - lu(k,203) * lu(k,732) - lu(k,763) = lu(k,763) - lu(k,204) * lu(k,732) - lu(k,767) = - lu(k,205) * lu(k,732) - lu(k,936) = lu(k,936) - lu(k,201) * lu(k,904) - lu(k,937) = lu(k,937) - lu(k,202) * lu(k,904) - lu(k,938) = lu(k,938) - lu(k,203) * lu(k,904) - lu(k,948) = lu(k,948) - lu(k,204) * lu(k,904) - lu(k,952) = lu(k,952) - lu(k,205) * lu(k,904) - lu(k,1160) = lu(k,1160) - lu(k,201) * lu(k,1113) - lu(k,1161) = lu(k,1161) - lu(k,202) * lu(k,1113) - lu(k,1162) = lu(k,1162) - lu(k,203) * lu(k,1113) - lu(k,1172) = lu(k,1172) - lu(k,204) * lu(k,1113) - lu(k,1176) = lu(k,1176) - lu(k,205) * lu(k,1113) - lu(k,206) = 1._r8 / lu(k,206) - lu(k,207) = lu(k,207) * lu(k,206) - lu(k,208) = lu(k,208) * lu(k,206) - lu(k,209) = lu(k,209) * lu(k,206) - lu(k,210) = lu(k,210) * lu(k,206) - lu(k,211) = lu(k,211) * lu(k,206) - lu(k,492) = lu(k,492) - lu(k,207) * lu(k,490) - lu(k,495) = lu(k,495) - lu(k,208) * lu(k,490) - lu(k,497) = lu(k,497) - lu(k,209) * lu(k,490) - lu(k,500) = lu(k,500) - lu(k,210) * lu(k,490) - lu(k,502) = - lu(k,211) * lu(k,490) - lu(k,923) = lu(k,923) - lu(k,207) * lu(k,905) - lu(k,934) = lu(k,934) - lu(k,208) * lu(k,905) - lu(k,938) = lu(k,938) - lu(k,209) * lu(k,905) - lu(k,948) = lu(k,948) - lu(k,210) * lu(k,905) - lu(k,952) = lu(k,952) - lu(k,211) * lu(k,905) - lu(k,1145) = lu(k,1145) - lu(k,207) * lu(k,1114) - lu(k,1158) = lu(k,1158) - lu(k,208) * lu(k,1114) - lu(k,1162) = lu(k,1162) - lu(k,209) * lu(k,1114) - lu(k,1172) = lu(k,1172) - lu(k,210) * lu(k,1114) - lu(k,1176) = lu(k,1176) - lu(k,211) * lu(k,1114) - lu(k,213) = 1._r8 / lu(k,213) - lu(k,214) = lu(k,214) * lu(k,213) - lu(k,215) = lu(k,215) * lu(k,213) - lu(k,216) = lu(k,216) * lu(k,213) - lu(k,217) = lu(k,217) * lu(k,213) - lu(k,218) = lu(k,218) * lu(k,213) - lu(k,219) = lu(k,219) * lu(k,213) - lu(k,1039) = - lu(k,214) * lu(k,1022) - lu(k,1044) = lu(k,1044) - lu(k,215) * lu(k,1022) - lu(k,1048) = lu(k,1048) - lu(k,216) * lu(k,1022) - lu(k,1049) = lu(k,1049) - lu(k,217) * lu(k,1022) - lu(k,1050) = lu(k,1050) - lu(k,218) * lu(k,1022) - lu(k,1053) = lu(k,1053) - lu(k,219) * lu(k,1022) - lu(k,1161) = lu(k,1161) - lu(k,214) * lu(k,1115) - lu(k,1166) = lu(k,1166) - lu(k,215) * lu(k,1115) - lu(k,1170) = lu(k,1170) - lu(k,216) * lu(k,1115) - lu(k,1171) = lu(k,1171) - lu(k,217) * lu(k,1115) - lu(k,1172) = lu(k,1172) - lu(k,218) * lu(k,1115) - lu(k,1175) = lu(k,1175) - lu(k,219) * lu(k,1115) - lu(k,1272) = - lu(k,214) * lu(k,1248) - lu(k,1277) = lu(k,1277) - lu(k,215) * lu(k,1248) - lu(k,1281) = lu(k,1281) - lu(k,216) * lu(k,1248) - lu(k,1282) = - lu(k,217) * lu(k,1248) - lu(k,1283) = lu(k,1283) - lu(k,218) * lu(k,1248) - lu(k,1286) = lu(k,1286) - lu(k,219) * lu(k,1248) - lu(k,220) = 1._r8 / lu(k,220) - lu(k,221) = lu(k,221) * lu(k,220) - lu(k,222) = lu(k,222) * lu(k,220) - lu(k,223) = lu(k,223) * lu(k,220) - lu(k,224) = lu(k,224) * lu(k,220) - lu(k,225) = lu(k,225) * lu(k,220) - lu(k,226) = lu(k,226) * lu(k,220) - lu(k,840) = - lu(k,221) * lu(k,836) - lu(k,846) = lu(k,846) - lu(k,222) * lu(k,836) - lu(k,853) = lu(k,853) - lu(k,223) * lu(k,836) - lu(k,858) = lu(k,858) - lu(k,224) * lu(k,836) - lu(k,860) = lu(k,860) - lu(k,225) * lu(k,836) - lu(k,863) = lu(k,863) - lu(k,226) * lu(k,836) - lu(k,980) = - lu(k,221) * lu(k,975) - lu(k,989) = lu(k,989) - lu(k,222) * lu(k,975) - lu(k,1004) = lu(k,1004) - lu(k,223) * lu(k,975) - lu(k,1009) = lu(k,1009) - lu(k,224) * lu(k,975) - lu(k,1011) = lu(k,1011) - lu(k,225) * lu(k,975) - lu(k,1014) = lu(k,1014) - lu(k,226) * lu(k,975) - lu(k,1130) = lu(k,1130) - lu(k,221) * lu(k,1116) - lu(k,1147) = lu(k,1147) - lu(k,222) * lu(k,1116) - lu(k,1162) = lu(k,1162) - lu(k,223) * lu(k,1116) - lu(k,1167) = lu(k,1167) - lu(k,224) * lu(k,1116) - lu(k,1169) = lu(k,1169) - lu(k,225) * lu(k,1116) - lu(k,1172) = lu(k,1172) - lu(k,226) * lu(k,1116) - end do - end subroutine lu_fac05 - subroutine lu_fac06( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,227) = 1._r8 / lu(k,227) - lu(k,228) = lu(k,228) * lu(k,227) - lu(k,229) = lu(k,229) * lu(k,227) - lu(k,230) = lu(k,230) * lu(k,227) - lu(k,231) = lu(k,231) * lu(k,227) - lu(k,232) = lu(k,232) * lu(k,227) - lu(k,233) = lu(k,233) * lu(k,227) - lu(k,854) = lu(k,854) - lu(k,228) * lu(k,837) - lu(k,855) = lu(k,855) - lu(k,229) * lu(k,837) - lu(k,856) = lu(k,856) - lu(k,230) * lu(k,837) - lu(k,862) = lu(k,862) - lu(k,231) * lu(k,837) - lu(k,863) = lu(k,863) - lu(k,232) * lu(k,837) - lu(k,867) = lu(k,867) - lu(k,233) * lu(k,837) - lu(k,1078) = lu(k,1078) - lu(k,228) * lu(k,1069) - lu(k,1079) = lu(k,1079) - lu(k,229) * lu(k,1069) - lu(k,1080) = lu(k,1080) - lu(k,230) * lu(k,1069) - lu(k,1086) = lu(k,1086) - lu(k,231) * lu(k,1069) - lu(k,1087) = lu(k,1087) - lu(k,232) * lu(k,1069) - lu(k,1091) = lu(k,1091) - lu(k,233) * lu(k,1069) - lu(k,1163) = lu(k,1163) - lu(k,228) * lu(k,1117) - lu(k,1164) = lu(k,1164) - lu(k,229) * lu(k,1117) - lu(k,1165) = lu(k,1165) - lu(k,230) * lu(k,1117) - lu(k,1171) = lu(k,1171) - lu(k,231) * lu(k,1117) - lu(k,1172) = lu(k,1172) - lu(k,232) * lu(k,1117) - lu(k,1176) = lu(k,1176) - lu(k,233) * lu(k,1117) - lu(k,234) = 1._r8 / lu(k,234) - lu(k,235) = lu(k,235) * lu(k,234) - lu(k,236) = lu(k,236) * lu(k,234) - lu(k,237) = lu(k,237) * lu(k,234) - lu(k,238) = lu(k,238) * lu(k,234) - lu(k,239) = lu(k,239) * lu(k,234) - lu(k,602) = lu(k,602) - lu(k,235) * lu(k,600) - lu(k,603) = lu(k,603) - lu(k,236) * lu(k,600) - lu(k,606) = lu(k,606) - lu(k,237) * lu(k,600) - lu(k,609) = lu(k,609) - lu(k,238) * lu(k,600) - lu(k,611) = lu(k,611) - lu(k,239) * lu(k,600) - lu(k,880) = lu(k,880) - lu(k,235) * lu(k,869) - lu(k,881) = lu(k,881) - lu(k,236) * lu(k,869) - lu(k,886) = lu(k,886) - lu(k,237) * lu(k,869) - lu(k,889) = lu(k,889) - lu(k,238) * lu(k,869) - lu(k,892) = lu(k,892) - lu(k,239) * lu(k,869) - lu(k,996) = lu(k,996) - lu(k,235) * lu(k,976) - lu(k,1003) = lu(k,1003) - lu(k,236) * lu(k,976) - lu(k,1008) = lu(k,1008) - lu(k,237) * lu(k,976) - lu(k,1011) = lu(k,1011) - lu(k,238) * lu(k,976) - lu(k,1014) = lu(k,1014) - lu(k,239) * lu(k,976) - lu(k,1154) = lu(k,1154) - lu(k,235) * lu(k,1118) - lu(k,1161) = lu(k,1161) - lu(k,236) * lu(k,1118) - lu(k,1166) = lu(k,1166) - lu(k,237) * lu(k,1118) - lu(k,1169) = lu(k,1169) - lu(k,238) * lu(k,1118) - lu(k,1172) = lu(k,1172) - lu(k,239) * lu(k,1118) - lu(k,240) = 1._r8 / lu(k,240) - lu(k,241) = lu(k,241) * lu(k,240) - lu(k,242) = lu(k,242) * lu(k,240) - lu(k,243) = lu(k,243) * lu(k,240) - lu(k,244) = lu(k,244) * lu(k,240) - lu(k,245) = lu(k,245) * lu(k,240) - lu(k,246) = lu(k,246) * lu(k,240) - lu(k,247) = lu(k,247) * lu(k,240) - lu(k,623) = lu(k,623) - lu(k,241) * lu(k,616) - lu(k,624) = lu(k,624) - lu(k,242) * lu(k,616) - lu(k,626) = lu(k,626) - lu(k,243) * lu(k,616) - lu(k,630) = lu(k,630) - lu(k,244) * lu(k,616) - lu(k,632) = lu(k,632) - lu(k,245) * lu(k,616) - lu(k,634) = lu(k,634) - lu(k,246) * lu(k,616) - lu(k,637) = lu(k,637) - lu(k,247) * lu(k,616) - lu(k,928) = lu(k,928) - lu(k,241) * lu(k,906) - lu(k,929) = lu(k,929) - lu(k,242) * lu(k,906) - lu(k,931) = lu(k,931) - lu(k,243) * lu(k,906) - lu(k,935) = lu(k,935) - lu(k,244) * lu(k,906) - lu(k,938) = lu(k,938) - lu(k,245) * lu(k,906) - lu(k,943) = lu(k,943) - lu(k,246) * lu(k,906) - lu(k,948) = lu(k,948) - lu(k,247) * lu(k,906) - lu(k,1151) = lu(k,1151) - lu(k,241) * lu(k,1119) - lu(k,1152) = lu(k,1152) - lu(k,242) * lu(k,1119) - lu(k,1155) = lu(k,1155) - lu(k,243) * lu(k,1119) - lu(k,1159) = lu(k,1159) - lu(k,244) * lu(k,1119) - lu(k,1162) = lu(k,1162) - lu(k,245) * lu(k,1119) - lu(k,1167) = lu(k,1167) - lu(k,246) * lu(k,1119) - lu(k,1172) = lu(k,1172) - lu(k,247) * lu(k,1119) - lu(k,248) = 1._r8 / lu(k,248) - lu(k,249) = lu(k,249) * lu(k,248) - lu(k,250) = lu(k,250) * lu(k,248) - lu(k,251) = lu(k,251) * lu(k,248) - lu(k,372) = lu(k,372) - lu(k,249) * lu(k,368) - lu(k,373) = lu(k,373) - lu(k,250) * lu(k,368) - lu(k,375) = lu(k,375) - lu(k,251) * lu(k,368) - lu(k,497) = lu(k,497) - lu(k,249) * lu(k,491) - lu(k,498) = lu(k,498) - lu(k,250) * lu(k,491) - lu(k,500) = lu(k,500) - lu(k,251) * lu(k,491) - lu(k,582) = lu(k,582) - lu(k,249) * lu(k,572) - lu(k,584) = lu(k,584) - lu(k,250) * lu(k,572) - lu(k,586) = lu(k,586) - lu(k,251) * lu(k,572) - lu(k,632) = lu(k,632) - lu(k,249) * lu(k,617) - lu(k,634) = lu(k,634) - lu(k,250) * lu(k,617) - lu(k,637) = lu(k,637) - lu(k,251) * lu(k,617) - lu(k,653) = lu(k,653) - lu(k,249) * lu(k,642) - lu(k,655) = lu(k,655) - lu(k,250) * lu(k,642) - lu(k,657) = lu(k,657) - lu(k,251) * lu(k,642) - lu(k,755) = lu(k,755) - lu(k,249) * lu(k,733) - lu(k,759) = lu(k,759) - lu(k,250) * lu(k,733) - lu(k,763) = lu(k,763) - lu(k,251) * lu(k,733) - lu(k,1162) = lu(k,1162) - lu(k,249) * lu(k,1120) - lu(k,1167) = lu(k,1167) - lu(k,250) * lu(k,1120) - lu(k,1172) = lu(k,1172) - lu(k,251) * lu(k,1120) - lu(k,252) = 1._r8 / lu(k,252) - lu(k,253) = lu(k,253) * lu(k,252) - lu(k,254) = lu(k,254) * lu(k,252) - lu(k,255) = lu(k,255) * lu(k,252) - lu(k,256) = lu(k,256) * lu(k,252) - lu(k,257) = lu(k,257) * lu(k,252) - lu(k,258) = lu(k,258) * lu(k,252) - lu(k,259) = lu(k,259) * lu(k,252) - lu(k,684) = lu(k,684) - lu(k,253) * lu(k,681) - lu(k,695) = lu(k,695) - lu(k,254) * lu(k,681) - lu(k,697) = lu(k,697) - lu(k,255) * lu(k,681) - lu(k,698) = lu(k,698) - lu(k,256) * lu(k,681) - lu(k,702) = lu(k,702) - lu(k,257) * lu(k,681) - lu(k,703) = lu(k,703) - lu(k,258) * lu(k,681) - lu(k,704) = - lu(k,259) * lu(k,681) - lu(k,1026) = - lu(k,253) * lu(k,1023) - lu(k,1036) = lu(k,1036) - lu(k,254) * lu(k,1023) - lu(k,1038) = - lu(k,255) * lu(k,1023) - lu(k,1040) = - lu(k,256) * lu(k,1023) - lu(k,1048) = lu(k,1048) - lu(k,257) * lu(k,1023) - lu(k,1050) = lu(k,1050) - lu(k,258) * lu(k,1023) - lu(k,1051) = lu(k,1051) - lu(k,259) * lu(k,1023) - lu(k,1129) = lu(k,1129) - lu(k,253) * lu(k,1121) - lu(k,1158) = lu(k,1158) - lu(k,254) * lu(k,1121) - lu(k,1160) = lu(k,1160) - lu(k,255) * lu(k,1121) - lu(k,1162) = lu(k,1162) - lu(k,256) * lu(k,1121) - lu(k,1170) = lu(k,1170) - lu(k,257) * lu(k,1121) - lu(k,1172) = lu(k,1172) - lu(k,258) * lu(k,1121) - lu(k,1173) = lu(k,1173) - lu(k,259) * lu(k,1121) - lu(k,260) = 1._r8 / lu(k,260) - lu(k,261) = lu(k,261) * lu(k,260) - lu(k,262) = lu(k,262) * lu(k,260) - lu(k,263) = lu(k,263) * lu(k,260) - lu(k,264) = lu(k,264) * lu(k,260) - lu(k,265) = lu(k,265) * lu(k,260) - lu(k,266) = lu(k,266) * lu(k,260) - lu(k,267) = lu(k,267) * lu(k,260) - lu(k,342) = lu(k,342) - lu(k,261) * lu(k,341) - lu(k,343) = - lu(k,262) * lu(k,341) - lu(k,344) = lu(k,344) - lu(k,263) * lu(k,341) - lu(k,345) = lu(k,345) - lu(k,264) * lu(k,341) - lu(k,346) = lu(k,346) - lu(k,265) * lu(k,341) - lu(k,348) = - lu(k,266) * lu(k,341) - lu(k,350) = - lu(k,267) * lu(k,341) - lu(k,913) = lu(k,913) - lu(k,261) * lu(k,907) - lu(k,924) = - lu(k,262) * lu(k,907) - lu(k,927) = lu(k,927) - lu(k,263) * lu(k,907) - lu(k,938) = lu(k,938) - lu(k,264) * lu(k,907) - lu(k,943) = lu(k,943) - lu(k,265) * lu(k,907) - lu(k,948) = lu(k,948) - lu(k,266) * lu(k,907) - lu(k,952) = lu(k,952) - lu(k,267) * lu(k,907) - lu(k,1132) = lu(k,1132) - lu(k,261) * lu(k,1122) - lu(k,1146) = lu(k,1146) - lu(k,262) * lu(k,1122) - lu(k,1150) = lu(k,1150) - lu(k,263) * lu(k,1122) - lu(k,1162) = lu(k,1162) - lu(k,264) * lu(k,1122) - lu(k,1167) = lu(k,1167) - lu(k,265) * lu(k,1122) - lu(k,1172) = lu(k,1172) - lu(k,266) * lu(k,1122) - lu(k,1176) = lu(k,1176) - lu(k,267) * lu(k,1122) - lu(k,268) = 1._r8 / lu(k,268) - lu(k,269) = lu(k,269) * lu(k,268) - lu(k,270) = lu(k,270) * lu(k,268) - lu(k,271) = lu(k,271) * lu(k,268) - lu(k,272) = lu(k,272) * lu(k,268) - lu(k,273) = lu(k,273) * lu(k,268) - lu(k,274) = lu(k,274) * lu(k,268) - lu(k,275) = lu(k,275) * lu(k,268) - lu(k,872) = lu(k,872) - lu(k,269) * lu(k,870) - lu(k,875) = - lu(k,270) * lu(k,870) - lu(k,883) = lu(k,883) - lu(k,271) * lu(k,870) - lu(k,886) = lu(k,886) - lu(k,272) * lu(k,870) - lu(k,888) = lu(k,888) - lu(k,273) * lu(k,870) - lu(k,890) = lu(k,890) - lu(k,274) * lu(k,870) - lu(k,893) = lu(k,893) - lu(k,275) * lu(k,870) - lu(k,956) = lu(k,956) - lu(k,269) * lu(k,955) - lu(k,957) = - lu(k,270) * lu(k,955) - lu(k,961) = lu(k,961) - lu(k,271) * lu(k,955) - lu(k,964) = lu(k,964) - lu(k,272) * lu(k,955) - lu(k,966) = lu(k,966) - lu(k,273) * lu(k,955) - lu(k,968) = lu(k,968) - lu(k,274) * lu(k,955) - lu(k,971) = - lu(k,275) * lu(k,955) - lu(k,1027) = - lu(k,269) * lu(k,1024) - lu(k,1028) = lu(k,1028) - lu(k,270) * lu(k,1024) - lu(k,1041) = - lu(k,271) * lu(k,1024) - lu(k,1044) = lu(k,1044) - lu(k,272) * lu(k,1024) - lu(k,1046) = lu(k,1046) - lu(k,273) * lu(k,1024) - lu(k,1048) = lu(k,1048) - lu(k,274) * lu(k,1024) - lu(k,1051) = lu(k,1051) - lu(k,275) * lu(k,1024) - end do - end subroutine lu_fac06 - subroutine lu_fac07( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,276) = 1._r8 / lu(k,276) - lu(k,277) = lu(k,277) * lu(k,276) - lu(k,278) = lu(k,278) * lu(k,276) - lu(k,279) = lu(k,279) * lu(k,276) - lu(k,280) = lu(k,280) * lu(k,276) - lu(k,281) = lu(k,281) * lu(k,276) - lu(k,282) = lu(k,282) * lu(k,276) - lu(k,855) = lu(k,855) - lu(k,277) * lu(k,838) - lu(k,856) = lu(k,856) - lu(k,278) * lu(k,838) - lu(k,857) = - lu(k,279) * lu(k,838) - lu(k,858) = lu(k,858) - lu(k,280) * lu(k,838) - lu(k,863) = lu(k,863) - lu(k,281) * lu(k,838) - lu(k,867) = lu(k,867) - lu(k,282) * lu(k,838) - lu(k,884) = lu(k,884) - lu(k,277) * lu(k,871) - lu(k,885) = lu(k,885) - lu(k,278) * lu(k,871) - lu(k,886) = lu(k,886) - lu(k,279) * lu(k,871) - lu(k,887) = lu(k,887) - lu(k,280) * lu(k,871) - lu(k,892) = lu(k,892) - lu(k,281) * lu(k,871) - lu(k,896) = - lu(k,282) * lu(k,871) - lu(k,940) = lu(k,940) - lu(k,277) * lu(k,908) - lu(k,941) = lu(k,941) - lu(k,278) * lu(k,908) - lu(k,942) = lu(k,942) - lu(k,279) * lu(k,908) - lu(k,943) = lu(k,943) - lu(k,280) * lu(k,908) - lu(k,948) = lu(k,948) - lu(k,281) * lu(k,908) - lu(k,952) = lu(k,952) - lu(k,282) * lu(k,908) - lu(k,1164) = lu(k,1164) - lu(k,277) * lu(k,1123) - lu(k,1165) = lu(k,1165) - lu(k,278) * lu(k,1123) - lu(k,1166) = lu(k,1166) - lu(k,279) * lu(k,1123) - lu(k,1167) = lu(k,1167) - lu(k,280) * lu(k,1123) - lu(k,1172) = lu(k,1172) - lu(k,281) * lu(k,1123) - lu(k,1176) = lu(k,1176) - lu(k,282) * lu(k,1123) - lu(k,283) = 1._r8 / lu(k,283) - lu(k,284) = lu(k,284) * lu(k,283) - lu(k,285) = lu(k,285) * lu(k,283) - lu(k,286) = lu(k,286) * lu(k,283) - lu(k,287) = lu(k,287) * lu(k,283) - lu(k,288) = lu(k,288) * lu(k,283) - lu(k,289) = lu(k,289) * lu(k,283) - lu(k,290) = lu(k,290) * lu(k,283) - lu(k,291) = lu(k,291) * lu(k,283) - lu(k,664) = lu(k,664) - lu(k,284) * lu(k,661) - lu(k,665) = - lu(k,285) * lu(k,661) - lu(k,668) = lu(k,668) - lu(k,286) * lu(k,661) - lu(k,671) = lu(k,671) - lu(k,287) * lu(k,661) - lu(k,673) = lu(k,673) - lu(k,288) * lu(k,661) - lu(k,675) = lu(k,675) - lu(k,289) * lu(k,661) - lu(k,676) = lu(k,676) - lu(k,290) * lu(k,661) - lu(k,677) = lu(k,677) - lu(k,291) * lu(k,661) - lu(k,1026) = lu(k,1026) - lu(k,284) * lu(k,1025) - lu(k,1031) = - lu(k,285) * lu(k,1025) - lu(k,1035) = lu(k,1035) - lu(k,286) * lu(k,1025) - lu(k,1040) = lu(k,1040) - lu(k,287) * lu(k,1025) - lu(k,1045) = lu(k,1045) - lu(k,288) * lu(k,1025) - lu(k,1048) = lu(k,1048) - lu(k,289) * lu(k,1025) - lu(k,1050) = lu(k,1050) - lu(k,290) * lu(k,1025) - lu(k,1051) = lu(k,1051) - lu(k,291) * lu(k,1025) - lu(k,1129) = lu(k,1129) - lu(k,284) * lu(k,1124) - lu(k,1146) = lu(k,1146) - lu(k,285) * lu(k,1124) - lu(k,1157) = lu(k,1157) - lu(k,286) * lu(k,1124) - lu(k,1162) = lu(k,1162) - lu(k,287) * lu(k,1124) - lu(k,1167) = lu(k,1167) - lu(k,288) * lu(k,1124) - lu(k,1170) = lu(k,1170) - lu(k,289) * lu(k,1124) - lu(k,1172) = lu(k,1172) - lu(k,290) * lu(k,1124) - lu(k,1173) = lu(k,1173) - lu(k,291) * lu(k,1124) - lu(k,292) = 1._r8 / lu(k,292) - lu(k,293) = lu(k,293) * lu(k,292) - lu(k,294) = lu(k,294) * lu(k,292) - lu(k,295) = lu(k,295) * lu(k,292) - lu(k,296) = lu(k,296) * lu(k,292) - lu(k,297) = lu(k,297) * lu(k,292) - lu(k,298) = lu(k,298) * lu(k,292) - lu(k,299) = lu(k,299) * lu(k,292) - lu(k,300) = lu(k,300) * lu(k,292) - lu(k,851) = lu(k,851) - lu(k,293) * lu(k,839) - lu(k,854) = lu(k,854) - lu(k,294) * lu(k,839) - lu(k,855) = lu(k,855) - lu(k,295) * lu(k,839) - lu(k,856) = lu(k,856) - lu(k,296) * lu(k,839) - lu(k,858) = lu(k,858) - lu(k,297) * lu(k,839) - lu(k,862) = lu(k,862) - lu(k,298) * lu(k,839) - lu(k,863) = lu(k,863) - lu(k,299) * lu(k,839) - lu(k,867) = lu(k,867) - lu(k,300) * lu(k,839) - lu(k,1075) = lu(k,1075) - lu(k,293) * lu(k,1070) - lu(k,1078) = lu(k,1078) - lu(k,294) * lu(k,1070) - lu(k,1079) = lu(k,1079) - lu(k,295) * lu(k,1070) - lu(k,1080) = lu(k,1080) - lu(k,296) * lu(k,1070) - lu(k,1082) = lu(k,1082) - lu(k,297) * lu(k,1070) - lu(k,1086) = lu(k,1086) - lu(k,298) * lu(k,1070) - lu(k,1087) = lu(k,1087) - lu(k,299) * lu(k,1070) - lu(k,1091) = lu(k,1091) - lu(k,300) * lu(k,1070) - lu(k,1160) = lu(k,1160) - lu(k,293) * lu(k,1125) - lu(k,1163) = lu(k,1163) - lu(k,294) * lu(k,1125) - lu(k,1164) = lu(k,1164) - lu(k,295) * lu(k,1125) - lu(k,1165) = lu(k,1165) - lu(k,296) * lu(k,1125) - lu(k,1167) = lu(k,1167) - lu(k,297) * lu(k,1125) - lu(k,1171) = lu(k,1171) - lu(k,298) * lu(k,1125) - lu(k,1172) = lu(k,1172) - lu(k,299) * lu(k,1125) - lu(k,1176) = lu(k,1176) - lu(k,300) * lu(k,1125) - lu(k,301) = 1._r8 / lu(k,301) - lu(k,302) = lu(k,302) * lu(k,301) - lu(k,303) = lu(k,303) * lu(k,301) - lu(k,304) = lu(k,304) * lu(k,301) - lu(k,305) = lu(k,305) * lu(k,301) - lu(k,306) = lu(k,306) * lu(k,301) - lu(k,307) = lu(k,307) * lu(k,301) - lu(k,664) = lu(k,664) - lu(k,302) * lu(k,662) - lu(k,669) = lu(k,669) - lu(k,303) * lu(k,662) - lu(k,670) = lu(k,670) - lu(k,304) * lu(k,662) - lu(k,671) = lu(k,671) - lu(k,305) * lu(k,662) - lu(k,676) = lu(k,676) - lu(k,306) * lu(k,662) - lu(k,679) = - lu(k,307) * lu(k,662) - lu(k,684) = lu(k,684) - lu(k,302) * lu(k,682) - lu(k,695) = lu(k,695) - lu(k,303) * lu(k,682) - lu(k,697) = lu(k,697) - lu(k,304) * lu(k,682) - lu(k,698) = lu(k,698) - lu(k,305) * lu(k,682) - lu(k,703) = lu(k,703) - lu(k,306) * lu(k,682) - lu(k,706) = - lu(k,307) * lu(k,682) - lu(k,911) = lu(k,911) - lu(k,302) * lu(k,909) - lu(k,934) = lu(k,934) - lu(k,303) * lu(k,909) - lu(k,936) = lu(k,936) - lu(k,304) * lu(k,909) - lu(k,938) = lu(k,938) - lu(k,305) * lu(k,909) - lu(k,948) = lu(k,948) - lu(k,306) * lu(k,909) - lu(k,952) = lu(k,952) - lu(k,307) * lu(k,909) - lu(k,1129) = lu(k,1129) - lu(k,302) * lu(k,1126) - lu(k,1158) = lu(k,1158) - lu(k,303) * lu(k,1126) - lu(k,1160) = lu(k,1160) - lu(k,304) * lu(k,1126) - lu(k,1162) = lu(k,1162) - lu(k,305) * lu(k,1126) - lu(k,1172) = lu(k,1172) - lu(k,306) * lu(k,1126) - lu(k,1176) = lu(k,1176) - lu(k,307) * lu(k,1126) - lu(k,308) = 1._r8 / lu(k,308) - lu(k,309) = lu(k,309) * lu(k,308) - lu(k,310) = lu(k,310) * lu(k,308) - lu(k,311) = lu(k,311) * lu(k,308) - lu(k,312) = lu(k,312) * lu(k,308) - lu(k,313) = lu(k,313) * lu(k,308) - lu(k,314) = lu(k,314) * lu(k,308) - lu(k,315) = lu(k,315) * lu(k,308) - lu(k,316) = lu(k,316) * lu(k,308) - lu(k,317) = lu(k,317) * lu(k,308) - lu(k,981) = - lu(k,309) * lu(k,977) - lu(k,993) = lu(k,993) - lu(k,310) * lu(k,977) - lu(k,997) = - lu(k,311) * lu(k,977) - lu(k,1001) = lu(k,1001) - lu(k,312) * lu(k,977) - lu(k,1008) = lu(k,1008) - lu(k,313) * lu(k,977) - lu(k,1011) = lu(k,1011) - lu(k,314) * lu(k,977) - lu(k,1012) = lu(k,1012) - lu(k,315) * lu(k,977) - lu(k,1014) = lu(k,1014) - lu(k,316) * lu(k,977) - lu(k,1015) = lu(k,1015) - lu(k,317) * lu(k,977) - lu(k,1133) = lu(k,1133) - lu(k,309) * lu(k,1127) - lu(k,1151) = lu(k,1151) - lu(k,310) * lu(k,1127) - lu(k,1155) = lu(k,1155) - lu(k,311) * lu(k,1127) - lu(k,1159) = lu(k,1159) - lu(k,312) * lu(k,1127) - lu(k,1166) = lu(k,1166) - lu(k,313) * lu(k,1127) - lu(k,1169) = lu(k,1169) - lu(k,314) * lu(k,1127) - lu(k,1170) = lu(k,1170) - lu(k,315) * lu(k,1127) - lu(k,1172) = lu(k,1172) - lu(k,316) * lu(k,1127) - lu(k,1173) = lu(k,1173) - lu(k,317) * lu(k,1127) - lu(k,1183) = - lu(k,309) * lu(k,1181) - lu(k,1195) = lu(k,1195) - lu(k,310) * lu(k,1181) - lu(k,1199) = lu(k,1199) - lu(k,311) * lu(k,1181) - lu(k,1203) = lu(k,1203) - lu(k,312) * lu(k,1181) - lu(k,1210) = lu(k,1210) - lu(k,313) * lu(k,1181) - lu(k,1213) = - lu(k,314) * lu(k,1181) - lu(k,1214) = lu(k,1214) - lu(k,315) * lu(k,1181) - lu(k,1216) = lu(k,1216) - lu(k,316) * lu(k,1181) - lu(k,1217) = lu(k,1217) - lu(k,317) * lu(k,1181) - end do - end subroutine lu_fac07 - subroutine lu_fac08( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,318) = 1._r8 / lu(k,318) - lu(k,319) = lu(k,319) * lu(k,318) - lu(k,320) = lu(k,320) * lu(k,318) - lu(k,321) = lu(k,321) * lu(k,318) - lu(k,322) = lu(k,322) * lu(k,318) - lu(k,524) = lu(k,524) - lu(k,319) * lu(k,523) - lu(k,534) = lu(k,534) - lu(k,320) * lu(k,523) - lu(k,544) = lu(k,544) - lu(k,321) * lu(k,523) - lu(k,547) = - lu(k,322) * lu(k,523) - lu(k,664) = lu(k,664) - lu(k,319) * lu(k,663) - lu(k,670) = lu(k,670) - lu(k,320) * lu(k,663) - lu(k,676) = lu(k,676) - lu(k,321) * lu(k,663) - lu(k,679) = lu(k,679) - lu(k,322) * lu(k,663) - lu(k,684) = lu(k,684) - lu(k,319) * lu(k,683) - lu(k,697) = lu(k,697) - lu(k,320) * lu(k,683) - lu(k,703) = lu(k,703) - lu(k,321) * lu(k,683) - lu(k,706) = lu(k,706) - lu(k,322) * lu(k,683) - lu(k,735) = lu(k,735) - lu(k,319) * lu(k,734) - lu(k,753) = lu(k,753) - lu(k,320) * lu(k,734) - lu(k,763) = lu(k,763) - lu(k,321) * lu(k,734) - lu(k,767) = lu(k,767) - lu(k,322) * lu(k,734) - lu(k,911) = lu(k,911) - lu(k,319) * lu(k,910) - lu(k,936) = lu(k,936) - lu(k,320) * lu(k,910) - lu(k,948) = lu(k,948) - lu(k,321) * lu(k,910) - lu(k,952) = lu(k,952) - lu(k,322) * lu(k,910) - lu(k,979) = lu(k,979) - lu(k,319) * lu(k,978) - lu(k,1002) = lu(k,1002) - lu(k,320) * lu(k,978) - lu(k,1014) = lu(k,1014) - lu(k,321) * lu(k,978) - lu(k,1018) = - lu(k,322) * lu(k,978) - lu(k,1129) = lu(k,1129) - lu(k,319) * lu(k,1128) - lu(k,1160) = lu(k,1160) - lu(k,320) * lu(k,1128) - lu(k,1172) = lu(k,1172) - lu(k,321) * lu(k,1128) - lu(k,1176) = lu(k,1176) - lu(k,322) * lu(k,1128) - lu(k,323) = 1._r8 / lu(k,323) - lu(k,324) = lu(k,324) * lu(k,323) - lu(k,325) = lu(k,325) * lu(k,323) - lu(k,337) = lu(k,337) - lu(k,324) * lu(k,335) - lu(k,338) = - lu(k,325) * lu(k,335) - lu(k,460) = lu(k,460) - lu(k,324) * lu(k,457) - lu(k,462) = - lu(k,325) * lu(k,457) - lu(k,478) = lu(k,478) - lu(k,324) * lu(k,476) - lu(k,485) = lu(k,485) - lu(k,325) * lu(k,476) - lu(k,510) = lu(k,510) - lu(k,324) * lu(k,509) - lu(k,511) = - lu(k,325) * lu(k,509) - lu(k,528) = lu(k,528) - lu(k,324) * lu(k,524) - lu(k,539) = - lu(k,325) * lu(k,524) - lu(k,577) = lu(k,577) - lu(k,324) * lu(k,573) - lu(k,583) = - lu(k,325) * lu(k,573) - lu(k,666) = - lu(k,324) * lu(k,664) - lu(k,672) = - lu(k,325) * lu(k,664) - lu(k,688) = lu(k,688) - lu(k,324) * lu(k,684) - lu(k,699) = - lu(k,325) * lu(k,684) - lu(k,708) = lu(k,708) - lu(k,324) * lu(k,707) - lu(k,721) = - lu(k,325) * lu(k,707) - lu(k,743) = lu(k,743) - lu(k,324) * lu(k,735) - lu(k,758) = - lu(k,325) * lu(k,735) - lu(k,925) = - lu(k,324) * lu(k,911) - lu(k,942) = lu(k,942) - lu(k,325) * lu(k,911) - lu(k,989) = lu(k,989) - lu(k,324) * lu(k,979) - lu(k,1008) = lu(k,1008) - lu(k,325) * lu(k,979) - lu(k,1032) = - lu(k,324) * lu(k,1026) - lu(k,1044) = lu(k,1044) - lu(k,325) * lu(k,1026) - lu(k,1147) = lu(k,1147) - lu(k,324) * lu(k,1129) - lu(k,1166) = lu(k,1166) - lu(k,325) * lu(k,1129) - lu(k,1261) = lu(k,1261) - lu(k,324) * lu(k,1249) - lu(k,1277) = lu(k,1277) - lu(k,325) * lu(k,1249) - lu(k,328) = 1._r8 / lu(k,328) - lu(k,329) = lu(k,329) * lu(k,328) - lu(k,330) = lu(k,330) * lu(k,328) - lu(k,331) = lu(k,331) * lu(k,328) - lu(k,332) = lu(k,332) * lu(k,328) - lu(k,333) = lu(k,333) * lu(k,328) - lu(k,334) = lu(k,334) * lu(k,328) - lu(k,844) = - lu(k,329) * lu(k,840) - lu(k,853) = lu(k,853) - lu(k,330) * lu(k,840) - lu(k,858) = lu(k,858) - lu(k,331) * lu(k,840) - lu(k,861) = - lu(k,332) * lu(k,840) - lu(k,863) = lu(k,863) - lu(k,333) * lu(k,840) - lu(k,866) = - lu(k,334) * lu(k,840) - lu(k,921) = lu(k,921) - lu(k,329) * lu(k,912) - lu(k,938) = lu(k,938) - lu(k,330) * lu(k,912) - lu(k,943) = lu(k,943) - lu(k,331) * lu(k,912) - lu(k,946) = lu(k,946) - lu(k,332) * lu(k,912) - lu(k,948) = lu(k,948) - lu(k,333) * lu(k,912) - lu(k,951) = lu(k,951) - lu(k,334) * lu(k,912) - lu(k,984) = - lu(k,329) * lu(k,980) - lu(k,1004) = lu(k,1004) - lu(k,330) * lu(k,980) - lu(k,1009) = lu(k,1009) - lu(k,331) * lu(k,980) - lu(k,1012) = lu(k,1012) - lu(k,332) * lu(k,980) - lu(k,1014) = lu(k,1014) - lu(k,333) * lu(k,980) - lu(k,1017) = lu(k,1017) - lu(k,334) * lu(k,980) - lu(k,1142) = lu(k,1142) - lu(k,329) * lu(k,1130) - lu(k,1162) = lu(k,1162) - lu(k,330) * lu(k,1130) - lu(k,1167) = lu(k,1167) - lu(k,331) * lu(k,1130) - lu(k,1170) = lu(k,1170) - lu(k,332) * lu(k,1130) - lu(k,1172) = lu(k,1172) - lu(k,333) * lu(k,1130) - lu(k,1175) = lu(k,1175) - lu(k,334) * lu(k,1130) - lu(k,1257) = lu(k,1257) - lu(k,329) * lu(k,1250) - lu(k,1273) = lu(k,1273) - lu(k,330) * lu(k,1250) - lu(k,1278) = lu(k,1278) - lu(k,331) * lu(k,1250) - lu(k,1281) = lu(k,1281) - lu(k,332) * lu(k,1250) - lu(k,1283) = lu(k,1283) - lu(k,333) * lu(k,1250) - lu(k,1286) = lu(k,1286) - lu(k,334) * lu(k,1250) - lu(k,336) = 1._r8 / lu(k,336) - lu(k,337) = lu(k,337) * lu(k,336) - lu(k,338) = lu(k,338) * lu(k,336) - lu(k,339) = lu(k,339) * lu(k,336) - lu(k,340) = lu(k,340) * lu(k,336) - lu(k,460) = lu(k,460) - lu(k,337) * lu(k,458) - lu(k,462) = lu(k,462) - lu(k,338) * lu(k,458) - lu(k,463) = lu(k,463) - lu(k,339) * lu(k,458) - lu(k,464) = lu(k,464) - lu(k,340) * lu(k,458) - lu(k,577) = lu(k,577) - lu(k,337) * lu(k,574) - lu(k,583) = lu(k,583) - lu(k,338) * lu(k,574) - lu(k,584) = lu(k,584) - lu(k,339) * lu(k,574) - lu(k,586) = lu(k,586) - lu(k,340) * lu(k,574) - lu(k,622) = - lu(k,337) * lu(k,618) - lu(k,633) = - lu(k,338) * lu(k,618) - lu(k,634) = lu(k,634) - lu(k,339) * lu(k,618) - lu(k,637) = lu(k,637) - lu(k,340) * lu(k,618) - lu(k,688) = lu(k,688) - lu(k,337) * lu(k,685) - lu(k,699) = lu(k,699) - lu(k,338) * lu(k,685) - lu(k,700) = lu(k,700) - lu(k,339) * lu(k,685) - lu(k,703) = lu(k,703) - lu(k,340) * lu(k,685) - lu(k,743) = lu(k,743) - lu(k,337) * lu(k,736) - lu(k,758) = lu(k,758) - lu(k,338) * lu(k,736) - lu(k,759) = lu(k,759) - lu(k,339) * lu(k,736) - lu(k,763) = lu(k,763) - lu(k,340) * lu(k,736) - lu(k,1147) = lu(k,1147) - lu(k,337) * lu(k,1131) - lu(k,1166) = lu(k,1166) - lu(k,338) * lu(k,1131) - lu(k,1167) = lu(k,1167) - lu(k,339) * lu(k,1131) - lu(k,1172) = lu(k,1172) - lu(k,340) * lu(k,1131) - lu(k,1192) = lu(k,1192) - lu(k,337) * lu(k,1182) - lu(k,1210) = lu(k,1210) - lu(k,338) * lu(k,1182) - lu(k,1211) = lu(k,1211) - lu(k,339) * lu(k,1182) - lu(k,1216) = lu(k,1216) - lu(k,340) * lu(k,1182) - lu(k,1261) = lu(k,1261) - lu(k,337) * lu(k,1251) - lu(k,1277) = lu(k,1277) - lu(k,338) * lu(k,1251) - lu(k,1278) = lu(k,1278) - lu(k,339) * lu(k,1251) - lu(k,1283) = lu(k,1283) - lu(k,340) * lu(k,1251) - lu(k,342) = 1._r8 / lu(k,342) - lu(k,343) = lu(k,343) * lu(k,342) - lu(k,344) = lu(k,344) * lu(k,342) - lu(k,345) = lu(k,345) * lu(k,342) - lu(k,346) = lu(k,346) * lu(k,342) - lu(k,347) = lu(k,347) * lu(k,342) - lu(k,348) = lu(k,348) * lu(k,342) - lu(k,349) = lu(k,349) * lu(k,342) - lu(k,350) = lu(k,350) * lu(k,342) - lu(k,527) = - lu(k,343) * lu(k,525) - lu(k,531) = lu(k,531) - lu(k,344) * lu(k,525) - lu(k,536) = lu(k,536) - lu(k,345) * lu(k,525) - lu(k,540) = lu(k,540) - lu(k,346) * lu(k,525) - lu(k,542) = lu(k,542) - lu(k,347) * lu(k,525) - lu(k,544) = lu(k,544) - lu(k,348) * lu(k,525) - lu(k,546) = - lu(k,349) * lu(k,525) - lu(k,547) = lu(k,547) - lu(k,350) * lu(k,525) - lu(k,924) = lu(k,924) - lu(k,343) * lu(k,913) - lu(k,927) = lu(k,927) - lu(k,344) * lu(k,913) - lu(k,938) = lu(k,938) - lu(k,345) * lu(k,913) - lu(k,943) = lu(k,943) - lu(k,346) * lu(k,913) - lu(k,946) = lu(k,946) - lu(k,347) * lu(k,913) - lu(k,948) = lu(k,948) - lu(k,348) * lu(k,913) - lu(k,951) = lu(k,951) - lu(k,349) * lu(k,913) - lu(k,952) = lu(k,952) - lu(k,350) * lu(k,913) - lu(k,1146) = lu(k,1146) - lu(k,343) * lu(k,1132) - lu(k,1150) = lu(k,1150) - lu(k,344) * lu(k,1132) - lu(k,1162) = lu(k,1162) - lu(k,345) * lu(k,1132) - lu(k,1167) = lu(k,1167) - lu(k,346) * lu(k,1132) - lu(k,1170) = lu(k,1170) - lu(k,347) * lu(k,1132) - lu(k,1172) = lu(k,1172) - lu(k,348) * lu(k,1132) - lu(k,1175) = lu(k,1175) - lu(k,349) * lu(k,1132) - lu(k,1176) = lu(k,1176) - lu(k,350) * lu(k,1132) - lu(k,1260) = lu(k,1260) - lu(k,343) * lu(k,1252) - lu(k,1262) = lu(k,1262) - lu(k,344) * lu(k,1252) - lu(k,1273) = lu(k,1273) - lu(k,345) * lu(k,1252) - lu(k,1278) = lu(k,1278) - lu(k,346) * lu(k,1252) - lu(k,1281) = lu(k,1281) - lu(k,347) * lu(k,1252) - lu(k,1283) = lu(k,1283) - lu(k,348) * lu(k,1252) - lu(k,1286) = lu(k,1286) - lu(k,349) * lu(k,1252) - lu(k,1287) = - lu(k,350) * lu(k,1252) - end do - end subroutine lu_fac08 - subroutine lu_fac09( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,352) = 1._r8 / lu(k,352) - lu(k,353) = lu(k,353) * lu(k,352) - lu(k,354) = lu(k,354) * lu(k,352) - lu(k,355) = lu(k,355) * lu(k,352) - lu(k,356) = lu(k,356) * lu(k,352) - lu(k,357) = lu(k,357) * lu(k,352) - lu(k,358) = lu(k,358) * lu(k,352) - lu(k,359) = lu(k,359) * lu(k,352) - lu(k,819) = lu(k,819) - lu(k,353) * lu(k,814) - lu(k,820) = lu(k,820) - lu(k,354) * lu(k,814) - lu(k,821) = lu(k,821) - lu(k,355) * lu(k,814) - lu(k,822) = lu(k,822) - lu(k,356) * lu(k,814) - lu(k,824) = - lu(k,357) * lu(k,814) - lu(k,828) = lu(k,828) - lu(k,358) * lu(k,814) - lu(k,831) = lu(k,831) - lu(k,359) * lu(k,814) - lu(k,883) = lu(k,883) - lu(k,353) * lu(k,872) - lu(k,884) = lu(k,884) - lu(k,354) * lu(k,872) - lu(k,885) = lu(k,885) - lu(k,355) * lu(k,872) - lu(k,886) = lu(k,886) - lu(k,356) * lu(k,872) - lu(k,888) = lu(k,888) - lu(k,357) * lu(k,872) - lu(k,892) = lu(k,892) - lu(k,358) * lu(k,872) - lu(k,896) = lu(k,896) - lu(k,359) * lu(k,872) - lu(k,939) = lu(k,939) - lu(k,353) * lu(k,914) - lu(k,940) = lu(k,940) - lu(k,354) * lu(k,914) - lu(k,941) = lu(k,941) - lu(k,355) * lu(k,914) - lu(k,942) = lu(k,942) - lu(k,356) * lu(k,914) - lu(k,944) = lu(k,944) - lu(k,357) * lu(k,914) - lu(k,948) = lu(k,948) - lu(k,358) * lu(k,914) - lu(k,952) = lu(k,952) - lu(k,359) * lu(k,914) - lu(k,961) = lu(k,961) - lu(k,353) * lu(k,956) - lu(k,962) = - lu(k,354) * lu(k,956) - lu(k,963) = lu(k,963) - lu(k,355) * lu(k,956) - lu(k,964) = lu(k,964) - lu(k,356) * lu(k,956) - lu(k,966) = lu(k,966) - lu(k,357) * lu(k,956) - lu(k,970) = lu(k,970) - lu(k,358) * lu(k,956) - lu(k,974) = - lu(k,359) * lu(k,956) - lu(k,1041) = lu(k,1041) - lu(k,353) * lu(k,1027) - lu(k,1042) = - lu(k,354) * lu(k,1027) - lu(k,1043) = - lu(k,355) * lu(k,1027) - lu(k,1044) = lu(k,1044) - lu(k,356) * lu(k,1027) - lu(k,1046) = lu(k,1046) - lu(k,357) * lu(k,1027) - lu(k,1050) = lu(k,1050) - lu(k,358) * lu(k,1027) - lu(k,1054) = lu(k,1054) - lu(k,359) * lu(k,1027) - lu(k,360) = 1._r8 / lu(k,360) - lu(k,361) = lu(k,361) * lu(k,360) - lu(k,362) = lu(k,362) * lu(k,360) - lu(k,363) = lu(k,363) * lu(k,360) - lu(k,364) = lu(k,364) * lu(k,360) - lu(k,365) = lu(k,365) * lu(k,360) - lu(k,390) = - lu(k,361) * lu(k,388) - lu(k,392) = - lu(k,362) * lu(k,388) - lu(k,393) = lu(k,393) - lu(k,363) * lu(k,388) - lu(k,397) = lu(k,397) - lu(k,364) * lu(k,388) - lu(k,399) = lu(k,399) - lu(k,365) * lu(k,388) - lu(k,741) = lu(k,741) - lu(k,361) * lu(k,737) - lu(k,751) = lu(k,751) - lu(k,362) * lu(k,737) - lu(k,753) = lu(k,753) - lu(k,363) * lu(k,737) - lu(k,763) = lu(k,763) - lu(k,364) * lu(k,737) - lu(k,767) = lu(k,767) - lu(k,365) * lu(k,737) - lu(k,923) = lu(k,923) - lu(k,361) * lu(k,915) - lu(k,934) = lu(k,934) - lu(k,362) * lu(k,915) - lu(k,936) = lu(k,936) - lu(k,363) * lu(k,915) - lu(k,948) = lu(k,948) - lu(k,364) * lu(k,915) - lu(k,952) = lu(k,952) - lu(k,365) * lu(k,915) - lu(k,987) = - lu(k,361) * lu(k,981) - lu(k,1000) = lu(k,1000) - lu(k,362) * lu(k,981) - lu(k,1002) = lu(k,1002) - lu(k,363) * lu(k,981) - lu(k,1014) = lu(k,1014) - lu(k,364) * lu(k,981) - lu(k,1018) = lu(k,1018) - lu(k,365) * lu(k,981) - lu(k,1145) = lu(k,1145) - lu(k,361) * lu(k,1133) - lu(k,1158) = lu(k,1158) - lu(k,362) * lu(k,1133) - lu(k,1160) = lu(k,1160) - lu(k,363) * lu(k,1133) - lu(k,1172) = lu(k,1172) - lu(k,364) * lu(k,1133) - lu(k,1176) = lu(k,1176) - lu(k,365) * lu(k,1133) - lu(k,1190) = - lu(k,361) * lu(k,1183) - lu(k,1202) = lu(k,1202) - lu(k,362) * lu(k,1183) - lu(k,1204) = - lu(k,363) * lu(k,1183) - lu(k,1216) = lu(k,1216) - lu(k,364) * lu(k,1183) - lu(k,1220) = - lu(k,365) * lu(k,1183) - lu(k,1259) = lu(k,1259) - lu(k,361) * lu(k,1253) - lu(k,1269) = lu(k,1269) - lu(k,362) * lu(k,1253) - lu(k,1271) = lu(k,1271) - lu(k,363) * lu(k,1253) - lu(k,1283) = lu(k,1283) - lu(k,364) * lu(k,1253) - lu(k,1287) = lu(k,1287) - lu(k,365) * lu(k,1253) - lu(k,369) = 1._r8 / lu(k,369) - lu(k,370) = lu(k,370) * lu(k,369) - lu(k,371) = lu(k,371) * lu(k,369) - lu(k,372) = lu(k,372) * lu(k,369) - lu(k,373) = lu(k,373) * lu(k,369) - lu(k,374) = lu(k,374) * lu(k,369) - lu(k,375) = lu(k,375) * lu(k,369) - lu(k,376) = lu(k,376) * lu(k,369) - lu(k,744) = lu(k,744) - lu(k,370) * lu(k,738) - lu(k,753) = lu(k,753) - lu(k,371) * lu(k,738) - lu(k,755) = lu(k,755) - lu(k,372) * lu(k,738) - lu(k,759) = lu(k,759) - lu(k,373) * lu(k,738) - lu(k,761) = lu(k,761) - lu(k,374) * lu(k,738) - lu(k,763) = lu(k,763) - lu(k,375) * lu(k,738) - lu(k,766) = lu(k,766) - lu(k,376) * lu(k,738) - lu(k,848) = - lu(k,370) * lu(k,841) - lu(k,851) = lu(k,851) - lu(k,371) * lu(k,841) - lu(k,853) = lu(k,853) - lu(k,372) * lu(k,841) - lu(k,858) = lu(k,858) - lu(k,373) * lu(k,841) - lu(k,861) = lu(k,861) - lu(k,374) * lu(k,841) - lu(k,863) = lu(k,863) - lu(k,375) * lu(k,841) - lu(k,866) = lu(k,866) - lu(k,376) * lu(k,841) - lu(k,927) = lu(k,927) - lu(k,370) * lu(k,916) - lu(k,936) = lu(k,936) - lu(k,371) * lu(k,916) - lu(k,938) = lu(k,938) - lu(k,372) * lu(k,916) - lu(k,943) = lu(k,943) - lu(k,373) * lu(k,916) - lu(k,946) = lu(k,946) - lu(k,374) * lu(k,916) - lu(k,948) = lu(k,948) - lu(k,375) * lu(k,916) - lu(k,951) = lu(k,951) - lu(k,376) * lu(k,916) - lu(k,1150) = lu(k,1150) - lu(k,370) * lu(k,1134) - lu(k,1160) = lu(k,1160) - lu(k,371) * lu(k,1134) - lu(k,1162) = lu(k,1162) - lu(k,372) * lu(k,1134) - lu(k,1167) = lu(k,1167) - lu(k,373) * lu(k,1134) - lu(k,1170) = lu(k,1170) - lu(k,374) * lu(k,1134) - lu(k,1172) = lu(k,1172) - lu(k,375) * lu(k,1134) - lu(k,1175) = lu(k,1175) - lu(k,376) * lu(k,1134) - lu(k,1262) = lu(k,1262) - lu(k,370) * lu(k,1254) - lu(k,1271) = lu(k,1271) - lu(k,371) * lu(k,1254) - lu(k,1273) = lu(k,1273) - lu(k,372) * lu(k,1254) - lu(k,1278) = lu(k,1278) - lu(k,373) * lu(k,1254) - lu(k,1281) = lu(k,1281) - lu(k,374) * lu(k,1254) - lu(k,1283) = lu(k,1283) - lu(k,375) * lu(k,1254) - lu(k,1286) = lu(k,1286) - lu(k,376) * lu(k,1254) - lu(k,377) = 1._r8 / lu(k,377) - lu(k,378) = lu(k,378) * lu(k,377) - lu(k,379) = lu(k,379) * lu(k,377) - lu(k,380) = lu(k,380) * lu(k,377) - lu(k,381) = lu(k,381) * lu(k,377) - lu(k,382) = lu(k,382) * lu(k,377) - lu(k,383) = lu(k,383) * lu(k,377) - lu(k,384) = lu(k,384) * lu(k,377) - lu(k,385) = lu(k,385) * lu(k,377) - lu(k,386) = lu(k,386) * lu(k,377) - lu(k,430) = - lu(k,378) * lu(k,428) - lu(k,433) = lu(k,433) - lu(k,379) * lu(k,428) - lu(k,436) = lu(k,436) - lu(k,380) * lu(k,428) - lu(k,438) = lu(k,438) - lu(k,381) * lu(k,428) - lu(k,439) = lu(k,439) - lu(k,382) * lu(k,428) - lu(k,441) = - lu(k,383) * lu(k,428) - lu(k,442) = lu(k,442) - lu(k,384) * lu(k,428) - lu(k,443) = lu(k,443) - lu(k,385) * lu(k,428) - lu(k,444) = - lu(k,386) * lu(k,428) - lu(k,922) = lu(k,922) - lu(k,378) * lu(k,917) - lu(k,928) = lu(k,928) - lu(k,379) * lu(k,917) - lu(k,935) = lu(k,935) - lu(k,380) * lu(k,917) - lu(k,938) = lu(k,938) - lu(k,381) * lu(k,917) - lu(k,943) = lu(k,943) - lu(k,382) * lu(k,917) - lu(k,946) = lu(k,946) - lu(k,383) * lu(k,917) - lu(k,948) = lu(k,948) - lu(k,384) * lu(k,917) - lu(k,949) = lu(k,949) - lu(k,385) * lu(k,917) - lu(k,951) = lu(k,951) - lu(k,386) * lu(k,917) - lu(k,1189) = lu(k,1189) - lu(k,378) * lu(k,1184) - lu(k,1195) = lu(k,1195) - lu(k,379) * lu(k,1184) - lu(k,1203) = lu(k,1203) - lu(k,380) * lu(k,1184) - lu(k,1206) = lu(k,1206) - lu(k,381) * lu(k,1184) - lu(k,1211) = lu(k,1211) - lu(k,382) * lu(k,1184) - lu(k,1214) = lu(k,1214) - lu(k,383) * lu(k,1184) - lu(k,1216) = lu(k,1216) - lu(k,384) * lu(k,1184) - lu(k,1217) = lu(k,1217) - lu(k,385) * lu(k,1184) - lu(k,1219) = lu(k,1219) - lu(k,386) * lu(k,1184) - lu(k,1258) = lu(k,1258) - lu(k,378) * lu(k,1255) - lu(k,1263) = lu(k,1263) - lu(k,379) * lu(k,1255) - lu(k,1270) = lu(k,1270) - lu(k,380) * lu(k,1255) - lu(k,1273) = lu(k,1273) - lu(k,381) * lu(k,1255) - lu(k,1278) = lu(k,1278) - lu(k,382) * lu(k,1255) - lu(k,1281) = lu(k,1281) - lu(k,383) * lu(k,1255) - lu(k,1283) = lu(k,1283) - lu(k,384) * lu(k,1255) - lu(k,1284) = lu(k,1284) - lu(k,385) * lu(k,1255) - lu(k,1286) = lu(k,1286) - lu(k,386) * lu(k,1255) - lu(k,389) = 1._r8 / lu(k,389) - lu(k,390) = lu(k,390) * lu(k,389) - lu(k,391) = lu(k,391) * lu(k,389) - lu(k,392) = lu(k,392) * lu(k,389) - lu(k,393) = lu(k,393) * lu(k,389) - lu(k,394) = lu(k,394) * lu(k,389) - lu(k,395) = lu(k,395) * lu(k,389) - lu(k,396) = lu(k,396) * lu(k,389) - lu(k,397) = lu(k,397) * lu(k,389) - lu(k,398) = lu(k,398) * lu(k,389) - lu(k,399) = lu(k,399) * lu(k,389) - lu(k,741) = lu(k,741) - lu(k,390) * lu(k,739) - lu(k,744) = lu(k,744) - lu(k,391) * lu(k,739) - lu(k,751) = lu(k,751) - lu(k,392) * lu(k,739) - lu(k,753) = lu(k,753) - lu(k,393) * lu(k,739) - lu(k,755) = lu(k,755) - lu(k,394) * lu(k,739) - lu(k,759) = lu(k,759) - lu(k,395) * lu(k,739) - lu(k,761) = lu(k,761) - lu(k,396) * lu(k,739) - lu(k,763) = lu(k,763) - lu(k,397) * lu(k,739) - lu(k,766) = lu(k,766) - lu(k,398) * lu(k,739) - lu(k,767) = lu(k,767) - lu(k,399) * lu(k,739) - lu(k,923) = lu(k,923) - lu(k,390) * lu(k,918) - lu(k,927) = lu(k,927) - lu(k,391) * lu(k,918) - lu(k,934) = lu(k,934) - lu(k,392) * lu(k,918) - lu(k,936) = lu(k,936) - lu(k,393) * lu(k,918) - lu(k,938) = lu(k,938) - lu(k,394) * lu(k,918) - lu(k,943) = lu(k,943) - lu(k,395) * lu(k,918) - lu(k,946) = lu(k,946) - lu(k,396) * lu(k,918) - lu(k,948) = lu(k,948) - lu(k,397) * lu(k,918) - lu(k,951) = lu(k,951) - lu(k,398) * lu(k,918) - lu(k,952) = lu(k,952) - lu(k,399) * lu(k,918) - lu(k,1145) = lu(k,1145) - lu(k,390) * lu(k,1135) - lu(k,1150) = lu(k,1150) - lu(k,391) * lu(k,1135) - lu(k,1158) = lu(k,1158) - lu(k,392) * lu(k,1135) - lu(k,1160) = lu(k,1160) - lu(k,393) * lu(k,1135) - lu(k,1162) = lu(k,1162) - lu(k,394) * lu(k,1135) - lu(k,1167) = lu(k,1167) - lu(k,395) * lu(k,1135) - lu(k,1170) = lu(k,1170) - lu(k,396) * lu(k,1135) - lu(k,1172) = lu(k,1172) - lu(k,397) * lu(k,1135) - lu(k,1175) = lu(k,1175) - lu(k,398) * lu(k,1135) - lu(k,1176) = lu(k,1176) - lu(k,399) * lu(k,1135) - lu(k,1259) = lu(k,1259) - lu(k,390) * lu(k,1256) - lu(k,1262) = lu(k,1262) - lu(k,391) * lu(k,1256) - lu(k,1269) = lu(k,1269) - lu(k,392) * lu(k,1256) - lu(k,1271) = lu(k,1271) - lu(k,393) * lu(k,1256) - lu(k,1273) = lu(k,1273) - lu(k,394) * lu(k,1256) - lu(k,1278) = lu(k,1278) - lu(k,395) * lu(k,1256) - lu(k,1281) = lu(k,1281) - lu(k,396) * lu(k,1256) - lu(k,1283) = lu(k,1283) - lu(k,397) * lu(k,1256) - lu(k,1286) = lu(k,1286) - lu(k,398) * lu(k,1256) - lu(k,1287) = lu(k,1287) - lu(k,399) * lu(k,1256) - end do - end subroutine lu_fac09 - subroutine lu_fac10( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,401) = 1._r8 / lu(k,401) - lu(k,402) = lu(k,402) * lu(k,401) - lu(k,403) = lu(k,403) * lu(k,401) - lu(k,404) = lu(k,404) * lu(k,401) - lu(k,405) = lu(k,405) * lu(k,401) - lu(k,406) = lu(k,406) * lu(k,401) - lu(k,407) = lu(k,407) * lu(k,401) - lu(k,449) = lu(k,449) - lu(k,402) * lu(k,446) - lu(k,450) = lu(k,450) - lu(k,403) * lu(k,446) - lu(k,451) = lu(k,451) - lu(k,404) * lu(k,446) - lu(k,453) = lu(k,453) - lu(k,405) * lu(k,446) - lu(k,455) = lu(k,455) - lu(k,406) * lu(k,446) - lu(k,456) = - lu(k,407) * lu(k,446) - lu(k,820) = lu(k,820) - lu(k,402) * lu(k,815) - lu(k,821) = lu(k,821) - lu(k,403) * lu(k,815) - lu(k,822) = lu(k,822) - lu(k,404) * lu(k,815) - lu(k,828) = lu(k,828) - lu(k,405) * lu(k,815) - lu(k,830) = lu(k,830) - lu(k,406) * lu(k,815) - lu(k,831) = lu(k,831) - lu(k,407) * lu(k,815) - lu(k,855) = lu(k,855) - lu(k,402) * lu(k,842) - lu(k,856) = lu(k,856) - lu(k,403) * lu(k,842) - lu(k,857) = lu(k,857) - lu(k,404) * lu(k,842) - lu(k,863) = lu(k,863) - lu(k,405) * lu(k,842) - lu(k,865) = lu(k,865) - lu(k,406) * lu(k,842) - lu(k,867) = lu(k,867) - lu(k,407) * lu(k,842) - lu(k,884) = lu(k,884) - lu(k,402) * lu(k,873) - lu(k,885) = lu(k,885) - lu(k,403) * lu(k,873) - lu(k,886) = lu(k,886) - lu(k,404) * lu(k,873) - lu(k,892) = lu(k,892) - lu(k,405) * lu(k,873) - lu(k,894) = lu(k,894) - lu(k,406) * lu(k,873) - lu(k,896) = lu(k,896) - lu(k,407) * lu(k,873) - lu(k,940) = lu(k,940) - lu(k,402) * lu(k,919) - lu(k,941) = lu(k,941) - lu(k,403) * lu(k,919) - lu(k,942) = lu(k,942) - lu(k,404) * lu(k,919) - lu(k,948) = lu(k,948) - lu(k,405) * lu(k,919) - lu(k,950) = lu(k,950) - lu(k,406) * lu(k,919) - lu(k,952) = lu(k,952) - lu(k,407) * lu(k,919) - lu(k,1164) = lu(k,1164) - lu(k,402) * lu(k,1136) - lu(k,1165) = lu(k,1165) - lu(k,403) * lu(k,1136) - lu(k,1166) = lu(k,1166) - lu(k,404) * lu(k,1136) - lu(k,1172) = lu(k,1172) - lu(k,405) * lu(k,1136) - lu(k,1174) = lu(k,1174) - lu(k,406) * lu(k,1136) - lu(k,1176) = lu(k,1176) - lu(k,407) * lu(k,1136) - lu(k,1233) = lu(k,1233) - lu(k,402) * lu(k,1225) - lu(k,1234) = lu(k,1234) - lu(k,403) * lu(k,1225) - lu(k,1235) = lu(k,1235) - lu(k,404) * lu(k,1225) - lu(k,1241) = lu(k,1241) - lu(k,405) * lu(k,1225) - lu(k,1243) = lu(k,1243) - lu(k,406) * lu(k,1225) - lu(k,1245) = - lu(k,407) * lu(k,1225) - lu(k,408) = 1._r8 / lu(k,408) - lu(k,409) = lu(k,409) * lu(k,408) - lu(k,410) = lu(k,410) * lu(k,408) - lu(k,411) = lu(k,411) * lu(k,408) - lu(k,412) = lu(k,412) * lu(k,408) - lu(k,413) = lu(k,413) * lu(k,408) - lu(k,414) = lu(k,414) * lu(k,408) - lu(k,415) = lu(k,415) * lu(k,408) - lu(k,782) = lu(k,782) - lu(k,409) * lu(k,778) - lu(k,784) = lu(k,784) - lu(k,410) * lu(k,778) - lu(k,787) = lu(k,787) - lu(k,411) * lu(k,778) - lu(k,789) = - lu(k,412) * lu(k,778) - lu(k,792) = - lu(k,413) * lu(k,778) - lu(k,793) = lu(k,793) - lu(k,414) * lu(k,778) - lu(k,795) = lu(k,795) - lu(k,415) * lu(k,778) - lu(k,798) = - lu(k,409) * lu(k,796) - lu(k,800) = lu(k,800) - lu(k,410) * lu(k,796) - lu(k,803) = - lu(k,411) * lu(k,796) - lu(k,805) = lu(k,805) - lu(k,412) * lu(k,796) - lu(k,808) = - lu(k,413) * lu(k,796) - lu(k,809) = - lu(k,414) * lu(k,796) - lu(k,811) = - lu(k,415) * lu(k,796) - lu(k,881) = lu(k,881) - lu(k,409) * lu(k,874) - lu(k,883) = lu(k,883) - lu(k,410) * lu(k,874) - lu(k,886) = lu(k,886) - lu(k,411) * lu(k,874) - lu(k,888) = lu(k,888) - lu(k,412) * lu(k,874) - lu(k,891) = - lu(k,413) * lu(k,874) - lu(k,892) = lu(k,892) - lu(k,414) * lu(k,874) - lu(k,896) = lu(k,896) - lu(k,415) * lu(k,874) - lu(k,937) = lu(k,937) - lu(k,409) * lu(k,920) - lu(k,939) = lu(k,939) - lu(k,410) * lu(k,920) - lu(k,942) = lu(k,942) - lu(k,411) * lu(k,920) - lu(k,944) = lu(k,944) - lu(k,412) * lu(k,920) - lu(k,947) = - lu(k,413) * lu(k,920) - lu(k,948) = lu(k,948) - lu(k,414) * lu(k,920) - lu(k,952) = lu(k,952) - lu(k,415) * lu(k,920) - lu(k,1076) = lu(k,1076) - lu(k,409) * lu(k,1071) - lu(k,1078) = lu(k,1078) - lu(k,410) * lu(k,1071) - lu(k,1081) = lu(k,1081) - lu(k,411) * lu(k,1071) - lu(k,1083) = lu(k,1083) - lu(k,412) * lu(k,1071) - lu(k,1086) = lu(k,1086) - lu(k,413) * lu(k,1071) - lu(k,1087) = lu(k,1087) - lu(k,414) * lu(k,1071) - lu(k,1091) = lu(k,1091) - lu(k,415) * lu(k,1071) - lu(k,1161) = lu(k,1161) - lu(k,409) * lu(k,1137) - lu(k,1163) = lu(k,1163) - lu(k,410) * lu(k,1137) - lu(k,1166) = lu(k,1166) - lu(k,411) * lu(k,1137) - lu(k,1168) = lu(k,1168) - lu(k,412) * lu(k,1137) - lu(k,1171) = lu(k,1171) - lu(k,413) * lu(k,1137) - lu(k,1172) = lu(k,1172) - lu(k,414) * lu(k,1137) - lu(k,1176) = lu(k,1176) - lu(k,415) * lu(k,1137) - lu(k,416) = 1._r8 / lu(k,416) - lu(k,417) = lu(k,417) * lu(k,416) - lu(k,418) = lu(k,418) * lu(k,416) - lu(k,419) = lu(k,419) * lu(k,416) - lu(k,420) = lu(k,420) * lu(k,416) - lu(k,452) = lu(k,452) - lu(k,417) * lu(k,447) - lu(k,453) = lu(k,453) - lu(k,418) * lu(k,447) - lu(k,454) = lu(k,454) - lu(k,419) * lu(k,447) - lu(k,456) = lu(k,456) - lu(k,420) * lu(k,447) - lu(k,472) = lu(k,472) - lu(k,417) * lu(k,466) - lu(k,473) = lu(k,473) - lu(k,418) * lu(k,466) - lu(k,474) = lu(k,474) - lu(k,419) * lu(k,466) - lu(k,475) = - lu(k,420) * lu(k,466) - lu(k,555) = - lu(k,417) * lu(k,548) - lu(k,556) = lu(k,556) - lu(k,418) * lu(k,548) - lu(k,557) = lu(k,557) - lu(k,419) * lu(k,548) - lu(k,558) = lu(k,558) - lu(k,420) * lu(k,548) - lu(k,595) = - lu(k,417) * lu(k,589) - lu(k,596) = lu(k,596) - lu(k,418) * lu(k,589) - lu(k,597) = lu(k,597) - lu(k,419) * lu(k,589) - lu(k,598) = lu(k,598) - lu(k,420) * lu(k,589) - lu(k,791) = - lu(k,417) * lu(k,779) - lu(k,793) = lu(k,793) - lu(k,418) * lu(k,779) - lu(k,794) = lu(k,794) - lu(k,419) * lu(k,779) - lu(k,795) = lu(k,795) - lu(k,420) * lu(k,779) - lu(k,826) = - lu(k,417) * lu(k,816) - lu(k,828) = lu(k,828) - lu(k,418) * lu(k,816) - lu(k,829) = - lu(k,419) * lu(k,816) - lu(k,831) = lu(k,831) - lu(k,420) * lu(k,816) - lu(k,890) = lu(k,890) - lu(k,417) * lu(k,875) - lu(k,892) = lu(k,892) - lu(k,418) * lu(k,875) - lu(k,893) = lu(k,893) - lu(k,419) * lu(k,875) - lu(k,896) = lu(k,896) - lu(k,420) * lu(k,875) - lu(k,968) = lu(k,968) - lu(k,417) * lu(k,957) - lu(k,970) = lu(k,970) - lu(k,418) * lu(k,957) - lu(k,971) = lu(k,971) - lu(k,419) * lu(k,957) - lu(k,974) = lu(k,974) - lu(k,420) * lu(k,957) - lu(k,1048) = lu(k,1048) - lu(k,417) * lu(k,1028) - lu(k,1050) = lu(k,1050) - lu(k,418) * lu(k,1028) - lu(k,1051) = lu(k,1051) - lu(k,419) * lu(k,1028) - lu(k,1054) = lu(k,1054) - lu(k,420) * lu(k,1028) - lu(k,1170) = lu(k,1170) - lu(k,417) * lu(k,1138) - lu(k,1172) = lu(k,1172) - lu(k,418) * lu(k,1138) - lu(k,1173) = lu(k,1173) - lu(k,419) * lu(k,1138) - lu(k,1176) = lu(k,1176) - lu(k,420) * lu(k,1138) - lu(k,1214) = lu(k,1214) - lu(k,417) * lu(k,1185) - lu(k,1216) = lu(k,1216) - lu(k,418) * lu(k,1185) - lu(k,1217) = lu(k,1217) - lu(k,419) * lu(k,1185) - lu(k,1220) = lu(k,1220) - lu(k,420) * lu(k,1185) - lu(k,422) = 1._r8 / lu(k,422) - lu(k,423) = lu(k,423) * lu(k,422) - lu(k,424) = lu(k,424) * lu(k,422) - lu(k,425) = lu(k,425) * lu(k,422) - lu(k,426) = lu(k,426) * lu(k,422) - lu(k,427) = lu(k,427) * lu(k,422) - lu(k,602) = lu(k,602) - lu(k,423) * lu(k,601) - lu(k,606) = lu(k,606) - lu(k,424) * lu(k,601) - lu(k,607) = - lu(k,425) * lu(k,601) - lu(k,611) = lu(k,611) - lu(k,426) * lu(k,601) - lu(k,614) = - lu(k,427) * lu(k,601) - lu(k,880) = lu(k,880) - lu(k,423) * lu(k,876) - lu(k,886) = lu(k,886) - lu(k,424) * lu(k,876) - lu(k,887) = lu(k,887) - lu(k,425) * lu(k,876) - lu(k,892) = lu(k,892) - lu(k,426) * lu(k,876) - lu(k,896) = lu(k,896) - lu(k,427) * lu(k,876) - lu(k,959) = lu(k,959) - lu(k,423) * lu(k,958) - lu(k,964) = lu(k,964) - lu(k,424) * lu(k,958) - lu(k,965) = lu(k,965) - lu(k,425) * lu(k,958) - lu(k,970) = lu(k,970) - lu(k,426) * lu(k,958) - lu(k,974) = lu(k,974) - lu(k,427) * lu(k,958) - lu(k,996) = lu(k,996) - lu(k,423) * lu(k,982) - lu(k,1008) = lu(k,1008) - lu(k,424) * lu(k,982) - lu(k,1009) = lu(k,1009) - lu(k,425) * lu(k,982) - lu(k,1014) = lu(k,1014) - lu(k,426) * lu(k,982) - lu(k,1018) = lu(k,1018) - lu(k,427) * lu(k,982) - lu(k,1034) = lu(k,1034) - lu(k,423) * lu(k,1029) - lu(k,1044) = lu(k,1044) - lu(k,424) * lu(k,1029) - lu(k,1045) = lu(k,1045) - lu(k,425) * lu(k,1029) - lu(k,1050) = lu(k,1050) - lu(k,426) * lu(k,1029) - lu(k,1054) = lu(k,1054) - lu(k,427) * lu(k,1029) - lu(k,1154) = lu(k,1154) - lu(k,423) * lu(k,1139) - lu(k,1166) = lu(k,1166) - lu(k,424) * lu(k,1139) - lu(k,1167) = lu(k,1167) - lu(k,425) * lu(k,1139) - lu(k,1172) = lu(k,1172) - lu(k,426) * lu(k,1139) - lu(k,1176) = lu(k,1176) - lu(k,427) * lu(k,1139) - lu(k,1198) = - lu(k,423) * lu(k,1186) - lu(k,1210) = lu(k,1210) - lu(k,424) * lu(k,1186) - lu(k,1211) = lu(k,1211) - lu(k,425) * lu(k,1186) - lu(k,1216) = lu(k,1216) - lu(k,426) * lu(k,1186) - lu(k,1220) = lu(k,1220) - lu(k,427) * lu(k,1186) - lu(k,1228) = lu(k,1228) - lu(k,423) * lu(k,1226) - lu(k,1235) = lu(k,1235) - lu(k,424) * lu(k,1226) - lu(k,1236) = lu(k,1236) - lu(k,425) * lu(k,1226) - lu(k,1241) = lu(k,1241) - lu(k,426) * lu(k,1226) - lu(k,1245) = lu(k,1245) - lu(k,427) * lu(k,1226) - lu(k,1292) = - lu(k,423) * lu(k,1290) - lu(k,1297) = lu(k,1297) - lu(k,424) * lu(k,1290) - lu(k,1298) = - lu(k,425) * lu(k,1290) - lu(k,1303) = lu(k,1303) - lu(k,426) * lu(k,1290) - lu(k,1307) = lu(k,1307) - lu(k,427) * lu(k,1290) - lu(k,429) = 1._r8 / lu(k,429) - lu(k,430) = lu(k,430) * lu(k,429) - lu(k,431) = lu(k,431) * lu(k,429) - lu(k,432) = lu(k,432) * lu(k,429) - lu(k,433) = lu(k,433) * lu(k,429) - lu(k,434) = lu(k,434) * lu(k,429) - lu(k,435) = lu(k,435) * lu(k,429) - lu(k,436) = lu(k,436) * lu(k,429) - lu(k,437) = lu(k,437) * lu(k,429) - lu(k,438) = lu(k,438) * lu(k,429) - lu(k,439) = lu(k,439) * lu(k,429) - lu(k,440) = lu(k,440) * lu(k,429) - lu(k,441) = lu(k,441) * lu(k,429) - lu(k,442) = lu(k,442) * lu(k,429) - lu(k,443) = lu(k,443) * lu(k,429) - lu(k,444) = lu(k,444) * lu(k,429) - lu(k,985) = - lu(k,430) * lu(k,983) - lu(k,989) = lu(k,989) - lu(k,431) * lu(k,983) - lu(k,991) = lu(k,991) - lu(k,432) * lu(k,983) - lu(k,993) = lu(k,993) - lu(k,433) * lu(k,983) - lu(k,997) = lu(k,997) - lu(k,434) * lu(k,983) - lu(k,1000) = lu(k,1000) - lu(k,435) * lu(k,983) - lu(k,1001) = lu(k,1001) - lu(k,436) * lu(k,983) - lu(k,1002) = lu(k,1002) - lu(k,437) * lu(k,983) - lu(k,1004) = lu(k,1004) - lu(k,438) * lu(k,983) - lu(k,1009) = lu(k,1009) - lu(k,439) * lu(k,983) - lu(k,1011) = lu(k,1011) - lu(k,440) * lu(k,983) - lu(k,1012) = lu(k,1012) - lu(k,441) * lu(k,983) - lu(k,1014) = lu(k,1014) - lu(k,442) * lu(k,983) - lu(k,1015) = lu(k,1015) - lu(k,443) * lu(k,983) - lu(k,1017) = lu(k,1017) - lu(k,444) * lu(k,983) - lu(k,1143) = lu(k,1143) - lu(k,430) * lu(k,1140) - lu(k,1147) = lu(k,1147) - lu(k,431) * lu(k,1140) - lu(k,1149) = lu(k,1149) - lu(k,432) * lu(k,1140) - lu(k,1151) = lu(k,1151) - lu(k,433) * lu(k,1140) - lu(k,1155) = lu(k,1155) - lu(k,434) * lu(k,1140) - lu(k,1158) = lu(k,1158) - lu(k,435) * lu(k,1140) - lu(k,1159) = lu(k,1159) - lu(k,436) * lu(k,1140) - lu(k,1160) = lu(k,1160) - lu(k,437) * lu(k,1140) - lu(k,1162) = lu(k,1162) - lu(k,438) * lu(k,1140) - lu(k,1167) = lu(k,1167) - lu(k,439) * lu(k,1140) - lu(k,1169) = lu(k,1169) - lu(k,440) * lu(k,1140) - lu(k,1170) = lu(k,1170) - lu(k,441) * lu(k,1140) - lu(k,1172) = lu(k,1172) - lu(k,442) * lu(k,1140) - lu(k,1173) = lu(k,1173) - lu(k,443) * lu(k,1140) - lu(k,1175) = lu(k,1175) - lu(k,444) * lu(k,1140) - lu(k,1189) = lu(k,1189) - lu(k,430) * lu(k,1187) - lu(k,1192) = lu(k,1192) - lu(k,431) * lu(k,1187) - lu(k,1193) = lu(k,1193) - lu(k,432) * lu(k,1187) - lu(k,1195) = lu(k,1195) - lu(k,433) * lu(k,1187) - lu(k,1199) = lu(k,1199) - lu(k,434) * lu(k,1187) - lu(k,1202) = lu(k,1202) - lu(k,435) * lu(k,1187) - lu(k,1203) = lu(k,1203) - lu(k,436) * lu(k,1187) - lu(k,1204) = lu(k,1204) - lu(k,437) * lu(k,1187) - lu(k,1206) = lu(k,1206) - lu(k,438) * lu(k,1187) - lu(k,1211) = lu(k,1211) - lu(k,439) * lu(k,1187) - lu(k,1213) = lu(k,1213) - lu(k,440) * lu(k,1187) - lu(k,1214) = lu(k,1214) - lu(k,441) * lu(k,1187) - lu(k,1216) = lu(k,1216) - lu(k,442) * lu(k,1187) - lu(k,1217) = lu(k,1217) - lu(k,443) * lu(k,1187) - lu(k,1219) = lu(k,1219) - lu(k,444) * lu(k,1187) - end do - end subroutine lu_fac10 - subroutine lu_fac11( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,448) = 1._r8 / lu(k,448) - lu(k,449) = lu(k,449) * lu(k,448) - lu(k,450) = lu(k,450) * lu(k,448) - lu(k,451) = lu(k,451) * lu(k,448) - lu(k,452) = lu(k,452) * lu(k,448) - lu(k,453) = lu(k,453) * lu(k,448) - lu(k,454) = lu(k,454) * lu(k,448) - lu(k,455) = lu(k,455) * lu(k,448) - lu(k,456) = lu(k,456) * lu(k,448) - lu(k,820) = lu(k,820) - lu(k,449) * lu(k,817) - lu(k,821) = lu(k,821) - lu(k,450) * lu(k,817) - lu(k,822) = lu(k,822) - lu(k,451) * lu(k,817) - lu(k,826) = lu(k,826) - lu(k,452) * lu(k,817) - lu(k,828) = lu(k,828) - lu(k,453) * lu(k,817) - lu(k,829) = lu(k,829) - lu(k,454) * lu(k,817) - lu(k,830) = lu(k,830) - lu(k,455) * lu(k,817) - lu(k,831) = lu(k,831) - lu(k,456) * lu(k,817) - lu(k,855) = lu(k,855) - lu(k,449) * lu(k,843) - lu(k,856) = lu(k,856) - lu(k,450) * lu(k,843) - lu(k,857) = lu(k,857) - lu(k,451) * lu(k,843) - lu(k,861) = lu(k,861) - lu(k,452) * lu(k,843) - lu(k,863) = lu(k,863) - lu(k,453) * lu(k,843) - lu(k,864) = lu(k,864) - lu(k,454) * lu(k,843) - lu(k,865) = lu(k,865) - lu(k,455) * lu(k,843) - lu(k,867) = lu(k,867) - lu(k,456) * lu(k,843) - lu(k,884) = lu(k,884) - lu(k,449) * lu(k,877) - lu(k,885) = lu(k,885) - lu(k,450) * lu(k,877) - lu(k,886) = lu(k,886) - lu(k,451) * lu(k,877) - lu(k,890) = lu(k,890) - lu(k,452) * lu(k,877) - lu(k,892) = lu(k,892) - lu(k,453) * lu(k,877) - lu(k,893) = lu(k,893) - lu(k,454) * lu(k,877) - lu(k,894) = lu(k,894) - lu(k,455) * lu(k,877) - lu(k,896) = lu(k,896) - lu(k,456) * lu(k,877) - lu(k,1042) = lu(k,1042) - lu(k,449) * lu(k,1030) - lu(k,1043) = lu(k,1043) - lu(k,450) * lu(k,1030) - lu(k,1044) = lu(k,1044) - lu(k,451) * lu(k,1030) - lu(k,1048) = lu(k,1048) - lu(k,452) * lu(k,1030) - lu(k,1050) = lu(k,1050) - lu(k,453) * lu(k,1030) - lu(k,1051) = lu(k,1051) - lu(k,454) * lu(k,1030) - lu(k,1052) = lu(k,1052) - lu(k,455) * lu(k,1030) - lu(k,1054) = lu(k,1054) - lu(k,456) * lu(k,1030) - lu(k,1164) = lu(k,1164) - lu(k,449) * lu(k,1141) - lu(k,1165) = lu(k,1165) - lu(k,450) * lu(k,1141) - lu(k,1166) = lu(k,1166) - lu(k,451) * lu(k,1141) - lu(k,1170) = lu(k,1170) - lu(k,452) * lu(k,1141) - lu(k,1172) = lu(k,1172) - lu(k,453) * lu(k,1141) - lu(k,1173) = lu(k,1173) - lu(k,454) * lu(k,1141) - lu(k,1174) = lu(k,1174) - lu(k,455) * lu(k,1141) - lu(k,1176) = lu(k,1176) - lu(k,456) * lu(k,1141) - lu(k,1233) = lu(k,1233) - lu(k,449) * lu(k,1227) - lu(k,1234) = lu(k,1234) - lu(k,450) * lu(k,1227) - lu(k,1235) = lu(k,1235) - lu(k,451) * lu(k,1227) - lu(k,1239) = lu(k,1239) - lu(k,452) * lu(k,1227) - lu(k,1241) = lu(k,1241) - lu(k,453) * lu(k,1227) - lu(k,1242) = - lu(k,454) * lu(k,1227) - lu(k,1243) = lu(k,1243) - lu(k,455) * lu(k,1227) - lu(k,1245) = lu(k,1245) - lu(k,456) * lu(k,1227) - lu(k,459) = 1._r8 / lu(k,459) - lu(k,460) = lu(k,460) * lu(k,459) - lu(k,461) = lu(k,461) * lu(k,459) - lu(k,462) = lu(k,462) * lu(k,459) - lu(k,463) = lu(k,463) * lu(k,459) - lu(k,464) = lu(k,464) * lu(k,459) - lu(k,577) = lu(k,577) - lu(k,460) * lu(k,575) - lu(k,582) = lu(k,582) - lu(k,461) * lu(k,575) - lu(k,583) = lu(k,583) - lu(k,462) * lu(k,575) - lu(k,584) = lu(k,584) - lu(k,463) * lu(k,575) - lu(k,586) = lu(k,586) - lu(k,464) * lu(k,575) - lu(k,622) = lu(k,622) - lu(k,460) * lu(k,619) - lu(k,632) = lu(k,632) - lu(k,461) * lu(k,619) - lu(k,633) = lu(k,633) - lu(k,462) * lu(k,619) - lu(k,634) = lu(k,634) - lu(k,463) * lu(k,619) - lu(k,637) = lu(k,637) - lu(k,464) * lu(k,619) - lu(k,646) = lu(k,646) - lu(k,460) * lu(k,643) - lu(k,653) = lu(k,653) - lu(k,461) * lu(k,643) - lu(k,654) = - lu(k,462) * lu(k,643) - lu(k,655) = lu(k,655) - lu(k,463) * lu(k,643) - lu(k,657) = lu(k,657) - lu(k,464) * lu(k,643) - lu(k,688) = lu(k,688) - lu(k,460) * lu(k,686) - lu(k,698) = lu(k,698) - lu(k,461) * lu(k,686) - lu(k,699) = lu(k,699) - lu(k,462) * lu(k,686) - lu(k,700) = lu(k,700) - lu(k,463) * lu(k,686) - lu(k,703) = lu(k,703) - lu(k,464) * lu(k,686) - lu(k,743) = lu(k,743) - lu(k,460) * lu(k,740) - lu(k,755) = lu(k,755) - lu(k,461) * lu(k,740) - lu(k,758) = lu(k,758) - lu(k,462) * lu(k,740) - lu(k,759) = lu(k,759) - lu(k,463) * lu(k,740) - lu(k,763) = lu(k,763) - lu(k,464) * lu(k,740) - lu(k,846) = lu(k,846) - lu(k,460) * lu(k,844) - lu(k,853) = lu(k,853) - lu(k,461) * lu(k,844) - lu(k,857) = lu(k,857) - lu(k,462) * lu(k,844) - lu(k,858) = lu(k,858) - lu(k,463) * lu(k,844) - lu(k,863) = lu(k,863) - lu(k,464) * lu(k,844) - lu(k,925) = lu(k,925) - lu(k,460) * lu(k,921) - lu(k,938) = lu(k,938) - lu(k,461) * lu(k,921) - lu(k,942) = lu(k,942) - lu(k,462) * lu(k,921) - lu(k,943) = lu(k,943) - lu(k,463) * lu(k,921) - lu(k,948) = lu(k,948) - lu(k,464) * lu(k,921) - lu(k,989) = lu(k,989) - lu(k,460) * lu(k,984) - lu(k,1004) = lu(k,1004) - lu(k,461) * lu(k,984) - lu(k,1008) = lu(k,1008) - lu(k,462) * lu(k,984) - lu(k,1009) = lu(k,1009) - lu(k,463) * lu(k,984) - lu(k,1014) = lu(k,1014) - lu(k,464) * lu(k,984) - lu(k,1147) = lu(k,1147) - lu(k,460) * lu(k,1142) - lu(k,1162) = lu(k,1162) - lu(k,461) * lu(k,1142) - lu(k,1166) = lu(k,1166) - lu(k,462) * lu(k,1142) - lu(k,1167) = lu(k,1167) - lu(k,463) * lu(k,1142) - lu(k,1172) = lu(k,1172) - lu(k,464) * lu(k,1142) - lu(k,1192) = lu(k,1192) - lu(k,460) * lu(k,1188) - lu(k,1206) = lu(k,1206) - lu(k,461) * lu(k,1188) - lu(k,1210) = lu(k,1210) - lu(k,462) * lu(k,1188) - lu(k,1211) = lu(k,1211) - lu(k,463) * lu(k,1188) - lu(k,1216) = lu(k,1216) - lu(k,464) * lu(k,1188) - lu(k,1261) = lu(k,1261) - lu(k,460) * lu(k,1257) - lu(k,1273) = lu(k,1273) - lu(k,461) * lu(k,1257) - lu(k,1277) = lu(k,1277) - lu(k,462) * lu(k,1257) - lu(k,1278) = lu(k,1278) - lu(k,463) * lu(k,1257) - lu(k,1283) = lu(k,1283) - lu(k,464) * lu(k,1257) - lu(k,467) = 1._r8 / lu(k,467) - lu(k,468) = lu(k,468) * lu(k,467) - lu(k,469) = lu(k,469) * lu(k,467) - lu(k,470) = lu(k,470) * lu(k,467) - lu(k,471) = lu(k,471) * lu(k,467) - lu(k,472) = lu(k,472) * lu(k,467) - lu(k,473) = lu(k,473) * lu(k,467) - lu(k,474) = lu(k,474) * lu(k,467) - lu(k,475) = lu(k,475) * lu(k,467) - lu(k,622) = lu(k,622) - lu(k,468) * lu(k,620) - lu(k,624) = lu(k,624) - lu(k,469) * lu(k,620) - lu(k,632) = lu(k,632) - lu(k,470) * lu(k,620) - lu(k,634) = lu(k,634) - lu(k,471) * lu(k,620) - lu(k,636) = lu(k,636) - lu(k,472) * lu(k,620) - lu(k,637) = lu(k,637) - lu(k,473) * lu(k,620) - lu(k,638) = lu(k,638) - lu(k,474) * lu(k,620) - lu(k,640) = - lu(k,475) * lu(k,620) - lu(k,646) = lu(k,646) - lu(k,468) * lu(k,644) - lu(k,647) = - lu(k,469) * lu(k,644) - lu(k,653) = lu(k,653) - lu(k,470) * lu(k,644) - lu(k,655) = lu(k,655) - lu(k,471) * lu(k,644) - lu(k,656) = lu(k,656) - lu(k,472) * lu(k,644) - lu(k,657) = lu(k,657) - lu(k,473) * lu(k,644) - lu(k,658) = lu(k,658) - lu(k,474) * lu(k,644) - lu(k,660) = - lu(k,475) * lu(k,644) - lu(k,925) = lu(k,925) - lu(k,468) * lu(k,922) - lu(k,929) = lu(k,929) - lu(k,469) * lu(k,922) - lu(k,938) = lu(k,938) - lu(k,470) * lu(k,922) - lu(k,943) = lu(k,943) - lu(k,471) * lu(k,922) - lu(k,946) = lu(k,946) - lu(k,472) * lu(k,922) - lu(k,948) = lu(k,948) - lu(k,473) * lu(k,922) - lu(k,949) = lu(k,949) - lu(k,474) * lu(k,922) - lu(k,952) = lu(k,952) - lu(k,475) * lu(k,922) - lu(k,989) = lu(k,989) - lu(k,468) * lu(k,985) - lu(k,994) = - lu(k,469) * lu(k,985) - lu(k,1004) = lu(k,1004) - lu(k,470) * lu(k,985) - lu(k,1009) = lu(k,1009) - lu(k,471) * lu(k,985) - lu(k,1012) = lu(k,1012) - lu(k,472) * lu(k,985) - lu(k,1014) = lu(k,1014) - lu(k,473) * lu(k,985) - lu(k,1015) = lu(k,1015) - lu(k,474) * lu(k,985) - lu(k,1018) = lu(k,1018) - lu(k,475) * lu(k,985) - lu(k,1147) = lu(k,1147) - lu(k,468) * lu(k,1143) - lu(k,1152) = lu(k,1152) - lu(k,469) * lu(k,1143) - lu(k,1162) = lu(k,1162) - lu(k,470) * lu(k,1143) - lu(k,1167) = lu(k,1167) - lu(k,471) * lu(k,1143) - lu(k,1170) = lu(k,1170) - lu(k,472) * lu(k,1143) - lu(k,1172) = lu(k,1172) - lu(k,473) * lu(k,1143) - lu(k,1173) = lu(k,1173) - lu(k,474) * lu(k,1143) - lu(k,1176) = lu(k,1176) - lu(k,475) * lu(k,1143) - lu(k,1192) = lu(k,1192) - lu(k,468) * lu(k,1189) - lu(k,1196) = lu(k,1196) - lu(k,469) * lu(k,1189) - lu(k,1206) = lu(k,1206) - lu(k,470) * lu(k,1189) - lu(k,1211) = lu(k,1211) - lu(k,471) * lu(k,1189) - lu(k,1214) = lu(k,1214) - lu(k,472) * lu(k,1189) - lu(k,1216) = lu(k,1216) - lu(k,473) * lu(k,1189) - lu(k,1217) = lu(k,1217) - lu(k,474) * lu(k,1189) - lu(k,1220) = lu(k,1220) - lu(k,475) * lu(k,1189) - lu(k,1261) = lu(k,1261) - lu(k,468) * lu(k,1258) - lu(k,1264) = lu(k,1264) - lu(k,469) * lu(k,1258) - lu(k,1273) = lu(k,1273) - lu(k,470) * lu(k,1258) - lu(k,1278) = lu(k,1278) - lu(k,471) * lu(k,1258) - lu(k,1281) = lu(k,1281) - lu(k,472) * lu(k,1258) - lu(k,1283) = lu(k,1283) - lu(k,473) * lu(k,1258) - lu(k,1284) = lu(k,1284) - lu(k,474) * lu(k,1258) - lu(k,1287) = lu(k,1287) - lu(k,475) * lu(k,1258) - lu(k,477) = 1._r8 / lu(k,477) - lu(k,478) = lu(k,478) * lu(k,477) - lu(k,479) = lu(k,479) * lu(k,477) - lu(k,480) = lu(k,480) * lu(k,477) - lu(k,481) = lu(k,481) * lu(k,477) - lu(k,482) = lu(k,482) * lu(k,477) - lu(k,483) = lu(k,483) * lu(k,477) - lu(k,484) = lu(k,484) * lu(k,477) - lu(k,485) = lu(k,485) * lu(k,477) - lu(k,486) = lu(k,486) * lu(k,477) - lu(k,487) = lu(k,487) * lu(k,477) - lu(k,488) = lu(k,488) * lu(k,477) - lu(k,489) = lu(k,489) * lu(k,477) - lu(k,528) = lu(k,528) - lu(k,478) * lu(k,526) - lu(k,529) = - lu(k,479) * lu(k,526) - lu(k,534) = lu(k,534) - lu(k,480) * lu(k,526) - lu(k,535) = - lu(k,481) * lu(k,526) - lu(k,536) = lu(k,536) - lu(k,482) * lu(k,526) - lu(k,537) = - lu(k,483) * lu(k,526) - lu(k,538) = - lu(k,484) * lu(k,526) - lu(k,539) = lu(k,539) - lu(k,485) * lu(k,526) - lu(k,540) = lu(k,540) - lu(k,486) * lu(k,526) - lu(k,543) = - lu(k,487) * lu(k,526) - lu(k,544) = lu(k,544) - lu(k,488) * lu(k,526) - lu(k,547) = lu(k,547) - lu(k,489) * lu(k,526) - lu(k,846) = lu(k,846) - lu(k,478) * lu(k,845) - lu(k,847) = lu(k,847) - lu(k,479) * lu(k,845) - lu(k,851) = lu(k,851) - lu(k,480) * lu(k,845) - lu(k,852) = lu(k,852) - lu(k,481) * lu(k,845) - lu(k,853) = lu(k,853) - lu(k,482) * lu(k,845) - lu(k,855) = lu(k,855) - lu(k,483) * lu(k,845) - lu(k,856) = lu(k,856) - lu(k,484) * lu(k,845) - lu(k,857) = lu(k,857) - lu(k,485) * lu(k,845) - lu(k,858) = lu(k,858) - lu(k,486) * lu(k,845) - lu(k,862) = lu(k,862) - lu(k,487) * lu(k,845) - lu(k,863) = lu(k,863) - lu(k,488) * lu(k,845) - lu(k,867) = lu(k,867) - lu(k,489) * lu(k,845) - lu(k,989) = lu(k,989) - lu(k,478) * lu(k,986) - lu(k,990) = - lu(k,479) * lu(k,986) - lu(k,1002) = lu(k,1002) - lu(k,480) * lu(k,986) - lu(k,1003) = lu(k,1003) - lu(k,481) * lu(k,986) - lu(k,1004) = lu(k,1004) - lu(k,482) * lu(k,986) - lu(k,1006) = - lu(k,483) * lu(k,986) - lu(k,1007) = lu(k,1007) - lu(k,484) * lu(k,986) - lu(k,1008) = lu(k,1008) - lu(k,485) * lu(k,986) - lu(k,1009) = lu(k,1009) - lu(k,486) * lu(k,986) - lu(k,1013) = lu(k,1013) - lu(k,487) * lu(k,986) - lu(k,1014) = lu(k,1014) - lu(k,488) * lu(k,986) - lu(k,1018) = lu(k,1018) - lu(k,489) * lu(k,986) - lu(k,1073) = - lu(k,478) * lu(k,1072) - lu(k,1074) = lu(k,1074) - lu(k,479) * lu(k,1072) - lu(k,1075) = lu(k,1075) - lu(k,480) * lu(k,1072) - lu(k,1076) = lu(k,1076) - lu(k,481) * lu(k,1072) - lu(k,1077) = lu(k,1077) - lu(k,482) * lu(k,1072) - lu(k,1079) = lu(k,1079) - lu(k,483) * lu(k,1072) - lu(k,1080) = lu(k,1080) - lu(k,484) * lu(k,1072) - lu(k,1081) = lu(k,1081) - lu(k,485) * lu(k,1072) - lu(k,1082) = lu(k,1082) - lu(k,486) * lu(k,1072) - lu(k,1086) = lu(k,1086) - lu(k,487) * lu(k,1072) - lu(k,1087) = lu(k,1087) - lu(k,488) * lu(k,1072) - lu(k,1091) = lu(k,1091) - lu(k,489) * lu(k,1072) - lu(k,1147) = lu(k,1147) - lu(k,478) * lu(k,1144) - lu(k,1148) = lu(k,1148) - lu(k,479) * lu(k,1144) - lu(k,1160) = lu(k,1160) - lu(k,480) * lu(k,1144) - lu(k,1161) = lu(k,1161) - lu(k,481) * lu(k,1144) - lu(k,1162) = lu(k,1162) - lu(k,482) * lu(k,1144) - lu(k,1164) = lu(k,1164) - lu(k,483) * lu(k,1144) - lu(k,1165) = lu(k,1165) - lu(k,484) * lu(k,1144) - lu(k,1166) = lu(k,1166) - lu(k,485) * lu(k,1144) - lu(k,1167) = lu(k,1167) - lu(k,486) * lu(k,1144) - lu(k,1171) = lu(k,1171) - lu(k,487) * lu(k,1144) - lu(k,1172) = lu(k,1172) - lu(k,488) * lu(k,1144) - lu(k,1176) = lu(k,1176) - lu(k,489) * lu(k,1144) - end do - end subroutine lu_fac11 - subroutine lu_fac12( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,492) = 1._r8 / lu(k,492) - lu(k,493) = lu(k,493) * lu(k,492) - lu(k,494) = lu(k,494) * lu(k,492) - lu(k,495) = lu(k,495) * lu(k,492) - lu(k,496) = lu(k,496) * lu(k,492) - lu(k,497) = lu(k,497) * lu(k,492) - lu(k,498) = lu(k,498) * lu(k,492) - lu(k,499) = lu(k,499) * lu(k,492) - lu(k,500) = lu(k,500) * lu(k,492) - lu(k,501) = lu(k,501) * lu(k,492) - lu(k,502) = lu(k,502) * lu(k,492) - lu(k,742) = lu(k,742) - lu(k,493) * lu(k,741) - lu(k,747) = lu(k,747) - lu(k,494) * lu(k,741) - lu(k,751) = lu(k,751) - lu(k,495) * lu(k,741) - lu(k,753) = lu(k,753) - lu(k,496) * lu(k,741) - lu(k,755) = lu(k,755) - lu(k,497) * lu(k,741) - lu(k,759) = lu(k,759) - lu(k,498) * lu(k,741) - lu(k,761) = lu(k,761) - lu(k,499) * lu(k,741) - lu(k,763) = lu(k,763) - lu(k,500) * lu(k,741) - lu(k,766) = lu(k,766) - lu(k,501) * lu(k,741) - lu(k,767) = lu(k,767) - lu(k,502) * lu(k,741) - lu(k,924) = lu(k,924) - lu(k,493) * lu(k,923) - lu(k,930) = - lu(k,494) * lu(k,923) - lu(k,934) = lu(k,934) - lu(k,495) * lu(k,923) - lu(k,936) = lu(k,936) - lu(k,496) * lu(k,923) - lu(k,938) = lu(k,938) - lu(k,497) * lu(k,923) - lu(k,943) = lu(k,943) - lu(k,498) * lu(k,923) - lu(k,946) = lu(k,946) - lu(k,499) * lu(k,923) - lu(k,948) = lu(k,948) - lu(k,500) * lu(k,923) - lu(k,951) = lu(k,951) - lu(k,501) * lu(k,923) - lu(k,952) = lu(k,952) - lu(k,502) * lu(k,923) - lu(k,988) = - lu(k,493) * lu(k,987) - lu(k,995) = lu(k,995) - lu(k,494) * lu(k,987) - lu(k,1000) = lu(k,1000) - lu(k,495) * lu(k,987) - lu(k,1002) = lu(k,1002) - lu(k,496) * lu(k,987) - lu(k,1004) = lu(k,1004) - lu(k,497) * lu(k,987) - lu(k,1009) = lu(k,1009) - lu(k,498) * lu(k,987) - lu(k,1012) = lu(k,1012) - lu(k,499) * lu(k,987) - lu(k,1014) = lu(k,1014) - lu(k,500) * lu(k,987) - lu(k,1017) = lu(k,1017) - lu(k,501) * lu(k,987) - lu(k,1018) = lu(k,1018) - lu(k,502) * lu(k,987) - lu(k,1146) = lu(k,1146) - lu(k,493) * lu(k,1145) - lu(k,1153) = lu(k,1153) - lu(k,494) * lu(k,1145) - lu(k,1158) = lu(k,1158) - lu(k,495) * lu(k,1145) - lu(k,1160) = lu(k,1160) - lu(k,496) * lu(k,1145) - lu(k,1162) = lu(k,1162) - lu(k,497) * lu(k,1145) - lu(k,1167) = lu(k,1167) - lu(k,498) * lu(k,1145) - lu(k,1170) = lu(k,1170) - lu(k,499) * lu(k,1145) - lu(k,1172) = lu(k,1172) - lu(k,500) * lu(k,1145) - lu(k,1175) = lu(k,1175) - lu(k,501) * lu(k,1145) - lu(k,1176) = lu(k,1176) - lu(k,502) * lu(k,1145) - lu(k,1191) = lu(k,1191) - lu(k,493) * lu(k,1190) - lu(k,1197) = lu(k,1197) - lu(k,494) * lu(k,1190) - lu(k,1202) = lu(k,1202) - lu(k,495) * lu(k,1190) - lu(k,1204) = lu(k,1204) - lu(k,496) * lu(k,1190) - lu(k,1206) = lu(k,1206) - lu(k,497) * lu(k,1190) - lu(k,1211) = lu(k,1211) - lu(k,498) * lu(k,1190) - lu(k,1214) = lu(k,1214) - lu(k,499) * lu(k,1190) - lu(k,1216) = lu(k,1216) - lu(k,500) * lu(k,1190) - lu(k,1219) = lu(k,1219) - lu(k,501) * lu(k,1190) - lu(k,1220) = lu(k,1220) - lu(k,502) * lu(k,1190) - lu(k,1260) = lu(k,1260) - lu(k,493) * lu(k,1259) - lu(k,1265) = lu(k,1265) - lu(k,494) * lu(k,1259) - lu(k,1269) = lu(k,1269) - lu(k,495) * lu(k,1259) - lu(k,1271) = lu(k,1271) - lu(k,496) * lu(k,1259) - lu(k,1273) = lu(k,1273) - lu(k,497) * lu(k,1259) - lu(k,1278) = lu(k,1278) - lu(k,498) * lu(k,1259) - lu(k,1281) = lu(k,1281) - lu(k,499) * lu(k,1259) - lu(k,1283) = lu(k,1283) - lu(k,500) * lu(k,1259) - lu(k,1286) = lu(k,1286) - lu(k,501) * lu(k,1259) - lu(k,1287) = lu(k,1287) - lu(k,502) * lu(k,1259) - lu(k,503) = 1._r8 / lu(k,503) - lu(k,504) = lu(k,504) * lu(k,503) - lu(k,505) = lu(k,505) * lu(k,503) - lu(k,506) = lu(k,506) * lu(k,503) - lu(k,507) = lu(k,507) * lu(k,503) - lu(k,508) = lu(k,508) * lu(k,503) - lu(k,532) = lu(k,532) - lu(k,504) * lu(k,527) - lu(k,533) = lu(k,533) - lu(k,505) * lu(k,527) - lu(k,536) = lu(k,536) - lu(k,506) * lu(k,527) - lu(k,540) = lu(k,540) - lu(k,507) * lu(k,527) - lu(k,544) = lu(k,544) - lu(k,508) * lu(k,527) - lu(k,579) = lu(k,579) - lu(k,504) * lu(k,576) - lu(k,580) = lu(k,580) - lu(k,505) * lu(k,576) - lu(k,582) = lu(k,582) - lu(k,506) * lu(k,576) - lu(k,584) = lu(k,584) - lu(k,507) * lu(k,576) - lu(k,586) = lu(k,586) - lu(k,508) * lu(k,576) - lu(k,625) = lu(k,625) - lu(k,504) * lu(k,621) - lu(k,629) = lu(k,629) - lu(k,505) * lu(k,621) - lu(k,632) = lu(k,632) - lu(k,506) * lu(k,621) - lu(k,634) = lu(k,634) - lu(k,507) * lu(k,621) - lu(k,637) = lu(k,637) - lu(k,508) * lu(k,621) - lu(k,648) = lu(k,648) - lu(k,504) * lu(k,645) - lu(k,651) = lu(k,651) - lu(k,505) * lu(k,645) - lu(k,653) = lu(k,653) - lu(k,506) * lu(k,645) - lu(k,655) = lu(k,655) - lu(k,507) * lu(k,645) - lu(k,657) = lu(k,657) - lu(k,508) * lu(k,645) - lu(k,667) = - lu(k,504) * lu(k,665) - lu(k,669) = lu(k,669) - lu(k,505) * lu(k,665) - lu(k,671) = lu(k,671) - lu(k,506) * lu(k,665) - lu(k,673) = lu(k,673) - lu(k,507) * lu(k,665) - lu(k,676) = lu(k,676) - lu(k,508) * lu(k,665) - lu(k,691) = lu(k,691) - lu(k,504) * lu(k,687) - lu(k,695) = lu(k,695) - lu(k,505) * lu(k,687) - lu(k,698) = lu(k,698) - lu(k,506) * lu(k,687) - lu(k,700) = lu(k,700) - lu(k,507) * lu(k,687) - lu(k,703) = lu(k,703) - lu(k,508) * lu(k,687) - lu(k,747) = lu(k,747) - lu(k,504) * lu(k,742) - lu(k,751) = lu(k,751) - lu(k,505) * lu(k,742) - lu(k,755) = lu(k,755) - lu(k,506) * lu(k,742) - lu(k,759) = lu(k,759) - lu(k,507) * lu(k,742) - lu(k,763) = lu(k,763) - lu(k,508) * lu(k,742) - lu(k,930) = lu(k,930) - lu(k,504) * lu(k,924) - lu(k,934) = lu(k,934) - lu(k,505) * lu(k,924) - lu(k,938) = lu(k,938) - lu(k,506) * lu(k,924) - lu(k,943) = lu(k,943) - lu(k,507) * lu(k,924) - lu(k,948) = lu(k,948) - lu(k,508) * lu(k,924) - lu(k,995) = lu(k,995) - lu(k,504) * lu(k,988) - lu(k,1000) = lu(k,1000) - lu(k,505) * lu(k,988) - lu(k,1004) = lu(k,1004) - lu(k,506) * lu(k,988) - lu(k,1009) = lu(k,1009) - lu(k,507) * lu(k,988) - lu(k,1014) = lu(k,1014) - lu(k,508) * lu(k,988) - lu(k,1033) = - lu(k,504) * lu(k,1031) - lu(k,1036) = lu(k,1036) - lu(k,505) * lu(k,1031) - lu(k,1040) = lu(k,1040) - lu(k,506) * lu(k,1031) - lu(k,1045) = lu(k,1045) - lu(k,507) * lu(k,1031) - lu(k,1050) = lu(k,1050) - lu(k,508) * lu(k,1031) - lu(k,1153) = lu(k,1153) - lu(k,504) * lu(k,1146) - lu(k,1158) = lu(k,1158) - lu(k,505) * lu(k,1146) - lu(k,1162) = lu(k,1162) - lu(k,506) * lu(k,1146) - lu(k,1167) = lu(k,1167) - lu(k,507) * lu(k,1146) - lu(k,1172) = lu(k,1172) - lu(k,508) * lu(k,1146) - lu(k,1197) = lu(k,1197) - lu(k,504) * lu(k,1191) - lu(k,1202) = lu(k,1202) - lu(k,505) * lu(k,1191) - lu(k,1206) = lu(k,1206) - lu(k,506) * lu(k,1191) - lu(k,1211) = lu(k,1211) - lu(k,507) * lu(k,1191) - lu(k,1216) = lu(k,1216) - lu(k,508) * lu(k,1191) - lu(k,1265) = lu(k,1265) - lu(k,504) * lu(k,1260) - lu(k,1269) = lu(k,1269) - lu(k,505) * lu(k,1260) - lu(k,1273) = lu(k,1273) - lu(k,506) * lu(k,1260) - lu(k,1278) = lu(k,1278) - lu(k,507) * lu(k,1260) - lu(k,1283) = lu(k,1283) - lu(k,508) * lu(k,1260) - lu(k,510) = 1._r8 / lu(k,510) - lu(k,511) = lu(k,511) * lu(k,510) - lu(k,512) = lu(k,512) * lu(k,510) - lu(k,513) = lu(k,513) * lu(k,510) - lu(k,539) = lu(k,539) - lu(k,511) * lu(k,528) - lu(k,540) = lu(k,540) - lu(k,512) * lu(k,528) - lu(k,544) = lu(k,544) - lu(k,513) * lu(k,528) - lu(k,553) = - lu(k,511) * lu(k,549) - lu(k,554) = lu(k,554) - lu(k,512) * lu(k,549) - lu(k,556) = lu(k,556) - lu(k,513) * lu(k,549) - lu(k,566) = - lu(k,511) * lu(k,559) - lu(k,567) = lu(k,567) - lu(k,512) * lu(k,559) - lu(k,569) = lu(k,569) - lu(k,513) * lu(k,559) - lu(k,583) = lu(k,583) - lu(k,511) * lu(k,577) - lu(k,584) = lu(k,584) - lu(k,512) * lu(k,577) - lu(k,586) = lu(k,586) - lu(k,513) * lu(k,577) - lu(k,593) = - lu(k,511) * lu(k,590) - lu(k,594) = lu(k,594) - lu(k,512) * lu(k,590) - lu(k,596) = lu(k,596) - lu(k,513) * lu(k,590) - lu(k,633) = lu(k,633) - lu(k,511) * lu(k,622) - lu(k,634) = lu(k,634) - lu(k,512) * lu(k,622) - lu(k,637) = lu(k,637) - lu(k,513) * lu(k,622) - lu(k,654) = lu(k,654) - lu(k,511) * lu(k,646) - lu(k,655) = lu(k,655) - lu(k,512) * lu(k,646) - lu(k,657) = lu(k,657) - lu(k,513) * lu(k,646) - lu(k,672) = lu(k,672) - lu(k,511) * lu(k,666) - lu(k,673) = lu(k,673) - lu(k,512) * lu(k,666) - lu(k,676) = lu(k,676) - lu(k,513) * lu(k,666) - lu(k,699) = lu(k,699) - lu(k,511) * lu(k,688) - lu(k,700) = lu(k,700) - lu(k,512) * lu(k,688) - lu(k,703) = lu(k,703) - lu(k,513) * lu(k,688) - lu(k,721) = lu(k,721) - lu(k,511) * lu(k,708) - lu(k,722) = lu(k,722) - lu(k,512) * lu(k,708) - lu(k,726) = lu(k,726) - lu(k,513) * lu(k,708) - lu(k,758) = lu(k,758) - lu(k,511) * lu(k,743) - lu(k,759) = lu(k,759) - lu(k,512) * lu(k,743) - lu(k,763) = lu(k,763) - lu(k,513) * lu(k,743) - lu(k,787) = lu(k,787) - lu(k,511) * lu(k,780) - lu(k,788) = lu(k,788) - lu(k,512) * lu(k,780) - lu(k,793) = lu(k,793) - lu(k,513) * lu(k,780) - lu(k,803) = lu(k,803) - lu(k,511) * lu(k,797) - lu(k,804) = lu(k,804) - lu(k,512) * lu(k,797) - lu(k,809) = lu(k,809) - lu(k,513) * lu(k,797) - lu(k,857) = lu(k,857) - lu(k,511) * lu(k,846) - lu(k,858) = lu(k,858) - lu(k,512) * lu(k,846) - lu(k,863) = lu(k,863) - lu(k,513) * lu(k,846) - lu(k,886) = lu(k,886) - lu(k,511) * lu(k,878) - lu(k,887) = lu(k,887) - lu(k,512) * lu(k,878) - lu(k,892) = lu(k,892) - lu(k,513) * lu(k,878) - lu(k,942) = lu(k,942) - lu(k,511) * lu(k,925) - lu(k,943) = lu(k,943) - lu(k,512) * lu(k,925) - lu(k,948) = lu(k,948) - lu(k,513) * lu(k,925) - lu(k,1008) = lu(k,1008) - lu(k,511) * lu(k,989) - lu(k,1009) = lu(k,1009) - lu(k,512) * lu(k,989) - lu(k,1014) = lu(k,1014) - lu(k,513) * lu(k,989) - lu(k,1044) = lu(k,1044) - lu(k,511) * lu(k,1032) - lu(k,1045) = lu(k,1045) - lu(k,512) * lu(k,1032) - lu(k,1050) = lu(k,1050) - lu(k,513) * lu(k,1032) - lu(k,1081) = lu(k,1081) - lu(k,511) * lu(k,1073) - lu(k,1082) = lu(k,1082) - lu(k,512) * lu(k,1073) - lu(k,1087) = lu(k,1087) - lu(k,513) * lu(k,1073) - lu(k,1166) = lu(k,1166) - lu(k,511) * lu(k,1147) - lu(k,1167) = lu(k,1167) - lu(k,512) * lu(k,1147) - lu(k,1172) = lu(k,1172) - lu(k,513) * lu(k,1147) - lu(k,1210) = lu(k,1210) - lu(k,511) * lu(k,1192) - lu(k,1211) = lu(k,1211) - lu(k,512) * lu(k,1192) - lu(k,1216) = lu(k,1216) - lu(k,513) * lu(k,1192) - lu(k,1277) = lu(k,1277) - lu(k,511) * lu(k,1261) - lu(k,1278) = lu(k,1278) - lu(k,512) * lu(k,1261) - lu(k,1283) = lu(k,1283) - lu(k,513) * lu(k,1261) - lu(k,514) = 1._r8 / lu(k,514) - lu(k,515) = lu(k,515) * lu(k,514) - lu(k,516) = lu(k,516) * lu(k,514) - lu(k,517) = lu(k,517) * lu(k,514) - lu(k,518) = lu(k,518) * lu(k,514) - lu(k,519) = lu(k,519) * lu(k,514) - lu(k,520) = lu(k,520) * lu(k,514) - lu(k,521) = lu(k,521) * lu(k,514) - lu(k,535) = lu(k,535) - lu(k,515) * lu(k,529) - lu(k,537) = lu(k,537) - lu(k,516) * lu(k,529) - lu(k,538) = lu(k,538) - lu(k,517) * lu(k,529) - lu(k,539) = lu(k,539) - lu(k,518) * lu(k,529) - lu(k,543) = lu(k,543) - lu(k,519) * lu(k,529) - lu(k,544) = lu(k,544) - lu(k,520) * lu(k,529) - lu(k,547) = lu(k,547) - lu(k,521) * lu(k,529) - lu(k,769) = lu(k,769) - lu(k,515) * lu(k,768) - lu(k,770) = - lu(k,516) * lu(k,768) - lu(k,771) = - lu(k,517) * lu(k,768) - lu(k,772) = lu(k,772) - lu(k,518) * lu(k,768) - lu(k,775) = - lu(k,519) * lu(k,768) - lu(k,776) = lu(k,776) - lu(k,520) * lu(k,768) - lu(k,777) = lu(k,777) - lu(k,521) * lu(k,768) - lu(k,782) = lu(k,782) - lu(k,515) * lu(k,781) - lu(k,785) = lu(k,785) - lu(k,516) * lu(k,781) - lu(k,786) = lu(k,786) - lu(k,517) * lu(k,781) - lu(k,787) = lu(k,787) - lu(k,518) * lu(k,781) - lu(k,792) = lu(k,792) - lu(k,519) * lu(k,781) - lu(k,793) = lu(k,793) - lu(k,520) * lu(k,781) - lu(k,795) = lu(k,795) - lu(k,521) * lu(k,781) - lu(k,852) = lu(k,852) - lu(k,515) * lu(k,847) - lu(k,855) = lu(k,855) - lu(k,516) * lu(k,847) - lu(k,856) = lu(k,856) - lu(k,517) * lu(k,847) - lu(k,857) = lu(k,857) - lu(k,518) * lu(k,847) - lu(k,862) = lu(k,862) - lu(k,519) * lu(k,847) - lu(k,863) = lu(k,863) - lu(k,520) * lu(k,847) - lu(k,867) = lu(k,867) - lu(k,521) * lu(k,847) - lu(k,881) = lu(k,881) - lu(k,515) * lu(k,879) - lu(k,884) = lu(k,884) - lu(k,516) * lu(k,879) - lu(k,885) = lu(k,885) - lu(k,517) * lu(k,879) - lu(k,886) = lu(k,886) - lu(k,518) * lu(k,879) - lu(k,891) = lu(k,891) - lu(k,519) * lu(k,879) - lu(k,892) = lu(k,892) - lu(k,520) * lu(k,879) - lu(k,896) = lu(k,896) - lu(k,521) * lu(k,879) - lu(k,937) = lu(k,937) - lu(k,515) * lu(k,926) - lu(k,940) = lu(k,940) - lu(k,516) * lu(k,926) - lu(k,941) = lu(k,941) - lu(k,517) * lu(k,926) - lu(k,942) = lu(k,942) - lu(k,518) * lu(k,926) - lu(k,947) = lu(k,947) - lu(k,519) * lu(k,926) - lu(k,948) = lu(k,948) - lu(k,520) * lu(k,926) - lu(k,952) = lu(k,952) - lu(k,521) * lu(k,926) - lu(k,1003) = lu(k,1003) - lu(k,515) * lu(k,990) - lu(k,1006) = lu(k,1006) - lu(k,516) * lu(k,990) - lu(k,1007) = lu(k,1007) - lu(k,517) * lu(k,990) - lu(k,1008) = lu(k,1008) - lu(k,518) * lu(k,990) - lu(k,1013) = lu(k,1013) - lu(k,519) * lu(k,990) - lu(k,1014) = lu(k,1014) - lu(k,520) * lu(k,990) - lu(k,1018) = lu(k,1018) - lu(k,521) * lu(k,990) - lu(k,1076) = lu(k,1076) - lu(k,515) * lu(k,1074) - lu(k,1079) = lu(k,1079) - lu(k,516) * lu(k,1074) - lu(k,1080) = lu(k,1080) - lu(k,517) * lu(k,1074) - lu(k,1081) = lu(k,1081) - lu(k,518) * lu(k,1074) - lu(k,1086) = lu(k,1086) - lu(k,519) * lu(k,1074) - lu(k,1087) = lu(k,1087) - lu(k,520) * lu(k,1074) - lu(k,1091) = lu(k,1091) - lu(k,521) * lu(k,1074) - lu(k,1161) = lu(k,1161) - lu(k,515) * lu(k,1148) - lu(k,1164) = lu(k,1164) - lu(k,516) * lu(k,1148) - lu(k,1165) = lu(k,1165) - lu(k,517) * lu(k,1148) - lu(k,1166) = lu(k,1166) - lu(k,518) * lu(k,1148) - lu(k,1171) = lu(k,1171) - lu(k,519) * lu(k,1148) - lu(k,1172) = lu(k,1172) - lu(k,520) * lu(k,1148) - lu(k,1176) = lu(k,1176) - lu(k,521) * lu(k,1148) - lu(k,1293) = lu(k,1293) - lu(k,515) * lu(k,1291) - lu(k,1295) = - lu(k,516) * lu(k,1291) - lu(k,1296) = - lu(k,517) * lu(k,1291) - lu(k,1297) = lu(k,1297) - lu(k,518) * lu(k,1291) - lu(k,1302) = lu(k,1302) - lu(k,519) * lu(k,1291) - lu(k,1303) = lu(k,1303) - lu(k,520) * lu(k,1291) - lu(k,1307) = lu(k,1307) - lu(k,521) * lu(k,1291) - lu(k,530) = 1._r8 / lu(k,530) - lu(k,531) = lu(k,531) * lu(k,530) - lu(k,532) = lu(k,532) * lu(k,530) - lu(k,533) = lu(k,533) * lu(k,530) - lu(k,534) = lu(k,534) * lu(k,530) - lu(k,535) = lu(k,535) * lu(k,530) - lu(k,536) = lu(k,536) * lu(k,530) - lu(k,537) = lu(k,537) * lu(k,530) - lu(k,538) = lu(k,538) * lu(k,530) - lu(k,539) = lu(k,539) * lu(k,530) - lu(k,540) = lu(k,540) * lu(k,530) - lu(k,541) = lu(k,541) * lu(k,530) - lu(k,542) = lu(k,542) * lu(k,530) - lu(k,543) = lu(k,543) * lu(k,530) - lu(k,544) = lu(k,544) * lu(k,530) - lu(k,545) = lu(k,545) * lu(k,530) - lu(k,546) = lu(k,546) * lu(k,530) - lu(k,547) = lu(k,547) * lu(k,530) - lu(k,710) = lu(k,710) - lu(k,531) * lu(k,709) - lu(k,711) = lu(k,711) - lu(k,532) * lu(k,709) - lu(k,714) = lu(k,714) - lu(k,533) * lu(k,709) - lu(k,716) = lu(k,716) - lu(k,534) * lu(k,709) - lu(k,717) = - lu(k,535) * lu(k,709) - lu(k,718) = lu(k,718) - lu(k,536) * lu(k,709) - lu(k,719) = - lu(k,537) * lu(k,709) - lu(k,720) = - lu(k,538) * lu(k,709) - lu(k,721) = lu(k,721) - lu(k,539) * lu(k,709) - lu(k,722) = lu(k,722) - lu(k,540) * lu(k,709) - lu(k,723) = lu(k,723) - lu(k,541) * lu(k,709) - lu(k,724) = - lu(k,542) * lu(k,709) - lu(k,725) = - lu(k,543) * lu(k,709) - lu(k,726) = lu(k,726) - lu(k,544) * lu(k,709) - lu(k,727) = - lu(k,545) * lu(k,709) - lu(k,728) = - lu(k,546) * lu(k,709) - lu(k,729) = - lu(k,547) * lu(k,709) - lu(k,992) = lu(k,992) - lu(k,531) * lu(k,991) - lu(k,995) = lu(k,995) - lu(k,532) * lu(k,991) - lu(k,1000) = lu(k,1000) - lu(k,533) * lu(k,991) - lu(k,1002) = lu(k,1002) - lu(k,534) * lu(k,991) - lu(k,1003) = lu(k,1003) - lu(k,535) * lu(k,991) - lu(k,1004) = lu(k,1004) - lu(k,536) * lu(k,991) - lu(k,1006) = lu(k,1006) - lu(k,537) * lu(k,991) - lu(k,1007) = lu(k,1007) - lu(k,538) * lu(k,991) - lu(k,1008) = lu(k,1008) - lu(k,539) * lu(k,991) - lu(k,1009) = lu(k,1009) - lu(k,540) * lu(k,991) - lu(k,1011) = lu(k,1011) - lu(k,541) * lu(k,991) - lu(k,1012) = lu(k,1012) - lu(k,542) * lu(k,991) - lu(k,1013) = lu(k,1013) - lu(k,543) * lu(k,991) - lu(k,1014) = lu(k,1014) - lu(k,544) * lu(k,991) - lu(k,1015) = lu(k,1015) - lu(k,545) * lu(k,991) - lu(k,1017) = lu(k,1017) - lu(k,546) * lu(k,991) - lu(k,1018) = lu(k,1018) - lu(k,547) * lu(k,991) - lu(k,1150) = lu(k,1150) - lu(k,531) * lu(k,1149) - lu(k,1153) = lu(k,1153) - lu(k,532) * lu(k,1149) - lu(k,1158) = lu(k,1158) - lu(k,533) * lu(k,1149) - lu(k,1160) = lu(k,1160) - lu(k,534) * lu(k,1149) - lu(k,1161) = lu(k,1161) - lu(k,535) * lu(k,1149) - lu(k,1162) = lu(k,1162) - lu(k,536) * lu(k,1149) - lu(k,1164) = lu(k,1164) - lu(k,537) * lu(k,1149) - lu(k,1165) = lu(k,1165) - lu(k,538) * lu(k,1149) - lu(k,1166) = lu(k,1166) - lu(k,539) * lu(k,1149) - lu(k,1167) = lu(k,1167) - lu(k,540) * lu(k,1149) - lu(k,1169) = lu(k,1169) - lu(k,541) * lu(k,1149) - lu(k,1170) = lu(k,1170) - lu(k,542) * lu(k,1149) - lu(k,1171) = lu(k,1171) - lu(k,543) * lu(k,1149) - lu(k,1172) = lu(k,1172) - lu(k,544) * lu(k,1149) - lu(k,1173) = lu(k,1173) - lu(k,545) * lu(k,1149) - lu(k,1175) = lu(k,1175) - lu(k,546) * lu(k,1149) - lu(k,1176) = lu(k,1176) - lu(k,547) * lu(k,1149) - lu(k,1194) = lu(k,1194) - lu(k,531) * lu(k,1193) - lu(k,1197) = lu(k,1197) - lu(k,532) * lu(k,1193) - lu(k,1202) = lu(k,1202) - lu(k,533) * lu(k,1193) - lu(k,1204) = lu(k,1204) - lu(k,534) * lu(k,1193) - lu(k,1205) = - lu(k,535) * lu(k,1193) - lu(k,1206) = lu(k,1206) - lu(k,536) * lu(k,1193) - lu(k,1208) = - lu(k,537) * lu(k,1193) - lu(k,1209) = - lu(k,538) * lu(k,1193) - lu(k,1210) = lu(k,1210) - lu(k,539) * lu(k,1193) - lu(k,1211) = lu(k,1211) - lu(k,540) * lu(k,1193) - lu(k,1213) = lu(k,1213) - lu(k,541) * lu(k,1193) - lu(k,1214) = lu(k,1214) - lu(k,542) * lu(k,1193) - lu(k,1215) = - lu(k,543) * lu(k,1193) - lu(k,1216) = lu(k,1216) - lu(k,544) * lu(k,1193) - lu(k,1217) = lu(k,1217) - lu(k,545) * lu(k,1193) - lu(k,1219) = lu(k,1219) - lu(k,546) * lu(k,1193) - lu(k,1220) = lu(k,1220) - lu(k,547) * lu(k,1193) - end do - end subroutine lu_fac12 - subroutine lu_fac13( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,550) = 1._r8 / lu(k,550) - lu(k,551) = lu(k,551) * lu(k,550) - lu(k,552) = lu(k,552) * lu(k,550) - lu(k,553) = lu(k,553) * lu(k,550) - lu(k,554) = lu(k,554) * lu(k,550) - lu(k,555) = lu(k,555) * lu(k,550) - lu(k,556) = lu(k,556) * lu(k,550) - lu(k,557) = lu(k,557) * lu(k,550) - lu(k,558) = lu(k,558) * lu(k,550) - lu(k,714) = lu(k,714) - lu(k,551) * lu(k,710) - lu(k,716) = lu(k,716) - lu(k,552) * lu(k,710) - lu(k,721) = lu(k,721) - lu(k,553) * lu(k,710) - lu(k,722) = lu(k,722) - lu(k,554) * lu(k,710) - lu(k,724) = lu(k,724) - lu(k,555) * lu(k,710) - lu(k,726) = lu(k,726) - lu(k,556) * lu(k,710) - lu(k,727) = lu(k,727) - lu(k,557) * lu(k,710) - lu(k,729) = lu(k,729) - lu(k,558) * lu(k,710) - lu(k,751) = lu(k,751) - lu(k,551) * lu(k,744) - lu(k,753) = lu(k,753) - lu(k,552) * lu(k,744) - lu(k,758) = lu(k,758) - lu(k,553) * lu(k,744) - lu(k,759) = lu(k,759) - lu(k,554) * lu(k,744) - lu(k,761) = lu(k,761) - lu(k,555) * lu(k,744) - lu(k,763) = lu(k,763) - lu(k,556) * lu(k,744) - lu(k,764) = - lu(k,557) * lu(k,744) - lu(k,767) = lu(k,767) - lu(k,558) * lu(k,744) - lu(k,849) = - lu(k,551) * lu(k,848) - lu(k,851) = lu(k,851) - lu(k,552) * lu(k,848) - lu(k,857) = lu(k,857) - lu(k,553) * lu(k,848) - lu(k,858) = lu(k,858) - lu(k,554) * lu(k,848) - lu(k,861) = lu(k,861) - lu(k,555) * lu(k,848) - lu(k,863) = lu(k,863) - lu(k,556) * lu(k,848) - lu(k,864) = lu(k,864) - lu(k,557) * lu(k,848) - lu(k,867) = lu(k,867) - lu(k,558) * lu(k,848) - lu(k,934) = lu(k,934) - lu(k,551) * lu(k,927) - lu(k,936) = lu(k,936) - lu(k,552) * lu(k,927) - lu(k,942) = lu(k,942) - lu(k,553) * lu(k,927) - lu(k,943) = lu(k,943) - lu(k,554) * lu(k,927) - lu(k,946) = lu(k,946) - lu(k,555) * lu(k,927) - lu(k,948) = lu(k,948) - lu(k,556) * lu(k,927) - lu(k,949) = lu(k,949) - lu(k,557) * lu(k,927) - lu(k,952) = lu(k,952) - lu(k,558) * lu(k,927) - lu(k,1000) = lu(k,1000) - lu(k,551) * lu(k,992) - lu(k,1002) = lu(k,1002) - lu(k,552) * lu(k,992) - lu(k,1008) = lu(k,1008) - lu(k,553) * lu(k,992) - lu(k,1009) = lu(k,1009) - lu(k,554) * lu(k,992) - lu(k,1012) = lu(k,1012) - lu(k,555) * lu(k,992) - lu(k,1014) = lu(k,1014) - lu(k,556) * lu(k,992) - lu(k,1015) = lu(k,1015) - lu(k,557) * lu(k,992) - lu(k,1018) = lu(k,1018) - lu(k,558) * lu(k,992) - lu(k,1158) = lu(k,1158) - lu(k,551) * lu(k,1150) - lu(k,1160) = lu(k,1160) - lu(k,552) * lu(k,1150) - lu(k,1166) = lu(k,1166) - lu(k,553) * lu(k,1150) - lu(k,1167) = lu(k,1167) - lu(k,554) * lu(k,1150) - lu(k,1170) = lu(k,1170) - lu(k,555) * lu(k,1150) - lu(k,1172) = lu(k,1172) - lu(k,556) * lu(k,1150) - lu(k,1173) = lu(k,1173) - lu(k,557) * lu(k,1150) - lu(k,1176) = lu(k,1176) - lu(k,558) * lu(k,1150) - lu(k,1202) = lu(k,1202) - lu(k,551) * lu(k,1194) - lu(k,1204) = lu(k,1204) - lu(k,552) * lu(k,1194) - lu(k,1210) = lu(k,1210) - lu(k,553) * lu(k,1194) - lu(k,1211) = lu(k,1211) - lu(k,554) * lu(k,1194) - lu(k,1214) = lu(k,1214) - lu(k,555) * lu(k,1194) - lu(k,1216) = lu(k,1216) - lu(k,556) * lu(k,1194) - lu(k,1217) = lu(k,1217) - lu(k,557) * lu(k,1194) - lu(k,1220) = lu(k,1220) - lu(k,558) * lu(k,1194) - lu(k,1269) = lu(k,1269) - lu(k,551) * lu(k,1262) - lu(k,1271) = lu(k,1271) - lu(k,552) * lu(k,1262) - lu(k,1277) = lu(k,1277) - lu(k,553) * lu(k,1262) - lu(k,1278) = lu(k,1278) - lu(k,554) * lu(k,1262) - lu(k,1281) = lu(k,1281) - lu(k,555) * lu(k,1262) - lu(k,1283) = lu(k,1283) - lu(k,556) * lu(k,1262) - lu(k,1284) = lu(k,1284) - lu(k,557) * lu(k,1262) - lu(k,1287) = lu(k,1287) - lu(k,558) * lu(k,1262) - lu(k,560) = 1._r8 / lu(k,560) - lu(k,561) = lu(k,561) * lu(k,560) - lu(k,562) = lu(k,562) * lu(k,560) - lu(k,563) = lu(k,563) * lu(k,560) - lu(k,564) = lu(k,564) * lu(k,560) - lu(k,565) = lu(k,565) * lu(k,560) - lu(k,566) = lu(k,566) * lu(k,560) - lu(k,567) = lu(k,567) * lu(k,560) - lu(k,568) = lu(k,568) * lu(k,560) - lu(k,569) = lu(k,569) * lu(k,560) - lu(k,570) = lu(k,570) * lu(k,560) - lu(k,625) = lu(k,625) - lu(k,561) * lu(k,623) - lu(k,627) = - lu(k,562) * lu(k,623) - lu(k,628) = - lu(k,563) * lu(k,623) - lu(k,629) = lu(k,629) - lu(k,564) * lu(k,623) - lu(k,632) = lu(k,632) - lu(k,565) * lu(k,623) - lu(k,633) = lu(k,633) - lu(k,566) * lu(k,623) - lu(k,634) = lu(k,634) - lu(k,567) * lu(k,623) - lu(k,635) = - lu(k,568) * lu(k,623) - lu(k,637) = lu(k,637) - lu(k,569) * lu(k,623) - lu(k,640) = lu(k,640) - lu(k,570) * lu(k,623) - lu(k,691) = lu(k,691) - lu(k,561) * lu(k,689) - lu(k,693) = lu(k,693) - lu(k,562) * lu(k,689) - lu(k,694) = lu(k,694) - lu(k,563) * lu(k,689) - lu(k,695) = lu(k,695) - lu(k,564) * lu(k,689) - lu(k,698) = lu(k,698) - lu(k,565) * lu(k,689) - lu(k,699) = lu(k,699) - lu(k,566) * lu(k,689) - lu(k,700) = lu(k,700) - lu(k,567) * lu(k,689) - lu(k,701) = lu(k,701) - lu(k,568) * lu(k,689) - lu(k,703) = lu(k,703) - lu(k,569) * lu(k,689) - lu(k,706) = lu(k,706) - lu(k,570) * lu(k,689) - lu(k,747) = lu(k,747) - lu(k,561) * lu(k,745) - lu(k,749) = lu(k,749) - lu(k,562) * lu(k,745) - lu(k,750) = lu(k,750) - lu(k,563) * lu(k,745) - lu(k,751) = lu(k,751) - lu(k,564) * lu(k,745) - lu(k,755) = lu(k,755) - lu(k,565) * lu(k,745) - lu(k,758) = lu(k,758) - lu(k,566) * lu(k,745) - lu(k,759) = lu(k,759) - lu(k,567) * lu(k,745) - lu(k,760) = - lu(k,568) * lu(k,745) - lu(k,763) = lu(k,763) - lu(k,569) * lu(k,745) - lu(k,767) = lu(k,767) - lu(k,570) * lu(k,745) - lu(k,930) = lu(k,930) - lu(k,561) * lu(k,928) - lu(k,932) = lu(k,932) - lu(k,562) * lu(k,928) - lu(k,933) = lu(k,933) - lu(k,563) * lu(k,928) - lu(k,934) = lu(k,934) - lu(k,564) * lu(k,928) - lu(k,938) = lu(k,938) - lu(k,565) * lu(k,928) - lu(k,942) = lu(k,942) - lu(k,566) * lu(k,928) - lu(k,943) = lu(k,943) - lu(k,567) * lu(k,928) - lu(k,945) = lu(k,945) - lu(k,568) * lu(k,928) - lu(k,948) = lu(k,948) - lu(k,569) * lu(k,928) - lu(k,952) = lu(k,952) - lu(k,570) * lu(k,928) - lu(k,995) = lu(k,995) - lu(k,561) * lu(k,993) - lu(k,998) = - lu(k,562) * lu(k,993) - lu(k,999) = - lu(k,563) * lu(k,993) - lu(k,1000) = lu(k,1000) - lu(k,564) * lu(k,993) - lu(k,1004) = lu(k,1004) - lu(k,565) * lu(k,993) - lu(k,1008) = lu(k,1008) - lu(k,566) * lu(k,993) - lu(k,1009) = lu(k,1009) - lu(k,567) * lu(k,993) - lu(k,1011) = lu(k,1011) - lu(k,568) * lu(k,993) - lu(k,1014) = lu(k,1014) - lu(k,569) * lu(k,993) - lu(k,1018) = lu(k,1018) - lu(k,570) * lu(k,993) - lu(k,1153) = lu(k,1153) - lu(k,561) * lu(k,1151) - lu(k,1156) = lu(k,1156) - lu(k,562) * lu(k,1151) - lu(k,1157) = lu(k,1157) - lu(k,563) * lu(k,1151) - lu(k,1158) = lu(k,1158) - lu(k,564) * lu(k,1151) - lu(k,1162) = lu(k,1162) - lu(k,565) * lu(k,1151) - lu(k,1166) = lu(k,1166) - lu(k,566) * lu(k,1151) - lu(k,1167) = lu(k,1167) - lu(k,567) * lu(k,1151) - lu(k,1169) = lu(k,1169) - lu(k,568) * lu(k,1151) - lu(k,1172) = lu(k,1172) - lu(k,569) * lu(k,1151) - lu(k,1176) = lu(k,1176) - lu(k,570) * lu(k,1151) - lu(k,1197) = lu(k,1197) - lu(k,561) * lu(k,1195) - lu(k,1200) = lu(k,1200) - lu(k,562) * lu(k,1195) - lu(k,1201) = lu(k,1201) - lu(k,563) * lu(k,1195) - lu(k,1202) = lu(k,1202) - lu(k,564) * lu(k,1195) - lu(k,1206) = lu(k,1206) - lu(k,565) * lu(k,1195) - lu(k,1210) = lu(k,1210) - lu(k,566) * lu(k,1195) - lu(k,1211) = lu(k,1211) - lu(k,567) * lu(k,1195) - lu(k,1213) = lu(k,1213) - lu(k,568) * lu(k,1195) - lu(k,1216) = lu(k,1216) - lu(k,569) * lu(k,1195) - lu(k,1220) = lu(k,1220) - lu(k,570) * lu(k,1195) - lu(k,1265) = lu(k,1265) - lu(k,561) * lu(k,1263) - lu(k,1267) = lu(k,1267) - lu(k,562) * lu(k,1263) - lu(k,1268) = lu(k,1268) - lu(k,563) * lu(k,1263) - lu(k,1269) = lu(k,1269) - lu(k,564) * lu(k,1263) - lu(k,1273) = lu(k,1273) - lu(k,565) * lu(k,1263) - lu(k,1277) = lu(k,1277) - lu(k,566) * lu(k,1263) - lu(k,1278) = lu(k,1278) - lu(k,567) * lu(k,1263) - lu(k,1280) = lu(k,1280) - lu(k,568) * lu(k,1263) - lu(k,1283) = lu(k,1283) - lu(k,569) * lu(k,1263) - lu(k,1287) = lu(k,1287) - lu(k,570) * lu(k,1263) - lu(k,578) = 1._r8 / lu(k,578) - lu(k,579) = lu(k,579) * lu(k,578) - lu(k,580) = lu(k,580) * lu(k,578) - lu(k,581) = lu(k,581) * lu(k,578) - lu(k,582) = lu(k,582) * lu(k,578) - lu(k,583) = lu(k,583) * lu(k,578) - lu(k,584) = lu(k,584) * lu(k,578) - lu(k,585) = lu(k,585) * lu(k,578) - lu(k,586) = lu(k,586) * lu(k,578) - lu(k,587) = lu(k,587) * lu(k,578) - lu(k,588) = lu(k,588) * lu(k,578) - lu(k,625) = lu(k,625) - lu(k,579) * lu(k,624) - lu(k,629) = lu(k,629) - lu(k,580) * lu(k,624) - lu(k,631) = lu(k,631) - lu(k,581) * lu(k,624) - lu(k,632) = lu(k,632) - lu(k,582) * lu(k,624) - lu(k,633) = lu(k,633) - lu(k,583) * lu(k,624) - lu(k,634) = lu(k,634) - lu(k,584) * lu(k,624) - lu(k,636) = lu(k,636) - lu(k,585) * lu(k,624) - lu(k,637) = lu(k,637) - lu(k,586) * lu(k,624) - lu(k,638) = lu(k,638) - lu(k,587) * lu(k,624) - lu(k,639) = lu(k,639) - lu(k,588) * lu(k,624) - lu(k,648) = lu(k,648) - lu(k,579) * lu(k,647) - lu(k,651) = lu(k,651) - lu(k,580) * lu(k,647) - lu(k,652) = lu(k,652) - lu(k,581) * lu(k,647) - lu(k,653) = lu(k,653) - lu(k,582) * lu(k,647) - lu(k,654) = lu(k,654) - lu(k,583) * lu(k,647) - lu(k,655) = lu(k,655) - lu(k,584) * lu(k,647) - lu(k,656) = lu(k,656) - lu(k,585) * lu(k,647) - lu(k,657) = lu(k,657) - lu(k,586) * lu(k,647) - lu(k,658) = lu(k,658) - lu(k,587) * lu(k,647) - lu(k,659) = lu(k,659) - lu(k,588) * lu(k,647) - lu(k,691) = lu(k,691) - lu(k,579) * lu(k,690) - lu(k,695) = lu(k,695) - lu(k,580) * lu(k,690) - lu(k,697) = lu(k,697) - lu(k,581) * lu(k,690) - lu(k,698) = lu(k,698) - lu(k,582) * lu(k,690) - lu(k,699) = lu(k,699) - lu(k,583) * lu(k,690) - lu(k,700) = lu(k,700) - lu(k,584) * lu(k,690) - lu(k,702) = lu(k,702) - lu(k,585) * lu(k,690) - lu(k,703) = lu(k,703) - lu(k,586) * lu(k,690) - lu(k,704) = lu(k,704) - lu(k,587) * lu(k,690) - lu(k,705) = lu(k,705) - lu(k,588) * lu(k,690) - lu(k,747) = lu(k,747) - lu(k,579) * lu(k,746) - lu(k,751) = lu(k,751) - lu(k,580) * lu(k,746) - lu(k,753) = lu(k,753) - lu(k,581) * lu(k,746) - lu(k,755) = lu(k,755) - lu(k,582) * lu(k,746) - lu(k,758) = lu(k,758) - lu(k,583) * lu(k,746) - lu(k,759) = lu(k,759) - lu(k,584) * lu(k,746) - lu(k,761) = lu(k,761) - lu(k,585) * lu(k,746) - lu(k,763) = lu(k,763) - lu(k,586) * lu(k,746) - lu(k,764) = lu(k,764) - lu(k,587) * lu(k,746) - lu(k,766) = lu(k,766) - lu(k,588) * lu(k,746) - lu(k,930) = lu(k,930) - lu(k,579) * lu(k,929) - lu(k,934) = lu(k,934) - lu(k,580) * lu(k,929) - lu(k,936) = lu(k,936) - lu(k,581) * lu(k,929) - lu(k,938) = lu(k,938) - lu(k,582) * lu(k,929) - lu(k,942) = lu(k,942) - lu(k,583) * lu(k,929) - lu(k,943) = lu(k,943) - lu(k,584) * lu(k,929) - lu(k,946) = lu(k,946) - lu(k,585) * lu(k,929) - lu(k,948) = lu(k,948) - lu(k,586) * lu(k,929) - lu(k,949) = lu(k,949) - lu(k,587) * lu(k,929) - lu(k,951) = lu(k,951) - lu(k,588) * lu(k,929) - lu(k,995) = lu(k,995) - lu(k,579) * lu(k,994) - lu(k,1000) = lu(k,1000) - lu(k,580) * lu(k,994) - lu(k,1002) = lu(k,1002) - lu(k,581) * lu(k,994) - lu(k,1004) = lu(k,1004) - lu(k,582) * lu(k,994) - lu(k,1008) = lu(k,1008) - lu(k,583) * lu(k,994) - lu(k,1009) = lu(k,1009) - lu(k,584) * lu(k,994) - lu(k,1012) = lu(k,1012) - lu(k,585) * lu(k,994) - lu(k,1014) = lu(k,1014) - lu(k,586) * lu(k,994) - lu(k,1015) = lu(k,1015) - lu(k,587) * lu(k,994) - lu(k,1017) = lu(k,1017) - lu(k,588) * lu(k,994) - lu(k,1153) = lu(k,1153) - lu(k,579) * lu(k,1152) - lu(k,1158) = lu(k,1158) - lu(k,580) * lu(k,1152) - lu(k,1160) = lu(k,1160) - lu(k,581) * lu(k,1152) - lu(k,1162) = lu(k,1162) - lu(k,582) * lu(k,1152) - lu(k,1166) = lu(k,1166) - lu(k,583) * lu(k,1152) - lu(k,1167) = lu(k,1167) - lu(k,584) * lu(k,1152) - lu(k,1170) = lu(k,1170) - lu(k,585) * lu(k,1152) - lu(k,1172) = lu(k,1172) - lu(k,586) * lu(k,1152) - lu(k,1173) = lu(k,1173) - lu(k,587) * lu(k,1152) - lu(k,1175) = lu(k,1175) - lu(k,588) * lu(k,1152) - lu(k,1197) = lu(k,1197) - lu(k,579) * lu(k,1196) - lu(k,1202) = lu(k,1202) - lu(k,580) * lu(k,1196) - lu(k,1204) = lu(k,1204) - lu(k,581) * lu(k,1196) - lu(k,1206) = lu(k,1206) - lu(k,582) * lu(k,1196) - lu(k,1210) = lu(k,1210) - lu(k,583) * lu(k,1196) - lu(k,1211) = lu(k,1211) - lu(k,584) * lu(k,1196) - lu(k,1214) = lu(k,1214) - lu(k,585) * lu(k,1196) - lu(k,1216) = lu(k,1216) - lu(k,586) * lu(k,1196) - lu(k,1217) = lu(k,1217) - lu(k,587) * lu(k,1196) - lu(k,1219) = lu(k,1219) - lu(k,588) * lu(k,1196) - lu(k,1265) = lu(k,1265) - lu(k,579) * lu(k,1264) - lu(k,1269) = lu(k,1269) - lu(k,580) * lu(k,1264) - lu(k,1271) = lu(k,1271) - lu(k,581) * lu(k,1264) - lu(k,1273) = lu(k,1273) - lu(k,582) * lu(k,1264) - lu(k,1277) = lu(k,1277) - lu(k,583) * lu(k,1264) - lu(k,1278) = lu(k,1278) - lu(k,584) * lu(k,1264) - lu(k,1281) = lu(k,1281) - lu(k,585) * lu(k,1264) - lu(k,1283) = lu(k,1283) - lu(k,586) * lu(k,1264) - lu(k,1284) = lu(k,1284) - lu(k,587) * lu(k,1264) - lu(k,1286) = lu(k,1286) - lu(k,588) * lu(k,1264) - lu(k,591) = 1._r8 / lu(k,591) - lu(k,592) = lu(k,592) * lu(k,591) - lu(k,593) = lu(k,593) * lu(k,591) - lu(k,594) = lu(k,594) * lu(k,591) - lu(k,595) = lu(k,595) * lu(k,591) - lu(k,596) = lu(k,596) * lu(k,591) - lu(k,597) = lu(k,597) * lu(k,591) - lu(k,598) = lu(k,598) * lu(k,591) - lu(k,629) = lu(k,629) - lu(k,592) * lu(k,625) - lu(k,633) = lu(k,633) - lu(k,593) * lu(k,625) - lu(k,634) = lu(k,634) - lu(k,594) * lu(k,625) - lu(k,636) = lu(k,636) - lu(k,595) * lu(k,625) - lu(k,637) = lu(k,637) - lu(k,596) * lu(k,625) - lu(k,638) = lu(k,638) - lu(k,597) * lu(k,625) - lu(k,640) = lu(k,640) - lu(k,598) * lu(k,625) - lu(k,651) = lu(k,651) - lu(k,592) * lu(k,648) - lu(k,654) = lu(k,654) - lu(k,593) * lu(k,648) - lu(k,655) = lu(k,655) - lu(k,594) * lu(k,648) - lu(k,656) = lu(k,656) - lu(k,595) * lu(k,648) - lu(k,657) = lu(k,657) - lu(k,596) * lu(k,648) - lu(k,658) = lu(k,658) - lu(k,597) * lu(k,648) - lu(k,660) = lu(k,660) - lu(k,598) * lu(k,648) - lu(k,669) = lu(k,669) - lu(k,592) * lu(k,667) - lu(k,672) = lu(k,672) - lu(k,593) * lu(k,667) - lu(k,673) = lu(k,673) - lu(k,594) * lu(k,667) - lu(k,675) = lu(k,675) - lu(k,595) * lu(k,667) - lu(k,676) = lu(k,676) - lu(k,596) * lu(k,667) - lu(k,677) = lu(k,677) - lu(k,597) * lu(k,667) - lu(k,679) = lu(k,679) - lu(k,598) * lu(k,667) - lu(k,695) = lu(k,695) - lu(k,592) * lu(k,691) - lu(k,699) = lu(k,699) - lu(k,593) * lu(k,691) - lu(k,700) = lu(k,700) - lu(k,594) * lu(k,691) - lu(k,702) = lu(k,702) - lu(k,595) * lu(k,691) - lu(k,703) = lu(k,703) - lu(k,596) * lu(k,691) - lu(k,704) = lu(k,704) - lu(k,597) * lu(k,691) - lu(k,706) = lu(k,706) - lu(k,598) * lu(k,691) - lu(k,714) = lu(k,714) - lu(k,592) * lu(k,711) - lu(k,721) = lu(k,721) - lu(k,593) * lu(k,711) - lu(k,722) = lu(k,722) - lu(k,594) * lu(k,711) - lu(k,724) = lu(k,724) - lu(k,595) * lu(k,711) - lu(k,726) = lu(k,726) - lu(k,596) * lu(k,711) - lu(k,727) = lu(k,727) - lu(k,597) * lu(k,711) - lu(k,729) = lu(k,729) - lu(k,598) * lu(k,711) - lu(k,751) = lu(k,751) - lu(k,592) * lu(k,747) - lu(k,758) = lu(k,758) - lu(k,593) * lu(k,747) - lu(k,759) = lu(k,759) - lu(k,594) * lu(k,747) - lu(k,761) = lu(k,761) - lu(k,595) * lu(k,747) - lu(k,763) = lu(k,763) - lu(k,596) * lu(k,747) - lu(k,764) = lu(k,764) - lu(k,597) * lu(k,747) - lu(k,767) = lu(k,767) - lu(k,598) * lu(k,747) - lu(k,934) = lu(k,934) - lu(k,592) * lu(k,930) - lu(k,942) = lu(k,942) - lu(k,593) * lu(k,930) - lu(k,943) = lu(k,943) - lu(k,594) * lu(k,930) - lu(k,946) = lu(k,946) - lu(k,595) * lu(k,930) - lu(k,948) = lu(k,948) - lu(k,596) * lu(k,930) - lu(k,949) = lu(k,949) - lu(k,597) * lu(k,930) - lu(k,952) = lu(k,952) - lu(k,598) * lu(k,930) - lu(k,1000) = lu(k,1000) - lu(k,592) * lu(k,995) - lu(k,1008) = lu(k,1008) - lu(k,593) * lu(k,995) - lu(k,1009) = lu(k,1009) - lu(k,594) * lu(k,995) - lu(k,1012) = lu(k,1012) - lu(k,595) * lu(k,995) - lu(k,1014) = lu(k,1014) - lu(k,596) * lu(k,995) - lu(k,1015) = lu(k,1015) - lu(k,597) * lu(k,995) - lu(k,1018) = lu(k,1018) - lu(k,598) * lu(k,995) - lu(k,1036) = lu(k,1036) - lu(k,592) * lu(k,1033) - lu(k,1044) = lu(k,1044) - lu(k,593) * lu(k,1033) - lu(k,1045) = lu(k,1045) - lu(k,594) * lu(k,1033) - lu(k,1048) = lu(k,1048) - lu(k,595) * lu(k,1033) - lu(k,1050) = lu(k,1050) - lu(k,596) * lu(k,1033) - lu(k,1051) = lu(k,1051) - lu(k,597) * lu(k,1033) - lu(k,1054) = lu(k,1054) - lu(k,598) * lu(k,1033) - lu(k,1158) = lu(k,1158) - lu(k,592) * lu(k,1153) - lu(k,1166) = lu(k,1166) - lu(k,593) * lu(k,1153) - lu(k,1167) = lu(k,1167) - lu(k,594) * lu(k,1153) - lu(k,1170) = lu(k,1170) - lu(k,595) * lu(k,1153) - lu(k,1172) = lu(k,1172) - lu(k,596) * lu(k,1153) - lu(k,1173) = lu(k,1173) - lu(k,597) * lu(k,1153) - lu(k,1176) = lu(k,1176) - lu(k,598) * lu(k,1153) - lu(k,1202) = lu(k,1202) - lu(k,592) * lu(k,1197) - lu(k,1210) = lu(k,1210) - lu(k,593) * lu(k,1197) - lu(k,1211) = lu(k,1211) - lu(k,594) * lu(k,1197) - lu(k,1214) = lu(k,1214) - lu(k,595) * lu(k,1197) - lu(k,1216) = lu(k,1216) - lu(k,596) * lu(k,1197) - lu(k,1217) = lu(k,1217) - lu(k,597) * lu(k,1197) - lu(k,1220) = lu(k,1220) - lu(k,598) * lu(k,1197) - lu(k,1269) = lu(k,1269) - lu(k,592) * lu(k,1265) - lu(k,1277) = lu(k,1277) - lu(k,593) * lu(k,1265) - lu(k,1278) = lu(k,1278) - lu(k,594) * lu(k,1265) - lu(k,1281) = lu(k,1281) - lu(k,595) * lu(k,1265) - lu(k,1283) = lu(k,1283) - lu(k,596) * lu(k,1265) - lu(k,1284) = lu(k,1284) - lu(k,597) * lu(k,1265) - lu(k,1287) = lu(k,1287) - lu(k,598) * lu(k,1265) - lu(k,602) = 1._r8 / lu(k,602) - lu(k,603) = lu(k,603) * lu(k,602) - lu(k,604) = lu(k,604) * lu(k,602) - lu(k,605) = lu(k,605) * lu(k,602) - lu(k,606) = lu(k,606) * lu(k,602) - lu(k,607) = lu(k,607) * lu(k,602) - lu(k,608) = lu(k,608) * lu(k,602) - lu(k,609) = lu(k,609) * lu(k,602) - lu(k,610) = lu(k,610) * lu(k,602) - lu(k,611) = lu(k,611) * lu(k,602) - lu(k,612) = lu(k,612) * lu(k,602) - lu(k,613) = lu(k,613) * lu(k,602) - lu(k,614) = lu(k,614) * lu(k,602) - lu(k,881) = lu(k,881) - lu(k,603) * lu(k,880) - lu(k,883) = lu(k,883) - lu(k,604) * lu(k,880) - lu(k,885) = lu(k,885) - lu(k,605) * lu(k,880) - lu(k,886) = lu(k,886) - lu(k,606) * lu(k,880) - lu(k,887) = lu(k,887) - lu(k,607) * lu(k,880) - lu(k,888) = lu(k,888) - lu(k,608) * lu(k,880) - lu(k,889) = lu(k,889) - lu(k,609) * lu(k,880) - lu(k,890) = lu(k,890) - lu(k,610) * lu(k,880) - lu(k,892) = lu(k,892) - lu(k,611) * lu(k,880) - lu(k,894) = lu(k,894) - lu(k,612) * lu(k,880) - lu(k,895) = lu(k,895) - lu(k,613) * lu(k,880) - lu(k,896) = lu(k,896) - lu(k,614) * lu(k,880) - lu(k,960) = - lu(k,603) * lu(k,959) - lu(k,961) = lu(k,961) - lu(k,604) * lu(k,959) - lu(k,963) = lu(k,963) - lu(k,605) * lu(k,959) - lu(k,964) = lu(k,964) - lu(k,606) * lu(k,959) - lu(k,965) = lu(k,965) - lu(k,607) * lu(k,959) - lu(k,966) = lu(k,966) - lu(k,608) * lu(k,959) - lu(k,967) = - lu(k,609) * lu(k,959) - lu(k,968) = lu(k,968) - lu(k,610) * lu(k,959) - lu(k,970) = lu(k,970) - lu(k,611) * lu(k,959) - lu(k,972) = lu(k,972) - lu(k,612) * lu(k,959) - lu(k,973) = lu(k,973) - lu(k,613) * lu(k,959) - lu(k,974) = lu(k,974) - lu(k,614) * lu(k,959) - lu(k,1003) = lu(k,1003) - lu(k,603) * lu(k,996) - lu(k,1005) = lu(k,1005) - lu(k,604) * lu(k,996) - lu(k,1007) = lu(k,1007) - lu(k,605) * lu(k,996) - lu(k,1008) = lu(k,1008) - lu(k,606) * lu(k,996) - lu(k,1009) = lu(k,1009) - lu(k,607) * lu(k,996) - lu(k,1010) = lu(k,1010) - lu(k,608) * lu(k,996) - lu(k,1011) = lu(k,1011) - lu(k,609) * lu(k,996) - lu(k,1012) = lu(k,1012) - lu(k,610) * lu(k,996) - lu(k,1014) = lu(k,1014) - lu(k,611) * lu(k,996) - lu(k,1016) = lu(k,1016) - lu(k,612) * lu(k,996) - lu(k,1017) = lu(k,1017) - lu(k,613) * lu(k,996) - lu(k,1018) = lu(k,1018) - lu(k,614) * lu(k,996) - lu(k,1039) = lu(k,1039) - lu(k,603) * lu(k,1034) - lu(k,1041) = lu(k,1041) - lu(k,604) * lu(k,1034) - lu(k,1043) = lu(k,1043) - lu(k,605) * lu(k,1034) - lu(k,1044) = lu(k,1044) - lu(k,606) * lu(k,1034) - lu(k,1045) = lu(k,1045) - lu(k,607) * lu(k,1034) - lu(k,1046) = lu(k,1046) - lu(k,608) * lu(k,1034) - lu(k,1047) = lu(k,1047) - lu(k,609) * lu(k,1034) - lu(k,1048) = lu(k,1048) - lu(k,610) * lu(k,1034) - lu(k,1050) = lu(k,1050) - lu(k,611) * lu(k,1034) - lu(k,1052) = lu(k,1052) - lu(k,612) * lu(k,1034) - lu(k,1053) = lu(k,1053) - lu(k,613) * lu(k,1034) - lu(k,1054) = lu(k,1054) - lu(k,614) * lu(k,1034) - lu(k,1161) = lu(k,1161) - lu(k,603) * lu(k,1154) - lu(k,1163) = lu(k,1163) - lu(k,604) * lu(k,1154) - lu(k,1165) = lu(k,1165) - lu(k,605) * lu(k,1154) - lu(k,1166) = lu(k,1166) - lu(k,606) * lu(k,1154) - lu(k,1167) = lu(k,1167) - lu(k,607) * lu(k,1154) - lu(k,1168) = lu(k,1168) - lu(k,608) * lu(k,1154) - lu(k,1169) = lu(k,1169) - lu(k,609) * lu(k,1154) - lu(k,1170) = lu(k,1170) - lu(k,610) * lu(k,1154) - lu(k,1172) = lu(k,1172) - lu(k,611) * lu(k,1154) - lu(k,1174) = lu(k,1174) - lu(k,612) * lu(k,1154) - lu(k,1175) = lu(k,1175) - lu(k,613) * lu(k,1154) - lu(k,1176) = lu(k,1176) - lu(k,614) * lu(k,1154) - lu(k,1205) = lu(k,1205) - lu(k,603) * lu(k,1198) - lu(k,1207) = - lu(k,604) * lu(k,1198) - lu(k,1209) = lu(k,1209) - lu(k,605) * lu(k,1198) - lu(k,1210) = lu(k,1210) - lu(k,606) * lu(k,1198) - lu(k,1211) = lu(k,1211) - lu(k,607) * lu(k,1198) - lu(k,1212) = - lu(k,608) * lu(k,1198) - lu(k,1213) = lu(k,1213) - lu(k,609) * lu(k,1198) - lu(k,1214) = lu(k,1214) - lu(k,610) * lu(k,1198) - lu(k,1216) = lu(k,1216) - lu(k,611) * lu(k,1198) - lu(k,1218) = - lu(k,612) * lu(k,1198) - lu(k,1219) = lu(k,1219) - lu(k,613) * lu(k,1198) - lu(k,1220) = lu(k,1220) - lu(k,614) * lu(k,1198) - lu(k,1230) = - lu(k,603) * lu(k,1228) - lu(k,1232) = lu(k,1232) - lu(k,604) * lu(k,1228) - lu(k,1234) = lu(k,1234) - lu(k,605) * lu(k,1228) - lu(k,1235) = lu(k,1235) - lu(k,606) * lu(k,1228) - lu(k,1236) = lu(k,1236) - lu(k,607) * lu(k,1228) - lu(k,1237) = lu(k,1237) - lu(k,608) * lu(k,1228) - lu(k,1238) = - lu(k,609) * lu(k,1228) - lu(k,1239) = lu(k,1239) - lu(k,610) * lu(k,1228) - lu(k,1241) = lu(k,1241) - lu(k,611) * lu(k,1228) - lu(k,1243) = lu(k,1243) - lu(k,612) * lu(k,1228) - lu(k,1244) = lu(k,1244) - lu(k,613) * lu(k,1228) - lu(k,1245) = lu(k,1245) - lu(k,614) * lu(k,1228) - lu(k,1293) = lu(k,1293) - lu(k,603) * lu(k,1292) - lu(k,1294) = - lu(k,604) * lu(k,1292) - lu(k,1296) = lu(k,1296) - lu(k,605) * lu(k,1292) - lu(k,1297) = lu(k,1297) - lu(k,606) * lu(k,1292) - lu(k,1298) = lu(k,1298) - lu(k,607) * lu(k,1292) - lu(k,1299) = - lu(k,608) * lu(k,1292) - lu(k,1300) = - lu(k,609) * lu(k,1292) - lu(k,1301) = - lu(k,610) * lu(k,1292) - lu(k,1303) = lu(k,1303) - lu(k,611) * lu(k,1292) - lu(k,1305) = - lu(k,612) * lu(k,1292) - lu(k,1306) = - lu(k,613) * lu(k,1292) - lu(k,1307) = lu(k,1307) - lu(k,614) * lu(k,1292) - end do - end subroutine lu_fac13 - subroutine lu_fac14( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,626) = 1._r8 / lu(k,626) - lu(k,627) = lu(k,627) * lu(k,626) - lu(k,628) = lu(k,628) * lu(k,626) - lu(k,629) = lu(k,629) * lu(k,626) - lu(k,630) = lu(k,630) * lu(k,626) - lu(k,631) = lu(k,631) * lu(k,626) - lu(k,632) = lu(k,632) * lu(k,626) - lu(k,633) = lu(k,633) * lu(k,626) - lu(k,634) = lu(k,634) * lu(k,626) - lu(k,635) = lu(k,635) * lu(k,626) - lu(k,636) = lu(k,636) * lu(k,626) - lu(k,637) = lu(k,637) * lu(k,626) - lu(k,638) = lu(k,638) * lu(k,626) - lu(k,639) = lu(k,639) * lu(k,626) - lu(k,640) = lu(k,640) * lu(k,626) - lu(k,693) = lu(k,693) - lu(k,627) * lu(k,692) - lu(k,694) = lu(k,694) - lu(k,628) * lu(k,692) - lu(k,695) = lu(k,695) - lu(k,629) * lu(k,692) - lu(k,696) = lu(k,696) - lu(k,630) * lu(k,692) - lu(k,697) = lu(k,697) - lu(k,631) * lu(k,692) - lu(k,698) = lu(k,698) - lu(k,632) * lu(k,692) - lu(k,699) = lu(k,699) - lu(k,633) * lu(k,692) - lu(k,700) = lu(k,700) - lu(k,634) * lu(k,692) - lu(k,701) = lu(k,701) - lu(k,635) * lu(k,692) - lu(k,702) = lu(k,702) - lu(k,636) * lu(k,692) - lu(k,703) = lu(k,703) - lu(k,637) * lu(k,692) - lu(k,704) = lu(k,704) - lu(k,638) * lu(k,692) - lu(k,705) = lu(k,705) - lu(k,639) * lu(k,692) - lu(k,706) = lu(k,706) - lu(k,640) * lu(k,692) - lu(k,749) = lu(k,749) - lu(k,627) * lu(k,748) - lu(k,750) = lu(k,750) - lu(k,628) * lu(k,748) - lu(k,751) = lu(k,751) - lu(k,629) * lu(k,748) - lu(k,752) = lu(k,752) - lu(k,630) * lu(k,748) - lu(k,753) = lu(k,753) - lu(k,631) * lu(k,748) - lu(k,755) = lu(k,755) - lu(k,632) * lu(k,748) - lu(k,758) = lu(k,758) - lu(k,633) * lu(k,748) - lu(k,759) = lu(k,759) - lu(k,634) * lu(k,748) - lu(k,760) = lu(k,760) - lu(k,635) * lu(k,748) - lu(k,761) = lu(k,761) - lu(k,636) * lu(k,748) - lu(k,763) = lu(k,763) - lu(k,637) * lu(k,748) - lu(k,764) = lu(k,764) - lu(k,638) * lu(k,748) - lu(k,766) = lu(k,766) - lu(k,639) * lu(k,748) - lu(k,767) = lu(k,767) - lu(k,640) * lu(k,748) - lu(k,932) = lu(k,932) - lu(k,627) * lu(k,931) - lu(k,933) = lu(k,933) - lu(k,628) * lu(k,931) - lu(k,934) = lu(k,934) - lu(k,629) * lu(k,931) - lu(k,935) = lu(k,935) - lu(k,630) * lu(k,931) - lu(k,936) = lu(k,936) - lu(k,631) * lu(k,931) - lu(k,938) = lu(k,938) - lu(k,632) * lu(k,931) - lu(k,942) = lu(k,942) - lu(k,633) * lu(k,931) - lu(k,943) = lu(k,943) - lu(k,634) * lu(k,931) - lu(k,945) = lu(k,945) - lu(k,635) * lu(k,931) - lu(k,946) = lu(k,946) - lu(k,636) * lu(k,931) - lu(k,948) = lu(k,948) - lu(k,637) * lu(k,931) - lu(k,949) = lu(k,949) - lu(k,638) * lu(k,931) - lu(k,951) = lu(k,951) - lu(k,639) * lu(k,931) - lu(k,952) = lu(k,952) - lu(k,640) * lu(k,931) - lu(k,998) = lu(k,998) - lu(k,627) * lu(k,997) - lu(k,999) = lu(k,999) - lu(k,628) * lu(k,997) - lu(k,1000) = lu(k,1000) - lu(k,629) * lu(k,997) - lu(k,1001) = lu(k,1001) - lu(k,630) * lu(k,997) - lu(k,1002) = lu(k,1002) - lu(k,631) * lu(k,997) - lu(k,1004) = lu(k,1004) - lu(k,632) * lu(k,997) - lu(k,1008) = lu(k,1008) - lu(k,633) * lu(k,997) - lu(k,1009) = lu(k,1009) - lu(k,634) * lu(k,997) - lu(k,1011) = lu(k,1011) - lu(k,635) * lu(k,997) - lu(k,1012) = lu(k,1012) - lu(k,636) * lu(k,997) - lu(k,1014) = lu(k,1014) - lu(k,637) * lu(k,997) - lu(k,1015) = lu(k,1015) - lu(k,638) * lu(k,997) - lu(k,1017) = lu(k,1017) - lu(k,639) * lu(k,997) - lu(k,1018) = lu(k,1018) - lu(k,640) * lu(k,997) - lu(k,1156) = lu(k,1156) - lu(k,627) * lu(k,1155) - lu(k,1157) = lu(k,1157) - lu(k,628) * lu(k,1155) - lu(k,1158) = lu(k,1158) - lu(k,629) * lu(k,1155) - lu(k,1159) = lu(k,1159) - lu(k,630) * lu(k,1155) - lu(k,1160) = lu(k,1160) - lu(k,631) * lu(k,1155) - lu(k,1162) = lu(k,1162) - lu(k,632) * lu(k,1155) - lu(k,1166) = lu(k,1166) - lu(k,633) * lu(k,1155) - lu(k,1167) = lu(k,1167) - lu(k,634) * lu(k,1155) - lu(k,1169) = lu(k,1169) - lu(k,635) * lu(k,1155) - lu(k,1170) = lu(k,1170) - lu(k,636) * lu(k,1155) - lu(k,1172) = lu(k,1172) - lu(k,637) * lu(k,1155) - lu(k,1173) = lu(k,1173) - lu(k,638) * lu(k,1155) - lu(k,1175) = lu(k,1175) - lu(k,639) * lu(k,1155) - lu(k,1176) = lu(k,1176) - lu(k,640) * lu(k,1155) - lu(k,1200) = lu(k,1200) - lu(k,627) * lu(k,1199) - lu(k,1201) = lu(k,1201) - lu(k,628) * lu(k,1199) - lu(k,1202) = lu(k,1202) - lu(k,629) * lu(k,1199) - lu(k,1203) = lu(k,1203) - lu(k,630) * lu(k,1199) - lu(k,1204) = lu(k,1204) - lu(k,631) * lu(k,1199) - lu(k,1206) = lu(k,1206) - lu(k,632) * lu(k,1199) - lu(k,1210) = lu(k,1210) - lu(k,633) * lu(k,1199) - lu(k,1211) = lu(k,1211) - lu(k,634) * lu(k,1199) - lu(k,1213) = lu(k,1213) - lu(k,635) * lu(k,1199) - lu(k,1214) = lu(k,1214) - lu(k,636) * lu(k,1199) - lu(k,1216) = lu(k,1216) - lu(k,637) * lu(k,1199) - lu(k,1217) = lu(k,1217) - lu(k,638) * lu(k,1199) - lu(k,1219) = lu(k,1219) - lu(k,639) * lu(k,1199) - lu(k,1220) = lu(k,1220) - lu(k,640) * lu(k,1199) - lu(k,1267) = lu(k,1267) - lu(k,627) * lu(k,1266) - lu(k,1268) = lu(k,1268) - lu(k,628) * lu(k,1266) - lu(k,1269) = lu(k,1269) - lu(k,629) * lu(k,1266) - lu(k,1270) = lu(k,1270) - lu(k,630) * lu(k,1266) - lu(k,1271) = lu(k,1271) - lu(k,631) * lu(k,1266) - lu(k,1273) = lu(k,1273) - lu(k,632) * lu(k,1266) - lu(k,1277) = lu(k,1277) - lu(k,633) * lu(k,1266) - lu(k,1278) = lu(k,1278) - lu(k,634) * lu(k,1266) - lu(k,1280) = lu(k,1280) - lu(k,635) * lu(k,1266) - lu(k,1281) = lu(k,1281) - lu(k,636) * lu(k,1266) - lu(k,1283) = lu(k,1283) - lu(k,637) * lu(k,1266) - lu(k,1284) = lu(k,1284) - lu(k,638) * lu(k,1266) - lu(k,1286) = lu(k,1286) - lu(k,639) * lu(k,1266) - lu(k,1287) = lu(k,1287) - lu(k,640) * lu(k,1266) - lu(k,649) = 1._r8 / lu(k,649) - lu(k,650) = lu(k,650) * lu(k,649) - lu(k,651) = lu(k,651) * lu(k,649) - lu(k,652) = lu(k,652) * lu(k,649) - lu(k,653) = lu(k,653) * lu(k,649) - lu(k,654) = lu(k,654) * lu(k,649) - lu(k,655) = lu(k,655) * lu(k,649) - lu(k,656) = lu(k,656) * lu(k,649) - lu(k,657) = lu(k,657) * lu(k,649) - lu(k,658) = lu(k,658) * lu(k,649) - lu(k,659) = lu(k,659) * lu(k,649) - lu(k,660) = lu(k,660) * lu(k,649) - lu(k,694) = lu(k,694) - lu(k,650) * lu(k,693) - lu(k,695) = lu(k,695) - lu(k,651) * lu(k,693) - lu(k,697) = lu(k,697) - lu(k,652) * lu(k,693) - lu(k,698) = lu(k,698) - lu(k,653) * lu(k,693) - lu(k,699) = lu(k,699) - lu(k,654) * lu(k,693) - lu(k,700) = lu(k,700) - lu(k,655) * lu(k,693) - lu(k,702) = lu(k,702) - lu(k,656) * lu(k,693) - lu(k,703) = lu(k,703) - lu(k,657) * lu(k,693) - lu(k,704) = lu(k,704) - lu(k,658) * lu(k,693) - lu(k,705) = lu(k,705) - lu(k,659) * lu(k,693) - lu(k,706) = lu(k,706) - lu(k,660) * lu(k,693) - lu(k,713) = - lu(k,650) * lu(k,712) - lu(k,714) = lu(k,714) - lu(k,651) * lu(k,712) - lu(k,716) = lu(k,716) - lu(k,652) * lu(k,712) - lu(k,718) = lu(k,718) - lu(k,653) * lu(k,712) - lu(k,721) = lu(k,721) - lu(k,654) * lu(k,712) - lu(k,722) = lu(k,722) - lu(k,655) * lu(k,712) - lu(k,724) = lu(k,724) - lu(k,656) * lu(k,712) - lu(k,726) = lu(k,726) - lu(k,657) * lu(k,712) - lu(k,727) = lu(k,727) - lu(k,658) * lu(k,712) - lu(k,728) = lu(k,728) - lu(k,659) * lu(k,712) - lu(k,729) = lu(k,729) - lu(k,660) * lu(k,712) - lu(k,750) = lu(k,750) - lu(k,650) * lu(k,749) - lu(k,751) = lu(k,751) - lu(k,651) * lu(k,749) - lu(k,753) = lu(k,753) - lu(k,652) * lu(k,749) - lu(k,755) = lu(k,755) - lu(k,653) * lu(k,749) - lu(k,758) = lu(k,758) - lu(k,654) * lu(k,749) - lu(k,759) = lu(k,759) - lu(k,655) * lu(k,749) - lu(k,761) = lu(k,761) - lu(k,656) * lu(k,749) - lu(k,763) = lu(k,763) - lu(k,657) * lu(k,749) - lu(k,764) = lu(k,764) - lu(k,658) * lu(k,749) - lu(k,766) = lu(k,766) - lu(k,659) * lu(k,749) - lu(k,767) = lu(k,767) - lu(k,660) * lu(k,749) - lu(k,933) = lu(k,933) - lu(k,650) * lu(k,932) - lu(k,934) = lu(k,934) - lu(k,651) * lu(k,932) - lu(k,936) = lu(k,936) - lu(k,652) * lu(k,932) - lu(k,938) = lu(k,938) - lu(k,653) * lu(k,932) - lu(k,942) = lu(k,942) - lu(k,654) * lu(k,932) - lu(k,943) = lu(k,943) - lu(k,655) * lu(k,932) - lu(k,946) = lu(k,946) - lu(k,656) * lu(k,932) - lu(k,948) = lu(k,948) - lu(k,657) * lu(k,932) - lu(k,949) = lu(k,949) - lu(k,658) * lu(k,932) - lu(k,951) = lu(k,951) - lu(k,659) * lu(k,932) - lu(k,952) = lu(k,952) - lu(k,660) * lu(k,932) - lu(k,999) = lu(k,999) - lu(k,650) * lu(k,998) - lu(k,1000) = lu(k,1000) - lu(k,651) * lu(k,998) - lu(k,1002) = lu(k,1002) - lu(k,652) * lu(k,998) - lu(k,1004) = lu(k,1004) - lu(k,653) * lu(k,998) - lu(k,1008) = lu(k,1008) - lu(k,654) * lu(k,998) - lu(k,1009) = lu(k,1009) - lu(k,655) * lu(k,998) - lu(k,1012) = lu(k,1012) - lu(k,656) * lu(k,998) - lu(k,1014) = lu(k,1014) - lu(k,657) * lu(k,998) - lu(k,1015) = lu(k,1015) - lu(k,658) * lu(k,998) - lu(k,1017) = lu(k,1017) - lu(k,659) * lu(k,998) - lu(k,1018) = lu(k,1018) - lu(k,660) * lu(k,998) - lu(k,1157) = lu(k,1157) - lu(k,650) * lu(k,1156) - lu(k,1158) = lu(k,1158) - lu(k,651) * lu(k,1156) - lu(k,1160) = lu(k,1160) - lu(k,652) * lu(k,1156) - lu(k,1162) = lu(k,1162) - lu(k,653) * lu(k,1156) - lu(k,1166) = lu(k,1166) - lu(k,654) * lu(k,1156) - lu(k,1167) = lu(k,1167) - lu(k,655) * lu(k,1156) - lu(k,1170) = lu(k,1170) - lu(k,656) * lu(k,1156) - lu(k,1172) = lu(k,1172) - lu(k,657) * lu(k,1156) - lu(k,1173) = lu(k,1173) - lu(k,658) * lu(k,1156) - lu(k,1175) = lu(k,1175) - lu(k,659) * lu(k,1156) - lu(k,1176) = lu(k,1176) - lu(k,660) * lu(k,1156) - lu(k,1201) = lu(k,1201) - lu(k,650) * lu(k,1200) - lu(k,1202) = lu(k,1202) - lu(k,651) * lu(k,1200) - lu(k,1204) = lu(k,1204) - lu(k,652) * lu(k,1200) - lu(k,1206) = lu(k,1206) - lu(k,653) * lu(k,1200) - lu(k,1210) = lu(k,1210) - lu(k,654) * lu(k,1200) - lu(k,1211) = lu(k,1211) - lu(k,655) * lu(k,1200) - lu(k,1214) = lu(k,1214) - lu(k,656) * lu(k,1200) - lu(k,1216) = lu(k,1216) - lu(k,657) * lu(k,1200) - lu(k,1217) = lu(k,1217) - lu(k,658) * lu(k,1200) - lu(k,1219) = lu(k,1219) - lu(k,659) * lu(k,1200) - lu(k,1220) = lu(k,1220) - lu(k,660) * lu(k,1200) - lu(k,1268) = lu(k,1268) - lu(k,650) * lu(k,1267) - lu(k,1269) = lu(k,1269) - lu(k,651) * lu(k,1267) - lu(k,1271) = lu(k,1271) - lu(k,652) * lu(k,1267) - lu(k,1273) = lu(k,1273) - lu(k,653) * lu(k,1267) - lu(k,1277) = lu(k,1277) - lu(k,654) * lu(k,1267) - lu(k,1278) = lu(k,1278) - lu(k,655) * lu(k,1267) - lu(k,1281) = lu(k,1281) - lu(k,656) * lu(k,1267) - lu(k,1283) = lu(k,1283) - lu(k,657) * lu(k,1267) - lu(k,1284) = lu(k,1284) - lu(k,658) * lu(k,1267) - lu(k,1286) = lu(k,1286) - lu(k,659) * lu(k,1267) - lu(k,1287) = lu(k,1287) - lu(k,660) * lu(k,1267) - lu(k,668) = 1._r8 / lu(k,668) - lu(k,669) = lu(k,669) * lu(k,668) - lu(k,670) = lu(k,670) * lu(k,668) - lu(k,671) = lu(k,671) * lu(k,668) - lu(k,672) = lu(k,672) * lu(k,668) - lu(k,673) = lu(k,673) * lu(k,668) - lu(k,674) = lu(k,674) * lu(k,668) - lu(k,675) = lu(k,675) * lu(k,668) - lu(k,676) = lu(k,676) * lu(k,668) - lu(k,677) = lu(k,677) * lu(k,668) - lu(k,678) = lu(k,678) * lu(k,668) - lu(k,679) = lu(k,679) * lu(k,668) - lu(k,695) = lu(k,695) - lu(k,669) * lu(k,694) - lu(k,697) = lu(k,697) - lu(k,670) * lu(k,694) - lu(k,698) = lu(k,698) - lu(k,671) * lu(k,694) - lu(k,699) = lu(k,699) - lu(k,672) * lu(k,694) - lu(k,700) = lu(k,700) - lu(k,673) * lu(k,694) - lu(k,701) = lu(k,701) - lu(k,674) * lu(k,694) - lu(k,702) = lu(k,702) - lu(k,675) * lu(k,694) - lu(k,703) = lu(k,703) - lu(k,676) * lu(k,694) - lu(k,704) = lu(k,704) - lu(k,677) * lu(k,694) - lu(k,705) = lu(k,705) - lu(k,678) * lu(k,694) - lu(k,706) = lu(k,706) - lu(k,679) * lu(k,694) - lu(k,714) = lu(k,714) - lu(k,669) * lu(k,713) - lu(k,716) = lu(k,716) - lu(k,670) * lu(k,713) - lu(k,718) = lu(k,718) - lu(k,671) * lu(k,713) - lu(k,721) = lu(k,721) - lu(k,672) * lu(k,713) - lu(k,722) = lu(k,722) - lu(k,673) * lu(k,713) - lu(k,723) = lu(k,723) - lu(k,674) * lu(k,713) - lu(k,724) = lu(k,724) - lu(k,675) * lu(k,713) - lu(k,726) = lu(k,726) - lu(k,676) * lu(k,713) - lu(k,727) = lu(k,727) - lu(k,677) * lu(k,713) - lu(k,728) = lu(k,728) - lu(k,678) * lu(k,713) - lu(k,729) = lu(k,729) - lu(k,679) * lu(k,713) - lu(k,751) = lu(k,751) - lu(k,669) * lu(k,750) - lu(k,753) = lu(k,753) - lu(k,670) * lu(k,750) - lu(k,755) = lu(k,755) - lu(k,671) * lu(k,750) - lu(k,758) = lu(k,758) - lu(k,672) * lu(k,750) - lu(k,759) = lu(k,759) - lu(k,673) * lu(k,750) - lu(k,760) = lu(k,760) - lu(k,674) * lu(k,750) - lu(k,761) = lu(k,761) - lu(k,675) * lu(k,750) - lu(k,763) = lu(k,763) - lu(k,676) * lu(k,750) - lu(k,764) = lu(k,764) - lu(k,677) * lu(k,750) - lu(k,766) = lu(k,766) - lu(k,678) * lu(k,750) - lu(k,767) = lu(k,767) - lu(k,679) * lu(k,750) - lu(k,934) = lu(k,934) - lu(k,669) * lu(k,933) - lu(k,936) = lu(k,936) - lu(k,670) * lu(k,933) - lu(k,938) = lu(k,938) - lu(k,671) * lu(k,933) - lu(k,942) = lu(k,942) - lu(k,672) * lu(k,933) - lu(k,943) = lu(k,943) - lu(k,673) * lu(k,933) - lu(k,945) = lu(k,945) - lu(k,674) * lu(k,933) - lu(k,946) = lu(k,946) - lu(k,675) * lu(k,933) - lu(k,948) = lu(k,948) - lu(k,676) * lu(k,933) - lu(k,949) = lu(k,949) - lu(k,677) * lu(k,933) - lu(k,951) = lu(k,951) - lu(k,678) * lu(k,933) - lu(k,952) = lu(k,952) - lu(k,679) * lu(k,933) - lu(k,1000) = lu(k,1000) - lu(k,669) * lu(k,999) - lu(k,1002) = lu(k,1002) - lu(k,670) * lu(k,999) - lu(k,1004) = lu(k,1004) - lu(k,671) * lu(k,999) - lu(k,1008) = lu(k,1008) - lu(k,672) * lu(k,999) - lu(k,1009) = lu(k,1009) - lu(k,673) * lu(k,999) - lu(k,1011) = lu(k,1011) - lu(k,674) * lu(k,999) - lu(k,1012) = lu(k,1012) - lu(k,675) * lu(k,999) - lu(k,1014) = lu(k,1014) - lu(k,676) * lu(k,999) - lu(k,1015) = lu(k,1015) - lu(k,677) * lu(k,999) - lu(k,1017) = lu(k,1017) - lu(k,678) * lu(k,999) - lu(k,1018) = lu(k,1018) - lu(k,679) * lu(k,999) - lu(k,1036) = lu(k,1036) - lu(k,669) * lu(k,1035) - lu(k,1038) = lu(k,1038) - lu(k,670) * lu(k,1035) - lu(k,1040) = lu(k,1040) - lu(k,671) * lu(k,1035) - lu(k,1044) = lu(k,1044) - lu(k,672) * lu(k,1035) - lu(k,1045) = lu(k,1045) - lu(k,673) * lu(k,1035) - lu(k,1047) = lu(k,1047) - lu(k,674) * lu(k,1035) - lu(k,1048) = lu(k,1048) - lu(k,675) * lu(k,1035) - lu(k,1050) = lu(k,1050) - lu(k,676) * lu(k,1035) - lu(k,1051) = lu(k,1051) - lu(k,677) * lu(k,1035) - lu(k,1053) = lu(k,1053) - lu(k,678) * lu(k,1035) - lu(k,1054) = lu(k,1054) - lu(k,679) * lu(k,1035) - lu(k,1158) = lu(k,1158) - lu(k,669) * lu(k,1157) - lu(k,1160) = lu(k,1160) - lu(k,670) * lu(k,1157) - lu(k,1162) = lu(k,1162) - lu(k,671) * lu(k,1157) - lu(k,1166) = lu(k,1166) - lu(k,672) * lu(k,1157) - lu(k,1167) = lu(k,1167) - lu(k,673) * lu(k,1157) - lu(k,1169) = lu(k,1169) - lu(k,674) * lu(k,1157) - lu(k,1170) = lu(k,1170) - lu(k,675) * lu(k,1157) - lu(k,1172) = lu(k,1172) - lu(k,676) * lu(k,1157) - lu(k,1173) = lu(k,1173) - lu(k,677) * lu(k,1157) - lu(k,1175) = lu(k,1175) - lu(k,678) * lu(k,1157) - lu(k,1176) = lu(k,1176) - lu(k,679) * lu(k,1157) - lu(k,1202) = lu(k,1202) - lu(k,669) * lu(k,1201) - lu(k,1204) = lu(k,1204) - lu(k,670) * lu(k,1201) - lu(k,1206) = lu(k,1206) - lu(k,671) * lu(k,1201) - lu(k,1210) = lu(k,1210) - lu(k,672) * lu(k,1201) - lu(k,1211) = lu(k,1211) - lu(k,673) * lu(k,1201) - lu(k,1213) = lu(k,1213) - lu(k,674) * lu(k,1201) - lu(k,1214) = lu(k,1214) - lu(k,675) * lu(k,1201) - lu(k,1216) = lu(k,1216) - lu(k,676) * lu(k,1201) - lu(k,1217) = lu(k,1217) - lu(k,677) * lu(k,1201) - lu(k,1219) = lu(k,1219) - lu(k,678) * lu(k,1201) - lu(k,1220) = lu(k,1220) - lu(k,679) * lu(k,1201) - lu(k,1269) = lu(k,1269) - lu(k,669) * lu(k,1268) - lu(k,1271) = lu(k,1271) - lu(k,670) * lu(k,1268) - lu(k,1273) = lu(k,1273) - lu(k,671) * lu(k,1268) - lu(k,1277) = lu(k,1277) - lu(k,672) * lu(k,1268) - lu(k,1278) = lu(k,1278) - lu(k,673) * lu(k,1268) - lu(k,1280) = lu(k,1280) - lu(k,674) * lu(k,1268) - lu(k,1281) = lu(k,1281) - lu(k,675) * lu(k,1268) - lu(k,1283) = lu(k,1283) - lu(k,676) * lu(k,1268) - lu(k,1284) = lu(k,1284) - lu(k,677) * lu(k,1268) - lu(k,1286) = lu(k,1286) - lu(k,678) * lu(k,1268) - lu(k,1287) = lu(k,1287) - lu(k,679) * lu(k,1268) - lu(k,695) = 1._r8 / lu(k,695) - lu(k,696) = lu(k,696) * lu(k,695) - lu(k,697) = lu(k,697) * lu(k,695) - lu(k,698) = lu(k,698) * lu(k,695) - lu(k,699) = lu(k,699) * lu(k,695) - lu(k,700) = lu(k,700) * lu(k,695) - lu(k,701) = lu(k,701) * lu(k,695) - lu(k,702) = lu(k,702) * lu(k,695) - lu(k,703) = lu(k,703) * lu(k,695) - lu(k,704) = lu(k,704) * lu(k,695) - lu(k,705) = lu(k,705) * lu(k,695) - lu(k,706) = lu(k,706) * lu(k,695) - lu(k,715) = lu(k,715) - lu(k,696) * lu(k,714) - lu(k,716) = lu(k,716) - lu(k,697) * lu(k,714) - lu(k,718) = lu(k,718) - lu(k,698) * lu(k,714) - lu(k,721) = lu(k,721) - lu(k,699) * lu(k,714) - lu(k,722) = lu(k,722) - lu(k,700) * lu(k,714) - lu(k,723) = lu(k,723) - lu(k,701) * lu(k,714) - lu(k,724) = lu(k,724) - lu(k,702) * lu(k,714) - lu(k,726) = lu(k,726) - lu(k,703) * lu(k,714) - lu(k,727) = lu(k,727) - lu(k,704) * lu(k,714) - lu(k,728) = lu(k,728) - lu(k,705) * lu(k,714) - lu(k,729) = lu(k,729) - lu(k,706) * lu(k,714) - lu(k,752) = lu(k,752) - lu(k,696) * lu(k,751) - lu(k,753) = lu(k,753) - lu(k,697) * lu(k,751) - lu(k,755) = lu(k,755) - lu(k,698) * lu(k,751) - lu(k,758) = lu(k,758) - lu(k,699) * lu(k,751) - lu(k,759) = lu(k,759) - lu(k,700) * lu(k,751) - lu(k,760) = lu(k,760) - lu(k,701) * lu(k,751) - lu(k,761) = lu(k,761) - lu(k,702) * lu(k,751) - lu(k,763) = lu(k,763) - lu(k,703) * lu(k,751) - lu(k,764) = lu(k,764) - lu(k,704) * lu(k,751) - lu(k,766) = lu(k,766) - lu(k,705) * lu(k,751) - lu(k,767) = lu(k,767) - lu(k,706) * lu(k,751) - lu(k,850) = - lu(k,696) * lu(k,849) - lu(k,851) = lu(k,851) - lu(k,697) * lu(k,849) - lu(k,853) = lu(k,853) - lu(k,698) * lu(k,849) - lu(k,857) = lu(k,857) - lu(k,699) * lu(k,849) - lu(k,858) = lu(k,858) - lu(k,700) * lu(k,849) - lu(k,860) = lu(k,860) - lu(k,701) * lu(k,849) - lu(k,861) = lu(k,861) - lu(k,702) * lu(k,849) - lu(k,863) = lu(k,863) - lu(k,703) * lu(k,849) - lu(k,864) = lu(k,864) - lu(k,704) * lu(k,849) - lu(k,866) = lu(k,866) - lu(k,705) * lu(k,849) - lu(k,867) = lu(k,867) - lu(k,706) * lu(k,849) - lu(k,935) = lu(k,935) - lu(k,696) * lu(k,934) - lu(k,936) = lu(k,936) - lu(k,697) * lu(k,934) - lu(k,938) = lu(k,938) - lu(k,698) * lu(k,934) - lu(k,942) = lu(k,942) - lu(k,699) * lu(k,934) - lu(k,943) = lu(k,943) - lu(k,700) * lu(k,934) - lu(k,945) = lu(k,945) - lu(k,701) * lu(k,934) - lu(k,946) = lu(k,946) - lu(k,702) * lu(k,934) - lu(k,948) = lu(k,948) - lu(k,703) * lu(k,934) - lu(k,949) = lu(k,949) - lu(k,704) * lu(k,934) - lu(k,951) = lu(k,951) - lu(k,705) * lu(k,934) - lu(k,952) = lu(k,952) - lu(k,706) * lu(k,934) - lu(k,1001) = lu(k,1001) - lu(k,696) * lu(k,1000) - lu(k,1002) = lu(k,1002) - lu(k,697) * lu(k,1000) - lu(k,1004) = lu(k,1004) - lu(k,698) * lu(k,1000) - lu(k,1008) = lu(k,1008) - lu(k,699) * lu(k,1000) - lu(k,1009) = lu(k,1009) - lu(k,700) * lu(k,1000) - lu(k,1011) = lu(k,1011) - lu(k,701) * lu(k,1000) - lu(k,1012) = lu(k,1012) - lu(k,702) * lu(k,1000) - lu(k,1014) = lu(k,1014) - lu(k,703) * lu(k,1000) - lu(k,1015) = lu(k,1015) - lu(k,704) * lu(k,1000) - lu(k,1017) = lu(k,1017) - lu(k,705) * lu(k,1000) - lu(k,1018) = lu(k,1018) - lu(k,706) * lu(k,1000) - lu(k,1037) = - lu(k,696) * lu(k,1036) - lu(k,1038) = lu(k,1038) - lu(k,697) * lu(k,1036) - lu(k,1040) = lu(k,1040) - lu(k,698) * lu(k,1036) - lu(k,1044) = lu(k,1044) - lu(k,699) * lu(k,1036) - lu(k,1045) = lu(k,1045) - lu(k,700) * lu(k,1036) - lu(k,1047) = lu(k,1047) - lu(k,701) * lu(k,1036) - lu(k,1048) = lu(k,1048) - lu(k,702) * lu(k,1036) - lu(k,1050) = lu(k,1050) - lu(k,703) * lu(k,1036) - lu(k,1051) = lu(k,1051) - lu(k,704) * lu(k,1036) - lu(k,1053) = lu(k,1053) - lu(k,705) * lu(k,1036) - lu(k,1054) = lu(k,1054) - lu(k,706) * lu(k,1036) - lu(k,1159) = lu(k,1159) - lu(k,696) * lu(k,1158) - lu(k,1160) = lu(k,1160) - lu(k,697) * lu(k,1158) - lu(k,1162) = lu(k,1162) - lu(k,698) * lu(k,1158) - lu(k,1166) = lu(k,1166) - lu(k,699) * lu(k,1158) - lu(k,1167) = lu(k,1167) - lu(k,700) * lu(k,1158) - lu(k,1169) = lu(k,1169) - lu(k,701) * lu(k,1158) - lu(k,1170) = lu(k,1170) - lu(k,702) * lu(k,1158) - lu(k,1172) = lu(k,1172) - lu(k,703) * lu(k,1158) - lu(k,1173) = lu(k,1173) - lu(k,704) * lu(k,1158) - lu(k,1175) = lu(k,1175) - lu(k,705) * lu(k,1158) - lu(k,1176) = lu(k,1176) - lu(k,706) * lu(k,1158) - lu(k,1203) = lu(k,1203) - lu(k,696) * lu(k,1202) - lu(k,1204) = lu(k,1204) - lu(k,697) * lu(k,1202) - lu(k,1206) = lu(k,1206) - lu(k,698) * lu(k,1202) - lu(k,1210) = lu(k,1210) - lu(k,699) * lu(k,1202) - lu(k,1211) = lu(k,1211) - lu(k,700) * lu(k,1202) - lu(k,1213) = lu(k,1213) - lu(k,701) * lu(k,1202) - lu(k,1214) = lu(k,1214) - lu(k,702) * lu(k,1202) - lu(k,1216) = lu(k,1216) - lu(k,703) * lu(k,1202) - lu(k,1217) = lu(k,1217) - lu(k,704) * lu(k,1202) - lu(k,1219) = lu(k,1219) - lu(k,705) * lu(k,1202) - lu(k,1220) = lu(k,1220) - lu(k,706) * lu(k,1202) - lu(k,1270) = lu(k,1270) - lu(k,696) * lu(k,1269) - lu(k,1271) = lu(k,1271) - lu(k,697) * lu(k,1269) - lu(k,1273) = lu(k,1273) - lu(k,698) * lu(k,1269) - lu(k,1277) = lu(k,1277) - lu(k,699) * lu(k,1269) - lu(k,1278) = lu(k,1278) - lu(k,700) * lu(k,1269) - lu(k,1280) = lu(k,1280) - lu(k,701) * lu(k,1269) - lu(k,1281) = lu(k,1281) - lu(k,702) * lu(k,1269) - lu(k,1283) = lu(k,1283) - lu(k,703) * lu(k,1269) - lu(k,1284) = lu(k,1284) - lu(k,704) * lu(k,1269) - lu(k,1286) = lu(k,1286) - lu(k,705) * lu(k,1269) - lu(k,1287) = lu(k,1287) - lu(k,706) * lu(k,1269) - end do - end subroutine lu_fac14 - subroutine lu_fac15( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,715) = 1._r8 / lu(k,715) - lu(k,716) = lu(k,716) * lu(k,715) - lu(k,717) = lu(k,717) * lu(k,715) - lu(k,718) = lu(k,718) * lu(k,715) - lu(k,719) = lu(k,719) * lu(k,715) - lu(k,720) = lu(k,720) * lu(k,715) - lu(k,721) = lu(k,721) * lu(k,715) - lu(k,722) = lu(k,722) * lu(k,715) - lu(k,723) = lu(k,723) * lu(k,715) - lu(k,724) = lu(k,724) * lu(k,715) - lu(k,725) = lu(k,725) * lu(k,715) - lu(k,726) = lu(k,726) * lu(k,715) - lu(k,727) = lu(k,727) * lu(k,715) - lu(k,728) = lu(k,728) * lu(k,715) - lu(k,729) = lu(k,729) * lu(k,715) - lu(k,753) = lu(k,753) - lu(k,716) * lu(k,752) - lu(k,754) = lu(k,754) - lu(k,717) * lu(k,752) - lu(k,755) = lu(k,755) - lu(k,718) * lu(k,752) - lu(k,756) = - lu(k,719) * lu(k,752) - lu(k,757) = lu(k,757) - lu(k,720) * lu(k,752) - lu(k,758) = lu(k,758) - lu(k,721) * lu(k,752) - lu(k,759) = lu(k,759) - lu(k,722) * lu(k,752) - lu(k,760) = lu(k,760) - lu(k,723) * lu(k,752) - lu(k,761) = lu(k,761) - lu(k,724) * lu(k,752) - lu(k,762) = - lu(k,725) * lu(k,752) - lu(k,763) = lu(k,763) - lu(k,726) * lu(k,752) - lu(k,764) = lu(k,764) - lu(k,727) * lu(k,752) - lu(k,766) = lu(k,766) - lu(k,728) * lu(k,752) - lu(k,767) = lu(k,767) - lu(k,729) * lu(k,752) - lu(k,851) = lu(k,851) - lu(k,716) * lu(k,850) - lu(k,852) = lu(k,852) - lu(k,717) * lu(k,850) - lu(k,853) = lu(k,853) - lu(k,718) * lu(k,850) - lu(k,855) = lu(k,855) - lu(k,719) * lu(k,850) - lu(k,856) = lu(k,856) - lu(k,720) * lu(k,850) - lu(k,857) = lu(k,857) - lu(k,721) * lu(k,850) - lu(k,858) = lu(k,858) - lu(k,722) * lu(k,850) - lu(k,860) = lu(k,860) - lu(k,723) * lu(k,850) - lu(k,861) = lu(k,861) - lu(k,724) * lu(k,850) - lu(k,862) = lu(k,862) - lu(k,725) * lu(k,850) - lu(k,863) = lu(k,863) - lu(k,726) * lu(k,850) - lu(k,864) = lu(k,864) - lu(k,727) * lu(k,850) - lu(k,866) = lu(k,866) - lu(k,728) * lu(k,850) - lu(k,867) = lu(k,867) - lu(k,729) * lu(k,850) - lu(k,936) = lu(k,936) - lu(k,716) * lu(k,935) - lu(k,937) = lu(k,937) - lu(k,717) * lu(k,935) - lu(k,938) = lu(k,938) - lu(k,718) * lu(k,935) - lu(k,940) = lu(k,940) - lu(k,719) * lu(k,935) - lu(k,941) = lu(k,941) - lu(k,720) * lu(k,935) - lu(k,942) = lu(k,942) - lu(k,721) * lu(k,935) - lu(k,943) = lu(k,943) - lu(k,722) * lu(k,935) - lu(k,945) = lu(k,945) - lu(k,723) * lu(k,935) - lu(k,946) = lu(k,946) - lu(k,724) * lu(k,935) - lu(k,947) = lu(k,947) - lu(k,725) * lu(k,935) - lu(k,948) = lu(k,948) - lu(k,726) * lu(k,935) - lu(k,949) = lu(k,949) - lu(k,727) * lu(k,935) - lu(k,951) = lu(k,951) - lu(k,728) * lu(k,935) - lu(k,952) = lu(k,952) - lu(k,729) * lu(k,935) - lu(k,1002) = lu(k,1002) - lu(k,716) * lu(k,1001) - lu(k,1003) = lu(k,1003) - lu(k,717) * lu(k,1001) - lu(k,1004) = lu(k,1004) - lu(k,718) * lu(k,1001) - lu(k,1006) = lu(k,1006) - lu(k,719) * lu(k,1001) - lu(k,1007) = lu(k,1007) - lu(k,720) * lu(k,1001) - lu(k,1008) = lu(k,1008) - lu(k,721) * lu(k,1001) - lu(k,1009) = lu(k,1009) - lu(k,722) * lu(k,1001) - lu(k,1011) = lu(k,1011) - lu(k,723) * lu(k,1001) - lu(k,1012) = lu(k,1012) - lu(k,724) * lu(k,1001) - lu(k,1013) = lu(k,1013) - lu(k,725) * lu(k,1001) - lu(k,1014) = lu(k,1014) - lu(k,726) * lu(k,1001) - lu(k,1015) = lu(k,1015) - lu(k,727) * lu(k,1001) - lu(k,1017) = lu(k,1017) - lu(k,728) * lu(k,1001) - lu(k,1018) = lu(k,1018) - lu(k,729) * lu(k,1001) - lu(k,1038) = lu(k,1038) - lu(k,716) * lu(k,1037) - lu(k,1039) = lu(k,1039) - lu(k,717) * lu(k,1037) - lu(k,1040) = lu(k,1040) - lu(k,718) * lu(k,1037) - lu(k,1042) = lu(k,1042) - lu(k,719) * lu(k,1037) - lu(k,1043) = lu(k,1043) - lu(k,720) * lu(k,1037) - lu(k,1044) = lu(k,1044) - lu(k,721) * lu(k,1037) - lu(k,1045) = lu(k,1045) - lu(k,722) * lu(k,1037) - lu(k,1047) = lu(k,1047) - lu(k,723) * lu(k,1037) - lu(k,1048) = lu(k,1048) - lu(k,724) * lu(k,1037) - lu(k,1049) = lu(k,1049) - lu(k,725) * lu(k,1037) - lu(k,1050) = lu(k,1050) - lu(k,726) * lu(k,1037) - lu(k,1051) = lu(k,1051) - lu(k,727) * lu(k,1037) - lu(k,1053) = lu(k,1053) - lu(k,728) * lu(k,1037) - lu(k,1054) = lu(k,1054) - lu(k,729) * lu(k,1037) - lu(k,1160) = lu(k,1160) - lu(k,716) * lu(k,1159) - lu(k,1161) = lu(k,1161) - lu(k,717) * lu(k,1159) - lu(k,1162) = lu(k,1162) - lu(k,718) * lu(k,1159) - lu(k,1164) = lu(k,1164) - lu(k,719) * lu(k,1159) - lu(k,1165) = lu(k,1165) - lu(k,720) * lu(k,1159) - lu(k,1166) = lu(k,1166) - lu(k,721) * lu(k,1159) - lu(k,1167) = lu(k,1167) - lu(k,722) * lu(k,1159) - lu(k,1169) = lu(k,1169) - lu(k,723) * lu(k,1159) - lu(k,1170) = lu(k,1170) - lu(k,724) * lu(k,1159) - lu(k,1171) = lu(k,1171) - lu(k,725) * lu(k,1159) - lu(k,1172) = lu(k,1172) - lu(k,726) * lu(k,1159) - lu(k,1173) = lu(k,1173) - lu(k,727) * lu(k,1159) - lu(k,1175) = lu(k,1175) - lu(k,728) * lu(k,1159) - lu(k,1176) = lu(k,1176) - lu(k,729) * lu(k,1159) - lu(k,1204) = lu(k,1204) - lu(k,716) * lu(k,1203) - lu(k,1205) = lu(k,1205) - lu(k,717) * lu(k,1203) - lu(k,1206) = lu(k,1206) - lu(k,718) * lu(k,1203) - lu(k,1208) = lu(k,1208) - lu(k,719) * lu(k,1203) - lu(k,1209) = lu(k,1209) - lu(k,720) * lu(k,1203) - lu(k,1210) = lu(k,1210) - lu(k,721) * lu(k,1203) - lu(k,1211) = lu(k,1211) - lu(k,722) * lu(k,1203) - lu(k,1213) = lu(k,1213) - lu(k,723) * lu(k,1203) - lu(k,1214) = lu(k,1214) - lu(k,724) * lu(k,1203) - lu(k,1215) = lu(k,1215) - lu(k,725) * lu(k,1203) - lu(k,1216) = lu(k,1216) - lu(k,726) * lu(k,1203) - lu(k,1217) = lu(k,1217) - lu(k,727) * lu(k,1203) - lu(k,1219) = lu(k,1219) - lu(k,728) * lu(k,1203) - lu(k,1220) = lu(k,1220) - lu(k,729) * lu(k,1203) - lu(k,1271) = lu(k,1271) - lu(k,716) * lu(k,1270) - lu(k,1272) = lu(k,1272) - lu(k,717) * lu(k,1270) - lu(k,1273) = lu(k,1273) - lu(k,718) * lu(k,1270) - lu(k,1275) = - lu(k,719) * lu(k,1270) - lu(k,1276) = lu(k,1276) - lu(k,720) * lu(k,1270) - lu(k,1277) = lu(k,1277) - lu(k,721) * lu(k,1270) - lu(k,1278) = lu(k,1278) - lu(k,722) * lu(k,1270) - lu(k,1280) = lu(k,1280) - lu(k,723) * lu(k,1270) - lu(k,1281) = lu(k,1281) - lu(k,724) * lu(k,1270) - lu(k,1282) = lu(k,1282) - lu(k,725) * lu(k,1270) - lu(k,1283) = lu(k,1283) - lu(k,726) * lu(k,1270) - lu(k,1284) = lu(k,1284) - lu(k,727) * lu(k,1270) - lu(k,1286) = lu(k,1286) - lu(k,728) * lu(k,1270) - lu(k,1287) = lu(k,1287) - lu(k,729) * lu(k,1270) - lu(k,753) = 1._r8 / lu(k,753) - lu(k,754) = lu(k,754) * lu(k,753) - lu(k,755) = lu(k,755) * lu(k,753) - lu(k,756) = lu(k,756) * lu(k,753) - lu(k,757) = lu(k,757) * lu(k,753) - lu(k,758) = lu(k,758) * lu(k,753) - lu(k,759) = lu(k,759) * lu(k,753) - lu(k,760) = lu(k,760) * lu(k,753) - lu(k,761) = lu(k,761) * lu(k,753) - lu(k,762) = lu(k,762) * lu(k,753) - lu(k,763) = lu(k,763) * lu(k,753) - lu(k,764) = lu(k,764) * lu(k,753) - lu(k,765) = lu(k,765) * lu(k,753) - lu(k,766) = lu(k,766) * lu(k,753) - lu(k,767) = lu(k,767) * lu(k,753) - lu(k,852) = lu(k,852) - lu(k,754) * lu(k,851) - lu(k,853) = lu(k,853) - lu(k,755) * lu(k,851) - lu(k,855) = lu(k,855) - lu(k,756) * lu(k,851) - lu(k,856) = lu(k,856) - lu(k,757) * lu(k,851) - lu(k,857) = lu(k,857) - lu(k,758) * lu(k,851) - lu(k,858) = lu(k,858) - lu(k,759) * lu(k,851) - lu(k,860) = lu(k,860) - lu(k,760) * lu(k,851) - lu(k,861) = lu(k,861) - lu(k,761) * lu(k,851) - lu(k,862) = lu(k,862) - lu(k,762) * lu(k,851) - lu(k,863) = lu(k,863) - lu(k,763) * lu(k,851) - lu(k,864) = lu(k,864) - lu(k,764) * lu(k,851) - lu(k,865) = lu(k,865) - lu(k,765) * lu(k,851) - lu(k,866) = lu(k,866) - lu(k,766) * lu(k,851) - lu(k,867) = lu(k,867) - lu(k,767) * lu(k,851) - lu(k,937) = lu(k,937) - lu(k,754) * lu(k,936) - lu(k,938) = lu(k,938) - lu(k,755) * lu(k,936) - lu(k,940) = lu(k,940) - lu(k,756) * lu(k,936) - lu(k,941) = lu(k,941) - lu(k,757) * lu(k,936) - lu(k,942) = lu(k,942) - lu(k,758) * lu(k,936) - lu(k,943) = lu(k,943) - lu(k,759) * lu(k,936) - lu(k,945) = lu(k,945) - lu(k,760) * lu(k,936) - lu(k,946) = lu(k,946) - lu(k,761) * lu(k,936) - lu(k,947) = lu(k,947) - lu(k,762) * lu(k,936) - lu(k,948) = lu(k,948) - lu(k,763) * lu(k,936) - lu(k,949) = lu(k,949) - lu(k,764) * lu(k,936) - lu(k,950) = lu(k,950) - lu(k,765) * lu(k,936) - lu(k,951) = lu(k,951) - lu(k,766) * lu(k,936) - lu(k,952) = lu(k,952) - lu(k,767) * lu(k,936) - lu(k,1003) = lu(k,1003) - lu(k,754) * lu(k,1002) - lu(k,1004) = lu(k,1004) - lu(k,755) * lu(k,1002) - lu(k,1006) = lu(k,1006) - lu(k,756) * lu(k,1002) - lu(k,1007) = lu(k,1007) - lu(k,757) * lu(k,1002) - lu(k,1008) = lu(k,1008) - lu(k,758) * lu(k,1002) - lu(k,1009) = lu(k,1009) - lu(k,759) * lu(k,1002) - lu(k,1011) = lu(k,1011) - lu(k,760) * lu(k,1002) - lu(k,1012) = lu(k,1012) - lu(k,761) * lu(k,1002) - lu(k,1013) = lu(k,1013) - lu(k,762) * lu(k,1002) - lu(k,1014) = lu(k,1014) - lu(k,763) * lu(k,1002) - lu(k,1015) = lu(k,1015) - lu(k,764) * lu(k,1002) - lu(k,1016) = lu(k,1016) - lu(k,765) * lu(k,1002) - lu(k,1017) = lu(k,1017) - lu(k,766) * lu(k,1002) - lu(k,1018) = lu(k,1018) - lu(k,767) * lu(k,1002) - lu(k,1039) = lu(k,1039) - lu(k,754) * lu(k,1038) - lu(k,1040) = lu(k,1040) - lu(k,755) * lu(k,1038) - lu(k,1042) = lu(k,1042) - lu(k,756) * lu(k,1038) - lu(k,1043) = lu(k,1043) - lu(k,757) * lu(k,1038) - lu(k,1044) = lu(k,1044) - lu(k,758) * lu(k,1038) - lu(k,1045) = lu(k,1045) - lu(k,759) * lu(k,1038) - lu(k,1047) = lu(k,1047) - lu(k,760) * lu(k,1038) - lu(k,1048) = lu(k,1048) - lu(k,761) * lu(k,1038) - lu(k,1049) = lu(k,1049) - lu(k,762) * lu(k,1038) - lu(k,1050) = lu(k,1050) - lu(k,763) * lu(k,1038) - lu(k,1051) = lu(k,1051) - lu(k,764) * lu(k,1038) - lu(k,1052) = lu(k,1052) - lu(k,765) * lu(k,1038) - lu(k,1053) = lu(k,1053) - lu(k,766) * lu(k,1038) - lu(k,1054) = lu(k,1054) - lu(k,767) * lu(k,1038) - lu(k,1076) = lu(k,1076) - lu(k,754) * lu(k,1075) - lu(k,1077) = lu(k,1077) - lu(k,755) * lu(k,1075) - lu(k,1079) = lu(k,1079) - lu(k,756) * lu(k,1075) - lu(k,1080) = lu(k,1080) - lu(k,757) * lu(k,1075) - lu(k,1081) = lu(k,1081) - lu(k,758) * lu(k,1075) - lu(k,1082) = lu(k,1082) - lu(k,759) * lu(k,1075) - lu(k,1084) = lu(k,1084) - lu(k,760) * lu(k,1075) - lu(k,1085) = - lu(k,761) * lu(k,1075) - lu(k,1086) = lu(k,1086) - lu(k,762) * lu(k,1075) - lu(k,1087) = lu(k,1087) - lu(k,763) * lu(k,1075) - lu(k,1088) = - lu(k,764) * lu(k,1075) - lu(k,1089) = lu(k,1089) - lu(k,765) * lu(k,1075) - lu(k,1090) = lu(k,1090) - lu(k,766) * lu(k,1075) - lu(k,1091) = lu(k,1091) - lu(k,767) * lu(k,1075) - lu(k,1161) = lu(k,1161) - lu(k,754) * lu(k,1160) - lu(k,1162) = lu(k,1162) - lu(k,755) * lu(k,1160) - lu(k,1164) = lu(k,1164) - lu(k,756) * lu(k,1160) - lu(k,1165) = lu(k,1165) - lu(k,757) * lu(k,1160) - lu(k,1166) = lu(k,1166) - lu(k,758) * lu(k,1160) - lu(k,1167) = lu(k,1167) - lu(k,759) * lu(k,1160) - lu(k,1169) = lu(k,1169) - lu(k,760) * lu(k,1160) - lu(k,1170) = lu(k,1170) - lu(k,761) * lu(k,1160) - lu(k,1171) = lu(k,1171) - lu(k,762) * lu(k,1160) - lu(k,1172) = lu(k,1172) - lu(k,763) * lu(k,1160) - lu(k,1173) = lu(k,1173) - lu(k,764) * lu(k,1160) - lu(k,1174) = lu(k,1174) - lu(k,765) * lu(k,1160) - lu(k,1175) = lu(k,1175) - lu(k,766) * lu(k,1160) - lu(k,1176) = lu(k,1176) - lu(k,767) * lu(k,1160) - lu(k,1205) = lu(k,1205) - lu(k,754) * lu(k,1204) - lu(k,1206) = lu(k,1206) - lu(k,755) * lu(k,1204) - lu(k,1208) = lu(k,1208) - lu(k,756) * lu(k,1204) - lu(k,1209) = lu(k,1209) - lu(k,757) * lu(k,1204) - lu(k,1210) = lu(k,1210) - lu(k,758) * lu(k,1204) - lu(k,1211) = lu(k,1211) - lu(k,759) * lu(k,1204) - lu(k,1213) = lu(k,1213) - lu(k,760) * lu(k,1204) - lu(k,1214) = lu(k,1214) - lu(k,761) * lu(k,1204) - lu(k,1215) = lu(k,1215) - lu(k,762) * lu(k,1204) - lu(k,1216) = lu(k,1216) - lu(k,763) * lu(k,1204) - lu(k,1217) = lu(k,1217) - lu(k,764) * lu(k,1204) - lu(k,1218) = lu(k,1218) - lu(k,765) * lu(k,1204) - lu(k,1219) = lu(k,1219) - lu(k,766) * lu(k,1204) - lu(k,1220) = lu(k,1220) - lu(k,767) * lu(k,1204) - lu(k,1230) = lu(k,1230) - lu(k,754) * lu(k,1229) - lu(k,1231) = lu(k,1231) - lu(k,755) * lu(k,1229) - lu(k,1233) = lu(k,1233) - lu(k,756) * lu(k,1229) - lu(k,1234) = lu(k,1234) - lu(k,757) * lu(k,1229) - lu(k,1235) = lu(k,1235) - lu(k,758) * lu(k,1229) - lu(k,1236) = lu(k,1236) - lu(k,759) * lu(k,1229) - lu(k,1238) = lu(k,1238) - lu(k,760) * lu(k,1229) - lu(k,1239) = lu(k,1239) - lu(k,761) * lu(k,1229) - lu(k,1240) = - lu(k,762) * lu(k,1229) - lu(k,1241) = lu(k,1241) - lu(k,763) * lu(k,1229) - lu(k,1242) = lu(k,1242) - lu(k,764) * lu(k,1229) - lu(k,1243) = lu(k,1243) - lu(k,765) * lu(k,1229) - lu(k,1244) = lu(k,1244) - lu(k,766) * lu(k,1229) - lu(k,1245) = lu(k,1245) - lu(k,767) * lu(k,1229) - lu(k,1272) = lu(k,1272) - lu(k,754) * lu(k,1271) - lu(k,1273) = lu(k,1273) - lu(k,755) * lu(k,1271) - lu(k,1275) = lu(k,1275) - lu(k,756) * lu(k,1271) - lu(k,1276) = lu(k,1276) - lu(k,757) * lu(k,1271) - lu(k,1277) = lu(k,1277) - lu(k,758) * lu(k,1271) - lu(k,1278) = lu(k,1278) - lu(k,759) * lu(k,1271) - lu(k,1280) = lu(k,1280) - lu(k,760) * lu(k,1271) - lu(k,1281) = lu(k,1281) - lu(k,761) * lu(k,1271) - lu(k,1282) = lu(k,1282) - lu(k,762) * lu(k,1271) - lu(k,1283) = lu(k,1283) - lu(k,763) * lu(k,1271) - lu(k,1284) = lu(k,1284) - lu(k,764) * lu(k,1271) - lu(k,1285) = lu(k,1285) - lu(k,765) * lu(k,1271) - lu(k,1286) = lu(k,1286) - lu(k,766) * lu(k,1271) - lu(k,1287) = lu(k,1287) - lu(k,767) * lu(k,1271) - lu(k,769) = 1._r8 / lu(k,769) - lu(k,770) = lu(k,770) * lu(k,769) - lu(k,771) = lu(k,771) * lu(k,769) - lu(k,772) = lu(k,772) * lu(k,769) - lu(k,773) = lu(k,773) * lu(k,769) - lu(k,774) = lu(k,774) * lu(k,769) - lu(k,775) = lu(k,775) * lu(k,769) - lu(k,776) = lu(k,776) * lu(k,769) - lu(k,777) = lu(k,777) * lu(k,769) - lu(k,785) = lu(k,785) - lu(k,770) * lu(k,782) - lu(k,786) = lu(k,786) - lu(k,771) * lu(k,782) - lu(k,787) = lu(k,787) - lu(k,772) * lu(k,782) - lu(k,788) = lu(k,788) - lu(k,773) * lu(k,782) - lu(k,790) = - lu(k,774) * lu(k,782) - lu(k,792) = lu(k,792) - lu(k,775) * lu(k,782) - lu(k,793) = lu(k,793) - lu(k,776) * lu(k,782) - lu(k,795) = lu(k,795) - lu(k,777) * lu(k,782) - lu(k,801) = - lu(k,770) * lu(k,798) - lu(k,802) = - lu(k,771) * lu(k,798) - lu(k,803) = lu(k,803) - lu(k,772) * lu(k,798) - lu(k,804) = lu(k,804) - lu(k,773) * lu(k,798) - lu(k,806) = lu(k,806) - lu(k,774) * lu(k,798) - lu(k,808) = lu(k,808) - lu(k,775) * lu(k,798) - lu(k,809) = lu(k,809) - lu(k,776) * lu(k,798) - lu(k,811) = lu(k,811) - lu(k,777) * lu(k,798) - lu(k,820) = lu(k,820) - lu(k,770) * lu(k,818) - lu(k,821) = lu(k,821) - lu(k,771) * lu(k,818) - lu(k,822) = lu(k,822) - lu(k,772) * lu(k,818) - lu(k,823) = - lu(k,773) * lu(k,818) - lu(k,825) = - lu(k,774) * lu(k,818) - lu(k,827) = lu(k,827) - lu(k,775) * lu(k,818) - lu(k,828) = lu(k,828) - lu(k,776) * lu(k,818) - lu(k,831) = lu(k,831) - lu(k,777) * lu(k,818) - lu(k,855) = lu(k,855) - lu(k,770) * lu(k,852) - lu(k,856) = lu(k,856) - lu(k,771) * lu(k,852) - lu(k,857) = lu(k,857) - lu(k,772) * lu(k,852) - lu(k,858) = lu(k,858) - lu(k,773) * lu(k,852) - lu(k,860) = lu(k,860) - lu(k,774) * lu(k,852) - lu(k,862) = lu(k,862) - lu(k,775) * lu(k,852) - lu(k,863) = lu(k,863) - lu(k,776) * lu(k,852) - lu(k,867) = lu(k,867) - lu(k,777) * lu(k,852) - lu(k,884) = lu(k,884) - lu(k,770) * lu(k,881) - lu(k,885) = lu(k,885) - lu(k,771) * lu(k,881) - lu(k,886) = lu(k,886) - lu(k,772) * lu(k,881) - lu(k,887) = lu(k,887) - lu(k,773) * lu(k,881) - lu(k,889) = lu(k,889) - lu(k,774) * lu(k,881) - lu(k,891) = lu(k,891) - lu(k,775) * lu(k,881) - lu(k,892) = lu(k,892) - lu(k,776) * lu(k,881) - lu(k,896) = lu(k,896) - lu(k,777) * lu(k,881) - lu(k,940) = lu(k,940) - lu(k,770) * lu(k,937) - lu(k,941) = lu(k,941) - lu(k,771) * lu(k,937) - lu(k,942) = lu(k,942) - lu(k,772) * lu(k,937) - lu(k,943) = lu(k,943) - lu(k,773) * lu(k,937) - lu(k,945) = lu(k,945) - lu(k,774) * lu(k,937) - lu(k,947) = lu(k,947) - lu(k,775) * lu(k,937) - lu(k,948) = lu(k,948) - lu(k,776) * lu(k,937) - lu(k,952) = lu(k,952) - lu(k,777) * lu(k,937) - lu(k,962) = lu(k,962) - lu(k,770) * lu(k,960) - lu(k,963) = lu(k,963) - lu(k,771) * lu(k,960) - lu(k,964) = lu(k,964) - lu(k,772) * lu(k,960) - lu(k,965) = lu(k,965) - lu(k,773) * lu(k,960) - lu(k,967) = lu(k,967) - lu(k,774) * lu(k,960) - lu(k,969) = - lu(k,775) * lu(k,960) - lu(k,970) = lu(k,970) - lu(k,776) * lu(k,960) - lu(k,974) = lu(k,974) - lu(k,777) * lu(k,960) - lu(k,1006) = lu(k,1006) - lu(k,770) * lu(k,1003) - lu(k,1007) = lu(k,1007) - lu(k,771) * lu(k,1003) - lu(k,1008) = lu(k,1008) - lu(k,772) * lu(k,1003) - lu(k,1009) = lu(k,1009) - lu(k,773) * lu(k,1003) - lu(k,1011) = lu(k,1011) - lu(k,774) * lu(k,1003) - lu(k,1013) = lu(k,1013) - lu(k,775) * lu(k,1003) - lu(k,1014) = lu(k,1014) - lu(k,776) * lu(k,1003) - lu(k,1018) = lu(k,1018) - lu(k,777) * lu(k,1003) - lu(k,1042) = lu(k,1042) - lu(k,770) * lu(k,1039) - lu(k,1043) = lu(k,1043) - lu(k,771) * lu(k,1039) - lu(k,1044) = lu(k,1044) - lu(k,772) * lu(k,1039) - lu(k,1045) = lu(k,1045) - lu(k,773) * lu(k,1039) - lu(k,1047) = lu(k,1047) - lu(k,774) * lu(k,1039) - lu(k,1049) = lu(k,1049) - lu(k,775) * lu(k,1039) - lu(k,1050) = lu(k,1050) - lu(k,776) * lu(k,1039) - lu(k,1054) = lu(k,1054) - lu(k,777) * lu(k,1039) - lu(k,1079) = lu(k,1079) - lu(k,770) * lu(k,1076) - lu(k,1080) = lu(k,1080) - lu(k,771) * lu(k,1076) - lu(k,1081) = lu(k,1081) - lu(k,772) * lu(k,1076) - lu(k,1082) = lu(k,1082) - lu(k,773) * lu(k,1076) - lu(k,1084) = lu(k,1084) - lu(k,774) * lu(k,1076) - lu(k,1086) = lu(k,1086) - lu(k,775) * lu(k,1076) - lu(k,1087) = lu(k,1087) - lu(k,776) * lu(k,1076) - lu(k,1091) = lu(k,1091) - lu(k,777) * lu(k,1076) - lu(k,1164) = lu(k,1164) - lu(k,770) * lu(k,1161) - lu(k,1165) = lu(k,1165) - lu(k,771) * lu(k,1161) - lu(k,1166) = lu(k,1166) - lu(k,772) * lu(k,1161) - lu(k,1167) = lu(k,1167) - lu(k,773) * lu(k,1161) - lu(k,1169) = lu(k,1169) - lu(k,774) * lu(k,1161) - lu(k,1171) = lu(k,1171) - lu(k,775) * lu(k,1161) - lu(k,1172) = lu(k,1172) - lu(k,776) * lu(k,1161) - lu(k,1176) = lu(k,1176) - lu(k,777) * lu(k,1161) - lu(k,1208) = lu(k,1208) - lu(k,770) * lu(k,1205) - lu(k,1209) = lu(k,1209) - lu(k,771) * lu(k,1205) - lu(k,1210) = lu(k,1210) - lu(k,772) * lu(k,1205) - lu(k,1211) = lu(k,1211) - lu(k,773) * lu(k,1205) - lu(k,1213) = lu(k,1213) - lu(k,774) * lu(k,1205) - lu(k,1215) = lu(k,1215) - lu(k,775) * lu(k,1205) - lu(k,1216) = lu(k,1216) - lu(k,776) * lu(k,1205) - lu(k,1220) = lu(k,1220) - lu(k,777) * lu(k,1205) - lu(k,1233) = lu(k,1233) - lu(k,770) * lu(k,1230) - lu(k,1234) = lu(k,1234) - lu(k,771) * lu(k,1230) - lu(k,1235) = lu(k,1235) - lu(k,772) * lu(k,1230) - lu(k,1236) = lu(k,1236) - lu(k,773) * lu(k,1230) - lu(k,1238) = lu(k,1238) - lu(k,774) * lu(k,1230) - lu(k,1240) = lu(k,1240) - lu(k,775) * lu(k,1230) - lu(k,1241) = lu(k,1241) - lu(k,776) * lu(k,1230) - lu(k,1245) = lu(k,1245) - lu(k,777) * lu(k,1230) - lu(k,1275) = lu(k,1275) - lu(k,770) * lu(k,1272) - lu(k,1276) = lu(k,1276) - lu(k,771) * lu(k,1272) - lu(k,1277) = lu(k,1277) - lu(k,772) * lu(k,1272) - lu(k,1278) = lu(k,1278) - lu(k,773) * lu(k,1272) - lu(k,1280) = lu(k,1280) - lu(k,774) * lu(k,1272) - lu(k,1282) = lu(k,1282) - lu(k,775) * lu(k,1272) - lu(k,1283) = lu(k,1283) - lu(k,776) * lu(k,1272) - lu(k,1287) = lu(k,1287) - lu(k,777) * lu(k,1272) - lu(k,1295) = lu(k,1295) - lu(k,770) * lu(k,1293) - lu(k,1296) = lu(k,1296) - lu(k,771) * lu(k,1293) - lu(k,1297) = lu(k,1297) - lu(k,772) * lu(k,1293) - lu(k,1298) = lu(k,1298) - lu(k,773) * lu(k,1293) - lu(k,1300) = lu(k,1300) - lu(k,774) * lu(k,1293) - lu(k,1302) = lu(k,1302) - lu(k,775) * lu(k,1293) - lu(k,1303) = lu(k,1303) - lu(k,776) * lu(k,1293) - lu(k,1307) = lu(k,1307) - lu(k,777) * lu(k,1293) - end do - end subroutine lu_fac15 - subroutine lu_fac16( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,783) = 1._r8 / lu(k,783) - lu(k,784) = lu(k,784) * lu(k,783) - lu(k,785) = lu(k,785) * lu(k,783) - lu(k,786) = lu(k,786) * lu(k,783) - lu(k,787) = lu(k,787) * lu(k,783) - lu(k,788) = lu(k,788) * lu(k,783) - lu(k,789) = lu(k,789) * lu(k,783) - lu(k,790) = lu(k,790) * lu(k,783) - lu(k,791) = lu(k,791) * lu(k,783) - lu(k,792) = lu(k,792) * lu(k,783) - lu(k,793) = lu(k,793) * lu(k,783) - lu(k,794) = lu(k,794) * lu(k,783) - lu(k,795) = lu(k,795) * lu(k,783) - lu(k,800) = lu(k,800) - lu(k,784) * lu(k,799) - lu(k,801) = lu(k,801) - lu(k,785) * lu(k,799) - lu(k,802) = lu(k,802) - lu(k,786) * lu(k,799) - lu(k,803) = lu(k,803) - lu(k,787) * lu(k,799) - lu(k,804) = lu(k,804) - lu(k,788) * lu(k,799) - lu(k,805) = lu(k,805) - lu(k,789) * lu(k,799) - lu(k,806) = lu(k,806) - lu(k,790) * lu(k,799) - lu(k,807) = - lu(k,791) * lu(k,799) - lu(k,808) = lu(k,808) - lu(k,792) * lu(k,799) - lu(k,809) = lu(k,809) - lu(k,793) * lu(k,799) - lu(k,810) = - lu(k,794) * lu(k,799) - lu(k,811) = lu(k,811) - lu(k,795) * lu(k,799) - lu(k,854) = lu(k,854) - lu(k,784) * lu(k,853) - lu(k,855) = lu(k,855) - lu(k,785) * lu(k,853) - lu(k,856) = lu(k,856) - lu(k,786) * lu(k,853) - lu(k,857) = lu(k,857) - lu(k,787) * lu(k,853) - lu(k,858) = lu(k,858) - lu(k,788) * lu(k,853) - lu(k,859) = - lu(k,789) * lu(k,853) - lu(k,860) = lu(k,860) - lu(k,790) * lu(k,853) - lu(k,861) = lu(k,861) - lu(k,791) * lu(k,853) - lu(k,862) = lu(k,862) - lu(k,792) * lu(k,853) - lu(k,863) = lu(k,863) - lu(k,793) * lu(k,853) - lu(k,864) = lu(k,864) - lu(k,794) * lu(k,853) - lu(k,867) = lu(k,867) - lu(k,795) * lu(k,853) - lu(k,883) = lu(k,883) - lu(k,784) * lu(k,882) - lu(k,884) = lu(k,884) - lu(k,785) * lu(k,882) - lu(k,885) = lu(k,885) - lu(k,786) * lu(k,882) - lu(k,886) = lu(k,886) - lu(k,787) * lu(k,882) - lu(k,887) = lu(k,887) - lu(k,788) * lu(k,882) - lu(k,888) = lu(k,888) - lu(k,789) * lu(k,882) - lu(k,889) = lu(k,889) - lu(k,790) * lu(k,882) - lu(k,890) = lu(k,890) - lu(k,791) * lu(k,882) - lu(k,891) = lu(k,891) - lu(k,792) * lu(k,882) - lu(k,892) = lu(k,892) - lu(k,793) * lu(k,882) - lu(k,893) = lu(k,893) - lu(k,794) * lu(k,882) - lu(k,896) = lu(k,896) - lu(k,795) * lu(k,882) - lu(k,939) = lu(k,939) - lu(k,784) * lu(k,938) - lu(k,940) = lu(k,940) - lu(k,785) * lu(k,938) - lu(k,941) = lu(k,941) - lu(k,786) * lu(k,938) - lu(k,942) = lu(k,942) - lu(k,787) * lu(k,938) - lu(k,943) = lu(k,943) - lu(k,788) * lu(k,938) - lu(k,944) = lu(k,944) - lu(k,789) * lu(k,938) - lu(k,945) = lu(k,945) - lu(k,790) * lu(k,938) - lu(k,946) = lu(k,946) - lu(k,791) * lu(k,938) - lu(k,947) = lu(k,947) - lu(k,792) * lu(k,938) - lu(k,948) = lu(k,948) - lu(k,793) * lu(k,938) - lu(k,949) = lu(k,949) - lu(k,794) * lu(k,938) - lu(k,952) = lu(k,952) - lu(k,795) * lu(k,938) - lu(k,1005) = lu(k,1005) - lu(k,784) * lu(k,1004) - lu(k,1006) = lu(k,1006) - lu(k,785) * lu(k,1004) - lu(k,1007) = lu(k,1007) - lu(k,786) * lu(k,1004) - lu(k,1008) = lu(k,1008) - lu(k,787) * lu(k,1004) - lu(k,1009) = lu(k,1009) - lu(k,788) * lu(k,1004) - lu(k,1010) = lu(k,1010) - lu(k,789) * lu(k,1004) - lu(k,1011) = lu(k,1011) - lu(k,790) * lu(k,1004) - lu(k,1012) = lu(k,1012) - lu(k,791) * lu(k,1004) - lu(k,1013) = lu(k,1013) - lu(k,792) * lu(k,1004) - lu(k,1014) = lu(k,1014) - lu(k,793) * lu(k,1004) - lu(k,1015) = lu(k,1015) - lu(k,794) * lu(k,1004) - lu(k,1018) = lu(k,1018) - lu(k,795) * lu(k,1004) - lu(k,1041) = lu(k,1041) - lu(k,784) * lu(k,1040) - lu(k,1042) = lu(k,1042) - lu(k,785) * lu(k,1040) - lu(k,1043) = lu(k,1043) - lu(k,786) * lu(k,1040) - lu(k,1044) = lu(k,1044) - lu(k,787) * lu(k,1040) - lu(k,1045) = lu(k,1045) - lu(k,788) * lu(k,1040) - lu(k,1046) = lu(k,1046) - lu(k,789) * lu(k,1040) - lu(k,1047) = lu(k,1047) - lu(k,790) * lu(k,1040) - lu(k,1048) = lu(k,1048) - lu(k,791) * lu(k,1040) - lu(k,1049) = lu(k,1049) - lu(k,792) * lu(k,1040) - lu(k,1050) = lu(k,1050) - lu(k,793) * lu(k,1040) - lu(k,1051) = lu(k,1051) - lu(k,794) * lu(k,1040) - lu(k,1054) = lu(k,1054) - lu(k,795) * lu(k,1040) - lu(k,1078) = lu(k,1078) - lu(k,784) * lu(k,1077) - lu(k,1079) = lu(k,1079) - lu(k,785) * lu(k,1077) - lu(k,1080) = lu(k,1080) - lu(k,786) * lu(k,1077) - lu(k,1081) = lu(k,1081) - lu(k,787) * lu(k,1077) - lu(k,1082) = lu(k,1082) - lu(k,788) * lu(k,1077) - lu(k,1083) = lu(k,1083) - lu(k,789) * lu(k,1077) - lu(k,1084) = lu(k,1084) - lu(k,790) * lu(k,1077) - lu(k,1085) = lu(k,1085) - lu(k,791) * lu(k,1077) - lu(k,1086) = lu(k,1086) - lu(k,792) * lu(k,1077) - lu(k,1087) = lu(k,1087) - lu(k,793) * lu(k,1077) - lu(k,1088) = lu(k,1088) - lu(k,794) * lu(k,1077) - lu(k,1091) = lu(k,1091) - lu(k,795) * lu(k,1077) - lu(k,1163) = lu(k,1163) - lu(k,784) * lu(k,1162) - lu(k,1164) = lu(k,1164) - lu(k,785) * lu(k,1162) - lu(k,1165) = lu(k,1165) - lu(k,786) * lu(k,1162) - lu(k,1166) = lu(k,1166) - lu(k,787) * lu(k,1162) - lu(k,1167) = lu(k,1167) - lu(k,788) * lu(k,1162) - lu(k,1168) = lu(k,1168) - lu(k,789) * lu(k,1162) - lu(k,1169) = lu(k,1169) - lu(k,790) * lu(k,1162) - lu(k,1170) = lu(k,1170) - lu(k,791) * lu(k,1162) - lu(k,1171) = lu(k,1171) - lu(k,792) * lu(k,1162) - lu(k,1172) = lu(k,1172) - lu(k,793) * lu(k,1162) - lu(k,1173) = lu(k,1173) - lu(k,794) * lu(k,1162) - lu(k,1176) = lu(k,1176) - lu(k,795) * lu(k,1162) - lu(k,1207) = lu(k,1207) - lu(k,784) * lu(k,1206) - lu(k,1208) = lu(k,1208) - lu(k,785) * lu(k,1206) - lu(k,1209) = lu(k,1209) - lu(k,786) * lu(k,1206) - lu(k,1210) = lu(k,1210) - lu(k,787) * lu(k,1206) - lu(k,1211) = lu(k,1211) - lu(k,788) * lu(k,1206) - lu(k,1212) = lu(k,1212) - lu(k,789) * lu(k,1206) - lu(k,1213) = lu(k,1213) - lu(k,790) * lu(k,1206) - lu(k,1214) = lu(k,1214) - lu(k,791) * lu(k,1206) - lu(k,1215) = lu(k,1215) - lu(k,792) * lu(k,1206) - lu(k,1216) = lu(k,1216) - lu(k,793) * lu(k,1206) - lu(k,1217) = lu(k,1217) - lu(k,794) * lu(k,1206) - lu(k,1220) = lu(k,1220) - lu(k,795) * lu(k,1206) - lu(k,1232) = lu(k,1232) - lu(k,784) * lu(k,1231) - lu(k,1233) = lu(k,1233) - lu(k,785) * lu(k,1231) - lu(k,1234) = lu(k,1234) - lu(k,786) * lu(k,1231) - lu(k,1235) = lu(k,1235) - lu(k,787) * lu(k,1231) - lu(k,1236) = lu(k,1236) - lu(k,788) * lu(k,1231) - lu(k,1237) = lu(k,1237) - lu(k,789) * lu(k,1231) - lu(k,1238) = lu(k,1238) - lu(k,790) * lu(k,1231) - lu(k,1239) = lu(k,1239) - lu(k,791) * lu(k,1231) - lu(k,1240) = lu(k,1240) - lu(k,792) * lu(k,1231) - lu(k,1241) = lu(k,1241) - lu(k,793) * lu(k,1231) - lu(k,1242) = lu(k,1242) - lu(k,794) * lu(k,1231) - lu(k,1245) = lu(k,1245) - lu(k,795) * lu(k,1231) - lu(k,1274) = lu(k,1274) - lu(k,784) * lu(k,1273) - lu(k,1275) = lu(k,1275) - lu(k,785) * lu(k,1273) - lu(k,1276) = lu(k,1276) - lu(k,786) * lu(k,1273) - lu(k,1277) = lu(k,1277) - lu(k,787) * lu(k,1273) - lu(k,1278) = lu(k,1278) - lu(k,788) * lu(k,1273) - lu(k,1279) = lu(k,1279) - lu(k,789) * lu(k,1273) - lu(k,1280) = lu(k,1280) - lu(k,790) * lu(k,1273) - lu(k,1281) = lu(k,1281) - lu(k,791) * lu(k,1273) - lu(k,1282) = lu(k,1282) - lu(k,792) * lu(k,1273) - lu(k,1283) = lu(k,1283) - lu(k,793) * lu(k,1273) - lu(k,1284) = lu(k,1284) - lu(k,794) * lu(k,1273) - lu(k,1287) = lu(k,1287) - lu(k,795) * lu(k,1273) - lu(k,800) = 1._r8 / lu(k,800) - lu(k,801) = lu(k,801) * lu(k,800) - lu(k,802) = lu(k,802) * lu(k,800) - lu(k,803) = lu(k,803) * lu(k,800) - lu(k,804) = lu(k,804) * lu(k,800) - lu(k,805) = lu(k,805) * lu(k,800) - lu(k,806) = lu(k,806) * lu(k,800) - lu(k,807) = lu(k,807) * lu(k,800) - lu(k,808) = lu(k,808) * lu(k,800) - lu(k,809) = lu(k,809) * lu(k,800) - lu(k,810) = lu(k,810) * lu(k,800) - lu(k,811) = lu(k,811) * lu(k,800) - lu(k,820) = lu(k,820) - lu(k,801) * lu(k,819) - lu(k,821) = lu(k,821) - lu(k,802) * lu(k,819) - lu(k,822) = lu(k,822) - lu(k,803) * lu(k,819) - lu(k,823) = lu(k,823) - lu(k,804) * lu(k,819) - lu(k,824) = lu(k,824) - lu(k,805) * lu(k,819) - lu(k,825) = lu(k,825) - lu(k,806) * lu(k,819) - lu(k,826) = lu(k,826) - lu(k,807) * lu(k,819) - lu(k,827) = lu(k,827) - lu(k,808) * lu(k,819) - lu(k,828) = lu(k,828) - lu(k,809) * lu(k,819) - lu(k,829) = lu(k,829) - lu(k,810) * lu(k,819) - lu(k,831) = lu(k,831) - lu(k,811) * lu(k,819) - lu(k,855) = lu(k,855) - lu(k,801) * lu(k,854) - lu(k,856) = lu(k,856) - lu(k,802) * lu(k,854) - lu(k,857) = lu(k,857) - lu(k,803) * lu(k,854) - lu(k,858) = lu(k,858) - lu(k,804) * lu(k,854) - lu(k,859) = lu(k,859) - lu(k,805) * lu(k,854) - lu(k,860) = lu(k,860) - lu(k,806) * lu(k,854) - lu(k,861) = lu(k,861) - lu(k,807) * lu(k,854) - lu(k,862) = lu(k,862) - lu(k,808) * lu(k,854) - lu(k,863) = lu(k,863) - lu(k,809) * lu(k,854) - lu(k,864) = lu(k,864) - lu(k,810) * lu(k,854) - lu(k,867) = lu(k,867) - lu(k,811) * lu(k,854) - lu(k,884) = lu(k,884) - lu(k,801) * lu(k,883) - lu(k,885) = lu(k,885) - lu(k,802) * lu(k,883) - lu(k,886) = lu(k,886) - lu(k,803) * lu(k,883) - lu(k,887) = lu(k,887) - lu(k,804) * lu(k,883) - lu(k,888) = lu(k,888) - lu(k,805) * lu(k,883) - lu(k,889) = lu(k,889) - lu(k,806) * lu(k,883) - lu(k,890) = lu(k,890) - lu(k,807) * lu(k,883) - lu(k,891) = lu(k,891) - lu(k,808) * lu(k,883) - lu(k,892) = lu(k,892) - lu(k,809) * lu(k,883) - lu(k,893) = lu(k,893) - lu(k,810) * lu(k,883) - lu(k,896) = lu(k,896) - lu(k,811) * lu(k,883) - lu(k,940) = lu(k,940) - lu(k,801) * lu(k,939) - lu(k,941) = lu(k,941) - lu(k,802) * lu(k,939) - lu(k,942) = lu(k,942) - lu(k,803) * lu(k,939) - lu(k,943) = lu(k,943) - lu(k,804) * lu(k,939) - lu(k,944) = lu(k,944) - lu(k,805) * lu(k,939) - lu(k,945) = lu(k,945) - lu(k,806) * lu(k,939) - lu(k,946) = lu(k,946) - lu(k,807) * lu(k,939) - lu(k,947) = lu(k,947) - lu(k,808) * lu(k,939) - lu(k,948) = lu(k,948) - lu(k,809) * lu(k,939) - lu(k,949) = lu(k,949) - lu(k,810) * lu(k,939) - lu(k,952) = lu(k,952) - lu(k,811) * lu(k,939) - lu(k,962) = lu(k,962) - lu(k,801) * lu(k,961) - lu(k,963) = lu(k,963) - lu(k,802) * lu(k,961) - lu(k,964) = lu(k,964) - lu(k,803) * lu(k,961) - lu(k,965) = lu(k,965) - lu(k,804) * lu(k,961) - lu(k,966) = lu(k,966) - lu(k,805) * lu(k,961) - lu(k,967) = lu(k,967) - lu(k,806) * lu(k,961) - lu(k,968) = lu(k,968) - lu(k,807) * lu(k,961) - lu(k,969) = lu(k,969) - lu(k,808) * lu(k,961) - lu(k,970) = lu(k,970) - lu(k,809) * lu(k,961) - lu(k,971) = lu(k,971) - lu(k,810) * lu(k,961) - lu(k,974) = lu(k,974) - lu(k,811) * lu(k,961) - lu(k,1006) = lu(k,1006) - lu(k,801) * lu(k,1005) - lu(k,1007) = lu(k,1007) - lu(k,802) * lu(k,1005) - lu(k,1008) = lu(k,1008) - lu(k,803) * lu(k,1005) - lu(k,1009) = lu(k,1009) - lu(k,804) * lu(k,1005) - lu(k,1010) = lu(k,1010) - lu(k,805) * lu(k,1005) - lu(k,1011) = lu(k,1011) - lu(k,806) * lu(k,1005) - lu(k,1012) = lu(k,1012) - lu(k,807) * lu(k,1005) - lu(k,1013) = lu(k,1013) - lu(k,808) * lu(k,1005) - lu(k,1014) = lu(k,1014) - lu(k,809) * lu(k,1005) - lu(k,1015) = lu(k,1015) - lu(k,810) * lu(k,1005) - lu(k,1018) = lu(k,1018) - lu(k,811) * lu(k,1005) - lu(k,1042) = lu(k,1042) - lu(k,801) * lu(k,1041) - lu(k,1043) = lu(k,1043) - lu(k,802) * lu(k,1041) - lu(k,1044) = lu(k,1044) - lu(k,803) * lu(k,1041) - lu(k,1045) = lu(k,1045) - lu(k,804) * lu(k,1041) - lu(k,1046) = lu(k,1046) - lu(k,805) * lu(k,1041) - lu(k,1047) = lu(k,1047) - lu(k,806) * lu(k,1041) - lu(k,1048) = lu(k,1048) - lu(k,807) * lu(k,1041) - lu(k,1049) = lu(k,1049) - lu(k,808) * lu(k,1041) - lu(k,1050) = lu(k,1050) - lu(k,809) * lu(k,1041) - lu(k,1051) = lu(k,1051) - lu(k,810) * lu(k,1041) - lu(k,1054) = lu(k,1054) - lu(k,811) * lu(k,1041) - lu(k,1079) = lu(k,1079) - lu(k,801) * lu(k,1078) - lu(k,1080) = lu(k,1080) - lu(k,802) * lu(k,1078) - lu(k,1081) = lu(k,1081) - lu(k,803) * lu(k,1078) - lu(k,1082) = lu(k,1082) - lu(k,804) * lu(k,1078) - lu(k,1083) = lu(k,1083) - lu(k,805) * lu(k,1078) - lu(k,1084) = lu(k,1084) - lu(k,806) * lu(k,1078) - lu(k,1085) = lu(k,1085) - lu(k,807) * lu(k,1078) - lu(k,1086) = lu(k,1086) - lu(k,808) * lu(k,1078) - lu(k,1087) = lu(k,1087) - lu(k,809) * lu(k,1078) - lu(k,1088) = lu(k,1088) - lu(k,810) * lu(k,1078) - lu(k,1091) = lu(k,1091) - lu(k,811) * lu(k,1078) - lu(k,1164) = lu(k,1164) - lu(k,801) * lu(k,1163) - lu(k,1165) = lu(k,1165) - lu(k,802) * lu(k,1163) - lu(k,1166) = lu(k,1166) - lu(k,803) * lu(k,1163) - lu(k,1167) = lu(k,1167) - lu(k,804) * lu(k,1163) - lu(k,1168) = lu(k,1168) - lu(k,805) * lu(k,1163) - lu(k,1169) = lu(k,1169) - lu(k,806) * lu(k,1163) - lu(k,1170) = lu(k,1170) - lu(k,807) * lu(k,1163) - lu(k,1171) = lu(k,1171) - lu(k,808) * lu(k,1163) - lu(k,1172) = lu(k,1172) - lu(k,809) * lu(k,1163) - lu(k,1173) = lu(k,1173) - lu(k,810) * lu(k,1163) - lu(k,1176) = lu(k,1176) - lu(k,811) * lu(k,1163) - lu(k,1208) = lu(k,1208) - lu(k,801) * lu(k,1207) - lu(k,1209) = lu(k,1209) - lu(k,802) * lu(k,1207) - lu(k,1210) = lu(k,1210) - lu(k,803) * lu(k,1207) - lu(k,1211) = lu(k,1211) - lu(k,804) * lu(k,1207) - lu(k,1212) = lu(k,1212) - lu(k,805) * lu(k,1207) - lu(k,1213) = lu(k,1213) - lu(k,806) * lu(k,1207) - lu(k,1214) = lu(k,1214) - lu(k,807) * lu(k,1207) - lu(k,1215) = lu(k,1215) - lu(k,808) * lu(k,1207) - lu(k,1216) = lu(k,1216) - lu(k,809) * lu(k,1207) - lu(k,1217) = lu(k,1217) - lu(k,810) * lu(k,1207) - lu(k,1220) = lu(k,1220) - lu(k,811) * lu(k,1207) - lu(k,1233) = lu(k,1233) - lu(k,801) * lu(k,1232) - lu(k,1234) = lu(k,1234) - lu(k,802) * lu(k,1232) - lu(k,1235) = lu(k,1235) - lu(k,803) * lu(k,1232) - lu(k,1236) = lu(k,1236) - lu(k,804) * lu(k,1232) - lu(k,1237) = lu(k,1237) - lu(k,805) * lu(k,1232) - lu(k,1238) = lu(k,1238) - lu(k,806) * lu(k,1232) - lu(k,1239) = lu(k,1239) - lu(k,807) * lu(k,1232) - lu(k,1240) = lu(k,1240) - lu(k,808) * lu(k,1232) - lu(k,1241) = lu(k,1241) - lu(k,809) * lu(k,1232) - lu(k,1242) = lu(k,1242) - lu(k,810) * lu(k,1232) - lu(k,1245) = lu(k,1245) - lu(k,811) * lu(k,1232) - lu(k,1275) = lu(k,1275) - lu(k,801) * lu(k,1274) - lu(k,1276) = lu(k,1276) - lu(k,802) * lu(k,1274) - lu(k,1277) = lu(k,1277) - lu(k,803) * lu(k,1274) - lu(k,1278) = lu(k,1278) - lu(k,804) * lu(k,1274) - lu(k,1279) = lu(k,1279) - lu(k,805) * lu(k,1274) - lu(k,1280) = lu(k,1280) - lu(k,806) * lu(k,1274) - lu(k,1281) = lu(k,1281) - lu(k,807) * lu(k,1274) - lu(k,1282) = lu(k,1282) - lu(k,808) * lu(k,1274) - lu(k,1283) = lu(k,1283) - lu(k,809) * lu(k,1274) - lu(k,1284) = lu(k,1284) - lu(k,810) * lu(k,1274) - lu(k,1287) = lu(k,1287) - lu(k,811) * lu(k,1274) - lu(k,1295) = lu(k,1295) - lu(k,801) * lu(k,1294) - lu(k,1296) = lu(k,1296) - lu(k,802) * lu(k,1294) - lu(k,1297) = lu(k,1297) - lu(k,803) * lu(k,1294) - lu(k,1298) = lu(k,1298) - lu(k,804) * lu(k,1294) - lu(k,1299) = lu(k,1299) - lu(k,805) * lu(k,1294) - lu(k,1300) = lu(k,1300) - lu(k,806) * lu(k,1294) - lu(k,1301) = lu(k,1301) - lu(k,807) * lu(k,1294) - lu(k,1302) = lu(k,1302) - lu(k,808) * lu(k,1294) - lu(k,1303) = lu(k,1303) - lu(k,809) * lu(k,1294) - lu(k,1304) = - lu(k,810) * lu(k,1294) - lu(k,1307) = lu(k,1307) - lu(k,811) * lu(k,1294) - lu(k,820) = 1._r8 / lu(k,820) - lu(k,821) = lu(k,821) * lu(k,820) - lu(k,822) = lu(k,822) * lu(k,820) - lu(k,823) = lu(k,823) * lu(k,820) - lu(k,824) = lu(k,824) * lu(k,820) - lu(k,825) = lu(k,825) * lu(k,820) - lu(k,826) = lu(k,826) * lu(k,820) - lu(k,827) = lu(k,827) * lu(k,820) - lu(k,828) = lu(k,828) * lu(k,820) - lu(k,829) = lu(k,829) * lu(k,820) - lu(k,830) = lu(k,830) * lu(k,820) - lu(k,831) = lu(k,831) * lu(k,820) - lu(k,856) = lu(k,856) - lu(k,821) * lu(k,855) - lu(k,857) = lu(k,857) - lu(k,822) * lu(k,855) - lu(k,858) = lu(k,858) - lu(k,823) * lu(k,855) - lu(k,859) = lu(k,859) - lu(k,824) * lu(k,855) - lu(k,860) = lu(k,860) - lu(k,825) * lu(k,855) - lu(k,861) = lu(k,861) - lu(k,826) * lu(k,855) - lu(k,862) = lu(k,862) - lu(k,827) * lu(k,855) - lu(k,863) = lu(k,863) - lu(k,828) * lu(k,855) - lu(k,864) = lu(k,864) - lu(k,829) * lu(k,855) - lu(k,865) = lu(k,865) - lu(k,830) * lu(k,855) - lu(k,867) = lu(k,867) - lu(k,831) * lu(k,855) - lu(k,885) = lu(k,885) - lu(k,821) * lu(k,884) - lu(k,886) = lu(k,886) - lu(k,822) * lu(k,884) - lu(k,887) = lu(k,887) - lu(k,823) * lu(k,884) - lu(k,888) = lu(k,888) - lu(k,824) * lu(k,884) - lu(k,889) = lu(k,889) - lu(k,825) * lu(k,884) - lu(k,890) = lu(k,890) - lu(k,826) * lu(k,884) - lu(k,891) = lu(k,891) - lu(k,827) * lu(k,884) - lu(k,892) = lu(k,892) - lu(k,828) * lu(k,884) - lu(k,893) = lu(k,893) - lu(k,829) * lu(k,884) - lu(k,894) = lu(k,894) - lu(k,830) * lu(k,884) - lu(k,896) = lu(k,896) - lu(k,831) * lu(k,884) - lu(k,941) = lu(k,941) - lu(k,821) * lu(k,940) - lu(k,942) = lu(k,942) - lu(k,822) * lu(k,940) - lu(k,943) = lu(k,943) - lu(k,823) * lu(k,940) - lu(k,944) = lu(k,944) - lu(k,824) * lu(k,940) - lu(k,945) = lu(k,945) - lu(k,825) * lu(k,940) - lu(k,946) = lu(k,946) - lu(k,826) * lu(k,940) - lu(k,947) = lu(k,947) - lu(k,827) * lu(k,940) - lu(k,948) = lu(k,948) - lu(k,828) * lu(k,940) - lu(k,949) = lu(k,949) - lu(k,829) * lu(k,940) - lu(k,950) = lu(k,950) - lu(k,830) * lu(k,940) - lu(k,952) = lu(k,952) - lu(k,831) * lu(k,940) - lu(k,963) = lu(k,963) - lu(k,821) * lu(k,962) - lu(k,964) = lu(k,964) - lu(k,822) * lu(k,962) - lu(k,965) = lu(k,965) - lu(k,823) * lu(k,962) - lu(k,966) = lu(k,966) - lu(k,824) * lu(k,962) - lu(k,967) = lu(k,967) - lu(k,825) * lu(k,962) - lu(k,968) = lu(k,968) - lu(k,826) * lu(k,962) - lu(k,969) = lu(k,969) - lu(k,827) * lu(k,962) - lu(k,970) = lu(k,970) - lu(k,828) * lu(k,962) - lu(k,971) = lu(k,971) - lu(k,829) * lu(k,962) - lu(k,972) = lu(k,972) - lu(k,830) * lu(k,962) - lu(k,974) = lu(k,974) - lu(k,831) * lu(k,962) - lu(k,1007) = lu(k,1007) - lu(k,821) * lu(k,1006) - lu(k,1008) = lu(k,1008) - lu(k,822) * lu(k,1006) - lu(k,1009) = lu(k,1009) - lu(k,823) * lu(k,1006) - lu(k,1010) = lu(k,1010) - lu(k,824) * lu(k,1006) - lu(k,1011) = lu(k,1011) - lu(k,825) * lu(k,1006) - lu(k,1012) = lu(k,1012) - lu(k,826) * lu(k,1006) - lu(k,1013) = lu(k,1013) - lu(k,827) * lu(k,1006) - lu(k,1014) = lu(k,1014) - lu(k,828) * lu(k,1006) - lu(k,1015) = lu(k,1015) - lu(k,829) * lu(k,1006) - lu(k,1016) = lu(k,1016) - lu(k,830) * lu(k,1006) - lu(k,1018) = lu(k,1018) - lu(k,831) * lu(k,1006) - lu(k,1043) = lu(k,1043) - lu(k,821) * lu(k,1042) - lu(k,1044) = lu(k,1044) - lu(k,822) * lu(k,1042) - lu(k,1045) = lu(k,1045) - lu(k,823) * lu(k,1042) - lu(k,1046) = lu(k,1046) - lu(k,824) * lu(k,1042) - lu(k,1047) = lu(k,1047) - lu(k,825) * lu(k,1042) - lu(k,1048) = lu(k,1048) - lu(k,826) * lu(k,1042) - lu(k,1049) = lu(k,1049) - lu(k,827) * lu(k,1042) - lu(k,1050) = lu(k,1050) - lu(k,828) * lu(k,1042) - lu(k,1051) = lu(k,1051) - lu(k,829) * lu(k,1042) - lu(k,1052) = lu(k,1052) - lu(k,830) * lu(k,1042) - lu(k,1054) = lu(k,1054) - lu(k,831) * lu(k,1042) - lu(k,1080) = lu(k,1080) - lu(k,821) * lu(k,1079) - lu(k,1081) = lu(k,1081) - lu(k,822) * lu(k,1079) - lu(k,1082) = lu(k,1082) - lu(k,823) * lu(k,1079) - lu(k,1083) = lu(k,1083) - lu(k,824) * lu(k,1079) - lu(k,1084) = lu(k,1084) - lu(k,825) * lu(k,1079) - lu(k,1085) = lu(k,1085) - lu(k,826) * lu(k,1079) - lu(k,1086) = lu(k,1086) - lu(k,827) * lu(k,1079) - lu(k,1087) = lu(k,1087) - lu(k,828) * lu(k,1079) - lu(k,1088) = lu(k,1088) - lu(k,829) * lu(k,1079) - lu(k,1089) = lu(k,1089) - lu(k,830) * lu(k,1079) - lu(k,1091) = lu(k,1091) - lu(k,831) * lu(k,1079) - lu(k,1165) = lu(k,1165) - lu(k,821) * lu(k,1164) - lu(k,1166) = lu(k,1166) - lu(k,822) * lu(k,1164) - lu(k,1167) = lu(k,1167) - lu(k,823) * lu(k,1164) - lu(k,1168) = lu(k,1168) - lu(k,824) * lu(k,1164) - lu(k,1169) = lu(k,1169) - lu(k,825) * lu(k,1164) - lu(k,1170) = lu(k,1170) - lu(k,826) * lu(k,1164) - lu(k,1171) = lu(k,1171) - lu(k,827) * lu(k,1164) - lu(k,1172) = lu(k,1172) - lu(k,828) * lu(k,1164) - lu(k,1173) = lu(k,1173) - lu(k,829) * lu(k,1164) - lu(k,1174) = lu(k,1174) - lu(k,830) * lu(k,1164) - lu(k,1176) = lu(k,1176) - lu(k,831) * lu(k,1164) - lu(k,1209) = lu(k,1209) - lu(k,821) * lu(k,1208) - lu(k,1210) = lu(k,1210) - lu(k,822) * lu(k,1208) - lu(k,1211) = lu(k,1211) - lu(k,823) * lu(k,1208) - lu(k,1212) = lu(k,1212) - lu(k,824) * lu(k,1208) - lu(k,1213) = lu(k,1213) - lu(k,825) * lu(k,1208) - lu(k,1214) = lu(k,1214) - lu(k,826) * lu(k,1208) - lu(k,1215) = lu(k,1215) - lu(k,827) * lu(k,1208) - lu(k,1216) = lu(k,1216) - lu(k,828) * lu(k,1208) - lu(k,1217) = lu(k,1217) - lu(k,829) * lu(k,1208) - lu(k,1218) = lu(k,1218) - lu(k,830) * lu(k,1208) - lu(k,1220) = lu(k,1220) - lu(k,831) * lu(k,1208) - lu(k,1234) = lu(k,1234) - lu(k,821) * lu(k,1233) - lu(k,1235) = lu(k,1235) - lu(k,822) * lu(k,1233) - lu(k,1236) = lu(k,1236) - lu(k,823) * lu(k,1233) - lu(k,1237) = lu(k,1237) - lu(k,824) * lu(k,1233) - lu(k,1238) = lu(k,1238) - lu(k,825) * lu(k,1233) - lu(k,1239) = lu(k,1239) - lu(k,826) * lu(k,1233) - lu(k,1240) = lu(k,1240) - lu(k,827) * lu(k,1233) - lu(k,1241) = lu(k,1241) - lu(k,828) * lu(k,1233) - lu(k,1242) = lu(k,1242) - lu(k,829) * lu(k,1233) - lu(k,1243) = lu(k,1243) - lu(k,830) * lu(k,1233) - lu(k,1245) = lu(k,1245) - lu(k,831) * lu(k,1233) - lu(k,1276) = lu(k,1276) - lu(k,821) * lu(k,1275) - lu(k,1277) = lu(k,1277) - lu(k,822) * lu(k,1275) - lu(k,1278) = lu(k,1278) - lu(k,823) * lu(k,1275) - lu(k,1279) = lu(k,1279) - lu(k,824) * lu(k,1275) - lu(k,1280) = lu(k,1280) - lu(k,825) * lu(k,1275) - lu(k,1281) = lu(k,1281) - lu(k,826) * lu(k,1275) - lu(k,1282) = lu(k,1282) - lu(k,827) * lu(k,1275) - lu(k,1283) = lu(k,1283) - lu(k,828) * lu(k,1275) - lu(k,1284) = lu(k,1284) - lu(k,829) * lu(k,1275) - lu(k,1285) = lu(k,1285) - lu(k,830) * lu(k,1275) - lu(k,1287) = lu(k,1287) - lu(k,831) * lu(k,1275) - lu(k,1296) = lu(k,1296) - lu(k,821) * lu(k,1295) - lu(k,1297) = lu(k,1297) - lu(k,822) * lu(k,1295) - lu(k,1298) = lu(k,1298) - lu(k,823) * lu(k,1295) - lu(k,1299) = lu(k,1299) - lu(k,824) * lu(k,1295) - lu(k,1300) = lu(k,1300) - lu(k,825) * lu(k,1295) - lu(k,1301) = lu(k,1301) - lu(k,826) * lu(k,1295) - lu(k,1302) = lu(k,1302) - lu(k,827) * lu(k,1295) - lu(k,1303) = lu(k,1303) - lu(k,828) * lu(k,1295) - lu(k,1304) = lu(k,1304) - lu(k,829) * lu(k,1295) - lu(k,1305) = lu(k,1305) - lu(k,830) * lu(k,1295) - lu(k,1307) = lu(k,1307) - lu(k,831) * lu(k,1295) - lu(k,856) = 1._r8 / lu(k,856) - lu(k,857) = lu(k,857) * lu(k,856) - lu(k,858) = lu(k,858) * lu(k,856) - lu(k,859) = lu(k,859) * lu(k,856) - lu(k,860) = lu(k,860) * lu(k,856) - lu(k,861) = lu(k,861) * lu(k,856) - lu(k,862) = lu(k,862) * lu(k,856) - lu(k,863) = lu(k,863) * lu(k,856) - lu(k,864) = lu(k,864) * lu(k,856) - lu(k,865) = lu(k,865) * lu(k,856) - lu(k,866) = lu(k,866) * lu(k,856) - lu(k,867) = lu(k,867) * lu(k,856) - lu(k,886) = lu(k,886) - lu(k,857) * lu(k,885) - lu(k,887) = lu(k,887) - lu(k,858) * lu(k,885) - lu(k,888) = lu(k,888) - lu(k,859) * lu(k,885) - lu(k,889) = lu(k,889) - lu(k,860) * lu(k,885) - lu(k,890) = lu(k,890) - lu(k,861) * lu(k,885) - lu(k,891) = lu(k,891) - lu(k,862) * lu(k,885) - lu(k,892) = lu(k,892) - lu(k,863) * lu(k,885) - lu(k,893) = lu(k,893) - lu(k,864) * lu(k,885) - lu(k,894) = lu(k,894) - lu(k,865) * lu(k,885) - lu(k,895) = lu(k,895) - lu(k,866) * lu(k,885) - lu(k,896) = lu(k,896) - lu(k,867) * lu(k,885) - lu(k,942) = lu(k,942) - lu(k,857) * lu(k,941) - lu(k,943) = lu(k,943) - lu(k,858) * lu(k,941) - lu(k,944) = lu(k,944) - lu(k,859) * lu(k,941) - lu(k,945) = lu(k,945) - lu(k,860) * lu(k,941) - lu(k,946) = lu(k,946) - lu(k,861) * lu(k,941) - lu(k,947) = lu(k,947) - lu(k,862) * lu(k,941) - lu(k,948) = lu(k,948) - lu(k,863) * lu(k,941) - lu(k,949) = lu(k,949) - lu(k,864) * lu(k,941) - lu(k,950) = lu(k,950) - lu(k,865) * lu(k,941) - lu(k,951) = lu(k,951) - lu(k,866) * lu(k,941) - lu(k,952) = lu(k,952) - lu(k,867) * lu(k,941) - lu(k,964) = lu(k,964) - lu(k,857) * lu(k,963) - lu(k,965) = lu(k,965) - lu(k,858) * lu(k,963) - lu(k,966) = lu(k,966) - lu(k,859) * lu(k,963) - lu(k,967) = lu(k,967) - lu(k,860) * lu(k,963) - lu(k,968) = lu(k,968) - lu(k,861) * lu(k,963) - lu(k,969) = lu(k,969) - lu(k,862) * lu(k,963) - lu(k,970) = lu(k,970) - lu(k,863) * lu(k,963) - lu(k,971) = lu(k,971) - lu(k,864) * lu(k,963) - lu(k,972) = lu(k,972) - lu(k,865) * lu(k,963) - lu(k,973) = lu(k,973) - lu(k,866) * lu(k,963) - lu(k,974) = lu(k,974) - lu(k,867) * lu(k,963) - lu(k,1008) = lu(k,1008) - lu(k,857) * lu(k,1007) - lu(k,1009) = lu(k,1009) - lu(k,858) * lu(k,1007) - lu(k,1010) = lu(k,1010) - lu(k,859) * lu(k,1007) - lu(k,1011) = lu(k,1011) - lu(k,860) * lu(k,1007) - lu(k,1012) = lu(k,1012) - lu(k,861) * lu(k,1007) - lu(k,1013) = lu(k,1013) - lu(k,862) * lu(k,1007) - lu(k,1014) = lu(k,1014) - lu(k,863) * lu(k,1007) - lu(k,1015) = lu(k,1015) - lu(k,864) * lu(k,1007) - lu(k,1016) = lu(k,1016) - lu(k,865) * lu(k,1007) - lu(k,1017) = lu(k,1017) - lu(k,866) * lu(k,1007) - lu(k,1018) = lu(k,1018) - lu(k,867) * lu(k,1007) - lu(k,1044) = lu(k,1044) - lu(k,857) * lu(k,1043) - lu(k,1045) = lu(k,1045) - lu(k,858) * lu(k,1043) - lu(k,1046) = lu(k,1046) - lu(k,859) * lu(k,1043) - lu(k,1047) = lu(k,1047) - lu(k,860) * lu(k,1043) - lu(k,1048) = lu(k,1048) - lu(k,861) * lu(k,1043) - lu(k,1049) = lu(k,1049) - lu(k,862) * lu(k,1043) - lu(k,1050) = lu(k,1050) - lu(k,863) * lu(k,1043) - lu(k,1051) = lu(k,1051) - lu(k,864) * lu(k,1043) - lu(k,1052) = lu(k,1052) - lu(k,865) * lu(k,1043) - lu(k,1053) = lu(k,1053) - lu(k,866) * lu(k,1043) - lu(k,1054) = lu(k,1054) - lu(k,867) * lu(k,1043) - lu(k,1081) = lu(k,1081) - lu(k,857) * lu(k,1080) - lu(k,1082) = lu(k,1082) - lu(k,858) * lu(k,1080) - lu(k,1083) = lu(k,1083) - lu(k,859) * lu(k,1080) - lu(k,1084) = lu(k,1084) - lu(k,860) * lu(k,1080) - lu(k,1085) = lu(k,1085) - lu(k,861) * lu(k,1080) - lu(k,1086) = lu(k,1086) - lu(k,862) * lu(k,1080) - lu(k,1087) = lu(k,1087) - lu(k,863) * lu(k,1080) - lu(k,1088) = lu(k,1088) - lu(k,864) * lu(k,1080) - lu(k,1089) = lu(k,1089) - lu(k,865) * lu(k,1080) - lu(k,1090) = lu(k,1090) - lu(k,866) * lu(k,1080) - lu(k,1091) = lu(k,1091) - lu(k,867) * lu(k,1080) - lu(k,1166) = lu(k,1166) - lu(k,857) * lu(k,1165) - lu(k,1167) = lu(k,1167) - lu(k,858) * lu(k,1165) - lu(k,1168) = lu(k,1168) - lu(k,859) * lu(k,1165) - lu(k,1169) = lu(k,1169) - lu(k,860) * lu(k,1165) - lu(k,1170) = lu(k,1170) - lu(k,861) * lu(k,1165) - lu(k,1171) = lu(k,1171) - lu(k,862) * lu(k,1165) - lu(k,1172) = lu(k,1172) - lu(k,863) * lu(k,1165) - lu(k,1173) = lu(k,1173) - lu(k,864) * lu(k,1165) - lu(k,1174) = lu(k,1174) - lu(k,865) * lu(k,1165) - lu(k,1175) = lu(k,1175) - lu(k,866) * lu(k,1165) - lu(k,1176) = lu(k,1176) - lu(k,867) * lu(k,1165) - lu(k,1210) = lu(k,1210) - lu(k,857) * lu(k,1209) - lu(k,1211) = lu(k,1211) - lu(k,858) * lu(k,1209) - lu(k,1212) = lu(k,1212) - lu(k,859) * lu(k,1209) - lu(k,1213) = lu(k,1213) - lu(k,860) * lu(k,1209) - lu(k,1214) = lu(k,1214) - lu(k,861) * lu(k,1209) - lu(k,1215) = lu(k,1215) - lu(k,862) * lu(k,1209) - lu(k,1216) = lu(k,1216) - lu(k,863) * lu(k,1209) - lu(k,1217) = lu(k,1217) - lu(k,864) * lu(k,1209) - lu(k,1218) = lu(k,1218) - lu(k,865) * lu(k,1209) - lu(k,1219) = lu(k,1219) - lu(k,866) * lu(k,1209) - lu(k,1220) = lu(k,1220) - lu(k,867) * lu(k,1209) - lu(k,1235) = lu(k,1235) - lu(k,857) * lu(k,1234) - lu(k,1236) = lu(k,1236) - lu(k,858) * lu(k,1234) - lu(k,1237) = lu(k,1237) - lu(k,859) * lu(k,1234) - lu(k,1238) = lu(k,1238) - lu(k,860) * lu(k,1234) - lu(k,1239) = lu(k,1239) - lu(k,861) * lu(k,1234) - lu(k,1240) = lu(k,1240) - lu(k,862) * lu(k,1234) - lu(k,1241) = lu(k,1241) - lu(k,863) * lu(k,1234) - lu(k,1242) = lu(k,1242) - lu(k,864) * lu(k,1234) - lu(k,1243) = lu(k,1243) - lu(k,865) * lu(k,1234) - lu(k,1244) = lu(k,1244) - lu(k,866) * lu(k,1234) - lu(k,1245) = lu(k,1245) - lu(k,867) * lu(k,1234) - lu(k,1277) = lu(k,1277) - lu(k,857) * lu(k,1276) - lu(k,1278) = lu(k,1278) - lu(k,858) * lu(k,1276) - lu(k,1279) = lu(k,1279) - lu(k,859) * lu(k,1276) - lu(k,1280) = lu(k,1280) - lu(k,860) * lu(k,1276) - lu(k,1281) = lu(k,1281) - lu(k,861) * lu(k,1276) - lu(k,1282) = lu(k,1282) - lu(k,862) * lu(k,1276) - lu(k,1283) = lu(k,1283) - lu(k,863) * lu(k,1276) - lu(k,1284) = lu(k,1284) - lu(k,864) * lu(k,1276) - lu(k,1285) = lu(k,1285) - lu(k,865) * lu(k,1276) - lu(k,1286) = lu(k,1286) - lu(k,866) * lu(k,1276) - lu(k,1287) = lu(k,1287) - lu(k,867) * lu(k,1276) - lu(k,1297) = lu(k,1297) - lu(k,857) * lu(k,1296) - lu(k,1298) = lu(k,1298) - lu(k,858) * lu(k,1296) - lu(k,1299) = lu(k,1299) - lu(k,859) * lu(k,1296) - lu(k,1300) = lu(k,1300) - lu(k,860) * lu(k,1296) - lu(k,1301) = lu(k,1301) - lu(k,861) * lu(k,1296) - lu(k,1302) = lu(k,1302) - lu(k,862) * lu(k,1296) - lu(k,1303) = lu(k,1303) - lu(k,863) * lu(k,1296) - lu(k,1304) = lu(k,1304) - lu(k,864) * lu(k,1296) - lu(k,1305) = lu(k,1305) - lu(k,865) * lu(k,1296) - lu(k,1306) = lu(k,1306) - lu(k,866) * lu(k,1296) - lu(k,1307) = lu(k,1307) - lu(k,867) * lu(k,1296) - end do - end subroutine lu_fac16 - subroutine lu_fac17( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,886) = 1._r8 / lu(k,886) - lu(k,887) = lu(k,887) * lu(k,886) - lu(k,888) = lu(k,888) * lu(k,886) - lu(k,889) = lu(k,889) * lu(k,886) - lu(k,890) = lu(k,890) * lu(k,886) - lu(k,891) = lu(k,891) * lu(k,886) - lu(k,892) = lu(k,892) * lu(k,886) - lu(k,893) = lu(k,893) * lu(k,886) - lu(k,894) = lu(k,894) * lu(k,886) - lu(k,895) = lu(k,895) * lu(k,886) - lu(k,896) = lu(k,896) * lu(k,886) - lu(k,943) = lu(k,943) - lu(k,887) * lu(k,942) - lu(k,944) = lu(k,944) - lu(k,888) * lu(k,942) - lu(k,945) = lu(k,945) - lu(k,889) * lu(k,942) - lu(k,946) = lu(k,946) - lu(k,890) * lu(k,942) - lu(k,947) = lu(k,947) - lu(k,891) * lu(k,942) - lu(k,948) = lu(k,948) - lu(k,892) * lu(k,942) - lu(k,949) = lu(k,949) - lu(k,893) * lu(k,942) - lu(k,950) = lu(k,950) - lu(k,894) * lu(k,942) - lu(k,951) = lu(k,951) - lu(k,895) * lu(k,942) - lu(k,952) = lu(k,952) - lu(k,896) * lu(k,942) - lu(k,965) = lu(k,965) - lu(k,887) * lu(k,964) - lu(k,966) = lu(k,966) - lu(k,888) * lu(k,964) - lu(k,967) = lu(k,967) - lu(k,889) * lu(k,964) - lu(k,968) = lu(k,968) - lu(k,890) * lu(k,964) - lu(k,969) = lu(k,969) - lu(k,891) * lu(k,964) - lu(k,970) = lu(k,970) - lu(k,892) * lu(k,964) - lu(k,971) = lu(k,971) - lu(k,893) * lu(k,964) - lu(k,972) = lu(k,972) - lu(k,894) * lu(k,964) - lu(k,973) = lu(k,973) - lu(k,895) * lu(k,964) - lu(k,974) = lu(k,974) - lu(k,896) * lu(k,964) - lu(k,1009) = lu(k,1009) - lu(k,887) * lu(k,1008) - lu(k,1010) = lu(k,1010) - lu(k,888) * lu(k,1008) - lu(k,1011) = lu(k,1011) - lu(k,889) * lu(k,1008) - lu(k,1012) = lu(k,1012) - lu(k,890) * lu(k,1008) - lu(k,1013) = lu(k,1013) - lu(k,891) * lu(k,1008) - lu(k,1014) = lu(k,1014) - lu(k,892) * lu(k,1008) - lu(k,1015) = lu(k,1015) - lu(k,893) * lu(k,1008) - lu(k,1016) = lu(k,1016) - lu(k,894) * lu(k,1008) - lu(k,1017) = lu(k,1017) - lu(k,895) * lu(k,1008) - lu(k,1018) = lu(k,1018) - lu(k,896) * lu(k,1008) - lu(k,1045) = lu(k,1045) - lu(k,887) * lu(k,1044) - lu(k,1046) = lu(k,1046) - lu(k,888) * lu(k,1044) - lu(k,1047) = lu(k,1047) - lu(k,889) * lu(k,1044) - lu(k,1048) = lu(k,1048) - lu(k,890) * lu(k,1044) - lu(k,1049) = lu(k,1049) - lu(k,891) * lu(k,1044) - lu(k,1050) = lu(k,1050) - lu(k,892) * lu(k,1044) - lu(k,1051) = lu(k,1051) - lu(k,893) * lu(k,1044) - lu(k,1052) = lu(k,1052) - lu(k,894) * lu(k,1044) - lu(k,1053) = lu(k,1053) - lu(k,895) * lu(k,1044) - lu(k,1054) = lu(k,1054) - lu(k,896) * lu(k,1044) - lu(k,1082) = lu(k,1082) - lu(k,887) * lu(k,1081) - lu(k,1083) = lu(k,1083) - lu(k,888) * lu(k,1081) - lu(k,1084) = lu(k,1084) - lu(k,889) * lu(k,1081) - lu(k,1085) = lu(k,1085) - lu(k,890) * lu(k,1081) - lu(k,1086) = lu(k,1086) - lu(k,891) * lu(k,1081) - lu(k,1087) = lu(k,1087) - lu(k,892) * lu(k,1081) - lu(k,1088) = lu(k,1088) - lu(k,893) * lu(k,1081) - lu(k,1089) = lu(k,1089) - lu(k,894) * lu(k,1081) - lu(k,1090) = lu(k,1090) - lu(k,895) * lu(k,1081) - lu(k,1091) = lu(k,1091) - lu(k,896) * lu(k,1081) - lu(k,1167) = lu(k,1167) - lu(k,887) * lu(k,1166) - lu(k,1168) = lu(k,1168) - lu(k,888) * lu(k,1166) - lu(k,1169) = lu(k,1169) - lu(k,889) * lu(k,1166) - lu(k,1170) = lu(k,1170) - lu(k,890) * lu(k,1166) - lu(k,1171) = lu(k,1171) - lu(k,891) * lu(k,1166) - lu(k,1172) = lu(k,1172) - lu(k,892) * lu(k,1166) - lu(k,1173) = lu(k,1173) - lu(k,893) * lu(k,1166) - lu(k,1174) = lu(k,1174) - lu(k,894) * lu(k,1166) - lu(k,1175) = lu(k,1175) - lu(k,895) * lu(k,1166) - lu(k,1176) = lu(k,1176) - lu(k,896) * lu(k,1166) - lu(k,1211) = lu(k,1211) - lu(k,887) * lu(k,1210) - lu(k,1212) = lu(k,1212) - lu(k,888) * lu(k,1210) - lu(k,1213) = lu(k,1213) - lu(k,889) * lu(k,1210) - lu(k,1214) = lu(k,1214) - lu(k,890) * lu(k,1210) - lu(k,1215) = lu(k,1215) - lu(k,891) * lu(k,1210) - lu(k,1216) = lu(k,1216) - lu(k,892) * lu(k,1210) - lu(k,1217) = lu(k,1217) - lu(k,893) * lu(k,1210) - lu(k,1218) = lu(k,1218) - lu(k,894) * lu(k,1210) - lu(k,1219) = lu(k,1219) - lu(k,895) * lu(k,1210) - lu(k,1220) = lu(k,1220) - lu(k,896) * lu(k,1210) - lu(k,1236) = lu(k,1236) - lu(k,887) * lu(k,1235) - lu(k,1237) = lu(k,1237) - lu(k,888) * lu(k,1235) - lu(k,1238) = lu(k,1238) - lu(k,889) * lu(k,1235) - lu(k,1239) = lu(k,1239) - lu(k,890) * lu(k,1235) - lu(k,1240) = lu(k,1240) - lu(k,891) * lu(k,1235) - lu(k,1241) = lu(k,1241) - lu(k,892) * lu(k,1235) - lu(k,1242) = lu(k,1242) - lu(k,893) * lu(k,1235) - lu(k,1243) = lu(k,1243) - lu(k,894) * lu(k,1235) - lu(k,1244) = lu(k,1244) - lu(k,895) * lu(k,1235) - lu(k,1245) = lu(k,1245) - lu(k,896) * lu(k,1235) - lu(k,1278) = lu(k,1278) - lu(k,887) * lu(k,1277) - lu(k,1279) = lu(k,1279) - lu(k,888) * lu(k,1277) - lu(k,1280) = lu(k,1280) - lu(k,889) * lu(k,1277) - lu(k,1281) = lu(k,1281) - lu(k,890) * lu(k,1277) - lu(k,1282) = lu(k,1282) - lu(k,891) * lu(k,1277) - lu(k,1283) = lu(k,1283) - lu(k,892) * lu(k,1277) - lu(k,1284) = lu(k,1284) - lu(k,893) * lu(k,1277) - lu(k,1285) = lu(k,1285) - lu(k,894) * lu(k,1277) - lu(k,1286) = lu(k,1286) - lu(k,895) * lu(k,1277) - lu(k,1287) = lu(k,1287) - lu(k,896) * lu(k,1277) - lu(k,1298) = lu(k,1298) - lu(k,887) * lu(k,1297) - lu(k,1299) = lu(k,1299) - lu(k,888) * lu(k,1297) - lu(k,1300) = lu(k,1300) - lu(k,889) * lu(k,1297) - lu(k,1301) = lu(k,1301) - lu(k,890) * lu(k,1297) - lu(k,1302) = lu(k,1302) - lu(k,891) * lu(k,1297) - lu(k,1303) = lu(k,1303) - lu(k,892) * lu(k,1297) - lu(k,1304) = lu(k,1304) - lu(k,893) * lu(k,1297) - lu(k,1305) = lu(k,1305) - lu(k,894) * lu(k,1297) - lu(k,1306) = lu(k,1306) - lu(k,895) * lu(k,1297) - lu(k,1307) = lu(k,1307) - lu(k,896) * lu(k,1297) - lu(k,943) = 1._r8 / lu(k,943) - lu(k,944) = lu(k,944) * lu(k,943) - lu(k,945) = lu(k,945) * lu(k,943) - lu(k,946) = lu(k,946) * lu(k,943) - lu(k,947) = lu(k,947) * lu(k,943) - lu(k,948) = lu(k,948) * lu(k,943) - lu(k,949) = lu(k,949) * lu(k,943) - lu(k,950) = lu(k,950) * lu(k,943) - lu(k,951) = lu(k,951) * lu(k,943) - lu(k,952) = lu(k,952) * lu(k,943) - lu(k,966) = lu(k,966) - lu(k,944) * lu(k,965) - lu(k,967) = lu(k,967) - lu(k,945) * lu(k,965) - lu(k,968) = lu(k,968) - lu(k,946) * lu(k,965) - lu(k,969) = lu(k,969) - lu(k,947) * lu(k,965) - lu(k,970) = lu(k,970) - lu(k,948) * lu(k,965) - lu(k,971) = lu(k,971) - lu(k,949) * lu(k,965) - lu(k,972) = lu(k,972) - lu(k,950) * lu(k,965) - lu(k,973) = lu(k,973) - lu(k,951) * lu(k,965) - lu(k,974) = lu(k,974) - lu(k,952) * lu(k,965) - lu(k,1010) = lu(k,1010) - lu(k,944) * lu(k,1009) - lu(k,1011) = lu(k,1011) - lu(k,945) * lu(k,1009) - lu(k,1012) = lu(k,1012) - lu(k,946) * lu(k,1009) - lu(k,1013) = lu(k,1013) - lu(k,947) * lu(k,1009) - lu(k,1014) = lu(k,1014) - lu(k,948) * lu(k,1009) - lu(k,1015) = lu(k,1015) - lu(k,949) * lu(k,1009) - lu(k,1016) = lu(k,1016) - lu(k,950) * lu(k,1009) - lu(k,1017) = lu(k,1017) - lu(k,951) * lu(k,1009) - lu(k,1018) = lu(k,1018) - lu(k,952) * lu(k,1009) - lu(k,1046) = lu(k,1046) - lu(k,944) * lu(k,1045) - lu(k,1047) = lu(k,1047) - lu(k,945) * lu(k,1045) - lu(k,1048) = lu(k,1048) - lu(k,946) * lu(k,1045) - lu(k,1049) = lu(k,1049) - lu(k,947) * lu(k,1045) - lu(k,1050) = lu(k,1050) - lu(k,948) * lu(k,1045) - lu(k,1051) = lu(k,1051) - lu(k,949) * lu(k,1045) - lu(k,1052) = lu(k,1052) - lu(k,950) * lu(k,1045) - lu(k,1053) = lu(k,1053) - lu(k,951) * lu(k,1045) - lu(k,1054) = lu(k,1054) - lu(k,952) * lu(k,1045) - lu(k,1083) = lu(k,1083) - lu(k,944) * lu(k,1082) - lu(k,1084) = lu(k,1084) - lu(k,945) * lu(k,1082) - lu(k,1085) = lu(k,1085) - lu(k,946) * lu(k,1082) - lu(k,1086) = lu(k,1086) - lu(k,947) * lu(k,1082) - lu(k,1087) = lu(k,1087) - lu(k,948) * lu(k,1082) - lu(k,1088) = lu(k,1088) - lu(k,949) * lu(k,1082) - lu(k,1089) = lu(k,1089) - lu(k,950) * lu(k,1082) - lu(k,1090) = lu(k,1090) - lu(k,951) * lu(k,1082) - lu(k,1091) = lu(k,1091) - lu(k,952) * lu(k,1082) - lu(k,1168) = lu(k,1168) - lu(k,944) * lu(k,1167) - lu(k,1169) = lu(k,1169) - lu(k,945) * lu(k,1167) - lu(k,1170) = lu(k,1170) - lu(k,946) * lu(k,1167) - lu(k,1171) = lu(k,1171) - lu(k,947) * lu(k,1167) - lu(k,1172) = lu(k,1172) - lu(k,948) * lu(k,1167) - lu(k,1173) = lu(k,1173) - lu(k,949) * lu(k,1167) - lu(k,1174) = lu(k,1174) - lu(k,950) * lu(k,1167) - lu(k,1175) = lu(k,1175) - lu(k,951) * lu(k,1167) - lu(k,1176) = lu(k,1176) - lu(k,952) * lu(k,1167) - lu(k,1212) = lu(k,1212) - lu(k,944) * lu(k,1211) - lu(k,1213) = lu(k,1213) - lu(k,945) * lu(k,1211) - lu(k,1214) = lu(k,1214) - lu(k,946) * lu(k,1211) - lu(k,1215) = lu(k,1215) - lu(k,947) * lu(k,1211) - lu(k,1216) = lu(k,1216) - lu(k,948) * lu(k,1211) - lu(k,1217) = lu(k,1217) - lu(k,949) * lu(k,1211) - lu(k,1218) = lu(k,1218) - lu(k,950) * lu(k,1211) - lu(k,1219) = lu(k,1219) - lu(k,951) * lu(k,1211) - lu(k,1220) = lu(k,1220) - lu(k,952) * lu(k,1211) - lu(k,1237) = lu(k,1237) - lu(k,944) * lu(k,1236) - lu(k,1238) = lu(k,1238) - lu(k,945) * lu(k,1236) - lu(k,1239) = lu(k,1239) - lu(k,946) * lu(k,1236) - lu(k,1240) = lu(k,1240) - lu(k,947) * lu(k,1236) - lu(k,1241) = lu(k,1241) - lu(k,948) * lu(k,1236) - lu(k,1242) = lu(k,1242) - lu(k,949) * lu(k,1236) - lu(k,1243) = lu(k,1243) - lu(k,950) * lu(k,1236) - lu(k,1244) = lu(k,1244) - lu(k,951) * lu(k,1236) - lu(k,1245) = lu(k,1245) - lu(k,952) * lu(k,1236) - lu(k,1279) = lu(k,1279) - lu(k,944) * lu(k,1278) - lu(k,1280) = lu(k,1280) - lu(k,945) * lu(k,1278) - lu(k,1281) = lu(k,1281) - lu(k,946) * lu(k,1278) - lu(k,1282) = lu(k,1282) - lu(k,947) * lu(k,1278) - lu(k,1283) = lu(k,1283) - lu(k,948) * lu(k,1278) - lu(k,1284) = lu(k,1284) - lu(k,949) * lu(k,1278) - lu(k,1285) = lu(k,1285) - lu(k,950) * lu(k,1278) - lu(k,1286) = lu(k,1286) - lu(k,951) * lu(k,1278) - lu(k,1287) = lu(k,1287) - lu(k,952) * lu(k,1278) - lu(k,1299) = lu(k,1299) - lu(k,944) * lu(k,1298) - lu(k,1300) = lu(k,1300) - lu(k,945) * lu(k,1298) - lu(k,1301) = lu(k,1301) - lu(k,946) * lu(k,1298) - lu(k,1302) = lu(k,1302) - lu(k,947) * lu(k,1298) - lu(k,1303) = lu(k,1303) - lu(k,948) * lu(k,1298) - lu(k,1304) = lu(k,1304) - lu(k,949) * lu(k,1298) - lu(k,1305) = lu(k,1305) - lu(k,950) * lu(k,1298) - lu(k,1306) = lu(k,1306) - lu(k,951) * lu(k,1298) - lu(k,1307) = lu(k,1307) - lu(k,952) * lu(k,1298) - lu(k,966) = 1._r8 / lu(k,966) - lu(k,967) = lu(k,967) * lu(k,966) - lu(k,968) = lu(k,968) * lu(k,966) - lu(k,969) = lu(k,969) * lu(k,966) - lu(k,970) = lu(k,970) * lu(k,966) - lu(k,971) = lu(k,971) * lu(k,966) - lu(k,972) = lu(k,972) * lu(k,966) - lu(k,973) = lu(k,973) * lu(k,966) - lu(k,974) = lu(k,974) * lu(k,966) - lu(k,1011) = lu(k,1011) - lu(k,967) * lu(k,1010) - lu(k,1012) = lu(k,1012) - lu(k,968) * lu(k,1010) - lu(k,1013) = lu(k,1013) - lu(k,969) * lu(k,1010) - lu(k,1014) = lu(k,1014) - lu(k,970) * lu(k,1010) - lu(k,1015) = lu(k,1015) - lu(k,971) * lu(k,1010) - lu(k,1016) = lu(k,1016) - lu(k,972) * lu(k,1010) - lu(k,1017) = lu(k,1017) - lu(k,973) * lu(k,1010) - lu(k,1018) = lu(k,1018) - lu(k,974) * lu(k,1010) - lu(k,1047) = lu(k,1047) - lu(k,967) * lu(k,1046) - lu(k,1048) = lu(k,1048) - lu(k,968) * lu(k,1046) - lu(k,1049) = lu(k,1049) - lu(k,969) * lu(k,1046) - lu(k,1050) = lu(k,1050) - lu(k,970) * lu(k,1046) - lu(k,1051) = lu(k,1051) - lu(k,971) * lu(k,1046) - lu(k,1052) = lu(k,1052) - lu(k,972) * lu(k,1046) - lu(k,1053) = lu(k,1053) - lu(k,973) * lu(k,1046) - lu(k,1054) = lu(k,1054) - lu(k,974) * lu(k,1046) - lu(k,1084) = lu(k,1084) - lu(k,967) * lu(k,1083) - lu(k,1085) = lu(k,1085) - lu(k,968) * lu(k,1083) - lu(k,1086) = lu(k,1086) - lu(k,969) * lu(k,1083) - lu(k,1087) = lu(k,1087) - lu(k,970) * lu(k,1083) - lu(k,1088) = lu(k,1088) - lu(k,971) * lu(k,1083) - lu(k,1089) = lu(k,1089) - lu(k,972) * lu(k,1083) - lu(k,1090) = lu(k,1090) - lu(k,973) * lu(k,1083) - lu(k,1091) = lu(k,1091) - lu(k,974) * lu(k,1083) - lu(k,1169) = lu(k,1169) - lu(k,967) * lu(k,1168) - lu(k,1170) = lu(k,1170) - lu(k,968) * lu(k,1168) - lu(k,1171) = lu(k,1171) - lu(k,969) * lu(k,1168) - lu(k,1172) = lu(k,1172) - lu(k,970) * lu(k,1168) - lu(k,1173) = lu(k,1173) - lu(k,971) * lu(k,1168) - lu(k,1174) = lu(k,1174) - lu(k,972) * lu(k,1168) - lu(k,1175) = lu(k,1175) - lu(k,973) * lu(k,1168) - lu(k,1176) = lu(k,1176) - lu(k,974) * lu(k,1168) - lu(k,1213) = lu(k,1213) - lu(k,967) * lu(k,1212) - lu(k,1214) = lu(k,1214) - lu(k,968) * lu(k,1212) - lu(k,1215) = lu(k,1215) - lu(k,969) * lu(k,1212) - lu(k,1216) = lu(k,1216) - lu(k,970) * lu(k,1212) - lu(k,1217) = lu(k,1217) - lu(k,971) * lu(k,1212) - lu(k,1218) = lu(k,1218) - lu(k,972) * lu(k,1212) - lu(k,1219) = lu(k,1219) - lu(k,973) * lu(k,1212) - lu(k,1220) = lu(k,1220) - lu(k,974) * lu(k,1212) - lu(k,1238) = lu(k,1238) - lu(k,967) * lu(k,1237) - lu(k,1239) = lu(k,1239) - lu(k,968) * lu(k,1237) - lu(k,1240) = lu(k,1240) - lu(k,969) * lu(k,1237) - lu(k,1241) = lu(k,1241) - lu(k,970) * lu(k,1237) - lu(k,1242) = lu(k,1242) - lu(k,971) * lu(k,1237) - lu(k,1243) = lu(k,1243) - lu(k,972) * lu(k,1237) - lu(k,1244) = lu(k,1244) - lu(k,973) * lu(k,1237) - lu(k,1245) = lu(k,1245) - lu(k,974) * lu(k,1237) - lu(k,1280) = lu(k,1280) - lu(k,967) * lu(k,1279) - lu(k,1281) = lu(k,1281) - lu(k,968) * lu(k,1279) - lu(k,1282) = lu(k,1282) - lu(k,969) * lu(k,1279) - lu(k,1283) = lu(k,1283) - lu(k,970) * lu(k,1279) - lu(k,1284) = lu(k,1284) - lu(k,971) * lu(k,1279) - lu(k,1285) = lu(k,1285) - lu(k,972) * lu(k,1279) - lu(k,1286) = lu(k,1286) - lu(k,973) * lu(k,1279) - lu(k,1287) = lu(k,1287) - lu(k,974) * lu(k,1279) - lu(k,1300) = lu(k,1300) - lu(k,967) * lu(k,1299) - lu(k,1301) = lu(k,1301) - lu(k,968) * lu(k,1299) - lu(k,1302) = lu(k,1302) - lu(k,969) * lu(k,1299) - lu(k,1303) = lu(k,1303) - lu(k,970) * lu(k,1299) - lu(k,1304) = lu(k,1304) - lu(k,971) * lu(k,1299) - lu(k,1305) = lu(k,1305) - lu(k,972) * lu(k,1299) - lu(k,1306) = lu(k,1306) - lu(k,973) * lu(k,1299) - lu(k,1307) = lu(k,1307) - lu(k,974) * lu(k,1299) - lu(k,1011) = 1._r8 / lu(k,1011) - lu(k,1012) = lu(k,1012) * lu(k,1011) - lu(k,1013) = lu(k,1013) * lu(k,1011) - lu(k,1014) = lu(k,1014) * lu(k,1011) - lu(k,1015) = lu(k,1015) * lu(k,1011) - lu(k,1016) = lu(k,1016) * lu(k,1011) - lu(k,1017) = lu(k,1017) * lu(k,1011) - lu(k,1018) = lu(k,1018) * lu(k,1011) - lu(k,1048) = lu(k,1048) - lu(k,1012) * lu(k,1047) - lu(k,1049) = lu(k,1049) - lu(k,1013) * lu(k,1047) - lu(k,1050) = lu(k,1050) - lu(k,1014) * lu(k,1047) - lu(k,1051) = lu(k,1051) - lu(k,1015) * lu(k,1047) - lu(k,1052) = lu(k,1052) - lu(k,1016) * lu(k,1047) - lu(k,1053) = lu(k,1053) - lu(k,1017) * lu(k,1047) - lu(k,1054) = lu(k,1054) - lu(k,1018) * lu(k,1047) - lu(k,1085) = lu(k,1085) - lu(k,1012) * lu(k,1084) - lu(k,1086) = lu(k,1086) - lu(k,1013) * lu(k,1084) - lu(k,1087) = lu(k,1087) - lu(k,1014) * lu(k,1084) - lu(k,1088) = lu(k,1088) - lu(k,1015) * lu(k,1084) - lu(k,1089) = lu(k,1089) - lu(k,1016) * lu(k,1084) - lu(k,1090) = lu(k,1090) - lu(k,1017) * lu(k,1084) - lu(k,1091) = lu(k,1091) - lu(k,1018) * lu(k,1084) - lu(k,1170) = lu(k,1170) - lu(k,1012) * lu(k,1169) - lu(k,1171) = lu(k,1171) - lu(k,1013) * lu(k,1169) - lu(k,1172) = lu(k,1172) - lu(k,1014) * lu(k,1169) - lu(k,1173) = lu(k,1173) - lu(k,1015) * lu(k,1169) - lu(k,1174) = lu(k,1174) - lu(k,1016) * lu(k,1169) - lu(k,1175) = lu(k,1175) - lu(k,1017) * lu(k,1169) - lu(k,1176) = lu(k,1176) - lu(k,1018) * lu(k,1169) - lu(k,1214) = lu(k,1214) - lu(k,1012) * lu(k,1213) - lu(k,1215) = lu(k,1215) - lu(k,1013) * lu(k,1213) - lu(k,1216) = lu(k,1216) - lu(k,1014) * lu(k,1213) - lu(k,1217) = lu(k,1217) - lu(k,1015) * lu(k,1213) - lu(k,1218) = lu(k,1218) - lu(k,1016) * lu(k,1213) - lu(k,1219) = lu(k,1219) - lu(k,1017) * lu(k,1213) - lu(k,1220) = lu(k,1220) - lu(k,1018) * lu(k,1213) - lu(k,1239) = lu(k,1239) - lu(k,1012) * lu(k,1238) - lu(k,1240) = lu(k,1240) - lu(k,1013) * lu(k,1238) - lu(k,1241) = lu(k,1241) - lu(k,1014) * lu(k,1238) - lu(k,1242) = lu(k,1242) - lu(k,1015) * lu(k,1238) - lu(k,1243) = lu(k,1243) - lu(k,1016) * lu(k,1238) - lu(k,1244) = lu(k,1244) - lu(k,1017) * lu(k,1238) - lu(k,1245) = lu(k,1245) - lu(k,1018) * lu(k,1238) - lu(k,1281) = lu(k,1281) - lu(k,1012) * lu(k,1280) - lu(k,1282) = lu(k,1282) - lu(k,1013) * lu(k,1280) - lu(k,1283) = lu(k,1283) - lu(k,1014) * lu(k,1280) - lu(k,1284) = lu(k,1284) - lu(k,1015) * lu(k,1280) - lu(k,1285) = lu(k,1285) - lu(k,1016) * lu(k,1280) - lu(k,1286) = lu(k,1286) - lu(k,1017) * lu(k,1280) - lu(k,1287) = lu(k,1287) - lu(k,1018) * lu(k,1280) - lu(k,1301) = lu(k,1301) - lu(k,1012) * lu(k,1300) - lu(k,1302) = lu(k,1302) - lu(k,1013) * lu(k,1300) - lu(k,1303) = lu(k,1303) - lu(k,1014) * lu(k,1300) - lu(k,1304) = lu(k,1304) - lu(k,1015) * lu(k,1300) - lu(k,1305) = lu(k,1305) - lu(k,1016) * lu(k,1300) - lu(k,1306) = lu(k,1306) - lu(k,1017) * lu(k,1300) - lu(k,1307) = lu(k,1307) - lu(k,1018) * lu(k,1300) - lu(k,1048) = 1._r8 / lu(k,1048) - lu(k,1049) = lu(k,1049) * lu(k,1048) - lu(k,1050) = lu(k,1050) * lu(k,1048) - lu(k,1051) = lu(k,1051) * lu(k,1048) - lu(k,1052) = lu(k,1052) * lu(k,1048) - lu(k,1053) = lu(k,1053) * lu(k,1048) - lu(k,1054) = lu(k,1054) * lu(k,1048) - lu(k,1086) = lu(k,1086) - lu(k,1049) * lu(k,1085) - lu(k,1087) = lu(k,1087) - lu(k,1050) * lu(k,1085) - lu(k,1088) = lu(k,1088) - lu(k,1051) * lu(k,1085) - lu(k,1089) = lu(k,1089) - lu(k,1052) * lu(k,1085) - lu(k,1090) = lu(k,1090) - lu(k,1053) * lu(k,1085) - lu(k,1091) = lu(k,1091) - lu(k,1054) * lu(k,1085) - lu(k,1171) = lu(k,1171) - lu(k,1049) * lu(k,1170) - lu(k,1172) = lu(k,1172) - lu(k,1050) * lu(k,1170) - lu(k,1173) = lu(k,1173) - lu(k,1051) * lu(k,1170) - lu(k,1174) = lu(k,1174) - lu(k,1052) * lu(k,1170) - lu(k,1175) = lu(k,1175) - lu(k,1053) * lu(k,1170) - lu(k,1176) = lu(k,1176) - lu(k,1054) * lu(k,1170) - lu(k,1215) = lu(k,1215) - lu(k,1049) * lu(k,1214) - lu(k,1216) = lu(k,1216) - lu(k,1050) * lu(k,1214) - lu(k,1217) = lu(k,1217) - lu(k,1051) * lu(k,1214) - lu(k,1218) = lu(k,1218) - lu(k,1052) * lu(k,1214) - lu(k,1219) = lu(k,1219) - lu(k,1053) * lu(k,1214) - lu(k,1220) = lu(k,1220) - lu(k,1054) * lu(k,1214) - lu(k,1240) = lu(k,1240) - lu(k,1049) * lu(k,1239) - lu(k,1241) = lu(k,1241) - lu(k,1050) * lu(k,1239) - lu(k,1242) = lu(k,1242) - lu(k,1051) * lu(k,1239) - lu(k,1243) = lu(k,1243) - lu(k,1052) * lu(k,1239) - lu(k,1244) = lu(k,1244) - lu(k,1053) * lu(k,1239) - lu(k,1245) = lu(k,1245) - lu(k,1054) * lu(k,1239) - lu(k,1282) = lu(k,1282) - lu(k,1049) * lu(k,1281) - lu(k,1283) = lu(k,1283) - lu(k,1050) * lu(k,1281) - lu(k,1284) = lu(k,1284) - lu(k,1051) * lu(k,1281) - lu(k,1285) = lu(k,1285) - lu(k,1052) * lu(k,1281) - lu(k,1286) = lu(k,1286) - lu(k,1053) * lu(k,1281) - lu(k,1287) = lu(k,1287) - lu(k,1054) * lu(k,1281) - lu(k,1302) = lu(k,1302) - lu(k,1049) * lu(k,1301) - lu(k,1303) = lu(k,1303) - lu(k,1050) * lu(k,1301) - lu(k,1304) = lu(k,1304) - lu(k,1051) * lu(k,1301) - lu(k,1305) = lu(k,1305) - lu(k,1052) * lu(k,1301) - lu(k,1306) = lu(k,1306) - lu(k,1053) * lu(k,1301) - lu(k,1307) = lu(k,1307) - lu(k,1054) * lu(k,1301) - lu(k,1086) = 1._r8 / lu(k,1086) - lu(k,1087) = lu(k,1087) * lu(k,1086) - lu(k,1088) = lu(k,1088) * lu(k,1086) - lu(k,1089) = lu(k,1089) * lu(k,1086) - lu(k,1090) = lu(k,1090) * lu(k,1086) - lu(k,1091) = lu(k,1091) * lu(k,1086) - lu(k,1172) = lu(k,1172) - lu(k,1087) * lu(k,1171) - lu(k,1173) = lu(k,1173) - lu(k,1088) * lu(k,1171) - lu(k,1174) = lu(k,1174) - lu(k,1089) * lu(k,1171) - lu(k,1175) = lu(k,1175) - lu(k,1090) * lu(k,1171) - lu(k,1176) = lu(k,1176) - lu(k,1091) * lu(k,1171) - lu(k,1216) = lu(k,1216) - lu(k,1087) * lu(k,1215) - lu(k,1217) = lu(k,1217) - lu(k,1088) * lu(k,1215) - lu(k,1218) = lu(k,1218) - lu(k,1089) * lu(k,1215) - lu(k,1219) = lu(k,1219) - lu(k,1090) * lu(k,1215) - lu(k,1220) = lu(k,1220) - lu(k,1091) * lu(k,1215) - lu(k,1241) = lu(k,1241) - lu(k,1087) * lu(k,1240) - lu(k,1242) = lu(k,1242) - lu(k,1088) * lu(k,1240) - lu(k,1243) = lu(k,1243) - lu(k,1089) * lu(k,1240) - lu(k,1244) = lu(k,1244) - lu(k,1090) * lu(k,1240) - lu(k,1245) = lu(k,1245) - lu(k,1091) * lu(k,1240) - lu(k,1283) = lu(k,1283) - lu(k,1087) * lu(k,1282) - lu(k,1284) = lu(k,1284) - lu(k,1088) * lu(k,1282) - lu(k,1285) = lu(k,1285) - lu(k,1089) * lu(k,1282) - lu(k,1286) = lu(k,1286) - lu(k,1090) * lu(k,1282) - lu(k,1287) = lu(k,1287) - lu(k,1091) * lu(k,1282) - lu(k,1303) = lu(k,1303) - lu(k,1087) * lu(k,1302) - lu(k,1304) = lu(k,1304) - lu(k,1088) * lu(k,1302) - lu(k,1305) = lu(k,1305) - lu(k,1089) * lu(k,1302) - lu(k,1306) = lu(k,1306) - lu(k,1090) * lu(k,1302) - lu(k,1307) = lu(k,1307) - lu(k,1091) * lu(k,1302) - end do - end subroutine lu_fac17 - subroutine lu_fac18( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1172) = 1._r8 / lu(k,1172) - lu(k,1173) = lu(k,1173) * lu(k,1172) - lu(k,1174) = lu(k,1174) * lu(k,1172) - lu(k,1175) = lu(k,1175) * lu(k,1172) - lu(k,1176) = lu(k,1176) * lu(k,1172) - lu(k,1217) = lu(k,1217) - lu(k,1173) * lu(k,1216) - lu(k,1218) = lu(k,1218) - lu(k,1174) * lu(k,1216) - lu(k,1219) = lu(k,1219) - lu(k,1175) * lu(k,1216) - lu(k,1220) = lu(k,1220) - lu(k,1176) * lu(k,1216) - lu(k,1242) = lu(k,1242) - lu(k,1173) * lu(k,1241) - lu(k,1243) = lu(k,1243) - lu(k,1174) * lu(k,1241) - lu(k,1244) = lu(k,1244) - lu(k,1175) * lu(k,1241) - lu(k,1245) = lu(k,1245) - lu(k,1176) * lu(k,1241) - lu(k,1284) = lu(k,1284) - lu(k,1173) * lu(k,1283) - lu(k,1285) = lu(k,1285) - lu(k,1174) * lu(k,1283) - lu(k,1286) = lu(k,1286) - lu(k,1175) * lu(k,1283) - lu(k,1287) = lu(k,1287) - lu(k,1176) * lu(k,1283) - lu(k,1304) = lu(k,1304) - lu(k,1173) * lu(k,1303) - lu(k,1305) = lu(k,1305) - lu(k,1174) * lu(k,1303) - lu(k,1306) = lu(k,1306) - lu(k,1175) * lu(k,1303) - lu(k,1307) = lu(k,1307) - lu(k,1176) * lu(k,1303) - lu(k,1217) = 1._r8 / lu(k,1217) - lu(k,1218) = lu(k,1218) * lu(k,1217) - lu(k,1219) = lu(k,1219) * lu(k,1217) - lu(k,1220) = lu(k,1220) * lu(k,1217) - lu(k,1243) = lu(k,1243) - lu(k,1218) * lu(k,1242) - lu(k,1244) = lu(k,1244) - lu(k,1219) * lu(k,1242) - lu(k,1245) = lu(k,1245) - lu(k,1220) * lu(k,1242) - lu(k,1285) = lu(k,1285) - lu(k,1218) * lu(k,1284) - lu(k,1286) = lu(k,1286) - lu(k,1219) * lu(k,1284) - lu(k,1287) = lu(k,1287) - lu(k,1220) * lu(k,1284) - lu(k,1305) = lu(k,1305) - lu(k,1218) * lu(k,1304) - lu(k,1306) = lu(k,1306) - lu(k,1219) * lu(k,1304) - lu(k,1307) = lu(k,1307) - lu(k,1220) * lu(k,1304) - lu(k,1243) = 1._r8 / lu(k,1243) - lu(k,1244) = lu(k,1244) * lu(k,1243) - lu(k,1245) = lu(k,1245) * lu(k,1243) - lu(k,1286) = lu(k,1286) - lu(k,1244) * lu(k,1285) - lu(k,1287) = lu(k,1287) - lu(k,1245) * lu(k,1285) - lu(k,1306) = lu(k,1306) - lu(k,1244) * lu(k,1305) - lu(k,1307) = lu(k,1307) - lu(k,1245) * lu(k,1305) - lu(k,1286) = 1._r8 / lu(k,1286) - lu(k,1287) = lu(k,1287) * lu(k,1286) - lu(k,1307) = lu(k,1307) - lu(k,1287) * lu(k,1306) - lu(k,1307) = 1._r8 / lu(k,1307) - end do - end subroutine lu_fac18 - subroutine lu_fac( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) - call lu_fac01( avec_len, lu ) - call lu_fac02( avec_len, lu ) - call lu_fac03( avec_len, lu ) - call lu_fac04( avec_len, lu ) - call lu_fac05( avec_len, lu ) - call lu_fac06( avec_len, lu ) - call lu_fac07( avec_len, lu ) - call lu_fac08( avec_len, lu ) - call lu_fac09( avec_len, lu ) - call lu_fac10( avec_len, lu ) - call lu_fac11( avec_len, lu ) - call lu_fac12( avec_len, lu ) - call lu_fac13( avec_len, lu ) - call lu_fac14( avec_len, lu ) - call lu_fac15( avec_len, lu ) - call lu_fac16( avec_len, lu ) - call lu_fac17( avec_len, lu ) - call lu_fac18( avec_len, lu ) - end subroutine lu_fac - end module mo_lu_factor diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_solve.F90 deleted file mode 100644 index fa84d27128..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_lu_solve.F90 +++ /dev/null @@ -1,1495 +0,0 @@ - module mo_lu_solve - use chem_mods, only: veclen - private - public :: lu_slv - contains - subroutine lu_slv01( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,124) = b(k,124) - lu(k,10) * b(k,9) - b(k,32) = b(k,32) - lu(k,33) * b(k,31) - b(k,128) = b(k,128) - lu(k,37) * b(k,34) - b(k,137) = b(k,137) - lu(k,38) * b(k,34) - b(k,98) = b(k,98) - lu(k,40) * b(k,35) - b(k,135) = b(k,135) - lu(k,41) * b(k,35) - b(k,126) = b(k,126) - lu(k,43) * b(k,36) - b(k,134) = b(k,134) - lu(k,44) * b(k,36) - b(k,135) = b(k,135) - lu(k,46) * b(k,37) - b(k,139) = b(k,139) - lu(k,47) * b(k,37) - b(k,128) = b(k,128) - lu(k,49) * b(k,38) - b(k,134) = b(k,134) - lu(k,50) * b(k,38) - b(k,126) = b(k,126) - lu(k,52) * b(k,39) - b(k,134) = b(k,134) - lu(k,53) * b(k,39) - b(k,128) = b(k,128) - lu(k,55) * b(k,40) - b(k,134) = b(k,134) - lu(k,56) * b(k,40) - b(k,128) = b(k,128) - lu(k,58) * b(k,41) - b(k,134) = b(k,134) - lu(k,59) * b(k,41) - b(k,128) = b(k,128) - lu(k,61) * b(k,42) - b(k,134) = b(k,134) - lu(k,62) * b(k,42) - b(k,128) = b(k,128) - lu(k,64) * b(k,43) - b(k,134) = b(k,134) - lu(k,65) * b(k,43) - b(k,128) = b(k,128) - lu(k,67) * b(k,44) - b(k,134) = b(k,134) - lu(k,68) * b(k,44) - b(k,98) = b(k,98) - lu(k,70) * b(k,45) - b(k,135) = b(k,135) - lu(k,71) * b(k,45) - b(k,139) = b(k,139) - lu(k,72) * b(k,45) - b(k,126) = b(k,126) - lu(k,74) * b(k,46) - b(k,128) = b(k,128) - lu(k,75) * b(k,46) - b(k,134) = b(k,134) - lu(k,76) * b(k,46) - b(k,128) = b(k,128) - lu(k,78) * b(k,47) - b(k,135) = b(k,135) - lu(k,79) * b(k,47) - b(k,139) = b(k,139) - lu(k,80) * b(k,47) - b(k,59) = b(k,59) - lu(k,82) * b(k,48) - b(k,135) = b(k,135) - lu(k,83) * b(k,48) - b(k,58) = b(k,58) - lu(k,85) * b(k,49) - b(k,139) = b(k,139) - lu(k,86) * b(k,49) - b(k,128) = b(k,128) - lu(k,88) * b(k,50) - b(k,128) = b(k,128) - lu(k,90) * b(k,51) - b(k,134) = b(k,134) - lu(k,91) * b(k,51) - b(k,135) = b(k,135) - lu(k,92) * b(k,51) - b(k,128) = b(k,128) - lu(k,94) * b(k,52) - b(k,134) = b(k,134) - lu(k,95) * b(k,52) - b(k,135) = b(k,135) - lu(k,96) * b(k,52) - b(k,134) = b(k,134) - lu(k,98) * b(k,53) - b(k,138) = b(k,138) - lu(k,99) * b(k,53) - b(k,115) = b(k,115) - lu(k,101) * b(k,54) - b(k,135) = b(k,135) - lu(k,102) * b(k,54) - b(k,128) = b(k,128) - lu(k,104) * b(k,55) - b(k,134) = b(k,134) - lu(k,105) * b(k,55) - b(k,135) = b(k,135) - lu(k,106) * b(k,55) - b(k,139) = b(k,139) - lu(k,107) * b(k,55) - b(k,126) = b(k,126) - lu(k,109) * b(k,56) - b(k,128) = b(k,128) - lu(k,110) * b(k,56) - b(k,113) = b(k,113) - lu(k,112) * b(k,57) - b(k,130) = b(k,130) - lu(k,113) * b(k,57) - b(k,135) = b(k,135) - lu(k,114) * b(k,57) - b(k,102) = b(k,102) - lu(k,117) * b(k,58) - b(k,129) = b(k,129) - lu(k,118) * b(k,58) - b(k,139) = b(k,139) - lu(k,119) * b(k,58) - b(k,105) = b(k,105) - lu(k,121) * b(k,59) - b(k,125) = b(k,125) - lu(k,122) * b(k,59) - b(k,130) = b(k,130) - lu(k,123) * b(k,59) - b(k,101) = b(k,101) - lu(k,125) * b(k,60) - b(k,129) = b(k,129) - lu(k,126) * b(k,60) - b(k,133) = b(k,133) - lu(k,127) * b(k,60) - b(k,136) = b(k,136) - lu(k,128) * b(k,60) - b(k,138) = b(k,138) - lu(k,129) * b(k,60) - b(k,96) = b(k,96) - lu(k,131) * b(k,61) - b(k,127) = b(k,127) - lu(k,132) * b(k,61) - b(k,128) = b(k,128) - lu(k,133) * b(k,61) - b(k,135) = b(k,135) - lu(k,134) * b(k,61) - b(k,139) = b(k,139) - lu(k,135) * b(k,61) - b(k,101) = b(k,101) - lu(k,137) * b(k,62) - b(k,102) = b(k,102) - lu(k,138) * b(k,62) - b(k,130) = b(k,130) - lu(k,139) * b(k,62) - b(k,135) = b(k,135) - lu(k,140) * b(k,62) - b(k,136) = b(k,136) - lu(k,141) * b(k,62) - b(k,119) = b(k,119) - lu(k,143) * b(k,63) - b(k,120) = b(k,120) - lu(k,144) * b(k,63) - b(k,130) = b(k,130) - lu(k,145) * b(k,63) - b(k,135) = b(k,135) - lu(k,146) * b(k,63) - b(k,96) = b(k,96) - lu(k,148) * b(k,64) - b(k,113) = b(k,113) - lu(k,149) * b(k,64) - b(k,130) = b(k,130) - lu(k,150) * b(k,64) - b(k,135) = b(k,135) - lu(k,151) * b(k,64) - b(k,102) = b(k,102) - lu(k,153) * b(k,65) - b(k,117) = b(k,117) - lu(k,154) * b(k,65) - b(k,129) = b(k,129) - lu(k,155) * b(k,65) - b(k,137) = b(k,137) - lu(k,156) * b(k,65) - b(k,115) = b(k,115) - lu(k,158) * b(k,66) - b(k,135) = b(k,135) - lu(k,159) * b(k,66) - b(k,78) = b(k,78) - lu(k,161) * b(k,67) - b(k,102) = b(k,102) - lu(k,162) * b(k,67) - b(k,110) = b(k,110) - lu(k,163) * b(k,67) - b(k,117) = b(k,117) - lu(k,164) * b(k,67) - b(k,124) = b(k,124) - lu(k,165) * b(k,67) - b(k,129) = b(k,129) - lu(k,166) * b(k,67) - b(k,135) = b(k,135) - lu(k,167) * b(k,67) - b(k,110) = b(k,110) - lu(k,169) * b(k,68) - b(k,123) = b(k,123) - lu(k,170) * b(k,68) - b(k,127) = b(k,127) - lu(k,171) * b(k,68) - b(k,128) = b(k,128) - lu(k,172) * b(k,68) - b(k,130) = b(k,130) - lu(k,173) * b(k,68) - b(k,135) = b(k,135) - lu(k,174) * b(k,68) - b(k,139) = b(k,139) - lu(k,175) * b(k,68) - b(k,130) = b(k,130) - lu(k,177) * b(k,69) - b(k,133) = b(k,133) - lu(k,178) * b(k,69) - b(k,135) = b(k,135) - lu(k,179) * b(k,69) - b(k,136) = b(k,136) - lu(k,180) * b(k,69) - b(k,139) = b(k,139) - lu(k,181) * b(k,69) - b(k,126) = b(k,126) - lu(k,183) * b(k,70) - b(k,127) = b(k,127) - lu(k,184) * b(k,70) - b(k,128) = b(k,128) - lu(k,185) * b(k,70) - b(k,134) = b(k,134) - lu(k,186) * b(k,70) - b(k,135) = b(k,135) - lu(k,187) * b(k,70) - b(k,95) = b(k,95) - lu(k,189) * b(k,71) - b(k,98) = b(k,98) - lu(k,190) * b(k,71) - b(k,130) = b(k,130) - lu(k,191) * b(k,71) - b(k,135) = b(k,135) - lu(k,192) * b(k,71) - b(k,139) = b(k,139) - lu(k,193) * b(k,71) - b(k,116) = b(k,116) - lu(k,195) * b(k,72) - b(k,121) = b(k,121) - lu(k,196) * b(k,72) - b(k,125) = b(k,125) - lu(k,197) * b(k,72) - b(k,133) = b(k,133) - lu(k,198) * b(k,72) - b(k,135) = b(k,135) - lu(k,199) * b(k,72) - b(k,123) = b(k,123) - lu(k,201) * b(k,73) - b(k,124) = b(k,124) - lu(k,202) * b(k,73) - b(k,125) = b(k,125) - lu(k,203) * b(k,73) - b(k,135) = b(k,135) - lu(k,204) * b(k,73) - b(k,139) = b(k,139) - lu(k,205) * b(k,73) - b(k,108) = b(k,108) - lu(k,207) * b(k,74) - b(k,121) = b(k,121) - lu(k,208) * b(k,74) - b(k,125) = b(k,125) - lu(k,209) * b(k,74) - b(k,135) = b(k,135) - lu(k,210) * b(k,74) - b(k,139) = b(k,139) - lu(k,211) * b(k,74) - b(k,124) = b(k,124) - lu(k,214) * b(k,75) - b(k,129) = b(k,129) - lu(k,215) * b(k,75) - b(k,133) = b(k,133) - lu(k,216) * b(k,75) - b(k,134) = b(k,134) - lu(k,217) * b(k,75) - b(k,135) = b(k,135) - lu(k,218) * b(k,75) - b(k,138) = b(k,138) - lu(k,219) * b(k,75) - b(k,91) = b(k,91) - lu(k,221) * b(k,76) - b(k,110) = b(k,110) - lu(k,222) * b(k,76) - b(k,125) = b(k,125) - lu(k,223) * b(k,76) - b(k,130) = b(k,130) - lu(k,224) * b(k,76) - b(k,132) = b(k,132) - lu(k,225) * b(k,76) - b(k,135) = b(k,135) - lu(k,226) * b(k,76) - b(k,126) = b(k,126) - lu(k,228) * b(k,77) - b(k,127) = b(k,127) - lu(k,229) * b(k,77) - b(k,128) = b(k,128) - lu(k,230) * b(k,77) - b(k,134) = b(k,134) - lu(k,231) * b(k,77) - b(k,135) = b(k,135) - lu(k,232) * b(k,77) - b(k,139) = b(k,139) - lu(k,233) * b(k,77) - b(k,117) = b(k,117) - lu(k,235) * b(k,78) - b(k,124) = b(k,124) - lu(k,236) * b(k,78) - b(k,129) = b(k,129) - lu(k,237) * b(k,78) - b(k,132) = b(k,132) - lu(k,238) * b(k,78) - b(k,135) = b(k,135) - lu(k,239) * b(k,78) - b(k,114) = b(k,114) - lu(k,241) * b(k,79) - b(k,115) = b(k,115) - lu(k,242) * b(k,79) - b(k,118) = b(k,118) - lu(k,243) * b(k,79) - b(k,122) = b(k,122) - lu(k,244) * b(k,79) - b(k,125) = b(k,125) - lu(k,245) * b(k,79) - b(k,130) = b(k,130) - lu(k,246) * b(k,79) - b(k,135) = b(k,135) - lu(k,247) * b(k,79) - b(k,125) = b(k,125) - lu(k,249) * b(k,80) - b(k,130) = b(k,130) - lu(k,250) * b(k,80) - b(k,135) = b(k,135) - lu(k,251) * b(k,80) - b(k,90) = b(k,90) - lu(k,253) * b(k,81) - b(k,121) = b(k,121) - lu(k,254) * b(k,81) - b(k,123) = b(k,123) - lu(k,255) * b(k,81) - b(k,125) = b(k,125) - lu(k,256) * b(k,81) - b(k,133) = b(k,133) - lu(k,257) * b(k,81) - b(k,135) = b(k,135) - lu(k,258) * b(k,81) - b(k,136) = b(k,136) - lu(k,259) * b(k,81) - b(k,93) = b(k,93) - lu(k,261) * b(k,82) - b(k,109) = b(k,109) - lu(k,262) * b(k,82) - b(k,113) = b(k,113) - lu(k,263) * b(k,82) - b(k,125) = b(k,125) - lu(k,264) * b(k,82) - b(k,130) = b(k,130) - lu(k,265) * b(k,82) - b(k,135) = b(k,135) - lu(k,266) * b(k,82) - b(k,139) = b(k,139) - lu(k,267) * b(k,82) - b(k,94) = b(k,94) - lu(k,269) * b(k,83) - b(k,101) = b(k,101) - lu(k,270) * b(k,83) - b(k,126) = b(k,126) - lu(k,271) * b(k,83) - b(k,129) = b(k,129) - lu(k,272) * b(k,83) - b(k,131) = b(k,131) - lu(k,273) * b(k,83) - b(k,133) = b(k,133) - lu(k,274) * b(k,83) - b(k,136) = b(k,136) - lu(k,275) * b(k,83) - b(k,127) = b(k,127) - lu(k,277) * b(k,84) - b(k,128) = b(k,128) - lu(k,278) * b(k,84) - b(k,129) = b(k,129) - lu(k,279) * b(k,84) - b(k,130) = b(k,130) - lu(k,280) * b(k,84) - b(k,135) = b(k,135) - lu(k,281) * b(k,84) - b(k,139) = b(k,139) - lu(k,282) * b(k,84) - b(k,90) = b(k,90) - lu(k,284) * b(k,85) - b(k,109) = b(k,109) - lu(k,285) * b(k,85) - b(k,120) = b(k,120) - lu(k,286) * b(k,85) - b(k,125) = b(k,125) - lu(k,287) * b(k,85) - b(k,130) = b(k,130) - lu(k,288) * b(k,85) - b(k,133) = b(k,133) - lu(k,289) * b(k,85) - b(k,135) = b(k,135) - lu(k,290) * b(k,85) - b(k,136) = b(k,136) - lu(k,291) * b(k,85) - end do - end subroutine lu_slv01 - subroutine lu_slv02( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,123) = b(k,123) - lu(k,293) * b(k,86) - b(k,126) = b(k,126) - lu(k,294) * b(k,86) - b(k,127) = b(k,127) - lu(k,295) * b(k,86) - b(k,128) = b(k,128) - lu(k,296) * b(k,86) - b(k,130) = b(k,130) - lu(k,297) * b(k,86) - b(k,134) = b(k,134) - lu(k,298) * b(k,86) - b(k,135) = b(k,135) - lu(k,299) * b(k,86) - b(k,139) = b(k,139) - lu(k,300) * b(k,86) - b(k,90) = b(k,90) - lu(k,302) * b(k,87) - b(k,121) = b(k,121) - lu(k,303) * b(k,87) - b(k,123) = b(k,123) - lu(k,304) * b(k,87) - b(k,125) = b(k,125) - lu(k,305) * b(k,87) - b(k,135) = b(k,135) - lu(k,306) * b(k,87) - b(k,139) = b(k,139) - lu(k,307) * b(k,87) - b(k,95) = b(k,95) - lu(k,309) * b(k,88) - b(k,114) = b(k,114) - lu(k,310) * b(k,88) - b(k,118) = b(k,118) - lu(k,311) * b(k,88) - b(k,122) = b(k,122) - lu(k,312) * b(k,88) - b(k,129) = b(k,129) - lu(k,313) * b(k,88) - b(k,132) = b(k,132) - lu(k,314) * b(k,88) - b(k,133) = b(k,133) - lu(k,315) * b(k,88) - b(k,135) = b(k,135) - lu(k,316) * b(k,88) - b(k,136) = b(k,136) - lu(k,317) * b(k,88) - b(k,90) = b(k,90) - lu(k,319) * b(k,89) - b(k,123) = b(k,123) - lu(k,320) * b(k,89) - b(k,135) = b(k,135) - lu(k,321) * b(k,89) - b(k,139) = b(k,139) - lu(k,322) * b(k,89) - b(k,110) = b(k,110) - lu(k,324) * b(k,90) - b(k,129) = b(k,129) - lu(k,325) * b(k,90) - b(k,105) = b(k,105) - lu(k,329) * b(k,91) - b(k,125) = b(k,125) - lu(k,330) * b(k,91) - b(k,130) = b(k,130) - lu(k,331) * b(k,91) - b(k,133) = b(k,133) - lu(k,332) * b(k,91) - b(k,135) = b(k,135) - lu(k,333) * b(k,91) - b(k,138) = b(k,138) - lu(k,334) * b(k,91) - b(k,110) = b(k,110) - lu(k,337) * b(k,92) - b(k,129) = b(k,129) - lu(k,338) * b(k,92) - b(k,130) = b(k,130) - lu(k,339) * b(k,92) - b(k,135) = b(k,135) - lu(k,340) * b(k,92) - b(k,109) = b(k,109) - lu(k,343) * b(k,93) - b(k,113) = b(k,113) - lu(k,344) * b(k,93) - b(k,125) = b(k,125) - lu(k,345) * b(k,93) - b(k,130) = b(k,130) - lu(k,346) * b(k,93) - b(k,133) = b(k,133) - lu(k,347) * b(k,93) - b(k,135) = b(k,135) - lu(k,348) * b(k,93) - b(k,138) = b(k,138) - lu(k,349) * b(k,93) - b(k,139) = b(k,139) - lu(k,350) * b(k,93) - b(k,126) = b(k,126) - lu(k,353) * b(k,94) - b(k,127) = b(k,127) - lu(k,354) * b(k,94) - b(k,128) = b(k,128) - lu(k,355) * b(k,94) - b(k,129) = b(k,129) - lu(k,356) * b(k,94) - b(k,131) = b(k,131) - lu(k,357) * b(k,94) - b(k,135) = b(k,135) - lu(k,358) * b(k,94) - b(k,139) = b(k,139) - lu(k,359) * b(k,94) - b(k,108) = b(k,108) - lu(k,361) * b(k,95) - b(k,121) = b(k,121) - lu(k,362) * b(k,95) - b(k,123) = b(k,123) - lu(k,363) * b(k,95) - b(k,135) = b(k,135) - lu(k,364) * b(k,95) - b(k,139) = b(k,139) - lu(k,365) * b(k,95) - b(k,113) = b(k,113) - lu(k,370) * b(k,96) - b(k,123) = b(k,123) - lu(k,371) * b(k,96) - b(k,125) = b(k,125) - lu(k,372) * b(k,96) - b(k,130) = b(k,130) - lu(k,373) * b(k,96) - b(k,133) = b(k,133) - lu(k,374) * b(k,96) - b(k,135) = b(k,135) - lu(k,375) * b(k,96) - b(k,138) = b(k,138) - lu(k,376) * b(k,96) - b(k,106) = b(k,106) - lu(k,378) * b(k,97) - b(k,114) = b(k,114) - lu(k,379) * b(k,97) - b(k,122) = b(k,122) - lu(k,380) * b(k,97) - b(k,125) = b(k,125) - lu(k,381) * b(k,97) - b(k,130) = b(k,130) - lu(k,382) * b(k,97) - b(k,133) = b(k,133) - lu(k,383) * b(k,97) - b(k,135) = b(k,135) - lu(k,384) * b(k,97) - b(k,136) = b(k,136) - lu(k,385) * b(k,97) - b(k,138) = b(k,138) - lu(k,386) * b(k,97) - b(k,108) = b(k,108) - lu(k,390) * b(k,98) - b(k,113) = b(k,113) - lu(k,391) * b(k,98) - b(k,121) = b(k,121) - lu(k,392) * b(k,98) - b(k,123) = b(k,123) - lu(k,393) * b(k,98) - b(k,125) = b(k,125) - lu(k,394) * b(k,98) - b(k,130) = b(k,130) - lu(k,395) * b(k,98) - b(k,133) = b(k,133) - lu(k,396) * b(k,98) - b(k,135) = b(k,135) - lu(k,397) * b(k,98) - b(k,138) = b(k,138) - lu(k,398) * b(k,98) - b(k,139) = b(k,139) - lu(k,399) * b(k,98) - b(k,127) = b(k,127) - lu(k,402) * b(k,99) - b(k,128) = b(k,128) - lu(k,403) * b(k,99) - b(k,129) = b(k,129) - lu(k,404) * b(k,99) - b(k,135) = b(k,135) - lu(k,405) * b(k,99) - b(k,137) = b(k,137) - lu(k,406) * b(k,99) - b(k,139) = b(k,139) - lu(k,407) * b(k,99) - b(k,124) = b(k,124) - lu(k,409) * b(k,100) - b(k,126) = b(k,126) - lu(k,410) * b(k,100) - b(k,129) = b(k,129) - lu(k,411) * b(k,100) - b(k,131) = b(k,131) - lu(k,412) * b(k,100) - b(k,134) = b(k,134) - lu(k,413) * b(k,100) - b(k,135) = b(k,135) - lu(k,414) * b(k,100) - b(k,139) = b(k,139) - lu(k,415) * b(k,100) - b(k,133) = b(k,133) - lu(k,417) * b(k,101) - b(k,135) = b(k,135) - lu(k,418) * b(k,101) - b(k,136) = b(k,136) - lu(k,419) * b(k,101) - b(k,139) = b(k,139) - lu(k,420) * b(k,101) - b(k,117) = b(k,117) - lu(k,423) * b(k,102) - b(k,129) = b(k,129) - lu(k,424) * b(k,102) - b(k,130) = b(k,130) - lu(k,425) * b(k,102) - b(k,135) = b(k,135) - lu(k,426) * b(k,102) - b(k,139) = b(k,139) - lu(k,427) * b(k,102) - b(k,106) = b(k,106) - lu(k,430) * b(k,103) - b(k,110) = b(k,110) - lu(k,431) * b(k,103) - b(k,112) = b(k,112) - lu(k,432) * b(k,103) - b(k,114) = b(k,114) - lu(k,433) * b(k,103) - b(k,118) = b(k,118) - lu(k,434) * b(k,103) - b(k,121) = b(k,121) - lu(k,435) * b(k,103) - b(k,122) = b(k,122) - lu(k,436) * b(k,103) - b(k,123) = b(k,123) - lu(k,437) * b(k,103) - b(k,125) = b(k,125) - lu(k,438) * b(k,103) - b(k,130) = b(k,130) - lu(k,439) * b(k,103) - b(k,132) = b(k,132) - lu(k,440) * b(k,103) - b(k,133) = b(k,133) - lu(k,441) * b(k,103) - b(k,135) = b(k,135) - lu(k,442) * b(k,103) - b(k,136) = b(k,136) - lu(k,443) * b(k,103) - b(k,138) = b(k,138) - lu(k,444) * b(k,103) - b(k,127) = b(k,127) - lu(k,449) * b(k,104) - b(k,128) = b(k,128) - lu(k,450) * b(k,104) - b(k,129) = b(k,129) - lu(k,451) * b(k,104) - b(k,133) = b(k,133) - lu(k,452) * b(k,104) - b(k,135) = b(k,135) - lu(k,453) * b(k,104) - b(k,136) = b(k,136) - lu(k,454) * b(k,104) - b(k,137) = b(k,137) - lu(k,455) * b(k,104) - b(k,139) = b(k,139) - lu(k,456) * b(k,104) - b(k,110) = b(k,110) - lu(k,460) * b(k,105) - b(k,125) = b(k,125) - lu(k,461) * b(k,105) - b(k,129) = b(k,129) - lu(k,462) * b(k,105) - b(k,130) = b(k,130) - lu(k,463) * b(k,105) - b(k,135) = b(k,135) - lu(k,464) * b(k,105) - b(k,110) = b(k,110) - lu(k,468) * b(k,106) - b(k,115) = b(k,115) - lu(k,469) * b(k,106) - b(k,125) = b(k,125) - lu(k,470) * b(k,106) - b(k,130) = b(k,130) - lu(k,471) * b(k,106) - b(k,133) = b(k,133) - lu(k,472) * b(k,106) - b(k,135) = b(k,135) - lu(k,473) * b(k,106) - b(k,136) = b(k,136) - lu(k,474) * b(k,106) - b(k,139) = b(k,139) - lu(k,475) * b(k,106) - b(k,110) = b(k,110) - lu(k,478) * b(k,107) - b(k,111) = b(k,111) - lu(k,479) * b(k,107) - b(k,123) = b(k,123) - lu(k,480) * b(k,107) - b(k,124) = b(k,124) - lu(k,481) * b(k,107) - b(k,125) = b(k,125) - lu(k,482) * b(k,107) - b(k,127) = b(k,127) - lu(k,483) * b(k,107) - b(k,128) = b(k,128) - lu(k,484) * b(k,107) - b(k,129) = b(k,129) - lu(k,485) * b(k,107) - b(k,130) = b(k,130) - lu(k,486) * b(k,107) - b(k,134) = b(k,134) - lu(k,487) * b(k,107) - b(k,135) = b(k,135) - lu(k,488) * b(k,107) - b(k,139) = b(k,139) - lu(k,489) * b(k,107) - b(k,109) = b(k,109) - lu(k,493) * b(k,108) - b(k,116) = b(k,116) - lu(k,494) * b(k,108) - b(k,121) = b(k,121) - lu(k,495) * b(k,108) - b(k,123) = b(k,123) - lu(k,496) * b(k,108) - b(k,125) = b(k,125) - lu(k,497) * b(k,108) - b(k,130) = b(k,130) - lu(k,498) * b(k,108) - b(k,133) = b(k,133) - lu(k,499) * b(k,108) - b(k,135) = b(k,135) - lu(k,500) * b(k,108) - b(k,138) = b(k,138) - lu(k,501) * b(k,108) - b(k,139) = b(k,139) - lu(k,502) * b(k,108) - b(k,116) = b(k,116) - lu(k,504) * b(k,109) - b(k,121) = b(k,121) - lu(k,505) * b(k,109) - b(k,125) = b(k,125) - lu(k,506) * b(k,109) - b(k,130) = b(k,130) - lu(k,507) * b(k,109) - b(k,135) = b(k,135) - lu(k,508) * b(k,109) - b(k,129) = b(k,129) - lu(k,511) * b(k,110) - b(k,130) = b(k,130) - lu(k,512) * b(k,110) - b(k,135) = b(k,135) - lu(k,513) * b(k,110) - b(k,124) = b(k,124) - lu(k,515) * b(k,111) - b(k,127) = b(k,127) - lu(k,516) * b(k,111) - b(k,128) = b(k,128) - lu(k,517) * b(k,111) - b(k,129) = b(k,129) - lu(k,518) * b(k,111) - b(k,134) = b(k,134) - lu(k,519) * b(k,111) - b(k,135) = b(k,135) - lu(k,520) * b(k,111) - b(k,139) = b(k,139) - lu(k,521) * b(k,111) - b(k,113) = b(k,113) - lu(k,531) * b(k,112) - b(k,116) = b(k,116) - lu(k,532) * b(k,112) - b(k,121) = b(k,121) - lu(k,533) * b(k,112) - b(k,123) = b(k,123) - lu(k,534) * b(k,112) - b(k,124) = b(k,124) - lu(k,535) * b(k,112) - b(k,125) = b(k,125) - lu(k,536) * b(k,112) - b(k,127) = b(k,127) - lu(k,537) * b(k,112) - b(k,128) = b(k,128) - lu(k,538) * b(k,112) - b(k,129) = b(k,129) - lu(k,539) * b(k,112) - b(k,130) = b(k,130) - lu(k,540) * b(k,112) - b(k,132) = b(k,132) - lu(k,541) * b(k,112) - b(k,133) = b(k,133) - lu(k,542) * b(k,112) - b(k,134) = b(k,134) - lu(k,543) * b(k,112) - b(k,135) = b(k,135) - lu(k,544) * b(k,112) - b(k,136) = b(k,136) - lu(k,545) * b(k,112) - b(k,138) = b(k,138) - lu(k,546) * b(k,112) - b(k,139) = b(k,139) - lu(k,547) * b(k,112) - b(k,121) = b(k,121) - lu(k,551) * b(k,113) - b(k,123) = b(k,123) - lu(k,552) * b(k,113) - b(k,129) = b(k,129) - lu(k,553) * b(k,113) - b(k,130) = b(k,130) - lu(k,554) * b(k,113) - b(k,133) = b(k,133) - lu(k,555) * b(k,113) - b(k,135) = b(k,135) - lu(k,556) * b(k,113) - b(k,136) = b(k,136) - lu(k,557) * b(k,113) - b(k,139) = b(k,139) - lu(k,558) * b(k,113) - end do - end subroutine lu_slv02 - subroutine lu_slv03( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,116) = b(k,116) - lu(k,561) * b(k,114) - b(k,119) = b(k,119) - lu(k,562) * b(k,114) - b(k,120) = b(k,120) - lu(k,563) * b(k,114) - b(k,121) = b(k,121) - lu(k,564) * b(k,114) - b(k,125) = b(k,125) - lu(k,565) * b(k,114) - b(k,129) = b(k,129) - lu(k,566) * b(k,114) - b(k,130) = b(k,130) - lu(k,567) * b(k,114) - b(k,132) = b(k,132) - lu(k,568) * b(k,114) - b(k,135) = b(k,135) - lu(k,569) * b(k,114) - b(k,139) = b(k,139) - lu(k,570) * b(k,114) - b(k,116) = b(k,116) - lu(k,579) * b(k,115) - b(k,121) = b(k,121) - lu(k,580) * b(k,115) - b(k,123) = b(k,123) - lu(k,581) * b(k,115) - b(k,125) = b(k,125) - lu(k,582) * b(k,115) - b(k,129) = b(k,129) - lu(k,583) * b(k,115) - b(k,130) = b(k,130) - lu(k,584) * b(k,115) - b(k,133) = b(k,133) - lu(k,585) * b(k,115) - b(k,135) = b(k,135) - lu(k,586) * b(k,115) - b(k,136) = b(k,136) - lu(k,587) * b(k,115) - b(k,138) = b(k,138) - lu(k,588) * b(k,115) - b(k,121) = b(k,121) - lu(k,592) * b(k,116) - b(k,129) = b(k,129) - lu(k,593) * b(k,116) - b(k,130) = b(k,130) - lu(k,594) * b(k,116) - b(k,133) = b(k,133) - lu(k,595) * b(k,116) - b(k,135) = b(k,135) - lu(k,596) * b(k,116) - b(k,136) = b(k,136) - lu(k,597) * b(k,116) - b(k,139) = b(k,139) - lu(k,598) * b(k,116) - b(k,124) = b(k,124) - lu(k,603) * b(k,117) - b(k,126) = b(k,126) - lu(k,604) * b(k,117) - b(k,128) = b(k,128) - lu(k,605) * b(k,117) - b(k,129) = b(k,129) - lu(k,606) * b(k,117) - b(k,130) = b(k,130) - lu(k,607) * b(k,117) - b(k,131) = b(k,131) - lu(k,608) * b(k,117) - b(k,132) = b(k,132) - lu(k,609) * b(k,117) - b(k,133) = b(k,133) - lu(k,610) * b(k,117) - b(k,135) = b(k,135) - lu(k,611) * b(k,117) - b(k,137) = b(k,137) - lu(k,612) * b(k,117) - b(k,138) = b(k,138) - lu(k,613) * b(k,117) - b(k,139) = b(k,139) - lu(k,614) * b(k,117) - b(k,119) = b(k,119) - lu(k,627) * b(k,118) - b(k,120) = b(k,120) - lu(k,628) * b(k,118) - b(k,121) = b(k,121) - lu(k,629) * b(k,118) - b(k,122) = b(k,122) - lu(k,630) * b(k,118) - b(k,123) = b(k,123) - lu(k,631) * b(k,118) - b(k,125) = b(k,125) - lu(k,632) * b(k,118) - b(k,129) = b(k,129) - lu(k,633) * b(k,118) - b(k,130) = b(k,130) - lu(k,634) * b(k,118) - b(k,132) = b(k,132) - lu(k,635) * b(k,118) - b(k,133) = b(k,133) - lu(k,636) * b(k,118) - b(k,135) = b(k,135) - lu(k,637) * b(k,118) - b(k,136) = b(k,136) - lu(k,638) * b(k,118) - b(k,138) = b(k,138) - lu(k,639) * b(k,118) - b(k,139) = b(k,139) - lu(k,640) * b(k,118) - b(k,120) = b(k,120) - lu(k,650) * b(k,119) - b(k,121) = b(k,121) - lu(k,651) * b(k,119) - b(k,123) = b(k,123) - lu(k,652) * b(k,119) - b(k,125) = b(k,125) - lu(k,653) * b(k,119) - b(k,129) = b(k,129) - lu(k,654) * b(k,119) - b(k,130) = b(k,130) - lu(k,655) * b(k,119) - b(k,133) = b(k,133) - lu(k,656) * b(k,119) - b(k,135) = b(k,135) - lu(k,657) * b(k,119) - b(k,136) = b(k,136) - lu(k,658) * b(k,119) - b(k,138) = b(k,138) - lu(k,659) * b(k,119) - b(k,139) = b(k,139) - lu(k,660) * b(k,119) - b(k,121) = b(k,121) - lu(k,669) * b(k,120) - b(k,123) = b(k,123) - lu(k,670) * b(k,120) - b(k,125) = b(k,125) - lu(k,671) * b(k,120) - b(k,129) = b(k,129) - lu(k,672) * b(k,120) - b(k,130) = b(k,130) - lu(k,673) * b(k,120) - b(k,132) = b(k,132) - lu(k,674) * b(k,120) - b(k,133) = b(k,133) - lu(k,675) * b(k,120) - b(k,135) = b(k,135) - lu(k,676) * b(k,120) - b(k,136) = b(k,136) - lu(k,677) * b(k,120) - b(k,138) = b(k,138) - lu(k,678) * b(k,120) - b(k,139) = b(k,139) - lu(k,679) * b(k,120) - b(k,122) = b(k,122) - lu(k,696) * b(k,121) - b(k,123) = b(k,123) - lu(k,697) * b(k,121) - b(k,125) = b(k,125) - lu(k,698) * b(k,121) - b(k,129) = b(k,129) - lu(k,699) * b(k,121) - b(k,130) = b(k,130) - lu(k,700) * b(k,121) - b(k,132) = b(k,132) - lu(k,701) * b(k,121) - b(k,133) = b(k,133) - lu(k,702) * b(k,121) - b(k,135) = b(k,135) - lu(k,703) * b(k,121) - b(k,136) = b(k,136) - lu(k,704) * b(k,121) - b(k,138) = b(k,138) - lu(k,705) * b(k,121) - b(k,139) = b(k,139) - lu(k,706) * b(k,121) - b(k,123) = b(k,123) - lu(k,716) * b(k,122) - b(k,124) = b(k,124) - lu(k,717) * b(k,122) - b(k,125) = b(k,125) - lu(k,718) * b(k,122) - b(k,127) = b(k,127) - lu(k,719) * b(k,122) - b(k,128) = b(k,128) - lu(k,720) * b(k,122) - b(k,129) = b(k,129) - lu(k,721) * b(k,122) - b(k,130) = b(k,130) - lu(k,722) * b(k,122) - b(k,132) = b(k,132) - lu(k,723) * b(k,122) - b(k,133) = b(k,133) - lu(k,724) * b(k,122) - b(k,134) = b(k,134) - lu(k,725) * b(k,122) - b(k,135) = b(k,135) - lu(k,726) * b(k,122) - b(k,136) = b(k,136) - lu(k,727) * b(k,122) - b(k,138) = b(k,138) - lu(k,728) * b(k,122) - b(k,139) = b(k,139) - lu(k,729) * b(k,122) - b(k,124) = b(k,124) - lu(k,754) * b(k,123) - b(k,125) = b(k,125) - lu(k,755) * b(k,123) - b(k,127) = b(k,127) - lu(k,756) * b(k,123) - b(k,128) = b(k,128) - lu(k,757) * b(k,123) - b(k,129) = b(k,129) - lu(k,758) * b(k,123) - b(k,130) = b(k,130) - lu(k,759) * b(k,123) - b(k,132) = b(k,132) - lu(k,760) * b(k,123) - b(k,133) = b(k,133) - lu(k,761) * b(k,123) - b(k,134) = b(k,134) - lu(k,762) * b(k,123) - b(k,135) = b(k,135) - lu(k,763) * b(k,123) - b(k,136) = b(k,136) - lu(k,764) * b(k,123) - b(k,137) = b(k,137) - lu(k,765) * b(k,123) - b(k,138) = b(k,138) - lu(k,766) * b(k,123) - b(k,139) = b(k,139) - lu(k,767) * b(k,123) - b(k,127) = b(k,127) - lu(k,770) * b(k,124) - b(k,128) = b(k,128) - lu(k,771) * b(k,124) - b(k,129) = b(k,129) - lu(k,772) * b(k,124) - b(k,130) = b(k,130) - lu(k,773) * b(k,124) - b(k,132) = b(k,132) - lu(k,774) * b(k,124) - b(k,134) = b(k,134) - lu(k,775) * b(k,124) - b(k,135) = b(k,135) - lu(k,776) * b(k,124) - b(k,139) = b(k,139) - lu(k,777) * b(k,124) - b(k,126) = b(k,126) - lu(k,784) * b(k,125) - b(k,127) = b(k,127) - lu(k,785) * b(k,125) - b(k,128) = b(k,128) - lu(k,786) * b(k,125) - b(k,129) = b(k,129) - lu(k,787) * b(k,125) - b(k,130) = b(k,130) - lu(k,788) * b(k,125) - b(k,131) = b(k,131) - lu(k,789) * b(k,125) - b(k,132) = b(k,132) - lu(k,790) * b(k,125) - b(k,133) = b(k,133) - lu(k,791) * b(k,125) - b(k,134) = b(k,134) - lu(k,792) * b(k,125) - b(k,135) = b(k,135) - lu(k,793) * b(k,125) - b(k,136) = b(k,136) - lu(k,794) * b(k,125) - b(k,139) = b(k,139) - lu(k,795) * b(k,125) - b(k,127) = b(k,127) - lu(k,801) * b(k,126) - b(k,128) = b(k,128) - lu(k,802) * b(k,126) - b(k,129) = b(k,129) - lu(k,803) * b(k,126) - b(k,130) = b(k,130) - lu(k,804) * b(k,126) - b(k,131) = b(k,131) - lu(k,805) * b(k,126) - b(k,132) = b(k,132) - lu(k,806) * b(k,126) - b(k,133) = b(k,133) - lu(k,807) * b(k,126) - b(k,134) = b(k,134) - lu(k,808) * b(k,126) - b(k,135) = b(k,135) - lu(k,809) * b(k,126) - b(k,136) = b(k,136) - lu(k,810) * b(k,126) - b(k,139) = b(k,139) - lu(k,811) * b(k,126) - b(k,128) = b(k,128) - lu(k,821) * b(k,127) - b(k,129) = b(k,129) - lu(k,822) * b(k,127) - b(k,130) = b(k,130) - lu(k,823) * b(k,127) - b(k,131) = b(k,131) - lu(k,824) * b(k,127) - b(k,132) = b(k,132) - lu(k,825) * b(k,127) - b(k,133) = b(k,133) - lu(k,826) * b(k,127) - b(k,134) = b(k,134) - lu(k,827) * b(k,127) - b(k,135) = b(k,135) - lu(k,828) * b(k,127) - b(k,136) = b(k,136) - lu(k,829) * b(k,127) - b(k,137) = b(k,137) - lu(k,830) * b(k,127) - b(k,139) = b(k,139) - lu(k,831) * b(k,127) - b(k,129) = b(k,129) - lu(k,857) * b(k,128) - b(k,130) = b(k,130) - lu(k,858) * b(k,128) - b(k,131) = b(k,131) - lu(k,859) * b(k,128) - b(k,132) = b(k,132) - lu(k,860) * b(k,128) - b(k,133) = b(k,133) - lu(k,861) * b(k,128) - b(k,134) = b(k,134) - lu(k,862) * b(k,128) - b(k,135) = b(k,135) - lu(k,863) * b(k,128) - b(k,136) = b(k,136) - lu(k,864) * b(k,128) - b(k,137) = b(k,137) - lu(k,865) * b(k,128) - b(k,138) = b(k,138) - lu(k,866) * b(k,128) - b(k,139) = b(k,139) - lu(k,867) * b(k,128) - b(k,130) = b(k,130) - lu(k,887) * b(k,129) - b(k,131) = b(k,131) - lu(k,888) * b(k,129) - b(k,132) = b(k,132) - lu(k,889) * b(k,129) - b(k,133) = b(k,133) - lu(k,890) * b(k,129) - b(k,134) = b(k,134) - lu(k,891) * b(k,129) - b(k,135) = b(k,135) - lu(k,892) * b(k,129) - b(k,136) = b(k,136) - lu(k,893) * b(k,129) - b(k,137) = b(k,137) - lu(k,894) * b(k,129) - b(k,138) = b(k,138) - lu(k,895) * b(k,129) - b(k,139) = b(k,139) - lu(k,896) * b(k,129) - b(k,131) = b(k,131) - lu(k,944) * b(k,130) - b(k,132) = b(k,132) - lu(k,945) * b(k,130) - b(k,133) = b(k,133) - lu(k,946) * b(k,130) - b(k,134) = b(k,134) - lu(k,947) * b(k,130) - b(k,135) = b(k,135) - lu(k,948) * b(k,130) - b(k,136) = b(k,136) - lu(k,949) * b(k,130) - b(k,137) = b(k,137) - lu(k,950) * b(k,130) - b(k,138) = b(k,138) - lu(k,951) * b(k,130) - b(k,139) = b(k,139) - lu(k,952) * b(k,130) - b(k,132) = b(k,132) - lu(k,967) * b(k,131) - b(k,133) = b(k,133) - lu(k,968) * b(k,131) - b(k,134) = b(k,134) - lu(k,969) * b(k,131) - b(k,135) = b(k,135) - lu(k,970) * b(k,131) - b(k,136) = b(k,136) - lu(k,971) * b(k,131) - b(k,137) = b(k,137) - lu(k,972) * b(k,131) - b(k,138) = b(k,138) - lu(k,973) * b(k,131) - b(k,139) = b(k,139) - lu(k,974) * b(k,131) - b(k,133) = b(k,133) - lu(k,1012) * b(k,132) - b(k,134) = b(k,134) - lu(k,1013) * b(k,132) - b(k,135) = b(k,135) - lu(k,1014) * b(k,132) - b(k,136) = b(k,136) - lu(k,1015) * b(k,132) - b(k,137) = b(k,137) - lu(k,1016) * b(k,132) - b(k,138) = b(k,138) - lu(k,1017) * b(k,132) - b(k,139) = b(k,139) - lu(k,1018) * b(k,132) - end do - end subroutine lu_slv03 - subroutine lu_slv04( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,134) = b(k,134) - lu(k,1049) * b(k,133) - b(k,135) = b(k,135) - lu(k,1050) * b(k,133) - b(k,136) = b(k,136) - lu(k,1051) * b(k,133) - b(k,137) = b(k,137) - lu(k,1052) * b(k,133) - b(k,138) = b(k,138) - lu(k,1053) * b(k,133) - b(k,139) = b(k,139) - lu(k,1054) * b(k,133) - b(k,135) = b(k,135) - lu(k,1087) * b(k,134) - b(k,136) = b(k,136) - lu(k,1088) * b(k,134) - b(k,137) = b(k,137) - lu(k,1089) * b(k,134) - b(k,138) = b(k,138) - lu(k,1090) * b(k,134) - b(k,139) = b(k,139) - lu(k,1091) * b(k,134) - b(k,136) = b(k,136) - lu(k,1173) * b(k,135) - b(k,137) = b(k,137) - lu(k,1174) * b(k,135) - b(k,138) = b(k,138) - lu(k,1175) * b(k,135) - b(k,139) = b(k,139) - lu(k,1176) * b(k,135) - b(k,137) = b(k,137) - lu(k,1218) * b(k,136) - b(k,138) = b(k,138) - lu(k,1219) * b(k,136) - b(k,139) = b(k,139) - lu(k,1220) * b(k,136) - b(k,138) = b(k,138) - lu(k,1244) * b(k,137) - b(k,139) = b(k,139) - lu(k,1245) * b(k,137) - b(k,139) = b(k,139) - lu(k,1287) * b(k,138) - end do - end subroutine lu_slv04 - subroutine lu_slv05( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len -!----------------------------------------------------------------------- -! ... Solve U * x = y -!----------------------------------------------------------------------- - b(k,139) = b(k,139) * lu(k,1307) - b(k,138) = b(k,138) - lu(k,1306) * b(k,139) - b(k,137) = b(k,137) - lu(k,1305) * b(k,139) - b(k,136) = b(k,136) - lu(k,1304) * b(k,139) - b(k,135) = b(k,135) - lu(k,1303) * b(k,139) - b(k,134) = b(k,134) - lu(k,1302) * b(k,139) - b(k,133) = b(k,133) - lu(k,1301) * b(k,139) - b(k,132) = b(k,132) - lu(k,1300) * b(k,139) - b(k,131) = b(k,131) - lu(k,1299) * b(k,139) - b(k,130) = b(k,130) - lu(k,1298) * b(k,139) - b(k,129) = b(k,129) - lu(k,1297) * b(k,139) - b(k,128) = b(k,128) - lu(k,1296) * b(k,139) - b(k,127) = b(k,127) - lu(k,1295) * b(k,139) - b(k,126) = b(k,126) - lu(k,1294) * b(k,139) - b(k,124) = b(k,124) - lu(k,1293) * b(k,139) - b(k,117) = b(k,117) - lu(k,1292) * b(k,139) - b(k,111) = b(k,111) - lu(k,1291) * b(k,139) - b(k,102) = b(k,102) - lu(k,1290) * b(k,139) - b(k,58) = b(k,58) - lu(k,1289) * b(k,139) - b(k,49) = b(k,49) - lu(k,1288) * b(k,139) - b(k,138) = b(k,138) * lu(k,1286) - b(k,137) = b(k,137) - lu(k,1285) * b(k,138) - b(k,136) = b(k,136) - lu(k,1284) * b(k,138) - b(k,135) = b(k,135) - lu(k,1283) * b(k,138) - b(k,134) = b(k,134) - lu(k,1282) * b(k,138) - b(k,133) = b(k,133) - lu(k,1281) * b(k,138) - b(k,132) = b(k,132) - lu(k,1280) * b(k,138) - b(k,131) = b(k,131) - lu(k,1279) * b(k,138) - b(k,130) = b(k,130) - lu(k,1278) * b(k,138) - b(k,129) = b(k,129) - lu(k,1277) * b(k,138) - b(k,128) = b(k,128) - lu(k,1276) * b(k,138) - b(k,127) = b(k,127) - lu(k,1275) * b(k,138) - b(k,126) = b(k,126) - lu(k,1274) * b(k,138) - b(k,125) = b(k,125) - lu(k,1273) * b(k,138) - b(k,124) = b(k,124) - lu(k,1272) * b(k,138) - b(k,123) = b(k,123) - lu(k,1271) * b(k,138) - b(k,122) = b(k,122) - lu(k,1270) * b(k,138) - b(k,121) = b(k,121) - lu(k,1269) * b(k,138) - b(k,120) = b(k,120) - lu(k,1268) * b(k,138) - b(k,119) = b(k,119) - lu(k,1267) * b(k,138) - b(k,118) = b(k,118) - lu(k,1266) * b(k,138) - b(k,116) = b(k,116) - lu(k,1265) * b(k,138) - b(k,115) = b(k,115) - lu(k,1264) * b(k,138) - b(k,114) = b(k,114) - lu(k,1263) * b(k,138) - b(k,113) = b(k,113) - lu(k,1262) * b(k,138) - b(k,110) = b(k,110) - lu(k,1261) * b(k,138) - b(k,109) = b(k,109) - lu(k,1260) * b(k,138) - b(k,108) = b(k,108) - lu(k,1259) * b(k,138) - b(k,106) = b(k,106) - lu(k,1258) * b(k,138) - b(k,105) = b(k,105) - lu(k,1257) * b(k,138) - b(k,98) = b(k,98) - lu(k,1256) * b(k,138) - b(k,97) = b(k,97) - lu(k,1255) * b(k,138) - b(k,96) = b(k,96) - lu(k,1254) * b(k,138) - b(k,95) = b(k,95) - lu(k,1253) * b(k,138) - b(k,93) = b(k,93) - lu(k,1252) * b(k,138) - b(k,92) = b(k,92) - lu(k,1251) * b(k,138) - b(k,91) = b(k,91) - lu(k,1250) * b(k,138) - b(k,90) = b(k,90) - lu(k,1249) * b(k,138) - b(k,75) = b(k,75) - lu(k,1248) * b(k,138) - b(k,66) = b(k,66) - lu(k,1247) * b(k,138) - b(k,59) = b(k,59) - lu(k,1246) * b(k,138) - b(k,137) = b(k,137) * lu(k,1243) - b(k,136) = b(k,136) - lu(k,1242) * b(k,137) - b(k,135) = b(k,135) - lu(k,1241) * b(k,137) - b(k,134) = b(k,134) - lu(k,1240) * b(k,137) - b(k,133) = b(k,133) - lu(k,1239) * b(k,137) - b(k,132) = b(k,132) - lu(k,1238) * b(k,137) - b(k,131) = b(k,131) - lu(k,1237) * b(k,137) - b(k,130) = b(k,130) - lu(k,1236) * b(k,137) - b(k,129) = b(k,129) - lu(k,1235) * b(k,137) - b(k,128) = b(k,128) - lu(k,1234) * b(k,137) - b(k,127) = b(k,127) - lu(k,1233) * b(k,137) - b(k,126) = b(k,126) - lu(k,1232) * b(k,137) - b(k,125) = b(k,125) - lu(k,1231) * b(k,137) - b(k,124) = b(k,124) - lu(k,1230) * b(k,137) - b(k,123) = b(k,123) - lu(k,1229) * b(k,137) - b(k,117) = b(k,117) - lu(k,1228) * b(k,137) - b(k,104) = b(k,104) - lu(k,1227) * b(k,137) - b(k,102) = b(k,102) - lu(k,1226) * b(k,137) - b(k,99) = b(k,99) - lu(k,1225) * b(k,137) - b(k,65) = b(k,65) - lu(k,1224) * b(k,137) - b(k,56) = b(k,56) - lu(k,1223) * b(k,137) - b(k,50) = b(k,50) - lu(k,1222) * b(k,137) - b(k,34) = b(k,34) - lu(k,1221) * b(k,137) - b(k,136) = b(k,136) * lu(k,1217) - b(k,135) = b(k,135) - lu(k,1216) * b(k,136) - b(k,134) = b(k,134) - lu(k,1215) * b(k,136) - b(k,133) = b(k,133) - lu(k,1214) * b(k,136) - b(k,132) = b(k,132) - lu(k,1213) * b(k,136) - b(k,131) = b(k,131) - lu(k,1212) * b(k,136) - b(k,130) = b(k,130) - lu(k,1211) * b(k,136) - b(k,129) = b(k,129) - lu(k,1210) * b(k,136) - b(k,128) = b(k,128) - lu(k,1209) * b(k,136) - b(k,127) = b(k,127) - lu(k,1208) * b(k,136) - b(k,126) = b(k,126) - lu(k,1207) * b(k,136) - b(k,125) = b(k,125) - lu(k,1206) * b(k,136) - b(k,124) = b(k,124) - lu(k,1205) * b(k,136) - b(k,123) = b(k,123) - lu(k,1204) * b(k,136) - b(k,122) = b(k,122) - lu(k,1203) * b(k,136) - b(k,121) = b(k,121) - lu(k,1202) * b(k,136) - b(k,120) = b(k,120) - lu(k,1201) * b(k,136) - b(k,119) = b(k,119) - lu(k,1200) * b(k,136) - b(k,118) = b(k,118) - lu(k,1199) * b(k,136) - b(k,117) = b(k,117) - lu(k,1198) * b(k,136) - b(k,116) = b(k,116) - lu(k,1197) * b(k,136) - b(k,115) = b(k,115) - lu(k,1196) * b(k,136) - b(k,114) = b(k,114) - lu(k,1195) * b(k,136) - b(k,113) = b(k,113) - lu(k,1194) * b(k,136) - b(k,112) = b(k,112) - lu(k,1193) * b(k,136) - b(k,110) = b(k,110) - lu(k,1192) * b(k,136) - b(k,109) = b(k,109) - lu(k,1191) * b(k,136) - b(k,108) = b(k,108) - lu(k,1190) * b(k,136) - b(k,106) = b(k,106) - lu(k,1189) * b(k,136) - b(k,105) = b(k,105) - lu(k,1188) * b(k,136) - b(k,103) = b(k,103) - lu(k,1187) * b(k,136) - b(k,102) = b(k,102) - lu(k,1186) * b(k,136) - b(k,101) = b(k,101) - lu(k,1185) * b(k,136) - b(k,97) = b(k,97) - lu(k,1184) * b(k,136) - b(k,95) = b(k,95) - lu(k,1183) * b(k,136) - b(k,92) = b(k,92) - lu(k,1182) * b(k,136) - b(k,88) = b(k,88) - lu(k,1181) * b(k,136) - b(k,72) = b(k,72) - lu(k,1180) * b(k,136) - b(k,66) = b(k,66) - lu(k,1179) * b(k,136) - b(k,62) = b(k,62) - lu(k,1178) * b(k,136) - b(k,60) = b(k,60) - lu(k,1177) * b(k,136) - b(k,135) = b(k,135) * lu(k,1172) - b(k,134) = b(k,134) - lu(k,1171) * b(k,135) - b(k,133) = b(k,133) - lu(k,1170) * b(k,135) - b(k,132) = b(k,132) - lu(k,1169) * b(k,135) - b(k,131) = b(k,131) - lu(k,1168) * b(k,135) - b(k,130) = b(k,130) - lu(k,1167) * b(k,135) - b(k,129) = b(k,129) - lu(k,1166) * b(k,135) - b(k,128) = b(k,128) - lu(k,1165) * b(k,135) - b(k,127) = b(k,127) - lu(k,1164) * b(k,135) - b(k,126) = b(k,126) - lu(k,1163) * b(k,135) - b(k,125) = b(k,125) - lu(k,1162) * b(k,135) - b(k,124) = b(k,124) - lu(k,1161) * b(k,135) - b(k,123) = b(k,123) - lu(k,1160) * b(k,135) - b(k,122) = b(k,122) - lu(k,1159) * b(k,135) - b(k,121) = b(k,121) - lu(k,1158) * b(k,135) - b(k,120) = b(k,120) - lu(k,1157) * b(k,135) - b(k,119) = b(k,119) - lu(k,1156) * b(k,135) - b(k,118) = b(k,118) - lu(k,1155) * b(k,135) - b(k,117) = b(k,117) - lu(k,1154) * b(k,135) - b(k,116) = b(k,116) - lu(k,1153) * b(k,135) - b(k,115) = b(k,115) - lu(k,1152) * b(k,135) - b(k,114) = b(k,114) - lu(k,1151) * b(k,135) - b(k,113) = b(k,113) - lu(k,1150) * b(k,135) - b(k,112) = b(k,112) - lu(k,1149) * b(k,135) - b(k,111) = b(k,111) - lu(k,1148) * b(k,135) - b(k,110) = b(k,110) - lu(k,1147) * b(k,135) - b(k,109) = b(k,109) - lu(k,1146) * b(k,135) - b(k,108) = b(k,108) - lu(k,1145) * b(k,135) - b(k,107) = b(k,107) - lu(k,1144) * b(k,135) - b(k,106) = b(k,106) - lu(k,1143) * b(k,135) - b(k,105) = b(k,105) - lu(k,1142) * b(k,135) - b(k,104) = b(k,104) - lu(k,1141) * b(k,135) - b(k,103) = b(k,103) - lu(k,1140) * b(k,135) - b(k,102) = b(k,102) - lu(k,1139) * b(k,135) - b(k,101) = b(k,101) - lu(k,1138) * b(k,135) - b(k,100) = b(k,100) - lu(k,1137) * b(k,135) - b(k,99) = b(k,99) - lu(k,1136) * b(k,135) - b(k,98) = b(k,98) - lu(k,1135) * b(k,135) - b(k,96) = b(k,96) - lu(k,1134) * b(k,135) - b(k,95) = b(k,95) - lu(k,1133) * b(k,135) - b(k,93) = b(k,93) - lu(k,1132) * b(k,135) - b(k,92) = b(k,92) - lu(k,1131) * b(k,135) - b(k,91) = b(k,91) - lu(k,1130) * b(k,135) - b(k,90) = b(k,90) - lu(k,1129) * b(k,135) - b(k,89) = b(k,89) - lu(k,1128) * b(k,135) - b(k,88) = b(k,88) - lu(k,1127) * b(k,135) - b(k,87) = b(k,87) - lu(k,1126) * b(k,135) - b(k,86) = b(k,86) - lu(k,1125) * b(k,135) - b(k,85) = b(k,85) - lu(k,1124) * b(k,135) - b(k,84) = b(k,84) - lu(k,1123) * b(k,135) - b(k,82) = b(k,82) - lu(k,1122) * b(k,135) - b(k,81) = b(k,81) - lu(k,1121) * b(k,135) - b(k,80) = b(k,80) - lu(k,1120) * b(k,135) - b(k,79) = b(k,79) - lu(k,1119) * b(k,135) - b(k,78) = b(k,78) - lu(k,1118) * b(k,135) - b(k,77) = b(k,77) - lu(k,1117) * b(k,135) - b(k,76) = b(k,76) - lu(k,1116) * b(k,135) - b(k,75) = b(k,75) - lu(k,1115) * b(k,135) - b(k,74) = b(k,74) - lu(k,1114) * b(k,135) - b(k,73) = b(k,73) - lu(k,1113) * b(k,135) - b(k,72) = b(k,72) - lu(k,1112) * b(k,135) - b(k,71) = b(k,71) - lu(k,1111) * b(k,135) - b(k,70) = b(k,70) - lu(k,1110) * b(k,135) - b(k,69) = b(k,69) - lu(k,1109) * b(k,135) - b(k,68) = b(k,68) - lu(k,1108) * b(k,135) - b(k,67) = b(k,67) - lu(k,1107) * b(k,135) - b(k,66) = b(k,66) - lu(k,1106) * b(k,135) - b(k,64) = b(k,64) - lu(k,1105) * b(k,135) - b(k,63) = b(k,63) - lu(k,1104) * b(k,135) - b(k,62) = b(k,62) - lu(k,1103) * b(k,135) - b(k,61) = b(k,61) - lu(k,1102) * b(k,135) - b(k,58) = b(k,58) - lu(k,1101) * b(k,135) - b(k,57) = b(k,57) - lu(k,1100) * b(k,135) - b(k,55) = b(k,55) - lu(k,1099) * b(k,135) - b(k,54) = b(k,54) - lu(k,1098) * b(k,135) - b(k,52) = b(k,52) - lu(k,1097) * b(k,135) - b(k,51) = b(k,51) - lu(k,1096) * b(k,135) - b(k,47) = b(k,47) - lu(k,1095) * b(k,135) - b(k,45) = b(k,45) - lu(k,1094) * b(k,135) - b(k,37) = b(k,37) - lu(k,1093) * b(k,135) - b(k,35) = b(k,35) - lu(k,1092) * b(k,135) - end do - end subroutine lu_slv05 - subroutine lu_slv06( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,134) = b(k,134) * lu(k,1086) - b(k,133) = b(k,133) - lu(k,1085) * b(k,134) - b(k,132) = b(k,132) - lu(k,1084) * b(k,134) - b(k,131) = b(k,131) - lu(k,1083) * b(k,134) - b(k,130) = b(k,130) - lu(k,1082) * b(k,134) - b(k,129) = b(k,129) - lu(k,1081) * b(k,134) - b(k,128) = b(k,128) - lu(k,1080) * b(k,134) - b(k,127) = b(k,127) - lu(k,1079) * b(k,134) - b(k,126) = b(k,126) - lu(k,1078) * b(k,134) - b(k,125) = b(k,125) - lu(k,1077) * b(k,134) - b(k,124) = b(k,124) - lu(k,1076) * b(k,134) - b(k,123) = b(k,123) - lu(k,1075) * b(k,134) - b(k,111) = b(k,111) - lu(k,1074) * b(k,134) - b(k,110) = b(k,110) - lu(k,1073) * b(k,134) - b(k,107) = b(k,107) - lu(k,1072) * b(k,134) - b(k,100) = b(k,100) - lu(k,1071) * b(k,134) - b(k,86) = b(k,86) - lu(k,1070) * b(k,134) - b(k,77) = b(k,77) - lu(k,1069) * b(k,134) - b(k,70) = b(k,70) - lu(k,1068) * b(k,134) - b(k,55) = b(k,55) - lu(k,1067) * b(k,134) - b(k,53) = b(k,53) - lu(k,1066) * b(k,134) - b(k,52) = b(k,52) - lu(k,1065) * b(k,134) - b(k,51) = b(k,51) - lu(k,1064) * b(k,134) - b(k,46) = b(k,46) - lu(k,1063) * b(k,134) - b(k,44) = b(k,44) - lu(k,1062) * b(k,134) - b(k,43) = b(k,43) - lu(k,1061) * b(k,134) - b(k,42) = b(k,42) - lu(k,1060) * b(k,134) - b(k,41) = b(k,41) - lu(k,1059) * b(k,134) - b(k,40) = b(k,40) - lu(k,1058) * b(k,134) - b(k,39) = b(k,39) - lu(k,1057) * b(k,134) - b(k,38) = b(k,38) - lu(k,1056) * b(k,134) - b(k,36) = b(k,36) - lu(k,1055) * b(k,134) - b(k,133) = b(k,133) * lu(k,1048) - b(k,132) = b(k,132) - lu(k,1047) * b(k,133) - b(k,131) = b(k,131) - lu(k,1046) * b(k,133) - b(k,130) = b(k,130) - lu(k,1045) * b(k,133) - b(k,129) = b(k,129) - lu(k,1044) * b(k,133) - b(k,128) = b(k,128) - lu(k,1043) * b(k,133) - b(k,127) = b(k,127) - lu(k,1042) * b(k,133) - b(k,126) = b(k,126) - lu(k,1041) * b(k,133) - b(k,125) = b(k,125) - lu(k,1040) * b(k,133) - b(k,124) = b(k,124) - lu(k,1039) * b(k,133) - b(k,123) = b(k,123) - lu(k,1038) * b(k,133) - b(k,122) = b(k,122) - lu(k,1037) * b(k,133) - b(k,121) = b(k,121) - lu(k,1036) * b(k,133) - b(k,120) = b(k,120) - lu(k,1035) * b(k,133) - b(k,117) = b(k,117) - lu(k,1034) * b(k,133) - b(k,116) = b(k,116) - lu(k,1033) * b(k,133) - b(k,110) = b(k,110) - lu(k,1032) * b(k,133) - b(k,109) = b(k,109) - lu(k,1031) * b(k,133) - b(k,104) = b(k,104) - lu(k,1030) * b(k,133) - b(k,102) = b(k,102) - lu(k,1029) * b(k,133) - b(k,101) = b(k,101) - lu(k,1028) * b(k,133) - b(k,94) = b(k,94) - lu(k,1027) * b(k,133) - b(k,90) = b(k,90) - lu(k,1026) * b(k,133) - b(k,85) = b(k,85) - lu(k,1025) * b(k,133) - b(k,83) = b(k,83) - lu(k,1024) * b(k,133) - b(k,81) = b(k,81) - lu(k,1023) * b(k,133) - b(k,75) = b(k,75) - lu(k,1022) * b(k,133) - b(k,69) = b(k,69) - lu(k,1021) * b(k,133) - b(k,60) = b(k,60) - lu(k,1020) * b(k,133) - b(k,53) = b(k,53) - lu(k,1019) * b(k,133) - b(k,132) = b(k,132) * lu(k,1011) - b(k,131) = b(k,131) - lu(k,1010) * b(k,132) - b(k,130) = b(k,130) - lu(k,1009) * b(k,132) - b(k,129) = b(k,129) - lu(k,1008) * b(k,132) - b(k,128) = b(k,128) - lu(k,1007) * b(k,132) - b(k,127) = b(k,127) - lu(k,1006) * b(k,132) - b(k,126) = b(k,126) - lu(k,1005) * b(k,132) - b(k,125) = b(k,125) - lu(k,1004) * b(k,132) - b(k,124) = b(k,124) - lu(k,1003) * b(k,132) - b(k,123) = b(k,123) - lu(k,1002) * b(k,132) - b(k,122) = b(k,122) - lu(k,1001) * b(k,132) - b(k,121) = b(k,121) - lu(k,1000) * b(k,132) - b(k,120) = b(k,120) - lu(k,999) * b(k,132) - b(k,119) = b(k,119) - lu(k,998) * b(k,132) - b(k,118) = b(k,118) - lu(k,997) * b(k,132) - b(k,117) = b(k,117) - lu(k,996) * b(k,132) - b(k,116) = b(k,116) - lu(k,995) * b(k,132) - b(k,115) = b(k,115) - lu(k,994) * b(k,132) - b(k,114) = b(k,114) - lu(k,993) * b(k,132) - b(k,113) = b(k,113) - lu(k,992) * b(k,132) - b(k,112) = b(k,112) - lu(k,991) * b(k,132) - b(k,111) = b(k,111) - lu(k,990) * b(k,132) - b(k,110) = b(k,110) - lu(k,989) * b(k,132) - b(k,109) = b(k,109) - lu(k,988) * b(k,132) - b(k,108) = b(k,108) - lu(k,987) * b(k,132) - b(k,107) = b(k,107) - lu(k,986) * b(k,132) - b(k,106) = b(k,106) - lu(k,985) * b(k,132) - b(k,105) = b(k,105) - lu(k,984) * b(k,132) - b(k,103) = b(k,103) - lu(k,983) * b(k,132) - b(k,102) = b(k,102) - lu(k,982) * b(k,132) - b(k,95) = b(k,95) - lu(k,981) * b(k,132) - b(k,91) = b(k,91) - lu(k,980) * b(k,132) - b(k,90) = b(k,90) - lu(k,979) * b(k,132) - b(k,89) = b(k,89) - lu(k,978) * b(k,132) - b(k,88) = b(k,88) - lu(k,977) * b(k,132) - b(k,78) = b(k,78) - lu(k,976) * b(k,132) - b(k,76) = b(k,76) - lu(k,975) * b(k,132) - b(k,131) = b(k,131) * lu(k,966) - b(k,130) = b(k,130) - lu(k,965) * b(k,131) - b(k,129) = b(k,129) - lu(k,964) * b(k,131) - b(k,128) = b(k,128) - lu(k,963) * b(k,131) - b(k,127) = b(k,127) - lu(k,962) * b(k,131) - b(k,126) = b(k,126) - lu(k,961) * b(k,131) - b(k,124) = b(k,124) - lu(k,960) * b(k,131) - b(k,117) = b(k,117) - lu(k,959) * b(k,131) - b(k,102) = b(k,102) - lu(k,958) * b(k,131) - b(k,101) = b(k,101) - lu(k,957) * b(k,131) - b(k,94) = b(k,94) - lu(k,956) * b(k,131) - b(k,83) = b(k,83) - lu(k,955) * b(k,131) - b(k,65) = b(k,65) - lu(k,954) * b(k,131) - b(k,56) = b(k,56) - lu(k,953) * b(k,131) - b(k,130) = b(k,130) * lu(k,943) - b(k,129) = b(k,129) - lu(k,942) * b(k,130) - b(k,128) = b(k,128) - lu(k,941) * b(k,130) - b(k,127) = b(k,127) - lu(k,940) * b(k,130) - b(k,126) = b(k,126) - lu(k,939) * b(k,130) - b(k,125) = b(k,125) - lu(k,938) * b(k,130) - b(k,124) = b(k,124) - lu(k,937) * b(k,130) - b(k,123) = b(k,123) - lu(k,936) * b(k,130) - b(k,122) = b(k,122) - lu(k,935) * b(k,130) - b(k,121) = b(k,121) - lu(k,934) * b(k,130) - b(k,120) = b(k,120) - lu(k,933) * b(k,130) - b(k,119) = b(k,119) - lu(k,932) * b(k,130) - b(k,118) = b(k,118) - lu(k,931) * b(k,130) - b(k,116) = b(k,116) - lu(k,930) * b(k,130) - b(k,115) = b(k,115) - lu(k,929) * b(k,130) - b(k,114) = b(k,114) - lu(k,928) * b(k,130) - b(k,113) = b(k,113) - lu(k,927) * b(k,130) - b(k,111) = b(k,111) - lu(k,926) * b(k,130) - b(k,110) = b(k,110) - lu(k,925) * b(k,130) - b(k,109) = b(k,109) - lu(k,924) * b(k,130) - b(k,108) = b(k,108) - lu(k,923) * b(k,130) - b(k,106) = b(k,106) - lu(k,922) * b(k,130) - b(k,105) = b(k,105) - lu(k,921) * b(k,130) - b(k,100) = b(k,100) - lu(k,920) * b(k,130) - b(k,99) = b(k,99) - lu(k,919) * b(k,130) - b(k,98) = b(k,98) - lu(k,918) * b(k,130) - b(k,97) = b(k,97) - lu(k,917) * b(k,130) - b(k,96) = b(k,96) - lu(k,916) * b(k,130) - b(k,95) = b(k,95) - lu(k,915) * b(k,130) - b(k,94) = b(k,94) - lu(k,914) * b(k,130) - b(k,93) = b(k,93) - lu(k,913) * b(k,130) - b(k,91) = b(k,91) - lu(k,912) * b(k,130) - b(k,90) = b(k,90) - lu(k,911) * b(k,130) - b(k,89) = b(k,89) - lu(k,910) * b(k,130) - b(k,87) = b(k,87) - lu(k,909) * b(k,130) - b(k,84) = b(k,84) - lu(k,908) * b(k,130) - b(k,82) = b(k,82) - lu(k,907) * b(k,130) - b(k,79) = b(k,79) - lu(k,906) * b(k,130) - b(k,74) = b(k,74) - lu(k,905) * b(k,130) - b(k,73) = b(k,73) - lu(k,904) * b(k,130) - b(k,71) = b(k,71) - lu(k,903) * b(k,130) - b(k,69) = b(k,69) - lu(k,902) * b(k,130) - b(k,64) = b(k,64) - lu(k,901) * b(k,130) - b(k,63) = b(k,63) - lu(k,900) * b(k,130) - b(k,59) = b(k,59) - lu(k,899) * b(k,130) - b(k,54) = b(k,54) - lu(k,898) * b(k,130) - b(k,48) = b(k,48) - lu(k,897) * b(k,130) - b(k,129) = b(k,129) * lu(k,886) - b(k,128) = b(k,128) - lu(k,885) * b(k,129) - b(k,127) = b(k,127) - lu(k,884) * b(k,129) - b(k,126) = b(k,126) - lu(k,883) * b(k,129) - b(k,125) = b(k,125) - lu(k,882) * b(k,129) - b(k,124) = b(k,124) - lu(k,881) * b(k,129) - b(k,117) = b(k,117) - lu(k,880) * b(k,129) - b(k,111) = b(k,111) - lu(k,879) * b(k,129) - b(k,110) = b(k,110) - lu(k,878) * b(k,129) - b(k,104) = b(k,104) - lu(k,877) * b(k,129) - b(k,102) = b(k,102) - lu(k,876) * b(k,129) - b(k,101) = b(k,101) - lu(k,875) * b(k,129) - b(k,100) = b(k,100) - lu(k,874) * b(k,129) - b(k,99) = b(k,99) - lu(k,873) * b(k,129) - b(k,94) = b(k,94) - lu(k,872) * b(k,129) - b(k,84) = b(k,84) - lu(k,871) * b(k,129) - b(k,83) = b(k,83) - lu(k,870) * b(k,129) - b(k,78) = b(k,78) - lu(k,869) * b(k,129) - b(k,67) = b(k,67) - lu(k,868) * b(k,129) - b(k,128) = b(k,128) * lu(k,856) - b(k,127) = b(k,127) - lu(k,855) * b(k,128) - b(k,126) = b(k,126) - lu(k,854) * b(k,128) - b(k,125) = b(k,125) - lu(k,853) * b(k,128) - b(k,124) = b(k,124) - lu(k,852) * b(k,128) - b(k,123) = b(k,123) - lu(k,851) * b(k,128) - b(k,122) = b(k,122) - lu(k,850) * b(k,128) - b(k,121) = b(k,121) - lu(k,849) * b(k,128) - b(k,113) = b(k,113) - lu(k,848) * b(k,128) - b(k,111) = b(k,111) - lu(k,847) * b(k,128) - b(k,110) = b(k,110) - lu(k,846) * b(k,128) - b(k,107) = b(k,107) - lu(k,845) * b(k,128) - b(k,105) = b(k,105) - lu(k,844) * b(k,128) - b(k,104) = b(k,104) - lu(k,843) * b(k,128) - b(k,99) = b(k,99) - lu(k,842) * b(k,128) - b(k,96) = b(k,96) - lu(k,841) * b(k,128) - b(k,91) = b(k,91) - lu(k,840) * b(k,128) - b(k,86) = b(k,86) - lu(k,839) * b(k,128) - b(k,84) = b(k,84) - lu(k,838) * b(k,128) - b(k,77) = b(k,77) - lu(k,837) * b(k,128) - b(k,76) = b(k,76) - lu(k,836) * b(k,128) - b(k,70) = b(k,70) - lu(k,835) * b(k,128) - b(k,68) = b(k,68) - lu(k,834) * b(k,128) - b(k,61) = b(k,61) - lu(k,833) * b(k,128) - b(k,50) = b(k,50) - lu(k,832) * b(k,128) - end do - end subroutine lu_slv06 - subroutine lu_slv07( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,127) = b(k,127) * lu(k,820) - b(k,126) = b(k,126) - lu(k,819) * b(k,127) - b(k,124) = b(k,124) - lu(k,818) * b(k,127) - b(k,104) = b(k,104) - lu(k,817) * b(k,127) - b(k,101) = b(k,101) - lu(k,816) * b(k,127) - b(k,99) = b(k,99) - lu(k,815) * b(k,127) - b(k,94) = b(k,94) - lu(k,814) * b(k,127) - b(k,56) = b(k,56) - lu(k,813) * b(k,127) - b(k,50) = b(k,50) - lu(k,812) * b(k,127) - b(k,126) = b(k,126) * lu(k,800) - b(k,125) = b(k,125) - lu(k,799) * b(k,126) - b(k,124) = b(k,124) - lu(k,798) * b(k,126) - b(k,110) = b(k,110) - lu(k,797) * b(k,126) - b(k,100) = b(k,100) - lu(k,796) * b(k,126) - b(k,125) = b(k,125) * lu(k,783) - b(k,124) = b(k,124) - lu(k,782) * b(k,125) - b(k,111) = b(k,111) - lu(k,781) * b(k,125) - b(k,110) = b(k,110) - lu(k,780) * b(k,125) - b(k,101) = b(k,101) - lu(k,779) * b(k,125) - b(k,100) = b(k,100) - lu(k,778) * b(k,125) - b(k,124) = b(k,124) * lu(k,769) - b(k,111) = b(k,111) - lu(k,768) * b(k,124) - b(k,123) = b(k,123) * lu(k,753) - b(k,122) = b(k,122) - lu(k,752) * b(k,123) - b(k,121) = b(k,121) - lu(k,751) * b(k,123) - b(k,120) = b(k,120) - lu(k,750) * b(k,123) - b(k,119) = b(k,119) - lu(k,749) * b(k,123) - b(k,118) = b(k,118) - lu(k,748) * b(k,123) - b(k,116) = b(k,116) - lu(k,747) * b(k,123) - b(k,115) = b(k,115) - lu(k,746) * b(k,123) - b(k,114) = b(k,114) - lu(k,745) * b(k,123) - b(k,113) = b(k,113) - lu(k,744) * b(k,123) - b(k,110) = b(k,110) - lu(k,743) * b(k,123) - b(k,109) = b(k,109) - lu(k,742) * b(k,123) - b(k,108) = b(k,108) - lu(k,741) * b(k,123) - b(k,105) = b(k,105) - lu(k,740) * b(k,123) - b(k,98) = b(k,98) - lu(k,739) * b(k,123) - b(k,96) = b(k,96) - lu(k,738) * b(k,123) - b(k,95) = b(k,95) - lu(k,737) * b(k,123) - b(k,92) = b(k,92) - lu(k,736) * b(k,123) - b(k,90) = b(k,90) - lu(k,735) * b(k,123) - b(k,89) = b(k,89) - lu(k,734) * b(k,123) - b(k,80) = b(k,80) - lu(k,733) * b(k,123) - b(k,73) = b(k,73) - lu(k,732) * b(k,123) - b(k,66) = b(k,66) - lu(k,731) * b(k,123) - b(k,57) = b(k,57) - lu(k,730) * b(k,123) - b(k,122) = b(k,122) * lu(k,715) - b(k,121) = b(k,121) - lu(k,714) * b(k,122) - b(k,120) = b(k,120) - lu(k,713) * b(k,122) - b(k,119) = b(k,119) - lu(k,712) * b(k,122) - b(k,116) = b(k,116) - lu(k,711) * b(k,122) - b(k,113) = b(k,113) - lu(k,710) * b(k,122) - b(k,112) = b(k,112) - lu(k,709) * b(k,122) - b(k,110) = b(k,110) - lu(k,708) * b(k,122) - b(k,90) = b(k,90) - lu(k,707) * b(k,122) - b(k,121) = b(k,121) * lu(k,695) - b(k,120) = b(k,120) - lu(k,694) * b(k,121) - b(k,119) = b(k,119) - lu(k,693) * b(k,121) - b(k,118) = b(k,118) - lu(k,692) * b(k,121) - b(k,116) = b(k,116) - lu(k,691) * b(k,121) - b(k,115) = b(k,115) - lu(k,690) * b(k,121) - b(k,114) = b(k,114) - lu(k,689) * b(k,121) - b(k,110) = b(k,110) - lu(k,688) * b(k,121) - b(k,109) = b(k,109) - lu(k,687) * b(k,121) - b(k,105) = b(k,105) - lu(k,686) * b(k,121) - b(k,92) = b(k,92) - lu(k,685) * b(k,121) - b(k,90) = b(k,90) - lu(k,684) * b(k,121) - b(k,89) = b(k,89) - lu(k,683) * b(k,121) - b(k,87) = b(k,87) - lu(k,682) * b(k,121) - b(k,81) = b(k,81) - lu(k,681) * b(k,121) - b(k,66) = b(k,66) - lu(k,680) * b(k,121) - b(k,120) = b(k,120) * lu(k,668) - b(k,116) = b(k,116) - lu(k,667) * b(k,120) - b(k,110) = b(k,110) - lu(k,666) * b(k,120) - b(k,109) = b(k,109) - lu(k,665) * b(k,120) - b(k,90) = b(k,90) - lu(k,664) * b(k,120) - b(k,89) = b(k,89) - lu(k,663) * b(k,120) - b(k,87) = b(k,87) - lu(k,662) * b(k,120) - b(k,85) = b(k,85) - lu(k,661) * b(k,120) - b(k,119) = b(k,119) * lu(k,649) - b(k,116) = b(k,116) - lu(k,648) * b(k,119) - b(k,115) = b(k,115) - lu(k,647) * b(k,119) - b(k,110) = b(k,110) - lu(k,646) * b(k,119) - b(k,109) = b(k,109) - lu(k,645) * b(k,119) - b(k,106) = b(k,106) - lu(k,644) * b(k,119) - b(k,105) = b(k,105) - lu(k,643) * b(k,119) - b(k,80) = b(k,80) - lu(k,642) * b(k,119) - b(k,63) = b(k,63) - lu(k,641) * b(k,119) - b(k,118) = b(k,118) * lu(k,626) - b(k,116) = b(k,116) - lu(k,625) * b(k,118) - b(k,115) = b(k,115) - lu(k,624) * b(k,118) - b(k,114) = b(k,114) - lu(k,623) * b(k,118) - b(k,110) = b(k,110) - lu(k,622) * b(k,118) - b(k,109) = b(k,109) - lu(k,621) * b(k,118) - b(k,106) = b(k,106) - lu(k,620) * b(k,118) - b(k,105) = b(k,105) - lu(k,619) * b(k,118) - b(k,92) = b(k,92) - lu(k,618) * b(k,118) - b(k,80) = b(k,80) - lu(k,617) * b(k,118) - b(k,79) = b(k,79) - lu(k,616) * b(k,118) - b(k,66) = b(k,66) - lu(k,615) * b(k,118) - b(k,117) = b(k,117) * lu(k,602) - b(k,102) = b(k,102) - lu(k,601) * b(k,117) - b(k,78) = b(k,78) - lu(k,600) * b(k,117) - b(k,65) = b(k,65) - lu(k,599) * b(k,117) - b(k,116) = b(k,116) * lu(k,591) - b(k,110) = b(k,110) - lu(k,590) * b(k,116) - b(k,101) = b(k,101) - lu(k,589) * b(k,116) - b(k,115) = b(k,115) * lu(k,578) - b(k,110) = b(k,110) - lu(k,577) * b(k,115) - b(k,109) = b(k,109) - lu(k,576) * b(k,115) - b(k,105) = b(k,105) - lu(k,575) * b(k,115) - b(k,92) = b(k,92) - lu(k,574) * b(k,115) - b(k,90) = b(k,90) - lu(k,573) * b(k,115) - b(k,80) = b(k,80) - lu(k,572) * b(k,115) - b(k,54) = b(k,54) - lu(k,571) * b(k,115) - b(k,114) = b(k,114) * lu(k,560) - b(k,110) = b(k,110) - lu(k,559) * b(k,114) - b(k,113) = b(k,113) * lu(k,550) - b(k,110) = b(k,110) - lu(k,549) * b(k,113) - b(k,101) = b(k,101) - lu(k,548) * b(k,113) - b(k,112) = b(k,112) * lu(k,530) - b(k,111) = b(k,111) - lu(k,529) * b(k,112) - b(k,110) = b(k,110) - lu(k,528) * b(k,112) - b(k,109) = b(k,109) - lu(k,527) * b(k,112) - b(k,107) = b(k,107) - lu(k,526) * b(k,112) - b(k,93) = b(k,93) - lu(k,525) * b(k,112) - b(k,90) = b(k,90) - lu(k,524) * b(k,112) - b(k,89) = b(k,89) - lu(k,523) * b(k,112) - b(k,72) = b(k,72) - lu(k,522) * b(k,112) - b(k,111) = b(k,111) * lu(k,514) - b(k,110) = b(k,110) * lu(k,510) - b(k,90) = b(k,90) - lu(k,509) * b(k,110) - b(k,109) = b(k,109) * lu(k,503) - b(k,108) = b(k,108) * lu(k,492) - b(k,80) = b(k,80) - lu(k,491) * b(k,108) - b(k,74) = b(k,74) - lu(k,490) * b(k,108) - b(k,107) = b(k,107) * lu(k,477) - b(k,90) = b(k,90) - lu(k,476) * b(k,107) - b(k,106) = b(k,106) * lu(k,467) - b(k,101) = b(k,101) - lu(k,466) * b(k,106) - b(k,66) = b(k,66) - lu(k,465) * b(k,106) - b(k,105) = b(k,105) * lu(k,459) - b(k,92) = b(k,92) - lu(k,458) * b(k,105) - b(k,90) = b(k,90) - lu(k,457) * b(k,105) - b(k,104) = b(k,104) * lu(k,448) - b(k,101) = b(k,101) - lu(k,447) * b(k,104) - b(k,99) = b(k,99) - lu(k,446) * b(k,104) - b(k,50) = b(k,50) - lu(k,445) * b(k,104) - b(k,103) = b(k,103) * lu(k,429) - b(k,97) = b(k,97) - lu(k,428) * b(k,103) - b(k,102) = b(k,102) * lu(k,422) - b(k,58) = b(k,58) - lu(k,421) * b(k,102) - b(k,101) = b(k,101) * lu(k,416) - b(k,100) = b(k,100) * lu(k,408) - b(k,99) = b(k,99) * lu(k,401) - b(k,50) = b(k,50) - lu(k,400) * b(k,99) - b(k,98) = b(k,98) * lu(k,389) - b(k,95) = b(k,95) - lu(k,388) * b(k,98) - b(k,71) = b(k,71) - lu(k,387) * b(k,98) - b(k,97) = b(k,97) * lu(k,377) - b(k,96) = b(k,96) * lu(k,369) - b(k,80) = b(k,80) - lu(k,368) * b(k,96) - b(k,64) = b(k,64) - lu(k,367) * b(k,96) - b(k,57) = b(k,57) - lu(k,366) * b(k,96) - b(k,95) = b(k,95) * lu(k,360) - b(k,94) = b(k,94) * lu(k,352) - b(k,56) = b(k,56) - lu(k,351) * b(k,94) - b(k,93) = b(k,93) * lu(k,342) - b(k,82) = b(k,82) - lu(k,341) * b(k,93) - b(k,92) = b(k,92) * lu(k,336) - b(k,90) = b(k,90) - lu(k,335) * b(k,92) - b(k,91) = b(k,91) * lu(k,328) - b(k,59) = b(k,59) - lu(k,327) * b(k,91) - b(k,48) = b(k,48) - lu(k,326) * b(k,91) - b(k,90) = b(k,90) * lu(k,323) - b(k,89) = b(k,89) * lu(k,318) - b(k,88) = b(k,88) * lu(k,308) - b(k,87) = b(k,87) * lu(k,301) - b(k,86) = b(k,86) * lu(k,292) - b(k,85) = b(k,85) * lu(k,283) - b(k,84) = b(k,84) * lu(k,276) - b(k,83) = b(k,83) * lu(k,268) - b(k,82) = b(k,82) * lu(k,260) - b(k,81) = b(k,81) * lu(k,252) - b(k,80) = b(k,80) * lu(k,248) - b(k,79) = b(k,79) * lu(k,240) - b(k,78) = b(k,78) * lu(k,234) - b(k,77) = b(k,77) * lu(k,227) - b(k,76) = b(k,76) * lu(k,220) - b(k,75) = b(k,75) * lu(k,213) - b(k,53) = b(k,53) - lu(k,212) * b(k,75) - b(k,74) = b(k,74) * lu(k,206) - b(k,73) = b(k,73) * lu(k,200) - b(k,72) = b(k,72) * lu(k,194) - b(k,71) = b(k,71) * lu(k,188) - b(k,70) = b(k,70) * lu(k,182) - b(k,69) = b(k,69) * lu(k,176) - b(k,68) = b(k,68) * lu(k,168) - b(k,67) = b(k,67) * lu(k,160) - b(k,66) = b(k,66) * lu(k,157) - b(k,65) = b(k,65) * lu(k,152) - end do - end subroutine lu_slv07 - subroutine lu_slv08( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,64) = b(k,64) * lu(k,147) - b(k,63) = b(k,63) * lu(k,142) - b(k,62) = b(k,62) * lu(k,136) - b(k,61) = b(k,61) * lu(k,130) - b(k,60) = b(k,60) * lu(k,124) - b(k,59) = b(k,59) * lu(k,120) - b(k,58) = b(k,58) * lu(k,116) - b(k,49) = b(k,49) - lu(k,115) * b(k,58) - b(k,57) = b(k,57) * lu(k,111) - b(k,56) = b(k,56) * lu(k,108) - b(k,55) = b(k,55) * lu(k,103) - b(k,54) = b(k,54) * lu(k,100) - b(k,53) = b(k,53) * lu(k,97) - b(k,52) = b(k,52) * lu(k,93) - b(k,51) = b(k,51) * lu(k,89) - b(k,50) = b(k,50) * lu(k,87) - b(k,49) = b(k,49) * lu(k,84) - b(k,48) = b(k,48) * lu(k,81) - b(k,47) = b(k,47) * lu(k,77) - b(k,46) = b(k,46) * lu(k,73) - b(k,45) = b(k,45) * lu(k,69) - b(k,44) = b(k,44) * lu(k,66) - b(k,43) = b(k,43) * lu(k,63) - b(k,42) = b(k,42) * lu(k,60) - b(k,41) = b(k,41) * lu(k,57) - b(k,40) = b(k,40) * lu(k,54) - b(k,39) = b(k,39) * lu(k,51) - b(k,38) = b(k,38) * lu(k,48) - b(k,37) = b(k,37) * lu(k,45) - b(k,36) = b(k,36) * lu(k,42) - b(k,35) = b(k,35) * lu(k,39) - b(k,34) = b(k,34) * lu(k,36) - b(k,33) = b(k,33) * lu(k,35) - b(k,32) = b(k,32) * lu(k,34) - b(k,31) = b(k,31) * lu(k,32) - b(k,30) = b(k,30) * lu(k,31) - b(k,29) = b(k,29) * lu(k,30) - b(k,28) = b(k,28) * lu(k,29) - b(k,27) = b(k,27) * lu(k,28) - b(k,26) = b(k,26) * lu(k,27) - b(k,25) = b(k,25) * lu(k,26) - b(k,24) = b(k,24) * lu(k,25) - b(k,23) = b(k,23) * lu(k,24) - b(k,22) = b(k,22) * lu(k,23) - b(k,21) = b(k,21) * lu(k,22) - b(k,20) = b(k,20) * lu(k,21) - b(k,19) = b(k,19) * lu(k,20) - b(k,18) = b(k,18) * lu(k,19) - b(k,17) = b(k,17) * lu(k,18) - b(k,16) = b(k,16) * lu(k,17) - b(k,15) = b(k,15) * lu(k,16) - b(k,14) = b(k,14) * lu(k,15) - b(k,13) = b(k,13) * lu(k,14) - b(k,12) = b(k,12) * lu(k,13) - b(k,11) = b(k,11) * lu(k,12) - b(k,10) = b(k,10) * lu(k,11) - b(k,9) = b(k,9) * lu(k,9) - b(k,8) = b(k,8) * lu(k,8) - b(k,7) = b(k,7) * lu(k,7) - b(k,6) = b(k,6) * lu(k,6) - b(k,5) = b(k,5) * lu(k,5) - b(k,4) = b(k,4) * lu(k,4) - b(k,3) = b(k,3) * lu(k,3) - b(k,2) = b(k,2) * lu(k,2) - b(k,1) = b(k,1) * lu(k,1) - end do - end subroutine lu_slv08 - subroutine lu_slv( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) - call lu_slv01( avec_len, lu, b ) - call lu_slv02( avec_len, lu, b ) - call lu_slv03( avec_len, lu, b ) - call lu_slv04( avec_len, lu, b ) - call lu_slv05( avec_len, lu, b ) - call lu_slv06( avec_len, lu, b ) - call lu_slv07( avec_len, lu, b ) - call lu_slv08( avec_len, lu, b ) - end subroutine lu_slv - end module mo_lu_solve diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_nln_matrix.F90 deleted file mode 100644 index 388e9b1dad..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_nln_matrix.F90 +++ /dev/null @@ -1,2217 +0,0 @@ - module mo_nln_matrix - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only: veclen - private - public :: nlnmat - contains - subroutine nlnmat01( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,39) = -(rxt(k,293)*y(k,137)) - mat(k,1092) = -rxt(k,293)*y(k,3) - mat(k,800) = -(rxt(k,173)*y(k,25) + rxt(k,174)*y(k,132) + rxt(k,175)*y(k,98)) - mat(k,784) = -rxt(k,173)*y(k,4) - mat(k,939) = -rxt(k,174)*y(k,4) - mat(k,1005) = -rxt(k,175)*y(k,4) - mat(k,961) = 4.000_r8*rxt(k,176)*y(k,6) + (rxt(k,177)+rxt(k,178))*y(k,41) & - + rxt(k,181)*y(k,88) + rxt(k,184)*y(k,97) + rxt(k,325)*y(k,110) & - + rxt(k,185)*y(k,137) - mat(k,74) = rxt(k,163)*y(k,136) - mat(k,52) = rxt(k,189)*y(k,136) - mat(k,228) = 2.000_r8*rxt(k,194)*y(k,38) + 2.000_r8*rxt(k,206)*y(k,136) & - + 2.000_r8*rxt(k,195)*y(k,137) - mat(k,294) = rxt(k,196)*y(k,38) + rxt(k,207)*y(k,136) + rxt(k,197)*y(k,137) - mat(k,183) = 3.000_r8*rxt(k,201)*y(k,38) + 3.000_r8*rxt(k,190)*y(k,136) & - + 3.000_r8*rxt(k,202)*y(k,137) - mat(k,854) = 2.000_r8*rxt(k,194)*y(k,24) + rxt(k,196)*y(k,26) & - + 3.000_r8*rxt(k,201)*y(k,37) - mat(k,1232) = (rxt(k,177)+rxt(k,178))*y(k,6) - mat(k,43) = 2.000_r8*rxt(k,191)*y(k,136) - mat(k,410) = rxt(k,186)*y(k,97) + rxt(k,192)*y(k,136) + rxt(k,187)*y(k,137) - mat(k,1274) = rxt(k,181)*y(k,6) - mat(k,883) = rxt(k,184)*y(k,6) + rxt(k,186)*y(k,59) - mat(k,604) = rxt(k,325)*y(k,6) - mat(k,1078) = rxt(k,163)*y(k,17) + rxt(k,189)*y(k,18) + 2.000_r8*rxt(k,206) & - *y(k,24) + rxt(k,207)*y(k,26) + 3.000_r8*rxt(k,190)*y(k,37) & - + 2.000_r8*rxt(k,191)*y(k,56) + rxt(k,192)*y(k,59) - mat(k,1163) = rxt(k,185)*y(k,6) + 2.000_r8*rxt(k,195)*y(k,24) + rxt(k,197) & - *y(k,26) + 3.000_r8*rxt(k,202)*y(k,37) + rxt(k,187)*y(k,59) - mat(k,953) = rxt(k,179)*y(k,41) - mat(k,1223) = rxt(k,179)*y(k,6) - mat(k,813) = (rxt(k,351)+rxt(k,356))*y(k,67) - mat(k,351) = (rxt(k,351)+rxt(k,356))*y(k,63) - mat(k,966) = -(4._r8*rxt(k,176)*y(k,6) + (rxt(k,177) + rxt(k,178) + rxt(k,179) & - ) * y(k,41) + rxt(k,180)*y(k,132) + rxt(k,181)*y(k,88) + rxt(k,182) & - *y(k,89) + rxt(k,184)*y(k,97) + rxt(k,185)*y(k,137) + rxt(k,325) & - *y(k,110)) - mat(k,1237) = -(rxt(k,177) + rxt(k,178) + rxt(k,179)) * y(k,6) - mat(k,944) = -rxt(k,180)*y(k,6) - mat(k,1279) = -rxt(k,181)*y(k,6) - mat(k,1046) = -rxt(k,182)*y(k,6) - mat(k,888) = -rxt(k,184)*y(k,6) - mat(k,1168) = -rxt(k,185)*y(k,6) - mat(k,608) = -rxt(k,325)*y(k,6) - mat(k,805) = rxt(k,175)*y(k,98) - mat(k,273) = rxt(k,183)*y(k,97) - mat(k,412) = rxt(k,193)*y(k,136) - mat(k,357) = rxt(k,188)*y(k,97) - mat(k,888) = mat(k,888) + rxt(k,183)*y(k,7) + rxt(k,188)*y(k,67) - mat(k,1010) = rxt(k,175)*y(k,4) - mat(k,1083) = rxt(k,193)*y(k,59) - mat(k,268) = -(rxt(k,183)*y(k,97)) - mat(k,870) = -rxt(k,183)*y(k,7) - mat(k,955) = rxt(k,182)*y(k,89) - mat(k,1024) = rxt(k,182)*y(k,6) - mat(k,220) = -(rxt(k,225)*y(k,38) + rxt(k,226)*y(k,98) + rxt(k,250)*y(k,137)) - mat(k,836) = -rxt(k,225)*y(k,9) - mat(k,975) = -rxt(k,226)*y(k,9) - mat(k,1116) = -rxt(k,250)*y(k,9) - mat(k,111) = -(rxt(k,231)*y(k,137)) - mat(k,1100) = -rxt(k,231)*y(k,10) - mat(k,366) = .800_r8*rxt(k,227)*y(k,126) + .200_r8*rxt(k,228)*y(k,129) - mat(k,730) = .200_r8*rxt(k,228)*y(k,126) - mat(k,147) = -(rxt(k,232)*y(k,137)) - mat(k,1105) = -rxt(k,232)*y(k,11) - mat(k,367) = rxt(k,229)*y(k,132) - mat(k,901) = rxt(k,229)*y(k,126) - mat(k,130) = -(rxt(k,233)*y(k,38) + rxt(k,234)*y(k,137)) - mat(k,833) = -rxt(k,233)*y(k,12) - mat(k,1102) = -rxt(k,234)*y(k,12) - mat(k,530) = -(rxt(k,253)*y(k,90) + rxt(k,254)*y(k,98) + rxt(k,271)*y(k,137)) - mat(k,1193) = -rxt(k,253)*y(k,13) - mat(k,991) = -rxt(k,254)*y(k,13) - mat(k,1149) = -rxt(k,271)*y(k,13) - mat(k,432) = .130_r8*rxt(k,304)*y(k,98) - mat(k,991) = mat(k,991) + .130_r8*rxt(k,304)*y(k,71) - mat(k,188) = -(rxt(k,258)*y(k,137)) - mat(k,1111) = -rxt(k,258)*y(k,14) - mat(k,387) = rxt(k,256)*y(k,132) - mat(k,903) = rxt(k,256)*y(k,127) - mat(k,69) = -(rxt(k,259)*y(k,137)) - mat(k,1094) = -rxt(k,259)*y(k,15) - mat(k,48) = -(rxt(k,162)*y(k,136)) - mat(k,1056) = -rxt(k,162)*y(k,16) - mat(k,73) = -(rxt(k,163)*y(k,136)) - mat(k,1063) = -rxt(k,163)*y(k,17) - mat(k,51) = -(rxt(k,189)*y(k,136)) - mat(k,1057) = -rxt(k,189)*y(k,18) - mat(k,54) = -(rxt(k,164)*y(k,136)) - mat(k,1058) = -rxt(k,164)*y(k,19) - mat(k,57) = -(rxt(k,165)*y(k,136)) - mat(k,1059) = -rxt(k,165)*y(k,20) - mat(k,60) = -(rxt(k,166)*y(k,136)) - mat(k,1060) = -rxt(k,166)*y(k,21) - mat(k,63) = -(rxt(k,167)*y(k,136)) - mat(k,1061) = -rxt(k,167)*y(k,22) - mat(k,66) = -(rxt(k,168)*y(k,136)) - mat(k,1062) = -rxt(k,168)*y(k,23) - mat(k,227) = -(rxt(k,194)*y(k,38) + rxt(k,195)*y(k,137) + rxt(k,206)*y(k,136)) - mat(k,837) = -rxt(k,194)*y(k,24) - mat(k,1117) = -rxt(k,195)*y(k,24) - mat(k,1069) = -rxt(k,206)*y(k,24) - mat(k,783) = -(rxt(k,137)*y(k,38) + rxt(k,173)*y(k,4) + rxt(k,211)*y(k,90) & - + rxt(k,212)*y(k,97) + rxt(k,213)*y(k,137)) - mat(k,853) = -rxt(k,137)*y(k,25) - mat(k,799) = -rxt(k,173)*y(k,25) - mat(k,1206) = -rxt(k,211)*y(k,25) - mat(k,882) = -rxt(k,212)*y(k,25) - mat(k,1162) = -rxt(k,213)*y(k,25) - mat(k,223) = rxt(k,226)*y(k,98) - mat(k,536) = .500_r8*rxt(k,254)*y(k,98) - mat(k,305) = .500_r8*rxt(k,242)*y(k,137) - mat(k,249) = rxt(k,218)*y(k,137) - mat(k,203) = .300_r8*rxt(k,219)*y(k,137) - mat(k,482) = (rxt(k,222)+rxt(k,223))*y(k,136) - mat(k,1231) = rxt(k,144)*y(k,129) - mat(k,461) = .800_r8*rxt(k,247)*y(k,137) - mat(k,438) = .910_r8*rxt(k,304)*y(k,98) - mat(k,381) = .072_r8*rxt(k,297)*y(k,88) + .072_r8*rxt(k,298)*y(k,90) & - + .206_r8*rxt(k,296)*y(k,132) - mat(k,565) = .120_r8*rxt(k,279)*y(k,98) - mat(k,287) = .500_r8*rxt(k,288)*y(k,137) - mat(k,718) = .600_r8*rxt(k,289)*y(k,98) - mat(k,1273) = .072_r8*rxt(k,297)*y(k,72) + rxt(k,217)*y(k,129) & - + .500_r8*rxt(k,244)*y(k,131) + .550_r8*rxt(k,302)*y(k,133) & - + .250_r8*rxt(k,277)*y(k,134) + rxt(k,286)*y(k,135) + rxt(k,265) & - *y(k,138) + rxt(k,269)*y(k,139) + .250_r8*rxt(k,312)*y(k,140) - mat(k,1206) = mat(k,1206) + .072_r8*rxt(k,298)*y(k,72) + .600_r8*rxt(k,303) & - *y(k,133) + .250_r8*rxt(k,276)*y(k,134) + rxt(k,287)*y(k,135) - mat(k,1004) = rxt(k,226)*y(k,9) + .500_r8*rxt(k,254)*y(k,13) & - + .910_r8*rxt(k,304)*y(k,71) + .120_r8*rxt(k,279)*y(k,74) & - + .600_r8*rxt(k,289)*y(k,77) - mat(k,256) = rxt(k,249)*y(k,137) - mat(k,372) = .700_r8*rxt(k,228)*y(k,129) - mat(k,394) = rxt(k,255)*y(k,129) - mat(k,698) = rxt(k,238)*y(k,129) + .600_r8*rxt(k,299)*y(k,133) & - + .250_r8*rxt(k,273)*y(k,134) + rxt(k,282)*y(k,135) & - + .250_r8*rxt(k,309)*y(k,140) - mat(k,755) = rxt(k,144)*y(k,41) + rxt(k,217)*y(k,88) + .700_r8*rxt(k,228) & - *y(k,126) + rxt(k,255)*y(k,127) + rxt(k,238)*y(k,128) + ( & - + 4.000_r8*rxt(k,214)+2.000_r8*rxt(k,215))*y(k,129) & - + 1.200_r8*rxt(k,300)*y(k,133) + .880_r8*rxt(k,274)*y(k,134) & - + 2.000_r8*rxt(k,283)*y(k,135) + .800_r8*rxt(k,267)*y(k,139) & - + .800_r8*rxt(k,310)*y(k,140) - mat(k,330) = .500_r8*rxt(k,244)*y(k,88) - mat(k,938) = .206_r8*rxt(k,296)*y(k,72) + .450_r8*rxt(k,284)*y(k,135) & - + .150_r8*rxt(k,268)*y(k,139) - mat(k,632) = .550_r8*rxt(k,302)*y(k,88) + .600_r8*rxt(k,303)*y(k,90) & - + .600_r8*rxt(k,299)*y(k,128) + 1.200_r8*rxt(k,300)*y(k,129) - mat(k,653) = .250_r8*rxt(k,277)*y(k,88) + .250_r8*rxt(k,276)*y(k,90) & - + .250_r8*rxt(k,273)*y(k,128) + .880_r8*rxt(k,274)*y(k,129) - mat(k,671) = rxt(k,286)*y(k,88) + rxt(k,287)*y(k,90) + rxt(k,282)*y(k,128) & - + 2.000_r8*rxt(k,283)*y(k,129) + .450_r8*rxt(k,284)*y(k,132) & - + 4.000_r8*rxt(k,285)*y(k,135) - mat(k,1077) = (rxt(k,222)+rxt(k,223))*y(k,36) - mat(k,1162) = mat(k,1162) + .500_r8*rxt(k,242)*y(k,33) + rxt(k,218)*y(k,34) & - + .300_r8*rxt(k,219)*y(k,35) + .800_r8*rxt(k,247)*y(k,52) & - + .500_r8*rxt(k,288)*y(k,76) + rxt(k,249)*y(k,103) - mat(k,345) = rxt(k,265)*y(k,88) - mat(k,497) = rxt(k,269)*y(k,88) + .800_r8*rxt(k,267)*y(k,129) & - + .150_r8*rxt(k,268)*y(k,132) - mat(k,582) = .250_r8*rxt(k,312)*y(k,88) + .250_r8*rxt(k,309)*y(k,128) & - + .800_r8*rxt(k,310)*y(k,129) - mat(k,292) = -(rxt(k,196)*y(k,38) + rxt(k,197)*y(k,137) + rxt(k,207)*y(k,136)) - mat(k,839) = -rxt(k,196)*y(k,26) - mat(k,1125) = -rxt(k,197)*y(k,26) - mat(k,1070) = -rxt(k,207)*y(k,26) - mat(k,77) = -(rxt(k,198)*y(k,137)) - mat(k,1095) = -rxt(k,198)*y(k,27) - mat(k,550) = -(rxt(k,235)*y(k,90) + rxt(k,236)*y(k,137)) - mat(k,1194) = -rxt(k,235)*y(k,28) - mat(k,1150) = -rxt(k,236)*y(k,28) - mat(k,112) = rxt(k,231)*y(k,137) - mat(k,149) = .500_r8*rxt(k,232)*y(k,137) - mat(k,531) = .500_r8*rxt(k,254)*y(k,98) - mat(k,710) = .100_r8*rxt(k,289)*y(k,98) - mat(k,1262) = rxt(k,230)*y(k,126) + .270_r8*rxt(k,257)*y(k,127) + rxt(k,265) & - *y(k,138) - mat(k,992) = .500_r8*rxt(k,254)*y(k,13) + .100_r8*rxt(k,289)*y(k,77) - mat(k,370) = rxt(k,230)*y(k,88) + 3.200_r8*rxt(k,227)*y(k,126) & - + .800_r8*rxt(k,228)*y(k,129) - mat(k,391) = .270_r8*rxt(k,257)*y(k,88) - mat(k,744) = .800_r8*rxt(k,228)*y(k,126) - mat(k,1150) = mat(k,1150) + rxt(k,231)*y(k,10) + .500_r8*rxt(k,232)*y(k,11) - mat(k,344) = rxt(k,265)*y(k,88) - mat(k,168) = -(rxt(k,199)*y(k,38) + rxt(k,200)*y(k,137)) - mat(k,834) = -rxt(k,199)*y(k,29) - mat(k,1108) = -rxt(k,200)*y(k,29) - mat(k,360) = -(rxt(k,272)*y(k,137)) - mat(k,1133) = -rxt(k,272)*y(k,30) - mat(k,1253) = .820_r8*rxt(k,257)*y(k,127) - mat(k,309) = .100_r8*rxt(k,317)*y(k,137) - mat(k,388) = .820_r8*rxt(k,257)*y(k,88) + .820_r8*rxt(k,255)*y(k,129) - mat(k,737) = .820_r8*rxt(k,255)*y(k,127) - mat(k,1133) = mat(k,1133) + .100_r8*rxt(k,317)*y(k,122) - mat(k,591) = -(rxt(k,260)*y(k,90) + rxt(k,261)*y(k,137)) - mat(k,1197) = -rxt(k,260)*y(k,31) - mat(k,1153) = -rxt(k,261)*y(k,31) - mat(k,504) = rxt(k,262)*y(k,137) - mat(k,561) = .880_r8*rxt(k,279)*y(k,98) - mat(k,711) = .500_r8*rxt(k,289)*y(k,98) - mat(k,1265) = .020_r8*rxt(k,302)*y(k,133) + .250_r8*rxt(k,277)*y(k,134) & - + .250_r8*rxt(k,312)*y(k,140) - mat(k,1197) = mat(k,1197) + .250_r8*rxt(k,276)*y(k,134) + .250_r8*rxt(k,313) & - *y(k,140) - mat(k,195) = rxt(k,263)*y(k,137) - mat(k,995) = .880_r8*rxt(k,279)*y(k,74) + .500_r8*rxt(k,289)*y(k,77) - mat(k,691) = .250_r8*rxt(k,273)*y(k,134) + .250_r8*rxt(k,309)*y(k,140) - mat(k,747) = .240_r8*rxt(k,274)*y(k,134) + .500_r8*rxt(k,267)*y(k,139) & - + .100_r8*rxt(k,310)*y(k,140) - mat(k,625) = .020_r8*rxt(k,302)*y(k,88) - mat(k,648) = .250_r8*rxt(k,277)*y(k,88) + .250_r8*rxt(k,276)*y(k,90) & - + .250_r8*rxt(k,273)*y(k,128) + .240_r8*rxt(k,274)*y(k,129) - mat(k,1153) = mat(k,1153) + rxt(k,262)*y(k,69) + rxt(k,263)*y(k,91) - mat(k,494) = .500_r8*rxt(k,267)*y(k,129) - mat(k,579) = .250_r8*rxt(k,312)*y(k,88) + .250_r8*rxt(k,313)*y(k,90) & - + .250_r8*rxt(k,309)*y(k,128) + .100_r8*rxt(k,310)*y(k,129) - end do - end subroutine nlnmat01 - subroutine nlnmat02( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,318) = -(rxt(k,241)*y(k,137)) - mat(k,1128) = -rxt(k,241)*y(k,32) - mat(k,523) = .120_r8*rxt(k,254)*y(k,98) - mat(k,978) = .120_r8*rxt(k,254)*y(k,13) - mat(k,683) = .100_r8*rxt(k,238)*y(k,129) + .150_r8*rxt(k,239)*y(k,132) - mat(k,734) = .100_r8*rxt(k,238)*y(k,128) - mat(k,910) = .150_r8*rxt(k,239)*y(k,128) + .150_r8*rxt(k,284)*y(k,135) - mat(k,663) = .150_r8*rxt(k,284)*y(k,132) - mat(k,301) = -(rxt(k,242)*y(k,137)) - mat(k,1126) = -rxt(k,242)*y(k,33) - mat(k,682) = .400_r8*rxt(k,239)*y(k,132) - mat(k,909) = .400_r8*rxt(k,239)*y(k,128) + .400_r8*rxt(k,284)*y(k,135) - mat(k,662) = .400_r8*rxt(k,284)*y(k,132) - mat(k,248) = -(rxt(k,218)*y(k,137)) - mat(k,1120) = -rxt(k,218)*y(k,34) - mat(k,368) = .300_r8*rxt(k,228)*y(k,129) - mat(k,733) = .300_r8*rxt(k,228)*y(k,126) + 2.000_r8*rxt(k,215)*y(k,129) & - + .250_r8*rxt(k,300)*y(k,133) + .250_r8*rxt(k,274)*y(k,134) & - + .500_r8*rxt(k,267)*y(k,139) + .300_r8*rxt(k,310)*y(k,140) - mat(k,617) = .250_r8*rxt(k,300)*y(k,129) - mat(k,642) = .250_r8*rxt(k,274)*y(k,129) - mat(k,491) = .500_r8*rxt(k,267)*y(k,129) - mat(k,572) = .300_r8*rxt(k,310)*y(k,129) - mat(k,200) = -(rxt(k,219)*y(k,137)) - mat(k,1113) = -rxt(k,219)*y(k,35) - mat(k,732) = rxt(k,216)*y(k,132) - mat(k,904) = rxt(k,216)*y(k,129) - mat(k,477) = -(rxt(k,138)*y(k,38) + rxt(k,220)*y(k,137) + (rxt(k,221) & - + rxt(k,222) + rxt(k,223)) * y(k,136)) - mat(k,845) = -rxt(k,138)*y(k,36) - mat(k,1144) = -rxt(k,220)*y(k,36) - mat(k,1072) = -(rxt(k,221) + rxt(k,222) + rxt(k,223)) * y(k,36) - mat(k,526) = .100_r8*rxt(k,254)*y(k,98) - mat(k,986) = .100_r8*rxt(k,254)*y(k,13) - mat(k,182) = -(rxt(k,190)*y(k,136) + rxt(k,201)*y(k,38) + rxt(k,202)*y(k,137)) - mat(k,1068) = -rxt(k,190)*y(k,37) - mat(k,835) = -rxt(k,201)*y(k,37) - mat(k,1110) = -rxt(k,202)*y(k,37) - mat(k,856) = -(rxt(k,137)*y(k,25) + rxt(k,138)*y(k,36) + rxt(k,139)*y(k,55) & - + rxt(k,140)*y(k,57) + (rxt(k,141) + rxt(k,142)) * y(k,132) & - + rxt(k,143)*y(k,98) + rxt(k,150)*y(k,42) + rxt(k,159)*y(k,68) & - + rxt(k,194)*y(k,24) + rxt(k,196)*y(k,26) + rxt(k,199)*y(k,29) & - + rxt(k,201)*y(k,37) + rxt(k,233)*y(k,12)) - mat(k,786) = -rxt(k,137)*y(k,38) - mat(k,484) = -rxt(k,138)*y(k,38) - mat(k,517) = -rxt(k,139)*y(k,38) - mat(k,278) = -rxt(k,140)*y(k,38) - mat(k,941) = -(rxt(k,141) + rxt(k,142)) * y(k,38) - mat(k,1007) = -rxt(k,143)*y(k,38) - mat(k,450) = -rxt(k,150)*y(k,38) - mat(k,403) = -rxt(k,159)*y(k,38) - mat(k,230) = -rxt(k,194)*y(k,38) - mat(k,296) = -rxt(k,196)*y(k,38) - mat(k,172) = -rxt(k,199)*y(k,38) - mat(k,185) = -rxt(k,201)*y(k,38) - mat(k,133) = -rxt(k,233)*y(k,38) - mat(k,963) = rxt(k,178)*y(k,41) - mat(k,49) = 4.000_r8*rxt(k,162)*y(k,136) - mat(k,75) = rxt(k,163)*y(k,136) - mat(k,55) = 3.000_r8*rxt(k,164)*y(k,136) - mat(k,58) = 3.000_r8*rxt(k,165)*y(k,136) - mat(k,61) = 2.000_r8*rxt(k,166)*y(k,136) - mat(k,64) = rxt(k,167)*y(k,136) - mat(k,67) = 2.000_r8*rxt(k,168)*y(k,136) - mat(k,78) = 3.000_r8*rxt(k,198)*y(k,137) - mat(k,172) = mat(k,172) + rxt(k,200)*y(k,137) - mat(k,1234) = rxt(k,178)*y(k,6) + (4.000_r8*rxt(k,145)+2.000_r8*rxt(k,147)) & - *y(k,41) + rxt(k,149)*y(k,88) + rxt(k,154)*y(k,97) + rxt(k,326) & - *y(k,110) + rxt(k,144)*y(k,129) + rxt(k,155)*y(k,137) - mat(k,90) = 2.000_r8*rxt(k,208)*y(k,136) + 2.000_r8*rxt(k,203)*y(k,137) - mat(k,94) = rxt(k,209)*y(k,136) + rxt(k,204)*y(k,137) - mat(k,104) = rxt(k,210)*y(k,136) + rxt(k,205)*y(k,137) - mat(k,821) = rxt(k,157)*y(k,97) + rxt(k,169)*y(k,136) + rxt(k,158)*y(k,137) - mat(k,1276) = rxt(k,149)*y(k,41) - mat(k,885) = rxt(k,154)*y(k,41) + rxt(k,157)*y(k,63) - mat(k,605) = rxt(k,326)*y(k,41) - mat(k,757) = rxt(k,144)*y(k,41) - mat(k,1080) = 4.000_r8*rxt(k,162)*y(k,16) + rxt(k,163)*y(k,17) & - + 3.000_r8*rxt(k,164)*y(k,19) + 3.000_r8*rxt(k,165)*y(k,20) & - + 2.000_r8*rxt(k,166)*y(k,21) + rxt(k,167)*y(k,22) & - + 2.000_r8*rxt(k,168)*y(k,23) + 2.000_r8*rxt(k,208)*y(k,60) & - + rxt(k,209)*y(k,61) + rxt(k,210)*y(k,62) + rxt(k,169)*y(k,63) - mat(k,1165) = 3.000_r8*rxt(k,198)*y(k,27) + rxt(k,200)*y(k,29) + rxt(k,155) & - *y(k,41) + 2.000_r8*rxt(k,203)*y(k,60) + rxt(k,204)*y(k,61) & - + rxt(k,205)*y(k,62) + rxt(k,158)*y(k,63) - mat(k,832) = rxt(k,150)*y(k,42) - mat(k,1222) = 2.000_r8*rxt(k,146)*y(k,41) - mat(k,445) = rxt(k,150)*y(k,38) + (rxt(k,349)+rxt(k,354)+rxt(k,359))*y(k,63) - mat(k,812) = (rxt(k,349)+rxt(k,354)+rxt(k,359))*y(k,42) + (rxt(k,344) & - +rxt(k,350)+rxt(k,355))*y(k,68) - mat(k,400) = (rxt(k,344)+rxt(k,350)+rxt(k,355))*y(k,63) - mat(k,1221) = 2.000_r8*rxt(k,171)*y(k,41) - mat(k,1243) = -(rxt(k,144)*y(k,129) + (4._r8*rxt(k,145) + 4._r8*rxt(k,146) & - + 4._r8*rxt(k,147) + 4._r8*rxt(k,171)) * y(k,41) + rxt(k,148) & - *y(k,132) + rxt(k,149)*y(k,88) + rxt(k,151)*y(k,89) + rxt(k,154) & - *y(k,97) + (rxt(k,155) + rxt(k,156)) * y(k,137) + (rxt(k,177) & - + rxt(k,178) + rxt(k,179)) * y(k,6) + rxt(k,326)*y(k,110)) - mat(k,765) = -rxt(k,144)*y(k,41) - mat(k,950) = -rxt(k,148)*y(k,41) - mat(k,1285) = -rxt(k,149)*y(k,41) - mat(k,1052) = -rxt(k,151)*y(k,41) - mat(k,894) = -rxt(k,154)*y(k,41) - mat(k,1174) = -(rxt(k,155) + rxt(k,156)) * y(k,41) - mat(k,972) = -(rxt(k,177) + rxt(k,178) + rxt(k,179)) * y(k,41) - mat(k,612) = -rxt(k,326)*y(k,41) - mat(k,865) = rxt(k,159)*y(k,68) + rxt(k,143)*y(k,98) + rxt(k,142)*y(k,132) - mat(k,455) = rxt(k,152)*y(k,97) - mat(k,830) = rxt(k,170)*y(k,136) - mat(k,406) = rxt(k,159)*y(k,38) + rxt(k,160)*y(k,97) + rxt(k,161)*y(k,137) - mat(k,894) = mat(k,894) + rxt(k,152)*y(k,42) + rxt(k,160)*y(k,68) - mat(k,1016) = rxt(k,143)*y(k,38) - mat(k,156) = rxt(k,331)*y(k,110) - mat(k,612) = mat(k,612) + rxt(k,331)*y(k,100) - mat(k,950) = mat(k,950) + rxt(k,142)*y(k,38) - mat(k,1089) = rxt(k,170)*y(k,63) - mat(k,1174) = mat(k,1174) + rxt(k,161)*y(k,68) - mat(k,448) = -(rxt(k,150)*y(k,38) + rxt(k,152)*y(k,97) + rxt(k,153)*y(k,137) & - + (rxt(k,349) + rxt(k,354) + rxt(k,359)) * y(k,63)) - mat(k,843) = -rxt(k,150)*y(k,42) - mat(k,877) = -rxt(k,152)*y(k,42) - mat(k,1141) = -rxt(k,153)*y(k,42) - mat(k,817) = -(rxt(k,349) + rxt(k,354) + rxt(k,359)) * y(k,42) - mat(k,1227) = rxt(k,151)*y(k,89) - mat(k,1030) = rxt(k,151)*y(k,41) - mat(k,510) = -(rxt(k,224)*y(k,137)) - mat(k,1147) = -rxt(k,224)*y(k,44) - mat(k,797) = rxt(k,173)*y(k,25) - mat(k,222) = .630_r8*rxt(k,226)*y(k,98) - mat(k,528) = .560_r8*rxt(k,254)*y(k,98) - mat(k,780) = rxt(k,173)*y(k,4) + rxt(k,137)*y(k,38) + rxt(k,211)*y(k,90) & - + rxt(k,212)*y(k,97) + rxt(k,213)*y(k,137) - mat(k,169) = rxt(k,199)*y(k,38) - mat(k,590) = rxt(k,260)*y(k,90) + rxt(k,261)*y(k,137) - mat(k,846) = rxt(k,137)*y(k,25) + rxt(k,199)*y(k,29) - mat(k,337) = rxt(k,248)*y(k,137) - mat(k,431) = .620_r8*rxt(k,304)*y(k,98) - mat(k,559) = .650_r8*rxt(k,279)*y(k,98) - mat(k,708) = .560_r8*rxt(k,289)*y(k,98) - mat(k,1261) = .220_r8*rxt(k,277)*y(k,134) + .250_r8*rxt(k,312)*y(k,140) - mat(k,1192) = rxt(k,211)*y(k,25) + rxt(k,260)*y(k,31) + .220_r8*rxt(k,276) & - *y(k,134) + .500_r8*rxt(k,313)*y(k,140) - mat(k,878) = rxt(k,212)*y(k,25) + rxt(k,320)*y(k,101) - mat(k,989) = .630_r8*rxt(k,226)*y(k,9) + .560_r8*rxt(k,254)*y(k,13) & - + .620_r8*rxt(k,304)*y(k,71) + .650_r8*rxt(k,279)*y(k,74) & - + .560_r8*rxt(k,289)*y(k,77) - mat(k,163) = rxt(k,320)*y(k,97) + rxt(k,321)*y(k,137) - mat(k,688) = .220_r8*rxt(k,273)*y(k,134) + .250_r8*rxt(k,309)*y(k,140) - mat(k,743) = .110_r8*rxt(k,274)*y(k,134) + .200_r8*rxt(k,310)*y(k,140) - mat(k,646) = .220_r8*rxt(k,277)*y(k,88) + .220_r8*rxt(k,276)*y(k,90) & - + .220_r8*rxt(k,273)*y(k,128) + .110_r8*rxt(k,274)*y(k,129) - mat(k,1147) = mat(k,1147) + rxt(k,213)*y(k,25) + rxt(k,261)*y(k,31) & - + rxt(k,248)*y(k,53) + rxt(k,321)*y(k,101) - mat(k,577) = .250_r8*rxt(k,312)*y(k,88) + .500_r8*rxt(k,313)*y(k,90) & - + .250_r8*rxt(k,309)*y(k,128) + .200_r8*rxt(k,310)*y(k,129) - mat(k,524) = .200_r8*rxt(k,254)*y(k,98) - mat(k,319) = rxt(k,241)*y(k,137) - mat(k,302) = .500_r8*rxt(k,242)*y(k,137) - mat(k,509) = rxt(k,224)*y(k,137) - mat(k,457) = .800_r8*rxt(k,247)*y(k,137) - mat(k,335) = rxt(k,248)*y(k,137) - mat(k,284) = .500_r8*rxt(k,288)*y(k,137) - mat(k,707) = .100_r8*rxt(k,289)*y(k,98) - mat(k,1249) = rxt(k,240)*y(k,128) - mat(k,979) = .200_r8*rxt(k,254)*y(k,13) + .100_r8*rxt(k,289)*y(k,77) - mat(k,684) = rxt(k,240)*y(k,88) + 4.000_r8*rxt(k,237)*y(k,128) & - + .900_r8*rxt(k,238)*y(k,129) + 2.000_r8*rxt(k,282)*y(k,135) & - + rxt(k,309)*y(k,140) - mat(k,735) = .900_r8*rxt(k,238)*y(k,128) + rxt(k,283)*y(k,135) - mat(k,911) = .450_r8*rxt(k,284)*y(k,135) - mat(k,664) = 2.000_r8*rxt(k,282)*y(k,128) + rxt(k,283)*y(k,129) & - + .450_r8*rxt(k,284)*y(k,132) + 4.000_r8*rxt(k,285)*y(k,135) - mat(k,1129) = rxt(k,241)*y(k,32) + .500_r8*rxt(k,242)*y(k,33) + rxt(k,224) & - *y(k,44) + .800_r8*rxt(k,247)*y(k,52) + rxt(k,248)*y(k,53) & - + .500_r8*rxt(k,288)*y(k,76) - mat(k,573) = rxt(k,309)*y(k,128) - mat(k,136) = -(rxt(k,318)*y(k,90) + (rxt(k,319) + rxt(k,333)) * y(k,137)) - mat(k,1178) = -rxt(k,318)*y(k,46) - mat(k,1103) = -(rxt(k,319) + rxt(k,333)) * y(k,46) - mat(k,326) = rxt(k,243)*y(k,132) - mat(k,897) = rxt(k,243)*y(k,131) - mat(k,459) = -(rxt(k,247)*y(k,137)) - mat(k,1142) = -rxt(k,247)*y(k,52) - mat(k,1257) = .020_r8*rxt(k,302)*y(k,133) + .530_r8*rxt(k,277)*y(k,134) & - + .250_r8*rxt(k,312)*y(k,140) - mat(k,1188) = .530_r8*rxt(k,276)*y(k,134) + .250_r8*rxt(k,313)*y(k,140) - mat(k,686) = .530_r8*rxt(k,273)*y(k,134) + .250_r8*rxt(k,309)*y(k,140) - mat(k,740) = .260_r8*rxt(k,274)*y(k,134) + .100_r8*rxt(k,310)*y(k,140) - mat(k,619) = .020_r8*rxt(k,302)*y(k,88) - mat(k,643) = .530_r8*rxt(k,277)*y(k,88) + .530_r8*rxt(k,276)*y(k,90) & - + .530_r8*rxt(k,273)*y(k,128) + .260_r8*rxt(k,274)*y(k,129) - mat(k,575) = .250_r8*rxt(k,312)*y(k,88) + .250_r8*rxt(k,313)*y(k,90) & - + .250_r8*rxt(k,309)*y(k,128) + .100_r8*rxt(k,310)*y(k,129) - mat(k,336) = -(rxt(k,248)*y(k,137)) - mat(k,1131) = -rxt(k,248)*y(k,53) - mat(k,458) = .200_r8*rxt(k,247)*y(k,137) - mat(k,1251) = .020_r8*rxt(k,302)*y(k,133) + .250_r8*rxt(k,312)*y(k,140) - mat(k,1182) = .250_r8*rxt(k,313)*y(k,140) - mat(k,685) = .250_r8*rxt(k,309)*y(k,140) - mat(k,736) = .100_r8*rxt(k,310)*y(k,140) - mat(k,618) = .020_r8*rxt(k,302)*y(k,88) - mat(k,1131) = mat(k,1131) + .200_r8*rxt(k,247)*y(k,52) - mat(k,574) = .250_r8*rxt(k,312)*y(k,88) + .250_r8*rxt(k,313)*y(k,90) & - + .250_r8*rxt(k,309)*y(k,128) + .100_r8*rxt(k,310)*y(k,129) - end do - end subroutine nlnmat02 - subroutine nlnmat03( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,769) = -((rxt(k,97) + rxt(k,98) + rxt(k,99)) * y(k,132) + rxt(k,103) & - *y(k,98)) - mat(k,937) = -(rxt(k,97) + rxt(k,98) + rxt(k,99)) * y(k,54) - mat(k,1003) = -rxt(k,103)*y(k,54) - mat(k,782) = rxt(k,213)*y(k,137) - mat(k,481) = rxt(k,222)*y(k,136) - mat(k,852) = rxt(k,139)*y(k,55) - mat(k,515) = rxt(k,139)*y(k,38) + rxt(k,95)*y(k,97) + rxt(k,86)*y(k,136) & - + rxt(k,104)*y(k,137) - mat(k,409) = rxt(k,193)*y(k,136) - mat(k,818) = rxt(k,170)*y(k,136) - mat(k,214) = rxt(k,125)*y(k,137) - mat(k,881) = rxt(k,95)*y(k,55) + rxt(k,107)*y(k,137) - mat(k,165) = rxt(k,321)*y(k,137) - mat(k,236) = rxt(k,327)*y(k,137) - mat(k,603) = rxt(k,332)*y(k,137) - mat(k,1076) = rxt(k,222)*y(k,36) + rxt(k,86)*y(k,55) + rxt(k,193)*y(k,59) & - + rxt(k,170)*y(k,63) - mat(k,1161) = rxt(k,213)*y(k,25) + rxt(k,104)*y(k,55) + rxt(k,125)*y(k,78) & - + rxt(k,107)*y(k,97) + rxt(k,321)*y(k,101) + rxt(k,327)*y(k,108) & - + rxt(k,332)*y(k,110) - mat(k,514) = -(rxt(k,86)*y(k,136) + rxt(k,95)*y(k,97) + rxt(k,104)*y(k,137) & - + rxt(k,139)*y(k,38)) - mat(k,1074) = -rxt(k,86)*y(k,55) - mat(k,879) = -rxt(k,95)*y(k,55) - mat(k,1148) = -rxt(k,104)*y(k,55) - mat(k,847) = -rxt(k,139)*y(k,55) - mat(k,479) = rxt(k,223)*y(k,136) - mat(k,768) = rxt(k,97)*y(k,132) - mat(k,926) = rxt(k,97)*y(k,54) - mat(k,1074) = mat(k,1074) + rxt(k,223)*y(k,36) - mat(k,42) = -(rxt(k,191)*y(k,136)) - mat(k,1055) = -rxt(k,191)*y(k,56) - mat(k,276) = -(rxt(k,96)*y(k,97) + rxt(k,105)*y(k,137) + rxt(k,140)*y(k,38)) - mat(k,871) = -rxt(k,96)*y(k,57) - mat(k,1123) = -rxt(k,105)*y(k,57) - mat(k,838) = -rxt(k,140)*y(k,57) - mat(k,908) = 2.000_r8*rxt(k,111)*y(k,132) - mat(k,1123) = mat(k,1123) + 2.000_r8*rxt(k,110)*y(k,137) - mat(k,115) = rxt(k,334)*y(k,141) - mat(k,1288) = rxt(k,334)*y(k,112) - mat(k,408) = -(rxt(k,186)*y(k,97) + rxt(k,187)*y(k,137) + (rxt(k,192) & - + rxt(k,193)) * y(k,136)) - mat(k,874) = -rxt(k,186)*y(k,59) - mat(k,1137) = -rxt(k,187)*y(k,59) - mat(k,1071) = -(rxt(k,192) + rxt(k,193)) * y(k,59) - mat(k,796) = rxt(k,173)*y(k,25) + rxt(k,174)*y(k,132) - mat(k,778) = rxt(k,173)*y(k,4) - mat(k,920) = rxt(k,174)*y(k,4) - mat(k,89) = -(rxt(k,203)*y(k,137) + rxt(k,208)*y(k,136)) - mat(k,1096) = -rxt(k,203)*y(k,60) - mat(k,1064) = -rxt(k,208)*y(k,60) - mat(k,93) = -(rxt(k,204)*y(k,137) + rxt(k,209)*y(k,136)) - mat(k,1097) = -rxt(k,204)*y(k,61) - mat(k,1065) = -rxt(k,209)*y(k,61) - mat(k,103) = -(rxt(k,205)*y(k,137) + rxt(k,210)*y(k,136)) - mat(k,1099) = -rxt(k,205)*y(k,62) - mat(k,1067) = -rxt(k,210)*y(k,62) - mat(k,820) = -(rxt(k,157)*y(k,97) + rxt(k,158)*y(k,137) + (rxt(k,169) & - + rxt(k,170)) * y(k,136) + (rxt(k,344) + rxt(k,350) + rxt(k,355) & - ) * y(k,68) + (rxt(k,349) + rxt(k,354) + rxt(k,359)) * y(k,42) & - + (rxt(k,351) + rxt(k,356)) * y(k,67)) - mat(k,884) = -rxt(k,157)*y(k,63) - mat(k,1164) = -rxt(k,158)*y(k,63) - mat(k,1079) = -(rxt(k,169) + rxt(k,170)) * y(k,63) - mat(k,402) = -(rxt(k,344) + rxt(k,350) + rxt(k,355)) * y(k,63) - mat(k,449) = -(rxt(k,349) + rxt(k,354) + rxt(k,359)) * y(k,63) - mat(k,354) = -(rxt(k,351) + rxt(k,356)) * y(k,63) - mat(k,132) = rxt(k,233)*y(k,38) - mat(k,229) = rxt(k,194)*y(k,38) - mat(k,785) = rxt(k,137)*y(k,38) - mat(k,295) = rxt(k,196)*y(k,38) - mat(k,171) = 2.000_r8*rxt(k,199)*y(k,38) - mat(k,483) = rxt(k,138)*y(k,38) - mat(k,184) = rxt(k,201)*y(k,38) - mat(k,855) = rxt(k,233)*y(k,12) + rxt(k,194)*y(k,24) + rxt(k,137)*y(k,25) & - + rxt(k,196)*y(k,26) + 2.000_r8*rxt(k,199)*y(k,29) + rxt(k,138) & - *y(k,36) + rxt(k,201)*y(k,37) + rxt(k,139)*y(k,55) + rxt(k,140) & - *y(k,57) + rxt(k,159)*y(k,68) + rxt(k,141)*y(k,132) - mat(k,1233) = rxt(k,156)*y(k,137) - mat(k,516) = rxt(k,139)*y(k,38) - mat(k,277) = rxt(k,140)*y(k,38) - mat(k,402) = mat(k,402) + rxt(k,159)*y(k,38) - mat(k,940) = rxt(k,141)*y(k,38) - mat(k,1164) = mat(k,1164) + rxt(k,156)*y(k,41) - mat(k,416) = -(rxt(k,134)*y(k,137)) - mat(k,1138) = -rxt(k,134)*y(k,65) - mat(k,779) = rxt(k,211)*y(k,90) - mat(k,548) = rxt(k,235)*y(k,90) - mat(k,589) = rxt(k,260)*y(k,90) - mat(k,447) = (rxt(k,349)+rxt(k,354)+rxt(k,359))*y(k,63) - mat(k,137) = rxt(k,318)*y(k,90) - mat(k,816) = (rxt(k,349)+rxt(k,354)+rxt(k,359))*y(k,42) - mat(k,1028) = rxt(k,133)*y(k,137) - mat(k,1185) = rxt(k,211)*y(k,25) + rxt(k,235)*y(k,28) + rxt(k,260)*y(k,31) & - + rxt(k,318)*y(k,46) - mat(k,1138) = mat(k,1138) + rxt(k,133)*y(k,89) - mat(k,176) = -(rxt(k,112)*y(k,137)) - mat(k,1109) = -rxt(k,112)*y(k,66) - mat(k,1021) = rxt(k,131)*y(k,132) - mat(k,902) = rxt(k,131)*y(k,89) - mat(k,352) = -(rxt(k,188)*y(k,97) + (rxt(k,351) + rxt(k,356)) * y(k,63)) - mat(k,872) = -rxt(k,188)*y(k,67) - mat(k,814) = -(rxt(k,351) + rxt(k,356)) * y(k,67) - mat(k,956) = rxt(k,180)*y(k,132) - mat(k,914) = rxt(k,180)*y(k,6) - mat(k,401) = -(rxt(k,159)*y(k,38) + rxt(k,160)*y(k,97) + rxt(k,161)*y(k,137) & - + (rxt(k,344) + rxt(k,350) + rxt(k,355)) * y(k,63)) - mat(k,842) = -rxt(k,159)*y(k,68) - mat(k,873) = -rxt(k,160)*y(k,68) - mat(k,1136) = -rxt(k,161)*y(k,68) - mat(k,815) = -(rxt(k,344) + rxt(k,350) + rxt(k,355)) * y(k,68) - mat(k,1225) = rxt(k,148)*y(k,132) - mat(k,446) = rxt(k,153)*y(k,137) - mat(k,919) = rxt(k,148)*y(k,41) - mat(k,1136) = mat(k,1136) + rxt(k,153)*y(k,42) - mat(k,503) = -(rxt(k,262)*y(k,137)) - mat(k,1146) = -rxt(k,262)*y(k,69) - mat(k,285) = .500_r8*rxt(k,288)*y(k,137) - mat(k,1260) = .020_r8*rxt(k,302)*y(k,133) + .220_r8*rxt(k,277)*y(k,134) & - + .250_r8*rxt(k,312)*y(k,140) - mat(k,1191) = .220_r8*rxt(k,276)*y(k,134) + .250_r8*rxt(k,313)*y(k,140) - mat(k,262) = .500_r8*rxt(k,266)*y(k,137) - mat(k,687) = .220_r8*rxt(k,273)*y(k,134) + .250_r8*rxt(k,309)*y(k,140) - mat(k,742) = .230_r8*rxt(k,274)*y(k,134) + .200_r8*rxt(k,267)*y(k,139) & - + .100_r8*rxt(k,310)*y(k,140) - mat(k,621) = .020_r8*rxt(k,302)*y(k,88) - mat(k,645) = .220_r8*rxt(k,277)*y(k,88) + .220_r8*rxt(k,276)*y(k,90) & - + .220_r8*rxt(k,273)*y(k,128) + .230_r8*rxt(k,274)*y(k,129) - mat(k,1146) = mat(k,1146) + .500_r8*rxt(k,288)*y(k,76) + .500_r8*rxt(k,266) & - *y(k,106) - mat(k,493) = .200_r8*rxt(k,267)*y(k,129) - mat(k,576) = .250_r8*rxt(k,312)*y(k,88) + .250_r8*rxt(k,313)*y(k,90) & - + .250_r8*rxt(k,309)*y(k,128) + .100_r8*rxt(k,310)*y(k,129) - mat(k,157) = -(rxt(k,294)*y(k,137)) - mat(k,1106) = -rxt(k,294)*y(k,70) - mat(k,1247) = .330_r8*rxt(k,302)*y(k,133) - mat(k,1179) = rxt(k,307)*y(k,102) + .400_r8*rxt(k,303)*y(k,133) - mat(k,465) = rxt(k,307)*y(k,90) + rxt(k,308)*y(k,137) - mat(k,680) = .400_r8*rxt(k,299)*y(k,133) - mat(k,731) = .300_r8*rxt(k,300)*y(k,133) - mat(k,615) = .330_r8*rxt(k,302)*y(k,88) + .400_r8*rxt(k,303)*y(k,90) & - + .400_r8*rxt(k,299)*y(k,128) + .300_r8*rxt(k,300)*y(k,129) - mat(k,1106) = mat(k,1106) + rxt(k,308)*y(k,102) - mat(k,429) = -(rxt(k,295)*y(k,90) + rxt(k,304)*y(k,98) + rxt(k,305)*y(k,137)) - mat(k,1187) = -rxt(k,295)*y(k,71) - mat(k,983) = -rxt(k,304)*y(k,71) - mat(k,1140) = -rxt(k,305)*y(k,71) - mat(k,377) = -(rxt(k,296)*y(k,132) + rxt(k,297)*y(k,88) + rxt(k,298)*y(k,90)) - mat(k,917) = -rxt(k,296)*y(k,72) - mat(k,1255) = -rxt(k,297)*y(k,72) - mat(k,1184) = -rxt(k,298)*y(k,72) - mat(k,428) = rxt(k,295)*y(k,90) - mat(k,1184) = mat(k,1184) + rxt(k,295)*y(k,71) - mat(k,240) = -(rxt(k,306)*y(k,137)) - mat(k,1119) = -rxt(k,306)*y(k,73) - mat(k,906) = rxt(k,301)*y(k,133) - mat(k,616) = rxt(k,301)*y(k,132) - mat(k,560) = -(rxt(k,279)*y(k,98) + rxt(k,280)*y(k,137)) - mat(k,993) = -rxt(k,279)*y(k,74) - mat(k,1151) = -rxt(k,280)*y(k,74) - mat(k,433) = .300_r8*rxt(k,304)*y(k,98) - mat(k,379) = .167_r8*rxt(k,297)*y(k,88) + .167_r8*rxt(k,298)*y(k,90) & - + .167_r8*rxt(k,296)*y(k,132) - mat(k,1263) = .167_r8*rxt(k,297)*y(k,72) + .230_r8*rxt(k,302)*y(k,133) - mat(k,1195) = .167_r8*rxt(k,298)*y(k,72) + .250_r8*rxt(k,303)*y(k,133) - mat(k,993) = mat(k,993) + .300_r8*rxt(k,304)*y(k,71) + 1.122_r8*rxt(k,316) & - *y(k,122) - mat(k,310) = 1.122_r8*rxt(k,316)*y(k,98) - mat(k,689) = .250_r8*rxt(k,299)*y(k,133) - mat(k,745) = .190_r8*rxt(k,300)*y(k,133) - mat(k,928) = .167_r8*rxt(k,296)*y(k,72) - mat(k,623) = .230_r8*rxt(k,302)*y(k,88) + .250_r8*rxt(k,303)*y(k,90) & - + .250_r8*rxt(k,299)*y(k,128) + .190_r8*rxt(k,300)*y(k,129) - mat(k,142) = -(rxt(k,281)*y(k,137)) - mat(k,1104) = -rxt(k,281)*y(k,75) - mat(k,900) = rxt(k,275)*y(k,134) - mat(k,641) = rxt(k,275)*y(k,132) - mat(k,283) = -(rxt(k,288)*y(k,137)) - mat(k,1124) = -rxt(k,288)*y(k,76) - mat(k,1025) = rxt(k,291)*y(k,135) - mat(k,661) = rxt(k,291)*y(k,89) - mat(k,715) = -(rxt(k,289)*y(k,98) + rxt(k,290)*y(k,137)) - mat(k,1001) = -rxt(k,289)*y(k,77) - mat(k,1159) = -rxt(k,290)*y(k,77) - mat(k,436) = .200_r8*rxt(k,304)*y(k,98) - mat(k,380) = .039_r8*rxt(k,297)*y(k,88) + .039_r8*rxt(k,298)*y(k,90) & - + .039_r8*rxt(k,296)*y(k,132) - mat(k,1270) = .039_r8*rxt(k,297)*y(k,72) + .320_r8*rxt(k,302)*y(k,133) - mat(k,1203) = .039_r8*rxt(k,298)*y(k,72) + .350_r8*rxt(k,303)*y(k,133) - mat(k,1001) = mat(k,1001) + .200_r8*rxt(k,304)*y(k,71) + .442_r8*rxt(k,316) & - *y(k,122) - mat(k,312) = .442_r8*rxt(k,316)*y(k,98) - mat(k,696) = .350_r8*rxt(k,299)*y(k,133) - mat(k,752) = .260_r8*rxt(k,300)*y(k,133) - mat(k,935) = .039_r8*rxt(k,296)*y(k,72) - mat(k,630) = .320_r8*rxt(k,302)*y(k,88) + .350_r8*rxt(k,303)*y(k,90) & - + .350_r8*rxt(k,299)*y(k,128) + .260_r8*rxt(k,300)*y(k,129) - mat(k,213) = -(rxt(k,113)*y(k,88) + (rxt(k,114) + rxt(k,115) + rxt(k,116) & - ) * y(k,89) + rxt(k,125)*y(k,137)) - mat(k,1248) = -rxt(k,113)*y(k,78) - mat(k,1022) = -(rxt(k,114) + rxt(k,115) + rxt(k,116)) * y(k,78) - mat(k,1115) = -rxt(k,125)*y(k,78) - mat(k,97) = -((rxt(k,129) + rxt(k,130)) * y(k,136)) - mat(k,1066) = -(rxt(k,129) + rxt(k,130)) * y(k,79) - mat(k,212) = rxt(k,114)*y(k,89) - mat(k,1019) = rxt(k,114)*y(k,78) - end do - end subroutine nlnmat03 - subroutine nlnmat04( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,1020) = rxt(k,132)*y(k,90) - mat(k,1177) = rxt(k,132)*y(k,89) - mat(k,45) = -(rxt(k,335)*y(k,137)) - mat(k,1093) = -rxt(k,335)*y(k,84) - mat(k,1286) = -(rxt(k,113)*y(k,78) + rxt(k,122)*y(k,90) + rxt(k,126)*y(k,132) & - + rxt(k,127)*y(k,98) + rxt(k,128)*y(k,97) + rxt(k,149)*y(k,41) & - + rxt(k,181)*y(k,6) + rxt(k,217)*y(k,129) + rxt(k,230)*y(k,126) & - + rxt(k,240)*y(k,128) + rxt(k,244)*y(k,131) + rxt(k,257) & - *y(k,127) + rxt(k,265)*y(k,138) + rxt(k,269)*y(k,139) + (rxt(k,277) & - + rxt(k,278)) * y(k,134) + rxt(k,286)*y(k,135) + rxt(k,297) & - *y(k,72) + rxt(k,302)*y(k,133) + rxt(k,312)*y(k,140)) - mat(k,219) = -rxt(k,113)*y(k,88) - mat(k,1219) = -rxt(k,122)*y(k,88) - mat(k,951) = -rxt(k,126)*y(k,88) - mat(k,1017) = -rxt(k,127)*y(k,88) - mat(k,895) = -rxt(k,128)*y(k,88) - mat(k,1244) = -rxt(k,149)*y(k,88) - mat(k,973) = -rxt(k,181)*y(k,88) - mat(k,766) = -rxt(k,217)*y(k,88) - mat(k,376) = -rxt(k,230)*y(k,88) - mat(k,705) = -rxt(k,240)*y(k,88) - mat(k,334) = -rxt(k,244)*y(k,88) - mat(k,398) = -rxt(k,257)*y(k,88) - mat(k,349) = -rxt(k,265)*y(k,88) - mat(k,501) = -rxt(k,269)*y(k,88) - mat(k,659) = -(rxt(k,277) + rxt(k,278)) * y(k,88) - mat(k,678) = -rxt(k,286)*y(k,88) - mat(k,386) = -rxt(k,297)*y(k,88) - mat(k,639) = -rxt(k,302)*y(k,88) - mat(k,588) = -rxt(k,312)*y(k,88) - mat(k,219) = mat(k,219) + 2.000_r8*rxt(k,115)*y(k,89) + rxt(k,125)*y(k,137) - mat(k,99) = 2.000_r8*rxt(k,129)*y(k,136) - mat(k,1053) = 2.000_r8*rxt(k,115)*y(k,78) + rxt(k,118)*y(k,97) + rxt(k,328) & - *y(k,110) - mat(k,895) = mat(k,895) + rxt(k,118)*y(k,89) - mat(k,613) = rxt(k,328)*y(k,89) - mat(k,1090) = 2.000_r8*rxt(k,129)*y(k,79) - mat(k,1175) = rxt(k,125)*y(k,78) - mat(k,1048) = -((rxt(k,114) + rxt(k,115) + rxt(k,116)) * y(k,78) + (rxt(k,118) & - + rxt(k,120)) * y(k,97) + rxt(k,119)*y(k,98) + rxt(k,131) & - *y(k,132) + rxt(k,132)*y(k,90) + rxt(k,133)*y(k,137) + rxt(k,151) & - *y(k,41) + rxt(k,182)*y(k,6) + rxt(k,251)*y(k,128) + rxt(k,291) & - *y(k,135) + rxt(k,328)*y(k,110)) - mat(k,216) = -(rxt(k,114) + rxt(k,115) + rxt(k,116)) * y(k,89) - mat(k,890) = -(rxt(k,118) + rxt(k,120)) * y(k,89) - mat(k,1012) = -rxt(k,119)*y(k,89) - mat(k,946) = -rxt(k,131)*y(k,89) - mat(k,1214) = -rxt(k,132)*y(k,89) - mat(k,1170) = -rxt(k,133)*y(k,89) - mat(k,1239) = -rxt(k,151)*y(k,89) - mat(k,968) = -rxt(k,182)*y(k,89) - mat(k,702) = -rxt(k,251)*y(k,89) - mat(k,675) = -rxt(k,291)*y(k,89) - mat(k,610) = -rxt(k,328)*y(k,89) - mat(k,968) = mat(k,968) + rxt(k,181)*y(k,88) - mat(k,1239) = mat(k,1239) + rxt(k,149)*y(k,88) - mat(k,178) = rxt(k,112)*y(k,137) - mat(k,383) = 1.206_r8*rxt(k,297)*y(k,88) + 1.206_r8*rxt(k,298)*y(k,90) & - + .206_r8*rxt(k,296)*y(k,132) - mat(k,1281) = rxt(k,181)*y(k,6) + rxt(k,149)*y(k,41) + 1.206_r8*rxt(k,297) & - *y(k,72) + 2.000_r8*rxt(k,122)*y(k,90) + rxt(k,128)*y(k,97) & - + rxt(k,127)*y(k,98) + rxt(k,230)*y(k,126) + rxt(k,257)*y(k,127) & - + rxt(k,240)*y(k,128) + rxt(k,217)*y(k,129) + rxt(k,244) & - *y(k,131) + rxt(k,126)*y(k,132) + .920_r8*rxt(k,302)*y(k,133) & - + rxt(k,277)*y(k,134) + rxt(k,286)*y(k,135) + rxt(k,265) & - *y(k,138) + rxt(k,269)*y(k,139) + rxt(k,312)*y(k,140) - mat(k,1214) = mat(k,1214) + 1.206_r8*rxt(k,298)*y(k,72) + 2.000_r8*rxt(k,122) & - *y(k,88) + rxt(k,123)*y(k,97) + rxt(k,307)*y(k,102) + rxt(k,315) & - *y(k,122) + rxt(k,121)*y(k,132) + rxt(k,303)*y(k,133) & - + rxt(k,276)*y(k,134) + rxt(k,287)*y(k,135) + rxt(k,124) & - *y(k,137) + rxt(k,313)*y(k,140) - mat(k,198) = rxt(k,263)*y(k,137) - mat(k,890) = mat(k,890) + rxt(k,128)*y(k,88) + rxt(k,123)*y(k,90) - mat(k,1012) = mat(k,1012) + rxt(k,127)*y(k,88) - mat(k,472) = rxt(k,307)*y(k,90) + .400_r8*rxt(k,308)*y(k,137) - mat(k,315) = rxt(k,315)*y(k,90) - mat(k,374) = rxt(k,230)*y(k,88) - mat(k,396) = rxt(k,257)*y(k,88) - mat(k,702) = mat(k,702) + rxt(k,240)*y(k,88) - mat(k,761) = rxt(k,217)*y(k,88) - mat(k,332) = rxt(k,244)*y(k,88) - mat(k,946) = mat(k,946) + .206_r8*rxt(k,296)*y(k,72) + rxt(k,126)*y(k,88) & - + rxt(k,121)*y(k,90) - mat(k,636) = .920_r8*rxt(k,302)*y(k,88) + rxt(k,303)*y(k,90) - mat(k,656) = rxt(k,277)*y(k,88) + rxt(k,276)*y(k,90) - mat(k,675) = mat(k,675) + rxt(k,286)*y(k,88) + rxt(k,287)*y(k,90) - mat(k,1170) = mat(k,1170) + rxt(k,112)*y(k,66) + rxt(k,124)*y(k,90) & - + rxt(k,263)*y(k,91) + .400_r8*rxt(k,308)*y(k,102) - mat(k,347) = rxt(k,265)*y(k,88) - mat(k,499) = rxt(k,269)*y(k,88) - mat(k,585) = rxt(k,312)*y(k,88) + rxt(k,313)*y(k,90) - mat(k,1217) = -(rxt(k,121)*y(k,132) + rxt(k,122)*y(k,88) + rxt(k,123)*y(k,97) & - + rxt(k,124)*y(k,137) + rxt(k,132)*y(k,89) + rxt(k,211)*y(k,25) & - + rxt(k,235)*y(k,28) + rxt(k,253)*y(k,13) + rxt(k,260)*y(k,31) & - + rxt(k,276)*y(k,134) + rxt(k,287)*y(k,135) + rxt(k,295)*y(k,71) & - + rxt(k,298)*y(k,72) + rxt(k,303)*y(k,133) + rxt(k,307)*y(k,102) & - + rxt(k,313)*y(k,140) + rxt(k,315)*y(k,122) + rxt(k,318)*y(k,46)) - mat(k,949) = -rxt(k,121)*y(k,90) - mat(k,1284) = -rxt(k,122)*y(k,90) - mat(k,893) = -rxt(k,123)*y(k,90) - mat(k,1173) = -rxt(k,124)*y(k,90) - mat(k,1051) = -rxt(k,132)*y(k,90) - mat(k,794) = -rxt(k,211)*y(k,90) - mat(k,557) = -rxt(k,235)*y(k,90) - mat(k,545) = -rxt(k,253)*y(k,90) - mat(k,597) = -rxt(k,260)*y(k,90) - mat(k,658) = -rxt(k,276)*y(k,90) - mat(k,677) = -rxt(k,287)*y(k,90) - mat(k,443) = -rxt(k,295)*y(k,90) - mat(k,385) = -rxt(k,298)*y(k,90) - mat(k,638) = -rxt(k,303)*y(k,90) - mat(k,474) = -rxt(k,307)*y(k,90) - mat(k,587) = -rxt(k,313)*y(k,90) - mat(k,317) = -rxt(k,315)*y(k,90) - mat(k,141) = -rxt(k,318)*y(k,90) - mat(k,275) = rxt(k,183)*y(k,97) - mat(k,864) = rxt(k,150)*y(k,42) - mat(k,454) = rxt(k,150)*y(k,38) + rxt(k,152)*y(k,97) + rxt(k,153)*y(k,137) - mat(k,419) = rxt(k,134)*y(k,137) - mat(k,291) = .500_r8*rxt(k,288)*y(k,137) - mat(k,1051) = mat(k,1051) + rxt(k,120)*y(k,97) + rxt(k,119)*y(k,98) - mat(k,893) = mat(k,893) + rxt(k,183)*y(k,7) + rxt(k,152)*y(k,42) + rxt(k,120) & - *y(k,89) - mat(k,1015) = rxt(k,119)*y(k,89) - mat(k,259) = rxt(k,249)*y(k,137) - mat(k,1173) = mat(k,1173) + rxt(k,153)*y(k,42) + rxt(k,134)*y(k,65) & - + .500_r8*rxt(k,288)*y(k,76) + rxt(k,249)*y(k,103) - mat(k,194) = -(rxt(k,263)*y(k,137)) - mat(k,1112) = -rxt(k,263)*y(k,91) - mat(k,522) = rxt(k,253)*y(k,90) - mat(k,1180) = rxt(k,253)*y(k,13) - mat(k,886) = -(rxt(k,92)*y(k,98) + 4._r8*rxt(k,93)*y(k,97) + rxt(k,95) & - *y(k,55) + rxt(k,96)*y(k,57) + rxt(k,101)*y(k,132) + rxt(k,107) & - *y(k,137) + (rxt(k,118) + rxt(k,120)) * y(k,89) + rxt(k,123) & - *y(k,90) + rxt(k,128)*y(k,88) + rxt(k,152)*y(k,42) + rxt(k,154) & - *y(k,41) + rxt(k,157)*y(k,63) + rxt(k,160)*y(k,68) + rxt(k,183) & - *y(k,7) + rxt(k,184)*y(k,6) + rxt(k,186)*y(k,59) + rxt(k,188) & - *y(k,67) + rxt(k,212)*y(k,25) + rxt(k,320)*y(k,101)) - mat(k,1008) = -rxt(k,92)*y(k,97) - mat(k,518) = -rxt(k,95)*y(k,97) - mat(k,279) = -rxt(k,96)*y(k,97) - mat(k,942) = -rxt(k,101)*y(k,97) - mat(k,1166) = -rxt(k,107)*y(k,97) - mat(k,1044) = -(rxt(k,118) + rxt(k,120)) * y(k,97) - mat(k,1210) = -rxt(k,123)*y(k,97) - mat(k,1277) = -rxt(k,128)*y(k,97) - mat(k,451) = -rxt(k,152)*y(k,97) - mat(k,1235) = -rxt(k,154)*y(k,97) - mat(k,822) = -rxt(k,157)*y(k,97) - mat(k,404) = -rxt(k,160)*y(k,97) - mat(k,272) = -rxt(k,183)*y(k,97) - mat(k,964) = -rxt(k,184)*y(k,97) - mat(k,411) = -rxt(k,186)*y(k,97) - mat(k,356) = -rxt(k,188)*y(k,97) - mat(k,787) = -rxt(k,212)*y(k,97) - mat(k,166) = -rxt(k,320)*y(k,97) - mat(k,772) = rxt(k,99)*y(k,132) - mat(k,215) = rxt(k,113)*y(k,88) + rxt(k,114)*y(k,89) - mat(k,1277) = mat(k,1277) + rxt(k,113)*y(k,78) - mat(k,1044) = mat(k,1044) + rxt(k,114)*y(k,78) - mat(k,1008) = mat(k,1008) + .765_r8*rxt(k,316)*y(k,122) + 2.000_r8*rxt(k,91) & - *y(k,136) - mat(k,313) = .765_r8*rxt(k,316)*y(k,98) - mat(k,942) = mat(k,942) + rxt(k,99)*y(k,54) - mat(k,1081) = 2.000_r8*rxt(k,91)*y(k,98) - mat(k,1166) = mat(k,1166) + 2.000_r8*rxt(k,109)*y(k,137) - mat(k,1011) = -((rxt(k,90) + rxt(k,91)) * y(k,136) + rxt(k,92)*y(k,97) & - + rxt(k,102)*y(k,132) + rxt(k,103)*y(k,54) + rxt(k,108)*y(k,137) & - + rxt(k,119)*y(k,89) + rxt(k,127)*y(k,88) + rxt(k,143)*y(k,38) & - + rxt(k,175)*y(k,4) + rxt(k,226)*y(k,9) + rxt(k,254)*y(k,13) & - + rxt(k,279)*y(k,74) + rxt(k,289)*y(k,77) + rxt(k,304)*y(k,71) & - + rxt(k,316)*y(k,122) + rxt(k,324)*y(k,108) + rxt(k,330) & - *y(k,110)) - mat(k,1084) = -(rxt(k,90) + rxt(k,91)) * y(k,98) - mat(k,889) = -rxt(k,92)*y(k,98) - mat(k,945) = -rxt(k,102)*y(k,98) - mat(k,774) = -rxt(k,103)*y(k,98) - mat(k,1169) = -rxt(k,108)*y(k,98) - mat(k,1047) = -rxt(k,119)*y(k,98) - mat(k,1280) = -rxt(k,127)*y(k,98) - mat(k,860) = -rxt(k,143)*y(k,98) - mat(k,806) = -rxt(k,175)*y(k,98) - mat(k,225) = -rxt(k,226)*y(k,98) - mat(k,541) = -rxt(k,254)*y(k,98) - mat(k,568) = -rxt(k,279)*y(k,98) - mat(k,723) = -rxt(k,289)*y(k,98) - mat(k,440) = -rxt(k,304)*y(k,98) - mat(k,314) = -rxt(k,316)*y(k,98) - mat(k,238) = -rxt(k,324)*y(k,98) - mat(k,609) = -rxt(k,330)*y(k,98) - mat(k,701) = .150_r8*rxt(k,239)*y(k,132) - mat(k,945) = mat(k,945) + .150_r8*rxt(k,239)*y(k,128) + .150_r8*rxt(k,284) & - *y(k,135) - mat(k,674) = .150_r8*rxt(k,284)*y(k,132) - mat(k,152) = -(rxt(k,331)*y(k,110)) - mat(k,599) = -rxt(k,331)*y(k,100) - mat(k,954) = rxt(k,177)*y(k,41) - mat(k,1224) = rxt(k,177)*y(k,6) + 2.000_r8*rxt(k,147)*y(k,41) - mat(k,160) = -(rxt(k,320)*y(k,97) + rxt(k,321)*y(k,137)) - mat(k,868) = -rxt(k,320)*y(k,101) - mat(k,1107) = -rxt(k,321)*y(k,101) - mat(k,467) = -(rxt(k,307)*y(k,90) + rxt(k,308)*y(k,137)) - mat(k,1189) = -rxt(k,307)*y(k,102) - mat(k,1143) = -rxt(k,308)*y(k,102) - mat(k,378) = .794_r8*rxt(k,297)*y(k,88) + .794_r8*rxt(k,298)*y(k,90) & - + .794_r8*rxt(k,296)*y(k,132) - mat(k,1258) = .794_r8*rxt(k,297)*y(k,72) + .080_r8*rxt(k,302)*y(k,133) & - + .800_r8*rxt(k,278)*y(k,134) - mat(k,1189) = mat(k,1189) + .794_r8*rxt(k,298)*y(k,72) - mat(k,922) = .794_r8*rxt(k,296)*y(k,72) - mat(k,620) = .080_r8*rxt(k,302)*y(k,88) - mat(k,644) = .800_r8*rxt(k,278)*y(k,88) - end do - end subroutine nlnmat04 - subroutine nlnmat05( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,252) = -(rxt(k,249)*y(k,137)) - mat(k,1121) = -rxt(k,249)*y(k,103) - mat(k,1023) = rxt(k,251)*y(k,128) - mat(k,681) = rxt(k,251)*y(k,89) - mat(k,260) = -(rxt(k,266)*y(k,137)) - mat(k,1122) = -rxt(k,266)*y(k,106) - mat(k,907) = rxt(k,264)*y(k,138) - mat(k,341) = rxt(k,264)*y(k,132) - mat(k,206) = -(rxt(k,270)*y(k,137)) - mat(k,1114) = -rxt(k,270)*y(k,107) - mat(k,905) = .850_r8*rxt(k,268)*y(k,139) - mat(k,490) = .850_r8*rxt(k,268)*y(k,132) - mat(k,234) = -(rxt(k,324)*y(k,98) + rxt(k,327)*y(k,137)) - mat(k,976) = -rxt(k,324)*y(k,108) - mat(k,1118) = -rxt(k,327)*y(k,108) - mat(k,602) = -(rxt(k,325)*y(k,6) + rxt(k,326)*y(k,41) + rxt(k,328)*y(k,89) & - + rxt(k,330)*y(k,98) + rxt(k,331)*y(k,100) + rxt(k,332)*y(k,137)) - mat(k,959) = -rxt(k,325)*y(k,110) - mat(k,1228) = -rxt(k,326)*y(k,110) - mat(k,1034) = -rxt(k,328)*y(k,110) - mat(k,996) = -rxt(k,330)*y(k,110) - mat(k,154) = -rxt(k,331)*y(k,110) - mat(k,1154) = -rxt(k,332)*y(k,110) - mat(k,880) = rxt(k,320)*y(k,101) - mat(k,996) = mat(k,996) + rxt(k,324)*y(k,108) - mat(k,164) = rxt(k,320)*y(k,97) - mat(k,235) = rxt(k,324)*y(k,98) + rxt(k,327)*y(k,137) - mat(k,1154) = mat(k,1154) + rxt(k,327)*y(k,108) - mat(k,422) = -(rxt(k,323)*y(k,137)) - mat(k,1139) = -rxt(k,323)*y(k,111) - mat(k,958) = rxt(k,325)*y(k,110) - mat(k,1226) = rxt(k,326)*y(k,110) - mat(k,138) = rxt(k,318)*y(k,90) + (rxt(k,319)+.500_r8*rxt(k,333))*y(k,137) - mat(k,1029) = rxt(k,328)*y(k,110) - mat(k,1186) = rxt(k,318)*y(k,46) - mat(k,982) = rxt(k,330)*y(k,110) - mat(k,153) = rxt(k,331)*y(k,110) - mat(k,162) = rxt(k,321)*y(k,137) - mat(k,601) = rxt(k,325)*y(k,6) + rxt(k,326)*y(k,41) + rxt(k,328)*y(k,89) & - + rxt(k,330)*y(k,98) + rxt(k,331)*y(k,100) + rxt(k,332)*y(k,137) - mat(k,1139) = mat(k,1139) + (rxt(k,319)+.500_r8*rxt(k,333))*y(k,46) & - + rxt(k,321)*y(k,101) + rxt(k,332)*y(k,110) - mat(k,116) = -(rxt(k,334)*y(k,141)) - mat(k,1289) = -rxt(k,334)*y(k,112) - mat(k,421) = rxt(k,323)*y(k,137) - mat(k,1101) = rxt(k,323)*y(k,111) - mat(k,308) = -(rxt(k,315)*y(k,90) + rxt(k,316)*y(k,98) + rxt(k,317)*y(k,137)) - mat(k,1181) = -rxt(k,315)*y(k,122) - mat(k,977) = -rxt(k,316)*y(k,122) - mat(k,1127) = -rxt(k,317)*y(k,122) - mat(k,100) = -(rxt(k,314)*y(k,137)) - mat(k,1098) = -rxt(k,314)*y(k,123) - mat(k,898) = rxt(k,311)*y(k,140) - mat(k,571) = rxt(k,311)*y(k,132) - mat(k,369) = -(4._r8*rxt(k,227)*y(k,126) + rxt(k,228)*y(k,129) + rxt(k,229) & - *y(k,132) + rxt(k,230)*y(k,88)) - mat(k,738) = -rxt(k,228)*y(k,126) - mat(k,916) = -rxt(k,229)*y(k,126) - mat(k,1254) = -rxt(k,230)*y(k,126) - mat(k,148) = .500_r8*rxt(k,232)*y(k,137) - mat(k,131) = rxt(k,233)*y(k,38) + rxt(k,234)*y(k,137) - mat(k,841) = rxt(k,233)*y(k,12) - mat(k,1134) = .500_r8*rxt(k,232)*y(k,11) + rxt(k,234)*y(k,12) - mat(k,389) = -(rxt(k,255)*y(k,129) + rxt(k,256)*y(k,132) + rxt(k,257)*y(k,88)) - mat(k,739) = -rxt(k,255)*y(k,127) - mat(k,918) = -rxt(k,256)*y(k,127) - mat(k,1256) = -rxt(k,257)*y(k,127) - mat(k,40) = 1.670_r8*rxt(k,293)*y(k,137) - mat(k,190) = rxt(k,258)*y(k,137) - mat(k,70) = rxt(k,259)*y(k,137) - mat(k,1135) = 1.670_r8*rxt(k,293)*y(k,3) + rxt(k,258)*y(k,14) + rxt(k,259) & - *y(k,15) - mat(k,695) = -(4._r8*rxt(k,237)*y(k,128) + rxt(k,238)*y(k,129) + rxt(k,239) & - *y(k,132) + rxt(k,240)*y(k,88) + rxt(k,251)*y(k,89) + rxt(k,273) & - *y(k,134) + rxt(k,299)*y(k,133) + rxt(k,309)*y(k,140)) - mat(k,751) = -rxt(k,238)*y(k,128) - mat(k,934) = -rxt(k,239)*y(k,128) - mat(k,1269) = -rxt(k,240)*y(k,128) - mat(k,1036) = -rxt(k,251)*y(k,128) - mat(k,651) = -rxt(k,273)*y(k,128) - mat(k,629) = -rxt(k,299)*y(k,128) - mat(k,580) = -rxt(k,309)*y(k,128) - mat(k,551) = rxt(k,235)*y(k,90) + rxt(k,236)*y(k,137) - mat(k,592) = rxt(k,260)*y(k,90) + rxt(k,261)*y(k,137) - mat(k,303) = .500_r8*rxt(k,242)*y(k,137) - mat(k,435) = .080_r8*rxt(k,304)*y(k,98) - mat(k,564) = .100_r8*rxt(k,279)*y(k,98) - mat(k,714) = .280_r8*rxt(k,289)*y(k,98) - mat(k,1269) = mat(k,1269) + .530_r8*rxt(k,277)*y(k,134) + rxt(k,286)*y(k,135) & - + rxt(k,269)*y(k,139) - mat(k,1202) = rxt(k,235)*y(k,28) + rxt(k,260)*y(k,31) + .530_r8*rxt(k,276) & - *y(k,134) + rxt(k,287)*y(k,135) - mat(k,1000) = .080_r8*rxt(k,304)*y(k,71) + .100_r8*rxt(k,279)*y(k,74) & - + .280_r8*rxt(k,289)*y(k,77) - mat(k,695) = mat(k,695) + .530_r8*rxt(k,273)*y(k,134) - mat(k,751) = mat(k,751) + .260_r8*rxt(k,274)*y(k,134) + rxt(k,283)*y(k,135) & - + .300_r8*rxt(k,267)*y(k,139) - mat(k,934) = mat(k,934) + .450_r8*rxt(k,284)*y(k,135) + .150_r8*rxt(k,268) & - *y(k,139) - mat(k,651) = mat(k,651) + .530_r8*rxt(k,277)*y(k,88) + .530_r8*rxt(k,276) & - *y(k,90) + .530_r8*rxt(k,273)*y(k,128) + .260_r8*rxt(k,274) & - *y(k,129) - mat(k,669) = rxt(k,286)*y(k,88) + rxt(k,287)*y(k,90) + rxt(k,283)*y(k,129) & - + .450_r8*rxt(k,284)*y(k,132) + 4.000_r8*rxt(k,285)*y(k,135) - mat(k,1158) = rxt(k,236)*y(k,28) + rxt(k,261)*y(k,31) + .500_r8*rxt(k,242) & - *y(k,33) - mat(k,495) = rxt(k,269)*y(k,88) + .300_r8*rxt(k,267)*y(k,129) & - + .150_r8*rxt(k,268)*y(k,132) - mat(k,753) = -(rxt(k,144)*y(k,41) + (4._r8*rxt(k,214) + 4._r8*rxt(k,215) & - ) * y(k,129) + rxt(k,216)*y(k,132) + rxt(k,217)*y(k,88) & - + rxt(k,228)*y(k,126) + rxt(k,238)*y(k,128) + rxt(k,255) & - *y(k,127) + rxt(k,267)*y(k,139) + rxt(k,274)*y(k,134) + rxt(k,283) & - *y(k,135) + rxt(k,300)*y(k,133) + rxt(k,310)*y(k,140)) - mat(k,1229) = -rxt(k,144)*y(k,129) - mat(k,936) = -rxt(k,216)*y(k,129) - mat(k,1271) = -rxt(k,217)*y(k,129) - mat(k,371) = -rxt(k,228)*y(k,129) - mat(k,697) = -rxt(k,238)*y(k,129) - mat(k,393) = -rxt(k,255)*y(k,129) - mat(k,496) = -rxt(k,267)*y(k,129) - mat(k,652) = -rxt(k,274)*y(k,129) - mat(k,670) = -rxt(k,283)*y(k,129) - mat(k,631) = -rxt(k,300)*y(k,129) - mat(k,581) = -rxt(k,310)*y(k,129) - mat(k,534) = .280_r8*rxt(k,254)*y(k,98) - mat(k,320) = rxt(k,241)*y(k,137) - mat(k,201) = .700_r8*rxt(k,219)*y(k,137) - mat(k,480) = rxt(k,138)*y(k,38) + rxt(k,221)*y(k,136) + rxt(k,220)*y(k,137) - mat(k,851) = rxt(k,138)*y(k,36) - mat(k,437) = .050_r8*rxt(k,304)*y(k,98) - mat(k,1271) = mat(k,1271) + rxt(k,240)*y(k,128) - mat(k,1002) = .280_r8*rxt(k,254)*y(k,13) + .050_r8*rxt(k,304)*y(k,71) - mat(k,697) = mat(k,697) + rxt(k,240)*y(k,88) + 4.000_r8*rxt(k,237)*y(k,128) & - + .900_r8*rxt(k,238)*y(k,129) + .450_r8*rxt(k,239)*y(k,132) & - + rxt(k,299)*y(k,133) + rxt(k,273)*y(k,134) + rxt(k,282) & - *y(k,135) + rxt(k,309)*y(k,140) - mat(k,753) = mat(k,753) + .900_r8*rxt(k,238)*y(k,128) - mat(k,936) = mat(k,936) + .450_r8*rxt(k,239)*y(k,128) - mat(k,631) = mat(k,631) + rxt(k,299)*y(k,128) - mat(k,652) = mat(k,652) + rxt(k,273)*y(k,128) - mat(k,670) = mat(k,670) + rxt(k,282)*y(k,128) - mat(k,1075) = rxt(k,221)*y(k,36) - mat(k,1160) = rxt(k,241)*y(k,32) + .700_r8*rxt(k,219)*y(k,35) + rxt(k,220) & - *y(k,36) - mat(k,581) = mat(k,581) + rxt(k,309)*y(k,128) - mat(k,1246) = .750_r8*rxt(k,244)*y(k,131) - mat(k,327) = .750_r8*rxt(k,244)*y(k,88) - mat(k,328) = -(rxt(k,243)*y(k,132) + rxt(k,244)*y(k,88)) - mat(k,912) = -rxt(k,243)*y(k,131) - mat(k,1250) = -rxt(k,244)*y(k,131) - mat(k,221) = rxt(k,250)*y(k,137) - mat(k,1130) = rxt(k,250)*y(k,9) - mat(k,943) = -((rxt(k,97) + rxt(k,98) + rxt(k,99)) * y(k,54) + rxt(k,101) & - *y(k,97) + rxt(k,102)*y(k,98) + rxt(k,106)*y(k,137) & - + 4._r8*rxt(k,111)*y(k,132) + rxt(k,121)*y(k,90) + rxt(k,126) & - *y(k,88) + rxt(k,131)*y(k,89) + (rxt(k,141) + rxt(k,142) & - ) * y(k,38) + rxt(k,148)*y(k,41) + rxt(k,174)*y(k,4) + rxt(k,180) & - *y(k,6) + rxt(k,216)*y(k,129) + rxt(k,229)*y(k,126) + rxt(k,239) & - *y(k,128) + rxt(k,243)*y(k,131) + rxt(k,256)*y(k,127) + rxt(k,264) & - *y(k,138) + rxt(k,268)*y(k,139) + rxt(k,275)*y(k,134) + rxt(k,284) & - *y(k,135) + rxt(k,296)*y(k,72) + rxt(k,301)*y(k,133) + rxt(k,311) & - *y(k,140)) - mat(k,773) = -(rxt(k,97) + rxt(k,98) + rxt(k,99)) * y(k,132) - mat(k,887) = -rxt(k,101)*y(k,132) - mat(k,1009) = -rxt(k,102)*y(k,132) - mat(k,1167) = -rxt(k,106)*y(k,132) - mat(k,1211) = -rxt(k,121)*y(k,132) - mat(k,1278) = -rxt(k,126)*y(k,132) - mat(k,1045) = -rxt(k,131)*y(k,132) - mat(k,858) = -(rxt(k,141) + rxt(k,142)) * y(k,132) - mat(k,1236) = -rxt(k,148)*y(k,132) - mat(k,804) = -rxt(k,174)*y(k,132) - mat(k,965) = -rxt(k,180)*y(k,132) - mat(k,759) = -rxt(k,216)*y(k,132) - mat(k,373) = -rxt(k,229)*y(k,132) - mat(k,700) = -rxt(k,239)*y(k,132) - mat(k,331) = -rxt(k,243)*y(k,132) - mat(k,395) = -rxt(k,256)*y(k,132) - mat(k,346) = -rxt(k,264)*y(k,132) - mat(k,498) = -rxt(k,268)*y(k,132) - mat(k,655) = -rxt(k,275)*y(k,132) - mat(k,673) = -rxt(k,284)*y(k,132) - mat(k,382) = -rxt(k,296)*y(k,132) - mat(k,634) = -rxt(k,301)*y(k,132) - mat(k,584) = -rxt(k,311)*y(k,132) - mat(k,804) = mat(k,804) + rxt(k,173)*y(k,25) - mat(k,965) = mat(k,965) + rxt(k,185)*y(k,137) - mat(k,224) = .130_r8*rxt(k,226)*y(k,98) - mat(k,113) = rxt(k,231)*y(k,137) - mat(k,540) = .280_r8*rxt(k,254)*y(k,98) - mat(k,788) = rxt(k,173)*y(k,4) + rxt(k,137)*y(k,38) + rxt(k,211)*y(k,90) & - + rxt(k,212)*y(k,97) - mat(k,297) = rxt(k,196)*y(k,38) + rxt(k,197)*y(k,137) - mat(k,173) = rxt(k,199)*y(k,38) + rxt(k,200)*y(k,137) - mat(k,250) = rxt(k,218)*y(k,137) - mat(k,486) = rxt(k,222)*y(k,136) - mat(k,858) = mat(k,858) + rxt(k,137)*y(k,25) + rxt(k,196)*y(k,26) & - + rxt(k,199)*y(k,29) + rxt(k,140)*y(k,57) - mat(k,1236) = mat(k,1236) + rxt(k,144)*y(k,129) + rxt(k,155)*y(k,137) - mat(k,512) = rxt(k,224)*y(k,137) - mat(k,139) = .500_r8*rxt(k,333)*y(k,137) - mat(k,463) = rxt(k,247)*y(k,137) - mat(k,339) = rxt(k,248)*y(k,137) - mat(k,280) = rxt(k,140)*y(k,38) + rxt(k,96)*y(k,97) + rxt(k,105)*y(k,137) - mat(k,507) = rxt(k,262)*y(k,137) - mat(k,439) = .370_r8*rxt(k,304)*y(k,98) - mat(k,382) = mat(k,382) + .794_r8*rxt(k,297)*y(k,88) + .794_r8*rxt(k,298) & - *y(k,90) - mat(k,567) = .140_r8*rxt(k,279)*y(k,98) - mat(k,145) = .200_r8*rxt(k,281)*y(k,137) - mat(k,288) = .500_r8*rxt(k,288)*y(k,137) - mat(k,722) = .280_r8*rxt(k,289)*y(k,98) - mat(k,1278) = mat(k,1278) + .794_r8*rxt(k,297)*y(k,72) + rxt(k,230)*y(k,126) & - + rxt(k,257)*y(k,127) + rxt(k,217)*y(k,129) + .250_r8*rxt(k,244) & - *y(k,131) + .920_r8*rxt(k,302)*y(k,133) + .470_r8*rxt(k,277) & - *y(k,134) + rxt(k,265)*y(k,138) + rxt(k,312)*y(k,140) - mat(k,1211) = mat(k,1211) + rxt(k,211)*y(k,25) + .794_r8*rxt(k,298)*y(k,72) & - + rxt(k,307)*y(k,102) + rxt(k,303)*y(k,133) + .470_r8*rxt(k,276) & - *y(k,134) + rxt(k,124)*y(k,137) + rxt(k,313)*y(k,140) - mat(k,887) = mat(k,887) + rxt(k,212)*y(k,25) + rxt(k,96)*y(k,57) - mat(k,1009) = mat(k,1009) + .130_r8*rxt(k,226)*y(k,9) + .280_r8*rxt(k,254) & - *y(k,13) + .370_r8*rxt(k,304)*y(k,71) + .140_r8*rxt(k,279) & - *y(k,74) + .280_r8*rxt(k,289)*y(k,77) + rxt(k,108)*y(k,137) - mat(k,471) = rxt(k,307)*y(k,90) + rxt(k,308)*y(k,137) - mat(k,425) = rxt(k,323)*y(k,137) - mat(k,373) = mat(k,373) + rxt(k,230)*y(k,88) + 2.400_r8*rxt(k,227)*y(k,126) & - + rxt(k,228)*y(k,129) - mat(k,395) = mat(k,395) + rxt(k,257)*y(k,88) + rxt(k,255)*y(k,129) - mat(k,700) = mat(k,700) + .900_r8*rxt(k,238)*y(k,129) + rxt(k,299)*y(k,133) & - + .470_r8*rxt(k,273)*y(k,134) + rxt(k,309)*y(k,140) - mat(k,759) = mat(k,759) + rxt(k,144)*y(k,41) + rxt(k,217)*y(k,88) & - + rxt(k,228)*y(k,126) + rxt(k,255)*y(k,127) + .900_r8*rxt(k,238) & - *y(k,128) + 4.000_r8*rxt(k,214)*y(k,129) + rxt(k,300)*y(k,133) & - + .730_r8*rxt(k,274)*y(k,134) + rxt(k,283)*y(k,135) & - + .300_r8*rxt(k,267)*y(k,139) + .800_r8*rxt(k,310)*y(k,140) - mat(k,331) = mat(k,331) + .250_r8*rxt(k,244)*y(k,88) - mat(k,634) = mat(k,634) + .920_r8*rxt(k,302)*y(k,88) + rxt(k,303)*y(k,90) & - + rxt(k,299)*y(k,128) + rxt(k,300)*y(k,129) - mat(k,655) = mat(k,655) + .470_r8*rxt(k,277)*y(k,88) + .470_r8*rxt(k,276) & - *y(k,90) + .470_r8*rxt(k,273)*y(k,128) + .730_r8*rxt(k,274) & - *y(k,129) - mat(k,673) = mat(k,673) + rxt(k,283)*y(k,129) - mat(k,1082) = rxt(k,222)*y(k,36) - mat(k,1167) = mat(k,1167) + rxt(k,185)*y(k,6) + rxt(k,231)*y(k,10) & - + rxt(k,197)*y(k,26) + rxt(k,200)*y(k,29) + rxt(k,218)*y(k,34) & - + rxt(k,155)*y(k,41) + rxt(k,224)*y(k,44) + .500_r8*rxt(k,333) & - *y(k,46) + rxt(k,247)*y(k,52) + rxt(k,248)*y(k,53) + rxt(k,105) & - *y(k,57) + rxt(k,262)*y(k,69) + .200_r8*rxt(k,281)*y(k,75) & - + .500_r8*rxt(k,288)*y(k,76) + rxt(k,124)*y(k,90) + rxt(k,108) & - *y(k,98) + rxt(k,308)*y(k,102) + rxt(k,323)*y(k,111) - mat(k,346) = mat(k,346) + rxt(k,265)*y(k,88) - mat(k,498) = mat(k,498) + .300_r8*rxt(k,267)*y(k,129) - mat(k,584) = mat(k,584) + rxt(k,312)*y(k,88) + rxt(k,313)*y(k,90) & - + rxt(k,309)*y(k,128) + .800_r8*rxt(k,310)*y(k,129) - end do - end subroutine nlnmat05 - subroutine nlnmat06( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,626) = -(rxt(k,299)*y(k,128) + rxt(k,300)*y(k,129) + rxt(k,301) & - *y(k,132) + rxt(k,302)*y(k,88) + rxt(k,303)*y(k,90)) - mat(k,692) = -rxt(k,299)*y(k,133) - mat(k,748) = -rxt(k,300)*y(k,133) - mat(k,931) = -rxt(k,301)*y(k,133) - mat(k,1266) = -rxt(k,302)*y(k,133) - mat(k,1199) = -rxt(k,303)*y(k,133) - mat(k,434) = rxt(k,305)*y(k,137) - mat(k,243) = .200_r8*rxt(k,306)*y(k,137) - mat(k,1199) = mat(k,1199) + 1.700_r8*rxt(k,315)*y(k,122) - mat(k,311) = 1.700_r8*rxt(k,315)*y(k,90) + 1.640_r8*rxt(k,317)*y(k,137) - mat(k,1155) = rxt(k,305)*y(k,71) + .200_r8*rxt(k,306)*y(k,73) & - + 1.640_r8*rxt(k,317)*y(k,122) - mat(k,649) = -(rxt(k,273)*y(k,128) + rxt(k,274)*y(k,129) + rxt(k,275) & - *y(k,132) + rxt(k,276)*y(k,90) + (rxt(k,277) + rxt(k,278) & - ) * y(k,88)) - mat(k,693) = -rxt(k,273)*y(k,134) - mat(k,749) = -rxt(k,274)*y(k,134) - mat(k,932) = -rxt(k,275)*y(k,134) - mat(k,1200) = -rxt(k,276)*y(k,134) - mat(k,1267) = -(rxt(k,277) + rxt(k,278)) * y(k,134) - mat(k,562) = .500_r8*rxt(k,280)*y(k,137) - mat(k,143) = .200_r8*rxt(k,281)*y(k,137) - mat(k,712) = rxt(k,290)*y(k,137) - mat(k,1156) = .500_r8*rxt(k,280)*y(k,74) + .200_r8*rxt(k,281)*y(k,75) & - + rxt(k,290)*y(k,77) - mat(k,668) = -(rxt(k,282)*y(k,128) + rxt(k,283)*y(k,129) + rxt(k,284) & - *y(k,132) + 4._r8*rxt(k,285)*y(k,135) + rxt(k,286)*y(k,88) & - + rxt(k,287)*y(k,90) + rxt(k,291)*y(k,89)) - mat(k,694) = -rxt(k,282)*y(k,135) - mat(k,750) = -rxt(k,283)*y(k,135) - mat(k,933) = -rxt(k,284)*y(k,135) - mat(k,1268) = -rxt(k,286)*y(k,135) - mat(k,1201) = -rxt(k,287)*y(k,135) - mat(k,1035) = -rxt(k,291)*y(k,135) - mat(k,563) = .500_r8*rxt(k,280)*y(k,137) - mat(k,144) = .500_r8*rxt(k,281)*y(k,137) - mat(k,1157) = .500_r8*rxt(k,280)*y(k,74) + .500_r8*rxt(k,281)*y(k,75) - mat(k,1086) = -(rxt(k,86)*y(k,55) + rxt(k,87)*y(k,141) + (rxt(k,90) + rxt(k,91) & - ) * y(k,98) + (rxt(k,129) + rxt(k,130)) * y(k,79) + rxt(k,162) & - *y(k,16) + rxt(k,163)*y(k,17) + rxt(k,164)*y(k,19) + rxt(k,165) & - *y(k,20) + rxt(k,166)*y(k,21) + rxt(k,167)*y(k,22) + rxt(k,168) & - *y(k,23) + (rxt(k,169) + rxt(k,170)) * y(k,63) + rxt(k,189) & - *y(k,18) + rxt(k,190)*y(k,37) + rxt(k,191)*y(k,56) + (rxt(k,192) & - + rxt(k,193)) * y(k,59) + rxt(k,206)*y(k,24) + rxt(k,207) & - *y(k,26) + rxt(k,208)*y(k,60) + rxt(k,209)*y(k,61) + rxt(k,210) & - *y(k,62) + (rxt(k,221) + rxt(k,222) + rxt(k,223)) * y(k,36)) - mat(k,519) = -rxt(k,86)*y(k,136) - mat(k,1302) = -rxt(k,87)*y(k,136) - mat(k,1013) = -(rxt(k,90) + rxt(k,91)) * y(k,136) - mat(k,98) = -(rxt(k,129) + rxt(k,130)) * y(k,136) - mat(k,50) = -rxt(k,162)*y(k,136) - mat(k,76) = -rxt(k,163)*y(k,136) - mat(k,56) = -rxt(k,164)*y(k,136) - mat(k,59) = -rxt(k,165)*y(k,136) - mat(k,62) = -rxt(k,166)*y(k,136) - mat(k,65) = -rxt(k,167)*y(k,136) - mat(k,68) = -rxt(k,168)*y(k,136) - mat(k,827) = -(rxt(k,169) + rxt(k,170)) * y(k,136) - mat(k,53) = -rxt(k,189)*y(k,136) - mat(k,186) = -rxt(k,190)*y(k,136) - mat(k,44) = -rxt(k,191)*y(k,136) - mat(k,413) = -(rxt(k,192) + rxt(k,193)) * y(k,136) - mat(k,231) = -rxt(k,206)*y(k,136) - mat(k,298) = -rxt(k,207)*y(k,136) - mat(k,91) = -rxt(k,208)*y(k,136) - mat(k,95) = -rxt(k,209)*y(k,136) - mat(k,105) = -rxt(k,210)*y(k,136) - mat(k,487) = -(rxt(k,221) + rxt(k,222) + rxt(k,223)) * y(k,136) - mat(k,1172) = -(rxt(k,104)*y(k,55) + rxt(k,105)*y(k,57) + rxt(k,106)*y(k,132) & - + rxt(k,107)*y(k,97) + rxt(k,108)*y(k,98) + (4._r8*rxt(k,109) & - + 4._r8*rxt(k,110)) * y(k,137) + rxt(k,112)*y(k,66) + rxt(k,124) & - *y(k,90) + rxt(k,125)*y(k,78) + rxt(k,133)*y(k,89) + rxt(k,134) & - *y(k,65) + rxt(k,153)*y(k,42) + (rxt(k,155) + rxt(k,156) & - ) * y(k,41) + rxt(k,158)*y(k,63) + rxt(k,161)*y(k,68) + rxt(k,185) & - *y(k,6) + rxt(k,187)*y(k,59) + rxt(k,195)*y(k,24) + rxt(k,197) & - *y(k,26) + rxt(k,198)*y(k,27) + rxt(k,200)*y(k,29) + rxt(k,202) & - *y(k,37) + rxt(k,203)*y(k,60) + rxt(k,204)*y(k,61) + rxt(k,205) & - *y(k,62) + rxt(k,213)*y(k,25) + rxt(k,218)*y(k,34) + rxt(k,219) & - *y(k,35) + rxt(k,220)*y(k,36) + rxt(k,224)*y(k,44) + rxt(k,231) & - *y(k,10) + rxt(k,232)*y(k,11) + rxt(k,234)*y(k,12) + rxt(k,236) & - *y(k,28) + rxt(k,241)*y(k,32) + rxt(k,242)*y(k,33) + rxt(k,247) & - *y(k,52) + rxt(k,248)*y(k,53) + rxt(k,249)*y(k,103) + rxt(k,250) & - *y(k,9) + rxt(k,258)*y(k,14) + rxt(k,259)*y(k,15) + rxt(k,261) & - *y(k,31) + rxt(k,262)*y(k,69) + rxt(k,263)*y(k,91) + rxt(k,266) & - *y(k,106) + rxt(k,270)*y(k,107) + rxt(k,271)*y(k,13) + rxt(k,272) & - *y(k,30) + rxt(k,280)*y(k,74) + rxt(k,281)*y(k,75) + rxt(k,288) & - *y(k,76) + rxt(k,290)*y(k,77) + rxt(k,293)*y(k,3) + rxt(k,294) & - *y(k,70) + rxt(k,305)*y(k,71) + rxt(k,306)*y(k,73) + rxt(k,308) & - *y(k,102) + rxt(k,314)*y(k,123) + rxt(k,317)*y(k,122) + (rxt(k,319) & - + rxt(k,333)) * y(k,46) + rxt(k,321)*y(k,101) + rxt(k,323) & - *y(k,111) + rxt(k,327)*y(k,108) + rxt(k,332)*y(k,110) + rxt(k,335) & - *y(k,84)) - mat(k,520) = -rxt(k,104)*y(k,137) - mat(k,281) = -rxt(k,105)*y(k,137) - mat(k,948) = -rxt(k,106)*y(k,137) - mat(k,892) = -rxt(k,107)*y(k,137) - mat(k,1014) = -rxt(k,108)*y(k,137) - mat(k,179) = -rxt(k,112)*y(k,137) - mat(k,1216) = -rxt(k,124)*y(k,137) - mat(k,218) = -rxt(k,125)*y(k,137) - mat(k,1050) = -rxt(k,133)*y(k,137) - mat(k,418) = -rxt(k,134)*y(k,137) - mat(k,453) = -rxt(k,153)*y(k,137) - mat(k,1241) = -(rxt(k,155) + rxt(k,156)) * y(k,137) - mat(k,828) = -rxt(k,158)*y(k,137) - mat(k,405) = -rxt(k,161)*y(k,137) - mat(k,970) = -rxt(k,185)*y(k,137) - mat(k,414) = -rxt(k,187)*y(k,137) - mat(k,232) = -rxt(k,195)*y(k,137) - mat(k,299) = -rxt(k,197)*y(k,137) - mat(k,79) = -rxt(k,198)*y(k,137) - mat(k,174) = -rxt(k,200)*y(k,137) - mat(k,187) = -rxt(k,202)*y(k,137) - mat(k,92) = -rxt(k,203)*y(k,137) - mat(k,96) = -rxt(k,204)*y(k,137) - mat(k,106) = -rxt(k,205)*y(k,137) - mat(k,793) = -rxt(k,213)*y(k,137) - mat(k,251) = -rxt(k,218)*y(k,137) - mat(k,204) = -rxt(k,219)*y(k,137) - mat(k,488) = -rxt(k,220)*y(k,137) - mat(k,513) = -rxt(k,224)*y(k,137) - mat(k,114) = -rxt(k,231)*y(k,137) - mat(k,151) = -rxt(k,232)*y(k,137) - mat(k,134) = -rxt(k,234)*y(k,137) - mat(k,556) = -rxt(k,236)*y(k,137) - mat(k,321) = -rxt(k,241)*y(k,137) - mat(k,306) = -rxt(k,242)*y(k,137) - mat(k,464) = -rxt(k,247)*y(k,137) - mat(k,340) = -rxt(k,248)*y(k,137) - mat(k,258) = -rxt(k,249)*y(k,137) - mat(k,226) = -rxt(k,250)*y(k,137) - mat(k,192) = -rxt(k,258)*y(k,137) - mat(k,71) = -rxt(k,259)*y(k,137) - mat(k,596) = -rxt(k,261)*y(k,137) - mat(k,508) = -rxt(k,262)*y(k,137) - mat(k,199) = -rxt(k,263)*y(k,137) - mat(k,266) = -rxt(k,266)*y(k,137) - mat(k,210) = -rxt(k,270)*y(k,137) - mat(k,544) = -rxt(k,271)*y(k,137) - mat(k,364) = -rxt(k,272)*y(k,137) - mat(k,569) = -rxt(k,280)*y(k,137) - mat(k,146) = -rxt(k,281)*y(k,137) - mat(k,290) = -rxt(k,288)*y(k,137) - mat(k,726) = -rxt(k,290)*y(k,137) - mat(k,41) = -rxt(k,293)*y(k,137) - mat(k,159) = -rxt(k,294)*y(k,137) - mat(k,442) = -rxt(k,305)*y(k,137) - mat(k,247) = -rxt(k,306)*y(k,137) - mat(k,473) = -rxt(k,308)*y(k,137) - mat(k,102) = -rxt(k,314)*y(k,137) - mat(k,316) = -rxt(k,317)*y(k,137) - mat(k,140) = -(rxt(k,319) + rxt(k,333)) * y(k,137) - mat(k,167) = -rxt(k,321)*y(k,137) - mat(k,426) = -rxt(k,323)*y(k,137) - mat(k,239) = -rxt(k,327)*y(k,137) - mat(k,611) = -rxt(k,332)*y(k,137) - mat(k,46) = -rxt(k,335)*y(k,137) - mat(k,226) = mat(k,226) + .130_r8*rxt(k,226)*y(k,98) - mat(k,151) = mat(k,151) + .500_r8*rxt(k,232)*y(k,137) - mat(k,544) = mat(k,544) + .360_r8*rxt(k,254)*y(k,98) - mat(k,793) = mat(k,793) + rxt(k,212)*y(k,97) - mat(k,204) = mat(k,204) + .300_r8*rxt(k,219)*y(k,137) - mat(k,488) = mat(k,488) + rxt(k,221)*y(k,136) - mat(k,863) = rxt(k,142)*y(k,132) - mat(k,776) = rxt(k,103)*y(k,98) + 2.000_r8*rxt(k,98)*y(k,132) - mat(k,520) = mat(k,520) + rxt(k,95)*y(k,97) + rxt(k,86)*y(k,136) - mat(k,281) = mat(k,281) + rxt(k,96)*y(k,97) - mat(k,414) = mat(k,414) + rxt(k,186)*y(k,97) + rxt(k,192)*y(k,136) - mat(k,828) = mat(k,828) + rxt(k,157)*y(k,97) + rxt(k,169)*y(k,136) - mat(k,358) = rxt(k,188)*y(k,97) - mat(k,405) = mat(k,405) + rxt(k,160)*y(k,97) - mat(k,442) = mat(k,442) + .320_r8*rxt(k,304)*y(k,98) - mat(k,384) = .206_r8*rxt(k,296)*y(k,132) - mat(k,569) = mat(k,569) + .240_r8*rxt(k,279)*y(k,98) - mat(k,146) = mat(k,146) + .100_r8*rxt(k,281)*y(k,137) - mat(k,726) = mat(k,726) + .360_r8*rxt(k,289)*y(k,98) - mat(k,1283) = rxt(k,126)*y(k,132) - mat(k,1216) = mat(k,1216) + rxt(k,121)*y(k,132) - mat(k,892) = mat(k,892) + rxt(k,212)*y(k,25) + rxt(k,95)*y(k,55) + rxt(k,96) & - *y(k,57) + rxt(k,186)*y(k,59) + rxt(k,157)*y(k,63) + rxt(k,188) & - *y(k,67) + rxt(k,160)*y(k,68) + rxt(k,101)*y(k,132) - mat(k,1014) = mat(k,1014) + .130_r8*rxt(k,226)*y(k,9) + .360_r8*rxt(k,254) & - *y(k,13) + rxt(k,103)*y(k,54) + .320_r8*rxt(k,304)*y(k,71) & - + .240_r8*rxt(k,279)*y(k,74) + .360_r8*rxt(k,289)*y(k,77) & - + 1.156_r8*rxt(k,316)*y(k,122) + rxt(k,102)*y(k,132) - mat(k,266) = mat(k,266) + .500_r8*rxt(k,266)*y(k,137) - mat(k,316) = mat(k,316) + 1.156_r8*rxt(k,316)*y(k,98) - mat(k,102) = mat(k,102) + .500_r8*rxt(k,314)*y(k,137) - mat(k,703) = .450_r8*rxt(k,239)*y(k,132) - mat(k,948) = mat(k,948) + rxt(k,142)*y(k,38) + 2.000_r8*rxt(k,98)*y(k,54) & - + .206_r8*rxt(k,296)*y(k,72) + rxt(k,126)*y(k,88) + rxt(k,121) & - *y(k,90) + rxt(k,101)*y(k,97) + rxt(k,102)*y(k,98) & - + .450_r8*rxt(k,239)*y(k,128) + .450_r8*rxt(k,284)*y(k,135) & - + .150_r8*rxt(k,268)*y(k,139) - mat(k,676) = .450_r8*rxt(k,284)*y(k,132) - mat(k,1087) = rxt(k,221)*y(k,36) + rxt(k,86)*y(k,55) + rxt(k,192)*y(k,59) & - + rxt(k,169)*y(k,63) + 2.000_r8*rxt(k,87)*y(k,141) - mat(k,1172) = mat(k,1172) + .500_r8*rxt(k,232)*y(k,11) + .300_r8*rxt(k,219) & - *y(k,35) + .100_r8*rxt(k,281)*y(k,75) + .500_r8*rxt(k,266) & - *y(k,106) + .500_r8*rxt(k,314)*y(k,123) - mat(k,500) = .150_r8*rxt(k,268)*y(k,132) - mat(k,1303) = 2.000_r8*rxt(k,87)*y(k,136) - end do - end subroutine nlnmat06 - subroutine nlnmat07( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,342) = -(rxt(k,264)*y(k,132) + rxt(k,265)*y(k,88)) - mat(k,913) = -rxt(k,264)*y(k,138) - mat(k,1252) = -rxt(k,265)*y(k,138) - mat(k,525) = rxt(k,271)*y(k,137) - mat(k,261) = .500_r8*rxt(k,266)*y(k,137) - mat(k,1132) = rxt(k,271)*y(k,13) + .500_r8*rxt(k,266)*y(k,106) - mat(k,492) = -(rxt(k,267)*y(k,129) + rxt(k,268)*y(k,132) + rxt(k,269)*y(k,88)) - mat(k,741) = -rxt(k,267)*y(k,139) - mat(k,923) = -rxt(k,268)*y(k,139) - mat(k,1259) = -rxt(k,269)*y(k,139) - mat(k,361) = rxt(k,272)*y(k,137) - mat(k,207) = rxt(k,270)*y(k,137) - mat(k,1145) = rxt(k,272)*y(k,30) + rxt(k,270)*y(k,107) - mat(k,578) = -(rxt(k,309)*y(k,128) + rxt(k,310)*y(k,129) + rxt(k,311) & - *y(k,132) + rxt(k,312)*y(k,88) + rxt(k,313)*y(k,90)) - mat(k,690) = -rxt(k,309)*y(k,140) - mat(k,746) = -rxt(k,310)*y(k,140) - mat(k,929) = -rxt(k,311)*y(k,140) - mat(k,1264) = -rxt(k,312)*y(k,140) - mat(k,1196) = -rxt(k,313)*y(k,140) - mat(k,158) = rxt(k,294)*y(k,137) - mat(k,242) = .800_r8*rxt(k,306)*y(k,137) - mat(k,101) = .500_r8*rxt(k,314)*y(k,137) - mat(k,1152) = rxt(k,294)*y(k,70) + .800_r8*rxt(k,306)*y(k,73) & - + .500_r8*rxt(k,314)*y(k,123) - mat(k,1307) = -(rxt(k,87)*y(k,136) + rxt(k,334)*y(k,112)) - mat(k,1091) = -rxt(k,87)*y(k,141) - mat(k,119) = -rxt(k,334)*y(k,141) - mat(k,135) = rxt(k,234)*y(k,137) - mat(k,193) = rxt(k,258)*y(k,137) - mat(k,72) = rxt(k,259)*y(k,137) - mat(k,233) = rxt(k,195)*y(k,137) - mat(k,795) = rxt(k,213)*y(k,137) - mat(k,300) = rxt(k,197)*y(k,137) - mat(k,80) = rxt(k,198)*y(k,137) - mat(k,558) = rxt(k,236)*y(k,137) - mat(k,175) = rxt(k,200)*y(k,137) - mat(k,365) = rxt(k,272)*y(k,137) - mat(k,598) = rxt(k,261)*y(k,137) - mat(k,322) = rxt(k,241)*y(k,137) - mat(k,307) = rxt(k,242)*y(k,137) - mat(k,205) = rxt(k,219)*y(k,137) - mat(k,489) = rxt(k,220)*y(k,137) - mat(k,777) = rxt(k,99)*y(k,132) - mat(k,521) = rxt(k,104)*y(k,137) - mat(k,282) = rxt(k,105)*y(k,137) - mat(k,415) = rxt(k,187)*y(k,137) - mat(k,107) = rxt(k,205)*y(k,137) - mat(k,831) = (rxt(k,351)+rxt(k,356))*y(k,67) + (rxt(k,344)+rxt(k,350) & - +rxt(k,355))*y(k,68) + rxt(k,158)*y(k,137) - mat(k,420) = rxt(k,134)*y(k,137) - mat(k,181) = rxt(k,112)*y(k,137) - mat(k,359) = (rxt(k,351)+rxt(k,356))*y(k,63) - mat(k,407) = (rxt(k,344)+rxt(k,350)+rxt(k,355))*y(k,63) + rxt(k,161)*y(k,137) - mat(k,570) = .500_r8*rxt(k,280)*y(k,137) - mat(k,47) = rxt(k,335)*y(k,137) - mat(k,267) = rxt(k,266)*y(k,137) - mat(k,211) = rxt(k,270)*y(k,137) - mat(k,952) = rxt(k,99)*y(k,54) + rxt(k,106)*y(k,137) - mat(k,1176) = rxt(k,234)*y(k,12) + rxt(k,258)*y(k,14) + rxt(k,259)*y(k,15) & - + rxt(k,195)*y(k,24) + rxt(k,213)*y(k,25) + rxt(k,197)*y(k,26) & - + rxt(k,198)*y(k,27) + rxt(k,236)*y(k,28) + rxt(k,200)*y(k,29) & - + rxt(k,272)*y(k,30) + rxt(k,261)*y(k,31) + rxt(k,241)*y(k,32) & - + rxt(k,242)*y(k,33) + rxt(k,219)*y(k,35) + rxt(k,220)*y(k,36) & - + rxt(k,104)*y(k,55) + rxt(k,105)*y(k,57) + rxt(k,187)*y(k,59) & - + rxt(k,205)*y(k,62) + rxt(k,158)*y(k,63) + rxt(k,134)*y(k,65) & - + rxt(k,112)*y(k,66) + rxt(k,161)*y(k,68) + .500_r8*rxt(k,280) & - *y(k,74) + rxt(k,335)*y(k,84) + rxt(k,266)*y(k,106) + rxt(k,270) & - *y(k,107) + rxt(k,106)*y(k,132) + 2.000_r8*rxt(k,109)*y(k,137) - end do - end subroutine nlnmat07 - subroutine nlnmat_finit( avec_len, mat, lmat, dti ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: dti(veclen) - real(r8), intent(in) :: lmat(veclen,nzcnt) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k, 1) = lmat(k, 1) - mat(k, 2) = lmat(k, 2) - mat(k, 3) = lmat(k, 3) - mat(k, 4) = lmat(k, 4) - mat(k, 5) = lmat(k, 5) - mat(k, 6) = lmat(k, 6) - mat(k, 7) = lmat(k, 7) - mat(k, 8) = lmat(k, 8) - mat(k, 9) = lmat(k, 9) - mat(k, 10) = lmat(k, 10) - mat(k, 11) = lmat(k, 11) - mat(k, 12) = lmat(k, 12) - mat(k, 13) = lmat(k, 13) - mat(k, 14) = lmat(k, 14) - mat(k, 15) = lmat(k, 15) - mat(k, 16) = lmat(k, 16) - mat(k, 17) = lmat(k, 17) - mat(k, 18) = lmat(k, 18) - mat(k, 19) = lmat(k, 19) - mat(k, 20) = lmat(k, 20) - mat(k, 21) = lmat(k, 21) - mat(k, 22) = lmat(k, 22) - mat(k, 23) = lmat(k, 23) - mat(k, 24) = lmat(k, 24) - mat(k, 25) = lmat(k, 25) - mat(k, 26) = lmat(k, 26) - mat(k, 27) = lmat(k, 27) - mat(k, 28) = lmat(k, 28) - mat(k, 29) = lmat(k, 29) - mat(k, 30) = lmat(k, 30) - mat(k, 31) = lmat(k, 31) - mat(k, 32) = lmat(k, 32) - mat(k, 33) = lmat(k, 33) - mat(k, 34) = lmat(k, 34) - mat(k, 35) = lmat(k, 35) - mat(k, 36) = lmat(k, 36) - mat(k, 37) = lmat(k, 37) - mat(k, 38) = lmat(k, 38) - mat(k, 39) = mat(k, 39) + lmat(k, 39) - mat(k, 42) = mat(k, 42) + lmat(k, 42) - mat(k, 43) = mat(k, 43) + lmat(k, 43) - mat(k, 45) = mat(k, 45) + lmat(k, 45) - mat(k, 48) = mat(k, 48) + lmat(k, 48) - mat(k, 49) = mat(k, 49) + lmat(k, 49) - mat(k, 51) = mat(k, 51) + lmat(k, 51) - mat(k, 52) = mat(k, 52) + lmat(k, 52) - mat(k, 54) = mat(k, 54) + lmat(k, 54) - mat(k, 55) = mat(k, 55) + lmat(k, 55) - mat(k, 57) = mat(k, 57) + lmat(k, 57) - mat(k, 58) = mat(k, 58) + lmat(k, 58) - mat(k, 60) = mat(k, 60) + lmat(k, 60) - mat(k, 61) = mat(k, 61) + lmat(k, 61) - mat(k, 63) = mat(k, 63) + lmat(k, 63) - mat(k, 64) = mat(k, 64) + lmat(k, 64) - mat(k, 66) = mat(k, 66) + lmat(k, 66) - mat(k, 67) = mat(k, 67) + lmat(k, 67) - mat(k, 69) = mat(k, 69) + lmat(k, 69) - mat(k, 73) = mat(k, 73) + lmat(k, 73) - mat(k, 74) = mat(k, 74) + lmat(k, 74) - mat(k, 75) = mat(k, 75) + lmat(k, 75) - mat(k, 77) = mat(k, 77) + lmat(k, 77) - mat(k, 78) = mat(k, 78) + lmat(k, 78) - mat(k, 81) = lmat(k, 81) - mat(k, 82) = lmat(k, 82) - mat(k, 83) = lmat(k, 83) - mat(k, 84) = lmat(k, 84) - mat(k, 85) = lmat(k, 85) - mat(k, 86) = lmat(k, 86) - mat(k, 87) = lmat(k, 87) - mat(k, 88) = lmat(k, 88) - mat(k, 89) = mat(k, 89) + lmat(k, 89) - mat(k, 90) = mat(k, 90) + lmat(k, 90) - mat(k, 93) = mat(k, 93) + lmat(k, 93) - mat(k, 94) = mat(k, 94) + lmat(k, 94) - mat(k, 97) = mat(k, 97) + lmat(k, 97) - mat(k, 98) = mat(k, 98) + lmat(k, 98) - mat(k, 100) = mat(k, 100) + lmat(k, 100) - mat(k, 102) = mat(k, 102) + lmat(k, 102) - mat(k, 103) = mat(k, 103) + lmat(k, 103) - mat(k, 104) = mat(k, 104) + lmat(k, 104) - mat(k, 108) = lmat(k, 108) - mat(k, 109) = lmat(k, 109) - mat(k, 110) = lmat(k, 110) - mat(k, 111) = mat(k, 111) + lmat(k, 111) - mat(k, 116) = mat(k, 116) + lmat(k, 116) - mat(k, 117) = lmat(k, 117) - mat(k, 118) = lmat(k, 118) - mat(k, 120) = lmat(k, 120) - mat(k, 121) = lmat(k, 121) - mat(k, 122) = lmat(k, 122) - mat(k, 123) = lmat(k, 123) - mat(k, 124) = lmat(k, 124) - mat(k, 125) = lmat(k, 125) - mat(k, 126) = lmat(k, 126) - mat(k, 127) = lmat(k, 127) - mat(k, 128) = lmat(k, 128) - mat(k, 129) = lmat(k, 129) - mat(k, 130) = mat(k, 130) + lmat(k, 130) - mat(k, 136) = mat(k, 136) + lmat(k, 136) - mat(k, 142) = mat(k, 142) + lmat(k, 142) - mat(k, 147) = mat(k, 147) + lmat(k, 147) - mat(k, 149) = mat(k, 149) + lmat(k, 149) - mat(k, 150) = lmat(k, 150) - mat(k, 151) = mat(k, 151) + lmat(k, 151) - mat(k, 152) = mat(k, 152) + lmat(k, 152) - mat(k, 155) = lmat(k, 155) - mat(k, 156) = mat(k, 156) + lmat(k, 156) - mat(k, 157) = mat(k, 157) + lmat(k, 157) - mat(k, 160) = mat(k, 160) + lmat(k, 160) - mat(k, 161) = lmat(k, 161) - mat(k, 163) = mat(k, 163) + lmat(k, 163) - mat(k, 168) = mat(k, 168) + lmat(k, 168) - mat(k, 170) = lmat(k, 170) - mat(k, 172) = mat(k, 172) + lmat(k, 172) - mat(k, 176) = mat(k, 176) + lmat(k, 176) - mat(k, 177) = lmat(k, 177) - mat(k, 178) = mat(k, 178) + lmat(k, 178) - mat(k, 179) = mat(k, 179) + lmat(k, 179) - mat(k, 180) = lmat(k, 180) - mat(k, 182) = mat(k, 182) + lmat(k, 182) - mat(k, 183) = mat(k, 183) + lmat(k, 183) - mat(k, 188) = mat(k, 188) + lmat(k, 188) - mat(k, 189) = lmat(k, 189) - mat(k, 191) = lmat(k, 191) - mat(k, 192) = mat(k, 192) + lmat(k, 192) - mat(k, 194) = mat(k, 194) + lmat(k, 194) - mat(k, 196) = lmat(k, 196) - mat(k, 197) = lmat(k, 197) - mat(k, 198) = mat(k, 198) + lmat(k, 198) - mat(k, 200) = mat(k, 200) + lmat(k, 200) - mat(k, 202) = lmat(k, 202) - mat(k, 203) = mat(k, 203) + lmat(k, 203) - mat(k, 204) = mat(k, 204) + lmat(k, 204) - mat(k, 206) = mat(k, 206) + lmat(k, 206) - mat(k, 208) = lmat(k, 208) - mat(k, 209) = lmat(k, 209) - mat(k, 210) = mat(k, 210) + lmat(k, 210) - mat(k, 213) = mat(k, 213) + lmat(k, 213) - mat(k, 215) = mat(k, 215) + lmat(k, 215) - mat(k, 219) = mat(k, 219) + lmat(k, 219) - mat(k, 220) = mat(k, 220) + lmat(k, 220) - mat(k, 227) = mat(k, 227) + lmat(k, 227) - mat(k, 228) = mat(k, 228) + lmat(k, 228) - mat(k, 234) = mat(k, 234) + lmat(k, 234) - mat(k, 235) = mat(k, 235) + lmat(k, 235) - mat(k, 237) = lmat(k, 237) - mat(k, 240) = mat(k, 240) + lmat(k, 240) - mat(k, 241) = lmat(k, 241) - mat(k, 244) = lmat(k, 244) - mat(k, 245) = lmat(k, 245) - mat(k, 246) = lmat(k, 246) - mat(k, 248) = mat(k, 248) + lmat(k, 248) - mat(k, 252) = mat(k, 252) + lmat(k, 252) - mat(k, 253) = lmat(k, 253) - mat(k, 254) = lmat(k, 254) - mat(k, 255) = lmat(k, 255) - mat(k, 257) = lmat(k, 257) - mat(k, 259) = mat(k, 259) + lmat(k, 259) - mat(k, 260) = mat(k, 260) + lmat(k, 260) - mat(k, 263) = lmat(k, 263) - mat(k, 264) = lmat(k, 264) - mat(k, 265) = lmat(k, 265) - mat(k, 266) = mat(k, 266) + lmat(k, 266) - mat(k, 268) = mat(k, 268) + lmat(k, 268) - mat(k, 269) = lmat(k, 269) - mat(k, 270) = lmat(k, 270) - mat(k, 271) = lmat(k, 271) - mat(k, 273) = mat(k, 273) + lmat(k, 273) - mat(k, 274) = lmat(k, 274) - mat(k, 275) = mat(k, 275) + lmat(k, 275) - mat(k, 276) = mat(k, 276) + lmat(k, 276) - mat(k, 281) = mat(k, 281) + lmat(k, 281) - mat(k, 283) = mat(k, 283) + lmat(k, 283) - mat(k, 286) = lmat(k, 286) - mat(k, 289) = lmat(k, 289) - mat(k, 292) = mat(k, 292) + lmat(k, 292) - mat(k, 293) = lmat(k, 293) - mat(k, 294) = mat(k, 294) + lmat(k, 294) - mat(k, 301) = mat(k, 301) + lmat(k, 301) - mat(k, 302) = mat(k, 302) + lmat(k, 302) - mat(k, 304) = lmat(k, 304) - mat(k, 306) = mat(k, 306) + lmat(k, 306) - mat(k, 308) = mat(k, 308) + lmat(k, 308) - mat(k, 318) = mat(k, 318) + lmat(k, 318) - mat(k, 323) = lmat(k, 323) - mat(k, 324) = lmat(k, 324) - mat(k, 325) = lmat(k, 325) - mat(k, 328) = mat(k, 328) + lmat(k, 328) - mat(k, 336) = mat(k, 336) + lmat(k, 336) - mat(k, 337) = mat(k, 337) + lmat(k, 337) - mat(k, 339) = mat(k, 339) + lmat(k, 339) - mat(k, 342) = mat(k, 342) + lmat(k, 342) - mat(k, 352) = mat(k, 352) + lmat(k, 352) - mat(k, 353) = lmat(k, 353) - mat(k, 358) = mat(k, 358) + lmat(k, 358) - mat(k, 360) = mat(k, 360) + lmat(k, 360) - mat(k, 362) = lmat(k, 362) - mat(k, 363) = lmat(k, 363) - mat(k, 369) = mat(k, 369) + lmat(k, 369) - mat(k, 377) = mat(k, 377) + lmat(k, 377) - mat(k, 389) = mat(k, 389) + lmat(k, 389) - mat(k, 401) = mat(k, 401) + lmat(k, 401) - mat(k, 403) = mat(k, 403) + lmat(k, 403) - mat(k, 405) = mat(k, 405) + lmat(k, 405) - mat(k, 408) = mat(k, 408) + lmat(k, 408) - mat(k, 409) = mat(k, 409) + lmat(k, 409) - mat(k, 410) = mat(k, 410) + lmat(k, 410) - mat(k, 416) = mat(k, 416) + lmat(k, 416) - mat(k, 417) = lmat(k, 417) - mat(k, 418) = mat(k, 418) + lmat(k, 418) - mat(k, 422) = mat(k, 422) + lmat(k, 422) - mat(k, 423) = lmat(k, 423) - mat(k, 424) = lmat(k, 424) - mat(k, 429) = mat(k, 429) + lmat(k, 429) - mat(k, 446) = mat(k, 446) + lmat(k, 446) - mat(k, 447) = mat(k, 447) + lmat(k, 447) - mat(k, 448) = mat(k, 448) + lmat(k, 448) - mat(k, 450) = mat(k, 450) + lmat(k, 450) - mat(k, 452) = lmat(k, 452) - mat(k, 454) = mat(k, 454) + lmat(k, 454) - mat(k, 455) = mat(k, 455) + lmat(k, 455) - mat(k, 459) = mat(k, 459) + lmat(k, 459) - mat(k, 460) = lmat(k, 460) - mat(k, 461) = mat(k, 461) + lmat(k, 461) - mat(k, 463) = mat(k, 463) + lmat(k, 463) - mat(k, 466) = lmat(k, 466) - mat(k, 467) = mat(k, 467) + lmat(k, 467) - mat(k, 468) = lmat(k, 468) - mat(k, 470) = lmat(k, 470) - mat(k, 471) = mat(k, 471) + lmat(k, 471) - mat(k, 472) = mat(k, 472) + lmat(k, 472) - mat(k, 476) = lmat(k, 476) - mat(k, 477) = mat(k, 477) + lmat(k, 477) - mat(k, 478) = lmat(k, 478) - mat(k, 479) = mat(k, 479) + lmat(k, 479) - mat(k, 480) = mat(k, 480) + lmat(k, 480) - mat(k, 481) = mat(k, 481) + lmat(k, 481) - mat(k, 482) = mat(k, 482) + lmat(k, 482) - mat(k, 485) = lmat(k, 485) - mat(k, 488) = mat(k, 488) + lmat(k, 488) - mat(k, 489) = mat(k, 489) + lmat(k, 489) - mat(k, 492) = mat(k, 492) + lmat(k, 492) - mat(k, 503) = mat(k, 503) + lmat(k, 503) - mat(k, 505) = lmat(k, 505) - mat(k, 506) = lmat(k, 506) - mat(k, 507) = mat(k, 507) + lmat(k, 507) - mat(k, 510) = mat(k, 510) + lmat(k, 510) - mat(k, 514) = mat(k, 514) + lmat(k, 514) - mat(k, 530) = mat(k, 530) + lmat(k, 530) - mat(k, 549) = lmat(k, 549) - mat(k, 550) = mat(k, 550) + lmat(k, 550) - mat(k, 552) = lmat(k, 552) - mat(k, 554) = lmat(k, 554) - mat(k, 559) = mat(k, 559) + lmat(k, 559) - mat(k, 560) = mat(k, 560) + lmat(k, 560) - mat(k, 563) = mat(k, 563) + lmat(k, 563) - mat(k, 564) = mat(k, 564) + lmat(k, 564) - mat(k, 565) = mat(k, 565) + lmat(k, 565) - mat(k, 567) = mat(k, 567) + lmat(k, 567) - mat(k, 578) = mat(k, 578) + lmat(k, 578) - mat(k, 590) = mat(k, 590) + lmat(k, 590) - mat(k, 591) = mat(k, 591) + lmat(k, 591) - mat(k, 592) = mat(k, 592) + lmat(k, 592) - mat(k, 594) = lmat(k, 594) - mat(k, 600) = lmat(k, 600) - mat(k, 601) = mat(k, 601) + lmat(k, 601) - mat(k, 602) = mat(k, 602) + lmat(k, 602) - mat(k, 606) = lmat(k, 606) - mat(k, 626) = mat(k, 626) + lmat(k, 626) - mat(k, 649) = mat(k, 649) + lmat(k, 649) - mat(k, 668) = mat(k, 668) + lmat(k, 668) - mat(k, 695) = mat(k, 695) + lmat(k, 695) - mat(k, 708) = mat(k, 708) + lmat(k, 708) - mat(k, 709) = lmat(k, 709) - mat(k, 714) = mat(k, 714) + lmat(k, 714) - mat(k, 715) = mat(k, 715) + lmat(k, 715) - mat(k, 716) = lmat(k, 716) - mat(k, 753) = mat(k, 753) + lmat(k, 753) - mat(k, 769) = mat(k, 769) + lmat(k, 769) - mat(k, 773) = mat(k, 773) + lmat(k, 773) - mat(k, 780) = mat(k, 780) + lmat(k, 780) - mat(k, 781) = lmat(k, 781) - mat(k, 782) = mat(k, 782) + lmat(k, 782) - mat(k, 783) = mat(k, 783) + lmat(k, 783) - mat(k, 800) = mat(k, 800) + lmat(k, 800) - mat(k, 818) = mat(k, 818) + lmat(k, 818) - mat(k, 820) = mat(k, 820) + lmat(k, 820) - mat(k, 821) = mat(k, 821) + lmat(k, 821) - mat(k, 856) = mat(k, 856) + lmat(k, 856) - mat(k, 886) = mat(k, 886) + lmat(k, 886) - mat(k, 889) = mat(k, 889) + lmat(k, 889) - mat(k, 943) = mat(k, 943) + lmat(k, 943) - mat(k, 952) = mat(k, 952) + lmat(k, 952) - mat(k, 961) = mat(k, 961) + lmat(k, 961) - mat(k, 964) = mat(k, 964) + lmat(k, 964) - mat(k, 966) = mat(k, 966) + lmat(k, 966) - mat(k,1008) = mat(k,1008) + lmat(k,1008) - mat(k,1011) = mat(k,1011) + lmat(k,1011) - mat(k,1013) = mat(k,1013) + lmat(k,1013) - mat(k,1028) = mat(k,1028) + lmat(k,1028) - mat(k,1044) = mat(k,1044) + lmat(k,1044) - mat(k,1048) = mat(k,1048) + lmat(k,1048) - mat(k,1050) = mat(k,1050) + lmat(k,1050) - mat(k,1053) = mat(k,1053) + lmat(k,1053) - mat(k,1081) = mat(k,1081) + lmat(k,1081) - mat(k,1086) = mat(k,1086) + lmat(k,1086) - mat(k,1172) = mat(k,1172) + lmat(k,1172) - mat(k,1185) = mat(k,1185) + lmat(k,1185) - mat(k,1210) = mat(k,1210) + lmat(k,1210) - mat(k,1214) = mat(k,1214) + lmat(k,1214) - mat(k,1217) = mat(k,1217) + lmat(k,1217) - mat(k,1219) = mat(k,1219) + lmat(k,1219) - mat(k,1234) = mat(k,1234) + lmat(k,1234) - mat(k,1235) = mat(k,1235) + lmat(k,1235) - mat(k,1243) = mat(k,1243) + lmat(k,1243) - mat(k,1248) = mat(k,1248) + lmat(k,1248) - mat(k,1277) = mat(k,1277) + lmat(k,1277) - mat(k,1286) = mat(k,1286) + lmat(k,1286) - mat(k,1291) = lmat(k,1291) - mat(k,1293) = lmat(k,1293) - mat(k,1297) = lmat(k,1297) - mat(k,1302) = mat(k,1302) + lmat(k,1302) - mat(k,1303) = mat(k,1303) + lmat(k,1303) - mat(k,1307) = mat(k,1307) + lmat(k,1307) - mat(k, 217) = 0._r8 - mat(k, 329) = 0._r8 - mat(k, 333) = 0._r8 - mat(k, 338) = 0._r8 - mat(k, 343) = 0._r8 - mat(k, 348) = 0._r8 - mat(k, 350) = 0._r8 - mat(k, 355) = 0._r8 - mat(k, 375) = 0._r8 - mat(k, 390) = 0._r8 - mat(k, 392) = 0._r8 - mat(k, 397) = 0._r8 - mat(k, 399) = 0._r8 - mat(k, 427) = 0._r8 - mat(k, 430) = 0._r8 - mat(k, 441) = 0._r8 - mat(k, 444) = 0._r8 - mat(k, 456) = 0._r8 - mat(k, 462) = 0._r8 - mat(k, 469) = 0._r8 - mat(k, 475) = 0._r8 - mat(k, 502) = 0._r8 - mat(k, 511) = 0._r8 - mat(k, 527) = 0._r8 - mat(k, 529) = 0._r8 - mat(k, 532) = 0._r8 - mat(k, 533) = 0._r8 - mat(k, 535) = 0._r8 - mat(k, 537) = 0._r8 - mat(k, 538) = 0._r8 - mat(k, 539) = 0._r8 - mat(k, 542) = 0._r8 - mat(k, 543) = 0._r8 - mat(k, 546) = 0._r8 - mat(k, 547) = 0._r8 - mat(k, 553) = 0._r8 - mat(k, 555) = 0._r8 - mat(k, 566) = 0._r8 - mat(k, 583) = 0._r8 - mat(k, 586) = 0._r8 - mat(k, 593) = 0._r8 - mat(k, 595) = 0._r8 - mat(k, 607) = 0._r8 - mat(k, 614) = 0._r8 - mat(k, 622) = 0._r8 - mat(k, 624) = 0._r8 - mat(k, 627) = 0._r8 - mat(k, 628) = 0._r8 - mat(k, 633) = 0._r8 - mat(k, 635) = 0._r8 - mat(k, 637) = 0._r8 - mat(k, 640) = 0._r8 - mat(k, 647) = 0._r8 - mat(k, 650) = 0._r8 - mat(k, 654) = 0._r8 - mat(k, 657) = 0._r8 - mat(k, 660) = 0._r8 - mat(k, 665) = 0._r8 - mat(k, 666) = 0._r8 - mat(k, 667) = 0._r8 - mat(k, 672) = 0._r8 - mat(k, 679) = 0._r8 - mat(k, 699) = 0._r8 - mat(k, 704) = 0._r8 - mat(k, 706) = 0._r8 - mat(k, 713) = 0._r8 - mat(k, 717) = 0._r8 - mat(k, 719) = 0._r8 - mat(k, 720) = 0._r8 - mat(k, 721) = 0._r8 - mat(k, 724) = 0._r8 - mat(k, 725) = 0._r8 - mat(k, 727) = 0._r8 - mat(k, 728) = 0._r8 - mat(k, 729) = 0._r8 - mat(k, 754) = 0._r8 - mat(k, 756) = 0._r8 - mat(k, 758) = 0._r8 - mat(k, 760) = 0._r8 - mat(k, 762) = 0._r8 - mat(k, 763) = 0._r8 - mat(k, 764) = 0._r8 - mat(k, 767) = 0._r8 - mat(k, 770) = 0._r8 - mat(k, 771) = 0._r8 - mat(k, 775) = 0._r8 - mat(k, 789) = 0._r8 - mat(k, 790) = 0._r8 - mat(k, 791) = 0._r8 - mat(k, 792) = 0._r8 - mat(k, 798) = 0._r8 - mat(k, 801) = 0._r8 - mat(k, 802) = 0._r8 - mat(k, 803) = 0._r8 - mat(k, 807) = 0._r8 - mat(k, 808) = 0._r8 - mat(k, 809) = 0._r8 - mat(k, 810) = 0._r8 - mat(k, 811) = 0._r8 - mat(k, 819) = 0._r8 - mat(k, 823) = 0._r8 - mat(k, 824) = 0._r8 - mat(k, 825) = 0._r8 - mat(k, 826) = 0._r8 - mat(k, 829) = 0._r8 - mat(k, 840) = 0._r8 - mat(k, 844) = 0._r8 - mat(k, 848) = 0._r8 - mat(k, 849) = 0._r8 - mat(k, 850) = 0._r8 - mat(k, 857) = 0._r8 - mat(k, 859) = 0._r8 - mat(k, 861) = 0._r8 - mat(k, 862) = 0._r8 - mat(k, 866) = 0._r8 - mat(k, 867) = 0._r8 - mat(k, 869) = 0._r8 - mat(k, 875) = 0._r8 - mat(k, 876) = 0._r8 - mat(k, 891) = 0._r8 - mat(k, 896) = 0._r8 - mat(k, 899) = 0._r8 - mat(k, 915) = 0._r8 - mat(k, 921) = 0._r8 - mat(k, 924) = 0._r8 - mat(k, 925) = 0._r8 - mat(k, 927) = 0._r8 - mat(k, 930) = 0._r8 - mat(k, 947) = 0._r8 - mat(k, 957) = 0._r8 - mat(k, 960) = 0._r8 - mat(k, 962) = 0._r8 - mat(k, 967) = 0._r8 - mat(k, 969) = 0._r8 - mat(k, 971) = 0._r8 - mat(k, 974) = 0._r8 - mat(k, 980) = 0._r8 - mat(k, 981) = 0._r8 - mat(k, 984) = 0._r8 - mat(k, 985) = 0._r8 - mat(k, 987) = 0._r8 - mat(k, 988) = 0._r8 - mat(k, 990) = 0._r8 - mat(k, 994) = 0._r8 - mat(k, 997) = 0._r8 - mat(k, 998) = 0._r8 - mat(k, 999) = 0._r8 - mat(k,1006) = 0._r8 - mat(k,1018) = 0._r8 - mat(k,1026) = 0._r8 - mat(k,1027) = 0._r8 - mat(k,1031) = 0._r8 - mat(k,1032) = 0._r8 - mat(k,1033) = 0._r8 - mat(k,1037) = 0._r8 - mat(k,1038) = 0._r8 - mat(k,1039) = 0._r8 - mat(k,1040) = 0._r8 - mat(k,1041) = 0._r8 - mat(k,1042) = 0._r8 - mat(k,1043) = 0._r8 - mat(k,1049) = 0._r8 - mat(k,1054) = 0._r8 - mat(k,1073) = 0._r8 - mat(k,1085) = 0._r8 - mat(k,1088) = 0._r8 - mat(k,1171) = 0._r8 - mat(k,1183) = 0._r8 - mat(k,1190) = 0._r8 - mat(k,1198) = 0._r8 - mat(k,1204) = 0._r8 - mat(k,1205) = 0._r8 - mat(k,1207) = 0._r8 - mat(k,1208) = 0._r8 - mat(k,1209) = 0._r8 - mat(k,1212) = 0._r8 - mat(k,1213) = 0._r8 - mat(k,1215) = 0._r8 - mat(k,1218) = 0._r8 - mat(k,1220) = 0._r8 - mat(k,1230) = 0._r8 - mat(k,1238) = 0._r8 - mat(k,1240) = 0._r8 - mat(k,1242) = 0._r8 - mat(k,1245) = 0._r8 - mat(k,1272) = 0._r8 - mat(k,1275) = 0._r8 - mat(k,1282) = 0._r8 - mat(k,1287) = 0._r8 - mat(k,1290) = 0._r8 - mat(k,1292) = 0._r8 - mat(k,1294) = 0._r8 - mat(k,1295) = 0._r8 - mat(k,1296) = 0._r8 - mat(k,1298) = 0._r8 - mat(k,1299) = 0._r8 - mat(k,1300) = 0._r8 - mat(k,1301) = 0._r8 - mat(k,1304) = 0._r8 - mat(k,1305) = 0._r8 - mat(k,1306) = 0._r8 - mat(k, 1) = mat(k, 1) - dti(k) - mat(k, 2) = mat(k, 2) - dti(k) - mat(k, 3) = mat(k, 3) - dti(k) - mat(k, 4) = mat(k, 4) - dti(k) - mat(k, 5) = mat(k, 5) - dti(k) - mat(k, 6) = mat(k, 6) - dti(k) - mat(k, 7) = mat(k, 7) - dti(k) - mat(k, 8) = mat(k, 8) - dti(k) - mat(k, 9) = mat(k, 9) - dti(k) - mat(k, 11) = mat(k, 11) - dti(k) - mat(k, 12) = mat(k, 12) - dti(k) - mat(k, 13) = mat(k, 13) - dti(k) - mat(k, 14) = mat(k, 14) - dti(k) - mat(k, 15) = mat(k, 15) - dti(k) - mat(k, 16) = mat(k, 16) - dti(k) - mat(k, 17) = mat(k, 17) - dti(k) - mat(k, 18) = mat(k, 18) - dti(k) - mat(k, 19) = mat(k, 19) - dti(k) - mat(k, 20) = mat(k, 20) - dti(k) - mat(k, 21) = mat(k, 21) - dti(k) - mat(k, 22) = mat(k, 22) - dti(k) - mat(k, 23) = mat(k, 23) - dti(k) - mat(k, 24) = mat(k, 24) - dti(k) - mat(k, 25) = mat(k, 25) - dti(k) - mat(k, 26) = mat(k, 26) - dti(k) - mat(k, 27) = mat(k, 27) - dti(k) - mat(k, 28) = mat(k, 28) - dti(k) - mat(k, 29) = mat(k, 29) - dti(k) - mat(k, 30) = mat(k, 30) - dti(k) - mat(k, 31) = mat(k, 31) - dti(k) - mat(k, 32) = mat(k, 32) - dti(k) - mat(k, 34) = mat(k, 34) - dti(k) - mat(k, 35) = mat(k, 35) - dti(k) - mat(k, 36) = mat(k, 36) - dti(k) - mat(k, 39) = mat(k, 39) - dti(k) - mat(k, 42) = mat(k, 42) - dti(k) - mat(k, 45) = mat(k, 45) - dti(k) - mat(k, 48) = mat(k, 48) - dti(k) - mat(k, 51) = mat(k, 51) - dti(k) - mat(k, 54) = mat(k, 54) - dti(k) - mat(k, 57) = mat(k, 57) - dti(k) - mat(k, 60) = mat(k, 60) - dti(k) - mat(k, 63) = mat(k, 63) - dti(k) - mat(k, 66) = mat(k, 66) - dti(k) - mat(k, 69) = mat(k, 69) - dti(k) - mat(k, 73) = mat(k, 73) - dti(k) - mat(k, 77) = mat(k, 77) - dti(k) - mat(k, 81) = mat(k, 81) - dti(k) - mat(k, 84) = mat(k, 84) - dti(k) - mat(k, 87) = mat(k, 87) - dti(k) - mat(k, 89) = mat(k, 89) - dti(k) - mat(k, 93) = mat(k, 93) - dti(k) - mat(k, 97) = mat(k, 97) - dti(k) - mat(k, 100) = mat(k, 100) - dti(k) - mat(k, 103) = mat(k, 103) - dti(k) - mat(k, 108) = mat(k, 108) - dti(k) - mat(k, 111) = mat(k, 111) - dti(k) - mat(k, 116) = mat(k, 116) - dti(k) - mat(k, 120) = mat(k, 120) - dti(k) - mat(k, 124) = mat(k, 124) - dti(k) - mat(k, 130) = mat(k, 130) - dti(k) - mat(k, 136) = mat(k, 136) - dti(k) - mat(k, 142) = mat(k, 142) - dti(k) - mat(k, 147) = mat(k, 147) - dti(k) - mat(k, 152) = mat(k, 152) - dti(k) - mat(k, 157) = mat(k, 157) - dti(k) - mat(k, 160) = mat(k, 160) - dti(k) - mat(k, 168) = mat(k, 168) - dti(k) - mat(k, 176) = mat(k, 176) - dti(k) - mat(k, 182) = mat(k, 182) - dti(k) - mat(k, 188) = mat(k, 188) - dti(k) - mat(k, 194) = mat(k, 194) - dti(k) - mat(k, 200) = mat(k, 200) - dti(k) - mat(k, 206) = mat(k, 206) - dti(k) - mat(k, 213) = mat(k, 213) - dti(k) - mat(k, 220) = mat(k, 220) - dti(k) - mat(k, 227) = mat(k, 227) - dti(k) - mat(k, 234) = mat(k, 234) - dti(k) - mat(k, 240) = mat(k, 240) - dti(k) - mat(k, 248) = mat(k, 248) - dti(k) - mat(k, 252) = mat(k, 252) - dti(k) - mat(k, 260) = mat(k, 260) - dti(k) - mat(k, 268) = mat(k, 268) - dti(k) - mat(k, 276) = mat(k, 276) - dti(k) - mat(k, 283) = mat(k, 283) - dti(k) - mat(k, 292) = mat(k, 292) - dti(k) - mat(k, 301) = mat(k, 301) - dti(k) - mat(k, 308) = mat(k, 308) - dti(k) - mat(k, 318) = mat(k, 318) - dti(k) - mat(k, 323) = mat(k, 323) - dti(k) - mat(k, 328) = mat(k, 328) - dti(k) - mat(k, 336) = mat(k, 336) - dti(k) - mat(k, 342) = mat(k, 342) - dti(k) - mat(k, 352) = mat(k, 352) - dti(k) - mat(k, 360) = mat(k, 360) - dti(k) - mat(k, 369) = mat(k, 369) - dti(k) - mat(k, 377) = mat(k, 377) - dti(k) - mat(k, 389) = mat(k, 389) - dti(k) - mat(k, 401) = mat(k, 401) - dti(k) - mat(k, 408) = mat(k, 408) - dti(k) - mat(k, 416) = mat(k, 416) - dti(k) - mat(k, 422) = mat(k, 422) - dti(k) - mat(k, 429) = mat(k, 429) - dti(k) - mat(k, 448) = mat(k, 448) - dti(k) - mat(k, 459) = mat(k, 459) - dti(k) - mat(k, 467) = mat(k, 467) - dti(k) - mat(k, 477) = mat(k, 477) - dti(k) - mat(k, 492) = mat(k, 492) - dti(k) - mat(k, 503) = mat(k, 503) - dti(k) - mat(k, 510) = mat(k, 510) - dti(k) - mat(k, 514) = mat(k, 514) - dti(k) - mat(k, 530) = mat(k, 530) - dti(k) - mat(k, 550) = mat(k, 550) - dti(k) - mat(k, 560) = mat(k, 560) - dti(k) - mat(k, 578) = mat(k, 578) - dti(k) - mat(k, 591) = mat(k, 591) - dti(k) - mat(k, 602) = mat(k, 602) - dti(k) - mat(k, 626) = mat(k, 626) - dti(k) - mat(k, 649) = mat(k, 649) - dti(k) - mat(k, 668) = mat(k, 668) - dti(k) - mat(k, 695) = mat(k, 695) - dti(k) - mat(k, 715) = mat(k, 715) - dti(k) - mat(k, 753) = mat(k, 753) - dti(k) - mat(k, 769) = mat(k, 769) - dti(k) - mat(k, 783) = mat(k, 783) - dti(k) - mat(k, 800) = mat(k, 800) - dti(k) - mat(k, 820) = mat(k, 820) - dti(k) - mat(k, 856) = mat(k, 856) - dti(k) - mat(k, 886) = mat(k, 886) - dti(k) - mat(k, 943) = mat(k, 943) - dti(k) - mat(k, 966) = mat(k, 966) - dti(k) - mat(k,1011) = mat(k,1011) - dti(k) - mat(k,1048) = mat(k,1048) - dti(k) - mat(k,1086) = mat(k,1086) - dti(k) - mat(k,1172) = mat(k,1172) - dti(k) - mat(k,1217) = mat(k,1217) - dti(k) - mat(k,1243) = mat(k,1243) - dti(k) - mat(k,1286) = mat(k,1286) - dti(k) - mat(k,1307) = mat(k,1307) - dti(k) - end do - end subroutine nlnmat_finit - subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: dti(veclen) - real(r8), intent(in) :: lmat(veclen,nzcnt) - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) - call nlnmat01( avec_len, mat, y, rxt ) - call nlnmat02( avec_len, mat, y, rxt ) - call nlnmat03( avec_len, mat, y, rxt ) - call nlnmat04( avec_len, mat, y, rxt ) - call nlnmat05( avec_len, mat, y, rxt ) - call nlnmat06( avec_len, mat, y, rxt ) - call nlnmat07( avec_len, mat, y, rxt ) - call nlnmat_finit( avec_len, mat, lmat, dti ) - end subroutine nlnmat - end module mo_nln_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_prod_loss.F90 deleted file mode 100644 index 66d3674640..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_prod_loss.F90 +++ /dev/null @@ -1,778 +0,0 @@ - module mo_prod_loss - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : veclen - private - public :: exp_prod_loss - public :: imp_prod_loss - contains - subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & - rxt, het_rates, chnkpnts ) - use chem_mods, only : gas_pcnst,rxntot,clscnt1 - implicit none -!-------------------------------------------------------------------- -! ... dummy args -!-------------------------------------------------------------------- - integer, intent(in) :: ofl, ofu, chnkpnts - real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: & - prod, & - loss - real(r8), intent(in) :: y(chnkpnts,gas_pcnst) - real(r8), intent(in) :: rxt(chnkpnts,rxntot) - real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst) -!-------------------------------------------------------------------- -! ... local variables -!-------------------------------------------------------------------- - integer :: k -!-------------------------------------------------------------------- -! ... loss and production for Explicit method -!-------------------------------------------------------------------- - do k = ofl,ofu - loss(k,1) = ( + het_rates(k,124))* y(k,124) - prod(k,1) = 0._r8 - loss(k,2) = ( + het_rates(k,125))* y(k,125) - prod(k,2) = 0._r8 - end do - end subroutine exp_prod_loss - subroutine imp_prod_loss( avec_len, prod, loss, y, & - rxt, het_rates ) - use chem_mods, only : gas_pcnst,rxntot,clscnt4 - implicit none -!-------------------------------------------------------------------- -! ... dummy args -!-------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), dimension(veclen,clscnt4), intent(out) :: & - prod, & - loss - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) -!-------------------------------------------------------------------- -! ... local variables -!-------------------------------------------------------------------- - integer :: k -!-------------------------------------------------------------------- -! ... loss and production for Implicit method -!-------------------------------------------------------------------- - do k = 1,avec_len - loss(k,1) = ( + het_rates(k,1))* y(k,1) - prod(k,1) = 0._r8 - loss(k,2) = ( + het_rates(k,2))* y(k,2) - prod(k,2) = 0._r8 - loss(k,35) = (rxt(k,293)* y(k,137) + het_rates(k,3))* y(k,3) - prod(k,35) = 0._r8 - loss(k,126) = (rxt(k,173)* y(k,25) +rxt(k,175)* y(k,98) +rxt(k,174)* y(k,132) & - + het_rates(k,4))* y(k,4) - prod(k,126) = (rxt(k,47) +2.000_r8*rxt(k,176)*y(k,6) +rxt(k,177)*y(k,41) + & - rxt(k,178)*y(k,41) +rxt(k,181)*y(k,88) +rxt(k,184)*y(k,97) + & - rxt(k,185)*y(k,137) +rxt(k,325)*y(k,110))*y(k,6) & - + (rxt(k,163)*y(k,17) +rxt(k,189)*y(k,18) + & - 3.000_r8*rxt(k,190)*y(k,37) +2.000_r8*rxt(k,191)*y(k,56) + & - rxt(k,192)*y(k,59) +2.000_r8*rxt(k,206)*y(k,24) +rxt(k,207)*y(k,26)) & - *y(k,136) + (rxt(k,187)*y(k,59) +2.000_r8*rxt(k,195)*y(k,24) + & - rxt(k,197)*y(k,26) +3.000_r8*rxt(k,202)*y(k,37))*y(k,137) & - + (2.000_r8*rxt(k,194)*y(k,24) +rxt(k,196)*y(k,26) + & - 3.000_r8*rxt(k,201)*y(k,37))*y(k,38) + (rxt(k,69) + & - rxt(k,186)*y(k,97))*y(k,59) +rxt(k,46)*y(k,5) +rxt(k,49)*y(k,7) & - +rxt(k,51)*y(k,17) +rxt(k,52)*y(k,18) +2.000_r8*rxt(k,58)*y(k,24) & - +rxt(k,59)*y(k,26) +3.000_r8*rxt(k,62)*y(k,37) +2.000_r8*rxt(k,68) & - *y(k,56) +rxt(k,75)*y(k,67) - loss(k,56) = ( + rxt(k,46) + het_rates(k,5))* y(k,5) - prod(k,56) = (rxt(k,351)*y(k,67) +rxt(k,356)*y(k,67))*y(k,63) & - +rxt(k,179)*y(k,41)*y(k,6) - loss(k,131) = (2._r8*rxt(k,176)* y(k,6) + (rxt(k,177) +rxt(k,178) + & - rxt(k,179))* y(k,41) +rxt(k,181)* y(k,88) +rxt(k,182)* y(k,89) & - +rxt(k,184)* y(k,97) +rxt(k,325)* y(k,110) +rxt(k,180)* y(k,132) & - +rxt(k,185)* y(k,137) + rxt(k,47) + het_rates(k,6))* y(k,6) - prod(k,131) = (rxt(k,48) +rxt(k,183)*y(k,97))*y(k,7) +rxt(k,175)*y(k,98) & - *y(k,4) +rxt(k,193)*y(k,136)*y(k,59) +rxt(k,188)*y(k,97)*y(k,67) - loss(k,83) = (rxt(k,183)* y(k,97) + rxt(k,48) + rxt(k,49) + rxt(k,345) & - + rxt(k,348) + rxt(k,353) + het_rates(k,7))* y(k,7) - prod(k,83) =rxt(k,182)*y(k,89)*y(k,6) - loss(k,3) = ( + het_rates(k,8))* y(k,8) - prod(k,3) = 0._r8 - loss(k,76) = (rxt(k,225)* y(k,38) +rxt(k,226)* y(k,98) +rxt(k,250)* y(k,137) & - + het_rates(k,9))* y(k,9) - prod(k,76) = 0._r8 - loss(k,57) = (rxt(k,231)* y(k,137) + het_rates(k,10))* y(k,10) - prod(k,57) = (.400_r8*rxt(k,227)*y(k,126) +.200_r8*rxt(k,228)*y(k,129)) & - *y(k,126) - loss(k,64) = (rxt(k,232)* y(k,137) + rxt(k,19) + het_rates(k,11))* y(k,11) - prod(k,64) =rxt(k,229)*y(k,132)*y(k,126) - loss(k,61) = (rxt(k,233)* y(k,38) +rxt(k,234)* y(k,137) + het_rates(k,12)) & - * y(k,12) - prod(k,61) = 0._r8 - loss(k,112) = (rxt(k,253)* y(k,90) +rxt(k,254)* y(k,98) +rxt(k,271)* y(k,137) & - + het_rates(k,13))* y(k,13) - prod(k,112) =.130_r8*rxt(k,304)*y(k,98)*y(k,71) +.700_r8*rxt(k,39)*y(k,77) - loss(k,71) = (rxt(k,258)* y(k,137) + rxt(k,20) + het_rates(k,14))* y(k,14) - prod(k,71) =rxt(k,256)*y(k,132)*y(k,127) - loss(k,45) = (rxt(k,259)* y(k,137) + het_rates(k,15))* y(k,15) - prod(k,45) = 0._r8 - loss(k,38) = (rxt(k,162)* y(k,136) + rxt(k,50) + het_rates(k,16))* y(k,16) - prod(k,38) = 0._r8 - loss(k,46) = (rxt(k,163)* y(k,136) + rxt(k,51) + het_rates(k,17))* y(k,17) - prod(k,46) = 0._r8 - loss(k,39) = (rxt(k,189)* y(k,136) + rxt(k,52) + het_rates(k,18))* y(k,18) - prod(k,39) = 0._r8 - loss(k,40) = (rxt(k,164)* y(k,136) + rxt(k,53) + het_rates(k,19))* y(k,19) - prod(k,40) = 0._r8 - loss(k,41) = (rxt(k,165)* y(k,136) + rxt(k,54) + het_rates(k,20))* y(k,20) - prod(k,41) = 0._r8 - loss(k,42) = (rxt(k,166)* y(k,136) + rxt(k,55) + het_rates(k,21))* y(k,21) - prod(k,42) = 0._r8 - loss(k,43) = (rxt(k,167)* y(k,136) + rxt(k,56) + het_rates(k,22))* y(k,22) - prod(k,43) = 0._r8 - loss(k,44) = (rxt(k,168)* y(k,136) + rxt(k,57) + het_rates(k,23))* y(k,23) - prod(k,44) = 0._r8 - loss(k,77) = (rxt(k,194)* y(k,38) +rxt(k,206)* y(k,136) +rxt(k,195)* y(k,137) & - + rxt(k,58) + het_rates(k,24))* y(k,24) - prod(k,77) = 0._r8 - loss(k,125) = (rxt(k,173)* y(k,4) +rxt(k,137)* y(k,38) +rxt(k,211)* y(k,90) & - +rxt(k,212)* y(k,97) +rxt(k,213)* y(k,137) + rxt(k,21) + rxt(k,22) & - + het_rates(k,25))* y(k,25) - prod(k,125) = (rxt(k,144)*y(k,41) +2.000_r8*rxt(k,214)*y(k,129) + & - rxt(k,215)*y(k,129) +rxt(k,217)*y(k,88) + & - .700_r8*rxt(k,228)*y(k,126) +rxt(k,238)*y(k,128) + & - rxt(k,255)*y(k,127) +.800_r8*rxt(k,267)*y(k,139) + & - .880_r8*rxt(k,274)*y(k,134) +2.000_r8*rxt(k,283)*y(k,135) + & - 1.200_r8*rxt(k,300)*y(k,133) +.800_r8*rxt(k,310)*y(k,140))*y(k,129) & - + (.500_r8*rxt(k,244)*y(k,131) +rxt(k,265)*y(k,138) + & - rxt(k,269)*y(k,139) +.250_r8*rxt(k,277)*y(k,134) + & - rxt(k,286)*y(k,135) +.072_r8*rxt(k,297)*y(k,72) + & - .550_r8*rxt(k,302)*y(k,133) +.250_r8*rxt(k,312)*y(k,140))*y(k,88) & - + (rxt(k,218)*y(k,34) +.300_r8*rxt(k,219)*y(k,35) + & - .500_r8*rxt(k,242)*y(k,33) +.800_r8*rxt(k,247)*y(k,52) + & - rxt(k,249)*y(k,103) +.500_r8*rxt(k,288)*y(k,76))*y(k,137) & - + (rxt(k,226)*y(k,9) +.500_r8*rxt(k,254)*y(k,13) + & - .120_r8*rxt(k,279)*y(k,74) +.600_r8*rxt(k,289)*y(k,77) + & - .910_r8*rxt(k,304)*y(k,71))*y(k,98) + (.250_r8*rxt(k,276)*y(k,134) + & - rxt(k,287)*y(k,135) +.072_r8*rxt(k,298)*y(k,72) + & - .600_r8*rxt(k,303)*y(k,133))*y(k,90) + (.250_r8*rxt(k,273)*y(k,134) + & - rxt(k,282)*y(k,135) +.600_r8*rxt(k,299)*y(k,133) + & - .250_r8*rxt(k,309)*y(k,140))*y(k,128) + (.180_r8*rxt(k,28) + & - rxt(k,222)*y(k,136) +rxt(k,223)*y(k,136))*y(k,36) & - + (.150_r8*rxt(k,268)*y(k,139) +.450_r8*rxt(k,284)*y(k,135) + & - .206_r8*rxt(k,296)*y(k,72))*y(k,132) +rxt(k,27)*y(k,35) +rxt(k,32) & - *y(k,52) +rxt(k,34)*y(k,69) +.690_r8*rxt(k,35)*y(k,73) & - +1.340_r8*rxt(k,36)*y(k,74) +rxt(k,40)*y(k,91) +rxt(k,41)*y(k,102) & - +rxt(k,43)*y(k,106) +rxt(k,44)*y(k,107) +2.000_r8*rxt(k,245) & - *y(k,130) +2.000_r8*rxt(k,285)*y(k,135)*y(k,135) - loss(k,86) = (rxt(k,196)* y(k,38) +rxt(k,207)* y(k,136) +rxt(k,197)* y(k,137) & - + rxt(k,59) + het_rates(k,26))* y(k,26) - prod(k,86) = 0._r8 - loss(k,47) = (rxt(k,198)* y(k,137) + rxt(k,60) + het_rates(k,27))* y(k,27) - prod(k,47) = 0._r8 - loss(k,113) = (rxt(k,235)* y(k,90) +rxt(k,236)* y(k,137) + rxt(k,23) & - + het_rates(k,28))* y(k,28) - prod(k,113) = (rxt(k,230)*y(k,126) +.270_r8*rxt(k,257)*y(k,127) + & - rxt(k,265)*y(k,138))*y(k,88) + (rxt(k,19) + & - .500_r8*rxt(k,232)*y(k,137))*y(k,11) + (.500_r8*rxt(k,254)*y(k,13) + & - .100_r8*rxt(k,289)*y(k,77))*y(k,98) + (1.600_r8*rxt(k,227)*y(k,126) + & - .800_r8*rxt(k,228)*y(k,129))*y(k,126) +rxt(k,231)*y(k,137)*y(k,10) & - +rxt(k,43)*y(k,106) - loss(k,68) = (rxt(k,199)* y(k,38) +rxt(k,200)* y(k,137) + rxt(k,61) & - + het_rates(k,29))* y(k,29) - prod(k,68) = 0._r8 - loss(k,95) = (rxt(k,272)* y(k,137) + rxt(k,24) + het_rates(k,30))* y(k,30) - prod(k,95) = (.820_r8*rxt(k,255)*y(k,129) +.820_r8*rxt(k,257)*y(k,88)) & - *y(k,127) +.820_r8*rxt(k,20)*y(k,14) +.100_r8*rxt(k,317)*y(k,137) & - *y(k,122) - loss(k,116) = (rxt(k,260)* y(k,90) +rxt(k,261)* y(k,137) + rxt(k,25) & - + het_rates(k,31))* y(k,31) - prod(k,116) = (.250_r8*rxt(k,273)*y(k,128) +.240_r8*rxt(k,274)*y(k,129) + & - .250_r8*rxt(k,276)*y(k,90) +.250_r8*rxt(k,277)*y(k,88))*y(k,134) & - + (.250_r8*rxt(k,309)*y(k,128) +.100_r8*rxt(k,310)*y(k,129) + & - .250_r8*rxt(k,312)*y(k,88) +.250_r8*rxt(k,313)*y(k,90))*y(k,140) & - + (.880_r8*rxt(k,279)*y(k,74) +.500_r8*rxt(k,289)*y(k,77))*y(k,98) & - + (rxt(k,262)*y(k,69) +rxt(k,263)*y(k,91))*y(k,137) & - +.020_r8*rxt(k,302)*y(k,133)*y(k,88) +.500_r8*rxt(k,267)*y(k,139) & - *y(k,129) - loss(k,89) = (rxt(k,241)* y(k,137) + het_rates(k,32))* y(k,32) - prod(k,89) = (.100_r8*rxt(k,238)*y(k,129) +.150_r8*rxt(k,239)*y(k,132)) & - *y(k,128) +.120_r8*rxt(k,254)*y(k,98)*y(k,13) & - +.150_r8*rxt(k,284)*y(k,135)*y(k,132) - loss(k,87) = (rxt(k,242)* y(k,137) + rxt(k,26) + het_rates(k,33))* y(k,33) - prod(k,87) = (.400_r8*rxt(k,239)*y(k,128) +.400_r8*rxt(k,284)*y(k,135)) & - *y(k,132) - loss(k,80) = (rxt(k,218)* y(k,137) + het_rates(k,34))* y(k,34) - prod(k,80) = (rxt(k,215)*y(k,129) +.300_r8*rxt(k,228)*y(k,126) + & - .500_r8*rxt(k,267)*y(k,139) +.250_r8*rxt(k,274)*y(k,134) + & - .250_r8*rxt(k,300)*y(k,133) +.300_r8*rxt(k,310)*y(k,140))*y(k,129) - loss(k,73) = (rxt(k,219)* y(k,137) + rxt(k,27) + het_rates(k,35))* y(k,35) - prod(k,73) =rxt(k,216)*y(k,132)*y(k,129) - loss(k,107) = (rxt(k,138)* y(k,38) + (rxt(k,221) +rxt(k,222) +rxt(k,223)) & - * y(k,136) +rxt(k,220)* y(k,137) + rxt(k,28) + rxt(k,29) & - + het_rates(k,36))* y(k,36) - prod(k,107) =.100_r8*rxt(k,254)*y(k,98)*y(k,13) - loss(k,70) = (rxt(k,201)* y(k,38) +rxt(k,190)* y(k,136) +rxt(k,202)* y(k,137) & - + rxt(k,62) + het_rates(k,37))* y(k,37) - prod(k,70) = 0._r8 - loss(k,128) = (rxt(k,233)* y(k,12) +rxt(k,194)* y(k,24) +rxt(k,137)* y(k,25) & - +rxt(k,196)* y(k,26) +rxt(k,199)* y(k,29) +rxt(k,138)* y(k,36) & - +rxt(k,201)* y(k,37) +rxt(k,150)* y(k,42) +rxt(k,139)* y(k,55) & - +rxt(k,140)* y(k,57) +rxt(k,159)* y(k,68) +rxt(k,143)* y(k,98) & - + (rxt(k,141) +rxt(k,142))* y(k,132) + het_rates(k,38))* y(k,38) - prod(k,128) = (4.000_r8*rxt(k,162)*y(k,16) +rxt(k,163)*y(k,17) + & - 3.000_r8*rxt(k,164)*y(k,19) +3.000_r8*rxt(k,165)*y(k,20) + & - 2.000_r8*rxt(k,166)*y(k,21) +rxt(k,167)*y(k,22) + & - 2.000_r8*rxt(k,168)*y(k,23) +rxt(k,169)*y(k,63) + & - 2.000_r8*rxt(k,208)*y(k,60) +rxt(k,209)*y(k,61) +rxt(k,210)*y(k,62)) & - *y(k,136) + (rxt(k,65) +rxt(k,144)*y(k,129) + & - 2.000_r8*rxt(k,145)*y(k,41) +rxt(k,147)*y(k,41) +rxt(k,149)*y(k,88) + & - rxt(k,154)*y(k,97) +rxt(k,155)*y(k,137) +rxt(k,178)*y(k,6) + & - rxt(k,326)*y(k,110))*y(k,41) + (rxt(k,158)*y(k,63) + & - 3.000_r8*rxt(k,198)*y(k,27) +rxt(k,200)*y(k,29) + & - 2.000_r8*rxt(k,203)*y(k,60) +rxt(k,204)*y(k,61) +rxt(k,205)*y(k,62)) & - *y(k,137) + (rxt(k,73) +rxt(k,157)*y(k,97))*y(k,63) +rxt(k,46)*y(k,5) & - +4.000_r8*rxt(k,50)*y(k,16) +rxt(k,51)*y(k,17) +3.000_r8*rxt(k,53) & - *y(k,19) +3.000_r8*rxt(k,54)*y(k,20) +2.000_r8*rxt(k,55)*y(k,21) & - +rxt(k,56)*y(k,22) +2.000_r8*rxt(k,57)*y(k,23) +3.000_r8*rxt(k,60) & - *y(k,27) +rxt(k,61)*y(k,29) +2.000_r8*rxt(k,63)*y(k,39) & - +2.000_r8*rxt(k,64)*y(k,40) +rxt(k,67)*y(k,42) +rxt(k,70)*y(k,60) & - +rxt(k,71)*y(k,61) +rxt(k,72)*y(k,62) +rxt(k,76)*y(k,68) - loss(k,50) = ( + rxt(k,63) + het_rates(k,39))* y(k,39) - prod(k,50) = (rxt(k,344)*y(k,68) +rxt(k,349)*y(k,42) +rxt(k,350)*y(k,68) + & - rxt(k,354)*y(k,42) +rxt(k,355)*y(k,68) +rxt(k,359)*y(k,42))*y(k,63) & - +rxt(k,150)*y(k,42)*y(k,38) +rxt(k,146)*y(k,41)*y(k,41) - loss(k,34) = ( + rxt(k,64) + rxt(k,172) + het_rates(k,40))* y(k,40) - prod(k,34) =rxt(k,171)*y(k,41)*y(k,41) - loss(k,137) = ((rxt(k,177) +rxt(k,178) +rxt(k,179))* y(k,6) & - + 2._r8*(rxt(k,145) +rxt(k,146) +rxt(k,147) +rxt(k,171))* y(k,41) & - +rxt(k,149)* y(k,88) +rxt(k,151)* y(k,89) +rxt(k,154)* y(k,97) & - +rxt(k,326)* y(k,110) +rxt(k,144)* y(k,129) +rxt(k,148)* y(k,132) & - + (rxt(k,155) +rxt(k,156))* y(k,137) + rxt(k,65) + het_rates(k,41)) & - * y(k,41) - prod(k,137) = (rxt(k,142)*y(k,132) +rxt(k,143)*y(k,98) +rxt(k,159)*y(k,68)) & - *y(k,38) + (rxt(k,66) +rxt(k,152)*y(k,97))*y(k,42) & - + (rxt(k,160)*y(k,97) +rxt(k,161)*y(k,137))*y(k,68) + (rxt(k,77) + & - rxt(k,331)*y(k,110))*y(k,100) +2.000_r8*rxt(k,172)*y(k,40) & - +rxt(k,170)*y(k,136)*y(k,63) - loss(k,104) = (rxt(k,150)* y(k,38) + (rxt(k,349) +rxt(k,354) +rxt(k,359)) & - * y(k,63) +rxt(k,152)* y(k,97) +rxt(k,153)* y(k,137) + rxt(k,66) & - + rxt(k,67) + rxt(k,347) + rxt(k,352) + rxt(k,358) & - + het_rates(k,42))* y(k,42) - prod(k,104) =rxt(k,151)*y(k,89)*y(k,41) - loss(k,4) = ( + het_rates(k,43))* y(k,43) - prod(k,4) = 0._r8 - loss(k,110) = (rxt(k,224)* y(k,137) + het_rates(k,44))* y(k,44) - prod(k,110) = (rxt(k,21) +rxt(k,22) +rxt(k,137)*y(k,38) +rxt(k,173)*y(k,4) + & - rxt(k,211)*y(k,90) +rxt(k,212)*y(k,97) +rxt(k,213)*y(k,137))*y(k,25) & - + (.630_r8*rxt(k,226)*y(k,9) +.560_r8*rxt(k,254)*y(k,13) + & - .650_r8*rxt(k,279)*y(k,74) +.560_r8*rxt(k,289)*y(k,77) + & - .620_r8*rxt(k,304)*y(k,71))*y(k,98) + (.220_r8*rxt(k,273)*y(k,128) + & - .110_r8*rxt(k,274)*y(k,129) +.220_r8*rxt(k,276)*y(k,90) + & - .220_r8*rxt(k,277)*y(k,88))*y(k,134) + (.250_r8*rxt(k,309)*y(k,128) + & - .200_r8*rxt(k,310)*y(k,129) +.250_r8*rxt(k,312)*y(k,88) + & - .500_r8*rxt(k,313)*y(k,90))*y(k,140) + (rxt(k,25) + & - rxt(k,260)*y(k,90) +rxt(k,261)*y(k,137))*y(k,31) + (rxt(k,80) + & - rxt(k,320)*y(k,97) +rxt(k,321)*y(k,137))*y(k,101) & - + (2.000_r8*rxt(k,33) +rxt(k,248)*y(k,137))*y(k,53) +rxt(k,23) & - *y(k,28) +rxt(k,199)*y(k,38)*y(k,29) +.380_r8*rxt(k,28)*y(k,36) & - +rxt(k,30)*y(k,45) +rxt(k,32)*y(k,52) +1.340_r8*rxt(k,37)*y(k,74) & - +.700_r8*rxt(k,39)*y(k,77) +rxt(k,41)*y(k,102) - loss(k,90) = ( + rxt(k,30) + het_rates(k,45))* y(k,45) - prod(k,90) = (rxt(k,224)*y(k,44) +rxt(k,241)*y(k,32) + & - .500_r8*rxt(k,242)*y(k,33) +.800_r8*rxt(k,247)*y(k,52) + & - rxt(k,248)*y(k,53) +.500_r8*rxt(k,288)*y(k,76))*y(k,137) & - + (2.000_r8*rxt(k,237)*y(k,128) +.900_r8*rxt(k,238)*y(k,129) + & - rxt(k,240)*y(k,88) +2.000_r8*rxt(k,282)*y(k,135) + & - rxt(k,309)*y(k,140))*y(k,128) + (rxt(k,283)*y(k,129) + & - .450_r8*rxt(k,284)*y(k,132) +2.000_r8*rxt(k,285)*y(k,135))*y(k,135) & - + (.200_r8*rxt(k,254)*y(k,13) +.100_r8*rxt(k,289)*y(k,77))*y(k,98) & - +rxt(k,26)*y(k,33) +.440_r8*rxt(k,28)*y(k,36) +.400_r8*rxt(k,42) & - *y(k,103) - loss(k,62) = (rxt(k,318)* y(k,90) + (rxt(k,319) +rxt(k,333))* y(k,137) & - + het_rates(k,46))* y(k,46) - prod(k,62) = 0._r8 - loss(k,5) = ( + het_rates(k,47))* y(k,47) - prod(k,5) = 0._r8 - loss(k,6) = ( + het_rates(k,48))* y(k,48) - prod(k,6) = 0._r8 - loss(k,7) = ( + het_rates(k,49))* y(k,49) - prod(k,7) = 0._r8 - loss(k,8) = ( + rxt(k,360) + het_rates(k,50))* y(k,50) - prod(k,8) = 0._r8 - loss(k,48) = ( + rxt(k,31) + het_rates(k,51))* y(k,51) - prod(k,48) =rxt(k,243)*y(k,132)*y(k,131) - loss(k,105) = (rxt(k,247)* y(k,137) + rxt(k,32) + het_rates(k,52))* y(k,52) - prod(k,105) = (.530_r8*rxt(k,273)*y(k,128) +.260_r8*rxt(k,274)*y(k,129) + & - .530_r8*rxt(k,276)*y(k,90) +.530_r8*rxt(k,277)*y(k,88))*y(k,134) & - + (.250_r8*rxt(k,309)*y(k,128) +.100_r8*rxt(k,310)*y(k,129) + & - .250_r8*rxt(k,312)*y(k,88) +.250_r8*rxt(k,313)*y(k,90))*y(k,140) & - +.020_r8*rxt(k,302)*y(k,133)*y(k,88) +rxt(k,246)*y(k,130) - loss(k,92) = (rxt(k,248)* y(k,137) + rxt(k,33) + het_rates(k,53))* y(k,53) - prod(k,92) = (.250_r8*rxt(k,309)*y(k,128) +.100_r8*rxt(k,310)*y(k,129) + & - .250_r8*rxt(k,312)*y(k,88) +.250_r8*rxt(k,313)*y(k,90))*y(k,140) & - +.200_r8*rxt(k,247)*y(k,137)*y(k,52) +.020_r8*rxt(k,302)*y(k,133) & - *y(k,88) - loss(k,124) = (rxt(k,103)* y(k,98) + (rxt(k,97) +rxt(k,98) +rxt(k,99)) & - * y(k,132) + rxt(k,100) + het_rates(k,54))* y(k,54) - prod(k,124) = (rxt(k,104)*y(k,55) +rxt(k,107)*y(k,97) +rxt(k,125)*y(k,78) + & - rxt(k,213)*y(k,25) +rxt(k,321)*y(k,101) +rxt(k,327)*y(k,108) + & - rxt(k,332)*y(k,110))*y(k,137) + (rxt(k,86)*y(k,55) + & - rxt(k,170)*y(k,63) +rxt(k,193)*y(k,59) +rxt(k,222)*y(k,36))*y(k,136) & - + (.330_r8*rxt(k,28) +rxt(k,29))*y(k,36) + (rxt(k,95)*y(k,97) + & - rxt(k,139)*y(k,38))*y(k,55) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,141) & - +2.000_r8*rxt(k,21)*y(k,25) +rxt(k,27)*y(k,35) +rxt(k,69)*y(k,59) & - +rxt(k,73)*y(k,63) +rxt(k,74)*y(k,64) - loss(k,111) = (rxt(k,139)* y(k,38) +rxt(k,95)* y(k,97) +rxt(k,86)* y(k,136) & - +rxt(k,104)* y(k,137) + het_rates(k,55))* y(k,55) - prod(k,111) = (1.440_r8*rxt(k,28) +rxt(k,223)*y(k,136))*y(k,36) +rxt(k,22) & - *y(k,25) +rxt(k,97)*y(k,132)*y(k,54) +rxt(k,1)*y(k,141) - loss(k,36) = (rxt(k,191)* y(k,136) + rxt(k,68) + het_rates(k,56))* y(k,56) - prod(k,36) = 0._r8 - loss(k,84) = (rxt(k,140)* y(k,38) +rxt(k,96)* y(k,97) +rxt(k,105)* y(k,137) & - + rxt(k,4) + het_rates(k,57))* y(k,57) - prod(k,84) =rxt(k,111)*y(k,132)*y(k,132) +rxt(k,110)*y(k,137)*y(k,137) - loss(k,49) = ( + rxt(k,79) + het_rates(k,58))* y(k,58) - prod(k,49) =rxt(k,334)*y(k,141)*y(k,112) - loss(k,100) = (rxt(k,186)* y(k,97) + (rxt(k,192) +rxt(k,193))* y(k,136) & - +rxt(k,187)* y(k,137) + rxt(k,69) + het_rates(k,59))* y(k,59) - prod(k,100) = (rxt(k,173)*y(k,25) +rxt(k,174)*y(k,132))*y(k,4) - loss(k,51) = (rxt(k,208)* y(k,136) +rxt(k,203)* y(k,137) + rxt(k,70) & - + het_rates(k,60))* y(k,60) - prod(k,51) = 0._r8 - loss(k,52) = (rxt(k,209)* y(k,136) +rxt(k,204)* y(k,137) + rxt(k,71) & - + het_rates(k,61))* y(k,61) - prod(k,52) = 0._r8 - loss(k,55) = (rxt(k,210)* y(k,136) +rxt(k,205)* y(k,137) + rxt(k,72) & - + het_rates(k,62))* y(k,62) - prod(k,55) = 0._r8 - loss(k,127) = ((rxt(k,349) +rxt(k,354) +rxt(k,359))* y(k,42) + (rxt(k,351) + & - rxt(k,356))* y(k,67) + (rxt(k,344) +rxt(k,350) +rxt(k,355))* y(k,68) & - +rxt(k,157)* y(k,97) + (rxt(k,169) +rxt(k,170))* y(k,136) & - +rxt(k,158)* y(k,137) + rxt(k,73) + het_rates(k,63))* y(k,63) - prod(k,127) = (rxt(k,137)*y(k,25) +rxt(k,138)*y(k,36) +rxt(k,139)*y(k,55) + & - rxt(k,140)*y(k,57) +rxt(k,141)*y(k,132) +rxt(k,159)*y(k,68) + & - rxt(k,194)*y(k,24) +rxt(k,196)*y(k,26) +2.000_r8*rxt(k,199)*y(k,29) + & - rxt(k,201)*y(k,37) +rxt(k,233)*y(k,12))*y(k,38) +rxt(k,156)*y(k,137) & - *y(k,41) - loss(k,9) = ( + rxt(k,74) + het_rates(k,64))* y(k,64) - prod(k,9) = 0._r8 - loss(k,101) = (rxt(k,134)* y(k,137) + rxt(k,9) + het_rates(k,65))* y(k,65) - prod(k,101) = (rxt(k,347) +rxt(k,352) +rxt(k,358) +rxt(k,349)*y(k,63) + & - rxt(k,354)*y(k,63) +rxt(k,359)*y(k,63))*y(k,42) + (rxt(k,340) + & - rxt(k,211)*y(k,25) +rxt(k,235)*y(k,28) +rxt(k,260)*y(k,31) + & - rxt(k,318)*y(k,46))*y(k,90) + (2.000_r8*rxt(k,337) + & - 2.000_r8*rxt(k,343) +2.000_r8*rxt(k,346) +2.000_r8*rxt(k,357)) & - *y(k,80) + (rxt(k,345) +rxt(k,348) +rxt(k,353))*y(k,7) & - + (.500_r8*rxt(k,339) +rxt(k,133)*y(k,137))*y(k,89) +rxt(k,341) & - *y(k,102) - loss(k,69) = (rxt(k,112)* y(k,137) + rxt(k,10) + rxt(k,11) + rxt(k,135) & - + het_rates(k,66))* y(k,66) - prod(k,69) =rxt(k,131)*y(k,132)*y(k,89) - loss(k,94) = ((rxt(k,351) +rxt(k,356))* y(k,63) +rxt(k,188)* y(k,97) & - + rxt(k,75) + het_rates(k,67))* y(k,67) - prod(k,94) = (rxt(k,345) +rxt(k,348) +rxt(k,353))*y(k,7) +rxt(k,180)*y(k,132) & - *y(k,6) - loss(k,99) = (rxt(k,159)* y(k,38) + (rxt(k,344) +rxt(k,350) +rxt(k,355)) & - * y(k,63) +rxt(k,160)* y(k,97) +rxt(k,161)* y(k,137) + rxt(k,76) & - + het_rates(k,68))* y(k,68) - prod(k,99) = (rxt(k,347) +rxt(k,352) +rxt(k,358) +rxt(k,153)*y(k,137)) & - *y(k,42) +rxt(k,148)*y(k,132)*y(k,41) - loss(k,109) = (rxt(k,262)* y(k,137) + rxt(k,34) + het_rates(k,69))* y(k,69) - prod(k,109) = (.220_r8*rxt(k,273)*y(k,128) +.230_r8*rxt(k,274)*y(k,129) + & - .220_r8*rxt(k,276)*y(k,90) +.220_r8*rxt(k,277)*y(k,88))*y(k,134) & - + (.250_r8*rxt(k,309)*y(k,128) +.100_r8*rxt(k,310)*y(k,129) + & - .250_r8*rxt(k,312)*y(k,88) +.250_r8*rxt(k,313)*y(k,90))*y(k,140) & - + (.500_r8*rxt(k,266)*y(k,106) +.500_r8*rxt(k,288)*y(k,76))*y(k,137) & - +.020_r8*rxt(k,302)*y(k,133)*y(k,88) +.200_r8*rxt(k,267)*y(k,139) & - *y(k,129) - loss(k,66) = (rxt(k,294)* y(k,137) + het_rates(k,70))* y(k,70) - prod(k,66) = (.400_r8*rxt(k,299)*y(k,128) +.300_r8*rxt(k,300)*y(k,129) + & - .330_r8*rxt(k,302)*y(k,88) +.400_r8*rxt(k,303)*y(k,90))*y(k,133) & - + (rxt(k,307)*y(k,90) +rxt(k,308)*y(k,137))*y(k,102) - loss(k,103) = (rxt(k,295)* y(k,90) +rxt(k,304)* y(k,98) +rxt(k,305)* y(k,137) & - + het_rates(k,71))* y(k,71) - prod(k,103) = 0._r8 - loss(k,97) = (rxt(k,297)* y(k,88) +rxt(k,298)* y(k,90) +rxt(k,296)* y(k,132) & - + het_rates(k,72))* y(k,72) - prod(k,97) =rxt(k,295)*y(k,90)*y(k,71) - loss(k,79) = (rxt(k,306)* y(k,137) + rxt(k,35) + het_rates(k,73))* y(k,73) - prod(k,79) =rxt(k,301)*y(k,133)*y(k,132) - loss(k,114) = (rxt(k,279)* y(k,98) +rxt(k,280)* y(k,137) + rxt(k,36) & - + rxt(k,37) + het_rates(k,74))* y(k,74) - prod(k,114) = (.250_r8*rxt(k,299)*y(k,128) +.190_r8*rxt(k,300)*y(k,129) + & - .230_r8*rxt(k,302)*y(k,88) +.250_r8*rxt(k,303)*y(k,90))*y(k,133) & - + (.167_r8*rxt(k,296)*y(k,132) +.167_r8*rxt(k,297)*y(k,88) + & - .167_r8*rxt(k,298)*y(k,90))*y(k,72) + (.300_r8*rxt(k,304)*y(k,71) + & - 1.122_r8*rxt(k,316)*y(k,122))*y(k,98) +.288_r8*rxt(k,35)*y(k,73) - loss(k,63) = (rxt(k,281)* y(k,137) + het_rates(k,75))* y(k,75) - prod(k,63) =rxt(k,275)*y(k,134)*y(k,132) - loss(k,85) = (rxt(k,288)* y(k,137) + rxt(k,38) + rxt(k,292) & - + het_rates(k,76))* y(k,76) - prod(k,85) =rxt(k,291)*y(k,135)*y(k,89) - loss(k,122) = (rxt(k,289)* y(k,98) +rxt(k,290)* y(k,137) + rxt(k,39) & - + het_rates(k,77))* y(k,77) - prod(k,122) = (.350_r8*rxt(k,299)*y(k,128) +.260_r8*rxt(k,300)*y(k,129) + & - .320_r8*rxt(k,302)*y(k,88) +.350_r8*rxt(k,303)*y(k,90))*y(k,133) & - + (.039_r8*rxt(k,296)*y(k,132) +.039_r8*rxt(k,297)*y(k,88) + & - .039_r8*rxt(k,298)*y(k,90))*y(k,72) + (.200_r8*rxt(k,304)*y(k,71) + & - .442_r8*rxt(k,316)*y(k,122))*y(k,98) +.402_r8*rxt(k,35)*y(k,73) - loss(k,75) = (rxt(k,113)* y(k,88) + (rxt(k,114) +rxt(k,115) +rxt(k,116)) & - * y(k,89) +rxt(k,125)* y(k,137) + rxt(k,117) + het_rates(k,78)) & - * y(k,78) - prod(k,75) =rxt(k,15)*y(k,88) - loss(k,53) = ((rxt(k,129) +rxt(k,130))* y(k,136) + rxt(k,12) & - + het_rates(k,79))* y(k,79) - prod(k,53) =rxt(k,114)*y(k,89)*y(k,78) - loss(k,60) = ( + rxt(k,13) + rxt(k,14) + rxt(k,136) + rxt(k,337) + rxt(k,343) & - + rxt(k,346) + rxt(k,357) + het_rates(k,80))* y(k,80) - prod(k,60) =rxt(k,132)*y(k,90)*y(k,89) - loss(k,10) = ( + het_rates(k,81))* y(k,81) - prod(k,10) = 0._r8 - loss(k,11) = ( + het_rates(k,82))* y(k,82) - prod(k,11) = 0._r8 - loss(k,12) = ( + het_rates(k,83))* y(k,83) - prod(k,12) = 0._r8 - loss(k,37) = (rxt(k,335)* y(k,137) + het_rates(k,84))* y(k,84) - prod(k,37) = 0._r8 - loss(k,13) = ( + rxt(k,338) + het_rates(k,85))* y(k,85) - prod(k,13) = 0._r8 - loss(k,14) = ( + rxt(k,362) + het_rates(k,86))* y(k,86) - prod(k,14) = 0._r8 - loss(k,15) = ( + rxt(k,361) + het_rates(k,87))* y(k,87) - prod(k,15) = 0._r8 - loss(k,138) = (rxt(k,181)* y(k,6) +rxt(k,149)* y(k,41) +rxt(k,297)* y(k,72) & - +rxt(k,113)* y(k,78) +rxt(k,122)* y(k,90) +rxt(k,128)* y(k,97) & - +rxt(k,127)* y(k,98) +rxt(k,230)* y(k,126) +rxt(k,257)* y(k,127) & - +rxt(k,240)* y(k,128) +rxt(k,217)* y(k,129) +rxt(k,244)* y(k,131) & - +rxt(k,126)* y(k,132) +rxt(k,302)* y(k,133) + (rxt(k,277) + & - rxt(k,278))* y(k,134) +rxt(k,286)* y(k,135) +rxt(k,265)* y(k,138) & - +rxt(k,269)* y(k,139) +rxt(k,312)* y(k,140) + rxt(k,15) & - + het_rates(k,88))* y(k,88) - prod(k,138) = (rxt(k,16) +.500_r8*rxt(k,339) +2.000_r8*rxt(k,115)*y(k,78) + & - rxt(k,118)*y(k,97) +rxt(k,328)*y(k,110))*y(k,89) + (rxt(k,117) + & - rxt(k,125)*y(k,137))*y(k,78) +2.000_r8*rxt(k,129)*y(k,136)*y(k,79) & - +rxt(k,14)*y(k,80) +rxt(k,17)*y(k,90) - loss(k,133) = (rxt(k,182)* y(k,6) +rxt(k,151)* y(k,41) + (rxt(k,114) + & - rxt(k,115) +rxt(k,116))* y(k,78) +rxt(k,132)* y(k,90) + (rxt(k,118) + & - rxt(k,120))* y(k,97) +rxt(k,119)* y(k,98) +rxt(k,328)* y(k,110) & - +rxt(k,251)* y(k,128) +rxt(k,131)* y(k,132) +rxt(k,291)* y(k,135) & - +rxt(k,133)* y(k,137) + rxt(k,16) + rxt(k,339) + het_rates(k,89)) & - * y(k,89) - prod(k,133) = (2.000_r8*rxt(k,122)*y(k,90) +rxt(k,126)*y(k,132) + & - rxt(k,127)*y(k,98) +rxt(k,128)*y(k,97) +rxt(k,149)*y(k,41) + & - rxt(k,181)*y(k,6) +rxt(k,217)*y(k,129) +rxt(k,230)*y(k,126) + & - rxt(k,240)*y(k,128) +rxt(k,244)*y(k,131) +rxt(k,257)*y(k,127) + & - rxt(k,265)*y(k,138) +rxt(k,269)*y(k,139) +rxt(k,277)*y(k,134) + & - rxt(k,286)*y(k,135) +1.206_r8*rxt(k,297)*y(k,72) + & - .920_r8*rxt(k,302)*y(k,133) +rxt(k,312)*y(k,140))*y(k,88) & - + (rxt(k,18) +rxt(k,121)*y(k,132) +rxt(k,123)*y(k,97) + & - rxt(k,124)*y(k,137) +rxt(k,276)*y(k,134) +rxt(k,287)*y(k,135) + & - 1.206_r8*rxt(k,298)*y(k,72) +rxt(k,303)*y(k,133) + & - rxt(k,307)*y(k,102) +rxt(k,313)*y(k,140) +rxt(k,315)*y(k,122)) & - *y(k,90) + (rxt(k,11) +rxt(k,135) +rxt(k,112)*y(k,137))*y(k,66) & - + (rxt(k,38) +rxt(k,292))*y(k,76) + (rxt(k,13) +rxt(k,136))*y(k,80) & - + (rxt(k,40) +rxt(k,263)*y(k,137))*y(k,91) + (rxt(k,41) + & - .400_r8*rxt(k,308)*y(k,137))*y(k,102) + (.600_r8*rxt(k,42) + & - rxt(k,252))*y(k,103) +rxt(k,48)*y(k,7) +rxt(k,66)*y(k,42) +rxt(k,9) & - *y(k,65) +.206_r8*rxt(k,296)*y(k,132)*y(k,72) - loss(k,136) = (rxt(k,253)* y(k,13) +rxt(k,211)* y(k,25) +rxt(k,235)* y(k,28) & - +rxt(k,260)* y(k,31) +rxt(k,318)* y(k,46) +rxt(k,295)* y(k,71) & - +rxt(k,298)* y(k,72) +rxt(k,122)* y(k,88) +rxt(k,132)* y(k,89) & - +rxt(k,123)* y(k,97) +rxt(k,307)* y(k,102) +rxt(k,315)* y(k,122) & - +rxt(k,121)* y(k,132) +rxt(k,303)* y(k,133) +rxt(k,276)* y(k,134) & - +rxt(k,287)* y(k,135) +rxt(k,124)* y(k,137) +rxt(k,313)* y(k,140) & - + rxt(k,17) + rxt(k,18) + rxt(k,340) + het_rates(k,90))* y(k,90) - prod(k,136) = (rxt(k,67) +rxt(k,150)*y(k,38) +rxt(k,152)*y(k,97) + & - rxt(k,153)*y(k,137))*y(k,42) + (rxt(k,13) +rxt(k,14) +rxt(k,136)) & - *y(k,80) + (rxt(k,134)*y(k,65) +rxt(k,249)*y(k,103) + & - .500_r8*rxt(k,288)*y(k,76))*y(k,137) + (rxt(k,49) + & - rxt(k,183)*y(k,97))*y(k,7) + (rxt(k,119)*y(k,98) +rxt(k,120)*y(k,97)) & - *y(k,89) +rxt(k,10)*y(k,66) +.400_r8*rxt(k,42)*y(k,103) - loss(k,72) = (rxt(k,263)* y(k,137) + rxt(k,40) + het_rates(k,91))* y(k,91) - prod(k,72) =rxt(k,253)*y(k,90)*y(k,13) - loss(k,16) = ( + het_rates(k,92))* y(k,92) - prod(k,16) = 0._r8 - loss(k,17) = ( + het_rates(k,93))* y(k,93) - prod(k,17) = 0._r8 - loss(k,18) = ( + het_rates(k,94))* y(k,94) - prod(k,18) = 0._r8 - loss(k,19) = ( + het_rates(k,95))* y(k,95) - prod(k,19) = 0._r8 - loss(k,20) = ( + het_rates(k,96))* y(k,96) - prod(k,20) = 0._r8 - loss(k,129) = (rxt(k,184)* y(k,6) +rxt(k,183)* y(k,7) +rxt(k,212)* y(k,25) & - +rxt(k,154)* y(k,41) +rxt(k,152)* y(k,42) +rxt(k,95)* y(k,55) & - +rxt(k,96)* y(k,57) +rxt(k,186)* y(k,59) +rxt(k,157)* y(k,63) & - +rxt(k,188)* y(k,67) +rxt(k,160)* y(k,68) +rxt(k,128)* y(k,88) & - + (rxt(k,118) +rxt(k,120))* y(k,89) +rxt(k,123)* y(k,90) & - + 2._r8*rxt(k,93)* y(k,97) +rxt(k,92)* y(k,98) +rxt(k,320)* y(k,101) & - +rxt(k,101)* y(k,132) +rxt(k,107)* y(k,137) + rxt(k,94) & - + het_rates(k,97))* y(k,97) - prod(k,129) = (rxt(k,117) +rxt(k,113)*y(k,88) +rxt(k,114)*y(k,89))*y(k,78) & - + (rxt(k,8) +2.000_r8*rxt(k,91)*y(k,136) + & - .765_r8*rxt(k,316)*y(k,122))*y(k,98) + (rxt(k,81) +rxt(k,329)) & - *y(k,110) + (rxt(k,88) +rxt(k,89))*y(k,136) +rxt(k,47)*y(k,6) & - +.180_r8*rxt(k,28)*y(k,36) +rxt(k,65)*y(k,41) +rxt(k,30)*y(k,45) & - +rxt(k,99)*y(k,132)*y(k,54) +rxt(k,14)*y(k,80) +rxt(k,15)*y(k,88) & - +rxt(k,16)*y(k,89) +rxt(k,18)*y(k,90) +rxt(k,77)*y(k,100) & - +rxt(k,322)*y(k,108) +rxt(k,82)*y(k,111) +rxt(k,83)*y(k,112) & - +rxt(k,109)*y(k,137)*y(k,137) +rxt(k,3)*y(k,141) - loss(k,132) = (rxt(k,175)* y(k,4) +rxt(k,226)* y(k,9) +rxt(k,254)* y(k,13) & - +rxt(k,143)* y(k,38) +rxt(k,103)* y(k,54) +rxt(k,304)* y(k,71) & - +rxt(k,279)* y(k,74) +rxt(k,289)* y(k,77) +rxt(k,127)* y(k,88) & - +rxt(k,119)* y(k,89) +rxt(k,92)* y(k,97) +rxt(k,324)* y(k,108) & - +rxt(k,330)* y(k,110) +rxt(k,316)* y(k,122) +rxt(k,102)* y(k,132) & - + (rxt(k,90) +rxt(k,91))* y(k,136) +rxt(k,108)* y(k,137) + rxt(k,7) & - + rxt(k,8) + het_rates(k,98))* y(k,98) - prod(k,132) = (.150_r8*rxt(k,239)*y(k,128) +.150_r8*rxt(k,284)*y(k,135)) & - *y(k,132) +rxt(k,94)*y(k,97) - loss(k,21) = ( + het_rates(k,99))* y(k,99) - prod(k,21) = 0._r8 - loss(k,65) = (rxt(k,331)* y(k,110) + rxt(k,77) + het_rates(k,100))* y(k,100) - prod(k,65) = (rxt(k,147)*y(k,41) +rxt(k,177)*y(k,6))*y(k,41) - loss(k,67) = (rxt(k,320)* y(k,97) +rxt(k,321)* y(k,137) + rxt(k,80) & - + het_rates(k,101))* y(k,101) - prod(k,67) = 0._r8 - loss(k,106) = (rxt(k,307)* y(k,90) +rxt(k,308)* y(k,137) + rxt(k,41) & - + rxt(k,341) + het_rates(k,102))* y(k,102) - prod(k,106) = (.794_r8*rxt(k,296)*y(k,132) +.794_r8*rxt(k,297)*y(k,88) + & - .794_r8*rxt(k,298)*y(k,90))*y(k,72) + (.800_r8*rxt(k,278)*y(k,134) + & - .080_r8*rxt(k,302)*y(k,133))*y(k,88) - loss(k,81) = (rxt(k,249)* y(k,137) + rxt(k,42) + rxt(k,252) & - + het_rates(k,103))* y(k,103) - prod(k,81) =rxt(k,251)*y(k,128)*y(k,89) - loss(k,22) = ( + het_rates(k,104))* y(k,104) - prod(k,22) = 0._r8 - loss(k,23) = ( + het_rates(k,105))* y(k,105) - prod(k,23) = 0._r8 - loss(k,82) = (rxt(k,266)* y(k,137) + rxt(k,43) + het_rates(k,106))* y(k,106) - prod(k,82) =rxt(k,264)*y(k,138)*y(k,132) - loss(k,74) = (rxt(k,270)* y(k,137) + rxt(k,44) + het_rates(k,107))* y(k,107) - prod(k,74) =.850_r8*rxt(k,268)*y(k,139)*y(k,132) - loss(k,78) = (rxt(k,324)* y(k,98) +rxt(k,327)* y(k,137) + rxt(k,322) & - + het_rates(k,108))* y(k,108) - prod(k,78) =rxt(k,80)*y(k,101) +rxt(k,81)*y(k,110) - loss(k,24) = ( + rxt(k,78) + het_rates(k,109))* y(k,109) - prod(k,24) = 0._r8 - loss(k,117) = (rxt(k,325)* y(k,6) +rxt(k,326)* y(k,41) +rxt(k,328)* y(k,89) & - +rxt(k,330)* y(k,98) +rxt(k,331)* y(k,100) +rxt(k,332)* y(k,137) & - + rxt(k,81) + rxt(k,329) + het_rates(k,110))* y(k,110) - prod(k,117) = (rxt(k,322) +rxt(k,324)*y(k,98) +rxt(k,327)*y(k,137))*y(k,108) & - +rxt(k,320)*y(k,101)*y(k,97) +rxt(k,82)*y(k,111) - loss(k,102) = (rxt(k,323)* y(k,137) + rxt(k,82) + het_rates(k,111))* y(k,111) - prod(k,102) = (rxt(k,329) +rxt(k,325)*y(k,6) +rxt(k,326)*y(k,41) + & - rxt(k,328)*y(k,89) +rxt(k,330)*y(k,98) +rxt(k,331)*y(k,100) + & - rxt(k,332)*y(k,137))*y(k,110) + (rxt(k,318)*y(k,90) + & - rxt(k,319)*y(k,137) +.500_r8*rxt(k,333)*y(k,137))*y(k,46) & - +rxt(k,321)*y(k,137)*y(k,101) +rxt(k,83)*y(k,112) - loss(k,58) = (rxt(k,334)* y(k,141) + rxt(k,83) + het_rates(k,112))* y(k,112) - prod(k,58) =rxt(k,79)*y(k,58) +rxt(k,323)*y(k,137)*y(k,111) - loss(k,25) = ( + het_rates(k,113))* y(k,113) - prod(k,25) = 0._r8 - loss(k,26) = ( + het_rates(k,114))* y(k,114) - prod(k,26) = 0._r8 - loss(k,27) = ( + het_rates(k,115))* y(k,115) - prod(k,27) = 0._r8 - loss(k,28) = ( + het_rates(k,116))* y(k,116) - prod(k,28) = 0._r8 - loss(k,29) = ( + rxt(k,84) + het_rates(k,117))* y(k,117) - prod(k,29) = 0._r8 - loss(k,30) = ( + rxt(k,85) + het_rates(k,118))* y(k,118) - prod(k,30) = 0._r8 - loss(k,31) = ( + rxt(k,342) + het_rates(k,119))* y(k,119) - prod(k,31) = 0._r8 - loss(k,32) = ( + het_rates(k,120))* y(k,120) - prod(k,32) =rxt(k,342)*y(k,119) - loss(k,33) = ( + rxt(k,363) + het_rates(k,121))* y(k,121) - prod(k,33) = 0._r8 - loss(k,88) = (rxt(k,315)* y(k,90) +rxt(k,316)* y(k,98) +rxt(k,317)* y(k,137) & - + het_rates(k,122))* y(k,122) - prod(k,88) = 0._r8 - loss(k,54) = (rxt(k,314)* y(k,137) + rxt(k,45) + het_rates(k,123))* y(k,123) - prod(k,54) =rxt(k,311)*y(k,140)*y(k,132) - loss(k,96) = (rxt(k,230)* y(k,88) + 2._r8*rxt(k,227)* y(k,126) +rxt(k,228) & - * y(k,129) +rxt(k,229)* y(k,132) + het_rates(k,126))* y(k,126) - prod(k,96) = (rxt(k,233)*y(k,38) +rxt(k,234)*y(k,137))*y(k,12) & - +.500_r8*rxt(k,232)*y(k,137)*y(k,11) - loss(k,98) = (rxt(k,257)* y(k,88) +rxt(k,255)* y(k,129) +rxt(k,256)* y(k,132) & - + het_rates(k,127))* y(k,127) - prod(k,98) = (rxt(k,258)*y(k,14) +rxt(k,259)*y(k,15) + & - 1.670_r8*rxt(k,293)*y(k,3))*y(k,137) - loss(k,121) = (rxt(k,240)* y(k,88) +rxt(k,251)* y(k,89) + 2._r8*rxt(k,237) & - * y(k,128) +rxt(k,238)* y(k,129) +rxt(k,239)* y(k,132) +rxt(k,299) & - * y(k,133) +rxt(k,273)* y(k,134) +rxt(k,309)* y(k,140) & - + het_rates(k,128))* y(k,128) - prod(k,121) = (rxt(k,283)*y(k,129) +.450_r8*rxt(k,284)*y(k,132) + & - 2.000_r8*rxt(k,285)*y(k,135) +rxt(k,286)*y(k,88) +rxt(k,287)*y(k,90)) & - *y(k,135) + (.530_r8*rxt(k,273)*y(k,128) + & - .260_r8*rxt(k,274)*y(k,129) +.530_r8*rxt(k,276)*y(k,90) + & - .530_r8*rxt(k,277)*y(k,88))*y(k,134) + (rxt(k,25) + & - rxt(k,260)*y(k,90) +rxt(k,261)*y(k,137))*y(k,31) & - + (.100_r8*rxt(k,279)*y(k,74) +.280_r8*rxt(k,289)*y(k,77) + & - .080_r8*rxt(k,304)*y(k,71))*y(k,98) + (.300_r8*rxt(k,267)*y(k,129) + & - .150_r8*rxt(k,268)*y(k,132) +rxt(k,269)*y(k,88))*y(k,139) & - + (rxt(k,235)*y(k,90) +rxt(k,236)*y(k,137))*y(k,28) & - + (.600_r8*rxt(k,42) +rxt(k,252))*y(k,103) +rxt(k,24)*y(k,30) & - +.500_r8*rxt(k,242)*y(k,137)*y(k,33) +rxt(k,34)*y(k,69) & - +1.340_r8*rxt(k,36)*y(k,74) +.300_r8*rxt(k,39)*y(k,77) +rxt(k,40) & - *y(k,91) +rxt(k,44)*y(k,107) - loss(k,123) = (rxt(k,144)* y(k,41) +rxt(k,217)* y(k,88) +rxt(k,228)* y(k,126) & - +rxt(k,255)* y(k,127) +rxt(k,238)* y(k,128) + 2._r8*(rxt(k,214) + & - rxt(k,215))* y(k,129) +rxt(k,216)* y(k,132) +rxt(k,300)* y(k,133) & - +rxt(k,274)* y(k,134) +rxt(k,283)* y(k,135) +rxt(k,267)* y(k,139) & - +rxt(k,310)* y(k,140) + het_rates(k,129))* y(k,129) - prod(k,123) = (2.000_r8*rxt(k,237)*y(k,128) +.900_r8*rxt(k,238)*y(k,129) + & - .450_r8*rxt(k,239)*y(k,132) +rxt(k,240)*y(k,88) + & - rxt(k,273)*y(k,134) +rxt(k,282)*y(k,135) +rxt(k,299)*y(k,133) + & - rxt(k,309)*y(k,140))*y(k,128) + (rxt(k,29) +rxt(k,138)*y(k,38) + & - rxt(k,220)*y(k,137) +rxt(k,221)*y(k,136))*y(k,36) & - + (.280_r8*rxt(k,254)*y(k,13) +.050_r8*rxt(k,304)*y(k,71))*y(k,98) & - + (.700_r8*rxt(k,219)*y(k,35) +rxt(k,241)*y(k,32))*y(k,137) & - +rxt(k,59)*y(k,26) +rxt(k,23)*y(k,28) +rxt(k,61)*y(k,29) +rxt(k,24) & - *y(k,30) +rxt(k,26)*y(k,33) +.300_r8*rxt(k,39)*y(k,77) & - +.400_r8*rxt(k,42)*y(k,103) - loss(k,59) = ( + rxt(k,245) + rxt(k,246) + het_rates(k,130))* y(k,130) - prod(k,59) =rxt(k,31)*y(k,51) +.750_r8*rxt(k,244)*y(k,131)*y(k,88) - loss(k,91) = (rxt(k,244)* y(k,88) +rxt(k,243)* y(k,132) + het_rates(k,131)) & - * y(k,131) - prod(k,91) =rxt(k,250)*y(k,137)*y(k,9) - loss(k,130) = (rxt(k,174)* y(k,4) +rxt(k,180)* y(k,6) + (rxt(k,141) + & - rxt(k,142))* y(k,38) +rxt(k,148)* y(k,41) + (rxt(k,97) +rxt(k,98) + & - rxt(k,99))* y(k,54) +rxt(k,296)* y(k,72) +rxt(k,126)* y(k,88) & - +rxt(k,131)* y(k,89) +rxt(k,121)* y(k,90) +rxt(k,101)* y(k,97) & - +rxt(k,102)* y(k,98) +rxt(k,229)* y(k,126) +rxt(k,256)* y(k,127) & - +rxt(k,239)* y(k,128) +rxt(k,216)* y(k,129) +rxt(k,243)* y(k,131) & - + 2._r8*rxt(k,111)* y(k,132) +rxt(k,301)* y(k,133) +rxt(k,275) & - * y(k,134) +rxt(k,284)* y(k,135) +rxt(k,106)* y(k,137) +rxt(k,264) & - * y(k,138) +rxt(k,268)* y(k,139) +rxt(k,311)* y(k,140) + rxt(k,336) & - + het_rates(k,132))* y(k,132) - prod(k,130) = (rxt(k,105)*y(k,57) +rxt(k,108)*y(k,98) +rxt(k,124)*y(k,90) + & - rxt(k,155)*y(k,41) +rxt(k,185)*y(k,6) +rxt(k,197)*y(k,26) + & - rxt(k,200)*y(k,29) +rxt(k,218)*y(k,34) +rxt(k,224)*y(k,44) + & - rxt(k,231)*y(k,10) +rxt(k,247)*y(k,52) +rxt(k,248)*y(k,53) + & - rxt(k,262)*y(k,69) +.200_r8*rxt(k,281)*y(k,75) + & - .500_r8*rxt(k,288)*y(k,76) +rxt(k,308)*y(k,102) + & - rxt(k,323)*y(k,111) +.500_r8*rxt(k,333)*y(k,46))*y(k,137) & - + (rxt(k,144)*y(k,41) +2.000_r8*rxt(k,214)*y(k,129) + & - rxt(k,217)*y(k,88) +rxt(k,228)*y(k,126) + & - .900_r8*rxt(k,238)*y(k,128) +rxt(k,255)*y(k,127) + & - .300_r8*rxt(k,267)*y(k,139) +.730_r8*rxt(k,274)*y(k,134) + & - rxt(k,283)*y(k,135) +rxt(k,300)*y(k,133) + & - .800_r8*rxt(k,310)*y(k,140))*y(k,129) + (rxt(k,230)*y(k,126) + & - .250_r8*rxt(k,244)*y(k,131) +rxt(k,257)*y(k,127) + & - rxt(k,265)*y(k,138) +.470_r8*rxt(k,277)*y(k,134) + & - .794_r8*rxt(k,297)*y(k,72) +.920_r8*rxt(k,302)*y(k,133) + & - rxt(k,312)*y(k,140))*y(k,88) + (rxt(k,211)*y(k,25) + & - .470_r8*rxt(k,276)*y(k,134) +.794_r8*rxt(k,298)*y(k,72) + & - rxt(k,303)*y(k,133) +rxt(k,307)*y(k,102) +rxt(k,313)*y(k,140)) & - *y(k,90) + (.130_r8*rxt(k,226)*y(k,9) +.280_r8*rxt(k,254)*y(k,13) + & - .140_r8*rxt(k,279)*y(k,74) +.280_r8*rxt(k,289)*y(k,77) + & - .370_r8*rxt(k,304)*y(k,71))*y(k,98) + (rxt(k,137)*y(k,25) + & - rxt(k,140)*y(k,57) +rxt(k,196)*y(k,26) +rxt(k,199)*y(k,29))*y(k,38) & - + (.470_r8*rxt(k,273)*y(k,134) +rxt(k,299)*y(k,133) + & - rxt(k,309)*y(k,140))*y(k,128) + (rxt(k,173)*y(k,4) + & - rxt(k,212)*y(k,97))*y(k,25) + (rxt(k,11) +rxt(k,135))*y(k,66) & - + (1.340_r8*rxt(k,36) +.660_r8*rxt(k,37))*y(k,74) + (rxt(k,245) + & - rxt(k,246))*y(k,130) +rxt(k,19)*y(k,11) +rxt(k,20)*y(k,14) +rxt(k,23) & - *y(k,28) +rxt(k,25)*y(k,31) +rxt(k,222)*y(k,136)*y(k,36) & - +2.000_r8*rxt(k,32)*y(k,52) +2.000_r8*rxt(k,33)*y(k,53) +rxt(k,100) & - *y(k,54) +rxt(k,96)*y(k,97)*y(k,57) +rxt(k,34)*y(k,69) +rxt(k,35) & - *y(k,73) +rxt(k,41)*y(k,102) +rxt(k,43)*y(k,106) & - +1.200_r8*rxt(k,227)*y(k,126)*y(k,126) - loss(k,118) = (rxt(k,302)* y(k,88) +rxt(k,303)* y(k,90) +rxt(k,299)* y(k,128) & - +rxt(k,300)* y(k,129) +rxt(k,301)* y(k,132) + het_rates(k,133)) & - * y(k,133) - prod(k,118) = (rxt(k,305)*y(k,71) +.200_r8*rxt(k,306)*y(k,73) + & - 1.640_r8*rxt(k,317)*y(k,122))*y(k,137) +1.700_r8*rxt(k,315)*y(k,122) & - *y(k,90) - loss(k,119) = ((rxt(k,277) +rxt(k,278))* y(k,88) +rxt(k,276)* y(k,90) & - +rxt(k,273)* y(k,128) +rxt(k,274)* y(k,129) +rxt(k,275)* y(k,132) & - + het_rates(k,134))* y(k,134) - prod(k,119) = (.500_r8*rxt(k,280)*y(k,74) +.200_r8*rxt(k,281)*y(k,75) + & - rxt(k,290)*y(k,77))*y(k,137) - loss(k,120) = (rxt(k,286)* y(k,88) +rxt(k,291)* y(k,89) +rxt(k,287)* y(k,90) & - +rxt(k,282)* y(k,128) +rxt(k,283)* y(k,129) +rxt(k,284)* y(k,132) & - + 2._r8*rxt(k,285)* y(k,135) + het_rates(k,135))* y(k,135) - prod(k,120) = (.660_r8*rxt(k,36) +.500_r8*rxt(k,280)*y(k,137))*y(k,74) & - + (rxt(k,38) +rxt(k,292))*y(k,76) +.500_r8*rxt(k,281)*y(k,137) & - *y(k,75) - loss(k,134) = (rxt(k,162)* y(k,16) +rxt(k,163)* y(k,17) +rxt(k,189)* y(k,18) & - +rxt(k,164)* y(k,19) +rxt(k,165)* y(k,20) +rxt(k,166)* y(k,21) & - +rxt(k,167)* y(k,22) +rxt(k,168)* y(k,23) +rxt(k,206)* y(k,24) & - +rxt(k,207)* y(k,26) + (rxt(k,221) +rxt(k,222) +rxt(k,223))* y(k,36) & - +rxt(k,190)* y(k,37) +rxt(k,86)* y(k,55) +rxt(k,191)* y(k,56) & - + (rxt(k,192) +rxt(k,193))* y(k,59) +rxt(k,208)* y(k,60) +rxt(k,209) & - * y(k,61) +rxt(k,210)* y(k,62) + (rxt(k,169) +rxt(k,170))* y(k,63) & - + (rxt(k,129) +rxt(k,130))* y(k,79) + (rxt(k,90) +rxt(k,91)) & - * y(k,98) +rxt(k,87)* y(k,141) + rxt(k,88) + rxt(k,89) & - + het_rates(k,136))* y(k,136) - prod(k,134) =rxt(k,12)*y(k,79) +rxt(k,7)*y(k,98) +rxt(k,1)*y(k,141) - loss(k,135) = (rxt(k,293)* y(k,3) +rxt(k,185)* y(k,6) +rxt(k,250)* y(k,9) & - +rxt(k,231)* y(k,10) +rxt(k,232)* y(k,11) +rxt(k,234)* y(k,12) & - +rxt(k,271)* y(k,13) +rxt(k,258)* y(k,14) +rxt(k,259)* y(k,15) & - +rxt(k,195)* y(k,24) +rxt(k,213)* y(k,25) +rxt(k,197)* y(k,26) & - +rxt(k,198)* y(k,27) +rxt(k,236)* y(k,28) +rxt(k,200)* y(k,29) & - +rxt(k,272)* y(k,30) +rxt(k,261)* y(k,31) +rxt(k,241)* y(k,32) & - +rxt(k,242)* y(k,33) +rxt(k,218)* y(k,34) +rxt(k,219)* y(k,35) & - +rxt(k,220)* y(k,36) +rxt(k,202)* y(k,37) + (rxt(k,155) +rxt(k,156)) & - * y(k,41) +rxt(k,153)* y(k,42) +rxt(k,224)* y(k,44) + (rxt(k,319) + & - rxt(k,333))* y(k,46) +rxt(k,247)* y(k,52) +rxt(k,248)* y(k,53) & - +rxt(k,104)* y(k,55) +rxt(k,105)* y(k,57) +rxt(k,187)* y(k,59) & - +rxt(k,203)* y(k,60) +rxt(k,204)* y(k,61) +rxt(k,205)* y(k,62) & - +rxt(k,158)* y(k,63) +rxt(k,134)* y(k,65) +rxt(k,112)* y(k,66) & - +rxt(k,161)* y(k,68) +rxt(k,262)* y(k,69) +rxt(k,294)* y(k,70) & - +rxt(k,305)* y(k,71) +rxt(k,306)* y(k,73) +rxt(k,280)* y(k,74) & - +rxt(k,281)* y(k,75) +rxt(k,288)* y(k,76) +rxt(k,290)* y(k,77) & - +rxt(k,125)* y(k,78) +rxt(k,335)* y(k,84) +rxt(k,133)* y(k,89) & - +rxt(k,124)* y(k,90) +rxt(k,263)* y(k,91) +rxt(k,107)* y(k,97) & - +rxt(k,108)* y(k,98) +rxt(k,321)* y(k,101) +rxt(k,308)* y(k,102) & - +rxt(k,249)* y(k,103) +rxt(k,266)* y(k,106) +rxt(k,270)* y(k,107) & - +rxt(k,327)* y(k,108) +rxt(k,332)* y(k,110) +rxt(k,323)* y(k,111) & - +rxt(k,317)* y(k,122) +rxt(k,314)* y(k,123) +rxt(k,106)* y(k,132) & - + 2._r8*(rxt(k,109) +rxt(k,110))* y(k,137) + het_rates(k,137)) & - * y(k,137) - prod(k,135) = (2.000_r8*rxt(k,98)*y(k,54) +rxt(k,101)*y(k,97) + & - rxt(k,102)*y(k,98) +rxt(k,121)*y(k,90) +rxt(k,126)*y(k,88) + & - rxt(k,142)*y(k,38) +.450_r8*rxt(k,239)*y(k,128) + & - .150_r8*rxt(k,268)*y(k,139) +.450_r8*rxt(k,284)*y(k,135) + & - .206_r8*rxt(k,296)*y(k,72))*y(k,132) + (rxt(k,95)*y(k,55) + & - rxt(k,96)*y(k,57) +rxt(k,157)*y(k,63) +rxt(k,160)*y(k,68) + & - rxt(k,186)*y(k,59) +rxt(k,188)*y(k,67) +rxt(k,212)*y(k,25))*y(k,97) & - + (rxt(k,103)*y(k,54) +.130_r8*rxt(k,226)*y(k,9) + & - .360_r8*rxt(k,254)*y(k,13) +.240_r8*rxt(k,279)*y(k,74) + & - .360_r8*rxt(k,289)*y(k,77) +.320_r8*rxt(k,304)*y(k,71) + & - 1.156_r8*rxt(k,316)*y(k,122))*y(k,98) + (rxt(k,86)*y(k,55) + & - 2.000_r8*rxt(k,87)*y(k,141) +rxt(k,169)*y(k,63) +rxt(k,192)*y(k,59) + & - rxt(k,221)*y(k,36))*y(k,136) + (.300_r8*rxt(k,219)*y(k,35) + & - .500_r8*rxt(k,232)*y(k,11) +.500_r8*rxt(k,266)*y(k,106) + & - .100_r8*rxt(k,281)*y(k,75) +.500_r8*rxt(k,314)*y(k,123))*y(k,137) & - +rxt(k,19)*y(k,11) +rxt(k,20)*y(k,14) +rxt(k,26)*y(k,33) +rxt(k,27) & - *y(k,35) +.330_r8*rxt(k,28)*y(k,36) +rxt(k,31)*y(k,51) & - +2.000_r8*rxt(k,4)*y(k,57) +rxt(k,9)*y(k,65) +rxt(k,10)*y(k,66) & - +rxt(k,75)*y(k,67) +rxt(k,76)*y(k,68) +.500_r8*rxt(k,339)*y(k,89) & - +rxt(k,43)*y(k,106) +rxt(k,44)*y(k,107) +rxt(k,45)*y(k,123) & - +rxt(k,2)*y(k,141) - loss(k,93) = (rxt(k,265)* y(k,88) +rxt(k,264)* y(k,132) + het_rates(k,138)) & - * y(k,138) - prod(k,93) = (.500_r8*rxt(k,266)*y(k,106) +rxt(k,271)*y(k,13))*y(k,137) - loss(k,108) = (rxt(k,269)* y(k,88) +rxt(k,267)* y(k,129) +rxt(k,268) & - * y(k,132) + het_rates(k,139))* y(k,139) - prod(k,108) = (rxt(k,270)*y(k,107) +rxt(k,272)*y(k,30))*y(k,137) - loss(k,115) = (rxt(k,312)* y(k,88) +rxt(k,313)* y(k,90) +rxt(k,309)* y(k,128) & - +rxt(k,310)* y(k,129) +rxt(k,311)* y(k,132) + het_rates(k,140)) & - * y(k,140) - prod(k,115) = (rxt(k,294)*y(k,70) +.800_r8*rxt(k,306)*y(k,73) + & - .500_r8*rxt(k,314)*y(k,123))*y(k,137) - loss(k,139) = (rxt(k,334)* y(k,112) +rxt(k,87)* y(k,136) + rxt(k,1) & - + rxt(k,2) + rxt(k,3) + het_rates(k,141))* y(k,141) - prod(k,139) = (rxt(k,104)*y(k,55) +rxt(k,105)*y(k,57) +rxt(k,106)*y(k,132) + & - rxt(k,109)*y(k,137) +rxt(k,112)*y(k,66) +rxt(k,134)*y(k,65) + & - rxt(k,158)*y(k,63) +rxt(k,161)*y(k,68) +rxt(k,187)*y(k,59) + & - rxt(k,195)*y(k,24) +rxt(k,197)*y(k,26) +rxt(k,198)*y(k,27) + & - rxt(k,200)*y(k,29) +rxt(k,205)*y(k,62) +rxt(k,213)*y(k,25) + & - rxt(k,219)*y(k,35) +rxt(k,220)*y(k,36) +rxt(k,234)*y(k,12) + & - rxt(k,236)*y(k,28) +rxt(k,241)*y(k,32) +rxt(k,242)*y(k,33) + & - rxt(k,258)*y(k,14) +rxt(k,259)*y(k,15) +rxt(k,261)*y(k,31) + & - rxt(k,266)*y(k,106) +rxt(k,270)*y(k,107) +rxt(k,272)*y(k,30) + & - .500_r8*rxt(k,280)*y(k,74) +rxt(k,335)*y(k,84))*y(k,137) & - + (rxt(k,344)*y(k,68) +rxt(k,350)*y(k,68) +rxt(k,351)*y(k,67) + & - rxt(k,355)*y(k,68) +rxt(k,356)*y(k,67))*y(k,63) + (rxt(k,336) + & - rxt(k,99)*y(k,54))*y(k,132) +.050_r8*rxt(k,28)*y(k,36) +rxt(k,79) & - *y(k,58) - end do - end subroutine imp_prod_loss - end module mo_prod_loss diff --git a/src/chemistry/pp_trop_strat_mam5_ts4/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_ts4/mo_setrxt.F90 deleted file mode 100644 index 781067fcc2..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_ts4/mo_setrxt.F90 +++ /dev/null @@ -1,454 +0,0 @@ - - module mo_setrxt - - use shr_kind_mod, only : r8 => shr_kind_r8 - - private - public :: setrxt - public :: setrxt_hrates - - contains - - subroutine setrxt( rate, temp, m, ncol ) - - use ppgrid, only : pcols, pver - - - use chem_mods, only : rxntot - use mo_jpl, only : jpl - - implicit none - -!------------------------------------------------------- -! ... dummy arguments -!------------------------------------------------------- - integer, intent(in) :: ncol - real(r8), intent(in) :: temp(pcols,pver) - real(r8), intent(in) :: m(ncol*pver) - real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) - -!------------------------------------------------------- -! ... local variables -!------------------------------------------------------- - integer :: n - integer :: offset - real(r8) :: itemp(ncol*pver) - real(r8) :: exp_fac(ncol*pver) - real(r8) :: ko(ncol*pver) - real(r8) :: kinf(ncol*pver) - - rate(:,86) = 1.2e-10_r8 - rate(:,90) = 1.2e-10_r8 - rate(:,91) = 1.2e-10_r8 - rate(:,97) = 6.9e-12_r8 - rate(:,98) = 7.2e-11_r8 - rate(:,99) = 1.6e-12_r8 - rate(:,105) = 1.8e-12_r8 - rate(:,109) = 1.8e-12_r8 - rate(:,121) = 3.5e-12_r8 - rate(:,123) = 1.3e-11_r8 - rate(:,124) = 2.2e-11_r8 - rate(:,125) = 5e-11_r8 - rate(:,160) = 1.7e-13_r8 - rate(:,162) = 2.607e-10_r8 - rate(:,163) = 9.75e-11_r8 - rate(:,164) = 2.07e-10_r8 - rate(:,165) = 2.088e-10_r8 - rate(:,166) = 1.17e-10_r8 - rate(:,167) = 4.644e-11_r8 - rate(:,168) = 1.204e-10_r8 - rate(:,169) = 9.9e-11_r8 - rate(:,170) = 3.3e-12_r8 - rate(:,189) = 4.5e-11_r8 - rate(:,190) = 4.62e-10_r8 - rate(:,191) = 1.2e-10_r8 - rate(:,192) = 9e-11_r8 - rate(:,193) = 3e-11_r8 - rate(:,206) = 2.57e-10_r8 - rate(:,207) = 1.8e-10_r8 - rate(:,208) = 1.794e-10_r8 - rate(:,209) = 1.3e-10_r8 - rate(:,210) = 7.65e-11_r8 - rate(:,221) = 1.31e-10_r8 - rate(:,222) = 3.5e-11_r8 - rate(:,223) = 9e-12_r8 - rate(:,227) = 6.8e-14_r8 - rate(:,228) = 2e-13_r8 - rate(:,242) = 1e-12_r8 - rate(:,246) = 1e-14_r8 - rate(:,247) = 1e-11_r8 - rate(:,248) = 1.15e-11_r8 - rate(:,249) = 4e-14_r8 - rate(:,262) = 3e-12_r8 - rate(:,263) = 6.7e-13_r8 - rate(:,273) = 1.4e-11_r8 - rate(:,276) = 2.4e-12_r8 - rate(:,287) = 5e-12_r8 - rate(:,293) = 3.5e-12_r8 - rate(:,298) = 2.4e-12_r8 - rate(:,299) = 1.4e-11_r8 - rate(:,303) = 2.4e-12_r8 - rate(:,308) = 4.5e-11_r8 - rate(:,313) = 2.4e-12_r8 - rate(:,322) = 2.3e-12_r8 - rate(:,324) = 1.2e-11_r8 - rate(:,325) = 5.7e-11_r8 - rate(:,326) = 2.8e-11_r8 - rate(:,327) = 6.6e-11_r8 - rate(:,328) = 1.4e-11_r8 - rate(:,331) = 1.9e-12_r8 - rate(:,338) = 6.34e-08_r8 - rate(:,342) = 1.157e-05_r8 - rate(:,360) = 1.29e-07_r8 - rate(:,361) = 2.31e-07_r8 - rate(:,362) = 2.31e-06_r8 - rate(:,363) = 4.63e-07_r8 - - do n = 1,pver - offset = (n-1)*ncol - itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n) - end do - - rate(:,87) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) ) - rate(:,88) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) - rate(:,89) = 3.3e-11_r8 * exp( 55._r8 * itemp(:) ) - rate(:,92) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) - rate(:,95) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) ) - exp_fac(:) = exp( -2000._r8 * itemp(:) ) - rate(:,96) = 1.4e-12_r8 * exp_fac(:) - rate(:,304) = 1.05e-14_r8 * exp_fac(:) - exp_fac(:) = exp( 200._r8 * itemp(:) ) - rate(:,101) = 3e-11_r8 * exp_fac(:) - rate(:,187) = 5.5e-12_r8 * exp_fac(:) - rate(:,219) = 3.8e-12_r8 * exp_fac(:) - rate(:,232) = 3.8e-12_r8 * exp_fac(:) - rate(:,258) = 3.8e-12_r8 * exp_fac(:) - rate(:,266) = 3.8e-12_r8 * exp_fac(:) - rate(:,270) = 3.8e-12_r8 * exp_fac(:) - rate(:,281) = 2.3e-11_r8 * exp_fac(:) - rate(:,306) = 1.52e-11_r8 * exp_fac(:) - rate(:,314) = 1.52e-12_r8 * exp_fac(:) - rate(:,102) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) - rate(:,103) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) - rate(:,104) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) ) - exp_fac(:) = exp( 250._r8 * itemp(:) ) - rate(:,106) = 4.8e-11_r8 * exp_fac(:) - rate(:,185) = 1.7e-11_r8 * exp_fac(:) - exp_fac(:) = exp( 180._r8 * itemp(:) ) - rate(:,107) = 1.8e-11_r8 * exp_fac(:) - rate(:,244) = 4.2e-12_r8 * exp_fac(:) - rate(:,257) = 4.2e-12_r8 * exp_fac(:) - rate(:,265) = 4.2e-12_r8 * exp_fac(:) - rate(:,302) = 4.4e-12_r8 * exp_fac(:) - rate(:,108) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) - rate(:,112) = 4.5e-13_r8 * exp( 610._r8 * itemp(:) ) - rate(:,113) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) - exp_fac(:) = exp( 220._r8 * itemp(:) ) - rate(:,114) = 2.9e-12_r8 * exp_fac(:) - rate(:,115) = 1.45e-12_r8 * exp_fac(:) - rate(:,116) = 1.45e-12_r8 * exp_fac(:) - rate(:,117) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) - rate(:,118) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) - exp_fac(:) = exp( -2450._r8 * itemp(:) ) - rate(:,119) = 1.2e-13_r8 * exp_fac(:) - rate(:,145) = 3e-11_r8 * exp_fac(:) - exp_fac(:) = exp( 125._r8 * itemp(:) ) - rate(:,122) = 1.7e-11_r8 * exp_fac(:) - rate(:,213) = 5.5e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 260._r8 * itemp(:) ) - rate(:,126) = 3.44e-12_r8 * exp_fac(:) - rate(:,178) = 2.3e-12_r8 * exp_fac(:) - rate(:,181) = 8.8e-12_r8 * exp_fac(:) - exp_fac(:) = exp( -1500._r8 * itemp(:) ) - rate(:,127) = 3e-12_r8 * exp_fac(:) - rate(:,186) = 5.8e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 20._r8 * itemp(:) ) - rate(:,129) = 7.26e-11_r8 * exp_fac(:) - rate(:,130) = 4.64e-11_r8 * exp_fac(:) - rate(:,137) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) ) - rate(:,138) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) ) - rate(:,139) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) ) - rate(:,140) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) ) - exp_fac(:) = exp( 270._r8 * itemp(:) ) - rate(:,141) = 1.4e-11_r8 * exp_fac(:) - rate(:,155) = 7.4e-12_r8 * exp_fac(:) - rate(:,240) = 8.1e-12_r8 * exp_fac(:) - rate(:,142) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) ) - rate(:,143) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) ) - rate(:,144) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) ) - rate(:,146) = 1e-12_r8 * exp( -1590._r8 * itemp(:) ) - rate(:,147) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) ) - exp_fac(:) = exp( 290._r8 * itemp(:) ) - rate(:,148) = 2.6e-12_r8 * exp_fac(:) - rate(:,149) = 6.4e-12_r8 * exp_fac(:) - rate(:,179) = 4.1e-13_r8 * exp_fac(:) - rate(:,150) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) ) - exp_fac(:) = exp( -840._r8 * itemp(:) ) - rate(:,152) = 3.6e-12_r8 * exp_fac(:) - rate(:,195) = 2e-12_r8 * exp_fac(:) - rate(:,153) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) ) - rate(:,154) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) ) - exp_fac(:) = exp( 230._r8 * itemp(:) ) - rate(:,156) = 6e-13_r8 * exp_fac(:) - rate(:,176) = 1.5e-12_r8 * exp_fac(:) - rate(:,184) = 1.9e-11_r8 * exp_fac(:) - rate(:,157) = 1e-11_r8 * exp( -3300._r8 * itemp(:) ) - rate(:,158) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) ) - rate(:,159) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) ) - rate(:,161) = 3e-12_r8 * exp( -500._r8 * itemp(:) ) - exp_fac(:) = exp( -800._r8 * itemp(:) ) - rate(:,173) = 1.7e-11_r8 * exp_fac(:) - rate(:,194) = 6.3e-12_r8 * exp_fac(:) - rate(:,174) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) ) - rate(:,175) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) ) - rate(:,177) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) ) - rate(:,180) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) ) - rate(:,183) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) ) - rate(:,188) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) ) - rate(:,196) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) ) - rate(:,197) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) ) - exp_fac(:) = exp( -1520._r8 * itemp(:) ) - rate(:,198) = 1.64e-12_r8 * exp_fac(:) - rate(:,289) = 8.5e-16_r8 * exp_fac(:) - exp_fac(:) = exp( -1100._r8 * itemp(:) ) - rate(:,199) = 2.03e-11_r8 * exp_fac(:) - rate(:,330) = 3.4e-12_r8 * exp_fac(:) - rate(:,200) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) ) - rate(:,201) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) ) - rate(:,202) = 9e-13_r8 * exp( -360._r8 * itemp(:) ) - exp_fac(:) = exp( -1600._r8 * itemp(:) ) - rate(:,203) = 1.25e-12_r8 * exp_fac(:) - rate(:,212) = 3.4e-11_r8 * exp_fac(:) - rate(:,204) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) ) - rate(:,205) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) ) - rate(:,211) = 6e-13_r8 * exp( -2058._r8 * itemp(:) ) - rate(:,214) = 5e-13_r8 * exp( -424._r8 * itemp(:) ) - rate(:,215) = 1.9e-14_r8 * exp( 706._r8 * itemp(:) ) - rate(:,216) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) ) - exp_fac(:) = exp( 300._r8 * itemp(:) ) - rate(:,217) = 2.8e-12_r8 * exp_fac(:) - rate(:,269) = 2.9e-12_r8 * exp_fac(:) - rate(:,218) = 2.9e-12_r8 * exp( -345._r8 * itemp(:) ) - rate(:,220) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) ) - rate(:,226) = 1.2e-14_r8 * exp( -2630._r8 * itemp(:) ) - exp_fac(:) = exp( 700._r8 * itemp(:) ) - rate(:,229) = 7.5e-13_r8 * exp_fac(:) - rate(:,243) = 7.5e-13_r8 * exp_fac(:) - rate(:,256) = 7.5e-13_r8 * exp_fac(:) - rate(:,264) = 7.5e-13_r8 * exp_fac(:) - rate(:,268) = 8.6e-13_r8 * exp_fac(:) - rate(:,275) = 8e-13_r8 * exp_fac(:) - rate(:,296) = 8e-13_r8 * exp_fac(:) - rate(:,301) = 8e-13_r8 * exp_fac(:) - rate(:,311) = 8e-13_r8 * exp_fac(:) - rate(:,230) = 2.6e-12_r8 * exp( 365._r8 * itemp(:) ) - rate(:,231) = 6.9e-12_r8 * exp( -230._r8 * itemp(:) ) - rate(:,233) = 7.2e-11_r8 * exp( -70._r8 * itemp(:) ) - rate(:,234) = 7.66e-12_r8 * exp( -1020._r8 * itemp(:) ) - exp_fac(:) = exp( -1900._r8 * itemp(:) ) - rate(:,235) = 1.4e-12_r8 * exp_fac(:) - rate(:,254) = 6.5e-15_r8 * exp_fac(:) - rate(:,236) = 4.63e-12_r8 * exp( 350._r8 * itemp(:) ) - exp_fac(:) = exp( 500._r8 * itemp(:) ) - rate(:,237) = 2.9e-12_r8 * exp_fac(:) - rate(:,238) = 2e-12_r8 * exp_fac(:) - rate(:,267) = 7.1e-13_r8 * exp_fac(:) - rate(:,283) = 2e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 1040._r8 * itemp(:) ) - rate(:,239) = 4.3e-13_r8 * exp_fac(:) - rate(:,284) = 4.3e-13_r8 * exp_fac(:) - rate(:,241) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) - rate(:,245) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) - rate(:,253) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) - rate(:,255) = 3.75e-13_r8 * exp( -40._r8 * itemp(:) ) - rate(:,259) = 9.19e-12_r8 * exp( -630._r8 * itemp(:) ) - exp_fac(:) = exp( -1860._r8 * itemp(:) ) - rate(:,260) = 1.4e-12_r8 * exp_fac(:) - rate(:,307) = 1.4e-12_r8 * exp_fac(:) - rate(:,261) = 8.4e-13_r8 * exp( 830._r8 * itemp(:) ) - exp_fac(:) = exp( 400._r8 * itemp(:) ) - rate(:,274) = 5e-13_r8 * exp_fac(:) - rate(:,300) = 5e-13_r8 * exp_fac(:) - rate(:,310) = 5e-13_r8 * exp_fac(:) - exp_fac(:) = exp( 360._r8 * itemp(:) ) - rate(:,277) = 2.7e-12_r8 * exp_fac(:) - rate(:,278) = 1.3e-13_r8 * exp_fac(:) - rate(:,280) = 9.6e-12_r8 * exp_fac(:) - rate(:,286) = 5.3e-12_r8 * exp_fac(:) - rate(:,297) = 2.7e-12_r8 * exp_fac(:) - rate(:,312) = 2.7e-12_r8 * exp_fac(:) - rate(:,279) = 1.5e-15_r8 * exp( -2100._r8 * itemp(:) ) - exp_fac(:) = exp( 530._r8 * itemp(:) ) - rate(:,282) = 4.6e-12_r8 * exp_fac(:) - rate(:,285) = 2.3e-12_r8 * exp_fac(:) - rate(:,290) = 4.13e-12_r8 * exp( 452._r8 * itemp(:) ) - rate(:,294) = 1.86e-11_r8 * exp( 175._r8 * itemp(:) ) - rate(:,295) = 3.03e-12_r8 * exp( -446._r8 * itemp(:) ) - rate(:,305) = 2.54e-11_r8 * exp( 410._r8 * itemp(:) ) - rate(:,309) = 1.3e-12_r8 * exp( 640._r8 * itemp(:) ) - rate(:,315) = 1.2e-12_r8 * exp( 490._r8 * itemp(:) ) - rate(:,316) = 6.3e-16_r8 * exp( -580._r8 * itemp(:) ) - rate(:,317) = 1.2e-11_r8 * exp( 440._r8 * itemp(:) ) - rate(:,318) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) ) - rate(:,319) = 1.1e-11_r8 * exp( -280._r8 * itemp(:) ) - rate(:,320) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) ) - rate(:,321) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) ) - rate(:,329) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) ) - rate(:,332) = 2.6e-11_r8 * exp( 330._r8 * itemp(:) ) - rate(:,335) = 1.7e-12_r8 * exp( -710._r8 * itemp(:) ) - - itemp(:) = 300._r8 * itemp(:) - - n = ncol*pver - - ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 - kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) - call jpl( rate(:,100), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 6.9e-31_r8 * itemp(:)**1._r8 - kinf(:) = 2.6e-11_r8 - call jpl( rate(:,110), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8 - kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8 - call jpl( rate(:,120), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9e-32_r8 * itemp(:)**1.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,128), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8 - kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8 - call jpl( rate(:,131), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.4e-30_r8 * itemp(:)**3._r8 - kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8) - call jpl( rate(:,132), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.8e-30_r8 * itemp(:)**3._r8 - kinf(:) = 2.8e-11_r8 - call jpl( rate(:,133), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8 - kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8 - call jpl( rate(:,151), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8 - kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8 - call jpl( rate(:,171), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8 - kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8 - call jpl( rate(:,182), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.6e-29_r8 * itemp(:)**3.3_r8 - kinf(:) = 3.1e-10_r8 * itemp(:) - call jpl( rate(:,225), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 8.6e-29_r8 * itemp(:)**3.1_r8 - kinf(:) = 9e-12_r8 * itemp(:)**0.85_r8 - call jpl( rate(:,250), m, 0.48_r8, ko, kinf, n ) - - ko(:) = 7.3e-29_r8 * itemp(:)**4.1_r8 - kinf(:) = 9.5e-12_r8 * itemp(:)**1.6_r8 - call jpl( rate(:,251), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,271), m, 0.5_r8, ko, kinf, n ) - - ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,288), m, 0.5_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,291), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.9e-31_r8 * itemp(:)**4.1_r8 - kinf(:) = 1.7e-12_r8 * itemp(:)**(-0.2_r8) - call jpl( rate(:,323), m, 0.6_r8, ko, kinf, n ) - - end subroutine setrxt - - - subroutine setrxt_hrates( rate, temp, m, ncol, kbot ) - - use ppgrid, only : pcols, pver - - - use chem_mods, only : rxntot - use mo_jpl, only : jpl - - implicit none - -!------------------------------------------------------- -! ... dummy arguments -!------------------------------------------------------- - integer, intent(in) :: ncol - integer, intent(in) :: kbot - real(r8), intent(in) :: temp(pcols,pver) - real(r8), intent(in) :: m(ncol*pver) - real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) - -!------------------------------------------------------- -! ... local variables -!------------------------------------------------------- - integer :: n - integer :: offset - integer :: k - real(r8) :: itemp(ncol*kbot) - real(r8) :: exp_fac(ncol*kbot) - real(r8) :: ko(ncol*kbot) - real(r8) :: kinf(ncol*kbot) - real(r8) :: wrk(ncol*kbot) - - n = ncol*kbot - - rate(:n,97) = 6.9e-12_r8 - - do k = 1,kbot - offset = (k-1)*ncol - itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k) - end do - - rate(:n,88) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) - rate(:n,92) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) - rate(:n,101) = 3e-11_r8 * exp( 200._r8 * itemp(:) ) - rate(:n,102) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) - rate(:n,103) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) - rate(:n,106) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) ) - rate(:n,107) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) ) - rate(:n,108) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) - rate(:n,113) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) - rate(:n,117) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) - rate(:n,118) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) - rate(:n,126) = 3.44e-12_r8 * exp( 260._r8 * itemp(:) ) - rate(:n,127) = 3e-12_r8 * exp( -1500._r8 * itemp(:) ) - - itemp(:) = 300._r8 * itemp(:) - - ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 - kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) - call jpl( wrk, m, 0.6_r8, ko, kinf, n ) - rate(:n,100) = wrk(:) - - - - - - - - - - - - - - - - - - end subroutine setrxt_hrates - - end module mo_setrxt diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/m_rxt_id.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/m_rxt_id.F90 deleted file mode 100644 index 46c4932def..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/m_rxt_id.F90 +++ /dev/null @@ -1,544 +0,0 @@ - module m_rxt_id - implicit none - integer, parameter :: rid_jh2o_b = 1 - integer, parameter :: rid_jh2o_a = 2 - integer, parameter :: rid_jh2o_c = 3 - integer, parameter :: rid_jh2o2 = 4 - integer, parameter :: rid_jo2_a = 5 - integer, parameter :: rid_jo2_b = 6 - integer, parameter :: rid_jo3_a = 7 - integer, parameter :: rid_jo3_b = 8 - integer, parameter :: rid_jhno3 = 9 - integer, parameter :: rid_jho2no2_a = 10 - integer, parameter :: rid_jho2no2_b = 11 - integer, parameter :: rid_jn2o = 12 - integer, parameter :: rid_jn2o5_a = 13 - integer, parameter :: rid_jn2o5_b = 14 - integer, parameter :: rid_jno = 15 - integer, parameter :: rid_jno2 = 16 - integer, parameter :: rid_jno3_b = 17 - integer, parameter :: rid_jno3_a = 18 - integer, parameter :: rid_jalknit = 19 - integer, parameter :: rid_jalkooh = 20 - integer, parameter :: rid_jbenzooh = 21 - integer, parameter :: rid_jbepomuc = 22 - integer, parameter :: rid_jbigald = 23 - integer, parameter :: rid_jbigald1 = 24 - integer, parameter :: rid_jbigald2 = 25 - integer, parameter :: rid_jbigald3 = 26 - integer, parameter :: rid_jbigald4 = 27 - integer, parameter :: rid_jbzooh = 28 - integer, parameter :: rid_jc2h5ooh = 29 - integer, parameter :: rid_jc3h7ooh = 30 - integer, parameter :: rid_jc6h5ooh = 31 - integer, parameter :: rid_jch2o_b = 32 - integer, parameter :: rid_jch2o_a = 33 - integer, parameter :: rid_jch3cho = 34 - integer, parameter :: rid_jacet = 35 - integer, parameter :: rid_jmgly = 36 - integer, parameter :: rid_jch3co3h = 37 - integer, parameter :: rid_jch3ooh = 38 - integer, parameter :: rid_jch4_b = 39 - integer, parameter :: rid_jch4_a = 40 - integer, parameter :: rid_jco2 = 41 - integer, parameter :: rid_jeooh = 42 - integer, parameter :: rid_jglyald = 43 - integer, parameter :: rid_jglyoxal = 44 - integer, parameter :: rid_jhonitr = 45 - integer, parameter :: rid_jhpald = 46 - integer, parameter :: rid_jhyac = 47 - integer, parameter :: rid_jisopnooh = 48 - integer, parameter :: rid_jisopooh = 49 - integer, parameter :: rid_jmacr_a = 50 - integer, parameter :: rid_jmacr_b = 51 - integer, parameter :: rid_jmek = 52 - integer, parameter :: rid_jmekooh = 53 - integer, parameter :: rid_jmpan = 54 - integer, parameter :: rid_jmvk = 55 - integer, parameter :: rid_jnc4cho = 56 - integer, parameter :: rid_jnoa = 57 - integer, parameter :: rid_jnterpooh = 58 - integer, parameter :: rid_jonitr = 59 - integer, parameter :: rid_jpan = 60 - integer, parameter :: rid_jphenooh = 61 - integer, parameter :: rid_jpooh = 62 - integer, parameter :: rid_jrooh = 63 - integer, parameter :: rid_jtepomuc = 64 - integer, parameter :: rid_jterp2ooh = 65 - integer, parameter :: rid_jterpnit = 66 - integer, parameter :: rid_jterpooh = 67 - integer, parameter :: rid_jterprd1 = 68 - integer, parameter :: rid_jterprd2 = 69 - integer, parameter :: rid_jtolooh = 70 - integer, parameter :: rid_jxooh = 71 - integer, parameter :: rid_jxylenooh = 72 - integer, parameter :: rid_jxylolooh = 73 - integer, parameter :: rid_jbrcl = 74 - integer, parameter :: rid_jbro = 75 - integer, parameter :: rid_jbrono2_b = 76 - integer, parameter :: rid_jbrono2_a = 77 - integer, parameter :: rid_jccl4 = 78 - integer, parameter :: rid_jcf2clbr = 79 - integer, parameter :: rid_jcf3br = 80 - integer, parameter :: rid_jcfcl3 = 81 - integer, parameter :: rid_jcfc113 = 82 - integer, parameter :: rid_jcfc114 = 83 - integer, parameter :: rid_jcfc115 = 84 - integer, parameter :: rid_jcf2cl2 = 85 - integer, parameter :: rid_jch2br2 = 86 - integer, parameter :: rid_jch3br = 87 - integer, parameter :: rid_jch3ccl3 = 88 - integer, parameter :: rid_jch3cl = 89 - integer, parameter :: rid_jchbr3 = 90 - integer, parameter :: rid_jcl2 = 91 - integer, parameter :: rid_jcl2o2 = 92 - integer, parameter :: rid_jclo = 93 - integer, parameter :: rid_jclono2_a = 94 - integer, parameter :: rid_jclono2_b = 95 - integer, parameter :: rid_jcof2 = 96 - integer, parameter :: rid_jcofcl = 97 - integer, parameter :: rid_jh2402 = 98 - integer, parameter :: rid_jhbr = 99 - integer, parameter :: rid_jhcfc141b = 100 - integer, parameter :: rid_jhcfc142b = 101 - integer, parameter :: rid_jhcfc22 = 102 - integer, parameter :: rid_jhcl = 103 - integer, parameter :: rid_jhf = 104 - integer, parameter :: rid_jhobr = 105 - integer, parameter :: rid_jhocl = 106 - integer, parameter :: rid_joclo = 107 - integer, parameter :: rid_jsf6 = 108 - integer, parameter :: rid_jh2so4 = 109 - integer, parameter :: rid_jocs = 110 - integer, parameter :: rid_jso = 111 - integer, parameter :: rid_jso2 = 112 - integer, parameter :: rid_jso3 = 113 - integer, parameter :: rid_jsoa1_a1 = 114 - integer, parameter :: rid_jsoa1_a2 = 115 - integer, parameter :: rid_jsoa2_a1 = 116 - integer, parameter :: rid_jsoa2_a2 = 117 - integer, parameter :: rid_jsoa3_a1 = 118 - integer, parameter :: rid_jsoa3_a2 = 119 - integer, parameter :: rid_jsoa4_a1 = 120 - integer, parameter :: rid_jsoa4_a2 = 121 - integer, parameter :: rid_jsoa5_a1 = 122 - integer, parameter :: rid_jsoa5_a2 = 123 - integer, parameter :: rid_E90_tau = 124 - integer, parameter :: rid_O1D_H2 = 125 - integer, parameter :: rid_O1D_H2O = 126 - integer, parameter :: rid_O1D_N2 = 127 - integer, parameter :: rid_O1D_O2ab = 128 - integer, parameter :: rid_O1D_O3 = 129 - integer, parameter :: rid_O_O3 = 130 - integer, parameter :: rid_usr_O_O = 131 - integer, parameter :: rid_usr_O_O2 = 132 - integer, parameter :: rid_H2_O = 133 - integer, parameter :: rid_H2O2_O = 134 - integer, parameter :: rid_H_HO2 = 135 - integer, parameter :: rid_H_HO2a = 136 - integer, parameter :: rid_H_HO2b = 137 - integer, parameter :: rid_H_O2 = 138 - integer, parameter :: rid_HO2_O = 139 - integer, parameter :: rid_HO2_O3 = 140 - integer, parameter :: rid_H_O3 = 141 - integer, parameter :: rid_OH_H2 = 142 - integer, parameter :: rid_OH_H2O2 = 143 - integer, parameter :: rid_OH_HO2 = 144 - integer, parameter :: rid_OH_O = 145 - integer, parameter :: rid_OH_O3 = 146 - integer, parameter :: rid_OH_OH = 147 - integer, parameter :: rid_OH_OH_M = 148 - integer, parameter :: rid_usr_HO2_HO2 = 149 - integer, parameter :: rid_HO2NO2_OH = 150 - integer, parameter :: rid_N_NO = 151 - integer, parameter :: rid_N_NO2a = 152 - integer, parameter :: rid_N_NO2b = 153 - integer, parameter :: rid_N_NO2c = 154 - integer, parameter :: rid_N_O2 = 155 - integer, parameter :: rid_NO2_O = 156 - integer, parameter :: rid_NO2_O3 = 157 - integer, parameter :: rid_NO2_O_M = 158 - integer, parameter :: rid_NO3_HO2 = 159 - integer, parameter :: rid_NO3_NO = 160 - integer, parameter :: rid_NO3_O = 161 - integer, parameter :: rid_NO3_OH = 162 - integer, parameter :: rid_N_OH = 163 - integer, parameter :: rid_NO_HO2 = 164 - integer, parameter :: rid_NO_O3 = 165 - integer, parameter :: rid_NO_O_M = 166 - integer, parameter :: rid_O1D_N2Oa = 167 - integer, parameter :: rid_O1D_N2Ob = 168 - integer, parameter :: rid_tag_NO2_HO2 = 169 - integer, parameter :: rid_tag_NO2_NO3 = 170 - integer, parameter :: rid_tag_NO2_OH = 171 - integer, parameter :: rid_usr_HNO3_OH = 172 - integer, parameter :: rid_usr_HO2NO2_M = 173 - integer, parameter :: rid_usr_N2O5_M = 174 - integer, parameter :: rid_CL_CH2O = 175 - integer, parameter :: rid_CL_CH4 = 176 - integer, parameter :: rid_CL_H2 = 177 - integer, parameter :: rid_CL_H2O2 = 178 - integer, parameter :: rid_CL_HO2a = 179 - integer, parameter :: rid_CL_HO2b = 180 - integer, parameter :: rid_CL_O3 = 181 - integer, parameter :: rid_CLO_CH3O2 = 182 - integer, parameter :: rid_CLO_CLOa = 183 - integer, parameter :: rid_CLO_CLOb = 184 - integer, parameter :: rid_CLO_CLOc = 185 - integer, parameter :: rid_CLO_HO2 = 186 - integer, parameter :: rid_CLO_NO = 187 - integer, parameter :: rid_CLONO2_CL = 188 - integer, parameter :: rid_CLO_NO2_M = 189 - integer, parameter :: rid_CLONO2_O = 190 - integer, parameter :: rid_CLONO2_OH = 191 - integer, parameter :: rid_CLO_O = 192 - integer, parameter :: rid_CLO_OHa = 193 - integer, parameter :: rid_CLO_OHb = 194 - integer, parameter :: rid_HCL_O = 195 - integer, parameter :: rid_HCL_OH = 196 - integer, parameter :: rid_HOCL_CL = 197 - integer, parameter :: rid_HOCL_O = 198 - integer, parameter :: rid_HOCL_OH = 199 - integer, parameter :: rid_O1D_CCL4 = 200 - integer, parameter :: rid_O1D_CF2CLBR = 201 - integer, parameter :: rid_O1D_CFC11 = 202 - integer, parameter :: rid_O1D_CFC113 = 203 - integer, parameter :: rid_O1D_CFC114 = 204 - integer, parameter :: rid_O1D_CFC115 = 205 - integer, parameter :: rid_O1D_CFC12 = 206 - integer, parameter :: rid_O1D_HCLa = 207 - integer, parameter :: rid_O1D_HCLb = 208 - integer, parameter :: rid_tag_CLO_CLO_M = 209 - integer, parameter :: rid_usr_CL2O2_M = 210 - integer, parameter :: rid_BR_CH2O = 211 - integer, parameter :: rid_BR_HO2 = 212 - integer, parameter :: rid_BR_O3 = 213 - integer, parameter :: rid_BRO_BRO = 214 - integer, parameter :: rid_BRO_CLOa = 215 - integer, parameter :: rid_BRO_CLOb = 216 - integer, parameter :: rid_BRO_CLOc = 217 - integer, parameter :: rid_BRO_HO2 = 218 - integer, parameter :: rid_BRO_NO = 219 - integer, parameter :: rid_BRO_NO2_M = 220 - integer, parameter :: rid_BRONO2_O = 221 - integer, parameter :: rid_BRO_O = 222 - integer, parameter :: rid_BRO_OH = 223 - integer, parameter :: rid_HBR_O = 224 - integer, parameter :: rid_HBR_OH = 225 - integer, parameter :: rid_HOBR_O = 226 - integer, parameter :: rid_O1D_CF3BR = 227 - integer, parameter :: rid_O1D_CHBR3 = 228 - integer, parameter :: rid_O1D_H2402 = 229 - integer, parameter :: rid_O1D_HBRa = 230 - integer, parameter :: rid_O1D_HBRb = 231 - integer, parameter :: rid_F_CH4 = 232 - integer, parameter :: rid_F_H2 = 233 - integer, parameter :: rid_F_H2O = 234 - integer, parameter :: rid_F_HNO3 = 235 - integer, parameter :: rid_O1D_COF2 = 236 - integer, parameter :: rid_O1D_COFCL = 237 - integer, parameter :: rid_CH2BR2_CL = 238 - integer, parameter :: rid_CH2BR2_OH = 239 - integer, parameter :: rid_CH3BR_CL = 240 - integer, parameter :: rid_CH3BR_OH = 241 - integer, parameter :: rid_CH3CCL3_OH = 242 - integer, parameter :: rid_CH3CL_CL = 243 - integer, parameter :: rid_CH3CL_OH = 244 - integer, parameter :: rid_CHBR3_CL = 245 - integer, parameter :: rid_CHBR3_OH = 246 - integer, parameter :: rid_HCFC141B_OH = 247 - integer, parameter :: rid_HCFC142B_OH = 248 - integer, parameter :: rid_HCFC22_OH = 249 - integer, parameter :: rid_O1D_CH2BR2 = 250 - integer, parameter :: rid_O1D_CH3BR = 251 - integer, parameter :: rid_O1D_HCFC141B = 252 - integer, parameter :: rid_O1D_HCFC142B = 253 - integer, parameter :: rid_O1D_HCFC22 = 254 - integer, parameter :: rid_CH2O_HO2 = 255 - integer, parameter :: rid_CH2O_NO3 = 256 - integer, parameter :: rid_CH2O_O = 257 - integer, parameter :: rid_CH2O_OH = 258 - integer, parameter :: rid_CH3O2_CH3O2a = 259 - integer, parameter :: rid_CH3O2_CH3O2b = 260 - integer, parameter :: rid_CH3O2_HO2 = 261 - integer, parameter :: rid_CH3O2_NO = 262 - integer, parameter :: rid_CH3OH_OH = 263 - integer, parameter :: rid_CH3OOH_OH = 264 - integer, parameter :: rid_CH4_OH = 265 - integer, parameter :: rid_HCN_OH = 266 - integer, parameter :: rid_HCOOH_OH = 267 - integer, parameter :: rid_HOCH2OO_HO2 = 268 - integer, parameter :: rid_HOCH2OO_M = 269 - integer, parameter :: rid_HOCH2OO_NO = 270 - integer, parameter :: rid_O1D_CH4a = 271 - integer, parameter :: rid_O1D_CH4b = 272 - integer, parameter :: rid_O1D_CH4c = 273 - integer, parameter :: rid_O1D_HCN = 274 - integer, parameter :: rid_usr_CO_OH = 275 - integer, parameter :: rid_C2H2_CL_M = 276 - integer, parameter :: rid_C2H2_OH_M = 277 - integer, parameter :: rid_C2H4_CL_M = 278 - integer, parameter :: rid_C2H4_O3 = 279 - integer, parameter :: rid_C2H5O2_C2H5O2 = 280 - integer, parameter :: rid_C2H5O2_CH3O2 = 281 - integer, parameter :: rid_C2H5O2_HO2 = 282 - integer, parameter :: rid_C2H5O2_NO = 283 - integer, parameter :: rid_C2H5OH_OH = 284 - integer, parameter :: rid_C2H5OOH_OH = 285 - integer, parameter :: rid_C2H6_CL = 286 - integer, parameter :: rid_C2H6_OH = 287 - integer, parameter :: rid_CH3CHO_NO3 = 288 - integer, parameter :: rid_CH3CHO_OH = 289 - integer, parameter :: rid_CH3CN_OH = 290 - integer, parameter :: rid_CH3CO3_CH3CO3 = 291 - integer, parameter :: rid_CH3CO3_CH3O2 = 292 - integer, parameter :: rid_CH3CO3_HO2 = 293 - integer, parameter :: rid_CH3CO3_NO = 294 - integer, parameter :: rid_CH3COOH_OH = 295 - integer, parameter :: rid_CH3COOOH_OH = 296 - integer, parameter :: rid_EO2_HO2 = 297 - integer, parameter :: rid_EO2_NO = 298 - integer, parameter :: rid_EO_M = 299 - integer, parameter :: rid_EO_O2 = 300 - integer, parameter :: rid_GLYALD_OH = 301 - integer, parameter :: rid_GLYOXAL_OH = 302 - integer, parameter :: rid_PAN_OH = 303 - integer, parameter :: rid_tag_C2H4_OH = 304 - integer, parameter :: rid_tag_CH3CO3_NO2 = 305 - integer, parameter :: rid_usr_PAN_M = 306 - integer, parameter :: rid_C3H6_NO3 = 307 - integer, parameter :: rid_C3H6_O3 = 308 - integer, parameter :: rid_C3H7O2_CH3O2 = 309 - integer, parameter :: rid_C3H7O2_HO2 = 310 - integer, parameter :: rid_C3H7O2_NO = 311 - integer, parameter :: rid_C3H7OOH_OH = 312 - integer, parameter :: rid_C3H8_OH = 313 - integer, parameter :: rid_CH3COCHO_NO3 = 314 - integer, parameter :: rid_CH3COCHO_OH = 315 - integer, parameter :: rid_HYAC_OH = 316 - integer, parameter :: rid_NOA_OH = 317 - integer, parameter :: rid_PO2_HO2 = 318 - integer, parameter :: rid_PO2_NO = 319 - integer, parameter :: rid_POOH_OH = 320 - integer, parameter :: rid_RO2_CH3O2 = 321 - integer, parameter :: rid_RO2_HO2 = 322 - integer, parameter :: rid_RO2_NO = 323 - integer, parameter :: rid_ROOH_OH = 324 - integer, parameter :: rid_tag_C3H6_OH = 325 - integer, parameter :: rid_usr_CH3COCH3_OH = 326 - integer, parameter :: rid_BIGENE_NO3 = 327 - integer, parameter :: rid_BIGENE_OH = 328 - integer, parameter :: rid_ENEO2_NO = 329 - integer, parameter :: rid_ENEO2_NOb = 330 - integer, parameter :: rid_HONITR_OH = 331 - integer, parameter :: rid_MACRO2_CH3CO3 = 332 - integer, parameter :: rid_MACRO2_CH3O2 = 333 - integer, parameter :: rid_MACRO2_HO2 = 334 - integer, parameter :: rid_MACRO2_NO3 = 335 - integer, parameter :: rid_MACRO2_NOa = 336 - integer, parameter :: rid_MACRO2_NOb = 337 - integer, parameter :: rid_MACR_O3 = 338 - integer, parameter :: rid_MACR_OH = 339 - integer, parameter :: rid_MACROOH_OH = 340 - integer, parameter :: rid_MCO3_CH3CO3 = 341 - integer, parameter :: rid_MCO3_CH3O2 = 342 - integer, parameter :: rid_MCO3_HO2 = 343 - integer, parameter :: rid_MCO3_MCO3 = 344 - integer, parameter :: rid_MCO3_NO = 345 - integer, parameter :: rid_MCO3_NO3 = 346 - integer, parameter :: rid_MEKO2_HO2 = 347 - integer, parameter :: rid_MEKO2_NO = 348 - integer, parameter :: rid_MEK_OH = 349 - integer, parameter :: rid_MEKOOH_OH = 350 - integer, parameter :: rid_MPAN_OH_M = 351 - integer, parameter :: rid_MVK_O3 = 352 - integer, parameter :: rid_MVK_OH = 353 - integer, parameter :: rid_tag_MCO3_NO2 = 354 - integer, parameter :: rid_usr_MPAN_M = 355 - integer, parameter :: rid_ALKNIT_OH = 356 - integer, parameter :: rid_ALKO2_HO2 = 357 - integer, parameter :: rid_ALKO2_NO = 358 - integer, parameter :: rid_ALKO2_NOb = 359 - integer, parameter :: rid_ALKOOH_OH = 360 - integer, parameter :: rid_BIGALK_OH = 361 - integer, parameter :: rid_HPALD_OH = 362 - integer, parameter :: rid_HYDRALD_OH = 363 - integer, parameter :: rid_IEPOX_OH = 364 - integer, parameter :: rid_ISOPAO2_CH3CO3 = 365 - integer, parameter :: rid_ISOPAO2_CH3O2 = 366 - integer, parameter :: rid_ISOPAO2_HO2 = 367 - integer, parameter :: rid_ISOPAO2_NO = 368 - integer, parameter :: rid_ISOPAO2_NO3 = 369 - integer, parameter :: rid_ISOPBO2_CH3CO3 = 370 - integer, parameter :: rid_ISOPBO2_CH3O2 = 371 - integer, parameter :: rid_ISOPBO2_HO2 = 372 - integer, parameter :: rid_ISOPBO2_M = 373 - integer, parameter :: rid_ISOPBO2_NO = 374 - integer, parameter :: rid_ISOPBO2_NO3 = 375 - integer, parameter :: rid_ISOPNITA_OH = 376 - integer, parameter :: rid_ISOPNITB_OH = 377 - integer, parameter :: rid_ISOP_NO3 = 378 - integer, parameter :: rid_ISOPNO3_CH3CO3 = 379 - integer, parameter :: rid_ISOPNO3_CH3O2 = 380 - integer, parameter :: rid_ISOPNO3_HO2 = 381 - integer, parameter :: rid_ISOPNO3_NO = 382 - integer, parameter :: rid_ISOPNO3_NO3 = 383 - integer, parameter :: rid_ISOPNOOH_OH = 384 - integer, parameter :: rid_ISOP_O3 = 385 - integer, parameter :: rid_ISOP_OH = 386 - integer, parameter :: rid_ISOPOOH_OH = 387 - integer, parameter :: rid_NC4CH2OH_OH = 388 - integer, parameter :: rid_NC4CHO_OH = 389 - integer, parameter :: rid_XO2_CH3CO3 = 390 - integer, parameter :: rid_XO2_CH3O2 = 391 - integer, parameter :: rid_XO2_HO2 = 392 - integer, parameter :: rid_XO2_NO = 393 - integer, parameter :: rid_XO2_NO3 = 394 - integer, parameter :: rid_XOOH_OH = 395 - integer, parameter :: rid_ACBZO2_HO2 = 396 - integer, parameter :: rid_ACBZO2_NO = 397 - integer, parameter :: rid_BENZENE_OH = 398 - integer, parameter :: rid_BENZO2_HO2 = 399 - integer, parameter :: rid_BENZO2_NO = 400 - integer, parameter :: rid_BENZOOH_OH = 401 - integer, parameter :: rid_BZALD_OH = 402 - integer, parameter :: rid_BZOO_HO2 = 403 - integer, parameter :: rid_BZOOH_OH = 404 - integer, parameter :: rid_BZOO_NO = 405 - integer, parameter :: rid_C6H5O2_HO2 = 406 - integer, parameter :: rid_C6H5O2_NO = 407 - integer, parameter :: rid_C6H5OOH_OH = 408 - integer, parameter :: rid_CRESOL_OH = 409 - integer, parameter :: rid_DICARBO2_HO2 = 410 - integer, parameter :: rid_DICARBO2_NO = 411 - integer, parameter :: rid_DICARBO2_NO2 = 412 - integer, parameter :: rid_MALO2_HO2 = 413 - integer, parameter :: rid_MALO2_NO = 414 - integer, parameter :: rid_MALO2_NO2 = 415 - integer, parameter :: rid_MDIALO2_HO2 = 416 - integer, parameter :: rid_MDIALO2_NO = 417 - integer, parameter :: rid_MDIALO2_NO2 = 418 - integer, parameter :: rid_PHENO2_HO2 = 419 - integer, parameter :: rid_PHENO2_NO = 420 - integer, parameter :: rid_PHENOL_OH = 421 - integer, parameter :: rid_PHENO_NO2 = 422 - integer, parameter :: rid_PHENO_O3 = 423 - integer, parameter :: rid_PHENOOH_OH = 424 - integer, parameter :: rid_tag_ACBZO2_NO2 = 425 - integer, parameter :: rid_TOLO2_HO2 = 426 - integer, parameter :: rid_TOLO2_NO = 427 - integer, parameter :: rid_TOLOOH_OH = 428 - integer, parameter :: rid_TOLUENE_OH = 429 - integer, parameter :: rid_usr_PBZNIT_M = 430 - integer, parameter :: rid_XYLENES_OH = 431 - integer, parameter :: rid_XYLENO2_HO2 = 432 - integer, parameter :: rid_XYLENO2_NO = 433 - integer, parameter :: rid_XYLENOOH_OH = 434 - integer, parameter :: rid_XYLOLO2_HO2 = 435 - integer, parameter :: rid_XYLOLO2_NO = 436 - integer, parameter :: rid_XYLOL_OH = 437 - integer, parameter :: rid_XYLOLOOH_OH = 438 - integer, parameter :: rid_BCARY_NO3 = 439 - integer, parameter :: rid_BCARY_O3 = 440 - integer, parameter :: rid_BCARY_OH = 441 - integer, parameter :: rid_MTERP_NO3 = 442 - integer, parameter :: rid_MTERP_O3 = 443 - integer, parameter :: rid_MTERP_OH = 444 - integer, parameter :: rid_NTERPO2_CH3O2 = 445 - integer, parameter :: rid_NTERPO2_HO2 = 446 - integer, parameter :: rid_NTERPO2_NO = 447 - integer, parameter :: rid_NTERPO2_NO3 = 448 - integer, parameter :: rid_NTERPOOH_OH = 449 - integer, parameter :: rid_TERP2O2_CH3O2 = 450 - integer, parameter :: rid_TERP2O2_HO2 = 451 - integer, parameter :: rid_TERP2O2_NO = 452 - integer, parameter :: rid_TERP2OOH_OH = 453 - integer, parameter :: rid_TERPNIT_OH = 454 - integer, parameter :: rid_TERPO2_CH3O2 = 455 - integer, parameter :: rid_TERPO2_HO2 = 456 - integer, parameter :: rid_TERPO2_NO = 457 - integer, parameter :: rid_TERPOOH_OH = 458 - integer, parameter :: rid_TERPROD1_NO3 = 459 - integer, parameter :: rid_TERPROD1_OH = 460 - integer, parameter :: rid_TERPROD2_OH = 461 - integer, parameter :: rid_DMS_NO3 = 462 - integer, parameter :: rid_DMS_OHa = 463 - integer, parameter :: rid_OCS_O = 464 - integer, parameter :: rid_OCS_OH = 465 - integer, parameter :: rid_S_O2 = 466 - integer, parameter :: rid_SO2_OH_M = 467 - integer, parameter :: rid_S_O3 = 468 - integer, parameter :: rid_SO_BRO = 469 - integer, parameter :: rid_SO_CLO = 470 - integer, parameter :: rid_S_OH = 471 - integer, parameter :: rid_SO_NO2 = 472 - integer, parameter :: rid_SO_O2 = 473 - integer, parameter :: rid_SO_O3 = 474 - integer, parameter :: rid_SO_OCLO = 475 - integer, parameter :: rid_SO_OH = 476 - integer, parameter :: rid_usr_DMS_OH = 477 - integer, parameter :: rid_usr_SO3_H2O = 478 - integer, parameter :: rid_NH3_OH = 479 - integer, parameter :: rid_usr_GLYOXAL_aer = 480 - integer, parameter :: rid_usr_HO2_aer = 481 - integer, parameter :: rid_usr_HONITR_aer = 482 - integer, parameter :: rid_usr_ISOPNITA_aer = 483 - integer, parameter :: rid_usr_ISOPNITB_aer = 484 - integer, parameter :: rid_usr_N2O5_aer = 485 - integer, parameter :: rid_usr_NC4CH2OH_aer = 486 - integer, parameter :: rid_usr_NC4CHO_aer = 487 - integer, parameter :: rid_usr_NH4_strat_tau = 488 - integer, parameter :: rid_usr_NO2_aer = 489 - integer, parameter :: rid_usr_NO3_aer = 490 - integer, parameter :: rid_usr_NTERPOOH_aer = 491 - integer, parameter :: rid_usr_ONITR_aer = 492 - integer, parameter :: rid_usr_TERPNIT_aer = 493 - integer, parameter :: rid_BCARY_NO3_vbs = 494 - integer, parameter :: rid_BCARYO2_HO2_vbs = 495 - integer, parameter :: rid_BCARYO2_NO_vbs = 496 - integer, parameter :: rid_BCARY_O3_vbs = 497 - integer, parameter :: rid_BCARY_OH_vbs = 498 - integer, parameter :: rid_BENZENE_OH_vbs = 499 - integer, parameter :: rid_BENZO2_HO2_vbs = 500 - integer, parameter :: rid_BENZO2_NO_vbs = 501 - integer, parameter :: rid_ISOP_NO3_vbs = 502 - integer, parameter :: rid_ISOPO2_HO2_vbs = 503 - integer, parameter :: rid_ISOPO2_NO_vbs = 504 - integer, parameter :: rid_ISOP_O3_vbs = 505 - integer, parameter :: rid_ISOP_OH_vbs = 506 - integer, parameter :: rid_IVOCO2_HO2_vbs = 507 - integer, parameter :: rid_IVOCO2_NO_vbs = 508 - integer, parameter :: rid_IVOC_OH_vbs = 509 - integer, parameter :: rid_MTERP_NO3_vbs = 510 - integer, parameter :: rid_MTERPO2_HO2_vbs = 511 - integer, parameter :: rid_MTERPO2_NO_vbs = 512 - integer, parameter :: rid_MTERP_O3_vbs = 513 - integer, parameter :: rid_MTERP_OH_vbs = 514 - integer, parameter :: rid_SVOC_OH = 515 - integer, parameter :: rid_TOLUENE_OH_vbs = 516 - integer, parameter :: rid_TOLUO2_HO2_vbs = 517 - integer, parameter :: rid_TOLUO2_NO_vbs = 518 - integer, parameter :: rid_XYLENES_OH_vbs = 519 - integer, parameter :: rid_XYLEO2_HO2_vbs = 520 - integer, parameter :: rid_XYLEO2_NO_vbs = 521 - integer, parameter :: rid_het1 = 522 - integer, parameter :: rid_het10 = 523 - integer, parameter :: rid_het11 = 524 - integer, parameter :: rid_het12 = 525 - integer, parameter :: rid_het13 = 526 - integer, parameter :: rid_het14 = 527 - integer, parameter :: rid_het15 = 528 - integer, parameter :: rid_het16 = 529 - integer, parameter :: rid_het17 = 530 - integer, parameter :: rid_het2 = 531 - integer, parameter :: rid_het3 = 532 - integer, parameter :: rid_het4 = 533 - integer, parameter :: rid_het5 = 534 - integer, parameter :: rid_het6 = 535 - integer, parameter :: rid_het7 = 536 - integer, parameter :: rid_het8 = 537 - integer, parameter :: rid_het9 = 538 - integer, parameter :: rid_NH_50_tau = 539 - integer, parameter :: rid_NH_5_tau = 540 - integer, parameter :: rid_ST80_25_tau = 541 - end module m_rxt_id diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/m_spc_id.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/m_spc_id.F90 deleted file mode 100644 index 6f3bcd694d..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/m_spc_id.F90 +++ /dev/null @@ -1,234 +0,0 @@ - module m_spc_id - implicit none - integer, parameter :: id_ALKNIT = 1 - integer, parameter :: id_ALKOOH = 2 - integer, parameter :: id_AOA_NH = 3 - integer, parameter :: id_bc_a1 = 4 - integer, parameter :: id_bc_a4 = 5 - integer, parameter :: id_BCARY = 6 - integer, parameter :: id_BENZENE = 7 - integer, parameter :: id_BENZOOH = 8 - integer, parameter :: id_BEPOMUC = 9 - integer, parameter :: id_BIGALD = 10 - integer, parameter :: id_BIGALD1 = 11 - integer, parameter :: id_BIGALD2 = 12 - integer, parameter :: id_BIGALD3 = 13 - integer, parameter :: id_BIGALD4 = 14 - integer, parameter :: id_BIGALK = 15 - integer, parameter :: id_BIGENE = 16 - integer, parameter :: id_BR = 17 - integer, parameter :: id_BRCL = 18 - integer, parameter :: id_BRO = 19 - integer, parameter :: id_BRONO2 = 20 - integer, parameter :: id_BRY = 21 - integer, parameter :: id_BZALD = 22 - integer, parameter :: id_BZOOH = 23 - integer, parameter :: id_C2H2 = 24 - integer, parameter :: id_C2H4 = 25 - integer, parameter :: id_C2H5OH = 26 - integer, parameter :: id_C2H5OOH = 27 - integer, parameter :: id_C2H6 = 28 - integer, parameter :: id_C3H6 = 29 - integer, parameter :: id_C3H7OOH = 30 - integer, parameter :: id_C3H8 = 31 - integer, parameter :: id_C6H5OOH = 32 - integer, parameter :: id_CCL4 = 33 - integer, parameter :: id_CF2CLBR = 34 - integer, parameter :: id_CF3BR = 35 - integer, parameter :: id_CFC11 = 36 - integer, parameter :: id_CFC113 = 37 - integer, parameter :: id_CFC114 = 38 - integer, parameter :: id_CFC115 = 39 - integer, parameter :: id_CFC12 = 40 - integer, parameter :: id_CH2BR2 = 41 - integer, parameter :: id_CH2O = 42 - integer, parameter :: id_CH3BR = 43 - integer, parameter :: id_CH3CCL3 = 44 - integer, parameter :: id_CH3CHO = 45 - integer, parameter :: id_CH3CL = 46 - integer, parameter :: id_CH3CN = 47 - integer, parameter :: id_CH3COCH3 = 48 - integer, parameter :: id_CH3COCHO = 49 - integer, parameter :: id_CH3COOH = 50 - integer, parameter :: id_CH3COOOH = 51 - integer, parameter :: id_CH3OH = 52 - integer, parameter :: id_CH3OOH = 53 - integer, parameter :: id_CH4 = 54 - integer, parameter :: id_CHBR3 = 55 - integer, parameter :: id_CL = 56 - integer, parameter :: id_CL2 = 57 - integer, parameter :: id_CL2O2 = 58 - integer, parameter :: id_CLO = 59 - integer, parameter :: id_CLONO2 = 60 - integer, parameter :: id_CLY = 61 - integer, parameter :: id_CO = 62 - integer, parameter :: id_CO2 = 63 - integer, parameter :: id_COF2 = 64 - integer, parameter :: id_COFCL = 65 - integer, parameter :: id_CRESOL = 66 - integer, parameter :: id_DMS = 67 - integer, parameter :: id_dst_a1 = 68 - integer, parameter :: id_dst_a2 = 69 - integer, parameter :: id_dst_a3 = 70 - integer, parameter :: id_E90 = 71 - integer, parameter :: id_EOOH = 72 - integer, parameter :: id_F = 73 - integer, parameter :: id_GLYALD = 74 - integer, parameter :: id_GLYOXAL = 75 - integer, parameter :: id_H = 76 - integer, parameter :: id_H2 = 77 - integer, parameter :: id_H2402 = 78 - integer, parameter :: id_H2O2 = 79 - integer, parameter :: id_H2SO4 = 80 - integer, parameter :: id_HBR = 81 - integer, parameter :: id_HCFC141B = 82 - integer, parameter :: id_HCFC142B = 83 - integer, parameter :: id_HCFC22 = 84 - integer, parameter :: id_HCL = 85 - integer, parameter :: id_HCN = 86 - integer, parameter :: id_HCOOH = 87 - integer, parameter :: id_HF = 88 - integer, parameter :: id_HNO3 = 89 - integer, parameter :: id_HO2NO2 = 90 - integer, parameter :: id_HOBR = 91 - integer, parameter :: id_HOCL = 92 - integer, parameter :: id_HONITR = 93 - integer, parameter :: id_HPALD = 94 - integer, parameter :: id_HYAC = 95 - integer, parameter :: id_HYDRALD = 96 - integer, parameter :: id_IEPOX = 97 - integer, parameter :: id_ISOP = 98 - integer, parameter :: id_ISOPNITA = 99 - integer, parameter :: id_ISOPNITB = 100 - integer, parameter :: id_ISOPNO3 = 101 - integer, parameter :: id_ISOPNOOH = 102 - integer, parameter :: id_ISOPOOH = 103 - integer, parameter :: id_IVOC = 104 - integer, parameter :: id_MACR = 105 - integer, parameter :: id_MACROOH = 106 - integer, parameter :: id_MEK = 107 - integer, parameter :: id_MEKOOH = 108 - integer, parameter :: id_MPAN = 109 - integer, parameter :: id_MTERP = 110 - integer, parameter :: id_MVK = 111 - integer, parameter :: id_N = 112 - integer, parameter :: id_N2O = 113 - integer, parameter :: id_N2O5 = 114 - integer, parameter :: id_NC4CH2OH = 115 - integer, parameter :: id_NC4CHO = 116 - integer, parameter :: id_ncl_a1 = 117 - integer, parameter :: id_ncl_a2 = 118 - integer, parameter :: id_ncl_a3 = 119 - integer, parameter :: id_NH3 = 120 - integer, parameter :: id_NH4 = 121 - integer, parameter :: id_NH_5 = 122 - integer, parameter :: id_NH_50 = 123 - integer, parameter :: id_NO = 124 - integer, parameter :: id_NO2 = 125 - integer, parameter :: id_NO3 = 126 - integer, parameter :: id_NOA = 127 - integer, parameter :: id_NTERPOOH = 128 - integer, parameter :: id_num_a1 = 129 - integer, parameter :: id_num_a2 = 130 - integer, parameter :: id_num_a3 = 131 - integer, parameter :: id_num_a4 = 132 - integer, parameter :: id_num_a5 = 133 - integer, parameter :: id_O = 134 - integer, parameter :: id_O3 = 135 - integer, parameter :: id_O3S = 136 - integer, parameter :: id_OCLO = 137 - integer, parameter :: id_OCS = 138 - integer, parameter :: id_ONITR = 139 - integer, parameter :: id_PAN = 140 - integer, parameter :: id_PBZNIT = 141 - integer, parameter :: id_PHENO = 142 - integer, parameter :: id_PHENOL = 143 - integer, parameter :: id_PHENOOH = 144 - integer, parameter :: id_pom_a1 = 145 - integer, parameter :: id_pom_a4 = 146 - integer, parameter :: id_POOH = 147 - integer, parameter :: id_ROOH = 148 - integer, parameter :: id_S = 149 - integer, parameter :: id_SF6 = 150 - integer, parameter :: id_SO = 151 - integer, parameter :: id_SO2 = 152 - integer, parameter :: id_SO3 = 153 - integer, parameter :: id_so4_a1 = 154 - integer, parameter :: id_so4_a2 = 155 - integer, parameter :: id_so4_a3 = 156 - integer, parameter :: id_so4_a5 = 157 - integer, parameter :: id_soa1_a1 = 158 - integer, parameter :: id_soa1_a2 = 159 - integer, parameter :: id_soa2_a1 = 160 - integer, parameter :: id_soa2_a2 = 161 - integer, parameter :: id_soa3_a1 = 162 - integer, parameter :: id_soa3_a2 = 163 - integer, parameter :: id_soa4_a1 = 164 - integer, parameter :: id_soa4_a2 = 165 - integer, parameter :: id_soa5_a1 = 166 - integer, parameter :: id_soa5_a2 = 167 - integer, parameter :: id_SOAG0 = 168 - integer, parameter :: id_SOAG1 = 169 - integer, parameter :: id_SOAG2 = 170 - integer, parameter :: id_SOAG3 = 171 - integer, parameter :: id_SOAG4 = 172 - integer, parameter :: id_ST80_25 = 173 - integer, parameter :: id_SVOC = 174 - integer, parameter :: id_TEPOMUC = 175 - integer, parameter :: id_TERP2OOH = 176 - integer, parameter :: id_TERPNIT = 177 - integer, parameter :: id_TERPOOH = 178 - integer, parameter :: id_TERPROD1 = 179 - integer, parameter :: id_TERPROD2 = 180 - integer, parameter :: id_TOLOOH = 181 - integer, parameter :: id_TOLUENE = 182 - integer, parameter :: id_XOOH = 183 - integer, parameter :: id_XYLENES = 184 - integer, parameter :: id_XYLENOOH = 185 - integer, parameter :: id_XYLOL = 186 - integer, parameter :: id_XYLOLOOH = 187 - integer, parameter :: id_NHDEP = 188 - integer, parameter :: id_NDEP = 189 - integer, parameter :: id_ACBZO2 = 190 - integer, parameter :: id_ALKO2 = 191 - integer, parameter :: id_BCARYO2VBS = 192 - integer, parameter :: id_BENZO2 = 193 - integer, parameter :: id_BENZO2VBS = 194 - integer, parameter :: id_BZOO = 195 - integer, parameter :: id_C2H5O2 = 196 - integer, parameter :: id_C3H7O2 = 197 - integer, parameter :: id_C6H5O2 = 198 - integer, parameter :: id_CH3CO3 = 199 - integer, parameter :: id_CH3O2 = 200 - integer, parameter :: id_DICARBO2 = 201 - integer, parameter :: id_ENEO2 = 202 - integer, parameter :: id_EO = 203 - integer, parameter :: id_EO2 = 204 - integer, parameter :: id_HO2 = 205 - integer, parameter :: id_HOCH2OO = 206 - integer, parameter :: id_ISOPAO2 = 207 - integer, parameter :: id_ISOPBO2 = 208 - integer, parameter :: id_ISOPO2VBS = 209 - integer, parameter :: id_IVOCO2VBS = 210 - integer, parameter :: id_MACRO2 = 211 - integer, parameter :: id_MALO2 = 212 - integer, parameter :: id_MCO3 = 213 - integer, parameter :: id_MDIALO2 = 214 - integer, parameter :: id_MEKO2 = 215 - integer, parameter :: id_MTERPO2VBS = 216 - integer, parameter :: id_NTERPO2 = 217 - integer, parameter :: id_O1D = 218 - integer, parameter :: id_OH = 219 - integer, parameter :: id_PHENO2 = 220 - integer, parameter :: id_PO2 = 221 - integer, parameter :: id_RO2 = 222 - integer, parameter :: id_TERP2O2 = 223 - integer, parameter :: id_TERPO2 = 224 - integer, parameter :: id_TOLO2 = 225 - integer, parameter :: id_TOLUO2VBS = 226 - integer, parameter :: id_XO2 = 227 - integer, parameter :: id_XYLENO2 = 228 - integer, parameter :: id_XYLEO2VBS = 229 - integer, parameter :: id_XYLOLO2 = 230 - integer, parameter :: id_H2O = 231 - end module m_spc_id diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lin_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_lin_matrix.F90 deleted file mode 100644 index eaaa3cf0ce..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lin_matrix.F90 +++ /dev/null @@ -1,655 +0,0 @@ - module mo_lin_matrix - use chem_mods, only: veclen - private - public :: linmat - contains - subroutine linmat01( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k - do k = 1,avec_len - mat(k,634) = -( rxt(k,19) + het_rates(k,1) ) - mat(k,668) = -( rxt(k,20) + het_rates(k,2) ) - mat(k,1) = -( het_rates(k,3) ) - mat(k,2) = -( het_rates(k,4) ) - mat(k,3) = -( het_rates(k,5) ) - mat(k,1001) = -( het_rates(k,6) ) - mat(k,164) = -( het_rates(k,7) ) - mat(k,417) = -( rxt(k,21) + het_rates(k,8) ) - mat(k,170) = -( rxt(k,22) + het_rates(k,9) ) - mat(k,381) = -( rxt(k,23) + het_rates(k,10) ) - mat(k,462) = -( rxt(k,24) + het_rates(k,11) ) - mat(k,418) = .500_r8*rxt(k,21) - mat(k,171) = rxt(k,22) - mat(k,655) = .200_r8*rxt(k,70) - mat(k,693) = .060_r8*rxt(k,72) - mat(k,281) = -( rxt(k,25) + het_rates(k,12) ) - mat(k,654) = .200_r8*rxt(k,70) - mat(k,691) = .200_r8*rxt(k,72) - mat(k,592) = -( rxt(k,26) + het_rates(k,13) ) - mat(k,224) = rxt(k,46) - mat(k,1071) = rxt(k,56) - mat(k,656) = .200_r8*rxt(k,70) - mat(k,694) = .150_r8*rxt(k,72) - mat(k,322) = -( rxt(k,27) + het_rates(k,14) ) - mat(k,692) = .210_r8*rxt(k,72) - mat(k,228) = -( het_rates(k,15) ) - mat(k,351) = -( het_rates(k,16) ) - mat(k,1417) = -( het_rates(k,17) ) - mat(k,232) = rxt(k,74) - mat(k,2152) = rxt(k,75) - mat(k,560) = rxt(k,77) - mat(k,145) = rxt(k,79) - mat(k,151) = rxt(k,80) - mat(k,470) = 2.000_r8*rxt(k,86) - mat(k,597) = rxt(k,87) - mat(k,388) = 3.000_r8*rxt(k,90) - mat(k,109) = 2.000_r8*rxt(k,98) - mat(k,807) = rxt(k,99) - mat(k,781) = rxt(k,105) - mat(k,231) = -( rxt(k,74) + het_rates(k,18) ) - mat(k,2166) = -( rxt(k,75) + het_rates(k,19) ) - mat(k,564) = rxt(k,76) - mat(k,558) = -( rxt(k,76) + rxt(k,77) + rxt(k,524) + rxt(k,527) + rxt(k,532) & - + het_rates(k,20) ) - mat(k,4) = -( het_rates(k,21) ) - mat(k,237) = -( het_rates(k,22) ) - mat(k,337) = rxt(k,28) - mat(k,338) = -( rxt(k,28) + het_rates(k,23) ) - mat(k,293) = -( het_rates(k,24) ) - mat(k,550) = -( het_rates(k,25) ) - mat(k,263) = -( het_rates(k,26) ) - mat(k,343) = -( rxt(k,29) + het_rates(k,27) ) - mat(k,306) = -( het_rates(k,28) ) - mat(k,1026) = -( het_rates(k,29) ) - mat(k,1328) = .700_r8*rxt(k,55) - mat(k,411) = -( rxt(k,30) + het_rates(k,30) ) - mat(k,111) = -( het_rates(k,31) ) - mat(k,267) = -( rxt(k,31) + het_rates(k,32) ) - mat(k,101) = -( rxt(k,78) + het_rates(k,33) ) - mat(k,143) = -( rxt(k,79) + het_rates(k,34) ) - mat(k,148) = -( rxt(k,80) + het_rates(k,35) ) - mat(k,115) = -( rxt(k,81) + het_rates(k,36) ) - mat(k,153) = -( rxt(k,82) + het_rates(k,37) ) - mat(k,119) = -( rxt(k,83) + het_rates(k,38) ) - mat(k,158) = -( rxt(k,84) + het_rates(k,39) ) - mat(k,123) = -( rxt(k,85) + het_rates(k,40) ) - mat(k,469) = -( rxt(k,86) + het_rates(k,41) ) - mat(k,1487) = -( rxt(k,32) + rxt(k,33) + het_rates(k,42) ) - mat(k,640) = .100_r8*rxt(k,19) - mat(k,675) = .100_r8*rxt(k,20) - mat(k,458) = rxt(k,38) - mat(k,1435) = .180_r8*rxt(k,39) - mat(k,1100) = rxt(k,43) - mat(k,1159) = .330_r8*rxt(k,45) - mat(k,1145) = rxt(k,47) - mat(k,741) = rxt(k,49) - mat(k,1216) = 1.340_r8*rxt(k,50) - mat(k,862) = rxt(k,57) - mat(k,546) = rxt(k,62) - mat(k,402) = rxt(k,63) - mat(k,651) = .375_r8*rxt(k,65) - mat(k,480) = .400_r8*rxt(k,67) - mat(k,1065) = .680_r8*rxt(k,69) - mat(k,445) = rxt(k,269) - mat(k,273) = 2.000_r8*rxt(k,299) - mat(k,596) = -( rxt(k,87) + het_rates(k,43) ) - mat(k,127) = -( rxt(k,88) + het_rates(k,44) ) - mat(k,1087) = -( rxt(k,34) + het_rates(k,45) ) - mat(k,638) = .400_r8*rxt(k,19) - mat(k,673) = .400_r8*rxt(k,20) - mat(k,345) = rxt(k,29) - mat(k,1150) = .330_r8*rxt(k,45) - mat(k,319) = rxt(k,53) - mat(k,544) = rxt(k,62) - mat(k,367) = -( rxt(k,89) + het_rates(k,46) ) - mat(k,104) = -( het_rates(k,47) ) - mat(k,924) = -( rxt(k,35) + het_rates(k,48) ) - mat(k,637) = .250_r8*rxt(k,19) - mat(k,672) = .250_r8*rxt(k,20) - mat(k,413) = .820_r8*rxt(k,30) - mat(k,1149) = .170_r8*rxt(k,45) - mat(k,646) = .300_r8*rxt(k,65) - mat(k,478) = .050_r8*rxt(k,67) - mat(k,1060) = .500_r8*rxt(k,69) - mat(k,1223) = -( rxt(k,36) + het_rates(k,49) ) - mat(k,384) = .180_r8*rxt(k,23) - mat(k,324) = rxt(k,27) - mat(k,664) = .400_r8*rxt(k,70) - mat(k,702) = .540_r8*rxt(k,72) - mat(k,432) = .510_r8*rxt(k,73) - mat(k,686) = -( het_rates(k,50) ) - mat(k,612) = -( rxt(k,37) + het_rates(k,51) ) - mat(k,799) = -( het_rates(k,52) ) - mat(k,456) = -( rxt(k,38) + het_rates(k,53) ) - mat(k,1432) = -( rxt(k,39) + rxt(k,40) + het_rates(k,54) ) - mat(k,387) = -( rxt(k,90) + het_rates(k,55) ) - mat(k,2009) = -( het_rates(k,56) ) - mat(k,233) = rxt(k,74) - mat(k,103) = 4.000_r8*rxt(k,78) - mat(k,147) = rxt(k,79) - mat(k,118) = 2.000_r8*rxt(k,81) - mat(k,157) = 2.000_r8*rxt(k,82) - mat(k,122) = 2.000_r8*rxt(k,83) - mat(k,162) = rxt(k,84) - mat(k,126) = 2.000_r8*rxt(k,85) - mat(k,129) = 3.000_r8*rxt(k,88) - mat(k,371) = rxt(k,89) - mat(k,180) = 2.000_r8*rxt(k,91) - mat(k,97) = 2.000_r8*rxt(k,92) - mat(k,1725) = rxt(k,93) - mat(k,907) = rxt(k,94) - mat(k,251) = rxt(k,97) - mat(k,247) = rxt(k,100) - mat(k,257) = rxt(k,101) - mat(k,304) = rxt(k,102) - mat(k,2139) = rxt(k,103) - mat(k,818) = rxt(k,106) - mat(k,179) = -( rxt(k,91) + het_rates(k,57) ) - mat(k,95) = -( rxt(k,92) + rxt(k,210) + het_rates(k,58) ) - mat(k,1720) = -( rxt(k,93) + het_rates(k,59) ) - mat(k,904) = rxt(k,95) - mat(k,330) = rxt(k,107) - mat(k,96) = 2.000_r8*rxt(k,210) - mat(k,901) = -( rxt(k,94) + rxt(k,95) + rxt(k,526) + rxt(k,531) + rxt(k,537) & - + het_rates(k,60) ) - mat(k,5) = -( het_rates(k,61) ) - mat(k,1125) = -( het_rates(k,62) ) - mat(k,172) = 1.500_r8*rxt(k,22) - mat(k,383) = .450_r8*rxt(k,23) - mat(k,594) = .600_r8*rxt(k,26) - mat(k,323) = rxt(k,27) - mat(k,1481) = rxt(k,32) + rxt(k,33) - mat(k,1088) = rxt(k,34) - mat(k,1222) = rxt(k,36) - mat(k,1430) = .380_r8*rxt(k,39) - mat(k,804) = rxt(k,41) - mat(k,1099) = rxt(k,43) - mat(k,982) = 2.000_r8*rxt(k,44) - mat(k,1152) = .330_r8*rxt(k,45) - mat(k,1210) = 1.340_r8*rxt(k,51) - mat(k,1330) = .700_r8*rxt(k,55) - mat(k,202) = 1.500_r8*rxt(k,64) - mat(k,650) = .250_r8*rxt(k,65) - mat(k,975) = rxt(k,68) - mat(k,1062) = 1.700_r8*rxt(k,69) - mat(k,362) = rxt(k,110) - mat(k,803) = -( rxt(k,41) + het_rates(k,63) ) - mat(k,613) = rxt(k,37) - mat(k,1428) = .440_r8*rxt(k,39) - mat(k,527) = .400_r8*rxt(k,60) - mat(k,645) = rxt(k,65) - mat(k,1059) = .800_r8*rxt(k,69) - mat(k,240) = -( rxt(k,96) + het_rates(k,64) ) - mat(k,144) = rxt(k,79) - mat(k,149) = rxt(k,80) - mat(k,154) = rxt(k,82) - mat(k,120) = 2.000_r8*rxt(k,83) - mat(k,159) = 2.000_r8*rxt(k,84) - mat(k,124) = rxt(k,85) - mat(k,108) = 2.000_r8*rxt(k,98) - mat(k,252) = rxt(k,101) - mat(k,299) = rxt(k,102) - mat(k,248) = -( rxt(k,97) + het_rates(k,65) ) - mat(k,116) = rxt(k,81) - mat(k,155) = rxt(k,82) - mat(k,244) = rxt(k,100) - mat(k,196) = -( het_rates(k,66) ) - mat(k,284) = -( het_rates(k,67) ) - mat(k,6) = -( het_rates(k,68) ) - mat(k,7) = -( het_rates(k,69) ) - mat(k,8) = -( het_rates(k,70) ) - mat(k,9) = -( rxt(k,124) + het_rates(k,71) ) - mat(k,131) = -( rxt(k,42) + het_rates(k,72) ) - mat(k,866) = -( het_rates(k,73) ) - mat(k,150) = rxt(k,80) - mat(k,160) = rxt(k,84) - mat(k,241) = 2.000_r8*rxt(k,96) - mat(k,249) = rxt(k,97) - mat(k,291) = rxt(k,104) - mat(k,1098) = -( rxt(k,43) + het_rates(k,74) ) - mat(k,1151) = .330_r8*rxt(k,45) - mat(k,648) = .250_r8*rxt(k,65) - mat(k,272) = rxt(k,300) - end do - end subroutine linmat01 - subroutine linmat02( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k - do k = 1,avec_len - mat(k,981) = -( rxt(k,44) + rxt(k,480) + het_rates(k,75) ) - mat(k,420) = rxt(k,21) - mat(k,382) = .130_r8*rxt(k,23) - mat(k,334) = .700_r8*rxt(k,61) - mat(k,662) = .600_r8*rxt(k,70) - mat(k,700) = .340_r8*rxt(k,72) - mat(k,431) = .170_r8*rxt(k,73) - mat(k,1447) = -( rxt(k,138) + het_rates(k,76) ) - mat(k,2271) = rxt(k,2) + 2.000_r8*rxt(k,3) - mat(k,1485) = 2.000_r8*rxt(k,33) - mat(k,457) = rxt(k,38) - mat(k,1433) = .330_r8*rxt(k,39) + rxt(k,40) - mat(k,808) = rxt(k,99) - mat(k,2129) = rxt(k,103) - mat(k,292) = rxt(k,104) - mat(k,1403) = -( het_rates(k,77) ) - mat(k,2268) = rxt(k,1) - mat(k,1482) = rxt(k,32) - mat(k,1431) = 1.440_r8*rxt(k,39) - mat(k,107) = -( rxt(k,98) + het_rates(k,78) ) - mat(k,605) = -( rxt(k,4) + het_rates(k,79) ) - mat(k,134) = -( rxt(k,109) + het_rates(k,80) ) - mat(k,806) = -( rxt(k,99) + het_rates(k,81) ) - mat(k,243) = -( rxt(k,100) + het_rates(k,82) ) - mat(k,253) = -( rxt(k,101) + het_rates(k,83) ) - mat(k,300) = -( rxt(k,102) + het_rates(k,84) ) - mat(k,2141) = -( rxt(k,103) + het_rates(k,85) ) - mat(k,181) = -( het_rates(k,86) ) - mat(k,931) = -( het_rates(k,87) ) - mat(k,290) = -( rxt(k,104) + het_rates(k,88) ) - mat(k,1465) = -( rxt(k,9) + het_rates(k,89) ) - mat(k,1158) = rxt(k,482) - mat(k,587) = rxt(k,483) - mat(k,539) = rxt(k,484) - mat(k,276) = 2.000_r8*rxt(k,485) + 2.000_r8*rxt(k,522) + 2.000_r8*rxt(k,525) & - + 2.000_r8*rxt(k,536) - mat(k,378) = rxt(k,486) - mat(k,1079) = rxt(k,487) - mat(k,1961) = .500_r8*rxt(k,489) - mat(k,1773) = rxt(k,490) - mat(k,396) = rxt(k,491) - mat(k,235) = rxt(k,492) - mat(k,621) = rxt(k,493) - mat(k,561) = rxt(k,524) + rxt(k,527) + rxt(k,532) - mat(k,902) = rxt(k,526) + rxt(k,531) + rxt(k,537) - mat(k,423) = -( rxt(k,10) + rxt(k,11) + rxt(k,173) + het_rates(k,90) ) - mat(k,780) = -( rxt(k,105) + het_rates(k,91) ) - mat(k,559) = rxt(k,524) + rxt(k,527) + rxt(k,532) - mat(k,815) = -( rxt(k,106) + het_rates(k,92) ) - mat(k,900) = rxt(k,526) + rxt(k,531) + rxt(k,537) - mat(k,1155) = -( rxt(k,45) + rxt(k,482) + het_rates(k,93) ) - mat(k,223) = -( rxt(k,46) + het_rates(k,94) ) - mat(k,1274) = rxt(k,373) - mat(k,1142) = -( rxt(k,47) + het_rates(k,95) ) - mat(k,1154) = .170_r8*rxt(k,45) - mat(k,348) = -( het_rates(k,96) ) - mat(k,137) = -( het_rates(k,97) ) - mat(k,836) = -( het_rates(k,98) ) - mat(k,583) = -( rxt(k,483) + het_rates(k,99) ) - mat(k,534) = -( rxt(k,484) + het_rates(k,100) ) - mat(k,1195) = -( het_rates(k,101) ) - mat(k,405) = -( rxt(k,48) + het_rates(k,102) ) - mat(k,737) = -( rxt(k,49) + het_rates(k,103) ) - mat(k,406) = rxt(k,48) - mat(k,76) = -( het_rates(k,104) ) - mat(k,1211) = -( rxt(k,50) + rxt(k,51) + het_rates(k,105) ) - mat(k,739) = .300_r8*rxt(k,49) - mat(k,312) = -( het_rates(k,106) ) - mat(k,508) = -( rxt(k,52) + het_rates(k,107) ) - mat(k,633) = .800_r8*rxt(k,19) - mat(k,667) = .800_r8*rxt(k,20) - mat(k,317) = -( rxt(k,53) + het_rates(k,108) ) - mat(k,574) = -( rxt(k,54) + rxt(k,355) + het_rates(k,109) ) - mat(k,950) = -( het_rates(k,110) ) - mat(k,1334) = -( rxt(k,55) + het_rates(k,111) ) - mat(k,740) = .700_r8*rxt(k,49) - mat(k,493) = -( rxt(k,155) + het_rates(k,112) ) - mat(k,1865) = rxt(k,15) - mat(k,185) = -( rxt(k,12) + het_rates(k,113) ) - mat(k,275) = -( rxt(k,13) + rxt(k,14) + rxt(k,174) + rxt(k,485) + rxt(k,522) & - + rxt(k,525) + rxt(k,536) + het_rates(k,114) ) - mat(k,375) = -( rxt(k,486) + het_rates(k,115) ) - mat(k,1075) = -( rxt(k,56) + rxt(k,487) + het_rates(k,116) ) - mat(k,10) = -( het_rates(k,117) ) - mat(k,11) = -( het_rates(k,118) ) - mat(k,12) = -( het_rates(k,119) ) - mat(k,98) = -( het_rates(k,120) ) - mat(k,13) = -( rxt(k,488) + het_rates(k,121) ) - mat(k,14) = -( rxt(k,540) + het_rates(k,122) ) - mat(k,15) = -( rxt(k,539) + het_rates(k,123) ) - mat(k,1924) = -( rxt(k,15) + het_rates(k,124) ) - mat(k,278) = rxt(k,14) - mat(k,1968) = rxt(k,16) + .500_r8*rxt(k,489) - mat(k,1780) = rxt(k,17) - mat(k,497) = rxt(k,155) - mat(k,1969) = -( rxt(k,16) + rxt(k,489) + het_rates(k,125) ) - mat(k,1471) = rxt(k,9) - mat(k,426) = rxt(k,11) + rxt(k,173) - mat(k,279) = rxt(k,13) + rxt(k,174) - mat(k,1781) = rxt(k,18) - mat(k,642) = rxt(k,19) - mat(k,1164) = rxt(k,45) - mat(k,409) = rxt(k,48) - mat(k,581) = rxt(k,54) + rxt(k,355) - mat(k,1084) = rxt(k,56) - mat(k,864) = rxt(k,57) - mat(k,398) = rxt(k,58) - mat(k,236) = rxt(k,59) - mat(k,533) = .600_r8*rxt(k,60) + rxt(k,306) - mat(k,623) = rxt(k,66) - mat(k,563) = rxt(k,76) - mat(k,906) = rxt(k,95) - mat(k,142) = rxt(k,430) - mat(k,1778) = -( rxt(k,17) + rxt(k,18) + rxt(k,490) + het_rates(k,126) ) - mat(k,425) = rxt(k,10) - mat(k,277) = rxt(k,13) + rxt(k,14) + rxt(k,174) - mat(k,531) = .400_r8*rxt(k,60) - mat(k,562) = rxt(k,77) - mat(k,905) = rxt(k,94) - mat(k,859) = -( rxt(k,57) + het_rates(k,127) ) - mat(k,393) = -( rxt(k,58) + rxt(k,491) + het_rates(k,128) ) - mat(k,16) = -( het_rates(k,129) ) - mat(k,17) = -( het_rates(k,130) ) - mat(k,18) = -( het_rates(k,131) ) - mat(k,19) = -( het_rates(k,132) ) - mat(k,20) = -( het_rates(k,133) ) - mat(k,2198) = -( rxt(k,132) + het_rates(k,134) ) - mat(k,2285) = rxt(k,3) - mat(k,2259) = rxt(k,8) - mat(k,280) = rxt(k,14) - mat(k,1930) = rxt(k,15) - mat(k,1974) = rxt(k,16) - mat(k,1786) = rxt(k,18) - mat(k,1443) = .180_r8*rxt(k,39) - mat(k,805) = rxt(k,41) - mat(k,2167) = rxt(k,75) - mat(k,1729) = rxt(k,93) - mat(k,331) = rxt(k,107) - mat(k,1244) = rxt(k,111) + rxt(k,473) - mat(k,857) = rxt(k,112) - mat(k,261) = rxt(k,113) - mat(k,1539) = rxt(k,127) + rxt(k,128) - mat(k,499) = rxt(k,155) - mat(k,517) = rxt(k,466) - mat(k,2260) = -( rxt(k,7) + rxt(k,8) + het_rates(k,135) ) - mat(k,2199) = rxt(k,132) - mat(k,21) = -( het_rates(k,136) ) - mat(k,327) = -( rxt(k,107) + het_rates(k,137) ) - mat(k,359) = -( rxt(k,110) + het_rates(k,138) ) - mat(k,234) = -( rxt(k,59) + rxt(k,492) + het_rates(k,139) ) - mat(k,526) = -( rxt(k,60) + rxt(k,306) + het_rates(k,140) ) - mat(k,140) = -( rxt(k,430) + het_rates(k,141) ) - mat(k,465) = -( het_rates(k,142) ) - mat(k,268) = rxt(k,31) - mat(k,174) = -( het_rates(k,143) ) - mat(k,332) = -( rxt(k,61) + het_rates(k,144) ) - mat(k,22) = -( het_rates(k,145) ) - mat(k,23) = -( het_rates(k,146) ) - mat(k,542) = -( rxt(k,62) + het_rates(k,147) ) - mat(k,399) = -( rxt(k,63) + het_rates(k,148) ) - mat(k,513) = -( rxt(k,466) + het_rates(k,149) ) - mat(k,360) = rxt(k,110) - mat(k,1232) = rxt(k,111) - mat(k,24) = -( rxt(k,108) + het_rates(k,150) ) - mat(k,1234) = -( rxt(k,111) + rxt(k,473) + het_rates(k,151) ) - mat(k,854) = rxt(k,112) - mat(k,514) = rxt(k,466) - mat(k,853) = -( rxt(k,112) + het_rates(k,152) ) - mat(k,260) = rxt(k,113) - mat(k,1233) = rxt(k,473) - mat(k,259) = -( rxt(k,113) + het_rates(k,153) ) - mat(k,135) = rxt(k,109) - mat(k,25) = -( het_rates(k,154) ) - mat(k,26) = -( het_rates(k,155) ) - mat(k,27) = -( het_rates(k,156) ) - mat(k,28) = -( het_rates(k,157) ) - mat(k,29) = -( rxt(k,114) + het_rates(k,158) ) - mat(k,30) = -( rxt(k,115) + het_rates(k,159) ) - mat(k,31) = -( rxt(k,116) + het_rates(k,160) ) - mat(k,32) = -( rxt(k,117) + het_rates(k,161) ) - mat(k,33) = -( rxt(k,118) + het_rates(k,162) ) - mat(k,34) = -( rxt(k,119) + het_rates(k,163) ) - mat(k,35) = -( rxt(k,120) + het_rates(k,164) ) - mat(k,36) = -( rxt(k,121) + het_rates(k,165) ) - mat(k,37) = -( rxt(k,122) + het_rates(k,166) ) - mat(k,38) = -( rxt(k,123) + het_rates(k,167) ) - mat(k,39) = -( het_rates(k,168) ) - mat(k,979) = rxt(k,480) - mat(k,40) = -( het_rates(k,169) ) - mat(k,41) = -( het_rates(k,170) ) - mat(k,42) = -( het_rates(k,171) ) - mat(k,43) = -( het_rates(k,172) ) - mat(k,44) = -( rxt(k,541) + het_rates(k,173) ) - mat(k,50) = -( het_rates(k,174) ) - mat(k,201) = -( rxt(k,64) + het_rates(k,175) ) - mat(k,644) = -( rxt(k,65) + het_rates(k,176) ) - mat(k,619) = -( rxt(k,66) + rxt(k,493) + het_rates(k,177) ) - mat(k,476) = -( rxt(k,67) + het_rates(k,178) ) - mat(k,971) = -( rxt(k,68) + het_rates(k,179) ) - mat(k,394) = rxt(k,58) - mat(k,620) = rxt(k,66) - mat(k,479) = rxt(k,67) - end do - end subroutine linmat02 - subroutine linmat03( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k - do k = 1,avec_len - mat(k,1061) = -( rxt(k,69) + het_rates(k,180) ) - mat(k,647) = rxt(k,65) - mat(k,973) = rxt(k,68) - mat(k,657) = -( rxt(k,70) + het_rates(k,181) ) - mat(k,189) = -( het_rates(k,182) ) - mat(k,205) = -( rxt(k,71) + het_rates(k,183) ) - mat(k,210) = -( het_rates(k,184) ) - mat(k,695) = -( rxt(k,72) + het_rates(k,185) ) - mat(k,218) = -( het_rates(k,186) ) - mat(k,429) = -( rxt(k,73) + het_rates(k,187) ) - mat(k,520) = -( het_rates(k,190) ) - mat(k,141) = rxt(k,430) - mat(k,889) = -( het_rates(k,191) ) - mat(k,56) = -( het_rates(k,192) ) - mat(k,485) = -( het_rates(k,193) ) - mat(k,62) = -( het_rates(k,194) ) - mat(k,437) = -( het_rates(k,195) ) - mat(k,825) = -( het_rates(k,196) ) - mat(k,510) = rxt(k,52) - mat(k,789) = -( het_rates(k,197) ) - mat(k,627) = -( het_rates(k,198) ) - mat(k,1388) = -( het_rates(k,199) ) - mat(k,385) = .130_r8*rxt(k,23) - mat(k,325) = rxt(k,27) - mat(k,926) = rxt(k,35) - mat(k,1224) = rxt(k,36) - mat(k,1157) = .330_r8*rxt(k,45) - mat(k,1144) = rxt(k,47) - mat(k,1215) = 1.340_r8*rxt(k,50) - mat(k,511) = rxt(k,52) - mat(k,320) = rxt(k,53) - mat(k,1336) = .300_r8*rxt(k,55) - mat(k,861) = rxt(k,57) - mat(k,528) = .600_r8*rxt(k,60) + rxt(k,306) - mat(k,401) = rxt(k,63) - mat(k,203) = .500_r8*rxt(k,64) - mat(k,1064) = .650_r8*rxt(k,69) - mat(k,1831) = -( het_rates(k,200) ) - mat(k,1093) = rxt(k,34) - mat(k,928) = rxt(k,35) - mat(k,617) = rxt(k,37) - mat(k,1439) = rxt(k,40) - mat(k,1342) = .300_r8*rxt(k,55) - mat(k,532) = .400_r8*rxt(k,60) - mat(k,600) = rxt(k,87) - mat(k,370) = rxt(k,89) - mat(k,761) = -( het_rates(k,201) ) - mat(k,282) = .600_r8*rxt(k,25) - mat(k,566) = -( het_rates(k,202) ) - mat(k,271) = -( rxt(k,299) + rxt(k,300) + het_rates(k,203) ) - mat(k,132) = rxt(k,42) - mat(k,708) = -( het_rates(k,204) ) - mat(k,2117) = -( rxt(k,481) + het_rates(k,205) ) - mat(k,427) = rxt(k,11) + rxt(k,173) - mat(k,643) = rxt(k,19) - mat(k,677) = .900_r8*rxt(k,20) - mat(k,422) = rxt(k,21) - mat(k,173) = 1.500_r8*rxt(k,22) - mat(k,386) = .560_r8*rxt(k,23) - mat(k,464) = rxt(k,24) - mat(k,283) = .600_r8*rxt(k,25) - mat(k,595) = .600_r8*rxt(k,26) - mat(k,326) = rxt(k,27) - mat(k,342) = rxt(k,28) - mat(k,347) = rxt(k,29) - mat(k,415) = rxt(k,30) - mat(k,1094) = rxt(k,34) - mat(k,1228) = rxt(k,36) - mat(k,1102) = 2.000_r8*rxt(k,43) - mat(k,984) = 2.000_r8*rxt(k,44) - mat(k,1165) = .670_r8*rxt(k,45) - mat(k,227) = rxt(k,46) - mat(k,1147) = rxt(k,47) - mat(k,410) = rxt(k,48) - mat(k,743) = rxt(k,49) - mat(k,1218) = 1.340_r8*rxt(k,50) + .660_r8*rxt(k,51) - mat(k,1085) = rxt(k,56) - mat(k,336) = rxt(k,61) - mat(k,548) = rxt(k,62) - mat(k,204) = rxt(k,64) - mat(k,653) = rxt(k,65) - mat(k,624) = rxt(k,66) - mat(k,482) = rxt(k,67) - mat(k,978) = rxt(k,68) - mat(k,1068) = 1.200_r8*rxt(k,69) - mat(k,666) = rxt(k,70) - mat(k,705) = rxt(k,72) - mat(k,434) = rxt(k,73) - mat(k,1455) = rxt(k,138) - mat(k,448) = rxt(k,269) - mat(k,274) = rxt(k,299) + rxt(k,300) - mat(k,1302) = rxt(k,373) - mat(k,443) = -( rxt(k,269) + het_rates(k,206) ) - mat(k,1258) = -( het_rates(k,207) ) - mat(k,1290) = -( rxt(k,373) + het_rates(k,208) ) - mat(k,68) = -( het_rates(k,209) ) - mat(k,74) = -( het_rates(k,210) ) - mat(k,1313) = -( het_rates(k,211) ) - mat(k,715) = -( het_rates(k,212) ) - mat(k,463) = .600_r8*rxt(k,24) - mat(k,1356) = -( het_rates(k,213) ) - mat(k,1214) = .660_r8*rxt(k,50) - mat(k,577) = rxt(k,54) + rxt(k,355) - mat(k,875) = -( het_rates(k,214) ) - mat(k,593) = .600_r8*rxt(k,26) - mat(k,679) = -( het_rates(k,215) ) - mat(k,82) = -( het_rates(k,216) ) - mat(k,1047) = -( het_rates(k,217) ) - mat(k,1528) = -( rxt(k,127) + rxt(k,128) + het_rates(k,218) ) - mat(k,2274) = rxt(k,1) - mat(k,2248) = rxt(k,7) - mat(k,186) = rxt(k,12) - mat(k,1693) = -( het_rates(k,219) ) - mat(k,2275) = rxt(k,2) - mat(k,606) = 2.000_r8*rxt(k,4) - mat(k,1468) = rxt(k,9) - mat(k,424) = rxt(k,10) - mat(k,676) = rxt(k,20) - mat(k,421) = rxt(k,21) - mat(k,341) = rxt(k,28) - mat(k,346) = rxt(k,29) - mat(k,414) = rxt(k,30) - mat(k,270) = rxt(k,31) - mat(k,616) = rxt(k,37) - mat(k,459) = rxt(k,38) - mat(k,1437) = .330_r8*rxt(k,39) - mat(k,133) = rxt(k,42) - mat(k,226) = rxt(k,46) - mat(k,742) = rxt(k,49) - mat(k,321) = rxt(k,53) - mat(k,397) = rxt(k,58) - mat(k,335) = rxt(k,61) - mat(k,547) = rxt(k,62) - mat(k,403) = rxt(k,63) - mat(k,652) = rxt(k,65) - mat(k,481) = rxt(k,67) - mat(k,665) = rxt(k,70) - mat(k,207) = rxt(k,71) - mat(k,704) = rxt(k,72) - mat(k,433) = rxt(k,73) - mat(k,782) = rxt(k,105) - mat(k,816) = rxt(k,106) - mat(k,1964) = .500_r8*rxt(k,489) - mat(k,450) = -( het_rates(k,220) ) - mat(k,770) = -( het_rates(k,221) ) - mat(k,1131) = -( het_rates(k,222) ) - mat(k,1063) = .150_r8*rxt(k,69) - mat(k,1111) = -( het_rates(k,223) ) - mat(k,914) = -( het_rates(k,224) ) - mat(k,726) = -( het_rates(k,225) ) - mat(k,88) = -( het_rates(k,226) ) - mat(k,1175) = -( het_rates(k,227) ) - mat(k,750) = -( het_rates(k,228) ) - mat(k,94) = -( het_rates(k,229) ) - mat(k,501) = -( het_rates(k,230) ) - mat(k,2287) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,231) ) - mat(k,1444) = .050_r8*rxt(k,39) - mat(k,136) = rxt(k,109) - mat(k,2122) = rxt(k,481) - end do - end subroutine linmat03 - subroutine linmat( avec_len, mat, y, rxt, het_rates ) -!---------------------------------------------- -! ... linear matrix entries for implicit species -!---------------------------------------------- - use chem_mods, only : gas_pcnst, rxntot, nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) - real(r8), intent(inout) :: mat(veclen,nzcnt) - call linmat01( avec_len, mat, y, rxt, het_rates ) - call linmat02( avec_len, mat, y, rxt, het_rates ) - call linmat03( avec_len, mat, y, rxt, het_rates ) - end subroutine linmat - end module mo_lin_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_factor.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_factor.F90 deleted file mode 100644 index dafb120d81..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_factor.F90 +++ /dev/null @@ -1,8015 +0,0 @@ - module mo_lu_factor - use chem_mods, only: veclen - private - public :: lu_fac - contains - subroutine lu_fac01( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1) = 1._r8 / lu(k,1) - lu(k,2) = 1._r8 / lu(k,2) - lu(k,3) = 1._r8 / lu(k,3) - lu(k,4) = 1._r8 / lu(k,4) - lu(k,5) = 1._r8 / lu(k,5) - lu(k,6) = 1._r8 / lu(k,6) - lu(k,7) = 1._r8 / lu(k,7) - lu(k,8) = 1._r8 / lu(k,8) - lu(k,9) = 1._r8 / lu(k,9) - lu(k,10) = 1._r8 / lu(k,10) - lu(k,11) = 1._r8 / lu(k,11) - lu(k,12) = 1._r8 / lu(k,12) - lu(k,13) = 1._r8 / lu(k,13) - lu(k,14) = 1._r8 / lu(k,14) - lu(k,15) = 1._r8 / lu(k,15) - lu(k,16) = 1._r8 / lu(k,16) - lu(k,17) = 1._r8 / lu(k,17) - lu(k,18) = 1._r8 / lu(k,18) - lu(k,19) = 1._r8 / lu(k,19) - lu(k,20) = 1._r8 / lu(k,20) - lu(k,21) = 1._r8 / lu(k,21) - lu(k,22) = 1._r8 / lu(k,22) - lu(k,23) = 1._r8 / lu(k,23) - lu(k,24) = 1._r8 / lu(k,24) - lu(k,25) = 1._r8 / lu(k,25) - lu(k,26) = 1._r8 / lu(k,26) - lu(k,27) = 1._r8 / lu(k,27) - lu(k,28) = 1._r8 / lu(k,28) - lu(k,29) = 1._r8 / lu(k,29) - lu(k,30) = 1._r8 / lu(k,30) - lu(k,31) = 1._r8 / lu(k,31) - lu(k,32) = 1._r8 / lu(k,32) - lu(k,33) = 1._r8 / lu(k,33) - lu(k,34) = 1._r8 / lu(k,34) - lu(k,35) = 1._r8 / lu(k,35) - lu(k,36) = 1._r8 / lu(k,36) - lu(k,37) = 1._r8 / lu(k,37) - lu(k,38) = 1._r8 / lu(k,38) - lu(k,39) = 1._r8 / lu(k,39) - lu(k,40) = 1._r8 / lu(k,40) - lu(k,41) = 1._r8 / lu(k,41) - lu(k,42) = 1._r8 / lu(k,42) - lu(k,43) = 1._r8 / lu(k,43) - lu(k,44) = 1._r8 / lu(k,44) - lu(k,50) = 1._r8 / lu(k,50) - lu(k,56) = 1._r8 / lu(k,56) - lu(k,62) = 1._r8 / lu(k,62) - lu(k,68) = 1._r8 / lu(k,68) - lu(k,74) = 1._r8 / lu(k,74) - lu(k,76) = 1._r8 / lu(k,76) - lu(k,82) = 1._r8 / lu(k,82) - end do - end subroutine lu_fac01 - subroutine lu_fac02( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,88) = 1._r8 / lu(k,88) - lu(k,94) = 1._r8 / lu(k,94) - lu(k,95) = 1._r8 / lu(k,95) - lu(k,96) = lu(k,96) * lu(k,95) - lu(k,97) = lu(k,97) * lu(k,95) - lu(k,1720) = lu(k,1720) - lu(k,96) * lu(k,1706) - lu(k,1725) = lu(k,1725) - lu(k,97) * lu(k,1706) - lu(k,98) = 1._r8 / lu(k,98) - lu(k,99) = lu(k,99) * lu(k,98) - lu(k,100) = lu(k,100) * lu(k,98) - lu(k,1693) = lu(k,1693) - lu(k,99) * lu(k,1556) - lu(k,1705) = lu(k,1705) - lu(k,100) * lu(k,1556) - lu(k,101) = 1._r8 / lu(k,101) - lu(k,102) = lu(k,102) * lu(k,101) - lu(k,103) = lu(k,103) * lu(k,101) - lu(k,1528) = lu(k,1528) - lu(k,102) * lu(k,1501) - lu(k,1535) = lu(k,1535) - lu(k,103) * lu(k,1501) - lu(k,104) = 1._r8 / lu(k,104) - lu(k,105) = lu(k,105) * lu(k,104) - lu(k,106) = lu(k,106) * lu(k,104) - lu(k,1693) = lu(k,1693) - lu(k,105) * lu(k,1557) - lu(k,1700) = lu(k,1700) - lu(k,106) * lu(k,1557) - lu(k,107) = 1._r8 / lu(k,107) - lu(k,108) = lu(k,108) * lu(k,107) - lu(k,109) = lu(k,109) * lu(k,107) - lu(k,110) = lu(k,110) * lu(k,107) - lu(k,1512) = lu(k,1512) - lu(k,108) * lu(k,1502) - lu(k,1523) = lu(k,1523) - lu(k,109) * lu(k,1502) - lu(k,1528) = lu(k,1528) - lu(k,110) * lu(k,1502) - lu(k,111) = 1._r8 / lu(k,111) - lu(k,112) = lu(k,112) * lu(k,111) - lu(k,113) = lu(k,113) * lu(k,111) - lu(k,114) = lu(k,114) * lu(k,111) - lu(k,1644) = lu(k,1644) - lu(k,112) * lu(k,1558) - lu(k,1693) = lu(k,1693) - lu(k,113) * lu(k,1558) - lu(k,1705) = lu(k,1705) - lu(k,114) * lu(k,1558) - lu(k,115) = 1._r8 / lu(k,115) - lu(k,116) = lu(k,116) * lu(k,115) - lu(k,117) = lu(k,117) * lu(k,115) - lu(k,118) = lu(k,118) * lu(k,115) - lu(k,1514) = lu(k,1514) - lu(k,116) * lu(k,1503) - lu(k,1528) = lu(k,1528) - lu(k,117) * lu(k,1503) - lu(k,1535) = lu(k,1535) - lu(k,118) * lu(k,1503) - lu(k,119) = 1._r8 / lu(k,119) - lu(k,120) = lu(k,120) * lu(k,119) - lu(k,121) = lu(k,121) * lu(k,119) - lu(k,122) = lu(k,122) * lu(k,119) - lu(k,1512) = lu(k,1512) - lu(k,120) * lu(k,1504) - lu(k,1528) = lu(k,1528) - lu(k,121) * lu(k,1504) - lu(k,1535) = lu(k,1535) - lu(k,122) * lu(k,1504) - lu(k,123) = 1._r8 / lu(k,123) - lu(k,124) = lu(k,124) * lu(k,123) - lu(k,125) = lu(k,125) * lu(k,123) - lu(k,126) = lu(k,126) * lu(k,123) - lu(k,1512) = lu(k,1512) - lu(k,124) * lu(k,1505) - lu(k,1528) = lu(k,1528) - lu(k,125) * lu(k,1505) - lu(k,1535) = lu(k,1535) - lu(k,126) * lu(k,1505) - lu(k,127) = 1._r8 / lu(k,127) - lu(k,128) = lu(k,128) * lu(k,127) - lu(k,129) = lu(k,129) * lu(k,127) - lu(k,130) = lu(k,130) * lu(k,127) - lu(k,1693) = lu(k,1693) - lu(k,128) * lu(k,1559) - lu(k,1699) = lu(k,1699) - lu(k,129) * lu(k,1559) - lu(k,1705) = lu(k,1705) - lu(k,130) * lu(k,1559) - lu(k,131) = 1._r8 / lu(k,131) - lu(k,132) = lu(k,132) * lu(k,131) - lu(k,133) = lu(k,133) * lu(k,131) - lu(k,707) = lu(k,707) - lu(k,132) * lu(k,706) - lu(k,711) = - lu(k,133) * lu(k,706) - lu(k,2031) = - lu(k,132) * lu(k,2028) - lu(k,2110) = lu(k,2110) - lu(k,133) * lu(k,2028) - lu(k,134) = 1._r8 / lu(k,134) - lu(k,135) = lu(k,135) * lu(k,134) - lu(k,136) = lu(k,136) * lu(k,134) - lu(k,259) = lu(k,259) - lu(k,135) * lu(k,258) - lu(k,262) = lu(k,262) - lu(k,136) * lu(k,258) - lu(k,2263) = lu(k,2263) - lu(k,135) * lu(k,2262) - lu(k,2287) = lu(k,2287) - lu(k,136) * lu(k,2262) - lu(k,137) = 1._r8 / lu(k,137) - lu(k,138) = lu(k,138) * lu(k,137) - lu(k,139) = lu(k,139) * lu(k,137) - lu(k,738) = lu(k,738) - lu(k,138) * lu(k,736) - lu(k,742) = lu(k,742) - lu(k,139) * lu(k,736) - lu(k,1675) = lu(k,1675) - lu(k,138) * lu(k,1560) - lu(k,1693) = lu(k,1693) - lu(k,139) * lu(k,1560) - lu(k,140) = 1._r8 / lu(k,140) - lu(k,141) = lu(k,141) * lu(k,140) - lu(k,142) = lu(k,142) * lu(k,140) - lu(k,520) = lu(k,520) - lu(k,141) * lu(k,519) - lu(k,524) = lu(k,524) - lu(k,142) * lu(k,519) - lu(k,1939) = lu(k,1939) - lu(k,141) * lu(k,1933) - lu(k,1969) = lu(k,1969) - lu(k,142) * lu(k,1933) - end do - end subroutine lu_fac02 - subroutine lu_fac03( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,143) = 1._r8 / lu(k,143) - lu(k,144) = lu(k,144) * lu(k,143) - lu(k,145) = lu(k,145) * lu(k,143) - lu(k,146) = lu(k,146) * lu(k,143) - lu(k,147) = lu(k,147) * lu(k,143) - lu(k,1512) = lu(k,1512) - lu(k,144) * lu(k,1506) - lu(k,1523) = lu(k,1523) - lu(k,145) * lu(k,1506) - lu(k,1528) = lu(k,1528) - lu(k,146) * lu(k,1506) - lu(k,1535) = lu(k,1535) - lu(k,147) * lu(k,1506) - lu(k,148) = 1._r8 / lu(k,148) - lu(k,149) = lu(k,149) * lu(k,148) - lu(k,150) = lu(k,150) * lu(k,148) - lu(k,151) = lu(k,151) * lu(k,148) - lu(k,152) = lu(k,152) * lu(k,148) - lu(k,1512) = lu(k,1512) - lu(k,149) * lu(k,1507) - lu(k,1521) = lu(k,1521) - lu(k,150) * lu(k,1507) - lu(k,1523) = lu(k,1523) - lu(k,151) * lu(k,1507) - lu(k,1528) = lu(k,1528) - lu(k,152) * lu(k,1507) - lu(k,153) = 1._r8 / lu(k,153) - lu(k,154) = lu(k,154) * lu(k,153) - lu(k,155) = lu(k,155) * lu(k,153) - lu(k,156) = lu(k,156) * lu(k,153) - lu(k,157) = lu(k,157) * lu(k,153) - lu(k,1512) = lu(k,1512) - lu(k,154) * lu(k,1508) - lu(k,1514) = lu(k,1514) - lu(k,155) * lu(k,1508) - lu(k,1528) = lu(k,1528) - lu(k,156) * lu(k,1508) - lu(k,1535) = lu(k,1535) - lu(k,157) * lu(k,1508) - lu(k,158) = 1._r8 / lu(k,158) - lu(k,159) = lu(k,159) * lu(k,158) - lu(k,160) = lu(k,160) * lu(k,158) - lu(k,161) = lu(k,161) * lu(k,158) - lu(k,162) = lu(k,162) * lu(k,158) - lu(k,1512) = lu(k,1512) - lu(k,159) * lu(k,1509) - lu(k,1521) = lu(k,1521) - lu(k,160) * lu(k,1509) - lu(k,1528) = lu(k,1528) - lu(k,161) * lu(k,1509) - lu(k,1535) = lu(k,1535) - lu(k,162) * lu(k,1509) - lu(k,164) = 1._r8 / lu(k,164) - lu(k,165) = lu(k,165) * lu(k,164) - lu(k,166) = lu(k,166) * lu(k,164) - lu(k,167) = lu(k,167) * lu(k,164) - lu(k,168) = lu(k,168) * lu(k,164) - lu(k,169) = lu(k,169) * lu(k,164) - lu(k,1562) = lu(k,1562) - lu(k,165) * lu(k,1561) - lu(k,1563) = lu(k,1563) - lu(k,166) * lu(k,1561) - lu(k,1611) = lu(k,1611) - lu(k,167) * lu(k,1561) - lu(k,1693) = lu(k,1693) - lu(k,168) * lu(k,1561) - lu(k,1700) = lu(k,1700) - lu(k,169) * lu(k,1561) - lu(k,170) = 1._r8 / lu(k,170) - lu(k,171) = lu(k,171) * lu(k,170) - lu(k,172) = lu(k,172) * lu(k,170) - lu(k,173) = lu(k,173) * lu(k,170) - lu(k,1607) = - lu(k,171) * lu(k,1562) - lu(k,1671) = lu(k,1671) - lu(k,172) * lu(k,1562) - lu(k,1700) = lu(k,1700) - lu(k,173) * lu(k,1562) - lu(k,174) = 1._r8 / lu(k,174) - lu(k,175) = lu(k,175) * lu(k,174) - lu(k,176) = lu(k,176) * lu(k,174) - lu(k,177) = lu(k,177) * lu(k,174) - lu(k,178) = lu(k,178) * lu(k,174) - lu(k,1605) = lu(k,1605) - lu(k,175) * lu(k,1563) - lu(k,1608) = lu(k,1608) - lu(k,176) * lu(k,1563) - lu(k,1693) = lu(k,1693) - lu(k,177) * lu(k,1563) - lu(k,1700) = lu(k,1700) - lu(k,178) * lu(k,1563) - lu(k,179) = 1._r8 / lu(k,179) - lu(k,180) = lu(k,180) * lu(k,179) - lu(k,818) = lu(k,818) - lu(k,180) * lu(k,814) - lu(k,907) = lu(k,907) - lu(k,180) * lu(k,899) - lu(k,1725) = lu(k,1725) - lu(k,180) * lu(k,1707) - lu(k,2009) = lu(k,2009) - lu(k,180) * lu(k,1977) - lu(k,2139) = lu(k,2139) - lu(k,180) * lu(k,2123) - lu(k,181) = 1._r8 / lu(k,181) - lu(k,182) = lu(k,182) * lu(k,181) - lu(k,183) = lu(k,183) * lu(k,181) - lu(k,184) = lu(k,184) * lu(k,181) - lu(k,1528) = lu(k,1528) - lu(k,182) * lu(k,1510) - lu(k,1529) = lu(k,1529) - lu(k,183) * lu(k,1510) - lu(k,1536) = lu(k,1536) - lu(k,184) * lu(k,1510) - lu(k,1692) = - lu(k,182) * lu(k,1564) - lu(k,1693) = lu(k,1693) - lu(k,183) * lu(k,1564) - lu(k,1700) = lu(k,1700) - lu(k,184) * lu(k,1564) - lu(k,185) = 1._r8 / lu(k,185) - lu(k,186) = lu(k,186) * lu(k,185) - lu(k,187) = lu(k,187) * lu(k,185) - lu(k,495) = - lu(k,186) * lu(k,492) - lu(k,497) = lu(k,497) - lu(k,187) * lu(k,492) - lu(k,1528) = lu(k,1528) - lu(k,186) * lu(k,1511) - lu(k,1533) = lu(k,1533) - lu(k,187) * lu(k,1511) - lu(k,1963) = - lu(k,186) * lu(k,1934) - lu(k,1968) = lu(k,1968) - lu(k,187) * lu(k,1934) - lu(k,189) = 1._r8 / lu(k,189) - lu(k,190) = lu(k,190) * lu(k,189) - lu(k,191) = lu(k,191) * lu(k,189) - lu(k,192) = lu(k,192) * lu(k,189) - lu(k,193) = lu(k,193) * lu(k,189) - lu(k,194) = lu(k,194) * lu(k,189) - lu(k,195) = lu(k,195) * lu(k,189) - lu(k,1566) = lu(k,1566) - lu(k,190) * lu(k,1565) - lu(k,1567) = lu(k,1567) - lu(k,191) * lu(k,1565) - lu(k,1604) = lu(k,1604) - lu(k,192) * lu(k,1565) - lu(k,1639) = lu(k,1639) - lu(k,193) * lu(k,1565) - lu(k,1693) = lu(k,1693) - lu(k,194) * lu(k,1565) - lu(k,1700) = lu(k,1700) - lu(k,195) * lu(k,1565) - end do - end subroutine lu_fac03 - subroutine lu_fac04( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,196) = 1._r8 / lu(k,196) - lu(k,197) = lu(k,197) * lu(k,196) - lu(k,198) = lu(k,198) * lu(k,196) - lu(k,199) = lu(k,199) * lu(k,196) - lu(k,200) = lu(k,200) * lu(k,196) - lu(k,1605) = lu(k,1605) - lu(k,197) * lu(k,1566) - lu(k,1608) = lu(k,1608) - lu(k,198) * lu(k,1566) - lu(k,1693) = lu(k,1693) - lu(k,199) * lu(k,1566) - lu(k,1700) = lu(k,1700) - lu(k,200) * lu(k,1566) - lu(k,201) = 1._r8 / lu(k,201) - lu(k,202) = lu(k,202) * lu(k,201) - lu(k,203) = lu(k,203) * lu(k,201) - lu(k,204) = lu(k,204) * lu(k,201) - lu(k,214) = - lu(k,202) * lu(k,209) - lu(k,215) = - lu(k,203) * lu(k,209) - lu(k,217) = lu(k,217) - lu(k,204) * lu(k,209) - lu(k,1671) = lu(k,1671) - lu(k,202) * lu(k,1567) - lu(k,1685) = lu(k,1685) - lu(k,203) * lu(k,1567) - lu(k,1700) = lu(k,1700) - lu(k,204) * lu(k,1567) - lu(k,205) = 1._r8 / lu(k,205) - lu(k,206) = lu(k,206) * lu(k,205) - lu(k,207) = lu(k,207) * lu(k,205) - lu(k,1175) = lu(k,1175) - lu(k,206) * lu(k,1168) - lu(k,1179) = - lu(k,207) * lu(k,1168) - lu(k,1675) = lu(k,1675) - lu(k,206) * lu(k,1568) - lu(k,1693) = lu(k,1693) - lu(k,207) * lu(k,1568) - lu(k,2093) = lu(k,2093) - lu(k,206) * lu(k,2029) - lu(k,2110) = lu(k,2110) - lu(k,207) * lu(k,2029) - lu(k,210) = 1._r8 / lu(k,210) - lu(k,211) = lu(k,211) * lu(k,210) - lu(k,212) = lu(k,212) * lu(k,210) - lu(k,213) = lu(k,213) * lu(k,210) - lu(k,214) = lu(k,214) * lu(k,210) - lu(k,215) = lu(k,215) * lu(k,210) - lu(k,216) = lu(k,216) * lu(k,210) - lu(k,217) = lu(k,217) * lu(k,210) - lu(k,1570) = lu(k,1570) - lu(k,211) * lu(k,1569) - lu(k,1604) = lu(k,1604) - lu(k,212) * lu(k,1569) - lu(k,1641) = lu(k,1641) - lu(k,213) * lu(k,1569) - lu(k,1671) = lu(k,1671) - lu(k,214) * lu(k,1569) - lu(k,1685) = lu(k,1685) - lu(k,215) * lu(k,1569) - lu(k,1693) = lu(k,1693) - lu(k,216) * lu(k,1569) - lu(k,1700) = lu(k,1700) - lu(k,217) * lu(k,1569) - lu(k,218) = 1._r8 / lu(k,218) - lu(k,219) = lu(k,219) * lu(k,218) - lu(k,220) = lu(k,220) * lu(k,218) - lu(k,221) = lu(k,221) * lu(k,218) - lu(k,222) = lu(k,222) * lu(k,218) - lu(k,1608) = lu(k,1608) - lu(k,219) * lu(k,1570) - lu(k,1613) = lu(k,1613) - lu(k,220) * lu(k,1570) - lu(k,1693) = lu(k,1693) - lu(k,221) * lu(k,1570) - lu(k,1700) = lu(k,1700) - lu(k,222) * lu(k,1570) - lu(k,223) = 1._r8 / lu(k,223) - lu(k,224) = lu(k,224) * lu(k,223) - lu(k,225) = lu(k,225) * lu(k,223) - lu(k,226) = lu(k,226) * lu(k,223) - lu(k,227) = lu(k,227) * lu(k,223) - lu(k,1277) = - lu(k,224) * lu(k,1274) - lu(k,1287) = - lu(k,225) * lu(k,1274) - lu(k,1297) = - lu(k,226) * lu(k,1274) - lu(k,1302) = lu(k,1302) - lu(k,227) * lu(k,1274) - lu(k,1624) = - lu(k,224) * lu(k,1571) - lu(k,1675) = lu(k,1675) - lu(k,225) * lu(k,1571) - lu(k,1693) = lu(k,1693) - lu(k,226) * lu(k,1571) - lu(k,1700) = lu(k,1700) - lu(k,227) * lu(k,1571) - lu(k,228) = 1._r8 / lu(k,228) - lu(k,229) = lu(k,229) * lu(k,228) - lu(k,230) = lu(k,230) * lu(k,228) - lu(k,946) = - lu(k,229) * lu(k,943) - lu(k,962) = lu(k,962) - lu(k,230) * lu(k,943) - lu(k,995) = - lu(k,229) * lu(k,992) - lu(k,1012) = lu(k,1012) - lu(k,230) * lu(k,992) - lu(k,1655) = lu(k,1655) - lu(k,229) * lu(k,1572) - lu(k,1693) = lu(k,1693) - lu(k,230) * lu(k,1572) - lu(k,2217) = - lu(k,229) * lu(k,2206) - lu(k,2249) = lu(k,2249) - lu(k,230) * lu(k,2206) - lu(k,231) = 1._r8 / lu(k,231) - lu(k,232) = lu(k,232) * lu(k,231) - lu(k,233) = lu(k,233) * lu(k,231) - lu(k,781) = lu(k,781) - lu(k,232) * lu(k,779) - lu(k,783) = - lu(k,233) * lu(k,779) - lu(k,1714) = lu(k,1714) - lu(k,232) * lu(k,1708) - lu(k,1725) = lu(k,1725) - lu(k,233) * lu(k,1708) - lu(k,2128) = - lu(k,232) * lu(k,2124) - lu(k,2139) = lu(k,2139) - lu(k,233) * lu(k,2124) - lu(k,2152) = lu(k,2152) - lu(k,232) * lu(k,2146) - lu(k,2163) = lu(k,2163) - lu(k,233) * lu(k,2146) - lu(k,234) = 1._r8 / lu(k,234) - lu(k,235) = lu(k,235) * lu(k,234) - lu(k,236) = lu(k,236) * lu(k,234) - lu(k,1115) = - lu(k,235) * lu(k,1104) - lu(k,1120) = lu(k,1120) - lu(k,236) * lu(k,1104) - lu(k,1158) = lu(k,1158) - lu(k,235) * lu(k,1148) - lu(k,1164) = lu(k,1164) - lu(k,236) * lu(k,1148) - lu(k,1690) = lu(k,1690) - lu(k,235) * lu(k,1573) - lu(k,1698) = lu(k,1698) - lu(k,236) * lu(k,1573) - lu(k,1917) = - lu(k,235) * lu(k,1853) - lu(k,1925) = lu(k,1925) - lu(k,236) * lu(k,1853) - end do - end subroutine lu_fac04 - subroutine lu_fac05( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,237) = 1._r8 / lu(k,237) - lu(k,238) = lu(k,238) * lu(k,237) - lu(k,239) = lu(k,239) * lu(k,237) - lu(k,340) = - lu(k,238) * lu(k,337) - lu(k,341) = lu(k,341) - lu(k,239) * lu(k,337) - lu(k,438) = - lu(k,238) * lu(k,435) - lu(k,439) = - lu(k,239) * lu(k,435) - lu(k,1616) = lu(k,1616) - lu(k,238) * lu(k,1574) - lu(k,1693) = lu(k,1693) - lu(k,239) * lu(k,1574) - lu(k,1868) = lu(k,1868) - lu(k,238) * lu(k,1854) - lu(k,1920) = lu(k,1920) - lu(k,239) * lu(k,1854) - lu(k,240) = 1._r8 / lu(k,240) - lu(k,241) = lu(k,241) * lu(k,240) - lu(k,242) = lu(k,242) * lu(k,240) - lu(k,254) = - lu(k,241) * lu(k,252) - lu(k,255) = lu(k,255) - lu(k,242) * lu(k,252) - lu(k,301) = - lu(k,241) * lu(k,299) - lu(k,302) = lu(k,302) - lu(k,242) * lu(k,299) - lu(k,1521) = lu(k,1521) - lu(k,241) * lu(k,1512) - lu(k,1528) = lu(k,1528) - lu(k,242) * lu(k,1512) - lu(k,1653) = - lu(k,241) * lu(k,1575) - lu(k,1692) = lu(k,1692) - lu(k,242) * lu(k,1575) - lu(k,243) = 1._r8 / lu(k,243) - lu(k,244) = lu(k,244) * lu(k,243) - lu(k,245) = lu(k,245) * lu(k,243) - lu(k,246) = lu(k,246) * lu(k,243) - lu(k,247) = lu(k,247) * lu(k,243) - lu(k,1514) = lu(k,1514) - lu(k,244) * lu(k,1513) - lu(k,1528) = lu(k,1528) - lu(k,245) * lu(k,1513) - lu(k,1529) = lu(k,1529) - lu(k,246) * lu(k,1513) - lu(k,1535) = lu(k,1535) - lu(k,247) * lu(k,1513) - lu(k,1577) = lu(k,1577) - lu(k,244) * lu(k,1576) - lu(k,1692) = lu(k,1692) - lu(k,245) * lu(k,1576) - lu(k,1693) = lu(k,1693) - lu(k,246) * lu(k,1576) - lu(k,1699) = lu(k,1699) - lu(k,247) * lu(k,1576) - lu(k,248) = 1._r8 / lu(k,248) - lu(k,249) = lu(k,249) * lu(k,248) - lu(k,250) = lu(k,250) * lu(k,248) - lu(k,251) = lu(k,251) * lu(k,248) - lu(k,1521) = lu(k,1521) - lu(k,249) * lu(k,1514) - lu(k,1528) = lu(k,1528) - lu(k,250) * lu(k,1514) - lu(k,1535) = lu(k,1535) - lu(k,251) * lu(k,1514) - lu(k,1653) = lu(k,1653) - lu(k,249) * lu(k,1577) - lu(k,1692) = lu(k,1692) - lu(k,250) * lu(k,1577) - lu(k,1699) = lu(k,1699) - lu(k,251) * lu(k,1577) - lu(k,253) = 1._r8 / lu(k,253) - lu(k,254) = lu(k,254) * lu(k,253) - lu(k,255) = lu(k,255) * lu(k,253) - lu(k,256) = lu(k,256) * lu(k,253) - lu(k,257) = lu(k,257) * lu(k,253) - lu(k,1521) = lu(k,1521) - lu(k,254) * lu(k,1515) - lu(k,1528) = lu(k,1528) - lu(k,255) * lu(k,1515) - lu(k,1529) = lu(k,1529) - lu(k,256) * lu(k,1515) - lu(k,1535) = lu(k,1535) - lu(k,257) * lu(k,1515) - lu(k,1653) = lu(k,1653) - lu(k,254) * lu(k,1578) - lu(k,1692) = lu(k,1692) - lu(k,255) * lu(k,1578) - lu(k,1693) = lu(k,1693) - lu(k,256) * lu(k,1578) - lu(k,1699) = lu(k,1699) - lu(k,257) * lu(k,1578) - lu(k,259) = 1._r8 / lu(k,259) - lu(k,260) = lu(k,260) * lu(k,259) - lu(k,261) = lu(k,261) * lu(k,259) - lu(k,262) = lu(k,262) * lu(k,259) - lu(k,853) = lu(k,853) - lu(k,260) * lu(k,852) - lu(k,857) = lu(k,857) - lu(k,261) * lu(k,852) - lu(k,858) = - lu(k,262) * lu(k,852) - lu(k,1651) = lu(k,1651) - lu(k,260) * lu(k,1579) - lu(k,1703) = lu(k,1703) - lu(k,261) * lu(k,1579) - lu(k,1705) = lu(k,1705) - lu(k,262) * lu(k,1579) - lu(k,2265) = - lu(k,260) * lu(k,2263) - lu(k,2285) = lu(k,2285) - lu(k,261) * lu(k,2263) - lu(k,2287) = lu(k,2287) - lu(k,262) * lu(k,2263) - lu(k,263) = 1._r8 / lu(k,263) - lu(k,264) = lu(k,264) * lu(k,263) - lu(k,265) = lu(k,265) * lu(k,263) - lu(k,266) = lu(k,266) * lu(k,263) - lu(k,826) = lu(k,826) - lu(k,264) * lu(k,822) - lu(k,828) = - lu(k,265) * lu(k,822) - lu(k,832) = lu(k,832) - lu(k,266) * lu(k,822) - lu(k,1668) = lu(k,1668) - lu(k,264) * lu(k,1580) - lu(k,1693) = lu(k,1693) - lu(k,265) * lu(k,1580) - lu(k,1700) = lu(k,1700) - lu(k,266) * lu(k,1580) - lu(k,1807) = lu(k,1807) - lu(k,264) * lu(k,1789) - lu(k,1828) = - lu(k,265) * lu(k,1789) - lu(k,1835) = lu(k,1835) - lu(k,266) * lu(k,1789) - lu(k,267) = 1._r8 / lu(k,267) - lu(k,268) = lu(k,268) * lu(k,267) - lu(k,269) = lu(k,269) * lu(k,267) - lu(k,270) = lu(k,270) * lu(k,267) - lu(k,626) = lu(k,626) - lu(k,268) * lu(k,625) - lu(k,627) = lu(k,627) - lu(k,269) * lu(k,625) - lu(k,628) = - lu(k,270) * lu(k,625) - lu(k,1608) = lu(k,1608) - lu(k,268) * lu(k,1581) - lu(k,1629) = lu(k,1629) - lu(k,269) * lu(k,1581) - lu(k,1693) = lu(k,1693) - lu(k,270) * lu(k,1581) - lu(k,2049) = - lu(k,268) * lu(k,2030) - lu(k,2057) = lu(k,2057) - lu(k,269) * lu(k,2030) - lu(k,2110) = lu(k,2110) - lu(k,270) * lu(k,2030) - lu(k,271) = 1._r8 / lu(k,271) - lu(k,272) = lu(k,272) * lu(k,271) - lu(k,273) = lu(k,273) * lu(k,271) - lu(k,274) = lu(k,274) * lu(k,271) - lu(k,709) = - lu(k,272) * lu(k,707) - lu(k,710) = lu(k,710) - lu(k,273) * lu(k,707) - lu(k,714) = lu(k,714) - lu(k,274) * lu(k,707) - lu(k,1898) = lu(k,1898) - lu(k,272) * lu(k,1855) - lu(k,1918) = lu(k,1918) - lu(k,273) * lu(k,1855) - lu(k,1927) = lu(k,1927) - lu(k,274) * lu(k,1855) - lu(k,2088) = - lu(k,272) * lu(k,2031) - lu(k,2108) = lu(k,2108) - lu(k,273) * lu(k,2031) - lu(k,2117) = lu(k,2117) - lu(k,274) * lu(k,2031) - lu(k,275) = 1._r8 / lu(k,275) - lu(k,276) = lu(k,276) * lu(k,275) - lu(k,277) = lu(k,277) * lu(k,275) - lu(k,278) = lu(k,278) * lu(k,275) - lu(k,279) = lu(k,279) * lu(k,275) - lu(k,280) = lu(k,280) * lu(k,275) - lu(k,1773) = lu(k,1773) - lu(k,276) * lu(k,1734) - lu(k,1778) = lu(k,1778) - lu(k,277) * lu(k,1734) - lu(k,1780) = lu(k,1780) - lu(k,278) * lu(k,1734) - lu(k,1781) = lu(k,1781) - lu(k,279) * lu(k,1734) - lu(k,1786) = lu(k,1786) - lu(k,280) * lu(k,1734) - lu(k,1961) = lu(k,1961) - lu(k,276) * lu(k,1935) - lu(k,1966) = lu(k,1966) - lu(k,277) * lu(k,1935) - lu(k,1968) = lu(k,1968) - lu(k,278) * lu(k,1935) - lu(k,1969) = lu(k,1969) - lu(k,279) * lu(k,1935) - lu(k,1974) = lu(k,1974) - lu(k,280) * lu(k,1935) - end do - end subroutine lu_fac05 - subroutine lu_fac06( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,281) = 1._r8 / lu(k,281) - lu(k,282) = lu(k,282) * lu(k,281) - lu(k,283) = lu(k,283) * lu(k,281) - lu(k,660) = - lu(k,282) * lu(k,654) - lu(k,666) = lu(k,666) - lu(k,283) * lu(k,654) - lu(k,698) = - lu(k,282) * lu(k,691) - lu(k,705) = lu(k,705) - lu(k,283) * lu(k,691) - lu(k,727) = - lu(k,282) * lu(k,721) - lu(k,735) = lu(k,735) - lu(k,283) * lu(k,721) - lu(k,751) = - lu(k,282) * lu(k,744) - lu(k,760) = lu(k,760) - lu(k,283) * lu(k,744) - lu(k,1881) = lu(k,1881) - lu(k,282) * lu(k,1856) - lu(k,1927) = lu(k,1927) - lu(k,283) * lu(k,1856) - lu(k,284) = 1._r8 / lu(k,284) - lu(k,285) = lu(k,285) * lu(k,284) - lu(k,286) = lu(k,286) * lu(k,284) - lu(k,287) = lu(k,287) * lu(k,284) - lu(k,288) = lu(k,288) * lu(k,284) - lu(k,289) = lu(k,289) * lu(k,284) - lu(k,1651) = lu(k,1651) - lu(k,285) * lu(k,1582) - lu(k,1690) = lu(k,1690) - lu(k,286) * lu(k,1582) - lu(k,1693) = lu(k,1693) - lu(k,287) * lu(k,1582) - lu(k,1695) = lu(k,1695) - lu(k,288) * lu(k,1582) - lu(k,1700) = lu(k,1700) - lu(k,289) * lu(k,1582) - lu(k,1740) = lu(k,1740) - lu(k,285) * lu(k,1735) - lu(k,1773) = lu(k,1773) - lu(k,286) * lu(k,1735) - lu(k,1776) = lu(k,1776) - lu(k,287) * lu(k,1735) - lu(k,1778) = lu(k,1778) - lu(k,288) * lu(k,1735) - lu(k,1783) = lu(k,1783) - lu(k,289) * lu(k,1735) - lu(k,290) = 1._r8 / lu(k,290) - lu(k,291) = lu(k,291) * lu(k,290) - lu(k,292) = lu(k,292) * lu(k,290) - lu(k,866) = lu(k,866) - lu(k,291) * lu(k,865) - lu(k,869) = lu(k,869) - lu(k,292) * lu(k,865) - lu(k,1402) = lu(k,1402) - lu(k,291) * lu(k,1401) - lu(k,1405) = lu(k,1405) - lu(k,292) * lu(k,1401) - lu(k,1429) = lu(k,1429) - lu(k,291) * lu(k,1427) - lu(k,1433) = lu(k,1433) - lu(k,292) * lu(k,1427) - lu(k,1461) = lu(k,1461) - lu(k,291) * lu(k,1460) - lu(k,1464) = - lu(k,292) * lu(k,1460) - lu(k,2266) = lu(k,2266) - lu(k,291) * lu(k,2264) - lu(k,2271) = lu(k,2271) - lu(k,292) * lu(k,2264) - lu(k,293) = 1._r8 / lu(k,293) - lu(k,294) = lu(k,294) * lu(k,293) - lu(k,295) = lu(k,295) * lu(k,293) - lu(k,296) = lu(k,296) * lu(k,293) - lu(k,297) = lu(k,297) * lu(k,293) - lu(k,298) = lu(k,298) * lu(k,293) - lu(k,1659) = lu(k,1659) - lu(k,294) * lu(k,1583) - lu(k,1662) = lu(k,1662) - lu(k,295) * lu(k,1583) - lu(k,1671) = lu(k,1671) - lu(k,296) * lu(k,1583) - lu(k,1693) = lu(k,1693) - lu(k,297) * lu(k,1583) - lu(k,1700) = lu(k,1700) - lu(k,298) * lu(k,1583) - lu(k,1990) = - lu(k,294) * lu(k,1978) - lu(k,1991) = - lu(k,295) * lu(k,1978) - lu(k,1994) = lu(k,1994) - lu(k,296) * lu(k,1978) - lu(k,2003) = lu(k,2003) - lu(k,297) * lu(k,1978) - lu(k,2010) = lu(k,2010) - lu(k,298) * lu(k,1978) - lu(k,300) = 1._r8 / lu(k,300) - lu(k,301) = lu(k,301) * lu(k,300) - lu(k,302) = lu(k,302) * lu(k,300) - lu(k,303) = lu(k,303) * lu(k,300) - lu(k,304) = lu(k,304) * lu(k,300) - lu(k,305) = lu(k,305) * lu(k,300) - lu(k,1521) = lu(k,1521) - lu(k,301) * lu(k,1516) - lu(k,1528) = lu(k,1528) - lu(k,302) * lu(k,1516) - lu(k,1529) = lu(k,1529) - lu(k,303) * lu(k,1516) - lu(k,1535) = lu(k,1535) - lu(k,304) * lu(k,1516) - lu(k,1541) = lu(k,1541) - lu(k,305) * lu(k,1516) - lu(k,1653) = lu(k,1653) - lu(k,301) * lu(k,1584) - lu(k,1692) = lu(k,1692) - lu(k,302) * lu(k,1584) - lu(k,1693) = lu(k,1693) - lu(k,303) * lu(k,1584) - lu(k,1699) = lu(k,1699) - lu(k,304) * lu(k,1584) - lu(k,1705) = lu(k,1705) - lu(k,305) * lu(k,1584) - lu(k,306) = 1._r8 / lu(k,306) - lu(k,307) = lu(k,307) * lu(k,306) - lu(k,308) = lu(k,308) * lu(k,306) - lu(k,309) = lu(k,309) * lu(k,306) - lu(k,310) = lu(k,310) * lu(k,306) - lu(k,311) = lu(k,311) * lu(k,306) - lu(k,1649) = lu(k,1649) - lu(k,307) * lu(k,1585) - lu(k,1693) = lu(k,1693) - lu(k,308) * lu(k,1585) - lu(k,1699) = lu(k,1699) - lu(k,309) * lu(k,1585) - lu(k,1701) = lu(k,1701) - lu(k,310) * lu(k,1585) - lu(k,1705) = lu(k,1705) - lu(k,311) * lu(k,1585) - lu(k,1988) = lu(k,1988) - lu(k,307) * lu(k,1979) - lu(k,2003) = lu(k,2003) - lu(k,308) * lu(k,1979) - lu(k,2009) = lu(k,2009) - lu(k,309) * lu(k,1979) - lu(k,2011) = lu(k,2011) - lu(k,310) * lu(k,1979) - lu(k,2015) = - lu(k,311) * lu(k,1979) - lu(k,312) = 1._r8 / lu(k,312) - lu(k,313) = lu(k,313) * lu(k,312) - lu(k,314) = lu(k,314) * lu(k,312) - lu(k,315) = lu(k,315) * lu(k,312) - lu(k,316) = lu(k,316) * lu(k,312) - lu(k,1313) = lu(k,1313) - lu(k,313) * lu(k,1306) - lu(k,1314) = - lu(k,314) * lu(k,1306) - lu(k,1318) = - lu(k,315) * lu(k,1306) - lu(k,1323) = lu(k,1323) - lu(k,316) * lu(k,1306) - lu(k,1682) = lu(k,1682) - lu(k,313) * lu(k,1586) - lu(k,1684) = lu(k,1684) - lu(k,314) * lu(k,1586) - lu(k,1693) = lu(k,1693) - lu(k,315) * lu(k,1586) - lu(k,1700) = lu(k,1700) - lu(k,316) * lu(k,1586) - lu(k,2099) = lu(k,2099) - lu(k,313) * lu(k,2032) - lu(k,2101) = lu(k,2101) - lu(k,314) * lu(k,2032) - lu(k,2110) = lu(k,2110) - lu(k,315) * lu(k,2032) - lu(k,2117) = lu(k,2117) - lu(k,316) * lu(k,2032) - lu(k,317) = 1._r8 / lu(k,317) - lu(k,318) = lu(k,318) * lu(k,317) - lu(k,319) = lu(k,319) * lu(k,317) - lu(k,320) = lu(k,320) * lu(k,317) - lu(k,321) = lu(k,321) * lu(k,317) - lu(k,679) = lu(k,679) - lu(k,318) * lu(k,678) - lu(k,680) = lu(k,680) - lu(k,319) * lu(k,678) - lu(k,681) = lu(k,681) - lu(k,320) * lu(k,678) - lu(k,682) = lu(k,682) - lu(k,321) * lu(k,678) - lu(k,1634) = lu(k,1634) - lu(k,318) * lu(k,1587) - lu(k,1668) = lu(k,1668) - lu(k,319) * lu(k,1587) - lu(k,1685) = lu(k,1685) - lu(k,320) * lu(k,1587) - lu(k,1693) = lu(k,1693) - lu(k,321) * lu(k,1587) - lu(k,2061) = lu(k,2061) - lu(k,318) * lu(k,2033) - lu(k,2087) = lu(k,2087) - lu(k,319) * lu(k,2033) - lu(k,2102) = lu(k,2102) - lu(k,320) * lu(k,2033) - lu(k,2110) = lu(k,2110) - lu(k,321) * lu(k,2033) - lu(k,322) = 1._r8 / lu(k,322) - lu(k,323) = lu(k,323) * lu(k,322) - lu(k,324) = lu(k,324) * lu(k,322) - lu(k,325) = lu(k,325) * lu(k,322) - lu(k,326) = lu(k,326) * lu(k,322) - lu(k,701) = - lu(k,323) * lu(k,692) - lu(k,702) = lu(k,702) - lu(k,324) * lu(k,692) - lu(k,703) = - lu(k,325) * lu(k,692) - lu(k,705) = lu(k,705) - lu(k,326) * lu(k,692) - lu(k,754) = - lu(k,323) * lu(k,745) - lu(k,755) = lu(k,755) - lu(k,324) * lu(k,745) - lu(k,756) = - lu(k,325) * lu(k,745) - lu(k,760) = lu(k,760) - lu(k,326) * lu(k,745) - lu(k,1900) = lu(k,1900) - lu(k,323) * lu(k,1857) - lu(k,1907) = lu(k,1907) - lu(k,324) * lu(k,1857) - lu(k,1913) = lu(k,1913) - lu(k,325) * lu(k,1857) - lu(k,1927) = lu(k,1927) - lu(k,326) * lu(k,1857) - end do - end subroutine lu_fac06 - subroutine lu_fac07( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,327) = 1._r8 / lu(k,327) - lu(k,328) = lu(k,328) * lu(k,327) - lu(k,329) = lu(k,329) * lu(k,327) - lu(k,330) = lu(k,330) * lu(k,327) - lu(k,331) = lu(k,331) * lu(k,327) - lu(k,1233) = lu(k,1233) - lu(k,328) * lu(k,1231) - lu(k,1234) = lu(k,1234) - lu(k,329) * lu(k,1231) - lu(k,1238) = lu(k,1238) - lu(k,330) * lu(k,1231) - lu(k,1244) = lu(k,1244) - lu(k,331) * lu(k,1231) - lu(k,1711) = lu(k,1711) - lu(k,328) * lu(k,1709) - lu(k,1713) = lu(k,1713) - lu(k,329) * lu(k,1709) - lu(k,1720) = lu(k,1720) - lu(k,330) * lu(k,1709) - lu(k,1729) = lu(k,1729) - lu(k,331) * lu(k,1709) - lu(k,2150) = lu(k,2150) - lu(k,328) * lu(k,2147) - lu(k,2151) = lu(k,2151) - lu(k,329) * lu(k,2147) - lu(k,2158) = lu(k,2158) - lu(k,330) * lu(k,2147) - lu(k,2167) = lu(k,2167) - lu(k,331) * lu(k,2147) - lu(k,332) = 1._r8 / lu(k,332) - lu(k,333) = lu(k,333) * lu(k,332) - lu(k,334) = lu(k,334) * lu(k,332) - lu(k,335) = lu(k,335) * lu(k,332) - lu(k,336) = lu(k,336) * lu(k,332) - lu(k,450) = lu(k,450) - lu(k,333) * lu(k,449) - lu(k,451) = lu(k,451) - lu(k,334) * lu(k,449) - lu(k,452) = - lu(k,335) * lu(k,449) - lu(k,455) = lu(k,455) - lu(k,336) * lu(k,449) - lu(k,1605) = lu(k,1605) - lu(k,333) * lu(k,1588) - lu(k,1662) = lu(k,1662) - lu(k,334) * lu(k,1588) - lu(k,1693) = lu(k,1693) - lu(k,335) * lu(k,1588) - lu(k,1700) = lu(k,1700) - lu(k,336) * lu(k,1588) - lu(k,2046) = lu(k,2046) - lu(k,333) * lu(k,2034) - lu(k,2084) = lu(k,2084) - lu(k,334) * lu(k,2034) - lu(k,2110) = lu(k,2110) - lu(k,335) * lu(k,2034) - lu(k,2117) = lu(k,2117) - lu(k,336) * lu(k,2034) - lu(k,338) = 1._r8 / lu(k,338) - lu(k,339) = lu(k,339) * lu(k,338) - lu(k,340) = lu(k,340) * lu(k,338) - lu(k,341) = lu(k,341) * lu(k,338) - lu(k,342) = lu(k,342) * lu(k,338) - lu(k,437) = lu(k,437) - lu(k,339) * lu(k,436) - lu(k,438) = lu(k,438) - lu(k,340) * lu(k,436) - lu(k,439) = lu(k,439) - lu(k,341) * lu(k,436) - lu(k,442) = lu(k,442) - lu(k,342) * lu(k,436) - lu(k,1604) = lu(k,1604) - lu(k,339) * lu(k,1589) - lu(k,1616) = lu(k,1616) - lu(k,340) * lu(k,1589) - lu(k,1693) = lu(k,1693) - lu(k,341) * lu(k,1589) - lu(k,1700) = lu(k,1700) - lu(k,342) * lu(k,1589) - lu(k,2044) = lu(k,2044) - lu(k,339) * lu(k,2035) - lu(k,2053) = lu(k,2053) - lu(k,340) * lu(k,2035) - lu(k,2110) = lu(k,2110) - lu(k,341) * lu(k,2035) - lu(k,2117) = lu(k,2117) - lu(k,342) * lu(k,2035) - lu(k,343) = 1._r8 / lu(k,343) - lu(k,344) = lu(k,344) * lu(k,343) - lu(k,345) = lu(k,345) * lu(k,343) - lu(k,346) = lu(k,346) * lu(k,343) - lu(k,347) = lu(k,347) * lu(k,343) - lu(k,825) = lu(k,825) - lu(k,344) * lu(k,823) - lu(k,826) = lu(k,826) - lu(k,345) * lu(k,823) - lu(k,828) = lu(k,828) - lu(k,346) * lu(k,823) - lu(k,832) = lu(k,832) - lu(k,347) * lu(k,823) - lu(k,1649) = lu(k,1649) - lu(k,344) * lu(k,1590) - lu(k,1668) = lu(k,1668) - lu(k,345) * lu(k,1590) - lu(k,1693) = lu(k,1693) - lu(k,346) * lu(k,1590) - lu(k,1700) = lu(k,1700) - lu(k,347) * lu(k,1590) - lu(k,2076) = lu(k,2076) - lu(k,344) * lu(k,2036) - lu(k,2087) = lu(k,2087) - lu(k,345) * lu(k,2036) - lu(k,2110) = lu(k,2110) - lu(k,346) * lu(k,2036) - lu(k,2117) = lu(k,2117) - lu(k,347) * lu(k,2036) - lu(k,348) = 1._r8 / lu(k,348) - lu(k,349) = lu(k,349) * lu(k,348) - lu(k,350) = lu(k,350) * lu(k,348) - lu(k,1287) = lu(k,1287) - lu(k,349) * lu(k,1275) - lu(k,1297) = lu(k,1297) - lu(k,350) * lu(k,1275) - lu(k,1379) = lu(k,1379) - lu(k,349) * lu(k,1369) - lu(k,1392) = lu(k,1392) - lu(k,350) * lu(k,1369) - lu(k,1675) = lu(k,1675) - lu(k,349) * lu(k,1591) - lu(k,1693) = lu(k,1693) - lu(k,350) * lu(k,1591) - lu(k,1759) = lu(k,1759) - lu(k,349) * lu(k,1736) - lu(k,1776) = lu(k,1776) - lu(k,350) * lu(k,1736) - lu(k,1813) = lu(k,1813) - lu(k,349) * lu(k,1790) - lu(k,1828) = lu(k,1828) - lu(k,350) * lu(k,1790) - lu(k,1904) = lu(k,1904) - lu(k,349) * lu(k,1858) - lu(k,1920) = lu(k,1920) - lu(k,350) * lu(k,1858) - lu(k,351) = 1._r8 / lu(k,351) - lu(k,352) = lu(k,352) * lu(k,351) - lu(k,353) = lu(k,353) * lu(k,351) - lu(k,354) = lu(k,354) * lu(k,351) - lu(k,355) = lu(k,355) * lu(k,351) - lu(k,356) = lu(k,356) * lu(k,351) - lu(k,357) = lu(k,357) * lu(k,351) - lu(k,358) = lu(k,358) * lu(k,351) - lu(k,1621) = lu(k,1621) - lu(k,352) * lu(k,1592) - lu(k,1658) = lu(k,1658) - lu(k,353) * lu(k,1592) - lu(k,1668) = lu(k,1668) - lu(k,354) * lu(k,1592) - lu(k,1691) = lu(k,1691) - lu(k,355) * lu(k,1592) - lu(k,1693) = lu(k,1693) - lu(k,356) * lu(k,1592) - lu(k,1695) = lu(k,1695) - lu(k,357) * lu(k,1592) - lu(k,1698) = lu(k,1698) - lu(k,358) * lu(k,1592) - lu(k,1738) = - lu(k,352) * lu(k,1737) - lu(k,1742) = lu(k,1742) - lu(k,353) * lu(k,1737) - lu(k,1752) = lu(k,1752) - lu(k,354) * lu(k,1737) - lu(k,1774) = lu(k,1774) - lu(k,355) * lu(k,1737) - lu(k,1776) = lu(k,1776) - lu(k,356) * lu(k,1737) - lu(k,1778) = lu(k,1778) - lu(k,357) * lu(k,1737) - lu(k,1781) = lu(k,1781) - lu(k,358) * lu(k,1737) - lu(k,359) = 1._r8 / lu(k,359) - lu(k,360) = lu(k,360) * lu(k,359) - lu(k,361) = lu(k,361) * lu(k,359) - lu(k,362) = lu(k,362) * lu(k,359) - lu(k,363) = lu(k,363) * lu(k,359) - lu(k,364) = lu(k,364) * lu(k,359) - lu(k,365) = lu(k,365) * lu(k,359) - lu(k,366) = lu(k,366) * lu(k,359) - lu(k,1615) = lu(k,1615) - lu(k,360) * lu(k,1593) - lu(k,1651) = lu(k,1651) - lu(k,361) * lu(k,1593) - lu(k,1671) = lu(k,1671) - lu(k,362) * lu(k,1593) - lu(k,1679) = lu(k,1679) - lu(k,363) * lu(k,1593) - lu(k,1689) = lu(k,1689) - lu(k,364) * lu(k,1593) - lu(k,1693) = lu(k,1693) - lu(k,365) * lu(k,1593) - lu(k,1703) = lu(k,1703) - lu(k,366) * lu(k,1593) - lu(k,2171) = - lu(k,360) * lu(k,2170) - lu(k,2177) = - lu(k,361) * lu(k,2170) - lu(k,2179) = lu(k,2179) - lu(k,362) * lu(k,2170) - lu(k,2180) = lu(k,2180) - lu(k,363) * lu(k,2170) - lu(k,2184) = lu(k,2184) - lu(k,364) * lu(k,2170) - lu(k,2188) = lu(k,2188) - lu(k,365) * lu(k,2170) - lu(k,2198) = lu(k,2198) - lu(k,366) * lu(k,2170) - lu(k,367) = 1._r8 / lu(k,367) - lu(k,368) = lu(k,368) * lu(k,367) - lu(k,369) = lu(k,369) * lu(k,367) - lu(k,370) = lu(k,370) * lu(k,367) - lu(k,371) = lu(k,371) * lu(k,367) - lu(k,372) = lu(k,372) * lu(k,367) - lu(k,373) = lu(k,373) * lu(k,367) - lu(k,374) = lu(k,374) * lu(k,367) - lu(k,1671) = lu(k,1671) - lu(k,368) * lu(k,1594) - lu(k,1693) = lu(k,1693) - lu(k,369) * lu(k,1594) - lu(k,1696) = lu(k,1696) - lu(k,370) * lu(k,1594) - lu(k,1699) = lu(k,1699) - lu(k,371) * lu(k,1594) - lu(k,1700) = lu(k,1700) - lu(k,372) * lu(k,1594) - lu(k,1701) = lu(k,1701) - lu(k,373) * lu(k,1594) - lu(k,1705) = lu(k,1705) - lu(k,374) * lu(k,1594) - lu(k,1994) = lu(k,1994) - lu(k,368) * lu(k,1980) - lu(k,2003) = lu(k,2003) - lu(k,369) * lu(k,1980) - lu(k,2006) = lu(k,2006) - lu(k,370) * lu(k,1980) - lu(k,2009) = lu(k,2009) - lu(k,371) * lu(k,1980) - lu(k,2010) = lu(k,2010) - lu(k,372) * lu(k,1980) - lu(k,2011) = lu(k,2011) - lu(k,373) * lu(k,1980) - lu(k,2015) = lu(k,2015) - lu(k,374) * lu(k,1980) - end do - end subroutine lu_fac07 - subroutine lu_fac08( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,375) = 1._r8 / lu(k,375) - lu(k,376) = lu(k,376) * lu(k,375) - lu(k,377) = lu(k,377) * lu(k,375) - lu(k,378) = lu(k,378) * lu(k,375) - lu(k,379) = lu(k,379) * lu(k,375) - lu(k,380) = lu(k,380) * lu(k,375) - lu(k,1190) = - lu(k,376) * lu(k,1186) - lu(k,1192) = - lu(k,377) * lu(k,1186) - lu(k,1200) = - lu(k,378) * lu(k,1186) - lu(k,1202) = - lu(k,379) * lu(k,1186) - lu(k,1207) = lu(k,1207) - lu(k,380) * lu(k,1186) - lu(k,1652) = lu(k,1652) - lu(k,376) * lu(k,1595) - lu(k,1669) = lu(k,1669) - lu(k,377) * lu(k,1595) - lu(k,1690) = lu(k,1690) - lu(k,378) * lu(k,1595) - lu(k,1693) = lu(k,1693) - lu(k,379) * lu(k,1595) - lu(k,1700) = lu(k,1700) - lu(k,380) * lu(k,1595) - lu(k,1799) = - lu(k,376) * lu(k,1791) - lu(k,1808) = lu(k,1808) - lu(k,377) * lu(k,1791) - lu(k,1825) = - lu(k,378) * lu(k,1791) - lu(k,1828) = lu(k,1828) - lu(k,379) * lu(k,1791) - lu(k,1835) = lu(k,1835) - lu(k,380) * lu(k,1791) - lu(k,381) = 1._r8 / lu(k,381) - lu(k,382) = lu(k,382) * lu(k,381) - lu(k,383) = lu(k,383) * lu(k,381) - lu(k,384) = lu(k,384) * lu(k,381) - lu(k,385) = lu(k,385) * lu(k,381) - lu(k,386) = lu(k,386) * lu(k,381) - lu(k,952) = - lu(k,382) * lu(k,944) - lu(k,956) = lu(k,956) - lu(k,383) * lu(k,944) - lu(k,958) = - lu(k,384) * lu(k,944) - lu(k,959) = lu(k,959) - lu(k,385) * lu(k,944) - lu(k,967) = lu(k,967) - lu(k,386) * lu(k,944) - lu(k,1000) = - lu(k,382) * lu(k,993) - lu(k,1006) = lu(k,1006) - lu(k,383) * lu(k,993) - lu(k,1008) = - lu(k,384) * lu(k,993) - lu(k,1009) = lu(k,1009) - lu(k,385) * lu(k,993) - lu(k,1017) = lu(k,1017) - lu(k,386) * lu(k,993) - lu(k,2222) = - lu(k,382) * lu(k,2207) - lu(k,2230) = lu(k,2230) - lu(k,383) * lu(k,2207) - lu(k,2235) = lu(k,2235) - lu(k,384) * lu(k,2207) - lu(k,2242) = lu(k,2242) - lu(k,385) * lu(k,2207) - lu(k,2256) = lu(k,2256) - lu(k,386) * lu(k,2207) - lu(k,387) = 1._r8 / lu(k,387) - lu(k,388) = lu(k,388) * lu(k,387) - lu(k,389) = lu(k,389) * lu(k,387) - lu(k,390) = lu(k,390) * lu(k,387) - lu(k,391) = lu(k,391) * lu(k,387) - lu(k,392) = lu(k,392) * lu(k,387) - lu(k,1523) = lu(k,1523) - lu(k,388) * lu(k,1517) - lu(k,1528) = lu(k,1528) - lu(k,389) * lu(k,1517) - lu(k,1529) = lu(k,1529) - lu(k,390) * lu(k,1517) - lu(k,1535) = lu(k,1535) - lu(k,391) * lu(k,1517) - lu(k,1537) = lu(k,1537) - lu(k,392) * lu(k,1517) - lu(k,1687) = lu(k,1687) - lu(k,388) * lu(k,1596) - lu(k,1692) = lu(k,1692) - lu(k,389) * lu(k,1596) - lu(k,1693) = lu(k,1693) - lu(k,390) * lu(k,1596) - lu(k,1699) = lu(k,1699) - lu(k,391) * lu(k,1596) - lu(k,1701) = lu(k,1701) - lu(k,392) * lu(k,1596) - lu(k,1997) = lu(k,1997) - lu(k,388) * lu(k,1981) - lu(k,2002) = - lu(k,389) * lu(k,1981) - lu(k,2003) = lu(k,2003) - lu(k,390) * lu(k,1981) - lu(k,2009) = lu(k,2009) - lu(k,391) * lu(k,1981) - lu(k,2011) = lu(k,2011) - lu(k,392) * lu(k,1981) - lu(k,393) = 1._r8 / lu(k,393) - lu(k,394) = lu(k,394) * lu(k,393) - lu(k,395) = lu(k,395) * lu(k,393) - lu(k,396) = lu(k,396) * lu(k,393) - lu(k,397) = lu(k,397) * lu(k,393) - lu(k,398) = lu(k,398) * lu(k,393) - lu(k,1046) = lu(k,1046) - lu(k,394) * lu(k,1043) - lu(k,1047) = lu(k,1047) - lu(k,395) * lu(k,1043) - lu(k,1051) = - lu(k,396) * lu(k,1043) - lu(k,1053) = - lu(k,397) * lu(k,1043) - lu(k,1057) = lu(k,1057) - lu(k,398) * lu(k,1043) - lu(k,1661) = lu(k,1661) - lu(k,394) * lu(k,1597) - lu(k,1665) = lu(k,1665) - lu(k,395) * lu(k,1597) - lu(k,1690) = lu(k,1690) - lu(k,396) * lu(k,1597) - lu(k,1693) = lu(k,1693) - lu(k,397) * lu(k,1597) - lu(k,1698) = lu(k,1698) - lu(k,398) * lu(k,1597) - lu(k,2083) = - lu(k,394) * lu(k,2037) - lu(k,2085) = lu(k,2085) - lu(k,395) * lu(k,2037) - lu(k,2107) = - lu(k,396) * lu(k,2037) - lu(k,2110) = lu(k,2110) - lu(k,397) * lu(k,2037) - lu(k,2115) = lu(k,2115) - lu(k,398) * lu(k,2037) - lu(k,399) = 1._r8 / lu(k,399) - lu(k,400) = lu(k,400) * lu(k,399) - lu(k,401) = lu(k,401) * lu(k,399) - lu(k,402) = lu(k,402) * lu(k,399) - lu(k,403) = lu(k,403) * lu(k,399) - lu(k,404) = lu(k,404) * lu(k,399) - lu(k,1131) = lu(k,1131) - lu(k,400) * lu(k,1129) - lu(k,1134) = lu(k,1134) - lu(k,401) * lu(k,1129) - lu(k,1135) = lu(k,1135) - lu(k,402) * lu(k,1129) - lu(k,1136) = lu(k,1136) - lu(k,403) * lu(k,1129) - lu(k,1141) = - lu(k,404) * lu(k,1129) - lu(k,1672) = lu(k,1672) - lu(k,400) * lu(k,1598) - lu(k,1685) = lu(k,1685) - lu(k,401) * lu(k,1598) - lu(k,1691) = lu(k,1691) - lu(k,402) * lu(k,1598) - lu(k,1693) = lu(k,1693) - lu(k,403) * lu(k,1598) - lu(k,1705) = lu(k,1705) - lu(k,404) * lu(k,1598) - lu(k,2091) = lu(k,2091) - lu(k,400) * lu(k,2038) - lu(k,2102) = lu(k,2102) - lu(k,401) * lu(k,2038) - lu(k,2108) = lu(k,2108) - lu(k,402) * lu(k,2038) - lu(k,2110) = lu(k,2110) - lu(k,403) * lu(k,2038) - lu(k,2122) = lu(k,2122) - lu(k,404) * lu(k,2038) - lu(k,405) = 1._r8 / lu(k,405) - lu(k,406) = lu(k,406) * lu(k,405) - lu(k,407) = lu(k,407) * lu(k,405) - lu(k,408) = lu(k,408) * lu(k,405) - lu(k,409) = lu(k,409) * lu(k,405) - lu(k,410) = lu(k,410) * lu(k,405) - lu(k,1188) = - lu(k,406) * lu(k,1187) - lu(k,1190) = lu(k,1190) - lu(k,407) * lu(k,1187) - lu(k,1202) = lu(k,1202) - lu(k,408) * lu(k,1187) - lu(k,1206) = lu(k,1206) - lu(k,409) * lu(k,1187) - lu(k,1207) = lu(k,1207) - lu(k,410) * lu(k,1187) - lu(k,1640) = lu(k,1640) - lu(k,406) * lu(k,1599) - lu(k,1652) = lu(k,1652) - lu(k,407) * lu(k,1599) - lu(k,1693) = lu(k,1693) - lu(k,408) * lu(k,1599) - lu(k,1698) = lu(k,1698) - lu(k,409) * lu(k,1599) - lu(k,1700) = lu(k,1700) - lu(k,410) * lu(k,1599) - lu(k,2067) = lu(k,2067) - lu(k,406) * lu(k,2039) - lu(k,2077) = - lu(k,407) * lu(k,2039) - lu(k,2110) = lu(k,2110) - lu(k,408) * lu(k,2039) - lu(k,2115) = lu(k,2115) - lu(k,409) * lu(k,2039) - lu(k,2117) = lu(k,2117) - lu(k,410) * lu(k,2039) - end do - end subroutine lu_fac08 - subroutine lu_fac09( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,411) = 1._r8 / lu(k,411) - lu(k,412) = lu(k,412) * lu(k,411) - lu(k,413) = lu(k,413) * lu(k,411) - lu(k,414) = lu(k,414) * lu(k,411) - lu(k,415) = lu(k,415) * lu(k,411) - lu(k,416) = lu(k,416) * lu(k,411) - lu(k,789) = lu(k,789) - lu(k,412) * lu(k,788) - lu(k,790) = lu(k,790) - lu(k,413) * lu(k,788) - lu(k,793) = - lu(k,414) * lu(k,788) - lu(k,797) = lu(k,797) - lu(k,415) * lu(k,788) - lu(k,798) = - lu(k,416) * lu(k,788) - lu(k,1644) = lu(k,1644) - lu(k,412) * lu(k,1600) - lu(k,1658) = lu(k,1658) - lu(k,413) * lu(k,1600) - lu(k,1693) = lu(k,1693) - lu(k,414) * lu(k,1600) - lu(k,1700) = lu(k,1700) - lu(k,415) * lu(k,1600) - lu(k,1705) = lu(k,1705) - lu(k,416) * lu(k,1600) - lu(k,2072) = lu(k,2072) - lu(k,412) * lu(k,2040) - lu(k,2081) = - lu(k,413) * lu(k,2040) - lu(k,2110) = lu(k,2110) - lu(k,414) * lu(k,2040) - lu(k,2117) = lu(k,2117) - lu(k,415) * lu(k,2040) - lu(k,2122) = lu(k,2122) - lu(k,416) * lu(k,2040) - lu(k,417) = 1._r8 / lu(k,417) - lu(k,418) = lu(k,418) * lu(k,417) - lu(k,419) = lu(k,419) * lu(k,417) - lu(k,420) = lu(k,420) * lu(k,417) - lu(k,421) = lu(k,421) * lu(k,417) - lu(k,422) = lu(k,422) * lu(k,417) - lu(k,484) = lu(k,484) - lu(k,418) * lu(k,483) - lu(k,485) = lu(k,485) - lu(k,419) * lu(k,483) - lu(k,487) = lu(k,487) - lu(k,420) * lu(k,483) - lu(k,488) = - lu(k,421) * lu(k,483) - lu(k,491) = lu(k,491) - lu(k,422) * lu(k,483) - lu(k,1607) = lu(k,1607) - lu(k,418) * lu(k,1601) - lu(k,1611) = lu(k,1611) - lu(k,419) * lu(k,1601) - lu(k,1662) = lu(k,1662) - lu(k,420) * lu(k,1601) - lu(k,1693) = lu(k,1693) - lu(k,421) * lu(k,1601) - lu(k,1700) = lu(k,1700) - lu(k,422) * lu(k,1601) - lu(k,2048) = - lu(k,418) * lu(k,2041) - lu(k,2051) = lu(k,2051) - lu(k,419) * lu(k,2041) - lu(k,2084) = lu(k,2084) - lu(k,420) * lu(k,2041) - lu(k,2110) = lu(k,2110) - lu(k,421) * lu(k,2041) - lu(k,2117) = lu(k,2117) - lu(k,422) * lu(k,2041) - lu(k,423) = 1._r8 / lu(k,423) - lu(k,424) = lu(k,424) * lu(k,423) - lu(k,425) = lu(k,425) * lu(k,423) - lu(k,426) = lu(k,426) * lu(k,423) - lu(k,427) = lu(k,427) * lu(k,423) - lu(k,428) = lu(k,428) * lu(k,423) - lu(k,1693) = lu(k,1693) - lu(k,424) * lu(k,1602) - lu(k,1695) = lu(k,1695) - lu(k,425) * lu(k,1602) - lu(k,1698) = lu(k,1698) - lu(k,426) * lu(k,1602) - lu(k,1700) = lu(k,1700) - lu(k,427) * lu(k,1602) - lu(k,1705) = lu(k,1705) - lu(k,428) * lu(k,1602) - lu(k,1964) = lu(k,1964) - lu(k,424) * lu(k,1936) - lu(k,1966) = lu(k,1966) - lu(k,425) * lu(k,1936) - lu(k,1969) = lu(k,1969) - lu(k,426) * lu(k,1936) - lu(k,1971) = lu(k,1971) - lu(k,427) * lu(k,1936) - lu(k,1976) = - lu(k,428) * lu(k,1936) - lu(k,2110) = lu(k,2110) - lu(k,424) * lu(k,2042) - lu(k,2112) = lu(k,2112) - lu(k,425) * lu(k,2042) - lu(k,2115) = lu(k,2115) - lu(k,426) * lu(k,2042) - lu(k,2117) = lu(k,2117) - lu(k,427) * lu(k,2042) - lu(k,2122) = lu(k,2122) - lu(k,428) * lu(k,2042) - lu(k,429) = 1._r8 / lu(k,429) - lu(k,430) = lu(k,430) * lu(k,429) - lu(k,431) = lu(k,431) * lu(k,429) - lu(k,432) = lu(k,432) * lu(k,429) - lu(k,433) = lu(k,433) * lu(k,429) - lu(k,434) = lu(k,434) * lu(k,429) - lu(k,501) = lu(k,501) - lu(k,430) * lu(k,500) - lu(k,502) = lu(k,502) - lu(k,431) * lu(k,500) - lu(k,503) = lu(k,503) - lu(k,432) * lu(k,500) - lu(k,504) = - lu(k,433) * lu(k,500) - lu(k,507) = lu(k,507) - lu(k,434) * lu(k,500) - lu(k,1613) = lu(k,1613) - lu(k,430) * lu(k,1603) - lu(k,1662) = lu(k,1662) - lu(k,431) * lu(k,1603) - lu(k,1678) = lu(k,1678) - lu(k,432) * lu(k,1603) - lu(k,1693) = lu(k,1693) - lu(k,433) * lu(k,1603) - lu(k,1700) = lu(k,1700) - lu(k,434) * lu(k,1603) - lu(k,2052) = lu(k,2052) - lu(k,430) * lu(k,2043) - lu(k,2084) = lu(k,2084) - lu(k,431) * lu(k,2043) - lu(k,2096) = lu(k,2096) - lu(k,432) * lu(k,2043) - lu(k,2110) = lu(k,2110) - lu(k,433) * lu(k,2043) - lu(k,2117) = lu(k,2117) - lu(k,434) * lu(k,2043) - lu(k,437) = 1._r8 / lu(k,437) - lu(k,438) = lu(k,438) * lu(k,437) - lu(k,439) = lu(k,439) * lu(k,437) - lu(k,440) = lu(k,440) * lu(k,437) - lu(k,441) = lu(k,441) * lu(k,437) - lu(k,442) = lu(k,442) * lu(k,437) - lu(k,1616) = lu(k,1616) - lu(k,438) * lu(k,1604) - lu(k,1693) = lu(k,1693) - lu(k,439) * lu(k,1604) - lu(k,1697) = lu(k,1697) - lu(k,440) * lu(k,1604) - lu(k,1698) = lu(k,1698) - lu(k,441) * lu(k,1604) - lu(k,1700) = lu(k,1700) - lu(k,442) * lu(k,1604) - lu(k,1868) = lu(k,1868) - lu(k,438) * lu(k,1859) - lu(k,1920) = lu(k,1920) - lu(k,439) * lu(k,1859) - lu(k,1924) = lu(k,1924) - lu(k,440) * lu(k,1859) - lu(k,1925) = lu(k,1925) - lu(k,441) * lu(k,1859) - lu(k,1927) = lu(k,1927) - lu(k,442) * lu(k,1859) - lu(k,2053) = lu(k,2053) - lu(k,438) * lu(k,2044) - lu(k,2110) = lu(k,2110) - lu(k,439) * lu(k,2044) - lu(k,2114) = lu(k,2114) - lu(k,440) * lu(k,2044) - lu(k,2115) = lu(k,2115) - lu(k,441) * lu(k,2044) - lu(k,2117) = lu(k,2117) - lu(k,442) * lu(k,2044) - lu(k,443) = 1._r8 / lu(k,443) - lu(k,444) = lu(k,444) * lu(k,443) - lu(k,445) = lu(k,445) * lu(k,443) - lu(k,446) = lu(k,446) * lu(k,443) - lu(k,447) = lu(k,447) * lu(k,443) - lu(k,448) = lu(k,448) * lu(k,443) - lu(k,1480) = - lu(k,444) * lu(k,1478) - lu(k,1487) = lu(k,1487) - lu(k,445) * lu(k,1478) - lu(k,1492) = - lu(k,446) * lu(k,1478) - lu(k,1493) = - lu(k,447) * lu(k,1478) - lu(k,1495) = lu(k,1495) - lu(k,448) * lu(k,1478) - lu(k,1891) = lu(k,1891) - lu(k,444) * lu(k,1860) - lu(k,1918) = lu(k,1918) - lu(k,445) * lu(k,1860) - lu(k,1924) = lu(k,1924) - lu(k,446) * lu(k,1860) - lu(k,1925) = lu(k,1925) - lu(k,447) * lu(k,1860) - lu(k,1927) = lu(k,1927) - lu(k,448) * lu(k,1860) - lu(k,2082) = lu(k,2082) - lu(k,444) * lu(k,2045) - lu(k,2108) = lu(k,2108) - lu(k,445) * lu(k,2045) - lu(k,2114) = lu(k,2114) - lu(k,446) * lu(k,2045) - lu(k,2115) = lu(k,2115) - lu(k,447) * lu(k,2045) - lu(k,2117) = lu(k,2117) - lu(k,448) * lu(k,2045) - lu(k,450) = 1._r8 / lu(k,450) - lu(k,451) = lu(k,451) * lu(k,450) - lu(k,452) = lu(k,452) * lu(k,450) - lu(k,453) = lu(k,453) * lu(k,450) - lu(k,454) = lu(k,454) * lu(k,450) - lu(k,455) = lu(k,455) * lu(k,450) - lu(k,1662) = lu(k,1662) - lu(k,451) * lu(k,1605) - lu(k,1693) = lu(k,1693) - lu(k,452) * lu(k,1605) - lu(k,1697) = lu(k,1697) - lu(k,453) * lu(k,1605) - lu(k,1698) = lu(k,1698) - lu(k,454) * lu(k,1605) - lu(k,1700) = lu(k,1700) - lu(k,455) * lu(k,1605) - lu(k,1893) = lu(k,1893) - lu(k,451) * lu(k,1861) - lu(k,1920) = lu(k,1920) - lu(k,452) * lu(k,1861) - lu(k,1924) = lu(k,1924) - lu(k,453) * lu(k,1861) - lu(k,1925) = lu(k,1925) - lu(k,454) * lu(k,1861) - lu(k,1927) = lu(k,1927) - lu(k,455) * lu(k,1861) - lu(k,2084) = lu(k,2084) - lu(k,451) * lu(k,2046) - lu(k,2110) = lu(k,2110) - lu(k,452) * lu(k,2046) - lu(k,2114) = lu(k,2114) - lu(k,453) * lu(k,2046) - lu(k,2115) = lu(k,2115) - lu(k,454) * lu(k,2046) - lu(k,2117) = lu(k,2117) - lu(k,455) * lu(k,2046) - end do - end subroutine lu_fac09 - subroutine lu_fac10( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,456) = 1._r8 / lu(k,456) - lu(k,457) = lu(k,457) * lu(k,456) - lu(k,458) = lu(k,458) * lu(k,456) - lu(k,459) = lu(k,459) * lu(k,456) - lu(k,460) = lu(k,460) * lu(k,456) - lu(k,461) = lu(k,461) * lu(k,456) - lu(k,1689) = lu(k,1689) - lu(k,457) * lu(k,1606) - lu(k,1691) = lu(k,1691) - lu(k,458) * lu(k,1606) - lu(k,1693) = lu(k,1693) - lu(k,459) * lu(k,1606) - lu(k,1696) = lu(k,1696) - lu(k,460) * lu(k,1606) - lu(k,1705) = lu(k,1705) - lu(k,461) * lu(k,1606) - lu(k,1824) = - lu(k,457) * lu(k,1792) - lu(k,1826) = lu(k,1826) - lu(k,458) * lu(k,1792) - lu(k,1828) = lu(k,1828) - lu(k,459) * lu(k,1792) - lu(k,1831) = lu(k,1831) - lu(k,460) * lu(k,1792) - lu(k,1840) = - lu(k,461) * lu(k,1792) - lu(k,2106) = lu(k,2106) - lu(k,457) * lu(k,2047) - lu(k,2108) = lu(k,2108) - lu(k,458) * lu(k,2047) - lu(k,2110) = lu(k,2110) - lu(k,459) * lu(k,2047) - lu(k,2113) = lu(k,2113) - lu(k,460) * lu(k,2047) - lu(k,2122) = lu(k,2122) - lu(k,461) * lu(k,2047) - lu(k,462) = 1._r8 / lu(k,462) - lu(k,463) = lu(k,463) * lu(k,462) - lu(k,464) = lu(k,464) * lu(k,462) - lu(k,486) = - lu(k,463) * lu(k,484) - lu(k,491) = lu(k,491) - lu(k,464) * lu(k,484) - lu(k,658) = - lu(k,463) * lu(k,655) - lu(k,666) = lu(k,666) - lu(k,464) * lu(k,655) - lu(k,696) = - lu(k,463) * lu(k,693) - lu(k,705) = lu(k,705) - lu(k,464) * lu(k,693) - lu(k,725) = - lu(k,463) * lu(k,722) - lu(k,735) = lu(k,735) - lu(k,464) * lu(k,722) - lu(k,749) = - lu(k,463) * lu(k,746) - lu(k,760) = lu(k,760) - lu(k,464) * lu(k,746) - lu(k,1638) = - lu(k,463) * lu(k,1607) - lu(k,1700) = lu(k,1700) - lu(k,464) * lu(k,1607) - lu(k,1878) = lu(k,1878) - lu(k,463) * lu(k,1862) - lu(k,1927) = lu(k,1927) - lu(k,464) * lu(k,1862) - lu(k,2065) = lu(k,2065) - lu(k,463) * lu(k,2048) - lu(k,2117) = lu(k,2117) - lu(k,464) * lu(k,2048) - lu(k,465) = 1._r8 / lu(k,465) - lu(k,466) = lu(k,466) * lu(k,465) - lu(k,467) = lu(k,467) * lu(k,465) - lu(k,468) = lu(k,468) * lu(k,465) - lu(k,627) = lu(k,627) - lu(k,466) * lu(k,626) - lu(k,630) = lu(k,630) - lu(k,467) * lu(k,626) - lu(k,632) = - lu(k,468) * lu(k,626) - lu(k,1629) = lu(k,1629) - lu(k,466) * lu(k,1608) - lu(k,1698) = lu(k,1698) - lu(k,467) * lu(k,1608) - lu(k,1704) = lu(k,1704) - lu(k,468) * lu(k,1608) - lu(k,1874) = lu(k,1874) - lu(k,466) * lu(k,1863) - lu(k,1925) = lu(k,1925) - lu(k,467) * lu(k,1863) - lu(k,1931) = lu(k,1931) - lu(k,468) * lu(k,1863) - lu(k,1943) = - lu(k,466) * lu(k,1937) - lu(k,1969) = lu(k,1969) - lu(k,467) * lu(k,1937) - lu(k,1975) = lu(k,1975) - lu(k,468) * lu(k,1937) - lu(k,2057) = lu(k,2057) - lu(k,466) * lu(k,2049) - lu(k,2115) = lu(k,2115) - lu(k,467) * lu(k,2049) - lu(k,2121) = lu(k,2121) - lu(k,468) * lu(k,2049) - lu(k,2211) = lu(k,2211) - lu(k,466) * lu(k,2208) - lu(k,2254) = lu(k,2254) - lu(k,467) * lu(k,2208) - lu(k,2260) = lu(k,2260) - lu(k,468) * lu(k,2208) - lu(k,469) = 1._r8 / lu(k,469) - lu(k,470) = lu(k,470) * lu(k,469) - lu(k,471) = lu(k,471) * lu(k,469) - lu(k,472) = lu(k,472) * lu(k,469) - lu(k,473) = lu(k,473) * lu(k,469) - lu(k,474) = lu(k,474) * lu(k,469) - lu(k,475) = lu(k,475) * lu(k,469) - lu(k,1523) = lu(k,1523) - lu(k,470) * lu(k,1518) - lu(k,1528) = lu(k,1528) - lu(k,471) * lu(k,1518) - lu(k,1529) = lu(k,1529) - lu(k,472) * lu(k,1518) - lu(k,1535) = lu(k,1535) - lu(k,473) * lu(k,1518) - lu(k,1537) = lu(k,1537) - lu(k,474) * lu(k,1518) - lu(k,1541) = lu(k,1541) - lu(k,475) * lu(k,1518) - lu(k,1687) = lu(k,1687) - lu(k,470) * lu(k,1609) - lu(k,1692) = lu(k,1692) - lu(k,471) * lu(k,1609) - lu(k,1693) = lu(k,1693) - lu(k,472) * lu(k,1609) - lu(k,1699) = lu(k,1699) - lu(k,473) * lu(k,1609) - lu(k,1701) = lu(k,1701) - lu(k,474) * lu(k,1609) - lu(k,1705) = lu(k,1705) - lu(k,475) * lu(k,1609) - lu(k,1997) = lu(k,1997) - lu(k,470) * lu(k,1982) - lu(k,2002) = lu(k,2002) - lu(k,471) * lu(k,1982) - lu(k,2003) = lu(k,2003) - lu(k,472) * lu(k,1982) - lu(k,2009) = lu(k,2009) - lu(k,473) * lu(k,1982) - lu(k,2011) = lu(k,2011) - lu(k,474) * lu(k,1982) - lu(k,2015) = lu(k,2015) - lu(k,475) * lu(k,1982) - lu(k,476) = 1._r8 / lu(k,476) - lu(k,477) = lu(k,477) * lu(k,476) - lu(k,478) = lu(k,478) * lu(k,476) - lu(k,479) = lu(k,479) * lu(k,476) - lu(k,480) = lu(k,480) * lu(k,476) - lu(k,481) = lu(k,481) * lu(k,476) - lu(k,482) = lu(k,482) * lu(k,476) - lu(k,914) = lu(k,914) - lu(k,477) * lu(k,911) - lu(k,915) = lu(k,915) - lu(k,478) * lu(k,911) - lu(k,916) = lu(k,916) - lu(k,479) * lu(k,911) - lu(k,918) = lu(k,918) - lu(k,480) * lu(k,911) - lu(k,919) = - lu(k,481) * lu(k,911) - lu(k,923) = lu(k,923) - lu(k,482) * lu(k,911) - lu(k,1657) = lu(k,1657) - lu(k,477) * lu(k,1610) - lu(k,1658) = lu(k,1658) - lu(k,478) * lu(k,1610) - lu(k,1661) = lu(k,1661) - lu(k,479) * lu(k,1610) - lu(k,1691) = lu(k,1691) - lu(k,480) * lu(k,1610) - lu(k,1693) = lu(k,1693) - lu(k,481) * lu(k,1610) - lu(k,1700) = lu(k,1700) - lu(k,482) * lu(k,1610) - lu(k,2080) = lu(k,2080) - lu(k,477) * lu(k,2050) - lu(k,2081) = lu(k,2081) - lu(k,478) * lu(k,2050) - lu(k,2083) = lu(k,2083) - lu(k,479) * lu(k,2050) - lu(k,2108) = lu(k,2108) - lu(k,480) * lu(k,2050) - lu(k,2110) = lu(k,2110) - lu(k,481) * lu(k,2050) - lu(k,2117) = lu(k,2117) - lu(k,482) * lu(k,2050) - lu(k,485) = 1._r8 / lu(k,485) - lu(k,486) = lu(k,486) * lu(k,485) - lu(k,487) = lu(k,487) * lu(k,485) - lu(k,488) = lu(k,488) * lu(k,485) - lu(k,489) = lu(k,489) * lu(k,485) - lu(k,490) = lu(k,490) * lu(k,485) - lu(k,491) = lu(k,491) * lu(k,485) - lu(k,1638) = lu(k,1638) - lu(k,486) * lu(k,1611) - lu(k,1662) = lu(k,1662) - lu(k,487) * lu(k,1611) - lu(k,1693) = lu(k,1693) - lu(k,488) * lu(k,1611) - lu(k,1697) = lu(k,1697) - lu(k,489) * lu(k,1611) - lu(k,1698) = lu(k,1698) - lu(k,490) * lu(k,1611) - lu(k,1700) = lu(k,1700) - lu(k,491) * lu(k,1611) - lu(k,1878) = lu(k,1878) - lu(k,486) * lu(k,1864) - lu(k,1893) = lu(k,1893) - lu(k,487) * lu(k,1864) - lu(k,1920) = lu(k,1920) - lu(k,488) * lu(k,1864) - lu(k,1924) = lu(k,1924) - lu(k,489) * lu(k,1864) - lu(k,1925) = lu(k,1925) - lu(k,490) * lu(k,1864) - lu(k,1927) = lu(k,1927) - lu(k,491) * lu(k,1864) - lu(k,2065) = lu(k,2065) - lu(k,486) * lu(k,2051) - lu(k,2084) = lu(k,2084) - lu(k,487) * lu(k,2051) - lu(k,2110) = lu(k,2110) - lu(k,488) * lu(k,2051) - lu(k,2114) = lu(k,2114) - lu(k,489) * lu(k,2051) - lu(k,2115) = lu(k,2115) - lu(k,490) * lu(k,2051) - lu(k,2117) = lu(k,2117) - lu(k,491) * lu(k,2051) - lu(k,493) = 1._r8 / lu(k,493) - lu(k,494) = lu(k,494) * lu(k,493) - lu(k,495) = lu(k,495) * lu(k,493) - lu(k,496) = lu(k,496) * lu(k,493) - lu(k,497) = lu(k,497) * lu(k,493) - lu(k,498) = lu(k,498) * lu(k,493) - lu(k,499) = lu(k,499) * lu(k,493) - lu(k,1689) = lu(k,1689) - lu(k,494) * lu(k,1612) - lu(k,1692) = lu(k,1692) - lu(k,495) * lu(k,1612) - lu(k,1693) = lu(k,1693) - lu(k,496) * lu(k,1612) - lu(k,1697) = lu(k,1697) - lu(k,497) * lu(k,1612) - lu(k,1698) = lu(k,1698) - lu(k,498) * lu(k,1612) - lu(k,1703) = lu(k,1703) - lu(k,499) * lu(k,1612) - lu(k,1916) = - lu(k,494) * lu(k,1865) - lu(k,1919) = - lu(k,495) * lu(k,1865) - lu(k,1920) = lu(k,1920) - lu(k,496) * lu(k,1865) - lu(k,1924) = lu(k,1924) - lu(k,497) * lu(k,1865) - lu(k,1925) = lu(k,1925) - lu(k,498) * lu(k,1865) - lu(k,1930) = lu(k,1930) - lu(k,499) * lu(k,1865) - lu(k,1960) = - lu(k,494) * lu(k,1938) - lu(k,1963) = lu(k,1963) - lu(k,495) * lu(k,1938) - lu(k,1964) = lu(k,1964) - lu(k,496) * lu(k,1938) - lu(k,1968) = lu(k,1968) - lu(k,497) * lu(k,1938) - lu(k,1969) = lu(k,1969) - lu(k,498) * lu(k,1938) - lu(k,1974) = lu(k,1974) - lu(k,499) * lu(k,1938) - end do - end subroutine lu_fac10 - subroutine lu_fac11( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,501) = 1._r8 / lu(k,501) - lu(k,502) = lu(k,502) * lu(k,501) - lu(k,503) = lu(k,503) * lu(k,501) - lu(k,504) = lu(k,504) * lu(k,501) - lu(k,505) = lu(k,505) * lu(k,501) - lu(k,506) = lu(k,506) * lu(k,501) - lu(k,507) = lu(k,507) * lu(k,501) - lu(k,1662) = lu(k,1662) - lu(k,502) * lu(k,1613) - lu(k,1678) = lu(k,1678) - lu(k,503) * lu(k,1613) - lu(k,1693) = lu(k,1693) - lu(k,504) * lu(k,1613) - lu(k,1697) = lu(k,1697) - lu(k,505) * lu(k,1613) - lu(k,1698) = lu(k,1698) - lu(k,506) * lu(k,1613) - lu(k,1700) = lu(k,1700) - lu(k,507) * lu(k,1613) - lu(k,1893) = lu(k,1893) - lu(k,502) * lu(k,1866) - lu(k,1907) = lu(k,1907) - lu(k,503) * lu(k,1866) - lu(k,1920) = lu(k,1920) - lu(k,504) * lu(k,1866) - lu(k,1924) = lu(k,1924) - lu(k,505) * lu(k,1866) - lu(k,1925) = lu(k,1925) - lu(k,506) * lu(k,1866) - lu(k,1927) = lu(k,1927) - lu(k,507) * lu(k,1866) - lu(k,2084) = lu(k,2084) - lu(k,502) * lu(k,2052) - lu(k,2096) = lu(k,2096) - lu(k,503) * lu(k,2052) - lu(k,2110) = lu(k,2110) - lu(k,504) * lu(k,2052) - lu(k,2114) = lu(k,2114) - lu(k,505) * lu(k,2052) - lu(k,2115) = lu(k,2115) - lu(k,506) * lu(k,2052) - lu(k,2117) = lu(k,2117) - lu(k,507) * lu(k,2052) - lu(k,508) = 1._r8 / lu(k,508) - lu(k,509) = lu(k,509) * lu(k,508) - lu(k,510) = lu(k,510) * lu(k,508) - lu(k,511) = lu(k,511) * lu(k,508) - lu(k,512) = lu(k,512) * lu(k,508) - lu(k,635) = - lu(k,509) * lu(k,633) - lu(k,636) = - lu(k,510) * lu(k,633) - lu(k,639) = - lu(k,511) * lu(k,633) - lu(k,641) = lu(k,641) - lu(k,512) * lu(k,633) - lu(k,669) = - lu(k,509) * lu(k,667) - lu(k,670) = - lu(k,510) * lu(k,667) - lu(k,674) = - lu(k,511) * lu(k,667) - lu(k,676) = lu(k,676) - lu(k,512) * lu(k,667) - lu(k,887) = - lu(k,509) * lu(k,884) - lu(k,888) = - lu(k,510) * lu(k,884) - lu(k,892) = - lu(k,511) * lu(k,884) - lu(k,894) = - lu(k,512) * lu(k,884) - lu(k,1634) = lu(k,1634) - lu(k,509) * lu(k,1614) - lu(k,1649) = lu(k,1649) - lu(k,510) * lu(k,1614) - lu(k,1685) = lu(k,1685) - lu(k,511) * lu(k,1614) - lu(k,1693) = lu(k,1693) - lu(k,512) * lu(k,1614) - lu(k,1876) = lu(k,1876) - lu(k,509) * lu(k,1867) - lu(k,1885) = lu(k,1885) - lu(k,510) * lu(k,1867) - lu(k,1913) = lu(k,1913) - lu(k,511) * lu(k,1867) - lu(k,1920) = lu(k,1920) - lu(k,512) * lu(k,1867) - lu(k,513) = 1._r8 / lu(k,513) - lu(k,514) = lu(k,514) * lu(k,513) - lu(k,515) = lu(k,515) * lu(k,513) - lu(k,516) = lu(k,516) * lu(k,513) - lu(k,517) = lu(k,517) * lu(k,513) - lu(k,518) = lu(k,518) * lu(k,513) - lu(k,1234) = lu(k,1234) - lu(k,514) * lu(k,1232) - lu(k,1236) = lu(k,1236) - lu(k,515) * lu(k,1232) - lu(k,1237) = lu(k,1237) - lu(k,516) * lu(k,1232) - lu(k,1244) = lu(k,1244) - lu(k,517) * lu(k,1232) - lu(k,1245) = lu(k,1245) - lu(k,518) * lu(k,1232) - lu(k,1679) = lu(k,1679) - lu(k,514) * lu(k,1615) - lu(k,1689) = lu(k,1689) - lu(k,515) * lu(k,1615) - lu(k,1693) = lu(k,1693) - lu(k,516) * lu(k,1615) - lu(k,1703) = lu(k,1703) - lu(k,517) * lu(k,1615) - lu(k,1704) = lu(k,1704) - lu(k,518) * lu(k,1615) - lu(k,2180) = lu(k,2180) - lu(k,514) * lu(k,2171) - lu(k,2184) = lu(k,2184) - lu(k,515) * lu(k,2171) - lu(k,2188) = lu(k,2188) - lu(k,516) * lu(k,2171) - lu(k,2198) = lu(k,2198) - lu(k,517) * lu(k,2171) - lu(k,2199) = lu(k,2199) - lu(k,518) * lu(k,2171) - lu(k,2236) = lu(k,2236) - lu(k,514) * lu(k,2209) - lu(k,2245) = lu(k,2245) - lu(k,515) * lu(k,2209) - lu(k,2249) = lu(k,2249) - lu(k,516) * lu(k,2209) - lu(k,2259) = lu(k,2259) - lu(k,517) * lu(k,2209) - lu(k,2260) = lu(k,2260) - lu(k,518) * lu(k,2209) - lu(k,520) = 1._r8 / lu(k,520) - lu(k,521) = lu(k,521) * lu(k,520) - lu(k,522) = lu(k,522) * lu(k,520) - lu(k,523) = lu(k,523) * lu(k,520) - lu(k,524) = lu(k,524) * lu(k,520) - lu(k,525) = lu(k,525) * lu(k,520) - lu(k,1629) = lu(k,1629) - lu(k,521) * lu(k,1616) - lu(k,1693) = lu(k,1693) - lu(k,522) * lu(k,1616) - lu(k,1697) = lu(k,1697) - lu(k,523) * lu(k,1616) - lu(k,1698) = lu(k,1698) - lu(k,524) * lu(k,1616) - lu(k,1700) = lu(k,1700) - lu(k,525) * lu(k,1616) - lu(k,1874) = lu(k,1874) - lu(k,521) * lu(k,1868) - lu(k,1920) = lu(k,1920) - lu(k,522) * lu(k,1868) - lu(k,1924) = lu(k,1924) - lu(k,523) * lu(k,1868) - lu(k,1925) = lu(k,1925) - lu(k,524) * lu(k,1868) - lu(k,1927) = lu(k,1927) - lu(k,525) * lu(k,1868) - lu(k,1943) = lu(k,1943) - lu(k,521) * lu(k,1939) - lu(k,1964) = lu(k,1964) - lu(k,522) * lu(k,1939) - lu(k,1968) = lu(k,1968) - lu(k,523) * lu(k,1939) - lu(k,1969) = lu(k,1969) - lu(k,524) * lu(k,1939) - lu(k,1971) = lu(k,1971) - lu(k,525) * lu(k,1939) - lu(k,2057) = lu(k,2057) - lu(k,521) * lu(k,2053) - lu(k,2110) = lu(k,2110) - lu(k,522) * lu(k,2053) - lu(k,2114) = lu(k,2114) - lu(k,523) * lu(k,2053) - lu(k,2115) = lu(k,2115) - lu(k,524) * lu(k,2053) - lu(k,2117) = lu(k,2117) - lu(k,525) * lu(k,2053) - lu(k,526) = 1._r8 / lu(k,526) - lu(k,527) = lu(k,527) * lu(k,526) - lu(k,528) = lu(k,528) * lu(k,526) - lu(k,529) = lu(k,529) * lu(k,526) - lu(k,530) = lu(k,530) * lu(k,526) - lu(k,531) = lu(k,531) * lu(k,526) - lu(k,532) = lu(k,532) * lu(k,526) - lu(k,533) = lu(k,533) * lu(k,526) - lu(k,1373) = lu(k,1373) - lu(k,527) * lu(k,1370) - lu(k,1388) = lu(k,1388) - lu(k,528) * lu(k,1370) - lu(k,1391) = lu(k,1391) - lu(k,529) * lu(k,1370) - lu(k,1392) = lu(k,1392) - lu(k,530) * lu(k,1370) - lu(k,1393) = - lu(k,531) * lu(k,1370) - lu(k,1394) = lu(k,1394) - lu(k,532) * lu(k,1370) - lu(k,1396) = lu(k,1396) - lu(k,533) * lu(k,1370) - lu(k,1646) = lu(k,1646) - lu(k,527) * lu(k,1617) - lu(k,1685) = lu(k,1685) - lu(k,528) * lu(k,1617) - lu(k,1691) = lu(k,1691) - lu(k,529) * lu(k,1617) - lu(k,1693) = lu(k,1693) - lu(k,530) * lu(k,1617) - lu(k,1695) = lu(k,1695) - lu(k,531) * lu(k,1617) - lu(k,1696) = lu(k,1696) - lu(k,532) * lu(k,1617) - lu(k,1698) = lu(k,1698) - lu(k,533) * lu(k,1617) - lu(k,1947) = - lu(k,527) * lu(k,1940) - lu(k,1957) = lu(k,1957) - lu(k,528) * lu(k,1940) - lu(k,1962) = - lu(k,529) * lu(k,1940) - lu(k,1964) = lu(k,1964) - lu(k,530) * lu(k,1940) - lu(k,1966) = lu(k,1966) - lu(k,531) * lu(k,1940) - lu(k,1967) = - lu(k,532) * lu(k,1940) - lu(k,1969) = lu(k,1969) - lu(k,533) * lu(k,1940) - lu(k,534) = 1._r8 / lu(k,534) - lu(k,535) = lu(k,535) * lu(k,534) - lu(k,536) = lu(k,536) * lu(k,534) - lu(k,537) = lu(k,537) * lu(k,534) - lu(k,538) = lu(k,538) * lu(k,534) - lu(k,539) = lu(k,539) * lu(k,534) - lu(k,540) = lu(k,540) * lu(k,534) - lu(k,541) = lu(k,541) * lu(k,534) - lu(k,1280) = - lu(k,535) * lu(k,1276) - lu(k,1283) = lu(k,1283) - lu(k,536) * lu(k,1276) - lu(k,1285) = lu(k,1285) - lu(k,537) * lu(k,1276) - lu(k,1286) = - lu(k,538) * lu(k,1276) - lu(k,1295) = - lu(k,539) * lu(k,1276) - lu(k,1297) = lu(k,1297) - lu(k,540) * lu(k,1276) - lu(k,1302) = lu(k,1302) - lu(k,541) * lu(k,1276) - lu(k,1652) = lu(k,1652) - lu(k,535) * lu(k,1618) - lu(k,1669) = lu(k,1669) - lu(k,536) * lu(k,1618) - lu(k,1673) = lu(k,1673) - lu(k,537) * lu(k,1618) - lu(k,1674) = lu(k,1674) - lu(k,538) * lu(k,1618) - lu(k,1690) = lu(k,1690) - lu(k,539) * lu(k,1618) - lu(k,1693) = lu(k,1693) - lu(k,540) * lu(k,1618) - lu(k,1700) = lu(k,1700) - lu(k,541) * lu(k,1618) - lu(k,1886) = - lu(k,535) * lu(k,1869) - lu(k,1898) = lu(k,1898) - lu(k,536) * lu(k,1869) - lu(k,1902) = lu(k,1902) - lu(k,537) * lu(k,1869) - lu(k,1903) = lu(k,1903) - lu(k,538) * lu(k,1869) - lu(k,1917) = lu(k,1917) - lu(k,539) * lu(k,1869) - lu(k,1920) = lu(k,1920) - lu(k,540) * lu(k,1869) - lu(k,1927) = lu(k,1927) - lu(k,541) * lu(k,1869) - end do - end subroutine lu_fac11 - subroutine lu_fac12( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,542) = 1._r8 / lu(k,542) - lu(k,543) = lu(k,543) * lu(k,542) - lu(k,544) = lu(k,544) * lu(k,542) - lu(k,545) = lu(k,545) * lu(k,542) - lu(k,546) = lu(k,546) * lu(k,542) - lu(k,547) = lu(k,547) * lu(k,542) - lu(k,548) = lu(k,548) * lu(k,542) - lu(k,549) = lu(k,549) * lu(k,542) - lu(k,770) = lu(k,770) - lu(k,543) * lu(k,769) - lu(k,771) = lu(k,771) - lu(k,544) * lu(k,769) - lu(k,772) = - lu(k,545) * lu(k,769) - lu(k,773) = lu(k,773) - lu(k,546) * lu(k,769) - lu(k,774) = - lu(k,547) * lu(k,769) - lu(k,777) = lu(k,777) - lu(k,548) * lu(k,769) - lu(k,778) = - lu(k,549) * lu(k,769) - lu(k,1643) = lu(k,1643) - lu(k,543) * lu(k,1619) - lu(k,1668) = lu(k,1668) - lu(k,544) * lu(k,1619) - lu(k,1673) = lu(k,1673) - lu(k,545) * lu(k,1619) - lu(k,1691) = lu(k,1691) - lu(k,546) * lu(k,1619) - lu(k,1693) = lu(k,1693) - lu(k,547) * lu(k,1619) - lu(k,1700) = lu(k,1700) - lu(k,548) * lu(k,1619) - lu(k,1705) = lu(k,1705) - lu(k,549) * lu(k,1619) - lu(k,2070) = lu(k,2070) - lu(k,543) * lu(k,2054) - lu(k,2087) = lu(k,2087) - lu(k,544) * lu(k,2054) - lu(k,2092) = - lu(k,545) * lu(k,2054) - lu(k,2108) = lu(k,2108) - lu(k,546) * lu(k,2054) - lu(k,2110) = lu(k,2110) - lu(k,547) * lu(k,2054) - lu(k,2117) = lu(k,2117) - lu(k,548) * lu(k,2054) - lu(k,2122) = lu(k,2122) - lu(k,549) * lu(k,2054) - lu(k,550) = 1._r8 / lu(k,550) - lu(k,551) = lu(k,551) * lu(k,550) - lu(k,552) = lu(k,552) * lu(k,550) - lu(k,553) = lu(k,553) * lu(k,550) - lu(k,554) = lu(k,554) * lu(k,550) - lu(k,555) = lu(k,555) * lu(k,550) - lu(k,556) = lu(k,556) * lu(k,550) - lu(k,557) = lu(k,557) * lu(k,550) - lu(k,1637) = lu(k,1637) - lu(k,551) * lu(k,1620) - lu(k,1659) = lu(k,1659) - lu(k,552) * lu(k,1620) - lu(k,1671) = lu(k,1671) - lu(k,553) * lu(k,1620) - lu(k,1691) = lu(k,1691) - lu(k,554) * lu(k,1620) - lu(k,1693) = lu(k,1693) - lu(k,555) * lu(k,1620) - lu(k,1700) = lu(k,1700) - lu(k,556) * lu(k,1620) - lu(k,1704) = lu(k,1704) - lu(k,557) * lu(k,1620) - lu(k,1986) = - lu(k,551) * lu(k,1983) - lu(k,1990) = lu(k,1990) - lu(k,552) * lu(k,1983) - lu(k,1994) = lu(k,1994) - lu(k,553) * lu(k,1983) - lu(k,2001) = lu(k,2001) - lu(k,554) * lu(k,1983) - lu(k,2003) = lu(k,2003) - lu(k,555) * lu(k,1983) - lu(k,2010) = lu(k,2010) - lu(k,556) * lu(k,1983) - lu(k,2014) = lu(k,2014) - lu(k,557) * lu(k,1983) - lu(k,2213) = - lu(k,551) * lu(k,2210) - lu(k,2219) = lu(k,2219) - lu(k,552) * lu(k,2210) - lu(k,2230) = lu(k,2230) - lu(k,553) * lu(k,2210) - lu(k,2247) = lu(k,2247) - lu(k,554) * lu(k,2210) - lu(k,2249) = lu(k,2249) - lu(k,555) * lu(k,2210) - lu(k,2256) = lu(k,2256) - lu(k,556) * lu(k,2210) - lu(k,2260) = lu(k,2260) - lu(k,557) * lu(k,2210) - lu(k,558) = 1._r8 / lu(k,558) - lu(k,559) = lu(k,559) * lu(k,558) - lu(k,560) = lu(k,560) * lu(k,558) - lu(k,561) = lu(k,561) * lu(k,558) - lu(k,562) = lu(k,562) * lu(k,558) - lu(k,563) = lu(k,563) * lu(k,558) - lu(k,564) = lu(k,564) * lu(k,558) - lu(k,565) = lu(k,565) * lu(k,558) - lu(k,1946) = - lu(k,559) * lu(k,1941) - lu(k,1958) = - lu(k,560) * lu(k,1941) - lu(k,1961) = lu(k,1961) - lu(k,561) * lu(k,1941) - lu(k,1966) = lu(k,1966) - lu(k,562) * lu(k,1941) - lu(k,1969) = lu(k,1969) - lu(k,563) * lu(k,1941) - lu(k,1973) = lu(k,1973) - lu(k,564) * lu(k,1941) - lu(k,1974) = lu(k,1974) - lu(k,565) * lu(k,1941) - lu(k,2149) = lu(k,2149) - lu(k,559) * lu(k,2148) - lu(k,2152) = lu(k,2152) - lu(k,560) * lu(k,2148) - lu(k,2154) = - lu(k,561) * lu(k,2148) - lu(k,2159) = - lu(k,562) * lu(k,2148) - lu(k,2162) = lu(k,2162) - lu(k,563) * lu(k,2148) - lu(k,2166) = lu(k,2166) - lu(k,564) * lu(k,2148) - lu(k,2167) = lu(k,2167) - lu(k,565) * lu(k,2148) - lu(k,2174) = lu(k,2174) - lu(k,559) * lu(k,2172) - lu(k,2182) = lu(k,2182) - lu(k,560) * lu(k,2172) - lu(k,2185) = - lu(k,561) * lu(k,2172) - lu(k,2190) = lu(k,2190) - lu(k,562) * lu(k,2172) - lu(k,2193) = lu(k,2193) - lu(k,563) * lu(k,2172) - lu(k,2197) = lu(k,2197) - lu(k,564) * lu(k,2172) - lu(k,2198) = lu(k,2198) - lu(k,565) * lu(k,2172) - lu(k,566) = 1._r8 / lu(k,566) - lu(k,567) = lu(k,567) * lu(k,566) - lu(k,568) = lu(k,568) * lu(k,566) - lu(k,569) = lu(k,569) * lu(k,566) - lu(k,570) = lu(k,570) * lu(k,566) - lu(k,571) = lu(k,571) * lu(k,566) - lu(k,572) = lu(k,572) * lu(k,566) - lu(k,573) = lu(k,573) * lu(k,566) - lu(k,1658) = lu(k,1658) - lu(k,567) * lu(k,1621) - lu(k,1668) = lu(k,1668) - lu(k,568) * lu(k,1621) - lu(k,1674) = lu(k,1674) - lu(k,569) * lu(k,1621) - lu(k,1691) = lu(k,1691) - lu(k,570) * lu(k,1621) - lu(k,1697) = lu(k,1697) - lu(k,571) * lu(k,1621) - lu(k,1698) = lu(k,1698) - lu(k,572) * lu(k,1621) - lu(k,1700) = lu(k,1700) - lu(k,573) * lu(k,1621) - lu(k,1742) = lu(k,1742) - lu(k,567) * lu(k,1738) - lu(k,1752) = lu(k,1752) - lu(k,568) * lu(k,1738) - lu(k,1758) = - lu(k,569) * lu(k,1738) - lu(k,1774) = lu(k,1774) - lu(k,570) * lu(k,1738) - lu(k,1780) = lu(k,1780) - lu(k,571) * lu(k,1738) - lu(k,1781) = lu(k,1781) - lu(k,572) * lu(k,1738) - lu(k,1783) = lu(k,1783) - lu(k,573) * lu(k,1738) - lu(k,1890) = lu(k,1890) - lu(k,567) * lu(k,1870) - lu(k,1897) = lu(k,1897) - lu(k,568) * lu(k,1870) - lu(k,1903) = lu(k,1903) - lu(k,569) * lu(k,1870) - lu(k,1918) = lu(k,1918) - lu(k,570) * lu(k,1870) - lu(k,1924) = lu(k,1924) - lu(k,571) * lu(k,1870) - lu(k,1925) = lu(k,1925) - lu(k,572) * lu(k,1870) - lu(k,1927) = lu(k,1927) - lu(k,573) * lu(k,1870) - lu(k,574) = 1._r8 / lu(k,574) - lu(k,575) = lu(k,575) * lu(k,574) - lu(k,576) = lu(k,576) * lu(k,574) - lu(k,577) = lu(k,577) * lu(k,574) - lu(k,578) = lu(k,578) * lu(k,574) - lu(k,579) = lu(k,579) * lu(k,574) - lu(k,580) = lu(k,580) * lu(k,574) - lu(k,581) = lu(k,581) * lu(k,574) - lu(k,582) = lu(k,582) * lu(k,574) - lu(k,1352) = lu(k,1352) - lu(k,575) * lu(k,1349) - lu(k,1354) = - lu(k,576) * lu(k,1349) - lu(k,1356) = lu(k,1356) - lu(k,577) * lu(k,1349) - lu(k,1359) = lu(k,1359) - lu(k,578) * lu(k,1349) - lu(k,1360) = lu(k,1360) - lu(k,579) * lu(k,1349) - lu(k,1361) = lu(k,1361) - lu(k,580) * lu(k,1349) - lu(k,1364) = lu(k,1364) - lu(k,581) * lu(k,1349) - lu(k,1365) = lu(k,1365) - lu(k,582) * lu(k,1349) - lu(k,1646) = lu(k,1646) - lu(k,575) * lu(k,1622) - lu(k,1673) = lu(k,1673) - lu(k,576) * lu(k,1622) - lu(k,1684) = lu(k,1684) - lu(k,577) * lu(k,1622) - lu(k,1691) = lu(k,1691) - lu(k,578) * lu(k,1622) - lu(k,1693) = lu(k,1693) - lu(k,579) * lu(k,1622) - lu(k,1695) = lu(k,1695) - lu(k,580) * lu(k,1622) - lu(k,1698) = lu(k,1698) - lu(k,581) * lu(k,1622) - lu(k,1700) = lu(k,1700) - lu(k,582) * lu(k,1622) - lu(k,1947) = lu(k,1947) - lu(k,575) * lu(k,1942) - lu(k,1953) = - lu(k,576) * lu(k,1942) - lu(k,1956) = lu(k,1956) - lu(k,577) * lu(k,1942) - lu(k,1962) = lu(k,1962) - lu(k,578) * lu(k,1942) - lu(k,1964) = lu(k,1964) - lu(k,579) * lu(k,1942) - lu(k,1966) = lu(k,1966) - lu(k,580) * lu(k,1942) - lu(k,1969) = lu(k,1969) - lu(k,581) * lu(k,1942) - lu(k,1971) = lu(k,1971) - lu(k,582) * lu(k,1942) - end do - end subroutine lu_fac12 - subroutine lu_fac13( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,583) = 1._r8 / lu(k,583) - lu(k,584) = lu(k,584) * lu(k,583) - lu(k,585) = lu(k,585) * lu(k,583) - lu(k,586) = lu(k,586) * lu(k,583) - lu(k,587) = lu(k,587) * lu(k,583) - lu(k,588) = lu(k,588) * lu(k,583) - lu(k,589) = lu(k,589) * lu(k,583) - lu(k,590) = lu(k,590) * lu(k,583) - lu(k,591) = lu(k,591) * lu(k,583) - lu(k,1251) = - lu(k,584) * lu(k,1247) - lu(k,1253) = - lu(k,585) * lu(k,1247) - lu(k,1254) = - lu(k,586) * lu(k,1247) - lu(k,1263) = - lu(k,587) * lu(k,1247) - lu(k,1264) = lu(k,1264) - lu(k,588) * lu(k,1247) - lu(k,1265) = - lu(k,589) * lu(k,1247) - lu(k,1269) = lu(k,1269) - lu(k,590) * lu(k,1247) - lu(k,1270) = lu(k,1270) - lu(k,591) * lu(k,1247) - lu(k,1669) = lu(k,1669) - lu(k,584) * lu(k,1623) - lu(k,1673) = lu(k,1673) - lu(k,585) * lu(k,1623) - lu(k,1674) = lu(k,1674) - lu(k,586) * lu(k,1623) - lu(k,1690) = lu(k,1690) - lu(k,587) * lu(k,1623) - lu(k,1691) = lu(k,1691) - lu(k,588) * lu(k,1623) - lu(k,1693) = lu(k,1693) - lu(k,589) * lu(k,1623) - lu(k,1698) = lu(k,1698) - lu(k,590) * lu(k,1623) - lu(k,1700) = lu(k,1700) - lu(k,591) * lu(k,1623) - lu(k,1898) = lu(k,1898) - lu(k,584) * lu(k,1871) - lu(k,1902) = lu(k,1902) - lu(k,585) * lu(k,1871) - lu(k,1903) = lu(k,1903) - lu(k,586) * lu(k,1871) - lu(k,1917) = lu(k,1917) - lu(k,587) * lu(k,1871) - lu(k,1918) = lu(k,1918) - lu(k,588) * lu(k,1871) - lu(k,1920) = lu(k,1920) - lu(k,589) * lu(k,1871) - lu(k,1925) = lu(k,1925) - lu(k,590) * lu(k,1871) - lu(k,1927) = lu(k,1927) - lu(k,591) * lu(k,1871) - lu(k,592) = 1._r8 / lu(k,592) - lu(k,593) = lu(k,593) * lu(k,592) - lu(k,594) = lu(k,594) * lu(k,592) - lu(k,595) = lu(k,595) * lu(k,592) - lu(k,661) = - lu(k,593) * lu(k,656) - lu(k,663) = - lu(k,594) * lu(k,656) - lu(k,666) = lu(k,666) - lu(k,595) * lu(k,656) - lu(k,699) = - lu(k,593) * lu(k,694) - lu(k,701) = lu(k,701) - lu(k,594) * lu(k,694) - lu(k,705) = lu(k,705) - lu(k,595) * lu(k,694) - lu(k,728) = - lu(k,593) * lu(k,723) - lu(k,730) = - lu(k,594) * lu(k,723) - lu(k,735) = lu(k,735) - lu(k,595) * lu(k,723) - lu(k,752) = - lu(k,593) * lu(k,747) - lu(k,754) = lu(k,754) - lu(k,594) * lu(k,747) - lu(k,760) = lu(k,760) - lu(k,595) * lu(k,747) - lu(k,1073) = - lu(k,593) * lu(k,1071) - lu(k,1076) = - lu(k,594) * lu(k,1071) - lu(k,1085) = lu(k,1085) - lu(k,595) * lu(k,1071) - lu(k,1281) = - lu(k,593) * lu(k,1277) - lu(k,1284) = - lu(k,594) * lu(k,1277) - lu(k,1302) = lu(k,1302) - lu(k,595) * lu(k,1277) - lu(k,1654) = - lu(k,593) * lu(k,1624) - lu(k,1671) = lu(k,1671) - lu(k,594) * lu(k,1624) - lu(k,1700) = lu(k,1700) - lu(k,595) * lu(k,1624) - lu(k,1887) = lu(k,1887) - lu(k,593) * lu(k,1872) - lu(k,1900) = lu(k,1900) - lu(k,594) * lu(k,1872) - lu(k,1927) = lu(k,1927) - lu(k,595) * lu(k,1872) - lu(k,596) = 1._r8 / lu(k,596) - lu(k,597) = lu(k,597) * lu(k,596) - lu(k,598) = lu(k,598) * lu(k,596) - lu(k,599) = lu(k,599) * lu(k,596) - lu(k,600) = lu(k,600) * lu(k,596) - lu(k,601) = lu(k,601) * lu(k,596) - lu(k,602) = lu(k,602) * lu(k,596) - lu(k,603) = lu(k,603) * lu(k,596) - lu(k,604) = lu(k,604) * lu(k,596) - lu(k,1523) = lu(k,1523) - lu(k,597) * lu(k,1519) - lu(k,1528) = lu(k,1528) - lu(k,598) * lu(k,1519) - lu(k,1529) = lu(k,1529) - lu(k,599) * lu(k,1519) - lu(k,1532) = lu(k,1532) - lu(k,600) * lu(k,1519) - lu(k,1535) = lu(k,1535) - lu(k,601) * lu(k,1519) - lu(k,1536) = lu(k,1536) - lu(k,602) * lu(k,1519) - lu(k,1537) = lu(k,1537) - lu(k,603) * lu(k,1519) - lu(k,1541) = lu(k,1541) - lu(k,604) * lu(k,1519) - lu(k,1687) = lu(k,1687) - lu(k,597) * lu(k,1625) - lu(k,1692) = lu(k,1692) - lu(k,598) * lu(k,1625) - lu(k,1693) = lu(k,1693) - lu(k,599) * lu(k,1625) - lu(k,1696) = lu(k,1696) - lu(k,600) * lu(k,1625) - lu(k,1699) = lu(k,1699) - lu(k,601) * lu(k,1625) - lu(k,1700) = lu(k,1700) - lu(k,602) * lu(k,1625) - lu(k,1701) = lu(k,1701) - lu(k,603) * lu(k,1625) - lu(k,1705) = lu(k,1705) - lu(k,604) * lu(k,1625) - lu(k,1997) = lu(k,1997) - lu(k,597) * lu(k,1984) - lu(k,2002) = lu(k,2002) - lu(k,598) * lu(k,1984) - lu(k,2003) = lu(k,2003) - lu(k,599) * lu(k,1984) - lu(k,2006) = lu(k,2006) - lu(k,600) * lu(k,1984) - lu(k,2009) = lu(k,2009) - lu(k,601) * lu(k,1984) - lu(k,2010) = lu(k,2010) - lu(k,602) * lu(k,1984) - lu(k,2011) = lu(k,2011) - lu(k,603) * lu(k,1984) - lu(k,2015) = lu(k,2015) - lu(k,604) * lu(k,1984) - lu(k,605) = 1._r8 / lu(k,605) - lu(k,606) = lu(k,606) * lu(k,605) - lu(k,607) = lu(k,607) * lu(k,605) - lu(k,608) = lu(k,608) * lu(k,605) - lu(k,609) = lu(k,609) * lu(k,605) - lu(k,610) = lu(k,610) * lu(k,605) - lu(k,611) = lu(k,611) * lu(k,605) - lu(k,1693) = lu(k,1693) - lu(k,606) * lu(k,1626) - lu(k,1699) = lu(k,1699) - lu(k,607) * lu(k,1626) - lu(k,1700) = lu(k,1700) - lu(k,608) * lu(k,1626) - lu(k,1701) = lu(k,1701) - lu(k,609) * lu(k,1626) - lu(k,1703) = lu(k,1703) - lu(k,610) * lu(k,1626) - lu(k,1705) = lu(k,1705) - lu(k,611) * lu(k,1626) - lu(k,2003) = lu(k,2003) - lu(k,606) * lu(k,1985) - lu(k,2009) = lu(k,2009) - lu(k,607) * lu(k,1985) - lu(k,2010) = lu(k,2010) - lu(k,608) * lu(k,1985) - lu(k,2011) = lu(k,2011) - lu(k,609) * lu(k,1985) - lu(k,2013) = - lu(k,610) * lu(k,1985) - lu(k,2015) = lu(k,2015) - lu(k,611) * lu(k,1985) - lu(k,2110) = lu(k,2110) - lu(k,606) * lu(k,2055) - lu(k,2116) = lu(k,2116) - lu(k,607) * lu(k,2055) - lu(k,2117) = lu(k,2117) - lu(k,608) * lu(k,2055) - lu(k,2118) = lu(k,2118) - lu(k,609) * lu(k,2055) - lu(k,2120) = lu(k,2120) - lu(k,610) * lu(k,2055) - lu(k,2122) = lu(k,2122) - lu(k,611) * lu(k,2055) - lu(k,2188) = lu(k,2188) - lu(k,606) * lu(k,2173) - lu(k,2194) = lu(k,2194) - lu(k,607) * lu(k,2173) - lu(k,2195) = lu(k,2195) - lu(k,608) * lu(k,2173) - lu(k,2196) = lu(k,2196) - lu(k,609) * lu(k,2173) - lu(k,2198) = lu(k,2198) - lu(k,610) * lu(k,2173) - lu(k,2200) = - lu(k,611) * lu(k,2173) - lu(k,612) = 1._r8 / lu(k,612) - lu(k,613) = lu(k,613) * lu(k,612) - lu(k,614) = lu(k,614) * lu(k,612) - lu(k,615) = lu(k,615) * lu(k,612) - lu(k,616) = lu(k,616) * lu(k,612) - lu(k,617) = lu(k,617) * lu(k,612) - lu(k,618) = lu(k,618) * lu(k,612) - lu(k,1352) = lu(k,1352) - lu(k,613) * lu(k,1350) - lu(k,1357) = lu(k,1357) - lu(k,614) * lu(k,1350) - lu(k,1359) = lu(k,1359) - lu(k,615) * lu(k,1350) - lu(k,1360) = lu(k,1360) - lu(k,616) * lu(k,1350) - lu(k,1362) = lu(k,1362) - lu(k,617) * lu(k,1350) - lu(k,1368) = - lu(k,618) * lu(k,1350) - lu(k,1373) = lu(k,1373) - lu(k,613) * lu(k,1371) - lu(k,1388) = lu(k,1388) - lu(k,614) * lu(k,1371) - lu(k,1391) = lu(k,1391) - lu(k,615) * lu(k,1371) - lu(k,1392) = lu(k,1392) - lu(k,616) * lu(k,1371) - lu(k,1394) = lu(k,1394) - lu(k,617) * lu(k,1371) - lu(k,1400) = - lu(k,618) * lu(k,1371) - lu(k,1646) = lu(k,1646) - lu(k,613) * lu(k,1627) - lu(k,1685) = lu(k,1685) - lu(k,614) * lu(k,1627) - lu(k,1691) = lu(k,1691) - lu(k,615) * lu(k,1627) - lu(k,1693) = lu(k,1693) - lu(k,616) * lu(k,1627) - lu(k,1696) = lu(k,1696) - lu(k,617) * lu(k,1627) - lu(k,1705) = lu(k,1705) - lu(k,618) * lu(k,1627) - lu(k,2073) = lu(k,2073) - lu(k,613) * lu(k,2056) - lu(k,2102) = lu(k,2102) - lu(k,614) * lu(k,2056) - lu(k,2108) = lu(k,2108) - lu(k,615) * lu(k,2056) - lu(k,2110) = lu(k,2110) - lu(k,616) * lu(k,2056) - lu(k,2113) = lu(k,2113) - lu(k,617) * lu(k,2056) - lu(k,2122) = lu(k,2122) - lu(k,618) * lu(k,2056) - end do - end subroutine lu_fac13 - subroutine lu_fac14( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,619) = 1._r8 / lu(k,619) - lu(k,620) = lu(k,620) * lu(k,619) - lu(k,621) = lu(k,621) * lu(k,619) - lu(k,622) = lu(k,622) * lu(k,619) - lu(k,623) = lu(k,623) * lu(k,619) - lu(k,624) = lu(k,624) * lu(k,619) - lu(k,916) = lu(k,916) - lu(k,620) * lu(k,912) - lu(k,917) = - lu(k,621) * lu(k,912) - lu(k,919) = lu(k,919) - lu(k,622) * lu(k,912) - lu(k,922) = lu(k,922) - lu(k,623) * lu(k,912) - lu(k,923) = lu(k,923) - lu(k,624) * lu(k,912) - lu(k,1046) = lu(k,1046) - lu(k,620) * lu(k,1044) - lu(k,1051) = lu(k,1051) - lu(k,621) * lu(k,1044) - lu(k,1053) = lu(k,1053) - lu(k,622) * lu(k,1044) - lu(k,1057) = lu(k,1057) - lu(k,623) * lu(k,1044) - lu(k,1058) = lu(k,1058) - lu(k,624) * lu(k,1044) - lu(k,1661) = lu(k,1661) - lu(k,620) * lu(k,1628) - lu(k,1690) = lu(k,1690) - lu(k,621) * lu(k,1628) - lu(k,1693) = lu(k,1693) - lu(k,622) * lu(k,1628) - lu(k,1698) = lu(k,1698) - lu(k,623) * lu(k,1628) - lu(k,1700) = lu(k,1700) - lu(k,624) * lu(k,1628) - lu(k,1802) = lu(k,1802) - lu(k,620) * lu(k,1793) - lu(k,1825) = lu(k,1825) - lu(k,621) * lu(k,1793) - lu(k,1828) = lu(k,1828) - lu(k,622) * lu(k,1793) - lu(k,1833) = lu(k,1833) - lu(k,623) * lu(k,1793) - lu(k,1835) = lu(k,1835) - lu(k,624) * lu(k,1793) - lu(k,1892) = lu(k,1892) - lu(k,620) * lu(k,1873) - lu(k,1917) = lu(k,1917) - lu(k,621) * lu(k,1873) - lu(k,1920) = lu(k,1920) - lu(k,622) * lu(k,1873) - lu(k,1925) = lu(k,1925) - lu(k,623) * lu(k,1873) - lu(k,1927) = lu(k,1927) - lu(k,624) * lu(k,1873) - lu(k,627) = 1._r8 / lu(k,627) - lu(k,628) = lu(k,628) * lu(k,627) - lu(k,629) = lu(k,629) * lu(k,627) - lu(k,630) = lu(k,630) * lu(k,627) - lu(k,631) = lu(k,631) * lu(k,627) - lu(k,632) = lu(k,632) * lu(k,627) - lu(k,1693) = lu(k,1693) - lu(k,628) * lu(k,1629) - lu(k,1697) = lu(k,1697) - lu(k,629) * lu(k,1629) - lu(k,1698) = lu(k,1698) - lu(k,630) * lu(k,1629) - lu(k,1700) = lu(k,1700) - lu(k,631) * lu(k,1629) - lu(k,1704) = lu(k,1704) - lu(k,632) * lu(k,1629) - lu(k,1920) = lu(k,1920) - lu(k,628) * lu(k,1874) - lu(k,1924) = lu(k,1924) - lu(k,629) * lu(k,1874) - lu(k,1925) = lu(k,1925) - lu(k,630) * lu(k,1874) - lu(k,1927) = lu(k,1927) - lu(k,631) * lu(k,1874) - lu(k,1931) = lu(k,1931) - lu(k,632) * lu(k,1874) - lu(k,1964) = lu(k,1964) - lu(k,628) * lu(k,1943) - lu(k,1968) = lu(k,1968) - lu(k,629) * lu(k,1943) - lu(k,1969) = lu(k,1969) - lu(k,630) * lu(k,1943) - lu(k,1971) = lu(k,1971) - lu(k,631) * lu(k,1943) - lu(k,1975) = lu(k,1975) - lu(k,632) * lu(k,1943) - lu(k,2110) = lu(k,2110) - lu(k,628) * lu(k,2057) - lu(k,2114) = lu(k,2114) - lu(k,629) * lu(k,2057) - lu(k,2115) = lu(k,2115) - lu(k,630) * lu(k,2057) - lu(k,2117) = lu(k,2117) - lu(k,631) * lu(k,2057) - lu(k,2121) = lu(k,2121) - lu(k,632) * lu(k,2057) - lu(k,2249) = lu(k,2249) - lu(k,628) * lu(k,2211) - lu(k,2253) = lu(k,2253) - lu(k,629) * lu(k,2211) - lu(k,2254) = lu(k,2254) - lu(k,630) * lu(k,2211) - lu(k,2256) = lu(k,2256) - lu(k,631) * lu(k,2211) - lu(k,2260) = lu(k,2260) - lu(k,632) * lu(k,2211) - lu(k,634) = 1._r8 / lu(k,634) - lu(k,635) = lu(k,635) * lu(k,634) - lu(k,636) = lu(k,636) * lu(k,634) - lu(k,637) = lu(k,637) * lu(k,634) - lu(k,638) = lu(k,638) * lu(k,634) - lu(k,639) = lu(k,639) * lu(k,634) - lu(k,640) = lu(k,640) * lu(k,634) - lu(k,641) = lu(k,641) * lu(k,634) - lu(k,642) = lu(k,642) * lu(k,634) - lu(k,643) = lu(k,643) * lu(k,634) - lu(k,887) = lu(k,887) - lu(k,635) * lu(k,885) - lu(k,888) = lu(k,888) - lu(k,636) * lu(k,885) - lu(k,890) = lu(k,890) - lu(k,637) * lu(k,885) - lu(k,891) = lu(k,891) - lu(k,638) * lu(k,885) - lu(k,892) = lu(k,892) - lu(k,639) * lu(k,885) - lu(k,893) = lu(k,893) - lu(k,640) * lu(k,885) - lu(k,894) = lu(k,894) - lu(k,641) * lu(k,885) - lu(k,897) = lu(k,897) - lu(k,642) * lu(k,885) - lu(k,898) = lu(k,898) - lu(k,643) * lu(k,885) - lu(k,1634) = lu(k,1634) - lu(k,635) * lu(k,1630) - lu(k,1649) = lu(k,1649) - lu(k,636) * lu(k,1630) - lu(k,1658) = lu(k,1658) - lu(k,637) * lu(k,1630) - lu(k,1668) = lu(k,1668) - lu(k,638) * lu(k,1630) - lu(k,1685) = lu(k,1685) - lu(k,639) * lu(k,1630) - lu(k,1691) = lu(k,1691) - lu(k,640) * lu(k,1630) - lu(k,1693) = lu(k,1693) - lu(k,641) * lu(k,1630) - lu(k,1698) = lu(k,1698) - lu(k,642) * lu(k,1630) - lu(k,1700) = lu(k,1700) - lu(k,643) * lu(k,1630) - lu(k,1876) = lu(k,1876) - lu(k,635) * lu(k,1875) - lu(k,1885) = lu(k,1885) - lu(k,636) * lu(k,1875) - lu(k,1890) = lu(k,1890) - lu(k,637) * lu(k,1875) - lu(k,1897) = lu(k,1897) - lu(k,638) * lu(k,1875) - lu(k,1913) = lu(k,1913) - lu(k,639) * lu(k,1875) - lu(k,1918) = lu(k,1918) - lu(k,640) * lu(k,1875) - lu(k,1920) = lu(k,1920) - lu(k,641) * lu(k,1875) - lu(k,1925) = lu(k,1925) - lu(k,642) * lu(k,1875) - lu(k,1927) = lu(k,1927) - lu(k,643) * lu(k,1875) - lu(k,644) = 1._r8 / lu(k,644) - lu(k,645) = lu(k,645) * lu(k,644) - lu(k,646) = lu(k,646) * lu(k,644) - lu(k,647) = lu(k,647) * lu(k,644) - lu(k,648) = lu(k,648) * lu(k,644) - lu(k,649) = lu(k,649) * lu(k,644) - lu(k,650) = lu(k,650) * lu(k,644) - lu(k,651) = lu(k,651) * lu(k,644) - lu(k,652) = lu(k,652) * lu(k,644) - lu(k,653) = lu(k,653) * lu(k,644) - lu(k,1107) = lu(k,1107) - lu(k,645) * lu(k,1105) - lu(k,1108) = lu(k,1108) - lu(k,646) * lu(k,1105) - lu(k,1109) = lu(k,1109) - lu(k,647) * lu(k,1105) - lu(k,1110) = lu(k,1110) - lu(k,648) * lu(k,1105) - lu(k,1111) = lu(k,1111) - lu(k,649) * lu(k,1105) - lu(k,1112) = lu(k,1112) - lu(k,650) * lu(k,1105) - lu(k,1116) = lu(k,1116) - lu(k,651) * lu(k,1105) - lu(k,1117) = - lu(k,652) * lu(k,1105) - lu(k,1121) = lu(k,1121) - lu(k,653) * lu(k,1105) - lu(k,1646) = lu(k,1646) - lu(k,645) * lu(k,1631) - lu(k,1658) = lu(k,1658) - lu(k,646) * lu(k,1631) - lu(k,1666) = lu(k,1666) - lu(k,647) * lu(k,1631) - lu(k,1669) = lu(k,1669) - lu(k,648) * lu(k,1631) - lu(k,1670) = lu(k,1670) - lu(k,649) * lu(k,1631) - lu(k,1671) = lu(k,1671) - lu(k,650) * lu(k,1631) - lu(k,1691) = lu(k,1691) - lu(k,651) * lu(k,1631) - lu(k,1693) = lu(k,1693) - lu(k,652) * lu(k,1631) - lu(k,1700) = lu(k,1700) - lu(k,653) * lu(k,1631) - lu(k,2073) = lu(k,2073) - lu(k,645) * lu(k,2058) - lu(k,2081) = lu(k,2081) - lu(k,646) * lu(k,2058) - lu(k,2086) = - lu(k,647) * lu(k,2058) - lu(k,2088) = lu(k,2088) - lu(k,648) * lu(k,2058) - lu(k,2089) = lu(k,2089) - lu(k,649) * lu(k,2058) - lu(k,2090) = lu(k,2090) - lu(k,650) * lu(k,2058) - lu(k,2108) = lu(k,2108) - lu(k,651) * lu(k,2058) - lu(k,2110) = lu(k,2110) - lu(k,652) * lu(k,2058) - lu(k,2117) = lu(k,2117) - lu(k,653) * lu(k,2058) - lu(k,657) = 1._r8 / lu(k,657) - lu(k,658) = lu(k,658) * lu(k,657) - lu(k,659) = lu(k,659) * lu(k,657) - lu(k,660) = lu(k,660) * lu(k,657) - lu(k,661) = lu(k,661) * lu(k,657) - lu(k,662) = lu(k,662) * lu(k,657) - lu(k,663) = lu(k,663) * lu(k,657) - lu(k,664) = lu(k,664) * lu(k,657) - lu(k,665) = lu(k,665) * lu(k,657) - lu(k,666) = lu(k,666) * lu(k,657) - lu(k,725) = lu(k,725) - lu(k,658) * lu(k,724) - lu(k,726) = lu(k,726) - lu(k,659) * lu(k,724) - lu(k,727) = lu(k,727) - lu(k,660) * lu(k,724) - lu(k,728) = lu(k,728) - lu(k,661) * lu(k,724) - lu(k,729) = lu(k,729) - lu(k,662) * lu(k,724) - lu(k,730) = lu(k,730) - lu(k,663) * lu(k,724) - lu(k,731) = lu(k,731) - lu(k,664) * lu(k,724) - lu(k,732) = - lu(k,665) * lu(k,724) - lu(k,735) = lu(k,735) - lu(k,666) * lu(k,724) - lu(k,1638) = lu(k,1638) - lu(k,658) * lu(k,1632) - lu(k,1639) = lu(k,1639) - lu(k,659) * lu(k,1632) - lu(k,1642) = - lu(k,660) * lu(k,1632) - lu(k,1654) = lu(k,1654) - lu(k,661) * lu(k,1632) - lu(k,1662) = lu(k,1662) - lu(k,662) * lu(k,1632) - lu(k,1671) = lu(k,1671) - lu(k,663) * lu(k,1632) - lu(k,1678) = lu(k,1678) - lu(k,664) * lu(k,1632) - lu(k,1693) = lu(k,1693) - lu(k,665) * lu(k,1632) - lu(k,1700) = lu(k,1700) - lu(k,666) * lu(k,1632) - lu(k,2065) = lu(k,2065) - lu(k,658) * lu(k,2059) - lu(k,2066) = lu(k,2066) - lu(k,659) * lu(k,2059) - lu(k,2069) = lu(k,2069) - lu(k,660) * lu(k,2059) - lu(k,2078) = lu(k,2078) - lu(k,661) * lu(k,2059) - lu(k,2084) = lu(k,2084) - lu(k,662) * lu(k,2059) - lu(k,2090) = lu(k,2090) - lu(k,663) * lu(k,2059) - lu(k,2096) = lu(k,2096) - lu(k,664) * lu(k,2059) - lu(k,2110) = lu(k,2110) - lu(k,665) * lu(k,2059) - lu(k,2117) = lu(k,2117) - lu(k,666) * lu(k,2059) - lu(k,668) = 1._r8 / lu(k,668) - lu(k,669) = lu(k,669) * lu(k,668) - lu(k,670) = lu(k,670) * lu(k,668) - lu(k,671) = lu(k,671) * lu(k,668) - lu(k,672) = lu(k,672) * lu(k,668) - lu(k,673) = lu(k,673) * lu(k,668) - lu(k,674) = lu(k,674) * lu(k,668) - lu(k,675) = lu(k,675) * lu(k,668) - lu(k,676) = lu(k,676) * lu(k,668) - lu(k,677) = lu(k,677) * lu(k,668) - lu(k,887) = lu(k,887) - lu(k,669) * lu(k,886) - lu(k,888) = lu(k,888) - lu(k,670) * lu(k,886) - lu(k,889) = lu(k,889) - lu(k,671) * lu(k,886) - lu(k,890) = lu(k,890) - lu(k,672) * lu(k,886) - lu(k,891) = lu(k,891) - lu(k,673) * lu(k,886) - lu(k,892) = lu(k,892) - lu(k,674) * lu(k,886) - lu(k,893) = lu(k,893) - lu(k,675) * lu(k,886) - lu(k,894) = lu(k,894) - lu(k,676) * lu(k,886) - lu(k,898) = lu(k,898) - lu(k,677) * lu(k,886) - lu(k,1634) = lu(k,1634) - lu(k,669) * lu(k,1633) - lu(k,1649) = lu(k,1649) - lu(k,670) * lu(k,1633) - lu(k,1655) = lu(k,1655) - lu(k,671) * lu(k,1633) - lu(k,1658) = lu(k,1658) - lu(k,672) * lu(k,1633) - lu(k,1668) = lu(k,1668) - lu(k,673) * lu(k,1633) - lu(k,1685) = lu(k,1685) - lu(k,674) * lu(k,1633) - lu(k,1691) = lu(k,1691) - lu(k,675) * lu(k,1633) - lu(k,1693) = lu(k,1693) - lu(k,676) * lu(k,1633) - lu(k,1700) = lu(k,1700) - lu(k,677) * lu(k,1633) - lu(k,2061) = lu(k,2061) - lu(k,669) * lu(k,2060) - lu(k,2076) = lu(k,2076) - lu(k,670) * lu(k,2060) - lu(k,2079) = lu(k,2079) - lu(k,671) * lu(k,2060) - lu(k,2081) = lu(k,2081) - lu(k,672) * lu(k,2060) - lu(k,2087) = lu(k,2087) - lu(k,673) * lu(k,2060) - lu(k,2102) = lu(k,2102) - lu(k,674) * lu(k,2060) - lu(k,2108) = lu(k,2108) - lu(k,675) * lu(k,2060) - lu(k,2110) = lu(k,2110) - lu(k,676) * lu(k,2060) - lu(k,2117) = lu(k,2117) - lu(k,677) * lu(k,2060) - end do - end subroutine lu_fac14 - subroutine lu_fac15( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,679) = 1._r8 / lu(k,679) - lu(k,680) = lu(k,680) * lu(k,679) - lu(k,681) = lu(k,681) * lu(k,679) - lu(k,682) = lu(k,682) * lu(k,679) - lu(k,683) = lu(k,683) * lu(k,679) - lu(k,684) = lu(k,684) * lu(k,679) - lu(k,685) = lu(k,685) * lu(k,679) - lu(k,891) = lu(k,891) - lu(k,680) * lu(k,887) - lu(k,892) = lu(k,892) - lu(k,681) * lu(k,887) - lu(k,894) = lu(k,894) - lu(k,682) * lu(k,887) - lu(k,896) = lu(k,896) - lu(k,683) * lu(k,887) - lu(k,897) = lu(k,897) - lu(k,684) * lu(k,887) - lu(k,898) = lu(k,898) - lu(k,685) * lu(k,887) - lu(k,1668) = lu(k,1668) - lu(k,680) * lu(k,1634) - lu(k,1685) = lu(k,1685) - lu(k,681) * lu(k,1634) - lu(k,1693) = lu(k,1693) - lu(k,682) * lu(k,1634) - lu(k,1697) = lu(k,1697) - lu(k,683) * lu(k,1634) - lu(k,1698) = lu(k,1698) - lu(k,684) * lu(k,1634) - lu(k,1700) = lu(k,1700) - lu(k,685) * lu(k,1634) - lu(k,1897) = lu(k,1897) - lu(k,680) * lu(k,1876) - lu(k,1913) = lu(k,1913) - lu(k,681) * lu(k,1876) - lu(k,1920) = lu(k,1920) - lu(k,682) * lu(k,1876) - lu(k,1924) = lu(k,1924) - lu(k,683) * lu(k,1876) - lu(k,1925) = lu(k,1925) - lu(k,684) * lu(k,1876) - lu(k,1927) = lu(k,1927) - lu(k,685) * lu(k,1876) - lu(k,2087) = lu(k,2087) - lu(k,680) * lu(k,2061) - lu(k,2102) = lu(k,2102) - lu(k,681) * lu(k,2061) - lu(k,2110) = lu(k,2110) - lu(k,682) * lu(k,2061) - lu(k,2114) = lu(k,2114) - lu(k,683) * lu(k,2061) - lu(k,2115) = lu(k,2115) - lu(k,684) * lu(k,2061) - lu(k,2117) = lu(k,2117) - lu(k,685) * lu(k,2061) - lu(k,686) = 1._r8 / lu(k,686) - lu(k,687) = lu(k,687) * lu(k,686) - lu(k,688) = lu(k,688) * lu(k,686) - lu(k,689) = lu(k,689) * lu(k,686) - lu(k,690) = lu(k,690) * lu(k,686) - lu(k,1023) = lu(k,1023) - lu(k,687) * lu(k,1021) - lu(k,1034) = lu(k,1034) - lu(k,688) * lu(k,1021) - lu(k,1036) = lu(k,1036) - lu(k,689) * lu(k,1021) - lu(k,1042) = - lu(k,690) * lu(k,1021) - lu(k,1352) = lu(k,1352) - lu(k,687) * lu(k,1351) - lu(k,1360) = lu(k,1360) - lu(k,688) * lu(k,1351) - lu(k,1362) = lu(k,1362) - lu(k,689) * lu(k,1351) - lu(k,1368) = lu(k,1368) - lu(k,690) * lu(k,1351) - lu(k,1373) = lu(k,1373) - lu(k,687) * lu(k,1372) - lu(k,1392) = lu(k,1392) - lu(k,688) * lu(k,1372) - lu(k,1394) = lu(k,1394) - lu(k,689) * lu(k,1372) - lu(k,1400) = lu(k,1400) - lu(k,690) * lu(k,1372) - lu(k,1646) = lu(k,1646) - lu(k,687) * lu(k,1635) - lu(k,1693) = lu(k,1693) - lu(k,688) * lu(k,1635) - lu(k,1696) = lu(k,1696) - lu(k,689) * lu(k,1635) - lu(k,1705) = lu(k,1705) - lu(k,690) * lu(k,1635) - lu(k,1797) = lu(k,1797) - lu(k,687) * lu(k,1794) - lu(k,1828) = lu(k,1828) - lu(k,688) * lu(k,1794) - lu(k,1831) = lu(k,1831) - lu(k,689) * lu(k,1794) - lu(k,1840) = lu(k,1840) - lu(k,690) * lu(k,1794) - lu(k,2073) = lu(k,2073) - lu(k,687) * lu(k,2062) - lu(k,2110) = lu(k,2110) - lu(k,688) * lu(k,2062) - lu(k,2113) = lu(k,2113) - lu(k,689) * lu(k,2062) - lu(k,2122) = lu(k,2122) - lu(k,690) * lu(k,2062) - lu(k,2214) = lu(k,2214) - lu(k,687) * lu(k,2212) - lu(k,2249) = lu(k,2249) - lu(k,688) * lu(k,2212) - lu(k,2252) = lu(k,2252) - lu(k,689) * lu(k,2212) - lu(k,2261) = - lu(k,690) * lu(k,2212) - lu(k,695) = 1._r8 / lu(k,695) - lu(k,696) = lu(k,696) * lu(k,695) - lu(k,697) = lu(k,697) * lu(k,695) - lu(k,698) = lu(k,698) * lu(k,695) - lu(k,699) = lu(k,699) * lu(k,695) - lu(k,700) = lu(k,700) * lu(k,695) - lu(k,701) = lu(k,701) * lu(k,695) - lu(k,702) = lu(k,702) * lu(k,695) - lu(k,703) = lu(k,703) * lu(k,695) - lu(k,704) = lu(k,704) * lu(k,695) - lu(k,705) = lu(k,705) * lu(k,695) - lu(k,749) = lu(k,749) - lu(k,696) * lu(k,748) - lu(k,750) = lu(k,750) - lu(k,697) * lu(k,748) - lu(k,751) = lu(k,751) - lu(k,698) * lu(k,748) - lu(k,752) = lu(k,752) - lu(k,699) * lu(k,748) - lu(k,753) = lu(k,753) - lu(k,700) * lu(k,748) - lu(k,754) = lu(k,754) - lu(k,701) * lu(k,748) - lu(k,755) = lu(k,755) - lu(k,702) * lu(k,748) - lu(k,756) = lu(k,756) - lu(k,703) * lu(k,748) - lu(k,757) = - lu(k,704) * lu(k,748) - lu(k,760) = lu(k,760) - lu(k,705) * lu(k,748) - lu(k,1638) = lu(k,1638) - lu(k,696) * lu(k,1636) - lu(k,1641) = lu(k,1641) - lu(k,697) * lu(k,1636) - lu(k,1642) = lu(k,1642) - lu(k,698) * lu(k,1636) - lu(k,1654) = lu(k,1654) - lu(k,699) * lu(k,1636) - lu(k,1662) = lu(k,1662) - lu(k,700) * lu(k,1636) - lu(k,1671) = lu(k,1671) - lu(k,701) * lu(k,1636) - lu(k,1678) = lu(k,1678) - lu(k,702) * lu(k,1636) - lu(k,1685) = lu(k,1685) - lu(k,703) * lu(k,1636) - lu(k,1693) = lu(k,1693) - lu(k,704) * lu(k,1636) - lu(k,1700) = lu(k,1700) - lu(k,705) * lu(k,1636) - lu(k,2065) = lu(k,2065) - lu(k,696) * lu(k,2063) - lu(k,2068) = lu(k,2068) - lu(k,697) * lu(k,2063) - lu(k,2069) = lu(k,2069) - lu(k,698) * lu(k,2063) - lu(k,2078) = lu(k,2078) - lu(k,699) * lu(k,2063) - lu(k,2084) = lu(k,2084) - lu(k,700) * lu(k,2063) - lu(k,2090) = lu(k,2090) - lu(k,701) * lu(k,2063) - lu(k,2096) = lu(k,2096) - lu(k,702) * lu(k,2063) - lu(k,2102) = lu(k,2102) - lu(k,703) * lu(k,2063) - lu(k,2110) = lu(k,2110) - lu(k,704) * lu(k,2063) - lu(k,2117) = lu(k,2117) - lu(k,705) * lu(k,2063) - lu(k,708) = 1._r8 / lu(k,708) - lu(k,709) = lu(k,709) * lu(k,708) - lu(k,710) = lu(k,710) * lu(k,708) - lu(k,711) = lu(k,711) * lu(k,708) - lu(k,712) = lu(k,712) * lu(k,708) - lu(k,713) = lu(k,713) * lu(k,708) - lu(k,714) = lu(k,714) * lu(k,708) - lu(k,1669) = lu(k,1669) - lu(k,709) * lu(k,1637) - lu(k,1691) = lu(k,1691) - lu(k,710) * lu(k,1637) - lu(k,1693) = lu(k,1693) - lu(k,711) * lu(k,1637) - lu(k,1697) = lu(k,1697) - lu(k,712) * lu(k,1637) - lu(k,1698) = lu(k,1698) - lu(k,713) * lu(k,1637) - lu(k,1700) = lu(k,1700) - lu(k,714) * lu(k,1637) - lu(k,1898) = lu(k,1898) - lu(k,709) * lu(k,1877) - lu(k,1918) = lu(k,1918) - lu(k,710) * lu(k,1877) - lu(k,1920) = lu(k,1920) - lu(k,711) * lu(k,1877) - lu(k,1924) = lu(k,1924) - lu(k,712) * lu(k,1877) - lu(k,1925) = lu(k,1925) - lu(k,713) * lu(k,1877) - lu(k,1927) = lu(k,1927) - lu(k,714) * lu(k,1877) - lu(k,1993) = - lu(k,709) * lu(k,1986) - lu(k,2001) = lu(k,2001) - lu(k,710) * lu(k,1986) - lu(k,2003) = lu(k,2003) - lu(k,711) * lu(k,1986) - lu(k,2007) = - lu(k,712) * lu(k,1986) - lu(k,2008) = - lu(k,713) * lu(k,1986) - lu(k,2010) = lu(k,2010) - lu(k,714) * lu(k,1986) - lu(k,2088) = lu(k,2088) - lu(k,709) * lu(k,2064) - lu(k,2108) = lu(k,2108) - lu(k,710) * lu(k,2064) - lu(k,2110) = lu(k,2110) - lu(k,711) * lu(k,2064) - lu(k,2114) = lu(k,2114) - lu(k,712) * lu(k,2064) - lu(k,2115) = lu(k,2115) - lu(k,713) * lu(k,2064) - lu(k,2117) = lu(k,2117) - lu(k,714) * lu(k,2064) - lu(k,2228) = - lu(k,709) * lu(k,2213) - lu(k,2247) = lu(k,2247) - lu(k,710) * lu(k,2213) - lu(k,2249) = lu(k,2249) - lu(k,711) * lu(k,2213) - lu(k,2253) = lu(k,2253) - lu(k,712) * lu(k,2213) - lu(k,2254) = lu(k,2254) - lu(k,713) * lu(k,2213) - lu(k,2256) = lu(k,2256) - lu(k,714) * lu(k,2213) - lu(k,715) = 1._r8 / lu(k,715) - lu(k,716) = lu(k,716) * lu(k,715) - lu(k,717) = lu(k,717) * lu(k,715) - lu(k,718) = lu(k,718) * lu(k,715) - lu(k,719) = lu(k,719) * lu(k,715) - lu(k,720) = lu(k,720) * lu(k,715) - lu(k,729) = lu(k,729) - lu(k,716) * lu(k,725) - lu(k,730) = lu(k,730) - lu(k,717) * lu(k,725) - lu(k,733) = lu(k,733) - lu(k,718) * lu(k,725) - lu(k,734) = lu(k,734) - lu(k,719) * lu(k,725) - lu(k,735) = lu(k,735) - lu(k,720) * lu(k,725) - lu(k,753) = lu(k,753) - lu(k,716) * lu(k,749) - lu(k,754) = lu(k,754) - lu(k,717) * lu(k,749) - lu(k,758) = lu(k,758) - lu(k,718) * lu(k,749) - lu(k,759) = lu(k,759) - lu(k,719) * lu(k,749) - lu(k,760) = lu(k,760) - lu(k,720) * lu(k,749) - lu(k,1662) = lu(k,1662) - lu(k,716) * lu(k,1638) - lu(k,1671) = lu(k,1671) - lu(k,717) * lu(k,1638) - lu(k,1697) = lu(k,1697) - lu(k,718) * lu(k,1638) - lu(k,1698) = lu(k,1698) - lu(k,719) * lu(k,1638) - lu(k,1700) = lu(k,1700) - lu(k,720) * lu(k,1638) - lu(k,1893) = lu(k,1893) - lu(k,716) * lu(k,1878) - lu(k,1900) = lu(k,1900) - lu(k,717) * lu(k,1878) - lu(k,1924) = lu(k,1924) - lu(k,718) * lu(k,1878) - lu(k,1925) = lu(k,1925) - lu(k,719) * lu(k,1878) - lu(k,1927) = lu(k,1927) - lu(k,720) * lu(k,1878) - lu(k,1951) = - lu(k,716) * lu(k,1944) - lu(k,1952) = - lu(k,717) * lu(k,1944) - lu(k,1968) = lu(k,1968) - lu(k,718) * lu(k,1944) - lu(k,1969) = lu(k,1969) - lu(k,719) * lu(k,1944) - lu(k,1971) = lu(k,1971) - lu(k,720) * lu(k,1944) - lu(k,2084) = lu(k,2084) - lu(k,716) * lu(k,2065) - lu(k,2090) = lu(k,2090) - lu(k,717) * lu(k,2065) - lu(k,2114) = lu(k,2114) - lu(k,718) * lu(k,2065) - lu(k,2115) = lu(k,2115) - lu(k,719) * lu(k,2065) - lu(k,2117) = lu(k,2117) - lu(k,720) * lu(k,2065) - lu(k,726) = 1._r8 / lu(k,726) - lu(k,727) = lu(k,727) * lu(k,726) - lu(k,728) = lu(k,728) * lu(k,726) - lu(k,729) = lu(k,729) * lu(k,726) - lu(k,730) = lu(k,730) * lu(k,726) - lu(k,731) = lu(k,731) * lu(k,726) - lu(k,732) = lu(k,732) * lu(k,726) - lu(k,733) = lu(k,733) * lu(k,726) - lu(k,734) = lu(k,734) * lu(k,726) - lu(k,735) = lu(k,735) * lu(k,726) - lu(k,1642) = lu(k,1642) - lu(k,727) * lu(k,1639) - lu(k,1654) = lu(k,1654) - lu(k,728) * lu(k,1639) - lu(k,1662) = lu(k,1662) - lu(k,729) * lu(k,1639) - lu(k,1671) = lu(k,1671) - lu(k,730) * lu(k,1639) - lu(k,1678) = lu(k,1678) - lu(k,731) * lu(k,1639) - lu(k,1693) = lu(k,1693) - lu(k,732) * lu(k,1639) - lu(k,1697) = lu(k,1697) - lu(k,733) * lu(k,1639) - lu(k,1698) = lu(k,1698) - lu(k,734) * lu(k,1639) - lu(k,1700) = lu(k,1700) - lu(k,735) * lu(k,1639) - lu(k,1881) = lu(k,1881) - lu(k,727) * lu(k,1879) - lu(k,1887) = lu(k,1887) - lu(k,728) * lu(k,1879) - lu(k,1893) = lu(k,1893) - lu(k,729) * lu(k,1879) - lu(k,1900) = lu(k,1900) - lu(k,730) * lu(k,1879) - lu(k,1907) = lu(k,1907) - lu(k,731) * lu(k,1879) - lu(k,1920) = lu(k,1920) - lu(k,732) * lu(k,1879) - lu(k,1924) = lu(k,1924) - lu(k,733) * lu(k,1879) - lu(k,1925) = lu(k,1925) - lu(k,734) * lu(k,1879) - lu(k,1927) = lu(k,1927) - lu(k,735) * lu(k,1879) - lu(k,2069) = lu(k,2069) - lu(k,727) * lu(k,2066) - lu(k,2078) = lu(k,2078) - lu(k,728) * lu(k,2066) - lu(k,2084) = lu(k,2084) - lu(k,729) * lu(k,2066) - lu(k,2090) = lu(k,2090) - lu(k,730) * lu(k,2066) - lu(k,2096) = lu(k,2096) - lu(k,731) * lu(k,2066) - lu(k,2110) = lu(k,2110) - lu(k,732) * lu(k,2066) - lu(k,2114) = lu(k,2114) - lu(k,733) * lu(k,2066) - lu(k,2115) = lu(k,2115) - lu(k,734) * lu(k,2066) - lu(k,2117) = lu(k,2117) - lu(k,735) * lu(k,2066) - end do - end subroutine lu_fac15 - subroutine lu_fac16( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,737) = 1._r8 / lu(k,737) - lu(k,738) = lu(k,738) * lu(k,737) - lu(k,739) = lu(k,739) * lu(k,737) - lu(k,740) = lu(k,740) * lu(k,737) - lu(k,741) = lu(k,741) * lu(k,737) - lu(k,742) = lu(k,742) * lu(k,737) - lu(k,743) = lu(k,743) * lu(k,737) - lu(k,1194) = - lu(k,738) * lu(k,1188) - lu(k,1196) = - lu(k,739) * lu(k,1188) - lu(k,1198) = - lu(k,740) * lu(k,1188) - lu(k,1201) = lu(k,1201) - lu(k,741) * lu(k,1188) - lu(k,1202) = lu(k,1202) - lu(k,742) * lu(k,1188) - lu(k,1207) = lu(k,1207) - lu(k,743) * lu(k,1188) - lu(k,1255) = - lu(k,738) * lu(k,1248) - lu(k,1256) = lu(k,1256) - lu(k,739) * lu(k,1248) - lu(k,1260) = lu(k,1260) - lu(k,740) * lu(k,1248) - lu(k,1264) = lu(k,1264) - lu(k,741) * lu(k,1248) - lu(k,1265) = lu(k,1265) - lu(k,742) * lu(k,1248) - lu(k,1270) = lu(k,1270) - lu(k,743) * lu(k,1248) - lu(k,1287) = lu(k,1287) - lu(k,738) * lu(k,1278) - lu(k,1288) = - lu(k,739) * lu(k,1278) - lu(k,1292) = - lu(k,740) * lu(k,1278) - lu(k,1296) = lu(k,1296) - lu(k,741) * lu(k,1278) - lu(k,1297) = lu(k,1297) - lu(k,742) * lu(k,1278) - lu(k,1302) = lu(k,1302) - lu(k,743) * lu(k,1278) - lu(k,1675) = lu(k,1675) - lu(k,738) * lu(k,1640) - lu(k,1677) = lu(k,1677) - lu(k,739) * lu(k,1640) - lu(k,1683) = lu(k,1683) - lu(k,740) * lu(k,1640) - lu(k,1691) = lu(k,1691) - lu(k,741) * lu(k,1640) - lu(k,1693) = lu(k,1693) - lu(k,742) * lu(k,1640) - lu(k,1700) = lu(k,1700) - lu(k,743) * lu(k,1640) - lu(k,2093) = lu(k,2093) - lu(k,738) * lu(k,2067) - lu(k,2095) = - lu(k,739) * lu(k,2067) - lu(k,2100) = - lu(k,740) * lu(k,2067) - lu(k,2108) = lu(k,2108) - lu(k,741) * lu(k,2067) - lu(k,2110) = lu(k,2110) - lu(k,742) * lu(k,2067) - lu(k,2117) = lu(k,2117) - lu(k,743) * lu(k,2067) - lu(k,750) = 1._r8 / lu(k,750) - lu(k,751) = lu(k,751) * lu(k,750) - lu(k,752) = lu(k,752) * lu(k,750) - lu(k,753) = lu(k,753) * lu(k,750) - lu(k,754) = lu(k,754) * lu(k,750) - lu(k,755) = lu(k,755) * lu(k,750) - lu(k,756) = lu(k,756) * lu(k,750) - lu(k,757) = lu(k,757) * lu(k,750) - lu(k,758) = lu(k,758) * lu(k,750) - lu(k,759) = lu(k,759) * lu(k,750) - lu(k,760) = lu(k,760) * lu(k,750) - lu(k,1642) = lu(k,1642) - lu(k,751) * lu(k,1641) - lu(k,1654) = lu(k,1654) - lu(k,752) * lu(k,1641) - lu(k,1662) = lu(k,1662) - lu(k,753) * lu(k,1641) - lu(k,1671) = lu(k,1671) - lu(k,754) * lu(k,1641) - lu(k,1678) = lu(k,1678) - lu(k,755) * lu(k,1641) - lu(k,1685) = lu(k,1685) - lu(k,756) * lu(k,1641) - lu(k,1693) = lu(k,1693) - lu(k,757) * lu(k,1641) - lu(k,1697) = lu(k,1697) - lu(k,758) * lu(k,1641) - lu(k,1698) = lu(k,1698) - lu(k,759) * lu(k,1641) - lu(k,1700) = lu(k,1700) - lu(k,760) * lu(k,1641) - lu(k,1881) = lu(k,1881) - lu(k,751) * lu(k,1880) - lu(k,1887) = lu(k,1887) - lu(k,752) * lu(k,1880) - lu(k,1893) = lu(k,1893) - lu(k,753) * lu(k,1880) - lu(k,1900) = lu(k,1900) - lu(k,754) * lu(k,1880) - lu(k,1907) = lu(k,1907) - lu(k,755) * lu(k,1880) - lu(k,1913) = lu(k,1913) - lu(k,756) * lu(k,1880) - lu(k,1920) = lu(k,1920) - lu(k,757) * lu(k,1880) - lu(k,1924) = lu(k,1924) - lu(k,758) * lu(k,1880) - lu(k,1925) = lu(k,1925) - lu(k,759) * lu(k,1880) - lu(k,1927) = lu(k,1927) - lu(k,760) * lu(k,1880) - lu(k,2069) = lu(k,2069) - lu(k,751) * lu(k,2068) - lu(k,2078) = lu(k,2078) - lu(k,752) * lu(k,2068) - lu(k,2084) = lu(k,2084) - lu(k,753) * lu(k,2068) - lu(k,2090) = lu(k,2090) - lu(k,754) * lu(k,2068) - lu(k,2096) = lu(k,2096) - lu(k,755) * lu(k,2068) - lu(k,2102) = lu(k,2102) - lu(k,756) * lu(k,2068) - lu(k,2110) = lu(k,2110) - lu(k,757) * lu(k,2068) - lu(k,2114) = lu(k,2114) - lu(k,758) * lu(k,2068) - lu(k,2115) = lu(k,2115) - lu(k,759) * lu(k,2068) - lu(k,2117) = lu(k,2117) - lu(k,760) * lu(k,2068) - lu(k,761) = 1._r8 / lu(k,761) - lu(k,762) = lu(k,762) * lu(k,761) - lu(k,763) = lu(k,763) * lu(k,761) - lu(k,764) = lu(k,764) * lu(k,761) - lu(k,765) = lu(k,765) * lu(k,761) - lu(k,766) = lu(k,766) * lu(k,761) - lu(k,767) = lu(k,767) * lu(k,761) - lu(k,768) = lu(k,768) * lu(k,761) - lu(k,1671) = lu(k,1671) - lu(k,762) * lu(k,1642) - lu(k,1678) = lu(k,1678) - lu(k,763) * lu(k,1642) - lu(k,1693) = lu(k,1693) - lu(k,764) * lu(k,1642) - lu(k,1696) = lu(k,1696) - lu(k,765) * lu(k,1642) - lu(k,1697) = lu(k,1697) - lu(k,766) * lu(k,1642) - lu(k,1698) = lu(k,1698) - lu(k,767) * lu(k,1642) - lu(k,1700) = lu(k,1700) - lu(k,768) * lu(k,1642) - lu(k,1900) = lu(k,1900) - lu(k,762) * lu(k,1881) - lu(k,1907) = lu(k,1907) - lu(k,763) * lu(k,1881) - lu(k,1920) = lu(k,1920) - lu(k,764) * lu(k,1881) - lu(k,1923) = lu(k,1923) - lu(k,765) * lu(k,1881) - lu(k,1924) = lu(k,1924) - lu(k,766) * lu(k,1881) - lu(k,1925) = lu(k,1925) - lu(k,767) * lu(k,1881) - lu(k,1927) = lu(k,1927) - lu(k,768) * lu(k,1881) - lu(k,1952) = lu(k,1952) - lu(k,762) * lu(k,1945) - lu(k,1954) = - lu(k,763) * lu(k,1945) - lu(k,1964) = lu(k,1964) - lu(k,764) * lu(k,1945) - lu(k,1967) = lu(k,1967) - lu(k,765) * lu(k,1945) - lu(k,1968) = lu(k,1968) - lu(k,766) * lu(k,1945) - lu(k,1969) = lu(k,1969) - lu(k,767) * lu(k,1945) - lu(k,1971) = lu(k,1971) - lu(k,768) * lu(k,1945) - lu(k,2090) = lu(k,2090) - lu(k,762) * lu(k,2069) - lu(k,2096) = lu(k,2096) - lu(k,763) * lu(k,2069) - lu(k,2110) = lu(k,2110) - lu(k,764) * lu(k,2069) - lu(k,2113) = lu(k,2113) - lu(k,765) * lu(k,2069) - lu(k,2114) = lu(k,2114) - lu(k,766) * lu(k,2069) - lu(k,2115) = lu(k,2115) - lu(k,767) * lu(k,2069) - lu(k,2117) = lu(k,2117) - lu(k,768) * lu(k,2069) - lu(k,770) = 1._r8 / lu(k,770) - lu(k,771) = lu(k,771) * lu(k,770) - lu(k,772) = lu(k,772) * lu(k,770) - lu(k,773) = lu(k,773) * lu(k,770) - lu(k,774) = lu(k,774) * lu(k,770) - lu(k,775) = lu(k,775) * lu(k,770) - lu(k,776) = lu(k,776) * lu(k,770) - lu(k,777) = lu(k,777) * lu(k,770) - lu(k,778) = lu(k,778) * lu(k,770) - lu(k,1027) = lu(k,1027) - lu(k,771) * lu(k,1022) - lu(k,1029) = - lu(k,772) * lu(k,1022) - lu(k,1033) = lu(k,1033) - lu(k,773) * lu(k,1022) - lu(k,1034) = lu(k,1034) - lu(k,774) * lu(k,1022) - lu(k,1037) = - lu(k,775) * lu(k,1022) - lu(k,1038) = - lu(k,776) * lu(k,1022) - lu(k,1039) = lu(k,1039) - lu(k,777) * lu(k,1022) - lu(k,1042) = lu(k,1042) - lu(k,778) * lu(k,1022) - lu(k,1668) = lu(k,1668) - lu(k,771) * lu(k,1643) - lu(k,1673) = lu(k,1673) - lu(k,772) * lu(k,1643) - lu(k,1691) = lu(k,1691) - lu(k,773) * lu(k,1643) - lu(k,1693) = lu(k,1693) - lu(k,774) * lu(k,1643) - lu(k,1697) = lu(k,1697) - lu(k,775) * lu(k,1643) - lu(k,1698) = lu(k,1698) - lu(k,776) * lu(k,1643) - lu(k,1700) = lu(k,1700) - lu(k,777) * lu(k,1643) - lu(k,1705) = lu(k,1705) - lu(k,778) * lu(k,1643) - lu(k,1897) = lu(k,1897) - lu(k,771) * lu(k,1882) - lu(k,1902) = lu(k,1902) - lu(k,772) * lu(k,1882) - lu(k,1918) = lu(k,1918) - lu(k,773) * lu(k,1882) - lu(k,1920) = lu(k,1920) - lu(k,774) * lu(k,1882) - lu(k,1924) = lu(k,1924) - lu(k,775) * lu(k,1882) - lu(k,1925) = lu(k,1925) - lu(k,776) * lu(k,1882) - lu(k,1927) = lu(k,1927) - lu(k,777) * lu(k,1882) - lu(k,1932) = - lu(k,778) * lu(k,1882) - lu(k,2087) = lu(k,2087) - lu(k,771) * lu(k,2070) - lu(k,2092) = lu(k,2092) - lu(k,772) * lu(k,2070) - lu(k,2108) = lu(k,2108) - lu(k,773) * lu(k,2070) - lu(k,2110) = lu(k,2110) - lu(k,774) * lu(k,2070) - lu(k,2114) = lu(k,2114) - lu(k,775) * lu(k,2070) - lu(k,2115) = lu(k,2115) - lu(k,776) * lu(k,2070) - lu(k,2117) = lu(k,2117) - lu(k,777) * lu(k,2070) - lu(k,2122) = lu(k,2122) - lu(k,778) * lu(k,2070) - lu(k,780) = 1._r8 / lu(k,780) - lu(k,781) = lu(k,781) * lu(k,780) - lu(k,782) = lu(k,782) * lu(k,780) - lu(k,783) = lu(k,783) * lu(k,780) - lu(k,784) = lu(k,784) * lu(k,780) - lu(k,785) = lu(k,785) * lu(k,780) - lu(k,786) = lu(k,786) * lu(k,780) - lu(k,787) = lu(k,787) * lu(k,780) - lu(k,1958) = lu(k,1958) - lu(k,781) * lu(k,1946) - lu(k,1964) = lu(k,1964) - lu(k,782) * lu(k,1946) - lu(k,1970) = - lu(k,783) * lu(k,1946) - lu(k,1972) = - lu(k,784) * lu(k,1946) - lu(k,1973) = lu(k,1973) - lu(k,785) * lu(k,1946) - lu(k,1974) = lu(k,1974) - lu(k,786) * lu(k,1946) - lu(k,1976) = lu(k,1976) - lu(k,787) * lu(k,1946) - lu(k,2104) = lu(k,2104) - lu(k,781) * lu(k,2071) - lu(k,2110) = lu(k,2110) - lu(k,782) * lu(k,2071) - lu(k,2116) = lu(k,2116) - lu(k,783) * lu(k,2071) - lu(k,2118) = lu(k,2118) - lu(k,784) * lu(k,2071) - lu(k,2119) = lu(k,2119) - lu(k,785) * lu(k,2071) - lu(k,2120) = lu(k,2120) - lu(k,786) * lu(k,2071) - lu(k,2122) = lu(k,2122) - lu(k,787) * lu(k,2071) - lu(k,2128) = lu(k,2128) - lu(k,781) * lu(k,2125) - lu(k,2133) = lu(k,2133) - lu(k,782) * lu(k,2125) - lu(k,2139) = lu(k,2139) - lu(k,783) * lu(k,2125) - lu(k,2141) = lu(k,2141) - lu(k,784) * lu(k,2125) - lu(k,2142) = - lu(k,785) * lu(k,2125) - lu(k,2143) = lu(k,2143) - lu(k,786) * lu(k,2125) - lu(k,2145) = lu(k,2145) - lu(k,787) * lu(k,2125) - lu(k,2152) = lu(k,2152) - lu(k,781) * lu(k,2149) - lu(k,2157) = lu(k,2157) - lu(k,782) * lu(k,2149) - lu(k,2163) = lu(k,2163) - lu(k,783) * lu(k,2149) - lu(k,2165) = - lu(k,784) * lu(k,2149) - lu(k,2166) = lu(k,2166) - lu(k,785) * lu(k,2149) - lu(k,2167) = lu(k,2167) - lu(k,786) * lu(k,2149) - lu(k,2169) = - lu(k,787) * lu(k,2149) - lu(k,2182) = lu(k,2182) - lu(k,781) * lu(k,2174) - lu(k,2188) = lu(k,2188) - lu(k,782) * lu(k,2174) - lu(k,2194) = lu(k,2194) - lu(k,783) * lu(k,2174) - lu(k,2196) = lu(k,2196) - lu(k,784) * lu(k,2174) - lu(k,2197) = lu(k,2197) - lu(k,785) * lu(k,2174) - lu(k,2198) = lu(k,2198) - lu(k,786) * lu(k,2174) - lu(k,2200) = lu(k,2200) - lu(k,787) * lu(k,2174) - end do - end subroutine lu_fac16 - subroutine lu_fac17( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,789) = 1._r8 / lu(k,789) - lu(k,790) = lu(k,790) * lu(k,789) - lu(k,791) = lu(k,791) * lu(k,789) - lu(k,792) = lu(k,792) * lu(k,789) - lu(k,793) = lu(k,793) * lu(k,789) - lu(k,794) = lu(k,794) * lu(k,789) - lu(k,795) = lu(k,795) * lu(k,789) - lu(k,796) = lu(k,796) * lu(k,789) - lu(k,797) = lu(k,797) * lu(k,789) - lu(k,798) = lu(k,798) * lu(k,789) - lu(k,1658) = lu(k,1658) - lu(k,790) * lu(k,1644) - lu(k,1668) = lu(k,1668) - lu(k,791) * lu(k,1644) - lu(k,1691) = lu(k,1691) - lu(k,792) * lu(k,1644) - lu(k,1693) = lu(k,1693) - lu(k,793) * lu(k,1644) - lu(k,1696) = lu(k,1696) - lu(k,794) * lu(k,1644) - lu(k,1697) = lu(k,1697) - lu(k,795) * lu(k,1644) - lu(k,1698) = lu(k,1698) - lu(k,796) * lu(k,1644) - lu(k,1700) = lu(k,1700) - lu(k,797) * lu(k,1644) - lu(k,1705) = lu(k,1705) - lu(k,798) * lu(k,1644) - lu(k,1801) = lu(k,1801) - lu(k,790) * lu(k,1795) - lu(k,1807) = lu(k,1807) - lu(k,791) * lu(k,1795) - lu(k,1826) = lu(k,1826) - lu(k,792) * lu(k,1795) - lu(k,1828) = lu(k,1828) - lu(k,793) * lu(k,1795) - lu(k,1831) = lu(k,1831) - lu(k,794) * lu(k,1795) - lu(k,1832) = lu(k,1832) - lu(k,795) * lu(k,1795) - lu(k,1833) = lu(k,1833) - lu(k,796) * lu(k,1795) - lu(k,1835) = lu(k,1835) - lu(k,797) * lu(k,1795) - lu(k,1840) = lu(k,1840) - lu(k,798) * lu(k,1795) - lu(k,1890) = lu(k,1890) - lu(k,790) * lu(k,1883) - lu(k,1897) = lu(k,1897) - lu(k,791) * lu(k,1883) - lu(k,1918) = lu(k,1918) - lu(k,792) * lu(k,1883) - lu(k,1920) = lu(k,1920) - lu(k,793) * lu(k,1883) - lu(k,1923) = lu(k,1923) - lu(k,794) * lu(k,1883) - lu(k,1924) = lu(k,1924) - lu(k,795) * lu(k,1883) - lu(k,1925) = lu(k,1925) - lu(k,796) * lu(k,1883) - lu(k,1927) = lu(k,1927) - lu(k,797) * lu(k,1883) - lu(k,1932) = lu(k,1932) - lu(k,798) * lu(k,1883) - lu(k,2081) = lu(k,2081) - lu(k,790) * lu(k,2072) - lu(k,2087) = lu(k,2087) - lu(k,791) * lu(k,2072) - lu(k,2108) = lu(k,2108) - lu(k,792) * lu(k,2072) - lu(k,2110) = lu(k,2110) - lu(k,793) * lu(k,2072) - lu(k,2113) = lu(k,2113) - lu(k,794) * lu(k,2072) - lu(k,2114) = lu(k,2114) - lu(k,795) * lu(k,2072) - lu(k,2115) = lu(k,2115) - lu(k,796) * lu(k,2072) - lu(k,2117) = lu(k,2117) - lu(k,797) * lu(k,2072) - lu(k,2122) = lu(k,2122) - lu(k,798) * lu(k,2072) - lu(k,799) = 1._r8 / lu(k,799) - lu(k,800) = lu(k,800) * lu(k,799) - lu(k,801) = lu(k,801) * lu(k,799) - lu(k,802) = lu(k,802) * lu(k,799) - lu(k,827) = lu(k,827) - lu(k,800) * lu(k,824) - lu(k,828) = lu(k,828) - lu(k,801) * lu(k,824) - lu(k,832) = lu(k,832) - lu(k,802) * lu(k,824) - lu(k,918) = lu(k,918) - lu(k,800) * lu(k,913) - lu(k,919) = lu(k,919) - lu(k,801) * lu(k,913) - lu(k,923) = lu(k,923) - lu(k,802) * lu(k,913) - lu(k,1052) = lu(k,1052) - lu(k,800) * lu(k,1045) - lu(k,1053) = lu(k,1053) - lu(k,801) * lu(k,1045) - lu(k,1058) = lu(k,1058) - lu(k,802) * lu(k,1045) - lu(k,1116) = lu(k,1116) - lu(k,800) * lu(k,1106) - lu(k,1117) = lu(k,1117) - lu(k,801) * lu(k,1106) - lu(k,1121) = lu(k,1121) - lu(k,802) * lu(k,1106) - lu(k,1135) = lu(k,1135) - lu(k,800) * lu(k,1130) - lu(k,1136) = lu(k,1136) - lu(k,801) * lu(k,1130) - lu(k,1140) = lu(k,1140) - lu(k,802) * lu(k,1130) - lu(k,1178) = lu(k,1178) - lu(k,800) * lu(k,1169) - lu(k,1179) = lu(k,1179) - lu(k,801) * lu(k,1169) - lu(k,1184) = lu(k,1184) - lu(k,802) * lu(k,1169) - lu(k,1201) = lu(k,1201) - lu(k,800) * lu(k,1189) - lu(k,1202) = lu(k,1202) - lu(k,801) * lu(k,1189) - lu(k,1207) = lu(k,1207) - lu(k,802) * lu(k,1189) - lu(k,1264) = lu(k,1264) - lu(k,800) * lu(k,1249) - lu(k,1265) = lu(k,1265) - lu(k,801) * lu(k,1249) - lu(k,1270) = lu(k,1270) - lu(k,802) * lu(k,1249) - lu(k,1296) = lu(k,1296) - lu(k,800) * lu(k,1279) - lu(k,1297) = lu(k,1297) - lu(k,801) * lu(k,1279) - lu(k,1302) = lu(k,1302) - lu(k,802) * lu(k,1279) - lu(k,1317) = lu(k,1317) - lu(k,800) * lu(k,1307) - lu(k,1318) = lu(k,1318) - lu(k,801) * lu(k,1307) - lu(k,1323) = lu(k,1323) - lu(k,802) * lu(k,1307) - lu(k,1691) = lu(k,1691) - lu(k,800) * lu(k,1645) - lu(k,1693) = lu(k,1693) - lu(k,801) * lu(k,1645) - lu(k,1700) = lu(k,1700) - lu(k,802) * lu(k,1645) - lu(k,1826) = lu(k,1826) - lu(k,800) * lu(k,1796) - lu(k,1828) = lu(k,1828) - lu(k,801) * lu(k,1796) - lu(k,1835) = lu(k,1835) - lu(k,802) * lu(k,1796) - lu(k,803) = 1._r8 / lu(k,803) - lu(k,804) = lu(k,804) * lu(k,803) - lu(k,805) = lu(k,805) * lu(k,803) - lu(k,932) = - lu(k,804) * lu(k,930) - lu(k,935) = - lu(k,805) * lu(k,930) - lu(k,956) = lu(k,956) - lu(k,804) * lu(k,945) - lu(k,968) = - lu(k,805) * lu(k,945) - lu(k,982) = lu(k,982) - lu(k,804) * lu(k,980) - lu(k,985) = - lu(k,805) * lu(k,980) - lu(k,1006) = lu(k,1006) - lu(k,804) * lu(k,994) - lu(k,1018) = - lu(k,805) * lu(k,994) - lu(k,1028) = lu(k,1028) - lu(k,804) * lu(k,1023) - lu(k,1040) = - lu(k,805) * lu(k,1023) - lu(k,1062) = lu(k,1062) - lu(k,804) * lu(k,1059) - lu(k,1069) = - lu(k,805) * lu(k,1059) - lu(k,1099) = lu(k,1099) - lu(k,804) * lu(k,1096) - lu(k,1103) = - lu(k,805) * lu(k,1096) - lu(k,1112) = lu(k,1112) - lu(k,804) * lu(k,1107) - lu(k,1122) = - lu(k,805) * lu(k,1107) - lu(k,1125) = lu(k,1125) - lu(k,804) * lu(k,1124) - lu(k,1128) = - lu(k,805) * lu(k,1124) - lu(k,1173) = lu(k,1173) - lu(k,804) * lu(k,1170) - lu(k,1185) = - lu(k,805) * lu(k,1170) - lu(k,1252) = - lu(k,804) * lu(k,1250) - lu(k,1271) = - lu(k,805) * lu(k,1250) - lu(k,1330) = lu(k,1330) - lu(k,804) * lu(k,1326) - lu(k,1346) = - lu(k,805) * lu(k,1326) - lu(k,1353) = - lu(k,804) * lu(k,1352) - lu(k,1366) = - lu(k,805) * lu(k,1352) - lu(k,1377) = lu(k,1377) - lu(k,804) * lu(k,1373) - lu(k,1398) = - lu(k,805) * lu(k,1373) - lu(k,1430) = lu(k,1430) - lu(k,804) * lu(k,1428) - lu(k,1443) = lu(k,1443) - lu(k,805) * lu(k,1428) - lu(k,1671) = lu(k,1671) - lu(k,804) * lu(k,1646) - lu(k,1703) = lu(k,1703) - lu(k,805) * lu(k,1646) - lu(k,1810) = lu(k,1810) - lu(k,804) * lu(k,1797) - lu(k,1838) = - lu(k,805) * lu(k,1797) - lu(k,1900) = lu(k,1900) - lu(k,804) * lu(k,1884) - lu(k,1930) = lu(k,1930) - lu(k,805) * lu(k,1884) - lu(k,1952) = lu(k,1952) - lu(k,804) * lu(k,1947) - lu(k,1974) = lu(k,1974) - lu(k,805) * lu(k,1947) - lu(k,2090) = lu(k,2090) - lu(k,804) * lu(k,2073) - lu(k,2120) = lu(k,2120) - lu(k,805) * lu(k,2073) - lu(k,2230) = lu(k,2230) - lu(k,804) * lu(k,2214) - lu(k,2259) = lu(k,2259) - lu(k,805) * lu(k,2214) - lu(k,806) = 1._r8 / lu(k,806) - lu(k,807) = lu(k,807) * lu(k,806) - lu(k,808) = lu(k,808) * lu(k,806) - lu(k,809) = lu(k,809) * lu(k,806) - lu(k,810) = lu(k,810) * lu(k,806) - lu(k,811) = lu(k,811) * lu(k,806) - lu(k,812) = lu(k,812) * lu(k,806) - lu(k,813) = lu(k,813) * lu(k,806) - lu(k,1417) = lu(k,1417) - lu(k,807) * lu(k,1415) - lu(k,1418) = - lu(k,808) * lu(k,1415) - lu(k,1420) = - lu(k,809) * lu(k,1415) - lu(k,1421) = - lu(k,810) * lu(k,1415) - lu(k,1423) = lu(k,1423) - lu(k,811) * lu(k,1415) - lu(k,1424) = - lu(k,812) * lu(k,1415) - lu(k,1426) = - lu(k,813) * lu(k,1415) - lu(k,1483) = lu(k,1483) - lu(k,807) * lu(k,1479) - lu(k,1485) = lu(k,1485) - lu(k,808) * lu(k,1479) - lu(k,1488) = - lu(k,809) * lu(k,1479) - lu(k,1489) = lu(k,1489) - lu(k,810) * lu(k,1479) - lu(k,1497) = - lu(k,811) * lu(k,1479) - lu(k,1498) = lu(k,1498) - lu(k,812) * lu(k,1479) - lu(k,1500) = lu(k,1500) - lu(k,813) * lu(k,1479) - lu(k,1523) = lu(k,1523) - lu(k,807) * lu(k,1520) - lu(k,1525) = lu(k,1525) - lu(k,808) * lu(k,1520) - lu(k,1528) = lu(k,1528) - lu(k,809) * lu(k,1520) - lu(k,1529) = lu(k,1529) - lu(k,810) * lu(k,1520) - lu(k,1538) = lu(k,1538) - lu(k,811) * lu(k,1520) - lu(k,1539) = lu(k,1539) - lu(k,812) * lu(k,1520) - lu(k,1541) = lu(k,1541) - lu(k,813) * lu(k,1520) - lu(k,1687) = lu(k,1687) - lu(k,807) * lu(k,1647) - lu(k,1689) = lu(k,1689) - lu(k,808) * lu(k,1647) - lu(k,1692) = lu(k,1692) - lu(k,809) * lu(k,1647) - lu(k,1693) = lu(k,1693) - lu(k,810) * lu(k,1647) - lu(k,1702) = lu(k,1702) - lu(k,811) * lu(k,1647) - lu(k,1703) = lu(k,1703) - lu(k,812) * lu(k,1647) - lu(k,1705) = lu(k,1705) - lu(k,813) * lu(k,1647) - lu(k,2104) = lu(k,2104) - lu(k,807) * lu(k,2074) - lu(k,2106) = lu(k,2106) - lu(k,808) * lu(k,2074) - lu(k,2109) = - lu(k,809) * lu(k,2074) - lu(k,2110) = lu(k,2110) - lu(k,810) * lu(k,2074) - lu(k,2119) = lu(k,2119) - lu(k,811) * lu(k,2074) - lu(k,2120) = lu(k,2120) - lu(k,812) * lu(k,2074) - lu(k,2122) = lu(k,2122) - lu(k,813) * lu(k,2074) - lu(k,2182) = lu(k,2182) - lu(k,807) * lu(k,2175) - lu(k,2184) = lu(k,2184) - lu(k,808) * lu(k,2175) - lu(k,2187) = - lu(k,809) * lu(k,2175) - lu(k,2188) = lu(k,2188) - lu(k,810) * lu(k,2175) - lu(k,2197) = lu(k,2197) - lu(k,811) * lu(k,2175) - lu(k,2198) = lu(k,2198) - lu(k,812) * lu(k,2175) - lu(k,2200) = lu(k,2200) - lu(k,813) * lu(k,2175) - end do - end subroutine lu_fac17 - subroutine lu_fac18( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,815) = 1._r8 / lu(k,815) - lu(k,816) = lu(k,816) * lu(k,815) - lu(k,817) = lu(k,817) * lu(k,815) - lu(k,818) = lu(k,818) * lu(k,815) - lu(k,819) = lu(k,819) * lu(k,815) - lu(k,820) = lu(k,820) * lu(k,815) - lu(k,821) = lu(k,821) * lu(k,815) - lu(k,903) = lu(k,903) - lu(k,816) * lu(k,900) - lu(k,904) = lu(k,904) - lu(k,817) * lu(k,900) - lu(k,907) = lu(k,907) - lu(k,818) * lu(k,900) - lu(k,908) = lu(k,908) - lu(k,819) * lu(k,900) - lu(k,909) = lu(k,909) - lu(k,820) * lu(k,900) - lu(k,910) = - lu(k,821) * lu(k,900) - lu(k,1693) = lu(k,1693) - lu(k,816) * lu(k,1648) - lu(k,1694) = lu(k,1694) - lu(k,817) * lu(k,1648) - lu(k,1699) = lu(k,1699) - lu(k,818) * lu(k,1648) - lu(k,1701) = lu(k,1701) - lu(k,819) * lu(k,1648) - lu(k,1703) = lu(k,1703) - lu(k,820) * lu(k,1648) - lu(k,1705) = lu(k,1705) - lu(k,821) * lu(k,1648) - lu(k,1719) = lu(k,1719) - lu(k,816) * lu(k,1710) - lu(k,1720) = lu(k,1720) - lu(k,817) * lu(k,1710) - lu(k,1725) = lu(k,1725) - lu(k,818) * lu(k,1710) - lu(k,1727) = lu(k,1727) - lu(k,819) * lu(k,1710) - lu(k,1729) = lu(k,1729) - lu(k,820) * lu(k,1710) - lu(k,1731) = - lu(k,821) * lu(k,1710) - lu(k,2003) = lu(k,2003) - lu(k,816) * lu(k,1987) - lu(k,2004) = lu(k,2004) - lu(k,817) * lu(k,1987) - lu(k,2009) = lu(k,2009) - lu(k,818) * lu(k,1987) - lu(k,2011) = lu(k,2011) - lu(k,819) * lu(k,1987) - lu(k,2013) = lu(k,2013) - lu(k,820) * lu(k,1987) - lu(k,2015) = lu(k,2015) - lu(k,821) * lu(k,1987) - lu(k,2110) = lu(k,2110) - lu(k,816) * lu(k,2075) - lu(k,2111) = lu(k,2111) - lu(k,817) * lu(k,2075) - lu(k,2116) = lu(k,2116) - lu(k,818) * lu(k,2075) - lu(k,2118) = lu(k,2118) - lu(k,819) * lu(k,2075) - lu(k,2120) = lu(k,2120) - lu(k,820) * lu(k,2075) - lu(k,2122) = lu(k,2122) - lu(k,821) * lu(k,2075) - lu(k,2133) = lu(k,2133) - lu(k,816) * lu(k,2126) - lu(k,2134) = lu(k,2134) - lu(k,817) * lu(k,2126) - lu(k,2139) = lu(k,2139) - lu(k,818) * lu(k,2126) - lu(k,2141) = lu(k,2141) - lu(k,819) * lu(k,2126) - lu(k,2143) = lu(k,2143) - lu(k,820) * lu(k,2126) - lu(k,2145) = lu(k,2145) - lu(k,821) * lu(k,2126) - lu(k,2188) = lu(k,2188) - lu(k,816) * lu(k,2176) - lu(k,2189) = lu(k,2189) - lu(k,817) * lu(k,2176) - lu(k,2194) = lu(k,2194) - lu(k,818) * lu(k,2176) - lu(k,2196) = lu(k,2196) - lu(k,819) * lu(k,2176) - lu(k,2198) = lu(k,2198) - lu(k,820) * lu(k,2176) - lu(k,2200) = lu(k,2200) - lu(k,821) * lu(k,2176) - lu(k,825) = 1._r8 / lu(k,825) - lu(k,826) = lu(k,826) * lu(k,825) - lu(k,827) = lu(k,827) * lu(k,825) - lu(k,828) = lu(k,828) * lu(k,825) - lu(k,829) = lu(k,829) * lu(k,825) - lu(k,830) = lu(k,830) * lu(k,825) - lu(k,831) = lu(k,831) * lu(k,825) - lu(k,832) = lu(k,832) * lu(k,825) - lu(k,891) = lu(k,891) - lu(k,826) * lu(k,888) - lu(k,893) = lu(k,893) - lu(k,827) * lu(k,888) - lu(k,894) = lu(k,894) - lu(k,828) * lu(k,888) - lu(k,895) = - lu(k,829) * lu(k,888) - lu(k,896) = lu(k,896) - lu(k,830) * lu(k,888) - lu(k,897) = lu(k,897) - lu(k,831) * lu(k,888) - lu(k,898) = lu(k,898) - lu(k,832) * lu(k,888) - lu(k,1668) = lu(k,1668) - lu(k,826) * lu(k,1649) - lu(k,1691) = lu(k,1691) - lu(k,827) * lu(k,1649) - lu(k,1693) = lu(k,1693) - lu(k,828) * lu(k,1649) - lu(k,1696) = lu(k,1696) - lu(k,829) * lu(k,1649) - lu(k,1697) = lu(k,1697) - lu(k,830) * lu(k,1649) - lu(k,1698) = lu(k,1698) - lu(k,831) * lu(k,1649) - lu(k,1700) = lu(k,1700) - lu(k,832) * lu(k,1649) - lu(k,1807) = lu(k,1807) - lu(k,826) * lu(k,1798) - lu(k,1826) = lu(k,1826) - lu(k,827) * lu(k,1798) - lu(k,1828) = lu(k,1828) - lu(k,828) * lu(k,1798) - lu(k,1831) = lu(k,1831) - lu(k,829) * lu(k,1798) - lu(k,1832) = lu(k,1832) - lu(k,830) * lu(k,1798) - lu(k,1833) = lu(k,1833) - lu(k,831) * lu(k,1798) - lu(k,1835) = lu(k,1835) - lu(k,832) * lu(k,1798) - lu(k,1897) = lu(k,1897) - lu(k,826) * lu(k,1885) - lu(k,1918) = lu(k,1918) - lu(k,827) * lu(k,1885) - lu(k,1920) = lu(k,1920) - lu(k,828) * lu(k,1885) - lu(k,1923) = lu(k,1923) - lu(k,829) * lu(k,1885) - lu(k,1924) = lu(k,1924) - lu(k,830) * lu(k,1885) - lu(k,1925) = lu(k,1925) - lu(k,831) * lu(k,1885) - lu(k,1927) = lu(k,1927) - lu(k,832) * lu(k,1885) - lu(k,1992) = - lu(k,826) * lu(k,1988) - lu(k,2001) = lu(k,2001) - lu(k,827) * lu(k,1988) - lu(k,2003) = lu(k,2003) - lu(k,828) * lu(k,1988) - lu(k,2006) = lu(k,2006) - lu(k,829) * lu(k,1988) - lu(k,2007) = lu(k,2007) - lu(k,830) * lu(k,1988) - lu(k,2008) = lu(k,2008) - lu(k,831) * lu(k,1988) - lu(k,2010) = lu(k,2010) - lu(k,832) * lu(k,1988) - lu(k,2087) = lu(k,2087) - lu(k,826) * lu(k,2076) - lu(k,2108) = lu(k,2108) - lu(k,827) * lu(k,2076) - lu(k,2110) = lu(k,2110) - lu(k,828) * lu(k,2076) - lu(k,2113) = lu(k,2113) - lu(k,829) * lu(k,2076) - lu(k,2114) = lu(k,2114) - lu(k,830) * lu(k,2076) - lu(k,2115) = lu(k,2115) - lu(k,831) * lu(k,2076) - lu(k,2117) = lu(k,2117) - lu(k,832) * lu(k,2076) - lu(k,836) = 1._r8 / lu(k,836) - lu(k,837) = lu(k,837) * lu(k,836) - lu(k,838) = lu(k,838) * lu(k,836) - lu(k,839) = lu(k,839) * lu(k,836) - lu(k,840) = lu(k,840) * lu(k,836) - lu(k,841) = lu(k,841) * lu(k,836) - lu(k,842) = lu(k,842) * lu(k,836) - lu(k,843) = lu(k,843) * lu(k,836) - lu(k,844) = lu(k,844) * lu(k,836) - lu(k,845) = lu(k,845) * lu(k,836) - lu(k,846) = lu(k,846) * lu(k,836) - lu(k,847) = lu(k,847) * lu(k,836) - lu(k,848) = lu(k,848) * lu(k,836) - lu(k,849) = lu(k,849) * lu(k,836) - lu(k,850) = lu(k,850) * lu(k,836) - lu(k,851) = lu(k,851) * lu(k,836) - lu(k,1659) = lu(k,1659) - lu(k,837) * lu(k,1650) - lu(k,1664) = lu(k,1664) - lu(k,838) * lu(k,1650) - lu(k,1671) = lu(k,1671) - lu(k,839) * lu(k,1650) - lu(k,1676) = - lu(k,840) * lu(k,1650) - lu(k,1677) = lu(k,1677) - lu(k,841) * lu(k,1650) - lu(k,1680) = lu(k,1680) - lu(k,842) * lu(k,1650) - lu(k,1681) = lu(k,1681) - lu(k,843) * lu(k,1650) - lu(k,1683) = lu(k,1683) - lu(k,844) * lu(k,1650) - lu(k,1685) = lu(k,1685) - lu(k,845) * lu(k,1650) - lu(k,1691) = lu(k,1691) - lu(k,846) * lu(k,1650) - lu(k,1693) = lu(k,1693) - lu(k,847) * lu(k,1650) - lu(k,1695) = lu(k,1695) - lu(k,848) * lu(k,1650) - lu(k,1696) = lu(k,1696) - lu(k,849) * lu(k,1650) - lu(k,1700) = lu(k,1700) - lu(k,850) * lu(k,1650) - lu(k,1704) = lu(k,1704) - lu(k,851) * lu(k,1650) - lu(k,1743) = - lu(k,837) * lu(k,1739) - lu(k,1748) = lu(k,1748) - lu(k,838) * lu(k,1739) - lu(k,1755) = lu(k,1755) - lu(k,839) * lu(k,1739) - lu(k,1760) = lu(k,1760) - lu(k,840) * lu(k,1739) - lu(k,1761) = lu(k,1761) - lu(k,841) * lu(k,1739) - lu(k,1764) = lu(k,1764) - lu(k,842) * lu(k,1739) - lu(k,1765) = lu(k,1765) - lu(k,843) * lu(k,1739) - lu(k,1767) = lu(k,1767) - lu(k,844) * lu(k,1739) - lu(k,1769) = lu(k,1769) - lu(k,845) * lu(k,1739) - lu(k,1774) = lu(k,1774) - lu(k,846) * lu(k,1739) - lu(k,1776) = lu(k,1776) - lu(k,847) * lu(k,1739) - lu(k,1778) = lu(k,1778) - lu(k,848) * lu(k,1739) - lu(k,1779) = - lu(k,849) * lu(k,1739) - lu(k,1783) = lu(k,1783) - lu(k,850) * lu(k,1739) - lu(k,1787) = - lu(k,851) * lu(k,1739) - lu(k,2219) = lu(k,2219) - lu(k,837) * lu(k,2215) - lu(k,2224) = lu(k,2224) - lu(k,838) * lu(k,2215) - lu(k,2230) = lu(k,2230) - lu(k,839) * lu(k,2215) - lu(k,2233) = - lu(k,840) * lu(k,2215) - lu(k,2234) = lu(k,2234) - lu(k,841) * lu(k,2215) - lu(k,2237) = - lu(k,842) * lu(k,2215) - lu(k,2238) = - lu(k,843) * lu(k,2215) - lu(k,2240) = lu(k,2240) - lu(k,844) * lu(k,2215) - lu(k,2242) = lu(k,2242) - lu(k,845) * lu(k,2215) - lu(k,2247) = lu(k,2247) - lu(k,846) * lu(k,2215) - lu(k,2249) = lu(k,2249) - lu(k,847) * lu(k,2215) - lu(k,2251) = lu(k,2251) - lu(k,848) * lu(k,2215) - lu(k,2252) = lu(k,2252) - lu(k,849) * lu(k,2215) - lu(k,2256) = lu(k,2256) - lu(k,850) * lu(k,2215) - lu(k,2260) = lu(k,2260) - lu(k,851) * lu(k,2215) - lu(k,853) = 1._r8 / lu(k,853) - lu(k,854) = lu(k,854) * lu(k,853) - lu(k,855) = lu(k,855) * lu(k,853) - lu(k,856) = lu(k,856) * lu(k,853) - lu(k,857) = lu(k,857) * lu(k,853) - lu(k,858) = lu(k,858) * lu(k,853) - lu(k,1234) = lu(k,1234) - lu(k,854) * lu(k,1233) - lu(k,1237) = lu(k,1237) - lu(k,855) * lu(k,1233) - lu(k,1242) = - lu(k,856) * lu(k,1233) - lu(k,1244) = lu(k,1244) - lu(k,857) * lu(k,1233) - lu(k,1246) = - lu(k,858) * lu(k,1233) - lu(k,1679) = lu(k,1679) - lu(k,854) * lu(k,1651) - lu(k,1693) = lu(k,1693) - lu(k,855) * lu(k,1651) - lu(k,1700) = lu(k,1700) - lu(k,856) * lu(k,1651) - lu(k,1703) = lu(k,1703) - lu(k,857) * lu(k,1651) - lu(k,1705) = lu(k,1705) - lu(k,858) * lu(k,1651) - lu(k,1713) = lu(k,1713) - lu(k,854) * lu(k,1711) - lu(k,1719) = lu(k,1719) - lu(k,855) * lu(k,1711) - lu(k,1726) = lu(k,1726) - lu(k,856) * lu(k,1711) - lu(k,1729) = lu(k,1729) - lu(k,857) * lu(k,1711) - lu(k,1731) = lu(k,1731) - lu(k,858) * lu(k,1711) - lu(k,1763) = - lu(k,854) * lu(k,1740) - lu(k,1776) = lu(k,1776) - lu(k,855) * lu(k,1740) - lu(k,1783) = lu(k,1783) - lu(k,856) * lu(k,1740) - lu(k,1786) = lu(k,1786) - lu(k,857) * lu(k,1740) - lu(k,1788) = - lu(k,858) * lu(k,1740) - lu(k,1955) = lu(k,1955) - lu(k,854) * lu(k,1948) - lu(k,1964) = lu(k,1964) - lu(k,855) * lu(k,1948) - lu(k,1971) = lu(k,1971) - lu(k,856) * lu(k,1948) - lu(k,1974) = lu(k,1974) - lu(k,857) * lu(k,1948) - lu(k,1976) = lu(k,1976) - lu(k,858) * lu(k,1948) - lu(k,2151) = lu(k,2151) - lu(k,854) * lu(k,2150) - lu(k,2157) = lu(k,2157) - lu(k,855) * lu(k,2150) - lu(k,2164) = lu(k,2164) - lu(k,856) * lu(k,2150) - lu(k,2167) = lu(k,2167) - lu(k,857) * lu(k,2150) - lu(k,2169) = lu(k,2169) - lu(k,858) * lu(k,2150) - lu(k,2180) = lu(k,2180) - lu(k,854) * lu(k,2177) - lu(k,2188) = lu(k,2188) - lu(k,855) * lu(k,2177) - lu(k,2195) = lu(k,2195) - lu(k,856) * lu(k,2177) - lu(k,2198) = lu(k,2198) - lu(k,857) * lu(k,2177) - lu(k,2200) = lu(k,2200) - lu(k,858) * lu(k,2177) - lu(k,2236) = lu(k,2236) - lu(k,854) * lu(k,2216) - lu(k,2249) = lu(k,2249) - lu(k,855) * lu(k,2216) - lu(k,2256) = lu(k,2256) - lu(k,856) * lu(k,2216) - lu(k,2259) = lu(k,2259) - lu(k,857) * lu(k,2216) - lu(k,2261) = lu(k,2261) - lu(k,858) * lu(k,2216) - lu(k,2267) = - lu(k,854) * lu(k,2265) - lu(k,2275) = lu(k,2275) - lu(k,855) * lu(k,2265) - lu(k,2282) = - lu(k,856) * lu(k,2265) - lu(k,2285) = lu(k,2285) - lu(k,857) * lu(k,2265) - lu(k,2287) = lu(k,2287) - lu(k,858) * lu(k,2265) - end do - end subroutine lu_fac18 - subroutine lu_fac19( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,859) = 1._r8 / lu(k,859) - lu(k,860) = lu(k,860) * lu(k,859) - lu(k,861) = lu(k,861) * lu(k,859) - lu(k,862) = lu(k,862) * lu(k,859) - lu(k,863) = lu(k,863) * lu(k,859) - lu(k,864) = lu(k,864) * lu(k,859) - lu(k,1030) = - lu(k,860) * lu(k,1024) - lu(k,1031) = - lu(k,861) * lu(k,1024) - lu(k,1033) = lu(k,1033) - lu(k,862) * lu(k,1024) - lu(k,1034) = lu(k,1034) - lu(k,863) * lu(k,1024) - lu(k,1038) = lu(k,1038) - lu(k,864) * lu(k,1024) - lu(k,1077) = - lu(k,860) * lu(k,1072) - lu(k,1078) = - lu(k,861) * lu(k,1072) - lu(k,1080) = - lu(k,862) * lu(k,1072) - lu(k,1081) = lu(k,1081) - lu(k,863) * lu(k,1072) - lu(k,1084) = lu(k,1084) - lu(k,864) * lu(k,1072) - lu(k,1197) = - lu(k,860) * lu(k,1190) - lu(k,1199) = lu(k,1199) - lu(k,861) * lu(k,1190) - lu(k,1201) = lu(k,1201) - lu(k,862) * lu(k,1190) - lu(k,1202) = lu(k,1202) - lu(k,863) * lu(k,1190) - lu(k,1206) = lu(k,1206) - lu(k,864) * lu(k,1190) - lu(k,1289) = lu(k,1289) - lu(k,860) * lu(k,1280) - lu(k,1294) = lu(k,1294) - lu(k,861) * lu(k,1280) - lu(k,1296) = lu(k,1296) - lu(k,862) * lu(k,1280) - lu(k,1297) = lu(k,1297) - lu(k,863) * lu(k,1280) - lu(k,1301) = lu(k,1301) - lu(k,864) * lu(k,1280) - lu(k,1678) = lu(k,1678) - lu(k,860) * lu(k,1652) - lu(k,1685) = lu(k,1685) - lu(k,861) * lu(k,1652) - lu(k,1691) = lu(k,1691) - lu(k,862) * lu(k,1652) - lu(k,1693) = lu(k,1693) - lu(k,863) * lu(k,1652) - lu(k,1698) = lu(k,1698) - lu(k,864) * lu(k,1652) - lu(k,1762) = lu(k,1762) - lu(k,860) * lu(k,1741) - lu(k,1769) = lu(k,1769) - lu(k,861) * lu(k,1741) - lu(k,1774) = lu(k,1774) - lu(k,862) * lu(k,1741) - lu(k,1776) = lu(k,1776) - lu(k,863) * lu(k,1741) - lu(k,1781) = lu(k,1781) - lu(k,864) * lu(k,1741) - lu(k,1816) = lu(k,1816) - lu(k,860) * lu(k,1799) - lu(k,1822) = lu(k,1822) - lu(k,861) * lu(k,1799) - lu(k,1826) = lu(k,1826) - lu(k,862) * lu(k,1799) - lu(k,1828) = lu(k,1828) - lu(k,863) * lu(k,1799) - lu(k,1833) = lu(k,1833) - lu(k,864) * lu(k,1799) - lu(k,1907) = lu(k,1907) - lu(k,860) * lu(k,1886) - lu(k,1913) = lu(k,1913) - lu(k,861) * lu(k,1886) - lu(k,1918) = lu(k,1918) - lu(k,862) * lu(k,1886) - lu(k,1920) = lu(k,1920) - lu(k,863) * lu(k,1886) - lu(k,1925) = lu(k,1925) - lu(k,864) * lu(k,1886) - lu(k,2096) = lu(k,2096) - lu(k,860) * lu(k,2077) - lu(k,2102) = lu(k,2102) - lu(k,861) * lu(k,2077) - lu(k,2108) = lu(k,2108) - lu(k,862) * lu(k,2077) - lu(k,2110) = lu(k,2110) - lu(k,863) * lu(k,2077) - lu(k,2115) = lu(k,2115) - lu(k,864) * lu(k,2077) - lu(k,866) = 1._r8 / lu(k,866) - lu(k,867) = lu(k,867) * lu(k,866) - lu(k,868) = lu(k,868) * lu(k,866) - lu(k,869) = lu(k,869) * lu(k,866) - lu(k,870) = lu(k,870) * lu(k,866) - lu(k,871) = lu(k,871) * lu(k,866) - lu(k,872) = lu(k,872) * lu(k,866) - lu(k,873) = lu(k,873) * lu(k,866) - lu(k,874) = lu(k,874) * lu(k,866) - lu(k,1403) = lu(k,1403) - lu(k,867) * lu(k,1402) - lu(k,1404) = - lu(k,868) * lu(k,1402) - lu(k,1405) = lu(k,1405) - lu(k,869) * lu(k,1402) - lu(k,1406) = - lu(k,870) * lu(k,1402) - lu(k,1408) = lu(k,1408) - lu(k,871) * lu(k,1402) - lu(k,1409) = - lu(k,872) * lu(k,1402) - lu(k,1410) = - lu(k,873) * lu(k,1402) - lu(k,1414) = lu(k,1414) - lu(k,874) * lu(k,1402) - lu(k,1431) = lu(k,1431) - lu(k,867) * lu(k,1429) - lu(k,1432) = lu(k,1432) - lu(k,868) * lu(k,1429) - lu(k,1433) = lu(k,1433) - lu(k,869) * lu(k,1429) - lu(k,1434) = - lu(k,870) * lu(k,1429) - lu(k,1437) = lu(k,1437) - lu(k,871) * lu(k,1429) - lu(k,1438) = - lu(k,872) * lu(k,1429) - lu(k,1439) = lu(k,1439) - lu(k,873) * lu(k,1429) - lu(k,1444) = lu(k,1444) - lu(k,874) * lu(k,1429) - lu(k,1462) = - lu(k,867) * lu(k,1461) - lu(k,1463) = - lu(k,868) * lu(k,1461) - lu(k,1464) = lu(k,1464) - lu(k,869) * lu(k,1461) - lu(k,1465) = lu(k,1465) - lu(k,870) * lu(k,1461) - lu(k,1468) = lu(k,1468) - lu(k,871) * lu(k,1461) - lu(k,1469) = lu(k,1469) - lu(k,872) * lu(k,1461) - lu(k,1470) = - lu(k,873) * lu(k,1461) - lu(k,1477) = lu(k,1477) - lu(k,874) * lu(k,1461) - lu(k,1522) = lu(k,1522) - lu(k,867) * lu(k,1521) - lu(k,1524) = lu(k,1524) - lu(k,868) * lu(k,1521) - lu(k,1525) = lu(k,1525) - lu(k,869) * lu(k,1521) - lu(k,1526) = - lu(k,870) * lu(k,1521) - lu(k,1529) = lu(k,1529) - lu(k,871) * lu(k,1521) - lu(k,1531) = - lu(k,872) * lu(k,1521) - lu(k,1532) = lu(k,1532) - lu(k,873) * lu(k,1521) - lu(k,1541) = lu(k,1541) - lu(k,874) * lu(k,1521) - lu(k,1686) = lu(k,1686) - lu(k,867) * lu(k,1653) - lu(k,1688) = lu(k,1688) - lu(k,868) * lu(k,1653) - lu(k,1689) = lu(k,1689) - lu(k,869) * lu(k,1653) - lu(k,1690) = lu(k,1690) - lu(k,870) * lu(k,1653) - lu(k,1693) = lu(k,1693) - lu(k,871) * lu(k,1653) - lu(k,1695) = lu(k,1695) - lu(k,872) * lu(k,1653) - lu(k,1696) = lu(k,1696) - lu(k,873) * lu(k,1653) - lu(k,1705) = lu(k,1705) - lu(k,874) * lu(k,1653) - lu(k,2268) = lu(k,2268) - lu(k,867) * lu(k,2266) - lu(k,2270) = - lu(k,868) * lu(k,2266) - lu(k,2271) = lu(k,2271) - lu(k,869) * lu(k,2266) - lu(k,2272) = - lu(k,870) * lu(k,2266) - lu(k,2275) = lu(k,2275) - lu(k,871) * lu(k,2266) - lu(k,2277) = - lu(k,872) * lu(k,2266) - lu(k,2278) = - lu(k,873) * lu(k,2266) - lu(k,2287) = lu(k,2287) - lu(k,874) * lu(k,2266) - lu(k,875) = 1._r8 / lu(k,875) - lu(k,876) = lu(k,876) * lu(k,875) - lu(k,877) = lu(k,877) * lu(k,875) - lu(k,878) = lu(k,878) * lu(k,875) - lu(k,879) = lu(k,879) * lu(k,875) - lu(k,880) = lu(k,880) * lu(k,875) - lu(k,881) = lu(k,881) * lu(k,875) - lu(k,882) = lu(k,882) * lu(k,875) - lu(k,883) = lu(k,883) * lu(k,875) - lu(k,1074) = lu(k,1074) - lu(k,876) * lu(k,1073) - lu(k,1076) = lu(k,1076) - lu(k,877) * lu(k,1073) - lu(k,1077) = lu(k,1077) - lu(k,878) * lu(k,1073) - lu(k,1081) = lu(k,1081) - lu(k,879) * lu(k,1073) - lu(k,1082) = - lu(k,880) * lu(k,1073) - lu(k,1083) = - lu(k,881) * lu(k,1073) - lu(k,1084) = lu(k,1084) - lu(k,882) * lu(k,1073) - lu(k,1085) = lu(k,1085) - lu(k,883) * lu(k,1073) - lu(k,1282) = lu(k,1282) - lu(k,876) * lu(k,1281) - lu(k,1284) = lu(k,1284) - lu(k,877) * lu(k,1281) - lu(k,1289) = lu(k,1289) - lu(k,878) * lu(k,1281) - lu(k,1297) = lu(k,1297) - lu(k,879) * lu(k,1281) - lu(k,1299) = lu(k,1299) - lu(k,880) * lu(k,1281) - lu(k,1300) = lu(k,1300) - lu(k,881) * lu(k,1281) - lu(k,1301) = lu(k,1301) - lu(k,882) * lu(k,1281) - lu(k,1302) = lu(k,1302) - lu(k,883) * lu(k,1281) - lu(k,1662) = lu(k,1662) - lu(k,876) * lu(k,1654) - lu(k,1671) = lu(k,1671) - lu(k,877) * lu(k,1654) - lu(k,1678) = lu(k,1678) - lu(k,878) * lu(k,1654) - lu(k,1693) = lu(k,1693) - lu(k,879) * lu(k,1654) - lu(k,1696) = lu(k,1696) - lu(k,880) * lu(k,1654) - lu(k,1697) = lu(k,1697) - lu(k,881) * lu(k,1654) - lu(k,1698) = lu(k,1698) - lu(k,882) * lu(k,1654) - lu(k,1700) = lu(k,1700) - lu(k,883) * lu(k,1654) - lu(k,1893) = lu(k,1893) - lu(k,876) * lu(k,1887) - lu(k,1900) = lu(k,1900) - lu(k,877) * lu(k,1887) - lu(k,1907) = lu(k,1907) - lu(k,878) * lu(k,1887) - lu(k,1920) = lu(k,1920) - lu(k,879) * lu(k,1887) - lu(k,1923) = lu(k,1923) - lu(k,880) * lu(k,1887) - lu(k,1924) = lu(k,1924) - lu(k,881) * lu(k,1887) - lu(k,1925) = lu(k,1925) - lu(k,882) * lu(k,1887) - lu(k,1927) = lu(k,1927) - lu(k,883) * lu(k,1887) - lu(k,1951) = lu(k,1951) - lu(k,876) * lu(k,1949) - lu(k,1952) = lu(k,1952) - lu(k,877) * lu(k,1949) - lu(k,1954) = lu(k,1954) - lu(k,878) * lu(k,1949) - lu(k,1964) = lu(k,1964) - lu(k,879) * lu(k,1949) - lu(k,1967) = lu(k,1967) - lu(k,880) * lu(k,1949) - lu(k,1968) = lu(k,1968) - lu(k,881) * lu(k,1949) - lu(k,1969) = lu(k,1969) - lu(k,882) * lu(k,1949) - lu(k,1971) = lu(k,1971) - lu(k,883) * lu(k,1949) - lu(k,2084) = lu(k,2084) - lu(k,876) * lu(k,2078) - lu(k,2090) = lu(k,2090) - lu(k,877) * lu(k,2078) - lu(k,2096) = lu(k,2096) - lu(k,878) * lu(k,2078) - lu(k,2110) = lu(k,2110) - lu(k,879) * lu(k,2078) - lu(k,2113) = lu(k,2113) - lu(k,880) * lu(k,2078) - lu(k,2114) = lu(k,2114) - lu(k,881) * lu(k,2078) - lu(k,2115) = lu(k,2115) - lu(k,882) * lu(k,2078) - lu(k,2117) = lu(k,2117) - lu(k,883) * lu(k,2078) - lu(k,889) = 1._r8 / lu(k,889) - lu(k,890) = lu(k,890) * lu(k,889) - lu(k,891) = lu(k,891) * lu(k,889) - lu(k,892) = lu(k,892) * lu(k,889) - lu(k,893) = lu(k,893) * lu(k,889) - lu(k,894) = lu(k,894) * lu(k,889) - lu(k,895) = lu(k,895) * lu(k,889) - lu(k,896) = lu(k,896) * lu(k,889) - lu(k,897) = lu(k,897) * lu(k,889) - lu(k,898) = lu(k,898) * lu(k,889) - lu(k,948) = lu(k,948) - lu(k,890) * lu(k,946) - lu(k,955) = - lu(k,891) * lu(k,946) - lu(k,959) = lu(k,959) - lu(k,892) * lu(k,946) - lu(k,961) = lu(k,961) - lu(k,893) * lu(k,946) - lu(k,962) = lu(k,962) - lu(k,894) * lu(k,946) - lu(k,964) = - lu(k,895) * lu(k,946) - lu(k,965) = - lu(k,896) * lu(k,946) - lu(k,966) = - lu(k,897) * lu(k,946) - lu(k,967) = lu(k,967) - lu(k,898) * lu(k,946) - lu(k,997) = lu(k,997) - lu(k,890) * lu(k,995) - lu(k,1004) = - lu(k,891) * lu(k,995) - lu(k,1009) = lu(k,1009) - lu(k,892) * lu(k,995) - lu(k,1011) = lu(k,1011) - lu(k,893) * lu(k,995) - lu(k,1012) = lu(k,1012) - lu(k,894) * lu(k,995) - lu(k,1014) = - lu(k,895) * lu(k,995) - lu(k,1015) = - lu(k,896) * lu(k,995) - lu(k,1016) = - lu(k,897) * lu(k,995) - lu(k,1017) = lu(k,1017) - lu(k,898) * lu(k,995) - lu(k,1658) = lu(k,1658) - lu(k,890) * lu(k,1655) - lu(k,1668) = lu(k,1668) - lu(k,891) * lu(k,1655) - lu(k,1685) = lu(k,1685) - lu(k,892) * lu(k,1655) - lu(k,1691) = lu(k,1691) - lu(k,893) * lu(k,1655) - lu(k,1693) = lu(k,1693) - lu(k,894) * lu(k,1655) - lu(k,1696) = lu(k,1696) - lu(k,895) * lu(k,1655) - lu(k,1697) = lu(k,1697) - lu(k,896) * lu(k,1655) - lu(k,1698) = lu(k,1698) - lu(k,897) * lu(k,1655) - lu(k,1700) = lu(k,1700) - lu(k,898) * lu(k,1655) - lu(k,1890) = lu(k,1890) - lu(k,890) * lu(k,1888) - lu(k,1897) = lu(k,1897) - lu(k,891) * lu(k,1888) - lu(k,1913) = lu(k,1913) - lu(k,892) * lu(k,1888) - lu(k,1918) = lu(k,1918) - lu(k,893) * lu(k,1888) - lu(k,1920) = lu(k,1920) - lu(k,894) * lu(k,1888) - lu(k,1923) = lu(k,1923) - lu(k,895) * lu(k,1888) - lu(k,1924) = lu(k,1924) - lu(k,896) * lu(k,1888) - lu(k,1925) = lu(k,1925) - lu(k,897) * lu(k,1888) - lu(k,1927) = lu(k,1927) - lu(k,898) * lu(k,1888) - lu(k,2081) = lu(k,2081) - lu(k,890) * lu(k,2079) - lu(k,2087) = lu(k,2087) - lu(k,891) * lu(k,2079) - lu(k,2102) = lu(k,2102) - lu(k,892) * lu(k,2079) - lu(k,2108) = lu(k,2108) - lu(k,893) * lu(k,2079) - lu(k,2110) = lu(k,2110) - lu(k,894) * lu(k,2079) - lu(k,2113) = lu(k,2113) - lu(k,895) * lu(k,2079) - lu(k,2114) = lu(k,2114) - lu(k,896) * lu(k,2079) - lu(k,2115) = lu(k,2115) - lu(k,897) * lu(k,2079) - lu(k,2117) = lu(k,2117) - lu(k,898) * lu(k,2079) - lu(k,2218) = lu(k,2218) - lu(k,890) * lu(k,2217) - lu(k,2227) = lu(k,2227) - lu(k,891) * lu(k,2217) - lu(k,2242) = lu(k,2242) - lu(k,892) * lu(k,2217) - lu(k,2247) = lu(k,2247) - lu(k,893) * lu(k,2217) - lu(k,2249) = lu(k,2249) - lu(k,894) * lu(k,2217) - lu(k,2252) = lu(k,2252) - lu(k,895) * lu(k,2217) - lu(k,2253) = lu(k,2253) - lu(k,896) * lu(k,2217) - lu(k,2254) = lu(k,2254) - lu(k,897) * lu(k,2217) - lu(k,2256) = lu(k,2256) - lu(k,898) * lu(k,2217) - end do - end subroutine lu_fac19 - subroutine lu_fac20( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,901) = 1._r8 / lu(k,901) - lu(k,902) = lu(k,902) * lu(k,901) - lu(k,903) = lu(k,903) * lu(k,901) - lu(k,904) = lu(k,904) * lu(k,901) - lu(k,905) = lu(k,905) * lu(k,901) - lu(k,906) = lu(k,906) * lu(k,901) - lu(k,907) = lu(k,907) * lu(k,901) - lu(k,908) = lu(k,908) * lu(k,901) - lu(k,909) = lu(k,909) * lu(k,901) - lu(k,910) = lu(k,910) * lu(k,901) - lu(k,1690) = lu(k,1690) - lu(k,902) * lu(k,1656) - lu(k,1693) = lu(k,1693) - lu(k,903) * lu(k,1656) - lu(k,1694) = lu(k,1694) - lu(k,904) * lu(k,1656) - lu(k,1695) = lu(k,1695) - lu(k,905) * lu(k,1656) - lu(k,1698) = lu(k,1698) - lu(k,906) * lu(k,1656) - lu(k,1699) = lu(k,1699) - lu(k,907) * lu(k,1656) - lu(k,1701) = lu(k,1701) - lu(k,908) * lu(k,1656) - lu(k,1703) = lu(k,1703) - lu(k,909) * lu(k,1656) - lu(k,1705) = lu(k,1705) - lu(k,910) * lu(k,1656) - lu(k,1716) = - lu(k,902) * lu(k,1712) - lu(k,1719) = lu(k,1719) - lu(k,903) * lu(k,1712) - lu(k,1720) = lu(k,1720) - lu(k,904) * lu(k,1712) - lu(k,1721) = - lu(k,905) * lu(k,1712) - lu(k,1724) = lu(k,1724) - lu(k,906) * lu(k,1712) - lu(k,1725) = lu(k,1725) - lu(k,907) * lu(k,1712) - lu(k,1727) = lu(k,1727) - lu(k,908) * lu(k,1712) - lu(k,1729) = lu(k,1729) - lu(k,909) * lu(k,1712) - lu(k,1731) = lu(k,1731) - lu(k,910) * lu(k,1712) - lu(k,1961) = lu(k,1961) - lu(k,902) * lu(k,1950) - lu(k,1964) = lu(k,1964) - lu(k,903) * lu(k,1950) - lu(k,1965) = lu(k,1965) - lu(k,904) * lu(k,1950) - lu(k,1966) = lu(k,1966) - lu(k,905) * lu(k,1950) - lu(k,1969) = lu(k,1969) - lu(k,906) * lu(k,1950) - lu(k,1970) = lu(k,1970) - lu(k,907) * lu(k,1950) - lu(k,1972) = lu(k,1972) - lu(k,908) * lu(k,1950) - lu(k,1974) = lu(k,1974) - lu(k,909) * lu(k,1950) - lu(k,1976) = lu(k,1976) - lu(k,910) * lu(k,1950) - lu(k,2000) = - lu(k,902) * lu(k,1989) - lu(k,2003) = lu(k,2003) - lu(k,903) * lu(k,1989) - lu(k,2004) = lu(k,2004) - lu(k,904) * lu(k,1989) - lu(k,2005) = lu(k,2005) - lu(k,905) * lu(k,1989) - lu(k,2008) = lu(k,2008) - lu(k,906) * lu(k,1989) - lu(k,2009) = lu(k,2009) - lu(k,907) * lu(k,1989) - lu(k,2011) = lu(k,2011) - lu(k,908) * lu(k,1989) - lu(k,2013) = lu(k,2013) - lu(k,909) * lu(k,1989) - lu(k,2015) = lu(k,2015) - lu(k,910) * lu(k,1989) - lu(k,2130) = lu(k,2130) - lu(k,902) * lu(k,2127) - lu(k,2133) = lu(k,2133) - lu(k,903) * lu(k,2127) - lu(k,2134) = lu(k,2134) - lu(k,904) * lu(k,2127) - lu(k,2135) = - lu(k,905) * lu(k,2127) - lu(k,2138) = - lu(k,906) * lu(k,2127) - lu(k,2139) = lu(k,2139) - lu(k,907) * lu(k,2127) - lu(k,2141) = lu(k,2141) - lu(k,908) * lu(k,2127) - lu(k,2143) = lu(k,2143) - lu(k,909) * lu(k,2127) - lu(k,2145) = lu(k,2145) - lu(k,910) * lu(k,2127) - lu(k,2185) = lu(k,2185) - lu(k,902) * lu(k,2178) - lu(k,2188) = lu(k,2188) - lu(k,903) * lu(k,2178) - lu(k,2189) = lu(k,2189) - lu(k,904) * lu(k,2178) - lu(k,2190) = lu(k,2190) - lu(k,905) * lu(k,2178) - lu(k,2193) = lu(k,2193) - lu(k,906) * lu(k,2178) - lu(k,2194) = lu(k,2194) - lu(k,907) * lu(k,2178) - lu(k,2196) = lu(k,2196) - lu(k,908) * lu(k,2178) - lu(k,2198) = lu(k,2198) - lu(k,909) * lu(k,2178) - lu(k,2200) = lu(k,2200) - lu(k,910) * lu(k,2178) - lu(k,914) = 1._r8 / lu(k,914) - lu(k,915) = lu(k,915) * lu(k,914) - lu(k,916) = lu(k,916) * lu(k,914) - lu(k,917) = lu(k,917) * lu(k,914) - lu(k,918) = lu(k,918) * lu(k,914) - lu(k,919) = lu(k,919) * lu(k,914) - lu(k,920) = lu(k,920) * lu(k,914) - lu(k,921) = lu(k,921) * lu(k,914) - lu(k,922) = lu(k,922) * lu(k,914) - lu(k,923) = lu(k,923) * lu(k,914) - lu(k,948) = lu(k,948) - lu(k,915) * lu(k,947) - lu(k,951) = lu(k,951) - lu(k,916) * lu(k,947) - lu(k,960) = - lu(k,917) * lu(k,947) - lu(k,961) = lu(k,961) - lu(k,918) * lu(k,947) - lu(k,962) = lu(k,962) - lu(k,919) * lu(k,947) - lu(k,964) = lu(k,964) - lu(k,920) * lu(k,947) - lu(k,965) = lu(k,965) - lu(k,921) * lu(k,947) - lu(k,966) = lu(k,966) - lu(k,922) * lu(k,947) - lu(k,967) = lu(k,967) - lu(k,923) * lu(k,947) - lu(k,997) = lu(k,997) - lu(k,915) * lu(k,996) - lu(k,999) = lu(k,999) - lu(k,916) * lu(k,996) - lu(k,1010) = - lu(k,917) * lu(k,996) - lu(k,1011) = lu(k,1011) - lu(k,918) * lu(k,996) - lu(k,1012) = lu(k,1012) - lu(k,919) * lu(k,996) - lu(k,1014) = lu(k,1014) - lu(k,920) * lu(k,996) - lu(k,1015) = lu(k,1015) - lu(k,921) * lu(k,996) - lu(k,1016) = lu(k,1016) - lu(k,922) * lu(k,996) - lu(k,1017) = lu(k,1017) - lu(k,923) * lu(k,996) - lu(k,1658) = lu(k,1658) - lu(k,915) * lu(k,1657) - lu(k,1661) = lu(k,1661) - lu(k,916) * lu(k,1657) - lu(k,1690) = lu(k,1690) - lu(k,917) * lu(k,1657) - lu(k,1691) = lu(k,1691) - lu(k,918) * lu(k,1657) - lu(k,1693) = lu(k,1693) - lu(k,919) * lu(k,1657) - lu(k,1696) = lu(k,1696) - lu(k,920) * lu(k,1657) - lu(k,1697) = lu(k,1697) - lu(k,921) * lu(k,1657) - lu(k,1698) = lu(k,1698) - lu(k,922) * lu(k,1657) - lu(k,1700) = lu(k,1700) - lu(k,923) * lu(k,1657) - lu(k,1801) = lu(k,1801) - lu(k,915) * lu(k,1800) - lu(k,1802) = lu(k,1802) - lu(k,916) * lu(k,1800) - lu(k,1825) = lu(k,1825) - lu(k,917) * lu(k,1800) - lu(k,1826) = lu(k,1826) - lu(k,918) * lu(k,1800) - lu(k,1828) = lu(k,1828) - lu(k,919) * lu(k,1800) - lu(k,1831) = lu(k,1831) - lu(k,920) * lu(k,1800) - lu(k,1832) = lu(k,1832) - lu(k,921) * lu(k,1800) - lu(k,1833) = lu(k,1833) - lu(k,922) * lu(k,1800) - lu(k,1835) = lu(k,1835) - lu(k,923) * lu(k,1800) - lu(k,1890) = lu(k,1890) - lu(k,915) * lu(k,1889) - lu(k,1892) = lu(k,1892) - lu(k,916) * lu(k,1889) - lu(k,1917) = lu(k,1917) - lu(k,917) * lu(k,1889) - lu(k,1918) = lu(k,1918) - lu(k,918) * lu(k,1889) - lu(k,1920) = lu(k,1920) - lu(k,919) * lu(k,1889) - lu(k,1923) = lu(k,1923) - lu(k,920) * lu(k,1889) - lu(k,1924) = lu(k,1924) - lu(k,921) * lu(k,1889) - lu(k,1925) = lu(k,1925) - lu(k,922) * lu(k,1889) - lu(k,1927) = lu(k,1927) - lu(k,923) * lu(k,1889) - lu(k,2081) = lu(k,2081) - lu(k,915) * lu(k,2080) - lu(k,2083) = lu(k,2083) - lu(k,916) * lu(k,2080) - lu(k,2107) = lu(k,2107) - lu(k,917) * lu(k,2080) - lu(k,2108) = lu(k,2108) - lu(k,918) * lu(k,2080) - lu(k,2110) = lu(k,2110) - lu(k,919) * lu(k,2080) - lu(k,2113) = lu(k,2113) - lu(k,920) * lu(k,2080) - lu(k,2114) = lu(k,2114) - lu(k,921) * lu(k,2080) - lu(k,2115) = lu(k,2115) - lu(k,922) * lu(k,2080) - lu(k,2117) = lu(k,2117) - lu(k,923) * lu(k,2080) - lu(k,924) = 1._r8 / lu(k,924) - lu(k,925) = lu(k,925) * lu(k,924) - lu(k,926) = lu(k,926) * lu(k,924) - lu(k,927) = lu(k,927) * lu(k,924) - lu(k,928) = lu(k,928) * lu(k,924) - lu(k,929) = lu(k,929) * lu(k,924) - lu(k,957) = lu(k,957) - lu(k,925) * lu(k,948) - lu(k,959) = lu(k,959) - lu(k,926) * lu(k,948) - lu(k,962) = lu(k,962) - lu(k,927) * lu(k,948) - lu(k,964) = lu(k,964) - lu(k,928) * lu(k,948) - lu(k,970) = - lu(k,929) * lu(k,948) - lu(k,1007) = lu(k,1007) - lu(k,925) * lu(k,997) - lu(k,1009) = lu(k,1009) - lu(k,926) * lu(k,997) - lu(k,1012) = lu(k,1012) - lu(k,927) * lu(k,997) - lu(k,1014) = lu(k,1014) - lu(k,928) * lu(k,997) - lu(k,1020) = - lu(k,929) * lu(k,997) - lu(k,1063) = lu(k,1063) - lu(k,925) * lu(k,1060) - lu(k,1064) = lu(k,1064) - lu(k,926) * lu(k,1060) - lu(k,1066) = lu(k,1066) - lu(k,927) * lu(k,1060) - lu(k,1067) = - lu(k,928) * lu(k,1060) - lu(k,1070) = - lu(k,929) * lu(k,1060) - lu(k,1113) = - lu(k,925) * lu(k,1108) - lu(k,1114) = - lu(k,926) * lu(k,1108) - lu(k,1117) = lu(k,1117) - lu(k,927) * lu(k,1108) - lu(k,1118) = lu(k,1118) - lu(k,928) * lu(k,1108) - lu(k,1123) = - lu(k,929) * lu(k,1108) - lu(k,1153) = - lu(k,925) * lu(k,1149) - lu(k,1157) = lu(k,1157) - lu(k,926) * lu(k,1149) - lu(k,1160) = lu(k,1160) - lu(k,927) * lu(k,1149) - lu(k,1162) = - lu(k,928) * lu(k,1149) - lu(k,1167) = - lu(k,929) * lu(k,1149) - lu(k,1672) = lu(k,1672) - lu(k,925) * lu(k,1658) - lu(k,1685) = lu(k,1685) - lu(k,926) * lu(k,1658) - lu(k,1693) = lu(k,1693) - lu(k,927) * lu(k,1658) - lu(k,1696) = lu(k,1696) - lu(k,928) * lu(k,1658) - lu(k,1705) = lu(k,1705) - lu(k,929) * lu(k,1658) - lu(k,1756) = - lu(k,925) * lu(k,1742) - lu(k,1769) = lu(k,1769) - lu(k,926) * lu(k,1742) - lu(k,1776) = lu(k,1776) - lu(k,927) * lu(k,1742) - lu(k,1779) = lu(k,1779) - lu(k,928) * lu(k,1742) - lu(k,1788) = lu(k,1788) - lu(k,929) * lu(k,1742) - lu(k,1811) = lu(k,1811) - lu(k,925) * lu(k,1801) - lu(k,1822) = lu(k,1822) - lu(k,926) * lu(k,1801) - lu(k,1828) = lu(k,1828) - lu(k,927) * lu(k,1801) - lu(k,1831) = lu(k,1831) - lu(k,928) * lu(k,1801) - lu(k,1840) = lu(k,1840) - lu(k,929) * lu(k,1801) - lu(k,1901) = lu(k,1901) - lu(k,925) * lu(k,1890) - lu(k,1913) = lu(k,1913) - lu(k,926) * lu(k,1890) - lu(k,1920) = lu(k,1920) - lu(k,927) * lu(k,1890) - lu(k,1923) = lu(k,1923) - lu(k,928) * lu(k,1890) - lu(k,1932) = lu(k,1932) - lu(k,929) * lu(k,1890) - lu(k,2091) = lu(k,2091) - lu(k,925) * lu(k,2081) - lu(k,2102) = lu(k,2102) - lu(k,926) * lu(k,2081) - lu(k,2110) = lu(k,2110) - lu(k,927) * lu(k,2081) - lu(k,2113) = lu(k,2113) - lu(k,928) * lu(k,2081) - lu(k,2122) = lu(k,2122) - lu(k,929) * lu(k,2081) - lu(k,2231) = lu(k,2231) - lu(k,925) * lu(k,2218) - lu(k,2242) = lu(k,2242) - lu(k,926) * lu(k,2218) - lu(k,2249) = lu(k,2249) - lu(k,927) * lu(k,2218) - lu(k,2252) = lu(k,2252) - lu(k,928) * lu(k,2218) - lu(k,2261) = lu(k,2261) - lu(k,929) * lu(k,2218) - lu(k,931) = 1._r8 / lu(k,931) - lu(k,932) = lu(k,932) * lu(k,931) - lu(k,933) = lu(k,933) * lu(k,931) - lu(k,934) = lu(k,934) * lu(k,931) - lu(k,935) = lu(k,935) * lu(k,931) - lu(k,936) = lu(k,936) * lu(k,931) - lu(k,956) = lu(k,956) - lu(k,932) * lu(k,949) - lu(k,962) = lu(k,962) - lu(k,933) * lu(k,949) - lu(k,967) = lu(k,967) - lu(k,934) * lu(k,949) - lu(k,968) = lu(k,968) - lu(k,935) * lu(k,949) - lu(k,970) = lu(k,970) - lu(k,936) * lu(k,949) - lu(k,1006) = lu(k,1006) - lu(k,932) * lu(k,998) - lu(k,1012) = lu(k,1012) - lu(k,933) * lu(k,998) - lu(k,1017) = lu(k,1017) - lu(k,934) * lu(k,998) - lu(k,1018) = lu(k,1018) - lu(k,935) * lu(k,998) - lu(k,1020) = lu(k,1020) - lu(k,936) * lu(k,998) - lu(k,1028) = lu(k,1028) - lu(k,932) * lu(k,1025) - lu(k,1034) = lu(k,1034) - lu(k,933) * lu(k,1025) - lu(k,1039) = lu(k,1039) - lu(k,934) * lu(k,1025) - lu(k,1040) = lu(k,1040) - lu(k,935) * lu(k,1025) - lu(k,1042) = lu(k,1042) - lu(k,936) * lu(k,1025) - lu(k,1210) = lu(k,1210) - lu(k,932) * lu(k,1209) - lu(k,1217) = lu(k,1217) - lu(k,933) * lu(k,1209) - lu(k,1218) = lu(k,1218) - lu(k,934) * lu(k,1209) - lu(k,1219) = - lu(k,935) * lu(k,1209) - lu(k,1221) = lu(k,1221) - lu(k,936) * lu(k,1209) - lu(k,1330) = lu(k,1330) - lu(k,932) * lu(k,1327) - lu(k,1340) = lu(k,1340) - lu(k,933) * lu(k,1327) - lu(k,1345) = lu(k,1345) - lu(k,934) * lu(k,1327) - lu(k,1346) = lu(k,1346) - lu(k,935) * lu(k,1327) - lu(k,1348) = - lu(k,936) * lu(k,1327) - lu(k,1481) = lu(k,1481) - lu(k,932) * lu(k,1480) - lu(k,1489) = lu(k,1489) - lu(k,933) * lu(k,1480) - lu(k,1495) = lu(k,1495) - lu(k,934) * lu(k,1480) - lu(k,1498) = lu(k,1498) - lu(k,935) * lu(k,1480) - lu(k,1500) = lu(k,1500) - lu(k,936) * lu(k,1480) - lu(k,1671) = lu(k,1671) - lu(k,932) * lu(k,1659) - lu(k,1693) = lu(k,1693) - lu(k,933) * lu(k,1659) - lu(k,1700) = lu(k,1700) - lu(k,934) * lu(k,1659) - lu(k,1703) = lu(k,1703) - lu(k,935) * lu(k,1659) - lu(k,1705) = lu(k,1705) - lu(k,936) * lu(k,1659) - lu(k,1755) = lu(k,1755) - lu(k,932) * lu(k,1743) - lu(k,1776) = lu(k,1776) - lu(k,933) * lu(k,1743) - lu(k,1783) = lu(k,1783) - lu(k,934) * lu(k,1743) - lu(k,1786) = lu(k,1786) - lu(k,935) * lu(k,1743) - lu(k,1788) = lu(k,1788) - lu(k,936) * lu(k,1743) - lu(k,1900) = lu(k,1900) - lu(k,932) * lu(k,1891) - lu(k,1920) = lu(k,1920) - lu(k,933) * lu(k,1891) - lu(k,1927) = lu(k,1927) - lu(k,934) * lu(k,1891) - lu(k,1930) = lu(k,1930) - lu(k,935) * lu(k,1891) - lu(k,1932) = lu(k,1932) - lu(k,936) * lu(k,1891) - lu(k,1994) = lu(k,1994) - lu(k,932) * lu(k,1990) - lu(k,2003) = lu(k,2003) - lu(k,933) * lu(k,1990) - lu(k,2010) = lu(k,2010) - lu(k,934) * lu(k,1990) - lu(k,2013) = lu(k,2013) - lu(k,935) * lu(k,1990) - lu(k,2015) = lu(k,2015) - lu(k,936) * lu(k,1990) - lu(k,2090) = lu(k,2090) - lu(k,932) * lu(k,2082) - lu(k,2110) = lu(k,2110) - lu(k,933) * lu(k,2082) - lu(k,2117) = lu(k,2117) - lu(k,934) * lu(k,2082) - lu(k,2120) = lu(k,2120) - lu(k,935) * lu(k,2082) - lu(k,2122) = lu(k,2122) - lu(k,936) * lu(k,2082) - lu(k,2230) = lu(k,2230) - lu(k,932) * lu(k,2219) - lu(k,2249) = lu(k,2249) - lu(k,933) * lu(k,2219) - lu(k,2256) = lu(k,2256) - lu(k,934) * lu(k,2219) - lu(k,2259) = lu(k,2259) - lu(k,935) * lu(k,2219) - lu(k,2261) = lu(k,2261) - lu(k,936) * lu(k,2219) - end do - end subroutine lu_fac20 - subroutine lu_fac21( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,950) = 1._r8 / lu(k,950) - lu(k,951) = lu(k,951) * lu(k,950) - lu(k,952) = lu(k,952) * lu(k,950) - lu(k,953) = lu(k,953) * lu(k,950) - lu(k,954) = lu(k,954) * lu(k,950) - lu(k,955) = lu(k,955) * lu(k,950) - lu(k,956) = lu(k,956) * lu(k,950) - lu(k,957) = lu(k,957) * lu(k,950) - lu(k,958) = lu(k,958) * lu(k,950) - lu(k,959) = lu(k,959) * lu(k,950) - lu(k,960) = lu(k,960) * lu(k,950) - lu(k,961) = lu(k,961) * lu(k,950) - lu(k,962) = lu(k,962) * lu(k,950) - lu(k,963) = lu(k,963) * lu(k,950) - lu(k,964) = lu(k,964) * lu(k,950) - lu(k,965) = lu(k,965) * lu(k,950) - lu(k,966) = lu(k,966) * lu(k,950) - lu(k,967) = lu(k,967) * lu(k,950) - lu(k,968) = lu(k,968) * lu(k,950) - lu(k,969) = lu(k,969) * lu(k,950) - lu(k,970) = lu(k,970) * lu(k,950) - lu(k,1661) = lu(k,1661) - lu(k,951) * lu(k,1660) - lu(k,1662) = lu(k,1662) - lu(k,952) * lu(k,1660) - lu(k,1665) = lu(k,1665) - lu(k,953) * lu(k,1660) - lu(k,1666) = lu(k,1666) - lu(k,954) * lu(k,1660) - lu(k,1668) = lu(k,1668) - lu(k,955) * lu(k,1660) - lu(k,1671) = lu(k,1671) - lu(k,956) * lu(k,1660) - lu(k,1672) = lu(k,1672) - lu(k,957) * lu(k,1660) - lu(k,1678) = lu(k,1678) - lu(k,958) * lu(k,1660) - lu(k,1685) = lu(k,1685) - lu(k,959) * lu(k,1660) - lu(k,1690) = lu(k,1690) - lu(k,960) * lu(k,1660) - lu(k,1691) = lu(k,1691) - lu(k,961) * lu(k,1660) - lu(k,1693) = lu(k,1693) - lu(k,962) * lu(k,1660) - lu(k,1695) = lu(k,1695) - lu(k,963) * lu(k,1660) - lu(k,1696) = lu(k,1696) - lu(k,964) * lu(k,1660) - lu(k,1697) = lu(k,1697) - lu(k,965) * lu(k,1660) - lu(k,1698) = lu(k,1698) - lu(k,966) * lu(k,1660) - lu(k,1700) = lu(k,1700) - lu(k,967) * lu(k,1660) - lu(k,1703) = lu(k,1703) - lu(k,968) * lu(k,1660) - lu(k,1704) = lu(k,1704) - lu(k,969) * lu(k,1660) - lu(k,1705) = lu(k,1705) - lu(k,970) * lu(k,1660) - lu(k,1745) = lu(k,1745) - lu(k,951) * lu(k,1744) - lu(k,1746) = lu(k,1746) - lu(k,952) * lu(k,1744) - lu(k,1749) = lu(k,1749) - lu(k,953) * lu(k,1744) - lu(k,1750) = - lu(k,954) * lu(k,1744) - lu(k,1752) = lu(k,1752) - lu(k,955) * lu(k,1744) - lu(k,1755) = lu(k,1755) - lu(k,956) * lu(k,1744) - lu(k,1756) = lu(k,1756) - lu(k,957) * lu(k,1744) - lu(k,1762) = lu(k,1762) - lu(k,958) * lu(k,1744) - lu(k,1769) = lu(k,1769) - lu(k,959) * lu(k,1744) - lu(k,1773) = lu(k,1773) - lu(k,960) * lu(k,1744) - lu(k,1774) = lu(k,1774) - lu(k,961) * lu(k,1744) - lu(k,1776) = lu(k,1776) - lu(k,962) * lu(k,1744) - lu(k,1778) = lu(k,1778) - lu(k,963) * lu(k,1744) - lu(k,1779) = lu(k,1779) - lu(k,964) * lu(k,1744) - lu(k,1780) = lu(k,1780) - lu(k,965) * lu(k,1744) - lu(k,1781) = lu(k,1781) - lu(k,966) * lu(k,1744) - lu(k,1783) = lu(k,1783) - lu(k,967) * lu(k,1744) - lu(k,1786) = lu(k,1786) - lu(k,968) * lu(k,1744) - lu(k,1787) = lu(k,1787) - lu(k,969) * lu(k,1744) - lu(k,1788) = lu(k,1788) - lu(k,970) * lu(k,1744) - lu(k,2221) = lu(k,2221) - lu(k,951) * lu(k,2220) - lu(k,2222) = lu(k,2222) - lu(k,952) * lu(k,2220) - lu(k,2225) = - lu(k,953) * lu(k,2220) - lu(k,2226) = lu(k,2226) - lu(k,954) * lu(k,2220) - lu(k,2227) = lu(k,2227) - lu(k,955) * lu(k,2220) - lu(k,2230) = lu(k,2230) - lu(k,956) * lu(k,2220) - lu(k,2231) = lu(k,2231) - lu(k,957) * lu(k,2220) - lu(k,2235) = lu(k,2235) - lu(k,958) * lu(k,2220) - lu(k,2242) = lu(k,2242) - lu(k,959) * lu(k,2220) - lu(k,2246) = - lu(k,960) * lu(k,2220) - lu(k,2247) = lu(k,2247) - lu(k,961) * lu(k,2220) - lu(k,2249) = lu(k,2249) - lu(k,962) * lu(k,2220) - lu(k,2251) = lu(k,2251) - lu(k,963) * lu(k,2220) - lu(k,2252) = lu(k,2252) - lu(k,964) * lu(k,2220) - lu(k,2253) = lu(k,2253) - lu(k,965) * lu(k,2220) - lu(k,2254) = lu(k,2254) - lu(k,966) * lu(k,2220) - lu(k,2256) = lu(k,2256) - lu(k,967) * lu(k,2220) - lu(k,2259) = lu(k,2259) - lu(k,968) * lu(k,2220) - lu(k,2260) = lu(k,2260) - lu(k,969) * lu(k,2220) - lu(k,2261) = lu(k,2261) - lu(k,970) * lu(k,2220) - lu(k,971) = 1._r8 / lu(k,971) - lu(k,972) = lu(k,972) * lu(k,971) - lu(k,973) = lu(k,973) * lu(k,971) - lu(k,974) = lu(k,974) * lu(k,971) - lu(k,975) = lu(k,975) * lu(k,971) - lu(k,976) = lu(k,976) * lu(k,971) - lu(k,977) = lu(k,977) * lu(k,971) - lu(k,978) = lu(k,978) * lu(k,971) - lu(k,1002) = lu(k,1002) - lu(k,972) * lu(k,999) - lu(k,1003) = lu(k,1003) - lu(k,973) * lu(k,999) - lu(k,1005) = - lu(k,974) * lu(k,999) - lu(k,1006) = lu(k,1006) - lu(k,975) * lu(k,999) - lu(k,1012) = lu(k,1012) - lu(k,976) * lu(k,999) - lu(k,1013) = lu(k,1013) - lu(k,977) * lu(k,999) - lu(k,1017) = lu(k,1017) - lu(k,978) * lu(k,999) - lu(k,1047) = lu(k,1047) - lu(k,972) * lu(k,1046) - lu(k,1048) = - lu(k,973) * lu(k,1046) - lu(k,1049) = - lu(k,974) * lu(k,1046) - lu(k,1050) = - lu(k,975) * lu(k,1046) - lu(k,1053) = lu(k,1053) - lu(k,976) * lu(k,1046) - lu(k,1054) = lu(k,1054) - lu(k,977) * lu(k,1046) - lu(k,1058) = lu(k,1058) - lu(k,978) * lu(k,1046) - lu(k,1665) = lu(k,1665) - lu(k,972) * lu(k,1661) - lu(k,1666) = lu(k,1666) - lu(k,973) * lu(k,1661) - lu(k,1670) = lu(k,1670) - lu(k,974) * lu(k,1661) - lu(k,1671) = lu(k,1671) - lu(k,975) * lu(k,1661) - lu(k,1693) = lu(k,1693) - lu(k,976) * lu(k,1661) - lu(k,1695) = lu(k,1695) - lu(k,977) * lu(k,1661) - lu(k,1700) = lu(k,1700) - lu(k,978) * lu(k,1661) - lu(k,1749) = lu(k,1749) - lu(k,972) * lu(k,1745) - lu(k,1750) = lu(k,1750) - lu(k,973) * lu(k,1745) - lu(k,1754) = lu(k,1754) - lu(k,974) * lu(k,1745) - lu(k,1755) = lu(k,1755) - lu(k,975) * lu(k,1745) - lu(k,1776) = lu(k,1776) - lu(k,976) * lu(k,1745) - lu(k,1778) = lu(k,1778) - lu(k,977) * lu(k,1745) - lu(k,1783) = lu(k,1783) - lu(k,978) * lu(k,1745) - lu(k,1804) = lu(k,1804) - lu(k,972) * lu(k,1802) - lu(k,1805) = lu(k,1805) - lu(k,973) * lu(k,1802) - lu(k,1809) = lu(k,1809) - lu(k,974) * lu(k,1802) - lu(k,1810) = lu(k,1810) - lu(k,975) * lu(k,1802) - lu(k,1828) = lu(k,1828) - lu(k,976) * lu(k,1802) - lu(k,1830) = - lu(k,977) * lu(k,1802) - lu(k,1835) = lu(k,1835) - lu(k,978) * lu(k,1802) - lu(k,1894) = lu(k,1894) - lu(k,972) * lu(k,1892) - lu(k,1895) = lu(k,1895) - lu(k,973) * lu(k,1892) - lu(k,1899) = lu(k,1899) - lu(k,974) * lu(k,1892) - lu(k,1900) = lu(k,1900) - lu(k,975) * lu(k,1892) - lu(k,1920) = lu(k,1920) - lu(k,976) * lu(k,1892) - lu(k,1922) = lu(k,1922) - lu(k,977) * lu(k,1892) - lu(k,1927) = lu(k,1927) - lu(k,978) * lu(k,1892) - lu(k,2085) = lu(k,2085) - lu(k,972) * lu(k,2083) - lu(k,2086) = lu(k,2086) - lu(k,973) * lu(k,2083) - lu(k,2089) = lu(k,2089) - lu(k,974) * lu(k,2083) - lu(k,2090) = lu(k,2090) - lu(k,975) * lu(k,2083) - lu(k,2110) = lu(k,2110) - lu(k,976) * lu(k,2083) - lu(k,2112) = lu(k,2112) - lu(k,977) * lu(k,2083) - lu(k,2117) = lu(k,2117) - lu(k,978) * lu(k,2083) - lu(k,2225) = lu(k,2225) - lu(k,972) * lu(k,2221) - lu(k,2226) = lu(k,2226) - lu(k,973) * lu(k,2221) - lu(k,2229) = - lu(k,974) * lu(k,2221) - lu(k,2230) = lu(k,2230) - lu(k,975) * lu(k,2221) - lu(k,2249) = lu(k,2249) - lu(k,976) * lu(k,2221) - lu(k,2251) = lu(k,2251) - lu(k,977) * lu(k,2221) - lu(k,2256) = lu(k,2256) - lu(k,978) * lu(k,2221) - lu(k,981) = 1._r8 / lu(k,981) - lu(k,982) = lu(k,982) * lu(k,981) - lu(k,983) = lu(k,983) * lu(k,981) - lu(k,984) = lu(k,984) * lu(k,981) - lu(k,985) = lu(k,985) * lu(k,981) - lu(k,1006) = lu(k,1006) - lu(k,982) * lu(k,1000) - lu(k,1012) = lu(k,1012) - lu(k,983) * lu(k,1000) - lu(k,1017) = lu(k,1017) - lu(k,984) * lu(k,1000) - lu(k,1018) = lu(k,1018) - lu(k,985) * lu(k,1000) - lu(k,1076) = lu(k,1076) - lu(k,982) * lu(k,1074) - lu(k,1081) = lu(k,1081) - lu(k,983) * lu(k,1074) - lu(k,1085) = lu(k,1085) - lu(k,984) * lu(k,1074) - lu(k,1086) = - lu(k,985) * lu(k,1074) - lu(k,1099) = lu(k,1099) - lu(k,982) * lu(k,1097) - lu(k,1101) = lu(k,1101) - lu(k,983) * lu(k,1097) - lu(k,1102) = lu(k,1102) - lu(k,984) * lu(k,1097) - lu(k,1103) = lu(k,1103) - lu(k,985) * lu(k,1097) - lu(k,1173) = lu(k,1173) - lu(k,982) * lu(k,1171) - lu(k,1179) = lu(k,1179) - lu(k,983) * lu(k,1171) - lu(k,1184) = lu(k,1184) - lu(k,984) * lu(k,1171) - lu(k,1185) = lu(k,1185) - lu(k,985) * lu(k,1171) - lu(k,1284) = lu(k,1284) - lu(k,982) * lu(k,1282) - lu(k,1297) = lu(k,1297) - lu(k,983) * lu(k,1282) - lu(k,1302) = lu(k,1302) - lu(k,984) * lu(k,1282) - lu(k,1303) = - lu(k,985) * lu(k,1282) - lu(k,1377) = lu(k,1377) - lu(k,982) * lu(k,1374) - lu(k,1392) = lu(k,1392) - lu(k,983) * lu(k,1374) - lu(k,1397) = lu(k,1397) - lu(k,984) * lu(k,1374) - lu(k,1398) = lu(k,1398) - lu(k,985) * lu(k,1374) - lu(k,1671) = lu(k,1671) - lu(k,982) * lu(k,1662) - lu(k,1693) = lu(k,1693) - lu(k,983) * lu(k,1662) - lu(k,1700) = lu(k,1700) - lu(k,984) * lu(k,1662) - lu(k,1703) = lu(k,1703) - lu(k,985) * lu(k,1662) - lu(k,1755) = lu(k,1755) - lu(k,982) * lu(k,1746) - lu(k,1776) = lu(k,1776) - lu(k,983) * lu(k,1746) - lu(k,1783) = lu(k,1783) - lu(k,984) * lu(k,1746) - lu(k,1786) = lu(k,1786) - lu(k,985) * lu(k,1746) - lu(k,1810) = lu(k,1810) - lu(k,982) * lu(k,1803) - lu(k,1828) = lu(k,1828) - lu(k,983) * lu(k,1803) - lu(k,1835) = lu(k,1835) - lu(k,984) * lu(k,1803) - lu(k,1838) = lu(k,1838) - lu(k,985) * lu(k,1803) - lu(k,1900) = lu(k,1900) - lu(k,982) * lu(k,1893) - lu(k,1920) = lu(k,1920) - lu(k,983) * lu(k,1893) - lu(k,1927) = lu(k,1927) - lu(k,984) * lu(k,1893) - lu(k,1930) = lu(k,1930) - lu(k,985) * lu(k,1893) - lu(k,1952) = lu(k,1952) - lu(k,982) * lu(k,1951) - lu(k,1964) = lu(k,1964) - lu(k,983) * lu(k,1951) - lu(k,1971) = lu(k,1971) - lu(k,984) * lu(k,1951) - lu(k,1974) = lu(k,1974) - lu(k,985) * lu(k,1951) - lu(k,1994) = lu(k,1994) - lu(k,982) * lu(k,1991) - lu(k,2003) = lu(k,2003) - lu(k,983) * lu(k,1991) - lu(k,2010) = lu(k,2010) - lu(k,984) * lu(k,1991) - lu(k,2013) = lu(k,2013) - lu(k,985) * lu(k,1991) - lu(k,2090) = lu(k,2090) - lu(k,982) * lu(k,2084) - lu(k,2110) = lu(k,2110) - lu(k,983) * lu(k,2084) - lu(k,2117) = lu(k,2117) - lu(k,984) * lu(k,2084) - lu(k,2120) = lu(k,2120) - lu(k,985) * lu(k,2084) - lu(k,2230) = lu(k,2230) - lu(k,982) * lu(k,2222) - lu(k,2249) = lu(k,2249) - lu(k,983) * lu(k,2222) - lu(k,2256) = lu(k,2256) - lu(k,984) * lu(k,2222) - lu(k,2259) = lu(k,2259) - lu(k,985) * lu(k,2222) - lu(k,1001) = 1._r8 / lu(k,1001) - lu(k,1002) = lu(k,1002) * lu(k,1001) - lu(k,1003) = lu(k,1003) * lu(k,1001) - lu(k,1004) = lu(k,1004) * lu(k,1001) - lu(k,1005) = lu(k,1005) * lu(k,1001) - lu(k,1006) = lu(k,1006) * lu(k,1001) - lu(k,1007) = lu(k,1007) * lu(k,1001) - lu(k,1008) = lu(k,1008) * lu(k,1001) - lu(k,1009) = lu(k,1009) * lu(k,1001) - lu(k,1010) = lu(k,1010) * lu(k,1001) - lu(k,1011) = lu(k,1011) * lu(k,1001) - lu(k,1012) = lu(k,1012) * lu(k,1001) - lu(k,1013) = lu(k,1013) * lu(k,1001) - lu(k,1014) = lu(k,1014) * lu(k,1001) - lu(k,1015) = lu(k,1015) * lu(k,1001) - lu(k,1016) = lu(k,1016) * lu(k,1001) - lu(k,1017) = lu(k,1017) * lu(k,1001) - lu(k,1018) = lu(k,1018) * lu(k,1001) - lu(k,1019) = lu(k,1019) * lu(k,1001) - lu(k,1020) = lu(k,1020) * lu(k,1001) - lu(k,1665) = lu(k,1665) - lu(k,1002) * lu(k,1663) - lu(k,1666) = lu(k,1666) - lu(k,1003) * lu(k,1663) - lu(k,1668) = lu(k,1668) - lu(k,1004) * lu(k,1663) - lu(k,1670) = lu(k,1670) - lu(k,1005) * lu(k,1663) - lu(k,1671) = lu(k,1671) - lu(k,1006) * lu(k,1663) - lu(k,1672) = lu(k,1672) - lu(k,1007) * lu(k,1663) - lu(k,1678) = lu(k,1678) - lu(k,1008) * lu(k,1663) - lu(k,1685) = lu(k,1685) - lu(k,1009) * lu(k,1663) - lu(k,1690) = lu(k,1690) - lu(k,1010) * lu(k,1663) - lu(k,1691) = lu(k,1691) - lu(k,1011) * lu(k,1663) - lu(k,1693) = lu(k,1693) - lu(k,1012) * lu(k,1663) - lu(k,1695) = lu(k,1695) - lu(k,1013) * lu(k,1663) - lu(k,1696) = lu(k,1696) - lu(k,1014) * lu(k,1663) - lu(k,1697) = lu(k,1697) - lu(k,1015) * lu(k,1663) - lu(k,1698) = lu(k,1698) - lu(k,1016) * lu(k,1663) - lu(k,1700) = lu(k,1700) - lu(k,1017) * lu(k,1663) - lu(k,1703) = lu(k,1703) - lu(k,1018) * lu(k,1663) - lu(k,1704) = lu(k,1704) - lu(k,1019) * lu(k,1663) - lu(k,1705) = lu(k,1705) - lu(k,1020) * lu(k,1663) - lu(k,1749) = lu(k,1749) - lu(k,1002) * lu(k,1747) - lu(k,1750) = lu(k,1750) - lu(k,1003) * lu(k,1747) - lu(k,1752) = lu(k,1752) - lu(k,1004) * lu(k,1747) - lu(k,1754) = lu(k,1754) - lu(k,1005) * lu(k,1747) - lu(k,1755) = lu(k,1755) - lu(k,1006) * lu(k,1747) - lu(k,1756) = lu(k,1756) - lu(k,1007) * lu(k,1747) - lu(k,1762) = lu(k,1762) - lu(k,1008) * lu(k,1747) - lu(k,1769) = lu(k,1769) - lu(k,1009) * lu(k,1747) - lu(k,1773) = lu(k,1773) - lu(k,1010) * lu(k,1747) - lu(k,1774) = lu(k,1774) - lu(k,1011) * lu(k,1747) - lu(k,1776) = lu(k,1776) - lu(k,1012) * lu(k,1747) - lu(k,1778) = lu(k,1778) - lu(k,1013) * lu(k,1747) - lu(k,1779) = lu(k,1779) - lu(k,1014) * lu(k,1747) - lu(k,1780) = lu(k,1780) - lu(k,1015) * lu(k,1747) - lu(k,1781) = lu(k,1781) - lu(k,1016) * lu(k,1747) - lu(k,1783) = lu(k,1783) - lu(k,1017) * lu(k,1747) - lu(k,1786) = lu(k,1786) - lu(k,1018) * lu(k,1747) - lu(k,1787) = lu(k,1787) - lu(k,1019) * lu(k,1747) - lu(k,1788) = lu(k,1788) - lu(k,1020) * lu(k,1747) - lu(k,2225) = lu(k,2225) - lu(k,1002) * lu(k,2223) - lu(k,2226) = lu(k,2226) - lu(k,1003) * lu(k,2223) - lu(k,2227) = lu(k,2227) - lu(k,1004) * lu(k,2223) - lu(k,2229) = lu(k,2229) - lu(k,1005) * lu(k,2223) - lu(k,2230) = lu(k,2230) - lu(k,1006) * lu(k,2223) - lu(k,2231) = lu(k,2231) - lu(k,1007) * lu(k,2223) - lu(k,2235) = lu(k,2235) - lu(k,1008) * lu(k,2223) - lu(k,2242) = lu(k,2242) - lu(k,1009) * lu(k,2223) - lu(k,2246) = lu(k,2246) - lu(k,1010) * lu(k,2223) - lu(k,2247) = lu(k,2247) - lu(k,1011) * lu(k,2223) - lu(k,2249) = lu(k,2249) - lu(k,1012) * lu(k,2223) - lu(k,2251) = lu(k,2251) - lu(k,1013) * lu(k,2223) - lu(k,2252) = lu(k,2252) - lu(k,1014) * lu(k,2223) - lu(k,2253) = lu(k,2253) - lu(k,1015) * lu(k,2223) - lu(k,2254) = lu(k,2254) - lu(k,1016) * lu(k,2223) - lu(k,2256) = lu(k,2256) - lu(k,1017) * lu(k,2223) - lu(k,2259) = lu(k,2259) - lu(k,1018) * lu(k,2223) - lu(k,2260) = lu(k,2260) - lu(k,1019) * lu(k,2223) - lu(k,2261) = lu(k,2261) - lu(k,1020) * lu(k,2223) - end do - end subroutine lu_fac21 - subroutine lu_fac22( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1026) = 1._r8 / lu(k,1026) - lu(k,1027) = lu(k,1027) * lu(k,1026) - lu(k,1028) = lu(k,1028) * lu(k,1026) - lu(k,1029) = lu(k,1029) * lu(k,1026) - lu(k,1030) = lu(k,1030) * lu(k,1026) - lu(k,1031) = lu(k,1031) * lu(k,1026) - lu(k,1032) = lu(k,1032) * lu(k,1026) - lu(k,1033) = lu(k,1033) * lu(k,1026) - lu(k,1034) = lu(k,1034) * lu(k,1026) - lu(k,1035) = lu(k,1035) * lu(k,1026) - lu(k,1036) = lu(k,1036) * lu(k,1026) - lu(k,1037) = lu(k,1037) * lu(k,1026) - lu(k,1038) = lu(k,1038) * lu(k,1026) - lu(k,1039) = lu(k,1039) * lu(k,1026) - lu(k,1040) = lu(k,1040) * lu(k,1026) - lu(k,1041) = lu(k,1041) * lu(k,1026) - lu(k,1042) = lu(k,1042) * lu(k,1026) - lu(k,1329) = lu(k,1329) - lu(k,1027) * lu(k,1328) - lu(k,1330) = lu(k,1330) - lu(k,1028) * lu(k,1328) - lu(k,1331) = - lu(k,1029) * lu(k,1328) - lu(k,1332) = lu(k,1332) - lu(k,1030) * lu(k,1328) - lu(k,1336) = lu(k,1336) - lu(k,1031) * lu(k,1328) - lu(k,1337) = - lu(k,1032) * lu(k,1328) - lu(k,1339) = lu(k,1339) - lu(k,1033) * lu(k,1328) - lu(k,1340) = lu(k,1340) - lu(k,1034) * lu(k,1328) - lu(k,1341) = - lu(k,1035) * lu(k,1328) - lu(k,1342) = lu(k,1342) - lu(k,1036) * lu(k,1328) - lu(k,1343) = - lu(k,1037) * lu(k,1328) - lu(k,1344) = - lu(k,1038) * lu(k,1328) - lu(k,1345) = lu(k,1345) - lu(k,1039) * lu(k,1328) - lu(k,1346) = lu(k,1346) - lu(k,1040) * lu(k,1328) - lu(k,1347) = lu(k,1347) - lu(k,1041) * lu(k,1328) - lu(k,1348) = lu(k,1348) - lu(k,1042) * lu(k,1328) - lu(k,1668) = lu(k,1668) - lu(k,1027) * lu(k,1664) - lu(k,1671) = lu(k,1671) - lu(k,1028) * lu(k,1664) - lu(k,1673) = lu(k,1673) - lu(k,1029) * lu(k,1664) - lu(k,1678) = lu(k,1678) - lu(k,1030) * lu(k,1664) - lu(k,1685) = lu(k,1685) - lu(k,1031) * lu(k,1664) - lu(k,1688) = lu(k,1688) - lu(k,1032) * lu(k,1664) - lu(k,1691) = lu(k,1691) - lu(k,1033) * lu(k,1664) - lu(k,1693) = lu(k,1693) - lu(k,1034) * lu(k,1664) - lu(k,1695) = lu(k,1695) - lu(k,1035) * lu(k,1664) - lu(k,1696) = lu(k,1696) - lu(k,1036) * lu(k,1664) - lu(k,1697) = lu(k,1697) - lu(k,1037) * lu(k,1664) - lu(k,1698) = lu(k,1698) - lu(k,1038) * lu(k,1664) - lu(k,1700) = lu(k,1700) - lu(k,1039) * lu(k,1664) - lu(k,1703) = lu(k,1703) - lu(k,1040) * lu(k,1664) - lu(k,1704) = lu(k,1704) - lu(k,1041) * lu(k,1664) - lu(k,1705) = lu(k,1705) - lu(k,1042) * lu(k,1664) - lu(k,1752) = lu(k,1752) - lu(k,1027) * lu(k,1748) - lu(k,1755) = lu(k,1755) - lu(k,1028) * lu(k,1748) - lu(k,1757) = lu(k,1757) - lu(k,1029) * lu(k,1748) - lu(k,1762) = lu(k,1762) - lu(k,1030) * lu(k,1748) - lu(k,1769) = lu(k,1769) - lu(k,1031) * lu(k,1748) - lu(k,1771) = - lu(k,1032) * lu(k,1748) - lu(k,1774) = lu(k,1774) - lu(k,1033) * lu(k,1748) - lu(k,1776) = lu(k,1776) - lu(k,1034) * lu(k,1748) - lu(k,1778) = lu(k,1778) - lu(k,1035) * lu(k,1748) - lu(k,1779) = lu(k,1779) - lu(k,1036) * lu(k,1748) - lu(k,1780) = lu(k,1780) - lu(k,1037) * lu(k,1748) - lu(k,1781) = lu(k,1781) - lu(k,1038) * lu(k,1748) - lu(k,1783) = lu(k,1783) - lu(k,1039) * lu(k,1748) - lu(k,1786) = lu(k,1786) - lu(k,1040) * lu(k,1748) - lu(k,1787) = lu(k,1787) - lu(k,1041) * lu(k,1748) - lu(k,1788) = lu(k,1788) - lu(k,1042) * lu(k,1748) - lu(k,2227) = lu(k,2227) - lu(k,1027) * lu(k,2224) - lu(k,2230) = lu(k,2230) - lu(k,1028) * lu(k,2224) - lu(k,2232) = - lu(k,1029) * lu(k,2224) - lu(k,2235) = lu(k,2235) - lu(k,1030) * lu(k,2224) - lu(k,2242) = lu(k,2242) - lu(k,1031) * lu(k,2224) - lu(k,2244) = lu(k,2244) - lu(k,1032) * lu(k,2224) - lu(k,2247) = lu(k,2247) - lu(k,1033) * lu(k,2224) - lu(k,2249) = lu(k,2249) - lu(k,1034) * lu(k,2224) - lu(k,2251) = lu(k,2251) - lu(k,1035) * lu(k,2224) - lu(k,2252) = lu(k,2252) - lu(k,1036) * lu(k,2224) - lu(k,2253) = lu(k,2253) - lu(k,1037) * lu(k,2224) - lu(k,2254) = lu(k,2254) - lu(k,1038) * lu(k,2224) - lu(k,2256) = lu(k,2256) - lu(k,1039) * lu(k,2224) - lu(k,2259) = lu(k,2259) - lu(k,1040) * lu(k,2224) - lu(k,2260) = lu(k,2260) - lu(k,1041) * lu(k,2224) - lu(k,2261) = lu(k,2261) - lu(k,1042) * lu(k,2224) - lu(k,1047) = 1._r8 / lu(k,1047) - lu(k,1048) = lu(k,1048) * lu(k,1047) - lu(k,1049) = lu(k,1049) * lu(k,1047) - lu(k,1050) = lu(k,1050) * lu(k,1047) - lu(k,1051) = lu(k,1051) * lu(k,1047) - lu(k,1052) = lu(k,1052) * lu(k,1047) - lu(k,1053) = lu(k,1053) * lu(k,1047) - lu(k,1054) = lu(k,1054) * lu(k,1047) - lu(k,1055) = lu(k,1055) * lu(k,1047) - lu(k,1056) = lu(k,1056) * lu(k,1047) - lu(k,1057) = lu(k,1057) * lu(k,1047) - lu(k,1058) = lu(k,1058) * lu(k,1047) - lu(k,1666) = lu(k,1666) - lu(k,1048) * lu(k,1665) - lu(k,1670) = lu(k,1670) - lu(k,1049) * lu(k,1665) - lu(k,1671) = lu(k,1671) - lu(k,1050) * lu(k,1665) - lu(k,1690) = lu(k,1690) - lu(k,1051) * lu(k,1665) - lu(k,1691) = lu(k,1691) - lu(k,1052) * lu(k,1665) - lu(k,1693) = lu(k,1693) - lu(k,1053) * lu(k,1665) - lu(k,1695) = lu(k,1695) - lu(k,1054) * lu(k,1665) - lu(k,1696) = lu(k,1696) - lu(k,1055) * lu(k,1665) - lu(k,1697) = lu(k,1697) - lu(k,1056) * lu(k,1665) - lu(k,1698) = lu(k,1698) - lu(k,1057) * lu(k,1665) - lu(k,1700) = lu(k,1700) - lu(k,1058) * lu(k,1665) - lu(k,1750) = lu(k,1750) - lu(k,1048) * lu(k,1749) - lu(k,1754) = lu(k,1754) - lu(k,1049) * lu(k,1749) - lu(k,1755) = lu(k,1755) - lu(k,1050) * lu(k,1749) - lu(k,1773) = lu(k,1773) - lu(k,1051) * lu(k,1749) - lu(k,1774) = lu(k,1774) - lu(k,1052) * lu(k,1749) - lu(k,1776) = lu(k,1776) - lu(k,1053) * lu(k,1749) - lu(k,1778) = lu(k,1778) - lu(k,1054) * lu(k,1749) - lu(k,1779) = lu(k,1779) - lu(k,1055) * lu(k,1749) - lu(k,1780) = lu(k,1780) - lu(k,1056) * lu(k,1749) - lu(k,1781) = lu(k,1781) - lu(k,1057) * lu(k,1749) - lu(k,1783) = lu(k,1783) - lu(k,1058) * lu(k,1749) - lu(k,1805) = lu(k,1805) - lu(k,1048) * lu(k,1804) - lu(k,1809) = lu(k,1809) - lu(k,1049) * lu(k,1804) - lu(k,1810) = lu(k,1810) - lu(k,1050) * lu(k,1804) - lu(k,1825) = lu(k,1825) - lu(k,1051) * lu(k,1804) - lu(k,1826) = lu(k,1826) - lu(k,1052) * lu(k,1804) - lu(k,1828) = lu(k,1828) - lu(k,1053) * lu(k,1804) - lu(k,1830) = lu(k,1830) - lu(k,1054) * lu(k,1804) - lu(k,1831) = lu(k,1831) - lu(k,1055) * lu(k,1804) - lu(k,1832) = lu(k,1832) - lu(k,1056) * lu(k,1804) - lu(k,1833) = lu(k,1833) - lu(k,1057) * lu(k,1804) - lu(k,1835) = lu(k,1835) - lu(k,1058) * lu(k,1804) - lu(k,1895) = lu(k,1895) - lu(k,1048) * lu(k,1894) - lu(k,1899) = lu(k,1899) - lu(k,1049) * lu(k,1894) - lu(k,1900) = lu(k,1900) - lu(k,1050) * lu(k,1894) - lu(k,1917) = lu(k,1917) - lu(k,1051) * lu(k,1894) - lu(k,1918) = lu(k,1918) - lu(k,1052) * lu(k,1894) - lu(k,1920) = lu(k,1920) - lu(k,1053) * lu(k,1894) - lu(k,1922) = lu(k,1922) - lu(k,1054) * lu(k,1894) - lu(k,1923) = lu(k,1923) - lu(k,1055) * lu(k,1894) - lu(k,1924) = lu(k,1924) - lu(k,1056) * lu(k,1894) - lu(k,1925) = lu(k,1925) - lu(k,1057) * lu(k,1894) - lu(k,1927) = lu(k,1927) - lu(k,1058) * lu(k,1894) - lu(k,2086) = lu(k,2086) - lu(k,1048) * lu(k,2085) - lu(k,2089) = lu(k,2089) - lu(k,1049) * lu(k,2085) - lu(k,2090) = lu(k,2090) - lu(k,1050) * lu(k,2085) - lu(k,2107) = lu(k,2107) - lu(k,1051) * lu(k,2085) - lu(k,2108) = lu(k,2108) - lu(k,1052) * lu(k,2085) - lu(k,2110) = lu(k,2110) - lu(k,1053) * lu(k,2085) - lu(k,2112) = lu(k,2112) - lu(k,1054) * lu(k,2085) - lu(k,2113) = lu(k,2113) - lu(k,1055) * lu(k,2085) - lu(k,2114) = lu(k,2114) - lu(k,1056) * lu(k,2085) - lu(k,2115) = lu(k,2115) - lu(k,1057) * lu(k,2085) - lu(k,2117) = lu(k,2117) - lu(k,1058) * lu(k,2085) - lu(k,2226) = lu(k,2226) - lu(k,1048) * lu(k,2225) - lu(k,2229) = lu(k,2229) - lu(k,1049) * lu(k,2225) - lu(k,2230) = lu(k,2230) - lu(k,1050) * lu(k,2225) - lu(k,2246) = lu(k,2246) - lu(k,1051) * lu(k,2225) - lu(k,2247) = lu(k,2247) - lu(k,1052) * lu(k,2225) - lu(k,2249) = lu(k,2249) - lu(k,1053) * lu(k,2225) - lu(k,2251) = lu(k,2251) - lu(k,1054) * lu(k,2225) - lu(k,2252) = lu(k,2252) - lu(k,1055) * lu(k,2225) - lu(k,2253) = lu(k,2253) - lu(k,1056) * lu(k,2225) - lu(k,2254) = lu(k,2254) - lu(k,1057) * lu(k,2225) - lu(k,2256) = lu(k,2256) - lu(k,1058) * lu(k,2225) - lu(k,1061) = 1._r8 / lu(k,1061) - lu(k,1062) = lu(k,1062) * lu(k,1061) - lu(k,1063) = lu(k,1063) * lu(k,1061) - lu(k,1064) = lu(k,1064) * lu(k,1061) - lu(k,1065) = lu(k,1065) * lu(k,1061) - lu(k,1066) = lu(k,1066) * lu(k,1061) - lu(k,1067) = lu(k,1067) * lu(k,1061) - lu(k,1068) = lu(k,1068) * lu(k,1061) - lu(k,1069) = lu(k,1069) * lu(k,1061) - lu(k,1070) = lu(k,1070) * lu(k,1061) - lu(k,1112) = lu(k,1112) - lu(k,1062) * lu(k,1109) - lu(k,1113) = lu(k,1113) - lu(k,1063) * lu(k,1109) - lu(k,1114) = lu(k,1114) - lu(k,1064) * lu(k,1109) - lu(k,1116) = lu(k,1116) - lu(k,1065) * lu(k,1109) - lu(k,1117) = lu(k,1117) - lu(k,1066) * lu(k,1109) - lu(k,1118) = lu(k,1118) - lu(k,1067) * lu(k,1109) - lu(k,1121) = lu(k,1121) - lu(k,1068) * lu(k,1109) - lu(k,1122) = lu(k,1122) - lu(k,1069) * lu(k,1109) - lu(k,1123) = lu(k,1123) - lu(k,1070) * lu(k,1109) - lu(k,1671) = lu(k,1671) - lu(k,1062) * lu(k,1666) - lu(k,1672) = lu(k,1672) - lu(k,1063) * lu(k,1666) - lu(k,1685) = lu(k,1685) - lu(k,1064) * lu(k,1666) - lu(k,1691) = lu(k,1691) - lu(k,1065) * lu(k,1666) - lu(k,1693) = lu(k,1693) - lu(k,1066) * lu(k,1666) - lu(k,1696) = lu(k,1696) - lu(k,1067) * lu(k,1666) - lu(k,1700) = lu(k,1700) - lu(k,1068) * lu(k,1666) - lu(k,1703) = lu(k,1703) - lu(k,1069) * lu(k,1666) - lu(k,1705) = lu(k,1705) - lu(k,1070) * lu(k,1666) - lu(k,1755) = lu(k,1755) - lu(k,1062) * lu(k,1750) - lu(k,1756) = lu(k,1756) - lu(k,1063) * lu(k,1750) - lu(k,1769) = lu(k,1769) - lu(k,1064) * lu(k,1750) - lu(k,1774) = lu(k,1774) - lu(k,1065) * lu(k,1750) - lu(k,1776) = lu(k,1776) - lu(k,1066) * lu(k,1750) - lu(k,1779) = lu(k,1779) - lu(k,1067) * lu(k,1750) - lu(k,1783) = lu(k,1783) - lu(k,1068) * lu(k,1750) - lu(k,1786) = lu(k,1786) - lu(k,1069) * lu(k,1750) - lu(k,1788) = lu(k,1788) - lu(k,1070) * lu(k,1750) - lu(k,1810) = lu(k,1810) - lu(k,1062) * lu(k,1805) - lu(k,1811) = lu(k,1811) - lu(k,1063) * lu(k,1805) - lu(k,1822) = lu(k,1822) - lu(k,1064) * lu(k,1805) - lu(k,1826) = lu(k,1826) - lu(k,1065) * lu(k,1805) - lu(k,1828) = lu(k,1828) - lu(k,1066) * lu(k,1805) - lu(k,1831) = lu(k,1831) - lu(k,1067) * lu(k,1805) - lu(k,1835) = lu(k,1835) - lu(k,1068) * lu(k,1805) - lu(k,1838) = lu(k,1838) - lu(k,1069) * lu(k,1805) - lu(k,1840) = lu(k,1840) - lu(k,1070) * lu(k,1805) - lu(k,1900) = lu(k,1900) - lu(k,1062) * lu(k,1895) - lu(k,1901) = lu(k,1901) - lu(k,1063) * lu(k,1895) - lu(k,1913) = lu(k,1913) - lu(k,1064) * lu(k,1895) - lu(k,1918) = lu(k,1918) - lu(k,1065) * lu(k,1895) - lu(k,1920) = lu(k,1920) - lu(k,1066) * lu(k,1895) - lu(k,1923) = lu(k,1923) - lu(k,1067) * lu(k,1895) - lu(k,1927) = lu(k,1927) - lu(k,1068) * lu(k,1895) - lu(k,1930) = lu(k,1930) - lu(k,1069) * lu(k,1895) - lu(k,1932) = lu(k,1932) - lu(k,1070) * lu(k,1895) - lu(k,2090) = lu(k,2090) - lu(k,1062) * lu(k,2086) - lu(k,2091) = lu(k,2091) - lu(k,1063) * lu(k,2086) - lu(k,2102) = lu(k,2102) - lu(k,1064) * lu(k,2086) - lu(k,2108) = lu(k,2108) - lu(k,1065) * lu(k,2086) - lu(k,2110) = lu(k,2110) - lu(k,1066) * lu(k,2086) - lu(k,2113) = lu(k,2113) - lu(k,1067) * lu(k,2086) - lu(k,2117) = lu(k,2117) - lu(k,1068) * lu(k,2086) - lu(k,2120) = lu(k,2120) - lu(k,1069) * lu(k,2086) - lu(k,2122) = lu(k,2122) - lu(k,1070) * lu(k,2086) - lu(k,2230) = lu(k,2230) - lu(k,1062) * lu(k,2226) - lu(k,2231) = lu(k,2231) - lu(k,1063) * lu(k,2226) - lu(k,2242) = lu(k,2242) - lu(k,1064) * lu(k,2226) - lu(k,2247) = lu(k,2247) - lu(k,1065) * lu(k,2226) - lu(k,2249) = lu(k,2249) - lu(k,1066) * lu(k,2226) - lu(k,2252) = lu(k,2252) - lu(k,1067) * lu(k,2226) - lu(k,2256) = lu(k,2256) - lu(k,1068) * lu(k,2226) - lu(k,2259) = lu(k,2259) - lu(k,1069) * lu(k,2226) - lu(k,2261) = lu(k,2261) - lu(k,1070) * lu(k,2226) - lu(k,1075) = 1._r8 / lu(k,1075) - lu(k,1076) = lu(k,1076) * lu(k,1075) - lu(k,1077) = lu(k,1077) * lu(k,1075) - lu(k,1078) = lu(k,1078) * lu(k,1075) - lu(k,1079) = lu(k,1079) * lu(k,1075) - lu(k,1080) = lu(k,1080) * lu(k,1075) - lu(k,1081) = lu(k,1081) * lu(k,1075) - lu(k,1082) = lu(k,1082) * lu(k,1075) - lu(k,1083) = lu(k,1083) * lu(k,1075) - lu(k,1084) = lu(k,1084) * lu(k,1075) - lu(k,1085) = lu(k,1085) * lu(k,1075) - lu(k,1086) = lu(k,1086) * lu(k,1075) - lu(k,1193) = - lu(k,1076) * lu(k,1191) - lu(k,1197) = lu(k,1197) - lu(k,1077) * lu(k,1191) - lu(k,1199) = lu(k,1199) - lu(k,1078) * lu(k,1191) - lu(k,1200) = lu(k,1200) - lu(k,1079) * lu(k,1191) - lu(k,1201) = lu(k,1201) - lu(k,1080) * lu(k,1191) - lu(k,1202) = lu(k,1202) - lu(k,1081) * lu(k,1191) - lu(k,1204) = lu(k,1204) - lu(k,1082) * lu(k,1191) - lu(k,1205) = lu(k,1205) - lu(k,1083) * lu(k,1191) - lu(k,1206) = lu(k,1206) - lu(k,1084) * lu(k,1191) - lu(k,1207) = lu(k,1207) - lu(k,1085) * lu(k,1191) - lu(k,1208) = - lu(k,1086) * lu(k,1191) - lu(k,1377) = lu(k,1377) - lu(k,1076) * lu(k,1375) - lu(k,1382) = lu(k,1382) - lu(k,1077) * lu(k,1375) - lu(k,1388) = lu(k,1388) - lu(k,1078) * lu(k,1375) - lu(k,1390) = - lu(k,1079) * lu(k,1375) - lu(k,1391) = lu(k,1391) - lu(k,1080) * lu(k,1375) - lu(k,1392) = lu(k,1392) - lu(k,1081) * lu(k,1375) - lu(k,1394) = lu(k,1394) - lu(k,1082) * lu(k,1375) - lu(k,1395) = lu(k,1395) - lu(k,1083) * lu(k,1375) - lu(k,1396) = lu(k,1396) - lu(k,1084) * lu(k,1375) - lu(k,1397) = lu(k,1397) - lu(k,1085) * lu(k,1375) - lu(k,1398) = lu(k,1398) - lu(k,1086) * lu(k,1375) - lu(k,1671) = lu(k,1671) - lu(k,1076) * lu(k,1667) - lu(k,1678) = lu(k,1678) - lu(k,1077) * lu(k,1667) - lu(k,1685) = lu(k,1685) - lu(k,1078) * lu(k,1667) - lu(k,1690) = lu(k,1690) - lu(k,1079) * lu(k,1667) - lu(k,1691) = lu(k,1691) - lu(k,1080) * lu(k,1667) - lu(k,1693) = lu(k,1693) - lu(k,1081) * lu(k,1667) - lu(k,1696) = lu(k,1696) - lu(k,1082) * lu(k,1667) - lu(k,1697) = lu(k,1697) - lu(k,1083) * lu(k,1667) - lu(k,1698) = lu(k,1698) - lu(k,1084) * lu(k,1667) - lu(k,1700) = lu(k,1700) - lu(k,1085) * lu(k,1667) - lu(k,1703) = lu(k,1703) - lu(k,1086) * lu(k,1667) - lu(k,1755) = lu(k,1755) - lu(k,1076) * lu(k,1751) - lu(k,1762) = lu(k,1762) - lu(k,1077) * lu(k,1751) - lu(k,1769) = lu(k,1769) - lu(k,1078) * lu(k,1751) - lu(k,1773) = lu(k,1773) - lu(k,1079) * lu(k,1751) - lu(k,1774) = lu(k,1774) - lu(k,1080) * lu(k,1751) - lu(k,1776) = lu(k,1776) - lu(k,1081) * lu(k,1751) - lu(k,1779) = lu(k,1779) - lu(k,1082) * lu(k,1751) - lu(k,1780) = lu(k,1780) - lu(k,1083) * lu(k,1751) - lu(k,1781) = lu(k,1781) - lu(k,1084) * lu(k,1751) - lu(k,1783) = lu(k,1783) - lu(k,1085) * lu(k,1751) - lu(k,1786) = lu(k,1786) - lu(k,1086) * lu(k,1751) - lu(k,1810) = lu(k,1810) - lu(k,1076) * lu(k,1806) - lu(k,1816) = lu(k,1816) - lu(k,1077) * lu(k,1806) - lu(k,1822) = lu(k,1822) - lu(k,1078) * lu(k,1806) - lu(k,1825) = lu(k,1825) - lu(k,1079) * lu(k,1806) - lu(k,1826) = lu(k,1826) - lu(k,1080) * lu(k,1806) - lu(k,1828) = lu(k,1828) - lu(k,1081) * lu(k,1806) - lu(k,1831) = lu(k,1831) - lu(k,1082) * lu(k,1806) - lu(k,1832) = lu(k,1832) - lu(k,1083) * lu(k,1806) - lu(k,1833) = lu(k,1833) - lu(k,1084) * lu(k,1806) - lu(k,1835) = lu(k,1835) - lu(k,1085) * lu(k,1806) - lu(k,1838) = lu(k,1838) - lu(k,1086) * lu(k,1806) - lu(k,1900) = lu(k,1900) - lu(k,1076) * lu(k,1896) - lu(k,1907) = lu(k,1907) - lu(k,1077) * lu(k,1896) - lu(k,1913) = lu(k,1913) - lu(k,1078) * lu(k,1896) - lu(k,1917) = lu(k,1917) - lu(k,1079) * lu(k,1896) - lu(k,1918) = lu(k,1918) - lu(k,1080) * lu(k,1896) - lu(k,1920) = lu(k,1920) - lu(k,1081) * lu(k,1896) - lu(k,1923) = lu(k,1923) - lu(k,1082) * lu(k,1896) - lu(k,1924) = lu(k,1924) - lu(k,1083) * lu(k,1896) - lu(k,1925) = lu(k,1925) - lu(k,1084) * lu(k,1896) - lu(k,1927) = lu(k,1927) - lu(k,1085) * lu(k,1896) - lu(k,1930) = lu(k,1930) - lu(k,1086) * lu(k,1896) - end do - end subroutine lu_fac22 - subroutine lu_fac23( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1087) = 1._r8 / lu(k,1087) - lu(k,1088) = lu(k,1088) * lu(k,1087) - lu(k,1089) = lu(k,1089) * lu(k,1087) - lu(k,1090) = lu(k,1090) * lu(k,1087) - lu(k,1091) = lu(k,1091) * lu(k,1087) - lu(k,1092) = lu(k,1092) * lu(k,1087) - lu(k,1093) = lu(k,1093) * lu(k,1087) - lu(k,1094) = lu(k,1094) * lu(k,1087) - lu(k,1095) = lu(k,1095) * lu(k,1087) - lu(k,1152) = lu(k,1152) - lu(k,1088) * lu(k,1150) - lu(k,1157) = lu(k,1157) - lu(k,1089) * lu(k,1150) - lu(k,1158) = lu(k,1158) - lu(k,1090) * lu(k,1150) - lu(k,1160) = lu(k,1160) - lu(k,1091) * lu(k,1150) - lu(k,1161) = - lu(k,1092) * lu(k,1150) - lu(k,1162) = lu(k,1162) - lu(k,1093) * lu(k,1150) - lu(k,1165) = lu(k,1165) - lu(k,1094) * lu(k,1150) - lu(k,1167) = lu(k,1167) - lu(k,1095) * lu(k,1150) - lu(k,1330) = lu(k,1330) - lu(k,1088) * lu(k,1329) - lu(k,1336) = lu(k,1336) - lu(k,1089) * lu(k,1329) - lu(k,1338) = - lu(k,1090) * lu(k,1329) - lu(k,1340) = lu(k,1340) - lu(k,1091) * lu(k,1329) - lu(k,1341) = lu(k,1341) - lu(k,1092) * lu(k,1329) - lu(k,1342) = lu(k,1342) - lu(k,1093) * lu(k,1329) - lu(k,1345) = lu(k,1345) - lu(k,1094) * lu(k,1329) - lu(k,1348) = lu(k,1348) - lu(k,1095) * lu(k,1329) - lu(k,1671) = lu(k,1671) - lu(k,1088) * lu(k,1668) - lu(k,1685) = lu(k,1685) - lu(k,1089) * lu(k,1668) - lu(k,1690) = lu(k,1690) - lu(k,1090) * lu(k,1668) - lu(k,1693) = lu(k,1693) - lu(k,1091) * lu(k,1668) - lu(k,1695) = lu(k,1695) - lu(k,1092) * lu(k,1668) - lu(k,1696) = lu(k,1696) - lu(k,1093) * lu(k,1668) - lu(k,1700) = lu(k,1700) - lu(k,1094) * lu(k,1668) - lu(k,1705) = lu(k,1705) - lu(k,1095) * lu(k,1668) - lu(k,1755) = lu(k,1755) - lu(k,1088) * lu(k,1752) - lu(k,1769) = lu(k,1769) - lu(k,1089) * lu(k,1752) - lu(k,1773) = lu(k,1773) - lu(k,1090) * lu(k,1752) - lu(k,1776) = lu(k,1776) - lu(k,1091) * lu(k,1752) - lu(k,1778) = lu(k,1778) - lu(k,1092) * lu(k,1752) - lu(k,1779) = lu(k,1779) - lu(k,1093) * lu(k,1752) - lu(k,1783) = lu(k,1783) - lu(k,1094) * lu(k,1752) - lu(k,1788) = lu(k,1788) - lu(k,1095) * lu(k,1752) - lu(k,1810) = lu(k,1810) - lu(k,1088) * lu(k,1807) - lu(k,1822) = lu(k,1822) - lu(k,1089) * lu(k,1807) - lu(k,1825) = lu(k,1825) - lu(k,1090) * lu(k,1807) - lu(k,1828) = lu(k,1828) - lu(k,1091) * lu(k,1807) - lu(k,1830) = lu(k,1830) - lu(k,1092) * lu(k,1807) - lu(k,1831) = lu(k,1831) - lu(k,1093) * lu(k,1807) - lu(k,1835) = lu(k,1835) - lu(k,1094) * lu(k,1807) - lu(k,1840) = lu(k,1840) - lu(k,1095) * lu(k,1807) - lu(k,1900) = lu(k,1900) - lu(k,1088) * lu(k,1897) - lu(k,1913) = lu(k,1913) - lu(k,1089) * lu(k,1897) - lu(k,1917) = lu(k,1917) - lu(k,1090) * lu(k,1897) - lu(k,1920) = lu(k,1920) - lu(k,1091) * lu(k,1897) - lu(k,1922) = lu(k,1922) - lu(k,1092) * lu(k,1897) - lu(k,1923) = lu(k,1923) - lu(k,1093) * lu(k,1897) - lu(k,1927) = lu(k,1927) - lu(k,1094) * lu(k,1897) - lu(k,1932) = lu(k,1932) - lu(k,1095) * lu(k,1897) - lu(k,1994) = lu(k,1994) - lu(k,1088) * lu(k,1992) - lu(k,1995) = - lu(k,1089) * lu(k,1992) - lu(k,2000) = lu(k,2000) - lu(k,1090) * lu(k,1992) - lu(k,2003) = lu(k,2003) - lu(k,1091) * lu(k,1992) - lu(k,2005) = lu(k,2005) - lu(k,1092) * lu(k,1992) - lu(k,2006) = lu(k,2006) - lu(k,1093) * lu(k,1992) - lu(k,2010) = lu(k,2010) - lu(k,1094) * lu(k,1992) - lu(k,2015) = lu(k,2015) - lu(k,1095) * lu(k,1992) - lu(k,2090) = lu(k,2090) - lu(k,1088) * lu(k,2087) - lu(k,2102) = lu(k,2102) - lu(k,1089) * lu(k,2087) - lu(k,2107) = lu(k,2107) - lu(k,1090) * lu(k,2087) - lu(k,2110) = lu(k,2110) - lu(k,1091) * lu(k,2087) - lu(k,2112) = lu(k,2112) - lu(k,1092) * lu(k,2087) - lu(k,2113) = lu(k,2113) - lu(k,1093) * lu(k,2087) - lu(k,2117) = lu(k,2117) - lu(k,1094) * lu(k,2087) - lu(k,2122) = lu(k,2122) - lu(k,1095) * lu(k,2087) - lu(k,2230) = lu(k,2230) - lu(k,1088) * lu(k,2227) - lu(k,2242) = lu(k,2242) - lu(k,1089) * lu(k,2227) - lu(k,2246) = lu(k,2246) - lu(k,1090) * lu(k,2227) - lu(k,2249) = lu(k,2249) - lu(k,1091) * lu(k,2227) - lu(k,2251) = lu(k,2251) - lu(k,1092) * lu(k,2227) - lu(k,2252) = lu(k,2252) - lu(k,1093) * lu(k,2227) - lu(k,2256) = lu(k,2256) - lu(k,1094) * lu(k,2227) - lu(k,2261) = lu(k,2261) - lu(k,1095) * lu(k,2227) - lu(k,1098) = 1._r8 / lu(k,1098) - lu(k,1099) = lu(k,1099) * lu(k,1098) - lu(k,1100) = lu(k,1100) * lu(k,1098) - lu(k,1101) = lu(k,1101) * lu(k,1098) - lu(k,1102) = lu(k,1102) * lu(k,1098) - lu(k,1103) = lu(k,1103) * lu(k,1098) - lu(k,1112) = lu(k,1112) - lu(k,1099) * lu(k,1110) - lu(k,1116) = lu(k,1116) - lu(k,1100) * lu(k,1110) - lu(k,1117) = lu(k,1117) - lu(k,1101) * lu(k,1110) - lu(k,1121) = lu(k,1121) - lu(k,1102) * lu(k,1110) - lu(k,1122) = lu(k,1122) - lu(k,1103) * lu(k,1110) - lu(k,1152) = lu(k,1152) - lu(k,1099) * lu(k,1151) - lu(k,1159) = lu(k,1159) - lu(k,1100) * lu(k,1151) - lu(k,1160) = lu(k,1160) - lu(k,1101) * lu(k,1151) - lu(k,1165) = lu(k,1165) - lu(k,1102) * lu(k,1151) - lu(k,1166) = - lu(k,1103) * lu(k,1151) - lu(k,1173) = lu(k,1173) - lu(k,1099) * lu(k,1172) - lu(k,1178) = lu(k,1178) - lu(k,1100) * lu(k,1172) - lu(k,1179) = lu(k,1179) - lu(k,1101) * lu(k,1172) - lu(k,1184) = lu(k,1184) - lu(k,1102) * lu(k,1172) - lu(k,1185) = lu(k,1185) - lu(k,1103) * lu(k,1172) - lu(k,1193) = lu(k,1193) - lu(k,1099) * lu(k,1192) - lu(k,1201) = lu(k,1201) - lu(k,1100) * lu(k,1192) - lu(k,1202) = lu(k,1202) - lu(k,1101) * lu(k,1192) - lu(k,1207) = lu(k,1207) - lu(k,1102) * lu(k,1192) - lu(k,1208) = lu(k,1208) - lu(k,1103) * lu(k,1192) - lu(k,1252) = lu(k,1252) - lu(k,1099) * lu(k,1251) - lu(k,1264) = lu(k,1264) - lu(k,1100) * lu(k,1251) - lu(k,1265) = lu(k,1265) - lu(k,1101) * lu(k,1251) - lu(k,1270) = lu(k,1270) - lu(k,1102) * lu(k,1251) - lu(k,1271) = lu(k,1271) - lu(k,1103) * lu(k,1251) - lu(k,1284) = lu(k,1284) - lu(k,1099) * lu(k,1283) - lu(k,1296) = lu(k,1296) - lu(k,1100) * lu(k,1283) - lu(k,1297) = lu(k,1297) - lu(k,1101) * lu(k,1283) - lu(k,1302) = lu(k,1302) - lu(k,1102) * lu(k,1283) - lu(k,1303) = lu(k,1303) - lu(k,1103) * lu(k,1283) - lu(k,1309) = lu(k,1309) - lu(k,1099) * lu(k,1308) - lu(k,1317) = lu(k,1317) - lu(k,1100) * lu(k,1308) - lu(k,1318) = lu(k,1318) - lu(k,1101) * lu(k,1308) - lu(k,1323) = lu(k,1323) - lu(k,1102) * lu(k,1308) - lu(k,1324) = - lu(k,1103) * lu(k,1308) - lu(k,1377) = lu(k,1377) - lu(k,1099) * lu(k,1376) - lu(k,1391) = lu(k,1391) - lu(k,1100) * lu(k,1376) - lu(k,1392) = lu(k,1392) - lu(k,1101) * lu(k,1376) - lu(k,1397) = lu(k,1397) - lu(k,1102) * lu(k,1376) - lu(k,1398) = lu(k,1398) - lu(k,1103) * lu(k,1376) - lu(k,1671) = lu(k,1671) - lu(k,1099) * lu(k,1669) - lu(k,1691) = lu(k,1691) - lu(k,1100) * lu(k,1669) - lu(k,1693) = lu(k,1693) - lu(k,1101) * lu(k,1669) - lu(k,1700) = lu(k,1700) - lu(k,1102) * lu(k,1669) - lu(k,1703) = lu(k,1703) - lu(k,1103) * lu(k,1669) - lu(k,1755) = lu(k,1755) - lu(k,1099) * lu(k,1753) - lu(k,1774) = lu(k,1774) - lu(k,1100) * lu(k,1753) - lu(k,1776) = lu(k,1776) - lu(k,1101) * lu(k,1753) - lu(k,1783) = lu(k,1783) - lu(k,1102) * lu(k,1753) - lu(k,1786) = lu(k,1786) - lu(k,1103) * lu(k,1753) - lu(k,1810) = lu(k,1810) - lu(k,1099) * lu(k,1808) - lu(k,1826) = lu(k,1826) - lu(k,1100) * lu(k,1808) - lu(k,1828) = lu(k,1828) - lu(k,1101) * lu(k,1808) - lu(k,1835) = lu(k,1835) - lu(k,1102) * lu(k,1808) - lu(k,1838) = lu(k,1838) - lu(k,1103) * lu(k,1808) - lu(k,1900) = lu(k,1900) - lu(k,1099) * lu(k,1898) - lu(k,1918) = lu(k,1918) - lu(k,1100) * lu(k,1898) - lu(k,1920) = lu(k,1920) - lu(k,1101) * lu(k,1898) - lu(k,1927) = lu(k,1927) - lu(k,1102) * lu(k,1898) - lu(k,1930) = lu(k,1930) - lu(k,1103) * lu(k,1898) - lu(k,1994) = lu(k,1994) - lu(k,1099) * lu(k,1993) - lu(k,2001) = lu(k,2001) - lu(k,1100) * lu(k,1993) - lu(k,2003) = lu(k,2003) - lu(k,1101) * lu(k,1993) - lu(k,2010) = lu(k,2010) - lu(k,1102) * lu(k,1993) - lu(k,2013) = lu(k,2013) - lu(k,1103) * lu(k,1993) - lu(k,2090) = lu(k,2090) - lu(k,1099) * lu(k,2088) - lu(k,2108) = lu(k,2108) - lu(k,1100) * lu(k,2088) - lu(k,2110) = lu(k,2110) - lu(k,1101) * lu(k,2088) - lu(k,2117) = lu(k,2117) - lu(k,1102) * lu(k,2088) - lu(k,2120) = lu(k,2120) - lu(k,1103) * lu(k,2088) - lu(k,2230) = lu(k,2230) - lu(k,1099) * lu(k,2228) - lu(k,2247) = lu(k,2247) - lu(k,1100) * lu(k,2228) - lu(k,2249) = lu(k,2249) - lu(k,1101) * lu(k,2228) - lu(k,2256) = lu(k,2256) - lu(k,1102) * lu(k,2228) - lu(k,2259) = lu(k,2259) - lu(k,1103) * lu(k,2228) - lu(k,1111) = 1._r8 / lu(k,1111) - lu(k,1112) = lu(k,1112) * lu(k,1111) - lu(k,1113) = lu(k,1113) * lu(k,1111) - lu(k,1114) = lu(k,1114) * lu(k,1111) - lu(k,1115) = lu(k,1115) * lu(k,1111) - lu(k,1116) = lu(k,1116) * lu(k,1111) - lu(k,1117) = lu(k,1117) * lu(k,1111) - lu(k,1118) = lu(k,1118) * lu(k,1111) - lu(k,1119) = lu(k,1119) * lu(k,1111) - lu(k,1120) = lu(k,1120) * lu(k,1111) - lu(k,1121) = lu(k,1121) * lu(k,1111) - lu(k,1122) = lu(k,1122) * lu(k,1111) - lu(k,1123) = lu(k,1123) * lu(k,1111) - lu(k,1671) = lu(k,1671) - lu(k,1112) * lu(k,1670) - lu(k,1672) = lu(k,1672) - lu(k,1113) * lu(k,1670) - lu(k,1685) = lu(k,1685) - lu(k,1114) * lu(k,1670) - lu(k,1690) = lu(k,1690) - lu(k,1115) * lu(k,1670) - lu(k,1691) = lu(k,1691) - lu(k,1116) * lu(k,1670) - lu(k,1693) = lu(k,1693) - lu(k,1117) * lu(k,1670) - lu(k,1696) = lu(k,1696) - lu(k,1118) * lu(k,1670) - lu(k,1697) = lu(k,1697) - lu(k,1119) * lu(k,1670) - lu(k,1698) = lu(k,1698) - lu(k,1120) * lu(k,1670) - lu(k,1700) = lu(k,1700) - lu(k,1121) * lu(k,1670) - lu(k,1703) = lu(k,1703) - lu(k,1122) * lu(k,1670) - lu(k,1705) = lu(k,1705) - lu(k,1123) * lu(k,1670) - lu(k,1755) = lu(k,1755) - lu(k,1112) * lu(k,1754) - lu(k,1756) = lu(k,1756) - lu(k,1113) * lu(k,1754) - lu(k,1769) = lu(k,1769) - lu(k,1114) * lu(k,1754) - lu(k,1773) = lu(k,1773) - lu(k,1115) * lu(k,1754) - lu(k,1774) = lu(k,1774) - lu(k,1116) * lu(k,1754) - lu(k,1776) = lu(k,1776) - lu(k,1117) * lu(k,1754) - lu(k,1779) = lu(k,1779) - lu(k,1118) * lu(k,1754) - lu(k,1780) = lu(k,1780) - lu(k,1119) * lu(k,1754) - lu(k,1781) = lu(k,1781) - lu(k,1120) * lu(k,1754) - lu(k,1783) = lu(k,1783) - lu(k,1121) * lu(k,1754) - lu(k,1786) = lu(k,1786) - lu(k,1122) * lu(k,1754) - lu(k,1788) = lu(k,1788) - lu(k,1123) * lu(k,1754) - lu(k,1810) = lu(k,1810) - lu(k,1112) * lu(k,1809) - lu(k,1811) = lu(k,1811) - lu(k,1113) * lu(k,1809) - lu(k,1822) = lu(k,1822) - lu(k,1114) * lu(k,1809) - lu(k,1825) = lu(k,1825) - lu(k,1115) * lu(k,1809) - lu(k,1826) = lu(k,1826) - lu(k,1116) * lu(k,1809) - lu(k,1828) = lu(k,1828) - lu(k,1117) * lu(k,1809) - lu(k,1831) = lu(k,1831) - lu(k,1118) * lu(k,1809) - lu(k,1832) = lu(k,1832) - lu(k,1119) * lu(k,1809) - lu(k,1833) = lu(k,1833) - lu(k,1120) * lu(k,1809) - lu(k,1835) = lu(k,1835) - lu(k,1121) * lu(k,1809) - lu(k,1838) = lu(k,1838) - lu(k,1122) * lu(k,1809) - lu(k,1840) = lu(k,1840) - lu(k,1123) * lu(k,1809) - lu(k,1900) = lu(k,1900) - lu(k,1112) * lu(k,1899) - lu(k,1901) = lu(k,1901) - lu(k,1113) * lu(k,1899) - lu(k,1913) = lu(k,1913) - lu(k,1114) * lu(k,1899) - lu(k,1917) = lu(k,1917) - lu(k,1115) * lu(k,1899) - lu(k,1918) = lu(k,1918) - lu(k,1116) * lu(k,1899) - lu(k,1920) = lu(k,1920) - lu(k,1117) * lu(k,1899) - lu(k,1923) = lu(k,1923) - lu(k,1118) * lu(k,1899) - lu(k,1924) = lu(k,1924) - lu(k,1119) * lu(k,1899) - lu(k,1925) = lu(k,1925) - lu(k,1120) * lu(k,1899) - lu(k,1927) = lu(k,1927) - lu(k,1121) * lu(k,1899) - lu(k,1930) = lu(k,1930) - lu(k,1122) * lu(k,1899) - lu(k,1932) = lu(k,1932) - lu(k,1123) * lu(k,1899) - lu(k,2090) = lu(k,2090) - lu(k,1112) * lu(k,2089) - lu(k,2091) = lu(k,2091) - lu(k,1113) * lu(k,2089) - lu(k,2102) = lu(k,2102) - lu(k,1114) * lu(k,2089) - lu(k,2107) = lu(k,2107) - lu(k,1115) * lu(k,2089) - lu(k,2108) = lu(k,2108) - lu(k,1116) * lu(k,2089) - lu(k,2110) = lu(k,2110) - lu(k,1117) * lu(k,2089) - lu(k,2113) = lu(k,2113) - lu(k,1118) * lu(k,2089) - lu(k,2114) = lu(k,2114) - lu(k,1119) * lu(k,2089) - lu(k,2115) = lu(k,2115) - lu(k,1120) * lu(k,2089) - lu(k,2117) = lu(k,2117) - lu(k,1121) * lu(k,2089) - lu(k,2120) = lu(k,2120) - lu(k,1122) * lu(k,2089) - lu(k,2122) = lu(k,2122) - lu(k,1123) * lu(k,2089) - lu(k,2230) = lu(k,2230) - lu(k,1112) * lu(k,2229) - lu(k,2231) = lu(k,2231) - lu(k,1113) * lu(k,2229) - lu(k,2242) = lu(k,2242) - lu(k,1114) * lu(k,2229) - lu(k,2246) = lu(k,2246) - lu(k,1115) * lu(k,2229) - lu(k,2247) = lu(k,2247) - lu(k,1116) * lu(k,2229) - lu(k,2249) = lu(k,2249) - lu(k,1117) * lu(k,2229) - lu(k,2252) = lu(k,2252) - lu(k,1118) * lu(k,2229) - lu(k,2253) = lu(k,2253) - lu(k,1119) * lu(k,2229) - lu(k,2254) = lu(k,2254) - lu(k,1120) * lu(k,2229) - lu(k,2256) = lu(k,2256) - lu(k,1121) * lu(k,2229) - lu(k,2259) = lu(k,2259) - lu(k,1122) * lu(k,2229) - lu(k,2261) = lu(k,2261) - lu(k,1123) * lu(k,2229) - lu(k,1125) = 1._r8 / lu(k,1125) - lu(k,1126) = lu(k,1126) * lu(k,1125) - lu(k,1127) = lu(k,1127) * lu(k,1125) - lu(k,1128) = lu(k,1128) * lu(k,1125) - lu(k,1160) = lu(k,1160) - lu(k,1126) * lu(k,1152) - lu(k,1165) = lu(k,1165) - lu(k,1127) * lu(k,1152) - lu(k,1166) = lu(k,1166) - lu(k,1128) * lu(k,1152) - lu(k,1179) = lu(k,1179) - lu(k,1126) * lu(k,1173) - lu(k,1184) = lu(k,1184) - lu(k,1127) * lu(k,1173) - lu(k,1185) = lu(k,1185) - lu(k,1128) * lu(k,1173) - lu(k,1202) = lu(k,1202) - lu(k,1126) * lu(k,1193) - lu(k,1207) = lu(k,1207) - lu(k,1127) * lu(k,1193) - lu(k,1208) = lu(k,1208) - lu(k,1128) * lu(k,1193) - lu(k,1217) = lu(k,1217) - lu(k,1126) * lu(k,1210) - lu(k,1218) = lu(k,1218) - lu(k,1127) * lu(k,1210) - lu(k,1219) = lu(k,1219) - lu(k,1128) * lu(k,1210) - lu(k,1226) = lu(k,1226) - lu(k,1126) * lu(k,1222) - lu(k,1228) = lu(k,1228) - lu(k,1127) * lu(k,1222) - lu(k,1229) = - lu(k,1128) * lu(k,1222) - lu(k,1265) = lu(k,1265) - lu(k,1126) * lu(k,1252) - lu(k,1270) = lu(k,1270) - lu(k,1127) * lu(k,1252) - lu(k,1271) = lu(k,1271) - lu(k,1128) * lu(k,1252) - lu(k,1297) = lu(k,1297) - lu(k,1126) * lu(k,1284) - lu(k,1302) = lu(k,1302) - lu(k,1127) * lu(k,1284) - lu(k,1303) = lu(k,1303) - lu(k,1128) * lu(k,1284) - lu(k,1318) = lu(k,1318) - lu(k,1126) * lu(k,1309) - lu(k,1323) = lu(k,1323) - lu(k,1127) * lu(k,1309) - lu(k,1324) = lu(k,1324) - lu(k,1128) * lu(k,1309) - lu(k,1340) = lu(k,1340) - lu(k,1126) * lu(k,1330) - lu(k,1345) = lu(k,1345) - lu(k,1127) * lu(k,1330) - lu(k,1346) = lu(k,1346) - lu(k,1128) * lu(k,1330) - lu(k,1360) = lu(k,1360) - lu(k,1126) * lu(k,1353) - lu(k,1365) = lu(k,1365) - lu(k,1127) * lu(k,1353) - lu(k,1366) = lu(k,1366) - lu(k,1128) * lu(k,1353) - lu(k,1392) = lu(k,1392) - lu(k,1126) * lu(k,1377) - lu(k,1397) = lu(k,1397) - lu(k,1127) * lu(k,1377) - lu(k,1398) = lu(k,1398) - lu(k,1128) * lu(k,1377) - lu(k,1421) = lu(k,1421) - lu(k,1126) * lu(k,1416) - lu(k,1422) = lu(k,1422) - lu(k,1127) * lu(k,1416) - lu(k,1424) = lu(k,1424) - lu(k,1128) * lu(k,1416) - lu(k,1437) = lu(k,1437) - lu(k,1126) * lu(k,1430) - lu(k,1441) = lu(k,1441) - lu(k,1127) * lu(k,1430) - lu(k,1443) = lu(k,1443) - lu(k,1128) * lu(k,1430) - lu(k,1489) = lu(k,1489) - lu(k,1126) * lu(k,1481) - lu(k,1495) = lu(k,1495) - lu(k,1127) * lu(k,1481) - lu(k,1498) = lu(k,1498) - lu(k,1128) * lu(k,1481) - lu(k,1693) = lu(k,1693) - lu(k,1126) * lu(k,1671) - lu(k,1700) = lu(k,1700) - lu(k,1127) * lu(k,1671) - lu(k,1703) = lu(k,1703) - lu(k,1128) * lu(k,1671) - lu(k,1776) = lu(k,1776) - lu(k,1126) * lu(k,1755) - lu(k,1783) = lu(k,1783) - lu(k,1127) * lu(k,1755) - lu(k,1786) = lu(k,1786) - lu(k,1128) * lu(k,1755) - lu(k,1828) = lu(k,1828) - lu(k,1126) * lu(k,1810) - lu(k,1835) = lu(k,1835) - lu(k,1127) * lu(k,1810) - lu(k,1838) = lu(k,1838) - lu(k,1128) * lu(k,1810) - lu(k,1920) = lu(k,1920) - lu(k,1126) * lu(k,1900) - lu(k,1927) = lu(k,1927) - lu(k,1127) * lu(k,1900) - lu(k,1930) = lu(k,1930) - lu(k,1128) * lu(k,1900) - lu(k,1964) = lu(k,1964) - lu(k,1126) * lu(k,1952) - lu(k,1971) = lu(k,1971) - lu(k,1127) * lu(k,1952) - lu(k,1974) = lu(k,1974) - lu(k,1128) * lu(k,1952) - lu(k,2003) = lu(k,2003) - lu(k,1126) * lu(k,1994) - lu(k,2010) = lu(k,2010) - lu(k,1127) * lu(k,1994) - lu(k,2013) = lu(k,2013) - lu(k,1128) * lu(k,1994) - lu(k,2110) = lu(k,2110) - lu(k,1126) * lu(k,2090) - lu(k,2117) = lu(k,2117) - lu(k,1127) * lu(k,2090) - lu(k,2120) = lu(k,2120) - lu(k,1128) * lu(k,2090) - lu(k,2188) = lu(k,2188) - lu(k,1126) * lu(k,2179) - lu(k,2195) = lu(k,2195) - lu(k,1127) * lu(k,2179) - lu(k,2198) = lu(k,2198) - lu(k,1128) * lu(k,2179) - lu(k,2249) = lu(k,2249) - lu(k,1126) * lu(k,2230) - lu(k,2256) = lu(k,2256) - lu(k,1127) * lu(k,2230) - lu(k,2259) = lu(k,2259) - lu(k,1128) * lu(k,2230) - lu(k,1131) = 1._r8 / lu(k,1131) - lu(k,1132) = lu(k,1132) * lu(k,1131) - lu(k,1133) = lu(k,1133) * lu(k,1131) - lu(k,1134) = lu(k,1134) * lu(k,1131) - lu(k,1135) = lu(k,1135) * lu(k,1131) - lu(k,1136) = lu(k,1136) * lu(k,1131) - lu(k,1137) = lu(k,1137) * lu(k,1131) - lu(k,1138) = lu(k,1138) * lu(k,1131) - lu(k,1139) = lu(k,1139) * lu(k,1131) - lu(k,1140) = lu(k,1140) * lu(k,1131) - lu(k,1141) = lu(k,1141) * lu(k,1131) - lu(k,1154) = lu(k,1154) - lu(k,1132) * lu(k,1153) - lu(k,1156) = - lu(k,1133) * lu(k,1153) - lu(k,1157) = lu(k,1157) - lu(k,1134) * lu(k,1153) - lu(k,1159) = lu(k,1159) - lu(k,1135) * lu(k,1153) - lu(k,1160) = lu(k,1160) - lu(k,1136) * lu(k,1153) - lu(k,1162) = lu(k,1162) - lu(k,1137) * lu(k,1153) - lu(k,1163) = - lu(k,1138) * lu(k,1153) - lu(k,1164) = lu(k,1164) - lu(k,1139) * lu(k,1153) - lu(k,1165) = lu(k,1165) - lu(k,1140) * lu(k,1153) - lu(k,1167) = lu(k,1167) - lu(k,1141) * lu(k,1153) - lu(k,1673) = lu(k,1673) - lu(k,1132) * lu(k,1672) - lu(k,1678) = lu(k,1678) - lu(k,1133) * lu(k,1672) - lu(k,1685) = lu(k,1685) - lu(k,1134) * lu(k,1672) - lu(k,1691) = lu(k,1691) - lu(k,1135) * lu(k,1672) - lu(k,1693) = lu(k,1693) - lu(k,1136) * lu(k,1672) - lu(k,1696) = lu(k,1696) - lu(k,1137) * lu(k,1672) - lu(k,1697) = lu(k,1697) - lu(k,1138) * lu(k,1672) - lu(k,1698) = lu(k,1698) - lu(k,1139) * lu(k,1672) - lu(k,1700) = lu(k,1700) - lu(k,1140) * lu(k,1672) - lu(k,1705) = lu(k,1705) - lu(k,1141) * lu(k,1672) - lu(k,1757) = lu(k,1757) - lu(k,1132) * lu(k,1756) - lu(k,1762) = lu(k,1762) - lu(k,1133) * lu(k,1756) - lu(k,1769) = lu(k,1769) - lu(k,1134) * lu(k,1756) - lu(k,1774) = lu(k,1774) - lu(k,1135) * lu(k,1756) - lu(k,1776) = lu(k,1776) - lu(k,1136) * lu(k,1756) - lu(k,1779) = lu(k,1779) - lu(k,1137) * lu(k,1756) - lu(k,1780) = lu(k,1780) - lu(k,1138) * lu(k,1756) - lu(k,1781) = lu(k,1781) - lu(k,1139) * lu(k,1756) - lu(k,1783) = lu(k,1783) - lu(k,1140) * lu(k,1756) - lu(k,1788) = lu(k,1788) - lu(k,1141) * lu(k,1756) - lu(k,1812) = lu(k,1812) - lu(k,1132) * lu(k,1811) - lu(k,1816) = lu(k,1816) - lu(k,1133) * lu(k,1811) - lu(k,1822) = lu(k,1822) - lu(k,1134) * lu(k,1811) - lu(k,1826) = lu(k,1826) - lu(k,1135) * lu(k,1811) - lu(k,1828) = lu(k,1828) - lu(k,1136) * lu(k,1811) - lu(k,1831) = lu(k,1831) - lu(k,1137) * lu(k,1811) - lu(k,1832) = lu(k,1832) - lu(k,1138) * lu(k,1811) - lu(k,1833) = lu(k,1833) - lu(k,1139) * lu(k,1811) - lu(k,1835) = lu(k,1835) - lu(k,1140) * lu(k,1811) - lu(k,1840) = lu(k,1840) - lu(k,1141) * lu(k,1811) - lu(k,1902) = lu(k,1902) - lu(k,1132) * lu(k,1901) - lu(k,1907) = lu(k,1907) - lu(k,1133) * lu(k,1901) - lu(k,1913) = lu(k,1913) - lu(k,1134) * lu(k,1901) - lu(k,1918) = lu(k,1918) - lu(k,1135) * lu(k,1901) - lu(k,1920) = lu(k,1920) - lu(k,1136) * lu(k,1901) - lu(k,1923) = lu(k,1923) - lu(k,1137) * lu(k,1901) - lu(k,1924) = lu(k,1924) - lu(k,1138) * lu(k,1901) - lu(k,1925) = lu(k,1925) - lu(k,1139) * lu(k,1901) - lu(k,1927) = lu(k,1927) - lu(k,1140) * lu(k,1901) - lu(k,1932) = lu(k,1932) - lu(k,1141) * lu(k,1901) - lu(k,2092) = lu(k,2092) - lu(k,1132) * lu(k,2091) - lu(k,2096) = lu(k,2096) - lu(k,1133) * lu(k,2091) - lu(k,2102) = lu(k,2102) - lu(k,1134) * lu(k,2091) - lu(k,2108) = lu(k,2108) - lu(k,1135) * lu(k,2091) - lu(k,2110) = lu(k,2110) - lu(k,1136) * lu(k,2091) - lu(k,2113) = lu(k,2113) - lu(k,1137) * lu(k,2091) - lu(k,2114) = lu(k,2114) - lu(k,1138) * lu(k,2091) - lu(k,2115) = lu(k,2115) - lu(k,1139) * lu(k,2091) - lu(k,2117) = lu(k,2117) - lu(k,1140) * lu(k,2091) - lu(k,2122) = lu(k,2122) - lu(k,1141) * lu(k,2091) - lu(k,2232) = lu(k,2232) - lu(k,1132) * lu(k,2231) - lu(k,2235) = lu(k,2235) - lu(k,1133) * lu(k,2231) - lu(k,2242) = lu(k,2242) - lu(k,1134) * lu(k,2231) - lu(k,2247) = lu(k,2247) - lu(k,1135) * lu(k,2231) - lu(k,2249) = lu(k,2249) - lu(k,1136) * lu(k,2231) - lu(k,2252) = lu(k,2252) - lu(k,1137) * lu(k,2231) - lu(k,2253) = lu(k,2253) - lu(k,1138) * lu(k,2231) - lu(k,2254) = lu(k,2254) - lu(k,1139) * lu(k,2231) - lu(k,2256) = lu(k,2256) - lu(k,1140) * lu(k,2231) - lu(k,2261) = lu(k,2261) - lu(k,1141) * lu(k,2231) - end do - end subroutine lu_fac23 - subroutine lu_fac24( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1142) = 1._r8 / lu(k,1142) - lu(k,1143) = lu(k,1143) * lu(k,1142) - lu(k,1144) = lu(k,1144) * lu(k,1142) - lu(k,1145) = lu(k,1145) * lu(k,1142) - lu(k,1146) = lu(k,1146) * lu(k,1142) - lu(k,1147) = lu(k,1147) * lu(k,1142) - lu(k,1156) = lu(k,1156) - lu(k,1143) * lu(k,1154) - lu(k,1157) = lu(k,1157) - lu(k,1144) * lu(k,1154) - lu(k,1159) = lu(k,1159) - lu(k,1145) * lu(k,1154) - lu(k,1160) = lu(k,1160) - lu(k,1146) * lu(k,1154) - lu(k,1165) = lu(k,1165) - lu(k,1147) * lu(k,1154) - lu(k,1176) = lu(k,1176) - lu(k,1143) * lu(k,1174) - lu(k,1177) = lu(k,1177) - lu(k,1144) * lu(k,1174) - lu(k,1178) = lu(k,1178) - lu(k,1145) * lu(k,1174) - lu(k,1179) = lu(k,1179) - lu(k,1146) * lu(k,1174) - lu(k,1184) = lu(k,1184) - lu(k,1147) * lu(k,1174) - lu(k,1257) = - lu(k,1143) * lu(k,1253) - lu(k,1262) = lu(k,1262) - lu(k,1144) * lu(k,1253) - lu(k,1264) = lu(k,1264) - lu(k,1145) * lu(k,1253) - lu(k,1265) = lu(k,1265) - lu(k,1146) * lu(k,1253) - lu(k,1270) = lu(k,1270) - lu(k,1147) * lu(k,1253) - lu(k,1289) = lu(k,1289) - lu(k,1143) * lu(k,1285) - lu(k,1294) = lu(k,1294) - lu(k,1144) * lu(k,1285) - lu(k,1296) = lu(k,1296) - lu(k,1145) * lu(k,1285) - lu(k,1297) = lu(k,1297) - lu(k,1146) * lu(k,1285) - lu(k,1302) = lu(k,1302) - lu(k,1147) * lu(k,1285) - lu(k,1312) = lu(k,1312) - lu(k,1143) * lu(k,1310) - lu(k,1315) = lu(k,1315) - lu(k,1144) * lu(k,1310) - lu(k,1317) = lu(k,1317) - lu(k,1145) * lu(k,1310) - lu(k,1318) = lu(k,1318) - lu(k,1146) * lu(k,1310) - lu(k,1323) = lu(k,1323) - lu(k,1147) * lu(k,1310) - lu(k,1332) = lu(k,1332) - lu(k,1143) * lu(k,1331) - lu(k,1336) = lu(k,1336) - lu(k,1144) * lu(k,1331) - lu(k,1339) = lu(k,1339) - lu(k,1145) * lu(k,1331) - lu(k,1340) = lu(k,1340) - lu(k,1146) * lu(k,1331) - lu(k,1345) = lu(k,1345) - lu(k,1147) * lu(k,1331) - lu(k,1355) = - lu(k,1143) * lu(k,1354) - lu(k,1357) = lu(k,1357) - lu(k,1144) * lu(k,1354) - lu(k,1359) = lu(k,1359) - lu(k,1145) * lu(k,1354) - lu(k,1360) = lu(k,1360) - lu(k,1146) * lu(k,1354) - lu(k,1365) = lu(k,1365) - lu(k,1147) * lu(k,1354) - lu(k,1382) = lu(k,1382) - lu(k,1143) * lu(k,1378) - lu(k,1388) = lu(k,1388) - lu(k,1144) * lu(k,1378) - lu(k,1391) = lu(k,1391) - lu(k,1145) * lu(k,1378) - lu(k,1392) = lu(k,1392) - lu(k,1146) * lu(k,1378) - lu(k,1397) = lu(k,1397) - lu(k,1147) * lu(k,1378) - lu(k,1678) = lu(k,1678) - lu(k,1143) * lu(k,1673) - lu(k,1685) = lu(k,1685) - lu(k,1144) * lu(k,1673) - lu(k,1691) = lu(k,1691) - lu(k,1145) * lu(k,1673) - lu(k,1693) = lu(k,1693) - lu(k,1146) * lu(k,1673) - lu(k,1700) = lu(k,1700) - lu(k,1147) * lu(k,1673) - lu(k,1762) = lu(k,1762) - lu(k,1143) * lu(k,1757) - lu(k,1769) = lu(k,1769) - lu(k,1144) * lu(k,1757) - lu(k,1774) = lu(k,1774) - lu(k,1145) * lu(k,1757) - lu(k,1776) = lu(k,1776) - lu(k,1146) * lu(k,1757) - lu(k,1783) = lu(k,1783) - lu(k,1147) * lu(k,1757) - lu(k,1816) = lu(k,1816) - lu(k,1143) * lu(k,1812) - lu(k,1822) = lu(k,1822) - lu(k,1144) * lu(k,1812) - lu(k,1826) = lu(k,1826) - lu(k,1145) * lu(k,1812) - lu(k,1828) = lu(k,1828) - lu(k,1146) * lu(k,1812) - lu(k,1835) = lu(k,1835) - lu(k,1147) * lu(k,1812) - lu(k,1907) = lu(k,1907) - lu(k,1143) * lu(k,1902) - lu(k,1913) = lu(k,1913) - lu(k,1144) * lu(k,1902) - lu(k,1918) = lu(k,1918) - lu(k,1145) * lu(k,1902) - lu(k,1920) = lu(k,1920) - lu(k,1146) * lu(k,1902) - lu(k,1927) = lu(k,1927) - lu(k,1147) * lu(k,1902) - lu(k,1954) = lu(k,1954) - lu(k,1143) * lu(k,1953) - lu(k,1957) = lu(k,1957) - lu(k,1144) * lu(k,1953) - lu(k,1962) = lu(k,1962) - lu(k,1145) * lu(k,1953) - lu(k,1964) = lu(k,1964) - lu(k,1146) * lu(k,1953) - lu(k,1971) = lu(k,1971) - lu(k,1147) * lu(k,1953) - lu(k,2096) = lu(k,2096) - lu(k,1143) * lu(k,2092) - lu(k,2102) = lu(k,2102) - lu(k,1144) * lu(k,2092) - lu(k,2108) = lu(k,2108) - lu(k,1145) * lu(k,2092) - lu(k,2110) = lu(k,2110) - lu(k,1146) * lu(k,2092) - lu(k,2117) = lu(k,2117) - lu(k,1147) * lu(k,2092) - lu(k,2235) = lu(k,2235) - lu(k,1143) * lu(k,2232) - lu(k,2242) = lu(k,2242) - lu(k,1144) * lu(k,2232) - lu(k,2247) = lu(k,2247) - lu(k,1145) * lu(k,2232) - lu(k,2249) = lu(k,2249) - lu(k,1146) * lu(k,2232) - lu(k,2256) = lu(k,2256) - lu(k,1147) * lu(k,2232) - lu(k,1155) = 1._r8 / lu(k,1155) - lu(k,1156) = lu(k,1156) * lu(k,1155) - lu(k,1157) = lu(k,1157) * lu(k,1155) - lu(k,1158) = lu(k,1158) * lu(k,1155) - lu(k,1159) = lu(k,1159) * lu(k,1155) - lu(k,1160) = lu(k,1160) * lu(k,1155) - lu(k,1161) = lu(k,1161) * lu(k,1155) - lu(k,1162) = lu(k,1162) * lu(k,1155) - lu(k,1163) = lu(k,1163) * lu(k,1155) - lu(k,1164) = lu(k,1164) * lu(k,1155) - lu(k,1165) = lu(k,1165) * lu(k,1155) - lu(k,1166) = lu(k,1166) * lu(k,1155) - lu(k,1167) = lu(k,1167) * lu(k,1155) - lu(k,1257) = lu(k,1257) - lu(k,1156) * lu(k,1254) - lu(k,1262) = lu(k,1262) - lu(k,1157) * lu(k,1254) - lu(k,1263) = lu(k,1263) - lu(k,1158) * lu(k,1254) - lu(k,1264) = lu(k,1264) - lu(k,1159) * lu(k,1254) - lu(k,1265) = lu(k,1265) - lu(k,1160) * lu(k,1254) - lu(k,1266) = lu(k,1266) - lu(k,1161) * lu(k,1254) - lu(k,1267) = lu(k,1267) - lu(k,1162) * lu(k,1254) - lu(k,1268) = lu(k,1268) - lu(k,1163) * lu(k,1254) - lu(k,1269) = lu(k,1269) - lu(k,1164) * lu(k,1254) - lu(k,1270) = lu(k,1270) - lu(k,1165) * lu(k,1254) - lu(k,1271) = lu(k,1271) - lu(k,1166) * lu(k,1254) - lu(k,1273) = - lu(k,1167) * lu(k,1254) - lu(k,1289) = lu(k,1289) - lu(k,1156) * lu(k,1286) - lu(k,1294) = lu(k,1294) - lu(k,1157) * lu(k,1286) - lu(k,1295) = lu(k,1295) - lu(k,1158) * lu(k,1286) - lu(k,1296) = lu(k,1296) - lu(k,1159) * lu(k,1286) - lu(k,1297) = lu(k,1297) - lu(k,1160) * lu(k,1286) - lu(k,1298) = lu(k,1298) - lu(k,1161) * lu(k,1286) - lu(k,1299) = lu(k,1299) - lu(k,1162) * lu(k,1286) - lu(k,1300) = lu(k,1300) - lu(k,1163) * lu(k,1286) - lu(k,1301) = lu(k,1301) - lu(k,1164) * lu(k,1286) - lu(k,1302) = lu(k,1302) - lu(k,1165) * lu(k,1286) - lu(k,1303) = lu(k,1303) - lu(k,1166) * lu(k,1286) - lu(k,1305) = - lu(k,1167) * lu(k,1286) - lu(k,1312) = lu(k,1312) - lu(k,1156) * lu(k,1311) - lu(k,1315) = lu(k,1315) - lu(k,1157) * lu(k,1311) - lu(k,1316) = - lu(k,1158) * lu(k,1311) - lu(k,1317) = lu(k,1317) - lu(k,1159) * lu(k,1311) - lu(k,1318) = lu(k,1318) - lu(k,1160) * lu(k,1311) - lu(k,1319) = lu(k,1319) - lu(k,1161) * lu(k,1311) - lu(k,1320) = lu(k,1320) - lu(k,1162) * lu(k,1311) - lu(k,1321) = lu(k,1321) - lu(k,1163) * lu(k,1311) - lu(k,1322) = lu(k,1322) - lu(k,1164) * lu(k,1311) - lu(k,1323) = lu(k,1323) - lu(k,1165) * lu(k,1311) - lu(k,1324) = lu(k,1324) - lu(k,1166) * lu(k,1311) - lu(k,1325) = - lu(k,1167) * lu(k,1311) - lu(k,1678) = lu(k,1678) - lu(k,1156) * lu(k,1674) - lu(k,1685) = lu(k,1685) - lu(k,1157) * lu(k,1674) - lu(k,1690) = lu(k,1690) - lu(k,1158) * lu(k,1674) - lu(k,1691) = lu(k,1691) - lu(k,1159) * lu(k,1674) - lu(k,1693) = lu(k,1693) - lu(k,1160) * lu(k,1674) - lu(k,1695) = lu(k,1695) - lu(k,1161) * lu(k,1674) - lu(k,1696) = lu(k,1696) - lu(k,1162) * lu(k,1674) - lu(k,1697) = lu(k,1697) - lu(k,1163) * lu(k,1674) - lu(k,1698) = lu(k,1698) - lu(k,1164) * lu(k,1674) - lu(k,1700) = lu(k,1700) - lu(k,1165) * lu(k,1674) - lu(k,1703) = lu(k,1703) - lu(k,1166) * lu(k,1674) - lu(k,1705) = lu(k,1705) - lu(k,1167) * lu(k,1674) - lu(k,1762) = lu(k,1762) - lu(k,1156) * lu(k,1758) - lu(k,1769) = lu(k,1769) - lu(k,1157) * lu(k,1758) - lu(k,1773) = lu(k,1773) - lu(k,1158) * lu(k,1758) - lu(k,1774) = lu(k,1774) - lu(k,1159) * lu(k,1758) - lu(k,1776) = lu(k,1776) - lu(k,1160) * lu(k,1758) - lu(k,1778) = lu(k,1778) - lu(k,1161) * lu(k,1758) - lu(k,1779) = lu(k,1779) - lu(k,1162) * lu(k,1758) - lu(k,1780) = lu(k,1780) - lu(k,1163) * lu(k,1758) - lu(k,1781) = lu(k,1781) - lu(k,1164) * lu(k,1758) - lu(k,1783) = lu(k,1783) - lu(k,1165) * lu(k,1758) - lu(k,1786) = lu(k,1786) - lu(k,1166) * lu(k,1758) - lu(k,1788) = lu(k,1788) - lu(k,1167) * lu(k,1758) - lu(k,1907) = lu(k,1907) - lu(k,1156) * lu(k,1903) - lu(k,1913) = lu(k,1913) - lu(k,1157) * lu(k,1903) - lu(k,1917) = lu(k,1917) - lu(k,1158) * lu(k,1903) - lu(k,1918) = lu(k,1918) - lu(k,1159) * lu(k,1903) - lu(k,1920) = lu(k,1920) - lu(k,1160) * lu(k,1903) - lu(k,1922) = lu(k,1922) - lu(k,1161) * lu(k,1903) - lu(k,1923) = lu(k,1923) - lu(k,1162) * lu(k,1903) - lu(k,1924) = lu(k,1924) - lu(k,1163) * lu(k,1903) - lu(k,1925) = lu(k,1925) - lu(k,1164) * lu(k,1903) - lu(k,1927) = lu(k,1927) - lu(k,1165) * lu(k,1903) - lu(k,1930) = lu(k,1930) - lu(k,1166) * lu(k,1903) - lu(k,1932) = lu(k,1932) - lu(k,1167) * lu(k,1903) - lu(k,1175) = 1._r8 / lu(k,1175) - lu(k,1176) = lu(k,1176) * lu(k,1175) - lu(k,1177) = lu(k,1177) * lu(k,1175) - lu(k,1178) = lu(k,1178) * lu(k,1175) - lu(k,1179) = lu(k,1179) * lu(k,1175) - lu(k,1180) = lu(k,1180) * lu(k,1175) - lu(k,1181) = lu(k,1181) * lu(k,1175) - lu(k,1182) = lu(k,1182) * lu(k,1175) - lu(k,1183) = lu(k,1183) * lu(k,1175) - lu(k,1184) = lu(k,1184) * lu(k,1175) - lu(k,1185) = lu(k,1185) * lu(k,1175) - lu(k,1197) = lu(k,1197) - lu(k,1176) * lu(k,1194) - lu(k,1199) = lu(k,1199) - lu(k,1177) * lu(k,1194) - lu(k,1201) = lu(k,1201) - lu(k,1178) * lu(k,1194) - lu(k,1202) = lu(k,1202) - lu(k,1179) * lu(k,1194) - lu(k,1203) = lu(k,1203) - lu(k,1180) * lu(k,1194) - lu(k,1204) = lu(k,1204) - lu(k,1181) * lu(k,1194) - lu(k,1205) = lu(k,1205) - lu(k,1182) * lu(k,1194) - lu(k,1206) = lu(k,1206) - lu(k,1183) * lu(k,1194) - lu(k,1207) = lu(k,1207) - lu(k,1184) * lu(k,1194) - lu(k,1208) = lu(k,1208) - lu(k,1185) * lu(k,1194) - lu(k,1257) = lu(k,1257) - lu(k,1176) * lu(k,1255) - lu(k,1262) = lu(k,1262) - lu(k,1177) * lu(k,1255) - lu(k,1264) = lu(k,1264) - lu(k,1178) * lu(k,1255) - lu(k,1265) = lu(k,1265) - lu(k,1179) * lu(k,1255) - lu(k,1266) = lu(k,1266) - lu(k,1180) * lu(k,1255) - lu(k,1267) = lu(k,1267) - lu(k,1181) * lu(k,1255) - lu(k,1268) = lu(k,1268) - lu(k,1182) * lu(k,1255) - lu(k,1269) = lu(k,1269) - lu(k,1183) * lu(k,1255) - lu(k,1270) = lu(k,1270) - lu(k,1184) * lu(k,1255) - lu(k,1271) = lu(k,1271) - lu(k,1185) * lu(k,1255) - lu(k,1289) = lu(k,1289) - lu(k,1176) * lu(k,1287) - lu(k,1294) = lu(k,1294) - lu(k,1177) * lu(k,1287) - lu(k,1296) = lu(k,1296) - lu(k,1178) * lu(k,1287) - lu(k,1297) = lu(k,1297) - lu(k,1179) * lu(k,1287) - lu(k,1298) = lu(k,1298) - lu(k,1180) * lu(k,1287) - lu(k,1299) = lu(k,1299) - lu(k,1181) * lu(k,1287) - lu(k,1300) = lu(k,1300) - lu(k,1182) * lu(k,1287) - lu(k,1301) = lu(k,1301) - lu(k,1183) * lu(k,1287) - lu(k,1302) = lu(k,1302) - lu(k,1184) * lu(k,1287) - lu(k,1303) = lu(k,1303) - lu(k,1185) * lu(k,1287) - lu(k,1382) = lu(k,1382) - lu(k,1176) * lu(k,1379) - lu(k,1388) = lu(k,1388) - lu(k,1177) * lu(k,1379) - lu(k,1391) = lu(k,1391) - lu(k,1178) * lu(k,1379) - lu(k,1392) = lu(k,1392) - lu(k,1179) * lu(k,1379) - lu(k,1393) = lu(k,1393) - lu(k,1180) * lu(k,1379) - lu(k,1394) = lu(k,1394) - lu(k,1181) * lu(k,1379) - lu(k,1395) = lu(k,1395) - lu(k,1182) * lu(k,1379) - lu(k,1396) = lu(k,1396) - lu(k,1183) * lu(k,1379) - lu(k,1397) = lu(k,1397) - lu(k,1184) * lu(k,1379) - lu(k,1398) = lu(k,1398) - lu(k,1185) * lu(k,1379) - lu(k,1678) = lu(k,1678) - lu(k,1176) * lu(k,1675) - lu(k,1685) = lu(k,1685) - lu(k,1177) * lu(k,1675) - lu(k,1691) = lu(k,1691) - lu(k,1178) * lu(k,1675) - lu(k,1693) = lu(k,1693) - lu(k,1179) * lu(k,1675) - lu(k,1695) = lu(k,1695) - lu(k,1180) * lu(k,1675) - lu(k,1696) = lu(k,1696) - lu(k,1181) * lu(k,1675) - lu(k,1697) = lu(k,1697) - lu(k,1182) * lu(k,1675) - lu(k,1698) = lu(k,1698) - lu(k,1183) * lu(k,1675) - lu(k,1700) = lu(k,1700) - lu(k,1184) * lu(k,1675) - lu(k,1703) = lu(k,1703) - lu(k,1185) * lu(k,1675) - lu(k,1762) = lu(k,1762) - lu(k,1176) * lu(k,1759) - lu(k,1769) = lu(k,1769) - lu(k,1177) * lu(k,1759) - lu(k,1774) = lu(k,1774) - lu(k,1178) * lu(k,1759) - lu(k,1776) = lu(k,1776) - lu(k,1179) * lu(k,1759) - lu(k,1778) = lu(k,1778) - lu(k,1180) * lu(k,1759) - lu(k,1779) = lu(k,1779) - lu(k,1181) * lu(k,1759) - lu(k,1780) = lu(k,1780) - lu(k,1182) * lu(k,1759) - lu(k,1781) = lu(k,1781) - lu(k,1183) * lu(k,1759) - lu(k,1783) = lu(k,1783) - lu(k,1184) * lu(k,1759) - lu(k,1786) = lu(k,1786) - lu(k,1185) * lu(k,1759) - lu(k,1816) = lu(k,1816) - lu(k,1176) * lu(k,1813) - lu(k,1822) = lu(k,1822) - lu(k,1177) * lu(k,1813) - lu(k,1826) = lu(k,1826) - lu(k,1178) * lu(k,1813) - lu(k,1828) = lu(k,1828) - lu(k,1179) * lu(k,1813) - lu(k,1830) = lu(k,1830) - lu(k,1180) * lu(k,1813) - lu(k,1831) = lu(k,1831) - lu(k,1181) * lu(k,1813) - lu(k,1832) = lu(k,1832) - lu(k,1182) * lu(k,1813) - lu(k,1833) = lu(k,1833) - lu(k,1183) * lu(k,1813) - lu(k,1835) = lu(k,1835) - lu(k,1184) * lu(k,1813) - lu(k,1838) = lu(k,1838) - lu(k,1185) * lu(k,1813) - lu(k,1907) = lu(k,1907) - lu(k,1176) * lu(k,1904) - lu(k,1913) = lu(k,1913) - lu(k,1177) * lu(k,1904) - lu(k,1918) = lu(k,1918) - lu(k,1178) * lu(k,1904) - lu(k,1920) = lu(k,1920) - lu(k,1179) * lu(k,1904) - lu(k,1922) = lu(k,1922) - lu(k,1180) * lu(k,1904) - lu(k,1923) = lu(k,1923) - lu(k,1181) * lu(k,1904) - lu(k,1924) = lu(k,1924) - lu(k,1182) * lu(k,1904) - lu(k,1925) = lu(k,1925) - lu(k,1183) * lu(k,1904) - lu(k,1927) = lu(k,1927) - lu(k,1184) * lu(k,1904) - lu(k,1930) = lu(k,1930) - lu(k,1185) * lu(k,1904) - lu(k,2096) = lu(k,2096) - lu(k,1176) * lu(k,2093) - lu(k,2102) = lu(k,2102) - lu(k,1177) * lu(k,2093) - lu(k,2108) = lu(k,2108) - lu(k,1178) * lu(k,2093) - lu(k,2110) = lu(k,2110) - lu(k,1179) * lu(k,2093) - lu(k,2112) = lu(k,2112) - lu(k,1180) * lu(k,2093) - lu(k,2113) = lu(k,2113) - lu(k,1181) * lu(k,2093) - lu(k,2114) = lu(k,2114) - lu(k,1182) * lu(k,2093) - lu(k,2115) = lu(k,2115) - lu(k,1183) * lu(k,2093) - lu(k,2117) = lu(k,2117) - lu(k,1184) * lu(k,2093) - lu(k,2120) = lu(k,2120) - lu(k,1185) * lu(k,2093) - lu(k,1195) = 1._r8 / lu(k,1195) - lu(k,1196) = lu(k,1196) * lu(k,1195) - lu(k,1197) = lu(k,1197) * lu(k,1195) - lu(k,1198) = lu(k,1198) * lu(k,1195) - lu(k,1199) = lu(k,1199) * lu(k,1195) - lu(k,1200) = lu(k,1200) * lu(k,1195) - lu(k,1201) = lu(k,1201) * lu(k,1195) - lu(k,1202) = lu(k,1202) * lu(k,1195) - lu(k,1203) = lu(k,1203) * lu(k,1195) - lu(k,1204) = lu(k,1204) * lu(k,1195) - lu(k,1205) = lu(k,1205) * lu(k,1195) - lu(k,1206) = lu(k,1206) * lu(k,1195) - lu(k,1207) = lu(k,1207) * lu(k,1195) - lu(k,1208) = lu(k,1208) * lu(k,1195) - lu(k,1381) = lu(k,1381) - lu(k,1196) * lu(k,1380) - lu(k,1382) = lu(k,1382) - lu(k,1197) * lu(k,1380) - lu(k,1386) = lu(k,1386) - lu(k,1198) * lu(k,1380) - lu(k,1388) = lu(k,1388) - lu(k,1199) * lu(k,1380) - lu(k,1390) = lu(k,1390) - lu(k,1200) * lu(k,1380) - lu(k,1391) = lu(k,1391) - lu(k,1201) * lu(k,1380) - lu(k,1392) = lu(k,1392) - lu(k,1202) * lu(k,1380) - lu(k,1393) = lu(k,1393) - lu(k,1203) * lu(k,1380) - lu(k,1394) = lu(k,1394) - lu(k,1204) * lu(k,1380) - lu(k,1395) = lu(k,1395) - lu(k,1205) * lu(k,1380) - lu(k,1396) = lu(k,1396) - lu(k,1206) * lu(k,1380) - lu(k,1397) = lu(k,1397) - lu(k,1207) * lu(k,1380) - lu(k,1398) = lu(k,1398) - lu(k,1208) * lu(k,1380) - lu(k,1677) = lu(k,1677) - lu(k,1196) * lu(k,1676) - lu(k,1678) = lu(k,1678) - lu(k,1197) * lu(k,1676) - lu(k,1683) = lu(k,1683) - lu(k,1198) * lu(k,1676) - lu(k,1685) = lu(k,1685) - lu(k,1199) * lu(k,1676) - lu(k,1690) = lu(k,1690) - lu(k,1200) * lu(k,1676) - lu(k,1691) = lu(k,1691) - lu(k,1201) * lu(k,1676) - lu(k,1693) = lu(k,1693) - lu(k,1202) * lu(k,1676) - lu(k,1695) = lu(k,1695) - lu(k,1203) * lu(k,1676) - lu(k,1696) = lu(k,1696) - lu(k,1204) * lu(k,1676) - lu(k,1697) = lu(k,1697) - lu(k,1205) * lu(k,1676) - lu(k,1698) = lu(k,1698) - lu(k,1206) * lu(k,1676) - lu(k,1700) = lu(k,1700) - lu(k,1207) * lu(k,1676) - lu(k,1703) = lu(k,1703) - lu(k,1208) * lu(k,1676) - lu(k,1761) = lu(k,1761) - lu(k,1196) * lu(k,1760) - lu(k,1762) = lu(k,1762) - lu(k,1197) * lu(k,1760) - lu(k,1767) = lu(k,1767) - lu(k,1198) * lu(k,1760) - lu(k,1769) = lu(k,1769) - lu(k,1199) * lu(k,1760) - lu(k,1773) = lu(k,1773) - lu(k,1200) * lu(k,1760) - lu(k,1774) = lu(k,1774) - lu(k,1201) * lu(k,1760) - lu(k,1776) = lu(k,1776) - lu(k,1202) * lu(k,1760) - lu(k,1778) = lu(k,1778) - lu(k,1203) * lu(k,1760) - lu(k,1779) = lu(k,1779) - lu(k,1204) * lu(k,1760) - lu(k,1780) = lu(k,1780) - lu(k,1205) * lu(k,1760) - lu(k,1781) = lu(k,1781) - lu(k,1206) * lu(k,1760) - lu(k,1783) = lu(k,1783) - lu(k,1207) * lu(k,1760) - lu(k,1786) = lu(k,1786) - lu(k,1208) * lu(k,1760) - lu(k,1815) = lu(k,1815) - lu(k,1196) * lu(k,1814) - lu(k,1816) = lu(k,1816) - lu(k,1197) * lu(k,1814) - lu(k,1820) = lu(k,1820) - lu(k,1198) * lu(k,1814) - lu(k,1822) = lu(k,1822) - lu(k,1199) * lu(k,1814) - lu(k,1825) = lu(k,1825) - lu(k,1200) * lu(k,1814) - lu(k,1826) = lu(k,1826) - lu(k,1201) * lu(k,1814) - lu(k,1828) = lu(k,1828) - lu(k,1202) * lu(k,1814) - lu(k,1830) = lu(k,1830) - lu(k,1203) * lu(k,1814) - lu(k,1831) = lu(k,1831) - lu(k,1204) * lu(k,1814) - lu(k,1832) = lu(k,1832) - lu(k,1205) * lu(k,1814) - lu(k,1833) = lu(k,1833) - lu(k,1206) * lu(k,1814) - lu(k,1835) = lu(k,1835) - lu(k,1207) * lu(k,1814) - lu(k,1838) = lu(k,1838) - lu(k,1208) * lu(k,1814) - lu(k,1906) = lu(k,1906) - lu(k,1196) * lu(k,1905) - lu(k,1907) = lu(k,1907) - lu(k,1197) * lu(k,1905) - lu(k,1911) = lu(k,1911) - lu(k,1198) * lu(k,1905) - lu(k,1913) = lu(k,1913) - lu(k,1199) * lu(k,1905) - lu(k,1917) = lu(k,1917) - lu(k,1200) * lu(k,1905) - lu(k,1918) = lu(k,1918) - lu(k,1201) * lu(k,1905) - lu(k,1920) = lu(k,1920) - lu(k,1202) * lu(k,1905) - lu(k,1922) = lu(k,1922) - lu(k,1203) * lu(k,1905) - lu(k,1923) = lu(k,1923) - lu(k,1204) * lu(k,1905) - lu(k,1924) = lu(k,1924) - lu(k,1205) * lu(k,1905) - lu(k,1925) = lu(k,1925) - lu(k,1206) * lu(k,1905) - lu(k,1927) = lu(k,1927) - lu(k,1207) * lu(k,1905) - lu(k,1930) = lu(k,1930) - lu(k,1208) * lu(k,1905) - lu(k,2095) = lu(k,2095) - lu(k,1196) * lu(k,2094) - lu(k,2096) = lu(k,2096) - lu(k,1197) * lu(k,2094) - lu(k,2100) = lu(k,2100) - lu(k,1198) * lu(k,2094) - lu(k,2102) = lu(k,2102) - lu(k,1199) * lu(k,2094) - lu(k,2107) = lu(k,2107) - lu(k,1200) * lu(k,2094) - lu(k,2108) = lu(k,2108) - lu(k,1201) * lu(k,2094) - lu(k,2110) = lu(k,2110) - lu(k,1202) * lu(k,2094) - lu(k,2112) = lu(k,2112) - lu(k,1203) * lu(k,2094) - lu(k,2113) = lu(k,2113) - lu(k,1204) * lu(k,2094) - lu(k,2114) = lu(k,2114) - lu(k,1205) * lu(k,2094) - lu(k,2115) = lu(k,2115) - lu(k,1206) * lu(k,2094) - lu(k,2117) = lu(k,2117) - lu(k,1207) * lu(k,2094) - lu(k,2120) = lu(k,2120) - lu(k,1208) * lu(k,2094) - lu(k,2234) = lu(k,2234) - lu(k,1196) * lu(k,2233) - lu(k,2235) = lu(k,2235) - lu(k,1197) * lu(k,2233) - lu(k,2240) = lu(k,2240) - lu(k,1198) * lu(k,2233) - lu(k,2242) = lu(k,2242) - lu(k,1199) * lu(k,2233) - lu(k,2246) = lu(k,2246) - lu(k,1200) * lu(k,2233) - lu(k,2247) = lu(k,2247) - lu(k,1201) * lu(k,2233) - lu(k,2249) = lu(k,2249) - lu(k,1202) * lu(k,2233) - lu(k,2251) = lu(k,2251) - lu(k,1203) * lu(k,2233) - lu(k,2252) = lu(k,2252) - lu(k,1204) * lu(k,2233) - lu(k,2253) = lu(k,2253) - lu(k,1205) * lu(k,2233) - lu(k,2254) = lu(k,2254) - lu(k,1206) * lu(k,2233) - lu(k,2256) = lu(k,2256) - lu(k,1207) * lu(k,2233) - lu(k,2259) = lu(k,2259) - lu(k,1208) * lu(k,2233) - lu(k,1211) = 1._r8 / lu(k,1211) - lu(k,1212) = lu(k,1212) * lu(k,1211) - lu(k,1213) = lu(k,1213) * lu(k,1211) - lu(k,1214) = lu(k,1214) * lu(k,1211) - lu(k,1215) = lu(k,1215) * lu(k,1211) - lu(k,1216) = lu(k,1216) * lu(k,1211) - lu(k,1217) = lu(k,1217) * lu(k,1211) - lu(k,1218) = lu(k,1218) * lu(k,1211) - lu(k,1219) = lu(k,1219) * lu(k,1211) - lu(k,1220) = lu(k,1220) * lu(k,1211) - lu(k,1221) = lu(k,1221) * lu(k,1211) - lu(k,1257) = lu(k,1257) - lu(k,1212) * lu(k,1256) - lu(k,1259) = - lu(k,1213) * lu(k,1256) - lu(k,1261) = - lu(k,1214) * lu(k,1256) - lu(k,1262) = lu(k,1262) - lu(k,1215) * lu(k,1256) - lu(k,1264) = lu(k,1264) - lu(k,1216) * lu(k,1256) - lu(k,1265) = lu(k,1265) - lu(k,1217) * lu(k,1256) - lu(k,1270) = lu(k,1270) - lu(k,1218) * lu(k,1256) - lu(k,1271) = lu(k,1271) - lu(k,1219) * lu(k,1256) - lu(k,1272) = - lu(k,1220) * lu(k,1256) - lu(k,1273) = lu(k,1273) - lu(k,1221) * lu(k,1256) - lu(k,1289) = lu(k,1289) - lu(k,1212) * lu(k,1288) - lu(k,1291) = - lu(k,1213) * lu(k,1288) - lu(k,1293) = - lu(k,1214) * lu(k,1288) - lu(k,1294) = lu(k,1294) - lu(k,1215) * lu(k,1288) - lu(k,1296) = lu(k,1296) - lu(k,1216) * lu(k,1288) - lu(k,1297) = lu(k,1297) - lu(k,1217) * lu(k,1288) - lu(k,1302) = lu(k,1302) - lu(k,1218) * lu(k,1288) - lu(k,1303) = lu(k,1303) - lu(k,1219) * lu(k,1288) - lu(k,1304) = - lu(k,1220) * lu(k,1288) - lu(k,1305) = lu(k,1305) - lu(k,1221) * lu(k,1288) - lu(k,1382) = lu(k,1382) - lu(k,1212) * lu(k,1381) - lu(k,1385) = lu(k,1385) - lu(k,1213) * lu(k,1381) - lu(k,1387) = lu(k,1387) - lu(k,1214) * lu(k,1381) - lu(k,1388) = lu(k,1388) - lu(k,1215) * lu(k,1381) - lu(k,1391) = lu(k,1391) - lu(k,1216) * lu(k,1381) - lu(k,1392) = lu(k,1392) - lu(k,1217) * lu(k,1381) - lu(k,1397) = lu(k,1397) - lu(k,1218) * lu(k,1381) - lu(k,1398) = lu(k,1398) - lu(k,1219) * lu(k,1381) - lu(k,1399) = lu(k,1399) - lu(k,1220) * lu(k,1381) - lu(k,1400) = lu(k,1400) - lu(k,1221) * lu(k,1381) - lu(k,1678) = lu(k,1678) - lu(k,1212) * lu(k,1677) - lu(k,1682) = lu(k,1682) - lu(k,1213) * lu(k,1677) - lu(k,1684) = lu(k,1684) - lu(k,1214) * lu(k,1677) - lu(k,1685) = lu(k,1685) - lu(k,1215) * lu(k,1677) - lu(k,1691) = lu(k,1691) - lu(k,1216) * lu(k,1677) - lu(k,1693) = lu(k,1693) - lu(k,1217) * lu(k,1677) - lu(k,1700) = lu(k,1700) - lu(k,1218) * lu(k,1677) - lu(k,1703) = lu(k,1703) - lu(k,1219) * lu(k,1677) - lu(k,1704) = lu(k,1704) - lu(k,1220) * lu(k,1677) - lu(k,1705) = lu(k,1705) - lu(k,1221) * lu(k,1677) - lu(k,1762) = lu(k,1762) - lu(k,1212) * lu(k,1761) - lu(k,1766) = lu(k,1766) - lu(k,1213) * lu(k,1761) - lu(k,1768) = lu(k,1768) - lu(k,1214) * lu(k,1761) - lu(k,1769) = lu(k,1769) - lu(k,1215) * lu(k,1761) - lu(k,1774) = lu(k,1774) - lu(k,1216) * lu(k,1761) - lu(k,1776) = lu(k,1776) - lu(k,1217) * lu(k,1761) - lu(k,1783) = lu(k,1783) - lu(k,1218) * lu(k,1761) - lu(k,1786) = lu(k,1786) - lu(k,1219) * lu(k,1761) - lu(k,1787) = lu(k,1787) - lu(k,1220) * lu(k,1761) - lu(k,1788) = lu(k,1788) - lu(k,1221) * lu(k,1761) - lu(k,1816) = lu(k,1816) - lu(k,1212) * lu(k,1815) - lu(k,1819) = lu(k,1819) - lu(k,1213) * lu(k,1815) - lu(k,1821) = lu(k,1821) - lu(k,1214) * lu(k,1815) - lu(k,1822) = lu(k,1822) - lu(k,1215) * lu(k,1815) - lu(k,1826) = lu(k,1826) - lu(k,1216) * lu(k,1815) - lu(k,1828) = lu(k,1828) - lu(k,1217) * lu(k,1815) - lu(k,1835) = lu(k,1835) - lu(k,1218) * lu(k,1815) - lu(k,1838) = lu(k,1838) - lu(k,1219) * lu(k,1815) - lu(k,1839) = - lu(k,1220) * lu(k,1815) - lu(k,1840) = lu(k,1840) - lu(k,1221) * lu(k,1815) - lu(k,1907) = lu(k,1907) - lu(k,1212) * lu(k,1906) - lu(k,1910) = lu(k,1910) - lu(k,1213) * lu(k,1906) - lu(k,1912) = lu(k,1912) - lu(k,1214) * lu(k,1906) - lu(k,1913) = lu(k,1913) - lu(k,1215) * lu(k,1906) - lu(k,1918) = lu(k,1918) - lu(k,1216) * lu(k,1906) - lu(k,1920) = lu(k,1920) - lu(k,1217) * lu(k,1906) - lu(k,1927) = lu(k,1927) - lu(k,1218) * lu(k,1906) - lu(k,1930) = lu(k,1930) - lu(k,1219) * lu(k,1906) - lu(k,1931) = lu(k,1931) - lu(k,1220) * lu(k,1906) - lu(k,1932) = lu(k,1932) - lu(k,1221) * lu(k,1906) - lu(k,2096) = lu(k,2096) - lu(k,1212) * lu(k,2095) - lu(k,2099) = lu(k,2099) - lu(k,1213) * lu(k,2095) - lu(k,2101) = lu(k,2101) - lu(k,1214) * lu(k,2095) - lu(k,2102) = lu(k,2102) - lu(k,1215) * lu(k,2095) - lu(k,2108) = lu(k,2108) - lu(k,1216) * lu(k,2095) - lu(k,2110) = lu(k,2110) - lu(k,1217) * lu(k,2095) - lu(k,2117) = lu(k,2117) - lu(k,1218) * lu(k,2095) - lu(k,2120) = lu(k,2120) - lu(k,1219) * lu(k,2095) - lu(k,2121) = lu(k,2121) - lu(k,1220) * lu(k,2095) - lu(k,2122) = lu(k,2122) - lu(k,1221) * lu(k,2095) - lu(k,2235) = lu(k,2235) - lu(k,1212) * lu(k,2234) - lu(k,2239) = - lu(k,1213) * lu(k,2234) - lu(k,2241) = - lu(k,1214) * lu(k,2234) - lu(k,2242) = lu(k,2242) - lu(k,1215) * lu(k,2234) - lu(k,2247) = lu(k,2247) - lu(k,1216) * lu(k,2234) - lu(k,2249) = lu(k,2249) - lu(k,1217) * lu(k,2234) - lu(k,2256) = lu(k,2256) - lu(k,1218) * lu(k,2234) - lu(k,2259) = lu(k,2259) - lu(k,1219) * lu(k,2234) - lu(k,2260) = lu(k,2260) - lu(k,1220) * lu(k,2234) - lu(k,2261) = lu(k,2261) - lu(k,1221) * lu(k,2234) - end do - end subroutine lu_fac24 - subroutine lu_fac25( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1223) = 1._r8 / lu(k,1223) - lu(k,1224) = lu(k,1224) * lu(k,1223) - lu(k,1225) = lu(k,1225) * lu(k,1223) - lu(k,1226) = lu(k,1226) * lu(k,1223) - lu(k,1227) = lu(k,1227) * lu(k,1223) - lu(k,1228) = lu(k,1228) * lu(k,1223) - lu(k,1229) = lu(k,1229) * lu(k,1223) - lu(k,1230) = lu(k,1230) * lu(k,1223) - lu(k,1262) = lu(k,1262) - lu(k,1224) * lu(k,1257) - lu(k,1263) = lu(k,1263) - lu(k,1225) * lu(k,1257) - lu(k,1265) = lu(k,1265) - lu(k,1226) * lu(k,1257) - lu(k,1266) = lu(k,1266) - lu(k,1227) * lu(k,1257) - lu(k,1270) = lu(k,1270) - lu(k,1228) * lu(k,1257) - lu(k,1271) = lu(k,1271) - lu(k,1229) * lu(k,1257) - lu(k,1273) = lu(k,1273) - lu(k,1230) * lu(k,1257) - lu(k,1294) = lu(k,1294) - lu(k,1224) * lu(k,1289) - lu(k,1295) = lu(k,1295) - lu(k,1225) * lu(k,1289) - lu(k,1297) = lu(k,1297) - lu(k,1226) * lu(k,1289) - lu(k,1298) = lu(k,1298) - lu(k,1227) * lu(k,1289) - lu(k,1302) = lu(k,1302) - lu(k,1228) * lu(k,1289) - lu(k,1303) = lu(k,1303) - lu(k,1229) * lu(k,1289) - lu(k,1305) = lu(k,1305) - lu(k,1230) * lu(k,1289) - lu(k,1315) = lu(k,1315) - lu(k,1224) * lu(k,1312) - lu(k,1316) = lu(k,1316) - lu(k,1225) * lu(k,1312) - lu(k,1318) = lu(k,1318) - lu(k,1226) * lu(k,1312) - lu(k,1319) = lu(k,1319) - lu(k,1227) * lu(k,1312) - lu(k,1323) = lu(k,1323) - lu(k,1228) * lu(k,1312) - lu(k,1324) = lu(k,1324) - lu(k,1229) * lu(k,1312) - lu(k,1325) = lu(k,1325) - lu(k,1230) * lu(k,1312) - lu(k,1336) = lu(k,1336) - lu(k,1224) * lu(k,1332) - lu(k,1338) = lu(k,1338) - lu(k,1225) * lu(k,1332) - lu(k,1340) = lu(k,1340) - lu(k,1226) * lu(k,1332) - lu(k,1341) = lu(k,1341) - lu(k,1227) * lu(k,1332) - lu(k,1345) = lu(k,1345) - lu(k,1228) * lu(k,1332) - lu(k,1346) = lu(k,1346) - lu(k,1229) * lu(k,1332) - lu(k,1348) = lu(k,1348) - lu(k,1230) * lu(k,1332) - lu(k,1357) = lu(k,1357) - lu(k,1224) * lu(k,1355) - lu(k,1358) = - lu(k,1225) * lu(k,1355) - lu(k,1360) = lu(k,1360) - lu(k,1226) * lu(k,1355) - lu(k,1361) = lu(k,1361) - lu(k,1227) * lu(k,1355) - lu(k,1365) = lu(k,1365) - lu(k,1228) * lu(k,1355) - lu(k,1366) = lu(k,1366) - lu(k,1229) * lu(k,1355) - lu(k,1368) = lu(k,1368) - lu(k,1230) * lu(k,1355) - lu(k,1388) = lu(k,1388) - lu(k,1224) * lu(k,1382) - lu(k,1390) = lu(k,1390) - lu(k,1225) * lu(k,1382) - lu(k,1392) = lu(k,1392) - lu(k,1226) * lu(k,1382) - lu(k,1393) = lu(k,1393) - lu(k,1227) * lu(k,1382) - lu(k,1397) = lu(k,1397) - lu(k,1228) * lu(k,1382) - lu(k,1398) = lu(k,1398) - lu(k,1229) * lu(k,1382) - lu(k,1400) = lu(k,1400) - lu(k,1230) * lu(k,1382) - lu(k,1685) = lu(k,1685) - lu(k,1224) * lu(k,1678) - lu(k,1690) = lu(k,1690) - lu(k,1225) * lu(k,1678) - lu(k,1693) = lu(k,1693) - lu(k,1226) * lu(k,1678) - lu(k,1695) = lu(k,1695) - lu(k,1227) * lu(k,1678) - lu(k,1700) = lu(k,1700) - lu(k,1228) * lu(k,1678) - lu(k,1703) = lu(k,1703) - lu(k,1229) * lu(k,1678) - lu(k,1705) = lu(k,1705) - lu(k,1230) * lu(k,1678) - lu(k,1769) = lu(k,1769) - lu(k,1224) * lu(k,1762) - lu(k,1773) = lu(k,1773) - lu(k,1225) * lu(k,1762) - lu(k,1776) = lu(k,1776) - lu(k,1226) * lu(k,1762) - lu(k,1778) = lu(k,1778) - lu(k,1227) * lu(k,1762) - lu(k,1783) = lu(k,1783) - lu(k,1228) * lu(k,1762) - lu(k,1786) = lu(k,1786) - lu(k,1229) * lu(k,1762) - lu(k,1788) = lu(k,1788) - lu(k,1230) * lu(k,1762) - lu(k,1822) = lu(k,1822) - lu(k,1224) * lu(k,1816) - lu(k,1825) = lu(k,1825) - lu(k,1225) * lu(k,1816) - lu(k,1828) = lu(k,1828) - lu(k,1226) * lu(k,1816) - lu(k,1830) = lu(k,1830) - lu(k,1227) * lu(k,1816) - lu(k,1835) = lu(k,1835) - lu(k,1228) * lu(k,1816) - lu(k,1838) = lu(k,1838) - lu(k,1229) * lu(k,1816) - lu(k,1840) = lu(k,1840) - lu(k,1230) * lu(k,1816) - lu(k,1913) = lu(k,1913) - lu(k,1224) * lu(k,1907) - lu(k,1917) = lu(k,1917) - lu(k,1225) * lu(k,1907) - lu(k,1920) = lu(k,1920) - lu(k,1226) * lu(k,1907) - lu(k,1922) = lu(k,1922) - lu(k,1227) * lu(k,1907) - lu(k,1927) = lu(k,1927) - lu(k,1228) * lu(k,1907) - lu(k,1930) = lu(k,1930) - lu(k,1229) * lu(k,1907) - lu(k,1932) = lu(k,1932) - lu(k,1230) * lu(k,1907) - lu(k,1957) = lu(k,1957) - lu(k,1224) * lu(k,1954) - lu(k,1961) = lu(k,1961) - lu(k,1225) * lu(k,1954) - lu(k,1964) = lu(k,1964) - lu(k,1226) * lu(k,1954) - lu(k,1966) = lu(k,1966) - lu(k,1227) * lu(k,1954) - lu(k,1971) = lu(k,1971) - lu(k,1228) * lu(k,1954) - lu(k,1974) = lu(k,1974) - lu(k,1229) * lu(k,1954) - lu(k,1976) = lu(k,1976) - lu(k,1230) * lu(k,1954) - lu(k,2102) = lu(k,2102) - lu(k,1224) * lu(k,2096) - lu(k,2107) = lu(k,2107) - lu(k,1225) * lu(k,2096) - lu(k,2110) = lu(k,2110) - lu(k,1226) * lu(k,2096) - lu(k,2112) = lu(k,2112) - lu(k,1227) * lu(k,2096) - lu(k,2117) = lu(k,2117) - lu(k,1228) * lu(k,2096) - lu(k,2120) = lu(k,2120) - lu(k,1229) * lu(k,2096) - lu(k,2122) = lu(k,2122) - lu(k,1230) * lu(k,2096) - lu(k,2242) = lu(k,2242) - lu(k,1224) * lu(k,2235) - lu(k,2246) = lu(k,2246) - lu(k,1225) * lu(k,2235) - lu(k,2249) = lu(k,2249) - lu(k,1226) * lu(k,2235) - lu(k,2251) = lu(k,2251) - lu(k,1227) * lu(k,2235) - lu(k,2256) = lu(k,2256) - lu(k,1228) * lu(k,2235) - lu(k,2259) = lu(k,2259) - lu(k,1229) * lu(k,2235) - lu(k,2261) = lu(k,2261) - lu(k,1230) * lu(k,2235) - lu(k,1234) = 1._r8 / lu(k,1234) - lu(k,1235) = lu(k,1235) * lu(k,1234) - lu(k,1236) = lu(k,1236) * lu(k,1234) - lu(k,1237) = lu(k,1237) * lu(k,1234) - lu(k,1238) = lu(k,1238) * lu(k,1234) - lu(k,1239) = lu(k,1239) * lu(k,1234) - lu(k,1240) = lu(k,1240) * lu(k,1234) - lu(k,1241) = lu(k,1241) * lu(k,1234) - lu(k,1242) = lu(k,1242) * lu(k,1234) - lu(k,1243) = lu(k,1243) * lu(k,1234) - lu(k,1244) = lu(k,1244) * lu(k,1234) - lu(k,1245) = lu(k,1245) * lu(k,1234) - lu(k,1246) = lu(k,1246) * lu(k,1234) - lu(k,1687) = lu(k,1687) - lu(k,1235) * lu(k,1679) - lu(k,1689) = lu(k,1689) - lu(k,1236) * lu(k,1679) - lu(k,1693) = lu(k,1693) - lu(k,1237) * lu(k,1679) - lu(k,1694) = lu(k,1694) - lu(k,1238) * lu(k,1679) - lu(k,1697) = lu(k,1697) - lu(k,1239) * lu(k,1679) - lu(k,1698) = lu(k,1698) - lu(k,1240) * lu(k,1679) - lu(k,1699) = lu(k,1699) - lu(k,1241) * lu(k,1679) - lu(k,1700) = lu(k,1700) - lu(k,1242) * lu(k,1679) - lu(k,1702) = lu(k,1702) - lu(k,1243) * lu(k,1679) - lu(k,1703) = lu(k,1703) - lu(k,1244) * lu(k,1679) - lu(k,1704) = lu(k,1704) - lu(k,1245) * lu(k,1679) - lu(k,1705) = lu(k,1705) - lu(k,1246) * lu(k,1679) - lu(k,1714) = lu(k,1714) - lu(k,1235) * lu(k,1713) - lu(k,1715) = - lu(k,1236) * lu(k,1713) - lu(k,1719) = lu(k,1719) - lu(k,1237) * lu(k,1713) - lu(k,1720) = lu(k,1720) - lu(k,1238) * lu(k,1713) - lu(k,1723) = lu(k,1723) - lu(k,1239) * lu(k,1713) - lu(k,1724) = lu(k,1724) - lu(k,1240) * lu(k,1713) - lu(k,1725) = lu(k,1725) - lu(k,1241) * lu(k,1713) - lu(k,1726) = lu(k,1726) - lu(k,1242) * lu(k,1713) - lu(k,1728) = lu(k,1728) - lu(k,1243) * lu(k,1713) - lu(k,1729) = lu(k,1729) - lu(k,1244) * lu(k,1713) - lu(k,1730) = - lu(k,1245) * lu(k,1713) - lu(k,1731) = lu(k,1731) - lu(k,1246) * lu(k,1713) - lu(k,1770) = - lu(k,1235) * lu(k,1763) - lu(k,1772) = - lu(k,1236) * lu(k,1763) - lu(k,1776) = lu(k,1776) - lu(k,1237) * lu(k,1763) - lu(k,1777) = - lu(k,1238) * lu(k,1763) - lu(k,1780) = lu(k,1780) - lu(k,1239) * lu(k,1763) - lu(k,1781) = lu(k,1781) - lu(k,1240) * lu(k,1763) - lu(k,1782) = - lu(k,1241) * lu(k,1763) - lu(k,1783) = lu(k,1783) - lu(k,1242) * lu(k,1763) - lu(k,1785) = - lu(k,1243) * lu(k,1763) - lu(k,1786) = lu(k,1786) - lu(k,1244) * lu(k,1763) - lu(k,1787) = lu(k,1787) - lu(k,1245) * lu(k,1763) - lu(k,1788) = lu(k,1788) - lu(k,1246) * lu(k,1763) - lu(k,1958) = lu(k,1958) - lu(k,1235) * lu(k,1955) - lu(k,1960) = lu(k,1960) - lu(k,1236) * lu(k,1955) - lu(k,1964) = lu(k,1964) - lu(k,1237) * lu(k,1955) - lu(k,1965) = lu(k,1965) - lu(k,1238) * lu(k,1955) - lu(k,1968) = lu(k,1968) - lu(k,1239) * lu(k,1955) - lu(k,1969) = lu(k,1969) - lu(k,1240) * lu(k,1955) - lu(k,1970) = lu(k,1970) - lu(k,1241) * lu(k,1955) - lu(k,1971) = lu(k,1971) - lu(k,1242) * lu(k,1955) - lu(k,1973) = lu(k,1973) - lu(k,1243) * lu(k,1955) - lu(k,1974) = lu(k,1974) - lu(k,1244) * lu(k,1955) - lu(k,1975) = lu(k,1975) - lu(k,1245) * lu(k,1955) - lu(k,1976) = lu(k,1976) - lu(k,1246) * lu(k,1955) - lu(k,2152) = lu(k,2152) - lu(k,1235) * lu(k,2151) - lu(k,2153) = - lu(k,1236) * lu(k,2151) - lu(k,2157) = lu(k,2157) - lu(k,1237) * lu(k,2151) - lu(k,2158) = lu(k,2158) - lu(k,1238) * lu(k,2151) - lu(k,2161) = lu(k,2161) - lu(k,1239) * lu(k,2151) - lu(k,2162) = lu(k,2162) - lu(k,1240) * lu(k,2151) - lu(k,2163) = lu(k,2163) - lu(k,1241) * lu(k,2151) - lu(k,2164) = lu(k,2164) - lu(k,1242) * lu(k,2151) - lu(k,2166) = lu(k,2166) - lu(k,1243) * lu(k,2151) - lu(k,2167) = lu(k,2167) - lu(k,1244) * lu(k,2151) - lu(k,2168) = - lu(k,1245) * lu(k,2151) - lu(k,2169) = lu(k,2169) - lu(k,1246) * lu(k,2151) - lu(k,2182) = lu(k,2182) - lu(k,1235) * lu(k,2180) - lu(k,2184) = lu(k,2184) - lu(k,1236) * lu(k,2180) - lu(k,2188) = lu(k,2188) - lu(k,1237) * lu(k,2180) - lu(k,2189) = lu(k,2189) - lu(k,1238) * lu(k,2180) - lu(k,2192) = lu(k,2192) - lu(k,1239) * lu(k,2180) - lu(k,2193) = lu(k,2193) - lu(k,1240) * lu(k,2180) - lu(k,2194) = lu(k,2194) - lu(k,1241) * lu(k,2180) - lu(k,2195) = lu(k,2195) - lu(k,1242) * lu(k,2180) - lu(k,2197) = lu(k,2197) - lu(k,1243) * lu(k,2180) - lu(k,2198) = lu(k,2198) - lu(k,1244) * lu(k,2180) - lu(k,2199) = lu(k,2199) - lu(k,1245) * lu(k,2180) - lu(k,2200) = lu(k,2200) - lu(k,1246) * lu(k,2180) - lu(k,2243) = lu(k,2243) - lu(k,1235) * lu(k,2236) - lu(k,2245) = lu(k,2245) - lu(k,1236) * lu(k,2236) - lu(k,2249) = lu(k,2249) - lu(k,1237) * lu(k,2236) - lu(k,2250) = lu(k,2250) - lu(k,1238) * lu(k,2236) - lu(k,2253) = lu(k,2253) - lu(k,1239) * lu(k,2236) - lu(k,2254) = lu(k,2254) - lu(k,1240) * lu(k,2236) - lu(k,2255) = lu(k,2255) - lu(k,1241) * lu(k,2236) - lu(k,2256) = lu(k,2256) - lu(k,1242) * lu(k,2236) - lu(k,2258) = lu(k,2258) - lu(k,1243) * lu(k,2236) - lu(k,2259) = lu(k,2259) - lu(k,1244) * lu(k,2236) - lu(k,2260) = lu(k,2260) - lu(k,1245) * lu(k,2236) - lu(k,2261) = lu(k,2261) - lu(k,1246) * lu(k,2236) - lu(k,2269) = - lu(k,1235) * lu(k,2267) - lu(k,2271) = lu(k,2271) - lu(k,1236) * lu(k,2267) - lu(k,2275) = lu(k,2275) - lu(k,1237) * lu(k,2267) - lu(k,2276) = - lu(k,1238) * lu(k,2267) - lu(k,2279) = - lu(k,1239) * lu(k,2267) - lu(k,2280) = - lu(k,1240) * lu(k,2267) - lu(k,2281) = - lu(k,1241) * lu(k,2267) - lu(k,2282) = lu(k,2282) - lu(k,1242) * lu(k,2267) - lu(k,2284) = - lu(k,1243) * lu(k,2267) - lu(k,2285) = lu(k,2285) - lu(k,1244) * lu(k,2267) - lu(k,2286) = - lu(k,1245) * lu(k,2267) - lu(k,2287) = lu(k,2287) - lu(k,1246) * lu(k,2267) - lu(k,1258) = 1._r8 / lu(k,1258) - lu(k,1259) = lu(k,1259) * lu(k,1258) - lu(k,1260) = lu(k,1260) * lu(k,1258) - lu(k,1261) = lu(k,1261) * lu(k,1258) - lu(k,1262) = lu(k,1262) * lu(k,1258) - lu(k,1263) = lu(k,1263) * lu(k,1258) - lu(k,1264) = lu(k,1264) * lu(k,1258) - lu(k,1265) = lu(k,1265) * lu(k,1258) - lu(k,1266) = lu(k,1266) * lu(k,1258) - lu(k,1267) = lu(k,1267) * lu(k,1258) - lu(k,1268) = lu(k,1268) * lu(k,1258) - lu(k,1269) = lu(k,1269) * lu(k,1258) - lu(k,1270) = lu(k,1270) * lu(k,1258) - lu(k,1271) = lu(k,1271) * lu(k,1258) - lu(k,1272) = lu(k,1272) * lu(k,1258) - lu(k,1273) = lu(k,1273) * lu(k,1258) - lu(k,1385) = lu(k,1385) - lu(k,1259) * lu(k,1383) - lu(k,1386) = lu(k,1386) - lu(k,1260) * lu(k,1383) - lu(k,1387) = lu(k,1387) - lu(k,1261) * lu(k,1383) - lu(k,1388) = lu(k,1388) - lu(k,1262) * lu(k,1383) - lu(k,1390) = lu(k,1390) - lu(k,1263) * lu(k,1383) - lu(k,1391) = lu(k,1391) - lu(k,1264) * lu(k,1383) - lu(k,1392) = lu(k,1392) - lu(k,1265) * lu(k,1383) - lu(k,1393) = lu(k,1393) - lu(k,1266) * lu(k,1383) - lu(k,1394) = lu(k,1394) - lu(k,1267) * lu(k,1383) - lu(k,1395) = lu(k,1395) - lu(k,1268) * lu(k,1383) - lu(k,1396) = lu(k,1396) - lu(k,1269) * lu(k,1383) - lu(k,1397) = lu(k,1397) - lu(k,1270) * lu(k,1383) - lu(k,1398) = lu(k,1398) - lu(k,1271) * lu(k,1383) - lu(k,1399) = lu(k,1399) - lu(k,1272) * lu(k,1383) - lu(k,1400) = lu(k,1400) - lu(k,1273) * lu(k,1383) - lu(k,1682) = lu(k,1682) - lu(k,1259) * lu(k,1680) - lu(k,1683) = lu(k,1683) - lu(k,1260) * lu(k,1680) - lu(k,1684) = lu(k,1684) - lu(k,1261) * lu(k,1680) - lu(k,1685) = lu(k,1685) - lu(k,1262) * lu(k,1680) - lu(k,1690) = lu(k,1690) - lu(k,1263) * lu(k,1680) - lu(k,1691) = lu(k,1691) - lu(k,1264) * lu(k,1680) - lu(k,1693) = lu(k,1693) - lu(k,1265) * lu(k,1680) - lu(k,1695) = lu(k,1695) - lu(k,1266) * lu(k,1680) - lu(k,1696) = lu(k,1696) - lu(k,1267) * lu(k,1680) - lu(k,1697) = lu(k,1697) - lu(k,1268) * lu(k,1680) - lu(k,1698) = lu(k,1698) - lu(k,1269) * lu(k,1680) - lu(k,1700) = lu(k,1700) - lu(k,1270) * lu(k,1680) - lu(k,1703) = lu(k,1703) - lu(k,1271) * lu(k,1680) - lu(k,1704) = lu(k,1704) - lu(k,1272) * lu(k,1680) - lu(k,1705) = lu(k,1705) - lu(k,1273) * lu(k,1680) - lu(k,1766) = lu(k,1766) - lu(k,1259) * lu(k,1764) - lu(k,1767) = lu(k,1767) - lu(k,1260) * lu(k,1764) - lu(k,1768) = lu(k,1768) - lu(k,1261) * lu(k,1764) - lu(k,1769) = lu(k,1769) - lu(k,1262) * lu(k,1764) - lu(k,1773) = lu(k,1773) - lu(k,1263) * lu(k,1764) - lu(k,1774) = lu(k,1774) - lu(k,1264) * lu(k,1764) - lu(k,1776) = lu(k,1776) - lu(k,1265) * lu(k,1764) - lu(k,1778) = lu(k,1778) - lu(k,1266) * lu(k,1764) - lu(k,1779) = lu(k,1779) - lu(k,1267) * lu(k,1764) - lu(k,1780) = lu(k,1780) - lu(k,1268) * lu(k,1764) - lu(k,1781) = lu(k,1781) - lu(k,1269) * lu(k,1764) - lu(k,1783) = lu(k,1783) - lu(k,1270) * lu(k,1764) - lu(k,1786) = lu(k,1786) - lu(k,1271) * lu(k,1764) - lu(k,1787) = lu(k,1787) - lu(k,1272) * lu(k,1764) - lu(k,1788) = lu(k,1788) - lu(k,1273) * lu(k,1764) - lu(k,1819) = lu(k,1819) - lu(k,1259) * lu(k,1817) - lu(k,1820) = lu(k,1820) - lu(k,1260) * lu(k,1817) - lu(k,1821) = lu(k,1821) - lu(k,1261) * lu(k,1817) - lu(k,1822) = lu(k,1822) - lu(k,1262) * lu(k,1817) - lu(k,1825) = lu(k,1825) - lu(k,1263) * lu(k,1817) - lu(k,1826) = lu(k,1826) - lu(k,1264) * lu(k,1817) - lu(k,1828) = lu(k,1828) - lu(k,1265) * lu(k,1817) - lu(k,1830) = lu(k,1830) - lu(k,1266) * lu(k,1817) - lu(k,1831) = lu(k,1831) - lu(k,1267) * lu(k,1817) - lu(k,1832) = lu(k,1832) - lu(k,1268) * lu(k,1817) - lu(k,1833) = lu(k,1833) - lu(k,1269) * lu(k,1817) - lu(k,1835) = lu(k,1835) - lu(k,1270) * lu(k,1817) - lu(k,1838) = lu(k,1838) - lu(k,1271) * lu(k,1817) - lu(k,1839) = lu(k,1839) - lu(k,1272) * lu(k,1817) - lu(k,1840) = lu(k,1840) - lu(k,1273) * lu(k,1817) - lu(k,1910) = lu(k,1910) - lu(k,1259) * lu(k,1908) - lu(k,1911) = lu(k,1911) - lu(k,1260) * lu(k,1908) - lu(k,1912) = lu(k,1912) - lu(k,1261) * lu(k,1908) - lu(k,1913) = lu(k,1913) - lu(k,1262) * lu(k,1908) - lu(k,1917) = lu(k,1917) - lu(k,1263) * lu(k,1908) - lu(k,1918) = lu(k,1918) - lu(k,1264) * lu(k,1908) - lu(k,1920) = lu(k,1920) - lu(k,1265) * lu(k,1908) - lu(k,1922) = lu(k,1922) - lu(k,1266) * lu(k,1908) - lu(k,1923) = lu(k,1923) - lu(k,1267) * lu(k,1908) - lu(k,1924) = lu(k,1924) - lu(k,1268) * lu(k,1908) - lu(k,1925) = lu(k,1925) - lu(k,1269) * lu(k,1908) - lu(k,1927) = lu(k,1927) - lu(k,1270) * lu(k,1908) - lu(k,1930) = lu(k,1930) - lu(k,1271) * lu(k,1908) - lu(k,1931) = lu(k,1931) - lu(k,1272) * lu(k,1908) - lu(k,1932) = lu(k,1932) - lu(k,1273) * lu(k,1908) - lu(k,2099) = lu(k,2099) - lu(k,1259) * lu(k,2097) - lu(k,2100) = lu(k,2100) - lu(k,1260) * lu(k,2097) - lu(k,2101) = lu(k,2101) - lu(k,1261) * lu(k,2097) - lu(k,2102) = lu(k,2102) - lu(k,1262) * lu(k,2097) - lu(k,2107) = lu(k,2107) - lu(k,1263) * lu(k,2097) - lu(k,2108) = lu(k,2108) - lu(k,1264) * lu(k,2097) - lu(k,2110) = lu(k,2110) - lu(k,1265) * lu(k,2097) - lu(k,2112) = lu(k,2112) - lu(k,1266) * lu(k,2097) - lu(k,2113) = lu(k,2113) - lu(k,1267) * lu(k,2097) - lu(k,2114) = lu(k,2114) - lu(k,1268) * lu(k,2097) - lu(k,2115) = lu(k,2115) - lu(k,1269) * lu(k,2097) - lu(k,2117) = lu(k,2117) - lu(k,1270) * lu(k,2097) - lu(k,2120) = lu(k,2120) - lu(k,1271) * lu(k,2097) - lu(k,2121) = lu(k,2121) - lu(k,1272) * lu(k,2097) - lu(k,2122) = lu(k,2122) - lu(k,1273) * lu(k,2097) - lu(k,2239) = lu(k,2239) - lu(k,1259) * lu(k,2237) - lu(k,2240) = lu(k,2240) - lu(k,1260) * lu(k,2237) - lu(k,2241) = lu(k,2241) - lu(k,1261) * lu(k,2237) - lu(k,2242) = lu(k,2242) - lu(k,1262) * lu(k,2237) - lu(k,2246) = lu(k,2246) - lu(k,1263) * lu(k,2237) - lu(k,2247) = lu(k,2247) - lu(k,1264) * lu(k,2237) - lu(k,2249) = lu(k,2249) - lu(k,1265) * lu(k,2237) - lu(k,2251) = lu(k,2251) - lu(k,1266) * lu(k,2237) - lu(k,2252) = lu(k,2252) - lu(k,1267) * lu(k,2237) - lu(k,2253) = lu(k,2253) - lu(k,1268) * lu(k,2237) - lu(k,2254) = lu(k,2254) - lu(k,1269) * lu(k,2237) - lu(k,2256) = lu(k,2256) - lu(k,1270) * lu(k,2237) - lu(k,2259) = lu(k,2259) - lu(k,1271) * lu(k,2237) - lu(k,2260) = lu(k,2260) - lu(k,1272) * lu(k,2237) - lu(k,2261) = lu(k,2261) - lu(k,1273) * lu(k,2237) - end do - end subroutine lu_fac25 - subroutine lu_fac26( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1290) = 1._r8 / lu(k,1290) - lu(k,1291) = lu(k,1291) * lu(k,1290) - lu(k,1292) = lu(k,1292) * lu(k,1290) - lu(k,1293) = lu(k,1293) * lu(k,1290) - lu(k,1294) = lu(k,1294) * lu(k,1290) - lu(k,1295) = lu(k,1295) * lu(k,1290) - lu(k,1296) = lu(k,1296) * lu(k,1290) - lu(k,1297) = lu(k,1297) * lu(k,1290) - lu(k,1298) = lu(k,1298) * lu(k,1290) - lu(k,1299) = lu(k,1299) * lu(k,1290) - lu(k,1300) = lu(k,1300) * lu(k,1290) - lu(k,1301) = lu(k,1301) * lu(k,1290) - lu(k,1302) = lu(k,1302) * lu(k,1290) - lu(k,1303) = lu(k,1303) * lu(k,1290) - lu(k,1304) = lu(k,1304) * lu(k,1290) - lu(k,1305) = lu(k,1305) * lu(k,1290) - lu(k,1385) = lu(k,1385) - lu(k,1291) * lu(k,1384) - lu(k,1386) = lu(k,1386) - lu(k,1292) * lu(k,1384) - lu(k,1387) = lu(k,1387) - lu(k,1293) * lu(k,1384) - lu(k,1388) = lu(k,1388) - lu(k,1294) * lu(k,1384) - lu(k,1390) = lu(k,1390) - lu(k,1295) * lu(k,1384) - lu(k,1391) = lu(k,1391) - lu(k,1296) * lu(k,1384) - lu(k,1392) = lu(k,1392) - lu(k,1297) * lu(k,1384) - lu(k,1393) = lu(k,1393) - lu(k,1298) * lu(k,1384) - lu(k,1394) = lu(k,1394) - lu(k,1299) * lu(k,1384) - lu(k,1395) = lu(k,1395) - lu(k,1300) * lu(k,1384) - lu(k,1396) = lu(k,1396) - lu(k,1301) * lu(k,1384) - lu(k,1397) = lu(k,1397) - lu(k,1302) * lu(k,1384) - lu(k,1398) = lu(k,1398) - lu(k,1303) * lu(k,1384) - lu(k,1399) = lu(k,1399) - lu(k,1304) * lu(k,1384) - lu(k,1400) = lu(k,1400) - lu(k,1305) * lu(k,1384) - lu(k,1682) = lu(k,1682) - lu(k,1291) * lu(k,1681) - lu(k,1683) = lu(k,1683) - lu(k,1292) * lu(k,1681) - lu(k,1684) = lu(k,1684) - lu(k,1293) * lu(k,1681) - lu(k,1685) = lu(k,1685) - lu(k,1294) * lu(k,1681) - lu(k,1690) = lu(k,1690) - lu(k,1295) * lu(k,1681) - lu(k,1691) = lu(k,1691) - lu(k,1296) * lu(k,1681) - lu(k,1693) = lu(k,1693) - lu(k,1297) * lu(k,1681) - lu(k,1695) = lu(k,1695) - lu(k,1298) * lu(k,1681) - lu(k,1696) = lu(k,1696) - lu(k,1299) * lu(k,1681) - lu(k,1697) = lu(k,1697) - lu(k,1300) * lu(k,1681) - lu(k,1698) = lu(k,1698) - lu(k,1301) * lu(k,1681) - lu(k,1700) = lu(k,1700) - lu(k,1302) * lu(k,1681) - lu(k,1703) = lu(k,1703) - lu(k,1303) * lu(k,1681) - lu(k,1704) = lu(k,1704) - lu(k,1304) * lu(k,1681) - lu(k,1705) = lu(k,1705) - lu(k,1305) * lu(k,1681) - lu(k,1766) = lu(k,1766) - lu(k,1291) * lu(k,1765) - lu(k,1767) = lu(k,1767) - lu(k,1292) * lu(k,1765) - lu(k,1768) = lu(k,1768) - lu(k,1293) * lu(k,1765) - lu(k,1769) = lu(k,1769) - lu(k,1294) * lu(k,1765) - lu(k,1773) = lu(k,1773) - lu(k,1295) * lu(k,1765) - lu(k,1774) = lu(k,1774) - lu(k,1296) * lu(k,1765) - lu(k,1776) = lu(k,1776) - lu(k,1297) * lu(k,1765) - lu(k,1778) = lu(k,1778) - lu(k,1298) * lu(k,1765) - lu(k,1779) = lu(k,1779) - lu(k,1299) * lu(k,1765) - lu(k,1780) = lu(k,1780) - lu(k,1300) * lu(k,1765) - lu(k,1781) = lu(k,1781) - lu(k,1301) * lu(k,1765) - lu(k,1783) = lu(k,1783) - lu(k,1302) * lu(k,1765) - lu(k,1786) = lu(k,1786) - lu(k,1303) * lu(k,1765) - lu(k,1787) = lu(k,1787) - lu(k,1304) * lu(k,1765) - lu(k,1788) = lu(k,1788) - lu(k,1305) * lu(k,1765) - lu(k,1819) = lu(k,1819) - lu(k,1291) * lu(k,1818) - lu(k,1820) = lu(k,1820) - lu(k,1292) * lu(k,1818) - lu(k,1821) = lu(k,1821) - lu(k,1293) * lu(k,1818) - lu(k,1822) = lu(k,1822) - lu(k,1294) * lu(k,1818) - lu(k,1825) = lu(k,1825) - lu(k,1295) * lu(k,1818) - lu(k,1826) = lu(k,1826) - lu(k,1296) * lu(k,1818) - lu(k,1828) = lu(k,1828) - lu(k,1297) * lu(k,1818) - lu(k,1830) = lu(k,1830) - lu(k,1298) * lu(k,1818) - lu(k,1831) = lu(k,1831) - lu(k,1299) * lu(k,1818) - lu(k,1832) = lu(k,1832) - lu(k,1300) * lu(k,1818) - lu(k,1833) = lu(k,1833) - lu(k,1301) * lu(k,1818) - lu(k,1835) = lu(k,1835) - lu(k,1302) * lu(k,1818) - lu(k,1838) = lu(k,1838) - lu(k,1303) * lu(k,1818) - lu(k,1839) = lu(k,1839) - lu(k,1304) * lu(k,1818) - lu(k,1840) = lu(k,1840) - lu(k,1305) * lu(k,1818) - lu(k,1910) = lu(k,1910) - lu(k,1291) * lu(k,1909) - lu(k,1911) = lu(k,1911) - lu(k,1292) * lu(k,1909) - lu(k,1912) = lu(k,1912) - lu(k,1293) * lu(k,1909) - lu(k,1913) = lu(k,1913) - lu(k,1294) * lu(k,1909) - lu(k,1917) = lu(k,1917) - lu(k,1295) * lu(k,1909) - lu(k,1918) = lu(k,1918) - lu(k,1296) * lu(k,1909) - lu(k,1920) = lu(k,1920) - lu(k,1297) * lu(k,1909) - lu(k,1922) = lu(k,1922) - lu(k,1298) * lu(k,1909) - lu(k,1923) = lu(k,1923) - lu(k,1299) * lu(k,1909) - lu(k,1924) = lu(k,1924) - lu(k,1300) * lu(k,1909) - lu(k,1925) = lu(k,1925) - lu(k,1301) * lu(k,1909) - lu(k,1927) = lu(k,1927) - lu(k,1302) * lu(k,1909) - lu(k,1930) = lu(k,1930) - lu(k,1303) * lu(k,1909) - lu(k,1931) = lu(k,1931) - lu(k,1304) * lu(k,1909) - lu(k,1932) = lu(k,1932) - lu(k,1305) * lu(k,1909) - lu(k,2099) = lu(k,2099) - lu(k,1291) * lu(k,2098) - lu(k,2100) = lu(k,2100) - lu(k,1292) * lu(k,2098) - lu(k,2101) = lu(k,2101) - lu(k,1293) * lu(k,2098) - lu(k,2102) = lu(k,2102) - lu(k,1294) * lu(k,2098) - lu(k,2107) = lu(k,2107) - lu(k,1295) * lu(k,2098) - lu(k,2108) = lu(k,2108) - lu(k,1296) * lu(k,2098) - lu(k,2110) = lu(k,2110) - lu(k,1297) * lu(k,2098) - lu(k,2112) = lu(k,2112) - lu(k,1298) * lu(k,2098) - lu(k,2113) = lu(k,2113) - lu(k,1299) * lu(k,2098) - lu(k,2114) = lu(k,2114) - lu(k,1300) * lu(k,2098) - lu(k,2115) = lu(k,2115) - lu(k,1301) * lu(k,2098) - lu(k,2117) = lu(k,2117) - lu(k,1302) * lu(k,2098) - lu(k,2120) = lu(k,2120) - lu(k,1303) * lu(k,2098) - lu(k,2121) = lu(k,2121) - lu(k,1304) * lu(k,2098) - lu(k,2122) = lu(k,2122) - lu(k,1305) * lu(k,2098) - lu(k,2239) = lu(k,2239) - lu(k,1291) * lu(k,2238) - lu(k,2240) = lu(k,2240) - lu(k,1292) * lu(k,2238) - lu(k,2241) = lu(k,2241) - lu(k,1293) * lu(k,2238) - lu(k,2242) = lu(k,2242) - lu(k,1294) * lu(k,2238) - lu(k,2246) = lu(k,2246) - lu(k,1295) * lu(k,2238) - lu(k,2247) = lu(k,2247) - lu(k,1296) * lu(k,2238) - lu(k,2249) = lu(k,2249) - lu(k,1297) * lu(k,2238) - lu(k,2251) = lu(k,2251) - lu(k,1298) * lu(k,2238) - lu(k,2252) = lu(k,2252) - lu(k,1299) * lu(k,2238) - lu(k,2253) = lu(k,2253) - lu(k,1300) * lu(k,2238) - lu(k,2254) = lu(k,2254) - lu(k,1301) * lu(k,2238) - lu(k,2256) = lu(k,2256) - lu(k,1302) * lu(k,2238) - lu(k,2259) = lu(k,2259) - lu(k,1303) * lu(k,2238) - lu(k,2260) = lu(k,2260) - lu(k,1304) * lu(k,2238) - lu(k,2261) = lu(k,2261) - lu(k,1305) * lu(k,2238) - lu(k,1313) = 1._r8 / lu(k,1313) - lu(k,1314) = lu(k,1314) * lu(k,1313) - lu(k,1315) = lu(k,1315) * lu(k,1313) - lu(k,1316) = lu(k,1316) * lu(k,1313) - lu(k,1317) = lu(k,1317) * lu(k,1313) - lu(k,1318) = lu(k,1318) * lu(k,1313) - lu(k,1319) = lu(k,1319) * lu(k,1313) - lu(k,1320) = lu(k,1320) * lu(k,1313) - lu(k,1321) = lu(k,1321) * lu(k,1313) - lu(k,1322) = lu(k,1322) * lu(k,1313) - lu(k,1323) = lu(k,1323) * lu(k,1313) - lu(k,1324) = lu(k,1324) * lu(k,1313) - lu(k,1325) = lu(k,1325) * lu(k,1313) - lu(k,1335) = - lu(k,1314) * lu(k,1333) - lu(k,1336) = lu(k,1336) - lu(k,1315) * lu(k,1333) - lu(k,1338) = lu(k,1338) - lu(k,1316) * lu(k,1333) - lu(k,1339) = lu(k,1339) - lu(k,1317) * lu(k,1333) - lu(k,1340) = lu(k,1340) - lu(k,1318) * lu(k,1333) - lu(k,1341) = lu(k,1341) - lu(k,1319) * lu(k,1333) - lu(k,1342) = lu(k,1342) - lu(k,1320) * lu(k,1333) - lu(k,1343) = lu(k,1343) - lu(k,1321) * lu(k,1333) - lu(k,1344) = lu(k,1344) - lu(k,1322) * lu(k,1333) - lu(k,1345) = lu(k,1345) - lu(k,1323) * lu(k,1333) - lu(k,1346) = lu(k,1346) - lu(k,1324) * lu(k,1333) - lu(k,1348) = lu(k,1348) - lu(k,1325) * lu(k,1333) - lu(k,1387) = lu(k,1387) - lu(k,1314) * lu(k,1385) - lu(k,1388) = lu(k,1388) - lu(k,1315) * lu(k,1385) - lu(k,1390) = lu(k,1390) - lu(k,1316) * lu(k,1385) - lu(k,1391) = lu(k,1391) - lu(k,1317) * lu(k,1385) - lu(k,1392) = lu(k,1392) - lu(k,1318) * lu(k,1385) - lu(k,1393) = lu(k,1393) - lu(k,1319) * lu(k,1385) - lu(k,1394) = lu(k,1394) - lu(k,1320) * lu(k,1385) - lu(k,1395) = lu(k,1395) - lu(k,1321) * lu(k,1385) - lu(k,1396) = lu(k,1396) - lu(k,1322) * lu(k,1385) - lu(k,1397) = lu(k,1397) - lu(k,1323) * lu(k,1385) - lu(k,1398) = lu(k,1398) - lu(k,1324) * lu(k,1385) - lu(k,1400) = lu(k,1400) - lu(k,1325) * lu(k,1385) - lu(k,1684) = lu(k,1684) - lu(k,1314) * lu(k,1682) - lu(k,1685) = lu(k,1685) - lu(k,1315) * lu(k,1682) - lu(k,1690) = lu(k,1690) - lu(k,1316) * lu(k,1682) - lu(k,1691) = lu(k,1691) - lu(k,1317) * lu(k,1682) - lu(k,1693) = lu(k,1693) - lu(k,1318) * lu(k,1682) - lu(k,1695) = lu(k,1695) - lu(k,1319) * lu(k,1682) - lu(k,1696) = lu(k,1696) - lu(k,1320) * lu(k,1682) - lu(k,1697) = lu(k,1697) - lu(k,1321) * lu(k,1682) - lu(k,1698) = lu(k,1698) - lu(k,1322) * lu(k,1682) - lu(k,1700) = lu(k,1700) - lu(k,1323) * lu(k,1682) - lu(k,1703) = lu(k,1703) - lu(k,1324) * lu(k,1682) - lu(k,1705) = lu(k,1705) - lu(k,1325) * lu(k,1682) - lu(k,1768) = lu(k,1768) - lu(k,1314) * lu(k,1766) - lu(k,1769) = lu(k,1769) - lu(k,1315) * lu(k,1766) - lu(k,1773) = lu(k,1773) - lu(k,1316) * lu(k,1766) - lu(k,1774) = lu(k,1774) - lu(k,1317) * lu(k,1766) - lu(k,1776) = lu(k,1776) - lu(k,1318) * lu(k,1766) - lu(k,1778) = lu(k,1778) - lu(k,1319) * lu(k,1766) - lu(k,1779) = lu(k,1779) - lu(k,1320) * lu(k,1766) - lu(k,1780) = lu(k,1780) - lu(k,1321) * lu(k,1766) - lu(k,1781) = lu(k,1781) - lu(k,1322) * lu(k,1766) - lu(k,1783) = lu(k,1783) - lu(k,1323) * lu(k,1766) - lu(k,1786) = lu(k,1786) - lu(k,1324) * lu(k,1766) - lu(k,1788) = lu(k,1788) - lu(k,1325) * lu(k,1766) - lu(k,1821) = lu(k,1821) - lu(k,1314) * lu(k,1819) - lu(k,1822) = lu(k,1822) - lu(k,1315) * lu(k,1819) - lu(k,1825) = lu(k,1825) - lu(k,1316) * lu(k,1819) - lu(k,1826) = lu(k,1826) - lu(k,1317) * lu(k,1819) - lu(k,1828) = lu(k,1828) - lu(k,1318) * lu(k,1819) - lu(k,1830) = lu(k,1830) - lu(k,1319) * lu(k,1819) - lu(k,1831) = lu(k,1831) - lu(k,1320) * lu(k,1819) - lu(k,1832) = lu(k,1832) - lu(k,1321) * lu(k,1819) - lu(k,1833) = lu(k,1833) - lu(k,1322) * lu(k,1819) - lu(k,1835) = lu(k,1835) - lu(k,1323) * lu(k,1819) - lu(k,1838) = lu(k,1838) - lu(k,1324) * lu(k,1819) - lu(k,1840) = lu(k,1840) - lu(k,1325) * lu(k,1819) - lu(k,1912) = lu(k,1912) - lu(k,1314) * lu(k,1910) - lu(k,1913) = lu(k,1913) - lu(k,1315) * lu(k,1910) - lu(k,1917) = lu(k,1917) - lu(k,1316) * lu(k,1910) - lu(k,1918) = lu(k,1918) - lu(k,1317) * lu(k,1910) - lu(k,1920) = lu(k,1920) - lu(k,1318) * lu(k,1910) - lu(k,1922) = lu(k,1922) - lu(k,1319) * lu(k,1910) - lu(k,1923) = lu(k,1923) - lu(k,1320) * lu(k,1910) - lu(k,1924) = lu(k,1924) - lu(k,1321) * lu(k,1910) - lu(k,1925) = lu(k,1925) - lu(k,1322) * lu(k,1910) - lu(k,1927) = lu(k,1927) - lu(k,1323) * lu(k,1910) - lu(k,1930) = lu(k,1930) - lu(k,1324) * lu(k,1910) - lu(k,1932) = lu(k,1932) - lu(k,1325) * lu(k,1910) - lu(k,2101) = lu(k,2101) - lu(k,1314) * lu(k,2099) - lu(k,2102) = lu(k,2102) - lu(k,1315) * lu(k,2099) - lu(k,2107) = lu(k,2107) - lu(k,1316) * lu(k,2099) - lu(k,2108) = lu(k,2108) - lu(k,1317) * lu(k,2099) - lu(k,2110) = lu(k,2110) - lu(k,1318) * lu(k,2099) - lu(k,2112) = lu(k,2112) - lu(k,1319) * lu(k,2099) - lu(k,2113) = lu(k,2113) - lu(k,1320) * lu(k,2099) - lu(k,2114) = lu(k,2114) - lu(k,1321) * lu(k,2099) - lu(k,2115) = lu(k,2115) - lu(k,1322) * lu(k,2099) - lu(k,2117) = lu(k,2117) - lu(k,1323) * lu(k,2099) - lu(k,2120) = lu(k,2120) - lu(k,1324) * lu(k,2099) - lu(k,2122) = lu(k,2122) - lu(k,1325) * lu(k,2099) - lu(k,2241) = lu(k,2241) - lu(k,1314) * lu(k,2239) - lu(k,2242) = lu(k,2242) - lu(k,1315) * lu(k,2239) - lu(k,2246) = lu(k,2246) - lu(k,1316) * lu(k,2239) - lu(k,2247) = lu(k,2247) - lu(k,1317) * lu(k,2239) - lu(k,2249) = lu(k,2249) - lu(k,1318) * lu(k,2239) - lu(k,2251) = lu(k,2251) - lu(k,1319) * lu(k,2239) - lu(k,2252) = lu(k,2252) - lu(k,1320) * lu(k,2239) - lu(k,2253) = lu(k,2253) - lu(k,1321) * lu(k,2239) - lu(k,2254) = lu(k,2254) - lu(k,1322) * lu(k,2239) - lu(k,2256) = lu(k,2256) - lu(k,1323) * lu(k,2239) - lu(k,2259) = lu(k,2259) - lu(k,1324) * lu(k,2239) - lu(k,2261) = lu(k,2261) - lu(k,1325) * lu(k,2239) - lu(k,1334) = 1._r8 / lu(k,1334) - lu(k,1335) = lu(k,1335) * lu(k,1334) - lu(k,1336) = lu(k,1336) * lu(k,1334) - lu(k,1337) = lu(k,1337) * lu(k,1334) - lu(k,1338) = lu(k,1338) * lu(k,1334) - lu(k,1339) = lu(k,1339) * lu(k,1334) - lu(k,1340) = lu(k,1340) * lu(k,1334) - lu(k,1341) = lu(k,1341) * lu(k,1334) - lu(k,1342) = lu(k,1342) * lu(k,1334) - lu(k,1343) = lu(k,1343) * lu(k,1334) - lu(k,1344) = lu(k,1344) * lu(k,1334) - lu(k,1345) = lu(k,1345) * lu(k,1334) - lu(k,1346) = lu(k,1346) * lu(k,1334) - lu(k,1347) = lu(k,1347) * lu(k,1334) - lu(k,1348) = lu(k,1348) * lu(k,1334) - lu(k,1387) = lu(k,1387) - lu(k,1335) * lu(k,1386) - lu(k,1388) = lu(k,1388) - lu(k,1336) * lu(k,1386) - lu(k,1389) = - lu(k,1337) * lu(k,1386) - lu(k,1390) = lu(k,1390) - lu(k,1338) * lu(k,1386) - lu(k,1391) = lu(k,1391) - lu(k,1339) * lu(k,1386) - lu(k,1392) = lu(k,1392) - lu(k,1340) * lu(k,1386) - lu(k,1393) = lu(k,1393) - lu(k,1341) * lu(k,1386) - lu(k,1394) = lu(k,1394) - lu(k,1342) * lu(k,1386) - lu(k,1395) = lu(k,1395) - lu(k,1343) * lu(k,1386) - lu(k,1396) = lu(k,1396) - lu(k,1344) * lu(k,1386) - lu(k,1397) = lu(k,1397) - lu(k,1345) * lu(k,1386) - lu(k,1398) = lu(k,1398) - lu(k,1346) * lu(k,1386) - lu(k,1399) = lu(k,1399) - lu(k,1347) * lu(k,1386) - lu(k,1400) = lu(k,1400) - lu(k,1348) * lu(k,1386) - lu(k,1684) = lu(k,1684) - lu(k,1335) * lu(k,1683) - lu(k,1685) = lu(k,1685) - lu(k,1336) * lu(k,1683) - lu(k,1688) = lu(k,1688) - lu(k,1337) * lu(k,1683) - lu(k,1690) = lu(k,1690) - lu(k,1338) * lu(k,1683) - lu(k,1691) = lu(k,1691) - lu(k,1339) * lu(k,1683) - lu(k,1693) = lu(k,1693) - lu(k,1340) * lu(k,1683) - lu(k,1695) = lu(k,1695) - lu(k,1341) * lu(k,1683) - lu(k,1696) = lu(k,1696) - lu(k,1342) * lu(k,1683) - lu(k,1697) = lu(k,1697) - lu(k,1343) * lu(k,1683) - lu(k,1698) = lu(k,1698) - lu(k,1344) * lu(k,1683) - lu(k,1700) = lu(k,1700) - lu(k,1345) * lu(k,1683) - lu(k,1703) = lu(k,1703) - lu(k,1346) * lu(k,1683) - lu(k,1704) = lu(k,1704) - lu(k,1347) * lu(k,1683) - lu(k,1705) = lu(k,1705) - lu(k,1348) * lu(k,1683) - lu(k,1768) = lu(k,1768) - lu(k,1335) * lu(k,1767) - lu(k,1769) = lu(k,1769) - lu(k,1336) * lu(k,1767) - lu(k,1771) = lu(k,1771) - lu(k,1337) * lu(k,1767) - lu(k,1773) = lu(k,1773) - lu(k,1338) * lu(k,1767) - lu(k,1774) = lu(k,1774) - lu(k,1339) * lu(k,1767) - lu(k,1776) = lu(k,1776) - lu(k,1340) * lu(k,1767) - lu(k,1778) = lu(k,1778) - lu(k,1341) * lu(k,1767) - lu(k,1779) = lu(k,1779) - lu(k,1342) * lu(k,1767) - lu(k,1780) = lu(k,1780) - lu(k,1343) * lu(k,1767) - lu(k,1781) = lu(k,1781) - lu(k,1344) * lu(k,1767) - lu(k,1783) = lu(k,1783) - lu(k,1345) * lu(k,1767) - lu(k,1786) = lu(k,1786) - lu(k,1346) * lu(k,1767) - lu(k,1787) = lu(k,1787) - lu(k,1347) * lu(k,1767) - lu(k,1788) = lu(k,1788) - lu(k,1348) * lu(k,1767) - lu(k,1821) = lu(k,1821) - lu(k,1335) * lu(k,1820) - lu(k,1822) = lu(k,1822) - lu(k,1336) * lu(k,1820) - lu(k,1823) = - lu(k,1337) * lu(k,1820) - lu(k,1825) = lu(k,1825) - lu(k,1338) * lu(k,1820) - lu(k,1826) = lu(k,1826) - lu(k,1339) * lu(k,1820) - lu(k,1828) = lu(k,1828) - lu(k,1340) * lu(k,1820) - lu(k,1830) = lu(k,1830) - lu(k,1341) * lu(k,1820) - lu(k,1831) = lu(k,1831) - lu(k,1342) * lu(k,1820) - lu(k,1832) = lu(k,1832) - lu(k,1343) * lu(k,1820) - lu(k,1833) = lu(k,1833) - lu(k,1344) * lu(k,1820) - lu(k,1835) = lu(k,1835) - lu(k,1345) * lu(k,1820) - lu(k,1838) = lu(k,1838) - lu(k,1346) * lu(k,1820) - lu(k,1839) = lu(k,1839) - lu(k,1347) * lu(k,1820) - lu(k,1840) = lu(k,1840) - lu(k,1348) * lu(k,1820) - lu(k,1912) = lu(k,1912) - lu(k,1335) * lu(k,1911) - lu(k,1913) = lu(k,1913) - lu(k,1336) * lu(k,1911) - lu(k,1915) = - lu(k,1337) * lu(k,1911) - lu(k,1917) = lu(k,1917) - lu(k,1338) * lu(k,1911) - lu(k,1918) = lu(k,1918) - lu(k,1339) * lu(k,1911) - lu(k,1920) = lu(k,1920) - lu(k,1340) * lu(k,1911) - lu(k,1922) = lu(k,1922) - lu(k,1341) * lu(k,1911) - lu(k,1923) = lu(k,1923) - lu(k,1342) * lu(k,1911) - lu(k,1924) = lu(k,1924) - lu(k,1343) * lu(k,1911) - lu(k,1925) = lu(k,1925) - lu(k,1344) * lu(k,1911) - lu(k,1927) = lu(k,1927) - lu(k,1345) * lu(k,1911) - lu(k,1930) = lu(k,1930) - lu(k,1346) * lu(k,1911) - lu(k,1931) = lu(k,1931) - lu(k,1347) * lu(k,1911) - lu(k,1932) = lu(k,1932) - lu(k,1348) * lu(k,1911) - lu(k,2101) = lu(k,2101) - lu(k,1335) * lu(k,2100) - lu(k,2102) = lu(k,2102) - lu(k,1336) * lu(k,2100) - lu(k,2105) = - lu(k,1337) * lu(k,2100) - lu(k,2107) = lu(k,2107) - lu(k,1338) * lu(k,2100) - lu(k,2108) = lu(k,2108) - lu(k,1339) * lu(k,2100) - lu(k,2110) = lu(k,2110) - lu(k,1340) * lu(k,2100) - lu(k,2112) = lu(k,2112) - lu(k,1341) * lu(k,2100) - lu(k,2113) = lu(k,2113) - lu(k,1342) * lu(k,2100) - lu(k,2114) = lu(k,2114) - lu(k,1343) * lu(k,2100) - lu(k,2115) = lu(k,2115) - lu(k,1344) * lu(k,2100) - lu(k,2117) = lu(k,2117) - lu(k,1345) * lu(k,2100) - lu(k,2120) = lu(k,2120) - lu(k,1346) * lu(k,2100) - lu(k,2121) = lu(k,2121) - lu(k,1347) * lu(k,2100) - lu(k,2122) = lu(k,2122) - lu(k,1348) * lu(k,2100) - lu(k,2241) = lu(k,2241) - lu(k,1335) * lu(k,2240) - lu(k,2242) = lu(k,2242) - lu(k,1336) * lu(k,2240) - lu(k,2244) = lu(k,2244) - lu(k,1337) * lu(k,2240) - lu(k,2246) = lu(k,2246) - lu(k,1338) * lu(k,2240) - lu(k,2247) = lu(k,2247) - lu(k,1339) * lu(k,2240) - lu(k,2249) = lu(k,2249) - lu(k,1340) * lu(k,2240) - lu(k,2251) = lu(k,2251) - lu(k,1341) * lu(k,2240) - lu(k,2252) = lu(k,2252) - lu(k,1342) * lu(k,2240) - lu(k,2253) = lu(k,2253) - lu(k,1343) * lu(k,2240) - lu(k,2254) = lu(k,2254) - lu(k,1344) * lu(k,2240) - lu(k,2256) = lu(k,2256) - lu(k,1345) * lu(k,2240) - lu(k,2259) = lu(k,2259) - lu(k,1346) * lu(k,2240) - lu(k,2260) = lu(k,2260) - lu(k,1347) * lu(k,2240) - lu(k,2261) = lu(k,2261) - lu(k,1348) * lu(k,2240) - lu(k,1356) = 1._r8 / lu(k,1356) - lu(k,1357) = lu(k,1357) * lu(k,1356) - lu(k,1358) = lu(k,1358) * lu(k,1356) - lu(k,1359) = lu(k,1359) * lu(k,1356) - lu(k,1360) = lu(k,1360) * lu(k,1356) - lu(k,1361) = lu(k,1361) * lu(k,1356) - lu(k,1362) = lu(k,1362) * lu(k,1356) - lu(k,1363) = lu(k,1363) * lu(k,1356) - lu(k,1364) = lu(k,1364) * lu(k,1356) - lu(k,1365) = lu(k,1365) * lu(k,1356) - lu(k,1366) = lu(k,1366) * lu(k,1356) - lu(k,1367) = lu(k,1367) * lu(k,1356) - lu(k,1368) = lu(k,1368) * lu(k,1356) - lu(k,1388) = lu(k,1388) - lu(k,1357) * lu(k,1387) - lu(k,1390) = lu(k,1390) - lu(k,1358) * lu(k,1387) - lu(k,1391) = lu(k,1391) - lu(k,1359) * lu(k,1387) - lu(k,1392) = lu(k,1392) - lu(k,1360) * lu(k,1387) - lu(k,1393) = lu(k,1393) - lu(k,1361) * lu(k,1387) - lu(k,1394) = lu(k,1394) - lu(k,1362) * lu(k,1387) - lu(k,1395) = lu(k,1395) - lu(k,1363) * lu(k,1387) - lu(k,1396) = lu(k,1396) - lu(k,1364) * lu(k,1387) - lu(k,1397) = lu(k,1397) - lu(k,1365) * lu(k,1387) - lu(k,1398) = lu(k,1398) - lu(k,1366) * lu(k,1387) - lu(k,1399) = lu(k,1399) - lu(k,1367) * lu(k,1387) - lu(k,1400) = lu(k,1400) - lu(k,1368) * lu(k,1387) - lu(k,1685) = lu(k,1685) - lu(k,1357) * lu(k,1684) - lu(k,1690) = lu(k,1690) - lu(k,1358) * lu(k,1684) - lu(k,1691) = lu(k,1691) - lu(k,1359) * lu(k,1684) - lu(k,1693) = lu(k,1693) - lu(k,1360) * lu(k,1684) - lu(k,1695) = lu(k,1695) - lu(k,1361) * lu(k,1684) - lu(k,1696) = lu(k,1696) - lu(k,1362) * lu(k,1684) - lu(k,1697) = lu(k,1697) - lu(k,1363) * lu(k,1684) - lu(k,1698) = lu(k,1698) - lu(k,1364) * lu(k,1684) - lu(k,1700) = lu(k,1700) - lu(k,1365) * lu(k,1684) - lu(k,1703) = lu(k,1703) - lu(k,1366) * lu(k,1684) - lu(k,1704) = lu(k,1704) - lu(k,1367) * lu(k,1684) - lu(k,1705) = lu(k,1705) - lu(k,1368) * lu(k,1684) - lu(k,1769) = lu(k,1769) - lu(k,1357) * lu(k,1768) - lu(k,1773) = lu(k,1773) - lu(k,1358) * lu(k,1768) - lu(k,1774) = lu(k,1774) - lu(k,1359) * lu(k,1768) - lu(k,1776) = lu(k,1776) - lu(k,1360) * lu(k,1768) - lu(k,1778) = lu(k,1778) - lu(k,1361) * lu(k,1768) - lu(k,1779) = lu(k,1779) - lu(k,1362) * lu(k,1768) - lu(k,1780) = lu(k,1780) - lu(k,1363) * lu(k,1768) - lu(k,1781) = lu(k,1781) - lu(k,1364) * lu(k,1768) - lu(k,1783) = lu(k,1783) - lu(k,1365) * lu(k,1768) - lu(k,1786) = lu(k,1786) - lu(k,1366) * lu(k,1768) - lu(k,1787) = lu(k,1787) - lu(k,1367) * lu(k,1768) - lu(k,1788) = lu(k,1788) - lu(k,1368) * lu(k,1768) - lu(k,1822) = lu(k,1822) - lu(k,1357) * lu(k,1821) - lu(k,1825) = lu(k,1825) - lu(k,1358) * lu(k,1821) - lu(k,1826) = lu(k,1826) - lu(k,1359) * lu(k,1821) - lu(k,1828) = lu(k,1828) - lu(k,1360) * lu(k,1821) - lu(k,1830) = lu(k,1830) - lu(k,1361) * lu(k,1821) - lu(k,1831) = lu(k,1831) - lu(k,1362) * lu(k,1821) - lu(k,1832) = lu(k,1832) - lu(k,1363) * lu(k,1821) - lu(k,1833) = lu(k,1833) - lu(k,1364) * lu(k,1821) - lu(k,1835) = lu(k,1835) - lu(k,1365) * lu(k,1821) - lu(k,1838) = lu(k,1838) - lu(k,1366) * lu(k,1821) - lu(k,1839) = lu(k,1839) - lu(k,1367) * lu(k,1821) - lu(k,1840) = lu(k,1840) - lu(k,1368) * lu(k,1821) - lu(k,1913) = lu(k,1913) - lu(k,1357) * lu(k,1912) - lu(k,1917) = lu(k,1917) - lu(k,1358) * lu(k,1912) - lu(k,1918) = lu(k,1918) - lu(k,1359) * lu(k,1912) - lu(k,1920) = lu(k,1920) - lu(k,1360) * lu(k,1912) - lu(k,1922) = lu(k,1922) - lu(k,1361) * lu(k,1912) - lu(k,1923) = lu(k,1923) - lu(k,1362) * lu(k,1912) - lu(k,1924) = lu(k,1924) - lu(k,1363) * lu(k,1912) - lu(k,1925) = lu(k,1925) - lu(k,1364) * lu(k,1912) - lu(k,1927) = lu(k,1927) - lu(k,1365) * lu(k,1912) - lu(k,1930) = lu(k,1930) - lu(k,1366) * lu(k,1912) - lu(k,1931) = lu(k,1931) - lu(k,1367) * lu(k,1912) - lu(k,1932) = lu(k,1932) - lu(k,1368) * lu(k,1912) - lu(k,1957) = lu(k,1957) - lu(k,1357) * lu(k,1956) - lu(k,1961) = lu(k,1961) - lu(k,1358) * lu(k,1956) - lu(k,1962) = lu(k,1962) - lu(k,1359) * lu(k,1956) - lu(k,1964) = lu(k,1964) - lu(k,1360) * lu(k,1956) - lu(k,1966) = lu(k,1966) - lu(k,1361) * lu(k,1956) - lu(k,1967) = lu(k,1967) - lu(k,1362) * lu(k,1956) - lu(k,1968) = lu(k,1968) - lu(k,1363) * lu(k,1956) - lu(k,1969) = lu(k,1969) - lu(k,1364) * lu(k,1956) - lu(k,1971) = lu(k,1971) - lu(k,1365) * lu(k,1956) - lu(k,1974) = lu(k,1974) - lu(k,1366) * lu(k,1956) - lu(k,1975) = lu(k,1975) - lu(k,1367) * lu(k,1956) - lu(k,1976) = lu(k,1976) - lu(k,1368) * lu(k,1956) - lu(k,2102) = lu(k,2102) - lu(k,1357) * lu(k,2101) - lu(k,2107) = lu(k,2107) - lu(k,1358) * lu(k,2101) - lu(k,2108) = lu(k,2108) - lu(k,1359) * lu(k,2101) - lu(k,2110) = lu(k,2110) - lu(k,1360) * lu(k,2101) - lu(k,2112) = lu(k,2112) - lu(k,1361) * lu(k,2101) - lu(k,2113) = lu(k,2113) - lu(k,1362) * lu(k,2101) - lu(k,2114) = lu(k,2114) - lu(k,1363) * lu(k,2101) - lu(k,2115) = lu(k,2115) - lu(k,1364) * lu(k,2101) - lu(k,2117) = lu(k,2117) - lu(k,1365) * lu(k,2101) - lu(k,2120) = lu(k,2120) - lu(k,1366) * lu(k,2101) - lu(k,2121) = lu(k,2121) - lu(k,1367) * lu(k,2101) - lu(k,2122) = lu(k,2122) - lu(k,1368) * lu(k,2101) - lu(k,2242) = lu(k,2242) - lu(k,1357) * lu(k,2241) - lu(k,2246) = lu(k,2246) - lu(k,1358) * lu(k,2241) - lu(k,2247) = lu(k,2247) - lu(k,1359) * lu(k,2241) - lu(k,2249) = lu(k,2249) - lu(k,1360) * lu(k,2241) - lu(k,2251) = lu(k,2251) - lu(k,1361) * lu(k,2241) - lu(k,2252) = lu(k,2252) - lu(k,1362) * lu(k,2241) - lu(k,2253) = lu(k,2253) - lu(k,1363) * lu(k,2241) - lu(k,2254) = lu(k,2254) - lu(k,1364) * lu(k,2241) - lu(k,2256) = lu(k,2256) - lu(k,1365) * lu(k,2241) - lu(k,2259) = lu(k,2259) - lu(k,1366) * lu(k,2241) - lu(k,2260) = lu(k,2260) - lu(k,1367) * lu(k,2241) - lu(k,2261) = lu(k,2261) - lu(k,1368) * lu(k,2241) - end do - end subroutine lu_fac26 - subroutine lu_fac27( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1388) = 1._r8 / lu(k,1388) - lu(k,1389) = lu(k,1389) * lu(k,1388) - lu(k,1390) = lu(k,1390) * lu(k,1388) - lu(k,1391) = lu(k,1391) * lu(k,1388) - lu(k,1392) = lu(k,1392) * lu(k,1388) - lu(k,1393) = lu(k,1393) * lu(k,1388) - lu(k,1394) = lu(k,1394) * lu(k,1388) - lu(k,1395) = lu(k,1395) * lu(k,1388) - lu(k,1396) = lu(k,1396) * lu(k,1388) - lu(k,1397) = lu(k,1397) * lu(k,1388) - lu(k,1398) = lu(k,1398) * lu(k,1388) - lu(k,1399) = lu(k,1399) * lu(k,1388) - lu(k,1400) = lu(k,1400) * lu(k,1388) - lu(k,1688) = lu(k,1688) - lu(k,1389) * lu(k,1685) - lu(k,1690) = lu(k,1690) - lu(k,1390) * lu(k,1685) - lu(k,1691) = lu(k,1691) - lu(k,1391) * lu(k,1685) - lu(k,1693) = lu(k,1693) - lu(k,1392) * lu(k,1685) - lu(k,1695) = lu(k,1695) - lu(k,1393) * lu(k,1685) - lu(k,1696) = lu(k,1696) - lu(k,1394) * lu(k,1685) - lu(k,1697) = lu(k,1697) - lu(k,1395) * lu(k,1685) - lu(k,1698) = lu(k,1698) - lu(k,1396) * lu(k,1685) - lu(k,1700) = lu(k,1700) - lu(k,1397) * lu(k,1685) - lu(k,1703) = lu(k,1703) - lu(k,1398) * lu(k,1685) - lu(k,1704) = lu(k,1704) - lu(k,1399) * lu(k,1685) - lu(k,1705) = lu(k,1705) - lu(k,1400) * lu(k,1685) - lu(k,1771) = lu(k,1771) - lu(k,1389) * lu(k,1769) - lu(k,1773) = lu(k,1773) - lu(k,1390) * lu(k,1769) - lu(k,1774) = lu(k,1774) - lu(k,1391) * lu(k,1769) - lu(k,1776) = lu(k,1776) - lu(k,1392) * lu(k,1769) - lu(k,1778) = lu(k,1778) - lu(k,1393) * lu(k,1769) - lu(k,1779) = lu(k,1779) - lu(k,1394) * lu(k,1769) - lu(k,1780) = lu(k,1780) - lu(k,1395) * lu(k,1769) - lu(k,1781) = lu(k,1781) - lu(k,1396) * lu(k,1769) - lu(k,1783) = lu(k,1783) - lu(k,1397) * lu(k,1769) - lu(k,1786) = lu(k,1786) - lu(k,1398) * lu(k,1769) - lu(k,1787) = lu(k,1787) - lu(k,1399) * lu(k,1769) - lu(k,1788) = lu(k,1788) - lu(k,1400) * lu(k,1769) - lu(k,1823) = lu(k,1823) - lu(k,1389) * lu(k,1822) - lu(k,1825) = lu(k,1825) - lu(k,1390) * lu(k,1822) - lu(k,1826) = lu(k,1826) - lu(k,1391) * lu(k,1822) - lu(k,1828) = lu(k,1828) - lu(k,1392) * lu(k,1822) - lu(k,1830) = lu(k,1830) - lu(k,1393) * lu(k,1822) - lu(k,1831) = lu(k,1831) - lu(k,1394) * lu(k,1822) - lu(k,1832) = lu(k,1832) - lu(k,1395) * lu(k,1822) - lu(k,1833) = lu(k,1833) - lu(k,1396) * lu(k,1822) - lu(k,1835) = lu(k,1835) - lu(k,1397) * lu(k,1822) - lu(k,1838) = lu(k,1838) - lu(k,1398) * lu(k,1822) - lu(k,1839) = lu(k,1839) - lu(k,1399) * lu(k,1822) - lu(k,1840) = lu(k,1840) - lu(k,1400) * lu(k,1822) - lu(k,1915) = lu(k,1915) - lu(k,1389) * lu(k,1913) - lu(k,1917) = lu(k,1917) - lu(k,1390) * lu(k,1913) - lu(k,1918) = lu(k,1918) - lu(k,1391) * lu(k,1913) - lu(k,1920) = lu(k,1920) - lu(k,1392) * lu(k,1913) - lu(k,1922) = lu(k,1922) - lu(k,1393) * lu(k,1913) - lu(k,1923) = lu(k,1923) - lu(k,1394) * lu(k,1913) - lu(k,1924) = lu(k,1924) - lu(k,1395) * lu(k,1913) - lu(k,1925) = lu(k,1925) - lu(k,1396) * lu(k,1913) - lu(k,1927) = lu(k,1927) - lu(k,1397) * lu(k,1913) - lu(k,1930) = lu(k,1930) - lu(k,1398) * lu(k,1913) - lu(k,1931) = lu(k,1931) - lu(k,1399) * lu(k,1913) - lu(k,1932) = lu(k,1932) - lu(k,1400) * lu(k,1913) - lu(k,1959) = - lu(k,1389) * lu(k,1957) - lu(k,1961) = lu(k,1961) - lu(k,1390) * lu(k,1957) - lu(k,1962) = lu(k,1962) - lu(k,1391) * lu(k,1957) - lu(k,1964) = lu(k,1964) - lu(k,1392) * lu(k,1957) - lu(k,1966) = lu(k,1966) - lu(k,1393) * lu(k,1957) - lu(k,1967) = lu(k,1967) - lu(k,1394) * lu(k,1957) - lu(k,1968) = lu(k,1968) - lu(k,1395) * lu(k,1957) - lu(k,1969) = lu(k,1969) - lu(k,1396) * lu(k,1957) - lu(k,1971) = lu(k,1971) - lu(k,1397) * lu(k,1957) - lu(k,1974) = lu(k,1974) - lu(k,1398) * lu(k,1957) - lu(k,1975) = lu(k,1975) - lu(k,1399) * lu(k,1957) - lu(k,1976) = lu(k,1976) - lu(k,1400) * lu(k,1957) - lu(k,1998) = lu(k,1998) - lu(k,1389) * lu(k,1995) - lu(k,2000) = lu(k,2000) - lu(k,1390) * lu(k,1995) - lu(k,2001) = lu(k,2001) - lu(k,1391) * lu(k,1995) - lu(k,2003) = lu(k,2003) - lu(k,1392) * lu(k,1995) - lu(k,2005) = lu(k,2005) - lu(k,1393) * lu(k,1995) - lu(k,2006) = lu(k,2006) - lu(k,1394) * lu(k,1995) - lu(k,2007) = lu(k,2007) - lu(k,1395) * lu(k,1995) - lu(k,2008) = lu(k,2008) - lu(k,1396) * lu(k,1995) - lu(k,2010) = lu(k,2010) - lu(k,1397) * lu(k,1995) - lu(k,2013) = lu(k,2013) - lu(k,1398) * lu(k,1995) - lu(k,2014) = lu(k,2014) - lu(k,1399) * lu(k,1995) - lu(k,2015) = lu(k,2015) - lu(k,1400) * lu(k,1995) - lu(k,2105) = lu(k,2105) - lu(k,1389) * lu(k,2102) - lu(k,2107) = lu(k,2107) - lu(k,1390) * lu(k,2102) - lu(k,2108) = lu(k,2108) - lu(k,1391) * lu(k,2102) - lu(k,2110) = lu(k,2110) - lu(k,1392) * lu(k,2102) - lu(k,2112) = lu(k,2112) - lu(k,1393) * lu(k,2102) - lu(k,2113) = lu(k,2113) - lu(k,1394) * lu(k,2102) - lu(k,2114) = lu(k,2114) - lu(k,1395) * lu(k,2102) - lu(k,2115) = lu(k,2115) - lu(k,1396) * lu(k,2102) - lu(k,2117) = lu(k,2117) - lu(k,1397) * lu(k,2102) - lu(k,2120) = lu(k,2120) - lu(k,1398) * lu(k,2102) - lu(k,2121) = lu(k,2121) - lu(k,1399) * lu(k,2102) - lu(k,2122) = lu(k,2122) - lu(k,1400) * lu(k,2102) - lu(k,2244) = lu(k,2244) - lu(k,1389) * lu(k,2242) - lu(k,2246) = lu(k,2246) - lu(k,1390) * lu(k,2242) - lu(k,2247) = lu(k,2247) - lu(k,1391) * lu(k,2242) - lu(k,2249) = lu(k,2249) - lu(k,1392) * lu(k,2242) - lu(k,2251) = lu(k,2251) - lu(k,1393) * lu(k,2242) - lu(k,2252) = lu(k,2252) - lu(k,1394) * lu(k,2242) - lu(k,2253) = lu(k,2253) - lu(k,1395) * lu(k,2242) - lu(k,2254) = lu(k,2254) - lu(k,1396) * lu(k,2242) - lu(k,2256) = lu(k,2256) - lu(k,1397) * lu(k,2242) - lu(k,2259) = lu(k,2259) - lu(k,1398) * lu(k,2242) - lu(k,2260) = lu(k,2260) - lu(k,1399) * lu(k,2242) - lu(k,2261) = lu(k,2261) - lu(k,1400) * lu(k,2242) - lu(k,1403) = 1._r8 / lu(k,1403) - lu(k,1404) = lu(k,1404) * lu(k,1403) - lu(k,1405) = lu(k,1405) * lu(k,1403) - lu(k,1406) = lu(k,1406) * lu(k,1403) - lu(k,1407) = lu(k,1407) * lu(k,1403) - lu(k,1408) = lu(k,1408) * lu(k,1403) - lu(k,1409) = lu(k,1409) * lu(k,1403) - lu(k,1410) = lu(k,1410) * lu(k,1403) - lu(k,1411) = lu(k,1411) * lu(k,1403) - lu(k,1412) = lu(k,1412) * lu(k,1403) - lu(k,1413) = lu(k,1413) * lu(k,1403) - lu(k,1414) = lu(k,1414) * lu(k,1403) - lu(k,1432) = lu(k,1432) - lu(k,1404) * lu(k,1431) - lu(k,1433) = lu(k,1433) - lu(k,1405) * lu(k,1431) - lu(k,1434) = lu(k,1434) - lu(k,1406) * lu(k,1431) - lu(k,1436) = lu(k,1436) - lu(k,1407) * lu(k,1431) - lu(k,1437) = lu(k,1437) - lu(k,1408) * lu(k,1431) - lu(k,1438) = lu(k,1438) - lu(k,1409) * lu(k,1431) - lu(k,1439) = lu(k,1439) - lu(k,1410) * lu(k,1431) - lu(k,1440) = lu(k,1440) - lu(k,1411) * lu(k,1431) - lu(k,1442) = lu(k,1442) - lu(k,1412) * lu(k,1431) - lu(k,1443) = lu(k,1443) - lu(k,1413) * lu(k,1431) - lu(k,1444) = lu(k,1444) - lu(k,1414) * lu(k,1431) - lu(k,1446) = - lu(k,1404) * lu(k,1445) - lu(k,1447) = lu(k,1447) - lu(k,1405) * lu(k,1445) - lu(k,1448) = - lu(k,1406) * lu(k,1445) - lu(k,1450) = - lu(k,1407) * lu(k,1445) - lu(k,1451) = lu(k,1451) - lu(k,1408) * lu(k,1445) - lu(k,1452) = - lu(k,1409) * lu(k,1445) - lu(k,1453) = - lu(k,1410) * lu(k,1445) - lu(k,1454) = - lu(k,1411) * lu(k,1445) - lu(k,1456) = - lu(k,1412) * lu(k,1445) - lu(k,1457) = lu(k,1457) - lu(k,1413) * lu(k,1445) - lu(k,1459) = lu(k,1459) - lu(k,1414) * lu(k,1445) - lu(k,1463) = lu(k,1463) - lu(k,1404) * lu(k,1462) - lu(k,1464) = lu(k,1464) - lu(k,1405) * lu(k,1462) - lu(k,1465) = lu(k,1465) - lu(k,1406) * lu(k,1462) - lu(k,1467) = - lu(k,1407) * lu(k,1462) - lu(k,1468) = lu(k,1468) - lu(k,1408) * lu(k,1462) - lu(k,1469) = lu(k,1469) - lu(k,1409) * lu(k,1462) - lu(k,1470) = lu(k,1470) - lu(k,1410) * lu(k,1462) - lu(k,1472) = - lu(k,1411) * lu(k,1462) - lu(k,1474) = - lu(k,1412) * lu(k,1462) - lu(k,1475) = - lu(k,1413) * lu(k,1462) - lu(k,1477) = lu(k,1477) - lu(k,1414) * lu(k,1462) - lu(k,1484) = - lu(k,1404) * lu(k,1482) - lu(k,1485) = lu(k,1485) - lu(k,1405) * lu(k,1482) - lu(k,1486) = lu(k,1486) - lu(k,1406) * lu(k,1482) - lu(k,1488) = lu(k,1488) - lu(k,1407) * lu(k,1482) - lu(k,1489) = lu(k,1489) - lu(k,1408) * lu(k,1482) - lu(k,1490) = lu(k,1490) - lu(k,1409) * lu(k,1482) - lu(k,1491) = - lu(k,1410) * lu(k,1482) - lu(k,1494) = lu(k,1494) - lu(k,1411) * lu(k,1482) - lu(k,1496) = lu(k,1496) - lu(k,1412) * lu(k,1482) - lu(k,1498) = lu(k,1498) - lu(k,1413) * lu(k,1482) - lu(k,1500) = lu(k,1500) - lu(k,1414) * lu(k,1482) - lu(k,1524) = lu(k,1524) - lu(k,1404) * lu(k,1522) - lu(k,1525) = lu(k,1525) - lu(k,1405) * lu(k,1522) - lu(k,1526) = lu(k,1526) - lu(k,1406) * lu(k,1522) - lu(k,1528) = lu(k,1528) - lu(k,1407) * lu(k,1522) - lu(k,1529) = lu(k,1529) - lu(k,1408) * lu(k,1522) - lu(k,1531) = lu(k,1531) - lu(k,1409) * lu(k,1522) - lu(k,1532) = lu(k,1532) - lu(k,1410) * lu(k,1522) - lu(k,1535) = lu(k,1535) - lu(k,1411) * lu(k,1522) - lu(k,1537) = lu(k,1537) - lu(k,1412) * lu(k,1522) - lu(k,1539) = lu(k,1539) - lu(k,1413) * lu(k,1522) - lu(k,1541) = lu(k,1541) - lu(k,1414) * lu(k,1522) - lu(k,1688) = lu(k,1688) - lu(k,1404) * lu(k,1686) - lu(k,1689) = lu(k,1689) - lu(k,1405) * lu(k,1686) - lu(k,1690) = lu(k,1690) - lu(k,1406) * lu(k,1686) - lu(k,1692) = lu(k,1692) - lu(k,1407) * lu(k,1686) - lu(k,1693) = lu(k,1693) - lu(k,1408) * lu(k,1686) - lu(k,1695) = lu(k,1695) - lu(k,1409) * lu(k,1686) - lu(k,1696) = lu(k,1696) - lu(k,1410) * lu(k,1686) - lu(k,1699) = lu(k,1699) - lu(k,1411) * lu(k,1686) - lu(k,1701) = lu(k,1701) - lu(k,1412) * lu(k,1686) - lu(k,1703) = lu(k,1703) - lu(k,1413) * lu(k,1686) - lu(k,1705) = lu(k,1705) - lu(k,1414) * lu(k,1686) - lu(k,1998) = lu(k,1998) - lu(k,1404) * lu(k,1996) - lu(k,1999) = lu(k,1999) - lu(k,1405) * lu(k,1996) - lu(k,2000) = lu(k,2000) - lu(k,1406) * lu(k,1996) - lu(k,2002) = lu(k,2002) - lu(k,1407) * lu(k,1996) - lu(k,2003) = lu(k,2003) - lu(k,1408) * lu(k,1996) - lu(k,2005) = lu(k,2005) - lu(k,1409) * lu(k,1996) - lu(k,2006) = lu(k,2006) - lu(k,1410) * lu(k,1996) - lu(k,2009) = lu(k,2009) - lu(k,1411) * lu(k,1996) - lu(k,2011) = lu(k,2011) - lu(k,1412) * lu(k,1996) - lu(k,2013) = lu(k,2013) - lu(k,1413) * lu(k,1996) - lu(k,2015) = lu(k,2015) - lu(k,1414) * lu(k,1996) - lu(k,2105) = lu(k,2105) - lu(k,1404) * lu(k,2103) - lu(k,2106) = lu(k,2106) - lu(k,1405) * lu(k,2103) - lu(k,2107) = lu(k,2107) - lu(k,1406) * lu(k,2103) - lu(k,2109) = lu(k,2109) - lu(k,1407) * lu(k,2103) - lu(k,2110) = lu(k,2110) - lu(k,1408) * lu(k,2103) - lu(k,2112) = lu(k,2112) - lu(k,1409) * lu(k,2103) - lu(k,2113) = lu(k,2113) - lu(k,1410) * lu(k,2103) - lu(k,2116) = lu(k,2116) - lu(k,1411) * lu(k,2103) - lu(k,2118) = lu(k,2118) - lu(k,1412) * lu(k,2103) - lu(k,2120) = lu(k,2120) - lu(k,1413) * lu(k,2103) - lu(k,2122) = lu(k,2122) - lu(k,1414) * lu(k,2103) - lu(k,2183) = - lu(k,1404) * lu(k,2181) - lu(k,2184) = lu(k,2184) - lu(k,1405) * lu(k,2181) - lu(k,2185) = lu(k,2185) - lu(k,1406) * lu(k,2181) - lu(k,2187) = lu(k,2187) - lu(k,1407) * lu(k,2181) - lu(k,2188) = lu(k,2188) - lu(k,1408) * lu(k,2181) - lu(k,2190) = lu(k,2190) - lu(k,1409) * lu(k,2181) - lu(k,2191) = - lu(k,1410) * lu(k,2181) - lu(k,2194) = lu(k,2194) - lu(k,1411) * lu(k,2181) - lu(k,2196) = lu(k,2196) - lu(k,1412) * lu(k,2181) - lu(k,2198) = lu(k,2198) - lu(k,1413) * lu(k,2181) - lu(k,2200) = lu(k,2200) - lu(k,1414) * lu(k,2181) - lu(k,2270) = lu(k,2270) - lu(k,1404) * lu(k,2268) - lu(k,2271) = lu(k,2271) - lu(k,1405) * lu(k,2268) - lu(k,2272) = lu(k,2272) - lu(k,1406) * lu(k,2268) - lu(k,2274) = lu(k,2274) - lu(k,1407) * lu(k,2268) - lu(k,2275) = lu(k,2275) - lu(k,1408) * lu(k,2268) - lu(k,2277) = lu(k,2277) - lu(k,1409) * lu(k,2268) - lu(k,2278) = lu(k,2278) - lu(k,1410) * lu(k,2268) - lu(k,2281) = lu(k,2281) - lu(k,1411) * lu(k,2268) - lu(k,2283) = - lu(k,1412) * lu(k,2268) - lu(k,2285) = lu(k,2285) - lu(k,1413) * lu(k,2268) - lu(k,2287) = lu(k,2287) - lu(k,1414) * lu(k,2268) - lu(k,1417) = 1._r8 / lu(k,1417) - lu(k,1418) = lu(k,1418) * lu(k,1417) - lu(k,1419) = lu(k,1419) * lu(k,1417) - lu(k,1420) = lu(k,1420) * lu(k,1417) - lu(k,1421) = lu(k,1421) * lu(k,1417) - lu(k,1422) = lu(k,1422) * lu(k,1417) - lu(k,1423) = lu(k,1423) * lu(k,1417) - lu(k,1424) = lu(k,1424) * lu(k,1417) - lu(k,1425) = lu(k,1425) * lu(k,1417) - lu(k,1426) = lu(k,1426) * lu(k,1417) - lu(k,1485) = lu(k,1485) - lu(k,1418) * lu(k,1483) - lu(k,1487) = lu(k,1487) - lu(k,1419) * lu(k,1483) - lu(k,1488) = lu(k,1488) - lu(k,1420) * lu(k,1483) - lu(k,1489) = lu(k,1489) - lu(k,1421) * lu(k,1483) - lu(k,1495) = lu(k,1495) - lu(k,1422) * lu(k,1483) - lu(k,1497) = lu(k,1497) - lu(k,1423) * lu(k,1483) - lu(k,1498) = lu(k,1498) - lu(k,1424) * lu(k,1483) - lu(k,1499) = - lu(k,1425) * lu(k,1483) - lu(k,1500) = lu(k,1500) - lu(k,1426) * lu(k,1483) - lu(k,1525) = lu(k,1525) - lu(k,1418) * lu(k,1523) - lu(k,1527) = lu(k,1527) - lu(k,1419) * lu(k,1523) - lu(k,1528) = lu(k,1528) - lu(k,1420) * lu(k,1523) - lu(k,1529) = lu(k,1529) - lu(k,1421) * lu(k,1523) - lu(k,1536) = lu(k,1536) - lu(k,1422) * lu(k,1523) - lu(k,1538) = lu(k,1538) - lu(k,1423) * lu(k,1523) - lu(k,1539) = lu(k,1539) - lu(k,1424) * lu(k,1523) - lu(k,1540) = lu(k,1540) - lu(k,1425) * lu(k,1523) - lu(k,1541) = lu(k,1541) - lu(k,1426) * lu(k,1523) - lu(k,1689) = lu(k,1689) - lu(k,1418) * lu(k,1687) - lu(k,1691) = lu(k,1691) - lu(k,1419) * lu(k,1687) - lu(k,1692) = lu(k,1692) - lu(k,1420) * lu(k,1687) - lu(k,1693) = lu(k,1693) - lu(k,1421) * lu(k,1687) - lu(k,1700) = lu(k,1700) - lu(k,1422) * lu(k,1687) - lu(k,1702) = lu(k,1702) - lu(k,1423) * lu(k,1687) - lu(k,1703) = lu(k,1703) - lu(k,1424) * lu(k,1687) - lu(k,1704) = lu(k,1704) - lu(k,1425) * lu(k,1687) - lu(k,1705) = lu(k,1705) - lu(k,1426) * lu(k,1687) - lu(k,1715) = lu(k,1715) - lu(k,1418) * lu(k,1714) - lu(k,1717) = lu(k,1717) - lu(k,1419) * lu(k,1714) - lu(k,1718) = - lu(k,1420) * lu(k,1714) - lu(k,1719) = lu(k,1719) - lu(k,1421) * lu(k,1714) - lu(k,1726) = lu(k,1726) - lu(k,1422) * lu(k,1714) - lu(k,1728) = lu(k,1728) - lu(k,1423) * lu(k,1714) - lu(k,1729) = lu(k,1729) - lu(k,1424) * lu(k,1714) - lu(k,1730) = lu(k,1730) - lu(k,1425) * lu(k,1714) - lu(k,1731) = lu(k,1731) - lu(k,1426) * lu(k,1714) - lu(k,1772) = lu(k,1772) - lu(k,1418) * lu(k,1770) - lu(k,1774) = lu(k,1774) - lu(k,1419) * lu(k,1770) - lu(k,1775) = - lu(k,1420) * lu(k,1770) - lu(k,1776) = lu(k,1776) - lu(k,1421) * lu(k,1770) - lu(k,1783) = lu(k,1783) - lu(k,1422) * lu(k,1770) - lu(k,1785) = lu(k,1785) - lu(k,1423) * lu(k,1770) - lu(k,1786) = lu(k,1786) - lu(k,1424) * lu(k,1770) - lu(k,1787) = lu(k,1787) - lu(k,1425) * lu(k,1770) - lu(k,1788) = lu(k,1788) - lu(k,1426) * lu(k,1770) - lu(k,1916) = lu(k,1916) - lu(k,1418) * lu(k,1914) - lu(k,1918) = lu(k,1918) - lu(k,1419) * lu(k,1914) - lu(k,1919) = lu(k,1919) - lu(k,1420) * lu(k,1914) - lu(k,1920) = lu(k,1920) - lu(k,1421) * lu(k,1914) - lu(k,1927) = lu(k,1927) - lu(k,1422) * lu(k,1914) - lu(k,1929) = lu(k,1929) - lu(k,1423) * lu(k,1914) - lu(k,1930) = lu(k,1930) - lu(k,1424) * lu(k,1914) - lu(k,1931) = lu(k,1931) - lu(k,1425) * lu(k,1914) - lu(k,1932) = lu(k,1932) - lu(k,1426) * lu(k,1914) - lu(k,1960) = lu(k,1960) - lu(k,1418) * lu(k,1958) - lu(k,1962) = lu(k,1962) - lu(k,1419) * lu(k,1958) - lu(k,1963) = lu(k,1963) - lu(k,1420) * lu(k,1958) - lu(k,1964) = lu(k,1964) - lu(k,1421) * lu(k,1958) - lu(k,1971) = lu(k,1971) - lu(k,1422) * lu(k,1958) - lu(k,1973) = lu(k,1973) - lu(k,1423) * lu(k,1958) - lu(k,1974) = lu(k,1974) - lu(k,1424) * lu(k,1958) - lu(k,1975) = lu(k,1975) - lu(k,1425) * lu(k,1958) - lu(k,1976) = lu(k,1976) - lu(k,1426) * lu(k,1958) - lu(k,1999) = lu(k,1999) - lu(k,1418) * lu(k,1997) - lu(k,2001) = lu(k,2001) - lu(k,1419) * lu(k,1997) - lu(k,2002) = lu(k,2002) - lu(k,1420) * lu(k,1997) - lu(k,2003) = lu(k,2003) - lu(k,1421) * lu(k,1997) - lu(k,2010) = lu(k,2010) - lu(k,1422) * lu(k,1997) - lu(k,2012) = - lu(k,1423) * lu(k,1997) - lu(k,2013) = lu(k,2013) - lu(k,1424) * lu(k,1997) - lu(k,2014) = lu(k,2014) - lu(k,1425) * lu(k,1997) - lu(k,2015) = lu(k,2015) - lu(k,1426) * lu(k,1997) - lu(k,2106) = lu(k,2106) - lu(k,1418) * lu(k,2104) - lu(k,2108) = lu(k,2108) - lu(k,1419) * lu(k,2104) - lu(k,2109) = lu(k,2109) - lu(k,1420) * lu(k,2104) - lu(k,2110) = lu(k,2110) - lu(k,1421) * lu(k,2104) - lu(k,2117) = lu(k,2117) - lu(k,1422) * lu(k,2104) - lu(k,2119) = lu(k,2119) - lu(k,1423) * lu(k,2104) - lu(k,2120) = lu(k,2120) - lu(k,1424) * lu(k,2104) - lu(k,2121) = lu(k,2121) - lu(k,1425) * lu(k,2104) - lu(k,2122) = lu(k,2122) - lu(k,1426) * lu(k,2104) - lu(k,2129) = lu(k,2129) - lu(k,1418) * lu(k,2128) - lu(k,2131) = - lu(k,1419) * lu(k,2128) - lu(k,2132) = lu(k,2132) - lu(k,1420) * lu(k,2128) - lu(k,2133) = lu(k,2133) - lu(k,1421) * lu(k,2128) - lu(k,2140) = - lu(k,1422) * lu(k,2128) - lu(k,2142) = lu(k,2142) - lu(k,1423) * lu(k,2128) - lu(k,2143) = lu(k,2143) - lu(k,1424) * lu(k,2128) - lu(k,2144) = - lu(k,1425) * lu(k,2128) - lu(k,2145) = lu(k,2145) - lu(k,1426) * lu(k,2128) - lu(k,2153) = lu(k,2153) - lu(k,1418) * lu(k,2152) - lu(k,2155) = - lu(k,1419) * lu(k,2152) - lu(k,2156) = - lu(k,1420) * lu(k,2152) - lu(k,2157) = lu(k,2157) - lu(k,1421) * lu(k,2152) - lu(k,2164) = lu(k,2164) - lu(k,1422) * lu(k,2152) - lu(k,2166) = lu(k,2166) - lu(k,1423) * lu(k,2152) - lu(k,2167) = lu(k,2167) - lu(k,1424) * lu(k,2152) - lu(k,2168) = lu(k,2168) - lu(k,1425) * lu(k,2152) - lu(k,2169) = lu(k,2169) - lu(k,1426) * lu(k,2152) - lu(k,2184) = lu(k,2184) - lu(k,1418) * lu(k,2182) - lu(k,2186) = lu(k,2186) - lu(k,1419) * lu(k,2182) - lu(k,2187) = lu(k,2187) - lu(k,1420) * lu(k,2182) - lu(k,2188) = lu(k,2188) - lu(k,1421) * lu(k,2182) - lu(k,2195) = lu(k,2195) - lu(k,1422) * lu(k,2182) - lu(k,2197) = lu(k,2197) - lu(k,1423) * lu(k,2182) - lu(k,2198) = lu(k,2198) - lu(k,1424) * lu(k,2182) - lu(k,2199) = lu(k,2199) - lu(k,1425) * lu(k,2182) - lu(k,2200) = lu(k,2200) - lu(k,1426) * lu(k,2182) - lu(k,2245) = lu(k,2245) - lu(k,1418) * lu(k,2243) - lu(k,2247) = lu(k,2247) - lu(k,1419) * lu(k,2243) - lu(k,2248) = lu(k,2248) - lu(k,1420) * lu(k,2243) - lu(k,2249) = lu(k,2249) - lu(k,1421) * lu(k,2243) - lu(k,2256) = lu(k,2256) - lu(k,1422) * lu(k,2243) - lu(k,2258) = lu(k,2258) - lu(k,1423) * lu(k,2243) - lu(k,2259) = lu(k,2259) - lu(k,1424) * lu(k,2243) - lu(k,2260) = lu(k,2260) - lu(k,1425) * lu(k,2243) - lu(k,2261) = lu(k,2261) - lu(k,1426) * lu(k,2243) - lu(k,2271) = lu(k,2271) - lu(k,1418) * lu(k,2269) - lu(k,2273) = - lu(k,1419) * lu(k,2269) - lu(k,2274) = lu(k,2274) - lu(k,1420) * lu(k,2269) - lu(k,2275) = lu(k,2275) - lu(k,1421) * lu(k,2269) - lu(k,2282) = lu(k,2282) - lu(k,1422) * lu(k,2269) - lu(k,2284) = lu(k,2284) - lu(k,1423) * lu(k,2269) - lu(k,2285) = lu(k,2285) - lu(k,1424) * lu(k,2269) - lu(k,2286) = lu(k,2286) - lu(k,1425) * lu(k,2269) - lu(k,2287) = lu(k,2287) - lu(k,1426) * lu(k,2269) - end do - end subroutine lu_fac27 - subroutine lu_fac28( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1432) = 1._r8 / lu(k,1432) - lu(k,1433) = lu(k,1433) * lu(k,1432) - lu(k,1434) = lu(k,1434) * lu(k,1432) - lu(k,1435) = lu(k,1435) * lu(k,1432) - lu(k,1436) = lu(k,1436) * lu(k,1432) - lu(k,1437) = lu(k,1437) * lu(k,1432) - lu(k,1438) = lu(k,1438) * lu(k,1432) - lu(k,1439) = lu(k,1439) * lu(k,1432) - lu(k,1440) = lu(k,1440) * lu(k,1432) - lu(k,1441) = lu(k,1441) * lu(k,1432) - lu(k,1442) = lu(k,1442) * lu(k,1432) - lu(k,1443) = lu(k,1443) * lu(k,1432) - lu(k,1444) = lu(k,1444) * lu(k,1432) - lu(k,1447) = lu(k,1447) - lu(k,1433) * lu(k,1446) - lu(k,1448) = lu(k,1448) - lu(k,1434) * lu(k,1446) - lu(k,1449) = - lu(k,1435) * lu(k,1446) - lu(k,1450) = lu(k,1450) - lu(k,1436) * lu(k,1446) - lu(k,1451) = lu(k,1451) - lu(k,1437) * lu(k,1446) - lu(k,1452) = lu(k,1452) - lu(k,1438) * lu(k,1446) - lu(k,1453) = lu(k,1453) - lu(k,1439) * lu(k,1446) - lu(k,1454) = lu(k,1454) - lu(k,1440) * lu(k,1446) - lu(k,1455) = lu(k,1455) - lu(k,1441) * lu(k,1446) - lu(k,1456) = lu(k,1456) - lu(k,1442) * lu(k,1446) - lu(k,1457) = lu(k,1457) - lu(k,1443) * lu(k,1446) - lu(k,1459) = lu(k,1459) - lu(k,1444) * lu(k,1446) - lu(k,1464) = lu(k,1464) - lu(k,1433) * lu(k,1463) - lu(k,1465) = lu(k,1465) - lu(k,1434) * lu(k,1463) - lu(k,1466) = - lu(k,1435) * lu(k,1463) - lu(k,1467) = lu(k,1467) - lu(k,1436) * lu(k,1463) - lu(k,1468) = lu(k,1468) - lu(k,1437) * lu(k,1463) - lu(k,1469) = lu(k,1469) - lu(k,1438) * lu(k,1463) - lu(k,1470) = lu(k,1470) - lu(k,1439) * lu(k,1463) - lu(k,1472) = lu(k,1472) - lu(k,1440) * lu(k,1463) - lu(k,1473) = - lu(k,1441) * lu(k,1463) - lu(k,1474) = lu(k,1474) - lu(k,1442) * lu(k,1463) - lu(k,1475) = lu(k,1475) - lu(k,1443) * lu(k,1463) - lu(k,1477) = lu(k,1477) - lu(k,1444) * lu(k,1463) - lu(k,1485) = lu(k,1485) - lu(k,1433) * lu(k,1484) - lu(k,1486) = lu(k,1486) - lu(k,1434) * lu(k,1484) - lu(k,1487) = lu(k,1487) - lu(k,1435) * lu(k,1484) - lu(k,1488) = lu(k,1488) - lu(k,1436) * lu(k,1484) - lu(k,1489) = lu(k,1489) - lu(k,1437) * lu(k,1484) - lu(k,1490) = lu(k,1490) - lu(k,1438) * lu(k,1484) - lu(k,1491) = lu(k,1491) - lu(k,1439) * lu(k,1484) - lu(k,1494) = lu(k,1494) - lu(k,1440) * lu(k,1484) - lu(k,1495) = lu(k,1495) - lu(k,1441) * lu(k,1484) - lu(k,1496) = lu(k,1496) - lu(k,1442) * lu(k,1484) - lu(k,1498) = lu(k,1498) - lu(k,1443) * lu(k,1484) - lu(k,1500) = lu(k,1500) - lu(k,1444) * lu(k,1484) - lu(k,1525) = lu(k,1525) - lu(k,1433) * lu(k,1524) - lu(k,1526) = lu(k,1526) - lu(k,1434) * lu(k,1524) - lu(k,1527) = lu(k,1527) - lu(k,1435) * lu(k,1524) - lu(k,1528) = lu(k,1528) - lu(k,1436) * lu(k,1524) - lu(k,1529) = lu(k,1529) - lu(k,1437) * lu(k,1524) - lu(k,1531) = lu(k,1531) - lu(k,1438) * lu(k,1524) - lu(k,1532) = lu(k,1532) - lu(k,1439) * lu(k,1524) - lu(k,1535) = lu(k,1535) - lu(k,1440) * lu(k,1524) - lu(k,1536) = lu(k,1536) - lu(k,1441) * lu(k,1524) - lu(k,1537) = lu(k,1537) - lu(k,1442) * lu(k,1524) - lu(k,1539) = lu(k,1539) - lu(k,1443) * lu(k,1524) - lu(k,1541) = lu(k,1541) - lu(k,1444) * lu(k,1524) - lu(k,1689) = lu(k,1689) - lu(k,1433) * lu(k,1688) - lu(k,1690) = lu(k,1690) - lu(k,1434) * lu(k,1688) - lu(k,1691) = lu(k,1691) - lu(k,1435) * lu(k,1688) - lu(k,1692) = lu(k,1692) - lu(k,1436) * lu(k,1688) - lu(k,1693) = lu(k,1693) - lu(k,1437) * lu(k,1688) - lu(k,1695) = lu(k,1695) - lu(k,1438) * lu(k,1688) - lu(k,1696) = lu(k,1696) - lu(k,1439) * lu(k,1688) - lu(k,1699) = lu(k,1699) - lu(k,1440) * lu(k,1688) - lu(k,1700) = lu(k,1700) - lu(k,1441) * lu(k,1688) - lu(k,1701) = lu(k,1701) - lu(k,1442) * lu(k,1688) - lu(k,1703) = lu(k,1703) - lu(k,1443) * lu(k,1688) - lu(k,1705) = lu(k,1705) - lu(k,1444) * lu(k,1688) - lu(k,1772) = lu(k,1772) - lu(k,1433) * lu(k,1771) - lu(k,1773) = lu(k,1773) - lu(k,1434) * lu(k,1771) - lu(k,1774) = lu(k,1774) - lu(k,1435) * lu(k,1771) - lu(k,1775) = lu(k,1775) - lu(k,1436) * lu(k,1771) - lu(k,1776) = lu(k,1776) - lu(k,1437) * lu(k,1771) - lu(k,1778) = lu(k,1778) - lu(k,1438) * lu(k,1771) - lu(k,1779) = lu(k,1779) - lu(k,1439) * lu(k,1771) - lu(k,1782) = lu(k,1782) - lu(k,1440) * lu(k,1771) - lu(k,1783) = lu(k,1783) - lu(k,1441) * lu(k,1771) - lu(k,1784) = - lu(k,1442) * lu(k,1771) - lu(k,1786) = lu(k,1786) - lu(k,1443) * lu(k,1771) - lu(k,1788) = lu(k,1788) - lu(k,1444) * lu(k,1771) - lu(k,1824) = lu(k,1824) - lu(k,1433) * lu(k,1823) - lu(k,1825) = lu(k,1825) - lu(k,1434) * lu(k,1823) - lu(k,1826) = lu(k,1826) - lu(k,1435) * lu(k,1823) - lu(k,1827) = - lu(k,1436) * lu(k,1823) - lu(k,1828) = lu(k,1828) - lu(k,1437) * lu(k,1823) - lu(k,1830) = lu(k,1830) - lu(k,1438) * lu(k,1823) - lu(k,1831) = lu(k,1831) - lu(k,1439) * lu(k,1823) - lu(k,1834) = lu(k,1834) - lu(k,1440) * lu(k,1823) - lu(k,1835) = lu(k,1835) - lu(k,1441) * lu(k,1823) - lu(k,1836) = - lu(k,1442) * lu(k,1823) - lu(k,1838) = lu(k,1838) - lu(k,1443) * lu(k,1823) - lu(k,1840) = lu(k,1840) - lu(k,1444) * lu(k,1823) - lu(k,1916) = lu(k,1916) - lu(k,1433) * lu(k,1915) - lu(k,1917) = lu(k,1917) - lu(k,1434) * lu(k,1915) - lu(k,1918) = lu(k,1918) - lu(k,1435) * lu(k,1915) - lu(k,1919) = lu(k,1919) - lu(k,1436) * lu(k,1915) - lu(k,1920) = lu(k,1920) - lu(k,1437) * lu(k,1915) - lu(k,1922) = lu(k,1922) - lu(k,1438) * lu(k,1915) - lu(k,1923) = lu(k,1923) - lu(k,1439) * lu(k,1915) - lu(k,1926) = lu(k,1926) - lu(k,1440) * lu(k,1915) - lu(k,1927) = lu(k,1927) - lu(k,1441) * lu(k,1915) - lu(k,1928) = - lu(k,1442) * lu(k,1915) - lu(k,1930) = lu(k,1930) - lu(k,1443) * lu(k,1915) - lu(k,1932) = lu(k,1932) - lu(k,1444) * lu(k,1915) - lu(k,1960) = lu(k,1960) - lu(k,1433) * lu(k,1959) - lu(k,1961) = lu(k,1961) - lu(k,1434) * lu(k,1959) - lu(k,1962) = lu(k,1962) - lu(k,1435) * lu(k,1959) - lu(k,1963) = lu(k,1963) - lu(k,1436) * lu(k,1959) - lu(k,1964) = lu(k,1964) - lu(k,1437) * lu(k,1959) - lu(k,1966) = lu(k,1966) - lu(k,1438) * lu(k,1959) - lu(k,1967) = lu(k,1967) - lu(k,1439) * lu(k,1959) - lu(k,1970) = lu(k,1970) - lu(k,1440) * lu(k,1959) - lu(k,1971) = lu(k,1971) - lu(k,1441) * lu(k,1959) - lu(k,1972) = lu(k,1972) - lu(k,1442) * lu(k,1959) - lu(k,1974) = lu(k,1974) - lu(k,1443) * lu(k,1959) - lu(k,1976) = lu(k,1976) - lu(k,1444) * lu(k,1959) - lu(k,1999) = lu(k,1999) - lu(k,1433) * lu(k,1998) - lu(k,2000) = lu(k,2000) - lu(k,1434) * lu(k,1998) - lu(k,2001) = lu(k,2001) - lu(k,1435) * lu(k,1998) - lu(k,2002) = lu(k,2002) - lu(k,1436) * lu(k,1998) - lu(k,2003) = lu(k,2003) - lu(k,1437) * lu(k,1998) - lu(k,2005) = lu(k,2005) - lu(k,1438) * lu(k,1998) - lu(k,2006) = lu(k,2006) - lu(k,1439) * lu(k,1998) - lu(k,2009) = lu(k,2009) - lu(k,1440) * lu(k,1998) - lu(k,2010) = lu(k,2010) - lu(k,1441) * lu(k,1998) - lu(k,2011) = lu(k,2011) - lu(k,1442) * lu(k,1998) - lu(k,2013) = lu(k,2013) - lu(k,1443) * lu(k,1998) - lu(k,2015) = lu(k,2015) - lu(k,1444) * lu(k,1998) - lu(k,2106) = lu(k,2106) - lu(k,1433) * lu(k,2105) - lu(k,2107) = lu(k,2107) - lu(k,1434) * lu(k,2105) - lu(k,2108) = lu(k,2108) - lu(k,1435) * lu(k,2105) - lu(k,2109) = lu(k,2109) - lu(k,1436) * lu(k,2105) - lu(k,2110) = lu(k,2110) - lu(k,1437) * lu(k,2105) - lu(k,2112) = lu(k,2112) - lu(k,1438) * lu(k,2105) - lu(k,2113) = lu(k,2113) - lu(k,1439) * lu(k,2105) - lu(k,2116) = lu(k,2116) - lu(k,1440) * lu(k,2105) - lu(k,2117) = lu(k,2117) - lu(k,1441) * lu(k,2105) - lu(k,2118) = lu(k,2118) - lu(k,1442) * lu(k,2105) - lu(k,2120) = lu(k,2120) - lu(k,1443) * lu(k,2105) - lu(k,2122) = lu(k,2122) - lu(k,1444) * lu(k,2105) - lu(k,2184) = lu(k,2184) - lu(k,1433) * lu(k,2183) - lu(k,2185) = lu(k,2185) - lu(k,1434) * lu(k,2183) - lu(k,2186) = lu(k,2186) - lu(k,1435) * lu(k,2183) - lu(k,2187) = lu(k,2187) - lu(k,1436) * lu(k,2183) - lu(k,2188) = lu(k,2188) - lu(k,1437) * lu(k,2183) - lu(k,2190) = lu(k,2190) - lu(k,1438) * lu(k,2183) - lu(k,2191) = lu(k,2191) - lu(k,1439) * lu(k,2183) - lu(k,2194) = lu(k,2194) - lu(k,1440) * lu(k,2183) - lu(k,2195) = lu(k,2195) - lu(k,1441) * lu(k,2183) - lu(k,2196) = lu(k,2196) - lu(k,1442) * lu(k,2183) - lu(k,2198) = lu(k,2198) - lu(k,1443) * lu(k,2183) - lu(k,2200) = lu(k,2200) - lu(k,1444) * lu(k,2183) - lu(k,2245) = lu(k,2245) - lu(k,1433) * lu(k,2244) - lu(k,2246) = lu(k,2246) - lu(k,1434) * lu(k,2244) - lu(k,2247) = lu(k,2247) - lu(k,1435) * lu(k,2244) - lu(k,2248) = lu(k,2248) - lu(k,1436) * lu(k,2244) - lu(k,2249) = lu(k,2249) - lu(k,1437) * lu(k,2244) - lu(k,2251) = lu(k,2251) - lu(k,1438) * lu(k,2244) - lu(k,2252) = lu(k,2252) - lu(k,1439) * lu(k,2244) - lu(k,2255) = lu(k,2255) - lu(k,1440) * lu(k,2244) - lu(k,2256) = lu(k,2256) - lu(k,1441) * lu(k,2244) - lu(k,2257) = - lu(k,1442) * lu(k,2244) - lu(k,2259) = lu(k,2259) - lu(k,1443) * lu(k,2244) - lu(k,2261) = lu(k,2261) - lu(k,1444) * lu(k,2244) - lu(k,2271) = lu(k,2271) - lu(k,1433) * lu(k,2270) - lu(k,2272) = lu(k,2272) - lu(k,1434) * lu(k,2270) - lu(k,2273) = lu(k,2273) - lu(k,1435) * lu(k,2270) - lu(k,2274) = lu(k,2274) - lu(k,1436) * lu(k,2270) - lu(k,2275) = lu(k,2275) - lu(k,1437) * lu(k,2270) - lu(k,2277) = lu(k,2277) - lu(k,1438) * lu(k,2270) - lu(k,2278) = lu(k,2278) - lu(k,1439) * lu(k,2270) - lu(k,2281) = lu(k,2281) - lu(k,1440) * lu(k,2270) - lu(k,2282) = lu(k,2282) - lu(k,1441) * lu(k,2270) - lu(k,2283) = lu(k,2283) - lu(k,1442) * lu(k,2270) - lu(k,2285) = lu(k,2285) - lu(k,1443) * lu(k,2270) - lu(k,2287) = lu(k,2287) - lu(k,1444) * lu(k,2270) - lu(k,1447) = 1._r8 / lu(k,1447) - lu(k,1448) = lu(k,1448) * lu(k,1447) - lu(k,1449) = lu(k,1449) * lu(k,1447) - lu(k,1450) = lu(k,1450) * lu(k,1447) - lu(k,1451) = lu(k,1451) * lu(k,1447) - lu(k,1452) = lu(k,1452) * lu(k,1447) - lu(k,1453) = lu(k,1453) * lu(k,1447) - lu(k,1454) = lu(k,1454) * lu(k,1447) - lu(k,1455) = lu(k,1455) * lu(k,1447) - lu(k,1456) = lu(k,1456) * lu(k,1447) - lu(k,1457) = lu(k,1457) * lu(k,1447) - lu(k,1458) = lu(k,1458) * lu(k,1447) - lu(k,1459) = lu(k,1459) * lu(k,1447) - lu(k,1465) = lu(k,1465) - lu(k,1448) * lu(k,1464) - lu(k,1466) = lu(k,1466) - lu(k,1449) * lu(k,1464) - lu(k,1467) = lu(k,1467) - lu(k,1450) * lu(k,1464) - lu(k,1468) = lu(k,1468) - lu(k,1451) * lu(k,1464) - lu(k,1469) = lu(k,1469) - lu(k,1452) * lu(k,1464) - lu(k,1470) = lu(k,1470) - lu(k,1453) * lu(k,1464) - lu(k,1472) = lu(k,1472) - lu(k,1454) * lu(k,1464) - lu(k,1473) = lu(k,1473) - lu(k,1455) * lu(k,1464) - lu(k,1474) = lu(k,1474) - lu(k,1456) * lu(k,1464) - lu(k,1475) = lu(k,1475) - lu(k,1457) * lu(k,1464) - lu(k,1476) = - lu(k,1458) * lu(k,1464) - lu(k,1477) = lu(k,1477) - lu(k,1459) * lu(k,1464) - lu(k,1486) = lu(k,1486) - lu(k,1448) * lu(k,1485) - lu(k,1487) = lu(k,1487) - lu(k,1449) * lu(k,1485) - lu(k,1488) = lu(k,1488) - lu(k,1450) * lu(k,1485) - lu(k,1489) = lu(k,1489) - lu(k,1451) * lu(k,1485) - lu(k,1490) = lu(k,1490) - lu(k,1452) * lu(k,1485) - lu(k,1491) = lu(k,1491) - lu(k,1453) * lu(k,1485) - lu(k,1494) = lu(k,1494) - lu(k,1454) * lu(k,1485) - lu(k,1495) = lu(k,1495) - lu(k,1455) * lu(k,1485) - lu(k,1496) = lu(k,1496) - lu(k,1456) * lu(k,1485) - lu(k,1498) = lu(k,1498) - lu(k,1457) * lu(k,1485) - lu(k,1499) = lu(k,1499) - lu(k,1458) * lu(k,1485) - lu(k,1500) = lu(k,1500) - lu(k,1459) * lu(k,1485) - lu(k,1526) = lu(k,1526) - lu(k,1448) * lu(k,1525) - lu(k,1527) = lu(k,1527) - lu(k,1449) * lu(k,1525) - lu(k,1528) = lu(k,1528) - lu(k,1450) * lu(k,1525) - lu(k,1529) = lu(k,1529) - lu(k,1451) * lu(k,1525) - lu(k,1531) = lu(k,1531) - lu(k,1452) * lu(k,1525) - lu(k,1532) = lu(k,1532) - lu(k,1453) * lu(k,1525) - lu(k,1535) = lu(k,1535) - lu(k,1454) * lu(k,1525) - lu(k,1536) = lu(k,1536) - lu(k,1455) * lu(k,1525) - lu(k,1537) = lu(k,1537) - lu(k,1456) * lu(k,1525) - lu(k,1539) = lu(k,1539) - lu(k,1457) * lu(k,1525) - lu(k,1540) = lu(k,1540) - lu(k,1458) * lu(k,1525) - lu(k,1541) = lu(k,1541) - lu(k,1459) * lu(k,1525) - lu(k,1690) = lu(k,1690) - lu(k,1448) * lu(k,1689) - lu(k,1691) = lu(k,1691) - lu(k,1449) * lu(k,1689) - lu(k,1692) = lu(k,1692) - lu(k,1450) * lu(k,1689) - lu(k,1693) = lu(k,1693) - lu(k,1451) * lu(k,1689) - lu(k,1695) = lu(k,1695) - lu(k,1452) * lu(k,1689) - lu(k,1696) = lu(k,1696) - lu(k,1453) * lu(k,1689) - lu(k,1699) = lu(k,1699) - lu(k,1454) * lu(k,1689) - lu(k,1700) = lu(k,1700) - lu(k,1455) * lu(k,1689) - lu(k,1701) = lu(k,1701) - lu(k,1456) * lu(k,1689) - lu(k,1703) = lu(k,1703) - lu(k,1457) * lu(k,1689) - lu(k,1704) = lu(k,1704) - lu(k,1458) * lu(k,1689) - lu(k,1705) = lu(k,1705) - lu(k,1459) * lu(k,1689) - lu(k,1716) = lu(k,1716) - lu(k,1448) * lu(k,1715) - lu(k,1717) = lu(k,1717) - lu(k,1449) * lu(k,1715) - lu(k,1718) = lu(k,1718) - lu(k,1450) * lu(k,1715) - lu(k,1719) = lu(k,1719) - lu(k,1451) * lu(k,1715) - lu(k,1721) = lu(k,1721) - lu(k,1452) * lu(k,1715) - lu(k,1722) = lu(k,1722) - lu(k,1453) * lu(k,1715) - lu(k,1725) = lu(k,1725) - lu(k,1454) * lu(k,1715) - lu(k,1726) = lu(k,1726) - lu(k,1455) * lu(k,1715) - lu(k,1727) = lu(k,1727) - lu(k,1456) * lu(k,1715) - lu(k,1729) = lu(k,1729) - lu(k,1457) * lu(k,1715) - lu(k,1730) = lu(k,1730) - lu(k,1458) * lu(k,1715) - lu(k,1731) = lu(k,1731) - lu(k,1459) * lu(k,1715) - lu(k,1773) = lu(k,1773) - lu(k,1448) * lu(k,1772) - lu(k,1774) = lu(k,1774) - lu(k,1449) * lu(k,1772) - lu(k,1775) = lu(k,1775) - lu(k,1450) * lu(k,1772) - lu(k,1776) = lu(k,1776) - lu(k,1451) * lu(k,1772) - lu(k,1778) = lu(k,1778) - lu(k,1452) * lu(k,1772) - lu(k,1779) = lu(k,1779) - lu(k,1453) * lu(k,1772) - lu(k,1782) = lu(k,1782) - lu(k,1454) * lu(k,1772) - lu(k,1783) = lu(k,1783) - lu(k,1455) * lu(k,1772) - lu(k,1784) = lu(k,1784) - lu(k,1456) * lu(k,1772) - lu(k,1786) = lu(k,1786) - lu(k,1457) * lu(k,1772) - lu(k,1787) = lu(k,1787) - lu(k,1458) * lu(k,1772) - lu(k,1788) = lu(k,1788) - lu(k,1459) * lu(k,1772) - lu(k,1825) = lu(k,1825) - lu(k,1448) * lu(k,1824) - lu(k,1826) = lu(k,1826) - lu(k,1449) * lu(k,1824) - lu(k,1827) = lu(k,1827) - lu(k,1450) * lu(k,1824) - lu(k,1828) = lu(k,1828) - lu(k,1451) * lu(k,1824) - lu(k,1830) = lu(k,1830) - lu(k,1452) * lu(k,1824) - lu(k,1831) = lu(k,1831) - lu(k,1453) * lu(k,1824) - lu(k,1834) = lu(k,1834) - lu(k,1454) * lu(k,1824) - lu(k,1835) = lu(k,1835) - lu(k,1455) * lu(k,1824) - lu(k,1836) = lu(k,1836) - lu(k,1456) * lu(k,1824) - lu(k,1838) = lu(k,1838) - lu(k,1457) * lu(k,1824) - lu(k,1839) = lu(k,1839) - lu(k,1458) * lu(k,1824) - lu(k,1840) = lu(k,1840) - lu(k,1459) * lu(k,1824) - lu(k,1917) = lu(k,1917) - lu(k,1448) * lu(k,1916) - lu(k,1918) = lu(k,1918) - lu(k,1449) * lu(k,1916) - lu(k,1919) = lu(k,1919) - lu(k,1450) * lu(k,1916) - lu(k,1920) = lu(k,1920) - lu(k,1451) * lu(k,1916) - lu(k,1922) = lu(k,1922) - lu(k,1452) * lu(k,1916) - lu(k,1923) = lu(k,1923) - lu(k,1453) * lu(k,1916) - lu(k,1926) = lu(k,1926) - lu(k,1454) * lu(k,1916) - lu(k,1927) = lu(k,1927) - lu(k,1455) * lu(k,1916) - lu(k,1928) = lu(k,1928) - lu(k,1456) * lu(k,1916) - lu(k,1930) = lu(k,1930) - lu(k,1457) * lu(k,1916) - lu(k,1931) = lu(k,1931) - lu(k,1458) * lu(k,1916) - lu(k,1932) = lu(k,1932) - lu(k,1459) * lu(k,1916) - lu(k,1961) = lu(k,1961) - lu(k,1448) * lu(k,1960) - lu(k,1962) = lu(k,1962) - lu(k,1449) * lu(k,1960) - lu(k,1963) = lu(k,1963) - lu(k,1450) * lu(k,1960) - lu(k,1964) = lu(k,1964) - lu(k,1451) * lu(k,1960) - lu(k,1966) = lu(k,1966) - lu(k,1452) * lu(k,1960) - lu(k,1967) = lu(k,1967) - lu(k,1453) * lu(k,1960) - lu(k,1970) = lu(k,1970) - lu(k,1454) * lu(k,1960) - lu(k,1971) = lu(k,1971) - lu(k,1455) * lu(k,1960) - lu(k,1972) = lu(k,1972) - lu(k,1456) * lu(k,1960) - lu(k,1974) = lu(k,1974) - lu(k,1457) * lu(k,1960) - lu(k,1975) = lu(k,1975) - lu(k,1458) * lu(k,1960) - lu(k,1976) = lu(k,1976) - lu(k,1459) * lu(k,1960) - lu(k,2000) = lu(k,2000) - lu(k,1448) * lu(k,1999) - lu(k,2001) = lu(k,2001) - lu(k,1449) * lu(k,1999) - lu(k,2002) = lu(k,2002) - lu(k,1450) * lu(k,1999) - lu(k,2003) = lu(k,2003) - lu(k,1451) * lu(k,1999) - lu(k,2005) = lu(k,2005) - lu(k,1452) * lu(k,1999) - lu(k,2006) = lu(k,2006) - lu(k,1453) * lu(k,1999) - lu(k,2009) = lu(k,2009) - lu(k,1454) * lu(k,1999) - lu(k,2010) = lu(k,2010) - lu(k,1455) * lu(k,1999) - lu(k,2011) = lu(k,2011) - lu(k,1456) * lu(k,1999) - lu(k,2013) = lu(k,2013) - lu(k,1457) * lu(k,1999) - lu(k,2014) = lu(k,2014) - lu(k,1458) * lu(k,1999) - lu(k,2015) = lu(k,2015) - lu(k,1459) * lu(k,1999) - lu(k,2107) = lu(k,2107) - lu(k,1448) * lu(k,2106) - lu(k,2108) = lu(k,2108) - lu(k,1449) * lu(k,2106) - lu(k,2109) = lu(k,2109) - lu(k,1450) * lu(k,2106) - lu(k,2110) = lu(k,2110) - lu(k,1451) * lu(k,2106) - lu(k,2112) = lu(k,2112) - lu(k,1452) * lu(k,2106) - lu(k,2113) = lu(k,2113) - lu(k,1453) * lu(k,2106) - lu(k,2116) = lu(k,2116) - lu(k,1454) * lu(k,2106) - lu(k,2117) = lu(k,2117) - lu(k,1455) * lu(k,2106) - lu(k,2118) = lu(k,2118) - lu(k,1456) * lu(k,2106) - lu(k,2120) = lu(k,2120) - lu(k,1457) * lu(k,2106) - lu(k,2121) = lu(k,2121) - lu(k,1458) * lu(k,2106) - lu(k,2122) = lu(k,2122) - lu(k,1459) * lu(k,2106) - lu(k,2130) = lu(k,2130) - lu(k,1448) * lu(k,2129) - lu(k,2131) = lu(k,2131) - lu(k,1449) * lu(k,2129) - lu(k,2132) = lu(k,2132) - lu(k,1450) * lu(k,2129) - lu(k,2133) = lu(k,2133) - lu(k,1451) * lu(k,2129) - lu(k,2135) = lu(k,2135) - lu(k,1452) * lu(k,2129) - lu(k,2136) = - lu(k,1453) * lu(k,2129) - lu(k,2139) = lu(k,2139) - lu(k,1454) * lu(k,2129) - lu(k,2140) = lu(k,2140) - lu(k,1455) * lu(k,2129) - lu(k,2141) = lu(k,2141) - lu(k,1456) * lu(k,2129) - lu(k,2143) = lu(k,2143) - lu(k,1457) * lu(k,2129) - lu(k,2144) = lu(k,2144) - lu(k,1458) * lu(k,2129) - lu(k,2145) = lu(k,2145) - lu(k,1459) * lu(k,2129) - lu(k,2154) = lu(k,2154) - lu(k,1448) * lu(k,2153) - lu(k,2155) = lu(k,2155) - lu(k,1449) * lu(k,2153) - lu(k,2156) = lu(k,2156) - lu(k,1450) * lu(k,2153) - lu(k,2157) = lu(k,2157) - lu(k,1451) * lu(k,2153) - lu(k,2159) = lu(k,2159) - lu(k,1452) * lu(k,2153) - lu(k,2160) = - lu(k,1453) * lu(k,2153) - lu(k,2163) = lu(k,2163) - lu(k,1454) * lu(k,2153) - lu(k,2164) = lu(k,2164) - lu(k,1455) * lu(k,2153) - lu(k,2165) = lu(k,2165) - lu(k,1456) * lu(k,2153) - lu(k,2167) = lu(k,2167) - lu(k,1457) * lu(k,2153) - lu(k,2168) = lu(k,2168) - lu(k,1458) * lu(k,2153) - lu(k,2169) = lu(k,2169) - lu(k,1459) * lu(k,2153) - lu(k,2185) = lu(k,2185) - lu(k,1448) * lu(k,2184) - lu(k,2186) = lu(k,2186) - lu(k,1449) * lu(k,2184) - lu(k,2187) = lu(k,2187) - lu(k,1450) * lu(k,2184) - lu(k,2188) = lu(k,2188) - lu(k,1451) * lu(k,2184) - lu(k,2190) = lu(k,2190) - lu(k,1452) * lu(k,2184) - lu(k,2191) = lu(k,2191) - lu(k,1453) * lu(k,2184) - lu(k,2194) = lu(k,2194) - lu(k,1454) * lu(k,2184) - lu(k,2195) = lu(k,2195) - lu(k,1455) * lu(k,2184) - lu(k,2196) = lu(k,2196) - lu(k,1456) * lu(k,2184) - lu(k,2198) = lu(k,2198) - lu(k,1457) * lu(k,2184) - lu(k,2199) = lu(k,2199) - lu(k,1458) * lu(k,2184) - lu(k,2200) = lu(k,2200) - lu(k,1459) * lu(k,2184) - lu(k,2246) = lu(k,2246) - lu(k,1448) * lu(k,2245) - lu(k,2247) = lu(k,2247) - lu(k,1449) * lu(k,2245) - lu(k,2248) = lu(k,2248) - lu(k,1450) * lu(k,2245) - lu(k,2249) = lu(k,2249) - lu(k,1451) * lu(k,2245) - lu(k,2251) = lu(k,2251) - lu(k,1452) * lu(k,2245) - lu(k,2252) = lu(k,2252) - lu(k,1453) * lu(k,2245) - lu(k,2255) = lu(k,2255) - lu(k,1454) * lu(k,2245) - lu(k,2256) = lu(k,2256) - lu(k,1455) * lu(k,2245) - lu(k,2257) = lu(k,2257) - lu(k,1456) * lu(k,2245) - lu(k,2259) = lu(k,2259) - lu(k,1457) * lu(k,2245) - lu(k,2260) = lu(k,2260) - lu(k,1458) * lu(k,2245) - lu(k,2261) = lu(k,2261) - lu(k,1459) * lu(k,2245) - lu(k,2272) = lu(k,2272) - lu(k,1448) * lu(k,2271) - lu(k,2273) = lu(k,2273) - lu(k,1449) * lu(k,2271) - lu(k,2274) = lu(k,2274) - lu(k,1450) * lu(k,2271) - lu(k,2275) = lu(k,2275) - lu(k,1451) * lu(k,2271) - lu(k,2277) = lu(k,2277) - lu(k,1452) * lu(k,2271) - lu(k,2278) = lu(k,2278) - lu(k,1453) * lu(k,2271) - lu(k,2281) = lu(k,2281) - lu(k,1454) * lu(k,2271) - lu(k,2282) = lu(k,2282) - lu(k,1455) * lu(k,2271) - lu(k,2283) = lu(k,2283) - lu(k,1456) * lu(k,2271) - lu(k,2285) = lu(k,2285) - lu(k,1457) * lu(k,2271) - lu(k,2286) = lu(k,2286) - lu(k,1458) * lu(k,2271) - lu(k,2287) = lu(k,2287) - lu(k,1459) * lu(k,2271) - lu(k,1465) = 1._r8 / lu(k,1465) - lu(k,1466) = lu(k,1466) * lu(k,1465) - lu(k,1467) = lu(k,1467) * lu(k,1465) - lu(k,1468) = lu(k,1468) * lu(k,1465) - lu(k,1469) = lu(k,1469) * lu(k,1465) - lu(k,1470) = lu(k,1470) * lu(k,1465) - lu(k,1471) = lu(k,1471) * lu(k,1465) - lu(k,1472) = lu(k,1472) * lu(k,1465) - lu(k,1473) = lu(k,1473) * lu(k,1465) - lu(k,1474) = lu(k,1474) * lu(k,1465) - lu(k,1475) = lu(k,1475) * lu(k,1465) - lu(k,1476) = lu(k,1476) * lu(k,1465) - lu(k,1477) = lu(k,1477) * lu(k,1465) - lu(k,1487) = lu(k,1487) - lu(k,1466) * lu(k,1486) - lu(k,1488) = lu(k,1488) - lu(k,1467) * lu(k,1486) - lu(k,1489) = lu(k,1489) - lu(k,1468) * lu(k,1486) - lu(k,1490) = lu(k,1490) - lu(k,1469) * lu(k,1486) - lu(k,1491) = lu(k,1491) - lu(k,1470) * lu(k,1486) - lu(k,1493) = lu(k,1493) - lu(k,1471) * lu(k,1486) - lu(k,1494) = lu(k,1494) - lu(k,1472) * lu(k,1486) - lu(k,1495) = lu(k,1495) - lu(k,1473) * lu(k,1486) - lu(k,1496) = lu(k,1496) - lu(k,1474) * lu(k,1486) - lu(k,1498) = lu(k,1498) - lu(k,1475) * lu(k,1486) - lu(k,1499) = lu(k,1499) - lu(k,1476) * lu(k,1486) - lu(k,1500) = lu(k,1500) - lu(k,1477) * lu(k,1486) - lu(k,1527) = lu(k,1527) - lu(k,1466) * lu(k,1526) - lu(k,1528) = lu(k,1528) - lu(k,1467) * lu(k,1526) - lu(k,1529) = lu(k,1529) - lu(k,1468) * lu(k,1526) - lu(k,1531) = lu(k,1531) - lu(k,1469) * lu(k,1526) - lu(k,1532) = lu(k,1532) - lu(k,1470) * lu(k,1526) - lu(k,1534) = - lu(k,1471) * lu(k,1526) - lu(k,1535) = lu(k,1535) - lu(k,1472) * lu(k,1526) - lu(k,1536) = lu(k,1536) - lu(k,1473) * lu(k,1526) - lu(k,1537) = lu(k,1537) - lu(k,1474) * lu(k,1526) - lu(k,1539) = lu(k,1539) - lu(k,1475) * lu(k,1526) - lu(k,1540) = lu(k,1540) - lu(k,1476) * lu(k,1526) - lu(k,1541) = lu(k,1541) - lu(k,1477) * lu(k,1526) - lu(k,1691) = lu(k,1691) - lu(k,1466) * lu(k,1690) - lu(k,1692) = lu(k,1692) - lu(k,1467) * lu(k,1690) - lu(k,1693) = lu(k,1693) - lu(k,1468) * lu(k,1690) - lu(k,1695) = lu(k,1695) - lu(k,1469) * lu(k,1690) - lu(k,1696) = lu(k,1696) - lu(k,1470) * lu(k,1690) - lu(k,1698) = lu(k,1698) - lu(k,1471) * lu(k,1690) - lu(k,1699) = lu(k,1699) - lu(k,1472) * lu(k,1690) - lu(k,1700) = lu(k,1700) - lu(k,1473) * lu(k,1690) - lu(k,1701) = lu(k,1701) - lu(k,1474) * lu(k,1690) - lu(k,1703) = lu(k,1703) - lu(k,1475) * lu(k,1690) - lu(k,1704) = lu(k,1704) - lu(k,1476) * lu(k,1690) - lu(k,1705) = lu(k,1705) - lu(k,1477) * lu(k,1690) - lu(k,1717) = lu(k,1717) - lu(k,1466) * lu(k,1716) - lu(k,1718) = lu(k,1718) - lu(k,1467) * lu(k,1716) - lu(k,1719) = lu(k,1719) - lu(k,1468) * lu(k,1716) - lu(k,1721) = lu(k,1721) - lu(k,1469) * lu(k,1716) - lu(k,1722) = lu(k,1722) - lu(k,1470) * lu(k,1716) - lu(k,1724) = lu(k,1724) - lu(k,1471) * lu(k,1716) - lu(k,1725) = lu(k,1725) - lu(k,1472) * lu(k,1716) - lu(k,1726) = lu(k,1726) - lu(k,1473) * lu(k,1716) - lu(k,1727) = lu(k,1727) - lu(k,1474) * lu(k,1716) - lu(k,1729) = lu(k,1729) - lu(k,1475) * lu(k,1716) - lu(k,1730) = lu(k,1730) - lu(k,1476) * lu(k,1716) - lu(k,1731) = lu(k,1731) - lu(k,1477) * lu(k,1716) - lu(k,1774) = lu(k,1774) - lu(k,1466) * lu(k,1773) - lu(k,1775) = lu(k,1775) - lu(k,1467) * lu(k,1773) - lu(k,1776) = lu(k,1776) - lu(k,1468) * lu(k,1773) - lu(k,1778) = lu(k,1778) - lu(k,1469) * lu(k,1773) - lu(k,1779) = lu(k,1779) - lu(k,1470) * lu(k,1773) - lu(k,1781) = lu(k,1781) - lu(k,1471) * lu(k,1773) - lu(k,1782) = lu(k,1782) - lu(k,1472) * lu(k,1773) - lu(k,1783) = lu(k,1783) - lu(k,1473) * lu(k,1773) - lu(k,1784) = lu(k,1784) - lu(k,1474) * lu(k,1773) - lu(k,1786) = lu(k,1786) - lu(k,1475) * lu(k,1773) - lu(k,1787) = lu(k,1787) - lu(k,1476) * lu(k,1773) - lu(k,1788) = lu(k,1788) - lu(k,1477) * lu(k,1773) - lu(k,1826) = lu(k,1826) - lu(k,1466) * lu(k,1825) - lu(k,1827) = lu(k,1827) - lu(k,1467) * lu(k,1825) - lu(k,1828) = lu(k,1828) - lu(k,1468) * lu(k,1825) - lu(k,1830) = lu(k,1830) - lu(k,1469) * lu(k,1825) - lu(k,1831) = lu(k,1831) - lu(k,1470) * lu(k,1825) - lu(k,1833) = lu(k,1833) - lu(k,1471) * lu(k,1825) - lu(k,1834) = lu(k,1834) - lu(k,1472) * lu(k,1825) - lu(k,1835) = lu(k,1835) - lu(k,1473) * lu(k,1825) - lu(k,1836) = lu(k,1836) - lu(k,1474) * lu(k,1825) - lu(k,1838) = lu(k,1838) - lu(k,1475) * lu(k,1825) - lu(k,1839) = lu(k,1839) - lu(k,1476) * lu(k,1825) - lu(k,1840) = lu(k,1840) - lu(k,1477) * lu(k,1825) - lu(k,1918) = lu(k,1918) - lu(k,1466) * lu(k,1917) - lu(k,1919) = lu(k,1919) - lu(k,1467) * lu(k,1917) - lu(k,1920) = lu(k,1920) - lu(k,1468) * lu(k,1917) - lu(k,1922) = lu(k,1922) - lu(k,1469) * lu(k,1917) - lu(k,1923) = lu(k,1923) - lu(k,1470) * lu(k,1917) - lu(k,1925) = lu(k,1925) - lu(k,1471) * lu(k,1917) - lu(k,1926) = lu(k,1926) - lu(k,1472) * lu(k,1917) - lu(k,1927) = lu(k,1927) - lu(k,1473) * lu(k,1917) - lu(k,1928) = lu(k,1928) - lu(k,1474) * lu(k,1917) - lu(k,1930) = lu(k,1930) - lu(k,1475) * lu(k,1917) - lu(k,1931) = lu(k,1931) - lu(k,1476) * lu(k,1917) - lu(k,1932) = lu(k,1932) - lu(k,1477) * lu(k,1917) - lu(k,1962) = lu(k,1962) - lu(k,1466) * lu(k,1961) - lu(k,1963) = lu(k,1963) - lu(k,1467) * lu(k,1961) - lu(k,1964) = lu(k,1964) - lu(k,1468) * lu(k,1961) - lu(k,1966) = lu(k,1966) - lu(k,1469) * lu(k,1961) - lu(k,1967) = lu(k,1967) - lu(k,1470) * lu(k,1961) - lu(k,1969) = lu(k,1969) - lu(k,1471) * lu(k,1961) - lu(k,1970) = lu(k,1970) - lu(k,1472) * lu(k,1961) - lu(k,1971) = lu(k,1971) - lu(k,1473) * lu(k,1961) - lu(k,1972) = lu(k,1972) - lu(k,1474) * lu(k,1961) - lu(k,1974) = lu(k,1974) - lu(k,1475) * lu(k,1961) - lu(k,1975) = lu(k,1975) - lu(k,1476) * lu(k,1961) - lu(k,1976) = lu(k,1976) - lu(k,1477) * lu(k,1961) - lu(k,2001) = lu(k,2001) - lu(k,1466) * lu(k,2000) - lu(k,2002) = lu(k,2002) - lu(k,1467) * lu(k,2000) - lu(k,2003) = lu(k,2003) - lu(k,1468) * lu(k,2000) - lu(k,2005) = lu(k,2005) - lu(k,1469) * lu(k,2000) - lu(k,2006) = lu(k,2006) - lu(k,1470) * lu(k,2000) - lu(k,2008) = lu(k,2008) - lu(k,1471) * lu(k,2000) - lu(k,2009) = lu(k,2009) - lu(k,1472) * lu(k,2000) - lu(k,2010) = lu(k,2010) - lu(k,1473) * lu(k,2000) - lu(k,2011) = lu(k,2011) - lu(k,1474) * lu(k,2000) - lu(k,2013) = lu(k,2013) - lu(k,1475) * lu(k,2000) - lu(k,2014) = lu(k,2014) - lu(k,1476) * lu(k,2000) - lu(k,2015) = lu(k,2015) - lu(k,1477) * lu(k,2000) - lu(k,2108) = lu(k,2108) - lu(k,1466) * lu(k,2107) - lu(k,2109) = lu(k,2109) - lu(k,1467) * lu(k,2107) - lu(k,2110) = lu(k,2110) - lu(k,1468) * lu(k,2107) - lu(k,2112) = lu(k,2112) - lu(k,1469) * lu(k,2107) - lu(k,2113) = lu(k,2113) - lu(k,1470) * lu(k,2107) - lu(k,2115) = lu(k,2115) - lu(k,1471) * lu(k,2107) - lu(k,2116) = lu(k,2116) - lu(k,1472) * lu(k,2107) - lu(k,2117) = lu(k,2117) - lu(k,1473) * lu(k,2107) - lu(k,2118) = lu(k,2118) - lu(k,1474) * lu(k,2107) - lu(k,2120) = lu(k,2120) - lu(k,1475) * lu(k,2107) - lu(k,2121) = lu(k,2121) - lu(k,1476) * lu(k,2107) - lu(k,2122) = lu(k,2122) - lu(k,1477) * lu(k,2107) - lu(k,2131) = lu(k,2131) - lu(k,1466) * lu(k,2130) - lu(k,2132) = lu(k,2132) - lu(k,1467) * lu(k,2130) - lu(k,2133) = lu(k,2133) - lu(k,1468) * lu(k,2130) - lu(k,2135) = lu(k,2135) - lu(k,1469) * lu(k,2130) - lu(k,2136) = lu(k,2136) - lu(k,1470) * lu(k,2130) - lu(k,2138) = lu(k,2138) - lu(k,1471) * lu(k,2130) - lu(k,2139) = lu(k,2139) - lu(k,1472) * lu(k,2130) - lu(k,2140) = lu(k,2140) - lu(k,1473) * lu(k,2130) - lu(k,2141) = lu(k,2141) - lu(k,1474) * lu(k,2130) - lu(k,2143) = lu(k,2143) - lu(k,1475) * lu(k,2130) - lu(k,2144) = lu(k,2144) - lu(k,1476) * lu(k,2130) - lu(k,2145) = lu(k,2145) - lu(k,1477) * lu(k,2130) - lu(k,2155) = lu(k,2155) - lu(k,1466) * lu(k,2154) - lu(k,2156) = lu(k,2156) - lu(k,1467) * lu(k,2154) - lu(k,2157) = lu(k,2157) - lu(k,1468) * lu(k,2154) - lu(k,2159) = lu(k,2159) - lu(k,1469) * lu(k,2154) - lu(k,2160) = lu(k,2160) - lu(k,1470) * lu(k,2154) - lu(k,2162) = lu(k,2162) - lu(k,1471) * lu(k,2154) - lu(k,2163) = lu(k,2163) - lu(k,1472) * lu(k,2154) - lu(k,2164) = lu(k,2164) - lu(k,1473) * lu(k,2154) - lu(k,2165) = lu(k,2165) - lu(k,1474) * lu(k,2154) - lu(k,2167) = lu(k,2167) - lu(k,1475) * lu(k,2154) - lu(k,2168) = lu(k,2168) - lu(k,1476) * lu(k,2154) - lu(k,2169) = lu(k,2169) - lu(k,1477) * lu(k,2154) - lu(k,2186) = lu(k,2186) - lu(k,1466) * lu(k,2185) - lu(k,2187) = lu(k,2187) - lu(k,1467) * lu(k,2185) - lu(k,2188) = lu(k,2188) - lu(k,1468) * lu(k,2185) - lu(k,2190) = lu(k,2190) - lu(k,1469) * lu(k,2185) - lu(k,2191) = lu(k,2191) - lu(k,1470) * lu(k,2185) - lu(k,2193) = lu(k,2193) - lu(k,1471) * lu(k,2185) - lu(k,2194) = lu(k,2194) - lu(k,1472) * lu(k,2185) - lu(k,2195) = lu(k,2195) - lu(k,1473) * lu(k,2185) - lu(k,2196) = lu(k,2196) - lu(k,1474) * lu(k,2185) - lu(k,2198) = lu(k,2198) - lu(k,1475) * lu(k,2185) - lu(k,2199) = lu(k,2199) - lu(k,1476) * lu(k,2185) - lu(k,2200) = lu(k,2200) - lu(k,1477) * lu(k,2185) - lu(k,2247) = lu(k,2247) - lu(k,1466) * lu(k,2246) - lu(k,2248) = lu(k,2248) - lu(k,1467) * lu(k,2246) - lu(k,2249) = lu(k,2249) - lu(k,1468) * lu(k,2246) - lu(k,2251) = lu(k,2251) - lu(k,1469) * lu(k,2246) - lu(k,2252) = lu(k,2252) - lu(k,1470) * lu(k,2246) - lu(k,2254) = lu(k,2254) - lu(k,1471) * lu(k,2246) - lu(k,2255) = lu(k,2255) - lu(k,1472) * lu(k,2246) - lu(k,2256) = lu(k,2256) - lu(k,1473) * lu(k,2246) - lu(k,2257) = lu(k,2257) - lu(k,1474) * lu(k,2246) - lu(k,2259) = lu(k,2259) - lu(k,1475) * lu(k,2246) - lu(k,2260) = lu(k,2260) - lu(k,1476) * lu(k,2246) - lu(k,2261) = lu(k,2261) - lu(k,1477) * lu(k,2246) - lu(k,2273) = lu(k,2273) - lu(k,1466) * lu(k,2272) - lu(k,2274) = lu(k,2274) - lu(k,1467) * lu(k,2272) - lu(k,2275) = lu(k,2275) - lu(k,1468) * lu(k,2272) - lu(k,2277) = lu(k,2277) - lu(k,1469) * lu(k,2272) - lu(k,2278) = lu(k,2278) - lu(k,1470) * lu(k,2272) - lu(k,2280) = lu(k,2280) - lu(k,1471) * lu(k,2272) - lu(k,2281) = lu(k,2281) - lu(k,1472) * lu(k,2272) - lu(k,2282) = lu(k,2282) - lu(k,1473) * lu(k,2272) - lu(k,2283) = lu(k,2283) - lu(k,1474) * lu(k,2272) - lu(k,2285) = lu(k,2285) - lu(k,1475) * lu(k,2272) - lu(k,2286) = lu(k,2286) - lu(k,1476) * lu(k,2272) - lu(k,2287) = lu(k,2287) - lu(k,1477) * lu(k,2272) - end do - end subroutine lu_fac28 - subroutine lu_fac29( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1487) = 1._r8 / lu(k,1487) - lu(k,1488) = lu(k,1488) * lu(k,1487) - lu(k,1489) = lu(k,1489) * lu(k,1487) - lu(k,1490) = lu(k,1490) * lu(k,1487) - lu(k,1491) = lu(k,1491) * lu(k,1487) - lu(k,1492) = lu(k,1492) * lu(k,1487) - lu(k,1493) = lu(k,1493) * lu(k,1487) - lu(k,1494) = lu(k,1494) * lu(k,1487) - lu(k,1495) = lu(k,1495) * lu(k,1487) - lu(k,1496) = lu(k,1496) * lu(k,1487) - lu(k,1497) = lu(k,1497) * lu(k,1487) - lu(k,1498) = lu(k,1498) * lu(k,1487) - lu(k,1499) = lu(k,1499) * lu(k,1487) - lu(k,1500) = lu(k,1500) * lu(k,1487) - lu(k,1528) = lu(k,1528) - lu(k,1488) * lu(k,1527) - lu(k,1529) = lu(k,1529) - lu(k,1489) * lu(k,1527) - lu(k,1531) = lu(k,1531) - lu(k,1490) * lu(k,1527) - lu(k,1532) = lu(k,1532) - lu(k,1491) * lu(k,1527) - lu(k,1533) = lu(k,1533) - lu(k,1492) * lu(k,1527) - lu(k,1534) = lu(k,1534) - lu(k,1493) * lu(k,1527) - lu(k,1535) = lu(k,1535) - lu(k,1494) * lu(k,1527) - lu(k,1536) = lu(k,1536) - lu(k,1495) * lu(k,1527) - lu(k,1537) = lu(k,1537) - lu(k,1496) * lu(k,1527) - lu(k,1538) = lu(k,1538) - lu(k,1497) * lu(k,1527) - lu(k,1539) = lu(k,1539) - lu(k,1498) * lu(k,1527) - lu(k,1540) = lu(k,1540) - lu(k,1499) * lu(k,1527) - lu(k,1541) = lu(k,1541) - lu(k,1500) * lu(k,1527) - lu(k,1692) = lu(k,1692) - lu(k,1488) * lu(k,1691) - lu(k,1693) = lu(k,1693) - lu(k,1489) * lu(k,1691) - lu(k,1695) = lu(k,1695) - lu(k,1490) * lu(k,1691) - lu(k,1696) = lu(k,1696) - lu(k,1491) * lu(k,1691) - lu(k,1697) = lu(k,1697) - lu(k,1492) * lu(k,1691) - lu(k,1698) = lu(k,1698) - lu(k,1493) * lu(k,1691) - lu(k,1699) = lu(k,1699) - lu(k,1494) * lu(k,1691) - lu(k,1700) = lu(k,1700) - lu(k,1495) * lu(k,1691) - lu(k,1701) = lu(k,1701) - lu(k,1496) * lu(k,1691) - lu(k,1702) = lu(k,1702) - lu(k,1497) * lu(k,1691) - lu(k,1703) = lu(k,1703) - lu(k,1498) * lu(k,1691) - lu(k,1704) = lu(k,1704) - lu(k,1499) * lu(k,1691) - lu(k,1705) = lu(k,1705) - lu(k,1500) * lu(k,1691) - lu(k,1718) = lu(k,1718) - lu(k,1488) * lu(k,1717) - lu(k,1719) = lu(k,1719) - lu(k,1489) * lu(k,1717) - lu(k,1721) = lu(k,1721) - lu(k,1490) * lu(k,1717) - lu(k,1722) = lu(k,1722) - lu(k,1491) * lu(k,1717) - lu(k,1723) = lu(k,1723) - lu(k,1492) * lu(k,1717) - lu(k,1724) = lu(k,1724) - lu(k,1493) * lu(k,1717) - lu(k,1725) = lu(k,1725) - lu(k,1494) * lu(k,1717) - lu(k,1726) = lu(k,1726) - lu(k,1495) * lu(k,1717) - lu(k,1727) = lu(k,1727) - lu(k,1496) * lu(k,1717) - lu(k,1728) = lu(k,1728) - lu(k,1497) * lu(k,1717) - lu(k,1729) = lu(k,1729) - lu(k,1498) * lu(k,1717) - lu(k,1730) = lu(k,1730) - lu(k,1499) * lu(k,1717) - lu(k,1731) = lu(k,1731) - lu(k,1500) * lu(k,1717) - lu(k,1775) = lu(k,1775) - lu(k,1488) * lu(k,1774) - lu(k,1776) = lu(k,1776) - lu(k,1489) * lu(k,1774) - lu(k,1778) = lu(k,1778) - lu(k,1490) * lu(k,1774) - lu(k,1779) = lu(k,1779) - lu(k,1491) * lu(k,1774) - lu(k,1780) = lu(k,1780) - lu(k,1492) * lu(k,1774) - lu(k,1781) = lu(k,1781) - lu(k,1493) * lu(k,1774) - lu(k,1782) = lu(k,1782) - lu(k,1494) * lu(k,1774) - lu(k,1783) = lu(k,1783) - lu(k,1495) * lu(k,1774) - lu(k,1784) = lu(k,1784) - lu(k,1496) * lu(k,1774) - lu(k,1785) = lu(k,1785) - lu(k,1497) * lu(k,1774) - lu(k,1786) = lu(k,1786) - lu(k,1498) * lu(k,1774) - lu(k,1787) = lu(k,1787) - lu(k,1499) * lu(k,1774) - lu(k,1788) = lu(k,1788) - lu(k,1500) * lu(k,1774) - lu(k,1827) = lu(k,1827) - lu(k,1488) * lu(k,1826) - lu(k,1828) = lu(k,1828) - lu(k,1489) * lu(k,1826) - lu(k,1830) = lu(k,1830) - lu(k,1490) * lu(k,1826) - lu(k,1831) = lu(k,1831) - lu(k,1491) * lu(k,1826) - lu(k,1832) = lu(k,1832) - lu(k,1492) * lu(k,1826) - lu(k,1833) = lu(k,1833) - lu(k,1493) * lu(k,1826) - lu(k,1834) = lu(k,1834) - lu(k,1494) * lu(k,1826) - lu(k,1835) = lu(k,1835) - lu(k,1495) * lu(k,1826) - lu(k,1836) = lu(k,1836) - lu(k,1496) * lu(k,1826) - lu(k,1837) = - lu(k,1497) * lu(k,1826) - lu(k,1838) = lu(k,1838) - lu(k,1498) * lu(k,1826) - lu(k,1839) = lu(k,1839) - lu(k,1499) * lu(k,1826) - lu(k,1840) = lu(k,1840) - lu(k,1500) * lu(k,1826) - lu(k,1919) = lu(k,1919) - lu(k,1488) * lu(k,1918) - lu(k,1920) = lu(k,1920) - lu(k,1489) * lu(k,1918) - lu(k,1922) = lu(k,1922) - lu(k,1490) * lu(k,1918) - lu(k,1923) = lu(k,1923) - lu(k,1491) * lu(k,1918) - lu(k,1924) = lu(k,1924) - lu(k,1492) * lu(k,1918) - lu(k,1925) = lu(k,1925) - lu(k,1493) * lu(k,1918) - lu(k,1926) = lu(k,1926) - lu(k,1494) * lu(k,1918) - lu(k,1927) = lu(k,1927) - lu(k,1495) * lu(k,1918) - lu(k,1928) = lu(k,1928) - lu(k,1496) * lu(k,1918) - lu(k,1929) = lu(k,1929) - lu(k,1497) * lu(k,1918) - lu(k,1930) = lu(k,1930) - lu(k,1498) * lu(k,1918) - lu(k,1931) = lu(k,1931) - lu(k,1499) * lu(k,1918) - lu(k,1932) = lu(k,1932) - lu(k,1500) * lu(k,1918) - lu(k,1963) = lu(k,1963) - lu(k,1488) * lu(k,1962) - lu(k,1964) = lu(k,1964) - lu(k,1489) * lu(k,1962) - lu(k,1966) = lu(k,1966) - lu(k,1490) * lu(k,1962) - lu(k,1967) = lu(k,1967) - lu(k,1491) * lu(k,1962) - lu(k,1968) = lu(k,1968) - lu(k,1492) * lu(k,1962) - lu(k,1969) = lu(k,1969) - lu(k,1493) * lu(k,1962) - lu(k,1970) = lu(k,1970) - lu(k,1494) * lu(k,1962) - lu(k,1971) = lu(k,1971) - lu(k,1495) * lu(k,1962) - lu(k,1972) = lu(k,1972) - lu(k,1496) * lu(k,1962) - lu(k,1973) = lu(k,1973) - lu(k,1497) * lu(k,1962) - lu(k,1974) = lu(k,1974) - lu(k,1498) * lu(k,1962) - lu(k,1975) = lu(k,1975) - lu(k,1499) * lu(k,1962) - lu(k,1976) = lu(k,1976) - lu(k,1500) * lu(k,1962) - lu(k,2002) = lu(k,2002) - lu(k,1488) * lu(k,2001) - lu(k,2003) = lu(k,2003) - lu(k,1489) * lu(k,2001) - lu(k,2005) = lu(k,2005) - lu(k,1490) * lu(k,2001) - lu(k,2006) = lu(k,2006) - lu(k,1491) * lu(k,2001) - lu(k,2007) = lu(k,2007) - lu(k,1492) * lu(k,2001) - lu(k,2008) = lu(k,2008) - lu(k,1493) * lu(k,2001) - lu(k,2009) = lu(k,2009) - lu(k,1494) * lu(k,2001) - lu(k,2010) = lu(k,2010) - lu(k,1495) * lu(k,2001) - lu(k,2011) = lu(k,2011) - lu(k,1496) * lu(k,2001) - lu(k,2012) = lu(k,2012) - lu(k,1497) * lu(k,2001) - lu(k,2013) = lu(k,2013) - lu(k,1498) * lu(k,2001) - lu(k,2014) = lu(k,2014) - lu(k,1499) * lu(k,2001) - lu(k,2015) = lu(k,2015) - lu(k,1500) * lu(k,2001) - lu(k,2109) = lu(k,2109) - lu(k,1488) * lu(k,2108) - lu(k,2110) = lu(k,2110) - lu(k,1489) * lu(k,2108) - lu(k,2112) = lu(k,2112) - lu(k,1490) * lu(k,2108) - lu(k,2113) = lu(k,2113) - lu(k,1491) * lu(k,2108) - lu(k,2114) = lu(k,2114) - lu(k,1492) * lu(k,2108) - lu(k,2115) = lu(k,2115) - lu(k,1493) * lu(k,2108) - lu(k,2116) = lu(k,2116) - lu(k,1494) * lu(k,2108) - lu(k,2117) = lu(k,2117) - lu(k,1495) * lu(k,2108) - lu(k,2118) = lu(k,2118) - lu(k,1496) * lu(k,2108) - lu(k,2119) = lu(k,2119) - lu(k,1497) * lu(k,2108) - lu(k,2120) = lu(k,2120) - lu(k,1498) * lu(k,2108) - lu(k,2121) = lu(k,2121) - lu(k,1499) * lu(k,2108) - lu(k,2122) = lu(k,2122) - lu(k,1500) * lu(k,2108) - lu(k,2132) = lu(k,2132) - lu(k,1488) * lu(k,2131) - lu(k,2133) = lu(k,2133) - lu(k,1489) * lu(k,2131) - lu(k,2135) = lu(k,2135) - lu(k,1490) * lu(k,2131) - lu(k,2136) = lu(k,2136) - lu(k,1491) * lu(k,2131) - lu(k,2137) = - lu(k,1492) * lu(k,2131) - lu(k,2138) = lu(k,2138) - lu(k,1493) * lu(k,2131) - lu(k,2139) = lu(k,2139) - lu(k,1494) * lu(k,2131) - lu(k,2140) = lu(k,2140) - lu(k,1495) * lu(k,2131) - lu(k,2141) = lu(k,2141) - lu(k,1496) * lu(k,2131) - lu(k,2142) = lu(k,2142) - lu(k,1497) * lu(k,2131) - lu(k,2143) = lu(k,2143) - lu(k,1498) * lu(k,2131) - lu(k,2144) = lu(k,2144) - lu(k,1499) * lu(k,2131) - lu(k,2145) = lu(k,2145) - lu(k,1500) * lu(k,2131) - lu(k,2156) = lu(k,2156) - lu(k,1488) * lu(k,2155) - lu(k,2157) = lu(k,2157) - lu(k,1489) * lu(k,2155) - lu(k,2159) = lu(k,2159) - lu(k,1490) * lu(k,2155) - lu(k,2160) = lu(k,2160) - lu(k,1491) * lu(k,2155) - lu(k,2161) = lu(k,2161) - lu(k,1492) * lu(k,2155) - lu(k,2162) = lu(k,2162) - lu(k,1493) * lu(k,2155) - lu(k,2163) = lu(k,2163) - lu(k,1494) * lu(k,2155) - lu(k,2164) = lu(k,2164) - lu(k,1495) * lu(k,2155) - lu(k,2165) = lu(k,2165) - lu(k,1496) * lu(k,2155) - lu(k,2166) = lu(k,2166) - lu(k,1497) * lu(k,2155) - lu(k,2167) = lu(k,2167) - lu(k,1498) * lu(k,2155) - lu(k,2168) = lu(k,2168) - lu(k,1499) * lu(k,2155) - lu(k,2169) = lu(k,2169) - lu(k,1500) * lu(k,2155) - lu(k,2187) = lu(k,2187) - lu(k,1488) * lu(k,2186) - lu(k,2188) = lu(k,2188) - lu(k,1489) * lu(k,2186) - lu(k,2190) = lu(k,2190) - lu(k,1490) * lu(k,2186) - lu(k,2191) = lu(k,2191) - lu(k,1491) * lu(k,2186) - lu(k,2192) = lu(k,2192) - lu(k,1492) * lu(k,2186) - lu(k,2193) = lu(k,2193) - lu(k,1493) * lu(k,2186) - lu(k,2194) = lu(k,2194) - lu(k,1494) * lu(k,2186) - lu(k,2195) = lu(k,2195) - lu(k,1495) * lu(k,2186) - lu(k,2196) = lu(k,2196) - lu(k,1496) * lu(k,2186) - lu(k,2197) = lu(k,2197) - lu(k,1497) * lu(k,2186) - lu(k,2198) = lu(k,2198) - lu(k,1498) * lu(k,2186) - lu(k,2199) = lu(k,2199) - lu(k,1499) * lu(k,2186) - lu(k,2200) = lu(k,2200) - lu(k,1500) * lu(k,2186) - lu(k,2248) = lu(k,2248) - lu(k,1488) * lu(k,2247) - lu(k,2249) = lu(k,2249) - lu(k,1489) * lu(k,2247) - lu(k,2251) = lu(k,2251) - lu(k,1490) * lu(k,2247) - lu(k,2252) = lu(k,2252) - lu(k,1491) * lu(k,2247) - lu(k,2253) = lu(k,2253) - lu(k,1492) * lu(k,2247) - lu(k,2254) = lu(k,2254) - lu(k,1493) * lu(k,2247) - lu(k,2255) = lu(k,2255) - lu(k,1494) * lu(k,2247) - lu(k,2256) = lu(k,2256) - lu(k,1495) * lu(k,2247) - lu(k,2257) = lu(k,2257) - lu(k,1496) * lu(k,2247) - lu(k,2258) = lu(k,2258) - lu(k,1497) * lu(k,2247) - lu(k,2259) = lu(k,2259) - lu(k,1498) * lu(k,2247) - lu(k,2260) = lu(k,2260) - lu(k,1499) * lu(k,2247) - lu(k,2261) = lu(k,2261) - lu(k,1500) * lu(k,2247) - lu(k,2274) = lu(k,2274) - lu(k,1488) * lu(k,2273) - lu(k,2275) = lu(k,2275) - lu(k,1489) * lu(k,2273) - lu(k,2277) = lu(k,2277) - lu(k,1490) * lu(k,2273) - lu(k,2278) = lu(k,2278) - lu(k,1491) * lu(k,2273) - lu(k,2279) = lu(k,2279) - lu(k,1492) * lu(k,2273) - lu(k,2280) = lu(k,2280) - lu(k,1493) * lu(k,2273) - lu(k,2281) = lu(k,2281) - lu(k,1494) * lu(k,2273) - lu(k,2282) = lu(k,2282) - lu(k,1495) * lu(k,2273) - lu(k,2283) = lu(k,2283) - lu(k,1496) * lu(k,2273) - lu(k,2284) = lu(k,2284) - lu(k,1497) * lu(k,2273) - lu(k,2285) = lu(k,2285) - lu(k,1498) * lu(k,2273) - lu(k,2286) = lu(k,2286) - lu(k,1499) * lu(k,2273) - lu(k,2287) = lu(k,2287) - lu(k,1500) * lu(k,2273) - lu(k,1528) = 1._r8 / lu(k,1528) - lu(k,1529) = lu(k,1529) * lu(k,1528) - lu(k,1530) = lu(k,1530) * lu(k,1528) - lu(k,1531) = lu(k,1531) * lu(k,1528) - lu(k,1532) = lu(k,1532) * lu(k,1528) - lu(k,1533) = lu(k,1533) * lu(k,1528) - lu(k,1534) = lu(k,1534) * lu(k,1528) - lu(k,1535) = lu(k,1535) * lu(k,1528) - lu(k,1536) = lu(k,1536) * lu(k,1528) - lu(k,1537) = lu(k,1537) * lu(k,1528) - lu(k,1538) = lu(k,1538) * lu(k,1528) - lu(k,1539) = lu(k,1539) * lu(k,1528) - lu(k,1540) = lu(k,1540) * lu(k,1528) - lu(k,1541) = lu(k,1541) * lu(k,1528) - lu(k,1693) = lu(k,1693) - lu(k,1529) * lu(k,1692) - lu(k,1694) = lu(k,1694) - lu(k,1530) * lu(k,1692) - lu(k,1695) = lu(k,1695) - lu(k,1531) * lu(k,1692) - lu(k,1696) = lu(k,1696) - lu(k,1532) * lu(k,1692) - lu(k,1697) = lu(k,1697) - lu(k,1533) * lu(k,1692) - lu(k,1698) = lu(k,1698) - lu(k,1534) * lu(k,1692) - lu(k,1699) = lu(k,1699) - lu(k,1535) * lu(k,1692) - lu(k,1700) = lu(k,1700) - lu(k,1536) * lu(k,1692) - lu(k,1701) = lu(k,1701) - lu(k,1537) * lu(k,1692) - lu(k,1702) = lu(k,1702) - lu(k,1538) * lu(k,1692) - lu(k,1703) = lu(k,1703) - lu(k,1539) * lu(k,1692) - lu(k,1704) = lu(k,1704) - lu(k,1540) * lu(k,1692) - lu(k,1705) = lu(k,1705) - lu(k,1541) * lu(k,1692) - lu(k,1719) = lu(k,1719) - lu(k,1529) * lu(k,1718) - lu(k,1720) = lu(k,1720) - lu(k,1530) * lu(k,1718) - lu(k,1721) = lu(k,1721) - lu(k,1531) * lu(k,1718) - lu(k,1722) = lu(k,1722) - lu(k,1532) * lu(k,1718) - lu(k,1723) = lu(k,1723) - lu(k,1533) * lu(k,1718) - lu(k,1724) = lu(k,1724) - lu(k,1534) * lu(k,1718) - lu(k,1725) = lu(k,1725) - lu(k,1535) * lu(k,1718) - lu(k,1726) = lu(k,1726) - lu(k,1536) * lu(k,1718) - lu(k,1727) = lu(k,1727) - lu(k,1537) * lu(k,1718) - lu(k,1728) = lu(k,1728) - lu(k,1538) * lu(k,1718) - lu(k,1729) = lu(k,1729) - lu(k,1539) * lu(k,1718) - lu(k,1730) = lu(k,1730) - lu(k,1540) * lu(k,1718) - lu(k,1731) = lu(k,1731) - lu(k,1541) * lu(k,1718) - lu(k,1776) = lu(k,1776) - lu(k,1529) * lu(k,1775) - lu(k,1777) = lu(k,1777) - lu(k,1530) * lu(k,1775) - lu(k,1778) = lu(k,1778) - lu(k,1531) * lu(k,1775) - lu(k,1779) = lu(k,1779) - lu(k,1532) * lu(k,1775) - lu(k,1780) = lu(k,1780) - lu(k,1533) * lu(k,1775) - lu(k,1781) = lu(k,1781) - lu(k,1534) * lu(k,1775) - lu(k,1782) = lu(k,1782) - lu(k,1535) * lu(k,1775) - lu(k,1783) = lu(k,1783) - lu(k,1536) * lu(k,1775) - lu(k,1784) = lu(k,1784) - lu(k,1537) * lu(k,1775) - lu(k,1785) = lu(k,1785) - lu(k,1538) * lu(k,1775) - lu(k,1786) = lu(k,1786) - lu(k,1539) * lu(k,1775) - lu(k,1787) = lu(k,1787) - lu(k,1540) * lu(k,1775) - lu(k,1788) = lu(k,1788) - lu(k,1541) * lu(k,1775) - lu(k,1828) = lu(k,1828) - lu(k,1529) * lu(k,1827) - lu(k,1829) = lu(k,1829) - lu(k,1530) * lu(k,1827) - lu(k,1830) = lu(k,1830) - lu(k,1531) * lu(k,1827) - lu(k,1831) = lu(k,1831) - lu(k,1532) * lu(k,1827) - lu(k,1832) = lu(k,1832) - lu(k,1533) * lu(k,1827) - lu(k,1833) = lu(k,1833) - lu(k,1534) * lu(k,1827) - lu(k,1834) = lu(k,1834) - lu(k,1535) * lu(k,1827) - lu(k,1835) = lu(k,1835) - lu(k,1536) * lu(k,1827) - lu(k,1836) = lu(k,1836) - lu(k,1537) * lu(k,1827) - lu(k,1837) = lu(k,1837) - lu(k,1538) * lu(k,1827) - lu(k,1838) = lu(k,1838) - lu(k,1539) * lu(k,1827) - lu(k,1839) = lu(k,1839) - lu(k,1540) * lu(k,1827) - lu(k,1840) = lu(k,1840) - lu(k,1541) * lu(k,1827) - lu(k,1920) = lu(k,1920) - lu(k,1529) * lu(k,1919) - lu(k,1921) = lu(k,1921) - lu(k,1530) * lu(k,1919) - lu(k,1922) = lu(k,1922) - lu(k,1531) * lu(k,1919) - lu(k,1923) = lu(k,1923) - lu(k,1532) * lu(k,1919) - lu(k,1924) = lu(k,1924) - lu(k,1533) * lu(k,1919) - lu(k,1925) = lu(k,1925) - lu(k,1534) * lu(k,1919) - lu(k,1926) = lu(k,1926) - lu(k,1535) * lu(k,1919) - lu(k,1927) = lu(k,1927) - lu(k,1536) * lu(k,1919) - lu(k,1928) = lu(k,1928) - lu(k,1537) * lu(k,1919) - lu(k,1929) = lu(k,1929) - lu(k,1538) * lu(k,1919) - lu(k,1930) = lu(k,1930) - lu(k,1539) * lu(k,1919) - lu(k,1931) = lu(k,1931) - lu(k,1540) * lu(k,1919) - lu(k,1932) = lu(k,1932) - lu(k,1541) * lu(k,1919) - lu(k,1964) = lu(k,1964) - lu(k,1529) * lu(k,1963) - lu(k,1965) = lu(k,1965) - lu(k,1530) * lu(k,1963) - lu(k,1966) = lu(k,1966) - lu(k,1531) * lu(k,1963) - lu(k,1967) = lu(k,1967) - lu(k,1532) * lu(k,1963) - lu(k,1968) = lu(k,1968) - lu(k,1533) * lu(k,1963) - lu(k,1969) = lu(k,1969) - lu(k,1534) * lu(k,1963) - lu(k,1970) = lu(k,1970) - lu(k,1535) * lu(k,1963) - lu(k,1971) = lu(k,1971) - lu(k,1536) * lu(k,1963) - lu(k,1972) = lu(k,1972) - lu(k,1537) * lu(k,1963) - lu(k,1973) = lu(k,1973) - lu(k,1538) * lu(k,1963) - lu(k,1974) = lu(k,1974) - lu(k,1539) * lu(k,1963) - lu(k,1975) = lu(k,1975) - lu(k,1540) * lu(k,1963) - lu(k,1976) = lu(k,1976) - lu(k,1541) * lu(k,1963) - lu(k,2003) = lu(k,2003) - lu(k,1529) * lu(k,2002) - lu(k,2004) = lu(k,2004) - lu(k,1530) * lu(k,2002) - lu(k,2005) = lu(k,2005) - lu(k,1531) * lu(k,2002) - lu(k,2006) = lu(k,2006) - lu(k,1532) * lu(k,2002) - lu(k,2007) = lu(k,2007) - lu(k,1533) * lu(k,2002) - lu(k,2008) = lu(k,2008) - lu(k,1534) * lu(k,2002) - lu(k,2009) = lu(k,2009) - lu(k,1535) * lu(k,2002) - lu(k,2010) = lu(k,2010) - lu(k,1536) * lu(k,2002) - lu(k,2011) = lu(k,2011) - lu(k,1537) * lu(k,2002) - lu(k,2012) = lu(k,2012) - lu(k,1538) * lu(k,2002) - lu(k,2013) = lu(k,2013) - lu(k,1539) * lu(k,2002) - lu(k,2014) = lu(k,2014) - lu(k,1540) * lu(k,2002) - lu(k,2015) = lu(k,2015) - lu(k,1541) * lu(k,2002) - lu(k,2110) = lu(k,2110) - lu(k,1529) * lu(k,2109) - lu(k,2111) = lu(k,2111) - lu(k,1530) * lu(k,2109) - lu(k,2112) = lu(k,2112) - lu(k,1531) * lu(k,2109) - lu(k,2113) = lu(k,2113) - lu(k,1532) * lu(k,2109) - lu(k,2114) = lu(k,2114) - lu(k,1533) * lu(k,2109) - lu(k,2115) = lu(k,2115) - lu(k,1534) * lu(k,2109) - lu(k,2116) = lu(k,2116) - lu(k,1535) * lu(k,2109) - lu(k,2117) = lu(k,2117) - lu(k,1536) * lu(k,2109) - lu(k,2118) = lu(k,2118) - lu(k,1537) * lu(k,2109) - lu(k,2119) = lu(k,2119) - lu(k,1538) * lu(k,2109) - lu(k,2120) = lu(k,2120) - lu(k,1539) * lu(k,2109) - lu(k,2121) = lu(k,2121) - lu(k,1540) * lu(k,2109) - lu(k,2122) = lu(k,2122) - lu(k,1541) * lu(k,2109) - lu(k,2133) = lu(k,2133) - lu(k,1529) * lu(k,2132) - lu(k,2134) = lu(k,2134) - lu(k,1530) * lu(k,2132) - lu(k,2135) = lu(k,2135) - lu(k,1531) * lu(k,2132) - lu(k,2136) = lu(k,2136) - lu(k,1532) * lu(k,2132) - lu(k,2137) = lu(k,2137) - lu(k,1533) * lu(k,2132) - lu(k,2138) = lu(k,2138) - lu(k,1534) * lu(k,2132) - lu(k,2139) = lu(k,2139) - lu(k,1535) * lu(k,2132) - lu(k,2140) = lu(k,2140) - lu(k,1536) * lu(k,2132) - lu(k,2141) = lu(k,2141) - lu(k,1537) * lu(k,2132) - lu(k,2142) = lu(k,2142) - lu(k,1538) * lu(k,2132) - lu(k,2143) = lu(k,2143) - lu(k,1539) * lu(k,2132) - lu(k,2144) = lu(k,2144) - lu(k,1540) * lu(k,2132) - lu(k,2145) = lu(k,2145) - lu(k,1541) * lu(k,2132) - lu(k,2157) = lu(k,2157) - lu(k,1529) * lu(k,2156) - lu(k,2158) = lu(k,2158) - lu(k,1530) * lu(k,2156) - lu(k,2159) = lu(k,2159) - lu(k,1531) * lu(k,2156) - lu(k,2160) = lu(k,2160) - lu(k,1532) * lu(k,2156) - lu(k,2161) = lu(k,2161) - lu(k,1533) * lu(k,2156) - lu(k,2162) = lu(k,2162) - lu(k,1534) * lu(k,2156) - lu(k,2163) = lu(k,2163) - lu(k,1535) * lu(k,2156) - lu(k,2164) = lu(k,2164) - lu(k,1536) * lu(k,2156) - lu(k,2165) = lu(k,2165) - lu(k,1537) * lu(k,2156) - lu(k,2166) = lu(k,2166) - lu(k,1538) * lu(k,2156) - lu(k,2167) = lu(k,2167) - lu(k,1539) * lu(k,2156) - lu(k,2168) = lu(k,2168) - lu(k,1540) * lu(k,2156) - lu(k,2169) = lu(k,2169) - lu(k,1541) * lu(k,2156) - lu(k,2188) = lu(k,2188) - lu(k,1529) * lu(k,2187) - lu(k,2189) = lu(k,2189) - lu(k,1530) * lu(k,2187) - lu(k,2190) = lu(k,2190) - lu(k,1531) * lu(k,2187) - lu(k,2191) = lu(k,2191) - lu(k,1532) * lu(k,2187) - lu(k,2192) = lu(k,2192) - lu(k,1533) * lu(k,2187) - lu(k,2193) = lu(k,2193) - lu(k,1534) * lu(k,2187) - lu(k,2194) = lu(k,2194) - lu(k,1535) * lu(k,2187) - lu(k,2195) = lu(k,2195) - lu(k,1536) * lu(k,2187) - lu(k,2196) = lu(k,2196) - lu(k,1537) * lu(k,2187) - lu(k,2197) = lu(k,2197) - lu(k,1538) * lu(k,2187) - lu(k,2198) = lu(k,2198) - lu(k,1539) * lu(k,2187) - lu(k,2199) = lu(k,2199) - lu(k,1540) * lu(k,2187) - lu(k,2200) = lu(k,2200) - lu(k,1541) * lu(k,2187) - lu(k,2249) = lu(k,2249) - lu(k,1529) * lu(k,2248) - lu(k,2250) = lu(k,2250) - lu(k,1530) * lu(k,2248) - lu(k,2251) = lu(k,2251) - lu(k,1531) * lu(k,2248) - lu(k,2252) = lu(k,2252) - lu(k,1532) * lu(k,2248) - lu(k,2253) = lu(k,2253) - lu(k,1533) * lu(k,2248) - lu(k,2254) = lu(k,2254) - lu(k,1534) * lu(k,2248) - lu(k,2255) = lu(k,2255) - lu(k,1535) * lu(k,2248) - lu(k,2256) = lu(k,2256) - lu(k,1536) * lu(k,2248) - lu(k,2257) = lu(k,2257) - lu(k,1537) * lu(k,2248) - lu(k,2258) = lu(k,2258) - lu(k,1538) * lu(k,2248) - lu(k,2259) = lu(k,2259) - lu(k,1539) * lu(k,2248) - lu(k,2260) = lu(k,2260) - lu(k,1540) * lu(k,2248) - lu(k,2261) = lu(k,2261) - lu(k,1541) * lu(k,2248) - lu(k,2275) = lu(k,2275) - lu(k,1529) * lu(k,2274) - lu(k,2276) = lu(k,2276) - lu(k,1530) * lu(k,2274) - lu(k,2277) = lu(k,2277) - lu(k,1531) * lu(k,2274) - lu(k,2278) = lu(k,2278) - lu(k,1532) * lu(k,2274) - lu(k,2279) = lu(k,2279) - lu(k,1533) * lu(k,2274) - lu(k,2280) = lu(k,2280) - lu(k,1534) * lu(k,2274) - lu(k,2281) = lu(k,2281) - lu(k,1535) * lu(k,2274) - lu(k,2282) = lu(k,2282) - lu(k,1536) * lu(k,2274) - lu(k,2283) = lu(k,2283) - lu(k,1537) * lu(k,2274) - lu(k,2284) = lu(k,2284) - lu(k,1538) * lu(k,2274) - lu(k,2285) = lu(k,2285) - lu(k,1539) * lu(k,2274) - lu(k,2286) = lu(k,2286) - lu(k,1540) * lu(k,2274) - lu(k,2287) = lu(k,2287) - lu(k,1541) * lu(k,2274) - lu(k,1693) = 1._r8 / lu(k,1693) - lu(k,1694) = lu(k,1694) * lu(k,1693) - lu(k,1695) = lu(k,1695) * lu(k,1693) - lu(k,1696) = lu(k,1696) * lu(k,1693) - lu(k,1697) = lu(k,1697) * lu(k,1693) - lu(k,1698) = lu(k,1698) * lu(k,1693) - lu(k,1699) = lu(k,1699) * lu(k,1693) - lu(k,1700) = lu(k,1700) * lu(k,1693) - lu(k,1701) = lu(k,1701) * lu(k,1693) - lu(k,1702) = lu(k,1702) * lu(k,1693) - lu(k,1703) = lu(k,1703) * lu(k,1693) - lu(k,1704) = lu(k,1704) * lu(k,1693) - lu(k,1705) = lu(k,1705) * lu(k,1693) - lu(k,1720) = lu(k,1720) - lu(k,1694) * lu(k,1719) - lu(k,1721) = lu(k,1721) - lu(k,1695) * lu(k,1719) - lu(k,1722) = lu(k,1722) - lu(k,1696) * lu(k,1719) - lu(k,1723) = lu(k,1723) - lu(k,1697) * lu(k,1719) - lu(k,1724) = lu(k,1724) - lu(k,1698) * lu(k,1719) - lu(k,1725) = lu(k,1725) - lu(k,1699) * lu(k,1719) - lu(k,1726) = lu(k,1726) - lu(k,1700) * lu(k,1719) - lu(k,1727) = lu(k,1727) - lu(k,1701) * lu(k,1719) - lu(k,1728) = lu(k,1728) - lu(k,1702) * lu(k,1719) - lu(k,1729) = lu(k,1729) - lu(k,1703) * lu(k,1719) - lu(k,1730) = lu(k,1730) - lu(k,1704) * lu(k,1719) - lu(k,1731) = lu(k,1731) - lu(k,1705) * lu(k,1719) - lu(k,1777) = lu(k,1777) - lu(k,1694) * lu(k,1776) - lu(k,1778) = lu(k,1778) - lu(k,1695) * lu(k,1776) - lu(k,1779) = lu(k,1779) - lu(k,1696) * lu(k,1776) - lu(k,1780) = lu(k,1780) - lu(k,1697) * lu(k,1776) - lu(k,1781) = lu(k,1781) - lu(k,1698) * lu(k,1776) - lu(k,1782) = lu(k,1782) - lu(k,1699) * lu(k,1776) - lu(k,1783) = lu(k,1783) - lu(k,1700) * lu(k,1776) - lu(k,1784) = lu(k,1784) - lu(k,1701) * lu(k,1776) - lu(k,1785) = lu(k,1785) - lu(k,1702) * lu(k,1776) - lu(k,1786) = lu(k,1786) - lu(k,1703) * lu(k,1776) - lu(k,1787) = lu(k,1787) - lu(k,1704) * lu(k,1776) - lu(k,1788) = lu(k,1788) - lu(k,1705) * lu(k,1776) - lu(k,1829) = lu(k,1829) - lu(k,1694) * lu(k,1828) - lu(k,1830) = lu(k,1830) - lu(k,1695) * lu(k,1828) - lu(k,1831) = lu(k,1831) - lu(k,1696) * lu(k,1828) - lu(k,1832) = lu(k,1832) - lu(k,1697) * lu(k,1828) - lu(k,1833) = lu(k,1833) - lu(k,1698) * lu(k,1828) - lu(k,1834) = lu(k,1834) - lu(k,1699) * lu(k,1828) - lu(k,1835) = lu(k,1835) - lu(k,1700) * lu(k,1828) - lu(k,1836) = lu(k,1836) - lu(k,1701) * lu(k,1828) - lu(k,1837) = lu(k,1837) - lu(k,1702) * lu(k,1828) - lu(k,1838) = lu(k,1838) - lu(k,1703) * lu(k,1828) - lu(k,1839) = lu(k,1839) - lu(k,1704) * lu(k,1828) - lu(k,1840) = lu(k,1840) - lu(k,1705) * lu(k,1828) - lu(k,1921) = lu(k,1921) - lu(k,1694) * lu(k,1920) - lu(k,1922) = lu(k,1922) - lu(k,1695) * lu(k,1920) - lu(k,1923) = lu(k,1923) - lu(k,1696) * lu(k,1920) - lu(k,1924) = lu(k,1924) - lu(k,1697) * lu(k,1920) - lu(k,1925) = lu(k,1925) - lu(k,1698) * lu(k,1920) - lu(k,1926) = lu(k,1926) - lu(k,1699) * lu(k,1920) - lu(k,1927) = lu(k,1927) - lu(k,1700) * lu(k,1920) - lu(k,1928) = lu(k,1928) - lu(k,1701) * lu(k,1920) - lu(k,1929) = lu(k,1929) - lu(k,1702) * lu(k,1920) - lu(k,1930) = lu(k,1930) - lu(k,1703) * lu(k,1920) - lu(k,1931) = lu(k,1931) - lu(k,1704) * lu(k,1920) - lu(k,1932) = lu(k,1932) - lu(k,1705) * lu(k,1920) - lu(k,1965) = lu(k,1965) - lu(k,1694) * lu(k,1964) - lu(k,1966) = lu(k,1966) - lu(k,1695) * lu(k,1964) - lu(k,1967) = lu(k,1967) - lu(k,1696) * lu(k,1964) - lu(k,1968) = lu(k,1968) - lu(k,1697) * lu(k,1964) - lu(k,1969) = lu(k,1969) - lu(k,1698) * lu(k,1964) - lu(k,1970) = lu(k,1970) - lu(k,1699) * lu(k,1964) - lu(k,1971) = lu(k,1971) - lu(k,1700) * lu(k,1964) - lu(k,1972) = lu(k,1972) - lu(k,1701) * lu(k,1964) - lu(k,1973) = lu(k,1973) - lu(k,1702) * lu(k,1964) - lu(k,1974) = lu(k,1974) - lu(k,1703) * lu(k,1964) - lu(k,1975) = lu(k,1975) - lu(k,1704) * lu(k,1964) - lu(k,1976) = lu(k,1976) - lu(k,1705) * lu(k,1964) - lu(k,2004) = lu(k,2004) - lu(k,1694) * lu(k,2003) - lu(k,2005) = lu(k,2005) - lu(k,1695) * lu(k,2003) - lu(k,2006) = lu(k,2006) - lu(k,1696) * lu(k,2003) - lu(k,2007) = lu(k,2007) - lu(k,1697) * lu(k,2003) - lu(k,2008) = lu(k,2008) - lu(k,1698) * lu(k,2003) - lu(k,2009) = lu(k,2009) - lu(k,1699) * lu(k,2003) - lu(k,2010) = lu(k,2010) - lu(k,1700) * lu(k,2003) - lu(k,2011) = lu(k,2011) - lu(k,1701) * lu(k,2003) - lu(k,2012) = lu(k,2012) - lu(k,1702) * lu(k,2003) - lu(k,2013) = lu(k,2013) - lu(k,1703) * lu(k,2003) - lu(k,2014) = lu(k,2014) - lu(k,1704) * lu(k,2003) - lu(k,2015) = lu(k,2015) - lu(k,1705) * lu(k,2003) - lu(k,2111) = lu(k,2111) - lu(k,1694) * lu(k,2110) - lu(k,2112) = lu(k,2112) - lu(k,1695) * lu(k,2110) - lu(k,2113) = lu(k,2113) - lu(k,1696) * lu(k,2110) - lu(k,2114) = lu(k,2114) - lu(k,1697) * lu(k,2110) - lu(k,2115) = lu(k,2115) - lu(k,1698) * lu(k,2110) - lu(k,2116) = lu(k,2116) - lu(k,1699) * lu(k,2110) - lu(k,2117) = lu(k,2117) - lu(k,1700) * lu(k,2110) - lu(k,2118) = lu(k,2118) - lu(k,1701) * lu(k,2110) - lu(k,2119) = lu(k,2119) - lu(k,1702) * lu(k,2110) - lu(k,2120) = lu(k,2120) - lu(k,1703) * lu(k,2110) - lu(k,2121) = lu(k,2121) - lu(k,1704) * lu(k,2110) - lu(k,2122) = lu(k,2122) - lu(k,1705) * lu(k,2110) - lu(k,2134) = lu(k,2134) - lu(k,1694) * lu(k,2133) - lu(k,2135) = lu(k,2135) - lu(k,1695) * lu(k,2133) - lu(k,2136) = lu(k,2136) - lu(k,1696) * lu(k,2133) - lu(k,2137) = lu(k,2137) - lu(k,1697) * lu(k,2133) - lu(k,2138) = lu(k,2138) - lu(k,1698) * lu(k,2133) - lu(k,2139) = lu(k,2139) - lu(k,1699) * lu(k,2133) - lu(k,2140) = lu(k,2140) - lu(k,1700) * lu(k,2133) - lu(k,2141) = lu(k,2141) - lu(k,1701) * lu(k,2133) - lu(k,2142) = lu(k,2142) - lu(k,1702) * lu(k,2133) - lu(k,2143) = lu(k,2143) - lu(k,1703) * lu(k,2133) - lu(k,2144) = lu(k,2144) - lu(k,1704) * lu(k,2133) - lu(k,2145) = lu(k,2145) - lu(k,1705) * lu(k,2133) - lu(k,2158) = lu(k,2158) - lu(k,1694) * lu(k,2157) - lu(k,2159) = lu(k,2159) - lu(k,1695) * lu(k,2157) - lu(k,2160) = lu(k,2160) - lu(k,1696) * lu(k,2157) - lu(k,2161) = lu(k,2161) - lu(k,1697) * lu(k,2157) - lu(k,2162) = lu(k,2162) - lu(k,1698) * lu(k,2157) - lu(k,2163) = lu(k,2163) - lu(k,1699) * lu(k,2157) - lu(k,2164) = lu(k,2164) - lu(k,1700) * lu(k,2157) - lu(k,2165) = lu(k,2165) - lu(k,1701) * lu(k,2157) - lu(k,2166) = lu(k,2166) - lu(k,1702) * lu(k,2157) - lu(k,2167) = lu(k,2167) - lu(k,1703) * lu(k,2157) - lu(k,2168) = lu(k,2168) - lu(k,1704) * lu(k,2157) - lu(k,2169) = lu(k,2169) - lu(k,1705) * lu(k,2157) - lu(k,2189) = lu(k,2189) - lu(k,1694) * lu(k,2188) - lu(k,2190) = lu(k,2190) - lu(k,1695) * lu(k,2188) - lu(k,2191) = lu(k,2191) - lu(k,1696) * lu(k,2188) - lu(k,2192) = lu(k,2192) - lu(k,1697) * lu(k,2188) - lu(k,2193) = lu(k,2193) - lu(k,1698) * lu(k,2188) - lu(k,2194) = lu(k,2194) - lu(k,1699) * lu(k,2188) - lu(k,2195) = lu(k,2195) - lu(k,1700) * lu(k,2188) - lu(k,2196) = lu(k,2196) - lu(k,1701) * lu(k,2188) - lu(k,2197) = lu(k,2197) - lu(k,1702) * lu(k,2188) - lu(k,2198) = lu(k,2198) - lu(k,1703) * lu(k,2188) - lu(k,2199) = lu(k,2199) - lu(k,1704) * lu(k,2188) - lu(k,2200) = lu(k,2200) - lu(k,1705) * lu(k,2188) - lu(k,2250) = lu(k,2250) - lu(k,1694) * lu(k,2249) - lu(k,2251) = lu(k,2251) - lu(k,1695) * lu(k,2249) - lu(k,2252) = lu(k,2252) - lu(k,1696) * lu(k,2249) - lu(k,2253) = lu(k,2253) - lu(k,1697) * lu(k,2249) - lu(k,2254) = lu(k,2254) - lu(k,1698) * lu(k,2249) - lu(k,2255) = lu(k,2255) - lu(k,1699) * lu(k,2249) - lu(k,2256) = lu(k,2256) - lu(k,1700) * lu(k,2249) - lu(k,2257) = lu(k,2257) - lu(k,1701) * lu(k,2249) - lu(k,2258) = lu(k,2258) - lu(k,1702) * lu(k,2249) - lu(k,2259) = lu(k,2259) - lu(k,1703) * lu(k,2249) - lu(k,2260) = lu(k,2260) - lu(k,1704) * lu(k,2249) - lu(k,2261) = lu(k,2261) - lu(k,1705) * lu(k,2249) - lu(k,2276) = lu(k,2276) - lu(k,1694) * lu(k,2275) - lu(k,2277) = lu(k,2277) - lu(k,1695) * lu(k,2275) - lu(k,2278) = lu(k,2278) - lu(k,1696) * lu(k,2275) - lu(k,2279) = lu(k,2279) - lu(k,1697) * lu(k,2275) - lu(k,2280) = lu(k,2280) - lu(k,1698) * lu(k,2275) - lu(k,2281) = lu(k,2281) - lu(k,1699) * lu(k,2275) - lu(k,2282) = lu(k,2282) - lu(k,1700) * lu(k,2275) - lu(k,2283) = lu(k,2283) - lu(k,1701) * lu(k,2275) - lu(k,2284) = lu(k,2284) - lu(k,1702) * lu(k,2275) - lu(k,2285) = lu(k,2285) - lu(k,1703) * lu(k,2275) - lu(k,2286) = lu(k,2286) - lu(k,1704) * lu(k,2275) - lu(k,2287) = lu(k,2287) - lu(k,1705) * lu(k,2275) - lu(k,1720) = 1._r8 / lu(k,1720) - lu(k,1721) = lu(k,1721) * lu(k,1720) - lu(k,1722) = lu(k,1722) * lu(k,1720) - lu(k,1723) = lu(k,1723) * lu(k,1720) - lu(k,1724) = lu(k,1724) * lu(k,1720) - lu(k,1725) = lu(k,1725) * lu(k,1720) - lu(k,1726) = lu(k,1726) * lu(k,1720) - lu(k,1727) = lu(k,1727) * lu(k,1720) - lu(k,1728) = lu(k,1728) * lu(k,1720) - lu(k,1729) = lu(k,1729) * lu(k,1720) - lu(k,1730) = lu(k,1730) * lu(k,1720) - lu(k,1731) = lu(k,1731) * lu(k,1720) - lu(k,1778) = lu(k,1778) - lu(k,1721) * lu(k,1777) - lu(k,1779) = lu(k,1779) - lu(k,1722) * lu(k,1777) - lu(k,1780) = lu(k,1780) - lu(k,1723) * lu(k,1777) - lu(k,1781) = lu(k,1781) - lu(k,1724) * lu(k,1777) - lu(k,1782) = lu(k,1782) - lu(k,1725) * lu(k,1777) - lu(k,1783) = lu(k,1783) - lu(k,1726) * lu(k,1777) - lu(k,1784) = lu(k,1784) - lu(k,1727) * lu(k,1777) - lu(k,1785) = lu(k,1785) - lu(k,1728) * lu(k,1777) - lu(k,1786) = lu(k,1786) - lu(k,1729) * lu(k,1777) - lu(k,1787) = lu(k,1787) - lu(k,1730) * lu(k,1777) - lu(k,1788) = lu(k,1788) - lu(k,1731) * lu(k,1777) - lu(k,1830) = lu(k,1830) - lu(k,1721) * lu(k,1829) - lu(k,1831) = lu(k,1831) - lu(k,1722) * lu(k,1829) - lu(k,1832) = lu(k,1832) - lu(k,1723) * lu(k,1829) - lu(k,1833) = lu(k,1833) - lu(k,1724) * lu(k,1829) - lu(k,1834) = lu(k,1834) - lu(k,1725) * lu(k,1829) - lu(k,1835) = lu(k,1835) - lu(k,1726) * lu(k,1829) - lu(k,1836) = lu(k,1836) - lu(k,1727) * lu(k,1829) - lu(k,1837) = lu(k,1837) - lu(k,1728) * lu(k,1829) - lu(k,1838) = lu(k,1838) - lu(k,1729) * lu(k,1829) - lu(k,1839) = lu(k,1839) - lu(k,1730) * lu(k,1829) - lu(k,1840) = lu(k,1840) - lu(k,1731) * lu(k,1829) - lu(k,1922) = lu(k,1922) - lu(k,1721) * lu(k,1921) - lu(k,1923) = lu(k,1923) - lu(k,1722) * lu(k,1921) - lu(k,1924) = lu(k,1924) - lu(k,1723) * lu(k,1921) - lu(k,1925) = lu(k,1925) - lu(k,1724) * lu(k,1921) - lu(k,1926) = lu(k,1926) - lu(k,1725) * lu(k,1921) - lu(k,1927) = lu(k,1927) - lu(k,1726) * lu(k,1921) - lu(k,1928) = lu(k,1928) - lu(k,1727) * lu(k,1921) - lu(k,1929) = lu(k,1929) - lu(k,1728) * lu(k,1921) - lu(k,1930) = lu(k,1930) - lu(k,1729) * lu(k,1921) - lu(k,1931) = lu(k,1931) - lu(k,1730) * lu(k,1921) - lu(k,1932) = lu(k,1932) - lu(k,1731) * lu(k,1921) - lu(k,1966) = lu(k,1966) - lu(k,1721) * lu(k,1965) - lu(k,1967) = lu(k,1967) - lu(k,1722) * lu(k,1965) - lu(k,1968) = lu(k,1968) - lu(k,1723) * lu(k,1965) - lu(k,1969) = lu(k,1969) - lu(k,1724) * lu(k,1965) - lu(k,1970) = lu(k,1970) - lu(k,1725) * lu(k,1965) - lu(k,1971) = lu(k,1971) - lu(k,1726) * lu(k,1965) - lu(k,1972) = lu(k,1972) - lu(k,1727) * lu(k,1965) - lu(k,1973) = lu(k,1973) - lu(k,1728) * lu(k,1965) - lu(k,1974) = lu(k,1974) - lu(k,1729) * lu(k,1965) - lu(k,1975) = lu(k,1975) - lu(k,1730) * lu(k,1965) - lu(k,1976) = lu(k,1976) - lu(k,1731) * lu(k,1965) - lu(k,2005) = lu(k,2005) - lu(k,1721) * lu(k,2004) - lu(k,2006) = lu(k,2006) - lu(k,1722) * lu(k,2004) - lu(k,2007) = lu(k,2007) - lu(k,1723) * lu(k,2004) - lu(k,2008) = lu(k,2008) - lu(k,1724) * lu(k,2004) - lu(k,2009) = lu(k,2009) - lu(k,1725) * lu(k,2004) - lu(k,2010) = lu(k,2010) - lu(k,1726) * lu(k,2004) - lu(k,2011) = lu(k,2011) - lu(k,1727) * lu(k,2004) - lu(k,2012) = lu(k,2012) - lu(k,1728) * lu(k,2004) - lu(k,2013) = lu(k,2013) - lu(k,1729) * lu(k,2004) - lu(k,2014) = lu(k,2014) - lu(k,1730) * lu(k,2004) - lu(k,2015) = lu(k,2015) - lu(k,1731) * lu(k,2004) - lu(k,2112) = lu(k,2112) - lu(k,1721) * lu(k,2111) - lu(k,2113) = lu(k,2113) - lu(k,1722) * lu(k,2111) - lu(k,2114) = lu(k,2114) - lu(k,1723) * lu(k,2111) - lu(k,2115) = lu(k,2115) - lu(k,1724) * lu(k,2111) - lu(k,2116) = lu(k,2116) - lu(k,1725) * lu(k,2111) - lu(k,2117) = lu(k,2117) - lu(k,1726) * lu(k,2111) - lu(k,2118) = lu(k,2118) - lu(k,1727) * lu(k,2111) - lu(k,2119) = lu(k,2119) - lu(k,1728) * lu(k,2111) - lu(k,2120) = lu(k,2120) - lu(k,1729) * lu(k,2111) - lu(k,2121) = lu(k,2121) - lu(k,1730) * lu(k,2111) - lu(k,2122) = lu(k,2122) - lu(k,1731) * lu(k,2111) - lu(k,2135) = lu(k,2135) - lu(k,1721) * lu(k,2134) - lu(k,2136) = lu(k,2136) - lu(k,1722) * lu(k,2134) - lu(k,2137) = lu(k,2137) - lu(k,1723) * lu(k,2134) - lu(k,2138) = lu(k,2138) - lu(k,1724) * lu(k,2134) - lu(k,2139) = lu(k,2139) - lu(k,1725) * lu(k,2134) - lu(k,2140) = lu(k,2140) - lu(k,1726) * lu(k,2134) - lu(k,2141) = lu(k,2141) - lu(k,1727) * lu(k,2134) - lu(k,2142) = lu(k,2142) - lu(k,1728) * lu(k,2134) - lu(k,2143) = lu(k,2143) - lu(k,1729) * lu(k,2134) - lu(k,2144) = lu(k,2144) - lu(k,1730) * lu(k,2134) - lu(k,2145) = lu(k,2145) - lu(k,1731) * lu(k,2134) - lu(k,2159) = lu(k,2159) - lu(k,1721) * lu(k,2158) - lu(k,2160) = lu(k,2160) - lu(k,1722) * lu(k,2158) - lu(k,2161) = lu(k,2161) - lu(k,1723) * lu(k,2158) - lu(k,2162) = lu(k,2162) - lu(k,1724) * lu(k,2158) - lu(k,2163) = lu(k,2163) - lu(k,1725) * lu(k,2158) - lu(k,2164) = lu(k,2164) - lu(k,1726) * lu(k,2158) - lu(k,2165) = lu(k,2165) - lu(k,1727) * lu(k,2158) - lu(k,2166) = lu(k,2166) - lu(k,1728) * lu(k,2158) - lu(k,2167) = lu(k,2167) - lu(k,1729) * lu(k,2158) - lu(k,2168) = lu(k,2168) - lu(k,1730) * lu(k,2158) - lu(k,2169) = lu(k,2169) - lu(k,1731) * lu(k,2158) - lu(k,2190) = lu(k,2190) - lu(k,1721) * lu(k,2189) - lu(k,2191) = lu(k,2191) - lu(k,1722) * lu(k,2189) - lu(k,2192) = lu(k,2192) - lu(k,1723) * lu(k,2189) - lu(k,2193) = lu(k,2193) - lu(k,1724) * lu(k,2189) - lu(k,2194) = lu(k,2194) - lu(k,1725) * lu(k,2189) - lu(k,2195) = lu(k,2195) - lu(k,1726) * lu(k,2189) - lu(k,2196) = lu(k,2196) - lu(k,1727) * lu(k,2189) - lu(k,2197) = lu(k,2197) - lu(k,1728) * lu(k,2189) - lu(k,2198) = lu(k,2198) - lu(k,1729) * lu(k,2189) - lu(k,2199) = lu(k,2199) - lu(k,1730) * lu(k,2189) - lu(k,2200) = lu(k,2200) - lu(k,1731) * lu(k,2189) - lu(k,2251) = lu(k,2251) - lu(k,1721) * lu(k,2250) - lu(k,2252) = lu(k,2252) - lu(k,1722) * lu(k,2250) - lu(k,2253) = lu(k,2253) - lu(k,1723) * lu(k,2250) - lu(k,2254) = lu(k,2254) - lu(k,1724) * lu(k,2250) - lu(k,2255) = lu(k,2255) - lu(k,1725) * lu(k,2250) - lu(k,2256) = lu(k,2256) - lu(k,1726) * lu(k,2250) - lu(k,2257) = lu(k,2257) - lu(k,1727) * lu(k,2250) - lu(k,2258) = lu(k,2258) - lu(k,1728) * lu(k,2250) - lu(k,2259) = lu(k,2259) - lu(k,1729) * lu(k,2250) - lu(k,2260) = lu(k,2260) - lu(k,1730) * lu(k,2250) - lu(k,2261) = lu(k,2261) - lu(k,1731) * lu(k,2250) - lu(k,2277) = lu(k,2277) - lu(k,1721) * lu(k,2276) - lu(k,2278) = lu(k,2278) - lu(k,1722) * lu(k,2276) - lu(k,2279) = lu(k,2279) - lu(k,1723) * lu(k,2276) - lu(k,2280) = lu(k,2280) - lu(k,1724) * lu(k,2276) - lu(k,2281) = lu(k,2281) - lu(k,1725) * lu(k,2276) - lu(k,2282) = lu(k,2282) - lu(k,1726) * lu(k,2276) - lu(k,2283) = lu(k,2283) - lu(k,1727) * lu(k,2276) - lu(k,2284) = lu(k,2284) - lu(k,1728) * lu(k,2276) - lu(k,2285) = lu(k,2285) - lu(k,1729) * lu(k,2276) - lu(k,2286) = lu(k,2286) - lu(k,1730) * lu(k,2276) - lu(k,2287) = lu(k,2287) - lu(k,1731) * lu(k,2276) - end do - end subroutine lu_fac29 - subroutine lu_fac30( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,1778) = 1._r8 / lu(k,1778) - lu(k,1779) = lu(k,1779) * lu(k,1778) - lu(k,1780) = lu(k,1780) * lu(k,1778) - lu(k,1781) = lu(k,1781) * lu(k,1778) - lu(k,1782) = lu(k,1782) * lu(k,1778) - lu(k,1783) = lu(k,1783) * lu(k,1778) - lu(k,1784) = lu(k,1784) * lu(k,1778) - lu(k,1785) = lu(k,1785) * lu(k,1778) - lu(k,1786) = lu(k,1786) * lu(k,1778) - lu(k,1787) = lu(k,1787) * lu(k,1778) - lu(k,1788) = lu(k,1788) * lu(k,1778) - lu(k,1831) = lu(k,1831) - lu(k,1779) * lu(k,1830) - lu(k,1832) = lu(k,1832) - lu(k,1780) * lu(k,1830) - lu(k,1833) = lu(k,1833) - lu(k,1781) * lu(k,1830) - lu(k,1834) = lu(k,1834) - lu(k,1782) * lu(k,1830) - lu(k,1835) = lu(k,1835) - lu(k,1783) * lu(k,1830) - lu(k,1836) = lu(k,1836) - lu(k,1784) * lu(k,1830) - lu(k,1837) = lu(k,1837) - lu(k,1785) * lu(k,1830) - lu(k,1838) = lu(k,1838) - lu(k,1786) * lu(k,1830) - lu(k,1839) = lu(k,1839) - lu(k,1787) * lu(k,1830) - lu(k,1840) = lu(k,1840) - lu(k,1788) * lu(k,1830) - lu(k,1923) = lu(k,1923) - lu(k,1779) * lu(k,1922) - lu(k,1924) = lu(k,1924) - lu(k,1780) * lu(k,1922) - lu(k,1925) = lu(k,1925) - lu(k,1781) * lu(k,1922) - lu(k,1926) = lu(k,1926) - lu(k,1782) * lu(k,1922) - lu(k,1927) = lu(k,1927) - lu(k,1783) * lu(k,1922) - lu(k,1928) = lu(k,1928) - lu(k,1784) * lu(k,1922) - lu(k,1929) = lu(k,1929) - lu(k,1785) * lu(k,1922) - lu(k,1930) = lu(k,1930) - lu(k,1786) * lu(k,1922) - lu(k,1931) = lu(k,1931) - lu(k,1787) * lu(k,1922) - lu(k,1932) = lu(k,1932) - lu(k,1788) * lu(k,1922) - lu(k,1967) = lu(k,1967) - lu(k,1779) * lu(k,1966) - lu(k,1968) = lu(k,1968) - lu(k,1780) * lu(k,1966) - lu(k,1969) = lu(k,1969) - lu(k,1781) * lu(k,1966) - lu(k,1970) = lu(k,1970) - lu(k,1782) * lu(k,1966) - lu(k,1971) = lu(k,1971) - lu(k,1783) * lu(k,1966) - lu(k,1972) = lu(k,1972) - lu(k,1784) * lu(k,1966) - lu(k,1973) = lu(k,1973) - lu(k,1785) * lu(k,1966) - lu(k,1974) = lu(k,1974) - lu(k,1786) * lu(k,1966) - lu(k,1975) = lu(k,1975) - lu(k,1787) * lu(k,1966) - lu(k,1976) = lu(k,1976) - lu(k,1788) * lu(k,1966) - lu(k,2006) = lu(k,2006) - lu(k,1779) * lu(k,2005) - lu(k,2007) = lu(k,2007) - lu(k,1780) * lu(k,2005) - lu(k,2008) = lu(k,2008) - lu(k,1781) * lu(k,2005) - lu(k,2009) = lu(k,2009) - lu(k,1782) * lu(k,2005) - lu(k,2010) = lu(k,2010) - lu(k,1783) * lu(k,2005) - lu(k,2011) = lu(k,2011) - lu(k,1784) * lu(k,2005) - lu(k,2012) = lu(k,2012) - lu(k,1785) * lu(k,2005) - lu(k,2013) = lu(k,2013) - lu(k,1786) * lu(k,2005) - lu(k,2014) = lu(k,2014) - lu(k,1787) * lu(k,2005) - lu(k,2015) = lu(k,2015) - lu(k,1788) * lu(k,2005) - lu(k,2113) = lu(k,2113) - lu(k,1779) * lu(k,2112) - lu(k,2114) = lu(k,2114) - lu(k,1780) * lu(k,2112) - lu(k,2115) = lu(k,2115) - lu(k,1781) * lu(k,2112) - lu(k,2116) = lu(k,2116) - lu(k,1782) * lu(k,2112) - lu(k,2117) = lu(k,2117) - lu(k,1783) * lu(k,2112) - lu(k,2118) = lu(k,2118) - lu(k,1784) * lu(k,2112) - lu(k,2119) = lu(k,2119) - lu(k,1785) * lu(k,2112) - lu(k,2120) = lu(k,2120) - lu(k,1786) * lu(k,2112) - lu(k,2121) = lu(k,2121) - lu(k,1787) * lu(k,2112) - lu(k,2122) = lu(k,2122) - lu(k,1788) * lu(k,2112) - lu(k,2136) = lu(k,2136) - lu(k,1779) * lu(k,2135) - lu(k,2137) = lu(k,2137) - lu(k,1780) * lu(k,2135) - lu(k,2138) = lu(k,2138) - lu(k,1781) * lu(k,2135) - lu(k,2139) = lu(k,2139) - lu(k,1782) * lu(k,2135) - lu(k,2140) = lu(k,2140) - lu(k,1783) * lu(k,2135) - lu(k,2141) = lu(k,2141) - lu(k,1784) * lu(k,2135) - lu(k,2142) = lu(k,2142) - lu(k,1785) * lu(k,2135) - lu(k,2143) = lu(k,2143) - lu(k,1786) * lu(k,2135) - lu(k,2144) = lu(k,2144) - lu(k,1787) * lu(k,2135) - lu(k,2145) = lu(k,2145) - lu(k,1788) * lu(k,2135) - lu(k,2160) = lu(k,2160) - lu(k,1779) * lu(k,2159) - lu(k,2161) = lu(k,2161) - lu(k,1780) * lu(k,2159) - lu(k,2162) = lu(k,2162) - lu(k,1781) * lu(k,2159) - lu(k,2163) = lu(k,2163) - lu(k,1782) * lu(k,2159) - lu(k,2164) = lu(k,2164) - lu(k,1783) * lu(k,2159) - lu(k,2165) = lu(k,2165) - lu(k,1784) * lu(k,2159) - lu(k,2166) = lu(k,2166) - lu(k,1785) * lu(k,2159) - lu(k,2167) = lu(k,2167) - lu(k,1786) * lu(k,2159) - lu(k,2168) = lu(k,2168) - lu(k,1787) * lu(k,2159) - lu(k,2169) = lu(k,2169) - lu(k,1788) * lu(k,2159) - lu(k,2191) = lu(k,2191) - lu(k,1779) * lu(k,2190) - lu(k,2192) = lu(k,2192) - lu(k,1780) * lu(k,2190) - lu(k,2193) = lu(k,2193) - lu(k,1781) * lu(k,2190) - lu(k,2194) = lu(k,2194) - lu(k,1782) * lu(k,2190) - lu(k,2195) = lu(k,2195) - lu(k,1783) * lu(k,2190) - lu(k,2196) = lu(k,2196) - lu(k,1784) * lu(k,2190) - lu(k,2197) = lu(k,2197) - lu(k,1785) * lu(k,2190) - lu(k,2198) = lu(k,2198) - lu(k,1786) * lu(k,2190) - lu(k,2199) = lu(k,2199) - lu(k,1787) * lu(k,2190) - lu(k,2200) = lu(k,2200) - lu(k,1788) * lu(k,2190) - lu(k,2252) = lu(k,2252) - lu(k,1779) * lu(k,2251) - lu(k,2253) = lu(k,2253) - lu(k,1780) * lu(k,2251) - lu(k,2254) = lu(k,2254) - lu(k,1781) * lu(k,2251) - lu(k,2255) = lu(k,2255) - lu(k,1782) * lu(k,2251) - lu(k,2256) = lu(k,2256) - lu(k,1783) * lu(k,2251) - lu(k,2257) = lu(k,2257) - lu(k,1784) * lu(k,2251) - lu(k,2258) = lu(k,2258) - lu(k,1785) * lu(k,2251) - lu(k,2259) = lu(k,2259) - lu(k,1786) * lu(k,2251) - lu(k,2260) = lu(k,2260) - lu(k,1787) * lu(k,2251) - lu(k,2261) = lu(k,2261) - lu(k,1788) * lu(k,2251) - lu(k,2278) = lu(k,2278) - lu(k,1779) * lu(k,2277) - lu(k,2279) = lu(k,2279) - lu(k,1780) * lu(k,2277) - lu(k,2280) = lu(k,2280) - lu(k,1781) * lu(k,2277) - lu(k,2281) = lu(k,2281) - lu(k,1782) * lu(k,2277) - lu(k,2282) = lu(k,2282) - lu(k,1783) * lu(k,2277) - lu(k,2283) = lu(k,2283) - lu(k,1784) * lu(k,2277) - lu(k,2284) = lu(k,2284) - lu(k,1785) * lu(k,2277) - lu(k,2285) = lu(k,2285) - lu(k,1786) * lu(k,2277) - lu(k,2286) = lu(k,2286) - lu(k,1787) * lu(k,2277) - lu(k,2287) = lu(k,2287) - lu(k,1788) * lu(k,2277) - lu(k,1831) = 1._r8 / lu(k,1831) - lu(k,1832) = lu(k,1832) * lu(k,1831) - lu(k,1833) = lu(k,1833) * lu(k,1831) - lu(k,1834) = lu(k,1834) * lu(k,1831) - lu(k,1835) = lu(k,1835) * lu(k,1831) - lu(k,1836) = lu(k,1836) * lu(k,1831) - lu(k,1837) = lu(k,1837) * lu(k,1831) - lu(k,1838) = lu(k,1838) * lu(k,1831) - lu(k,1839) = lu(k,1839) * lu(k,1831) - lu(k,1840) = lu(k,1840) * lu(k,1831) - lu(k,1924) = lu(k,1924) - lu(k,1832) * lu(k,1923) - lu(k,1925) = lu(k,1925) - lu(k,1833) * lu(k,1923) - lu(k,1926) = lu(k,1926) - lu(k,1834) * lu(k,1923) - lu(k,1927) = lu(k,1927) - lu(k,1835) * lu(k,1923) - lu(k,1928) = lu(k,1928) - lu(k,1836) * lu(k,1923) - lu(k,1929) = lu(k,1929) - lu(k,1837) * lu(k,1923) - lu(k,1930) = lu(k,1930) - lu(k,1838) * lu(k,1923) - lu(k,1931) = lu(k,1931) - lu(k,1839) * lu(k,1923) - lu(k,1932) = lu(k,1932) - lu(k,1840) * lu(k,1923) - lu(k,1968) = lu(k,1968) - lu(k,1832) * lu(k,1967) - lu(k,1969) = lu(k,1969) - lu(k,1833) * lu(k,1967) - lu(k,1970) = lu(k,1970) - lu(k,1834) * lu(k,1967) - lu(k,1971) = lu(k,1971) - lu(k,1835) * lu(k,1967) - lu(k,1972) = lu(k,1972) - lu(k,1836) * lu(k,1967) - lu(k,1973) = lu(k,1973) - lu(k,1837) * lu(k,1967) - lu(k,1974) = lu(k,1974) - lu(k,1838) * lu(k,1967) - lu(k,1975) = lu(k,1975) - lu(k,1839) * lu(k,1967) - lu(k,1976) = lu(k,1976) - lu(k,1840) * lu(k,1967) - lu(k,2007) = lu(k,2007) - lu(k,1832) * lu(k,2006) - lu(k,2008) = lu(k,2008) - lu(k,1833) * lu(k,2006) - lu(k,2009) = lu(k,2009) - lu(k,1834) * lu(k,2006) - lu(k,2010) = lu(k,2010) - lu(k,1835) * lu(k,2006) - lu(k,2011) = lu(k,2011) - lu(k,1836) * lu(k,2006) - lu(k,2012) = lu(k,2012) - lu(k,1837) * lu(k,2006) - lu(k,2013) = lu(k,2013) - lu(k,1838) * lu(k,2006) - lu(k,2014) = lu(k,2014) - lu(k,1839) * lu(k,2006) - lu(k,2015) = lu(k,2015) - lu(k,1840) * lu(k,2006) - lu(k,2114) = lu(k,2114) - lu(k,1832) * lu(k,2113) - lu(k,2115) = lu(k,2115) - lu(k,1833) * lu(k,2113) - lu(k,2116) = lu(k,2116) - lu(k,1834) * lu(k,2113) - lu(k,2117) = lu(k,2117) - lu(k,1835) * lu(k,2113) - lu(k,2118) = lu(k,2118) - lu(k,1836) * lu(k,2113) - lu(k,2119) = lu(k,2119) - lu(k,1837) * lu(k,2113) - lu(k,2120) = lu(k,2120) - lu(k,1838) * lu(k,2113) - lu(k,2121) = lu(k,2121) - lu(k,1839) * lu(k,2113) - lu(k,2122) = lu(k,2122) - lu(k,1840) * lu(k,2113) - lu(k,2137) = lu(k,2137) - lu(k,1832) * lu(k,2136) - lu(k,2138) = lu(k,2138) - lu(k,1833) * lu(k,2136) - lu(k,2139) = lu(k,2139) - lu(k,1834) * lu(k,2136) - lu(k,2140) = lu(k,2140) - lu(k,1835) * lu(k,2136) - lu(k,2141) = lu(k,2141) - lu(k,1836) * lu(k,2136) - lu(k,2142) = lu(k,2142) - lu(k,1837) * lu(k,2136) - lu(k,2143) = lu(k,2143) - lu(k,1838) * lu(k,2136) - lu(k,2144) = lu(k,2144) - lu(k,1839) * lu(k,2136) - lu(k,2145) = lu(k,2145) - lu(k,1840) * lu(k,2136) - lu(k,2161) = lu(k,2161) - lu(k,1832) * lu(k,2160) - lu(k,2162) = lu(k,2162) - lu(k,1833) * lu(k,2160) - lu(k,2163) = lu(k,2163) - lu(k,1834) * lu(k,2160) - lu(k,2164) = lu(k,2164) - lu(k,1835) * lu(k,2160) - lu(k,2165) = lu(k,2165) - lu(k,1836) * lu(k,2160) - lu(k,2166) = lu(k,2166) - lu(k,1837) * lu(k,2160) - lu(k,2167) = lu(k,2167) - lu(k,1838) * lu(k,2160) - lu(k,2168) = lu(k,2168) - lu(k,1839) * lu(k,2160) - lu(k,2169) = lu(k,2169) - lu(k,1840) * lu(k,2160) - lu(k,2192) = lu(k,2192) - lu(k,1832) * lu(k,2191) - lu(k,2193) = lu(k,2193) - lu(k,1833) * lu(k,2191) - lu(k,2194) = lu(k,2194) - lu(k,1834) * lu(k,2191) - lu(k,2195) = lu(k,2195) - lu(k,1835) * lu(k,2191) - lu(k,2196) = lu(k,2196) - lu(k,1836) * lu(k,2191) - lu(k,2197) = lu(k,2197) - lu(k,1837) * lu(k,2191) - lu(k,2198) = lu(k,2198) - lu(k,1838) * lu(k,2191) - lu(k,2199) = lu(k,2199) - lu(k,1839) * lu(k,2191) - lu(k,2200) = lu(k,2200) - lu(k,1840) * lu(k,2191) - lu(k,2253) = lu(k,2253) - lu(k,1832) * lu(k,2252) - lu(k,2254) = lu(k,2254) - lu(k,1833) * lu(k,2252) - lu(k,2255) = lu(k,2255) - lu(k,1834) * lu(k,2252) - lu(k,2256) = lu(k,2256) - lu(k,1835) * lu(k,2252) - lu(k,2257) = lu(k,2257) - lu(k,1836) * lu(k,2252) - lu(k,2258) = lu(k,2258) - lu(k,1837) * lu(k,2252) - lu(k,2259) = lu(k,2259) - lu(k,1838) * lu(k,2252) - lu(k,2260) = lu(k,2260) - lu(k,1839) * lu(k,2252) - lu(k,2261) = lu(k,2261) - lu(k,1840) * lu(k,2252) - lu(k,2279) = lu(k,2279) - lu(k,1832) * lu(k,2278) - lu(k,2280) = lu(k,2280) - lu(k,1833) * lu(k,2278) - lu(k,2281) = lu(k,2281) - lu(k,1834) * lu(k,2278) - lu(k,2282) = lu(k,2282) - lu(k,1835) * lu(k,2278) - lu(k,2283) = lu(k,2283) - lu(k,1836) * lu(k,2278) - lu(k,2284) = lu(k,2284) - lu(k,1837) * lu(k,2278) - lu(k,2285) = lu(k,2285) - lu(k,1838) * lu(k,2278) - lu(k,2286) = lu(k,2286) - lu(k,1839) * lu(k,2278) - lu(k,2287) = lu(k,2287) - lu(k,1840) * lu(k,2278) - lu(k,1924) = 1._r8 / lu(k,1924) - lu(k,1925) = lu(k,1925) * lu(k,1924) - lu(k,1926) = lu(k,1926) * lu(k,1924) - lu(k,1927) = lu(k,1927) * lu(k,1924) - lu(k,1928) = lu(k,1928) * lu(k,1924) - lu(k,1929) = lu(k,1929) * lu(k,1924) - lu(k,1930) = lu(k,1930) * lu(k,1924) - lu(k,1931) = lu(k,1931) * lu(k,1924) - lu(k,1932) = lu(k,1932) * lu(k,1924) - lu(k,1969) = lu(k,1969) - lu(k,1925) * lu(k,1968) - lu(k,1970) = lu(k,1970) - lu(k,1926) * lu(k,1968) - lu(k,1971) = lu(k,1971) - lu(k,1927) * lu(k,1968) - lu(k,1972) = lu(k,1972) - lu(k,1928) * lu(k,1968) - lu(k,1973) = lu(k,1973) - lu(k,1929) * lu(k,1968) - lu(k,1974) = lu(k,1974) - lu(k,1930) * lu(k,1968) - lu(k,1975) = lu(k,1975) - lu(k,1931) * lu(k,1968) - lu(k,1976) = lu(k,1976) - lu(k,1932) * lu(k,1968) - lu(k,2008) = lu(k,2008) - lu(k,1925) * lu(k,2007) - lu(k,2009) = lu(k,2009) - lu(k,1926) * lu(k,2007) - lu(k,2010) = lu(k,2010) - lu(k,1927) * lu(k,2007) - lu(k,2011) = lu(k,2011) - lu(k,1928) * lu(k,2007) - lu(k,2012) = lu(k,2012) - lu(k,1929) * lu(k,2007) - lu(k,2013) = lu(k,2013) - lu(k,1930) * lu(k,2007) - lu(k,2014) = lu(k,2014) - lu(k,1931) * lu(k,2007) - lu(k,2015) = lu(k,2015) - lu(k,1932) * lu(k,2007) - lu(k,2115) = lu(k,2115) - lu(k,1925) * lu(k,2114) - lu(k,2116) = lu(k,2116) - lu(k,1926) * lu(k,2114) - lu(k,2117) = lu(k,2117) - lu(k,1927) * lu(k,2114) - lu(k,2118) = lu(k,2118) - lu(k,1928) * lu(k,2114) - lu(k,2119) = lu(k,2119) - lu(k,1929) * lu(k,2114) - lu(k,2120) = lu(k,2120) - lu(k,1930) * lu(k,2114) - lu(k,2121) = lu(k,2121) - lu(k,1931) * lu(k,2114) - lu(k,2122) = lu(k,2122) - lu(k,1932) * lu(k,2114) - lu(k,2138) = lu(k,2138) - lu(k,1925) * lu(k,2137) - lu(k,2139) = lu(k,2139) - lu(k,1926) * lu(k,2137) - lu(k,2140) = lu(k,2140) - lu(k,1927) * lu(k,2137) - lu(k,2141) = lu(k,2141) - lu(k,1928) * lu(k,2137) - lu(k,2142) = lu(k,2142) - lu(k,1929) * lu(k,2137) - lu(k,2143) = lu(k,2143) - lu(k,1930) * lu(k,2137) - lu(k,2144) = lu(k,2144) - lu(k,1931) * lu(k,2137) - lu(k,2145) = lu(k,2145) - lu(k,1932) * lu(k,2137) - lu(k,2162) = lu(k,2162) - lu(k,1925) * lu(k,2161) - lu(k,2163) = lu(k,2163) - lu(k,1926) * lu(k,2161) - lu(k,2164) = lu(k,2164) - lu(k,1927) * lu(k,2161) - lu(k,2165) = lu(k,2165) - lu(k,1928) * lu(k,2161) - lu(k,2166) = lu(k,2166) - lu(k,1929) * lu(k,2161) - lu(k,2167) = lu(k,2167) - lu(k,1930) * lu(k,2161) - lu(k,2168) = lu(k,2168) - lu(k,1931) * lu(k,2161) - lu(k,2169) = lu(k,2169) - lu(k,1932) * lu(k,2161) - lu(k,2193) = lu(k,2193) - lu(k,1925) * lu(k,2192) - lu(k,2194) = lu(k,2194) - lu(k,1926) * lu(k,2192) - lu(k,2195) = lu(k,2195) - lu(k,1927) * lu(k,2192) - lu(k,2196) = lu(k,2196) - lu(k,1928) * lu(k,2192) - lu(k,2197) = lu(k,2197) - lu(k,1929) * lu(k,2192) - lu(k,2198) = lu(k,2198) - lu(k,1930) * lu(k,2192) - lu(k,2199) = lu(k,2199) - lu(k,1931) * lu(k,2192) - lu(k,2200) = lu(k,2200) - lu(k,1932) * lu(k,2192) - lu(k,2254) = lu(k,2254) - lu(k,1925) * lu(k,2253) - lu(k,2255) = lu(k,2255) - lu(k,1926) * lu(k,2253) - lu(k,2256) = lu(k,2256) - lu(k,1927) * lu(k,2253) - lu(k,2257) = lu(k,2257) - lu(k,1928) * lu(k,2253) - lu(k,2258) = lu(k,2258) - lu(k,1929) * lu(k,2253) - lu(k,2259) = lu(k,2259) - lu(k,1930) * lu(k,2253) - lu(k,2260) = lu(k,2260) - lu(k,1931) * lu(k,2253) - lu(k,2261) = lu(k,2261) - lu(k,1932) * lu(k,2253) - lu(k,2280) = lu(k,2280) - lu(k,1925) * lu(k,2279) - lu(k,2281) = lu(k,2281) - lu(k,1926) * lu(k,2279) - lu(k,2282) = lu(k,2282) - lu(k,1927) * lu(k,2279) - lu(k,2283) = lu(k,2283) - lu(k,1928) * lu(k,2279) - lu(k,2284) = lu(k,2284) - lu(k,1929) * lu(k,2279) - lu(k,2285) = lu(k,2285) - lu(k,1930) * lu(k,2279) - lu(k,2286) = lu(k,2286) - lu(k,1931) * lu(k,2279) - lu(k,2287) = lu(k,2287) - lu(k,1932) * lu(k,2279) - lu(k,1969) = 1._r8 / lu(k,1969) - lu(k,1970) = lu(k,1970) * lu(k,1969) - lu(k,1971) = lu(k,1971) * lu(k,1969) - lu(k,1972) = lu(k,1972) * lu(k,1969) - lu(k,1973) = lu(k,1973) * lu(k,1969) - lu(k,1974) = lu(k,1974) * lu(k,1969) - lu(k,1975) = lu(k,1975) * lu(k,1969) - lu(k,1976) = lu(k,1976) * lu(k,1969) - lu(k,2009) = lu(k,2009) - lu(k,1970) * lu(k,2008) - lu(k,2010) = lu(k,2010) - lu(k,1971) * lu(k,2008) - lu(k,2011) = lu(k,2011) - lu(k,1972) * lu(k,2008) - lu(k,2012) = lu(k,2012) - lu(k,1973) * lu(k,2008) - lu(k,2013) = lu(k,2013) - lu(k,1974) * lu(k,2008) - lu(k,2014) = lu(k,2014) - lu(k,1975) * lu(k,2008) - lu(k,2015) = lu(k,2015) - lu(k,1976) * lu(k,2008) - lu(k,2116) = lu(k,2116) - lu(k,1970) * lu(k,2115) - lu(k,2117) = lu(k,2117) - lu(k,1971) * lu(k,2115) - lu(k,2118) = lu(k,2118) - lu(k,1972) * lu(k,2115) - lu(k,2119) = lu(k,2119) - lu(k,1973) * lu(k,2115) - lu(k,2120) = lu(k,2120) - lu(k,1974) * lu(k,2115) - lu(k,2121) = lu(k,2121) - lu(k,1975) * lu(k,2115) - lu(k,2122) = lu(k,2122) - lu(k,1976) * lu(k,2115) - lu(k,2139) = lu(k,2139) - lu(k,1970) * lu(k,2138) - lu(k,2140) = lu(k,2140) - lu(k,1971) * lu(k,2138) - lu(k,2141) = lu(k,2141) - lu(k,1972) * lu(k,2138) - lu(k,2142) = lu(k,2142) - lu(k,1973) * lu(k,2138) - lu(k,2143) = lu(k,2143) - lu(k,1974) * lu(k,2138) - lu(k,2144) = lu(k,2144) - lu(k,1975) * lu(k,2138) - lu(k,2145) = lu(k,2145) - lu(k,1976) * lu(k,2138) - lu(k,2163) = lu(k,2163) - lu(k,1970) * lu(k,2162) - lu(k,2164) = lu(k,2164) - lu(k,1971) * lu(k,2162) - lu(k,2165) = lu(k,2165) - lu(k,1972) * lu(k,2162) - lu(k,2166) = lu(k,2166) - lu(k,1973) * lu(k,2162) - lu(k,2167) = lu(k,2167) - lu(k,1974) * lu(k,2162) - lu(k,2168) = lu(k,2168) - lu(k,1975) * lu(k,2162) - lu(k,2169) = lu(k,2169) - lu(k,1976) * lu(k,2162) - lu(k,2194) = lu(k,2194) - lu(k,1970) * lu(k,2193) - lu(k,2195) = lu(k,2195) - lu(k,1971) * lu(k,2193) - lu(k,2196) = lu(k,2196) - lu(k,1972) * lu(k,2193) - lu(k,2197) = lu(k,2197) - lu(k,1973) * lu(k,2193) - lu(k,2198) = lu(k,2198) - lu(k,1974) * lu(k,2193) - lu(k,2199) = lu(k,2199) - lu(k,1975) * lu(k,2193) - lu(k,2200) = lu(k,2200) - lu(k,1976) * lu(k,2193) - lu(k,2255) = lu(k,2255) - lu(k,1970) * lu(k,2254) - lu(k,2256) = lu(k,2256) - lu(k,1971) * lu(k,2254) - lu(k,2257) = lu(k,2257) - lu(k,1972) * lu(k,2254) - lu(k,2258) = lu(k,2258) - lu(k,1973) * lu(k,2254) - lu(k,2259) = lu(k,2259) - lu(k,1974) * lu(k,2254) - lu(k,2260) = lu(k,2260) - lu(k,1975) * lu(k,2254) - lu(k,2261) = lu(k,2261) - lu(k,1976) * lu(k,2254) - lu(k,2281) = lu(k,2281) - lu(k,1970) * lu(k,2280) - lu(k,2282) = lu(k,2282) - lu(k,1971) * lu(k,2280) - lu(k,2283) = lu(k,2283) - lu(k,1972) * lu(k,2280) - lu(k,2284) = lu(k,2284) - lu(k,1973) * lu(k,2280) - lu(k,2285) = lu(k,2285) - lu(k,1974) * lu(k,2280) - lu(k,2286) = lu(k,2286) - lu(k,1975) * lu(k,2280) - lu(k,2287) = lu(k,2287) - lu(k,1976) * lu(k,2280) - lu(k,2009) = 1._r8 / lu(k,2009) - lu(k,2010) = lu(k,2010) * lu(k,2009) - lu(k,2011) = lu(k,2011) * lu(k,2009) - lu(k,2012) = lu(k,2012) * lu(k,2009) - lu(k,2013) = lu(k,2013) * lu(k,2009) - lu(k,2014) = lu(k,2014) * lu(k,2009) - lu(k,2015) = lu(k,2015) * lu(k,2009) - lu(k,2117) = lu(k,2117) - lu(k,2010) * lu(k,2116) - lu(k,2118) = lu(k,2118) - lu(k,2011) * lu(k,2116) - lu(k,2119) = lu(k,2119) - lu(k,2012) * lu(k,2116) - lu(k,2120) = lu(k,2120) - lu(k,2013) * lu(k,2116) - lu(k,2121) = lu(k,2121) - lu(k,2014) * lu(k,2116) - lu(k,2122) = lu(k,2122) - lu(k,2015) * lu(k,2116) - lu(k,2140) = lu(k,2140) - lu(k,2010) * lu(k,2139) - lu(k,2141) = lu(k,2141) - lu(k,2011) * lu(k,2139) - lu(k,2142) = lu(k,2142) - lu(k,2012) * lu(k,2139) - lu(k,2143) = lu(k,2143) - lu(k,2013) * lu(k,2139) - lu(k,2144) = lu(k,2144) - lu(k,2014) * lu(k,2139) - lu(k,2145) = lu(k,2145) - lu(k,2015) * lu(k,2139) - lu(k,2164) = lu(k,2164) - lu(k,2010) * lu(k,2163) - lu(k,2165) = lu(k,2165) - lu(k,2011) * lu(k,2163) - lu(k,2166) = lu(k,2166) - lu(k,2012) * lu(k,2163) - lu(k,2167) = lu(k,2167) - lu(k,2013) * lu(k,2163) - lu(k,2168) = lu(k,2168) - lu(k,2014) * lu(k,2163) - lu(k,2169) = lu(k,2169) - lu(k,2015) * lu(k,2163) - lu(k,2195) = lu(k,2195) - lu(k,2010) * lu(k,2194) - lu(k,2196) = lu(k,2196) - lu(k,2011) * lu(k,2194) - lu(k,2197) = lu(k,2197) - lu(k,2012) * lu(k,2194) - lu(k,2198) = lu(k,2198) - lu(k,2013) * lu(k,2194) - lu(k,2199) = lu(k,2199) - lu(k,2014) * lu(k,2194) - lu(k,2200) = lu(k,2200) - lu(k,2015) * lu(k,2194) - lu(k,2256) = lu(k,2256) - lu(k,2010) * lu(k,2255) - lu(k,2257) = lu(k,2257) - lu(k,2011) * lu(k,2255) - lu(k,2258) = lu(k,2258) - lu(k,2012) * lu(k,2255) - lu(k,2259) = lu(k,2259) - lu(k,2013) * lu(k,2255) - lu(k,2260) = lu(k,2260) - lu(k,2014) * lu(k,2255) - lu(k,2261) = lu(k,2261) - lu(k,2015) * lu(k,2255) - lu(k,2282) = lu(k,2282) - lu(k,2010) * lu(k,2281) - lu(k,2283) = lu(k,2283) - lu(k,2011) * lu(k,2281) - lu(k,2284) = lu(k,2284) - lu(k,2012) * lu(k,2281) - lu(k,2285) = lu(k,2285) - lu(k,2013) * lu(k,2281) - lu(k,2286) = lu(k,2286) - lu(k,2014) * lu(k,2281) - lu(k,2287) = lu(k,2287) - lu(k,2015) * lu(k,2281) - lu(k,2117) = 1._r8 / lu(k,2117) - lu(k,2118) = lu(k,2118) * lu(k,2117) - lu(k,2119) = lu(k,2119) * lu(k,2117) - lu(k,2120) = lu(k,2120) * lu(k,2117) - lu(k,2121) = lu(k,2121) * lu(k,2117) - lu(k,2122) = lu(k,2122) * lu(k,2117) - lu(k,2141) = lu(k,2141) - lu(k,2118) * lu(k,2140) - lu(k,2142) = lu(k,2142) - lu(k,2119) * lu(k,2140) - lu(k,2143) = lu(k,2143) - lu(k,2120) * lu(k,2140) - lu(k,2144) = lu(k,2144) - lu(k,2121) * lu(k,2140) - lu(k,2145) = lu(k,2145) - lu(k,2122) * lu(k,2140) - lu(k,2165) = lu(k,2165) - lu(k,2118) * lu(k,2164) - lu(k,2166) = lu(k,2166) - lu(k,2119) * lu(k,2164) - lu(k,2167) = lu(k,2167) - lu(k,2120) * lu(k,2164) - lu(k,2168) = lu(k,2168) - lu(k,2121) * lu(k,2164) - lu(k,2169) = lu(k,2169) - lu(k,2122) * lu(k,2164) - lu(k,2196) = lu(k,2196) - lu(k,2118) * lu(k,2195) - lu(k,2197) = lu(k,2197) - lu(k,2119) * lu(k,2195) - lu(k,2198) = lu(k,2198) - lu(k,2120) * lu(k,2195) - lu(k,2199) = lu(k,2199) - lu(k,2121) * lu(k,2195) - lu(k,2200) = lu(k,2200) - lu(k,2122) * lu(k,2195) - lu(k,2257) = lu(k,2257) - lu(k,2118) * lu(k,2256) - lu(k,2258) = lu(k,2258) - lu(k,2119) * lu(k,2256) - lu(k,2259) = lu(k,2259) - lu(k,2120) * lu(k,2256) - lu(k,2260) = lu(k,2260) - lu(k,2121) * lu(k,2256) - lu(k,2261) = lu(k,2261) - lu(k,2122) * lu(k,2256) - lu(k,2283) = lu(k,2283) - lu(k,2118) * lu(k,2282) - lu(k,2284) = lu(k,2284) - lu(k,2119) * lu(k,2282) - lu(k,2285) = lu(k,2285) - lu(k,2120) * lu(k,2282) - lu(k,2286) = lu(k,2286) - lu(k,2121) * lu(k,2282) - lu(k,2287) = lu(k,2287) - lu(k,2122) * lu(k,2282) - end do - end subroutine lu_fac30 - subroutine lu_fac31( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) -!----------------------------------------------------------------------- -! ... local variables -!----------------------------------------------------------------------- - integer :: k - do k = 1,avec_len - lu(k,2141) = 1._r8 / lu(k,2141) - lu(k,2142) = lu(k,2142) * lu(k,2141) - lu(k,2143) = lu(k,2143) * lu(k,2141) - lu(k,2144) = lu(k,2144) * lu(k,2141) - lu(k,2145) = lu(k,2145) * lu(k,2141) - lu(k,2166) = lu(k,2166) - lu(k,2142) * lu(k,2165) - lu(k,2167) = lu(k,2167) - lu(k,2143) * lu(k,2165) - lu(k,2168) = lu(k,2168) - lu(k,2144) * lu(k,2165) - lu(k,2169) = lu(k,2169) - lu(k,2145) * lu(k,2165) - lu(k,2197) = lu(k,2197) - lu(k,2142) * lu(k,2196) - lu(k,2198) = lu(k,2198) - lu(k,2143) * lu(k,2196) - lu(k,2199) = lu(k,2199) - lu(k,2144) * lu(k,2196) - lu(k,2200) = lu(k,2200) - lu(k,2145) * lu(k,2196) - lu(k,2258) = lu(k,2258) - lu(k,2142) * lu(k,2257) - lu(k,2259) = lu(k,2259) - lu(k,2143) * lu(k,2257) - lu(k,2260) = lu(k,2260) - lu(k,2144) * lu(k,2257) - lu(k,2261) = lu(k,2261) - lu(k,2145) * lu(k,2257) - lu(k,2284) = lu(k,2284) - lu(k,2142) * lu(k,2283) - lu(k,2285) = lu(k,2285) - lu(k,2143) * lu(k,2283) - lu(k,2286) = lu(k,2286) - lu(k,2144) * lu(k,2283) - lu(k,2287) = lu(k,2287) - lu(k,2145) * lu(k,2283) - lu(k,2166) = 1._r8 / lu(k,2166) - lu(k,2167) = lu(k,2167) * lu(k,2166) - lu(k,2168) = lu(k,2168) * lu(k,2166) - lu(k,2169) = lu(k,2169) * lu(k,2166) - lu(k,2198) = lu(k,2198) - lu(k,2167) * lu(k,2197) - lu(k,2199) = lu(k,2199) - lu(k,2168) * lu(k,2197) - lu(k,2200) = lu(k,2200) - lu(k,2169) * lu(k,2197) - lu(k,2259) = lu(k,2259) - lu(k,2167) * lu(k,2258) - lu(k,2260) = lu(k,2260) - lu(k,2168) * lu(k,2258) - lu(k,2261) = lu(k,2261) - lu(k,2169) * lu(k,2258) - lu(k,2285) = lu(k,2285) - lu(k,2167) * lu(k,2284) - lu(k,2286) = lu(k,2286) - lu(k,2168) * lu(k,2284) - lu(k,2287) = lu(k,2287) - lu(k,2169) * lu(k,2284) - lu(k,2198) = 1._r8 / lu(k,2198) - lu(k,2199) = lu(k,2199) * lu(k,2198) - lu(k,2200) = lu(k,2200) * lu(k,2198) - lu(k,2260) = lu(k,2260) - lu(k,2199) * lu(k,2259) - lu(k,2261) = lu(k,2261) - lu(k,2200) * lu(k,2259) - lu(k,2286) = lu(k,2286) - lu(k,2199) * lu(k,2285) - lu(k,2287) = lu(k,2287) - lu(k,2200) * lu(k,2285) - lu(k,2260) = 1._r8 / lu(k,2260) - lu(k,2261) = lu(k,2261) * lu(k,2260) - lu(k,2287) = lu(k,2287) - lu(k,2261) * lu(k,2286) - lu(k,2287) = 1._r8 / lu(k,2287) - end do - end subroutine lu_fac31 - subroutine lu_fac( avec_len, lu ) - use chem_mods, only : nzcnt - use shr_kind_mod, only : r8 => shr_kind_r8 - implicit none -!----------------------------------------------------------------------- -! ... dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(inout) :: lu(veclen,nzcnt) - call lu_fac01( avec_len, lu ) - call lu_fac02( avec_len, lu ) - call lu_fac03( avec_len, lu ) - call lu_fac04( avec_len, lu ) - call lu_fac05( avec_len, lu ) - call lu_fac06( avec_len, lu ) - call lu_fac07( avec_len, lu ) - call lu_fac08( avec_len, lu ) - call lu_fac09( avec_len, lu ) - call lu_fac10( avec_len, lu ) - call lu_fac11( avec_len, lu ) - call lu_fac12( avec_len, lu ) - call lu_fac13( avec_len, lu ) - call lu_fac14( avec_len, lu ) - call lu_fac15( avec_len, lu ) - call lu_fac16( avec_len, lu ) - call lu_fac17( avec_len, lu ) - call lu_fac18( avec_len, lu ) - call lu_fac19( avec_len, lu ) - call lu_fac20( avec_len, lu ) - call lu_fac21( avec_len, lu ) - call lu_fac22( avec_len, lu ) - call lu_fac23( avec_len, lu ) - call lu_fac24( avec_len, lu ) - call lu_fac25( avec_len, lu ) - call lu_fac26( avec_len, lu ) - call lu_fac27( avec_len, lu ) - call lu_fac28( avec_len, lu ) - call lu_fac29( avec_len, lu ) - call lu_fac30( avec_len, lu ) - call lu_fac31( avec_len, lu ) - end subroutine lu_fac - end module mo_lu_factor diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_solve.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_solve.F90 deleted file mode 100644 index 9678469ecf..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_lu_solve.F90 +++ /dev/null @@ -1,2559 +0,0 @@ - module mo_lu_solve - use chem_mods, only: veclen - private - public :: lu_slv - contains - subroutine lu_slv01( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,218) = b(k,218) - lu(k,96) * b(k,54) - b(k,223) = b(k,223) - lu(k,97) * b(k,54) - b(k,217) = b(k,217) - lu(k,99) * b(k,55) - b(k,229) = b(k,229) - lu(k,100) * b(k,55) - b(k,216) = b(k,216) - lu(k,102) * b(k,56) - b(k,223) = b(k,223) - lu(k,103) * b(k,56) - b(k,217) = b(k,217) - lu(k,105) * b(k,57) - b(k,224) = b(k,224) - lu(k,106) * b(k,57) - b(k,89) = b(k,89) - lu(k,108) * b(k,58) - b(k,211) = b(k,211) - lu(k,109) * b(k,58) - b(k,216) = b(k,216) - lu(k,110) * b(k,58) - b(k,168) = b(k,168) - lu(k,112) * b(k,59) - b(k,217) = b(k,217) - lu(k,113) * b(k,59) - b(k,229) = b(k,229) - lu(k,114) * b(k,59) - b(k,91) = b(k,91) - lu(k,116) * b(k,60) - b(k,216) = b(k,216) - lu(k,117) * b(k,60) - b(k,223) = b(k,223) - lu(k,118) * b(k,60) - b(k,89) = b(k,89) - lu(k,120) * b(k,61) - b(k,216) = b(k,216) - lu(k,121) * b(k,61) - b(k,223) = b(k,223) - lu(k,122) * b(k,61) - b(k,89) = b(k,89) - lu(k,124) * b(k,62) - b(k,216) = b(k,216) - lu(k,125) * b(k,62) - b(k,223) = b(k,223) - lu(k,126) * b(k,62) - b(k,217) = b(k,217) - lu(k,128) * b(k,63) - b(k,223) = b(k,223) - lu(k,129) * b(k,63) - b(k,229) = b(k,229) - lu(k,130) * b(k,63) - b(k,96) = b(k,96) - lu(k,132) * b(k,64) - b(k,217) = b(k,217) - lu(k,133) * b(k,64) - b(k,93) = b(k,93) - lu(k,135) * b(k,65) - b(k,229) = b(k,229) - lu(k,136) * b(k,65) - b(k,199) = b(k,199) - lu(k,138) * b(k,66) - b(k,217) = b(k,217) - lu(k,139) * b(k,66) - b(k,138) = b(k,138) - lu(k,141) * b(k,67) - b(k,222) = b(k,222) - lu(k,142) * b(k,67) - b(k,89) = b(k,89) - lu(k,144) * b(k,68) - b(k,211) = b(k,211) - lu(k,145) * b(k,68) - b(k,216) = b(k,216) - lu(k,146) * b(k,68) - b(k,223) = b(k,223) - lu(k,147) * b(k,68) - b(k,89) = b(k,89) - lu(k,149) * b(k,69) - b(k,177) = b(k,177) - lu(k,150) * b(k,69) - b(k,211) = b(k,211) - lu(k,151) * b(k,69) - b(k,216) = b(k,216) - lu(k,152) * b(k,69) - b(k,89) = b(k,89) - lu(k,154) * b(k,70) - b(k,91) = b(k,91) - lu(k,155) * b(k,70) - b(k,216) = b(k,216) - lu(k,156) * b(k,70) - b(k,223) = b(k,223) - lu(k,157) * b(k,70) - b(k,89) = b(k,89) - lu(k,159) * b(k,71) - b(k,177) = b(k,177) - lu(k,160) * b(k,71) - b(k,216) = b(k,216) - lu(k,161) * b(k,71) - b(k,223) = b(k,223) - lu(k,162) * b(k,71) - b(k,73) = b(k,73) - lu(k,165) * b(k,72) - b(k,74) = b(k,74) - lu(k,166) * b(k,72) - b(k,133) = b(k,133) - lu(k,167) * b(k,72) - b(k,217) = b(k,217) - lu(k,168) * b(k,72) - b(k,224) = b(k,224) - lu(k,169) * b(k,72) - b(k,129) = b(k,129) - lu(k,171) * b(k,73) - b(k,195) = b(k,195) - lu(k,172) * b(k,73) - b(k,224) = b(k,224) - lu(k,173) * b(k,73) - b(k,127) = b(k,127) - lu(k,175) * b(k,74) - b(k,130) = b(k,130) - lu(k,176) * b(k,74) - b(k,217) = b(k,217) - lu(k,177) * b(k,74) - b(k,224) = b(k,224) - lu(k,178) * b(k,74) - b(k,223) = b(k,223) - lu(k,180) * b(k,75) - b(k,216) = b(k,216) - lu(k,182) * b(k,76) - b(k,217) = b(k,217) - lu(k,183) * b(k,76) - b(k,224) = b(k,224) - lu(k,184) * b(k,76) - b(k,216) = b(k,216) - lu(k,186) * b(k,77) - b(k,221) = b(k,221) - lu(k,187) * b(k,77) - b(k,79) = b(k,79) - lu(k,190) * b(k,78) - b(k,80) = b(k,80) - lu(k,191) * b(k,78) - b(k,125) = b(k,125) - lu(k,192) * b(k,78) - b(k,162) = b(k,162) - lu(k,193) * b(k,78) - b(k,217) = b(k,217) - lu(k,194) * b(k,78) - b(k,224) = b(k,224) - lu(k,195) * b(k,78) - b(k,127) = b(k,127) - lu(k,197) * b(k,79) - b(k,130) = b(k,130) - lu(k,198) * b(k,79) - b(k,217) = b(k,217) - lu(k,199) * b(k,79) - b(k,224) = b(k,224) - lu(k,200) * b(k,79) - b(k,195) = b(k,195) - lu(k,202) * b(k,80) - b(k,209) = b(k,209) - lu(k,203) * b(k,80) - b(k,224) = b(k,224) - lu(k,204) * b(k,80) - b(k,199) = b(k,199) - lu(k,206) * b(k,81) - b(k,217) = b(k,217) - lu(k,207) * b(k,81) - b(k,83) = b(k,83) - lu(k,211) * b(k,82) - b(k,125) = b(k,125) - lu(k,212) * b(k,82) - b(k,164) = b(k,164) - lu(k,213) * b(k,82) - b(k,195) = b(k,195) - lu(k,214) * b(k,82) - b(k,209) = b(k,209) - lu(k,215) * b(k,82) - b(k,217) = b(k,217) - lu(k,216) * b(k,82) - b(k,224) = b(k,224) - lu(k,217) * b(k,82) - b(k,130) = b(k,130) - lu(k,219) * b(k,83) - b(k,135) = b(k,135) - lu(k,220) * b(k,83) - b(k,217) = b(k,217) - lu(k,221) * b(k,83) - b(k,224) = b(k,224) - lu(k,222) * b(k,83) - b(k,147) = b(k,147) - lu(k,224) * b(k,84) - b(k,199) = b(k,199) - lu(k,225) * b(k,84) - b(k,217) = b(k,217) - lu(k,226) * b(k,84) - b(k,224) = b(k,224) - lu(k,227) * b(k,84) - b(k,179) = b(k,179) - lu(k,229) * b(k,85) - b(k,217) = b(k,217) - lu(k,230) * b(k,85) - b(k,211) = b(k,211) - lu(k,232) * b(k,86) - b(k,223) = b(k,223) - lu(k,233) * b(k,86) - b(k,214) = b(k,214) - lu(k,235) * b(k,87) - b(k,222) = b(k,222) - lu(k,236) * b(k,87) - b(k,138) = b(k,138) - lu(k,238) * b(k,88) - b(k,217) = b(k,217) - lu(k,239) * b(k,88) - b(k,177) = b(k,177) - lu(k,241) * b(k,89) - b(k,216) = b(k,216) - lu(k,242) * b(k,89) - b(k,91) = b(k,91) - lu(k,244) * b(k,90) - b(k,216) = b(k,216) - lu(k,245) * b(k,90) - b(k,217) = b(k,217) - lu(k,246) * b(k,90) - b(k,223) = b(k,223) - lu(k,247) * b(k,90) - b(k,177) = b(k,177) - lu(k,249) * b(k,91) - b(k,216) = b(k,216) - lu(k,250) * b(k,91) - b(k,223) = b(k,223) - lu(k,251) * b(k,91) - b(k,177) = b(k,177) - lu(k,254) * b(k,92) - b(k,216) = b(k,216) - lu(k,255) * b(k,92) - b(k,217) = b(k,217) - lu(k,256) * b(k,92) - b(k,223) = b(k,223) - lu(k,257) * b(k,92) - b(k,175) = b(k,175) - lu(k,260) * b(k,93) - b(k,227) = b(k,227) - lu(k,261) * b(k,93) - b(k,229) = b(k,229) - lu(k,262) * b(k,93) - b(k,192) = b(k,192) - lu(k,264) * b(k,94) - b(k,217) = b(k,217) - lu(k,265) * b(k,94) - b(k,224) = b(k,224) - lu(k,266) * b(k,94) - b(k,130) = b(k,130) - lu(k,268) * b(k,95) - b(k,152) = b(k,152) - lu(k,269) * b(k,95) - b(k,217) = b(k,217) - lu(k,270) * b(k,95) - b(k,193) = b(k,193) - lu(k,272) * b(k,96) - b(k,215) = b(k,215) - lu(k,273) * b(k,96) - b(k,224) = b(k,224) - lu(k,274) * b(k,96) - b(k,214) = b(k,214) - lu(k,276) * b(k,97) - b(k,219) = b(k,219) - lu(k,277) * b(k,97) - b(k,221) = b(k,221) - lu(k,278) * b(k,97) - b(k,222) = b(k,222) - lu(k,279) * b(k,97) - b(k,227) = b(k,227) - lu(k,280) * b(k,97) - b(k,165) = b(k,165) - lu(k,282) * b(k,98) - b(k,224) = b(k,224) - lu(k,283) * b(k,98) - b(k,175) = b(k,175) - lu(k,285) * b(k,99) - b(k,214) = b(k,214) - lu(k,286) * b(k,99) - b(k,217) = b(k,217) - lu(k,287) * b(k,99) - b(k,219) = b(k,219) - lu(k,288) * b(k,99) - b(k,224) = b(k,224) - lu(k,289) * b(k,99) - b(k,177) = b(k,177) - lu(k,291) * b(k,100) - b(k,213) = b(k,213) - lu(k,292) * b(k,100) - b(k,183) = b(k,183) - lu(k,294) * b(k,101) - b(k,186) = b(k,186) - lu(k,295) * b(k,101) - b(k,195) = b(k,195) - lu(k,296) * b(k,101) - b(k,217) = b(k,217) - lu(k,297) * b(k,101) - b(k,224) = b(k,224) - lu(k,298) * b(k,101) - b(k,177) = b(k,177) - lu(k,301) * b(k,102) - b(k,216) = b(k,216) - lu(k,302) * b(k,102) - b(k,217) = b(k,217) - lu(k,303) * b(k,102) - b(k,223) = b(k,223) - lu(k,304) * b(k,102) - b(k,229) = b(k,229) - lu(k,305) * b(k,102) - b(k,173) = b(k,173) - lu(k,307) * b(k,103) - b(k,217) = b(k,217) - lu(k,308) * b(k,103) - b(k,223) = b(k,223) - lu(k,309) * b(k,103) - b(k,225) = b(k,225) - lu(k,310) * b(k,103) - b(k,229) = b(k,229) - lu(k,311) * b(k,103) - b(k,206) = b(k,206) - lu(k,313) * b(k,104) - b(k,208) = b(k,208) - lu(k,314) * b(k,104) - b(k,217) = b(k,217) - lu(k,315) * b(k,104) - b(k,224) = b(k,224) - lu(k,316) * b(k,104) - b(k,157) = b(k,157) - lu(k,318) * b(k,105) - b(k,192) = b(k,192) - lu(k,319) * b(k,105) - b(k,209) = b(k,209) - lu(k,320) * b(k,105) - b(k,217) = b(k,217) - lu(k,321) * b(k,105) - b(k,195) = b(k,195) - lu(k,323) * b(k,106) - b(k,202) = b(k,202) - lu(k,324) * b(k,106) - b(k,209) = b(k,209) - lu(k,325) * b(k,106) - b(k,224) = b(k,224) - lu(k,326) * b(k,106) - b(k,175) = b(k,175) - lu(k,328) * b(k,107) - b(k,203) = b(k,203) - lu(k,329) * b(k,107) - b(k,218) = b(k,218) - lu(k,330) * b(k,107) - b(k,227) = b(k,227) - lu(k,331) * b(k,107) - b(k,127) = b(k,127) - lu(k,333) * b(k,108) - b(k,186) = b(k,186) - lu(k,334) * b(k,108) - b(k,217) = b(k,217) - lu(k,335) * b(k,108) - b(k,224) = b(k,224) - lu(k,336) * b(k,108) - b(k,125) = b(k,125) - lu(k,339) * b(k,109) - b(k,138) = b(k,138) - lu(k,340) * b(k,109) - b(k,217) = b(k,217) - lu(k,341) * b(k,109) - b(k,224) = b(k,224) - lu(k,342) * b(k,109) - b(k,173) = b(k,173) - lu(k,344) * b(k,110) - b(k,192) = b(k,192) - lu(k,345) * b(k,110) - b(k,217) = b(k,217) - lu(k,346) * b(k,110) - b(k,224) = b(k,224) - lu(k,347) * b(k,110) - b(k,199) = b(k,199) - lu(k,349) * b(k,111) - b(k,217) = b(k,217) - lu(k,350) * b(k,111) - b(k,144) = b(k,144) - lu(k,352) * b(k,112) - b(k,182) = b(k,182) - lu(k,353) * b(k,112) - b(k,192) = b(k,192) - lu(k,354) * b(k,112) - b(k,215) = b(k,215) - lu(k,355) * b(k,112) - b(k,217) = b(k,217) - lu(k,356) * b(k,112) - b(k,219) = b(k,219) - lu(k,357) * b(k,112) - b(k,222) = b(k,222) - lu(k,358) * b(k,112) - b(k,137) = b(k,137) - lu(k,360) * b(k,113) - b(k,175) = b(k,175) - lu(k,361) * b(k,113) - b(k,195) = b(k,195) - lu(k,362) * b(k,113) - b(k,203) = b(k,203) - lu(k,363) * b(k,113) - b(k,213) = b(k,213) - lu(k,364) * b(k,113) - b(k,217) = b(k,217) - lu(k,365) * b(k,113) - b(k,227) = b(k,227) - lu(k,366) * b(k,113) - end do - end subroutine lu_slv01 - subroutine lu_slv02( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,195) = b(k,195) - lu(k,368) * b(k,114) - b(k,217) = b(k,217) - lu(k,369) * b(k,114) - b(k,220) = b(k,220) - lu(k,370) * b(k,114) - b(k,223) = b(k,223) - lu(k,371) * b(k,114) - b(k,224) = b(k,224) - lu(k,372) * b(k,114) - b(k,225) = b(k,225) - lu(k,373) * b(k,114) - b(k,229) = b(k,229) - lu(k,374) * b(k,114) - b(k,176) = b(k,176) - lu(k,376) * b(k,115) - b(k,193) = b(k,193) - lu(k,377) * b(k,115) - b(k,214) = b(k,214) - lu(k,378) * b(k,115) - b(k,217) = b(k,217) - lu(k,379) * b(k,115) - b(k,224) = b(k,224) - lu(k,380) * b(k,115) - b(k,186) = b(k,186) - lu(k,382) * b(k,116) - b(k,195) = b(k,195) - lu(k,383) * b(k,116) - b(k,202) = b(k,202) - lu(k,384) * b(k,116) - b(k,209) = b(k,209) - lu(k,385) * b(k,116) - b(k,224) = b(k,224) - lu(k,386) * b(k,116) - b(k,211) = b(k,211) - lu(k,388) * b(k,117) - b(k,216) = b(k,216) - lu(k,389) * b(k,117) - b(k,217) = b(k,217) - lu(k,390) * b(k,117) - b(k,223) = b(k,223) - lu(k,391) * b(k,117) - b(k,225) = b(k,225) - lu(k,392) * b(k,117) - b(k,185) = b(k,185) - lu(k,394) * b(k,118) - b(k,189) = b(k,189) - lu(k,395) * b(k,118) - b(k,214) = b(k,214) - lu(k,396) * b(k,118) - b(k,217) = b(k,217) - lu(k,397) * b(k,118) - b(k,222) = b(k,222) - lu(k,398) * b(k,118) - b(k,196) = b(k,196) - lu(k,400) * b(k,119) - b(k,209) = b(k,209) - lu(k,401) * b(k,119) - b(k,215) = b(k,215) - lu(k,402) * b(k,119) - b(k,217) = b(k,217) - lu(k,403) * b(k,119) - b(k,229) = b(k,229) - lu(k,404) * b(k,119) - b(k,163) = b(k,163) - lu(k,406) * b(k,120) - b(k,176) = b(k,176) - lu(k,407) * b(k,120) - b(k,217) = b(k,217) - lu(k,408) * b(k,120) - b(k,222) = b(k,222) - lu(k,409) * b(k,120) - b(k,224) = b(k,224) - lu(k,410) * b(k,120) - b(k,168) = b(k,168) - lu(k,412) * b(k,121) - b(k,182) = b(k,182) - lu(k,413) * b(k,121) - b(k,217) = b(k,217) - lu(k,414) * b(k,121) - b(k,224) = b(k,224) - lu(k,415) * b(k,121) - b(k,229) = b(k,229) - lu(k,416) * b(k,121) - b(k,129) = b(k,129) - lu(k,418) * b(k,122) - b(k,133) = b(k,133) - lu(k,419) * b(k,122) - b(k,186) = b(k,186) - lu(k,420) * b(k,122) - b(k,217) = b(k,217) - lu(k,421) * b(k,122) - b(k,224) = b(k,224) - lu(k,422) * b(k,122) - b(k,217) = b(k,217) - lu(k,424) * b(k,123) - b(k,219) = b(k,219) - lu(k,425) * b(k,123) - b(k,222) = b(k,222) - lu(k,426) * b(k,123) - b(k,224) = b(k,224) - lu(k,427) * b(k,123) - b(k,229) = b(k,229) - lu(k,428) * b(k,123) - b(k,135) = b(k,135) - lu(k,430) * b(k,124) - b(k,186) = b(k,186) - lu(k,431) * b(k,124) - b(k,202) = b(k,202) - lu(k,432) * b(k,124) - b(k,217) = b(k,217) - lu(k,433) * b(k,124) - b(k,224) = b(k,224) - lu(k,434) * b(k,124) - b(k,138) = b(k,138) - lu(k,438) * b(k,125) - b(k,217) = b(k,217) - lu(k,439) * b(k,125) - b(k,221) = b(k,221) - lu(k,440) * b(k,125) - b(k,222) = b(k,222) - lu(k,441) * b(k,125) - b(k,224) = b(k,224) - lu(k,442) * b(k,125) - b(k,183) = b(k,183) - lu(k,444) * b(k,126) - b(k,215) = b(k,215) - lu(k,445) * b(k,126) - b(k,221) = b(k,221) - lu(k,446) * b(k,126) - b(k,222) = b(k,222) - lu(k,447) * b(k,126) - b(k,224) = b(k,224) - lu(k,448) * b(k,126) - b(k,186) = b(k,186) - lu(k,451) * b(k,127) - b(k,217) = b(k,217) - lu(k,452) * b(k,127) - b(k,221) = b(k,221) - lu(k,453) * b(k,127) - b(k,222) = b(k,222) - lu(k,454) * b(k,127) - b(k,224) = b(k,224) - lu(k,455) * b(k,127) - b(k,213) = b(k,213) - lu(k,457) * b(k,128) - b(k,215) = b(k,215) - lu(k,458) * b(k,128) - b(k,217) = b(k,217) - lu(k,459) * b(k,128) - b(k,220) = b(k,220) - lu(k,460) * b(k,128) - b(k,229) = b(k,229) - lu(k,461) * b(k,128) - b(k,161) = b(k,161) - lu(k,463) * b(k,129) - b(k,224) = b(k,224) - lu(k,464) * b(k,129) - b(k,152) = b(k,152) - lu(k,466) * b(k,130) - b(k,222) = b(k,222) - lu(k,467) * b(k,130) - b(k,228) = b(k,228) - lu(k,468) * b(k,130) - b(k,211) = b(k,211) - lu(k,470) * b(k,131) - b(k,216) = b(k,216) - lu(k,471) * b(k,131) - b(k,217) = b(k,217) - lu(k,472) * b(k,131) - b(k,223) = b(k,223) - lu(k,473) * b(k,131) - b(k,225) = b(k,225) - lu(k,474) * b(k,131) - b(k,229) = b(k,229) - lu(k,475) * b(k,131) - b(k,181) = b(k,181) - lu(k,477) * b(k,132) - b(k,182) = b(k,182) - lu(k,478) * b(k,132) - b(k,185) = b(k,185) - lu(k,479) * b(k,132) - b(k,215) = b(k,215) - lu(k,480) * b(k,132) - b(k,217) = b(k,217) - lu(k,481) * b(k,132) - b(k,224) = b(k,224) - lu(k,482) * b(k,132) - b(k,161) = b(k,161) - lu(k,486) * b(k,133) - b(k,186) = b(k,186) - lu(k,487) * b(k,133) - b(k,217) = b(k,217) - lu(k,488) * b(k,133) - b(k,221) = b(k,221) - lu(k,489) * b(k,133) - b(k,222) = b(k,222) - lu(k,490) * b(k,133) - b(k,224) = b(k,224) - lu(k,491) * b(k,133) - b(k,213) = b(k,213) - lu(k,494) * b(k,134) - b(k,216) = b(k,216) - lu(k,495) * b(k,134) - b(k,217) = b(k,217) - lu(k,496) * b(k,134) - b(k,221) = b(k,221) - lu(k,497) * b(k,134) - b(k,222) = b(k,222) - lu(k,498) * b(k,134) - b(k,227) = b(k,227) - lu(k,499) * b(k,134) - b(k,186) = b(k,186) - lu(k,502) * b(k,135) - b(k,202) = b(k,202) - lu(k,503) * b(k,135) - b(k,217) = b(k,217) - lu(k,504) * b(k,135) - b(k,221) = b(k,221) - lu(k,505) * b(k,135) - b(k,222) = b(k,222) - lu(k,506) * b(k,135) - b(k,224) = b(k,224) - lu(k,507) * b(k,135) - b(k,157) = b(k,157) - lu(k,509) * b(k,136) - b(k,173) = b(k,173) - lu(k,510) * b(k,136) - b(k,209) = b(k,209) - lu(k,511) * b(k,136) - b(k,217) = b(k,217) - lu(k,512) * b(k,136) - b(k,203) = b(k,203) - lu(k,514) * b(k,137) - b(k,213) = b(k,213) - lu(k,515) * b(k,137) - b(k,217) = b(k,217) - lu(k,516) * b(k,137) - b(k,227) = b(k,227) - lu(k,517) * b(k,137) - b(k,228) = b(k,228) - lu(k,518) * b(k,137) - b(k,152) = b(k,152) - lu(k,521) * b(k,138) - b(k,217) = b(k,217) - lu(k,522) * b(k,138) - b(k,221) = b(k,221) - lu(k,523) * b(k,138) - b(k,222) = b(k,222) - lu(k,524) * b(k,138) - b(k,224) = b(k,224) - lu(k,525) * b(k,138) - b(k,170) = b(k,170) - lu(k,527) * b(k,139) - b(k,209) = b(k,209) - lu(k,528) * b(k,139) - b(k,215) = b(k,215) - lu(k,529) * b(k,139) - b(k,217) = b(k,217) - lu(k,530) * b(k,139) - b(k,219) = b(k,219) - lu(k,531) * b(k,139) - b(k,220) = b(k,220) - lu(k,532) * b(k,139) - b(k,222) = b(k,222) - lu(k,533) * b(k,139) - b(k,176) = b(k,176) - lu(k,535) * b(k,140) - b(k,193) = b(k,193) - lu(k,536) * b(k,140) - b(k,197) = b(k,197) - lu(k,537) * b(k,140) - b(k,198) = b(k,198) - lu(k,538) * b(k,140) - b(k,214) = b(k,214) - lu(k,539) * b(k,140) - b(k,217) = b(k,217) - lu(k,540) * b(k,140) - b(k,224) = b(k,224) - lu(k,541) * b(k,140) - b(k,166) = b(k,166) - lu(k,543) * b(k,141) - b(k,192) = b(k,192) - lu(k,544) * b(k,141) - b(k,197) = b(k,197) - lu(k,545) * b(k,141) - b(k,215) = b(k,215) - lu(k,546) * b(k,141) - b(k,217) = b(k,217) - lu(k,547) * b(k,141) - b(k,224) = b(k,224) - lu(k,548) * b(k,141) - b(k,229) = b(k,229) - lu(k,549) * b(k,141) - b(k,160) = b(k,160) - lu(k,551) * b(k,142) - b(k,183) = b(k,183) - lu(k,552) * b(k,142) - b(k,195) = b(k,195) - lu(k,553) * b(k,142) - b(k,215) = b(k,215) - lu(k,554) * b(k,142) - b(k,217) = b(k,217) - lu(k,555) * b(k,142) - b(k,224) = b(k,224) - lu(k,556) * b(k,142) - b(k,228) = b(k,228) - lu(k,557) * b(k,142) - b(k,167) = b(k,167) - lu(k,559) * b(k,143) - b(k,211) = b(k,211) - lu(k,560) * b(k,143) - b(k,214) = b(k,214) - lu(k,561) * b(k,143) - b(k,219) = b(k,219) - lu(k,562) * b(k,143) - b(k,222) = b(k,222) - lu(k,563) * b(k,143) - b(k,226) = b(k,226) - lu(k,564) * b(k,143) - b(k,227) = b(k,227) - lu(k,565) * b(k,143) - b(k,182) = b(k,182) - lu(k,567) * b(k,144) - b(k,192) = b(k,192) - lu(k,568) * b(k,144) - b(k,198) = b(k,198) - lu(k,569) * b(k,144) - b(k,215) = b(k,215) - lu(k,570) * b(k,144) - b(k,221) = b(k,221) - lu(k,571) * b(k,144) - b(k,222) = b(k,222) - lu(k,572) * b(k,144) - b(k,224) = b(k,224) - lu(k,573) * b(k,144) - b(k,170) = b(k,170) - lu(k,575) * b(k,145) - b(k,197) = b(k,197) - lu(k,576) * b(k,145) - b(k,208) = b(k,208) - lu(k,577) * b(k,145) - b(k,215) = b(k,215) - lu(k,578) * b(k,145) - b(k,217) = b(k,217) - lu(k,579) * b(k,145) - b(k,219) = b(k,219) - lu(k,580) * b(k,145) - b(k,222) = b(k,222) - lu(k,581) * b(k,145) - b(k,224) = b(k,224) - lu(k,582) * b(k,145) - b(k,193) = b(k,193) - lu(k,584) * b(k,146) - b(k,197) = b(k,197) - lu(k,585) * b(k,146) - b(k,198) = b(k,198) - lu(k,586) * b(k,146) - b(k,214) = b(k,214) - lu(k,587) * b(k,146) - b(k,215) = b(k,215) - lu(k,588) * b(k,146) - b(k,217) = b(k,217) - lu(k,589) * b(k,146) - b(k,222) = b(k,222) - lu(k,590) * b(k,146) - b(k,224) = b(k,224) - lu(k,591) * b(k,146) - b(k,178) = b(k,178) - lu(k,593) * b(k,147) - b(k,195) = b(k,195) - lu(k,594) * b(k,147) - b(k,224) = b(k,224) - lu(k,595) * b(k,147) - b(k,211) = b(k,211) - lu(k,597) * b(k,148) - b(k,216) = b(k,216) - lu(k,598) * b(k,148) - b(k,217) = b(k,217) - lu(k,599) * b(k,148) - b(k,220) = b(k,220) - lu(k,600) * b(k,148) - b(k,223) = b(k,223) - lu(k,601) * b(k,148) - b(k,224) = b(k,224) - lu(k,602) * b(k,148) - b(k,225) = b(k,225) - lu(k,603) * b(k,148) - b(k,229) = b(k,229) - lu(k,604) * b(k,148) - b(k,217) = b(k,217) - lu(k,606) * b(k,149) - b(k,223) = b(k,223) - lu(k,607) * b(k,149) - b(k,224) = b(k,224) - lu(k,608) * b(k,149) - b(k,225) = b(k,225) - lu(k,609) * b(k,149) - b(k,227) = b(k,227) - lu(k,610) * b(k,149) - b(k,229) = b(k,229) - lu(k,611) * b(k,149) - end do - end subroutine lu_slv02 - subroutine lu_slv03( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,170) = b(k,170) - lu(k,613) * b(k,150) - b(k,209) = b(k,209) - lu(k,614) * b(k,150) - b(k,215) = b(k,215) - lu(k,615) * b(k,150) - b(k,217) = b(k,217) - lu(k,616) * b(k,150) - b(k,220) = b(k,220) - lu(k,617) * b(k,150) - b(k,229) = b(k,229) - lu(k,618) * b(k,150) - b(k,185) = b(k,185) - lu(k,620) * b(k,151) - b(k,214) = b(k,214) - lu(k,621) * b(k,151) - b(k,217) = b(k,217) - lu(k,622) * b(k,151) - b(k,222) = b(k,222) - lu(k,623) * b(k,151) - b(k,224) = b(k,224) - lu(k,624) * b(k,151) - b(k,217) = b(k,217) - lu(k,628) * b(k,152) - b(k,221) = b(k,221) - lu(k,629) * b(k,152) - b(k,222) = b(k,222) - lu(k,630) * b(k,152) - b(k,224) = b(k,224) - lu(k,631) * b(k,152) - b(k,228) = b(k,228) - lu(k,632) * b(k,152) - b(k,157) = b(k,157) - lu(k,635) * b(k,153) - b(k,173) = b(k,173) - lu(k,636) * b(k,153) - b(k,182) = b(k,182) - lu(k,637) * b(k,153) - b(k,192) = b(k,192) - lu(k,638) * b(k,153) - b(k,209) = b(k,209) - lu(k,639) * b(k,153) - b(k,215) = b(k,215) - lu(k,640) * b(k,153) - b(k,217) = b(k,217) - lu(k,641) * b(k,153) - b(k,222) = b(k,222) - lu(k,642) * b(k,153) - b(k,224) = b(k,224) - lu(k,643) * b(k,153) - b(k,170) = b(k,170) - lu(k,645) * b(k,154) - b(k,182) = b(k,182) - lu(k,646) * b(k,154) - b(k,190) = b(k,190) - lu(k,647) * b(k,154) - b(k,193) = b(k,193) - lu(k,648) * b(k,154) - b(k,194) = b(k,194) - lu(k,649) * b(k,154) - b(k,195) = b(k,195) - lu(k,650) * b(k,154) - b(k,215) = b(k,215) - lu(k,651) * b(k,154) - b(k,217) = b(k,217) - lu(k,652) * b(k,154) - b(k,224) = b(k,224) - lu(k,653) * b(k,154) - b(k,161) = b(k,161) - lu(k,658) * b(k,155) - b(k,162) = b(k,162) - lu(k,659) * b(k,155) - b(k,165) = b(k,165) - lu(k,660) * b(k,155) - b(k,178) = b(k,178) - lu(k,661) * b(k,155) - b(k,186) = b(k,186) - lu(k,662) * b(k,155) - b(k,195) = b(k,195) - lu(k,663) * b(k,155) - b(k,202) = b(k,202) - lu(k,664) * b(k,155) - b(k,217) = b(k,217) - lu(k,665) * b(k,155) - b(k,224) = b(k,224) - lu(k,666) * b(k,155) - b(k,157) = b(k,157) - lu(k,669) * b(k,156) - b(k,173) = b(k,173) - lu(k,670) * b(k,156) - b(k,179) = b(k,179) - lu(k,671) * b(k,156) - b(k,182) = b(k,182) - lu(k,672) * b(k,156) - b(k,192) = b(k,192) - lu(k,673) * b(k,156) - b(k,209) = b(k,209) - lu(k,674) * b(k,156) - b(k,215) = b(k,215) - lu(k,675) * b(k,156) - b(k,217) = b(k,217) - lu(k,676) * b(k,156) - b(k,224) = b(k,224) - lu(k,677) * b(k,156) - b(k,192) = b(k,192) - lu(k,680) * b(k,157) - b(k,209) = b(k,209) - lu(k,681) * b(k,157) - b(k,217) = b(k,217) - lu(k,682) * b(k,157) - b(k,221) = b(k,221) - lu(k,683) * b(k,157) - b(k,222) = b(k,222) - lu(k,684) * b(k,157) - b(k,224) = b(k,224) - lu(k,685) * b(k,157) - b(k,170) = b(k,170) - lu(k,687) * b(k,158) - b(k,217) = b(k,217) - lu(k,688) * b(k,158) - b(k,220) = b(k,220) - lu(k,689) * b(k,158) - b(k,229) = b(k,229) - lu(k,690) * b(k,158) - b(k,161) = b(k,161) - lu(k,696) * b(k,159) - b(k,164) = b(k,164) - lu(k,697) * b(k,159) - b(k,165) = b(k,165) - lu(k,698) * b(k,159) - b(k,178) = b(k,178) - lu(k,699) * b(k,159) - b(k,186) = b(k,186) - lu(k,700) * b(k,159) - b(k,195) = b(k,195) - lu(k,701) * b(k,159) - b(k,202) = b(k,202) - lu(k,702) * b(k,159) - b(k,209) = b(k,209) - lu(k,703) * b(k,159) - b(k,217) = b(k,217) - lu(k,704) * b(k,159) - b(k,224) = b(k,224) - lu(k,705) * b(k,159) - b(k,193) = b(k,193) - lu(k,709) * b(k,160) - b(k,215) = b(k,215) - lu(k,710) * b(k,160) - b(k,217) = b(k,217) - lu(k,711) * b(k,160) - b(k,221) = b(k,221) - lu(k,712) * b(k,160) - b(k,222) = b(k,222) - lu(k,713) * b(k,160) - b(k,224) = b(k,224) - lu(k,714) * b(k,160) - b(k,186) = b(k,186) - lu(k,716) * b(k,161) - b(k,195) = b(k,195) - lu(k,717) * b(k,161) - b(k,221) = b(k,221) - lu(k,718) * b(k,161) - b(k,222) = b(k,222) - lu(k,719) * b(k,161) - b(k,224) = b(k,224) - lu(k,720) * b(k,161) - b(k,165) = b(k,165) - lu(k,727) * b(k,162) - b(k,178) = b(k,178) - lu(k,728) * b(k,162) - b(k,186) = b(k,186) - lu(k,729) * b(k,162) - b(k,195) = b(k,195) - lu(k,730) * b(k,162) - b(k,202) = b(k,202) - lu(k,731) * b(k,162) - b(k,217) = b(k,217) - lu(k,732) * b(k,162) - b(k,221) = b(k,221) - lu(k,733) * b(k,162) - b(k,222) = b(k,222) - lu(k,734) * b(k,162) - b(k,224) = b(k,224) - lu(k,735) * b(k,162) - b(k,199) = b(k,199) - lu(k,738) * b(k,163) - b(k,201) = b(k,201) - lu(k,739) * b(k,163) - b(k,207) = b(k,207) - lu(k,740) * b(k,163) - b(k,215) = b(k,215) - lu(k,741) * b(k,163) - b(k,217) = b(k,217) - lu(k,742) * b(k,163) - b(k,224) = b(k,224) - lu(k,743) * b(k,163) - b(k,165) = b(k,165) - lu(k,751) * b(k,164) - b(k,178) = b(k,178) - lu(k,752) * b(k,164) - b(k,186) = b(k,186) - lu(k,753) * b(k,164) - b(k,195) = b(k,195) - lu(k,754) * b(k,164) - b(k,202) = b(k,202) - lu(k,755) * b(k,164) - b(k,209) = b(k,209) - lu(k,756) * b(k,164) - b(k,217) = b(k,217) - lu(k,757) * b(k,164) - b(k,221) = b(k,221) - lu(k,758) * b(k,164) - b(k,222) = b(k,222) - lu(k,759) * b(k,164) - b(k,224) = b(k,224) - lu(k,760) * b(k,164) - b(k,195) = b(k,195) - lu(k,762) * b(k,165) - b(k,202) = b(k,202) - lu(k,763) * b(k,165) - b(k,217) = b(k,217) - lu(k,764) * b(k,165) - b(k,220) = b(k,220) - lu(k,765) * b(k,165) - b(k,221) = b(k,221) - lu(k,766) * b(k,165) - b(k,222) = b(k,222) - lu(k,767) * b(k,165) - b(k,224) = b(k,224) - lu(k,768) * b(k,165) - b(k,192) = b(k,192) - lu(k,771) * b(k,166) - b(k,197) = b(k,197) - lu(k,772) * b(k,166) - b(k,215) = b(k,215) - lu(k,773) * b(k,166) - b(k,217) = b(k,217) - lu(k,774) * b(k,166) - b(k,221) = b(k,221) - lu(k,775) * b(k,166) - b(k,222) = b(k,222) - lu(k,776) * b(k,166) - b(k,224) = b(k,224) - lu(k,777) * b(k,166) - b(k,229) = b(k,229) - lu(k,778) * b(k,166) - b(k,211) = b(k,211) - lu(k,781) * b(k,167) - b(k,217) = b(k,217) - lu(k,782) * b(k,167) - b(k,223) = b(k,223) - lu(k,783) * b(k,167) - b(k,225) = b(k,225) - lu(k,784) * b(k,167) - b(k,226) = b(k,226) - lu(k,785) * b(k,167) - b(k,227) = b(k,227) - lu(k,786) * b(k,167) - b(k,229) = b(k,229) - lu(k,787) * b(k,167) - b(k,182) = b(k,182) - lu(k,790) * b(k,168) - b(k,192) = b(k,192) - lu(k,791) * b(k,168) - b(k,215) = b(k,215) - lu(k,792) * b(k,168) - b(k,217) = b(k,217) - lu(k,793) * b(k,168) - b(k,220) = b(k,220) - lu(k,794) * b(k,168) - b(k,221) = b(k,221) - lu(k,795) * b(k,168) - b(k,222) = b(k,222) - lu(k,796) * b(k,168) - b(k,224) = b(k,224) - lu(k,797) * b(k,168) - b(k,229) = b(k,229) - lu(k,798) * b(k,168) - b(k,215) = b(k,215) - lu(k,800) * b(k,169) - b(k,217) = b(k,217) - lu(k,801) * b(k,169) - b(k,224) = b(k,224) - lu(k,802) * b(k,169) - b(k,195) = b(k,195) - lu(k,804) * b(k,170) - b(k,227) = b(k,227) - lu(k,805) * b(k,170) - b(k,211) = b(k,211) - lu(k,807) * b(k,171) - b(k,213) = b(k,213) - lu(k,808) * b(k,171) - b(k,216) = b(k,216) - lu(k,809) * b(k,171) - b(k,217) = b(k,217) - lu(k,810) * b(k,171) - b(k,226) = b(k,226) - lu(k,811) * b(k,171) - b(k,227) = b(k,227) - lu(k,812) * b(k,171) - b(k,229) = b(k,229) - lu(k,813) * b(k,171) - b(k,217) = b(k,217) - lu(k,816) * b(k,172) - b(k,218) = b(k,218) - lu(k,817) * b(k,172) - b(k,223) = b(k,223) - lu(k,818) * b(k,172) - b(k,225) = b(k,225) - lu(k,819) * b(k,172) - b(k,227) = b(k,227) - lu(k,820) * b(k,172) - b(k,229) = b(k,229) - lu(k,821) * b(k,172) - b(k,192) = b(k,192) - lu(k,826) * b(k,173) - b(k,215) = b(k,215) - lu(k,827) * b(k,173) - b(k,217) = b(k,217) - lu(k,828) * b(k,173) - b(k,220) = b(k,220) - lu(k,829) * b(k,173) - b(k,221) = b(k,221) - lu(k,830) * b(k,173) - b(k,222) = b(k,222) - lu(k,831) * b(k,173) - b(k,224) = b(k,224) - lu(k,832) * b(k,173) - b(k,183) = b(k,183) - lu(k,837) * b(k,174) - b(k,188) = b(k,188) - lu(k,838) * b(k,174) - b(k,195) = b(k,195) - lu(k,839) * b(k,174) - b(k,200) = b(k,200) - lu(k,840) * b(k,174) - b(k,201) = b(k,201) - lu(k,841) * b(k,174) - b(k,204) = b(k,204) - lu(k,842) * b(k,174) - b(k,205) = b(k,205) - lu(k,843) * b(k,174) - b(k,207) = b(k,207) - lu(k,844) * b(k,174) - b(k,209) = b(k,209) - lu(k,845) * b(k,174) - b(k,215) = b(k,215) - lu(k,846) * b(k,174) - b(k,217) = b(k,217) - lu(k,847) * b(k,174) - b(k,219) = b(k,219) - lu(k,848) * b(k,174) - b(k,220) = b(k,220) - lu(k,849) * b(k,174) - b(k,224) = b(k,224) - lu(k,850) * b(k,174) - b(k,228) = b(k,228) - lu(k,851) * b(k,174) - b(k,203) = b(k,203) - lu(k,854) * b(k,175) - b(k,217) = b(k,217) - lu(k,855) * b(k,175) - b(k,224) = b(k,224) - lu(k,856) * b(k,175) - b(k,227) = b(k,227) - lu(k,857) * b(k,175) - b(k,229) = b(k,229) - lu(k,858) * b(k,175) - b(k,202) = b(k,202) - lu(k,860) * b(k,176) - b(k,209) = b(k,209) - lu(k,861) * b(k,176) - b(k,215) = b(k,215) - lu(k,862) * b(k,176) - b(k,217) = b(k,217) - lu(k,863) * b(k,176) - b(k,222) = b(k,222) - lu(k,864) * b(k,176) - b(k,210) = b(k,210) - lu(k,867) * b(k,177) - b(k,212) = b(k,212) - lu(k,868) * b(k,177) - b(k,213) = b(k,213) - lu(k,869) * b(k,177) - b(k,214) = b(k,214) - lu(k,870) * b(k,177) - b(k,217) = b(k,217) - lu(k,871) * b(k,177) - b(k,219) = b(k,219) - lu(k,872) * b(k,177) - b(k,220) = b(k,220) - lu(k,873) * b(k,177) - b(k,229) = b(k,229) - lu(k,874) * b(k,177) - b(k,186) = b(k,186) - lu(k,876) * b(k,178) - b(k,195) = b(k,195) - lu(k,877) * b(k,178) - b(k,202) = b(k,202) - lu(k,878) * b(k,178) - b(k,217) = b(k,217) - lu(k,879) * b(k,178) - b(k,220) = b(k,220) - lu(k,880) * b(k,178) - b(k,221) = b(k,221) - lu(k,881) * b(k,178) - b(k,222) = b(k,222) - lu(k,882) * b(k,178) - b(k,224) = b(k,224) - lu(k,883) * b(k,178) - end do - end subroutine lu_slv03 - subroutine lu_slv04( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,182) = b(k,182) - lu(k,890) * b(k,179) - b(k,192) = b(k,192) - lu(k,891) * b(k,179) - b(k,209) = b(k,209) - lu(k,892) * b(k,179) - b(k,215) = b(k,215) - lu(k,893) * b(k,179) - b(k,217) = b(k,217) - lu(k,894) * b(k,179) - b(k,220) = b(k,220) - lu(k,895) * b(k,179) - b(k,221) = b(k,221) - lu(k,896) * b(k,179) - b(k,222) = b(k,222) - lu(k,897) * b(k,179) - b(k,224) = b(k,224) - lu(k,898) * b(k,179) - b(k,214) = b(k,214) - lu(k,902) * b(k,180) - b(k,217) = b(k,217) - lu(k,903) * b(k,180) - b(k,218) = b(k,218) - lu(k,904) * b(k,180) - b(k,219) = b(k,219) - lu(k,905) * b(k,180) - b(k,222) = b(k,222) - lu(k,906) * b(k,180) - b(k,223) = b(k,223) - lu(k,907) * b(k,180) - b(k,225) = b(k,225) - lu(k,908) * b(k,180) - b(k,227) = b(k,227) - lu(k,909) * b(k,180) - b(k,229) = b(k,229) - lu(k,910) * b(k,180) - b(k,182) = b(k,182) - lu(k,915) * b(k,181) - b(k,185) = b(k,185) - lu(k,916) * b(k,181) - b(k,214) = b(k,214) - lu(k,917) * b(k,181) - b(k,215) = b(k,215) - lu(k,918) * b(k,181) - b(k,217) = b(k,217) - lu(k,919) * b(k,181) - b(k,220) = b(k,220) - lu(k,920) * b(k,181) - b(k,221) = b(k,221) - lu(k,921) * b(k,181) - b(k,222) = b(k,222) - lu(k,922) * b(k,181) - b(k,224) = b(k,224) - lu(k,923) * b(k,181) - b(k,196) = b(k,196) - lu(k,925) * b(k,182) - b(k,209) = b(k,209) - lu(k,926) * b(k,182) - b(k,217) = b(k,217) - lu(k,927) * b(k,182) - b(k,220) = b(k,220) - lu(k,928) * b(k,182) - b(k,229) = b(k,229) - lu(k,929) * b(k,182) - b(k,195) = b(k,195) - lu(k,932) * b(k,183) - b(k,217) = b(k,217) - lu(k,933) * b(k,183) - b(k,224) = b(k,224) - lu(k,934) * b(k,183) - b(k,227) = b(k,227) - lu(k,935) * b(k,183) - b(k,229) = b(k,229) - lu(k,936) * b(k,183) - b(k,185) = b(k,185) - lu(k,951) * b(k,184) - b(k,186) = b(k,186) - lu(k,952) * b(k,184) - b(k,189) = b(k,189) - lu(k,953) * b(k,184) - b(k,190) = b(k,190) - lu(k,954) * b(k,184) - b(k,192) = b(k,192) - lu(k,955) * b(k,184) - b(k,195) = b(k,195) - lu(k,956) * b(k,184) - b(k,196) = b(k,196) - lu(k,957) * b(k,184) - b(k,202) = b(k,202) - lu(k,958) * b(k,184) - b(k,209) = b(k,209) - lu(k,959) * b(k,184) - b(k,214) = b(k,214) - lu(k,960) * b(k,184) - b(k,215) = b(k,215) - lu(k,961) * b(k,184) - b(k,217) = b(k,217) - lu(k,962) * b(k,184) - b(k,219) = b(k,219) - lu(k,963) * b(k,184) - b(k,220) = b(k,220) - lu(k,964) * b(k,184) - b(k,221) = b(k,221) - lu(k,965) * b(k,184) - b(k,222) = b(k,222) - lu(k,966) * b(k,184) - b(k,224) = b(k,224) - lu(k,967) * b(k,184) - b(k,227) = b(k,227) - lu(k,968) * b(k,184) - b(k,228) = b(k,228) - lu(k,969) * b(k,184) - b(k,229) = b(k,229) - lu(k,970) * b(k,184) - b(k,189) = b(k,189) - lu(k,972) * b(k,185) - b(k,190) = b(k,190) - lu(k,973) * b(k,185) - b(k,194) = b(k,194) - lu(k,974) * b(k,185) - b(k,195) = b(k,195) - lu(k,975) * b(k,185) - b(k,217) = b(k,217) - lu(k,976) * b(k,185) - b(k,219) = b(k,219) - lu(k,977) * b(k,185) - b(k,224) = b(k,224) - lu(k,978) * b(k,185) - b(k,195) = b(k,195) - lu(k,982) * b(k,186) - b(k,217) = b(k,217) - lu(k,983) * b(k,186) - b(k,224) = b(k,224) - lu(k,984) * b(k,186) - b(k,227) = b(k,227) - lu(k,985) * b(k,186) - b(k,189) = b(k,189) - lu(k,1002) * b(k,187) - b(k,190) = b(k,190) - lu(k,1003) * b(k,187) - b(k,192) = b(k,192) - lu(k,1004) * b(k,187) - b(k,194) = b(k,194) - lu(k,1005) * b(k,187) - b(k,195) = b(k,195) - lu(k,1006) * b(k,187) - b(k,196) = b(k,196) - lu(k,1007) * b(k,187) - b(k,202) = b(k,202) - lu(k,1008) * b(k,187) - b(k,209) = b(k,209) - lu(k,1009) * b(k,187) - b(k,214) = b(k,214) - lu(k,1010) * b(k,187) - b(k,215) = b(k,215) - lu(k,1011) * b(k,187) - b(k,217) = b(k,217) - lu(k,1012) * b(k,187) - b(k,219) = b(k,219) - lu(k,1013) * b(k,187) - b(k,220) = b(k,220) - lu(k,1014) * b(k,187) - b(k,221) = b(k,221) - lu(k,1015) * b(k,187) - b(k,222) = b(k,222) - lu(k,1016) * b(k,187) - b(k,224) = b(k,224) - lu(k,1017) * b(k,187) - b(k,227) = b(k,227) - lu(k,1018) * b(k,187) - b(k,228) = b(k,228) - lu(k,1019) * b(k,187) - b(k,229) = b(k,229) - lu(k,1020) * b(k,187) - b(k,192) = b(k,192) - lu(k,1027) * b(k,188) - b(k,195) = b(k,195) - lu(k,1028) * b(k,188) - b(k,197) = b(k,197) - lu(k,1029) * b(k,188) - b(k,202) = b(k,202) - lu(k,1030) * b(k,188) - b(k,209) = b(k,209) - lu(k,1031) * b(k,188) - b(k,212) = b(k,212) - lu(k,1032) * b(k,188) - b(k,215) = b(k,215) - lu(k,1033) * b(k,188) - b(k,217) = b(k,217) - lu(k,1034) * b(k,188) - b(k,219) = b(k,219) - lu(k,1035) * b(k,188) - b(k,220) = b(k,220) - lu(k,1036) * b(k,188) - b(k,221) = b(k,221) - lu(k,1037) * b(k,188) - b(k,222) = b(k,222) - lu(k,1038) * b(k,188) - b(k,224) = b(k,224) - lu(k,1039) * b(k,188) - b(k,227) = b(k,227) - lu(k,1040) * b(k,188) - b(k,228) = b(k,228) - lu(k,1041) * b(k,188) - b(k,229) = b(k,229) - lu(k,1042) * b(k,188) - b(k,190) = b(k,190) - lu(k,1048) * b(k,189) - b(k,194) = b(k,194) - lu(k,1049) * b(k,189) - b(k,195) = b(k,195) - lu(k,1050) * b(k,189) - b(k,214) = b(k,214) - lu(k,1051) * b(k,189) - b(k,215) = b(k,215) - lu(k,1052) * b(k,189) - b(k,217) = b(k,217) - lu(k,1053) * b(k,189) - b(k,219) = b(k,219) - lu(k,1054) * b(k,189) - b(k,220) = b(k,220) - lu(k,1055) * b(k,189) - b(k,221) = b(k,221) - lu(k,1056) * b(k,189) - b(k,222) = b(k,222) - lu(k,1057) * b(k,189) - b(k,224) = b(k,224) - lu(k,1058) * b(k,189) - b(k,195) = b(k,195) - lu(k,1062) * b(k,190) - b(k,196) = b(k,196) - lu(k,1063) * b(k,190) - b(k,209) = b(k,209) - lu(k,1064) * b(k,190) - b(k,215) = b(k,215) - lu(k,1065) * b(k,190) - b(k,217) = b(k,217) - lu(k,1066) * b(k,190) - b(k,220) = b(k,220) - lu(k,1067) * b(k,190) - b(k,224) = b(k,224) - lu(k,1068) * b(k,190) - b(k,227) = b(k,227) - lu(k,1069) * b(k,190) - b(k,229) = b(k,229) - lu(k,1070) * b(k,190) - b(k,195) = b(k,195) - lu(k,1076) * b(k,191) - b(k,202) = b(k,202) - lu(k,1077) * b(k,191) - b(k,209) = b(k,209) - lu(k,1078) * b(k,191) - b(k,214) = b(k,214) - lu(k,1079) * b(k,191) - b(k,215) = b(k,215) - lu(k,1080) * b(k,191) - b(k,217) = b(k,217) - lu(k,1081) * b(k,191) - b(k,220) = b(k,220) - lu(k,1082) * b(k,191) - b(k,221) = b(k,221) - lu(k,1083) * b(k,191) - b(k,222) = b(k,222) - lu(k,1084) * b(k,191) - b(k,224) = b(k,224) - lu(k,1085) * b(k,191) - b(k,227) = b(k,227) - lu(k,1086) * b(k,191) - b(k,195) = b(k,195) - lu(k,1088) * b(k,192) - b(k,209) = b(k,209) - lu(k,1089) * b(k,192) - b(k,214) = b(k,214) - lu(k,1090) * b(k,192) - b(k,217) = b(k,217) - lu(k,1091) * b(k,192) - b(k,219) = b(k,219) - lu(k,1092) * b(k,192) - b(k,220) = b(k,220) - lu(k,1093) * b(k,192) - b(k,224) = b(k,224) - lu(k,1094) * b(k,192) - b(k,229) = b(k,229) - lu(k,1095) * b(k,192) - b(k,195) = b(k,195) - lu(k,1099) * b(k,193) - b(k,215) = b(k,215) - lu(k,1100) * b(k,193) - b(k,217) = b(k,217) - lu(k,1101) * b(k,193) - b(k,224) = b(k,224) - lu(k,1102) * b(k,193) - b(k,227) = b(k,227) - lu(k,1103) * b(k,193) - b(k,195) = b(k,195) - lu(k,1112) * b(k,194) - b(k,196) = b(k,196) - lu(k,1113) * b(k,194) - b(k,209) = b(k,209) - lu(k,1114) * b(k,194) - b(k,214) = b(k,214) - lu(k,1115) * b(k,194) - b(k,215) = b(k,215) - lu(k,1116) * b(k,194) - b(k,217) = b(k,217) - lu(k,1117) * b(k,194) - b(k,220) = b(k,220) - lu(k,1118) * b(k,194) - b(k,221) = b(k,221) - lu(k,1119) * b(k,194) - b(k,222) = b(k,222) - lu(k,1120) * b(k,194) - b(k,224) = b(k,224) - lu(k,1121) * b(k,194) - b(k,227) = b(k,227) - lu(k,1122) * b(k,194) - b(k,229) = b(k,229) - lu(k,1123) * b(k,194) - b(k,217) = b(k,217) - lu(k,1126) * b(k,195) - b(k,224) = b(k,224) - lu(k,1127) * b(k,195) - b(k,227) = b(k,227) - lu(k,1128) * b(k,195) - b(k,197) = b(k,197) - lu(k,1132) * b(k,196) - b(k,202) = b(k,202) - lu(k,1133) * b(k,196) - b(k,209) = b(k,209) - lu(k,1134) * b(k,196) - b(k,215) = b(k,215) - lu(k,1135) * b(k,196) - b(k,217) = b(k,217) - lu(k,1136) * b(k,196) - b(k,220) = b(k,220) - lu(k,1137) * b(k,196) - b(k,221) = b(k,221) - lu(k,1138) * b(k,196) - b(k,222) = b(k,222) - lu(k,1139) * b(k,196) - b(k,224) = b(k,224) - lu(k,1140) * b(k,196) - b(k,229) = b(k,229) - lu(k,1141) * b(k,196) - b(k,202) = b(k,202) - lu(k,1143) * b(k,197) - b(k,209) = b(k,209) - lu(k,1144) * b(k,197) - b(k,215) = b(k,215) - lu(k,1145) * b(k,197) - b(k,217) = b(k,217) - lu(k,1146) * b(k,197) - b(k,224) = b(k,224) - lu(k,1147) * b(k,197) - b(k,202) = b(k,202) - lu(k,1156) * b(k,198) - b(k,209) = b(k,209) - lu(k,1157) * b(k,198) - b(k,214) = b(k,214) - lu(k,1158) * b(k,198) - b(k,215) = b(k,215) - lu(k,1159) * b(k,198) - b(k,217) = b(k,217) - lu(k,1160) * b(k,198) - b(k,219) = b(k,219) - lu(k,1161) * b(k,198) - b(k,220) = b(k,220) - lu(k,1162) * b(k,198) - b(k,221) = b(k,221) - lu(k,1163) * b(k,198) - b(k,222) = b(k,222) - lu(k,1164) * b(k,198) - b(k,224) = b(k,224) - lu(k,1165) * b(k,198) - b(k,227) = b(k,227) - lu(k,1166) * b(k,198) - b(k,229) = b(k,229) - lu(k,1167) * b(k,198) - b(k,202) = b(k,202) - lu(k,1176) * b(k,199) - b(k,209) = b(k,209) - lu(k,1177) * b(k,199) - b(k,215) = b(k,215) - lu(k,1178) * b(k,199) - b(k,217) = b(k,217) - lu(k,1179) * b(k,199) - b(k,219) = b(k,219) - lu(k,1180) * b(k,199) - b(k,220) = b(k,220) - lu(k,1181) * b(k,199) - b(k,221) = b(k,221) - lu(k,1182) * b(k,199) - b(k,222) = b(k,222) - lu(k,1183) * b(k,199) - b(k,224) = b(k,224) - lu(k,1184) * b(k,199) - b(k,227) = b(k,227) - lu(k,1185) * b(k,199) - b(k,201) = b(k,201) - lu(k,1196) * b(k,200) - b(k,202) = b(k,202) - lu(k,1197) * b(k,200) - b(k,207) = b(k,207) - lu(k,1198) * b(k,200) - b(k,209) = b(k,209) - lu(k,1199) * b(k,200) - b(k,214) = b(k,214) - lu(k,1200) * b(k,200) - b(k,215) = b(k,215) - lu(k,1201) * b(k,200) - b(k,217) = b(k,217) - lu(k,1202) * b(k,200) - b(k,219) = b(k,219) - lu(k,1203) * b(k,200) - b(k,220) = b(k,220) - lu(k,1204) * b(k,200) - b(k,221) = b(k,221) - lu(k,1205) * b(k,200) - b(k,222) = b(k,222) - lu(k,1206) * b(k,200) - b(k,224) = b(k,224) - lu(k,1207) * b(k,200) - b(k,227) = b(k,227) - lu(k,1208) * b(k,200) - end do - end subroutine lu_slv04 - subroutine lu_slv05( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,202) = b(k,202) - lu(k,1212) * b(k,201) - b(k,206) = b(k,206) - lu(k,1213) * b(k,201) - b(k,208) = b(k,208) - lu(k,1214) * b(k,201) - b(k,209) = b(k,209) - lu(k,1215) * b(k,201) - b(k,215) = b(k,215) - lu(k,1216) * b(k,201) - b(k,217) = b(k,217) - lu(k,1217) * b(k,201) - b(k,224) = b(k,224) - lu(k,1218) * b(k,201) - b(k,227) = b(k,227) - lu(k,1219) * b(k,201) - b(k,228) = b(k,228) - lu(k,1220) * b(k,201) - b(k,229) = b(k,229) - lu(k,1221) * b(k,201) - b(k,209) = b(k,209) - lu(k,1224) * b(k,202) - b(k,214) = b(k,214) - lu(k,1225) * b(k,202) - b(k,217) = b(k,217) - lu(k,1226) * b(k,202) - b(k,219) = b(k,219) - lu(k,1227) * b(k,202) - b(k,224) = b(k,224) - lu(k,1228) * b(k,202) - b(k,227) = b(k,227) - lu(k,1229) * b(k,202) - b(k,229) = b(k,229) - lu(k,1230) * b(k,202) - b(k,211) = b(k,211) - lu(k,1235) * b(k,203) - b(k,213) = b(k,213) - lu(k,1236) * b(k,203) - b(k,217) = b(k,217) - lu(k,1237) * b(k,203) - b(k,218) = b(k,218) - lu(k,1238) * b(k,203) - b(k,221) = b(k,221) - lu(k,1239) * b(k,203) - b(k,222) = b(k,222) - lu(k,1240) * b(k,203) - b(k,223) = b(k,223) - lu(k,1241) * b(k,203) - b(k,224) = b(k,224) - lu(k,1242) * b(k,203) - b(k,226) = b(k,226) - lu(k,1243) * b(k,203) - b(k,227) = b(k,227) - lu(k,1244) * b(k,203) - b(k,228) = b(k,228) - lu(k,1245) * b(k,203) - b(k,229) = b(k,229) - lu(k,1246) * b(k,203) - b(k,206) = b(k,206) - lu(k,1259) * b(k,204) - b(k,207) = b(k,207) - lu(k,1260) * b(k,204) - b(k,208) = b(k,208) - lu(k,1261) * b(k,204) - b(k,209) = b(k,209) - lu(k,1262) * b(k,204) - b(k,214) = b(k,214) - lu(k,1263) * b(k,204) - b(k,215) = b(k,215) - lu(k,1264) * b(k,204) - b(k,217) = b(k,217) - lu(k,1265) * b(k,204) - b(k,219) = b(k,219) - lu(k,1266) * b(k,204) - b(k,220) = b(k,220) - lu(k,1267) * b(k,204) - b(k,221) = b(k,221) - lu(k,1268) * b(k,204) - b(k,222) = b(k,222) - lu(k,1269) * b(k,204) - b(k,224) = b(k,224) - lu(k,1270) * b(k,204) - b(k,227) = b(k,227) - lu(k,1271) * b(k,204) - b(k,228) = b(k,228) - lu(k,1272) * b(k,204) - b(k,229) = b(k,229) - lu(k,1273) * b(k,204) - b(k,206) = b(k,206) - lu(k,1291) * b(k,205) - b(k,207) = b(k,207) - lu(k,1292) * b(k,205) - b(k,208) = b(k,208) - lu(k,1293) * b(k,205) - b(k,209) = b(k,209) - lu(k,1294) * b(k,205) - b(k,214) = b(k,214) - lu(k,1295) * b(k,205) - b(k,215) = b(k,215) - lu(k,1296) * b(k,205) - b(k,217) = b(k,217) - lu(k,1297) * b(k,205) - b(k,219) = b(k,219) - lu(k,1298) * b(k,205) - b(k,220) = b(k,220) - lu(k,1299) * b(k,205) - b(k,221) = b(k,221) - lu(k,1300) * b(k,205) - b(k,222) = b(k,222) - lu(k,1301) * b(k,205) - b(k,224) = b(k,224) - lu(k,1302) * b(k,205) - b(k,227) = b(k,227) - lu(k,1303) * b(k,205) - b(k,228) = b(k,228) - lu(k,1304) * b(k,205) - b(k,229) = b(k,229) - lu(k,1305) * b(k,205) - b(k,208) = b(k,208) - lu(k,1314) * b(k,206) - b(k,209) = b(k,209) - lu(k,1315) * b(k,206) - b(k,214) = b(k,214) - lu(k,1316) * b(k,206) - b(k,215) = b(k,215) - lu(k,1317) * b(k,206) - b(k,217) = b(k,217) - lu(k,1318) * b(k,206) - b(k,219) = b(k,219) - lu(k,1319) * b(k,206) - b(k,220) = b(k,220) - lu(k,1320) * b(k,206) - b(k,221) = b(k,221) - lu(k,1321) * b(k,206) - b(k,222) = b(k,222) - lu(k,1322) * b(k,206) - b(k,224) = b(k,224) - lu(k,1323) * b(k,206) - b(k,227) = b(k,227) - lu(k,1324) * b(k,206) - b(k,229) = b(k,229) - lu(k,1325) * b(k,206) - b(k,208) = b(k,208) - lu(k,1335) * b(k,207) - b(k,209) = b(k,209) - lu(k,1336) * b(k,207) - b(k,212) = b(k,212) - lu(k,1337) * b(k,207) - b(k,214) = b(k,214) - lu(k,1338) * b(k,207) - b(k,215) = b(k,215) - lu(k,1339) * b(k,207) - b(k,217) = b(k,217) - lu(k,1340) * b(k,207) - b(k,219) = b(k,219) - lu(k,1341) * b(k,207) - b(k,220) = b(k,220) - lu(k,1342) * b(k,207) - b(k,221) = b(k,221) - lu(k,1343) * b(k,207) - b(k,222) = b(k,222) - lu(k,1344) * b(k,207) - b(k,224) = b(k,224) - lu(k,1345) * b(k,207) - b(k,227) = b(k,227) - lu(k,1346) * b(k,207) - b(k,228) = b(k,228) - lu(k,1347) * b(k,207) - b(k,229) = b(k,229) - lu(k,1348) * b(k,207) - b(k,209) = b(k,209) - lu(k,1357) * b(k,208) - b(k,214) = b(k,214) - lu(k,1358) * b(k,208) - b(k,215) = b(k,215) - lu(k,1359) * b(k,208) - b(k,217) = b(k,217) - lu(k,1360) * b(k,208) - b(k,219) = b(k,219) - lu(k,1361) * b(k,208) - b(k,220) = b(k,220) - lu(k,1362) * b(k,208) - b(k,221) = b(k,221) - lu(k,1363) * b(k,208) - b(k,222) = b(k,222) - lu(k,1364) * b(k,208) - b(k,224) = b(k,224) - lu(k,1365) * b(k,208) - b(k,227) = b(k,227) - lu(k,1366) * b(k,208) - b(k,228) = b(k,228) - lu(k,1367) * b(k,208) - b(k,229) = b(k,229) - lu(k,1368) * b(k,208) - b(k,212) = b(k,212) - lu(k,1389) * b(k,209) - b(k,214) = b(k,214) - lu(k,1390) * b(k,209) - b(k,215) = b(k,215) - lu(k,1391) * b(k,209) - b(k,217) = b(k,217) - lu(k,1392) * b(k,209) - b(k,219) = b(k,219) - lu(k,1393) * b(k,209) - b(k,220) = b(k,220) - lu(k,1394) * b(k,209) - b(k,221) = b(k,221) - lu(k,1395) * b(k,209) - b(k,222) = b(k,222) - lu(k,1396) * b(k,209) - b(k,224) = b(k,224) - lu(k,1397) * b(k,209) - b(k,227) = b(k,227) - lu(k,1398) * b(k,209) - b(k,228) = b(k,228) - lu(k,1399) * b(k,209) - b(k,229) = b(k,229) - lu(k,1400) * b(k,209) - b(k,212) = b(k,212) - lu(k,1404) * b(k,210) - b(k,213) = b(k,213) - lu(k,1405) * b(k,210) - b(k,214) = b(k,214) - lu(k,1406) * b(k,210) - b(k,216) = b(k,216) - lu(k,1407) * b(k,210) - b(k,217) = b(k,217) - lu(k,1408) * b(k,210) - b(k,219) = b(k,219) - lu(k,1409) * b(k,210) - b(k,220) = b(k,220) - lu(k,1410) * b(k,210) - b(k,223) = b(k,223) - lu(k,1411) * b(k,210) - b(k,225) = b(k,225) - lu(k,1412) * b(k,210) - b(k,227) = b(k,227) - lu(k,1413) * b(k,210) - b(k,229) = b(k,229) - lu(k,1414) * b(k,210) - b(k,213) = b(k,213) - lu(k,1418) * b(k,211) - b(k,215) = b(k,215) - lu(k,1419) * b(k,211) - b(k,216) = b(k,216) - lu(k,1420) * b(k,211) - b(k,217) = b(k,217) - lu(k,1421) * b(k,211) - b(k,224) = b(k,224) - lu(k,1422) * b(k,211) - b(k,226) = b(k,226) - lu(k,1423) * b(k,211) - b(k,227) = b(k,227) - lu(k,1424) * b(k,211) - b(k,228) = b(k,228) - lu(k,1425) * b(k,211) - b(k,229) = b(k,229) - lu(k,1426) * b(k,211) - b(k,213) = b(k,213) - lu(k,1433) * b(k,212) - b(k,214) = b(k,214) - lu(k,1434) * b(k,212) - b(k,215) = b(k,215) - lu(k,1435) * b(k,212) - b(k,216) = b(k,216) - lu(k,1436) * b(k,212) - b(k,217) = b(k,217) - lu(k,1437) * b(k,212) - b(k,219) = b(k,219) - lu(k,1438) * b(k,212) - b(k,220) = b(k,220) - lu(k,1439) * b(k,212) - b(k,223) = b(k,223) - lu(k,1440) * b(k,212) - b(k,224) = b(k,224) - lu(k,1441) * b(k,212) - b(k,225) = b(k,225) - lu(k,1442) * b(k,212) - b(k,227) = b(k,227) - lu(k,1443) * b(k,212) - b(k,229) = b(k,229) - lu(k,1444) * b(k,212) - b(k,214) = b(k,214) - lu(k,1448) * b(k,213) - b(k,215) = b(k,215) - lu(k,1449) * b(k,213) - b(k,216) = b(k,216) - lu(k,1450) * b(k,213) - b(k,217) = b(k,217) - lu(k,1451) * b(k,213) - b(k,219) = b(k,219) - lu(k,1452) * b(k,213) - b(k,220) = b(k,220) - lu(k,1453) * b(k,213) - b(k,223) = b(k,223) - lu(k,1454) * b(k,213) - b(k,224) = b(k,224) - lu(k,1455) * b(k,213) - b(k,225) = b(k,225) - lu(k,1456) * b(k,213) - b(k,227) = b(k,227) - lu(k,1457) * b(k,213) - b(k,228) = b(k,228) - lu(k,1458) * b(k,213) - b(k,229) = b(k,229) - lu(k,1459) * b(k,213) - b(k,215) = b(k,215) - lu(k,1466) * b(k,214) - b(k,216) = b(k,216) - lu(k,1467) * b(k,214) - b(k,217) = b(k,217) - lu(k,1468) * b(k,214) - b(k,219) = b(k,219) - lu(k,1469) * b(k,214) - b(k,220) = b(k,220) - lu(k,1470) * b(k,214) - b(k,222) = b(k,222) - lu(k,1471) * b(k,214) - b(k,223) = b(k,223) - lu(k,1472) * b(k,214) - b(k,224) = b(k,224) - lu(k,1473) * b(k,214) - b(k,225) = b(k,225) - lu(k,1474) * b(k,214) - b(k,227) = b(k,227) - lu(k,1475) * b(k,214) - b(k,228) = b(k,228) - lu(k,1476) * b(k,214) - b(k,229) = b(k,229) - lu(k,1477) * b(k,214) - b(k,216) = b(k,216) - lu(k,1488) * b(k,215) - b(k,217) = b(k,217) - lu(k,1489) * b(k,215) - b(k,219) = b(k,219) - lu(k,1490) * b(k,215) - b(k,220) = b(k,220) - lu(k,1491) * b(k,215) - b(k,221) = b(k,221) - lu(k,1492) * b(k,215) - b(k,222) = b(k,222) - lu(k,1493) * b(k,215) - b(k,223) = b(k,223) - lu(k,1494) * b(k,215) - b(k,224) = b(k,224) - lu(k,1495) * b(k,215) - b(k,225) = b(k,225) - lu(k,1496) * b(k,215) - b(k,226) = b(k,226) - lu(k,1497) * b(k,215) - b(k,227) = b(k,227) - lu(k,1498) * b(k,215) - b(k,228) = b(k,228) - lu(k,1499) * b(k,215) - b(k,229) = b(k,229) - lu(k,1500) * b(k,215) - b(k,217) = b(k,217) - lu(k,1529) * b(k,216) - b(k,218) = b(k,218) - lu(k,1530) * b(k,216) - b(k,219) = b(k,219) - lu(k,1531) * b(k,216) - b(k,220) = b(k,220) - lu(k,1532) * b(k,216) - b(k,221) = b(k,221) - lu(k,1533) * b(k,216) - b(k,222) = b(k,222) - lu(k,1534) * b(k,216) - b(k,223) = b(k,223) - lu(k,1535) * b(k,216) - b(k,224) = b(k,224) - lu(k,1536) * b(k,216) - b(k,225) = b(k,225) - lu(k,1537) * b(k,216) - b(k,226) = b(k,226) - lu(k,1538) * b(k,216) - b(k,227) = b(k,227) - lu(k,1539) * b(k,216) - b(k,228) = b(k,228) - lu(k,1540) * b(k,216) - b(k,229) = b(k,229) - lu(k,1541) * b(k,216) - b(k,218) = b(k,218) - lu(k,1694) * b(k,217) - b(k,219) = b(k,219) - lu(k,1695) * b(k,217) - b(k,220) = b(k,220) - lu(k,1696) * b(k,217) - b(k,221) = b(k,221) - lu(k,1697) * b(k,217) - b(k,222) = b(k,222) - lu(k,1698) * b(k,217) - b(k,223) = b(k,223) - lu(k,1699) * b(k,217) - b(k,224) = b(k,224) - lu(k,1700) * b(k,217) - b(k,225) = b(k,225) - lu(k,1701) * b(k,217) - b(k,226) = b(k,226) - lu(k,1702) * b(k,217) - b(k,227) = b(k,227) - lu(k,1703) * b(k,217) - b(k,228) = b(k,228) - lu(k,1704) * b(k,217) - b(k,229) = b(k,229) - lu(k,1705) * b(k,217) - end do - end subroutine lu_slv05 - subroutine lu_slv06( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,219) = b(k,219) - lu(k,1721) * b(k,218) - b(k,220) = b(k,220) - lu(k,1722) * b(k,218) - b(k,221) = b(k,221) - lu(k,1723) * b(k,218) - b(k,222) = b(k,222) - lu(k,1724) * b(k,218) - b(k,223) = b(k,223) - lu(k,1725) * b(k,218) - b(k,224) = b(k,224) - lu(k,1726) * b(k,218) - b(k,225) = b(k,225) - lu(k,1727) * b(k,218) - b(k,226) = b(k,226) - lu(k,1728) * b(k,218) - b(k,227) = b(k,227) - lu(k,1729) * b(k,218) - b(k,228) = b(k,228) - lu(k,1730) * b(k,218) - b(k,229) = b(k,229) - lu(k,1731) * b(k,218) - b(k,220) = b(k,220) - lu(k,1779) * b(k,219) - b(k,221) = b(k,221) - lu(k,1780) * b(k,219) - b(k,222) = b(k,222) - lu(k,1781) * b(k,219) - b(k,223) = b(k,223) - lu(k,1782) * b(k,219) - b(k,224) = b(k,224) - lu(k,1783) * b(k,219) - b(k,225) = b(k,225) - lu(k,1784) * b(k,219) - b(k,226) = b(k,226) - lu(k,1785) * b(k,219) - b(k,227) = b(k,227) - lu(k,1786) * b(k,219) - b(k,228) = b(k,228) - lu(k,1787) * b(k,219) - b(k,229) = b(k,229) - lu(k,1788) * b(k,219) - b(k,221) = b(k,221) - lu(k,1832) * b(k,220) - b(k,222) = b(k,222) - lu(k,1833) * b(k,220) - b(k,223) = b(k,223) - lu(k,1834) * b(k,220) - b(k,224) = b(k,224) - lu(k,1835) * b(k,220) - b(k,225) = b(k,225) - lu(k,1836) * b(k,220) - b(k,226) = b(k,226) - lu(k,1837) * b(k,220) - b(k,227) = b(k,227) - lu(k,1838) * b(k,220) - b(k,228) = b(k,228) - lu(k,1839) * b(k,220) - b(k,229) = b(k,229) - lu(k,1840) * b(k,220) - b(k,222) = b(k,222) - lu(k,1925) * b(k,221) - b(k,223) = b(k,223) - lu(k,1926) * b(k,221) - b(k,224) = b(k,224) - lu(k,1927) * b(k,221) - b(k,225) = b(k,225) - lu(k,1928) * b(k,221) - b(k,226) = b(k,226) - lu(k,1929) * b(k,221) - b(k,227) = b(k,227) - lu(k,1930) * b(k,221) - b(k,228) = b(k,228) - lu(k,1931) * b(k,221) - b(k,229) = b(k,229) - lu(k,1932) * b(k,221) - b(k,223) = b(k,223) - lu(k,1970) * b(k,222) - b(k,224) = b(k,224) - lu(k,1971) * b(k,222) - b(k,225) = b(k,225) - lu(k,1972) * b(k,222) - b(k,226) = b(k,226) - lu(k,1973) * b(k,222) - b(k,227) = b(k,227) - lu(k,1974) * b(k,222) - b(k,228) = b(k,228) - lu(k,1975) * b(k,222) - b(k,229) = b(k,229) - lu(k,1976) * b(k,222) - b(k,224) = b(k,224) - lu(k,2010) * b(k,223) - b(k,225) = b(k,225) - lu(k,2011) * b(k,223) - b(k,226) = b(k,226) - lu(k,2012) * b(k,223) - b(k,227) = b(k,227) - lu(k,2013) * b(k,223) - b(k,228) = b(k,228) - lu(k,2014) * b(k,223) - b(k,229) = b(k,229) - lu(k,2015) * b(k,223) - b(k,225) = b(k,225) - lu(k,2118) * b(k,224) - b(k,226) = b(k,226) - lu(k,2119) * b(k,224) - b(k,227) = b(k,227) - lu(k,2120) * b(k,224) - b(k,228) = b(k,228) - lu(k,2121) * b(k,224) - b(k,229) = b(k,229) - lu(k,2122) * b(k,224) - b(k,226) = b(k,226) - lu(k,2142) * b(k,225) - b(k,227) = b(k,227) - lu(k,2143) * b(k,225) - b(k,228) = b(k,228) - lu(k,2144) * b(k,225) - b(k,229) = b(k,229) - lu(k,2145) * b(k,225) - b(k,227) = b(k,227) - lu(k,2167) * b(k,226) - b(k,228) = b(k,228) - lu(k,2168) * b(k,226) - b(k,229) = b(k,229) - lu(k,2169) * b(k,226) - b(k,228) = b(k,228) - lu(k,2199) * b(k,227) - b(k,229) = b(k,229) - lu(k,2200) * b(k,227) - b(k,229) = b(k,229) - lu(k,2261) * b(k,228) - end do - end subroutine lu_slv06 - subroutine lu_slv07( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len -!----------------------------------------------------------------------- -! ... Solve U * x = y -!----------------------------------------------------------------------- - b(k,229) = b(k,229) * lu(k,2287) - b(k,228) = b(k,228) - lu(k,2286) * b(k,229) - b(k,227) = b(k,227) - lu(k,2285) * b(k,229) - b(k,226) = b(k,226) - lu(k,2284) * b(k,229) - b(k,225) = b(k,225) - lu(k,2283) * b(k,229) - b(k,224) = b(k,224) - lu(k,2282) * b(k,229) - b(k,223) = b(k,223) - lu(k,2281) * b(k,229) - b(k,222) = b(k,222) - lu(k,2280) * b(k,229) - b(k,221) = b(k,221) - lu(k,2279) * b(k,229) - b(k,220) = b(k,220) - lu(k,2278) * b(k,229) - b(k,219) = b(k,219) - lu(k,2277) * b(k,229) - b(k,218) = b(k,218) - lu(k,2276) * b(k,229) - b(k,217) = b(k,217) - lu(k,2275) * b(k,229) - b(k,216) = b(k,216) - lu(k,2274) * b(k,229) - b(k,215) = b(k,215) - lu(k,2273) * b(k,229) - b(k,214) = b(k,214) - lu(k,2272) * b(k,229) - b(k,213) = b(k,213) - lu(k,2271) * b(k,229) - b(k,212) = b(k,212) - lu(k,2270) * b(k,229) - b(k,211) = b(k,211) - lu(k,2269) * b(k,229) - b(k,210) = b(k,210) - lu(k,2268) * b(k,229) - b(k,203) = b(k,203) - lu(k,2267) * b(k,229) - b(k,177) = b(k,177) - lu(k,2266) * b(k,229) - b(k,175) = b(k,175) - lu(k,2265) * b(k,229) - b(k,100) = b(k,100) - lu(k,2264) * b(k,229) - b(k,93) = b(k,93) - lu(k,2263) * b(k,229) - b(k,65) = b(k,65) - lu(k,2262) * b(k,229) - b(k,228) = b(k,228) * lu(k,2260) - b(k,227) = b(k,227) - lu(k,2259) * b(k,228) - b(k,226) = b(k,226) - lu(k,2258) * b(k,228) - b(k,225) = b(k,225) - lu(k,2257) * b(k,228) - b(k,224) = b(k,224) - lu(k,2256) * b(k,228) - b(k,223) = b(k,223) - lu(k,2255) * b(k,228) - b(k,222) = b(k,222) - lu(k,2254) * b(k,228) - b(k,221) = b(k,221) - lu(k,2253) * b(k,228) - b(k,220) = b(k,220) - lu(k,2252) * b(k,228) - b(k,219) = b(k,219) - lu(k,2251) * b(k,228) - b(k,218) = b(k,218) - lu(k,2250) * b(k,228) - b(k,217) = b(k,217) - lu(k,2249) * b(k,228) - b(k,216) = b(k,216) - lu(k,2248) * b(k,228) - b(k,215) = b(k,215) - lu(k,2247) * b(k,228) - b(k,214) = b(k,214) - lu(k,2246) * b(k,228) - b(k,213) = b(k,213) - lu(k,2245) * b(k,228) - b(k,212) = b(k,212) - lu(k,2244) * b(k,228) - b(k,211) = b(k,211) - lu(k,2243) * b(k,228) - b(k,209) = b(k,209) - lu(k,2242) * b(k,228) - b(k,208) = b(k,208) - lu(k,2241) * b(k,228) - b(k,207) = b(k,207) - lu(k,2240) * b(k,228) - b(k,206) = b(k,206) - lu(k,2239) * b(k,228) - b(k,205) = b(k,205) - lu(k,2238) * b(k,228) - b(k,204) = b(k,204) - lu(k,2237) * b(k,228) - b(k,203) = b(k,203) - lu(k,2236) * b(k,228) - b(k,202) = b(k,202) - lu(k,2235) * b(k,228) - b(k,201) = b(k,201) - lu(k,2234) * b(k,228) - b(k,200) = b(k,200) - lu(k,2233) * b(k,228) - b(k,197) = b(k,197) - lu(k,2232) * b(k,228) - b(k,196) = b(k,196) - lu(k,2231) * b(k,228) - b(k,195) = b(k,195) - lu(k,2230) * b(k,228) - b(k,194) = b(k,194) - lu(k,2229) * b(k,228) - b(k,193) = b(k,193) - lu(k,2228) * b(k,228) - b(k,192) = b(k,192) - lu(k,2227) * b(k,228) - b(k,190) = b(k,190) - lu(k,2226) * b(k,228) - b(k,189) = b(k,189) - lu(k,2225) * b(k,228) - b(k,188) = b(k,188) - lu(k,2224) * b(k,228) - b(k,187) = b(k,187) - lu(k,2223) * b(k,228) - b(k,186) = b(k,186) - lu(k,2222) * b(k,228) - b(k,185) = b(k,185) - lu(k,2221) * b(k,228) - b(k,184) = b(k,184) - lu(k,2220) * b(k,228) - b(k,183) = b(k,183) - lu(k,2219) * b(k,228) - b(k,182) = b(k,182) - lu(k,2218) * b(k,228) - b(k,179) = b(k,179) - lu(k,2217) * b(k,228) - b(k,175) = b(k,175) - lu(k,2216) * b(k,228) - b(k,174) = b(k,174) - lu(k,2215) * b(k,228) - b(k,170) = b(k,170) - lu(k,2214) * b(k,228) - b(k,160) = b(k,160) - lu(k,2213) * b(k,228) - b(k,158) = b(k,158) - lu(k,2212) * b(k,228) - b(k,152) = b(k,152) - lu(k,2211) * b(k,228) - b(k,142) = b(k,142) - lu(k,2210) * b(k,228) - b(k,137) = b(k,137) - lu(k,2209) * b(k,228) - b(k,130) = b(k,130) - lu(k,2208) * b(k,228) - b(k,116) = b(k,116) - lu(k,2207) * b(k,228) - b(k,85) = b(k,85) - lu(k,2206) * b(k,228) - b(k,43) = b(k,43) - lu(k,2205) * b(k,228) - b(k,42) = b(k,42) - lu(k,2204) * b(k,228) - b(k,41) = b(k,41) - lu(k,2203) * b(k,228) - b(k,40) = b(k,40) - lu(k,2202) * b(k,228) - b(k,39) = b(k,39) - lu(k,2201) * b(k,228) - b(k,227) = b(k,227) * lu(k,2198) - b(k,226) = b(k,226) - lu(k,2197) * b(k,227) - b(k,225) = b(k,225) - lu(k,2196) * b(k,227) - b(k,224) = b(k,224) - lu(k,2195) * b(k,227) - b(k,223) = b(k,223) - lu(k,2194) * b(k,227) - b(k,222) = b(k,222) - lu(k,2193) * b(k,227) - b(k,221) = b(k,221) - lu(k,2192) * b(k,227) - b(k,220) = b(k,220) - lu(k,2191) * b(k,227) - b(k,219) = b(k,219) - lu(k,2190) * b(k,227) - b(k,218) = b(k,218) - lu(k,2189) * b(k,227) - b(k,217) = b(k,217) - lu(k,2188) * b(k,227) - b(k,216) = b(k,216) - lu(k,2187) * b(k,227) - b(k,215) = b(k,215) - lu(k,2186) * b(k,227) - b(k,214) = b(k,214) - lu(k,2185) * b(k,227) - b(k,213) = b(k,213) - lu(k,2184) * b(k,227) - b(k,212) = b(k,212) - lu(k,2183) * b(k,227) - b(k,211) = b(k,211) - lu(k,2182) * b(k,227) - b(k,210) = b(k,210) - lu(k,2181) * b(k,227) - b(k,203) = b(k,203) - lu(k,2180) * b(k,227) - b(k,195) = b(k,195) - lu(k,2179) * b(k,227) - b(k,180) = b(k,180) - lu(k,2178) * b(k,227) - b(k,175) = b(k,175) - lu(k,2177) * b(k,227) - b(k,172) = b(k,172) - lu(k,2176) * b(k,227) - b(k,171) = b(k,171) - lu(k,2175) * b(k,227) - b(k,167) = b(k,167) - lu(k,2174) * b(k,227) - b(k,149) = b(k,149) - lu(k,2173) * b(k,227) - b(k,143) = b(k,143) - lu(k,2172) * b(k,227) - b(k,137) = b(k,137) - lu(k,2171) * b(k,227) - b(k,113) = b(k,113) - lu(k,2170) * b(k,227) - b(k,226) = b(k,226) * lu(k,2166) - b(k,225) = b(k,225) - lu(k,2165) * b(k,226) - b(k,224) = b(k,224) - lu(k,2164) * b(k,226) - b(k,223) = b(k,223) - lu(k,2163) * b(k,226) - b(k,222) = b(k,222) - lu(k,2162) * b(k,226) - b(k,221) = b(k,221) - lu(k,2161) * b(k,226) - b(k,220) = b(k,220) - lu(k,2160) * b(k,226) - b(k,219) = b(k,219) - lu(k,2159) * b(k,226) - b(k,218) = b(k,218) - lu(k,2158) * b(k,226) - b(k,217) = b(k,217) - lu(k,2157) * b(k,226) - b(k,216) = b(k,216) - lu(k,2156) * b(k,226) - b(k,215) = b(k,215) - lu(k,2155) * b(k,226) - b(k,214) = b(k,214) - lu(k,2154) * b(k,226) - b(k,213) = b(k,213) - lu(k,2153) * b(k,226) - b(k,211) = b(k,211) - lu(k,2152) * b(k,226) - b(k,203) = b(k,203) - lu(k,2151) * b(k,226) - b(k,175) = b(k,175) - lu(k,2150) * b(k,226) - b(k,167) = b(k,167) - lu(k,2149) * b(k,226) - b(k,143) = b(k,143) - lu(k,2148) * b(k,226) - b(k,107) = b(k,107) - lu(k,2147) * b(k,226) - b(k,86) = b(k,86) - lu(k,2146) * b(k,226) - b(k,225) = b(k,225) * lu(k,2141) - b(k,224) = b(k,224) - lu(k,2140) * b(k,225) - b(k,223) = b(k,223) - lu(k,2139) * b(k,225) - b(k,222) = b(k,222) - lu(k,2138) * b(k,225) - b(k,221) = b(k,221) - lu(k,2137) * b(k,225) - b(k,220) = b(k,220) - lu(k,2136) * b(k,225) - b(k,219) = b(k,219) - lu(k,2135) * b(k,225) - b(k,218) = b(k,218) - lu(k,2134) * b(k,225) - b(k,217) = b(k,217) - lu(k,2133) * b(k,225) - b(k,216) = b(k,216) - lu(k,2132) * b(k,225) - b(k,215) = b(k,215) - lu(k,2131) * b(k,225) - b(k,214) = b(k,214) - lu(k,2130) * b(k,225) - b(k,213) = b(k,213) - lu(k,2129) * b(k,225) - b(k,211) = b(k,211) - lu(k,2128) * b(k,225) - b(k,180) = b(k,180) - lu(k,2127) * b(k,225) - b(k,172) = b(k,172) - lu(k,2126) * b(k,225) - b(k,167) = b(k,167) - lu(k,2125) * b(k,225) - b(k,86) = b(k,86) - lu(k,2124) * b(k,225) - b(k,75) = b(k,75) - lu(k,2123) * b(k,225) - b(k,224) = b(k,224) * lu(k,2117) - b(k,223) = b(k,223) - lu(k,2116) * b(k,224) - b(k,222) = b(k,222) - lu(k,2115) * b(k,224) - b(k,221) = b(k,221) - lu(k,2114) * b(k,224) - b(k,220) = b(k,220) - lu(k,2113) * b(k,224) - b(k,219) = b(k,219) - lu(k,2112) * b(k,224) - b(k,218) = b(k,218) - lu(k,2111) * b(k,224) - b(k,217) = b(k,217) - lu(k,2110) * b(k,224) - b(k,216) = b(k,216) - lu(k,2109) * b(k,224) - b(k,215) = b(k,215) - lu(k,2108) * b(k,224) - b(k,214) = b(k,214) - lu(k,2107) * b(k,224) - b(k,213) = b(k,213) - lu(k,2106) * b(k,224) - b(k,212) = b(k,212) - lu(k,2105) * b(k,224) - b(k,211) = b(k,211) - lu(k,2104) * b(k,224) - b(k,210) = b(k,210) - lu(k,2103) * b(k,224) - b(k,209) = b(k,209) - lu(k,2102) * b(k,224) - b(k,208) = b(k,208) - lu(k,2101) * b(k,224) - b(k,207) = b(k,207) - lu(k,2100) * b(k,224) - b(k,206) = b(k,206) - lu(k,2099) * b(k,224) - b(k,205) = b(k,205) - lu(k,2098) * b(k,224) - b(k,204) = b(k,204) - lu(k,2097) * b(k,224) - b(k,202) = b(k,202) - lu(k,2096) * b(k,224) - b(k,201) = b(k,201) - lu(k,2095) * b(k,224) - b(k,200) = b(k,200) - lu(k,2094) * b(k,224) - b(k,199) = b(k,199) - lu(k,2093) * b(k,224) - b(k,197) = b(k,197) - lu(k,2092) * b(k,224) - b(k,196) = b(k,196) - lu(k,2091) * b(k,224) - b(k,195) = b(k,195) - lu(k,2090) * b(k,224) - b(k,194) = b(k,194) - lu(k,2089) * b(k,224) - b(k,193) = b(k,193) - lu(k,2088) * b(k,224) - b(k,192) = b(k,192) - lu(k,2087) * b(k,224) - b(k,190) = b(k,190) - lu(k,2086) * b(k,224) - b(k,189) = b(k,189) - lu(k,2085) * b(k,224) - b(k,186) = b(k,186) - lu(k,2084) * b(k,224) - b(k,185) = b(k,185) - lu(k,2083) * b(k,224) - b(k,183) = b(k,183) - lu(k,2082) * b(k,224) - b(k,182) = b(k,182) - lu(k,2081) * b(k,224) - b(k,181) = b(k,181) - lu(k,2080) * b(k,224) - b(k,179) = b(k,179) - lu(k,2079) * b(k,224) - b(k,178) = b(k,178) - lu(k,2078) * b(k,224) - b(k,176) = b(k,176) - lu(k,2077) * b(k,224) - b(k,173) = b(k,173) - lu(k,2076) * b(k,224) - b(k,172) = b(k,172) - lu(k,2075) * b(k,224) - b(k,171) = b(k,171) - lu(k,2074) * b(k,224) - b(k,170) = b(k,170) - lu(k,2073) * b(k,224) - b(k,168) = b(k,168) - lu(k,2072) * b(k,224) - b(k,167) = b(k,167) - lu(k,2071) * b(k,224) - b(k,166) = b(k,166) - lu(k,2070) * b(k,224) - b(k,165) = b(k,165) - lu(k,2069) * b(k,224) - b(k,164) = b(k,164) - lu(k,2068) * b(k,224) - b(k,163) = b(k,163) - lu(k,2067) * b(k,224) - b(k,162) = b(k,162) - lu(k,2066) * b(k,224) - b(k,161) = b(k,161) - lu(k,2065) * b(k,224) - b(k,160) = b(k,160) - lu(k,2064) * b(k,224) - b(k,159) = b(k,159) - lu(k,2063) * b(k,224) - b(k,158) = b(k,158) - lu(k,2062) * b(k,224) - b(k,157) = b(k,157) - lu(k,2061) * b(k,224) - b(k,156) = b(k,156) - lu(k,2060) * b(k,224) - b(k,155) = b(k,155) - lu(k,2059) * b(k,224) - b(k,154) = b(k,154) - lu(k,2058) * b(k,224) - b(k,152) = b(k,152) - lu(k,2057) * b(k,224) - b(k,150) = b(k,150) - lu(k,2056) * b(k,224) - b(k,149) = b(k,149) - lu(k,2055) * b(k,224) - b(k,141) = b(k,141) - lu(k,2054) * b(k,224) - b(k,138) = b(k,138) - lu(k,2053) * b(k,224) - b(k,135) = b(k,135) - lu(k,2052) * b(k,224) - b(k,133) = b(k,133) - lu(k,2051) * b(k,224) - b(k,132) = b(k,132) - lu(k,2050) * b(k,224) - b(k,130) = b(k,130) - lu(k,2049) * b(k,224) - b(k,129) = b(k,129) - lu(k,2048) * b(k,224) - b(k,128) = b(k,128) - lu(k,2047) * b(k,224) - b(k,127) = b(k,127) - lu(k,2046) * b(k,224) - b(k,126) = b(k,126) - lu(k,2045) * b(k,224) - b(k,125) = b(k,125) - lu(k,2044) * b(k,224) - b(k,124) = b(k,124) - lu(k,2043) * b(k,224) - b(k,123) = b(k,123) - lu(k,2042) * b(k,224) - b(k,122) = b(k,122) - lu(k,2041) * b(k,224) - b(k,121) = b(k,121) - lu(k,2040) * b(k,224) - b(k,120) = b(k,120) - lu(k,2039) * b(k,224) - b(k,119) = b(k,119) - lu(k,2038) * b(k,224) - b(k,118) = b(k,118) - lu(k,2037) * b(k,224) - b(k,110) = b(k,110) - lu(k,2036) * b(k,224) - b(k,109) = b(k,109) - lu(k,2035) * b(k,224) - b(k,108) = b(k,108) - lu(k,2034) * b(k,224) - b(k,105) = b(k,105) - lu(k,2033) * b(k,224) - b(k,104) = b(k,104) - lu(k,2032) * b(k,224) - b(k,96) = b(k,96) - lu(k,2031) * b(k,224) - b(k,95) = b(k,95) - lu(k,2030) * b(k,224) - b(k,81) = b(k,81) - lu(k,2029) * b(k,224) - b(k,64) = b(k,64) - lu(k,2028) * b(k,224) - b(k,53) = b(k,53) - lu(k,2027) * b(k,224) - b(k,52) = b(k,52) - lu(k,2026) * b(k,224) - b(k,51) = b(k,51) - lu(k,2025) * b(k,224) - b(k,49) = b(k,49) - lu(k,2024) * b(k,224) - b(k,48) = b(k,48) - lu(k,2023) * b(k,224) - b(k,47) = b(k,47) - lu(k,2022) * b(k,224) - b(k,46) = b(k,46) - lu(k,2021) * b(k,224) - b(k,43) = b(k,43) - lu(k,2020) * b(k,224) - b(k,42) = b(k,42) - lu(k,2019) * b(k,224) - b(k,41) = b(k,41) - lu(k,2018) * b(k,224) - b(k,40) = b(k,40) - lu(k,2017) * b(k,224) - b(k,39) = b(k,39) - lu(k,2016) * b(k,224) - end do - end subroutine lu_slv07 - subroutine lu_slv08( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,223) = b(k,223) * lu(k,2009) - b(k,222) = b(k,222) - lu(k,2008) * b(k,223) - b(k,221) = b(k,221) - lu(k,2007) * b(k,223) - b(k,220) = b(k,220) - lu(k,2006) * b(k,223) - b(k,219) = b(k,219) - lu(k,2005) * b(k,223) - b(k,218) = b(k,218) - lu(k,2004) * b(k,223) - b(k,217) = b(k,217) - lu(k,2003) * b(k,223) - b(k,216) = b(k,216) - lu(k,2002) * b(k,223) - b(k,215) = b(k,215) - lu(k,2001) * b(k,223) - b(k,214) = b(k,214) - lu(k,2000) * b(k,223) - b(k,213) = b(k,213) - lu(k,1999) * b(k,223) - b(k,212) = b(k,212) - lu(k,1998) * b(k,223) - b(k,211) = b(k,211) - lu(k,1997) * b(k,223) - b(k,210) = b(k,210) - lu(k,1996) * b(k,223) - b(k,209) = b(k,209) - lu(k,1995) * b(k,223) - b(k,195) = b(k,195) - lu(k,1994) * b(k,223) - b(k,193) = b(k,193) - lu(k,1993) * b(k,223) - b(k,192) = b(k,192) - lu(k,1992) * b(k,223) - b(k,186) = b(k,186) - lu(k,1991) * b(k,223) - b(k,183) = b(k,183) - lu(k,1990) * b(k,223) - b(k,180) = b(k,180) - lu(k,1989) * b(k,223) - b(k,173) = b(k,173) - lu(k,1988) * b(k,223) - b(k,172) = b(k,172) - lu(k,1987) * b(k,223) - b(k,160) = b(k,160) - lu(k,1986) * b(k,223) - b(k,149) = b(k,149) - lu(k,1985) * b(k,223) - b(k,148) = b(k,148) - lu(k,1984) * b(k,223) - b(k,142) = b(k,142) - lu(k,1983) * b(k,223) - b(k,131) = b(k,131) - lu(k,1982) * b(k,223) - b(k,117) = b(k,117) - lu(k,1981) * b(k,223) - b(k,114) = b(k,114) - lu(k,1980) * b(k,223) - b(k,103) = b(k,103) - lu(k,1979) * b(k,223) - b(k,101) = b(k,101) - lu(k,1978) * b(k,223) - b(k,75) = b(k,75) - lu(k,1977) * b(k,223) - b(k,222) = b(k,222) * lu(k,1969) - b(k,221) = b(k,221) - lu(k,1968) * b(k,222) - b(k,220) = b(k,220) - lu(k,1967) * b(k,222) - b(k,219) = b(k,219) - lu(k,1966) * b(k,222) - b(k,218) = b(k,218) - lu(k,1965) * b(k,222) - b(k,217) = b(k,217) - lu(k,1964) * b(k,222) - b(k,216) = b(k,216) - lu(k,1963) * b(k,222) - b(k,215) = b(k,215) - lu(k,1962) * b(k,222) - b(k,214) = b(k,214) - lu(k,1961) * b(k,222) - b(k,213) = b(k,213) - lu(k,1960) * b(k,222) - b(k,212) = b(k,212) - lu(k,1959) * b(k,222) - b(k,211) = b(k,211) - lu(k,1958) * b(k,222) - b(k,209) = b(k,209) - lu(k,1957) * b(k,222) - b(k,208) = b(k,208) - lu(k,1956) * b(k,222) - b(k,203) = b(k,203) - lu(k,1955) * b(k,222) - b(k,202) = b(k,202) - lu(k,1954) * b(k,222) - b(k,197) = b(k,197) - lu(k,1953) * b(k,222) - b(k,195) = b(k,195) - lu(k,1952) * b(k,222) - b(k,186) = b(k,186) - lu(k,1951) * b(k,222) - b(k,180) = b(k,180) - lu(k,1950) * b(k,222) - b(k,178) = b(k,178) - lu(k,1949) * b(k,222) - b(k,175) = b(k,175) - lu(k,1948) * b(k,222) - b(k,170) = b(k,170) - lu(k,1947) * b(k,222) - b(k,167) = b(k,167) - lu(k,1946) * b(k,222) - b(k,165) = b(k,165) - lu(k,1945) * b(k,222) - b(k,161) = b(k,161) - lu(k,1944) * b(k,222) - b(k,152) = b(k,152) - lu(k,1943) * b(k,222) - b(k,145) = b(k,145) - lu(k,1942) * b(k,222) - b(k,143) = b(k,143) - lu(k,1941) * b(k,222) - b(k,139) = b(k,139) - lu(k,1940) * b(k,222) - b(k,138) = b(k,138) - lu(k,1939) * b(k,222) - b(k,134) = b(k,134) - lu(k,1938) * b(k,222) - b(k,130) = b(k,130) - lu(k,1937) * b(k,222) - b(k,123) = b(k,123) - lu(k,1936) * b(k,222) - b(k,97) = b(k,97) - lu(k,1935) * b(k,222) - b(k,77) = b(k,77) - lu(k,1934) * b(k,222) - b(k,67) = b(k,67) - lu(k,1933) * b(k,222) - b(k,221) = b(k,221) * lu(k,1924) - b(k,220) = b(k,220) - lu(k,1923) * b(k,221) - b(k,219) = b(k,219) - lu(k,1922) * b(k,221) - b(k,218) = b(k,218) - lu(k,1921) * b(k,221) - b(k,217) = b(k,217) - lu(k,1920) * b(k,221) - b(k,216) = b(k,216) - lu(k,1919) * b(k,221) - b(k,215) = b(k,215) - lu(k,1918) * b(k,221) - b(k,214) = b(k,214) - lu(k,1917) * b(k,221) - b(k,213) = b(k,213) - lu(k,1916) * b(k,221) - b(k,212) = b(k,212) - lu(k,1915) * b(k,221) - b(k,211) = b(k,211) - lu(k,1914) * b(k,221) - b(k,209) = b(k,209) - lu(k,1913) * b(k,221) - b(k,208) = b(k,208) - lu(k,1912) * b(k,221) - b(k,207) = b(k,207) - lu(k,1911) * b(k,221) - b(k,206) = b(k,206) - lu(k,1910) * b(k,221) - b(k,205) = b(k,205) - lu(k,1909) * b(k,221) - b(k,204) = b(k,204) - lu(k,1908) * b(k,221) - b(k,202) = b(k,202) - lu(k,1907) * b(k,221) - b(k,201) = b(k,201) - lu(k,1906) * b(k,221) - b(k,200) = b(k,200) - lu(k,1905) * b(k,221) - b(k,199) = b(k,199) - lu(k,1904) * b(k,221) - b(k,198) = b(k,198) - lu(k,1903) * b(k,221) - b(k,197) = b(k,197) - lu(k,1902) * b(k,221) - b(k,196) = b(k,196) - lu(k,1901) * b(k,221) - b(k,195) = b(k,195) - lu(k,1900) * b(k,221) - b(k,194) = b(k,194) - lu(k,1899) * b(k,221) - b(k,193) = b(k,193) - lu(k,1898) * b(k,221) - b(k,192) = b(k,192) - lu(k,1897) * b(k,221) - b(k,191) = b(k,191) - lu(k,1896) * b(k,221) - b(k,190) = b(k,190) - lu(k,1895) * b(k,221) - b(k,189) = b(k,189) - lu(k,1894) * b(k,221) - b(k,186) = b(k,186) - lu(k,1893) * b(k,221) - b(k,185) = b(k,185) - lu(k,1892) * b(k,221) - b(k,183) = b(k,183) - lu(k,1891) * b(k,221) - b(k,182) = b(k,182) - lu(k,1890) * b(k,221) - b(k,181) = b(k,181) - lu(k,1889) * b(k,221) - b(k,179) = b(k,179) - lu(k,1888) * b(k,221) - b(k,178) = b(k,178) - lu(k,1887) * b(k,221) - b(k,176) = b(k,176) - lu(k,1886) * b(k,221) - b(k,173) = b(k,173) - lu(k,1885) * b(k,221) - b(k,170) = b(k,170) - lu(k,1884) * b(k,221) - b(k,168) = b(k,168) - lu(k,1883) * b(k,221) - b(k,166) = b(k,166) - lu(k,1882) * b(k,221) - b(k,165) = b(k,165) - lu(k,1881) * b(k,221) - b(k,164) = b(k,164) - lu(k,1880) * b(k,221) - b(k,162) = b(k,162) - lu(k,1879) * b(k,221) - b(k,161) = b(k,161) - lu(k,1878) * b(k,221) - b(k,160) = b(k,160) - lu(k,1877) * b(k,221) - b(k,157) = b(k,157) - lu(k,1876) * b(k,221) - b(k,153) = b(k,153) - lu(k,1875) * b(k,221) - b(k,152) = b(k,152) - lu(k,1874) * b(k,221) - b(k,151) = b(k,151) - lu(k,1873) * b(k,221) - b(k,147) = b(k,147) - lu(k,1872) * b(k,221) - b(k,146) = b(k,146) - lu(k,1871) * b(k,221) - b(k,144) = b(k,144) - lu(k,1870) * b(k,221) - b(k,140) = b(k,140) - lu(k,1869) * b(k,221) - b(k,138) = b(k,138) - lu(k,1868) * b(k,221) - b(k,136) = b(k,136) - lu(k,1867) * b(k,221) - b(k,135) = b(k,135) - lu(k,1866) * b(k,221) - b(k,134) = b(k,134) - lu(k,1865) * b(k,221) - b(k,133) = b(k,133) - lu(k,1864) * b(k,221) - b(k,130) = b(k,130) - lu(k,1863) * b(k,221) - b(k,129) = b(k,129) - lu(k,1862) * b(k,221) - b(k,127) = b(k,127) - lu(k,1861) * b(k,221) - b(k,126) = b(k,126) - lu(k,1860) * b(k,221) - b(k,125) = b(k,125) - lu(k,1859) * b(k,221) - b(k,111) = b(k,111) - lu(k,1858) * b(k,221) - b(k,106) = b(k,106) - lu(k,1857) * b(k,221) - b(k,98) = b(k,98) - lu(k,1856) * b(k,221) - b(k,96) = b(k,96) - lu(k,1855) * b(k,221) - b(k,88) = b(k,88) - lu(k,1854) * b(k,221) - b(k,87) = b(k,87) - lu(k,1853) * b(k,221) - b(k,53) = b(k,53) - lu(k,1852) * b(k,221) - b(k,52) = b(k,52) - lu(k,1851) * b(k,221) - b(k,51) = b(k,51) - lu(k,1850) * b(k,221) - b(k,49) = b(k,49) - lu(k,1849) * b(k,221) - b(k,48) = b(k,48) - lu(k,1848) * b(k,221) - b(k,47) = b(k,47) - lu(k,1847) * b(k,221) - b(k,46) = b(k,46) - lu(k,1846) * b(k,221) - b(k,43) = b(k,43) - lu(k,1845) * b(k,221) - b(k,42) = b(k,42) - lu(k,1844) * b(k,221) - b(k,41) = b(k,41) - lu(k,1843) * b(k,221) - b(k,40) = b(k,40) - lu(k,1842) * b(k,221) - b(k,39) = b(k,39) - lu(k,1841) * b(k,221) - b(k,220) = b(k,220) * lu(k,1831) - b(k,219) = b(k,219) - lu(k,1830) * b(k,220) - b(k,218) = b(k,218) - lu(k,1829) * b(k,220) - b(k,217) = b(k,217) - lu(k,1828) * b(k,220) - b(k,216) = b(k,216) - lu(k,1827) * b(k,220) - b(k,215) = b(k,215) - lu(k,1826) * b(k,220) - b(k,214) = b(k,214) - lu(k,1825) * b(k,220) - b(k,213) = b(k,213) - lu(k,1824) * b(k,220) - b(k,212) = b(k,212) - lu(k,1823) * b(k,220) - b(k,209) = b(k,209) - lu(k,1822) * b(k,220) - b(k,208) = b(k,208) - lu(k,1821) * b(k,220) - b(k,207) = b(k,207) - lu(k,1820) * b(k,220) - b(k,206) = b(k,206) - lu(k,1819) * b(k,220) - b(k,205) = b(k,205) - lu(k,1818) * b(k,220) - b(k,204) = b(k,204) - lu(k,1817) * b(k,220) - b(k,202) = b(k,202) - lu(k,1816) * b(k,220) - b(k,201) = b(k,201) - lu(k,1815) * b(k,220) - b(k,200) = b(k,200) - lu(k,1814) * b(k,220) - b(k,199) = b(k,199) - lu(k,1813) * b(k,220) - b(k,197) = b(k,197) - lu(k,1812) * b(k,220) - b(k,196) = b(k,196) - lu(k,1811) * b(k,220) - b(k,195) = b(k,195) - lu(k,1810) * b(k,220) - b(k,194) = b(k,194) - lu(k,1809) * b(k,220) - b(k,193) = b(k,193) - lu(k,1808) * b(k,220) - b(k,192) = b(k,192) - lu(k,1807) * b(k,220) - b(k,191) = b(k,191) - lu(k,1806) * b(k,220) - b(k,190) = b(k,190) - lu(k,1805) * b(k,220) - b(k,189) = b(k,189) - lu(k,1804) * b(k,220) - b(k,186) = b(k,186) - lu(k,1803) * b(k,220) - b(k,185) = b(k,185) - lu(k,1802) * b(k,220) - b(k,182) = b(k,182) - lu(k,1801) * b(k,220) - b(k,181) = b(k,181) - lu(k,1800) * b(k,220) - b(k,176) = b(k,176) - lu(k,1799) * b(k,220) - b(k,173) = b(k,173) - lu(k,1798) * b(k,220) - b(k,170) = b(k,170) - lu(k,1797) * b(k,220) - b(k,169) = b(k,169) - lu(k,1796) * b(k,220) - b(k,168) = b(k,168) - lu(k,1795) * b(k,220) - b(k,158) = b(k,158) - lu(k,1794) * b(k,220) - b(k,151) = b(k,151) - lu(k,1793) * b(k,220) - b(k,128) = b(k,128) - lu(k,1792) * b(k,220) - b(k,115) = b(k,115) - lu(k,1791) * b(k,220) - b(k,111) = b(k,111) - lu(k,1790) * b(k,220) - b(k,94) = b(k,94) - lu(k,1789) * b(k,220) - b(k,219) = b(k,219) * lu(k,1778) - b(k,218) = b(k,218) - lu(k,1777) * b(k,219) - b(k,217) = b(k,217) - lu(k,1776) * b(k,219) - b(k,216) = b(k,216) - lu(k,1775) * b(k,219) - b(k,215) = b(k,215) - lu(k,1774) * b(k,219) - b(k,214) = b(k,214) - lu(k,1773) * b(k,219) - b(k,213) = b(k,213) - lu(k,1772) * b(k,219) - b(k,212) = b(k,212) - lu(k,1771) * b(k,219) - b(k,211) = b(k,211) - lu(k,1770) * b(k,219) - b(k,209) = b(k,209) - lu(k,1769) * b(k,219) - b(k,208) = b(k,208) - lu(k,1768) * b(k,219) - b(k,207) = b(k,207) - lu(k,1767) * b(k,219) - b(k,206) = b(k,206) - lu(k,1766) * b(k,219) - b(k,205) = b(k,205) - lu(k,1765) * b(k,219) - b(k,204) = b(k,204) - lu(k,1764) * b(k,219) - b(k,203) = b(k,203) - lu(k,1763) * b(k,219) - b(k,202) = b(k,202) - lu(k,1762) * b(k,219) - b(k,201) = b(k,201) - lu(k,1761) * b(k,219) - b(k,200) = b(k,200) - lu(k,1760) * b(k,219) - b(k,199) = b(k,199) - lu(k,1759) * b(k,219) - b(k,198) = b(k,198) - lu(k,1758) * b(k,219) - b(k,197) = b(k,197) - lu(k,1757) * b(k,219) - b(k,196) = b(k,196) - lu(k,1756) * b(k,219) - b(k,195) = b(k,195) - lu(k,1755) * b(k,219) - b(k,194) = b(k,194) - lu(k,1754) * b(k,219) - b(k,193) = b(k,193) - lu(k,1753) * b(k,219) - b(k,192) = b(k,192) - lu(k,1752) * b(k,219) - b(k,191) = b(k,191) - lu(k,1751) * b(k,219) - b(k,190) = b(k,190) - lu(k,1750) * b(k,219) - b(k,189) = b(k,189) - lu(k,1749) * b(k,219) - b(k,188) = b(k,188) - lu(k,1748) * b(k,219) - b(k,187) = b(k,187) - lu(k,1747) * b(k,219) - b(k,186) = b(k,186) - lu(k,1746) * b(k,219) - b(k,185) = b(k,185) - lu(k,1745) * b(k,219) - b(k,184) = b(k,184) - lu(k,1744) * b(k,219) - b(k,183) = b(k,183) - lu(k,1743) * b(k,219) - b(k,182) = b(k,182) - lu(k,1742) * b(k,219) - b(k,176) = b(k,176) - lu(k,1741) * b(k,219) - b(k,175) = b(k,175) - lu(k,1740) * b(k,219) - b(k,174) = b(k,174) - lu(k,1739) * b(k,219) - b(k,144) = b(k,144) - lu(k,1738) * b(k,219) - b(k,112) = b(k,112) - lu(k,1737) * b(k,219) - b(k,111) = b(k,111) - lu(k,1736) * b(k,219) - b(k,99) = b(k,99) - lu(k,1735) * b(k,219) - b(k,97) = b(k,97) - lu(k,1734) * b(k,219) - b(k,43) = b(k,43) - lu(k,1733) * b(k,219) - b(k,42) = b(k,42) - lu(k,1732) * b(k,219) - end do - end subroutine lu_slv08 - subroutine lu_slv09( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,218) = b(k,218) * lu(k,1720) - b(k,217) = b(k,217) - lu(k,1719) * b(k,218) - b(k,216) = b(k,216) - lu(k,1718) * b(k,218) - b(k,215) = b(k,215) - lu(k,1717) * b(k,218) - b(k,214) = b(k,214) - lu(k,1716) * b(k,218) - b(k,213) = b(k,213) - lu(k,1715) * b(k,218) - b(k,211) = b(k,211) - lu(k,1714) * b(k,218) - b(k,203) = b(k,203) - lu(k,1713) * b(k,218) - b(k,180) = b(k,180) - lu(k,1712) * b(k,218) - b(k,175) = b(k,175) - lu(k,1711) * b(k,218) - b(k,172) = b(k,172) - lu(k,1710) * b(k,218) - b(k,107) = b(k,107) - lu(k,1709) * b(k,218) - b(k,86) = b(k,86) - lu(k,1708) * b(k,218) - b(k,75) = b(k,75) - lu(k,1707) * b(k,218) - b(k,54) = b(k,54) - lu(k,1706) * b(k,218) - b(k,217) = b(k,217) * lu(k,1693) - b(k,216) = b(k,216) - lu(k,1692) * b(k,217) - b(k,215) = b(k,215) - lu(k,1691) * b(k,217) - b(k,214) = b(k,214) - lu(k,1690) * b(k,217) - b(k,213) = b(k,213) - lu(k,1689) * b(k,217) - b(k,212) = b(k,212) - lu(k,1688) * b(k,217) - b(k,211) = b(k,211) - lu(k,1687) * b(k,217) - b(k,210) = b(k,210) - lu(k,1686) * b(k,217) - b(k,209) = b(k,209) - lu(k,1685) * b(k,217) - b(k,208) = b(k,208) - lu(k,1684) * b(k,217) - b(k,207) = b(k,207) - lu(k,1683) * b(k,217) - b(k,206) = b(k,206) - lu(k,1682) * b(k,217) - b(k,205) = b(k,205) - lu(k,1681) * b(k,217) - b(k,204) = b(k,204) - lu(k,1680) * b(k,217) - b(k,203) = b(k,203) - lu(k,1679) * b(k,217) - b(k,202) = b(k,202) - lu(k,1678) * b(k,217) - b(k,201) = b(k,201) - lu(k,1677) * b(k,217) - b(k,200) = b(k,200) - lu(k,1676) * b(k,217) - b(k,199) = b(k,199) - lu(k,1675) * b(k,217) - b(k,198) = b(k,198) - lu(k,1674) * b(k,217) - b(k,197) = b(k,197) - lu(k,1673) * b(k,217) - b(k,196) = b(k,196) - lu(k,1672) * b(k,217) - b(k,195) = b(k,195) - lu(k,1671) * b(k,217) - b(k,194) = b(k,194) - lu(k,1670) * b(k,217) - b(k,193) = b(k,193) - lu(k,1669) * b(k,217) - b(k,192) = b(k,192) - lu(k,1668) * b(k,217) - b(k,191) = b(k,191) - lu(k,1667) * b(k,217) - b(k,190) = b(k,190) - lu(k,1666) * b(k,217) - b(k,189) = b(k,189) - lu(k,1665) * b(k,217) - b(k,188) = b(k,188) - lu(k,1664) * b(k,217) - b(k,187) = b(k,187) - lu(k,1663) * b(k,217) - b(k,186) = b(k,186) - lu(k,1662) * b(k,217) - b(k,185) = b(k,185) - lu(k,1661) * b(k,217) - b(k,184) = b(k,184) - lu(k,1660) * b(k,217) - b(k,183) = b(k,183) - lu(k,1659) * b(k,217) - b(k,182) = b(k,182) - lu(k,1658) * b(k,217) - b(k,181) = b(k,181) - lu(k,1657) * b(k,217) - b(k,180) = b(k,180) - lu(k,1656) * b(k,217) - b(k,179) = b(k,179) - lu(k,1655) * b(k,217) - b(k,178) = b(k,178) - lu(k,1654) * b(k,217) - b(k,177) = b(k,177) - lu(k,1653) * b(k,217) - b(k,176) = b(k,176) - lu(k,1652) * b(k,217) - b(k,175) = b(k,175) - lu(k,1651) * b(k,217) - b(k,174) = b(k,174) - lu(k,1650) * b(k,217) - b(k,173) = b(k,173) - lu(k,1649) * b(k,217) - b(k,172) = b(k,172) - lu(k,1648) * b(k,217) - b(k,171) = b(k,171) - lu(k,1647) * b(k,217) - b(k,170) = b(k,170) - lu(k,1646) * b(k,217) - b(k,169) = b(k,169) - lu(k,1645) * b(k,217) - b(k,168) = b(k,168) - lu(k,1644) * b(k,217) - b(k,166) = b(k,166) - lu(k,1643) * b(k,217) - b(k,165) = b(k,165) - lu(k,1642) * b(k,217) - b(k,164) = b(k,164) - lu(k,1641) * b(k,217) - b(k,163) = b(k,163) - lu(k,1640) * b(k,217) - b(k,162) = b(k,162) - lu(k,1639) * b(k,217) - b(k,161) = b(k,161) - lu(k,1638) * b(k,217) - b(k,160) = b(k,160) - lu(k,1637) * b(k,217) - b(k,159) = b(k,159) - lu(k,1636) * b(k,217) - b(k,158) = b(k,158) - lu(k,1635) * b(k,217) - b(k,157) = b(k,157) - lu(k,1634) * b(k,217) - b(k,156) = b(k,156) - lu(k,1633) * b(k,217) - b(k,155) = b(k,155) - lu(k,1632) * b(k,217) - b(k,154) = b(k,154) - lu(k,1631) * b(k,217) - b(k,153) = b(k,153) - lu(k,1630) * b(k,217) - b(k,152) = b(k,152) - lu(k,1629) * b(k,217) - b(k,151) = b(k,151) - lu(k,1628) * b(k,217) - b(k,150) = b(k,150) - lu(k,1627) * b(k,217) - b(k,149) = b(k,149) - lu(k,1626) * b(k,217) - b(k,148) = b(k,148) - lu(k,1625) * b(k,217) - b(k,147) = b(k,147) - lu(k,1624) * b(k,217) - b(k,146) = b(k,146) - lu(k,1623) * b(k,217) - b(k,145) = b(k,145) - lu(k,1622) * b(k,217) - b(k,144) = b(k,144) - lu(k,1621) * b(k,217) - b(k,142) = b(k,142) - lu(k,1620) * b(k,217) - b(k,141) = b(k,141) - lu(k,1619) * b(k,217) - b(k,140) = b(k,140) - lu(k,1618) * b(k,217) - b(k,139) = b(k,139) - lu(k,1617) * b(k,217) - b(k,138) = b(k,138) - lu(k,1616) * b(k,217) - b(k,137) = b(k,137) - lu(k,1615) * b(k,217) - b(k,136) = b(k,136) - lu(k,1614) * b(k,217) - b(k,135) = b(k,135) - lu(k,1613) * b(k,217) - b(k,134) = b(k,134) - lu(k,1612) * b(k,217) - b(k,133) = b(k,133) - lu(k,1611) * b(k,217) - b(k,132) = b(k,132) - lu(k,1610) * b(k,217) - b(k,131) = b(k,131) - lu(k,1609) * b(k,217) - b(k,130) = b(k,130) - lu(k,1608) * b(k,217) - b(k,129) = b(k,129) - lu(k,1607) * b(k,217) - b(k,128) = b(k,128) - lu(k,1606) * b(k,217) - b(k,127) = b(k,127) - lu(k,1605) * b(k,217) - b(k,125) = b(k,125) - lu(k,1604) * b(k,217) - b(k,124) = b(k,124) - lu(k,1603) * b(k,217) - b(k,123) = b(k,123) - lu(k,1602) * b(k,217) - b(k,122) = b(k,122) - lu(k,1601) * b(k,217) - b(k,121) = b(k,121) - lu(k,1600) * b(k,217) - b(k,120) = b(k,120) - lu(k,1599) * b(k,217) - b(k,119) = b(k,119) - lu(k,1598) * b(k,217) - b(k,118) = b(k,118) - lu(k,1597) * b(k,217) - b(k,117) = b(k,117) - lu(k,1596) * b(k,217) - b(k,115) = b(k,115) - lu(k,1595) * b(k,217) - b(k,114) = b(k,114) - lu(k,1594) * b(k,217) - b(k,113) = b(k,113) - lu(k,1593) * b(k,217) - b(k,112) = b(k,112) - lu(k,1592) * b(k,217) - b(k,111) = b(k,111) - lu(k,1591) * b(k,217) - b(k,110) = b(k,110) - lu(k,1590) * b(k,217) - b(k,109) = b(k,109) - lu(k,1589) * b(k,217) - b(k,108) = b(k,108) - lu(k,1588) * b(k,217) - b(k,105) = b(k,105) - lu(k,1587) * b(k,217) - b(k,104) = b(k,104) - lu(k,1586) * b(k,217) - b(k,103) = b(k,103) - lu(k,1585) * b(k,217) - b(k,102) = b(k,102) - lu(k,1584) * b(k,217) - b(k,101) = b(k,101) - lu(k,1583) * b(k,217) - b(k,99) = b(k,99) - lu(k,1582) * b(k,217) - b(k,95) = b(k,95) - lu(k,1581) * b(k,217) - b(k,94) = b(k,94) - lu(k,1580) * b(k,217) - b(k,93) = b(k,93) - lu(k,1579) * b(k,217) - b(k,92) = b(k,92) - lu(k,1578) * b(k,217) - b(k,91) = b(k,91) - lu(k,1577) * b(k,217) - b(k,90) = b(k,90) - lu(k,1576) * b(k,217) - b(k,89) = b(k,89) - lu(k,1575) * b(k,217) - b(k,88) = b(k,88) - lu(k,1574) * b(k,217) - b(k,87) = b(k,87) - lu(k,1573) * b(k,217) - b(k,85) = b(k,85) - lu(k,1572) * b(k,217) - b(k,84) = b(k,84) - lu(k,1571) * b(k,217) - b(k,83) = b(k,83) - lu(k,1570) * b(k,217) - b(k,82) = b(k,82) - lu(k,1569) * b(k,217) - b(k,81) = b(k,81) - lu(k,1568) * b(k,217) - b(k,80) = b(k,80) - lu(k,1567) * b(k,217) - b(k,79) = b(k,79) - lu(k,1566) * b(k,217) - b(k,78) = b(k,78) - lu(k,1565) * b(k,217) - b(k,76) = b(k,76) - lu(k,1564) * b(k,217) - b(k,74) = b(k,74) - lu(k,1563) * b(k,217) - b(k,73) = b(k,73) - lu(k,1562) * b(k,217) - b(k,72) = b(k,72) - lu(k,1561) * b(k,217) - b(k,66) = b(k,66) - lu(k,1560) * b(k,217) - b(k,63) = b(k,63) - lu(k,1559) * b(k,217) - b(k,59) = b(k,59) - lu(k,1558) * b(k,217) - b(k,57) = b(k,57) - lu(k,1557) * b(k,217) - b(k,55) = b(k,55) - lu(k,1556) * b(k,217) - b(k,53) = b(k,53) - lu(k,1555) * b(k,217) - b(k,52) = b(k,52) - lu(k,1554) * b(k,217) - b(k,51) = b(k,51) - lu(k,1553) * b(k,217) - b(k,50) = b(k,50) - lu(k,1552) * b(k,217) - b(k,49) = b(k,49) - lu(k,1551) * b(k,217) - b(k,48) = b(k,48) - lu(k,1550) * b(k,217) - b(k,47) = b(k,47) - lu(k,1549) * b(k,217) - b(k,46) = b(k,46) - lu(k,1548) * b(k,217) - b(k,45) = b(k,45) - lu(k,1547) * b(k,217) - b(k,43) = b(k,43) - lu(k,1546) * b(k,217) - b(k,42) = b(k,42) - lu(k,1545) * b(k,217) - b(k,41) = b(k,41) - lu(k,1544) * b(k,217) - b(k,40) = b(k,40) - lu(k,1543) * b(k,217) - b(k,39) = b(k,39) - lu(k,1542) * b(k,217) - b(k,216) = b(k,216) * lu(k,1528) - b(k,215) = b(k,215) - lu(k,1527) * b(k,216) - b(k,214) = b(k,214) - lu(k,1526) * b(k,216) - b(k,213) = b(k,213) - lu(k,1525) * b(k,216) - b(k,212) = b(k,212) - lu(k,1524) * b(k,216) - b(k,211) = b(k,211) - lu(k,1523) * b(k,216) - b(k,210) = b(k,210) - lu(k,1522) * b(k,216) - b(k,177) = b(k,177) - lu(k,1521) * b(k,216) - b(k,171) = b(k,171) - lu(k,1520) * b(k,216) - b(k,148) = b(k,148) - lu(k,1519) * b(k,216) - b(k,131) = b(k,131) - lu(k,1518) * b(k,216) - b(k,117) = b(k,117) - lu(k,1517) * b(k,216) - b(k,102) = b(k,102) - lu(k,1516) * b(k,216) - b(k,92) = b(k,92) - lu(k,1515) * b(k,216) - b(k,91) = b(k,91) - lu(k,1514) * b(k,216) - b(k,90) = b(k,90) - lu(k,1513) * b(k,216) - b(k,89) = b(k,89) - lu(k,1512) * b(k,216) - b(k,77) = b(k,77) - lu(k,1511) * b(k,216) - b(k,76) = b(k,76) - lu(k,1510) * b(k,216) - b(k,71) = b(k,71) - lu(k,1509) * b(k,216) - b(k,70) = b(k,70) - lu(k,1508) * b(k,216) - b(k,69) = b(k,69) - lu(k,1507) * b(k,216) - b(k,68) = b(k,68) - lu(k,1506) * b(k,216) - b(k,62) = b(k,62) - lu(k,1505) * b(k,216) - b(k,61) = b(k,61) - lu(k,1504) * b(k,216) - b(k,60) = b(k,60) - lu(k,1503) * b(k,216) - b(k,58) = b(k,58) - lu(k,1502) * b(k,216) - b(k,56) = b(k,56) - lu(k,1501) * b(k,216) - b(k,215) = b(k,215) * lu(k,1487) - b(k,214) = b(k,214) - lu(k,1486) * b(k,215) - b(k,213) = b(k,213) - lu(k,1485) * b(k,215) - b(k,212) = b(k,212) - lu(k,1484) * b(k,215) - b(k,211) = b(k,211) - lu(k,1483) * b(k,215) - b(k,210) = b(k,210) - lu(k,1482) * b(k,215) - b(k,195) = b(k,195) - lu(k,1481) * b(k,215) - b(k,183) = b(k,183) - lu(k,1480) * b(k,215) - b(k,171) = b(k,171) - lu(k,1479) * b(k,215) - b(k,126) = b(k,126) - lu(k,1478) * b(k,215) - end do - end subroutine lu_slv09 - subroutine lu_slv10( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,214) = b(k,214) * lu(k,1465) - b(k,213) = b(k,213) - lu(k,1464) * b(k,214) - b(k,212) = b(k,212) - lu(k,1463) * b(k,214) - b(k,210) = b(k,210) - lu(k,1462) * b(k,214) - b(k,177) = b(k,177) - lu(k,1461) * b(k,214) - b(k,100) = b(k,100) - lu(k,1460) * b(k,214) - b(k,213) = b(k,213) * lu(k,1447) - b(k,212) = b(k,212) - lu(k,1446) * b(k,213) - b(k,210) = b(k,210) - lu(k,1445) * b(k,213) - b(k,212) = b(k,212) * lu(k,1432) - b(k,210) = b(k,210) - lu(k,1431) * b(k,212) - b(k,195) = b(k,195) - lu(k,1430) * b(k,212) - b(k,177) = b(k,177) - lu(k,1429) * b(k,212) - b(k,170) = b(k,170) - lu(k,1428) * b(k,212) - b(k,100) = b(k,100) - lu(k,1427) * b(k,212) - b(k,211) = b(k,211) * lu(k,1417) - b(k,195) = b(k,195) - lu(k,1416) * b(k,211) - b(k,171) = b(k,171) - lu(k,1415) * b(k,211) - b(k,210) = b(k,210) * lu(k,1403) - b(k,177) = b(k,177) - lu(k,1402) * b(k,210) - b(k,100) = b(k,100) - lu(k,1401) * b(k,210) - b(k,209) = b(k,209) * lu(k,1388) - b(k,208) = b(k,208) - lu(k,1387) * b(k,209) - b(k,207) = b(k,207) - lu(k,1386) * b(k,209) - b(k,206) = b(k,206) - lu(k,1385) * b(k,209) - b(k,205) = b(k,205) - lu(k,1384) * b(k,209) - b(k,204) = b(k,204) - lu(k,1383) * b(k,209) - b(k,202) = b(k,202) - lu(k,1382) * b(k,209) - b(k,201) = b(k,201) - lu(k,1381) * b(k,209) - b(k,200) = b(k,200) - lu(k,1380) * b(k,209) - b(k,199) = b(k,199) - lu(k,1379) * b(k,209) - b(k,197) = b(k,197) - lu(k,1378) * b(k,209) - b(k,195) = b(k,195) - lu(k,1377) * b(k,209) - b(k,193) = b(k,193) - lu(k,1376) * b(k,209) - b(k,191) = b(k,191) - lu(k,1375) * b(k,209) - b(k,186) = b(k,186) - lu(k,1374) * b(k,209) - b(k,170) = b(k,170) - lu(k,1373) * b(k,209) - b(k,158) = b(k,158) - lu(k,1372) * b(k,209) - b(k,150) = b(k,150) - lu(k,1371) * b(k,209) - b(k,139) = b(k,139) - lu(k,1370) * b(k,209) - b(k,111) = b(k,111) - lu(k,1369) * b(k,209) - b(k,208) = b(k,208) * lu(k,1356) - b(k,202) = b(k,202) - lu(k,1355) * b(k,208) - b(k,197) = b(k,197) - lu(k,1354) * b(k,208) - b(k,195) = b(k,195) - lu(k,1353) * b(k,208) - b(k,170) = b(k,170) - lu(k,1352) * b(k,208) - b(k,158) = b(k,158) - lu(k,1351) * b(k,208) - b(k,150) = b(k,150) - lu(k,1350) * b(k,208) - b(k,145) = b(k,145) - lu(k,1349) * b(k,208) - b(k,207) = b(k,207) * lu(k,1334) - b(k,206) = b(k,206) - lu(k,1333) * b(k,207) - b(k,202) = b(k,202) - lu(k,1332) * b(k,207) - b(k,197) = b(k,197) - lu(k,1331) * b(k,207) - b(k,195) = b(k,195) - lu(k,1330) * b(k,207) - b(k,192) = b(k,192) - lu(k,1329) * b(k,207) - b(k,188) = b(k,188) - lu(k,1328) * b(k,207) - b(k,183) = b(k,183) - lu(k,1327) * b(k,207) - b(k,170) = b(k,170) - lu(k,1326) * b(k,207) - b(k,206) = b(k,206) * lu(k,1313) - b(k,202) = b(k,202) - lu(k,1312) * b(k,206) - b(k,198) = b(k,198) - lu(k,1311) * b(k,206) - b(k,197) = b(k,197) - lu(k,1310) * b(k,206) - b(k,195) = b(k,195) - lu(k,1309) * b(k,206) - b(k,193) = b(k,193) - lu(k,1308) * b(k,206) - b(k,169) = b(k,169) - lu(k,1307) * b(k,206) - b(k,104) = b(k,104) - lu(k,1306) * b(k,206) - b(k,205) = b(k,205) * lu(k,1290) - b(k,202) = b(k,202) - lu(k,1289) * b(k,205) - b(k,201) = b(k,201) - lu(k,1288) * b(k,205) - b(k,199) = b(k,199) - lu(k,1287) * b(k,205) - b(k,198) = b(k,198) - lu(k,1286) * b(k,205) - b(k,197) = b(k,197) - lu(k,1285) * b(k,205) - b(k,195) = b(k,195) - lu(k,1284) * b(k,205) - b(k,193) = b(k,193) - lu(k,1283) * b(k,205) - b(k,186) = b(k,186) - lu(k,1282) * b(k,205) - b(k,178) = b(k,178) - lu(k,1281) * b(k,205) - b(k,176) = b(k,176) - lu(k,1280) * b(k,205) - b(k,169) = b(k,169) - lu(k,1279) * b(k,205) - b(k,163) = b(k,163) - lu(k,1278) * b(k,205) - b(k,147) = b(k,147) - lu(k,1277) * b(k,205) - b(k,140) = b(k,140) - lu(k,1276) * b(k,205) - b(k,111) = b(k,111) - lu(k,1275) * b(k,205) - b(k,84) = b(k,84) - lu(k,1274) * b(k,205) - b(k,204) = b(k,204) * lu(k,1258) - b(k,202) = b(k,202) - lu(k,1257) * b(k,204) - b(k,201) = b(k,201) - lu(k,1256) * b(k,204) - b(k,199) = b(k,199) - lu(k,1255) * b(k,204) - b(k,198) = b(k,198) - lu(k,1254) * b(k,204) - b(k,197) = b(k,197) - lu(k,1253) * b(k,204) - b(k,195) = b(k,195) - lu(k,1252) * b(k,204) - b(k,193) = b(k,193) - lu(k,1251) * b(k,204) - b(k,170) = b(k,170) - lu(k,1250) * b(k,204) - b(k,169) = b(k,169) - lu(k,1249) * b(k,204) - b(k,163) = b(k,163) - lu(k,1248) * b(k,204) - b(k,146) = b(k,146) - lu(k,1247) * b(k,204) - b(k,203) = b(k,203) * lu(k,1234) - b(k,175) = b(k,175) - lu(k,1233) * b(k,203) - b(k,137) = b(k,137) - lu(k,1232) * b(k,203) - b(k,107) = b(k,107) - lu(k,1231) * b(k,203) - b(k,202) = b(k,202) * lu(k,1223) - b(k,195) = b(k,195) - lu(k,1222) * b(k,202) - b(k,201) = b(k,201) * lu(k,1211) - b(k,195) = b(k,195) - lu(k,1210) * b(k,201) - b(k,183) = b(k,183) - lu(k,1209) * b(k,201) - b(k,200) = b(k,200) * lu(k,1195) - b(k,199) = b(k,199) - lu(k,1194) * b(k,200) - b(k,195) = b(k,195) - lu(k,1193) * b(k,200) - b(k,193) = b(k,193) - lu(k,1192) * b(k,200) - b(k,191) = b(k,191) - lu(k,1191) * b(k,200) - b(k,176) = b(k,176) - lu(k,1190) * b(k,200) - b(k,169) = b(k,169) - lu(k,1189) * b(k,200) - b(k,163) = b(k,163) - lu(k,1188) * b(k,200) - b(k,120) = b(k,120) - lu(k,1187) * b(k,200) - b(k,115) = b(k,115) - lu(k,1186) * b(k,200) - b(k,199) = b(k,199) * lu(k,1175) - b(k,197) = b(k,197) - lu(k,1174) * b(k,199) - b(k,195) = b(k,195) - lu(k,1173) * b(k,199) - b(k,193) = b(k,193) - lu(k,1172) * b(k,199) - b(k,186) = b(k,186) - lu(k,1171) * b(k,199) - b(k,170) = b(k,170) - lu(k,1170) * b(k,199) - b(k,169) = b(k,169) - lu(k,1169) * b(k,199) - b(k,81) = b(k,81) - lu(k,1168) * b(k,199) - b(k,198) = b(k,198) * lu(k,1155) - b(k,197) = b(k,197) - lu(k,1154) * b(k,198) - b(k,196) = b(k,196) - lu(k,1153) * b(k,198) - b(k,195) = b(k,195) - lu(k,1152) * b(k,198) - b(k,193) = b(k,193) - lu(k,1151) * b(k,198) - b(k,192) = b(k,192) - lu(k,1150) * b(k,198) - b(k,182) = b(k,182) - lu(k,1149) * b(k,198) - b(k,87) = b(k,87) - lu(k,1148) * b(k,198) - b(k,197) = b(k,197) * lu(k,1142) - b(k,196) = b(k,196) * lu(k,1131) - b(k,169) = b(k,169) - lu(k,1130) * b(k,196) - b(k,119) = b(k,119) - lu(k,1129) * b(k,196) - b(k,195) = b(k,195) * lu(k,1125) - b(k,170) = b(k,170) - lu(k,1124) * b(k,195) - b(k,194) = b(k,194) * lu(k,1111) - b(k,193) = b(k,193) - lu(k,1110) * b(k,194) - b(k,190) = b(k,190) - lu(k,1109) * b(k,194) - b(k,182) = b(k,182) - lu(k,1108) * b(k,194) - b(k,170) = b(k,170) - lu(k,1107) * b(k,194) - b(k,169) = b(k,169) - lu(k,1106) * b(k,194) - b(k,154) = b(k,154) - lu(k,1105) * b(k,194) - b(k,87) = b(k,87) - lu(k,1104) * b(k,194) - b(k,193) = b(k,193) * lu(k,1098) - b(k,186) = b(k,186) - lu(k,1097) * b(k,193) - b(k,170) = b(k,170) - lu(k,1096) * b(k,193) - b(k,192) = b(k,192) * lu(k,1087) - b(k,191) = b(k,191) * lu(k,1075) - b(k,186) = b(k,186) - lu(k,1074) * b(k,191) - b(k,178) = b(k,178) - lu(k,1073) * b(k,191) - b(k,176) = b(k,176) - lu(k,1072) * b(k,191) - b(k,147) = b(k,147) - lu(k,1071) * b(k,191) - b(k,190) = b(k,190) * lu(k,1061) - b(k,182) = b(k,182) - lu(k,1060) * b(k,190) - b(k,170) = b(k,170) - lu(k,1059) * b(k,190) - b(k,189) = b(k,189) * lu(k,1047) - b(k,185) = b(k,185) - lu(k,1046) * b(k,189) - b(k,169) = b(k,169) - lu(k,1045) * b(k,189) - b(k,151) = b(k,151) - lu(k,1044) * b(k,189) - b(k,118) = b(k,118) - lu(k,1043) * b(k,189) - b(k,188) = b(k,188) * lu(k,1026) - b(k,183) = b(k,183) - lu(k,1025) * b(k,188) - b(k,176) = b(k,176) - lu(k,1024) * b(k,188) - b(k,170) = b(k,170) - lu(k,1023) * b(k,188) - b(k,166) = b(k,166) - lu(k,1022) * b(k,188) - b(k,158) = b(k,158) - lu(k,1021) * b(k,188) - b(k,187) = b(k,187) * lu(k,1001) - b(k,186) = b(k,186) - lu(k,1000) * b(k,187) - b(k,185) = b(k,185) - lu(k,999) * b(k,187) - b(k,183) = b(k,183) - lu(k,998) * b(k,187) - b(k,182) = b(k,182) - lu(k,997) * b(k,187) - b(k,181) = b(k,181) - lu(k,996) * b(k,187) - b(k,179) = b(k,179) - lu(k,995) * b(k,187) - b(k,170) = b(k,170) - lu(k,994) * b(k,187) - b(k,116) = b(k,116) - lu(k,993) * b(k,187) - b(k,85) = b(k,85) - lu(k,992) * b(k,187) - b(k,46) = b(k,46) - lu(k,991) * b(k,187) - b(k,43) = b(k,43) - lu(k,990) * b(k,187) - b(k,42) = b(k,42) - lu(k,989) * b(k,187) - b(k,41) = b(k,41) - lu(k,988) * b(k,187) - b(k,40) = b(k,40) - lu(k,987) * b(k,187) - b(k,39) = b(k,39) - lu(k,986) * b(k,187) - b(k,186) = b(k,186) * lu(k,981) - b(k,170) = b(k,170) - lu(k,980) * b(k,186) - b(k,39) = b(k,39) - lu(k,979) * b(k,186) - b(k,185) = b(k,185) * lu(k,971) - b(k,184) = b(k,184) * lu(k,950) - b(k,183) = b(k,183) - lu(k,949) * b(k,184) - b(k,182) = b(k,182) - lu(k,948) * b(k,184) - b(k,181) = b(k,181) - lu(k,947) * b(k,184) - b(k,179) = b(k,179) - lu(k,946) * b(k,184) - b(k,170) = b(k,170) - lu(k,945) * b(k,184) - b(k,116) = b(k,116) - lu(k,944) * b(k,184) - b(k,85) = b(k,85) - lu(k,943) * b(k,184) - b(k,51) = b(k,51) - lu(k,942) * b(k,184) - b(k,43) = b(k,43) - lu(k,941) * b(k,184) - b(k,42) = b(k,42) - lu(k,940) * b(k,184) - b(k,41) = b(k,41) - lu(k,939) * b(k,184) - b(k,40) = b(k,40) - lu(k,938) * b(k,184) - b(k,39) = b(k,39) - lu(k,937) * b(k,184) - end do - end subroutine lu_slv10 - subroutine lu_slv11( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,183) = b(k,183) * lu(k,931) - b(k,170) = b(k,170) - lu(k,930) * b(k,183) - b(k,182) = b(k,182) * lu(k,924) - b(k,181) = b(k,181) * lu(k,914) - b(k,169) = b(k,169) - lu(k,913) * b(k,181) - b(k,151) = b(k,151) - lu(k,912) * b(k,181) - b(k,132) = b(k,132) - lu(k,911) * b(k,181) - b(k,180) = b(k,180) * lu(k,901) - b(k,172) = b(k,172) - lu(k,900) * b(k,180) - b(k,75) = b(k,75) - lu(k,899) * b(k,180) - b(k,179) = b(k,179) * lu(k,889) - b(k,173) = b(k,173) - lu(k,888) * b(k,179) - b(k,157) = b(k,157) - lu(k,887) * b(k,179) - b(k,156) = b(k,156) - lu(k,886) * b(k,179) - b(k,153) = b(k,153) - lu(k,885) * b(k,179) - b(k,136) = b(k,136) - lu(k,884) * b(k,179) - b(k,178) = b(k,178) * lu(k,875) - b(k,177) = b(k,177) * lu(k,866) - b(k,100) = b(k,100) - lu(k,865) * b(k,177) - b(k,176) = b(k,176) * lu(k,859) - b(k,175) = b(k,175) * lu(k,853) - b(k,93) = b(k,93) - lu(k,852) * b(k,175) - b(k,174) = b(k,174) * lu(k,836) - b(k,48) = b(k,48) - lu(k,835) * b(k,174) - b(k,43) = b(k,43) - lu(k,834) * b(k,174) - b(k,42) = b(k,42) - lu(k,833) * b(k,174) - b(k,173) = b(k,173) * lu(k,825) - b(k,169) = b(k,169) - lu(k,824) * b(k,173) - b(k,110) = b(k,110) - lu(k,823) * b(k,173) - b(k,94) = b(k,94) - lu(k,822) * b(k,173) - b(k,172) = b(k,172) * lu(k,815) - b(k,75) = b(k,75) - lu(k,814) * b(k,172) - b(k,171) = b(k,171) * lu(k,806) - b(k,170) = b(k,170) * lu(k,803) - b(k,169) = b(k,169) * lu(k,799) - b(k,168) = b(k,168) * lu(k,789) - b(k,121) = b(k,121) - lu(k,788) * b(k,168) - b(k,167) = b(k,167) * lu(k,780) - b(k,86) = b(k,86) - lu(k,779) * b(k,167) - b(k,166) = b(k,166) * lu(k,770) - b(k,141) = b(k,141) - lu(k,769) * b(k,166) - b(k,165) = b(k,165) * lu(k,761) - b(k,164) = b(k,164) * lu(k,750) - b(k,161) = b(k,161) - lu(k,749) * b(k,164) - b(k,159) = b(k,159) - lu(k,748) * b(k,164) - b(k,147) = b(k,147) - lu(k,747) * b(k,164) - b(k,129) = b(k,129) - lu(k,746) * b(k,164) - b(k,106) = b(k,106) - lu(k,745) * b(k,164) - b(k,98) = b(k,98) - lu(k,744) * b(k,164) - b(k,163) = b(k,163) * lu(k,737) - b(k,66) = b(k,66) - lu(k,736) * b(k,163) - b(k,162) = b(k,162) * lu(k,726) - b(k,161) = b(k,161) - lu(k,725) * b(k,162) - b(k,155) = b(k,155) - lu(k,724) * b(k,162) - b(k,147) = b(k,147) - lu(k,723) * b(k,162) - b(k,129) = b(k,129) - lu(k,722) * b(k,162) - b(k,98) = b(k,98) - lu(k,721) * b(k,162) - b(k,161) = b(k,161) * lu(k,715) - b(k,160) = b(k,160) * lu(k,708) - b(k,96) = b(k,96) - lu(k,707) * b(k,160) - b(k,64) = b(k,64) - lu(k,706) * b(k,160) - b(k,159) = b(k,159) * lu(k,695) - b(k,147) = b(k,147) - lu(k,694) * b(k,159) - b(k,129) = b(k,129) - lu(k,693) * b(k,159) - b(k,106) = b(k,106) - lu(k,692) * b(k,159) - b(k,98) = b(k,98) - lu(k,691) * b(k,159) - b(k,158) = b(k,158) * lu(k,686) - b(k,157) = b(k,157) * lu(k,679) - b(k,105) = b(k,105) - lu(k,678) * b(k,157) - b(k,156) = b(k,156) * lu(k,668) - b(k,136) = b(k,136) - lu(k,667) * b(k,156) - b(k,155) = b(k,155) * lu(k,657) - b(k,147) = b(k,147) - lu(k,656) * b(k,155) - b(k,129) = b(k,129) - lu(k,655) * b(k,155) - b(k,98) = b(k,98) - lu(k,654) * b(k,155) - b(k,154) = b(k,154) * lu(k,644) - b(k,153) = b(k,153) * lu(k,634) - b(k,136) = b(k,136) - lu(k,633) * b(k,153) - b(k,152) = b(k,152) * lu(k,627) - b(k,130) = b(k,130) - lu(k,626) * b(k,152) - b(k,95) = b(k,95) - lu(k,625) * b(k,152) - b(k,151) = b(k,151) * lu(k,619) - b(k,150) = b(k,150) * lu(k,612) - b(k,149) = b(k,149) * lu(k,605) - b(k,148) = b(k,148) * lu(k,596) - b(k,147) = b(k,147) * lu(k,592) - b(k,146) = b(k,146) * lu(k,583) - b(k,145) = b(k,145) * lu(k,574) - b(k,144) = b(k,144) * lu(k,566) - b(k,143) = b(k,143) * lu(k,558) - b(k,142) = b(k,142) * lu(k,550) - b(k,141) = b(k,141) * lu(k,542) - b(k,140) = b(k,140) * lu(k,534) - b(k,139) = b(k,139) * lu(k,526) - b(k,138) = b(k,138) * lu(k,520) - b(k,67) = b(k,67) - lu(k,519) * b(k,138) - b(k,137) = b(k,137) * lu(k,513) - b(k,136) = b(k,136) * lu(k,508) - b(k,135) = b(k,135) * lu(k,501) - b(k,124) = b(k,124) - lu(k,500) * b(k,135) - b(k,134) = b(k,134) * lu(k,493) - b(k,77) = b(k,77) - lu(k,492) * b(k,134) - b(k,133) = b(k,133) * lu(k,485) - b(k,129) = b(k,129) - lu(k,484) * b(k,133) - b(k,122) = b(k,122) - lu(k,483) * b(k,133) - b(k,132) = b(k,132) * lu(k,476) - b(k,131) = b(k,131) * lu(k,469) - b(k,130) = b(k,130) * lu(k,465) - b(k,129) = b(k,129) * lu(k,462) - b(k,128) = b(k,128) * lu(k,456) - b(k,127) = b(k,127) * lu(k,450) - b(k,108) = b(k,108) - lu(k,449) * b(k,127) - b(k,126) = b(k,126) * lu(k,443) - b(k,125) = b(k,125) * lu(k,437) - b(k,109) = b(k,109) - lu(k,436) * b(k,125) - b(k,88) = b(k,88) - lu(k,435) * b(k,125) - b(k,124) = b(k,124) * lu(k,429) - b(k,123) = b(k,123) * lu(k,423) - b(k,122) = b(k,122) * lu(k,417) - b(k,121) = b(k,121) * lu(k,411) - b(k,120) = b(k,120) * lu(k,405) - b(k,119) = b(k,119) * lu(k,399) - b(k,118) = b(k,118) * lu(k,393) - b(k,117) = b(k,117) * lu(k,387) - b(k,116) = b(k,116) * lu(k,381) - b(k,115) = b(k,115) * lu(k,375) - b(k,114) = b(k,114) * lu(k,367) - b(k,113) = b(k,113) * lu(k,359) - b(k,112) = b(k,112) * lu(k,351) - b(k,111) = b(k,111) * lu(k,348) - b(k,110) = b(k,110) * lu(k,343) - b(k,109) = b(k,109) * lu(k,338) - b(k,88) = b(k,88) - lu(k,337) * b(k,109) - b(k,108) = b(k,108) * lu(k,332) - b(k,107) = b(k,107) * lu(k,327) - b(k,106) = b(k,106) * lu(k,322) - b(k,105) = b(k,105) * lu(k,317) - b(k,104) = b(k,104) * lu(k,312) - b(k,103) = b(k,103) * lu(k,306) - b(k,102) = b(k,102) * lu(k,300) - b(k,89) = b(k,89) - lu(k,299) * b(k,102) - b(k,101) = b(k,101) * lu(k,293) - b(k,100) = b(k,100) * lu(k,290) - b(k,99) = b(k,99) * lu(k,284) - b(k,98) = b(k,98) * lu(k,281) - b(k,97) = b(k,97) * lu(k,275) - b(k,96) = b(k,96) * lu(k,271) - b(k,95) = b(k,95) * lu(k,267) - b(k,94) = b(k,94) * lu(k,263) - b(k,93) = b(k,93) * lu(k,259) - b(k,65) = b(k,65) - lu(k,258) * b(k,93) - b(k,92) = b(k,92) * lu(k,253) - b(k,89) = b(k,89) - lu(k,252) * b(k,92) - b(k,91) = b(k,91) * lu(k,248) - b(k,90) = b(k,90) * lu(k,243) - b(k,89) = b(k,89) * lu(k,240) - b(k,88) = b(k,88) * lu(k,237) - b(k,87) = b(k,87) * lu(k,234) - b(k,86) = b(k,86) * lu(k,231) - b(k,85) = b(k,85) * lu(k,228) - b(k,84) = b(k,84) * lu(k,223) - b(k,83) = b(k,83) * lu(k,218) - b(k,82) = b(k,82) * lu(k,210) - b(k,80) = b(k,80) - lu(k,209) * b(k,82) - b(k,53) = b(k,53) - lu(k,208) * b(k,82) - b(k,81) = b(k,81) * lu(k,205) - b(k,80) = b(k,80) * lu(k,201) - b(k,79) = b(k,79) * lu(k,196) - b(k,78) = b(k,78) * lu(k,189) - b(k,52) = b(k,52) - lu(k,188) * b(k,78) - b(k,77) = b(k,77) * lu(k,185) - b(k,76) = b(k,76) * lu(k,181) - b(k,75) = b(k,75) * lu(k,179) - b(k,74) = b(k,74) * lu(k,174) - b(k,73) = b(k,73) * lu(k,170) - b(k,72) = b(k,72) * lu(k,164) - b(k,47) = b(k,47) - lu(k,163) * b(k,72) - b(k,71) = b(k,71) * lu(k,158) - b(k,70) = b(k,70) * lu(k,153) - b(k,69) = b(k,69) * lu(k,148) - b(k,68) = b(k,68) * lu(k,143) - b(k,67) = b(k,67) * lu(k,140) - b(k,66) = b(k,66) * lu(k,137) - b(k,65) = b(k,65) * lu(k,134) - b(k,64) = b(k,64) * lu(k,131) - b(k,63) = b(k,63) * lu(k,127) - b(k,62) = b(k,62) * lu(k,123) - b(k,61) = b(k,61) * lu(k,119) - b(k,60) = b(k,60) * lu(k,115) - b(k,59) = b(k,59) * lu(k,111) - b(k,58) = b(k,58) * lu(k,107) - b(k,57) = b(k,57) * lu(k,104) - b(k,56) = b(k,56) * lu(k,101) - b(k,55) = b(k,55) * lu(k,98) - b(k,54) = b(k,54) * lu(k,95) - b(k,53) = b(k,53) * lu(k,94) - b(k,43) = b(k,43) - lu(k,93) * b(k,53) - b(k,42) = b(k,42) - lu(k,92) * b(k,53) - b(k,41) = b(k,41) - lu(k,91) * b(k,53) - b(k,40) = b(k,40) - lu(k,90) * b(k,53) - b(k,39) = b(k,39) - lu(k,89) * b(k,53) - end do - end subroutine lu_slv11 - subroutine lu_slv12( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) -!----------------------------------------------------------------------- -! ... Local variables -!----------------------------------------------------------------------- - integer :: k -!----------------------------------------------------------------------- -! ... solve L * y = b -!----------------------------------------------------------------------- - do k = 1,avec_len - b(k,52) = b(k,52) * lu(k,88) - b(k,43) = b(k,43) - lu(k,87) * b(k,52) - b(k,42) = b(k,42) - lu(k,86) * b(k,52) - b(k,41) = b(k,41) - lu(k,85) * b(k,52) - b(k,40) = b(k,40) - lu(k,84) * b(k,52) - b(k,39) = b(k,39) - lu(k,83) * b(k,52) - b(k,51) = b(k,51) * lu(k,82) - b(k,43) = b(k,43) - lu(k,81) * b(k,51) - b(k,42) = b(k,42) - lu(k,80) * b(k,51) - b(k,41) = b(k,41) - lu(k,79) * b(k,51) - b(k,40) = b(k,40) - lu(k,78) * b(k,51) - b(k,39) = b(k,39) - lu(k,77) * b(k,51) - b(k,50) = b(k,50) * lu(k,76) - b(k,49) = b(k,49) - lu(k,75) * b(k,50) - b(k,49) = b(k,49) * lu(k,74) - b(k,43) = b(k,43) - lu(k,73) * b(k,49) - b(k,42) = b(k,42) - lu(k,72) * b(k,49) - b(k,41) = b(k,41) - lu(k,71) * b(k,49) - b(k,40) = b(k,40) - lu(k,70) * b(k,49) - b(k,39) = b(k,39) - lu(k,69) * b(k,49) - b(k,48) = b(k,48) * lu(k,68) - b(k,43) = b(k,43) - lu(k,67) * b(k,48) - b(k,42) = b(k,42) - lu(k,66) * b(k,48) - b(k,41) = b(k,41) - lu(k,65) * b(k,48) - b(k,40) = b(k,40) - lu(k,64) * b(k,48) - b(k,39) = b(k,39) - lu(k,63) * b(k,48) - b(k,47) = b(k,47) * lu(k,62) - b(k,43) = b(k,43) - lu(k,61) * b(k,47) - b(k,42) = b(k,42) - lu(k,60) * b(k,47) - b(k,41) = b(k,41) - lu(k,59) * b(k,47) - b(k,40) = b(k,40) - lu(k,58) * b(k,47) - b(k,39) = b(k,39) - lu(k,57) * b(k,47) - b(k,46) = b(k,46) * lu(k,56) - b(k,43) = b(k,43) - lu(k,55) * b(k,46) - b(k,42) = b(k,42) - lu(k,54) * b(k,46) - b(k,41) = b(k,41) - lu(k,53) * b(k,46) - b(k,40) = b(k,40) - lu(k,52) * b(k,46) - b(k,39) = b(k,39) - lu(k,51) * b(k,46) - b(k,45) = b(k,45) * lu(k,50) - b(k,43) = b(k,43) - lu(k,49) * b(k,45) - b(k,42) = b(k,42) - lu(k,48) * b(k,45) - b(k,41) = b(k,41) - lu(k,47) * b(k,45) - b(k,40) = b(k,40) - lu(k,46) * b(k,45) - b(k,39) = b(k,39) - lu(k,45) * b(k,45) - b(k,44) = b(k,44) * lu(k,44) - b(k,43) = b(k,43) * lu(k,43) - b(k,42) = b(k,42) * lu(k,42) - b(k,41) = b(k,41) * lu(k,41) - b(k,40) = b(k,40) * lu(k,40) - b(k,39) = b(k,39) * lu(k,39) - b(k,38) = b(k,38) * lu(k,38) - b(k,37) = b(k,37) * lu(k,37) - b(k,36) = b(k,36) * lu(k,36) - b(k,35) = b(k,35) * lu(k,35) - b(k,34) = b(k,34) * lu(k,34) - b(k,33) = b(k,33) * lu(k,33) - b(k,32) = b(k,32) * lu(k,32) - b(k,31) = b(k,31) * lu(k,31) - b(k,30) = b(k,30) * lu(k,30) - b(k,29) = b(k,29) * lu(k,29) - b(k,28) = b(k,28) * lu(k,28) - b(k,27) = b(k,27) * lu(k,27) - b(k,26) = b(k,26) * lu(k,26) - b(k,25) = b(k,25) * lu(k,25) - b(k,24) = b(k,24) * lu(k,24) - b(k,23) = b(k,23) * lu(k,23) - b(k,22) = b(k,22) * lu(k,22) - b(k,21) = b(k,21) * lu(k,21) - b(k,20) = b(k,20) * lu(k,20) - b(k,19) = b(k,19) * lu(k,19) - b(k,18) = b(k,18) * lu(k,18) - b(k,17) = b(k,17) * lu(k,17) - b(k,16) = b(k,16) * lu(k,16) - b(k,15) = b(k,15) * lu(k,15) - b(k,14) = b(k,14) * lu(k,14) - b(k,13) = b(k,13) * lu(k,13) - b(k,12) = b(k,12) * lu(k,12) - b(k,11) = b(k,11) * lu(k,11) - b(k,10) = b(k,10) * lu(k,10) - b(k,9) = b(k,9) * lu(k,9) - b(k,8) = b(k,8) * lu(k,8) - b(k,7) = b(k,7) * lu(k,7) - b(k,6) = b(k,6) * lu(k,6) - b(k,5) = b(k,5) * lu(k,5) - b(k,4) = b(k,4) * lu(k,4) - b(k,3) = b(k,3) * lu(k,3) - b(k,2) = b(k,2) * lu(k,2) - b(k,1) = b(k,1) * lu(k,1) - end do - end subroutine lu_slv12 - subroutine lu_slv( avec_len, lu, b ) - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : clscnt4, nzcnt - implicit none -!----------------------------------------------------------------------- -! ... Dummy args -!----------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: lu(veclen,max(1,nzcnt)) - real(r8), intent(inout) :: b(veclen,clscnt4) - call lu_slv01( avec_len, lu, b ) - call lu_slv02( avec_len, lu, b ) - call lu_slv03( avec_len, lu, b ) - call lu_slv04( avec_len, lu, b ) - call lu_slv05( avec_len, lu, b ) - call lu_slv06( avec_len, lu, b ) - call lu_slv07( avec_len, lu, b ) - call lu_slv08( avec_len, lu, b ) - call lu_slv09( avec_len, lu, b ) - call lu_slv10( avec_len, lu, b ) - call lu_slv11( avec_len, lu, b ) - call lu_slv12( avec_len, lu, b ) - end subroutine lu_slv - end module mo_lu_solve diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_nln_matrix.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_nln_matrix.F90 deleted file mode 100644 index af8ea47ddf..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_nln_matrix.F90 +++ /dev/null @@ -1,3697 +0,0 @@ - module mo_nln_matrix - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only: veclen - private - public :: nlnmat - contains - subroutine nlnmat01( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,634) = -(rxt(k,356)*y(k,219)) - mat(k,1630) = -rxt(k,356)*y(k,1) - mat(k,1875) = rxt(k,359)*y(k,191) - mat(k,885) = rxt(k,359)*y(k,124) - mat(k,668) = -(rxt(k,360)*y(k,219)) - mat(k,1633) = -rxt(k,360)*y(k,2) - mat(k,886) = rxt(k,357)*y(k,205) - mat(k,2060) = rxt(k,357)*y(k,191) - mat(k,1001) = -(rxt(k,439)*y(k,126) + rxt(k,440)*y(k,135) + rxt(k,441) & - *y(k,219)) - mat(k,1747) = -rxt(k,439)*y(k,6) - mat(k,2223) = -rxt(k,440)*y(k,6) - mat(k,1663) = -rxt(k,441)*y(k,6) - mat(k,164) = -(rxt(k,398)*y(k,219)) - mat(k,1561) = -rxt(k,398)*y(k,7) - mat(k,417) = -(rxt(k,401)*y(k,219)) - mat(k,1601) = -rxt(k,401)*y(k,8) - mat(k,483) = rxt(k,399)*y(k,205) - mat(k,2041) = rxt(k,399)*y(k,193) - mat(k,165) = .120_r8*rxt(k,398)*y(k,219) - mat(k,1562) = .120_r8*rxt(k,398)*y(k,7) - mat(k,993) = .100_r8*rxt(k,440)*y(k,135) - mat(k,944) = .100_r8*rxt(k,443)*y(k,135) - mat(k,2207) = .100_r8*rxt(k,440)*y(k,6) + .100_r8*rxt(k,443)*y(k,110) - mat(k,1862) = .500_r8*rxt(k,400)*y(k,193) + .200_r8*rxt(k,427)*y(k,225) & - + .060_r8*rxt(k,433)*y(k,228) - mat(k,484) = .500_r8*rxt(k,400)*y(k,124) - mat(k,722) = .200_r8*rxt(k,427)*y(k,124) - mat(k,746) = .060_r8*rxt(k,433)*y(k,124) - mat(k,1856) = .200_r8*rxt(k,427)*y(k,225) + .200_r8*rxt(k,433)*y(k,228) - mat(k,721) = .200_r8*rxt(k,427)*y(k,124) - mat(k,744) = .200_r8*rxt(k,433)*y(k,124) - mat(k,1872) = .200_r8*rxt(k,427)*y(k,225) + .150_r8*rxt(k,433)*y(k,228) - mat(k,723) = .200_r8*rxt(k,427)*y(k,124) - mat(k,747) = .150_r8*rxt(k,433)*y(k,124) - mat(k,1857) = .210_r8*rxt(k,433)*y(k,228) - mat(k,745) = .210_r8*rxt(k,433)*y(k,124) - mat(k,228) = -(rxt(k,361)*y(k,219)) - mat(k,1572) = -rxt(k,361)*y(k,15) - mat(k,992) = .050_r8*rxt(k,440)*y(k,135) - mat(k,943) = .050_r8*rxt(k,443)*y(k,135) - mat(k,2206) = .050_r8*rxt(k,440)*y(k,6) + .050_r8*rxt(k,443)*y(k,110) - mat(k,351) = -(rxt(k,327)*y(k,126) + rxt(k,328)*y(k,219)) - mat(k,1737) = -rxt(k,327)*y(k,16) - mat(k,1592) = -rxt(k,328)*y(k,16) - mat(k,1417) = -(rxt(k,211)*y(k,42) + rxt(k,212)*y(k,205) + rxt(k,213) & - *y(k,135)) - mat(k,1483) = -rxt(k,211)*y(k,17) - mat(k,2104) = -rxt(k,212)*y(k,17) - mat(k,2243) = -rxt(k,213)*y(k,17) - mat(k,2152) = 4.000_r8*rxt(k,214)*y(k,19) + (rxt(k,215)+rxt(k,216))*y(k,59) & - + rxt(k,219)*y(k,124) + rxt(k,222)*y(k,134) + rxt(k,469) & - *y(k,151) + rxt(k,223)*y(k,219) - mat(k,145) = rxt(k,201)*y(k,218) - mat(k,151) = rxt(k,227)*y(k,218) - mat(k,470) = 2.000_r8*rxt(k,238)*y(k,56) + 2.000_r8*rxt(k,250)*y(k,218) & - + 2.000_r8*rxt(k,239)*y(k,219) - mat(k,597) = rxt(k,240)*y(k,56) + rxt(k,251)*y(k,218) + rxt(k,241)*y(k,219) - mat(k,388) = 3.000_r8*rxt(k,245)*y(k,56) + 3.000_r8*rxt(k,228)*y(k,218) & - + 3.000_r8*rxt(k,246)*y(k,219) - mat(k,1997) = 2.000_r8*rxt(k,238)*y(k,41) + rxt(k,240)*y(k,43) & - + 3.000_r8*rxt(k,245)*y(k,55) - mat(k,1714) = (rxt(k,215)+rxt(k,216))*y(k,19) - mat(k,109) = 2.000_r8*rxt(k,229)*y(k,218) - mat(k,807) = rxt(k,224)*y(k,134) + rxt(k,230)*y(k,218) + rxt(k,225)*y(k,219) - mat(k,1914) = rxt(k,219)*y(k,19) - mat(k,2182) = rxt(k,222)*y(k,19) + rxt(k,224)*y(k,81) - mat(k,1235) = rxt(k,469)*y(k,19) - mat(k,1523) = rxt(k,201)*y(k,34) + rxt(k,227)*y(k,35) + 2.000_r8*rxt(k,250) & - *y(k,41) + rxt(k,251)*y(k,43) + 3.000_r8*rxt(k,228)*y(k,55) & - + 2.000_r8*rxt(k,229)*y(k,78) + rxt(k,230)*y(k,81) - mat(k,1687) = rxt(k,223)*y(k,19) + 2.000_r8*rxt(k,239)*y(k,41) + rxt(k,241) & - *y(k,43) + 3.000_r8*rxt(k,246)*y(k,55) + rxt(k,225)*y(k,81) - mat(k,2146) = rxt(k,217)*y(k,59) - mat(k,1708) = rxt(k,217)*y(k,19) - mat(k,2124) = (rxt(k,530)+rxt(k,535))*y(k,91) - mat(k,779) = (rxt(k,530)+rxt(k,535))*y(k,85) - mat(k,2166) = -(4._r8*rxt(k,214)*y(k,19) + (rxt(k,215) + rxt(k,216) + rxt(k,217) & - ) * y(k,59) + rxt(k,218)*y(k,205) + rxt(k,219)*y(k,124) & - + rxt(k,220)*y(k,125) + rxt(k,222)*y(k,134) + rxt(k,223) & - *y(k,219) + rxt(k,469)*y(k,151)) - mat(k,1728) = -(rxt(k,215) + rxt(k,216) + rxt(k,217)) * y(k,19) - mat(k,2119) = -rxt(k,218)*y(k,19) - mat(k,1929) = -rxt(k,219)*y(k,19) - mat(k,1973) = -rxt(k,220)*y(k,19) - mat(k,2197) = -rxt(k,222)*y(k,19) - mat(k,1702) = -rxt(k,223)*y(k,19) - mat(k,1243) = -rxt(k,469)*y(k,19) - mat(k,1423) = rxt(k,213)*y(k,135) - mat(k,564) = rxt(k,221)*y(k,134) - mat(k,811) = rxt(k,231)*y(k,218) - mat(k,785) = rxt(k,226)*y(k,134) - mat(k,2197) = mat(k,2197) + rxt(k,221)*y(k,20) + rxt(k,226)*y(k,91) - mat(k,2258) = rxt(k,213)*y(k,17) - mat(k,1538) = rxt(k,231)*y(k,81) - mat(k,558) = -(rxt(k,221)*y(k,134)) - mat(k,2172) = -rxt(k,221)*y(k,20) - mat(k,2148) = rxt(k,220)*y(k,125) - mat(k,1941) = rxt(k,220)*y(k,19) - mat(k,237) = -(rxt(k,402)*y(k,219)) - mat(k,1574) = -rxt(k,402)*y(k,22) - mat(k,1854) = rxt(k,405)*y(k,195) - mat(k,435) = rxt(k,405)*y(k,124) - mat(k,338) = -(rxt(k,404)*y(k,219)) - mat(k,1589) = -rxt(k,404)*y(k,23) - mat(k,436) = rxt(k,403)*y(k,205) - mat(k,2035) = rxt(k,403)*y(k,195) - mat(k,293) = -(rxt(k,276)*y(k,56) + rxt(k,277)*y(k,219)) - mat(k,1978) = -rxt(k,276)*y(k,24) - mat(k,1583) = -rxt(k,277)*y(k,24) - mat(k,550) = -(rxt(k,278)*y(k,56) + rxt(k,279)*y(k,135) + rxt(k,304)*y(k,219)) - mat(k,1983) = -rxt(k,278)*y(k,25) - mat(k,2210) = -rxt(k,279)*y(k,25) - mat(k,1620) = -rxt(k,304)*y(k,25) - mat(k,263) = -(rxt(k,284)*y(k,219)) - mat(k,1580) = -rxt(k,284)*y(k,26) - mat(k,822) = .800_r8*rxt(k,280)*y(k,196) + .200_r8*rxt(k,281)*y(k,200) - mat(k,1789) = .200_r8*rxt(k,281)*y(k,196) - mat(k,343) = -(rxt(k,285)*y(k,219)) - mat(k,1590) = -rxt(k,285)*y(k,27) - mat(k,823) = rxt(k,282)*y(k,205) - mat(k,2036) = rxt(k,282)*y(k,196) - mat(k,306) = -(rxt(k,286)*y(k,56) + rxt(k,287)*y(k,219)) - mat(k,1979) = -rxt(k,286)*y(k,28) - mat(k,1585) = -rxt(k,287)*y(k,28) - mat(k,1026) = -(rxt(k,307)*y(k,126) + rxt(k,308)*y(k,135) + rxt(k,325) & - *y(k,219)) - mat(k,1748) = -rxt(k,307)*y(k,29) - mat(k,2224) = -rxt(k,308)*y(k,29) - mat(k,1664) = -rxt(k,325)*y(k,29) - mat(k,838) = .130_r8*rxt(k,385)*y(k,135) - mat(k,2224) = mat(k,2224) + .130_r8*rxt(k,385)*y(k,98) - mat(k,411) = -(rxt(k,312)*y(k,219)) - mat(k,1600) = -rxt(k,312)*y(k,30) - mat(k,788) = rxt(k,310)*y(k,205) - mat(k,2040) = rxt(k,310)*y(k,197) - mat(k,111) = -(rxt(k,313)*y(k,219)) - mat(k,1558) = -rxt(k,313)*y(k,31) - mat(k,267) = -(rxt(k,408)*y(k,219)) - mat(k,1581) = -rxt(k,408)*y(k,32) - mat(k,625) = rxt(k,406)*y(k,205) - mat(k,2030) = rxt(k,406)*y(k,198) - mat(k,101) = -(rxt(k,200)*y(k,218)) - mat(k,1501) = -rxt(k,200)*y(k,33) - mat(k,143) = -(rxt(k,201)*y(k,218)) - mat(k,1506) = -rxt(k,201)*y(k,34) - mat(k,148) = -(rxt(k,227)*y(k,218)) - mat(k,1507) = -rxt(k,227)*y(k,35) - mat(k,115) = -(rxt(k,202)*y(k,218)) - mat(k,1503) = -rxt(k,202)*y(k,36) - mat(k,153) = -(rxt(k,203)*y(k,218)) - mat(k,1508) = -rxt(k,203)*y(k,37) - mat(k,119) = -(rxt(k,204)*y(k,218)) - mat(k,1504) = -rxt(k,204)*y(k,38) - mat(k,158) = -(rxt(k,205)*y(k,218)) - mat(k,1509) = -rxt(k,205)*y(k,39) - mat(k,123) = -(rxt(k,206)*y(k,218)) - mat(k,1505) = -rxt(k,206)*y(k,40) - mat(k,469) = -(rxt(k,238)*y(k,56) + rxt(k,239)*y(k,219) + rxt(k,250)*y(k,218)) - mat(k,1982) = -rxt(k,238)*y(k,41) - mat(k,1609) = -rxt(k,239)*y(k,41) - mat(k,1518) = -rxt(k,250)*y(k,41) - mat(k,1487) = -(rxt(k,175)*y(k,56) + rxt(k,211)*y(k,17) + rxt(k,255)*y(k,205) & - + rxt(k,256)*y(k,126) + rxt(k,257)*y(k,134) + rxt(k,258) & - *y(k,219)) - mat(k,2001) = -rxt(k,175)*y(k,42) - mat(k,1419) = -rxt(k,211)*y(k,42) - mat(k,2108) = -rxt(k,255)*y(k,42) - mat(k,1774) = -rxt(k,256)*y(k,42) - mat(k,2186) = -rxt(k,257)*y(k,42) - mat(k,1691) = -rxt(k,258)*y(k,42) - mat(k,640) = .400_r8*rxt(k,356)*y(k,219) - mat(k,1011) = .340_r8*rxt(k,440)*y(k,135) - mat(k,355) = .500_r8*rxt(k,327)*y(k,126) - mat(k,554) = rxt(k,279)*y(k,135) - mat(k,1033) = .500_r8*rxt(k,308)*y(k,135) - mat(k,615) = .500_r8*rxt(k,296)*y(k,219) - mat(k,800) = rxt(k,263)*y(k,219) - mat(k,458) = .300_r8*rxt(k,264)*y(k,219) - mat(k,1435) = (rxt(k,272)+rxt(k,273))*y(k,218) - mat(k,1717) = rxt(k,182)*y(k,200) - mat(k,1100) = .800_r8*rxt(k,301)*y(k,219) - mat(k,846) = .910_r8*rxt(k,385)*y(k,135) - mat(k,588) = .300_r8*rxt(k,376)*y(k,219) - mat(k,1201) = .800_r8*rxt(k,380)*y(k,200) - mat(k,1216) = .120_r8*rxt(k,338)*y(k,135) - mat(k,578) = .500_r8*rxt(k,351)*y(k,219) - mat(k,961) = .340_r8*rxt(k,443)*y(k,135) - mat(k,1339) = .600_r8*rxt(k,352)*y(k,135) - mat(k,1918) = .100_r8*rxt(k,358)*y(k,191) + rxt(k,262)*y(k,200) & - + .500_r8*rxt(k,329)*y(k,202) + .500_r8*rxt(k,298)*y(k,204) & - + .920_r8*rxt(k,368)*y(k,207) + .250_r8*rxt(k,336)*y(k,211) & - + rxt(k,345)*y(k,213) + rxt(k,319)*y(k,221) + rxt(k,323) & - *y(k,222) + .340_r8*rxt(k,452)*y(k,223) + .320_r8*rxt(k,457) & - *y(k,224) + .250_r8*rxt(k,393)*y(k,227) - mat(k,1774) = mat(k,1774) + .500_r8*rxt(k,327)*y(k,16) + rxt(k,369)*y(k,207) & - + .250_r8*rxt(k,335)*y(k,211) + rxt(k,346)*y(k,213) - mat(k,2247) = .340_r8*rxt(k,440)*y(k,6) + rxt(k,279)*y(k,25) & - + .500_r8*rxt(k,308)*y(k,29) + .910_r8*rxt(k,385)*y(k,98) & - + .120_r8*rxt(k,338)*y(k,105) + .340_r8*rxt(k,443)*y(k,110) & - + .600_r8*rxt(k,352)*y(k,111) - mat(k,529) = rxt(k,303)*y(k,219) - mat(k,1065) = .680_r8*rxt(k,461)*y(k,219) - mat(k,893) = .100_r8*rxt(k,358)*y(k,124) - mat(k,827) = .700_r8*rxt(k,281)*y(k,200) - mat(k,792) = rxt(k,309)*y(k,200) - mat(k,1391) = rxt(k,292)*y(k,200) + rxt(k,365)*y(k,207) + .250_r8*rxt(k,332) & - *y(k,211) + rxt(k,341)*y(k,213) + .250_r8*rxt(k,390)*y(k,227) - mat(k,1826) = rxt(k,182)*y(k,59) + .800_r8*rxt(k,380)*y(k,101) + rxt(k,262) & - *y(k,124) + .700_r8*rxt(k,281)*y(k,196) + rxt(k,309)*y(k,197) & - + rxt(k,292)*y(k,199) + (4.000_r8*rxt(k,259)+2.000_r8*rxt(k,260)) & - *y(k,200) + 1.500_r8*rxt(k,366)*y(k,207) + .750_r8*rxt(k,371) & - *y(k,208) + .880_r8*rxt(k,333)*y(k,211) + 2.000_r8*rxt(k,342) & - *y(k,213) + .750_r8*rxt(k,445)*y(k,217) + .800_r8*rxt(k,321) & - *y(k,222) + .930_r8*rxt(k,450)*y(k,223) + .950_r8*rxt(k,455) & - *y(k,224) + .800_r8*rxt(k,391)*y(k,227) - mat(k,570) = .500_r8*rxt(k,329)*y(k,124) - mat(k,710) = .500_r8*rxt(k,298)*y(k,124) - mat(k,2108) = mat(k,2108) + .450_r8*rxt(k,343)*y(k,213) + .150_r8*rxt(k,322) & - *y(k,222) - mat(k,1264) = .920_r8*rxt(k,368)*y(k,124) + rxt(k,369)*y(k,126) + rxt(k,365) & - *y(k,199) + 1.500_r8*rxt(k,366)*y(k,200) - mat(k,1296) = .750_r8*rxt(k,371)*y(k,200) - mat(k,1317) = .250_r8*rxt(k,336)*y(k,124) + .250_r8*rxt(k,335)*y(k,126) & - + .250_r8*rxt(k,332)*y(k,199) + .880_r8*rxt(k,333)*y(k,200) - mat(k,1359) = rxt(k,345)*y(k,124) + rxt(k,346)*y(k,126) + rxt(k,341)*y(k,199) & - + 2.000_r8*rxt(k,342)*y(k,200) + .450_r8*rxt(k,343)*y(k,205) & - + 4.000_r8*rxt(k,344)*y(k,213) - mat(k,1052) = .750_r8*rxt(k,445)*y(k,200) - mat(k,1527) = (rxt(k,272)+rxt(k,273))*y(k,54) - mat(k,1691) = mat(k,1691) + .400_r8*rxt(k,356)*y(k,1) + .500_r8*rxt(k,296) & - *y(k,51) + rxt(k,263)*y(k,52) + .300_r8*rxt(k,264)*y(k,53) & - + .800_r8*rxt(k,301)*y(k,74) + .300_r8*rxt(k,376)*y(k,99) & - + .500_r8*rxt(k,351)*y(k,109) + rxt(k,303)*y(k,140) & - + .680_r8*rxt(k,461)*y(k,180) - mat(k,773) = rxt(k,319)*y(k,124) - mat(k,1135) = rxt(k,323)*y(k,124) + .800_r8*rxt(k,321)*y(k,200) & - + .150_r8*rxt(k,322)*y(k,205) - mat(k,1116) = .340_r8*rxt(k,452)*y(k,124) + .930_r8*rxt(k,450)*y(k,200) - mat(k,918) = .320_r8*rxt(k,457)*y(k,124) + .950_r8*rxt(k,455)*y(k,200) - mat(k,1178) = .250_r8*rxt(k,393)*y(k,124) + .250_r8*rxt(k,390)*y(k,199) & - + .800_r8*rxt(k,391)*y(k,200) - end do - end subroutine nlnmat01 - subroutine nlnmat02( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,596) = -(rxt(k,240)*y(k,56) + rxt(k,241)*y(k,219) + rxt(k,251)*y(k,218)) - mat(k,1984) = -rxt(k,240)*y(k,43) - mat(k,1625) = -rxt(k,241)*y(k,43) - mat(k,1519) = -rxt(k,251)*y(k,43) - mat(k,127) = -(rxt(k,242)*y(k,219)) - mat(k,1559) = -rxt(k,242)*y(k,44) - mat(k,1087) = -(rxt(k,288)*y(k,126) + rxt(k,289)*y(k,219)) - mat(k,1752) = -rxt(k,288)*y(k,45) - mat(k,1668) = -rxt(k,289)*y(k,45) - mat(k,638) = .800_r8*rxt(k,356)*y(k,219) - mat(k,354) = rxt(k,327)*y(k,126) - mat(k,264) = rxt(k,284)*y(k,219) - mat(k,345) = .500_r8*rxt(k,285)*y(k,219) - mat(k,1027) = .500_r8*rxt(k,308)*y(k,135) - mat(k,1329) = .100_r8*rxt(k,352)*y(k,135) - mat(k,1897) = .400_r8*rxt(k,358)*y(k,191) + rxt(k,283)*y(k,196) & - + .270_r8*rxt(k,311)*y(k,197) + rxt(k,329)*y(k,202) + rxt(k,348) & - *y(k,215) + rxt(k,319)*y(k,221) - mat(k,1752) = mat(k,1752) + rxt(k,327)*y(k,16) - mat(k,2227) = .500_r8*rxt(k,308)*y(k,29) + .100_r8*rxt(k,352)*y(k,111) - mat(k,891) = .400_r8*rxt(k,358)*y(k,124) - mat(k,826) = rxt(k,283)*y(k,124) + 3.200_r8*rxt(k,280)*y(k,196) & - + .800_r8*rxt(k,281)*y(k,200) - mat(k,791) = .270_r8*rxt(k,311)*y(k,124) - mat(k,1807) = .800_r8*rxt(k,281)*y(k,196) - mat(k,568) = rxt(k,329)*y(k,124) - mat(k,2087) = .200_r8*rxt(k,347)*y(k,215) - mat(k,680) = rxt(k,348)*y(k,124) + .200_r8*rxt(k,347)*y(k,205) - mat(k,1668) = mat(k,1668) + .800_r8*rxt(k,356)*y(k,1) + rxt(k,284)*y(k,26) & - + .500_r8*rxt(k,285)*y(k,27) - mat(k,771) = rxt(k,319)*y(k,124) - mat(k,367) = -(rxt(k,243)*y(k,56) + rxt(k,244)*y(k,219)) - mat(k,1980) = -rxt(k,243)*y(k,46) - mat(k,1594) = -rxt(k,244)*y(k,46) - mat(k,104) = -(rxt(k,290)*y(k,219)) - mat(k,1557) = -rxt(k,290)*y(k,47) - mat(k,924) = -(rxt(k,326)*y(k,219)) - mat(k,1658) = -rxt(k,326)*y(k,48) - mat(k,637) = .800_r8*rxt(k,356)*y(k,219) - mat(k,997) = .520_r8*rxt(k,440)*y(k,135) - mat(k,353) = .500_r8*rxt(k,327)*y(k,126) - mat(k,948) = .520_r8*rxt(k,443)*y(k,135) - mat(k,1890) = .250_r8*rxt(k,358)*y(k,191) + .820_r8*rxt(k,311)*y(k,197) & - + .500_r8*rxt(k,329)*y(k,202) + .270_r8*rxt(k,452)*y(k,223) & - + .040_r8*rxt(k,457)*y(k,224) - mat(k,1742) = .500_r8*rxt(k,327)*y(k,16) - mat(k,2218) = .520_r8*rxt(k,440)*y(k,6) + .520_r8*rxt(k,443)*y(k,110) - mat(k,1060) = .500_r8*rxt(k,461)*y(k,219) - mat(k,890) = .250_r8*rxt(k,358)*y(k,124) - mat(k,790) = .820_r8*rxt(k,311)*y(k,124) + .820_r8*rxt(k,309)*y(k,200) - mat(k,1801) = .820_r8*rxt(k,309)*y(k,197) + .150_r8*rxt(k,450)*y(k,223) & - + .025_r8*rxt(k,455)*y(k,224) - mat(k,567) = .500_r8*rxt(k,329)*y(k,124) - mat(k,1658) = mat(k,1658) + .800_r8*rxt(k,356)*y(k,1) + .500_r8*rxt(k,461) & - *y(k,180) - mat(k,1108) = .270_r8*rxt(k,452)*y(k,124) + .150_r8*rxt(k,450)*y(k,200) - mat(k,915) = .040_r8*rxt(k,457)*y(k,124) + .025_r8*rxt(k,455)*y(k,200) - mat(k,1223) = -(rxt(k,314)*y(k,126) + rxt(k,315)*y(k,219)) - mat(k,1762) = -rxt(k,314)*y(k,49) - mat(k,1678) = -rxt(k,315)*y(k,49) - mat(k,1143) = rxt(k,316)*y(k,219) - mat(k,1212) = .880_r8*rxt(k,338)*y(k,135) - mat(k,1332) = .500_r8*rxt(k,352)*y(k,135) - mat(k,1907) = .170_r8*rxt(k,411)*y(k,201) + .050_r8*rxt(k,374)*y(k,208) & - + .250_r8*rxt(k,336)*y(k,211) + .170_r8*rxt(k,417)*y(k,214) & - + .400_r8*rxt(k,427)*y(k,225) + .250_r8*rxt(k,393)*y(k,227) & - + .540_r8*rxt(k,433)*y(k,228) + .510_r8*rxt(k,436)*y(k,230) - mat(k,1762) = mat(k,1762) + .050_r8*rxt(k,375)*y(k,208) + .250_r8*rxt(k,335) & - *y(k,211) + .250_r8*rxt(k,394)*y(k,227) - mat(k,860) = rxt(k,317)*y(k,219) - mat(k,2235) = .880_r8*rxt(k,338)*y(k,105) + .500_r8*rxt(k,352)*y(k,111) - mat(k,1382) = .250_r8*rxt(k,332)*y(k,211) + .250_r8*rxt(k,390)*y(k,227) - mat(k,1816) = .240_r8*rxt(k,333)*y(k,211) + .500_r8*rxt(k,321)*y(k,222) & - + .100_r8*rxt(k,391)*y(k,227) - mat(k,763) = .170_r8*rxt(k,411)*y(k,124) + .070_r8*rxt(k,410)*y(k,205) - mat(k,2096) = .070_r8*rxt(k,410)*y(k,201) + .070_r8*rxt(k,416)*y(k,214) - mat(k,1289) = .050_r8*rxt(k,374)*y(k,124) + .050_r8*rxt(k,375)*y(k,126) - mat(k,1312) = .250_r8*rxt(k,336)*y(k,124) + .250_r8*rxt(k,335)*y(k,126) & - + .250_r8*rxt(k,332)*y(k,199) + .240_r8*rxt(k,333)*y(k,200) - mat(k,878) = .170_r8*rxt(k,417)*y(k,124) + .070_r8*rxt(k,416)*y(k,205) - mat(k,1678) = mat(k,1678) + rxt(k,316)*y(k,95) + rxt(k,317)*y(k,127) - mat(k,1133) = .500_r8*rxt(k,321)*y(k,200) - mat(k,731) = .400_r8*rxt(k,427)*y(k,124) - mat(k,1176) = .250_r8*rxt(k,393)*y(k,124) + .250_r8*rxt(k,394)*y(k,126) & - + .250_r8*rxt(k,390)*y(k,199) + .100_r8*rxt(k,391)*y(k,200) - mat(k,755) = .540_r8*rxt(k,433)*y(k,124) - mat(k,503) = .510_r8*rxt(k,436)*y(k,124) - mat(k,686) = -(rxt(k,295)*y(k,219)) - mat(k,1635) = -rxt(k,295)*y(k,50) - mat(k,1021) = .120_r8*rxt(k,308)*y(k,135) - mat(k,2212) = .120_r8*rxt(k,308)*y(k,29) - mat(k,1372) = .100_r8*rxt(k,292)*y(k,200) + .150_r8*rxt(k,293)*y(k,205) - mat(k,1794) = .100_r8*rxt(k,292)*y(k,199) - mat(k,2062) = .150_r8*rxt(k,293)*y(k,199) + .150_r8*rxt(k,343)*y(k,213) - mat(k,1351) = .150_r8*rxt(k,343)*y(k,205) - mat(k,612) = -(rxt(k,296)*y(k,219)) - mat(k,1627) = -rxt(k,296)*y(k,51) - mat(k,1371) = .400_r8*rxt(k,293)*y(k,205) - mat(k,2056) = .400_r8*rxt(k,293)*y(k,199) + .400_r8*rxt(k,343)*y(k,213) - mat(k,1350) = .400_r8*rxt(k,343)*y(k,205) - mat(k,799) = -(rxt(k,263)*y(k,219)) - mat(k,1645) = -rxt(k,263)*y(k,52) - mat(k,1189) = .200_r8*rxt(k,380)*y(k,200) - mat(k,824) = .300_r8*rxt(k,281)*y(k,200) - mat(k,1796) = .200_r8*rxt(k,380)*y(k,101) + .300_r8*rxt(k,281)*y(k,196) & - + 2.000_r8*rxt(k,260)*y(k,200) + .250_r8*rxt(k,366)*y(k,207) & - + .250_r8*rxt(k,371)*y(k,208) + .250_r8*rxt(k,333)*y(k,211) & - + .250_r8*rxt(k,445)*y(k,217) + .500_r8*rxt(k,321)*y(k,222) & - + .250_r8*rxt(k,450)*y(k,223) + .250_r8*rxt(k,455)*y(k,224) & - + .300_r8*rxt(k,391)*y(k,227) - mat(k,1249) = .250_r8*rxt(k,366)*y(k,200) - mat(k,1279) = .250_r8*rxt(k,371)*y(k,200) - mat(k,1307) = .250_r8*rxt(k,333)*y(k,200) - mat(k,1045) = .250_r8*rxt(k,445)*y(k,200) - mat(k,1130) = .500_r8*rxt(k,321)*y(k,200) - mat(k,1106) = .250_r8*rxt(k,450)*y(k,200) - mat(k,913) = .250_r8*rxt(k,455)*y(k,200) - mat(k,1169) = .300_r8*rxt(k,391)*y(k,200) - mat(k,456) = -(rxt(k,264)*y(k,219)) - mat(k,1606) = -rxt(k,264)*y(k,53) - mat(k,1792) = rxt(k,261)*y(k,205) - mat(k,2047) = rxt(k,261)*y(k,200) - mat(k,1432) = -(rxt(k,176)*y(k,56) + rxt(k,232)*y(k,73) + rxt(k,265)*y(k,219) & - + (rxt(k,271) + rxt(k,272) + rxt(k,273)) * y(k,218)) - mat(k,1998) = -rxt(k,176)*y(k,54) - mat(k,868) = -rxt(k,232)*y(k,54) - mat(k,1688) = -rxt(k,265)*y(k,54) - mat(k,1524) = -(rxt(k,271) + rxt(k,272) + rxt(k,273)) * y(k,54) - mat(k,1032) = .100_r8*rxt(k,308)*y(k,135) - mat(k,2244) = .100_r8*rxt(k,308)*y(k,29) - mat(k,387) = -(rxt(k,228)*y(k,218) + rxt(k,245)*y(k,56) + rxt(k,246)*y(k,219)) - mat(k,1517) = -rxt(k,228)*y(k,55) - mat(k,1981) = -rxt(k,245)*y(k,55) - mat(k,1596) = -rxt(k,246)*y(k,55) - mat(k,2009) = -(rxt(k,175)*y(k,42) + rxt(k,176)*y(k,54) + rxt(k,177)*y(k,77) & - + rxt(k,178)*y(k,79) + (rxt(k,179) + rxt(k,180)) * y(k,205) & - + rxt(k,181)*y(k,135) + rxt(k,188)*y(k,60) + rxt(k,197)*y(k,92) & - + rxt(k,238)*y(k,41) + rxt(k,240)*y(k,43) + rxt(k,243)*y(k,46) & - + rxt(k,245)*y(k,55) + rxt(k,286)*y(k,28)) - mat(k,1494) = -rxt(k,175)*y(k,56) - mat(k,1440) = -rxt(k,176)*y(k,56) - mat(k,1411) = -rxt(k,177)*y(k,56) - mat(k,607) = -rxt(k,178)*y(k,56) - mat(k,2116) = -(rxt(k,179) + rxt(k,180)) * y(k,56) - mat(k,2255) = -rxt(k,181)*y(k,56) - mat(k,907) = -rxt(k,188)*y(k,56) - mat(k,818) = -rxt(k,197)*y(k,56) - mat(k,473) = -rxt(k,238)*y(k,56) - mat(k,601) = -rxt(k,240)*y(k,56) - mat(k,371) = -rxt(k,243)*y(k,56) - mat(k,391) = -rxt(k,245)*y(k,56) - mat(k,309) = -rxt(k,286)*y(k,56) - mat(k,2163) = rxt(k,216)*y(k,59) - mat(k,103) = 4.000_r8*rxt(k,200)*y(k,218) - mat(k,147) = rxt(k,201)*y(k,218) - mat(k,118) = 2.000_r8*rxt(k,202)*y(k,218) - mat(k,157) = 2.000_r8*rxt(k,203)*y(k,218) - mat(k,122) = 2.000_r8*rxt(k,204)*y(k,218) - mat(k,162) = rxt(k,205)*y(k,218) - mat(k,126) = 2.000_r8*rxt(k,206)*y(k,218) - mat(k,129) = 3.000_r8*rxt(k,242)*y(k,219) - mat(k,371) = mat(k,371) + rxt(k,244)*y(k,219) - mat(k,1725) = rxt(k,216)*y(k,19) + (4.000_r8*rxt(k,183)+2.000_r8*rxt(k,185)) & - *y(k,59) + rxt(k,187)*y(k,124) + rxt(k,192)*y(k,134) & - + rxt(k,470)*y(k,151) + rxt(k,182)*y(k,200) + rxt(k,193) & - *y(k,219) - mat(k,251) = rxt(k,237)*y(k,218) - mat(k,247) = rxt(k,252)*y(k,218) + rxt(k,247)*y(k,219) - mat(k,257) = rxt(k,253)*y(k,218) + rxt(k,248)*y(k,219) - mat(k,304) = rxt(k,254)*y(k,218) + rxt(k,249)*y(k,219) - mat(k,2139) = rxt(k,195)*y(k,134) + rxt(k,207)*y(k,218) + rxt(k,196)*y(k,219) - mat(k,1926) = rxt(k,187)*y(k,59) - mat(k,2194) = rxt(k,192)*y(k,59) + rxt(k,195)*y(k,85) - mat(k,1241) = rxt(k,470)*y(k,59) - mat(k,1834) = rxt(k,182)*y(k,59) - mat(k,1535) = 4.000_r8*rxt(k,200)*y(k,33) + rxt(k,201)*y(k,34) & - + 2.000_r8*rxt(k,202)*y(k,36) + 2.000_r8*rxt(k,203)*y(k,37) & - + 2.000_r8*rxt(k,204)*y(k,38) + rxt(k,205)*y(k,39) & - + 2.000_r8*rxt(k,206)*y(k,40) + rxt(k,237)*y(k,65) + rxt(k,252) & - *y(k,82) + rxt(k,253)*y(k,83) + rxt(k,254)*y(k,84) + rxt(k,207) & - *y(k,85) - mat(k,1699) = 3.000_r8*rxt(k,242)*y(k,44) + rxt(k,244)*y(k,46) + rxt(k,193) & - *y(k,59) + rxt(k,247)*y(k,82) + rxt(k,248)*y(k,83) + rxt(k,249) & - *y(k,84) + rxt(k,196)*y(k,85) - mat(k,1977) = rxt(k,188)*y(k,60) - mat(k,1707) = 2.000_r8*rxt(k,184)*y(k,59) - mat(k,899) = rxt(k,188)*y(k,56) + (rxt(k,528)+rxt(k,533)+rxt(k,538))*y(k,85) - mat(k,2123) = (rxt(k,528)+rxt(k,533)+rxt(k,538))*y(k,60) + (rxt(k,523) & - +rxt(k,529)+rxt(k,534))*y(k,92) - mat(k,814) = (rxt(k,523)+rxt(k,529)+rxt(k,534))*y(k,85) - mat(k,1706) = 2.000_r8*rxt(k,209)*y(k,59) - mat(k,1720) = -(rxt(k,182)*y(k,200) + (4._r8*rxt(k,183) + 4._r8*rxt(k,184) & - + 4._r8*rxt(k,185) + 4._r8*rxt(k,209)) * y(k,59) + rxt(k,186) & - *y(k,205) + rxt(k,187)*y(k,124) + rxt(k,189)*y(k,125) + rxt(k,192) & - *y(k,134) + (rxt(k,193) + rxt(k,194)) * y(k,219) + (rxt(k,215) & - + rxt(k,216) + rxt(k,217)) * y(k,19) + rxt(k,470)*y(k,151)) - mat(k,1829) = -rxt(k,182)*y(k,59) - mat(k,2111) = -rxt(k,186)*y(k,59) - mat(k,1921) = -rxt(k,187)*y(k,59) - mat(k,1965) = -rxt(k,189)*y(k,59) - mat(k,2189) = -rxt(k,192)*y(k,59) - mat(k,1694) = -(rxt(k,193) + rxt(k,194)) * y(k,59) - mat(k,2158) = -(rxt(k,215) + rxt(k,216) + rxt(k,217)) * y(k,59) - mat(k,1238) = -rxt(k,470)*y(k,59) - mat(k,2004) = rxt(k,197)*y(k,92) + rxt(k,181)*y(k,135) + rxt(k,180)*y(k,205) - mat(k,904) = rxt(k,190)*y(k,134) - mat(k,2134) = rxt(k,208)*y(k,218) - mat(k,817) = rxt(k,197)*y(k,56) + rxt(k,198)*y(k,134) + rxt(k,199)*y(k,219) - mat(k,2189) = mat(k,2189) + rxt(k,190)*y(k,60) + rxt(k,198)*y(k,92) - mat(k,2250) = rxt(k,181)*y(k,56) - mat(k,330) = rxt(k,475)*y(k,151) - mat(k,1238) = mat(k,1238) + rxt(k,475)*y(k,137) - mat(k,2111) = mat(k,2111) + rxt(k,180)*y(k,56) - mat(k,1530) = rxt(k,208)*y(k,85) - mat(k,1694) = mat(k,1694) + rxt(k,199)*y(k,92) - end do - end subroutine nlnmat02 - subroutine nlnmat03( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,901) = -(rxt(k,188)*y(k,56) + rxt(k,190)*y(k,134) + rxt(k,191)*y(k,219) & - + (rxt(k,528) + rxt(k,533) + rxt(k,538)) * y(k,85)) - mat(k,1989) = -rxt(k,188)*y(k,60) - mat(k,2178) = -rxt(k,190)*y(k,60) - mat(k,1656) = -rxt(k,191)*y(k,60) - mat(k,2127) = -(rxt(k,528) + rxt(k,533) + rxt(k,538)) * y(k,60) - mat(k,1712) = rxt(k,189)*y(k,125) - mat(k,1950) = rxt(k,189)*y(k,59) - mat(k,1125) = -(rxt(k,275)*y(k,219)) - mat(k,1671) = -rxt(k,275)*y(k,62) - mat(k,1006) = .230_r8*rxt(k,440)*y(k,135) - mat(k,1416) = rxt(k,211)*y(k,42) - mat(k,296) = .350_r8*rxt(k,277)*y(k,219) - mat(k,553) = .630_r8*rxt(k,279)*y(k,135) - mat(k,1028) = .560_r8*rxt(k,308)*y(k,135) - mat(k,1481) = rxt(k,211)*y(k,17) + rxt(k,175)*y(k,56) + rxt(k,256)*y(k,126) & - + rxt(k,257)*y(k,134) + rxt(k,258)*y(k,219) - mat(k,368) = rxt(k,243)*y(k,56) - mat(k,1222) = rxt(k,314)*y(k,126) + rxt(k,315)*y(k,219) - mat(k,1994) = rxt(k,175)*y(k,42) + rxt(k,243)*y(k,46) - mat(k,982) = rxt(k,302)*y(k,219) - mat(k,839) = .620_r8*rxt(k,385)*y(k,135) - mat(k,1210) = .650_r8*rxt(k,338)*y(k,135) - mat(k,956) = .230_r8*rxt(k,443)*y(k,135) - mat(k,1330) = .560_r8*rxt(k,352)*y(k,135) - mat(k,1900) = .170_r8*rxt(k,411)*y(k,201) + .220_r8*rxt(k,336)*y(k,211) & - + .400_r8*rxt(k,414)*y(k,212) + .350_r8*rxt(k,417)*y(k,214) & - + .225_r8*rxt(k,452)*y(k,223) + .250_r8*rxt(k,393)*y(k,227) - mat(k,1755) = rxt(k,256)*y(k,42) + rxt(k,314)*y(k,49) + .220_r8*rxt(k,335) & - *y(k,211) + .500_r8*rxt(k,394)*y(k,227) - mat(k,2179) = rxt(k,257)*y(k,42) + rxt(k,464)*y(k,138) - mat(k,2230) = .230_r8*rxt(k,440)*y(k,6) + .630_r8*rxt(k,279)*y(k,25) & - + .560_r8*rxt(k,308)*y(k,29) + .620_r8*rxt(k,385)*y(k,98) & - + .650_r8*rxt(k,338)*y(k,105) + .230_r8*rxt(k,443)*y(k,110) & - + .560_r8*rxt(k,352)*y(k,111) - mat(k,362) = rxt(k,464)*y(k,134) + rxt(k,465)*y(k,219) - mat(k,1062) = .700_r8*rxt(k,461)*y(k,219) - mat(k,1377) = .220_r8*rxt(k,332)*y(k,211) + .250_r8*rxt(k,390)*y(k,227) - mat(k,1810) = .110_r8*rxt(k,333)*y(k,211) + .125_r8*rxt(k,450)*y(k,223) & - + .200_r8*rxt(k,391)*y(k,227) - mat(k,762) = .170_r8*rxt(k,411)*y(k,124) + .070_r8*rxt(k,410)*y(k,205) - mat(k,2090) = .070_r8*rxt(k,410)*y(k,201) + .160_r8*rxt(k,413)*y(k,212) & - + .140_r8*rxt(k,416)*y(k,214) - mat(k,1309) = .220_r8*rxt(k,336)*y(k,124) + .220_r8*rxt(k,335)*y(k,126) & - + .220_r8*rxt(k,332)*y(k,199) + .110_r8*rxt(k,333)*y(k,200) - mat(k,717) = .400_r8*rxt(k,414)*y(k,124) + .160_r8*rxt(k,413)*y(k,205) - mat(k,877) = .350_r8*rxt(k,417)*y(k,124) + .140_r8*rxt(k,416)*y(k,205) - mat(k,1671) = mat(k,1671) + .350_r8*rxt(k,277)*y(k,24) + rxt(k,258)*y(k,42) & - + rxt(k,315)*y(k,49) + rxt(k,302)*y(k,75) + rxt(k,465)*y(k,138) & - + .700_r8*rxt(k,461)*y(k,180) - mat(k,1112) = .225_r8*rxt(k,452)*y(k,124) + .125_r8*rxt(k,450)*y(k,200) - mat(k,1173) = .250_r8*rxt(k,393)*y(k,124) + .500_r8*rxt(k,394)*y(k,126) & - + .250_r8*rxt(k,390)*y(k,199) + .200_r8*rxt(k,391)*y(k,200) - mat(k,994) = .270_r8*rxt(k,440)*y(k,135) - mat(k,1023) = .200_r8*rxt(k,308)*y(k,135) - mat(k,687) = rxt(k,295)*y(k,219) - mat(k,613) = .500_r8*rxt(k,296)*y(k,219) - mat(k,1124) = rxt(k,275)*y(k,219) - mat(k,1096) = .800_r8*rxt(k,301)*y(k,219) - mat(k,980) = rxt(k,302)*y(k,219) - mat(k,930) = rxt(k,267)*y(k,219) - mat(k,575) = .500_r8*rxt(k,351)*y(k,219) - mat(k,945) = .270_r8*rxt(k,443)*y(k,135) - mat(k,1326) = .100_r8*rxt(k,352)*y(k,135) - mat(k,1884) = rxt(k,294)*y(k,199) + .900_r8*rxt(k,452)*y(k,223) - mat(k,2214) = .270_r8*rxt(k,440)*y(k,6) + .200_r8*rxt(k,308)*y(k,29) & - + .270_r8*rxt(k,443)*y(k,110) + .100_r8*rxt(k,352)*y(k,111) - mat(k,1059) = 1.800_r8*rxt(k,461)*y(k,219) - mat(k,1373) = rxt(k,294)*y(k,124) + 4.000_r8*rxt(k,291)*y(k,199) & - + .900_r8*rxt(k,292)*y(k,200) + rxt(k,365)*y(k,207) & - + 2.000_r8*rxt(k,341)*y(k,213) + rxt(k,390)*y(k,227) - mat(k,1797) = .900_r8*rxt(k,292)*y(k,199) + rxt(k,342)*y(k,213) & - + .500_r8*rxt(k,450)*y(k,223) - mat(k,2073) = .450_r8*rxt(k,343)*y(k,213) - mat(k,1250) = rxt(k,365)*y(k,199) - mat(k,1352) = 2.000_r8*rxt(k,341)*y(k,199) + rxt(k,342)*y(k,200) & - + .450_r8*rxt(k,343)*y(k,205) + 4.000_r8*rxt(k,344)*y(k,213) - mat(k,1646) = rxt(k,295)*y(k,50) + .500_r8*rxt(k,296)*y(k,51) + rxt(k,275) & - *y(k,62) + .800_r8*rxt(k,301)*y(k,74) + rxt(k,302)*y(k,75) & - + rxt(k,267)*y(k,87) + .500_r8*rxt(k,351)*y(k,109) & - + 1.800_r8*rxt(k,461)*y(k,180) - mat(k,1107) = .900_r8*rxt(k,452)*y(k,124) + .500_r8*rxt(k,450)*y(k,200) - mat(k,1170) = rxt(k,390)*y(k,199) - mat(k,240) = -(rxt(k,236)*y(k,218)) - mat(k,1512) = -rxt(k,236)*y(k,64) - mat(k,144) = rxt(k,201)*y(k,218) - mat(k,149) = rxt(k,227)*y(k,218) - mat(k,154) = rxt(k,203)*y(k,218) - mat(k,120) = 2.000_r8*rxt(k,204)*y(k,218) - mat(k,159) = 2.000_r8*rxt(k,205)*y(k,218) - mat(k,124) = rxt(k,206)*y(k,218) - mat(k,108) = 2.000_r8*rxt(k,229)*y(k,218) - mat(k,252) = rxt(k,253)*y(k,218) + rxt(k,248)*y(k,219) - mat(k,299) = rxt(k,254)*y(k,218) + rxt(k,249)*y(k,219) - mat(k,1512) = mat(k,1512) + rxt(k,201)*y(k,34) + rxt(k,227)*y(k,35) & - + rxt(k,203)*y(k,37) + 2.000_r8*rxt(k,204)*y(k,38) & - + 2.000_r8*rxt(k,205)*y(k,39) + rxt(k,206)*y(k,40) & - + 2.000_r8*rxt(k,229)*y(k,78) + rxt(k,253)*y(k,83) + rxt(k,254) & - *y(k,84) - mat(k,1575) = rxt(k,248)*y(k,83) + rxt(k,249)*y(k,84) - mat(k,248) = -(rxt(k,237)*y(k,218)) - mat(k,1514) = -rxt(k,237)*y(k,65) - mat(k,116) = rxt(k,202)*y(k,218) - mat(k,155) = rxt(k,203)*y(k,218) - mat(k,244) = rxt(k,252)*y(k,218) + rxt(k,247)*y(k,219) - mat(k,1514) = mat(k,1514) + rxt(k,202)*y(k,36) + rxt(k,203)*y(k,37) & - + rxt(k,252)*y(k,82) - mat(k,1577) = rxt(k,247)*y(k,82) - mat(k,196) = -(rxt(k,409)*y(k,219)) - mat(k,1566) = -rxt(k,409)*y(k,66) - mat(k,190) = .180_r8*rxt(k,429)*y(k,219) - mat(k,1566) = mat(k,1566) + .180_r8*rxt(k,429)*y(k,182) - mat(k,284) = -(rxt(k,462)*y(k,126) + (rxt(k,463) + rxt(k,477)) * y(k,219)) - mat(k,1735) = -rxt(k,462)*y(k,67) - mat(k,1582) = -(rxt(k,463) + rxt(k,477)) * y(k,67) - mat(k,706) = rxt(k,297)*y(k,205) - mat(k,2028) = rxt(k,297)*y(k,204) - mat(k,866) = -(rxt(k,232)*y(k,54) + rxt(k,233)*y(k,77) + rxt(k,234)*y(k,231) & - + rxt(k,235)*y(k,89)) - mat(k,1429) = -rxt(k,232)*y(k,73) - mat(k,1402) = -rxt(k,233)*y(k,73) - mat(k,2266) = -rxt(k,234)*y(k,73) - mat(k,1461) = -rxt(k,235)*y(k,73) - mat(k,150) = rxt(k,227)*y(k,218) - mat(k,160) = rxt(k,205)*y(k,218) - mat(k,241) = 2.000_r8*rxt(k,236)*y(k,218) - mat(k,249) = rxt(k,237)*y(k,218) - mat(k,1521) = rxt(k,227)*y(k,35) + rxt(k,205)*y(k,39) + 2.000_r8*rxt(k,236) & - *y(k,64) + rxt(k,237)*y(k,65) - mat(k,1098) = -(rxt(k,301)*y(k,219)) - mat(k,1669) = -rxt(k,301)*y(k,74) - mat(k,584) = .700_r8*rxt(k,376)*y(k,219) - mat(k,536) = .500_r8*rxt(k,377)*y(k,219) - mat(k,377) = rxt(k,388)*y(k,219) - mat(k,1898) = .050_r8*rxt(k,374)*y(k,208) + .530_r8*rxt(k,336)*y(k,211) & - + .225_r8*rxt(k,452)*y(k,223) + .250_r8*rxt(k,393)*y(k,227) - mat(k,1753) = .050_r8*rxt(k,375)*y(k,208) + .530_r8*rxt(k,335)*y(k,211) & - + .250_r8*rxt(k,394)*y(k,227) - mat(k,1376) = .530_r8*rxt(k,332)*y(k,211) + .250_r8*rxt(k,390)*y(k,227) - mat(k,1808) = .260_r8*rxt(k,333)*y(k,211) + .125_r8*rxt(k,450)*y(k,223) & - + .100_r8*rxt(k,391)*y(k,227) - mat(k,1283) = .050_r8*rxt(k,374)*y(k,124) + .050_r8*rxt(k,375)*y(k,126) - mat(k,1308) = .530_r8*rxt(k,336)*y(k,124) + .530_r8*rxt(k,335)*y(k,126) & - + .530_r8*rxt(k,332)*y(k,199) + .260_r8*rxt(k,333)*y(k,200) - mat(k,1669) = mat(k,1669) + .700_r8*rxt(k,376)*y(k,99) + .500_r8*rxt(k,377) & - *y(k,100) + rxt(k,388)*y(k,115) - mat(k,1110) = .225_r8*rxt(k,452)*y(k,124) + .125_r8*rxt(k,450)*y(k,200) - mat(k,1172) = .250_r8*rxt(k,393)*y(k,124) + .250_r8*rxt(k,394)*y(k,126) & - + .250_r8*rxt(k,390)*y(k,199) + .100_r8*rxt(k,391)*y(k,200) - mat(k,981) = -(rxt(k,302)*y(k,219)) - mat(k,1662) = -rxt(k,302)*y(k,75) - mat(k,295) = .650_r8*rxt(k,277)*y(k,219) - mat(k,1097) = .200_r8*rxt(k,301)*y(k,219) - mat(k,1074) = rxt(k,389)*y(k,219) - mat(k,1893) = rxt(k,400)*y(k,193) + .050_r8*rxt(k,374)*y(k,208) & - + .400_r8*rxt(k,414)*y(k,212) + .170_r8*rxt(k,417)*y(k,214) & - + .700_r8*rxt(k,420)*y(k,220) + .600_r8*rxt(k,427)*y(k,225) & - + .250_r8*rxt(k,393)*y(k,227) + .340_r8*rxt(k,433)*y(k,228) & - + .170_r8*rxt(k,436)*y(k,230) - mat(k,1746) = .050_r8*rxt(k,375)*y(k,208) + .250_r8*rxt(k,394)*y(k,227) - mat(k,487) = rxt(k,400)*y(k,124) - mat(k,1374) = .250_r8*rxt(k,390)*y(k,227) - mat(k,1803) = .100_r8*rxt(k,391)*y(k,227) - mat(k,2084) = .160_r8*rxt(k,413)*y(k,212) + .070_r8*rxt(k,416)*y(k,214) - mat(k,1282) = .050_r8*rxt(k,374)*y(k,124) + .050_r8*rxt(k,375)*y(k,126) - mat(k,716) = .400_r8*rxt(k,414)*y(k,124) + .160_r8*rxt(k,413)*y(k,205) - mat(k,876) = .170_r8*rxt(k,417)*y(k,124) + .070_r8*rxt(k,416)*y(k,205) - mat(k,1662) = mat(k,1662) + .650_r8*rxt(k,277)*y(k,24) + .200_r8*rxt(k,301) & - *y(k,74) + rxt(k,389)*y(k,116) - mat(k,451) = .700_r8*rxt(k,420)*y(k,124) - mat(k,729) = .600_r8*rxt(k,427)*y(k,124) - mat(k,1171) = .250_r8*rxt(k,393)*y(k,124) + .250_r8*rxt(k,394)*y(k,126) & - + .250_r8*rxt(k,390)*y(k,199) + .100_r8*rxt(k,391)*y(k,200) - mat(k,753) = .340_r8*rxt(k,433)*y(k,124) - mat(k,502) = .170_r8*rxt(k,436)*y(k,124) - mat(k,1447) = -((rxt(k,135) + rxt(k,136) + rxt(k,137)) * y(k,205) + rxt(k,141) & - *y(k,135)) - mat(k,2106) = -(rxt(k,135) + rxt(k,136) + rxt(k,137)) * y(k,76) - mat(k,2245) = -rxt(k,141)*y(k,76) - mat(k,1485) = rxt(k,258)*y(k,219) - mat(k,1433) = rxt(k,272)*y(k,218) - mat(k,1999) = rxt(k,177)*y(k,77) - mat(k,869) = rxt(k,233)*y(k,77) - mat(k,1405) = rxt(k,177)*y(k,56) + rxt(k,233)*y(k,73) + rxt(k,133)*y(k,134) & - + rxt(k,125)*y(k,218) + rxt(k,142)*y(k,219) - mat(k,808) = rxt(k,231)*y(k,218) - mat(k,2129) = rxt(k,208)*y(k,218) - mat(k,494) = rxt(k,163)*y(k,219) - mat(k,2184) = rxt(k,133)*y(k,77) + rxt(k,145)*y(k,219) - mat(k,364) = rxt(k,465)*y(k,219) - mat(k,515) = rxt(k,471)*y(k,219) - mat(k,1236) = rxt(k,476)*y(k,219) - mat(k,1525) = rxt(k,272)*y(k,54) + rxt(k,125)*y(k,77) + rxt(k,231)*y(k,81) & - + rxt(k,208)*y(k,85) - mat(k,1689) = rxt(k,258)*y(k,42) + rxt(k,142)*y(k,77) + rxt(k,163)*y(k,112) & - + rxt(k,145)*y(k,134) + rxt(k,465)*y(k,138) + rxt(k,471) & - *y(k,149) + rxt(k,476)*y(k,151) - mat(k,1403) = -(rxt(k,125)*y(k,218) + rxt(k,133)*y(k,134) + rxt(k,142) & - *y(k,219) + rxt(k,177)*y(k,56) + rxt(k,233)*y(k,73)) - mat(k,1522) = -rxt(k,125)*y(k,77) - mat(k,2181) = -rxt(k,133)*y(k,77) - mat(k,1686) = -rxt(k,142)*y(k,77) - mat(k,1996) = -rxt(k,177)*y(k,77) - mat(k,867) = -rxt(k,233)*y(k,77) - mat(k,1431) = rxt(k,273)*y(k,218) - mat(k,1445) = rxt(k,135)*y(k,205) - mat(k,2103) = rxt(k,135)*y(k,76) - mat(k,1522) = mat(k,1522) + rxt(k,273)*y(k,54) - end do - end subroutine nlnmat03 - subroutine nlnmat04( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,107) = -(rxt(k,229)*y(k,218)) - mat(k,1502) = -rxt(k,229)*y(k,78) - mat(k,605) = -(rxt(k,134)*y(k,134) + rxt(k,143)*y(k,219) + rxt(k,178)*y(k,56)) - mat(k,2173) = -rxt(k,134)*y(k,79) - mat(k,1626) = -rxt(k,143)*y(k,79) - mat(k,1985) = -rxt(k,178)*y(k,79) - mat(k,2055) = 2.000_r8*rxt(k,149)*y(k,205) - mat(k,1626) = mat(k,1626) + 2.000_r8*rxt(k,148)*y(k,219) - mat(k,258) = rxt(k,478)*y(k,231) - mat(k,2262) = rxt(k,478)*y(k,153) - mat(k,806) = -(rxt(k,224)*y(k,134) + rxt(k,225)*y(k,219) + (rxt(k,230) & - + rxt(k,231)) * y(k,218)) - mat(k,2175) = -rxt(k,224)*y(k,81) - mat(k,1647) = -rxt(k,225)*y(k,81) - mat(k,1520) = -(rxt(k,230) + rxt(k,231)) * y(k,81) - mat(k,1415) = rxt(k,211)*y(k,42) + rxt(k,212)*y(k,205) - mat(k,1479) = rxt(k,211)*y(k,17) - mat(k,2074) = rxt(k,212)*y(k,17) - mat(k,243) = -(rxt(k,247)*y(k,219) + rxt(k,252)*y(k,218)) - mat(k,1576) = -rxt(k,247)*y(k,82) - mat(k,1513) = -rxt(k,252)*y(k,82) - mat(k,253) = -(rxt(k,248)*y(k,219) + rxt(k,253)*y(k,218)) - mat(k,1578) = -rxt(k,248)*y(k,83) - mat(k,1515) = -rxt(k,253)*y(k,83) - mat(k,300) = -(rxt(k,249)*y(k,219) + rxt(k,254)*y(k,218)) - mat(k,1584) = -rxt(k,249)*y(k,84) - mat(k,1516) = -rxt(k,254)*y(k,84) - mat(k,2141) = -(rxt(k,195)*y(k,134) + rxt(k,196)*y(k,219) + (rxt(k,207) & - + rxt(k,208)) * y(k,218) + (rxt(k,523) + rxt(k,529) + rxt(k,534) & - ) * y(k,92) + (rxt(k,528) + rxt(k,533) + rxt(k,538)) * y(k,60) & - + (rxt(k,530) + rxt(k,535)) * y(k,91)) - mat(k,2196) = -rxt(k,195)*y(k,85) - mat(k,1701) = -rxt(k,196)*y(k,85) - mat(k,1537) = -(rxt(k,207) + rxt(k,208)) * y(k,85) - mat(k,819) = -(rxt(k,523) + rxt(k,529) + rxt(k,534)) * y(k,85) - mat(k,908) = -(rxt(k,528) + rxt(k,533) + rxt(k,538)) * y(k,85) - mat(k,784) = -(rxt(k,530) + rxt(k,535)) * y(k,85) - mat(k,310) = rxt(k,286)*y(k,56) - mat(k,474) = rxt(k,238)*y(k,56) - mat(k,1496) = rxt(k,175)*y(k,56) - mat(k,603) = rxt(k,240)*y(k,56) - mat(k,373) = 2.000_r8*rxt(k,243)*y(k,56) - mat(k,1442) = rxt(k,176)*y(k,56) - mat(k,392) = rxt(k,245)*y(k,56) - mat(k,2011) = rxt(k,286)*y(k,28) + rxt(k,238)*y(k,41) + rxt(k,175)*y(k,42) & - + rxt(k,240)*y(k,43) + 2.000_r8*rxt(k,243)*y(k,46) + rxt(k,176) & - *y(k,54) + rxt(k,245)*y(k,55) + rxt(k,177)*y(k,77) + rxt(k,178) & - *y(k,79) + rxt(k,197)*y(k,92) + rxt(k,179)*y(k,205) - mat(k,1727) = rxt(k,194)*y(k,219) - mat(k,1412) = rxt(k,177)*y(k,56) - mat(k,609) = rxt(k,178)*y(k,56) - mat(k,819) = mat(k,819) + rxt(k,197)*y(k,56) - mat(k,2118) = rxt(k,179)*y(k,56) - mat(k,1701) = mat(k,1701) + rxt(k,194)*y(k,59) - mat(k,181) = -(rxt(k,266)*y(k,219) + rxt(k,274)*y(k,218)) - mat(k,1564) = -rxt(k,266)*y(k,86) - mat(k,1510) = -rxt(k,274)*y(k,86) - mat(k,931) = -(rxt(k,267)*y(k,219)) - mat(k,1659) = -rxt(k,267)*y(k,87) - mat(k,998) = .050_r8*rxt(k,440)*y(k,135) - mat(k,294) = .350_r8*rxt(k,277)*y(k,219) - mat(k,552) = .370_r8*rxt(k,279)*y(k,135) - mat(k,1025) = .120_r8*rxt(k,308)*y(k,135) - mat(k,837) = .110_r8*rxt(k,385)*y(k,135) - mat(k,1209) = .330_r8*rxt(k,338)*y(k,135) - mat(k,949) = .050_r8*rxt(k,443)*y(k,135) - mat(k,1327) = .120_r8*rxt(k,352)*y(k,135) - mat(k,1891) = rxt(k,270)*y(k,206) - mat(k,2219) = .050_r8*rxt(k,440)*y(k,6) + .370_r8*rxt(k,279)*y(k,25) & - + .120_r8*rxt(k,308)*y(k,29) + .110_r8*rxt(k,385)*y(k,98) & - + .330_r8*rxt(k,338)*y(k,105) + .050_r8*rxt(k,443)*y(k,110) & - + .120_r8*rxt(k,352)*y(k,111) - mat(k,2082) = rxt(k,268)*y(k,206) - mat(k,444) = rxt(k,270)*y(k,124) + rxt(k,268)*y(k,205) - mat(k,1659) = mat(k,1659) + .350_r8*rxt(k,277)*y(k,24) - mat(k,1427) = rxt(k,232)*y(k,73) - mat(k,865) = rxt(k,232)*y(k,54) + rxt(k,233)*y(k,77) + rxt(k,235)*y(k,89) & - + rxt(k,234)*y(k,231) - mat(k,1401) = rxt(k,233)*y(k,73) - mat(k,1460) = rxt(k,235)*y(k,73) - mat(k,2264) = rxt(k,234)*y(k,73) - mat(k,1465) = -(rxt(k,172)*y(k,219) + rxt(k,235)*y(k,73)) - mat(k,1690) = -rxt(k,172)*y(k,89) - mat(k,870) = -rxt(k,235)*y(k,89) - mat(k,1486) = rxt(k,256)*y(k,126) - mat(k,1090) = rxt(k,288)*y(k,126) - mat(k,1225) = rxt(k,314)*y(k,126) - mat(k,902) = (rxt(k,528)+rxt(k,533)+rxt(k,538))*y(k,85) - mat(k,286) = rxt(k,462)*y(k,126) - mat(k,2130) = (rxt(k,528)+rxt(k,533)+rxt(k,538))*y(k,60) - mat(k,1961) = rxt(k,171)*y(k,219) - mat(k,1773) = rxt(k,256)*y(k,42) + rxt(k,288)*y(k,45) + rxt(k,314)*y(k,49) & - + rxt(k,462)*y(k,67) - mat(k,1690) = mat(k,1690) + rxt(k,171)*y(k,125) - mat(k,423) = -(rxt(k,150)*y(k,219)) - mat(k,1602) = -rxt(k,150)*y(k,90) - mat(k,1936) = rxt(k,169)*y(k,205) - mat(k,2042) = rxt(k,169)*y(k,125) - mat(k,780) = -(rxt(k,226)*y(k,134) + (rxt(k,530) + rxt(k,535)) * y(k,85)) - mat(k,2174) = -rxt(k,226)*y(k,91) - mat(k,2125) = -(rxt(k,530) + rxt(k,535)) * y(k,91) - mat(k,2149) = rxt(k,218)*y(k,205) - mat(k,2071) = rxt(k,218)*y(k,19) - mat(k,815) = -(rxt(k,197)*y(k,56) + rxt(k,198)*y(k,134) + rxt(k,199)*y(k,219) & - + (rxt(k,523) + rxt(k,529) + rxt(k,534)) * y(k,85)) - mat(k,1987) = -rxt(k,197)*y(k,92) - mat(k,2176) = -rxt(k,198)*y(k,92) - mat(k,1648) = -rxt(k,199)*y(k,92) - mat(k,2126) = -(rxt(k,523) + rxt(k,529) + rxt(k,534)) * y(k,92) - mat(k,1710) = rxt(k,186)*y(k,205) - mat(k,900) = rxt(k,191)*y(k,219) - mat(k,2075) = rxt(k,186)*y(k,59) - mat(k,1648) = mat(k,1648) + rxt(k,191)*y(k,60) - mat(k,1155) = -(rxt(k,331)*y(k,219)) - mat(k,1674) = -rxt(k,331)*y(k,93) - mat(k,586) = .300_r8*rxt(k,376)*y(k,219) - mat(k,538) = .500_r8*rxt(k,377)*y(k,219) - mat(k,1903) = rxt(k,330)*y(k,202) + rxt(k,337)*y(k,211) - mat(k,569) = rxt(k,330)*y(k,124) - mat(k,1311) = rxt(k,337)*y(k,124) - mat(k,1674) = mat(k,1674) + .300_r8*rxt(k,376)*y(k,99) + .500_r8*rxt(k,377) & - *y(k,100) - mat(k,223) = -(rxt(k,362)*y(k,219)) - mat(k,1571) = -rxt(k,362)*y(k,94) - mat(k,1142) = -(rxt(k,316)*y(k,219)) - mat(k,1673) = -rxt(k,316)*y(k,95) - mat(k,585) = .700_r8*rxt(k,376)*y(k,219) - mat(k,537) = .500_r8*rxt(k,377)*y(k,219) - mat(k,576) = .500_r8*rxt(k,351)*y(k,219) - mat(k,1902) = .050_r8*rxt(k,374)*y(k,208) + .220_r8*rxt(k,336)*y(k,211) & - + .250_r8*rxt(k,393)*y(k,227) - mat(k,1757) = .050_r8*rxt(k,375)*y(k,208) + .220_r8*rxt(k,335)*y(k,211) & - + .250_r8*rxt(k,394)*y(k,227) - mat(k,545) = .500_r8*rxt(k,320)*y(k,219) - mat(k,1378) = .220_r8*rxt(k,332)*y(k,211) + .250_r8*rxt(k,390)*y(k,227) - mat(k,1812) = .230_r8*rxt(k,333)*y(k,211) + .200_r8*rxt(k,321)*y(k,222) & - + .100_r8*rxt(k,391)*y(k,227) - mat(k,1285) = .050_r8*rxt(k,374)*y(k,124) + .050_r8*rxt(k,375)*y(k,126) - mat(k,1310) = .220_r8*rxt(k,336)*y(k,124) + .220_r8*rxt(k,335)*y(k,126) & - + .220_r8*rxt(k,332)*y(k,199) + .230_r8*rxt(k,333)*y(k,200) - mat(k,1673) = mat(k,1673) + .700_r8*rxt(k,376)*y(k,99) + .500_r8*rxt(k,377) & - *y(k,100) + .500_r8*rxt(k,351)*y(k,109) + .500_r8*rxt(k,320) & - *y(k,147) - mat(k,1132) = .200_r8*rxt(k,321)*y(k,200) - mat(k,1174) = .250_r8*rxt(k,393)*y(k,124) + .250_r8*rxt(k,394)*y(k,126) & - + .250_r8*rxt(k,390)*y(k,199) + .100_r8*rxt(k,391)*y(k,200) - mat(k,348) = -(rxt(k,363)*y(k,219)) - mat(k,1591) = -rxt(k,363)*y(k,96) - mat(k,1858) = .870_r8*rxt(k,374)*y(k,208) - mat(k,1736) = .950_r8*rxt(k,375)*y(k,208) - mat(k,1369) = rxt(k,370)*y(k,208) - mat(k,1790) = .750_r8*rxt(k,371)*y(k,208) - mat(k,1275) = .870_r8*rxt(k,374)*y(k,124) + .950_r8*rxt(k,375)*y(k,126) & - + rxt(k,370)*y(k,199) + .750_r8*rxt(k,371)*y(k,200) - mat(k,137) = -(rxt(k,364)*y(k,219)) - mat(k,1560) = -rxt(k,364)*y(k,97) - mat(k,736) = .600_r8*rxt(k,387)*y(k,219) - mat(k,1560) = mat(k,1560) + .600_r8*rxt(k,387)*y(k,103) - mat(k,836) = -(rxt(k,378)*y(k,126) + rxt(k,385)*y(k,135) + rxt(k,386) & - *y(k,219)) - mat(k,1739) = -rxt(k,378)*y(k,98) - mat(k,2215) = -rxt(k,385)*y(k,98) - mat(k,1650) = -rxt(k,386)*y(k,98) - mat(k,583) = -(rxt(k,376)*y(k,219)) - mat(k,1623) = -rxt(k,376)*y(k,99) - mat(k,1871) = .080_r8*rxt(k,368)*y(k,207) - mat(k,1247) = .080_r8*rxt(k,368)*y(k,124) - mat(k,534) = -(rxt(k,377)*y(k,219)) - mat(k,1618) = -rxt(k,377)*y(k,100) - mat(k,1869) = .080_r8*rxt(k,374)*y(k,208) - mat(k,1276) = .080_r8*rxt(k,374)*y(k,124) - mat(k,1195) = -(rxt(k,379)*y(k,199) + rxt(k,380)*y(k,200) + rxt(k,381) & - *y(k,205) + rxt(k,382)*y(k,124) + rxt(k,383)*y(k,126)) - mat(k,1380) = -rxt(k,379)*y(k,101) - mat(k,1814) = -rxt(k,380)*y(k,101) - mat(k,2094) = -rxt(k,381)*y(k,101) - mat(k,1905) = -rxt(k,382)*y(k,101) - mat(k,1760) = -rxt(k,383)*y(k,101) - mat(k,840) = rxt(k,378)*y(k,126) - mat(k,1760) = mat(k,1760) + rxt(k,378)*y(k,98) - mat(k,405) = -(rxt(k,384)*y(k,219)) - mat(k,1599) = -rxt(k,384)*y(k,102) - mat(k,1187) = rxt(k,381)*y(k,205) - mat(k,2039) = rxt(k,381)*y(k,101) - mat(k,737) = -(rxt(k,387)*y(k,219)) - mat(k,1640) = -rxt(k,387)*y(k,103) - mat(k,2067) = rxt(k,367)*y(k,207) + rxt(k,372)*y(k,208) - mat(k,1248) = rxt(k,367)*y(k,205) - mat(k,1278) = rxt(k,372)*y(k,205) - mat(k,76) = -(rxt(k,509)*y(k,219)) - mat(k,1552) = -rxt(k,509)*y(k,104) - mat(k,1211) = -(rxt(k,338)*y(k,135) + rxt(k,339)*y(k,219)) - mat(k,2234) = -rxt(k,338)*y(k,105) - mat(k,1677) = -rxt(k,339)*y(k,105) - mat(k,841) = .300_r8*rxt(k,385)*y(k,135) - mat(k,1906) = .360_r8*rxt(k,368)*y(k,207) - mat(k,1761) = .400_r8*rxt(k,369)*y(k,207) - mat(k,2234) = mat(k,2234) + .300_r8*rxt(k,385)*y(k,98) - mat(k,1381) = .390_r8*rxt(k,365)*y(k,207) - mat(k,1815) = .310_r8*rxt(k,366)*y(k,207) - mat(k,1256) = .360_r8*rxt(k,368)*y(k,124) + .400_r8*rxt(k,369)*y(k,126) & - + .390_r8*rxt(k,365)*y(k,199) + .310_r8*rxt(k,366)*y(k,200) - end do - end subroutine nlnmat04 - subroutine nlnmat05( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,312) = -(rxt(k,340)*y(k,219)) - mat(k,1586) = -rxt(k,340)*y(k,106) - mat(k,2032) = rxt(k,334)*y(k,211) - mat(k,1306) = rxt(k,334)*y(k,205) - mat(k,508) = -(rxt(k,349)*y(k,219)) - mat(k,1614) = -rxt(k,349)*y(k,107) - mat(k,1867) = .800_r8*rxt(k,358)*y(k,191) - mat(k,884) = .800_r8*rxt(k,358)*y(k,124) - mat(k,317) = -(rxt(k,350)*y(k,219)) - mat(k,1587) = -rxt(k,350)*y(k,108) - mat(k,2033) = .800_r8*rxt(k,347)*y(k,215) - mat(k,678) = .800_r8*rxt(k,347)*y(k,205) - mat(k,574) = -(rxt(k,351)*y(k,219)) - mat(k,1622) = -rxt(k,351)*y(k,109) - mat(k,1942) = rxt(k,354)*y(k,213) - mat(k,1349) = rxt(k,354)*y(k,125) - mat(k,950) = -(rxt(k,442)*y(k,126) + rxt(k,443)*y(k,135) + rxt(k,444) & - *y(k,219)) - mat(k,1744) = -rxt(k,442)*y(k,110) - mat(k,2220) = -rxt(k,443)*y(k,110) - mat(k,1660) = -rxt(k,444)*y(k,110) - mat(k,1334) = -(rxt(k,352)*y(k,135) + rxt(k,353)*y(k,219)) - mat(k,2240) = -rxt(k,352)*y(k,111) - mat(k,1683) = -rxt(k,353)*y(k,111) - mat(k,844) = .200_r8*rxt(k,385)*y(k,135) - mat(k,1911) = .560_r8*rxt(k,368)*y(k,207) - mat(k,1767) = .600_r8*rxt(k,369)*y(k,207) - mat(k,2240) = mat(k,2240) + .200_r8*rxt(k,385)*y(k,98) - mat(k,1386) = .610_r8*rxt(k,365)*y(k,207) - mat(k,1820) = .440_r8*rxt(k,366)*y(k,207) - mat(k,1260) = .560_r8*rxt(k,368)*y(k,124) + .600_r8*rxt(k,369)*y(k,126) & - + .610_r8*rxt(k,365)*y(k,199) + .440_r8*rxt(k,366)*y(k,200) - mat(k,493) = -(rxt(k,151)*y(k,124) + (rxt(k,152) + rxt(k,153) + rxt(k,154) & - ) * y(k,125) + rxt(k,163)*y(k,219)) - mat(k,1865) = -rxt(k,151)*y(k,112) - mat(k,1938) = -(rxt(k,152) + rxt(k,153) + rxt(k,154)) * y(k,112) - mat(k,1612) = -rxt(k,163)*y(k,112) - mat(k,185) = -((rxt(k,167) + rxt(k,168)) * y(k,218)) - mat(k,1511) = -(rxt(k,167) + rxt(k,168)) * y(k,113) - mat(k,492) = rxt(k,152)*y(k,125) - mat(k,1934) = rxt(k,152)*y(k,112) - mat(k,1935) = rxt(k,170)*y(k,126) - mat(k,1734) = rxt(k,170)*y(k,125) - mat(k,375) = -(rxt(k,388)*y(k,219)) - mat(k,1595) = -rxt(k,388)*y(k,115) - mat(k,1186) = .200_r8*rxt(k,380)*y(k,200) - mat(k,1791) = .200_r8*rxt(k,380)*y(k,101) - mat(k,1075) = -(rxt(k,389)*y(k,219)) - mat(k,1667) = -rxt(k,389)*y(k,116) - mat(k,1191) = rxt(k,382)*y(k,124) + rxt(k,383)*y(k,126) + rxt(k,379)*y(k,199) & - + .800_r8*rxt(k,380)*y(k,200) - mat(k,1896) = rxt(k,382)*y(k,101) - mat(k,1751) = rxt(k,383)*y(k,101) - mat(k,1375) = rxt(k,379)*y(k,101) - mat(k,1806) = .800_r8*rxt(k,380)*y(k,101) - mat(k,98) = -(rxt(k,479)*y(k,219)) - mat(k,1556) = -rxt(k,479)*y(k,120) - mat(k,1924) = -(rxt(k,151)*y(k,112) + rxt(k,160)*y(k,126) + rxt(k,164) & - *y(k,205) + rxt(k,165)*y(k,135) + rxt(k,166)*y(k,134) + rxt(k,187) & - *y(k,59) + rxt(k,219)*y(k,19) + rxt(k,262)*y(k,200) + rxt(k,270) & - *y(k,206) + rxt(k,283)*y(k,196) + rxt(k,294)*y(k,199) + rxt(k,298) & - *y(k,204) + rxt(k,311)*y(k,197) + rxt(k,319)*y(k,221) + rxt(k,323) & - *y(k,222) + (rxt(k,329) + rxt(k,330)) * y(k,202) + (rxt(k,336) & - + rxt(k,337)) * y(k,211) + rxt(k,345)*y(k,213) + rxt(k,348) & - *y(k,215) + (rxt(k,358) + rxt(k,359)) * y(k,191) + rxt(k,368) & - *y(k,207) + rxt(k,374)*y(k,208) + rxt(k,382)*y(k,101) + rxt(k,393) & - *y(k,227) + rxt(k,397)*y(k,190) + rxt(k,400)*y(k,193) + rxt(k,405) & - *y(k,195) + rxt(k,407)*y(k,198) + rxt(k,411)*y(k,201) + rxt(k,414) & - *y(k,212) + rxt(k,417)*y(k,214) + rxt(k,420)*y(k,220) + rxt(k,427) & - *y(k,225) + rxt(k,433)*y(k,228) + rxt(k,436)*y(k,230) + rxt(k,447) & - *y(k,217) + rxt(k,452)*y(k,223) + rxt(k,457)*y(k,224)) - mat(k,497) = -rxt(k,151)*y(k,124) - mat(k,1780) = -rxt(k,160)*y(k,124) - mat(k,2114) = -rxt(k,164)*y(k,124) - mat(k,2253) = -rxt(k,165)*y(k,124) - mat(k,2192) = -rxt(k,166)*y(k,124) - mat(k,1723) = -rxt(k,187)*y(k,124) - mat(k,2161) = -rxt(k,219)*y(k,124) - mat(k,1832) = -rxt(k,262)*y(k,124) - mat(k,446) = -rxt(k,270)*y(k,124) - mat(k,830) = -rxt(k,283)*y(k,124) - mat(k,1395) = -rxt(k,294)*y(k,124) - mat(k,712) = -rxt(k,298)*y(k,124) - mat(k,795) = -rxt(k,311)*y(k,124) - mat(k,775) = -rxt(k,319)*y(k,124) - mat(k,1138) = -rxt(k,323)*y(k,124) - mat(k,571) = -(rxt(k,329) + rxt(k,330)) * y(k,124) - mat(k,1321) = -(rxt(k,336) + rxt(k,337)) * y(k,124) - mat(k,1363) = -rxt(k,345)*y(k,124) - mat(k,683) = -rxt(k,348)*y(k,124) - mat(k,896) = -(rxt(k,358) + rxt(k,359)) * y(k,124) - mat(k,1268) = -rxt(k,368)*y(k,124) - mat(k,1300) = -rxt(k,374)*y(k,124) - mat(k,1205) = -rxt(k,382)*y(k,124) - mat(k,1182) = -rxt(k,393)*y(k,124) - mat(k,523) = -rxt(k,397)*y(k,124) - mat(k,489) = -rxt(k,400)*y(k,124) - mat(k,440) = -rxt(k,405)*y(k,124) - mat(k,629) = -rxt(k,407)*y(k,124) - mat(k,766) = -rxt(k,411)*y(k,124) - mat(k,718) = -rxt(k,414)*y(k,124) - mat(k,881) = -rxt(k,417)*y(k,124) - mat(k,453) = -rxt(k,420)*y(k,124) - mat(k,733) = -rxt(k,427)*y(k,124) - mat(k,758) = -rxt(k,433)*y(k,124) - mat(k,505) = -rxt(k,436)*y(k,124) - mat(k,1056) = -rxt(k,447)*y(k,124) - mat(k,1119) = -rxt(k,452)*y(k,124) - mat(k,921) = -rxt(k,457)*y(k,124) - mat(k,497) = mat(k,497) + 2.000_r8*rxt(k,153)*y(k,125) + rxt(k,163)*y(k,219) - mat(k,187) = 2.000_r8*rxt(k,167)*y(k,218) - mat(k,1968) = 2.000_r8*rxt(k,153)*y(k,112) + rxt(k,156)*y(k,134) + rxt(k,472) & - *y(k,151) - mat(k,2192) = mat(k,2192) + rxt(k,156)*y(k,125) - mat(k,1239) = rxt(k,472)*y(k,125) - mat(k,1533) = 2.000_r8*rxt(k,167)*y(k,113) - mat(k,1697) = rxt(k,163)*y(k,112) - mat(k,1969) = -((rxt(k,152) + rxt(k,153) + rxt(k,154)) * y(k,112) + (rxt(k,156) & - + rxt(k,158)) * y(k,134) + rxt(k,157)*y(k,135) + rxt(k,169) & - *y(k,205) + rxt(k,170)*y(k,126) + rxt(k,171)*y(k,219) + rxt(k,189) & - *y(k,59) + rxt(k,220)*y(k,19) + rxt(k,305)*y(k,199) + rxt(k,354) & - *y(k,213) + rxt(k,412)*y(k,201) + rxt(k,415)*y(k,212) + rxt(k,418) & - *y(k,214) + rxt(k,422)*y(k,142) + rxt(k,425)*y(k,190) + rxt(k,472) & - *y(k,151)) - mat(k,498) = -(rxt(k,152) + rxt(k,153) + rxt(k,154)) * y(k,125) - mat(k,2193) = -(rxt(k,156) + rxt(k,158)) * y(k,125) - mat(k,2254) = -rxt(k,157)*y(k,125) - mat(k,2115) = -rxt(k,169)*y(k,125) - mat(k,1781) = -rxt(k,170)*y(k,125) - mat(k,1698) = -rxt(k,171)*y(k,125) - mat(k,1724) = -rxt(k,189)*y(k,125) - mat(k,2162) = -rxt(k,220)*y(k,125) - mat(k,1396) = -rxt(k,305)*y(k,125) - mat(k,1364) = -rxt(k,354)*y(k,125) - mat(k,767) = -rxt(k,412)*y(k,125) - mat(k,719) = -rxt(k,415)*y(k,125) - mat(k,882) = -rxt(k,418)*y(k,125) - mat(k,467) = -rxt(k,422)*y(k,125) - mat(k,524) = -rxt(k,425)*y(k,125) - mat(k,1240) = -rxt(k,472)*y(k,125) - mat(k,642) = rxt(k,356)*y(k,219) - mat(k,358) = rxt(k,327)*y(k,126) - mat(k,2162) = mat(k,2162) + rxt(k,219)*y(k,124) - mat(k,1724) = mat(k,1724) + rxt(k,187)*y(k,124) - mat(k,426) = rxt(k,150)*y(k,219) - mat(k,590) = .700_r8*rxt(k,376)*y(k,219) - mat(k,1206) = rxt(k,382)*y(k,124) + rxt(k,383)*y(k,126) - mat(k,1925) = rxt(k,219)*y(k,19) + rxt(k,187)*y(k,59) + rxt(k,382)*y(k,101) & - + 2.000_r8*rxt(k,160)*y(k,126) + rxt(k,166)*y(k,134) & - + rxt(k,165)*y(k,135) + rxt(k,397)*y(k,190) + rxt(k,358) & - *y(k,191) + rxt(k,400)*y(k,193) + rxt(k,405)*y(k,195) & - + rxt(k,283)*y(k,196) + rxt(k,311)*y(k,197) + rxt(k,407) & - *y(k,198) + rxt(k,294)*y(k,199) + rxt(k,262)*y(k,200) & - + rxt(k,411)*y(k,201) + rxt(k,329)*y(k,202) + rxt(k,298) & - *y(k,204) + rxt(k,164)*y(k,205) + rxt(k,270)*y(k,206) & - + .920_r8*rxt(k,368)*y(k,207) + .920_r8*rxt(k,374)*y(k,208) & - + rxt(k,336)*y(k,211) + rxt(k,414)*y(k,212) + rxt(k,345) & - *y(k,213) + rxt(k,417)*y(k,214) + rxt(k,348)*y(k,215) & - + 1.600_r8*rxt(k,447)*y(k,217) + rxt(k,420)*y(k,220) & - + rxt(k,319)*y(k,221) + rxt(k,323)*y(k,222) + .900_r8*rxt(k,452) & - *y(k,223) + .800_r8*rxt(k,457)*y(k,224) + rxt(k,427)*y(k,225) & - + rxt(k,393)*y(k,227) + rxt(k,433)*y(k,228) + rxt(k,436) & - *y(k,230) - mat(k,1781) = mat(k,1781) + rxt(k,327)*y(k,16) + rxt(k,383)*y(k,101) & - + 2.000_r8*rxt(k,160)*y(k,124) + rxt(k,161)*y(k,134) & - + rxt(k,159)*y(k,205) + rxt(k,369)*y(k,207) + rxt(k,375) & - *y(k,208) + rxt(k,335)*y(k,211) + rxt(k,346)*y(k,213) & - + 2.000_r8*rxt(k,448)*y(k,217) + rxt(k,162)*y(k,219) & - + rxt(k,394)*y(k,227) - mat(k,864) = rxt(k,317)*y(k,219) - mat(k,2193) = mat(k,2193) + rxt(k,166)*y(k,124) + rxt(k,161)*y(k,126) - mat(k,2254) = mat(k,2254) + rxt(k,165)*y(k,124) - mat(k,623) = rxt(k,454)*y(k,219) - mat(k,524) = mat(k,524) + rxt(k,397)*y(k,124) - mat(k,897) = rxt(k,358)*y(k,124) - mat(k,490) = rxt(k,400)*y(k,124) - mat(k,441) = rxt(k,405)*y(k,124) - mat(k,831) = rxt(k,283)*y(k,124) - mat(k,796) = rxt(k,311)*y(k,124) - mat(k,630) = rxt(k,407)*y(k,124) - mat(k,1396) = mat(k,1396) + rxt(k,294)*y(k,124) - mat(k,1833) = rxt(k,262)*y(k,124) + .500_r8*rxt(k,445)*y(k,217) - mat(k,767) = mat(k,767) + rxt(k,411)*y(k,124) - mat(k,572) = rxt(k,329)*y(k,124) - mat(k,713) = rxt(k,298)*y(k,124) - mat(k,2115) = mat(k,2115) + rxt(k,164)*y(k,124) + rxt(k,159)*y(k,126) - mat(k,447) = rxt(k,270)*y(k,124) - mat(k,1269) = .920_r8*rxt(k,368)*y(k,124) + rxt(k,369)*y(k,126) - mat(k,1301) = .920_r8*rxt(k,374)*y(k,124) + rxt(k,375)*y(k,126) - mat(k,1322) = rxt(k,336)*y(k,124) + rxt(k,335)*y(k,126) - mat(k,719) = mat(k,719) + rxt(k,414)*y(k,124) - mat(k,1364) = mat(k,1364) + rxt(k,345)*y(k,124) + rxt(k,346)*y(k,126) - mat(k,882) = mat(k,882) + rxt(k,417)*y(k,124) - mat(k,684) = rxt(k,348)*y(k,124) - mat(k,1057) = 1.600_r8*rxt(k,447)*y(k,124) + 2.000_r8*rxt(k,448)*y(k,126) & - + .500_r8*rxt(k,445)*y(k,200) - mat(k,1698) = mat(k,1698) + rxt(k,356)*y(k,1) + rxt(k,150)*y(k,90) & - + .700_r8*rxt(k,376)*y(k,99) + rxt(k,162)*y(k,126) + rxt(k,317) & - *y(k,127) + rxt(k,454)*y(k,177) - mat(k,454) = rxt(k,420)*y(k,124) - mat(k,776) = rxt(k,319)*y(k,124) - mat(k,1139) = rxt(k,323)*y(k,124) - mat(k,1120) = .900_r8*rxt(k,452)*y(k,124) - mat(k,922) = .800_r8*rxt(k,457)*y(k,124) - mat(k,734) = rxt(k,427)*y(k,124) - mat(k,1183) = rxt(k,393)*y(k,124) + rxt(k,394)*y(k,126) - mat(k,759) = rxt(k,433)*y(k,124) - mat(k,506) = rxt(k,436)*y(k,124) - end do - end subroutine nlnmat05 - subroutine nlnmat06( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,1778) = -(rxt(k,159)*y(k,205) + rxt(k,160)*y(k,124) + rxt(k,161) & - *y(k,134) + rxt(k,162)*y(k,219) + rxt(k,170)*y(k,125) + rxt(k,256) & - *y(k,42) + rxt(k,288)*y(k,45) + rxt(k,307)*y(k,29) + rxt(k,314) & - *y(k,49) + rxt(k,327)*y(k,16) + rxt(k,335)*y(k,211) + rxt(k,346) & - *y(k,213) + rxt(k,369)*y(k,207) + rxt(k,375)*y(k,208) + rxt(k,378) & - *y(k,98) + rxt(k,383)*y(k,101) + rxt(k,394)*y(k,227) + rxt(k,439) & - *y(k,6) + rxt(k,442)*y(k,110) + rxt(k,448)*y(k,217) + rxt(k,459) & - *y(k,179) + rxt(k,462)*y(k,67)) - mat(k,2112) = -rxt(k,159)*y(k,126) - mat(k,1922) = -rxt(k,160)*y(k,126) - mat(k,2190) = -rxt(k,161)*y(k,126) - mat(k,1695) = -rxt(k,162)*y(k,126) - mat(k,1966) = -rxt(k,170)*y(k,126) - mat(k,1490) = -rxt(k,256)*y(k,126) - mat(k,1092) = -rxt(k,288)*y(k,126) - mat(k,1035) = -rxt(k,307)*y(k,126) - mat(k,1227) = -rxt(k,314)*y(k,126) - mat(k,357) = -rxt(k,327)*y(k,126) - mat(k,1319) = -rxt(k,335)*y(k,126) - mat(k,1361) = -rxt(k,346)*y(k,126) - mat(k,1266) = -rxt(k,369)*y(k,126) - mat(k,1298) = -rxt(k,375)*y(k,126) - mat(k,848) = -rxt(k,378)*y(k,126) - mat(k,1203) = -rxt(k,383)*y(k,126) - mat(k,1180) = -rxt(k,394)*y(k,126) - mat(k,1013) = -rxt(k,439)*y(k,126) - mat(k,963) = -rxt(k,442)*y(k,126) - mat(k,1054) = -rxt(k,448)*y(k,126) - mat(k,977) = -rxt(k,459)*y(k,126) - mat(k,288) = -rxt(k,462)*y(k,126) - mat(k,562) = rxt(k,221)*y(k,134) - mat(k,2005) = rxt(k,188)*y(k,60) - mat(k,905) = rxt(k,188)*y(k,56) + rxt(k,190)*y(k,134) + rxt(k,191)*y(k,219) - mat(k,872) = rxt(k,235)*y(k,89) - mat(k,1469) = rxt(k,235)*y(k,73) + rxt(k,172)*y(k,219) - mat(k,580) = .500_r8*rxt(k,351)*y(k,219) - mat(k,1966) = mat(k,1966) + rxt(k,158)*y(k,134) + rxt(k,157)*y(k,135) - mat(k,2190) = mat(k,2190) + rxt(k,221)*y(k,20) + rxt(k,190)*y(k,60) & - + rxt(k,158)*y(k,125) - mat(k,2251) = rxt(k,157)*y(k,125) - mat(k,531) = rxt(k,303)*y(k,219) - mat(k,1695) = mat(k,1695) + rxt(k,191)*y(k,60) + rxt(k,172)*y(k,89) & - + .500_r8*rxt(k,351)*y(k,109) + rxt(k,303)*y(k,140) - mat(k,859) = -(rxt(k,317)*y(k,219)) - mat(k,1652) = -rxt(k,317)*y(k,127) - mat(k,1024) = rxt(k,307)*y(k,126) - mat(k,535) = .500_r8*rxt(k,377)*y(k,219) - mat(k,407) = rxt(k,384)*y(k,219) - mat(k,376) = rxt(k,388)*y(k,219) - mat(k,1072) = rxt(k,389)*y(k,219) - mat(k,1741) = rxt(k,307)*y(k,29) - mat(k,1652) = mat(k,1652) + .500_r8*rxt(k,377)*y(k,100) + rxt(k,384)*y(k,102) & - + rxt(k,388)*y(k,115) + rxt(k,389)*y(k,116) - mat(k,393) = -(rxt(k,449)*y(k,219)) - mat(k,1597) = -rxt(k,449)*y(k,128) - mat(k,2037) = rxt(k,446)*y(k,217) - mat(k,1043) = rxt(k,446)*y(k,205) - mat(k,2198) = -(rxt(k,130)*y(k,135) + 4._r8*rxt(k,131)*y(k,134) + rxt(k,133) & - *y(k,77) + rxt(k,134)*y(k,79) + rxt(k,139)*y(k,205) + rxt(k,145) & - *y(k,219) + (rxt(k,156) + rxt(k,158)) * y(k,125) + rxt(k,161) & - *y(k,126) + rxt(k,166)*y(k,124) + rxt(k,190)*y(k,60) + rxt(k,192) & - *y(k,59) + rxt(k,195)*y(k,85) + rxt(k,198)*y(k,92) + rxt(k,221) & - *y(k,20) + rxt(k,222)*y(k,19) + rxt(k,224)*y(k,81) + rxt(k,226) & - *y(k,91) + rxt(k,257)*y(k,42) + rxt(k,464)*y(k,138)) - mat(k,2259) = -rxt(k,130)*y(k,134) - mat(k,1413) = -rxt(k,133)*y(k,134) - mat(k,610) = -rxt(k,134)*y(k,134) - mat(k,2120) = -rxt(k,139)*y(k,134) - mat(k,1703) = -rxt(k,145)*y(k,134) - mat(k,1974) = -(rxt(k,156) + rxt(k,158)) * y(k,134) - mat(k,1786) = -rxt(k,161)*y(k,134) - mat(k,1930) = -rxt(k,166)*y(k,134) - mat(k,909) = -rxt(k,190)*y(k,134) - mat(k,1729) = -rxt(k,192)*y(k,134) - mat(k,2143) = -rxt(k,195)*y(k,134) - mat(k,820) = -rxt(k,198)*y(k,134) - mat(k,565) = -rxt(k,221)*y(k,134) - mat(k,2167) = -rxt(k,222)*y(k,134) - mat(k,812) = -rxt(k,224)*y(k,134) - mat(k,786) = -rxt(k,226)*y(k,134) - mat(k,1498) = -rxt(k,257)*y(k,134) - mat(k,366) = -rxt(k,464)*y(k,134) - mat(k,1457) = rxt(k,137)*y(k,205) - mat(k,499) = rxt(k,151)*y(k,124) + rxt(k,152)*y(k,125) - mat(k,1930) = mat(k,1930) + rxt(k,151)*y(k,112) - mat(k,1974) = mat(k,1974) + rxt(k,152)*y(k,112) - mat(k,2120) = mat(k,2120) + rxt(k,137)*y(k,76) - mat(k,1703) = mat(k,1703) + 2.000_r8*rxt(k,147)*y(k,219) - mat(k,2260) = -(rxt(k,129)*y(k,218) + rxt(k,130)*y(k,134) + rxt(k,140) & - *y(k,205) + rxt(k,141)*y(k,76) + rxt(k,146)*y(k,219) + rxt(k,157) & - *y(k,125) + rxt(k,165)*y(k,124) + rxt(k,181)*y(k,56) + rxt(k,213) & - *y(k,17) + rxt(k,279)*y(k,25) + rxt(k,308)*y(k,29) + rxt(k,338) & - *y(k,105) + rxt(k,352)*y(k,111) + rxt(k,385)*y(k,98) + rxt(k,423) & - *y(k,142) + rxt(k,440)*y(k,6) + rxt(k,443)*y(k,110) + rxt(k,468) & - *y(k,149) + rxt(k,474)*y(k,151)) - mat(k,1540) = -rxt(k,129)*y(k,135) - mat(k,2199) = -rxt(k,130)*y(k,135) - mat(k,2121) = -rxt(k,140)*y(k,135) - mat(k,1458) = -rxt(k,141)*y(k,135) - mat(k,1704) = -rxt(k,146)*y(k,135) - mat(k,1975) = -rxt(k,157)*y(k,135) - mat(k,1931) = -rxt(k,165)*y(k,135) - mat(k,2014) = -rxt(k,181)*y(k,135) - mat(k,1425) = -rxt(k,213)*y(k,135) - mat(k,557) = -rxt(k,279)*y(k,135) - mat(k,1041) = -rxt(k,308)*y(k,135) - mat(k,1220) = -rxt(k,338)*y(k,135) - mat(k,1347) = -rxt(k,352)*y(k,135) - mat(k,851) = -rxt(k,385)*y(k,135) - mat(k,468) = -rxt(k,423)*y(k,135) - mat(k,1019) = -rxt(k,440)*y(k,135) - mat(k,969) = -rxt(k,443)*y(k,135) - mat(k,518) = -rxt(k,468)*y(k,135) - mat(k,1245) = -rxt(k,474)*y(k,135) - mat(k,1399) = .150_r8*rxt(k,293)*y(k,205) - mat(k,2121) = mat(k,2121) + .150_r8*rxt(k,293)*y(k,199) + .150_r8*rxt(k,343) & - *y(k,213) - mat(k,1367) = .150_r8*rxt(k,343)*y(k,205) - mat(k,327) = -(rxt(k,475)*y(k,151)) - mat(k,1231) = -rxt(k,475)*y(k,137) - mat(k,2147) = rxt(k,215)*y(k,59) - mat(k,1709) = rxt(k,215)*y(k,19) + 2.000_r8*rxt(k,185)*y(k,59) - mat(k,359) = -(rxt(k,464)*y(k,134) + rxt(k,465)*y(k,219)) - mat(k,2170) = -rxt(k,464)*y(k,138) - mat(k,1593) = -rxt(k,465)*y(k,138) - mat(k,1148) = rxt(k,331)*y(k,219) - mat(k,1853) = .100_r8*rxt(k,452)*y(k,223) - mat(k,1573) = rxt(k,331)*y(k,93) - mat(k,1104) = .100_r8*rxt(k,452)*y(k,124) - mat(k,526) = -(rxt(k,303)*y(k,219)) - mat(k,1617) = -rxt(k,303)*y(k,140) - mat(k,1940) = rxt(k,305)*y(k,199) - mat(k,1370) = rxt(k,305)*y(k,125) - mat(k,1933) = rxt(k,425)*y(k,190) - mat(k,519) = rxt(k,425)*y(k,125) - mat(k,465) = -(rxt(k,422)*y(k,125) + rxt(k,423)*y(k,135)) - mat(k,1937) = -rxt(k,422)*y(k,142) - mat(k,2208) = -rxt(k,423)*y(k,142) - mat(k,198) = .070_r8*rxt(k,409)*y(k,219) - mat(k,1863) = rxt(k,407)*y(k,198) - mat(k,176) = .060_r8*rxt(k,421)*y(k,219) - mat(k,219) = .070_r8*rxt(k,437)*y(k,219) - mat(k,626) = rxt(k,407)*y(k,124) - mat(k,1608) = .070_r8*rxt(k,409)*y(k,66) + .060_r8*rxt(k,421)*y(k,143) & - + .070_r8*rxt(k,437)*y(k,186) - mat(k,174) = -(rxt(k,421)*y(k,219)) - mat(k,1563) = -rxt(k,421)*y(k,143) - mat(k,166) = .530_r8*rxt(k,398)*y(k,219) - mat(k,1563) = mat(k,1563) + .530_r8*rxt(k,398)*y(k,7) - mat(k,332) = -(rxt(k,424)*y(k,219)) - mat(k,1588) = -rxt(k,424)*y(k,144) - mat(k,2034) = rxt(k,419)*y(k,220) - mat(k,449) = rxt(k,419)*y(k,205) - mat(k,542) = -(rxt(k,320)*y(k,219)) - mat(k,1619) = -rxt(k,320)*y(k,147) - mat(k,2054) = rxt(k,318)*y(k,221) - mat(k,769) = rxt(k,318)*y(k,205) - mat(k,399) = -(rxt(k,324)*y(k,219)) - mat(k,1598) = -rxt(k,324)*y(k,148) - mat(k,2038) = .850_r8*rxt(k,322)*y(k,222) - mat(k,1129) = .850_r8*rxt(k,322)*y(k,205) - mat(k,513) = -(rxt(k,468)*y(k,135) + rxt(k,471)*y(k,219)) - mat(k,2209) = -rxt(k,468)*y(k,149) - mat(k,1615) = -rxt(k,471)*y(k,149) - mat(k,1234) = -(rxt(k,469)*y(k,19) + rxt(k,470)*y(k,59) + rxt(k,472)*y(k,125) & - + rxt(k,474)*y(k,135) + rxt(k,475)*y(k,137) + rxt(k,476) & - *y(k,219)) - mat(k,2151) = -rxt(k,469)*y(k,151) - mat(k,1713) = -rxt(k,470)*y(k,151) - mat(k,1955) = -rxt(k,472)*y(k,151) - mat(k,2236) = -rxt(k,474)*y(k,151) - mat(k,329) = -rxt(k,475)*y(k,151) - mat(k,1679) = -rxt(k,476)*y(k,151) - mat(k,2180) = rxt(k,464)*y(k,138) - mat(k,2236) = mat(k,2236) + rxt(k,468)*y(k,149) - mat(k,363) = rxt(k,464)*y(k,134) - mat(k,514) = rxt(k,468)*y(k,135) + rxt(k,471)*y(k,219) - mat(k,1679) = mat(k,1679) + rxt(k,471)*y(k,149) - mat(k,853) = -(rxt(k,467)*y(k,219)) - mat(k,1651) = -rxt(k,467)*y(k,152) - mat(k,2150) = rxt(k,469)*y(k,151) - mat(k,1711) = rxt(k,470)*y(k,151) - mat(k,285) = rxt(k,462)*y(k,126) + (rxt(k,463)+.500_r8*rxt(k,477))*y(k,219) - mat(k,1948) = rxt(k,472)*y(k,151) - mat(k,1740) = rxt(k,462)*y(k,67) - mat(k,2216) = rxt(k,474)*y(k,151) - mat(k,328) = rxt(k,475)*y(k,151) - mat(k,361) = rxt(k,465)*y(k,219) - mat(k,1233) = rxt(k,469)*y(k,19) + rxt(k,470)*y(k,59) + rxt(k,472)*y(k,125) & - + rxt(k,474)*y(k,135) + rxt(k,475)*y(k,137) + rxt(k,476) & - *y(k,219) - mat(k,1651) = mat(k,1651) + (rxt(k,463)+.500_r8*rxt(k,477))*y(k,67) & - + rxt(k,465)*y(k,138) + rxt(k,476)*y(k,151) - mat(k,259) = -(rxt(k,478)*y(k,231)) - mat(k,2263) = -rxt(k,478)*y(k,153) - mat(k,852) = rxt(k,467)*y(k,219) - mat(k,1579) = rxt(k,467)*y(k,152) - mat(k,986) = .2202005_r8*rxt(k,497)*y(k,135) - mat(k,937) = .0508005_r8*rxt(k,513)*y(k,135) - mat(k,1841) = .1279005_r8*rxt(k,496)*y(k,192) + .0097005_r8*rxt(k,501) & - *y(k,194) + .0003005_r8*rxt(k,504)*y(k,209) & - + .1056005_r8*rxt(k,508)*y(k,210) + .0245005_r8*rxt(k,512) & - *y(k,216) + .0154005_r8*rxt(k,518)*y(k,226) & - + .0063005_r8*rxt(k,521)*y(k,229) - mat(k,2201) = .2202005_r8*rxt(k,497)*y(k,6) + .0508005_r8*rxt(k,513)*y(k,110) - mat(k,45) = .5931005_r8*rxt(k,515)*y(k,219) - mat(k,51) = .1279005_r8*rxt(k,496)*y(k,124) + .2202005_r8*rxt(k,495)*y(k,205) - mat(k,57) = .0097005_r8*rxt(k,501)*y(k,124) + .0023005_r8*rxt(k,500)*y(k,205) - mat(k,2016) = .2202005_r8*rxt(k,495)*y(k,192) + .0023005_r8*rxt(k,500) & - *y(k,194) + .0031005_r8*rxt(k,503)*y(k,209) & - + .2381005_r8*rxt(k,507)*y(k,210) + .0508005_r8*rxt(k,511) & - *y(k,216) + .1364005_r8*rxt(k,517)*y(k,226) & - + .1677005_r8*rxt(k,520)*y(k,229) - mat(k,63) = .0003005_r8*rxt(k,504)*y(k,124) + .0031005_r8*rxt(k,503)*y(k,205) - mat(k,69) = .1056005_r8*rxt(k,508)*y(k,124) + .2381005_r8*rxt(k,507)*y(k,205) - mat(k,77) = .0245005_r8*rxt(k,512)*y(k,124) + .0508005_r8*rxt(k,511)*y(k,205) - mat(k,1542) = .5931005_r8*rxt(k,515)*y(k,174) - mat(k,83) = .0154005_r8*rxt(k,518)*y(k,124) + .1364005_r8*rxt(k,517)*y(k,205) - mat(k,89) = .0063005_r8*rxt(k,521)*y(k,124) + .1677005_r8*rxt(k,520)*y(k,205) - end do - end subroutine nlnmat06 - subroutine nlnmat07( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,987) = .2067005_r8*rxt(k,497)*y(k,135) - mat(k,938) = .1149005_r8*rxt(k,513)*y(k,135) - mat(k,1842) = .1792005_r8*rxt(k,496)*y(k,192) + .0034005_r8*rxt(k,501) & - *y(k,194) + .0003005_r8*rxt(k,504)*y(k,209) & - + .1026005_r8*rxt(k,508)*y(k,210) + .0082005_r8*rxt(k,512) & - *y(k,216) + .0452005_r8*rxt(k,518)*y(k,226) & - + .0237005_r8*rxt(k,521)*y(k,229) - mat(k,2202) = .2067005_r8*rxt(k,497)*y(k,6) + .1149005_r8*rxt(k,513)*y(k,110) - mat(k,46) = .1534005_r8*rxt(k,515)*y(k,219) - mat(k,52) = .1792005_r8*rxt(k,496)*y(k,124) + .2067005_r8*rxt(k,495)*y(k,205) - mat(k,58) = .0034005_r8*rxt(k,501)*y(k,124) + .0008005_r8*rxt(k,500)*y(k,205) - mat(k,2017) = .2067005_r8*rxt(k,495)*y(k,192) + .0008005_r8*rxt(k,500) & - *y(k,194) + .0035005_r8*rxt(k,503)*y(k,209) & - + .1308005_r8*rxt(k,507)*y(k,210) + .1149005_r8*rxt(k,511) & - *y(k,216) + .0101005_r8*rxt(k,517)*y(k,226) & - + .0174005_r8*rxt(k,520)*y(k,229) - mat(k,64) = .0003005_r8*rxt(k,504)*y(k,124) + .0035005_r8*rxt(k,503)*y(k,205) - mat(k,70) = .1026005_r8*rxt(k,508)*y(k,124) + .1308005_r8*rxt(k,507)*y(k,205) - mat(k,78) = .0082005_r8*rxt(k,512)*y(k,124) + .1149005_r8*rxt(k,511)*y(k,205) - mat(k,1543) = .1534005_r8*rxt(k,515)*y(k,174) - mat(k,84) = .0452005_r8*rxt(k,518)*y(k,124) + .0101005_r8*rxt(k,517)*y(k,205) - mat(k,90) = .0237005_r8*rxt(k,521)*y(k,124) + .0174005_r8*rxt(k,520)*y(k,205) - mat(k,988) = .0653005_r8*rxt(k,497)*y(k,135) - mat(k,939) = .0348005_r8*rxt(k,513)*y(k,135) - mat(k,1843) = .0676005_r8*rxt(k,496)*y(k,192) + .1579005_r8*rxt(k,501) & - *y(k,194) + .0073005_r8*rxt(k,504)*y(k,209) & - + .0521005_r8*rxt(k,508)*y(k,210) + .0772005_r8*rxt(k,512) & - *y(k,216) + .0966005_r8*rxt(k,518)*y(k,226) & - + .0025005_r8*rxt(k,521)*y(k,229) - mat(k,2203) = .0653005_r8*rxt(k,497)*y(k,6) + .0348005_r8*rxt(k,513)*y(k,110) - mat(k,47) = .0459005_r8*rxt(k,515)*y(k,219) - mat(k,53) = .0676005_r8*rxt(k,496)*y(k,124) + .0653005_r8*rxt(k,495)*y(k,205) - mat(k,59) = .1579005_r8*rxt(k,501)*y(k,124) + .0843005_r8*rxt(k,500)*y(k,205) - mat(k,2018) = .0653005_r8*rxt(k,495)*y(k,192) + .0843005_r8*rxt(k,500) & - *y(k,194) + .0003005_r8*rxt(k,503)*y(k,209) & - + .0348005_r8*rxt(k,507)*y(k,210) + .0348005_r8*rxt(k,511) & - *y(k,216) + .0763005_r8*rxt(k,517)*y(k,226) + .086_r8*rxt(k,520) & - *y(k,229) - mat(k,65) = .0073005_r8*rxt(k,504)*y(k,124) + .0003005_r8*rxt(k,503)*y(k,205) - mat(k,71) = .0521005_r8*rxt(k,508)*y(k,124) + .0348005_r8*rxt(k,507)*y(k,205) - mat(k,79) = .0772005_r8*rxt(k,512)*y(k,124) + .0348005_r8*rxt(k,511)*y(k,205) - mat(k,1544) = .0459005_r8*rxt(k,515)*y(k,174) - mat(k,85) = .0966005_r8*rxt(k,518)*y(k,124) + .0763005_r8*rxt(k,517)*y(k,205) - mat(k,91) = .0025005_r8*rxt(k,521)*y(k,124) + .086_r8*rxt(k,520)*y(k,205) - mat(k,989) = .1749305_r8*rxt(k,494)*y(k,126) + .1284005_r8*rxt(k,497) & - *y(k,135) - mat(k,833) = .0590245_r8*rxt(k,502)*y(k,126) + .0033005_r8*rxt(k,505) & - *y(k,135) - mat(k,940) = .1749305_r8*rxt(k,510)*y(k,126) + .0554005_r8*rxt(k,513) & - *y(k,135) - mat(k,1844) = .079_r8*rxt(k,496)*y(k,192) + .0059005_r8*rxt(k,501)*y(k,194) & - + .0057005_r8*rxt(k,504)*y(k,209) + .0143005_r8*rxt(k,508) & - *y(k,210) + .0332005_r8*rxt(k,512)*y(k,216) & - + .0073005_r8*rxt(k,518)*y(k,226) + .011_r8*rxt(k,521)*y(k,229) - mat(k,1732) = .1749305_r8*rxt(k,494)*y(k,6) + .0590245_r8*rxt(k,502)*y(k,98) & - + .1749305_r8*rxt(k,510)*y(k,110) - mat(k,2204) = .1284005_r8*rxt(k,497)*y(k,6) + .0033005_r8*rxt(k,505)*y(k,98) & - + .0554005_r8*rxt(k,513)*y(k,110) - mat(k,48) = .0085005_r8*rxt(k,515)*y(k,219) - mat(k,54) = .079_r8*rxt(k,496)*y(k,124) + .1284005_r8*rxt(k,495)*y(k,205) - mat(k,60) = .0059005_r8*rxt(k,501)*y(k,124) + .0443005_r8*rxt(k,500)*y(k,205) - mat(k,2019) = .1284005_r8*rxt(k,495)*y(k,192) + .0443005_r8*rxt(k,500) & - *y(k,194) + .0271005_r8*rxt(k,503)*y(k,209) & - + .0076005_r8*rxt(k,507)*y(k,210) + .0554005_r8*rxt(k,511) & - *y(k,216) + .2157005_r8*rxt(k,517)*y(k,226) & - + .0512005_r8*rxt(k,520)*y(k,229) - mat(k,66) = .0057005_r8*rxt(k,504)*y(k,124) + .0271005_r8*rxt(k,503)*y(k,205) - mat(k,72) = .0143005_r8*rxt(k,508)*y(k,124) + .0076005_r8*rxt(k,507)*y(k,205) - mat(k,80) = .0332005_r8*rxt(k,512)*y(k,124) + .0554005_r8*rxt(k,511)*y(k,205) - mat(k,1545) = .0085005_r8*rxt(k,515)*y(k,174) - mat(k,86) = .0073005_r8*rxt(k,518)*y(k,124) + .2157005_r8*rxt(k,517)*y(k,205) - mat(k,92) = .011_r8*rxt(k,521)*y(k,124) + .0512005_r8*rxt(k,520)*y(k,205) - mat(k,990) = .5901905_r8*rxt(k,494)*y(k,126) + .114_r8*rxt(k,497)*y(k,135) - mat(k,834) = .0250245_r8*rxt(k,502)*y(k,126) - mat(k,941) = .5901905_r8*rxt(k,510)*y(k,126) + .1278005_r8*rxt(k,513) & - *y(k,135) - mat(k,1845) = .1254005_r8*rxt(k,496)*y(k,192) + .0536005_r8*rxt(k,501) & - *y(k,194) + .0623005_r8*rxt(k,504)*y(k,209) & - + .0166005_r8*rxt(k,508)*y(k,210) + .130_r8*rxt(k,512)*y(k,216) & - + .238_r8*rxt(k,518)*y(k,226) + .1185005_r8*rxt(k,521)*y(k,229) - mat(k,1733) = .5901905_r8*rxt(k,494)*y(k,6) + .0250245_r8*rxt(k,502)*y(k,98) & - + .5901905_r8*rxt(k,510)*y(k,110) - mat(k,2205) = .114_r8*rxt(k,497)*y(k,6) + .1278005_r8*rxt(k,513)*y(k,110) - mat(k,49) = .0128005_r8*rxt(k,515)*y(k,219) - mat(k,55) = .1254005_r8*rxt(k,496)*y(k,124) + .114_r8*rxt(k,495)*y(k,205) - mat(k,61) = .0536005_r8*rxt(k,501)*y(k,124) + .1621005_r8*rxt(k,500)*y(k,205) - mat(k,2020) = .114_r8*rxt(k,495)*y(k,192) + .1621005_r8*rxt(k,500)*y(k,194) & - + .0474005_r8*rxt(k,503)*y(k,209) + .0113005_r8*rxt(k,507) & - *y(k,210) + .1278005_r8*rxt(k,511)*y(k,216) & - + .0738005_r8*rxt(k,517)*y(k,226) + .1598005_r8*rxt(k,520) & - *y(k,229) - mat(k,67) = .0623005_r8*rxt(k,504)*y(k,124) + .0474005_r8*rxt(k,503)*y(k,205) - mat(k,73) = .0166005_r8*rxt(k,508)*y(k,124) + .0113005_r8*rxt(k,507)*y(k,205) - mat(k,81) = .130_r8*rxt(k,512)*y(k,124) + .1278005_r8*rxt(k,511)*y(k,205) - mat(k,1546) = .0128005_r8*rxt(k,515)*y(k,174) - mat(k,87) = .238_r8*rxt(k,518)*y(k,124) + .0738005_r8*rxt(k,517)*y(k,205) - mat(k,93) = .1185005_r8*rxt(k,521)*y(k,124) + .1598005_r8*rxt(k,520)*y(k,205) - mat(k,50) = -(rxt(k,515)*y(k,219)) - mat(k,1547) = -rxt(k,515)*y(k,174) - mat(k,191) = .100_r8*rxt(k,429)*y(k,219) - mat(k,209) = .230_r8*rxt(k,431)*y(k,219) - mat(k,1567) = .100_r8*rxt(k,429)*y(k,182) + .230_r8*rxt(k,431)*y(k,184) - mat(k,644) = -(rxt(k,453)*y(k,219)) - mat(k,1631) = -rxt(k,453)*y(k,176) - mat(k,2058) = rxt(k,451)*y(k,223) - mat(k,1105) = rxt(k,451)*y(k,205) - mat(k,619) = -(rxt(k,454)*y(k,219)) - mat(k,1628) = -rxt(k,454)*y(k,177) - mat(k,1873) = .200_r8*rxt(k,447)*y(k,217) + .200_r8*rxt(k,457)*y(k,224) - mat(k,1793) = .500_r8*rxt(k,445)*y(k,217) - mat(k,1044) = .200_r8*rxt(k,447)*y(k,124) + .500_r8*rxt(k,445)*y(k,200) - mat(k,912) = .200_r8*rxt(k,457)*y(k,124) - mat(k,476) = -(rxt(k,458)*y(k,219)) - mat(k,1610) = -rxt(k,458)*y(k,178) - mat(k,2050) = rxt(k,456)*y(k,224) - mat(k,911) = rxt(k,456)*y(k,205) - mat(k,971) = -(rxt(k,459)*y(k,126) + rxt(k,460)*y(k,219)) - mat(k,1745) = -rxt(k,459)*y(k,179) - mat(k,1661) = -rxt(k,460)*y(k,179) - mat(k,999) = .330_r8*rxt(k,440)*y(k,135) - mat(k,951) = .330_r8*rxt(k,443)*y(k,135) - mat(k,1892) = .800_r8*rxt(k,447)*y(k,217) + .800_r8*rxt(k,457)*y(k,224) - mat(k,1745) = mat(k,1745) + rxt(k,448)*y(k,217) - mat(k,2221) = .330_r8*rxt(k,440)*y(k,6) + .330_r8*rxt(k,443)*y(k,110) - mat(k,620) = rxt(k,454)*y(k,219) - mat(k,1802) = .500_r8*rxt(k,445)*y(k,217) + rxt(k,455)*y(k,224) - mat(k,1046) = .800_r8*rxt(k,447)*y(k,124) + rxt(k,448)*y(k,126) & - + .500_r8*rxt(k,445)*y(k,200) - mat(k,1661) = mat(k,1661) + rxt(k,454)*y(k,177) - mat(k,916) = .800_r8*rxt(k,457)*y(k,124) + rxt(k,455)*y(k,200) - mat(k,1061) = -(rxt(k,461)*y(k,219)) - mat(k,1666) = -rxt(k,461)*y(k,180) - mat(k,1003) = .300_r8*rxt(k,440)*y(k,135) - mat(k,954) = .300_r8*rxt(k,443)*y(k,135) - mat(k,1895) = .900_r8*rxt(k,452)*y(k,223) - mat(k,2226) = .300_r8*rxt(k,440)*y(k,6) + .300_r8*rxt(k,443)*y(k,110) - mat(k,1805) = rxt(k,450)*y(k,223) - mat(k,1109) = .900_r8*rxt(k,452)*y(k,124) + rxt(k,450)*y(k,200) - mat(k,657) = -(rxt(k,428)*y(k,219)) - mat(k,1632) = -rxt(k,428)*y(k,181) - mat(k,2059) = rxt(k,426)*y(k,225) - mat(k,724) = rxt(k,426)*y(k,205) - mat(k,189) = -(rxt(k,429)*y(k,219)) - mat(k,1565) = -rxt(k,429)*y(k,182) - mat(k,205) = -(rxt(k,395)*y(k,219)) - mat(k,1568) = -rxt(k,395)*y(k,183) - mat(k,2029) = rxt(k,392)*y(k,227) - mat(k,1168) = rxt(k,392)*y(k,205) - mat(k,210) = -(rxt(k,431)*y(k,219)) - mat(k,1569) = -rxt(k,431)*y(k,184) - mat(k,695) = -(rxt(k,434)*y(k,219)) - mat(k,1636) = -rxt(k,434)*y(k,185) - mat(k,2063) = rxt(k,432)*y(k,228) - mat(k,748) = rxt(k,432)*y(k,205) - mat(k,218) = -(rxt(k,437)*y(k,219)) - mat(k,1570) = -rxt(k,437)*y(k,186) - mat(k,211) = .150_r8*rxt(k,431)*y(k,219) - mat(k,1570) = mat(k,1570) + .150_r8*rxt(k,431)*y(k,184) - mat(k,429) = -(rxt(k,438)*y(k,219)) - mat(k,1603) = -rxt(k,438)*y(k,187) - mat(k,2043) = rxt(k,435)*y(k,230) - mat(k,500) = rxt(k,435)*y(k,205) - mat(k,520) = -(rxt(k,396)*y(k,205) + rxt(k,397)*y(k,124) + rxt(k,425) & - *y(k,125)) - mat(k,2053) = -rxt(k,396)*y(k,190) - mat(k,1868) = -rxt(k,397)*y(k,190) - mat(k,1939) = -rxt(k,425)*y(k,190) - mat(k,238) = rxt(k,402)*y(k,219) - mat(k,1616) = rxt(k,402)*y(k,22) - mat(k,889) = -(rxt(k,357)*y(k,205) + (rxt(k,358) + rxt(k,359)) * y(k,124)) - mat(k,2079) = -rxt(k,357)*y(k,191) - mat(k,1888) = -(rxt(k,358) + rxt(k,359)) * y(k,191) - mat(k,671) = rxt(k,360)*y(k,219) - mat(k,229) = rxt(k,361)*y(k,219) - mat(k,1655) = rxt(k,360)*y(k,2) + rxt(k,361)*y(k,15) - mat(k,56) = -(rxt(k,495)*y(k,205) + rxt(k,496)*y(k,124)) - mat(k,2021) = -rxt(k,495)*y(k,192) - mat(k,1846) = -rxt(k,496)*y(k,192) - mat(k,991) = rxt(k,498)*y(k,219) - mat(k,1548) = rxt(k,498)*y(k,6) - mat(k,485) = -(rxt(k,399)*y(k,205) + rxt(k,400)*y(k,124)) - mat(k,2051) = -rxt(k,399)*y(k,193) - mat(k,1864) = -rxt(k,400)*y(k,193) - mat(k,167) = .350_r8*rxt(k,398)*y(k,219) - mat(k,419) = rxt(k,401)*y(k,219) - mat(k,1611) = .350_r8*rxt(k,398)*y(k,7) + rxt(k,401)*y(k,8) - mat(k,62) = -(rxt(k,500)*y(k,205) + rxt(k,501)*y(k,124)) - mat(k,2022) = -rxt(k,500)*y(k,194) - mat(k,1847) = -rxt(k,501)*y(k,194) - mat(k,163) = rxt(k,499)*y(k,219) - mat(k,1549) = rxt(k,499)*y(k,7) - mat(k,437) = -(rxt(k,403)*y(k,205) + rxt(k,405)*y(k,124)) - mat(k,2044) = -rxt(k,403)*y(k,195) - mat(k,1859) = -rxt(k,405)*y(k,195) - mat(k,339) = rxt(k,404)*y(k,219) - mat(k,192) = .070_r8*rxt(k,429)*y(k,219) - mat(k,212) = .060_r8*rxt(k,431)*y(k,219) - mat(k,1604) = rxt(k,404)*y(k,23) + .070_r8*rxt(k,429)*y(k,182) & - + .060_r8*rxt(k,431)*y(k,184) - mat(k,825) = -(4._r8*rxt(k,280)*y(k,196) + rxt(k,281)*y(k,200) + rxt(k,282) & - *y(k,205) + rxt(k,283)*y(k,124)) - mat(k,1798) = -rxt(k,281)*y(k,196) - mat(k,2076) = -rxt(k,282)*y(k,196) - mat(k,1885) = -rxt(k,283)*y(k,196) - mat(k,344) = .500_r8*rxt(k,285)*y(k,219) - mat(k,307) = rxt(k,286)*y(k,56) + rxt(k,287)*y(k,219) - mat(k,1988) = rxt(k,286)*y(k,28) - mat(k,1649) = .500_r8*rxt(k,285)*y(k,27) + rxt(k,287)*y(k,28) - end do - end subroutine nlnmat07 - subroutine nlnmat08( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,789) = -(rxt(k,309)*y(k,200) + rxt(k,310)*y(k,205) + rxt(k,311) & - *y(k,124)) - mat(k,1795) = -rxt(k,309)*y(k,197) - mat(k,2072) = -rxt(k,310)*y(k,197) - mat(k,1883) = -rxt(k,311)*y(k,197) - mat(k,412) = rxt(k,312)*y(k,219) - mat(k,112) = rxt(k,313)*y(k,219) - mat(k,1644) = rxt(k,312)*y(k,30) + rxt(k,313)*y(k,31) - mat(k,627) = -(rxt(k,406)*y(k,205) + rxt(k,407)*y(k,124)) - mat(k,2057) = -rxt(k,406)*y(k,198) - mat(k,1874) = -rxt(k,407)*y(k,198) - mat(k,269) = rxt(k,408)*y(k,219) - mat(k,1874) = mat(k,1874) + rxt(k,397)*y(k,190) - mat(k,2211) = rxt(k,423)*y(k,142) - mat(k,466) = rxt(k,423)*y(k,135) - mat(k,521) = rxt(k,397)*y(k,124) + .400_r8*rxt(k,396)*y(k,205) - mat(k,2057) = mat(k,2057) + .400_r8*rxt(k,396)*y(k,190) - mat(k,1629) = rxt(k,408)*y(k,32) - mat(k,1388) = -(4._r8*rxt(k,291)*y(k,199) + rxt(k,292)*y(k,200) + rxt(k,293) & - *y(k,205) + rxt(k,294)*y(k,124) + rxt(k,305)*y(k,125) + rxt(k,332) & - *y(k,211) + rxt(k,365)*y(k,207) + rxt(k,370)*y(k,208) + rxt(k,379) & - *y(k,101) + rxt(k,390)*y(k,227)) - mat(k,1822) = -rxt(k,292)*y(k,199) - mat(k,2102) = -rxt(k,293)*y(k,199) - mat(k,1913) = -rxt(k,294)*y(k,199) - mat(k,1957) = -rxt(k,305)*y(k,199) - mat(k,1315) = -rxt(k,332)*y(k,199) - mat(k,1262) = -rxt(k,365)*y(k,199) - mat(k,1294) = -rxt(k,370)*y(k,199) - mat(k,1199) = -rxt(k,379)*y(k,199) - mat(k,1177) = -rxt(k,390)*y(k,199) - mat(k,1009) = .060_r8*rxt(k,440)*y(k,135) - mat(k,1089) = rxt(k,288)*y(k,126) + rxt(k,289)*y(k,219) - mat(k,1224) = rxt(k,314)*y(k,126) + rxt(k,315)*y(k,219) - mat(k,614) = .500_r8*rxt(k,296)*y(k,219) - mat(k,845) = .080_r8*rxt(k,385)*y(k,135) - mat(k,1215) = .100_r8*rxt(k,338)*y(k,135) - mat(k,959) = .060_r8*rxt(k,443)*y(k,135) - mat(k,1336) = .280_r8*rxt(k,352)*y(k,135) - mat(k,1913) = mat(k,1913) + .530_r8*rxt(k,336)*y(k,211) + rxt(k,345)*y(k,213) & - + rxt(k,348)*y(k,215) + rxt(k,323)*y(k,222) - mat(k,1769) = rxt(k,288)*y(k,45) + rxt(k,314)*y(k,49) + .530_r8*rxt(k,335) & - *y(k,211) + rxt(k,346)*y(k,213) - mat(k,2242) = .060_r8*rxt(k,440)*y(k,6) + .080_r8*rxt(k,385)*y(k,98) & - + .100_r8*rxt(k,338)*y(k,105) + .060_r8*rxt(k,443)*y(k,110) & - + .280_r8*rxt(k,352)*y(k,111) - mat(k,1064) = .650_r8*rxt(k,461)*y(k,219) - mat(k,1388) = mat(k,1388) + .530_r8*rxt(k,332)*y(k,211) - mat(k,1822) = mat(k,1822) + .260_r8*rxt(k,333)*y(k,211) + rxt(k,342)*y(k,213) & - + .300_r8*rxt(k,321)*y(k,222) - mat(k,2102) = mat(k,2102) + .450_r8*rxt(k,343)*y(k,213) + .200_r8*rxt(k,347) & - *y(k,215) + .150_r8*rxt(k,322)*y(k,222) - mat(k,1315) = mat(k,1315) + .530_r8*rxt(k,336)*y(k,124) + .530_r8*rxt(k,335) & - *y(k,126) + .530_r8*rxt(k,332)*y(k,199) + .260_r8*rxt(k,333) & - *y(k,200) - mat(k,1357) = rxt(k,345)*y(k,124) + rxt(k,346)*y(k,126) + rxt(k,342)*y(k,200) & - + .450_r8*rxt(k,343)*y(k,205) + 4.000_r8*rxt(k,344)*y(k,213) - mat(k,681) = rxt(k,348)*y(k,124) + .200_r8*rxt(k,347)*y(k,205) - mat(k,1685) = rxt(k,289)*y(k,45) + rxt(k,315)*y(k,49) + .500_r8*rxt(k,296) & - *y(k,51) + .650_r8*rxt(k,461)*y(k,180) - mat(k,1134) = rxt(k,323)*y(k,124) + .300_r8*rxt(k,321)*y(k,200) & - + .150_r8*rxt(k,322)*y(k,205) - mat(k,1831) = -(rxt(k,182)*y(k,59) + (4._r8*rxt(k,259) + 4._r8*rxt(k,260) & - ) * y(k,200) + rxt(k,261)*y(k,205) + rxt(k,262)*y(k,124) & - + rxt(k,281)*y(k,196) + rxt(k,292)*y(k,199) + rxt(k,309) & - *y(k,197) + rxt(k,321)*y(k,222) + rxt(k,333)*y(k,211) + rxt(k,342) & - *y(k,213) + rxt(k,366)*y(k,207) + rxt(k,371)*y(k,208) + rxt(k,380) & - *y(k,101) + rxt(k,391)*y(k,227) + rxt(k,445)*y(k,217) + rxt(k,450) & - *y(k,223) + rxt(k,455)*y(k,224)) - mat(k,1722) = -rxt(k,182)*y(k,200) - mat(k,2113) = -rxt(k,261)*y(k,200) - mat(k,1923) = -rxt(k,262)*y(k,200) - mat(k,829) = -rxt(k,281)*y(k,200) - mat(k,1394) = -rxt(k,292)*y(k,200) - mat(k,794) = -rxt(k,309)*y(k,200) - mat(k,1137) = -rxt(k,321)*y(k,200) - mat(k,1320) = -rxt(k,333)*y(k,200) - mat(k,1362) = -rxt(k,342)*y(k,200) - mat(k,1267) = -rxt(k,366)*y(k,200) - mat(k,1299) = -rxt(k,371)*y(k,200) - mat(k,1204) = -rxt(k,380)*y(k,200) - mat(k,1181) = -rxt(k,391)*y(k,200) - mat(k,1055) = -rxt(k,445)*y(k,200) - mat(k,1118) = -rxt(k,450)*y(k,200) - mat(k,920) = -rxt(k,455)*y(k,200) - mat(k,1036) = .280_r8*rxt(k,308)*y(k,135) - mat(k,689) = rxt(k,295)*y(k,219) - mat(k,460) = .700_r8*rxt(k,264)*y(k,219) - mat(k,1439) = rxt(k,176)*y(k,56) + rxt(k,232)*y(k,73) + rxt(k,271)*y(k,218) & - + rxt(k,265)*y(k,219) - mat(k,2006) = rxt(k,176)*y(k,54) - mat(k,873) = rxt(k,232)*y(k,54) - mat(k,849) = .050_r8*rxt(k,385)*y(k,135) - mat(k,1204) = mat(k,1204) + rxt(k,379)*y(k,199) - mat(k,1923) = mat(k,1923) + rxt(k,294)*y(k,199) + .830_r8*rxt(k,411)*y(k,201) & - + .170_r8*rxt(k,417)*y(k,214) - mat(k,2252) = .280_r8*rxt(k,308)*y(k,29) + .050_r8*rxt(k,385)*y(k,98) - mat(k,1394) = mat(k,1394) + rxt(k,379)*y(k,101) + rxt(k,294)*y(k,124) & - + 4.000_r8*rxt(k,291)*y(k,199) + .900_r8*rxt(k,292)*y(k,200) & - + .450_r8*rxt(k,293)*y(k,205) + rxt(k,365)*y(k,207) + rxt(k,370) & - *y(k,208) + rxt(k,332)*y(k,211) + rxt(k,341)*y(k,213) & - + rxt(k,390)*y(k,227) - mat(k,1831) = mat(k,1831) + .900_r8*rxt(k,292)*y(k,199) - mat(k,765) = .830_r8*rxt(k,411)*y(k,124) + .330_r8*rxt(k,410)*y(k,205) - mat(k,2113) = mat(k,2113) + .450_r8*rxt(k,293)*y(k,199) + .330_r8*rxt(k,410) & - *y(k,201) + .070_r8*rxt(k,416)*y(k,214) - mat(k,1267) = mat(k,1267) + rxt(k,365)*y(k,199) - mat(k,1299) = mat(k,1299) + rxt(k,370)*y(k,199) - mat(k,1320) = mat(k,1320) + rxt(k,332)*y(k,199) - mat(k,1362) = mat(k,1362) + rxt(k,341)*y(k,199) - mat(k,880) = .170_r8*rxt(k,417)*y(k,124) + .070_r8*rxt(k,416)*y(k,205) - mat(k,1532) = rxt(k,271)*y(k,54) - mat(k,1696) = rxt(k,295)*y(k,50) + .700_r8*rxt(k,264)*y(k,53) + rxt(k,265) & - *y(k,54) - mat(k,1181) = mat(k,1181) + rxt(k,390)*y(k,199) - mat(k,761) = -(rxt(k,410)*y(k,205) + rxt(k,411)*y(k,124) + rxt(k,412) & - *y(k,125)) - mat(k,2069) = -rxt(k,410)*y(k,201) - mat(k,1881) = -rxt(k,411)*y(k,201) - mat(k,1945) = -rxt(k,412)*y(k,201) - mat(k,566) = -((rxt(k,329) + rxt(k,330)) * y(k,124)) - mat(k,1870) = -(rxt(k,329) + rxt(k,330)) * y(k,202) - mat(k,352) = rxt(k,328)*y(k,219) - mat(k,1621) = rxt(k,328)*y(k,16) - mat(k,1855) = .750_r8*rxt(k,298)*y(k,204) - mat(k,707) = .750_r8*rxt(k,298)*y(k,124) - mat(k,708) = -(rxt(k,297)*y(k,205) + rxt(k,298)*y(k,124)) - mat(k,2064) = -rxt(k,297)*y(k,204) - mat(k,1877) = -rxt(k,298)*y(k,204) - mat(k,551) = rxt(k,304)*y(k,219) - mat(k,1637) = rxt(k,304)*y(k,25) - mat(k,2117) = -((rxt(k,135) + rxt(k,136) + rxt(k,137)) * y(k,76) + rxt(k,139) & - *y(k,134) + rxt(k,140)*y(k,135) + rxt(k,144)*y(k,219) & - + 4._r8*rxt(k,149)*y(k,205) + rxt(k,159)*y(k,126) + rxt(k,164) & - *y(k,124) + rxt(k,169)*y(k,125) + (rxt(k,179) + rxt(k,180) & - ) * y(k,56) + rxt(k,186)*y(k,59) + rxt(k,212)*y(k,17) + rxt(k,218) & - *y(k,19) + rxt(k,255)*y(k,42) + rxt(k,261)*y(k,200) + rxt(k,268) & - *y(k,206) + rxt(k,282)*y(k,196) + rxt(k,293)*y(k,199) + rxt(k,297) & - *y(k,204) + rxt(k,310)*y(k,197) + rxt(k,318)*y(k,221) + rxt(k,322) & - *y(k,222) + rxt(k,334)*y(k,211) + rxt(k,343)*y(k,213) + rxt(k,347) & - *y(k,215) + rxt(k,357)*y(k,191) + rxt(k,367)*y(k,207) + rxt(k,372) & - *y(k,208) + rxt(k,381)*y(k,101) + rxt(k,392)*y(k,227) + rxt(k,396) & - *y(k,190) + rxt(k,399)*y(k,193) + rxt(k,403)*y(k,195) + rxt(k,406) & - *y(k,198) + rxt(k,410)*y(k,201) + rxt(k,413)*y(k,212) + rxt(k,416) & - *y(k,214) + rxt(k,419)*y(k,220) + rxt(k,426)*y(k,225) + rxt(k,432) & - *y(k,228) + rxt(k,435)*y(k,230) + rxt(k,446)*y(k,217) + rxt(k,451) & - *y(k,223) + rxt(k,456)*y(k,224)) - mat(k,1455) = -(rxt(k,135) + rxt(k,136) + rxt(k,137)) * y(k,205) - mat(k,2195) = -rxt(k,139)*y(k,205) - mat(k,2256) = -rxt(k,140)*y(k,205) - mat(k,1700) = -rxt(k,144)*y(k,205) - mat(k,1783) = -rxt(k,159)*y(k,205) - mat(k,1927) = -rxt(k,164)*y(k,205) - mat(k,1971) = -rxt(k,169)*y(k,205) - mat(k,2010) = -(rxt(k,179) + rxt(k,180)) * y(k,205) - mat(k,1726) = -rxt(k,186)*y(k,205) - mat(k,1422) = -rxt(k,212)*y(k,205) - mat(k,2164) = -rxt(k,218)*y(k,205) - mat(k,1495) = -rxt(k,255)*y(k,205) - mat(k,1835) = -rxt(k,261)*y(k,205) - mat(k,448) = -rxt(k,268)*y(k,205) - mat(k,832) = -rxt(k,282)*y(k,205) - mat(k,1397) = -rxt(k,293)*y(k,205) - mat(k,714) = -rxt(k,297)*y(k,205) - mat(k,797) = -rxt(k,310)*y(k,205) - mat(k,777) = -rxt(k,318)*y(k,205) - mat(k,1140) = -rxt(k,322)*y(k,205) - mat(k,1323) = -rxt(k,334)*y(k,205) - mat(k,1365) = -rxt(k,343)*y(k,205) - mat(k,685) = -rxt(k,347)*y(k,205) - mat(k,898) = -rxt(k,357)*y(k,205) - mat(k,1270) = -rxt(k,367)*y(k,205) - mat(k,1302) = -rxt(k,372)*y(k,205) - mat(k,1207) = -rxt(k,381)*y(k,205) - mat(k,1184) = -rxt(k,392)*y(k,205) - mat(k,525) = -rxt(k,396)*y(k,205) - mat(k,491) = -rxt(k,399)*y(k,205) - mat(k,442) = -rxt(k,403)*y(k,205) - mat(k,631) = -rxt(k,406)*y(k,205) - mat(k,768) = -rxt(k,410)*y(k,205) - mat(k,720) = -rxt(k,413)*y(k,205) - mat(k,883) = -rxt(k,416)*y(k,205) - mat(k,455) = -rxt(k,419)*y(k,205) - mat(k,735) = -rxt(k,426)*y(k,205) - mat(k,760) = -rxt(k,432)*y(k,205) - mat(k,507) = -rxt(k,435)*y(k,205) - mat(k,1058) = -rxt(k,446)*y(k,205) - mat(k,1121) = -rxt(k,451)*y(k,205) - mat(k,923) = -rxt(k,456)*y(k,205) - mat(k,1017) = .570_r8*rxt(k,440)*y(k,135) - mat(k,169) = .650_r8*rxt(k,398)*y(k,219) - mat(k,1422) = mat(k,1422) + rxt(k,211)*y(k,42) - mat(k,2164) = mat(k,2164) + rxt(k,223)*y(k,219) - mat(k,298) = .350_r8*rxt(k,277)*y(k,219) - mat(k,556) = .130_r8*rxt(k,279)*y(k,135) - mat(k,266) = rxt(k,284)*y(k,219) - mat(k,1039) = .280_r8*rxt(k,308)*y(k,135) - mat(k,1495) = mat(k,1495) + rxt(k,211)*y(k,17) + rxt(k,175)*y(k,56) & - + rxt(k,256)*y(k,126) + rxt(k,257)*y(k,134) - mat(k,602) = rxt(k,240)*y(k,56) + rxt(k,241)*y(k,219) - mat(k,372) = rxt(k,243)*y(k,56) + rxt(k,244)*y(k,219) - mat(k,106) = rxt(k,290)*y(k,219) - mat(k,802) = rxt(k,263)*y(k,219) - mat(k,1441) = rxt(k,272)*y(k,218) - mat(k,2010) = mat(k,2010) + rxt(k,175)*y(k,42) + rxt(k,240)*y(k,43) & - + rxt(k,243)*y(k,46) + rxt(k,178)*y(k,79) - mat(k,1726) = mat(k,1726) + rxt(k,182)*y(k,200) + rxt(k,193)*y(k,219) - mat(k,1127) = rxt(k,275)*y(k,219) - mat(k,200) = .730_r8*rxt(k,409)*y(k,219) - mat(k,289) = .500_r8*rxt(k,477)*y(k,219) - mat(k,1102) = rxt(k,301)*y(k,219) - mat(k,984) = rxt(k,302)*y(k,219) - mat(k,608) = rxt(k,178)*y(k,56) + rxt(k,134)*y(k,134) + rxt(k,143)*y(k,219) - mat(k,184) = rxt(k,266)*y(k,219) - mat(k,934) = rxt(k,267)*y(k,219) - mat(k,1165) = rxt(k,331)*y(k,219) - mat(k,1147) = rxt(k,316)*y(k,219) - mat(k,850) = .370_r8*rxt(k,385)*y(k,135) - mat(k,591) = .300_r8*rxt(k,376)*y(k,219) - mat(k,541) = rxt(k,377)*y(k,219) - mat(k,1207) = mat(k,1207) + rxt(k,382)*y(k,124) + rxt(k,383)*y(k,126) & - + rxt(k,379)*y(k,199) + 1.200_r8*rxt(k,380)*y(k,200) - mat(k,410) = rxt(k,384)*y(k,219) - mat(k,1218) = .140_r8*rxt(k,338)*y(k,135) - mat(k,316) = .200_r8*rxt(k,340)*y(k,219) - mat(k,582) = .500_r8*rxt(k,351)*y(k,219) - mat(k,967) = .570_r8*rxt(k,443)*y(k,135) - mat(k,1345) = .280_r8*rxt(k,352)*y(k,135) - mat(k,380) = rxt(k,388)*y(k,219) - mat(k,1085) = rxt(k,389)*y(k,219) - mat(k,1927) = mat(k,1927) + rxt(k,382)*y(k,101) + rxt(k,358)*y(k,191) & - + rxt(k,400)*y(k,193) + rxt(k,405)*y(k,195) + rxt(k,283) & - *y(k,196) + rxt(k,311)*y(k,197) + rxt(k,262)*y(k,200) & - + .170_r8*rxt(k,411)*y(k,201) + rxt(k,329)*y(k,202) & - + .250_r8*rxt(k,298)*y(k,204) + rxt(k,270)*y(k,206) & - + .920_r8*rxt(k,368)*y(k,207) + .920_r8*rxt(k,374)*y(k,208) & - + .470_r8*rxt(k,336)*y(k,211) + .400_r8*rxt(k,414)*y(k,212) & - + .830_r8*rxt(k,417)*y(k,214) + rxt(k,420)*y(k,220) + rxt(k,319) & - *y(k,221) + .900_r8*rxt(k,452)*y(k,223) + .800_r8*rxt(k,457) & - *y(k,224) + rxt(k,427)*y(k,225) + rxt(k,393)*y(k,227) & - + rxt(k,433)*y(k,228) + rxt(k,436)*y(k,230) - mat(k,1783) = mat(k,1783) + rxt(k,256)*y(k,42) + rxt(k,383)*y(k,101) & - + rxt(k,369)*y(k,207) + rxt(k,375)*y(k,208) + .470_r8*rxt(k,335) & - *y(k,211) + rxt(k,162)*y(k,219) + rxt(k,394)*y(k,227) - mat(k,2195) = mat(k,2195) + rxt(k,257)*y(k,42) + rxt(k,134)*y(k,79) - mat(k,2256) = mat(k,2256) + .570_r8*rxt(k,440)*y(k,6) + .130_r8*rxt(k,279) & - *y(k,25) + .280_r8*rxt(k,308)*y(k,29) + .370_r8*rxt(k,385) & - *y(k,98) + .140_r8*rxt(k,338)*y(k,105) + .570_r8*rxt(k,443) & - *y(k,110) + .280_r8*rxt(k,352)*y(k,111) + rxt(k,146)*y(k,219) - mat(k,178) = .800_r8*rxt(k,421)*y(k,219) - mat(k,856) = rxt(k,467)*y(k,219) - mat(k,1068) = .200_r8*rxt(k,461)*y(k,219) - mat(k,195) = .280_r8*rxt(k,429)*y(k,219) - mat(k,217) = .380_r8*rxt(k,431)*y(k,219) - mat(k,222) = .630_r8*rxt(k,437)*y(k,219) - mat(k,898) = mat(k,898) + rxt(k,358)*y(k,124) - mat(k,491) = mat(k,491) + rxt(k,400)*y(k,124) - mat(k,442) = mat(k,442) + rxt(k,405)*y(k,124) - mat(k,832) = mat(k,832) + rxt(k,283)*y(k,124) + 2.400_r8*rxt(k,280)*y(k,196) & - + rxt(k,281)*y(k,200) - mat(k,797) = mat(k,797) + rxt(k,311)*y(k,124) + rxt(k,309)*y(k,200) - mat(k,1397) = mat(k,1397) + rxt(k,379)*y(k,101) + .900_r8*rxt(k,292)*y(k,200) & - + rxt(k,365)*y(k,207) + rxt(k,370)*y(k,208) + .470_r8*rxt(k,332) & - *y(k,211) + rxt(k,390)*y(k,227) - mat(k,1835) = mat(k,1835) + rxt(k,182)*y(k,59) + 1.200_r8*rxt(k,380)*y(k,101) & - + rxt(k,262)*y(k,124) + rxt(k,281)*y(k,196) + rxt(k,309) & - *y(k,197) + .900_r8*rxt(k,292)*y(k,199) + 4.000_r8*rxt(k,259) & - *y(k,200) + rxt(k,366)*y(k,207) + rxt(k,371)*y(k,208) & - + .730_r8*rxt(k,333)*y(k,211) + rxt(k,342)*y(k,213) & - + .500_r8*rxt(k,445)*y(k,217) + .300_r8*rxt(k,321)*y(k,222) & - + rxt(k,450)*y(k,223) + rxt(k,455)*y(k,224) + .800_r8*rxt(k,391) & - *y(k,227) - mat(k,768) = mat(k,768) + .170_r8*rxt(k,411)*y(k,124) + .070_r8*rxt(k,410) & - *y(k,205) - mat(k,573) = rxt(k,329)*y(k,124) - mat(k,714) = mat(k,714) + .250_r8*rxt(k,298)*y(k,124) - mat(k,2117) = mat(k,2117) + .070_r8*rxt(k,410)*y(k,201) + .160_r8*rxt(k,413) & - *y(k,212) + .330_r8*rxt(k,416)*y(k,214) - mat(k,448) = mat(k,448) + rxt(k,270)*y(k,124) - mat(k,1270) = mat(k,1270) + .920_r8*rxt(k,368)*y(k,124) + rxt(k,369)*y(k,126) & - + rxt(k,365)*y(k,199) + rxt(k,366)*y(k,200) - mat(k,1302) = mat(k,1302) + .920_r8*rxt(k,374)*y(k,124) + rxt(k,375)*y(k,126) & - + rxt(k,370)*y(k,199) + rxt(k,371)*y(k,200) - mat(k,1323) = mat(k,1323) + .470_r8*rxt(k,336)*y(k,124) + .470_r8*rxt(k,335) & - *y(k,126) + .470_r8*rxt(k,332)*y(k,199) + .730_r8*rxt(k,333) & - *y(k,200) - mat(k,720) = mat(k,720) + .400_r8*rxt(k,414)*y(k,124) + .160_r8*rxt(k,413) & - *y(k,205) - mat(k,1365) = mat(k,1365) + rxt(k,342)*y(k,200) - mat(k,883) = mat(k,883) + .830_r8*rxt(k,417)*y(k,124) + .330_r8*rxt(k,416) & - *y(k,205) - mat(k,1058) = mat(k,1058) + .500_r8*rxt(k,445)*y(k,200) - mat(k,1536) = rxt(k,272)*y(k,54) - mat(k,1700) = mat(k,1700) + .650_r8*rxt(k,398)*y(k,7) + rxt(k,223)*y(k,19) & - + .350_r8*rxt(k,277)*y(k,24) + rxt(k,284)*y(k,26) + rxt(k,241) & - *y(k,43) + rxt(k,244)*y(k,46) + rxt(k,290)*y(k,47) + rxt(k,263) & - *y(k,52) + rxt(k,193)*y(k,59) + rxt(k,275)*y(k,62) & - + .730_r8*rxt(k,409)*y(k,66) + .500_r8*rxt(k,477)*y(k,67) & - + rxt(k,301)*y(k,74) + rxt(k,302)*y(k,75) + rxt(k,143)*y(k,79) & - + rxt(k,266)*y(k,86) + rxt(k,267)*y(k,87) + rxt(k,331)*y(k,93) & - + rxt(k,316)*y(k,95) + .300_r8*rxt(k,376)*y(k,99) + rxt(k,377) & - *y(k,100) + rxt(k,384)*y(k,102) + .200_r8*rxt(k,340)*y(k,106) & - + .500_r8*rxt(k,351)*y(k,109) + rxt(k,388)*y(k,115) + rxt(k,389) & - *y(k,116) + rxt(k,162)*y(k,126) + rxt(k,146)*y(k,135) & - + .800_r8*rxt(k,421)*y(k,143) + rxt(k,467)*y(k,152) & - + .200_r8*rxt(k,461)*y(k,180) + .280_r8*rxt(k,429)*y(k,182) & - + .380_r8*rxt(k,431)*y(k,184) + .630_r8*rxt(k,437)*y(k,186) - mat(k,455) = mat(k,455) + rxt(k,420)*y(k,124) - mat(k,777) = mat(k,777) + rxt(k,319)*y(k,124) - mat(k,1140) = mat(k,1140) + .300_r8*rxt(k,321)*y(k,200) - mat(k,1121) = mat(k,1121) + .900_r8*rxt(k,452)*y(k,124) + rxt(k,450)*y(k,200) - mat(k,923) = mat(k,923) + .800_r8*rxt(k,457)*y(k,124) + rxt(k,455)*y(k,200) - mat(k,735) = mat(k,735) + rxt(k,427)*y(k,124) - mat(k,1184) = mat(k,1184) + rxt(k,393)*y(k,124) + rxt(k,394)*y(k,126) & - + rxt(k,390)*y(k,199) + .800_r8*rxt(k,391)*y(k,200) - mat(k,760) = mat(k,760) + rxt(k,433)*y(k,124) - mat(k,507) = mat(k,507) + rxt(k,436)*y(k,124) - end do - end subroutine nlnmat08 - subroutine nlnmat09( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,443) = -(rxt(k,268)*y(k,205) + rxt(k,270)*y(k,124)) - mat(k,2045) = -rxt(k,268)*y(k,206) - mat(k,1860) = -rxt(k,270)*y(k,206) - mat(k,1478) = rxt(k,255)*y(k,205) - mat(k,2045) = mat(k,2045) + rxt(k,255)*y(k,42) - mat(k,1258) = -(rxt(k,365)*y(k,199) + rxt(k,366)*y(k,200) + rxt(k,367) & - *y(k,205) + rxt(k,368)*y(k,124) + rxt(k,369)*y(k,126)) - mat(k,1383) = -rxt(k,365)*y(k,207) - mat(k,1817) = -rxt(k,366)*y(k,207) - mat(k,2097) = -rxt(k,367)*y(k,207) - mat(k,1908) = -rxt(k,368)*y(k,207) - mat(k,1764) = -rxt(k,369)*y(k,207) - mat(k,842) = .600_r8*rxt(k,386)*y(k,219) - mat(k,1680) = .600_r8*rxt(k,386)*y(k,98) - mat(k,1290) = -(rxt(k,370)*y(k,199) + rxt(k,371)*y(k,200) + rxt(k,372) & - *y(k,205) + rxt(k,374)*y(k,124) + rxt(k,375)*y(k,126)) - mat(k,1384) = -rxt(k,370)*y(k,208) - mat(k,1818) = -rxt(k,371)*y(k,208) - mat(k,2098) = -rxt(k,372)*y(k,208) - mat(k,1909) = -rxt(k,374)*y(k,208) - mat(k,1765) = -rxt(k,375)*y(k,208) - mat(k,843) = .400_r8*rxt(k,386)*y(k,219) - mat(k,1681) = .400_r8*rxt(k,386)*y(k,98) - mat(k,68) = -(rxt(k,503)*y(k,205) + rxt(k,504)*y(k,124)) - mat(k,2023) = -rxt(k,503)*y(k,209) - mat(k,1848) = -rxt(k,504)*y(k,209) - mat(k,835) = rxt(k,506)*y(k,219) - mat(k,1550) = rxt(k,506)*y(k,98) - mat(k,74) = -(rxt(k,507)*y(k,205) + rxt(k,508)*y(k,124)) - mat(k,2024) = -rxt(k,507)*y(k,210) - mat(k,1849) = -rxt(k,508)*y(k,210) - mat(k,75) = rxt(k,509)*y(k,219) - mat(k,1551) = rxt(k,509)*y(k,104) - mat(k,1313) = -(rxt(k,332)*y(k,199) + rxt(k,333)*y(k,200) + rxt(k,334) & - *y(k,205) + rxt(k,335)*y(k,126) + (rxt(k,336) + rxt(k,337) & - ) * y(k,124)) - mat(k,1385) = -rxt(k,332)*y(k,211) - mat(k,1819) = -rxt(k,333)*y(k,211) - mat(k,2099) = -rxt(k,334)*y(k,211) - mat(k,1766) = -rxt(k,335)*y(k,211) - mat(k,1910) = -(rxt(k,336) + rxt(k,337)) * y(k,211) - mat(k,1213) = .500_r8*rxt(k,339)*y(k,219) - mat(k,313) = .200_r8*rxt(k,340)*y(k,219) - mat(k,1333) = rxt(k,353)*y(k,219) - mat(k,1682) = .500_r8*rxt(k,339)*y(k,105) + .200_r8*rxt(k,340)*y(k,106) & - + rxt(k,353)*y(k,111) - mat(k,715) = -(rxt(k,413)*y(k,205) + rxt(k,414)*y(k,124) + rxt(k,415) & - *y(k,125)) - mat(k,2065) = -rxt(k,413)*y(k,212) - mat(k,1878) = -rxt(k,414)*y(k,212) - mat(k,1944) = -rxt(k,415)*y(k,212) - mat(k,1356) = -(rxt(k,341)*y(k,199) + rxt(k,342)*y(k,200) + rxt(k,343) & - *y(k,205) + 4._r8*rxt(k,344)*y(k,213) + rxt(k,345)*y(k,124) & - + rxt(k,346)*y(k,126) + rxt(k,354)*y(k,125)) - mat(k,1387) = -rxt(k,341)*y(k,213) - mat(k,1821) = -rxt(k,342)*y(k,213) - mat(k,2101) = -rxt(k,343)*y(k,213) - mat(k,1912) = -rxt(k,345)*y(k,213) - mat(k,1768) = -rxt(k,346)*y(k,213) - mat(k,1956) = -rxt(k,354)*y(k,213) - mat(k,1214) = .500_r8*rxt(k,339)*y(k,219) - mat(k,314) = .500_r8*rxt(k,340)*y(k,219) - mat(k,1684) = .500_r8*rxt(k,339)*y(k,105) + .500_r8*rxt(k,340)*y(k,106) - mat(k,875) = -(rxt(k,416)*y(k,205) + rxt(k,417)*y(k,124) + rxt(k,418) & - *y(k,125)) - mat(k,2078) = -rxt(k,416)*y(k,214) - mat(k,1887) = -rxt(k,417)*y(k,214) - mat(k,1949) = -rxt(k,418)*y(k,214) - mat(k,679) = -(rxt(k,347)*y(k,205) + rxt(k,348)*y(k,124)) - mat(k,2061) = -rxt(k,347)*y(k,215) - mat(k,1876) = -rxt(k,348)*y(k,215) - mat(k,509) = rxt(k,349)*y(k,219) - mat(k,318) = rxt(k,350)*y(k,219) - mat(k,1634) = rxt(k,349)*y(k,107) + rxt(k,350)*y(k,108) - mat(k,82) = -(rxt(k,511)*y(k,205) + rxt(k,512)*y(k,124)) - mat(k,2025) = -rxt(k,511)*y(k,216) - mat(k,1850) = -rxt(k,512)*y(k,216) - mat(k,942) = rxt(k,514)*y(k,219) - mat(k,1553) = rxt(k,514)*y(k,110) - mat(k,1047) = -(rxt(k,445)*y(k,200) + rxt(k,446)*y(k,205) + rxt(k,447) & - *y(k,124) + rxt(k,448)*y(k,126)) - mat(k,1804) = -rxt(k,445)*y(k,217) - mat(k,2085) = -rxt(k,446)*y(k,217) - mat(k,1894) = -rxt(k,447)*y(k,217) - mat(k,1749) = -rxt(k,448)*y(k,217) - mat(k,1002) = rxt(k,439)*y(k,126) - mat(k,953) = rxt(k,442)*y(k,126) - mat(k,1749) = mat(k,1749) + rxt(k,439)*y(k,6) + rxt(k,442)*y(k,110) & - + .500_r8*rxt(k,459)*y(k,179) - mat(k,395) = rxt(k,449)*y(k,219) - mat(k,972) = .500_r8*rxt(k,459)*y(k,126) - mat(k,1665) = rxt(k,449)*y(k,128) - mat(k,1528) = -(rxt(k,125)*y(k,77) + rxt(k,126)*y(k,231) + rxt(k,129) & - *y(k,135) + (rxt(k,167) + rxt(k,168)) * y(k,113) + rxt(k,200) & - *y(k,33) + rxt(k,201)*y(k,34) + rxt(k,202)*y(k,36) + rxt(k,203) & - *y(k,37) + rxt(k,204)*y(k,38) + rxt(k,205)*y(k,39) + rxt(k,206) & - *y(k,40) + (rxt(k,207) + rxt(k,208)) * y(k,85) + rxt(k,227) & - *y(k,35) + rxt(k,228)*y(k,55) + rxt(k,229)*y(k,78) + (rxt(k,230) & - + rxt(k,231)) * y(k,81) + rxt(k,236)*y(k,64) + rxt(k,237) & - *y(k,65) + rxt(k,250)*y(k,41) + rxt(k,251)*y(k,43) + rxt(k,252) & - *y(k,82) + rxt(k,253)*y(k,83) + rxt(k,254)*y(k,84) + (rxt(k,271) & - + rxt(k,272) + rxt(k,273)) * y(k,54) + rxt(k,274)*y(k,86)) - mat(k,1407) = -rxt(k,125)*y(k,218) - mat(k,2274) = -rxt(k,126)*y(k,218) - mat(k,2248) = -rxt(k,129)*y(k,218) - mat(k,186) = -(rxt(k,167) + rxt(k,168)) * y(k,218) - mat(k,102) = -rxt(k,200)*y(k,218) - mat(k,146) = -rxt(k,201)*y(k,218) - mat(k,117) = -rxt(k,202)*y(k,218) - mat(k,156) = -rxt(k,203)*y(k,218) - mat(k,121) = -rxt(k,204)*y(k,218) - mat(k,161) = -rxt(k,205)*y(k,218) - mat(k,125) = -rxt(k,206)*y(k,218) - mat(k,2132) = -(rxt(k,207) + rxt(k,208)) * y(k,218) - mat(k,152) = -rxt(k,227)*y(k,218) - mat(k,389) = -rxt(k,228)*y(k,218) - mat(k,110) = -rxt(k,229)*y(k,218) - mat(k,809) = -(rxt(k,230) + rxt(k,231)) * y(k,218) - mat(k,242) = -rxt(k,236)*y(k,218) - mat(k,250) = -rxt(k,237)*y(k,218) - mat(k,471) = -rxt(k,250)*y(k,218) - mat(k,598) = -rxt(k,251)*y(k,218) - mat(k,245) = -rxt(k,252)*y(k,218) - mat(k,255) = -rxt(k,253)*y(k,218) - mat(k,302) = -rxt(k,254)*y(k,218) - mat(k,1436) = -(rxt(k,271) + rxt(k,272) + rxt(k,273)) * y(k,218) - mat(k,182) = -rxt(k,274)*y(k,218) - mat(k,1693) = -(rxt(k,142)*y(k,77) + rxt(k,143)*y(k,79) + rxt(k,144)*y(k,205) & - + rxt(k,145)*y(k,134) + rxt(k,146)*y(k,135) + (4._r8*rxt(k,147) & - + 4._r8*rxt(k,148)) * y(k,219) + rxt(k,150)*y(k,90) + rxt(k,162) & - *y(k,126) + rxt(k,163)*y(k,112) + rxt(k,171)*y(k,125) + rxt(k,172) & - *y(k,89) + rxt(k,191)*y(k,60) + (rxt(k,193) + rxt(k,194) & - ) * y(k,59) + rxt(k,196)*y(k,85) + rxt(k,199)*y(k,92) + rxt(k,223) & - *y(k,19) + rxt(k,225)*y(k,81) + rxt(k,239)*y(k,41) + rxt(k,241) & - *y(k,43) + rxt(k,242)*y(k,44) + rxt(k,244)*y(k,46) + rxt(k,246) & - *y(k,55) + rxt(k,247)*y(k,82) + rxt(k,248)*y(k,83) + rxt(k,249) & - *y(k,84) + rxt(k,258)*y(k,42) + rxt(k,263)*y(k,52) + rxt(k,264) & - *y(k,53) + rxt(k,265)*y(k,54) + rxt(k,266)*y(k,86) + rxt(k,267) & - *y(k,87) + rxt(k,275)*y(k,62) + rxt(k,277)*y(k,24) + rxt(k,284) & - *y(k,26) + rxt(k,285)*y(k,27) + rxt(k,287)*y(k,28) + rxt(k,289) & - *y(k,45) + rxt(k,290)*y(k,47) + rxt(k,295)*y(k,50) + rxt(k,296) & - *y(k,51) + rxt(k,301)*y(k,74) + rxt(k,302)*y(k,75) + rxt(k,303) & - *y(k,140) + rxt(k,304)*y(k,25) + rxt(k,312)*y(k,30) + rxt(k,313) & - *y(k,31) + rxt(k,315)*y(k,49) + rxt(k,316)*y(k,95) + rxt(k,317) & - *y(k,127) + rxt(k,320)*y(k,147) + rxt(k,324)*y(k,148) + rxt(k,325) & - *y(k,29) + rxt(k,326)*y(k,48) + rxt(k,328)*y(k,16) + rxt(k,331) & - *y(k,93) + rxt(k,339)*y(k,105) + rxt(k,340)*y(k,106) + rxt(k,349) & - *y(k,107) + rxt(k,350)*y(k,108) + rxt(k,351)*y(k,109) + rxt(k,353) & - *y(k,111) + rxt(k,356)*y(k,1) + rxt(k,360)*y(k,2) + rxt(k,361) & - *y(k,15) + rxt(k,362)*y(k,94) + rxt(k,363)*y(k,96) + rxt(k,364) & - *y(k,97) + rxt(k,376)*y(k,99) + rxt(k,377)*y(k,100) + rxt(k,384) & - *y(k,102) + rxt(k,386)*y(k,98) + rxt(k,387)*y(k,103) + rxt(k,388) & - *y(k,115) + rxt(k,389)*y(k,116) + rxt(k,395)*y(k,183) + rxt(k,398) & - *y(k,7) + rxt(k,401)*y(k,8) + rxt(k,402)*y(k,22) + rxt(k,404) & - *y(k,23) + rxt(k,408)*y(k,32) + rxt(k,409)*y(k,66) + rxt(k,421) & - *y(k,143) + rxt(k,424)*y(k,144) + rxt(k,428)*y(k,181) + rxt(k,429) & - *y(k,182) + rxt(k,431)*y(k,184) + rxt(k,434)*y(k,185) + rxt(k,437) & - *y(k,186) + rxt(k,438)*y(k,187) + rxt(k,441)*y(k,6) + rxt(k,444) & - *y(k,110) + rxt(k,449)*y(k,128) + rxt(k,453)*y(k,176) + rxt(k,454) & - *y(k,177) + rxt(k,458)*y(k,178) + rxt(k,460)*y(k,179) + rxt(k,461) & - *y(k,180) + (rxt(k,463) + rxt(k,477)) * y(k,67) + rxt(k,465) & - *y(k,138) + rxt(k,467)*y(k,152) + rxt(k,471)*y(k,149) + rxt(k,476) & - *y(k,151) + rxt(k,479)*y(k,120)) - mat(k,1408) = -rxt(k,142)*y(k,219) - mat(k,606) = -rxt(k,143)*y(k,219) - mat(k,2110) = -rxt(k,144)*y(k,219) - mat(k,2188) = -rxt(k,145)*y(k,219) - mat(k,2249) = -rxt(k,146)*y(k,219) - mat(k,424) = -rxt(k,150)*y(k,219) - mat(k,1776) = -rxt(k,162)*y(k,219) - mat(k,496) = -rxt(k,163)*y(k,219) - mat(k,1964) = -rxt(k,171)*y(k,219) - mat(k,1468) = -rxt(k,172)*y(k,219) - mat(k,903) = -rxt(k,191)*y(k,219) - mat(k,1719) = -(rxt(k,193) + rxt(k,194)) * y(k,219) - mat(k,2133) = -rxt(k,196)*y(k,219) - mat(k,816) = -rxt(k,199)*y(k,219) - mat(k,2157) = -rxt(k,223)*y(k,219) - mat(k,810) = -rxt(k,225)*y(k,219) - mat(k,472) = -rxt(k,239)*y(k,219) - mat(k,599) = -rxt(k,241)*y(k,219) - mat(k,128) = -rxt(k,242)*y(k,219) - mat(k,369) = -rxt(k,244)*y(k,219) - mat(k,390) = -rxt(k,246)*y(k,219) - mat(k,246) = -rxt(k,247)*y(k,219) - mat(k,256) = -rxt(k,248)*y(k,219) - mat(k,303) = -rxt(k,249)*y(k,219) - mat(k,1489) = -rxt(k,258)*y(k,219) - mat(k,801) = -rxt(k,263)*y(k,219) - mat(k,459) = -rxt(k,264)*y(k,219) - mat(k,1437) = -rxt(k,265)*y(k,219) - mat(k,183) = -rxt(k,266)*y(k,219) - mat(k,933) = -rxt(k,267)*y(k,219) - mat(k,1126) = -rxt(k,275)*y(k,219) - mat(k,297) = -rxt(k,277)*y(k,219) - mat(k,265) = -rxt(k,284)*y(k,219) - mat(k,346) = -rxt(k,285)*y(k,219) - mat(k,308) = -rxt(k,287)*y(k,219) - mat(k,1091) = -rxt(k,289)*y(k,219) - mat(k,105) = -rxt(k,290)*y(k,219) - mat(k,688) = -rxt(k,295)*y(k,219) - mat(k,616) = -rxt(k,296)*y(k,219) - mat(k,1101) = -rxt(k,301)*y(k,219) - mat(k,983) = -rxt(k,302)*y(k,219) - mat(k,530) = -rxt(k,303)*y(k,219) - mat(k,555) = -rxt(k,304)*y(k,219) - mat(k,414) = -rxt(k,312)*y(k,219) - mat(k,113) = -rxt(k,313)*y(k,219) - mat(k,1226) = -rxt(k,315)*y(k,219) - mat(k,1146) = -rxt(k,316)*y(k,219) - mat(k,863) = -rxt(k,317)*y(k,219) - mat(k,547) = -rxt(k,320)*y(k,219) - mat(k,403) = -rxt(k,324)*y(k,219) - mat(k,1034) = -rxt(k,325)*y(k,219) - mat(k,927) = -rxt(k,326)*y(k,219) - mat(k,356) = -rxt(k,328)*y(k,219) - mat(k,1160) = -rxt(k,331)*y(k,219) - mat(k,1217) = -rxt(k,339)*y(k,219) - mat(k,315) = -rxt(k,340)*y(k,219) - mat(k,512) = -rxt(k,349)*y(k,219) - mat(k,321) = -rxt(k,350)*y(k,219) - mat(k,579) = -rxt(k,351)*y(k,219) - mat(k,1340) = -rxt(k,353)*y(k,219) - mat(k,641) = -rxt(k,356)*y(k,219) - mat(k,676) = -rxt(k,360)*y(k,219) - mat(k,230) = -rxt(k,361)*y(k,219) - mat(k,226) = -rxt(k,362)*y(k,219) - mat(k,350) = -rxt(k,363)*y(k,219) - mat(k,139) = -rxt(k,364)*y(k,219) - mat(k,589) = -rxt(k,376)*y(k,219) - mat(k,540) = -rxt(k,377)*y(k,219) - mat(k,408) = -rxt(k,384)*y(k,219) - mat(k,847) = -rxt(k,386)*y(k,219) - mat(k,742) = -rxt(k,387)*y(k,219) - mat(k,379) = -rxt(k,388)*y(k,219) - mat(k,1081) = -rxt(k,389)*y(k,219) - mat(k,207) = -rxt(k,395)*y(k,219) - mat(k,168) = -rxt(k,398)*y(k,219) - mat(k,421) = -rxt(k,401)*y(k,219) - mat(k,239) = -rxt(k,402)*y(k,219) - mat(k,341) = -rxt(k,404)*y(k,219) - mat(k,270) = -rxt(k,408)*y(k,219) - mat(k,199) = -rxt(k,409)*y(k,219) - mat(k,177) = -rxt(k,421)*y(k,219) - mat(k,335) = -rxt(k,424)*y(k,219) - mat(k,665) = -rxt(k,428)*y(k,219) - mat(k,194) = -rxt(k,429)*y(k,219) - mat(k,216) = -rxt(k,431)*y(k,219) - mat(k,704) = -rxt(k,434)*y(k,219) - mat(k,221) = -rxt(k,437)*y(k,219) - mat(k,433) = -rxt(k,438)*y(k,219) - mat(k,1012) = -rxt(k,441)*y(k,219) - mat(k,962) = -rxt(k,444)*y(k,219) - mat(k,397) = -rxt(k,449)*y(k,219) - mat(k,652) = -rxt(k,453)*y(k,219) - mat(k,622) = -rxt(k,454)*y(k,219) - mat(k,481) = -rxt(k,458)*y(k,219) - mat(k,976) = -rxt(k,460)*y(k,219) - mat(k,1066) = -rxt(k,461)*y(k,219) - mat(k,287) = -(rxt(k,463) + rxt(k,477)) * y(k,219) - mat(k,365) = -rxt(k,465)*y(k,219) - mat(k,855) = -rxt(k,467)*y(k,219) - mat(k,516) = -rxt(k,471)*y(k,219) - mat(k,1237) = -rxt(k,476)*y(k,219) - mat(k,99) = -rxt(k,479)*y(k,219) - mat(k,1012) = mat(k,1012) + .630_r8*rxt(k,440)*y(k,135) - mat(k,297) = mat(k,297) + .650_r8*rxt(k,277)*y(k,219) - mat(k,555) = mat(k,555) + .130_r8*rxt(k,279)*y(k,135) - mat(k,346) = mat(k,346) + .500_r8*rxt(k,285)*y(k,219) - mat(k,1034) = mat(k,1034) + .360_r8*rxt(k,308)*y(k,135) - mat(k,1489) = mat(k,1489) + rxt(k,257)*y(k,134) - mat(k,459) = mat(k,459) + .300_r8*rxt(k,264)*y(k,219) - mat(k,1437) = mat(k,1437) + rxt(k,271)*y(k,218) - mat(k,2003) = rxt(k,180)*y(k,205) - mat(k,871) = rxt(k,234)*y(k,231) - mat(k,1451) = rxt(k,141)*y(k,135) + 2.000_r8*rxt(k,136)*y(k,205) - mat(k,1408) = mat(k,1408) + rxt(k,133)*y(k,134) + rxt(k,125)*y(k,218) - mat(k,606) = mat(k,606) + rxt(k,134)*y(k,134) - mat(k,810) = mat(k,810) + rxt(k,224)*y(k,134) + rxt(k,230)*y(k,218) - mat(k,2133) = mat(k,2133) + rxt(k,195)*y(k,134) + rxt(k,207)*y(k,218) - mat(k,183) = mat(k,183) + rxt(k,274)*y(k,218) - mat(k,782) = rxt(k,226)*y(k,134) - mat(k,816) = mat(k,816) + rxt(k,198)*y(k,134) - mat(k,847) = mat(k,847) + .320_r8*rxt(k,385)*y(k,135) - mat(k,742) = mat(k,742) + .600_r8*rxt(k,387)*y(k,219) - mat(k,1217) = mat(k,1217) + .240_r8*rxt(k,338)*y(k,135) - mat(k,315) = mat(k,315) + .100_r8*rxt(k,340)*y(k,219) - mat(k,962) = mat(k,962) + .630_r8*rxt(k,443)*y(k,135) - mat(k,1340) = mat(k,1340) + .360_r8*rxt(k,352)*y(k,135) - mat(k,1920) = rxt(k,164)*y(k,205) - mat(k,1776) = mat(k,1776) + rxt(k,159)*y(k,205) - mat(k,2188) = mat(k,2188) + rxt(k,257)*y(k,42) + rxt(k,133)*y(k,77) & - + rxt(k,134)*y(k,79) + rxt(k,224)*y(k,81) + rxt(k,195)*y(k,85) & - + rxt(k,226)*y(k,91) + rxt(k,198)*y(k,92) + rxt(k,139)*y(k,205) - mat(k,2249) = mat(k,2249) + .630_r8*rxt(k,440)*y(k,6) + .130_r8*rxt(k,279) & - *y(k,25) + .360_r8*rxt(k,308)*y(k,29) + rxt(k,141)*y(k,76) & - + .320_r8*rxt(k,385)*y(k,98) + .240_r8*rxt(k,338)*y(k,105) & - + .630_r8*rxt(k,443)*y(k,110) + .360_r8*rxt(k,352)*y(k,111) & - + rxt(k,140)*y(k,205) - mat(k,547) = mat(k,547) + .500_r8*rxt(k,320)*y(k,219) - mat(k,207) = mat(k,207) + .500_r8*rxt(k,395)*y(k,219) - mat(k,522) = .400_r8*rxt(k,396)*y(k,205) - mat(k,1392) = .450_r8*rxt(k,293)*y(k,205) - mat(k,764) = .400_r8*rxt(k,410)*y(k,205) - mat(k,2110) = mat(k,2110) + rxt(k,180)*y(k,56) + 2.000_r8*rxt(k,136)*y(k,76) & - + rxt(k,164)*y(k,124) + rxt(k,159)*y(k,126) + rxt(k,139) & - *y(k,134) + rxt(k,140)*y(k,135) + .400_r8*rxt(k,396)*y(k,190) & - + .450_r8*rxt(k,293)*y(k,199) + .400_r8*rxt(k,410)*y(k,201) & - + .450_r8*rxt(k,343)*y(k,213) + .400_r8*rxt(k,416)*y(k,214) & - + .200_r8*rxt(k,347)*y(k,215) + .150_r8*rxt(k,322)*y(k,222) - mat(k,1360) = .450_r8*rxt(k,343)*y(k,205) - mat(k,879) = .400_r8*rxt(k,416)*y(k,205) - mat(k,682) = .200_r8*rxt(k,347)*y(k,205) - mat(k,1529) = rxt(k,271)*y(k,54) + rxt(k,125)*y(k,77) + rxt(k,230)*y(k,81) & - + rxt(k,207)*y(k,85) + rxt(k,274)*y(k,86) + 2.000_r8*rxt(k,126) & - *y(k,231) - mat(k,1693) = mat(k,1693) + .650_r8*rxt(k,277)*y(k,24) + .500_r8*rxt(k,285) & - *y(k,27) + .300_r8*rxt(k,264)*y(k,53) + .600_r8*rxt(k,387) & - *y(k,103) + .100_r8*rxt(k,340)*y(k,106) + .500_r8*rxt(k,320) & - *y(k,147) + .500_r8*rxt(k,395)*y(k,183) - mat(k,1136) = .150_r8*rxt(k,322)*y(k,205) - mat(k,2275) = rxt(k,234)*y(k,73) + 2.000_r8*rxt(k,126)*y(k,218) - end do - end subroutine nlnmat09 - subroutine nlnmat10( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,450) = -(rxt(k,419)*y(k,205) + rxt(k,420)*y(k,124)) - mat(k,2046) = -rxt(k,419)*y(k,220) - mat(k,1861) = -rxt(k,420)*y(k,220) - mat(k,197) = .200_r8*rxt(k,409)*y(k,219) - mat(k,175) = .140_r8*rxt(k,421)*y(k,219) - mat(k,333) = rxt(k,424)*y(k,219) - mat(k,1605) = .200_r8*rxt(k,409)*y(k,66) + .140_r8*rxt(k,421)*y(k,143) & - + rxt(k,424)*y(k,144) - mat(k,770) = -(rxt(k,318)*y(k,205) + rxt(k,319)*y(k,124)) - mat(k,2070) = -rxt(k,318)*y(k,221) - mat(k,1882) = -rxt(k,319)*y(k,221) - mat(k,1022) = rxt(k,325)*y(k,219) - mat(k,543) = .500_r8*rxt(k,320)*y(k,219) - mat(k,1643) = rxt(k,325)*y(k,29) + .500_r8*rxt(k,320)*y(k,147) - mat(k,1131) = -(rxt(k,321)*y(k,200) + rxt(k,322)*y(k,205) + rxt(k,323) & - *y(k,124)) - mat(k,1811) = -rxt(k,321)*y(k,222) - mat(k,2091) = -rxt(k,322)*y(k,222) - mat(k,1901) = -rxt(k,323)*y(k,222) - mat(k,1007) = .060_r8*rxt(k,440)*y(k,135) - mat(k,925) = rxt(k,326)*y(k,219) - mat(k,957) = .060_r8*rxt(k,443)*y(k,135) - mat(k,2231) = .060_r8*rxt(k,440)*y(k,6) + .060_r8*rxt(k,443)*y(k,110) - mat(k,400) = rxt(k,324)*y(k,219) - mat(k,1063) = .150_r8*rxt(k,461)*y(k,219) - mat(k,1672) = rxt(k,326)*y(k,48) + rxt(k,324)*y(k,148) + .150_r8*rxt(k,461) & - *y(k,180) - mat(k,1111) = -(rxt(k,450)*y(k,200) + rxt(k,451)*y(k,205) + rxt(k,452) & - *y(k,124)) - mat(k,1809) = -rxt(k,450)*y(k,223) - mat(k,2089) = -rxt(k,451)*y(k,223) - mat(k,1899) = -rxt(k,452)*y(k,223) - mat(k,1754) = .500_r8*rxt(k,459)*y(k,179) - mat(k,649) = rxt(k,453)*y(k,219) - mat(k,974) = .500_r8*rxt(k,459)*y(k,126) + rxt(k,460)*y(k,219) - mat(k,1670) = rxt(k,453)*y(k,176) + rxt(k,460)*y(k,179) - mat(k,914) = -(rxt(k,455)*y(k,200) + rxt(k,456)*y(k,205) + rxt(k,457) & - *y(k,124)) - mat(k,1800) = -rxt(k,455)*y(k,224) - mat(k,2080) = -rxt(k,456)*y(k,224) - mat(k,1889) = -rxt(k,457)*y(k,224) - mat(k,996) = rxt(k,441)*y(k,219) - mat(k,947) = rxt(k,444)*y(k,219) - mat(k,477) = rxt(k,458)*y(k,219) - mat(k,1657) = rxt(k,441)*y(k,6) + rxt(k,444)*y(k,110) + rxt(k,458)*y(k,178) - mat(k,726) = -(rxt(k,426)*y(k,205) + rxt(k,427)*y(k,124)) - mat(k,2066) = -rxt(k,426)*y(k,225) - mat(k,1879) = -rxt(k,427)*y(k,225) - mat(k,659) = rxt(k,428)*y(k,219) - mat(k,193) = .650_r8*rxt(k,429)*y(k,219) - mat(k,1639) = rxt(k,428)*y(k,181) + .650_r8*rxt(k,429)*y(k,182) - mat(k,88) = -(rxt(k,517)*y(k,205) + rxt(k,518)*y(k,124)) - mat(k,2026) = -rxt(k,517)*y(k,226) - mat(k,1851) = -rxt(k,518)*y(k,226) - mat(k,188) = rxt(k,516)*y(k,219) - mat(k,1554) = rxt(k,516)*y(k,182) - mat(k,1175) = -(rxt(k,390)*y(k,199) + rxt(k,391)*y(k,200) + rxt(k,392) & - *y(k,205) + rxt(k,393)*y(k,124) + rxt(k,394)*y(k,126)) - mat(k,1379) = -rxt(k,390)*y(k,227) - mat(k,1813) = -rxt(k,391)*y(k,227) - mat(k,2093) = -rxt(k,392)*y(k,227) - mat(k,1904) = -rxt(k,393)*y(k,227) - mat(k,1759) = -rxt(k,394)*y(k,227) - mat(k,225) = rxt(k,362)*y(k,219) - mat(k,349) = rxt(k,363)*y(k,219) - mat(k,138) = rxt(k,364)*y(k,219) - mat(k,738) = .400_r8*rxt(k,387)*y(k,219) - mat(k,206) = .500_r8*rxt(k,395)*y(k,219) - mat(k,1675) = rxt(k,362)*y(k,94) + rxt(k,363)*y(k,96) + rxt(k,364)*y(k,97) & - + .400_r8*rxt(k,387)*y(k,103) + .500_r8*rxt(k,395)*y(k,183) - mat(k,750) = -(rxt(k,432)*y(k,205) + rxt(k,433)*y(k,124)) - mat(k,2068) = -rxt(k,432)*y(k,228) - mat(k,1880) = -rxt(k,433)*y(k,228) - mat(k,213) = .560_r8*rxt(k,431)*y(k,219) - mat(k,697) = rxt(k,434)*y(k,219) - mat(k,1641) = .560_r8*rxt(k,431)*y(k,184) + rxt(k,434)*y(k,185) - mat(k,94) = -(rxt(k,520)*y(k,205) + rxt(k,521)*y(k,124)) - mat(k,2027) = -rxt(k,520)*y(k,229) - mat(k,1852) = -rxt(k,521)*y(k,229) - mat(k,208) = rxt(k,519)*y(k,219) - mat(k,1555) = rxt(k,519)*y(k,184) - mat(k,501) = -(rxt(k,435)*y(k,205) + rxt(k,436)*y(k,124)) - mat(k,2052) = -rxt(k,435)*y(k,230) - mat(k,1866) = -rxt(k,436)*y(k,230) - mat(k,220) = .300_r8*rxt(k,437)*y(k,219) - mat(k,430) = rxt(k,438)*y(k,219) - mat(k,1613) = .300_r8*rxt(k,437)*y(k,186) + rxt(k,438)*y(k,187) - mat(k,2287) = -(rxt(k,126)*y(k,218) + rxt(k,234)*y(k,73) + rxt(k,478) & - *y(k,153)) - mat(k,1541) = -rxt(k,126)*y(k,231) - mat(k,874) = -rxt(k,234)*y(k,231) - mat(k,262) = -rxt(k,478)*y(k,231) - mat(k,311) = rxt(k,287)*y(k,219) - mat(k,416) = rxt(k,312)*y(k,219) - mat(k,114) = rxt(k,313)*y(k,219) - mat(k,475) = rxt(k,239)*y(k,219) - mat(k,1500) = rxt(k,258)*y(k,219) - mat(k,604) = rxt(k,241)*y(k,219) - mat(k,130) = rxt(k,242)*y(k,219) - mat(k,1095) = rxt(k,289)*y(k,219) - mat(k,374) = rxt(k,244)*y(k,219) - mat(k,929) = rxt(k,326)*y(k,219) - mat(k,1230) = rxt(k,315)*y(k,219) - mat(k,690) = rxt(k,295)*y(k,219) - mat(k,618) = rxt(k,296)*y(k,219) - mat(k,461) = rxt(k,264)*y(k,219) - mat(k,1444) = rxt(k,265)*y(k,219) - mat(k,1459) = rxt(k,137)*y(k,205) - mat(k,1414) = rxt(k,142)*y(k,219) - mat(k,611) = rxt(k,143)*y(k,219) - mat(k,813) = rxt(k,225)*y(k,219) - mat(k,305) = rxt(k,249)*y(k,219) - mat(k,2145) = (rxt(k,530)+rxt(k,535))*y(k,91) + (rxt(k,523)+rxt(k,529) & - +rxt(k,534))*y(k,92) + rxt(k,196)*y(k,219) - mat(k,936) = rxt(k,267)*y(k,219) - mat(k,1477) = rxt(k,172)*y(k,219) - mat(k,428) = rxt(k,150)*y(k,219) - mat(k,787) = (rxt(k,530)+rxt(k,535))*y(k,85) - mat(k,821) = (rxt(k,523)+rxt(k,529)+rxt(k,534))*y(k,85) + rxt(k,199)*y(k,219) - mat(k,1221) = .500_r8*rxt(k,339)*y(k,219) - mat(k,100) = rxt(k,479)*y(k,219) - mat(k,549) = rxt(k,320)*y(k,219) - mat(k,404) = rxt(k,324)*y(k,219) - mat(k,2122) = rxt(k,137)*y(k,76) + rxt(k,144)*y(k,219) - mat(k,1705) = rxt(k,287)*y(k,28) + rxt(k,312)*y(k,30) + rxt(k,313)*y(k,31) & - + rxt(k,239)*y(k,41) + rxt(k,258)*y(k,42) + rxt(k,241)*y(k,43) & - + rxt(k,242)*y(k,44) + rxt(k,289)*y(k,45) + rxt(k,244)*y(k,46) & - + rxt(k,326)*y(k,48) + rxt(k,315)*y(k,49) + rxt(k,295)*y(k,50) & - + rxt(k,296)*y(k,51) + rxt(k,264)*y(k,53) + rxt(k,265)*y(k,54) & - + rxt(k,142)*y(k,77) + rxt(k,143)*y(k,79) + rxt(k,225)*y(k,81) & - + rxt(k,249)*y(k,84) + rxt(k,196)*y(k,85) + rxt(k,267)*y(k,87) & - + rxt(k,172)*y(k,89) + rxt(k,150)*y(k,90) + rxt(k,199)*y(k,92) & - + .500_r8*rxt(k,339)*y(k,105) + rxt(k,479)*y(k,120) + rxt(k,320) & - *y(k,147) + rxt(k,324)*y(k,148) + rxt(k,144)*y(k,205) & - + 2.000_r8*rxt(k,147)*y(k,219) - end do - end subroutine nlnmat10 - subroutine nlnmat_finit( avec_len, mat, lmat, dti ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: dti(veclen) - real(r8), intent(in) :: lmat(veclen,nzcnt) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k, 1) = lmat(k, 1) - mat(k, 2) = lmat(k, 2) - mat(k, 3) = lmat(k, 3) - mat(k, 4) = lmat(k, 4) - mat(k, 5) = lmat(k, 5) - mat(k, 6) = lmat(k, 6) - mat(k, 7) = lmat(k, 7) - mat(k, 8) = lmat(k, 8) - mat(k, 9) = lmat(k, 9) - mat(k, 10) = lmat(k, 10) - mat(k, 11) = lmat(k, 11) - mat(k, 12) = lmat(k, 12) - mat(k, 13) = lmat(k, 13) - mat(k, 14) = lmat(k, 14) - mat(k, 15) = lmat(k, 15) - mat(k, 16) = lmat(k, 16) - mat(k, 17) = lmat(k, 17) - mat(k, 18) = lmat(k, 18) - mat(k, 19) = lmat(k, 19) - mat(k, 20) = lmat(k, 20) - mat(k, 21) = lmat(k, 21) - mat(k, 22) = lmat(k, 22) - mat(k, 23) = lmat(k, 23) - mat(k, 24) = lmat(k, 24) - mat(k, 25) = lmat(k, 25) - mat(k, 26) = lmat(k, 26) - mat(k, 27) = lmat(k, 27) - mat(k, 28) = lmat(k, 28) - mat(k, 29) = lmat(k, 29) - mat(k, 30) = lmat(k, 30) - mat(k, 31) = lmat(k, 31) - mat(k, 32) = lmat(k, 32) - mat(k, 33) = lmat(k, 33) - mat(k, 34) = lmat(k, 34) - mat(k, 35) = lmat(k, 35) - mat(k, 36) = lmat(k, 36) - mat(k, 37) = lmat(k, 37) - mat(k, 38) = lmat(k, 38) - mat(k, 39) = lmat(k, 39) - mat(k, 40) = lmat(k, 40) - mat(k, 41) = lmat(k, 41) - mat(k, 42) = lmat(k, 42) - mat(k, 43) = lmat(k, 43) - mat(k, 44) = lmat(k, 44) - mat(k, 50) = mat(k, 50) + lmat(k, 50) - mat(k, 56) = mat(k, 56) + lmat(k, 56) - mat(k, 62) = mat(k, 62) + lmat(k, 62) - mat(k, 68) = mat(k, 68) + lmat(k, 68) - mat(k, 74) = mat(k, 74) + lmat(k, 74) - mat(k, 76) = mat(k, 76) + lmat(k, 76) - mat(k, 82) = mat(k, 82) + lmat(k, 82) - mat(k, 88) = mat(k, 88) + lmat(k, 88) - mat(k, 94) = mat(k, 94) + lmat(k, 94) - mat(k, 95) = lmat(k, 95) - mat(k, 96) = lmat(k, 96) - mat(k, 97) = lmat(k, 97) - mat(k, 98) = mat(k, 98) + lmat(k, 98) - mat(k, 101) = mat(k, 101) + lmat(k, 101) - mat(k, 103) = mat(k, 103) + lmat(k, 103) - mat(k, 104) = mat(k, 104) + lmat(k, 104) - mat(k, 107) = mat(k, 107) + lmat(k, 107) - mat(k, 108) = mat(k, 108) + lmat(k, 108) - mat(k, 109) = mat(k, 109) + lmat(k, 109) - mat(k, 111) = mat(k, 111) + lmat(k, 111) - mat(k, 115) = mat(k, 115) + lmat(k, 115) - mat(k, 116) = mat(k, 116) + lmat(k, 116) - mat(k, 118) = mat(k, 118) + lmat(k, 118) - mat(k, 119) = mat(k, 119) + lmat(k, 119) - mat(k, 120) = mat(k, 120) + lmat(k, 120) - mat(k, 122) = mat(k, 122) + lmat(k, 122) - mat(k, 123) = mat(k, 123) + lmat(k, 123) - mat(k, 124) = mat(k, 124) + lmat(k, 124) - mat(k, 126) = mat(k, 126) + lmat(k, 126) - mat(k, 127) = mat(k, 127) + lmat(k, 127) - mat(k, 129) = mat(k, 129) + lmat(k, 129) - mat(k, 131) = lmat(k, 131) - mat(k, 132) = lmat(k, 132) - mat(k, 133) = lmat(k, 133) - mat(k, 134) = lmat(k, 134) - mat(k, 135) = lmat(k, 135) - mat(k, 136) = lmat(k, 136) - mat(k, 137) = mat(k, 137) + lmat(k, 137) - mat(k, 140) = lmat(k, 140) - mat(k, 141) = lmat(k, 141) - mat(k, 142) = lmat(k, 142) - mat(k, 143) = mat(k, 143) + lmat(k, 143) - mat(k, 144) = mat(k, 144) + lmat(k, 144) - mat(k, 145) = mat(k, 145) + lmat(k, 145) - mat(k, 147) = mat(k, 147) + lmat(k, 147) - mat(k, 148) = mat(k, 148) + lmat(k, 148) - mat(k, 149) = mat(k, 149) + lmat(k, 149) - mat(k, 150) = mat(k, 150) + lmat(k, 150) - mat(k, 151) = mat(k, 151) + lmat(k, 151) - mat(k, 153) = mat(k, 153) + lmat(k, 153) - mat(k, 154) = mat(k, 154) + lmat(k, 154) - mat(k, 155) = mat(k, 155) + lmat(k, 155) - mat(k, 157) = mat(k, 157) + lmat(k, 157) - mat(k, 158) = mat(k, 158) + lmat(k, 158) - mat(k, 159) = mat(k, 159) + lmat(k, 159) - mat(k, 160) = mat(k, 160) + lmat(k, 160) - mat(k, 162) = mat(k, 162) + lmat(k, 162) - mat(k, 164) = mat(k, 164) + lmat(k, 164) - mat(k, 170) = lmat(k, 170) - mat(k, 171) = lmat(k, 171) - mat(k, 172) = lmat(k, 172) - mat(k, 173) = lmat(k, 173) - mat(k, 174) = mat(k, 174) + lmat(k, 174) - mat(k, 179) = lmat(k, 179) - mat(k, 180) = lmat(k, 180) - mat(k, 181) = mat(k, 181) + lmat(k, 181) - mat(k, 185) = mat(k, 185) + lmat(k, 185) - mat(k, 186) = mat(k, 186) + lmat(k, 186) - mat(k, 189) = mat(k, 189) + lmat(k, 189) - mat(k, 196) = mat(k, 196) + lmat(k, 196) - mat(k, 201) = lmat(k, 201) - mat(k, 202) = lmat(k, 202) - mat(k, 203) = lmat(k, 203) - mat(k, 204) = lmat(k, 204) - mat(k, 205) = mat(k, 205) + lmat(k, 205) - mat(k, 207) = mat(k, 207) + lmat(k, 207) - mat(k, 210) = mat(k, 210) + lmat(k, 210) - mat(k, 218) = mat(k, 218) + lmat(k, 218) - mat(k, 223) = mat(k, 223) + lmat(k, 223) - mat(k, 224) = lmat(k, 224) - mat(k, 226) = mat(k, 226) + lmat(k, 226) - mat(k, 227) = lmat(k, 227) - mat(k, 228) = mat(k, 228) + lmat(k, 228) - mat(k, 231) = lmat(k, 231) - mat(k, 232) = lmat(k, 232) - mat(k, 233) = lmat(k, 233) - mat(k, 234) = lmat(k, 234) - mat(k, 235) = lmat(k, 235) - mat(k, 236) = lmat(k, 236) - mat(k, 237) = mat(k, 237) + lmat(k, 237) - mat(k, 240) = mat(k, 240) + lmat(k, 240) - mat(k, 241) = mat(k, 241) + lmat(k, 241) - mat(k, 243) = mat(k, 243) + lmat(k, 243) - mat(k, 244) = mat(k, 244) + lmat(k, 244) - mat(k, 247) = mat(k, 247) + lmat(k, 247) - mat(k, 248) = mat(k, 248) + lmat(k, 248) - mat(k, 249) = mat(k, 249) + lmat(k, 249) - mat(k, 251) = mat(k, 251) + lmat(k, 251) - mat(k, 252) = mat(k, 252) + lmat(k, 252) - mat(k, 253) = mat(k, 253) + lmat(k, 253) - mat(k, 257) = mat(k, 257) + lmat(k, 257) - mat(k, 259) = mat(k, 259) + lmat(k, 259) - mat(k, 260) = lmat(k, 260) - mat(k, 261) = lmat(k, 261) - mat(k, 263) = mat(k, 263) + lmat(k, 263) - mat(k, 267) = mat(k, 267) + lmat(k, 267) - mat(k, 268) = lmat(k, 268) - mat(k, 270) = mat(k, 270) + lmat(k, 270) - mat(k, 271) = lmat(k, 271) - mat(k, 272) = lmat(k, 272) - mat(k, 273) = lmat(k, 273) - mat(k, 274) = lmat(k, 274) - mat(k, 275) = lmat(k, 275) - mat(k, 276) = lmat(k, 276) - mat(k, 277) = lmat(k, 277) - mat(k, 278) = lmat(k, 278) - mat(k, 279) = lmat(k, 279) - mat(k, 280) = lmat(k, 280) - mat(k, 281) = lmat(k, 281) - mat(k, 282) = lmat(k, 282) - mat(k, 283) = lmat(k, 283) - mat(k, 284) = mat(k, 284) + lmat(k, 284) - mat(k, 290) = lmat(k, 290) - mat(k, 291) = lmat(k, 291) - mat(k, 292) = lmat(k, 292) - mat(k, 293) = mat(k, 293) + lmat(k, 293) - mat(k, 299) = mat(k, 299) + lmat(k, 299) - mat(k, 300) = mat(k, 300) + lmat(k, 300) - mat(k, 304) = mat(k, 304) + lmat(k, 304) - mat(k, 306) = mat(k, 306) + lmat(k, 306) - mat(k, 312) = mat(k, 312) + lmat(k, 312) - mat(k, 317) = mat(k, 317) + lmat(k, 317) - mat(k, 319) = lmat(k, 319) - mat(k, 320) = lmat(k, 320) - mat(k, 321) = mat(k, 321) + lmat(k, 321) - mat(k, 322) = lmat(k, 322) - mat(k, 323) = lmat(k, 323) - mat(k, 324) = lmat(k, 324) - mat(k, 325) = lmat(k, 325) - mat(k, 326) = lmat(k, 326) - mat(k, 327) = mat(k, 327) + lmat(k, 327) - mat(k, 330) = mat(k, 330) + lmat(k, 330) - mat(k, 331) = lmat(k, 331) - mat(k, 332) = mat(k, 332) + lmat(k, 332) - mat(k, 334) = lmat(k, 334) - mat(k, 335) = mat(k, 335) + lmat(k, 335) - mat(k, 336) = lmat(k, 336) - mat(k, 337) = lmat(k, 337) - mat(k, 338) = mat(k, 338) + lmat(k, 338) - mat(k, 341) = mat(k, 341) + lmat(k, 341) - mat(k, 342) = lmat(k, 342) - mat(k, 343) = mat(k, 343) + lmat(k, 343) - mat(k, 345) = mat(k, 345) + lmat(k, 345) - mat(k, 346) = mat(k, 346) + lmat(k, 346) - mat(k, 347) = lmat(k, 347) - mat(k, 348) = mat(k, 348) + lmat(k, 348) - mat(k, 351) = mat(k, 351) + lmat(k, 351) - mat(k, 359) = mat(k, 359) + lmat(k, 359) - mat(k, 360) = lmat(k, 360) - mat(k, 362) = mat(k, 362) + lmat(k, 362) - mat(k, 367) = mat(k, 367) + lmat(k, 367) - mat(k, 370) = lmat(k, 370) - mat(k, 371) = mat(k, 371) + lmat(k, 371) - mat(k, 375) = mat(k, 375) + lmat(k, 375) - mat(k, 378) = lmat(k, 378) - mat(k, 381) = lmat(k, 381) - mat(k, 382) = lmat(k, 382) - mat(k, 383) = lmat(k, 383) - mat(k, 384) = lmat(k, 384) - mat(k, 385) = lmat(k, 385) - mat(k, 386) = lmat(k, 386) - mat(k, 387) = mat(k, 387) + lmat(k, 387) - mat(k, 388) = mat(k, 388) + lmat(k, 388) - mat(k, 393) = mat(k, 393) + lmat(k, 393) - mat(k, 394) = lmat(k, 394) - mat(k, 396) = lmat(k, 396) - mat(k, 397) = mat(k, 397) + lmat(k, 397) - mat(k, 398) = lmat(k, 398) - mat(k, 399) = mat(k, 399) + lmat(k, 399) - mat(k, 401) = lmat(k, 401) - mat(k, 402) = lmat(k, 402) - mat(k, 403) = mat(k, 403) + lmat(k, 403) - mat(k, 405) = mat(k, 405) + lmat(k, 405) - mat(k, 406) = lmat(k, 406) - mat(k, 409) = lmat(k, 409) - mat(k, 410) = mat(k, 410) + lmat(k, 410) - mat(k, 411) = mat(k, 411) + lmat(k, 411) - mat(k, 413) = lmat(k, 413) - mat(k, 414) = mat(k, 414) + lmat(k, 414) - mat(k, 415) = lmat(k, 415) - mat(k, 417) = mat(k, 417) + lmat(k, 417) - mat(k, 418) = lmat(k, 418) - mat(k, 420) = lmat(k, 420) - mat(k, 421) = mat(k, 421) + lmat(k, 421) - mat(k, 422) = lmat(k, 422) - mat(k, 423) = mat(k, 423) + lmat(k, 423) - mat(k, 424) = mat(k, 424) + lmat(k, 424) - mat(k, 425) = lmat(k, 425) - mat(k, 426) = mat(k, 426) + lmat(k, 426) - mat(k, 427) = lmat(k, 427) - mat(k, 429) = mat(k, 429) + lmat(k, 429) - mat(k, 431) = lmat(k, 431) - mat(k, 432) = lmat(k, 432) - mat(k, 433) = mat(k, 433) + lmat(k, 433) - mat(k, 434) = lmat(k, 434) - mat(k, 437) = mat(k, 437) + lmat(k, 437) - mat(k, 443) = mat(k, 443) + lmat(k, 443) - mat(k, 445) = lmat(k, 445) - mat(k, 448) = mat(k, 448) + lmat(k, 448) - mat(k, 450) = mat(k, 450) + lmat(k, 450) - mat(k, 456) = mat(k, 456) + lmat(k, 456) - mat(k, 457) = lmat(k, 457) - mat(k, 458) = mat(k, 458) + lmat(k, 458) - mat(k, 459) = mat(k, 459) + lmat(k, 459) - mat(k, 462) = lmat(k, 462) - mat(k, 463) = lmat(k, 463) - mat(k, 464) = lmat(k, 464) - mat(k, 465) = mat(k, 465) + lmat(k, 465) - mat(k, 469) = mat(k, 469) + lmat(k, 469) - mat(k, 470) = mat(k, 470) + lmat(k, 470) - mat(k, 476) = mat(k, 476) + lmat(k, 476) - mat(k, 478) = lmat(k, 478) - mat(k, 479) = lmat(k, 479) - mat(k, 480) = lmat(k, 480) - mat(k, 481) = mat(k, 481) + lmat(k, 481) - mat(k, 482) = lmat(k, 482) - mat(k, 485) = mat(k, 485) + lmat(k, 485) - mat(k, 493) = mat(k, 493) + lmat(k, 493) - mat(k, 497) = mat(k, 497) + lmat(k, 497) - mat(k, 499) = mat(k, 499) + lmat(k, 499) - mat(k, 501) = mat(k, 501) + lmat(k, 501) - mat(k, 508) = mat(k, 508) + lmat(k, 508) - mat(k, 510) = lmat(k, 510) - mat(k, 511) = lmat(k, 511) - mat(k, 513) = mat(k, 513) + lmat(k, 513) - mat(k, 514) = mat(k, 514) + lmat(k, 514) - mat(k, 517) = lmat(k, 517) - mat(k, 520) = mat(k, 520) + lmat(k, 520) - mat(k, 526) = mat(k, 526) + lmat(k, 526) - mat(k, 527) = lmat(k, 527) - mat(k, 528) = lmat(k, 528) - mat(k, 531) = mat(k, 531) + lmat(k, 531) - mat(k, 532) = lmat(k, 532) - mat(k, 533) = lmat(k, 533) - mat(k, 534) = mat(k, 534) + lmat(k, 534) - mat(k, 539) = lmat(k, 539) - mat(k, 542) = mat(k, 542) + lmat(k, 542) - mat(k, 544) = lmat(k, 544) - mat(k, 546) = lmat(k, 546) - mat(k, 547) = mat(k, 547) + lmat(k, 547) - mat(k, 548) = lmat(k, 548) - mat(k, 550) = mat(k, 550) + lmat(k, 550) - mat(k, 558) = mat(k, 558) + lmat(k, 558) - mat(k, 559) = lmat(k, 559) - mat(k, 560) = lmat(k, 560) - mat(k, 561) = lmat(k, 561) - mat(k, 562) = mat(k, 562) + lmat(k, 562) - mat(k, 563) = lmat(k, 563) - mat(k, 564) = mat(k, 564) + lmat(k, 564) - mat(k, 566) = mat(k, 566) + lmat(k, 566) - mat(k, 574) = mat(k, 574) + lmat(k, 574) - mat(k, 577) = lmat(k, 577) - mat(k, 581) = lmat(k, 581) - mat(k, 583) = mat(k, 583) + lmat(k, 583) - mat(k, 587) = lmat(k, 587) - mat(k, 592) = lmat(k, 592) - mat(k, 593) = lmat(k, 593) - mat(k, 594) = lmat(k, 594) - mat(k, 595) = lmat(k, 595) - mat(k, 596) = mat(k, 596) + lmat(k, 596) - mat(k, 597) = mat(k, 597) + lmat(k, 597) - mat(k, 600) = lmat(k, 600) - mat(k, 605) = mat(k, 605) + lmat(k, 605) - mat(k, 606) = mat(k, 606) + lmat(k, 606) - mat(k, 612) = mat(k, 612) + lmat(k, 612) - mat(k, 613) = mat(k, 613) + lmat(k, 613) - mat(k, 616) = mat(k, 616) + lmat(k, 616) - mat(k, 617) = lmat(k, 617) - mat(k, 619) = mat(k, 619) + lmat(k, 619) - mat(k, 620) = mat(k, 620) + lmat(k, 620) - mat(k, 621) = lmat(k, 621) - mat(k, 623) = mat(k, 623) + lmat(k, 623) - mat(k, 624) = lmat(k, 624) - mat(k, 627) = mat(k, 627) + lmat(k, 627) - mat(k, 633) = lmat(k, 633) - mat(k, 634) = mat(k, 634) + lmat(k, 634) - mat(k, 637) = mat(k, 637) + lmat(k, 637) - mat(k, 638) = mat(k, 638) + lmat(k, 638) - mat(k, 640) = mat(k, 640) + lmat(k, 640) - mat(k, 642) = mat(k, 642) + lmat(k, 642) - mat(k, 643) = lmat(k, 643) - mat(k, 644) = mat(k, 644) + lmat(k, 644) - mat(k, 645) = lmat(k, 645) - mat(k, 646) = lmat(k, 646) - mat(k, 647) = lmat(k, 647) - mat(k, 648) = lmat(k, 648) - mat(k, 650) = lmat(k, 650) - mat(k, 651) = lmat(k, 651) - mat(k, 652) = mat(k, 652) + lmat(k, 652) - mat(k, 653) = lmat(k, 653) - mat(k, 654) = lmat(k, 654) - mat(k, 655) = lmat(k, 655) - mat(k, 656) = lmat(k, 656) - mat(k, 657) = mat(k, 657) + lmat(k, 657) - mat(k, 662) = lmat(k, 662) - mat(k, 664) = lmat(k, 664) - mat(k, 665) = mat(k, 665) + lmat(k, 665) - mat(k, 666) = lmat(k, 666) - mat(k, 667) = lmat(k, 667) - mat(k, 668) = mat(k, 668) + lmat(k, 668) - mat(k, 672) = lmat(k, 672) - mat(k, 673) = lmat(k, 673) - mat(k, 675) = lmat(k, 675) - mat(k, 676) = mat(k, 676) + lmat(k, 676) - mat(k, 677) = lmat(k, 677) - mat(k, 679) = mat(k, 679) + lmat(k, 679) - mat(k, 686) = mat(k, 686) + lmat(k, 686) - mat(k, 691) = lmat(k, 691) - mat(k, 692) = lmat(k, 692) - mat(k, 693) = lmat(k, 693) - mat(k, 694) = lmat(k, 694) - mat(k, 695) = mat(k, 695) + lmat(k, 695) - mat(k, 700) = lmat(k, 700) - mat(k, 702) = lmat(k, 702) - mat(k, 704) = mat(k, 704) + lmat(k, 704) - mat(k, 705) = lmat(k, 705) - mat(k, 708) = mat(k, 708) + lmat(k, 708) - mat(k, 715) = mat(k, 715) + lmat(k, 715) - mat(k, 726) = mat(k, 726) + lmat(k, 726) - mat(k, 737) = mat(k, 737) + lmat(k, 737) - mat(k, 739) = lmat(k, 739) - mat(k, 740) = lmat(k, 740) - mat(k, 741) = lmat(k, 741) - mat(k, 742) = mat(k, 742) + lmat(k, 742) - mat(k, 743) = lmat(k, 743) - mat(k, 750) = mat(k, 750) + lmat(k, 750) - mat(k, 761) = mat(k, 761) + lmat(k, 761) - mat(k, 770) = mat(k, 770) + lmat(k, 770) - mat(k, 780) = mat(k, 780) + lmat(k, 780) - mat(k, 781) = lmat(k, 781) - mat(k, 782) = mat(k, 782) + lmat(k, 782) - mat(k, 789) = mat(k, 789) + lmat(k, 789) - mat(k, 799) = mat(k, 799) + lmat(k, 799) - mat(k, 803) = lmat(k, 803) - mat(k, 804) = lmat(k, 804) - mat(k, 805) = lmat(k, 805) - mat(k, 806) = mat(k, 806) + lmat(k, 806) - mat(k, 807) = mat(k, 807) + lmat(k, 807) - mat(k, 808) = mat(k, 808) + lmat(k, 808) - mat(k, 815) = mat(k, 815) + lmat(k, 815) - mat(k, 816) = mat(k, 816) + lmat(k, 816) - mat(k, 818) = mat(k, 818) + lmat(k, 818) - mat(k, 825) = mat(k, 825) + lmat(k, 825) - mat(k, 836) = mat(k, 836) + lmat(k, 836) - mat(k, 853) = mat(k, 853) + lmat(k, 853) - mat(k, 854) = lmat(k, 854) - mat(k, 857) = lmat(k, 857) - mat(k, 859) = mat(k, 859) + lmat(k, 859) - mat(k, 861) = lmat(k, 861) - mat(k, 862) = lmat(k, 862) - mat(k, 864) = mat(k, 864) + lmat(k, 864) - mat(k, 866) = mat(k, 866) + lmat(k, 866) - mat(k, 875) = mat(k, 875) + lmat(k, 875) - mat(k, 889) = mat(k, 889) + lmat(k, 889) - mat(k, 900) = mat(k, 900) + lmat(k, 900) - mat(k, 901) = mat(k, 901) + lmat(k, 901) - mat(k, 902) = mat(k, 902) + lmat(k, 902) - mat(k, 904) = mat(k, 904) + lmat(k, 904) - mat(k, 905) = mat(k, 905) + lmat(k, 905) - mat(k, 906) = lmat(k, 906) - mat(k, 907) = mat(k, 907) + lmat(k, 907) - mat(k, 914) = mat(k, 914) + lmat(k, 914) - mat(k, 924) = mat(k, 924) + lmat(k, 924) - mat(k, 926) = lmat(k, 926) - mat(k, 928) = lmat(k, 928) - mat(k, 931) = mat(k, 931) + lmat(k, 931) - mat(k, 950) = mat(k, 950) + lmat(k, 950) - mat(k, 971) = mat(k, 971) + lmat(k, 971) - mat(k, 973) = lmat(k, 973) - mat(k, 975) = lmat(k, 975) - mat(k, 978) = lmat(k, 978) - mat(k, 979) = lmat(k, 979) - mat(k, 981) = mat(k, 981) + lmat(k, 981) - mat(k, 982) = mat(k, 982) + lmat(k, 982) - mat(k, 984) = mat(k, 984) + lmat(k, 984) - mat(k,1001) = mat(k,1001) + lmat(k,1001) - mat(k,1026) = mat(k,1026) + lmat(k,1026) - mat(k,1047) = mat(k,1047) + lmat(k,1047) - mat(k,1059) = mat(k,1059) + lmat(k,1059) - mat(k,1060) = mat(k,1060) + lmat(k,1060) - mat(k,1061) = mat(k,1061) + lmat(k,1061) - mat(k,1062) = mat(k,1062) + lmat(k,1062) - mat(k,1063) = mat(k,1063) + lmat(k,1063) - mat(k,1064) = mat(k,1064) + lmat(k,1064) - mat(k,1065) = mat(k,1065) + lmat(k,1065) - mat(k,1068) = mat(k,1068) + lmat(k,1068) - mat(k,1071) = lmat(k,1071) - mat(k,1075) = mat(k,1075) + lmat(k,1075) - mat(k,1079) = lmat(k,1079) - mat(k,1084) = lmat(k,1084) - mat(k,1085) = mat(k,1085) + lmat(k,1085) - mat(k,1087) = mat(k,1087) + lmat(k,1087) - mat(k,1088) = lmat(k,1088) - mat(k,1093) = lmat(k,1093) - mat(k,1094) = lmat(k,1094) - mat(k,1098) = mat(k,1098) + lmat(k,1098) - mat(k,1099) = lmat(k,1099) - mat(k,1100) = mat(k,1100) + lmat(k,1100) - mat(k,1102) = mat(k,1102) + lmat(k,1102) - mat(k,1111) = mat(k,1111) + lmat(k,1111) - mat(k,1125) = mat(k,1125) + lmat(k,1125) - mat(k,1131) = mat(k,1131) + lmat(k,1131) - mat(k,1142) = mat(k,1142) + lmat(k,1142) - mat(k,1144) = lmat(k,1144) - mat(k,1145) = lmat(k,1145) - mat(k,1147) = mat(k,1147) + lmat(k,1147) - mat(k,1149) = lmat(k,1149) - mat(k,1150) = lmat(k,1150) - mat(k,1151) = lmat(k,1151) - mat(k,1152) = lmat(k,1152) - mat(k,1154) = lmat(k,1154) - mat(k,1155) = mat(k,1155) + lmat(k,1155) - mat(k,1157) = lmat(k,1157) - mat(k,1158) = lmat(k,1158) - mat(k,1159) = lmat(k,1159) - mat(k,1164) = lmat(k,1164) - mat(k,1165) = mat(k,1165) + lmat(k,1165) - mat(k,1175) = mat(k,1175) + lmat(k,1175) - mat(k,1195) = mat(k,1195) + lmat(k,1195) - mat(k,1210) = mat(k,1210) + lmat(k,1210) - mat(k,1211) = mat(k,1211) + lmat(k,1211) - mat(k,1214) = mat(k,1214) + lmat(k,1214) - mat(k,1215) = mat(k,1215) + lmat(k,1215) - mat(k,1216) = mat(k,1216) + lmat(k,1216) - mat(k,1218) = mat(k,1218) + lmat(k,1218) - mat(k,1222) = mat(k,1222) + lmat(k,1222) - mat(k,1223) = mat(k,1223) + lmat(k,1223) - mat(k,1224) = mat(k,1224) + lmat(k,1224) - mat(k,1228) = lmat(k,1228) - mat(k,1232) = lmat(k,1232) - mat(k,1233) = mat(k,1233) + lmat(k,1233) - mat(k,1234) = mat(k,1234) + lmat(k,1234) - mat(k,1244) = lmat(k,1244) - mat(k,1258) = mat(k,1258) + lmat(k,1258) - mat(k,1274) = lmat(k,1274) - mat(k,1290) = mat(k,1290) + lmat(k,1290) - mat(k,1302) = mat(k,1302) + lmat(k,1302) - mat(k,1313) = mat(k,1313) + lmat(k,1313) - mat(k,1328) = lmat(k,1328) - mat(k,1330) = mat(k,1330) + lmat(k,1330) - mat(k,1334) = mat(k,1334) + lmat(k,1334) - mat(k,1336) = mat(k,1336) + lmat(k,1336) - mat(k,1342) = lmat(k,1342) - mat(k,1356) = mat(k,1356) + lmat(k,1356) - mat(k,1388) = mat(k,1388) + lmat(k,1388) - mat(k,1403) = mat(k,1403) + lmat(k,1403) - mat(k,1417) = mat(k,1417) + lmat(k,1417) - mat(k,1428) = lmat(k,1428) - mat(k,1430) = lmat(k,1430) - mat(k,1431) = mat(k,1431) + lmat(k,1431) - mat(k,1432) = mat(k,1432) + lmat(k,1432) - mat(k,1433) = mat(k,1433) + lmat(k,1433) - mat(k,1435) = mat(k,1435) + lmat(k,1435) - mat(k,1437) = mat(k,1437) + lmat(k,1437) - mat(k,1439) = mat(k,1439) + lmat(k,1439) - mat(k,1443) = lmat(k,1443) - mat(k,1444) = mat(k,1444) + lmat(k,1444) - mat(k,1447) = mat(k,1447) + lmat(k,1447) - mat(k,1455) = mat(k,1455) + lmat(k,1455) - mat(k,1465) = mat(k,1465) + lmat(k,1465) - mat(k,1468) = mat(k,1468) + lmat(k,1468) - mat(k,1471) = lmat(k,1471) - mat(k,1481) = mat(k,1481) + lmat(k,1481) - mat(k,1482) = lmat(k,1482) - mat(k,1485) = mat(k,1485) + lmat(k,1485) - mat(k,1487) = mat(k,1487) + lmat(k,1487) - mat(k,1528) = mat(k,1528) + lmat(k,1528) - mat(k,1539) = lmat(k,1539) - mat(k,1693) = mat(k,1693) + lmat(k,1693) - mat(k,1720) = mat(k,1720) + lmat(k,1720) - mat(k,1725) = mat(k,1725) + lmat(k,1725) - mat(k,1729) = mat(k,1729) + lmat(k,1729) - mat(k,1773) = mat(k,1773) + lmat(k,1773) - mat(k,1778) = mat(k,1778) + lmat(k,1778) - mat(k,1780) = mat(k,1780) + lmat(k,1780) - mat(k,1781) = mat(k,1781) + lmat(k,1781) - mat(k,1786) = mat(k,1786) + lmat(k,1786) - mat(k,1831) = mat(k,1831) + lmat(k,1831) - mat(k,1865) = mat(k,1865) + lmat(k,1865) - mat(k,1924) = mat(k,1924) + lmat(k,1924) - mat(k,1930) = mat(k,1930) + lmat(k,1930) - mat(k,1961) = mat(k,1961) + lmat(k,1961) - mat(k,1964) = mat(k,1964) + lmat(k,1964) - mat(k,1968) = mat(k,1968) + lmat(k,1968) - mat(k,1969) = mat(k,1969) + lmat(k,1969) - mat(k,1974) = mat(k,1974) + lmat(k,1974) - mat(k,2009) = mat(k,2009) + lmat(k,2009) - mat(k,2117) = mat(k,2117) + lmat(k,2117) - mat(k,2122) = mat(k,2122) + lmat(k,2122) - mat(k,2129) = mat(k,2129) + lmat(k,2129) - mat(k,2139) = mat(k,2139) + lmat(k,2139) - mat(k,2141) = mat(k,2141) + lmat(k,2141) - mat(k,2152) = mat(k,2152) + lmat(k,2152) - mat(k,2166) = mat(k,2166) + lmat(k,2166) - mat(k,2167) = mat(k,2167) + lmat(k,2167) - mat(k,2198) = mat(k,2198) + lmat(k,2198) - mat(k,2199) = mat(k,2199) + lmat(k,2199) - mat(k,2248) = mat(k,2248) + lmat(k,2248) - mat(k,2259) = mat(k,2259) + lmat(k,2259) - mat(k,2260) = mat(k,2260) + lmat(k,2260) - mat(k,2268) = lmat(k,2268) - mat(k,2271) = lmat(k,2271) - mat(k,2274) = mat(k,2274) + lmat(k,2274) - mat(k,2275) = mat(k,2275) + lmat(k,2275) - mat(k,2285) = lmat(k,2285) - mat(k,2287) = mat(k,2287) + lmat(k,2287) - mat(k, 214) = 0._r8 - mat(k, 215) = 0._r8 - mat(k, 254) = 0._r8 - mat(k, 301) = 0._r8 - mat(k, 340) = 0._r8 - mat(k, 438) = 0._r8 - mat(k, 439) = 0._r8 - mat(k, 452) = 0._r8 - mat(k, 486) = 0._r8 - mat(k, 488) = 0._r8 - mat(k, 495) = 0._r8 - mat(k, 504) = 0._r8 - mat(k, 628) = 0._r8 - mat(k, 632) = 0._r8 - mat(k, 635) = 0._r8 - mat(k, 636) = 0._r8 - mat(k, 639) = 0._r8 - mat(k, 658) = 0._r8 - mat(k, 660) = 0._r8 - mat(k, 661) = 0._r8 - mat(k, 663) = 0._r8 - mat(k, 669) = 0._r8 - mat(k, 670) = 0._r8 - mat(k, 674) = 0._r8 - mat(k, 696) = 0._r8 - mat(k, 698) = 0._r8 - mat(k, 699) = 0._r8 - mat(k, 701) = 0._r8 - mat(k, 703) = 0._r8 - mat(k, 709) = 0._r8 - mat(k, 711) = 0._r8 - mat(k, 725) = 0._r8 - mat(k, 727) = 0._r8 - mat(k, 728) = 0._r8 - mat(k, 730) = 0._r8 - mat(k, 732) = 0._r8 - mat(k, 749) = 0._r8 - mat(k, 751) = 0._r8 - mat(k, 752) = 0._r8 - mat(k, 754) = 0._r8 - mat(k, 756) = 0._r8 - mat(k, 757) = 0._r8 - mat(k, 772) = 0._r8 - mat(k, 774) = 0._r8 - mat(k, 778) = 0._r8 - mat(k, 783) = 0._r8 - mat(k, 793) = 0._r8 - mat(k, 798) = 0._r8 - mat(k, 828) = 0._r8 - mat(k, 858) = 0._r8 - mat(k, 887) = 0._r8 - mat(k, 888) = 0._r8 - mat(k, 892) = 0._r8 - mat(k, 894) = 0._r8 - mat(k, 895) = 0._r8 - mat(k, 910) = 0._r8 - mat(k, 917) = 0._r8 - mat(k, 919) = 0._r8 - mat(k, 932) = 0._r8 - mat(k, 935) = 0._r8 - mat(k, 946) = 0._r8 - mat(k, 952) = 0._r8 - mat(k, 955) = 0._r8 - mat(k, 958) = 0._r8 - mat(k, 960) = 0._r8 - mat(k, 964) = 0._r8 - mat(k, 965) = 0._r8 - mat(k, 966) = 0._r8 - mat(k, 968) = 0._r8 - mat(k, 970) = 0._r8 - mat(k, 985) = 0._r8 - mat(k, 995) = 0._r8 - mat(k,1000) = 0._r8 - mat(k,1004) = 0._r8 - mat(k,1005) = 0._r8 - mat(k,1008) = 0._r8 - mat(k,1010) = 0._r8 - mat(k,1014) = 0._r8 - mat(k,1015) = 0._r8 - mat(k,1016) = 0._r8 - mat(k,1018) = 0._r8 - mat(k,1020) = 0._r8 - mat(k,1029) = 0._r8 - mat(k,1030) = 0._r8 - mat(k,1031) = 0._r8 - mat(k,1037) = 0._r8 - mat(k,1038) = 0._r8 - mat(k,1040) = 0._r8 - mat(k,1042) = 0._r8 - mat(k,1048) = 0._r8 - mat(k,1049) = 0._r8 - mat(k,1050) = 0._r8 - mat(k,1051) = 0._r8 - mat(k,1053) = 0._r8 - mat(k,1067) = 0._r8 - mat(k,1069) = 0._r8 - mat(k,1070) = 0._r8 - mat(k,1073) = 0._r8 - mat(k,1076) = 0._r8 - mat(k,1077) = 0._r8 - mat(k,1078) = 0._r8 - mat(k,1080) = 0._r8 - mat(k,1082) = 0._r8 - mat(k,1083) = 0._r8 - mat(k,1086) = 0._r8 - mat(k,1103) = 0._r8 - mat(k,1113) = 0._r8 - mat(k,1114) = 0._r8 - mat(k,1115) = 0._r8 - mat(k,1117) = 0._r8 - mat(k,1122) = 0._r8 - mat(k,1123) = 0._r8 - mat(k,1128) = 0._r8 - mat(k,1141) = 0._r8 - mat(k,1153) = 0._r8 - mat(k,1156) = 0._r8 - mat(k,1161) = 0._r8 - mat(k,1162) = 0._r8 - mat(k,1163) = 0._r8 - mat(k,1166) = 0._r8 - mat(k,1167) = 0._r8 - mat(k,1179) = 0._r8 - mat(k,1185) = 0._r8 - mat(k,1188) = 0._r8 - mat(k,1190) = 0._r8 - mat(k,1192) = 0._r8 - mat(k,1193) = 0._r8 - mat(k,1194) = 0._r8 - mat(k,1196) = 0._r8 - mat(k,1197) = 0._r8 - mat(k,1198) = 0._r8 - mat(k,1200) = 0._r8 - mat(k,1202) = 0._r8 - mat(k,1208) = 0._r8 - mat(k,1219) = 0._r8 - mat(k,1229) = 0._r8 - mat(k,1242) = 0._r8 - mat(k,1246) = 0._r8 - mat(k,1251) = 0._r8 - mat(k,1252) = 0._r8 - mat(k,1253) = 0._r8 - mat(k,1254) = 0._r8 - mat(k,1255) = 0._r8 - mat(k,1257) = 0._r8 - mat(k,1259) = 0._r8 - mat(k,1261) = 0._r8 - mat(k,1263) = 0._r8 - mat(k,1265) = 0._r8 - mat(k,1271) = 0._r8 - mat(k,1272) = 0._r8 - mat(k,1273) = 0._r8 - mat(k,1277) = 0._r8 - mat(k,1280) = 0._r8 - mat(k,1281) = 0._r8 - mat(k,1284) = 0._r8 - mat(k,1286) = 0._r8 - mat(k,1287) = 0._r8 - mat(k,1288) = 0._r8 - mat(k,1291) = 0._r8 - mat(k,1292) = 0._r8 - mat(k,1293) = 0._r8 - mat(k,1295) = 0._r8 - mat(k,1297) = 0._r8 - mat(k,1303) = 0._r8 - mat(k,1304) = 0._r8 - mat(k,1305) = 0._r8 - mat(k,1314) = 0._r8 - mat(k,1316) = 0._r8 - mat(k,1318) = 0._r8 - mat(k,1324) = 0._r8 - mat(k,1325) = 0._r8 - mat(k,1331) = 0._r8 - mat(k,1335) = 0._r8 - mat(k,1337) = 0._r8 - mat(k,1338) = 0._r8 - mat(k,1341) = 0._r8 - mat(k,1343) = 0._r8 - mat(k,1344) = 0._r8 - mat(k,1346) = 0._r8 - mat(k,1348) = 0._r8 - mat(k,1353) = 0._r8 - mat(k,1354) = 0._r8 - mat(k,1355) = 0._r8 - mat(k,1358) = 0._r8 - mat(k,1366) = 0._r8 - mat(k,1368) = 0._r8 - mat(k,1389) = 0._r8 - mat(k,1390) = 0._r8 - mat(k,1393) = 0._r8 - mat(k,1398) = 0._r8 - mat(k,1400) = 0._r8 - mat(k,1404) = 0._r8 - mat(k,1406) = 0._r8 - mat(k,1409) = 0._r8 - mat(k,1410) = 0._r8 - mat(k,1418) = 0._r8 - mat(k,1420) = 0._r8 - mat(k,1421) = 0._r8 - mat(k,1424) = 0._r8 - mat(k,1426) = 0._r8 - mat(k,1434) = 0._r8 - mat(k,1438) = 0._r8 - mat(k,1446) = 0._r8 - mat(k,1448) = 0._r8 - mat(k,1449) = 0._r8 - mat(k,1450) = 0._r8 - mat(k,1452) = 0._r8 - mat(k,1453) = 0._r8 - mat(k,1454) = 0._r8 - mat(k,1456) = 0._r8 - mat(k,1462) = 0._r8 - mat(k,1463) = 0._r8 - mat(k,1464) = 0._r8 - mat(k,1466) = 0._r8 - mat(k,1467) = 0._r8 - mat(k,1470) = 0._r8 - mat(k,1472) = 0._r8 - mat(k,1473) = 0._r8 - mat(k,1474) = 0._r8 - mat(k,1475) = 0._r8 - mat(k,1476) = 0._r8 - mat(k,1480) = 0._r8 - mat(k,1484) = 0._r8 - mat(k,1488) = 0._r8 - mat(k,1491) = 0._r8 - mat(k,1492) = 0._r8 - mat(k,1493) = 0._r8 - mat(k,1497) = 0._r8 - mat(k,1499) = 0._r8 - mat(k,1526) = 0._r8 - mat(k,1531) = 0._r8 - mat(k,1534) = 0._r8 - mat(k,1607) = 0._r8 - mat(k,1624) = 0._r8 - mat(k,1638) = 0._r8 - mat(k,1642) = 0._r8 - mat(k,1653) = 0._r8 - mat(k,1654) = 0._r8 - mat(k,1676) = 0._r8 - mat(k,1692) = 0._r8 - mat(k,1715) = 0._r8 - mat(k,1716) = 0._r8 - mat(k,1718) = 0._r8 - mat(k,1721) = 0._r8 - mat(k,1730) = 0._r8 - mat(k,1731) = 0._r8 - mat(k,1738) = 0._r8 - mat(k,1743) = 0._r8 - mat(k,1750) = 0._r8 - mat(k,1756) = 0._r8 - mat(k,1758) = 0._r8 - mat(k,1763) = 0._r8 - mat(k,1770) = 0._r8 - mat(k,1771) = 0._r8 - mat(k,1772) = 0._r8 - mat(k,1775) = 0._r8 - mat(k,1777) = 0._r8 - mat(k,1779) = 0._r8 - mat(k,1782) = 0._r8 - mat(k,1784) = 0._r8 - mat(k,1785) = 0._r8 - mat(k,1787) = 0._r8 - mat(k,1788) = 0._r8 - mat(k,1799) = 0._r8 - mat(k,1823) = 0._r8 - mat(k,1824) = 0._r8 - mat(k,1825) = 0._r8 - mat(k,1827) = 0._r8 - mat(k,1828) = 0._r8 - mat(k,1830) = 0._r8 - mat(k,1836) = 0._r8 - mat(k,1837) = 0._r8 - mat(k,1838) = 0._r8 - mat(k,1839) = 0._r8 - mat(k,1840) = 0._r8 - mat(k,1886) = 0._r8 - mat(k,1915) = 0._r8 - mat(k,1916) = 0._r8 - mat(k,1917) = 0._r8 - mat(k,1919) = 0._r8 - mat(k,1928) = 0._r8 - mat(k,1932) = 0._r8 - mat(k,1943) = 0._r8 - mat(k,1946) = 0._r8 - mat(k,1947) = 0._r8 - mat(k,1951) = 0._r8 - mat(k,1952) = 0._r8 - mat(k,1953) = 0._r8 - mat(k,1954) = 0._r8 - mat(k,1958) = 0._r8 - mat(k,1959) = 0._r8 - mat(k,1960) = 0._r8 - mat(k,1962) = 0._r8 - mat(k,1963) = 0._r8 - mat(k,1967) = 0._r8 - mat(k,1970) = 0._r8 - mat(k,1972) = 0._r8 - mat(k,1976) = 0._r8 - mat(k,1986) = 0._r8 - mat(k,1990) = 0._r8 - mat(k,1991) = 0._r8 - mat(k,1992) = 0._r8 - mat(k,1993) = 0._r8 - mat(k,1995) = 0._r8 - mat(k,2000) = 0._r8 - mat(k,2002) = 0._r8 - mat(k,2007) = 0._r8 - mat(k,2008) = 0._r8 - mat(k,2012) = 0._r8 - mat(k,2013) = 0._r8 - mat(k,2015) = 0._r8 - mat(k,2031) = 0._r8 - mat(k,2048) = 0._r8 - mat(k,2049) = 0._r8 - mat(k,2077) = 0._r8 - mat(k,2081) = 0._r8 - mat(k,2083) = 0._r8 - mat(k,2086) = 0._r8 - mat(k,2088) = 0._r8 - mat(k,2092) = 0._r8 - mat(k,2095) = 0._r8 - mat(k,2100) = 0._r8 - mat(k,2105) = 0._r8 - mat(k,2107) = 0._r8 - mat(k,2109) = 0._r8 - mat(k,2128) = 0._r8 - mat(k,2131) = 0._r8 - mat(k,2135) = 0._r8 - mat(k,2136) = 0._r8 - mat(k,2137) = 0._r8 - mat(k,2138) = 0._r8 - mat(k,2140) = 0._r8 - mat(k,2142) = 0._r8 - mat(k,2144) = 0._r8 - mat(k,2153) = 0._r8 - mat(k,2154) = 0._r8 - mat(k,2155) = 0._r8 - mat(k,2156) = 0._r8 - mat(k,2159) = 0._r8 - mat(k,2160) = 0._r8 - mat(k,2165) = 0._r8 - mat(k,2168) = 0._r8 - mat(k,2169) = 0._r8 - mat(k,2171) = 0._r8 - mat(k,2177) = 0._r8 - mat(k,2183) = 0._r8 - mat(k,2185) = 0._r8 - mat(k,2187) = 0._r8 - mat(k,2191) = 0._r8 - mat(k,2200) = 0._r8 - mat(k,2213) = 0._r8 - mat(k,2217) = 0._r8 - mat(k,2222) = 0._r8 - mat(k,2225) = 0._r8 - mat(k,2228) = 0._r8 - mat(k,2229) = 0._r8 - mat(k,2232) = 0._r8 - mat(k,2233) = 0._r8 - mat(k,2237) = 0._r8 - mat(k,2238) = 0._r8 - mat(k,2239) = 0._r8 - mat(k,2241) = 0._r8 - mat(k,2246) = 0._r8 - mat(k,2257) = 0._r8 - mat(k,2261) = 0._r8 - mat(k,2265) = 0._r8 - mat(k,2267) = 0._r8 - mat(k,2269) = 0._r8 - mat(k,2270) = 0._r8 - mat(k,2272) = 0._r8 - mat(k,2273) = 0._r8 - mat(k,2276) = 0._r8 - mat(k,2277) = 0._r8 - mat(k,2278) = 0._r8 - mat(k,2279) = 0._r8 - mat(k,2280) = 0._r8 - mat(k,2281) = 0._r8 - mat(k,2282) = 0._r8 - mat(k,2283) = 0._r8 - mat(k,2284) = 0._r8 - mat(k,2286) = 0._r8 - mat(k, 1) = mat(k, 1) - dti(k) - mat(k, 2) = mat(k, 2) - dti(k) - mat(k, 3) = mat(k, 3) - dti(k) - mat(k, 4) = mat(k, 4) - dti(k) - mat(k, 5) = mat(k, 5) - dti(k) - mat(k, 6) = mat(k, 6) - dti(k) - mat(k, 7) = mat(k, 7) - dti(k) - mat(k, 8) = mat(k, 8) - dti(k) - mat(k, 9) = mat(k, 9) - dti(k) - mat(k, 10) = mat(k, 10) - dti(k) - mat(k, 11) = mat(k, 11) - dti(k) - mat(k, 12) = mat(k, 12) - dti(k) - mat(k, 13) = mat(k, 13) - dti(k) - mat(k, 14) = mat(k, 14) - dti(k) - mat(k, 15) = mat(k, 15) - dti(k) - mat(k, 16) = mat(k, 16) - dti(k) - mat(k, 17) = mat(k, 17) - dti(k) - mat(k, 18) = mat(k, 18) - dti(k) - mat(k, 19) = mat(k, 19) - dti(k) - mat(k, 20) = mat(k, 20) - dti(k) - mat(k, 21) = mat(k, 21) - dti(k) - mat(k, 22) = mat(k, 22) - dti(k) - mat(k, 23) = mat(k, 23) - dti(k) - mat(k, 24) = mat(k, 24) - dti(k) - mat(k, 25) = mat(k, 25) - dti(k) - mat(k, 26) = mat(k, 26) - dti(k) - mat(k, 27) = mat(k, 27) - dti(k) - mat(k, 28) = mat(k, 28) - dti(k) - mat(k, 29) = mat(k, 29) - dti(k) - mat(k, 30) = mat(k, 30) - dti(k) - mat(k, 31) = mat(k, 31) - dti(k) - mat(k, 32) = mat(k, 32) - dti(k) - mat(k, 33) = mat(k, 33) - dti(k) - mat(k, 34) = mat(k, 34) - dti(k) - mat(k, 35) = mat(k, 35) - dti(k) - mat(k, 36) = mat(k, 36) - dti(k) - mat(k, 37) = mat(k, 37) - dti(k) - mat(k, 38) = mat(k, 38) - dti(k) - mat(k, 39) = mat(k, 39) - dti(k) - mat(k, 40) = mat(k, 40) - dti(k) - mat(k, 41) = mat(k, 41) - dti(k) - mat(k, 42) = mat(k, 42) - dti(k) - mat(k, 43) = mat(k, 43) - dti(k) - mat(k, 44) = mat(k, 44) - dti(k) - mat(k, 50) = mat(k, 50) - dti(k) - mat(k, 56) = mat(k, 56) - dti(k) - mat(k, 62) = mat(k, 62) - dti(k) - mat(k, 68) = mat(k, 68) - dti(k) - mat(k, 74) = mat(k, 74) - dti(k) - mat(k, 76) = mat(k, 76) - dti(k) - mat(k, 82) = mat(k, 82) - dti(k) - mat(k, 88) = mat(k, 88) - dti(k) - mat(k, 94) = mat(k, 94) - dti(k) - mat(k, 95) = mat(k, 95) - dti(k) - mat(k, 98) = mat(k, 98) - dti(k) - mat(k, 101) = mat(k, 101) - dti(k) - mat(k, 104) = mat(k, 104) - dti(k) - mat(k, 107) = mat(k, 107) - dti(k) - mat(k, 111) = mat(k, 111) - dti(k) - mat(k, 115) = mat(k, 115) - dti(k) - mat(k, 119) = mat(k, 119) - dti(k) - mat(k, 123) = mat(k, 123) - dti(k) - mat(k, 127) = mat(k, 127) - dti(k) - mat(k, 131) = mat(k, 131) - dti(k) - mat(k, 134) = mat(k, 134) - dti(k) - mat(k, 137) = mat(k, 137) - dti(k) - mat(k, 140) = mat(k, 140) - dti(k) - mat(k, 143) = mat(k, 143) - dti(k) - mat(k, 148) = mat(k, 148) - dti(k) - mat(k, 153) = mat(k, 153) - dti(k) - mat(k, 158) = mat(k, 158) - dti(k) - mat(k, 164) = mat(k, 164) - dti(k) - mat(k, 170) = mat(k, 170) - dti(k) - mat(k, 174) = mat(k, 174) - dti(k) - mat(k, 179) = mat(k, 179) - dti(k) - mat(k, 181) = mat(k, 181) - dti(k) - mat(k, 185) = mat(k, 185) - dti(k) - mat(k, 189) = mat(k, 189) - dti(k) - mat(k, 196) = mat(k, 196) - dti(k) - mat(k, 201) = mat(k, 201) - dti(k) - mat(k, 205) = mat(k, 205) - dti(k) - mat(k, 210) = mat(k, 210) - dti(k) - mat(k, 218) = mat(k, 218) - dti(k) - mat(k, 223) = mat(k, 223) - dti(k) - mat(k, 228) = mat(k, 228) - dti(k) - mat(k, 231) = mat(k, 231) - dti(k) - mat(k, 234) = mat(k, 234) - dti(k) - mat(k, 237) = mat(k, 237) - dti(k) - mat(k, 240) = mat(k, 240) - dti(k) - mat(k, 243) = mat(k, 243) - dti(k) - mat(k, 248) = mat(k, 248) - dti(k) - mat(k, 253) = mat(k, 253) - dti(k) - mat(k, 259) = mat(k, 259) - dti(k) - mat(k, 263) = mat(k, 263) - dti(k) - mat(k, 267) = mat(k, 267) - dti(k) - mat(k, 271) = mat(k, 271) - dti(k) - mat(k, 275) = mat(k, 275) - dti(k) - mat(k, 281) = mat(k, 281) - dti(k) - mat(k, 284) = mat(k, 284) - dti(k) - mat(k, 290) = mat(k, 290) - dti(k) - mat(k, 293) = mat(k, 293) - dti(k) - mat(k, 300) = mat(k, 300) - dti(k) - mat(k, 306) = mat(k, 306) - dti(k) - mat(k, 312) = mat(k, 312) - dti(k) - mat(k, 317) = mat(k, 317) - dti(k) - mat(k, 322) = mat(k, 322) - dti(k) - mat(k, 327) = mat(k, 327) - dti(k) - mat(k, 332) = mat(k, 332) - dti(k) - mat(k, 338) = mat(k, 338) - dti(k) - mat(k, 343) = mat(k, 343) - dti(k) - mat(k, 348) = mat(k, 348) - dti(k) - mat(k, 351) = mat(k, 351) - dti(k) - mat(k, 359) = mat(k, 359) - dti(k) - mat(k, 367) = mat(k, 367) - dti(k) - mat(k, 375) = mat(k, 375) - dti(k) - mat(k, 381) = mat(k, 381) - dti(k) - mat(k, 387) = mat(k, 387) - dti(k) - mat(k, 393) = mat(k, 393) - dti(k) - mat(k, 399) = mat(k, 399) - dti(k) - mat(k, 405) = mat(k, 405) - dti(k) - mat(k, 411) = mat(k, 411) - dti(k) - mat(k, 417) = mat(k, 417) - dti(k) - mat(k, 423) = mat(k, 423) - dti(k) - mat(k, 429) = mat(k, 429) - dti(k) - mat(k, 437) = mat(k, 437) - dti(k) - mat(k, 443) = mat(k, 443) - dti(k) - mat(k, 450) = mat(k, 450) - dti(k) - mat(k, 456) = mat(k, 456) - dti(k) - mat(k, 462) = mat(k, 462) - dti(k) - mat(k, 465) = mat(k, 465) - dti(k) - mat(k, 469) = mat(k, 469) - dti(k) - mat(k, 476) = mat(k, 476) - dti(k) - mat(k, 485) = mat(k, 485) - dti(k) - mat(k, 493) = mat(k, 493) - dti(k) - mat(k, 501) = mat(k, 501) - dti(k) - mat(k, 508) = mat(k, 508) - dti(k) - mat(k, 513) = mat(k, 513) - dti(k) - mat(k, 520) = mat(k, 520) - dti(k) - mat(k, 526) = mat(k, 526) - dti(k) - mat(k, 534) = mat(k, 534) - dti(k) - mat(k, 542) = mat(k, 542) - dti(k) - mat(k, 550) = mat(k, 550) - dti(k) - mat(k, 558) = mat(k, 558) - dti(k) - mat(k, 566) = mat(k, 566) - dti(k) - mat(k, 574) = mat(k, 574) - dti(k) - mat(k, 583) = mat(k, 583) - dti(k) - mat(k, 592) = mat(k, 592) - dti(k) - mat(k, 596) = mat(k, 596) - dti(k) - mat(k, 605) = mat(k, 605) - dti(k) - mat(k, 612) = mat(k, 612) - dti(k) - mat(k, 619) = mat(k, 619) - dti(k) - mat(k, 627) = mat(k, 627) - dti(k) - mat(k, 634) = mat(k, 634) - dti(k) - mat(k, 644) = mat(k, 644) - dti(k) - mat(k, 657) = mat(k, 657) - dti(k) - mat(k, 668) = mat(k, 668) - dti(k) - mat(k, 679) = mat(k, 679) - dti(k) - mat(k, 686) = mat(k, 686) - dti(k) - mat(k, 695) = mat(k, 695) - dti(k) - mat(k, 708) = mat(k, 708) - dti(k) - mat(k, 715) = mat(k, 715) - dti(k) - mat(k, 726) = mat(k, 726) - dti(k) - mat(k, 737) = mat(k, 737) - dti(k) - mat(k, 750) = mat(k, 750) - dti(k) - mat(k, 761) = mat(k, 761) - dti(k) - mat(k, 770) = mat(k, 770) - dti(k) - mat(k, 780) = mat(k, 780) - dti(k) - mat(k, 789) = mat(k, 789) - dti(k) - mat(k, 799) = mat(k, 799) - dti(k) - mat(k, 803) = mat(k, 803) - dti(k) - mat(k, 806) = mat(k, 806) - dti(k) - mat(k, 815) = mat(k, 815) - dti(k) - mat(k, 825) = mat(k, 825) - dti(k) - mat(k, 836) = mat(k, 836) - dti(k) - mat(k, 853) = mat(k, 853) - dti(k) - mat(k, 859) = mat(k, 859) - dti(k) - mat(k, 866) = mat(k, 866) - dti(k) - mat(k, 875) = mat(k, 875) - dti(k) - mat(k, 889) = mat(k, 889) - dti(k) - mat(k, 901) = mat(k, 901) - dti(k) - mat(k, 914) = mat(k, 914) - dti(k) - mat(k, 924) = mat(k, 924) - dti(k) - mat(k, 931) = mat(k, 931) - dti(k) - mat(k, 950) = mat(k, 950) - dti(k) - mat(k, 971) = mat(k, 971) - dti(k) - mat(k, 981) = mat(k, 981) - dti(k) - mat(k,1001) = mat(k,1001) - dti(k) - mat(k,1026) = mat(k,1026) - dti(k) - mat(k,1047) = mat(k,1047) - dti(k) - mat(k,1061) = mat(k,1061) - dti(k) - mat(k,1075) = mat(k,1075) - dti(k) - mat(k,1087) = mat(k,1087) - dti(k) - mat(k,1098) = mat(k,1098) - dti(k) - mat(k,1111) = mat(k,1111) - dti(k) - mat(k,1125) = mat(k,1125) - dti(k) - mat(k,1131) = mat(k,1131) - dti(k) - mat(k,1142) = mat(k,1142) - dti(k) - mat(k,1155) = mat(k,1155) - dti(k) - mat(k,1175) = mat(k,1175) - dti(k) - mat(k,1195) = mat(k,1195) - dti(k) - mat(k,1211) = mat(k,1211) - dti(k) - mat(k,1223) = mat(k,1223) - dti(k) - mat(k,1234) = mat(k,1234) - dti(k) - mat(k,1258) = mat(k,1258) - dti(k) - mat(k,1290) = mat(k,1290) - dti(k) - mat(k,1313) = mat(k,1313) - dti(k) - mat(k,1334) = mat(k,1334) - dti(k) - mat(k,1356) = mat(k,1356) - dti(k) - mat(k,1388) = mat(k,1388) - dti(k) - mat(k,1403) = mat(k,1403) - dti(k) - mat(k,1417) = mat(k,1417) - dti(k) - mat(k,1432) = mat(k,1432) - dti(k) - mat(k,1447) = mat(k,1447) - dti(k) - mat(k,1465) = mat(k,1465) - dti(k) - mat(k,1487) = mat(k,1487) - dti(k) - mat(k,1528) = mat(k,1528) - dti(k) - mat(k,1693) = mat(k,1693) - dti(k) - mat(k,1720) = mat(k,1720) - dti(k) - mat(k,1778) = mat(k,1778) - dti(k) - mat(k,1831) = mat(k,1831) - dti(k) - mat(k,1924) = mat(k,1924) - dti(k) - mat(k,1969) = mat(k,1969) - dti(k) - mat(k,2009) = mat(k,2009) - dti(k) - mat(k,2117) = mat(k,2117) - dti(k) - mat(k,2141) = mat(k,2141) - dti(k) - mat(k,2166) = mat(k,2166) - dti(k) - mat(k,2198) = mat(k,2198) - dti(k) - mat(k,2260) = mat(k,2260) - dti(k) - mat(k,2287) = mat(k,2287) - dti(k) - end do - end subroutine nlnmat_finit - subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: dti(veclen) - real(r8), intent(in) :: lmat(veclen,nzcnt) - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) - call nlnmat01( avec_len, mat, y, rxt ) - call nlnmat02( avec_len, mat, y, rxt ) - call nlnmat03( avec_len, mat, y, rxt ) - call nlnmat04( avec_len, mat, y, rxt ) - call nlnmat05( avec_len, mat, y, rxt ) - call nlnmat06( avec_len, mat, y, rxt ) - call nlnmat07( avec_len, mat, y, rxt ) - call nlnmat08( avec_len, mat, y, rxt ) - call nlnmat09( avec_len, mat, y, rxt ) - call nlnmat10( avec_len, mat, y, rxt ) - call nlnmat_finit( avec_len, mat, lmat, dti ) - end subroutine nlnmat - end module mo_nln_matrix diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_prod_loss.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_prod_loss.F90 deleted file mode 100644 index a2848c670f..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_prod_loss.F90 +++ /dev/null @@ -1,1250 +0,0 @@ - module mo_prod_loss - use shr_kind_mod, only : r8 => shr_kind_r8 - use chem_mods, only : veclen - private - public :: exp_prod_loss - public :: imp_prod_loss - contains - subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & - rxt, het_rates, chnkpnts ) - use chem_mods, only : gas_pcnst,rxntot,clscnt1 - implicit none -!-------------------------------------------------------------------- -! ... dummy args -!-------------------------------------------------------------------- - integer, intent(in) :: ofl, ofu, chnkpnts - real(r8), dimension(chnkpnts,max(1,clscnt1)), intent(out) :: & - prod, & - loss - real(r8), intent(in) :: y(chnkpnts,gas_pcnst) - real(r8), intent(in) :: rxt(chnkpnts,rxntot) - real(r8), intent(in) :: het_rates(chnkpnts,gas_pcnst) -!-------------------------------------------------------------------- -! ... local variables -!-------------------------------------------------------------------- - integer :: k -!-------------------------------------------------------------------- -! ... loss and production for Explicit method -!-------------------------------------------------------------------- - do k = ofl,ofu - loss(k,1) = ( + het_rates(k,188))* y(k,188) - prod(k,1) = 0._r8 - loss(k,2) = ( + het_rates(k,189))* y(k,189) - prod(k,2) = 0._r8 - end do - end subroutine exp_prod_loss - subroutine imp_prod_loss( avec_len, prod, loss, y, & - rxt, het_rates ) - use chem_mods, only : gas_pcnst,rxntot,clscnt4 - implicit none -!-------------------------------------------------------------------- -! ... dummy args -!-------------------------------------------------------------------- - integer, intent(in) :: avec_len - real(r8), dimension(veclen,clscnt4), intent(out) :: & - prod, & - loss - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(in) :: het_rates(veclen,gas_pcnst) -!-------------------------------------------------------------------- -! ... local variables -!-------------------------------------------------------------------- - integer :: k -!-------------------------------------------------------------------- -! ... loss and production for Implicit method -!-------------------------------------------------------------------- - do k = 1,avec_len - loss(k,153) = (rxt(k,356)* y(k,219) + rxt(k,19) + het_rates(k,1))* y(k,1) - prod(k,153) =rxt(k,359)*y(k,191)*y(k,124) - loss(k,156) = (rxt(k,360)* y(k,219) + rxt(k,20) + het_rates(k,2))* y(k,2) - prod(k,156) =rxt(k,357)*y(k,205)*y(k,191) - loss(k,1) = ( + het_rates(k,3))* y(k,3) - prod(k,1) = 0._r8 - loss(k,2) = ( + het_rates(k,4))* y(k,4) - prod(k,2) = 0._r8 - loss(k,3) = ( + het_rates(k,5))* y(k,5) - prod(k,3) = 0._r8 - loss(k,187) = (rxt(k,439)* y(k,126) +rxt(k,440)* y(k,135) +rxt(k,441) & - * y(k,219) + het_rates(k,6))* y(k,6) - prod(k,187) = 0._r8 - loss(k,72) = (rxt(k,398)* y(k,219) + het_rates(k,7))* y(k,7) - prod(k,72) = 0._r8 - loss(k,122) = (rxt(k,401)* y(k,219) + rxt(k,21) + het_rates(k,8))* y(k,8) - prod(k,122) =rxt(k,399)*y(k,205)*y(k,193) - loss(k,73) = ( + rxt(k,22) + het_rates(k,9))* y(k,9) - prod(k,73) =.120_r8*rxt(k,398)*y(k,219)*y(k,7) - loss(k,116) = ( + rxt(k,23) + het_rates(k,10))* y(k,10) - prod(k,116) = (.100_r8*rxt(k,440)*y(k,6) +.100_r8*rxt(k,443)*y(k,110)) & - *y(k,135) - loss(k,129) = ( + rxt(k,24) + het_rates(k,11))* y(k,11) - prod(k,129) = (.500_r8*rxt(k,400)*y(k,193) +.200_r8*rxt(k,427)*y(k,225) + & - .060_r8*rxt(k,433)*y(k,228))*y(k,124) +.500_r8*rxt(k,21)*y(k,8) & - +rxt(k,22)*y(k,9) +.200_r8*rxt(k,70)*y(k,181) +.060_r8*rxt(k,72) & - *y(k,185) - loss(k,98) = ( + rxt(k,25) + het_rates(k,12))* y(k,12) - prod(k,98) = (.200_r8*rxt(k,427)*y(k,225) +.200_r8*rxt(k,433)*y(k,228)) & - *y(k,124) +.200_r8*rxt(k,70)*y(k,181) +.200_r8*rxt(k,72)*y(k,185) - loss(k,147) = ( + rxt(k,26) + het_rates(k,13))* y(k,13) - prod(k,147) = (.200_r8*rxt(k,427)*y(k,225) +.150_r8*rxt(k,433)*y(k,228)) & - *y(k,124) +rxt(k,46)*y(k,94) +rxt(k,56)*y(k,116) +.200_r8*rxt(k,70) & - *y(k,181) +.150_r8*rxt(k,72)*y(k,185) - loss(k,106) = ( + rxt(k,27) + het_rates(k,14))* y(k,14) - prod(k,106) =.210_r8*rxt(k,433)*y(k,228)*y(k,124) +.210_r8*rxt(k,72)*y(k,185) - loss(k,85) = (rxt(k,361)* y(k,219) + het_rates(k,15))* y(k,15) - prod(k,85) = (.050_r8*rxt(k,440)*y(k,6) +.050_r8*rxt(k,443)*y(k,110)) & - *y(k,135) - loss(k,112) = (rxt(k,327)* y(k,126) +rxt(k,328)* y(k,219) + het_rates(k,16)) & - * y(k,16) - prod(k,112) = 0._r8 - loss(k,211) = (rxt(k,211)* y(k,42) +rxt(k,213)* y(k,135) +rxt(k,212) & - * y(k,205) + het_rates(k,17))* y(k,17) - prod(k,211) = (rxt(k,75) +2.000_r8*rxt(k,214)*y(k,19) +rxt(k,215)*y(k,59) + & - rxt(k,216)*y(k,59) +rxt(k,219)*y(k,124) +rxt(k,222)*y(k,134) + & - rxt(k,223)*y(k,219) +rxt(k,469)*y(k,151))*y(k,19) & - + (rxt(k,201)*y(k,34) +rxt(k,227)*y(k,35) + & - 3.000_r8*rxt(k,228)*y(k,55) +2.000_r8*rxt(k,229)*y(k,78) + & - rxt(k,230)*y(k,81) +2.000_r8*rxt(k,250)*y(k,41) +rxt(k,251)*y(k,43)) & - *y(k,218) + (rxt(k,225)*y(k,81) +2.000_r8*rxt(k,239)*y(k,41) + & - rxt(k,241)*y(k,43) +3.000_r8*rxt(k,246)*y(k,55))*y(k,219) & - + (2.000_r8*rxt(k,238)*y(k,41) +rxt(k,240)*y(k,43) + & - 3.000_r8*rxt(k,245)*y(k,55))*y(k,56) + (rxt(k,99) + & - rxt(k,224)*y(k,134))*y(k,81) +rxt(k,74)*y(k,18) +rxt(k,77)*y(k,20) & - +rxt(k,79)*y(k,34) +rxt(k,80)*y(k,35) +2.000_r8*rxt(k,86)*y(k,41) & - +rxt(k,87)*y(k,43) +3.000_r8*rxt(k,90)*y(k,55) +2.000_r8*rxt(k,98) & - *y(k,78) +rxt(k,105)*y(k,91) - loss(k,86) = ( + rxt(k,74) + het_rates(k,18))* y(k,18) - prod(k,86) = (rxt(k,530)*y(k,91) +rxt(k,535)*y(k,91))*y(k,85) & - +rxt(k,217)*y(k,59)*y(k,19) - loss(k,226) = (2._r8*rxt(k,214)* y(k,19) + (rxt(k,215) +rxt(k,216) + & - rxt(k,217))* y(k,59) +rxt(k,219)* y(k,124) +rxt(k,220)* y(k,125) & - +rxt(k,222)* y(k,134) +rxt(k,469)* y(k,151) +rxt(k,218)* y(k,205) & - +rxt(k,223)* y(k,219) + rxt(k,75) + het_rates(k,19))* y(k,19) - prod(k,226) = (rxt(k,76) +rxt(k,221)*y(k,134))*y(k,20) +rxt(k,213)*y(k,135) & - *y(k,17) +rxt(k,231)*y(k,218)*y(k,81) +rxt(k,226)*y(k,134)*y(k,91) - loss(k,143) = (rxt(k,221)* y(k,134) + rxt(k,76) + rxt(k,77) + rxt(k,524) & - + rxt(k,527) + rxt(k,532) + het_rates(k,20))* y(k,20) - prod(k,143) =rxt(k,220)*y(k,125)*y(k,19) - loss(k,4) = ( + het_rates(k,21))* y(k,21) - prod(k,4) = 0._r8 - loss(k,88) = (rxt(k,402)* y(k,219) + het_rates(k,22))* y(k,22) - prod(k,88) =rxt(k,28)*y(k,23) +rxt(k,405)*y(k,195)*y(k,124) - loss(k,109) = (rxt(k,404)* y(k,219) + rxt(k,28) + het_rates(k,23))* y(k,23) - prod(k,109) =rxt(k,403)*y(k,205)*y(k,195) - loss(k,101) = (rxt(k,276)* y(k,56) +rxt(k,277)* y(k,219) + het_rates(k,24)) & - * y(k,24) - prod(k,101) = 0._r8 - loss(k,142) = (rxt(k,278)* y(k,56) +rxt(k,279)* y(k,135) +rxt(k,304) & - * y(k,219) + het_rates(k,25))* y(k,25) - prod(k,142) = 0._r8 - loss(k,94) = (rxt(k,284)* y(k,219) + het_rates(k,26))* y(k,26) - prod(k,94) = (.400_r8*rxt(k,280)*y(k,196) +.200_r8*rxt(k,281)*y(k,200)) & - *y(k,196) - loss(k,110) = (rxt(k,285)* y(k,219) + rxt(k,29) + het_rates(k,27))* y(k,27) - prod(k,110) =rxt(k,282)*y(k,205)*y(k,196) - loss(k,103) = (rxt(k,286)* y(k,56) +rxt(k,287)* y(k,219) + het_rates(k,28)) & - * y(k,28) - prod(k,103) = 0._r8 - loss(k,188) = (rxt(k,307)* y(k,126) +rxt(k,308)* y(k,135) +rxt(k,325) & - * y(k,219) + het_rates(k,29))* y(k,29) - prod(k,188) =.130_r8*rxt(k,385)*y(k,135)*y(k,98) +.700_r8*rxt(k,55)*y(k,111) - loss(k,121) = (rxt(k,312)* y(k,219) + rxt(k,30) + het_rates(k,30))* y(k,30) - prod(k,121) =rxt(k,310)*y(k,205)*y(k,197) - loss(k,59) = (rxt(k,313)* y(k,219) + het_rates(k,31))* y(k,31) - prod(k,59) = 0._r8 - loss(k,95) = (rxt(k,408)* y(k,219) + rxt(k,31) + het_rates(k,32))* y(k,32) - prod(k,95) =rxt(k,406)*y(k,205)*y(k,198) - loss(k,56) = (rxt(k,200)* y(k,218) + rxt(k,78) + het_rates(k,33))* y(k,33) - prod(k,56) = 0._r8 - loss(k,68) = (rxt(k,201)* y(k,218) + rxt(k,79) + het_rates(k,34))* y(k,34) - prod(k,68) = 0._r8 - loss(k,69) = (rxt(k,227)* y(k,218) + rxt(k,80) + het_rates(k,35))* y(k,35) - prod(k,69) = 0._r8 - loss(k,60) = (rxt(k,202)* y(k,218) + rxt(k,81) + het_rates(k,36))* y(k,36) - prod(k,60) = 0._r8 - loss(k,70) = (rxt(k,203)* y(k,218) + rxt(k,82) + het_rates(k,37))* y(k,37) - prod(k,70) = 0._r8 - loss(k,61) = (rxt(k,204)* y(k,218) + rxt(k,83) + het_rates(k,38))* y(k,38) - prod(k,61) = 0._r8 - loss(k,71) = (rxt(k,205)* y(k,218) + rxt(k,84) + het_rates(k,39))* y(k,39) - prod(k,71) = 0._r8 - loss(k,62) = (rxt(k,206)* y(k,218) + rxt(k,85) + het_rates(k,40))* y(k,40) - prod(k,62) = 0._r8 - loss(k,131) = (rxt(k,238)* y(k,56) +rxt(k,250)* y(k,218) +rxt(k,239) & - * y(k,219) + rxt(k,86) + het_rates(k,41))* y(k,41) - prod(k,131) = 0._r8 - loss(k,215) = (rxt(k,211)* y(k,17) +rxt(k,175)* y(k,56) +rxt(k,256)* y(k,126) & - +rxt(k,257)* y(k,134) +rxt(k,255)* y(k,205) +rxt(k,258)* y(k,219) & - + rxt(k,32) + rxt(k,33) + het_rates(k,42))* y(k,42) - prod(k,215) = (rxt(k,182)*y(k,59) +2.000_r8*rxt(k,259)*y(k,200) + & - rxt(k,260)*y(k,200) +rxt(k,262)*y(k,124) + & - .700_r8*rxt(k,281)*y(k,196) +rxt(k,292)*y(k,199) + & - rxt(k,309)*y(k,197) +.800_r8*rxt(k,321)*y(k,222) + & - .880_r8*rxt(k,333)*y(k,211) +2.000_r8*rxt(k,342)*y(k,213) + & - 1.500_r8*rxt(k,366)*y(k,207) +.750_r8*rxt(k,371)*y(k,208) + & - .800_r8*rxt(k,380)*y(k,101) +.800_r8*rxt(k,391)*y(k,227) + & - .750_r8*rxt(k,445)*y(k,217) +.930_r8*rxt(k,450)*y(k,223) + & - .950_r8*rxt(k,455)*y(k,224))*y(k,200) & - + (.500_r8*rxt(k,298)*y(k,204) +rxt(k,319)*y(k,221) + & - rxt(k,323)*y(k,222) +.500_r8*rxt(k,329)*y(k,202) + & - .250_r8*rxt(k,336)*y(k,211) +rxt(k,345)*y(k,213) + & - .100_r8*rxt(k,358)*y(k,191) +.920_r8*rxt(k,368)*y(k,207) + & - .250_r8*rxt(k,393)*y(k,227) +.340_r8*rxt(k,452)*y(k,223) + & - .320_r8*rxt(k,457)*y(k,224))*y(k,124) + (rxt(k,263)*y(k,52) + & - .300_r8*rxt(k,264)*y(k,53) +.500_r8*rxt(k,296)*y(k,51) + & - .800_r8*rxt(k,301)*y(k,74) +rxt(k,303)*y(k,140) + & - .500_r8*rxt(k,351)*y(k,109) +.400_r8*rxt(k,356)*y(k,1) + & - .300_r8*rxt(k,376)*y(k,99) +.680_r8*rxt(k,461)*y(k,180))*y(k,219) & - + (rxt(k,279)*y(k,25) +.500_r8*rxt(k,308)*y(k,29) + & - .120_r8*rxt(k,338)*y(k,105) +.600_r8*rxt(k,352)*y(k,111) + & - .910_r8*rxt(k,385)*y(k,98) +.340_r8*rxt(k,440)*y(k,6) + & - .340_r8*rxt(k,443)*y(k,110))*y(k,135) + (.500_r8*rxt(k,327)*y(k,16) + & - .250_r8*rxt(k,335)*y(k,211) +rxt(k,346)*y(k,213) + & - rxt(k,369)*y(k,207))*y(k,126) + (.250_r8*rxt(k,332)*y(k,211) + & - rxt(k,341)*y(k,213) +rxt(k,365)*y(k,207) + & - .250_r8*rxt(k,390)*y(k,227))*y(k,199) + (.180_r8*rxt(k,39) + & - rxt(k,272)*y(k,218) +rxt(k,273)*y(k,218))*y(k,54) & - + (.150_r8*rxt(k,322)*y(k,222) +.450_r8*rxt(k,343)*y(k,213)) & - *y(k,205) +.100_r8*rxt(k,19)*y(k,1) +.100_r8*rxt(k,20)*y(k,2) & - +rxt(k,38)*y(k,53) +rxt(k,43)*y(k,74) +.330_r8*rxt(k,45)*y(k,93) & - +rxt(k,47)*y(k,95) +rxt(k,49)*y(k,103) +1.340_r8*rxt(k,50)*y(k,105) & - +rxt(k,57)*y(k,127) +rxt(k,62)*y(k,147) +rxt(k,63)*y(k,148) & - +.375_r8*rxt(k,65)*y(k,176) +.400_r8*rxt(k,67)*y(k,178) & - +.680_r8*rxt(k,69)*y(k,180) +2.000_r8*rxt(k,299)*y(k,203) & - +rxt(k,269)*y(k,206) +2.000_r8*rxt(k,344)*y(k,213)*y(k,213) - loss(k,148) = (rxt(k,240)* y(k,56) +rxt(k,251)* y(k,218) +rxt(k,241) & - * y(k,219) + rxt(k,87) + het_rates(k,43))* y(k,43) - prod(k,148) = 0._r8 - loss(k,63) = (rxt(k,242)* y(k,219) + rxt(k,88) + het_rates(k,44))* y(k,44) - prod(k,63) = 0._r8 - loss(k,192) = (rxt(k,288)* y(k,126) +rxt(k,289)* y(k,219) + rxt(k,34) & - + het_rates(k,45))* y(k,45) - prod(k,192) = (rxt(k,283)*y(k,196) +.270_r8*rxt(k,311)*y(k,197) + & - rxt(k,319)*y(k,221) +rxt(k,329)*y(k,202) +rxt(k,348)*y(k,215) + & - .400_r8*rxt(k,358)*y(k,191))*y(k,124) + (rxt(k,284)*y(k,26) + & - .500_r8*rxt(k,285)*y(k,27) +.800_r8*rxt(k,356)*y(k,1))*y(k,219) & - + (.500_r8*rxt(k,308)*y(k,29) +.100_r8*rxt(k,352)*y(k,111))*y(k,135) & - + (1.600_r8*rxt(k,280)*y(k,196) +.800_r8*rxt(k,281)*y(k,200)) & - *y(k,196) +.400_r8*rxt(k,19)*y(k,1) +.400_r8*rxt(k,20)*y(k,2) & - +rxt(k,327)*y(k,126)*y(k,16) +rxt(k,29)*y(k,27) +.330_r8*rxt(k,45) & - *y(k,93) +rxt(k,53)*y(k,108) +rxt(k,62)*y(k,147) & - +.200_r8*rxt(k,347)*y(k,215)*y(k,205) - loss(k,114) = (rxt(k,243)* y(k,56) +rxt(k,244)* y(k,219) + rxt(k,89) & - + het_rates(k,46))* y(k,46) - prod(k,114) = 0._r8 - loss(k,57) = (rxt(k,290)* y(k,219) + het_rates(k,47))* y(k,47) - prod(k,57) = 0._r8 - loss(k,182) = (rxt(k,326)* y(k,219) + rxt(k,35) + het_rates(k,48))* y(k,48) - prod(k,182) = (.820_r8*rxt(k,311)*y(k,197) +.500_r8*rxt(k,329)*y(k,202) + & - .250_r8*rxt(k,358)*y(k,191) +.270_r8*rxt(k,452)*y(k,223) + & - .040_r8*rxt(k,457)*y(k,224))*y(k,124) & - + (.820_r8*rxt(k,309)*y(k,197) +.150_r8*rxt(k,450)*y(k,223) + & - .025_r8*rxt(k,455)*y(k,224))*y(k,200) + (.250_r8*rxt(k,19) + & - .800_r8*rxt(k,356)*y(k,219))*y(k,1) + (.520_r8*rxt(k,440)*y(k,6) + & - .520_r8*rxt(k,443)*y(k,110))*y(k,135) + (.500_r8*rxt(k,69) + & - .500_r8*rxt(k,461)*y(k,219))*y(k,180) +.250_r8*rxt(k,20)*y(k,2) & - +.500_r8*rxt(k,327)*y(k,126)*y(k,16) +.820_r8*rxt(k,30)*y(k,30) & - +.170_r8*rxt(k,45)*y(k,93) +.300_r8*rxt(k,65)*y(k,176) & - +.050_r8*rxt(k,67)*y(k,178) - loss(k,202) = (rxt(k,314)* y(k,126) +rxt(k,315)* y(k,219) + rxt(k,36) & - + het_rates(k,49))* y(k,49) - prod(k,202) = (.250_r8*rxt(k,336)*y(k,211) +.050_r8*rxt(k,374)*y(k,208) + & - .250_r8*rxt(k,393)*y(k,227) +.170_r8*rxt(k,411)*y(k,201) + & - .170_r8*rxt(k,417)*y(k,214) +.400_r8*rxt(k,427)*y(k,225) + & - .540_r8*rxt(k,433)*y(k,228) +.510_r8*rxt(k,436)*y(k,230))*y(k,124) & - + (.250_r8*rxt(k,335)*y(k,211) +.050_r8*rxt(k,375)*y(k,208) + & - .250_r8*rxt(k,394)*y(k,227))*y(k,126) & - + (.500_r8*rxt(k,321)*y(k,222) +.240_r8*rxt(k,333)*y(k,211) + & - .100_r8*rxt(k,391)*y(k,227))*y(k,200) & - + (.880_r8*rxt(k,338)*y(k,105) +.500_r8*rxt(k,352)*y(k,111)) & - *y(k,135) + (.250_r8*rxt(k,332)*y(k,211) + & - .250_r8*rxt(k,390)*y(k,227))*y(k,199) & - + (.070_r8*rxt(k,410)*y(k,201) +.070_r8*rxt(k,416)*y(k,214)) & - *y(k,205) + (rxt(k,316)*y(k,95) +rxt(k,317)*y(k,127))*y(k,219) & - +.180_r8*rxt(k,23)*y(k,10) +rxt(k,27)*y(k,14) +.400_r8*rxt(k,70) & - *y(k,181) +.540_r8*rxt(k,72)*y(k,185) +.510_r8*rxt(k,73)*y(k,187) - loss(k,158) = (rxt(k,295)* y(k,219) + het_rates(k,50))* y(k,50) - prod(k,158) = (.100_r8*rxt(k,292)*y(k,200) +.150_r8*rxt(k,293)*y(k,205)) & - *y(k,199) +.120_r8*rxt(k,308)*y(k,135)*y(k,29) & - +.150_r8*rxt(k,343)*y(k,213)*y(k,205) - loss(k,150) = (rxt(k,296)* y(k,219) + rxt(k,37) + het_rates(k,51))* y(k,51) - prod(k,150) = (.400_r8*rxt(k,293)*y(k,199) +.400_r8*rxt(k,343)*y(k,213)) & - *y(k,205) - loss(k,169) = (rxt(k,263)* y(k,219) + het_rates(k,52))* y(k,52) - prod(k,169) = (rxt(k,260)*y(k,200) +.300_r8*rxt(k,281)*y(k,196) + & - .500_r8*rxt(k,321)*y(k,222) +.250_r8*rxt(k,333)*y(k,211) + & - .250_r8*rxt(k,366)*y(k,207) +.250_r8*rxt(k,371)*y(k,208) + & - .200_r8*rxt(k,380)*y(k,101) +.300_r8*rxt(k,391)*y(k,227) + & - .250_r8*rxt(k,445)*y(k,217) +.250_r8*rxt(k,450)*y(k,223) + & - .250_r8*rxt(k,455)*y(k,224))*y(k,200) - loss(k,128) = (rxt(k,264)* y(k,219) + rxt(k,38) + het_rates(k,53))* y(k,53) - prod(k,128) =rxt(k,261)*y(k,205)*y(k,200) - loss(k,212) = (rxt(k,176)* y(k,56) +rxt(k,232)* y(k,73) + (rxt(k,271) + & - rxt(k,272) +rxt(k,273))* y(k,218) +rxt(k,265)* y(k,219) + rxt(k,39) & - + rxt(k,40) + het_rates(k,54))* y(k,54) - prod(k,212) =.100_r8*rxt(k,308)*y(k,135)*y(k,29) - loss(k,117) = (rxt(k,245)* y(k,56) +rxt(k,228)* y(k,218) +rxt(k,246) & - * y(k,219) + rxt(k,90) + het_rates(k,55))* y(k,55) - prod(k,117) = 0._r8 - loss(k,223) = (rxt(k,286)* y(k,28) +rxt(k,238)* y(k,41) +rxt(k,175)* y(k,42) & - +rxt(k,240)* y(k,43) +rxt(k,243)* y(k,46) +rxt(k,176)* y(k,54) & - +rxt(k,245)* y(k,55) +rxt(k,188)* y(k,60) +rxt(k,177)* y(k,77) & - +rxt(k,178)* y(k,79) +rxt(k,197)* y(k,92) +rxt(k,181)* y(k,135) & - + (rxt(k,179) +rxt(k,180))* y(k,205) + het_rates(k,56))* y(k,56) - prod(k,223) = (4.000_r8*rxt(k,200)*y(k,33) +rxt(k,201)*y(k,34) + & - 2.000_r8*rxt(k,202)*y(k,36) +2.000_r8*rxt(k,203)*y(k,37) + & - 2.000_r8*rxt(k,204)*y(k,38) +rxt(k,205)*y(k,39) + & - 2.000_r8*rxt(k,206)*y(k,40) +rxt(k,207)*y(k,85) +rxt(k,237)*y(k,65) + & - rxt(k,252)*y(k,82) +rxt(k,253)*y(k,83) +rxt(k,254)*y(k,84))*y(k,218) & - + (rxt(k,93) +rxt(k,182)*y(k,200) +2.000_r8*rxt(k,183)*y(k,59) + & - rxt(k,185)*y(k,59) +rxt(k,187)*y(k,124) +rxt(k,192)*y(k,134) + & - rxt(k,193)*y(k,219) +rxt(k,216)*y(k,19) +rxt(k,470)*y(k,151))*y(k,59) & - + (rxt(k,196)*y(k,85) +3.000_r8*rxt(k,242)*y(k,44) + & - rxt(k,244)*y(k,46) +rxt(k,247)*y(k,82) +rxt(k,248)*y(k,83) + & - rxt(k,249)*y(k,84))*y(k,219) + (rxt(k,103) +rxt(k,195)*y(k,134)) & - *y(k,85) +rxt(k,74)*y(k,18) +4.000_r8*rxt(k,78)*y(k,33) +rxt(k,79) & - *y(k,34) +2.000_r8*rxt(k,81)*y(k,36) +2.000_r8*rxt(k,82)*y(k,37) & - +2.000_r8*rxt(k,83)*y(k,38) +rxt(k,84)*y(k,39) +2.000_r8*rxt(k,85) & - *y(k,40) +3.000_r8*rxt(k,88)*y(k,44) +rxt(k,89)*y(k,46) & - +2.000_r8*rxt(k,91)*y(k,57) +2.000_r8*rxt(k,92)*y(k,58) +rxt(k,94) & - *y(k,60) +rxt(k,97)*y(k,65) +rxt(k,100)*y(k,82) +rxt(k,101)*y(k,83) & - +rxt(k,102)*y(k,84) +rxt(k,106)*y(k,92) - loss(k,75) = ( + rxt(k,91) + het_rates(k,57))* y(k,57) - prod(k,75) = (rxt(k,523)*y(k,92) +rxt(k,528)*y(k,60) +rxt(k,529)*y(k,92) + & - rxt(k,533)*y(k,60) +rxt(k,534)*y(k,92) +rxt(k,538)*y(k,60))*y(k,85) & - +rxt(k,188)*y(k,60)*y(k,56) +rxt(k,184)*y(k,59)*y(k,59) - loss(k,54) = ( + rxt(k,92) + rxt(k,210) + het_rates(k,58))* y(k,58) - prod(k,54) =rxt(k,209)*y(k,59)*y(k,59) - loss(k,218) = ((rxt(k,215) +rxt(k,216) +rxt(k,217))* y(k,19) & - + 2._r8*(rxt(k,183) +rxt(k,184) +rxt(k,185) +rxt(k,209))* y(k,59) & - +rxt(k,187)* y(k,124) +rxt(k,189)* y(k,125) +rxt(k,192)* y(k,134) & - +rxt(k,470)* y(k,151) +rxt(k,182)* y(k,200) +rxt(k,186)* y(k,205) & - + (rxt(k,193) +rxt(k,194))* y(k,219) + rxt(k,93) + het_rates(k,59)) & - * y(k,59) - prod(k,218) = (rxt(k,180)*y(k,205) +rxt(k,181)*y(k,135) +rxt(k,197)*y(k,92)) & - *y(k,56) + (rxt(k,95) +rxt(k,190)*y(k,134))*y(k,60) & - + (rxt(k,198)*y(k,134) +rxt(k,199)*y(k,219))*y(k,92) + (rxt(k,107) + & - rxt(k,475)*y(k,151))*y(k,137) +2.000_r8*rxt(k,210)*y(k,58) & - +rxt(k,208)*y(k,218)*y(k,85) - loss(k,180) = (rxt(k,188)* y(k,56) + (rxt(k,528) +rxt(k,533) +rxt(k,538)) & - * y(k,85) +rxt(k,190)* y(k,134) +rxt(k,191)* y(k,219) + rxt(k,94) & - + rxt(k,95) + rxt(k,526) + rxt(k,531) + rxt(k,537) & - + het_rates(k,60))* y(k,60) - prod(k,180) =rxt(k,189)*y(k,125)*y(k,59) - loss(k,5) = ( + het_rates(k,61))* y(k,61) - prod(k,5) = 0._r8 - loss(k,195) = (rxt(k,275)* y(k,219) + het_rates(k,62))* y(k,62) - prod(k,195) = (rxt(k,32) +rxt(k,33) +rxt(k,175)*y(k,56) +rxt(k,211)*y(k,17) + & - rxt(k,256)*y(k,126) +rxt(k,257)*y(k,134) +rxt(k,258)*y(k,219)) & - *y(k,42) + (.630_r8*rxt(k,279)*y(k,25) +.560_r8*rxt(k,308)*y(k,29) + & - .650_r8*rxt(k,338)*y(k,105) +.560_r8*rxt(k,352)*y(k,111) + & - .620_r8*rxt(k,385)*y(k,98) +.230_r8*rxt(k,440)*y(k,6) + & - .230_r8*rxt(k,443)*y(k,110))*y(k,135) & - + (.220_r8*rxt(k,336)*y(k,211) +.250_r8*rxt(k,393)*y(k,227) + & - .170_r8*rxt(k,411)*y(k,201) +.400_r8*rxt(k,414)*y(k,212) + & - .350_r8*rxt(k,417)*y(k,214) +.225_r8*rxt(k,452)*y(k,223))*y(k,124) & - + (.350_r8*rxt(k,277)*y(k,24) +rxt(k,302)*y(k,75) + & - rxt(k,315)*y(k,49) +.700_r8*rxt(k,461)*y(k,180) +rxt(k,465)*y(k,138)) & - *y(k,219) + (rxt(k,314)*y(k,49) +.220_r8*rxt(k,335)*y(k,211) + & - .500_r8*rxt(k,394)*y(k,227))*y(k,126) & - + (.110_r8*rxt(k,333)*y(k,211) +.200_r8*rxt(k,391)*y(k,227) + & - .125_r8*rxt(k,450)*y(k,223))*y(k,200) & - + (.070_r8*rxt(k,410)*y(k,201) +.160_r8*rxt(k,413)*y(k,212) + & - .140_r8*rxt(k,416)*y(k,214))*y(k,205) + (rxt(k,110) + & - rxt(k,464)*y(k,134))*y(k,138) + (.220_r8*rxt(k,332)*y(k,211) + & - .250_r8*rxt(k,390)*y(k,227))*y(k,199) +1.500_r8*rxt(k,22)*y(k,9) & - +.450_r8*rxt(k,23)*y(k,10) +.600_r8*rxt(k,26)*y(k,13) +rxt(k,27) & - *y(k,14) +rxt(k,34)*y(k,45) +rxt(k,243)*y(k,56)*y(k,46) +rxt(k,36) & - *y(k,49) +.380_r8*rxt(k,39)*y(k,54) +rxt(k,41)*y(k,63) +rxt(k,43) & - *y(k,74) +2.000_r8*rxt(k,44)*y(k,75) +.330_r8*rxt(k,45)*y(k,93) & - +1.340_r8*rxt(k,51)*y(k,105) +.700_r8*rxt(k,55)*y(k,111) & - +1.500_r8*rxt(k,64)*y(k,175) +.250_r8*rxt(k,65)*y(k,176) +rxt(k,68) & - *y(k,179) +1.700_r8*rxt(k,69)*y(k,180) - loss(k,170) = ( + rxt(k,41) + het_rates(k,63))* y(k,63) - prod(k,170) = (rxt(k,267)*y(k,87) +rxt(k,275)*y(k,62) +rxt(k,295)*y(k,50) + & - .500_r8*rxt(k,296)*y(k,51) +.800_r8*rxt(k,301)*y(k,74) + & - rxt(k,302)*y(k,75) +.500_r8*rxt(k,351)*y(k,109) + & - 1.800_r8*rxt(k,461)*y(k,180))*y(k,219) & - + (2.000_r8*rxt(k,291)*y(k,199) +.900_r8*rxt(k,292)*y(k,200) + & - rxt(k,294)*y(k,124) +2.000_r8*rxt(k,341)*y(k,213) + & - rxt(k,365)*y(k,207) +rxt(k,390)*y(k,227))*y(k,199) & - + (.200_r8*rxt(k,308)*y(k,29) +.100_r8*rxt(k,352)*y(k,111) + & - .270_r8*rxt(k,440)*y(k,6) +.270_r8*rxt(k,443)*y(k,110))*y(k,135) & - + (rxt(k,342)*y(k,200) +.450_r8*rxt(k,343)*y(k,205) + & - 2.000_r8*rxt(k,344)*y(k,213))*y(k,213) & - + (.500_r8*rxt(k,450)*y(k,200) +.900_r8*rxt(k,452)*y(k,124)) & - *y(k,223) +rxt(k,37)*y(k,51) +.440_r8*rxt(k,39)*y(k,54) & - +.400_r8*rxt(k,60)*y(k,140) +rxt(k,65)*y(k,176) +.800_r8*rxt(k,69) & - *y(k,180) - loss(k,89) = (rxt(k,236)* y(k,218) + rxt(k,96) + het_rates(k,64))* y(k,64) - prod(k,89) = (rxt(k,201)*y(k,34) +rxt(k,203)*y(k,37) + & - 2.000_r8*rxt(k,204)*y(k,38) +2.000_r8*rxt(k,205)*y(k,39) + & - rxt(k,206)*y(k,40) +rxt(k,227)*y(k,35) +2.000_r8*rxt(k,229)*y(k,78) + & - rxt(k,253)*y(k,83) +rxt(k,254)*y(k,84))*y(k,218) + (rxt(k,101) + & - rxt(k,248)*y(k,219))*y(k,83) + (rxt(k,102) +rxt(k,249)*y(k,219)) & - *y(k,84) +rxt(k,79)*y(k,34) +rxt(k,80)*y(k,35) +rxt(k,82)*y(k,37) & - +2.000_r8*rxt(k,83)*y(k,38) +2.000_r8*rxt(k,84)*y(k,39) +rxt(k,85) & - *y(k,40) +2.000_r8*rxt(k,98)*y(k,78) - loss(k,91) = (rxt(k,237)* y(k,218) + rxt(k,97) + het_rates(k,65))* y(k,65) - prod(k,91) = (rxt(k,100) +rxt(k,247)*y(k,219) +rxt(k,252)*y(k,218))*y(k,82) & - + (rxt(k,81) +rxt(k,202)*y(k,218))*y(k,36) + (rxt(k,82) + & - rxt(k,203)*y(k,218))*y(k,37) - loss(k,79) = (rxt(k,409)* y(k,219) + het_rates(k,66))* y(k,66) - prod(k,79) =.180_r8*rxt(k,429)*y(k,219)*y(k,182) - loss(k,99) = (rxt(k,462)* y(k,126) + (rxt(k,463) +rxt(k,477))* y(k,219) & - + het_rates(k,67))* y(k,67) - prod(k,99) = 0._r8 - loss(k,6) = ( + het_rates(k,68))* y(k,68) - prod(k,6) = 0._r8 - loss(k,7) = ( + het_rates(k,69))* y(k,69) - prod(k,7) = 0._r8 - loss(k,8) = ( + het_rates(k,70))* y(k,70) - prod(k,8) = 0._r8 - loss(k,9) = ( + rxt(k,124) + het_rates(k,71))* y(k,71) - prod(k,9) = 0._r8 - loss(k,64) = ( + rxt(k,42) + het_rates(k,72))* y(k,72) - prod(k,64) =rxt(k,297)*y(k,205)*y(k,204) - loss(k,177) = (rxt(k,232)* y(k,54) +rxt(k,233)* y(k,77) +rxt(k,235)* y(k,89) & - +rxt(k,234)* y(k,231) + het_rates(k,73))* y(k,73) - prod(k,177) = (rxt(k,205)*y(k,39) +rxt(k,227)*y(k,35) + & - 2.000_r8*rxt(k,236)*y(k,64) +rxt(k,237)*y(k,65))*y(k,218) +rxt(k,80) & - *y(k,35) +rxt(k,84)*y(k,39) +2.000_r8*rxt(k,96)*y(k,64) +rxt(k,97) & - *y(k,65) +rxt(k,104)*y(k,88) - loss(k,193) = (rxt(k,301)* y(k,219) + rxt(k,43) + het_rates(k,74))* y(k,74) - prod(k,193) = (.530_r8*rxt(k,336)*y(k,211) +.050_r8*rxt(k,374)*y(k,208) + & - .250_r8*rxt(k,393)*y(k,227) +.225_r8*rxt(k,452)*y(k,223))*y(k,124) & - + (.530_r8*rxt(k,335)*y(k,211) +.050_r8*rxt(k,375)*y(k,208) + & - .250_r8*rxt(k,394)*y(k,227))*y(k,126) & - + (.260_r8*rxt(k,333)*y(k,211) +.100_r8*rxt(k,391)*y(k,227) + & - .125_r8*rxt(k,450)*y(k,223))*y(k,200) + (.700_r8*rxt(k,376)*y(k,99) + & - .500_r8*rxt(k,377)*y(k,100) +rxt(k,388)*y(k,115))*y(k,219) & - + (.530_r8*rxt(k,332)*y(k,211) +.250_r8*rxt(k,390)*y(k,227)) & - *y(k,199) +.330_r8*rxt(k,45)*y(k,93) +.250_r8*rxt(k,65)*y(k,176) & - +rxt(k,300)*y(k,203) - loss(k,186) = (rxt(k,302)* y(k,219) + rxt(k,44) + rxt(k,480) & - + het_rates(k,75))* y(k,75) - prod(k,186) = (.050_r8*rxt(k,374)*y(k,208) +.250_r8*rxt(k,393)*y(k,227) + & - rxt(k,400)*y(k,193) +.400_r8*rxt(k,414)*y(k,212) + & - .170_r8*rxt(k,417)*y(k,214) +.700_r8*rxt(k,420)*y(k,220) + & - .600_r8*rxt(k,427)*y(k,225) +.340_r8*rxt(k,433)*y(k,228) + & - .170_r8*rxt(k,436)*y(k,230))*y(k,124) + (.650_r8*rxt(k,277)*y(k,24) + & - .200_r8*rxt(k,301)*y(k,74) +rxt(k,389)*y(k,116))*y(k,219) & - + (.250_r8*rxt(k,390)*y(k,199) +.100_r8*rxt(k,391)*y(k,200) + & - .250_r8*rxt(k,394)*y(k,126))*y(k,227) & - + (.160_r8*rxt(k,413)*y(k,212) +.070_r8*rxt(k,416)*y(k,214)) & - *y(k,205) +rxt(k,21)*y(k,8) +.130_r8*rxt(k,23)*y(k,10) & - +.050_r8*rxt(k,375)*y(k,208)*y(k,126) +.700_r8*rxt(k,61)*y(k,144) & - +.600_r8*rxt(k,70)*y(k,181) +.340_r8*rxt(k,72)*y(k,185) & - +.170_r8*rxt(k,73)*y(k,187) - loss(k,213) = (rxt(k,141)* y(k,135) + (rxt(k,135) +rxt(k,136) +rxt(k,137)) & - * y(k,205) + rxt(k,138) + het_rates(k,76))* y(k,76) - prod(k,213) = (rxt(k,142)*y(k,77) +rxt(k,145)*y(k,134) +rxt(k,163)*y(k,112) + & - rxt(k,258)*y(k,42) +rxt(k,465)*y(k,138) +rxt(k,471)*y(k,149) + & - rxt(k,476)*y(k,151))*y(k,219) + (rxt(k,125)*y(k,218) + & - rxt(k,133)*y(k,134) +rxt(k,177)*y(k,56) +rxt(k,233)*y(k,73))*y(k,77) & - + (.330_r8*rxt(k,39) +rxt(k,40) +rxt(k,272)*y(k,218))*y(k,54) & - + (rxt(k,99) +rxt(k,231)*y(k,218))*y(k,81) + (rxt(k,103) + & - rxt(k,208)*y(k,218))*y(k,85) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,231) & - +2.000_r8*rxt(k,33)*y(k,42) +rxt(k,38)*y(k,53) +rxt(k,104)*y(k,88) - loss(k,210) = (rxt(k,177)* y(k,56) +rxt(k,233)* y(k,73) +rxt(k,133)* y(k,134) & - +rxt(k,125)* y(k,218) +rxt(k,142)* y(k,219) + het_rates(k,77)) & - * y(k,77) - prod(k,210) = (1.440_r8*rxt(k,39) +rxt(k,273)*y(k,218))*y(k,54) +rxt(k,32) & - *y(k,42) +rxt(k,135)*y(k,205)*y(k,76) +rxt(k,1)*y(k,231) - loss(k,58) = (rxt(k,229)* y(k,218) + rxt(k,98) + het_rates(k,78))* y(k,78) - prod(k,58) = 0._r8 - loss(k,149) = (rxt(k,178)* y(k,56) +rxt(k,134)* y(k,134) +rxt(k,143) & - * y(k,219) + rxt(k,4) + het_rates(k,79))* y(k,79) - prod(k,149) =rxt(k,149)*y(k,205)*y(k,205) +rxt(k,148)*y(k,219)*y(k,219) - loss(k,65) = ( + rxt(k,109) + het_rates(k,80))* y(k,80) - prod(k,65) =rxt(k,478)*y(k,231)*y(k,153) - loss(k,171) = (rxt(k,224)* y(k,134) + (rxt(k,230) +rxt(k,231))* y(k,218) & - +rxt(k,225)* y(k,219) + rxt(k,99) + het_rates(k,81))* y(k,81) - prod(k,171) = (rxt(k,211)*y(k,42) +rxt(k,212)*y(k,205))*y(k,17) - loss(k,90) = (rxt(k,252)* y(k,218) +rxt(k,247)* y(k,219) + rxt(k,100) & - + het_rates(k,82))* y(k,82) - prod(k,90) = 0._r8 - loss(k,92) = (rxt(k,253)* y(k,218) +rxt(k,248)* y(k,219) + rxt(k,101) & - + het_rates(k,83))* y(k,83) - prod(k,92) = 0._r8 - loss(k,102) = (rxt(k,254)* y(k,218) +rxt(k,249)* y(k,219) + rxt(k,102) & - + het_rates(k,84))* y(k,84) - prod(k,102) = 0._r8 - loss(k,225) = ((rxt(k,528) +rxt(k,533) +rxt(k,538))* y(k,60) + (rxt(k,530) + & - rxt(k,535))* y(k,91) + (rxt(k,523) +rxt(k,529) +rxt(k,534))* y(k,92) & - +rxt(k,195)* y(k,134) + (rxt(k,207) +rxt(k,208))* y(k,218) & - +rxt(k,196)* y(k,219) + rxt(k,103) + het_rates(k,85))* y(k,85) - prod(k,225) = (rxt(k,175)*y(k,42) +rxt(k,176)*y(k,54) +rxt(k,177)*y(k,77) + & - rxt(k,178)*y(k,79) +rxt(k,179)*y(k,205) +rxt(k,197)*y(k,92) + & - rxt(k,238)*y(k,41) +rxt(k,240)*y(k,43) +2.000_r8*rxt(k,243)*y(k,46) + & - rxt(k,245)*y(k,55) +rxt(k,286)*y(k,28))*y(k,56) +rxt(k,194)*y(k,219) & - *y(k,59) - loss(k,76) = (rxt(k,274)* y(k,218) +rxt(k,266)* y(k,219) + het_rates(k,86)) & - * y(k,86) - prod(k,76) = 0._r8 - loss(k,183) = (rxt(k,267)* y(k,219) + het_rates(k,87))* y(k,87) - prod(k,183) = (.370_r8*rxt(k,279)*y(k,25) +.120_r8*rxt(k,308)*y(k,29) + & - .330_r8*rxt(k,338)*y(k,105) +.120_r8*rxt(k,352)*y(k,111) + & - .110_r8*rxt(k,385)*y(k,98) +.050_r8*rxt(k,440)*y(k,6) + & - .050_r8*rxt(k,443)*y(k,110))*y(k,135) + (rxt(k,268)*y(k,205) + & - rxt(k,270)*y(k,124))*y(k,206) +.350_r8*rxt(k,277)*y(k,219)*y(k,24) - loss(k,100) = ( + rxt(k,104) + het_rates(k,88))* y(k,88) - prod(k,100) = (rxt(k,232)*y(k,54) +rxt(k,233)*y(k,77) +rxt(k,234)*y(k,231) + & - rxt(k,235)*y(k,89))*y(k,73) - loss(k,214) = (rxt(k,235)* y(k,73) +rxt(k,172)* y(k,219) + rxt(k,9) & - + het_rates(k,89))* y(k,89) - prod(k,214) = (rxt(k,526) +rxt(k,531) +rxt(k,537) +rxt(k,528)*y(k,85) + & - rxt(k,533)*y(k,85) +rxt(k,538)*y(k,85))*y(k,60) + (rxt(k,490) + & - rxt(k,256)*y(k,42) +rxt(k,288)*y(k,45) +rxt(k,314)*y(k,49) + & - rxt(k,462)*y(k,67))*y(k,126) + (2.000_r8*rxt(k,485) + & - 2.000_r8*rxt(k,522) +2.000_r8*rxt(k,525) +2.000_r8*rxt(k,536)) & - *y(k,114) + (rxt(k,524) +rxt(k,527) +rxt(k,532))*y(k,20) & - + (.500_r8*rxt(k,489) +rxt(k,171)*y(k,219))*y(k,125) +rxt(k,482) & - *y(k,93) +rxt(k,483)*y(k,99) +rxt(k,484)*y(k,100) +rxt(k,486) & - *y(k,115) +rxt(k,487)*y(k,116) +rxt(k,491)*y(k,128) +rxt(k,492) & - *y(k,139) +rxt(k,493)*y(k,177) - loss(k,123) = (rxt(k,150)* y(k,219) + rxt(k,10) + rxt(k,11) + rxt(k,173) & - + het_rates(k,90))* y(k,90) - prod(k,123) =rxt(k,169)*y(k,205)*y(k,125) - loss(k,167) = ((rxt(k,530) +rxt(k,535))* y(k,85) +rxt(k,226)* y(k,134) & - + rxt(k,105) + het_rates(k,91))* y(k,91) - prod(k,167) = (rxt(k,524) +rxt(k,527) +rxt(k,532))*y(k,20) & - +rxt(k,218)*y(k,205)*y(k,19) - loss(k,172) = (rxt(k,197)* y(k,56) + (rxt(k,523) +rxt(k,529) +rxt(k,534)) & - * y(k,85) +rxt(k,198)* y(k,134) +rxt(k,199)* y(k,219) + rxt(k,106) & - + het_rates(k,92))* y(k,92) - prod(k,172) = (rxt(k,526) +rxt(k,531) +rxt(k,537) +rxt(k,191)*y(k,219)) & - *y(k,60) +rxt(k,186)*y(k,205)*y(k,59) - loss(k,198) = (rxt(k,331)* y(k,219) + rxt(k,45) + rxt(k,482) & - + het_rates(k,93))* y(k,93) - prod(k,198) = (rxt(k,330)*y(k,202) +rxt(k,337)*y(k,211))*y(k,124) & - + (.300_r8*rxt(k,376)*y(k,99) +.500_r8*rxt(k,377)*y(k,100))*y(k,219) - loss(k,84) = (rxt(k,362)* y(k,219) + rxt(k,46) + het_rates(k,94))* y(k,94) - prod(k,84) =rxt(k,373)*y(k,208) - loss(k,197) = (rxt(k,316)* y(k,219) + rxt(k,47) + het_rates(k,95))* y(k,95) - prod(k,197) = (.220_r8*rxt(k,332)*y(k,199) +.230_r8*rxt(k,333)*y(k,200) + & - .220_r8*rxt(k,335)*y(k,126) +.220_r8*rxt(k,336)*y(k,124))*y(k,211) & - + (.500_r8*rxt(k,320)*y(k,147) +.500_r8*rxt(k,351)*y(k,109) + & - .700_r8*rxt(k,376)*y(k,99) +.500_r8*rxt(k,377)*y(k,100))*y(k,219) & - + (.250_r8*rxt(k,390)*y(k,199) +.100_r8*rxt(k,391)*y(k,200) + & - .250_r8*rxt(k,393)*y(k,124) +.250_r8*rxt(k,394)*y(k,126))*y(k,227) & - + (.050_r8*rxt(k,374)*y(k,124) +.050_r8*rxt(k,375)*y(k,126)) & - *y(k,208) +.170_r8*rxt(k,45)*y(k,93) +.200_r8*rxt(k,321)*y(k,222) & - *y(k,200) - loss(k,111) = (rxt(k,363)* y(k,219) + het_rates(k,96))* y(k,96) - prod(k,111) = (rxt(k,370)*y(k,199) +.750_r8*rxt(k,371)*y(k,200) + & - .870_r8*rxt(k,374)*y(k,124) +.950_r8*rxt(k,375)*y(k,126))*y(k,208) - loss(k,66) = (rxt(k,364)* y(k,219) + het_rates(k,97))* y(k,97) - prod(k,66) =.600_r8*rxt(k,387)*y(k,219)*y(k,103) - loss(k,174) = (rxt(k,378)* y(k,126) +rxt(k,385)* y(k,135) +rxt(k,386) & - * y(k,219) + het_rates(k,98))* y(k,98) - prod(k,174) = 0._r8 - loss(k,146) = (rxt(k,376)* y(k,219) + rxt(k,483) + het_rates(k,99))* y(k,99) - prod(k,146) =.080_r8*rxt(k,368)*y(k,207)*y(k,124) - loss(k,140) = (rxt(k,377)* y(k,219) + rxt(k,484) + het_rates(k,100)) & - * y(k,100) - prod(k,140) =.080_r8*rxt(k,374)*y(k,208)*y(k,124) - loss(k,200) = (rxt(k,382)* y(k,124) +rxt(k,383)* y(k,126) +rxt(k,379) & - * y(k,199) +rxt(k,380)* y(k,200) +rxt(k,381)* y(k,205) & - + het_rates(k,101))* y(k,101) - prod(k,200) =rxt(k,378)*y(k,126)*y(k,98) - loss(k,120) = (rxt(k,384)* y(k,219) + rxt(k,48) + het_rates(k,102))* y(k,102) - prod(k,120) =rxt(k,381)*y(k,205)*y(k,101) - loss(k,163) = (rxt(k,387)* y(k,219) + rxt(k,49) + het_rates(k,103))* y(k,103) - prod(k,163) = (rxt(k,367)*y(k,207) +rxt(k,372)*y(k,208))*y(k,205) +rxt(k,48) & - *y(k,102) - loss(k,50) = (rxt(k,509)* y(k,219) + het_rates(k,104))* y(k,104) - prod(k,50) = 0._r8 - loss(k,201) = (rxt(k,338)* y(k,135) +rxt(k,339)* y(k,219) + rxt(k,50) & - + rxt(k,51) + het_rates(k,105))* y(k,105) - prod(k,201) = (.390_r8*rxt(k,365)*y(k,199) +.310_r8*rxt(k,366)*y(k,200) + & - .360_r8*rxt(k,368)*y(k,124) +.400_r8*rxt(k,369)*y(k,126))*y(k,207) & - +.300_r8*rxt(k,385)*y(k,135)*y(k,98) +.300_r8*rxt(k,49)*y(k,103) - loss(k,104) = (rxt(k,340)* y(k,219) + het_rates(k,106))* y(k,106) - prod(k,104) =rxt(k,334)*y(k,211)*y(k,205) - loss(k,136) = (rxt(k,349)* y(k,219) + rxt(k,52) + het_rates(k,107))* y(k,107) - prod(k,136) =.800_r8*rxt(k,19)*y(k,1) +.800_r8*rxt(k,20)*y(k,2) & - +.800_r8*rxt(k,358)*y(k,191)*y(k,124) - loss(k,105) = (rxt(k,350)* y(k,219) + rxt(k,53) + het_rates(k,108))* y(k,108) - prod(k,105) =.800_r8*rxt(k,347)*y(k,215)*y(k,205) - loss(k,145) = (rxt(k,351)* y(k,219) + rxt(k,54) + rxt(k,355) & - + het_rates(k,109))* y(k,109) - prod(k,145) =rxt(k,354)*y(k,213)*y(k,125) - loss(k,184) = (rxt(k,442)* y(k,126) +rxt(k,443)* y(k,135) +rxt(k,444) & - * y(k,219) + het_rates(k,110))* y(k,110) - prod(k,184) = 0._r8 - loss(k,207) = (rxt(k,352)* y(k,135) +rxt(k,353)* y(k,219) + rxt(k,55) & - + het_rates(k,111))* y(k,111) - prod(k,207) = (.610_r8*rxt(k,365)*y(k,199) +.440_r8*rxt(k,366)*y(k,200) + & - .560_r8*rxt(k,368)*y(k,124) +.600_r8*rxt(k,369)*y(k,126))*y(k,207) & - +.200_r8*rxt(k,385)*y(k,135)*y(k,98) +.700_r8*rxt(k,49)*y(k,103) - loss(k,134) = (rxt(k,151)* y(k,124) + (rxt(k,152) +rxt(k,153) +rxt(k,154)) & - * y(k,125) +rxt(k,163)* y(k,219) + rxt(k,155) + het_rates(k,112)) & - * y(k,112) - prod(k,134) =rxt(k,15)*y(k,124) - loss(k,77) = ((rxt(k,167) +rxt(k,168))* y(k,218) + rxt(k,12) & - + het_rates(k,113))* y(k,113) - prod(k,77) =rxt(k,152)*y(k,125)*y(k,112) - loss(k,97) = ( + rxt(k,13) + rxt(k,14) + rxt(k,174) + rxt(k,485) + rxt(k,522) & - + rxt(k,525) + rxt(k,536) + het_rates(k,114))* y(k,114) - prod(k,97) =rxt(k,170)*y(k,126)*y(k,125) - loss(k,115) = (rxt(k,388)* y(k,219) + rxt(k,486) + het_rates(k,115)) & - * y(k,115) - prod(k,115) =.200_r8*rxt(k,380)*y(k,200)*y(k,101) - loss(k,191) = (rxt(k,389)* y(k,219) + rxt(k,56) + rxt(k,487) & - + het_rates(k,116))* y(k,116) - prod(k,191) = (rxt(k,379)*y(k,199) +.800_r8*rxt(k,380)*y(k,200) + & - rxt(k,382)*y(k,124) +rxt(k,383)*y(k,126))*y(k,101) - loss(k,10) = ( + het_rates(k,117))* y(k,117) - prod(k,10) = 0._r8 - loss(k,11) = ( + het_rates(k,118))* y(k,118) - prod(k,11) = 0._r8 - loss(k,12) = ( + het_rates(k,119))* y(k,119) - prod(k,12) = 0._r8 - loss(k,55) = (rxt(k,479)* y(k,219) + het_rates(k,120))* y(k,120) - prod(k,55) = 0._r8 - loss(k,13) = ( + rxt(k,488) + het_rates(k,121))* y(k,121) - prod(k,13) = 0._r8 - loss(k,14) = ( + rxt(k,540) + het_rates(k,122))* y(k,122) - prod(k,14) = 0._r8 - loss(k,15) = ( + rxt(k,539) + het_rates(k,123))* y(k,123) - prod(k,15) = 0._r8 - loss(k,221) = (rxt(k,219)* y(k,19) +rxt(k,187)* y(k,59) +rxt(k,382)* y(k,101) & - +rxt(k,151)* y(k,112) +rxt(k,160)* y(k,126) +rxt(k,166)* y(k,134) & - +rxt(k,165)* y(k,135) +rxt(k,397)* y(k,190) + (rxt(k,358) + & - rxt(k,359))* y(k,191) +rxt(k,400)* y(k,193) +rxt(k,405)* y(k,195) & - +rxt(k,283)* y(k,196) +rxt(k,311)* y(k,197) +rxt(k,407)* y(k,198) & - +rxt(k,294)* y(k,199) +rxt(k,262)* y(k,200) +rxt(k,411)* y(k,201) & - + (rxt(k,329) +rxt(k,330))* y(k,202) +rxt(k,298)* y(k,204) & - +rxt(k,164)* y(k,205) +rxt(k,270)* y(k,206) +rxt(k,368)* y(k,207) & - +rxt(k,374)* y(k,208) + (rxt(k,336) +rxt(k,337))* y(k,211) & - +rxt(k,414)* y(k,212) +rxt(k,345)* y(k,213) +rxt(k,417)* y(k,214) & - +rxt(k,348)* y(k,215) +rxt(k,447)* y(k,217) +rxt(k,420)* y(k,220) & - +rxt(k,319)* y(k,221) +rxt(k,323)* y(k,222) +rxt(k,452)* y(k,223) & - +rxt(k,457)* y(k,224) +rxt(k,427)* y(k,225) +rxt(k,393)* y(k,227) & - +rxt(k,433)* y(k,228) +rxt(k,436)* y(k,230) + rxt(k,15) & - + het_rates(k,124))* y(k,124) - prod(k,221) = (rxt(k,16) +.500_r8*rxt(k,489) +2.000_r8*rxt(k,153)*y(k,112) + & - rxt(k,156)*y(k,134) +rxt(k,472)*y(k,151))*y(k,125) + (rxt(k,155) + & - rxt(k,163)*y(k,219))*y(k,112) +2.000_r8*rxt(k,167)*y(k,218)*y(k,113) & - +rxt(k,14)*y(k,114) +rxt(k,17)*y(k,126) - loss(k,222) = (rxt(k,220)* y(k,19) +rxt(k,189)* y(k,59) + (rxt(k,152) + & - rxt(k,153) +rxt(k,154))* y(k,112) +rxt(k,170)* y(k,126) & - + (rxt(k,156) +rxt(k,158))* y(k,134) +rxt(k,157)* y(k,135) & - +rxt(k,422)* y(k,142) +rxt(k,472)* y(k,151) +rxt(k,425)* y(k,190) & - +rxt(k,305)* y(k,199) +rxt(k,412)* y(k,201) +rxt(k,169)* y(k,205) & - +rxt(k,415)* y(k,212) +rxt(k,354)* y(k,213) +rxt(k,418)* y(k,214) & - +rxt(k,171)* y(k,219) + rxt(k,16) + rxt(k,489) + het_rates(k,125)) & - * y(k,125) - prod(k,222) = (2.000_r8*rxt(k,160)*y(k,126) +rxt(k,164)*y(k,205) + & - rxt(k,165)*y(k,135) +rxt(k,166)*y(k,134) +rxt(k,187)*y(k,59) + & - rxt(k,219)*y(k,19) +rxt(k,262)*y(k,200) +rxt(k,270)*y(k,206) + & - rxt(k,283)*y(k,196) +rxt(k,294)*y(k,199) +rxt(k,298)*y(k,204) + & - rxt(k,311)*y(k,197) +rxt(k,319)*y(k,221) +rxt(k,323)*y(k,222) + & - rxt(k,329)*y(k,202) +rxt(k,336)*y(k,211) +rxt(k,345)*y(k,213) + & - rxt(k,348)*y(k,215) +rxt(k,358)*y(k,191) + & - .920_r8*rxt(k,368)*y(k,207) +.920_r8*rxt(k,374)*y(k,208) + & - rxt(k,382)*y(k,101) +rxt(k,393)*y(k,227) +rxt(k,397)*y(k,190) + & - rxt(k,400)*y(k,193) +rxt(k,405)*y(k,195) +rxt(k,407)*y(k,198) + & - rxt(k,411)*y(k,201) +rxt(k,414)*y(k,212) +rxt(k,417)*y(k,214) + & - rxt(k,420)*y(k,220) +rxt(k,427)*y(k,225) +rxt(k,433)*y(k,228) + & - rxt(k,436)*y(k,230) +1.600_r8*rxt(k,447)*y(k,217) + & - .900_r8*rxt(k,452)*y(k,223) +.800_r8*rxt(k,457)*y(k,224))*y(k,124) & - + (rxt(k,18) +rxt(k,159)*y(k,205) +rxt(k,161)*y(k,134) + & - rxt(k,162)*y(k,219) +rxt(k,327)*y(k,16) +rxt(k,335)*y(k,211) + & - rxt(k,346)*y(k,213) +rxt(k,369)*y(k,207) +rxt(k,375)*y(k,208) + & - rxt(k,383)*y(k,101) +rxt(k,394)*y(k,227) + & - 2.000_r8*rxt(k,448)*y(k,217))*y(k,126) + (rxt(k,150)*y(k,90) + & - rxt(k,317)*y(k,127) +rxt(k,356)*y(k,1) +.700_r8*rxt(k,376)*y(k,99) + & - rxt(k,454)*y(k,177))*y(k,219) + (rxt(k,11) +rxt(k,173))*y(k,90) & - + (rxt(k,54) +rxt(k,355))*y(k,109) + (rxt(k,13) +rxt(k,174)) & - *y(k,114) + (.600_r8*rxt(k,60) +rxt(k,306))*y(k,140) +rxt(k,19) & - *y(k,1) +rxt(k,76)*y(k,20) +rxt(k,95)*y(k,60) +rxt(k,9)*y(k,89) & - +rxt(k,45)*y(k,93) +rxt(k,48)*y(k,102) +rxt(k,56)*y(k,116) & - +rxt(k,57)*y(k,127) +rxt(k,58)*y(k,128) +rxt(k,59)*y(k,139) & - +rxt(k,430)*y(k,141) +rxt(k,66)*y(k,177) & - +.500_r8*rxt(k,445)*y(k,217)*y(k,200) - loss(k,219) = (rxt(k,439)* y(k,6) +rxt(k,327)* y(k,16) +rxt(k,307)* y(k,29) & - +rxt(k,256)* y(k,42) +rxt(k,288)* y(k,45) +rxt(k,314)* y(k,49) & - +rxt(k,462)* y(k,67) +rxt(k,378)* y(k,98) +rxt(k,383)* y(k,101) & - +rxt(k,442)* y(k,110) +rxt(k,160)* y(k,124) +rxt(k,170)* y(k,125) & - +rxt(k,161)* y(k,134) +rxt(k,459)* y(k,179) +rxt(k,159)* y(k,205) & - +rxt(k,369)* y(k,207) +rxt(k,375)* y(k,208) +rxt(k,335)* y(k,211) & - +rxt(k,346)* y(k,213) +rxt(k,448)* y(k,217) +rxt(k,162)* y(k,219) & - +rxt(k,394)* y(k,227) + rxt(k,17) + rxt(k,18) + rxt(k,490) & - + het_rates(k,126))* y(k,126) - prod(k,219) = (rxt(k,94) +rxt(k,188)*y(k,56) +rxt(k,190)*y(k,134) + & - rxt(k,191)*y(k,219))*y(k,60) + (rxt(k,13) +rxt(k,14) +rxt(k,174)) & - *y(k,114) + (rxt(k,172)*y(k,89) +rxt(k,303)*y(k,140) + & - .500_r8*rxt(k,351)*y(k,109))*y(k,219) + (rxt(k,77) + & - rxt(k,221)*y(k,134))*y(k,20) + (rxt(k,157)*y(k,135) + & - rxt(k,158)*y(k,134))*y(k,125) +rxt(k,235)*y(k,89)*y(k,73) +rxt(k,10) & - *y(k,90) +.400_r8*rxt(k,60)*y(k,140) - loss(k,176) = (rxt(k,317)* y(k,219) + rxt(k,57) + het_rates(k,127))* y(k,127) - prod(k,176) = (.500_r8*rxt(k,377)*y(k,100) +rxt(k,384)*y(k,102) + & - rxt(k,388)*y(k,115) +rxt(k,389)*y(k,116))*y(k,219) & - +rxt(k,307)*y(k,126)*y(k,29) - loss(k,118) = (rxt(k,449)* y(k,219) + rxt(k,58) + rxt(k,491) & - + het_rates(k,128))* y(k,128) - prod(k,118) =rxt(k,446)*y(k,217)*y(k,205) - loss(k,16) = ( + het_rates(k,129))* y(k,129) - prod(k,16) = 0._r8 - loss(k,17) = ( + het_rates(k,130))* y(k,130) - prod(k,17) = 0._r8 - loss(k,18) = ( + het_rates(k,131))* y(k,131) - prod(k,18) = 0._r8 - loss(k,19) = ( + het_rates(k,132))* y(k,132) - prod(k,19) = 0._r8 - loss(k,20) = ( + het_rates(k,133))* y(k,133) - prod(k,20) = 0._r8 - loss(k,227) = (rxt(k,222)* y(k,19) +rxt(k,221)* y(k,20) +rxt(k,257)* y(k,42) & - +rxt(k,192)* y(k,59) +rxt(k,190)* y(k,60) +rxt(k,133)* y(k,77) & - +rxt(k,134)* y(k,79) +rxt(k,224)* y(k,81) +rxt(k,195)* y(k,85) & - +rxt(k,226)* y(k,91) +rxt(k,198)* y(k,92) +rxt(k,166)* y(k,124) & - + (rxt(k,156) +rxt(k,158))* y(k,125) +rxt(k,161)* y(k,126) & - + 2._r8*rxt(k,131)* y(k,134) +rxt(k,130)* y(k,135) +rxt(k,464) & - * y(k,138) +rxt(k,139)* y(k,205) +rxt(k,145)* y(k,219) + rxt(k,132) & - + het_rates(k,134))* y(k,134) - prod(k,227) = (rxt(k,155) +rxt(k,151)*y(k,124) +rxt(k,152)*y(k,125))*y(k,112) & - + (rxt(k,111) +rxt(k,473))*y(k,151) + (rxt(k,127) +rxt(k,128)) & - *y(k,218) +rxt(k,75)*y(k,19) +.180_r8*rxt(k,39)*y(k,54) +rxt(k,93) & - *y(k,59) +rxt(k,41)*y(k,63) +rxt(k,137)*y(k,205)*y(k,76) +rxt(k,14) & - *y(k,114) +rxt(k,15)*y(k,124) +rxt(k,16)*y(k,125) +rxt(k,18)*y(k,126) & - +rxt(k,8)*y(k,135) +rxt(k,107)*y(k,137) +rxt(k,466)*y(k,149) & - +rxt(k,112)*y(k,152) +rxt(k,113)*y(k,153) +rxt(k,147)*y(k,219) & - *y(k,219) +rxt(k,3)*y(k,231) - loss(k,228) = (rxt(k,440)* y(k,6) +rxt(k,213)* y(k,17) +rxt(k,279)* y(k,25) & - +rxt(k,308)* y(k,29) +rxt(k,181)* y(k,56) +rxt(k,141)* y(k,76) & - +rxt(k,385)* y(k,98) +rxt(k,338)* y(k,105) +rxt(k,443)* y(k,110) & - +rxt(k,352)* y(k,111) +rxt(k,165)* y(k,124) +rxt(k,157)* y(k,125) & - +rxt(k,130)* y(k,134) +rxt(k,423)* y(k,142) +rxt(k,468)* y(k,149) & - +rxt(k,474)* y(k,151) +rxt(k,140)* y(k,205) +rxt(k,129)* y(k,218) & - +rxt(k,146)* y(k,219) + rxt(k,7) + rxt(k,8) + het_rates(k,135)) & - * y(k,135) - prod(k,228) = (.150_r8*rxt(k,293)*y(k,199) +.150_r8*rxt(k,343)*y(k,213)) & - *y(k,205) +rxt(k,132)*y(k,134) - loss(k,21) = ( + het_rates(k,136))* y(k,136) - prod(k,21) = 0._r8 - loss(k,107) = (rxt(k,475)* y(k,151) + rxt(k,107) + het_rates(k,137)) & - * y(k,137) - prod(k,107) = (rxt(k,185)*y(k,59) +rxt(k,215)*y(k,19))*y(k,59) - loss(k,113) = (rxt(k,464)* y(k,134) +rxt(k,465)* y(k,219) + rxt(k,110) & - + het_rates(k,138))* y(k,138) - prod(k,113) = 0._r8 - loss(k,87) = ( + rxt(k,59) + rxt(k,492) + het_rates(k,139))* y(k,139) - prod(k,87) =rxt(k,331)*y(k,219)*y(k,93) +.100_r8*rxt(k,452)*y(k,223)*y(k,124) - loss(k,139) = (rxt(k,303)* y(k,219) + rxt(k,60) + rxt(k,306) & - + het_rates(k,140))* y(k,140) - prod(k,139) =rxt(k,305)*y(k,199)*y(k,125) - loss(k,67) = ( + rxt(k,430) + het_rates(k,141))* y(k,141) - prod(k,67) =rxt(k,425)*y(k,190)*y(k,125) - loss(k,130) = (rxt(k,422)* y(k,125) +rxt(k,423)* y(k,135) + het_rates(k,142)) & - * y(k,142) - prod(k,130) = (.070_r8*rxt(k,409)*y(k,66) +.060_r8*rxt(k,421)*y(k,143) + & - .070_r8*rxt(k,437)*y(k,186))*y(k,219) +rxt(k,31)*y(k,32) & - +rxt(k,407)*y(k,198)*y(k,124) - loss(k,74) = (rxt(k,421)* y(k,219) + het_rates(k,143))* y(k,143) - prod(k,74) =.530_r8*rxt(k,398)*y(k,219)*y(k,7) - loss(k,108) = (rxt(k,424)* y(k,219) + rxt(k,61) + het_rates(k,144))* y(k,144) - prod(k,108) =rxt(k,419)*y(k,220)*y(k,205) - loss(k,22) = ( + het_rates(k,145))* y(k,145) - prod(k,22) = 0._r8 - loss(k,23) = ( + het_rates(k,146))* y(k,146) - prod(k,23) = 0._r8 - loss(k,141) = (rxt(k,320)* y(k,219) + rxt(k,62) + het_rates(k,147))* y(k,147) - prod(k,141) =rxt(k,318)*y(k,221)*y(k,205) - loss(k,119) = (rxt(k,324)* y(k,219) + rxt(k,63) + het_rates(k,148))* y(k,148) - prod(k,119) =.850_r8*rxt(k,322)*y(k,222)*y(k,205) - loss(k,137) = (rxt(k,468)* y(k,135) +rxt(k,471)* y(k,219) + rxt(k,466) & - + het_rates(k,149))* y(k,149) - prod(k,137) =rxt(k,110)*y(k,138) +rxt(k,111)*y(k,151) - loss(k,24) = ( + rxt(k,108) + het_rates(k,150))* y(k,150) - prod(k,24) = 0._r8 - loss(k,203) = (rxt(k,469)* y(k,19) +rxt(k,470)* y(k,59) +rxt(k,472)* y(k,125) & - +rxt(k,474)* y(k,135) +rxt(k,475)* y(k,137) +rxt(k,476)* y(k,219) & - + rxt(k,111) + rxt(k,473) + het_rates(k,151))* y(k,151) - prod(k,203) = (rxt(k,466) +rxt(k,468)*y(k,135) +rxt(k,471)*y(k,219))*y(k,149) & - +rxt(k,464)*y(k,138)*y(k,134) +rxt(k,112)*y(k,152) - loss(k,175) = (rxt(k,467)* y(k,219) + rxt(k,112) + het_rates(k,152)) & - * y(k,152) - prod(k,175) = (rxt(k,473) +rxt(k,469)*y(k,19) +rxt(k,470)*y(k,59) + & - rxt(k,472)*y(k,125) +rxt(k,474)*y(k,135) +rxt(k,475)*y(k,137) + & - rxt(k,476)*y(k,219))*y(k,151) + (rxt(k,462)*y(k,126) + & - rxt(k,463)*y(k,219) +.500_r8*rxt(k,477)*y(k,219))*y(k,67) & - +rxt(k,465)*y(k,219)*y(k,138) +rxt(k,113)*y(k,153) - loss(k,93) = (rxt(k,478)* y(k,231) + rxt(k,113) + het_rates(k,153))* y(k,153) - prod(k,93) =rxt(k,109)*y(k,80) +rxt(k,467)*y(k,219)*y(k,152) - loss(k,25) = ( + het_rates(k,154))* y(k,154) - prod(k,25) = 0._r8 - loss(k,26) = ( + het_rates(k,155))* y(k,155) - prod(k,26) = 0._r8 - loss(k,27) = ( + het_rates(k,156))* y(k,156) - prod(k,27) = 0._r8 - loss(k,28) = ( + het_rates(k,157))* y(k,157) - prod(k,28) = 0._r8 - loss(k,29) = ( + rxt(k,114) + het_rates(k,158))* y(k,158) - prod(k,29) = 0._r8 - loss(k,30) = ( + rxt(k,115) + het_rates(k,159))* y(k,159) - prod(k,30) = 0._r8 - loss(k,31) = ( + rxt(k,116) + het_rates(k,160))* y(k,160) - prod(k,31) = 0._r8 - loss(k,32) = ( + rxt(k,117) + het_rates(k,161))* y(k,161) - prod(k,32) = 0._r8 - loss(k,33) = ( + rxt(k,118) + het_rates(k,162))* y(k,162) - prod(k,33) = 0._r8 - loss(k,34) = ( + rxt(k,119) + het_rates(k,163))* y(k,163) - prod(k,34) = 0._r8 - loss(k,35) = ( + rxt(k,120) + het_rates(k,164))* y(k,164) - prod(k,35) = 0._r8 - loss(k,36) = ( + rxt(k,121) + het_rates(k,165))* y(k,165) - prod(k,36) = 0._r8 - loss(k,37) = ( + rxt(k,122) + het_rates(k,166))* y(k,166) - prod(k,37) = 0._r8 - loss(k,38) = ( + rxt(k,123) + het_rates(k,167))* y(k,167) - prod(k,38) = 0._r8 - loss(k,39) = ( + het_rates(k,168))* y(k,168) - prod(k,39) = (.1279005_r8*rxt(k,496)*y(k,192) + & - .0097005_r8*rxt(k,501)*y(k,194) +.0003005_r8*rxt(k,504)*y(k,209) + & - .1056005_r8*rxt(k,508)*y(k,210) +.0245005_r8*rxt(k,512)*y(k,216) + & - .0154005_r8*rxt(k,518)*y(k,226) +.0063005_r8*rxt(k,521)*y(k,229)) & - *y(k,124) + (.2202005_r8*rxt(k,495)*y(k,192) + & - .0023005_r8*rxt(k,500)*y(k,194) +.0031005_r8*rxt(k,503)*y(k,209) + & - .2381005_r8*rxt(k,507)*y(k,210) +.0508005_r8*rxt(k,511)*y(k,216) + & - .1364005_r8*rxt(k,517)*y(k,226) +.1677005_r8*rxt(k,520)*y(k,229)) & - *y(k,205) + (.2202005_r8*rxt(k,497)*y(k,6) + & - .0508005_r8*rxt(k,513)*y(k,110))*y(k,135) +rxt(k,480)*y(k,75) & - +.5931005_r8*rxt(k,515)*y(k,219)*y(k,174) - loss(k,40) = ( + het_rates(k,169))* y(k,169) - prod(k,40) = (.1792005_r8*rxt(k,496)*y(k,192) + & - .0034005_r8*rxt(k,501)*y(k,194) +.0003005_r8*rxt(k,504)*y(k,209) + & - .1026005_r8*rxt(k,508)*y(k,210) +.0082005_r8*rxt(k,512)*y(k,216) + & - .0452005_r8*rxt(k,518)*y(k,226) +.0237005_r8*rxt(k,521)*y(k,229)) & - *y(k,124) + (.2067005_r8*rxt(k,495)*y(k,192) + & - .0008005_r8*rxt(k,500)*y(k,194) +.0035005_r8*rxt(k,503)*y(k,209) + & - .1308005_r8*rxt(k,507)*y(k,210) +.1149005_r8*rxt(k,511)*y(k,216) + & - .0101005_r8*rxt(k,517)*y(k,226) +.0174005_r8*rxt(k,520)*y(k,229)) & - *y(k,205) + (.2067005_r8*rxt(k,497)*y(k,6) + & - .1149005_r8*rxt(k,513)*y(k,110))*y(k,135) & - +.1534005_r8*rxt(k,515)*y(k,219)*y(k,174) - loss(k,41) = ( + het_rates(k,170))* y(k,170) - prod(k,41) = (.0676005_r8*rxt(k,496)*y(k,192) + & - .1579005_r8*rxt(k,501)*y(k,194) +.0073005_r8*rxt(k,504)*y(k,209) + & - .0521005_r8*rxt(k,508)*y(k,210) +.0772005_r8*rxt(k,512)*y(k,216) + & - .0966005_r8*rxt(k,518)*y(k,226) +.0025005_r8*rxt(k,521)*y(k,229)) & - *y(k,124) + (.0653005_r8*rxt(k,495)*y(k,192) + & - .0843005_r8*rxt(k,500)*y(k,194) +.0003005_r8*rxt(k,503)*y(k,209) + & - .0348005_r8*rxt(k,507)*y(k,210) +.0348005_r8*rxt(k,511)*y(k,216) + & - .0763005_r8*rxt(k,517)*y(k,226) +.086_r8*rxt(k,520)*y(k,229)) & - *y(k,205) + (.0653005_r8*rxt(k,497)*y(k,6) + & - .0348005_r8*rxt(k,513)*y(k,110))*y(k,135) & - +.0459005_r8*rxt(k,515)*y(k,219)*y(k,174) - loss(k,42) = ( + het_rates(k,171))* y(k,171) - prod(k,42) = (.079_r8*rxt(k,496)*y(k,192) +.0059005_r8*rxt(k,501)*y(k,194) + & - .0057005_r8*rxt(k,504)*y(k,209) +.0143005_r8*rxt(k,508)*y(k,210) + & - .0332005_r8*rxt(k,512)*y(k,216) +.0073005_r8*rxt(k,518)*y(k,226) + & - .011_r8*rxt(k,521)*y(k,229))*y(k,124) & - + (.1284005_r8*rxt(k,495)*y(k,192) + & - .0443005_r8*rxt(k,500)*y(k,194) +.0271005_r8*rxt(k,503)*y(k,209) + & - .0076005_r8*rxt(k,507)*y(k,210) +.0554005_r8*rxt(k,511)*y(k,216) + & - .2157005_r8*rxt(k,517)*y(k,226) +.0512005_r8*rxt(k,520)*y(k,229)) & - *y(k,205) + (.1749305_r8*rxt(k,494)*y(k,6) + & - .0590245_r8*rxt(k,502)*y(k,98) +.1749305_r8*rxt(k,510)*y(k,110)) & - *y(k,126) + (.1284005_r8*rxt(k,497)*y(k,6) + & - .0033005_r8*rxt(k,505)*y(k,98) +.0554005_r8*rxt(k,513)*y(k,110)) & - *y(k,135) +.0085005_r8*rxt(k,515)*y(k,219)*y(k,174) - loss(k,43) = ( + het_rates(k,172))* y(k,172) - prod(k,43) = (.1254005_r8*rxt(k,496)*y(k,192) + & - .0536005_r8*rxt(k,501)*y(k,194) +.0623005_r8*rxt(k,504)*y(k,209) + & - .0166005_r8*rxt(k,508)*y(k,210) +.130_r8*rxt(k,512)*y(k,216) + & - .238_r8*rxt(k,518)*y(k,226) +.1185005_r8*rxt(k,521)*y(k,229)) & - *y(k,124) + (.114_r8*rxt(k,495)*y(k,192) + & - .1621005_r8*rxt(k,500)*y(k,194) +.0474005_r8*rxt(k,503)*y(k,209) + & - .0113005_r8*rxt(k,507)*y(k,210) +.1278005_r8*rxt(k,511)*y(k,216) + & - .0738005_r8*rxt(k,517)*y(k,226) +.1598005_r8*rxt(k,520)*y(k,229)) & - *y(k,205) + (.5901905_r8*rxt(k,494)*y(k,6) + & - .0250245_r8*rxt(k,502)*y(k,98) +.5901905_r8*rxt(k,510)*y(k,110)) & - *y(k,126) + (.114_r8*rxt(k,497)*y(k,6) + & - .1278005_r8*rxt(k,513)*y(k,110))*y(k,135) & - +.0128005_r8*rxt(k,515)*y(k,219)*y(k,174) - loss(k,44) = ( + rxt(k,541) + het_rates(k,173))* y(k,173) - prod(k,44) = 0._r8 - loss(k,45) = (rxt(k,515)* y(k,219) + het_rates(k,174))* y(k,174) - prod(k,45) = 0._r8 - loss(k,80) = ( + rxt(k,64) + het_rates(k,175))* y(k,175) - prod(k,80) = (.100_r8*rxt(k,429)*y(k,182) +.230_r8*rxt(k,431)*y(k,184)) & - *y(k,219) - loss(k,154) = (rxt(k,453)* y(k,219) + rxt(k,65) + het_rates(k,176))* y(k,176) - prod(k,154) =rxt(k,451)*y(k,223)*y(k,205) - loss(k,151) = (rxt(k,454)* y(k,219) + rxt(k,66) + rxt(k,493) & - + het_rates(k,177))* y(k,177) - prod(k,151) = (.200_r8*rxt(k,447)*y(k,217) +.200_r8*rxt(k,457)*y(k,224)) & - *y(k,124) +.500_r8*rxt(k,445)*y(k,217)*y(k,200) - loss(k,132) = (rxt(k,458)* y(k,219) + rxt(k,67) + het_rates(k,178))* y(k,178) - prod(k,132) =rxt(k,456)*y(k,224)*y(k,205) - loss(k,185) = (rxt(k,459)* y(k,126) +rxt(k,460)* y(k,219) + rxt(k,68) & - + het_rates(k,179))* y(k,179) - prod(k,185) = (.500_r8*rxt(k,445)*y(k,200) +.800_r8*rxt(k,447)*y(k,124) + & - rxt(k,448)*y(k,126))*y(k,217) + (.330_r8*rxt(k,440)*y(k,6) + & - .330_r8*rxt(k,443)*y(k,110))*y(k,135) + (rxt(k,66) + & - rxt(k,454)*y(k,219))*y(k,177) + (rxt(k,455)*y(k,200) + & - .800_r8*rxt(k,457)*y(k,124))*y(k,224) +rxt(k,58)*y(k,128) +rxt(k,67) & - *y(k,178) - loss(k,190) = (rxt(k,461)* y(k,219) + rxt(k,69) + het_rates(k,180))* y(k,180) - prod(k,190) = (.300_r8*rxt(k,440)*y(k,6) +.300_r8*rxt(k,443)*y(k,110)) & - *y(k,135) + (rxt(k,450)*y(k,200) +.900_r8*rxt(k,452)*y(k,124)) & - *y(k,223) +rxt(k,65)*y(k,176) +rxt(k,68)*y(k,179) - loss(k,155) = (rxt(k,428)* y(k,219) + rxt(k,70) + het_rates(k,181))* y(k,181) - prod(k,155) =rxt(k,426)*y(k,225)*y(k,205) - loss(k,78) = (rxt(k,429)* y(k,219) + het_rates(k,182))* y(k,182) - prod(k,78) = 0._r8 - loss(k,81) = (rxt(k,395)* y(k,219) + rxt(k,71) + het_rates(k,183))* y(k,183) - prod(k,81) =rxt(k,392)*y(k,227)*y(k,205) - loss(k,82) = (rxt(k,431)* y(k,219) + het_rates(k,184))* y(k,184) - prod(k,82) = 0._r8 - loss(k,159) = (rxt(k,434)* y(k,219) + rxt(k,72) + het_rates(k,185))* y(k,185) - prod(k,159) =rxt(k,432)*y(k,228)*y(k,205) - loss(k,83) = (rxt(k,437)* y(k,219) + het_rates(k,186))* y(k,186) - prod(k,83) =.150_r8*rxt(k,431)*y(k,219)*y(k,184) - loss(k,124) = (rxt(k,438)* y(k,219) + rxt(k,73) + het_rates(k,187))* y(k,187) - prod(k,124) =rxt(k,435)*y(k,230)*y(k,205) - loss(k,138) = (rxt(k,397)* y(k,124) +rxt(k,425)* y(k,125) +rxt(k,396) & - * y(k,205) + het_rates(k,190))* y(k,190) - prod(k,138) =rxt(k,402)*y(k,219)*y(k,22) +rxt(k,430)*y(k,141) - loss(k,179) = ((rxt(k,358) +rxt(k,359))* y(k,124) +rxt(k,357)* y(k,205) & - + het_rates(k,191))* y(k,191) - prod(k,179) = (rxt(k,360)*y(k,2) +rxt(k,361)*y(k,15))*y(k,219) - loss(k,46) = (rxt(k,496)* y(k,124) +rxt(k,495)* y(k,205) + het_rates(k,192)) & - * y(k,192) - prod(k,46) =rxt(k,498)*y(k,219)*y(k,6) - loss(k,133) = (rxt(k,400)* y(k,124) +rxt(k,399)* y(k,205) + het_rates(k,193)) & - * y(k,193) - prod(k,133) = (.350_r8*rxt(k,398)*y(k,7) +rxt(k,401)*y(k,8))*y(k,219) - loss(k,47) = (rxt(k,501)* y(k,124) +rxt(k,500)* y(k,205) + het_rates(k,194)) & - * y(k,194) - prod(k,47) =rxt(k,499)*y(k,219)*y(k,7) - loss(k,125) = (rxt(k,405)* y(k,124) +rxt(k,403)* y(k,205) + het_rates(k,195)) & - * y(k,195) - prod(k,125) = (rxt(k,404)*y(k,23) +.070_r8*rxt(k,429)*y(k,182) + & - .060_r8*rxt(k,431)*y(k,184))*y(k,219) - loss(k,173) = (rxt(k,283)* y(k,124) + 2._r8*rxt(k,280)* y(k,196) +rxt(k,281) & - * y(k,200) +rxt(k,282)* y(k,205) + het_rates(k,196))* y(k,196) - prod(k,173) = (rxt(k,286)*y(k,56) +rxt(k,287)*y(k,219))*y(k,28) & - +.500_r8*rxt(k,285)*y(k,219)*y(k,27) +rxt(k,52)*y(k,107) - loss(k,168) = (rxt(k,311)* y(k,124) +rxt(k,309)* y(k,200) +rxt(k,310) & - * y(k,205) + het_rates(k,197))* y(k,197) - prod(k,168) = (rxt(k,312)*y(k,30) +rxt(k,313)*y(k,31))*y(k,219) - loss(k,152) = (rxt(k,407)* y(k,124) +rxt(k,406)* y(k,205) + het_rates(k,198)) & - * y(k,198) - prod(k,152) = (.400_r8*rxt(k,396)*y(k,205) +rxt(k,397)*y(k,124))*y(k,190) & - +rxt(k,408)*y(k,219)*y(k,32) +rxt(k,423)*y(k,142)*y(k,135) - loss(k,209) = (rxt(k,379)* y(k,101) +rxt(k,294)* y(k,124) +rxt(k,305) & - * y(k,125) + 2._r8*rxt(k,291)* y(k,199) +rxt(k,292)* y(k,200) & - +rxt(k,293)* y(k,205) +rxt(k,365)* y(k,207) +rxt(k,370)* y(k,208) & - +rxt(k,332)* y(k,211) +rxt(k,390)* y(k,227) + het_rates(k,199)) & - * y(k,199) - prod(k,209) = (.100_r8*rxt(k,338)*y(k,105) +.280_r8*rxt(k,352)*y(k,111) + & - .080_r8*rxt(k,385)*y(k,98) +.060_r8*rxt(k,440)*y(k,6) + & - .060_r8*rxt(k,443)*y(k,110))*y(k,135) + (rxt(k,342)*y(k,200) + & - .450_r8*rxt(k,343)*y(k,205) +2.000_r8*rxt(k,344)*y(k,213) + & - rxt(k,345)*y(k,124) +rxt(k,346)*y(k,126))*y(k,213) & - + (.530_r8*rxt(k,332)*y(k,199) +.260_r8*rxt(k,333)*y(k,200) + & - .530_r8*rxt(k,335)*y(k,126) +.530_r8*rxt(k,336)*y(k,124))*y(k,211) & - + (rxt(k,289)*y(k,45) +.500_r8*rxt(k,296)*y(k,51) + & - rxt(k,315)*y(k,49) +.650_r8*rxt(k,461)*y(k,180))*y(k,219) & - + (.300_r8*rxt(k,321)*y(k,200) +.150_r8*rxt(k,322)*y(k,205) + & - rxt(k,323)*y(k,124))*y(k,222) + (rxt(k,36) +rxt(k,314)*y(k,126)) & - *y(k,49) + (.600_r8*rxt(k,60) +rxt(k,306))*y(k,140) & - + (.200_r8*rxt(k,347)*y(k,205) +rxt(k,348)*y(k,124))*y(k,215) & - +.130_r8*rxt(k,23)*y(k,10) +rxt(k,27)*y(k,14) +rxt(k,288)*y(k,126) & - *y(k,45) +rxt(k,35)*y(k,48) +.330_r8*rxt(k,45)*y(k,93) +rxt(k,47) & - *y(k,95) +1.340_r8*rxt(k,50)*y(k,105) +rxt(k,52)*y(k,107) +rxt(k,53) & - *y(k,108) +.300_r8*rxt(k,55)*y(k,111) +rxt(k,57)*y(k,127) +rxt(k,63) & - *y(k,148) +.500_r8*rxt(k,64)*y(k,175) +.650_r8*rxt(k,69)*y(k,180) - loss(k,220) = (rxt(k,182)* y(k,59) +rxt(k,380)* y(k,101) +rxt(k,262) & - * y(k,124) +rxt(k,281)* y(k,196) +rxt(k,309)* y(k,197) +rxt(k,292) & - * y(k,199) + 2._r8*(rxt(k,259) +rxt(k,260))* y(k,200) +rxt(k,261) & - * y(k,205) +rxt(k,366)* y(k,207) +rxt(k,371)* y(k,208) +rxt(k,333) & - * y(k,211) +rxt(k,342)* y(k,213) +rxt(k,445)* y(k,217) +rxt(k,321) & - * y(k,222) +rxt(k,450)* y(k,223) +rxt(k,455)* y(k,224) +rxt(k,391) & - * y(k,227) + het_rates(k,200))* y(k,200) - prod(k,220) = (2.000_r8*rxt(k,291)*y(k,199) +.900_r8*rxt(k,292)*y(k,200) + & - .450_r8*rxt(k,293)*y(k,205) +rxt(k,294)*y(k,124) + & - rxt(k,332)*y(k,211) +rxt(k,341)*y(k,213) +rxt(k,365)*y(k,207) + & - rxt(k,370)*y(k,208) +rxt(k,379)*y(k,101) +rxt(k,390)*y(k,227)) & - *y(k,199) + (rxt(k,40) +rxt(k,176)*y(k,56) +rxt(k,232)*y(k,73) + & - rxt(k,265)*y(k,219) +rxt(k,271)*y(k,218))*y(k,54) & - + (.830_r8*rxt(k,411)*y(k,201) +.170_r8*rxt(k,417)*y(k,214)) & - *y(k,124) + (.280_r8*rxt(k,308)*y(k,29) +.050_r8*rxt(k,385)*y(k,98)) & - *y(k,135) + (.330_r8*rxt(k,410)*y(k,201) + & - .070_r8*rxt(k,416)*y(k,214))*y(k,205) + (.700_r8*rxt(k,264)*y(k,53) + & - rxt(k,295)*y(k,50))*y(k,219) +rxt(k,87)*y(k,43) +rxt(k,34)*y(k,45) & - +rxt(k,89)*y(k,46) +rxt(k,35)*y(k,48) +rxt(k,37)*y(k,51) & - +.300_r8*rxt(k,55)*y(k,111) +.400_r8*rxt(k,60)*y(k,140) - loss(k,165) = (rxt(k,411)* y(k,124) +rxt(k,412)* y(k,125) +rxt(k,410) & - * y(k,205) + het_rates(k,201))* y(k,201) - prod(k,165) =.600_r8*rxt(k,25)*y(k,12) - loss(k,144) = ((rxt(k,329) +rxt(k,330))* y(k,124) + het_rates(k,202)) & - * y(k,202) - prod(k,144) =rxt(k,328)*y(k,219)*y(k,16) - loss(k,96) = ( + rxt(k,299) + rxt(k,300) + het_rates(k,203))* y(k,203) - prod(k,96) =rxt(k,42)*y(k,72) +.750_r8*rxt(k,298)*y(k,204)*y(k,124) - loss(k,160) = (rxt(k,298)* y(k,124) +rxt(k,297)* y(k,205) + het_rates(k,204)) & - * y(k,204) - prod(k,160) =rxt(k,304)*y(k,219)*y(k,25) - loss(k,224) = (rxt(k,212)* y(k,17) +rxt(k,218)* y(k,19) +rxt(k,255)* y(k,42) & - + (rxt(k,179) +rxt(k,180))* y(k,56) +rxt(k,186)* y(k,59) & - + (rxt(k,135) +rxt(k,136) +rxt(k,137))* y(k,76) +rxt(k,381) & - * y(k,101) +rxt(k,164)* y(k,124) +rxt(k,169)* y(k,125) +rxt(k,159) & - * y(k,126) +rxt(k,139)* y(k,134) +rxt(k,140)* y(k,135) +rxt(k,396) & - * y(k,190) +rxt(k,357)* y(k,191) +rxt(k,399)* y(k,193) +rxt(k,403) & - * y(k,195) +rxt(k,282)* y(k,196) +rxt(k,310)* y(k,197) +rxt(k,406) & - * y(k,198) +rxt(k,293)* y(k,199) +rxt(k,261)* y(k,200) +rxt(k,410) & - * y(k,201) +rxt(k,297)* y(k,204) + 2._r8*rxt(k,149)* y(k,205) & - +rxt(k,268)* y(k,206) +rxt(k,367)* y(k,207) +rxt(k,372)* y(k,208) & - +rxt(k,334)* y(k,211) +rxt(k,413)* y(k,212) +rxt(k,343)* y(k,213) & - +rxt(k,416)* y(k,214) +rxt(k,347)* y(k,215) +rxt(k,446)* y(k,217) & - +rxt(k,144)* y(k,219) +rxt(k,419)* y(k,220) +rxt(k,318)* y(k,221) & - +rxt(k,322)* y(k,222) +rxt(k,451)* y(k,223) +rxt(k,456)* y(k,224) & - +rxt(k,426)* y(k,225) +rxt(k,392)* y(k,227) +rxt(k,432)* y(k,228) & - +rxt(k,435)* y(k,230) + rxt(k,481) + het_rates(k,205))* y(k,205) - prod(k,224) = (rxt(k,143)*y(k,79) +rxt(k,146)*y(k,135) +rxt(k,162)*y(k,126) + & - rxt(k,193)*y(k,59) +rxt(k,223)*y(k,19) +rxt(k,241)*y(k,43) + & - rxt(k,244)*y(k,46) +rxt(k,263)*y(k,52) +rxt(k,266)*y(k,86) + & - rxt(k,267)*y(k,87) +rxt(k,275)*y(k,62) +.350_r8*rxt(k,277)*y(k,24) + & - rxt(k,284)*y(k,26) +rxt(k,290)*y(k,47) +rxt(k,301)*y(k,74) + & - rxt(k,302)*y(k,75) +rxt(k,316)*y(k,95) +rxt(k,331)*y(k,93) + & - .200_r8*rxt(k,340)*y(k,106) +.500_r8*rxt(k,351)*y(k,109) + & - .300_r8*rxt(k,376)*y(k,99) +rxt(k,377)*y(k,100) + & - rxt(k,384)*y(k,102) +rxt(k,388)*y(k,115) +rxt(k,389)*y(k,116) + & - .650_r8*rxt(k,398)*y(k,7) +.730_r8*rxt(k,409)*y(k,66) + & - .800_r8*rxt(k,421)*y(k,143) +.280_r8*rxt(k,429)*y(k,182) + & - .380_r8*rxt(k,431)*y(k,184) +.630_r8*rxt(k,437)*y(k,186) + & - .200_r8*rxt(k,461)*y(k,180) +rxt(k,467)*y(k,152) + & - .500_r8*rxt(k,477)*y(k,67))*y(k,219) + (rxt(k,262)*y(k,200) + & - rxt(k,270)*y(k,206) +rxt(k,283)*y(k,196) + & - .250_r8*rxt(k,298)*y(k,204) +rxt(k,311)*y(k,197) + & - rxt(k,319)*y(k,221) +rxt(k,329)*y(k,202) + & - .470_r8*rxt(k,336)*y(k,211) +rxt(k,358)*y(k,191) + & - .920_r8*rxt(k,368)*y(k,207) +.920_r8*rxt(k,374)*y(k,208) + & - rxt(k,382)*y(k,101) +rxt(k,393)*y(k,227) +rxt(k,400)*y(k,193) + & - rxt(k,405)*y(k,195) +.170_r8*rxt(k,411)*y(k,201) + & - .400_r8*rxt(k,414)*y(k,212) +.830_r8*rxt(k,417)*y(k,214) + & - rxt(k,420)*y(k,220) +rxt(k,427)*y(k,225) +rxt(k,433)*y(k,228) + & - rxt(k,436)*y(k,230) +.900_r8*rxt(k,452)*y(k,223) + & - .800_r8*rxt(k,457)*y(k,224))*y(k,124) + (rxt(k,182)*y(k,59) + & - 2.000_r8*rxt(k,259)*y(k,200) +rxt(k,281)*y(k,196) + & - .900_r8*rxt(k,292)*y(k,199) +rxt(k,309)*y(k,197) + & - .300_r8*rxt(k,321)*y(k,222) +.730_r8*rxt(k,333)*y(k,211) + & - rxt(k,342)*y(k,213) +rxt(k,366)*y(k,207) +rxt(k,371)*y(k,208) + & - 1.200_r8*rxt(k,380)*y(k,101) +.800_r8*rxt(k,391)*y(k,227) + & - .500_r8*rxt(k,445)*y(k,217) +rxt(k,450)*y(k,223) + & - rxt(k,455)*y(k,224))*y(k,200) + (.130_r8*rxt(k,279)*y(k,25) + & - .280_r8*rxt(k,308)*y(k,29) +.140_r8*rxt(k,338)*y(k,105) + & - .280_r8*rxt(k,352)*y(k,111) +.370_r8*rxt(k,385)*y(k,98) + & - .570_r8*rxt(k,440)*y(k,6) +.570_r8*rxt(k,443)*y(k,110))*y(k,135) & - + (rxt(k,256)*y(k,42) +.470_r8*rxt(k,335)*y(k,211) + & - rxt(k,369)*y(k,207) +rxt(k,375)*y(k,208) +rxt(k,383)*y(k,101) + & - rxt(k,394)*y(k,227))*y(k,126) + (.470_r8*rxt(k,332)*y(k,211) + & - rxt(k,365)*y(k,207) +rxt(k,370)*y(k,208) +rxt(k,379)*y(k,101) + & - rxt(k,390)*y(k,227))*y(k,199) + (rxt(k,175)*y(k,42) + & - rxt(k,178)*y(k,79) +rxt(k,240)*y(k,43) +rxt(k,243)*y(k,46))*y(k,56) & - + (.070_r8*rxt(k,410)*y(k,201) +.160_r8*rxt(k,413)*y(k,212) + & - .330_r8*rxt(k,416)*y(k,214))*y(k,205) + (rxt(k,211)*y(k,17) + & - rxt(k,257)*y(k,134))*y(k,42) + (rxt(k,11) +rxt(k,173))*y(k,90) & - + (1.340_r8*rxt(k,50) +.660_r8*rxt(k,51))*y(k,105) + (rxt(k,299) + & - rxt(k,300))*y(k,203) +rxt(k,19)*y(k,1) +.900_r8*rxt(k,20)*y(k,2) & - +rxt(k,21)*y(k,8) +1.500_r8*rxt(k,22)*y(k,9) +.560_r8*rxt(k,23) & - *y(k,10) +rxt(k,24)*y(k,11) +.600_r8*rxt(k,25)*y(k,12) & - +.600_r8*rxt(k,26)*y(k,13) +rxt(k,27)*y(k,14) +rxt(k,28)*y(k,23) & - +rxt(k,29)*y(k,27) +rxt(k,30)*y(k,30) +rxt(k,34)*y(k,45) +rxt(k,36) & - *y(k,49) +rxt(k,272)*y(k,218)*y(k,54) +2.000_r8*rxt(k,43)*y(k,74) & - +2.000_r8*rxt(k,44)*y(k,75) +rxt(k,138)*y(k,76) +rxt(k,134)*y(k,134) & - *y(k,79) +.670_r8*rxt(k,45)*y(k,93) +rxt(k,46)*y(k,94) +rxt(k,47) & - *y(k,95) +rxt(k,48)*y(k,102) +rxt(k,49)*y(k,103) +rxt(k,56)*y(k,116) & - +rxt(k,61)*y(k,144) +rxt(k,62)*y(k,147) +rxt(k,64)*y(k,175) & - +rxt(k,65)*y(k,176) +rxt(k,66)*y(k,177) +rxt(k,67)*y(k,178) & - +rxt(k,68)*y(k,179) +1.200_r8*rxt(k,69)*y(k,180) +rxt(k,70)*y(k,181) & - +rxt(k,72)*y(k,185) +rxt(k,73)*y(k,187) & - +1.200_r8*rxt(k,280)*y(k,196)*y(k,196) +rxt(k,269)*y(k,206) & - +rxt(k,373)*y(k,208) - loss(k,126) = (rxt(k,270)* y(k,124) +rxt(k,268)* y(k,205) + rxt(k,269) & - + het_rates(k,206))* y(k,206) - prod(k,126) =rxt(k,255)*y(k,205)*y(k,42) - loss(k,204) = (rxt(k,368)* y(k,124) +rxt(k,369)* y(k,126) +rxt(k,365) & - * y(k,199) +rxt(k,366)* y(k,200) +rxt(k,367)* y(k,205) & - + het_rates(k,207))* y(k,207) - prod(k,204) =.600_r8*rxt(k,386)*y(k,219)*y(k,98) - loss(k,205) = (rxt(k,374)* y(k,124) +rxt(k,375)* y(k,126) +rxt(k,370) & - * y(k,199) +rxt(k,371)* y(k,200) +rxt(k,372)* y(k,205) + rxt(k,373) & - + het_rates(k,208))* y(k,208) - prod(k,205) =.400_r8*rxt(k,386)*y(k,219)*y(k,98) - loss(k,48) = (rxt(k,504)* y(k,124) +rxt(k,503)* y(k,205) + het_rates(k,209)) & - * y(k,209) - prod(k,48) =rxt(k,506)*y(k,219)*y(k,98) - loss(k,49) = (rxt(k,508)* y(k,124) +rxt(k,507)* y(k,205) + het_rates(k,210)) & - * y(k,210) - prod(k,49) =rxt(k,509)*y(k,219)*y(k,104) - loss(k,206) = ((rxt(k,336) +rxt(k,337))* y(k,124) +rxt(k,335)* y(k,126) & - +rxt(k,332)* y(k,199) +rxt(k,333)* y(k,200) +rxt(k,334)* y(k,205) & - + het_rates(k,211))* y(k,211) - prod(k,206) = (.500_r8*rxt(k,339)*y(k,105) +.200_r8*rxt(k,340)*y(k,106) + & - rxt(k,353)*y(k,111))*y(k,219) - loss(k,161) = (rxt(k,414)* y(k,124) +rxt(k,415)* y(k,125) +rxt(k,413) & - * y(k,205) + het_rates(k,212))* y(k,212) - prod(k,161) =.600_r8*rxt(k,24)*y(k,11) - loss(k,208) = (rxt(k,345)* y(k,124) +rxt(k,354)* y(k,125) +rxt(k,346) & - * y(k,126) +rxt(k,341)* y(k,199) +rxt(k,342)* y(k,200) +rxt(k,343) & - * y(k,205) + 2._r8*rxt(k,344)* y(k,213) + het_rates(k,213))* y(k,213) - prod(k,208) = (.660_r8*rxt(k,50) +.500_r8*rxt(k,339)*y(k,219))*y(k,105) & - + (rxt(k,54) +rxt(k,355))*y(k,109) +.500_r8*rxt(k,340)*y(k,219) & - *y(k,106) - loss(k,178) = (rxt(k,417)* y(k,124) +rxt(k,418)* y(k,125) +rxt(k,416) & - * y(k,205) + het_rates(k,214))* y(k,214) - prod(k,178) =.600_r8*rxt(k,26)*y(k,13) - loss(k,157) = (rxt(k,348)* y(k,124) +rxt(k,347)* y(k,205) + het_rates(k,215)) & - * y(k,215) - prod(k,157) = (rxt(k,349)*y(k,107) +rxt(k,350)*y(k,108))*y(k,219) - loss(k,51) = (rxt(k,512)* y(k,124) +rxt(k,511)* y(k,205) + het_rates(k,216)) & - * y(k,216) - prod(k,51) =rxt(k,514)*y(k,219)*y(k,110) - loss(k,189) = (rxt(k,447)* y(k,124) +rxt(k,448)* y(k,126) +rxt(k,445) & - * y(k,200) +rxt(k,446)* y(k,205) + het_rates(k,217))* y(k,217) - prod(k,189) = (rxt(k,439)*y(k,6) +rxt(k,442)*y(k,110) + & - .500_r8*rxt(k,459)*y(k,179))*y(k,126) +rxt(k,449)*y(k,219)*y(k,128) - loss(k,216) = (rxt(k,200)* y(k,33) +rxt(k,201)* y(k,34) +rxt(k,227)* y(k,35) & - +rxt(k,202)* y(k,36) +rxt(k,203)* y(k,37) +rxt(k,204)* y(k,38) & - +rxt(k,205)* y(k,39) +rxt(k,206)* y(k,40) +rxt(k,250)* y(k,41) & - +rxt(k,251)* y(k,43) + (rxt(k,271) +rxt(k,272) +rxt(k,273))* y(k,54) & - +rxt(k,228)* y(k,55) +rxt(k,236)* y(k,64) +rxt(k,237)* y(k,65) & - +rxt(k,125)* y(k,77) +rxt(k,229)* y(k,78) + (rxt(k,230) +rxt(k,231)) & - * y(k,81) +rxt(k,252)* y(k,82) +rxt(k,253)* y(k,83) +rxt(k,254) & - * y(k,84) + (rxt(k,207) +rxt(k,208))* y(k,85) +rxt(k,274)* y(k,86) & - + (rxt(k,167) +rxt(k,168))* y(k,113) +rxt(k,129)* y(k,135) & - +rxt(k,126)* y(k,231) + rxt(k,127) + rxt(k,128) + het_rates(k,218)) & - * y(k,218) - prod(k,216) =rxt(k,12)*y(k,113) +rxt(k,7)*y(k,135) +rxt(k,1)*y(k,231) - loss(k,217) = (rxt(k,356)* y(k,1) +rxt(k,360)* y(k,2) +rxt(k,441)* y(k,6) & - +rxt(k,398)* y(k,7) +rxt(k,401)* y(k,8) +rxt(k,361)* y(k,15) & - +rxt(k,328)* y(k,16) +rxt(k,223)* y(k,19) +rxt(k,402)* y(k,22) & - +rxt(k,404)* y(k,23) +rxt(k,277)* y(k,24) +rxt(k,304)* y(k,25) & - +rxt(k,284)* y(k,26) +rxt(k,285)* y(k,27) +rxt(k,287)* y(k,28) & - +rxt(k,325)* y(k,29) +rxt(k,312)* y(k,30) +rxt(k,313)* y(k,31) & - +rxt(k,408)* y(k,32) +rxt(k,239)* y(k,41) +rxt(k,258)* y(k,42) & - +rxt(k,241)* y(k,43) +rxt(k,242)* y(k,44) +rxt(k,289)* y(k,45) & - +rxt(k,244)* y(k,46) +rxt(k,290)* y(k,47) +rxt(k,326)* y(k,48) & - +rxt(k,315)* y(k,49) +rxt(k,295)* y(k,50) +rxt(k,296)* y(k,51) & - +rxt(k,263)* y(k,52) +rxt(k,264)* y(k,53) +rxt(k,265)* y(k,54) & - +rxt(k,246)* y(k,55) + (rxt(k,193) +rxt(k,194))* y(k,59) +rxt(k,191) & - * y(k,60) +rxt(k,275)* y(k,62) +rxt(k,409)* y(k,66) + (rxt(k,463) + & - rxt(k,477))* y(k,67) +rxt(k,301)* y(k,74) +rxt(k,302)* y(k,75) & - +rxt(k,142)* y(k,77) +rxt(k,143)* y(k,79) +rxt(k,225)* y(k,81) & - +rxt(k,247)* y(k,82) +rxt(k,248)* y(k,83) +rxt(k,249)* y(k,84) & - +rxt(k,196)* y(k,85) +rxt(k,266)* y(k,86) +rxt(k,267)* y(k,87) & - +rxt(k,172)* y(k,89) +rxt(k,150)* y(k,90) +rxt(k,199)* y(k,92) & - +rxt(k,331)* y(k,93) +rxt(k,362)* y(k,94) +rxt(k,316)* y(k,95) & - +rxt(k,363)* y(k,96) +rxt(k,364)* y(k,97) +rxt(k,386)* y(k,98) & - +rxt(k,376)* y(k,99) +rxt(k,377)* y(k,100) +rxt(k,384)* y(k,102) & - +rxt(k,387)* y(k,103) +rxt(k,339)* y(k,105) +rxt(k,340)* y(k,106) & - +rxt(k,349)* y(k,107) +rxt(k,350)* y(k,108) +rxt(k,351)* y(k,109) & - +rxt(k,444)* y(k,110) +rxt(k,353)* y(k,111) +rxt(k,163)* y(k,112) & - +rxt(k,388)* y(k,115) +rxt(k,389)* y(k,116) +rxt(k,479)* y(k,120) & - +rxt(k,171)* y(k,125) +rxt(k,162)* y(k,126) +rxt(k,317)* y(k,127) & - +rxt(k,449)* y(k,128) +rxt(k,145)* y(k,134) +rxt(k,146)* y(k,135) & - +rxt(k,465)* y(k,138) +rxt(k,303)* y(k,140) +rxt(k,421)* y(k,143) & - +rxt(k,424)* y(k,144) +rxt(k,320)* y(k,147) +rxt(k,324)* y(k,148) & - +rxt(k,471)* y(k,149) +rxt(k,476)* y(k,151) +rxt(k,467)* y(k,152) & - +rxt(k,453)* y(k,176) +rxt(k,454)* y(k,177) +rxt(k,458)* y(k,178) & - +rxt(k,460)* y(k,179) +rxt(k,461)* y(k,180) +rxt(k,428)* y(k,181) & - +rxt(k,429)* y(k,182) +rxt(k,395)* y(k,183) +rxt(k,431)* y(k,184) & - +rxt(k,434)* y(k,185) +rxt(k,437)* y(k,186) +rxt(k,438)* y(k,187) & - +rxt(k,144)* y(k,205) + 2._r8*(rxt(k,147) +rxt(k,148))* y(k,219) & - + het_rates(k,219))* y(k,219) - prod(k,217) = (2.000_r8*rxt(k,136)*y(k,76) +rxt(k,139)*y(k,134) + & - rxt(k,140)*y(k,135) +rxt(k,159)*y(k,126) +rxt(k,164)*y(k,124) + & - rxt(k,180)*y(k,56) +.450_r8*rxt(k,293)*y(k,199) + & - .150_r8*rxt(k,322)*y(k,222) +.450_r8*rxt(k,343)*y(k,213) + & - .200_r8*rxt(k,347)*y(k,215) +.400_r8*rxt(k,396)*y(k,190) + & - .400_r8*rxt(k,410)*y(k,201) +.400_r8*rxt(k,416)*y(k,214))*y(k,205) & - + (rxt(k,141)*y(k,76) +.130_r8*rxt(k,279)*y(k,25) + & - .360_r8*rxt(k,308)*y(k,29) +.240_r8*rxt(k,338)*y(k,105) + & - .360_r8*rxt(k,352)*y(k,111) +.320_r8*rxt(k,385)*y(k,98) + & - .630_r8*rxt(k,440)*y(k,6) +.630_r8*rxt(k,443)*y(k,110))*y(k,135) & - + (rxt(k,133)*y(k,77) +rxt(k,134)*y(k,79) +rxt(k,195)*y(k,85) + & - rxt(k,198)*y(k,92) +rxt(k,224)*y(k,81) +rxt(k,226)*y(k,91) + & - rxt(k,257)*y(k,42))*y(k,134) + (.300_r8*rxt(k,264)*y(k,53) + & - .650_r8*rxt(k,277)*y(k,24) +.500_r8*rxt(k,285)*y(k,27) + & - .500_r8*rxt(k,320)*y(k,147) +.100_r8*rxt(k,340)*y(k,106) + & - .600_r8*rxt(k,387)*y(k,103) +.500_r8*rxt(k,395)*y(k,183))*y(k,219) & - + (rxt(k,125)*y(k,77) +2.000_r8*rxt(k,126)*y(k,231) + & - rxt(k,207)*y(k,85) +rxt(k,230)*y(k,81) +rxt(k,271)*y(k,54) + & - rxt(k,274)*y(k,86))*y(k,218) + (rxt(k,2) +rxt(k,234)*y(k,73)) & - *y(k,231) +rxt(k,20)*y(k,2) +rxt(k,21)*y(k,8) +rxt(k,28)*y(k,23) & - +rxt(k,29)*y(k,27) +rxt(k,30)*y(k,30) +rxt(k,31)*y(k,32) +rxt(k,37) & - *y(k,51) +rxt(k,38)*y(k,53) +.330_r8*rxt(k,39)*y(k,54) +rxt(k,42) & - *y(k,72) +2.000_r8*rxt(k,4)*y(k,79) +rxt(k,9)*y(k,89) +rxt(k,10) & - *y(k,90) +rxt(k,105)*y(k,91) +rxt(k,106)*y(k,92) +rxt(k,46)*y(k,94) & - +rxt(k,49)*y(k,103) +rxt(k,53)*y(k,108) +.500_r8*rxt(k,489)*y(k,125) & - +rxt(k,58)*y(k,128) +rxt(k,61)*y(k,144) +rxt(k,62)*y(k,147) & - +rxt(k,63)*y(k,148) +rxt(k,65)*y(k,176) +rxt(k,67)*y(k,178) & - +rxt(k,70)*y(k,181) +rxt(k,71)*y(k,183) +rxt(k,72)*y(k,185) & - +rxt(k,73)*y(k,187) - loss(k,127) = (rxt(k,420)* y(k,124) +rxt(k,419)* y(k,205) + het_rates(k,220)) & - * y(k,220) - prod(k,127) = (.200_r8*rxt(k,409)*y(k,66) +.140_r8*rxt(k,421)*y(k,143) + & - rxt(k,424)*y(k,144))*y(k,219) - loss(k,166) = (rxt(k,319)* y(k,124) +rxt(k,318)* y(k,205) + het_rates(k,221)) & - * y(k,221) - prod(k,166) = (.500_r8*rxt(k,320)*y(k,147) +rxt(k,325)*y(k,29))*y(k,219) - loss(k,196) = (rxt(k,323)* y(k,124) +rxt(k,321)* y(k,200) +rxt(k,322) & - * y(k,205) + het_rates(k,222))* y(k,222) - prod(k,196) = (rxt(k,324)*y(k,148) +rxt(k,326)*y(k,48) + & - .150_r8*rxt(k,461)*y(k,180))*y(k,219) + (.060_r8*rxt(k,440)*y(k,6) + & - .060_r8*rxt(k,443)*y(k,110))*y(k,135) +.150_r8*rxt(k,69)*y(k,180) - loss(k,194) = (rxt(k,452)* y(k,124) +rxt(k,450)* y(k,200) +rxt(k,451) & - * y(k,205) + het_rates(k,223))* y(k,223) - prod(k,194) = (.500_r8*rxt(k,459)*y(k,126) +rxt(k,460)*y(k,219))*y(k,179) & - +rxt(k,453)*y(k,219)*y(k,176) - loss(k,181) = (rxt(k,457)* y(k,124) +rxt(k,455)* y(k,200) +rxt(k,456) & - * y(k,205) + het_rates(k,224))* y(k,224) - prod(k,181) = (rxt(k,441)*y(k,6) +rxt(k,444)*y(k,110) +rxt(k,458)*y(k,178)) & - *y(k,219) - loss(k,162) = (rxt(k,427)* y(k,124) +rxt(k,426)* y(k,205) + het_rates(k,225)) & - * y(k,225) - prod(k,162) = (rxt(k,428)*y(k,181) +.650_r8*rxt(k,429)*y(k,182))*y(k,219) - loss(k,52) = (rxt(k,518)* y(k,124) +rxt(k,517)* y(k,205) + het_rates(k,226)) & - * y(k,226) - prod(k,52) =rxt(k,516)*y(k,219)*y(k,182) - loss(k,199) = (rxt(k,393)* y(k,124) +rxt(k,394)* y(k,126) +rxt(k,390) & - * y(k,199) +rxt(k,391)* y(k,200) +rxt(k,392)* y(k,205) & - + het_rates(k,227))* y(k,227) - prod(k,199) = (rxt(k,362)*y(k,94) +rxt(k,363)*y(k,96) +rxt(k,364)*y(k,97) + & - .400_r8*rxt(k,387)*y(k,103) +.500_r8*rxt(k,395)*y(k,183))*y(k,219) - loss(k,164) = (rxt(k,433)* y(k,124) +rxt(k,432)* y(k,205) + het_rates(k,228)) & - * y(k,228) - prod(k,164) = (.560_r8*rxt(k,431)*y(k,184) +rxt(k,434)*y(k,185))*y(k,219) - loss(k,53) = (rxt(k,521)* y(k,124) +rxt(k,520)* y(k,205) + het_rates(k,229)) & - * y(k,229) - prod(k,53) =rxt(k,519)*y(k,219)*y(k,184) - loss(k,135) = (rxt(k,436)* y(k,124) +rxt(k,435)* y(k,205) + het_rates(k,230)) & - * y(k,230) - prod(k,135) = (.300_r8*rxt(k,437)*y(k,186) +rxt(k,438)*y(k,187))*y(k,219) - loss(k,229) = (rxt(k,234)* y(k,73) +rxt(k,478)* y(k,153) +rxt(k,126) & - * y(k,218) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,231)) & - * y(k,231) - prod(k,229) = (rxt(k,142)*y(k,77) +rxt(k,143)*y(k,79) +rxt(k,144)*y(k,205) + & - rxt(k,147)*y(k,219) +rxt(k,150)*y(k,90) +rxt(k,172)*y(k,89) + & - rxt(k,196)*y(k,85) +rxt(k,199)*y(k,92) +rxt(k,225)*y(k,81) + & - rxt(k,239)*y(k,41) +rxt(k,241)*y(k,43) +rxt(k,242)*y(k,44) + & - rxt(k,244)*y(k,46) +rxt(k,249)*y(k,84) +rxt(k,258)*y(k,42) + & - rxt(k,264)*y(k,53) +rxt(k,265)*y(k,54) +rxt(k,267)*y(k,87) + & - rxt(k,287)*y(k,28) +rxt(k,289)*y(k,45) +rxt(k,295)*y(k,50) + & - rxt(k,296)*y(k,51) +rxt(k,312)*y(k,30) +rxt(k,313)*y(k,31) + & - rxt(k,315)*y(k,49) +rxt(k,320)*y(k,147) +rxt(k,324)*y(k,148) + & - rxt(k,326)*y(k,48) +.500_r8*rxt(k,339)*y(k,105) +rxt(k,479)*y(k,120)) & - *y(k,219) + (rxt(k,523)*y(k,92) +rxt(k,529)*y(k,92) + & - rxt(k,530)*y(k,91) +rxt(k,534)*y(k,92) +rxt(k,535)*y(k,91))*y(k,85) & - + (rxt(k,481) +rxt(k,137)*y(k,76))*y(k,205) +.050_r8*rxt(k,39) & - *y(k,54) +rxt(k,109)*y(k,80) - end do - end subroutine imp_prod_loss - end module mo_prod_loss diff --git a/src/chemistry/pp_trop_strat_mam5_vbs/mo_setrxt.F90 b/src/chemistry/pp_trop_strat_mam5_vbs/mo_setrxt.F90 deleted file mode 100644 index 959d5cb5d3..0000000000 --- a/src/chemistry/pp_trop_strat_mam5_vbs/mo_setrxt.F90 +++ /dev/null @@ -1,700 +0,0 @@ - - module mo_setrxt - - use shr_kind_mod, only : r8 => shr_kind_r8 - - private - public :: setrxt - public :: setrxt_hrates - - contains - - subroutine setrxt( rate, temp, m, ncol ) - - use ppgrid, only : pcols, pver - - - use chem_mods, only : rxntot - use mo_jpl, only : jpl - - implicit none - -!------------------------------------------------------- -! ... dummy arguments -!------------------------------------------------------- - integer, intent(in) :: ncol - real(r8), intent(in) :: temp(pcols,pver) - real(r8), intent(in) :: m(ncol*pver) - real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) - -!------------------------------------------------------- -! ... local variables -!------------------------------------------------------- - integer :: n - integer :: offset - real(r8) :: itemp(ncol*pver) - real(r8) :: exp_fac(ncol*pver) - real(r8) :: ko(ncol*pver) - real(r8) :: kinf(ncol*pver) - - rate(:,124) = 1.29e-07_r8 - rate(:,125) = 1.2e-10_r8 - rate(:,129) = 1.2e-10_r8 - rate(:,135) = 6.9e-12_r8 - rate(:,136) = 7.2e-11_r8 - rate(:,137) = 1.6e-12_r8 - rate(:,143) = 1.8e-12_r8 - rate(:,147) = 1.8e-12_r8 - rate(:,159) = 3.5e-12_r8 - rate(:,161) = 1.3e-11_r8 - rate(:,162) = 2.2e-11_r8 - rate(:,163) = 5e-11_r8 - rate(:,198) = 1.7e-13_r8 - rate(:,200) = 2.607e-10_r8 - rate(:,201) = 9.75e-11_r8 - rate(:,202) = 2.07e-10_r8 - rate(:,203) = 2.088e-10_r8 - rate(:,204) = 1.17e-10_r8 - rate(:,205) = 4.644e-11_r8 - rate(:,206) = 1.204e-10_r8 - rate(:,207) = 9.9e-11_r8 - rate(:,208) = 3.3e-12_r8 - rate(:,227) = 4.5e-11_r8 - rate(:,228) = 4.62e-10_r8 - rate(:,229) = 1.2e-10_r8 - rate(:,230) = 9e-11_r8 - rate(:,231) = 3e-11_r8 - rate(:,236) = 2.14e-11_r8 - rate(:,237) = 1.9e-10_r8 - rate(:,250) = 2.57e-10_r8 - rate(:,251) = 1.8e-10_r8 - rate(:,252) = 1.794e-10_r8 - rate(:,253) = 1.3e-10_r8 - rate(:,254) = 7.65e-11_r8 - rate(:,267) = 4e-13_r8 - rate(:,271) = 1.31e-10_r8 - rate(:,272) = 3.5e-11_r8 - rate(:,273) = 9e-12_r8 - rate(:,280) = 6.8e-14_r8 - rate(:,281) = 2e-13_r8 - rate(:,296) = 1e-12_r8 - rate(:,300) = 1e-14_r8 - rate(:,301) = 1e-11_r8 - rate(:,302) = 1.15e-11_r8 - rate(:,303) = 4e-14_r8 - rate(:,316) = 3e-12_r8 - rate(:,317) = 6.7e-13_r8 - rate(:,327) = 3.5e-13_r8 - rate(:,328) = 5.4e-11_r8 - rate(:,331) = 2e-12_r8 - rate(:,332) = 1.4e-11_r8 - rate(:,335) = 2.4e-12_r8 - rate(:,346) = 5e-12_r8 - rate(:,356) = 1.6e-12_r8 - rate(:,358) = 6.7e-12_r8 - rate(:,361) = 3.5e-12_r8 - rate(:,364) = 1.3e-11_r8 - rate(:,365) = 1.4e-11_r8 - rate(:,369) = 2.4e-12_r8 - rate(:,370) = 1.4e-11_r8 - rate(:,375) = 2.4e-12_r8 - rate(:,376) = 4e-11_r8 - rate(:,377) = 4e-11_r8 - rate(:,379) = 1.4e-11_r8 - rate(:,383) = 2.4e-12_r8 - rate(:,384) = 4e-11_r8 - rate(:,388) = 7e-11_r8 - rate(:,389) = 1e-10_r8 - rate(:,394) = 2.4e-12_r8 - rate(:,409) = 4.7e-11_r8 - rate(:,422) = 2.1e-12_r8 - rate(:,423) = 2.8e-13_r8 - rate(:,431) = 1.7e-11_r8 - rate(:,437) = 8.4e-11_r8 - rate(:,439) = 1.9e-11_r8 - rate(:,440) = 1.2e-14_r8 - rate(:,441) = 2e-10_r8 - rate(:,448) = 2.4e-12_r8 - rate(:,449) = 2e-11_r8 - rate(:,453) = 2.3e-11_r8 - rate(:,454) = 2e-11_r8 - rate(:,458) = 3.3e-11_r8 - rate(:,459) = 1e-12_r8 - rate(:,460) = 5.7e-11_r8 - rate(:,461) = 3.4e-11_r8 - rate(:,466) = 2.3e-12_r8 - rate(:,468) = 1.2e-11_r8 - rate(:,469) = 5.7e-11_r8 - rate(:,470) = 2.8e-11_r8 - rate(:,471) = 6.6e-11_r8 - rate(:,472) = 1.4e-11_r8 - rate(:,475) = 1.9e-12_r8 - rate(:,488) = 6.34e-08_r8 - rate(:,494) = 1.9e-11_r8 - rate(:,497) = 1.2e-14_r8 - rate(:,498) = 2e-10_r8 - rate(:,509) = 1.34e-11_r8 - rate(:,515) = 1.34e-11_r8 - rate(:,519) = 1.7e-11_r8 - rate(:,539) = 2.31e-07_r8 - rate(:,540) = 2.31e-06_r8 - rate(:,541) = 4.63e-07_r8 - - do n = 1,pver - offset = (n-1)*ncol - itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,n) - end do - - rate(:,126) = 1.63e-10_r8 * exp( 60._r8 * itemp(:) ) - rate(:,127) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) - rate(:,128) = 3.3e-11_r8 * exp( 55._r8 * itemp(:) ) - rate(:,130) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) - rate(:,133) = 1.6e-11_r8 * exp( -4570._r8 * itemp(:) ) - exp_fac(:) = exp( -2000._r8 * itemp(:) ) - rate(:,134) = 1.4e-12_r8 * exp_fac(:) - rate(:,385) = 1.05e-14_r8 * exp_fac(:) - rate(:,505) = 1.05e-14_r8 * exp_fac(:) - exp_fac(:) = exp( 200._r8 * itemp(:) ) - rate(:,139) = 3e-11_r8 * exp_fac(:) - rate(:,225) = 5.5e-12_r8 * exp_fac(:) - rate(:,264) = 3.8e-12_r8 * exp_fac(:) - rate(:,285) = 3.8e-12_r8 * exp_fac(:) - rate(:,312) = 3.8e-12_r8 * exp_fac(:) - rate(:,320) = 3.8e-12_r8 * exp_fac(:) - rate(:,324) = 3.8e-12_r8 * exp_fac(:) - rate(:,340) = 2.3e-11_r8 * exp_fac(:) - rate(:,350) = 3.8e-12_r8 * exp_fac(:) - rate(:,360) = 3.8e-12_r8 * exp_fac(:) - rate(:,387) = 1.52e-11_r8 * exp_fac(:) - rate(:,395) = 1.52e-12_r8 * exp_fac(:) - rate(:,401) = 3.8e-12_r8 * exp_fac(:) - rate(:,404) = 3.8e-12_r8 * exp_fac(:) - rate(:,408) = 3.8e-12_r8 * exp_fac(:) - rate(:,424) = 3.8e-12_r8 * exp_fac(:) - rate(:,428) = 3.8e-12_r8 * exp_fac(:) - rate(:,434) = 3.8e-12_r8 * exp_fac(:) - rate(:,438) = 3.8e-12_r8 * exp_fac(:) - rate(:,140) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) - rate(:,141) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) - rate(:,142) = 2.8e-12_r8 * exp( -1800._r8 * itemp(:) ) - exp_fac(:) = exp( 250._r8 * itemp(:) ) - rate(:,144) = 4.8e-11_r8 * exp_fac(:) - rate(:,223) = 1.7e-11_r8 * exp_fac(:) - exp_fac(:) = exp( 180._r8 * itemp(:) ) - rate(:,145) = 1.8e-11_r8 * exp_fac(:) - rate(:,298) = 4.2e-12_r8 * exp_fac(:) - rate(:,311) = 4.2e-12_r8 * exp_fac(:) - rate(:,319) = 4.2e-12_r8 * exp_fac(:) - rate(:,348) = 4.2e-12_r8 * exp_fac(:) - rate(:,368) = 4.4e-12_r8 * exp_fac(:) - rate(:,374) = 4.4e-12_r8 * exp_fac(:) - rate(:,447) = 4.2e-12_r8 * exp_fac(:) - rate(:,452) = 4.2e-12_r8 * exp_fac(:) - rate(:,457) = 4.2e-12_r8 * exp_fac(:) - rate(:,146) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) - rate(:,150) = 4.5e-13_r8 * exp( 610._r8 * itemp(:) ) - rate(:,151) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) - exp_fac(:) = exp( 220._r8 * itemp(:) ) - rate(:,152) = 2.9e-12_r8 * exp_fac(:) - rate(:,153) = 1.45e-12_r8 * exp_fac(:) - rate(:,154) = 1.45e-12_r8 * exp_fac(:) - rate(:,155) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) - rate(:,156) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) - exp_fac(:) = exp( -2450._r8 * itemp(:) ) - rate(:,157) = 1.2e-13_r8 * exp_fac(:) - rate(:,183) = 3e-11_r8 * exp_fac(:) - exp_fac(:) = exp( 125._r8 * itemp(:) ) - rate(:,160) = 1.7e-11_r8 * exp_fac(:) - rate(:,258) = 5.5e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 260._r8 * itemp(:) ) - rate(:,164) = 3.44e-12_r8 * exp_fac(:) - rate(:,216) = 2.3e-12_r8 * exp_fac(:) - rate(:,219) = 8.8e-12_r8 * exp_fac(:) - exp_fac(:) = exp( -1500._r8 * itemp(:) ) - rate(:,165) = 3e-12_r8 * exp_fac(:) - rate(:,224) = 5.8e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 20._r8 * itemp(:) ) - rate(:,167) = 7.26e-11_r8 * exp_fac(:) - rate(:,168) = 4.64e-11_r8 * exp_fac(:) - rate(:,175) = 8.1e-11_r8 * exp( -30._r8 * itemp(:) ) - rate(:,176) = 7.1e-12_r8 * exp( -1270._r8 * itemp(:) ) - rate(:,177) = 3.05e-11_r8 * exp( -2270._r8 * itemp(:) ) - rate(:,178) = 1.1e-11_r8 * exp( -980._r8 * itemp(:) ) - exp_fac(:) = exp( 270._r8 * itemp(:) ) - rate(:,179) = 1.4e-11_r8 * exp_fac(:) - rate(:,193) = 7.4e-12_r8 * exp_fac(:) - rate(:,294) = 8.1e-12_r8 * exp_fac(:) - rate(:,180) = 3.6e-11_r8 * exp( -375._r8 * itemp(:) ) - rate(:,181) = 2.3e-11_r8 * exp( -200._r8 * itemp(:) ) - rate(:,182) = 3.3e-12_r8 * exp( -115._r8 * itemp(:) ) - rate(:,184) = 1e-12_r8 * exp( -1590._r8 * itemp(:) ) - rate(:,185) = 3.5e-13_r8 * exp( -1370._r8 * itemp(:) ) - exp_fac(:) = exp( 290._r8 * itemp(:) ) - rate(:,186) = 2.6e-12_r8 * exp_fac(:) - rate(:,187) = 6.4e-12_r8 * exp_fac(:) - rate(:,217) = 4.1e-13_r8 * exp_fac(:) - rate(:,397) = 7.5e-12_r8 * exp_fac(:) - rate(:,411) = 7.5e-12_r8 * exp_fac(:) - rate(:,414) = 7.5e-12_r8 * exp_fac(:) - rate(:,417) = 7.5e-12_r8 * exp_fac(:) - rate(:,188) = 6.5e-12_r8 * exp( 135._r8 * itemp(:) ) - exp_fac(:) = exp( -840._r8 * itemp(:) ) - rate(:,190) = 3.6e-12_r8 * exp_fac(:) - rate(:,239) = 2e-12_r8 * exp_fac(:) - rate(:,191) = 1.2e-12_r8 * exp( -330._r8 * itemp(:) ) - rate(:,192) = 2.8e-11_r8 * exp( 85._r8 * itemp(:) ) - exp_fac(:) = exp( 230._r8 * itemp(:) ) - rate(:,194) = 6e-13_r8 * exp_fac(:) - rate(:,214) = 1.5e-12_r8 * exp_fac(:) - rate(:,222) = 1.9e-11_r8 * exp_fac(:) - rate(:,195) = 1e-11_r8 * exp( -3300._r8 * itemp(:) ) - rate(:,196) = 1.8e-12_r8 * exp( -250._r8 * itemp(:) ) - rate(:,197) = 3.4e-12_r8 * exp( -130._r8 * itemp(:) ) - exp_fac(:) = exp( -500._r8 * itemp(:) ) - rate(:,199) = 3e-12_r8 * exp_fac(:) - rate(:,233) = 1.4e-10_r8 * exp_fac(:) - exp_fac(:) = exp( -800._r8 * itemp(:) ) - rate(:,211) = 1.7e-11_r8 * exp_fac(:) - rate(:,238) = 6.3e-12_r8 * exp_fac(:) - rate(:,212) = 4.8e-12_r8 * exp( -310._r8 * itemp(:) ) - rate(:,213) = 1.6e-11_r8 * exp( -780._r8 * itemp(:) ) - rate(:,215) = 9.5e-13_r8 * exp( 550._r8 * itemp(:) ) - rate(:,218) = 4.5e-12_r8 * exp( 460._r8 * itemp(:) ) - rate(:,221) = 1.9e-11_r8 * exp( 215._r8 * itemp(:) ) - rate(:,226) = 1.2e-10_r8 * exp( -430._r8 * itemp(:) ) - rate(:,232) = 1.6e-10_r8 * exp( -260._r8 * itemp(:) ) - exp_fac(:) = exp( 0._r8 * itemp(:) ) - rate(:,234) = 1.4e-11_r8 * exp_fac(:) - rate(:,236) = 2.14e-11_r8 * exp_fac(:) - rate(:,237) = 1.9e-10_r8 * exp_fac(:) - rate(:,250) = 2.57e-10_r8 * exp_fac(:) - rate(:,251) = 1.8e-10_r8 * exp_fac(:) - rate(:,252) = 1.794e-10_r8 * exp_fac(:) - rate(:,253) = 1.3e-10_r8 * exp_fac(:) - rate(:,254) = 7.65e-11_r8 * exp_fac(:) - rate(:,267) = 4e-13_r8 * exp_fac(:) - rate(:,271) = 1.31e-10_r8 * exp_fac(:) - rate(:,272) = 3.5e-11_r8 * exp_fac(:) - rate(:,273) = 9e-12_r8 * exp_fac(:) - rate(:,280) = 6.8e-14_r8 * exp_fac(:) - rate(:,281) = 2e-13_r8 * exp_fac(:) - rate(:,296) = 1e-12_r8 * exp_fac(:) - rate(:,300) = 1e-14_r8 * exp_fac(:) - rate(:,301) = 1e-11_r8 * exp_fac(:) - rate(:,302) = 1.15e-11_r8 * exp_fac(:) - rate(:,303) = 4e-14_r8 * exp_fac(:) - rate(:,316) = 3e-12_r8 * exp_fac(:) - rate(:,317) = 6.7e-13_r8 * exp_fac(:) - rate(:,327) = 3.5e-13_r8 * exp_fac(:) - rate(:,328) = 5.4e-11_r8 * exp_fac(:) - rate(:,331) = 2e-12_r8 * exp_fac(:) - rate(:,332) = 1.4e-11_r8 * exp_fac(:) - rate(:,335) = 2.4e-12_r8 * exp_fac(:) - rate(:,346) = 5e-12_r8 * exp_fac(:) - rate(:,356) = 1.6e-12_r8 * exp_fac(:) - rate(:,358) = 6.7e-12_r8 * exp_fac(:) - rate(:,361) = 3.5e-12_r8 * exp_fac(:) - rate(:,364) = 1.3e-11_r8 * exp_fac(:) - rate(:,365) = 1.4e-11_r8 * exp_fac(:) - rate(:,369) = 2.4e-12_r8 * exp_fac(:) - rate(:,370) = 1.4e-11_r8 * exp_fac(:) - rate(:,375) = 2.4e-12_r8 * exp_fac(:) - rate(:,376) = 4e-11_r8 * exp_fac(:) - rate(:,377) = 4e-11_r8 * exp_fac(:) - rate(:,379) = 1.4e-11_r8 * exp_fac(:) - rate(:,383) = 2.4e-12_r8 * exp_fac(:) - rate(:,384) = 4e-11_r8 * exp_fac(:) - rate(:,388) = 7e-11_r8 * exp_fac(:) - rate(:,389) = 1e-10_r8 * exp_fac(:) - rate(:,394) = 2.4e-12_r8 * exp_fac(:) - rate(:,409) = 4.7e-11_r8 * exp_fac(:) - rate(:,422) = 2.1e-12_r8 * exp_fac(:) - rate(:,423) = 2.8e-13_r8 * exp_fac(:) - rate(:,431) = 1.7e-11_r8 * exp_fac(:) - rate(:,437) = 8.4e-11_r8 * exp_fac(:) - rate(:,439) = 1.9e-11_r8 * exp_fac(:) - rate(:,440) = 1.2e-14_r8 * exp_fac(:) - rate(:,441) = 2e-10_r8 * exp_fac(:) - rate(:,448) = 2.4e-12_r8 * exp_fac(:) - rate(:,449) = 2e-11_r8 * exp_fac(:) - rate(:,453) = 2.3e-11_r8 * exp_fac(:) - rate(:,454) = 2e-11_r8 * exp_fac(:) - rate(:,458) = 3.3e-11_r8 * exp_fac(:) - rate(:,459) = 1e-12_r8 * exp_fac(:) - rate(:,460) = 5.7e-11_r8 * exp_fac(:) - rate(:,461) = 3.4e-11_r8 * exp_fac(:) - rate(:,466) = 2.3e-12_r8 * exp_fac(:) - rate(:,468) = 1.2e-11_r8 * exp_fac(:) - rate(:,469) = 5.7e-11_r8 * exp_fac(:) - rate(:,470) = 2.8e-11_r8 * exp_fac(:) - rate(:,471) = 6.6e-11_r8 * exp_fac(:) - rate(:,472) = 1.4e-11_r8 * exp_fac(:) - rate(:,475) = 1.9e-12_r8 * exp_fac(:) - rate(:,488) = 6.34e-08_r8 * exp_fac(:) - rate(:,494) = 1.9e-11_r8 * exp_fac(:) - rate(:,497) = 1.2e-14_r8 * exp_fac(:) - rate(:,498) = 2e-10_r8 * exp_fac(:) - rate(:,509) = 1.34e-11_r8 * exp_fac(:) - rate(:,515) = 1.34e-11_r8 * exp_fac(:) - rate(:,519) = 1.7e-11_r8 * exp_fac(:) - rate(:,539) = 2.31e-07_r8 * exp_fac(:) - rate(:,540) = 2.31e-06_r8 * exp_fac(:) - rate(:,541) = 4.63e-07_r8 * exp_fac(:) - exp_fac(:) = exp( 400._r8 * itemp(:) ) - rate(:,235) = 6e-12_r8 * exp_fac(:) - rate(:,333) = 5e-13_r8 * exp_fac(:) - rate(:,366) = 5e-13_r8 * exp_fac(:) - rate(:,371) = 5e-13_r8 * exp_fac(:) - rate(:,380) = 5e-13_r8 * exp_fac(:) - rate(:,391) = 5e-13_r8 * exp_fac(:) - rate(:,240) = 1.46e-11_r8 * exp( -1040._r8 * itemp(:) ) - rate(:,241) = 1.42e-12_r8 * exp( -1150._r8 * itemp(:) ) - exp_fac(:) = exp( -1520._r8 * itemp(:) ) - rate(:,242) = 1.64e-12_r8 * exp_fac(:) - rate(:,352) = 8.5e-16_r8 * exp_fac(:) - exp_fac(:) = exp( -1100._r8 * itemp(:) ) - rate(:,243) = 2.03e-11_r8 * exp_fac(:) - rate(:,474) = 3.4e-12_r8 * exp_fac(:) - rate(:,244) = 1.96e-12_r8 * exp( -1200._r8 * itemp(:) ) - rate(:,245) = 4.85e-12_r8 * exp( -850._r8 * itemp(:) ) - rate(:,246) = 9e-13_r8 * exp( -360._r8 * itemp(:) ) - exp_fac(:) = exp( -1600._r8 * itemp(:) ) - rate(:,247) = 1.25e-12_r8 * exp_fac(:) - rate(:,257) = 3.4e-11_r8 * exp_fac(:) - rate(:,248) = 1.3e-12_r8 * exp( -1770._r8 * itemp(:) ) - rate(:,249) = 9.2e-13_r8 * exp( -1560._r8 * itemp(:) ) - rate(:,255) = 9.7e-15_r8 * exp( 625._r8 * itemp(:) ) - rate(:,256) = 6e-13_r8 * exp( -2058._r8 * itemp(:) ) - rate(:,259) = 5e-13_r8 * exp( -424._r8 * itemp(:) ) - rate(:,260) = 1.9e-14_r8 * exp( 706._r8 * itemp(:) ) - rate(:,261) = 4.1e-13_r8 * exp( 750._r8 * itemp(:) ) - exp_fac(:) = exp( 300._r8 * itemp(:) ) - rate(:,262) = 2.8e-12_r8 * exp_fac(:) - rate(:,323) = 2.9e-12_r8 * exp_fac(:) - rate(:,263) = 2.9e-12_r8 * exp( -345._r8 * itemp(:) ) - rate(:,265) = 2.45e-12_r8 * exp( -1775._r8 * itemp(:) ) - exp_fac(:) = exp( 700._r8 * itemp(:) ) - rate(:,268) = 7.5e-13_r8 * exp_fac(:) - rate(:,282) = 7.5e-13_r8 * exp_fac(:) - rate(:,297) = 7.5e-13_r8 * exp_fac(:) - rate(:,310) = 7.5e-13_r8 * exp_fac(:) - rate(:,318) = 7.5e-13_r8 * exp_fac(:) - rate(:,322) = 8.6e-13_r8 * exp_fac(:) - rate(:,334) = 8e-13_r8 * exp_fac(:) - rate(:,347) = 7.5e-13_r8 * exp_fac(:) - rate(:,357) = 7.5e-13_r8 * exp_fac(:) - rate(:,367) = 8e-13_r8 * exp_fac(:) - rate(:,372) = 8e-13_r8 * exp_fac(:) - rate(:,381) = 8e-13_r8 * exp_fac(:) - rate(:,392) = 8e-13_r8 * exp_fac(:) - rate(:,399) = 7.5e-13_r8 * exp_fac(:) - rate(:,403) = 7.5e-13_r8 * exp_fac(:) - rate(:,406) = 7.5e-13_r8 * exp_fac(:) - rate(:,419) = 7.5e-13_r8 * exp_fac(:) - rate(:,426) = 7.5e-13_r8 * exp_fac(:) - rate(:,432) = 7.5e-13_r8 * exp_fac(:) - rate(:,435) = 7.5e-13_r8 * exp_fac(:) - rate(:,446) = 7.5e-13_r8 * exp_fac(:) - rate(:,451) = 7.5e-13_r8 * exp_fac(:) - rate(:,456) = 7.5e-13_r8 * exp_fac(:) - rate(:,500) = 7.5e-13_r8 * exp_fac(:) - rate(:,507) = 7.5e-13_r8 * exp_fac(:) - rate(:,517) = 7.5e-13_r8 * exp_fac(:) - rate(:,520) = 7.5e-13_r8 * exp_fac(:) - rate(:,269) = 2.4e+12_r8 * exp( -7000._r8 * itemp(:) ) - rate(:,270) = 2.6e-12_r8 * exp( 265._r8 * itemp(:) ) - rate(:,274) = 1.08e-10_r8 * exp( 105._r8 * itemp(:) ) - rate(:,279) = 1.2e-14_r8 * exp( -2630._r8 * itemp(:) ) - exp_fac(:) = exp( 365._r8 * itemp(:) ) - rate(:,283) = 2.6e-12_r8 * exp_fac(:) - rate(:,400) = 2.6e-12_r8 * exp_fac(:) - rate(:,405) = 2.6e-12_r8 * exp_fac(:) - rate(:,407) = 2.6e-12_r8 * exp_fac(:) - rate(:,420) = 2.6e-12_r8 * exp_fac(:) - rate(:,427) = 2.6e-12_r8 * exp_fac(:) - rate(:,433) = 2.6e-12_r8 * exp_fac(:) - rate(:,436) = 2.6e-12_r8 * exp_fac(:) - rate(:,501) = 2.6e-12_r8 * exp_fac(:) - rate(:,508) = 2.6e-12_r8 * exp_fac(:) - rate(:,518) = 2.6e-12_r8 * exp_fac(:) - rate(:,521) = 2.6e-12_r8 * exp_fac(:) - rate(:,284) = 6.9e-12_r8 * exp( -230._r8 * itemp(:) ) - rate(:,286) = 7.2e-11_r8 * exp( -70._r8 * itemp(:) ) - rate(:,287) = 7.66e-12_r8 * exp( -1020._r8 * itemp(:) ) - exp_fac(:) = exp( -1900._r8 * itemp(:) ) - rate(:,288) = 1.4e-12_r8 * exp_fac(:) - rate(:,308) = 6.5e-15_r8 * exp_fac(:) - exp_fac(:) = exp( 350._r8 * itemp(:) ) - rate(:,289) = 4.63e-12_r8 * exp_fac(:) - rate(:,504) = 2.7e-12_r8 * exp_fac(:) - rate(:,290) = 7.8e-13_r8 * exp( -1050._r8 * itemp(:) ) - exp_fac(:) = exp( 500._r8 * itemp(:) ) - rate(:,291) = 2.9e-12_r8 * exp_fac(:) - rate(:,292) = 2e-12_r8 * exp_fac(:) - rate(:,321) = 7.1e-13_r8 * exp_fac(:) - rate(:,342) = 2e-12_r8 * exp_fac(:) - rate(:,445) = 2e-12_r8 * exp_fac(:) - rate(:,450) = 2e-12_r8 * exp_fac(:) - rate(:,455) = 2e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 1040._r8 * itemp(:) ) - rate(:,293) = 4.3e-13_r8 * exp_fac(:) - rate(:,343) = 4.3e-13_r8 * exp_fac(:) - rate(:,396) = 4.3e-13_r8 * exp_fac(:) - rate(:,410) = 4.3e-13_r8 * exp_fac(:) - rate(:,413) = 4.3e-13_r8 * exp_fac(:) - rate(:,416) = 4.3e-13_r8 * exp_fac(:) - rate(:,295) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) - rate(:,299) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) - rate(:,307) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) - rate(:,309) = 3.75e-13_r8 * exp( -40._r8 * itemp(:) ) - rate(:,313) = 9.19e-12_r8 * exp( -630._r8 * itemp(:) ) - rate(:,314) = 1.4e-12_r8 * exp( -1860._r8 * itemp(:) ) - rate(:,315) = 8.4e-13_r8 * exp( 830._r8 * itemp(:) ) - rate(:,329) = 4.8e-12_r8 * exp( 120._r8 * itemp(:) ) - rate(:,330) = 5.1e-14_r8 * exp( 693._r8 * itemp(:) ) - exp_fac(:) = exp( 360._r8 * itemp(:) ) - rate(:,336) = 2.7e-12_r8 * exp_fac(:) - rate(:,337) = 1.3e-13_r8 * exp_fac(:) - rate(:,339) = 9.6e-12_r8 * exp_fac(:) - rate(:,345) = 5.3e-12_r8 * exp_fac(:) - rate(:,382) = 2.7e-12_r8 * exp_fac(:) - rate(:,393) = 2.7e-12_r8 * exp_fac(:) - rate(:,496) = 2.7e-12_r8 * exp_fac(:) - rate(:,512) = 2.7e-12_r8 * exp_fac(:) - rate(:,338) = 1.5e-15_r8 * exp( -2100._r8 * itemp(:) ) - exp_fac(:) = exp( 530._r8 * itemp(:) ) - rate(:,341) = 4.6e-12_r8 * exp_fac(:) - rate(:,344) = 2.3e-12_r8 * exp_fac(:) - rate(:,349) = 2.3e-12_r8 * exp( -170._r8 * itemp(:) ) - rate(:,353) = 4.13e-12_r8 * exp( 452._r8 * itemp(:) ) - rate(:,359) = 5.4e-14_r8 * exp( 870._r8 * itemp(:) ) - exp_fac(:) = exp( 175._r8 * itemp(:) ) - rate(:,362) = 1.86e-11_r8 * exp_fac(:) - rate(:,363) = 1.86e-11_r8 * exp_fac(:) - rate(:,373) = 1.6e+09_r8 * exp( -8300._r8 * itemp(:) ) - exp_fac(:) = exp( -446._r8 * itemp(:) ) - rate(:,378) = 3.03e-12_r8 * exp_fac(:) - rate(:,502) = 3.03e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 410._r8 * itemp(:) ) - rate(:,386) = 2.54e-11_r8 * exp_fac(:) - rate(:,506) = 2.54e-11_r8 * exp_fac(:) - rate(:,390) = 1.3e-12_r8 * exp( 640._r8 * itemp(:) ) - exp_fac(:) = exp( -193._r8 * itemp(:) ) - rate(:,398) = 2.3e-12_r8 * exp_fac(:) - rate(:,499) = 2.3e-12_r8 * exp_fac(:) - rate(:,402) = 5.9e-12_r8 * exp( 225._r8 * itemp(:) ) - rate(:,421) = 4.7e-13_r8 * exp( 1220._r8 * itemp(:) ) - exp_fac(:) = exp( 352._r8 * itemp(:) ) - rate(:,429) = 1.7e-12_r8 * exp_fac(:) - rate(:,516) = 1.7e-12_r8 * exp_fac(:) - exp_fac(:) = exp( 490._r8 * itemp(:) ) - rate(:,442) = 1.2e-12_r8 * exp_fac(:) - rate(:,510) = 1.2e-12_r8 * exp_fac(:) - exp_fac(:) = exp( -580._r8 * itemp(:) ) - rate(:,443) = 6.3e-16_r8 * exp_fac(:) - rate(:,513) = 6.3e-16_r8 * exp_fac(:) - exp_fac(:) = exp( 440._r8 * itemp(:) ) - rate(:,444) = 1.2e-11_r8 * exp_fac(:) - rate(:,514) = 1.2e-11_r8 * exp_fac(:) - rate(:,462) = 1.9e-13_r8 * exp( 520._r8 * itemp(:) ) - rate(:,463) = 1.1e-11_r8 * exp( -280._r8 * itemp(:) ) - rate(:,464) = 2.1e-11_r8 * exp( -2200._r8 * itemp(:) ) - rate(:,465) = 7.2e-14_r8 * exp( -1070._r8 * itemp(:) ) - rate(:,473) = 1.6e-13_r8 * exp( -2280._r8 * itemp(:) ) - rate(:,476) = 2.6e-11_r8 * exp( 330._r8 * itemp(:) ) - rate(:,479) = 1.7e-12_r8 * exp( -710._r8 * itemp(:) ) - exp_fac(:) = exp( 1300._r8 * itemp(:) ) - rate(:,495) = 2.75e-13_r8 * exp_fac(:) - rate(:,503) = 2.12e-13_r8 * exp_fac(:) - rate(:,511) = 2.6e-13_r8 * exp_fac(:) - - itemp(:) = 300._r8 * itemp(:) - - n = ncol*pver - - ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 - kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) - call jpl( rate(:,138), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 6.9e-31_r8 * itemp(:)**1._r8 - kinf(:) = 2.6e-11_r8 - call jpl( rate(:,148), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.5e-31_r8 * itemp(:)**1.8_r8 - kinf(:) = 2.2e-11_r8 * itemp(:)**0.7_r8 - call jpl( rate(:,158), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9e-32_r8 * itemp(:)**1.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,166), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.9e-31_r8 * itemp(:)**3.4_r8 - kinf(:) = 4e-12_r8 * itemp(:)**0.3_r8 - call jpl( rate(:,169), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.4e-30_r8 * itemp(:)**3._r8 - kinf(:) = 1.6e-12_r8 * itemp(:)**(-0.1_r8) - call jpl( rate(:,170), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.8e-30_r8 * itemp(:)**3._r8 - kinf(:) = 2.8e-11_r8 - call jpl( rate(:,171), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.8e-31_r8 * itemp(:)**3.4_r8 - kinf(:) = 1.5e-11_r8 * itemp(:)**1.9_r8 - call jpl( rate(:,189), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.9e-32_r8 * itemp(:)**3.6_r8 - kinf(:) = 3.7e-12_r8 * itemp(:)**1.6_r8 - call jpl( rate(:,209), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 5.2e-31_r8 * itemp(:)**3.2_r8 - kinf(:) = 6.9e-12_r8 * itemp(:)**2.9_r8 - call jpl( rate(:,220), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 6.1e-33_r8 * itemp(:)**1.5_r8 - kinf(:) = 9.8e-15_r8 * itemp(:)**(-4.6_r8) - call jpl( rate(:,266), m, 0.8_r8, ko, kinf, n ) - - ko(:) = 5.2e-30_r8 * itemp(:)**2.4_r8 - kinf(:) = 2.2e-10_r8 * itemp(:)**0.7_r8 - call jpl( rate(:,276), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 5.5e-30_r8 - kinf(:) = 8.3e-13_r8 * itemp(:)**(-2._r8) - call jpl( rate(:,277), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 1.6e-29_r8 * itemp(:)**3.3_r8 - kinf(:) = 3.1e-10_r8 * itemp(:) - call jpl( rate(:,278), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 8.6e-29_r8 * itemp(:)**3.1_r8 - kinf(:) = 9e-12_r8 * itemp(:)**0.85_r8 - call jpl( rate(:,304), m, 0.48_r8, ko, kinf, n ) - - ko(:) = 7.3e-29_r8 * itemp(:)**4.1_r8 - kinf(:) = 9.5e-12_r8 * itemp(:)**1.6_r8 - call jpl( rate(:,305), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,325), m, 0.5_r8, ko, kinf, n ) - - ko(:) = 8e-27_r8 * itemp(:)**3.5_r8 - kinf(:) = 3e-11_r8 - call jpl( rate(:,351), m, 0.5_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,354), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,412), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,415), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,418), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 9.7e-29_r8 * itemp(:)**5.6_r8 - kinf(:) = 9.3e-12_r8 * itemp(:)**1.5_r8 - call jpl( rate(:,425), m, 0.6_r8, ko, kinf, n ) - - ko(:) = 2.9e-31_r8 * itemp(:)**4.1_r8 - kinf(:) = 1.7e-12_r8 * itemp(:)**(-0.2_r8) - call jpl( rate(:,467), m, 0.6_r8, ko, kinf, n ) - - end subroutine setrxt - - - subroutine setrxt_hrates( rate, temp, m, ncol, kbot ) - - use ppgrid, only : pcols, pver - - - use chem_mods, only : rxntot - use mo_jpl, only : jpl - - implicit none - -!------------------------------------------------------- -! ... dummy arguments -!------------------------------------------------------- - integer, intent(in) :: ncol - integer, intent(in) :: kbot - real(r8), intent(in) :: temp(pcols,pver) - real(r8), intent(in) :: m(ncol*pver) - real(r8), intent(inout) :: rate(ncol*pver,max(1,rxntot)) - -!------------------------------------------------------- -! ... local variables -!------------------------------------------------------- - integer :: n - integer :: offset - integer :: k - real(r8) :: itemp(ncol*kbot) - real(r8) :: exp_fac(ncol*kbot) - real(r8) :: ko(ncol*kbot) - real(r8) :: kinf(ncol*kbot) - real(r8) :: wrk(ncol*kbot) - - n = ncol*kbot - - rate(:n,135) = 6.9e-12_r8 - - do k = 1,kbot - offset = (k-1)*ncol - itemp(offset+1:offset+ncol) = 1._r8 / temp(:ncol,k) - end do - - rate(:n,127) = 2.15e-11_r8 * exp( 110._r8 * itemp(:) ) - rate(:n,130) = 8e-12_r8 * exp( -2060._r8 * itemp(:) ) - rate(:n,139) = 3e-11_r8 * exp( 200._r8 * itemp(:) ) - rate(:n,140) = 1e-14_r8 * exp( -490._r8 * itemp(:) ) - rate(:n,141) = 1.4e-10_r8 * exp( -470._r8 * itemp(:) ) - rate(:n,144) = 4.8e-11_r8 * exp( 250._r8 * itemp(:) ) - rate(:n,145) = 1.8e-11_r8 * exp( 180._r8 * itemp(:) ) - rate(:n,146) = 1.7e-12_r8 * exp( -940._r8 * itemp(:) ) - rate(:n,151) = 2.1e-11_r8 * exp( 100._r8 * itemp(:) ) - rate(:n,155) = 3.3e-12_r8 * exp( -3150._r8 * itemp(:) ) - rate(:n,156) = 5.1e-12_r8 * exp( 210._r8 * itemp(:) ) - rate(:n,164) = 3.44e-12_r8 * exp( 260._r8 * itemp(:) ) - rate(:n,165) = 3e-12_r8 * exp( -1500._r8 * itemp(:) ) - - itemp(:) = 300._r8 * itemp(:) - - ko(:) = 5.3e-32_r8 * itemp(:)**1.8_r8 - kinf(:) = 9.5e-11_r8 * itemp(:)**(-0.4_r8) - call jpl( wrk, m, 0.6_r8, ko, kinf, n ) - rate(:n,138) = wrk(:) - - - - - - - - - - - - - - - - - - - - - - - - - end subroutine setrxt_hrates - - end module mo_setrxt diff --git a/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.doc b/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.doc index e52bae21db..a1bd933b2c 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.doc +++ b/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.doc @@ -10,148 +10,149 @@ ( 7) BRONO2 (BrONO2) ( 8) BRY ( 9) C2H4 - ( 10) C2H5O2 - ( 11) C2H5OH - ( 12) C2H5OOH - ( 13) C2H6 - ( 14) C3H6 - ( 15) C3H7O2 - ( 16) C3H7OOH - ( 17) C3H8 - ( 18) CCL4 (CCl4) - ( 19) CF2CLBR (CF2ClBr) - ( 20) CF3BR (CF3Br) - ( 21) CFC11 (CFCl3) - ( 22) CFC113 (CCl2FCClF2) - ( 23) CFC114 (CClF2CClF2) - ( 24) CFC115 (CClF2CF3) - ( 25) CFC12 (CF2Cl2) - ( 26) CH2BR2 (CH2Br2) - ( 27) CH2O - ( 28) CH3BR (CH3Br) - ( 29) CH3CCL3 (CH3CCl3) - ( 30) CH3CHO - ( 31) CH3CL (CH3Cl) - ( 32) CH3CO3 - ( 33) CH3COCH3 - ( 34) CH3COCHO - ( 35) CH3COOH - ( 36) CH3COOOH - ( 37) CH3O2 - ( 38) CH3OH - ( 39) CH3OOH - ( 40) CH4 - ( 41) CHBR3 (CHBr3) - ( 42) CL (Cl) - ( 43) CL2 (Cl2) - ( 44) CL2O2 (Cl2O2) - ( 45) CLO (ClO) - ( 46) CLONO2 (ClONO2) - ( 47) CLY - ( 48) CO - ( 49) CO2 - ( 50) COF2 - ( 51) COFCL (COFCl) - ( 52) DMS (CH3SCH3) - ( 53) dst_a1 (AlSiO5) - ( 54) dst_a2 (AlSiO5) - ( 55) dst_a3 (AlSiO5) - ( 56) EO (HOCH2CH2O) - ( 57) EO2 (HOCH2CH2O2) - ( 58) EOOH (HOCH2CH2OOH) - ( 59) F - ( 60) GLYALD (HOCH2CHO) - ( 61) GLYOXAL (C2H2O2) - ( 62) H - ( 63) H2 - ( 64) H2402 (CBrF2CBrF2) - ( 65) H2O2 - ( 66) H2SO4 (H2SO4) - ( 67) HBR (HBr) - ( 68) HCFC141B (CH3CCl2F) - ( 69) HCFC142B (CH3CClF2) - ( 70) HCFC22 (CHF2Cl) - ( 71) HCL (HCl) - ( 72) HF - ( 73) HNO3 - ( 74) HO2NO2 - ( 75) HOBR (HOBr) - ( 76) HOCL (HOCl) - ( 77) HYAC (CH3COCH2OH) - ( 78) HYDRALD (HOCH2CCH3CHCHO) - ( 79) ISOP (C5H8) - ( 80) ISOPNO3 (CH2CHCCH3OOCH2ONO2) - ( 81) ISOPO2 (HOCH2COOCH3CHCH2) - ( 82) ISOPOOH (HOCH2COOHCH3CHCH2) - ( 83) MACR (CH2CCH3CHO) - ( 84) MACRO2 (CH3COCHO2CH2OH) - ( 85) MACROOH (CH3COCHOOHCH2OH) - ( 86) MCO3 (CH2CCH3CO3) - ( 87) MPAN (CH2CCH3CO3NO2) - ( 88) MVK (CH2CHCOCH3) - ( 89) N - ( 90) N2O - ( 91) N2O5 - ( 92) ncl_a1 (NaCl) - ( 93) ncl_a2 (NaCl) - ( 94) ncl_a3 (NaCl) - ( 95) NH3 - ( 96) NH4 - ( 97) NO - ( 98) NO2 - ( 99) NO3 - (100) NOA (CH3COCH2ONO2) - (101) num_a1 (H) - (102) num_a2 (H) - (103) num_a3 (H) - (104) num_a4 (H) - (105) num_a5 (H) - (106) O - (107) O2 - (108) O3 - (109) OCLO (OClO) - (110) OCS (OCS) - (111) OH - (112) ONITR (C4H7NO4) - (113) PAN (CH3CO3NO2) - (114) PO2 (C3H6OHO2) - (115) pom_a1 (C) - (116) pom_a4 (C) - (117) POOH (C3H6OHOOH) - (118) RO2 (CH3COCH2O2) - (119) ROOH (CH3COCH2OOH) - (120) S (S) - (121) SF6 - (122) SO (SO) - (123) SO2 - (124) SO3 (SO3) - (125) so4_a1 (NH4HSO4) - (126) so4_a2 (NH4HSO4) - (127) so4_a3 (NH4HSO4) - (128) so4_a5 (NH4HSO4) - (129) soa_a1 (C) - (130) soa_a2 (C) - (131) SOAE (C) - (132) SOAG (C) - (133) TERP (C10H16) - (134) XO2 (HOCH2COOCH3CHOHCHO) - (135) XOOH (HOCH2COOHCH3CHOHCHO) - (136) NHDEP (N) - (137) NDEP (N) - (138) e (E) - (139) HO2 - (140) N2D (N) - (141) N2p (N2) - (142) NOp (NO) - (143) Np (N) - (144) O1D (O) - (145) O2_1D (O2) - (146) O2_1S (O2) - (147) O2p (O2) - (148) Op (O) - (149) Op2D (O) - (150) Op2P (O) - (151) H2O + ( 10) C2H5OH + ( 11) C2H5OOH + ( 12) C2H6 + ( 13) C3H6 + ( 14) C3H7OOH + ( 15) C3H8 + ( 16) CCL4 (CCl4) + ( 17) CF2CLBR (CF2ClBr) + ( 18) CF3BR (CF3Br) + ( 19) CFC11 (CFCl3) + ( 20) CFC113 (CCl2FCClF2) + ( 21) CFC114 (CClF2CClF2) + ( 22) CFC115 (CClF2CF3) + ( 23) CFC12 (CF2Cl2) + ( 24) CH2BR2 (CH2Br2) + ( 25) CH2O + ( 26) CH3BR (CH3Br) + ( 27) CH3CCL3 (CH3CCl3) + ( 28) CH3CHO + ( 29) CH3CL (CH3Cl) + ( 30) CH3COCH3 + ( 31) CH3COCHO + ( 32) CH3COOH + ( 33) CH3COOOH + ( 34) CH3O2 + ( 35) CH3OH + ( 36) CH3OOH + ( 37) CH4 + ( 38) CHBR3 (CHBr3) + ( 39) CL (Cl) + ( 40) CL2 (Cl2) + ( 41) CL2O2 (Cl2O2) + ( 42) CLO (ClO) + ( 43) CLONO2 (ClONO2) + ( 44) CLY + ( 45) CO + ( 46) CO2 + ( 47) COF2 + ( 48) COFCL (COFCl) + ( 49) DMS (CH3SCH3) + ( 50) dst_a1 (AlSiO5) + ( 51) dst_a2 (AlSiO5) + ( 52) dst_a3 (AlSiO5) + ( 53) EOOH (HOCH2CH2OOH) + ( 54) F + ( 55) GLYALD (HOCH2CHO) + ( 56) GLYOXAL (C2H2O2) + ( 57) H + ( 58) H2 + ( 59) H2402 (CBrF2CBrF2) + ( 60) H2O2 + ( 61) H2SO4 (H2SO4) + ( 62) HBR (HBr) + ( 63) HCFC141B (CH3CCl2F) + ( 64) HCFC142B (CH3CClF2) + ( 65) HCFC22 (CHF2Cl) + ( 66) HCL (HCl) + ( 67) HF + ( 68) HNO3 + ( 69) HO2NO2 + ( 70) HOBR (HOBr) + ( 71) HOCL (HOCl) + ( 72) HYAC (CH3COCH2OH) + ( 73) HYDRALD (HOCH2CCH3CHCHO) + ( 74) ISOP (C5H8) + ( 75) ISOPNO3 (CH2CHCCH3OOCH2ONO2) + ( 76) ISOPOOH (HOCH2COOHCH3CHCH2) + ( 77) MACR (CH2CCH3CHO) + ( 78) MACROOH (CH3COCHOOHCH2OH) + ( 79) MPAN (CH2CCH3CO3NO2) + ( 80) MVK (CH2CHCOCH3) + ( 81) N + ( 82) N2O + ( 83) N2O5 + ( 84) ncl_a1 (NaCl) + ( 85) ncl_a2 (NaCl) + ( 86) ncl_a3 (NaCl) + ( 87) NDEP (N) + ( 88) NH3 + ( 89) NH4 + ( 90) NHDEP (N) + ( 91) NO + ( 92) NO2 + ( 93) NO3 + ( 94) NOA (CH3COCH2ONO2) + ( 95) num_a1 (H) + ( 96) num_a2 (H) + ( 97) num_a3 (H) + ( 98) num_a4 (H) + ( 99) num_a5 (H) + (100) O + (101) O2 + (102) O3 + (103) O3S (O3) + (104) OCLO (OClO) + (105) OCS (OCS) + (106) OH + (107) ONITR (C4H7NO4) + (108) PAN (CH3CO3NO2) + (109) pom_a1 (C) + (110) pom_a4 (C) + (111) POOH (C3H6OHOOH) + (112) ROOH (CH3COCH2OOH) + (113) S (S) + (114) SF6 + (115) SO (SO) + (116) SO2 + (117) SO3 (SO3) + (118) so4_a1 (NH4HSO4) + (119) so4_a2 (NH4HSO4) + (120) so4_a3 (NH4HSO4) + (121) so4_a5 (NH4HSO4) + (122) soa_a1 (C) + (123) soa_a2 (C) + (124) SOAE (C) + (125) SOAG (C) + (126) TERP (C10H16) + (127) XOOH (HOCH2COOHCH3CHOHCHO) + (128) C2H5O2 + (129) C3H7O2 + (130) CH3CO3 + (131) e (E) + (132) EO (HOCH2CH2O) + (133) EO2 (HOCH2CH2O2) + (134) HO2 + (135) ISOPO2 (HOCH2COOCH3CHCH2) + (136) MACRO2 (CH3COCHO2CH2OH) + (137) MCO3 (CH2CCH3CO3) + (138) N2D (N) + (139) N2p (N2) + (140) NOp (NO) + (141) Np (N) + (142) O1D (O) + (143) O2_1D (O2) + (144) O2_1S (O2) + (145) O2p (O2) + (146) Op (O) + (147) Op2D (O) + (148) Op2P (O) + (149) PO2 (C3H6OHO2) + (150) RO2 (CH3COCH2O2) + (151) XO2 (HOCH2COOCH3CHOHCHO) + (152) H2O Invariant species @@ -167,8 +168,8 @@ Class List ========== Explicit -------- - ( 1) NHDEP - ( 2) NDEP + ( 1) NDEP + ( 2) NHDEP Implicit -------- @@ -181,146 +182,147 @@ Class List ( 7) BRONO2 ( 8) BRY ( 9) C2H4 - ( 10) C2H5O2 - ( 11) C2H5OH - ( 12) C2H5OOH - ( 13) C2H6 - ( 14) C3H6 - ( 15) C3H7O2 - ( 16) C3H7OOH - ( 17) C3H8 - ( 18) CCL4 - ( 19) CF2CLBR - ( 20) CF3BR - ( 21) CFC11 - ( 22) CFC113 - ( 23) CFC114 - ( 24) CFC115 - ( 25) CFC12 - ( 26) CH2BR2 - ( 27) CH2O - ( 28) CH3BR - ( 29) CH3CCL3 - ( 30) CH3CHO - ( 31) CH3CL - ( 32) CH3CO3 - ( 33) CH3COCH3 - ( 34) CH3COCHO - ( 35) CH3COOH - ( 36) CH3COOOH - ( 37) CH3O2 - ( 38) CH3OH - ( 39) CH3OOH - ( 40) CH4 - ( 41) CHBR3 - ( 42) CL - ( 43) CL2 - ( 44) CL2O2 - ( 45) CLO - ( 46) CLONO2 - ( 47) CLY - ( 48) CO - ( 49) CO2 - ( 50) COF2 - ( 51) COFCL - ( 52) DMS - ( 53) dst_a1 - ( 54) dst_a2 - ( 55) dst_a3 - ( 56) EO - ( 57) EO2 - ( 58) EOOH - ( 59) F - ( 60) GLYALD - ( 61) GLYOXAL - ( 62) H - ( 63) H2 - ( 64) H2402 - ( 65) H2O2 - ( 66) H2SO4 - ( 67) HBR - ( 68) HCFC141B - ( 69) HCFC142B - ( 70) HCFC22 - ( 71) HCL - ( 72) HF - ( 73) HNO3 - ( 74) HO2NO2 - ( 75) HOBR - ( 76) HOCL - ( 77) HYAC - ( 78) HYDRALD - ( 79) ISOP - ( 80) ISOPNO3 - ( 81) ISOPO2 - ( 82) ISOPOOH - ( 83) MACR - ( 84) MACRO2 - ( 85) MACROOH - ( 86) MCO3 - ( 87) MPAN - ( 88) MVK - ( 89) N - ( 90) N2O - ( 91) N2O5 - ( 92) ncl_a1 - ( 93) ncl_a2 - ( 94) ncl_a3 - ( 95) NH3 - ( 96) NH4 - ( 97) NO - ( 98) NO2 - ( 99) NO3 - (100) NOA - (101) num_a1 - (102) num_a2 - (103) num_a3 - (104) num_a4 - (105) num_a5 - (106) O - (107) O2 - (108) O3 - (109) OCLO - (110) OCS - (111) OH - (112) ONITR - (113) PAN - (114) PO2 - (115) pom_a1 - (116) pom_a4 - (117) POOH - (118) RO2 - (119) ROOH - (120) S - (121) SF6 - (122) SO - (123) SO2 - (124) SO3 - (125) so4_a1 - (126) so4_a2 - (127) so4_a3 - (128) so4_a5 - (129) soa_a1 - (130) soa_a2 - (131) SOAE - (132) SOAG - (133) TERP - (134) XO2 - (135) XOOH - (136) e - (137) HO2 - (138) N2D - (139) N2p - (140) NOp - (141) Np - (142) O1D - (143) O2_1D - (144) O2_1S - (145) O2p - (146) Op - (147) Op2D - (148) Op2P - (149) H2O + ( 10) C2H5OH + ( 11) C2H5OOH + ( 12) C2H6 + ( 13) C3H6 + ( 14) C3H7OOH + ( 15) C3H8 + ( 16) CCL4 + ( 17) CF2CLBR + ( 18) CF3BR + ( 19) CFC11 + ( 20) CFC113 + ( 21) CFC114 + ( 22) CFC115 + ( 23) CFC12 + ( 24) CH2BR2 + ( 25) CH2O + ( 26) CH3BR + ( 27) CH3CCL3 + ( 28) CH3CHO + ( 29) CH3CL + ( 30) CH3COCH3 + ( 31) CH3COCHO + ( 32) CH3COOH + ( 33) CH3COOOH + ( 34) CH3O2 + ( 35) CH3OH + ( 36) CH3OOH + ( 37) CH4 + ( 38) CHBR3 + ( 39) CL + ( 40) CL2 + ( 41) CL2O2 + ( 42) CLO + ( 43) CLONO2 + ( 44) CLY + ( 45) CO + ( 46) CO2 + ( 47) COF2 + ( 48) COFCL + ( 49) DMS + ( 50) dst_a1 + ( 51) dst_a2 + ( 52) dst_a3 + ( 53) EOOH + ( 54) F + ( 55) GLYALD + ( 56) GLYOXAL + ( 57) H + ( 58) H2 + ( 59) H2402 + ( 60) H2O2 + ( 61) H2SO4 + ( 62) HBR + ( 63) HCFC141B + ( 64) HCFC142B + ( 65) HCFC22 + ( 66) HCL + ( 67) HF + ( 68) HNO3 + ( 69) HO2NO2 + ( 70) HOBR + ( 71) HOCL + ( 72) HYAC + ( 73) HYDRALD + ( 74) ISOP + ( 75) ISOPNO3 + ( 76) ISOPOOH + ( 77) MACR + ( 78) MACROOH + ( 79) MPAN + ( 80) MVK + ( 81) N + ( 82) N2O + ( 83) N2O5 + ( 84) ncl_a1 + ( 85) ncl_a2 + ( 86) ncl_a3 + ( 87) NH3 + ( 88) NH4 + ( 89) NO + ( 90) NO2 + ( 91) NO3 + ( 92) NOA + ( 93) num_a1 + ( 94) num_a2 + ( 95) num_a3 + ( 96) num_a4 + ( 97) num_a5 + ( 98) O + ( 99) O2 + (100) O3 + (101) O3S + (102) OCLO + (103) OCS + (104) OH + (105) ONITR + (106) PAN + (107) pom_a1 + (108) pom_a4 + (109) POOH + (110) ROOH + (111) S + (112) SF6 + (113) SO + (114) SO2 + (115) SO3 + (116) so4_a1 + (117) so4_a2 + (118) so4_a3 + (119) so4_a5 + (120) soa_a1 + (121) soa_a2 + (122) SOAE + (123) SOAG + (124) TERP + (125) XOOH + (126) C2H5O2 + (127) C3H7O2 + (128) CH3CO3 + (129) e + (130) EO + (131) EO2 + (132) HO2 + (133) ISOPO2 + (134) MACRO2 + (135) MCO3 + (136) N2D + (137) N2p + (138) NOp + (139) Np + (140) O1D + (141) O2_1D + (142) O2_1S + (143) O2p + (144) Op + (145) Op2D + (146) Op2P + (147) PO2 + (148) RO2 + (149) XO2 + (150) H2O Photolysis jh2o_b ( 1) H2O + hv -> H2 + O1D rate = ** User defined ** ( 1) @@ -662,8 +664,8 @@ Class List C3H6_O3 (191) C3H6 + O3 -> 0.5*CH2O + 0.12*{HCOOH} + 0.12*CH3COOH + 0.5*CH3CHO rate = 6.50E-15*exp( -1900./t) (305) + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH - C3H7O2_CH3O2 (192) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 3.75E-13*exp( -40./t) (306) - C3H7O2_HO2 (193) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 7.50E-13*exp( 700./t) (307) + C3H7O2_CH3O2 (192) C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 rate = 1.00E-13*exp( 557./t) (306) + C3H7O2_HO2 (193) C3H7O2 + HO2 -> C3H7OOH + O2 rate = 1.41E-13*exp( 1300./t) (307) C3H7O2_NO (194) C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO rate = 2.70E-12*exp( 360./t) (308) C3H7OOH_OH (195) C3H7OOH + OH -> H2O + C3H7O2 rate = 3.80E-12*exp( 200./t) (309) C3H8_OH (196) C3H8 + OH -> C3H7O2 + H2O rate = 9.19E-12*exp( -630./t) (310) @@ -830,10 +832,10 @@ Class List Extraneous prod/loss species ( 1) CO (dataset) - ( 2) pom_a4 (dataset) - ( 3) so4_a5 (dataset) - ( 4) bc_a4 (dataset) - ( 5) SO2 (dataset) + ( 2) so4_a5 (dataset) + ( 3) bc_a4 (dataset) + ( 4) SO2 (dataset) + ( 5) H2O (dataset) ( 6) NO2 (dataset) ( 7) NO (dataset) ( 8) num_a1 (dataset) @@ -842,14 +844,15 @@ Extraneous prod/loss species (11) so4_a2 (dataset) (12) num_a5 (dataset) (13) num_a4 (dataset) - (14) O2p - (15) N2p - (16) Np - (17) N2D - (18) Op + (14) pom_a4 (dataset) + (15) e + (16) N2p + (17) Np + (18) N2D (19) N - (20) e - (21) OH + (20) O2p + (21) Op + (22) OH Equation Report @@ -873,8 +876,6 @@ Extraneous prod/loss species - j49*BRONO2 - j50*BRONO2 - r282*BRONO2 - r285*BRONO2 - r290*BRONO2 - r114*O*BRONO2 d(BRY)/dt = 0 d(C2H4)/dt = - r162*M*CL*C2H4 - r163*O3*C2H4 - r187*M*OH*C2H4 - d(C2H5O2)/dt = .5*r169*C2H5OOH*OH + r170*C2H6*CL + r171*C2H6*OH - - 2*r164*C2H5O2*C2H5O2 - r165*CH3O2*C2H5O2 - r166*HO2*C2H5O2 - r167*NO*C2H5O2 d(C2H5OH)/dt = .4*r164*C2H5O2*C2H5O2 + .2*r165*C2H5O2*CH3O2 - r168*OH*C2H5OH d(C2H5OOH)/dt = r166*C2H5O2*HO2 @@ -882,8 +883,6 @@ Extraneous prod/loss species d(C2H6)/dt = - r170*CL*C2H6 - r171*OH*C2H6 d(C3H6)/dt = .7*j40*MVK + .13*r241*ISOP*O3 - r190*NO3*C3H6 - r191*O3*C3H6 - r208*M*OH*C3H6 - d(C3H7O2)/dt = r195*C3H7OOH*OH + r196*C3H8*OH + 1.67*r230*BIGALK*OH - - r192*CH3O2*C3H7O2 - r193*HO2*C3H7O2 - r194*NO*C3H7O2 d(C3H7OOH)/dt = r193*C3H7O2*HO2 - j21*C3H7OOH - r195*OH*C3H7OOH d(C3H8)/dt = - r196*OH*C3H8 @@ -917,14 +916,6 @@ Extraneous prod/loss species + .1*r226*MVK*O3 - j24*CH3CHO - r172*NO3*CH3CHO - r173*OH*CH3CHO d(CH3CL)/dt = - j62*CH3CL - r136*CL*CH3CL - r137*OH*CH3CL - d(CH3CO3)/dt = j25*CH3COCH3 + j26*CH3COCHO + j35*HYAC + 1.34*j37*MACR + .3*j40*MVK + j41*NOA + .6*j43*PAN - + j45*ROOH + r189*M*PAN + r172*CH3CHO*NO3 + r173*CH3CHO*OH + .5*r179*CH3COOOH*OH - + r197*CH3COCHO*NO3 + r198*CH3COCHO*OH + .3*r204*RO2*CH3O2 + .15*r205*RO2*HO2 + r206*RO2*NO - + .53*r210*MACRO2*CH3CO3 + .26*r211*MACRO2*CH3O2 + .53*r213*MACRO2*NO3 + .53*r214*MACRO2*NO - + .1*r216*MACR*O3 + r220*MCO3*CH3O2 + .45*r221*MCO3*HO2 + 2*r222*MCO3*MCO3 + r223*MCO3*NO - + r224*MCO3*NO3 + .28*r226*MVK*O3 + .08*r241*ISOP*O3 - - 2*r174*CH3CO3*CH3CO3 - r175*CH3O2*CH3CO3 - r176*HO2*CH3CO3 - r177*NO*CH3CO3 - - r188*M*NO2*CH3CO3 - r210*MACRO2*CH3CO3 - r236*ISOPO2*CH3CO3 - r246*XO2*CH3CO3 d(CH3COCH3)/dt = .82*j21*C3H7OOH + .82*r192*C3H7O2*CH3O2 + .82*r194*C3H7O2*NO + .1*r254*TERP*OH - j25*CH3COCH3 - r209*OH*CH3COCH3 d(CH3COCHO)/dt = r199*HYAC*OH + r200*NOA*OH + .5*r204*RO2*CH3O2 + .25*r210*MACRO2*CH3CO3 @@ -1003,10 +994,6 @@ Extraneous prod/loss species d(dst_a1)/dt = 0 d(dst_a2)/dt = 0 d(dst_a3)/dt = 0 - d(EO)/dt = j32*EOOH + .75*r181*EO2*NO - - r182*EO - r183*O2*EO - d(EO2)/dt = r187*M*C2H4*OH - - r180*HO2*EO2 - r181*NO*EO2 d(EOOH)/dt = r180*EO2*HO2 - j32*EOOH d(F)/dt = j53*CF3BR + j57*CFC115 + 2*j69*COF2 + j70*COFCL + j77*HF + r98*O1D*CFC115 + r120*O1D*CF3BR @@ -1064,22 +1051,14 @@ Extraneous prod/loss species d(ISOP)/dt = - r232*NO3*ISOP - r241*O3*ISOP - r242*OH*ISOP d(ISOPNO3)/dt = r232*ISOP*NO3 - r233*HO2*ISOPNO3 - r234*NO*ISOPNO3 - r235*NO3*ISOPNO3 - d(ISOPO2)/dt = r242*ISOP*OH + .2*r243*ISOPOOH*OH + 1.7*r252*TERP*NO3 + 1.64*r254*TERP*OH - - r236*CH3CO3*ISOPO2 - r237*CH3O2*ISOPO2 - r238*HO2*ISOPO2 - r239*NO*ISOPO2 - r240*NO3*ISOPO2 d(ISOPOOH)/dt = r238*ISOPO2*HO2 - j36*ISOPOOH - r243*OH*ISOPOOH d(MACR)/dt = .3*j36*ISOPOOH + .167*r233*ISOPNO3*HO2 + .167*r234*ISOPNO3*NO + .167*r235*ISOPNO3*NO3 + .25*r236*ISOPO2*CH3CO3 + .19*r237*ISOPO2*CH3O2 + .23*r239*ISOPO2*NO + .25*r240*ISOPO2*NO3 + .3*r241*ISOP*O3 + 1.122*r253*TERP*O3 - j37*MACR - j38*MACR - r216*O3*MACR - r217*OH*MACR - d(MACRO2)/dt = .5*r217*MACR*OH + .2*r218*MACROOH*OH + r227*MVK*OH - - r210*CH3CO3*MACRO2 - r211*CH3O2*MACRO2 - r212*HO2*MACRO2 - r213*NO3*MACRO2 - r214*NO*MACRO2 - - r215*NO*MACRO2 d(MACROOH)/dt = r212*MACRO2*HO2 - r218*OH*MACROOH - d(MCO3)/dt = .66*j37*MACR + j39*MPAN + r229*M*MPAN + .5*r217*MACR*OH + .5*r218*MACROOH*OH - - r219*CH3CO3*MCO3 - r220*CH3O2*MCO3 - r221*HO2*MCO3 - 2*r222*MCO3*MCO3 - r223*NO*MCO3 - - r224*NO3*MCO3 - r228*M*NO2*MCO3 d(MPAN)/dt = r228*M*MCO3*NO2 - j39*MPAN - r229*M*MPAN - r225*M*OH*MPAN d(MVK)/dt = .7*j36*ISOPOOH + .039*r233*ISOPNO3*HO2 + .039*r234*ISOPNO3*NO + .039*r235*ISOPNO3*NO3 @@ -1096,8 +1075,10 @@ Extraneous prod/loss species d(ncl_a1)/dt = 0 d(ncl_a2)/dt = 0 d(ncl_a3)/dt = 0 + d(NDEP)/dt = .5*r225*M*MPAN*OH + r244*ONITR*NO3 + .6*r245*ONITR*OH d(NH3)/dt = - r272*OH*NH3 d(NH4)/dt = - r275*NH4 + d(NHDEP)/dt = r275*NH4 + r272*NH3*OH d(NO)/dt = j14*N2O5 + j17*NO2 + j19*NO3 + .5*r276*NO2 + r310*N2*O2p + r323*N2*Op2P + 2*r44*N*NO2 + r46*NO2*O + r53*N*OH + 2*r57*O1D*N2O + r65*N2D*O2 + r67*N*O2 + r265*SO*NO2 - j15*NO - j16*NO - r40*N2D*NO - r42*N*NO - r50*NO3*NO - r54*HO2*NO - r55*O3*NO - r56*M*O*NO @@ -1156,6 +1137,7 @@ Extraneous prod/loss species - j7*O3 - j8*O3 - r8*O1D*O3 - r9*O1D*O3 - r18*O*O3 - r28*HO2*O3 - r29*H*O3 - r34*OH*O3 - r47*NO2*O3 - r55*NO*O3 - r74*CL*O3 - r106*BR*O3 - r163*C2H4*O3 - r191*C3H6*O3 - r216*MACR*O3 - r226*MVK*O3 - r241*ISOP*O3 - r253*TERP*O3 - r261*S*O3 - r267*SO*O3 + d(O3S)/dt = 0 d(OCLO)/dt = r78*CLO*CLO + r108*BRO*CLO - j80*OCLO - r268*SO*OCLO d(OCS)/dt = - j109*OCS - r257*O*OCS - r258*OH*OCS @@ -1185,14 +1167,10 @@ Extraneous prod/loss species - j42*ONITR - r278*ONITR - r244*NO3*ONITR - r245*OH*ONITR d(PAN)/dt = r188*M*CH3CO3*NO2 - j43*PAN - r189*M*PAN - r186*OH*PAN - d(PO2)/dt = .5*r203*POOH*OH + r208*M*C3H6*OH - - r201*HO2*PO2 - r202*NO*PO2 d(pom_a1)/dt = 0 d(pom_a4)/dt = 0 d(POOH)/dt = r201*PO2*HO2 - j44*POOH - r203*OH*POOH - d(RO2)/dt = r207*ROOH*OH + r209*CH3COCH3*OH - - r204*CH3O2*RO2 - r205*HO2*RO2 - r206*NO*RO2 d(ROOH)/dt = .85*r205*RO2*HO2 - j45*ROOH - r207*OH*ROOH d(S)/dt = j109*OCS + j110*SO @@ -1215,16 +1193,28 @@ Extraneous prod/loss species d(SOAE)/dt = - r279*SOAE d(SOAG)/dt = r279*SOAE d(TERP)/dt = - r252*NO3*TERP - r253*O3*TERP - r254*OH*TERP - d(XO2)/dt = r231*HYDRALD*OH + .8*r243*ISOPOOH*OH + .5*r251*XOOH*OH - - r246*CH3CO3*XO2 - r247*CH3O2*XO2 - r248*HO2*XO2 - r249*NO*XO2 - r250*NO3*XO2 d(XOOH)/dt = r248*XO2*HO2 - j46*XOOH - r251*OH*XOOH - d(NHDEP)/dt = r275*NH4 + r272*NH3*OH - d(NDEP)/dt = .5*r225*M*MPAN*OH + r244*ONITR*NO3 + .6*r245*ONITR*OH + d(C2H5O2)/dt = .5*r169*C2H5OOH*OH + r170*C2H6*CL + r171*C2H6*OH + - 2*r164*C2H5O2*C2H5O2 - r165*CH3O2*C2H5O2 - r166*HO2*C2H5O2 - r167*NO*C2H5O2 + d(C3H7O2)/dt = r195*C3H7OOH*OH + r196*C3H8*OH + 1.67*r230*BIGALK*OH + - r192*CH3O2*C3H7O2 - r193*HO2*C3H7O2 - r194*NO*C3H7O2 + d(CH3CO3)/dt = j25*CH3COCH3 + j26*CH3COCHO + j35*HYAC + 1.34*j37*MACR + .3*j40*MVK + j41*NOA + .6*j43*PAN + + j45*ROOH + r189*M*PAN + r172*CH3CHO*NO3 + r173*CH3CHO*OH + .5*r179*CH3COOOH*OH + + r197*CH3COCHO*NO3 + r198*CH3COCHO*OH + .3*r204*RO2*CH3O2 + .15*r205*RO2*HO2 + r206*RO2*NO + + .53*r210*MACRO2*CH3CO3 + .26*r211*MACRO2*CH3O2 + .53*r213*MACRO2*NO3 + .53*r214*MACRO2*NO + + .1*r216*MACR*O3 + r220*MCO3*CH3O2 + .45*r221*MCO3*HO2 + 2*r222*MCO3*MCO3 + r223*MCO3*NO + + r224*MCO3*NO3 + .28*r226*MVK*O3 + .08*r241*ISOP*O3 + - 2*r174*CH3CO3*CH3CO3 - r175*CH3O2*CH3CO3 - r176*HO2*CH3CO3 - r177*NO*CH3CO3 + - r188*M*NO2*CH3CO3 - r210*MACRO2*CH3CO3 - r236*ISOPO2*CH3CO3 - r246*XO2*CH3CO3 d(e)/dt = j84*N2 + j87*N2 + j88*N2 + j89*N2 + j90*N2 + j91*N2 + j15*NO + j83*N + j92*O + j93*O + j94*O + j95*O + j96*O + j97*O + j98*O2 + j100*O2 + j101*O2 + j102*O2 + j103*O2 + j105*O2 + j106*O2 + j107*O2 - r300*NOp*e - r301*O2p*e - r302*N2p*e + d(EO)/dt = j32*EOOH + .75*r181*EO2*NO + - r182*EO - r183*O2*EO + d(EO2)/dt = r187*M*C2H4*OH + - r180*HO2*EO2 - r181*NO*EO2 d(HO2)/dt = j11*HO2NO2 + j20*C2H5OOH + j21*C3H7OOH + j24*CH3CHO + j26*CH3COCHO + 2*j33*GLYALD + 2*j34*GLYOXAL + j35*HYAC + j36*ISOPOOH + 1.34*j37*MACR + .66*j38*MACR + j42*ONITR + j44*POOH + r63*M*HO2NO2 + r182*EO + r22*H2O2*O + r26*M*H*O2 + r31*OH*H2O2 + r34*OH*O3 + r52*NO3*OH @@ -1245,6 +1235,14 @@ Extraneous prod/loss species - r79*CLO*HO2 - r105*BR*HO2 - r111*BRO*HO2 - r153*CH3O2*HO2 - r166*C2H5O2*HO2 - r176*CH3CO3*HO2 - r180*EO2*HO2 - r193*C3H7O2*HO2 - r201*PO2*HO2 - r205*RO2*HO2 - r212*MACRO2*HO2 - r221*MCO3*HO2 - r233*ISOPNO3*HO2 - r238*ISOPO2*HO2 - r248*XO2*HO2 + d(ISOPO2)/dt = r242*ISOP*OH + .2*r243*ISOPOOH*OH + 1.7*r252*TERP*NO3 + 1.64*r254*TERP*OH + - r236*CH3CO3*ISOPO2 - r237*CH3O2*ISOPO2 - r238*HO2*ISOPO2 - r239*NO*ISOPO2 - r240*NO3*ISOPO2 + d(MACRO2)/dt = .5*r217*MACR*OH + .2*r218*MACROOH*OH + r227*MVK*OH + - r210*CH3CO3*MACRO2 - r211*CH3O2*MACRO2 - r212*HO2*MACRO2 - r213*NO3*MACRO2 - r214*NO*MACRO2 + - r215*NO*MACRO2 + d(MCO3)/dt = .66*j37*MACR + j39*MPAN + r229*M*MPAN + .5*r217*MACR*OH + .5*r218*MACROOH*OH + - r219*CH3CO3*MCO3 - r220*CH3O2*MCO3 - r221*HO2*MCO3 - 2*r222*MCO3*MCO3 - r223*NO*MCO3 + - r224*NO3*MCO3 - r228*M*NO2*MCO3 d(N2D)/dt = 1.2*j85*N2 + 1.2*j86*N2 + j87*N2 + j91*N2 + .8*r300*NOp*e + .9*r302*N2p*e + r304*N2p*O - r38*N2D - r40*NO*N2D - r41*O*N2D - r64*e*N2D - r65*O2*N2D - r314*Op*N2D d(N2p)/dt = j84*N2 + j88*N2 + r317*N2*Op2D + r322*N2*Op2P @@ -1274,6 +1272,12 @@ Extraneous prod/loss species d(Op2P)/dt = j92*O + j96*O + j101*O2 + j105*O2 - r297*Op2P - r299*Op2P - r322*N2*Op2P - r323*N2*Op2P - r320*e*Op2P - r321*e*Op2P - r324*O*Op2P + d(PO2)/dt = .5*r203*POOH*OH + r208*M*C3H6*OH + - r201*HO2*PO2 - r202*NO*PO2 + d(RO2)/dt = r207*ROOH*OH + r209*CH3COCH3*OH + - r204*CH3O2*RO2 - r205*HO2*RO2 - r206*NO*RO2 + d(XO2)/dt = r231*HYDRALD*OH + .8*r243*ISOPOOH*OH + .5*r251*XOOH*OH + - r246*CH3CO3*XO2 - r247*CH3O2*XO2 - r248*HO2*XO2 - r249*NO*XO2 - r250*NO3*XO2 d(H2O)/dt = .05*j29*CH4 + j108*H2SO4 + r273*HO2 + r25*H*HO2 + r30*OH*H2 + r31*OH*H2O2 + r32*OH*HO2 + r35*OH*OH + r39*HO2NO2*OH + r62*HNO3*OH + r89*HCL*OH + r92*HOCL*OH + r118*HBR*OH + r132*CH2BR2*OH + r134*CH3BR*OH + r135*CH3CCL3*OH + r137*CH3CL*OH + r142*HCFC22*OH diff --git a/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.in b/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.in index 76a92adb75..708c14be20 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.in +++ b/src/chemistry/pp_waccm_t4ma_mam5/chem_mech.in @@ -1,11 +1,11 @@ * Comments -* User-given Tag Description: T4MA -* Tag database identifier : MZ363_T4MA_20250224 -* Tag created by : jz +* User-given Tag Description: T4MA_MAM5 +* Tag database identifier : MZ385_T4MA_20251208 +* Tag created by : lke * Tag created from branch : T4MA -* Tag created on : 2025-02-24 16:09:18.005168-07 +* Tag created on : 2025-12-08 14:26:20.334094-07 * Comments for this tag follow: -* jz : 2025-02-24 : added extra five nitrogen reactions (3 of them are user reactions) +* lke : 2025-12-08 : T4 simpler tropospheric chemistry with full Middle Atmosphere (Strat, Meso, Lower Therm), with MAM5 aerosols, simple MAM-SOA SPECIES @@ -19,12 +19,10 @@ BRONO2 -> BrONO2, BRY, C2H4, - C2H5O2, C2H5OH, C2H5OOH, C2H6, C3H6, - C3H7O2, C3H7OOH, C3H8, CCL4 -> CCl4, @@ -41,7 +39,6 @@ CH3CCL3 -> CH3CCl3, CH3CHO, CH3CL -> CH3Cl, - CH3CO3, CH3COCH3, CH3COCHO, CH3COOH, @@ -65,8 +62,6 @@ dst_a1 -> AlSiO5, dst_a2 -> AlSiO5, dst_a3 -> AlSiO5, - EO -> HOCH2CH2O, - EO2 -> HOCH2CH2O2, EOOH -> HOCH2CH2OOH, F, GLYALD -> HOCH2CHO, @@ -90,12 +85,9 @@ HYDRALD -> HOCH2CCH3CHCHO, ISOP -> C5H8, ISOPNO3 -> CH2CHCCH3OOCH2ONO2, - ISOPO2 -> HOCH2COOCH3CHCH2, ISOPOOH -> HOCH2COOHCH3CHCH2, MACR -> CH2CCH3CHO, - MACRO2 -> CH3COCHO2CH2OH, MACROOH -> CH3COCHOOHCH2OH, - MCO3 -> CH2CCH3CO3, MPAN -> CH2CCH3CO3NO2, MVK -> CH2CHCOCH3, N, @@ -104,8 +96,10 @@ ncl_a1 -> NaCl, ncl_a2 -> NaCl, ncl_a3 -> NaCl, + NDEP -> N, NH3, NH4, + NHDEP -> N, NO, NO2, NO3, @@ -118,16 +112,15 @@ O, O2, O3, + O3S -> O3, OCLO -> OClO, OCS -> OCS, OH, ONITR -> C4H7NO4, PAN -> CH3CO3NO2, - PO2 -> C3H6OHO2, pom_a1 -> C, pom_a4 -> C, POOH -> C3H6OHOOH, - RO2 -> CH3COCH2O2, ROOH -> CH3COCH2OOH, S -> S, SF6, @@ -143,12 +136,17 @@ SOAE -> C, SOAG -> C, TERP -> C10H16, - XO2 -> HOCH2COOCH3CHOHCHO, XOOH -> HOCH2COOHCH3CHOHCHO, - NHDEP -> N, - NDEP -> N, + C2H5O2, + C3H7O2, + CH3CO3, e -> E, + EO -> HOCH2CH2O, + EO2 -> HOCH2CH2O2, HO2, + ISOPO2 -> HOCH2COOCH3CHCH2, + MACRO2 -> CH3COCHO2CH2OH, + MCO3 -> CH2CCH3CO3, N2D -> N, N2p -> N2, NOp -> NO, @@ -160,6 +158,9 @@ Op -> O, Op2D -> O, Op2P -> O, + PO2 -> C3H6OHO2, + RO2 -> CH3COCH2O2, + XO2 -> HOCH2COOCH3CHOHCHO, H2O End Solution @@ -175,8 +176,16 @@ End Col-int Not-Transported + C2H5O2, + C3H7O2, + CH3CO3, e, + EO, + EO2, HO2, + ISOPO2, + MACRO2, + MCO3, N2D, N2p, NOp, @@ -187,7 +196,10 @@ O2p, Op, Op2D, - Op2P + Op2P, + PO2, + RO2, + XO2 End Not-Transported END Species @@ -195,8 +207,8 @@ Solution classes Explicit - NHDEP NDEP + NHDEP End Explicit Implicit @@ -209,12 +221,10 @@ BRONO2 BRY C2H4 - C2H5O2 C2H5OH C2H5OOH C2H6 C3H6 - C3H7O2 C3H7OOH C3H8 CCL4 @@ -231,7 +241,6 @@ CH3CCL3 CH3CHO CH3CL - CH3CO3 CH3COCH3 CH3COCHO CH3COOH @@ -255,8 +264,6 @@ dst_a1 dst_a2 dst_a3 - EO - EO2 EOOH F GLYALD @@ -280,12 +287,9 @@ HYDRALD ISOP ISOPNO3 - ISOPO2 ISOPOOH MACR - MACRO2 MACROOH - MCO3 MPAN MVK N @@ -308,16 +312,15 @@ O O2 O3 + O3S OCLO OCS OH ONITR PAN - PO2 pom_a1 pom_a4 POOH - RO2 ROOH S SF6 @@ -333,10 +336,17 @@ SOAE SOAG TERP - XO2 XOOH + C2H5O2 + C3H7O2 + CH3CO3 e + EO + EO2 HO2 + ISOPO2 + MACRO2 + MCO3 N2D N2p NOp @@ -348,6 +358,9 @@ Op Op2D Op2P + PO2 + RO2 + XO2 H2O End Implicit @@ -715,8 +728,8 @@ ********************************* [C3H6_NO3] C3H6 + NO3 -> NOA ; 4.6e-13, -1156 [C3H6_O3] C3H6 + O3 -> 0.5*CH2O + 0.12*HCOOH + 0.12*CH3COOH + 0.5*CH3CHO + 0.56*CO + 0.28*CH3O2 + 0.1*CH4 + 0.2*CO2 + 0.28*HO2 + 0.36*OH ; 6.5e-15, -1900 -[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 3.75e-13, -40 -[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 7.5e-13, 700 +[C3H7O2_CH3O2] C3H7O2 + CH3O2 -> CH2O + HO2 + 0.82*CH3COCH3 ; 1e-13, 557 +[C3H7O2_HO2] C3H7O2 + HO2 -> C3H7OOH + O2 ; 1.41e-13, 1300 [C3H7O2_NO] C3H7O2 + NO -> 0.82*CH3COCH3 + NO2 + HO2 + 0.27*CH3CHO ; 2.7e-12, 360 [C3H7OOH_OH] C3H7OOH + OH -> H2O + C3H7O2 ; 3.8e-12, 200 [C3H8_OH] C3H8 + OH -> C3H7O2 + H2O ; 9.19e-12, -630 @@ -876,10 +889,10 @@ Ext Forcing CO <- dataset - pom_a4 <- dataset so4_a5 <- dataset bc_a4 <- dataset SO2 <- dataset + H2O <- dataset NO2 <- dataset NO <- dataset num_a1 <- dataset @@ -888,13 +901,14 @@ so4_a2 <- dataset num_a5 <- dataset num_a4 <- dataset - O2p + pom_a4 <- dataset + e N2p Np N2D - Op N - e + O2p + Op OH End Ext Forcing diff --git a/src/chemistry/pp_waccm_t4ma_mam5/chem_mods.F90 b/src/chemistry/pp_waccm_t4ma_mam5/chem_mods.F90 index dfc36b128c..46d36dcd34 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/chem_mods.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/chem_mods.F90 @@ -9,23 +9,23 @@ module chem_mods rxntot = 438, & ! number of total reactions gascnt = 324, & ! number of gas phase reactions nabscol = 2, & ! number of absorbing column densities - gas_pcnst = 151, & ! number of "gas phase" species + gas_pcnst = 152, & ! number of "gas phase" species nfs = 2, & ! number of "fixed" species relcnt = 0, & ! number of relationship species grpcnt = 0, & ! number of group members nzcnt = 1584, & ! number of non-zero matrix entries - extcnt = 21, & ! number of species with external forcing + extcnt = 22, & ! number of species with external forcing clscnt1 = 2, & ! number of species in explicit class clscnt2 = 0, & ! number of species in hov class clscnt3 = 0, & ! number of species in ebi class - clscnt4 = 149, & ! number of species in implicit class + clscnt4 = 150, & ! number of species in implicit class clscnt5 = 0, & ! number of species in rodas class indexm = 1, & ! index of total atm density in invariant array indexh2o = 0, & ! index of water vapor density clsze = 1, & ! loop length for implicit chemistry rxt_tag_cnt = 438, & enthalpy_cnt = 56, & - nslvd = 13 + nslvd = 24 integer :: clscnt(5) = 0 integer :: cls_rxt_cnt(4,5) = 0 integer :: clsmap(gas_pcnst,5) = 0 diff --git a/src/chemistry/pp_waccm_t4ma_mam5/m_spc_id.F90 b/src/chemistry/pp_waccm_t4ma_mam5/m_spc_id.F90 index a491e7393d..21eb667896 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/m_spc_id.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/m_spc_id.F90 @@ -9,146 +9,147 @@ module m_spc_id integer, parameter :: id_BRONO2 = 7 integer, parameter :: id_BRY = 8 integer, parameter :: id_C2H4 = 9 - integer, parameter :: id_C2H5O2 = 10 - integer, parameter :: id_C2H5OH = 11 - integer, parameter :: id_C2H5OOH = 12 - integer, parameter :: id_C2H6 = 13 - integer, parameter :: id_C3H6 = 14 - integer, parameter :: id_C3H7O2 = 15 - integer, parameter :: id_C3H7OOH = 16 - integer, parameter :: id_C3H8 = 17 - integer, parameter :: id_CCL4 = 18 - integer, parameter :: id_CF2CLBR = 19 - integer, parameter :: id_CF3BR = 20 - integer, parameter :: id_CFC11 = 21 - integer, parameter :: id_CFC113 = 22 - integer, parameter :: id_CFC114 = 23 - integer, parameter :: id_CFC115 = 24 - integer, parameter :: id_CFC12 = 25 - integer, parameter :: id_CH2BR2 = 26 - integer, parameter :: id_CH2O = 27 - integer, parameter :: id_CH3BR = 28 - integer, parameter :: id_CH3CCL3 = 29 - integer, parameter :: id_CH3CHO = 30 - integer, parameter :: id_CH3CL = 31 - integer, parameter :: id_CH3CO3 = 32 - integer, parameter :: id_CH3COCH3 = 33 - integer, parameter :: id_CH3COCHO = 34 - integer, parameter :: id_CH3COOH = 35 - integer, parameter :: id_CH3COOOH = 36 - integer, parameter :: id_CH3O2 = 37 - integer, parameter :: id_CH3OH = 38 - integer, parameter :: id_CH3OOH = 39 - integer, parameter :: id_CH4 = 40 - integer, parameter :: id_CHBR3 = 41 - integer, parameter :: id_CL = 42 - integer, parameter :: id_CL2 = 43 - integer, parameter :: id_CL2O2 = 44 - integer, parameter :: id_CLO = 45 - integer, parameter :: id_CLONO2 = 46 - integer, parameter :: id_CLY = 47 - integer, parameter :: id_CO = 48 - integer, parameter :: id_CO2 = 49 - integer, parameter :: id_COF2 = 50 - integer, parameter :: id_COFCL = 51 - integer, parameter :: id_DMS = 52 - integer, parameter :: id_dst_a1 = 53 - integer, parameter :: id_dst_a2 = 54 - integer, parameter :: id_dst_a3 = 55 - integer, parameter :: id_EO = 56 - integer, parameter :: id_EO2 = 57 - integer, parameter :: id_EOOH = 58 - integer, parameter :: id_F = 59 - integer, parameter :: id_GLYALD = 60 - integer, parameter :: id_GLYOXAL = 61 - integer, parameter :: id_H = 62 - integer, parameter :: id_H2 = 63 - integer, parameter :: id_H2402 = 64 - integer, parameter :: id_H2O2 = 65 - integer, parameter :: id_H2SO4 = 66 - integer, parameter :: id_HBR = 67 - integer, parameter :: id_HCFC141B = 68 - integer, parameter :: id_HCFC142B = 69 - integer, parameter :: id_HCFC22 = 70 - integer, parameter :: id_HCL = 71 - integer, parameter :: id_HF = 72 - integer, parameter :: id_HNO3 = 73 - integer, parameter :: id_HO2NO2 = 74 - integer, parameter :: id_HOBR = 75 - integer, parameter :: id_HOCL = 76 - integer, parameter :: id_HYAC = 77 - integer, parameter :: id_HYDRALD = 78 - integer, parameter :: id_ISOP = 79 - integer, parameter :: id_ISOPNO3 = 80 - integer, parameter :: id_ISOPO2 = 81 - integer, parameter :: id_ISOPOOH = 82 - integer, parameter :: id_MACR = 83 - integer, parameter :: id_MACRO2 = 84 - integer, parameter :: id_MACROOH = 85 - integer, parameter :: id_MCO3 = 86 - integer, parameter :: id_MPAN = 87 - integer, parameter :: id_MVK = 88 - integer, parameter :: id_N = 89 - integer, parameter :: id_N2O = 90 - integer, parameter :: id_N2O5 = 91 - integer, parameter :: id_ncl_a1 = 92 - integer, parameter :: id_ncl_a2 = 93 - integer, parameter :: id_ncl_a3 = 94 - integer, parameter :: id_NH3 = 95 - integer, parameter :: id_NH4 = 96 - integer, parameter :: id_NO = 97 - integer, parameter :: id_NO2 = 98 - integer, parameter :: id_NO3 = 99 - integer, parameter :: id_NOA = 100 - integer, parameter :: id_num_a1 = 101 - integer, parameter :: id_num_a2 = 102 - integer, parameter :: id_num_a3 = 103 - integer, parameter :: id_num_a4 = 104 - integer, parameter :: id_num_a5 = 105 - integer, parameter :: id_O = 106 - integer, parameter :: id_O2 = 107 - integer, parameter :: id_O3 = 108 - integer, parameter :: id_OCLO = 109 - integer, parameter :: id_OCS = 110 - integer, parameter :: id_OH = 111 - integer, parameter :: id_ONITR = 112 - integer, parameter :: id_PAN = 113 - integer, parameter :: id_PO2 = 114 - integer, parameter :: id_pom_a1 = 115 - integer, parameter :: id_pom_a4 = 116 - integer, parameter :: id_POOH = 117 - integer, parameter :: id_RO2 = 118 - integer, parameter :: id_ROOH = 119 - integer, parameter :: id_S = 120 - integer, parameter :: id_SF6 = 121 - integer, parameter :: id_SO = 122 - integer, parameter :: id_SO2 = 123 - integer, parameter :: id_SO3 = 124 - integer, parameter :: id_so4_a1 = 125 - integer, parameter :: id_so4_a2 = 126 - integer, parameter :: id_so4_a3 = 127 - integer, parameter :: id_so4_a5 = 128 - integer, parameter :: id_soa_a1 = 129 - integer, parameter :: id_soa_a2 = 130 - integer, parameter :: id_SOAE = 131 - integer, parameter :: id_SOAG = 132 - integer, parameter :: id_TERP = 133 - integer, parameter :: id_XO2 = 134 - integer, parameter :: id_XOOH = 135 - integer, parameter :: id_NHDEP = 136 - integer, parameter :: id_NDEP = 137 - integer, parameter :: id_e = 138 - integer, parameter :: id_HO2 = 139 - integer, parameter :: id_N2D = 140 - integer, parameter :: id_N2p = 141 - integer, parameter :: id_NOp = 142 - integer, parameter :: id_Np = 143 - integer, parameter :: id_O1D = 144 - integer, parameter :: id_O2_1D = 145 - integer, parameter :: id_O2_1S = 146 - integer, parameter :: id_O2p = 147 - integer, parameter :: id_Op = 148 - integer, parameter :: id_Op2D = 149 - integer, parameter :: id_Op2P = 150 - integer, parameter :: id_H2O = 151 + integer, parameter :: id_C2H5OH = 10 + integer, parameter :: id_C2H5OOH = 11 + integer, parameter :: id_C2H6 = 12 + integer, parameter :: id_C3H6 = 13 + integer, parameter :: id_C3H7OOH = 14 + integer, parameter :: id_C3H8 = 15 + integer, parameter :: id_CCL4 = 16 + integer, parameter :: id_CF2CLBR = 17 + integer, parameter :: id_CF3BR = 18 + integer, parameter :: id_CFC11 = 19 + integer, parameter :: id_CFC113 = 20 + integer, parameter :: id_CFC114 = 21 + integer, parameter :: id_CFC115 = 22 + integer, parameter :: id_CFC12 = 23 + integer, parameter :: id_CH2BR2 = 24 + integer, parameter :: id_CH2O = 25 + integer, parameter :: id_CH3BR = 26 + integer, parameter :: id_CH3CCL3 = 27 + integer, parameter :: id_CH3CHO = 28 + integer, parameter :: id_CH3CL = 29 + integer, parameter :: id_CH3COCH3 = 30 + integer, parameter :: id_CH3COCHO = 31 + integer, parameter :: id_CH3COOH = 32 + integer, parameter :: id_CH3COOOH = 33 + integer, parameter :: id_CH3O2 = 34 + integer, parameter :: id_CH3OH = 35 + integer, parameter :: id_CH3OOH = 36 + integer, parameter :: id_CH4 = 37 + integer, parameter :: id_CHBR3 = 38 + integer, parameter :: id_CL = 39 + integer, parameter :: id_CL2 = 40 + integer, parameter :: id_CL2O2 = 41 + integer, parameter :: id_CLO = 42 + integer, parameter :: id_CLONO2 = 43 + integer, parameter :: id_CLY = 44 + integer, parameter :: id_CO = 45 + integer, parameter :: id_CO2 = 46 + integer, parameter :: id_COF2 = 47 + integer, parameter :: id_COFCL = 48 + integer, parameter :: id_DMS = 49 + integer, parameter :: id_dst_a1 = 50 + integer, parameter :: id_dst_a2 = 51 + integer, parameter :: id_dst_a3 = 52 + integer, parameter :: id_EOOH = 53 + integer, parameter :: id_F = 54 + integer, parameter :: id_GLYALD = 55 + integer, parameter :: id_GLYOXAL = 56 + integer, parameter :: id_H = 57 + integer, parameter :: id_H2 = 58 + integer, parameter :: id_H2402 = 59 + integer, parameter :: id_H2O2 = 60 + integer, parameter :: id_H2SO4 = 61 + integer, parameter :: id_HBR = 62 + integer, parameter :: id_HCFC141B = 63 + integer, parameter :: id_HCFC142B = 64 + integer, parameter :: id_HCFC22 = 65 + integer, parameter :: id_HCL = 66 + integer, parameter :: id_HF = 67 + integer, parameter :: id_HNO3 = 68 + integer, parameter :: id_HO2NO2 = 69 + integer, parameter :: id_HOBR = 70 + integer, parameter :: id_HOCL = 71 + integer, parameter :: id_HYAC = 72 + integer, parameter :: id_HYDRALD = 73 + integer, parameter :: id_ISOP = 74 + integer, parameter :: id_ISOPNO3 = 75 + integer, parameter :: id_ISOPOOH = 76 + integer, parameter :: id_MACR = 77 + integer, parameter :: id_MACROOH = 78 + integer, parameter :: id_MPAN = 79 + integer, parameter :: id_MVK = 80 + integer, parameter :: id_N = 81 + integer, parameter :: id_N2O = 82 + integer, parameter :: id_N2O5 = 83 + integer, parameter :: id_ncl_a1 = 84 + integer, parameter :: id_ncl_a2 = 85 + integer, parameter :: id_ncl_a3 = 86 + integer, parameter :: id_NDEP = 87 + integer, parameter :: id_NH3 = 88 + integer, parameter :: id_NH4 = 89 + integer, parameter :: id_NHDEP = 90 + integer, parameter :: id_NO = 91 + integer, parameter :: id_NO2 = 92 + integer, parameter :: id_NO3 = 93 + integer, parameter :: id_NOA = 94 + integer, parameter :: id_num_a1 = 95 + integer, parameter :: id_num_a2 = 96 + integer, parameter :: id_num_a3 = 97 + integer, parameter :: id_num_a4 = 98 + integer, parameter :: id_num_a5 = 99 + integer, parameter :: id_O = 100 + integer, parameter :: id_O2 = 101 + integer, parameter :: id_O3 = 102 + integer, parameter :: id_O3S = 103 + integer, parameter :: id_OCLO = 104 + integer, parameter :: id_OCS = 105 + integer, parameter :: id_OH = 106 + integer, parameter :: id_ONITR = 107 + integer, parameter :: id_PAN = 108 + integer, parameter :: id_pom_a1 = 109 + integer, parameter :: id_pom_a4 = 110 + integer, parameter :: id_POOH = 111 + integer, parameter :: id_ROOH = 112 + integer, parameter :: id_S = 113 + integer, parameter :: id_SF6 = 114 + integer, parameter :: id_SO = 115 + integer, parameter :: id_SO2 = 116 + integer, parameter :: id_SO3 = 117 + integer, parameter :: id_so4_a1 = 118 + integer, parameter :: id_so4_a2 = 119 + integer, parameter :: id_so4_a3 = 120 + integer, parameter :: id_so4_a5 = 121 + integer, parameter :: id_soa_a1 = 122 + integer, parameter :: id_soa_a2 = 123 + integer, parameter :: id_SOAE = 124 + integer, parameter :: id_SOAG = 125 + integer, parameter :: id_TERP = 126 + integer, parameter :: id_XOOH = 127 + integer, parameter :: id_C2H5O2 = 128 + integer, parameter :: id_C3H7O2 = 129 + integer, parameter :: id_CH3CO3 = 130 + integer, parameter :: id_e = 131 + integer, parameter :: id_EO = 132 + integer, parameter :: id_EO2 = 133 + integer, parameter :: id_HO2 = 134 + integer, parameter :: id_ISOPO2 = 135 + integer, parameter :: id_MACRO2 = 136 + integer, parameter :: id_MCO3 = 137 + integer, parameter :: id_N2D = 138 + integer, parameter :: id_N2p = 139 + integer, parameter :: id_NOp = 140 + integer, parameter :: id_Np = 141 + integer, parameter :: id_O1D = 142 + integer, parameter :: id_O2_1D = 143 + integer, parameter :: id_O2_1S = 144 + integer, parameter :: id_O2p = 145 + integer, parameter :: id_Op = 146 + integer, parameter :: id_Op2D = 147 + integer, parameter :: id_Op2P = 148 + integer, parameter :: id_PO2 = 149 + integer, parameter :: id_RO2 = 150 + integer, parameter :: id_XO2 = 151 + integer, parameter :: id_H2O = 152 end module m_spc_id diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_indprd.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_indprd.F90 index c51b080ea8..c9adff34c9 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_indprd.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_indprd.F90 @@ -20,165 +20,166 @@ subroutine indprd( class, prod, nprod, y, extfrc, rxt, chnkpnts ) ! ... "independent" production for Explicit species !-------------------------------------------------------------------- if( class == 1 ) then - prod(:,1) =rxt(:,386)*y(:,111)*y(:,95) +rxt(:,389)*y(:,96) - prod(:,2) = (.500_r8*rxt(:,339)*y(:,87) +.600_r8*rxt(:,359)*y(:,112)) & - *y(:,111) +rxt(:,358)*y(:,112)*y(:,99) + prod(:,1) = (.500_r8*rxt(:,339)*y(:,79) +.600_r8*rxt(:,359)*y(:,107)) & + *y(:,106) +rxt(:,358)*y(:,107)*y(:,93) + prod(:,2) =rxt(:,386)*y(:,106)*y(:,88) +rxt(:,389)*y(:,89) !-------------------------------------------------------------------- ! ... "independent" production for Implicit species !-------------------------------------------------------------------- else if( class == 4 ) then prod(:,1) = 0._r8 - prod(:,2) = + extfrc(:,4) - prod(:,29) = 0._r8 - prod(:,131) = 0._r8 + prod(:,2) = + extfrc(:,3) + prod(:,30) = 0._r8 + prod(:,132) = 0._r8 prod(:,49) = 0._r8 - prod(:,133) = 0._r8 - prod(:,82) = 0._r8 + prod(:,144) = 0._r8 + prod(:,79) = 0._r8 prod(:,3) = 0._r8 prod(:,74) = 0._r8 - prod(:,98) = 0._r8 - prod(:,54) = 0._r8 - prod(:,62) = 0._r8 - prod(:,60) = 0._r8 - prod(:,116) = 0._r8 - prod(:,102) = 0._r8 - prod(:,68) = 0._r8 + prod(:,55) = 0._r8 + prod(:,63) = 0._r8 + prod(:,61) = 0._r8 + prod(:,117) = 0._r8 + prod(:,69) = 0._r8 prod(:,34) = 0._r8 - prod(:,31) = 0._r8 - prod(:,40) = 0._r8 + prod(:,32) = 0._r8 prod(:,41) = 0._r8 - prod(:,35) = 0._r8 prod(:,42) = 0._r8 - prod(:,36) = 0._r8 + prod(:,35) = 0._r8 prod(:,43) = 0._r8 + prod(:,36) = 0._r8 + prod(:,44) = 0._r8 prod(:,37) = 0._r8 - prod(:,75) = 0._r8 - prod(:,136) = 0._r8 - prod(:,86) = 0._r8 - prod(:,33) = 0._r8 - prod(:,117) = 0._r8 + prod(:,76) = 0._r8 + prod(:,146) = 0._r8 + prod(:,87) = 0._r8 + prod(:,38) = 0._r8 + prod(:,118) = 0._r8 prod(:,66) = 0._r8 - prod(:,126) = 0._r8 - prod(:,95) = 0._r8 - prod(:,121) = 0._r8 - prod(:,89) = 0._r8 + prod(:,94) = 0._r8 + prod(:,122) = 0._r8 + prod(:,90) = 0._r8 prod(:,85) = 0._r8 - prod(:,140) = 0._r8 - prod(:,80) = 0._r8 - prod(:,69) = 0._r8 - prod(:,147) = 0._r8 + prod(:,135) = 0._r8 + prod(:,81) = 0._r8 prod(:,71) = 0._r8 - prod(:,143) = 0._r8 - prod(:,44) = 0._r8 - prod(:,28) = 0._r8 prod(:,134) = 0._r8 + prod(:,72) = 0._r8 + prod(:,142) = 0._r8 + prod(:,45) = 0._r8 + prod(:,29) = 0._r8 + prod(:,143) = 0._r8 prod(:,111) = 0._r8 prod(:,4) = 0._r8 - prod(:,118) = + extfrc(:,1) - prod(:,127) = 0._r8 - prod(:,48) = 0._r8 + prod(:,119) = + extfrc(:,1) + prod(:,128) = 0._r8 + prod(:,53) = 0._r8 prod(:,51) = 0._r8 - prod(:,56) = 0._r8 + prod(:,57) = 0._r8 prod(:,5) = 0._r8 prod(:,6) = 0._r8 prod(:,7) = 0._r8 - prod(:,72) = 0._r8 - prod(:,93) = 0._r8 - prod(:,38) = 0._r8 - prod(:,104) = 0._r8 - prod(:,114) = 0._r8 - prod(:,91) = 0._r8 - prod(:,148) = 0._r8 - prod(:,128) = 0._r8 - prod(:,32) = 0._r8 - prod(:,84) = 0._r8 prod(:,39) = 0._r8 - prod(:,99) = 0._r8 + prod(:,105) = 0._r8 + prod(:,114) = 0._r8 + prod(:,92) = 0._r8 + prod(:,137) = 0._r8 + prod(:,129) = 0._r8 + prod(:,33) = 0._r8 + prod(:,86) = 0._r8 + prod(:,40) = 0._r8 + prod(:,102) = 0._r8 prod(:,50) = 0._r8 prod(:,52) = 0._r8 - prod(:,57) = 0._r8 - prod(:,130) = 0._r8 prod(:,58) = 0._r8 - prod(:,139) = 0._r8 - prod(:,73) = 0._r8 - prod(:,94) = 0._r8 - prod(:,101) = 0._r8 - prod(:,115) = 0._r8 - prod(:,64) = 0._r8 - prod(:,103) = 0._r8 + prod(:,131) = 0._r8 + prod(:,59) = 0._r8 + prod(:,148) = 0._r8 + prod(:,75) = 0._r8 + prod(:,95) = 0._r8 + prod(:,100) = 0._r8 + prod(:,116) = 0._r8 + prod(:,65) = 0._r8 + prod(:,104) = 0._r8 prod(:,97) = 0._r8 - prod(:,122) = 0._r8 - prod(:,78) = 0._r8 - prod(:,119) = 0._r8 - prod(:,123) = 0._r8 - prod(:,61) = 0._r8 - prod(:,125) = 0._r8 prod(:,83) = 0._r8 - prod(:,124) = 0._r8 - prod(:,110) = (.800_r8*rxt(:,85) +.800_r8*rxt(:,86) +rxt(:,89) +rxt(:,90)) & + prod(:,120) = 0._r8 + prod(:,62) = 0._r8 + prod(:,84) = 0._r8 + prod(:,125) = 0._r8 + prod(:,112) = (.800_r8*rxt(:,85) +.800_r8*rxt(:,86) +rxt(:,89) +rxt(:,90)) & + extfrc(:,19) - prod(:,53) = 0._r8 - prod(:,59) = 0._r8 + prod(:,54) = 0._r8 + prod(:,60) = 0._r8 prod(:,8) = 0._r8 prod(:,9) = 0._r8 prod(:,10) = 0._r8 - prod(:,30) = 0._r8 + prod(:,31) = 0._r8 prod(:,11) = 0._r8 - prod(:,146) = + extfrc(:,7) - prod(:,135) = + extfrc(:,6) - prod(:,141) = 0._r8 - prod(:,67) = 0._r8 + prod(:,139) = + extfrc(:,7) + prod(:,138) = + extfrc(:,6) + prod(:,136) = 0._r8 + prod(:,68) = 0._r8 prod(:,12) = + extfrc(:,8) prod(:,13) = + extfrc(:,9) prod(:,14) = 0._r8 prod(:,15) = + extfrc(:,13) prod(:,16) = + extfrc(:,12) - prod(:,145) = 0._r8 - prod(:,132) = 0._r8 - prod(:,138) = 0._r8 - prod(:,63) = 0._r8 - prod(:,65) = 0._r8 - prod(:,144) = + extfrc(:,21) - prod(:,112) = 0._r8 - prod(:,79) = 0._r8 - prod(:,96) = 0._r8 + prod(:,147) = 0._r8 + prod(:,133) = 0._r8 + prod(:,149) = 0._r8 prod(:,17) = 0._r8 - prod(:,18) = + extfrc(:,2) - prod(:,81) = 0._r8 + prod(:,64) = 0._r8 + prod(:,67) = 0._r8 + prod(:,141) = + extfrc(:,22) prod(:,113) = 0._r8 + prod(:,80) = 0._r8 + prod(:,18) = 0._r8 + prod(:,19) = + extfrc(:,14) + prod(:,82) = 0._r8 prod(:,70) = 0._r8 - prod(:,90) = 0._r8 - prod(:,19) = 0._r8 - prod(:,129) = 0._r8 - prod(:,109) = + extfrc(:,5) - prod(:,55) = 0._r8 - prod(:,20) = + extfrc(:,10) - prod(:,21) = + extfrc(:,11) - prod(:,22) = 0._r8 - prod(:,23) = + extfrc(:,3) - prod(:,24) = 0._r8 + prod(:,91) = 0._r8 + prod(:,20) = 0._r8 + prod(:,130) = 0._r8 + prod(:,110) = + extfrc(:,4) + prod(:,56) = 0._r8 + prod(:,21) = + extfrc(:,10) + prod(:,22) = + extfrc(:,11) + prod(:,23) = 0._r8 + prod(:,24) = + extfrc(:,2) prod(:,25) = 0._r8 prod(:,26) = 0._r8 prod(:,27) = 0._r8 - prod(:,88) = 0._r8 - prod(:,120) = 0._r8 - prod(:,47) = 0._r8 - prod(:,107) = (rxt(:,84) +rxt(:,87) +rxt(:,88) +rxt(:,89) +rxt(:,90) + & - rxt(:,91)) + extfrc(:,20) - prod(:,137) = 0._r8 - prod(:,108) = (1.200_r8*rxt(:,85) +1.200_r8*rxt(:,86) +rxt(:,87) +rxt(:,91)) & - + extfrc(:,17) - prod(:,87) = (rxt(:,84) +rxt(:,88)) + extfrc(:,15) - prod(:,92) = 0._r8 - prod(:,100) = (rxt(:,87) +rxt(:,89) +rxt(:,90) +rxt(:,91)) + extfrc(:,16) - prod(:,142) = 0._r8 - prod(:,45) = 0._r8 + prod(:,28) = 0._r8 + prod(:,89) = 0._r8 + prod(:,48) = 0._r8 + prod(:,99) = 0._r8 + prod(:,103) = 0._r8 + prod(:,127) = 0._r8 + prod(:,108) = (rxt(:,84) +rxt(:,87) +rxt(:,88) +rxt(:,89) +rxt(:,90) + & + rxt(:,91)) + extfrc(:,15) + prod(:,73) = 0._r8 + prod(:,96) = 0._r8 + prod(:,145) = 0._r8 + prod(:,123) = 0._r8 + prod(:,124) = 0._r8 + prod(:,126) = 0._r8 + prod(:,109) = (1.200_r8*rxt(:,85) +1.200_r8*rxt(:,86) +rxt(:,87) +rxt(:,91)) & + + extfrc(:,18) + prod(:,88) = (rxt(:,84) +rxt(:,88)) + extfrc(:,16) + prod(:,93) = 0._r8 + prod(:,101) = (rxt(:,87) +rxt(:,89) +rxt(:,90) +rxt(:,91)) + extfrc(:,17) + prod(:,140) = 0._r8 prod(:,46) = 0._r8 - prod(:,106) = + extfrc(:,14) - prod(:,105) = + extfrc(:,18) + prod(:,47) = 0._r8 + prod(:,107) = + extfrc(:,20) + prod(:,106) = + extfrc(:,21) + prod(:,78) = 0._r8 prod(:,77) = 0._r8 - prod(:,76) = 0._r8 - prod(:,149) = 0._r8 + prod(:,98) = 0._r8 + prod(:,115) = 0._r8 + prod(:,121) = 0._r8 + prod(:,150) = + extfrc(:,5) end if end subroutine indprd end module mo_indprd diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_lin_matrix.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_lin_matrix.F90 index b40c92f0b7..fd0b487bd1 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_lin_matrix.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_lin_matrix.F90 @@ -25,205 +25,205 @@ subroutine linmat01( avec_len, mat, y, rxt, het_rates ) do k = 1,avec_len mat(k,1) = -( het_rates(k,1) ) mat(k,2) = -( het_rates(k,2) ) - mat(k,32) = -( het_rates(k,3) ) + mat(k,33) = -( het_rates(k,3) ) mat(k,876) = -( het_rates(k,4) ) - mat(k,105) = rxt(k,47) - mat(k,930) = rxt(k,48) - mat(k,296) = rxt(k,50) - mat(k,73) = rxt(k,52) - mat(k,79) = rxt(k,53) + mat(k,103) = rxt(k,47) + mat(k,1344) = rxt(k,48) + mat(k,268) = rxt(k,50) + mat(k,74) = rxt(k,52) + mat(k,80) = rxt(k,53) mat(k,248) = 2.000_r8*rxt(k,59) mat(k,327) = rxt(k,60) mat(k,223) = 3.000_r8*rxt(k,63) - mat(k,43) = 2.000_r8*rxt(k,71) - mat(k,434) = rxt(k,72) - mat(k,388) = rxt(k,78) - mat(k,104) = -( rxt(k,47) + het_rates(k,5) ) - mat(k,932) = -( rxt(k,48) + het_rates(k,6) ) - mat(k,297) = rxt(k,49) - mat(k,294) = -( rxt(k,49) + rxt(k,50) + rxt(k,396) + rxt(k,399) + rxt(k,404) & + mat(k,44) = 2.000_r8*rxt(k,71) + mat(k,451) = rxt(k,72) + mat(k,384) = rxt(k,78) + mat(k,102) = -( rxt(k,47) + het_rates(k,5) ) + mat(k,1354) = -( rxt(k,48) + het_rates(k,6) ) + mat(k,271) = rxt(k,49) + mat(k,266) = -( rxt(k,49) + rxt(k,50) + rxt(k,396) + rxt(k,399) + rxt(k,404) & + het_rates(k,7) ) mat(k,3) = -( het_rates(k,8) ) - mat(k,239) = -( het_rates(k,9) ) - mat(k,424) = -( het_rates(k,10) ) - mat(k,126) = -( het_rates(k,11) ) - mat(k,168) = -( rxt(k,20) + het_rates(k,12) ) - mat(k,157) = -( het_rates(k,13) ) - mat(k,623) = -( het_rates(k,14) ) + mat(k,232) = -( het_rates(k,9) ) + mat(k,126) = -( het_rates(k,10) ) + mat(k,168) = -( rxt(k,20) + het_rates(k,11) ) + mat(k,157) = -( het_rates(k,12) ) + mat(k,623) = -( het_rates(k,13) ) mat(k,739) = .700_r8*rxt(k,40) - mat(k,460) = -( het_rates(k,15) ) - mat(k,203) = -( rxt(k,21) + het_rates(k,16) ) - mat(k,49) = -( het_rates(k,17) ) - mat(k,38) = -( rxt(k,51) + het_rates(k,18) ) - mat(k,71) = -( rxt(k,52) + het_rates(k,19) ) - mat(k,76) = -( rxt(k,53) + het_rates(k,20) ) - mat(k,53) = -( rxt(k,54) + het_rates(k,21) ) - mat(k,81) = -( rxt(k,55) + het_rates(k,22) ) - mat(k,57) = -( rxt(k,56) + het_rates(k,23) ) - mat(k,86) = -( rxt(k,57) + het_rates(k,24) ) - mat(k,61) = -( rxt(k,58) + het_rates(k,25) ) - mat(k,246) = -( rxt(k,59) + het_rates(k,26) ) - mat(k,1021) = -( rxt(k,22) + rxt(k,23) + het_rates(k,27) ) - mat(k,210) = rxt(k,28) - mat(k,1523) = .180_r8*rxt(k,29) - mat(k,610) = rxt(k,33) - mat(k,616) = rxt(k,35) - mat(k,271) = rxt(k,36) - mat(k,660) = 1.340_r8*rxt(k,37) - mat(k,201) = rxt(k,41) - mat(k,588) = rxt(k,42) - mat(k,290) = rxt(k,44) - mat(k,218) = rxt(k,45) - mat(k,230) = 2.000_r8*rxt(k,296) - mat(k,325) = -( rxt(k,60) + het_rates(k,28) ) - mat(k,45) = -( rxt(k,61) + het_rates(k,29) ) - mat(k,640) = -( rxt(k,24) + het_rates(k,30) ) + mat(k,203) = -( rxt(k,21) + het_rates(k,14) ) + mat(k,46) = -( het_rates(k,15) ) + mat(k,39) = -( rxt(k,51) + het_rates(k,16) ) + mat(k,72) = -( rxt(k,52) + het_rates(k,17) ) + mat(k,77) = -( rxt(k,53) + het_rates(k,18) ) + mat(k,50) = -( rxt(k,54) + het_rates(k,19) ) + mat(k,82) = -( rxt(k,55) + het_rates(k,20) ) + mat(k,54) = -( rxt(k,56) + het_rates(k,21) ) + mat(k,87) = -( rxt(k,57) + het_rates(k,22) ) + mat(k,58) = -( rxt(k,58) + het_rates(k,23) ) + mat(k,246) = -( rxt(k,59) + het_rates(k,24) ) + mat(k,1439) = -( rxt(k,22) + rxt(k,23) + het_rates(k,25) ) + mat(k,219) = rxt(k,28) + mat(k,943) = .180_r8*rxt(k,29) + mat(k,599) = rxt(k,33) + mat(k,618) = rxt(k,35) + mat(k,301) = rxt(k,36) + mat(k,662) = 1.340_r8*rxt(k,37) + mat(k,202) = rxt(k,41) + mat(k,591) = rxt(k,42) + mat(k,292) = rxt(k,44) + mat(k,213) = rxt(k,45) + mat(k,231) = 2.000_r8*rxt(k,296) + mat(k,325) = -( rxt(k,60) + het_rates(k,26) ) + mat(k,62) = -( rxt(k,61) + het_rates(k,27) ) + mat(k,640) = -( rxt(k,24) + het_rates(k,28) ) mat(k,170) = rxt(k,20) mat(k,289) = rxt(k,44) - mat(k,189) = -( rxt(k,62) + het_rates(k,31) ) - mat(k,793) = -( het_rates(k,32) ) - mat(k,396) = rxt(k,25) - mat(k,684) = rxt(k,26) - mat(k,615) = rxt(k,35) - mat(k,658) = 1.340_r8*rxt(k,37) - mat(k,746) = .300_r8*rxt(k,40) - mat(k,199) = rxt(k,41) - mat(k,275) = .600_r8*rxt(k,43) + rxt(k,303) - mat(k,217) = rxt(k,45) - mat(k,394) = -( rxt(k,25) + het_rates(k,33) ) + mat(k,181) = -( rxt(k,62) + het_rates(k,29) ) + mat(k,375) = -( rxt(k,25) + het_rates(k,30) ) mat(k,204) = .820_r8*rxt(k,21) - mat(k,683) = -( rxt(k,26) + het_rates(k,34) ) - mat(k,353) = -( het_rates(k,35) ) - mat(k,318) = -( rxt(k,27) + het_rates(k,36) ) - mat(k,1194) = -( het_rates(k,37) ) - mat(k,645) = rxt(k,24) - mat(k,397) = rxt(k,25) - mat(k,322) = rxt(k,27) - mat(k,1527) = rxt(k,30) - mat(k,754) = .300_r8*rxt(k,40) - mat(k,279) = .400_r8*rxt(k,43) - mat(k,329) = rxt(k,60) - mat(k,193) = rxt(k,62) - mat(k,282) = -( het_rates(k,38) ) - mat(k,209) = -( rxt(k,28) + het_rates(k,39) ) - mat(k,1534) = -( rxt(k,29) + rxt(k,30) + het_rates(k,40) ) - mat(k,221) = -( rxt(k,63) + het_rates(k,41) ) - mat(k,1323) = -( het_rates(k,42) ) - mat(k,106) = rxt(k,47) - mat(k,40) = 4.000_r8*rxt(k,51) - mat(k,75) = rxt(k,52) - mat(k,56) = 2.000_r8*rxt(k,54) - mat(k,85) = 2.000_r8*rxt(k,55) - mat(k,60) = 2.000_r8*rxt(k,56) - mat(k,90) = rxt(k,57) - mat(k,64) = 2.000_r8*rxt(k,58) - mat(k,46) = 3.000_r8*rxt(k,61) - mat(k,194) = rxt(k,62) - mat(k,92) = 2.000_r8*rxt(k,64) + mat(k,683) = -( rxt(k,26) + het_rates(k,31) ) + mat(k,353) = -( het_rates(k,32) ) + mat(k,311) = -( rxt(k,27) + het_rates(k,33) ) + mat(k,973) = -( het_rates(k,34) ) + mat(k,643) = rxt(k,24) + mat(k,378) = rxt(k,25) + mat(k,314) = rxt(k,27) + mat(k,932) = rxt(k,30) + mat(k,750) = .300_r8*rxt(k,40) + mat(k,277) = .400_r8*rxt(k,43) + mat(k,328) = rxt(k,60) + mat(k,184) = rxt(k,62) + mat(k,282) = -( het_rates(k,35) ) + mat(k,215) = -( rxt(k,28) + het_rates(k,36) ) + mat(k,931) = -( rxt(k,29) + rxt(k,30) + het_rates(k,37) ) + mat(k,221) = -( rxt(k,63) + het_rates(k,38) ) + mat(k,1301) = -( het_rates(k,39) ) + mat(k,104) = rxt(k,47) + mat(k,41) = 4.000_r8*rxt(k,51) + mat(k,76) = rxt(k,52) + mat(k,53) = 2.000_r8*rxt(k,54) + mat(k,86) = 2.000_r8*rxt(k,55) + mat(k,57) = 2.000_r8*rxt(k,56) + mat(k,91) = rxt(k,57) + mat(k,61) = 2.000_r8*rxt(k,58) + mat(k,64) = 3.000_r8*rxt(k,61) + mat(k,186) = rxt(k,62) + mat(k,93) = 2.000_r8*rxt(k,64) mat(k,31) = 2.000_r8*rxt(k,65) - mat(k,968) = rxt(k,66) - mat(k,579) = rxt(k,67) - mat(k,115) = rxt(k,70) - mat(k,110) = rxt(k,73) - mat(k,120) = rxt(k,74) - mat(k,145) = rxt(k,75) - mat(k,868) = rxt(k,76) - mat(k,454) = rxt(k,79) - mat(k,91) = -( rxt(k,64) + het_rates(k,43) ) - mat(k,29) = -( rxt(k,65) + rxt(k,217) + het_rates(k,44) ) - mat(k,959) = -( rxt(k,66) + het_rates(k,45) ) - mat(k,575) = rxt(k,68) + mat(k,1328) = rxt(k,66) + mat(k,561) = rxt(k,67) + mat(k,113) = rxt(k,70) + mat(k,109) = rxt(k,73) + mat(k,118) = rxt(k,74) + mat(k,146) = rxt(k,75) + mat(k,867) = rxt(k,76) + mat(k,437) = rxt(k,79) + mat(k,92) = -( rxt(k,64) + het_rates(k,40) ) + mat(k,30) = -( rxt(k,65) + rxt(k,217) + het_rates(k,41) ) + mat(k,1329) = -( rxt(k,66) + het_rates(k,42) ) + mat(k,562) = rxt(k,68) mat(k,176) = rxt(k,80) - mat(k,30) = 2.000_r8*rxt(k,217) - mat(k,573) = -( rxt(k,67) + rxt(k,68) + rxt(k,398) + rxt(k,403) + rxt(k,409) & - + het_rates(k,46) ) - mat(k,4) = -( het_rates(k,47) ) - mat(k,649) = -( het_rates(k,48) ) - mat(k,1012) = rxt(k,22) + rxt(k,23) + mat(k,32) = 2.000_r8*rxt(k,217) + mat(k,556) = -( rxt(k,67) + rxt(k,68) + rxt(k,398) + rxt(k,403) + rxt(k,409) & + + het_rates(k,43) ) + mat(k,4) = -( het_rates(k,44) ) + mat(k,649) = -( het_rates(k,45) ) + mat(k,1421) = rxt(k,22) + rxt(k,23) mat(k,641) = rxt(k,24) mat(k,682) = rxt(k,26) - mat(k,1514) = .380_r8*rxt(k,29) + mat(k,925) = .380_r8*rxt(k,29) mat(k,814) = rxt(k,31) + rxt(k,82) - mat(k,608) = rxt(k,33) + mat(k,595) = rxt(k,33) mat(k,366) = 2.000_r8*rxt(k,34) mat(k,653) = 1.340_r8*rxt(k,38) mat(k,741) = .700_r8*rxt(k,40) mat(k,585) = rxt(k,42) - mat(k,184) = rxt(k,109) - mat(k,815) = -( rxt(k,31) + rxt(k,82) + het_rates(k,49) ) - mat(k,320) = rxt(k,27) - mat(k,1515) = .440_r8*rxt(k,29) + mat(k,192) = rxt(k,109) + mat(k,815) = -( rxt(k,31) + rxt(k,82) + het_rates(k,46) ) + mat(k,313) = rxt(k,27) + mat(k,926) = .440_r8*rxt(k,29) mat(k,276) = .400_r8*rxt(k,43) - mat(k,101) = -( rxt(k,69) + het_rates(k,50) ) - mat(k,72) = rxt(k,52) - mat(k,77) = rxt(k,53) - mat(k,82) = rxt(k,55) - mat(k,58) = 2.000_r8*rxt(k,56) - mat(k,87) = 2.000_r8*rxt(k,57) - mat(k,62) = rxt(k,58) - mat(k,42) = 2.000_r8*rxt(k,71) - mat(k,116) = rxt(k,74) + mat(k,119) = -( rxt(k,69) + het_rates(k,47) ) + mat(k,73) = rxt(k,52) + mat(k,78) = rxt(k,53) + mat(k,84) = rxt(k,55) + mat(k,55) = 2.000_r8*rxt(k,56) + mat(k,88) = 2.000_r8*rxt(k,57) + mat(k,59) = rxt(k,58) + mat(k,43) = 2.000_r8*rxt(k,71) + mat(k,115) = rxt(k,74) mat(k,141) = rxt(k,75) - mat(k,112) = -( rxt(k,70) + het_rates(k,51) ) - mat(k,54) = rxt(k,54) + mat(k,110) = -( rxt(k,70) + het_rates(k,48) ) + mat(k,51) = rxt(k,54) mat(k,83) = rxt(k,55) - mat(k,108) = rxt(k,73) - mat(k,135) = -( het_rates(k,52) ) - mat(k,5) = -( het_rates(k,53) ) - mat(k,6) = -( het_rates(k,54) ) - mat(k,7) = -( het_rates(k,55) ) - mat(k,227) = -( rxt(k,296) + het_rates(k,56) ) - mat(k,66) = rxt(k,32) - mat(k,377) = -( het_rates(k,57) ) - mat(k,65) = -( rxt(k,32) + het_rates(k,58) ) - mat(k,490) = -( het_rates(k,59) ) - mat(k,78) = rxt(k,53) - mat(k,88) = rxt(k,57) - mat(k,102) = 2.000_r8*rxt(k,69) - mat(k,113) = rxt(k,70) + mat(k,106) = rxt(k,73) + mat(k,135) = -( het_rates(k,49) ) + mat(k,5) = -( het_rates(k,50) ) + mat(k,6) = -( het_rates(k,51) ) + mat(k,7) = -( het_rates(k,52) ) + mat(k,66) = -( rxt(k,32) + het_rates(k,53) ) + mat(k,490) = -( het_rates(k,54) ) + mat(k,79) = rxt(k,53) + mat(k,89) = rxt(k,57) + mat(k,120) = 2.000_r8*rxt(k,69) + mat(k,111) = rxt(k,70) mat(k,149) = rxt(k,77) - mat(k,607) = -( rxt(k,33) + het_rates(k,60) ) - mat(k,365) = -( rxt(k,34) + het_rates(k,61) ) - mat(k,1556) = -( het_rates(k,62) ) - mat(k,1583) = rxt(k,2) + 2.000_r8*rxt(k,3) - mat(k,1033) = 2.000_r8*rxt(k,22) - mat(k,213) = rxt(k,28) - mat(k,1535) = .330_r8*rxt(k,29) + rxt(k,30) - mat(k,439) = rxt(k,72) - mat(k,871) = rxt(k,76) + mat(k,594) = -( rxt(k,33) + het_rates(k,55) ) + mat(k,365) = -( rxt(k,34) + het_rates(k,56) ) + mat(k,1042) = -( het_rates(k,57) ) + mat(k,1571) = rxt(k,2) + 2.000_r8*rxt(k,3) + mat(k,1430) = 2.000_r8*rxt(k,22) + mat(k,217) = rxt(k,28) + mat(k,934) = .330_r8*rxt(k,29) + rxt(k,30) + mat(k,452) = rxt(k,72) + mat(k,863) = rxt(k,76) mat(k,150) = rxt(k,77) - mat(k,826) = -( het_rates(k,63) ) + mat(k,826) = -( het_rates(k,58) ) mat(k,1563) = rxt(k,1) - mat(k,1014) = rxt(k,23) - mat(k,1516) = 1.440_r8*rxt(k,29) - mat(k,41) = -( rxt(k,71) + het_rates(k,64) ) - mat(k,311) = -( rxt(k,4) + het_rates(k,65) ) - mat(k,68) = -( rxt(k,108) + het_rates(k,66) ) - mat(k,433) = -( rxt(k,72) + het_rates(k,67) ) - mat(k,107) = -( rxt(k,73) + het_rates(k,68) ) - mat(k,117) = -( rxt(k,74) + het_rates(k,69) ) - mat(k,142) = -( rxt(k,75) + het_rates(k,70) ) - mat(k,860) = -( rxt(k,76) + het_rates(k,71) ) - mat(k,148) = -( rxt(k,77) + het_rates(k,72) ) - mat(k,1152) = -( rxt(k,9) + het_rates(k,73) ) - mat(k,153) = 2.000_r8*rxt(k,388) + 2.000_r8*rxt(k,394) + 2.000_r8*rxt(k,397) & + mat(k,1423) = rxt(k,23) + mat(k,927) = 1.440_r8*rxt(k,29) + mat(k,42) = -( rxt(k,71) + het_rates(k,59) ) + mat(k,318) = -( rxt(k,4) + het_rates(k,60) ) + mat(k,69) = -( rxt(k,108) + het_rates(k,61) ) + mat(k,450) = -( rxt(k,72) + het_rates(k,62) ) + mat(k,105) = -( rxt(k,73) + het_rates(k,63) ) + mat(k,114) = -( rxt(k,74) + het_rates(k,64) ) + mat(k,142) = -( rxt(k,75) + het_rates(k,65) ) + mat(k,860) = -( rxt(k,76) + het_rates(k,66) ) + mat(k,148) = -( rxt(k,77) + het_rates(k,67) ) + mat(k,1509) = -( rxt(k,9) + het_rates(k,68) ) + mat(k,156) = 2.000_r8*rxt(k,388) + 2.000_r8*rxt(k,394) + 2.000_r8*rxt(k,397) & + 2.000_r8*rxt(k,408) - mat(k,1000) = .500_r8*rxt(k,390) - mat(k,1239) = rxt(k,391) - mat(k,590) = rxt(k,392) - mat(k,299) = rxt(k,396) + rxt(k,399) + rxt(k,404) - mat(k,577) = rxt(k,398) + rxt(k,403) + rxt(k,409) - mat(k,232) = -( rxt(k,10) + rxt(k,11) + rxt(k,177) + het_rates(k,74) ) - mat(k,386) = -( rxt(k,78) + het_rates(k,75) ) - mat(k,295) = rxt(k,396) + rxt(k,399) + rxt(k,404) - mat(k,451) = -( rxt(k,79) + het_rates(k,76) ) - mat(k,572) = rxt(k,398) + rxt(k,403) + rxt(k,409) - mat(k,613) = -( rxt(k,35) + het_rates(k,77) ) - mat(k,178) = -( het_rates(k,78) ) - mat(k,473) = -( het_rates(k,79) ) - mat(k,411) = -( het_rates(k,80) ) - mat(k,702) = -( het_rates(k,81) ) - mat(k,266) = -( rxt(k,36) + het_rates(k,82) ) + mat(k,1090) = .500_r8*rxt(k,390) + mat(k,1032) = rxt(k,391) + mat(k,592) = rxt(k,392) + mat(k,273) = rxt(k,396) + rxt(k,399) + rxt(k,404) + mat(k,564) = rxt(k,398) + rxt(k,403) + rxt(k,409) + mat(k,239) = -( rxt(k,10) + rxt(k,11) + rxt(k,177) + het_rates(k,69) ) + mat(k,382) = -( rxt(k,78) + het_rates(k,70) ) + mat(k,267) = rxt(k,396) + rxt(k,399) + rxt(k,404) + mat(k,434) = -( rxt(k,79) + het_rates(k,71) ) + mat(k,555) = rxt(k,398) + rxt(k,403) + rxt(k,409) + mat(k,613) = -( rxt(k,35) + het_rates(k,72) ) + mat(k,178) = -( het_rates(k,73) ) + mat(k,473) = -( het_rates(k,74) ) + mat(k,400) = -( het_rates(k,75) ) + mat(k,294) = -( rxt(k,36) + het_rates(k,76) ) + mat(k,654) = -( rxt(k,37) + rxt(k,38) + het_rates(k,77) ) + mat(k,295) = .300_r8*rxt(k,36) + mat(k,163) = -( het_rates(k,78) ) + mat(k,302) = -( rxt(k,39) + rxt(k,343) + het_rates(k,79) ) + mat(k,744) = -( rxt(k,40) + het_rates(k,80) ) + mat(k,298) = .700_r8*rxt(k,36) + mat(k,573) = -( rxt(k,83) + het_rates(k,81) ) + mat(k,1106) = rxt(k,16) + mat(k,540) = rxt(k,152) + mat(k,505) = rxt(k,427) + mat(k,122) = -( rxt(k,12) + het_rates(k,82) ) + mat(k,151) = -( rxt(k,13) + rxt(k,14) + rxt(k,180) + rxt(k,388) + rxt(k,394) & + + rxt(k,397) + rxt(k,408) + het_rates(k,83) ) + mat(k,8) = -( het_rates(k,84) ) + mat(k,9) = -( het_rates(k,85) ) end do end subroutine linmat01 subroutine linmat02( avec_len, mat, y, rxt, het_rates ) @@ -246,197 +246,198 @@ subroutine linmat02( avec_len, mat, y, rxt, het_rates ) !---------------------------------------------- integer :: k do k = 1,avec_len - mat(k,654) = -( rxt(k,37) + rxt(k,38) + het_rates(k,83) ) - mat(k,267) = .300_r8*rxt(k,36) - mat(k,726) = -( het_rates(k,84) ) - mat(k,163) = -( het_rates(k,85) ) - mat(k,765) = -( het_rates(k,86) ) - mat(k,657) = .660_r8*rxt(k,37) - mat(k,304) = rxt(k,39) + rxt(k,343) - mat(k,302) = -( rxt(k,39) + rxt(k,343) + het_rates(k,87) ) - mat(k,744) = -( rxt(k,40) + het_rates(k,88) ) - mat(k,270) = .700_r8*rxt(k,36) - mat(k,561) = -( rxt(k,83) + het_rates(k,89) ) - mat(k,1477) = rxt(k,16) - mat(k,540) = rxt(k,152) - mat(k,505) = rxt(k,427) - mat(k,122) = -( rxt(k,12) + het_rates(k,90) ) - mat(k,151) = -( rxt(k,13) + rxt(k,14) + rxt(k,180) + rxt(k,388) + rxt(k,394) & - + rxt(k,397) + rxt(k,408) + het_rates(k,91) ) - mat(k,8) = -( het_rates(k,92) ) - mat(k,9) = -( het_rates(k,93) ) - mat(k,10) = -( het_rates(k,94) ) - mat(k,35) = -( het_rates(k,95) ) - mat(k,11) = -( rxt(k,389) + het_rates(k,96) ) - mat(k,1508) = -( rxt(k,15) + rxt(k,16) + het_rates(k,97) ) - mat(k,156) = rxt(k,14) - mat(k,1007) = rxt(k,17) + .500_r8*rxt(k,390) - mat(k,1246) = rxt(k,19) - mat(k,518) = rxt(k,424) - mat(k,259) = rxt(k,437) - mat(k,996) = -( rxt(k,17) + rxt(k,390) + het_rates(k,98) ) - mat(k,1148) = rxt(k,9) - mat(k,234) = rxt(k,11) + rxt(k,177) - mat(k,152) = rxt(k,13) + rxt(k,180) - mat(k,1235) = rxt(k,18) - mat(k,306) = rxt(k,39) + rxt(k,343) + mat(k,10) = -( het_rates(k,86) ) + mat(k,36) = -( het_rates(k,88) ) + mat(k,11) = -( rxt(k,389) + het_rates(k,89) ) + mat(k,1129) = -( rxt(k,15) + rxt(k,16) + het_rates(k,91) ) + mat(k,154) = rxt(k,14) + mat(k,1081) = rxt(k,17) + .500_r8*rxt(k,390) + mat(k,1023) = rxt(k,19) + mat(k,516) = rxt(k,424) + mat(k,258) = rxt(k,437) + mat(k,1080) = -( rxt(k,17) + rxt(k,390) + het_rates(k,92) ) + mat(k,1499) = rxt(k,9) + mat(k,242) = rxt(k,11) + rxt(k,177) + mat(k,153) = rxt(k,13) + rxt(k,180) + mat(k,1022) = rxt(k,18) + mat(k,307) = rxt(k,39) + rxt(k,343) mat(k,200) = rxt(k,41) - mat(k,587) = rxt(k,42) - mat(k,277) = .600_r8*rxt(k,43) + rxt(k,303) - mat(k,298) = rxt(k,49) - mat(k,576) = rxt(k,68) - mat(k,1241) = -( rxt(k,18) + rxt(k,19) + rxt(k,391) + het_rates(k,99) ) - mat(k,236) = rxt(k,10) - mat(k,154) = rxt(k,13) + rxt(k,14) + rxt(k,180) - mat(k,280) = .400_r8*rxt(k,43) - mat(k,300) = rxt(k,50) - mat(k,578) = rxt(k,67) - mat(k,197) = -( rxt(k,41) + het_rates(k,100) ) - mat(k,12) = -( het_rates(k,101) ) - mat(k,13) = -( het_rates(k,102) ) - mat(k,14) = -( het_rates(k,103) ) - mat(k,15) = -( het_rates(k,104) ) - mat(k,16) = -( het_rates(k,105) ) - mat(k,1459) = -( rxt(k,92) + rxt(k,93) + rxt(k,94) + rxt(k,95) + rxt(k,96) & - + rxt(k,97) + het_rates(k,106) ) - mat(k,1580) = rxt(k,3) - mat(k,919) = rxt(k,5) + 2.000_r8*rxt(k,6) + rxt(k,98) + 2.000_r8*rxt(k,99) & + mat(k,588) = rxt(k,42) + mat(k,279) = .600_r8*rxt(k,43) + rxt(k,303) + mat(k,270) = rxt(k,49) + mat(k,559) = rxt(k,68) + mat(k,1020) = -( rxt(k,18) + rxt(k,19) + rxt(k,391) + het_rates(k,93) ) + mat(k,241) = rxt(k,10) + mat(k,152) = rxt(k,13) + rxt(k,14) + rxt(k,180) + mat(k,278) = .400_r8*rxt(k,43) + mat(k,269) = rxt(k,50) + mat(k,558) = rxt(k,67) + mat(k,197) = -( rxt(k,41) + het_rates(k,94) ) + mat(k,12) = -( het_rates(k,95) ) + mat(k,13) = -( het_rates(k,96) ) + mat(k,14) = -( het_rates(k,97) ) + mat(k,15) = -( het_rates(k,98) ) + mat(k,16) = -( het_rates(k,99) ) + mat(k,1485) = -( rxt(k,92) + rxt(k,93) + rxt(k,94) + rxt(k,95) + rxt(k,96) & + + rxt(k,97) + het_rates(k,100) ) + mat(k,1581) = rxt(k,3) + mat(k,920) = rxt(k,5) + 2.000_r8*rxt(k,6) + rxt(k,98) + 2.000_r8*rxt(k,99) & + rxt(k,100) + rxt(k,101) + rxt(k,103) + 2.000_r8*rxt(k,104) & + rxt(k,105) + rxt(k,106) - mat(k,1135) = rxt(k,8) + mat(k,1554) = rxt(k,8) mat(k,155) = rxt(k,14) - mat(k,1507) = rxt(k,16) - mat(k,1006) = rxt(k,17) - mat(k,1245) = rxt(k,18) - mat(k,1532) = .180_r8*rxt(k,29) - mat(k,821) = rxt(k,31) + rxt(k,82) - mat(k,943) = rxt(k,48) - mat(k,970) = rxt(k,66) + mat(k,1137) = rxt(k,16) + mat(k,1089) = rxt(k,17) + mat(k,1031) = rxt(k,18) + mat(k,944) = .180_r8*rxt(k,29) + mat(k,823) = rxt(k,31) + rxt(k,82) + mat(k,1357) = rxt(k,48) + mat(k,1333) = rxt(k,66) mat(k,177) = rxt(k,80) - mat(k,851) = rxt(k,110) + mat(k,852) = rxt(k,110) mat(k,552) = rxt(k,111) mat(k,133) = rxt(k,112) - mat(k,1287) = rxt(k,119) + mat(k,1179) = rxt(k,119) mat(k,265) = rxt(k,431) - mat(k,258) = rxt(k,436) + mat(k,259) = rxt(k,436) mat(k,909) = -( rxt(k,5) + rxt(k,6) + rxt(k,98) + rxt(k,99) + rxt(k,100) & + rxt(k,101) + rxt(k,102) + rxt(k,103) + rxt(k,104) + rxt(k,105) & - + rxt(k,106) + rxt(k,107) + het_rates(k,107) ) - mat(k,1122) = rxt(k,8) - mat(k,1232) = rxt(k,19) - mat(k,94) = rxt(k,115) + rxt(k,124) - mat(k,97) = rxt(k,116) - mat(k,1128) = -( rxt(k,7) + rxt(k,8) + het_rates(k,108) ) - mat(k,173) = -( rxt(k,80) + het_rates(k,109) ) - mat(k,181) = -( rxt(k,109) + het_rates(k,110) ) - mat(k,1413) = -( het_rates(k,111) ) - mat(k,1579) = rxt(k,2) - mat(k,315) = 2.000_r8*rxt(k,4) - mat(k,1157) = rxt(k,9) - mat(k,237) = rxt(k,10) - mat(k,172) = rxt(k,20) - mat(k,207) = rxt(k,21) - mat(k,323) = rxt(k,27) - mat(k,212) = rxt(k,28) - mat(k,1531) = .330_r8*rxt(k,29) - mat(k,67) = rxt(k,32) - mat(k,273) = rxt(k,36) - mat(k,292) = rxt(k,44) - mat(k,219) = rxt(k,45) - mat(k,100) = rxt(k,46) - mat(k,391) = rxt(k,78) - mat(k,455) = rxt(k,79) - mat(k,1005) = .500_r8*rxt(k,390) - mat(k,584) = -( rxt(k,42) + rxt(k,392) + het_rates(k,112) ) - mat(k,274) = -( rxt(k,43) + rxt(k,303) + het_rates(k,113) ) - mat(k,401) = -( het_rates(k,114) ) - mat(k,17) = -( het_rates(k,115) ) - mat(k,18) = -( het_rates(k,116) ) - mat(k,286) = -( rxt(k,44) + het_rates(k,117) ) - mat(k,595) = -( het_rates(k,118) ) - mat(k,215) = -( rxt(k,45) + het_rates(k,119) ) - mat(k,358) = -( het_rates(k,120) ) - mat(k,182) = rxt(k,109) + + rxt(k,106) + rxt(k,107) + het_rates(k,101) ) + mat(k,1540) = rxt(k,8) + mat(k,1017) = rxt(k,19) + mat(k,95) = rxt(k,115) + rxt(k,124) + mat(k,98) = rxt(k,116) + mat(k,1556) = -( rxt(k,7) + rxt(k,8) + het_rates(k,102) ) + mat(k,17) = -( het_rates(k,103) ) + mat(k,173) = -( rxt(k,80) + het_rates(k,104) ) + mat(k,189) = -( rxt(k,109) + het_rates(k,105) ) + mat(k,1262) = -( het_rates(k,106) ) + mat(k,1575) = rxt(k,2) + mat(k,320) = 2.000_r8*rxt(k,4) + mat(k,1502) = rxt(k,9) + mat(k,243) = rxt(k,10) + mat(k,171) = rxt(k,20) + mat(k,206) = rxt(k,21) + mat(k,315) = rxt(k,27) + mat(k,218) = rxt(k,28) + mat(k,938) = .330_r8*rxt(k,29) + mat(k,68) = rxt(k,32) + mat(k,299) = rxt(k,36) + mat(k,290) = rxt(k,44) + mat(k,212) = rxt(k,45) + mat(k,101) = rxt(k,46) + mat(k,385) = rxt(k,78) + mat(k,436) = rxt(k,79) + mat(k,1083) = .500_r8*rxt(k,390) + mat(k,584) = -( rxt(k,42) + rxt(k,392) + het_rates(k,107) ) + mat(k,274) = -( rxt(k,43) + rxt(k,303) + het_rates(k,108) ) + mat(k,18) = -( het_rates(k,109) ) + mat(k,19) = -( het_rates(k,110) ) + mat(k,286) = -( rxt(k,44) + het_rates(k,111) ) + mat(k,209) = -( rxt(k,45) + het_rates(k,112) ) + mat(k,358) = -( het_rates(k,113) ) + mat(k,190) = rxt(k,109) mat(k,839) = rxt(k,110) - mat(k,19) = -( rxt(k,81) + het_rates(k,121) ) - mat(k,841) = -( rxt(k,110) + het_rates(k,122) ) + mat(k,20) = -( rxt(k,81) + het_rates(k,114) ) + mat(k,841) = -( rxt(k,110) + het_rates(k,115) ) mat(k,549) = rxt(k,111) - mat(k,548) = -( rxt(k,111) + het_rates(k,123) ) + mat(k,548) = -( rxt(k,111) + het_rates(k,116) ) mat(k,132) = rxt(k,112) - mat(k,131) = -( rxt(k,112) + het_rates(k,124) ) - mat(k,69) = rxt(k,108) - mat(k,20) = -( het_rates(k,125) ) - mat(k,21) = -( het_rates(k,126) ) - mat(k,22) = -( het_rates(k,127) ) - mat(k,23) = -( het_rates(k,128) ) - mat(k,24) = -( rxt(k,113) + het_rates(k,129) ) - mat(k,25) = -( rxt(k,114) + het_rates(k,130) ) - mat(k,26) = -( rxt(k,393) + het_rates(k,131) ) - mat(k,28) = -( het_rates(k,132) ) - mat(k,27) = rxt(k,393) - mat(k,343) = -( het_rates(k,133) ) - mat(k,671) = -( het_rates(k,134) ) - mat(k,98) = -( rxt(k,46) + het_rates(k,135) ) - mat(k,526) = -( het_rates(k,138) ) - mat(k,1475) = rxt(k,15) - mat(k,559) = rxt(k,83) - mat(k,1435) = rxt(k,92) + rxt(k,93) + rxt(k,94) + rxt(k,95) + rxt(k,96) & + mat(k,131) = -( rxt(k,112) + het_rates(k,117) ) + mat(k,70) = rxt(k,108) + mat(k,21) = -( het_rates(k,118) ) + mat(k,22) = -( het_rates(k,119) ) + mat(k,23) = -( het_rates(k,120) ) + mat(k,24) = -( het_rates(k,121) ) + mat(k,25) = -( rxt(k,113) + het_rates(k,122) ) + mat(k,26) = -( rxt(k,114) + het_rates(k,123) ) + mat(k,27) = -( rxt(k,393) + het_rates(k,124) ) + mat(k,29) = -( het_rates(k,125) ) + mat(k,28) = rxt(k,393) + mat(k,343) = -( het_rates(k,126) ) + mat(k,99) = -( rxt(k,46) + het_rates(k,127) ) + mat(k,424) = -( het_rates(k,128) ) + mat(k,460) = -( het_rates(k,129) ) + mat(k,793) = -( het_rates(k,130) ) + mat(k,377) = rxt(k,25) + mat(k,684) = rxt(k,26) + mat(k,615) = rxt(k,35) + mat(k,658) = 1.340_r8*rxt(k,37) + mat(k,746) = .300_r8*rxt(k,40) + mat(k,199) = rxt(k,41) + mat(k,275) = .600_r8*rxt(k,43) + rxt(k,303) + mat(k,211) = rxt(k,45) + mat(k,526) = -( het_rates(k,131) ) + mat(k,1104) = rxt(k,15) + mat(k,571) = rxt(k,83) + mat(k,1460) = rxt(k,92) + rxt(k,93) + rxt(k,94) + rxt(k,95) + rxt(k,96) & + rxt(k,97) mat(k,900) = rxt(k,98) + rxt(k,100) + rxt(k,101) + rxt(k,102) + rxt(k,103) & + rxt(k,105) + rxt(k,106) + rxt(k,107) - mat(k,1081) = -( rxt(k,387) + het_rates(k,139) ) - mat(k,235) = rxt(k,11) + rxt(k,177) - mat(k,171) = rxt(k,20) - mat(k,206) = rxt(k,21) - mat(k,643) = rxt(k,24) - mat(k,686) = rxt(k,26) - mat(k,611) = 2.000_r8*rxt(k,33) - mat(k,368) = 2.000_r8*rxt(k,34) + mat(k,227) = -( rxt(k,296) + het_rates(k,132) ) + mat(k,67) = rxt(k,32) + mat(k,392) = -( het_rates(k,133) ) + mat(k,1414) = -( rxt(k,387) + het_rates(k,134) ) + mat(k,244) = rxt(k,11) + rxt(k,177) + mat(k,172) = rxt(k,20) + mat(k,207) = rxt(k,21) + mat(k,646) = rxt(k,24) + mat(k,688) = rxt(k,26) + mat(k,598) = 2.000_r8*rxt(k,33) + mat(k,369) = 2.000_r8*rxt(k,34) mat(k,617) = rxt(k,35) - mat(k,272) = rxt(k,36) + mat(k,300) = rxt(k,36) mat(k,661) = 1.340_r8*rxt(k,37) + .660_r8*rxt(k,38) - mat(k,589) = rxt(k,42) + mat(k,590) = rxt(k,42) mat(k,291) = rxt(k,44) - mat(k,231) = rxt(k,296) - mat(k,539) = -( rxt(k,152) + het_rates(k,140) ) - mat(k,334) = -( het_rates(k,141) ) + mat(k,230) = rxt(k,296) + mat(k,702) = -( het_rates(k,135) ) + mat(k,726) = -( het_rates(k,136) ) + mat(k,765) = -( het_rates(k,137) ) + mat(k,657) = .660_r8*rxt(k,37) + mat(k,304) = rxt(k,39) + rxt(k,343) + mat(k,539) = -( rxt(k,152) + het_rates(k,138) ) + mat(k,334) = -( het_rates(k,139) ) mat(k,261) = rxt(k,431) mat(k,255) = rxt(k,436) - mat(k,370) = -( het_rates(k,142) ) - mat(k,1467) = rxt(k,15) + mat(k,370) = -( het_rates(k,140) ) + mat(k,1096) = rxt(k,15) mat(k,510) = rxt(k,424) mat(k,499) = rxt(k,427) - mat(k,442) = -( het_rates(k,143) ) - mat(k,556) = rxt(k,83) + mat(k,442) = -( het_rates(k,141) ) + mat(k,568) = rxt(k,83) mat(k,256) = rxt(k,437) - mat(k,1284) = -( rxt(k,119) + het_rates(k,144) ) - mat(k,1577) = rxt(k,1) - mat(k,916) = rxt(k,5) - mat(k,1132) = rxt(k,7) - mat(k,124) = rxt(k,12) - mat(k,93) = -( rxt(k,115) + rxt(k,124) + het_rates(k,145) ) - mat(k,1094) = rxt(k,7) - mat(k,95) = rxt(k,128) - mat(k,96) = -( rxt(k,116) + rxt(k,128) + het_rates(k,146) ) - mat(k,511) = -( rxt(k,424) + het_rates(k,147) ) + mat(k,1172) = -( rxt(k,119) + het_rates(k,142) ) + mat(k,1574) = rxt(k,1) + mat(k,913) = rxt(k,5) + mat(k,1547) = rxt(k,7) + mat(k,125) = rxt(k,12) + mat(k,94) = -( rxt(k,115) + rxt(k,124) + het_rates(k,143) ) + mat(k,1512) = rxt(k,7) + mat(k,96) = rxt(k,128) + mat(k,97) = -( rxt(k,116) + rxt(k,128) + het_rates(k,144) ) + mat(k,511) = -( rxt(k,424) + het_rates(k,145) ) mat(k,899) = rxt(k,102) + rxt(k,107) - mat(k,501) = -( rxt(k,427) + het_rates(k,148) ) - mat(k,1433) = rxt(k,93) + rxt(k,97) + mat(k,501) = -( rxt(k,427) + het_rates(k,146) ) + mat(k,1458) = rxt(k,93) + rxt(k,97) mat(k,898) = rxt(k,103) + rxt(k,106) mat(k,257) = rxt(k,411) mat(k,262) = rxt(k,412) - mat(k,260) = -( rxt(k,412) + rxt(k,431) + het_rates(k,149) ) - mat(k,1423) = rxt(k,94) + rxt(k,95) + mat(k,260) = -( rxt(k,412) + rxt(k,431) + het_rates(k,147) ) + mat(k,1448) = rxt(k,94) + rxt(k,95) mat(k,893) = rxt(k,98) + rxt(k,100) mat(k,254) = rxt(k,413) mat(k,253) = -( rxt(k,411) + rxt(k,413) + rxt(k,436) + rxt(k,437) & - + het_rates(k,150) ) - mat(k,1422) = rxt(k,92) + rxt(k,96) + + het_rates(k,148) ) + mat(k,1447) = rxt(k,92) + rxt(k,96) mat(k,892) = rxt(k,101) + rxt(k,105) - mat(k,1584) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,151) ) - mat(k,1536) = .050_r8*rxt(k,29) - mat(k,70) = rxt(k,108) - mat(k,1093) = rxt(k,387) + mat(k,411) = -( het_rates(k,149) ) + mat(k,602) = -( het_rates(k,150) ) + mat(k,671) = -( het_rates(k,151) ) + mat(k,1584) = -( rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,152) ) + mat(k,947) = .050_r8*rxt(k,29) + mat(k,71) = rxt(k,108) + mat(k,1419) = rxt(k,387) end do end subroutine linmat02 subroutine linmat( avec_len, mat, y, rxt, het_rates ) diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_factor.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_factor.F90 index 0561e8ce8d..b70fe79761 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_factor.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_factor.F90 @@ -43,49 +43,50 @@ subroutine lu_fac01( avec_len, lu ) lu(k,24) = 1._r8 / lu(k,24) lu(k,25) = 1._r8 / lu(k,25) lu(k,26) = 1._r8 / lu(k,26) - lu(k,27) = lu(k,27) * lu(k,26) - lu(k,28) = 1._r8 / lu(k,28) + lu(k,27) = 1._r8 / lu(k,27) + lu(k,28) = lu(k,28) * lu(k,27) lu(k,29) = 1._r8 / lu(k,29) - lu(k,30) = lu(k,30) * lu(k,29) - lu(k,31) = lu(k,31) * lu(k,29) - lu(k,959) = lu(k,959) - lu(k,30) * lu(k,947) - lu(k,968) = lu(k,968) - lu(k,31) * lu(k,947) - lu(k,32) = 1._r8 / lu(k,32) - lu(k,33) = lu(k,33) * lu(k,32) - lu(k,34) = lu(k,34) * lu(k,32) - lu(k,1375) = lu(k,1375) - lu(k,33) * lu(k,1330) - lu(k,1413) = lu(k,1413) - lu(k,34) * lu(k,1330) - lu(k,35) = 1._r8 / lu(k,35) - lu(k,36) = lu(k,36) * lu(k,35) - lu(k,37) = lu(k,37) * lu(k,35) - lu(k,1413) = lu(k,1413) - lu(k,36) * lu(k,1331) - lu(k,1418) = lu(k,1418) - lu(k,37) * lu(k,1331) - lu(k,38) = 1._r8 / lu(k,38) - lu(k,39) = lu(k,39) * lu(k,38) - lu(k,40) = lu(k,40) * lu(k,38) - lu(k,1284) = lu(k,1284) - lu(k,39) * lu(k,1250) - lu(k,1285) = lu(k,1285) - lu(k,40) * lu(k,1250) - lu(k,41) = 1._r8 / lu(k,41) - lu(k,42) = lu(k,42) * lu(k,41) - lu(k,43) = lu(k,43) * lu(k,41) - lu(k,44) = lu(k,44) * lu(k,41) - lu(k,1260) = lu(k,1260) - lu(k,42) * lu(k,1251) - lu(k,1273) = lu(k,1273) - lu(k,43) * lu(k,1251) - lu(k,1284) = lu(k,1284) - lu(k,44) * lu(k,1251) - lu(k,45) = 1._r8 / lu(k,45) - lu(k,46) = lu(k,46) * lu(k,45) - lu(k,47) = lu(k,47) * lu(k,45) - lu(k,48) = lu(k,48) * lu(k,45) - lu(k,1412) = lu(k,1412) - lu(k,46) * lu(k,1332) - lu(k,1413) = lu(k,1413) - lu(k,47) * lu(k,1332) - lu(k,1418) = lu(k,1418) - lu(k,48) * lu(k,1332) - lu(k,49) = 1._r8 / lu(k,49) - lu(k,50) = lu(k,50) * lu(k,49) - lu(k,51) = lu(k,51) * lu(k,49) - lu(k,52) = lu(k,52) * lu(k,49) - lu(k,1375) = lu(k,1375) - lu(k,50) * lu(k,1333) - lu(k,1413) = lu(k,1413) - lu(k,51) * lu(k,1333) - lu(k,1418) = lu(k,1418) - lu(k,52) * lu(k,1333) + lu(k,30) = 1._r8 / lu(k,30) + lu(k,31) = lu(k,31) * lu(k,30) + lu(k,32) = lu(k,32) * lu(k,30) + lu(k,1328) = lu(k,1328) - lu(k,31) * lu(k,1310) + lu(k,1329) = lu(k,1329) - lu(k,32) * lu(k,1310) + lu(k,33) = 1._r8 / lu(k,33) + lu(k,34) = lu(k,34) * lu(k,33) + lu(k,35) = lu(k,35) * lu(k,33) + lu(k,1228) = lu(k,1228) - lu(k,34) * lu(k,1183) + lu(k,1262) = lu(k,1262) - lu(k,35) * lu(k,1183) + lu(k,36) = 1._r8 / lu(k,36) + lu(k,37) = lu(k,37) * lu(k,36) + lu(k,38) = lu(k,38) * lu(k,36) + lu(k,1262) = lu(k,1262) - lu(k,37) * lu(k,1184) + lu(k,1271) = lu(k,1271) - lu(k,38) * lu(k,1184) + lu(k,39) = 1._r8 / lu(k,39) + lu(k,40) = lu(k,40) * lu(k,39) + lu(k,41) = lu(k,41) * lu(k,39) + lu(k,1172) = lu(k,1172) - lu(k,40) * lu(k,1141) + lu(k,1174) = lu(k,1174) - lu(k,41) * lu(k,1141) + lu(k,42) = 1._r8 / lu(k,42) + lu(k,43) = lu(k,43) * lu(k,42) + lu(k,44) = lu(k,44) * lu(k,42) + lu(k,45) = lu(k,45) * lu(k,42) + lu(k,1154) = lu(k,1154) - lu(k,43) * lu(k,1142) + lu(k,1164) = lu(k,1164) - lu(k,44) * lu(k,1142) + lu(k,1172) = lu(k,1172) - lu(k,45) * lu(k,1142) + lu(k,46) = 1._r8 / lu(k,46) + lu(k,47) = lu(k,47) * lu(k,46) + lu(k,48) = lu(k,48) * lu(k,46) + lu(k,49) = lu(k,49) * lu(k,46) + lu(k,1228) = lu(k,1228) - lu(k,47) * lu(k,1185) + lu(k,1262) = lu(k,1262) - lu(k,48) * lu(k,1185) + lu(k,1271) = lu(k,1271) - lu(k,49) * lu(k,1185) + lu(k,50) = 1._r8 / lu(k,50) + lu(k,51) = lu(k,51) * lu(k,50) + lu(k,52) = lu(k,52) * lu(k,50) + lu(k,53) = lu(k,53) * lu(k,50) + lu(k,1152) = lu(k,1152) - lu(k,51) * lu(k,1143) + lu(k,1172) = lu(k,1172) - lu(k,52) * lu(k,1143) + lu(k,1174) = lu(k,1174) - lu(k,53) * lu(k,1143) end do end subroutine lu_fac01 subroutine lu_fac02( avec_len, lu ) @@ -102,107 +103,107 @@ subroutine lu_fac02( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,53) = 1._r8 / lu(k,53) - lu(k,54) = lu(k,54) * lu(k,53) - lu(k,55) = lu(k,55) * lu(k,53) - lu(k,56) = lu(k,56) * lu(k,53) - lu(k,1262) = lu(k,1262) - lu(k,54) * lu(k,1252) - lu(k,1284) = lu(k,1284) - lu(k,55) * lu(k,1252) - lu(k,1285) = lu(k,1285) - lu(k,56) * lu(k,1252) - lu(k,57) = 1._r8 / lu(k,57) - lu(k,58) = lu(k,58) * lu(k,57) - lu(k,59) = lu(k,59) * lu(k,57) - lu(k,60) = lu(k,60) * lu(k,57) - lu(k,1260) = lu(k,1260) - lu(k,58) * lu(k,1253) - lu(k,1284) = lu(k,1284) - lu(k,59) * lu(k,1253) - lu(k,1285) = lu(k,1285) - lu(k,60) * lu(k,1253) - lu(k,61) = 1._r8 / lu(k,61) - lu(k,62) = lu(k,62) * lu(k,61) - lu(k,63) = lu(k,63) * lu(k,61) - lu(k,64) = lu(k,64) * lu(k,61) - lu(k,1260) = lu(k,1260) - lu(k,62) * lu(k,1254) - lu(k,1284) = lu(k,1284) - lu(k,63) * lu(k,1254) - lu(k,1285) = lu(k,1285) - lu(k,64) * lu(k,1254) - lu(k,65) = 1._r8 / lu(k,65) - lu(k,66) = lu(k,66) * lu(k,65) - lu(k,67) = lu(k,67) * lu(k,65) - lu(k,376) = lu(k,376) - lu(k,66) * lu(k,375) - lu(k,383) = - lu(k,67) * lu(k,375) - lu(k,1042) = - lu(k,66) * lu(k,1035) - lu(k,1088) = lu(k,1088) - lu(k,67) * lu(k,1035) - lu(k,68) = 1._r8 / lu(k,68) - lu(k,69) = lu(k,69) * lu(k,68) - lu(k,70) = lu(k,70) * lu(k,68) - lu(k,131) = lu(k,131) - lu(k,69) * lu(k,130) - lu(k,134) = lu(k,134) - lu(k,70) * lu(k,130) - lu(k,1559) = lu(k,1559) - lu(k,69) * lu(k,1558) - lu(k,1584) = lu(k,1584) - lu(k,70) * lu(k,1558) - lu(k,71) = 1._r8 / lu(k,71) - lu(k,72) = lu(k,72) * lu(k,71) - lu(k,73) = lu(k,73) * lu(k,71) - lu(k,74) = lu(k,74) * lu(k,71) - lu(k,75) = lu(k,75) * lu(k,71) - lu(k,1260) = lu(k,1260) - lu(k,72) * lu(k,1255) - lu(k,1273) = lu(k,1273) - lu(k,73) * lu(k,1255) - lu(k,1284) = lu(k,1284) - lu(k,74) * lu(k,1255) - lu(k,1285) = lu(k,1285) - lu(k,75) * lu(k,1255) - lu(k,76) = 1._r8 / lu(k,76) - lu(k,77) = lu(k,77) * lu(k,76) - lu(k,78) = lu(k,78) * lu(k,76) - lu(k,79) = lu(k,79) * lu(k,76) - lu(k,80) = lu(k,80) * lu(k,76) - lu(k,1260) = lu(k,1260) - lu(k,77) * lu(k,1256) - lu(k,1270) = lu(k,1270) - lu(k,78) * lu(k,1256) - lu(k,1273) = lu(k,1273) - lu(k,79) * lu(k,1256) - lu(k,1284) = lu(k,1284) - lu(k,80) * lu(k,1256) - lu(k,81) = 1._r8 / lu(k,81) - lu(k,82) = lu(k,82) * lu(k,81) - lu(k,83) = lu(k,83) * lu(k,81) - lu(k,84) = lu(k,84) * lu(k,81) - lu(k,85) = lu(k,85) * lu(k,81) - lu(k,1260) = lu(k,1260) - lu(k,82) * lu(k,1257) - lu(k,1262) = lu(k,1262) - lu(k,83) * lu(k,1257) - lu(k,1284) = lu(k,1284) - lu(k,84) * lu(k,1257) - lu(k,1285) = lu(k,1285) - lu(k,85) * lu(k,1257) - lu(k,86) = 1._r8 / lu(k,86) - lu(k,87) = lu(k,87) * lu(k,86) - lu(k,88) = lu(k,88) * lu(k,86) - lu(k,89) = lu(k,89) * lu(k,86) - lu(k,90) = lu(k,90) * lu(k,86) - lu(k,1260) = lu(k,1260) - lu(k,87) * lu(k,1258) - lu(k,1270) = lu(k,1270) - lu(k,88) * lu(k,1258) - lu(k,1284) = lu(k,1284) - lu(k,89) * lu(k,1258) - lu(k,1285) = lu(k,1285) - lu(k,90) * lu(k,1258) - lu(k,91) = 1._r8 / lu(k,91) - lu(k,92) = lu(k,92) * lu(k,91) - lu(k,454) = lu(k,454) - lu(k,92) * lu(k,450) - lu(k,579) = lu(k,579) - lu(k,92) * lu(k,571) - lu(k,868) = lu(k,868) - lu(k,92) * lu(k,855) - lu(k,968) = lu(k,968) - lu(k,92) * lu(k,948) - lu(k,1323) = lu(k,1323) - lu(k,92) * lu(k,1292) - lu(k,93) = 1._r8 / lu(k,93) - lu(k,94) = lu(k,94) * lu(k,93) - lu(k,97) = lu(k,97) - lu(k,94) * lu(k,95) - lu(k,816) = - lu(k,94) * lu(k,807) - lu(k,909) = lu(k,909) - lu(k,94) * lu(k,889) - lu(k,1122) = lu(k,1122) - lu(k,94) * lu(k,1094) - lu(k,1446) = lu(k,1446) - lu(k,94) * lu(k,1419) - lu(k,96) = 1._r8 / lu(k,96) - lu(k,97) = lu(k,97) * lu(k,96) - lu(k,816) = lu(k,816) - lu(k,97) * lu(k,808) - lu(k,909) = lu(k,909) - lu(k,97) * lu(k,890) - lu(k,1122) = lu(k,1122) - lu(k,97) * lu(k,1095) - lu(k,1274) = lu(k,1274) - lu(k,97) * lu(k,1259) - lu(k,1446) = lu(k,1446) - lu(k,97) * lu(k,1420) - lu(k,98) = 1._r8 / lu(k,98) - lu(k,99) = lu(k,99) * lu(k,98) - lu(k,100) = lu(k,100) * lu(k,98) - lu(k,671) = lu(k,671) - lu(k,99) * lu(k,665) - lu(k,680) = - lu(k,100) * lu(k,665) - lu(k,1065) = lu(k,1065) - lu(k,99) * lu(k,1036) - lu(k,1088) = lu(k,1088) - lu(k,100) * lu(k,1036) - lu(k,1389) = lu(k,1389) - lu(k,99) * lu(k,1334) - lu(k,1413) = lu(k,1413) - lu(k,100) * lu(k,1334) + lu(k,54) = 1._r8 / lu(k,54) + lu(k,55) = lu(k,55) * lu(k,54) + lu(k,56) = lu(k,56) * lu(k,54) + lu(k,57) = lu(k,57) * lu(k,54) + lu(k,1154) = lu(k,1154) - lu(k,55) * lu(k,1144) + lu(k,1172) = lu(k,1172) - lu(k,56) * lu(k,1144) + lu(k,1174) = lu(k,1174) - lu(k,57) * lu(k,1144) + lu(k,58) = 1._r8 / lu(k,58) + lu(k,59) = lu(k,59) * lu(k,58) + lu(k,60) = lu(k,60) * lu(k,58) + lu(k,61) = lu(k,61) * lu(k,58) + lu(k,1154) = lu(k,1154) - lu(k,59) * lu(k,1145) + lu(k,1172) = lu(k,1172) - lu(k,60) * lu(k,1145) + lu(k,1174) = lu(k,1174) - lu(k,61) * lu(k,1145) + lu(k,62) = 1._r8 / lu(k,62) + lu(k,63) = lu(k,63) * lu(k,62) + lu(k,64) = lu(k,64) * lu(k,62) + lu(k,65) = lu(k,65) * lu(k,62) + lu(k,1262) = lu(k,1262) - lu(k,63) * lu(k,1186) + lu(k,1263) = lu(k,1263) - lu(k,64) * lu(k,1186) + lu(k,1271) = lu(k,1271) - lu(k,65) * lu(k,1186) + lu(k,66) = 1._r8 / lu(k,66) + lu(k,67) = lu(k,67) * lu(k,66) + lu(k,68) = lu(k,68) * lu(k,66) + lu(k,391) = lu(k,391) - lu(k,67) * lu(k,390) + lu(k,397) = - lu(k,68) * lu(k,390) + lu(k,1368) = - lu(k,67) * lu(k,1361) + lu(k,1410) = lu(k,1410) - lu(k,68) * lu(k,1361) + lu(k,69) = 1._r8 / lu(k,69) + lu(k,70) = lu(k,70) * lu(k,69) + lu(k,71) = lu(k,71) * lu(k,69) + lu(k,131) = lu(k,131) - lu(k,70) * lu(k,130) + lu(k,134) = lu(k,134) - lu(k,71) * lu(k,130) + lu(k,1559) = lu(k,1559) - lu(k,70) * lu(k,1558) + lu(k,1584) = lu(k,1584) - lu(k,71) * lu(k,1558) + lu(k,72) = 1._r8 / lu(k,72) + lu(k,73) = lu(k,73) * lu(k,72) + lu(k,74) = lu(k,74) * lu(k,72) + lu(k,75) = lu(k,75) * lu(k,72) + lu(k,76) = lu(k,76) * lu(k,72) + lu(k,1154) = lu(k,1154) - lu(k,73) * lu(k,1146) + lu(k,1164) = lu(k,1164) - lu(k,74) * lu(k,1146) + lu(k,1172) = lu(k,1172) - lu(k,75) * lu(k,1146) + lu(k,1174) = lu(k,1174) - lu(k,76) * lu(k,1146) + lu(k,77) = 1._r8 / lu(k,77) + lu(k,78) = lu(k,78) * lu(k,77) + lu(k,79) = lu(k,79) * lu(k,77) + lu(k,80) = lu(k,80) * lu(k,77) + lu(k,81) = lu(k,81) * lu(k,77) + lu(k,1154) = lu(k,1154) - lu(k,78) * lu(k,1147) + lu(k,1161) = lu(k,1161) - lu(k,79) * lu(k,1147) + lu(k,1164) = lu(k,1164) - lu(k,80) * lu(k,1147) + lu(k,1172) = lu(k,1172) - lu(k,81) * lu(k,1147) + lu(k,82) = 1._r8 / lu(k,82) + lu(k,83) = lu(k,83) * lu(k,82) + lu(k,84) = lu(k,84) * lu(k,82) + lu(k,85) = lu(k,85) * lu(k,82) + lu(k,86) = lu(k,86) * lu(k,82) + lu(k,1152) = lu(k,1152) - lu(k,83) * lu(k,1148) + lu(k,1154) = lu(k,1154) - lu(k,84) * lu(k,1148) + lu(k,1172) = lu(k,1172) - lu(k,85) * lu(k,1148) + lu(k,1174) = lu(k,1174) - lu(k,86) * lu(k,1148) + lu(k,87) = 1._r8 / lu(k,87) + lu(k,88) = lu(k,88) * lu(k,87) + lu(k,89) = lu(k,89) * lu(k,87) + lu(k,90) = lu(k,90) * lu(k,87) + lu(k,91) = lu(k,91) * lu(k,87) + lu(k,1154) = lu(k,1154) - lu(k,88) * lu(k,1149) + lu(k,1161) = lu(k,1161) - lu(k,89) * lu(k,1149) + lu(k,1172) = lu(k,1172) - lu(k,90) * lu(k,1149) + lu(k,1174) = lu(k,1174) - lu(k,91) * lu(k,1149) + lu(k,92) = 1._r8 / lu(k,92) + lu(k,93) = lu(k,93) * lu(k,92) + lu(k,437) = lu(k,437) - lu(k,93) * lu(k,433) + lu(k,561) = lu(k,561) - lu(k,93) * lu(k,554) + lu(k,867) = lu(k,867) - lu(k,93) * lu(k,855) + lu(k,1301) = lu(k,1301) - lu(k,93) * lu(k,1272) + lu(k,1328) = lu(k,1328) - lu(k,93) * lu(k,1311) + lu(k,94) = 1._r8 / lu(k,94) + lu(k,95) = lu(k,95) * lu(k,94) + lu(k,98) = lu(k,98) - lu(k,95) * lu(k,96) + lu(k,816) = - lu(k,95) * lu(k,807) + lu(k,909) = lu(k,909) - lu(k,95) * lu(k,889) + lu(k,1471) = lu(k,1471) - lu(k,95) * lu(k,1444) + lu(k,1540) = lu(k,1540) - lu(k,95) * lu(k,1512) + lu(k,97) = 1._r8 / lu(k,97) + lu(k,98) = lu(k,98) * lu(k,97) + lu(k,816) = lu(k,816) - lu(k,98) * lu(k,808) + lu(k,909) = lu(k,909) - lu(k,98) * lu(k,890) + lu(k,1165) = lu(k,1165) - lu(k,98) * lu(k,1150) + lu(k,1471) = lu(k,1471) - lu(k,98) * lu(k,1445) + lu(k,1540) = lu(k,1540) - lu(k,98) * lu(k,1513) + lu(k,99) = 1._r8 / lu(k,99) + lu(k,100) = lu(k,100) * lu(k,99) + lu(k,101) = lu(k,101) * lu(k,99) + lu(k,671) = lu(k,671) - lu(k,100) * lu(k,665) + lu(k,679) = - lu(k,101) * lu(k,665) + lu(k,1242) = lu(k,1242) - lu(k,100) * lu(k,1187) + lu(k,1262) = lu(k,1262) - lu(k,101) * lu(k,1187) + lu(k,1391) = lu(k,1391) - lu(k,100) * lu(k,1362) + lu(k,1410) = lu(k,1410) - lu(k,101) * lu(k,1362) end do end subroutine lu_fac02 subroutine lu_fac03( avec_len, lu ) @@ -219,90 +220,88 @@ subroutine lu_fac03( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,101) = 1._r8 / lu(k,101) - lu(k,102) = lu(k,102) * lu(k,101) - lu(k,103) = lu(k,103) * lu(k,101) - lu(k,118) = - lu(k,102) * lu(k,116) - lu(k,119) = lu(k,119) - lu(k,103) * lu(k,116) - lu(k,143) = - lu(k,102) * lu(k,141) - lu(k,144) = lu(k,144) - lu(k,103) * lu(k,141) - lu(k,1270) = lu(k,1270) - lu(k,102) * lu(k,1260) - lu(k,1284) = lu(k,1284) - lu(k,103) * lu(k,1260) - lu(k,1377) = - lu(k,102) * lu(k,1335) - lu(k,1411) = - lu(k,103) * lu(k,1335) - lu(k,104) = 1._r8 / lu(k,104) - lu(k,105) = lu(k,105) * lu(k,104) - lu(k,106) = lu(k,106) * lu(k,104) - lu(k,388) = lu(k,388) - lu(k,105) * lu(k,385) - lu(k,390) = - lu(k,106) * lu(k,385) - lu(k,861) = - lu(k,105) * lu(k,856) - lu(k,868) = lu(k,868) - lu(k,106) * lu(k,856) - lu(k,930) = lu(k,930) - lu(k,105) * lu(k,923) - lu(k,941) = lu(k,941) - lu(k,106) * lu(k,923) - lu(k,956) = lu(k,956) - lu(k,105) * lu(k,949) - lu(k,968) = lu(k,968) - lu(k,106) * lu(k,949) - lu(k,107) = 1._r8 / lu(k,107) - lu(k,108) = lu(k,108) * lu(k,107) - lu(k,109) = lu(k,109) * lu(k,107) - lu(k,110) = lu(k,110) * lu(k,107) - lu(k,111) = lu(k,111) * lu(k,107) - lu(k,1262) = lu(k,1262) - lu(k,108) * lu(k,1261) - lu(k,1284) = lu(k,1284) - lu(k,109) * lu(k,1261) - lu(k,1285) = lu(k,1285) - lu(k,110) * lu(k,1261) - lu(k,1286) = lu(k,1286) - lu(k,111) * lu(k,1261) - lu(k,1337) = lu(k,1337) - lu(k,108) * lu(k,1336) - lu(k,1411) = lu(k,1411) - lu(k,109) * lu(k,1336) - lu(k,1412) = lu(k,1412) - lu(k,110) * lu(k,1336) - lu(k,1413) = lu(k,1413) - lu(k,111) * lu(k,1336) - lu(k,112) = 1._r8 / lu(k,112) - lu(k,113) = lu(k,113) * lu(k,112) - lu(k,114) = lu(k,114) * lu(k,112) - lu(k,115) = lu(k,115) * lu(k,112) - lu(k,1270) = lu(k,1270) - lu(k,113) * lu(k,1262) - lu(k,1284) = lu(k,1284) - lu(k,114) * lu(k,1262) - lu(k,1285) = lu(k,1285) - lu(k,115) * lu(k,1262) - lu(k,1377) = lu(k,1377) - lu(k,113) * lu(k,1337) - lu(k,1411) = lu(k,1411) - lu(k,114) * lu(k,1337) - lu(k,1412) = lu(k,1412) - lu(k,115) * lu(k,1337) - lu(k,117) = 1._r8 / lu(k,117) - lu(k,118) = lu(k,118) * lu(k,117) - lu(k,119) = lu(k,119) * lu(k,117) - lu(k,120) = lu(k,120) * lu(k,117) - lu(k,121) = lu(k,121) * lu(k,117) - lu(k,1270) = lu(k,1270) - lu(k,118) * lu(k,1263) - lu(k,1284) = lu(k,1284) - lu(k,119) * lu(k,1263) - lu(k,1285) = lu(k,1285) - lu(k,120) * lu(k,1263) - lu(k,1286) = lu(k,1286) - lu(k,121) * lu(k,1263) - lu(k,1377) = lu(k,1377) - lu(k,118) * lu(k,1338) - lu(k,1411) = lu(k,1411) - lu(k,119) * lu(k,1338) - lu(k,1412) = lu(k,1412) - lu(k,120) * lu(k,1338) - lu(k,1413) = lu(k,1413) - lu(k,121) * lu(k,1338) + lu(k,102) = 1._r8 / lu(k,102) + lu(k,103) = lu(k,103) * lu(k,102) + lu(k,104) = lu(k,104) * lu(k,102) + lu(k,384) = lu(k,384) - lu(k,103) * lu(k,381) + lu(k,386) = - lu(k,104) * lu(k,381) + lu(k,861) = - lu(k,103) * lu(k,856) + lu(k,867) = lu(k,867) - lu(k,104) * lu(k,856) + lu(k,1319) = lu(k,1319) - lu(k,103) * lu(k,1312) + lu(k,1328) = lu(k,1328) - lu(k,104) * lu(k,1312) + lu(k,1344) = lu(k,1344) - lu(k,103) * lu(k,1337) + lu(k,1352) = lu(k,1352) - lu(k,104) * lu(k,1337) + lu(k,105) = 1._r8 / lu(k,105) + lu(k,106) = lu(k,106) * lu(k,105) + lu(k,107) = lu(k,107) * lu(k,105) + lu(k,108) = lu(k,108) * lu(k,105) + lu(k,109) = lu(k,109) * lu(k,105) + lu(k,1152) = lu(k,1152) - lu(k,106) * lu(k,1151) + lu(k,1172) = lu(k,1172) - lu(k,107) * lu(k,1151) + lu(k,1173) = lu(k,1173) - lu(k,108) * lu(k,1151) + lu(k,1174) = lu(k,1174) - lu(k,109) * lu(k,1151) + lu(k,1189) = lu(k,1189) - lu(k,106) * lu(k,1188) + lu(k,1261) = - lu(k,107) * lu(k,1188) + lu(k,1262) = lu(k,1262) - lu(k,108) * lu(k,1188) + lu(k,1263) = lu(k,1263) - lu(k,109) * lu(k,1188) + lu(k,110) = 1._r8 / lu(k,110) + lu(k,111) = lu(k,111) * lu(k,110) + lu(k,112) = lu(k,112) * lu(k,110) + lu(k,113) = lu(k,113) * lu(k,110) + lu(k,1161) = lu(k,1161) - lu(k,111) * lu(k,1152) + lu(k,1172) = lu(k,1172) - lu(k,112) * lu(k,1152) + lu(k,1174) = lu(k,1174) - lu(k,113) * lu(k,1152) + lu(k,1230) = - lu(k,111) * lu(k,1189) + lu(k,1261) = lu(k,1261) - lu(k,112) * lu(k,1189) + lu(k,1263) = lu(k,1263) - lu(k,113) * lu(k,1189) + lu(k,114) = 1._r8 / lu(k,114) + lu(k,115) = lu(k,115) * lu(k,114) + lu(k,116) = lu(k,116) * lu(k,114) + lu(k,117) = lu(k,117) * lu(k,114) + lu(k,118) = lu(k,118) * lu(k,114) + lu(k,1154) = lu(k,1154) - lu(k,115) * lu(k,1153) + lu(k,1172) = lu(k,1172) - lu(k,116) * lu(k,1153) + lu(k,1173) = lu(k,1173) - lu(k,117) * lu(k,1153) + lu(k,1174) = lu(k,1174) - lu(k,118) * lu(k,1153) + lu(k,1191) = lu(k,1191) - lu(k,115) * lu(k,1190) + lu(k,1261) = lu(k,1261) - lu(k,116) * lu(k,1190) + lu(k,1262) = lu(k,1262) - lu(k,117) * lu(k,1190) + lu(k,1263) = lu(k,1263) - lu(k,118) * lu(k,1190) + lu(k,119) = 1._r8 / lu(k,119) + lu(k,120) = lu(k,120) * lu(k,119) + lu(k,121) = lu(k,121) * lu(k,119) + lu(k,143) = - lu(k,120) * lu(k,141) + lu(k,144) = lu(k,144) - lu(k,121) * lu(k,141) + lu(k,1161) = lu(k,1161) - lu(k,120) * lu(k,1154) + lu(k,1172) = lu(k,1172) - lu(k,121) * lu(k,1154) + lu(k,1230) = lu(k,1230) - lu(k,120) * lu(k,1191) + lu(k,1261) = lu(k,1261) - lu(k,121) * lu(k,1191) lu(k,122) = 1._r8 / lu(k,122) lu(k,123) = lu(k,123) * lu(k,122) lu(k,124) = lu(k,124) * lu(k,122) lu(k,125) = lu(k,125) * lu(k,122) - lu(k,564) = lu(k,564) - lu(k,123) * lu(k,554) - lu(k,566) = - lu(k,124) * lu(k,554) - lu(k,569) = lu(k,569) - lu(k,125) * lu(k,554) - lu(k,993) = lu(k,993) - lu(k,123) * lu(k,974) - lu(k,1003) = - lu(k,124) * lu(k,974) - lu(k,1007) = lu(k,1007) - lu(k,125) * lu(k,974) - lu(k,1274) = lu(k,1274) - lu(k,123) * lu(k,1264) - lu(k,1284) = lu(k,1284) - lu(k,124) * lu(k,1264) - lu(k,1288) = lu(k,1288) - lu(k,125) * lu(k,1264) + lu(k,576) = lu(k,576) - lu(k,123) * lu(k,566) + lu(k,579) = lu(k,579) - lu(k,124) * lu(k,566) + lu(k,580) = - lu(k,125) * lu(k,566) + lu(k,1075) = lu(k,1075) - lu(k,123) * lu(k,1056) + lu(k,1081) = lu(k,1081) - lu(k,124) * lu(k,1056) + lu(k,1082) = - lu(k,125) * lu(k,1056) + lu(k,1165) = lu(k,1165) - lu(k,123) * lu(k,1155) + lu(k,1171) = lu(k,1171) - lu(k,124) * lu(k,1155) + lu(k,1172) = lu(k,1172) - lu(k,125) * lu(k,1155) lu(k,126) = 1._r8 / lu(k,126) lu(k,127) = lu(k,127) * lu(k,126) lu(k,128) = lu(k,128) * lu(k,126) lu(k,129) = lu(k,129) * lu(k,126) lu(k,425) = lu(k,425) - lu(k,127) * lu(k,421) - lu(k,429) = lu(k,429) - lu(k,128) * lu(k,421) - lu(k,431) = - lu(k,129) * lu(k,421) - lu(k,1175) = lu(k,1175) - lu(k,127) * lu(k,1163) - lu(k,1191) = lu(k,1191) - lu(k,128) * lu(k,1163) - lu(k,1198) = - lu(k,129) * lu(k,1163) - lu(k,1386) = lu(k,1386) - lu(k,127) * lu(k,1339) - lu(k,1406) = lu(k,1406) - lu(k,128) * lu(k,1339) - lu(k,1413) = lu(k,1413) - lu(k,129) * lu(k,1339) + lu(k,430) = - lu(k,128) * lu(k,421) + lu(k,431) = lu(k,431) - lu(k,129) * lu(k,421) + lu(k,960) = lu(k,960) - lu(k,127) * lu(k,948) + lu(k,979) = - lu(k,128) * lu(k,948) + lu(k,983) = lu(k,983) - lu(k,129) * lu(k,948) + lu(k,1239) = lu(k,1239) - lu(k,127) * lu(k,1192) + lu(k,1262) = lu(k,1262) - lu(k,128) * lu(k,1192) + lu(k,1266) = lu(k,1266) - lu(k,129) * lu(k,1192) lu(k,131) = 1._r8 / lu(k,131) lu(k,132) = lu(k,132) * lu(k,131) lu(k,133) = lu(k,133) * lu(k,131) @@ -310,11 +309,11 @@ subroutine lu_fac03( avec_len, lu ) lu(k,548) = lu(k,548) - lu(k,132) * lu(k,547) lu(k,552) = lu(k,552) - lu(k,133) * lu(k,547) lu(k,553) = - lu(k,134) * lu(k,547) - lu(k,1378) = lu(k,1378) - lu(k,132) * lu(k,1340) - lu(k,1414) = lu(k,1414) - lu(k,133) * lu(k,1340) - lu(k,1418) = lu(k,1418) - lu(k,134) * lu(k,1340) + lu(k,1231) = lu(k,1231) - lu(k,132) * lu(k,1193) + lu(k,1268) = lu(k,1268) - lu(k,133) * lu(k,1193) + lu(k,1271) = lu(k,1271) - lu(k,134) * lu(k,1193) lu(k,1562) = - lu(k,132) * lu(k,1559) - lu(k,1580) = lu(k,1580) - lu(k,133) * lu(k,1559) + lu(k,1581) = lu(k,1581) - lu(k,133) * lu(k,1559) lu(k,1584) = lu(k,1584) - lu(k,134) * lu(k,1559) lu(k,135) = 1._r8 / lu(k,135) lu(k,136) = lu(k,136) * lu(k,135) @@ -322,32 +321,32 @@ subroutine lu_fac03( avec_len, lu ) lu(k,138) = lu(k,138) * lu(k,135) lu(k,139) = lu(k,139) * lu(k,135) lu(k,140) = lu(k,140) * lu(k,135) - lu(k,1213) = lu(k,1213) - lu(k,136) * lu(k,1204) - lu(k,1237) = lu(k,1237) - lu(k,137) * lu(k,1204) - lu(k,1239) = lu(k,1239) - lu(k,138) * lu(k,1204) - lu(k,1241) = lu(k,1241) - lu(k,139) * lu(k,1204) - lu(k,1244) = lu(k,1244) - lu(k,140) * lu(k,1204) - lu(k,1378) = lu(k,1378) - lu(k,136) * lu(k,1341) - lu(k,1406) = lu(k,1406) - lu(k,137) * lu(k,1341) - lu(k,1408) = lu(k,1408) - lu(k,138) * lu(k,1341) - lu(k,1410) = lu(k,1410) - lu(k,139) * lu(k,1341) - lu(k,1413) = lu(k,1413) - lu(k,140) * lu(k,1341) + lu(k,998) = lu(k,998) - lu(k,136) * lu(k,989) + lu(k,1020) = lu(k,1020) - lu(k,137) * lu(k,989) + lu(k,1025) = lu(k,1025) - lu(k,138) * lu(k,989) + lu(k,1029) = lu(k,1029) - lu(k,139) * lu(k,989) + lu(k,1032) = lu(k,1032) - lu(k,140) * lu(k,989) + lu(k,1231) = lu(k,1231) - lu(k,136) * lu(k,1194) + lu(k,1257) = lu(k,1257) - lu(k,137) * lu(k,1194) + lu(k,1262) = lu(k,1262) - lu(k,138) * lu(k,1194) + lu(k,1266) = lu(k,1266) - lu(k,139) * lu(k,1194) + lu(k,1269) = lu(k,1269) - lu(k,140) * lu(k,1194) lu(k,142) = 1._r8 / lu(k,142) lu(k,143) = lu(k,143) * lu(k,142) lu(k,144) = lu(k,144) * lu(k,142) lu(k,145) = lu(k,145) * lu(k,142) lu(k,146) = lu(k,146) * lu(k,142) lu(k,147) = lu(k,147) * lu(k,142) - lu(k,1270) = lu(k,1270) - lu(k,143) * lu(k,1265) - lu(k,1284) = lu(k,1284) - lu(k,144) * lu(k,1265) - lu(k,1285) = lu(k,1285) - lu(k,145) * lu(k,1265) - lu(k,1286) = lu(k,1286) - lu(k,146) * lu(k,1265) - lu(k,1291) = lu(k,1291) - lu(k,147) * lu(k,1265) - lu(k,1377) = lu(k,1377) - lu(k,143) * lu(k,1342) - lu(k,1411) = lu(k,1411) - lu(k,144) * lu(k,1342) - lu(k,1412) = lu(k,1412) - lu(k,145) * lu(k,1342) - lu(k,1413) = lu(k,1413) - lu(k,146) * lu(k,1342) - lu(k,1418) = lu(k,1418) - lu(k,147) * lu(k,1342) + lu(k,1161) = lu(k,1161) - lu(k,143) * lu(k,1156) + lu(k,1172) = lu(k,1172) - lu(k,144) * lu(k,1156) + lu(k,1173) = lu(k,1173) - lu(k,145) * lu(k,1156) + lu(k,1174) = lu(k,1174) - lu(k,146) * lu(k,1156) + lu(k,1182) = lu(k,1182) - lu(k,147) * lu(k,1156) + lu(k,1230) = lu(k,1230) - lu(k,143) * lu(k,1195) + lu(k,1261) = lu(k,1261) - lu(k,144) * lu(k,1195) + lu(k,1262) = lu(k,1262) - lu(k,145) * lu(k,1195) + lu(k,1263) = lu(k,1263) - lu(k,146) * lu(k,1195) + lu(k,1271) = lu(k,1271) - lu(k,147) * lu(k,1195) end do end subroutine lu_fac03 subroutine lu_fac04( avec_len, lu ) @@ -368,47 +367,47 @@ subroutine lu_fac04( avec_len, lu ) lu(k,149) = lu(k,149) * lu(k,148) lu(k,150) = lu(k,150) * lu(k,148) lu(k,490) = lu(k,490) - lu(k,149) * lu(k,489) - lu(k,497) = lu(k,497) - lu(k,150) * lu(k,489) + lu(k,495) = lu(k,495) - lu(k,150) * lu(k,489) lu(k,825) = lu(k,825) - lu(k,149) * lu(k,824) - lu(k,836) = lu(k,836) - lu(k,150) * lu(k,824) - lu(k,1141) = lu(k,1141) - lu(k,149) * lu(k,1140) - lu(k,1161) = - lu(k,150) * lu(k,1140) - lu(k,1513) = lu(k,1513) - lu(k,149) * lu(k,1512) - lu(k,1535) = lu(k,1535) - lu(k,150) * lu(k,1512) + lu(k,831) = lu(k,831) - lu(k,150) * lu(k,824) + lu(k,924) = lu(k,924) - lu(k,149) * lu(k,923) + lu(k,934) = lu(k,934) - lu(k,150) * lu(k,923) + lu(k,1490) = lu(k,1490) - lu(k,149) * lu(k,1489) + lu(k,1498) = - lu(k,150) * lu(k,1489) lu(k,1561) = lu(k,1561) - lu(k,149) * lu(k,1560) - lu(k,1583) = lu(k,1583) - lu(k,150) * lu(k,1560) + lu(k,1571) = lu(k,1571) - lu(k,150) * lu(k,1560) lu(k,151) = 1._r8 / lu(k,151) lu(k,152) = lu(k,152) * lu(k,151) lu(k,153) = lu(k,153) * lu(k,151) lu(k,154) = lu(k,154) * lu(k,151) lu(k,155) = lu(k,155) * lu(k,151) lu(k,156) = lu(k,156) * lu(k,151) - lu(k,996) = lu(k,996) - lu(k,152) * lu(k,975) - lu(k,1000) = lu(k,1000) - lu(k,153) * lu(k,975) - lu(k,1002) = lu(k,1002) - lu(k,154) * lu(k,975) - lu(k,1006) = lu(k,1006) - lu(k,155) * lu(k,975) - lu(k,1007) = lu(k,1007) - lu(k,156) * lu(k,975) - lu(k,1235) = lu(k,1235) - lu(k,152) * lu(k,1205) - lu(k,1239) = lu(k,1239) - lu(k,153) * lu(k,1205) - lu(k,1241) = lu(k,1241) - lu(k,154) * lu(k,1205) - lu(k,1245) = lu(k,1245) - lu(k,155) * lu(k,1205) - lu(k,1246) = lu(k,1246) - lu(k,156) * lu(k,1205) + lu(k,1020) = lu(k,1020) - lu(k,152) * lu(k,990) + lu(k,1022) = lu(k,1022) - lu(k,153) * lu(k,990) + lu(k,1023) = lu(k,1023) - lu(k,154) * lu(k,990) + lu(k,1031) = lu(k,1031) - lu(k,155) * lu(k,990) + lu(k,1032) = lu(k,1032) - lu(k,156) * lu(k,990) + lu(k,1078) = lu(k,1078) - lu(k,152) * lu(k,1057) + lu(k,1080) = lu(k,1080) - lu(k,153) * lu(k,1057) + lu(k,1081) = lu(k,1081) - lu(k,154) * lu(k,1057) + lu(k,1089) = lu(k,1089) - lu(k,155) * lu(k,1057) + lu(k,1090) = lu(k,1090) - lu(k,156) * lu(k,1057) lu(k,157) = 1._r8 / lu(k,157) lu(k,158) = lu(k,158) * lu(k,157) lu(k,159) = lu(k,159) * lu(k,157) lu(k,160) = lu(k,160) * lu(k,157) lu(k,161) = lu(k,161) * lu(k,157) lu(k,162) = lu(k,162) * lu(k,157) - lu(k,1301) = lu(k,1301) - lu(k,158) * lu(k,1293) - lu(k,1310) = lu(k,1310) - lu(k,159) * lu(k,1293) - lu(k,1323) = lu(k,1323) - lu(k,160) * lu(k,1293) - lu(k,1324) = lu(k,1324) - lu(k,161) * lu(k,1293) - lu(k,1329) = - lu(k,162) * lu(k,1293) - lu(k,1372) = lu(k,1372) - lu(k,158) * lu(k,1343) - lu(k,1399) = lu(k,1399) - lu(k,159) * lu(k,1343) - lu(k,1412) = lu(k,1412) - lu(k,160) * lu(k,1343) - lu(k,1413) = lu(k,1413) - lu(k,161) * lu(k,1343) - lu(k,1418) = lu(k,1418) - lu(k,162) * lu(k,1343) + lu(k,1225) = lu(k,1225) - lu(k,158) * lu(k,1196) + lu(k,1252) = lu(k,1252) - lu(k,159) * lu(k,1196) + lu(k,1262) = lu(k,1262) - lu(k,160) * lu(k,1196) + lu(k,1263) = lu(k,1263) - lu(k,161) * lu(k,1196) + lu(k,1271) = lu(k,1271) - lu(k,162) * lu(k,1196) + lu(k,1281) = lu(k,1281) - lu(k,158) * lu(k,1273) + lu(k,1290) = lu(k,1290) - lu(k,159) * lu(k,1273) + lu(k,1300) = lu(k,1300) - lu(k,160) * lu(k,1273) + lu(k,1301) = lu(k,1301) - lu(k,161) * lu(k,1273) + lu(k,1309) = - lu(k,162) * lu(k,1273) lu(k,163) = 1._r8 / lu(k,163) lu(k,164) = lu(k,164) * lu(k,163) lu(k,165) = lu(k,165) * lu(k,163) @@ -416,16 +415,16 @@ subroutine lu_fac04( avec_len, lu ) lu(k,167) = lu(k,167) * lu(k,163) lu(k,726) = lu(k,726) - lu(k,164) * lu(k,718) lu(k,727) = - lu(k,165) * lu(k,718) - lu(k,732) = lu(k,732) - lu(k,166) * lu(k,718) - lu(k,736) = - lu(k,167) * lu(k,718) - lu(k,1068) = lu(k,1068) - lu(k,164) * lu(k,1037) - lu(k,1070) = lu(k,1070) - lu(k,165) * lu(k,1037) - lu(k,1081) = lu(k,1081) - lu(k,166) * lu(k,1037) - lu(k,1088) = lu(k,1088) - lu(k,167) * lu(k,1037) - lu(k,1392) = lu(k,1392) - lu(k,164) * lu(k,1344) - lu(k,1394) = lu(k,1394) - lu(k,165) * lu(k,1344) - lu(k,1406) = lu(k,1406) - lu(k,166) * lu(k,1344) - lu(k,1413) = lu(k,1413) - lu(k,167) * lu(k,1344) + lu(k,734) = - lu(k,166) * lu(k,718) + lu(k,735) = lu(k,735) - lu(k,167) * lu(k,718) + lu(k,1245) = lu(k,1245) - lu(k,164) * lu(k,1197) + lu(k,1247) = lu(k,1247) - lu(k,165) * lu(k,1197) + lu(k,1262) = lu(k,1262) - lu(k,166) * lu(k,1197) + lu(k,1266) = lu(k,1266) - lu(k,167) * lu(k,1197) + lu(k,1394) = lu(k,1394) - lu(k,164) * lu(k,1363) + lu(k,1396) = lu(k,1396) - lu(k,165) * lu(k,1363) + lu(k,1410) = lu(k,1410) - lu(k,166) * lu(k,1363) + lu(k,1414) = lu(k,1414) - lu(k,167) * lu(k,1363) lu(k,168) = 1._r8 / lu(k,168) lu(k,169) = lu(k,169) * lu(k,168) lu(k,170) = lu(k,170) * lu(k,168) @@ -433,16 +432,16 @@ subroutine lu_fac04( avec_len, lu ) lu(k,172) = lu(k,172) * lu(k,168) lu(k,424) = lu(k,424) - lu(k,169) * lu(k,422) lu(k,425) = lu(k,425) - lu(k,170) * lu(k,422) - lu(k,429) = lu(k,429) - lu(k,171) * lu(k,422) + lu(k,430) = lu(k,430) - lu(k,171) * lu(k,422) lu(k,431) = lu(k,431) - lu(k,172) * lu(k,422) - lu(k,1054) = lu(k,1054) - lu(k,169) * lu(k,1038) - lu(k,1062) = - lu(k,170) * lu(k,1038) - lu(k,1081) = lu(k,1081) - lu(k,171) * lu(k,1038) - lu(k,1088) = lu(k,1088) - lu(k,172) * lu(k,1038) - lu(k,1372) = lu(k,1372) - lu(k,169) * lu(k,1345) - lu(k,1386) = lu(k,1386) - lu(k,170) * lu(k,1345) - lu(k,1406) = lu(k,1406) - lu(k,171) * lu(k,1345) - lu(k,1413) = lu(k,1413) - lu(k,172) * lu(k,1345) + lu(k,1225) = lu(k,1225) - lu(k,169) * lu(k,1198) + lu(k,1239) = lu(k,1239) - lu(k,170) * lu(k,1198) + lu(k,1262) = lu(k,1262) - lu(k,171) * lu(k,1198) + lu(k,1266) = lu(k,1266) - lu(k,172) * lu(k,1198) + lu(k,1380) = lu(k,1380) - lu(k,169) * lu(k,1364) + lu(k,1388) = - lu(k,170) * lu(k,1364) + lu(k,1410) = lu(k,1410) - lu(k,171) * lu(k,1364) + lu(k,1414) = lu(k,1414) - lu(k,172) * lu(k,1364) lu(k,173) = 1._r8 / lu(k,173) lu(k,174) = lu(k,174) * lu(k,173) lu(k,175) = lu(k,175) * lu(k,173) @@ -450,33 +449,33 @@ subroutine lu_fac04( avec_len, lu ) lu(k,177) = lu(k,177) * lu(k,173) lu(k,840) = lu(k,840) - lu(k,174) * lu(k,838) lu(k,841) = lu(k,841) - lu(k,175) * lu(k,838) - lu(k,845) = lu(k,845) - lu(k,176) * lu(k,838) - lu(k,851) = lu(k,851) - lu(k,177) * lu(k,838) - lu(k,927) = lu(k,927) - lu(k,174) * lu(k,924) - lu(k,928) = lu(k,928) - lu(k,175) * lu(k,924) - lu(k,933) = lu(k,933) - lu(k,176) * lu(k,924) - lu(k,943) = lu(k,943) - lu(k,177) * lu(k,924) - lu(k,952) = lu(k,952) - lu(k,174) * lu(k,950) - lu(k,954) = lu(k,954) - lu(k,175) * lu(k,950) - lu(k,959) = lu(k,959) - lu(k,176) * lu(k,950) - lu(k,970) = lu(k,970) - lu(k,177) * lu(k,950) + lu(k,849) = lu(k,849) - lu(k,176) * lu(k,838) + lu(k,852) = lu(k,852) - lu(k,177) * lu(k,838) + lu(k,1315) = lu(k,1315) - lu(k,174) * lu(k,1313) + lu(k,1317) = lu(k,1317) - lu(k,175) * lu(k,1313) + lu(k,1329) = lu(k,1329) - lu(k,176) * lu(k,1313) + lu(k,1333) = lu(k,1333) - lu(k,177) * lu(k,1313) + lu(k,1341) = lu(k,1341) - lu(k,174) * lu(k,1338) + lu(k,1342) = lu(k,1342) - lu(k,175) * lu(k,1338) + lu(k,1353) = lu(k,1353) - lu(k,176) * lu(k,1338) + lu(k,1357) = lu(k,1357) - lu(k,177) * lu(k,1338) lu(k,178) = 1._r8 / lu(k,178) lu(k,179) = lu(k,179) * lu(k,178) lu(k,180) = lu(k,180) * lu(k,178) lu(k,586) = - lu(k,179) * lu(k,583) - lu(k,592) = lu(k,592) - lu(k,180) * lu(k,583) + lu(k,589) = lu(k,589) - lu(k,180) * lu(k,583) lu(k,700) = - lu(k,179) * lu(k,691) - lu(k,715) = - lu(k,180) * lu(k,691) + lu(k,712) = - lu(k,180) * lu(k,691) lu(k,787) = lu(k,787) - lu(k,179) * lu(k,778) - lu(k,803) = lu(k,803) - lu(k,180) * lu(k,778) - lu(k,1178) = lu(k,1178) - lu(k,179) * lu(k,1164) - lu(k,1198) = lu(k,1198) - lu(k,180) * lu(k,1164) - lu(k,1222) = lu(k,1222) - lu(k,179) * lu(k,1206) - lu(k,1244) = lu(k,1244) - lu(k,180) * lu(k,1206) - lu(k,1389) = lu(k,1389) - lu(k,179) * lu(k,1346) - lu(k,1413) = lu(k,1413) - lu(k,180) * lu(k,1346) - lu(k,1485) = lu(k,1485) - lu(k,179) * lu(k,1464) - lu(k,1506) = lu(k,1506) - lu(k,180) * lu(k,1464) + lu(k,801) = lu(k,801) - lu(k,180) * lu(k,778) + lu(k,963) = lu(k,963) - lu(k,179) * lu(k,949) + lu(k,979) = lu(k,979) - lu(k,180) * lu(k,949) + lu(k,1007) = lu(k,1007) - lu(k,179) * lu(k,991) + lu(k,1025) = lu(k,1025) - lu(k,180) * lu(k,991) + lu(k,1114) = lu(k,1114) - lu(k,179) * lu(k,1093) + lu(k,1131) = lu(k,1131) - lu(k,180) * lu(k,1093) + lu(k,1242) = lu(k,1242) - lu(k,179) * lu(k,1199) + lu(k,1262) = lu(k,1262) - lu(k,180) * lu(k,1199) lu(k,181) = 1._r8 / lu(k,181) lu(k,182) = lu(k,182) * lu(k,181) lu(k,183) = lu(k,183) * lu(k,181) @@ -485,20 +484,42 @@ subroutine lu_fac04( avec_len, lu ) lu(k,186) = lu(k,186) * lu(k,181) lu(k,187) = lu(k,187) * lu(k,181) lu(k,188) = lu(k,188) * lu(k,181) - lu(k,1367) = lu(k,1367) - lu(k,182) * lu(k,1347) - lu(k,1378) = lu(k,1378) - lu(k,183) * lu(k,1347) - lu(k,1387) = lu(k,1387) - lu(k,184) * lu(k,1347) - lu(k,1398) = lu(k,1398) - lu(k,185) * lu(k,1347) - lu(k,1413) = lu(k,1413) - lu(k,186) * lu(k,1347) - lu(k,1414) = lu(k,1414) - lu(k,187) * lu(k,1347) - lu(k,1417) = lu(k,1417) - lu(k,188) * lu(k,1347) - lu(k,1427) = - lu(k,182) * lu(k,1421) - lu(k,1437) = - lu(k,183) * lu(k,1421) - lu(k,1440) = lu(k,1440) - lu(k,184) * lu(k,1421) - lu(k,1443) = lu(k,1443) - lu(k,185) * lu(k,1421) - lu(k,1458) = lu(k,1458) - lu(k,186) * lu(k,1421) - lu(k,1459) = lu(k,1459) - lu(k,187) * lu(k,1421) - lu(k,1462) = lu(k,1462) - lu(k,188) * lu(k,1421) + lu(k,1240) = lu(k,1240) - lu(k,182) * lu(k,1200) + lu(k,1252) = lu(k,1252) - lu(k,183) * lu(k,1200) + lu(k,1256) = lu(k,1256) - lu(k,184) * lu(k,1200) + lu(k,1262) = lu(k,1262) - lu(k,185) * lu(k,1200) + lu(k,1263) = lu(k,1263) - lu(k,186) * lu(k,1200) + lu(k,1266) = lu(k,1266) - lu(k,187) * lu(k,1200) + lu(k,1271) = lu(k,1271) - lu(k,188) * lu(k,1200) + lu(k,1286) = lu(k,1286) - lu(k,182) * lu(k,1274) + lu(k,1290) = lu(k,1290) - lu(k,183) * lu(k,1274) + lu(k,1294) = lu(k,1294) - lu(k,184) * lu(k,1274) + lu(k,1300) = lu(k,1300) - lu(k,185) * lu(k,1274) + lu(k,1301) = lu(k,1301) - lu(k,186) * lu(k,1274) + lu(k,1304) = lu(k,1304) - lu(k,187) * lu(k,1274) + lu(k,1309) = lu(k,1309) - lu(k,188) * lu(k,1274) + lu(k,189) = 1._r8 / lu(k,189) + lu(k,190) = lu(k,190) * lu(k,189) + lu(k,191) = lu(k,191) * lu(k,189) + lu(k,192) = lu(k,192) * lu(k,189) + lu(k,193) = lu(k,193) * lu(k,189) + lu(k,194) = lu(k,194) * lu(k,189) + lu(k,195) = lu(k,195) * lu(k,189) + lu(k,196) = lu(k,196) * lu(k,189) + lu(k,1220) = lu(k,1220) - lu(k,190) * lu(k,1201) + lu(k,1231) = lu(k,1231) - lu(k,191) * lu(k,1201) + lu(k,1240) = lu(k,1240) - lu(k,192) * lu(k,1201) + lu(k,1251) = lu(k,1251) - lu(k,193) * lu(k,1201) + lu(k,1258) = lu(k,1258) - lu(k,194) * lu(k,1201) + lu(k,1262) = lu(k,1262) - lu(k,195) * lu(k,1201) + lu(k,1268) = lu(k,1268) - lu(k,196) * lu(k,1201) + lu(k,1452) = - lu(k,190) * lu(k,1446) + lu(k,1462) = - lu(k,191) * lu(k,1446) + lu(k,1465) = lu(k,1465) - lu(k,192) * lu(k,1446) + lu(k,1468) = lu(k,1468) - lu(k,193) * lu(k,1446) + lu(k,1475) = lu(k,1475) - lu(k,194) * lu(k,1446) + lu(k,1479) = lu(k,1479) - lu(k,195) * lu(k,1446) + lu(k,1485) = lu(k,1485) - lu(k,196) * lu(k,1446) end do end subroutine lu_fac04 subroutine lu_fac05( avec_len, lu ) @@ -515,28 +536,6 @@ subroutine lu_fac05( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,189) = 1._r8 / lu(k,189) - lu(k,190) = lu(k,190) * lu(k,189) - lu(k,191) = lu(k,191) * lu(k,189) - lu(k,192) = lu(k,192) * lu(k,189) - lu(k,193) = lu(k,193) * lu(k,189) - lu(k,194) = lu(k,194) * lu(k,189) - lu(k,195) = lu(k,195) * lu(k,189) - lu(k,196) = lu(k,196) * lu(k,189) - lu(k,1306) = lu(k,1306) - lu(k,190) * lu(k,1294) - lu(k,1310) = lu(k,1310) - lu(k,191) * lu(k,1294) - lu(k,1317) = lu(k,1317) - lu(k,192) * lu(k,1294) - lu(k,1320) = lu(k,1320) - lu(k,193) * lu(k,1294) - lu(k,1323) = lu(k,1323) - lu(k,194) * lu(k,1294) - lu(k,1324) = lu(k,1324) - lu(k,195) * lu(k,1294) - lu(k,1329) = lu(k,1329) - lu(k,196) * lu(k,1294) - lu(k,1387) = lu(k,1387) - lu(k,190) * lu(k,1348) - lu(k,1399) = lu(k,1399) - lu(k,191) * lu(k,1348) - lu(k,1406) = lu(k,1406) - lu(k,192) * lu(k,1348) - lu(k,1409) = lu(k,1409) - lu(k,193) * lu(k,1348) - lu(k,1412) = lu(k,1412) - lu(k,194) * lu(k,1348) - lu(k,1413) = lu(k,1413) - lu(k,195) * lu(k,1348) - lu(k,1418) = lu(k,1418) - lu(k,196) * lu(k,1348) lu(k,197) = 1._r8 / lu(k,197) lu(k,198) = lu(k,198) * lu(k,197) lu(k,199) = lu(k,199) * lu(k,197) @@ -545,19 +544,19 @@ subroutine lu_fac05( avec_len, lu ) lu(k,202) = lu(k,202) * lu(k,197) lu(k,626) = - lu(k,198) * lu(k,619) lu(k,627) = - lu(k,199) * lu(k,619) - lu(k,630) = - lu(k,200) * lu(k,619) - lu(k,631) = lu(k,631) - lu(k,201) * lu(k,619) - lu(k,636) = lu(k,636) - lu(k,202) * lu(k,619) - lu(k,1223) = lu(k,1223) - lu(k,198) * lu(k,1207) - lu(k,1228) = lu(k,1228) - lu(k,199) * lu(k,1207) - lu(k,1235) = lu(k,1235) - lu(k,200) * lu(k,1207) - lu(k,1236) = lu(k,1236) - lu(k,201) * lu(k,1207) - lu(k,1244) = lu(k,1244) - lu(k,202) * lu(k,1207) - lu(k,1390) = lu(k,1390) - lu(k,198) * lu(k,1349) - lu(k,1395) = lu(k,1395) - lu(k,199) * lu(k,1349) - lu(k,1404) = lu(k,1404) - lu(k,200) * lu(k,1349) - lu(k,1405) = lu(k,1405) - lu(k,201) * lu(k,1349) - lu(k,1413) = lu(k,1413) - lu(k,202) * lu(k,1349) + lu(k,633) = - lu(k,200) * lu(k,619) + lu(k,635) = lu(k,635) - lu(k,201) * lu(k,619) + lu(k,637) = lu(k,637) - lu(k,202) * lu(k,619) + lu(k,1008) = lu(k,1008) - lu(k,198) * lu(k,992) + lu(k,1013) = lu(k,1013) - lu(k,199) * lu(k,992) + lu(k,1022) = lu(k,1022) - lu(k,200) * lu(k,992) + lu(k,1025) = lu(k,1025) - lu(k,201) * lu(k,992) + lu(k,1030) = lu(k,1030) - lu(k,202) * lu(k,992) + lu(k,1243) = lu(k,1243) - lu(k,198) * lu(k,1202) + lu(k,1248) = lu(k,1248) - lu(k,199) * lu(k,1202) + lu(k,1259) = lu(k,1259) - lu(k,200) * lu(k,1202) + lu(k,1262) = lu(k,1262) - lu(k,201) * lu(k,1202) + lu(k,1267) = lu(k,1267) - lu(k,202) * lu(k,1202) lu(k,203) = 1._r8 / lu(k,203) lu(k,204) = lu(k,204) * lu(k,203) lu(k,205) = lu(k,205) * lu(k,203) @@ -566,103 +565,128 @@ subroutine lu_fac05( avec_len, lu ) lu(k,208) = lu(k,208) * lu(k,203) lu(k,459) = lu(k,459) - lu(k,204) * lu(k,458) lu(k,460) = lu(k,460) - lu(k,205) * lu(k,458) - lu(k,467) = lu(k,467) - lu(k,206) * lu(k,458) - lu(k,469) = - lu(k,207) * lu(k,458) + lu(k,468) = - lu(k,206) * lu(k,458) + lu(k,469) = lu(k,469) - lu(k,207) * lu(k,458) lu(k,471) = - lu(k,208) * lu(k,458) - lu(k,1051) = - lu(k,204) * lu(k,1039) - lu(k,1057) = lu(k,1057) - lu(k,205) * lu(k,1039) - lu(k,1081) = lu(k,1081) - lu(k,206) * lu(k,1039) - lu(k,1088) = lu(k,1088) - lu(k,207) * lu(k,1039) - lu(k,1093) = lu(k,1093) - lu(k,208) * lu(k,1039) - lu(k,1370) = lu(k,1370) - lu(k,204) * lu(k,1350) - lu(k,1375) = lu(k,1375) - lu(k,205) * lu(k,1350) - lu(k,1406) = lu(k,1406) - lu(k,206) * lu(k,1350) - lu(k,1413) = lu(k,1413) - lu(k,207) * lu(k,1350) - lu(k,1418) = lu(k,1418) - lu(k,208) * lu(k,1350) + lu(k,1222) = lu(k,1222) - lu(k,204) * lu(k,1203) + lu(k,1228) = lu(k,1228) - lu(k,205) * lu(k,1203) + lu(k,1262) = lu(k,1262) - lu(k,206) * lu(k,1203) + lu(k,1266) = lu(k,1266) - lu(k,207) * lu(k,1203) + lu(k,1271) = lu(k,1271) - lu(k,208) * lu(k,1203) + lu(k,1375) = - lu(k,204) * lu(k,1365) + lu(k,1383) = lu(k,1383) - lu(k,205) * lu(k,1365) + lu(k,1410) = lu(k,1410) - lu(k,206) * lu(k,1365) + lu(k,1414) = lu(k,1414) - lu(k,207) * lu(k,1365) + lu(k,1419) = lu(k,1419) - lu(k,208) * lu(k,1365) lu(k,209) = 1._r8 / lu(k,209) lu(k,210) = lu(k,210) * lu(k,209) lu(k,211) = lu(k,211) * lu(k,209) lu(k,212) = lu(k,212) * lu(k,209) lu(k,213) = lu(k,213) * lu(k,209) lu(k,214) = lu(k,214) * lu(k,209) - lu(k,1080) = lu(k,1080) - lu(k,210) * lu(k,1040) - lu(k,1084) = lu(k,1084) - lu(k,211) * lu(k,1040) - lu(k,1088) = lu(k,1088) - lu(k,212) * lu(k,1040) - lu(k,1092) = lu(k,1092) - lu(k,213) * lu(k,1040) - lu(k,1093) = lu(k,1093) - lu(k,214) * lu(k,1040) - lu(k,1190) = lu(k,1190) - lu(k,210) * lu(k,1165) - lu(k,1194) = lu(k,1194) - lu(k,211) * lu(k,1165) - lu(k,1198) = lu(k,1198) - lu(k,212) * lu(k,1165) - lu(k,1202) = - lu(k,213) * lu(k,1165) - lu(k,1203) = - lu(k,214) * lu(k,1165) - lu(k,1405) = lu(k,1405) - lu(k,210) * lu(k,1351) - lu(k,1409) = lu(k,1409) - lu(k,211) * lu(k,1351) - lu(k,1413) = lu(k,1413) - lu(k,212) * lu(k,1351) - lu(k,1417) = lu(k,1417) - lu(k,213) * lu(k,1351) - lu(k,1418) = lu(k,1418) - lu(k,214) * lu(k,1351) + lu(k,602) = lu(k,602) - lu(k,210) * lu(k,600) + lu(k,605) = lu(k,605) - lu(k,211) * lu(k,600) + lu(k,609) = lu(k,609) - lu(k,212) * lu(k,600) + lu(k,611) = lu(k,611) - lu(k,213) * lu(k,600) + lu(k,612) = - lu(k,214) * lu(k,600) + lu(k,1236) = lu(k,1236) - lu(k,210) * lu(k,1204) + lu(k,1248) = lu(k,1248) - lu(k,211) * lu(k,1204) + lu(k,1262) = lu(k,1262) - lu(k,212) * lu(k,1204) + lu(k,1267) = lu(k,1267) - lu(k,213) * lu(k,1204) + lu(k,1271) = lu(k,1271) - lu(k,214) * lu(k,1204) + lu(k,1386) = lu(k,1386) - lu(k,210) * lu(k,1366) + lu(k,1397) = lu(k,1397) - lu(k,211) * lu(k,1366) + lu(k,1410) = lu(k,1410) - lu(k,212) * lu(k,1366) + lu(k,1415) = lu(k,1415) - lu(k,213) * lu(k,1366) + lu(k,1419) = lu(k,1419) - lu(k,214) * lu(k,1366) lu(k,215) = 1._r8 / lu(k,215) lu(k,216) = lu(k,216) * lu(k,215) lu(k,217) = lu(k,217) * lu(k,215) lu(k,218) = lu(k,218) * lu(k,215) lu(k,219) = lu(k,219) * lu(k,215) lu(k,220) = lu(k,220) * lu(k,215) - lu(k,595) = lu(k,595) - lu(k,216) * lu(k,593) - lu(k,598) = lu(k,598) - lu(k,217) * lu(k,593) - lu(k,600) = lu(k,600) - lu(k,218) * lu(k,593) - lu(k,603) = lu(k,603) - lu(k,219) * lu(k,593) - lu(k,605) = - lu(k,220) * lu(k,593) - lu(k,1059) = lu(k,1059) - lu(k,216) * lu(k,1041) - lu(k,1071) = lu(k,1071) - lu(k,217) * lu(k,1041) - lu(k,1080) = lu(k,1080) - lu(k,218) * lu(k,1041) - lu(k,1088) = lu(k,1088) - lu(k,219) * lu(k,1041) - lu(k,1093) = lu(k,1093) - lu(k,220) * lu(k,1041) - lu(k,1382) = lu(k,1382) - lu(k,216) * lu(k,1352) - lu(k,1395) = lu(k,1395) - lu(k,217) * lu(k,1352) - lu(k,1405) = lu(k,1405) - lu(k,218) * lu(k,1352) - lu(k,1413) = lu(k,1413) - lu(k,219) * lu(k,1352) - lu(k,1418) = lu(k,1418) - lu(k,220) * lu(k,1352) + lu(k,973) = lu(k,973) - lu(k,216) * lu(k,950) + lu(k,975) = - lu(k,217) * lu(k,950) + lu(k,979) = lu(k,979) - lu(k,218) * lu(k,950) + lu(k,984) = lu(k,984) - lu(k,219) * lu(k,950) + lu(k,988) = - lu(k,220) * lu(k,950) + lu(k,1256) = lu(k,1256) - lu(k,216) * lu(k,1205) + lu(k,1258) = lu(k,1258) - lu(k,217) * lu(k,1205) + lu(k,1262) = lu(k,1262) - lu(k,218) * lu(k,1205) + lu(k,1267) = lu(k,1267) - lu(k,219) * lu(k,1205) + lu(k,1271) = lu(k,1271) - lu(k,220) * lu(k,1205) + lu(k,1404) = lu(k,1404) - lu(k,216) * lu(k,1367) + lu(k,1406) = lu(k,1406) - lu(k,217) * lu(k,1367) + lu(k,1410) = lu(k,1410) - lu(k,218) * lu(k,1367) + lu(k,1415) = lu(k,1415) - lu(k,219) * lu(k,1367) + lu(k,1419) = lu(k,1419) - lu(k,220) * lu(k,1367) lu(k,221) = 1._r8 / lu(k,221) lu(k,222) = lu(k,222) * lu(k,221) lu(k,223) = lu(k,223) * lu(k,221) lu(k,224) = lu(k,224) * lu(k,221) lu(k,225) = lu(k,225) * lu(k,221) lu(k,226) = lu(k,226) * lu(k,221) - lu(k,1272) = lu(k,1272) - lu(k,222) * lu(k,1266) - lu(k,1273) = lu(k,1273) - lu(k,223) * lu(k,1266) - lu(k,1284) = lu(k,1284) - lu(k,224) * lu(k,1266) - lu(k,1285) = lu(k,1285) - lu(k,225) * lu(k,1266) - lu(k,1286) = lu(k,1286) - lu(k,226) * lu(k,1266) - lu(k,1310) = lu(k,1310) - lu(k,222) * lu(k,1295) - lu(k,1311) = lu(k,1311) - lu(k,223) * lu(k,1295) - lu(k,1322) = - lu(k,224) * lu(k,1295) - lu(k,1323) = lu(k,1323) - lu(k,225) * lu(k,1295) - lu(k,1324) = lu(k,1324) - lu(k,226) * lu(k,1295) - lu(k,1399) = lu(k,1399) - lu(k,222) * lu(k,1353) - lu(k,1400) = lu(k,1400) - lu(k,223) * lu(k,1353) - lu(k,1411) = lu(k,1411) - lu(k,224) * lu(k,1353) - lu(k,1412) = lu(k,1412) - lu(k,225) * lu(k,1353) - lu(k,1413) = lu(k,1413) - lu(k,226) * lu(k,1353) + lu(k,1163) = lu(k,1163) - lu(k,222) * lu(k,1157) + lu(k,1164) = lu(k,1164) - lu(k,223) * lu(k,1157) + lu(k,1172) = lu(k,1172) - lu(k,224) * lu(k,1157) + lu(k,1173) = lu(k,1173) - lu(k,225) * lu(k,1157) + lu(k,1174) = lu(k,1174) - lu(k,226) * lu(k,1157) + lu(k,1252) = lu(k,1252) - lu(k,222) * lu(k,1206) + lu(k,1253) = lu(k,1253) - lu(k,223) * lu(k,1206) + lu(k,1261) = lu(k,1261) - lu(k,224) * lu(k,1206) + lu(k,1262) = lu(k,1262) - lu(k,225) * lu(k,1206) + lu(k,1263) = lu(k,1263) - lu(k,226) * lu(k,1206) + lu(k,1290) = lu(k,1290) - lu(k,222) * lu(k,1275) + lu(k,1291) = lu(k,1291) - lu(k,223) * lu(k,1275) + lu(k,1299) = - lu(k,224) * lu(k,1275) + lu(k,1300) = lu(k,1300) - lu(k,225) * lu(k,1275) + lu(k,1301) = lu(k,1301) - lu(k,226) * lu(k,1275) lu(k,227) = 1._r8 / lu(k,227) lu(k,228) = lu(k,228) * lu(k,227) lu(k,229) = lu(k,229) * lu(k,227) lu(k,230) = lu(k,230) * lu(k,227) lu(k,231) = lu(k,231) * lu(k,227) - lu(k,378) = - lu(k,228) * lu(k,376) - lu(k,379) = - lu(k,229) * lu(k,376) - lu(k,381) = lu(k,381) - lu(k,230) * lu(k,376) - lu(k,382) = lu(k,382) - lu(k,231) * lu(k,376) + lu(k,393) = - lu(k,228) * lu(k,391) + lu(k,394) = - lu(k,229) * lu(k,391) + lu(k,398) = lu(k,398) - lu(k,230) * lu(k,391) + lu(k,399) = lu(k,399) - lu(k,231) * lu(k,391) lu(k,904) = lu(k,904) - lu(k,228) * lu(k,891) lu(k,909) = lu(k,909) - lu(k,229) * lu(k,891) - lu(k,913) = - lu(k,230) * lu(k,891) - lu(k,914) = lu(k,914) - lu(k,231) * lu(k,891) - lu(k,1060) = - lu(k,228) * lu(k,1042) - lu(k,1076) = lu(k,1076) - lu(k,229) * lu(k,1042) - lu(k,1080) = lu(k,1080) - lu(k,230) * lu(k,1042) - lu(k,1081) = lu(k,1081) - lu(k,231) * lu(k,1042) - lu(k,1480) = lu(k,1480) - lu(k,228) * lu(k,1465) - lu(k,1494) = lu(k,1494) - lu(k,229) * lu(k,1465) - lu(k,1498) = lu(k,1498) - lu(k,230) * lu(k,1465) - lu(k,1499) = lu(k,1499) - lu(k,231) * lu(k,1465) + lu(k,918) = lu(k,918) - lu(k,230) * lu(k,891) + lu(k,919) = - lu(k,231) * lu(k,891) + lu(k,1108) = lu(k,1108) - lu(k,228) * lu(k,1094) + lu(k,1123) = lu(k,1123) - lu(k,229) * lu(k,1094) + lu(k,1135) = lu(k,1135) - lu(k,230) * lu(k,1094) + lu(k,1136) = lu(k,1136) - lu(k,231) * lu(k,1094) + lu(k,1385) = - lu(k,228) * lu(k,1368) + lu(k,1402) = lu(k,1402) - lu(k,229) * lu(k,1368) + lu(k,1414) = lu(k,1414) - lu(k,230) * lu(k,1368) + lu(k,1415) = lu(k,1415) - lu(k,231) * lu(k,1368) + lu(k,232) = 1._r8 / lu(k,232) + lu(k,233) = lu(k,233) * lu(k,232) + lu(k,234) = lu(k,234) * lu(k,232) + lu(k,235) = lu(k,235) * lu(k,232) + lu(k,236) = lu(k,236) * lu(k,232) + lu(k,237) = lu(k,237) * lu(k,232) + lu(k,238) = lu(k,238) * lu(k,232) + lu(k,1223) = lu(k,1223) - lu(k,233) * lu(k,1207) + lu(k,1240) = lu(k,1240) - lu(k,234) * lu(k,1207) + lu(k,1262) = lu(k,1262) - lu(k,235) * lu(k,1207) + lu(k,1266) = lu(k,1266) - lu(k,236) * lu(k,1207) + lu(k,1267) = lu(k,1267) - lu(k,237) * lu(k,1207) + lu(k,1270) = lu(k,1270) - lu(k,238) * lu(k,1207) + lu(k,1280) = - lu(k,233) * lu(k,1276) + lu(k,1286) = lu(k,1286) - lu(k,234) * lu(k,1276) + lu(k,1300) = lu(k,1300) - lu(k,235) * lu(k,1276) + lu(k,1304) = lu(k,1304) - lu(k,236) * lu(k,1276) + lu(k,1305) = lu(k,1305) - lu(k,237) * lu(k,1276) + lu(k,1308) = lu(k,1308) - lu(k,238) * lu(k,1276) + lu(k,1519) = - lu(k,233) * lu(k,1514) + lu(k,1528) = lu(k,1528) - lu(k,234) * lu(k,1514) + lu(k,1548) = lu(k,1548) - lu(k,235) * lu(k,1514) + lu(k,1552) = lu(k,1552) - lu(k,236) * lu(k,1514) + lu(k,1553) = lu(k,1553) - lu(k,237) * lu(k,1514) + lu(k,1556) = lu(k,1556) - lu(k,238) * lu(k,1514) end do end subroutine lu_fac05 subroutine lu_fac06( avec_len, lu ) @@ -679,31 +703,6 @@ subroutine lu_fac06( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,232) = 1._r8 / lu(k,232) - lu(k,233) = lu(k,233) * lu(k,232) - lu(k,234) = lu(k,234) * lu(k,232) - lu(k,235) = lu(k,235) * lu(k,232) - lu(k,236) = lu(k,236) * lu(k,232) - lu(k,237) = lu(k,237) * lu(k,232) - lu(k,238) = lu(k,238) * lu(k,232) - lu(k,993) = lu(k,993) - lu(k,233) * lu(k,976) - lu(k,996) = lu(k,996) - lu(k,234) * lu(k,976) - lu(k,998) = lu(k,998) - lu(k,235) * lu(k,976) - lu(k,1002) = lu(k,1002) - lu(k,236) * lu(k,976) - lu(k,1005) = lu(k,1005) - lu(k,237) * lu(k,976) - lu(k,1010) = - lu(k,238) * lu(k,976) - lu(k,1076) = lu(k,1076) - lu(k,233) * lu(k,1043) - lu(k,1079) = lu(k,1079) - lu(k,234) * lu(k,1043) - lu(k,1081) = lu(k,1081) - lu(k,235) * lu(k,1043) - lu(k,1085) = lu(k,1085) - lu(k,236) * lu(k,1043) - lu(k,1088) = lu(k,1088) - lu(k,237) * lu(k,1043) - lu(k,1093) = lu(k,1093) - lu(k,238) * lu(k,1043) - lu(k,1401) = lu(k,1401) - lu(k,233) * lu(k,1354) - lu(k,1404) = lu(k,1404) - lu(k,234) * lu(k,1354) - lu(k,1406) = lu(k,1406) - lu(k,235) * lu(k,1354) - lu(k,1410) = lu(k,1410) - lu(k,236) * lu(k,1354) - lu(k,1413) = lu(k,1413) - lu(k,237) * lu(k,1354) - lu(k,1418) = lu(k,1418) - lu(k,238) * lu(k,1354) lu(k,239) = 1._r8 / lu(k,239) lu(k,240) = lu(k,240) * lu(k,239) lu(k,241) = lu(k,241) * lu(k,239) @@ -711,24 +710,24 @@ subroutine lu_fac06( avec_len, lu ) lu(k,243) = lu(k,243) * lu(k,239) lu(k,244) = lu(k,244) * lu(k,239) lu(k,245) = lu(k,245) * lu(k,239) - lu(k,1100) = - lu(k,240) * lu(k,1096) - lu(k,1110) = lu(k,1110) - lu(k,241) * lu(k,1096) - lu(k,1126) = lu(k,1126) - lu(k,242) * lu(k,1096) - lu(k,1127) = lu(k,1127) - lu(k,243) * lu(k,1096) - lu(k,1128) = lu(k,1128) - lu(k,244) * lu(k,1096) - lu(k,1134) = lu(k,1134) - lu(k,245) * lu(k,1096) - lu(k,1300) = - lu(k,240) * lu(k,1296) - lu(k,1306) = lu(k,1306) - lu(k,241) * lu(k,1296) - lu(k,1316) = lu(k,1316) - lu(k,242) * lu(k,1296) - lu(k,1317) = lu(k,1317) - lu(k,243) * lu(k,1296) - lu(k,1318) = lu(k,1318) - lu(k,244) * lu(k,1296) - lu(k,1324) = lu(k,1324) - lu(k,245) * lu(k,1296) - lu(k,1369) = lu(k,1369) - lu(k,240) * lu(k,1355) - lu(k,1387) = lu(k,1387) - lu(k,241) * lu(k,1355) - lu(k,1405) = lu(k,1405) - lu(k,242) * lu(k,1355) - lu(k,1406) = lu(k,1406) - lu(k,243) * lu(k,1355) - lu(k,1407) = lu(k,1407) - lu(k,244) * lu(k,1355) - lu(k,1413) = lu(k,1413) - lu(k,245) * lu(k,1355) + lu(k,1075) = lu(k,1075) - lu(k,240) * lu(k,1058) + lu(k,1078) = lu(k,1078) - lu(k,241) * lu(k,1058) + lu(k,1080) = lu(k,1080) - lu(k,242) * lu(k,1058) + lu(k,1083) = lu(k,1083) - lu(k,243) * lu(k,1058) + lu(k,1087) = lu(k,1087) - lu(k,244) * lu(k,1058) + lu(k,1092) = - lu(k,245) * lu(k,1058) + lu(k,1254) = lu(k,1254) - lu(k,240) * lu(k,1208) + lu(k,1257) = lu(k,1257) - lu(k,241) * lu(k,1208) + lu(k,1259) = lu(k,1259) - lu(k,242) * lu(k,1208) + lu(k,1262) = lu(k,1262) - lu(k,243) * lu(k,1208) + lu(k,1266) = lu(k,1266) - lu(k,244) * lu(k,1208) + lu(k,1271) = lu(k,1271) - lu(k,245) * lu(k,1208) + lu(k,1402) = lu(k,1402) - lu(k,240) * lu(k,1369) + lu(k,1405) = lu(k,1405) - lu(k,241) * lu(k,1369) + lu(k,1407) = lu(k,1407) - lu(k,242) * lu(k,1369) + lu(k,1410) = lu(k,1410) - lu(k,243) * lu(k,1369) + lu(k,1414) = lu(k,1414) - lu(k,244) * lu(k,1369) + lu(k,1419) = lu(k,1419) - lu(k,245) * lu(k,1369) lu(k,246) = 1._r8 / lu(k,246) lu(k,247) = lu(k,247) * lu(k,246) lu(k,248) = lu(k,248) * lu(k,246) @@ -736,24 +735,24 @@ subroutine lu_fac06( avec_len, lu ) lu(k,250) = lu(k,250) * lu(k,246) lu(k,251) = lu(k,251) * lu(k,246) lu(k,252) = lu(k,252) * lu(k,246) - lu(k,1272) = lu(k,1272) - lu(k,247) * lu(k,1267) - lu(k,1273) = lu(k,1273) - lu(k,248) * lu(k,1267) - lu(k,1284) = lu(k,1284) - lu(k,249) * lu(k,1267) - lu(k,1285) = lu(k,1285) - lu(k,250) * lu(k,1267) - lu(k,1286) = lu(k,1286) - lu(k,251) * lu(k,1267) - lu(k,1291) = lu(k,1291) - lu(k,252) * lu(k,1267) - lu(k,1310) = lu(k,1310) - lu(k,247) * lu(k,1297) - lu(k,1311) = lu(k,1311) - lu(k,248) * lu(k,1297) - lu(k,1322) = lu(k,1322) - lu(k,249) * lu(k,1297) - lu(k,1323) = lu(k,1323) - lu(k,250) * lu(k,1297) - lu(k,1324) = lu(k,1324) - lu(k,251) * lu(k,1297) - lu(k,1329) = lu(k,1329) - lu(k,252) * lu(k,1297) - lu(k,1399) = lu(k,1399) - lu(k,247) * lu(k,1356) - lu(k,1400) = lu(k,1400) - lu(k,248) * lu(k,1356) - lu(k,1411) = lu(k,1411) - lu(k,249) * lu(k,1356) - lu(k,1412) = lu(k,1412) - lu(k,250) * lu(k,1356) - lu(k,1413) = lu(k,1413) - lu(k,251) * lu(k,1356) - lu(k,1418) = lu(k,1418) - lu(k,252) * lu(k,1356) + lu(k,1163) = lu(k,1163) - lu(k,247) * lu(k,1158) + lu(k,1164) = lu(k,1164) - lu(k,248) * lu(k,1158) + lu(k,1172) = lu(k,1172) - lu(k,249) * lu(k,1158) + lu(k,1173) = lu(k,1173) - lu(k,250) * lu(k,1158) + lu(k,1174) = lu(k,1174) - lu(k,251) * lu(k,1158) + lu(k,1182) = lu(k,1182) - lu(k,252) * lu(k,1158) + lu(k,1252) = lu(k,1252) - lu(k,247) * lu(k,1209) + lu(k,1253) = lu(k,1253) - lu(k,248) * lu(k,1209) + lu(k,1261) = lu(k,1261) - lu(k,249) * lu(k,1209) + lu(k,1262) = lu(k,1262) - lu(k,250) * lu(k,1209) + lu(k,1263) = lu(k,1263) - lu(k,251) * lu(k,1209) + lu(k,1271) = lu(k,1271) - lu(k,252) * lu(k,1209) + lu(k,1290) = lu(k,1290) - lu(k,247) * lu(k,1277) + lu(k,1291) = lu(k,1291) - lu(k,248) * lu(k,1277) + lu(k,1299) = lu(k,1299) - lu(k,249) * lu(k,1277) + lu(k,1300) = lu(k,1300) - lu(k,250) * lu(k,1277) + lu(k,1301) = lu(k,1301) - lu(k,251) * lu(k,1277) + lu(k,1309) = lu(k,1309) - lu(k,252) * lu(k,1277) lu(k,253) = 1._r8 / lu(k,253) lu(k,254) = lu(k,254) * lu(k,253) lu(k,255) = lu(k,255) * lu(k,253) @@ -765,20 +764,20 @@ subroutine lu_fac06( avec_len, lu ) lu(k,521) = lu(k,521) - lu(k,255) * lu(k,519) lu(k,523) = - lu(k,256) * lu(k,519) lu(k,524) = lu(k,524) - lu(k,257) * lu(k,519) - lu(k,533) = lu(k,533) - lu(k,258) * lu(k,519) - lu(k,534) = - lu(k,259) * lu(k,519) + lu(k,532) = - lu(k,258) * lu(k,519) + lu(k,534) = lu(k,534) - lu(k,259) * lu(k,519) lu(k,893) = lu(k,893) - lu(k,254) * lu(k,892) lu(k,894) = lu(k,894) - lu(k,255) * lu(k,892) lu(k,897) = lu(k,897) - lu(k,256) * lu(k,892) lu(k,898) = lu(k,898) - lu(k,257) * lu(k,892) - lu(k,919) = lu(k,919) - lu(k,258) * lu(k,892) + lu(k,912) = lu(k,912) - lu(k,258) * lu(k,892) lu(k,920) = lu(k,920) - lu(k,259) * lu(k,892) - lu(k,1423) = lu(k,1423) - lu(k,254) * lu(k,1422) - lu(k,1426) = lu(k,1426) - lu(k,255) * lu(k,1422) - lu(k,1431) = lu(k,1431) - lu(k,256) * lu(k,1422) - lu(k,1433) = lu(k,1433) - lu(k,257) * lu(k,1422) - lu(k,1459) = lu(k,1459) - lu(k,258) * lu(k,1422) - lu(k,1460) = lu(k,1460) - lu(k,259) * lu(k,1422) + lu(k,1448) = lu(k,1448) - lu(k,254) * lu(k,1447) + lu(k,1451) = lu(k,1451) - lu(k,255) * lu(k,1447) + lu(k,1456) = lu(k,1456) - lu(k,256) * lu(k,1447) + lu(k,1458) = lu(k,1458) - lu(k,257) * lu(k,1447) + lu(k,1477) = lu(k,1477) - lu(k,258) * lu(k,1447) + lu(k,1485) = lu(k,1485) - lu(k,259) * lu(k,1447) lu(k,260) = 1._r8 / lu(k,260) lu(k,261) = lu(k,261) * lu(k,260) lu(k,262) = lu(k,262) * lu(k,260) @@ -789,17 +788,17 @@ subroutine lu_fac06( avec_len, lu ) lu(k,524) = lu(k,524) - lu(k,262) * lu(k,520) lu(k,525) = lu(k,525) - lu(k,263) * lu(k,520) lu(k,531) = - lu(k,264) * lu(k,520) - lu(k,533) = lu(k,533) - lu(k,265) * lu(k,520) + lu(k,534) = lu(k,534) - lu(k,265) * lu(k,520) lu(k,894) = lu(k,894) - lu(k,261) * lu(k,893) lu(k,898) = lu(k,898) - lu(k,262) * lu(k,893) lu(k,899) = lu(k,899) - lu(k,263) * lu(k,893) lu(k,909) = lu(k,909) - lu(k,264) * lu(k,893) - lu(k,919) = lu(k,919) - lu(k,265) * lu(k,893) - lu(k,1426) = lu(k,1426) - lu(k,261) * lu(k,1423) - lu(k,1433) = lu(k,1433) - lu(k,262) * lu(k,1423) - lu(k,1434) = - lu(k,263) * lu(k,1423) - lu(k,1446) = lu(k,1446) - lu(k,264) * lu(k,1423) - lu(k,1459) = lu(k,1459) - lu(k,265) * lu(k,1423) + lu(k,920) = lu(k,920) - lu(k,265) * lu(k,893) + lu(k,1451) = lu(k,1451) - lu(k,261) * lu(k,1448) + lu(k,1458) = lu(k,1458) - lu(k,262) * lu(k,1448) + lu(k,1459) = - lu(k,263) * lu(k,1448) + lu(k,1471) = lu(k,1471) - lu(k,264) * lu(k,1448) + lu(k,1485) = lu(k,1485) - lu(k,265) * lu(k,1448) lu(k,266) = 1._r8 / lu(k,266) lu(k,267) = lu(k,267) * lu(k,266) lu(k,268) = lu(k,268) * lu(k,266) @@ -808,27 +807,27 @@ subroutine lu_fac06( avec_len, lu ) lu(k,271) = lu(k,271) * lu(k,266) lu(k,272) = lu(k,272) * lu(k,266) lu(k,273) = lu(k,273) * lu(k,266) - lu(k,699) = lu(k,699) - lu(k,267) * lu(k,692) - lu(k,700) = lu(k,700) - lu(k,268) * lu(k,692) - lu(k,702) = lu(k,702) - lu(k,269) * lu(k,692) - lu(k,704) = lu(k,704) - lu(k,270) * lu(k,692) - lu(k,709) = lu(k,709) - lu(k,271) * lu(k,692) - lu(k,710) = lu(k,710) - lu(k,272) * lu(k,692) - lu(k,715) = lu(k,715) - lu(k,273) * lu(k,692) - lu(k,1064) = lu(k,1064) - lu(k,267) * lu(k,1044) - lu(k,1065) = lu(k,1065) - lu(k,268) * lu(k,1044) - lu(k,1067) = lu(k,1067) - lu(k,269) * lu(k,1044) - lu(k,1069) = lu(k,1069) - lu(k,270) * lu(k,1044) - lu(k,1080) = lu(k,1080) - lu(k,271) * lu(k,1044) - lu(k,1081) = lu(k,1081) - lu(k,272) * lu(k,1044) - lu(k,1088) = lu(k,1088) - lu(k,273) * lu(k,1044) - lu(k,1388) = lu(k,1388) - lu(k,267) * lu(k,1357) - lu(k,1389) = lu(k,1389) - lu(k,268) * lu(k,1357) - lu(k,1391) = lu(k,1391) - lu(k,269) * lu(k,1357) - lu(k,1393) = lu(k,1393) - lu(k,270) * lu(k,1357) - lu(k,1405) = lu(k,1405) - lu(k,271) * lu(k,1357) - lu(k,1406) = lu(k,1406) - lu(k,272) * lu(k,1357) - lu(k,1413) = lu(k,1413) - lu(k,273) * lu(k,1357) + lu(k,1062) = - lu(k,267) * lu(k,1059) + lu(k,1074) = - lu(k,268) * lu(k,1059) + lu(k,1078) = lu(k,1078) - lu(k,269) * lu(k,1059) + lu(k,1080) = lu(k,1080) - lu(k,270) * lu(k,1059) + lu(k,1086) = lu(k,1086) - lu(k,271) * lu(k,1059) + lu(k,1089) = lu(k,1089) - lu(k,272) * lu(k,1059) + lu(k,1090) = lu(k,1090) - lu(k,273) * lu(k,1059) + lu(k,1340) = lu(k,1340) - lu(k,267) * lu(k,1339) + lu(k,1344) = lu(k,1344) - lu(k,268) * lu(k,1339) + lu(k,1346) = - lu(k,269) * lu(k,1339) + lu(k,1348) = lu(k,1348) - lu(k,270) * lu(k,1339) + lu(k,1354) = lu(k,1354) - lu(k,271) * lu(k,1339) + lu(k,1357) = lu(k,1357) - lu(k,272) * lu(k,1339) + lu(k,1358) = - lu(k,273) * lu(k,1339) + lu(k,1454) = lu(k,1454) - lu(k,267) * lu(k,1449) + lu(k,1470) = lu(k,1470) - lu(k,268) * lu(k,1449) + lu(k,1474) = lu(k,1474) - lu(k,269) * lu(k,1449) + lu(k,1476) = lu(k,1476) - lu(k,270) * lu(k,1449) + lu(k,1482) = lu(k,1482) - lu(k,271) * lu(k,1449) + lu(k,1485) = lu(k,1485) - lu(k,272) * lu(k,1449) + lu(k,1486) = - lu(k,273) * lu(k,1449) lu(k,274) = 1._r8 / lu(k,274) lu(k,275) = lu(k,275) * lu(k,274) lu(k,276) = lu(k,276) * lu(k,274) @@ -839,25 +838,25 @@ subroutine lu_fac06( avec_len, lu ) lu(k,281) = lu(k,281) * lu(k,274) lu(k,793) = lu(k,793) - lu(k,275) * lu(k,779) lu(k,794) = lu(k,794) - lu(k,276) * lu(k,779) - lu(k,796) = lu(k,796) - lu(k,277) * lu(k,779) - lu(k,797) = lu(k,797) - lu(k,278) * lu(k,779) - lu(k,801) = lu(k,801) - lu(k,279) * lu(k,779) - lu(k,802) = - lu(k,280) * lu(k,779) + lu(k,797) = lu(k,797) - lu(k,277) * lu(k,779) + lu(k,798) = - lu(k,278) * lu(k,779) + lu(k,799) = lu(k,799) - lu(k,279) * lu(k,779) + lu(k,801) = lu(k,801) - lu(k,280) * lu(k,779) lu(k,803) = lu(k,803) - lu(k,281) * lu(k,779) - lu(k,988) = lu(k,988) - lu(k,275) * lu(k,977) - lu(k,989) = - lu(k,276) * lu(k,977) - lu(k,996) = lu(k,996) - lu(k,277) * lu(k,977) - lu(k,997) = - lu(k,278) * lu(k,977) - lu(k,1001) = - lu(k,279) * lu(k,977) - lu(k,1002) = lu(k,1002) - lu(k,280) * lu(k,977) - lu(k,1005) = lu(k,1005) - lu(k,281) * lu(k,977) - lu(k,1395) = lu(k,1395) - lu(k,275) * lu(k,1358) - lu(k,1396) = lu(k,1396) - lu(k,276) * lu(k,1358) - lu(k,1404) = lu(k,1404) - lu(k,277) * lu(k,1358) - lu(k,1405) = lu(k,1405) - lu(k,278) * lu(k,1358) - lu(k,1409) = lu(k,1409) - lu(k,279) * lu(k,1358) - lu(k,1410) = lu(k,1410) - lu(k,280) * lu(k,1358) - lu(k,1413) = lu(k,1413) - lu(k,281) * lu(k,1358) + lu(k,1070) = lu(k,1070) - lu(k,275) * lu(k,1060) + lu(k,1071) = - lu(k,276) * lu(k,1060) + lu(k,1077) = - lu(k,277) * lu(k,1060) + lu(k,1078) = lu(k,1078) - lu(k,278) * lu(k,1060) + lu(k,1080) = lu(k,1080) - lu(k,279) * lu(k,1060) + lu(k,1083) = lu(k,1083) - lu(k,280) * lu(k,1060) + lu(k,1088) = - lu(k,281) * lu(k,1060) + lu(k,1248) = lu(k,1248) - lu(k,275) * lu(k,1210) + lu(k,1249) = lu(k,1249) - lu(k,276) * lu(k,1210) + lu(k,1256) = lu(k,1256) - lu(k,277) * lu(k,1210) + lu(k,1257) = lu(k,1257) - lu(k,278) * lu(k,1210) + lu(k,1259) = lu(k,1259) - lu(k,279) * lu(k,1210) + lu(k,1262) = lu(k,1262) - lu(k,280) * lu(k,1210) + lu(k,1267) = lu(k,1267) - lu(k,281) * lu(k,1210) end do end subroutine lu_fac06 subroutine lu_fac07( avec_len, lu ) @@ -878,27 +877,27 @@ subroutine lu_fac07( avec_len, lu ) lu(k,283) = lu(k,283) * lu(k,282) lu(k,284) = lu(k,284) * lu(k,282) lu(k,285) = lu(k,285) * lu(k,282) - lu(k,428) = lu(k,428) - lu(k,283) * lu(k,423) - lu(k,429) = lu(k,429) - lu(k,284) * lu(k,423) - lu(k,431) = lu(k,431) - lu(k,285) * lu(k,423) - lu(k,600) = lu(k,600) - lu(k,283) * lu(k,594) - lu(k,601) = lu(k,601) - lu(k,284) * lu(k,594) - lu(k,603) = lu(k,603) - lu(k,285) * lu(k,594) - lu(k,676) = lu(k,676) - lu(k,283) * lu(k,666) - lu(k,677) = lu(k,677) - lu(k,284) * lu(k,666) - lu(k,680) = lu(k,680) - lu(k,285) * lu(k,666) - lu(k,709) = lu(k,709) - lu(k,283) * lu(k,693) - lu(k,710) = lu(k,710) - lu(k,284) * lu(k,693) - lu(k,715) = lu(k,715) - lu(k,285) * lu(k,693) - lu(k,731) = lu(k,731) - lu(k,283) * lu(k,719) - lu(k,732) = lu(k,732) - lu(k,284) * lu(k,719) + lu(k,430) = lu(k,430) - lu(k,283) * lu(k,423) + lu(k,431) = lu(k,431) - lu(k,284) * lu(k,423) + lu(k,432) = lu(k,432) - lu(k,285) * lu(k,423) + lu(k,609) = lu(k,609) - lu(k,283) * lu(k,601) + lu(k,610) = lu(k,610) - lu(k,284) * lu(k,601) + lu(k,611) = lu(k,611) - lu(k,285) * lu(k,601) + lu(k,679) = lu(k,679) - lu(k,283) * lu(k,666) + lu(k,680) = lu(k,680) - lu(k,284) * lu(k,666) + lu(k,681) = lu(k,681) - lu(k,285) * lu(k,666) + lu(k,712) = lu(k,712) - lu(k,283) * lu(k,692) + lu(k,713) = lu(k,713) - lu(k,284) * lu(k,692) + lu(k,714) = lu(k,714) - lu(k,285) * lu(k,692) + lu(k,734) = lu(k,734) - lu(k,283) * lu(k,719) + lu(k,735) = lu(k,735) - lu(k,284) * lu(k,719) lu(k,736) = lu(k,736) - lu(k,285) * lu(k,719) - lu(k,1190) = lu(k,1190) - lu(k,283) * lu(k,1166) - lu(k,1191) = lu(k,1191) - lu(k,284) * lu(k,1166) - lu(k,1198) = lu(k,1198) - lu(k,285) * lu(k,1166) - lu(k,1405) = lu(k,1405) - lu(k,283) * lu(k,1359) - lu(k,1406) = lu(k,1406) - lu(k,284) * lu(k,1359) - lu(k,1413) = lu(k,1413) - lu(k,285) * lu(k,1359) + lu(k,979) = lu(k,979) - lu(k,283) * lu(k,951) + lu(k,983) = lu(k,983) - lu(k,284) * lu(k,951) + lu(k,984) = lu(k,984) - lu(k,285) * lu(k,951) + lu(k,1262) = lu(k,1262) - lu(k,283) * lu(k,1211) + lu(k,1266) = lu(k,1266) - lu(k,284) * lu(k,1211) + lu(k,1267) = lu(k,1267) - lu(k,285) * lu(k,1211) lu(k,286) = 1._r8 / lu(k,286) lu(k,287) = lu(k,287) * lu(k,286) lu(k,288) = lu(k,288) * lu(k,286) @@ -907,27 +906,27 @@ subroutine lu_fac07( avec_len, lu ) lu(k,291) = lu(k,291) * lu(k,286) lu(k,292) = lu(k,292) * lu(k,286) lu(k,293) = lu(k,293) * lu(k,286) - lu(k,401) = lu(k,401) - lu(k,287) * lu(k,400) - lu(k,402) = - lu(k,288) * lu(k,400) - lu(k,403) = lu(k,403) - lu(k,289) * lu(k,400) - lu(k,406) = lu(k,406) - lu(k,290) * lu(k,400) - lu(k,407) = lu(k,407) - lu(k,291) * lu(k,400) - lu(k,408) = - lu(k,292) * lu(k,400) - lu(k,410) = - lu(k,293) * lu(k,400) - lu(k,1052) = lu(k,1052) - lu(k,287) * lu(k,1045) - lu(k,1061) = - lu(k,288) * lu(k,1045) - lu(k,1062) = lu(k,1062) - lu(k,289) * lu(k,1045) - lu(k,1080) = lu(k,1080) - lu(k,290) * lu(k,1045) - lu(k,1081) = lu(k,1081) - lu(k,291) * lu(k,1045) - lu(k,1088) = lu(k,1088) - lu(k,292) * lu(k,1045) - lu(k,1093) = lu(k,1093) - lu(k,293) * lu(k,1045) - lu(k,1371) = lu(k,1371) - lu(k,287) * lu(k,1360) - lu(k,1384) = lu(k,1384) - lu(k,288) * lu(k,1360) - lu(k,1386) = lu(k,1386) - lu(k,289) * lu(k,1360) - lu(k,1405) = lu(k,1405) - lu(k,290) * lu(k,1360) - lu(k,1406) = lu(k,1406) - lu(k,291) * lu(k,1360) - lu(k,1413) = lu(k,1413) - lu(k,292) * lu(k,1360) - lu(k,1418) = lu(k,1418) - lu(k,293) * lu(k,1360) + lu(k,411) = lu(k,411) - lu(k,287) * lu(k,410) + lu(k,412) = - lu(k,288) * lu(k,410) + lu(k,413) = lu(k,413) - lu(k,289) * lu(k,410) + lu(k,417) = - lu(k,290) * lu(k,410) + lu(k,418) = lu(k,418) - lu(k,291) * lu(k,410) + lu(k,419) = lu(k,419) - lu(k,292) * lu(k,410) + lu(k,420) = - lu(k,293) * lu(k,410) + lu(k,1224) = lu(k,1224) - lu(k,287) * lu(k,1212) + lu(k,1237) = lu(k,1237) - lu(k,288) * lu(k,1212) + lu(k,1239) = lu(k,1239) - lu(k,289) * lu(k,1212) + lu(k,1262) = lu(k,1262) - lu(k,290) * lu(k,1212) + lu(k,1266) = lu(k,1266) - lu(k,291) * lu(k,1212) + lu(k,1267) = lu(k,1267) - lu(k,292) * lu(k,1212) + lu(k,1271) = lu(k,1271) - lu(k,293) * lu(k,1212) + lu(k,1379) = lu(k,1379) - lu(k,287) * lu(k,1370) + lu(k,1387) = - lu(k,288) * lu(k,1370) + lu(k,1388) = lu(k,1388) - lu(k,289) * lu(k,1370) + lu(k,1410) = lu(k,1410) - lu(k,290) * lu(k,1370) + lu(k,1414) = lu(k,1414) - lu(k,291) * lu(k,1370) + lu(k,1415) = lu(k,1415) - lu(k,292) * lu(k,1370) + lu(k,1419) = lu(k,1419) - lu(k,293) * lu(k,1370) lu(k,294) = 1._r8 / lu(k,294) lu(k,295) = lu(k,295) * lu(k,294) lu(k,296) = lu(k,296) * lu(k,294) @@ -936,27 +935,27 @@ subroutine lu_fac07( avec_len, lu ) lu(k,299) = lu(k,299) * lu(k,294) lu(k,300) = lu(k,300) * lu(k,294) lu(k,301) = lu(k,301) * lu(k,294) - lu(k,926) = lu(k,926) - lu(k,295) * lu(k,925) - lu(k,930) = lu(k,930) - lu(k,296) * lu(k,925) - lu(k,932) = lu(k,932) - lu(k,297) * lu(k,925) - lu(k,934) = lu(k,934) - lu(k,298) * lu(k,925) - lu(k,938) = - lu(k,299) * lu(k,925) - lu(k,939) = - lu(k,300) * lu(k,925) - lu(k,943) = lu(k,943) - lu(k,301) * lu(k,925) - lu(k,980) = - lu(k,295) * lu(k,978) - lu(k,992) = - lu(k,296) * lu(k,978) - lu(k,994) = lu(k,994) - lu(k,297) * lu(k,978) - lu(k,996) = lu(k,996) - lu(k,298) * lu(k,978) - lu(k,1000) = lu(k,1000) - lu(k,299) * lu(k,978) - lu(k,1002) = lu(k,1002) - lu(k,300) * lu(k,978) - lu(k,1006) = lu(k,1006) - lu(k,301) * lu(k,978) - lu(k,1429) = lu(k,1429) - lu(k,295) * lu(k,1424) - lu(k,1445) = lu(k,1445) - lu(k,296) * lu(k,1424) - lu(k,1447) = lu(k,1447) - lu(k,297) * lu(k,1424) - lu(k,1449) = lu(k,1449) - lu(k,298) * lu(k,1424) - lu(k,1453) = - lu(k,299) * lu(k,1424) - lu(k,1455) = lu(k,1455) - lu(k,300) * lu(k,1424) - lu(k,1459) = lu(k,1459) - lu(k,301) * lu(k,1424) + lu(k,699) = lu(k,699) - lu(k,295) * lu(k,693) + lu(k,700) = lu(k,700) - lu(k,296) * lu(k,693) + lu(k,702) = lu(k,702) - lu(k,297) * lu(k,693) + lu(k,704) = lu(k,704) - lu(k,298) * lu(k,693) + lu(k,712) = lu(k,712) - lu(k,299) * lu(k,693) + lu(k,713) = lu(k,713) - lu(k,300) * lu(k,693) + lu(k,714) = lu(k,714) - lu(k,301) * lu(k,693) + lu(k,1241) = lu(k,1241) - lu(k,295) * lu(k,1213) + lu(k,1242) = lu(k,1242) - lu(k,296) * lu(k,1213) + lu(k,1244) = lu(k,1244) - lu(k,297) * lu(k,1213) + lu(k,1246) = lu(k,1246) - lu(k,298) * lu(k,1213) + lu(k,1262) = lu(k,1262) - lu(k,299) * lu(k,1213) + lu(k,1266) = lu(k,1266) - lu(k,300) * lu(k,1213) + lu(k,1267) = lu(k,1267) - lu(k,301) * lu(k,1213) + lu(k,1390) = lu(k,1390) - lu(k,295) * lu(k,1371) + lu(k,1391) = lu(k,1391) - lu(k,296) * lu(k,1371) + lu(k,1393) = lu(k,1393) - lu(k,297) * lu(k,1371) + lu(k,1395) = lu(k,1395) - lu(k,298) * lu(k,1371) + lu(k,1410) = lu(k,1410) - lu(k,299) * lu(k,1371) + lu(k,1414) = lu(k,1414) - lu(k,300) * lu(k,1371) + lu(k,1415) = lu(k,1415) - lu(k,301) * lu(k,1371) lu(k,302) = 1._r8 / lu(k,302) lu(k,303) = lu(k,303) * lu(k,302) lu(k,304) = lu(k,304) * lu(k,302) @@ -969,27 +968,27 @@ subroutine lu_fac07( avec_len, lu ) lu(k,763) = - lu(k,303) * lu(k,760) lu(k,765) = lu(k,765) - lu(k,304) * lu(k,760) lu(k,767) = lu(k,767) - lu(k,305) * lu(k,760) - lu(k,768) = lu(k,768) - lu(k,306) * lu(k,760) - lu(k,769) = lu(k,769) - lu(k,307) * lu(k,760) - lu(k,770) = lu(k,770) - lu(k,308) * lu(k,760) - lu(k,774) = lu(k,774) - lu(k,309) * lu(k,760) - lu(k,775) = lu(k,775) - lu(k,310) * lu(k,760) - lu(k,984) = - lu(k,303) * lu(k,979) - lu(k,987) = lu(k,987) - lu(k,304) * lu(k,979) - lu(k,989) = lu(k,989) - lu(k,305) * lu(k,979) - lu(k,996) = lu(k,996) - lu(k,306) * lu(k,979) - lu(k,997) = lu(k,997) - lu(k,307) * lu(k,979) - lu(k,998) = lu(k,998) - lu(k,308) * lu(k,979) - lu(k,1002) = lu(k,1002) - lu(k,309) * lu(k,979) - lu(k,1005) = lu(k,1005) - lu(k,310) * lu(k,979) - lu(k,1384) = lu(k,1384) - lu(k,303) * lu(k,1361) - lu(k,1394) = lu(k,1394) - lu(k,304) * lu(k,1361) - lu(k,1396) = lu(k,1396) - lu(k,305) * lu(k,1361) - lu(k,1404) = lu(k,1404) - lu(k,306) * lu(k,1361) - lu(k,1405) = lu(k,1405) - lu(k,307) * lu(k,1361) - lu(k,1406) = lu(k,1406) - lu(k,308) * lu(k,1361) - lu(k,1410) = lu(k,1410) - lu(k,309) * lu(k,1361) - lu(k,1413) = lu(k,1413) - lu(k,310) * lu(k,1361) + lu(k,769) = lu(k,769) - lu(k,306) * lu(k,760) + lu(k,770) = lu(k,770) - lu(k,307) * lu(k,760) + lu(k,772) = lu(k,772) - lu(k,308) * lu(k,760) + lu(k,773) = lu(k,773) - lu(k,309) * lu(k,760) + lu(k,774) = lu(k,774) - lu(k,310) * lu(k,760) + lu(k,1066) = - lu(k,303) * lu(k,1061) + lu(k,1069) = lu(k,1069) - lu(k,304) * lu(k,1061) + lu(k,1071) = lu(k,1071) - lu(k,305) * lu(k,1061) + lu(k,1078) = lu(k,1078) - lu(k,306) * lu(k,1061) + lu(k,1080) = lu(k,1080) - lu(k,307) * lu(k,1061) + lu(k,1083) = lu(k,1083) - lu(k,308) * lu(k,1061) + lu(k,1087) = lu(k,1087) - lu(k,309) * lu(k,1061) + lu(k,1088) = lu(k,1088) - lu(k,310) * lu(k,1061) + lu(k,1237) = lu(k,1237) - lu(k,303) * lu(k,1214) + lu(k,1247) = lu(k,1247) - lu(k,304) * lu(k,1214) + lu(k,1249) = lu(k,1249) - lu(k,305) * lu(k,1214) + lu(k,1257) = lu(k,1257) - lu(k,306) * lu(k,1214) + lu(k,1259) = lu(k,1259) - lu(k,307) * lu(k,1214) + lu(k,1262) = lu(k,1262) - lu(k,308) * lu(k,1214) + lu(k,1266) = lu(k,1266) - lu(k,309) * lu(k,1214) + lu(k,1267) = lu(k,1267) - lu(k,310) * lu(k,1214) lu(k,311) = 1._r8 / lu(k,311) lu(k,312) = lu(k,312) * lu(k,311) lu(k,313) = lu(k,313) * lu(k,311) @@ -997,30 +996,30 @@ subroutine lu_fac07( avec_len, lu ) lu(k,315) = lu(k,315) * lu(k,311) lu(k,316) = lu(k,316) * lu(k,311) lu(k,317) = lu(k,317) * lu(k,311) - lu(k,1074) = lu(k,1074) - lu(k,312) * lu(k,1046) - lu(k,1081) = lu(k,1081) - lu(k,313) * lu(k,1046) - lu(k,1087) = lu(k,1087) - lu(k,314) * lu(k,1046) - lu(k,1088) = lu(k,1088) - lu(k,315) * lu(k,1046) - lu(k,1089) = lu(k,1089) - lu(k,316) * lu(k,1046) - lu(k,1093) = lu(k,1093) - lu(k,317) * lu(k,1046) - lu(k,1310) = lu(k,1310) - lu(k,312) * lu(k,1298) - lu(k,1317) = lu(k,1317) - lu(k,313) * lu(k,1298) - lu(k,1323) = lu(k,1323) - lu(k,314) * lu(k,1298) - lu(k,1324) = lu(k,1324) - lu(k,315) * lu(k,1298) - lu(k,1325) = - lu(k,316) * lu(k,1298) - lu(k,1329) = lu(k,1329) - lu(k,317) * lu(k,1298) - lu(k,1399) = lu(k,1399) - lu(k,312) * lu(k,1362) - lu(k,1406) = lu(k,1406) - lu(k,313) * lu(k,1362) - lu(k,1412) = lu(k,1412) - lu(k,314) * lu(k,1362) - lu(k,1413) = lu(k,1413) - lu(k,315) * lu(k,1362) - lu(k,1414) = lu(k,1414) - lu(k,316) * lu(k,1362) - lu(k,1418) = lu(k,1418) - lu(k,317) * lu(k,1362) - lu(k,1444) = lu(k,1444) - lu(k,312) * lu(k,1425) - lu(k,1451) = lu(k,1451) - lu(k,313) * lu(k,1425) - lu(k,1457) = lu(k,1457) - lu(k,314) * lu(k,1425) - lu(k,1458) = lu(k,1458) - lu(k,315) * lu(k,1425) - lu(k,1459) = lu(k,1459) - lu(k,316) * lu(k,1425) - lu(k,1463) = - lu(k,317) * lu(k,1425) + lu(k,766) = lu(k,766) - lu(k,312) * lu(k,761) + lu(k,767) = lu(k,767) - lu(k,313) * lu(k,761) + lu(k,768) = lu(k,768) - lu(k,314) * lu(k,761) + lu(k,772) = lu(k,772) - lu(k,315) * lu(k,761) + lu(k,774) = lu(k,774) - lu(k,316) * lu(k,761) + lu(k,777) = - lu(k,317) * lu(k,761) + lu(k,793) = lu(k,793) - lu(k,312) * lu(k,780) + lu(k,794) = lu(k,794) - lu(k,313) * lu(k,780) + lu(k,797) = lu(k,797) - lu(k,314) * lu(k,780) + lu(k,801) = lu(k,801) - lu(k,315) * lu(k,780) + lu(k,803) = lu(k,803) - lu(k,316) * lu(k,780) + lu(k,806) = - lu(k,317) * lu(k,780) + lu(k,1248) = lu(k,1248) - lu(k,312) * lu(k,1215) + lu(k,1249) = lu(k,1249) - lu(k,313) * lu(k,1215) + lu(k,1256) = lu(k,1256) - lu(k,314) * lu(k,1215) + lu(k,1262) = lu(k,1262) - lu(k,315) * lu(k,1215) + lu(k,1267) = lu(k,1267) - lu(k,316) * lu(k,1215) + lu(k,1271) = lu(k,1271) - lu(k,317) * lu(k,1215) + lu(k,1397) = lu(k,1397) - lu(k,312) * lu(k,1372) + lu(k,1398) = lu(k,1398) - lu(k,313) * lu(k,1372) + lu(k,1404) = lu(k,1404) - lu(k,314) * lu(k,1372) + lu(k,1410) = lu(k,1410) - lu(k,315) * lu(k,1372) + lu(k,1415) = lu(k,1415) - lu(k,316) * lu(k,1372) + lu(k,1419) = lu(k,1419) - lu(k,317) * lu(k,1372) lu(k,318) = 1._r8 / lu(k,318) lu(k,319) = lu(k,319) * lu(k,318) lu(k,320) = lu(k,320) * lu(k,318) @@ -1028,30 +1027,30 @@ subroutine lu_fac07( avec_len, lu ) lu(k,322) = lu(k,322) * lu(k,318) lu(k,323) = lu(k,323) * lu(k,318) lu(k,324) = lu(k,324) * lu(k,318) - lu(k,766) = lu(k,766) - lu(k,319) * lu(k,761) - lu(k,767) = lu(k,767) - lu(k,320) * lu(k,761) - lu(k,769) = lu(k,769) - lu(k,321) * lu(k,761) - lu(k,773) = lu(k,773) - lu(k,322) * lu(k,761) - lu(k,775) = lu(k,775) - lu(k,323) * lu(k,761) - lu(k,777) = - lu(k,324) * lu(k,761) - lu(k,793) = lu(k,793) - lu(k,319) * lu(k,780) - lu(k,794) = lu(k,794) - lu(k,320) * lu(k,780) - lu(k,797) = lu(k,797) - lu(k,321) * lu(k,780) - lu(k,801) = lu(k,801) - lu(k,322) * lu(k,780) - lu(k,803) = lu(k,803) - lu(k,323) * lu(k,780) - lu(k,806) = - lu(k,324) * lu(k,780) - lu(k,1071) = lu(k,1071) - lu(k,319) * lu(k,1047) - lu(k,1072) = lu(k,1072) - lu(k,320) * lu(k,1047) - lu(k,1080) = lu(k,1080) - lu(k,321) * lu(k,1047) - lu(k,1084) = lu(k,1084) - lu(k,322) * lu(k,1047) - lu(k,1088) = lu(k,1088) - lu(k,323) * lu(k,1047) - lu(k,1093) = lu(k,1093) - lu(k,324) * lu(k,1047) - lu(k,1395) = lu(k,1395) - lu(k,319) * lu(k,1363) - lu(k,1396) = lu(k,1396) - lu(k,320) * lu(k,1363) - lu(k,1405) = lu(k,1405) - lu(k,321) * lu(k,1363) - lu(k,1409) = lu(k,1409) - lu(k,322) * lu(k,1363) - lu(k,1413) = lu(k,1413) - lu(k,323) * lu(k,1363) - lu(k,1418) = lu(k,1418) - lu(k,324) * lu(k,1363) + lu(k,1252) = lu(k,1252) - lu(k,319) * lu(k,1216) + lu(k,1262) = lu(k,1262) - lu(k,320) * lu(k,1216) + lu(k,1263) = lu(k,1263) - lu(k,321) * lu(k,1216) + lu(k,1266) = lu(k,1266) - lu(k,322) * lu(k,1216) + lu(k,1268) = lu(k,1268) - lu(k,323) * lu(k,1216) + lu(k,1271) = lu(k,1271) - lu(k,324) * lu(k,1216) + lu(k,1290) = lu(k,1290) - lu(k,319) * lu(k,1278) + lu(k,1300) = lu(k,1300) - lu(k,320) * lu(k,1278) + lu(k,1301) = lu(k,1301) - lu(k,321) * lu(k,1278) + lu(k,1304) = lu(k,1304) - lu(k,322) * lu(k,1278) + lu(k,1306) = - lu(k,323) * lu(k,1278) + lu(k,1309) = lu(k,1309) - lu(k,324) * lu(k,1278) + lu(k,1400) = lu(k,1400) - lu(k,319) * lu(k,1373) + lu(k,1410) = lu(k,1410) - lu(k,320) * lu(k,1373) + lu(k,1411) = lu(k,1411) - lu(k,321) * lu(k,1373) + lu(k,1414) = lu(k,1414) - lu(k,322) * lu(k,1373) + lu(k,1416) = lu(k,1416) - lu(k,323) * lu(k,1373) + lu(k,1419) = lu(k,1419) - lu(k,324) * lu(k,1373) + lu(k,1469) = lu(k,1469) - lu(k,319) * lu(k,1450) + lu(k,1479) = lu(k,1479) - lu(k,320) * lu(k,1450) + lu(k,1480) = lu(k,1480) - lu(k,321) * lu(k,1450) + lu(k,1483) = lu(k,1483) - lu(k,322) * lu(k,1450) + lu(k,1485) = lu(k,1485) - lu(k,323) * lu(k,1450) + lu(k,1488) = - lu(k,324) * lu(k,1450) end do end subroutine lu_fac07 subroutine lu_fac08( avec_len, lu ) @@ -1077,30 +1076,30 @@ subroutine lu_fac08( avec_len, lu ) lu(k,331) = lu(k,331) * lu(k,325) lu(k,332) = lu(k,332) * lu(k,325) lu(k,333) = lu(k,333) * lu(k,325) - lu(k,1272) = lu(k,1272) - lu(k,326) * lu(k,1268) - lu(k,1273) = lu(k,1273) - lu(k,327) * lu(k,1268) - lu(k,1279) = lu(k,1279) - lu(k,328) * lu(k,1268) - lu(k,1282) = lu(k,1282) - lu(k,329) * lu(k,1268) - lu(k,1284) = lu(k,1284) - lu(k,330) * lu(k,1268) - lu(k,1285) = lu(k,1285) - lu(k,331) * lu(k,1268) - lu(k,1286) = lu(k,1286) - lu(k,332) * lu(k,1268) - lu(k,1291) = lu(k,1291) - lu(k,333) * lu(k,1268) - lu(k,1310) = lu(k,1310) - lu(k,326) * lu(k,1299) - lu(k,1311) = lu(k,1311) - lu(k,327) * lu(k,1299) - lu(k,1317) = lu(k,1317) - lu(k,328) * lu(k,1299) - lu(k,1320) = lu(k,1320) - lu(k,329) * lu(k,1299) - lu(k,1322) = lu(k,1322) - lu(k,330) * lu(k,1299) - lu(k,1323) = lu(k,1323) - lu(k,331) * lu(k,1299) - lu(k,1324) = lu(k,1324) - lu(k,332) * lu(k,1299) - lu(k,1329) = lu(k,1329) - lu(k,333) * lu(k,1299) - lu(k,1399) = lu(k,1399) - lu(k,326) * lu(k,1364) - lu(k,1400) = lu(k,1400) - lu(k,327) * lu(k,1364) - lu(k,1406) = lu(k,1406) - lu(k,328) * lu(k,1364) - lu(k,1409) = lu(k,1409) - lu(k,329) * lu(k,1364) - lu(k,1411) = lu(k,1411) - lu(k,330) * lu(k,1364) - lu(k,1412) = lu(k,1412) - lu(k,331) * lu(k,1364) - lu(k,1413) = lu(k,1413) - lu(k,332) * lu(k,1364) - lu(k,1418) = lu(k,1418) - lu(k,333) * lu(k,1364) + lu(k,1163) = lu(k,1163) - lu(k,326) * lu(k,1159) + lu(k,1164) = lu(k,1164) - lu(k,327) * lu(k,1159) + lu(k,1167) = lu(k,1167) - lu(k,328) * lu(k,1159) + lu(k,1172) = lu(k,1172) - lu(k,329) * lu(k,1159) + lu(k,1173) = lu(k,1173) - lu(k,330) * lu(k,1159) + lu(k,1174) = lu(k,1174) - lu(k,331) * lu(k,1159) + lu(k,1177) = lu(k,1177) - lu(k,332) * lu(k,1159) + lu(k,1182) = lu(k,1182) - lu(k,333) * lu(k,1159) + lu(k,1252) = lu(k,1252) - lu(k,326) * lu(k,1217) + lu(k,1253) = lu(k,1253) - lu(k,327) * lu(k,1217) + lu(k,1256) = lu(k,1256) - lu(k,328) * lu(k,1217) + lu(k,1261) = lu(k,1261) - lu(k,329) * lu(k,1217) + lu(k,1262) = lu(k,1262) - lu(k,330) * lu(k,1217) + lu(k,1263) = lu(k,1263) - lu(k,331) * lu(k,1217) + lu(k,1266) = lu(k,1266) - lu(k,332) * lu(k,1217) + lu(k,1271) = lu(k,1271) - lu(k,333) * lu(k,1217) + lu(k,1290) = lu(k,1290) - lu(k,326) * lu(k,1279) + lu(k,1291) = lu(k,1291) - lu(k,327) * lu(k,1279) + lu(k,1294) = lu(k,1294) - lu(k,328) * lu(k,1279) + lu(k,1299) = lu(k,1299) - lu(k,329) * lu(k,1279) + lu(k,1300) = lu(k,1300) - lu(k,330) * lu(k,1279) + lu(k,1301) = lu(k,1301) - lu(k,331) * lu(k,1279) + lu(k,1304) = lu(k,1304) - lu(k,332) * lu(k,1279) + lu(k,1309) = lu(k,1309) - lu(k,333) * lu(k,1279) lu(k,334) = 1._r8 / lu(k,334) lu(k,335) = lu(k,335) * lu(k,334) lu(k,336) = lu(k,336) * lu(k,334) @@ -1117,7 +1116,7 @@ subroutine lu_fac08( avec_len, lu ) lu(k,527) = lu(k,527) - lu(k,339) * lu(k,521) lu(k,528) = lu(k,528) - lu(k,340) * lu(k,521) lu(k,531) = lu(k,531) - lu(k,341) * lu(k,521) - lu(k,533) = lu(k,533) - lu(k,342) * lu(k,521) + lu(k,534) = lu(k,534) - lu(k,342) * lu(k,521) lu(k,896) = lu(k,896) - lu(k,335) * lu(k,894) lu(k,898) = lu(k,898) - lu(k,336) * lu(k,894) lu(k,899) = lu(k,899) - lu(k,337) * lu(k,894) @@ -1125,15 +1124,15 @@ subroutine lu_fac08( avec_len, lu ) lu(k,901) = lu(k,901) - lu(k,339) * lu(k,894) lu(k,903) = lu(k,903) - lu(k,340) * lu(k,894) lu(k,909) = lu(k,909) - lu(k,341) * lu(k,894) - lu(k,919) = lu(k,919) - lu(k,342) * lu(k,894) - lu(k,1428) = lu(k,1428) - lu(k,335) * lu(k,1426) - lu(k,1433) = lu(k,1433) - lu(k,336) * lu(k,1426) - lu(k,1434) = lu(k,1434) - lu(k,337) * lu(k,1426) - lu(k,1435) = lu(k,1435) - lu(k,338) * lu(k,1426) - lu(k,1436) = lu(k,1436) - lu(k,339) * lu(k,1426) - lu(k,1438) = lu(k,1438) - lu(k,340) * lu(k,1426) - lu(k,1446) = lu(k,1446) - lu(k,341) * lu(k,1426) - lu(k,1459) = lu(k,1459) - lu(k,342) * lu(k,1426) + lu(k,920) = lu(k,920) - lu(k,342) * lu(k,894) + lu(k,1453) = lu(k,1453) - lu(k,335) * lu(k,1451) + lu(k,1458) = lu(k,1458) - lu(k,336) * lu(k,1451) + lu(k,1459) = lu(k,1459) - lu(k,337) * lu(k,1451) + lu(k,1460) = lu(k,1460) - lu(k,338) * lu(k,1451) + lu(k,1461) = lu(k,1461) - lu(k,339) * lu(k,1451) + lu(k,1464) = lu(k,1464) - lu(k,340) * lu(k,1451) + lu(k,1471) = lu(k,1471) - lu(k,341) * lu(k,1451) + lu(k,1485) = lu(k,1485) - lu(k,342) * lu(k,1451) lu(k,343) = 1._r8 / lu(k,343) lu(k,344) = lu(k,344) * lu(k,343) lu(k,345) = lu(k,345) * lu(k,343) @@ -1144,66 +1143,66 @@ subroutine lu_fac08( avec_len, lu ) lu(k,350) = lu(k,350) * lu(k,343) lu(k,351) = lu(k,351) * lu(k,343) lu(k,352) = lu(k,352) * lu(k,343) - lu(k,1101) = - lu(k,344) * lu(k,1097) - lu(k,1111) = lu(k,1111) - lu(k,345) * lu(k,1097) - lu(k,1114) = - lu(k,346) * lu(k,1097) - lu(k,1116) = lu(k,1116) - lu(k,347) * lu(k,1097) - lu(k,1125) = lu(k,1125) - lu(k,348) * lu(k,1097) - lu(k,1128) = lu(k,1128) - lu(k,349) * lu(k,1097) - lu(k,1131) = lu(k,1131) - lu(k,350) * lu(k,1097) - lu(k,1134) = lu(k,1134) - lu(k,351) * lu(k,1097) - lu(k,1135) = lu(k,1135) - lu(k,352) * lu(k,1097) - lu(k,1210) = - lu(k,344) * lu(k,1208) - lu(k,1221) = lu(k,1221) - lu(k,345) * lu(k,1208) - lu(k,1224) = lu(k,1224) - lu(k,346) * lu(k,1208) - lu(k,1226) = lu(k,1226) - lu(k,347) * lu(k,1208) - lu(k,1235) = lu(k,1235) - lu(k,348) * lu(k,1208) - lu(k,1238) = - lu(k,349) * lu(k,1208) - lu(k,1241) = lu(k,1241) - lu(k,350) * lu(k,1208) - lu(k,1244) = lu(k,1244) - lu(k,351) * lu(k,1208) - lu(k,1245) = lu(k,1245) - lu(k,352) * lu(k,1208) - lu(k,1370) = lu(k,1370) - lu(k,344) * lu(k,1365) - lu(k,1388) = lu(k,1388) - lu(k,345) * lu(k,1365) - lu(k,1391) = lu(k,1391) - lu(k,346) * lu(k,1365) - lu(k,1393) = lu(k,1393) - lu(k,347) * lu(k,1365) - lu(k,1404) = lu(k,1404) - lu(k,348) * lu(k,1365) - lu(k,1407) = lu(k,1407) - lu(k,349) * lu(k,1365) - lu(k,1410) = lu(k,1410) - lu(k,350) * lu(k,1365) - lu(k,1413) = lu(k,1413) - lu(k,351) * lu(k,1365) - lu(k,1414) = lu(k,1414) - lu(k,352) * lu(k,1365) + lu(k,995) = - lu(k,344) * lu(k,993) + lu(k,1006) = lu(k,1006) - lu(k,345) * lu(k,993) + lu(k,1009) = lu(k,1009) - lu(k,346) * lu(k,993) + lu(k,1011) = lu(k,1011) - lu(k,347) * lu(k,993) + lu(k,1020) = lu(k,1020) - lu(k,348) * lu(k,993) + lu(k,1022) = lu(k,1022) - lu(k,349) * lu(k,993) + lu(k,1025) = lu(k,1025) - lu(k,350) * lu(k,993) + lu(k,1031) = lu(k,1031) - lu(k,351) * lu(k,993) + lu(k,1033) = - lu(k,352) * lu(k,993) + lu(k,1222) = lu(k,1222) - lu(k,344) * lu(k,1218) + lu(k,1241) = lu(k,1241) - lu(k,345) * lu(k,1218) + lu(k,1244) = lu(k,1244) - lu(k,346) * lu(k,1218) + lu(k,1246) = lu(k,1246) - lu(k,347) * lu(k,1218) + lu(k,1257) = lu(k,1257) - lu(k,348) * lu(k,1218) + lu(k,1259) = lu(k,1259) - lu(k,349) * lu(k,1218) + lu(k,1262) = lu(k,1262) - lu(k,350) * lu(k,1218) + lu(k,1268) = lu(k,1268) - lu(k,351) * lu(k,1218) + lu(k,1270) = lu(k,1270) - lu(k,352) * lu(k,1218) + lu(k,1518) = - lu(k,344) * lu(k,1515) + lu(k,1529) = lu(k,1529) - lu(k,345) * lu(k,1515) + lu(k,1532) = - lu(k,346) * lu(k,1515) + lu(k,1534) = lu(k,1534) - lu(k,347) * lu(k,1515) + lu(k,1543) = lu(k,1543) - lu(k,348) * lu(k,1515) + lu(k,1545) = lu(k,1545) - lu(k,349) * lu(k,1515) + lu(k,1548) = lu(k,1548) - lu(k,350) * lu(k,1515) + lu(k,1554) = lu(k,1554) - lu(k,351) * lu(k,1515) + lu(k,1556) = lu(k,1556) - lu(k,352) * lu(k,1515) lu(k,353) = 1._r8 / lu(k,353) lu(k,354) = lu(k,354) * lu(k,353) lu(k,355) = lu(k,355) * lu(k,353) lu(k,356) = lu(k,356) * lu(k,353) lu(k,357) = lu(k,357) * lu(k,353) lu(k,628) = lu(k,628) - lu(k,354) * lu(k,620) - lu(k,634) = lu(k,634) - lu(k,355) * lu(k,620) - lu(k,636) = lu(k,636) - lu(k,356) * lu(k,620) + lu(k,631) = lu(k,631) - lu(k,355) * lu(k,620) + lu(k,635) = lu(k,635) - lu(k,356) * lu(k,620) lu(k,639) = - lu(k,357) * lu(k,620) lu(k,767) = lu(k,767) - lu(k,354) * lu(k,762) - lu(k,773) = lu(k,773) - lu(k,355) * lu(k,762) - lu(k,775) = lu(k,775) - lu(k,356) * lu(k,762) + lu(k,768) = lu(k,768) - lu(k,355) * lu(k,762) + lu(k,772) = lu(k,772) - lu(k,356) * lu(k,762) lu(k,777) = lu(k,777) - lu(k,357) * lu(k,762) lu(k,794) = lu(k,794) - lu(k,354) * lu(k,781) - lu(k,801) = lu(k,801) - lu(k,355) * lu(k,781) - lu(k,803) = lu(k,803) - lu(k,356) * lu(k,781) + lu(k,797) = lu(k,797) - lu(k,355) * lu(k,781) + lu(k,801) = lu(k,801) - lu(k,356) * lu(k,781) lu(k,806) = lu(k,806) - lu(k,357) * lu(k,781) - lu(k,1072) = lu(k,1072) - lu(k,354) * lu(k,1048) - lu(k,1084) = lu(k,1084) - lu(k,355) * lu(k,1048) - lu(k,1088) = lu(k,1088) - lu(k,356) * lu(k,1048) - lu(k,1093) = lu(k,1093) - lu(k,357) * lu(k,1048) - lu(k,1119) = lu(k,1119) - lu(k,354) * lu(k,1098) - lu(k,1130) = lu(k,1130) - lu(k,355) * lu(k,1098) - lu(k,1134) = lu(k,1134) - lu(k,356) * lu(k,1098) - lu(k,1139) = - lu(k,357) * lu(k,1098) - lu(k,1185) = lu(k,1185) - lu(k,354) * lu(k,1167) - lu(k,1194) = lu(k,1194) - lu(k,355) * lu(k,1167) - lu(k,1198) = lu(k,1198) - lu(k,356) * lu(k,1167) - lu(k,1203) = lu(k,1203) - lu(k,357) * lu(k,1167) - lu(k,1396) = lu(k,1396) - lu(k,354) * lu(k,1366) - lu(k,1409) = lu(k,1409) - lu(k,355) * lu(k,1366) - lu(k,1413) = lu(k,1413) - lu(k,356) * lu(k,1366) - lu(k,1418) = lu(k,1418) - lu(k,357) * lu(k,1366) + lu(k,970) = lu(k,970) - lu(k,354) * lu(k,952) + lu(k,973) = lu(k,973) - lu(k,355) * lu(k,952) + lu(k,979) = lu(k,979) - lu(k,356) * lu(k,952) + lu(k,988) = lu(k,988) - lu(k,357) * lu(k,952) + lu(k,1249) = lu(k,1249) - lu(k,354) * lu(k,1219) + lu(k,1256) = lu(k,1256) - lu(k,355) * lu(k,1219) + lu(k,1262) = lu(k,1262) - lu(k,356) * lu(k,1219) + lu(k,1271) = lu(k,1271) - lu(k,357) * lu(k,1219) + lu(k,1398) = lu(k,1398) - lu(k,354) * lu(k,1374) + lu(k,1404) = lu(k,1404) - lu(k,355) * lu(k,1374) + lu(k,1410) = lu(k,1410) - lu(k,356) * lu(k,1374) + lu(k,1419) = lu(k,1419) - lu(k,357) * lu(k,1374) + lu(k,1537) = lu(k,1537) - lu(k,354) * lu(k,1516) + lu(k,1542) = lu(k,1542) - lu(k,355) * lu(k,1516) + lu(k,1548) = lu(k,1548) - lu(k,356) * lu(k,1516) + lu(k,1557) = - lu(k,357) * lu(k,1516) lu(k,358) = 1._r8 / lu(k,358) lu(k,359) = lu(k,359) * lu(k,358) lu(k,360) = lu(k,360) * lu(k,358) @@ -1213,71 +1212,71 @@ subroutine lu_fac08( avec_len, lu ) lu(k,364) = lu(k,364) * lu(k,358) lu(k,841) = lu(k,841) - lu(k,359) * lu(k,839) lu(k,843) = lu(k,843) - lu(k,360) * lu(k,839) - lu(k,848) = lu(k,848) - lu(k,361) * lu(k,839) - lu(k,850) = lu(k,850) - lu(k,362) * lu(k,839) - lu(k,851) = lu(k,851) - lu(k,363) * lu(k,839) + lu(k,844) = lu(k,844) - lu(k,361) * lu(k,839) + lu(k,847) = lu(k,847) - lu(k,362) * lu(k,839) + lu(k,852) = lu(k,852) - lu(k,363) * lu(k,839) lu(k,853) = lu(k,853) - lu(k,364) * lu(k,839) lu(k,907) = lu(k,907) - lu(k,359) * lu(k,895) lu(k,909) = lu(k,909) - lu(k,360) * lu(k,895) - lu(k,915) = lu(k,915) - lu(k,361) * lu(k,895) - lu(k,918) = - lu(k,362) * lu(k,895) - lu(k,919) = lu(k,919) - lu(k,363) * lu(k,895) + lu(k,910) = lu(k,910) - lu(k,361) * lu(k,895) + lu(k,914) = - lu(k,362) * lu(k,895) + lu(k,920) = lu(k,920) - lu(k,363) * lu(k,895) lu(k,921) = lu(k,921) - lu(k,364) * lu(k,895) - lu(k,1120) = lu(k,1120) - lu(k,359) * lu(k,1099) - lu(k,1122) = lu(k,1122) - lu(k,360) * lu(k,1099) - lu(k,1128) = lu(k,1128) - lu(k,361) * lu(k,1099) - lu(k,1134) = lu(k,1134) - lu(k,362) * lu(k,1099) - lu(k,1135) = lu(k,1135) - lu(k,363) * lu(k,1099) - lu(k,1138) = lu(k,1138) - lu(k,364) * lu(k,1099) - lu(k,1398) = lu(k,1398) - lu(k,359) * lu(k,1367) - lu(k,1401) = lu(k,1401) - lu(k,360) * lu(k,1367) - lu(k,1407) = lu(k,1407) - lu(k,361) * lu(k,1367) - lu(k,1413) = lu(k,1413) - lu(k,362) * lu(k,1367) - lu(k,1414) = lu(k,1414) - lu(k,363) * lu(k,1367) - lu(k,1417) = lu(k,1417) - lu(k,364) * lu(k,1367) - lu(k,1443) = lu(k,1443) - lu(k,359) * lu(k,1427) - lu(k,1446) = lu(k,1446) - lu(k,360) * lu(k,1427) - lu(k,1452) = lu(k,1452) - lu(k,361) * lu(k,1427) - lu(k,1458) = lu(k,1458) - lu(k,362) * lu(k,1427) - lu(k,1459) = lu(k,1459) - lu(k,363) * lu(k,1427) - lu(k,1462) = lu(k,1462) - lu(k,364) * lu(k,1427) + lu(k,1251) = lu(k,1251) - lu(k,359) * lu(k,1220) + lu(k,1254) = lu(k,1254) - lu(k,360) * lu(k,1220) + lu(k,1258) = lu(k,1258) - lu(k,361) * lu(k,1220) + lu(k,1262) = lu(k,1262) - lu(k,362) * lu(k,1220) + lu(k,1268) = lu(k,1268) - lu(k,363) * lu(k,1220) + lu(k,1270) = lu(k,1270) - lu(k,364) * lu(k,1220) + lu(k,1468) = lu(k,1468) - lu(k,359) * lu(k,1452) + lu(k,1471) = lu(k,1471) - lu(k,360) * lu(k,1452) + lu(k,1475) = lu(k,1475) - lu(k,361) * lu(k,1452) + lu(k,1479) = lu(k,1479) - lu(k,362) * lu(k,1452) + lu(k,1485) = lu(k,1485) - lu(k,363) * lu(k,1452) + lu(k,1487) = lu(k,1487) - lu(k,364) * lu(k,1452) + lu(k,1538) = lu(k,1538) - lu(k,359) * lu(k,1517) + lu(k,1540) = lu(k,1540) - lu(k,360) * lu(k,1517) + lu(k,1544) = lu(k,1544) - lu(k,361) * lu(k,1517) + lu(k,1548) = lu(k,1548) - lu(k,362) * lu(k,1517) + lu(k,1554) = lu(k,1554) - lu(k,363) * lu(k,1517) + lu(k,1556) = lu(k,1556) - lu(k,364) * lu(k,1517) lu(k,365) = 1._r8 / lu(k,365) lu(k,366) = lu(k,366) * lu(k,365) lu(k,367) = lu(k,367) * lu(k,365) lu(k,368) = lu(k,368) * lu(k,365) lu(k,369) = lu(k,369) * lu(k,365) - lu(k,608) = lu(k,608) - lu(k,366) * lu(k,606) - lu(k,609) = lu(k,609) - lu(k,367) * lu(k,606) - lu(k,611) = lu(k,611) - lu(k,368) * lu(k,606) - lu(k,612) = lu(k,612) - lu(k,369) * lu(k,606) + lu(k,595) = lu(k,595) - lu(k,366) * lu(k,593) + lu(k,596) = lu(k,596) - lu(k,367) * lu(k,593) + lu(k,597) = lu(k,597) - lu(k,368) * lu(k,593) + lu(k,598) = lu(k,598) - lu(k,369) * lu(k,593) lu(k,670) = lu(k,670) - lu(k,366) * lu(k,667) lu(k,674) = lu(k,674) - lu(k,367) * lu(k,667) - lu(k,677) = lu(k,677) - lu(k,368) * lu(k,667) + lu(k,679) = lu(k,679) - lu(k,368) * lu(k,667) lu(k,680) = lu(k,680) - lu(k,369) * lu(k,667) lu(k,698) = - lu(k,366) * lu(k,694) lu(k,707) = - lu(k,367) * lu(k,694) - lu(k,710) = lu(k,710) - lu(k,368) * lu(k,694) - lu(k,715) = lu(k,715) - lu(k,369) * lu(k,694) + lu(k,712) = lu(k,712) - lu(k,368) * lu(k,694) + lu(k,713) = lu(k,713) - lu(k,369) * lu(k,694) lu(k,785) = lu(k,785) - lu(k,366) * lu(k,782) lu(k,794) = lu(k,794) - lu(k,367) * lu(k,782) - lu(k,798) = lu(k,798) - lu(k,368) * lu(k,782) - lu(k,803) = lu(k,803) - lu(k,369) * lu(k,782) - lu(k,1176) = lu(k,1176) - lu(k,366) * lu(k,1168) - lu(k,1185) = lu(k,1185) - lu(k,367) * lu(k,1168) - lu(k,1191) = lu(k,1191) - lu(k,368) * lu(k,1168) - lu(k,1198) = lu(k,1198) - lu(k,369) * lu(k,1168) - lu(k,1220) = lu(k,1220) - lu(k,366) * lu(k,1209) - lu(k,1229) = - lu(k,367) * lu(k,1209) - lu(k,1237) = lu(k,1237) - lu(k,368) * lu(k,1209) - lu(k,1244) = lu(k,1244) - lu(k,369) * lu(k,1209) - lu(k,1387) = lu(k,1387) - lu(k,366) * lu(k,1368) - lu(k,1396) = lu(k,1396) - lu(k,367) * lu(k,1368) - lu(k,1406) = lu(k,1406) - lu(k,368) * lu(k,1368) - lu(k,1413) = lu(k,1413) - lu(k,369) * lu(k,1368) - lu(k,1483) = lu(k,1483) - lu(k,366) * lu(k,1466) - lu(k,1492) = lu(k,1492) - lu(k,367) * lu(k,1466) - lu(k,1499) = lu(k,1499) - lu(k,368) * lu(k,1466) - lu(k,1506) = lu(k,1506) - lu(k,369) * lu(k,1466) + lu(k,801) = lu(k,801) - lu(k,368) * lu(k,782) + lu(k,802) = lu(k,802) - lu(k,369) * lu(k,782) + lu(k,961) = lu(k,961) - lu(k,366) * lu(k,953) + lu(k,970) = lu(k,970) - lu(k,367) * lu(k,953) + lu(k,979) = lu(k,979) - lu(k,368) * lu(k,953) + lu(k,983) = lu(k,983) - lu(k,369) * lu(k,953) + lu(k,1005) = lu(k,1005) - lu(k,366) * lu(k,994) + lu(k,1014) = - lu(k,367) * lu(k,994) + lu(k,1025) = lu(k,1025) - lu(k,368) * lu(k,994) + lu(k,1029) = lu(k,1029) - lu(k,369) * lu(k,994) + lu(k,1112) = lu(k,1112) - lu(k,366) * lu(k,1095) + lu(k,1121) = lu(k,1121) - lu(k,367) * lu(k,1095) + lu(k,1131) = lu(k,1131) - lu(k,368) * lu(k,1095) + lu(k,1135) = lu(k,1135) - lu(k,369) * lu(k,1095) + lu(k,1240) = lu(k,1240) - lu(k,366) * lu(k,1221) + lu(k,1249) = lu(k,1249) - lu(k,367) * lu(k,1221) + lu(k,1262) = lu(k,1262) - lu(k,368) * lu(k,1221) + lu(k,1266) = lu(k,1266) - lu(k,369) * lu(k,1221) end do end subroutine lu_fac08 subroutine lu_fac09( avec_len, lu ) @@ -1310,200 +1309,200 @@ subroutine lu_fac09( avec_len, lu ) lu(k,512) = lu(k,512) - lu(k,371) * lu(k,510) lu(k,513) = - lu(k,372) * lu(k,510) lu(k,514) = lu(k,514) - lu(k,373) * lu(k,510) - lu(k,517) = lu(k,517) - lu(k,374) * lu(k,510) + lu(k,518) = lu(k,518) - lu(k,374) * lu(k,510) lu(k,526) = lu(k,526) - lu(k,371) * lu(k,522) lu(k,527) = lu(k,527) - lu(k,372) * lu(k,522) lu(k,528) = lu(k,528) - lu(k,373) * lu(k,522) - lu(k,533) = lu(k,533) - lu(k,374) * lu(k,522) - lu(k,559) = lu(k,559) - lu(k,371) * lu(k,555) - lu(k,560) = - lu(k,372) * lu(k,555) - lu(k,561) = lu(k,561) - lu(k,373) * lu(k,555) - lu(k,568) = lu(k,568) - lu(k,374) * lu(k,555) + lu(k,534) = lu(k,534) - lu(k,374) * lu(k,522) + lu(k,571) = lu(k,571) - lu(k,371) * lu(k,567) + lu(k,572) = - lu(k,372) * lu(k,567) + lu(k,573) = lu(k,573) - lu(k,373) * lu(k,567) + lu(k,582) = lu(k,582) - lu(k,374) * lu(k,567) lu(k,900) = lu(k,900) - lu(k,371) * lu(k,896) lu(k,901) = lu(k,901) - lu(k,372) * lu(k,896) lu(k,903) = lu(k,903) - lu(k,373) * lu(k,896) - lu(k,919) = lu(k,919) - lu(k,374) * lu(k,896) - lu(k,1435) = lu(k,1435) - lu(k,371) * lu(k,1428) - lu(k,1436) = lu(k,1436) - lu(k,372) * lu(k,1428) - lu(k,1438) = lu(k,1438) - lu(k,373) * lu(k,1428) - lu(k,1459) = lu(k,1459) - lu(k,374) * lu(k,1428) - lu(k,1475) = lu(k,1475) - lu(k,371) * lu(k,1467) - lu(k,1476) = lu(k,1476) - lu(k,372) * lu(k,1467) - lu(k,1477) = lu(k,1477) - lu(k,373) * lu(k,1467) - lu(k,1507) = lu(k,1507) - lu(k,374) * lu(k,1467) - lu(k,377) = 1._r8 / lu(k,377) - lu(k,378) = lu(k,378) * lu(k,377) - lu(k,379) = lu(k,379) * lu(k,377) - lu(k,380) = lu(k,380) * lu(k,377) - lu(k,381) = lu(k,381) * lu(k,377) - lu(k,382) = lu(k,382) * lu(k,377) - lu(k,383) = lu(k,383) * lu(k,377) - lu(k,384) = lu(k,384) * lu(k,377) - lu(k,1060) = lu(k,1060) - lu(k,378) * lu(k,1049) - lu(k,1076) = lu(k,1076) - lu(k,379) * lu(k,1049) - lu(k,1079) = lu(k,1079) - lu(k,380) * lu(k,1049) - lu(k,1080) = lu(k,1080) - lu(k,381) * lu(k,1049) - lu(k,1081) = lu(k,1081) - lu(k,382) * lu(k,1049) - lu(k,1088) = lu(k,1088) - lu(k,383) * lu(k,1049) - lu(k,1090) = lu(k,1090) - lu(k,384) * lu(k,1049) - lu(k,1106) = - lu(k,378) * lu(k,1100) - lu(k,1122) = lu(k,1122) - lu(k,379) * lu(k,1100) - lu(k,1125) = lu(k,1125) - lu(k,380) * lu(k,1100) - lu(k,1126) = lu(k,1126) - lu(k,381) * lu(k,1100) - lu(k,1127) = lu(k,1127) - lu(k,382) * lu(k,1100) - lu(k,1134) = lu(k,1134) - lu(k,383) * lu(k,1100) - lu(k,1136) = lu(k,1136) - lu(k,384) * lu(k,1100) - lu(k,1304) = - lu(k,378) * lu(k,1300) - lu(k,1312) = lu(k,1312) - lu(k,379) * lu(k,1300) - lu(k,1315) = - lu(k,380) * lu(k,1300) - lu(k,1316) = lu(k,1316) - lu(k,381) * lu(k,1300) - lu(k,1317) = lu(k,1317) - lu(k,382) * lu(k,1300) - lu(k,1324) = lu(k,1324) - lu(k,383) * lu(k,1300) - lu(k,1326) = - lu(k,384) * lu(k,1300) - lu(k,1383) = lu(k,1383) - lu(k,378) * lu(k,1369) - lu(k,1401) = lu(k,1401) - lu(k,379) * lu(k,1369) - lu(k,1404) = lu(k,1404) - lu(k,380) * lu(k,1369) - lu(k,1405) = lu(k,1405) - lu(k,381) * lu(k,1369) - lu(k,1406) = lu(k,1406) - lu(k,382) * lu(k,1369) - lu(k,1413) = lu(k,1413) - lu(k,383) * lu(k,1369) - lu(k,1415) = lu(k,1415) - lu(k,384) * lu(k,1369) - lu(k,1480) = lu(k,1480) - lu(k,378) * lu(k,1468) - lu(k,1494) = lu(k,1494) - lu(k,379) * lu(k,1468) - lu(k,1497) = lu(k,1497) - lu(k,380) * lu(k,1468) - lu(k,1498) = lu(k,1498) - lu(k,381) * lu(k,1468) - lu(k,1499) = lu(k,1499) - lu(k,382) * lu(k,1468) - lu(k,1506) = lu(k,1506) - lu(k,383) * lu(k,1468) - lu(k,1508) = lu(k,1508) - lu(k,384) * lu(k,1468) - lu(k,386) = 1._r8 / lu(k,386) - lu(k,387) = lu(k,387) * lu(k,386) - lu(k,388) = lu(k,388) * lu(k,386) - lu(k,389) = lu(k,389) * lu(k,386) - lu(k,390) = lu(k,390) * lu(k,386) - lu(k,391) = lu(k,391) * lu(k,386) - lu(k,392) = lu(k,392) * lu(k,386) - lu(k,393) = lu(k,393) * lu(k,386) - lu(k,860) = lu(k,860) - lu(k,387) * lu(k,857) - lu(k,861) = lu(k,861) - lu(k,388) * lu(k,857) - lu(k,862) = - lu(k,389) * lu(k,857) - lu(k,868) = lu(k,868) - lu(k,390) * lu(k,857) - lu(k,869) = lu(k,869) - lu(k,391) * lu(k,857) - lu(k,870) = lu(k,870) - lu(k,392) * lu(k,857) - lu(k,872) = lu(k,872) - lu(k,393) * lu(k,857) - lu(k,929) = - lu(k,387) * lu(k,926) - lu(k,930) = lu(k,930) - lu(k,388) * lu(k,926) - lu(k,932) = lu(k,932) - lu(k,389) * lu(k,926) - lu(k,941) = lu(k,941) - lu(k,390) * lu(k,926) - lu(k,942) = lu(k,942) - lu(k,391) * lu(k,926) - lu(k,943) = lu(k,943) - lu(k,392) * lu(k,926) - lu(k,946) = - lu(k,393) * lu(k,926) - lu(k,991) = - lu(k,387) * lu(k,980) - lu(k,992) = lu(k,992) - lu(k,388) * lu(k,980) - lu(k,994) = lu(k,994) - lu(k,389) * lu(k,980) - lu(k,1004) = - lu(k,390) * lu(k,980) - lu(k,1005) = lu(k,1005) - lu(k,391) * lu(k,980) - lu(k,1006) = lu(k,1006) - lu(k,392) * lu(k,980) - lu(k,1010) = lu(k,1010) - lu(k,393) * lu(k,980) - lu(k,1074) = lu(k,1074) - lu(k,387) * lu(k,1050) - lu(k,1075) = lu(k,1075) - lu(k,388) * lu(k,1050) - lu(k,1077) = lu(k,1077) - lu(k,389) * lu(k,1050) - lu(k,1087) = lu(k,1087) - lu(k,390) * lu(k,1050) - lu(k,1088) = lu(k,1088) - lu(k,391) * lu(k,1050) - lu(k,1089) = lu(k,1089) - lu(k,392) * lu(k,1050) - lu(k,1093) = lu(k,1093) - lu(k,393) * lu(k,1050) - lu(k,1444) = lu(k,1444) - lu(k,387) * lu(k,1429) - lu(k,1445) = lu(k,1445) - lu(k,388) * lu(k,1429) - lu(k,1447) = lu(k,1447) - lu(k,389) * lu(k,1429) - lu(k,1457) = lu(k,1457) - lu(k,390) * lu(k,1429) - lu(k,1458) = lu(k,1458) - lu(k,391) * lu(k,1429) - lu(k,1459) = lu(k,1459) - lu(k,392) * lu(k,1429) - lu(k,1463) = lu(k,1463) - lu(k,393) * lu(k,1429) - lu(k,394) = 1._r8 / lu(k,394) - lu(k,395) = lu(k,395) * lu(k,394) - lu(k,396) = lu(k,396) * lu(k,394) - lu(k,397) = lu(k,397) * lu(k,394) - lu(k,398) = lu(k,398) * lu(k,394) - lu(k,399) = lu(k,399) * lu(k,394) - lu(k,461) = - lu(k,395) * lu(k,459) - lu(k,463) = - lu(k,396) * lu(k,459) - lu(k,468) = lu(k,468) - lu(k,397) * lu(k,459) - lu(k,469) = lu(k,469) - lu(k,398) * lu(k,459) - lu(k,471) = lu(k,471) - lu(k,399) * lu(k,459) - lu(k,1059) = lu(k,1059) - lu(k,395) * lu(k,1051) - lu(k,1071) = lu(k,1071) - lu(k,396) * lu(k,1051) - lu(k,1084) = lu(k,1084) - lu(k,397) * lu(k,1051) - lu(k,1088) = lu(k,1088) - lu(k,398) * lu(k,1051) - lu(k,1093) = lu(k,1093) - lu(k,399) * lu(k,1051) - lu(k,1105) = - lu(k,395) * lu(k,1101) - lu(k,1118) = lu(k,1118) - lu(k,396) * lu(k,1101) - lu(k,1130) = lu(k,1130) - lu(k,397) * lu(k,1101) - lu(k,1134) = lu(k,1134) - lu(k,398) * lu(k,1101) - lu(k,1139) = lu(k,1139) - lu(k,399) * lu(k,1101) - lu(k,1172) = lu(k,1172) - lu(k,395) * lu(k,1169) - lu(k,1184) = lu(k,1184) - lu(k,396) * lu(k,1169) - lu(k,1194) = lu(k,1194) - lu(k,397) * lu(k,1169) - lu(k,1198) = lu(k,1198) - lu(k,398) * lu(k,1169) - lu(k,1203) = lu(k,1203) - lu(k,399) * lu(k,1169) - lu(k,1215) = - lu(k,395) * lu(k,1210) - lu(k,1228) = lu(k,1228) - lu(k,396) * lu(k,1210) - lu(k,1240) = - lu(k,397) * lu(k,1210) - lu(k,1244) = lu(k,1244) - lu(k,398) * lu(k,1210) - lu(k,1249) = - lu(k,399) * lu(k,1210) - lu(k,1382) = lu(k,1382) - lu(k,395) * lu(k,1370) - lu(k,1395) = lu(k,1395) - lu(k,396) * lu(k,1370) - lu(k,1409) = lu(k,1409) - lu(k,397) * lu(k,1370) - lu(k,1413) = lu(k,1413) - lu(k,398) * lu(k,1370) - lu(k,1418) = lu(k,1418) - lu(k,399) * lu(k,1370) - lu(k,1479) = lu(k,1479) - lu(k,395) * lu(k,1469) - lu(k,1491) = lu(k,1491) - lu(k,396) * lu(k,1469) - lu(k,1502) = lu(k,1502) - lu(k,397) * lu(k,1469) - lu(k,1506) = lu(k,1506) - lu(k,398) * lu(k,1469) - lu(k,1511) = - lu(k,399) * lu(k,1469) - lu(k,401) = 1._r8 / lu(k,401) - lu(k,402) = lu(k,402) * lu(k,401) - lu(k,403) = lu(k,403) * lu(k,401) - lu(k,404) = lu(k,404) * lu(k,401) - lu(k,405) = lu(k,405) * lu(k,401) - lu(k,406) = lu(k,406) * lu(k,401) - lu(k,407) = lu(k,407) * lu(k,401) - lu(k,408) = lu(k,408) * lu(k,401) - lu(k,409) = lu(k,409) * lu(k,401) - lu(k,410) = lu(k,410) * lu(k,401) - lu(k,622) = - lu(k,402) * lu(k,621) - lu(k,624) = lu(k,624) - lu(k,403) * lu(k,621) - lu(k,629) = - lu(k,404) * lu(k,621) - lu(k,630) = lu(k,630) - lu(k,405) * lu(k,621) - lu(k,631) = lu(k,631) - lu(k,406) * lu(k,621) - lu(k,632) = lu(k,632) - lu(k,407) * lu(k,621) - lu(k,636) = lu(k,636) - lu(k,408) * lu(k,621) - lu(k,637) = - lu(k,409) * lu(k,621) - lu(k,639) = lu(k,639) - lu(k,410) * lu(k,621) - lu(k,1061) = lu(k,1061) - lu(k,402) * lu(k,1052) - lu(k,1062) = lu(k,1062) - lu(k,403) * lu(k,1052) - lu(k,1076) = lu(k,1076) - lu(k,404) * lu(k,1052) - lu(k,1079) = lu(k,1079) - lu(k,405) * lu(k,1052) - lu(k,1080) = lu(k,1080) - lu(k,406) * lu(k,1052) - lu(k,1081) = lu(k,1081) - lu(k,407) * lu(k,1052) - lu(k,1088) = lu(k,1088) - lu(k,408) * lu(k,1052) - lu(k,1090) = lu(k,1090) - lu(k,409) * lu(k,1052) - lu(k,1093) = lu(k,1093) - lu(k,410) * lu(k,1052) - lu(k,1384) = lu(k,1384) - lu(k,402) * lu(k,1371) - lu(k,1386) = lu(k,1386) - lu(k,403) * lu(k,1371) - lu(k,1401) = lu(k,1401) - lu(k,404) * lu(k,1371) - lu(k,1404) = lu(k,1404) - lu(k,405) * lu(k,1371) - lu(k,1405) = lu(k,1405) - lu(k,406) * lu(k,1371) - lu(k,1406) = lu(k,1406) - lu(k,407) * lu(k,1371) - lu(k,1413) = lu(k,1413) - lu(k,408) * lu(k,1371) - lu(k,1415) = lu(k,1415) - lu(k,409) * lu(k,1371) - lu(k,1418) = lu(k,1418) - lu(k,410) * lu(k,1371) - lu(k,1481) = lu(k,1481) - lu(k,402) * lu(k,1470) - lu(k,1482) = lu(k,1482) - lu(k,403) * lu(k,1470) - lu(k,1494) = lu(k,1494) - lu(k,404) * lu(k,1470) - lu(k,1497) = lu(k,1497) - lu(k,405) * lu(k,1470) - lu(k,1498) = lu(k,1498) - lu(k,406) * lu(k,1470) - lu(k,1499) = lu(k,1499) - lu(k,407) * lu(k,1470) - lu(k,1506) = lu(k,1506) - lu(k,408) * lu(k,1470) - lu(k,1508) = lu(k,1508) - lu(k,409) * lu(k,1470) - lu(k,1511) = lu(k,1511) - lu(k,410) * lu(k,1470) + lu(k,920) = lu(k,920) - lu(k,374) * lu(k,896) + lu(k,1104) = lu(k,1104) - lu(k,371) * lu(k,1096) + lu(k,1105) = lu(k,1105) - lu(k,372) * lu(k,1096) + lu(k,1106) = lu(k,1106) - lu(k,373) * lu(k,1096) + lu(k,1137) = lu(k,1137) - lu(k,374) * lu(k,1096) + lu(k,1460) = lu(k,1460) - lu(k,371) * lu(k,1453) + lu(k,1461) = lu(k,1461) - lu(k,372) * lu(k,1453) + lu(k,1464) = lu(k,1464) - lu(k,373) * lu(k,1453) + lu(k,1485) = lu(k,1485) - lu(k,374) * lu(k,1453) + lu(k,375) = 1._r8 / lu(k,375) + lu(k,376) = lu(k,376) * lu(k,375) + lu(k,377) = lu(k,377) * lu(k,375) + lu(k,378) = lu(k,378) * lu(k,375) + lu(k,379) = lu(k,379) * lu(k,375) + lu(k,380) = lu(k,380) * lu(k,375) + lu(k,461) = - lu(k,376) * lu(k,459) + lu(k,463) = - lu(k,377) * lu(k,459) + lu(k,465) = lu(k,465) - lu(k,378) * lu(k,459) + lu(k,468) = lu(k,468) - lu(k,379) * lu(k,459) + lu(k,471) = lu(k,471) - lu(k,380) * lu(k,459) + lu(k,958) = lu(k,958) - lu(k,376) * lu(k,954) + lu(k,969) = lu(k,969) - lu(k,377) * lu(k,954) + lu(k,973) = lu(k,973) - lu(k,378) * lu(k,954) + lu(k,979) = lu(k,979) - lu(k,379) * lu(k,954) + lu(k,988) = lu(k,988) - lu(k,380) * lu(k,954) + lu(k,1001) = - lu(k,376) * lu(k,995) + lu(k,1013) = lu(k,1013) - lu(k,377) * lu(k,995) + lu(k,1019) = - lu(k,378) * lu(k,995) + lu(k,1025) = lu(k,1025) - lu(k,379) * lu(k,995) + lu(k,1034) = - lu(k,380) * lu(k,995) + lu(k,1109) = lu(k,1109) - lu(k,376) * lu(k,1097) + lu(k,1120) = lu(k,1120) - lu(k,377) * lu(k,1097) + lu(k,1125) = lu(k,1125) - lu(k,378) * lu(k,1097) + lu(k,1131) = lu(k,1131) - lu(k,379) * lu(k,1097) + lu(k,1140) = - lu(k,380) * lu(k,1097) + lu(k,1236) = lu(k,1236) - lu(k,376) * lu(k,1222) + lu(k,1248) = lu(k,1248) - lu(k,377) * lu(k,1222) + lu(k,1256) = lu(k,1256) - lu(k,378) * lu(k,1222) + lu(k,1262) = lu(k,1262) - lu(k,379) * lu(k,1222) + lu(k,1271) = lu(k,1271) - lu(k,380) * lu(k,1222) + lu(k,1386) = lu(k,1386) - lu(k,376) * lu(k,1375) + lu(k,1397) = lu(k,1397) - lu(k,377) * lu(k,1375) + lu(k,1404) = lu(k,1404) - lu(k,378) * lu(k,1375) + lu(k,1410) = lu(k,1410) - lu(k,379) * lu(k,1375) + lu(k,1419) = lu(k,1419) - lu(k,380) * lu(k,1375) + lu(k,1524) = - lu(k,376) * lu(k,1518) + lu(k,1536) = lu(k,1536) - lu(k,377) * lu(k,1518) + lu(k,1542) = lu(k,1542) - lu(k,378) * lu(k,1518) + lu(k,1548) = lu(k,1548) - lu(k,379) * lu(k,1518) + lu(k,1557) = lu(k,1557) - lu(k,380) * lu(k,1518) + lu(k,382) = 1._r8 / lu(k,382) + lu(k,383) = lu(k,383) * lu(k,382) + lu(k,384) = lu(k,384) * lu(k,382) + lu(k,385) = lu(k,385) * lu(k,382) + lu(k,386) = lu(k,386) * lu(k,382) + lu(k,387) = lu(k,387) * lu(k,382) + lu(k,388) = lu(k,388) * lu(k,382) + lu(k,389) = lu(k,389) * lu(k,382) + lu(k,860) = lu(k,860) - lu(k,383) * lu(k,857) + lu(k,861) = lu(k,861) - lu(k,384) * lu(k,857) + lu(k,866) = lu(k,866) - lu(k,385) * lu(k,857) + lu(k,867) = lu(k,867) - lu(k,386) * lu(k,857) + lu(k,869) = - lu(k,387) * lu(k,857) + lu(k,870) = lu(k,870) - lu(k,388) * lu(k,857) + lu(k,872) = lu(k,872) - lu(k,389) * lu(k,857) + lu(k,1073) = - lu(k,383) * lu(k,1062) + lu(k,1074) = lu(k,1074) - lu(k,384) * lu(k,1062) + lu(k,1083) = lu(k,1083) - lu(k,385) * lu(k,1062) + lu(k,1084) = - lu(k,386) * lu(k,1062) + lu(k,1086) = lu(k,1086) - lu(k,387) * lu(k,1062) + lu(k,1089) = lu(k,1089) - lu(k,388) * lu(k,1062) + lu(k,1092) = lu(k,1092) - lu(k,389) * lu(k,1062) + lu(k,1343) = - lu(k,383) * lu(k,1340) + lu(k,1344) = lu(k,1344) - lu(k,384) * lu(k,1340) + lu(k,1351) = lu(k,1351) - lu(k,385) * lu(k,1340) + lu(k,1352) = lu(k,1352) - lu(k,386) * lu(k,1340) + lu(k,1354) = lu(k,1354) - lu(k,387) * lu(k,1340) + lu(k,1357) = lu(k,1357) - lu(k,388) * lu(k,1340) + lu(k,1360) = - lu(k,389) * lu(k,1340) + lu(k,1400) = lu(k,1400) - lu(k,383) * lu(k,1376) + lu(k,1401) = lu(k,1401) - lu(k,384) * lu(k,1376) + lu(k,1410) = lu(k,1410) - lu(k,385) * lu(k,1376) + lu(k,1411) = lu(k,1411) - lu(k,386) * lu(k,1376) + lu(k,1413) = lu(k,1413) - lu(k,387) * lu(k,1376) + lu(k,1416) = lu(k,1416) - lu(k,388) * lu(k,1376) + lu(k,1419) = lu(k,1419) - lu(k,389) * lu(k,1376) + lu(k,1469) = lu(k,1469) - lu(k,383) * lu(k,1454) + lu(k,1470) = lu(k,1470) - lu(k,384) * lu(k,1454) + lu(k,1479) = lu(k,1479) - lu(k,385) * lu(k,1454) + lu(k,1480) = lu(k,1480) - lu(k,386) * lu(k,1454) + lu(k,1482) = lu(k,1482) - lu(k,387) * lu(k,1454) + lu(k,1485) = lu(k,1485) - lu(k,388) * lu(k,1454) + lu(k,1488) = lu(k,1488) - lu(k,389) * lu(k,1454) + lu(k,392) = 1._r8 / lu(k,392) + lu(k,393) = lu(k,393) * lu(k,392) + lu(k,394) = lu(k,394) * lu(k,392) + lu(k,395) = lu(k,395) * lu(k,392) + lu(k,396) = lu(k,396) * lu(k,392) + lu(k,397) = lu(k,397) * lu(k,392) + lu(k,398) = lu(k,398) * lu(k,392) + lu(k,399) = lu(k,399) * lu(k,392) + lu(k,1108) = lu(k,1108) - lu(k,393) * lu(k,1098) + lu(k,1123) = lu(k,1123) - lu(k,394) * lu(k,1098) + lu(k,1128) = lu(k,1128) - lu(k,395) * lu(k,1098) + lu(k,1129) = lu(k,1129) - lu(k,396) * lu(k,1098) + lu(k,1131) = lu(k,1131) - lu(k,397) * lu(k,1098) + lu(k,1135) = lu(k,1135) - lu(k,398) * lu(k,1098) + lu(k,1136) = lu(k,1136) - lu(k,399) * lu(k,1098) + lu(k,1235) = lu(k,1235) - lu(k,393) * lu(k,1223) + lu(k,1254) = lu(k,1254) - lu(k,394) * lu(k,1223) + lu(k,1259) = lu(k,1259) - lu(k,395) * lu(k,1223) + lu(k,1260) = lu(k,1260) - lu(k,396) * lu(k,1223) + lu(k,1262) = lu(k,1262) - lu(k,397) * lu(k,1223) + lu(k,1266) = lu(k,1266) - lu(k,398) * lu(k,1223) + lu(k,1267) = lu(k,1267) - lu(k,399) * lu(k,1223) + lu(k,1284) = - lu(k,393) * lu(k,1280) + lu(k,1292) = lu(k,1292) - lu(k,394) * lu(k,1280) + lu(k,1297) = - lu(k,395) * lu(k,1280) + lu(k,1298) = - lu(k,396) * lu(k,1280) + lu(k,1300) = lu(k,1300) - lu(k,397) * lu(k,1280) + lu(k,1304) = lu(k,1304) - lu(k,398) * lu(k,1280) + lu(k,1305) = lu(k,1305) - lu(k,399) * lu(k,1280) + lu(k,1385) = lu(k,1385) - lu(k,393) * lu(k,1377) + lu(k,1402) = lu(k,1402) - lu(k,394) * lu(k,1377) + lu(k,1407) = lu(k,1407) - lu(k,395) * lu(k,1377) + lu(k,1408) = lu(k,1408) - lu(k,396) * lu(k,1377) + lu(k,1410) = lu(k,1410) - lu(k,397) * lu(k,1377) + lu(k,1414) = lu(k,1414) - lu(k,398) * lu(k,1377) + lu(k,1415) = lu(k,1415) - lu(k,399) * lu(k,1377) + lu(k,1523) = - lu(k,393) * lu(k,1519) + lu(k,1540) = lu(k,1540) - lu(k,394) * lu(k,1519) + lu(k,1545) = lu(k,1545) - lu(k,395) * lu(k,1519) + lu(k,1546) = lu(k,1546) - lu(k,396) * lu(k,1519) + lu(k,1548) = lu(k,1548) - lu(k,397) * lu(k,1519) + lu(k,1552) = lu(k,1552) - lu(k,398) * lu(k,1519) + lu(k,1553) = lu(k,1553) - lu(k,399) * lu(k,1519) + lu(k,400) = 1._r8 / lu(k,400) + lu(k,401) = lu(k,401) * lu(k,400) + lu(k,402) = lu(k,402) * lu(k,400) + lu(k,403) = lu(k,403) * lu(k,400) + lu(k,404) = lu(k,404) * lu(k,400) + lu(k,405) = lu(k,405) * lu(k,400) + lu(k,406) = lu(k,406) * lu(k,400) + lu(k,407) = lu(k,407) * lu(k,400) + lu(k,408) = lu(k,408) * lu(k,400) + lu(k,409) = lu(k,409) * lu(k,400) + lu(k,474) = - lu(k,401) * lu(k,472) + lu(k,477) = lu(k,477) - lu(k,402) * lu(k,472) + lu(k,479) = lu(k,479) - lu(k,403) * lu(k,472) + lu(k,482) = lu(k,482) - lu(k,404) * lu(k,472) + lu(k,483) = - lu(k,405) * lu(k,472) + lu(k,484) = - lu(k,406) * lu(k,472) + lu(k,485) = lu(k,485) - lu(k,407) * lu(k,472) + lu(k,486) = lu(k,486) - lu(k,408) * lu(k,472) + lu(k,487) = lu(k,487) - lu(k,409) * lu(k,472) + lu(k,999) = lu(k,999) - lu(k,401) * lu(k,996) + lu(k,1006) = lu(k,1006) - lu(k,402) * lu(k,996) + lu(k,1011) = lu(k,1011) - lu(k,403) * lu(k,996) + lu(k,1020) = lu(k,1020) - lu(k,404) * lu(k,996) + lu(k,1022) = lu(k,1022) - lu(k,405) * lu(k,996) + lu(k,1023) = lu(k,1023) - lu(k,406) * lu(k,996) + lu(k,1025) = lu(k,1025) - lu(k,407) * lu(k,996) + lu(k,1029) = lu(k,1029) - lu(k,408) * lu(k,996) + lu(k,1030) = lu(k,1030) - lu(k,409) * lu(k,996) + lu(k,1107) = lu(k,1107) - lu(k,401) * lu(k,1099) + lu(k,1113) = lu(k,1113) - lu(k,402) * lu(k,1099) + lu(k,1118) = lu(k,1118) - lu(k,403) * lu(k,1099) + lu(k,1126) = lu(k,1126) - lu(k,404) * lu(k,1099) + lu(k,1128) = lu(k,1128) - lu(k,405) * lu(k,1099) + lu(k,1129) = lu(k,1129) - lu(k,406) * lu(k,1099) + lu(k,1131) = lu(k,1131) - lu(k,407) * lu(k,1099) + lu(k,1135) = lu(k,1135) - lu(k,408) * lu(k,1099) + lu(k,1136) = lu(k,1136) - lu(k,409) * lu(k,1099) + lu(k,1384) = lu(k,1384) - lu(k,401) * lu(k,1378) + lu(k,1390) = lu(k,1390) - lu(k,402) * lu(k,1378) + lu(k,1395) = lu(k,1395) - lu(k,403) * lu(k,1378) + lu(k,1405) = lu(k,1405) - lu(k,404) * lu(k,1378) + lu(k,1407) = lu(k,1407) - lu(k,405) * lu(k,1378) + lu(k,1408) = lu(k,1408) - lu(k,406) * lu(k,1378) + lu(k,1410) = lu(k,1410) - lu(k,407) * lu(k,1378) + lu(k,1414) = lu(k,1414) - lu(k,408) * lu(k,1378) + lu(k,1415) = lu(k,1415) - lu(k,409) * lu(k,1378) end do end subroutine lu_fac09 subroutine lu_fac10( avec_len, lu ) @@ -1530,42 +1529,42 @@ subroutine lu_fac10( avec_len, lu ) lu(k,418) = lu(k,418) * lu(k,411) lu(k,419) = lu(k,419) * lu(k,411) lu(k,420) = lu(k,420) * lu(k,411) - lu(k,474) = - lu(k,412) * lu(k,472) - lu(k,477) = lu(k,477) - lu(k,413) * lu(k,472) - lu(k,479) = lu(k,479) - lu(k,414) * lu(k,472) - lu(k,481) = - lu(k,415) * lu(k,472) - lu(k,482) = lu(k,482) - lu(k,416) * lu(k,472) - lu(k,483) = lu(k,483) - lu(k,417) * lu(k,472) - lu(k,486) = lu(k,486) - lu(k,418) * lu(k,472) - lu(k,487) = lu(k,487) - lu(k,419) * lu(k,472) - lu(k,488) = - lu(k,420) * lu(k,472) - lu(k,1058) = lu(k,1058) - lu(k,412) * lu(k,1053) - lu(k,1064) = lu(k,1064) - lu(k,413) * lu(k,1053) - lu(k,1069) = lu(k,1069) - lu(k,414) * lu(k,1053) - lu(k,1079) = lu(k,1079) - lu(k,415) * lu(k,1053) - lu(k,1080) = lu(k,1080) - lu(k,416) * lu(k,1053) - lu(k,1081) = lu(k,1081) - lu(k,417) * lu(k,1053) - lu(k,1085) = lu(k,1085) - lu(k,418) * lu(k,1053) - lu(k,1088) = lu(k,1088) - lu(k,419) * lu(k,1053) - lu(k,1090) = lu(k,1090) - lu(k,420) * lu(k,1053) - lu(k,1214) = lu(k,1214) - lu(k,412) * lu(k,1211) - lu(k,1221) = lu(k,1221) - lu(k,413) * lu(k,1211) - lu(k,1226) = lu(k,1226) - lu(k,414) * lu(k,1211) - lu(k,1235) = lu(k,1235) - lu(k,415) * lu(k,1211) - lu(k,1236) = lu(k,1236) - lu(k,416) * lu(k,1211) - lu(k,1237) = lu(k,1237) - lu(k,417) * lu(k,1211) - lu(k,1241) = lu(k,1241) - lu(k,418) * lu(k,1211) - lu(k,1244) = lu(k,1244) - lu(k,419) * lu(k,1211) - lu(k,1246) = lu(k,1246) - lu(k,420) * lu(k,1211) - lu(k,1478) = lu(k,1478) - lu(k,412) * lu(k,1471) - lu(k,1484) = lu(k,1484) - lu(k,413) * lu(k,1471) - lu(k,1489) = lu(k,1489) - lu(k,414) * lu(k,1471) - lu(k,1497) = lu(k,1497) - lu(k,415) * lu(k,1471) - lu(k,1498) = lu(k,1498) - lu(k,416) * lu(k,1471) - lu(k,1499) = lu(k,1499) - lu(k,417) * lu(k,1471) - lu(k,1503) = lu(k,1503) - lu(k,418) * lu(k,1471) - lu(k,1506) = lu(k,1506) - lu(k,419) * lu(k,1471) - lu(k,1508) = lu(k,1508) - lu(k,420) * lu(k,1471) + lu(k,622) = - lu(k,412) * lu(k,621) + lu(k,624) = lu(k,624) - lu(k,413) * lu(k,621) + lu(k,629) = - lu(k,414) * lu(k,621) + lu(k,633) = lu(k,633) - lu(k,415) * lu(k,621) + lu(k,634) = - lu(k,416) * lu(k,621) + lu(k,635) = lu(k,635) - lu(k,417) * lu(k,621) + lu(k,636) = lu(k,636) - lu(k,418) * lu(k,621) + lu(k,637) = lu(k,637) - lu(k,419) * lu(k,621) + lu(k,639) = lu(k,639) - lu(k,420) * lu(k,621) + lu(k,1110) = lu(k,1110) - lu(k,412) * lu(k,1100) + lu(k,1111) = lu(k,1111) - lu(k,413) * lu(k,1100) + lu(k,1123) = lu(k,1123) - lu(k,414) * lu(k,1100) + lu(k,1128) = lu(k,1128) - lu(k,415) * lu(k,1100) + lu(k,1129) = lu(k,1129) - lu(k,416) * lu(k,1100) + lu(k,1131) = lu(k,1131) - lu(k,417) * lu(k,1100) + lu(k,1135) = lu(k,1135) - lu(k,418) * lu(k,1100) + lu(k,1136) = lu(k,1136) - lu(k,419) * lu(k,1100) + lu(k,1140) = lu(k,1140) - lu(k,420) * lu(k,1100) + lu(k,1237) = lu(k,1237) - lu(k,412) * lu(k,1224) + lu(k,1239) = lu(k,1239) - lu(k,413) * lu(k,1224) + lu(k,1254) = lu(k,1254) - lu(k,414) * lu(k,1224) + lu(k,1259) = lu(k,1259) - lu(k,415) * lu(k,1224) + lu(k,1260) = lu(k,1260) - lu(k,416) * lu(k,1224) + lu(k,1262) = lu(k,1262) - lu(k,417) * lu(k,1224) + lu(k,1266) = lu(k,1266) - lu(k,418) * lu(k,1224) + lu(k,1267) = lu(k,1267) - lu(k,419) * lu(k,1224) + lu(k,1271) = lu(k,1271) - lu(k,420) * lu(k,1224) + lu(k,1387) = lu(k,1387) - lu(k,412) * lu(k,1379) + lu(k,1388) = lu(k,1388) - lu(k,413) * lu(k,1379) + lu(k,1402) = lu(k,1402) - lu(k,414) * lu(k,1379) + lu(k,1407) = lu(k,1407) - lu(k,415) * lu(k,1379) + lu(k,1408) = lu(k,1408) - lu(k,416) * lu(k,1379) + lu(k,1410) = lu(k,1410) - lu(k,417) * lu(k,1379) + lu(k,1414) = lu(k,1414) - lu(k,418) * lu(k,1379) + lu(k,1415) = lu(k,1415) - lu(k,419) * lu(k,1379) + lu(k,1419) = lu(k,1419) - lu(k,420) * lu(k,1379) lu(k,424) = 1._r8 / lu(k,424) lu(k,425) = lu(k,425) * lu(k,424) lu(k,426) = lu(k,426) * lu(k,424) @@ -1575,96 +1574,95 @@ subroutine lu_fac10( avec_len, lu ) lu(k,430) = lu(k,430) * lu(k,424) lu(k,431) = lu(k,431) * lu(k,424) lu(k,432) = lu(k,432) * lu(k,424) - lu(k,1062) = lu(k,1062) - lu(k,425) * lu(k,1054) - lu(k,1076) = lu(k,1076) - lu(k,426) * lu(k,1054) - lu(k,1079) = lu(k,1079) - lu(k,427) * lu(k,1054) - lu(k,1080) = lu(k,1080) - lu(k,428) * lu(k,1054) - lu(k,1081) = lu(k,1081) - lu(k,429) * lu(k,1054) - lu(k,1084) = lu(k,1084) - lu(k,430) * lu(k,1054) - lu(k,1088) = lu(k,1088) - lu(k,431) * lu(k,1054) - lu(k,1090) = lu(k,1090) - lu(k,432) * lu(k,1054) - lu(k,1175) = lu(k,1175) - lu(k,425) * lu(k,1170) - lu(k,1186) = lu(k,1186) - lu(k,426) * lu(k,1170) - lu(k,1189) = lu(k,1189) - lu(k,427) * lu(k,1170) - lu(k,1190) = lu(k,1190) - lu(k,428) * lu(k,1170) - lu(k,1191) = lu(k,1191) - lu(k,429) * lu(k,1170) - lu(k,1194) = lu(k,1194) - lu(k,430) * lu(k,1170) - lu(k,1198) = lu(k,1198) - lu(k,431) * lu(k,1170) - lu(k,1200) = lu(k,1200) - lu(k,432) * lu(k,1170) - lu(k,1305) = - lu(k,425) * lu(k,1301) - lu(k,1312) = lu(k,1312) - lu(k,426) * lu(k,1301) - lu(k,1315) = lu(k,1315) - lu(k,427) * lu(k,1301) - lu(k,1316) = lu(k,1316) - lu(k,428) * lu(k,1301) - lu(k,1317) = lu(k,1317) - lu(k,429) * lu(k,1301) - lu(k,1320) = lu(k,1320) - lu(k,430) * lu(k,1301) - lu(k,1324) = lu(k,1324) - lu(k,431) * lu(k,1301) - lu(k,1326) = lu(k,1326) - lu(k,432) * lu(k,1301) - lu(k,1386) = lu(k,1386) - lu(k,425) * lu(k,1372) - lu(k,1401) = lu(k,1401) - lu(k,426) * lu(k,1372) - lu(k,1404) = lu(k,1404) - lu(k,427) * lu(k,1372) - lu(k,1405) = lu(k,1405) - lu(k,428) * lu(k,1372) - lu(k,1406) = lu(k,1406) - lu(k,429) * lu(k,1372) - lu(k,1409) = lu(k,1409) - lu(k,430) * lu(k,1372) - lu(k,1413) = lu(k,1413) - lu(k,431) * lu(k,1372) - lu(k,1415) = lu(k,1415) - lu(k,432) * lu(k,1372) - lu(k,1482) = lu(k,1482) - lu(k,425) * lu(k,1472) - lu(k,1494) = lu(k,1494) - lu(k,426) * lu(k,1472) - lu(k,1497) = lu(k,1497) - lu(k,427) * lu(k,1472) - lu(k,1498) = lu(k,1498) - lu(k,428) * lu(k,1472) - lu(k,1499) = lu(k,1499) - lu(k,429) * lu(k,1472) - lu(k,1502) = lu(k,1502) - lu(k,430) * lu(k,1472) - lu(k,1506) = lu(k,1506) - lu(k,431) * lu(k,1472) - lu(k,1508) = lu(k,1508) - lu(k,432) * lu(k,1472) - lu(k,433) = 1._r8 / lu(k,433) - lu(k,434) = lu(k,434) * lu(k,433) - lu(k,435) = lu(k,435) * lu(k,433) - lu(k,436) = lu(k,436) * lu(k,433) - lu(k,437) = lu(k,437) * lu(k,433) - lu(k,438) = lu(k,438) * lu(k,433) - lu(k,439) = lu(k,439) * lu(k,433) - lu(k,440) = lu(k,440) * lu(k,433) - lu(k,876) = lu(k,876) - lu(k,434) * lu(k,873) - lu(k,878) = lu(k,878) - lu(k,435) * lu(k,873) - lu(k,883) = - lu(k,436) * lu(k,873) - lu(k,884) = - lu(k,437) * lu(k,873) - lu(k,885) = - lu(k,438) * lu(k,873) - lu(k,887) = - lu(k,439) * lu(k,873) - lu(k,888) = - lu(k,440) * lu(k,873) - lu(k,1016) = lu(k,1016) - lu(k,434) * lu(k,1011) - lu(k,1018) = - lu(k,435) * lu(k,1011) - lu(k,1027) = - lu(k,436) * lu(k,1011) - lu(k,1029) = lu(k,1029) - lu(k,437) * lu(k,1011) - lu(k,1030) = lu(k,1030) - lu(k,438) * lu(k,1011) - lu(k,1033) = lu(k,1033) - lu(k,439) * lu(k,1011) - lu(k,1034) = lu(k,1034) - lu(k,440) * lu(k,1011) - lu(k,1075) = lu(k,1075) - lu(k,434) * lu(k,1055) - lu(k,1077) = lu(k,1077) - lu(k,435) * lu(k,1055) - lu(k,1086) = - lu(k,436) * lu(k,1055) - lu(k,1088) = lu(k,1088) - lu(k,437) * lu(k,1055) - lu(k,1089) = lu(k,1089) - lu(k,438) * lu(k,1055) - lu(k,1092) = lu(k,1092) - lu(k,439) * lu(k,1055) - lu(k,1093) = lu(k,1093) - lu(k,440) * lu(k,1055) - lu(k,1273) = lu(k,1273) - lu(k,434) * lu(k,1269) - lu(k,1275) = lu(k,1275) - lu(k,435) * lu(k,1269) - lu(k,1284) = lu(k,1284) - lu(k,436) * lu(k,1269) - lu(k,1286) = lu(k,1286) - lu(k,437) * lu(k,1269) - lu(k,1287) = lu(k,1287) - lu(k,438) * lu(k,1269) - lu(k,1290) = lu(k,1290) - lu(k,439) * lu(k,1269) - lu(k,1291) = lu(k,1291) - lu(k,440) * lu(k,1269) - lu(k,1400) = lu(k,1400) - lu(k,434) * lu(k,1373) - lu(k,1402) = lu(k,1402) - lu(k,435) * lu(k,1373) - lu(k,1411) = lu(k,1411) - lu(k,436) * lu(k,1373) - lu(k,1413) = lu(k,1413) - lu(k,437) * lu(k,1373) - lu(k,1414) = lu(k,1414) - lu(k,438) * lu(k,1373) - lu(k,1417) = lu(k,1417) - lu(k,439) * lu(k,1373) - lu(k,1418) = lu(k,1418) - lu(k,440) * lu(k,1373) - lu(k,1445) = lu(k,1445) - lu(k,434) * lu(k,1430) - lu(k,1447) = lu(k,1447) - lu(k,435) * lu(k,1430) - lu(k,1456) = - lu(k,436) * lu(k,1430) - lu(k,1458) = lu(k,1458) - lu(k,437) * lu(k,1430) - lu(k,1459) = lu(k,1459) - lu(k,438) * lu(k,1430) - lu(k,1462) = lu(k,1462) - lu(k,439) * lu(k,1430) - lu(k,1463) = lu(k,1463) - lu(k,440) * lu(k,1430) + lu(k,960) = lu(k,960) - lu(k,425) * lu(k,955) + lu(k,971) = lu(k,971) - lu(k,426) * lu(k,955) + lu(k,973) = lu(k,973) - lu(k,427) * lu(k,955) + lu(k,976) = lu(k,976) - lu(k,428) * lu(k,955) + lu(k,977) = lu(k,977) - lu(k,429) * lu(k,955) + lu(k,979) = lu(k,979) - lu(k,430) * lu(k,955) + lu(k,983) = lu(k,983) - lu(k,431) * lu(k,955) + lu(k,984) = lu(k,984) - lu(k,432) * lu(k,955) + lu(k,1111) = lu(k,1111) - lu(k,425) * lu(k,1101) + lu(k,1123) = lu(k,1123) - lu(k,426) * lu(k,1101) + lu(k,1125) = lu(k,1125) - lu(k,427) * lu(k,1101) + lu(k,1128) = lu(k,1128) - lu(k,428) * lu(k,1101) + lu(k,1129) = lu(k,1129) - lu(k,429) * lu(k,1101) + lu(k,1131) = lu(k,1131) - lu(k,430) * lu(k,1101) + lu(k,1135) = lu(k,1135) - lu(k,431) * lu(k,1101) + lu(k,1136) = lu(k,1136) - lu(k,432) * lu(k,1101) + lu(k,1239) = lu(k,1239) - lu(k,425) * lu(k,1225) + lu(k,1254) = lu(k,1254) - lu(k,426) * lu(k,1225) + lu(k,1256) = lu(k,1256) - lu(k,427) * lu(k,1225) + lu(k,1259) = lu(k,1259) - lu(k,428) * lu(k,1225) + lu(k,1260) = lu(k,1260) - lu(k,429) * lu(k,1225) + lu(k,1262) = lu(k,1262) - lu(k,430) * lu(k,1225) + lu(k,1266) = lu(k,1266) - lu(k,431) * lu(k,1225) + lu(k,1267) = lu(k,1267) - lu(k,432) * lu(k,1225) + lu(k,1285) = - lu(k,425) * lu(k,1281) + lu(k,1292) = lu(k,1292) - lu(k,426) * lu(k,1281) + lu(k,1294) = lu(k,1294) - lu(k,427) * lu(k,1281) + lu(k,1297) = lu(k,1297) - lu(k,428) * lu(k,1281) + lu(k,1298) = lu(k,1298) - lu(k,429) * lu(k,1281) + lu(k,1300) = lu(k,1300) - lu(k,430) * lu(k,1281) + lu(k,1304) = lu(k,1304) - lu(k,431) * lu(k,1281) + lu(k,1305) = lu(k,1305) - lu(k,432) * lu(k,1281) + lu(k,1388) = lu(k,1388) - lu(k,425) * lu(k,1380) + lu(k,1402) = lu(k,1402) - lu(k,426) * lu(k,1380) + lu(k,1404) = lu(k,1404) - lu(k,427) * lu(k,1380) + lu(k,1407) = lu(k,1407) - lu(k,428) * lu(k,1380) + lu(k,1408) = lu(k,1408) - lu(k,429) * lu(k,1380) + lu(k,1410) = lu(k,1410) - lu(k,430) * lu(k,1380) + lu(k,1414) = lu(k,1414) - lu(k,431) * lu(k,1380) + lu(k,1415) = lu(k,1415) - lu(k,432) * lu(k,1380) + lu(k,434) = 1._r8 / lu(k,434) + lu(k,435) = lu(k,435) * lu(k,434) + lu(k,436) = lu(k,436) * lu(k,434) + lu(k,437) = lu(k,437) * lu(k,434) + lu(k,438) = lu(k,438) * lu(k,434) + lu(k,439) = lu(k,439) * lu(k,434) + lu(k,440) = lu(k,440) * lu(k,434) + lu(k,557) = lu(k,557) - lu(k,435) * lu(k,555) + lu(k,560) = lu(k,560) - lu(k,436) * lu(k,555) + lu(k,561) = lu(k,561) - lu(k,437) * lu(k,555) + lu(k,562) = lu(k,562) - lu(k,438) * lu(k,555) + lu(k,563) = lu(k,563) - lu(k,439) * lu(k,555) + lu(k,565) = - lu(k,440) * lu(k,555) + lu(k,860) = lu(k,860) - lu(k,435) * lu(k,858) + lu(k,866) = lu(k,866) - lu(k,436) * lu(k,858) + lu(k,867) = lu(k,867) - lu(k,437) * lu(k,858) + lu(k,868) = lu(k,868) - lu(k,438) * lu(k,858) + lu(k,870) = lu(k,870) - lu(k,439) * lu(k,858) + lu(k,872) = lu(k,872) - lu(k,440) * lu(k,858) + lu(k,1252) = lu(k,1252) - lu(k,435) * lu(k,1226) + lu(k,1262) = lu(k,1262) - lu(k,436) * lu(k,1226) + lu(k,1263) = lu(k,1263) - lu(k,437) * lu(k,1226) + lu(k,1264) = lu(k,1264) - lu(k,438) * lu(k,1226) + lu(k,1268) = lu(k,1268) - lu(k,439) * lu(k,1226) + lu(k,1271) = lu(k,1271) - lu(k,440) * lu(k,1226) + lu(k,1290) = lu(k,1290) - lu(k,435) * lu(k,1282) + lu(k,1300) = lu(k,1300) - lu(k,436) * lu(k,1282) + lu(k,1301) = lu(k,1301) - lu(k,437) * lu(k,1282) + lu(k,1302) = lu(k,1302) - lu(k,438) * lu(k,1282) + lu(k,1306) = lu(k,1306) - lu(k,439) * lu(k,1282) + lu(k,1309) = lu(k,1309) - lu(k,440) * lu(k,1282) + lu(k,1318) = lu(k,1318) - lu(k,435) * lu(k,1314) + lu(k,1327) = lu(k,1327) - lu(k,436) * lu(k,1314) + lu(k,1328) = lu(k,1328) - lu(k,437) * lu(k,1314) + lu(k,1329) = lu(k,1329) - lu(k,438) * lu(k,1314) + lu(k,1333) = lu(k,1333) - lu(k,439) * lu(k,1314) + lu(k,1336) = - lu(k,440) * lu(k,1314) + lu(k,1400) = lu(k,1400) - lu(k,435) * lu(k,1381) + lu(k,1410) = lu(k,1410) - lu(k,436) * lu(k,1381) + lu(k,1411) = lu(k,1411) - lu(k,437) * lu(k,1381) + lu(k,1412) = lu(k,1412) - lu(k,438) * lu(k,1381) + lu(k,1416) = lu(k,1416) - lu(k,439) * lu(k,1381) + lu(k,1419) = lu(k,1419) - lu(k,440) * lu(k,1381) + lu(k,1469) = lu(k,1469) - lu(k,435) * lu(k,1455) + lu(k,1479) = lu(k,1479) - lu(k,436) * lu(k,1455) + lu(k,1480) = lu(k,1480) - lu(k,437) * lu(k,1455) + lu(k,1481) = lu(k,1481) - lu(k,438) * lu(k,1455) + lu(k,1485) = lu(k,1485) - lu(k,439) * lu(k,1455) + lu(k,1488) = lu(k,1488) - lu(k,440) * lu(k,1455) lu(k,442) = 1._r8 / lu(k,442) lu(k,443) = lu(k,443) * lu(k,442) lu(k,444) = lu(k,444) * lu(k,442) @@ -1686,35 +1684,85 @@ subroutine lu_fac10( avec_len, lu ) lu(k,527) = lu(k,527) - lu(k,446) * lu(k,523) lu(k,528) = lu(k,528) - lu(k,447) * lu(k,523) lu(k,531) = lu(k,531) - lu(k,448) * lu(k,523) - lu(k,533) = lu(k,533) - lu(k,449) * lu(k,523) + lu(k,534) = lu(k,534) - lu(k,449) * lu(k,523) lu(k,536) = lu(k,536) - lu(k,443) * lu(k,535) lu(k,537) = - lu(k,444) * lu(k,535) lu(k,538) = - lu(k,445) * lu(k,535) lu(k,539) = lu(k,539) - lu(k,446) * lu(k,535) lu(k,540) = lu(k,540) - lu(k,447) * lu(k,535) lu(k,543) = lu(k,543) - lu(k,448) * lu(k,535) - lu(k,545) = lu(k,545) - lu(k,449) * lu(k,535) - lu(k,557) = - lu(k,443) * lu(k,556) - lu(k,558) = lu(k,558) - lu(k,444) * lu(k,556) - lu(k,559) = lu(k,559) - lu(k,445) * lu(k,556) - lu(k,560) = lu(k,560) - lu(k,446) * lu(k,556) - lu(k,561) = lu(k,561) - lu(k,447) * lu(k,556) - lu(k,564) = lu(k,564) - lu(k,448) * lu(k,556) - lu(k,568) = lu(k,568) - lu(k,449) * lu(k,556) + lu(k,546) = lu(k,546) - lu(k,449) * lu(k,535) + lu(k,569) = - lu(k,443) * lu(k,568) + lu(k,570) = lu(k,570) - lu(k,444) * lu(k,568) + lu(k,571) = lu(k,571) - lu(k,445) * lu(k,568) + lu(k,572) = lu(k,572) - lu(k,446) * lu(k,568) + lu(k,573) = lu(k,573) - lu(k,447) * lu(k,568) + lu(k,576) = lu(k,576) - lu(k,448) * lu(k,568) + lu(k,582) = lu(k,582) - lu(k,449) * lu(k,568) lu(k,898) = lu(k,898) - lu(k,443) * lu(k,897) lu(k,899) = lu(k,899) - lu(k,444) * lu(k,897) lu(k,900) = lu(k,900) - lu(k,445) * lu(k,897) lu(k,901) = lu(k,901) - lu(k,446) * lu(k,897) lu(k,903) = lu(k,903) - lu(k,447) * lu(k,897) lu(k,909) = lu(k,909) - lu(k,448) * lu(k,897) - lu(k,919) = lu(k,919) - lu(k,449) * lu(k,897) - lu(k,1433) = lu(k,1433) - lu(k,443) * lu(k,1431) - lu(k,1434) = lu(k,1434) - lu(k,444) * lu(k,1431) - lu(k,1435) = lu(k,1435) - lu(k,445) * lu(k,1431) - lu(k,1436) = lu(k,1436) - lu(k,446) * lu(k,1431) - lu(k,1438) = lu(k,1438) - lu(k,447) * lu(k,1431) - lu(k,1446) = lu(k,1446) - lu(k,448) * lu(k,1431) - lu(k,1459) = lu(k,1459) - lu(k,449) * lu(k,1431) + lu(k,920) = lu(k,920) - lu(k,449) * lu(k,897) + lu(k,1458) = lu(k,1458) - lu(k,443) * lu(k,1456) + lu(k,1459) = lu(k,1459) - lu(k,444) * lu(k,1456) + lu(k,1460) = lu(k,1460) - lu(k,445) * lu(k,1456) + lu(k,1461) = lu(k,1461) - lu(k,446) * lu(k,1456) + lu(k,1464) = lu(k,1464) - lu(k,447) * lu(k,1456) + lu(k,1471) = lu(k,1471) - lu(k,448) * lu(k,1456) + lu(k,1485) = lu(k,1485) - lu(k,449) * lu(k,1456) + lu(k,450) = 1._r8 / lu(k,450) + lu(k,451) = lu(k,451) * lu(k,450) + lu(k,452) = lu(k,452) * lu(k,450) + lu(k,453) = lu(k,453) * lu(k,450) + lu(k,454) = lu(k,454) * lu(k,450) + lu(k,455) = lu(k,455) * lu(k,450) + lu(k,456) = lu(k,456) * lu(k,450) + lu(k,457) = lu(k,457) * lu(k,450) + lu(k,876) = lu(k,876) - lu(k,451) * lu(k,873) + lu(k,878) = - lu(k,452) * lu(k,873) + lu(k,881) = - lu(k,453) * lu(k,873) + lu(k,882) = - lu(k,454) * lu(k,873) + lu(k,883) = lu(k,883) - lu(k,455) * lu(k,873) + lu(k,886) = - lu(k,456) * lu(k,873) + lu(k,888) = - lu(k,457) * lu(k,873) + lu(k,1164) = lu(k,1164) - lu(k,451) * lu(k,1160) + lu(k,1169) = lu(k,1169) - lu(k,452) * lu(k,1160) + lu(k,1172) = lu(k,1172) - lu(k,453) * lu(k,1160) + lu(k,1173) = lu(k,1173) - lu(k,454) * lu(k,1160) + lu(k,1176) = lu(k,1176) - lu(k,455) * lu(k,1160) + lu(k,1179) = lu(k,1179) - lu(k,456) * lu(k,1160) + lu(k,1182) = lu(k,1182) - lu(k,457) * lu(k,1160) + lu(k,1253) = lu(k,1253) - lu(k,451) * lu(k,1227) + lu(k,1258) = lu(k,1258) - lu(k,452) * lu(k,1227) + lu(k,1261) = lu(k,1261) - lu(k,453) * lu(k,1227) + lu(k,1262) = lu(k,1262) - lu(k,454) * lu(k,1227) + lu(k,1265) = lu(k,1265) - lu(k,455) * lu(k,1227) + lu(k,1268) = lu(k,1268) - lu(k,456) * lu(k,1227) + lu(k,1271) = lu(k,1271) - lu(k,457) * lu(k,1227) + lu(k,1401) = lu(k,1401) - lu(k,451) * lu(k,1382) + lu(k,1406) = lu(k,1406) - lu(k,452) * lu(k,1382) + lu(k,1409) = - lu(k,453) * lu(k,1382) + lu(k,1410) = lu(k,1410) - lu(k,454) * lu(k,1382) + lu(k,1413) = lu(k,1413) - lu(k,455) * lu(k,1382) + lu(k,1416) = lu(k,1416) - lu(k,456) * lu(k,1382) + lu(k,1419) = lu(k,1419) - lu(k,457) * lu(k,1382) + lu(k,1425) = lu(k,1425) - lu(k,451) * lu(k,1420) + lu(k,1430) = lu(k,1430) - lu(k,452) * lu(k,1420) + lu(k,1433) = - lu(k,453) * lu(k,1420) + lu(k,1434) = lu(k,1434) - lu(k,454) * lu(k,1420) + lu(k,1437) = - lu(k,455) * lu(k,1420) + lu(k,1440) = lu(k,1440) - lu(k,456) * lu(k,1420) + lu(k,1443) = lu(k,1443) - lu(k,457) * lu(k,1420) + lu(k,1470) = lu(k,1470) - lu(k,451) * lu(k,1457) + lu(k,1475) = lu(k,1475) - lu(k,452) * lu(k,1457) + lu(k,1478) = - lu(k,453) * lu(k,1457) + lu(k,1479) = lu(k,1479) - lu(k,454) * lu(k,1457) + lu(k,1482) = lu(k,1482) - lu(k,455) * lu(k,1457) + lu(k,1485) = lu(k,1485) - lu(k,456) * lu(k,1457) + lu(k,1488) = lu(k,1488) - lu(k,457) * lu(k,1457) end do end subroutine lu_fac10 subroutine lu_fac11( avec_len, lu ) @@ -1731,55 +1779,6 @@ subroutine lu_fac11( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,451) = 1._r8 / lu(k,451) - lu(k,452) = lu(k,452) * lu(k,451) - lu(k,453) = lu(k,453) * lu(k,451) - lu(k,454) = lu(k,454) * lu(k,451) - lu(k,455) = lu(k,455) * lu(k,451) - lu(k,456) = lu(k,456) * lu(k,451) - lu(k,457) = lu(k,457) * lu(k,451) - lu(k,574) = lu(k,574) - lu(k,452) * lu(k,572) - lu(k,575) = lu(k,575) - lu(k,453) * lu(k,572) - lu(k,579) = lu(k,579) - lu(k,454) * lu(k,572) - lu(k,580) = lu(k,580) - lu(k,455) * lu(k,572) - lu(k,581) = lu(k,581) - lu(k,456) * lu(k,572) - lu(k,582) = - lu(k,457) * lu(k,572) - lu(k,860) = lu(k,860) - lu(k,452) * lu(k,858) - lu(k,863) = lu(k,863) - lu(k,453) * lu(k,858) - lu(k,868) = lu(k,868) - lu(k,454) * lu(k,858) - lu(k,869) = lu(k,869) - lu(k,455) * lu(k,858) - lu(k,870) = lu(k,870) - lu(k,456) * lu(k,858) - lu(k,872) = lu(k,872) - lu(k,457) * lu(k,858) - lu(k,955) = lu(k,955) - lu(k,452) * lu(k,951) - lu(k,959) = lu(k,959) - lu(k,453) * lu(k,951) - lu(k,968) = lu(k,968) - lu(k,454) * lu(k,951) - lu(k,969) = lu(k,969) - lu(k,455) * lu(k,951) - lu(k,970) = lu(k,970) - lu(k,456) * lu(k,951) - lu(k,973) = - lu(k,457) * lu(k,951) - lu(k,1074) = lu(k,1074) - lu(k,452) * lu(k,1056) - lu(k,1078) = lu(k,1078) - lu(k,453) * lu(k,1056) - lu(k,1087) = lu(k,1087) - lu(k,454) * lu(k,1056) - lu(k,1088) = lu(k,1088) - lu(k,455) * lu(k,1056) - lu(k,1089) = lu(k,1089) - lu(k,456) * lu(k,1056) - lu(k,1093) = lu(k,1093) - lu(k,457) * lu(k,1056) - lu(k,1310) = lu(k,1310) - lu(k,452) * lu(k,1302) - lu(k,1314) = lu(k,1314) - lu(k,453) * lu(k,1302) - lu(k,1323) = lu(k,1323) - lu(k,454) * lu(k,1302) - lu(k,1324) = lu(k,1324) - lu(k,455) * lu(k,1302) - lu(k,1325) = lu(k,1325) - lu(k,456) * lu(k,1302) - lu(k,1329) = lu(k,1329) - lu(k,457) * lu(k,1302) - lu(k,1399) = lu(k,1399) - lu(k,452) * lu(k,1374) - lu(k,1403) = lu(k,1403) - lu(k,453) * lu(k,1374) - lu(k,1412) = lu(k,1412) - lu(k,454) * lu(k,1374) - lu(k,1413) = lu(k,1413) - lu(k,455) * lu(k,1374) - lu(k,1414) = lu(k,1414) - lu(k,456) * lu(k,1374) - lu(k,1418) = lu(k,1418) - lu(k,457) * lu(k,1374) - lu(k,1444) = lu(k,1444) - lu(k,452) * lu(k,1432) - lu(k,1448) = lu(k,1448) - lu(k,453) * lu(k,1432) - lu(k,1457) = lu(k,1457) - lu(k,454) * lu(k,1432) - lu(k,1458) = lu(k,1458) - lu(k,455) * lu(k,1432) - lu(k,1459) = lu(k,1459) - lu(k,456) * lu(k,1432) - lu(k,1463) = lu(k,1463) - lu(k,457) * lu(k,1432) lu(k,460) = 1._r8 / lu(k,460) lu(k,461) = lu(k,461) * lu(k,460) lu(k,462) = lu(k,462) * lu(k,460) @@ -1792,50 +1791,50 @@ subroutine lu_fac11( avec_len, lu ) lu(k,469) = lu(k,469) * lu(k,460) lu(k,470) = lu(k,470) * lu(k,460) lu(k,471) = lu(k,471) * lu(k,460) - lu(k,1059) = lu(k,1059) - lu(k,461) * lu(k,1057) - lu(k,1062) = lu(k,1062) - lu(k,462) * lu(k,1057) - lu(k,1071) = lu(k,1071) - lu(k,463) * lu(k,1057) - lu(k,1076) = lu(k,1076) - lu(k,464) * lu(k,1057) - lu(k,1079) = lu(k,1079) - lu(k,465) * lu(k,1057) - lu(k,1080) = lu(k,1080) - lu(k,466) * lu(k,1057) - lu(k,1081) = lu(k,1081) - lu(k,467) * lu(k,1057) - lu(k,1084) = lu(k,1084) - lu(k,468) * lu(k,1057) - lu(k,1088) = lu(k,1088) - lu(k,469) * lu(k,1057) - lu(k,1090) = lu(k,1090) - lu(k,470) * lu(k,1057) - lu(k,1093) = lu(k,1093) - lu(k,471) * lu(k,1057) - lu(k,1172) = lu(k,1172) - lu(k,461) * lu(k,1171) - lu(k,1175) = lu(k,1175) - lu(k,462) * lu(k,1171) - lu(k,1184) = lu(k,1184) - lu(k,463) * lu(k,1171) - lu(k,1186) = lu(k,1186) - lu(k,464) * lu(k,1171) - lu(k,1189) = lu(k,1189) - lu(k,465) * lu(k,1171) - lu(k,1190) = lu(k,1190) - lu(k,466) * lu(k,1171) - lu(k,1191) = lu(k,1191) - lu(k,467) * lu(k,1171) - lu(k,1194) = lu(k,1194) - lu(k,468) * lu(k,1171) - lu(k,1198) = lu(k,1198) - lu(k,469) * lu(k,1171) - lu(k,1200) = lu(k,1200) - lu(k,470) * lu(k,1171) - lu(k,1203) = lu(k,1203) - lu(k,471) * lu(k,1171) - lu(k,1382) = lu(k,1382) - lu(k,461) * lu(k,1375) - lu(k,1386) = lu(k,1386) - lu(k,462) * lu(k,1375) - lu(k,1395) = lu(k,1395) - lu(k,463) * lu(k,1375) - lu(k,1401) = lu(k,1401) - lu(k,464) * lu(k,1375) - lu(k,1404) = lu(k,1404) - lu(k,465) * lu(k,1375) - lu(k,1405) = lu(k,1405) - lu(k,466) * lu(k,1375) - lu(k,1406) = lu(k,1406) - lu(k,467) * lu(k,1375) - lu(k,1409) = lu(k,1409) - lu(k,468) * lu(k,1375) - lu(k,1413) = lu(k,1413) - lu(k,469) * lu(k,1375) - lu(k,1415) = lu(k,1415) - lu(k,470) * lu(k,1375) - lu(k,1418) = lu(k,1418) - lu(k,471) * lu(k,1375) - lu(k,1479) = lu(k,1479) - lu(k,461) * lu(k,1473) - lu(k,1482) = lu(k,1482) - lu(k,462) * lu(k,1473) - lu(k,1491) = lu(k,1491) - lu(k,463) * lu(k,1473) - lu(k,1494) = lu(k,1494) - lu(k,464) * lu(k,1473) - lu(k,1497) = lu(k,1497) - lu(k,465) * lu(k,1473) - lu(k,1498) = lu(k,1498) - lu(k,466) * lu(k,1473) - lu(k,1499) = lu(k,1499) - lu(k,467) * lu(k,1473) - lu(k,1502) = lu(k,1502) - lu(k,468) * lu(k,1473) - lu(k,1506) = lu(k,1506) - lu(k,469) * lu(k,1473) - lu(k,1508) = lu(k,1508) - lu(k,470) * lu(k,1473) - lu(k,1511) = lu(k,1511) - lu(k,471) * lu(k,1473) + lu(k,958) = lu(k,958) - lu(k,461) * lu(k,956) + lu(k,960) = lu(k,960) - lu(k,462) * lu(k,956) + lu(k,969) = lu(k,969) - lu(k,463) * lu(k,956) + lu(k,971) = lu(k,971) - lu(k,464) * lu(k,956) + lu(k,973) = lu(k,973) - lu(k,465) * lu(k,956) + lu(k,976) = lu(k,976) - lu(k,466) * lu(k,956) + lu(k,977) = lu(k,977) - lu(k,467) * lu(k,956) + lu(k,979) = lu(k,979) - lu(k,468) * lu(k,956) + lu(k,983) = lu(k,983) - lu(k,469) * lu(k,956) + lu(k,984) = lu(k,984) - lu(k,470) * lu(k,956) + lu(k,988) = lu(k,988) - lu(k,471) * lu(k,956) + lu(k,1109) = lu(k,1109) - lu(k,461) * lu(k,1102) + lu(k,1111) = lu(k,1111) - lu(k,462) * lu(k,1102) + lu(k,1120) = lu(k,1120) - lu(k,463) * lu(k,1102) + lu(k,1123) = lu(k,1123) - lu(k,464) * lu(k,1102) + lu(k,1125) = lu(k,1125) - lu(k,465) * lu(k,1102) + lu(k,1128) = lu(k,1128) - lu(k,466) * lu(k,1102) + lu(k,1129) = lu(k,1129) - lu(k,467) * lu(k,1102) + lu(k,1131) = lu(k,1131) - lu(k,468) * lu(k,1102) + lu(k,1135) = lu(k,1135) - lu(k,469) * lu(k,1102) + lu(k,1136) = lu(k,1136) - lu(k,470) * lu(k,1102) + lu(k,1140) = lu(k,1140) - lu(k,471) * lu(k,1102) + lu(k,1236) = lu(k,1236) - lu(k,461) * lu(k,1228) + lu(k,1239) = lu(k,1239) - lu(k,462) * lu(k,1228) + lu(k,1248) = lu(k,1248) - lu(k,463) * lu(k,1228) + lu(k,1254) = lu(k,1254) - lu(k,464) * lu(k,1228) + lu(k,1256) = lu(k,1256) - lu(k,465) * lu(k,1228) + lu(k,1259) = lu(k,1259) - lu(k,466) * lu(k,1228) + lu(k,1260) = lu(k,1260) - lu(k,467) * lu(k,1228) + lu(k,1262) = lu(k,1262) - lu(k,468) * lu(k,1228) + lu(k,1266) = lu(k,1266) - lu(k,469) * lu(k,1228) + lu(k,1267) = lu(k,1267) - lu(k,470) * lu(k,1228) + lu(k,1271) = lu(k,1271) - lu(k,471) * lu(k,1228) + lu(k,1386) = lu(k,1386) - lu(k,461) * lu(k,1383) + lu(k,1388) = lu(k,1388) - lu(k,462) * lu(k,1383) + lu(k,1397) = lu(k,1397) - lu(k,463) * lu(k,1383) + lu(k,1402) = lu(k,1402) - lu(k,464) * lu(k,1383) + lu(k,1404) = lu(k,1404) - lu(k,465) * lu(k,1383) + lu(k,1407) = lu(k,1407) - lu(k,466) * lu(k,1383) + lu(k,1408) = lu(k,1408) - lu(k,467) * lu(k,1383) + lu(k,1410) = lu(k,1410) - lu(k,468) * lu(k,1383) + lu(k,1414) = lu(k,1414) - lu(k,469) * lu(k,1383) + lu(k,1415) = lu(k,1415) - lu(k,470) * lu(k,1383) + lu(k,1419) = lu(k,1419) - lu(k,471) * lu(k,1383) lu(k,473) = 1._r8 / lu(k,473) lu(k,474) = lu(k,474) * lu(k,473) lu(k,475) = lu(k,475) * lu(k,473) @@ -1852,51 +1851,51 @@ subroutine lu_fac11( avec_len, lu ) lu(k,486) = lu(k,486) * lu(k,473) lu(k,487) = lu(k,487) * lu(k,473) lu(k,488) = lu(k,488) * lu(k,473) - lu(k,1104) = - lu(k,474) * lu(k,1102) - lu(k,1108) = lu(k,1108) - lu(k,475) * lu(k,1102) - lu(k,1110) = lu(k,1110) - lu(k,476) * lu(k,1102) - lu(k,1111) = lu(k,1111) - lu(k,477) * lu(k,1102) - lu(k,1114) = lu(k,1114) - lu(k,478) * lu(k,1102) - lu(k,1116) = lu(k,1116) - lu(k,479) * lu(k,1102) - lu(k,1118) = lu(k,1118) - lu(k,480) * lu(k,1102) - lu(k,1125) = lu(k,1125) - lu(k,481) * lu(k,1102) - lu(k,1126) = lu(k,1126) - lu(k,482) * lu(k,1102) - lu(k,1127) = lu(k,1127) - lu(k,483) * lu(k,1102) - lu(k,1128) = lu(k,1128) - lu(k,484) * lu(k,1102) - lu(k,1130) = lu(k,1130) - lu(k,485) * lu(k,1102) - lu(k,1131) = lu(k,1131) - lu(k,486) * lu(k,1102) - lu(k,1134) = lu(k,1134) - lu(k,487) * lu(k,1102) - lu(k,1136) = lu(k,1136) - lu(k,488) * lu(k,1102) - lu(k,1214) = lu(k,1214) - lu(k,474) * lu(k,1212) - lu(k,1218) = lu(k,1218) - lu(k,475) * lu(k,1212) - lu(k,1220) = lu(k,1220) - lu(k,476) * lu(k,1212) - lu(k,1221) = lu(k,1221) - lu(k,477) * lu(k,1212) - lu(k,1224) = lu(k,1224) - lu(k,478) * lu(k,1212) - lu(k,1226) = lu(k,1226) - lu(k,479) * lu(k,1212) - lu(k,1228) = lu(k,1228) - lu(k,480) * lu(k,1212) - lu(k,1235) = lu(k,1235) - lu(k,481) * lu(k,1212) - lu(k,1236) = lu(k,1236) - lu(k,482) * lu(k,1212) - lu(k,1237) = lu(k,1237) - lu(k,483) * lu(k,1212) - lu(k,1238) = lu(k,1238) - lu(k,484) * lu(k,1212) - lu(k,1240) = lu(k,1240) - lu(k,485) * lu(k,1212) - lu(k,1241) = lu(k,1241) - lu(k,486) * lu(k,1212) - lu(k,1244) = lu(k,1244) - lu(k,487) * lu(k,1212) - lu(k,1246) = lu(k,1246) - lu(k,488) * lu(k,1212) - lu(k,1381) = lu(k,1381) - lu(k,474) * lu(k,1376) - lu(k,1385) = lu(k,1385) - lu(k,475) * lu(k,1376) - lu(k,1387) = lu(k,1387) - lu(k,476) * lu(k,1376) - lu(k,1388) = lu(k,1388) - lu(k,477) * lu(k,1376) - lu(k,1391) = lu(k,1391) - lu(k,478) * lu(k,1376) - lu(k,1393) = lu(k,1393) - lu(k,479) * lu(k,1376) - lu(k,1395) = lu(k,1395) - lu(k,480) * lu(k,1376) - lu(k,1404) = lu(k,1404) - lu(k,481) * lu(k,1376) - lu(k,1405) = lu(k,1405) - lu(k,482) * lu(k,1376) - lu(k,1406) = lu(k,1406) - lu(k,483) * lu(k,1376) - lu(k,1407) = lu(k,1407) - lu(k,484) * lu(k,1376) - lu(k,1409) = lu(k,1409) - lu(k,485) * lu(k,1376) - lu(k,1410) = lu(k,1410) - lu(k,486) * lu(k,1376) - lu(k,1413) = lu(k,1413) - lu(k,487) * lu(k,1376) - lu(k,1415) = lu(k,1415) - lu(k,488) * lu(k,1376) + lu(k,999) = lu(k,999) - lu(k,474) * lu(k,997) + lu(k,1003) = lu(k,1003) - lu(k,475) * lu(k,997) + lu(k,1005) = lu(k,1005) - lu(k,476) * lu(k,997) + lu(k,1006) = lu(k,1006) - lu(k,477) * lu(k,997) + lu(k,1009) = lu(k,1009) - lu(k,478) * lu(k,997) + lu(k,1011) = lu(k,1011) - lu(k,479) * lu(k,997) + lu(k,1013) = lu(k,1013) - lu(k,480) * lu(k,997) + lu(k,1019) = lu(k,1019) - lu(k,481) * lu(k,997) + lu(k,1020) = lu(k,1020) - lu(k,482) * lu(k,997) + lu(k,1022) = lu(k,1022) - lu(k,483) * lu(k,997) + lu(k,1023) = lu(k,1023) - lu(k,484) * lu(k,997) + lu(k,1025) = lu(k,1025) - lu(k,485) * lu(k,997) + lu(k,1029) = lu(k,1029) - lu(k,486) * lu(k,997) + lu(k,1030) = lu(k,1030) - lu(k,487) * lu(k,997) + lu(k,1033) = lu(k,1033) - lu(k,488) * lu(k,997) + lu(k,1234) = lu(k,1234) - lu(k,474) * lu(k,1229) + lu(k,1238) = lu(k,1238) - lu(k,475) * lu(k,1229) + lu(k,1240) = lu(k,1240) - lu(k,476) * lu(k,1229) + lu(k,1241) = lu(k,1241) - lu(k,477) * lu(k,1229) + lu(k,1244) = lu(k,1244) - lu(k,478) * lu(k,1229) + lu(k,1246) = lu(k,1246) - lu(k,479) * lu(k,1229) + lu(k,1248) = lu(k,1248) - lu(k,480) * lu(k,1229) + lu(k,1256) = lu(k,1256) - lu(k,481) * lu(k,1229) + lu(k,1257) = lu(k,1257) - lu(k,482) * lu(k,1229) + lu(k,1259) = lu(k,1259) - lu(k,483) * lu(k,1229) + lu(k,1260) = lu(k,1260) - lu(k,484) * lu(k,1229) + lu(k,1262) = lu(k,1262) - lu(k,485) * lu(k,1229) + lu(k,1266) = lu(k,1266) - lu(k,486) * lu(k,1229) + lu(k,1267) = lu(k,1267) - lu(k,487) * lu(k,1229) + lu(k,1270) = lu(k,1270) - lu(k,488) * lu(k,1229) + lu(k,1522) = - lu(k,474) * lu(k,1520) + lu(k,1526) = lu(k,1526) - lu(k,475) * lu(k,1520) + lu(k,1528) = lu(k,1528) - lu(k,476) * lu(k,1520) + lu(k,1529) = lu(k,1529) - lu(k,477) * lu(k,1520) + lu(k,1532) = lu(k,1532) - lu(k,478) * lu(k,1520) + lu(k,1534) = lu(k,1534) - lu(k,479) * lu(k,1520) + lu(k,1536) = lu(k,1536) - lu(k,480) * lu(k,1520) + lu(k,1542) = lu(k,1542) - lu(k,481) * lu(k,1520) + lu(k,1543) = lu(k,1543) - lu(k,482) * lu(k,1520) + lu(k,1545) = lu(k,1545) - lu(k,483) * lu(k,1520) + lu(k,1546) = lu(k,1546) - lu(k,484) * lu(k,1520) + lu(k,1548) = lu(k,1548) - lu(k,485) * lu(k,1520) + lu(k,1552) = lu(k,1552) - lu(k,486) * lu(k,1520) + lu(k,1553) = lu(k,1553) - lu(k,487) * lu(k,1520) + lu(k,1556) = lu(k,1556) - lu(k,488) * lu(k,1520) lu(k,490) = 1._r8 / lu(k,490) lu(k,491) = lu(k,491) * lu(k,490) lu(k,492) = lu(k,492) * lu(k,490) @@ -1910,49 +1909,49 @@ subroutine lu_fac11( avec_len, lu ) lu(k,828) = - lu(k,492) * lu(k,825) lu(k,829) = - lu(k,493) * lu(k,825) lu(k,830) = - lu(k,494) * lu(k,825) - lu(k,833) = lu(k,833) - lu(k,495) * lu(k,825) - lu(k,835) = - lu(k,496) * lu(k,825) - lu(k,836) = lu(k,836) - lu(k,497) * lu(k,825) + lu(k,831) = lu(k,831) - lu(k,495) * lu(k,825) + lu(k,833) = lu(k,833) - lu(k,496) * lu(k,825) + lu(k,836) = - lu(k,497) * lu(k,825) lu(k,837) = lu(k,837) - lu(k,498) * lu(k,825) - lu(k,1142) = - lu(k,491) * lu(k,1141) - lu(k,1152) = lu(k,1152) - lu(k,492) * lu(k,1141) - lu(k,1153) = - lu(k,493) * lu(k,1141) - lu(k,1154) = lu(k,1154) - lu(k,494) * lu(k,1141) - lu(k,1157) = lu(k,1157) - lu(k,495) * lu(k,1141) - lu(k,1160) = - lu(k,496) * lu(k,1141) - lu(k,1161) = lu(k,1161) - lu(k,497) * lu(k,1141) - lu(k,1162) = lu(k,1162) - lu(k,498) * lu(k,1141) - lu(k,1271) = lu(k,1271) - lu(k,491) * lu(k,1270) - lu(k,1281) = - lu(k,492) * lu(k,1270) - lu(k,1282) = lu(k,1282) - lu(k,493) * lu(k,1270) - lu(k,1283) = - lu(k,494) * lu(k,1270) - lu(k,1286) = lu(k,1286) - lu(k,495) * lu(k,1270) - lu(k,1289) = lu(k,1289) - lu(k,496) * lu(k,1270) - lu(k,1290) = lu(k,1290) - lu(k,497) * lu(k,1270) - lu(k,1291) = lu(k,1291) - lu(k,498) * lu(k,1270) - lu(k,1397) = lu(k,1397) - lu(k,491) * lu(k,1377) - lu(k,1408) = lu(k,1408) - lu(k,492) * lu(k,1377) - lu(k,1409) = lu(k,1409) - lu(k,493) * lu(k,1377) - lu(k,1410) = lu(k,1410) - lu(k,494) * lu(k,1377) - lu(k,1413) = lu(k,1413) - lu(k,495) * lu(k,1377) - lu(k,1416) = lu(k,1416) - lu(k,496) * lu(k,1377) - lu(k,1417) = lu(k,1417) - lu(k,497) * lu(k,1377) - lu(k,1418) = lu(k,1418) - lu(k,498) * lu(k,1377) - lu(k,1516) = lu(k,1516) - lu(k,491) * lu(k,1513) - lu(k,1526) = - lu(k,492) * lu(k,1513) - lu(k,1527) = lu(k,1527) - lu(k,493) * lu(k,1513) - lu(k,1528) = - lu(k,494) * lu(k,1513) - lu(k,1531) = lu(k,1531) - lu(k,495) * lu(k,1513) - lu(k,1534) = lu(k,1534) - lu(k,496) * lu(k,1513) - lu(k,1535) = lu(k,1535) - lu(k,497) * lu(k,1513) - lu(k,1536) = lu(k,1536) - lu(k,498) * lu(k,1513) + lu(k,927) = lu(k,927) - lu(k,491) * lu(k,924) + lu(k,931) = lu(k,931) - lu(k,492) * lu(k,924) + lu(k,932) = lu(k,932) - lu(k,493) * lu(k,924) + lu(k,933) = - lu(k,494) * lu(k,924) + lu(k,934) = lu(k,934) - lu(k,495) * lu(k,924) + lu(k,938) = lu(k,938) - lu(k,496) * lu(k,924) + lu(k,945) = - lu(k,497) * lu(k,924) + lu(k,947) = lu(k,947) - lu(k,498) * lu(k,924) + lu(k,1162) = lu(k,1162) - lu(k,491) * lu(k,1161) + lu(k,1166) = lu(k,1166) - lu(k,492) * lu(k,1161) + lu(k,1167) = lu(k,1167) - lu(k,493) * lu(k,1161) + lu(k,1168) = - lu(k,494) * lu(k,1161) + lu(k,1169) = lu(k,1169) - lu(k,495) * lu(k,1161) + lu(k,1173) = lu(k,1173) - lu(k,496) * lu(k,1161) + lu(k,1180) = - lu(k,497) * lu(k,1161) + lu(k,1182) = lu(k,1182) - lu(k,498) * lu(k,1161) + lu(k,1250) = lu(k,1250) - lu(k,491) * lu(k,1230) + lu(k,1255) = lu(k,1255) - lu(k,492) * lu(k,1230) + lu(k,1256) = lu(k,1256) - lu(k,493) * lu(k,1230) + lu(k,1257) = lu(k,1257) - lu(k,494) * lu(k,1230) + lu(k,1258) = lu(k,1258) - lu(k,495) * lu(k,1230) + lu(k,1262) = lu(k,1262) - lu(k,496) * lu(k,1230) + lu(k,1269) = lu(k,1269) - lu(k,497) * lu(k,1230) + lu(k,1271) = lu(k,1271) - lu(k,498) * lu(k,1230) + lu(k,1491) = - lu(k,491) * lu(k,1490) + lu(k,1495) = - lu(k,492) * lu(k,1490) + lu(k,1496) = - lu(k,493) * lu(k,1490) + lu(k,1497) = lu(k,1497) - lu(k,494) * lu(k,1490) + lu(k,1498) = lu(k,1498) - lu(k,495) * lu(k,1490) + lu(k,1502) = lu(k,1502) - lu(k,496) * lu(k,1490) + lu(k,1509) = lu(k,1509) - lu(k,497) * lu(k,1490) + lu(k,1511) = lu(k,1511) - lu(k,498) * lu(k,1490) lu(k,1563) = lu(k,1563) - lu(k,491) * lu(k,1561) - lu(k,1574) = - lu(k,492) * lu(k,1561) - lu(k,1575) = - lu(k,493) * lu(k,1561) - lu(k,1576) = - lu(k,494) * lu(k,1561) - lu(k,1579) = lu(k,1579) - lu(k,495) * lu(k,1561) - lu(k,1582) = - lu(k,496) * lu(k,1561) - lu(k,1583) = lu(k,1583) - lu(k,497) * lu(k,1561) + lu(k,1568) = - lu(k,492) * lu(k,1561) + lu(k,1569) = - lu(k,493) * lu(k,1561) + lu(k,1570) = - lu(k,494) * lu(k,1561) + lu(k,1571) = lu(k,1571) - lu(k,495) * lu(k,1561) + lu(k,1575) = lu(k,1575) - lu(k,496) * lu(k,1561) + lu(k,1582) = - lu(k,497) * lu(k,1561) lu(k,1584) = lu(k,1584) - lu(k,498) * lu(k,1561) end do end subroutine lu_fac11 @@ -1986,7 +1985,7 @@ subroutine lu_fac12( avec_len, lu ) lu(k,529) = - lu(k,506) * lu(k,524) lu(k,530) = - lu(k,507) * lu(k,524) lu(k,531) = lu(k,531) - lu(k,508) * lu(k,524) - lu(k,533) = lu(k,533) - lu(k,509) * lu(k,524) + lu(k,534) = lu(k,534) - lu(k,509) * lu(k,524) lu(k,537) = lu(k,537) - lu(k,502) * lu(k,536) lu(k,538) = lu(k,538) - lu(k,503) * lu(k,536) lu(k,539) = lu(k,539) - lu(k,504) * lu(k,536) @@ -1994,15 +1993,15 @@ subroutine lu_fac12( avec_len, lu ) lu(k,541) = - lu(k,506) * lu(k,536) lu(k,542) = - lu(k,507) * lu(k,536) lu(k,543) = lu(k,543) - lu(k,508) * lu(k,536) - lu(k,545) = lu(k,545) - lu(k,509) * lu(k,536) - lu(k,558) = lu(k,558) - lu(k,502) * lu(k,557) - lu(k,559) = lu(k,559) - lu(k,503) * lu(k,557) - lu(k,560) = lu(k,560) - lu(k,504) * lu(k,557) - lu(k,561) = lu(k,561) - lu(k,505) * lu(k,557) - lu(k,562) = - lu(k,506) * lu(k,557) - lu(k,563) = - lu(k,507) * lu(k,557) - lu(k,564) = lu(k,564) - lu(k,508) * lu(k,557) - lu(k,568) = lu(k,568) - lu(k,509) * lu(k,557) + lu(k,546) = lu(k,546) - lu(k,509) * lu(k,536) + lu(k,570) = lu(k,570) - lu(k,502) * lu(k,569) + lu(k,571) = lu(k,571) - lu(k,503) * lu(k,569) + lu(k,572) = lu(k,572) - lu(k,504) * lu(k,569) + lu(k,573) = lu(k,573) - lu(k,505) * lu(k,569) + lu(k,574) = - lu(k,506) * lu(k,569) + lu(k,575) = - lu(k,507) * lu(k,569) + lu(k,576) = lu(k,576) - lu(k,508) * lu(k,569) + lu(k,582) = lu(k,582) - lu(k,509) * lu(k,569) lu(k,810) = lu(k,810) - lu(k,502) * lu(k,809) lu(k,811) = - lu(k,503) * lu(k,809) lu(k,812) = - lu(k,504) * lu(k,809) @@ -2010,7 +2009,7 @@ subroutine lu_fac12( avec_len, lu ) lu(k,814) = lu(k,814) - lu(k,506) * lu(k,809) lu(k,815) = lu(k,815) - lu(k,507) * lu(k,809) lu(k,816) = lu(k,816) - lu(k,508) * lu(k,809) - lu(k,821) = lu(k,821) - lu(k,509) * lu(k,809) + lu(k,823) = lu(k,823) - lu(k,509) * lu(k,809) lu(k,899) = lu(k,899) - lu(k,502) * lu(k,898) lu(k,900) = lu(k,900) - lu(k,503) * lu(k,898) lu(k,901) = lu(k,901) - lu(k,504) * lu(k,898) @@ -2018,15 +2017,15 @@ subroutine lu_fac12( avec_len, lu ) lu(k,905) = - lu(k,506) * lu(k,898) lu(k,906) = - lu(k,507) * lu(k,898) lu(k,909) = lu(k,909) - lu(k,508) * lu(k,898) - lu(k,919) = lu(k,919) - lu(k,509) * lu(k,898) - lu(k,1434) = lu(k,1434) - lu(k,502) * lu(k,1433) - lu(k,1435) = lu(k,1435) - lu(k,503) * lu(k,1433) - lu(k,1436) = lu(k,1436) - lu(k,504) * lu(k,1433) - lu(k,1438) = lu(k,1438) - lu(k,505) * lu(k,1433) - lu(k,1440) = lu(k,1440) - lu(k,506) * lu(k,1433) - lu(k,1441) = - lu(k,507) * lu(k,1433) - lu(k,1446) = lu(k,1446) - lu(k,508) * lu(k,1433) - lu(k,1459) = lu(k,1459) - lu(k,509) * lu(k,1433) + lu(k,920) = lu(k,920) - lu(k,509) * lu(k,898) + lu(k,1459) = lu(k,1459) - lu(k,502) * lu(k,1458) + lu(k,1460) = lu(k,1460) - lu(k,503) * lu(k,1458) + lu(k,1461) = lu(k,1461) - lu(k,504) * lu(k,1458) + lu(k,1464) = lu(k,1464) - lu(k,505) * lu(k,1458) + lu(k,1465) = lu(k,1465) - lu(k,506) * lu(k,1458) + lu(k,1466) = - lu(k,507) * lu(k,1458) + lu(k,1471) = lu(k,1471) - lu(k,508) * lu(k,1458) + lu(k,1485) = lu(k,1485) - lu(k,509) * lu(k,1458) lu(k,511) = 1._r8 / lu(k,511) lu(k,512) = lu(k,512) * lu(k,511) lu(k,513) = lu(k,513) * lu(k,511) @@ -2049,41 +2048,41 @@ subroutine lu_fac12( avec_len, lu ) lu(k,544) = lu(k,544) - lu(k,516) * lu(k,537) lu(k,545) = lu(k,545) - lu(k,517) * lu(k,537) lu(k,546) = lu(k,546) - lu(k,518) * lu(k,537) - lu(k,559) = lu(k,559) - lu(k,512) * lu(k,558) - lu(k,560) = lu(k,560) - lu(k,513) * lu(k,558) - lu(k,561) = lu(k,561) - lu(k,514) * lu(k,558) - lu(k,564) = lu(k,564) - lu(k,515) * lu(k,558) - lu(k,566) = lu(k,566) - lu(k,516) * lu(k,558) - lu(k,568) = lu(k,568) - lu(k,517) * lu(k,558) - lu(k,569) = lu(k,569) - lu(k,518) * lu(k,558) + lu(k,571) = lu(k,571) - lu(k,512) * lu(k,570) + lu(k,572) = lu(k,572) - lu(k,513) * lu(k,570) + lu(k,573) = lu(k,573) - lu(k,514) * lu(k,570) + lu(k,576) = lu(k,576) - lu(k,515) * lu(k,570) + lu(k,579) = lu(k,579) - lu(k,516) * lu(k,570) + lu(k,580) = lu(k,580) - lu(k,517) * lu(k,570) + lu(k,582) = lu(k,582) - lu(k,518) * lu(k,570) lu(k,811) = lu(k,811) - lu(k,512) * lu(k,810) lu(k,812) = lu(k,812) - lu(k,513) * lu(k,810) lu(k,813) = lu(k,813) - lu(k,514) * lu(k,810) lu(k,816) = lu(k,816) - lu(k,515) * lu(k,810) lu(k,819) = - lu(k,516) * lu(k,810) - lu(k,821) = lu(k,821) - lu(k,517) * lu(k,810) - lu(k,822) = - lu(k,518) * lu(k,810) + lu(k,820) = - lu(k,517) * lu(k,810) + lu(k,823) = lu(k,823) - lu(k,518) * lu(k,810) lu(k,900) = lu(k,900) - lu(k,512) * lu(k,899) lu(k,901) = lu(k,901) - lu(k,513) * lu(k,899) lu(k,903) = lu(k,903) - lu(k,514) * lu(k,899) lu(k,909) = lu(k,909) - lu(k,515) * lu(k,899) - lu(k,916) = lu(k,916) - lu(k,516) * lu(k,899) - lu(k,919) = lu(k,919) - lu(k,517) * lu(k,899) + lu(k,912) = lu(k,912) - lu(k,516) * lu(k,899) + lu(k,913) = lu(k,913) - lu(k,517) * lu(k,899) lu(k,920) = lu(k,920) - lu(k,518) * lu(k,899) - lu(k,1435) = lu(k,1435) - lu(k,512) * lu(k,1434) - lu(k,1436) = lu(k,1436) - lu(k,513) * lu(k,1434) - lu(k,1438) = lu(k,1438) - lu(k,514) * lu(k,1434) - lu(k,1446) = lu(k,1446) - lu(k,515) * lu(k,1434) - lu(k,1456) = lu(k,1456) - lu(k,516) * lu(k,1434) - lu(k,1459) = lu(k,1459) - lu(k,517) * lu(k,1434) - lu(k,1460) = lu(k,1460) - lu(k,518) * lu(k,1434) - lu(k,1475) = lu(k,1475) - lu(k,512) * lu(k,1474) - lu(k,1476) = lu(k,1476) - lu(k,513) * lu(k,1474) - lu(k,1477) = lu(k,1477) - lu(k,514) * lu(k,1474) - lu(k,1494) = lu(k,1494) - lu(k,515) * lu(k,1474) - lu(k,1504) = - lu(k,516) * lu(k,1474) - lu(k,1507) = lu(k,1507) - lu(k,517) * lu(k,1474) - lu(k,1508) = lu(k,1508) - lu(k,518) * lu(k,1474) + lu(k,1104) = lu(k,1104) - lu(k,512) * lu(k,1103) + lu(k,1105) = lu(k,1105) - lu(k,513) * lu(k,1103) + lu(k,1106) = lu(k,1106) - lu(k,514) * lu(k,1103) + lu(k,1123) = lu(k,1123) - lu(k,515) * lu(k,1103) + lu(k,1129) = lu(k,1129) - lu(k,516) * lu(k,1103) + lu(k,1130) = - lu(k,517) * lu(k,1103) + lu(k,1137) = lu(k,1137) - lu(k,518) * lu(k,1103) + lu(k,1460) = lu(k,1460) - lu(k,512) * lu(k,1459) + lu(k,1461) = lu(k,1461) - lu(k,513) * lu(k,1459) + lu(k,1464) = lu(k,1464) - lu(k,514) * lu(k,1459) + lu(k,1471) = lu(k,1471) - lu(k,515) * lu(k,1459) + lu(k,1477) = lu(k,1477) - lu(k,516) * lu(k,1459) + lu(k,1478) = lu(k,1478) - lu(k,517) * lu(k,1459) + lu(k,1485) = lu(k,1485) - lu(k,518) * lu(k,1459) lu(k,526) = 1._r8 / lu(k,526) lu(k,527) = lu(k,527) * lu(k,526) lu(k,528) = lu(k,528) * lu(k,526) @@ -2101,46 +2100,46 @@ subroutine lu_fac12( avec_len, lu ) lu(k,544) = lu(k,544) - lu(k,532) * lu(k,538) lu(k,545) = lu(k,545) - lu(k,533) * lu(k,538) lu(k,546) = lu(k,546) - lu(k,534) * lu(k,538) - lu(k,560) = lu(k,560) - lu(k,527) * lu(k,559) - lu(k,561) = lu(k,561) - lu(k,528) * lu(k,559) - lu(k,562) = lu(k,562) - lu(k,529) * lu(k,559) - lu(k,563) = lu(k,563) - lu(k,530) * lu(k,559) - lu(k,564) = lu(k,564) - lu(k,531) * lu(k,559) - lu(k,566) = lu(k,566) - lu(k,532) * lu(k,559) - lu(k,568) = lu(k,568) - lu(k,533) * lu(k,559) - lu(k,569) = lu(k,569) - lu(k,534) * lu(k,559) + lu(k,572) = lu(k,572) - lu(k,527) * lu(k,571) + lu(k,573) = lu(k,573) - lu(k,528) * lu(k,571) + lu(k,574) = lu(k,574) - lu(k,529) * lu(k,571) + lu(k,575) = lu(k,575) - lu(k,530) * lu(k,571) + lu(k,576) = lu(k,576) - lu(k,531) * lu(k,571) + lu(k,579) = lu(k,579) - lu(k,532) * lu(k,571) + lu(k,580) = lu(k,580) - lu(k,533) * lu(k,571) + lu(k,582) = lu(k,582) - lu(k,534) * lu(k,571) lu(k,812) = lu(k,812) - lu(k,527) * lu(k,811) lu(k,813) = lu(k,813) - lu(k,528) * lu(k,811) lu(k,814) = lu(k,814) - lu(k,529) * lu(k,811) lu(k,815) = lu(k,815) - lu(k,530) * lu(k,811) lu(k,816) = lu(k,816) - lu(k,531) * lu(k,811) lu(k,819) = lu(k,819) - lu(k,532) * lu(k,811) - lu(k,821) = lu(k,821) - lu(k,533) * lu(k,811) - lu(k,822) = lu(k,822) - lu(k,534) * lu(k,811) + lu(k,820) = lu(k,820) - lu(k,533) * lu(k,811) + lu(k,823) = lu(k,823) - lu(k,534) * lu(k,811) lu(k,901) = lu(k,901) - lu(k,527) * lu(k,900) lu(k,903) = lu(k,903) - lu(k,528) * lu(k,900) lu(k,905) = lu(k,905) - lu(k,529) * lu(k,900) lu(k,906) = lu(k,906) - lu(k,530) * lu(k,900) lu(k,909) = lu(k,909) - lu(k,531) * lu(k,900) - lu(k,916) = lu(k,916) - lu(k,532) * lu(k,900) - lu(k,919) = lu(k,919) - lu(k,533) * lu(k,900) + lu(k,912) = lu(k,912) - lu(k,532) * lu(k,900) + lu(k,913) = lu(k,913) - lu(k,533) * lu(k,900) lu(k,920) = lu(k,920) - lu(k,534) * lu(k,900) - lu(k,1436) = lu(k,1436) - lu(k,527) * lu(k,1435) - lu(k,1438) = lu(k,1438) - lu(k,528) * lu(k,1435) - lu(k,1440) = lu(k,1440) - lu(k,529) * lu(k,1435) - lu(k,1441) = lu(k,1441) - lu(k,530) * lu(k,1435) - lu(k,1446) = lu(k,1446) - lu(k,531) * lu(k,1435) - lu(k,1456) = lu(k,1456) - lu(k,532) * lu(k,1435) - lu(k,1459) = lu(k,1459) - lu(k,533) * lu(k,1435) - lu(k,1460) = lu(k,1460) - lu(k,534) * lu(k,1435) - lu(k,1476) = lu(k,1476) - lu(k,527) * lu(k,1475) - lu(k,1477) = lu(k,1477) - lu(k,528) * lu(k,1475) - lu(k,1483) = lu(k,1483) - lu(k,529) * lu(k,1475) - lu(k,1492) = lu(k,1492) - lu(k,530) * lu(k,1475) - lu(k,1494) = lu(k,1494) - lu(k,531) * lu(k,1475) - lu(k,1504) = lu(k,1504) - lu(k,532) * lu(k,1475) - lu(k,1507) = lu(k,1507) - lu(k,533) * lu(k,1475) - lu(k,1508) = lu(k,1508) - lu(k,534) * lu(k,1475) + lu(k,1105) = lu(k,1105) - lu(k,527) * lu(k,1104) + lu(k,1106) = lu(k,1106) - lu(k,528) * lu(k,1104) + lu(k,1112) = lu(k,1112) - lu(k,529) * lu(k,1104) + lu(k,1121) = lu(k,1121) - lu(k,530) * lu(k,1104) + lu(k,1123) = lu(k,1123) - lu(k,531) * lu(k,1104) + lu(k,1129) = lu(k,1129) - lu(k,532) * lu(k,1104) + lu(k,1130) = lu(k,1130) - lu(k,533) * lu(k,1104) + lu(k,1137) = lu(k,1137) - lu(k,534) * lu(k,1104) + lu(k,1461) = lu(k,1461) - lu(k,527) * lu(k,1460) + lu(k,1464) = lu(k,1464) - lu(k,528) * lu(k,1460) + lu(k,1465) = lu(k,1465) - lu(k,529) * lu(k,1460) + lu(k,1466) = lu(k,1466) - lu(k,530) * lu(k,1460) + lu(k,1471) = lu(k,1471) - lu(k,531) * lu(k,1460) + lu(k,1477) = lu(k,1477) - lu(k,532) * lu(k,1460) + lu(k,1478) = lu(k,1478) - lu(k,533) * lu(k,1460) + lu(k,1485) = lu(k,1485) - lu(k,534) * lu(k,1460) lu(k,539) = 1._r8 / lu(k,539) lu(k,540) = lu(k,540) * lu(k,539) lu(k,541) = lu(k,541) * lu(k,539) @@ -2149,41 +2148,41 @@ subroutine lu_fac12( avec_len, lu ) lu(k,544) = lu(k,544) * lu(k,539) lu(k,545) = lu(k,545) * lu(k,539) lu(k,546) = lu(k,546) * lu(k,539) - lu(k,561) = lu(k,561) - lu(k,540) * lu(k,560) - lu(k,562) = lu(k,562) - lu(k,541) * lu(k,560) - lu(k,563) = lu(k,563) - lu(k,542) * lu(k,560) - lu(k,564) = lu(k,564) - lu(k,543) * lu(k,560) - lu(k,566) = lu(k,566) - lu(k,544) * lu(k,560) - lu(k,568) = lu(k,568) - lu(k,545) * lu(k,560) - lu(k,569) = lu(k,569) - lu(k,546) * lu(k,560) + lu(k,573) = lu(k,573) - lu(k,540) * lu(k,572) + lu(k,574) = lu(k,574) - lu(k,541) * lu(k,572) + lu(k,575) = lu(k,575) - lu(k,542) * lu(k,572) + lu(k,576) = lu(k,576) - lu(k,543) * lu(k,572) + lu(k,579) = lu(k,579) - lu(k,544) * lu(k,572) + lu(k,580) = lu(k,580) - lu(k,545) * lu(k,572) + lu(k,582) = lu(k,582) - lu(k,546) * lu(k,572) lu(k,813) = lu(k,813) - lu(k,540) * lu(k,812) lu(k,814) = lu(k,814) - lu(k,541) * lu(k,812) lu(k,815) = lu(k,815) - lu(k,542) * lu(k,812) lu(k,816) = lu(k,816) - lu(k,543) * lu(k,812) lu(k,819) = lu(k,819) - lu(k,544) * lu(k,812) - lu(k,821) = lu(k,821) - lu(k,545) * lu(k,812) - lu(k,822) = lu(k,822) - lu(k,546) * lu(k,812) + lu(k,820) = lu(k,820) - lu(k,545) * lu(k,812) + lu(k,823) = lu(k,823) - lu(k,546) * lu(k,812) lu(k,903) = lu(k,903) - lu(k,540) * lu(k,901) lu(k,905) = lu(k,905) - lu(k,541) * lu(k,901) lu(k,906) = lu(k,906) - lu(k,542) * lu(k,901) lu(k,909) = lu(k,909) - lu(k,543) * lu(k,901) - lu(k,916) = lu(k,916) - lu(k,544) * lu(k,901) - lu(k,919) = lu(k,919) - lu(k,545) * lu(k,901) + lu(k,912) = lu(k,912) - lu(k,544) * lu(k,901) + lu(k,913) = lu(k,913) - lu(k,545) * lu(k,901) lu(k,920) = lu(k,920) - lu(k,546) * lu(k,901) - lu(k,1438) = lu(k,1438) - lu(k,540) * lu(k,1436) - lu(k,1440) = lu(k,1440) - lu(k,541) * lu(k,1436) - lu(k,1441) = lu(k,1441) - lu(k,542) * lu(k,1436) - lu(k,1446) = lu(k,1446) - lu(k,543) * lu(k,1436) - lu(k,1456) = lu(k,1456) - lu(k,544) * lu(k,1436) - lu(k,1459) = lu(k,1459) - lu(k,545) * lu(k,1436) - lu(k,1460) = lu(k,1460) - lu(k,546) * lu(k,1436) - lu(k,1477) = lu(k,1477) - lu(k,540) * lu(k,1476) - lu(k,1483) = lu(k,1483) - lu(k,541) * lu(k,1476) - lu(k,1492) = lu(k,1492) - lu(k,542) * lu(k,1476) - lu(k,1494) = lu(k,1494) - lu(k,543) * lu(k,1476) - lu(k,1504) = lu(k,1504) - lu(k,544) * lu(k,1476) - lu(k,1507) = lu(k,1507) - lu(k,545) * lu(k,1476) - lu(k,1508) = lu(k,1508) - lu(k,546) * lu(k,1476) + lu(k,1106) = lu(k,1106) - lu(k,540) * lu(k,1105) + lu(k,1112) = lu(k,1112) - lu(k,541) * lu(k,1105) + lu(k,1121) = lu(k,1121) - lu(k,542) * lu(k,1105) + lu(k,1123) = lu(k,1123) - lu(k,543) * lu(k,1105) + lu(k,1129) = lu(k,1129) - lu(k,544) * lu(k,1105) + lu(k,1130) = lu(k,1130) - lu(k,545) * lu(k,1105) + lu(k,1137) = lu(k,1137) - lu(k,546) * lu(k,1105) + lu(k,1464) = lu(k,1464) - lu(k,540) * lu(k,1461) + lu(k,1465) = lu(k,1465) - lu(k,541) * lu(k,1461) + lu(k,1466) = lu(k,1466) - lu(k,542) * lu(k,1461) + lu(k,1471) = lu(k,1471) - lu(k,543) * lu(k,1461) + lu(k,1477) = lu(k,1477) - lu(k,544) * lu(k,1461) + lu(k,1478) = lu(k,1478) - lu(k,545) * lu(k,1461) + lu(k,1485) = lu(k,1485) - lu(k,546) * lu(k,1461) lu(k,548) = 1._r8 / lu(k,548) lu(k,549) = lu(k,549) * lu(k,548) lu(k,550) = lu(k,550) * lu(k,548) @@ -2191,54 +2190,54 @@ subroutine lu_fac12( avec_len, lu ) lu(k,552) = lu(k,552) * lu(k,548) lu(k,553) = lu(k,553) * lu(k,548) lu(k,841) = lu(k,841) - lu(k,549) * lu(k,840) - lu(k,847) = - lu(k,550) * lu(k,840) - lu(k,850) = lu(k,850) - lu(k,551) * lu(k,840) - lu(k,851) = lu(k,851) - lu(k,552) * lu(k,840) + lu(k,847) = lu(k,847) - lu(k,550) * lu(k,840) + lu(k,851) = - lu(k,551) * lu(k,840) + lu(k,852) = lu(k,852) - lu(k,552) * lu(k,840) lu(k,854) = - lu(k,553) * lu(k,840) lu(k,907) = lu(k,907) - lu(k,549) * lu(k,902) lu(k,914) = lu(k,914) - lu(k,550) * lu(k,902) lu(k,918) = lu(k,918) - lu(k,551) * lu(k,902) - lu(k,919) = lu(k,919) - lu(k,552) * lu(k,902) + lu(k,920) = lu(k,920) - lu(k,552) * lu(k,902) lu(k,922) = - lu(k,553) * lu(k,902) - lu(k,928) = lu(k,928) - lu(k,549) * lu(k,927) - lu(k,936) = lu(k,936) - lu(k,550) * lu(k,927) - lu(k,942) = lu(k,942) - lu(k,551) * lu(k,927) - lu(k,943) = lu(k,943) - lu(k,552) * lu(k,927) - lu(k,946) = lu(k,946) - lu(k,553) * lu(k,927) - lu(k,954) = lu(k,954) - lu(k,549) * lu(k,952) - lu(k,962) = lu(k,962) - lu(k,550) * lu(k,952) - lu(k,969) = lu(k,969) - lu(k,551) * lu(k,952) - lu(k,970) = lu(k,970) - lu(k,552) * lu(k,952) - lu(k,973) = lu(k,973) - lu(k,553) * lu(k,952) - lu(k,990) = lu(k,990) - lu(k,549) * lu(k,981) - lu(k,998) = lu(k,998) - lu(k,550) * lu(k,981) - lu(k,1005) = lu(k,1005) - lu(k,551) * lu(k,981) - lu(k,1006) = lu(k,1006) - lu(k,552) * lu(k,981) - lu(k,1010) = lu(k,1010) - lu(k,553) * lu(k,981) - lu(k,1120) = lu(k,1120) - lu(k,549) * lu(k,1103) - lu(k,1127) = lu(k,1127) - lu(k,550) * lu(k,1103) - lu(k,1134) = lu(k,1134) - lu(k,551) * lu(k,1103) - lu(k,1135) = lu(k,1135) - lu(k,552) * lu(k,1103) - lu(k,1139) = lu(k,1139) - lu(k,553) * lu(k,1103) - lu(k,1230) = - lu(k,549) * lu(k,1213) - lu(k,1237) = lu(k,1237) - lu(k,550) * lu(k,1213) - lu(k,1244) = lu(k,1244) - lu(k,551) * lu(k,1213) - lu(k,1245) = lu(k,1245) - lu(k,552) * lu(k,1213) - lu(k,1249) = lu(k,1249) - lu(k,553) * lu(k,1213) - lu(k,1398) = lu(k,1398) - lu(k,549) * lu(k,1378) - lu(k,1406) = lu(k,1406) - lu(k,550) * lu(k,1378) - lu(k,1413) = lu(k,1413) - lu(k,551) * lu(k,1378) - lu(k,1414) = lu(k,1414) - lu(k,552) * lu(k,1378) - lu(k,1418) = lu(k,1418) - lu(k,553) * lu(k,1378) - lu(k,1443) = lu(k,1443) - lu(k,549) * lu(k,1437) - lu(k,1451) = lu(k,1451) - lu(k,550) * lu(k,1437) - lu(k,1458) = lu(k,1458) - lu(k,551) * lu(k,1437) - lu(k,1459) = lu(k,1459) - lu(k,552) * lu(k,1437) - lu(k,1463) = lu(k,1463) - lu(k,553) * lu(k,1437) + lu(k,1015) = - lu(k,549) * lu(k,998) + lu(k,1025) = lu(k,1025) - lu(k,550) * lu(k,998) + lu(k,1029) = lu(k,1029) - lu(k,551) * lu(k,998) + lu(k,1031) = lu(k,1031) - lu(k,552) * lu(k,998) + lu(k,1034) = lu(k,1034) - lu(k,553) * lu(k,998) + lu(k,1072) = lu(k,1072) - lu(k,549) * lu(k,1063) + lu(k,1083) = lu(k,1083) - lu(k,550) * lu(k,1063) + lu(k,1087) = lu(k,1087) - lu(k,551) * lu(k,1063) + lu(k,1089) = lu(k,1089) - lu(k,552) * lu(k,1063) + lu(k,1092) = lu(k,1092) - lu(k,553) * lu(k,1063) + lu(k,1251) = lu(k,1251) - lu(k,549) * lu(k,1231) + lu(k,1262) = lu(k,1262) - lu(k,550) * lu(k,1231) + lu(k,1266) = lu(k,1266) - lu(k,551) * lu(k,1231) + lu(k,1268) = lu(k,1268) - lu(k,552) * lu(k,1231) + lu(k,1271) = lu(k,1271) - lu(k,553) * lu(k,1231) + lu(k,1317) = lu(k,1317) - lu(k,549) * lu(k,1315) + lu(k,1327) = lu(k,1327) - lu(k,550) * lu(k,1315) + lu(k,1331) = lu(k,1331) - lu(k,551) * lu(k,1315) + lu(k,1333) = lu(k,1333) - lu(k,552) * lu(k,1315) + lu(k,1336) = lu(k,1336) - lu(k,553) * lu(k,1315) + lu(k,1342) = lu(k,1342) - lu(k,549) * lu(k,1341) + lu(k,1351) = lu(k,1351) - lu(k,550) * lu(k,1341) + lu(k,1355) = lu(k,1355) - lu(k,551) * lu(k,1341) + lu(k,1357) = lu(k,1357) - lu(k,552) * lu(k,1341) + lu(k,1360) = lu(k,1360) - lu(k,553) * lu(k,1341) + lu(k,1468) = lu(k,1468) - lu(k,549) * lu(k,1462) + lu(k,1479) = lu(k,1479) - lu(k,550) * lu(k,1462) + lu(k,1483) = lu(k,1483) - lu(k,551) * lu(k,1462) + lu(k,1485) = lu(k,1485) - lu(k,552) * lu(k,1462) + lu(k,1488) = lu(k,1488) - lu(k,553) * lu(k,1462) + lu(k,1538) = lu(k,1538) - lu(k,549) * lu(k,1521) + lu(k,1548) = lu(k,1548) - lu(k,550) * lu(k,1521) + lu(k,1552) = lu(k,1552) - lu(k,551) * lu(k,1521) + lu(k,1554) = lu(k,1554) - lu(k,552) * lu(k,1521) + lu(k,1557) = lu(k,1557) - lu(k,553) * lu(k,1521) lu(k,1564) = - lu(k,549) * lu(k,1562) - lu(k,1572) = - lu(k,550) * lu(k,1562) - lu(k,1579) = lu(k,1579) - lu(k,551) * lu(k,1562) - lu(k,1580) = lu(k,1580) - lu(k,552) * lu(k,1562) + lu(k,1575) = lu(k,1575) - lu(k,550) * lu(k,1562) + lu(k,1579) = - lu(k,551) * lu(k,1562) + lu(k,1581) = lu(k,1581) - lu(k,552) * lu(k,1562) lu(k,1584) = lu(k,1584) - lu(k,553) * lu(k,1562) end do end subroutine lu_fac12 @@ -2256,70 +2255,70 @@ subroutine lu_fac13( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,561) = 1._r8 / lu(k,561) - lu(k,562) = lu(k,562) * lu(k,561) - lu(k,563) = lu(k,563) * lu(k,561) - lu(k,564) = lu(k,564) * lu(k,561) - lu(k,565) = lu(k,565) * lu(k,561) - lu(k,566) = lu(k,566) * lu(k,561) - lu(k,567) = lu(k,567) * lu(k,561) - lu(k,568) = lu(k,568) * lu(k,561) - lu(k,569) = lu(k,569) * lu(k,561) - lu(k,570) = lu(k,570) * lu(k,561) - lu(k,814) = lu(k,814) - lu(k,562) * lu(k,813) - lu(k,815) = lu(k,815) - lu(k,563) * lu(k,813) - lu(k,816) = lu(k,816) - lu(k,564) * lu(k,813) - lu(k,817) = - lu(k,565) * lu(k,813) - lu(k,819) = lu(k,819) - lu(k,566) * lu(k,813) - lu(k,820) = - lu(k,567) * lu(k,813) - lu(k,821) = lu(k,821) - lu(k,568) * lu(k,813) - lu(k,822) = lu(k,822) - lu(k,569) * lu(k,813) - lu(k,823) = - lu(k,570) * lu(k,813) - lu(k,905) = lu(k,905) - lu(k,562) * lu(k,903) - lu(k,906) = lu(k,906) - lu(k,563) * lu(k,903) - lu(k,909) = lu(k,909) - lu(k,564) * lu(k,903) - lu(k,912) = - lu(k,565) * lu(k,903) - lu(k,916) = lu(k,916) - lu(k,566) * lu(k,903) - lu(k,918) = lu(k,918) - lu(k,567) * lu(k,903) - lu(k,919) = lu(k,919) - lu(k,568) * lu(k,903) - lu(k,920) = lu(k,920) - lu(k,569) * lu(k,903) - lu(k,921) = lu(k,921) - lu(k,570) * lu(k,903) - lu(k,985) = - lu(k,562) * lu(k,982) - lu(k,989) = lu(k,989) - lu(k,563) * lu(k,982) - lu(k,993) = lu(k,993) - lu(k,564) * lu(k,982) - lu(k,996) = lu(k,996) - lu(k,565) * lu(k,982) - lu(k,1003) = lu(k,1003) - lu(k,566) * lu(k,982) - lu(k,1005) = lu(k,1005) - lu(k,567) * lu(k,982) - lu(k,1006) = lu(k,1006) - lu(k,568) * lu(k,982) - lu(k,1007) = lu(k,1007) - lu(k,569) * lu(k,982) - lu(k,1009) = - lu(k,570) * lu(k,982) - lu(k,1387) = lu(k,1387) - lu(k,562) * lu(k,1379) - lu(k,1396) = lu(k,1396) - lu(k,563) * lu(k,1379) - lu(k,1401) = lu(k,1401) - lu(k,564) * lu(k,1379) - lu(k,1404) = lu(k,1404) - lu(k,565) * lu(k,1379) - lu(k,1411) = lu(k,1411) - lu(k,566) * lu(k,1379) - lu(k,1413) = lu(k,1413) - lu(k,567) * lu(k,1379) - lu(k,1414) = lu(k,1414) - lu(k,568) * lu(k,1379) - lu(k,1415) = lu(k,1415) - lu(k,569) * lu(k,1379) - lu(k,1417) = lu(k,1417) - lu(k,570) * lu(k,1379) - lu(k,1440) = lu(k,1440) - lu(k,562) * lu(k,1438) - lu(k,1441) = lu(k,1441) - lu(k,563) * lu(k,1438) - lu(k,1446) = lu(k,1446) - lu(k,564) * lu(k,1438) - lu(k,1449) = lu(k,1449) - lu(k,565) * lu(k,1438) - lu(k,1456) = lu(k,1456) - lu(k,566) * lu(k,1438) - lu(k,1458) = lu(k,1458) - lu(k,567) * lu(k,1438) - lu(k,1459) = lu(k,1459) - lu(k,568) * lu(k,1438) - lu(k,1460) = lu(k,1460) - lu(k,569) * lu(k,1438) - lu(k,1462) = lu(k,1462) - lu(k,570) * lu(k,1438) - lu(k,1483) = lu(k,1483) - lu(k,562) * lu(k,1477) - lu(k,1492) = lu(k,1492) - lu(k,563) * lu(k,1477) - lu(k,1494) = lu(k,1494) - lu(k,564) * lu(k,1477) - lu(k,1497) = lu(k,1497) - lu(k,565) * lu(k,1477) - lu(k,1504) = lu(k,1504) - lu(k,566) * lu(k,1477) - lu(k,1506) = lu(k,1506) - lu(k,567) * lu(k,1477) - lu(k,1507) = lu(k,1507) - lu(k,568) * lu(k,1477) - lu(k,1508) = lu(k,1508) - lu(k,569) * lu(k,1477) - lu(k,1510) = - lu(k,570) * lu(k,1477) + lu(k,556) = 1._r8 / lu(k,556) + lu(k,557) = lu(k,557) * lu(k,556) + lu(k,558) = lu(k,558) * lu(k,556) + lu(k,559) = lu(k,559) * lu(k,556) + lu(k,560) = lu(k,560) * lu(k,556) + lu(k,561) = lu(k,561) * lu(k,556) + lu(k,562) = lu(k,562) * lu(k,556) + lu(k,563) = lu(k,563) * lu(k,556) + lu(k,564) = lu(k,564) * lu(k,556) + lu(k,565) = lu(k,565) * lu(k,556) + lu(k,860) = lu(k,860) - lu(k,557) * lu(k,859) + lu(k,862) = - lu(k,558) * lu(k,859) + lu(k,864) = - lu(k,559) * lu(k,859) + lu(k,866) = lu(k,866) - lu(k,560) * lu(k,859) + lu(k,867) = lu(k,867) - lu(k,561) * lu(k,859) + lu(k,868) = lu(k,868) - lu(k,562) * lu(k,859) + lu(k,870) = lu(k,870) - lu(k,563) * lu(k,859) + lu(k,871) = lu(k,871) - lu(k,564) * lu(k,859) + lu(k,872) = lu(k,872) - lu(k,565) * lu(k,859) + lu(k,1073) = lu(k,1073) - lu(k,557) * lu(k,1064) + lu(k,1078) = lu(k,1078) - lu(k,558) * lu(k,1064) + lu(k,1080) = lu(k,1080) - lu(k,559) * lu(k,1064) + lu(k,1083) = lu(k,1083) - lu(k,560) * lu(k,1064) + lu(k,1084) = lu(k,1084) - lu(k,561) * lu(k,1064) + lu(k,1085) = lu(k,1085) - lu(k,562) * lu(k,1064) + lu(k,1089) = lu(k,1089) - lu(k,563) * lu(k,1064) + lu(k,1090) = lu(k,1090) - lu(k,564) * lu(k,1064) + lu(k,1092) = lu(k,1092) - lu(k,565) * lu(k,1064) + lu(k,1252) = lu(k,1252) - lu(k,557) * lu(k,1232) + lu(k,1257) = lu(k,1257) - lu(k,558) * lu(k,1232) + lu(k,1259) = lu(k,1259) - lu(k,559) * lu(k,1232) + lu(k,1262) = lu(k,1262) - lu(k,560) * lu(k,1232) + lu(k,1263) = lu(k,1263) - lu(k,561) * lu(k,1232) + lu(k,1264) = lu(k,1264) - lu(k,562) * lu(k,1232) + lu(k,1268) = lu(k,1268) - lu(k,563) * lu(k,1232) + lu(k,1269) = lu(k,1269) - lu(k,564) * lu(k,1232) + lu(k,1271) = lu(k,1271) - lu(k,565) * lu(k,1232) + lu(k,1290) = lu(k,1290) - lu(k,557) * lu(k,1283) + lu(k,1295) = lu(k,1295) - lu(k,558) * lu(k,1283) + lu(k,1297) = lu(k,1297) - lu(k,559) * lu(k,1283) + lu(k,1300) = lu(k,1300) - lu(k,560) * lu(k,1283) + lu(k,1301) = lu(k,1301) - lu(k,561) * lu(k,1283) + lu(k,1302) = lu(k,1302) - lu(k,562) * lu(k,1283) + lu(k,1306) = lu(k,1306) - lu(k,563) * lu(k,1283) + lu(k,1307) = - lu(k,564) * lu(k,1283) + lu(k,1309) = lu(k,1309) - lu(k,565) * lu(k,1283) + lu(k,1318) = lu(k,1318) - lu(k,557) * lu(k,1316) + lu(k,1322) = - lu(k,558) * lu(k,1316) + lu(k,1324) = lu(k,1324) - lu(k,559) * lu(k,1316) + lu(k,1327) = lu(k,1327) - lu(k,560) * lu(k,1316) + lu(k,1328) = lu(k,1328) - lu(k,561) * lu(k,1316) + lu(k,1329) = lu(k,1329) - lu(k,562) * lu(k,1316) + lu(k,1333) = lu(k,1333) - lu(k,563) * lu(k,1316) + lu(k,1334) = - lu(k,564) * lu(k,1316) + lu(k,1336) = lu(k,1336) - lu(k,565) * lu(k,1316) + lu(k,1469) = lu(k,1469) - lu(k,557) * lu(k,1463) + lu(k,1474) = lu(k,1474) - lu(k,558) * lu(k,1463) + lu(k,1476) = lu(k,1476) - lu(k,559) * lu(k,1463) + lu(k,1479) = lu(k,1479) - lu(k,560) * lu(k,1463) + lu(k,1480) = lu(k,1480) - lu(k,561) * lu(k,1463) + lu(k,1481) = lu(k,1481) - lu(k,562) * lu(k,1463) + lu(k,1485) = lu(k,1485) - lu(k,563) * lu(k,1463) + lu(k,1486) = lu(k,1486) - lu(k,564) * lu(k,1463) + lu(k,1488) = lu(k,1488) - lu(k,565) * lu(k,1463) lu(k,573) = 1._r8 / lu(k,573) lu(k,574) = lu(k,574) * lu(k,573) lu(k,575) = lu(k,575) * lu(k,573) @@ -2330,60 +2329,60 @@ subroutine lu_fac13( avec_len, lu ) lu(k,580) = lu(k,580) * lu(k,573) lu(k,581) = lu(k,581) * lu(k,573) lu(k,582) = lu(k,582) * lu(k,573) - lu(k,860) = lu(k,860) - lu(k,574) * lu(k,859) - lu(k,863) = lu(k,863) - lu(k,575) * lu(k,859) - lu(k,864) = - lu(k,576) * lu(k,859) - lu(k,865) = lu(k,865) - lu(k,577) * lu(k,859) - lu(k,866) = - lu(k,578) * lu(k,859) - lu(k,868) = lu(k,868) - lu(k,579) * lu(k,859) - lu(k,869) = lu(k,869) - lu(k,580) * lu(k,859) - lu(k,870) = lu(k,870) - lu(k,581) * lu(k,859) - lu(k,872) = lu(k,872) - lu(k,582) * lu(k,859) - lu(k,955) = lu(k,955) - lu(k,574) * lu(k,953) - lu(k,959) = lu(k,959) - lu(k,575) * lu(k,953) - lu(k,960) = lu(k,960) - lu(k,576) * lu(k,953) - lu(k,964) = - lu(k,577) * lu(k,953) - lu(k,966) = - lu(k,578) * lu(k,953) - lu(k,968) = lu(k,968) - lu(k,579) * lu(k,953) - lu(k,969) = lu(k,969) - lu(k,580) * lu(k,953) - lu(k,970) = lu(k,970) - lu(k,581) * lu(k,953) - lu(k,973) = lu(k,973) - lu(k,582) * lu(k,953) - lu(k,991) = lu(k,991) - lu(k,574) * lu(k,983) - lu(k,995) = lu(k,995) - lu(k,575) * lu(k,983) - lu(k,996) = lu(k,996) - lu(k,576) * lu(k,983) - lu(k,1000) = lu(k,1000) - lu(k,577) * lu(k,983) - lu(k,1002) = lu(k,1002) - lu(k,578) * lu(k,983) - lu(k,1004) = lu(k,1004) - lu(k,579) * lu(k,983) - lu(k,1005) = lu(k,1005) - lu(k,580) * lu(k,983) - lu(k,1006) = lu(k,1006) - lu(k,581) * lu(k,983) - lu(k,1010) = lu(k,1010) - lu(k,582) * lu(k,983) - lu(k,1310) = lu(k,1310) - lu(k,574) * lu(k,1303) - lu(k,1314) = lu(k,1314) - lu(k,575) * lu(k,1303) - lu(k,1315) = lu(k,1315) - lu(k,576) * lu(k,1303) - lu(k,1319) = - lu(k,577) * lu(k,1303) - lu(k,1321) = lu(k,1321) - lu(k,578) * lu(k,1303) - lu(k,1323) = lu(k,1323) - lu(k,579) * lu(k,1303) - lu(k,1324) = lu(k,1324) - lu(k,580) * lu(k,1303) - lu(k,1325) = lu(k,1325) - lu(k,581) * lu(k,1303) - lu(k,1329) = lu(k,1329) - lu(k,582) * lu(k,1303) - lu(k,1399) = lu(k,1399) - lu(k,574) * lu(k,1380) - lu(k,1403) = lu(k,1403) - lu(k,575) * lu(k,1380) - lu(k,1404) = lu(k,1404) - lu(k,576) * lu(k,1380) - lu(k,1408) = lu(k,1408) - lu(k,577) * lu(k,1380) - lu(k,1410) = lu(k,1410) - lu(k,578) * lu(k,1380) - lu(k,1412) = lu(k,1412) - lu(k,579) * lu(k,1380) - lu(k,1413) = lu(k,1413) - lu(k,580) * lu(k,1380) - lu(k,1414) = lu(k,1414) - lu(k,581) * lu(k,1380) - lu(k,1418) = lu(k,1418) - lu(k,582) * lu(k,1380) - lu(k,1444) = lu(k,1444) - lu(k,574) * lu(k,1439) - lu(k,1448) = lu(k,1448) - lu(k,575) * lu(k,1439) - lu(k,1449) = lu(k,1449) - lu(k,576) * lu(k,1439) - lu(k,1453) = lu(k,1453) - lu(k,577) * lu(k,1439) - lu(k,1455) = lu(k,1455) - lu(k,578) * lu(k,1439) - lu(k,1457) = lu(k,1457) - lu(k,579) * lu(k,1439) - lu(k,1458) = lu(k,1458) - lu(k,580) * lu(k,1439) - lu(k,1459) = lu(k,1459) - lu(k,581) * lu(k,1439) - lu(k,1463) = lu(k,1463) - lu(k,582) * lu(k,1439) + lu(k,814) = lu(k,814) - lu(k,574) * lu(k,813) + lu(k,815) = lu(k,815) - lu(k,575) * lu(k,813) + lu(k,816) = lu(k,816) - lu(k,576) * lu(k,813) + lu(k,817) = - lu(k,577) * lu(k,813) + lu(k,818) = - lu(k,578) * lu(k,813) + lu(k,819) = lu(k,819) - lu(k,579) * lu(k,813) + lu(k,820) = lu(k,820) - lu(k,580) * lu(k,813) + lu(k,821) = - lu(k,581) * lu(k,813) + lu(k,823) = lu(k,823) - lu(k,582) * lu(k,813) + lu(k,905) = lu(k,905) - lu(k,574) * lu(k,903) + lu(k,906) = lu(k,906) - lu(k,575) * lu(k,903) + lu(k,909) = lu(k,909) - lu(k,576) * lu(k,903) + lu(k,910) = lu(k,910) - lu(k,577) * lu(k,903) + lu(k,911) = - lu(k,578) * lu(k,903) + lu(k,912) = lu(k,912) - lu(k,579) * lu(k,903) + lu(k,913) = lu(k,913) - lu(k,580) * lu(k,903) + lu(k,914) = lu(k,914) - lu(k,581) * lu(k,903) + lu(k,920) = lu(k,920) - lu(k,582) * lu(k,903) + lu(k,1067) = - lu(k,574) * lu(k,1065) + lu(k,1071) = lu(k,1071) - lu(k,575) * lu(k,1065) + lu(k,1075) = lu(k,1075) - lu(k,576) * lu(k,1065) + lu(k,1079) = - lu(k,577) * lu(k,1065) + lu(k,1080) = lu(k,1080) - lu(k,578) * lu(k,1065) + lu(k,1081) = lu(k,1081) - lu(k,579) * lu(k,1065) + lu(k,1082) = lu(k,1082) - lu(k,580) * lu(k,1065) + lu(k,1083) = lu(k,1083) - lu(k,581) * lu(k,1065) + lu(k,1089) = lu(k,1089) - lu(k,582) * lu(k,1065) + lu(k,1112) = lu(k,1112) - lu(k,574) * lu(k,1106) + lu(k,1121) = lu(k,1121) - lu(k,575) * lu(k,1106) + lu(k,1123) = lu(k,1123) - lu(k,576) * lu(k,1106) + lu(k,1127) = - lu(k,577) * lu(k,1106) + lu(k,1128) = lu(k,1128) - lu(k,578) * lu(k,1106) + lu(k,1129) = lu(k,1129) - lu(k,579) * lu(k,1106) + lu(k,1130) = lu(k,1130) - lu(k,580) * lu(k,1106) + lu(k,1131) = lu(k,1131) - lu(k,581) * lu(k,1106) + lu(k,1137) = lu(k,1137) - lu(k,582) * lu(k,1106) + lu(k,1240) = lu(k,1240) - lu(k,574) * lu(k,1233) + lu(k,1249) = lu(k,1249) - lu(k,575) * lu(k,1233) + lu(k,1254) = lu(k,1254) - lu(k,576) * lu(k,1233) + lu(k,1258) = lu(k,1258) - lu(k,577) * lu(k,1233) + lu(k,1259) = lu(k,1259) - lu(k,578) * lu(k,1233) + lu(k,1260) = lu(k,1260) - lu(k,579) * lu(k,1233) + lu(k,1261) = lu(k,1261) - lu(k,580) * lu(k,1233) + lu(k,1262) = lu(k,1262) - lu(k,581) * lu(k,1233) + lu(k,1268) = lu(k,1268) - lu(k,582) * lu(k,1233) + lu(k,1465) = lu(k,1465) - lu(k,574) * lu(k,1464) + lu(k,1466) = lu(k,1466) - lu(k,575) * lu(k,1464) + lu(k,1471) = lu(k,1471) - lu(k,576) * lu(k,1464) + lu(k,1475) = lu(k,1475) - lu(k,577) * lu(k,1464) + lu(k,1476) = lu(k,1476) - lu(k,578) * lu(k,1464) + lu(k,1477) = lu(k,1477) - lu(k,579) * lu(k,1464) + lu(k,1478) = lu(k,1478) - lu(k,580) * lu(k,1464) + lu(k,1479) = lu(k,1479) - lu(k,581) * lu(k,1464) + lu(k,1485) = lu(k,1485) - lu(k,582) * lu(k,1464) lu(k,584) = 1._r8 / lu(k,584) lu(k,585) = lu(k,585) * lu(k,584) lu(k,586) = lu(k,586) * lu(k,584) @@ -2395,131 +2394,126 @@ subroutine lu_fac13( avec_len, lu ) lu(k,592) = lu(k,592) * lu(k,584) lu(k,698) = lu(k,698) - lu(k,585) * lu(k,695) lu(k,700) = lu(k,700) - lu(k,586) * lu(k,695) - lu(k,708) = lu(k,708) - lu(k,587) * lu(k,695) - lu(k,709) = lu(k,709) - lu(k,588) * lu(k,695) - lu(k,710) = lu(k,710) - lu(k,589) * lu(k,695) - lu(k,712) = - lu(k,590) * lu(k,695) + lu(k,709) = lu(k,709) - lu(k,587) * lu(k,695) + lu(k,710) = lu(k,710) - lu(k,588) * lu(k,695) + lu(k,712) = lu(k,712) - lu(k,589) * lu(k,695) + lu(k,713) = lu(k,713) - lu(k,590) * lu(k,695) lu(k,714) = lu(k,714) - lu(k,591) * lu(k,695) - lu(k,715) = lu(k,715) - lu(k,592) * lu(k,695) + lu(k,715) = - lu(k,592) * lu(k,695) lu(k,723) = lu(k,723) - lu(k,585) * lu(k,720) lu(k,724) = - lu(k,586) * lu(k,720) - lu(k,730) = lu(k,730) - lu(k,587) * lu(k,720) - lu(k,731) = lu(k,731) - lu(k,588) * lu(k,720) - lu(k,732) = lu(k,732) - lu(k,589) * lu(k,720) - lu(k,733) = - lu(k,590) * lu(k,720) - lu(k,735) = lu(k,735) - lu(k,591) * lu(k,720) - lu(k,736) = lu(k,736) - lu(k,592) * lu(k,720) - lu(k,1063) = - lu(k,585) * lu(k,1058) - lu(k,1065) = lu(k,1065) - lu(k,586) * lu(k,1058) - lu(k,1079) = lu(k,1079) - lu(k,587) * lu(k,1058) - lu(k,1080) = lu(k,1080) - lu(k,588) * lu(k,1058) - lu(k,1081) = lu(k,1081) - lu(k,589) * lu(k,1058) - lu(k,1083) = - lu(k,590) * lu(k,1058) - lu(k,1085) = lu(k,1085) - lu(k,591) * lu(k,1058) - lu(k,1088) = lu(k,1088) - lu(k,592) * lu(k,1058) - lu(k,1110) = lu(k,1110) - lu(k,585) * lu(k,1104) - lu(k,1112) = - lu(k,586) * lu(k,1104) - lu(k,1125) = lu(k,1125) - lu(k,587) * lu(k,1104) - lu(k,1126) = lu(k,1126) - lu(k,588) * lu(k,1104) - lu(k,1127) = lu(k,1127) - lu(k,589) * lu(k,1104) - lu(k,1129) = - lu(k,590) * lu(k,1104) - lu(k,1131) = lu(k,1131) - lu(k,591) * lu(k,1104) - lu(k,1134) = lu(k,1134) - lu(k,592) * lu(k,1104) - lu(k,1220) = lu(k,1220) - lu(k,585) * lu(k,1214) - lu(k,1222) = lu(k,1222) - lu(k,586) * lu(k,1214) - lu(k,1235) = lu(k,1235) - lu(k,587) * lu(k,1214) - lu(k,1236) = lu(k,1236) - lu(k,588) * lu(k,1214) - lu(k,1237) = lu(k,1237) - lu(k,589) * lu(k,1214) - lu(k,1239) = lu(k,1239) - lu(k,590) * lu(k,1214) - lu(k,1241) = lu(k,1241) - lu(k,591) * lu(k,1214) - lu(k,1244) = lu(k,1244) - lu(k,592) * lu(k,1214) - lu(k,1387) = lu(k,1387) - lu(k,585) * lu(k,1381) - lu(k,1389) = lu(k,1389) - lu(k,586) * lu(k,1381) - lu(k,1404) = lu(k,1404) - lu(k,587) * lu(k,1381) - lu(k,1405) = lu(k,1405) - lu(k,588) * lu(k,1381) - lu(k,1406) = lu(k,1406) - lu(k,589) * lu(k,1381) - lu(k,1408) = lu(k,1408) - lu(k,590) * lu(k,1381) - lu(k,1410) = lu(k,1410) - lu(k,591) * lu(k,1381) - lu(k,1413) = lu(k,1413) - lu(k,592) * lu(k,1381) - lu(k,1483) = lu(k,1483) - lu(k,585) * lu(k,1478) - lu(k,1485) = lu(k,1485) - lu(k,586) * lu(k,1478) - lu(k,1497) = lu(k,1497) - lu(k,587) * lu(k,1478) - lu(k,1498) = lu(k,1498) - lu(k,588) * lu(k,1478) - lu(k,1499) = lu(k,1499) - lu(k,589) * lu(k,1478) - lu(k,1501) = - lu(k,590) * lu(k,1478) - lu(k,1503) = lu(k,1503) - lu(k,591) * lu(k,1478) - lu(k,1506) = lu(k,1506) - lu(k,592) * lu(k,1478) - lu(k,595) = 1._r8 / lu(k,595) - lu(k,596) = lu(k,596) * lu(k,595) - lu(k,597) = lu(k,597) * lu(k,595) - lu(k,598) = lu(k,598) * lu(k,595) - lu(k,599) = lu(k,599) * lu(k,595) - lu(k,600) = lu(k,600) * lu(k,595) - lu(k,601) = lu(k,601) * lu(k,595) - lu(k,602) = lu(k,602) * lu(k,595) - lu(k,603) = lu(k,603) * lu(k,595) - lu(k,604) = lu(k,604) * lu(k,595) - lu(k,605) = lu(k,605) * lu(k,595) - lu(k,1061) = lu(k,1061) - lu(k,596) * lu(k,1059) - lu(k,1066) = - lu(k,597) * lu(k,1059) - lu(k,1071) = lu(k,1071) - lu(k,598) * lu(k,1059) - lu(k,1079) = lu(k,1079) - lu(k,599) * lu(k,1059) - lu(k,1080) = lu(k,1080) - lu(k,600) * lu(k,1059) - lu(k,1081) = lu(k,1081) - lu(k,601) * lu(k,1059) - lu(k,1084) = lu(k,1084) - lu(k,602) * lu(k,1059) - lu(k,1088) = lu(k,1088) - lu(k,603) * lu(k,1059) - lu(k,1090) = lu(k,1090) - lu(k,604) * lu(k,1059) - lu(k,1093) = lu(k,1093) - lu(k,605) * lu(k,1059) - lu(k,1107) = - lu(k,596) * lu(k,1105) - lu(k,1113) = lu(k,1113) - lu(k,597) * lu(k,1105) - lu(k,1118) = lu(k,1118) - lu(k,598) * lu(k,1105) - lu(k,1125) = lu(k,1125) - lu(k,599) * lu(k,1105) - lu(k,1126) = lu(k,1126) - lu(k,600) * lu(k,1105) - lu(k,1127) = lu(k,1127) - lu(k,601) * lu(k,1105) - lu(k,1130) = lu(k,1130) - lu(k,602) * lu(k,1105) - lu(k,1134) = lu(k,1134) - lu(k,603) * lu(k,1105) - lu(k,1136) = lu(k,1136) - lu(k,604) * lu(k,1105) - lu(k,1139) = lu(k,1139) - lu(k,605) * lu(k,1105) - lu(k,1174) = lu(k,1174) - lu(k,596) * lu(k,1172) - lu(k,1179) = lu(k,1179) - lu(k,597) * lu(k,1172) - lu(k,1184) = lu(k,1184) - lu(k,598) * lu(k,1172) - lu(k,1189) = lu(k,1189) - lu(k,599) * lu(k,1172) - lu(k,1190) = lu(k,1190) - lu(k,600) * lu(k,1172) - lu(k,1191) = lu(k,1191) - lu(k,601) * lu(k,1172) - lu(k,1194) = lu(k,1194) - lu(k,602) * lu(k,1172) - lu(k,1198) = lu(k,1198) - lu(k,603) * lu(k,1172) - lu(k,1200) = lu(k,1200) - lu(k,604) * lu(k,1172) - lu(k,1203) = lu(k,1203) - lu(k,605) * lu(k,1172) - lu(k,1217) = lu(k,1217) - lu(k,596) * lu(k,1215) - lu(k,1223) = lu(k,1223) - lu(k,597) * lu(k,1215) - lu(k,1228) = lu(k,1228) - lu(k,598) * lu(k,1215) - lu(k,1235) = lu(k,1235) - lu(k,599) * lu(k,1215) - lu(k,1236) = lu(k,1236) - lu(k,600) * lu(k,1215) - lu(k,1237) = lu(k,1237) - lu(k,601) * lu(k,1215) - lu(k,1240) = lu(k,1240) - lu(k,602) * lu(k,1215) - lu(k,1244) = lu(k,1244) - lu(k,603) * lu(k,1215) - lu(k,1246) = lu(k,1246) - lu(k,604) * lu(k,1215) - lu(k,1249) = lu(k,1249) - lu(k,605) * lu(k,1215) - lu(k,1384) = lu(k,1384) - lu(k,596) * lu(k,1382) - lu(k,1390) = lu(k,1390) - lu(k,597) * lu(k,1382) - lu(k,1395) = lu(k,1395) - lu(k,598) * lu(k,1382) - lu(k,1404) = lu(k,1404) - lu(k,599) * lu(k,1382) - lu(k,1405) = lu(k,1405) - lu(k,600) * lu(k,1382) - lu(k,1406) = lu(k,1406) - lu(k,601) * lu(k,1382) - lu(k,1409) = lu(k,1409) - lu(k,602) * lu(k,1382) - lu(k,1413) = lu(k,1413) - lu(k,603) * lu(k,1382) - lu(k,1415) = lu(k,1415) - lu(k,604) * lu(k,1382) - lu(k,1418) = lu(k,1418) - lu(k,605) * lu(k,1382) - lu(k,1481) = lu(k,1481) - lu(k,596) * lu(k,1479) - lu(k,1486) = lu(k,1486) - lu(k,597) * lu(k,1479) - lu(k,1491) = lu(k,1491) - lu(k,598) * lu(k,1479) - lu(k,1497) = lu(k,1497) - lu(k,599) * lu(k,1479) - lu(k,1498) = lu(k,1498) - lu(k,600) * lu(k,1479) - lu(k,1499) = lu(k,1499) - lu(k,601) * lu(k,1479) - lu(k,1502) = lu(k,1502) - lu(k,602) * lu(k,1479) - lu(k,1506) = lu(k,1506) - lu(k,603) * lu(k,1479) - lu(k,1508) = lu(k,1508) - lu(k,604) * lu(k,1479) - lu(k,1511) = lu(k,1511) - lu(k,605) * lu(k,1479) + lu(k,731) = lu(k,731) - lu(k,587) * lu(k,720) + lu(k,732) = lu(k,732) - lu(k,588) * lu(k,720) + lu(k,734) = lu(k,734) - lu(k,589) * lu(k,720) + lu(k,735) = lu(k,735) - lu(k,590) * lu(k,720) + lu(k,736) = lu(k,736) - lu(k,591) * lu(k,720) + lu(k,737) = - lu(k,592) * lu(k,720) + lu(k,1005) = lu(k,1005) - lu(k,585) * lu(k,999) + lu(k,1007) = lu(k,1007) - lu(k,586) * lu(k,999) + lu(k,1020) = lu(k,1020) - lu(k,587) * lu(k,999) + lu(k,1022) = lu(k,1022) - lu(k,588) * lu(k,999) + lu(k,1025) = lu(k,1025) - lu(k,589) * lu(k,999) + lu(k,1029) = lu(k,1029) - lu(k,590) * lu(k,999) + lu(k,1030) = lu(k,1030) - lu(k,591) * lu(k,999) + lu(k,1032) = lu(k,1032) - lu(k,592) * lu(k,999) + lu(k,1112) = lu(k,1112) - lu(k,585) * lu(k,1107) + lu(k,1114) = lu(k,1114) - lu(k,586) * lu(k,1107) + lu(k,1126) = lu(k,1126) - lu(k,587) * lu(k,1107) + lu(k,1128) = lu(k,1128) - lu(k,588) * lu(k,1107) + lu(k,1131) = lu(k,1131) - lu(k,589) * lu(k,1107) + lu(k,1135) = lu(k,1135) - lu(k,590) * lu(k,1107) + lu(k,1136) = lu(k,1136) - lu(k,591) * lu(k,1107) + lu(k,1138) = - lu(k,592) * lu(k,1107) + lu(k,1240) = lu(k,1240) - lu(k,585) * lu(k,1234) + lu(k,1242) = lu(k,1242) - lu(k,586) * lu(k,1234) + lu(k,1257) = lu(k,1257) - lu(k,587) * lu(k,1234) + lu(k,1259) = lu(k,1259) - lu(k,588) * lu(k,1234) + lu(k,1262) = lu(k,1262) - lu(k,589) * lu(k,1234) + lu(k,1266) = lu(k,1266) - lu(k,590) * lu(k,1234) + lu(k,1267) = lu(k,1267) - lu(k,591) * lu(k,1234) + lu(k,1269) = lu(k,1269) - lu(k,592) * lu(k,1234) + lu(k,1389) = - lu(k,585) * lu(k,1384) + lu(k,1391) = lu(k,1391) - lu(k,586) * lu(k,1384) + lu(k,1405) = lu(k,1405) - lu(k,587) * lu(k,1384) + lu(k,1407) = lu(k,1407) - lu(k,588) * lu(k,1384) + lu(k,1410) = lu(k,1410) - lu(k,589) * lu(k,1384) + lu(k,1414) = lu(k,1414) - lu(k,590) * lu(k,1384) + lu(k,1415) = lu(k,1415) - lu(k,591) * lu(k,1384) + lu(k,1417) = - lu(k,592) * lu(k,1384) + lu(k,1528) = lu(k,1528) - lu(k,585) * lu(k,1522) + lu(k,1530) = - lu(k,586) * lu(k,1522) + lu(k,1543) = lu(k,1543) - lu(k,587) * lu(k,1522) + lu(k,1545) = lu(k,1545) - lu(k,588) * lu(k,1522) + lu(k,1548) = lu(k,1548) - lu(k,589) * lu(k,1522) + lu(k,1552) = lu(k,1552) - lu(k,590) * lu(k,1522) + lu(k,1553) = lu(k,1553) - lu(k,591) * lu(k,1522) + lu(k,1555) = - lu(k,592) * lu(k,1522) + lu(k,594) = 1._r8 / lu(k,594) + lu(k,595) = lu(k,595) * lu(k,594) + lu(k,596) = lu(k,596) * lu(k,594) + lu(k,597) = lu(k,597) * lu(k,594) + lu(k,598) = lu(k,598) * lu(k,594) + lu(k,599) = lu(k,599) * lu(k,594) + lu(k,670) = lu(k,670) - lu(k,595) * lu(k,668) + lu(k,674) = lu(k,674) - lu(k,596) * lu(k,668) + lu(k,679) = lu(k,679) - lu(k,597) * lu(k,668) + lu(k,680) = lu(k,680) - lu(k,598) * lu(k,668) + lu(k,681) = lu(k,681) - lu(k,599) * lu(k,668) + lu(k,698) = lu(k,698) - lu(k,595) * lu(k,696) + lu(k,707) = lu(k,707) - lu(k,596) * lu(k,696) + lu(k,712) = lu(k,712) - lu(k,597) * lu(k,696) + lu(k,713) = lu(k,713) - lu(k,598) * lu(k,696) + lu(k,714) = lu(k,714) - lu(k,599) * lu(k,696) + lu(k,723) = lu(k,723) - lu(k,595) * lu(k,721) + lu(k,729) = - lu(k,596) * lu(k,721) + lu(k,734) = lu(k,734) - lu(k,597) * lu(k,721) + lu(k,735) = lu(k,735) - lu(k,598) * lu(k,721) + lu(k,736) = lu(k,736) - lu(k,599) * lu(k,721) + lu(k,785) = lu(k,785) - lu(k,595) * lu(k,783) + lu(k,794) = lu(k,794) - lu(k,596) * lu(k,783) + lu(k,801) = lu(k,801) - lu(k,597) * lu(k,783) + lu(k,802) = lu(k,802) - lu(k,598) * lu(k,783) + lu(k,803) = lu(k,803) - lu(k,599) * lu(k,783) + lu(k,905) = lu(k,905) - lu(k,595) * lu(k,904) + lu(k,906) = lu(k,906) - lu(k,596) * lu(k,904) + lu(k,914) = lu(k,914) - lu(k,597) * lu(k,904) + lu(k,918) = lu(k,918) - lu(k,598) * lu(k,904) + lu(k,919) = lu(k,919) - lu(k,599) * lu(k,904) + lu(k,961) = lu(k,961) - lu(k,595) * lu(k,957) + lu(k,970) = lu(k,970) - lu(k,596) * lu(k,957) + lu(k,979) = lu(k,979) - lu(k,597) * lu(k,957) + lu(k,983) = lu(k,983) - lu(k,598) * lu(k,957) + lu(k,984) = lu(k,984) - lu(k,599) * lu(k,957) + lu(k,1005) = lu(k,1005) - lu(k,595) * lu(k,1000) + lu(k,1014) = lu(k,1014) - lu(k,596) * lu(k,1000) + lu(k,1025) = lu(k,1025) - lu(k,597) * lu(k,1000) + lu(k,1029) = lu(k,1029) - lu(k,598) * lu(k,1000) + lu(k,1030) = lu(k,1030) - lu(k,599) * lu(k,1000) + lu(k,1112) = lu(k,1112) - lu(k,595) * lu(k,1108) + lu(k,1121) = lu(k,1121) - lu(k,596) * lu(k,1108) + lu(k,1131) = lu(k,1131) - lu(k,597) * lu(k,1108) + lu(k,1135) = lu(k,1135) - lu(k,598) * lu(k,1108) + lu(k,1136) = lu(k,1136) - lu(k,599) * lu(k,1108) + lu(k,1240) = lu(k,1240) - lu(k,595) * lu(k,1235) + lu(k,1249) = lu(k,1249) - lu(k,596) * lu(k,1235) + lu(k,1262) = lu(k,1262) - lu(k,597) * lu(k,1235) + lu(k,1266) = lu(k,1266) - lu(k,598) * lu(k,1235) + lu(k,1267) = lu(k,1267) - lu(k,599) * lu(k,1235) + lu(k,1286) = lu(k,1286) - lu(k,595) * lu(k,1284) + lu(k,1288) = - lu(k,596) * lu(k,1284) + lu(k,1300) = lu(k,1300) - lu(k,597) * lu(k,1284) + lu(k,1304) = lu(k,1304) - lu(k,598) * lu(k,1284) + lu(k,1305) = lu(k,1305) - lu(k,599) * lu(k,1284) + lu(k,1389) = lu(k,1389) - lu(k,595) * lu(k,1385) + lu(k,1398) = lu(k,1398) - lu(k,596) * lu(k,1385) + lu(k,1410) = lu(k,1410) - lu(k,597) * lu(k,1385) + lu(k,1414) = lu(k,1414) - lu(k,598) * lu(k,1385) + lu(k,1415) = lu(k,1415) - lu(k,599) * lu(k,1385) + lu(k,1528) = lu(k,1528) - lu(k,595) * lu(k,1523) + lu(k,1537) = lu(k,1537) - lu(k,596) * lu(k,1523) + lu(k,1548) = lu(k,1548) - lu(k,597) * lu(k,1523) + lu(k,1552) = lu(k,1552) - lu(k,598) * lu(k,1523) + lu(k,1553) = lu(k,1553) - lu(k,599) * lu(k,1523) end do end subroutine lu_fac13 subroutine lu_fac14( avec_len, lu ) @@ -2536,72 +2530,77 @@ subroutine lu_fac14( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,607) = 1._r8 / lu(k,607) - lu(k,608) = lu(k,608) * lu(k,607) - lu(k,609) = lu(k,609) * lu(k,607) - lu(k,610) = lu(k,610) * lu(k,607) - lu(k,611) = lu(k,611) * lu(k,607) - lu(k,612) = lu(k,612) * lu(k,607) - lu(k,670) = lu(k,670) - lu(k,608) * lu(k,668) - lu(k,674) = lu(k,674) - lu(k,609) * lu(k,668) - lu(k,676) = lu(k,676) - lu(k,610) * lu(k,668) - lu(k,677) = lu(k,677) - lu(k,611) * lu(k,668) - lu(k,680) = lu(k,680) - lu(k,612) * lu(k,668) - lu(k,698) = lu(k,698) - lu(k,608) * lu(k,696) - lu(k,707) = lu(k,707) - lu(k,609) * lu(k,696) - lu(k,709) = lu(k,709) - lu(k,610) * lu(k,696) - lu(k,710) = lu(k,710) - lu(k,611) * lu(k,696) - lu(k,715) = lu(k,715) - lu(k,612) * lu(k,696) - lu(k,723) = lu(k,723) - lu(k,608) * lu(k,721) - lu(k,729) = - lu(k,609) * lu(k,721) - lu(k,731) = lu(k,731) - lu(k,610) * lu(k,721) - lu(k,732) = lu(k,732) - lu(k,611) * lu(k,721) - lu(k,736) = lu(k,736) - lu(k,612) * lu(k,721) - lu(k,785) = lu(k,785) - lu(k,608) * lu(k,783) - lu(k,794) = lu(k,794) - lu(k,609) * lu(k,783) - lu(k,797) = lu(k,797) - lu(k,610) * lu(k,783) - lu(k,798) = lu(k,798) - lu(k,611) * lu(k,783) - lu(k,803) = lu(k,803) - lu(k,612) * lu(k,783) - lu(k,905) = lu(k,905) - lu(k,608) * lu(k,904) - lu(k,906) = lu(k,906) - lu(k,609) * lu(k,904) - lu(k,913) = lu(k,913) - lu(k,610) * lu(k,904) - lu(k,914) = lu(k,914) - lu(k,611) * lu(k,904) - lu(k,918) = lu(k,918) - lu(k,612) * lu(k,904) - lu(k,1063) = lu(k,1063) - lu(k,608) * lu(k,1060) - lu(k,1072) = lu(k,1072) - lu(k,609) * lu(k,1060) - lu(k,1080) = lu(k,1080) - lu(k,610) * lu(k,1060) - lu(k,1081) = lu(k,1081) - lu(k,611) * lu(k,1060) - lu(k,1088) = lu(k,1088) - lu(k,612) * lu(k,1060) - lu(k,1110) = lu(k,1110) - lu(k,608) * lu(k,1106) - lu(k,1119) = lu(k,1119) - lu(k,609) * lu(k,1106) - lu(k,1126) = lu(k,1126) - lu(k,610) * lu(k,1106) - lu(k,1127) = lu(k,1127) - lu(k,611) * lu(k,1106) - lu(k,1134) = lu(k,1134) - lu(k,612) * lu(k,1106) - lu(k,1176) = lu(k,1176) - lu(k,608) * lu(k,1173) - lu(k,1185) = lu(k,1185) - lu(k,609) * lu(k,1173) - lu(k,1190) = lu(k,1190) - lu(k,610) * lu(k,1173) - lu(k,1191) = lu(k,1191) - lu(k,611) * lu(k,1173) - lu(k,1198) = lu(k,1198) - lu(k,612) * lu(k,1173) - lu(k,1220) = lu(k,1220) - lu(k,608) * lu(k,1216) - lu(k,1229) = lu(k,1229) - lu(k,609) * lu(k,1216) - lu(k,1236) = lu(k,1236) - lu(k,610) * lu(k,1216) - lu(k,1237) = lu(k,1237) - lu(k,611) * lu(k,1216) - lu(k,1244) = lu(k,1244) - lu(k,612) * lu(k,1216) - lu(k,1306) = lu(k,1306) - lu(k,608) * lu(k,1304) - lu(k,1308) = - lu(k,609) * lu(k,1304) - lu(k,1316) = lu(k,1316) - lu(k,610) * lu(k,1304) - lu(k,1317) = lu(k,1317) - lu(k,611) * lu(k,1304) - lu(k,1324) = lu(k,1324) - lu(k,612) * lu(k,1304) - lu(k,1387) = lu(k,1387) - lu(k,608) * lu(k,1383) - lu(k,1396) = lu(k,1396) - lu(k,609) * lu(k,1383) - lu(k,1405) = lu(k,1405) - lu(k,610) * lu(k,1383) - lu(k,1406) = lu(k,1406) - lu(k,611) * lu(k,1383) - lu(k,1413) = lu(k,1413) - lu(k,612) * lu(k,1383) - lu(k,1483) = lu(k,1483) - lu(k,608) * lu(k,1480) - lu(k,1492) = lu(k,1492) - lu(k,609) * lu(k,1480) - lu(k,1498) = lu(k,1498) - lu(k,610) * lu(k,1480) - lu(k,1499) = lu(k,1499) - lu(k,611) * lu(k,1480) - lu(k,1506) = lu(k,1506) - lu(k,612) * lu(k,1480) + lu(k,602) = 1._r8 / lu(k,602) + lu(k,603) = lu(k,603) * lu(k,602) + lu(k,604) = lu(k,604) * lu(k,602) + lu(k,605) = lu(k,605) * lu(k,602) + lu(k,606) = lu(k,606) * lu(k,602) + lu(k,607) = lu(k,607) * lu(k,602) + lu(k,608) = lu(k,608) * lu(k,602) + lu(k,609) = lu(k,609) * lu(k,602) + lu(k,610) = lu(k,610) * lu(k,602) + lu(k,611) = lu(k,611) * lu(k,602) + lu(k,612) = lu(k,612) * lu(k,602) + lu(k,959) = lu(k,959) - lu(k,603) * lu(k,958) + lu(k,964) = lu(k,964) - lu(k,604) * lu(k,958) + lu(k,969) = lu(k,969) - lu(k,605) * lu(k,958) + lu(k,973) = lu(k,973) - lu(k,606) * lu(k,958) + lu(k,976) = lu(k,976) - lu(k,607) * lu(k,958) + lu(k,977) = lu(k,977) - lu(k,608) * lu(k,958) + lu(k,979) = lu(k,979) - lu(k,609) * lu(k,958) + lu(k,983) = lu(k,983) - lu(k,610) * lu(k,958) + lu(k,984) = lu(k,984) - lu(k,611) * lu(k,958) + lu(k,988) = lu(k,988) - lu(k,612) * lu(k,958) + lu(k,1002) = lu(k,1002) - lu(k,603) * lu(k,1001) + lu(k,1008) = lu(k,1008) - lu(k,604) * lu(k,1001) + lu(k,1013) = lu(k,1013) - lu(k,605) * lu(k,1001) + lu(k,1019) = lu(k,1019) - lu(k,606) * lu(k,1001) + lu(k,1022) = lu(k,1022) - lu(k,607) * lu(k,1001) + lu(k,1023) = lu(k,1023) - lu(k,608) * lu(k,1001) + lu(k,1025) = lu(k,1025) - lu(k,609) * lu(k,1001) + lu(k,1029) = lu(k,1029) - lu(k,610) * lu(k,1001) + lu(k,1030) = lu(k,1030) - lu(k,611) * lu(k,1001) + lu(k,1034) = lu(k,1034) - lu(k,612) * lu(k,1001) + lu(k,1110) = lu(k,1110) - lu(k,603) * lu(k,1109) + lu(k,1115) = lu(k,1115) - lu(k,604) * lu(k,1109) + lu(k,1120) = lu(k,1120) - lu(k,605) * lu(k,1109) + lu(k,1125) = lu(k,1125) - lu(k,606) * lu(k,1109) + lu(k,1128) = lu(k,1128) - lu(k,607) * lu(k,1109) + lu(k,1129) = lu(k,1129) - lu(k,608) * lu(k,1109) + lu(k,1131) = lu(k,1131) - lu(k,609) * lu(k,1109) + lu(k,1135) = lu(k,1135) - lu(k,610) * lu(k,1109) + lu(k,1136) = lu(k,1136) - lu(k,611) * lu(k,1109) + lu(k,1140) = lu(k,1140) - lu(k,612) * lu(k,1109) + lu(k,1237) = lu(k,1237) - lu(k,603) * lu(k,1236) + lu(k,1243) = lu(k,1243) - lu(k,604) * lu(k,1236) + lu(k,1248) = lu(k,1248) - lu(k,605) * lu(k,1236) + lu(k,1256) = lu(k,1256) - lu(k,606) * lu(k,1236) + lu(k,1259) = lu(k,1259) - lu(k,607) * lu(k,1236) + lu(k,1260) = lu(k,1260) - lu(k,608) * lu(k,1236) + lu(k,1262) = lu(k,1262) - lu(k,609) * lu(k,1236) + lu(k,1266) = lu(k,1266) - lu(k,610) * lu(k,1236) + lu(k,1267) = lu(k,1267) - lu(k,611) * lu(k,1236) + lu(k,1271) = lu(k,1271) - lu(k,612) * lu(k,1236) + lu(k,1387) = lu(k,1387) - lu(k,603) * lu(k,1386) + lu(k,1392) = - lu(k,604) * lu(k,1386) + lu(k,1397) = lu(k,1397) - lu(k,605) * lu(k,1386) + lu(k,1404) = lu(k,1404) - lu(k,606) * lu(k,1386) + lu(k,1407) = lu(k,1407) - lu(k,607) * lu(k,1386) + lu(k,1408) = lu(k,1408) - lu(k,608) * lu(k,1386) + lu(k,1410) = lu(k,1410) - lu(k,609) * lu(k,1386) + lu(k,1414) = lu(k,1414) - lu(k,610) * lu(k,1386) + lu(k,1415) = lu(k,1415) - lu(k,611) * lu(k,1386) + lu(k,1419) = lu(k,1419) - lu(k,612) * lu(k,1386) + lu(k,1525) = - lu(k,603) * lu(k,1524) + lu(k,1531) = lu(k,1531) - lu(k,604) * lu(k,1524) + lu(k,1536) = lu(k,1536) - lu(k,605) * lu(k,1524) + lu(k,1542) = lu(k,1542) - lu(k,606) * lu(k,1524) + lu(k,1545) = lu(k,1545) - lu(k,607) * lu(k,1524) + lu(k,1546) = lu(k,1546) - lu(k,608) * lu(k,1524) + lu(k,1548) = lu(k,1548) - lu(k,609) * lu(k,1524) + lu(k,1552) = lu(k,1552) - lu(k,610) * lu(k,1524) + lu(k,1553) = lu(k,1553) - lu(k,611) * lu(k,1524) + lu(k,1557) = lu(k,1557) - lu(k,612) * lu(k,1524) lu(k,613) = 1._r8 / lu(k,613) lu(k,614) = lu(k,614) * lu(k,613) lu(k,615) = lu(k,615) * lu(k,613) @@ -2610,69 +2609,69 @@ subroutine lu_fac14( avec_len, lu ) lu(k,618) = lu(k,618) * lu(k,613) lu(k,626) = lu(k,626) - lu(k,614) * lu(k,622) lu(k,627) = lu(k,627) - lu(k,615) * lu(k,622) - lu(k,631) = lu(k,631) - lu(k,616) * lu(k,622) - lu(k,632) = lu(k,632) - lu(k,617) * lu(k,622) - lu(k,636) = lu(k,636) - lu(k,618) * lu(k,622) + lu(k,635) = lu(k,635) - lu(k,616) * lu(k,622) + lu(k,636) = lu(k,636) - lu(k,617) * lu(k,622) + lu(k,637) = lu(k,637) - lu(k,618) * lu(k,622) lu(k,672) = lu(k,672) - lu(k,614) * lu(k,669) lu(k,673) = lu(k,673) - lu(k,615) * lu(k,669) - lu(k,676) = lu(k,676) - lu(k,616) * lu(k,669) - lu(k,677) = lu(k,677) - lu(k,617) * lu(k,669) - lu(k,680) = lu(k,680) - lu(k,618) * lu(k,669) + lu(k,679) = lu(k,679) - lu(k,616) * lu(k,669) + lu(k,680) = lu(k,680) - lu(k,617) * lu(k,669) + lu(k,681) = lu(k,681) - lu(k,618) * lu(k,669) lu(k,701) = lu(k,701) - lu(k,614) * lu(k,697) lu(k,706) = lu(k,706) - lu(k,615) * lu(k,697) - lu(k,709) = lu(k,709) - lu(k,616) * lu(k,697) - lu(k,710) = lu(k,710) - lu(k,617) * lu(k,697) - lu(k,715) = lu(k,715) - lu(k,618) * lu(k,697) + lu(k,712) = lu(k,712) - lu(k,616) * lu(k,697) + lu(k,713) = lu(k,713) - lu(k,617) * lu(k,697) + lu(k,714) = lu(k,714) - lu(k,618) * lu(k,697) lu(k,725) = lu(k,725) - lu(k,614) * lu(k,722) lu(k,728) = lu(k,728) - lu(k,615) * lu(k,722) - lu(k,731) = lu(k,731) - lu(k,616) * lu(k,722) - lu(k,732) = lu(k,732) - lu(k,617) * lu(k,722) + lu(k,734) = lu(k,734) - lu(k,616) * lu(k,722) + lu(k,735) = lu(k,735) - lu(k,617) * lu(k,722) lu(k,736) = lu(k,736) - lu(k,618) * lu(k,722) lu(k,764) = - lu(k,614) * lu(k,763) lu(k,766) = lu(k,766) - lu(k,615) * lu(k,763) - lu(k,769) = lu(k,769) - lu(k,616) * lu(k,763) - lu(k,770) = lu(k,770) - lu(k,617) * lu(k,763) - lu(k,775) = lu(k,775) - lu(k,618) * lu(k,763) + lu(k,772) = lu(k,772) - lu(k,616) * lu(k,763) + lu(k,773) = lu(k,773) - lu(k,617) * lu(k,763) + lu(k,774) = lu(k,774) - lu(k,618) * lu(k,763) lu(k,788) = lu(k,788) - lu(k,614) * lu(k,784) lu(k,793) = lu(k,793) - lu(k,615) * lu(k,784) - lu(k,797) = lu(k,797) - lu(k,616) * lu(k,784) - lu(k,798) = lu(k,798) - lu(k,617) * lu(k,784) + lu(k,801) = lu(k,801) - lu(k,616) * lu(k,784) + lu(k,802) = lu(k,802) - lu(k,617) * lu(k,784) lu(k,803) = lu(k,803) - lu(k,618) * lu(k,784) - lu(k,986) = - lu(k,614) * lu(k,984) - lu(k,988) = lu(k,988) - lu(k,615) * lu(k,984) - lu(k,997) = lu(k,997) - lu(k,616) * lu(k,984) - lu(k,998) = lu(k,998) - lu(k,617) * lu(k,984) - lu(k,1005) = lu(k,1005) - lu(k,618) * lu(k,984) - lu(k,1066) = lu(k,1066) - lu(k,614) * lu(k,1061) - lu(k,1071) = lu(k,1071) - lu(k,615) * lu(k,1061) - lu(k,1080) = lu(k,1080) - lu(k,616) * lu(k,1061) - lu(k,1081) = lu(k,1081) - lu(k,617) * lu(k,1061) - lu(k,1088) = lu(k,1088) - lu(k,618) * lu(k,1061) - lu(k,1113) = lu(k,1113) - lu(k,614) * lu(k,1107) - lu(k,1118) = lu(k,1118) - lu(k,615) * lu(k,1107) - lu(k,1126) = lu(k,1126) - lu(k,616) * lu(k,1107) - lu(k,1127) = lu(k,1127) - lu(k,617) * lu(k,1107) - lu(k,1134) = lu(k,1134) - lu(k,618) * lu(k,1107) - lu(k,1179) = lu(k,1179) - lu(k,614) * lu(k,1174) - lu(k,1184) = lu(k,1184) - lu(k,615) * lu(k,1174) - lu(k,1190) = lu(k,1190) - lu(k,616) * lu(k,1174) - lu(k,1191) = lu(k,1191) - lu(k,617) * lu(k,1174) - lu(k,1198) = lu(k,1198) - lu(k,618) * lu(k,1174) - lu(k,1223) = lu(k,1223) - lu(k,614) * lu(k,1217) - lu(k,1228) = lu(k,1228) - lu(k,615) * lu(k,1217) - lu(k,1236) = lu(k,1236) - lu(k,616) * lu(k,1217) - lu(k,1237) = lu(k,1237) - lu(k,617) * lu(k,1217) - lu(k,1244) = lu(k,1244) - lu(k,618) * lu(k,1217) - lu(k,1390) = lu(k,1390) - lu(k,614) * lu(k,1384) - lu(k,1395) = lu(k,1395) - lu(k,615) * lu(k,1384) - lu(k,1405) = lu(k,1405) - lu(k,616) * lu(k,1384) - lu(k,1406) = lu(k,1406) - lu(k,617) * lu(k,1384) - lu(k,1413) = lu(k,1413) - lu(k,618) * lu(k,1384) - lu(k,1486) = lu(k,1486) - lu(k,614) * lu(k,1481) - lu(k,1491) = lu(k,1491) - lu(k,615) * lu(k,1481) - lu(k,1498) = lu(k,1498) - lu(k,616) * lu(k,1481) - lu(k,1499) = lu(k,1499) - lu(k,617) * lu(k,1481) - lu(k,1506) = lu(k,1506) - lu(k,618) * lu(k,1481) + lu(k,964) = lu(k,964) - lu(k,614) * lu(k,959) + lu(k,969) = lu(k,969) - lu(k,615) * lu(k,959) + lu(k,979) = lu(k,979) - lu(k,616) * lu(k,959) + lu(k,983) = lu(k,983) - lu(k,617) * lu(k,959) + lu(k,984) = lu(k,984) - lu(k,618) * lu(k,959) + lu(k,1008) = lu(k,1008) - lu(k,614) * lu(k,1002) + lu(k,1013) = lu(k,1013) - lu(k,615) * lu(k,1002) + lu(k,1025) = lu(k,1025) - lu(k,616) * lu(k,1002) + lu(k,1029) = lu(k,1029) - lu(k,617) * lu(k,1002) + lu(k,1030) = lu(k,1030) - lu(k,618) * lu(k,1002) + lu(k,1068) = - lu(k,614) * lu(k,1066) + lu(k,1070) = lu(k,1070) - lu(k,615) * lu(k,1066) + lu(k,1083) = lu(k,1083) - lu(k,616) * lu(k,1066) + lu(k,1087) = lu(k,1087) - lu(k,617) * lu(k,1066) + lu(k,1088) = lu(k,1088) - lu(k,618) * lu(k,1066) + lu(k,1115) = lu(k,1115) - lu(k,614) * lu(k,1110) + lu(k,1120) = lu(k,1120) - lu(k,615) * lu(k,1110) + lu(k,1131) = lu(k,1131) - lu(k,616) * lu(k,1110) + lu(k,1135) = lu(k,1135) - lu(k,617) * lu(k,1110) + lu(k,1136) = lu(k,1136) - lu(k,618) * lu(k,1110) + lu(k,1243) = lu(k,1243) - lu(k,614) * lu(k,1237) + lu(k,1248) = lu(k,1248) - lu(k,615) * lu(k,1237) + lu(k,1262) = lu(k,1262) - lu(k,616) * lu(k,1237) + lu(k,1266) = lu(k,1266) - lu(k,617) * lu(k,1237) + lu(k,1267) = lu(k,1267) - lu(k,618) * lu(k,1237) + lu(k,1392) = lu(k,1392) - lu(k,614) * lu(k,1387) + lu(k,1397) = lu(k,1397) - lu(k,615) * lu(k,1387) + lu(k,1410) = lu(k,1410) - lu(k,616) * lu(k,1387) + lu(k,1414) = lu(k,1414) - lu(k,617) * lu(k,1387) + lu(k,1415) = lu(k,1415) - lu(k,618) * lu(k,1387) + lu(k,1531) = lu(k,1531) - lu(k,614) * lu(k,1525) + lu(k,1536) = lu(k,1536) - lu(k,615) * lu(k,1525) + lu(k,1548) = lu(k,1548) - lu(k,616) * lu(k,1525) + lu(k,1552) = lu(k,1552) - lu(k,617) * lu(k,1525) + lu(k,1553) = lu(k,1553) - lu(k,618) * lu(k,1525) lu(k,623) = 1._r8 / lu(k,623) lu(k,624) = lu(k,624) * lu(k,623) lu(k,625) = lu(k,625) * lu(k,623) @@ -2698,62 +2697,62 @@ subroutine lu_fac14( avec_len, lu ) lu(k,748) = - lu(k,629) * lu(k,739) lu(k,749) = - lu(k,630) * lu(k,739) lu(k,750) = lu(k,750) - lu(k,631) * lu(k,739) - lu(k,751) = lu(k,751) - lu(k,632) * lu(k,739) - lu(k,752) = lu(k,752) - lu(k,633) * lu(k,739) - lu(k,754) = lu(k,754) - lu(k,634) * lu(k,739) - lu(k,755) = - lu(k,635) * lu(k,739) - lu(k,756) = lu(k,756) - lu(k,636) * lu(k,739) - lu(k,757) = - lu(k,637) * lu(k,739) - lu(k,758) = - lu(k,638) * lu(k,739) + lu(k,751) = - lu(k,632) * lu(k,739) + lu(k,752) = - lu(k,633) * lu(k,739) + lu(k,753) = - lu(k,634) * lu(k,739) + lu(k,754) = lu(k,754) - lu(k,635) * lu(k,739) + lu(k,755) = lu(k,755) - lu(k,636) * lu(k,739) + lu(k,756) = lu(k,756) - lu(k,637) * lu(k,739) + lu(k,758) = lu(k,758) - lu(k,638) * lu(k,739) lu(k,759) = - lu(k,639) * lu(k,739) - lu(k,1109) = lu(k,1109) - lu(k,624) * lu(k,1108) - lu(k,1110) = lu(k,1110) - lu(k,625) * lu(k,1108) - lu(k,1113) = lu(k,1113) - lu(k,626) * lu(k,1108) - lu(k,1118) = lu(k,1118) - lu(k,627) * lu(k,1108) - lu(k,1119) = lu(k,1119) - lu(k,628) * lu(k,1108) - lu(k,1122) = lu(k,1122) - lu(k,629) * lu(k,1108) - lu(k,1125) = lu(k,1125) - lu(k,630) * lu(k,1108) - lu(k,1126) = lu(k,1126) - lu(k,631) * lu(k,1108) - lu(k,1127) = lu(k,1127) - lu(k,632) * lu(k,1108) - lu(k,1128) = lu(k,1128) - lu(k,633) * lu(k,1108) - lu(k,1130) = lu(k,1130) - lu(k,634) * lu(k,1108) - lu(k,1131) = lu(k,1131) - lu(k,635) * lu(k,1108) - lu(k,1134) = lu(k,1134) - lu(k,636) * lu(k,1108) - lu(k,1136) = lu(k,1136) - lu(k,637) * lu(k,1108) - lu(k,1137) = lu(k,1137) - lu(k,638) * lu(k,1108) - lu(k,1139) = lu(k,1139) - lu(k,639) * lu(k,1108) - lu(k,1219) = lu(k,1219) - lu(k,624) * lu(k,1218) - lu(k,1220) = lu(k,1220) - lu(k,625) * lu(k,1218) - lu(k,1223) = lu(k,1223) - lu(k,626) * lu(k,1218) - lu(k,1228) = lu(k,1228) - lu(k,627) * lu(k,1218) - lu(k,1229) = lu(k,1229) - lu(k,628) * lu(k,1218) - lu(k,1232) = lu(k,1232) - lu(k,629) * lu(k,1218) - lu(k,1235) = lu(k,1235) - lu(k,630) * lu(k,1218) - lu(k,1236) = lu(k,1236) - lu(k,631) * lu(k,1218) - lu(k,1237) = lu(k,1237) - lu(k,632) * lu(k,1218) - lu(k,1238) = lu(k,1238) - lu(k,633) * lu(k,1218) - lu(k,1240) = lu(k,1240) - lu(k,634) * lu(k,1218) - lu(k,1241) = lu(k,1241) - lu(k,635) * lu(k,1218) - lu(k,1244) = lu(k,1244) - lu(k,636) * lu(k,1218) - lu(k,1246) = lu(k,1246) - lu(k,637) * lu(k,1218) - lu(k,1247) = - lu(k,638) * lu(k,1218) - lu(k,1249) = lu(k,1249) - lu(k,639) * lu(k,1218) - lu(k,1386) = lu(k,1386) - lu(k,624) * lu(k,1385) - lu(k,1387) = lu(k,1387) - lu(k,625) * lu(k,1385) - lu(k,1390) = lu(k,1390) - lu(k,626) * lu(k,1385) - lu(k,1395) = lu(k,1395) - lu(k,627) * lu(k,1385) - lu(k,1396) = lu(k,1396) - lu(k,628) * lu(k,1385) - lu(k,1401) = lu(k,1401) - lu(k,629) * lu(k,1385) - lu(k,1404) = lu(k,1404) - lu(k,630) * lu(k,1385) - lu(k,1405) = lu(k,1405) - lu(k,631) * lu(k,1385) - lu(k,1406) = lu(k,1406) - lu(k,632) * lu(k,1385) - lu(k,1407) = lu(k,1407) - lu(k,633) * lu(k,1385) - lu(k,1409) = lu(k,1409) - lu(k,634) * lu(k,1385) - lu(k,1410) = lu(k,1410) - lu(k,635) * lu(k,1385) - lu(k,1413) = lu(k,1413) - lu(k,636) * lu(k,1385) - lu(k,1415) = lu(k,1415) - lu(k,637) * lu(k,1385) - lu(k,1416) = lu(k,1416) - lu(k,638) * lu(k,1385) - lu(k,1418) = lu(k,1418) - lu(k,639) * lu(k,1385) + lu(k,1004) = lu(k,1004) - lu(k,624) * lu(k,1003) + lu(k,1005) = lu(k,1005) - lu(k,625) * lu(k,1003) + lu(k,1008) = lu(k,1008) - lu(k,626) * lu(k,1003) + lu(k,1013) = lu(k,1013) - lu(k,627) * lu(k,1003) + lu(k,1014) = lu(k,1014) - lu(k,628) * lu(k,1003) + lu(k,1017) = lu(k,1017) - lu(k,629) * lu(k,1003) + lu(k,1018) = - lu(k,630) * lu(k,1003) + lu(k,1019) = lu(k,1019) - lu(k,631) * lu(k,1003) + lu(k,1020) = lu(k,1020) - lu(k,632) * lu(k,1003) + lu(k,1022) = lu(k,1022) - lu(k,633) * lu(k,1003) + lu(k,1023) = lu(k,1023) - lu(k,634) * lu(k,1003) + lu(k,1025) = lu(k,1025) - lu(k,635) * lu(k,1003) + lu(k,1029) = lu(k,1029) - lu(k,636) * lu(k,1003) + lu(k,1030) = lu(k,1030) - lu(k,637) * lu(k,1003) + lu(k,1033) = lu(k,1033) - lu(k,638) * lu(k,1003) + lu(k,1034) = lu(k,1034) - lu(k,639) * lu(k,1003) + lu(k,1239) = lu(k,1239) - lu(k,624) * lu(k,1238) + lu(k,1240) = lu(k,1240) - lu(k,625) * lu(k,1238) + lu(k,1243) = lu(k,1243) - lu(k,626) * lu(k,1238) + lu(k,1248) = lu(k,1248) - lu(k,627) * lu(k,1238) + lu(k,1249) = lu(k,1249) - lu(k,628) * lu(k,1238) + lu(k,1254) = lu(k,1254) - lu(k,629) * lu(k,1238) + lu(k,1255) = lu(k,1255) - lu(k,630) * lu(k,1238) + lu(k,1256) = lu(k,1256) - lu(k,631) * lu(k,1238) + lu(k,1257) = lu(k,1257) - lu(k,632) * lu(k,1238) + lu(k,1259) = lu(k,1259) - lu(k,633) * lu(k,1238) + lu(k,1260) = lu(k,1260) - lu(k,634) * lu(k,1238) + lu(k,1262) = lu(k,1262) - lu(k,635) * lu(k,1238) + lu(k,1266) = lu(k,1266) - lu(k,636) * lu(k,1238) + lu(k,1267) = lu(k,1267) - lu(k,637) * lu(k,1238) + lu(k,1270) = lu(k,1270) - lu(k,638) * lu(k,1238) + lu(k,1271) = lu(k,1271) - lu(k,639) * lu(k,1238) + lu(k,1527) = lu(k,1527) - lu(k,624) * lu(k,1526) + lu(k,1528) = lu(k,1528) - lu(k,625) * lu(k,1526) + lu(k,1531) = lu(k,1531) - lu(k,626) * lu(k,1526) + lu(k,1536) = lu(k,1536) - lu(k,627) * lu(k,1526) + lu(k,1537) = lu(k,1537) - lu(k,628) * lu(k,1526) + lu(k,1540) = lu(k,1540) - lu(k,629) * lu(k,1526) + lu(k,1541) = lu(k,1541) - lu(k,630) * lu(k,1526) + lu(k,1542) = lu(k,1542) - lu(k,631) * lu(k,1526) + lu(k,1543) = lu(k,1543) - lu(k,632) * lu(k,1526) + lu(k,1545) = lu(k,1545) - lu(k,633) * lu(k,1526) + lu(k,1546) = lu(k,1546) - lu(k,634) * lu(k,1526) + lu(k,1548) = lu(k,1548) - lu(k,635) * lu(k,1526) + lu(k,1552) = lu(k,1552) - lu(k,636) * lu(k,1526) + lu(k,1553) = lu(k,1553) - lu(k,637) * lu(k,1526) + lu(k,1556) = lu(k,1556) - lu(k,638) * lu(k,1526) + lu(k,1557) = lu(k,1557) - lu(k,639) * lu(k,1526) lu(k,640) = 1._r8 / lu(k,640) lu(k,641) = lu(k,641) * lu(k,640) lu(k,642) = lu(k,642) * lu(k,640) @@ -2765,68 +2764,68 @@ subroutine lu_fac14( avec_len, lu ) lu(k,648) = lu(k,648) * lu(k,640) lu(k,741) = lu(k,741) - lu(k,641) * lu(k,740) lu(k,746) = lu(k,746) - lu(k,642) * lu(k,740) - lu(k,751) = lu(k,751) - lu(k,643) * lu(k,740) - lu(k,753) = - lu(k,644) * lu(k,740) + lu(k,750) = lu(k,750) - lu(k,643) * lu(k,740) + lu(k,751) = lu(k,751) - lu(k,644) * lu(k,740) lu(k,754) = lu(k,754) - lu(k,645) * lu(k,740) lu(k,755) = lu(k,755) - lu(k,646) * lu(k,740) - lu(k,756) = lu(k,756) - lu(k,647) * lu(k,740) + lu(k,757) = - lu(k,647) * lu(k,740) lu(k,759) = lu(k,759) - lu(k,648) * lu(k,740) - lu(k,1063) = lu(k,1063) - lu(k,641) * lu(k,1062) - lu(k,1071) = lu(k,1071) - lu(k,642) * lu(k,1062) - lu(k,1081) = lu(k,1081) - lu(k,643) * lu(k,1062) - lu(k,1083) = lu(k,1083) - lu(k,644) * lu(k,1062) - lu(k,1084) = lu(k,1084) - lu(k,645) * lu(k,1062) - lu(k,1085) = lu(k,1085) - lu(k,646) * lu(k,1062) - lu(k,1088) = lu(k,1088) - lu(k,647) * lu(k,1062) - lu(k,1093) = lu(k,1093) - lu(k,648) * lu(k,1062) - lu(k,1110) = lu(k,1110) - lu(k,641) * lu(k,1109) - lu(k,1118) = lu(k,1118) - lu(k,642) * lu(k,1109) - lu(k,1127) = lu(k,1127) - lu(k,643) * lu(k,1109) - lu(k,1129) = lu(k,1129) - lu(k,644) * lu(k,1109) - lu(k,1130) = lu(k,1130) - lu(k,645) * lu(k,1109) - lu(k,1131) = lu(k,1131) - lu(k,646) * lu(k,1109) - lu(k,1134) = lu(k,1134) - lu(k,647) * lu(k,1109) - lu(k,1139) = lu(k,1139) - lu(k,648) * lu(k,1109) - lu(k,1176) = lu(k,1176) - lu(k,641) * lu(k,1175) - lu(k,1184) = lu(k,1184) - lu(k,642) * lu(k,1175) - lu(k,1191) = lu(k,1191) - lu(k,643) * lu(k,1175) - lu(k,1193) = - lu(k,644) * lu(k,1175) - lu(k,1194) = lu(k,1194) - lu(k,645) * lu(k,1175) - lu(k,1195) = - lu(k,646) * lu(k,1175) - lu(k,1198) = lu(k,1198) - lu(k,647) * lu(k,1175) - lu(k,1203) = lu(k,1203) - lu(k,648) * lu(k,1175) - lu(k,1220) = lu(k,1220) - lu(k,641) * lu(k,1219) - lu(k,1228) = lu(k,1228) - lu(k,642) * lu(k,1219) - lu(k,1237) = lu(k,1237) - lu(k,643) * lu(k,1219) - lu(k,1239) = lu(k,1239) - lu(k,644) * lu(k,1219) - lu(k,1240) = lu(k,1240) - lu(k,645) * lu(k,1219) - lu(k,1241) = lu(k,1241) - lu(k,646) * lu(k,1219) - lu(k,1244) = lu(k,1244) - lu(k,647) * lu(k,1219) - lu(k,1249) = lu(k,1249) - lu(k,648) * lu(k,1219) - lu(k,1306) = lu(k,1306) - lu(k,641) * lu(k,1305) - lu(k,1307) = - lu(k,642) * lu(k,1305) - lu(k,1317) = lu(k,1317) - lu(k,643) * lu(k,1305) - lu(k,1319) = lu(k,1319) - lu(k,644) * lu(k,1305) - lu(k,1320) = lu(k,1320) - lu(k,645) * lu(k,1305) - lu(k,1321) = lu(k,1321) - lu(k,646) * lu(k,1305) - lu(k,1324) = lu(k,1324) - lu(k,647) * lu(k,1305) - lu(k,1329) = lu(k,1329) - lu(k,648) * lu(k,1305) - lu(k,1387) = lu(k,1387) - lu(k,641) * lu(k,1386) - lu(k,1395) = lu(k,1395) - lu(k,642) * lu(k,1386) - lu(k,1406) = lu(k,1406) - lu(k,643) * lu(k,1386) - lu(k,1408) = lu(k,1408) - lu(k,644) * lu(k,1386) - lu(k,1409) = lu(k,1409) - lu(k,645) * lu(k,1386) - lu(k,1410) = lu(k,1410) - lu(k,646) * lu(k,1386) - lu(k,1413) = lu(k,1413) - lu(k,647) * lu(k,1386) - lu(k,1418) = lu(k,1418) - lu(k,648) * lu(k,1386) - lu(k,1483) = lu(k,1483) - lu(k,641) * lu(k,1482) - lu(k,1491) = lu(k,1491) - lu(k,642) * lu(k,1482) - lu(k,1499) = lu(k,1499) - lu(k,643) * lu(k,1482) - lu(k,1501) = lu(k,1501) - lu(k,644) * lu(k,1482) - lu(k,1502) = lu(k,1502) - lu(k,645) * lu(k,1482) - lu(k,1503) = lu(k,1503) - lu(k,646) * lu(k,1482) - lu(k,1506) = lu(k,1506) - lu(k,647) * lu(k,1482) - lu(k,1511) = lu(k,1511) - lu(k,648) * lu(k,1482) + lu(k,961) = lu(k,961) - lu(k,641) * lu(k,960) + lu(k,969) = lu(k,969) - lu(k,642) * lu(k,960) + lu(k,973) = lu(k,973) - lu(k,643) * lu(k,960) + lu(k,974) = - lu(k,644) * lu(k,960) + lu(k,979) = lu(k,979) - lu(k,645) * lu(k,960) + lu(k,983) = lu(k,983) - lu(k,646) * lu(k,960) + lu(k,986) = - lu(k,647) * lu(k,960) + lu(k,988) = lu(k,988) - lu(k,648) * lu(k,960) + lu(k,1005) = lu(k,1005) - lu(k,641) * lu(k,1004) + lu(k,1013) = lu(k,1013) - lu(k,642) * lu(k,1004) + lu(k,1019) = lu(k,1019) - lu(k,643) * lu(k,1004) + lu(k,1020) = lu(k,1020) - lu(k,644) * lu(k,1004) + lu(k,1025) = lu(k,1025) - lu(k,645) * lu(k,1004) + lu(k,1029) = lu(k,1029) - lu(k,646) * lu(k,1004) + lu(k,1032) = lu(k,1032) - lu(k,647) * lu(k,1004) + lu(k,1034) = lu(k,1034) - lu(k,648) * lu(k,1004) + lu(k,1112) = lu(k,1112) - lu(k,641) * lu(k,1111) + lu(k,1120) = lu(k,1120) - lu(k,642) * lu(k,1111) + lu(k,1125) = lu(k,1125) - lu(k,643) * lu(k,1111) + lu(k,1126) = lu(k,1126) - lu(k,644) * lu(k,1111) + lu(k,1131) = lu(k,1131) - lu(k,645) * lu(k,1111) + lu(k,1135) = lu(k,1135) - lu(k,646) * lu(k,1111) + lu(k,1138) = lu(k,1138) - lu(k,647) * lu(k,1111) + lu(k,1140) = lu(k,1140) - lu(k,648) * lu(k,1111) + lu(k,1240) = lu(k,1240) - lu(k,641) * lu(k,1239) + lu(k,1248) = lu(k,1248) - lu(k,642) * lu(k,1239) + lu(k,1256) = lu(k,1256) - lu(k,643) * lu(k,1239) + lu(k,1257) = lu(k,1257) - lu(k,644) * lu(k,1239) + lu(k,1262) = lu(k,1262) - lu(k,645) * lu(k,1239) + lu(k,1266) = lu(k,1266) - lu(k,646) * lu(k,1239) + lu(k,1269) = lu(k,1269) - lu(k,647) * lu(k,1239) + lu(k,1271) = lu(k,1271) - lu(k,648) * lu(k,1239) + lu(k,1286) = lu(k,1286) - lu(k,641) * lu(k,1285) + lu(k,1287) = - lu(k,642) * lu(k,1285) + lu(k,1294) = lu(k,1294) - lu(k,643) * lu(k,1285) + lu(k,1295) = lu(k,1295) - lu(k,644) * lu(k,1285) + lu(k,1300) = lu(k,1300) - lu(k,645) * lu(k,1285) + lu(k,1304) = lu(k,1304) - lu(k,646) * lu(k,1285) + lu(k,1307) = lu(k,1307) - lu(k,647) * lu(k,1285) + lu(k,1309) = lu(k,1309) - lu(k,648) * lu(k,1285) + lu(k,1389) = lu(k,1389) - lu(k,641) * lu(k,1388) + lu(k,1397) = lu(k,1397) - lu(k,642) * lu(k,1388) + lu(k,1404) = lu(k,1404) - lu(k,643) * lu(k,1388) + lu(k,1405) = lu(k,1405) - lu(k,644) * lu(k,1388) + lu(k,1410) = lu(k,1410) - lu(k,645) * lu(k,1388) + lu(k,1414) = lu(k,1414) - lu(k,646) * lu(k,1388) + lu(k,1417) = lu(k,1417) - lu(k,647) * lu(k,1388) + lu(k,1419) = lu(k,1419) - lu(k,648) * lu(k,1388) + lu(k,1528) = lu(k,1528) - lu(k,641) * lu(k,1527) + lu(k,1536) = lu(k,1536) - lu(k,642) * lu(k,1527) + lu(k,1542) = lu(k,1542) - lu(k,643) * lu(k,1527) + lu(k,1543) = lu(k,1543) - lu(k,644) * lu(k,1527) + lu(k,1548) = lu(k,1548) - lu(k,645) * lu(k,1527) + lu(k,1552) = lu(k,1552) - lu(k,646) * lu(k,1527) + lu(k,1555) = lu(k,1555) - lu(k,647) * lu(k,1527) + lu(k,1557) = lu(k,1557) - lu(k,648) * lu(k,1527) end do end subroutine lu_fac14 subroutine lu_fac15( avec_len, lu ) @@ -2848,68 +2847,68 @@ subroutine lu_fac15( avec_len, lu ) lu(k,651) = lu(k,651) * lu(k,649) lu(k,652) = lu(k,652) * lu(k,649) lu(k,659) = - lu(k,650) * lu(k,653) - lu(k,661) = lu(k,661) - lu(k,651) * lu(k,653) - lu(k,663) = lu(k,663) - lu(k,652) * lu(k,653) + lu(k,660) = lu(k,660) - lu(k,651) * lu(k,653) + lu(k,661) = lu(k,661) - lu(k,652) * lu(k,653) lu(k,674) = lu(k,674) - lu(k,650) * lu(k,670) - lu(k,677) = lu(k,677) - lu(k,651) * lu(k,670) + lu(k,679) = lu(k,679) - lu(k,651) * lu(k,670) lu(k,680) = lu(k,680) - lu(k,652) * lu(k,670) lu(k,685) = - lu(k,650) * lu(k,682) - lu(k,686) = lu(k,686) - lu(k,651) * lu(k,682) - lu(k,689) = lu(k,689) - lu(k,652) * lu(k,682) + lu(k,687) = lu(k,687) - lu(k,651) * lu(k,682) + lu(k,688) = lu(k,688) - lu(k,652) * lu(k,682) lu(k,707) = lu(k,707) - lu(k,650) * lu(k,698) - lu(k,710) = lu(k,710) - lu(k,651) * lu(k,698) - lu(k,715) = lu(k,715) - lu(k,652) * lu(k,698) + lu(k,712) = lu(k,712) - lu(k,651) * lu(k,698) + lu(k,713) = lu(k,713) - lu(k,652) * lu(k,698) lu(k,729) = lu(k,729) - lu(k,650) * lu(k,723) - lu(k,732) = lu(k,732) - lu(k,651) * lu(k,723) - lu(k,736) = lu(k,736) - lu(k,652) * lu(k,723) + lu(k,734) = lu(k,734) - lu(k,651) * lu(k,723) + lu(k,735) = lu(k,735) - lu(k,652) * lu(k,723) lu(k,747) = lu(k,747) - lu(k,650) * lu(k,741) - lu(k,751) = lu(k,751) - lu(k,651) * lu(k,741) - lu(k,756) = lu(k,756) - lu(k,652) * lu(k,741) + lu(k,754) = lu(k,754) - lu(k,651) * lu(k,741) + lu(k,755) = lu(k,755) - lu(k,652) * lu(k,741) lu(k,794) = lu(k,794) - lu(k,650) * lu(k,785) - lu(k,798) = lu(k,798) - lu(k,651) * lu(k,785) - lu(k,803) = lu(k,803) - lu(k,652) * lu(k,785) + lu(k,801) = lu(k,801) - lu(k,651) * lu(k,785) + lu(k,802) = lu(k,802) - lu(k,652) * lu(k,785) lu(k,815) = lu(k,815) - lu(k,650) * lu(k,814) - lu(k,818) = - lu(k,651) * lu(k,814) - lu(k,820) = lu(k,820) - lu(k,652) * lu(k,814) + lu(k,821) = lu(k,821) - lu(k,651) * lu(k,814) + lu(k,822) = - lu(k,652) * lu(k,814) lu(k,875) = - lu(k,650) * lu(k,874) - lu(k,881) = lu(k,881) - lu(k,651) * lu(k,874) + lu(k,882) = lu(k,882) - lu(k,651) * lu(k,874) lu(k,884) = lu(k,884) - lu(k,652) * lu(k,874) lu(k,906) = lu(k,906) - lu(k,650) * lu(k,905) lu(k,914) = lu(k,914) - lu(k,651) * lu(k,905) lu(k,918) = lu(k,918) - lu(k,652) * lu(k,905) - lu(k,989) = lu(k,989) - lu(k,650) * lu(k,985) - lu(k,998) = lu(k,998) - lu(k,651) * lu(k,985) - lu(k,1005) = lu(k,1005) - lu(k,652) * lu(k,985) - lu(k,1013) = - lu(k,650) * lu(k,1012) - lu(k,1022) = lu(k,1022) - lu(k,651) * lu(k,1012) - lu(k,1029) = lu(k,1029) - lu(k,652) * lu(k,1012) - lu(k,1072) = lu(k,1072) - lu(k,650) * lu(k,1063) - lu(k,1081) = lu(k,1081) - lu(k,651) * lu(k,1063) - lu(k,1088) = lu(k,1088) - lu(k,652) * lu(k,1063) - lu(k,1119) = lu(k,1119) - lu(k,650) * lu(k,1110) - lu(k,1127) = lu(k,1127) - lu(k,651) * lu(k,1110) - lu(k,1134) = lu(k,1134) - lu(k,652) * lu(k,1110) - lu(k,1185) = lu(k,1185) - lu(k,650) * lu(k,1176) - lu(k,1191) = lu(k,1191) - lu(k,651) * lu(k,1176) - lu(k,1198) = lu(k,1198) - lu(k,652) * lu(k,1176) - lu(k,1229) = lu(k,1229) - lu(k,650) * lu(k,1220) - lu(k,1237) = lu(k,1237) - lu(k,651) * lu(k,1220) - lu(k,1244) = lu(k,1244) - lu(k,652) * lu(k,1220) - lu(k,1308) = lu(k,1308) - lu(k,650) * lu(k,1306) - lu(k,1317) = lu(k,1317) - lu(k,651) * lu(k,1306) - lu(k,1324) = lu(k,1324) - lu(k,652) * lu(k,1306) - lu(k,1396) = lu(k,1396) - lu(k,650) * lu(k,1387) - lu(k,1406) = lu(k,1406) - lu(k,651) * lu(k,1387) - lu(k,1413) = lu(k,1413) - lu(k,652) * lu(k,1387) - lu(k,1441) = lu(k,1441) - lu(k,650) * lu(k,1440) - lu(k,1451) = lu(k,1451) - lu(k,651) * lu(k,1440) - lu(k,1458) = lu(k,1458) - lu(k,652) * lu(k,1440) - lu(k,1492) = lu(k,1492) - lu(k,650) * lu(k,1483) - lu(k,1499) = lu(k,1499) - lu(k,651) * lu(k,1483) - lu(k,1506) = lu(k,1506) - lu(k,652) * lu(k,1483) - lu(k,1515) = lu(k,1515) - lu(k,650) * lu(k,1514) - lu(k,1524) = lu(k,1524) - lu(k,651) * lu(k,1514) - lu(k,1531) = lu(k,1531) - lu(k,652) * lu(k,1514) + lu(k,926) = lu(k,926) - lu(k,650) * lu(k,925) + lu(k,938) = lu(k,938) - lu(k,651) * lu(k,925) + lu(k,942) = lu(k,942) - lu(k,652) * lu(k,925) + lu(k,970) = lu(k,970) - lu(k,650) * lu(k,961) + lu(k,979) = lu(k,979) - lu(k,651) * lu(k,961) + lu(k,983) = lu(k,983) - lu(k,652) * lu(k,961) + lu(k,1014) = lu(k,1014) - lu(k,650) * lu(k,1005) + lu(k,1025) = lu(k,1025) - lu(k,651) * lu(k,1005) + lu(k,1029) = lu(k,1029) - lu(k,652) * lu(k,1005) + lu(k,1071) = lu(k,1071) - lu(k,650) * lu(k,1067) + lu(k,1083) = lu(k,1083) - lu(k,651) * lu(k,1067) + lu(k,1087) = lu(k,1087) - lu(k,652) * lu(k,1067) + lu(k,1121) = lu(k,1121) - lu(k,650) * lu(k,1112) + lu(k,1131) = lu(k,1131) - lu(k,651) * lu(k,1112) + lu(k,1135) = lu(k,1135) - lu(k,652) * lu(k,1112) + lu(k,1249) = lu(k,1249) - lu(k,650) * lu(k,1240) + lu(k,1262) = lu(k,1262) - lu(k,651) * lu(k,1240) + lu(k,1266) = lu(k,1266) - lu(k,652) * lu(k,1240) + lu(k,1288) = lu(k,1288) - lu(k,650) * lu(k,1286) + lu(k,1300) = lu(k,1300) - lu(k,651) * lu(k,1286) + lu(k,1304) = lu(k,1304) - lu(k,652) * lu(k,1286) + lu(k,1398) = lu(k,1398) - lu(k,650) * lu(k,1389) + lu(k,1410) = lu(k,1410) - lu(k,651) * lu(k,1389) + lu(k,1414) = lu(k,1414) - lu(k,652) * lu(k,1389) + lu(k,1422) = - lu(k,650) * lu(k,1421) + lu(k,1434) = lu(k,1434) - lu(k,651) * lu(k,1421) + lu(k,1438) = lu(k,1438) - lu(k,652) * lu(k,1421) + lu(k,1466) = lu(k,1466) - lu(k,650) * lu(k,1465) + lu(k,1479) = lu(k,1479) - lu(k,651) * lu(k,1465) + lu(k,1483) = lu(k,1483) - lu(k,652) * lu(k,1465) + lu(k,1537) = lu(k,1537) - lu(k,650) * lu(k,1528) + lu(k,1548) = lu(k,1548) - lu(k,651) * lu(k,1528) + lu(k,1552) = lu(k,1552) - lu(k,652) * lu(k,1528) lu(k,654) = 1._r8 / lu(k,654) lu(k,655) = lu(k,655) * lu(k,654) lu(k,656) = lu(k,656) * lu(k,654) @@ -2926,81 +2925,81 @@ subroutine lu_fac15( avec_len, lu ) lu(k,705) = - lu(k,657) * lu(k,699) lu(k,706) = lu(k,706) - lu(k,658) * lu(k,699) lu(k,707) = lu(k,707) - lu(k,659) * lu(k,699) - lu(k,709) = lu(k,709) - lu(k,660) * lu(k,699) - lu(k,710) = lu(k,710) - lu(k,661) * lu(k,699) - lu(k,711) = - lu(k,662) * lu(k,699) - lu(k,715) = lu(k,715) - lu(k,663) * lu(k,699) + lu(k,712) = lu(k,712) - lu(k,660) * lu(k,699) + lu(k,713) = lu(k,713) - lu(k,661) * lu(k,699) + lu(k,714) = lu(k,714) - lu(k,662) * lu(k,699) + lu(k,716) = - lu(k,663) * lu(k,699) lu(k,717) = - lu(k,664) * lu(k,699) lu(k,788) = lu(k,788) - lu(k,655) * lu(k,786) lu(k,790) = lu(k,790) - lu(k,656) * lu(k,786) lu(k,792) = lu(k,792) - lu(k,657) * lu(k,786) lu(k,793) = lu(k,793) - lu(k,658) * lu(k,786) lu(k,794) = lu(k,794) - lu(k,659) * lu(k,786) - lu(k,797) = lu(k,797) - lu(k,660) * lu(k,786) - lu(k,798) = lu(k,798) - lu(k,661) * lu(k,786) - lu(k,799) = lu(k,799) - lu(k,662) * lu(k,786) - lu(k,803) = lu(k,803) - lu(k,663) * lu(k,786) + lu(k,801) = lu(k,801) - lu(k,660) * lu(k,786) + lu(k,802) = lu(k,802) - lu(k,661) * lu(k,786) + lu(k,803) = lu(k,803) - lu(k,662) * lu(k,786) + lu(k,805) = lu(k,805) - lu(k,663) * lu(k,786) lu(k,806) = lu(k,806) - lu(k,664) * lu(k,786) - lu(k,1066) = lu(k,1066) - lu(k,655) * lu(k,1064) - lu(k,1068) = lu(k,1068) - lu(k,656) * lu(k,1064) - lu(k,1070) = lu(k,1070) - lu(k,657) * lu(k,1064) - lu(k,1071) = lu(k,1071) - lu(k,658) * lu(k,1064) - lu(k,1072) = lu(k,1072) - lu(k,659) * lu(k,1064) - lu(k,1080) = lu(k,1080) - lu(k,660) * lu(k,1064) - lu(k,1081) = lu(k,1081) - lu(k,661) * lu(k,1064) - lu(k,1082) = lu(k,1082) - lu(k,662) * lu(k,1064) - lu(k,1088) = lu(k,1088) - lu(k,663) * lu(k,1064) - lu(k,1093) = lu(k,1093) - lu(k,664) * lu(k,1064) - lu(k,1113) = lu(k,1113) - lu(k,655) * lu(k,1111) - lu(k,1115) = - lu(k,656) * lu(k,1111) - lu(k,1117) = - lu(k,657) * lu(k,1111) - lu(k,1118) = lu(k,1118) - lu(k,658) * lu(k,1111) - lu(k,1119) = lu(k,1119) - lu(k,659) * lu(k,1111) - lu(k,1126) = lu(k,1126) - lu(k,660) * lu(k,1111) - lu(k,1127) = lu(k,1127) - lu(k,661) * lu(k,1111) - lu(k,1128) = lu(k,1128) - lu(k,662) * lu(k,1111) - lu(k,1134) = lu(k,1134) - lu(k,663) * lu(k,1111) - lu(k,1139) = lu(k,1139) - lu(k,664) * lu(k,1111) - lu(k,1179) = lu(k,1179) - lu(k,655) * lu(k,1177) - lu(k,1181) = lu(k,1181) - lu(k,656) * lu(k,1177) - lu(k,1183) = lu(k,1183) - lu(k,657) * lu(k,1177) - lu(k,1184) = lu(k,1184) - lu(k,658) * lu(k,1177) - lu(k,1185) = lu(k,1185) - lu(k,659) * lu(k,1177) - lu(k,1190) = lu(k,1190) - lu(k,660) * lu(k,1177) - lu(k,1191) = lu(k,1191) - lu(k,661) * lu(k,1177) - lu(k,1192) = - lu(k,662) * lu(k,1177) - lu(k,1198) = lu(k,1198) - lu(k,663) * lu(k,1177) - lu(k,1203) = lu(k,1203) - lu(k,664) * lu(k,1177) - lu(k,1223) = lu(k,1223) - lu(k,655) * lu(k,1221) - lu(k,1225) = lu(k,1225) - lu(k,656) * lu(k,1221) - lu(k,1227) = lu(k,1227) - lu(k,657) * lu(k,1221) - lu(k,1228) = lu(k,1228) - lu(k,658) * lu(k,1221) - lu(k,1229) = lu(k,1229) - lu(k,659) * lu(k,1221) - lu(k,1236) = lu(k,1236) - lu(k,660) * lu(k,1221) - lu(k,1237) = lu(k,1237) - lu(k,661) * lu(k,1221) - lu(k,1238) = lu(k,1238) - lu(k,662) * lu(k,1221) - lu(k,1244) = lu(k,1244) - lu(k,663) * lu(k,1221) - lu(k,1249) = lu(k,1249) - lu(k,664) * lu(k,1221) - lu(k,1390) = lu(k,1390) - lu(k,655) * lu(k,1388) - lu(k,1392) = lu(k,1392) - lu(k,656) * lu(k,1388) - lu(k,1394) = lu(k,1394) - lu(k,657) * lu(k,1388) - lu(k,1395) = lu(k,1395) - lu(k,658) * lu(k,1388) - lu(k,1396) = lu(k,1396) - lu(k,659) * lu(k,1388) - lu(k,1405) = lu(k,1405) - lu(k,660) * lu(k,1388) - lu(k,1406) = lu(k,1406) - lu(k,661) * lu(k,1388) - lu(k,1407) = lu(k,1407) - lu(k,662) * lu(k,1388) - lu(k,1413) = lu(k,1413) - lu(k,663) * lu(k,1388) - lu(k,1418) = lu(k,1418) - lu(k,664) * lu(k,1388) - lu(k,1486) = lu(k,1486) - lu(k,655) * lu(k,1484) - lu(k,1488) = lu(k,1488) - lu(k,656) * lu(k,1484) - lu(k,1490) = lu(k,1490) - lu(k,657) * lu(k,1484) - lu(k,1491) = lu(k,1491) - lu(k,658) * lu(k,1484) - lu(k,1492) = lu(k,1492) - lu(k,659) * lu(k,1484) - lu(k,1498) = lu(k,1498) - lu(k,660) * lu(k,1484) - lu(k,1499) = lu(k,1499) - lu(k,661) * lu(k,1484) - lu(k,1500) = lu(k,1500) - lu(k,662) * lu(k,1484) - lu(k,1506) = lu(k,1506) - lu(k,663) * lu(k,1484) - lu(k,1511) = lu(k,1511) - lu(k,664) * lu(k,1484) + lu(k,964) = lu(k,964) - lu(k,655) * lu(k,962) + lu(k,966) = lu(k,966) - lu(k,656) * lu(k,962) + lu(k,968) = lu(k,968) - lu(k,657) * lu(k,962) + lu(k,969) = lu(k,969) - lu(k,658) * lu(k,962) + lu(k,970) = lu(k,970) - lu(k,659) * lu(k,962) + lu(k,979) = lu(k,979) - lu(k,660) * lu(k,962) + lu(k,983) = lu(k,983) - lu(k,661) * lu(k,962) + lu(k,984) = lu(k,984) - lu(k,662) * lu(k,962) + lu(k,987) = - lu(k,663) * lu(k,962) + lu(k,988) = lu(k,988) - lu(k,664) * lu(k,962) + lu(k,1008) = lu(k,1008) - lu(k,655) * lu(k,1006) + lu(k,1010) = lu(k,1010) - lu(k,656) * lu(k,1006) + lu(k,1012) = lu(k,1012) - lu(k,657) * lu(k,1006) + lu(k,1013) = lu(k,1013) - lu(k,658) * lu(k,1006) + lu(k,1014) = lu(k,1014) - lu(k,659) * lu(k,1006) + lu(k,1025) = lu(k,1025) - lu(k,660) * lu(k,1006) + lu(k,1029) = lu(k,1029) - lu(k,661) * lu(k,1006) + lu(k,1030) = lu(k,1030) - lu(k,662) * lu(k,1006) + lu(k,1033) = lu(k,1033) - lu(k,663) * lu(k,1006) + lu(k,1034) = lu(k,1034) - lu(k,664) * lu(k,1006) + lu(k,1115) = lu(k,1115) - lu(k,655) * lu(k,1113) + lu(k,1117) = lu(k,1117) - lu(k,656) * lu(k,1113) + lu(k,1119) = lu(k,1119) - lu(k,657) * lu(k,1113) + lu(k,1120) = lu(k,1120) - lu(k,658) * lu(k,1113) + lu(k,1121) = lu(k,1121) - lu(k,659) * lu(k,1113) + lu(k,1131) = lu(k,1131) - lu(k,660) * lu(k,1113) + lu(k,1135) = lu(k,1135) - lu(k,661) * lu(k,1113) + lu(k,1136) = lu(k,1136) - lu(k,662) * lu(k,1113) + lu(k,1139) = lu(k,1139) - lu(k,663) * lu(k,1113) + lu(k,1140) = lu(k,1140) - lu(k,664) * lu(k,1113) + lu(k,1243) = lu(k,1243) - lu(k,655) * lu(k,1241) + lu(k,1245) = lu(k,1245) - lu(k,656) * lu(k,1241) + lu(k,1247) = lu(k,1247) - lu(k,657) * lu(k,1241) + lu(k,1248) = lu(k,1248) - lu(k,658) * lu(k,1241) + lu(k,1249) = lu(k,1249) - lu(k,659) * lu(k,1241) + lu(k,1262) = lu(k,1262) - lu(k,660) * lu(k,1241) + lu(k,1266) = lu(k,1266) - lu(k,661) * lu(k,1241) + lu(k,1267) = lu(k,1267) - lu(k,662) * lu(k,1241) + lu(k,1270) = lu(k,1270) - lu(k,663) * lu(k,1241) + lu(k,1271) = lu(k,1271) - lu(k,664) * lu(k,1241) + lu(k,1392) = lu(k,1392) - lu(k,655) * lu(k,1390) + lu(k,1394) = lu(k,1394) - lu(k,656) * lu(k,1390) + lu(k,1396) = lu(k,1396) - lu(k,657) * lu(k,1390) + lu(k,1397) = lu(k,1397) - lu(k,658) * lu(k,1390) + lu(k,1398) = lu(k,1398) - lu(k,659) * lu(k,1390) + lu(k,1410) = lu(k,1410) - lu(k,660) * lu(k,1390) + lu(k,1414) = lu(k,1414) - lu(k,661) * lu(k,1390) + lu(k,1415) = lu(k,1415) - lu(k,662) * lu(k,1390) + lu(k,1418) = lu(k,1418) - lu(k,663) * lu(k,1390) + lu(k,1419) = lu(k,1419) - lu(k,664) * lu(k,1390) + lu(k,1531) = lu(k,1531) - lu(k,655) * lu(k,1529) + lu(k,1533) = - lu(k,656) * lu(k,1529) + lu(k,1535) = - lu(k,657) * lu(k,1529) + lu(k,1536) = lu(k,1536) - lu(k,658) * lu(k,1529) + lu(k,1537) = lu(k,1537) - lu(k,659) * lu(k,1529) + lu(k,1548) = lu(k,1548) - lu(k,660) * lu(k,1529) + lu(k,1552) = lu(k,1552) - lu(k,661) * lu(k,1529) + lu(k,1553) = lu(k,1553) - lu(k,662) * lu(k,1529) + lu(k,1556) = lu(k,1556) - lu(k,663) * lu(k,1529) + lu(k,1557) = lu(k,1557) - lu(k,664) * lu(k,1529) lu(k,671) = 1._r8 / lu(k,671) lu(k,672) = lu(k,672) * lu(k,671) lu(k,673) = lu(k,673) * lu(k,671) @@ -3018,90 +3017,90 @@ subroutine lu_fac15( avec_len, lu ) lu(k,708) = lu(k,708) - lu(k,675) * lu(k,700) lu(k,709) = lu(k,709) - lu(k,676) * lu(k,700) lu(k,710) = lu(k,710) - lu(k,677) * lu(k,700) - lu(k,713) = lu(k,713) - lu(k,678) * lu(k,700) - lu(k,714) = lu(k,714) - lu(k,679) * lu(k,700) - lu(k,715) = lu(k,715) - lu(k,680) * lu(k,700) - lu(k,716) = lu(k,716) - lu(k,681) * lu(k,700) + lu(k,711) = lu(k,711) - lu(k,678) * lu(k,700) + lu(k,712) = lu(k,712) - lu(k,679) * lu(k,700) + lu(k,713) = lu(k,713) - lu(k,680) * lu(k,700) + lu(k,714) = lu(k,714) - lu(k,681) * lu(k,700) lu(k,725) = lu(k,725) - lu(k,672) * lu(k,724) lu(k,728) = lu(k,728) - lu(k,673) * lu(k,724) lu(k,729) = lu(k,729) - lu(k,674) * lu(k,724) lu(k,730) = lu(k,730) - lu(k,675) * lu(k,724) lu(k,731) = lu(k,731) - lu(k,676) * lu(k,724) lu(k,732) = lu(k,732) - lu(k,677) * lu(k,724) - lu(k,734) = lu(k,734) - lu(k,678) * lu(k,724) - lu(k,735) = lu(k,735) - lu(k,679) * lu(k,724) - lu(k,736) = lu(k,736) - lu(k,680) * lu(k,724) - lu(k,737) = lu(k,737) - lu(k,681) * lu(k,724) + lu(k,733) = lu(k,733) - lu(k,678) * lu(k,724) + lu(k,734) = lu(k,734) - lu(k,679) * lu(k,724) + lu(k,735) = lu(k,735) - lu(k,680) * lu(k,724) + lu(k,736) = lu(k,736) - lu(k,681) * lu(k,724) lu(k,788) = lu(k,788) - lu(k,672) * lu(k,787) lu(k,793) = lu(k,793) - lu(k,673) * lu(k,787) lu(k,794) = lu(k,794) - lu(k,674) * lu(k,787) - lu(k,796) = lu(k,796) - lu(k,675) * lu(k,787) - lu(k,797) = lu(k,797) - lu(k,676) * lu(k,787) - lu(k,798) = lu(k,798) - lu(k,677) * lu(k,787) - lu(k,801) = lu(k,801) - lu(k,678) * lu(k,787) - lu(k,802) = lu(k,802) - lu(k,679) * lu(k,787) - lu(k,803) = lu(k,803) - lu(k,680) * lu(k,787) - lu(k,804) = lu(k,804) - lu(k,681) * lu(k,787) - lu(k,1066) = lu(k,1066) - lu(k,672) * lu(k,1065) - lu(k,1071) = lu(k,1071) - lu(k,673) * lu(k,1065) - lu(k,1072) = lu(k,1072) - lu(k,674) * lu(k,1065) - lu(k,1079) = lu(k,1079) - lu(k,675) * lu(k,1065) - lu(k,1080) = lu(k,1080) - lu(k,676) * lu(k,1065) - lu(k,1081) = lu(k,1081) - lu(k,677) * lu(k,1065) - lu(k,1084) = lu(k,1084) - lu(k,678) * lu(k,1065) - lu(k,1085) = lu(k,1085) - lu(k,679) * lu(k,1065) - lu(k,1088) = lu(k,1088) - lu(k,680) * lu(k,1065) - lu(k,1090) = lu(k,1090) - lu(k,681) * lu(k,1065) - lu(k,1113) = lu(k,1113) - lu(k,672) * lu(k,1112) - lu(k,1118) = lu(k,1118) - lu(k,673) * lu(k,1112) - lu(k,1119) = lu(k,1119) - lu(k,674) * lu(k,1112) - lu(k,1125) = lu(k,1125) - lu(k,675) * lu(k,1112) - lu(k,1126) = lu(k,1126) - lu(k,676) * lu(k,1112) - lu(k,1127) = lu(k,1127) - lu(k,677) * lu(k,1112) - lu(k,1130) = lu(k,1130) - lu(k,678) * lu(k,1112) - lu(k,1131) = lu(k,1131) - lu(k,679) * lu(k,1112) - lu(k,1134) = lu(k,1134) - lu(k,680) * lu(k,1112) - lu(k,1136) = lu(k,1136) - lu(k,681) * lu(k,1112) - lu(k,1179) = lu(k,1179) - lu(k,672) * lu(k,1178) - lu(k,1184) = lu(k,1184) - lu(k,673) * lu(k,1178) - lu(k,1185) = lu(k,1185) - lu(k,674) * lu(k,1178) - lu(k,1189) = lu(k,1189) - lu(k,675) * lu(k,1178) - lu(k,1190) = lu(k,1190) - lu(k,676) * lu(k,1178) - lu(k,1191) = lu(k,1191) - lu(k,677) * lu(k,1178) - lu(k,1194) = lu(k,1194) - lu(k,678) * lu(k,1178) - lu(k,1195) = lu(k,1195) - lu(k,679) * lu(k,1178) - lu(k,1198) = lu(k,1198) - lu(k,680) * lu(k,1178) - lu(k,1200) = lu(k,1200) - lu(k,681) * lu(k,1178) - lu(k,1223) = lu(k,1223) - lu(k,672) * lu(k,1222) - lu(k,1228) = lu(k,1228) - lu(k,673) * lu(k,1222) - lu(k,1229) = lu(k,1229) - lu(k,674) * lu(k,1222) - lu(k,1235) = lu(k,1235) - lu(k,675) * lu(k,1222) - lu(k,1236) = lu(k,1236) - lu(k,676) * lu(k,1222) - lu(k,1237) = lu(k,1237) - lu(k,677) * lu(k,1222) - lu(k,1240) = lu(k,1240) - lu(k,678) * lu(k,1222) - lu(k,1241) = lu(k,1241) - lu(k,679) * lu(k,1222) - lu(k,1244) = lu(k,1244) - lu(k,680) * lu(k,1222) - lu(k,1246) = lu(k,1246) - lu(k,681) * lu(k,1222) - lu(k,1390) = lu(k,1390) - lu(k,672) * lu(k,1389) - lu(k,1395) = lu(k,1395) - lu(k,673) * lu(k,1389) - lu(k,1396) = lu(k,1396) - lu(k,674) * lu(k,1389) - lu(k,1404) = lu(k,1404) - lu(k,675) * lu(k,1389) - lu(k,1405) = lu(k,1405) - lu(k,676) * lu(k,1389) - lu(k,1406) = lu(k,1406) - lu(k,677) * lu(k,1389) - lu(k,1409) = lu(k,1409) - lu(k,678) * lu(k,1389) - lu(k,1410) = lu(k,1410) - lu(k,679) * lu(k,1389) - lu(k,1413) = lu(k,1413) - lu(k,680) * lu(k,1389) - lu(k,1415) = lu(k,1415) - lu(k,681) * lu(k,1389) - lu(k,1486) = lu(k,1486) - lu(k,672) * lu(k,1485) - lu(k,1491) = lu(k,1491) - lu(k,673) * lu(k,1485) - lu(k,1492) = lu(k,1492) - lu(k,674) * lu(k,1485) - lu(k,1497) = lu(k,1497) - lu(k,675) * lu(k,1485) - lu(k,1498) = lu(k,1498) - lu(k,676) * lu(k,1485) - lu(k,1499) = lu(k,1499) - lu(k,677) * lu(k,1485) - lu(k,1502) = lu(k,1502) - lu(k,678) * lu(k,1485) - lu(k,1503) = lu(k,1503) - lu(k,679) * lu(k,1485) - lu(k,1506) = lu(k,1506) - lu(k,680) * lu(k,1485) - lu(k,1508) = lu(k,1508) - lu(k,681) * lu(k,1485) + lu(k,797) = lu(k,797) - lu(k,675) * lu(k,787) + lu(k,798) = lu(k,798) - lu(k,676) * lu(k,787) + lu(k,799) = lu(k,799) - lu(k,677) * lu(k,787) + lu(k,800) = lu(k,800) - lu(k,678) * lu(k,787) + lu(k,801) = lu(k,801) - lu(k,679) * lu(k,787) + lu(k,802) = lu(k,802) - lu(k,680) * lu(k,787) + lu(k,803) = lu(k,803) - lu(k,681) * lu(k,787) + lu(k,964) = lu(k,964) - lu(k,672) * lu(k,963) + lu(k,969) = lu(k,969) - lu(k,673) * lu(k,963) + lu(k,970) = lu(k,970) - lu(k,674) * lu(k,963) + lu(k,973) = lu(k,973) - lu(k,675) * lu(k,963) + lu(k,974) = lu(k,974) - lu(k,676) * lu(k,963) + lu(k,976) = lu(k,976) - lu(k,677) * lu(k,963) + lu(k,977) = lu(k,977) - lu(k,678) * lu(k,963) + lu(k,979) = lu(k,979) - lu(k,679) * lu(k,963) + lu(k,983) = lu(k,983) - lu(k,680) * lu(k,963) + lu(k,984) = lu(k,984) - lu(k,681) * lu(k,963) + lu(k,1008) = lu(k,1008) - lu(k,672) * lu(k,1007) + lu(k,1013) = lu(k,1013) - lu(k,673) * lu(k,1007) + lu(k,1014) = lu(k,1014) - lu(k,674) * lu(k,1007) + lu(k,1019) = lu(k,1019) - lu(k,675) * lu(k,1007) + lu(k,1020) = lu(k,1020) - lu(k,676) * lu(k,1007) + lu(k,1022) = lu(k,1022) - lu(k,677) * lu(k,1007) + lu(k,1023) = lu(k,1023) - lu(k,678) * lu(k,1007) + lu(k,1025) = lu(k,1025) - lu(k,679) * lu(k,1007) + lu(k,1029) = lu(k,1029) - lu(k,680) * lu(k,1007) + lu(k,1030) = lu(k,1030) - lu(k,681) * lu(k,1007) + lu(k,1115) = lu(k,1115) - lu(k,672) * lu(k,1114) + lu(k,1120) = lu(k,1120) - lu(k,673) * lu(k,1114) + lu(k,1121) = lu(k,1121) - lu(k,674) * lu(k,1114) + lu(k,1125) = lu(k,1125) - lu(k,675) * lu(k,1114) + lu(k,1126) = lu(k,1126) - lu(k,676) * lu(k,1114) + lu(k,1128) = lu(k,1128) - lu(k,677) * lu(k,1114) + lu(k,1129) = lu(k,1129) - lu(k,678) * lu(k,1114) + lu(k,1131) = lu(k,1131) - lu(k,679) * lu(k,1114) + lu(k,1135) = lu(k,1135) - lu(k,680) * lu(k,1114) + lu(k,1136) = lu(k,1136) - lu(k,681) * lu(k,1114) + lu(k,1243) = lu(k,1243) - lu(k,672) * lu(k,1242) + lu(k,1248) = lu(k,1248) - lu(k,673) * lu(k,1242) + lu(k,1249) = lu(k,1249) - lu(k,674) * lu(k,1242) + lu(k,1256) = lu(k,1256) - lu(k,675) * lu(k,1242) + lu(k,1257) = lu(k,1257) - lu(k,676) * lu(k,1242) + lu(k,1259) = lu(k,1259) - lu(k,677) * lu(k,1242) + lu(k,1260) = lu(k,1260) - lu(k,678) * lu(k,1242) + lu(k,1262) = lu(k,1262) - lu(k,679) * lu(k,1242) + lu(k,1266) = lu(k,1266) - lu(k,680) * lu(k,1242) + lu(k,1267) = lu(k,1267) - lu(k,681) * lu(k,1242) + lu(k,1392) = lu(k,1392) - lu(k,672) * lu(k,1391) + lu(k,1397) = lu(k,1397) - lu(k,673) * lu(k,1391) + lu(k,1398) = lu(k,1398) - lu(k,674) * lu(k,1391) + lu(k,1404) = lu(k,1404) - lu(k,675) * lu(k,1391) + lu(k,1405) = lu(k,1405) - lu(k,676) * lu(k,1391) + lu(k,1407) = lu(k,1407) - lu(k,677) * lu(k,1391) + lu(k,1408) = lu(k,1408) - lu(k,678) * lu(k,1391) + lu(k,1410) = lu(k,1410) - lu(k,679) * lu(k,1391) + lu(k,1414) = lu(k,1414) - lu(k,680) * lu(k,1391) + lu(k,1415) = lu(k,1415) - lu(k,681) * lu(k,1391) + lu(k,1531) = lu(k,1531) - lu(k,672) * lu(k,1530) + lu(k,1536) = lu(k,1536) - lu(k,673) * lu(k,1530) + lu(k,1537) = lu(k,1537) - lu(k,674) * lu(k,1530) + lu(k,1542) = lu(k,1542) - lu(k,675) * lu(k,1530) + lu(k,1543) = lu(k,1543) - lu(k,676) * lu(k,1530) + lu(k,1545) = lu(k,1545) - lu(k,677) * lu(k,1530) + lu(k,1546) = lu(k,1546) - lu(k,678) * lu(k,1530) + lu(k,1548) = lu(k,1548) - lu(k,679) * lu(k,1530) + lu(k,1552) = lu(k,1552) - lu(k,680) * lu(k,1530) + lu(k,1553) = lu(k,1553) - lu(k,681) * lu(k,1530) lu(k,683) = 1._r8 / lu(k,683) lu(k,684) = lu(k,684) * lu(k,683) lu(k,685) = lu(k,685) * lu(k,683) @@ -3112,88 +3111,88 @@ subroutine lu_fac15( avec_len, lu ) lu(k,690) = lu(k,690) * lu(k,683) lu(k,706) = lu(k,706) - lu(k,684) * lu(k,701) lu(k,707) = lu(k,707) - lu(k,685) * lu(k,701) - lu(k,710) = lu(k,710) - lu(k,686) * lu(k,701) + lu(k,709) = lu(k,709) - lu(k,686) * lu(k,701) lu(k,712) = lu(k,712) - lu(k,687) * lu(k,701) - lu(k,714) = lu(k,714) - lu(k,688) * lu(k,701) + lu(k,713) = lu(k,713) - lu(k,688) * lu(k,701) lu(k,715) = lu(k,715) - lu(k,689) * lu(k,701) lu(k,717) = lu(k,717) - lu(k,690) * lu(k,701) lu(k,728) = lu(k,728) - lu(k,684) * lu(k,725) lu(k,729) = lu(k,729) - lu(k,685) * lu(k,725) - lu(k,732) = lu(k,732) - lu(k,686) * lu(k,725) - lu(k,733) = lu(k,733) - lu(k,687) * lu(k,725) + lu(k,731) = lu(k,731) - lu(k,686) * lu(k,725) + lu(k,734) = lu(k,734) - lu(k,687) * lu(k,725) lu(k,735) = lu(k,735) - lu(k,688) * lu(k,725) - lu(k,736) = lu(k,736) - lu(k,689) * lu(k,725) + lu(k,737) = lu(k,737) - lu(k,689) * lu(k,725) lu(k,738) = - lu(k,690) * lu(k,725) lu(k,746) = lu(k,746) - lu(k,684) * lu(k,742) lu(k,747) = lu(k,747) - lu(k,685) * lu(k,742) lu(k,751) = lu(k,751) - lu(k,686) * lu(k,742) - lu(k,753) = lu(k,753) - lu(k,687) * lu(k,742) + lu(k,754) = lu(k,754) - lu(k,687) * lu(k,742) lu(k,755) = lu(k,755) - lu(k,688) * lu(k,742) - lu(k,756) = lu(k,756) - lu(k,689) * lu(k,742) + lu(k,757) = lu(k,757) - lu(k,689) * lu(k,742) lu(k,759) = lu(k,759) - lu(k,690) * lu(k,742) lu(k,766) = lu(k,766) - lu(k,684) * lu(k,764) lu(k,767) = lu(k,767) - lu(k,685) * lu(k,764) - lu(k,770) = lu(k,770) - lu(k,686) * lu(k,764) - lu(k,772) = - lu(k,687) * lu(k,764) - lu(k,774) = lu(k,774) - lu(k,688) * lu(k,764) - lu(k,775) = lu(k,775) - lu(k,689) * lu(k,764) + lu(k,769) = lu(k,769) - lu(k,686) * lu(k,764) + lu(k,772) = lu(k,772) - lu(k,687) * lu(k,764) + lu(k,773) = lu(k,773) - lu(k,688) * lu(k,764) + lu(k,775) = - lu(k,689) * lu(k,764) lu(k,777) = lu(k,777) - lu(k,690) * lu(k,764) lu(k,793) = lu(k,793) - lu(k,684) * lu(k,788) lu(k,794) = lu(k,794) - lu(k,685) * lu(k,788) lu(k,798) = lu(k,798) - lu(k,686) * lu(k,788) - lu(k,800) = - lu(k,687) * lu(k,788) + lu(k,801) = lu(k,801) - lu(k,687) * lu(k,788) lu(k,802) = lu(k,802) - lu(k,688) * lu(k,788) - lu(k,803) = lu(k,803) - lu(k,689) * lu(k,788) + lu(k,804) = - lu(k,689) * lu(k,788) lu(k,806) = lu(k,806) - lu(k,690) * lu(k,788) - lu(k,988) = lu(k,988) - lu(k,684) * lu(k,986) - lu(k,989) = lu(k,989) - lu(k,685) * lu(k,986) - lu(k,998) = lu(k,998) - lu(k,686) * lu(k,986) - lu(k,1000) = lu(k,1000) - lu(k,687) * lu(k,986) - lu(k,1002) = lu(k,1002) - lu(k,688) * lu(k,986) - lu(k,1005) = lu(k,1005) - lu(k,689) * lu(k,986) - lu(k,1010) = lu(k,1010) - lu(k,690) * lu(k,986) - lu(k,1071) = lu(k,1071) - lu(k,684) * lu(k,1066) - lu(k,1072) = lu(k,1072) - lu(k,685) * lu(k,1066) - lu(k,1081) = lu(k,1081) - lu(k,686) * lu(k,1066) - lu(k,1083) = lu(k,1083) - lu(k,687) * lu(k,1066) - lu(k,1085) = lu(k,1085) - lu(k,688) * lu(k,1066) - lu(k,1088) = lu(k,1088) - lu(k,689) * lu(k,1066) - lu(k,1093) = lu(k,1093) - lu(k,690) * lu(k,1066) - lu(k,1118) = lu(k,1118) - lu(k,684) * lu(k,1113) - lu(k,1119) = lu(k,1119) - lu(k,685) * lu(k,1113) - lu(k,1127) = lu(k,1127) - lu(k,686) * lu(k,1113) - lu(k,1129) = lu(k,1129) - lu(k,687) * lu(k,1113) - lu(k,1131) = lu(k,1131) - lu(k,688) * lu(k,1113) - lu(k,1134) = lu(k,1134) - lu(k,689) * lu(k,1113) - lu(k,1139) = lu(k,1139) - lu(k,690) * lu(k,1113) - lu(k,1184) = lu(k,1184) - lu(k,684) * lu(k,1179) - lu(k,1185) = lu(k,1185) - lu(k,685) * lu(k,1179) - lu(k,1191) = lu(k,1191) - lu(k,686) * lu(k,1179) - lu(k,1193) = lu(k,1193) - lu(k,687) * lu(k,1179) - lu(k,1195) = lu(k,1195) - lu(k,688) * lu(k,1179) - lu(k,1198) = lu(k,1198) - lu(k,689) * lu(k,1179) - lu(k,1203) = lu(k,1203) - lu(k,690) * lu(k,1179) - lu(k,1228) = lu(k,1228) - lu(k,684) * lu(k,1223) - lu(k,1229) = lu(k,1229) - lu(k,685) * lu(k,1223) - lu(k,1237) = lu(k,1237) - lu(k,686) * lu(k,1223) - lu(k,1239) = lu(k,1239) - lu(k,687) * lu(k,1223) - lu(k,1241) = lu(k,1241) - lu(k,688) * lu(k,1223) - lu(k,1244) = lu(k,1244) - lu(k,689) * lu(k,1223) - lu(k,1249) = lu(k,1249) - lu(k,690) * lu(k,1223) - lu(k,1395) = lu(k,1395) - lu(k,684) * lu(k,1390) - lu(k,1396) = lu(k,1396) - lu(k,685) * lu(k,1390) - lu(k,1406) = lu(k,1406) - lu(k,686) * lu(k,1390) - lu(k,1408) = lu(k,1408) - lu(k,687) * lu(k,1390) - lu(k,1410) = lu(k,1410) - lu(k,688) * lu(k,1390) - lu(k,1413) = lu(k,1413) - lu(k,689) * lu(k,1390) - lu(k,1418) = lu(k,1418) - lu(k,690) * lu(k,1390) - lu(k,1491) = lu(k,1491) - lu(k,684) * lu(k,1486) - lu(k,1492) = lu(k,1492) - lu(k,685) * lu(k,1486) - lu(k,1499) = lu(k,1499) - lu(k,686) * lu(k,1486) - lu(k,1501) = lu(k,1501) - lu(k,687) * lu(k,1486) - lu(k,1503) = lu(k,1503) - lu(k,688) * lu(k,1486) - lu(k,1506) = lu(k,1506) - lu(k,689) * lu(k,1486) - lu(k,1511) = lu(k,1511) - lu(k,690) * lu(k,1486) + lu(k,969) = lu(k,969) - lu(k,684) * lu(k,964) + lu(k,970) = lu(k,970) - lu(k,685) * lu(k,964) + lu(k,974) = lu(k,974) - lu(k,686) * lu(k,964) + lu(k,979) = lu(k,979) - lu(k,687) * lu(k,964) + lu(k,983) = lu(k,983) - lu(k,688) * lu(k,964) + lu(k,986) = lu(k,986) - lu(k,689) * lu(k,964) + lu(k,988) = lu(k,988) - lu(k,690) * lu(k,964) + lu(k,1013) = lu(k,1013) - lu(k,684) * lu(k,1008) + lu(k,1014) = lu(k,1014) - lu(k,685) * lu(k,1008) + lu(k,1020) = lu(k,1020) - lu(k,686) * lu(k,1008) + lu(k,1025) = lu(k,1025) - lu(k,687) * lu(k,1008) + lu(k,1029) = lu(k,1029) - lu(k,688) * lu(k,1008) + lu(k,1032) = lu(k,1032) - lu(k,689) * lu(k,1008) + lu(k,1034) = lu(k,1034) - lu(k,690) * lu(k,1008) + lu(k,1070) = lu(k,1070) - lu(k,684) * lu(k,1068) + lu(k,1071) = lu(k,1071) - lu(k,685) * lu(k,1068) + lu(k,1078) = lu(k,1078) - lu(k,686) * lu(k,1068) + lu(k,1083) = lu(k,1083) - lu(k,687) * lu(k,1068) + lu(k,1087) = lu(k,1087) - lu(k,688) * lu(k,1068) + lu(k,1090) = lu(k,1090) - lu(k,689) * lu(k,1068) + lu(k,1092) = lu(k,1092) - lu(k,690) * lu(k,1068) + lu(k,1120) = lu(k,1120) - lu(k,684) * lu(k,1115) + lu(k,1121) = lu(k,1121) - lu(k,685) * lu(k,1115) + lu(k,1126) = lu(k,1126) - lu(k,686) * lu(k,1115) + lu(k,1131) = lu(k,1131) - lu(k,687) * lu(k,1115) + lu(k,1135) = lu(k,1135) - lu(k,688) * lu(k,1115) + lu(k,1138) = lu(k,1138) - lu(k,689) * lu(k,1115) + lu(k,1140) = lu(k,1140) - lu(k,690) * lu(k,1115) + lu(k,1248) = lu(k,1248) - lu(k,684) * lu(k,1243) + lu(k,1249) = lu(k,1249) - lu(k,685) * lu(k,1243) + lu(k,1257) = lu(k,1257) - lu(k,686) * lu(k,1243) + lu(k,1262) = lu(k,1262) - lu(k,687) * lu(k,1243) + lu(k,1266) = lu(k,1266) - lu(k,688) * lu(k,1243) + lu(k,1269) = lu(k,1269) - lu(k,689) * lu(k,1243) + lu(k,1271) = lu(k,1271) - lu(k,690) * lu(k,1243) + lu(k,1397) = lu(k,1397) - lu(k,684) * lu(k,1392) + lu(k,1398) = lu(k,1398) - lu(k,685) * lu(k,1392) + lu(k,1405) = lu(k,1405) - lu(k,686) * lu(k,1392) + lu(k,1410) = lu(k,1410) - lu(k,687) * lu(k,1392) + lu(k,1414) = lu(k,1414) - lu(k,688) * lu(k,1392) + lu(k,1417) = lu(k,1417) - lu(k,689) * lu(k,1392) + lu(k,1419) = lu(k,1419) - lu(k,690) * lu(k,1392) + lu(k,1536) = lu(k,1536) - lu(k,684) * lu(k,1531) + lu(k,1537) = lu(k,1537) - lu(k,685) * lu(k,1531) + lu(k,1543) = lu(k,1543) - lu(k,686) * lu(k,1531) + lu(k,1548) = lu(k,1548) - lu(k,687) * lu(k,1531) + lu(k,1552) = lu(k,1552) - lu(k,688) * lu(k,1531) + lu(k,1555) = lu(k,1555) - lu(k,689) * lu(k,1531) + lu(k,1557) = lu(k,1557) - lu(k,690) * lu(k,1531) lu(k,702) = 1._r8 / lu(k,702) lu(k,703) = lu(k,703) * lu(k,702) lu(k,704) = lu(k,704) * lu(k,702) @@ -3215,106 +3214,106 @@ subroutine lu_fac15( avec_len, lu ) lu(k,792) = lu(k,792) - lu(k,705) * lu(k,789) lu(k,793) = lu(k,793) - lu(k,706) * lu(k,789) lu(k,794) = lu(k,794) - lu(k,707) * lu(k,789) - lu(k,796) = lu(k,796) - lu(k,708) * lu(k,789) - lu(k,797) = lu(k,797) - lu(k,709) * lu(k,789) - lu(k,798) = lu(k,798) - lu(k,710) * lu(k,789) - lu(k,799) = lu(k,799) - lu(k,711) * lu(k,789) - lu(k,800) = lu(k,800) - lu(k,712) * lu(k,789) - lu(k,801) = lu(k,801) - lu(k,713) * lu(k,789) - lu(k,802) = lu(k,802) - lu(k,714) * lu(k,789) - lu(k,803) = lu(k,803) - lu(k,715) * lu(k,789) - lu(k,804) = lu(k,804) - lu(k,716) * lu(k,789) + lu(k,797) = lu(k,797) - lu(k,708) * lu(k,789) + lu(k,798) = lu(k,798) - lu(k,709) * lu(k,789) + lu(k,799) = lu(k,799) - lu(k,710) * lu(k,789) + lu(k,800) = lu(k,800) - lu(k,711) * lu(k,789) + lu(k,801) = lu(k,801) - lu(k,712) * lu(k,789) + lu(k,802) = lu(k,802) - lu(k,713) * lu(k,789) + lu(k,803) = lu(k,803) - lu(k,714) * lu(k,789) + lu(k,804) = lu(k,804) - lu(k,715) * lu(k,789) + lu(k,805) = lu(k,805) - lu(k,716) * lu(k,789) lu(k,806) = lu(k,806) - lu(k,717) * lu(k,789) - lu(k,1068) = lu(k,1068) - lu(k,703) * lu(k,1067) - lu(k,1069) = lu(k,1069) - lu(k,704) * lu(k,1067) - lu(k,1070) = lu(k,1070) - lu(k,705) * lu(k,1067) - lu(k,1071) = lu(k,1071) - lu(k,706) * lu(k,1067) - lu(k,1072) = lu(k,1072) - lu(k,707) * lu(k,1067) - lu(k,1079) = lu(k,1079) - lu(k,708) * lu(k,1067) - lu(k,1080) = lu(k,1080) - lu(k,709) * lu(k,1067) - lu(k,1081) = lu(k,1081) - lu(k,710) * lu(k,1067) - lu(k,1082) = lu(k,1082) - lu(k,711) * lu(k,1067) - lu(k,1083) = lu(k,1083) - lu(k,712) * lu(k,1067) - lu(k,1084) = lu(k,1084) - lu(k,713) * lu(k,1067) - lu(k,1085) = lu(k,1085) - lu(k,714) * lu(k,1067) - lu(k,1088) = lu(k,1088) - lu(k,715) * lu(k,1067) - lu(k,1090) = lu(k,1090) - lu(k,716) * lu(k,1067) - lu(k,1093) = lu(k,1093) - lu(k,717) * lu(k,1067) - lu(k,1115) = lu(k,1115) - lu(k,703) * lu(k,1114) - lu(k,1116) = lu(k,1116) - lu(k,704) * lu(k,1114) - lu(k,1117) = lu(k,1117) - lu(k,705) * lu(k,1114) - lu(k,1118) = lu(k,1118) - lu(k,706) * lu(k,1114) - lu(k,1119) = lu(k,1119) - lu(k,707) * lu(k,1114) - lu(k,1125) = lu(k,1125) - lu(k,708) * lu(k,1114) - lu(k,1126) = lu(k,1126) - lu(k,709) * lu(k,1114) - lu(k,1127) = lu(k,1127) - lu(k,710) * lu(k,1114) - lu(k,1128) = lu(k,1128) - lu(k,711) * lu(k,1114) - lu(k,1129) = lu(k,1129) - lu(k,712) * lu(k,1114) - lu(k,1130) = lu(k,1130) - lu(k,713) * lu(k,1114) - lu(k,1131) = lu(k,1131) - lu(k,714) * lu(k,1114) - lu(k,1134) = lu(k,1134) - lu(k,715) * lu(k,1114) - lu(k,1136) = lu(k,1136) - lu(k,716) * lu(k,1114) - lu(k,1139) = lu(k,1139) - lu(k,717) * lu(k,1114) - lu(k,1181) = lu(k,1181) - lu(k,703) * lu(k,1180) - lu(k,1182) = lu(k,1182) - lu(k,704) * lu(k,1180) - lu(k,1183) = lu(k,1183) - lu(k,705) * lu(k,1180) - lu(k,1184) = lu(k,1184) - lu(k,706) * lu(k,1180) - lu(k,1185) = lu(k,1185) - lu(k,707) * lu(k,1180) - lu(k,1189) = lu(k,1189) - lu(k,708) * lu(k,1180) - lu(k,1190) = lu(k,1190) - lu(k,709) * lu(k,1180) - lu(k,1191) = lu(k,1191) - lu(k,710) * lu(k,1180) - lu(k,1192) = lu(k,1192) - lu(k,711) * lu(k,1180) - lu(k,1193) = lu(k,1193) - lu(k,712) * lu(k,1180) - lu(k,1194) = lu(k,1194) - lu(k,713) * lu(k,1180) - lu(k,1195) = lu(k,1195) - lu(k,714) * lu(k,1180) - lu(k,1198) = lu(k,1198) - lu(k,715) * lu(k,1180) - lu(k,1200) = lu(k,1200) - lu(k,716) * lu(k,1180) - lu(k,1203) = lu(k,1203) - lu(k,717) * lu(k,1180) - lu(k,1225) = lu(k,1225) - lu(k,703) * lu(k,1224) - lu(k,1226) = lu(k,1226) - lu(k,704) * lu(k,1224) - lu(k,1227) = lu(k,1227) - lu(k,705) * lu(k,1224) - lu(k,1228) = lu(k,1228) - lu(k,706) * lu(k,1224) - lu(k,1229) = lu(k,1229) - lu(k,707) * lu(k,1224) - lu(k,1235) = lu(k,1235) - lu(k,708) * lu(k,1224) - lu(k,1236) = lu(k,1236) - lu(k,709) * lu(k,1224) - lu(k,1237) = lu(k,1237) - lu(k,710) * lu(k,1224) - lu(k,1238) = lu(k,1238) - lu(k,711) * lu(k,1224) - lu(k,1239) = lu(k,1239) - lu(k,712) * lu(k,1224) - lu(k,1240) = lu(k,1240) - lu(k,713) * lu(k,1224) - lu(k,1241) = lu(k,1241) - lu(k,714) * lu(k,1224) - lu(k,1244) = lu(k,1244) - lu(k,715) * lu(k,1224) - lu(k,1246) = lu(k,1246) - lu(k,716) * lu(k,1224) - lu(k,1249) = lu(k,1249) - lu(k,717) * lu(k,1224) - lu(k,1392) = lu(k,1392) - lu(k,703) * lu(k,1391) - lu(k,1393) = lu(k,1393) - lu(k,704) * lu(k,1391) - lu(k,1394) = lu(k,1394) - lu(k,705) * lu(k,1391) - lu(k,1395) = lu(k,1395) - lu(k,706) * lu(k,1391) - lu(k,1396) = lu(k,1396) - lu(k,707) * lu(k,1391) - lu(k,1404) = lu(k,1404) - lu(k,708) * lu(k,1391) - lu(k,1405) = lu(k,1405) - lu(k,709) * lu(k,1391) - lu(k,1406) = lu(k,1406) - lu(k,710) * lu(k,1391) - lu(k,1407) = lu(k,1407) - lu(k,711) * lu(k,1391) - lu(k,1408) = lu(k,1408) - lu(k,712) * lu(k,1391) - lu(k,1409) = lu(k,1409) - lu(k,713) * lu(k,1391) - lu(k,1410) = lu(k,1410) - lu(k,714) * lu(k,1391) - lu(k,1413) = lu(k,1413) - lu(k,715) * lu(k,1391) - lu(k,1415) = lu(k,1415) - lu(k,716) * lu(k,1391) - lu(k,1418) = lu(k,1418) - lu(k,717) * lu(k,1391) - lu(k,1488) = lu(k,1488) - lu(k,703) * lu(k,1487) - lu(k,1489) = lu(k,1489) - lu(k,704) * lu(k,1487) - lu(k,1490) = lu(k,1490) - lu(k,705) * lu(k,1487) - lu(k,1491) = lu(k,1491) - lu(k,706) * lu(k,1487) - lu(k,1492) = lu(k,1492) - lu(k,707) * lu(k,1487) - lu(k,1497) = lu(k,1497) - lu(k,708) * lu(k,1487) - lu(k,1498) = lu(k,1498) - lu(k,709) * lu(k,1487) - lu(k,1499) = lu(k,1499) - lu(k,710) * lu(k,1487) - lu(k,1500) = lu(k,1500) - lu(k,711) * lu(k,1487) - lu(k,1501) = lu(k,1501) - lu(k,712) * lu(k,1487) - lu(k,1502) = lu(k,1502) - lu(k,713) * lu(k,1487) - lu(k,1503) = lu(k,1503) - lu(k,714) * lu(k,1487) - lu(k,1506) = lu(k,1506) - lu(k,715) * lu(k,1487) - lu(k,1508) = lu(k,1508) - lu(k,716) * lu(k,1487) - lu(k,1511) = lu(k,1511) - lu(k,717) * lu(k,1487) + lu(k,966) = lu(k,966) - lu(k,703) * lu(k,965) + lu(k,967) = lu(k,967) - lu(k,704) * lu(k,965) + lu(k,968) = lu(k,968) - lu(k,705) * lu(k,965) + lu(k,969) = lu(k,969) - lu(k,706) * lu(k,965) + lu(k,970) = lu(k,970) - lu(k,707) * lu(k,965) + lu(k,973) = lu(k,973) - lu(k,708) * lu(k,965) + lu(k,974) = lu(k,974) - lu(k,709) * lu(k,965) + lu(k,976) = lu(k,976) - lu(k,710) * lu(k,965) + lu(k,977) = lu(k,977) - lu(k,711) * lu(k,965) + lu(k,979) = lu(k,979) - lu(k,712) * lu(k,965) + lu(k,983) = lu(k,983) - lu(k,713) * lu(k,965) + lu(k,984) = lu(k,984) - lu(k,714) * lu(k,965) + lu(k,986) = lu(k,986) - lu(k,715) * lu(k,965) + lu(k,987) = lu(k,987) - lu(k,716) * lu(k,965) + lu(k,988) = lu(k,988) - lu(k,717) * lu(k,965) + lu(k,1010) = lu(k,1010) - lu(k,703) * lu(k,1009) + lu(k,1011) = lu(k,1011) - lu(k,704) * lu(k,1009) + lu(k,1012) = lu(k,1012) - lu(k,705) * lu(k,1009) + lu(k,1013) = lu(k,1013) - lu(k,706) * lu(k,1009) + lu(k,1014) = lu(k,1014) - lu(k,707) * lu(k,1009) + lu(k,1019) = lu(k,1019) - lu(k,708) * lu(k,1009) + lu(k,1020) = lu(k,1020) - lu(k,709) * lu(k,1009) + lu(k,1022) = lu(k,1022) - lu(k,710) * lu(k,1009) + lu(k,1023) = lu(k,1023) - lu(k,711) * lu(k,1009) + lu(k,1025) = lu(k,1025) - lu(k,712) * lu(k,1009) + lu(k,1029) = lu(k,1029) - lu(k,713) * lu(k,1009) + lu(k,1030) = lu(k,1030) - lu(k,714) * lu(k,1009) + lu(k,1032) = lu(k,1032) - lu(k,715) * lu(k,1009) + lu(k,1033) = lu(k,1033) - lu(k,716) * lu(k,1009) + lu(k,1034) = lu(k,1034) - lu(k,717) * lu(k,1009) + lu(k,1117) = lu(k,1117) - lu(k,703) * lu(k,1116) + lu(k,1118) = lu(k,1118) - lu(k,704) * lu(k,1116) + lu(k,1119) = lu(k,1119) - lu(k,705) * lu(k,1116) + lu(k,1120) = lu(k,1120) - lu(k,706) * lu(k,1116) + lu(k,1121) = lu(k,1121) - lu(k,707) * lu(k,1116) + lu(k,1125) = lu(k,1125) - lu(k,708) * lu(k,1116) + lu(k,1126) = lu(k,1126) - lu(k,709) * lu(k,1116) + lu(k,1128) = lu(k,1128) - lu(k,710) * lu(k,1116) + lu(k,1129) = lu(k,1129) - lu(k,711) * lu(k,1116) + lu(k,1131) = lu(k,1131) - lu(k,712) * lu(k,1116) + lu(k,1135) = lu(k,1135) - lu(k,713) * lu(k,1116) + lu(k,1136) = lu(k,1136) - lu(k,714) * lu(k,1116) + lu(k,1138) = lu(k,1138) - lu(k,715) * lu(k,1116) + lu(k,1139) = lu(k,1139) - lu(k,716) * lu(k,1116) + lu(k,1140) = lu(k,1140) - lu(k,717) * lu(k,1116) + lu(k,1245) = lu(k,1245) - lu(k,703) * lu(k,1244) + lu(k,1246) = lu(k,1246) - lu(k,704) * lu(k,1244) + lu(k,1247) = lu(k,1247) - lu(k,705) * lu(k,1244) + lu(k,1248) = lu(k,1248) - lu(k,706) * lu(k,1244) + lu(k,1249) = lu(k,1249) - lu(k,707) * lu(k,1244) + lu(k,1256) = lu(k,1256) - lu(k,708) * lu(k,1244) + lu(k,1257) = lu(k,1257) - lu(k,709) * lu(k,1244) + lu(k,1259) = lu(k,1259) - lu(k,710) * lu(k,1244) + lu(k,1260) = lu(k,1260) - lu(k,711) * lu(k,1244) + lu(k,1262) = lu(k,1262) - lu(k,712) * lu(k,1244) + lu(k,1266) = lu(k,1266) - lu(k,713) * lu(k,1244) + lu(k,1267) = lu(k,1267) - lu(k,714) * lu(k,1244) + lu(k,1269) = lu(k,1269) - lu(k,715) * lu(k,1244) + lu(k,1270) = lu(k,1270) - lu(k,716) * lu(k,1244) + lu(k,1271) = lu(k,1271) - lu(k,717) * lu(k,1244) + lu(k,1394) = lu(k,1394) - lu(k,703) * lu(k,1393) + lu(k,1395) = lu(k,1395) - lu(k,704) * lu(k,1393) + lu(k,1396) = lu(k,1396) - lu(k,705) * lu(k,1393) + lu(k,1397) = lu(k,1397) - lu(k,706) * lu(k,1393) + lu(k,1398) = lu(k,1398) - lu(k,707) * lu(k,1393) + lu(k,1404) = lu(k,1404) - lu(k,708) * lu(k,1393) + lu(k,1405) = lu(k,1405) - lu(k,709) * lu(k,1393) + lu(k,1407) = lu(k,1407) - lu(k,710) * lu(k,1393) + lu(k,1408) = lu(k,1408) - lu(k,711) * lu(k,1393) + lu(k,1410) = lu(k,1410) - lu(k,712) * lu(k,1393) + lu(k,1414) = lu(k,1414) - lu(k,713) * lu(k,1393) + lu(k,1415) = lu(k,1415) - lu(k,714) * lu(k,1393) + lu(k,1417) = lu(k,1417) - lu(k,715) * lu(k,1393) + lu(k,1418) = lu(k,1418) - lu(k,716) * lu(k,1393) + lu(k,1419) = lu(k,1419) - lu(k,717) * lu(k,1393) + lu(k,1533) = lu(k,1533) - lu(k,703) * lu(k,1532) + lu(k,1534) = lu(k,1534) - lu(k,704) * lu(k,1532) + lu(k,1535) = lu(k,1535) - lu(k,705) * lu(k,1532) + lu(k,1536) = lu(k,1536) - lu(k,706) * lu(k,1532) + lu(k,1537) = lu(k,1537) - lu(k,707) * lu(k,1532) + lu(k,1542) = lu(k,1542) - lu(k,708) * lu(k,1532) + lu(k,1543) = lu(k,1543) - lu(k,709) * lu(k,1532) + lu(k,1545) = lu(k,1545) - lu(k,710) * lu(k,1532) + lu(k,1546) = lu(k,1546) - lu(k,711) * lu(k,1532) + lu(k,1548) = lu(k,1548) - lu(k,712) * lu(k,1532) + lu(k,1552) = lu(k,1552) - lu(k,713) * lu(k,1532) + lu(k,1553) = lu(k,1553) - lu(k,714) * lu(k,1532) + lu(k,1555) = lu(k,1555) - lu(k,715) * lu(k,1532) + lu(k,1556) = lu(k,1556) - lu(k,716) * lu(k,1532) + lu(k,1557) = lu(k,1557) - lu(k,717) * lu(k,1532) end do end subroutine lu_fac15 subroutine lu_fac16( avec_len, lu ) @@ -3347,9 +3346,9 @@ subroutine lu_fac16( avec_len, lu ) lu(k,745) = - lu(k,727) * lu(k,743) lu(k,746) = lu(k,746) - lu(k,728) * lu(k,743) lu(k,747) = lu(k,747) - lu(k,729) * lu(k,743) - lu(k,749) = lu(k,749) - lu(k,730) * lu(k,743) - lu(k,750) = lu(k,750) - lu(k,731) * lu(k,743) - lu(k,751) = lu(k,751) - lu(k,732) * lu(k,743) + lu(k,750) = lu(k,750) - lu(k,730) * lu(k,743) + lu(k,751) = lu(k,751) - lu(k,731) * lu(k,743) + lu(k,752) = lu(k,752) - lu(k,732) * lu(k,743) lu(k,753) = lu(k,753) - lu(k,733) * lu(k,743) lu(k,754) = lu(k,754) - lu(k,734) * lu(k,743) lu(k,755) = lu(k,755) - lu(k,735) * lu(k,743) @@ -3359,87 +3358,87 @@ subroutine lu_fac16( avec_len, lu ) lu(k,792) = lu(k,792) - lu(k,727) * lu(k,790) lu(k,793) = lu(k,793) - lu(k,728) * lu(k,790) lu(k,794) = lu(k,794) - lu(k,729) * lu(k,790) - lu(k,796) = lu(k,796) - lu(k,730) * lu(k,790) - lu(k,797) = lu(k,797) - lu(k,731) * lu(k,790) - lu(k,798) = lu(k,798) - lu(k,732) * lu(k,790) + lu(k,797) = lu(k,797) - lu(k,730) * lu(k,790) + lu(k,798) = lu(k,798) - lu(k,731) * lu(k,790) + lu(k,799) = lu(k,799) - lu(k,732) * lu(k,790) lu(k,800) = lu(k,800) - lu(k,733) * lu(k,790) lu(k,801) = lu(k,801) - lu(k,734) * lu(k,790) lu(k,802) = lu(k,802) - lu(k,735) * lu(k,790) lu(k,803) = lu(k,803) - lu(k,736) * lu(k,790) lu(k,804) = lu(k,804) - lu(k,737) * lu(k,790) lu(k,806) = lu(k,806) - lu(k,738) * lu(k,790) - lu(k,1070) = lu(k,1070) - lu(k,727) * lu(k,1068) - lu(k,1071) = lu(k,1071) - lu(k,728) * lu(k,1068) - lu(k,1072) = lu(k,1072) - lu(k,729) * lu(k,1068) - lu(k,1079) = lu(k,1079) - lu(k,730) * lu(k,1068) - lu(k,1080) = lu(k,1080) - lu(k,731) * lu(k,1068) - lu(k,1081) = lu(k,1081) - lu(k,732) * lu(k,1068) - lu(k,1083) = lu(k,1083) - lu(k,733) * lu(k,1068) - lu(k,1084) = lu(k,1084) - lu(k,734) * lu(k,1068) - lu(k,1085) = lu(k,1085) - lu(k,735) * lu(k,1068) - lu(k,1088) = lu(k,1088) - lu(k,736) * lu(k,1068) - lu(k,1090) = lu(k,1090) - lu(k,737) * lu(k,1068) - lu(k,1093) = lu(k,1093) - lu(k,738) * lu(k,1068) - lu(k,1117) = lu(k,1117) - lu(k,727) * lu(k,1115) - lu(k,1118) = lu(k,1118) - lu(k,728) * lu(k,1115) - lu(k,1119) = lu(k,1119) - lu(k,729) * lu(k,1115) - lu(k,1125) = lu(k,1125) - lu(k,730) * lu(k,1115) - lu(k,1126) = lu(k,1126) - lu(k,731) * lu(k,1115) - lu(k,1127) = lu(k,1127) - lu(k,732) * lu(k,1115) - lu(k,1129) = lu(k,1129) - lu(k,733) * lu(k,1115) - lu(k,1130) = lu(k,1130) - lu(k,734) * lu(k,1115) - lu(k,1131) = lu(k,1131) - lu(k,735) * lu(k,1115) - lu(k,1134) = lu(k,1134) - lu(k,736) * lu(k,1115) - lu(k,1136) = lu(k,1136) - lu(k,737) * lu(k,1115) - lu(k,1139) = lu(k,1139) - lu(k,738) * lu(k,1115) - lu(k,1183) = lu(k,1183) - lu(k,727) * lu(k,1181) - lu(k,1184) = lu(k,1184) - lu(k,728) * lu(k,1181) - lu(k,1185) = lu(k,1185) - lu(k,729) * lu(k,1181) - lu(k,1189) = lu(k,1189) - lu(k,730) * lu(k,1181) - lu(k,1190) = lu(k,1190) - lu(k,731) * lu(k,1181) - lu(k,1191) = lu(k,1191) - lu(k,732) * lu(k,1181) - lu(k,1193) = lu(k,1193) - lu(k,733) * lu(k,1181) - lu(k,1194) = lu(k,1194) - lu(k,734) * lu(k,1181) - lu(k,1195) = lu(k,1195) - lu(k,735) * lu(k,1181) - lu(k,1198) = lu(k,1198) - lu(k,736) * lu(k,1181) - lu(k,1200) = lu(k,1200) - lu(k,737) * lu(k,1181) - lu(k,1203) = lu(k,1203) - lu(k,738) * lu(k,1181) - lu(k,1227) = lu(k,1227) - lu(k,727) * lu(k,1225) - lu(k,1228) = lu(k,1228) - lu(k,728) * lu(k,1225) - lu(k,1229) = lu(k,1229) - lu(k,729) * lu(k,1225) - lu(k,1235) = lu(k,1235) - lu(k,730) * lu(k,1225) - lu(k,1236) = lu(k,1236) - lu(k,731) * lu(k,1225) - lu(k,1237) = lu(k,1237) - lu(k,732) * lu(k,1225) - lu(k,1239) = lu(k,1239) - lu(k,733) * lu(k,1225) - lu(k,1240) = lu(k,1240) - lu(k,734) * lu(k,1225) - lu(k,1241) = lu(k,1241) - lu(k,735) * lu(k,1225) - lu(k,1244) = lu(k,1244) - lu(k,736) * lu(k,1225) - lu(k,1246) = lu(k,1246) - lu(k,737) * lu(k,1225) - lu(k,1249) = lu(k,1249) - lu(k,738) * lu(k,1225) - lu(k,1394) = lu(k,1394) - lu(k,727) * lu(k,1392) - lu(k,1395) = lu(k,1395) - lu(k,728) * lu(k,1392) - lu(k,1396) = lu(k,1396) - lu(k,729) * lu(k,1392) - lu(k,1404) = lu(k,1404) - lu(k,730) * lu(k,1392) - lu(k,1405) = lu(k,1405) - lu(k,731) * lu(k,1392) - lu(k,1406) = lu(k,1406) - lu(k,732) * lu(k,1392) - lu(k,1408) = lu(k,1408) - lu(k,733) * lu(k,1392) - lu(k,1409) = lu(k,1409) - lu(k,734) * lu(k,1392) - lu(k,1410) = lu(k,1410) - lu(k,735) * lu(k,1392) - lu(k,1413) = lu(k,1413) - lu(k,736) * lu(k,1392) - lu(k,1415) = lu(k,1415) - lu(k,737) * lu(k,1392) - lu(k,1418) = lu(k,1418) - lu(k,738) * lu(k,1392) - lu(k,1490) = lu(k,1490) - lu(k,727) * lu(k,1488) - lu(k,1491) = lu(k,1491) - lu(k,728) * lu(k,1488) - lu(k,1492) = lu(k,1492) - lu(k,729) * lu(k,1488) - lu(k,1497) = lu(k,1497) - lu(k,730) * lu(k,1488) - lu(k,1498) = lu(k,1498) - lu(k,731) * lu(k,1488) - lu(k,1499) = lu(k,1499) - lu(k,732) * lu(k,1488) - lu(k,1501) = lu(k,1501) - lu(k,733) * lu(k,1488) - lu(k,1502) = lu(k,1502) - lu(k,734) * lu(k,1488) - lu(k,1503) = lu(k,1503) - lu(k,735) * lu(k,1488) - lu(k,1506) = lu(k,1506) - lu(k,736) * lu(k,1488) - lu(k,1508) = lu(k,1508) - lu(k,737) * lu(k,1488) - lu(k,1511) = lu(k,1511) - lu(k,738) * lu(k,1488) + lu(k,968) = lu(k,968) - lu(k,727) * lu(k,966) + lu(k,969) = lu(k,969) - lu(k,728) * lu(k,966) + lu(k,970) = lu(k,970) - lu(k,729) * lu(k,966) + lu(k,973) = lu(k,973) - lu(k,730) * lu(k,966) + lu(k,974) = lu(k,974) - lu(k,731) * lu(k,966) + lu(k,976) = lu(k,976) - lu(k,732) * lu(k,966) + lu(k,977) = lu(k,977) - lu(k,733) * lu(k,966) + lu(k,979) = lu(k,979) - lu(k,734) * lu(k,966) + lu(k,983) = lu(k,983) - lu(k,735) * lu(k,966) + lu(k,984) = lu(k,984) - lu(k,736) * lu(k,966) + lu(k,986) = lu(k,986) - lu(k,737) * lu(k,966) + lu(k,988) = lu(k,988) - lu(k,738) * lu(k,966) + lu(k,1012) = lu(k,1012) - lu(k,727) * lu(k,1010) + lu(k,1013) = lu(k,1013) - lu(k,728) * lu(k,1010) + lu(k,1014) = lu(k,1014) - lu(k,729) * lu(k,1010) + lu(k,1019) = lu(k,1019) - lu(k,730) * lu(k,1010) + lu(k,1020) = lu(k,1020) - lu(k,731) * lu(k,1010) + lu(k,1022) = lu(k,1022) - lu(k,732) * lu(k,1010) + lu(k,1023) = lu(k,1023) - lu(k,733) * lu(k,1010) + lu(k,1025) = lu(k,1025) - lu(k,734) * lu(k,1010) + lu(k,1029) = lu(k,1029) - lu(k,735) * lu(k,1010) + lu(k,1030) = lu(k,1030) - lu(k,736) * lu(k,1010) + lu(k,1032) = lu(k,1032) - lu(k,737) * lu(k,1010) + lu(k,1034) = lu(k,1034) - lu(k,738) * lu(k,1010) + lu(k,1119) = lu(k,1119) - lu(k,727) * lu(k,1117) + lu(k,1120) = lu(k,1120) - lu(k,728) * lu(k,1117) + lu(k,1121) = lu(k,1121) - lu(k,729) * lu(k,1117) + lu(k,1125) = lu(k,1125) - lu(k,730) * lu(k,1117) + lu(k,1126) = lu(k,1126) - lu(k,731) * lu(k,1117) + lu(k,1128) = lu(k,1128) - lu(k,732) * lu(k,1117) + lu(k,1129) = lu(k,1129) - lu(k,733) * lu(k,1117) + lu(k,1131) = lu(k,1131) - lu(k,734) * lu(k,1117) + lu(k,1135) = lu(k,1135) - lu(k,735) * lu(k,1117) + lu(k,1136) = lu(k,1136) - lu(k,736) * lu(k,1117) + lu(k,1138) = lu(k,1138) - lu(k,737) * lu(k,1117) + lu(k,1140) = lu(k,1140) - lu(k,738) * lu(k,1117) + lu(k,1247) = lu(k,1247) - lu(k,727) * lu(k,1245) + lu(k,1248) = lu(k,1248) - lu(k,728) * lu(k,1245) + lu(k,1249) = lu(k,1249) - lu(k,729) * lu(k,1245) + lu(k,1256) = lu(k,1256) - lu(k,730) * lu(k,1245) + lu(k,1257) = lu(k,1257) - lu(k,731) * lu(k,1245) + lu(k,1259) = lu(k,1259) - lu(k,732) * lu(k,1245) + lu(k,1260) = lu(k,1260) - lu(k,733) * lu(k,1245) + lu(k,1262) = lu(k,1262) - lu(k,734) * lu(k,1245) + lu(k,1266) = lu(k,1266) - lu(k,735) * lu(k,1245) + lu(k,1267) = lu(k,1267) - lu(k,736) * lu(k,1245) + lu(k,1269) = lu(k,1269) - lu(k,737) * lu(k,1245) + lu(k,1271) = lu(k,1271) - lu(k,738) * lu(k,1245) + lu(k,1396) = lu(k,1396) - lu(k,727) * lu(k,1394) + lu(k,1397) = lu(k,1397) - lu(k,728) * lu(k,1394) + lu(k,1398) = lu(k,1398) - lu(k,729) * lu(k,1394) + lu(k,1404) = lu(k,1404) - lu(k,730) * lu(k,1394) + lu(k,1405) = lu(k,1405) - lu(k,731) * lu(k,1394) + lu(k,1407) = lu(k,1407) - lu(k,732) * lu(k,1394) + lu(k,1408) = lu(k,1408) - lu(k,733) * lu(k,1394) + lu(k,1410) = lu(k,1410) - lu(k,734) * lu(k,1394) + lu(k,1414) = lu(k,1414) - lu(k,735) * lu(k,1394) + lu(k,1415) = lu(k,1415) - lu(k,736) * lu(k,1394) + lu(k,1417) = lu(k,1417) - lu(k,737) * lu(k,1394) + lu(k,1419) = lu(k,1419) - lu(k,738) * lu(k,1394) + lu(k,1535) = lu(k,1535) - lu(k,727) * lu(k,1533) + lu(k,1536) = lu(k,1536) - lu(k,728) * lu(k,1533) + lu(k,1537) = lu(k,1537) - lu(k,729) * lu(k,1533) + lu(k,1542) = lu(k,1542) - lu(k,730) * lu(k,1533) + lu(k,1543) = lu(k,1543) - lu(k,731) * lu(k,1533) + lu(k,1545) = lu(k,1545) - lu(k,732) * lu(k,1533) + lu(k,1546) = lu(k,1546) - lu(k,733) * lu(k,1533) + lu(k,1548) = lu(k,1548) - lu(k,734) * lu(k,1533) + lu(k,1552) = lu(k,1552) - lu(k,735) * lu(k,1533) + lu(k,1553) = lu(k,1553) - lu(k,736) * lu(k,1533) + lu(k,1555) = lu(k,1555) - lu(k,737) * lu(k,1533) + lu(k,1557) = lu(k,1557) - lu(k,738) * lu(k,1533) lu(k,744) = 1._r8 / lu(k,744) lu(k,745) = lu(k,745) * lu(k,744) lu(k,746) = lu(k,746) * lu(k,744) @@ -3460,7 +3459,7 @@ subroutine lu_fac16( avec_len, lu ) lu(k,793) = lu(k,793) - lu(k,746) * lu(k,791) lu(k,794) = lu(k,794) - lu(k,747) * lu(k,791) lu(k,795) = - lu(k,748) * lu(k,791) - lu(k,796) = lu(k,796) - lu(k,749) * lu(k,791) + lu(k,796) = - lu(k,749) * lu(k,791) lu(k,797) = lu(k,797) - lu(k,750) * lu(k,791) lu(k,798) = lu(k,798) - lu(k,751) * lu(k,791) lu(k,799) = lu(k,799) - lu(k,752) * lu(k,791) @@ -3469,98 +3468,98 @@ subroutine lu_fac16( avec_len, lu ) lu(k,802) = lu(k,802) - lu(k,755) * lu(k,791) lu(k,803) = lu(k,803) - lu(k,756) * lu(k,791) lu(k,804) = lu(k,804) - lu(k,757) * lu(k,791) - lu(k,805) = - lu(k,758) * lu(k,791) + lu(k,805) = lu(k,805) - lu(k,758) * lu(k,791) lu(k,806) = lu(k,806) - lu(k,759) * lu(k,791) - lu(k,1070) = lu(k,1070) - lu(k,745) * lu(k,1069) - lu(k,1071) = lu(k,1071) - lu(k,746) * lu(k,1069) - lu(k,1072) = lu(k,1072) - lu(k,747) * lu(k,1069) - lu(k,1076) = lu(k,1076) - lu(k,748) * lu(k,1069) - lu(k,1079) = lu(k,1079) - lu(k,749) * lu(k,1069) - lu(k,1080) = lu(k,1080) - lu(k,750) * lu(k,1069) - lu(k,1081) = lu(k,1081) - lu(k,751) * lu(k,1069) - lu(k,1082) = lu(k,1082) - lu(k,752) * lu(k,1069) - lu(k,1083) = lu(k,1083) - lu(k,753) * lu(k,1069) - lu(k,1084) = lu(k,1084) - lu(k,754) * lu(k,1069) - lu(k,1085) = lu(k,1085) - lu(k,755) * lu(k,1069) - lu(k,1088) = lu(k,1088) - lu(k,756) * lu(k,1069) - lu(k,1090) = lu(k,1090) - lu(k,757) * lu(k,1069) - lu(k,1091) = - lu(k,758) * lu(k,1069) - lu(k,1093) = lu(k,1093) - lu(k,759) * lu(k,1069) - lu(k,1117) = lu(k,1117) - lu(k,745) * lu(k,1116) - lu(k,1118) = lu(k,1118) - lu(k,746) * lu(k,1116) - lu(k,1119) = lu(k,1119) - lu(k,747) * lu(k,1116) - lu(k,1122) = lu(k,1122) - lu(k,748) * lu(k,1116) - lu(k,1125) = lu(k,1125) - lu(k,749) * lu(k,1116) - lu(k,1126) = lu(k,1126) - lu(k,750) * lu(k,1116) - lu(k,1127) = lu(k,1127) - lu(k,751) * lu(k,1116) - lu(k,1128) = lu(k,1128) - lu(k,752) * lu(k,1116) - lu(k,1129) = lu(k,1129) - lu(k,753) * lu(k,1116) - lu(k,1130) = lu(k,1130) - lu(k,754) * lu(k,1116) - lu(k,1131) = lu(k,1131) - lu(k,755) * lu(k,1116) - lu(k,1134) = lu(k,1134) - lu(k,756) * lu(k,1116) - lu(k,1136) = lu(k,1136) - lu(k,757) * lu(k,1116) - lu(k,1137) = lu(k,1137) - lu(k,758) * lu(k,1116) - lu(k,1139) = lu(k,1139) - lu(k,759) * lu(k,1116) - lu(k,1183) = lu(k,1183) - lu(k,745) * lu(k,1182) - lu(k,1184) = lu(k,1184) - lu(k,746) * lu(k,1182) - lu(k,1185) = lu(k,1185) - lu(k,747) * lu(k,1182) - lu(k,1186) = lu(k,1186) - lu(k,748) * lu(k,1182) - lu(k,1189) = lu(k,1189) - lu(k,749) * lu(k,1182) - lu(k,1190) = lu(k,1190) - lu(k,750) * lu(k,1182) - lu(k,1191) = lu(k,1191) - lu(k,751) * lu(k,1182) - lu(k,1192) = lu(k,1192) - lu(k,752) * lu(k,1182) - lu(k,1193) = lu(k,1193) - lu(k,753) * lu(k,1182) - lu(k,1194) = lu(k,1194) - lu(k,754) * lu(k,1182) - lu(k,1195) = lu(k,1195) - lu(k,755) * lu(k,1182) - lu(k,1198) = lu(k,1198) - lu(k,756) * lu(k,1182) - lu(k,1200) = lu(k,1200) - lu(k,757) * lu(k,1182) - lu(k,1201) = - lu(k,758) * lu(k,1182) - lu(k,1203) = lu(k,1203) - lu(k,759) * lu(k,1182) - lu(k,1227) = lu(k,1227) - lu(k,745) * lu(k,1226) - lu(k,1228) = lu(k,1228) - lu(k,746) * lu(k,1226) - lu(k,1229) = lu(k,1229) - lu(k,747) * lu(k,1226) - lu(k,1232) = lu(k,1232) - lu(k,748) * lu(k,1226) - lu(k,1235) = lu(k,1235) - lu(k,749) * lu(k,1226) - lu(k,1236) = lu(k,1236) - lu(k,750) * lu(k,1226) - lu(k,1237) = lu(k,1237) - lu(k,751) * lu(k,1226) - lu(k,1238) = lu(k,1238) - lu(k,752) * lu(k,1226) - lu(k,1239) = lu(k,1239) - lu(k,753) * lu(k,1226) - lu(k,1240) = lu(k,1240) - lu(k,754) * lu(k,1226) - lu(k,1241) = lu(k,1241) - lu(k,755) * lu(k,1226) - lu(k,1244) = lu(k,1244) - lu(k,756) * lu(k,1226) - lu(k,1246) = lu(k,1246) - lu(k,757) * lu(k,1226) - lu(k,1247) = lu(k,1247) - lu(k,758) * lu(k,1226) - lu(k,1249) = lu(k,1249) - lu(k,759) * lu(k,1226) - lu(k,1394) = lu(k,1394) - lu(k,745) * lu(k,1393) - lu(k,1395) = lu(k,1395) - lu(k,746) * lu(k,1393) - lu(k,1396) = lu(k,1396) - lu(k,747) * lu(k,1393) - lu(k,1401) = lu(k,1401) - lu(k,748) * lu(k,1393) - lu(k,1404) = lu(k,1404) - lu(k,749) * lu(k,1393) - lu(k,1405) = lu(k,1405) - lu(k,750) * lu(k,1393) - lu(k,1406) = lu(k,1406) - lu(k,751) * lu(k,1393) - lu(k,1407) = lu(k,1407) - lu(k,752) * lu(k,1393) - lu(k,1408) = lu(k,1408) - lu(k,753) * lu(k,1393) - lu(k,1409) = lu(k,1409) - lu(k,754) * lu(k,1393) - lu(k,1410) = lu(k,1410) - lu(k,755) * lu(k,1393) - lu(k,1413) = lu(k,1413) - lu(k,756) * lu(k,1393) - lu(k,1415) = lu(k,1415) - lu(k,757) * lu(k,1393) - lu(k,1416) = lu(k,1416) - lu(k,758) * lu(k,1393) - lu(k,1418) = lu(k,1418) - lu(k,759) * lu(k,1393) - lu(k,1490) = lu(k,1490) - lu(k,745) * lu(k,1489) - lu(k,1491) = lu(k,1491) - lu(k,746) * lu(k,1489) - lu(k,1492) = lu(k,1492) - lu(k,747) * lu(k,1489) - lu(k,1494) = lu(k,1494) - lu(k,748) * lu(k,1489) - lu(k,1497) = lu(k,1497) - lu(k,749) * lu(k,1489) - lu(k,1498) = lu(k,1498) - lu(k,750) * lu(k,1489) - lu(k,1499) = lu(k,1499) - lu(k,751) * lu(k,1489) - lu(k,1500) = lu(k,1500) - lu(k,752) * lu(k,1489) - lu(k,1501) = lu(k,1501) - lu(k,753) * lu(k,1489) - lu(k,1502) = lu(k,1502) - lu(k,754) * lu(k,1489) - lu(k,1503) = lu(k,1503) - lu(k,755) * lu(k,1489) - lu(k,1506) = lu(k,1506) - lu(k,756) * lu(k,1489) - lu(k,1508) = lu(k,1508) - lu(k,757) * lu(k,1489) - lu(k,1509) = - lu(k,758) * lu(k,1489) - lu(k,1511) = lu(k,1511) - lu(k,759) * lu(k,1489) + lu(k,968) = lu(k,968) - lu(k,745) * lu(k,967) + lu(k,969) = lu(k,969) - lu(k,746) * lu(k,967) + lu(k,970) = lu(k,970) - lu(k,747) * lu(k,967) + lu(k,971) = lu(k,971) - lu(k,748) * lu(k,967) + lu(k,972) = - lu(k,749) * lu(k,967) + lu(k,973) = lu(k,973) - lu(k,750) * lu(k,967) + lu(k,974) = lu(k,974) - lu(k,751) * lu(k,967) + lu(k,976) = lu(k,976) - lu(k,752) * lu(k,967) + lu(k,977) = lu(k,977) - lu(k,753) * lu(k,967) + lu(k,979) = lu(k,979) - lu(k,754) * lu(k,967) + lu(k,983) = lu(k,983) - lu(k,755) * lu(k,967) + lu(k,984) = lu(k,984) - lu(k,756) * lu(k,967) + lu(k,986) = lu(k,986) - lu(k,757) * lu(k,967) + lu(k,987) = lu(k,987) - lu(k,758) * lu(k,967) + lu(k,988) = lu(k,988) - lu(k,759) * lu(k,967) + lu(k,1012) = lu(k,1012) - lu(k,745) * lu(k,1011) + lu(k,1013) = lu(k,1013) - lu(k,746) * lu(k,1011) + lu(k,1014) = lu(k,1014) - lu(k,747) * lu(k,1011) + lu(k,1017) = lu(k,1017) - lu(k,748) * lu(k,1011) + lu(k,1018) = lu(k,1018) - lu(k,749) * lu(k,1011) + lu(k,1019) = lu(k,1019) - lu(k,750) * lu(k,1011) + lu(k,1020) = lu(k,1020) - lu(k,751) * lu(k,1011) + lu(k,1022) = lu(k,1022) - lu(k,752) * lu(k,1011) + lu(k,1023) = lu(k,1023) - lu(k,753) * lu(k,1011) + lu(k,1025) = lu(k,1025) - lu(k,754) * lu(k,1011) + lu(k,1029) = lu(k,1029) - lu(k,755) * lu(k,1011) + lu(k,1030) = lu(k,1030) - lu(k,756) * lu(k,1011) + lu(k,1032) = lu(k,1032) - lu(k,757) * lu(k,1011) + lu(k,1033) = lu(k,1033) - lu(k,758) * lu(k,1011) + lu(k,1034) = lu(k,1034) - lu(k,759) * lu(k,1011) + lu(k,1119) = lu(k,1119) - lu(k,745) * lu(k,1118) + lu(k,1120) = lu(k,1120) - lu(k,746) * lu(k,1118) + lu(k,1121) = lu(k,1121) - lu(k,747) * lu(k,1118) + lu(k,1123) = lu(k,1123) - lu(k,748) * lu(k,1118) + lu(k,1124) = - lu(k,749) * lu(k,1118) + lu(k,1125) = lu(k,1125) - lu(k,750) * lu(k,1118) + lu(k,1126) = lu(k,1126) - lu(k,751) * lu(k,1118) + lu(k,1128) = lu(k,1128) - lu(k,752) * lu(k,1118) + lu(k,1129) = lu(k,1129) - lu(k,753) * lu(k,1118) + lu(k,1131) = lu(k,1131) - lu(k,754) * lu(k,1118) + lu(k,1135) = lu(k,1135) - lu(k,755) * lu(k,1118) + lu(k,1136) = lu(k,1136) - lu(k,756) * lu(k,1118) + lu(k,1138) = lu(k,1138) - lu(k,757) * lu(k,1118) + lu(k,1139) = lu(k,1139) - lu(k,758) * lu(k,1118) + lu(k,1140) = lu(k,1140) - lu(k,759) * lu(k,1118) + lu(k,1247) = lu(k,1247) - lu(k,745) * lu(k,1246) + lu(k,1248) = lu(k,1248) - lu(k,746) * lu(k,1246) + lu(k,1249) = lu(k,1249) - lu(k,747) * lu(k,1246) + lu(k,1254) = lu(k,1254) - lu(k,748) * lu(k,1246) + lu(k,1255) = lu(k,1255) - lu(k,749) * lu(k,1246) + lu(k,1256) = lu(k,1256) - lu(k,750) * lu(k,1246) + lu(k,1257) = lu(k,1257) - lu(k,751) * lu(k,1246) + lu(k,1259) = lu(k,1259) - lu(k,752) * lu(k,1246) + lu(k,1260) = lu(k,1260) - lu(k,753) * lu(k,1246) + lu(k,1262) = lu(k,1262) - lu(k,754) * lu(k,1246) + lu(k,1266) = lu(k,1266) - lu(k,755) * lu(k,1246) + lu(k,1267) = lu(k,1267) - lu(k,756) * lu(k,1246) + lu(k,1269) = lu(k,1269) - lu(k,757) * lu(k,1246) + lu(k,1270) = lu(k,1270) - lu(k,758) * lu(k,1246) + lu(k,1271) = lu(k,1271) - lu(k,759) * lu(k,1246) + lu(k,1396) = lu(k,1396) - lu(k,745) * lu(k,1395) + lu(k,1397) = lu(k,1397) - lu(k,746) * lu(k,1395) + lu(k,1398) = lu(k,1398) - lu(k,747) * lu(k,1395) + lu(k,1402) = lu(k,1402) - lu(k,748) * lu(k,1395) + lu(k,1403) = - lu(k,749) * lu(k,1395) + lu(k,1404) = lu(k,1404) - lu(k,750) * lu(k,1395) + lu(k,1405) = lu(k,1405) - lu(k,751) * lu(k,1395) + lu(k,1407) = lu(k,1407) - lu(k,752) * lu(k,1395) + lu(k,1408) = lu(k,1408) - lu(k,753) * lu(k,1395) + lu(k,1410) = lu(k,1410) - lu(k,754) * lu(k,1395) + lu(k,1414) = lu(k,1414) - lu(k,755) * lu(k,1395) + lu(k,1415) = lu(k,1415) - lu(k,756) * lu(k,1395) + lu(k,1417) = lu(k,1417) - lu(k,757) * lu(k,1395) + lu(k,1418) = lu(k,1418) - lu(k,758) * lu(k,1395) + lu(k,1419) = lu(k,1419) - lu(k,759) * lu(k,1395) + lu(k,1535) = lu(k,1535) - lu(k,745) * lu(k,1534) + lu(k,1536) = lu(k,1536) - lu(k,746) * lu(k,1534) + lu(k,1537) = lu(k,1537) - lu(k,747) * lu(k,1534) + lu(k,1540) = lu(k,1540) - lu(k,748) * lu(k,1534) + lu(k,1541) = lu(k,1541) - lu(k,749) * lu(k,1534) + lu(k,1542) = lu(k,1542) - lu(k,750) * lu(k,1534) + lu(k,1543) = lu(k,1543) - lu(k,751) * lu(k,1534) + lu(k,1545) = lu(k,1545) - lu(k,752) * lu(k,1534) + lu(k,1546) = lu(k,1546) - lu(k,753) * lu(k,1534) + lu(k,1548) = lu(k,1548) - lu(k,754) * lu(k,1534) + lu(k,1552) = lu(k,1552) - lu(k,755) * lu(k,1534) + lu(k,1553) = lu(k,1553) - lu(k,756) * lu(k,1534) + lu(k,1555) = lu(k,1555) - lu(k,757) * lu(k,1534) + lu(k,1556) = lu(k,1556) - lu(k,758) * lu(k,1534) + lu(k,1557) = lu(k,1557) - lu(k,759) * lu(k,1534) lu(k,765) = 1._r8 / lu(k,765) lu(k,766) = lu(k,766) * lu(k,765) lu(k,767) = lu(k,767) * lu(k,765) @@ -3576,100 +3575,100 @@ subroutine lu_fac16( avec_len, lu ) lu(k,777) = lu(k,777) * lu(k,765) lu(k,793) = lu(k,793) - lu(k,766) * lu(k,792) lu(k,794) = lu(k,794) - lu(k,767) * lu(k,792) - lu(k,796) = lu(k,796) - lu(k,768) * lu(k,792) - lu(k,797) = lu(k,797) - lu(k,769) * lu(k,792) - lu(k,798) = lu(k,798) - lu(k,770) * lu(k,792) - lu(k,799) = lu(k,799) - lu(k,771) * lu(k,792) - lu(k,800) = lu(k,800) - lu(k,772) * lu(k,792) - lu(k,801) = lu(k,801) - lu(k,773) * lu(k,792) - lu(k,802) = lu(k,802) - lu(k,774) * lu(k,792) - lu(k,803) = lu(k,803) - lu(k,775) * lu(k,792) - lu(k,804) = lu(k,804) - lu(k,776) * lu(k,792) + lu(k,797) = lu(k,797) - lu(k,768) * lu(k,792) + lu(k,798) = lu(k,798) - lu(k,769) * lu(k,792) + lu(k,799) = lu(k,799) - lu(k,770) * lu(k,792) + lu(k,800) = lu(k,800) - lu(k,771) * lu(k,792) + lu(k,801) = lu(k,801) - lu(k,772) * lu(k,792) + lu(k,802) = lu(k,802) - lu(k,773) * lu(k,792) + lu(k,803) = lu(k,803) - lu(k,774) * lu(k,792) + lu(k,804) = lu(k,804) - lu(k,775) * lu(k,792) + lu(k,805) = lu(k,805) - lu(k,776) * lu(k,792) lu(k,806) = lu(k,806) - lu(k,777) * lu(k,792) - lu(k,988) = lu(k,988) - lu(k,766) * lu(k,987) - lu(k,989) = lu(k,989) - lu(k,767) * lu(k,987) - lu(k,996) = lu(k,996) - lu(k,768) * lu(k,987) - lu(k,997) = lu(k,997) - lu(k,769) * lu(k,987) - lu(k,998) = lu(k,998) - lu(k,770) * lu(k,987) - lu(k,999) = lu(k,999) - lu(k,771) * lu(k,987) - lu(k,1000) = lu(k,1000) - lu(k,772) * lu(k,987) - lu(k,1001) = lu(k,1001) - lu(k,773) * lu(k,987) - lu(k,1002) = lu(k,1002) - lu(k,774) * lu(k,987) - lu(k,1005) = lu(k,1005) - lu(k,775) * lu(k,987) - lu(k,1007) = lu(k,1007) - lu(k,776) * lu(k,987) - lu(k,1010) = lu(k,1010) - lu(k,777) * lu(k,987) - lu(k,1071) = lu(k,1071) - lu(k,766) * lu(k,1070) - lu(k,1072) = lu(k,1072) - lu(k,767) * lu(k,1070) - lu(k,1079) = lu(k,1079) - lu(k,768) * lu(k,1070) - lu(k,1080) = lu(k,1080) - lu(k,769) * lu(k,1070) - lu(k,1081) = lu(k,1081) - lu(k,770) * lu(k,1070) - lu(k,1082) = lu(k,1082) - lu(k,771) * lu(k,1070) - lu(k,1083) = lu(k,1083) - lu(k,772) * lu(k,1070) - lu(k,1084) = lu(k,1084) - lu(k,773) * lu(k,1070) - lu(k,1085) = lu(k,1085) - lu(k,774) * lu(k,1070) - lu(k,1088) = lu(k,1088) - lu(k,775) * lu(k,1070) - lu(k,1090) = lu(k,1090) - lu(k,776) * lu(k,1070) - lu(k,1093) = lu(k,1093) - lu(k,777) * lu(k,1070) - lu(k,1118) = lu(k,1118) - lu(k,766) * lu(k,1117) - lu(k,1119) = lu(k,1119) - lu(k,767) * lu(k,1117) - lu(k,1125) = lu(k,1125) - lu(k,768) * lu(k,1117) - lu(k,1126) = lu(k,1126) - lu(k,769) * lu(k,1117) - lu(k,1127) = lu(k,1127) - lu(k,770) * lu(k,1117) - lu(k,1128) = lu(k,1128) - lu(k,771) * lu(k,1117) - lu(k,1129) = lu(k,1129) - lu(k,772) * lu(k,1117) - lu(k,1130) = lu(k,1130) - lu(k,773) * lu(k,1117) - lu(k,1131) = lu(k,1131) - lu(k,774) * lu(k,1117) - lu(k,1134) = lu(k,1134) - lu(k,775) * lu(k,1117) - lu(k,1136) = lu(k,1136) - lu(k,776) * lu(k,1117) - lu(k,1139) = lu(k,1139) - lu(k,777) * lu(k,1117) - lu(k,1184) = lu(k,1184) - lu(k,766) * lu(k,1183) - lu(k,1185) = lu(k,1185) - lu(k,767) * lu(k,1183) - lu(k,1189) = lu(k,1189) - lu(k,768) * lu(k,1183) - lu(k,1190) = lu(k,1190) - lu(k,769) * lu(k,1183) - lu(k,1191) = lu(k,1191) - lu(k,770) * lu(k,1183) - lu(k,1192) = lu(k,1192) - lu(k,771) * lu(k,1183) - lu(k,1193) = lu(k,1193) - lu(k,772) * lu(k,1183) - lu(k,1194) = lu(k,1194) - lu(k,773) * lu(k,1183) - lu(k,1195) = lu(k,1195) - lu(k,774) * lu(k,1183) - lu(k,1198) = lu(k,1198) - lu(k,775) * lu(k,1183) - lu(k,1200) = lu(k,1200) - lu(k,776) * lu(k,1183) - lu(k,1203) = lu(k,1203) - lu(k,777) * lu(k,1183) - lu(k,1228) = lu(k,1228) - lu(k,766) * lu(k,1227) - lu(k,1229) = lu(k,1229) - lu(k,767) * lu(k,1227) - lu(k,1235) = lu(k,1235) - lu(k,768) * lu(k,1227) - lu(k,1236) = lu(k,1236) - lu(k,769) * lu(k,1227) - lu(k,1237) = lu(k,1237) - lu(k,770) * lu(k,1227) - lu(k,1238) = lu(k,1238) - lu(k,771) * lu(k,1227) - lu(k,1239) = lu(k,1239) - lu(k,772) * lu(k,1227) - lu(k,1240) = lu(k,1240) - lu(k,773) * lu(k,1227) - lu(k,1241) = lu(k,1241) - lu(k,774) * lu(k,1227) - lu(k,1244) = lu(k,1244) - lu(k,775) * lu(k,1227) - lu(k,1246) = lu(k,1246) - lu(k,776) * lu(k,1227) - lu(k,1249) = lu(k,1249) - lu(k,777) * lu(k,1227) - lu(k,1395) = lu(k,1395) - lu(k,766) * lu(k,1394) - lu(k,1396) = lu(k,1396) - lu(k,767) * lu(k,1394) - lu(k,1404) = lu(k,1404) - lu(k,768) * lu(k,1394) - lu(k,1405) = lu(k,1405) - lu(k,769) * lu(k,1394) - lu(k,1406) = lu(k,1406) - lu(k,770) * lu(k,1394) - lu(k,1407) = lu(k,1407) - lu(k,771) * lu(k,1394) - lu(k,1408) = lu(k,1408) - lu(k,772) * lu(k,1394) - lu(k,1409) = lu(k,1409) - lu(k,773) * lu(k,1394) - lu(k,1410) = lu(k,1410) - lu(k,774) * lu(k,1394) - lu(k,1413) = lu(k,1413) - lu(k,775) * lu(k,1394) - lu(k,1415) = lu(k,1415) - lu(k,776) * lu(k,1394) - lu(k,1418) = lu(k,1418) - lu(k,777) * lu(k,1394) - lu(k,1491) = lu(k,1491) - lu(k,766) * lu(k,1490) - lu(k,1492) = lu(k,1492) - lu(k,767) * lu(k,1490) - lu(k,1497) = lu(k,1497) - lu(k,768) * lu(k,1490) - lu(k,1498) = lu(k,1498) - lu(k,769) * lu(k,1490) - lu(k,1499) = lu(k,1499) - lu(k,770) * lu(k,1490) - lu(k,1500) = lu(k,1500) - lu(k,771) * lu(k,1490) - lu(k,1501) = lu(k,1501) - lu(k,772) * lu(k,1490) - lu(k,1502) = lu(k,1502) - lu(k,773) * lu(k,1490) - lu(k,1503) = lu(k,1503) - lu(k,774) * lu(k,1490) - lu(k,1506) = lu(k,1506) - lu(k,775) * lu(k,1490) - lu(k,1508) = lu(k,1508) - lu(k,776) * lu(k,1490) - lu(k,1511) = lu(k,1511) - lu(k,777) * lu(k,1490) + lu(k,969) = lu(k,969) - lu(k,766) * lu(k,968) + lu(k,970) = lu(k,970) - lu(k,767) * lu(k,968) + lu(k,973) = lu(k,973) - lu(k,768) * lu(k,968) + lu(k,974) = lu(k,974) - lu(k,769) * lu(k,968) + lu(k,976) = lu(k,976) - lu(k,770) * lu(k,968) + lu(k,977) = lu(k,977) - lu(k,771) * lu(k,968) + lu(k,979) = lu(k,979) - lu(k,772) * lu(k,968) + lu(k,983) = lu(k,983) - lu(k,773) * lu(k,968) + lu(k,984) = lu(k,984) - lu(k,774) * lu(k,968) + lu(k,986) = lu(k,986) - lu(k,775) * lu(k,968) + lu(k,987) = lu(k,987) - lu(k,776) * lu(k,968) + lu(k,988) = lu(k,988) - lu(k,777) * lu(k,968) + lu(k,1013) = lu(k,1013) - lu(k,766) * lu(k,1012) + lu(k,1014) = lu(k,1014) - lu(k,767) * lu(k,1012) + lu(k,1019) = lu(k,1019) - lu(k,768) * lu(k,1012) + lu(k,1020) = lu(k,1020) - lu(k,769) * lu(k,1012) + lu(k,1022) = lu(k,1022) - lu(k,770) * lu(k,1012) + lu(k,1023) = lu(k,1023) - lu(k,771) * lu(k,1012) + lu(k,1025) = lu(k,1025) - lu(k,772) * lu(k,1012) + lu(k,1029) = lu(k,1029) - lu(k,773) * lu(k,1012) + lu(k,1030) = lu(k,1030) - lu(k,774) * lu(k,1012) + lu(k,1032) = lu(k,1032) - lu(k,775) * lu(k,1012) + lu(k,1033) = lu(k,1033) - lu(k,776) * lu(k,1012) + lu(k,1034) = lu(k,1034) - lu(k,777) * lu(k,1012) + lu(k,1070) = lu(k,1070) - lu(k,766) * lu(k,1069) + lu(k,1071) = lu(k,1071) - lu(k,767) * lu(k,1069) + lu(k,1077) = lu(k,1077) - lu(k,768) * lu(k,1069) + lu(k,1078) = lu(k,1078) - lu(k,769) * lu(k,1069) + lu(k,1080) = lu(k,1080) - lu(k,770) * lu(k,1069) + lu(k,1081) = lu(k,1081) - lu(k,771) * lu(k,1069) + lu(k,1083) = lu(k,1083) - lu(k,772) * lu(k,1069) + lu(k,1087) = lu(k,1087) - lu(k,773) * lu(k,1069) + lu(k,1088) = lu(k,1088) - lu(k,774) * lu(k,1069) + lu(k,1090) = lu(k,1090) - lu(k,775) * lu(k,1069) + lu(k,1091) = lu(k,1091) - lu(k,776) * lu(k,1069) + lu(k,1092) = lu(k,1092) - lu(k,777) * lu(k,1069) + lu(k,1120) = lu(k,1120) - lu(k,766) * lu(k,1119) + lu(k,1121) = lu(k,1121) - lu(k,767) * lu(k,1119) + lu(k,1125) = lu(k,1125) - lu(k,768) * lu(k,1119) + lu(k,1126) = lu(k,1126) - lu(k,769) * lu(k,1119) + lu(k,1128) = lu(k,1128) - lu(k,770) * lu(k,1119) + lu(k,1129) = lu(k,1129) - lu(k,771) * lu(k,1119) + lu(k,1131) = lu(k,1131) - lu(k,772) * lu(k,1119) + lu(k,1135) = lu(k,1135) - lu(k,773) * lu(k,1119) + lu(k,1136) = lu(k,1136) - lu(k,774) * lu(k,1119) + lu(k,1138) = lu(k,1138) - lu(k,775) * lu(k,1119) + lu(k,1139) = lu(k,1139) - lu(k,776) * lu(k,1119) + lu(k,1140) = lu(k,1140) - lu(k,777) * lu(k,1119) + lu(k,1248) = lu(k,1248) - lu(k,766) * lu(k,1247) + lu(k,1249) = lu(k,1249) - lu(k,767) * lu(k,1247) + lu(k,1256) = lu(k,1256) - lu(k,768) * lu(k,1247) + lu(k,1257) = lu(k,1257) - lu(k,769) * lu(k,1247) + lu(k,1259) = lu(k,1259) - lu(k,770) * lu(k,1247) + lu(k,1260) = lu(k,1260) - lu(k,771) * lu(k,1247) + lu(k,1262) = lu(k,1262) - lu(k,772) * lu(k,1247) + lu(k,1266) = lu(k,1266) - lu(k,773) * lu(k,1247) + lu(k,1267) = lu(k,1267) - lu(k,774) * lu(k,1247) + lu(k,1269) = lu(k,1269) - lu(k,775) * lu(k,1247) + lu(k,1270) = lu(k,1270) - lu(k,776) * lu(k,1247) + lu(k,1271) = lu(k,1271) - lu(k,777) * lu(k,1247) + lu(k,1397) = lu(k,1397) - lu(k,766) * lu(k,1396) + lu(k,1398) = lu(k,1398) - lu(k,767) * lu(k,1396) + lu(k,1404) = lu(k,1404) - lu(k,768) * lu(k,1396) + lu(k,1405) = lu(k,1405) - lu(k,769) * lu(k,1396) + lu(k,1407) = lu(k,1407) - lu(k,770) * lu(k,1396) + lu(k,1408) = lu(k,1408) - lu(k,771) * lu(k,1396) + lu(k,1410) = lu(k,1410) - lu(k,772) * lu(k,1396) + lu(k,1414) = lu(k,1414) - lu(k,773) * lu(k,1396) + lu(k,1415) = lu(k,1415) - lu(k,774) * lu(k,1396) + lu(k,1417) = lu(k,1417) - lu(k,775) * lu(k,1396) + lu(k,1418) = lu(k,1418) - lu(k,776) * lu(k,1396) + lu(k,1419) = lu(k,1419) - lu(k,777) * lu(k,1396) + lu(k,1536) = lu(k,1536) - lu(k,766) * lu(k,1535) + lu(k,1537) = lu(k,1537) - lu(k,767) * lu(k,1535) + lu(k,1542) = lu(k,1542) - lu(k,768) * lu(k,1535) + lu(k,1543) = lu(k,1543) - lu(k,769) * lu(k,1535) + lu(k,1545) = lu(k,1545) - lu(k,770) * lu(k,1535) + lu(k,1546) = lu(k,1546) - lu(k,771) * lu(k,1535) + lu(k,1548) = lu(k,1548) - lu(k,772) * lu(k,1535) + lu(k,1552) = lu(k,1552) - lu(k,773) * lu(k,1535) + lu(k,1553) = lu(k,1553) - lu(k,774) * lu(k,1535) + lu(k,1555) = lu(k,1555) - lu(k,775) * lu(k,1535) + lu(k,1556) = lu(k,1556) - lu(k,776) * lu(k,1535) + lu(k,1557) = lu(k,1557) - lu(k,777) * lu(k,1535) lu(k,793) = 1._r8 / lu(k,793) lu(k,794) = lu(k,794) * lu(k,793) lu(k,795) = lu(k,795) * lu(k,793) @@ -3684,110 +3683,110 @@ subroutine lu_fac16( avec_len, lu ) lu(k,804) = lu(k,804) * lu(k,793) lu(k,805) = lu(k,805) * lu(k,793) lu(k,806) = lu(k,806) * lu(k,793) - lu(k,989) = lu(k,989) - lu(k,794) * lu(k,988) - lu(k,993) = lu(k,993) - lu(k,795) * lu(k,988) - lu(k,996) = lu(k,996) - lu(k,796) * lu(k,988) - lu(k,997) = lu(k,997) - lu(k,797) * lu(k,988) - lu(k,998) = lu(k,998) - lu(k,798) * lu(k,988) - lu(k,999) = lu(k,999) - lu(k,799) * lu(k,988) - lu(k,1000) = lu(k,1000) - lu(k,800) * lu(k,988) - lu(k,1001) = lu(k,1001) - lu(k,801) * lu(k,988) - lu(k,1002) = lu(k,1002) - lu(k,802) * lu(k,988) - lu(k,1005) = lu(k,1005) - lu(k,803) * lu(k,988) - lu(k,1007) = lu(k,1007) - lu(k,804) * lu(k,988) - lu(k,1008) = - lu(k,805) * lu(k,988) - lu(k,1010) = lu(k,1010) - lu(k,806) * lu(k,988) - lu(k,1072) = lu(k,1072) - lu(k,794) * lu(k,1071) - lu(k,1076) = lu(k,1076) - lu(k,795) * lu(k,1071) - lu(k,1079) = lu(k,1079) - lu(k,796) * lu(k,1071) - lu(k,1080) = lu(k,1080) - lu(k,797) * lu(k,1071) - lu(k,1081) = lu(k,1081) - lu(k,798) * lu(k,1071) - lu(k,1082) = lu(k,1082) - lu(k,799) * lu(k,1071) - lu(k,1083) = lu(k,1083) - lu(k,800) * lu(k,1071) - lu(k,1084) = lu(k,1084) - lu(k,801) * lu(k,1071) - lu(k,1085) = lu(k,1085) - lu(k,802) * lu(k,1071) - lu(k,1088) = lu(k,1088) - lu(k,803) * lu(k,1071) - lu(k,1090) = lu(k,1090) - lu(k,804) * lu(k,1071) - lu(k,1091) = lu(k,1091) - lu(k,805) * lu(k,1071) - lu(k,1093) = lu(k,1093) - lu(k,806) * lu(k,1071) - lu(k,1119) = lu(k,1119) - lu(k,794) * lu(k,1118) - lu(k,1122) = lu(k,1122) - lu(k,795) * lu(k,1118) - lu(k,1125) = lu(k,1125) - lu(k,796) * lu(k,1118) - lu(k,1126) = lu(k,1126) - lu(k,797) * lu(k,1118) - lu(k,1127) = lu(k,1127) - lu(k,798) * lu(k,1118) - lu(k,1128) = lu(k,1128) - lu(k,799) * lu(k,1118) - lu(k,1129) = lu(k,1129) - lu(k,800) * lu(k,1118) - lu(k,1130) = lu(k,1130) - lu(k,801) * lu(k,1118) - lu(k,1131) = lu(k,1131) - lu(k,802) * lu(k,1118) - lu(k,1134) = lu(k,1134) - lu(k,803) * lu(k,1118) - lu(k,1136) = lu(k,1136) - lu(k,804) * lu(k,1118) - lu(k,1137) = lu(k,1137) - lu(k,805) * lu(k,1118) - lu(k,1139) = lu(k,1139) - lu(k,806) * lu(k,1118) - lu(k,1185) = lu(k,1185) - lu(k,794) * lu(k,1184) - lu(k,1186) = lu(k,1186) - lu(k,795) * lu(k,1184) - lu(k,1189) = lu(k,1189) - lu(k,796) * lu(k,1184) - lu(k,1190) = lu(k,1190) - lu(k,797) * lu(k,1184) - lu(k,1191) = lu(k,1191) - lu(k,798) * lu(k,1184) - lu(k,1192) = lu(k,1192) - lu(k,799) * lu(k,1184) - lu(k,1193) = lu(k,1193) - lu(k,800) * lu(k,1184) - lu(k,1194) = lu(k,1194) - lu(k,801) * lu(k,1184) - lu(k,1195) = lu(k,1195) - lu(k,802) * lu(k,1184) - lu(k,1198) = lu(k,1198) - lu(k,803) * lu(k,1184) - lu(k,1200) = lu(k,1200) - lu(k,804) * lu(k,1184) - lu(k,1201) = lu(k,1201) - lu(k,805) * lu(k,1184) - lu(k,1203) = lu(k,1203) - lu(k,806) * lu(k,1184) - lu(k,1229) = lu(k,1229) - lu(k,794) * lu(k,1228) - lu(k,1232) = lu(k,1232) - lu(k,795) * lu(k,1228) - lu(k,1235) = lu(k,1235) - lu(k,796) * lu(k,1228) - lu(k,1236) = lu(k,1236) - lu(k,797) * lu(k,1228) - lu(k,1237) = lu(k,1237) - lu(k,798) * lu(k,1228) - lu(k,1238) = lu(k,1238) - lu(k,799) * lu(k,1228) - lu(k,1239) = lu(k,1239) - lu(k,800) * lu(k,1228) - lu(k,1240) = lu(k,1240) - lu(k,801) * lu(k,1228) - lu(k,1241) = lu(k,1241) - lu(k,802) * lu(k,1228) - lu(k,1244) = lu(k,1244) - lu(k,803) * lu(k,1228) - lu(k,1246) = lu(k,1246) - lu(k,804) * lu(k,1228) - lu(k,1247) = lu(k,1247) - lu(k,805) * lu(k,1228) - lu(k,1249) = lu(k,1249) - lu(k,806) * lu(k,1228) - lu(k,1308) = lu(k,1308) - lu(k,794) * lu(k,1307) - lu(k,1312) = lu(k,1312) - lu(k,795) * lu(k,1307) - lu(k,1315) = lu(k,1315) - lu(k,796) * lu(k,1307) - lu(k,1316) = lu(k,1316) - lu(k,797) * lu(k,1307) - lu(k,1317) = lu(k,1317) - lu(k,798) * lu(k,1307) - lu(k,1318) = lu(k,1318) - lu(k,799) * lu(k,1307) - lu(k,1319) = lu(k,1319) - lu(k,800) * lu(k,1307) - lu(k,1320) = lu(k,1320) - lu(k,801) * lu(k,1307) - lu(k,1321) = lu(k,1321) - lu(k,802) * lu(k,1307) - lu(k,1324) = lu(k,1324) - lu(k,803) * lu(k,1307) - lu(k,1326) = lu(k,1326) - lu(k,804) * lu(k,1307) - lu(k,1327) = lu(k,1327) - lu(k,805) * lu(k,1307) - lu(k,1329) = lu(k,1329) - lu(k,806) * lu(k,1307) - lu(k,1396) = lu(k,1396) - lu(k,794) * lu(k,1395) - lu(k,1401) = lu(k,1401) - lu(k,795) * lu(k,1395) - lu(k,1404) = lu(k,1404) - lu(k,796) * lu(k,1395) - lu(k,1405) = lu(k,1405) - lu(k,797) * lu(k,1395) - lu(k,1406) = lu(k,1406) - lu(k,798) * lu(k,1395) - lu(k,1407) = lu(k,1407) - lu(k,799) * lu(k,1395) - lu(k,1408) = lu(k,1408) - lu(k,800) * lu(k,1395) - lu(k,1409) = lu(k,1409) - lu(k,801) * lu(k,1395) - lu(k,1410) = lu(k,1410) - lu(k,802) * lu(k,1395) - lu(k,1413) = lu(k,1413) - lu(k,803) * lu(k,1395) - lu(k,1415) = lu(k,1415) - lu(k,804) * lu(k,1395) - lu(k,1416) = lu(k,1416) - lu(k,805) * lu(k,1395) - lu(k,1418) = lu(k,1418) - lu(k,806) * lu(k,1395) - lu(k,1492) = lu(k,1492) - lu(k,794) * lu(k,1491) - lu(k,1494) = lu(k,1494) - lu(k,795) * lu(k,1491) - lu(k,1497) = lu(k,1497) - lu(k,796) * lu(k,1491) - lu(k,1498) = lu(k,1498) - lu(k,797) * lu(k,1491) - lu(k,1499) = lu(k,1499) - lu(k,798) * lu(k,1491) - lu(k,1500) = lu(k,1500) - lu(k,799) * lu(k,1491) - lu(k,1501) = lu(k,1501) - lu(k,800) * lu(k,1491) - lu(k,1502) = lu(k,1502) - lu(k,801) * lu(k,1491) - lu(k,1503) = lu(k,1503) - lu(k,802) * lu(k,1491) - lu(k,1506) = lu(k,1506) - lu(k,803) * lu(k,1491) - lu(k,1508) = lu(k,1508) - lu(k,804) * lu(k,1491) - lu(k,1509) = lu(k,1509) - lu(k,805) * lu(k,1491) - lu(k,1511) = lu(k,1511) - lu(k,806) * lu(k,1491) + lu(k,970) = lu(k,970) - lu(k,794) * lu(k,969) + lu(k,971) = lu(k,971) - lu(k,795) * lu(k,969) + lu(k,972) = lu(k,972) - lu(k,796) * lu(k,969) + lu(k,973) = lu(k,973) - lu(k,797) * lu(k,969) + lu(k,974) = lu(k,974) - lu(k,798) * lu(k,969) + lu(k,976) = lu(k,976) - lu(k,799) * lu(k,969) + lu(k,977) = lu(k,977) - lu(k,800) * lu(k,969) + lu(k,979) = lu(k,979) - lu(k,801) * lu(k,969) + lu(k,983) = lu(k,983) - lu(k,802) * lu(k,969) + lu(k,984) = lu(k,984) - lu(k,803) * lu(k,969) + lu(k,986) = lu(k,986) - lu(k,804) * lu(k,969) + lu(k,987) = lu(k,987) - lu(k,805) * lu(k,969) + lu(k,988) = lu(k,988) - lu(k,806) * lu(k,969) + lu(k,1014) = lu(k,1014) - lu(k,794) * lu(k,1013) + lu(k,1017) = lu(k,1017) - lu(k,795) * lu(k,1013) + lu(k,1018) = lu(k,1018) - lu(k,796) * lu(k,1013) + lu(k,1019) = lu(k,1019) - lu(k,797) * lu(k,1013) + lu(k,1020) = lu(k,1020) - lu(k,798) * lu(k,1013) + lu(k,1022) = lu(k,1022) - lu(k,799) * lu(k,1013) + lu(k,1023) = lu(k,1023) - lu(k,800) * lu(k,1013) + lu(k,1025) = lu(k,1025) - lu(k,801) * lu(k,1013) + lu(k,1029) = lu(k,1029) - lu(k,802) * lu(k,1013) + lu(k,1030) = lu(k,1030) - lu(k,803) * lu(k,1013) + lu(k,1032) = lu(k,1032) - lu(k,804) * lu(k,1013) + lu(k,1033) = lu(k,1033) - lu(k,805) * lu(k,1013) + lu(k,1034) = lu(k,1034) - lu(k,806) * lu(k,1013) + lu(k,1071) = lu(k,1071) - lu(k,794) * lu(k,1070) + lu(k,1075) = lu(k,1075) - lu(k,795) * lu(k,1070) + lu(k,1076) = - lu(k,796) * lu(k,1070) + lu(k,1077) = lu(k,1077) - lu(k,797) * lu(k,1070) + lu(k,1078) = lu(k,1078) - lu(k,798) * lu(k,1070) + lu(k,1080) = lu(k,1080) - lu(k,799) * lu(k,1070) + lu(k,1081) = lu(k,1081) - lu(k,800) * lu(k,1070) + lu(k,1083) = lu(k,1083) - lu(k,801) * lu(k,1070) + lu(k,1087) = lu(k,1087) - lu(k,802) * lu(k,1070) + lu(k,1088) = lu(k,1088) - lu(k,803) * lu(k,1070) + lu(k,1090) = lu(k,1090) - lu(k,804) * lu(k,1070) + lu(k,1091) = lu(k,1091) - lu(k,805) * lu(k,1070) + lu(k,1092) = lu(k,1092) - lu(k,806) * lu(k,1070) + lu(k,1121) = lu(k,1121) - lu(k,794) * lu(k,1120) + lu(k,1123) = lu(k,1123) - lu(k,795) * lu(k,1120) + lu(k,1124) = lu(k,1124) - lu(k,796) * lu(k,1120) + lu(k,1125) = lu(k,1125) - lu(k,797) * lu(k,1120) + lu(k,1126) = lu(k,1126) - lu(k,798) * lu(k,1120) + lu(k,1128) = lu(k,1128) - lu(k,799) * lu(k,1120) + lu(k,1129) = lu(k,1129) - lu(k,800) * lu(k,1120) + lu(k,1131) = lu(k,1131) - lu(k,801) * lu(k,1120) + lu(k,1135) = lu(k,1135) - lu(k,802) * lu(k,1120) + lu(k,1136) = lu(k,1136) - lu(k,803) * lu(k,1120) + lu(k,1138) = lu(k,1138) - lu(k,804) * lu(k,1120) + lu(k,1139) = lu(k,1139) - lu(k,805) * lu(k,1120) + lu(k,1140) = lu(k,1140) - lu(k,806) * lu(k,1120) + lu(k,1249) = lu(k,1249) - lu(k,794) * lu(k,1248) + lu(k,1254) = lu(k,1254) - lu(k,795) * lu(k,1248) + lu(k,1255) = lu(k,1255) - lu(k,796) * lu(k,1248) + lu(k,1256) = lu(k,1256) - lu(k,797) * lu(k,1248) + lu(k,1257) = lu(k,1257) - lu(k,798) * lu(k,1248) + lu(k,1259) = lu(k,1259) - lu(k,799) * lu(k,1248) + lu(k,1260) = lu(k,1260) - lu(k,800) * lu(k,1248) + lu(k,1262) = lu(k,1262) - lu(k,801) * lu(k,1248) + lu(k,1266) = lu(k,1266) - lu(k,802) * lu(k,1248) + lu(k,1267) = lu(k,1267) - lu(k,803) * lu(k,1248) + lu(k,1269) = lu(k,1269) - lu(k,804) * lu(k,1248) + lu(k,1270) = lu(k,1270) - lu(k,805) * lu(k,1248) + lu(k,1271) = lu(k,1271) - lu(k,806) * lu(k,1248) + lu(k,1288) = lu(k,1288) - lu(k,794) * lu(k,1287) + lu(k,1292) = lu(k,1292) - lu(k,795) * lu(k,1287) + lu(k,1293) = lu(k,1293) - lu(k,796) * lu(k,1287) + lu(k,1294) = lu(k,1294) - lu(k,797) * lu(k,1287) + lu(k,1295) = lu(k,1295) - lu(k,798) * lu(k,1287) + lu(k,1297) = lu(k,1297) - lu(k,799) * lu(k,1287) + lu(k,1298) = lu(k,1298) - lu(k,800) * lu(k,1287) + lu(k,1300) = lu(k,1300) - lu(k,801) * lu(k,1287) + lu(k,1304) = lu(k,1304) - lu(k,802) * lu(k,1287) + lu(k,1305) = lu(k,1305) - lu(k,803) * lu(k,1287) + lu(k,1307) = lu(k,1307) - lu(k,804) * lu(k,1287) + lu(k,1308) = lu(k,1308) - lu(k,805) * lu(k,1287) + lu(k,1309) = lu(k,1309) - lu(k,806) * lu(k,1287) + lu(k,1398) = lu(k,1398) - lu(k,794) * lu(k,1397) + lu(k,1402) = lu(k,1402) - lu(k,795) * lu(k,1397) + lu(k,1403) = lu(k,1403) - lu(k,796) * lu(k,1397) + lu(k,1404) = lu(k,1404) - lu(k,797) * lu(k,1397) + lu(k,1405) = lu(k,1405) - lu(k,798) * lu(k,1397) + lu(k,1407) = lu(k,1407) - lu(k,799) * lu(k,1397) + lu(k,1408) = lu(k,1408) - lu(k,800) * lu(k,1397) + lu(k,1410) = lu(k,1410) - lu(k,801) * lu(k,1397) + lu(k,1414) = lu(k,1414) - lu(k,802) * lu(k,1397) + lu(k,1415) = lu(k,1415) - lu(k,803) * lu(k,1397) + lu(k,1417) = lu(k,1417) - lu(k,804) * lu(k,1397) + lu(k,1418) = lu(k,1418) - lu(k,805) * lu(k,1397) + lu(k,1419) = lu(k,1419) - lu(k,806) * lu(k,1397) + lu(k,1537) = lu(k,1537) - lu(k,794) * lu(k,1536) + lu(k,1540) = lu(k,1540) - lu(k,795) * lu(k,1536) + lu(k,1541) = lu(k,1541) - lu(k,796) * lu(k,1536) + lu(k,1542) = lu(k,1542) - lu(k,797) * lu(k,1536) + lu(k,1543) = lu(k,1543) - lu(k,798) * lu(k,1536) + lu(k,1545) = lu(k,1545) - lu(k,799) * lu(k,1536) + lu(k,1546) = lu(k,1546) - lu(k,800) * lu(k,1536) + lu(k,1548) = lu(k,1548) - lu(k,801) * lu(k,1536) + lu(k,1552) = lu(k,1552) - lu(k,802) * lu(k,1536) + lu(k,1553) = lu(k,1553) - lu(k,803) * lu(k,1536) + lu(k,1555) = lu(k,1555) - lu(k,804) * lu(k,1536) + lu(k,1556) = lu(k,1556) - lu(k,805) * lu(k,1536) + lu(k,1557) = lu(k,1557) - lu(k,806) * lu(k,1536) end do end subroutine lu_fac16 subroutine lu_fac17( avec_len, lu ) @@ -3814,109 +3813,109 @@ subroutine lu_fac17( avec_len, lu ) lu(k,822) = lu(k,822) * lu(k,815) lu(k,823) = lu(k,823) * lu(k,815) lu(k,877) = lu(k,877) - lu(k,816) * lu(k,875) - lu(k,879) = - lu(k,817) * lu(k,875) - lu(k,881) = lu(k,881) - lu(k,818) * lu(k,875) - lu(k,883) = lu(k,883) - lu(k,819) * lu(k,875) - lu(k,884) = lu(k,884) - lu(k,820) * lu(k,875) - lu(k,885) = lu(k,885) - lu(k,821) * lu(k,875) - lu(k,886) = - lu(k,822) * lu(k,875) - lu(k,887) = lu(k,887) - lu(k,823) * lu(k,875) + lu(k,878) = lu(k,878) - lu(k,817) * lu(k,875) + lu(k,879) = - lu(k,818) * lu(k,875) + lu(k,880) = - lu(k,819) * lu(k,875) + lu(k,881) = lu(k,881) - lu(k,820) * lu(k,875) + lu(k,882) = lu(k,882) - lu(k,821) * lu(k,875) + lu(k,884) = lu(k,884) - lu(k,822) * lu(k,875) + lu(k,886) = lu(k,886) - lu(k,823) * lu(k,875) lu(k,909) = lu(k,909) - lu(k,816) * lu(k,906) - lu(k,912) = lu(k,912) - lu(k,817) * lu(k,906) - lu(k,914) = lu(k,914) - lu(k,818) * lu(k,906) - lu(k,916) = lu(k,916) - lu(k,819) * lu(k,906) - lu(k,918) = lu(k,918) - lu(k,820) * lu(k,906) - lu(k,919) = lu(k,919) - lu(k,821) * lu(k,906) - lu(k,920) = lu(k,920) - lu(k,822) * lu(k,906) - lu(k,921) = lu(k,921) - lu(k,823) * lu(k,906) - lu(k,993) = lu(k,993) - lu(k,816) * lu(k,989) - lu(k,996) = lu(k,996) - lu(k,817) * lu(k,989) - lu(k,998) = lu(k,998) - lu(k,818) * lu(k,989) - lu(k,1003) = lu(k,1003) - lu(k,819) * lu(k,989) - lu(k,1005) = lu(k,1005) - lu(k,820) * lu(k,989) - lu(k,1006) = lu(k,1006) - lu(k,821) * lu(k,989) - lu(k,1007) = lu(k,1007) - lu(k,822) * lu(k,989) - lu(k,1009) = lu(k,1009) - lu(k,823) * lu(k,989) - lu(k,1017) = - lu(k,816) * lu(k,1013) - lu(k,1020) = - lu(k,817) * lu(k,1013) - lu(k,1022) = lu(k,1022) - lu(k,818) * lu(k,1013) - lu(k,1027) = lu(k,1027) - lu(k,819) * lu(k,1013) - lu(k,1029) = lu(k,1029) - lu(k,820) * lu(k,1013) - lu(k,1030) = lu(k,1030) - lu(k,821) * lu(k,1013) - lu(k,1031) = - lu(k,822) * lu(k,1013) - lu(k,1033) = lu(k,1033) - lu(k,823) * lu(k,1013) - lu(k,1076) = lu(k,1076) - lu(k,816) * lu(k,1072) - lu(k,1079) = lu(k,1079) - lu(k,817) * lu(k,1072) - lu(k,1081) = lu(k,1081) - lu(k,818) * lu(k,1072) - lu(k,1086) = lu(k,1086) - lu(k,819) * lu(k,1072) - lu(k,1088) = lu(k,1088) - lu(k,820) * lu(k,1072) - lu(k,1089) = lu(k,1089) - lu(k,821) * lu(k,1072) - lu(k,1090) = lu(k,1090) - lu(k,822) * lu(k,1072) - lu(k,1092) = lu(k,1092) - lu(k,823) * lu(k,1072) - lu(k,1122) = lu(k,1122) - lu(k,816) * lu(k,1119) - lu(k,1125) = lu(k,1125) - lu(k,817) * lu(k,1119) - lu(k,1127) = lu(k,1127) - lu(k,818) * lu(k,1119) - lu(k,1132) = lu(k,1132) - lu(k,819) * lu(k,1119) - lu(k,1134) = lu(k,1134) - lu(k,820) * lu(k,1119) - lu(k,1135) = lu(k,1135) - lu(k,821) * lu(k,1119) - lu(k,1136) = lu(k,1136) - lu(k,822) * lu(k,1119) - lu(k,1138) = lu(k,1138) - lu(k,823) * lu(k,1119) - lu(k,1186) = lu(k,1186) - lu(k,816) * lu(k,1185) - lu(k,1189) = lu(k,1189) - lu(k,817) * lu(k,1185) - lu(k,1191) = lu(k,1191) - lu(k,818) * lu(k,1185) - lu(k,1196) = - lu(k,819) * lu(k,1185) - lu(k,1198) = lu(k,1198) - lu(k,820) * lu(k,1185) - lu(k,1199) = - lu(k,821) * lu(k,1185) - lu(k,1200) = lu(k,1200) - lu(k,822) * lu(k,1185) - lu(k,1202) = lu(k,1202) - lu(k,823) * lu(k,1185) - lu(k,1232) = lu(k,1232) - lu(k,816) * lu(k,1229) - lu(k,1235) = lu(k,1235) - lu(k,817) * lu(k,1229) - lu(k,1237) = lu(k,1237) - lu(k,818) * lu(k,1229) - lu(k,1242) = - lu(k,819) * lu(k,1229) - lu(k,1244) = lu(k,1244) - lu(k,820) * lu(k,1229) - lu(k,1245) = lu(k,1245) - lu(k,821) * lu(k,1229) - lu(k,1246) = lu(k,1246) - lu(k,822) * lu(k,1229) - lu(k,1248) = - lu(k,823) * lu(k,1229) - lu(k,1312) = lu(k,1312) - lu(k,816) * lu(k,1308) - lu(k,1315) = lu(k,1315) - lu(k,817) * lu(k,1308) - lu(k,1317) = lu(k,1317) - lu(k,818) * lu(k,1308) - lu(k,1322) = lu(k,1322) - lu(k,819) * lu(k,1308) - lu(k,1324) = lu(k,1324) - lu(k,820) * lu(k,1308) - lu(k,1325) = lu(k,1325) - lu(k,821) * lu(k,1308) - lu(k,1326) = lu(k,1326) - lu(k,822) * lu(k,1308) - lu(k,1328) = lu(k,1328) - lu(k,823) * lu(k,1308) - lu(k,1401) = lu(k,1401) - lu(k,816) * lu(k,1396) - lu(k,1404) = lu(k,1404) - lu(k,817) * lu(k,1396) - lu(k,1406) = lu(k,1406) - lu(k,818) * lu(k,1396) - lu(k,1411) = lu(k,1411) - lu(k,819) * lu(k,1396) - lu(k,1413) = lu(k,1413) - lu(k,820) * lu(k,1396) - lu(k,1414) = lu(k,1414) - lu(k,821) * lu(k,1396) - lu(k,1415) = lu(k,1415) - lu(k,822) * lu(k,1396) - lu(k,1417) = lu(k,1417) - lu(k,823) * lu(k,1396) - lu(k,1446) = lu(k,1446) - lu(k,816) * lu(k,1441) - lu(k,1449) = lu(k,1449) - lu(k,817) * lu(k,1441) - lu(k,1451) = lu(k,1451) - lu(k,818) * lu(k,1441) - lu(k,1456) = lu(k,1456) - lu(k,819) * lu(k,1441) - lu(k,1458) = lu(k,1458) - lu(k,820) * lu(k,1441) - lu(k,1459) = lu(k,1459) - lu(k,821) * lu(k,1441) - lu(k,1460) = lu(k,1460) - lu(k,822) * lu(k,1441) - lu(k,1462) = lu(k,1462) - lu(k,823) * lu(k,1441) - lu(k,1494) = lu(k,1494) - lu(k,816) * lu(k,1492) - lu(k,1497) = lu(k,1497) - lu(k,817) * lu(k,1492) - lu(k,1499) = lu(k,1499) - lu(k,818) * lu(k,1492) - lu(k,1504) = lu(k,1504) - lu(k,819) * lu(k,1492) - lu(k,1506) = lu(k,1506) - lu(k,820) * lu(k,1492) - lu(k,1507) = lu(k,1507) - lu(k,821) * lu(k,1492) - lu(k,1508) = lu(k,1508) - lu(k,822) * lu(k,1492) - lu(k,1510) = lu(k,1510) - lu(k,823) * lu(k,1492) - lu(k,1519) = - lu(k,816) * lu(k,1515) - lu(k,1522) = - lu(k,817) * lu(k,1515) - lu(k,1524) = lu(k,1524) - lu(k,818) * lu(k,1515) - lu(k,1529) = lu(k,1529) - lu(k,819) * lu(k,1515) - lu(k,1531) = lu(k,1531) - lu(k,820) * lu(k,1515) - lu(k,1532) = lu(k,1532) - lu(k,821) * lu(k,1515) - lu(k,1533) = - lu(k,822) * lu(k,1515) - lu(k,1535) = lu(k,1535) - lu(k,823) * lu(k,1515) + lu(k,910) = lu(k,910) - lu(k,817) * lu(k,906) + lu(k,911) = lu(k,911) - lu(k,818) * lu(k,906) + lu(k,912) = lu(k,912) - lu(k,819) * lu(k,906) + lu(k,913) = lu(k,913) - lu(k,820) * lu(k,906) + lu(k,914) = lu(k,914) - lu(k,821) * lu(k,906) + lu(k,918) = lu(k,918) - lu(k,822) * lu(k,906) + lu(k,920) = lu(k,920) - lu(k,823) * lu(k,906) + lu(k,930) = - lu(k,816) * lu(k,926) + lu(k,934) = lu(k,934) - lu(k,817) * lu(k,926) + lu(k,935) = - lu(k,818) * lu(k,926) + lu(k,936) = - lu(k,819) * lu(k,926) + lu(k,937) = lu(k,937) - lu(k,820) * lu(k,926) + lu(k,938) = lu(k,938) - lu(k,821) * lu(k,926) + lu(k,942) = lu(k,942) - lu(k,822) * lu(k,926) + lu(k,944) = lu(k,944) - lu(k,823) * lu(k,926) + lu(k,971) = lu(k,971) - lu(k,816) * lu(k,970) + lu(k,975) = lu(k,975) - lu(k,817) * lu(k,970) + lu(k,976) = lu(k,976) - lu(k,818) * lu(k,970) + lu(k,977) = lu(k,977) - lu(k,819) * lu(k,970) + lu(k,978) = - lu(k,820) * lu(k,970) + lu(k,979) = lu(k,979) - lu(k,821) * lu(k,970) + lu(k,983) = lu(k,983) - lu(k,822) * lu(k,970) + lu(k,985) = - lu(k,823) * lu(k,970) + lu(k,1017) = lu(k,1017) - lu(k,816) * lu(k,1014) + lu(k,1021) = - lu(k,817) * lu(k,1014) + lu(k,1022) = lu(k,1022) - lu(k,818) * lu(k,1014) + lu(k,1023) = lu(k,1023) - lu(k,819) * lu(k,1014) + lu(k,1024) = - lu(k,820) * lu(k,1014) + lu(k,1025) = lu(k,1025) - lu(k,821) * lu(k,1014) + lu(k,1029) = lu(k,1029) - lu(k,822) * lu(k,1014) + lu(k,1031) = lu(k,1031) - lu(k,823) * lu(k,1014) + lu(k,1075) = lu(k,1075) - lu(k,816) * lu(k,1071) + lu(k,1079) = lu(k,1079) - lu(k,817) * lu(k,1071) + lu(k,1080) = lu(k,1080) - lu(k,818) * lu(k,1071) + lu(k,1081) = lu(k,1081) - lu(k,819) * lu(k,1071) + lu(k,1082) = lu(k,1082) - lu(k,820) * lu(k,1071) + lu(k,1083) = lu(k,1083) - lu(k,821) * lu(k,1071) + lu(k,1087) = lu(k,1087) - lu(k,822) * lu(k,1071) + lu(k,1089) = lu(k,1089) - lu(k,823) * lu(k,1071) + lu(k,1123) = lu(k,1123) - lu(k,816) * lu(k,1121) + lu(k,1127) = lu(k,1127) - lu(k,817) * lu(k,1121) + lu(k,1128) = lu(k,1128) - lu(k,818) * lu(k,1121) + lu(k,1129) = lu(k,1129) - lu(k,819) * lu(k,1121) + lu(k,1130) = lu(k,1130) - lu(k,820) * lu(k,1121) + lu(k,1131) = lu(k,1131) - lu(k,821) * lu(k,1121) + lu(k,1135) = lu(k,1135) - lu(k,822) * lu(k,1121) + lu(k,1137) = lu(k,1137) - lu(k,823) * lu(k,1121) + lu(k,1254) = lu(k,1254) - lu(k,816) * lu(k,1249) + lu(k,1258) = lu(k,1258) - lu(k,817) * lu(k,1249) + lu(k,1259) = lu(k,1259) - lu(k,818) * lu(k,1249) + lu(k,1260) = lu(k,1260) - lu(k,819) * lu(k,1249) + lu(k,1261) = lu(k,1261) - lu(k,820) * lu(k,1249) + lu(k,1262) = lu(k,1262) - lu(k,821) * lu(k,1249) + lu(k,1266) = lu(k,1266) - lu(k,822) * lu(k,1249) + lu(k,1268) = lu(k,1268) - lu(k,823) * lu(k,1249) + lu(k,1292) = lu(k,1292) - lu(k,816) * lu(k,1288) + lu(k,1296) = lu(k,1296) - lu(k,817) * lu(k,1288) + lu(k,1297) = lu(k,1297) - lu(k,818) * lu(k,1288) + lu(k,1298) = lu(k,1298) - lu(k,819) * lu(k,1288) + lu(k,1299) = lu(k,1299) - lu(k,820) * lu(k,1288) + lu(k,1300) = lu(k,1300) - lu(k,821) * lu(k,1288) + lu(k,1304) = lu(k,1304) - lu(k,822) * lu(k,1288) + lu(k,1306) = lu(k,1306) - lu(k,823) * lu(k,1288) + lu(k,1402) = lu(k,1402) - lu(k,816) * lu(k,1398) + lu(k,1406) = lu(k,1406) - lu(k,817) * lu(k,1398) + lu(k,1407) = lu(k,1407) - lu(k,818) * lu(k,1398) + lu(k,1408) = lu(k,1408) - lu(k,819) * lu(k,1398) + lu(k,1409) = lu(k,1409) - lu(k,820) * lu(k,1398) + lu(k,1410) = lu(k,1410) - lu(k,821) * lu(k,1398) + lu(k,1414) = lu(k,1414) - lu(k,822) * lu(k,1398) + lu(k,1416) = lu(k,1416) - lu(k,823) * lu(k,1398) + lu(k,1426) = - lu(k,816) * lu(k,1422) + lu(k,1430) = lu(k,1430) - lu(k,817) * lu(k,1422) + lu(k,1431) = - lu(k,818) * lu(k,1422) + lu(k,1432) = - lu(k,819) * lu(k,1422) + lu(k,1433) = lu(k,1433) - lu(k,820) * lu(k,1422) + lu(k,1434) = lu(k,1434) - lu(k,821) * lu(k,1422) + lu(k,1438) = lu(k,1438) - lu(k,822) * lu(k,1422) + lu(k,1440) = lu(k,1440) - lu(k,823) * lu(k,1422) + lu(k,1471) = lu(k,1471) - lu(k,816) * lu(k,1466) + lu(k,1475) = lu(k,1475) - lu(k,817) * lu(k,1466) + lu(k,1476) = lu(k,1476) - lu(k,818) * lu(k,1466) + lu(k,1477) = lu(k,1477) - lu(k,819) * lu(k,1466) + lu(k,1478) = lu(k,1478) - lu(k,820) * lu(k,1466) + lu(k,1479) = lu(k,1479) - lu(k,821) * lu(k,1466) + lu(k,1483) = lu(k,1483) - lu(k,822) * lu(k,1466) + lu(k,1485) = lu(k,1485) - lu(k,823) * lu(k,1466) + lu(k,1540) = lu(k,1540) - lu(k,816) * lu(k,1537) + lu(k,1544) = lu(k,1544) - lu(k,817) * lu(k,1537) + lu(k,1545) = lu(k,1545) - lu(k,818) * lu(k,1537) + lu(k,1546) = lu(k,1546) - lu(k,819) * lu(k,1537) + lu(k,1547) = lu(k,1547) - lu(k,820) * lu(k,1537) + lu(k,1548) = lu(k,1548) - lu(k,821) * lu(k,1537) + lu(k,1552) = lu(k,1552) - lu(k,822) * lu(k,1537) + lu(k,1554) = lu(k,1554) - lu(k,823) * lu(k,1537) lu(k,826) = 1._r8 / lu(k,826) lu(k,827) = lu(k,827) * lu(k,826) lu(k,828) = lu(k,828) * lu(k,826) @@ -3929,115 +3928,115 @@ subroutine lu_fac17( avec_len, lu ) lu(k,835) = lu(k,835) * lu(k,826) lu(k,836) = lu(k,836) * lu(k,826) lu(k,837) = lu(k,837) * lu(k,826) - lu(k,1015) = lu(k,1015) - lu(k,827) * lu(k,1014) - lu(k,1024) = lu(k,1024) - lu(k,828) * lu(k,1014) - lu(k,1025) = - lu(k,829) * lu(k,1014) - lu(k,1026) = lu(k,1026) - lu(k,830) * lu(k,1014) - lu(k,1027) = lu(k,1027) - lu(k,831) * lu(k,1014) - lu(k,1028) = lu(k,1028) - lu(k,832) * lu(k,1014) - lu(k,1029) = lu(k,1029) - lu(k,833) * lu(k,1014) - lu(k,1030) = lu(k,1030) - lu(k,834) * lu(k,1014) - lu(k,1032) = - lu(k,835) * lu(k,1014) - lu(k,1033) = lu(k,1033) - lu(k,836) * lu(k,1014) - lu(k,1034) = lu(k,1034) - lu(k,837) * lu(k,1014) - lu(k,1074) = lu(k,1074) - lu(k,827) * lu(k,1073) - lu(k,1083) = lu(k,1083) - lu(k,828) * lu(k,1073) - lu(k,1084) = lu(k,1084) - lu(k,829) * lu(k,1073) - lu(k,1085) = lu(k,1085) - lu(k,830) * lu(k,1073) - lu(k,1086) = lu(k,1086) - lu(k,831) * lu(k,1073) - lu(k,1087) = lu(k,1087) - lu(k,832) * lu(k,1073) - lu(k,1088) = lu(k,1088) - lu(k,833) * lu(k,1073) - lu(k,1089) = lu(k,1089) - lu(k,834) * lu(k,1073) - lu(k,1091) = lu(k,1091) - lu(k,835) * lu(k,1073) - lu(k,1092) = lu(k,1092) - lu(k,836) * lu(k,1073) - lu(k,1093) = lu(k,1093) - lu(k,837) * lu(k,1073) - lu(k,1143) = - lu(k,827) * lu(k,1142) - lu(k,1152) = lu(k,1152) - lu(k,828) * lu(k,1142) - lu(k,1153) = lu(k,1153) - lu(k,829) * lu(k,1142) - lu(k,1154) = lu(k,1154) - lu(k,830) * lu(k,1142) - lu(k,1155) = - lu(k,831) * lu(k,1142) - lu(k,1156) = - lu(k,832) * lu(k,1142) - lu(k,1157) = lu(k,1157) - lu(k,833) * lu(k,1142) - lu(k,1158) = - lu(k,834) * lu(k,1142) - lu(k,1160) = lu(k,1160) - lu(k,835) * lu(k,1142) - lu(k,1161) = lu(k,1161) - lu(k,836) * lu(k,1142) - lu(k,1162) = lu(k,1162) - lu(k,837) * lu(k,1142) - lu(k,1272) = lu(k,1272) - lu(k,827) * lu(k,1271) - lu(k,1281) = lu(k,1281) - lu(k,828) * lu(k,1271) - lu(k,1282) = lu(k,1282) - lu(k,829) * lu(k,1271) - lu(k,1283) = lu(k,1283) - lu(k,830) * lu(k,1271) - lu(k,1284) = lu(k,1284) - lu(k,831) * lu(k,1271) - lu(k,1285) = lu(k,1285) - lu(k,832) * lu(k,1271) - lu(k,1286) = lu(k,1286) - lu(k,833) * lu(k,1271) - lu(k,1287) = lu(k,1287) - lu(k,834) * lu(k,1271) - lu(k,1289) = lu(k,1289) - lu(k,835) * lu(k,1271) - lu(k,1290) = lu(k,1290) - lu(k,836) * lu(k,1271) - lu(k,1291) = lu(k,1291) - lu(k,837) * lu(k,1271) - lu(k,1310) = lu(k,1310) - lu(k,827) * lu(k,1309) - lu(k,1319) = lu(k,1319) - lu(k,828) * lu(k,1309) - lu(k,1320) = lu(k,1320) - lu(k,829) * lu(k,1309) - lu(k,1321) = lu(k,1321) - lu(k,830) * lu(k,1309) - lu(k,1322) = lu(k,1322) - lu(k,831) * lu(k,1309) - lu(k,1323) = lu(k,1323) - lu(k,832) * lu(k,1309) - lu(k,1324) = lu(k,1324) - lu(k,833) * lu(k,1309) - lu(k,1325) = lu(k,1325) - lu(k,834) * lu(k,1309) - lu(k,1327) = lu(k,1327) - lu(k,835) * lu(k,1309) - lu(k,1328) = lu(k,1328) - lu(k,836) * lu(k,1309) - lu(k,1329) = lu(k,1329) - lu(k,837) * lu(k,1309) - lu(k,1399) = lu(k,1399) - lu(k,827) * lu(k,1397) - lu(k,1408) = lu(k,1408) - lu(k,828) * lu(k,1397) - lu(k,1409) = lu(k,1409) - lu(k,829) * lu(k,1397) - lu(k,1410) = lu(k,1410) - lu(k,830) * lu(k,1397) - lu(k,1411) = lu(k,1411) - lu(k,831) * lu(k,1397) - lu(k,1412) = lu(k,1412) - lu(k,832) * lu(k,1397) - lu(k,1413) = lu(k,1413) - lu(k,833) * lu(k,1397) - lu(k,1414) = lu(k,1414) - lu(k,834) * lu(k,1397) - lu(k,1416) = lu(k,1416) - lu(k,835) * lu(k,1397) - lu(k,1417) = lu(k,1417) - lu(k,836) * lu(k,1397) - lu(k,1418) = lu(k,1418) - lu(k,837) * lu(k,1397) - lu(k,1444) = lu(k,1444) - lu(k,827) * lu(k,1442) - lu(k,1453) = lu(k,1453) - lu(k,828) * lu(k,1442) - lu(k,1454) = - lu(k,829) * lu(k,1442) - lu(k,1455) = lu(k,1455) - lu(k,830) * lu(k,1442) - lu(k,1456) = lu(k,1456) - lu(k,831) * lu(k,1442) - lu(k,1457) = lu(k,1457) - lu(k,832) * lu(k,1442) - lu(k,1458) = lu(k,1458) - lu(k,833) * lu(k,1442) - lu(k,1459) = lu(k,1459) - lu(k,834) * lu(k,1442) - lu(k,1461) = - lu(k,835) * lu(k,1442) - lu(k,1462) = lu(k,1462) - lu(k,836) * lu(k,1442) - lu(k,1463) = lu(k,1463) - lu(k,837) * lu(k,1442) - lu(k,1517) = lu(k,1517) - lu(k,827) * lu(k,1516) - lu(k,1526) = lu(k,1526) - lu(k,828) * lu(k,1516) - lu(k,1527) = lu(k,1527) - lu(k,829) * lu(k,1516) - lu(k,1528) = lu(k,1528) - lu(k,830) * lu(k,1516) - lu(k,1529) = lu(k,1529) - lu(k,831) * lu(k,1516) - lu(k,1530) = lu(k,1530) - lu(k,832) * lu(k,1516) - lu(k,1531) = lu(k,1531) - lu(k,833) * lu(k,1516) - lu(k,1532) = lu(k,1532) - lu(k,834) * lu(k,1516) - lu(k,1534) = lu(k,1534) - lu(k,835) * lu(k,1516) - lu(k,1535) = lu(k,1535) - lu(k,836) * lu(k,1516) - lu(k,1536) = lu(k,1536) - lu(k,837) * lu(k,1516) - lu(k,1538) = - lu(k,827) * lu(k,1537) - lu(k,1547) = - lu(k,828) * lu(k,1537) - lu(k,1548) = - lu(k,829) * lu(k,1537) - lu(k,1549) = - lu(k,830) * lu(k,1537) - lu(k,1550) = - lu(k,831) * lu(k,1537) - lu(k,1551) = - lu(k,832) * lu(k,1537) - lu(k,1552) = lu(k,1552) - lu(k,833) * lu(k,1537) - lu(k,1553) = lu(k,1553) - lu(k,834) * lu(k,1537) - lu(k,1555) = - lu(k,835) * lu(k,1537) - lu(k,1556) = lu(k,1556) - lu(k,836) * lu(k,1537) - lu(k,1557) = lu(k,1557) - lu(k,837) * lu(k,1537) + lu(k,928) = lu(k,928) - lu(k,827) * lu(k,927) + lu(k,931) = lu(k,931) - lu(k,828) * lu(k,927) + lu(k,932) = lu(k,932) - lu(k,829) * lu(k,927) + lu(k,933) = lu(k,933) - lu(k,830) * lu(k,927) + lu(k,934) = lu(k,934) - lu(k,831) * lu(k,927) + lu(k,937) = lu(k,937) - lu(k,832) * lu(k,927) + lu(k,938) = lu(k,938) - lu(k,833) * lu(k,927) + lu(k,939) = lu(k,939) - lu(k,834) * lu(k,927) + lu(k,944) = lu(k,944) - lu(k,835) * lu(k,927) + lu(k,945) = lu(k,945) - lu(k,836) * lu(k,927) + lu(k,947) = lu(k,947) - lu(k,837) * lu(k,927) + lu(k,1036) = - lu(k,827) * lu(k,1035) + lu(k,1039) = - lu(k,828) * lu(k,1035) + lu(k,1040) = - lu(k,829) * lu(k,1035) + lu(k,1041) = - lu(k,830) * lu(k,1035) + lu(k,1042) = lu(k,1042) - lu(k,831) * lu(k,1035) + lu(k,1045) = - lu(k,832) * lu(k,1035) + lu(k,1046) = lu(k,1046) - lu(k,833) * lu(k,1035) + lu(k,1047) = - lu(k,834) * lu(k,1035) + lu(k,1052) = lu(k,1052) - lu(k,835) * lu(k,1035) + lu(k,1053) = - lu(k,836) * lu(k,1035) + lu(k,1055) = lu(k,1055) - lu(k,837) * lu(k,1035) + lu(k,1163) = lu(k,1163) - lu(k,827) * lu(k,1162) + lu(k,1166) = lu(k,1166) - lu(k,828) * lu(k,1162) + lu(k,1167) = lu(k,1167) - lu(k,829) * lu(k,1162) + lu(k,1168) = lu(k,1168) - lu(k,830) * lu(k,1162) + lu(k,1169) = lu(k,1169) - lu(k,831) * lu(k,1162) + lu(k,1172) = lu(k,1172) - lu(k,832) * lu(k,1162) + lu(k,1173) = lu(k,1173) - lu(k,833) * lu(k,1162) + lu(k,1174) = lu(k,1174) - lu(k,834) * lu(k,1162) + lu(k,1179) = lu(k,1179) - lu(k,835) * lu(k,1162) + lu(k,1180) = lu(k,1180) - lu(k,836) * lu(k,1162) + lu(k,1182) = lu(k,1182) - lu(k,837) * lu(k,1162) + lu(k,1252) = lu(k,1252) - lu(k,827) * lu(k,1250) + lu(k,1255) = lu(k,1255) - lu(k,828) * lu(k,1250) + lu(k,1256) = lu(k,1256) - lu(k,829) * lu(k,1250) + lu(k,1257) = lu(k,1257) - lu(k,830) * lu(k,1250) + lu(k,1258) = lu(k,1258) - lu(k,831) * lu(k,1250) + lu(k,1261) = lu(k,1261) - lu(k,832) * lu(k,1250) + lu(k,1262) = lu(k,1262) - lu(k,833) * lu(k,1250) + lu(k,1263) = lu(k,1263) - lu(k,834) * lu(k,1250) + lu(k,1268) = lu(k,1268) - lu(k,835) * lu(k,1250) + lu(k,1269) = lu(k,1269) - lu(k,836) * lu(k,1250) + lu(k,1271) = lu(k,1271) - lu(k,837) * lu(k,1250) + lu(k,1290) = lu(k,1290) - lu(k,827) * lu(k,1289) + lu(k,1293) = lu(k,1293) - lu(k,828) * lu(k,1289) + lu(k,1294) = lu(k,1294) - lu(k,829) * lu(k,1289) + lu(k,1295) = lu(k,1295) - lu(k,830) * lu(k,1289) + lu(k,1296) = lu(k,1296) - lu(k,831) * lu(k,1289) + lu(k,1299) = lu(k,1299) - lu(k,832) * lu(k,1289) + lu(k,1300) = lu(k,1300) - lu(k,833) * lu(k,1289) + lu(k,1301) = lu(k,1301) - lu(k,834) * lu(k,1289) + lu(k,1306) = lu(k,1306) - lu(k,835) * lu(k,1289) + lu(k,1307) = lu(k,1307) - lu(k,836) * lu(k,1289) + lu(k,1309) = lu(k,1309) - lu(k,837) * lu(k,1289) + lu(k,1400) = lu(k,1400) - lu(k,827) * lu(k,1399) + lu(k,1403) = lu(k,1403) - lu(k,828) * lu(k,1399) + lu(k,1404) = lu(k,1404) - lu(k,829) * lu(k,1399) + lu(k,1405) = lu(k,1405) - lu(k,830) * lu(k,1399) + lu(k,1406) = lu(k,1406) - lu(k,831) * lu(k,1399) + lu(k,1409) = lu(k,1409) - lu(k,832) * lu(k,1399) + lu(k,1410) = lu(k,1410) - lu(k,833) * lu(k,1399) + lu(k,1411) = lu(k,1411) - lu(k,834) * lu(k,1399) + lu(k,1416) = lu(k,1416) - lu(k,835) * lu(k,1399) + lu(k,1417) = lu(k,1417) - lu(k,836) * lu(k,1399) + lu(k,1419) = lu(k,1419) - lu(k,837) * lu(k,1399) + lu(k,1424) = lu(k,1424) - lu(k,827) * lu(k,1423) + lu(k,1427) = - lu(k,828) * lu(k,1423) + lu(k,1428) = - lu(k,829) * lu(k,1423) + lu(k,1429) = lu(k,1429) - lu(k,830) * lu(k,1423) + lu(k,1430) = lu(k,1430) - lu(k,831) * lu(k,1423) + lu(k,1433) = lu(k,1433) - lu(k,832) * lu(k,1423) + lu(k,1434) = lu(k,1434) - lu(k,833) * lu(k,1423) + lu(k,1435) = lu(k,1435) - lu(k,834) * lu(k,1423) + lu(k,1440) = lu(k,1440) - lu(k,835) * lu(k,1423) + lu(k,1441) = lu(k,1441) - lu(k,836) * lu(k,1423) + lu(k,1443) = lu(k,1443) - lu(k,837) * lu(k,1423) + lu(k,1469) = lu(k,1469) - lu(k,827) * lu(k,1467) + lu(k,1472) = - lu(k,828) * lu(k,1467) + lu(k,1473) = - lu(k,829) * lu(k,1467) + lu(k,1474) = lu(k,1474) - lu(k,830) * lu(k,1467) + lu(k,1475) = lu(k,1475) - lu(k,831) * lu(k,1467) + lu(k,1478) = lu(k,1478) - lu(k,832) * lu(k,1467) + lu(k,1479) = lu(k,1479) - lu(k,833) * lu(k,1467) + lu(k,1480) = lu(k,1480) - lu(k,834) * lu(k,1467) + lu(k,1485) = lu(k,1485) - lu(k,835) * lu(k,1467) + lu(k,1486) = lu(k,1486) - lu(k,836) * lu(k,1467) + lu(k,1488) = lu(k,1488) - lu(k,837) * lu(k,1467) + lu(k,1492) = - lu(k,827) * lu(k,1491) + lu(k,1495) = lu(k,1495) - lu(k,828) * lu(k,1491) + lu(k,1496) = lu(k,1496) - lu(k,829) * lu(k,1491) + lu(k,1497) = lu(k,1497) - lu(k,830) * lu(k,1491) + lu(k,1498) = lu(k,1498) - lu(k,831) * lu(k,1491) + lu(k,1501) = - lu(k,832) * lu(k,1491) + lu(k,1502) = lu(k,1502) - lu(k,833) * lu(k,1491) + lu(k,1503) = - lu(k,834) * lu(k,1491) + lu(k,1508) = - lu(k,835) * lu(k,1491) + lu(k,1509) = lu(k,1509) - lu(k,836) * lu(k,1491) + lu(k,1511) = lu(k,1511) - lu(k,837) * lu(k,1491) lu(k,1565) = - lu(k,827) * lu(k,1563) - lu(k,1574) = lu(k,1574) - lu(k,828) * lu(k,1563) - lu(k,1575) = lu(k,1575) - lu(k,829) * lu(k,1563) - lu(k,1576) = lu(k,1576) - lu(k,830) * lu(k,1563) - lu(k,1577) = lu(k,1577) - lu(k,831) * lu(k,1563) - lu(k,1578) = - lu(k,832) * lu(k,1563) - lu(k,1579) = lu(k,1579) - lu(k,833) * lu(k,1563) - lu(k,1580) = lu(k,1580) - lu(k,834) * lu(k,1563) - lu(k,1582) = lu(k,1582) - lu(k,835) * lu(k,1563) - lu(k,1583) = lu(k,1583) - lu(k,836) * lu(k,1563) + lu(k,1568) = lu(k,1568) - lu(k,828) * lu(k,1563) + lu(k,1569) = lu(k,1569) - lu(k,829) * lu(k,1563) + lu(k,1570) = lu(k,1570) - lu(k,830) * lu(k,1563) + lu(k,1571) = lu(k,1571) - lu(k,831) * lu(k,1563) + lu(k,1574) = lu(k,1574) - lu(k,832) * lu(k,1563) + lu(k,1575) = lu(k,1575) - lu(k,833) * lu(k,1563) + lu(k,1576) = - lu(k,834) * lu(k,1563) + lu(k,1581) = lu(k,1581) - lu(k,835) * lu(k,1563) + lu(k,1582) = lu(k,1582) - lu(k,836) * lu(k,1563) lu(k,1584) = lu(k,1584) - lu(k,837) * lu(k,1563) lu(k,841) = 1._r8 / lu(k,841) lu(k,842) = lu(k,842) * lu(k,841) @@ -4055,120 +4054,120 @@ subroutine lu_fac17( avec_len, lu ) lu(k,854) = lu(k,854) * lu(k,841) lu(k,908) = - lu(k,842) * lu(k,907) lu(k,909) = lu(k,909) - lu(k,843) * lu(k,907) - lu(k,910) = - lu(k,844) * lu(k,907) - lu(k,911) = - lu(k,845) * lu(k,907) + lu(k,910) = lu(k,910) - lu(k,844) * lu(k,907) + lu(k,911) = lu(k,911) - lu(k,845) * lu(k,907) lu(k,912) = lu(k,912) - lu(k,846) * lu(k,907) lu(k,914) = lu(k,914) - lu(k,847) * lu(k,907) - lu(k,915) = lu(k,915) - lu(k,848) * lu(k,907) - lu(k,917) = - lu(k,849) * lu(k,907) - lu(k,918) = lu(k,918) - lu(k,850) * lu(k,907) - lu(k,919) = lu(k,919) - lu(k,851) * lu(k,907) + lu(k,915) = - lu(k,848) * lu(k,907) + lu(k,916) = - lu(k,849) * lu(k,907) + lu(k,917) = - lu(k,850) * lu(k,907) + lu(k,918) = lu(k,918) - lu(k,851) * lu(k,907) lu(k,920) = lu(k,920) - lu(k,852) * lu(k,907) lu(k,921) = lu(k,921) - lu(k,853) * lu(k,907) lu(k,922) = lu(k,922) - lu(k,854) * lu(k,907) - lu(k,930) = lu(k,930) - lu(k,842) * lu(k,928) - lu(k,931) = lu(k,931) - lu(k,843) * lu(k,928) - lu(k,932) = lu(k,932) - lu(k,844) * lu(k,928) - lu(k,933) = lu(k,933) - lu(k,845) * lu(k,928) - lu(k,934) = lu(k,934) - lu(k,846) * lu(k,928) - lu(k,936) = lu(k,936) - lu(k,847) * lu(k,928) - lu(k,937) = - lu(k,848) * lu(k,928) - lu(k,941) = lu(k,941) - lu(k,849) * lu(k,928) - lu(k,942) = lu(k,942) - lu(k,850) * lu(k,928) - lu(k,943) = lu(k,943) - lu(k,851) * lu(k,928) - lu(k,944) = lu(k,944) - lu(k,852) * lu(k,928) - lu(k,945) = - lu(k,853) * lu(k,928) - lu(k,946) = lu(k,946) - lu(k,854) * lu(k,928) - lu(k,956) = lu(k,956) - lu(k,842) * lu(k,954) - lu(k,957) = lu(k,957) - lu(k,843) * lu(k,954) - lu(k,958) = lu(k,958) - lu(k,844) * lu(k,954) - lu(k,959) = lu(k,959) - lu(k,845) * lu(k,954) - lu(k,960) = lu(k,960) - lu(k,846) * lu(k,954) - lu(k,962) = lu(k,962) - lu(k,847) * lu(k,954) - lu(k,963) = - lu(k,848) * lu(k,954) - lu(k,968) = lu(k,968) - lu(k,849) * lu(k,954) - lu(k,969) = lu(k,969) - lu(k,850) * lu(k,954) - lu(k,970) = lu(k,970) - lu(k,851) * lu(k,954) - lu(k,971) = lu(k,971) - lu(k,852) * lu(k,954) - lu(k,972) = - lu(k,853) * lu(k,954) - lu(k,973) = lu(k,973) - lu(k,854) * lu(k,954) - lu(k,992) = lu(k,992) - lu(k,842) * lu(k,990) - lu(k,993) = lu(k,993) - lu(k,843) * lu(k,990) - lu(k,994) = lu(k,994) - lu(k,844) * lu(k,990) - lu(k,995) = lu(k,995) - lu(k,845) * lu(k,990) - lu(k,996) = lu(k,996) - lu(k,846) * lu(k,990) - lu(k,998) = lu(k,998) - lu(k,847) * lu(k,990) - lu(k,999) = lu(k,999) - lu(k,848) * lu(k,990) - lu(k,1004) = lu(k,1004) - lu(k,849) * lu(k,990) - lu(k,1005) = lu(k,1005) - lu(k,850) * lu(k,990) - lu(k,1006) = lu(k,1006) - lu(k,851) * lu(k,990) - lu(k,1007) = lu(k,1007) - lu(k,852) * lu(k,990) - lu(k,1009) = lu(k,1009) - lu(k,853) * lu(k,990) - lu(k,1010) = lu(k,1010) - lu(k,854) * lu(k,990) - lu(k,1121) = lu(k,1121) - lu(k,842) * lu(k,1120) - lu(k,1122) = lu(k,1122) - lu(k,843) * lu(k,1120) - lu(k,1123) = lu(k,1123) - lu(k,844) * lu(k,1120) - lu(k,1124) = lu(k,1124) - lu(k,845) * lu(k,1120) - lu(k,1125) = lu(k,1125) - lu(k,846) * lu(k,1120) - lu(k,1127) = lu(k,1127) - lu(k,847) * lu(k,1120) - lu(k,1128) = lu(k,1128) - lu(k,848) * lu(k,1120) - lu(k,1133) = lu(k,1133) - lu(k,849) * lu(k,1120) - lu(k,1134) = lu(k,1134) - lu(k,850) * lu(k,1120) - lu(k,1135) = lu(k,1135) - lu(k,851) * lu(k,1120) - lu(k,1136) = lu(k,1136) - lu(k,852) * lu(k,1120) - lu(k,1138) = lu(k,1138) - lu(k,853) * lu(k,1120) - lu(k,1139) = lu(k,1139) - lu(k,854) * lu(k,1120) - lu(k,1231) = - lu(k,842) * lu(k,1230) - lu(k,1232) = lu(k,1232) - lu(k,843) * lu(k,1230) - lu(k,1233) = - lu(k,844) * lu(k,1230) - lu(k,1234) = - lu(k,845) * lu(k,1230) - lu(k,1235) = lu(k,1235) - lu(k,846) * lu(k,1230) - lu(k,1237) = lu(k,1237) - lu(k,847) * lu(k,1230) - lu(k,1238) = lu(k,1238) - lu(k,848) * lu(k,1230) - lu(k,1243) = - lu(k,849) * lu(k,1230) - lu(k,1244) = lu(k,1244) - lu(k,850) * lu(k,1230) - lu(k,1245) = lu(k,1245) - lu(k,851) * lu(k,1230) - lu(k,1246) = lu(k,1246) - lu(k,852) * lu(k,1230) - lu(k,1248) = lu(k,1248) - lu(k,853) * lu(k,1230) - lu(k,1249) = lu(k,1249) - lu(k,854) * lu(k,1230) - lu(k,1400) = lu(k,1400) - lu(k,842) * lu(k,1398) - lu(k,1401) = lu(k,1401) - lu(k,843) * lu(k,1398) - lu(k,1402) = lu(k,1402) - lu(k,844) * lu(k,1398) - lu(k,1403) = lu(k,1403) - lu(k,845) * lu(k,1398) - lu(k,1404) = lu(k,1404) - lu(k,846) * lu(k,1398) - lu(k,1406) = lu(k,1406) - lu(k,847) * lu(k,1398) - lu(k,1407) = lu(k,1407) - lu(k,848) * lu(k,1398) - lu(k,1412) = lu(k,1412) - lu(k,849) * lu(k,1398) - lu(k,1413) = lu(k,1413) - lu(k,850) * lu(k,1398) - lu(k,1414) = lu(k,1414) - lu(k,851) * lu(k,1398) - lu(k,1415) = lu(k,1415) - lu(k,852) * lu(k,1398) - lu(k,1417) = lu(k,1417) - lu(k,853) * lu(k,1398) - lu(k,1418) = lu(k,1418) - lu(k,854) * lu(k,1398) - lu(k,1445) = lu(k,1445) - lu(k,842) * lu(k,1443) - lu(k,1446) = lu(k,1446) - lu(k,843) * lu(k,1443) - lu(k,1447) = lu(k,1447) - lu(k,844) * lu(k,1443) - lu(k,1448) = lu(k,1448) - lu(k,845) * lu(k,1443) - lu(k,1449) = lu(k,1449) - lu(k,846) * lu(k,1443) - lu(k,1451) = lu(k,1451) - lu(k,847) * lu(k,1443) - lu(k,1452) = lu(k,1452) - lu(k,848) * lu(k,1443) - lu(k,1457) = lu(k,1457) - lu(k,849) * lu(k,1443) - lu(k,1458) = lu(k,1458) - lu(k,850) * lu(k,1443) - lu(k,1459) = lu(k,1459) - lu(k,851) * lu(k,1443) - lu(k,1460) = lu(k,1460) - lu(k,852) * lu(k,1443) - lu(k,1462) = lu(k,1462) - lu(k,853) * lu(k,1443) - lu(k,1463) = lu(k,1463) - lu(k,854) * lu(k,1443) + lu(k,1016) = - lu(k,842) * lu(k,1015) + lu(k,1017) = lu(k,1017) - lu(k,843) * lu(k,1015) + lu(k,1021) = lu(k,1021) - lu(k,844) * lu(k,1015) + lu(k,1022) = lu(k,1022) - lu(k,845) * lu(k,1015) + lu(k,1023) = lu(k,1023) - lu(k,846) * lu(k,1015) + lu(k,1025) = lu(k,1025) - lu(k,847) * lu(k,1015) + lu(k,1026) = - lu(k,848) * lu(k,1015) + lu(k,1027) = - lu(k,849) * lu(k,1015) + lu(k,1028) = - lu(k,850) * lu(k,1015) + lu(k,1029) = lu(k,1029) - lu(k,851) * lu(k,1015) + lu(k,1031) = lu(k,1031) - lu(k,852) * lu(k,1015) + lu(k,1033) = lu(k,1033) - lu(k,853) * lu(k,1015) + lu(k,1034) = lu(k,1034) - lu(k,854) * lu(k,1015) + lu(k,1074) = lu(k,1074) - lu(k,842) * lu(k,1072) + lu(k,1075) = lu(k,1075) - lu(k,843) * lu(k,1072) + lu(k,1079) = lu(k,1079) - lu(k,844) * lu(k,1072) + lu(k,1080) = lu(k,1080) - lu(k,845) * lu(k,1072) + lu(k,1081) = lu(k,1081) - lu(k,846) * lu(k,1072) + lu(k,1083) = lu(k,1083) - lu(k,847) * lu(k,1072) + lu(k,1084) = lu(k,1084) - lu(k,848) * lu(k,1072) + lu(k,1085) = lu(k,1085) - lu(k,849) * lu(k,1072) + lu(k,1086) = lu(k,1086) - lu(k,850) * lu(k,1072) + lu(k,1087) = lu(k,1087) - lu(k,851) * lu(k,1072) + lu(k,1089) = lu(k,1089) - lu(k,852) * lu(k,1072) + lu(k,1091) = lu(k,1091) - lu(k,853) * lu(k,1072) + lu(k,1092) = lu(k,1092) - lu(k,854) * lu(k,1072) + lu(k,1253) = lu(k,1253) - lu(k,842) * lu(k,1251) + lu(k,1254) = lu(k,1254) - lu(k,843) * lu(k,1251) + lu(k,1258) = lu(k,1258) - lu(k,844) * lu(k,1251) + lu(k,1259) = lu(k,1259) - lu(k,845) * lu(k,1251) + lu(k,1260) = lu(k,1260) - lu(k,846) * lu(k,1251) + lu(k,1262) = lu(k,1262) - lu(k,847) * lu(k,1251) + lu(k,1263) = lu(k,1263) - lu(k,848) * lu(k,1251) + lu(k,1264) = lu(k,1264) - lu(k,849) * lu(k,1251) + lu(k,1265) = lu(k,1265) - lu(k,850) * lu(k,1251) + lu(k,1266) = lu(k,1266) - lu(k,851) * lu(k,1251) + lu(k,1268) = lu(k,1268) - lu(k,852) * lu(k,1251) + lu(k,1270) = lu(k,1270) - lu(k,853) * lu(k,1251) + lu(k,1271) = lu(k,1271) - lu(k,854) * lu(k,1251) + lu(k,1319) = lu(k,1319) - lu(k,842) * lu(k,1317) + lu(k,1320) = lu(k,1320) - lu(k,843) * lu(k,1317) + lu(k,1323) = - lu(k,844) * lu(k,1317) + lu(k,1324) = lu(k,1324) - lu(k,845) * lu(k,1317) + lu(k,1325) = lu(k,1325) - lu(k,846) * lu(k,1317) + lu(k,1327) = lu(k,1327) - lu(k,847) * lu(k,1317) + lu(k,1328) = lu(k,1328) - lu(k,848) * lu(k,1317) + lu(k,1329) = lu(k,1329) - lu(k,849) * lu(k,1317) + lu(k,1330) = lu(k,1330) - lu(k,850) * lu(k,1317) + lu(k,1331) = lu(k,1331) - lu(k,851) * lu(k,1317) + lu(k,1333) = lu(k,1333) - lu(k,852) * lu(k,1317) + lu(k,1335) = - lu(k,853) * lu(k,1317) + lu(k,1336) = lu(k,1336) - lu(k,854) * lu(k,1317) + lu(k,1344) = lu(k,1344) - lu(k,842) * lu(k,1342) + lu(k,1345) = lu(k,1345) - lu(k,843) * lu(k,1342) + lu(k,1347) = - lu(k,844) * lu(k,1342) + lu(k,1348) = lu(k,1348) - lu(k,845) * lu(k,1342) + lu(k,1349) = lu(k,1349) - lu(k,846) * lu(k,1342) + lu(k,1351) = lu(k,1351) - lu(k,847) * lu(k,1342) + lu(k,1352) = lu(k,1352) - lu(k,848) * lu(k,1342) + lu(k,1353) = lu(k,1353) - lu(k,849) * lu(k,1342) + lu(k,1354) = lu(k,1354) - lu(k,850) * lu(k,1342) + lu(k,1355) = lu(k,1355) - lu(k,851) * lu(k,1342) + lu(k,1357) = lu(k,1357) - lu(k,852) * lu(k,1342) + lu(k,1359) = - lu(k,853) * lu(k,1342) + lu(k,1360) = lu(k,1360) - lu(k,854) * lu(k,1342) + lu(k,1470) = lu(k,1470) - lu(k,842) * lu(k,1468) + lu(k,1471) = lu(k,1471) - lu(k,843) * lu(k,1468) + lu(k,1475) = lu(k,1475) - lu(k,844) * lu(k,1468) + lu(k,1476) = lu(k,1476) - lu(k,845) * lu(k,1468) + lu(k,1477) = lu(k,1477) - lu(k,846) * lu(k,1468) + lu(k,1479) = lu(k,1479) - lu(k,847) * lu(k,1468) + lu(k,1480) = lu(k,1480) - lu(k,848) * lu(k,1468) + lu(k,1481) = lu(k,1481) - lu(k,849) * lu(k,1468) + lu(k,1482) = lu(k,1482) - lu(k,850) * lu(k,1468) + lu(k,1483) = lu(k,1483) - lu(k,851) * lu(k,1468) + lu(k,1485) = lu(k,1485) - lu(k,852) * lu(k,1468) + lu(k,1487) = lu(k,1487) - lu(k,853) * lu(k,1468) + lu(k,1488) = lu(k,1488) - lu(k,854) * lu(k,1468) + lu(k,1539) = lu(k,1539) - lu(k,842) * lu(k,1538) + lu(k,1540) = lu(k,1540) - lu(k,843) * lu(k,1538) + lu(k,1544) = lu(k,1544) - lu(k,844) * lu(k,1538) + lu(k,1545) = lu(k,1545) - lu(k,845) * lu(k,1538) + lu(k,1546) = lu(k,1546) - lu(k,846) * lu(k,1538) + lu(k,1548) = lu(k,1548) - lu(k,847) * lu(k,1538) + lu(k,1549) = lu(k,1549) - lu(k,848) * lu(k,1538) + lu(k,1550) = lu(k,1550) - lu(k,849) * lu(k,1538) + lu(k,1551) = lu(k,1551) - lu(k,850) * lu(k,1538) + lu(k,1552) = lu(k,1552) - lu(k,851) * lu(k,1538) + lu(k,1554) = lu(k,1554) - lu(k,852) * lu(k,1538) + lu(k,1556) = lu(k,1556) - lu(k,853) * lu(k,1538) + lu(k,1557) = lu(k,1557) - lu(k,854) * lu(k,1538) lu(k,1566) = - lu(k,842) * lu(k,1564) lu(k,1567) = - lu(k,843) * lu(k,1564) - lu(k,1568) = - lu(k,844) * lu(k,1564) - lu(k,1569) = - lu(k,845) * lu(k,1564) - lu(k,1570) = - lu(k,846) * lu(k,1564) - lu(k,1572) = lu(k,1572) - lu(k,847) * lu(k,1564) - lu(k,1573) = - lu(k,848) * lu(k,1564) - lu(k,1578) = lu(k,1578) - lu(k,849) * lu(k,1564) - lu(k,1579) = lu(k,1579) - lu(k,850) * lu(k,1564) - lu(k,1580) = lu(k,1580) - lu(k,851) * lu(k,1564) - lu(k,1581) = - lu(k,852) * lu(k,1564) - lu(k,1583) = lu(k,1583) - lu(k,853) * lu(k,1564) + lu(k,1571) = lu(k,1571) - lu(k,844) * lu(k,1564) + lu(k,1572) = - lu(k,845) * lu(k,1564) + lu(k,1573) = - lu(k,846) * lu(k,1564) + lu(k,1575) = lu(k,1575) - lu(k,847) * lu(k,1564) + lu(k,1576) = lu(k,1576) - lu(k,848) * lu(k,1564) + lu(k,1577) = - lu(k,849) * lu(k,1564) + lu(k,1578) = - lu(k,850) * lu(k,1564) + lu(k,1579) = lu(k,1579) - lu(k,851) * lu(k,1564) + lu(k,1581) = lu(k,1581) - lu(k,852) * lu(k,1564) + lu(k,1583) = - lu(k,853) * lu(k,1564) lu(k,1584) = lu(k,1584) - lu(k,854) * lu(k,1564) end do end subroutine lu_fac17 @@ -4199,161 +4198,161 @@ subroutine lu_fac18( avec_len, lu ) lu(k,870) = lu(k,870) * lu(k,860) lu(k,871) = lu(k,871) * lu(k,860) lu(k,872) = lu(k,872) * lu(k,860) - lu(k,930) = lu(k,930) - lu(k,861) * lu(k,929) - lu(k,932) = lu(k,932) - lu(k,862) * lu(k,929) - lu(k,933) = lu(k,933) - lu(k,863) * lu(k,929) - lu(k,934) = lu(k,934) - lu(k,864) * lu(k,929) - lu(k,938) = lu(k,938) - lu(k,865) * lu(k,929) - lu(k,939) = lu(k,939) - lu(k,866) * lu(k,929) - lu(k,940) = - lu(k,867) * lu(k,929) - lu(k,941) = lu(k,941) - lu(k,868) * lu(k,929) - lu(k,942) = lu(k,942) - lu(k,869) * lu(k,929) - lu(k,943) = lu(k,943) - lu(k,870) * lu(k,929) - lu(k,945) = lu(k,945) - lu(k,871) * lu(k,929) - lu(k,946) = lu(k,946) - lu(k,872) * lu(k,929) - lu(k,956) = lu(k,956) - lu(k,861) * lu(k,955) - lu(k,958) = lu(k,958) - lu(k,862) * lu(k,955) - lu(k,959) = lu(k,959) - lu(k,863) * lu(k,955) - lu(k,960) = lu(k,960) - lu(k,864) * lu(k,955) - lu(k,964) = lu(k,964) - lu(k,865) * lu(k,955) - lu(k,966) = lu(k,966) - lu(k,866) * lu(k,955) - lu(k,967) = - lu(k,867) * lu(k,955) - lu(k,968) = lu(k,968) - lu(k,868) * lu(k,955) - lu(k,969) = lu(k,969) - lu(k,869) * lu(k,955) - lu(k,970) = lu(k,970) - lu(k,870) * lu(k,955) - lu(k,972) = lu(k,972) - lu(k,871) * lu(k,955) - lu(k,973) = lu(k,973) - lu(k,872) * lu(k,955) - lu(k,992) = lu(k,992) - lu(k,861) * lu(k,991) - lu(k,994) = lu(k,994) - lu(k,862) * lu(k,991) - lu(k,995) = lu(k,995) - lu(k,863) * lu(k,991) - lu(k,996) = lu(k,996) - lu(k,864) * lu(k,991) - lu(k,1000) = lu(k,1000) - lu(k,865) * lu(k,991) - lu(k,1002) = lu(k,1002) - lu(k,866) * lu(k,991) - lu(k,1003) = lu(k,1003) - lu(k,867) * lu(k,991) - lu(k,1004) = lu(k,1004) - lu(k,868) * lu(k,991) - lu(k,1005) = lu(k,1005) - lu(k,869) * lu(k,991) - lu(k,1006) = lu(k,1006) - lu(k,870) * lu(k,991) - lu(k,1009) = lu(k,1009) - lu(k,871) * lu(k,991) - lu(k,1010) = lu(k,1010) - lu(k,872) * lu(k,991) - lu(k,1016) = lu(k,1016) - lu(k,861) * lu(k,1015) - lu(k,1018) = lu(k,1018) - lu(k,862) * lu(k,1015) - lu(k,1019) = - lu(k,863) * lu(k,1015) - lu(k,1020) = lu(k,1020) - lu(k,864) * lu(k,1015) - lu(k,1024) = lu(k,1024) - lu(k,865) * lu(k,1015) - lu(k,1026) = lu(k,1026) - lu(k,866) * lu(k,1015) - lu(k,1027) = lu(k,1027) - lu(k,867) * lu(k,1015) - lu(k,1028) = lu(k,1028) - lu(k,868) * lu(k,1015) - lu(k,1029) = lu(k,1029) - lu(k,869) * lu(k,1015) - lu(k,1030) = lu(k,1030) - lu(k,870) * lu(k,1015) - lu(k,1033) = lu(k,1033) - lu(k,871) * lu(k,1015) - lu(k,1034) = lu(k,1034) - lu(k,872) * lu(k,1015) - lu(k,1075) = lu(k,1075) - lu(k,861) * lu(k,1074) - lu(k,1077) = lu(k,1077) - lu(k,862) * lu(k,1074) - lu(k,1078) = lu(k,1078) - lu(k,863) * lu(k,1074) - lu(k,1079) = lu(k,1079) - lu(k,864) * lu(k,1074) - lu(k,1083) = lu(k,1083) - lu(k,865) * lu(k,1074) - lu(k,1085) = lu(k,1085) - lu(k,866) * lu(k,1074) - lu(k,1086) = lu(k,1086) - lu(k,867) * lu(k,1074) - lu(k,1087) = lu(k,1087) - lu(k,868) * lu(k,1074) - lu(k,1088) = lu(k,1088) - lu(k,869) * lu(k,1074) - lu(k,1089) = lu(k,1089) - lu(k,870) * lu(k,1074) - lu(k,1092) = lu(k,1092) - lu(k,871) * lu(k,1074) - lu(k,1093) = lu(k,1093) - lu(k,872) * lu(k,1074) - lu(k,1144) = - lu(k,861) * lu(k,1143) - lu(k,1146) = - lu(k,862) * lu(k,1143) - lu(k,1147) = - lu(k,863) * lu(k,1143) - lu(k,1148) = lu(k,1148) - lu(k,864) * lu(k,1143) - lu(k,1152) = lu(k,1152) - lu(k,865) * lu(k,1143) - lu(k,1154) = lu(k,1154) - lu(k,866) * lu(k,1143) - lu(k,1155) = lu(k,1155) - lu(k,867) * lu(k,1143) - lu(k,1156) = lu(k,1156) - lu(k,868) * lu(k,1143) - lu(k,1157) = lu(k,1157) - lu(k,869) * lu(k,1143) - lu(k,1158) = lu(k,1158) - lu(k,870) * lu(k,1143) - lu(k,1161) = lu(k,1161) - lu(k,871) * lu(k,1143) - lu(k,1162) = lu(k,1162) - lu(k,872) * lu(k,1143) - lu(k,1273) = lu(k,1273) - lu(k,861) * lu(k,1272) - lu(k,1275) = lu(k,1275) - lu(k,862) * lu(k,1272) - lu(k,1276) = lu(k,1276) - lu(k,863) * lu(k,1272) - lu(k,1277) = - lu(k,864) * lu(k,1272) - lu(k,1281) = lu(k,1281) - lu(k,865) * lu(k,1272) - lu(k,1283) = lu(k,1283) - lu(k,866) * lu(k,1272) - lu(k,1284) = lu(k,1284) - lu(k,867) * lu(k,1272) - lu(k,1285) = lu(k,1285) - lu(k,868) * lu(k,1272) - lu(k,1286) = lu(k,1286) - lu(k,869) * lu(k,1272) - lu(k,1287) = lu(k,1287) - lu(k,870) * lu(k,1272) - lu(k,1290) = lu(k,1290) - lu(k,871) * lu(k,1272) - lu(k,1291) = lu(k,1291) - lu(k,872) * lu(k,1272) - lu(k,1311) = lu(k,1311) - lu(k,861) * lu(k,1310) - lu(k,1313) = - lu(k,862) * lu(k,1310) - lu(k,1314) = lu(k,1314) - lu(k,863) * lu(k,1310) - lu(k,1315) = lu(k,1315) - lu(k,864) * lu(k,1310) - lu(k,1319) = lu(k,1319) - lu(k,865) * lu(k,1310) - lu(k,1321) = lu(k,1321) - lu(k,866) * lu(k,1310) - lu(k,1322) = lu(k,1322) - lu(k,867) * lu(k,1310) - lu(k,1323) = lu(k,1323) - lu(k,868) * lu(k,1310) - lu(k,1324) = lu(k,1324) - lu(k,869) * lu(k,1310) - lu(k,1325) = lu(k,1325) - lu(k,870) * lu(k,1310) - lu(k,1328) = lu(k,1328) - lu(k,871) * lu(k,1310) - lu(k,1329) = lu(k,1329) - lu(k,872) * lu(k,1310) - lu(k,1400) = lu(k,1400) - lu(k,861) * lu(k,1399) - lu(k,1402) = lu(k,1402) - lu(k,862) * lu(k,1399) - lu(k,1403) = lu(k,1403) - lu(k,863) * lu(k,1399) - lu(k,1404) = lu(k,1404) - lu(k,864) * lu(k,1399) - lu(k,1408) = lu(k,1408) - lu(k,865) * lu(k,1399) - lu(k,1410) = lu(k,1410) - lu(k,866) * lu(k,1399) - lu(k,1411) = lu(k,1411) - lu(k,867) * lu(k,1399) - lu(k,1412) = lu(k,1412) - lu(k,868) * lu(k,1399) - lu(k,1413) = lu(k,1413) - lu(k,869) * lu(k,1399) - lu(k,1414) = lu(k,1414) - lu(k,870) * lu(k,1399) - lu(k,1417) = lu(k,1417) - lu(k,871) * lu(k,1399) - lu(k,1418) = lu(k,1418) - lu(k,872) * lu(k,1399) - lu(k,1445) = lu(k,1445) - lu(k,861) * lu(k,1444) - lu(k,1447) = lu(k,1447) - lu(k,862) * lu(k,1444) - lu(k,1448) = lu(k,1448) - lu(k,863) * lu(k,1444) - lu(k,1449) = lu(k,1449) - lu(k,864) * lu(k,1444) - lu(k,1453) = lu(k,1453) - lu(k,865) * lu(k,1444) - lu(k,1455) = lu(k,1455) - lu(k,866) * lu(k,1444) - lu(k,1456) = lu(k,1456) - lu(k,867) * lu(k,1444) - lu(k,1457) = lu(k,1457) - lu(k,868) * lu(k,1444) - lu(k,1458) = lu(k,1458) - lu(k,869) * lu(k,1444) - lu(k,1459) = lu(k,1459) - lu(k,870) * lu(k,1444) - lu(k,1462) = lu(k,1462) - lu(k,871) * lu(k,1444) - lu(k,1463) = lu(k,1463) - lu(k,872) * lu(k,1444) - lu(k,1518) = - lu(k,861) * lu(k,1517) - lu(k,1520) = - lu(k,862) * lu(k,1517) - lu(k,1521) = - lu(k,863) * lu(k,1517) - lu(k,1522) = lu(k,1522) - lu(k,864) * lu(k,1517) - lu(k,1526) = lu(k,1526) - lu(k,865) * lu(k,1517) - lu(k,1528) = lu(k,1528) - lu(k,866) * lu(k,1517) - lu(k,1529) = lu(k,1529) - lu(k,867) * lu(k,1517) - lu(k,1530) = lu(k,1530) - lu(k,868) * lu(k,1517) - lu(k,1531) = lu(k,1531) - lu(k,869) * lu(k,1517) - lu(k,1532) = lu(k,1532) - lu(k,870) * lu(k,1517) - lu(k,1535) = lu(k,1535) - lu(k,871) * lu(k,1517) - lu(k,1536) = lu(k,1536) - lu(k,872) * lu(k,1517) - lu(k,1539) = - lu(k,861) * lu(k,1538) - lu(k,1541) = - lu(k,862) * lu(k,1538) - lu(k,1542) = - lu(k,863) * lu(k,1538) - lu(k,1543) = - lu(k,864) * lu(k,1538) - lu(k,1547) = lu(k,1547) - lu(k,865) * lu(k,1538) - lu(k,1549) = lu(k,1549) - lu(k,866) * lu(k,1538) - lu(k,1550) = lu(k,1550) - lu(k,867) * lu(k,1538) - lu(k,1551) = lu(k,1551) - lu(k,868) * lu(k,1538) - lu(k,1552) = lu(k,1552) - lu(k,869) * lu(k,1538) - lu(k,1553) = lu(k,1553) - lu(k,870) * lu(k,1538) - lu(k,1556) = lu(k,1556) - lu(k,871) * lu(k,1538) - lu(k,1557) = lu(k,1557) - lu(k,872) * lu(k,1538) + lu(k,929) = - lu(k,861) * lu(k,928) + lu(k,933) = lu(k,933) - lu(k,862) * lu(k,928) + lu(k,934) = lu(k,934) - lu(k,863) * lu(k,928) + lu(k,935) = lu(k,935) - lu(k,864) * lu(k,928) + lu(k,937) = lu(k,937) - lu(k,865) * lu(k,928) + lu(k,938) = lu(k,938) - lu(k,866) * lu(k,928) + lu(k,939) = lu(k,939) - lu(k,867) * lu(k,928) + lu(k,940) = - lu(k,868) * lu(k,928) + lu(k,941) = - lu(k,869) * lu(k,928) + lu(k,944) = lu(k,944) - lu(k,870) * lu(k,928) + lu(k,945) = lu(k,945) - lu(k,871) * lu(k,928) + lu(k,947) = lu(k,947) - lu(k,872) * lu(k,928) + lu(k,1037) = - lu(k,861) * lu(k,1036) + lu(k,1041) = lu(k,1041) - lu(k,862) * lu(k,1036) + lu(k,1042) = lu(k,1042) - lu(k,863) * lu(k,1036) + lu(k,1043) = - lu(k,864) * lu(k,1036) + lu(k,1045) = lu(k,1045) - lu(k,865) * lu(k,1036) + lu(k,1046) = lu(k,1046) - lu(k,866) * lu(k,1036) + lu(k,1047) = lu(k,1047) - lu(k,867) * lu(k,1036) + lu(k,1048) = - lu(k,868) * lu(k,1036) + lu(k,1049) = - lu(k,869) * lu(k,1036) + lu(k,1052) = lu(k,1052) - lu(k,870) * lu(k,1036) + lu(k,1053) = lu(k,1053) - lu(k,871) * lu(k,1036) + lu(k,1055) = lu(k,1055) - lu(k,872) * lu(k,1036) + lu(k,1074) = lu(k,1074) - lu(k,861) * lu(k,1073) + lu(k,1078) = lu(k,1078) - lu(k,862) * lu(k,1073) + lu(k,1079) = lu(k,1079) - lu(k,863) * lu(k,1073) + lu(k,1080) = lu(k,1080) - lu(k,864) * lu(k,1073) + lu(k,1082) = lu(k,1082) - lu(k,865) * lu(k,1073) + lu(k,1083) = lu(k,1083) - lu(k,866) * lu(k,1073) + lu(k,1084) = lu(k,1084) - lu(k,867) * lu(k,1073) + lu(k,1085) = lu(k,1085) - lu(k,868) * lu(k,1073) + lu(k,1086) = lu(k,1086) - lu(k,869) * lu(k,1073) + lu(k,1089) = lu(k,1089) - lu(k,870) * lu(k,1073) + lu(k,1090) = lu(k,1090) - lu(k,871) * lu(k,1073) + lu(k,1092) = lu(k,1092) - lu(k,872) * lu(k,1073) + lu(k,1164) = lu(k,1164) - lu(k,861) * lu(k,1163) + lu(k,1168) = lu(k,1168) - lu(k,862) * lu(k,1163) + lu(k,1169) = lu(k,1169) - lu(k,863) * lu(k,1163) + lu(k,1170) = - lu(k,864) * lu(k,1163) + lu(k,1172) = lu(k,1172) - lu(k,865) * lu(k,1163) + lu(k,1173) = lu(k,1173) - lu(k,866) * lu(k,1163) + lu(k,1174) = lu(k,1174) - lu(k,867) * lu(k,1163) + lu(k,1175) = lu(k,1175) - lu(k,868) * lu(k,1163) + lu(k,1176) = lu(k,1176) - lu(k,869) * lu(k,1163) + lu(k,1179) = lu(k,1179) - lu(k,870) * lu(k,1163) + lu(k,1180) = lu(k,1180) - lu(k,871) * lu(k,1163) + lu(k,1182) = lu(k,1182) - lu(k,872) * lu(k,1163) + lu(k,1253) = lu(k,1253) - lu(k,861) * lu(k,1252) + lu(k,1257) = lu(k,1257) - lu(k,862) * lu(k,1252) + lu(k,1258) = lu(k,1258) - lu(k,863) * lu(k,1252) + lu(k,1259) = lu(k,1259) - lu(k,864) * lu(k,1252) + lu(k,1261) = lu(k,1261) - lu(k,865) * lu(k,1252) + lu(k,1262) = lu(k,1262) - lu(k,866) * lu(k,1252) + lu(k,1263) = lu(k,1263) - lu(k,867) * lu(k,1252) + lu(k,1264) = lu(k,1264) - lu(k,868) * lu(k,1252) + lu(k,1265) = lu(k,1265) - lu(k,869) * lu(k,1252) + lu(k,1268) = lu(k,1268) - lu(k,870) * lu(k,1252) + lu(k,1269) = lu(k,1269) - lu(k,871) * lu(k,1252) + lu(k,1271) = lu(k,1271) - lu(k,872) * lu(k,1252) + lu(k,1291) = lu(k,1291) - lu(k,861) * lu(k,1290) + lu(k,1295) = lu(k,1295) - lu(k,862) * lu(k,1290) + lu(k,1296) = lu(k,1296) - lu(k,863) * lu(k,1290) + lu(k,1297) = lu(k,1297) - lu(k,864) * lu(k,1290) + lu(k,1299) = lu(k,1299) - lu(k,865) * lu(k,1290) + lu(k,1300) = lu(k,1300) - lu(k,866) * lu(k,1290) + lu(k,1301) = lu(k,1301) - lu(k,867) * lu(k,1290) + lu(k,1302) = lu(k,1302) - lu(k,868) * lu(k,1290) + lu(k,1303) = - lu(k,869) * lu(k,1290) + lu(k,1306) = lu(k,1306) - lu(k,870) * lu(k,1290) + lu(k,1307) = lu(k,1307) - lu(k,871) * lu(k,1290) + lu(k,1309) = lu(k,1309) - lu(k,872) * lu(k,1290) + lu(k,1319) = lu(k,1319) - lu(k,861) * lu(k,1318) + lu(k,1322) = lu(k,1322) - lu(k,862) * lu(k,1318) + lu(k,1323) = lu(k,1323) - lu(k,863) * lu(k,1318) + lu(k,1324) = lu(k,1324) - lu(k,864) * lu(k,1318) + lu(k,1326) = - lu(k,865) * lu(k,1318) + lu(k,1327) = lu(k,1327) - lu(k,866) * lu(k,1318) + lu(k,1328) = lu(k,1328) - lu(k,867) * lu(k,1318) + lu(k,1329) = lu(k,1329) - lu(k,868) * lu(k,1318) + lu(k,1330) = lu(k,1330) - lu(k,869) * lu(k,1318) + lu(k,1333) = lu(k,1333) - lu(k,870) * lu(k,1318) + lu(k,1334) = lu(k,1334) - lu(k,871) * lu(k,1318) + lu(k,1336) = lu(k,1336) - lu(k,872) * lu(k,1318) + lu(k,1344) = lu(k,1344) - lu(k,861) * lu(k,1343) + lu(k,1346) = lu(k,1346) - lu(k,862) * lu(k,1343) + lu(k,1347) = lu(k,1347) - lu(k,863) * lu(k,1343) + lu(k,1348) = lu(k,1348) - lu(k,864) * lu(k,1343) + lu(k,1350) = - lu(k,865) * lu(k,1343) + lu(k,1351) = lu(k,1351) - lu(k,866) * lu(k,1343) + lu(k,1352) = lu(k,1352) - lu(k,867) * lu(k,1343) + lu(k,1353) = lu(k,1353) - lu(k,868) * lu(k,1343) + lu(k,1354) = lu(k,1354) - lu(k,869) * lu(k,1343) + lu(k,1357) = lu(k,1357) - lu(k,870) * lu(k,1343) + lu(k,1358) = lu(k,1358) - lu(k,871) * lu(k,1343) + lu(k,1360) = lu(k,1360) - lu(k,872) * lu(k,1343) + lu(k,1401) = lu(k,1401) - lu(k,861) * lu(k,1400) + lu(k,1405) = lu(k,1405) - lu(k,862) * lu(k,1400) + lu(k,1406) = lu(k,1406) - lu(k,863) * lu(k,1400) + lu(k,1407) = lu(k,1407) - lu(k,864) * lu(k,1400) + lu(k,1409) = lu(k,1409) - lu(k,865) * lu(k,1400) + lu(k,1410) = lu(k,1410) - lu(k,866) * lu(k,1400) + lu(k,1411) = lu(k,1411) - lu(k,867) * lu(k,1400) + lu(k,1412) = lu(k,1412) - lu(k,868) * lu(k,1400) + lu(k,1413) = lu(k,1413) - lu(k,869) * lu(k,1400) + lu(k,1416) = lu(k,1416) - lu(k,870) * lu(k,1400) + lu(k,1417) = lu(k,1417) - lu(k,871) * lu(k,1400) + lu(k,1419) = lu(k,1419) - lu(k,872) * lu(k,1400) + lu(k,1425) = lu(k,1425) - lu(k,861) * lu(k,1424) + lu(k,1429) = lu(k,1429) - lu(k,862) * lu(k,1424) + lu(k,1430) = lu(k,1430) - lu(k,863) * lu(k,1424) + lu(k,1431) = lu(k,1431) - lu(k,864) * lu(k,1424) + lu(k,1433) = lu(k,1433) - lu(k,865) * lu(k,1424) + lu(k,1434) = lu(k,1434) - lu(k,866) * lu(k,1424) + lu(k,1435) = lu(k,1435) - lu(k,867) * lu(k,1424) + lu(k,1436) = - lu(k,868) * lu(k,1424) + lu(k,1437) = lu(k,1437) - lu(k,869) * lu(k,1424) + lu(k,1440) = lu(k,1440) - lu(k,870) * lu(k,1424) + lu(k,1441) = lu(k,1441) - lu(k,871) * lu(k,1424) + lu(k,1443) = lu(k,1443) - lu(k,872) * lu(k,1424) + lu(k,1470) = lu(k,1470) - lu(k,861) * lu(k,1469) + lu(k,1474) = lu(k,1474) - lu(k,862) * lu(k,1469) + lu(k,1475) = lu(k,1475) - lu(k,863) * lu(k,1469) + lu(k,1476) = lu(k,1476) - lu(k,864) * lu(k,1469) + lu(k,1478) = lu(k,1478) - lu(k,865) * lu(k,1469) + lu(k,1479) = lu(k,1479) - lu(k,866) * lu(k,1469) + lu(k,1480) = lu(k,1480) - lu(k,867) * lu(k,1469) + lu(k,1481) = lu(k,1481) - lu(k,868) * lu(k,1469) + lu(k,1482) = lu(k,1482) - lu(k,869) * lu(k,1469) + lu(k,1485) = lu(k,1485) - lu(k,870) * lu(k,1469) + lu(k,1486) = lu(k,1486) - lu(k,871) * lu(k,1469) + lu(k,1488) = lu(k,1488) - lu(k,872) * lu(k,1469) + lu(k,1493) = - lu(k,861) * lu(k,1492) + lu(k,1497) = lu(k,1497) - lu(k,862) * lu(k,1492) + lu(k,1498) = lu(k,1498) - lu(k,863) * lu(k,1492) + lu(k,1499) = lu(k,1499) - lu(k,864) * lu(k,1492) + lu(k,1501) = lu(k,1501) - lu(k,865) * lu(k,1492) + lu(k,1502) = lu(k,1502) - lu(k,866) * lu(k,1492) + lu(k,1503) = lu(k,1503) - lu(k,867) * lu(k,1492) + lu(k,1504) = - lu(k,868) * lu(k,1492) + lu(k,1505) = - lu(k,869) * lu(k,1492) + lu(k,1508) = lu(k,1508) - lu(k,870) * lu(k,1492) + lu(k,1509) = lu(k,1509) - lu(k,871) * lu(k,1492) + lu(k,1511) = lu(k,1511) - lu(k,872) * lu(k,1492) lu(k,1566) = lu(k,1566) - lu(k,861) * lu(k,1565) - lu(k,1568) = lu(k,1568) - lu(k,862) * lu(k,1565) - lu(k,1569) = lu(k,1569) - lu(k,863) * lu(k,1565) - lu(k,1570) = lu(k,1570) - lu(k,864) * lu(k,1565) + lu(k,1570) = lu(k,1570) - lu(k,862) * lu(k,1565) + lu(k,1571) = lu(k,1571) - lu(k,863) * lu(k,1565) + lu(k,1572) = lu(k,1572) - lu(k,864) * lu(k,1565) lu(k,1574) = lu(k,1574) - lu(k,865) * lu(k,1565) - lu(k,1576) = lu(k,1576) - lu(k,866) * lu(k,1565) - lu(k,1577) = lu(k,1577) - lu(k,867) * lu(k,1565) - lu(k,1578) = lu(k,1578) - lu(k,868) * lu(k,1565) - lu(k,1579) = lu(k,1579) - lu(k,869) * lu(k,1565) - lu(k,1580) = lu(k,1580) - lu(k,870) * lu(k,1565) - lu(k,1583) = lu(k,1583) - lu(k,871) * lu(k,1565) + lu(k,1575) = lu(k,1575) - lu(k,866) * lu(k,1565) + lu(k,1576) = lu(k,1576) - lu(k,867) * lu(k,1565) + lu(k,1577) = lu(k,1577) - lu(k,868) * lu(k,1565) + lu(k,1578) = lu(k,1578) - lu(k,869) * lu(k,1565) + lu(k,1581) = lu(k,1581) - lu(k,870) * lu(k,1565) + lu(k,1582) = lu(k,1582) - lu(k,871) * lu(k,1565) lu(k,1584) = lu(k,1584) - lu(k,872) * lu(k,1565) lu(k,876) = 1._r8 / lu(k,876) lu(k,877) = lu(k,877) * lu(k,876) @@ -4370,205 +4369,205 @@ subroutine lu_fac18( avec_len, lu ) lu(k,888) = lu(k,888) * lu(k,876) lu(k,909) = lu(k,909) - lu(k,877) * lu(k,908) lu(k,910) = lu(k,910) - lu(k,878) * lu(k,908) - lu(k,912) = lu(k,912) - lu(k,879) * lu(k,908) - lu(k,913) = lu(k,913) - lu(k,880) * lu(k,908) - lu(k,914) = lu(k,914) - lu(k,881) * lu(k,908) - lu(k,915) = lu(k,915) - lu(k,882) * lu(k,908) - lu(k,916) = lu(k,916) - lu(k,883) * lu(k,908) + lu(k,911) = lu(k,911) - lu(k,879) * lu(k,908) + lu(k,912) = lu(k,912) - lu(k,880) * lu(k,908) + lu(k,913) = lu(k,913) - lu(k,881) * lu(k,908) + lu(k,914) = lu(k,914) - lu(k,882) * lu(k,908) + lu(k,917) = lu(k,917) - lu(k,883) * lu(k,908) lu(k,918) = lu(k,918) - lu(k,884) * lu(k,908) lu(k,919) = lu(k,919) - lu(k,885) * lu(k,908) lu(k,920) = lu(k,920) - lu(k,886) * lu(k,908) lu(k,921) = lu(k,921) - lu(k,887) * lu(k,908) lu(k,922) = lu(k,922) - lu(k,888) * lu(k,908) - lu(k,931) = lu(k,931) - lu(k,877) * lu(k,930) - lu(k,932) = lu(k,932) - lu(k,878) * lu(k,930) - lu(k,934) = lu(k,934) - lu(k,879) * lu(k,930) - lu(k,935) = - lu(k,880) * lu(k,930) - lu(k,936) = lu(k,936) - lu(k,881) * lu(k,930) - lu(k,937) = lu(k,937) - lu(k,882) * lu(k,930) - lu(k,940) = lu(k,940) - lu(k,883) * lu(k,930) - lu(k,942) = lu(k,942) - lu(k,884) * lu(k,930) - lu(k,943) = lu(k,943) - lu(k,885) * lu(k,930) - lu(k,944) = lu(k,944) - lu(k,886) * lu(k,930) - lu(k,945) = lu(k,945) - lu(k,887) * lu(k,930) - lu(k,946) = lu(k,946) - lu(k,888) * lu(k,930) - lu(k,957) = lu(k,957) - lu(k,877) * lu(k,956) - lu(k,958) = lu(k,958) - lu(k,878) * lu(k,956) - lu(k,960) = lu(k,960) - lu(k,879) * lu(k,956) - lu(k,961) = lu(k,961) - lu(k,880) * lu(k,956) - lu(k,962) = lu(k,962) - lu(k,881) * lu(k,956) - lu(k,963) = lu(k,963) - lu(k,882) * lu(k,956) - lu(k,967) = lu(k,967) - lu(k,883) * lu(k,956) - lu(k,969) = lu(k,969) - lu(k,884) * lu(k,956) - lu(k,970) = lu(k,970) - lu(k,885) * lu(k,956) - lu(k,971) = lu(k,971) - lu(k,886) * lu(k,956) - lu(k,972) = lu(k,972) - lu(k,887) * lu(k,956) - lu(k,973) = lu(k,973) - lu(k,888) * lu(k,956) - lu(k,993) = lu(k,993) - lu(k,877) * lu(k,992) - lu(k,994) = lu(k,994) - lu(k,878) * lu(k,992) - lu(k,996) = lu(k,996) - lu(k,879) * lu(k,992) - lu(k,997) = lu(k,997) - lu(k,880) * lu(k,992) - lu(k,998) = lu(k,998) - lu(k,881) * lu(k,992) - lu(k,999) = lu(k,999) - lu(k,882) * lu(k,992) - lu(k,1003) = lu(k,1003) - lu(k,883) * lu(k,992) - lu(k,1005) = lu(k,1005) - lu(k,884) * lu(k,992) - lu(k,1006) = lu(k,1006) - lu(k,885) * lu(k,992) - lu(k,1007) = lu(k,1007) - lu(k,886) * lu(k,992) - lu(k,1009) = lu(k,1009) - lu(k,887) * lu(k,992) - lu(k,1010) = lu(k,1010) - lu(k,888) * lu(k,992) + lu(k,930) = lu(k,930) - lu(k,877) * lu(k,929) + lu(k,934) = lu(k,934) - lu(k,878) * lu(k,929) + lu(k,935) = lu(k,935) - lu(k,879) * lu(k,929) + lu(k,936) = lu(k,936) - lu(k,880) * lu(k,929) + lu(k,937) = lu(k,937) - lu(k,881) * lu(k,929) + lu(k,938) = lu(k,938) - lu(k,882) * lu(k,929) + lu(k,941) = lu(k,941) - lu(k,883) * lu(k,929) + lu(k,942) = lu(k,942) - lu(k,884) * lu(k,929) + lu(k,943) = lu(k,943) - lu(k,885) * lu(k,929) + lu(k,944) = lu(k,944) - lu(k,886) * lu(k,929) + lu(k,946) = - lu(k,887) * lu(k,929) + lu(k,947) = lu(k,947) - lu(k,888) * lu(k,929) lu(k,1017) = lu(k,1017) - lu(k,877) * lu(k,1016) - lu(k,1018) = lu(k,1018) - lu(k,878) * lu(k,1016) - lu(k,1020) = lu(k,1020) - lu(k,879) * lu(k,1016) - lu(k,1021) = lu(k,1021) - lu(k,880) * lu(k,1016) - lu(k,1022) = lu(k,1022) - lu(k,881) * lu(k,1016) - lu(k,1023) = - lu(k,882) * lu(k,1016) - lu(k,1027) = lu(k,1027) - lu(k,883) * lu(k,1016) + lu(k,1021) = lu(k,1021) - lu(k,878) * lu(k,1016) + lu(k,1022) = lu(k,1022) - lu(k,879) * lu(k,1016) + lu(k,1023) = lu(k,1023) - lu(k,880) * lu(k,1016) + lu(k,1024) = lu(k,1024) - lu(k,881) * lu(k,1016) + lu(k,1025) = lu(k,1025) - lu(k,882) * lu(k,1016) + lu(k,1028) = lu(k,1028) - lu(k,883) * lu(k,1016) lu(k,1029) = lu(k,1029) - lu(k,884) * lu(k,1016) lu(k,1030) = lu(k,1030) - lu(k,885) * lu(k,1016) lu(k,1031) = lu(k,1031) - lu(k,886) * lu(k,1016) lu(k,1033) = lu(k,1033) - lu(k,887) * lu(k,1016) lu(k,1034) = lu(k,1034) - lu(k,888) * lu(k,1016) - lu(k,1076) = lu(k,1076) - lu(k,877) * lu(k,1075) - lu(k,1077) = lu(k,1077) - lu(k,878) * lu(k,1075) - lu(k,1079) = lu(k,1079) - lu(k,879) * lu(k,1075) - lu(k,1080) = lu(k,1080) - lu(k,880) * lu(k,1075) - lu(k,1081) = lu(k,1081) - lu(k,881) * lu(k,1075) - lu(k,1082) = lu(k,1082) - lu(k,882) * lu(k,1075) - lu(k,1086) = lu(k,1086) - lu(k,883) * lu(k,1075) - lu(k,1088) = lu(k,1088) - lu(k,884) * lu(k,1075) - lu(k,1089) = lu(k,1089) - lu(k,885) * lu(k,1075) - lu(k,1090) = lu(k,1090) - lu(k,886) * lu(k,1075) - lu(k,1092) = lu(k,1092) - lu(k,887) * lu(k,1075) - lu(k,1093) = lu(k,1093) - lu(k,888) * lu(k,1075) - lu(k,1122) = lu(k,1122) - lu(k,877) * lu(k,1121) - lu(k,1123) = lu(k,1123) - lu(k,878) * lu(k,1121) - lu(k,1125) = lu(k,1125) - lu(k,879) * lu(k,1121) - lu(k,1126) = lu(k,1126) - lu(k,880) * lu(k,1121) - lu(k,1127) = lu(k,1127) - lu(k,881) * lu(k,1121) - lu(k,1128) = lu(k,1128) - lu(k,882) * lu(k,1121) - lu(k,1132) = lu(k,1132) - lu(k,883) * lu(k,1121) - lu(k,1134) = lu(k,1134) - lu(k,884) * lu(k,1121) - lu(k,1135) = lu(k,1135) - lu(k,885) * lu(k,1121) - lu(k,1136) = lu(k,1136) - lu(k,886) * lu(k,1121) - lu(k,1138) = lu(k,1138) - lu(k,887) * lu(k,1121) - lu(k,1139) = lu(k,1139) - lu(k,888) * lu(k,1121) - lu(k,1145) = - lu(k,877) * lu(k,1144) - lu(k,1146) = lu(k,1146) - lu(k,878) * lu(k,1144) - lu(k,1148) = lu(k,1148) - lu(k,879) * lu(k,1144) - lu(k,1149) = - lu(k,880) * lu(k,1144) - lu(k,1150) = - lu(k,881) * lu(k,1144) - lu(k,1151) = - lu(k,882) * lu(k,1144) - lu(k,1155) = lu(k,1155) - lu(k,883) * lu(k,1144) - lu(k,1157) = lu(k,1157) - lu(k,884) * lu(k,1144) - lu(k,1158) = lu(k,1158) - lu(k,885) * lu(k,1144) - lu(k,1159) = - lu(k,886) * lu(k,1144) - lu(k,1161) = lu(k,1161) - lu(k,887) * lu(k,1144) - lu(k,1162) = lu(k,1162) - lu(k,888) * lu(k,1144) - lu(k,1232) = lu(k,1232) - lu(k,877) * lu(k,1231) - lu(k,1233) = lu(k,1233) - lu(k,878) * lu(k,1231) - lu(k,1235) = lu(k,1235) - lu(k,879) * lu(k,1231) - lu(k,1236) = lu(k,1236) - lu(k,880) * lu(k,1231) - lu(k,1237) = lu(k,1237) - lu(k,881) * lu(k,1231) - lu(k,1238) = lu(k,1238) - lu(k,882) * lu(k,1231) - lu(k,1242) = lu(k,1242) - lu(k,883) * lu(k,1231) - lu(k,1244) = lu(k,1244) - lu(k,884) * lu(k,1231) - lu(k,1245) = lu(k,1245) - lu(k,885) * lu(k,1231) - lu(k,1246) = lu(k,1246) - lu(k,886) * lu(k,1231) - lu(k,1248) = lu(k,1248) - lu(k,887) * lu(k,1231) - lu(k,1249) = lu(k,1249) - lu(k,888) * lu(k,1231) - lu(k,1274) = lu(k,1274) - lu(k,877) * lu(k,1273) - lu(k,1275) = lu(k,1275) - lu(k,878) * lu(k,1273) - lu(k,1277) = lu(k,1277) - lu(k,879) * lu(k,1273) - lu(k,1278) = lu(k,1278) - lu(k,880) * lu(k,1273) - lu(k,1279) = lu(k,1279) - lu(k,881) * lu(k,1273) - lu(k,1280) = lu(k,1280) - lu(k,882) * lu(k,1273) - lu(k,1284) = lu(k,1284) - lu(k,883) * lu(k,1273) - lu(k,1286) = lu(k,1286) - lu(k,884) * lu(k,1273) - lu(k,1287) = lu(k,1287) - lu(k,885) * lu(k,1273) - lu(k,1288) = lu(k,1288) - lu(k,886) * lu(k,1273) - lu(k,1290) = lu(k,1290) - lu(k,887) * lu(k,1273) - lu(k,1291) = lu(k,1291) - lu(k,888) * lu(k,1273) - lu(k,1312) = lu(k,1312) - lu(k,877) * lu(k,1311) - lu(k,1313) = lu(k,1313) - lu(k,878) * lu(k,1311) - lu(k,1315) = lu(k,1315) - lu(k,879) * lu(k,1311) - lu(k,1316) = lu(k,1316) - lu(k,880) * lu(k,1311) - lu(k,1317) = lu(k,1317) - lu(k,881) * lu(k,1311) - lu(k,1318) = lu(k,1318) - lu(k,882) * lu(k,1311) - lu(k,1322) = lu(k,1322) - lu(k,883) * lu(k,1311) - lu(k,1324) = lu(k,1324) - lu(k,884) * lu(k,1311) - lu(k,1325) = lu(k,1325) - lu(k,885) * lu(k,1311) - lu(k,1326) = lu(k,1326) - lu(k,886) * lu(k,1311) - lu(k,1328) = lu(k,1328) - lu(k,887) * lu(k,1311) - lu(k,1329) = lu(k,1329) - lu(k,888) * lu(k,1311) - lu(k,1401) = lu(k,1401) - lu(k,877) * lu(k,1400) - lu(k,1402) = lu(k,1402) - lu(k,878) * lu(k,1400) - lu(k,1404) = lu(k,1404) - lu(k,879) * lu(k,1400) - lu(k,1405) = lu(k,1405) - lu(k,880) * lu(k,1400) - lu(k,1406) = lu(k,1406) - lu(k,881) * lu(k,1400) - lu(k,1407) = lu(k,1407) - lu(k,882) * lu(k,1400) - lu(k,1411) = lu(k,1411) - lu(k,883) * lu(k,1400) - lu(k,1413) = lu(k,1413) - lu(k,884) * lu(k,1400) - lu(k,1414) = lu(k,1414) - lu(k,885) * lu(k,1400) - lu(k,1415) = lu(k,1415) - lu(k,886) * lu(k,1400) - lu(k,1417) = lu(k,1417) - lu(k,887) * lu(k,1400) - lu(k,1418) = lu(k,1418) - lu(k,888) * lu(k,1400) - lu(k,1446) = lu(k,1446) - lu(k,877) * lu(k,1445) - lu(k,1447) = lu(k,1447) - lu(k,878) * lu(k,1445) - lu(k,1449) = lu(k,1449) - lu(k,879) * lu(k,1445) - lu(k,1450) = lu(k,1450) - lu(k,880) * lu(k,1445) - lu(k,1451) = lu(k,1451) - lu(k,881) * lu(k,1445) - lu(k,1452) = lu(k,1452) - lu(k,882) * lu(k,1445) - lu(k,1456) = lu(k,1456) - lu(k,883) * lu(k,1445) - lu(k,1458) = lu(k,1458) - lu(k,884) * lu(k,1445) - lu(k,1459) = lu(k,1459) - lu(k,885) * lu(k,1445) - lu(k,1460) = lu(k,1460) - lu(k,886) * lu(k,1445) - lu(k,1462) = lu(k,1462) - lu(k,887) * lu(k,1445) - lu(k,1463) = lu(k,1463) - lu(k,888) * lu(k,1445) - lu(k,1494) = lu(k,1494) - lu(k,877) * lu(k,1493) - lu(k,1495) = lu(k,1495) - lu(k,878) * lu(k,1493) - lu(k,1497) = lu(k,1497) - lu(k,879) * lu(k,1493) - lu(k,1498) = lu(k,1498) - lu(k,880) * lu(k,1493) - lu(k,1499) = lu(k,1499) - lu(k,881) * lu(k,1493) - lu(k,1500) = lu(k,1500) - lu(k,882) * lu(k,1493) - lu(k,1504) = lu(k,1504) - lu(k,883) * lu(k,1493) - lu(k,1506) = lu(k,1506) - lu(k,884) * lu(k,1493) - lu(k,1507) = lu(k,1507) - lu(k,885) * lu(k,1493) + lu(k,1038) = lu(k,1038) - lu(k,877) * lu(k,1037) + lu(k,1042) = lu(k,1042) - lu(k,878) * lu(k,1037) + lu(k,1043) = lu(k,1043) - lu(k,879) * lu(k,1037) + lu(k,1044) = - lu(k,880) * lu(k,1037) + lu(k,1045) = lu(k,1045) - lu(k,881) * lu(k,1037) + lu(k,1046) = lu(k,1046) - lu(k,882) * lu(k,1037) + lu(k,1049) = lu(k,1049) - lu(k,883) * lu(k,1037) + lu(k,1050) = lu(k,1050) - lu(k,884) * lu(k,1037) + lu(k,1051) = - lu(k,885) * lu(k,1037) + lu(k,1052) = lu(k,1052) - lu(k,886) * lu(k,1037) + lu(k,1054) = lu(k,1054) - lu(k,887) * lu(k,1037) + lu(k,1055) = lu(k,1055) - lu(k,888) * lu(k,1037) + lu(k,1075) = lu(k,1075) - lu(k,877) * lu(k,1074) + lu(k,1079) = lu(k,1079) - lu(k,878) * lu(k,1074) + lu(k,1080) = lu(k,1080) - lu(k,879) * lu(k,1074) + lu(k,1081) = lu(k,1081) - lu(k,880) * lu(k,1074) + lu(k,1082) = lu(k,1082) - lu(k,881) * lu(k,1074) + lu(k,1083) = lu(k,1083) - lu(k,882) * lu(k,1074) + lu(k,1086) = lu(k,1086) - lu(k,883) * lu(k,1074) + lu(k,1087) = lu(k,1087) - lu(k,884) * lu(k,1074) + lu(k,1088) = lu(k,1088) - lu(k,885) * lu(k,1074) + lu(k,1089) = lu(k,1089) - lu(k,886) * lu(k,1074) + lu(k,1091) = lu(k,1091) - lu(k,887) * lu(k,1074) + lu(k,1092) = lu(k,1092) - lu(k,888) * lu(k,1074) + lu(k,1123) = lu(k,1123) - lu(k,877) * lu(k,1122) + lu(k,1127) = lu(k,1127) - lu(k,878) * lu(k,1122) + lu(k,1128) = lu(k,1128) - lu(k,879) * lu(k,1122) + lu(k,1129) = lu(k,1129) - lu(k,880) * lu(k,1122) + lu(k,1130) = lu(k,1130) - lu(k,881) * lu(k,1122) + lu(k,1131) = lu(k,1131) - lu(k,882) * lu(k,1122) + lu(k,1134) = lu(k,1134) - lu(k,883) * lu(k,1122) + lu(k,1135) = lu(k,1135) - lu(k,884) * lu(k,1122) + lu(k,1136) = lu(k,1136) - lu(k,885) * lu(k,1122) + lu(k,1137) = lu(k,1137) - lu(k,886) * lu(k,1122) + lu(k,1139) = lu(k,1139) - lu(k,887) * lu(k,1122) + lu(k,1140) = lu(k,1140) - lu(k,888) * lu(k,1122) + lu(k,1165) = lu(k,1165) - lu(k,877) * lu(k,1164) + lu(k,1169) = lu(k,1169) - lu(k,878) * lu(k,1164) + lu(k,1170) = lu(k,1170) - lu(k,879) * lu(k,1164) + lu(k,1171) = lu(k,1171) - lu(k,880) * lu(k,1164) + lu(k,1172) = lu(k,1172) - lu(k,881) * lu(k,1164) + lu(k,1173) = lu(k,1173) - lu(k,882) * lu(k,1164) + lu(k,1176) = lu(k,1176) - lu(k,883) * lu(k,1164) + lu(k,1177) = lu(k,1177) - lu(k,884) * lu(k,1164) + lu(k,1178) = lu(k,1178) - lu(k,885) * lu(k,1164) + lu(k,1179) = lu(k,1179) - lu(k,886) * lu(k,1164) + lu(k,1181) = lu(k,1181) - lu(k,887) * lu(k,1164) + lu(k,1182) = lu(k,1182) - lu(k,888) * lu(k,1164) + lu(k,1254) = lu(k,1254) - lu(k,877) * lu(k,1253) + lu(k,1258) = lu(k,1258) - lu(k,878) * lu(k,1253) + lu(k,1259) = lu(k,1259) - lu(k,879) * lu(k,1253) + lu(k,1260) = lu(k,1260) - lu(k,880) * lu(k,1253) + lu(k,1261) = lu(k,1261) - lu(k,881) * lu(k,1253) + lu(k,1262) = lu(k,1262) - lu(k,882) * lu(k,1253) + lu(k,1265) = lu(k,1265) - lu(k,883) * lu(k,1253) + lu(k,1266) = lu(k,1266) - lu(k,884) * lu(k,1253) + lu(k,1267) = lu(k,1267) - lu(k,885) * lu(k,1253) + lu(k,1268) = lu(k,1268) - lu(k,886) * lu(k,1253) + lu(k,1270) = lu(k,1270) - lu(k,887) * lu(k,1253) + lu(k,1271) = lu(k,1271) - lu(k,888) * lu(k,1253) + lu(k,1292) = lu(k,1292) - lu(k,877) * lu(k,1291) + lu(k,1296) = lu(k,1296) - lu(k,878) * lu(k,1291) + lu(k,1297) = lu(k,1297) - lu(k,879) * lu(k,1291) + lu(k,1298) = lu(k,1298) - lu(k,880) * lu(k,1291) + lu(k,1299) = lu(k,1299) - lu(k,881) * lu(k,1291) + lu(k,1300) = lu(k,1300) - lu(k,882) * lu(k,1291) + lu(k,1303) = lu(k,1303) - lu(k,883) * lu(k,1291) + lu(k,1304) = lu(k,1304) - lu(k,884) * lu(k,1291) + lu(k,1305) = lu(k,1305) - lu(k,885) * lu(k,1291) + lu(k,1306) = lu(k,1306) - lu(k,886) * lu(k,1291) + lu(k,1308) = lu(k,1308) - lu(k,887) * lu(k,1291) + lu(k,1309) = lu(k,1309) - lu(k,888) * lu(k,1291) + lu(k,1320) = lu(k,1320) - lu(k,877) * lu(k,1319) + lu(k,1323) = lu(k,1323) - lu(k,878) * lu(k,1319) + lu(k,1324) = lu(k,1324) - lu(k,879) * lu(k,1319) + lu(k,1325) = lu(k,1325) - lu(k,880) * lu(k,1319) + lu(k,1326) = lu(k,1326) - lu(k,881) * lu(k,1319) + lu(k,1327) = lu(k,1327) - lu(k,882) * lu(k,1319) + lu(k,1330) = lu(k,1330) - lu(k,883) * lu(k,1319) + lu(k,1331) = lu(k,1331) - lu(k,884) * lu(k,1319) + lu(k,1332) = lu(k,1332) - lu(k,885) * lu(k,1319) + lu(k,1333) = lu(k,1333) - lu(k,886) * lu(k,1319) + lu(k,1335) = lu(k,1335) - lu(k,887) * lu(k,1319) + lu(k,1336) = lu(k,1336) - lu(k,888) * lu(k,1319) + lu(k,1345) = lu(k,1345) - lu(k,877) * lu(k,1344) + lu(k,1347) = lu(k,1347) - lu(k,878) * lu(k,1344) + lu(k,1348) = lu(k,1348) - lu(k,879) * lu(k,1344) + lu(k,1349) = lu(k,1349) - lu(k,880) * lu(k,1344) + lu(k,1350) = lu(k,1350) - lu(k,881) * lu(k,1344) + lu(k,1351) = lu(k,1351) - lu(k,882) * lu(k,1344) + lu(k,1354) = lu(k,1354) - lu(k,883) * lu(k,1344) + lu(k,1355) = lu(k,1355) - lu(k,884) * lu(k,1344) + lu(k,1356) = - lu(k,885) * lu(k,1344) + lu(k,1357) = lu(k,1357) - lu(k,886) * lu(k,1344) + lu(k,1359) = lu(k,1359) - lu(k,887) * lu(k,1344) + lu(k,1360) = lu(k,1360) - lu(k,888) * lu(k,1344) + lu(k,1402) = lu(k,1402) - lu(k,877) * lu(k,1401) + lu(k,1406) = lu(k,1406) - lu(k,878) * lu(k,1401) + lu(k,1407) = lu(k,1407) - lu(k,879) * lu(k,1401) + lu(k,1408) = lu(k,1408) - lu(k,880) * lu(k,1401) + lu(k,1409) = lu(k,1409) - lu(k,881) * lu(k,1401) + lu(k,1410) = lu(k,1410) - lu(k,882) * lu(k,1401) + lu(k,1413) = lu(k,1413) - lu(k,883) * lu(k,1401) + lu(k,1414) = lu(k,1414) - lu(k,884) * lu(k,1401) + lu(k,1415) = lu(k,1415) - lu(k,885) * lu(k,1401) + lu(k,1416) = lu(k,1416) - lu(k,886) * lu(k,1401) + lu(k,1418) = lu(k,1418) - lu(k,887) * lu(k,1401) + lu(k,1419) = lu(k,1419) - lu(k,888) * lu(k,1401) + lu(k,1426) = lu(k,1426) - lu(k,877) * lu(k,1425) + lu(k,1430) = lu(k,1430) - lu(k,878) * lu(k,1425) + lu(k,1431) = lu(k,1431) - lu(k,879) * lu(k,1425) + lu(k,1432) = lu(k,1432) - lu(k,880) * lu(k,1425) + lu(k,1433) = lu(k,1433) - lu(k,881) * lu(k,1425) + lu(k,1434) = lu(k,1434) - lu(k,882) * lu(k,1425) + lu(k,1437) = lu(k,1437) - lu(k,883) * lu(k,1425) + lu(k,1438) = lu(k,1438) - lu(k,884) * lu(k,1425) + lu(k,1439) = lu(k,1439) - lu(k,885) * lu(k,1425) + lu(k,1440) = lu(k,1440) - lu(k,886) * lu(k,1425) + lu(k,1442) = - lu(k,887) * lu(k,1425) + lu(k,1443) = lu(k,1443) - lu(k,888) * lu(k,1425) + lu(k,1471) = lu(k,1471) - lu(k,877) * lu(k,1470) + lu(k,1475) = lu(k,1475) - lu(k,878) * lu(k,1470) + lu(k,1476) = lu(k,1476) - lu(k,879) * lu(k,1470) + lu(k,1477) = lu(k,1477) - lu(k,880) * lu(k,1470) + lu(k,1478) = lu(k,1478) - lu(k,881) * lu(k,1470) + lu(k,1479) = lu(k,1479) - lu(k,882) * lu(k,1470) + lu(k,1482) = lu(k,1482) - lu(k,883) * lu(k,1470) + lu(k,1483) = lu(k,1483) - lu(k,884) * lu(k,1470) + lu(k,1484) = lu(k,1484) - lu(k,885) * lu(k,1470) + lu(k,1485) = lu(k,1485) - lu(k,886) * lu(k,1470) + lu(k,1487) = lu(k,1487) - lu(k,887) * lu(k,1470) + lu(k,1488) = lu(k,1488) - lu(k,888) * lu(k,1470) + lu(k,1494) = - lu(k,877) * lu(k,1493) + lu(k,1498) = lu(k,1498) - lu(k,878) * lu(k,1493) + lu(k,1499) = lu(k,1499) - lu(k,879) * lu(k,1493) + lu(k,1500) = - lu(k,880) * lu(k,1493) + lu(k,1501) = lu(k,1501) - lu(k,881) * lu(k,1493) + lu(k,1502) = lu(k,1502) - lu(k,882) * lu(k,1493) + lu(k,1505) = lu(k,1505) - lu(k,883) * lu(k,1493) + lu(k,1506) = - lu(k,884) * lu(k,1493) + lu(k,1507) = - lu(k,885) * lu(k,1493) lu(k,1508) = lu(k,1508) - lu(k,886) * lu(k,1493) - lu(k,1510) = lu(k,1510) - lu(k,887) * lu(k,1493) + lu(k,1510) = - lu(k,887) * lu(k,1493) lu(k,1511) = lu(k,1511) - lu(k,888) * lu(k,1493) - lu(k,1519) = lu(k,1519) - lu(k,877) * lu(k,1518) - lu(k,1520) = lu(k,1520) - lu(k,878) * lu(k,1518) - lu(k,1522) = lu(k,1522) - lu(k,879) * lu(k,1518) - lu(k,1523) = lu(k,1523) - lu(k,880) * lu(k,1518) - lu(k,1524) = lu(k,1524) - lu(k,881) * lu(k,1518) - lu(k,1525) = - lu(k,882) * lu(k,1518) - lu(k,1529) = lu(k,1529) - lu(k,883) * lu(k,1518) - lu(k,1531) = lu(k,1531) - lu(k,884) * lu(k,1518) - lu(k,1532) = lu(k,1532) - lu(k,885) * lu(k,1518) - lu(k,1533) = lu(k,1533) - lu(k,886) * lu(k,1518) - lu(k,1535) = lu(k,1535) - lu(k,887) * lu(k,1518) - lu(k,1536) = lu(k,1536) - lu(k,888) * lu(k,1518) lu(k,1540) = lu(k,1540) - lu(k,877) * lu(k,1539) - lu(k,1541) = lu(k,1541) - lu(k,878) * lu(k,1539) - lu(k,1543) = lu(k,1543) - lu(k,879) * lu(k,1539) - lu(k,1544) = - lu(k,880) * lu(k,1539) - lu(k,1545) = lu(k,1545) - lu(k,881) * lu(k,1539) - lu(k,1546) = lu(k,1546) - lu(k,882) * lu(k,1539) - lu(k,1550) = lu(k,1550) - lu(k,883) * lu(k,1539) + lu(k,1544) = lu(k,1544) - lu(k,878) * lu(k,1539) + lu(k,1545) = lu(k,1545) - lu(k,879) * lu(k,1539) + lu(k,1546) = lu(k,1546) - lu(k,880) * lu(k,1539) + lu(k,1547) = lu(k,1547) - lu(k,881) * lu(k,1539) + lu(k,1548) = lu(k,1548) - lu(k,882) * lu(k,1539) + lu(k,1551) = lu(k,1551) - lu(k,883) * lu(k,1539) lu(k,1552) = lu(k,1552) - lu(k,884) * lu(k,1539) lu(k,1553) = lu(k,1553) - lu(k,885) * lu(k,1539) - lu(k,1554) = - lu(k,886) * lu(k,1539) + lu(k,1554) = lu(k,1554) - lu(k,886) * lu(k,1539) lu(k,1556) = lu(k,1556) - lu(k,887) * lu(k,1539) lu(k,1557) = lu(k,1557) - lu(k,888) * lu(k,1539) lu(k,1567) = lu(k,1567) - lu(k,877) * lu(k,1566) - lu(k,1568) = lu(k,1568) - lu(k,878) * lu(k,1566) - lu(k,1570) = lu(k,1570) - lu(k,879) * lu(k,1566) - lu(k,1571) = - lu(k,880) * lu(k,1566) - lu(k,1572) = lu(k,1572) - lu(k,881) * lu(k,1566) - lu(k,1573) = lu(k,1573) - lu(k,882) * lu(k,1566) - lu(k,1577) = lu(k,1577) - lu(k,883) * lu(k,1566) + lu(k,1571) = lu(k,1571) - lu(k,878) * lu(k,1566) + lu(k,1572) = lu(k,1572) - lu(k,879) * lu(k,1566) + lu(k,1573) = lu(k,1573) - lu(k,880) * lu(k,1566) + lu(k,1574) = lu(k,1574) - lu(k,881) * lu(k,1566) + lu(k,1575) = lu(k,1575) - lu(k,882) * lu(k,1566) + lu(k,1578) = lu(k,1578) - lu(k,883) * lu(k,1566) lu(k,1579) = lu(k,1579) - lu(k,884) * lu(k,1566) - lu(k,1580) = lu(k,1580) - lu(k,885) * lu(k,1566) + lu(k,1580) = - lu(k,885) * lu(k,1566) lu(k,1581) = lu(k,1581) - lu(k,886) * lu(k,1566) lu(k,1583) = lu(k,1583) - lu(k,887) * lu(k,1566) lu(k,1584) = lu(k,1584) - lu(k,888) * lu(k,1566) @@ -4602,51 +4601,38 @@ subroutine lu_fac19( avec_len, lu ) lu(k,920) = lu(k,920) * lu(k,909) lu(k,921) = lu(k,921) * lu(k,909) lu(k,922) = lu(k,922) * lu(k,909) - lu(k,932) = lu(k,932) - lu(k,910) * lu(k,931) - lu(k,933) = lu(k,933) - lu(k,911) * lu(k,931) - lu(k,934) = lu(k,934) - lu(k,912) * lu(k,931) - lu(k,935) = lu(k,935) - lu(k,913) * lu(k,931) - lu(k,936) = lu(k,936) - lu(k,914) * lu(k,931) - lu(k,937) = lu(k,937) - lu(k,915) * lu(k,931) - lu(k,940) = lu(k,940) - lu(k,916) * lu(k,931) - lu(k,941) = lu(k,941) - lu(k,917) * lu(k,931) - lu(k,942) = lu(k,942) - lu(k,918) * lu(k,931) - lu(k,943) = lu(k,943) - lu(k,919) * lu(k,931) - lu(k,944) = lu(k,944) - lu(k,920) * lu(k,931) - lu(k,945) = lu(k,945) - lu(k,921) * lu(k,931) - lu(k,946) = lu(k,946) - lu(k,922) * lu(k,931) - lu(k,958) = lu(k,958) - lu(k,910) * lu(k,957) - lu(k,959) = lu(k,959) - lu(k,911) * lu(k,957) - lu(k,960) = lu(k,960) - lu(k,912) * lu(k,957) - lu(k,961) = lu(k,961) - lu(k,913) * lu(k,957) - lu(k,962) = lu(k,962) - lu(k,914) * lu(k,957) - lu(k,963) = lu(k,963) - lu(k,915) * lu(k,957) - lu(k,967) = lu(k,967) - lu(k,916) * lu(k,957) - lu(k,968) = lu(k,968) - lu(k,917) * lu(k,957) - lu(k,969) = lu(k,969) - lu(k,918) * lu(k,957) - lu(k,970) = lu(k,970) - lu(k,919) * lu(k,957) - lu(k,971) = lu(k,971) - lu(k,920) * lu(k,957) - lu(k,972) = lu(k,972) - lu(k,921) * lu(k,957) - lu(k,973) = lu(k,973) - lu(k,922) * lu(k,957) - lu(k,994) = lu(k,994) - lu(k,910) * lu(k,993) - lu(k,995) = lu(k,995) - lu(k,911) * lu(k,993) - lu(k,996) = lu(k,996) - lu(k,912) * lu(k,993) - lu(k,997) = lu(k,997) - lu(k,913) * lu(k,993) - lu(k,998) = lu(k,998) - lu(k,914) * lu(k,993) - lu(k,999) = lu(k,999) - lu(k,915) * lu(k,993) - lu(k,1003) = lu(k,1003) - lu(k,916) * lu(k,993) - lu(k,1004) = lu(k,1004) - lu(k,917) * lu(k,993) - lu(k,1005) = lu(k,1005) - lu(k,918) * lu(k,993) - lu(k,1006) = lu(k,1006) - lu(k,919) * lu(k,993) - lu(k,1007) = lu(k,1007) - lu(k,920) * lu(k,993) - lu(k,1009) = lu(k,1009) - lu(k,921) * lu(k,993) - lu(k,1010) = lu(k,1010) - lu(k,922) * lu(k,993) - lu(k,1018) = lu(k,1018) - lu(k,910) * lu(k,1017) - lu(k,1019) = lu(k,1019) - lu(k,911) * lu(k,1017) - lu(k,1020) = lu(k,1020) - lu(k,912) * lu(k,1017) - lu(k,1021) = lu(k,1021) - lu(k,913) * lu(k,1017) - lu(k,1022) = lu(k,1022) - lu(k,914) * lu(k,1017) - lu(k,1023) = lu(k,1023) - lu(k,915) * lu(k,1017) + lu(k,934) = lu(k,934) - lu(k,910) * lu(k,930) + lu(k,935) = lu(k,935) - lu(k,911) * lu(k,930) + lu(k,936) = lu(k,936) - lu(k,912) * lu(k,930) + lu(k,937) = lu(k,937) - lu(k,913) * lu(k,930) + lu(k,938) = lu(k,938) - lu(k,914) * lu(k,930) + lu(k,939) = lu(k,939) - lu(k,915) * lu(k,930) + lu(k,940) = lu(k,940) - lu(k,916) * lu(k,930) + lu(k,941) = lu(k,941) - lu(k,917) * lu(k,930) + lu(k,942) = lu(k,942) - lu(k,918) * lu(k,930) + lu(k,943) = lu(k,943) - lu(k,919) * lu(k,930) + lu(k,944) = lu(k,944) - lu(k,920) * lu(k,930) + lu(k,946) = lu(k,946) - lu(k,921) * lu(k,930) + lu(k,947) = lu(k,947) - lu(k,922) * lu(k,930) + lu(k,975) = lu(k,975) - lu(k,910) * lu(k,971) + lu(k,976) = lu(k,976) - lu(k,911) * lu(k,971) + lu(k,977) = lu(k,977) - lu(k,912) * lu(k,971) + lu(k,978) = lu(k,978) - lu(k,913) * lu(k,971) + lu(k,979) = lu(k,979) - lu(k,914) * lu(k,971) + lu(k,980) = lu(k,980) - lu(k,915) * lu(k,971) + lu(k,981) = lu(k,981) - lu(k,916) * lu(k,971) + lu(k,982) = - lu(k,917) * lu(k,971) + lu(k,983) = lu(k,983) - lu(k,918) * lu(k,971) + lu(k,984) = lu(k,984) - lu(k,919) * lu(k,971) + lu(k,985) = lu(k,985) - lu(k,920) * lu(k,971) + lu(k,987) = lu(k,987) - lu(k,921) * lu(k,971) + lu(k,988) = lu(k,988) - lu(k,922) * lu(k,971) + lu(k,1021) = lu(k,1021) - lu(k,910) * lu(k,1017) + lu(k,1022) = lu(k,1022) - lu(k,911) * lu(k,1017) + lu(k,1023) = lu(k,1023) - lu(k,912) * lu(k,1017) + lu(k,1024) = lu(k,1024) - lu(k,913) * lu(k,1017) + lu(k,1025) = lu(k,1025) - lu(k,914) * lu(k,1017) + lu(k,1026) = lu(k,1026) - lu(k,915) * lu(k,1017) lu(k,1027) = lu(k,1027) - lu(k,916) * lu(k,1017) lu(k,1028) = lu(k,1028) - lu(k,917) * lu(k,1017) lu(k,1029) = lu(k,1029) - lu(k,918) * lu(k,1017) @@ -4654,129 +4640,155 @@ subroutine lu_fac19( avec_len, lu ) lu(k,1031) = lu(k,1031) - lu(k,920) * lu(k,1017) lu(k,1033) = lu(k,1033) - lu(k,921) * lu(k,1017) lu(k,1034) = lu(k,1034) - lu(k,922) * lu(k,1017) - lu(k,1077) = lu(k,1077) - lu(k,910) * lu(k,1076) - lu(k,1078) = lu(k,1078) - lu(k,911) * lu(k,1076) - lu(k,1079) = lu(k,1079) - lu(k,912) * lu(k,1076) - lu(k,1080) = lu(k,1080) - lu(k,913) * lu(k,1076) - lu(k,1081) = lu(k,1081) - lu(k,914) * lu(k,1076) - lu(k,1082) = lu(k,1082) - lu(k,915) * lu(k,1076) - lu(k,1086) = lu(k,1086) - lu(k,916) * lu(k,1076) - lu(k,1087) = lu(k,1087) - lu(k,917) * lu(k,1076) - lu(k,1088) = lu(k,1088) - lu(k,918) * lu(k,1076) - lu(k,1089) = lu(k,1089) - lu(k,919) * lu(k,1076) - lu(k,1090) = lu(k,1090) - lu(k,920) * lu(k,1076) - lu(k,1092) = lu(k,1092) - lu(k,921) * lu(k,1076) - lu(k,1093) = lu(k,1093) - lu(k,922) * lu(k,1076) - lu(k,1123) = lu(k,1123) - lu(k,910) * lu(k,1122) - lu(k,1124) = lu(k,1124) - lu(k,911) * lu(k,1122) - lu(k,1125) = lu(k,1125) - lu(k,912) * lu(k,1122) - lu(k,1126) = lu(k,1126) - lu(k,913) * lu(k,1122) - lu(k,1127) = lu(k,1127) - lu(k,914) * lu(k,1122) - lu(k,1128) = lu(k,1128) - lu(k,915) * lu(k,1122) - lu(k,1132) = lu(k,1132) - lu(k,916) * lu(k,1122) - lu(k,1133) = lu(k,1133) - lu(k,917) * lu(k,1122) - lu(k,1134) = lu(k,1134) - lu(k,918) * lu(k,1122) - lu(k,1135) = lu(k,1135) - lu(k,919) * lu(k,1122) - lu(k,1136) = lu(k,1136) - lu(k,920) * lu(k,1122) - lu(k,1138) = lu(k,1138) - lu(k,921) * lu(k,1122) - lu(k,1139) = lu(k,1139) - lu(k,922) * lu(k,1122) - lu(k,1146) = lu(k,1146) - lu(k,910) * lu(k,1145) - lu(k,1147) = lu(k,1147) - lu(k,911) * lu(k,1145) - lu(k,1148) = lu(k,1148) - lu(k,912) * lu(k,1145) - lu(k,1149) = lu(k,1149) - lu(k,913) * lu(k,1145) - lu(k,1150) = lu(k,1150) - lu(k,914) * lu(k,1145) - lu(k,1151) = lu(k,1151) - lu(k,915) * lu(k,1145) - lu(k,1155) = lu(k,1155) - lu(k,916) * lu(k,1145) - lu(k,1156) = lu(k,1156) - lu(k,917) * lu(k,1145) - lu(k,1157) = lu(k,1157) - lu(k,918) * lu(k,1145) - lu(k,1158) = lu(k,1158) - lu(k,919) * lu(k,1145) - lu(k,1159) = lu(k,1159) - lu(k,920) * lu(k,1145) - lu(k,1161) = lu(k,1161) - lu(k,921) * lu(k,1145) - lu(k,1162) = lu(k,1162) - lu(k,922) * lu(k,1145) - lu(k,1187) = - lu(k,910) * lu(k,1186) - lu(k,1188) = lu(k,1188) - lu(k,911) * lu(k,1186) - lu(k,1189) = lu(k,1189) - lu(k,912) * lu(k,1186) - lu(k,1190) = lu(k,1190) - lu(k,913) * lu(k,1186) - lu(k,1191) = lu(k,1191) - lu(k,914) * lu(k,1186) - lu(k,1192) = lu(k,1192) - lu(k,915) * lu(k,1186) - lu(k,1196) = lu(k,1196) - lu(k,916) * lu(k,1186) - lu(k,1197) = lu(k,1197) - lu(k,917) * lu(k,1186) - lu(k,1198) = lu(k,1198) - lu(k,918) * lu(k,1186) - lu(k,1199) = lu(k,1199) - lu(k,919) * lu(k,1186) - lu(k,1200) = lu(k,1200) - lu(k,920) * lu(k,1186) - lu(k,1202) = lu(k,1202) - lu(k,921) * lu(k,1186) - lu(k,1203) = lu(k,1203) - lu(k,922) * lu(k,1186) - lu(k,1233) = lu(k,1233) - lu(k,910) * lu(k,1232) - lu(k,1234) = lu(k,1234) - lu(k,911) * lu(k,1232) - lu(k,1235) = lu(k,1235) - lu(k,912) * lu(k,1232) - lu(k,1236) = lu(k,1236) - lu(k,913) * lu(k,1232) - lu(k,1237) = lu(k,1237) - lu(k,914) * lu(k,1232) - lu(k,1238) = lu(k,1238) - lu(k,915) * lu(k,1232) - lu(k,1242) = lu(k,1242) - lu(k,916) * lu(k,1232) - lu(k,1243) = lu(k,1243) - lu(k,917) * lu(k,1232) - lu(k,1244) = lu(k,1244) - lu(k,918) * lu(k,1232) - lu(k,1245) = lu(k,1245) - lu(k,919) * lu(k,1232) - lu(k,1246) = lu(k,1246) - lu(k,920) * lu(k,1232) - lu(k,1248) = lu(k,1248) - lu(k,921) * lu(k,1232) - lu(k,1249) = lu(k,1249) - lu(k,922) * lu(k,1232) - lu(k,1275) = lu(k,1275) - lu(k,910) * lu(k,1274) - lu(k,1276) = lu(k,1276) - lu(k,911) * lu(k,1274) - lu(k,1277) = lu(k,1277) - lu(k,912) * lu(k,1274) - lu(k,1278) = lu(k,1278) - lu(k,913) * lu(k,1274) - lu(k,1279) = lu(k,1279) - lu(k,914) * lu(k,1274) - lu(k,1280) = lu(k,1280) - lu(k,915) * lu(k,1274) - lu(k,1284) = lu(k,1284) - lu(k,916) * lu(k,1274) - lu(k,1285) = lu(k,1285) - lu(k,917) * lu(k,1274) - lu(k,1286) = lu(k,1286) - lu(k,918) * lu(k,1274) - lu(k,1287) = lu(k,1287) - lu(k,919) * lu(k,1274) - lu(k,1288) = lu(k,1288) - lu(k,920) * lu(k,1274) - lu(k,1290) = lu(k,1290) - lu(k,921) * lu(k,1274) - lu(k,1291) = lu(k,1291) - lu(k,922) * lu(k,1274) - lu(k,1313) = lu(k,1313) - lu(k,910) * lu(k,1312) - lu(k,1314) = lu(k,1314) - lu(k,911) * lu(k,1312) - lu(k,1315) = lu(k,1315) - lu(k,912) * lu(k,1312) - lu(k,1316) = lu(k,1316) - lu(k,913) * lu(k,1312) - lu(k,1317) = lu(k,1317) - lu(k,914) * lu(k,1312) - lu(k,1318) = lu(k,1318) - lu(k,915) * lu(k,1312) - lu(k,1322) = lu(k,1322) - lu(k,916) * lu(k,1312) - lu(k,1323) = lu(k,1323) - lu(k,917) * lu(k,1312) - lu(k,1324) = lu(k,1324) - lu(k,918) * lu(k,1312) - lu(k,1325) = lu(k,1325) - lu(k,919) * lu(k,1312) - lu(k,1326) = lu(k,1326) - lu(k,920) * lu(k,1312) - lu(k,1328) = lu(k,1328) - lu(k,921) * lu(k,1312) - lu(k,1329) = lu(k,1329) - lu(k,922) * lu(k,1312) - lu(k,1402) = lu(k,1402) - lu(k,910) * lu(k,1401) - lu(k,1403) = lu(k,1403) - lu(k,911) * lu(k,1401) - lu(k,1404) = lu(k,1404) - lu(k,912) * lu(k,1401) - lu(k,1405) = lu(k,1405) - lu(k,913) * lu(k,1401) - lu(k,1406) = lu(k,1406) - lu(k,914) * lu(k,1401) - lu(k,1407) = lu(k,1407) - lu(k,915) * lu(k,1401) - lu(k,1411) = lu(k,1411) - lu(k,916) * lu(k,1401) - lu(k,1412) = lu(k,1412) - lu(k,917) * lu(k,1401) - lu(k,1413) = lu(k,1413) - lu(k,918) * lu(k,1401) - lu(k,1414) = lu(k,1414) - lu(k,919) * lu(k,1401) - lu(k,1415) = lu(k,1415) - lu(k,920) * lu(k,1401) - lu(k,1417) = lu(k,1417) - lu(k,921) * lu(k,1401) - lu(k,1418) = lu(k,1418) - lu(k,922) * lu(k,1401) - lu(k,1447) = lu(k,1447) - lu(k,910) * lu(k,1446) - lu(k,1448) = lu(k,1448) - lu(k,911) * lu(k,1446) - lu(k,1449) = lu(k,1449) - lu(k,912) * lu(k,1446) - lu(k,1450) = lu(k,1450) - lu(k,913) * lu(k,1446) - lu(k,1451) = lu(k,1451) - lu(k,914) * lu(k,1446) - lu(k,1452) = lu(k,1452) - lu(k,915) * lu(k,1446) - lu(k,1456) = lu(k,1456) - lu(k,916) * lu(k,1446) - lu(k,1457) = lu(k,1457) - lu(k,917) * lu(k,1446) - lu(k,1458) = lu(k,1458) - lu(k,918) * lu(k,1446) - lu(k,1459) = lu(k,1459) - lu(k,919) * lu(k,1446) - lu(k,1460) = lu(k,1460) - lu(k,920) * lu(k,1446) - lu(k,1462) = lu(k,1462) - lu(k,921) * lu(k,1446) - lu(k,1463) = lu(k,1463) - lu(k,922) * lu(k,1446) - lu(k,1495) = lu(k,1495) - lu(k,910) * lu(k,1494) - lu(k,1496) = lu(k,1496) - lu(k,911) * lu(k,1494) - lu(k,1497) = lu(k,1497) - lu(k,912) * lu(k,1494) - lu(k,1498) = lu(k,1498) - lu(k,913) * lu(k,1494) - lu(k,1499) = lu(k,1499) - lu(k,914) * lu(k,1494) - lu(k,1500) = lu(k,1500) - lu(k,915) * lu(k,1494) + lu(k,1042) = lu(k,1042) - lu(k,910) * lu(k,1038) + lu(k,1043) = lu(k,1043) - lu(k,911) * lu(k,1038) + lu(k,1044) = lu(k,1044) - lu(k,912) * lu(k,1038) + lu(k,1045) = lu(k,1045) - lu(k,913) * lu(k,1038) + lu(k,1046) = lu(k,1046) - lu(k,914) * lu(k,1038) + lu(k,1047) = lu(k,1047) - lu(k,915) * lu(k,1038) + lu(k,1048) = lu(k,1048) - lu(k,916) * lu(k,1038) + lu(k,1049) = lu(k,1049) - lu(k,917) * lu(k,1038) + lu(k,1050) = lu(k,1050) - lu(k,918) * lu(k,1038) + lu(k,1051) = lu(k,1051) - lu(k,919) * lu(k,1038) + lu(k,1052) = lu(k,1052) - lu(k,920) * lu(k,1038) + lu(k,1054) = lu(k,1054) - lu(k,921) * lu(k,1038) + lu(k,1055) = lu(k,1055) - lu(k,922) * lu(k,1038) + lu(k,1079) = lu(k,1079) - lu(k,910) * lu(k,1075) + lu(k,1080) = lu(k,1080) - lu(k,911) * lu(k,1075) + lu(k,1081) = lu(k,1081) - lu(k,912) * lu(k,1075) + lu(k,1082) = lu(k,1082) - lu(k,913) * lu(k,1075) + lu(k,1083) = lu(k,1083) - lu(k,914) * lu(k,1075) + lu(k,1084) = lu(k,1084) - lu(k,915) * lu(k,1075) + lu(k,1085) = lu(k,1085) - lu(k,916) * lu(k,1075) + lu(k,1086) = lu(k,1086) - lu(k,917) * lu(k,1075) + lu(k,1087) = lu(k,1087) - lu(k,918) * lu(k,1075) + lu(k,1088) = lu(k,1088) - lu(k,919) * lu(k,1075) + lu(k,1089) = lu(k,1089) - lu(k,920) * lu(k,1075) + lu(k,1091) = lu(k,1091) - lu(k,921) * lu(k,1075) + lu(k,1092) = lu(k,1092) - lu(k,922) * lu(k,1075) + lu(k,1127) = lu(k,1127) - lu(k,910) * lu(k,1123) + lu(k,1128) = lu(k,1128) - lu(k,911) * lu(k,1123) + lu(k,1129) = lu(k,1129) - lu(k,912) * lu(k,1123) + lu(k,1130) = lu(k,1130) - lu(k,913) * lu(k,1123) + lu(k,1131) = lu(k,1131) - lu(k,914) * lu(k,1123) + lu(k,1132) = lu(k,1132) - lu(k,915) * lu(k,1123) + lu(k,1133) = lu(k,1133) - lu(k,916) * lu(k,1123) + lu(k,1134) = lu(k,1134) - lu(k,917) * lu(k,1123) + lu(k,1135) = lu(k,1135) - lu(k,918) * lu(k,1123) + lu(k,1136) = lu(k,1136) - lu(k,919) * lu(k,1123) + lu(k,1137) = lu(k,1137) - lu(k,920) * lu(k,1123) + lu(k,1139) = lu(k,1139) - lu(k,921) * lu(k,1123) + lu(k,1140) = lu(k,1140) - lu(k,922) * lu(k,1123) + lu(k,1169) = lu(k,1169) - lu(k,910) * lu(k,1165) + lu(k,1170) = lu(k,1170) - lu(k,911) * lu(k,1165) + lu(k,1171) = lu(k,1171) - lu(k,912) * lu(k,1165) + lu(k,1172) = lu(k,1172) - lu(k,913) * lu(k,1165) + lu(k,1173) = lu(k,1173) - lu(k,914) * lu(k,1165) + lu(k,1174) = lu(k,1174) - lu(k,915) * lu(k,1165) + lu(k,1175) = lu(k,1175) - lu(k,916) * lu(k,1165) + lu(k,1176) = lu(k,1176) - lu(k,917) * lu(k,1165) + lu(k,1177) = lu(k,1177) - lu(k,918) * lu(k,1165) + lu(k,1178) = lu(k,1178) - lu(k,919) * lu(k,1165) + lu(k,1179) = lu(k,1179) - lu(k,920) * lu(k,1165) + lu(k,1181) = lu(k,1181) - lu(k,921) * lu(k,1165) + lu(k,1182) = lu(k,1182) - lu(k,922) * lu(k,1165) + lu(k,1258) = lu(k,1258) - lu(k,910) * lu(k,1254) + lu(k,1259) = lu(k,1259) - lu(k,911) * lu(k,1254) + lu(k,1260) = lu(k,1260) - lu(k,912) * lu(k,1254) + lu(k,1261) = lu(k,1261) - lu(k,913) * lu(k,1254) + lu(k,1262) = lu(k,1262) - lu(k,914) * lu(k,1254) + lu(k,1263) = lu(k,1263) - lu(k,915) * lu(k,1254) + lu(k,1264) = lu(k,1264) - lu(k,916) * lu(k,1254) + lu(k,1265) = lu(k,1265) - lu(k,917) * lu(k,1254) + lu(k,1266) = lu(k,1266) - lu(k,918) * lu(k,1254) + lu(k,1267) = lu(k,1267) - lu(k,919) * lu(k,1254) + lu(k,1268) = lu(k,1268) - lu(k,920) * lu(k,1254) + lu(k,1270) = lu(k,1270) - lu(k,921) * lu(k,1254) + lu(k,1271) = lu(k,1271) - lu(k,922) * lu(k,1254) + lu(k,1296) = lu(k,1296) - lu(k,910) * lu(k,1292) + lu(k,1297) = lu(k,1297) - lu(k,911) * lu(k,1292) + lu(k,1298) = lu(k,1298) - lu(k,912) * lu(k,1292) + lu(k,1299) = lu(k,1299) - lu(k,913) * lu(k,1292) + lu(k,1300) = lu(k,1300) - lu(k,914) * lu(k,1292) + lu(k,1301) = lu(k,1301) - lu(k,915) * lu(k,1292) + lu(k,1302) = lu(k,1302) - lu(k,916) * lu(k,1292) + lu(k,1303) = lu(k,1303) - lu(k,917) * lu(k,1292) + lu(k,1304) = lu(k,1304) - lu(k,918) * lu(k,1292) + lu(k,1305) = lu(k,1305) - lu(k,919) * lu(k,1292) + lu(k,1306) = lu(k,1306) - lu(k,920) * lu(k,1292) + lu(k,1308) = lu(k,1308) - lu(k,921) * lu(k,1292) + lu(k,1309) = lu(k,1309) - lu(k,922) * lu(k,1292) + lu(k,1323) = lu(k,1323) - lu(k,910) * lu(k,1320) + lu(k,1324) = lu(k,1324) - lu(k,911) * lu(k,1320) + lu(k,1325) = lu(k,1325) - lu(k,912) * lu(k,1320) + lu(k,1326) = lu(k,1326) - lu(k,913) * lu(k,1320) + lu(k,1327) = lu(k,1327) - lu(k,914) * lu(k,1320) + lu(k,1328) = lu(k,1328) - lu(k,915) * lu(k,1320) + lu(k,1329) = lu(k,1329) - lu(k,916) * lu(k,1320) + lu(k,1330) = lu(k,1330) - lu(k,917) * lu(k,1320) + lu(k,1331) = lu(k,1331) - lu(k,918) * lu(k,1320) + lu(k,1332) = lu(k,1332) - lu(k,919) * lu(k,1320) + lu(k,1333) = lu(k,1333) - lu(k,920) * lu(k,1320) + lu(k,1335) = lu(k,1335) - lu(k,921) * lu(k,1320) + lu(k,1336) = lu(k,1336) - lu(k,922) * lu(k,1320) + lu(k,1347) = lu(k,1347) - lu(k,910) * lu(k,1345) + lu(k,1348) = lu(k,1348) - lu(k,911) * lu(k,1345) + lu(k,1349) = lu(k,1349) - lu(k,912) * lu(k,1345) + lu(k,1350) = lu(k,1350) - lu(k,913) * lu(k,1345) + lu(k,1351) = lu(k,1351) - lu(k,914) * lu(k,1345) + lu(k,1352) = lu(k,1352) - lu(k,915) * lu(k,1345) + lu(k,1353) = lu(k,1353) - lu(k,916) * lu(k,1345) + lu(k,1354) = lu(k,1354) - lu(k,917) * lu(k,1345) + lu(k,1355) = lu(k,1355) - lu(k,918) * lu(k,1345) + lu(k,1356) = lu(k,1356) - lu(k,919) * lu(k,1345) + lu(k,1357) = lu(k,1357) - lu(k,920) * lu(k,1345) + lu(k,1359) = lu(k,1359) - lu(k,921) * lu(k,1345) + lu(k,1360) = lu(k,1360) - lu(k,922) * lu(k,1345) + lu(k,1406) = lu(k,1406) - lu(k,910) * lu(k,1402) + lu(k,1407) = lu(k,1407) - lu(k,911) * lu(k,1402) + lu(k,1408) = lu(k,1408) - lu(k,912) * lu(k,1402) + lu(k,1409) = lu(k,1409) - lu(k,913) * lu(k,1402) + lu(k,1410) = lu(k,1410) - lu(k,914) * lu(k,1402) + lu(k,1411) = lu(k,1411) - lu(k,915) * lu(k,1402) + lu(k,1412) = lu(k,1412) - lu(k,916) * lu(k,1402) + lu(k,1413) = lu(k,1413) - lu(k,917) * lu(k,1402) + lu(k,1414) = lu(k,1414) - lu(k,918) * lu(k,1402) + lu(k,1415) = lu(k,1415) - lu(k,919) * lu(k,1402) + lu(k,1416) = lu(k,1416) - lu(k,920) * lu(k,1402) + lu(k,1418) = lu(k,1418) - lu(k,921) * lu(k,1402) + lu(k,1419) = lu(k,1419) - lu(k,922) * lu(k,1402) + lu(k,1430) = lu(k,1430) - lu(k,910) * lu(k,1426) + lu(k,1431) = lu(k,1431) - lu(k,911) * lu(k,1426) + lu(k,1432) = lu(k,1432) - lu(k,912) * lu(k,1426) + lu(k,1433) = lu(k,1433) - lu(k,913) * lu(k,1426) + lu(k,1434) = lu(k,1434) - lu(k,914) * lu(k,1426) + lu(k,1435) = lu(k,1435) - lu(k,915) * lu(k,1426) + lu(k,1436) = lu(k,1436) - lu(k,916) * lu(k,1426) + lu(k,1437) = lu(k,1437) - lu(k,917) * lu(k,1426) + lu(k,1438) = lu(k,1438) - lu(k,918) * lu(k,1426) + lu(k,1439) = lu(k,1439) - lu(k,919) * lu(k,1426) + lu(k,1440) = lu(k,1440) - lu(k,920) * lu(k,1426) + lu(k,1442) = lu(k,1442) - lu(k,921) * lu(k,1426) + lu(k,1443) = lu(k,1443) - lu(k,922) * lu(k,1426) + lu(k,1475) = lu(k,1475) - lu(k,910) * lu(k,1471) + lu(k,1476) = lu(k,1476) - lu(k,911) * lu(k,1471) + lu(k,1477) = lu(k,1477) - lu(k,912) * lu(k,1471) + lu(k,1478) = lu(k,1478) - lu(k,913) * lu(k,1471) + lu(k,1479) = lu(k,1479) - lu(k,914) * lu(k,1471) + lu(k,1480) = lu(k,1480) - lu(k,915) * lu(k,1471) + lu(k,1481) = lu(k,1481) - lu(k,916) * lu(k,1471) + lu(k,1482) = lu(k,1482) - lu(k,917) * lu(k,1471) + lu(k,1483) = lu(k,1483) - lu(k,918) * lu(k,1471) + lu(k,1484) = lu(k,1484) - lu(k,919) * lu(k,1471) + lu(k,1485) = lu(k,1485) - lu(k,920) * lu(k,1471) + lu(k,1487) = lu(k,1487) - lu(k,921) * lu(k,1471) + lu(k,1488) = lu(k,1488) - lu(k,922) * lu(k,1471) + lu(k,1498) = lu(k,1498) - lu(k,910) * lu(k,1494) + lu(k,1499) = lu(k,1499) - lu(k,911) * lu(k,1494) + lu(k,1500) = lu(k,1500) - lu(k,912) * lu(k,1494) + lu(k,1501) = lu(k,1501) - lu(k,913) * lu(k,1494) + lu(k,1502) = lu(k,1502) - lu(k,914) * lu(k,1494) + lu(k,1503) = lu(k,1503) - lu(k,915) * lu(k,1494) lu(k,1504) = lu(k,1504) - lu(k,916) * lu(k,1494) lu(k,1505) = lu(k,1505) - lu(k,917) * lu(k,1494) lu(k,1506) = lu(k,1506) - lu(k,918) * lu(k,1494) @@ -4784,25 +4796,12 @@ subroutine lu_fac19( avec_len, lu ) lu(k,1508) = lu(k,1508) - lu(k,920) * lu(k,1494) lu(k,1510) = lu(k,1510) - lu(k,921) * lu(k,1494) lu(k,1511) = lu(k,1511) - lu(k,922) * lu(k,1494) - lu(k,1520) = lu(k,1520) - lu(k,910) * lu(k,1519) - lu(k,1521) = lu(k,1521) - lu(k,911) * lu(k,1519) - lu(k,1522) = lu(k,1522) - lu(k,912) * lu(k,1519) - lu(k,1523) = lu(k,1523) - lu(k,913) * lu(k,1519) - lu(k,1524) = lu(k,1524) - lu(k,914) * lu(k,1519) - lu(k,1525) = lu(k,1525) - lu(k,915) * lu(k,1519) - lu(k,1529) = lu(k,1529) - lu(k,916) * lu(k,1519) - lu(k,1530) = lu(k,1530) - lu(k,917) * lu(k,1519) - lu(k,1531) = lu(k,1531) - lu(k,918) * lu(k,1519) - lu(k,1532) = lu(k,1532) - lu(k,919) * lu(k,1519) - lu(k,1533) = lu(k,1533) - lu(k,920) * lu(k,1519) - lu(k,1535) = lu(k,1535) - lu(k,921) * lu(k,1519) - lu(k,1536) = lu(k,1536) - lu(k,922) * lu(k,1519) - lu(k,1541) = lu(k,1541) - lu(k,910) * lu(k,1540) - lu(k,1542) = lu(k,1542) - lu(k,911) * lu(k,1540) - lu(k,1543) = lu(k,1543) - lu(k,912) * lu(k,1540) - lu(k,1544) = lu(k,1544) - lu(k,913) * lu(k,1540) - lu(k,1545) = lu(k,1545) - lu(k,914) * lu(k,1540) - lu(k,1546) = lu(k,1546) - lu(k,915) * lu(k,1540) + lu(k,1544) = lu(k,1544) - lu(k,910) * lu(k,1540) + lu(k,1545) = lu(k,1545) - lu(k,911) * lu(k,1540) + lu(k,1546) = lu(k,1546) - lu(k,912) * lu(k,1540) + lu(k,1547) = lu(k,1547) - lu(k,913) * lu(k,1540) + lu(k,1548) = lu(k,1548) - lu(k,914) * lu(k,1540) + lu(k,1549) = lu(k,1549) - lu(k,915) * lu(k,1540) lu(k,1550) = lu(k,1550) - lu(k,916) * lu(k,1540) lu(k,1551) = lu(k,1551) - lu(k,917) * lu(k,1540) lu(k,1552) = lu(k,1552) - lu(k,918) * lu(k,1540) @@ -4810,12 +4809,12 @@ subroutine lu_fac19( avec_len, lu ) lu(k,1554) = lu(k,1554) - lu(k,920) * lu(k,1540) lu(k,1556) = lu(k,1556) - lu(k,921) * lu(k,1540) lu(k,1557) = lu(k,1557) - lu(k,922) * lu(k,1540) - lu(k,1568) = lu(k,1568) - lu(k,910) * lu(k,1567) - lu(k,1569) = lu(k,1569) - lu(k,911) * lu(k,1567) - lu(k,1570) = lu(k,1570) - lu(k,912) * lu(k,1567) - lu(k,1571) = lu(k,1571) - lu(k,913) * lu(k,1567) - lu(k,1572) = lu(k,1572) - lu(k,914) * lu(k,1567) - lu(k,1573) = lu(k,1573) - lu(k,915) * lu(k,1567) + lu(k,1571) = lu(k,1571) - lu(k,910) * lu(k,1567) + lu(k,1572) = lu(k,1572) - lu(k,911) * lu(k,1567) + lu(k,1573) = lu(k,1573) - lu(k,912) * lu(k,1567) + lu(k,1574) = lu(k,1574) - lu(k,913) * lu(k,1567) + lu(k,1575) = lu(k,1575) - lu(k,914) * lu(k,1567) + lu(k,1576) = lu(k,1576) - lu(k,915) * lu(k,1567) lu(k,1577) = lu(k,1577) - lu(k,916) * lu(k,1567) lu(k,1578) = lu(k,1578) - lu(k,917) * lu(k,1567) lu(k,1579) = lu(k,1579) - lu(k,918) * lu(k,1567) @@ -4823,681 +4822,684 @@ subroutine lu_fac19( avec_len, lu ) lu(k,1581) = lu(k,1581) - lu(k,920) * lu(k,1567) lu(k,1583) = lu(k,1583) - lu(k,921) * lu(k,1567) lu(k,1584) = lu(k,1584) - lu(k,922) * lu(k,1567) - lu(k,932) = 1._r8 / lu(k,932) - lu(k,933) = lu(k,933) * lu(k,932) - lu(k,934) = lu(k,934) * lu(k,932) - lu(k,935) = lu(k,935) * lu(k,932) - lu(k,936) = lu(k,936) * lu(k,932) - lu(k,937) = lu(k,937) * lu(k,932) - lu(k,938) = lu(k,938) * lu(k,932) - lu(k,939) = lu(k,939) * lu(k,932) - lu(k,940) = lu(k,940) * lu(k,932) - lu(k,941) = lu(k,941) * lu(k,932) - lu(k,942) = lu(k,942) * lu(k,932) - lu(k,943) = lu(k,943) * lu(k,932) - lu(k,944) = lu(k,944) * lu(k,932) - lu(k,945) = lu(k,945) * lu(k,932) - lu(k,946) = lu(k,946) * lu(k,932) - lu(k,959) = lu(k,959) - lu(k,933) * lu(k,958) - lu(k,960) = lu(k,960) - lu(k,934) * lu(k,958) - lu(k,961) = lu(k,961) - lu(k,935) * lu(k,958) - lu(k,962) = lu(k,962) - lu(k,936) * lu(k,958) - lu(k,963) = lu(k,963) - lu(k,937) * lu(k,958) - lu(k,964) = lu(k,964) - lu(k,938) * lu(k,958) - lu(k,966) = lu(k,966) - lu(k,939) * lu(k,958) - lu(k,967) = lu(k,967) - lu(k,940) * lu(k,958) - lu(k,968) = lu(k,968) - lu(k,941) * lu(k,958) - lu(k,969) = lu(k,969) - lu(k,942) * lu(k,958) - lu(k,970) = lu(k,970) - lu(k,943) * lu(k,958) - lu(k,971) = lu(k,971) - lu(k,944) * lu(k,958) - lu(k,972) = lu(k,972) - lu(k,945) * lu(k,958) - lu(k,973) = lu(k,973) - lu(k,946) * lu(k,958) - lu(k,995) = lu(k,995) - lu(k,933) * lu(k,994) - lu(k,996) = lu(k,996) - lu(k,934) * lu(k,994) - lu(k,997) = lu(k,997) - lu(k,935) * lu(k,994) - lu(k,998) = lu(k,998) - lu(k,936) * lu(k,994) - lu(k,999) = lu(k,999) - lu(k,937) * lu(k,994) - lu(k,1000) = lu(k,1000) - lu(k,938) * lu(k,994) - lu(k,1002) = lu(k,1002) - lu(k,939) * lu(k,994) - lu(k,1003) = lu(k,1003) - lu(k,940) * lu(k,994) - lu(k,1004) = lu(k,1004) - lu(k,941) * lu(k,994) - lu(k,1005) = lu(k,1005) - lu(k,942) * lu(k,994) - lu(k,1006) = lu(k,1006) - lu(k,943) * lu(k,994) - lu(k,1007) = lu(k,1007) - lu(k,944) * lu(k,994) - lu(k,1009) = lu(k,1009) - lu(k,945) * lu(k,994) - lu(k,1010) = lu(k,1010) - lu(k,946) * lu(k,994) - lu(k,1019) = lu(k,1019) - lu(k,933) * lu(k,1018) - lu(k,1020) = lu(k,1020) - lu(k,934) * lu(k,1018) - lu(k,1021) = lu(k,1021) - lu(k,935) * lu(k,1018) - lu(k,1022) = lu(k,1022) - lu(k,936) * lu(k,1018) - lu(k,1023) = lu(k,1023) - lu(k,937) * lu(k,1018) - lu(k,1024) = lu(k,1024) - lu(k,938) * lu(k,1018) + lu(k,931) = 1._r8 / lu(k,931) + lu(k,932) = lu(k,932) * lu(k,931) + lu(k,933) = lu(k,933) * lu(k,931) + lu(k,934) = lu(k,934) * lu(k,931) + lu(k,935) = lu(k,935) * lu(k,931) + lu(k,936) = lu(k,936) * lu(k,931) + lu(k,937) = lu(k,937) * lu(k,931) + lu(k,938) = lu(k,938) * lu(k,931) + lu(k,939) = lu(k,939) * lu(k,931) + lu(k,940) = lu(k,940) * lu(k,931) + lu(k,941) = lu(k,941) * lu(k,931) + lu(k,942) = lu(k,942) * lu(k,931) + lu(k,943) = lu(k,943) * lu(k,931) + lu(k,944) = lu(k,944) * lu(k,931) + lu(k,945) = lu(k,945) * lu(k,931) + lu(k,946) = lu(k,946) * lu(k,931) + lu(k,947) = lu(k,947) * lu(k,931) + lu(k,973) = lu(k,973) - lu(k,932) * lu(k,972) + lu(k,974) = lu(k,974) - lu(k,933) * lu(k,972) + lu(k,975) = lu(k,975) - lu(k,934) * lu(k,972) + lu(k,976) = lu(k,976) - lu(k,935) * lu(k,972) + lu(k,977) = lu(k,977) - lu(k,936) * lu(k,972) + lu(k,978) = lu(k,978) - lu(k,937) * lu(k,972) + lu(k,979) = lu(k,979) - lu(k,938) * lu(k,972) + lu(k,980) = lu(k,980) - lu(k,939) * lu(k,972) + lu(k,981) = lu(k,981) - lu(k,940) * lu(k,972) + lu(k,982) = lu(k,982) - lu(k,941) * lu(k,972) + lu(k,983) = lu(k,983) - lu(k,942) * lu(k,972) + lu(k,984) = lu(k,984) - lu(k,943) * lu(k,972) + lu(k,985) = lu(k,985) - lu(k,944) * lu(k,972) + lu(k,986) = lu(k,986) - lu(k,945) * lu(k,972) + lu(k,987) = lu(k,987) - lu(k,946) * lu(k,972) + lu(k,988) = lu(k,988) - lu(k,947) * lu(k,972) + lu(k,1019) = lu(k,1019) - lu(k,932) * lu(k,1018) + lu(k,1020) = lu(k,1020) - lu(k,933) * lu(k,1018) + lu(k,1021) = lu(k,1021) - lu(k,934) * lu(k,1018) + lu(k,1022) = lu(k,1022) - lu(k,935) * lu(k,1018) + lu(k,1023) = lu(k,1023) - lu(k,936) * lu(k,1018) + lu(k,1024) = lu(k,1024) - lu(k,937) * lu(k,1018) + lu(k,1025) = lu(k,1025) - lu(k,938) * lu(k,1018) lu(k,1026) = lu(k,1026) - lu(k,939) * lu(k,1018) lu(k,1027) = lu(k,1027) - lu(k,940) * lu(k,1018) lu(k,1028) = lu(k,1028) - lu(k,941) * lu(k,1018) lu(k,1029) = lu(k,1029) - lu(k,942) * lu(k,1018) lu(k,1030) = lu(k,1030) - lu(k,943) * lu(k,1018) lu(k,1031) = lu(k,1031) - lu(k,944) * lu(k,1018) - lu(k,1033) = lu(k,1033) - lu(k,945) * lu(k,1018) - lu(k,1034) = lu(k,1034) - lu(k,946) * lu(k,1018) - lu(k,1078) = lu(k,1078) - lu(k,933) * lu(k,1077) - lu(k,1079) = lu(k,1079) - lu(k,934) * lu(k,1077) - lu(k,1080) = lu(k,1080) - lu(k,935) * lu(k,1077) - lu(k,1081) = lu(k,1081) - lu(k,936) * lu(k,1077) - lu(k,1082) = lu(k,1082) - lu(k,937) * lu(k,1077) - lu(k,1083) = lu(k,1083) - lu(k,938) * lu(k,1077) - lu(k,1085) = lu(k,1085) - lu(k,939) * lu(k,1077) - lu(k,1086) = lu(k,1086) - lu(k,940) * lu(k,1077) - lu(k,1087) = lu(k,1087) - lu(k,941) * lu(k,1077) - lu(k,1088) = lu(k,1088) - lu(k,942) * lu(k,1077) - lu(k,1089) = lu(k,1089) - lu(k,943) * lu(k,1077) - lu(k,1090) = lu(k,1090) - lu(k,944) * lu(k,1077) - lu(k,1092) = lu(k,1092) - lu(k,945) * lu(k,1077) - lu(k,1093) = lu(k,1093) - lu(k,946) * lu(k,1077) - lu(k,1124) = lu(k,1124) - lu(k,933) * lu(k,1123) - lu(k,1125) = lu(k,1125) - lu(k,934) * lu(k,1123) - lu(k,1126) = lu(k,1126) - lu(k,935) * lu(k,1123) - lu(k,1127) = lu(k,1127) - lu(k,936) * lu(k,1123) - lu(k,1128) = lu(k,1128) - lu(k,937) * lu(k,1123) - lu(k,1129) = lu(k,1129) - lu(k,938) * lu(k,1123) - lu(k,1131) = lu(k,1131) - lu(k,939) * lu(k,1123) - lu(k,1132) = lu(k,1132) - lu(k,940) * lu(k,1123) - lu(k,1133) = lu(k,1133) - lu(k,941) * lu(k,1123) - lu(k,1134) = lu(k,1134) - lu(k,942) * lu(k,1123) - lu(k,1135) = lu(k,1135) - lu(k,943) * lu(k,1123) - lu(k,1136) = lu(k,1136) - lu(k,944) * lu(k,1123) - lu(k,1138) = lu(k,1138) - lu(k,945) * lu(k,1123) - lu(k,1139) = lu(k,1139) - lu(k,946) * lu(k,1123) - lu(k,1147) = lu(k,1147) - lu(k,933) * lu(k,1146) - lu(k,1148) = lu(k,1148) - lu(k,934) * lu(k,1146) - lu(k,1149) = lu(k,1149) - lu(k,935) * lu(k,1146) - lu(k,1150) = lu(k,1150) - lu(k,936) * lu(k,1146) - lu(k,1151) = lu(k,1151) - lu(k,937) * lu(k,1146) - lu(k,1152) = lu(k,1152) - lu(k,938) * lu(k,1146) - lu(k,1154) = lu(k,1154) - lu(k,939) * lu(k,1146) - lu(k,1155) = lu(k,1155) - lu(k,940) * lu(k,1146) - lu(k,1156) = lu(k,1156) - lu(k,941) * lu(k,1146) - lu(k,1157) = lu(k,1157) - lu(k,942) * lu(k,1146) - lu(k,1158) = lu(k,1158) - lu(k,943) * lu(k,1146) - lu(k,1159) = lu(k,1159) - lu(k,944) * lu(k,1146) - lu(k,1161) = lu(k,1161) - lu(k,945) * lu(k,1146) - lu(k,1162) = lu(k,1162) - lu(k,946) * lu(k,1146) - lu(k,1188) = lu(k,1188) - lu(k,933) * lu(k,1187) - lu(k,1189) = lu(k,1189) - lu(k,934) * lu(k,1187) - lu(k,1190) = lu(k,1190) - lu(k,935) * lu(k,1187) - lu(k,1191) = lu(k,1191) - lu(k,936) * lu(k,1187) - lu(k,1192) = lu(k,1192) - lu(k,937) * lu(k,1187) - lu(k,1193) = lu(k,1193) - lu(k,938) * lu(k,1187) - lu(k,1195) = lu(k,1195) - lu(k,939) * lu(k,1187) - lu(k,1196) = lu(k,1196) - lu(k,940) * lu(k,1187) - lu(k,1197) = lu(k,1197) - lu(k,941) * lu(k,1187) - lu(k,1198) = lu(k,1198) - lu(k,942) * lu(k,1187) - lu(k,1199) = lu(k,1199) - lu(k,943) * lu(k,1187) - lu(k,1200) = lu(k,1200) - lu(k,944) * lu(k,1187) - lu(k,1202) = lu(k,1202) - lu(k,945) * lu(k,1187) - lu(k,1203) = lu(k,1203) - lu(k,946) * lu(k,1187) - lu(k,1234) = lu(k,1234) - lu(k,933) * lu(k,1233) - lu(k,1235) = lu(k,1235) - lu(k,934) * lu(k,1233) - lu(k,1236) = lu(k,1236) - lu(k,935) * lu(k,1233) - lu(k,1237) = lu(k,1237) - lu(k,936) * lu(k,1233) - lu(k,1238) = lu(k,1238) - lu(k,937) * lu(k,1233) - lu(k,1239) = lu(k,1239) - lu(k,938) * lu(k,1233) - lu(k,1241) = lu(k,1241) - lu(k,939) * lu(k,1233) - lu(k,1242) = lu(k,1242) - lu(k,940) * lu(k,1233) - lu(k,1243) = lu(k,1243) - lu(k,941) * lu(k,1233) - lu(k,1244) = lu(k,1244) - lu(k,942) * lu(k,1233) - lu(k,1245) = lu(k,1245) - lu(k,943) * lu(k,1233) - lu(k,1246) = lu(k,1246) - lu(k,944) * lu(k,1233) - lu(k,1248) = lu(k,1248) - lu(k,945) * lu(k,1233) - lu(k,1249) = lu(k,1249) - lu(k,946) * lu(k,1233) - lu(k,1276) = lu(k,1276) - lu(k,933) * lu(k,1275) - lu(k,1277) = lu(k,1277) - lu(k,934) * lu(k,1275) - lu(k,1278) = lu(k,1278) - lu(k,935) * lu(k,1275) - lu(k,1279) = lu(k,1279) - lu(k,936) * lu(k,1275) - lu(k,1280) = lu(k,1280) - lu(k,937) * lu(k,1275) - lu(k,1281) = lu(k,1281) - lu(k,938) * lu(k,1275) - lu(k,1283) = lu(k,1283) - lu(k,939) * lu(k,1275) - lu(k,1284) = lu(k,1284) - lu(k,940) * lu(k,1275) - lu(k,1285) = lu(k,1285) - lu(k,941) * lu(k,1275) - lu(k,1286) = lu(k,1286) - lu(k,942) * lu(k,1275) - lu(k,1287) = lu(k,1287) - lu(k,943) * lu(k,1275) - lu(k,1288) = lu(k,1288) - lu(k,944) * lu(k,1275) - lu(k,1290) = lu(k,1290) - lu(k,945) * lu(k,1275) - lu(k,1291) = lu(k,1291) - lu(k,946) * lu(k,1275) - lu(k,1314) = lu(k,1314) - lu(k,933) * lu(k,1313) - lu(k,1315) = lu(k,1315) - lu(k,934) * lu(k,1313) - lu(k,1316) = lu(k,1316) - lu(k,935) * lu(k,1313) - lu(k,1317) = lu(k,1317) - lu(k,936) * lu(k,1313) - lu(k,1318) = lu(k,1318) - lu(k,937) * lu(k,1313) - lu(k,1319) = lu(k,1319) - lu(k,938) * lu(k,1313) - lu(k,1321) = lu(k,1321) - lu(k,939) * lu(k,1313) - lu(k,1322) = lu(k,1322) - lu(k,940) * lu(k,1313) - lu(k,1323) = lu(k,1323) - lu(k,941) * lu(k,1313) - lu(k,1324) = lu(k,1324) - lu(k,942) * lu(k,1313) - lu(k,1325) = lu(k,1325) - lu(k,943) * lu(k,1313) - lu(k,1326) = lu(k,1326) - lu(k,944) * lu(k,1313) - lu(k,1328) = lu(k,1328) - lu(k,945) * lu(k,1313) - lu(k,1329) = lu(k,1329) - lu(k,946) * lu(k,1313) - lu(k,1403) = lu(k,1403) - lu(k,933) * lu(k,1402) - lu(k,1404) = lu(k,1404) - lu(k,934) * lu(k,1402) - lu(k,1405) = lu(k,1405) - lu(k,935) * lu(k,1402) - lu(k,1406) = lu(k,1406) - lu(k,936) * lu(k,1402) - lu(k,1407) = lu(k,1407) - lu(k,937) * lu(k,1402) - lu(k,1408) = lu(k,1408) - lu(k,938) * lu(k,1402) - lu(k,1410) = lu(k,1410) - lu(k,939) * lu(k,1402) - lu(k,1411) = lu(k,1411) - lu(k,940) * lu(k,1402) - lu(k,1412) = lu(k,1412) - lu(k,941) * lu(k,1402) - lu(k,1413) = lu(k,1413) - lu(k,942) * lu(k,1402) - lu(k,1414) = lu(k,1414) - lu(k,943) * lu(k,1402) - lu(k,1415) = lu(k,1415) - lu(k,944) * lu(k,1402) - lu(k,1417) = lu(k,1417) - lu(k,945) * lu(k,1402) - lu(k,1418) = lu(k,1418) - lu(k,946) * lu(k,1402) - lu(k,1448) = lu(k,1448) - lu(k,933) * lu(k,1447) - lu(k,1449) = lu(k,1449) - lu(k,934) * lu(k,1447) - lu(k,1450) = lu(k,1450) - lu(k,935) * lu(k,1447) - lu(k,1451) = lu(k,1451) - lu(k,936) * lu(k,1447) - lu(k,1452) = lu(k,1452) - lu(k,937) * lu(k,1447) - lu(k,1453) = lu(k,1453) - lu(k,938) * lu(k,1447) - lu(k,1455) = lu(k,1455) - lu(k,939) * lu(k,1447) - lu(k,1456) = lu(k,1456) - lu(k,940) * lu(k,1447) - lu(k,1457) = lu(k,1457) - lu(k,941) * lu(k,1447) - lu(k,1458) = lu(k,1458) - lu(k,942) * lu(k,1447) - lu(k,1459) = lu(k,1459) - lu(k,943) * lu(k,1447) - lu(k,1460) = lu(k,1460) - lu(k,944) * lu(k,1447) - lu(k,1462) = lu(k,1462) - lu(k,945) * lu(k,1447) - lu(k,1463) = lu(k,1463) - lu(k,946) * lu(k,1447) - lu(k,1496) = lu(k,1496) - lu(k,933) * lu(k,1495) - lu(k,1497) = lu(k,1497) - lu(k,934) * lu(k,1495) - lu(k,1498) = lu(k,1498) - lu(k,935) * lu(k,1495) - lu(k,1499) = lu(k,1499) - lu(k,936) * lu(k,1495) - lu(k,1500) = lu(k,1500) - lu(k,937) * lu(k,1495) - lu(k,1501) = lu(k,1501) - lu(k,938) * lu(k,1495) + lu(k,1032) = lu(k,1032) - lu(k,945) * lu(k,1018) + lu(k,1033) = lu(k,1033) - lu(k,946) * lu(k,1018) + lu(k,1034) = lu(k,1034) - lu(k,947) * lu(k,1018) + lu(k,1040) = lu(k,1040) - lu(k,932) * lu(k,1039) + lu(k,1041) = lu(k,1041) - lu(k,933) * lu(k,1039) + lu(k,1042) = lu(k,1042) - lu(k,934) * lu(k,1039) + lu(k,1043) = lu(k,1043) - lu(k,935) * lu(k,1039) + lu(k,1044) = lu(k,1044) - lu(k,936) * lu(k,1039) + lu(k,1045) = lu(k,1045) - lu(k,937) * lu(k,1039) + lu(k,1046) = lu(k,1046) - lu(k,938) * lu(k,1039) + lu(k,1047) = lu(k,1047) - lu(k,939) * lu(k,1039) + lu(k,1048) = lu(k,1048) - lu(k,940) * lu(k,1039) + lu(k,1049) = lu(k,1049) - lu(k,941) * lu(k,1039) + lu(k,1050) = lu(k,1050) - lu(k,942) * lu(k,1039) + lu(k,1051) = lu(k,1051) - lu(k,943) * lu(k,1039) + lu(k,1052) = lu(k,1052) - lu(k,944) * lu(k,1039) + lu(k,1053) = lu(k,1053) - lu(k,945) * lu(k,1039) + lu(k,1054) = lu(k,1054) - lu(k,946) * lu(k,1039) + lu(k,1055) = lu(k,1055) - lu(k,947) * lu(k,1039) + lu(k,1077) = lu(k,1077) - lu(k,932) * lu(k,1076) + lu(k,1078) = lu(k,1078) - lu(k,933) * lu(k,1076) + lu(k,1079) = lu(k,1079) - lu(k,934) * lu(k,1076) + lu(k,1080) = lu(k,1080) - lu(k,935) * lu(k,1076) + lu(k,1081) = lu(k,1081) - lu(k,936) * lu(k,1076) + lu(k,1082) = lu(k,1082) - lu(k,937) * lu(k,1076) + lu(k,1083) = lu(k,1083) - lu(k,938) * lu(k,1076) + lu(k,1084) = lu(k,1084) - lu(k,939) * lu(k,1076) + lu(k,1085) = lu(k,1085) - lu(k,940) * lu(k,1076) + lu(k,1086) = lu(k,1086) - lu(k,941) * lu(k,1076) + lu(k,1087) = lu(k,1087) - lu(k,942) * lu(k,1076) + lu(k,1088) = lu(k,1088) - lu(k,943) * lu(k,1076) + lu(k,1089) = lu(k,1089) - lu(k,944) * lu(k,1076) + lu(k,1090) = lu(k,1090) - lu(k,945) * lu(k,1076) + lu(k,1091) = lu(k,1091) - lu(k,946) * lu(k,1076) + lu(k,1092) = lu(k,1092) - lu(k,947) * lu(k,1076) + lu(k,1125) = lu(k,1125) - lu(k,932) * lu(k,1124) + lu(k,1126) = lu(k,1126) - lu(k,933) * lu(k,1124) + lu(k,1127) = lu(k,1127) - lu(k,934) * lu(k,1124) + lu(k,1128) = lu(k,1128) - lu(k,935) * lu(k,1124) + lu(k,1129) = lu(k,1129) - lu(k,936) * lu(k,1124) + lu(k,1130) = lu(k,1130) - lu(k,937) * lu(k,1124) + lu(k,1131) = lu(k,1131) - lu(k,938) * lu(k,1124) + lu(k,1132) = lu(k,1132) - lu(k,939) * lu(k,1124) + lu(k,1133) = lu(k,1133) - lu(k,940) * lu(k,1124) + lu(k,1134) = lu(k,1134) - lu(k,941) * lu(k,1124) + lu(k,1135) = lu(k,1135) - lu(k,942) * lu(k,1124) + lu(k,1136) = lu(k,1136) - lu(k,943) * lu(k,1124) + lu(k,1137) = lu(k,1137) - lu(k,944) * lu(k,1124) + lu(k,1138) = lu(k,1138) - lu(k,945) * lu(k,1124) + lu(k,1139) = lu(k,1139) - lu(k,946) * lu(k,1124) + lu(k,1140) = lu(k,1140) - lu(k,947) * lu(k,1124) + lu(k,1167) = lu(k,1167) - lu(k,932) * lu(k,1166) + lu(k,1168) = lu(k,1168) - lu(k,933) * lu(k,1166) + lu(k,1169) = lu(k,1169) - lu(k,934) * lu(k,1166) + lu(k,1170) = lu(k,1170) - lu(k,935) * lu(k,1166) + lu(k,1171) = lu(k,1171) - lu(k,936) * lu(k,1166) + lu(k,1172) = lu(k,1172) - lu(k,937) * lu(k,1166) + lu(k,1173) = lu(k,1173) - lu(k,938) * lu(k,1166) + lu(k,1174) = lu(k,1174) - lu(k,939) * lu(k,1166) + lu(k,1175) = lu(k,1175) - lu(k,940) * lu(k,1166) + lu(k,1176) = lu(k,1176) - lu(k,941) * lu(k,1166) + lu(k,1177) = lu(k,1177) - lu(k,942) * lu(k,1166) + lu(k,1178) = lu(k,1178) - lu(k,943) * lu(k,1166) + lu(k,1179) = lu(k,1179) - lu(k,944) * lu(k,1166) + lu(k,1180) = lu(k,1180) - lu(k,945) * lu(k,1166) + lu(k,1181) = lu(k,1181) - lu(k,946) * lu(k,1166) + lu(k,1182) = lu(k,1182) - lu(k,947) * lu(k,1166) + lu(k,1256) = lu(k,1256) - lu(k,932) * lu(k,1255) + lu(k,1257) = lu(k,1257) - lu(k,933) * lu(k,1255) + lu(k,1258) = lu(k,1258) - lu(k,934) * lu(k,1255) + lu(k,1259) = lu(k,1259) - lu(k,935) * lu(k,1255) + lu(k,1260) = lu(k,1260) - lu(k,936) * lu(k,1255) + lu(k,1261) = lu(k,1261) - lu(k,937) * lu(k,1255) + lu(k,1262) = lu(k,1262) - lu(k,938) * lu(k,1255) + lu(k,1263) = lu(k,1263) - lu(k,939) * lu(k,1255) + lu(k,1264) = lu(k,1264) - lu(k,940) * lu(k,1255) + lu(k,1265) = lu(k,1265) - lu(k,941) * lu(k,1255) + lu(k,1266) = lu(k,1266) - lu(k,942) * lu(k,1255) + lu(k,1267) = lu(k,1267) - lu(k,943) * lu(k,1255) + lu(k,1268) = lu(k,1268) - lu(k,944) * lu(k,1255) + lu(k,1269) = lu(k,1269) - lu(k,945) * lu(k,1255) + lu(k,1270) = lu(k,1270) - lu(k,946) * lu(k,1255) + lu(k,1271) = lu(k,1271) - lu(k,947) * lu(k,1255) + lu(k,1294) = lu(k,1294) - lu(k,932) * lu(k,1293) + lu(k,1295) = lu(k,1295) - lu(k,933) * lu(k,1293) + lu(k,1296) = lu(k,1296) - lu(k,934) * lu(k,1293) + lu(k,1297) = lu(k,1297) - lu(k,935) * lu(k,1293) + lu(k,1298) = lu(k,1298) - lu(k,936) * lu(k,1293) + lu(k,1299) = lu(k,1299) - lu(k,937) * lu(k,1293) + lu(k,1300) = lu(k,1300) - lu(k,938) * lu(k,1293) + lu(k,1301) = lu(k,1301) - lu(k,939) * lu(k,1293) + lu(k,1302) = lu(k,1302) - lu(k,940) * lu(k,1293) + lu(k,1303) = lu(k,1303) - lu(k,941) * lu(k,1293) + lu(k,1304) = lu(k,1304) - lu(k,942) * lu(k,1293) + lu(k,1305) = lu(k,1305) - lu(k,943) * lu(k,1293) + lu(k,1306) = lu(k,1306) - lu(k,944) * lu(k,1293) + lu(k,1307) = lu(k,1307) - lu(k,945) * lu(k,1293) + lu(k,1308) = lu(k,1308) - lu(k,946) * lu(k,1293) + lu(k,1309) = lu(k,1309) - lu(k,947) * lu(k,1293) + lu(k,1404) = lu(k,1404) - lu(k,932) * lu(k,1403) + lu(k,1405) = lu(k,1405) - lu(k,933) * lu(k,1403) + lu(k,1406) = lu(k,1406) - lu(k,934) * lu(k,1403) + lu(k,1407) = lu(k,1407) - lu(k,935) * lu(k,1403) + lu(k,1408) = lu(k,1408) - lu(k,936) * lu(k,1403) + lu(k,1409) = lu(k,1409) - lu(k,937) * lu(k,1403) + lu(k,1410) = lu(k,1410) - lu(k,938) * lu(k,1403) + lu(k,1411) = lu(k,1411) - lu(k,939) * lu(k,1403) + lu(k,1412) = lu(k,1412) - lu(k,940) * lu(k,1403) + lu(k,1413) = lu(k,1413) - lu(k,941) * lu(k,1403) + lu(k,1414) = lu(k,1414) - lu(k,942) * lu(k,1403) + lu(k,1415) = lu(k,1415) - lu(k,943) * lu(k,1403) + lu(k,1416) = lu(k,1416) - lu(k,944) * lu(k,1403) + lu(k,1417) = lu(k,1417) - lu(k,945) * lu(k,1403) + lu(k,1418) = lu(k,1418) - lu(k,946) * lu(k,1403) + lu(k,1419) = lu(k,1419) - lu(k,947) * lu(k,1403) + lu(k,1428) = lu(k,1428) - lu(k,932) * lu(k,1427) + lu(k,1429) = lu(k,1429) - lu(k,933) * lu(k,1427) + lu(k,1430) = lu(k,1430) - lu(k,934) * lu(k,1427) + lu(k,1431) = lu(k,1431) - lu(k,935) * lu(k,1427) + lu(k,1432) = lu(k,1432) - lu(k,936) * lu(k,1427) + lu(k,1433) = lu(k,1433) - lu(k,937) * lu(k,1427) + lu(k,1434) = lu(k,1434) - lu(k,938) * lu(k,1427) + lu(k,1435) = lu(k,1435) - lu(k,939) * lu(k,1427) + lu(k,1436) = lu(k,1436) - lu(k,940) * lu(k,1427) + lu(k,1437) = lu(k,1437) - lu(k,941) * lu(k,1427) + lu(k,1438) = lu(k,1438) - lu(k,942) * lu(k,1427) + lu(k,1439) = lu(k,1439) - lu(k,943) * lu(k,1427) + lu(k,1440) = lu(k,1440) - lu(k,944) * lu(k,1427) + lu(k,1441) = lu(k,1441) - lu(k,945) * lu(k,1427) + lu(k,1442) = lu(k,1442) - lu(k,946) * lu(k,1427) + lu(k,1443) = lu(k,1443) - lu(k,947) * lu(k,1427) + lu(k,1473) = lu(k,1473) - lu(k,932) * lu(k,1472) + lu(k,1474) = lu(k,1474) - lu(k,933) * lu(k,1472) + lu(k,1475) = lu(k,1475) - lu(k,934) * lu(k,1472) + lu(k,1476) = lu(k,1476) - lu(k,935) * lu(k,1472) + lu(k,1477) = lu(k,1477) - lu(k,936) * lu(k,1472) + lu(k,1478) = lu(k,1478) - lu(k,937) * lu(k,1472) + lu(k,1479) = lu(k,1479) - lu(k,938) * lu(k,1472) + lu(k,1480) = lu(k,1480) - lu(k,939) * lu(k,1472) + lu(k,1481) = lu(k,1481) - lu(k,940) * lu(k,1472) + lu(k,1482) = lu(k,1482) - lu(k,941) * lu(k,1472) + lu(k,1483) = lu(k,1483) - lu(k,942) * lu(k,1472) + lu(k,1484) = lu(k,1484) - lu(k,943) * lu(k,1472) + lu(k,1485) = lu(k,1485) - lu(k,944) * lu(k,1472) + lu(k,1486) = lu(k,1486) - lu(k,945) * lu(k,1472) + lu(k,1487) = lu(k,1487) - lu(k,946) * lu(k,1472) + lu(k,1488) = lu(k,1488) - lu(k,947) * lu(k,1472) + lu(k,1496) = lu(k,1496) - lu(k,932) * lu(k,1495) + lu(k,1497) = lu(k,1497) - lu(k,933) * lu(k,1495) + lu(k,1498) = lu(k,1498) - lu(k,934) * lu(k,1495) + lu(k,1499) = lu(k,1499) - lu(k,935) * lu(k,1495) + lu(k,1500) = lu(k,1500) - lu(k,936) * lu(k,1495) + lu(k,1501) = lu(k,1501) - lu(k,937) * lu(k,1495) + lu(k,1502) = lu(k,1502) - lu(k,938) * lu(k,1495) lu(k,1503) = lu(k,1503) - lu(k,939) * lu(k,1495) lu(k,1504) = lu(k,1504) - lu(k,940) * lu(k,1495) lu(k,1505) = lu(k,1505) - lu(k,941) * lu(k,1495) lu(k,1506) = lu(k,1506) - lu(k,942) * lu(k,1495) lu(k,1507) = lu(k,1507) - lu(k,943) * lu(k,1495) lu(k,1508) = lu(k,1508) - lu(k,944) * lu(k,1495) - lu(k,1510) = lu(k,1510) - lu(k,945) * lu(k,1495) - lu(k,1511) = lu(k,1511) - lu(k,946) * lu(k,1495) - lu(k,1521) = lu(k,1521) - lu(k,933) * lu(k,1520) - lu(k,1522) = lu(k,1522) - lu(k,934) * lu(k,1520) - lu(k,1523) = lu(k,1523) - lu(k,935) * lu(k,1520) - lu(k,1524) = lu(k,1524) - lu(k,936) * lu(k,1520) - lu(k,1525) = lu(k,1525) - lu(k,937) * lu(k,1520) - lu(k,1526) = lu(k,1526) - lu(k,938) * lu(k,1520) - lu(k,1528) = lu(k,1528) - lu(k,939) * lu(k,1520) - lu(k,1529) = lu(k,1529) - lu(k,940) * lu(k,1520) - lu(k,1530) = lu(k,1530) - lu(k,941) * lu(k,1520) - lu(k,1531) = lu(k,1531) - lu(k,942) * lu(k,1520) - lu(k,1532) = lu(k,1532) - lu(k,943) * lu(k,1520) - lu(k,1533) = lu(k,1533) - lu(k,944) * lu(k,1520) - lu(k,1535) = lu(k,1535) - lu(k,945) * lu(k,1520) - lu(k,1536) = lu(k,1536) - lu(k,946) * lu(k,1520) - lu(k,1542) = lu(k,1542) - lu(k,933) * lu(k,1541) - lu(k,1543) = lu(k,1543) - lu(k,934) * lu(k,1541) - lu(k,1544) = lu(k,1544) - lu(k,935) * lu(k,1541) - lu(k,1545) = lu(k,1545) - lu(k,936) * lu(k,1541) - lu(k,1546) = lu(k,1546) - lu(k,937) * lu(k,1541) - lu(k,1547) = lu(k,1547) - lu(k,938) * lu(k,1541) + lu(k,1509) = lu(k,1509) - lu(k,945) * lu(k,1495) + lu(k,1510) = lu(k,1510) - lu(k,946) * lu(k,1495) + lu(k,1511) = lu(k,1511) - lu(k,947) * lu(k,1495) + lu(k,1542) = lu(k,1542) - lu(k,932) * lu(k,1541) + lu(k,1543) = lu(k,1543) - lu(k,933) * lu(k,1541) + lu(k,1544) = lu(k,1544) - lu(k,934) * lu(k,1541) + lu(k,1545) = lu(k,1545) - lu(k,935) * lu(k,1541) + lu(k,1546) = lu(k,1546) - lu(k,936) * lu(k,1541) + lu(k,1547) = lu(k,1547) - lu(k,937) * lu(k,1541) + lu(k,1548) = lu(k,1548) - lu(k,938) * lu(k,1541) lu(k,1549) = lu(k,1549) - lu(k,939) * lu(k,1541) lu(k,1550) = lu(k,1550) - lu(k,940) * lu(k,1541) lu(k,1551) = lu(k,1551) - lu(k,941) * lu(k,1541) lu(k,1552) = lu(k,1552) - lu(k,942) * lu(k,1541) lu(k,1553) = lu(k,1553) - lu(k,943) * lu(k,1541) lu(k,1554) = lu(k,1554) - lu(k,944) * lu(k,1541) - lu(k,1556) = lu(k,1556) - lu(k,945) * lu(k,1541) - lu(k,1557) = lu(k,1557) - lu(k,946) * lu(k,1541) - lu(k,1569) = lu(k,1569) - lu(k,933) * lu(k,1568) - lu(k,1570) = lu(k,1570) - lu(k,934) * lu(k,1568) - lu(k,1571) = lu(k,1571) - lu(k,935) * lu(k,1568) - lu(k,1572) = lu(k,1572) - lu(k,936) * lu(k,1568) - lu(k,1573) = lu(k,1573) - lu(k,937) * lu(k,1568) - lu(k,1574) = lu(k,1574) - lu(k,938) * lu(k,1568) + lu(k,1555) = lu(k,1555) - lu(k,945) * lu(k,1541) + lu(k,1556) = lu(k,1556) - lu(k,946) * lu(k,1541) + lu(k,1557) = lu(k,1557) - lu(k,947) * lu(k,1541) + lu(k,1569) = lu(k,1569) - lu(k,932) * lu(k,1568) + lu(k,1570) = lu(k,1570) - lu(k,933) * lu(k,1568) + lu(k,1571) = lu(k,1571) - lu(k,934) * lu(k,1568) + lu(k,1572) = lu(k,1572) - lu(k,935) * lu(k,1568) + lu(k,1573) = lu(k,1573) - lu(k,936) * lu(k,1568) + lu(k,1574) = lu(k,1574) - lu(k,937) * lu(k,1568) + lu(k,1575) = lu(k,1575) - lu(k,938) * lu(k,1568) lu(k,1576) = lu(k,1576) - lu(k,939) * lu(k,1568) lu(k,1577) = lu(k,1577) - lu(k,940) * lu(k,1568) lu(k,1578) = lu(k,1578) - lu(k,941) * lu(k,1568) lu(k,1579) = lu(k,1579) - lu(k,942) * lu(k,1568) lu(k,1580) = lu(k,1580) - lu(k,943) * lu(k,1568) lu(k,1581) = lu(k,1581) - lu(k,944) * lu(k,1568) - lu(k,1583) = lu(k,1583) - lu(k,945) * lu(k,1568) - lu(k,1584) = lu(k,1584) - lu(k,946) * lu(k,1568) - lu(k,959) = 1._r8 / lu(k,959) - lu(k,960) = lu(k,960) * lu(k,959) - lu(k,961) = lu(k,961) * lu(k,959) - lu(k,962) = lu(k,962) * lu(k,959) - lu(k,963) = lu(k,963) * lu(k,959) - lu(k,964) = lu(k,964) * lu(k,959) - lu(k,965) = lu(k,965) * lu(k,959) - lu(k,966) = lu(k,966) * lu(k,959) - lu(k,967) = lu(k,967) * lu(k,959) - lu(k,968) = lu(k,968) * lu(k,959) - lu(k,969) = lu(k,969) * lu(k,959) - lu(k,970) = lu(k,970) * lu(k,959) - lu(k,971) = lu(k,971) * lu(k,959) - lu(k,972) = lu(k,972) * lu(k,959) - lu(k,973) = lu(k,973) * lu(k,959) - lu(k,996) = lu(k,996) - lu(k,960) * lu(k,995) - lu(k,997) = lu(k,997) - lu(k,961) * lu(k,995) - lu(k,998) = lu(k,998) - lu(k,962) * lu(k,995) - lu(k,999) = lu(k,999) - lu(k,963) * lu(k,995) - lu(k,1000) = lu(k,1000) - lu(k,964) * lu(k,995) - lu(k,1001) = lu(k,1001) - lu(k,965) * lu(k,995) - lu(k,1002) = lu(k,1002) - lu(k,966) * lu(k,995) - lu(k,1003) = lu(k,1003) - lu(k,967) * lu(k,995) - lu(k,1004) = lu(k,1004) - lu(k,968) * lu(k,995) - lu(k,1005) = lu(k,1005) - lu(k,969) * lu(k,995) - lu(k,1006) = lu(k,1006) - lu(k,970) * lu(k,995) - lu(k,1007) = lu(k,1007) - lu(k,971) * lu(k,995) - lu(k,1009) = lu(k,1009) - lu(k,972) * lu(k,995) - lu(k,1010) = lu(k,1010) - lu(k,973) * lu(k,995) - lu(k,1020) = lu(k,1020) - lu(k,960) * lu(k,1019) - lu(k,1021) = lu(k,1021) - lu(k,961) * lu(k,1019) - lu(k,1022) = lu(k,1022) - lu(k,962) * lu(k,1019) - lu(k,1023) = lu(k,1023) - lu(k,963) * lu(k,1019) - lu(k,1024) = lu(k,1024) - lu(k,964) * lu(k,1019) - lu(k,1025) = lu(k,1025) - lu(k,965) * lu(k,1019) - lu(k,1026) = lu(k,1026) - lu(k,966) * lu(k,1019) - lu(k,1027) = lu(k,1027) - lu(k,967) * lu(k,1019) - lu(k,1028) = lu(k,1028) - lu(k,968) * lu(k,1019) - lu(k,1029) = lu(k,1029) - lu(k,969) * lu(k,1019) - lu(k,1030) = lu(k,1030) - lu(k,970) * lu(k,1019) - lu(k,1031) = lu(k,1031) - lu(k,971) * lu(k,1019) - lu(k,1033) = lu(k,1033) - lu(k,972) * lu(k,1019) - lu(k,1034) = lu(k,1034) - lu(k,973) * lu(k,1019) - lu(k,1079) = lu(k,1079) - lu(k,960) * lu(k,1078) - lu(k,1080) = lu(k,1080) - lu(k,961) * lu(k,1078) - lu(k,1081) = lu(k,1081) - lu(k,962) * lu(k,1078) - lu(k,1082) = lu(k,1082) - lu(k,963) * lu(k,1078) - lu(k,1083) = lu(k,1083) - lu(k,964) * lu(k,1078) - lu(k,1084) = lu(k,1084) - lu(k,965) * lu(k,1078) - lu(k,1085) = lu(k,1085) - lu(k,966) * lu(k,1078) - lu(k,1086) = lu(k,1086) - lu(k,967) * lu(k,1078) - lu(k,1087) = lu(k,1087) - lu(k,968) * lu(k,1078) - lu(k,1088) = lu(k,1088) - lu(k,969) * lu(k,1078) - lu(k,1089) = lu(k,1089) - lu(k,970) * lu(k,1078) - lu(k,1090) = lu(k,1090) - lu(k,971) * lu(k,1078) - lu(k,1092) = lu(k,1092) - lu(k,972) * lu(k,1078) - lu(k,1093) = lu(k,1093) - lu(k,973) * lu(k,1078) - lu(k,1125) = lu(k,1125) - lu(k,960) * lu(k,1124) - lu(k,1126) = lu(k,1126) - lu(k,961) * lu(k,1124) - lu(k,1127) = lu(k,1127) - lu(k,962) * lu(k,1124) - lu(k,1128) = lu(k,1128) - lu(k,963) * lu(k,1124) - lu(k,1129) = lu(k,1129) - lu(k,964) * lu(k,1124) - lu(k,1130) = lu(k,1130) - lu(k,965) * lu(k,1124) - lu(k,1131) = lu(k,1131) - lu(k,966) * lu(k,1124) - lu(k,1132) = lu(k,1132) - lu(k,967) * lu(k,1124) - lu(k,1133) = lu(k,1133) - lu(k,968) * lu(k,1124) - lu(k,1134) = lu(k,1134) - lu(k,969) * lu(k,1124) - lu(k,1135) = lu(k,1135) - lu(k,970) * lu(k,1124) - lu(k,1136) = lu(k,1136) - lu(k,971) * lu(k,1124) - lu(k,1138) = lu(k,1138) - lu(k,972) * lu(k,1124) - lu(k,1139) = lu(k,1139) - lu(k,973) * lu(k,1124) - lu(k,1148) = lu(k,1148) - lu(k,960) * lu(k,1147) - lu(k,1149) = lu(k,1149) - lu(k,961) * lu(k,1147) - lu(k,1150) = lu(k,1150) - lu(k,962) * lu(k,1147) - lu(k,1151) = lu(k,1151) - lu(k,963) * lu(k,1147) - lu(k,1152) = lu(k,1152) - lu(k,964) * lu(k,1147) - lu(k,1153) = lu(k,1153) - lu(k,965) * lu(k,1147) - lu(k,1154) = lu(k,1154) - lu(k,966) * lu(k,1147) - lu(k,1155) = lu(k,1155) - lu(k,967) * lu(k,1147) - lu(k,1156) = lu(k,1156) - lu(k,968) * lu(k,1147) - lu(k,1157) = lu(k,1157) - lu(k,969) * lu(k,1147) - lu(k,1158) = lu(k,1158) - lu(k,970) * lu(k,1147) - lu(k,1159) = lu(k,1159) - lu(k,971) * lu(k,1147) - lu(k,1161) = lu(k,1161) - lu(k,972) * lu(k,1147) - lu(k,1162) = lu(k,1162) - lu(k,973) * lu(k,1147) - lu(k,1189) = lu(k,1189) - lu(k,960) * lu(k,1188) - lu(k,1190) = lu(k,1190) - lu(k,961) * lu(k,1188) - lu(k,1191) = lu(k,1191) - lu(k,962) * lu(k,1188) - lu(k,1192) = lu(k,1192) - lu(k,963) * lu(k,1188) - lu(k,1193) = lu(k,1193) - lu(k,964) * lu(k,1188) - lu(k,1194) = lu(k,1194) - lu(k,965) * lu(k,1188) - lu(k,1195) = lu(k,1195) - lu(k,966) * lu(k,1188) - lu(k,1196) = lu(k,1196) - lu(k,967) * lu(k,1188) - lu(k,1197) = lu(k,1197) - lu(k,968) * lu(k,1188) - lu(k,1198) = lu(k,1198) - lu(k,969) * lu(k,1188) - lu(k,1199) = lu(k,1199) - lu(k,970) * lu(k,1188) - lu(k,1200) = lu(k,1200) - lu(k,971) * lu(k,1188) - lu(k,1202) = lu(k,1202) - lu(k,972) * lu(k,1188) - lu(k,1203) = lu(k,1203) - lu(k,973) * lu(k,1188) - lu(k,1235) = lu(k,1235) - lu(k,960) * lu(k,1234) - lu(k,1236) = lu(k,1236) - lu(k,961) * lu(k,1234) - lu(k,1237) = lu(k,1237) - lu(k,962) * lu(k,1234) - lu(k,1238) = lu(k,1238) - lu(k,963) * lu(k,1234) - lu(k,1239) = lu(k,1239) - lu(k,964) * lu(k,1234) - lu(k,1240) = lu(k,1240) - lu(k,965) * lu(k,1234) - lu(k,1241) = lu(k,1241) - lu(k,966) * lu(k,1234) - lu(k,1242) = lu(k,1242) - lu(k,967) * lu(k,1234) - lu(k,1243) = lu(k,1243) - lu(k,968) * lu(k,1234) - lu(k,1244) = lu(k,1244) - lu(k,969) * lu(k,1234) - lu(k,1245) = lu(k,1245) - lu(k,970) * lu(k,1234) - lu(k,1246) = lu(k,1246) - lu(k,971) * lu(k,1234) - lu(k,1248) = lu(k,1248) - lu(k,972) * lu(k,1234) - lu(k,1249) = lu(k,1249) - lu(k,973) * lu(k,1234) - lu(k,1277) = lu(k,1277) - lu(k,960) * lu(k,1276) - lu(k,1278) = lu(k,1278) - lu(k,961) * lu(k,1276) - lu(k,1279) = lu(k,1279) - lu(k,962) * lu(k,1276) - lu(k,1280) = lu(k,1280) - lu(k,963) * lu(k,1276) - lu(k,1281) = lu(k,1281) - lu(k,964) * lu(k,1276) - lu(k,1282) = lu(k,1282) - lu(k,965) * lu(k,1276) - lu(k,1283) = lu(k,1283) - lu(k,966) * lu(k,1276) - lu(k,1284) = lu(k,1284) - lu(k,967) * lu(k,1276) - lu(k,1285) = lu(k,1285) - lu(k,968) * lu(k,1276) - lu(k,1286) = lu(k,1286) - lu(k,969) * lu(k,1276) - lu(k,1287) = lu(k,1287) - lu(k,970) * lu(k,1276) - lu(k,1288) = lu(k,1288) - lu(k,971) * lu(k,1276) - lu(k,1290) = lu(k,1290) - lu(k,972) * lu(k,1276) - lu(k,1291) = lu(k,1291) - lu(k,973) * lu(k,1276) - lu(k,1315) = lu(k,1315) - lu(k,960) * lu(k,1314) - lu(k,1316) = lu(k,1316) - lu(k,961) * lu(k,1314) - lu(k,1317) = lu(k,1317) - lu(k,962) * lu(k,1314) - lu(k,1318) = lu(k,1318) - lu(k,963) * lu(k,1314) - lu(k,1319) = lu(k,1319) - lu(k,964) * lu(k,1314) - lu(k,1320) = lu(k,1320) - lu(k,965) * lu(k,1314) - lu(k,1321) = lu(k,1321) - lu(k,966) * lu(k,1314) - lu(k,1322) = lu(k,1322) - lu(k,967) * lu(k,1314) - lu(k,1323) = lu(k,1323) - lu(k,968) * lu(k,1314) - lu(k,1324) = lu(k,1324) - lu(k,969) * lu(k,1314) - lu(k,1325) = lu(k,1325) - lu(k,970) * lu(k,1314) - lu(k,1326) = lu(k,1326) - lu(k,971) * lu(k,1314) - lu(k,1328) = lu(k,1328) - lu(k,972) * lu(k,1314) - lu(k,1329) = lu(k,1329) - lu(k,973) * lu(k,1314) - lu(k,1404) = lu(k,1404) - lu(k,960) * lu(k,1403) - lu(k,1405) = lu(k,1405) - lu(k,961) * lu(k,1403) - lu(k,1406) = lu(k,1406) - lu(k,962) * lu(k,1403) - lu(k,1407) = lu(k,1407) - lu(k,963) * lu(k,1403) - lu(k,1408) = lu(k,1408) - lu(k,964) * lu(k,1403) - lu(k,1409) = lu(k,1409) - lu(k,965) * lu(k,1403) - lu(k,1410) = lu(k,1410) - lu(k,966) * lu(k,1403) - lu(k,1411) = lu(k,1411) - lu(k,967) * lu(k,1403) - lu(k,1412) = lu(k,1412) - lu(k,968) * lu(k,1403) - lu(k,1413) = lu(k,1413) - lu(k,969) * lu(k,1403) - lu(k,1414) = lu(k,1414) - lu(k,970) * lu(k,1403) - lu(k,1415) = lu(k,1415) - lu(k,971) * lu(k,1403) - lu(k,1417) = lu(k,1417) - lu(k,972) * lu(k,1403) - lu(k,1418) = lu(k,1418) - lu(k,973) * lu(k,1403) - lu(k,1449) = lu(k,1449) - lu(k,960) * lu(k,1448) - lu(k,1450) = lu(k,1450) - lu(k,961) * lu(k,1448) - lu(k,1451) = lu(k,1451) - lu(k,962) * lu(k,1448) - lu(k,1452) = lu(k,1452) - lu(k,963) * lu(k,1448) - lu(k,1453) = lu(k,1453) - lu(k,964) * lu(k,1448) - lu(k,1454) = lu(k,1454) - lu(k,965) * lu(k,1448) - lu(k,1455) = lu(k,1455) - lu(k,966) * lu(k,1448) - lu(k,1456) = lu(k,1456) - lu(k,967) * lu(k,1448) - lu(k,1457) = lu(k,1457) - lu(k,968) * lu(k,1448) - lu(k,1458) = lu(k,1458) - lu(k,969) * lu(k,1448) - lu(k,1459) = lu(k,1459) - lu(k,970) * lu(k,1448) - lu(k,1460) = lu(k,1460) - lu(k,971) * lu(k,1448) - lu(k,1462) = lu(k,1462) - lu(k,972) * lu(k,1448) - lu(k,1463) = lu(k,1463) - lu(k,973) * lu(k,1448) - lu(k,1497) = lu(k,1497) - lu(k,960) * lu(k,1496) - lu(k,1498) = lu(k,1498) - lu(k,961) * lu(k,1496) - lu(k,1499) = lu(k,1499) - lu(k,962) * lu(k,1496) - lu(k,1500) = lu(k,1500) - lu(k,963) * lu(k,1496) - lu(k,1501) = lu(k,1501) - lu(k,964) * lu(k,1496) - lu(k,1502) = lu(k,1502) - lu(k,965) * lu(k,1496) - lu(k,1503) = lu(k,1503) - lu(k,966) * lu(k,1496) - lu(k,1504) = lu(k,1504) - lu(k,967) * lu(k,1496) - lu(k,1505) = lu(k,1505) - lu(k,968) * lu(k,1496) - lu(k,1506) = lu(k,1506) - lu(k,969) * lu(k,1496) - lu(k,1507) = lu(k,1507) - lu(k,970) * lu(k,1496) - lu(k,1508) = lu(k,1508) - lu(k,971) * lu(k,1496) - lu(k,1510) = lu(k,1510) - lu(k,972) * lu(k,1496) - lu(k,1511) = lu(k,1511) - lu(k,973) * lu(k,1496) - lu(k,1522) = lu(k,1522) - lu(k,960) * lu(k,1521) - lu(k,1523) = lu(k,1523) - lu(k,961) * lu(k,1521) - lu(k,1524) = lu(k,1524) - lu(k,962) * lu(k,1521) - lu(k,1525) = lu(k,1525) - lu(k,963) * lu(k,1521) - lu(k,1526) = lu(k,1526) - lu(k,964) * lu(k,1521) - lu(k,1527) = lu(k,1527) - lu(k,965) * lu(k,1521) - lu(k,1528) = lu(k,1528) - lu(k,966) * lu(k,1521) - lu(k,1529) = lu(k,1529) - lu(k,967) * lu(k,1521) - lu(k,1530) = lu(k,1530) - lu(k,968) * lu(k,1521) - lu(k,1531) = lu(k,1531) - lu(k,969) * lu(k,1521) - lu(k,1532) = lu(k,1532) - lu(k,970) * lu(k,1521) - lu(k,1533) = lu(k,1533) - lu(k,971) * lu(k,1521) - lu(k,1535) = lu(k,1535) - lu(k,972) * lu(k,1521) - lu(k,1536) = lu(k,1536) - lu(k,973) * lu(k,1521) - lu(k,1543) = lu(k,1543) - lu(k,960) * lu(k,1542) - lu(k,1544) = lu(k,1544) - lu(k,961) * lu(k,1542) - lu(k,1545) = lu(k,1545) - lu(k,962) * lu(k,1542) - lu(k,1546) = lu(k,1546) - lu(k,963) * lu(k,1542) - lu(k,1547) = lu(k,1547) - lu(k,964) * lu(k,1542) - lu(k,1548) = lu(k,1548) - lu(k,965) * lu(k,1542) - lu(k,1549) = lu(k,1549) - lu(k,966) * lu(k,1542) - lu(k,1550) = lu(k,1550) - lu(k,967) * lu(k,1542) - lu(k,1551) = lu(k,1551) - lu(k,968) * lu(k,1542) - lu(k,1552) = lu(k,1552) - lu(k,969) * lu(k,1542) - lu(k,1553) = lu(k,1553) - lu(k,970) * lu(k,1542) - lu(k,1554) = lu(k,1554) - lu(k,971) * lu(k,1542) - lu(k,1556) = lu(k,1556) - lu(k,972) * lu(k,1542) - lu(k,1557) = lu(k,1557) - lu(k,973) * lu(k,1542) - lu(k,1570) = lu(k,1570) - lu(k,960) * lu(k,1569) - lu(k,1571) = lu(k,1571) - lu(k,961) * lu(k,1569) - lu(k,1572) = lu(k,1572) - lu(k,962) * lu(k,1569) - lu(k,1573) = lu(k,1573) - lu(k,963) * lu(k,1569) - lu(k,1574) = lu(k,1574) - lu(k,964) * lu(k,1569) - lu(k,1575) = lu(k,1575) - lu(k,965) * lu(k,1569) - lu(k,1576) = lu(k,1576) - lu(k,966) * lu(k,1569) - lu(k,1577) = lu(k,1577) - lu(k,967) * lu(k,1569) - lu(k,1578) = lu(k,1578) - lu(k,968) * lu(k,1569) - lu(k,1579) = lu(k,1579) - lu(k,969) * lu(k,1569) - lu(k,1580) = lu(k,1580) - lu(k,970) * lu(k,1569) - lu(k,1581) = lu(k,1581) - lu(k,971) * lu(k,1569) - lu(k,1583) = lu(k,1583) - lu(k,972) * lu(k,1569) - lu(k,1584) = lu(k,1584) - lu(k,973) * lu(k,1569) - lu(k,996) = 1._r8 / lu(k,996) - lu(k,997) = lu(k,997) * lu(k,996) - lu(k,998) = lu(k,998) * lu(k,996) - lu(k,999) = lu(k,999) * lu(k,996) - lu(k,1000) = lu(k,1000) * lu(k,996) - lu(k,1001) = lu(k,1001) * lu(k,996) - lu(k,1002) = lu(k,1002) * lu(k,996) - lu(k,1003) = lu(k,1003) * lu(k,996) - lu(k,1004) = lu(k,1004) * lu(k,996) - lu(k,1005) = lu(k,1005) * lu(k,996) - lu(k,1006) = lu(k,1006) * lu(k,996) - lu(k,1007) = lu(k,1007) * lu(k,996) - lu(k,1008) = lu(k,1008) * lu(k,996) - lu(k,1009) = lu(k,1009) * lu(k,996) - lu(k,1010) = lu(k,1010) * lu(k,996) - lu(k,1021) = lu(k,1021) - lu(k,997) * lu(k,1020) - lu(k,1022) = lu(k,1022) - lu(k,998) * lu(k,1020) - lu(k,1023) = lu(k,1023) - lu(k,999) * lu(k,1020) - lu(k,1024) = lu(k,1024) - lu(k,1000) * lu(k,1020) - lu(k,1025) = lu(k,1025) - lu(k,1001) * lu(k,1020) - lu(k,1026) = lu(k,1026) - lu(k,1002) * lu(k,1020) - lu(k,1027) = lu(k,1027) - lu(k,1003) * lu(k,1020) - lu(k,1028) = lu(k,1028) - lu(k,1004) * lu(k,1020) - lu(k,1029) = lu(k,1029) - lu(k,1005) * lu(k,1020) - lu(k,1030) = lu(k,1030) - lu(k,1006) * lu(k,1020) - lu(k,1031) = lu(k,1031) - lu(k,1007) * lu(k,1020) - lu(k,1032) = lu(k,1032) - lu(k,1008) * lu(k,1020) - lu(k,1033) = lu(k,1033) - lu(k,1009) * lu(k,1020) - lu(k,1034) = lu(k,1034) - lu(k,1010) * lu(k,1020) - lu(k,1080) = lu(k,1080) - lu(k,997) * lu(k,1079) - lu(k,1081) = lu(k,1081) - lu(k,998) * lu(k,1079) - lu(k,1082) = lu(k,1082) - lu(k,999) * lu(k,1079) - lu(k,1083) = lu(k,1083) - lu(k,1000) * lu(k,1079) - lu(k,1084) = lu(k,1084) - lu(k,1001) * lu(k,1079) - lu(k,1085) = lu(k,1085) - lu(k,1002) * lu(k,1079) - lu(k,1086) = lu(k,1086) - lu(k,1003) * lu(k,1079) - lu(k,1087) = lu(k,1087) - lu(k,1004) * lu(k,1079) - lu(k,1088) = lu(k,1088) - lu(k,1005) * lu(k,1079) - lu(k,1089) = lu(k,1089) - lu(k,1006) * lu(k,1079) - lu(k,1090) = lu(k,1090) - lu(k,1007) * lu(k,1079) - lu(k,1091) = lu(k,1091) - lu(k,1008) * lu(k,1079) - lu(k,1092) = lu(k,1092) - lu(k,1009) * lu(k,1079) - lu(k,1093) = lu(k,1093) - lu(k,1010) * lu(k,1079) - lu(k,1126) = lu(k,1126) - lu(k,997) * lu(k,1125) - lu(k,1127) = lu(k,1127) - lu(k,998) * lu(k,1125) - lu(k,1128) = lu(k,1128) - lu(k,999) * lu(k,1125) - lu(k,1129) = lu(k,1129) - lu(k,1000) * lu(k,1125) - lu(k,1130) = lu(k,1130) - lu(k,1001) * lu(k,1125) - lu(k,1131) = lu(k,1131) - lu(k,1002) * lu(k,1125) - lu(k,1132) = lu(k,1132) - lu(k,1003) * lu(k,1125) - lu(k,1133) = lu(k,1133) - lu(k,1004) * lu(k,1125) - lu(k,1134) = lu(k,1134) - lu(k,1005) * lu(k,1125) - lu(k,1135) = lu(k,1135) - lu(k,1006) * lu(k,1125) - lu(k,1136) = lu(k,1136) - lu(k,1007) * lu(k,1125) - lu(k,1137) = lu(k,1137) - lu(k,1008) * lu(k,1125) - lu(k,1138) = lu(k,1138) - lu(k,1009) * lu(k,1125) - lu(k,1139) = lu(k,1139) - lu(k,1010) * lu(k,1125) - lu(k,1149) = lu(k,1149) - lu(k,997) * lu(k,1148) - lu(k,1150) = lu(k,1150) - lu(k,998) * lu(k,1148) - lu(k,1151) = lu(k,1151) - lu(k,999) * lu(k,1148) - lu(k,1152) = lu(k,1152) - lu(k,1000) * lu(k,1148) - lu(k,1153) = lu(k,1153) - lu(k,1001) * lu(k,1148) - lu(k,1154) = lu(k,1154) - lu(k,1002) * lu(k,1148) - lu(k,1155) = lu(k,1155) - lu(k,1003) * lu(k,1148) - lu(k,1156) = lu(k,1156) - lu(k,1004) * lu(k,1148) - lu(k,1157) = lu(k,1157) - lu(k,1005) * lu(k,1148) - lu(k,1158) = lu(k,1158) - lu(k,1006) * lu(k,1148) - lu(k,1159) = lu(k,1159) - lu(k,1007) * lu(k,1148) - lu(k,1160) = lu(k,1160) - lu(k,1008) * lu(k,1148) - lu(k,1161) = lu(k,1161) - lu(k,1009) * lu(k,1148) - lu(k,1162) = lu(k,1162) - lu(k,1010) * lu(k,1148) - lu(k,1190) = lu(k,1190) - lu(k,997) * lu(k,1189) - lu(k,1191) = lu(k,1191) - lu(k,998) * lu(k,1189) - lu(k,1192) = lu(k,1192) - lu(k,999) * lu(k,1189) - lu(k,1193) = lu(k,1193) - lu(k,1000) * lu(k,1189) - lu(k,1194) = lu(k,1194) - lu(k,1001) * lu(k,1189) - lu(k,1195) = lu(k,1195) - lu(k,1002) * lu(k,1189) - lu(k,1196) = lu(k,1196) - lu(k,1003) * lu(k,1189) - lu(k,1197) = lu(k,1197) - lu(k,1004) * lu(k,1189) - lu(k,1198) = lu(k,1198) - lu(k,1005) * lu(k,1189) - lu(k,1199) = lu(k,1199) - lu(k,1006) * lu(k,1189) - lu(k,1200) = lu(k,1200) - lu(k,1007) * lu(k,1189) - lu(k,1201) = lu(k,1201) - lu(k,1008) * lu(k,1189) - lu(k,1202) = lu(k,1202) - lu(k,1009) * lu(k,1189) - lu(k,1203) = lu(k,1203) - lu(k,1010) * lu(k,1189) - lu(k,1236) = lu(k,1236) - lu(k,997) * lu(k,1235) - lu(k,1237) = lu(k,1237) - lu(k,998) * lu(k,1235) - lu(k,1238) = lu(k,1238) - lu(k,999) * lu(k,1235) - lu(k,1239) = lu(k,1239) - lu(k,1000) * lu(k,1235) - lu(k,1240) = lu(k,1240) - lu(k,1001) * lu(k,1235) - lu(k,1241) = lu(k,1241) - lu(k,1002) * lu(k,1235) - lu(k,1242) = lu(k,1242) - lu(k,1003) * lu(k,1235) - lu(k,1243) = lu(k,1243) - lu(k,1004) * lu(k,1235) - lu(k,1244) = lu(k,1244) - lu(k,1005) * lu(k,1235) - lu(k,1245) = lu(k,1245) - lu(k,1006) * lu(k,1235) - lu(k,1246) = lu(k,1246) - lu(k,1007) * lu(k,1235) - lu(k,1247) = lu(k,1247) - lu(k,1008) * lu(k,1235) - lu(k,1248) = lu(k,1248) - lu(k,1009) * lu(k,1235) - lu(k,1249) = lu(k,1249) - lu(k,1010) * lu(k,1235) - lu(k,1278) = lu(k,1278) - lu(k,997) * lu(k,1277) - lu(k,1279) = lu(k,1279) - lu(k,998) * lu(k,1277) - lu(k,1280) = lu(k,1280) - lu(k,999) * lu(k,1277) - lu(k,1281) = lu(k,1281) - lu(k,1000) * lu(k,1277) - lu(k,1282) = lu(k,1282) - lu(k,1001) * lu(k,1277) - lu(k,1283) = lu(k,1283) - lu(k,1002) * lu(k,1277) - lu(k,1284) = lu(k,1284) - lu(k,1003) * lu(k,1277) - lu(k,1285) = lu(k,1285) - lu(k,1004) * lu(k,1277) - lu(k,1286) = lu(k,1286) - lu(k,1005) * lu(k,1277) - lu(k,1287) = lu(k,1287) - lu(k,1006) * lu(k,1277) - lu(k,1288) = lu(k,1288) - lu(k,1007) * lu(k,1277) - lu(k,1289) = lu(k,1289) - lu(k,1008) * lu(k,1277) - lu(k,1290) = lu(k,1290) - lu(k,1009) * lu(k,1277) - lu(k,1291) = lu(k,1291) - lu(k,1010) * lu(k,1277) - lu(k,1316) = lu(k,1316) - lu(k,997) * lu(k,1315) - lu(k,1317) = lu(k,1317) - lu(k,998) * lu(k,1315) - lu(k,1318) = lu(k,1318) - lu(k,999) * lu(k,1315) - lu(k,1319) = lu(k,1319) - lu(k,1000) * lu(k,1315) - lu(k,1320) = lu(k,1320) - lu(k,1001) * lu(k,1315) - lu(k,1321) = lu(k,1321) - lu(k,1002) * lu(k,1315) - lu(k,1322) = lu(k,1322) - lu(k,1003) * lu(k,1315) - lu(k,1323) = lu(k,1323) - lu(k,1004) * lu(k,1315) - lu(k,1324) = lu(k,1324) - lu(k,1005) * lu(k,1315) - lu(k,1325) = lu(k,1325) - lu(k,1006) * lu(k,1315) - lu(k,1326) = lu(k,1326) - lu(k,1007) * lu(k,1315) - lu(k,1327) = lu(k,1327) - lu(k,1008) * lu(k,1315) - lu(k,1328) = lu(k,1328) - lu(k,1009) * lu(k,1315) - lu(k,1329) = lu(k,1329) - lu(k,1010) * lu(k,1315) - lu(k,1405) = lu(k,1405) - lu(k,997) * lu(k,1404) - lu(k,1406) = lu(k,1406) - lu(k,998) * lu(k,1404) - lu(k,1407) = lu(k,1407) - lu(k,999) * lu(k,1404) - lu(k,1408) = lu(k,1408) - lu(k,1000) * lu(k,1404) - lu(k,1409) = lu(k,1409) - lu(k,1001) * lu(k,1404) - lu(k,1410) = lu(k,1410) - lu(k,1002) * lu(k,1404) - lu(k,1411) = lu(k,1411) - lu(k,1003) * lu(k,1404) - lu(k,1412) = lu(k,1412) - lu(k,1004) * lu(k,1404) - lu(k,1413) = lu(k,1413) - lu(k,1005) * lu(k,1404) - lu(k,1414) = lu(k,1414) - lu(k,1006) * lu(k,1404) - lu(k,1415) = lu(k,1415) - lu(k,1007) * lu(k,1404) - lu(k,1416) = lu(k,1416) - lu(k,1008) * lu(k,1404) - lu(k,1417) = lu(k,1417) - lu(k,1009) * lu(k,1404) - lu(k,1418) = lu(k,1418) - lu(k,1010) * lu(k,1404) - lu(k,1450) = lu(k,1450) - lu(k,997) * lu(k,1449) - lu(k,1451) = lu(k,1451) - lu(k,998) * lu(k,1449) - lu(k,1452) = lu(k,1452) - lu(k,999) * lu(k,1449) - lu(k,1453) = lu(k,1453) - lu(k,1000) * lu(k,1449) - lu(k,1454) = lu(k,1454) - lu(k,1001) * lu(k,1449) - lu(k,1455) = lu(k,1455) - lu(k,1002) * lu(k,1449) - lu(k,1456) = lu(k,1456) - lu(k,1003) * lu(k,1449) - lu(k,1457) = lu(k,1457) - lu(k,1004) * lu(k,1449) - lu(k,1458) = lu(k,1458) - lu(k,1005) * lu(k,1449) - lu(k,1459) = lu(k,1459) - lu(k,1006) * lu(k,1449) - lu(k,1460) = lu(k,1460) - lu(k,1007) * lu(k,1449) - lu(k,1461) = lu(k,1461) - lu(k,1008) * lu(k,1449) - lu(k,1462) = lu(k,1462) - lu(k,1009) * lu(k,1449) - lu(k,1463) = lu(k,1463) - lu(k,1010) * lu(k,1449) - lu(k,1498) = lu(k,1498) - lu(k,997) * lu(k,1497) - lu(k,1499) = lu(k,1499) - lu(k,998) * lu(k,1497) - lu(k,1500) = lu(k,1500) - lu(k,999) * lu(k,1497) - lu(k,1501) = lu(k,1501) - lu(k,1000) * lu(k,1497) - lu(k,1502) = lu(k,1502) - lu(k,1001) * lu(k,1497) - lu(k,1503) = lu(k,1503) - lu(k,1002) * lu(k,1497) - lu(k,1504) = lu(k,1504) - lu(k,1003) * lu(k,1497) - lu(k,1505) = lu(k,1505) - lu(k,1004) * lu(k,1497) - lu(k,1506) = lu(k,1506) - lu(k,1005) * lu(k,1497) - lu(k,1507) = lu(k,1507) - lu(k,1006) * lu(k,1497) - lu(k,1508) = lu(k,1508) - lu(k,1007) * lu(k,1497) - lu(k,1509) = lu(k,1509) - lu(k,1008) * lu(k,1497) - lu(k,1510) = lu(k,1510) - lu(k,1009) * lu(k,1497) - lu(k,1511) = lu(k,1511) - lu(k,1010) * lu(k,1497) - lu(k,1523) = lu(k,1523) - lu(k,997) * lu(k,1522) - lu(k,1524) = lu(k,1524) - lu(k,998) * lu(k,1522) - lu(k,1525) = lu(k,1525) - lu(k,999) * lu(k,1522) - lu(k,1526) = lu(k,1526) - lu(k,1000) * lu(k,1522) - lu(k,1527) = lu(k,1527) - lu(k,1001) * lu(k,1522) - lu(k,1528) = lu(k,1528) - lu(k,1002) * lu(k,1522) - lu(k,1529) = lu(k,1529) - lu(k,1003) * lu(k,1522) - lu(k,1530) = lu(k,1530) - lu(k,1004) * lu(k,1522) - lu(k,1531) = lu(k,1531) - lu(k,1005) * lu(k,1522) - lu(k,1532) = lu(k,1532) - lu(k,1006) * lu(k,1522) - lu(k,1533) = lu(k,1533) - lu(k,1007) * lu(k,1522) - lu(k,1534) = lu(k,1534) - lu(k,1008) * lu(k,1522) - lu(k,1535) = lu(k,1535) - lu(k,1009) * lu(k,1522) - lu(k,1536) = lu(k,1536) - lu(k,1010) * lu(k,1522) - lu(k,1544) = lu(k,1544) - lu(k,997) * lu(k,1543) - lu(k,1545) = lu(k,1545) - lu(k,998) * lu(k,1543) - lu(k,1546) = lu(k,1546) - lu(k,999) * lu(k,1543) - lu(k,1547) = lu(k,1547) - lu(k,1000) * lu(k,1543) - lu(k,1548) = lu(k,1548) - lu(k,1001) * lu(k,1543) - lu(k,1549) = lu(k,1549) - lu(k,1002) * lu(k,1543) - lu(k,1550) = lu(k,1550) - lu(k,1003) * lu(k,1543) - lu(k,1551) = lu(k,1551) - lu(k,1004) * lu(k,1543) - lu(k,1552) = lu(k,1552) - lu(k,1005) * lu(k,1543) - lu(k,1553) = lu(k,1553) - lu(k,1006) * lu(k,1543) - lu(k,1554) = lu(k,1554) - lu(k,1007) * lu(k,1543) - lu(k,1555) = lu(k,1555) - lu(k,1008) * lu(k,1543) - lu(k,1556) = lu(k,1556) - lu(k,1009) * lu(k,1543) - lu(k,1557) = lu(k,1557) - lu(k,1010) * lu(k,1543) - lu(k,1571) = lu(k,1571) - lu(k,997) * lu(k,1570) - lu(k,1572) = lu(k,1572) - lu(k,998) * lu(k,1570) - lu(k,1573) = lu(k,1573) - lu(k,999) * lu(k,1570) - lu(k,1574) = lu(k,1574) - lu(k,1000) * lu(k,1570) - lu(k,1575) = lu(k,1575) - lu(k,1001) * lu(k,1570) - lu(k,1576) = lu(k,1576) - lu(k,1002) * lu(k,1570) - lu(k,1577) = lu(k,1577) - lu(k,1003) * lu(k,1570) - lu(k,1578) = lu(k,1578) - lu(k,1004) * lu(k,1570) - lu(k,1579) = lu(k,1579) - lu(k,1005) * lu(k,1570) - lu(k,1580) = lu(k,1580) - lu(k,1006) * lu(k,1570) - lu(k,1581) = lu(k,1581) - lu(k,1007) * lu(k,1570) - lu(k,1582) = lu(k,1582) - lu(k,1008) * lu(k,1570) - lu(k,1583) = lu(k,1583) - lu(k,1009) * lu(k,1570) - lu(k,1584) = lu(k,1584) - lu(k,1010) * lu(k,1570) + lu(k,1582) = lu(k,1582) - lu(k,945) * lu(k,1568) + lu(k,1583) = lu(k,1583) - lu(k,946) * lu(k,1568) + lu(k,1584) = lu(k,1584) - lu(k,947) * lu(k,1568) + lu(k,973) = 1._r8 / lu(k,973) + lu(k,974) = lu(k,974) * lu(k,973) + lu(k,975) = lu(k,975) * lu(k,973) + lu(k,976) = lu(k,976) * lu(k,973) + lu(k,977) = lu(k,977) * lu(k,973) + lu(k,978) = lu(k,978) * lu(k,973) + lu(k,979) = lu(k,979) * lu(k,973) + lu(k,980) = lu(k,980) * lu(k,973) + lu(k,981) = lu(k,981) * lu(k,973) + lu(k,982) = lu(k,982) * lu(k,973) + lu(k,983) = lu(k,983) * lu(k,973) + lu(k,984) = lu(k,984) * lu(k,973) + lu(k,985) = lu(k,985) * lu(k,973) + lu(k,986) = lu(k,986) * lu(k,973) + lu(k,987) = lu(k,987) * lu(k,973) + lu(k,988) = lu(k,988) * lu(k,973) + lu(k,1020) = lu(k,1020) - lu(k,974) * lu(k,1019) + lu(k,1021) = lu(k,1021) - lu(k,975) * lu(k,1019) + lu(k,1022) = lu(k,1022) - lu(k,976) * lu(k,1019) + lu(k,1023) = lu(k,1023) - lu(k,977) * lu(k,1019) + lu(k,1024) = lu(k,1024) - lu(k,978) * lu(k,1019) + lu(k,1025) = lu(k,1025) - lu(k,979) * lu(k,1019) + lu(k,1026) = lu(k,1026) - lu(k,980) * lu(k,1019) + lu(k,1027) = lu(k,1027) - lu(k,981) * lu(k,1019) + lu(k,1028) = lu(k,1028) - lu(k,982) * lu(k,1019) + lu(k,1029) = lu(k,1029) - lu(k,983) * lu(k,1019) + lu(k,1030) = lu(k,1030) - lu(k,984) * lu(k,1019) + lu(k,1031) = lu(k,1031) - lu(k,985) * lu(k,1019) + lu(k,1032) = lu(k,1032) - lu(k,986) * lu(k,1019) + lu(k,1033) = lu(k,1033) - lu(k,987) * lu(k,1019) + lu(k,1034) = lu(k,1034) - lu(k,988) * lu(k,1019) + lu(k,1041) = lu(k,1041) - lu(k,974) * lu(k,1040) + lu(k,1042) = lu(k,1042) - lu(k,975) * lu(k,1040) + lu(k,1043) = lu(k,1043) - lu(k,976) * lu(k,1040) + lu(k,1044) = lu(k,1044) - lu(k,977) * lu(k,1040) + lu(k,1045) = lu(k,1045) - lu(k,978) * lu(k,1040) + lu(k,1046) = lu(k,1046) - lu(k,979) * lu(k,1040) + lu(k,1047) = lu(k,1047) - lu(k,980) * lu(k,1040) + lu(k,1048) = lu(k,1048) - lu(k,981) * lu(k,1040) + lu(k,1049) = lu(k,1049) - lu(k,982) * lu(k,1040) + lu(k,1050) = lu(k,1050) - lu(k,983) * lu(k,1040) + lu(k,1051) = lu(k,1051) - lu(k,984) * lu(k,1040) + lu(k,1052) = lu(k,1052) - lu(k,985) * lu(k,1040) + lu(k,1053) = lu(k,1053) - lu(k,986) * lu(k,1040) + lu(k,1054) = lu(k,1054) - lu(k,987) * lu(k,1040) + lu(k,1055) = lu(k,1055) - lu(k,988) * lu(k,1040) + lu(k,1078) = lu(k,1078) - lu(k,974) * lu(k,1077) + lu(k,1079) = lu(k,1079) - lu(k,975) * lu(k,1077) + lu(k,1080) = lu(k,1080) - lu(k,976) * lu(k,1077) + lu(k,1081) = lu(k,1081) - lu(k,977) * lu(k,1077) + lu(k,1082) = lu(k,1082) - lu(k,978) * lu(k,1077) + lu(k,1083) = lu(k,1083) - lu(k,979) * lu(k,1077) + lu(k,1084) = lu(k,1084) - lu(k,980) * lu(k,1077) + lu(k,1085) = lu(k,1085) - lu(k,981) * lu(k,1077) + lu(k,1086) = lu(k,1086) - lu(k,982) * lu(k,1077) + lu(k,1087) = lu(k,1087) - lu(k,983) * lu(k,1077) + lu(k,1088) = lu(k,1088) - lu(k,984) * lu(k,1077) + lu(k,1089) = lu(k,1089) - lu(k,985) * lu(k,1077) + lu(k,1090) = lu(k,1090) - lu(k,986) * lu(k,1077) + lu(k,1091) = lu(k,1091) - lu(k,987) * lu(k,1077) + lu(k,1092) = lu(k,1092) - lu(k,988) * lu(k,1077) + lu(k,1126) = lu(k,1126) - lu(k,974) * lu(k,1125) + lu(k,1127) = lu(k,1127) - lu(k,975) * lu(k,1125) + lu(k,1128) = lu(k,1128) - lu(k,976) * lu(k,1125) + lu(k,1129) = lu(k,1129) - lu(k,977) * lu(k,1125) + lu(k,1130) = lu(k,1130) - lu(k,978) * lu(k,1125) + lu(k,1131) = lu(k,1131) - lu(k,979) * lu(k,1125) + lu(k,1132) = lu(k,1132) - lu(k,980) * lu(k,1125) + lu(k,1133) = lu(k,1133) - lu(k,981) * lu(k,1125) + lu(k,1134) = lu(k,1134) - lu(k,982) * lu(k,1125) + lu(k,1135) = lu(k,1135) - lu(k,983) * lu(k,1125) + lu(k,1136) = lu(k,1136) - lu(k,984) * lu(k,1125) + lu(k,1137) = lu(k,1137) - lu(k,985) * lu(k,1125) + lu(k,1138) = lu(k,1138) - lu(k,986) * lu(k,1125) + lu(k,1139) = lu(k,1139) - lu(k,987) * lu(k,1125) + lu(k,1140) = lu(k,1140) - lu(k,988) * lu(k,1125) + lu(k,1168) = lu(k,1168) - lu(k,974) * lu(k,1167) + lu(k,1169) = lu(k,1169) - lu(k,975) * lu(k,1167) + lu(k,1170) = lu(k,1170) - lu(k,976) * lu(k,1167) + lu(k,1171) = lu(k,1171) - lu(k,977) * lu(k,1167) + lu(k,1172) = lu(k,1172) - lu(k,978) * lu(k,1167) + lu(k,1173) = lu(k,1173) - lu(k,979) * lu(k,1167) + lu(k,1174) = lu(k,1174) - lu(k,980) * lu(k,1167) + lu(k,1175) = lu(k,1175) - lu(k,981) * lu(k,1167) + lu(k,1176) = lu(k,1176) - lu(k,982) * lu(k,1167) + lu(k,1177) = lu(k,1177) - lu(k,983) * lu(k,1167) + lu(k,1178) = lu(k,1178) - lu(k,984) * lu(k,1167) + lu(k,1179) = lu(k,1179) - lu(k,985) * lu(k,1167) + lu(k,1180) = lu(k,1180) - lu(k,986) * lu(k,1167) + lu(k,1181) = lu(k,1181) - lu(k,987) * lu(k,1167) + lu(k,1182) = lu(k,1182) - lu(k,988) * lu(k,1167) + lu(k,1257) = lu(k,1257) - lu(k,974) * lu(k,1256) + lu(k,1258) = lu(k,1258) - lu(k,975) * lu(k,1256) + lu(k,1259) = lu(k,1259) - lu(k,976) * lu(k,1256) + lu(k,1260) = lu(k,1260) - lu(k,977) * lu(k,1256) + lu(k,1261) = lu(k,1261) - lu(k,978) * lu(k,1256) + lu(k,1262) = lu(k,1262) - lu(k,979) * lu(k,1256) + lu(k,1263) = lu(k,1263) - lu(k,980) * lu(k,1256) + lu(k,1264) = lu(k,1264) - lu(k,981) * lu(k,1256) + lu(k,1265) = lu(k,1265) - lu(k,982) * lu(k,1256) + lu(k,1266) = lu(k,1266) - lu(k,983) * lu(k,1256) + lu(k,1267) = lu(k,1267) - lu(k,984) * lu(k,1256) + lu(k,1268) = lu(k,1268) - lu(k,985) * lu(k,1256) + lu(k,1269) = lu(k,1269) - lu(k,986) * lu(k,1256) + lu(k,1270) = lu(k,1270) - lu(k,987) * lu(k,1256) + lu(k,1271) = lu(k,1271) - lu(k,988) * lu(k,1256) + lu(k,1295) = lu(k,1295) - lu(k,974) * lu(k,1294) + lu(k,1296) = lu(k,1296) - lu(k,975) * lu(k,1294) + lu(k,1297) = lu(k,1297) - lu(k,976) * lu(k,1294) + lu(k,1298) = lu(k,1298) - lu(k,977) * lu(k,1294) + lu(k,1299) = lu(k,1299) - lu(k,978) * lu(k,1294) + lu(k,1300) = lu(k,1300) - lu(k,979) * lu(k,1294) + lu(k,1301) = lu(k,1301) - lu(k,980) * lu(k,1294) + lu(k,1302) = lu(k,1302) - lu(k,981) * lu(k,1294) + lu(k,1303) = lu(k,1303) - lu(k,982) * lu(k,1294) + lu(k,1304) = lu(k,1304) - lu(k,983) * lu(k,1294) + lu(k,1305) = lu(k,1305) - lu(k,984) * lu(k,1294) + lu(k,1306) = lu(k,1306) - lu(k,985) * lu(k,1294) + lu(k,1307) = lu(k,1307) - lu(k,986) * lu(k,1294) + lu(k,1308) = lu(k,1308) - lu(k,987) * lu(k,1294) + lu(k,1309) = lu(k,1309) - lu(k,988) * lu(k,1294) + lu(k,1322) = lu(k,1322) - lu(k,974) * lu(k,1321) + lu(k,1323) = lu(k,1323) - lu(k,975) * lu(k,1321) + lu(k,1324) = lu(k,1324) - lu(k,976) * lu(k,1321) + lu(k,1325) = lu(k,1325) - lu(k,977) * lu(k,1321) + lu(k,1326) = lu(k,1326) - lu(k,978) * lu(k,1321) + lu(k,1327) = lu(k,1327) - lu(k,979) * lu(k,1321) + lu(k,1328) = lu(k,1328) - lu(k,980) * lu(k,1321) + lu(k,1329) = lu(k,1329) - lu(k,981) * lu(k,1321) + lu(k,1330) = lu(k,1330) - lu(k,982) * lu(k,1321) + lu(k,1331) = lu(k,1331) - lu(k,983) * lu(k,1321) + lu(k,1332) = lu(k,1332) - lu(k,984) * lu(k,1321) + lu(k,1333) = lu(k,1333) - lu(k,985) * lu(k,1321) + lu(k,1334) = lu(k,1334) - lu(k,986) * lu(k,1321) + lu(k,1335) = lu(k,1335) - lu(k,987) * lu(k,1321) + lu(k,1336) = lu(k,1336) - lu(k,988) * lu(k,1321) + lu(k,1405) = lu(k,1405) - lu(k,974) * lu(k,1404) + lu(k,1406) = lu(k,1406) - lu(k,975) * lu(k,1404) + lu(k,1407) = lu(k,1407) - lu(k,976) * lu(k,1404) + lu(k,1408) = lu(k,1408) - lu(k,977) * lu(k,1404) + lu(k,1409) = lu(k,1409) - lu(k,978) * lu(k,1404) + lu(k,1410) = lu(k,1410) - lu(k,979) * lu(k,1404) + lu(k,1411) = lu(k,1411) - lu(k,980) * lu(k,1404) + lu(k,1412) = lu(k,1412) - lu(k,981) * lu(k,1404) + lu(k,1413) = lu(k,1413) - lu(k,982) * lu(k,1404) + lu(k,1414) = lu(k,1414) - lu(k,983) * lu(k,1404) + lu(k,1415) = lu(k,1415) - lu(k,984) * lu(k,1404) + lu(k,1416) = lu(k,1416) - lu(k,985) * lu(k,1404) + lu(k,1417) = lu(k,1417) - lu(k,986) * lu(k,1404) + lu(k,1418) = lu(k,1418) - lu(k,987) * lu(k,1404) + lu(k,1419) = lu(k,1419) - lu(k,988) * lu(k,1404) + lu(k,1429) = lu(k,1429) - lu(k,974) * lu(k,1428) + lu(k,1430) = lu(k,1430) - lu(k,975) * lu(k,1428) + lu(k,1431) = lu(k,1431) - lu(k,976) * lu(k,1428) + lu(k,1432) = lu(k,1432) - lu(k,977) * lu(k,1428) + lu(k,1433) = lu(k,1433) - lu(k,978) * lu(k,1428) + lu(k,1434) = lu(k,1434) - lu(k,979) * lu(k,1428) + lu(k,1435) = lu(k,1435) - lu(k,980) * lu(k,1428) + lu(k,1436) = lu(k,1436) - lu(k,981) * lu(k,1428) + lu(k,1437) = lu(k,1437) - lu(k,982) * lu(k,1428) + lu(k,1438) = lu(k,1438) - lu(k,983) * lu(k,1428) + lu(k,1439) = lu(k,1439) - lu(k,984) * lu(k,1428) + lu(k,1440) = lu(k,1440) - lu(k,985) * lu(k,1428) + lu(k,1441) = lu(k,1441) - lu(k,986) * lu(k,1428) + lu(k,1442) = lu(k,1442) - lu(k,987) * lu(k,1428) + lu(k,1443) = lu(k,1443) - lu(k,988) * lu(k,1428) + lu(k,1474) = lu(k,1474) - lu(k,974) * lu(k,1473) + lu(k,1475) = lu(k,1475) - lu(k,975) * lu(k,1473) + lu(k,1476) = lu(k,1476) - lu(k,976) * lu(k,1473) + lu(k,1477) = lu(k,1477) - lu(k,977) * lu(k,1473) + lu(k,1478) = lu(k,1478) - lu(k,978) * lu(k,1473) + lu(k,1479) = lu(k,1479) - lu(k,979) * lu(k,1473) + lu(k,1480) = lu(k,1480) - lu(k,980) * lu(k,1473) + lu(k,1481) = lu(k,1481) - lu(k,981) * lu(k,1473) + lu(k,1482) = lu(k,1482) - lu(k,982) * lu(k,1473) + lu(k,1483) = lu(k,1483) - lu(k,983) * lu(k,1473) + lu(k,1484) = lu(k,1484) - lu(k,984) * lu(k,1473) + lu(k,1485) = lu(k,1485) - lu(k,985) * lu(k,1473) + lu(k,1486) = lu(k,1486) - lu(k,986) * lu(k,1473) + lu(k,1487) = lu(k,1487) - lu(k,987) * lu(k,1473) + lu(k,1488) = lu(k,1488) - lu(k,988) * lu(k,1473) + lu(k,1497) = lu(k,1497) - lu(k,974) * lu(k,1496) + lu(k,1498) = lu(k,1498) - lu(k,975) * lu(k,1496) + lu(k,1499) = lu(k,1499) - lu(k,976) * lu(k,1496) + lu(k,1500) = lu(k,1500) - lu(k,977) * lu(k,1496) + lu(k,1501) = lu(k,1501) - lu(k,978) * lu(k,1496) + lu(k,1502) = lu(k,1502) - lu(k,979) * lu(k,1496) + lu(k,1503) = lu(k,1503) - lu(k,980) * lu(k,1496) + lu(k,1504) = lu(k,1504) - lu(k,981) * lu(k,1496) + lu(k,1505) = lu(k,1505) - lu(k,982) * lu(k,1496) + lu(k,1506) = lu(k,1506) - lu(k,983) * lu(k,1496) + lu(k,1507) = lu(k,1507) - lu(k,984) * lu(k,1496) + lu(k,1508) = lu(k,1508) - lu(k,985) * lu(k,1496) + lu(k,1509) = lu(k,1509) - lu(k,986) * lu(k,1496) + lu(k,1510) = lu(k,1510) - lu(k,987) * lu(k,1496) + lu(k,1511) = lu(k,1511) - lu(k,988) * lu(k,1496) + lu(k,1543) = lu(k,1543) - lu(k,974) * lu(k,1542) + lu(k,1544) = lu(k,1544) - lu(k,975) * lu(k,1542) + lu(k,1545) = lu(k,1545) - lu(k,976) * lu(k,1542) + lu(k,1546) = lu(k,1546) - lu(k,977) * lu(k,1542) + lu(k,1547) = lu(k,1547) - lu(k,978) * lu(k,1542) + lu(k,1548) = lu(k,1548) - lu(k,979) * lu(k,1542) + lu(k,1549) = lu(k,1549) - lu(k,980) * lu(k,1542) + lu(k,1550) = lu(k,1550) - lu(k,981) * lu(k,1542) + lu(k,1551) = lu(k,1551) - lu(k,982) * lu(k,1542) + lu(k,1552) = lu(k,1552) - lu(k,983) * lu(k,1542) + lu(k,1553) = lu(k,1553) - lu(k,984) * lu(k,1542) + lu(k,1554) = lu(k,1554) - lu(k,985) * lu(k,1542) + lu(k,1555) = lu(k,1555) - lu(k,986) * lu(k,1542) + lu(k,1556) = lu(k,1556) - lu(k,987) * lu(k,1542) + lu(k,1557) = lu(k,1557) - lu(k,988) * lu(k,1542) + lu(k,1570) = lu(k,1570) - lu(k,974) * lu(k,1569) + lu(k,1571) = lu(k,1571) - lu(k,975) * lu(k,1569) + lu(k,1572) = lu(k,1572) - lu(k,976) * lu(k,1569) + lu(k,1573) = lu(k,1573) - lu(k,977) * lu(k,1569) + lu(k,1574) = lu(k,1574) - lu(k,978) * lu(k,1569) + lu(k,1575) = lu(k,1575) - lu(k,979) * lu(k,1569) + lu(k,1576) = lu(k,1576) - lu(k,980) * lu(k,1569) + lu(k,1577) = lu(k,1577) - lu(k,981) * lu(k,1569) + lu(k,1578) = lu(k,1578) - lu(k,982) * lu(k,1569) + lu(k,1579) = lu(k,1579) - lu(k,983) * lu(k,1569) + lu(k,1580) = lu(k,1580) - lu(k,984) * lu(k,1569) + lu(k,1581) = lu(k,1581) - lu(k,985) * lu(k,1569) + lu(k,1582) = lu(k,1582) - lu(k,986) * lu(k,1569) + lu(k,1583) = lu(k,1583) - lu(k,987) * lu(k,1569) + lu(k,1584) = lu(k,1584) - lu(k,988) * lu(k,1569) + lu(k,1020) = 1._r8 / lu(k,1020) + lu(k,1021) = lu(k,1021) * lu(k,1020) + lu(k,1022) = lu(k,1022) * lu(k,1020) + lu(k,1023) = lu(k,1023) * lu(k,1020) + lu(k,1024) = lu(k,1024) * lu(k,1020) + lu(k,1025) = lu(k,1025) * lu(k,1020) + lu(k,1026) = lu(k,1026) * lu(k,1020) + lu(k,1027) = lu(k,1027) * lu(k,1020) + lu(k,1028) = lu(k,1028) * lu(k,1020) + lu(k,1029) = lu(k,1029) * lu(k,1020) + lu(k,1030) = lu(k,1030) * lu(k,1020) + lu(k,1031) = lu(k,1031) * lu(k,1020) + lu(k,1032) = lu(k,1032) * lu(k,1020) + lu(k,1033) = lu(k,1033) * lu(k,1020) + lu(k,1034) = lu(k,1034) * lu(k,1020) + lu(k,1042) = lu(k,1042) - lu(k,1021) * lu(k,1041) + lu(k,1043) = lu(k,1043) - lu(k,1022) * lu(k,1041) + lu(k,1044) = lu(k,1044) - lu(k,1023) * lu(k,1041) + lu(k,1045) = lu(k,1045) - lu(k,1024) * lu(k,1041) + lu(k,1046) = lu(k,1046) - lu(k,1025) * lu(k,1041) + lu(k,1047) = lu(k,1047) - lu(k,1026) * lu(k,1041) + lu(k,1048) = lu(k,1048) - lu(k,1027) * lu(k,1041) + lu(k,1049) = lu(k,1049) - lu(k,1028) * lu(k,1041) + lu(k,1050) = lu(k,1050) - lu(k,1029) * lu(k,1041) + lu(k,1051) = lu(k,1051) - lu(k,1030) * lu(k,1041) + lu(k,1052) = lu(k,1052) - lu(k,1031) * lu(k,1041) + lu(k,1053) = lu(k,1053) - lu(k,1032) * lu(k,1041) + lu(k,1054) = lu(k,1054) - lu(k,1033) * lu(k,1041) + lu(k,1055) = lu(k,1055) - lu(k,1034) * lu(k,1041) + lu(k,1079) = lu(k,1079) - lu(k,1021) * lu(k,1078) + lu(k,1080) = lu(k,1080) - lu(k,1022) * lu(k,1078) + lu(k,1081) = lu(k,1081) - lu(k,1023) * lu(k,1078) + lu(k,1082) = lu(k,1082) - lu(k,1024) * lu(k,1078) + lu(k,1083) = lu(k,1083) - lu(k,1025) * lu(k,1078) + lu(k,1084) = lu(k,1084) - lu(k,1026) * lu(k,1078) + lu(k,1085) = lu(k,1085) - lu(k,1027) * lu(k,1078) + lu(k,1086) = lu(k,1086) - lu(k,1028) * lu(k,1078) + lu(k,1087) = lu(k,1087) - lu(k,1029) * lu(k,1078) + lu(k,1088) = lu(k,1088) - lu(k,1030) * lu(k,1078) + lu(k,1089) = lu(k,1089) - lu(k,1031) * lu(k,1078) + lu(k,1090) = lu(k,1090) - lu(k,1032) * lu(k,1078) + lu(k,1091) = lu(k,1091) - lu(k,1033) * lu(k,1078) + lu(k,1092) = lu(k,1092) - lu(k,1034) * lu(k,1078) + lu(k,1127) = lu(k,1127) - lu(k,1021) * lu(k,1126) + lu(k,1128) = lu(k,1128) - lu(k,1022) * lu(k,1126) + lu(k,1129) = lu(k,1129) - lu(k,1023) * lu(k,1126) + lu(k,1130) = lu(k,1130) - lu(k,1024) * lu(k,1126) + lu(k,1131) = lu(k,1131) - lu(k,1025) * lu(k,1126) + lu(k,1132) = lu(k,1132) - lu(k,1026) * lu(k,1126) + lu(k,1133) = lu(k,1133) - lu(k,1027) * lu(k,1126) + lu(k,1134) = lu(k,1134) - lu(k,1028) * lu(k,1126) + lu(k,1135) = lu(k,1135) - lu(k,1029) * lu(k,1126) + lu(k,1136) = lu(k,1136) - lu(k,1030) * lu(k,1126) + lu(k,1137) = lu(k,1137) - lu(k,1031) * lu(k,1126) + lu(k,1138) = lu(k,1138) - lu(k,1032) * lu(k,1126) + lu(k,1139) = lu(k,1139) - lu(k,1033) * lu(k,1126) + lu(k,1140) = lu(k,1140) - lu(k,1034) * lu(k,1126) + lu(k,1169) = lu(k,1169) - lu(k,1021) * lu(k,1168) + lu(k,1170) = lu(k,1170) - lu(k,1022) * lu(k,1168) + lu(k,1171) = lu(k,1171) - lu(k,1023) * lu(k,1168) + lu(k,1172) = lu(k,1172) - lu(k,1024) * lu(k,1168) + lu(k,1173) = lu(k,1173) - lu(k,1025) * lu(k,1168) + lu(k,1174) = lu(k,1174) - lu(k,1026) * lu(k,1168) + lu(k,1175) = lu(k,1175) - lu(k,1027) * lu(k,1168) + lu(k,1176) = lu(k,1176) - lu(k,1028) * lu(k,1168) + lu(k,1177) = lu(k,1177) - lu(k,1029) * lu(k,1168) + lu(k,1178) = lu(k,1178) - lu(k,1030) * lu(k,1168) + lu(k,1179) = lu(k,1179) - lu(k,1031) * lu(k,1168) + lu(k,1180) = lu(k,1180) - lu(k,1032) * lu(k,1168) + lu(k,1181) = lu(k,1181) - lu(k,1033) * lu(k,1168) + lu(k,1182) = lu(k,1182) - lu(k,1034) * lu(k,1168) + lu(k,1258) = lu(k,1258) - lu(k,1021) * lu(k,1257) + lu(k,1259) = lu(k,1259) - lu(k,1022) * lu(k,1257) + lu(k,1260) = lu(k,1260) - lu(k,1023) * lu(k,1257) + lu(k,1261) = lu(k,1261) - lu(k,1024) * lu(k,1257) + lu(k,1262) = lu(k,1262) - lu(k,1025) * lu(k,1257) + lu(k,1263) = lu(k,1263) - lu(k,1026) * lu(k,1257) + lu(k,1264) = lu(k,1264) - lu(k,1027) * lu(k,1257) + lu(k,1265) = lu(k,1265) - lu(k,1028) * lu(k,1257) + lu(k,1266) = lu(k,1266) - lu(k,1029) * lu(k,1257) + lu(k,1267) = lu(k,1267) - lu(k,1030) * lu(k,1257) + lu(k,1268) = lu(k,1268) - lu(k,1031) * lu(k,1257) + lu(k,1269) = lu(k,1269) - lu(k,1032) * lu(k,1257) + lu(k,1270) = lu(k,1270) - lu(k,1033) * lu(k,1257) + lu(k,1271) = lu(k,1271) - lu(k,1034) * lu(k,1257) + lu(k,1296) = lu(k,1296) - lu(k,1021) * lu(k,1295) + lu(k,1297) = lu(k,1297) - lu(k,1022) * lu(k,1295) + lu(k,1298) = lu(k,1298) - lu(k,1023) * lu(k,1295) + lu(k,1299) = lu(k,1299) - lu(k,1024) * lu(k,1295) + lu(k,1300) = lu(k,1300) - lu(k,1025) * lu(k,1295) + lu(k,1301) = lu(k,1301) - lu(k,1026) * lu(k,1295) + lu(k,1302) = lu(k,1302) - lu(k,1027) * lu(k,1295) + lu(k,1303) = lu(k,1303) - lu(k,1028) * lu(k,1295) + lu(k,1304) = lu(k,1304) - lu(k,1029) * lu(k,1295) + lu(k,1305) = lu(k,1305) - lu(k,1030) * lu(k,1295) + lu(k,1306) = lu(k,1306) - lu(k,1031) * lu(k,1295) + lu(k,1307) = lu(k,1307) - lu(k,1032) * lu(k,1295) + lu(k,1308) = lu(k,1308) - lu(k,1033) * lu(k,1295) + lu(k,1309) = lu(k,1309) - lu(k,1034) * lu(k,1295) + lu(k,1323) = lu(k,1323) - lu(k,1021) * lu(k,1322) + lu(k,1324) = lu(k,1324) - lu(k,1022) * lu(k,1322) + lu(k,1325) = lu(k,1325) - lu(k,1023) * lu(k,1322) + lu(k,1326) = lu(k,1326) - lu(k,1024) * lu(k,1322) + lu(k,1327) = lu(k,1327) - lu(k,1025) * lu(k,1322) + lu(k,1328) = lu(k,1328) - lu(k,1026) * lu(k,1322) + lu(k,1329) = lu(k,1329) - lu(k,1027) * lu(k,1322) + lu(k,1330) = lu(k,1330) - lu(k,1028) * lu(k,1322) + lu(k,1331) = lu(k,1331) - lu(k,1029) * lu(k,1322) + lu(k,1332) = lu(k,1332) - lu(k,1030) * lu(k,1322) + lu(k,1333) = lu(k,1333) - lu(k,1031) * lu(k,1322) + lu(k,1334) = lu(k,1334) - lu(k,1032) * lu(k,1322) + lu(k,1335) = lu(k,1335) - lu(k,1033) * lu(k,1322) + lu(k,1336) = lu(k,1336) - lu(k,1034) * lu(k,1322) + lu(k,1347) = lu(k,1347) - lu(k,1021) * lu(k,1346) + lu(k,1348) = lu(k,1348) - lu(k,1022) * lu(k,1346) + lu(k,1349) = lu(k,1349) - lu(k,1023) * lu(k,1346) + lu(k,1350) = lu(k,1350) - lu(k,1024) * lu(k,1346) + lu(k,1351) = lu(k,1351) - lu(k,1025) * lu(k,1346) + lu(k,1352) = lu(k,1352) - lu(k,1026) * lu(k,1346) + lu(k,1353) = lu(k,1353) - lu(k,1027) * lu(k,1346) + lu(k,1354) = lu(k,1354) - lu(k,1028) * lu(k,1346) + lu(k,1355) = lu(k,1355) - lu(k,1029) * lu(k,1346) + lu(k,1356) = lu(k,1356) - lu(k,1030) * lu(k,1346) + lu(k,1357) = lu(k,1357) - lu(k,1031) * lu(k,1346) + lu(k,1358) = lu(k,1358) - lu(k,1032) * lu(k,1346) + lu(k,1359) = lu(k,1359) - lu(k,1033) * lu(k,1346) + lu(k,1360) = lu(k,1360) - lu(k,1034) * lu(k,1346) + lu(k,1406) = lu(k,1406) - lu(k,1021) * lu(k,1405) + lu(k,1407) = lu(k,1407) - lu(k,1022) * lu(k,1405) + lu(k,1408) = lu(k,1408) - lu(k,1023) * lu(k,1405) + lu(k,1409) = lu(k,1409) - lu(k,1024) * lu(k,1405) + lu(k,1410) = lu(k,1410) - lu(k,1025) * lu(k,1405) + lu(k,1411) = lu(k,1411) - lu(k,1026) * lu(k,1405) + lu(k,1412) = lu(k,1412) - lu(k,1027) * lu(k,1405) + lu(k,1413) = lu(k,1413) - lu(k,1028) * lu(k,1405) + lu(k,1414) = lu(k,1414) - lu(k,1029) * lu(k,1405) + lu(k,1415) = lu(k,1415) - lu(k,1030) * lu(k,1405) + lu(k,1416) = lu(k,1416) - lu(k,1031) * lu(k,1405) + lu(k,1417) = lu(k,1417) - lu(k,1032) * lu(k,1405) + lu(k,1418) = lu(k,1418) - lu(k,1033) * lu(k,1405) + lu(k,1419) = lu(k,1419) - lu(k,1034) * lu(k,1405) + lu(k,1430) = lu(k,1430) - lu(k,1021) * lu(k,1429) + lu(k,1431) = lu(k,1431) - lu(k,1022) * lu(k,1429) + lu(k,1432) = lu(k,1432) - lu(k,1023) * lu(k,1429) + lu(k,1433) = lu(k,1433) - lu(k,1024) * lu(k,1429) + lu(k,1434) = lu(k,1434) - lu(k,1025) * lu(k,1429) + lu(k,1435) = lu(k,1435) - lu(k,1026) * lu(k,1429) + lu(k,1436) = lu(k,1436) - lu(k,1027) * lu(k,1429) + lu(k,1437) = lu(k,1437) - lu(k,1028) * lu(k,1429) + lu(k,1438) = lu(k,1438) - lu(k,1029) * lu(k,1429) + lu(k,1439) = lu(k,1439) - lu(k,1030) * lu(k,1429) + lu(k,1440) = lu(k,1440) - lu(k,1031) * lu(k,1429) + lu(k,1441) = lu(k,1441) - lu(k,1032) * lu(k,1429) + lu(k,1442) = lu(k,1442) - lu(k,1033) * lu(k,1429) + lu(k,1443) = lu(k,1443) - lu(k,1034) * lu(k,1429) + lu(k,1475) = lu(k,1475) - lu(k,1021) * lu(k,1474) + lu(k,1476) = lu(k,1476) - lu(k,1022) * lu(k,1474) + lu(k,1477) = lu(k,1477) - lu(k,1023) * lu(k,1474) + lu(k,1478) = lu(k,1478) - lu(k,1024) * lu(k,1474) + lu(k,1479) = lu(k,1479) - lu(k,1025) * lu(k,1474) + lu(k,1480) = lu(k,1480) - lu(k,1026) * lu(k,1474) + lu(k,1481) = lu(k,1481) - lu(k,1027) * lu(k,1474) + lu(k,1482) = lu(k,1482) - lu(k,1028) * lu(k,1474) + lu(k,1483) = lu(k,1483) - lu(k,1029) * lu(k,1474) + lu(k,1484) = lu(k,1484) - lu(k,1030) * lu(k,1474) + lu(k,1485) = lu(k,1485) - lu(k,1031) * lu(k,1474) + lu(k,1486) = lu(k,1486) - lu(k,1032) * lu(k,1474) + lu(k,1487) = lu(k,1487) - lu(k,1033) * lu(k,1474) + lu(k,1488) = lu(k,1488) - lu(k,1034) * lu(k,1474) + lu(k,1498) = lu(k,1498) - lu(k,1021) * lu(k,1497) + lu(k,1499) = lu(k,1499) - lu(k,1022) * lu(k,1497) + lu(k,1500) = lu(k,1500) - lu(k,1023) * lu(k,1497) + lu(k,1501) = lu(k,1501) - lu(k,1024) * lu(k,1497) + lu(k,1502) = lu(k,1502) - lu(k,1025) * lu(k,1497) + lu(k,1503) = lu(k,1503) - lu(k,1026) * lu(k,1497) + lu(k,1504) = lu(k,1504) - lu(k,1027) * lu(k,1497) + lu(k,1505) = lu(k,1505) - lu(k,1028) * lu(k,1497) + lu(k,1506) = lu(k,1506) - lu(k,1029) * lu(k,1497) + lu(k,1507) = lu(k,1507) - lu(k,1030) * lu(k,1497) + lu(k,1508) = lu(k,1508) - lu(k,1031) * lu(k,1497) + lu(k,1509) = lu(k,1509) - lu(k,1032) * lu(k,1497) + lu(k,1510) = lu(k,1510) - lu(k,1033) * lu(k,1497) + lu(k,1511) = lu(k,1511) - lu(k,1034) * lu(k,1497) + lu(k,1544) = lu(k,1544) - lu(k,1021) * lu(k,1543) + lu(k,1545) = lu(k,1545) - lu(k,1022) * lu(k,1543) + lu(k,1546) = lu(k,1546) - lu(k,1023) * lu(k,1543) + lu(k,1547) = lu(k,1547) - lu(k,1024) * lu(k,1543) + lu(k,1548) = lu(k,1548) - lu(k,1025) * lu(k,1543) + lu(k,1549) = lu(k,1549) - lu(k,1026) * lu(k,1543) + lu(k,1550) = lu(k,1550) - lu(k,1027) * lu(k,1543) + lu(k,1551) = lu(k,1551) - lu(k,1028) * lu(k,1543) + lu(k,1552) = lu(k,1552) - lu(k,1029) * lu(k,1543) + lu(k,1553) = lu(k,1553) - lu(k,1030) * lu(k,1543) + lu(k,1554) = lu(k,1554) - lu(k,1031) * lu(k,1543) + lu(k,1555) = lu(k,1555) - lu(k,1032) * lu(k,1543) + lu(k,1556) = lu(k,1556) - lu(k,1033) * lu(k,1543) + lu(k,1557) = lu(k,1557) - lu(k,1034) * lu(k,1543) + lu(k,1571) = lu(k,1571) - lu(k,1021) * lu(k,1570) + lu(k,1572) = lu(k,1572) - lu(k,1022) * lu(k,1570) + lu(k,1573) = lu(k,1573) - lu(k,1023) * lu(k,1570) + lu(k,1574) = lu(k,1574) - lu(k,1024) * lu(k,1570) + lu(k,1575) = lu(k,1575) - lu(k,1025) * lu(k,1570) + lu(k,1576) = lu(k,1576) - lu(k,1026) * lu(k,1570) + lu(k,1577) = lu(k,1577) - lu(k,1027) * lu(k,1570) + lu(k,1578) = lu(k,1578) - lu(k,1028) * lu(k,1570) + lu(k,1579) = lu(k,1579) - lu(k,1029) * lu(k,1570) + lu(k,1580) = lu(k,1580) - lu(k,1030) * lu(k,1570) + lu(k,1581) = lu(k,1581) - lu(k,1031) * lu(k,1570) + lu(k,1582) = lu(k,1582) - lu(k,1032) * lu(k,1570) + lu(k,1583) = lu(k,1583) - lu(k,1033) * lu(k,1570) + lu(k,1584) = lu(k,1584) - lu(k,1034) * lu(k,1570) end do end subroutine lu_fac19 subroutine lu_fac20( avec_len, lu ) @@ -5514,681 +5516,681 @@ subroutine lu_fac20( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,1021) = 1._r8 / lu(k,1021) - lu(k,1022) = lu(k,1022) * lu(k,1021) - lu(k,1023) = lu(k,1023) * lu(k,1021) - lu(k,1024) = lu(k,1024) * lu(k,1021) - lu(k,1025) = lu(k,1025) * lu(k,1021) - lu(k,1026) = lu(k,1026) * lu(k,1021) - lu(k,1027) = lu(k,1027) * lu(k,1021) - lu(k,1028) = lu(k,1028) * lu(k,1021) - lu(k,1029) = lu(k,1029) * lu(k,1021) - lu(k,1030) = lu(k,1030) * lu(k,1021) - lu(k,1031) = lu(k,1031) * lu(k,1021) - lu(k,1032) = lu(k,1032) * lu(k,1021) - lu(k,1033) = lu(k,1033) * lu(k,1021) - lu(k,1034) = lu(k,1034) * lu(k,1021) - lu(k,1081) = lu(k,1081) - lu(k,1022) * lu(k,1080) - lu(k,1082) = lu(k,1082) - lu(k,1023) * lu(k,1080) - lu(k,1083) = lu(k,1083) - lu(k,1024) * lu(k,1080) - lu(k,1084) = lu(k,1084) - lu(k,1025) * lu(k,1080) - lu(k,1085) = lu(k,1085) - lu(k,1026) * lu(k,1080) - lu(k,1086) = lu(k,1086) - lu(k,1027) * lu(k,1080) - lu(k,1087) = lu(k,1087) - lu(k,1028) * lu(k,1080) - lu(k,1088) = lu(k,1088) - lu(k,1029) * lu(k,1080) - lu(k,1089) = lu(k,1089) - lu(k,1030) * lu(k,1080) - lu(k,1090) = lu(k,1090) - lu(k,1031) * lu(k,1080) - lu(k,1091) = lu(k,1091) - lu(k,1032) * lu(k,1080) - lu(k,1092) = lu(k,1092) - lu(k,1033) * lu(k,1080) - lu(k,1093) = lu(k,1093) - lu(k,1034) * lu(k,1080) - lu(k,1127) = lu(k,1127) - lu(k,1022) * lu(k,1126) - lu(k,1128) = lu(k,1128) - lu(k,1023) * lu(k,1126) - lu(k,1129) = lu(k,1129) - lu(k,1024) * lu(k,1126) - lu(k,1130) = lu(k,1130) - lu(k,1025) * lu(k,1126) - lu(k,1131) = lu(k,1131) - lu(k,1026) * lu(k,1126) - lu(k,1132) = lu(k,1132) - lu(k,1027) * lu(k,1126) - lu(k,1133) = lu(k,1133) - lu(k,1028) * lu(k,1126) - lu(k,1134) = lu(k,1134) - lu(k,1029) * lu(k,1126) - lu(k,1135) = lu(k,1135) - lu(k,1030) * lu(k,1126) - lu(k,1136) = lu(k,1136) - lu(k,1031) * lu(k,1126) - lu(k,1137) = lu(k,1137) - lu(k,1032) * lu(k,1126) - lu(k,1138) = lu(k,1138) - lu(k,1033) * lu(k,1126) - lu(k,1139) = lu(k,1139) - lu(k,1034) * lu(k,1126) - lu(k,1150) = lu(k,1150) - lu(k,1022) * lu(k,1149) - lu(k,1151) = lu(k,1151) - lu(k,1023) * lu(k,1149) - lu(k,1152) = lu(k,1152) - lu(k,1024) * lu(k,1149) - lu(k,1153) = lu(k,1153) - lu(k,1025) * lu(k,1149) - lu(k,1154) = lu(k,1154) - lu(k,1026) * lu(k,1149) - lu(k,1155) = lu(k,1155) - lu(k,1027) * lu(k,1149) - lu(k,1156) = lu(k,1156) - lu(k,1028) * lu(k,1149) - lu(k,1157) = lu(k,1157) - lu(k,1029) * lu(k,1149) - lu(k,1158) = lu(k,1158) - lu(k,1030) * lu(k,1149) - lu(k,1159) = lu(k,1159) - lu(k,1031) * lu(k,1149) - lu(k,1160) = lu(k,1160) - lu(k,1032) * lu(k,1149) - lu(k,1161) = lu(k,1161) - lu(k,1033) * lu(k,1149) - lu(k,1162) = lu(k,1162) - lu(k,1034) * lu(k,1149) - lu(k,1191) = lu(k,1191) - lu(k,1022) * lu(k,1190) - lu(k,1192) = lu(k,1192) - lu(k,1023) * lu(k,1190) - lu(k,1193) = lu(k,1193) - lu(k,1024) * lu(k,1190) - lu(k,1194) = lu(k,1194) - lu(k,1025) * lu(k,1190) - lu(k,1195) = lu(k,1195) - lu(k,1026) * lu(k,1190) - lu(k,1196) = lu(k,1196) - lu(k,1027) * lu(k,1190) - lu(k,1197) = lu(k,1197) - lu(k,1028) * lu(k,1190) - lu(k,1198) = lu(k,1198) - lu(k,1029) * lu(k,1190) - lu(k,1199) = lu(k,1199) - lu(k,1030) * lu(k,1190) - lu(k,1200) = lu(k,1200) - lu(k,1031) * lu(k,1190) - lu(k,1201) = lu(k,1201) - lu(k,1032) * lu(k,1190) - lu(k,1202) = lu(k,1202) - lu(k,1033) * lu(k,1190) - lu(k,1203) = lu(k,1203) - lu(k,1034) * lu(k,1190) - lu(k,1237) = lu(k,1237) - lu(k,1022) * lu(k,1236) - lu(k,1238) = lu(k,1238) - lu(k,1023) * lu(k,1236) - lu(k,1239) = lu(k,1239) - lu(k,1024) * lu(k,1236) - lu(k,1240) = lu(k,1240) - lu(k,1025) * lu(k,1236) - lu(k,1241) = lu(k,1241) - lu(k,1026) * lu(k,1236) - lu(k,1242) = lu(k,1242) - lu(k,1027) * lu(k,1236) - lu(k,1243) = lu(k,1243) - lu(k,1028) * lu(k,1236) - lu(k,1244) = lu(k,1244) - lu(k,1029) * lu(k,1236) - lu(k,1245) = lu(k,1245) - lu(k,1030) * lu(k,1236) - lu(k,1246) = lu(k,1246) - lu(k,1031) * lu(k,1236) - lu(k,1247) = lu(k,1247) - lu(k,1032) * lu(k,1236) - lu(k,1248) = lu(k,1248) - lu(k,1033) * lu(k,1236) - lu(k,1249) = lu(k,1249) - lu(k,1034) * lu(k,1236) - lu(k,1279) = lu(k,1279) - lu(k,1022) * lu(k,1278) - lu(k,1280) = lu(k,1280) - lu(k,1023) * lu(k,1278) - lu(k,1281) = lu(k,1281) - lu(k,1024) * lu(k,1278) - lu(k,1282) = lu(k,1282) - lu(k,1025) * lu(k,1278) - lu(k,1283) = lu(k,1283) - lu(k,1026) * lu(k,1278) - lu(k,1284) = lu(k,1284) - lu(k,1027) * lu(k,1278) - lu(k,1285) = lu(k,1285) - lu(k,1028) * lu(k,1278) - lu(k,1286) = lu(k,1286) - lu(k,1029) * lu(k,1278) - lu(k,1287) = lu(k,1287) - lu(k,1030) * lu(k,1278) - lu(k,1288) = lu(k,1288) - lu(k,1031) * lu(k,1278) - lu(k,1289) = lu(k,1289) - lu(k,1032) * lu(k,1278) - lu(k,1290) = lu(k,1290) - lu(k,1033) * lu(k,1278) - lu(k,1291) = lu(k,1291) - lu(k,1034) * lu(k,1278) - lu(k,1317) = lu(k,1317) - lu(k,1022) * lu(k,1316) - lu(k,1318) = lu(k,1318) - lu(k,1023) * lu(k,1316) - lu(k,1319) = lu(k,1319) - lu(k,1024) * lu(k,1316) - lu(k,1320) = lu(k,1320) - lu(k,1025) * lu(k,1316) - lu(k,1321) = lu(k,1321) - lu(k,1026) * lu(k,1316) - lu(k,1322) = lu(k,1322) - lu(k,1027) * lu(k,1316) - lu(k,1323) = lu(k,1323) - lu(k,1028) * lu(k,1316) - lu(k,1324) = lu(k,1324) - lu(k,1029) * lu(k,1316) - lu(k,1325) = lu(k,1325) - lu(k,1030) * lu(k,1316) - lu(k,1326) = lu(k,1326) - lu(k,1031) * lu(k,1316) - lu(k,1327) = lu(k,1327) - lu(k,1032) * lu(k,1316) - lu(k,1328) = lu(k,1328) - lu(k,1033) * lu(k,1316) - lu(k,1329) = lu(k,1329) - lu(k,1034) * lu(k,1316) - lu(k,1406) = lu(k,1406) - lu(k,1022) * lu(k,1405) - lu(k,1407) = lu(k,1407) - lu(k,1023) * lu(k,1405) - lu(k,1408) = lu(k,1408) - lu(k,1024) * lu(k,1405) - lu(k,1409) = lu(k,1409) - lu(k,1025) * lu(k,1405) - lu(k,1410) = lu(k,1410) - lu(k,1026) * lu(k,1405) - lu(k,1411) = lu(k,1411) - lu(k,1027) * lu(k,1405) - lu(k,1412) = lu(k,1412) - lu(k,1028) * lu(k,1405) - lu(k,1413) = lu(k,1413) - lu(k,1029) * lu(k,1405) - lu(k,1414) = lu(k,1414) - lu(k,1030) * lu(k,1405) - lu(k,1415) = lu(k,1415) - lu(k,1031) * lu(k,1405) - lu(k,1416) = lu(k,1416) - lu(k,1032) * lu(k,1405) - lu(k,1417) = lu(k,1417) - lu(k,1033) * lu(k,1405) - lu(k,1418) = lu(k,1418) - lu(k,1034) * lu(k,1405) - lu(k,1451) = lu(k,1451) - lu(k,1022) * lu(k,1450) - lu(k,1452) = lu(k,1452) - lu(k,1023) * lu(k,1450) - lu(k,1453) = lu(k,1453) - lu(k,1024) * lu(k,1450) - lu(k,1454) = lu(k,1454) - lu(k,1025) * lu(k,1450) - lu(k,1455) = lu(k,1455) - lu(k,1026) * lu(k,1450) - lu(k,1456) = lu(k,1456) - lu(k,1027) * lu(k,1450) - lu(k,1457) = lu(k,1457) - lu(k,1028) * lu(k,1450) - lu(k,1458) = lu(k,1458) - lu(k,1029) * lu(k,1450) - lu(k,1459) = lu(k,1459) - lu(k,1030) * lu(k,1450) - lu(k,1460) = lu(k,1460) - lu(k,1031) * lu(k,1450) - lu(k,1461) = lu(k,1461) - lu(k,1032) * lu(k,1450) - lu(k,1462) = lu(k,1462) - lu(k,1033) * lu(k,1450) - lu(k,1463) = lu(k,1463) - lu(k,1034) * lu(k,1450) - lu(k,1499) = lu(k,1499) - lu(k,1022) * lu(k,1498) - lu(k,1500) = lu(k,1500) - lu(k,1023) * lu(k,1498) - lu(k,1501) = lu(k,1501) - lu(k,1024) * lu(k,1498) - lu(k,1502) = lu(k,1502) - lu(k,1025) * lu(k,1498) - lu(k,1503) = lu(k,1503) - lu(k,1026) * lu(k,1498) - lu(k,1504) = lu(k,1504) - lu(k,1027) * lu(k,1498) - lu(k,1505) = lu(k,1505) - lu(k,1028) * lu(k,1498) - lu(k,1506) = lu(k,1506) - lu(k,1029) * lu(k,1498) - lu(k,1507) = lu(k,1507) - lu(k,1030) * lu(k,1498) - lu(k,1508) = lu(k,1508) - lu(k,1031) * lu(k,1498) - lu(k,1509) = lu(k,1509) - lu(k,1032) * lu(k,1498) - lu(k,1510) = lu(k,1510) - lu(k,1033) * lu(k,1498) - lu(k,1511) = lu(k,1511) - lu(k,1034) * lu(k,1498) - lu(k,1524) = lu(k,1524) - lu(k,1022) * lu(k,1523) - lu(k,1525) = lu(k,1525) - lu(k,1023) * lu(k,1523) - lu(k,1526) = lu(k,1526) - lu(k,1024) * lu(k,1523) - lu(k,1527) = lu(k,1527) - lu(k,1025) * lu(k,1523) - lu(k,1528) = lu(k,1528) - lu(k,1026) * lu(k,1523) - lu(k,1529) = lu(k,1529) - lu(k,1027) * lu(k,1523) - lu(k,1530) = lu(k,1530) - lu(k,1028) * lu(k,1523) - lu(k,1531) = lu(k,1531) - lu(k,1029) * lu(k,1523) - lu(k,1532) = lu(k,1532) - lu(k,1030) * lu(k,1523) - lu(k,1533) = lu(k,1533) - lu(k,1031) * lu(k,1523) - lu(k,1534) = lu(k,1534) - lu(k,1032) * lu(k,1523) - lu(k,1535) = lu(k,1535) - lu(k,1033) * lu(k,1523) - lu(k,1536) = lu(k,1536) - lu(k,1034) * lu(k,1523) - lu(k,1545) = lu(k,1545) - lu(k,1022) * lu(k,1544) - lu(k,1546) = lu(k,1546) - lu(k,1023) * lu(k,1544) - lu(k,1547) = lu(k,1547) - lu(k,1024) * lu(k,1544) - lu(k,1548) = lu(k,1548) - lu(k,1025) * lu(k,1544) - lu(k,1549) = lu(k,1549) - lu(k,1026) * lu(k,1544) - lu(k,1550) = lu(k,1550) - lu(k,1027) * lu(k,1544) - lu(k,1551) = lu(k,1551) - lu(k,1028) * lu(k,1544) - lu(k,1552) = lu(k,1552) - lu(k,1029) * lu(k,1544) - lu(k,1553) = lu(k,1553) - lu(k,1030) * lu(k,1544) - lu(k,1554) = lu(k,1554) - lu(k,1031) * lu(k,1544) - lu(k,1555) = lu(k,1555) - lu(k,1032) * lu(k,1544) - lu(k,1556) = lu(k,1556) - lu(k,1033) * lu(k,1544) - lu(k,1557) = lu(k,1557) - lu(k,1034) * lu(k,1544) - lu(k,1572) = lu(k,1572) - lu(k,1022) * lu(k,1571) - lu(k,1573) = lu(k,1573) - lu(k,1023) * lu(k,1571) - lu(k,1574) = lu(k,1574) - lu(k,1024) * lu(k,1571) - lu(k,1575) = lu(k,1575) - lu(k,1025) * lu(k,1571) - lu(k,1576) = lu(k,1576) - lu(k,1026) * lu(k,1571) - lu(k,1577) = lu(k,1577) - lu(k,1027) * lu(k,1571) - lu(k,1578) = lu(k,1578) - lu(k,1028) * lu(k,1571) - lu(k,1579) = lu(k,1579) - lu(k,1029) * lu(k,1571) - lu(k,1580) = lu(k,1580) - lu(k,1030) * lu(k,1571) - lu(k,1581) = lu(k,1581) - lu(k,1031) * lu(k,1571) - lu(k,1582) = lu(k,1582) - lu(k,1032) * lu(k,1571) - lu(k,1583) = lu(k,1583) - lu(k,1033) * lu(k,1571) - lu(k,1584) = lu(k,1584) - lu(k,1034) * lu(k,1571) - lu(k,1081) = 1._r8 / lu(k,1081) - lu(k,1082) = lu(k,1082) * lu(k,1081) - lu(k,1083) = lu(k,1083) * lu(k,1081) - lu(k,1084) = lu(k,1084) * lu(k,1081) - lu(k,1085) = lu(k,1085) * lu(k,1081) - lu(k,1086) = lu(k,1086) * lu(k,1081) - lu(k,1087) = lu(k,1087) * lu(k,1081) - lu(k,1088) = lu(k,1088) * lu(k,1081) - lu(k,1089) = lu(k,1089) * lu(k,1081) - lu(k,1090) = lu(k,1090) * lu(k,1081) - lu(k,1091) = lu(k,1091) * lu(k,1081) - lu(k,1092) = lu(k,1092) * lu(k,1081) - lu(k,1093) = lu(k,1093) * lu(k,1081) - lu(k,1128) = lu(k,1128) - lu(k,1082) * lu(k,1127) - lu(k,1129) = lu(k,1129) - lu(k,1083) * lu(k,1127) - lu(k,1130) = lu(k,1130) - lu(k,1084) * lu(k,1127) - lu(k,1131) = lu(k,1131) - lu(k,1085) * lu(k,1127) - lu(k,1132) = lu(k,1132) - lu(k,1086) * lu(k,1127) - lu(k,1133) = lu(k,1133) - lu(k,1087) * lu(k,1127) - lu(k,1134) = lu(k,1134) - lu(k,1088) * lu(k,1127) - lu(k,1135) = lu(k,1135) - lu(k,1089) * lu(k,1127) - lu(k,1136) = lu(k,1136) - lu(k,1090) * lu(k,1127) - lu(k,1137) = lu(k,1137) - lu(k,1091) * lu(k,1127) - lu(k,1138) = lu(k,1138) - lu(k,1092) * lu(k,1127) - lu(k,1139) = lu(k,1139) - lu(k,1093) * lu(k,1127) - lu(k,1151) = lu(k,1151) - lu(k,1082) * lu(k,1150) - lu(k,1152) = lu(k,1152) - lu(k,1083) * lu(k,1150) - lu(k,1153) = lu(k,1153) - lu(k,1084) * lu(k,1150) - lu(k,1154) = lu(k,1154) - lu(k,1085) * lu(k,1150) - lu(k,1155) = lu(k,1155) - lu(k,1086) * lu(k,1150) - lu(k,1156) = lu(k,1156) - lu(k,1087) * lu(k,1150) - lu(k,1157) = lu(k,1157) - lu(k,1088) * lu(k,1150) - lu(k,1158) = lu(k,1158) - lu(k,1089) * lu(k,1150) - lu(k,1159) = lu(k,1159) - lu(k,1090) * lu(k,1150) - lu(k,1160) = lu(k,1160) - lu(k,1091) * lu(k,1150) - lu(k,1161) = lu(k,1161) - lu(k,1092) * lu(k,1150) - lu(k,1162) = lu(k,1162) - lu(k,1093) * lu(k,1150) - lu(k,1192) = lu(k,1192) - lu(k,1082) * lu(k,1191) - lu(k,1193) = lu(k,1193) - lu(k,1083) * lu(k,1191) - lu(k,1194) = lu(k,1194) - lu(k,1084) * lu(k,1191) - lu(k,1195) = lu(k,1195) - lu(k,1085) * lu(k,1191) - lu(k,1196) = lu(k,1196) - lu(k,1086) * lu(k,1191) - lu(k,1197) = lu(k,1197) - lu(k,1087) * lu(k,1191) - lu(k,1198) = lu(k,1198) - lu(k,1088) * lu(k,1191) - lu(k,1199) = lu(k,1199) - lu(k,1089) * lu(k,1191) - lu(k,1200) = lu(k,1200) - lu(k,1090) * lu(k,1191) - lu(k,1201) = lu(k,1201) - lu(k,1091) * lu(k,1191) - lu(k,1202) = lu(k,1202) - lu(k,1092) * lu(k,1191) - lu(k,1203) = lu(k,1203) - lu(k,1093) * lu(k,1191) - lu(k,1238) = lu(k,1238) - lu(k,1082) * lu(k,1237) - lu(k,1239) = lu(k,1239) - lu(k,1083) * lu(k,1237) - lu(k,1240) = lu(k,1240) - lu(k,1084) * lu(k,1237) - lu(k,1241) = lu(k,1241) - lu(k,1085) * lu(k,1237) - lu(k,1242) = lu(k,1242) - lu(k,1086) * lu(k,1237) - lu(k,1243) = lu(k,1243) - lu(k,1087) * lu(k,1237) - lu(k,1244) = lu(k,1244) - lu(k,1088) * lu(k,1237) - lu(k,1245) = lu(k,1245) - lu(k,1089) * lu(k,1237) - lu(k,1246) = lu(k,1246) - lu(k,1090) * lu(k,1237) - lu(k,1247) = lu(k,1247) - lu(k,1091) * lu(k,1237) - lu(k,1248) = lu(k,1248) - lu(k,1092) * lu(k,1237) - lu(k,1249) = lu(k,1249) - lu(k,1093) * lu(k,1237) - lu(k,1280) = lu(k,1280) - lu(k,1082) * lu(k,1279) - lu(k,1281) = lu(k,1281) - lu(k,1083) * lu(k,1279) - lu(k,1282) = lu(k,1282) - lu(k,1084) * lu(k,1279) - lu(k,1283) = lu(k,1283) - lu(k,1085) * lu(k,1279) - lu(k,1284) = lu(k,1284) - lu(k,1086) * lu(k,1279) - lu(k,1285) = lu(k,1285) - lu(k,1087) * lu(k,1279) - lu(k,1286) = lu(k,1286) - lu(k,1088) * lu(k,1279) - lu(k,1287) = lu(k,1287) - lu(k,1089) * lu(k,1279) - lu(k,1288) = lu(k,1288) - lu(k,1090) * lu(k,1279) - lu(k,1289) = lu(k,1289) - lu(k,1091) * lu(k,1279) - lu(k,1290) = lu(k,1290) - lu(k,1092) * lu(k,1279) - lu(k,1291) = lu(k,1291) - lu(k,1093) * lu(k,1279) - lu(k,1318) = lu(k,1318) - lu(k,1082) * lu(k,1317) - lu(k,1319) = lu(k,1319) - lu(k,1083) * lu(k,1317) - lu(k,1320) = lu(k,1320) - lu(k,1084) * lu(k,1317) - lu(k,1321) = lu(k,1321) - lu(k,1085) * lu(k,1317) - lu(k,1322) = lu(k,1322) - lu(k,1086) * lu(k,1317) - lu(k,1323) = lu(k,1323) - lu(k,1087) * lu(k,1317) - lu(k,1324) = lu(k,1324) - lu(k,1088) * lu(k,1317) - lu(k,1325) = lu(k,1325) - lu(k,1089) * lu(k,1317) - lu(k,1326) = lu(k,1326) - lu(k,1090) * lu(k,1317) - lu(k,1327) = lu(k,1327) - lu(k,1091) * lu(k,1317) - lu(k,1328) = lu(k,1328) - lu(k,1092) * lu(k,1317) - lu(k,1329) = lu(k,1329) - lu(k,1093) * lu(k,1317) - lu(k,1407) = lu(k,1407) - lu(k,1082) * lu(k,1406) - lu(k,1408) = lu(k,1408) - lu(k,1083) * lu(k,1406) - lu(k,1409) = lu(k,1409) - lu(k,1084) * lu(k,1406) - lu(k,1410) = lu(k,1410) - lu(k,1085) * lu(k,1406) - lu(k,1411) = lu(k,1411) - lu(k,1086) * lu(k,1406) - lu(k,1412) = lu(k,1412) - lu(k,1087) * lu(k,1406) - lu(k,1413) = lu(k,1413) - lu(k,1088) * lu(k,1406) - lu(k,1414) = lu(k,1414) - lu(k,1089) * lu(k,1406) - lu(k,1415) = lu(k,1415) - lu(k,1090) * lu(k,1406) - lu(k,1416) = lu(k,1416) - lu(k,1091) * lu(k,1406) - lu(k,1417) = lu(k,1417) - lu(k,1092) * lu(k,1406) - lu(k,1418) = lu(k,1418) - lu(k,1093) * lu(k,1406) - lu(k,1452) = lu(k,1452) - lu(k,1082) * lu(k,1451) - lu(k,1453) = lu(k,1453) - lu(k,1083) * lu(k,1451) - lu(k,1454) = lu(k,1454) - lu(k,1084) * lu(k,1451) - lu(k,1455) = lu(k,1455) - lu(k,1085) * lu(k,1451) - lu(k,1456) = lu(k,1456) - lu(k,1086) * lu(k,1451) - lu(k,1457) = lu(k,1457) - lu(k,1087) * lu(k,1451) - lu(k,1458) = lu(k,1458) - lu(k,1088) * lu(k,1451) - lu(k,1459) = lu(k,1459) - lu(k,1089) * lu(k,1451) - lu(k,1460) = lu(k,1460) - lu(k,1090) * lu(k,1451) - lu(k,1461) = lu(k,1461) - lu(k,1091) * lu(k,1451) - lu(k,1462) = lu(k,1462) - lu(k,1092) * lu(k,1451) - lu(k,1463) = lu(k,1463) - lu(k,1093) * lu(k,1451) - lu(k,1500) = lu(k,1500) - lu(k,1082) * lu(k,1499) - lu(k,1501) = lu(k,1501) - lu(k,1083) * lu(k,1499) - lu(k,1502) = lu(k,1502) - lu(k,1084) * lu(k,1499) - lu(k,1503) = lu(k,1503) - lu(k,1085) * lu(k,1499) - lu(k,1504) = lu(k,1504) - lu(k,1086) * lu(k,1499) - lu(k,1505) = lu(k,1505) - lu(k,1087) * lu(k,1499) - lu(k,1506) = lu(k,1506) - lu(k,1088) * lu(k,1499) - lu(k,1507) = lu(k,1507) - lu(k,1089) * lu(k,1499) - lu(k,1508) = lu(k,1508) - lu(k,1090) * lu(k,1499) - lu(k,1509) = lu(k,1509) - lu(k,1091) * lu(k,1499) - lu(k,1510) = lu(k,1510) - lu(k,1092) * lu(k,1499) - lu(k,1511) = lu(k,1511) - lu(k,1093) * lu(k,1499) - lu(k,1525) = lu(k,1525) - lu(k,1082) * lu(k,1524) - lu(k,1526) = lu(k,1526) - lu(k,1083) * lu(k,1524) - lu(k,1527) = lu(k,1527) - lu(k,1084) * lu(k,1524) - lu(k,1528) = lu(k,1528) - lu(k,1085) * lu(k,1524) - lu(k,1529) = lu(k,1529) - lu(k,1086) * lu(k,1524) - lu(k,1530) = lu(k,1530) - lu(k,1087) * lu(k,1524) - lu(k,1531) = lu(k,1531) - lu(k,1088) * lu(k,1524) - lu(k,1532) = lu(k,1532) - lu(k,1089) * lu(k,1524) - lu(k,1533) = lu(k,1533) - lu(k,1090) * lu(k,1524) - lu(k,1534) = lu(k,1534) - lu(k,1091) * lu(k,1524) - lu(k,1535) = lu(k,1535) - lu(k,1092) * lu(k,1524) - lu(k,1536) = lu(k,1536) - lu(k,1093) * lu(k,1524) - lu(k,1546) = lu(k,1546) - lu(k,1082) * lu(k,1545) - lu(k,1547) = lu(k,1547) - lu(k,1083) * lu(k,1545) - lu(k,1548) = lu(k,1548) - lu(k,1084) * lu(k,1545) - lu(k,1549) = lu(k,1549) - lu(k,1085) * lu(k,1545) - lu(k,1550) = lu(k,1550) - lu(k,1086) * lu(k,1545) - lu(k,1551) = lu(k,1551) - lu(k,1087) * lu(k,1545) - lu(k,1552) = lu(k,1552) - lu(k,1088) * lu(k,1545) - lu(k,1553) = lu(k,1553) - lu(k,1089) * lu(k,1545) - lu(k,1554) = lu(k,1554) - lu(k,1090) * lu(k,1545) - lu(k,1555) = lu(k,1555) - lu(k,1091) * lu(k,1545) - lu(k,1556) = lu(k,1556) - lu(k,1092) * lu(k,1545) - lu(k,1557) = lu(k,1557) - lu(k,1093) * lu(k,1545) - lu(k,1573) = lu(k,1573) - lu(k,1082) * lu(k,1572) - lu(k,1574) = lu(k,1574) - lu(k,1083) * lu(k,1572) - lu(k,1575) = lu(k,1575) - lu(k,1084) * lu(k,1572) - lu(k,1576) = lu(k,1576) - lu(k,1085) * lu(k,1572) - lu(k,1577) = lu(k,1577) - lu(k,1086) * lu(k,1572) - lu(k,1578) = lu(k,1578) - lu(k,1087) * lu(k,1572) - lu(k,1579) = lu(k,1579) - lu(k,1088) * lu(k,1572) - lu(k,1580) = lu(k,1580) - lu(k,1089) * lu(k,1572) - lu(k,1581) = lu(k,1581) - lu(k,1090) * lu(k,1572) - lu(k,1582) = lu(k,1582) - lu(k,1091) * lu(k,1572) - lu(k,1583) = lu(k,1583) - lu(k,1092) * lu(k,1572) - lu(k,1584) = lu(k,1584) - lu(k,1093) * lu(k,1572) - lu(k,1128) = 1._r8 / lu(k,1128) - lu(k,1129) = lu(k,1129) * lu(k,1128) - lu(k,1130) = lu(k,1130) * lu(k,1128) - lu(k,1131) = lu(k,1131) * lu(k,1128) - lu(k,1132) = lu(k,1132) * lu(k,1128) - lu(k,1133) = lu(k,1133) * lu(k,1128) - lu(k,1134) = lu(k,1134) * lu(k,1128) - lu(k,1135) = lu(k,1135) * lu(k,1128) - lu(k,1136) = lu(k,1136) * lu(k,1128) - lu(k,1137) = lu(k,1137) * lu(k,1128) - lu(k,1138) = lu(k,1138) * lu(k,1128) - lu(k,1139) = lu(k,1139) * lu(k,1128) - lu(k,1152) = lu(k,1152) - lu(k,1129) * lu(k,1151) - lu(k,1153) = lu(k,1153) - lu(k,1130) * lu(k,1151) - lu(k,1154) = lu(k,1154) - lu(k,1131) * lu(k,1151) - lu(k,1155) = lu(k,1155) - lu(k,1132) * lu(k,1151) - lu(k,1156) = lu(k,1156) - lu(k,1133) * lu(k,1151) - lu(k,1157) = lu(k,1157) - lu(k,1134) * lu(k,1151) - lu(k,1158) = lu(k,1158) - lu(k,1135) * lu(k,1151) - lu(k,1159) = lu(k,1159) - lu(k,1136) * lu(k,1151) - lu(k,1160) = lu(k,1160) - lu(k,1137) * lu(k,1151) - lu(k,1161) = lu(k,1161) - lu(k,1138) * lu(k,1151) - lu(k,1162) = lu(k,1162) - lu(k,1139) * lu(k,1151) - lu(k,1193) = lu(k,1193) - lu(k,1129) * lu(k,1192) - lu(k,1194) = lu(k,1194) - lu(k,1130) * lu(k,1192) - lu(k,1195) = lu(k,1195) - lu(k,1131) * lu(k,1192) - lu(k,1196) = lu(k,1196) - lu(k,1132) * lu(k,1192) - lu(k,1197) = lu(k,1197) - lu(k,1133) * lu(k,1192) - lu(k,1198) = lu(k,1198) - lu(k,1134) * lu(k,1192) - lu(k,1199) = lu(k,1199) - lu(k,1135) * lu(k,1192) - lu(k,1200) = lu(k,1200) - lu(k,1136) * lu(k,1192) - lu(k,1201) = lu(k,1201) - lu(k,1137) * lu(k,1192) - lu(k,1202) = lu(k,1202) - lu(k,1138) * lu(k,1192) - lu(k,1203) = lu(k,1203) - lu(k,1139) * lu(k,1192) - lu(k,1239) = lu(k,1239) - lu(k,1129) * lu(k,1238) - lu(k,1240) = lu(k,1240) - lu(k,1130) * lu(k,1238) - lu(k,1241) = lu(k,1241) - lu(k,1131) * lu(k,1238) - lu(k,1242) = lu(k,1242) - lu(k,1132) * lu(k,1238) - lu(k,1243) = lu(k,1243) - lu(k,1133) * lu(k,1238) - lu(k,1244) = lu(k,1244) - lu(k,1134) * lu(k,1238) - lu(k,1245) = lu(k,1245) - lu(k,1135) * lu(k,1238) - lu(k,1246) = lu(k,1246) - lu(k,1136) * lu(k,1238) - lu(k,1247) = lu(k,1247) - lu(k,1137) * lu(k,1238) - lu(k,1248) = lu(k,1248) - lu(k,1138) * lu(k,1238) - lu(k,1249) = lu(k,1249) - lu(k,1139) * lu(k,1238) - lu(k,1281) = lu(k,1281) - lu(k,1129) * lu(k,1280) - lu(k,1282) = lu(k,1282) - lu(k,1130) * lu(k,1280) - lu(k,1283) = lu(k,1283) - lu(k,1131) * lu(k,1280) - lu(k,1284) = lu(k,1284) - lu(k,1132) * lu(k,1280) - lu(k,1285) = lu(k,1285) - lu(k,1133) * lu(k,1280) - lu(k,1286) = lu(k,1286) - lu(k,1134) * lu(k,1280) - lu(k,1287) = lu(k,1287) - lu(k,1135) * lu(k,1280) - lu(k,1288) = lu(k,1288) - lu(k,1136) * lu(k,1280) - lu(k,1289) = lu(k,1289) - lu(k,1137) * lu(k,1280) - lu(k,1290) = lu(k,1290) - lu(k,1138) * lu(k,1280) - lu(k,1291) = lu(k,1291) - lu(k,1139) * lu(k,1280) - lu(k,1319) = lu(k,1319) - lu(k,1129) * lu(k,1318) - lu(k,1320) = lu(k,1320) - lu(k,1130) * lu(k,1318) - lu(k,1321) = lu(k,1321) - lu(k,1131) * lu(k,1318) - lu(k,1322) = lu(k,1322) - lu(k,1132) * lu(k,1318) - lu(k,1323) = lu(k,1323) - lu(k,1133) * lu(k,1318) - lu(k,1324) = lu(k,1324) - lu(k,1134) * lu(k,1318) - lu(k,1325) = lu(k,1325) - lu(k,1135) * lu(k,1318) - lu(k,1326) = lu(k,1326) - lu(k,1136) * lu(k,1318) - lu(k,1327) = lu(k,1327) - lu(k,1137) * lu(k,1318) - lu(k,1328) = lu(k,1328) - lu(k,1138) * lu(k,1318) - lu(k,1329) = lu(k,1329) - lu(k,1139) * lu(k,1318) - lu(k,1408) = lu(k,1408) - lu(k,1129) * lu(k,1407) - lu(k,1409) = lu(k,1409) - lu(k,1130) * lu(k,1407) - lu(k,1410) = lu(k,1410) - lu(k,1131) * lu(k,1407) - lu(k,1411) = lu(k,1411) - lu(k,1132) * lu(k,1407) - lu(k,1412) = lu(k,1412) - lu(k,1133) * lu(k,1407) - lu(k,1413) = lu(k,1413) - lu(k,1134) * lu(k,1407) - lu(k,1414) = lu(k,1414) - lu(k,1135) * lu(k,1407) - lu(k,1415) = lu(k,1415) - lu(k,1136) * lu(k,1407) - lu(k,1416) = lu(k,1416) - lu(k,1137) * lu(k,1407) - lu(k,1417) = lu(k,1417) - lu(k,1138) * lu(k,1407) - lu(k,1418) = lu(k,1418) - lu(k,1139) * lu(k,1407) - lu(k,1453) = lu(k,1453) - lu(k,1129) * lu(k,1452) - lu(k,1454) = lu(k,1454) - lu(k,1130) * lu(k,1452) - lu(k,1455) = lu(k,1455) - lu(k,1131) * lu(k,1452) - lu(k,1456) = lu(k,1456) - lu(k,1132) * lu(k,1452) - lu(k,1457) = lu(k,1457) - lu(k,1133) * lu(k,1452) - lu(k,1458) = lu(k,1458) - lu(k,1134) * lu(k,1452) - lu(k,1459) = lu(k,1459) - lu(k,1135) * lu(k,1452) - lu(k,1460) = lu(k,1460) - lu(k,1136) * lu(k,1452) - lu(k,1461) = lu(k,1461) - lu(k,1137) * lu(k,1452) - lu(k,1462) = lu(k,1462) - lu(k,1138) * lu(k,1452) - lu(k,1463) = lu(k,1463) - lu(k,1139) * lu(k,1452) - lu(k,1501) = lu(k,1501) - lu(k,1129) * lu(k,1500) - lu(k,1502) = lu(k,1502) - lu(k,1130) * lu(k,1500) - lu(k,1503) = lu(k,1503) - lu(k,1131) * lu(k,1500) - lu(k,1504) = lu(k,1504) - lu(k,1132) * lu(k,1500) - lu(k,1505) = lu(k,1505) - lu(k,1133) * lu(k,1500) - lu(k,1506) = lu(k,1506) - lu(k,1134) * lu(k,1500) - lu(k,1507) = lu(k,1507) - lu(k,1135) * lu(k,1500) - lu(k,1508) = lu(k,1508) - lu(k,1136) * lu(k,1500) - lu(k,1509) = lu(k,1509) - lu(k,1137) * lu(k,1500) - lu(k,1510) = lu(k,1510) - lu(k,1138) * lu(k,1500) - lu(k,1511) = lu(k,1511) - lu(k,1139) * lu(k,1500) - lu(k,1526) = lu(k,1526) - lu(k,1129) * lu(k,1525) - lu(k,1527) = lu(k,1527) - lu(k,1130) * lu(k,1525) - lu(k,1528) = lu(k,1528) - lu(k,1131) * lu(k,1525) - lu(k,1529) = lu(k,1529) - lu(k,1132) * lu(k,1525) - lu(k,1530) = lu(k,1530) - lu(k,1133) * lu(k,1525) - lu(k,1531) = lu(k,1531) - lu(k,1134) * lu(k,1525) - lu(k,1532) = lu(k,1532) - lu(k,1135) * lu(k,1525) - lu(k,1533) = lu(k,1533) - lu(k,1136) * lu(k,1525) - lu(k,1534) = lu(k,1534) - lu(k,1137) * lu(k,1525) - lu(k,1535) = lu(k,1535) - lu(k,1138) * lu(k,1525) - lu(k,1536) = lu(k,1536) - lu(k,1139) * lu(k,1525) - lu(k,1547) = lu(k,1547) - lu(k,1129) * lu(k,1546) - lu(k,1548) = lu(k,1548) - lu(k,1130) * lu(k,1546) - lu(k,1549) = lu(k,1549) - lu(k,1131) * lu(k,1546) - lu(k,1550) = lu(k,1550) - lu(k,1132) * lu(k,1546) - lu(k,1551) = lu(k,1551) - lu(k,1133) * lu(k,1546) - lu(k,1552) = lu(k,1552) - lu(k,1134) * lu(k,1546) - lu(k,1553) = lu(k,1553) - lu(k,1135) * lu(k,1546) - lu(k,1554) = lu(k,1554) - lu(k,1136) * lu(k,1546) - lu(k,1555) = lu(k,1555) - lu(k,1137) * lu(k,1546) - lu(k,1556) = lu(k,1556) - lu(k,1138) * lu(k,1546) - lu(k,1557) = lu(k,1557) - lu(k,1139) * lu(k,1546) - lu(k,1574) = lu(k,1574) - lu(k,1129) * lu(k,1573) - lu(k,1575) = lu(k,1575) - lu(k,1130) * lu(k,1573) - lu(k,1576) = lu(k,1576) - lu(k,1131) * lu(k,1573) - lu(k,1577) = lu(k,1577) - lu(k,1132) * lu(k,1573) - lu(k,1578) = lu(k,1578) - lu(k,1133) * lu(k,1573) - lu(k,1579) = lu(k,1579) - lu(k,1134) * lu(k,1573) - lu(k,1580) = lu(k,1580) - lu(k,1135) * lu(k,1573) - lu(k,1581) = lu(k,1581) - lu(k,1136) * lu(k,1573) - lu(k,1582) = lu(k,1582) - lu(k,1137) * lu(k,1573) - lu(k,1583) = lu(k,1583) - lu(k,1138) * lu(k,1573) - lu(k,1584) = lu(k,1584) - lu(k,1139) * lu(k,1573) - lu(k,1152) = 1._r8 / lu(k,1152) - lu(k,1153) = lu(k,1153) * lu(k,1152) - lu(k,1154) = lu(k,1154) * lu(k,1152) - lu(k,1155) = lu(k,1155) * lu(k,1152) - lu(k,1156) = lu(k,1156) * lu(k,1152) - lu(k,1157) = lu(k,1157) * lu(k,1152) - lu(k,1158) = lu(k,1158) * lu(k,1152) - lu(k,1159) = lu(k,1159) * lu(k,1152) - lu(k,1160) = lu(k,1160) * lu(k,1152) - lu(k,1161) = lu(k,1161) * lu(k,1152) - lu(k,1162) = lu(k,1162) * lu(k,1152) - lu(k,1194) = lu(k,1194) - lu(k,1153) * lu(k,1193) - lu(k,1195) = lu(k,1195) - lu(k,1154) * lu(k,1193) - lu(k,1196) = lu(k,1196) - lu(k,1155) * lu(k,1193) - lu(k,1197) = lu(k,1197) - lu(k,1156) * lu(k,1193) - lu(k,1198) = lu(k,1198) - lu(k,1157) * lu(k,1193) - lu(k,1199) = lu(k,1199) - lu(k,1158) * lu(k,1193) - lu(k,1200) = lu(k,1200) - lu(k,1159) * lu(k,1193) - lu(k,1201) = lu(k,1201) - lu(k,1160) * lu(k,1193) - lu(k,1202) = lu(k,1202) - lu(k,1161) * lu(k,1193) - lu(k,1203) = lu(k,1203) - lu(k,1162) * lu(k,1193) - lu(k,1240) = lu(k,1240) - lu(k,1153) * lu(k,1239) - lu(k,1241) = lu(k,1241) - lu(k,1154) * lu(k,1239) - lu(k,1242) = lu(k,1242) - lu(k,1155) * lu(k,1239) - lu(k,1243) = lu(k,1243) - lu(k,1156) * lu(k,1239) - lu(k,1244) = lu(k,1244) - lu(k,1157) * lu(k,1239) - lu(k,1245) = lu(k,1245) - lu(k,1158) * lu(k,1239) - lu(k,1246) = lu(k,1246) - lu(k,1159) * lu(k,1239) - lu(k,1247) = lu(k,1247) - lu(k,1160) * lu(k,1239) - lu(k,1248) = lu(k,1248) - lu(k,1161) * lu(k,1239) - lu(k,1249) = lu(k,1249) - lu(k,1162) * lu(k,1239) - lu(k,1282) = lu(k,1282) - lu(k,1153) * lu(k,1281) - lu(k,1283) = lu(k,1283) - lu(k,1154) * lu(k,1281) - lu(k,1284) = lu(k,1284) - lu(k,1155) * lu(k,1281) - lu(k,1285) = lu(k,1285) - lu(k,1156) * lu(k,1281) - lu(k,1286) = lu(k,1286) - lu(k,1157) * lu(k,1281) - lu(k,1287) = lu(k,1287) - lu(k,1158) * lu(k,1281) - lu(k,1288) = lu(k,1288) - lu(k,1159) * lu(k,1281) - lu(k,1289) = lu(k,1289) - lu(k,1160) * lu(k,1281) - lu(k,1290) = lu(k,1290) - lu(k,1161) * lu(k,1281) - lu(k,1291) = lu(k,1291) - lu(k,1162) * lu(k,1281) - lu(k,1320) = lu(k,1320) - lu(k,1153) * lu(k,1319) - lu(k,1321) = lu(k,1321) - lu(k,1154) * lu(k,1319) - lu(k,1322) = lu(k,1322) - lu(k,1155) * lu(k,1319) - lu(k,1323) = lu(k,1323) - lu(k,1156) * lu(k,1319) - lu(k,1324) = lu(k,1324) - lu(k,1157) * lu(k,1319) - lu(k,1325) = lu(k,1325) - lu(k,1158) * lu(k,1319) - lu(k,1326) = lu(k,1326) - lu(k,1159) * lu(k,1319) - lu(k,1327) = lu(k,1327) - lu(k,1160) * lu(k,1319) - lu(k,1328) = lu(k,1328) - lu(k,1161) * lu(k,1319) - lu(k,1329) = lu(k,1329) - lu(k,1162) * lu(k,1319) - lu(k,1409) = lu(k,1409) - lu(k,1153) * lu(k,1408) - lu(k,1410) = lu(k,1410) - lu(k,1154) * lu(k,1408) - lu(k,1411) = lu(k,1411) - lu(k,1155) * lu(k,1408) - lu(k,1412) = lu(k,1412) - lu(k,1156) * lu(k,1408) - lu(k,1413) = lu(k,1413) - lu(k,1157) * lu(k,1408) - lu(k,1414) = lu(k,1414) - lu(k,1158) * lu(k,1408) - lu(k,1415) = lu(k,1415) - lu(k,1159) * lu(k,1408) - lu(k,1416) = lu(k,1416) - lu(k,1160) * lu(k,1408) - lu(k,1417) = lu(k,1417) - lu(k,1161) * lu(k,1408) - lu(k,1418) = lu(k,1418) - lu(k,1162) * lu(k,1408) - lu(k,1454) = lu(k,1454) - lu(k,1153) * lu(k,1453) - lu(k,1455) = lu(k,1455) - lu(k,1154) * lu(k,1453) - lu(k,1456) = lu(k,1456) - lu(k,1155) * lu(k,1453) - lu(k,1457) = lu(k,1457) - lu(k,1156) * lu(k,1453) - lu(k,1458) = lu(k,1458) - lu(k,1157) * lu(k,1453) - lu(k,1459) = lu(k,1459) - lu(k,1158) * lu(k,1453) - lu(k,1460) = lu(k,1460) - lu(k,1159) * lu(k,1453) - lu(k,1461) = lu(k,1461) - lu(k,1160) * lu(k,1453) - lu(k,1462) = lu(k,1462) - lu(k,1161) * lu(k,1453) - lu(k,1463) = lu(k,1463) - lu(k,1162) * lu(k,1453) - lu(k,1502) = lu(k,1502) - lu(k,1153) * lu(k,1501) - lu(k,1503) = lu(k,1503) - lu(k,1154) * lu(k,1501) - lu(k,1504) = lu(k,1504) - lu(k,1155) * lu(k,1501) - lu(k,1505) = lu(k,1505) - lu(k,1156) * lu(k,1501) - lu(k,1506) = lu(k,1506) - lu(k,1157) * lu(k,1501) - lu(k,1507) = lu(k,1507) - lu(k,1158) * lu(k,1501) - lu(k,1508) = lu(k,1508) - lu(k,1159) * lu(k,1501) - lu(k,1509) = lu(k,1509) - lu(k,1160) * lu(k,1501) - lu(k,1510) = lu(k,1510) - lu(k,1161) * lu(k,1501) - lu(k,1511) = lu(k,1511) - lu(k,1162) * lu(k,1501) - lu(k,1527) = lu(k,1527) - lu(k,1153) * lu(k,1526) - lu(k,1528) = lu(k,1528) - lu(k,1154) * lu(k,1526) - lu(k,1529) = lu(k,1529) - lu(k,1155) * lu(k,1526) - lu(k,1530) = lu(k,1530) - lu(k,1156) * lu(k,1526) - lu(k,1531) = lu(k,1531) - lu(k,1157) * lu(k,1526) - lu(k,1532) = lu(k,1532) - lu(k,1158) * lu(k,1526) - lu(k,1533) = lu(k,1533) - lu(k,1159) * lu(k,1526) - lu(k,1534) = lu(k,1534) - lu(k,1160) * lu(k,1526) - lu(k,1535) = lu(k,1535) - lu(k,1161) * lu(k,1526) - lu(k,1536) = lu(k,1536) - lu(k,1162) * lu(k,1526) - lu(k,1548) = lu(k,1548) - lu(k,1153) * lu(k,1547) - lu(k,1549) = lu(k,1549) - lu(k,1154) * lu(k,1547) - lu(k,1550) = lu(k,1550) - lu(k,1155) * lu(k,1547) - lu(k,1551) = lu(k,1551) - lu(k,1156) * lu(k,1547) - lu(k,1552) = lu(k,1552) - lu(k,1157) * lu(k,1547) - lu(k,1553) = lu(k,1553) - lu(k,1158) * lu(k,1547) - lu(k,1554) = lu(k,1554) - lu(k,1159) * lu(k,1547) - lu(k,1555) = lu(k,1555) - lu(k,1160) * lu(k,1547) - lu(k,1556) = lu(k,1556) - lu(k,1161) * lu(k,1547) - lu(k,1557) = lu(k,1557) - lu(k,1162) * lu(k,1547) - lu(k,1575) = lu(k,1575) - lu(k,1153) * lu(k,1574) - lu(k,1576) = lu(k,1576) - lu(k,1154) * lu(k,1574) - lu(k,1577) = lu(k,1577) - lu(k,1155) * lu(k,1574) - lu(k,1578) = lu(k,1578) - lu(k,1156) * lu(k,1574) - lu(k,1579) = lu(k,1579) - lu(k,1157) * lu(k,1574) - lu(k,1580) = lu(k,1580) - lu(k,1158) * lu(k,1574) - lu(k,1581) = lu(k,1581) - lu(k,1159) * lu(k,1574) - lu(k,1582) = lu(k,1582) - lu(k,1160) * lu(k,1574) - lu(k,1583) = lu(k,1583) - lu(k,1161) * lu(k,1574) - lu(k,1584) = lu(k,1584) - lu(k,1162) * lu(k,1574) - lu(k,1194) = 1._r8 / lu(k,1194) - lu(k,1195) = lu(k,1195) * lu(k,1194) - lu(k,1196) = lu(k,1196) * lu(k,1194) - lu(k,1197) = lu(k,1197) * lu(k,1194) - lu(k,1198) = lu(k,1198) * lu(k,1194) - lu(k,1199) = lu(k,1199) * lu(k,1194) - lu(k,1200) = lu(k,1200) * lu(k,1194) - lu(k,1201) = lu(k,1201) * lu(k,1194) - lu(k,1202) = lu(k,1202) * lu(k,1194) - lu(k,1203) = lu(k,1203) * lu(k,1194) - lu(k,1241) = lu(k,1241) - lu(k,1195) * lu(k,1240) - lu(k,1242) = lu(k,1242) - lu(k,1196) * lu(k,1240) - lu(k,1243) = lu(k,1243) - lu(k,1197) * lu(k,1240) - lu(k,1244) = lu(k,1244) - lu(k,1198) * lu(k,1240) - lu(k,1245) = lu(k,1245) - lu(k,1199) * lu(k,1240) - lu(k,1246) = lu(k,1246) - lu(k,1200) * lu(k,1240) - lu(k,1247) = lu(k,1247) - lu(k,1201) * lu(k,1240) - lu(k,1248) = lu(k,1248) - lu(k,1202) * lu(k,1240) - lu(k,1249) = lu(k,1249) - lu(k,1203) * lu(k,1240) - lu(k,1283) = lu(k,1283) - lu(k,1195) * lu(k,1282) - lu(k,1284) = lu(k,1284) - lu(k,1196) * lu(k,1282) - lu(k,1285) = lu(k,1285) - lu(k,1197) * lu(k,1282) - lu(k,1286) = lu(k,1286) - lu(k,1198) * lu(k,1282) - lu(k,1287) = lu(k,1287) - lu(k,1199) * lu(k,1282) - lu(k,1288) = lu(k,1288) - lu(k,1200) * lu(k,1282) - lu(k,1289) = lu(k,1289) - lu(k,1201) * lu(k,1282) - lu(k,1290) = lu(k,1290) - lu(k,1202) * lu(k,1282) - lu(k,1291) = lu(k,1291) - lu(k,1203) * lu(k,1282) - lu(k,1321) = lu(k,1321) - lu(k,1195) * lu(k,1320) - lu(k,1322) = lu(k,1322) - lu(k,1196) * lu(k,1320) - lu(k,1323) = lu(k,1323) - lu(k,1197) * lu(k,1320) - lu(k,1324) = lu(k,1324) - lu(k,1198) * lu(k,1320) - lu(k,1325) = lu(k,1325) - lu(k,1199) * lu(k,1320) - lu(k,1326) = lu(k,1326) - lu(k,1200) * lu(k,1320) - lu(k,1327) = lu(k,1327) - lu(k,1201) * lu(k,1320) - lu(k,1328) = lu(k,1328) - lu(k,1202) * lu(k,1320) - lu(k,1329) = lu(k,1329) - lu(k,1203) * lu(k,1320) - lu(k,1410) = lu(k,1410) - lu(k,1195) * lu(k,1409) - lu(k,1411) = lu(k,1411) - lu(k,1196) * lu(k,1409) - lu(k,1412) = lu(k,1412) - lu(k,1197) * lu(k,1409) - lu(k,1413) = lu(k,1413) - lu(k,1198) * lu(k,1409) - lu(k,1414) = lu(k,1414) - lu(k,1199) * lu(k,1409) - lu(k,1415) = lu(k,1415) - lu(k,1200) * lu(k,1409) - lu(k,1416) = lu(k,1416) - lu(k,1201) * lu(k,1409) - lu(k,1417) = lu(k,1417) - lu(k,1202) * lu(k,1409) - lu(k,1418) = lu(k,1418) - lu(k,1203) * lu(k,1409) - lu(k,1455) = lu(k,1455) - lu(k,1195) * lu(k,1454) - lu(k,1456) = lu(k,1456) - lu(k,1196) * lu(k,1454) - lu(k,1457) = lu(k,1457) - lu(k,1197) * lu(k,1454) - lu(k,1458) = lu(k,1458) - lu(k,1198) * lu(k,1454) - lu(k,1459) = lu(k,1459) - lu(k,1199) * lu(k,1454) - lu(k,1460) = lu(k,1460) - lu(k,1200) * lu(k,1454) - lu(k,1461) = lu(k,1461) - lu(k,1201) * lu(k,1454) - lu(k,1462) = lu(k,1462) - lu(k,1202) * lu(k,1454) - lu(k,1463) = lu(k,1463) - lu(k,1203) * lu(k,1454) - lu(k,1503) = lu(k,1503) - lu(k,1195) * lu(k,1502) - lu(k,1504) = lu(k,1504) - lu(k,1196) * lu(k,1502) - lu(k,1505) = lu(k,1505) - lu(k,1197) * lu(k,1502) - lu(k,1506) = lu(k,1506) - lu(k,1198) * lu(k,1502) - lu(k,1507) = lu(k,1507) - lu(k,1199) * lu(k,1502) - lu(k,1508) = lu(k,1508) - lu(k,1200) * lu(k,1502) - lu(k,1509) = lu(k,1509) - lu(k,1201) * lu(k,1502) - lu(k,1510) = lu(k,1510) - lu(k,1202) * lu(k,1502) - lu(k,1511) = lu(k,1511) - lu(k,1203) * lu(k,1502) - lu(k,1528) = lu(k,1528) - lu(k,1195) * lu(k,1527) - lu(k,1529) = lu(k,1529) - lu(k,1196) * lu(k,1527) - lu(k,1530) = lu(k,1530) - lu(k,1197) * lu(k,1527) - lu(k,1531) = lu(k,1531) - lu(k,1198) * lu(k,1527) - lu(k,1532) = lu(k,1532) - lu(k,1199) * lu(k,1527) - lu(k,1533) = lu(k,1533) - lu(k,1200) * lu(k,1527) - lu(k,1534) = lu(k,1534) - lu(k,1201) * lu(k,1527) - lu(k,1535) = lu(k,1535) - lu(k,1202) * lu(k,1527) - lu(k,1536) = lu(k,1536) - lu(k,1203) * lu(k,1527) - lu(k,1549) = lu(k,1549) - lu(k,1195) * lu(k,1548) - lu(k,1550) = lu(k,1550) - lu(k,1196) * lu(k,1548) - lu(k,1551) = lu(k,1551) - lu(k,1197) * lu(k,1548) - lu(k,1552) = lu(k,1552) - lu(k,1198) * lu(k,1548) - lu(k,1553) = lu(k,1553) - lu(k,1199) * lu(k,1548) - lu(k,1554) = lu(k,1554) - lu(k,1200) * lu(k,1548) - lu(k,1555) = lu(k,1555) - lu(k,1201) * lu(k,1548) - lu(k,1556) = lu(k,1556) - lu(k,1202) * lu(k,1548) - lu(k,1557) = lu(k,1557) - lu(k,1203) * lu(k,1548) - lu(k,1576) = lu(k,1576) - lu(k,1195) * lu(k,1575) - lu(k,1577) = lu(k,1577) - lu(k,1196) * lu(k,1575) - lu(k,1578) = lu(k,1578) - lu(k,1197) * lu(k,1575) - lu(k,1579) = lu(k,1579) - lu(k,1198) * lu(k,1575) - lu(k,1580) = lu(k,1580) - lu(k,1199) * lu(k,1575) - lu(k,1581) = lu(k,1581) - lu(k,1200) * lu(k,1575) - lu(k,1582) = lu(k,1582) - lu(k,1201) * lu(k,1575) - lu(k,1583) = lu(k,1583) - lu(k,1202) * lu(k,1575) - lu(k,1584) = lu(k,1584) - lu(k,1203) * lu(k,1575) + lu(k,1042) = 1._r8 / lu(k,1042) + lu(k,1043) = lu(k,1043) * lu(k,1042) + lu(k,1044) = lu(k,1044) * lu(k,1042) + lu(k,1045) = lu(k,1045) * lu(k,1042) + lu(k,1046) = lu(k,1046) * lu(k,1042) + lu(k,1047) = lu(k,1047) * lu(k,1042) + lu(k,1048) = lu(k,1048) * lu(k,1042) + lu(k,1049) = lu(k,1049) * lu(k,1042) + lu(k,1050) = lu(k,1050) * lu(k,1042) + lu(k,1051) = lu(k,1051) * lu(k,1042) + lu(k,1052) = lu(k,1052) * lu(k,1042) + lu(k,1053) = lu(k,1053) * lu(k,1042) + lu(k,1054) = lu(k,1054) * lu(k,1042) + lu(k,1055) = lu(k,1055) * lu(k,1042) + lu(k,1080) = lu(k,1080) - lu(k,1043) * lu(k,1079) + lu(k,1081) = lu(k,1081) - lu(k,1044) * lu(k,1079) + lu(k,1082) = lu(k,1082) - lu(k,1045) * lu(k,1079) + lu(k,1083) = lu(k,1083) - lu(k,1046) * lu(k,1079) + lu(k,1084) = lu(k,1084) - lu(k,1047) * lu(k,1079) + lu(k,1085) = lu(k,1085) - lu(k,1048) * lu(k,1079) + lu(k,1086) = lu(k,1086) - lu(k,1049) * lu(k,1079) + lu(k,1087) = lu(k,1087) - lu(k,1050) * lu(k,1079) + lu(k,1088) = lu(k,1088) - lu(k,1051) * lu(k,1079) + lu(k,1089) = lu(k,1089) - lu(k,1052) * lu(k,1079) + lu(k,1090) = lu(k,1090) - lu(k,1053) * lu(k,1079) + lu(k,1091) = lu(k,1091) - lu(k,1054) * lu(k,1079) + lu(k,1092) = lu(k,1092) - lu(k,1055) * lu(k,1079) + lu(k,1128) = lu(k,1128) - lu(k,1043) * lu(k,1127) + lu(k,1129) = lu(k,1129) - lu(k,1044) * lu(k,1127) + lu(k,1130) = lu(k,1130) - lu(k,1045) * lu(k,1127) + lu(k,1131) = lu(k,1131) - lu(k,1046) * lu(k,1127) + lu(k,1132) = lu(k,1132) - lu(k,1047) * lu(k,1127) + lu(k,1133) = lu(k,1133) - lu(k,1048) * lu(k,1127) + lu(k,1134) = lu(k,1134) - lu(k,1049) * lu(k,1127) + lu(k,1135) = lu(k,1135) - lu(k,1050) * lu(k,1127) + lu(k,1136) = lu(k,1136) - lu(k,1051) * lu(k,1127) + lu(k,1137) = lu(k,1137) - lu(k,1052) * lu(k,1127) + lu(k,1138) = lu(k,1138) - lu(k,1053) * lu(k,1127) + lu(k,1139) = lu(k,1139) - lu(k,1054) * lu(k,1127) + lu(k,1140) = lu(k,1140) - lu(k,1055) * lu(k,1127) + lu(k,1170) = lu(k,1170) - lu(k,1043) * lu(k,1169) + lu(k,1171) = lu(k,1171) - lu(k,1044) * lu(k,1169) + lu(k,1172) = lu(k,1172) - lu(k,1045) * lu(k,1169) + lu(k,1173) = lu(k,1173) - lu(k,1046) * lu(k,1169) + lu(k,1174) = lu(k,1174) - lu(k,1047) * lu(k,1169) + lu(k,1175) = lu(k,1175) - lu(k,1048) * lu(k,1169) + lu(k,1176) = lu(k,1176) - lu(k,1049) * lu(k,1169) + lu(k,1177) = lu(k,1177) - lu(k,1050) * lu(k,1169) + lu(k,1178) = lu(k,1178) - lu(k,1051) * lu(k,1169) + lu(k,1179) = lu(k,1179) - lu(k,1052) * lu(k,1169) + lu(k,1180) = lu(k,1180) - lu(k,1053) * lu(k,1169) + lu(k,1181) = lu(k,1181) - lu(k,1054) * lu(k,1169) + lu(k,1182) = lu(k,1182) - lu(k,1055) * lu(k,1169) + lu(k,1259) = lu(k,1259) - lu(k,1043) * lu(k,1258) + lu(k,1260) = lu(k,1260) - lu(k,1044) * lu(k,1258) + lu(k,1261) = lu(k,1261) - lu(k,1045) * lu(k,1258) + lu(k,1262) = lu(k,1262) - lu(k,1046) * lu(k,1258) + lu(k,1263) = lu(k,1263) - lu(k,1047) * lu(k,1258) + lu(k,1264) = lu(k,1264) - lu(k,1048) * lu(k,1258) + lu(k,1265) = lu(k,1265) - lu(k,1049) * lu(k,1258) + lu(k,1266) = lu(k,1266) - lu(k,1050) * lu(k,1258) + lu(k,1267) = lu(k,1267) - lu(k,1051) * lu(k,1258) + lu(k,1268) = lu(k,1268) - lu(k,1052) * lu(k,1258) + lu(k,1269) = lu(k,1269) - lu(k,1053) * lu(k,1258) + lu(k,1270) = lu(k,1270) - lu(k,1054) * lu(k,1258) + lu(k,1271) = lu(k,1271) - lu(k,1055) * lu(k,1258) + lu(k,1297) = lu(k,1297) - lu(k,1043) * lu(k,1296) + lu(k,1298) = lu(k,1298) - lu(k,1044) * lu(k,1296) + lu(k,1299) = lu(k,1299) - lu(k,1045) * lu(k,1296) + lu(k,1300) = lu(k,1300) - lu(k,1046) * lu(k,1296) + lu(k,1301) = lu(k,1301) - lu(k,1047) * lu(k,1296) + lu(k,1302) = lu(k,1302) - lu(k,1048) * lu(k,1296) + lu(k,1303) = lu(k,1303) - lu(k,1049) * lu(k,1296) + lu(k,1304) = lu(k,1304) - lu(k,1050) * lu(k,1296) + lu(k,1305) = lu(k,1305) - lu(k,1051) * lu(k,1296) + lu(k,1306) = lu(k,1306) - lu(k,1052) * lu(k,1296) + lu(k,1307) = lu(k,1307) - lu(k,1053) * lu(k,1296) + lu(k,1308) = lu(k,1308) - lu(k,1054) * lu(k,1296) + lu(k,1309) = lu(k,1309) - lu(k,1055) * lu(k,1296) + lu(k,1324) = lu(k,1324) - lu(k,1043) * lu(k,1323) + lu(k,1325) = lu(k,1325) - lu(k,1044) * lu(k,1323) + lu(k,1326) = lu(k,1326) - lu(k,1045) * lu(k,1323) + lu(k,1327) = lu(k,1327) - lu(k,1046) * lu(k,1323) + lu(k,1328) = lu(k,1328) - lu(k,1047) * lu(k,1323) + lu(k,1329) = lu(k,1329) - lu(k,1048) * lu(k,1323) + lu(k,1330) = lu(k,1330) - lu(k,1049) * lu(k,1323) + lu(k,1331) = lu(k,1331) - lu(k,1050) * lu(k,1323) + lu(k,1332) = lu(k,1332) - lu(k,1051) * lu(k,1323) + lu(k,1333) = lu(k,1333) - lu(k,1052) * lu(k,1323) + lu(k,1334) = lu(k,1334) - lu(k,1053) * lu(k,1323) + lu(k,1335) = lu(k,1335) - lu(k,1054) * lu(k,1323) + lu(k,1336) = lu(k,1336) - lu(k,1055) * lu(k,1323) + lu(k,1348) = lu(k,1348) - lu(k,1043) * lu(k,1347) + lu(k,1349) = lu(k,1349) - lu(k,1044) * lu(k,1347) + lu(k,1350) = lu(k,1350) - lu(k,1045) * lu(k,1347) + lu(k,1351) = lu(k,1351) - lu(k,1046) * lu(k,1347) + lu(k,1352) = lu(k,1352) - lu(k,1047) * lu(k,1347) + lu(k,1353) = lu(k,1353) - lu(k,1048) * lu(k,1347) + lu(k,1354) = lu(k,1354) - lu(k,1049) * lu(k,1347) + lu(k,1355) = lu(k,1355) - lu(k,1050) * lu(k,1347) + lu(k,1356) = lu(k,1356) - lu(k,1051) * lu(k,1347) + lu(k,1357) = lu(k,1357) - lu(k,1052) * lu(k,1347) + lu(k,1358) = lu(k,1358) - lu(k,1053) * lu(k,1347) + lu(k,1359) = lu(k,1359) - lu(k,1054) * lu(k,1347) + lu(k,1360) = lu(k,1360) - lu(k,1055) * lu(k,1347) + lu(k,1407) = lu(k,1407) - lu(k,1043) * lu(k,1406) + lu(k,1408) = lu(k,1408) - lu(k,1044) * lu(k,1406) + lu(k,1409) = lu(k,1409) - lu(k,1045) * lu(k,1406) + lu(k,1410) = lu(k,1410) - lu(k,1046) * lu(k,1406) + lu(k,1411) = lu(k,1411) - lu(k,1047) * lu(k,1406) + lu(k,1412) = lu(k,1412) - lu(k,1048) * lu(k,1406) + lu(k,1413) = lu(k,1413) - lu(k,1049) * lu(k,1406) + lu(k,1414) = lu(k,1414) - lu(k,1050) * lu(k,1406) + lu(k,1415) = lu(k,1415) - lu(k,1051) * lu(k,1406) + lu(k,1416) = lu(k,1416) - lu(k,1052) * lu(k,1406) + lu(k,1417) = lu(k,1417) - lu(k,1053) * lu(k,1406) + lu(k,1418) = lu(k,1418) - lu(k,1054) * lu(k,1406) + lu(k,1419) = lu(k,1419) - lu(k,1055) * lu(k,1406) + lu(k,1431) = lu(k,1431) - lu(k,1043) * lu(k,1430) + lu(k,1432) = lu(k,1432) - lu(k,1044) * lu(k,1430) + lu(k,1433) = lu(k,1433) - lu(k,1045) * lu(k,1430) + lu(k,1434) = lu(k,1434) - lu(k,1046) * lu(k,1430) + lu(k,1435) = lu(k,1435) - lu(k,1047) * lu(k,1430) + lu(k,1436) = lu(k,1436) - lu(k,1048) * lu(k,1430) + lu(k,1437) = lu(k,1437) - lu(k,1049) * lu(k,1430) + lu(k,1438) = lu(k,1438) - lu(k,1050) * lu(k,1430) + lu(k,1439) = lu(k,1439) - lu(k,1051) * lu(k,1430) + lu(k,1440) = lu(k,1440) - lu(k,1052) * lu(k,1430) + lu(k,1441) = lu(k,1441) - lu(k,1053) * lu(k,1430) + lu(k,1442) = lu(k,1442) - lu(k,1054) * lu(k,1430) + lu(k,1443) = lu(k,1443) - lu(k,1055) * lu(k,1430) + lu(k,1476) = lu(k,1476) - lu(k,1043) * lu(k,1475) + lu(k,1477) = lu(k,1477) - lu(k,1044) * lu(k,1475) + lu(k,1478) = lu(k,1478) - lu(k,1045) * lu(k,1475) + lu(k,1479) = lu(k,1479) - lu(k,1046) * lu(k,1475) + lu(k,1480) = lu(k,1480) - lu(k,1047) * lu(k,1475) + lu(k,1481) = lu(k,1481) - lu(k,1048) * lu(k,1475) + lu(k,1482) = lu(k,1482) - lu(k,1049) * lu(k,1475) + lu(k,1483) = lu(k,1483) - lu(k,1050) * lu(k,1475) + lu(k,1484) = lu(k,1484) - lu(k,1051) * lu(k,1475) + lu(k,1485) = lu(k,1485) - lu(k,1052) * lu(k,1475) + lu(k,1486) = lu(k,1486) - lu(k,1053) * lu(k,1475) + lu(k,1487) = lu(k,1487) - lu(k,1054) * lu(k,1475) + lu(k,1488) = lu(k,1488) - lu(k,1055) * lu(k,1475) + lu(k,1499) = lu(k,1499) - lu(k,1043) * lu(k,1498) + lu(k,1500) = lu(k,1500) - lu(k,1044) * lu(k,1498) + lu(k,1501) = lu(k,1501) - lu(k,1045) * lu(k,1498) + lu(k,1502) = lu(k,1502) - lu(k,1046) * lu(k,1498) + lu(k,1503) = lu(k,1503) - lu(k,1047) * lu(k,1498) + lu(k,1504) = lu(k,1504) - lu(k,1048) * lu(k,1498) + lu(k,1505) = lu(k,1505) - lu(k,1049) * lu(k,1498) + lu(k,1506) = lu(k,1506) - lu(k,1050) * lu(k,1498) + lu(k,1507) = lu(k,1507) - lu(k,1051) * lu(k,1498) + lu(k,1508) = lu(k,1508) - lu(k,1052) * lu(k,1498) + lu(k,1509) = lu(k,1509) - lu(k,1053) * lu(k,1498) + lu(k,1510) = lu(k,1510) - lu(k,1054) * lu(k,1498) + lu(k,1511) = lu(k,1511) - lu(k,1055) * lu(k,1498) + lu(k,1545) = lu(k,1545) - lu(k,1043) * lu(k,1544) + lu(k,1546) = lu(k,1546) - lu(k,1044) * lu(k,1544) + lu(k,1547) = lu(k,1547) - lu(k,1045) * lu(k,1544) + lu(k,1548) = lu(k,1548) - lu(k,1046) * lu(k,1544) + lu(k,1549) = lu(k,1549) - lu(k,1047) * lu(k,1544) + lu(k,1550) = lu(k,1550) - lu(k,1048) * lu(k,1544) + lu(k,1551) = lu(k,1551) - lu(k,1049) * lu(k,1544) + lu(k,1552) = lu(k,1552) - lu(k,1050) * lu(k,1544) + lu(k,1553) = lu(k,1553) - lu(k,1051) * lu(k,1544) + lu(k,1554) = lu(k,1554) - lu(k,1052) * lu(k,1544) + lu(k,1555) = lu(k,1555) - lu(k,1053) * lu(k,1544) + lu(k,1556) = lu(k,1556) - lu(k,1054) * lu(k,1544) + lu(k,1557) = lu(k,1557) - lu(k,1055) * lu(k,1544) + lu(k,1572) = lu(k,1572) - lu(k,1043) * lu(k,1571) + lu(k,1573) = lu(k,1573) - lu(k,1044) * lu(k,1571) + lu(k,1574) = lu(k,1574) - lu(k,1045) * lu(k,1571) + lu(k,1575) = lu(k,1575) - lu(k,1046) * lu(k,1571) + lu(k,1576) = lu(k,1576) - lu(k,1047) * lu(k,1571) + lu(k,1577) = lu(k,1577) - lu(k,1048) * lu(k,1571) + lu(k,1578) = lu(k,1578) - lu(k,1049) * lu(k,1571) + lu(k,1579) = lu(k,1579) - lu(k,1050) * lu(k,1571) + lu(k,1580) = lu(k,1580) - lu(k,1051) * lu(k,1571) + lu(k,1581) = lu(k,1581) - lu(k,1052) * lu(k,1571) + lu(k,1582) = lu(k,1582) - lu(k,1053) * lu(k,1571) + lu(k,1583) = lu(k,1583) - lu(k,1054) * lu(k,1571) + lu(k,1584) = lu(k,1584) - lu(k,1055) * lu(k,1571) + lu(k,1080) = 1._r8 / lu(k,1080) + lu(k,1081) = lu(k,1081) * lu(k,1080) + lu(k,1082) = lu(k,1082) * lu(k,1080) + lu(k,1083) = lu(k,1083) * lu(k,1080) + lu(k,1084) = lu(k,1084) * lu(k,1080) + lu(k,1085) = lu(k,1085) * lu(k,1080) + lu(k,1086) = lu(k,1086) * lu(k,1080) + lu(k,1087) = lu(k,1087) * lu(k,1080) + lu(k,1088) = lu(k,1088) * lu(k,1080) + lu(k,1089) = lu(k,1089) * lu(k,1080) + lu(k,1090) = lu(k,1090) * lu(k,1080) + lu(k,1091) = lu(k,1091) * lu(k,1080) + lu(k,1092) = lu(k,1092) * lu(k,1080) + lu(k,1129) = lu(k,1129) - lu(k,1081) * lu(k,1128) + lu(k,1130) = lu(k,1130) - lu(k,1082) * lu(k,1128) + lu(k,1131) = lu(k,1131) - lu(k,1083) * lu(k,1128) + lu(k,1132) = lu(k,1132) - lu(k,1084) * lu(k,1128) + lu(k,1133) = lu(k,1133) - lu(k,1085) * lu(k,1128) + lu(k,1134) = lu(k,1134) - lu(k,1086) * lu(k,1128) + lu(k,1135) = lu(k,1135) - lu(k,1087) * lu(k,1128) + lu(k,1136) = lu(k,1136) - lu(k,1088) * lu(k,1128) + lu(k,1137) = lu(k,1137) - lu(k,1089) * lu(k,1128) + lu(k,1138) = lu(k,1138) - lu(k,1090) * lu(k,1128) + lu(k,1139) = lu(k,1139) - lu(k,1091) * lu(k,1128) + lu(k,1140) = lu(k,1140) - lu(k,1092) * lu(k,1128) + lu(k,1171) = lu(k,1171) - lu(k,1081) * lu(k,1170) + lu(k,1172) = lu(k,1172) - lu(k,1082) * lu(k,1170) + lu(k,1173) = lu(k,1173) - lu(k,1083) * lu(k,1170) + lu(k,1174) = lu(k,1174) - lu(k,1084) * lu(k,1170) + lu(k,1175) = lu(k,1175) - lu(k,1085) * lu(k,1170) + lu(k,1176) = lu(k,1176) - lu(k,1086) * lu(k,1170) + lu(k,1177) = lu(k,1177) - lu(k,1087) * lu(k,1170) + lu(k,1178) = lu(k,1178) - lu(k,1088) * lu(k,1170) + lu(k,1179) = lu(k,1179) - lu(k,1089) * lu(k,1170) + lu(k,1180) = lu(k,1180) - lu(k,1090) * lu(k,1170) + lu(k,1181) = lu(k,1181) - lu(k,1091) * lu(k,1170) + lu(k,1182) = lu(k,1182) - lu(k,1092) * lu(k,1170) + lu(k,1260) = lu(k,1260) - lu(k,1081) * lu(k,1259) + lu(k,1261) = lu(k,1261) - lu(k,1082) * lu(k,1259) + lu(k,1262) = lu(k,1262) - lu(k,1083) * lu(k,1259) + lu(k,1263) = lu(k,1263) - lu(k,1084) * lu(k,1259) + lu(k,1264) = lu(k,1264) - lu(k,1085) * lu(k,1259) + lu(k,1265) = lu(k,1265) - lu(k,1086) * lu(k,1259) + lu(k,1266) = lu(k,1266) - lu(k,1087) * lu(k,1259) + lu(k,1267) = lu(k,1267) - lu(k,1088) * lu(k,1259) + lu(k,1268) = lu(k,1268) - lu(k,1089) * lu(k,1259) + lu(k,1269) = lu(k,1269) - lu(k,1090) * lu(k,1259) + lu(k,1270) = lu(k,1270) - lu(k,1091) * lu(k,1259) + lu(k,1271) = lu(k,1271) - lu(k,1092) * lu(k,1259) + lu(k,1298) = lu(k,1298) - lu(k,1081) * lu(k,1297) + lu(k,1299) = lu(k,1299) - lu(k,1082) * lu(k,1297) + lu(k,1300) = lu(k,1300) - lu(k,1083) * lu(k,1297) + lu(k,1301) = lu(k,1301) - lu(k,1084) * lu(k,1297) + lu(k,1302) = lu(k,1302) - lu(k,1085) * lu(k,1297) + lu(k,1303) = lu(k,1303) - lu(k,1086) * lu(k,1297) + lu(k,1304) = lu(k,1304) - lu(k,1087) * lu(k,1297) + lu(k,1305) = lu(k,1305) - lu(k,1088) * lu(k,1297) + lu(k,1306) = lu(k,1306) - lu(k,1089) * lu(k,1297) + lu(k,1307) = lu(k,1307) - lu(k,1090) * lu(k,1297) + lu(k,1308) = lu(k,1308) - lu(k,1091) * lu(k,1297) + lu(k,1309) = lu(k,1309) - lu(k,1092) * lu(k,1297) + lu(k,1325) = lu(k,1325) - lu(k,1081) * lu(k,1324) + lu(k,1326) = lu(k,1326) - lu(k,1082) * lu(k,1324) + lu(k,1327) = lu(k,1327) - lu(k,1083) * lu(k,1324) + lu(k,1328) = lu(k,1328) - lu(k,1084) * lu(k,1324) + lu(k,1329) = lu(k,1329) - lu(k,1085) * lu(k,1324) + lu(k,1330) = lu(k,1330) - lu(k,1086) * lu(k,1324) + lu(k,1331) = lu(k,1331) - lu(k,1087) * lu(k,1324) + lu(k,1332) = lu(k,1332) - lu(k,1088) * lu(k,1324) + lu(k,1333) = lu(k,1333) - lu(k,1089) * lu(k,1324) + lu(k,1334) = lu(k,1334) - lu(k,1090) * lu(k,1324) + lu(k,1335) = lu(k,1335) - lu(k,1091) * lu(k,1324) + lu(k,1336) = lu(k,1336) - lu(k,1092) * lu(k,1324) + lu(k,1349) = lu(k,1349) - lu(k,1081) * lu(k,1348) + lu(k,1350) = lu(k,1350) - lu(k,1082) * lu(k,1348) + lu(k,1351) = lu(k,1351) - lu(k,1083) * lu(k,1348) + lu(k,1352) = lu(k,1352) - lu(k,1084) * lu(k,1348) + lu(k,1353) = lu(k,1353) - lu(k,1085) * lu(k,1348) + lu(k,1354) = lu(k,1354) - lu(k,1086) * lu(k,1348) + lu(k,1355) = lu(k,1355) - lu(k,1087) * lu(k,1348) + lu(k,1356) = lu(k,1356) - lu(k,1088) * lu(k,1348) + lu(k,1357) = lu(k,1357) - lu(k,1089) * lu(k,1348) + lu(k,1358) = lu(k,1358) - lu(k,1090) * lu(k,1348) + lu(k,1359) = lu(k,1359) - lu(k,1091) * lu(k,1348) + lu(k,1360) = lu(k,1360) - lu(k,1092) * lu(k,1348) + lu(k,1408) = lu(k,1408) - lu(k,1081) * lu(k,1407) + lu(k,1409) = lu(k,1409) - lu(k,1082) * lu(k,1407) + lu(k,1410) = lu(k,1410) - lu(k,1083) * lu(k,1407) + lu(k,1411) = lu(k,1411) - lu(k,1084) * lu(k,1407) + lu(k,1412) = lu(k,1412) - lu(k,1085) * lu(k,1407) + lu(k,1413) = lu(k,1413) - lu(k,1086) * lu(k,1407) + lu(k,1414) = lu(k,1414) - lu(k,1087) * lu(k,1407) + lu(k,1415) = lu(k,1415) - lu(k,1088) * lu(k,1407) + lu(k,1416) = lu(k,1416) - lu(k,1089) * lu(k,1407) + lu(k,1417) = lu(k,1417) - lu(k,1090) * lu(k,1407) + lu(k,1418) = lu(k,1418) - lu(k,1091) * lu(k,1407) + lu(k,1419) = lu(k,1419) - lu(k,1092) * lu(k,1407) + lu(k,1432) = lu(k,1432) - lu(k,1081) * lu(k,1431) + lu(k,1433) = lu(k,1433) - lu(k,1082) * lu(k,1431) + lu(k,1434) = lu(k,1434) - lu(k,1083) * lu(k,1431) + lu(k,1435) = lu(k,1435) - lu(k,1084) * lu(k,1431) + lu(k,1436) = lu(k,1436) - lu(k,1085) * lu(k,1431) + lu(k,1437) = lu(k,1437) - lu(k,1086) * lu(k,1431) + lu(k,1438) = lu(k,1438) - lu(k,1087) * lu(k,1431) + lu(k,1439) = lu(k,1439) - lu(k,1088) * lu(k,1431) + lu(k,1440) = lu(k,1440) - lu(k,1089) * lu(k,1431) + lu(k,1441) = lu(k,1441) - lu(k,1090) * lu(k,1431) + lu(k,1442) = lu(k,1442) - lu(k,1091) * lu(k,1431) + lu(k,1443) = lu(k,1443) - lu(k,1092) * lu(k,1431) + lu(k,1477) = lu(k,1477) - lu(k,1081) * lu(k,1476) + lu(k,1478) = lu(k,1478) - lu(k,1082) * lu(k,1476) + lu(k,1479) = lu(k,1479) - lu(k,1083) * lu(k,1476) + lu(k,1480) = lu(k,1480) - lu(k,1084) * lu(k,1476) + lu(k,1481) = lu(k,1481) - lu(k,1085) * lu(k,1476) + lu(k,1482) = lu(k,1482) - lu(k,1086) * lu(k,1476) + lu(k,1483) = lu(k,1483) - lu(k,1087) * lu(k,1476) + lu(k,1484) = lu(k,1484) - lu(k,1088) * lu(k,1476) + lu(k,1485) = lu(k,1485) - lu(k,1089) * lu(k,1476) + lu(k,1486) = lu(k,1486) - lu(k,1090) * lu(k,1476) + lu(k,1487) = lu(k,1487) - lu(k,1091) * lu(k,1476) + lu(k,1488) = lu(k,1488) - lu(k,1092) * lu(k,1476) + lu(k,1500) = lu(k,1500) - lu(k,1081) * lu(k,1499) + lu(k,1501) = lu(k,1501) - lu(k,1082) * lu(k,1499) + lu(k,1502) = lu(k,1502) - lu(k,1083) * lu(k,1499) + lu(k,1503) = lu(k,1503) - lu(k,1084) * lu(k,1499) + lu(k,1504) = lu(k,1504) - lu(k,1085) * lu(k,1499) + lu(k,1505) = lu(k,1505) - lu(k,1086) * lu(k,1499) + lu(k,1506) = lu(k,1506) - lu(k,1087) * lu(k,1499) + lu(k,1507) = lu(k,1507) - lu(k,1088) * lu(k,1499) + lu(k,1508) = lu(k,1508) - lu(k,1089) * lu(k,1499) + lu(k,1509) = lu(k,1509) - lu(k,1090) * lu(k,1499) + lu(k,1510) = lu(k,1510) - lu(k,1091) * lu(k,1499) + lu(k,1511) = lu(k,1511) - lu(k,1092) * lu(k,1499) + lu(k,1546) = lu(k,1546) - lu(k,1081) * lu(k,1545) + lu(k,1547) = lu(k,1547) - lu(k,1082) * lu(k,1545) + lu(k,1548) = lu(k,1548) - lu(k,1083) * lu(k,1545) + lu(k,1549) = lu(k,1549) - lu(k,1084) * lu(k,1545) + lu(k,1550) = lu(k,1550) - lu(k,1085) * lu(k,1545) + lu(k,1551) = lu(k,1551) - lu(k,1086) * lu(k,1545) + lu(k,1552) = lu(k,1552) - lu(k,1087) * lu(k,1545) + lu(k,1553) = lu(k,1553) - lu(k,1088) * lu(k,1545) + lu(k,1554) = lu(k,1554) - lu(k,1089) * lu(k,1545) + lu(k,1555) = lu(k,1555) - lu(k,1090) * lu(k,1545) + lu(k,1556) = lu(k,1556) - lu(k,1091) * lu(k,1545) + lu(k,1557) = lu(k,1557) - lu(k,1092) * lu(k,1545) + lu(k,1573) = lu(k,1573) - lu(k,1081) * lu(k,1572) + lu(k,1574) = lu(k,1574) - lu(k,1082) * lu(k,1572) + lu(k,1575) = lu(k,1575) - lu(k,1083) * lu(k,1572) + lu(k,1576) = lu(k,1576) - lu(k,1084) * lu(k,1572) + lu(k,1577) = lu(k,1577) - lu(k,1085) * lu(k,1572) + lu(k,1578) = lu(k,1578) - lu(k,1086) * lu(k,1572) + lu(k,1579) = lu(k,1579) - lu(k,1087) * lu(k,1572) + lu(k,1580) = lu(k,1580) - lu(k,1088) * lu(k,1572) + lu(k,1581) = lu(k,1581) - lu(k,1089) * lu(k,1572) + lu(k,1582) = lu(k,1582) - lu(k,1090) * lu(k,1572) + lu(k,1583) = lu(k,1583) - lu(k,1091) * lu(k,1572) + lu(k,1584) = lu(k,1584) - lu(k,1092) * lu(k,1572) + lu(k,1129) = 1._r8 / lu(k,1129) + lu(k,1130) = lu(k,1130) * lu(k,1129) + lu(k,1131) = lu(k,1131) * lu(k,1129) + lu(k,1132) = lu(k,1132) * lu(k,1129) + lu(k,1133) = lu(k,1133) * lu(k,1129) + lu(k,1134) = lu(k,1134) * lu(k,1129) + lu(k,1135) = lu(k,1135) * lu(k,1129) + lu(k,1136) = lu(k,1136) * lu(k,1129) + lu(k,1137) = lu(k,1137) * lu(k,1129) + lu(k,1138) = lu(k,1138) * lu(k,1129) + lu(k,1139) = lu(k,1139) * lu(k,1129) + lu(k,1140) = lu(k,1140) * lu(k,1129) + lu(k,1172) = lu(k,1172) - lu(k,1130) * lu(k,1171) + lu(k,1173) = lu(k,1173) - lu(k,1131) * lu(k,1171) + lu(k,1174) = lu(k,1174) - lu(k,1132) * lu(k,1171) + lu(k,1175) = lu(k,1175) - lu(k,1133) * lu(k,1171) + lu(k,1176) = lu(k,1176) - lu(k,1134) * lu(k,1171) + lu(k,1177) = lu(k,1177) - lu(k,1135) * lu(k,1171) + lu(k,1178) = lu(k,1178) - lu(k,1136) * lu(k,1171) + lu(k,1179) = lu(k,1179) - lu(k,1137) * lu(k,1171) + lu(k,1180) = lu(k,1180) - lu(k,1138) * lu(k,1171) + lu(k,1181) = lu(k,1181) - lu(k,1139) * lu(k,1171) + lu(k,1182) = lu(k,1182) - lu(k,1140) * lu(k,1171) + lu(k,1261) = lu(k,1261) - lu(k,1130) * lu(k,1260) + lu(k,1262) = lu(k,1262) - lu(k,1131) * lu(k,1260) + lu(k,1263) = lu(k,1263) - lu(k,1132) * lu(k,1260) + lu(k,1264) = lu(k,1264) - lu(k,1133) * lu(k,1260) + lu(k,1265) = lu(k,1265) - lu(k,1134) * lu(k,1260) + lu(k,1266) = lu(k,1266) - lu(k,1135) * lu(k,1260) + lu(k,1267) = lu(k,1267) - lu(k,1136) * lu(k,1260) + lu(k,1268) = lu(k,1268) - lu(k,1137) * lu(k,1260) + lu(k,1269) = lu(k,1269) - lu(k,1138) * lu(k,1260) + lu(k,1270) = lu(k,1270) - lu(k,1139) * lu(k,1260) + lu(k,1271) = lu(k,1271) - lu(k,1140) * lu(k,1260) + lu(k,1299) = lu(k,1299) - lu(k,1130) * lu(k,1298) + lu(k,1300) = lu(k,1300) - lu(k,1131) * lu(k,1298) + lu(k,1301) = lu(k,1301) - lu(k,1132) * lu(k,1298) + lu(k,1302) = lu(k,1302) - lu(k,1133) * lu(k,1298) + lu(k,1303) = lu(k,1303) - lu(k,1134) * lu(k,1298) + lu(k,1304) = lu(k,1304) - lu(k,1135) * lu(k,1298) + lu(k,1305) = lu(k,1305) - lu(k,1136) * lu(k,1298) + lu(k,1306) = lu(k,1306) - lu(k,1137) * lu(k,1298) + lu(k,1307) = lu(k,1307) - lu(k,1138) * lu(k,1298) + lu(k,1308) = lu(k,1308) - lu(k,1139) * lu(k,1298) + lu(k,1309) = lu(k,1309) - lu(k,1140) * lu(k,1298) + lu(k,1326) = lu(k,1326) - lu(k,1130) * lu(k,1325) + lu(k,1327) = lu(k,1327) - lu(k,1131) * lu(k,1325) + lu(k,1328) = lu(k,1328) - lu(k,1132) * lu(k,1325) + lu(k,1329) = lu(k,1329) - lu(k,1133) * lu(k,1325) + lu(k,1330) = lu(k,1330) - lu(k,1134) * lu(k,1325) + lu(k,1331) = lu(k,1331) - lu(k,1135) * lu(k,1325) + lu(k,1332) = lu(k,1332) - lu(k,1136) * lu(k,1325) + lu(k,1333) = lu(k,1333) - lu(k,1137) * lu(k,1325) + lu(k,1334) = lu(k,1334) - lu(k,1138) * lu(k,1325) + lu(k,1335) = lu(k,1335) - lu(k,1139) * lu(k,1325) + lu(k,1336) = lu(k,1336) - lu(k,1140) * lu(k,1325) + lu(k,1350) = lu(k,1350) - lu(k,1130) * lu(k,1349) + lu(k,1351) = lu(k,1351) - lu(k,1131) * lu(k,1349) + lu(k,1352) = lu(k,1352) - lu(k,1132) * lu(k,1349) + lu(k,1353) = lu(k,1353) - lu(k,1133) * lu(k,1349) + lu(k,1354) = lu(k,1354) - lu(k,1134) * lu(k,1349) + lu(k,1355) = lu(k,1355) - lu(k,1135) * lu(k,1349) + lu(k,1356) = lu(k,1356) - lu(k,1136) * lu(k,1349) + lu(k,1357) = lu(k,1357) - lu(k,1137) * lu(k,1349) + lu(k,1358) = lu(k,1358) - lu(k,1138) * lu(k,1349) + lu(k,1359) = lu(k,1359) - lu(k,1139) * lu(k,1349) + lu(k,1360) = lu(k,1360) - lu(k,1140) * lu(k,1349) + lu(k,1409) = lu(k,1409) - lu(k,1130) * lu(k,1408) + lu(k,1410) = lu(k,1410) - lu(k,1131) * lu(k,1408) + lu(k,1411) = lu(k,1411) - lu(k,1132) * lu(k,1408) + lu(k,1412) = lu(k,1412) - lu(k,1133) * lu(k,1408) + lu(k,1413) = lu(k,1413) - lu(k,1134) * lu(k,1408) + lu(k,1414) = lu(k,1414) - lu(k,1135) * lu(k,1408) + lu(k,1415) = lu(k,1415) - lu(k,1136) * lu(k,1408) + lu(k,1416) = lu(k,1416) - lu(k,1137) * lu(k,1408) + lu(k,1417) = lu(k,1417) - lu(k,1138) * lu(k,1408) + lu(k,1418) = lu(k,1418) - lu(k,1139) * lu(k,1408) + lu(k,1419) = lu(k,1419) - lu(k,1140) * lu(k,1408) + lu(k,1433) = lu(k,1433) - lu(k,1130) * lu(k,1432) + lu(k,1434) = lu(k,1434) - lu(k,1131) * lu(k,1432) + lu(k,1435) = lu(k,1435) - lu(k,1132) * lu(k,1432) + lu(k,1436) = lu(k,1436) - lu(k,1133) * lu(k,1432) + lu(k,1437) = lu(k,1437) - lu(k,1134) * lu(k,1432) + lu(k,1438) = lu(k,1438) - lu(k,1135) * lu(k,1432) + lu(k,1439) = lu(k,1439) - lu(k,1136) * lu(k,1432) + lu(k,1440) = lu(k,1440) - lu(k,1137) * lu(k,1432) + lu(k,1441) = lu(k,1441) - lu(k,1138) * lu(k,1432) + lu(k,1442) = lu(k,1442) - lu(k,1139) * lu(k,1432) + lu(k,1443) = lu(k,1443) - lu(k,1140) * lu(k,1432) + lu(k,1478) = lu(k,1478) - lu(k,1130) * lu(k,1477) + lu(k,1479) = lu(k,1479) - lu(k,1131) * lu(k,1477) + lu(k,1480) = lu(k,1480) - lu(k,1132) * lu(k,1477) + lu(k,1481) = lu(k,1481) - lu(k,1133) * lu(k,1477) + lu(k,1482) = lu(k,1482) - lu(k,1134) * lu(k,1477) + lu(k,1483) = lu(k,1483) - lu(k,1135) * lu(k,1477) + lu(k,1484) = lu(k,1484) - lu(k,1136) * lu(k,1477) + lu(k,1485) = lu(k,1485) - lu(k,1137) * lu(k,1477) + lu(k,1486) = lu(k,1486) - lu(k,1138) * lu(k,1477) + lu(k,1487) = lu(k,1487) - lu(k,1139) * lu(k,1477) + lu(k,1488) = lu(k,1488) - lu(k,1140) * lu(k,1477) + lu(k,1501) = lu(k,1501) - lu(k,1130) * lu(k,1500) + lu(k,1502) = lu(k,1502) - lu(k,1131) * lu(k,1500) + lu(k,1503) = lu(k,1503) - lu(k,1132) * lu(k,1500) + lu(k,1504) = lu(k,1504) - lu(k,1133) * lu(k,1500) + lu(k,1505) = lu(k,1505) - lu(k,1134) * lu(k,1500) + lu(k,1506) = lu(k,1506) - lu(k,1135) * lu(k,1500) + lu(k,1507) = lu(k,1507) - lu(k,1136) * lu(k,1500) + lu(k,1508) = lu(k,1508) - lu(k,1137) * lu(k,1500) + lu(k,1509) = lu(k,1509) - lu(k,1138) * lu(k,1500) + lu(k,1510) = lu(k,1510) - lu(k,1139) * lu(k,1500) + lu(k,1511) = lu(k,1511) - lu(k,1140) * lu(k,1500) + lu(k,1547) = lu(k,1547) - lu(k,1130) * lu(k,1546) + lu(k,1548) = lu(k,1548) - lu(k,1131) * lu(k,1546) + lu(k,1549) = lu(k,1549) - lu(k,1132) * lu(k,1546) + lu(k,1550) = lu(k,1550) - lu(k,1133) * lu(k,1546) + lu(k,1551) = lu(k,1551) - lu(k,1134) * lu(k,1546) + lu(k,1552) = lu(k,1552) - lu(k,1135) * lu(k,1546) + lu(k,1553) = lu(k,1553) - lu(k,1136) * lu(k,1546) + lu(k,1554) = lu(k,1554) - lu(k,1137) * lu(k,1546) + lu(k,1555) = lu(k,1555) - lu(k,1138) * lu(k,1546) + lu(k,1556) = lu(k,1556) - lu(k,1139) * lu(k,1546) + lu(k,1557) = lu(k,1557) - lu(k,1140) * lu(k,1546) + lu(k,1574) = lu(k,1574) - lu(k,1130) * lu(k,1573) + lu(k,1575) = lu(k,1575) - lu(k,1131) * lu(k,1573) + lu(k,1576) = lu(k,1576) - lu(k,1132) * lu(k,1573) + lu(k,1577) = lu(k,1577) - lu(k,1133) * lu(k,1573) + lu(k,1578) = lu(k,1578) - lu(k,1134) * lu(k,1573) + lu(k,1579) = lu(k,1579) - lu(k,1135) * lu(k,1573) + lu(k,1580) = lu(k,1580) - lu(k,1136) * lu(k,1573) + lu(k,1581) = lu(k,1581) - lu(k,1137) * lu(k,1573) + lu(k,1582) = lu(k,1582) - lu(k,1138) * lu(k,1573) + lu(k,1583) = lu(k,1583) - lu(k,1139) * lu(k,1573) + lu(k,1584) = lu(k,1584) - lu(k,1140) * lu(k,1573) + lu(k,1172) = 1._r8 / lu(k,1172) + lu(k,1173) = lu(k,1173) * lu(k,1172) + lu(k,1174) = lu(k,1174) * lu(k,1172) + lu(k,1175) = lu(k,1175) * lu(k,1172) + lu(k,1176) = lu(k,1176) * lu(k,1172) + lu(k,1177) = lu(k,1177) * lu(k,1172) + lu(k,1178) = lu(k,1178) * lu(k,1172) + lu(k,1179) = lu(k,1179) * lu(k,1172) + lu(k,1180) = lu(k,1180) * lu(k,1172) + lu(k,1181) = lu(k,1181) * lu(k,1172) + lu(k,1182) = lu(k,1182) * lu(k,1172) + lu(k,1262) = lu(k,1262) - lu(k,1173) * lu(k,1261) + lu(k,1263) = lu(k,1263) - lu(k,1174) * lu(k,1261) + lu(k,1264) = lu(k,1264) - lu(k,1175) * lu(k,1261) + lu(k,1265) = lu(k,1265) - lu(k,1176) * lu(k,1261) + lu(k,1266) = lu(k,1266) - lu(k,1177) * lu(k,1261) + lu(k,1267) = lu(k,1267) - lu(k,1178) * lu(k,1261) + lu(k,1268) = lu(k,1268) - lu(k,1179) * lu(k,1261) + lu(k,1269) = lu(k,1269) - lu(k,1180) * lu(k,1261) + lu(k,1270) = lu(k,1270) - lu(k,1181) * lu(k,1261) + lu(k,1271) = lu(k,1271) - lu(k,1182) * lu(k,1261) + lu(k,1300) = lu(k,1300) - lu(k,1173) * lu(k,1299) + lu(k,1301) = lu(k,1301) - lu(k,1174) * lu(k,1299) + lu(k,1302) = lu(k,1302) - lu(k,1175) * lu(k,1299) + lu(k,1303) = lu(k,1303) - lu(k,1176) * lu(k,1299) + lu(k,1304) = lu(k,1304) - lu(k,1177) * lu(k,1299) + lu(k,1305) = lu(k,1305) - lu(k,1178) * lu(k,1299) + lu(k,1306) = lu(k,1306) - lu(k,1179) * lu(k,1299) + lu(k,1307) = lu(k,1307) - lu(k,1180) * lu(k,1299) + lu(k,1308) = lu(k,1308) - lu(k,1181) * lu(k,1299) + lu(k,1309) = lu(k,1309) - lu(k,1182) * lu(k,1299) + lu(k,1327) = lu(k,1327) - lu(k,1173) * lu(k,1326) + lu(k,1328) = lu(k,1328) - lu(k,1174) * lu(k,1326) + lu(k,1329) = lu(k,1329) - lu(k,1175) * lu(k,1326) + lu(k,1330) = lu(k,1330) - lu(k,1176) * lu(k,1326) + lu(k,1331) = lu(k,1331) - lu(k,1177) * lu(k,1326) + lu(k,1332) = lu(k,1332) - lu(k,1178) * lu(k,1326) + lu(k,1333) = lu(k,1333) - lu(k,1179) * lu(k,1326) + lu(k,1334) = lu(k,1334) - lu(k,1180) * lu(k,1326) + lu(k,1335) = lu(k,1335) - lu(k,1181) * lu(k,1326) + lu(k,1336) = lu(k,1336) - lu(k,1182) * lu(k,1326) + lu(k,1351) = lu(k,1351) - lu(k,1173) * lu(k,1350) + lu(k,1352) = lu(k,1352) - lu(k,1174) * lu(k,1350) + lu(k,1353) = lu(k,1353) - lu(k,1175) * lu(k,1350) + lu(k,1354) = lu(k,1354) - lu(k,1176) * lu(k,1350) + lu(k,1355) = lu(k,1355) - lu(k,1177) * lu(k,1350) + lu(k,1356) = lu(k,1356) - lu(k,1178) * lu(k,1350) + lu(k,1357) = lu(k,1357) - lu(k,1179) * lu(k,1350) + lu(k,1358) = lu(k,1358) - lu(k,1180) * lu(k,1350) + lu(k,1359) = lu(k,1359) - lu(k,1181) * lu(k,1350) + lu(k,1360) = lu(k,1360) - lu(k,1182) * lu(k,1350) + lu(k,1410) = lu(k,1410) - lu(k,1173) * lu(k,1409) + lu(k,1411) = lu(k,1411) - lu(k,1174) * lu(k,1409) + lu(k,1412) = lu(k,1412) - lu(k,1175) * lu(k,1409) + lu(k,1413) = lu(k,1413) - lu(k,1176) * lu(k,1409) + lu(k,1414) = lu(k,1414) - lu(k,1177) * lu(k,1409) + lu(k,1415) = lu(k,1415) - lu(k,1178) * lu(k,1409) + lu(k,1416) = lu(k,1416) - lu(k,1179) * lu(k,1409) + lu(k,1417) = lu(k,1417) - lu(k,1180) * lu(k,1409) + lu(k,1418) = lu(k,1418) - lu(k,1181) * lu(k,1409) + lu(k,1419) = lu(k,1419) - lu(k,1182) * lu(k,1409) + lu(k,1434) = lu(k,1434) - lu(k,1173) * lu(k,1433) + lu(k,1435) = lu(k,1435) - lu(k,1174) * lu(k,1433) + lu(k,1436) = lu(k,1436) - lu(k,1175) * lu(k,1433) + lu(k,1437) = lu(k,1437) - lu(k,1176) * lu(k,1433) + lu(k,1438) = lu(k,1438) - lu(k,1177) * lu(k,1433) + lu(k,1439) = lu(k,1439) - lu(k,1178) * lu(k,1433) + lu(k,1440) = lu(k,1440) - lu(k,1179) * lu(k,1433) + lu(k,1441) = lu(k,1441) - lu(k,1180) * lu(k,1433) + lu(k,1442) = lu(k,1442) - lu(k,1181) * lu(k,1433) + lu(k,1443) = lu(k,1443) - lu(k,1182) * lu(k,1433) + lu(k,1479) = lu(k,1479) - lu(k,1173) * lu(k,1478) + lu(k,1480) = lu(k,1480) - lu(k,1174) * lu(k,1478) + lu(k,1481) = lu(k,1481) - lu(k,1175) * lu(k,1478) + lu(k,1482) = lu(k,1482) - lu(k,1176) * lu(k,1478) + lu(k,1483) = lu(k,1483) - lu(k,1177) * lu(k,1478) + lu(k,1484) = lu(k,1484) - lu(k,1178) * lu(k,1478) + lu(k,1485) = lu(k,1485) - lu(k,1179) * lu(k,1478) + lu(k,1486) = lu(k,1486) - lu(k,1180) * lu(k,1478) + lu(k,1487) = lu(k,1487) - lu(k,1181) * lu(k,1478) + lu(k,1488) = lu(k,1488) - lu(k,1182) * lu(k,1478) + lu(k,1502) = lu(k,1502) - lu(k,1173) * lu(k,1501) + lu(k,1503) = lu(k,1503) - lu(k,1174) * lu(k,1501) + lu(k,1504) = lu(k,1504) - lu(k,1175) * lu(k,1501) + lu(k,1505) = lu(k,1505) - lu(k,1176) * lu(k,1501) + lu(k,1506) = lu(k,1506) - lu(k,1177) * lu(k,1501) + lu(k,1507) = lu(k,1507) - lu(k,1178) * lu(k,1501) + lu(k,1508) = lu(k,1508) - lu(k,1179) * lu(k,1501) + lu(k,1509) = lu(k,1509) - lu(k,1180) * lu(k,1501) + lu(k,1510) = lu(k,1510) - lu(k,1181) * lu(k,1501) + lu(k,1511) = lu(k,1511) - lu(k,1182) * lu(k,1501) + lu(k,1548) = lu(k,1548) - lu(k,1173) * lu(k,1547) + lu(k,1549) = lu(k,1549) - lu(k,1174) * lu(k,1547) + lu(k,1550) = lu(k,1550) - lu(k,1175) * lu(k,1547) + lu(k,1551) = lu(k,1551) - lu(k,1176) * lu(k,1547) + lu(k,1552) = lu(k,1552) - lu(k,1177) * lu(k,1547) + lu(k,1553) = lu(k,1553) - lu(k,1178) * lu(k,1547) + lu(k,1554) = lu(k,1554) - lu(k,1179) * lu(k,1547) + lu(k,1555) = lu(k,1555) - lu(k,1180) * lu(k,1547) + lu(k,1556) = lu(k,1556) - lu(k,1181) * lu(k,1547) + lu(k,1557) = lu(k,1557) - lu(k,1182) * lu(k,1547) + lu(k,1575) = lu(k,1575) - lu(k,1173) * lu(k,1574) + lu(k,1576) = lu(k,1576) - lu(k,1174) * lu(k,1574) + lu(k,1577) = lu(k,1577) - lu(k,1175) * lu(k,1574) + lu(k,1578) = lu(k,1578) - lu(k,1176) * lu(k,1574) + lu(k,1579) = lu(k,1579) - lu(k,1177) * lu(k,1574) + lu(k,1580) = lu(k,1580) - lu(k,1178) * lu(k,1574) + lu(k,1581) = lu(k,1581) - lu(k,1179) * lu(k,1574) + lu(k,1582) = lu(k,1582) - lu(k,1180) * lu(k,1574) + lu(k,1583) = lu(k,1583) - lu(k,1181) * lu(k,1574) + lu(k,1584) = lu(k,1584) - lu(k,1182) * lu(k,1574) + lu(k,1262) = 1._r8 / lu(k,1262) + lu(k,1263) = lu(k,1263) * lu(k,1262) + lu(k,1264) = lu(k,1264) * lu(k,1262) + lu(k,1265) = lu(k,1265) * lu(k,1262) + lu(k,1266) = lu(k,1266) * lu(k,1262) + lu(k,1267) = lu(k,1267) * lu(k,1262) + lu(k,1268) = lu(k,1268) * lu(k,1262) + lu(k,1269) = lu(k,1269) * lu(k,1262) + lu(k,1270) = lu(k,1270) * lu(k,1262) + lu(k,1271) = lu(k,1271) * lu(k,1262) + lu(k,1301) = lu(k,1301) - lu(k,1263) * lu(k,1300) + lu(k,1302) = lu(k,1302) - lu(k,1264) * lu(k,1300) + lu(k,1303) = lu(k,1303) - lu(k,1265) * lu(k,1300) + lu(k,1304) = lu(k,1304) - lu(k,1266) * lu(k,1300) + lu(k,1305) = lu(k,1305) - lu(k,1267) * lu(k,1300) + lu(k,1306) = lu(k,1306) - lu(k,1268) * lu(k,1300) + lu(k,1307) = lu(k,1307) - lu(k,1269) * lu(k,1300) + lu(k,1308) = lu(k,1308) - lu(k,1270) * lu(k,1300) + lu(k,1309) = lu(k,1309) - lu(k,1271) * lu(k,1300) + lu(k,1328) = lu(k,1328) - lu(k,1263) * lu(k,1327) + lu(k,1329) = lu(k,1329) - lu(k,1264) * lu(k,1327) + lu(k,1330) = lu(k,1330) - lu(k,1265) * lu(k,1327) + lu(k,1331) = lu(k,1331) - lu(k,1266) * lu(k,1327) + lu(k,1332) = lu(k,1332) - lu(k,1267) * lu(k,1327) + lu(k,1333) = lu(k,1333) - lu(k,1268) * lu(k,1327) + lu(k,1334) = lu(k,1334) - lu(k,1269) * lu(k,1327) + lu(k,1335) = lu(k,1335) - lu(k,1270) * lu(k,1327) + lu(k,1336) = lu(k,1336) - lu(k,1271) * lu(k,1327) + lu(k,1352) = lu(k,1352) - lu(k,1263) * lu(k,1351) + lu(k,1353) = lu(k,1353) - lu(k,1264) * lu(k,1351) + lu(k,1354) = lu(k,1354) - lu(k,1265) * lu(k,1351) + lu(k,1355) = lu(k,1355) - lu(k,1266) * lu(k,1351) + lu(k,1356) = lu(k,1356) - lu(k,1267) * lu(k,1351) + lu(k,1357) = lu(k,1357) - lu(k,1268) * lu(k,1351) + lu(k,1358) = lu(k,1358) - lu(k,1269) * lu(k,1351) + lu(k,1359) = lu(k,1359) - lu(k,1270) * lu(k,1351) + lu(k,1360) = lu(k,1360) - lu(k,1271) * lu(k,1351) + lu(k,1411) = lu(k,1411) - lu(k,1263) * lu(k,1410) + lu(k,1412) = lu(k,1412) - lu(k,1264) * lu(k,1410) + lu(k,1413) = lu(k,1413) - lu(k,1265) * lu(k,1410) + lu(k,1414) = lu(k,1414) - lu(k,1266) * lu(k,1410) + lu(k,1415) = lu(k,1415) - lu(k,1267) * lu(k,1410) + lu(k,1416) = lu(k,1416) - lu(k,1268) * lu(k,1410) + lu(k,1417) = lu(k,1417) - lu(k,1269) * lu(k,1410) + lu(k,1418) = lu(k,1418) - lu(k,1270) * lu(k,1410) + lu(k,1419) = lu(k,1419) - lu(k,1271) * lu(k,1410) + lu(k,1435) = lu(k,1435) - lu(k,1263) * lu(k,1434) + lu(k,1436) = lu(k,1436) - lu(k,1264) * lu(k,1434) + lu(k,1437) = lu(k,1437) - lu(k,1265) * lu(k,1434) + lu(k,1438) = lu(k,1438) - lu(k,1266) * lu(k,1434) + lu(k,1439) = lu(k,1439) - lu(k,1267) * lu(k,1434) + lu(k,1440) = lu(k,1440) - lu(k,1268) * lu(k,1434) + lu(k,1441) = lu(k,1441) - lu(k,1269) * lu(k,1434) + lu(k,1442) = lu(k,1442) - lu(k,1270) * lu(k,1434) + lu(k,1443) = lu(k,1443) - lu(k,1271) * lu(k,1434) + lu(k,1480) = lu(k,1480) - lu(k,1263) * lu(k,1479) + lu(k,1481) = lu(k,1481) - lu(k,1264) * lu(k,1479) + lu(k,1482) = lu(k,1482) - lu(k,1265) * lu(k,1479) + lu(k,1483) = lu(k,1483) - lu(k,1266) * lu(k,1479) + lu(k,1484) = lu(k,1484) - lu(k,1267) * lu(k,1479) + lu(k,1485) = lu(k,1485) - lu(k,1268) * lu(k,1479) + lu(k,1486) = lu(k,1486) - lu(k,1269) * lu(k,1479) + lu(k,1487) = lu(k,1487) - lu(k,1270) * lu(k,1479) + lu(k,1488) = lu(k,1488) - lu(k,1271) * lu(k,1479) + lu(k,1503) = lu(k,1503) - lu(k,1263) * lu(k,1502) + lu(k,1504) = lu(k,1504) - lu(k,1264) * lu(k,1502) + lu(k,1505) = lu(k,1505) - lu(k,1265) * lu(k,1502) + lu(k,1506) = lu(k,1506) - lu(k,1266) * lu(k,1502) + lu(k,1507) = lu(k,1507) - lu(k,1267) * lu(k,1502) + lu(k,1508) = lu(k,1508) - lu(k,1268) * lu(k,1502) + lu(k,1509) = lu(k,1509) - lu(k,1269) * lu(k,1502) + lu(k,1510) = lu(k,1510) - lu(k,1270) * lu(k,1502) + lu(k,1511) = lu(k,1511) - lu(k,1271) * lu(k,1502) + lu(k,1549) = lu(k,1549) - lu(k,1263) * lu(k,1548) + lu(k,1550) = lu(k,1550) - lu(k,1264) * lu(k,1548) + lu(k,1551) = lu(k,1551) - lu(k,1265) * lu(k,1548) + lu(k,1552) = lu(k,1552) - lu(k,1266) * lu(k,1548) + lu(k,1553) = lu(k,1553) - lu(k,1267) * lu(k,1548) + lu(k,1554) = lu(k,1554) - lu(k,1268) * lu(k,1548) + lu(k,1555) = lu(k,1555) - lu(k,1269) * lu(k,1548) + lu(k,1556) = lu(k,1556) - lu(k,1270) * lu(k,1548) + lu(k,1557) = lu(k,1557) - lu(k,1271) * lu(k,1548) + lu(k,1576) = lu(k,1576) - lu(k,1263) * lu(k,1575) + lu(k,1577) = lu(k,1577) - lu(k,1264) * lu(k,1575) + lu(k,1578) = lu(k,1578) - lu(k,1265) * lu(k,1575) + lu(k,1579) = lu(k,1579) - lu(k,1266) * lu(k,1575) + lu(k,1580) = lu(k,1580) - lu(k,1267) * lu(k,1575) + lu(k,1581) = lu(k,1581) - lu(k,1268) * lu(k,1575) + lu(k,1582) = lu(k,1582) - lu(k,1269) * lu(k,1575) + lu(k,1583) = lu(k,1583) - lu(k,1270) * lu(k,1575) + lu(k,1584) = lu(k,1584) - lu(k,1271) * lu(k,1575) end do end subroutine lu_fac20 subroutine lu_fac21( avec_len, lu ) @@ -6205,251 +6207,251 @@ subroutine lu_fac21( avec_len, lu ) !----------------------------------------------------------------------- integer :: k do k = 1,avec_len - lu(k,1241) = 1._r8 / lu(k,1241) - lu(k,1242) = lu(k,1242) * lu(k,1241) - lu(k,1243) = lu(k,1243) * lu(k,1241) - lu(k,1244) = lu(k,1244) * lu(k,1241) - lu(k,1245) = lu(k,1245) * lu(k,1241) - lu(k,1246) = lu(k,1246) * lu(k,1241) - lu(k,1247) = lu(k,1247) * lu(k,1241) - lu(k,1248) = lu(k,1248) * lu(k,1241) - lu(k,1249) = lu(k,1249) * lu(k,1241) - lu(k,1284) = lu(k,1284) - lu(k,1242) * lu(k,1283) - lu(k,1285) = lu(k,1285) - lu(k,1243) * lu(k,1283) - lu(k,1286) = lu(k,1286) - lu(k,1244) * lu(k,1283) - lu(k,1287) = lu(k,1287) - lu(k,1245) * lu(k,1283) - lu(k,1288) = lu(k,1288) - lu(k,1246) * lu(k,1283) - lu(k,1289) = lu(k,1289) - lu(k,1247) * lu(k,1283) - lu(k,1290) = lu(k,1290) - lu(k,1248) * lu(k,1283) - lu(k,1291) = lu(k,1291) - lu(k,1249) * lu(k,1283) - lu(k,1322) = lu(k,1322) - lu(k,1242) * lu(k,1321) - lu(k,1323) = lu(k,1323) - lu(k,1243) * lu(k,1321) - lu(k,1324) = lu(k,1324) - lu(k,1244) * lu(k,1321) - lu(k,1325) = lu(k,1325) - lu(k,1245) * lu(k,1321) - lu(k,1326) = lu(k,1326) - lu(k,1246) * lu(k,1321) - lu(k,1327) = lu(k,1327) - lu(k,1247) * lu(k,1321) - lu(k,1328) = lu(k,1328) - lu(k,1248) * lu(k,1321) - lu(k,1329) = lu(k,1329) - lu(k,1249) * lu(k,1321) - lu(k,1411) = lu(k,1411) - lu(k,1242) * lu(k,1410) - lu(k,1412) = lu(k,1412) - lu(k,1243) * lu(k,1410) - lu(k,1413) = lu(k,1413) - lu(k,1244) * lu(k,1410) - lu(k,1414) = lu(k,1414) - lu(k,1245) * lu(k,1410) - lu(k,1415) = lu(k,1415) - lu(k,1246) * lu(k,1410) - lu(k,1416) = lu(k,1416) - lu(k,1247) * lu(k,1410) - lu(k,1417) = lu(k,1417) - lu(k,1248) * lu(k,1410) - lu(k,1418) = lu(k,1418) - lu(k,1249) * lu(k,1410) - lu(k,1456) = lu(k,1456) - lu(k,1242) * lu(k,1455) - lu(k,1457) = lu(k,1457) - lu(k,1243) * lu(k,1455) - lu(k,1458) = lu(k,1458) - lu(k,1244) * lu(k,1455) - lu(k,1459) = lu(k,1459) - lu(k,1245) * lu(k,1455) - lu(k,1460) = lu(k,1460) - lu(k,1246) * lu(k,1455) - lu(k,1461) = lu(k,1461) - lu(k,1247) * lu(k,1455) - lu(k,1462) = lu(k,1462) - lu(k,1248) * lu(k,1455) - lu(k,1463) = lu(k,1463) - lu(k,1249) * lu(k,1455) - lu(k,1504) = lu(k,1504) - lu(k,1242) * lu(k,1503) - lu(k,1505) = lu(k,1505) - lu(k,1243) * lu(k,1503) - lu(k,1506) = lu(k,1506) - lu(k,1244) * lu(k,1503) - lu(k,1507) = lu(k,1507) - lu(k,1245) * lu(k,1503) - lu(k,1508) = lu(k,1508) - lu(k,1246) * lu(k,1503) - lu(k,1509) = lu(k,1509) - lu(k,1247) * lu(k,1503) - lu(k,1510) = lu(k,1510) - lu(k,1248) * lu(k,1503) - lu(k,1511) = lu(k,1511) - lu(k,1249) * lu(k,1503) - lu(k,1529) = lu(k,1529) - lu(k,1242) * lu(k,1528) - lu(k,1530) = lu(k,1530) - lu(k,1243) * lu(k,1528) - lu(k,1531) = lu(k,1531) - lu(k,1244) * lu(k,1528) - lu(k,1532) = lu(k,1532) - lu(k,1245) * lu(k,1528) - lu(k,1533) = lu(k,1533) - lu(k,1246) * lu(k,1528) - lu(k,1534) = lu(k,1534) - lu(k,1247) * lu(k,1528) - lu(k,1535) = lu(k,1535) - lu(k,1248) * lu(k,1528) - lu(k,1536) = lu(k,1536) - lu(k,1249) * lu(k,1528) - lu(k,1550) = lu(k,1550) - lu(k,1242) * lu(k,1549) - lu(k,1551) = lu(k,1551) - lu(k,1243) * lu(k,1549) - lu(k,1552) = lu(k,1552) - lu(k,1244) * lu(k,1549) - lu(k,1553) = lu(k,1553) - lu(k,1245) * lu(k,1549) - lu(k,1554) = lu(k,1554) - lu(k,1246) * lu(k,1549) - lu(k,1555) = lu(k,1555) - lu(k,1247) * lu(k,1549) - lu(k,1556) = lu(k,1556) - lu(k,1248) * lu(k,1549) - lu(k,1557) = lu(k,1557) - lu(k,1249) * lu(k,1549) - lu(k,1577) = lu(k,1577) - lu(k,1242) * lu(k,1576) - lu(k,1578) = lu(k,1578) - lu(k,1243) * lu(k,1576) - lu(k,1579) = lu(k,1579) - lu(k,1244) * lu(k,1576) - lu(k,1580) = lu(k,1580) - lu(k,1245) * lu(k,1576) - lu(k,1581) = lu(k,1581) - lu(k,1246) * lu(k,1576) - lu(k,1582) = lu(k,1582) - lu(k,1247) * lu(k,1576) - lu(k,1583) = lu(k,1583) - lu(k,1248) * lu(k,1576) - lu(k,1584) = lu(k,1584) - lu(k,1249) * lu(k,1576) - lu(k,1284) = 1._r8 / lu(k,1284) - lu(k,1285) = lu(k,1285) * lu(k,1284) - lu(k,1286) = lu(k,1286) * lu(k,1284) - lu(k,1287) = lu(k,1287) * lu(k,1284) - lu(k,1288) = lu(k,1288) * lu(k,1284) - lu(k,1289) = lu(k,1289) * lu(k,1284) - lu(k,1290) = lu(k,1290) * lu(k,1284) - lu(k,1291) = lu(k,1291) * lu(k,1284) - lu(k,1323) = lu(k,1323) - lu(k,1285) * lu(k,1322) - lu(k,1324) = lu(k,1324) - lu(k,1286) * lu(k,1322) - lu(k,1325) = lu(k,1325) - lu(k,1287) * lu(k,1322) - lu(k,1326) = lu(k,1326) - lu(k,1288) * lu(k,1322) - lu(k,1327) = lu(k,1327) - lu(k,1289) * lu(k,1322) - lu(k,1328) = lu(k,1328) - lu(k,1290) * lu(k,1322) - lu(k,1329) = lu(k,1329) - lu(k,1291) * lu(k,1322) - lu(k,1412) = lu(k,1412) - lu(k,1285) * lu(k,1411) - lu(k,1413) = lu(k,1413) - lu(k,1286) * lu(k,1411) - lu(k,1414) = lu(k,1414) - lu(k,1287) * lu(k,1411) - lu(k,1415) = lu(k,1415) - lu(k,1288) * lu(k,1411) - lu(k,1416) = lu(k,1416) - lu(k,1289) * lu(k,1411) - lu(k,1417) = lu(k,1417) - lu(k,1290) * lu(k,1411) - lu(k,1418) = lu(k,1418) - lu(k,1291) * lu(k,1411) - lu(k,1457) = lu(k,1457) - lu(k,1285) * lu(k,1456) - lu(k,1458) = lu(k,1458) - lu(k,1286) * lu(k,1456) - lu(k,1459) = lu(k,1459) - lu(k,1287) * lu(k,1456) - lu(k,1460) = lu(k,1460) - lu(k,1288) * lu(k,1456) - lu(k,1461) = lu(k,1461) - lu(k,1289) * lu(k,1456) - lu(k,1462) = lu(k,1462) - lu(k,1290) * lu(k,1456) - lu(k,1463) = lu(k,1463) - lu(k,1291) * lu(k,1456) - lu(k,1505) = lu(k,1505) - lu(k,1285) * lu(k,1504) - lu(k,1506) = lu(k,1506) - lu(k,1286) * lu(k,1504) - lu(k,1507) = lu(k,1507) - lu(k,1287) * lu(k,1504) - lu(k,1508) = lu(k,1508) - lu(k,1288) * lu(k,1504) - lu(k,1509) = lu(k,1509) - lu(k,1289) * lu(k,1504) - lu(k,1510) = lu(k,1510) - lu(k,1290) * lu(k,1504) - lu(k,1511) = lu(k,1511) - lu(k,1291) * lu(k,1504) - lu(k,1530) = lu(k,1530) - lu(k,1285) * lu(k,1529) - lu(k,1531) = lu(k,1531) - lu(k,1286) * lu(k,1529) - lu(k,1532) = lu(k,1532) - lu(k,1287) * lu(k,1529) - lu(k,1533) = lu(k,1533) - lu(k,1288) * lu(k,1529) - lu(k,1534) = lu(k,1534) - lu(k,1289) * lu(k,1529) - lu(k,1535) = lu(k,1535) - lu(k,1290) * lu(k,1529) - lu(k,1536) = lu(k,1536) - lu(k,1291) * lu(k,1529) - lu(k,1551) = lu(k,1551) - lu(k,1285) * lu(k,1550) - lu(k,1552) = lu(k,1552) - lu(k,1286) * lu(k,1550) - lu(k,1553) = lu(k,1553) - lu(k,1287) * lu(k,1550) - lu(k,1554) = lu(k,1554) - lu(k,1288) * lu(k,1550) - lu(k,1555) = lu(k,1555) - lu(k,1289) * lu(k,1550) - lu(k,1556) = lu(k,1556) - lu(k,1290) * lu(k,1550) - lu(k,1557) = lu(k,1557) - lu(k,1291) * lu(k,1550) - lu(k,1578) = lu(k,1578) - lu(k,1285) * lu(k,1577) - lu(k,1579) = lu(k,1579) - lu(k,1286) * lu(k,1577) - lu(k,1580) = lu(k,1580) - lu(k,1287) * lu(k,1577) - lu(k,1581) = lu(k,1581) - lu(k,1288) * lu(k,1577) - lu(k,1582) = lu(k,1582) - lu(k,1289) * lu(k,1577) - lu(k,1583) = lu(k,1583) - lu(k,1290) * lu(k,1577) - lu(k,1584) = lu(k,1584) - lu(k,1291) * lu(k,1577) - lu(k,1323) = 1._r8 / lu(k,1323) - lu(k,1324) = lu(k,1324) * lu(k,1323) - lu(k,1325) = lu(k,1325) * lu(k,1323) - lu(k,1326) = lu(k,1326) * lu(k,1323) - lu(k,1327) = lu(k,1327) * lu(k,1323) - lu(k,1328) = lu(k,1328) * lu(k,1323) - lu(k,1329) = lu(k,1329) * lu(k,1323) - lu(k,1413) = lu(k,1413) - lu(k,1324) * lu(k,1412) - lu(k,1414) = lu(k,1414) - lu(k,1325) * lu(k,1412) - lu(k,1415) = lu(k,1415) - lu(k,1326) * lu(k,1412) - lu(k,1416) = lu(k,1416) - lu(k,1327) * lu(k,1412) - lu(k,1417) = lu(k,1417) - lu(k,1328) * lu(k,1412) - lu(k,1418) = lu(k,1418) - lu(k,1329) * lu(k,1412) - lu(k,1458) = lu(k,1458) - lu(k,1324) * lu(k,1457) - lu(k,1459) = lu(k,1459) - lu(k,1325) * lu(k,1457) - lu(k,1460) = lu(k,1460) - lu(k,1326) * lu(k,1457) - lu(k,1461) = lu(k,1461) - lu(k,1327) * lu(k,1457) - lu(k,1462) = lu(k,1462) - lu(k,1328) * lu(k,1457) - lu(k,1463) = lu(k,1463) - lu(k,1329) * lu(k,1457) - lu(k,1506) = lu(k,1506) - lu(k,1324) * lu(k,1505) - lu(k,1507) = lu(k,1507) - lu(k,1325) * lu(k,1505) - lu(k,1508) = lu(k,1508) - lu(k,1326) * lu(k,1505) - lu(k,1509) = lu(k,1509) - lu(k,1327) * lu(k,1505) - lu(k,1510) = lu(k,1510) - lu(k,1328) * lu(k,1505) - lu(k,1511) = lu(k,1511) - lu(k,1329) * lu(k,1505) - lu(k,1531) = lu(k,1531) - lu(k,1324) * lu(k,1530) - lu(k,1532) = lu(k,1532) - lu(k,1325) * lu(k,1530) - lu(k,1533) = lu(k,1533) - lu(k,1326) * lu(k,1530) - lu(k,1534) = lu(k,1534) - lu(k,1327) * lu(k,1530) - lu(k,1535) = lu(k,1535) - lu(k,1328) * lu(k,1530) - lu(k,1536) = lu(k,1536) - lu(k,1329) * lu(k,1530) - lu(k,1552) = lu(k,1552) - lu(k,1324) * lu(k,1551) - lu(k,1553) = lu(k,1553) - lu(k,1325) * lu(k,1551) - lu(k,1554) = lu(k,1554) - lu(k,1326) * lu(k,1551) - lu(k,1555) = lu(k,1555) - lu(k,1327) * lu(k,1551) - lu(k,1556) = lu(k,1556) - lu(k,1328) * lu(k,1551) - lu(k,1557) = lu(k,1557) - lu(k,1329) * lu(k,1551) - lu(k,1579) = lu(k,1579) - lu(k,1324) * lu(k,1578) - lu(k,1580) = lu(k,1580) - lu(k,1325) * lu(k,1578) - lu(k,1581) = lu(k,1581) - lu(k,1326) * lu(k,1578) - lu(k,1582) = lu(k,1582) - lu(k,1327) * lu(k,1578) - lu(k,1583) = lu(k,1583) - lu(k,1328) * lu(k,1578) - lu(k,1584) = lu(k,1584) - lu(k,1329) * lu(k,1578) - lu(k,1413) = 1._r8 / lu(k,1413) - lu(k,1414) = lu(k,1414) * lu(k,1413) - lu(k,1415) = lu(k,1415) * lu(k,1413) - lu(k,1416) = lu(k,1416) * lu(k,1413) - lu(k,1417) = lu(k,1417) * lu(k,1413) - lu(k,1418) = lu(k,1418) * lu(k,1413) - lu(k,1459) = lu(k,1459) - lu(k,1414) * lu(k,1458) - lu(k,1460) = lu(k,1460) - lu(k,1415) * lu(k,1458) - lu(k,1461) = lu(k,1461) - lu(k,1416) * lu(k,1458) - lu(k,1462) = lu(k,1462) - lu(k,1417) * lu(k,1458) - lu(k,1463) = lu(k,1463) - lu(k,1418) * lu(k,1458) - lu(k,1507) = lu(k,1507) - lu(k,1414) * lu(k,1506) - lu(k,1508) = lu(k,1508) - lu(k,1415) * lu(k,1506) - lu(k,1509) = lu(k,1509) - lu(k,1416) * lu(k,1506) - lu(k,1510) = lu(k,1510) - lu(k,1417) * lu(k,1506) - lu(k,1511) = lu(k,1511) - lu(k,1418) * lu(k,1506) - lu(k,1532) = lu(k,1532) - lu(k,1414) * lu(k,1531) - lu(k,1533) = lu(k,1533) - lu(k,1415) * lu(k,1531) - lu(k,1534) = lu(k,1534) - lu(k,1416) * lu(k,1531) - lu(k,1535) = lu(k,1535) - lu(k,1417) * lu(k,1531) - lu(k,1536) = lu(k,1536) - lu(k,1418) * lu(k,1531) - lu(k,1553) = lu(k,1553) - lu(k,1414) * lu(k,1552) - lu(k,1554) = lu(k,1554) - lu(k,1415) * lu(k,1552) - lu(k,1555) = lu(k,1555) - lu(k,1416) * lu(k,1552) - lu(k,1556) = lu(k,1556) - lu(k,1417) * lu(k,1552) - lu(k,1557) = lu(k,1557) - lu(k,1418) * lu(k,1552) - lu(k,1580) = lu(k,1580) - lu(k,1414) * lu(k,1579) - lu(k,1581) = lu(k,1581) - lu(k,1415) * lu(k,1579) - lu(k,1582) = lu(k,1582) - lu(k,1416) * lu(k,1579) - lu(k,1583) = lu(k,1583) - lu(k,1417) * lu(k,1579) - lu(k,1584) = lu(k,1584) - lu(k,1418) * lu(k,1579) - lu(k,1459) = 1._r8 / lu(k,1459) - lu(k,1460) = lu(k,1460) * lu(k,1459) - lu(k,1461) = lu(k,1461) * lu(k,1459) - lu(k,1462) = lu(k,1462) * lu(k,1459) - lu(k,1463) = lu(k,1463) * lu(k,1459) - lu(k,1508) = lu(k,1508) - lu(k,1460) * lu(k,1507) - lu(k,1509) = lu(k,1509) - lu(k,1461) * lu(k,1507) - lu(k,1510) = lu(k,1510) - lu(k,1462) * lu(k,1507) - lu(k,1511) = lu(k,1511) - lu(k,1463) * lu(k,1507) - lu(k,1533) = lu(k,1533) - lu(k,1460) * lu(k,1532) - lu(k,1534) = lu(k,1534) - lu(k,1461) * lu(k,1532) - lu(k,1535) = lu(k,1535) - lu(k,1462) * lu(k,1532) - lu(k,1536) = lu(k,1536) - lu(k,1463) * lu(k,1532) - lu(k,1554) = lu(k,1554) - lu(k,1460) * lu(k,1553) - lu(k,1555) = lu(k,1555) - lu(k,1461) * lu(k,1553) - lu(k,1556) = lu(k,1556) - lu(k,1462) * lu(k,1553) - lu(k,1557) = lu(k,1557) - lu(k,1463) * lu(k,1553) - lu(k,1581) = lu(k,1581) - lu(k,1460) * lu(k,1580) - lu(k,1582) = lu(k,1582) - lu(k,1461) * lu(k,1580) - lu(k,1583) = lu(k,1583) - lu(k,1462) * lu(k,1580) - lu(k,1584) = lu(k,1584) - lu(k,1463) * lu(k,1580) - lu(k,1508) = 1._r8 / lu(k,1508) - lu(k,1509) = lu(k,1509) * lu(k,1508) - lu(k,1510) = lu(k,1510) * lu(k,1508) - lu(k,1511) = lu(k,1511) * lu(k,1508) - lu(k,1534) = lu(k,1534) - lu(k,1509) * lu(k,1533) - lu(k,1535) = lu(k,1535) - lu(k,1510) * lu(k,1533) - lu(k,1536) = lu(k,1536) - lu(k,1511) * lu(k,1533) - lu(k,1555) = lu(k,1555) - lu(k,1509) * lu(k,1554) - lu(k,1556) = lu(k,1556) - lu(k,1510) * lu(k,1554) - lu(k,1557) = lu(k,1557) - lu(k,1511) * lu(k,1554) - lu(k,1582) = lu(k,1582) - lu(k,1509) * lu(k,1581) - lu(k,1583) = lu(k,1583) - lu(k,1510) * lu(k,1581) - lu(k,1584) = lu(k,1584) - lu(k,1511) * lu(k,1581) - lu(k,1534) = 1._r8 / lu(k,1534) - lu(k,1535) = lu(k,1535) * lu(k,1534) - lu(k,1536) = lu(k,1536) * lu(k,1534) - lu(k,1556) = lu(k,1556) - lu(k,1535) * lu(k,1555) - lu(k,1557) = lu(k,1557) - lu(k,1536) * lu(k,1555) - lu(k,1583) = lu(k,1583) - lu(k,1535) * lu(k,1582) - lu(k,1584) = lu(k,1584) - lu(k,1536) * lu(k,1582) + lu(k,1301) = 1._r8 / lu(k,1301) + lu(k,1302) = lu(k,1302) * lu(k,1301) + lu(k,1303) = lu(k,1303) * lu(k,1301) + lu(k,1304) = lu(k,1304) * lu(k,1301) + lu(k,1305) = lu(k,1305) * lu(k,1301) + lu(k,1306) = lu(k,1306) * lu(k,1301) + lu(k,1307) = lu(k,1307) * lu(k,1301) + lu(k,1308) = lu(k,1308) * lu(k,1301) + lu(k,1309) = lu(k,1309) * lu(k,1301) + lu(k,1329) = lu(k,1329) - lu(k,1302) * lu(k,1328) + lu(k,1330) = lu(k,1330) - lu(k,1303) * lu(k,1328) + lu(k,1331) = lu(k,1331) - lu(k,1304) * lu(k,1328) + lu(k,1332) = lu(k,1332) - lu(k,1305) * lu(k,1328) + lu(k,1333) = lu(k,1333) - lu(k,1306) * lu(k,1328) + lu(k,1334) = lu(k,1334) - lu(k,1307) * lu(k,1328) + lu(k,1335) = lu(k,1335) - lu(k,1308) * lu(k,1328) + lu(k,1336) = lu(k,1336) - lu(k,1309) * lu(k,1328) + lu(k,1353) = lu(k,1353) - lu(k,1302) * lu(k,1352) + lu(k,1354) = lu(k,1354) - lu(k,1303) * lu(k,1352) + lu(k,1355) = lu(k,1355) - lu(k,1304) * lu(k,1352) + lu(k,1356) = lu(k,1356) - lu(k,1305) * lu(k,1352) + lu(k,1357) = lu(k,1357) - lu(k,1306) * lu(k,1352) + lu(k,1358) = lu(k,1358) - lu(k,1307) * lu(k,1352) + lu(k,1359) = lu(k,1359) - lu(k,1308) * lu(k,1352) + lu(k,1360) = lu(k,1360) - lu(k,1309) * lu(k,1352) + lu(k,1412) = lu(k,1412) - lu(k,1302) * lu(k,1411) + lu(k,1413) = lu(k,1413) - lu(k,1303) * lu(k,1411) + lu(k,1414) = lu(k,1414) - lu(k,1304) * lu(k,1411) + lu(k,1415) = lu(k,1415) - lu(k,1305) * lu(k,1411) + lu(k,1416) = lu(k,1416) - lu(k,1306) * lu(k,1411) + lu(k,1417) = lu(k,1417) - lu(k,1307) * lu(k,1411) + lu(k,1418) = lu(k,1418) - lu(k,1308) * lu(k,1411) + lu(k,1419) = lu(k,1419) - lu(k,1309) * lu(k,1411) + lu(k,1436) = lu(k,1436) - lu(k,1302) * lu(k,1435) + lu(k,1437) = lu(k,1437) - lu(k,1303) * lu(k,1435) + lu(k,1438) = lu(k,1438) - lu(k,1304) * lu(k,1435) + lu(k,1439) = lu(k,1439) - lu(k,1305) * lu(k,1435) + lu(k,1440) = lu(k,1440) - lu(k,1306) * lu(k,1435) + lu(k,1441) = lu(k,1441) - lu(k,1307) * lu(k,1435) + lu(k,1442) = lu(k,1442) - lu(k,1308) * lu(k,1435) + lu(k,1443) = lu(k,1443) - lu(k,1309) * lu(k,1435) + lu(k,1481) = lu(k,1481) - lu(k,1302) * lu(k,1480) + lu(k,1482) = lu(k,1482) - lu(k,1303) * lu(k,1480) + lu(k,1483) = lu(k,1483) - lu(k,1304) * lu(k,1480) + lu(k,1484) = lu(k,1484) - lu(k,1305) * lu(k,1480) + lu(k,1485) = lu(k,1485) - lu(k,1306) * lu(k,1480) + lu(k,1486) = lu(k,1486) - lu(k,1307) * lu(k,1480) + lu(k,1487) = lu(k,1487) - lu(k,1308) * lu(k,1480) + lu(k,1488) = lu(k,1488) - lu(k,1309) * lu(k,1480) + lu(k,1504) = lu(k,1504) - lu(k,1302) * lu(k,1503) + lu(k,1505) = lu(k,1505) - lu(k,1303) * lu(k,1503) + lu(k,1506) = lu(k,1506) - lu(k,1304) * lu(k,1503) + lu(k,1507) = lu(k,1507) - lu(k,1305) * lu(k,1503) + lu(k,1508) = lu(k,1508) - lu(k,1306) * lu(k,1503) + lu(k,1509) = lu(k,1509) - lu(k,1307) * lu(k,1503) + lu(k,1510) = lu(k,1510) - lu(k,1308) * lu(k,1503) + lu(k,1511) = lu(k,1511) - lu(k,1309) * lu(k,1503) + lu(k,1550) = lu(k,1550) - lu(k,1302) * lu(k,1549) + lu(k,1551) = lu(k,1551) - lu(k,1303) * lu(k,1549) + lu(k,1552) = lu(k,1552) - lu(k,1304) * lu(k,1549) + lu(k,1553) = lu(k,1553) - lu(k,1305) * lu(k,1549) + lu(k,1554) = lu(k,1554) - lu(k,1306) * lu(k,1549) + lu(k,1555) = lu(k,1555) - lu(k,1307) * lu(k,1549) + lu(k,1556) = lu(k,1556) - lu(k,1308) * lu(k,1549) + lu(k,1557) = lu(k,1557) - lu(k,1309) * lu(k,1549) + lu(k,1577) = lu(k,1577) - lu(k,1302) * lu(k,1576) + lu(k,1578) = lu(k,1578) - lu(k,1303) * lu(k,1576) + lu(k,1579) = lu(k,1579) - lu(k,1304) * lu(k,1576) + lu(k,1580) = lu(k,1580) - lu(k,1305) * lu(k,1576) + lu(k,1581) = lu(k,1581) - lu(k,1306) * lu(k,1576) + lu(k,1582) = lu(k,1582) - lu(k,1307) * lu(k,1576) + lu(k,1583) = lu(k,1583) - lu(k,1308) * lu(k,1576) + lu(k,1584) = lu(k,1584) - lu(k,1309) * lu(k,1576) + lu(k,1329) = 1._r8 / lu(k,1329) + lu(k,1330) = lu(k,1330) * lu(k,1329) + lu(k,1331) = lu(k,1331) * lu(k,1329) + lu(k,1332) = lu(k,1332) * lu(k,1329) + lu(k,1333) = lu(k,1333) * lu(k,1329) + lu(k,1334) = lu(k,1334) * lu(k,1329) + lu(k,1335) = lu(k,1335) * lu(k,1329) + lu(k,1336) = lu(k,1336) * lu(k,1329) + lu(k,1354) = lu(k,1354) - lu(k,1330) * lu(k,1353) + lu(k,1355) = lu(k,1355) - lu(k,1331) * lu(k,1353) + lu(k,1356) = lu(k,1356) - lu(k,1332) * lu(k,1353) + lu(k,1357) = lu(k,1357) - lu(k,1333) * lu(k,1353) + lu(k,1358) = lu(k,1358) - lu(k,1334) * lu(k,1353) + lu(k,1359) = lu(k,1359) - lu(k,1335) * lu(k,1353) + lu(k,1360) = lu(k,1360) - lu(k,1336) * lu(k,1353) + lu(k,1413) = lu(k,1413) - lu(k,1330) * lu(k,1412) + lu(k,1414) = lu(k,1414) - lu(k,1331) * lu(k,1412) + lu(k,1415) = lu(k,1415) - lu(k,1332) * lu(k,1412) + lu(k,1416) = lu(k,1416) - lu(k,1333) * lu(k,1412) + lu(k,1417) = lu(k,1417) - lu(k,1334) * lu(k,1412) + lu(k,1418) = lu(k,1418) - lu(k,1335) * lu(k,1412) + lu(k,1419) = lu(k,1419) - lu(k,1336) * lu(k,1412) + lu(k,1437) = lu(k,1437) - lu(k,1330) * lu(k,1436) + lu(k,1438) = lu(k,1438) - lu(k,1331) * lu(k,1436) + lu(k,1439) = lu(k,1439) - lu(k,1332) * lu(k,1436) + lu(k,1440) = lu(k,1440) - lu(k,1333) * lu(k,1436) + lu(k,1441) = lu(k,1441) - lu(k,1334) * lu(k,1436) + lu(k,1442) = lu(k,1442) - lu(k,1335) * lu(k,1436) + lu(k,1443) = lu(k,1443) - lu(k,1336) * lu(k,1436) + lu(k,1482) = lu(k,1482) - lu(k,1330) * lu(k,1481) + lu(k,1483) = lu(k,1483) - lu(k,1331) * lu(k,1481) + lu(k,1484) = lu(k,1484) - lu(k,1332) * lu(k,1481) + lu(k,1485) = lu(k,1485) - lu(k,1333) * lu(k,1481) + lu(k,1486) = lu(k,1486) - lu(k,1334) * lu(k,1481) + lu(k,1487) = lu(k,1487) - lu(k,1335) * lu(k,1481) + lu(k,1488) = lu(k,1488) - lu(k,1336) * lu(k,1481) + lu(k,1505) = lu(k,1505) - lu(k,1330) * lu(k,1504) + lu(k,1506) = lu(k,1506) - lu(k,1331) * lu(k,1504) + lu(k,1507) = lu(k,1507) - lu(k,1332) * lu(k,1504) + lu(k,1508) = lu(k,1508) - lu(k,1333) * lu(k,1504) + lu(k,1509) = lu(k,1509) - lu(k,1334) * lu(k,1504) + lu(k,1510) = lu(k,1510) - lu(k,1335) * lu(k,1504) + lu(k,1511) = lu(k,1511) - lu(k,1336) * lu(k,1504) + lu(k,1551) = lu(k,1551) - lu(k,1330) * lu(k,1550) + lu(k,1552) = lu(k,1552) - lu(k,1331) * lu(k,1550) + lu(k,1553) = lu(k,1553) - lu(k,1332) * lu(k,1550) + lu(k,1554) = lu(k,1554) - lu(k,1333) * lu(k,1550) + lu(k,1555) = lu(k,1555) - lu(k,1334) * lu(k,1550) + lu(k,1556) = lu(k,1556) - lu(k,1335) * lu(k,1550) + lu(k,1557) = lu(k,1557) - lu(k,1336) * lu(k,1550) + lu(k,1578) = lu(k,1578) - lu(k,1330) * lu(k,1577) + lu(k,1579) = lu(k,1579) - lu(k,1331) * lu(k,1577) + lu(k,1580) = lu(k,1580) - lu(k,1332) * lu(k,1577) + lu(k,1581) = lu(k,1581) - lu(k,1333) * lu(k,1577) + lu(k,1582) = lu(k,1582) - lu(k,1334) * lu(k,1577) + lu(k,1583) = lu(k,1583) - lu(k,1335) * lu(k,1577) + lu(k,1584) = lu(k,1584) - lu(k,1336) * lu(k,1577) + lu(k,1354) = 1._r8 / lu(k,1354) + lu(k,1355) = lu(k,1355) * lu(k,1354) + lu(k,1356) = lu(k,1356) * lu(k,1354) + lu(k,1357) = lu(k,1357) * lu(k,1354) + lu(k,1358) = lu(k,1358) * lu(k,1354) + lu(k,1359) = lu(k,1359) * lu(k,1354) + lu(k,1360) = lu(k,1360) * lu(k,1354) + lu(k,1414) = lu(k,1414) - lu(k,1355) * lu(k,1413) + lu(k,1415) = lu(k,1415) - lu(k,1356) * lu(k,1413) + lu(k,1416) = lu(k,1416) - lu(k,1357) * lu(k,1413) + lu(k,1417) = lu(k,1417) - lu(k,1358) * lu(k,1413) + lu(k,1418) = lu(k,1418) - lu(k,1359) * lu(k,1413) + lu(k,1419) = lu(k,1419) - lu(k,1360) * lu(k,1413) + lu(k,1438) = lu(k,1438) - lu(k,1355) * lu(k,1437) + lu(k,1439) = lu(k,1439) - lu(k,1356) * lu(k,1437) + lu(k,1440) = lu(k,1440) - lu(k,1357) * lu(k,1437) + lu(k,1441) = lu(k,1441) - lu(k,1358) * lu(k,1437) + lu(k,1442) = lu(k,1442) - lu(k,1359) * lu(k,1437) + lu(k,1443) = lu(k,1443) - lu(k,1360) * lu(k,1437) + lu(k,1483) = lu(k,1483) - lu(k,1355) * lu(k,1482) + lu(k,1484) = lu(k,1484) - lu(k,1356) * lu(k,1482) + lu(k,1485) = lu(k,1485) - lu(k,1357) * lu(k,1482) + lu(k,1486) = lu(k,1486) - lu(k,1358) * lu(k,1482) + lu(k,1487) = lu(k,1487) - lu(k,1359) * lu(k,1482) + lu(k,1488) = lu(k,1488) - lu(k,1360) * lu(k,1482) + lu(k,1506) = lu(k,1506) - lu(k,1355) * lu(k,1505) + lu(k,1507) = lu(k,1507) - lu(k,1356) * lu(k,1505) + lu(k,1508) = lu(k,1508) - lu(k,1357) * lu(k,1505) + lu(k,1509) = lu(k,1509) - lu(k,1358) * lu(k,1505) + lu(k,1510) = lu(k,1510) - lu(k,1359) * lu(k,1505) + lu(k,1511) = lu(k,1511) - lu(k,1360) * lu(k,1505) + lu(k,1552) = lu(k,1552) - lu(k,1355) * lu(k,1551) + lu(k,1553) = lu(k,1553) - lu(k,1356) * lu(k,1551) + lu(k,1554) = lu(k,1554) - lu(k,1357) * lu(k,1551) + lu(k,1555) = lu(k,1555) - lu(k,1358) * lu(k,1551) + lu(k,1556) = lu(k,1556) - lu(k,1359) * lu(k,1551) + lu(k,1557) = lu(k,1557) - lu(k,1360) * lu(k,1551) + lu(k,1579) = lu(k,1579) - lu(k,1355) * lu(k,1578) + lu(k,1580) = lu(k,1580) - lu(k,1356) * lu(k,1578) + lu(k,1581) = lu(k,1581) - lu(k,1357) * lu(k,1578) + lu(k,1582) = lu(k,1582) - lu(k,1358) * lu(k,1578) + lu(k,1583) = lu(k,1583) - lu(k,1359) * lu(k,1578) + lu(k,1584) = lu(k,1584) - lu(k,1360) * lu(k,1578) + lu(k,1414) = 1._r8 / lu(k,1414) + lu(k,1415) = lu(k,1415) * lu(k,1414) + lu(k,1416) = lu(k,1416) * lu(k,1414) + lu(k,1417) = lu(k,1417) * lu(k,1414) + lu(k,1418) = lu(k,1418) * lu(k,1414) + lu(k,1419) = lu(k,1419) * lu(k,1414) + lu(k,1439) = lu(k,1439) - lu(k,1415) * lu(k,1438) + lu(k,1440) = lu(k,1440) - lu(k,1416) * lu(k,1438) + lu(k,1441) = lu(k,1441) - lu(k,1417) * lu(k,1438) + lu(k,1442) = lu(k,1442) - lu(k,1418) * lu(k,1438) + lu(k,1443) = lu(k,1443) - lu(k,1419) * lu(k,1438) + lu(k,1484) = lu(k,1484) - lu(k,1415) * lu(k,1483) + lu(k,1485) = lu(k,1485) - lu(k,1416) * lu(k,1483) + lu(k,1486) = lu(k,1486) - lu(k,1417) * lu(k,1483) + lu(k,1487) = lu(k,1487) - lu(k,1418) * lu(k,1483) + lu(k,1488) = lu(k,1488) - lu(k,1419) * lu(k,1483) + lu(k,1507) = lu(k,1507) - lu(k,1415) * lu(k,1506) + lu(k,1508) = lu(k,1508) - lu(k,1416) * lu(k,1506) + lu(k,1509) = lu(k,1509) - lu(k,1417) * lu(k,1506) + lu(k,1510) = lu(k,1510) - lu(k,1418) * lu(k,1506) + lu(k,1511) = lu(k,1511) - lu(k,1419) * lu(k,1506) + lu(k,1553) = lu(k,1553) - lu(k,1415) * lu(k,1552) + lu(k,1554) = lu(k,1554) - lu(k,1416) * lu(k,1552) + lu(k,1555) = lu(k,1555) - lu(k,1417) * lu(k,1552) + lu(k,1556) = lu(k,1556) - lu(k,1418) * lu(k,1552) + lu(k,1557) = lu(k,1557) - lu(k,1419) * lu(k,1552) + lu(k,1580) = lu(k,1580) - lu(k,1415) * lu(k,1579) + lu(k,1581) = lu(k,1581) - lu(k,1416) * lu(k,1579) + lu(k,1582) = lu(k,1582) - lu(k,1417) * lu(k,1579) + lu(k,1583) = lu(k,1583) - lu(k,1418) * lu(k,1579) + lu(k,1584) = lu(k,1584) - lu(k,1419) * lu(k,1579) + lu(k,1439) = 1._r8 / lu(k,1439) + lu(k,1440) = lu(k,1440) * lu(k,1439) + lu(k,1441) = lu(k,1441) * lu(k,1439) + lu(k,1442) = lu(k,1442) * lu(k,1439) + lu(k,1443) = lu(k,1443) * lu(k,1439) + lu(k,1485) = lu(k,1485) - lu(k,1440) * lu(k,1484) + lu(k,1486) = lu(k,1486) - lu(k,1441) * lu(k,1484) + lu(k,1487) = lu(k,1487) - lu(k,1442) * lu(k,1484) + lu(k,1488) = lu(k,1488) - lu(k,1443) * lu(k,1484) + lu(k,1508) = lu(k,1508) - lu(k,1440) * lu(k,1507) + lu(k,1509) = lu(k,1509) - lu(k,1441) * lu(k,1507) + lu(k,1510) = lu(k,1510) - lu(k,1442) * lu(k,1507) + lu(k,1511) = lu(k,1511) - lu(k,1443) * lu(k,1507) + lu(k,1554) = lu(k,1554) - lu(k,1440) * lu(k,1553) + lu(k,1555) = lu(k,1555) - lu(k,1441) * lu(k,1553) + lu(k,1556) = lu(k,1556) - lu(k,1442) * lu(k,1553) + lu(k,1557) = lu(k,1557) - lu(k,1443) * lu(k,1553) + lu(k,1581) = lu(k,1581) - lu(k,1440) * lu(k,1580) + lu(k,1582) = lu(k,1582) - lu(k,1441) * lu(k,1580) + lu(k,1583) = lu(k,1583) - lu(k,1442) * lu(k,1580) + lu(k,1584) = lu(k,1584) - lu(k,1443) * lu(k,1580) + lu(k,1485) = 1._r8 / lu(k,1485) + lu(k,1486) = lu(k,1486) * lu(k,1485) + lu(k,1487) = lu(k,1487) * lu(k,1485) + lu(k,1488) = lu(k,1488) * lu(k,1485) + lu(k,1509) = lu(k,1509) - lu(k,1486) * lu(k,1508) + lu(k,1510) = lu(k,1510) - lu(k,1487) * lu(k,1508) + lu(k,1511) = lu(k,1511) - lu(k,1488) * lu(k,1508) + lu(k,1555) = lu(k,1555) - lu(k,1486) * lu(k,1554) + lu(k,1556) = lu(k,1556) - lu(k,1487) * lu(k,1554) + lu(k,1557) = lu(k,1557) - lu(k,1488) * lu(k,1554) + lu(k,1582) = lu(k,1582) - lu(k,1486) * lu(k,1581) + lu(k,1583) = lu(k,1583) - lu(k,1487) * lu(k,1581) + lu(k,1584) = lu(k,1584) - lu(k,1488) * lu(k,1581) + lu(k,1509) = 1._r8 / lu(k,1509) + lu(k,1510) = lu(k,1510) * lu(k,1509) + lu(k,1511) = lu(k,1511) * lu(k,1509) + lu(k,1556) = lu(k,1556) - lu(k,1510) * lu(k,1555) + lu(k,1557) = lu(k,1557) - lu(k,1511) * lu(k,1555) + lu(k,1583) = lu(k,1583) - lu(k,1510) * lu(k,1582) + lu(k,1584) = lu(k,1584) - lu(k,1511) * lu(k,1582) lu(k,1556) = 1._r8 / lu(k,1556) lu(k,1557) = lu(k,1557) * lu(k,1556) lu(k,1584) = lu(k,1584) - lu(k,1557) * lu(k,1583) diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_solve.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_solve.F90 index 161b807ef5..a2834bd996 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_solve.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_lu_solve.F90 @@ -21,207 +21,207 @@ subroutine lu_slv01( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,27) = b(k,27) - lu(k,27) * b(k,26) - b(k,134) = b(k,134) - lu(k,30) * b(k,28) - b(k,143) = b(k,143) - lu(k,31) * b(k,28) - b(k,102) = b(k,102) - lu(k,33) * b(k,29) - b(k,144) = b(k,144) - lu(k,34) * b(k,29) - b(k,144) = b(k,144) - lu(k,36) * b(k,30) - b(k,149) = b(k,149) - lu(k,37) * b(k,30) - b(k,142) = b(k,142) - lu(k,39) * b(k,31) - b(k,143) = b(k,143) - lu(k,40) * b(k,31) - b(k,48) = b(k,48) - lu(k,42) * b(k,32) - b(k,131) = b(k,131) - lu(k,43) * b(k,32) - b(k,142) = b(k,142) - lu(k,44) * b(k,32) - b(k,143) = b(k,143) - lu(k,46) * b(k,33) - b(k,144) = b(k,144) - lu(k,47) * b(k,33) - b(k,149) = b(k,149) - lu(k,48) * b(k,33) - b(k,102) = b(k,102) - lu(k,50) * b(k,34) - b(k,144) = b(k,144) - lu(k,51) * b(k,34) - b(k,149) = b(k,149) - lu(k,52) * b(k,34) - b(k,51) = b(k,51) - lu(k,54) * b(k,35) - b(k,142) = b(k,142) - lu(k,55) * b(k,35) - b(k,143) = b(k,143) - lu(k,56) * b(k,35) - b(k,48) = b(k,48) - lu(k,58) * b(k,36) - b(k,142) = b(k,142) - lu(k,59) * b(k,36) - b(k,143) = b(k,143) - lu(k,60) * b(k,36) - b(k,48) = b(k,48) - lu(k,62) * b(k,37) - b(k,142) = b(k,142) - lu(k,63) * b(k,37) - b(k,143) = b(k,143) - lu(k,64) * b(k,37) - b(k,72) = b(k,72) - lu(k,66) * b(k,38) - b(k,144) = b(k,144) - lu(k,67) * b(k,38) - b(k,55) = b(k,55) - lu(k,69) * b(k,39) - b(k,149) = b(k,149) - lu(k,70) * b(k,39) - b(k,48) = b(k,48) - lu(k,72) * b(k,40) - b(k,131) = b(k,131) - lu(k,73) * b(k,40) - b(k,142) = b(k,142) - lu(k,74) * b(k,40) - b(k,143) = b(k,143) - lu(k,75) * b(k,40) - b(k,48) = b(k,48) - lu(k,77) * b(k,41) - b(k,104) = b(k,104) - lu(k,78) * b(k,41) - b(k,131) = b(k,131) - lu(k,79) * b(k,41) - b(k,142) = b(k,142) - lu(k,80) * b(k,41) - b(k,48) = b(k,48) - lu(k,82) * b(k,42) - b(k,51) = b(k,51) - lu(k,83) * b(k,42) - b(k,142) = b(k,142) - lu(k,84) * b(k,42) - b(k,143) = b(k,143) - lu(k,85) * b(k,42) - b(k,48) = b(k,48) - lu(k,87) * b(k,43) - b(k,104) = b(k,104) - lu(k,88) * b(k,43) - b(k,142) = b(k,142) - lu(k,89) * b(k,43) - b(k,143) = b(k,143) - lu(k,90) * b(k,43) - b(k,143) = b(k,143) - lu(k,92) * b(k,44) - b(k,132) = b(k,132) - lu(k,94) * b(k,45) - b(k,132) = b(k,132) - lu(k,97) * b(k,46) - b(k,120) = b(k,120) - lu(k,99) * b(k,47) - b(k,144) = b(k,144) - lu(k,100) * b(k,47) - b(k,104) = b(k,104) - lu(k,102) * b(k,48) - b(k,142) = b(k,142) - lu(k,103) * b(k,48) - b(k,131) = b(k,131) - lu(k,105) * b(k,49) - b(k,143) = b(k,143) - lu(k,106) * b(k,49) - b(k,51) = b(k,51) - lu(k,108) * b(k,50) + b(k,28) = b(k,28) - lu(k,28) * b(k,27) + b(k,142) = b(k,142) - lu(k,31) * b(k,29) + b(k,143) = b(k,143) - lu(k,32) * b(k,29) + b(k,103) = b(k,103) - lu(k,34) * b(k,30) + b(k,141) = b(k,141) - lu(k,35) * b(k,30) + b(k,141) = b(k,141) - lu(k,37) * b(k,31) + b(k,150) = b(k,150) - lu(k,38) * b(k,31) + b(k,140) = b(k,140) - lu(k,40) * b(k,32) + b(k,142) = b(k,142) - lu(k,41) * b(k,32) + b(k,53) = b(k,53) - lu(k,43) * b(k,33) + b(k,132) = b(k,132) - lu(k,44) * b(k,33) + b(k,140) = b(k,140) - lu(k,45) * b(k,33) + b(k,103) = b(k,103) - lu(k,47) * b(k,34) + b(k,141) = b(k,141) - lu(k,48) * b(k,34) + b(k,150) = b(k,150) - lu(k,49) * b(k,34) + b(k,51) = b(k,51) - lu(k,51) * b(k,35) + b(k,140) = b(k,140) - lu(k,52) * b(k,35) + b(k,142) = b(k,142) - lu(k,53) * b(k,35) + b(k,53) = b(k,53) - lu(k,55) * b(k,36) + b(k,140) = b(k,140) - lu(k,56) * b(k,36) + b(k,142) = b(k,142) - lu(k,57) * b(k,36) + b(k,53) = b(k,53) - lu(k,59) * b(k,37) + b(k,140) = b(k,140) - lu(k,60) * b(k,37) + b(k,142) = b(k,142) - lu(k,61) * b(k,37) + b(k,141) = b(k,141) - lu(k,63) * b(k,38) + b(k,142) = b(k,142) - lu(k,64) * b(k,38) + b(k,150) = b(k,150) - lu(k,65) * b(k,38) + b(k,73) = b(k,73) - lu(k,67) * b(k,39) + b(k,141) = b(k,141) - lu(k,68) * b(k,39) + b(k,56) = b(k,56) - lu(k,70) * b(k,40) + b(k,150) = b(k,150) - lu(k,71) * b(k,40) + b(k,53) = b(k,53) - lu(k,73) * b(k,41) + b(k,132) = b(k,132) - lu(k,74) * b(k,41) + b(k,140) = b(k,140) - lu(k,75) * b(k,41) + b(k,142) = b(k,142) - lu(k,76) * b(k,41) + b(k,53) = b(k,53) - lu(k,78) * b(k,42) + b(k,105) = b(k,105) - lu(k,79) * b(k,42) + b(k,132) = b(k,132) - lu(k,80) * b(k,42) + b(k,140) = b(k,140) - lu(k,81) * b(k,42) + b(k,51) = b(k,51) - lu(k,83) * b(k,43) + b(k,53) = b(k,53) - lu(k,84) * b(k,43) + b(k,140) = b(k,140) - lu(k,85) * b(k,43) + b(k,142) = b(k,142) - lu(k,86) * b(k,43) + b(k,53) = b(k,53) - lu(k,88) * b(k,44) + b(k,105) = b(k,105) - lu(k,89) * b(k,44) + b(k,140) = b(k,140) - lu(k,90) * b(k,44) + b(k,142) = b(k,142) - lu(k,91) * b(k,44) + b(k,142) = b(k,142) - lu(k,93) * b(k,45) + b(k,133) = b(k,133) - lu(k,95) * b(k,46) + b(k,133) = b(k,133) - lu(k,98) * b(k,47) + b(k,121) = b(k,121) - lu(k,100) * b(k,48) + b(k,141) = b(k,141) - lu(k,101) * b(k,48) + b(k,132) = b(k,132) - lu(k,103) * b(k,49) + b(k,142) = b(k,142) - lu(k,104) * b(k,49) + b(k,51) = b(k,51) - lu(k,106) * b(k,50) + b(k,140) = b(k,140) - lu(k,107) * b(k,50) + b(k,141) = b(k,141) - lu(k,108) * b(k,50) b(k,142) = b(k,142) - lu(k,109) * b(k,50) - b(k,143) = b(k,143) - lu(k,110) * b(k,50) - b(k,144) = b(k,144) - lu(k,111) * b(k,50) - b(k,104) = b(k,104) - lu(k,113) * b(k,51) - b(k,142) = b(k,142) - lu(k,114) * b(k,51) - b(k,143) = b(k,143) - lu(k,115) * b(k,51) - b(k,104) = b(k,104) - lu(k,118) * b(k,52) - b(k,142) = b(k,142) - lu(k,119) * b(k,52) - b(k,143) = b(k,143) - lu(k,120) * b(k,52) - b(k,144) = b(k,144) - lu(k,121) * b(k,52) - b(k,132) = b(k,132) - lu(k,123) * b(k,53) - b(k,142) = b(k,142) - lu(k,124) * b(k,53) - b(k,146) = b(k,146) - lu(k,125) * b(k,53) - b(k,117) = b(k,117) - lu(k,127) * b(k,54) - b(k,137) = b(k,137) - lu(k,128) * b(k,54) - b(k,144) = b(k,144) - lu(k,129) * b(k,54) - b(k,109) = b(k,109) - lu(k,132) * b(k,55) - b(k,145) = b(k,145) - lu(k,133) * b(k,55) - b(k,149) = b(k,149) - lu(k,134) * b(k,55) - b(k,109) = b(k,109) - lu(k,136) * b(k,56) - b(k,137) = b(k,137) - lu(k,137) * b(k,56) - b(k,139) = b(k,139) - lu(k,138) * b(k,56) - b(k,141) = b(k,141) - lu(k,139) * b(k,56) - b(k,144) = b(k,144) - lu(k,140) * b(k,56) - b(k,104) = b(k,104) - lu(k,143) * b(k,57) - b(k,142) = b(k,142) - lu(k,144) * b(k,57) - b(k,143) = b(k,143) - lu(k,145) * b(k,57) - b(k,144) = b(k,144) - lu(k,146) * b(k,57) - b(k,149) = b(k,149) - lu(k,147) * b(k,57) - b(k,104) = b(k,104) - lu(k,149) * b(k,58) - b(k,148) = b(k,148) - lu(k,150) * b(k,58) - b(k,135) = b(k,135) - lu(k,152) * b(k,59) - b(k,139) = b(k,139) - lu(k,153) * b(k,59) - b(k,141) = b(k,141) - lu(k,154) * b(k,59) - b(k,145) = b(k,145) - lu(k,155) * b(k,59) - b(k,146) = b(k,146) - lu(k,156) * b(k,59) - b(k,98) = b(k,98) - lu(k,158) * b(k,60) - b(k,130) = b(k,130) - lu(k,159) * b(k,60) - b(k,143) = b(k,143) - lu(k,160) * b(k,60) - b(k,144) = b(k,144) - lu(k,161) * b(k,60) - b(k,149) = b(k,149) - lu(k,162) * b(k,60) - b(k,123) = b(k,123) - lu(k,164) * b(k,61) - b(k,125) = b(k,125) - lu(k,165) * b(k,61) - b(k,137) = b(k,137) - lu(k,166) * b(k,61) - b(k,144) = b(k,144) - lu(k,167) * b(k,61) - b(k,98) = b(k,98) - lu(k,169) * b(k,62) - b(k,117) = b(k,117) - lu(k,170) * b(k,62) - b(k,137) = b(k,137) - lu(k,171) * b(k,62) - b(k,144) = b(k,144) - lu(k,172) * b(k,62) - b(k,109) = b(k,109) - lu(k,174) * b(k,63) - b(k,129) = b(k,129) - lu(k,175) * b(k,63) - b(k,134) = b(k,134) - lu(k,176) * b(k,63) - b(k,145) = b(k,145) - lu(k,177) * b(k,63) - b(k,120) = b(k,120) - lu(k,179) * b(k,64) - b(k,144) = b(k,144) - lu(k,180) * b(k,64) - b(k,90) = b(k,90) - lu(k,182) * b(k,65) - b(k,109) = b(k,109) - lu(k,183) * b(k,65) - b(k,118) = b(k,118) - lu(k,184) * b(k,65) - b(k,129) = b(k,129) - lu(k,185) * b(k,65) - b(k,144) = b(k,144) - lu(k,186) * b(k,65) - b(k,145) = b(k,145) - lu(k,187) * b(k,65) - b(k,148) = b(k,148) - lu(k,188) * b(k,65) - b(k,118) = b(k,118) - lu(k,190) * b(k,66) - b(k,130) = b(k,130) - lu(k,191) * b(k,66) - b(k,137) = b(k,137) - lu(k,192) * b(k,66) - b(k,140) = b(k,140) - lu(k,193) * b(k,66) - b(k,143) = b(k,143) - lu(k,194) * b(k,66) - b(k,144) = b(k,144) - lu(k,195) * b(k,66) - b(k,149) = b(k,149) - lu(k,196) * b(k,66) - b(k,121) = b(k,121) - lu(k,198) * b(k,67) - b(k,126) = b(k,126) - lu(k,199) * b(k,67) - b(k,135) = b(k,135) - lu(k,200) * b(k,67) - b(k,136) = b(k,136) - lu(k,201) * b(k,67) - b(k,144) = b(k,144) - lu(k,202) * b(k,67) - b(k,95) = b(k,95) - lu(k,204) * b(k,68) - b(k,102) = b(k,102) - lu(k,205) * b(k,68) - b(k,137) = b(k,137) - lu(k,206) * b(k,68) - b(k,144) = b(k,144) - lu(k,207) * b(k,68) - b(k,149) = b(k,149) - lu(k,208) * b(k,68) - b(k,136) = b(k,136) - lu(k,210) * b(k,69) - b(k,140) = b(k,140) - lu(k,211) * b(k,69) - b(k,144) = b(k,144) - lu(k,212) * b(k,69) - b(k,148) = b(k,148) - lu(k,213) * b(k,69) - b(k,149) = b(k,149) - lu(k,214) * b(k,69) - b(k,113) = b(k,113) - lu(k,216) * b(k,70) - b(k,126) = b(k,126) - lu(k,217) * b(k,70) - b(k,136) = b(k,136) - lu(k,218) * b(k,70) - b(k,144) = b(k,144) - lu(k,219) * b(k,70) - b(k,149) = b(k,149) - lu(k,220) * b(k,70) - b(k,130) = b(k,130) - lu(k,222) * b(k,71) - b(k,131) = b(k,131) - lu(k,223) * b(k,71) - b(k,142) = b(k,142) - lu(k,224) * b(k,71) - b(k,143) = b(k,143) - lu(k,225) * b(k,71) - b(k,144) = b(k,144) - lu(k,226) * b(k,71) - b(k,114) = b(k,114) - lu(k,228) * b(k,72) - b(k,132) = b(k,132) - lu(k,229) * b(k,72) - b(k,136) = b(k,136) - lu(k,230) * b(k,72) - b(k,137) = b(k,137) - lu(k,231) * b(k,72) - b(k,132) = b(k,132) - lu(k,233) * b(k,73) - b(k,135) = b(k,135) - lu(k,234) * b(k,73) - b(k,137) = b(k,137) - lu(k,235) * b(k,73) - b(k,141) = b(k,141) - lu(k,236) * b(k,73) - b(k,144) = b(k,144) - lu(k,237) * b(k,73) - b(k,149) = b(k,149) - lu(k,238) * b(k,73) - b(k,93) = b(k,93) - lu(k,240) * b(k,74) - b(k,118) = b(k,118) - lu(k,241) * b(k,74) - b(k,136) = b(k,136) - lu(k,242) * b(k,74) - b(k,137) = b(k,137) - lu(k,243) * b(k,74) - b(k,138) = b(k,138) - lu(k,244) * b(k,74) - b(k,144) = b(k,144) - lu(k,245) * b(k,74) - b(k,130) = b(k,130) - lu(k,247) * b(k,75) - b(k,131) = b(k,131) - lu(k,248) * b(k,75) - b(k,142) = b(k,142) - lu(k,249) * b(k,75) - b(k,143) = b(k,143) - lu(k,250) * b(k,75) - b(k,144) = b(k,144) - lu(k,251) * b(k,75) - b(k,149) = b(k,149) - lu(k,252) * b(k,75) - b(k,77) = b(k,77) - lu(k,254) * b(k,76) - b(k,87) = b(k,87) - lu(k,255) * b(k,76) - b(k,100) = b(k,100) - lu(k,256) * b(k,76) - b(k,105) = b(k,105) - lu(k,257) * b(k,76) - b(k,145) = b(k,145) - lu(k,258) * b(k,76) - b(k,146) = b(k,146) - lu(k,259) * b(k,76) - b(k,87) = b(k,87) - lu(k,261) * b(k,77) - b(k,105) = b(k,105) - lu(k,262) * b(k,77) - b(k,106) = b(k,106) - lu(k,263) * b(k,77) - b(k,132) = b(k,132) - lu(k,264) * b(k,77) - b(k,145) = b(k,145) - lu(k,265) * b(k,77) - b(k,119) = b(k,119) - lu(k,267) * b(k,78) - b(k,120) = b(k,120) - lu(k,268) * b(k,78) - b(k,122) = b(k,122) - lu(k,269) * b(k,78) - b(k,124) = b(k,124) - lu(k,270) * b(k,78) - b(k,136) = b(k,136) - lu(k,271) * b(k,78) - b(k,137) = b(k,137) - lu(k,272) * b(k,78) - b(k,144) = b(k,144) - lu(k,273) * b(k,78) - b(k,126) = b(k,126) - lu(k,275) * b(k,79) - b(k,127) = b(k,127) - lu(k,276) * b(k,79) - b(k,135) = b(k,135) - lu(k,277) * b(k,79) - b(k,136) = b(k,136) - lu(k,278) * b(k,79) - b(k,140) = b(k,140) - lu(k,279) * b(k,79) - b(k,141) = b(k,141) - lu(k,280) * b(k,79) - b(k,144) = b(k,144) - lu(k,281) * b(k,79) - b(k,136) = b(k,136) - lu(k,283) * b(k,80) - b(k,137) = b(k,137) - lu(k,284) * b(k,80) - b(k,144) = b(k,144) - lu(k,285) * b(k,80) + b(k,105) = b(k,105) - lu(k,111) * b(k,51) + b(k,140) = b(k,140) - lu(k,112) * b(k,51) + b(k,142) = b(k,142) - lu(k,113) * b(k,51) + b(k,53) = b(k,53) - lu(k,115) * b(k,52) + b(k,140) = b(k,140) - lu(k,116) * b(k,52) + b(k,141) = b(k,141) - lu(k,117) * b(k,52) + b(k,142) = b(k,142) - lu(k,118) * b(k,52) + b(k,105) = b(k,105) - lu(k,120) * b(k,53) + b(k,140) = b(k,140) - lu(k,121) * b(k,53) + b(k,133) = b(k,133) - lu(k,123) * b(k,54) + b(k,139) = b(k,139) - lu(k,124) * b(k,54) + b(k,140) = b(k,140) - lu(k,125) * b(k,54) + b(k,118) = b(k,118) - lu(k,127) * b(k,55) + b(k,141) = b(k,141) - lu(k,128) * b(k,55) + b(k,145) = b(k,145) - lu(k,129) * b(k,55) + b(k,110) = b(k,110) - lu(k,132) * b(k,56) + b(k,147) = b(k,147) - lu(k,133) * b(k,56) + b(k,150) = b(k,150) - lu(k,134) * b(k,56) + b(k,110) = b(k,110) - lu(k,136) * b(k,57) + b(k,136) = b(k,136) - lu(k,137) * b(k,57) + b(k,141) = b(k,141) - lu(k,138) * b(k,57) + b(k,145) = b(k,145) - lu(k,139) * b(k,57) + b(k,148) = b(k,148) - lu(k,140) * b(k,57) + b(k,105) = b(k,105) - lu(k,143) * b(k,58) + b(k,140) = b(k,140) - lu(k,144) * b(k,58) + b(k,141) = b(k,141) - lu(k,145) * b(k,58) + b(k,142) = b(k,142) - lu(k,146) * b(k,58) + b(k,150) = b(k,150) - lu(k,147) * b(k,58) + b(k,105) = b(k,105) - lu(k,149) * b(k,59) + b(k,137) = b(k,137) - lu(k,150) * b(k,59) + b(k,136) = b(k,136) - lu(k,152) * b(k,60) + b(k,138) = b(k,138) - lu(k,153) * b(k,60) + b(k,139) = b(k,139) - lu(k,154) * b(k,60) + b(k,147) = b(k,147) - lu(k,155) * b(k,60) + b(k,148) = b(k,148) - lu(k,156) * b(k,60) + b(k,99) = b(k,99) - lu(k,158) * b(k,61) + b(k,131) = b(k,131) - lu(k,159) * b(k,61) + b(k,141) = b(k,141) - lu(k,160) * b(k,61) + b(k,142) = b(k,142) - lu(k,161) * b(k,61) + b(k,150) = b(k,150) - lu(k,162) * b(k,61) + b(k,124) = b(k,124) - lu(k,164) * b(k,62) + b(k,126) = b(k,126) - lu(k,165) * b(k,62) + b(k,141) = b(k,141) - lu(k,166) * b(k,62) + b(k,145) = b(k,145) - lu(k,167) * b(k,62) + b(k,99) = b(k,99) - lu(k,169) * b(k,63) + b(k,118) = b(k,118) - lu(k,170) * b(k,63) + b(k,141) = b(k,141) - lu(k,171) * b(k,63) + b(k,145) = b(k,145) - lu(k,172) * b(k,63) + b(k,110) = b(k,110) - lu(k,174) * b(k,64) + b(k,130) = b(k,130) - lu(k,175) * b(k,64) + b(k,143) = b(k,143) - lu(k,176) * b(k,64) + b(k,147) = b(k,147) - lu(k,177) * b(k,64) + b(k,121) = b(k,121) - lu(k,179) * b(k,65) + b(k,141) = b(k,141) - lu(k,180) * b(k,65) + b(k,119) = b(k,119) - lu(k,182) * b(k,66) + b(k,131) = b(k,131) - lu(k,183) * b(k,66) + b(k,135) = b(k,135) - lu(k,184) * b(k,66) + b(k,141) = b(k,141) - lu(k,185) * b(k,66) + b(k,142) = b(k,142) - lu(k,186) * b(k,66) + b(k,145) = b(k,145) - lu(k,187) * b(k,66) + b(k,150) = b(k,150) - lu(k,188) * b(k,66) + b(k,91) = b(k,91) - lu(k,190) * b(k,67) + b(k,110) = b(k,110) - lu(k,191) * b(k,67) + b(k,119) = b(k,119) - lu(k,192) * b(k,67) + b(k,130) = b(k,130) - lu(k,193) * b(k,67) + b(k,137) = b(k,137) - lu(k,194) * b(k,67) + b(k,141) = b(k,141) - lu(k,195) * b(k,67) + b(k,147) = b(k,147) - lu(k,196) * b(k,67) + b(k,122) = b(k,122) - lu(k,198) * b(k,68) + b(k,127) = b(k,127) - lu(k,199) * b(k,68) + b(k,138) = b(k,138) - lu(k,200) * b(k,68) + b(k,141) = b(k,141) - lu(k,201) * b(k,68) + b(k,146) = b(k,146) - lu(k,202) * b(k,68) + b(k,94) = b(k,94) - lu(k,204) * b(k,69) + b(k,103) = b(k,103) - lu(k,205) * b(k,69) + b(k,141) = b(k,141) - lu(k,206) * b(k,69) + b(k,145) = b(k,145) - lu(k,207) * b(k,69) + b(k,150) = b(k,150) - lu(k,208) * b(k,69) + b(k,115) = b(k,115) - lu(k,210) * b(k,70) + b(k,127) = b(k,127) - lu(k,211) * b(k,70) + b(k,141) = b(k,141) - lu(k,212) * b(k,70) + b(k,146) = b(k,146) - lu(k,213) * b(k,70) + b(k,150) = b(k,150) - lu(k,214) * b(k,70) + b(k,135) = b(k,135) - lu(k,216) * b(k,71) + b(k,137) = b(k,137) - lu(k,217) * b(k,71) + b(k,141) = b(k,141) - lu(k,218) * b(k,71) + b(k,146) = b(k,146) - lu(k,219) * b(k,71) + b(k,150) = b(k,150) - lu(k,220) * b(k,71) + b(k,131) = b(k,131) - lu(k,222) * b(k,72) + b(k,132) = b(k,132) - lu(k,223) * b(k,72) + b(k,140) = b(k,140) - lu(k,224) * b(k,72) + b(k,141) = b(k,141) - lu(k,225) * b(k,72) + b(k,142) = b(k,142) - lu(k,226) * b(k,72) + b(k,114) = b(k,114) - lu(k,228) * b(k,73) + b(k,133) = b(k,133) - lu(k,229) * b(k,73) + b(k,145) = b(k,145) - lu(k,230) * b(k,73) + b(k,146) = b(k,146) - lu(k,231) * b(k,73) + b(k,96) = b(k,96) - lu(k,233) * b(k,74) + b(k,119) = b(k,119) - lu(k,234) * b(k,74) + b(k,141) = b(k,141) - lu(k,235) * b(k,74) + b(k,145) = b(k,145) - lu(k,236) * b(k,74) + b(k,146) = b(k,146) - lu(k,237) * b(k,74) + b(k,149) = b(k,149) - lu(k,238) * b(k,74) + b(k,133) = b(k,133) - lu(k,240) * b(k,75) + b(k,136) = b(k,136) - lu(k,241) * b(k,75) + b(k,138) = b(k,138) - lu(k,242) * b(k,75) + b(k,141) = b(k,141) - lu(k,243) * b(k,75) + b(k,145) = b(k,145) - lu(k,244) * b(k,75) + b(k,150) = b(k,150) - lu(k,245) * b(k,75) + b(k,131) = b(k,131) - lu(k,247) * b(k,76) + b(k,132) = b(k,132) - lu(k,248) * b(k,76) + b(k,140) = b(k,140) - lu(k,249) * b(k,76) + b(k,141) = b(k,141) - lu(k,250) * b(k,76) + b(k,142) = b(k,142) - lu(k,251) * b(k,76) + b(k,150) = b(k,150) - lu(k,252) * b(k,76) + b(k,78) = b(k,78) - lu(k,254) * b(k,77) + b(k,88) = b(k,88) - lu(k,255) * b(k,77) + b(k,101) = b(k,101) - lu(k,256) * b(k,77) + b(k,106) = b(k,106) - lu(k,257) * b(k,77) + b(k,139) = b(k,139) - lu(k,258) * b(k,77) + b(k,147) = b(k,147) - lu(k,259) * b(k,77) + b(k,88) = b(k,88) - lu(k,261) * b(k,78) + b(k,106) = b(k,106) - lu(k,262) * b(k,78) + b(k,107) = b(k,107) - lu(k,263) * b(k,78) + b(k,133) = b(k,133) - lu(k,264) * b(k,78) + b(k,147) = b(k,147) - lu(k,265) * b(k,78) + b(k,95) = b(k,95) - lu(k,267) * b(k,79) + b(k,132) = b(k,132) - lu(k,268) * b(k,79) + b(k,136) = b(k,136) - lu(k,269) * b(k,79) + b(k,138) = b(k,138) - lu(k,270) * b(k,79) + b(k,144) = b(k,144) - lu(k,271) * b(k,79) + b(k,147) = b(k,147) - lu(k,272) * b(k,79) + b(k,148) = b(k,148) - lu(k,273) * b(k,79) + b(k,127) = b(k,127) - lu(k,275) * b(k,80) + b(k,128) = b(k,128) - lu(k,276) * b(k,80) + b(k,135) = b(k,135) - lu(k,277) * b(k,80) + b(k,136) = b(k,136) - lu(k,278) * b(k,80) + b(k,138) = b(k,138) - lu(k,279) * b(k,80) + b(k,141) = b(k,141) - lu(k,280) * b(k,80) + b(k,146) = b(k,146) - lu(k,281) * b(k,80) + b(k,141) = b(k,141) - lu(k,283) * b(k,81) + b(k,145) = b(k,145) - lu(k,284) * b(k,81) + b(k,146) = b(k,146) - lu(k,285) * b(k,81) end do end subroutine lu_slv01 subroutine lu_slv02( avec_len, lu, b ) @@ -242,212 +242,212 @@ subroutine lu_slv02( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,96) = b(k,96) - lu(k,287) * b(k,81) - b(k,115) = b(k,115) - lu(k,288) * b(k,81) - b(k,117) = b(k,117) - lu(k,289) * b(k,81) - b(k,136) = b(k,136) - lu(k,290) * b(k,81) - b(k,137) = b(k,137) - lu(k,291) * b(k,81) - b(k,144) = b(k,144) - lu(k,292) * b(k,81) - b(k,149) = b(k,149) - lu(k,293) * b(k,81) - b(k,94) = b(k,94) - lu(k,295) * b(k,82) - b(k,131) = b(k,131) - lu(k,296) * b(k,82) - b(k,133) = b(k,133) - lu(k,297) * b(k,82) - b(k,135) = b(k,135) - lu(k,298) * b(k,82) - b(k,139) = b(k,139) - lu(k,299) * b(k,82) - b(k,141) = b(k,141) - lu(k,300) * b(k,82) - b(k,145) = b(k,145) - lu(k,301) * b(k,82) - b(k,115) = b(k,115) - lu(k,303) * b(k,83) - b(k,125) = b(k,125) - lu(k,304) * b(k,83) - b(k,127) = b(k,127) - lu(k,305) * b(k,83) - b(k,135) = b(k,135) - lu(k,306) * b(k,83) - b(k,136) = b(k,136) - lu(k,307) * b(k,83) - b(k,137) = b(k,137) - lu(k,308) * b(k,83) - b(k,141) = b(k,141) - lu(k,309) * b(k,83) - b(k,144) = b(k,144) - lu(k,310) * b(k,83) - b(k,130) = b(k,130) - lu(k,312) * b(k,84) - b(k,137) = b(k,137) - lu(k,313) * b(k,84) - b(k,143) = b(k,143) - lu(k,314) * b(k,84) - b(k,144) = b(k,144) - lu(k,315) * b(k,84) - b(k,145) = b(k,145) - lu(k,316) * b(k,84) - b(k,149) = b(k,149) - lu(k,317) * b(k,84) - b(k,126) = b(k,126) - lu(k,319) * b(k,85) - b(k,127) = b(k,127) - lu(k,320) * b(k,85) - b(k,136) = b(k,136) - lu(k,321) * b(k,85) - b(k,140) = b(k,140) - lu(k,322) * b(k,85) - b(k,144) = b(k,144) - lu(k,323) * b(k,85) - b(k,149) = b(k,149) - lu(k,324) * b(k,85) - b(k,130) = b(k,130) - lu(k,326) * b(k,86) - b(k,131) = b(k,131) - lu(k,327) * b(k,86) - b(k,137) = b(k,137) - lu(k,328) * b(k,86) - b(k,140) = b(k,140) - lu(k,329) * b(k,86) - b(k,142) = b(k,142) - lu(k,330) * b(k,86) - b(k,143) = b(k,143) - lu(k,331) * b(k,86) - b(k,144) = b(k,144) - lu(k,332) * b(k,86) - b(k,149) = b(k,149) - lu(k,333) * b(k,86) - b(k,92) = b(k,92) - lu(k,335) * b(k,87) - b(k,105) = b(k,105) - lu(k,336) * b(k,87) - b(k,106) = b(k,106) - lu(k,337) * b(k,87) - b(k,107) = b(k,107) - lu(k,338) * b(k,87) - b(k,108) = b(k,108) - lu(k,339) * b(k,87) - b(k,110) = b(k,110) - lu(k,340) * b(k,87) - b(k,132) = b(k,132) - lu(k,341) * b(k,87) - b(k,145) = b(k,145) - lu(k,342) * b(k,87) - b(k,95) = b(k,95) - lu(k,344) * b(k,88) - b(k,119) = b(k,119) - lu(k,345) * b(k,88) - b(k,122) = b(k,122) - lu(k,346) * b(k,88) - b(k,124) = b(k,124) - lu(k,347) * b(k,88) - b(k,135) = b(k,135) - lu(k,348) * b(k,88) - b(k,138) = b(k,138) - lu(k,349) * b(k,88) - b(k,141) = b(k,141) - lu(k,350) * b(k,88) - b(k,144) = b(k,144) - lu(k,351) * b(k,88) - b(k,145) = b(k,145) - lu(k,352) * b(k,88) - b(k,127) = b(k,127) - lu(k,354) * b(k,89) - b(k,140) = b(k,140) - lu(k,355) * b(k,89) - b(k,144) = b(k,144) - lu(k,356) * b(k,89) - b(k,149) = b(k,149) - lu(k,357) * b(k,89) - b(k,129) = b(k,129) - lu(k,359) * b(k,90) - b(k,132) = b(k,132) - lu(k,360) * b(k,90) - b(k,138) = b(k,138) - lu(k,361) * b(k,90) - b(k,144) = b(k,144) - lu(k,362) * b(k,90) - b(k,145) = b(k,145) - lu(k,363) * b(k,90) - b(k,148) = b(k,148) - lu(k,364) * b(k,90) - b(k,118) = b(k,118) - lu(k,366) * b(k,91) - b(k,127) = b(k,127) - lu(k,367) * b(k,91) - b(k,137) = b(k,137) - lu(k,368) * b(k,91) - b(k,144) = b(k,144) - lu(k,369) * b(k,91) - b(k,107) = b(k,107) - lu(k,371) * b(k,92) - b(k,108) = b(k,108) - lu(k,372) * b(k,92) - b(k,110) = b(k,110) - lu(k,373) * b(k,92) - b(k,145) = b(k,145) - lu(k,374) * b(k,92) - b(k,114) = b(k,114) - lu(k,378) * b(k,93) - b(k,132) = b(k,132) - lu(k,379) * b(k,93) - b(k,135) = b(k,135) - lu(k,380) * b(k,93) - b(k,136) = b(k,136) - lu(k,381) * b(k,93) - b(k,137) = b(k,137) - lu(k,382) * b(k,93) - b(k,144) = b(k,144) - lu(k,383) * b(k,93) - b(k,146) = b(k,146) - lu(k,384) * b(k,93) - b(k,130) = b(k,130) - lu(k,387) * b(k,94) - b(k,131) = b(k,131) - lu(k,388) * b(k,94) - b(k,133) = b(k,133) - lu(k,389) * b(k,94) - b(k,143) = b(k,143) - lu(k,390) * b(k,94) - b(k,144) = b(k,144) - lu(k,391) * b(k,94) - b(k,145) = b(k,145) - lu(k,392) * b(k,94) - b(k,149) = b(k,149) - lu(k,393) * b(k,94) - b(k,113) = b(k,113) - lu(k,395) * b(k,95) - b(k,126) = b(k,126) - lu(k,396) * b(k,95) - b(k,140) = b(k,140) - lu(k,397) * b(k,95) - b(k,144) = b(k,144) - lu(k,398) * b(k,95) - b(k,149) = b(k,149) - lu(k,399) * b(k,95) - b(k,115) = b(k,115) - lu(k,402) * b(k,96) - b(k,117) = b(k,117) - lu(k,403) * b(k,96) - b(k,132) = b(k,132) - lu(k,404) * b(k,96) - b(k,135) = b(k,135) - lu(k,405) * b(k,96) - b(k,136) = b(k,136) - lu(k,406) * b(k,96) - b(k,137) = b(k,137) - lu(k,407) * b(k,96) - b(k,144) = b(k,144) - lu(k,408) * b(k,96) - b(k,146) = b(k,146) - lu(k,409) * b(k,96) - b(k,149) = b(k,149) - lu(k,410) * b(k,96) - b(k,112) = b(k,112) - lu(k,412) * b(k,97) - b(k,119) = b(k,119) - lu(k,413) * b(k,97) - b(k,124) = b(k,124) - lu(k,414) * b(k,97) - b(k,135) = b(k,135) - lu(k,415) * b(k,97) - b(k,136) = b(k,136) - lu(k,416) * b(k,97) - b(k,137) = b(k,137) - lu(k,417) * b(k,97) - b(k,141) = b(k,141) - lu(k,418) * b(k,97) - b(k,144) = b(k,144) - lu(k,419) * b(k,97) - b(k,146) = b(k,146) - lu(k,420) * b(k,97) - b(k,117) = b(k,117) - lu(k,425) * b(k,98) - b(k,132) = b(k,132) - lu(k,426) * b(k,98) - b(k,135) = b(k,135) - lu(k,427) * b(k,98) - b(k,136) = b(k,136) - lu(k,428) * b(k,98) - b(k,137) = b(k,137) - lu(k,429) * b(k,98) - b(k,140) = b(k,140) - lu(k,430) * b(k,98) - b(k,144) = b(k,144) - lu(k,431) * b(k,98) - b(k,146) = b(k,146) - lu(k,432) * b(k,98) - b(k,131) = b(k,131) - lu(k,434) * b(k,99) - b(k,133) = b(k,133) - lu(k,435) * b(k,99) - b(k,142) = b(k,142) - lu(k,436) * b(k,99) - b(k,144) = b(k,144) - lu(k,437) * b(k,99) - b(k,145) = b(k,145) - lu(k,438) * b(k,99) - b(k,148) = b(k,148) - lu(k,439) * b(k,99) - b(k,149) = b(k,149) - lu(k,440) * b(k,99) - b(k,105) = b(k,105) - lu(k,443) * b(k,100) - b(k,106) = b(k,106) - lu(k,444) * b(k,100) - b(k,107) = b(k,107) - lu(k,445) * b(k,100) - b(k,108) = b(k,108) - lu(k,446) * b(k,100) - b(k,110) = b(k,110) - lu(k,447) * b(k,100) - b(k,132) = b(k,132) - lu(k,448) * b(k,100) - b(k,145) = b(k,145) - lu(k,449) * b(k,100) - b(k,130) = b(k,130) - lu(k,452) * b(k,101) - b(k,134) = b(k,134) - lu(k,453) * b(k,101) - b(k,143) = b(k,143) - lu(k,454) * b(k,101) - b(k,144) = b(k,144) - lu(k,455) * b(k,101) - b(k,145) = b(k,145) - lu(k,456) * b(k,101) - b(k,149) = b(k,149) - lu(k,457) * b(k,101) - b(k,113) = b(k,113) - lu(k,461) * b(k,102) - b(k,117) = b(k,117) - lu(k,462) * b(k,102) - b(k,126) = b(k,126) - lu(k,463) * b(k,102) - b(k,132) = b(k,132) - lu(k,464) * b(k,102) - b(k,135) = b(k,135) - lu(k,465) * b(k,102) - b(k,136) = b(k,136) - lu(k,466) * b(k,102) - b(k,137) = b(k,137) - lu(k,467) * b(k,102) - b(k,140) = b(k,140) - lu(k,468) * b(k,102) - b(k,144) = b(k,144) - lu(k,469) * b(k,102) - b(k,146) = b(k,146) - lu(k,470) * b(k,102) - b(k,149) = b(k,149) - lu(k,471) * b(k,102) - b(k,112) = b(k,112) - lu(k,474) * b(k,103) - b(k,116) = b(k,116) - lu(k,475) * b(k,103) - b(k,118) = b(k,118) - lu(k,476) * b(k,103) - b(k,119) = b(k,119) - lu(k,477) * b(k,103) - b(k,122) = b(k,122) - lu(k,478) * b(k,103) - b(k,124) = b(k,124) - lu(k,479) * b(k,103) - b(k,126) = b(k,126) - lu(k,480) * b(k,103) - b(k,135) = b(k,135) - lu(k,481) * b(k,103) - b(k,136) = b(k,136) - lu(k,482) * b(k,103) - b(k,137) = b(k,137) - lu(k,483) * b(k,103) - b(k,138) = b(k,138) - lu(k,484) * b(k,103) - b(k,140) = b(k,140) - lu(k,485) * b(k,103) - b(k,141) = b(k,141) - lu(k,486) * b(k,103) - b(k,144) = b(k,144) - lu(k,487) * b(k,103) - b(k,146) = b(k,146) - lu(k,488) * b(k,103) - b(k,128) = b(k,128) - lu(k,491) * b(k,104) - b(k,139) = b(k,139) - lu(k,492) * b(k,104) - b(k,140) = b(k,140) - lu(k,493) * b(k,104) - b(k,141) = b(k,141) - lu(k,494) * b(k,104) - b(k,144) = b(k,144) - lu(k,495) * b(k,104) - b(k,147) = b(k,147) - lu(k,496) * b(k,104) - b(k,148) = b(k,148) - lu(k,497) * b(k,104) - b(k,149) = b(k,149) - lu(k,498) * b(k,104) - b(k,106) = b(k,106) - lu(k,502) * b(k,105) - b(k,107) = b(k,107) - lu(k,503) * b(k,105) - b(k,108) = b(k,108) - lu(k,504) * b(k,105) - b(k,110) = b(k,110) - lu(k,505) * b(k,105) - b(k,118) = b(k,118) - lu(k,506) * b(k,105) - b(k,127) = b(k,127) - lu(k,507) * b(k,105) - b(k,132) = b(k,132) - lu(k,508) * b(k,105) - b(k,145) = b(k,145) - lu(k,509) * b(k,105) - b(k,107) = b(k,107) - lu(k,512) * b(k,106) - b(k,108) = b(k,108) - lu(k,513) * b(k,106) - b(k,110) = b(k,110) - lu(k,514) * b(k,106) - b(k,132) = b(k,132) - lu(k,515) * b(k,106) - b(k,142) = b(k,142) - lu(k,516) * b(k,106) - b(k,145) = b(k,145) - lu(k,517) * b(k,106) - b(k,146) = b(k,146) - lu(k,518) * b(k,106) - b(k,108) = b(k,108) - lu(k,527) * b(k,107) - b(k,110) = b(k,110) - lu(k,528) * b(k,107) - b(k,118) = b(k,118) - lu(k,529) * b(k,107) - b(k,127) = b(k,127) - lu(k,530) * b(k,107) - b(k,132) = b(k,132) - lu(k,531) * b(k,107) - b(k,142) = b(k,142) - lu(k,532) * b(k,107) - b(k,145) = b(k,145) - lu(k,533) * b(k,107) - b(k,146) = b(k,146) - lu(k,534) * b(k,107) - b(k,110) = b(k,110) - lu(k,540) * b(k,108) - b(k,118) = b(k,118) - lu(k,541) * b(k,108) - b(k,127) = b(k,127) - lu(k,542) * b(k,108) - b(k,132) = b(k,132) - lu(k,543) * b(k,108) - b(k,142) = b(k,142) - lu(k,544) * b(k,108) - b(k,145) = b(k,145) - lu(k,545) * b(k,108) - b(k,146) = b(k,146) - lu(k,546) * b(k,108) + b(k,98) = b(k,98) - lu(k,287) * b(k,82) + b(k,116) = b(k,116) - lu(k,288) * b(k,82) + b(k,118) = b(k,118) - lu(k,289) * b(k,82) + b(k,141) = b(k,141) - lu(k,290) * b(k,82) + b(k,145) = b(k,145) - lu(k,291) * b(k,82) + b(k,146) = b(k,146) - lu(k,292) * b(k,82) + b(k,150) = b(k,150) - lu(k,293) * b(k,82) + b(k,120) = b(k,120) - lu(k,295) * b(k,83) + b(k,121) = b(k,121) - lu(k,296) * b(k,83) + b(k,123) = b(k,123) - lu(k,297) * b(k,83) + b(k,125) = b(k,125) - lu(k,298) * b(k,83) + b(k,141) = b(k,141) - lu(k,299) * b(k,83) + b(k,145) = b(k,145) - lu(k,300) * b(k,83) + b(k,146) = b(k,146) - lu(k,301) * b(k,83) + b(k,116) = b(k,116) - lu(k,303) * b(k,84) + b(k,126) = b(k,126) - lu(k,304) * b(k,84) + b(k,128) = b(k,128) - lu(k,305) * b(k,84) + b(k,136) = b(k,136) - lu(k,306) * b(k,84) + b(k,138) = b(k,138) - lu(k,307) * b(k,84) + b(k,141) = b(k,141) - lu(k,308) * b(k,84) + b(k,145) = b(k,145) - lu(k,309) * b(k,84) + b(k,146) = b(k,146) - lu(k,310) * b(k,84) + b(k,127) = b(k,127) - lu(k,312) * b(k,85) + b(k,128) = b(k,128) - lu(k,313) * b(k,85) + b(k,135) = b(k,135) - lu(k,314) * b(k,85) + b(k,141) = b(k,141) - lu(k,315) * b(k,85) + b(k,146) = b(k,146) - lu(k,316) * b(k,85) + b(k,150) = b(k,150) - lu(k,317) * b(k,85) + b(k,131) = b(k,131) - lu(k,319) * b(k,86) + b(k,141) = b(k,141) - lu(k,320) * b(k,86) + b(k,142) = b(k,142) - lu(k,321) * b(k,86) + b(k,145) = b(k,145) - lu(k,322) * b(k,86) + b(k,147) = b(k,147) - lu(k,323) * b(k,86) + b(k,150) = b(k,150) - lu(k,324) * b(k,86) + b(k,131) = b(k,131) - lu(k,326) * b(k,87) + b(k,132) = b(k,132) - lu(k,327) * b(k,87) + b(k,135) = b(k,135) - lu(k,328) * b(k,87) + b(k,140) = b(k,140) - lu(k,329) * b(k,87) + b(k,141) = b(k,141) - lu(k,330) * b(k,87) + b(k,142) = b(k,142) - lu(k,331) * b(k,87) + b(k,145) = b(k,145) - lu(k,332) * b(k,87) + b(k,150) = b(k,150) - lu(k,333) * b(k,87) + b(k,93) = b(k,93) - lu(k,335) * b(k,88) + b(k,106) = b(k,106) - lu(k,336) * b(k,88) + b(k,107) = b(k,107) - lu(k,337) * b(k,88) + b(k,108) = b(k,108) - lu(k,338) * b(k,88) + b(k,109) = b(k,109) - lu(k,339) * b(k,88) + b(k,112) = b(k,112) - lu(k,340) * b(k,88) + b(k,133) = b(k,133) - lu(k,341) * b(k,88) + b(k,147) = b(k,147) - lu(k,342) * b(k,88) + b(k,94) = b(k,94) - lu(k,344) * b(k,89) + b(k,120) = b(k,120) - lu(k,345) * b(k,89) + b(k,123) = b(k,123) - lu(k,346) * b(k,89) + b(k,125) = b(k,125) - lu(k,347) * b(k,89) + b(k,136) = b(k,136) - lu(k,348) * b(k,89) + b(k,138) = b(k,138) - lu(k,349) * b(k,89) + b(k,141) = b(k,141) - lu(k,350) * b(k,89) + b(k,147) = b(k,147) - lu(k,351) * b(k,89) + b(k,149) = b(k,149) - lu(k,352) * b(k,89) + b(k,128) = b(k,128) - lu(k,354) * b(k,90) + b(k,135) = b(k,135) - lu(k,355) * b(k,90) + b(k,141) = b(k,141) - lu(k,356) * b(k,90) + b(k,150) = b(k,150) - lu(k,357) * b(k,90) + b(k,130) = b(k,130) - lu(k,359) * b(k,91) + b(k,133) = b(k,133) - lu(k,360) * b(k,91) + b(k,137) = b(k,137) - lu(k,361) * b(k,91) + b(k,141) = b(k,141) - lu(k,362) * b(k,91) + b(k,147) = b(k,147) - lu(k,363) * b(k,91) + b(k,149) = b(k,149) - lu(k,364) * b(k,91) + b(k,119) = b(k,119) - lu(k,366) * b(k,92) + b(k,128) = b(k,128) - lu(k,367) * b(k,92) + b(k,141) = b(k,141) - lu(k,368) * b(k,92) + b(k,145) = b(k,145) - lu(k,369) * b(k,92) + b(k,108) = b(k,108) - lu(k,371) * b(k,93) + b(k,109) = b(k,109) - lu(k,372) * b(k,93) + b(k,112) = b(k,112) - lu(k,373) * b(k,93) + b(k,147) = b(k,147) - lu(k,374) * b(k,93) + b(k,115) = b(k,115) - lu(k,376) * b(k,94) + b(k,127) = b(k,127) - lu(k,377) * b(k,94) + b(k,135) = b(k,135) - lu(k,378) * b(k,94) + b(k,141) = b(k,141) - lu(k,379) * b(k,94) + b(k,150) = b(k,150) - lu(k,380) * b(k,94) + b(k,131) = b(k,131) - lu(k,383) * b(k,95) + b(k,132) = b(k,132) - lu(k,384) * b(k,95) + b(k,141) = b(k,141) - lu(k,385) * b(k,95) + b(k,142) = b(k,142) - lu(k,386) * b(k,95) + b(k,144) = b(k,144) - lu(k,387) * b(k,95) + b(k,147) = b(k,147) - lu(k,388) * b(k,95) + b(k,150) = b(k,150) - lu(k,389) * b(k,95) + b(k,114) = b(k,114) - lu(k,393) * b(k,96) + b(k,133) = b(k,133) - lu(k,394) * b(k,96) + b(k,138) = b(k,138) - lu(k,395) * b(k,96) + b(k,139) = b(k,139) - lu(k,396) * b(k,96) + b(k,141) = b(k,141) - lu(k,397) * b(k,96) + b(k,145) = b(k,145) - lu(k,398) * b(k,96) + b(k,146) = b(k,146) - lu(k,399) * b(k,96) + b(k,113) = b(k,113) - lu(k,401) * b(k,97) + b(k,120) = b(k,120) - lu(k,402) * b(k,97) + b(k,125) = b(k,125) - lu(k,403) * b(k,97) + b(k,136) = b(k,136) - lu(k,404) * b(k,97) + b(k,138) = b(k,138) - lu(k,405) * b(k,97) + b(k,139) = b(k,139) - lu(k,406) * b(k,97) + b(k,141) = b(k,141) - lu(k,407) * b(k,97) + b(k,145) = b(k,145) - lu(k,408) * b(k,97) + b(k,146) = b(k,146) - lu(k,409) * b(k,97) + b(k,116) = b(k,116) - lu(k,412) * b(k,98) + b(k,118) = b(k,118) - lu(k,413) * b(k,98) + b(k,133) = b(k,133) - lu(k,414) * b(k,98) + b(k,138) = b(k,138) - lu(k,415) * b(k,98) + b(k,139) = b(k,139) - lu(k,416) * b(k,98) + b(k,141) = b(k,141) - lu(k,417) * b(k,98) + b(k,145) = b(k,145) - lu(k,418) * b(k,98) + b(k,146) = b(k,146) - lu(k,419) * b(k,98) + b(k,150) = b(k,150) - lu(k,420) * b(k,98) + b(k,118) = b(k,118) - lu(k,425) * b(k,99) + b(k,133) = b(k,133) - lu(k,426) * b(k,99) + b(k,135) = b(k,135) - lu(k,427) * b(k,99) + b(k,138) = b(k,138) - lu(k,428) * b(k,99) + b(k,139) = b(k,139) - lu(k,429) * b(k,99) + b(k,141) = b(k,141) - lu(k,430) * b(k,99) + b(k,145) = b(k,145) - lu(k,431) * b(k,99) + b(k,146) = b(k,146) - lu(k,432) * b(k,99) + b(k,131) = b(k,131) - lu(k,435) * b(k,100) + b(k,141) = b(k,141) - lu(k,436) * b(k,100) + b(k,142) = b(k,142) - lu(k,437) * b(k,100) + b(k,143) = b(k,143) - lu(k,438) * b(k,100) + b(k,147) = b(k,147) - lu(k,439) * b(k,100) + b(k,150) = b(k,150) - lu(k,440) * b(k,100) + b(k,106) = b(k,106) - lu(k,443) * b(k,101) + b(k,107) = b(k,107) - lu(k,444) * b(k,101) + b(k,108) = b(k,108) - lu(k,445) * b(k,101) + b(k,109) = b(k,109) - lu(k,446) * b(k,101) + b(k,112) = b(k,112) - lu(k,447) * b(k,101) + b(k,133) = b(k,133) - lu(k,448) * b(k,101) + b(k,147) = b(k,147) - lu(k,449) * b(k,101) + b(k,132) = b(k,132) - lu(k,451) * b(k,102) + b(k,137) = b(k,137) - lu(k,452) * b(k,102) + b(k,140) = b(k,140) - lu(k,453) * b(k,102) + b(k,141) = b(k,141) - lu(k,454) * b(k,102) + b(k,144) = b(k,144) - lu(k,455) * b(k,102) + b(k,147) = b(k,147) - lu(k,456) * b(k,102) + b(k,150) = b(k,150) - lu(k,457) * b(k,102) + b(k,115) = b(k,115) - lu(k,461) * b(k,103) + b(k,118) = b(k,118) - lu(k,462) * b(k,103) + b(k,127) = b(k,127) - lu(k,463) * b(k,103) + b(k,133) = b(k,133) - lu(k,464) * b(k,103) + b(k,135) = b(k,135) - lu(k,465) * b(k,103) + b(k,138) = b(k,138) - lu(k,466) * b(k,103) + b(k,139) = b(k,139) - lu(k,467) * b(k,103) + b(k,141) = b(k,141) - lu(k,468) * b(k,103) + b(k,145) = b(k,145) - lu(k,469) * b(k,103) + b(k,146) = b(k,146) - lu(k,470) * b(k,103) + b(k,150) = b(k,150) - lu(k,471) * b(k,103) + b(k,113) = b(k,113) - lu(k,474) * b(k,104) + b(k,117) = b(k,117) - lu(k,475) * b(k,104) + b(k,119) = b(k,119) - lu(k,476) * b(k,104) + b(k,120) = b(k,120) - lu(k,477) * b(k,104) + b(k,123) = b(k,123) - lu(k,478) * b(k,104) + b(k,125) = b(k,125) - lu(k,479) * b(k,104) + b(k,127) = b(k,127) - lu(k,480) * b(k,104) + b(k,135) = b(k,135) - lu(k,481) * b(k,104) + b(k,136) = b(k,136) - lu(k,482) * b(k,104) + b(k,138) = b(k,138) - lu(k,483) * b(k,104) + b(k,139) = b(k,139) - lu(k,484) * b(k,104) + b(k,141) = b(k,141) - lu(k,485) * b(k,104) + b(k,145) = b(k,145) - lu(k,486) * b(k,104) + b(k,146) = b(k,146) - lu(k,487) * b(k,104) + b(k,149) = b(k,149) - lu(k,488) * b(k,104) + b(k,129) = b(k,129) - lu(k,491) * b(k,105) + b(k,134) = b(k,134) - lu(k,492) * b(k,105) + b(k,135) = b(k,135) - lu(k,493) * b(k,105) + b(k,136) = b(k,136) - lu(k,494) * b(k,105) + b(k,137) = b(k,137) - lu(k,495) * b(k,105) + b(k,141) = b(k,141) - lu(k,496) * b(k,105) + b(k,148) = b(k,148) - lu(k,497) * b(k,105) + b(k,150) = b(k,150) - lu(k,498) * b(k,105) + b(k,107) = b(k,107) - lu(k,502) * b(k,106) + b(k,108) = b(k,108) - lu(k,503) * b(k,106) + b(k,109) = b(k,109) - lu(k,504) * b(k,106) + b(k,112) = b(k,112) - lu(k,505) * b(k,106) + b(k,119) = b(k,119) - lu(k,506) * b(k,106) + b(k,128) = b(k,128) - lu(k,507) * b(k,106) + b(k,133) = b(k,133) - lu(k,508) * b(k,106) + b(k,147) = b(k,147) - lu(k,509) * b(k,106) + b(k,108) = b(k,108) - lu(k,512) * b(k,107) + b(k,109) = b(k,109) - lu(k,513) * b(k,107) + b(k,112) = b(k,112) - lu(k,514) * b(k,107) + b(k,133) = b(k,133) - lu(k,515) * b(k,107) + b(k,139) = b(k,139) - lu(k,516) * b(k,107) + b(k,140) = b(k,140) - lu(k,517) * b(k,107) + b(k,147) = b(k,147) - lu(k,518) * b(k,107) + b(k,109) = b(k,109) - lu(k,527) * b(k,108) + b(k,112) = b(k,112) - lu(k,528) * b(k,108) + b(k,119) = b(k,119) - lu(k,529) * b(k,108) + b(k,128) = b(k,128) - lu(k,530) * b(k,108) + b(k,133) = b(k,133) - lu(k,531) * b(k,108) + b(k,139) = b(k,139) - lu(k,532) * b(k,108) + b(k,140) = b(k,140) - lu(k,533) * b(k,108) + b(k,147) = b(k,147) - lu(k,534) * b(k,108) + b(k,112) = b(k,112) - lu(k,540) * b(k,109) + b(k,119) = b(k,119) - lu(k,541) * b(k,109) + b(k,128) = b(k,128) - lu(k,542) * b(k,109) + b(k,133) = b(k,133) - lu(k,543) * b(k,109) + b(k,139) = b(k,139) - lu(k,544) * b(k,109) + b(k,140) = b(k,140) - lu(k,545) * b(k,109) + b(k,147) = b(k,147) - lu(k,546) * b(k,109) end do end subroutine lu_slv02 subroutine lu_slv03( avec_len, lu, b ) @@ -468,210 +468,210 @@ subroutine lu_slv03( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,129) = b(k,129) - lu(k,549) * b(k,109) - b(k,137) = b(k,137) - lu(k,550) * b(k,109) - b(k,144) = b(k,144) - lu(k,551) * b(k,109) - b(k,145) = b(k,145) - lu(k,552) * b(k,109) - b(k,149) = b(k,149) - lu(k,553) * b(k,109) - b(k,118) = b(k,118) - lu(k,562) * b(k,110) - b(k,127) = b(k,127) - lu(k,563) * b(k,110) - b(k,132) = b(k,132) - lu(k,564) * b(k,110) - b(k,135) = b(k,135) - lu(k,565) * b(k,110) - b(k,142) = b(k,142) - lu(k,566) * b(k,110) - b(k,144) = b(k,144) - lu(k,567) * b(k,110) - b(k,145) = b(k,145) - lu(k,568) * b(k,110) - b(k,146) = b(k,146) - lu(k,569) * b(k,110) - b(k,148) = b(k,148) - lu(k,570) * b(k,110) - b(k,130) = b(k,130) - lu(k,574) * b(k,111) - b(k,134) = b(k,134) - lu(k,575) * b(k,111) - b(k,135) = b(k,135) - lu(k,576) * b(k,111) - b(k,139) = b(k,139) - lu(k,577) * b(k,111) - b(k,141) = b(k,141) - lu(k,578) * b(k,111) - b(k,143) = b(k,143) - lu(k,579) * b(k,111) - b(k,144) = b(k,144) - lu(k,580) * b(k,111) - b(k,145) = b(k,145) - lu(k,581) * b(k,111) - b(k,149) = b(k,149) - lu(k,582) * b(k,111) - b(k,118) = b(k,118) - lu(k,585) * b(k,112) - b(k,120) = b(k,120) - lu(k,586) * b(k,112) - b(k,135) = b(k,135) - lu(k,587) * b(k,112) - b(k,136) = b(k,136) - lu(k,588) * b(k,112) - b(k,137) = b(k,137) - lu(k,589) * b(k,112) - b(k,139) = b(k,139) - lu(k,590) * b(k,112) - b(k,141) = b(k,141) - lu(k,591) * b(k,112) - b(k,144) = b(k,144) - lu(k,592) * b(k,112) - b(k,115) = b(k,115) - lu(k,596) * b(k,113) - b(k,121) = b(k,121) - lu(k,597) * b(k,113) - b(k,126) = b(k,126) - lu(k,598) * b(k,113) - b(k,135) = b(k,135) - lu(k,599) * b(k,113) - b(k,136) = b(k,136) - lu(k,600) * b(k,113) - b(k,137) = b(k,137) - lu(k,601) * b(k,113) - b(k,140) = b(k,140) - lu(k,602) * b(k,113) - b(k,144) = b(k,144) - lu(k,603) * b(k,113) - b(k,146) = b(k,146) - lu(k,604) * b(k,113) - b(k,149) = b(k,149) - lu(k,605) * b(k,113) - b(k,118) = b(k,118) - lu(k,608) * b(k,114) - b(k,127) = b(k,127) - lu(k,609) * b(k,114) - b(k,136) = b(k,136) - lu(k,610) * b(k,114) - b(k,137) = b(k,137) - lu(k,611) * b(k,114) - b(k,144) = b(k,144) - lu(k,612) * b(k,114) - b(k,121) = b(k,121) - lu(k,614) * b(k,115) - b(k,126) = b(k,126) - lu(k,615) * b(k,115) - b(k,136) = b(k,136) - lu(k,616) * b(k,115) - b(k,137) = b(k,137) - lu(k,617) * b(k,115) - b(k,144) = b(k,144) - lu(k,618) * b(k,115) - b(k,117) = b(k,117) - lu(k,624) * b(k,116) - b(k,118) = b(k,118) - lu(k,625) * b(k,116) - b(k,121) = b(k,121) - lu(k,626) * b(k,116) - b(k,126) = b(k,126) - lu(k,627) * b(k,116) - b(k,127) = b(k,127) - lu(k,628) * b(k,116) - b(k,132) = b(k,132) - lu(k,629) * b(k,116) - b(k,135) = b(k,135) - lu(k,630) * b(k,116) - b(k,136) = b(k,136) - lu(k,631) * b(k,116) - b(k,137) = b(k,137) - lu(k,632) * b(k,116) - b(k,138) = b(k,138) - lu(k,633) * b(k,116) - b(k,140) = b(k,140) - lu(k,634) * b(k,116) - b(k,141) = b(k,141) - lu(k,635) * b(k,116) - b(k,144) = b(k,144) - lu(k,636) * b(k,116) - b(k,146) = b(k,146) - lu(k,637) * b(k,116) - b(k,147) = b(k,147) - lu(k,638) * b(k,116) - b(k,149) = b(k,149) - lu(k,639) * b(k,116) - b(k,118) = b(k,118) - lu(k,641) * b(k,117) - b(k,126) = b(k,126) - lu(k,642) * b(k,117) - b(k,137) = b(k,137) - lu(k,643) * b(k,117) - b(k,139) = b(k,139) - lu(k,644) * b(k,117) - b(k,140) = b(k,140) - lu(k,645) * b(k,117) - b(k,141) = b(k,141) - lu(k,646) * b(k,117) - b(k,144) = b(k,144) - lu(k,647) * b(k,117) - b(k,149) = b(k,149) - lu(k,648) * b(k,117) - b(k,127) = b(k,127) - lu(k,650) * b(k,118) - b(k,137) = b(k,137) - lu(k,651) * b(k,118) - b(k,144) = b(k,144) - lu(k,652) * b(k,118) - b(k,121) = b(k,121) - lu(k,655) * b(k,119) - b(k,123) = b(k,123) - lu(k,656) * b(k,119) - b(k,125) = b(k,125) - lu(k,657) * b(k,119) - b(k,126) = b(k,126) - lu(k,658) * b(k,119) - b(k,127) = b(k,127) - lu(k,659) * b(k,119) - b(k,136) = b(k,136) - lu(k,660) * b(k,119) - b(k,137) = b(k,137) - lu(k,661) * b(k,119) - b(k,138) = b(k,138) - lu(k,662) * b(k,119) - b(k,144) = b(k,144) - lu(k,663) * b(k,119) - b(k,149) = b(k,149) - lu(k,664) * b(k,119) - b(k,121) = b(k,121) - lu(k,672) * b(k,120) - b(k,126) = b(k,126) - lu(k,673) * b(k,120) - b(k,127) = b(k,127) - lu(k,674) * b(k,120) - b(k,135) = b(k,135) - lu(k,675) * b(k,120) - b(k,136) = b(k,136) - lu(k,676) * b(k,120) - b(k,137) = b(k,137) - lu(k,677) * b(k,120) - b(k,140) = b(k,140) - lu(k,678) * b(k,120) - b(k,141) = b(k,141) - lu(k,679) * b(k,120) - b(k,144) = b(k,144) - lu(k,680) * b(k,120) - b(k,146) = b(k,146) - lu(k,681) * b(k,120) - b(k,126) = b(k,126) - lu(k,684) * b(k,121) - b(k,127) = b(k,127) - lu(k,685) * b(k,121) - b(k,137) = b(k,137) - lu(k,686) * b(k,121) - b(k,139) = b(k,139) - lu(k,687) * b(k,121) - b(k,141) = b(k,141) - lu(k,688) * b(k,121) - b(k,144) = b(k,144) - lu(k,689) * b(k,121) - b(k,149) = b(k,149) - lu(k,690) * b(k,121) - b(k,123) = b(k,123) - lu(k,703) * b(k,122) - b(k,124) = b(k,124) - lu(k,704) * b(k,122) - b(k,125) = b(k,125) - lu(k,705) * b(k,122) - b(k,126) = b(k,126) - lu(k,706) * b(k,122) - b(k,127) = b(k,127) - lu(k,707) * b(k,122) - b(k,135) = b(k,135) - lu(k,708) * b(k,122) - b(k,136) = b(k,136) - lu(k,709) * b(k,122) - b(k,137) = b(k,137) - lu(k,710) * b(k,122) - b(k,138) = b(k,138) - lu(k,711) * b(k,122) - b(k,139) = b(k,139) - lu(k,712) * b(k,122) - b(k,140) = b(k,140) - lu(k,713) * b(k,122) - b(k,141) = b(k,141) - lu(k,714) * b(k,122) - b(k,144) = b(k,144) - lu(k,715) * b(k,122) - b(k,146) = b(k,146) - lu(k,716) * b(k,122) - b(k,149) = b(k,149) - lu(k,717) * b(k,122) - b(k,125) = b(k,125) - lu(k,727) * b(k,123) - b(k,126) = b(k,126) - lu(k,728) * b(k,123) - b(k,127) = b(k,127) - lu(k,729) * b(k,123) - b(k,135) = b(k,135) - lu(k,730) * b(k,123) - b(k,136) = b(k,136) - lu(k,731) * b(k,123) - b(k,137) = b(k,137) - lu(k,732) * b(k,123) - b(k,139) = b(k,139) - lu(k,733) * b(k,123) - b(k,140) = b(k,140) - lu(k,734) * b(k,123) - b(k,141) = b(k,141) - lu(k,735) * b(k,123) - b(k,144) = b(k,144) - lu(k,736) * b(k,123) - b(k,146) = b(k,146) - lu(k,737) * b(k,123) - b(k,149) = b(k,149) - lu(k,738) * b(k,123) - b(k,125) = b(k,125) - lu(k,745) * b(k,124) - b(k,126) = b(k,126) - lu(k,746) * b(k,124) - b(k,127) = b(k,127) - lu(k,747) * b(k,124) - b(k,132) = b(k,132) - lu(k,748) * b(k,124) - b(k,135) = b(k,135) - lu(k,749) * b(k,124) - b(k,136) = b(k,136) - lu(k,750) * b(k,124) - b(k,137) = b(k,137) - lu(k,751) * b(k,124) - b(k,138) = b(k,138) - lu(k,752) * b(k,124) - b(k,139) = b(k,139) - lu(k,753) * b(k,124) - b(k,140) = b(k,140) - lu(k,754) * b(k,124) - b(k,141) = b(k,141) - lu(k,755) * b(k,124) - b(k,144) = b(k,144) - lu(k,756) * b(k,124) - b(k,146) = b(k,146) - lu(k,757) * b(k,124) - b(k,147) = b(k,147) - lu(k,758) * b(k,124) - b(k,149) = b(k,149) - lu(k,759) * b(k,124) - b(k,126) = b(k,126) - lu(k,766) * b(k,125) - b(k,127) = b(k,127) - lu(k,767) * b(k,125) - b(k,135) = b(k,135) - lu(k,768) * b(k,125) - b(k,136) = b(k,136) - lu(k,769) * b(k,125) - b(k,137) = b(k,137) - lu(k,770) * b(k,125) - b(k,138) = b(k,138) - lu(k,771) * b(k,125) - b(k,139) = b(k,139) - lu(k,772) * b(k,125) - b(k,140) = b(k,140) - lu(k,773) * b(k,125) - b(k,141) = b(k,141) - lu(k,774) * b(k,125) - b(k,144) = b(k,144) - lu(k,775) * b(k,125) - b(k,146) = b(k,146) - lu(k,776) * b(k,125) - b(k,149) = b(k,149) - lu(k,777) * b(k,125) - b(k,127) = b(k,127) - lu(k,794) * b(k,126) - b(k,132) = b(k,132) - lu(k,795) * b(k,126) - b(k,135) = b(k,135) - lu(k,796) * b(k,126) - b(k,136) = b(k,136) - lu(k,797) * b(k,126) - b(k,137) = b(k,137) - lu(k,798) * b(k,126) - b(k,138) = b(k,138) - lu(k,799) * b(k,126) - b(k,139) = b(k,139) - lu(k,800) * b(k,126) - b(k,140) = b(k,140) - lu(k,801) * b(k,126) - b(k,141) = b(k,141) - lu(k,802) * b(k,126) - b(k,144) = b(k,144) - lu(k,803) * b(k,126) - b(k,146) = b(k,146) - lu(k,804) * b(k,126) - b(k,147) = b(k,147) - lu(k,805) * b(k,126) - b(k,149) = b(k,149) - lu(k,806) * b(k,126) - b(k,132) = b(k,132) - lu(k,816) * b(k,127) - b(k,135) = b(k,135) - lu(k,817) * b(k,127) - b(k,137) = b(k,137) - lu(k,818) * b(k,127) - b(k,142) = b(k,142) - lu(k,819) * b(k,127) - b(k,144) = b(k,144) - lu(k,820) * b(k,127) - b(k,145) = b(k,145) - lu(k,821) * b(k,127) - b(k,146) = b(k,146) - lu(k,822) * b(k,127) - b(k,148) = b(k,148) - lu(k,823) * b(k,127) - b(k,130) = b(k,130) - lu(k,827) * b(k,128) - b(k,139) = b(k,139) - lu(k,828) * b(k,128) - b(k,140) = b(k,140) - lu(k,829) * b(k,128) - b(k,141) = b(k,141) - lu(k,830) * b(k,128) - b(k,142) = b(k,142) - lu(k,831) * b(k,128) - b(k,143) = b(k,143) - lu(k,832) * b(k,128) - b(k,144) = b(k,144) - lu(k,833) * b(k,128) - b(k,145) = b(k,145) - lu(k,834) * b(k,128) - b(k,147) = b(k,147) - lu(k,835) * b(k,128) - b(k,148) = b(k,148) - lu(k,836) * b(k,128) - b(k,149) = b(k,149) - lu(k,837) * b(k,128) - b(k,131) = b(k,131) - lu(k,842) * b(k,129) - b(k,132) = b(k,132) - lu(k,843) * b(k,129) - b(k,133) = b(k,133) - lu(k,844) * b(k,129) - b(k,134) = b(k,134) - lu(k,845) * b(k,129) - b(k,135) = b(k,135) - lu(k,846) * b(k,129) - b(k,137) = b(k,137) - lu(k,847) * b(k,129) - b(k,138) = b(k,138) - lu(k,848) * b(k,129) - b(k,143) = b(k,143) - lu(k,849) * b(k,129) - b(k,144) = b(k,144) - lu(k,850) * b(k,129) - b(k,145) = b(k,145) - lu(k,851) * b(k,129) - b(k,146) = b(k,146) - lu(k,852) * b(k,129) - b(k,148) = b(k,148) - lu(k,853) * b(k,129) - b(k,149) = b(k,149) - lu(k,854) * b(k,129) + b(k,130) = b(k,130) - lu(k,549) * b(k,110) + b(k,141) = b(k,141) - lu(k,550) * b(k,110) + b(k,145) = b(k,145) - lu(k,551) * b(k,110) + b(k,147) = b(k,147) - lu(k,552) * b(k,110) + b(k,150) = b(k,150) - lu(k,553) * b(k,110) + b(k,131) = b(k,131) - lu(k,557) * b(k,111) + b(k,136) = b(k,136) - lu(k,558) * b(k,111) + b(k,138) = b(k,138) - lu(k,559) * b(k,111) + b(k,141) = b(k,141) - lu(k,560) * b(k,111) + b(k,142) = b(k,142) - lu(k,561) * b(k,111) + b(k,143) = b(k,143) - lu(k,562) * b(k,111) + b(k,147) = b(k,147) - lu(k,563) * b(k,111) + b(k,148) = b(k,148) - lu(k,564) * b(k,111) + b(k,150) = b(k,150) - lu(k,565) * b(k,111) + b(k,119) = b(k,119) - lu(k,574) * b(k,112) + b(k,128) = b(k,128) - lu(k,575) * b(k,112) + b(k,133) = b(k,133) - lu(k,576) * b(k,112) + b(k,137) = b(k,137) - lu(k,577) * b(k,112) + b(k,138) = b(k,138) - lu(k,578) * b(k,112) + b(k,139) = b(k,139) - lu(k,579) * b(k,112) + b(k,140) = b(k,140) - lu(k,580) * b(k,112) + b(k,141) = b(k,141) - lu(k,581) * b(k,112) + b(k,147) = b(k,147) - lu(k,582) * b(k,112) + b(k,119) = b(k,119) - lu(k,585) * b(k,113) + b(k,121) = b(k,121) - lu(k,586) * b(k,113) + b(k,136) = b(k,136) - lu(k,587) * b(k,113) + b(k,138) = b(k,138) - lu(k,588) * b(k,113) + b(k,141) = b(k,141) - lu(k,589) * b(k,113) + b(k,145) = b(k,145) - lu(k,590) * b(k,113) + b(k,146) = b(k,146) - lu(k,591) * b(k,113) + b(k,148) = b(k,148) - lu(k,592) * b(k,113) + b(k,119) = b(k,119) - lu(k,595) * b(k,114) + b(k,128) = b(k,128) - lu(k,596) * b(k,114) + b(k,141) = b(k,141) - lu(k,597) * b(k,114) + b(k,145) = b(k,145) - lu(k,598) * b(k,114) + b(k,146) = b(k,146) - lu(k,599) * b(k,114) + b(k,116) = b(k,116) - lu(k,603) * b(k,115) + b(k,122) = b(k,122) - lu(k,604) * b(k,115) + b(k,127) = b(k,127) - lu(k,605) * b(k,115) + b(k,135) = b(k,135) - lu(k,606) * b(k,115) + b(k,138) = b(k,138) - lu(k,607) * b(k,115) + b(k,139) = b(k,139) - lu(k,608) * b(k,115) + b(k,141) = b(k,141) - lu(k,609) * b(k,115) + b(k,145) = b(k,145) - lu(k,610) * b(k,115) + b(k,146) = b(k,146) - lu(k,611) * b(k,115) + b(k,150) = b(k,150) - lu(k,612) * b(k,115) + b(k,122) = b(k,122) - lu(k,614) * b(k,116) + b(k,127) = b(k,127) - lu(k,615) * b(k,116) + b(k,141) = b(k,141) - lu(k,616) * b(k,116) + b(k,145) = b(k,145) - lu(k,617) * b(k,116) + b(k,146) = b(k,146) - lu(k,618) * b(k,116) + b(k,118) = b(k,118) - lu(k,624) * b(k,117) + b(k,119) = b(k,119) - lu(k,625) * b(k,117) + b(k,122) = b(k,122) - lu(k,626) * b(k,117) + b(k,127) = b(k,127) - lu(k,627) * b(k,117) + b(k,128) = b(k,128) - lu(k,628) * b(k,117) + b(k,133) = b(k,133) - lu(k,629) * b(k,117) + b(k,134) = b(k,134) - lu(k,630) * b(k,117) + b(k,135) = b(k,135) - lu(k,631) * b(k,117) + b(k,136) = b(k,136) - lu(k,632) * b(k,117) + b(k,138) = b(k,138) - lu(k,633) * b(k,117) + b(k,139) = b(k,139) - lu(k,634) * b(k,117) + b(k,141) = b(k,141) - lu(k,635) * b(k,117) + b(k,145) = b(k,145) - lu(k,636) * b(k,117) + b(k,146) = b(k,146) - lu(k,637) * b(k,117) + b(k,149) = b(k,149) - lu(k,638) * b(k,117) + b(k,150) = b(k,150) - lu(k,639) * b(k,117) + b(k,119) = b(k,119) - lu(k,641) * b(k,118) + b(k,127) = b(k,127) - lu(k,642) * b(k,118) + b(k,135) = b(k,135) - lu(k,643) * b(k,118) + b(k,136) = b(k,136) - lu(k,644) * b(k,118) + b(k,141) = b(k,141) - lu(k,645) * b(k,118) + b(k,145) = b(k,145) - lu(k,646) * b(k,118) + b(k,148) = b(k,148) - lu(k,647) * b(k,118) + b(k,150) = b(k,150) - lu(k,648) * b(k,118) + b(k,128) = b(k,128) - lu(k,650) * b(k,119) + b(k,141) = b(k,141) - lu(k,651) * b(k,119) + b(k,145) = b(k,145) - lu(k,652) * b(k,119) + b(k,122) = b(k,122) - lu(k,655) * b(k,120) + b(k,124) = b(k,124) - lu(k,656) * b(k,120) + b(k,126) = b(k,126) - lu(k,657) * b(k,120) + b(k,127) = b(k,127) - lu(k,658) * b(k,120) + b(k,128) = b(k,128) - lu(k,659) * b(k,120) + b(k,141) = b(k,141) - lu(k,660) * b(k,120) + b(k,145) = b(k,145) - lu(k,661) * b(k,120) + b(k,146) = b(k,146) - lu(k,662) * b(k,120) + b(k,149) = b(k,149) - lu(k,663) * b(k,120) + b(k,150) = b(k,150) - lu(k,664) * b(k,120) + b(k,122) = b(k,122) - lu(k,672) * b(k,121) + b(k,127) = b(k,127) - lu(k,673) * b(k,121) + b(k,128) = b(k,128) - lu(k,674) * b(k,121) + b(k,135) = b(k,135) - lu(k,675) * b(k,121) + b(k,136) = b(k,136) - lu(k,676) * b(k,121) + b(k,138) = b(k,138) - lu(k,677) * b(k,121) + b(k,139) = b(k,139) - lu(k,678) * b(k,121) + b(k,141) = b(k,141) - lu(k,679) * b(k,121) + b(k,145) = b(k,145) - lu(k,680) * b(k,121) + b(k,146) = b(k,146) - lu(k,681) * b(k,121) + b(k,127) = b(k,127) - lu(k,684) * b(k,122) + b(k,128) = b(k,128) - lu(k,685) * b(k,122) + b(k,136) = b(k,136) - lu(k,686) * b(k,122) + b(k,141) = b(k,141) - lu(k,687) * b(k,122) + b(k,145) = b(k,145) - lu(k,688) * b(k,122) + b(k,148) = b(k,148) - lu(k,689) * b(k,122) + b(k,150) = b(k,150) - lu(k,690) * b(k,122) + b(k,124) = b(k,124) - lu(k,703) * b(k,123) + b(k,125) = b(k,125) - lu(k,704) * b(k,123) + b(k,126) = b(k,126) - lu(k,705) * b(k,123) + b(k,127) = b(k,127) - lu(k,706) * b(k,123) + b(k,128) = b(k,128) - lu(k,707) * b(k,123) + b(k,135) = b(k,135) - lu(k,708) * b(k,123) + b(k,136) = b(k,136) - lu(k,709) * b(k,123) + b(k,138) = b(k,138) - lu(k,710) * b(k,123) + b(k,139) = b(k,139) - lu(k,711) * b(k,123) + b(k,141) = b(k,141) - lu(k,712) * b(k,123) + b(k,145) = b(k,145) - lu(k,713) * b(k,123) + b(k,146) = b(k,146) - lu(k,714) * b(k,123) + b(k,148) = b(k,148) - lu(k,715) * b(k,123) + b(k,149) = b(k,149) - lu(k,716) * b(k,123) + b(k,150) = b(k,150) - lu(k,717) * b(k,123) + b(k,126) = b(k,126) - lu(k,727) * b(k,124) + b(k,127) = b(k,127) - lu(k,728) * b(k,124) + b(k,128) = b(k,128) - lu(k,729) * b(k,124) + b(k,135) = b(k,135) - lu(k,730) * b(k,124) + b(k,136) = b(k,136) - lu(k,731) * b(k,124) + b(k,138) = b(k,138) - lu(k,732) * b(k,124) + b(k,139) = b(k,139) - lu(k,733) * b(k,124) + b(k,141) = b(k,141) - lu(k,734) * b(k,124) + b(k,145) = b(k,145) - lu(k,735) * b(k,124) + b(k,146) = b(k,146) - lu(k,736) * b(k,124) + b(k,148) = b(k,148) - lu(k,737) * b(k,124) + b(k,150) = b(k,150) - lu(k,738) * b(k,124) + b(k,126) = b(k,126) - lu(k,745) * b(k,125) + b(k,127) = b(k,127) - lu(k,746) * b(k,125) + b(k,128) = b(k,128) - lu(k,747) * b(k,125) + b(k,133) = b(k,133) - lu(k,748) * b(k,125) + b(k,134) = b(k,134) - lu(k,749) * b(k,125) + b(k,135) = b(k,135) - lu(k,750) * b(k,125) + b(k,136) = b(k,136) - lu(k,751) * b(k,125) + b(k,138) = b(k,138) - lu(k,752) * b(k,125) + b(k,139) = b(k,139) - lu(k,753) * b(k,125) + b(k,141) = b(k,141) - lu(k,754) * b(k,125) + b(k,145) = b(k,145) - lu(k,755) * b(k,125) + b(k,146) = b(k,146) - lu(k,756) * b(k,125) + b(k,148) = b(k,148) - lu(k,757) * b(k,125) + b(k,149) = b(k,149) - lu(k,758) * b(k,125) + b(k,150) = b(k,150) - lu(k,759) * b(k,125) + b(k,127) = b(k,127) - lu(k,766) * b(k,126) + b(k,128) = b(k,128) - lu(k,767) * b(k,126) + b(k,135) = b(k,135) - lu(k,768) * b(k,126) + b(k,136) = b(k,136) - lu(k,769) * b(k,126) + b(k,138) = b(k,138) - lu(k,770) * b(k,126) + b(k,139) = b(k,139) - lu(k,771) * b(k,126) + b(k,141) = b(k,141) - lu(k,772) * b(k,126) + b(k,145) = b(k,145) - lu(k,773) * b(k,126) + b(k,146) = b(k,146) - lu(k,774) * b(k,126) + b(k,148) = b(k,148) - lu(k,775) * b(k,126) + b(k,149) = b(k,149) - lu(k,776) * b(k,126) + b(k,150) = b(k,150) - lu(k,777) * b(k,126) + b(k,128) = b(k,128) - lu(k,794) * b(k,127) + b(k,133) = b(k,133) - lu(k,795) * b(k,127) + b(k,134) = b(k,134) - lu(k,796) * b(k,127) + b(k,135) = b(k,135) - lu(k,797) * b(k,127) + b(k,136) = b(k,136) - lu(k,798) * b(k,127) + b(k,138) = b(k,138) - lu(k,799) * b(k,127) + b(k,139) = b(k,139) - lu(k,800) * b(k,127) + b(k,141) = b(k,141) - lu(k,801) * b(k,127) + b(k,145) = b(k,145) - lu(k,802) * b(k,127) + b(k,146) = b(k,146) - lu(k,803) * b(k,127) + b(k,148) = b(k,148) - lu(k,804) * b(k,127) + b(k,149) = b(k,149) - lu(k,805) * b(k,127) + b(k,150) = b(k,150) - lu(k,806) * b(k,127) + b(k,133) = b(k,133) - lu(k,816) * b(k,128) + b(k,137) = b(k,137) - lu(k,817) * b(k,128) + b(k,138) = b(k,138) - lu(k,818) * b(k,128) + b(k,139) = b(k,139) - lu(k,819) * b(k,128) + b(k,140) = b(k,140) - lu(k,820) * b(k,128) + b(k,141) = b(k,141) - lu(k,821) * b(k,128) + b(k,145) = b(k,145) - lu(k,822) * b(k,128) + b(k,147) = b(k,147) - lu(k,823) * b(k,128) + b(k,131) = b(k,131) - lu(k,827) * b(k,129) + b(k,134) = b(k,134) - lu(k,828) * b(k,129) + b(k,135) = b(k,135) - lu(k,829) * b(k,129) + b(k,136) = b(k,136) - lu(k,830) * b(k,129) + b(k,137) = b(k,137) - lu(k,831) * b(k,129) + b(k,140) = b(k,140) - lu(k,832) * b(k,129) + b(k,141) = b(k,141) - lu(k,833) * b(k,129) + b(k,142) = b(k,142) - lu(k,834) * b(k,129) + b(k,147) = b(k,147) - lu(k,835) * b(k,129) + b(k,148) = b(k,148) - lu(k,836) * b(k,129) + b(k,150) = b(k,150) - lu(k,837) * b(k,129) + b(k,132) = b(k,132) - lu(k,842) * b(k,130) + b(k,133) = b(k,133) - lu(k,843) * b(k,130) + b(k,137) = b(k,137) - lu(k,844) * b(k,130) + b(k,138) = b(k,138) - lu(k,845) * b(k,130) + b(k,139) = b(k,139) - lu(k,846) * b(k,130) + b(k,141) = b(k,141) - lu(k,847) * b(k,130) + b(k,142) = b(k,142) - lu(k,848) * b(k,130) + b(k,143) = b(k,143) - lu(k,849) * b(k,130) + b(k,144) = b(k,144) - lu(k,850) * b(k,130) + b(k,145) = b(k,145) - lu(k,851) * b(k,130) + b(k,147) = b(k,147) - lu(k,852) * b(k,130) + b(k,149) = b(k,149) - lu(k,853) * b(k,130) + b(k,150) = b(k,150) - lu(k,854) * b(k,130) end do end subroutine lu_slv03 subroutine lu_slv04( avec_len, lu, b ) @@ -692,176 +692,179 @@ subroutine lu_slv04( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,131) = b(k,131) - lu(k,861) * b(k,130) - b(k,133) = b(k,133) - lu(k,862) * b(k,130) - b(k,134) = b(k,134) - lu(k,863) * b(k,130) - b(k,135) = b(k,135) - lu(k,864) * b(k,130) - b(k,139) = b(k,139) - lu(k,865) * b(k,130) - b(k,141) = b(k,141) - lu(k,866) * b(k,130) - b(k,142) = b(k,142) - lu(k,867) * b(k,130) - b(k,143) = b(k,143) - lu(k,868) * b(k,130) - b(k,144) = b(k,144) - lu(k,869) * b(k,130) - b(k,145) = b(k,145) - lu(k,870) * b(k,130) - b(k,148) = b(k,148) - lu(k,871) * b(k,130) - b(k,149) = b(k,149) - lu(k,872) * b(k,130) - b(k,132) = b(k,132) - lu(k,877) * b(k,131) - b(k,133) = b(k,133) - lu(k,878) * b(k,131) - b(k,135) = b(k,135) - lu(k,879) * b(k,131) - b(k,136) = b(k,136) - lu(k,880) * b(k,131) - b(k,137) = b(k,137) - lu(k,881) * b(k,131) - b(k,138) = b(k,138) - lu(k,882) * b(k,131) - b(k,142) = b(k,142) - lu(k,883) * b(k,131) - b(k,144) = b(k,144) - lu(k,884) * b(k,131) - b(k,145) = b(k,145) - lu(k,885) * b(k,131) - b(k,146) = b(k,146) - lu(k,886) * b(k,131) - b(k,148) = b(k,148) - lu(k,887) * b(k,131) - b(k,149) = b(k,149) - lu(k,888) * b(k,131) - b(k,133) = b(k,133) - lu(k,910) * b(k,132) - b(k,134) = b(k,134) - lu(k,911) * b(k,132) - b(k,135) = b(k,135) - lu(k,912) * b(k,132) - b(k,136) = b(k,136) - lu(k,913) * b(k,132) - b(k,137) = b(k,137) - lu(k,914) * b(k,132) - b(k,138) = b(k,138) - lu(k,915) * b(k,132) - b(k,142) = b(k,142) - lu(k,916) * b(k,132) - b(k,143) = b(k,143) - lu(k,917) * b(k,132) - b(k,144) = b(k,144) - lu(k,918) * b(k,132) - b(k,145) = b(k,145) - lu(k,919) * b(k,132) - b(k,146) = b(k,146) - lu(k,920) * b(k,132) - b(k,148) = b(k,148) - lu(k,921) * b(k,132) - b(k,149) = b(k,149) - lu(k,922) * b(k,132) - b(k,134) = b(k,134) - lu(k,933) * b(k,133) - b(k,135) = b(k,135) - lu(k,934) * b(k,133) - b(k,136) = b(k,136) - lu(k,935) * b(k,133) - b(k,137) = b(k,137) - lu(k,936) * b(k,133) - b(k,138) = b(k,138) - lu(k,937) * b(k,133) - b(k,139) = b(k,139) - lu(k,938) * b(k,133) - b(k,141) = b(k,141) - lu(k,939) * b(k,133) - b(k,142) = b(k,142) - lu(k,940) * b(k,133) - b(k,143) = b(k,143) - lu(k,941) * b(k,133) - b(k,144) = b(k,144) - lu(k,942) * b(k,133) - b(k,145) = b(k,145) - lu(k,943) * b(k,133) - b(k,146) = b(k,146) - lu(k,944) * b(k,133) - b(k,148) = b(k,148) - lu(k,945) * b(k,133) - b(k,149) = b(k,149) - lu(k,946) * b(k,133) - b(k,135) = b(k,135) - lu(k,960) * b(k,134) - b(k,136) = b(k,136) - lu(k,961) * b(k,134) - b(k,137) = b(k,137) - lu(k,962) * b(k,134) - b(k,138) = b(k,138) - lu(k,963) * b(k,134) - b(k,139) = b(k,139) - lu(k,964) * b(k,134) - b(k,140) = b(k,140) - lu(k,965) * b(k,134) - b(k,141) = b(k,141) - lu(k,966) * b(k,134) - b(k,142) = b(k,142) - lu(k,967) * b(k,134) - b(k,143) = b(k,143) - lu(k,968) * b(k,134) - b(k,144) = b(k,144) - lu(k,969) * b(k,134) - b(k,145) = b(k,145) - lu(k,970) * b(k,134) - b(k,146) = b(k,146) - lu(k,971) * b(k,134) - b(k,148) = b(k,148) - lu(k,972) * b(k,134) - b(k,149) = b(k,149) - lu(k,973) * b(k,134) - b(k,136) = b(k,136) - lu(k,997) * b(k,135) - b(k,137) = b(k,137) - lu(k,998) * b(k,135) - b(k,138) = b(k,138) - lu(k,999) * b(k,135) - b(k,139) = b(k,139) - lu(k,1000) * b(k,135) - b(k,140) = b(k,140) - lu(k,1001) * b(k,135) - b(k,141) = b(k,141) - lu(k,1002) * b(k,135) - b(k,142) = b(k,142) - lu(k,1003) * b(k,135) - b(k,143) = b(k,143) - lu(k,1004) * b(k,135) - b(k,144) = b(k,144) - lu(k,1005) * b(k,135) - b(k,145) = b(k,145) - lu(k,1006) * b(k,135) - b(k,146) = b(k,146) - lu(k,1007) * b(k,135) - b(k,147) = b(k,147) - lu(k,1008) * b(k,135) - b(k,148) = b(k,148) - lu(k,1009) * b(k,135) - b(k,149) = b(k,149) - lu(k,1010) * b(k,135) - b(k,137) = b(k,137) - lu(k,1022) * b(k,136) - b(k,138) = b(k,138) - lu(k,1023) * b(k,136) - b(k,139) = b(k,139) - lu(k,1024) * b(k,136) - b(k,140) = b(k,140) - lu(k,1025) * b(k,136) - b(k,141) = b(k,141) - lu(k,1026) * b(k,136) - b(k,142) = b(k,142) - lu(k,1027) * b(k,136) - b(k,143) = b(k,143) - lu(k,1028) * b(k,136) - b(k,144) = b(k,144) - lu(k,1029) * b(k,136) - b(k,145) = b(k,145) - lu(k,1030) * b(k,136) - b(k,146) = b(k,146) - lu(k,1031) * b(k,136) - b(k,147) = b(k,147) - lu(k,1032) * b(k,136) - b(k,148) = b(k,148) - lu(k,1033) * b(k,136) - b(k,149) = b(k,149) - lu(k,1034) * b(k,136) - b(k,138) = b(k,138) - lu(k,1082) * b(k,137) - b(k,139) = b(k,139) - lu(k,1083) * b(k,137) - b(k,140) = b(k,140) - lu(k,1084) * b(k,137) - b(k,141) = b(k,141) - lu(k,1085) * b(k,137) - b(k,142) = b(k,142) - lu(k,1086) * b(k,137) - b(k,143) = b(k,143) - lu(k,1087) * b(k,137) - b(k,144) = b(k,144) - lu(k,1088) * b(k,137) - b(k,145) = b(k,145) - lu(k,1089) * b(k,137) - b(k,146) = b(k,146) - lu(k,1090) * b(k,137) - b(k,147) = b(k,147) - lu(k,1091) * b(k,137) - b(k,148) = b(k,148) - lu(k,1092) * b(k,137) - b(k,149) = b(k,149) - lu(k,1093) * b(k,137) - b(k,139) = b(k,139) - lu(k,1129) * b(k,138) - b(k,140) = b(k,140) - lu(k,1130) * b(k,138) - b(k,141) = b(k,141) - lu(k,1131) * b(k,138) - b(k,142) = b(k,142) - lu(k,1132) * b(k,138) - b(k,143) = b(k,143) - lu(k,1133) * b(k,138) - b(k,144) = b(k,144) - lu(k,1134) * b(k,138) - b(k,145) = b(k,145) - lu(k,1135) * b(k,138) - b(k,146) = b(k,146) - lu(k,1136) * b(k,138) - b(k,147) = b(k,147) - lu(k,1137) * b(k,138) - b(k,148) = b(k,148) - lu(k,1138) * b(k,138) - b(k,149) = b(k,149) - lu(k,1139) * b(k,138) - b(k,140) = b(k,140) - lu(k,1153) * b(k,139) - b(k,141) = b(k,141) - lu(k,1154) * b(k,139) - b(k,142) = b(k,142) - lu(k,1155) * b(k,139) - b(k,143) = b(k,143) - lu(k,1156) * b(k,139) - b(k,144) = b(k,144) - lu(k,1157) * b(k,139) - b(k,145) = b(k,145) - lu(k,1158) * b(k,139) - b(k,146) = b(k,146) - lu(k,1159) * b(k,139) - b(k,147) = b(k,147) - lu(k,1160) * b(k,139) - b(k,148) = b(k,148) - lu(k,1161) * b(k,139) - b(k,149) = b(k,149) - lu(k,1162) * b(k,139) - b(k,141) = b(k,141) - lu(k,1195) * b(k,140) - b(k,142) = b(k,142) - lu(k,1196) * b(k,140) - b(k,143) = b(k,143) - lu(k,1197) * b(k,140) - b(k,144) = b(k,144) - lu(k,1198) * b(k,140) - b(k,145) = b(k,145) - lu(k,1199) * b(k,140) - b(k,146) = b(k,146) - lu(k,1200) * b(k,140) - b(k,147) = b(k,147) - lu(k,1201) * b(k,140) - b(k,148) = b(k,148) - lu(k,1202) * b(k,140) - b(k,149) = b(k,149) - lu(k,1203) * b(k,140) - b(k,142) = b(k,142) - lu(k,1242) * b(k,141) - b(k,143) = b(k,143) - lu(k,1243) * b(k,141) - b(k,144) = b(k,144) - lu(k,1244) * b(k,141) - b(k,145) = b(k,145) - lu(k,1245) * b(k,141) - b(k,146) = b(k,146) - lu(k,1246) * b(k,141) - b(k,147) = b(k,147) - lu(k,1247) * b(k,141) - b(k,148) = b(k,148) - lu(k,1248) * b(k,141) - b(k,149) = b(k,149) - lu(k,1249) * b(k,141) - b(k,143) = b(k,143) - lu(k,1285) * b(k,142) - b(k,144) = b(k,144) - lu(k,1286) * b(k,142) - b(k,145) = b(k,145) - lu(k,1287) * b(k,142) - b(k,146) = b(k,146) - lu(k,1288) * b(k,142) - b(k,147) = b(k,147) - lu(k,1289) * b(k,142) - b(k,148) = b(k,148) - lu(k,1290) * b(k,142) - b(k,149) = b(k,149) - lu(k,1291) * b(k,142) - b(k,144) = b(k,144) - lu(k,1324) * b(k,143) - b(k,145) = b(k,145) - lu(k,1325) * b(k,143) - b(k,146) = b(k,146) - lu(k,1326) * b(k,143) - b(k,147) = b(k,147) - lu(k,1327) * b(k,143) - b(k,148) = b(k,148) - lu(k,1328) * b(k,143) - b(k,149) = b(k,149) - lu(k,1329) * b(k,143) - b(k,145) = b(k,145) - lu(k,1414) * b(k,144) - b(k,146) = b(k,146) - lu(k,1415) * b(k,144) - b(k,147) = b(k,147) - lu(k,1416) * b(k,144) - b(k,148) = b(k,148) - lu(k,1417) * b(k,144) - b(k,149) = b(k,149) - lu(k,1418) * b(k,144) - b(k,146) = b(k,146) - lu(k,1460) * b(k,145) - b(k,147) = b(k,147) - lu(k,1461) * b(k,145) - b(k,148) = b(k,148) - lu(k,1462) * b(k,145) - b(k,149) = b(k,149) - lu(k,1463) * b(k,145) - b(k,147) = b(k,147) - lu(k,1509) * b(k,146) - b(k,148) = b(k,148) - lu(k,1510) * b(k,146) - b(k,149) = b(k,149) - lu(k,1511) * b(k,146) - b(k,148) = b(k,148) - lu(k,1535) * b(k,147) - b(k,149) = b(k,149) - lu(k,1536) * b(k,147) - b(k,149) = b(k,149) - lu(k,1557) * b(k,148) + b(k,132) = b(k,132) - lu(k,861) * b(k,131) + b(k,136) = b(k,136) - lu(k,862) * b(k,131) + b(k,137) = b(k,137) - lu(k,863) * b(k,131) + b(k,138) = b(k,138) - lu(k,864) * b(k,131) + b(k,140) = b(k,140) - lu(k,865) * b(k,131) + b(k,141) = b(k,141) - lu(k,866) * b(k,131) + b(k,142) = b(k,142) - lu(k,867) * b(k,131) + b(k,143) = b(k,143) - lu(k,868) * b(k,131) + b(k,144) = b(k,144) - lu(k,869) * b(k,131) + b(k,147) = b(k,147) - lu(k,870) * b(k,131) + b(k,148) = b(k,148) - lu(k,871) * b(k,131) + b(k,150) = b(k,150) - lu(k,872) * b(k,131) + b(k,133) = b(k,133) - lu(k,877) * b(k,132) + b(k,137) = b(k,137) - lu(k,878) * b(k,132) + b(k,138) = b(k,138) - lu(k,879) * b(k,132) + b(k,139) = b(k,139) - lu(k,880) * b(k,132) + b(k,140) = b(k,140) - lu(k,881) * b(k,132) + b(k,141) = b(k,141) - lu(k,882) * b(k,132) + b(k,144) = b(k,144) - lu(k,883) * b(k,132) + b(k,145) = b(k,145) - lu(k,884) * b(k,132) + b(k,146) = b(k,146) - lu(k,885) * b(k,132) + b(k,147) = b(k,147) - lu(k,886) * b(k,132) + b(k,149) = b(k,149) - lu(k,887) * b(k,132) + b(k,150) = b(k,150) - lu(k,888) * b(k,132) + b(k,137) = b(k,137) - lu(k,910) * b(k,133) + b(k,138) = b(k,138) - lu(k,911) * b(k,133) + b(k,139) = b(k,139) - lu(k,912) * b(k,133) + b(k,140) = b(k,140) - lu(k,913) * b(k,133) + b(k,141) = b(k,141) - lu(k,914) * b(k,133) + b(k,142) = b(k,142) - lu(k,915) * b(k,133) + b(k,143) = b(k,143) - lu(k,916) * b(k,133) + b(k,144) = b(k,144) - lu(k,917) * b(k,133) + b(k,145) = b(k,145) - lu(k,918) * b(k,133) + b(k,146) = b(k,146) - lu(k,919) * b(k,133) + b(k,147) = b(k,147) - lu(k,920) * b(k,133) + b(k,149) = b(k,149) - lu(k,921) * b(k,133) + b(k,150) = b(k,150) - lu(k,922) * b(k,133) + b(k,135) = b(k,135) - lu(k,932) * b(k,134) + b(k,136) = b(k,136) - lu(k,933) * b(k,134) + b(k,137) = b(k,137) - lu(k,934) * b(k,134) + b(k,138) = b(k,138) - lu(k,935) * b(k,134) + b(k,139) = b(k,139) - lu(k,936) * b(k,134) + b(k,140) = b(k,140) - lu(k,937) * b(k,134) + b(k,141) = b(k,141) - lu(k,938) * b(k,134) + b(k,142) = b(k,142) - lu(k,939) * b(k,134) + b(k,143) = b(k,143) - lu(k,940) * b(k,134) + b(k,144) = b(k,144) - lu(k,941) * b(k,134) + b(k,145) = b(k,145) - lu(k,942) * b(k,134) + b(k,146) = b(k,146) - lu(k,943) * b(k,134) + b(k,147) = b(k,147) - lu(k,944) * b(k,134) + b(k,148) = b(k,148) - lu(k,945) * b(k,134) + b(k,149) = b(k,149) - lu(k,946) * b(k,134) + b(k,150) = b(k,150) - lu(k,947) * b(k,134) + b(k,136) = b(k,136) - lu(k,974) * b(k,135) + b(k,137) = b(k,137) - lu(k,975) * b(k,135) + b(k,138) = b(k,138) - lu(k,976) * b(k,135) + b(k,139) = b(k,139) - lu(k,977) * b(k,135) + b(k,140) = b(k,140) - lu(k,978) * b(k,135) + b(k,141) = b(k,141) - lu(k,979) * b(k,135) + b(k,142) = b(k,142) - lu(k,980) * b(k,135) + b(k,143) = b(k,143) - lu(k,981) * b(k,135) + b(k,144) = b(k,144) - lu(k,982) * b(k,135) + b(k,145) = b(k,145) - lu(k,983) * b(k,135) + b(k,146) = b(k,146) - lu(k,984) * b(k,135) + b(k,147) = b(k,147) - lu(k,985) * b(k,135) + b(k,148) = b(k,148) - lu(k,986) * b(k,135) + b(k,149) = b(k,149) - lu(k,987) * b(k,135) + b(k,150) = b(k,150) - lu(k,988) * b(k,135) + b(k,137) = b(k,137) - lu(k,1021) * b(k,136) + b(k,138) = b(k,138) - lu(k,1022) * b(k,136) + b(k,139) = b(k,139) - lu(k,1023) * b(k,136) + b(k,140) = b(k,140) - lu(k,1024) * b(k,136) + b(k,141) = b(k,141) - lu(k,1025) * b(k,136) + b(k,142) = b(k,142) - lu(k,1026) * b(k,136) + b(k,143) = b(k,143) - lu(k,1027) * b(k,136) + b(k,144) = b(k,144) - lu(k,1028) * b(k,136) + b(k,145) = b(k,145) - lu(k,1029) * b(k,136) + b(k,146) = b(k,146) - lu(k,1030) * b(k,136) + b(k,147) = b(k,147) - lu(k,1031) * b(k,136) + b(k,148) = b(k,148) - lu(k,1032) * b(k,136) + b(k,149) = b(k,149) - lu(k,1033) * b(k,136) + b(k,150) = b(k,150) - lu(k,1034) * b(k,136) + b(k,138) = b(k,138) - lu(k,1043) * b(k,137) + b(k,139) = b(k,139) - lu(k,1044) * b(k,137) + b(k,140) = b(k,140) - lu(k,1045) * b(k,137) + b(k,141) = b(k,141) - lu(k,1046) * b(k,137) + b(k,142) = b(k,142) - lu(k,1047) * b(k,137) + b(k,143) = b(k,143) - lu(k,1048) * b(k,137) + b(k,144) = b(k,144) - lu(k,1049) * b(k,137) + b(k,145) = b(k,145) - lu(k,1050) * b(k,137) + b(k,146) = b(k,146) - lu(k,1051) * b(k,137) + b(k,147) = b(k,147) - lu(k,1052) * b(k,137) + b(k,148) = b(k,148) - lu(k,1053) * b(k,137) + b(k,149) = b(k,149) - lu(k,1054) * b(k,137) + b(k,150) = b(k,150) - lu(k,1055) * b(k,137) + b(k,139) = b(k,139) - lu(k,1081) * b(k,138) + b(k,140) = b(k,140) - lu(k,1082) * b(k,138) + b(k,141) = b(k,141) - lu(k,1083) * b(k,138) + b(k,142) = b(k,142) - lu(k,1084) * b(k,138) + b(k,143) = b(k,143) - lu(k,1085) * b(k,138) + b(k,144) = b(k,144) - lu(k,1086) * b(k,138) + b(k,145) = b(k,145) - lu(k,1087) * b(k,138) + b(k,146) = b(k,146) - lu(k,1088) * b(k,138) + b(k,147) = b(k,147) - lu(k,1089) * b(k,138) + b(k,148) = b(k,148) - lu(k,1090) * b(k,138) + b(k,149) = b(k,149) - lu(k,1091) * b(k,138) + b(k,150) = b(k,150) - lu(k,1092) * b(k,138) + b(k,140) = b(k,140) - lu(k,1130) * b(k,139) + b(k,141) = b(k,141) - lu(k,1131) * b(k,139) + b(k,142) = b(k,142) - lu(k,1132) * b(k,139) + b(k,143) = b(k,143) - lu(k,1133) * b(k,139) + b(k,144) = b(k,144) - lu(k,1134) * b(k,139) + b(k,145) = b(k,145) - lu(k,1135) * b(k,139) + b(k,146) = b(k,146) - lu(k,1136) * b(k,139) + b(k,147) = b(k,147) - lu(k,1137) * b(k,139) + b(k,148) = b(k,148) - lu(k,1138) * b(k,139) + b(k,149) = b(k,149) - lu(k,1139) * b(k,139) + b(k,150) = b(k,150) - lu(k,1140) * b(k,139) + b(k,141) = b(k,141) - lu(k,1173) * b(k,140) + b(k,142) = b(k,142) - lu(k,1174) * b(k,140) + b(k,143) = b(k,143) - lu(k,1175) * b(k,140) + b(k,144) = b(k,144) - lu(k,1176) * b(k,140) + b(k,145) = b(k,145) - lu(k,1177) * b(k,140) + b(k,146) = b(k,146) - lu(k,1178) * b(k,140) + b(k,147) = b(k,147) - lu(k,1179) * b(k,140) + b(k,148) = b(k,148) - lu(k,1180) * b(k,140) + b(k,149) = b(k,149) - lu(k,1181) * b(k,140) + b(k,150) = b(k,150) - lu(k,1182) * b(k,140) + b(k,142) = b(k,142) - lu(k,1263) * b(k,141) + b(k,143) = b(k,143) - lu(k,1264) * b(k,141) + b(k,144) = b(k,144) - lu(k,1265) * b(k,141) + b(k,145) = b(k,145) - lu(k,1266) * b(k,141) + b(k,146) = b(k,146) - lu(k,1267) * b(k,141) + b(k,147) = b(k,147) - lu(k,1268) * b(k,141) + b(k,148) = b(k,148) - lu(k,1269) * b(k,141) + b(k,149) = b(k,149) - lu(k,1270) * b(k,141) + b(k,150) = b(k,150) - lu(k,1271) * b(k,141) + b(k,143) = b(k,143) - lu(k,1302) * b(k,142) + b(k,144) = b(k,144) - lu(k,1303) * b(k,142) + b(k,145) = b(k,145) - lu(k,1304) * b(k,142) + b(k,146) = b(k,146) - lu(k,1305) * b(k,142) + b(k,147) = b(k,147) - lu(k,1306) * b(k,142) + b(k,148) = b(k,148) - lu(k,1307) * b(k,142) + b(k,149) = b(k,149) - lu(k,1308) * b(k,142) + b(k,150) = b(k,150) - lu(k,1309) * b(k,142) + b(k,144) = b(k,144) - lu(k,1330) * b(k,143) + b(k,145) = b(k,145) - lu(k,1331) * b(k,143) + b(k,146) = b(k,146) - lu(k,1332) * b(k,143) + b(k,147) = b(k,147) - lu(k,1333) * b(k,143) + b(k,148) = b(k,148) - lu(k,1334) * b(k,143) + b(k,149) = b(k,149) - lu(k,1335) * b(k,143) + b(k,150) = b(k,150) - lu(k,1336) * b(k,143) + b(k,145) = b(k,145) - lu(k,1355) * b(k,144) + b(k,146) = b(k,146) - lu(k,1356) * b(k,144) + b(k,147) = b(k,147) - lu(k,1357) * b(k,144) + b(k,148) = b(k,148) - lu(k,1358) * b(k,144) + b(k,149) = b(k,149) - lu(k,1359) * b(k,144) + b(k,150) = b(k,150) - lu(k,1360) * b(k,144) + b(k,146) = b(k,146) - lu(k,1415) * b(k,145) + b(k,147) = b(k,147) - lu(k,1416) * b(k,145) + b(k,148) = b(k,148) - lu(k,1417) * b(k,145) + b(k,149) = b(k,149) - lu(k,1418) * b(k,145) + b(k,150) = b(k,150) - lu(k,1419) * b(k,145) + b(k,147) = b(k,147) - lu(k,1440) * b(k,146) + b(k,148) = b(k,148) - lu(k,1441) * b(k,146) + b(k,149) = b(k,149) - lu(k,1442) * b(k,146) + b(k,150) = b(k,150) - lu(k,1443) * b(k,146) + b(k,148) = b(k,148) - lu(k,1486) * b(k,147) + b(k,149) = b(k,149) - lu(k,1487) * b(k,147) + b(k,150) = b(k,150) - lu(k,1488) * b(k,147) + b(k,149) = b(k,149) - lu(k,1510) * b(k,148) + b(k,150) = b(k,150) - lu(k,1511) * b(k,148) + b(k,150) = b(k,150) - lu(k,1557) * b(k,149) end do end subroutine lu_slv04 subroutine lu_slv05( avec_len, lu, b ) @@ -885,246 +888,215 @@ subroutine lu_slv05( avec_len, lu, b ) !----------------------------------------------------------------------- ! ... Solve U * x = y !----------------------------------------------------------------------- - b(k,149) = b(k,149) * lu(k,1584) - b(k,148) = b(k,148) - lu(k,1583) * b(k,149) - b(k,147) = b(k,147) - lu(k,1582) * b(k,149) - b(k,146) = b(k,146) - lu(k,1581) * b(k,149) - b(k,145) = b(k,145) - lu(k,1580) * b(k,149) - b(k,144) = b(k,144) - lu(k,1579) * b(k,149) - b(k,143) = b(k,143) - lu(k,1578) * b(k,149) - b(k,142) = b(k,142) - lu(k,1577) * b(k,149) - b(k,141) = b(k,141) - lu(k,1576) * b(k,149) - b(k,140) = b(k,140) - lu(k,1575) * b(k,149) - b(k,139) = b(k,139) - lu(k,1574) * b(k,149) - b(k,138) = b(k,138) - lu(k,1573) * b(k,149) - b(k,137) = b(k,137) - lu(k,1572) * b(k,149) - b(k,136) = b(k,136) - lu(k,1571) * b(k,149) - b(k,135) = b(k,135) - lu(k,1570) * b(k,149) - b(k,134) = b(k,134) - lu(k,1569) * b(k,149) - b(k,133) = b(k,133) - lu(k,1568) * b(k,149) - b(k,132) = b(k,132) - lu(k,1567) * b(k,149) - b(k,131) = b(k,131) - lu(k,1566) * b(k,149) - b(k,130) = b(k,130) - lu(k,1565) * b(k,149) - b(k,129) = b(k,129) - lu(k,1564) * b(k,149) - b(k,128) = b(k,128) - lu(k,1563) * b(k,149) - b(k,109) = b(k,109) - lu(k,1562) * b(k,149) - b(k,104) = b(k,104) - lu(k,1561) * b(k,149) - b(k,58) = b(k,58) - lu(k,1560) * b(k,149) - b(k,55) = b(k,55) - lu(k,1559) * b(k,149) - b(k,39) = b(k,39) - lu(k,1558) * b(k,149) - b(k,148) = b(k,148) * lu(k,1556) - b(k,147) = b(k,147) - lu(k,1555) * b(k,148) - b(k,146) = b(k,146) - lu(k,1554) * b(k,148) - b(k,145) = b(k,145) - lu(k,1553) * b(k,148) - b(k,144) = b(k,144) - lu(k,1552) * b(k,148) - b(k,143) = b(k,143) - lu(k,1551) * b(k,148) - b(k,142) = b(k,142) - lu(k,1550) * b(k,148) - b(k,141) = b(k,141) - lu(k,1549) * b(k,148) - b(k,140) = b(k,140) - lu(k,1548) * b(k,148) - b(k,139) = b(k,139) - lu(k,1547) * b(k,148) - b(k,138) = b(k,138) - lu(k,1546) * b(k,148) - b(k,137) = b(k,137) - lu(k,1545) * b(k,148) - b(k,136) = b(k,136) - lu(k,1544) * b(k,148) - b(k,135) = b(k,135) - lu(k,1543) * b(k,148) - b(k,134) = b(k,134) - lu(k,1542) * b(k,148) - b(k,133) = b(k,133) - lu(k,1541) * b(k,148) - b(k,132) = b(k,132) - lu(k,1540) * b(k,148) - b(k,131) = b(k,131) - lu(k,1539) * b(k,148) - b(k,130) = b(k,130) - lu(k,1538) * b(k,148) - b(k,128) = b(k,128) - lu(k,1537) * b(k,148) - b(k,147) = b(k,147) * lu(k,1534) - b(k,146) = b(k,146) - lu(k,1533) * b(k,147) - b(k,145) = b(k,145) - lu(k,1532) * b(k,147) - b(k,144) = b(k,144) - lu(k,1531) * b(k,147) - b(k,143) = b(k,143) - lu(k,1530) * b(k,147) - b(k,142) = b(k,142) - lu(k,1529) * b(k,147) - b(k,141) = b(k,141) - lu(k,1528) * b(k,147) - b(k,140) = b(k,140) - lu(k,1527) * b(k,147) - b(k,139) = b(k,139) - lu(k,1526) * b(k,147) - b(k,138) = b(k,138) - lu(k,1525) * b(k,147) - b(k,137) = b(k,137) - lu(k,1524) * b(k,147) - b(k,136) = b(k,136) - lu(k,1523) * b(k,147) - b(k,135) = b(k,135) - lu(k,1522) * b(k,147) - b(k,134) = b(k,134) - lu(k,1521) * b(k,147) - b(k,133) = b(k,133) - lu(k,1520) * b(k,147) - b(k,132) = b(k,132) - lu(k,1519) * b(k,147) - b(k,131) = b(k,131) - lu(k,1518) * b(k,147) - b(k,130) = b(k,130) - lu(k,1517) * b(k,147) - b(k,128) = b(k,128) - lu(k,1516) * b(k,147) - b(k,127) = b(k,127) - lu(k,1515) * b(k,147) - b(k,118) = b(k,118) - lu(k,1514) * b(k,147) - b(k,104) = b(k,104) - lu(k,1513) * b(k,147) - b(k,58) = b(k,58) - lu(k,1512) * b(k,147) - b(k,146) = b(k,146) * lu(k,1508) - b(k,145) = b(k,145) - lu(k,1507) * b(k,146) - b(k,144) = b(k,144) - lu(k,1506) * b(k,146) - b(k,143) = b(k,143) - lu(k,1505) * b(k,146) - b(k,142) = b(k,142) - lu(k,1504) * b(k,146) - b(k,141) = b(k,141) - lu(k,1503) * b(k,146) - b(k,140) = b(k,140) - lu(k,1502) * b(k,146) - b(k,139) = b(k,139) - lu(k,1501) * b(k,146) - b(k,138) = b(k,138) - lu(k,1500) * b(k,146) - b(k,137) = b(k,137) - lu(k,1499) * b(k,146) - b(k,136) = b(k,136) - lu(k,1498) * b(k,146) - b(k,135) = b(k,135) - lu(k,1497) * b(k,146) - b(k,134) = b(k,134) - lu(k,1496) * b(k,146) - b(k,133) = b(k,133) - lu(k,1495) * b(k,146) - b(k,132) = b(k,132) - lu(k,1494) * b(k,146) - b(k,131) = b(k,131) - lu(k,1493) * b(k,146) - b(k,127) = b(k,127) - lu(k,1492) * b(k,146) - b(k,126) = b(k,126) - lu(k,1491) * b(k,146) - b(k,125) = b(k,125) - lu(k,1490) * b(k,146) - b(k,124) = b(k,124) - lu(k,1489) * b(k,146) - b(k,123) = b(k,123) - lu(k,1488) * b(k,146) - b(k,122) = b(k,122) - lu(k,1487) * b(k,146) - b(k,121) = b(k,121) - lu(k,1486) * b(k,146) - b(k,120) = b(k,120) - lu(k,1485) * b(k,146) - b(k,119) = b(k,119) - lu(k,1484) * b(k,146) - b(k,118) = b(k,118) - lu(k,1483) * b(k,146) - b(k,117) = b(k,117) - lu(k,1482) * b(k,146) - b(k,115) = b(k,115) - lu(k,1481) * b(k,146) - b(k,114) = b(k,114) - lu(k,1480) * b(k,146) - b(k,113) = b(k,113) - lu(k,1479) * b(k,146) - b(k,112) = b(k,112) - lu(k,1478) * b(k,146) - b(k,110) = b(k,110) - lu(k,1477) * b(k,146) - b(k,108) = b(k,108) - lu(k,1476) * b(k,146) - b(k,107) = b(k,107) - lu(k,1475) * b(k,146) - b(k,106) = b(k,106) - lu(k,1474) * b(k,146) - b(k,102) = b(k,102) - lu(k,1473) * b(k,146) - b(k,98) = b(k,98) - lu(k,1472) * b(k,146) - b(k,97) = b(k,97) - lu(k,1471) * b(k,146) - b(k,96) = b(k,96) - lu(k,1470) * b(k,146) - b(k,95) = b(k,95) - lu(k,1469) * b(k,146) - b(k,93) = b(k,93) - lu(k,1468) * b(k,146) - b(k,92) = b(k,92) - lu(k,1467) * b(k,146) - b(k,91) = b(k,91) - lu(k,1466) * b(k,146) - b(k,72) = b(k,72) - lu(k,1465) * b(k,146) - b(k,64) = b(k,64) - lu(k,1464) * b(k,146) - b(k,145) = b(k,145) * lu(k,1459) - b(k,144) = b(k,144) - lu(k,1458) * b(k,145) - b(k,143) = b(k,143) - lu(k,1457) * b(k,145) - b(k,142) = b(k,142) - lu(k,1456) * b(k,145) - b(k,141) = b(k,141) - lu(k,1455) * b(k,145) - b(k,140) = b(k,140) - lu(k,1454) * b(k,145) - b(k,139) = b(k,139) - lu(k,1453) * b(k,145) - b(k,138) = b(k,138) - lu(k,1452) * b(k,145) - b(k,137) = b(k,137) - lu(k,1451) * b(k,145) - b(k,136) = b(k,136) - lu(k,1450) * b(k,145) - b(k,135) = b(k,135) - lu(k,1449) * b(k,145) - b(k,134) = b(k,134) - lu(k,1448) * b(k,145) - b(k,133) = b(k,133) - lu(k,1447) * b(k,145) - b(k,132) = b(k,132) - lu(k,1446) * b(k,145) - b(k,131) = b(k,131) - lu(k,1445) * b(k,145) - b(k,130) = b(k,130) - lu(k,1444) * b(k,145) - b(k,129) = b(k,129) - lu(k,1443) * b(k,145) - b(k,128) = b(k,128) - lu(k,1442) * b(k,145) - b(k,127) = b(k,127) - lu(k,1441) * b(k,145) - b(k,118) = b(k,118) - lu(k,1440) * b(k,145) - b(k,111) = b(k,111) - lu(k,1439) * b(k,145) - b(k,110) = b(k,110) - lu(k,1438) * b(k,145) - b(k,109) = b(k,109) - lu(k,1437) * b(k,145) - b(k,108) = b(k,108) - lu(k,1436) * b(k,145) - b(k,107) = b(k,107) - lu(k,1435) * b(k,145) - b(k,106) = b(k,106) - lu(k,1434) * b(k,145) - b(k,105) = b(k,105) - lu(k,1433) * b(k,145) - b(k,101) = b(k,101) - lu(k,1432) * b(k,145) - b(k,100) = b(k,100) - lu(k,1431) * b(k,145) - b(k,99) = b(k,99) - lu(k,1430) * b(k,145) - b(k,94) = b(k,94) - lu(k,1429) * b(k,145) - b(k,92) = b(k,92) - lu(k,1428) * b(k,145) - b(k,90) = b(k,90) - lu(k,1427) * b(k,145) - b(k,87) = b(k,87) - lu(k,1426) * b(k,145) - b(k,84) = b(k,84) - lu(k,1425) * b(k,145) - b(k,82) = b(k,82) - lu(k,1424) * b(k,145) - b(k,77) = b(k,77) - lu(k,1423) * b(k,145) - b(k,76) = b(k,76) - lu(k,1422) * b(k,145) - b(k,65) = b(k,65) - lu(k,1421) * b(k,145) - b(k,46) = b(k,46) - lu(k,1420) * b(k,145) - b(k,45) = b(k,45) - lu(k,1419) * b(k,145) - b(k,144) = b(k,144) * lu(k,1413) - b(k,143) = b(k,143) - lu(k,1412) * b(k,144) - b(k,142) = b(k,142) - lu(k,1411) * b(k,144) - b(k,141) = b(k,141) - lu(k,1410) * b(k,144) - b(k,140) = b(k,140) - lu(k,1409) * b(k,144) - b(k,139) = b(k,139) - lu(k,1408) * b(k,144) - b(k,138) = b(k,138) - lu(k,1407) * b(k,144) - b(k,137) = b(k,137) - lu(k,1406) * b(k,144) - b(k,136) = b(k,136) - lu(k,1405) * b(k,144) - b(k,135) = b(k,135) - lu(k,1404) * b(k,144) - b(k,134) = b(k,134) - lu(k,1403) * b(k,144) - b(k,133) = b(k,133) - lu(k,1402) * b(k,144) - b(k,132) = b(k,132) - lu(k,1401) * b(k,144) - b(k,131) = b(k,131) - lu(k,1400) * b(k,144) - b(k,130) = b(k,130) - lu(k,1399) * b(k,144) - b(k,129) = b(k,129) - lu(k,1398) * b(k,144) - b(k,128) = b(k,128) - lu(k,1397) * b(k,144) - b(k,127) = b(k,127) - lu(k,1396) * b(k,144) - b(k,126) = b(k,126) - lu(k,1395) * b(k,144) - b(k,125) = b(k,125) - lu(k,1394) * b(k,144) - b(k,124) = b(k,124) - lu(k,1393) * b(k,144) - b(k,123) = b(k,123) - lu(k,1392) * b(k,144) - b(k,122) = b(k,122) - lu(k,1391) * b(k,144) - b(k,121) = b(k,121) - lu(k,1390) * b(k,144) - b(k,120) = b(k,120) - lu(k,1389) * b(k,144) - b(k,119) = b(k,119) - lu(k,1388) * b(k,144) - b(k,118) = b(k,118) - lu(k,1387) * b(k,144) - b(k,117) = b(k,117) - lu(k,1386) * b(k,144) - b(k,116) = b(k,116) - lu(k,1385) * b(k,144) - b(k,115) = b(k,115) - lu(k,1384) * b(k,144) - b(k,114) = b(k,114) - lu(k,1383) * b(k,144) - b(k,113) = b(k,113) - lu(k,1382) * b(k,144) - b(k,112) = b(k,112) - lu(k,1381) * b(k,144) - b(k,111) = b(k,111) - lu(k,1380) * b(k,144) - b(k,110) = b(k,110) - lu(k,1379) * b(k,144) - b(k,109) = b(k,109) - lu(k,1378) * b(k,144) - b(k,104) = b(k,104) - lu(k,1377) * b(k,144) - b(k,103) = b(k,103) - lu(k,1376) * b(k,144) - b(k,102) = b(k,102) - lu(k,1375) * b(k,144) - b(k,101) = b(k,101) - lu(k,1374) * b(k,144) - b(k,99) = b(k,99) - lu(k,1373) * b(k,144) - b(k,98) = b(k,98) - lu(k,1372) * b(k,144) - b(k,96) = b(k,96) - lu(k,1371) * b(k,144) - b(k,95) = b(k,95) - lu(k,1370) * b(k,144) - b(k,93) = b(k,93) - lu(k,1369) * b(k,144) - b(k,91) = b(k,91) - lu(k,1368) * b(k,144) - b(k,90) = b(k,90) - lu(k,1367) * b(k,144) - b(k,89) = b(k,89) - lu(k,1366) * b(k,144) - b(k,88) = b(k,88) - lu(k,1365) * b(k,144) - b(k,86) = b(k,86) - lu(k,1364) * b(k,144) - b(k,85) = b(k,85) - lu(k,1363) * b(k,144) - b(k,84) = b(k,84) - lu(k,1362) * b(k,144) - b(k,83) = b(k,83) - lu(k,1361) * b(k,144) - b(k,81) = b(k,81) - lu(k,1360) * b(k,144) - b(k,80) = b(k,80) - lu(k,1359) * b(k,144) - b(k,79) = b(k,79) - lu(k,1358) * b(k,144) - b(k,78) = b(k,78) - lu(k,1357) * b(k,144) - b(k,75) = b(k,75) - lu(k,1356) * b(k,144) - b(k,74) = b(k,74) - lu(k,1355) * b(k,144) - b(k,73) = b(k,73) - lu(k,1354) * b(k,144) - b(k,71) = b(k,71) - lu(k,1353) * b(k,144) - b(k,70) = b(k,70) - lu(k,1352) * b(k,144) - b(k,69) = b(k,69) - lu(k,1351) * b(k,144) - b(k,68) = b(k,68) - lu(k,1350) * b(k,144) - b(k,67) = b(k,67) - lu(k,1349) * b(k,144) - b(k,66) = b(k,66) - lu(k,1348) * b(k,144) - b(k,65) = b(k,65) - lu(k,1347) * b(k,144) - b(k,64) = b(k,64) - lu(k,1346) * b(k,144) - b(k,62) = b(k,62) - lu(k,1345) * b(k,144) - b(k,61) = b(k,61) - lu(k,1344) * b(k,144) - b(k,60) = b(k,60) - lu(k,1343) * b(k,144) - b(k,57) = b(k,57) - lu(k,1342) * b(k,144) - b(k,56) = b(k,56) - lu(k,1341) * b(k,144) - b(k,55) = b(k,55) - lu(k,1340) * b(k,144) - b(k,54) = b(k,54) - lu(k,1339) * b(k,144) - b(k,52) = b(k,52) - lu(k,1338) * b(k,144) - b(k,51) = b(k,51) - lu(k,1337) * b(k,144) - b(k,50) = b(k,50) - lu(k,1336) * b(k,144) - b(k,48) = b(k,48) - lu(k,1335) * b(k,144) - b(k,47) = b(k,47) - lu(k,1334) * b(k,144) - b(k,34) = b(k,34) - lu(k,1333) * b(k,144) - b(k,33) = b(k,33) - lu(k,1332) * b(k,144) - b(k,30) = b(k,30) - lu(k,1331) * b(k,144) - b(k,29) = b(k,29) - lu(k,1330) * b(k,144) + b(k,150) = b(k,150) * lu(k,1584) + b(k,149) = b(k,149) - lu(k,1583) * b(k,150) + b(k,148) = b(k,148) - lu(k,1582) * b(k,150) + b(k,147) = b(k,147) - lu(k,1581) * b(k,150) + b(k,146) = b(k,146) - lu(k,1580) * b(k,150) + b(k,145) = b(k,145) - lu(k,1579) * b(k,150) + b(k,144) = b(k,144) - lu(k,1578) * b(k,150) + b(k,143) = b(k,143) - lu(k,1577) * b(k,150) + b(k,142) = b(k,142) - lu(k,1576) * b(k,150) + b(k,141) = b(k,141) - lu(k,1575) * b(k,150) + b(k,140) = b(k,140) - lu(k,1574) * b(k,150) + b(k,139) = b(k,139) - lu(k,1573) * b(k,150) + b(k,138) = b(k,138) - lu(k,1572) * b(k,150) + b(k,137) = b(k,137) - lu(k,1571) * b(k,150) + b(k,136) = b(k,136) - lu(k,1570) * b(k,150) + b(k,135) = b(k,135) - lu(k,1569) * b(k,150) + b(k,134) = b(k,134) - lu(k,1568) * b(k,150) + b(k,133) = b(k,133) - lu(k,1567) * b(k,150) + b(k,132) = b(k,132) - lu(k,1566) * b(k,150) + b(k,131) = b(k,131) - lu(k,1565) * b(k,150) + b(k,130) = b(k,130) - lu(k,1564) * b(k,150) + b(k,129) = b(k,129) - lu(k,1563) * b(k,150) + b(k,110) = b(k,110) - lu(k,1562) * b(k,150) + b(k,105) = b(k,105) - lu(k,1561) * b(k,150) + b(k,59) = b(k,59) - lu(k,1560) * b(k,150) + b(k,56) = b(k,56) - lu(k,1559) * b(k,150) + b(k,40) = b(k,40) - lu(k,1558) * b(k,150) + b(k,149) = b(k,149) * lu(k,1556) + b(k,148) = b(k,148) - lu(k,1555) * b(k,149) + b(k,147) = b(k,147) - lu(k,1554) * b(k,149) + b(k,146) = b(k,146) - lu(k,1553) * b(k,149) + b(k,145) = b(k,145) - lu(k,1552) * b(k,149) + b(k,144) = b(k,144) - lu(k,1551) * b(k,149) + b(k,143) = b(k,143) - lu(k,1550) * b(k,149) + b(k,142) = b(k,142) - lu(k,1549) * b(k,149) + b(k,141) = b(k,141) - lu(k,1548) * b(k,149) + b(k,140) = b(k,140) - lu(k,1547) * b(k,149) + b(k,139) = b(k,139) - lu(k,1546) * b(k,149) + b(k,138) = b(k,138) - lu(k,1545) * b(k,149) + b(k,137) = b(k,137) - lu(k,1544) * b(k,149) + b(k,136) = b(k,136) - lu(k,1543) * b(k,149) + b(k,135) = b(k,135) - lu(k,1542) * b(k,149) + b(k,134) = b(k,134) - lu(k,1541) * b(k,149) + b(k,133) = b(k,133) - lu(k,1540) * b(k,149) + b(k,132) = b(k,132) - lu(k,1539) * b(k,149) + b(k,130) = b(k,130) - lu(k,1538) * b(k,149) + b(k,128) = b(k,128) - lu(k,1537) * b(k,149) + b(k,127) = b(k,127) - lu(k,1536) * b(k,149) + b(k,126) = b(k,126) - lu(k,1535) * b(k,149) + b(k,125) = b(k,125) - lu(k,1534) * b(k,149) + b(k,124) = b(k,124) - lu(k,1533) * b(k,149) + b(k,123) = b(k,123) - lu(k,1532) * b(k,149) + b(k,122) = b(k,122) - lu(k,1531) * b(k,149) + b(k,121) = b(k,121) - lu(k,1530) * b(k,149) + b(k,120) = b(k,120) - lu(k,1529) * b(k,149) + b(k,119) = b(k,119) - lu(k,1528) * b(k,149) + b(k,118) = b(k,118) - lu(k,1527) * b(k,149) + b(k,117) = b(k,117) - lu(k,1526) * b(k,149) + b(k,116) = b(k,116) - lu(k,1525) * b(k,149) + b(k,115) = b(k,115) - lu(k,1524) * b(k,149) + b(k,114) = b(k,114) - lu(k,1523) * b(k,149) + b(k,113) = b(k,113) - lu(k,1522) * b(k,149) + b(k,110) = b(k,110) - lu(k,1521) * b(k,149) + b(k,104) = b(k,104) - lu(k,1520) * b(k,149) + b(k,96) = b(k,96) - lu(k,1519) * b(k,149) + b(k,94) = b(k,94) - lu(k,1518) * b(k,149) + b(k,91) = b(k,91) - lu(k,1517) * b(k,149) + b(k,90) = b(k,90) - lu(k,1516) * b(k,149) + b(k,89) = b(k,89) - lu(k,1515) * b(k,149) + b(k,74) = b(k,74) - lu(k,1514) * b(k,149) + b(k,47) = b(k,47) - lu(k,1513) * b(k,149) + b(k,46) = b(k,46) - lu(k,1512) * b(k,149) + b(k,148) = b(k,148) * lu(k,1509) + b(k,147) = b(k,147) - lu(k,1508) * b(k,148) + b(k,146) = b(k,146) - lu(k,1507) * b(k,148) + b(k,145) = b(k,145) - lu(k,1506) * b(k,148) + b(k,144) = b(k,144) - lu(k,1505) * b(k,148) + b(k,143) = b(k,143) - lu(k,1504) * b(k,148) + b(k,142) = b(k,142) - lu(k,1503) * b(k,148) + b(k,141) = b(k,141) - lu(k,1502) * b(k,148) + b(k,140) = b(k,140) - lu(k,1501) * b(k,148) + b(k,139) = b(k,139) - lu(k,1500) * b(k,148) + b(k,138) = b(k,138) - lu(k,1499) * b(k,148) + b(k,137) = b(k,137) - lu(k,1498) * b(k,148) + b(k,136) = b(k,136) - lu(k,1497) * b(k,148) + b(k,135) = b(k,135) - lu(k,1496) * b(k,148) + b(k,134) = b(k,134) - lu(k,1495) * b(k,148) + b(k,133) = b(k,133) - lu(k,1494) * b(k,148) + b(k,132) = b(k,132) - lu(k,1493) * b(k,148) + b(k,131) = b(k,131) - lu(k,1492) * b(k,148) + b(k,129) = b(k,129) - lu(k,1491) * b(k,148) + b(k,105) = b(k,105) - lu(k,1490) * b(k,148) + b(k,59) = b(k,59) - lu(k,1489) * b(k,148) + b(k,147) = b(k,147) * lu(k,1485) + b(k,146) = b(k,146) - lu(k,1484) * b(k,147) + b(k,145) = b(k,145) - lu(k,1483) * b(k,147) + b(k,144) = b(k,144) - lu(k,1482) * b(k,147) + b(k,143) = b(k,143) - lu(k,1481) * b(k,147) + b(k,142) = b(k,142) - lu(k,1480) * b(k,147) + b(k,141) = b(k,141) - lu(k,1479) * b(k,147) + b(k,140) = b(k,140) - lu(k,1478) * b(k,147) + b(k,139) = b(k,139) - lu(k,1477) * b(k,147) + b(k,138) = b(k,138) - lu(k,1476) * b(k,147) + b(k,137) = b(k,137) - lu(k,1475) * b(k,147) + b(k,136) = b(k,136) - lu(k,1474) * b(k,147) + b(k,135) = b(k,135) - lu(k,1473) * b(k,147) + b(k,134) = b(k,134) - lu(k,1472) * b(k,147) + b(k,133) = b(k,133) - lu(k,1471) * b(k,147) + b(k,132) = b(k,132) - lu(k,1470) * b(k,147) + b(k,131) = b(k,131) - lu(k,1469) * b(k,147) + b(k,130) = b(k,130) - lu(k,1468) * b(k,147) + b(k,129) = b(k,129) - lu(k,1467) * b(k,147) + b(k,128) = b(k,128) - lu(k,1466) * b(k,147) + b(k,119) = b(k,119) - lu(k,1465) * b(k,147) + b(k,112) = b(k,112) - lu(k,1464) * b(k,147) + b(k,111) = b(k,111) - lu(k,1463) * b(k,147) + b(k,110) = b(k,110) - lu(k,1462) * b(k,147) + b(k,109) = b(k,109) - lu(k,1461) * b(k,147) + b(k,108) = b(k,108) - lu(k,1460) * b(k,147) + b(k,107) = b(k,107) - lu(k,1459) * b(k,147) + b(k,106) = b(k,106) - lu(k,1458) * b(k,147) + b(k,102) = b(k,102) - lu(k,1457) * b(k,147) + b(k,101) = b(k,101) - lu(k,1456) * b(k,147) + b(k,100) = b(k,100) - lu(k,1455) * b(k,147) + b(k,95) = b(k,95) - lu(k,1454) * b(k,147) + b(k,93) = b(k,93) - lu(k,1453) * b(k,147) + b(k,91) = b(k,91) - lu(k,1452) * b(k,147) + b(k,88) = b(k,88) - lu(k,1451) * b(k,147) + b(k,86) = b(k,86) - lu(k,1450) * b(k,147) + b(k,79) = b(k,79) - lu(k,1449) * b(k,147) + b(k,78) = b(k,78) - lu(k,1448) * b(k,147) + b(k,77) = b(k,77) - lu(k,1447) * b(k,147) + b(k,67) = b(k,67) - lu(k,1446) * b(k,147) + b(k,47) = b(k,47) - lu(k,1445) * b(k,147) + b(k,46) = b(k,46) - lu(k,1444) * b(k,147) + b(k,146) = b(k,146) * lu(k,1439) + b(k,145) = b(k,145) - lu(k,1438) * b(k,146) + b(k,144) = b(k,144) - lu(k,1437) * b(k,146) + b(k,143) = b(k,143) - lu(k,1436) * b(k,146) + b(k,142) = b(k,142) - lu(k,1435) * b(k,146) + b(k,141) = b(k,141) - lu(k,1434) * b(k,146) + b(k,140) = b(k,140) - lu(k,1433) * b(k,146) + b(k,139) = b(k,139) - lu(k,1432) * b(k,146) + b(k,138) = b(k,138) - lu(k,1431) * b(k,146) + b(k,137) = b(k,137) - lu(k,1430) * b(k,146) + b(k,136) = b(k,136) - lu(k,1429) * b(k,146) + b(k,135) = b(k,135) - lu(k,1428) * b(k,146) + b(k,134) = b(k,134) - lu(k,1427) * b(k,146) + b(k,133) = b(k,133) - lu(k,1426) * b(k,146) + b(k,132) = b(k,132) - lu(k,1425) * b(k,146) + b(k,131) = b(k,131) - lu(k,1424) * b(k,146) + b(k,129) = b(k,129) - lu(k,1423) * b(k,146) + b(k,128) = b(k,128) - lu(k,1422) * b(k,146) + b(k,119) = b(k,119) - lu(k,1421) * b(k,146) + b(k,102) = b(k,102) - lu(k,1420) * b(k,146) + b(k,145) = b(k,145) * lu(k,1414) + b(k,144) = b(k,144) - lu(k,1413) * b(k,145) + b(k,143) = b(k,143) - lu(k,1412) * b(k,145) + b(k,142) = b(k,142) - lu(k,1411) * b(k,145) + b(k,141) = b(k,141) - lu(k,1410) * b(k,145) + b(k,140) = b(k,140) - lu(k,1409) * b(k,145) + b(k,139) = b(k,139) - lu(k,1408) * b(k,145) + b(k,138) = b(k,138) - lu(k,1407) * b(k,145) + b(k,137) = b(k,137) - lu(k,1406) * b(k,145) + b(k,136) = b(k,136) - lu(k,1405) * b(k,145) + b(k,135) = b(k,135) - lu(k,1404) * b(k,145) + b(k,134) = b(k,134) - lu(k,1403) * b(k,145) + b(k,133) = b(k,133) - lu(k,1402) * b(k,145) + b(k,132) = b(k,132) - lu(k,1401) * b(k,145) + b(k,131) = b(k,131) - lu(k,1400) * b(k,145) + b(k,129) = b(k,129) - lu(k,1399) * b(k,145) + b(k,128) = b(k,128) - lu(k,1398) * b(k,145) + b(k,127) = b(k,127) - lu(k,1397) * b(k,145) + b(k,126) = b(k,126) - lu(k,1396) * b(k,145) + b(k,125) = b(k,125) - lu(k,1395) * b(k,145) + b(k,124) = b(k,124) - lu(k,1394) * b(k,145) + b(k,123) = b(k,123) - lu(k,1393) * b(k,145) + b(k,122) = b(k,122) - lu(k,1392) * b(k,145) + b(k,121) = b(k,121) - lu(k,1391) * b(k,145) + b(k,120) = b(k,120) - lu(k,1390) * b(k,145) + b(k,119) = b(k,119) - lu(k,1389) * b(k,145) + b(k,118) = b(k,118) - lu(k,1388) * b(k,145) + b(k,116) = b(k,116) - lu(k,1387) * b(k,145) + b(k,115) = b(k,115) - lu(k,1386) * b(k,145) + b(k,114) = b(k,114) - lu(k,1385) * b(k,145) + b(k,113) = b(k,113) - lu(k,1384) * b(k,145) + b(k,103) = b(k,103) - lu(k,1383) * b(k,145) + b(k,102) = b(k,102) - lu(k,1382) * b(k,145) + b(k,100) = b(k,100) - lu(k,1381) * b(k,145) + b(k,99) = b(k,99) - lu(k,1380) * b(k,145) + b(k,98) = b(k,98) - lu(k,1379) * b(k,145) + b(k,97) = b(k,97) - lu(k,1378) * b(k,145) + b(k,96) = b(k,96) - lu(k,1377) * b(k,145) + b(k,95) = b(k,95) - lu(k,1376) * b(k,145) + b(k,94) = b(k,94) - lu(k,1375) * b(k,145) + b(k,90) = b(k,90) - lu(k,1374) * b(k,145) + b(k,86) = b(k,86) - lu(k,1373) * b(k,145) + b(k,85) = b(k,85) - lu(k,1372) * b(k,145) + b(k,83) = b(k,83) - lu(k,1371) * b(k,145) + b(k,82) = b(k,82) - lu(k,1370) * b(k,145) + b(k,75) = b(k,75) - lu(k,1369) * b(k,145) + b(k,73) = b(k,73) - lu(k,1368) * b(k,145) + b(k,71) = b(k,71) - lu(k,1367) * b(k,145) + b(k,70) = b(k,70) - lu(k,1366) * b(k,145) + b(k,69) = b(k,69) - lu(k,1365) * b(k,145) + b(k,63) = b(k,63) - lu(k,1364) * b(k,145) + b(k,62) = b(k,62) - lu(k,1363) * b(k,145) + b(k,48) = b(k,48) - lu(k,1362) * b(k,145) + b(k,39) = b(k,39) - lu(k,1361) * b(k,145) end do end subroutine lu_slv05 subroutine lu_slv06( avec_len, lu, b ) @@ -1145,238 +1117,223 @@ subroutine lu_slv06( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,143) = b(k,143) * lu(k,1323) - b(k,142) = b(k,142) - lu(k,1322) * b(k,143) - b(k,141) = b(k,141) - lu(k,1321) * b(k,143) - b(k,140) = b(k,140) - lu(k,1320) * b(k,143) - b(k,139) = b(k,139) - lu(k,1319) * b(k,143) - b(k,138) = b(k,138) - lu(k,1318) * b(k,143) - b(k,137) = b(k,137) - lu(k,1317) * b(k,143) - b(k,136) = b(k,136) - lu(k,1316) * b(k,143) - b(k,135) = b(k,135) - lu(k,1315) * b(k,143) - b(k,134) = b(k,134) - lu(k,1314) * b(k,143) - b(k,133) = b(k,133) - lu(k,1313) * b(k,143) - b(k,132) = b(k,132) - lu(k,1312) * b(k,143) - b(k,131) = b(k,131) - lu(k,1311) * b(k,143) - b(k,130) = b(k,130) - lu(k,1310) * b(k,143) - b(k,128) = b(k,128) - lu(k,1309) * b(k,143) - b(k,127) = b(k,127) - lu(k,1308) * b(k,143) - b(k,126) = b(k,126) - lu(k,1307) * b(k,143) - b(k,118) = b(k,118) - lu(k,1306) * b(k,143) - b(k,117) = b(k,117) - lu(k,1305) * b(k,143) - b(k,114) = b(k,114) - lu(k,1304) * b(k,143) - b(k,111) = b(k,111) - lu(k,1303) * b(k,143) - b(k,101) = b(k,101) - lu(k,1302) * b(k,143) - b(k,98) = b(k,98) - lu(k,1301) * b(k,143) - b(k,93) = b(k,93) - lu(k,1300) * b(k,143) - b(k,86) = b(k,86) - lu(k,1299) * b(k,143) - b(k,84) = b(k,84) - lu(k,1298) * b(k,143) - b(k,75) = b(k,75) - lu(k,1297) * b(k,143) - b(k,74) = b(k,74) - lu(k,1296) * b(k,143) - b(k,71) = b(k,71) - lu(k,1295) * b(k,143) - b(k,66) = b(k,66) - lu(k,1294) * b(k,143) - b(k,60) = b(k,60) - lu(k,1293) * b(k,143) - b(k,44) = b(k,44) - lu(k,1292) * b(k,143) - b(k,142) = b(k,142) * lu(k,1284) - b(k,141) = b(k,141) - lu(k,1283) * b(k,142) - b(k,140) = b(k,140) - lu(k,1282) * b(k,142) - b(k,139) = b(k,139) - lu(k,1281) * b(k,142) - b(k,138) = b(k,138) - lu(k,1280) * b(k,142) - b(k,137) = b(k,137) - lu(k,1279) * b(k,142) - b(k,136) = b(k,136) - lu(k,1278) * b(k,142) - b(k,135) = b(k,135) - lu(k,1277) * b(k,142) - b(k,134) = b(k,134) - lu(k,1276) * b(k,142) - b(k,133) = b(k,133) - lu(k,1275) * b(k,142) - b(k,132) = b(k,132) - lu(k,1274) * b(k,142) - b(k,131) = b(k,131) - lu(k,1273) * b(k,142) - b(k,130) = b(k,130) - lu(k,1272) * b(k,142) - b(k,128) = b(k,128) - lu(k,1271) * b(k,142) - b(k,104) = b(k,104) - lu(k,1270) * b(k,142) - b(k,99) = b(k,99) - lu(k,1269) * b(k,142) - b(k,86) = b(k,86) - lu(k,1268) * b(k,142) - b(k,75) = b(k,75) - lu(k,1267) * b(k,142) - b(k,71) = b(k,71) - lu(k,1266) * b(k,142) - b(k,57) = b(k,57) - lu(k,1265) * b(k,142) - b(k,53) = b(k,53) - lu(k,1264) * b(k,142) - b(k,52) = b(k,52) - lu(k,1263) * b(k,142) - b(k,51) = b(k,51) - lu(k,1262) * b(k,142) - b(k,50) = b(k,50) - lu(k,1261) * b(k,142) - b(k,48) = b(k,48) - lu(k,1260) * b(k,142) - b(k,46) = b(k,46) - lu(k,1259) * b(k,142) - b(k,43) = b(k,43) - lu(k,1258) * b(k,142) - b(k,42) = b(k,42) - lu(k,1257) * b(k,142) - b(k,41) = b(k,41) - lu(k,1256) * b(k,142) - b(k,40) = b(k,40) - lu(k,1255) * b(k,142) - b(k,37) = b(k,37) - lu(k,1254) * b(k,142) - b(k,36) = b(k,36) - lu(k,1253) * b(k,142) - b(k,35) = b(k,35) - lu(k,1252) * b(k,142) - b(k,32) = b(k,32) - lu(k,1251) * b(k,142) - b(k,31) = b(k,31) - lu(k,1250) * b(k,142) - b(k,141) = b(k,141) * lu(k,1241) - b(k,140) = b(k,140) - lu(k,1240) * b(k,141) - b(k,139) = b(k,139) - lu(k,1239) * b(k,141) - b(k,138) = b(k,138) - lu(k,1238) * b(k,141) - b(k,137) = b(k,137) - lu(k,1237) * b(k,141) - b(k,136) = b(k,136) - lu(k,1236) * b(k,141) - b(k,135) = b(k,135) - lu(k,1235) * b(k,141) - b(k,134) = b(k,134) - lu(k,1234) * b(k,141) - b(k,133) = b(k,133) - lu(k,1233) * b(k,141) - b(k,132) = b(k,132) - lu(k,1232) * b(k,141) - b(k,131) = b(k,131) - lu(k,1231) * b(k,141) - b(k,129) = b(k,129) - lu(k,1230) * b(k,141) - b(k,127) = b(k,127) - lu(k,1229) * b(k,141) - b(k,126) = b(k,126) - lu(k,1228) * b(k,141) - b(k,125) = b(k,125) - lu(k,1227) * b(k,141) - b(k,124) = b(k,124) - lu(k,1226) * b(k,141) - b(k,123) = b(k,123) - lu(k,1225) * b(k,141) - b(k,122) = b(k,122) - lu(k,1224) * b(k,141) - b(k,121) = b(k,121) - lu(k,1223) * b(k,141) - b(k,120) = b(k,120) - lu(k,1222) * b(k,141) - b(k,119) = b(k,119) - lu(k,1221) * b(k,141) - b(k,118) = b(k,118) - lu(k,1220) * b(k,141) - b(k,117) = b(k,117) - lu(k,1219) * b(k,141) - b(k,116) = b(k,116) - lu(k,1218) * b(k,141) - b(k,115) = b(k,115) - lu(k,1217) * b(k,141) - b(k,114) = b(k,114) - lu(k,1216) * b(k,141) - b(k,113) = b(k,113) - lu(k,1215) * b(k,141) - b(k,112) = b(k,112) - lu(k,1214) * b(k,141) - b(k,109) = b(k,109) - lu(k,1213) * b(k,141) - b(k,103) = b(k,103) - lu(k,1212) * b(k,141) - b(k,97) = b(k,97) - lu(k,1211) * b(k,141) - b(k,95) = b(k,95) - lu(k,1210) * b(k,141) - b(k,91) = b(k,91) - lu(k,1209) * b(k,141) - b(k,88) = b(k,88) - lu(k,1208) * b(k,141) - b(k,67) = b(k,67) - lu(k,1207) * b(k,141) - b(k,64) = b(k,64) - lu(k,1206) * b(k,141) - b(k,59) = b(k,59) - lu(k,1205) * b(k,141) - b(k,56) = b(k,56) - lu(k,1204) * b(k,141) - b(k,140) = b(k,140) * lu(k,1194) - b(k,139) = b(k,139) - lu(k,1193) * b(k,140) - b(k,138) = b(k,138) - lu(k,1192) * b(k,140) - b(k,137) = b(k,137) - lu(k,1191) * b(k,140) - b(k,136) = b(k,136) - lu(k,1190) * b(k,140) - b(k,135) = b(k,135) - lu(k,1189) * b(k,140) - b(k,134) = b(k,134) - lu(k,1188) * b(k,140) - b(k,133) = b(k,133) - lu(k,1187) * b(k,140) - b(k,132) = b(k,132) - lu(k,1186) * b(k,140) - b(k,127) = b(k,127) - lu(k,1185) * b(k,140) - b(k,126) = b(k,126) - lu(k,1184) * b(k,140) - b(k,125) = b(k,125) - lu(k,1183) * b(k,140) - b(k,124) = b(k,124) - lu(k,1182) * b(k,140) - b(k,123) = b(k,123) - lu(k,1181) * b(k,140) - b(k,122) = b(k,122) - lu(k,1180) * b(k,140) - b(k,121) = b(k,121) - lu(k,1179) * b(k,140) - b(k,120) = b(k,120) - lu(k,1178) * b(k,140) - b(k,119) = b(k,119) - lu(k,1177) * b(k,140) - b(k,118) = b(k,118) - lu(k,1176) * b(k,140) - b(k,117) = b(k,117) - lu(k,1175) * b(k,140) - b(k,115) = b(k,115) - lu(k,1174) * b(k,140) - b(k,114) = b(k,114) - lu(k,1173) * b(k,140) - b(k,113) = b(k,113) - lu(k,1172) * b(k,140) - b(k,102) = b(k,102) - lu(k,1171) * b(k,140) - b(k,98) = b(k,98) - lu(k,1170) * b(k,140) - b(k,95) = b(k,95) - lu(k,1169) * b(k,140) - b(k,91) = b(k,91) - lu(k,1168) * b(k,140) - b(k,89) = b(k,89) - lu(k,1167) * b(k,140) - b(k,80) = b(k,80) - lu(k,1166) * b(k,140) - b(k,69) = b(k,69) - lu(k,1165) * b(k,140) - b(k,64) = b(k,64) - lu(k,1164) * b(k,140) - b(k,54) = b(k,54) - lu(k,1163) * b(k,140) - b(k,139) = b(k,139) * lu(k,1152) - b(k,138) = b(k,138) - lu(k,1151) * b(k,139) - b(k,137) = b(k,137) - lu(k,1150) * b(k,139) - b(k,136) = b(k,136) - lu(k,1149) * b(k,139) - b(k,135) = b(k,135) - lu(k,1148) * b(k,139) - b(k,134) = b(k,134) - lu(k,1147) * b(k,139) - b(k,133) = b(k,133) - lu(k,1146) * b(k,139) - b(k,132) = b(k,132) - lu(k,1145) * b(k,139) - b(k,131) = b(k,131) - lu(k,1144) * b(k,139) - b(k,130) = b(k,130) - lu(k,1143) * b(k,139) - b(k,128) = b(k,128) - lu(k,1142) * b(k,139) - b(k,104) = b(k,104) - lu(k,1141) * b(k,139) - b(k,58) = b(k,58) - lu(k,1140) * b(k,139) - b(k,138) = b(k,138) * lu(k,1128) - b(k,137) = b(k,137) - lu(k,1127) * b(k,138) - b(k,136) = b(k,136) - lu(k,1126) * b(k,138) - b(k,135) = b(k,135) - lu(k,1125) * b(k,138) - b(k,134) = b(k,134) - lu(k,1124) * b(k,138) - b(k,133) = b(k,133) - lu(k,1123) * b(k,138) - b(k,132) = b(k,132) - lu(k,1122) * b(k,138) - b(k,131) = b(k,131) - lu(k,1121) * b(k,138) - b(k,129) = b(k,129) - lu(k,1120) * b(k,138) - b(k,127) = b(k,127) - lu(k,1119) * b(k,138) - b(k,126) = b(k,126) - lu(k,1118) * b(k,138) - b(k,125) = b(k,125) - lu(k,1117) * b(k,138) - b(k,124) = b(k,124) - lu(k,1116) * b(k,138) - b(k,123) = b(k,123) - lu(k,1115) * b(k,138) - b(k,122) = b(k,122) - lu(k,1114) * b(k,138) - b(k,121) = b(k,121) - lu(k,1113) * b(k,138) - b(k,120) = b(k,120) - lu(k,1112) * b(k,138) - b(k,119) = b(k,119) - lu(k,1111) * b(k,138) - b(k,118) = b(k,118) - lu(k,1110) * b(k,138) - b(k,117) = b(k,117) - lu(k,1109) * b(k,138) - b(k,116) = b(k,116) - lu(k,1108) * b(k,138) - b(k,115) = b(k,115) - lu(k,1107) * b(k,138) - b(k,114) = b(k,114) - lu(k,1106) * b(k,138) - b(k,113) = b(k,113) - lu(k,1105) * b(k,138) - b(k,112) = b(k,112) - lu(k,1104) * b(k,138) - b(k,109) = b(k,109) - lu(k,1103) * b(k,138) - b(k,103) = b(k,103) - lu(k,1102) * b(k,138) - b(k,95) = b(k,95) - lu(k,1101) * b(k,138) - b(k,93) = b(k,93) - lu(k,1100) * b(k,138) - b(k,90) = b(k,90) - lu(k,1099) * b(k,138) - b(k,89) = b(k,89) - lu(k,1098) * b(k,138) - b(k,88) = b(k,88) - lu(k,1097) * b(k,138) - b(k,74) = b(k,74) - lu(k,1096) * b(k,138) - b(k,46) = b(k,46) - lu(k,1095) * b(k,138) - b(k,45) = b(k,45) - lu(k,1094) * b(k,138) - b(k,137) = b(k,137) * lu(k,1081) - b(k,136) = b(k,136) - lu(k,1080) * b(k,137) - b(k,135) = b(k,135) - lu(k,1079) * b(k,137) - b(k,134) = b(k,134) - lu(k,1078) * b(k,137) - b(k,133) = b(k,133) - lu(k,1077) * b(k,137) - b(k,132) = b(k,132) - lu(k,1076) * b(k,137) - b(k,131) = b(k,131) - lu(k,1075) * b(k,137) - b(k,130) = b(k,130) - lu(k,1074) * b(k,137) - b(k,128) = b(k,128) - lu(k,1073) * b(k,137) - b(k,127) = b(k,127) - lu(k,1072) * b(k,137) - b(k,126) = b(k,126) - lu(k,1071) * b(k,137) - b(k,125) = b(k,125) - lu(k,1070) * b(k,137) - b(k,124) = b(k,124) - lu(k,1069) * b(k,137) - b(k,123) = b(k,123) - lu(k,1068) * b(k,137) - b(k,122) = b(k,122) - lu(k,1067) * b(k,137) - b(k,121) = b(k,121) - lu(k,1066) * b(k,137) - b(k,120) = b(k,120) - lu(k,1065) * b(k,137) - b(k,119) = b(k,119) - lu(k,1064) * b(k,137) - b(k,118) = b(k,118) - lu(k,1063) * b(k,137) - b(k,117) = b(k,117) - lu(k,1062) * b(k,137) - b(k,115) = b(k,115) - lu(k,1061) * b(k,137) - b(k,114) = b(k,114) - lu(k,1060) * b(k,137) - b(k,113) = b(k,113) - lu(k,1059) * b(k,137) - b(k,112) = b(k,112) - lu(k,1058) * b(k,137) - b(k,102) = b(k,102) - lu(k,1057) * b(k,137) - b(k,101) = b(k,101) - lu(k,1056) * b(k,137) - b(k,99) = b(k,99) - lu(k,1055) * b(k,137) - b(k,98) = b(k,98) - lu(k,1054) * b(k,137) - b(k,97) = b(k,97) - lu(k,1053) * b(k,137) - b(k,96) = b(k,96) - lu(k,1052) * b(k,137) - b(k,95) = b(k,95) - lu(k,1051) * b(k,137) - b(k,94) = b(k,94) - lu(k,1050) * b(k,137) - b(k,93) = b(k,93) - lu(k,1049) * b(k,137) - b(k,89) = b(k,89) - lu(k,1048) * b(k,137) - b(k,85) = b(k,85) - lu(k,1047) * b(k,137) - b(k,84) = b(k,84) - lu(k,1046) * b(k,137) - b(k,81) = b(k,81) - lu(k,1045) * b(k,137) - b(k,78) = b(k,78) - lu(k,1044) * b(k,137) - b(k,73) = b(k,73) - lu(k,1043) * b(k,137) - b(k,72) = b(k,72) - lu(k,1042) * b(k,137) - b(k,70) = b(k,70) - lu(k,1041) * b(k,137) - b(k,69) = b(k,69) - lu(k,1040) * b(k,137) - b(k,68) = b(k,68) - lu(k,1039) * b(k,137) - b(k,62) = b(k,62) - lu(k,1038) * b(k,137) - b(k,61) = b(k,61) - lu(k,1037) * b(k,137) - b(k,47) = b(k,47) - lu(k,1036) * b(k,137) - b(k,38) = b(k,38) - lu(k,1035) * b(k,137) + b(k,144) = b(k,144) * lu(k,1354) + b(k,143) = b(k,143) - lu(k,1353) * b(k,144) + b(k,142) = b(k,142) - lu(k,1352) * b(k,144) + b(k,141) = b(k,141) - lu(k,1351) * b(k,144) + b(k,140) = b(k,140) - lu(k,1350) * b(k,144) + b(k,139) = b(k,139) - lu(k,1349) * b(k,144) + b(k,138) = b(k,138) - lu(k,1348) * b(k,144) + b(k,137) = b(k,137) - lu(k,1347) * b(k,144) + b(k,136) = b(k,136) - lu(k,1346) * b(k,144) + b(k,133) = b(k,133) - lu(k,1345) * b(k,144) + b(k,132) = b(k,132) - lu(k,1344) * b(k,144) + b(k,131) = b(k,131) - lu(k,1343) * b(k,144) + b(k,130) = b(k,130) - lu(k,1342) * b(k,144) + b(k,110) = b(k,110) - lu(k,1341) * b(k,144) + b(k,95) = b(k,95) - lu(k,1340) * b(k,144) + b(k,79) = b(k,79) - lu(k,1339) * b(k,144) + b(k,64) = b(k,64) - lu(k,1338) * b(k,144) + b(k,49) = b(k,49) - lu(k,1337) * b(k,144) + b(k,143) = b(k,143) * lu(k,1329) + b(k,142) = b(k,142) - lu(k,1328) * b(k,143) + b(k,141) = b(k,141) - lu(k,1327) * b(k,143) + b(k,140) = b(k,140) - lu(k,1326) * b(k,143) + b(k,139) = b(k,139) - lu(k,1325) * b(k,143) + b(k,138) = b(k,138) - lu(k,1324) * b(k,143) + b(k,137) = b(k,137) - lu(k,1323) * b(k,143) + b(k,136) = b(k,136) - lu(k,1322) * b(k,143) + b(k,135) = b(k,135) - lu(k,1321) * b(k,143) + b(k,133) = b(k,133) - lu(k,1320) * b(k,143) + b(k,132) = b(k,132) - lu(k,1319) * b(k,143) + b(k,131) = b(k,131) - lu(k,1318) * b(k,143) + b(k,130) = b(k,130) - lu(k,1317) * b(k,143) + b(k,111) = b(k,111) - lu(k,1316) * b(k,143) + b(k,110) = b(k,110) - lu(k,1315) * b(k,143) + b(k,100) = b(k,100) - lu(k,1314) * b(k,143) + b(k,64) = b(k,64) - lu(k,1313) * b(k,143) + b(k,49) = b(k,49) - lu(k,1312) * b(k,143) + b(k,45) = b(k,45) - lu(k,1311) * b(k,143) + b(k,29) = b(k,29) - lu(k,1310) * b(k,143) + b(k,142) = b(k,142) * lu(k,1301) + b(k,141) = b(k,141) - lu(k,1300) * b(k,142) + b(k,140) = b(k,140) - lu(k,1299) * b(k,142) + b(k,139) = b(k,139) - lu(k,1298) * b(k,142) + b(k,138) = b(k,138) - lu(k,1297) * b(k,142) + b(k,137) = b(k,137) - lu(k,1296) * b(k,142) + b(k,136) = b(k,136) - lu(k,1295) * b(k,142) + b(k,135) = b(k,135) - lu(k,1294) * b(k,142) + b(k,134) = b(k,134) - lu(k,1293) * b(k,142) + b(k,133) = b(k,133) - lu(k,1292) * b(k,142) + b(k,132) = b(k,132) - lu(k,1291) * b(k,142) + b(k,131) = b(k,131) - lu(k,1290) * b(k,142) + b(k,129) = b(k,129) - lu(k,1289) * b(k,142) + b(k,128) = b(k,128) - lu(k,1288) * b(k,142) + b(k,127) = b(k,127) - lu(k,1287) * b(k,142) + b(k,119) = b(k,119) - lu(k,1286) * b(k,142) + b(k,118) = b(k,118) - lu(k,1285) * b(k,142) + b(k,114) = b(k,114) - lu(k,1284) * b(k,142) + b(k,111) = b(k,111) - lu(k,1283) * b(k,142) + b(k,100) = b(k,100) - lu(k,1282) * b(k,142) + b(k,99) = b(k,99) - lu(k,1281) * b(k,142) + b(k,96) = b(k,96) - lu(k,1280) * b(k,142) + b(k,87) = b(k,87) - lu(k,1279) * b(k,142) + b(k,86) = b(k,86) - lu(k,1278) * b(k,142) + b(k,76) = b(k,76) - lu(k,1277) * b(k,142) + b(k,74) = b(k,74) - lu(k,1276) * b(k,142) + b(k,72) = b(k,72) - lu(k,1275) * b(k,142) + b(k,66) = b(k,66) - lu(k,1274) * b(k,142) + b(k,61) = b(k,61) - lu(k,1273) * b(k,142) + b(k,45) = b(k,45) - lu(k,1272) * b(k,142) + b(k,141) = b(k,141) * lu(k,1262) + b(k,140) = b(k,140) - lu(k,1261) * b(k,141) + b(k,139) = b(k,139) - lu(k,1260) * b(k,141) + b(k,138) = b(k,138) - lu(k,1259) * b(k,141) + b(k,137) = b(k,137) - lu(k,1258) * b(k,141) + b(k,136) = b(k,136) - lu(k,1257) * b(k,141) + b(k,135) = b(k,135) - lu(k,1256) * b(k,141) + b(k,134) = b(k,134) - lu(k,1255) * b(k,141) + b(k,133) = b(k,133) - lu(k,1254) * b(k,141) + b(k,132) = b(k,132) - lu(k,1253) * b(k,141) + b(k,131) = b(k,131) - lu(k,1252) * b(k,141) + b(k,130) = b(k,130) - lu(k,1251) * b(k,141) + b(k,129) = b(k,129) - lu(k,1250) * b(k,141) + b(k,128) = b(k,128) - lu(k,1249) * b(k,141) + b(k,127) = b(k,127) - lu(k,1248) * b(k,141) + b(k,126) = b(k,126) - lu(k,1247) * b(k,141) + b(k,125) = b(k,125) - lu(k,1246) * b(k,141) + b(k,124) = b(k,124) - lu(k,1245) * b(k,141) + b(k,123) = b(k,123) - lu(k,1244) * b(k,141) + b(k,122) = b(k,122) - lu(k,1243) * b(k,141) + b(k,121) = b(k,121) - lu(k,1242) * b(k,141) + b(k,120) = b(k,120) - lu(k,1241) * b(k,141) + b(k,119) = b(k,119) - lu(k,1240) * b(k,141) + b(k,118) = b(k,118) - lu(k,1239) * b(k,141) + b(k,117) = b(k,117) - lu(k,1238) * b(k,141) + b(k,116) = b(k,116) - lu(k,1237) * b(k,141) + b(k,115) = b(k,115) - lu(k,1236) * b(k,141) + b(k,114) = b(k,114) - lu(k,1235) * b(k,141) + b(k,113) = b(k,113) - lu(k,1234) * b(k,141) + b(k,112) = b(k,112) - lu(k,1233) * b(k,141) + b(k,111) = b(k,111) - lu(k,1232) * b(k,141) + b(k,110) = b(k,110) - lu(k,1231) * b(k,141) + b(k,105) = b(k,105) - lu(k,1230) * b(k,141) + b(k,104) = b(k,104) - lu(k,1229) * b(k,141) + b(k,103) = b(k,103) - lu(k,1228) * b(k,141) + b(k,102) = b(k,102) - lu(k,1227) * b(k,141) + b(k,100) = b(k,100) - lu(k,1226) * b(k,141) + b(k,99) = b(k,99) - lu(k,1225) * b(k,141) + b(k,98) = b(k,98) - lu(k,1224) * b(k,141) + b(k,96) = b(k,96) - lu(k,1223) * b(k,141) + b(k,94) = b(k,94) - lu(k,1222) * b(k,141) + b(k,92) = b(k,92) - lu(k,1221) * b(k,141) + b(k,91) = b(k,91) - lu(k,1220) * b(k,141) + b(k,90) = b(k,90) - lu(k,1219) * b(k,141) + b(k,89) = b(k,89) - lu(k,1218) * b(k,141) + b(k,87) = b(k,87) - lu(k,1217) * b(k,141) + b(k,86) = b(k,86) - lu(k,1216) * b(k,141) + b(k,85) = b(k,85) - lu(k,1215) * b(k,141) + b(k,84) = b(k,84) - lu(k,1214) * b(k,141) + b(k,83) = b(k,83) - lu(k,1213) * b(k,141) + b(k,82) = b(k,82) - lu(k,1212) * b(k,141) + b(k,81) = b(k,81) - lu(k,1211) * b(k,141) + b(k,80) = b(k,80) - lu(k,1210) * b(k,141) + b(k,76) = b(k,76) - lu(k,1209) * b(k,141) + b(k,75) = b(k,75) - lu(k,1208) * b(k,141) + b(k,74) = b(k,74) - lu(k,1207) * b(k,141) + b(k,72) = b(k,72) - lu(k,1206) * b(k,141) + b(k,71) = b(k,71) - lu(k,1205) * b(k,141) + b(k,70) = b(k,70) - lu(k,1204) * b(k,141) + b(k,69) = b(k,69) - lu(k,1203) * b(k,141) + b(k,68) = b(k,68) - lu(k,1202) * b(k,141) + b(k,67) = b(k,67) - lu(k,1201) * b(k,141) + b(k,66) = b(k,66) - lu(k,1200) * b(k,141) + b(k,65) = b(k,65) - lu(k,1199) * b(k,141) + b(k,63) = b(k,63) - lu(k,1198) * b(k,141) + b(k,62) = b(k,62) - lu(k,1197) * b(k,141) + b(k,61) = b(k,61) - lu(k,1196) * b(k,141) + b(k,58) = b(k,58) - lu(k,1195) * b(k,141) + b(k,57) = b(k,57) - lu(k,1194) * b(k,141) + b(k,56) = b(k,56) - lu(k,1193) * b(k,141) + b(k,55) = b(k,55) - lu(k,1192) * b(k,141) + b(k,53) = b(k,53) - lu(k,1191) * b(k,141) + b(k,52) = b(k,52) - lu(k,1190) * b(k,141) + b(k,51) = b(k,51) - lu(k,1189) * b(k,141) + b(k,50) = b(k,50) - lu(k,1188) * b(k,141) + b(k,48) = b(k,48) - lu(k,1187) * b(k,141) + b(k,38) = b(k,38) - lu(k,1186) * b(k,141) + b(k,34) = b(k,34) - lu(k,1185) * b(k,141) + b(k,31) = b(k,31) - lu(k,1184) * b(k,141) + b(k,30) = b(k,30) - lu(k,1183) * b(k,141) + b(k,140) = b(k,140) * lu(k,1172) + b(k,139) = b(k,139) - lu(k,1171) * b(k,140) + b(k,138) = b(k,138) - lu(k,1170) * b(k,140) + b(k,137) = b(k,137) - lu(k,1169) * b(k,140) + b(k,136) = b(k,136) - lu(k,1168) * b(k,140) + b(k,135) = b(k,135) - lu(k,1167) * b(k,140) + b(k,134) = b(k,134) - lu(k,1166) * b(k,140) + b(k,133) = b(k,133) - lu(k,1165) * b(k,140) + b(k,132) = b(k,132) - lu(k,1164) * b(k,140) + b(k,131) = b(k,131) - lu(k,1163) * b(k,140) + b(k,129) = b(k,129) - lu(k,1162) * b(k,140) + b(k,105) = b(k,105) - lu(k,1161) * b(k,140) + b(k,102) = b(k,102) - lu(k,1160) * b(k,140) + b(k,87) = b(k,87) - lu(k,1159) * b(k,140) + b(k,76) = b(k,76) - lu(k,1158) * b(k,140) + b(k,72) = b(k,72) - lu(k,1157) * b(k,140) + b(k,58) = b(k,58) - lu(k,1156) * b(k,140) + b(k,54) = b(k,54) - lu(k,1155) * b(k,140) + b(k,53) = b(k,53) - lu(k,1154) * b(k,140) + b(k,52) = b(k,52) - lu(k,1153) * b(k,140) + b(k,51) = b(k,51) - lu(k,1152) * b(k,140) + b(k,50) = b(k,50) - lu(k,1151) * b(k,140) + b(k,47) = b(k,47) - lu(k,1150) * b(k,140) + b(k,44) = b(k,44) - lu(k,1149) * b(k,140) + b(k,43) = b(k,43) - lu(k,1148) * b(k,140) + b(k,42) = b(k,42) - lu(k,1147) * b(k,140) + b(k,41) = b(k,41) - lu(k,1146) * b(k,140) + b(k,37) = b(k,37) - lu(k,1145) * b(k,140) + b(k,36) = b(k,36) - lu(k,1144) * b(k,140) + b(k,35) = b(k,35) - lu(k,1143) * b(k,140) + b(k,33) = b(k,33) - lu(k,1142) * b(k,140) + b(k,32) = b(k,32) - lu(k,1141) * b(k,140) + b(k,139) = b(k,139) * lu(k,1129) + b(k,138) = b(k,138) - lu(k,1128) * b(k,139) + b(k,137) = b(k,137) - lu(k,1127) * b(k,139) + b(k,136) = b(k,136) - lu(k,1126) * b(k,139) + b(k,135) = b(k,135) - lu(k,1125) * b(k,139) + b(k,134) = b(k,134) - lu(k,1124) * b(k,139) + b(k,133) = b(k,133) - lu(k,1123) * b(k,139) + b(k,132) = b(k,132) - lu(k,1122) * b(k,139) + b(k,128) = b(k,128) - lu(k,1121) * b(k,139) + b(k,127) = b(k,127) - lu(k,1120) * b(k,139) + b(k,126) = b(k,126) - lu(k,1119) * b(k,139) + b(k,125) = b(k,125) - lu(k,1118) * b(k,139) + b(k,124) = b(k,124) - lu(k,1117) * b(k,139) + b(k,123) = b(k,123) - lu(k,1116) * b(k,139) + b(k,122) = b(k,122) - lu(k,1115) * b(k,139) + b(k,121) = b(k,121) - lu(k,1114) * b(k,139) + b(k,120) = b(k,120) - lu(k,1113) * b(k,139) + b(k,119) = b(k,119) - lu(k,1112) * b(k,139) + b(k,118) = b(k,118) - lu(k,1111) * b(k,139) + b(k,116) = b(k,116) - lu(k,1110) * b(k,139) + b(k,115) = b(k,115) - lu(k,1109) * b(k,139) + b(k,114) = b(k,114) - lu(k,1108) * b(k,139) + b(k,113) = b(k,113) - lu(k,1107) * b(k,139) + b(k,112) = b(k,112) - lu(k,1106) * b(k,139) + b(k,109) = b(k,109) - lu(k,1105) * b(k,139) + b(k,108) = b(k,108) - lu(k,1104) * b(k,139) + b(k,107) = b(k,107) - lu(k,1103) * b(k,139) + b(k,103) = b(k,103) - lu(k,1102) * b(k,139) + b(k,99) = b(k,99) - lu(k,1101) * b(k,139) + b(k,98) = b(k,98) - lu(k,1100) * b(k,139) + b(k,97) = b(k,97) - lu(k,1099) * b(k,139) + b(k,96) = b(k,96) - lu(k,1098) * b(k,139) + b(k,94) = b(k,94) - lu(k,1097) * b(k,139) + b(k,93) = b(k,93) - lu(k,1096) * b(k,139) + b(k,92) = b(k,92) - lu(k,1095) * b(k,139) + b(k,73) = b(k,73) - lu(k,1094) * b(k,139) + b(k,65) = b(k,65) - lu(k,1093) * b(k,139) end do end subroutine lu_slv06 subroutine lu_slv07( avec_len, lu, b ) @@ -1397,211 +1354,211 @@ subroutine lu_slv07( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,136) = b(k,136) * lu(k,1021) - b(k,135) = b(k,135) - lu(k,1020) * b(k,136) - b(k,134) = b(k,134) - lu(k,1019) * b(k,136) - b(k,133) = b(k,133) - lu(k,1018) * b(k,136) - b(k,132) = b(k,132) - lu(k,1017) * b(k,136) - b(k,131) = b(k,131) - lu(k,1016) * b(k,136) + b(k,138) = b(k,138) * lu(k,1080) + b(k,137) = b(k,137) - lu(k,1079) * b(k,138) + b(k,136) = b(k,136) - lu(k,1078) * b(k,138) + b(k,135) = b(k,135) - lu(k,1077) * b(k,138) + b(k,134) = b(k,134) - lu(k,1076) * b(k,138) + b(k,133) = b(k,133) - lu(k,1075) * b(k,138) + b(k,132) = b(k,132) - lu(k,1074) * b(k,138) + b(k,131) = b(k,131) - lu(k,1073) * b(k,138) + b(k,130) = b(k,130) - lu(k,1072) * b(k,138) + b(k,128) = b(k,128) - lu(k,1071) * b(k,138) + b(k,127) = b(k,127) - lu(k,1070) * b(k,138) + b(k,126) = b(k,126) - lu(k,1069) * b(k,138) + b(k,122) = b(k,122) - lu(k,1068) * b(k,138) + b(k,119) = b(k,119) - lu(k,1067) * b(k,138) + b(k,116) = b(k,116) - lu(k,1066) * b(k,138) + b(k,112) = b(k,112) - lu(k,1065) * b(k,138) + b(k,111) = b(k,111) - lu(k,1064) * b(k,138) + b(k,110) = b(k,110) - lu(k,1063) * b(k,138) + b(k,95) = b(k,95) - lu(k,1062) * b(k,138) + b(k,84) = b(k,84) - lu(k,1061) * b(k,138) + b(k,80) = b(k,80) - lu(k,1060) * b(k,138) + b(k,79) = b(k,79) - lu(k,1059) * b(k,138) + b(k,75) = b(k,75) - lu(k,1058) * b(k,138) + b(k,60) = b(k,60) - lu(k,1057) * b(k,138) + b(k,54) = b(k,54) - lu(k,1056) * b(k,138) + b(k,137) = b(k,137) * lu(k,1042) + b(k,136) = b(k,136) - lu(k,1041) * b(k,137) + b(k,135) = b(k,135) - lu(k,1040) * b(k,137) + b(k,134) = b(k,134) - lu(k,1039) * b(k,137) + b(k,133) = b(k,133) - lu(k,1038) * b(k,137) + b(k,132) = b(k,132) - lu(k,1037) * b(k,137) + b(k,131) = b(k,131) - lu(k,1036) * b(k,137) + b(k,129) = b(k,129) - lu(k,1035) * b(k,137) + b(k,136) = b(k,136) * lu(k,1020) + b(k,135) = b(k,135) - lu(k,1019) * b(k,136) + b(k,134) = b(k,134) - lu(k,1018) * b(k,136) + b(k,133) = b(k,133) - lu(k,1017) * b(k,136) + b(k,132) = b(k,132) - lu(k,1016) * b(k,136) b(k,130) = b(k,130) - lu(k,1015) * b(k,136) b(k,128) = b(k,128) - lu(k,1014) * b(k,136) b(k,127) = b(k,127) - lu(k,1013) * b(k,136) - b(k,118) = b(k,118) - lu(k,1012) * b(k,136) - b(k,99) = b(k,99) - lu(k,1011) * b(k,136) - b(k,135) = b(k,135) * lu(k,996) - b(k,134) = b(k,134) - lu(k,995) * b(k,135) - b(k,133) = b(k,133) - lu(k,994) * b(k,135) - b(k,132) = b(k,132) - lu(k,993) * b(k,135) - b(k,131) = b(k,131) - lu(k,992) * b(k,135) - b(k,130) = b(k,130) - lu(k,991) * b(k,135) - b(k,129) = b(k,129) - lu(k,990) * b(k,135) - b(k,127) = b(k,127) - lu(k,989) * b(k,135) - b(k,126) = b(k,126) - lu(k,988) * b(k,135) - b(k,125) = b(k,125) - lu(k,987) * b(k,135) - b(k,121) = b(k,121) - lu(k,986) * b(k,135) - b(k,118) = b(k,118) - lu(k,985) * b(k,135) - b(k,115) = b(k,115) - lu(k,984) * b(k,135) - b(k,111) = b(k,111) - lu(k,983) * b(k,135) - b(k,110) = b(k,110) - lu(k,982) * b(k,135) - b(k,109) = b(k,109) - lu(k,981) * b(k,135) - b(k,94) = b(k,94) - lu(k,980) * b(k,135) - b(k,83) = b(k,83) - lu(k,979) * b(k,135) - b(k,82) = b(k,82) - lu(k,978) * b(k,135) - b(k,79) = b(k,79) - lu(k,977) * b(k,135) - b(k,73) = b(k,73) - lu(k,976) * b(k,135) - b(k,59) = b(k,59) - lu(k,975) * b(k,135) - b(k,53) = b(k,53) - lu(k,974) * b(k,135) - b(k,134) = b(k,134) * lu(k,959) - b(k,133) = b(k,133) - lu(k,958) * b(k,134) - b(k,132) = b(k,132) - lu(k,957) * b(k,134) - b(k,131) = b(k,131) - lu(k,956) * b(k,134) - b(k,130) = b(k,130) - lu(k,955) * b(k,134) - b(k,129) = b(k,129) - lu(k,954) * b(k,134) - b(k,111) = b(k,111) - lu(k,953) * b(k,134) - b(k,109) = b(k,109) - lu(k,952) * b(k,134) - b(k,101) = b(k,101) - lu(k,951) * b(k,134) - b(k,63) = b(k,63) - lu(k,950) * b(k,134) - b(k,49) = b(k,49) - lu(k,949) * b(k,134) - b(k,44) = b(k,44) - lu(k,948) * b(k,134) - b(k,28) = b(k,28) - lu(k,947) * b(k,134) - b(k,133) = b(k,133) * lu(k,932) - b(k,132) = b(k,132) - lu(k,931) * b(k,133) - b(k,131) = b(k,131) - lu(k,930) * b(k,133) - b(k,130) = b(k,130) - lu(k,929) * b(k,133) - b(k,129) = b(k,129) - lu(k,928) * b(k,133) - b(k,109) = b(k,109) - lu(k,927) * b(k,133) - b(k,94) = b(k,94) - lu(k,926) * b(k,133) - b(k,82) = b(k,82) - lu(k,925) * b(k,133) - b(k,63) = b(k,63) - lu(k,924) * b(k,133) - b(k,49) = b(k,49) - lu(k,923) * b(k,133) - b(k,132) = b(k,132) * lu(k,909) - b(k,131) = b(k,131) - lu(k,908) * b(k,132) - b(k,129) = b(k,129) - lu(k,907) * b(k,132) - b(k,127) = b(k,127) - lu(k,906) * b(k,132) - b(k,118) = b(k,118) - lu(k,905) * b(k,132) - b(k,114) = b(k,114) - lu(k,904) * b(k,132) - b(k,110) = b(k,110) - lu(k,903) * b(k,132) - b(k,109) = b(k,109) - lu(k,902) * b(k,132) - b(k,108) = b(k,108) - lu(k,901) * b(k,132) - b(k,107) = b(k,107) - lu(k,900) * b(k,132) - b(k,106) = b(k,106) - lu(k,899) * b(k,132) - b(k,105) = b(k,105) - lu(k,898) * b(k,132) - b(k,100) = b(k,100) - lu(k,897) * b(k,132) - b(k,92) = b(k,92) - lu(k,896) * b(k,132) - b(k,90) = b(k,90) - lu(k,895) * b(k,132) - b(k,87) = b(k,87) - lu(k,894) * b(k,132) - b(k,77) = b(k,77) - lu(k,893) * b(k,132) - b(k,76) = b(k,76) - lu(k,892) * b(k,132) - b(k,72) = b(k,72) - lu(k,891) * b(k,132) - b(k,46) = b(k,46) - lu(k,890) * b(k,132) - b(k,45) = b(k,45) - lu(k,889) * b(k,132) - b(k,131) = b(k,131) * lu(k,876) - b(k,127) = b(k,127) - lu(k,875) * b(k,131) - b(k,118) = b(k,118) - lu(k,874) * b(k,131) - b(k,99) = b(k,99) - lu(k,873) * b(k,131) - b(k,130) = b(k,130) * lu(k,860) - b(k,111) = b(k,111) - lu(k,859) * b(k,130) - b(k,101) = b(k,101) - lu(k,858) * b(k,130) - b(k,94) = b(k,94) - lu(k,857) * b(k,130) - b(k,49) = b(k,49) - lu(k,856) * b(k,130) - b(k,44) = b(k,44) - lu(k,855) * b(k,130) - b(k,129) = b(k,129) * lu(k,841) - b(k,109) = b(k,109) - lu(k,840) * b(k,129) - b(k,90) = b(k,90) - lu(k,839) * b(k,129) - b(k,63) = b(k,63) - lu(k,838) * b(k,129) - b(k,128) = b(k,128) * lu(k,826) - b(k,104) = b(k,104) - lu(k,825) * b(k,128) - b(k,58) = b(k,58) - lu(k,824) * b(k,128) - b(k,127) = b(k,127) * lu(k,815) - b(k,118) = b(k,118) - lu(k,814) * b(k,127) - b(k,110) = b(k,110) - lu(k,813) * b(k,127) - b(k,108) = b(k,108) - lu(k,812) * b(k,127) - b(k,107) = b(k,107) - lu(k,811) * b(k,127) - b(k,106) = b(k,106) - lu(k,810) * b(k,127) - b(k,105) = b(k,105) - lu(k,809) * b(k,127) - b(k,46) = b(k,46) - lu(k,808) * b(k,127) - b(k,45) = b(k,45) - lu(k,807) * b(k,127) - b(k,126) = b(k,126) * lu(k,793) - b(k,125) = b(k,125) - lu(k,792) * b(k,126) - b(k,124) = b(k,124) - lu(k,791) * b(k,126) - b(k,123) = b(k,123) - lu(k,790) * b(k,126) - b(k,122) = b(k,122) - lu(k,789) * b(k,126) - b(k,121) = b(k,121) - lu(k,788) * b(k,126) - b(k,120) = b(k,120) - lu(k,787) * b(k,126) - b(k,119) = b(k,119) - lu(k,786) * b(k,126) - b(k,118) = b(k,118) - lu(k,785) * b(k,126) - b(k,115) = b(k,115) - lu(k,784) * b(k,126) - b(k,114) = b(k,114) - lu(k,783) * b(k,126) - b(k,91) = b(k,91) - lu(k,782) * b(k,126) - b(k,89) = b(k,89) - lu(k,781) * b(k,126) - b(k,85) = b(k,85) - lu(k,780) * b(k,126) - b(k,79) = b(k,79) - lu(k,779) * b(k,126) - b(k,64) = b(k,64) - lu(k,778) * b(k,126) - b(k,125) = b(k,125) * lu(k,765) - b(k,121) = b(k,121) - lu(k,764) * b(k,125) - b(k,115) = b(k,115) - lu(k,763) * b(k,125) - b(k,89) = b(k,89) - lu(k,762) * b(k,125) - b(k,85) = b(k,85) - lu(k,761) * b(k,125) - b(k,83) = b(k,83) - lu(k,760) * b(k,125) - b(k,124) = b(k,124) * lu(k,744) - b(k,123) = b(k,123) - lu(k,743) * b(k,124) - b(k,121) = b(k,121) - lu(k,742) * b(k,124) - b(k,118) = b(k,118) - lu(k,741) * b(k,124) - b(k,117) = b(k,117) - lu(k,740) * b(k,124) - b(k,116) = b(k,116) - lu(k,739) * b(k,124) - b(k,123) = b(k,123) * lu(k,726) - b(k,121) = b(k,121) - lu(k,725) * b(k,123) - b(k,120) = b(k,120) - lu(k,724) * b(k,123) - b(k,118) = b(k,118) - lu(k,723) * b(k,123) - b(k,115) = b(k,115) - lu(k,722) * b(k,123) - b(k,114) = b(k,114) - lu(k,721) * b(k,123) - b(k,112) = b(k,112) - lu(k,720) * b(k,123) - b(k,80) = b(k,80) - lu(k,719) * b(k,123) - b(k,61) = b(k,61) - lu(k,718) * b(k,123) - b(k,122) = b(k,122) * lu(k,702) - b(k,121) = b(k,121) - lu(k,701) * b(k,122) - b(k,120) = b(k,120) - lu(k,700) * b(k,122) - b(k,119) = b(k,119) - lu(k,699) * b(k,122) - b(k,118) = b(k,118) - lu(k,698) * b(k,122) - b(k,115) = b(k,115) - lu(k,697) * b(k,122) - b(k,114) = b(k,114) - lu(k,696) * b(k,122) - b(k,112) = b(k,112) - lu(k,695) * b(k,122) - b(k,91) = b(k,91) - lu(k,694) * b(k,122) - b(k,80) = b(k,80) - lu(k,693) * b(k,122) - b(k,78) = b(k,78) - lu(k,692) * b(k,122) - b(k,64) = b(k,64) - lu(k,691) * b(k,122) - b(k,121) = b(k,121) * lu(k,683) - b(k,118) = b(k,118) - lu(k,682) * b(k,121) - b(k,120) = b(k,120) * lu(k,671) - b(k,118) = b(k,118) - lu(k,670) * b(k,120) - b(k,115) = b(k,115) - lu(k,669) * b(k,120) - b(k,114) = b(k,114) - lu(k,668) * b(k,120) - b(k,91) = b(k,91) - lu(k,667) * b(k,120) - b(k,80) = b(k,80) - lu(k,666) * b(k,120) - b(k,47) = b(k,47) - lu(k,665) * b(k,120) - b(k,119) = b(k,119) * lu(k,654) - b(k,118) = b(k,118) - lu(k,653) * b(k,119) - b(k,118) = b(k,118) * lu(k,649) - b(k,117) = b(k,117) * lu(k,640) - b(k,116) = b(k,116) * lu(k,623) - b(k,115) = b(k,115) - lu(k,622) * b(k,116) - b(k,96) = b(k,96) - lu(k,621) * b(k,116) - b(k,89) = b(k,89) - lu(k,620) * b(k,116) - b(k,67) = b(k,67) - lu(k,619) * b(k,116) - b(k,115) = b(k,115) * lu(k,613) - b(k,114) = b(k,114) * lu(k,607) - b(k,91) = b(k,91) - lu(k,606) * b(k,114) - b(k,113) = b(k,113) * lu(k,595) - b(k,80) = b(k,80) - lu(k,594) * b(k,113) - b(k,70) = b(k,70) - lu(k,593) * b(k,113) - b(k,112) = b(k,112) * lu(k,584) - b(k,64) = b(k,64) - lu(k,583) * b(k,112) - b(k,111) = b(k,111) * lu(k,573) - b(k,101) = b(k,101) - lu(k,572) * b(k,111) - b(k,44) = b(k,44) - lu(k,571) * b(k,111) - b(k,110) = b(k,110) * lu(k,561) - b(k,108) = b(k,108) - lu(k,560) * b(k,110) - b(k,107) = b(k,107) - lu(k,559) * b(k,110) - b(k,106) = b(k,106) - lu(k,558) * b(k,110) - b(k,105) = b(k,105) - lu(k,557) * b(k,110) - b(k,100) = b(k,100) - lu(k,556) * b(k,110) - b(k,92) = b(k,92) - lu(k,555) * b(k,110) - b(k,53) = b(k,53) - lu(k,554) * b(k,110) - b(k,109) = b(k,109) * lu(k,548) - b(k,55) = b(k,55) - lu(k,547) * b(k,109) - b(k,108) = b(k,108) * lu(k,539) - b(k,107) = b(k,107) - lu(k,538) * b(k,108) - b(k,106) = b(k,106) - lu(k,537) * b(k,108) - b(k,105) = b(k,105) - lu(k,536) * b(k,108) - b(k,100) = b(k,100) - lu(k,535) * b(k,108) - b(k,107) = b(k,107) * lu(k,526) - b(k,106) = b(k,106) - lu(k,525) * b(k,107) - b(k,105) = b(k,105) - lu(k,524) * b(k,107) - b(k,100) = b(k,100) - lu(k,523) * b(k,107) - b(k,92) = b(k,92) - lu(k,522) * b(k,107) - b(k,87) = b(k,87) - lu(k,521) * b(k,107) - b(k,77) = b(k,77) - lu(k,520) * b(k,107) - b(k,76) = b(k,76) - lu(k,519) * b(k,107) + b(k,126) = b(k,126) - lu(k,1012) * b(k,136) + b(k,125) = b(k,125) - lu(k,1011) * b(k,136) + b(k,124) = b(k,124) - lu(k,1010) * b(k,136) + b(k,123) = b(k,123) - lu(k,1009) * b(k,136) + b(k,122) = b(k,122) - lu(k,1008) * b(k,136) + b(k,121) = b(k,121) - lu(k,1007) * b(k,136) + b(k,120) = b(k,120) - lu(k,1006) * b(k,136) + b(k,119) = b(k,119) - lu(k,1005) * b(k,136) + b(k,118) = b(k,118) - lu(k,1004) * b(k,136) + b(k,117) = b(k,117) - lu(k,1003) * b(k,136) + b(k,116) = b(k,116) - lu(k,1002) * b(k,136) + b(k,115) = b(k,115) - lu(k,1001) * b(k,136) + b(k,114) = b(k,114) - lu(k,1000) * b(k,136) + b(k,113) = b(k,113) - lu(k,999) * b(k,136) + b(k,110) = b(k,110) - lu(k,998) * b(k,136) + b(k,104) = b(k,104) - lu(k,997) * b(k,136) + b(k,97) = b(k,97) - lu(k,996) * b(k,136) + b(k,94) = b(k,94) - lu(k,995) * b(k,136) + b(k,92) = b(k,92) - lu(k,994) * b(k,136) + b(k,89) = b(k,89) - lu(k,993) * b(k,136) + b(k,68) = b(k,68) - lu(k,992) * b(k,136) + b(k,65) = b(k,65) - lu(k,991) * b(k,136) + b(k,60) = b(k,60) - lu(k,990) * b(k,136) + b(k,57) = b(k,57) - lu(k,989) * b(k,136) + b(k,135) = b(k,135) * lu(k,973) + b(k,134) = b(k,134) - lu(k,972) * b(k,135) + b(k,133) = b(k,133) - lu(k,971) * b(k,135) + b(k,128) = b(k,128) - lu(k,970) * b(k,135) + b(k,127) = b(k,127) - lu(k,969) * b(k,135) + b(k,126) = b(k,126) - lu(k,968) * b(k,135) + b(k,125) = b(k,125) - lu(k,967) * b(k,135) + b(k,124) = b(k,124) - lu(k,966) * b(k,135) + b(k,123) = b(k,123) - lu(k,965) * b(k,135) + b(k,122) = b(k,122) - lu(k,964) * b(k,135) + b(k,121) = b(k,121) - lu(k,963) * b(k,135) + b(k,120) = b(k,120) - lu(k,962) * b(k,135) + b(k,119) = b(k,119) - lu(k,961) * b(k,135) + b(k,118) = b(k,118) - lu(k,960) * b(k,135) + b(k,116) = b(k,116) - lu(k,959) * b(k,135) + b(k,115) = b(k,115) - lu(k,958) * b(k,135) + b(k,114) = b(k,114) - lu(k,957) * b(k,135) + b(k,103) = b(k,103) - lu(k,956) * b(k,135) + b(k,99) = b(k,99) - lu(k,955) * b(k,135) + b(k,94) = b(k,94) - lu(k,954) * b(k,135) + b(k,92) = b(k,92) - lu(k,953) * b(k,135) + b(k,90) = b(k,90) - lu(k,952) * b(k,135) + b(k,81) = b(k,81) - lu(k,951) * b(k,135) + b(k,71) = b(k,71) - lu(k,950) * b(k,135) + b(k,65) = b(k,65) - lu(k,949) * b(k,135) + b(k,55) = b(k,55) - lu(k,948) * b(k,135) + b(k,134) = b(k,134) * lu(k,931) + b(k,133) = b(k,133) - lu(k,930) * b(k,134) + b(k,132) = b(k,132) - lu(k,929) * b(k,134) + b(k,131) = b(k,131) - lu(k,928) * b(k,134) + b(k,129) = b(k,129) - lu(k,927) * b(k,134) + b(k,128) = b(k,128) - lu(k,926) * b(k,134) + b(k,119) = b(k,119) - lu(k,925) * b(k,134) + b(k,105) = b(k,105) - lu(k,924) * b(k,134) + b(k,59) = b(k,59) - lu(k,923) * b(k,134) + b(k,133) = b(k,133) * lu(k,909) + b(k,132) = b(k,132) - lu(k,908) * b(k,133) + b(k,130) = b(k,130) - lu(k,907) * b(k,133) + b(k,128) = b(k,128) - lu(k,906) * b(k,133) + b(k,119) = b(k,119) - lu(k,905) * b(k,133) + b(k,114) = b(k,114) - lu(k,904) * b(k,133) + b(k,112) = b(k,112) - lu(k,903) * b(k,133) + b(k,110) = b(k,110) - lu(k,902) * b(k,133) + b(k,109) = b(k,109) - lu(k,901) * b(k,133) + b(k,108) = b(k,108) - lu(k,900) * b(k,133) + b(k,107) = b(k,107) - lu(k,899) * b(k,133) + b(k,106) = b(k,106) - lu(k,898) * b(k,133) + b(k,101) = b(k,101) - lu(k,897) * b(k,133) + b(k,93) = b(k,93) - lu(k,896) * b(k,133) + b(k,91) = b(k,91) - lu(k,895) * b(k,133) + b(k,88) = b(k,88) - lu(k,894) * b(k,133) + b(k,78) = b(k,78) - lu(k,893) * b(k,133) + b(k,77) = b(k,77) - lu(k,892) * b(k,133) + b(k,73) = b(k,73) - lu(k,891) * b(k,133) + b(k,47) = b(k,47) - lu(k,890) * b(k,133) + b(k,46) = b(k,46) - lu(k,889) * b(k,133) + b(k,132) = b(k,132) * lu(k,876) + b(k,128) = b(k,128) - lu(k,875) * b(k,132) + b(k,119) = b(k,119) - lu(k,874) * b(k,132) + b(k,102) = b(k,102) - lu(k,873) * b(k,132) + b(k,131) = b(k,131) * lu(k,860) + b(k,111) = b(k,111) - lu(k,859) * b(k,131) + b(k,100) = b(k,100) - lu(k,858) * b(k,131) + b(k,95) = b(k,95) - lu(k,857) * b(k,131) + b(k,49) = b(k,49) - lu(k,856) * b(k,131) + b(k,45) = b(k,45) - lu(k,855) * b(k,131) + b(k,130) = b(k,130) * lu(k,841) + b(k,110) = b(k,110) - lu(k,840) * b(k,130) + b(k,91) = b(k,91) - lu(k,839) * b(k,130) + b(k,64) = b(k,64) - lu(k,838) * b(k,130) + b(k,129) = b(k,129) * lu(k,826) + b(k,105) = b(k,105) - lu(k,825) * b(k,129) + b(k,59) = b(k,59) - lu(k,824) * b(k,129) + b(k,128) = b(k,128) * lu(k,815) + b(k,119) = b(k,119) - lu(k,814) * b(k,128) + b(k,112) = b(k,112) - lu(k,813) * b(k,128) + b(k,109) = b(k,109) - lu(k,812) * b(k,128) + b(k,108) = b(k,108) - lu(k,811) * b(k,128) + b(k,107) = b(k,107) - lu(k,810) * b(k,128) + b(k,106) = b(k,106) - lu(k,809) * b(k,128) + b(k,47) = b(k,47) - lu(k,808) * b(k,128) + b(k,46) = b(k,46) - lu(k,807) * b(k,128) + b(k,127) = b(k,127) * lu(k,793) + b(k,126) = b(k,126) - lu(k,792) * b(k,127) + b(k,125) = b(k,125) - lu(k,791) * b(k,127) + b(k,124) = b(k,124) - lu(k,790) * b(k,127) + b(k,123) = b(k,123) - lu(k,789) * b(k,127) + b(k,122) = b(k,122) - lu(k,788) * b(k,127) + b(k,121) = b(k,121) - lu(k,787) * b(k,127) + b(k,120) = b(k,120) - lu(k,786) * b(k,127) + b(k,119) = b(k,119) - lu(k,785) * b(k,127) + b(k,116) = b(k,116) - lu(k,784) * b(k,127) + b(k,114) = b(k,114) - lu(k,783) * b(k,127) + b(k,92) = b(k,92) - lu(k,782) * b(k,127) + b(k,90) = b(k,90) - lu(k,781) * b(k,127) + b(k,85) = b(k,85) - lu(k,780) * b(k,127) + b(k,80) = b(k,80) - lu(k,779) * b(k,127) + b(k,65) = b(k,65) - lu(k,778) * b(k,127) + b(k,126) = b(k,126) * lu(k,765) + b(k,122) = b(k,122) - lu(k,764) * b(k,126) + b(k,116) = b(k,116) - lu(k,763) * b(k,126) + b(k,90) = b(k,90) - lu(k,762) * b(k,126) + b(k,85) = b(k,85) - lu(k,761) * b(k,126) + b(k,84) = b(k,84) - lu(k,760) * b(k,126) + b(k,125) = b(k,125) * lu(k,744) + b(k,124) = b(k,124) - lu(k,743) * b(k,125) + b(k,122) = b(k,122) - lu(k,742) * b(k,125) + b(k,119) = b(k,119) - lu(k,741) * b(k,125) + b(k,118) = b(k,118) - lu(k,740) * b(k,125) + b(k,117) = b(k,117) - lu(k,739) * b(k,125) + b(k,124) = b(k,124) * lu(k,726) + b(k,122) = b(k,122) - lu(k,725) * b(k,124) + b(k,121) = b(k,121) - lu(k,724) * b(k,124) + b(k,119) = b(k,119) - lu(k,723) * b(k,124) + b(k,116) = b(k,116) - lu(k,722) * b(k,124) + b(k,114) = b(k,114) - lu(k,721) * b(k,124) + b(k,113) = b(k,113) - lu(k,720) * b(k,124) + b(k,81) = b(k,81) - lu(k,719) * b(k,124) + b(k,62) = b(k,62) - lu(k,718) * b(k,124) + b(k,123) = b(k,123) * lu(k,702) + b(k,122) = b(k,122) - lu(k,701) * b(k,123) + b(k,121) = b(k,121) - lu(k,700) * b(k,123) + b(k,120) = b(k,120) - lu(k,699) * b(k,123) + b(k,119) = b(k,119) - lu(k,698) * b(k,123) + b(k,116) = b(k,116) - lu(k,697) * b(k,123) + b(k,114) = b(k,114) - lu(k,696) * b(k,123) + b(k,113) = b(k,113) - lu(k,695) * b(k,123) + b(k,92) = b(k,92) - lu(k,694) * b(k,123) + b(k,83) = b(k,83) - lu(k,693) * b(k,123) + b(k,81) = b(k,81) - lu(k,692) * b(k,123) + b(k,65) = b(k,65) - lu(k,691) * b(k,123) + b(k,122) = b(k,122) * lu(k,683) + b(k,119) = b(k,119) - lu(k,682) * b(k,122) + b(k,121) = b(k,121) * lu(k,671) + b(k,119) = b(k,119) - lu(k,670) * b(k,121) + b(k,116) = b(k,116) - lu(k,669) * b(k,121) + b(k,114) = b(k,114) - lu(k,668) * b(k,121) + b(k,92) = b(k,92) - lu(k,667) * b(k,121) + b(k,81) = b(k,81) - lu(k,666) * b(k,121) + b(k,48) = b(k,48) - lu(k,665) * b(k,121) end do end subroutine lu_slv07 subroutine lu_slv08( avec_len, lu, b ) @@ -1622,106 +1579,149 @@ subroutine lu_slv08( avec_len, lu, b ) ! ... solve L * y = b !----------------------------------------------------------------------- do k = 1,avec_len - b(k,106) = b(k,106) * lu(k,511) - b(k,92) = b(k,92) - lu(k,510) * b(k,106) - b(k,105) = b(k,105) * lu(k,501) - b(k,100) = b(k,100) - lu(k,500) * b(k,105) - b(k,92) = b(k,92) - lu(k,499) * b(k,105) - b(k,104) = b(k,104) * lu(k,490) - b(k,58) = b(k,58) - lu(k,489) * b(k,104) - b(k,103) = b(k,103) * lu(k,473) - b(k,97) = b(k,97) - lu(k,472) * b(k,103) - b(k,102) = b(k,102) * lu(k,460) - b(k,95) = b(k,95) - lu(k,459) * b(k,102) - b(k,68) = b(k,68) - lu(k,458) * b(k,102) - b(k,101) = b(k,101) * lu(k,451) - b(k,44) = b(k,44) - lu(k,450) * b(k,101) - b(k,100) = b(k,100) * lu(k,442) - b(k,92) = b(k,92) - lu(k,441) * b(k,100) - b(k,99) = b(k,99) * lu(k,433) - b(k,98) = b(k,98) * lu(k,424) - b(k,80) = b(k,80) - lu(k,423) * b(k,98) - b(k,62) = b(k,62) - lu(k,422) * b(k,98) - b(k,54) = b(k,54) - lu(k,421) * b(k,98) - b(k,97) = b(k,97) * lu(k,411) - b(k,96) = b(k,96) * lu(k,401) - b(k,81) = b(k,81) - lu(k,400) * b(k,96) - b(k,95) = b(k,95) * lu(k,394) - b(k,94) = b(k,94) * lu(k,386) - b(k,49) = b(k,49) - lu(k,385) * b(k,94) - b(k,93) = b(k,93) * lu(k,377) - b(k,72) = b(k,72) - lu(k,376) * b(k,93) - b(k,38) = b(k,38) - lu(k,375) * b(k,93) - b(k,92) = b(k,92) * lu(k,370) - b(k,91) = b(k,91) * lu(k,365) - b(k,90) = b(k,90) * lu(k,358) - b(k,89) = b(k,89) * lu(k,353) - b(k,88) = b(k,88) * lu(k,343) - b(k,87) = b(k,87) * lu(k,334) - b(k,86) = b(k,86) * lu(k,325) - b(k,85) = b(k,85) * lu(k,318) - b(k,84) = b(k,84) * lu(k,311) - b(k,83) = b(k,83) * lu(k,302) - b(k,82) = b(k,82) * lu(k,294) - b(k,81) = b(k,81) * lu(k,286) - b(k,80) = b(k,80) * lu(k,282) - b(k,79) = b(k,79) * lu(k,274) - b(k,78) = b(k,78) * lu(k,266) - b(k,77) = b(k,77) * lu(k,260) - b(k,76) = b(k,76) * lu(k,253) - b(k,75) = b(k,75) * lu(k,246) - b(k,74) = b(k,74) * lu(k,239) - b(k,73) = b(k,73) * lu(k,232) - b(k,72) = b(k,72) * lu(k,227) - b(k,71) = b(k,71) * lu(k,221) - b(k,70) = b(k,70) * lu(k,215) - b(k,69) = b(k,69) * lu(k,209) - b(k,68) = b(k,68) * lu(k,203) - b(k,67) = b(k,67) * lu(k,197) - b(k,66) = b(k,66) * lu(k,189) - b(k,65) = b(k,65) * lu(k,181) - b(k,64) = b(k,64) * lu(k,178) - b(k,63) = b(k,63) * lu(k,173) - b(k,62) = b(k,62) * lu(k,168) - b(k,61) = b(k,61) * lu(k,163) - b(k,60) = b(k,60) * lu(k,157) - b(k,59) = b(k,59) * lu(k,151) - b(k,58) = b(k,58) * lu(k,148) - b(k,57) = b(k,57) * lu(k,142) - b(k,48) = b(k,48) - lu(k,141) * b(k,57) - b(k,56) = b(k,56) * lu(k,135) - b(k,55) = b(k,55) * lu(k,131) - b(k,39) = b(k,39) - lu(k,130) * b(k,55) - b(k,54) = b(k,54) * lu(k,126) - b(k,53) = b(k,53) * lu(k,122) - b(k,52) = b(k,52) * lu(k,117) - b(k,48) = b(k,48) - lu(k,116) * b(k,52) - b(k,51) = b(k,51) * lu(k,112) - b(k,50) = b(k,50) * lu(k,107) - b(k,49) = b(k,49) * lu(k,104) - b(k,48) = b(k,48) * lu(k,101) - b(k,47) = b(k,47) * lu(k,98) - b(k,46) = b(k,46) * lu(k,96) - b(k,45) = b(k,45) - lu(k,95) * b(k,46) - b(k,45) = b(k,45) * lu(k,93) - b(k,44) = b(k,44) * lu(k,91) - b(k,43) = b(k,43) * lu(k,86) - b(k,42) = b(k,42) * lu(k,81) - b(k,41) = b(k,41) * lu(k,76) - b(k,40) = b(k,40) * lu(k,71) - b(k,39) = b(k,39) * lu(k,68) - b(k,38) = b(k,38) * lu(k,65) - b(k,37) = b(k,37) * lu(k,61) - b(k,36) = b(k,36) * lu(k,57) - b(k,35) = b(k,35) * lu(k,53) - b(k,34) = b(k,34) * lu(k,49) - b(k,33) = b(k,33) * lu(k,45) - b(k,32) = b(k,32) * lu(k,41) - b(k,31) = b(k,31) * lu(k,38) - b(k,30) = b(k,30) * lu(k,35) - b(k,29) = b(k,29) * lu(k,32) + b(k,120) = b(k,120) * lu(k,654) + b(k,119) = b(k,119) - lu(k,653) * b(k,120) + b(k,119) = b(k,119) * lu(k,649) + b(k,118) = b(k,118) * lu(k,640) + b(k,117) = b(k,117) * lu(k,623) + b(k,116) = b(k,116) - lu(k,622) * b(k,117) + b(k,98) = b(k,98) - lu(k,621) * b(k,117) + b(k,90) = b(k,90) - lu(k,620) * b(k,117) + b(k,68) = b(k,68) - lu(k,619) * b(k,117) + b(k,116) = b(k,116) * lu(k,613) + b(k,115) = b(k,115) * lu(k,602) + b(k,81) = b(k,81) - lu(k,601) * b(k,115) + b(k,70) = b(k,70) - lu(k,600) * b(k,115) + b(k,114) = b(k,114) * lu(k,594) + b(k,92) = b(k,92) - lu(k,593) * b(k,114) + b(k,113) = b(k,113) * lu(k,584) + b(k,65) = b(k,65) - lu(k,583) * b(k,113) + b(k,112) = b(k,112) * lu(k,573) + b(k,109) = b(k,109) - lu(k,572) * b(k,112) + b(k,108) = b(k,108) - lu(k,571) * b(k,112) + b(k,107) = b(k,107) - lu(k,570) * b(k,112) + b(k,106) = b(k,106) - lu(k,569) * b(k,112) + b(k,101) = b(k,101) - lu(k,568) * b(k,112) + b(k,93) = b(k,93) - lu(k,567) * b(k,112) + b(k,54) = b(k,54) - lu(k,566) * b(k,112) + b(k,111) = b(k,111) * lu(k,556) + b(k,100) = b(k,100) - lu(k,555) * b(k,111) + b(k,45) = b(k,45) - lu(k,554) * b(k,111) + b(k,110) = b(k,110) * lu(k,548) + b(k,56) = b(k,56) - lu(k,547) * b(k,110) + b(k,109) = b(k,109) * lu(k,539) + b(k,108) = b(k,108) - lu(k,538) * b(k,109) + b(k,107) = b(k,107) - lu(k,537) * b(k,109) + b(k,106) = b(k,106) - lu(k,536) * b(k,109) + b(k,101) = b(k,101) - lu(k,535) * b(k,109) + b(k,108) = b(k,108) * lu(k,526) + b(k,107) = b(k,107) - lu(k,525) * b(k,108) + b(k,106) = b(k,106) - lu(k,524) * b(k,108) + b(k,101) = b(k,101) - lu(k,523) * b(k,108) + b(k,93) = b(k,93) - lu(k,522) * b(k,108) + b(k,88) = b(k,88) - lu(k,521) * b(k,108) + b(k,78) = b(k,78) - lu(k,520) * b(k,108) + b(k,77) = b(k,77) - lu(k,519) * b(k,108) + b(k,107) = b(k,107) * lu(k,511) + b(k,93) = b(k,93) - lu(k,510) * b(k,107) + b(k,106) = b(k,106) * lu(k,501) + b(k,101) = b(k,101) - lu(k,500) * b(k,106) + b(k,93) = b(k,93) - lu(k,499) * b(k,106) + b(k,105) = b(k,105) * lu(k,490) + b(k,59) = b(k,59) - lu(k,489) * b(k,105) + b(k,104) = b(k,104) * lu(k,473) + b(k,97) = b(k,97) - lu(k,472) * b(k,104) + b(k,103) = b(k,103) * lu(k,460) + b(k,94) = b(k,94) - lu(k,459) * b(k,103) + b(k,69) = b(k,69) - lu(k,458) * b(k,103) + b(k,102) = b(k,102) * lu(k,450) + b(k,101) = b(k,101) * lu(k,442) + b(k,93) = b(k,93) - lu(k,441) * b(k,101) + b(k,100) = b(k,100) * lu(k,434) + b(k,45) = b(k,45) - lu(k,433) * b(k,100) + b(k,99) = b(k,99) * lu(k,424) + b(k,81) = b(k,81) - lu(k,423) * b(k,99) + b(k,63) = b(k,63) - lu(k,422) * b(k,99) + b(k,55) = b(k,55) - lu(k,421) * b(k,99) + b(k,98) = b(k,98) * lu(k,411) + b(k,82) = b(k,82) - lu(k,410) * b(k,98) + b(k,97) = b(k,97) * lu(k,400) + b(k,96) = b(k,96) * lu(k,392) + b(k,73) = b(k,73) - lu(k,391) * b(k,96) + b(k,39) = b(k,39) - lu(k,390) * b(k,96) + b(k,95) = b(k,95) * lu(k,382) + b(k,49) = b(k,49) - lu(k,381) * b(k,95) + b(k,94) = b(k,94) * lu(k,375) + b(k,93) = b(k,93) * lu(k,370) + b(k,92) = b(k,92) * lu(k,365) + b(k,91) = b(k,91) * lu(k,358) + b(k,90) = b(k,90) * lu(k,353) + b(k,89) = b(k,89) * lu(k,343) + b(k,88) = b(k,88) * lu(k,334) + b(k,87) = b(k,87) * lu(k,325) + b(k,86) = b(k,86) * lu(k,318) + b(k,85) = b(k,85) * lu(k,311) + b(k,84) = b(k,84) * lu(k,302) + b(k,83) = b(k,83) * lu(k,294) + b(k,82) = b(k,82) * lu(k,286) + b(k,81) = b(k,81) * lu(k,282) + b(k,80) = b(k,80) * lu(k,274) + b(k,79) = b(k,79) * lu(k,266) + b(k,78) = b(k,78) * lu(k,260) + b(k,77) = b(k,77) * lu(k,253) + b(k,76) = b(k,76) * lu(k,246) + b(k,75) = b(k,75) * lu(k,239) + b(k,74) = b(k,74) * lu(k,232) + b(k,73) = b(k,73) * lu(k,227) + b(k,72) = b(k,72) * lu(k,221) + b(k,71) = b(k,71) * lu(k,215) + b(k,70) = b(k,70) * lu(k,209) + b(k,69) = b(k,69) * lu(k,203) + b(k,68) = b(k,68) * lu(k,197) + b(k,67) = b(k,67) * lu(k,189) + b(k,66) = b(k,66) * lu(k,181) + b(k,65) = b(k,65) * lu(k,178) + b(k,64) = b(k,64) * lu(k,173) + b(k,63) = b(k,63) * lu(k,168) + b(k,62) = b(k,62) * lu(k,163) + b(k,61) = b(k,61) * lu(k,157) + b(k,60) = b(k,60) * lu(k,151) + b(k,59) = b(k,59) * lu(k,148) + b(k,58) = b(k,58) * lu(k,142) + b(k,53) = b(k,53) - lu(k,141) * b(k,58) + b(k,57) = b(k,57) * lu(k,135) + b(k,56) = b(k,56) * lu(k,131) + b(k,40) = b(k,40) - lu(k,130) * b(k,56) + b(k,55) = b(k,55) * lu(k,126) + b(k,54) = b(k,54) * lu(k,122) + b(k,53) = b(k,53) * lu(k,119) + b(k,52) = b(k,52) * lu(k,114) + b(k,51) = b(k,51) * lu(k,110) + b(k,50) = b(k,50) * lu(k,105) + b(k,49) = b(k,49) * lu(k,102) + b(k,48) = b(k,48) * lu(k,99) + b(k,47) = b(k,47) * lu(k,97) + b(k,46) = b(k,46) - lu(k,96) * b(k,47) + b(k,46) = b(k,46) * lu(k,94) + b(k,45) = b(k,45) * lu(k,92) + b(k,44) = b(k,44) * lu(k,87) + b(k,43) = b(k,43) * lu(k,82) + b(k,42) = b(k,42) * lu(k,77) + b(k,41) = b(k,41) * lu(k,72) + b(k,40) = b(k,40) * lu(k,69) + b(k,39) = b(k,39) * lu(k,66) + b(k,38) = b(k,38) * lu(k,62) + b(k,37) = b(k,37) * lu(k,58) + b(k,36) = b(k,36) * lu(k,54) + b(k,35) = b(k,35) * lu(k,50) + b(k,34) = b(k,34) * lu(k,46) + b(k,33) = b(k,33) * lu(k,42) + b(k,32) = b(k,32) * lu(k,39) + b(k,31) = b(k,31) * lu(k,36) + b(k,30) = b(k,30) * lu(k,33) + b(k,29) = b(k,29) * lu(k,30) b(k,28) = b(k,28) * lu(k,29) - b(k,27) = b(k,27) * lu(k,28) + b(k,27) = b(k,27) * lu(k,27) b(k,26) = b(k,26) * lu(k,26) b(k,25) = b(k,25) * lu(k,25) b(k,24) = b(k,24) * lu(k,24) diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_nln_matrix.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_nln_matrix.F90 index 42ca073f86..c958ca79ae 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_nln_matrix.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_nln_matrix.F90 @@ -22,209 +22,223 @@ subroutine nlnmat01( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,32) = -(rxt(k,344)*y(k,111)) - mat(k,1330) = -rxt(k,344)*y(k,3) - mat(k,876) = -(rxt(k,218)*y(k,27) + rxt(k,219)*y(k,139) + rxt(k,220)*y(k,108)) - mat(k,1016) = -rxt(k,218)*y(k,4) - mat(k,1075) = -rxt(k,219)*y(k,4) - mat(k,1121) = -rxt(k,220)*y(k,4) - mat(k,930) = 4.000_r8*rxt(k,221)*y(k,6) + (rxt(k,222)+rxt(k,223))*y(k,45) & - + rxt(k,226)*y(k,97) + rxt(k,229)*y(k,106) + rxt(k,230)*y(k,111) & - + rxt(k,376)*y(k,122) - mat(k,73) = rxt(k,208)*y(k,144) - mat(k,79) = rxt(k,234)*y(k,144) - mat(k,248) = 2.000_r8*rxt(k,245)*y(k,42) + 2.000_r8*rxt(k,246)*y(k,111) & - + 2.000_r8*rxt(k,257)*y(k,144) - mat(k,327) = rxt(k,247)*y(k,42) + rxt(k,248)*y(k,111) + rxt(k,258)*y(k,144) - mat(k,223) = 3.000_r8*rxt(k,252)*y(k,42) + 3.000_r8*rxt(k,253)*y(k,111) & - + 3.000_r8*rxt(k,235)*y(k,144) - mat(k,1311) = 2.000_r8*rxt(k,245)*y(k,26) + rxt(k,247)*y(k,28) & - + 3.000_r8*rxt(k,252)*y(k,41) - mat(k,956) = (rxt(k,222)+rxt(k,223))*y(k,6) - mat(k,43) = 2.000_r8*rxt(k,236)*y(k,144) - mat(k,434) = rxt(k,231)*y(k,106) + rxt(k,232)*y(k,111) + rxt(k,237)*y(k,144) - mat(k,1493) = rxt(k,226)*y(k,6) - mat(k,1445) = rxt(k,229)*y(k,6) + rxt(k,231)*y(k,67) - mat(k,1400) = rxt(k,230)*y(k,6) + 2.000_r8*rxt(k,246)*y(k,26) + rxt(k,248) & - *y(k,28) + 3.000_r8*rxt(k,253)*y(k,41) + rxt(k,232)*y(k,67) + mat(k,33) = -(rxt(k,344)*y(k,106)) + mat(k,1183) = -rxt(k,344)*y(k,3) + mat(k,876) = -(rxt(k,218)*y(k,25) + rxt(k,219)*y(k,134) + rxt(k,220)*y(k,102)) + mat(k,1425) = -rxt(k,218)*y(k,4) + mat(k,1401) = -rxt(k,219)*y(k,4) + mat(k,1539) = -rxt(k,220)*y(k,4) + mat(k,1344) = 4.000_r8*rxt(k,221)*y(k,6) + (rxt(k,222)+rxt(k,223))*y(k,42) & + + rxt(k,226)*y(k,91) + rxt(k,229)*y(k,100) + rxt(k,230)*y(k,106) & + + rxt(k,376)*y(k,115) + mat(k,74) = rxt(k,208)*y(k,142) + mat(k,80) = rxt(k,234)*y(k,142) + mat(k,248) = 2.000_r8*rxt(k,245)*y(k,39) + 2.000_r8*rxt(k,246)*y(k,106) & + + 2.000_r8*rxt(k,257)*y(k,142) + mat(k,327) = rxt(k,247)*y(k,39) + rxt(k,248)*y(k,106) + rxt(k,258)*y(k,142) + mat(k,223) = 3.000_r8*rxt(k,252)*y(k,39) + 3.000_r8*rxt(k,253)*y(k,106) & + + 3.000_r8*rxt(k,235)*y(k,142) + mat(k,1291) = 2.000_r8*rxt(k,245)*y(k,24) + rxt(k,247)*y(k,26) & + + 3.000_r8*rxt(k,252)*y(k,38) + mat(k,1319) = (rxt(k,222)+rxt(k,223))*y(k,6) + mat(k,44) = 2.000_r8*rxt(k,236)*y(k,142) + mat(k,451) = rxt(k,231)*y(k,100) + rxt(k,232)*y(k,106) + rxt(k,237)*y(k,142) + mat(k,1122) = rxt(k,226)*y(k,6) + mat(k,1470) = rxt(k,229)*y(k,6) + rxt(k,231)*y(k,62) + mat(k,1253) = rxt(k,230)*y(k,6) + 2.000_r8*rxt(k,246)*y(k,24) + rxt(k,248) & + *y(k,26) + 3.000_r8*rxt(k,253)*y(k,38) + rxt(k,232)*y(k,62) mat(k,842) = rxt(k,376)*y(k,6) - mat(k,1273) = rxt(k,208)*y(k,19) + rxt(k,234)*y(k,20) + 2.000_r8*rxt(k,257) & - *y(k,26) + rxt(k,258)*y(k,28) + 3.000_r8*rxt(k,235)*y(k,41) & - + 2.000_r8*rxt(k,236)*y(k,64) + rxt(k,237)*y(k,67) - mat(k,923) = rxt(k,224)*y(k,45) - mat(k,949) = rxt(k,224)*y(k,6) - mat(k,856) = (rxt(k,402)+rxt(k,407))*y(k,75) - mat(k,385) = (rxt(k,402)+rxt(k,407))*y(k,71) - mat(k,932) = -(4._r8*rxt(k,221)*y(k,6) + (rxt(k,222) + rxt(k,223) + rxt(k,224) & - ) * y(k,45) + rxt(k,225)*y(k,139) + rxt(k,226)*y(k,97) + rxt(k,227) & - *y(k,98) + rxt(k,229)*y(k,106) + rxt(k,230)*y(k,111) + rxt(k,376) & - *y(k,122)) - mat(k,958) = -(rxt(k,222) + rxt(k,223) + rxt(k,224)) * y(k,6) - mat(k,1077) = -rxt(k,225)*y(k,6) - mat(k,1495) = -rxt(k,226)*y(k,6) - mat(k,994) = -rxt(k,227)*y(k,6) - mat(k,1447) = -rxt(k,229)*y(k,6) - mat(k,1402) = -rxt(k,230)*y(k,6) - mat(k,844) = -rxt(k,376)*y(k,6) - mat(k,878) = rxt(k,220)*y(k,108) - mat(k,297) = rxt(k,228)*y(k,106) - mat(k,435) = rxt(k,238)*y(k,144) - mat(k,389) = rxt(k,233)*y(k,106) - mat(k,1447) = mat(k,1447) + rxt(k,228)*y(k,7) + rxt(k,233)*y(k,75) - mat(k,1123) = rxt(k,220)*y(k,4) - mat(k,1275) = rxt(k,238)*y(k,67) - mat(k,294) = -(rxt(k,228)*y(k,106)) - mat(k,1424) = -rxt(k,228)*y(k,7) - mat(k,925) = rxt(k,227)*y(k,98) - mat(k,978) = rxt(k,227)*y(k,6) - mat(k,239) = -(rxt(k,276)*y(k,42) + rxt(k,277)*y(k,108) + rxt(k,301)*y(k,111)) - mat(k,1296) = -rxt(k,276)*y(k,9) - mat(k,1096) = -rxt(k,277)*y(k,9) - mat(k,1355) = -rxt(k,301)*y(k,9) - mat(k,424) = -(4._r8*rxt(k,278)*y(k,10) + rxt(k,279)*y(k,37) + rxt(k,280) & - *y(k,139) + rxt(k,281)*y(k,97)) - mat(k,1170) = -rxt(k,279)*y(k,10) - mat(k,1054) = -rxt(k,280)*y(k,10) - mat(k,1472) = -rxt(k,281)*y(k,10) - mat(k,169) = .500_r8*rxt(k,283)*y(k,111) - mat(k,158) = rxt(k,284)*y(k,42) + rxt(k,285)*y(k,111) - mat(k,1301) = rxt(k,284)*y(k,13) - mat(k,1372) = .500_r8*rxt(k,283)*y(k,12) + rxt(k,285)*y(k,13) - mat(k,126) = -(rxt(k,282)*y(k,111)) - mat(k,1339) = -rxt(k,282)*y(k,11) - mat(k,421) = .800_r8*rxt(k,278)*y(k,10) + .200_r8*rxt(k,279)*y(k,37) - mat(k,1163) = .200_r8*rxt(k,279)*y(k,10) - mat(k,168) = -(rxt(k,283)*y(k,111)) - mat(k,1345) = -rxt(k,283)*y(k,12) - mat(k,422) = rxt(k,280)*y(k,139) - mat(k,1038) = rxt(k,280)*y(k,10) - mat(k,157) = -(rxt(k,284)*y(k,42) + rxt(k,285)*y(k,111)) - mat(k,1293) = -rxt(k,284)*y(k,13) - mat(k,1343) = -rxt(k,285)*y(k,13) - mat(k,623) = -(rxt(k,304)*y(k,99) + rxt(k,305)*y(k,108) + rxt(k,322)*y(k,111)) - mat(k,1218) = -rxt(k,304)*y(k,14) - mat(k,1108) = -rxt(k,305)*y(k,14) - mat(k,1385) = -rxt(k,322)*y(k,14) - mat(k,475) = .130_r8*rxt(k,355)*y(k,108) - mat(k,1108) = mat(k,1108) + .130_r8*rxt(k,355)*y(k,79) - mat(k,460) = -(rxt(k,306)*y(k,37) + rxt(k,307)*y(k,139) + rxt(k,308)*y(k,97)) - mat(k,1171) = -rxt(k,306)*y(k,15) - mat(k,1057) = -rxt(k,307)*y(k,15) - mat(k,1473) = -rxt(k,308)*y(k,15) - mat(k,33) = 1.670_r8*rxt(k,344)*y(k,111) - mat(k,205) = rxt(k,309)*y(k,111) - mat(k,50) = rxt(k,310)*y(k,111) - mat(k,1375) = 1.670_r8*rxt(k,344)*y(k,3) + rxt(k,309)*y(k,16) + rxt(k,310) & - *y(k,17) - mat(k,203) = -(rxt(k,309)*y(k,111)) - mat(k,1350) = -rxt(k,309)*y(k,16) - mat(k,458) = rxt(k,307)*y(k,139) - mat(k,1039) = rxt(k,307)*y(k,15) - mat(k,49) = -(rxt(k,310)*y(k,111)) - mat(k,1333) = -rxt(k,310)*y(k,17) - mat(k,38) = -(rxt(k,207)*y(k,144)) - mat(k,1250) = -rxt(k,207)*y(k,18) - mat(k,71) = -(rxt(k,208)*y(k,144)) - mat(k,1255) = -rxt(k,208)*y(k,19) - mat(k,76) = -(rxt(k,234)*y(k,144)) - mat(k,1256) = -rxt(k,234)*y(k,20) - mat(k,53) = -(rxt(k,209)*y(k,144)) - mat(k,1252) = -rxt(k,209)*y(k,21) - mat(k,81) = -(rxt(k,210)*y(k,144)) - mat(k,1257) = -rxt(k,210)*y(k,22) - mat(k,57) = -(rxt(k,211)*y(k,144)) - mat(k,1253) = -rxt(k,211)*y(k,23) - mat(k,86) = -(rxt(k,212)*y(k,144)) - mat(k,1258) = -rxt(k,212)*y(k,24) - mat(k,61) = -(rxt(k,213)*y(k,144)) - mat(k,1254) = -rxt(k,213)*y(k,25) - mat(k,246) = -(rxt(k,245)*y(k,42) + rxt(k,246)*y(k,111) + rxt(k,257)*y(k,144)) - mat(k,1297) = -rxt(k,245)*y(k,26) - mat(k,1356) = -rxt(k,246)*y(k,26) - mat(k,1267) = -rxt(k,257)*y(k,26) - mat(k,1021) = -(rxt(k,182)*y(k,42) + rxt(k,218)*y(k,4) + rxt(k,262)*y(k,99) & - + rxt(k,263)*y(k,106) + rxt(k,264)*y(k,111)) - mat(k,1316) = -rxt(k,182)*y(k,27) - mat(k,880) = -rxt(k,218)*y(k,27) - mat(k,1236) = -rxt(k,262)*y(k,27) - mat(k,1450) = -rxt(k,263)*y(k,27) - mat(k,1405) = -rxt(k,264)*y(k,27) - mat(k,242) = rxt(k,277)*y(k,108) - mat(k,428) = .700_r8*rxt(k,279)*y(k,37) - mat(k,631) = .500_r8*rxt(k,305)*y(k,108) - mat(k,466) = rxt(k,306)*y(k,37) - mat(k,797) = rxt(k,289)*y(k,37) + .600_r8*rxt(k,350)*y(k,81) & - + .250_r8*rxt(k,324)*y(k,84) + rxt(k,333)*y(k,86) & - + .250_r8*rxt(k,360)*y(k,134) - mat(k,321) = .500_r8*rxt(k,293)*y(k,111) - mat(k,1190) = .700_r8*rxt(k,279)*y(k,10) + rxt(k,306)*y(k,15) + rxt(k,289) & - *y(k,32) + (4.000_r8*rxt(k,265)+2.000_r8*rxt(k,266))*y(k,37) & - + rxt(k,189)*y(k,45) + 1.200_r8*rxt(k,351)*y(k,81) & - + .880_r8*rxt(k,325)*y(k,84) + 2.000_r8*rxt(k,334)*y(k,86) & - + rxt(k,268)*y(k,97) + .800_r8*rxt(k,318)*y(k,118) & - + .800_r8*rxt(k,361)*y(k,134) - mat(k,283) = rxt(k,269)*y(k,111) - mat(k,210) = .300_r8*rxt(k,270)*y(k,111) - mat(k,1523) = (rxt(k,273)+rxt(k,274))*y(k,144) - mat(k,961) = rxt(k,189)*y(k,37) - mat(k,381) = .500_r8*rxt(k,295)*y(k,97) - mat(k,610) = .800_r8*rxt(k,298)*y(k,111) - mat(k,482) = .910_r8*rxt(k,355)*y(k,108) - mat(k,416) = .072_r8*rxt(k,348)*y(k,97) + .072_r8*rxt(k,349)*y(k,99) & - + .206_r8*rxt(k,347)*y(k,139) - mat(k,709) = .600_r8*rxt(k,350)*y(k,32) + 1.200_r8*rxt(k,351)*y(k,37) & - + .550_r8*rxt(k,353)*y(k,97) + .600_r8*rxt(k,354)*y(k,99) - mat(k,660) = .120_r8*rxt(k,330)*y(k,108) - mat(k,731) = .250_r8*rxt(k,324)*y(k,32) + .880_r8*rxt(k,325)*y(k,37) & - + .250_r8*rxt(k,328)*y(k,97) + .250_r8*rxt(k,327)*y(k,99) - mat(k,769) = rxt(k,333)*y(k,32) + 2.000_r8*rxt(k,334)*y(k,37) & - + 4.000_r8*rxt(k,336)*y(k,86) + rxt(k,337)*y(k,97) + rxt(k,338) & - *y(k,99) + .450_r8*rxt(k,335)*y(k,139) - mat(k,307) = .500_r8*rxt(k,339)*y(k,111) - mat(k,750) = .600_r8*rxt(k,340)*y(k,108) - mat(k,1498) = rxt(k,268)*y(k,37) + .500_r8*rxt(k,295)*y(k,57) & - + .072_r8*rxt(k,348)*y(k,80) + .550_r8*rxt(k,353)*y(k,81) & - + .250_r8*rxt(k,328)*y(k,84) + rxt(k,337)*y(k,86) + rxt(k,316) & - *y(k,114) + rxt(k,320)*y(k,118) + .250_r8*rxt(k,363)*y(k,134) - mat(k,1236) = mat(k,1236) + .072_r8*rxt(k,349)*y(k,80) + .600_r8*rxt(k,354) & - *y(k,81) + .250_r8*rxt(k,327)*y(k,84) + rxt(k,338)*y(k,86) - mat(k,1126) = rxt(k,277)*y(k,9) + .500_r8*rxt(k,305)*y(k,14) & - + .910_r8*rxt(k,355)*y(k,79) + .120_r8*rxt(k,330)*y(k,83) & - + .600_r8*rxt(k,340)*y(k,88) - mat(k,1405) = mat(k,1405) + .500_r8*rxt(k,293)*y(k,36) + rxt(k,269)*y(k,38) & - + .300_r8*rxt(k,270)*y(k,39) + .800_r8*rxt(k,298)*y(k,60) & - + .500_r8*rxt(k,339)*y(k,87) + rxt(k,300)*y(k,113) - mat(k,278) = rxt(k,300)*y(k,111) - mat(k,406) = rxt(k,316)*y(k,97) - mat(k,600) = .800_r8*rxt(k,318)*y(k,37) + rxt(k,320)*y(k,97) & - + .150_r8*rxt(k,319)*y(k,139) - mat(k,676) = .250_r8*rxt(k,360)*y(k,32) + .800_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) - mat(k,1080) = .206_r8*rxt(k,347)*y(k,80) + .450_r8*rxt(k,335)*y(k,86) & - + .150_r8*rxt(k,319)*y(k,118) - mat(k,1278) = (rxt(k,273)+rxt(k,274))*y(k,40) - mat(k,325) = -(rxt(k,247)*y(k,42) + rxt(k,248)*y(k,111) + rxt(k,258)*y(k,144)) - mat(k,1299) = -rxt(k,247)*y(k,28) - mat(k,1364) = -rxt(k,248)*y(k,28) - mat(k,1268) = -rxt(k,258)*y(k,28) - mat(k,45) = -(rxt(k,249)*y(k,111)) - mat(k,1332) = -rxt(k,249)*y(k,29) - mat(k,640) = -(rxt(k,286)*y(k,99) + rxt(k,287)*y(k,111)) - mat(k,1219) = -rxt(k,286)*y(k,30) - mat(k,1386) = -rxt(k,287)*y(k,30) - mat(k,425) = 3.200_r8*rxt(k,278)*y(k,10) + .800_r8*rxt(k,279)*y(k,37) & - + rxt(k,281)*y(k,97) - mat(k,127) = rxt(k,282)*y(k,111) - mat(k,170) = .500_r8*rxt(k,283)*y(k,111) - mat(k,624) = .500_r8*rxt(k,305)*y(k,108) - mat(k,462) = .270_r8*rxt(k,308)*y(k,97) - mat(k,1175) = .800_r8*rxt(k,279)*y(k,10) - mat(k,740) = .100_r8*rxt(k,340)*y(k,108) - mat(k,1482) = rxt(k,281)*y(k,10) + .270_r8*rxt(k,308)*y(k,15) + rxt(k,316) & - *y(k,114) - mat(k,1109) = .500_r8*rxt(k,305)*y(k,14) + .100_r8*rxt(k,340)*y(k,88) - mat(k,1386) = mat(k,1386) + rxt(k,282)*y(k,11) + .500_r8*rxt(k,283)*y(k,12) - mat(k,403) = rxt(k,316)*y(k,97) + mat(k,1164) = rxt(k,208)*y(k,17) + rxt(k,234)*y(k,18) + 2.000_r8*rxt(k,257) & + *y(k,24) + rxt(k,258)*y(k,26) + 3.000_r8*rxt(k,235)*y(k,38) & + + 2.000_r8*rxt(k,236)*y(k,59) + rxt(k,237)*y(k,62) + mat(k,1337) = rxt(k,224)*y(k,42) + mat(k,1312) = rxt(k,224)*y(k,6) + mat(k,856) = (rxt(k,402)+rxt(k,407))*y(k,70) + mat(k,381) = (rxt(k,402)+rxt(k,407))*y(k,66) + mat(k,1354) = -(4._r8*rxt(k,221)*y(k,6) + (rxt(k,222) + rxt(k,223) + rxt(k,224) & + ) * y(k,42) + rxt(k,225)*y(k,134) + rxt(k,226)*y(k,91) + rxt(k,227) & + *y(k,92) + rxt(k,229)*y(k,100) + rxt(k,230)*y(k,106) + rxt(k,376) & + *y(k,115)) + mat(k,1330) = -(rxt(k,222) + rxt(k,223) + rxt(k,224)) * y(k,6) + mat(k,1413) = -rxt(k,225)*y(k,6) + mat(k,1134) = -rxt(k,226)*y(k,6) + mat(k,1086) = -rxt(k,227)*y(k,6) + mat(k,1482) = -rxt(k,229)*y(k,6) + mat(k,1265) = -rxt(k,230)*y(k,6) + mat(k,850) = -rxt(k,376)*y(k,6) + mat(k,883) = rxt(k,220)*y(k,102) + mat(k,271) = rxt(k,228)*y(k,100) + mat(k,455) = rxt(k,238)*y(k,142) + mat(k,387) = rxt(k,233)*y(k,100) + mat(k,1482) = mat(k,1482) + rxt(k,228)*y(k,7) + rxt(k,233)*y(k,70) + mat(k,1551) = rxt(k,220)*y(k,4) + mat(k,1176) = rxt(k,238)*y(k,62) + mat(k,266) = -(rxt(k,228)*y(k,100)) + mat(k,1449) = -rxt(k,228)*y(k,7) + mat(k,1339) = rxt(k,227)*y(k,92) + mat(k,1059) = rxt(k,227)*y(k,6) + mat(k,232) = -(rxt(k,276)*y(k,39) + rxt(k,277)*y(k,102) + rxt(k,301)*y(k,106)) + mat(k,1276) = -rxt(k,276)*y(k,9) + mat(k,1514) = -rxt(k,277)*y(k,9) + mat(k,1207) = -rxt(k,301)*y(k,9) + mat(k,126) = -(rxt(k,282)*y(k,106)) + mat(k,1192) = -rxt(k,282)*y(k,10) + mat(k,948) = .200_r8*rxt(k,279)*y(k,128) + mat(k,421) = .200_r8*rxt(k,279)*y(k,34) + .800_r8*rxt(k,278)*y(k,128) + mat(k,168) = -(rxt(k,283)*y(k,106)) + mat(k,1198) = -rxt(k,283)*y(k,11) + mat(k,422) = rxt(k,280)*y(k,134) + mat(k,1364) = rxt(k,280)*y(k,128) + mat(k,157) = -(rxt(k,284)*y(k,39) + rxt(k,285)*y(k,106)) + mat(k,1273) = -rxt(k,284)*y(k,12) + mat(k,1196) = -rxt(k,285)*y(k,12) + mat(k,623) = -(rxt(k,304)*y(k,93) + rxt(k,305)*y(k,102) + rxt(k,322)*y(k,106)) + mat(k,1003) = -rxt(k,304)*y(k,13) + mat(k,1526) = -rxt(k,305)*y(k,13) + mat(k,1238) = -rxt(k,322)*y(k,13) + mat(k,475) = .130_r8*rxt(k,355)*y(k,102) + mat(k,1526) = mat(k,1526) + .130_r8*rxt(k,355)*y(k,74) + mat(k,203) = -(rxt(k,309)*y(k,106)) + mat(k,1203) = -rxt(k,309)*y(k,14) + mat(k,458) = rxt(k,307)*y(k,134) + mat(k,1365) = rxt(k,307)*y(k,129) + mat(k,46) = -(rxt(k,310)*y(k,106)) + mat(k,1185) = -rxt(k,310)*y(k,15) + mat(k,39) = -(rxt(k,207)*y(k,142)) + mat(k,1141) = -rxt(k,207)*y(k,16) + mat(k,72) = -(rxt(k,208)*y(k,142)) + mat(k,1146) = -rxt(k,208)*y(k,17) + mat(k,77) = -(rxt(k,234)*y(k,142)) + mat(k,1147) = -rxt(k,234)*y(k,18) + mat(k,50) = -(rxt(k,209)*y(k,142)) + mat(k,1143) = -rxt(k,209)*y(k,19) + mat(k,82) = -(rxt(k,210)*y(k,142)) + mat(k,1148) = -rxt(k,210)*y(k,20) + mat(k,54) = -(rxt(k,211)*y(k,142)) + mat(k,1144) = -rxt(k,211)*y(k,21) + mat(k,87) = -(rxt(k,212)*y(k,142)) + mat(k,1149) = -rxt(k,212)*y(k,22) + mat(k,58) = -(rxt(k,213)*y(k,142)) + mat(k,1145) = -rxt(k,213)*y(k,23) + mat(k,246) = -(rxt(k,245)*y(k,39) + rxt(k,246)*y(k,106) + rxt(k,257)*y(k,142)) + mat(k,1277) = -rxt(k,245)*y(k,24) + mat(k,1209) = -rxt(k,246)*y(k,24) + mat(k,1158) = -rxt(k,257)*y(k,24) + mat(k,1439) = -(rxt(k,182)*y(k,39) + rxt(k,218)*y(k,4) + rxt(k,262)*y(k,93) & + + rxt(k,263)*y(k,100) + rxt(k,264)*y(k,106)) + mat(k,1305) = -rxt(k,182)*y(k,25) + mat(k,885) = -rxt(k,218)*y(k,25) + mat(k,1030) = -rxt(k,262)*y(k,25) + mat(k,1484) = -rxt(k,263)*y(k,25) + mat(k,1267) = -rxt(k,264)*y(k,25) + mat(k,237) = rxt(k,277)*y(k,102) + mat(k,637) = .500_r8*rxt(k,305)*y(k,102) + mat(k,316) = .500_r8*rxt(k,293)*y(k,106) + mat(k,984) = (4.000_r8*rxt(k,265)+2.000_r8*rxt(k,266))*y(k,34) + rxt(k,189) & + *y(k,42) + rxt(k,268)*y(k,91) + .700_r8*rxt(k,279)*y(k,128) & + + rxt(k,306)*y(k,129) + rxt(k,289)*y(k,130) & + + 1.200_r8*rxt(k,351)*y(k,135) + .880_r8*rxt(k,325)*y(k,136) & + + 2.000_r8*rxt(k,334)*y(k,137) + .800_r8*rxt(k,318)*y(k,150) & + + .800_r8*rxt(k,361)*y(k,151) + mat(k,285) = rxt(k,269)*y(k,106) + mat(k,219) = .300_r8*rxt(k,270)*y(k,106) + mat(k,943) = (rxt(k,273)+rxt(k,274))*y(k,142) + mat(k,1332) = rxt(k,189)*y(k,34) + mat(k,599) = .800_r8*rxt(k,298)*y(k,106) + mat(k,487) = .910_r8*rxt(k,355)*y(k,102) + mat(k,409) = .072_r8*rxt(k,348)*y(k,91) + .072_r8*rxt(k,349)*y(k,93) & + + .206_r8*rxt(k,347)*y(k,134) + mat(k,662) = .120_r8*rxt(k,330)*y(k,102) + mat(k,310) = .500_r8*rxt(k,339)*y(k,106) + mat(k,756) = .600_r8*rxt(k,340)*y(k,102) + mat(k,1136) = rxt(k,268)*y(k,34) + .072_r8*rxt(k,348)*y(k,75) & + + .500_r8*rxt(k,295)*y(k,133) + .550_r8*rxt(k,353)*y(k,135) & + + .250_r8*rxt(k,328)*y(k,136) + rxt(k,337)*y(k,137) + rxt(k,316) & + *y(k,149) + rxt(k,320)*y(k,150) + .250_r8*rxt(k,363)*y(k,151) + mat(k,1030) = mat(k,1030) + .072_r8*rxt(k,349)*y(k,75) + .600_r8*rxt(k,354) & + *y(k,135) + .250_r8*rxt(k,327)*y(k,136) + rxt(k,338)*y(k,137) + mat(k,1553) = rxt(k,277)*y(k,9) + .500_r8*rxt(k,305)*y(k,13) & + + .910_r8*rxt(k,355)*y(k,74) + .120_r8*rxt(k,330)*y(k,77) & + + .600_r8*rxt(k,340)*y(k,80) + mat(k,1267) = mat(k,1267) + .500_r8*rxt(k,293)*y(k,33) + rxt(k,269)*y(k,35) & + + .300_r8*rxt(k,270)*y(k,36) + .800_r8*rxt(k,298)*y(k,55) & + + .500_r8*rxt(k,339)*y(k,79) + rxt(k,300)*y(k,108) + mat(k,281) = rxt(k,300)*y(k,106) + mat(k,432) = .700_r8*rxt(k,279)*y(k,34) + mat(k,470) = rxt(k,306)*y(k,34) + mat(k,803) = rxt(k,289)*y(k,34) + .600_r8*rxt(k,350)*y(k,135) & + + .250_r8*rxt(k,324)*y(k,136) + rxt(k,333)*y(k,137) & + + .250_r8*rxt(k,360)*y(k,151) + mat(k,399) = .500_r8*rxt(k,295)*y(k,91) + mat(k,1415) = .206_r8*rxt(k,347)*y(k,75) + .450_r8*rxt(k,335)*y(k,137) & + + .150_r8*rxt(k,319)*y(k,150) + mat(k,714) = 1.200_r8*rxt(k,351)*y(k,34) + .550_r8*rxt(k,353)*y(k,91) & + + .600_r8*rxt(k,354)*y(k,93) + .600_r8*rxt(k,350)*y(k,130) + mat(k,736) = .880_r8*rxt(k,325)*y(k,34) + .250_r8*rxt(k,328)*y(k,91) & + + .250_r8*rxt(k,327)*y(k,93) + .250_r8*rxt(k,324)*y(k,130) + mat(k,774) = 2.000_r8*rxt(k,334)*y(k,34) + rxt(k,337)*y(k,91) + rxt(k,338) & + *y(k,93) + rxt(k,333)*y(k,130) + .450_r8*rxt(k,335)*y(k,134) & + + 4.000_r8*rxt(k,336)*y(k,137) + mat(k,1178) = (rxt(k,273)+rxt(k,274))*y(k,37) + mat(k,419) = rxt(k,316)*y(k,91) + mat(k,611) = .800_r8*rxt(k,318)*y(k,34) + rxt(k,320)*y(k,91) & + + .150_r8*rxt(k,319)*y(k,134) + mat(k,681) = .800_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .250_r8*rxt(k,360)*y(k,130) + mat(k,325) = -(rxt(k,247)*y(k,39) + rxt(k,248)*y(k,106) + rxt(k,258)*y(k,142)) + mat(k,1279) = -rxt(k,247)*y(k,26) + mat(k,1217) = -rxt(k,248)*y(k,26) + mat(k,1159) = -rxt(k,258)*y(k,26) + mat(k,62) = -(rxt(k,249)*y(k,106)) + mat(k,1186) = -rxt(k,249)*y(k,27) + mat(k,640) = -(rxt(k,286)*y(k,93) + rxt(k,287)*y(k,106)) + mat(k,1004) = -rxt(k,286)*y(k,28) + mat(k,1239) = -rxt(k,287)*y(k,28) + mat(k,127) = rxt(k,282)*y(k,106) + mat(k,170) = .500_r8*rxt(k,283)*y(k,106) + mat(k,624) = .500_r8*rxt(k,305)*y(k,102) + mat(k,960) = .800_r8*rxt(k,279)*y(k,128) + mat(k,740) = .100_r8*rxt(k,340)*y(k,102) + mat(k,1111) = rxt(k,281)*y(k,128) + .270_r8*rxt(k,308)*y(k,129) + rxt(k,316) & + *y(k,149) + mat(k,1527) = .500_r8*rxt(k,305)*y(k,13) + .100_r8*rxt(k,340)*y(k,80) + mat(k,1239) = mat(k,1239) + rxt(k,282)*y(k,10) + .500_r8*rxt(k,283)*y(k,11) + mat(k,425) = .800_r8*rxt(k,279)*y(k,34) + rxt(k,281)*y(k,91) & + + 3.200_r8*rxt(k,278)*y(k,128) + mat(k,462) = .270_r8*rxt(k,308)*y(k,91) + mat(k,413) = rxt(k,316)*y(k,91) + mat(k,181) = -(rxt(k,250)*y(k,39) + rxt(k,251)*y(k,106)) + mat(k,1274) = -rxt(k,250)*y(k,29) + mat(k,1200) = -rxt(k,251)*y(k,29) + mat(k,375) = -(rxt(k,323)*y(k,106)) + mat(k,1222) = -rxt(k,323)*y(k,30) + mat(k,954) = .820_r8*rxt(k,306)*y(k,129) + mat(k,1097) = .820_r8*rxt(k,308)*y(k,129) + mat(k,1222) = mat(k,1222) + .100_r8*rxt(k,368)*y(k,126) + mat(k,344) = .100_r8*rxt(k,368)*y(k,106) + mat(k,459) = .820_r8*rxt(k,306)*y(k,34) + .820_r8*rxt(k,308)*y(k,91) + mat(k,683) = -(rxt(k,311)*y(k,93) + rxt(k,312)*y(k,106)) + mat(k,1008) = -rxt(k,311)*y(k,31) + mat(k,1243) = -rxt(k,312)*y(k,31) + mat(k,964) = .240_r8*rxt(k,325)*y(k,136) + .500_r8*rxt(k,318)*y(k,150) & + + .100_r8*rxt(k,361)*y(k,151) + mat(k,614) = rxt(k,313)*y(k,106) + mat(k,655) = .880_r8*rxt(k,330)*y(k,102) + mat(k,742) = .500_r8*rxt(k,340)*y(k,102) + mat(k,1115) = .020_r8*rxt(k,353)*y(k,135) + .250_r8*rxt(k,328)*y(k,136) & + + .250_r8*rxt(k,363)*y(k,151) + mat(k,1008) = mat(k,1008) + .250_r8*rxt(k,327)*y(k,136) + .250_r8*rxt(k,364) & + *y(k,151) + mat(k,198) = rxt(k,314)*y(k,106) + mat(k,1531) = .880_r8*rxt(k,330)*y(k,77) + .500_r8*rxt(k,340)*y(k,80) + mat(k,1243) = mat(k,1243) + rxt(k,313)*y(k,72) + rxt(k,314)*y(k,94) + mat(k,788) = .250_r8*rxt(k,324)*y(k,136) + .250_r8*rxt(k,360)*y(k,151) + mat(k,701) = .020_r8*rxt(k,353)*y(k,91) + mat(k,725) = .240_r8*rxt(k,325)*y(k,34) + .250_r8*rxt(k,328)*y(k,91) & + + .250_r8*rxt(k,327)*y(k,93) + .250_r8*rxt(k,324)*y(k,130) + mat(k,604) = .500_r8*rxt(k,318)*y(k,34) + mat(k,672) = .100_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .250_r8*rxt(k,364)*y(k,93) + .250_r8*rxt(k,360)*y(k,130) end do end subroutine nlnmat01 subroutine nlnmat02( avec_len, mat, y, rxt ) @@ -245,207 +259,227 @@ subroutine nlnmat02( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,189) = -(rxt(k,250)*y(k,42) + rxt(k,251)*y(k,111)) - mat(k,1294) = -rxt(k,250)*y(k,31) - mat(k,1348) = -rxt(k,251)*y(k,31) - mat(k,793) = -(4._r8*rxt(k,288)*y(k,32) + rxt(k,289)*y(k,37) + rxt(k,290) & - *y(k,139) + rxt(k,291)*y(k,97) + rxt(k,302)*y(k,98) + rxt(k,324) & - *y(k,84) + rxt(k,350)*y(k,81) + rxt(k,360)*y(k,134)) - mat(k,1184) = -rxt(k,289)*y(k,32) - mat(k,1071) = -rxt(k,290)*y(k,32) - mat(k,1491) = -rxt(k,291)*y(k,32) - mat(k,988) = -rxt(k,302)*y(k,32) - mat(k,728) = -rxt(k,324)*y(k,32) - mat(k,706) = -rxt(k,350)*y(k,32) - mat(k,673) = -rxt(k,360)*y(k,32) - mat(k,642) = rxt(k,286)*y(k,99) + rxt(k,287)*y(k,111) - mat(k,793) = mat(k,793) + .530_r8*rxt(k,324)*y(k,84) - mat(k,684) = rxt(k,311)*y(k,99) + rxt(k,312)*y(k,111) - mat(k,319) = .500_r8*rxt(k,293)*y(k,111) - mat(k,1184) = mat(k,1184) + .260_r8*rxt(k,325)*y(k,84) + rxt(k,334)*y(k,86) & - + .300_r8*rxt(k,318)*y(k,118) - mat(k,480) = .080_r8*rxt(k,355)*y(k,108) - mat(k,658) = .100_r8*rxt(k,330)*y(k,108) - mat(k,728) = mat(k,728) + .530_r8*rxt(k,324)*y(k,32) + .260_r8*rxt(k,325) & - *y(k,37) + .530_r8*rxt(k,328)*y(k,97) + .530_r8*rxt(k,327) & - *y(k,99) - mat(k,766) = rxt(k,334)*y(k,37) + 4.000_r8*rxt(k,336)*y(k,86) + rxt(k,337) & - *y(k,97) + rxt(k,338)*y(k,99) + .450_r8*rxt(k,335)*y(k,139) - mat(k,746) = .280_r8*rxt(k,340)*y(k,108) - mat(k,1491) = mat(k,1491) + .530_r8*rxt(k,328)*y(k,84) + rxt(k,337)*y(k,86) & - + rxt(k,320)*y(k,118) - mat(k,1228) = rxt(k,286)*y(k,30) + rxt(k,311)*y(k,34) + .530_r8*rxt(k,327) & - *y(k,84) + rxt(k,338)*y(k,86) - mat(k,1118) = .080_r8*rxt(k,355)*y(k,79) + .100_r8*rxt(k,330)*y(k,83) & - + .280_r8*rxt(k,340)*y(k,88) - mat(k,1395) = rxt(k,287)*y(k,30) + rxt(k,312)*y(k,34) + .500_r8*rxt(k,293) & - *y(k,36) - mat(k,598) = .300_r8*rxt(k,318)*y(k,37) + rxt(k,320)*y(k,97) & - + .150_r8*rxt(k,319)*y(k,139) - mat(k,1071) = mat(k,1071) + .450_r8*rxt(k,335)*y(k,86) + .150_r8*rxt(k,319) & - *y(k,118) - mat(k,394) = -(rxt(k,323)*y(k,111)) - mat(k,1370) = -rxt(k,323)*y(k,33) - mat(k,459) = .820_r8*rxt(k,306)*y(k,37) + .820_r8*rxt(k,308)*y(k,97) - mat(k,1169) = .820_r8*rxt(k,306)*y(k,15) - mat(k,1469) = .820_r8*rxt(k,308)*y(k,15) - mat(k,1370) = mat(k,1370) + .100_r8*rxt(k,368)*y(k,133) - mat(k,344) = .100_r8*rxt(k,368)*y(k,111) - mat(k,683) = -(rxt(k,311)*y(k,99) + rxt(k,312)*y(k,111)) - mat(k,1223) = -rxt(k,311)*y(k,34) - mat(k,1390) = -rxt(k,312)*y(k,34) - mat(k,788) = .250_r8*rxt(k,324)*y(k,84) + .250_r8*rxt(k,360)*y(k,134) - mat(k,1179) = .240_r8*rxt(k,325)*y(k,84) + .500_r8*rxt(k,318)*y(k,118) & - + .100_r8*rxt(k,361)*y(k,134) - mat(k,614) = rxt(k,313)*y(k,111) - mat(k,701) = .020_r8*rxt(k,353)*y(k,97) - mat(k,655) = .880_r8*rxt(k,330)*y(k,108) - mat(k,725) = .250_r8*rxt(k,324)*y(k,32) + .240_r8*rxt(k,325)*y(k,37) & - + .250_r8*rxt(k,328)*y(k,97) + .250_r8*rxt(k,327)*y(k,99) - mat(k,742) = .500_r8*rxt(k,340)*y(k,108) - mat(k,1486) = .020_r8*rxt(k,353)*y(k,81) + .250_r8*rxt(k,328)*y(k,84) & - + .250_r8*rxt(k,363)*y(k,134) - mat(k,1223) = mat(k,1223) + .250_r8*rxt(k,327)*y(k,84) + .250_r8*rxt(k,364) & - *y(k,134) - mat(k,198) = rxt(k,314)*y(k,111) - mat(k,1113) = .880_r8*rxt(k,330)*y(k,83) + .500_r8*rxt(k,340)*y(k,88) - mat(k,1390) = mat(k,1390) + rxt(k,313)*y(k,77) + rxt(k,314)*y(k,100) - mat(k,597) = .500_r8*rxt(k,318)*y(k,37) - mat(k,672) = .250_r8*rxt(k,360)*y(k,32) + .100_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) + .250_r8*rxt(k,364)*y(k,99) - mat(k,353) = -(rxt(k,292)*y(k,111)) - mat(k,1366) = -rxt(k,292)*y(k,35) - mat(k,620) = .120_r8*rxt(k,305)*y(k,108) - mat(k,781) = .100_r8*rxt(k,289)*y(k,37) + .150_r8*rxt(k,290)*y(k,139) - mat(k,1167) = .100_r8*rxt(k,289)*y(k,32) - mat(k,762) = .150_r8*rxt(k,335)*y(k,139) - mat(k,1098) = .120_r8*rxt(k,305)*y(k,14) - mat(k,1048) = .150_r8*rxt(k,290)*y(k,32) + .150_r8*rxt(k,335)*y(k,86) - mat(k,318) = -(rxt(k,293)*y(k,111)) - mat(k,1363) = -rxt(k,293)*y(k,36) - mat(k,780) = .400_r8*rxt(k,290)*y(k,139) - mat(k,761) = .400_r8*rxt(k,335)*y(k,139) - mat(k,1047) = .400_r8*rxt(k,290)*y(k,32) + .400_r8*rxt(k,335)*y(k,86) - mat(k,1194) = -(rxt(k,189)*y(k,45) + (4._r8*rxt(k,265) + 4._r8*rxt(k,266) & - ) * y(k,37) + rxt(k,267)*y(k,139) + rxt(k,268)*y(k,97) + rxt(k,279) & - *y(k,10) + rxt(k,289)*y(k,32) + rxt(k,306)*y(k,15) + rxt(k,318) & - *y(k,118) + rxt(k,325)*y(k,84) + rxt(k,334)*y(k,86) + rxt(k,351) & - *y(k,81) + rxt(k,361)*y(k,134)) - mat(k,965) = -rxt(k,189)*y(k,37) - mat(k,1084) = -rxt(k,267)*y(k,37) - mat(k,1502) = -rxt(k,268)*y(k,37) - mat(k,430) = -rxt(k,279)*y(k,37) - mat(k,801) = -rxt(k,289)*y(k,37) - mat(k,468) = -rxt(k,306)*y(k,37) - mat(k,602) = -rxt(k,318)*y(k,37) - mat(k,734) = -rxt(k,325)*y(k,37) - mat(k,773) = -rxt(k,334)*y(k,37) - mat(k,713) = -rxt(k,351)*y(k,37) - mat(k,678) = -rxt(k,361)*y(k,37) - mat(k,634) = .280_r8*rxt(k,305)*y(k,108) - mat(k,801) = mat(k,801) + 4.000_r8*rxt(k,288)*y(k,32) + .900_r8*rxt(k,289) & - *y(k,37) + rxt(k,350)*y(k,81) + rxt(k,324)*y(k,84) + rxt(k,333) & - *y(k,86) + rxt(k,291)*y(k,97) + rxt(k,360)*y(k,134) & - + .450_r8*rxt(k,290)*y(k,139) - mat(k,355) = rxt(k,292)*y(k,111) - mat(k,1194) = mat(k,1194) + .900_r8*rxt(k,289)*y(k,32) - mat(k,211) = .700_r8*rxt(k,270)*y(k,111) - mat(k,1527) = rxt(k,183)*y(k,42) + rxt(k,239)*y(k,59) + rxt(k,271)*y(k,111) & - + rxt(k,272)*y(k,144) - mat(k,1320) = rxt(k,183)*y(k,40) - mat(k,493) = rxt(k,239)*y(k,40) - mat(k,485) = .050_r8*rxt(k,355)*y(k,108) - mat(k,713) = mat(k,713) + rxt(k,350)*y(k,32) - mat(k,734) = mat(k,734) + rxt(k,324)*y(k,32) - mat(k,773) = mat(k,773) + rxt(k,333)*y(k,32) - mat(k,1502) = mat(k,1502) + rxt(k,291)*y(k,32) - mat(k,1130) = .280_r8*rxt(k,305)*y(k,14) + .050_r8*rxt(k,355)*y(k,79) - mat(k,1409) = rxt(k,292)*y(k,35) + .700_r8*rxt(k,270)*y(k,39) + rxt(k,271) & - *y(k,40) - mat(k,678) = mat(k,678) + rxt(k,360)*y(k,32) - mat(k,1084) = mat(k,1084) + .450_r8*rxt(k,290)*y(k,32) - mat(k,1282) = rxt(k,272)*y(k,40) - mat(k,282) = -(rxt(k,269)*y(k,111)) - mat(k,1359) = -rxt(k,269)*y(k,38) - mat(k,423) = .300_r8*rxt(k,279)*y(k,37) - mat(k,1166) = .300_r8*rxt(k,279)*y(k,10) + 2.000_r8*rxt(k,266)*y(k,37) & - + .250_r8*rxt(k,351)*y(k,81) + .250_r8*rxt(k,325)*y(k,84) & - + .500_r8*rxt(k,318)*y(k,118) + .300_r8*rxt(k,361)*y(k,134) - mat(k,693) = .250_r8*rxt(k,351)*y(k,37) - mat(k,719) = .250_r8*rxt(k,325)*y(k,37) - mat(k,594) = .500_r8*rxt(k,318)*y(k,37) - mat(k,666) = .300_r8*rxt(k,361)*y(k,37) - mat(k,209) = -(rxt(k,270)*y(k,111)) - mat(k,1351) = -rxt(k,270)*y(k,39) - mat(k,1165) = rxt(k,267)*y(k,139) - mat(k,1040) = rxt(k,267)*y(k,37) - mat(k,1534) = -(rxt(k,183)*y(k,42) + rxt(k,239)*y(k,59) + rxt(k,271)*y(k,111) & - + (rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,144)) - mat(k,1327) = -rxt(k,183)*y(k,40) - mat(k,496) = -rxt(k,239)*y(k,40) - mat(k,1416) = -rxt(k,271)*y(k,40) - mat(k,1289) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,40) - mat(k,638) = .100_r8*rxt(k,305)*y(k,108) - mat(k,1137) = .100_r8*rxt(k,305)*y(k,14) - mat(k,221) = -(rxt(k,235)*y(k,144) + rxt(k,252)*y(k,42) + rxt(k,253)*y(k,111)) - mat(k,1266) = -rxt(k,235)*y(k,41) - mat(k,1295) = -rxt(k,252)*y(k,41) - mat(k,1353) = -rxt(k,253)*y(k,41) - mat(k,1323) = -(rxt(k,182)*y(k,27) + rxt(k,183)*y(k,40) + rxt(k,184)*y(k,63) & - + rxt(k,185)*y(k,65) + (rxt(k,186) + rxt(k,187)) * y(k,139) & - + rxt(k,188)*y(k,108) + rxt(k,195)*y(k,46) + rxt(k,204)*y(k,76) & - + rxt(k,245)*y(k,26) + rxt(k,247)*y(k,28) + rxt(k,250)*y(k,31) & - + rxt(k,252)*y(k,41) + rxt(k,284)*y(k,13)) - mat(k,1028) = -rxt(k,182)*y(k,42) - mat(k,1530) = -rxt(k,183)*y(k,42) - mat(k,832) = -rxt(k,184)*y(k,42) - mat(k,314) = -rxt(k,185)*y(k,42) - mat(k,1087) = -(rxt(k,186) + rxt(k,187)) * y(k,42) - mat(k,1133) = -rxt(k,188)*y(k,42) - mat(k,579) = -rxt(k,195)*y(k,42) - mat(k,454) = -rxt(k,204)*y(k,42) - mat(k,250) = -rxt(k,245)*y(k,42) - mat(k,331) = -rxt(k,247)*y(k,42) - mat(k,194) = -rxt(k,250)*y(k,42) - mat(k,225) = -rxt(k,252)*y(k,42) - mat(k,160) = -rxt(k,284)*y(k,42) - mat(k,941) = rxt(k,223)*y(k,45) - mat(k,40) = 4.000_r8*rxt(k,207)*y(k,144) - mat(k,75) = rxt(k,208)*y(k,144) - mat(k,56) = 2.000_r8*rxt(k,209)*y(k,144) - mat(k,85) = 2.000_r8*rxt(k,210)*y(k,144) - mat(k,60) = 2.000_r8*rxt(k,211)*y(k,144) - mat(k,90) = rxt(k,212)*y(k,144) - mat(k,64) = 2.000_r8*rxt(k,213)*y(k,144) - mat(k,46) = 3.000_r8*rxt(k,249)*y(k,111) - mat(k,194) = mat(k,194) + rxt(k,251)*y(k,111) - mat(k,1197) = rxt(k,189)*y(k,45) - mat(k,968) = rxt(k,223)*y(k,6) + rxt(k,189)*y(k,37) + (4.000_r8*rxt(k,190) & - +2.000_r8*rxt(k,192))*y(k,45) + rxt(k,194)*y(k,97) + rxt(k,199) & - *y(k,106) + rxt(k,200)*y(k,111) + rxt(k,377)*y(k,122) - mat(k,115) = rxt(k,244)*y(k,144) - mat(k,110) = rxt(k,254)*y(k,111) + rxt(k,259)*y(k,144) - mat(k,120) = rxt(k,255)*y(k,111) + rxt(k,260)*y(k,144) - mat(k,145) = rxt(k,256)*y(k,111) + rxt(k,261)*y(k,144) - mat(k,868) = rxt(k,202)*y(k,106) + rxt(k,203)*y(k,111) + rxt(k,214)*y(k,144) - mat(k,1505) = rxt(k,194)*y(k,45) - mat(k,1457) = rxt(k,199)*y(k,45) + rxt(k,202)*y(k,71) - mat(k,1412) = 3.000_r8*rxt(k,249)*y(k,29) + rxt(k,251)*y(k,31) + rxt(k,200) & - *y(k,45) + rxt(k,254)*y(k,68) + rxt(k,255)*y(k,69) + rxt(k,256) & - *y(k,70) + rxt(k,203)*y(k,71) - mat(k,849) = rxt(k,377)*y(k,45) - mat(k,1285) = 4.000_r8*rxt(k,207)*y(k,18) + rxt(k,208)*y(k,19) & - + 2.000_r8*rxt(k,209)*y(k,21) + 2.000_r8*rxt(k,210)*y(k,22) & - + 2.000_r8*rxt(k,211)*y(k,23) + rxt(k,212)*y(k,24) & - + 2.000_r8*rxt(k,213)*y(k,25) + rxt(k,244)*y(k,51) + rxt(k,259) & - *y(k,68) + rxt(k,260)*y(k,69) + rxt(k,261)*y(k,70) + rxt(k,214) & - *y(k,71) - mat(k,1292) = rxt(k,195)*y(k,46) - mat(k,948) = 2.000_r8*rxt(k,191)*y(k,45) - mat(k,571) = rxt(k,195)*y(k,42) + (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,71) - mat(k,855) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,46) + (rxt(k,395) & - +rxt(k,401)+rxt(k,406))*y(k,76) - mat(k,450) = (rxt(k,395)+rxt(k,401)+rxt(k,406))*y(k,71) + mat(k,353) = -(rxt(k,292)*y(k,106)) + mat(k,1219) = -rxt(k,292)*y(k,32) + mat(k,620) = .120_r8*rxt(k,305)*y(k,102) + mat(k,952) = .100_r8*rxt(k,289)*y(k,130) + mat(k,1516) = .120_r8*rxt(k,305)*y(k,13) + mat(k,781) = .100_r8*rxt(k,289)*y(k,34) + .150_r8*rxt(k,290)*y(k,134) + mat(k,1374) = .150_r8*rxt(k,290)*y(k,130) + .150_r8*rxt(k,335)*y(k,137) + mat(k,762) = .150_r8*rxt(k,335)*y(k,134) + mat(k,311) = -(rxt(k,293)*y(k,106)) + mat(k,1215) = -rxt(k,293)*y(k,33) + mat(k,780) = .400_r8*rxt(k,290)*y(k,134) + mat(k,1372) = .400_r8*rxt(k,290)*y(k,130) + .400_r8*rxt(k,335)*y(k,137) + mat(k,761) = .400_r8*rxt(k,335)*y(k,134) + mat(k,973) = -(rxt(k,189)*y(k,42) + (4._r8*rxt(k,265) + 4._r8*rxt(k,266) & + ) * y(k,34) + rxt(k,267)*y(k,134) + rxt(k,268)*y(k,91) + rxt(k,279) & + *y(k,128) + rxt(k,289)*y(k,130) + rxt(k,306)*y(k,129) + rxt(k,318) & + *y(k,150) + rxt(k,325)*y(k,136) + rxt(k,334)*y(k,137) + rxt(k,351) & + *y(k,135) + rxt(k,361)*y(k,151)) + mat(k,1321) = -rxt(k,189)*y(k,34) + mat(k,1404) = -rxt(k,267)*y(k,34) + mat(k,1125) = -rxt(k,268)*y(k,34) + mat(k,427) = -rxt(k,279)*y(k,34) + mat(k,797) = -rxt(k,289)*y(k,34) + mat(k,465) = -rxt(k,306)*y(k,34) + mat(k,606) = -rxt(k,318)*y(k,34) + mat(k,730) = -rxt(k,325)*y(k,34) + mat(k,768) = -rxt(k,334)*y(k,34) + mat(k,708) = -rxt(k,351)*y(k,34) + mat(k,675) = -rxt(k,361)*y(k,34) + mat(k,631) = .280_r8*rxt(k,305)*y(k,102) + mat(k,355) = rxt(k,292)*y(k,106) + mat(k,973) = mat(k,973) + .900_r8*rxt(k,289)*y(k,130) + mat(k,216) = .700_r8*rxt(k,270)*y(k,106) + mat(k,932) = rxt(k,183)*y(k,39) + rxt(k,239)*y(k,54) + rxt(k,271)*y(k,106) & + + rxt(k,272)*y(k,142) + mat(k,1294) = rxt(k,183)*y(k,37) + mat(k,493) = rxt(k,239)*y(k,37) + mat(k,481) = .050_r8*rxt(k,355)*y(k,102) + mat(k,1125) = mat(k,1125) + rxt(k,291)*y(k,130) + mat(k,1542) = .280_r8*rxt(k,305)*y(k,13) + .050_r8*rxt(k,355)*y(k,74) + mat(k,1256) = rxt(k,292)*y(k,32) + .700_r8*rxt(k,270)*y(k,36) + rxt(k,271) & + *y(k,37) + mat(k,797) = mat(k,797) + .900_r8*rxt(k,289)*y(k,34) + rxt(k,291)*y(k,91) & + + 4.000_r8*rxt(k,288)*y(k,130) + .450_r8*rxt(k,290)*y(k,134) & + + rxt(k,350)*y(k,135) + rxt(k,324)*y(k,136) + rxt(k,333) & + *y(k,137) + rxt(k,360)*y(k,151) + mat(k,1404) = mat(k,1404) + .450_r8*rxt(k,290)*y(k,130) + mat(k,708) = mat(k,708) + rxt(k,350)*y(k,130) + mat(k,730) = mat(k,730) + rxt(k,324)*y(k,130) + mat(k,768) = mat(k,768) + rxt(k,333)*y(k,130) + mat(k,1167) = rxt(k,272)*y(k,37) + mat(k,675) = mat(k,675) + rxt(k,360)*y(k,130) + mat(k,282) = -(rxt(k,269)*y(k,106)) + mat(k,1211) = -rxt(k,269)*y(k,35) + mat(k,951) = 2.000_r8*rxt(k,266)*y(k,34) + .300_r8*rxt(k,279)*y(k,128) & + + .250_r8*rxt(k,351)*y(k,135) + .250_r8*rxt(k,325)*y(k,136) & + + .500_r8*rxt(k,318)*y(k,150) + .300_r8*rxt(k,361)*y(k,151) + mat(k,423) = .300_r8*rxt(k,279)*y(k,34) + mat(k,692) = .250_r8*rxt(k,351)*y(k,34) + mat(k,719) = .250_r8*rxt(k,325)*y(k,34) + mat(k,601) = .500_r8*rxt(k,318)*y(k,34) + mat(k,666) = .300_r8*rxt(k,361)*y(k,34) + mat(k,215) = -(rxt(k,270)*y(k,106)) + mat(k,1205) = -rxt(k,270)*y(k,36) + mat(k,950) = rxt(k,267)*y(k,134) + mat(k,1367) = rxt(k,267)*y(k,34) + mat(k,931) = -(rxt(k,183)*y(k,39) + rxt(k,239)*y(k,54) + rxt(k,271)*y(k,106) & + + (rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,142)) + mat(k,1293) = -rxt(k,183)*y(k,37) + mat(k,492) = -rxt(k,239)*y(k,37) + mat(k,1255) = -rxt(k,271)*y(k,37) + mat(k,1166) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,37) + mat(k,630) = .100_r8*rxt(k,305)*y(k,102) + mat(k,1541) = .100_r8*rxt(k,305)*y(k,13) + mat(k,221) = -(rxt(k,235)*y(k,142) + rxt(k,252)*y(k,39) + rxt(k,253)*y(k,106)) + mat(k,1157) = -rxt(k,235)*y(k,38) + mat(k,1275) = -rxt(k,252)*y(k,38) + mat(k,1206) = -rxt(k,253)*y(k,38) + mat(k,1301) = -(rxt(k,182)*y(k,25) + rxt(k,183)*y(k,37) + rxt(k,184)*y(k,58) & + + rxt(k,185)*y(k,60) + (rxt(k,186) + rxt(k,187)) * y(k,134) & + + rxt(k,188)*y(k,102) + rxt(k,195)*y(k,43) + rxt(k,204)*y(k,71) & + + rxt(k,245)*y(k,24) + rxt(k,247)*y(k,26) + rxt(k,250)*y(k,29) & + + rxt(k,252)*y(k,38) + rxt(k,284)*y(k,12)) + mat(k,1435) = -rxt(k,182)*y(k,39) + mat(k,939) = -rxt(k,183)*y(k,39) + mat(k,834) = -rxt(k,184)*y(k,39) + mat(k,321) = -rxt(k,185)*y(k,39) + mat(k,1411) = -(rxt(k,186) + rxt(k,187)) * y(k,39) + mat(k,1549) = -rxt(k,188)*y(k,39) + mat(k,561) = -rxt(k,195)*y(k,39) + mat(k,437) = -rxt(k,204)*y(k,39) + mat(k,251) = -rxt(k,245)*y(k,39) + mat(k,331) = -rxt(k,247)*y(k,39) + mat(k,186) = -rxt(k,250)*y(k,39) + mat(k,226) = -rxt(k,252)*y(k,39) + mat(k,161) = -rxt(k,284)*y(k,39) + mat(k,1352) = rxt(k,223)*y(k,42) + mat(k,41) = 4.000_r8*rxt(k,207)*y(k,142) + mat(k,76) = rxt(k,208)*y(k,142) + mat(k,53) = 2.000_r8*rxt(k,209)*y(k,142) + mat(k,86) = 2.000_r8*rxt(k,210)*y(k,142) + mat(k,57) = 2.000_r8*rxt(k,211)*y(k,142) + mat(k,91) = rxt(k,212)*y(k,142) + mat(k,61) = 2.000_r8*rxt(k,213)*y(k,142) + mat(k,64) = 3.000_r8*rxt(k,249)*y(k,106) + mat(k,186) = mat(k,186) + rxt(k,251)*y(k,106) + mat(k,980) = rxt(k,189)*y(k,42) + mat(k,1328) = rxt(k,223)*y(k,6) + rxt(k,189)*y(k,34) + (4.000_r8*rxt(k,190) & + +2.000_r8*rxt(k,192))*y(k,42) + rxt(k,194)*y(k,91) + rxt(k,199) & + *y(k,100) + rxt(k,200)*y(k,106) + rxt(k,377)*y(k,115) + mat(k,113) = rxt(k,244)*y(k,142) + mat(k,109) = rxt(k,254)*y(k,106) + rxt(k,259)*y(k,142) + mat(k,118) = rxt(k,255)*y(k,106) + rxt(k,260)*y(k,142) + mat(k,146) = rxt(k,256)*y(k,106) + rxt(k,261)*y(k,142) + mat(k,867) = rxt(k,202)*y(k,100) + rxt(k,203)*y(k,106) + rxt(k,214)*y(k,142) + mat(k,1132) = rxt(k,194)*y(k,42) + mat(k,1480) = rxt(k,199)*y(k,42) + rxt(k,202)*y(k,66) + mat(k,1263) = 3.000_r8*rxt(k,249)*y(k,27) + rxt(k,251)*y(k,29) + rxt(k,200) & + *y(k,42) + rxt(k,254)*y(k,63) + rxt(k,255)*y(k,64) + rxt(k,256) & + *y(k,65) + rxt(k,203)*y(k,66) + mat(k,848) = rxt(k,377)*y(k,42) + mat(k,1174) = 4.000_r8*rxt(k,207)*y(k,16) + rxt(k,208)*y(k,17) & + + 2.000_r8*rxt(k,209)*y(k,19) + 2.000_r8*rxt(k,210)*y(k,20) & + + 2.000_r8*rxt(k,211)*y(k,21) + rxt(k,212)*y(k,22) & + + 2.000_r8*rxt(k,213)*y(k,23) + rxt(k,244)*y(k,48) + rxt(k,259) & + *y(k,63) + rxt(k,260)*y(k,64) + rxt(k,261)*y(k,65) + rxt(k,214) & + *y(k,66) + mat(k,1272) = rxt(k,195)*y(k,43) + mat(k,1311) = 2.000_r8*rxt(k,191)*y(k,42) + mat(k,554) = rxt(k,195)*y(k,39) + (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,66) + mat(k,855) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,43) + (rxt(k,395) & + +rxt(k,401)+rxt(k,406))*y(k,71) + mat(k,433) = (rxt(k,395)+rxt(k,401)+rxt(k,406))*y(k,66) + mat(k,1310) = 2.000_r8*rxt(k,216)*y(k,42) + mat(k,1329) = -(rxt(k,189)*y(k,34) + (4._r8*rxt(k,190) + 4._r8*rxt(k,191) & + + 4._r8*rxt(k,192) + 4._r8*rxt(k,216)) * y(k,42) + rxt(k,193) & + *y(k,134) + rxt(k,194)*y(k,91) + rxt(k,196)*y(k,92) + rxt(k,199) & + *y(k,100) + (rxt(k,200) + rxt(k,201)) * y(k,106) + (rxt(k,222) & + + rxt(k,223) + rxt(k,224)) * y(k,6) + rxt(k,377)*y(k,115)) + mat(k,981) = -rxt(k,189)*y(k,42) + mat(k,1412) = -rxt(k,193)*y(k,42) + mat(k,1133) = -rxt(k,194)*y(k,42) + mat(k,1085) = -rxt(k,196)*y(k,42) + mat(k,1481) = -rxt(k,199)*y(k,42) + mat(k,1264) = -(rxt(k,200) + rxt(k,201)) * y(k,42) + mat(k,1353) = -(rxt(k,222) + rxt(k,223) + rxt(k,224)) * y(k,42) + mat(k,849) = -rxt(k,377)*y(k,42) + mat(k,1302) = rxt(k,204)*y(k,71) + rxt(k,188)*y(k,102) + rxt(k,187)*y(k,134) + mat(k,562) = rxt(k,197)*y(k,100) + mat(k,868) = rxt(k,215)*y(k,142) + mat(k,438) = rxt(k,204)*y(k,39) + rxt(k,205)*y(k,100) + rxt(k,206)*y(k,106) + mat(k,1481) = mat(k,1481) + rxt(k,197)*y(k,43) + rxt(k,205)*y(k,71) + mat(k,1550) = rxt(k,188)*y(k,39) + mat(k,176) = rxt(k,382)*y(k,115) + mat(k,1264) = mat(k,1264) + rxt(k,206)*y(k,71) + mat(k,849) = mat(k,849) + rxt(k,382)*y(k,104) + mat(k,1412) = mat(k,1412) + rxt(k,187)*y(k,39) + mat(k,1175) = rxt(k,215)*y(k,66) + mat(k,556) = -(rxt(k,195)*y(k,39) + rxt(k,197)*y(k,100) + rxt(k,198)*y(k,106) & + + (rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,66)) + mat(k,1283) = -rxt(k,195)*y(k,43) + mat(k,1463) = -rxt(k,197)*y(k,43) + mat(k,1232) = -rxt(k,198)*y(k,43) + mat(k,859) = -(rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,43) + mat(k,1316) = rxt(k,196)*y(k,92) + mat(k,1064) = rxt(k,196)*y(k,42) + mat(k,649) = -(rxt(k,275)*y(k,106)) + mat(k,1240) = -rxt(k,275)*y(k,45) + mat(k,874) = rxt(k,218)*y(k,25) + mat(k,234) = .630_r8*rxt(k,277)*y(k,102) + mat(k,625) = .560_r8*rxt(k,305)*y(k,102) + mat(k,1421) = rxt(k,218)*y(k,4) + rxt(k,182)*y(k,39) + rxt(k,262)*y(k,93) & + + rxt(k,263)*y(k,100) + rxt(k,264)*y(k,106) + mat(k,182) = rxt(k,250)*y(k,39) + mat(k,682) = rxt(k,311)*y(k,93) + rxt(k,312)*y(k,106) + mat(k,961) = .110_r8*rxt(k,325)*y(k,136) + .200_r8*rxt(k,361)*y(k,151) + mat(k,1286) = rxt(k,182)*y(k,25) + rxt(k,250)*y(k,29) + mat(k,814) = rxt(k,426)*y(k,146) + mat(k,366) = rxt(k,299)*y(k,106) + mat(k,476) = .620_r8*rxt(k,355)*y(k,102) + mat(k,653) = .650_r8*rxt(k,330)*y(k,102) + mat(k,741) = .560_r8*rxt(k,340)*y(k,102) + mat(k,1112) = .220_r8*rxt(k,328)*y(k,136) + .250_r8*rxt(k,363)*y(k,151) + mat(k,1005) = rxt(k,262)*y(k,25) + rxt(k,311)*y(k,31) + .220_r8*rxt(k,327) & + *y(k,136) + .500_r8*rxt(k,364)*y(k,151) + mat(k,1465) = rxt(k,263)*y(k,25) + rxt(k,371)*y(k,105) + mat(k,1528) = .630_r8*rxt(k,277)*y(k,9) + .560_r8*rxt(k,305)*y(k,13) & + + .620_r8*rxt(k,355)*y(k,74) + .650_r8*rxt(k,330)*y(k,77) & + + .560_r8*rxt(k,340)*y(k,80) + mat(k,192) = rxt(k,371)*y(k,100) + rxt(k,372)*y(k,106) + mat(k,1240) = mat(k,1240) + rxt(k,264)*y(k,25) + rxt(k,312)*y(k,31) & + + rxt(k,299)*y(k,56) + rxt(k,372)*y(k,105) + mat(k,785) = .220_r8*rxt(k,324)*y(k,136) + .250_r8*rxt(k,360)*y(k,151) + mat(k,723) = .110_r8*rxt(k,325)*y(k,34) + .220_r8*rxt(k,328)*y(k,91) & + + .220_r8*rxt(k,327)*y(k,93) + .220_r8*rxt(k,324)*y(k,130) + mat(k,506) = rxt(k,426)*y(k,46) + mat(k,670) = .200_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .500_r8*rxt(k,364)*y(k,93) + .250_r8*rxt(k,360)*y(k,130) + mat(k,815) = -(rxt(k,426)*y(k,146)) + mat(k,507) = -rxt(k,426)*y(k,46) + mat(k,628) = .200_r8*rxt(k,305)*y(k,102) + mat(k,354) = rxt(k,292)*y(k,106) + mat(k,313) = .500_r8*rxt(k,293)*y(k,106) + mat(k,970) = .900_r8*rxt(k,289)*y(k,130) + rxt(k,334)*y(k,137) + mat(k,650) = rxt(k,275)*y(k,106) + mat(k,596) = .800_r8*rxt(k,298)*y(k,106) + mat(k,367) = rxt(k,299)*y(k,106) + mat(k,305) = .500_r8*rxt(k,339)*y(k,106) + mat(k,747) = .100_r8*rxt(k,340)*y(k,102) + mat(k,1121) = rxt(k,291)*y(k,130) + mat(k,1537) = .200_r8*rxt(k,305)*y(k,13) + .100_r8*rxt(k,340)*y(k,80) + mat(k,1249) = rxt(k,292)*y(k,32) + .500_r8*rxt(k,293)*y(k,33) + rxt(k,275) & + *y(k,45) + .800_r8*rxt(k,298)*y(k,55) + rxt(k,299)*y(k,56) & + + .500_r8*rxt(k,339)*y(k,79) + mat(k,794) = .900_r8*rxt(k,289)*y(k,34) + rxt(k,291)*y(k,91) & + + 4.000_r8*rxt(k,288)*y(k,130) + 2.000_r8*rxt(k,333)*y(k,137) & + + rxt(k,360)*y(k,151) + mat(k,1398) = .450_r8*rxt(k,335)*y(k,137) + mat(k,767) = rxt(k,334)*y(k,34) + 2.000_r8*rxt(k,333)*y(k,130) & + + .450_r8*rxt(k,335)*y(k,134) + 4.000_r8*rxt(k,336)*y(k,137) + mat(k,674) = rxt(k,360)*y(k,130) end do end subroutine nlnmat02 subroutine nlnmat03( avec_len, mat, y, rxt ) @@ -466,212 +500,217 @@ subroutine nlnmat03( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,947) = 2.000_r8*rxt(k,216)*y(k,45) - mat(k,959) = -(rxt(k,189)*y(k,37) + (4._r8*rxt(k,190) + 4._r8*rxt(k,191) & - + 4._r8*rxt(k,192) + 4._r8*rxt(k,216)) * y(k,45) + rxt(k,193) & - *y(k,139) + rxt(k,194)*y(k,97) + rxt(k,196)*y(k,98) + rxt(k,199) & - *y(k,106) + (rxt(k,200) + rxt(k,201)) * y(k,111) + (rxt(k,222) & - + rxt(k,223) + rxt(k,224)) * y(k,6) + rxt(k,377)*y(k,122)) - mat(k,1188) = -rxt(k,189)*y(k,45) - mat(k,1078) = -rxt(k,193)*y(k,45) - mat(k,1496) = -rxt(k,194)*y(k,45) - mat(k,995) = -rxt(k,196)*y(k,45) - mat(k,1448) = -rxt(k,199)*y(k,45) - mat(k,1403) = -(rxt(k,200) + rxt(k,201)) * y(k,45) - mat(k,933) = -(rxt(k,222) + rxt(k,223) + rxt(k,224)) * y(k,45) - mat(k,845) = -rxt(k,377)*y(k,45) - mat(k,1314) = rxt(k,204)*y(k,76) + rxt(k,188)*y(k,108) + rxt(k,187)*y(k,139) - mat(k,575) = rxt(k,197)*y(k,106) - mat(k,863) = rxt(k,215)*y(k,144) - mat(k,453) = rxt(k,204)*y(k,42) + rxt(k,205)*y(k,106) + rxt(k,206)*y(k,111) - mat(k,1448) = mat(k,1448) + rxt(k,197)*y(k,46) + rxt(k,205)*y(k,76) - mat(k,1124) = rxt(k,188)*y(k,42) - mat(k,176) = rxt(k,382)*y(k,122) - mat(k,1403) = mat(k,1403) + rxt(k,206)*y(k,76) - mat(k,845) = mat(k,845) + rxt(k,382)*y(k,109) - mat(k,1078) = mat(k,1078) + rxt(k,187)*y(k,42) - mat(k,1276) = rxt(k,215)*y(k,71) - mat(k,573) = -(rxt(k,195)*y(k,42) + rxt(k,197)*y(k,106) + rxt(k,198)*y(k,111) & - + (rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,71)) - mat(k,1303) = -rxt(k,195)*y(k,46) - mat(k,1439) = -rxt(k,197)*y(k,46) - mat(k,1380) = -rxt(k,198)*y(k,46) - mat(k,859) = -(rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,46) - mat(k,953) = rxt(k,196)*y(k,98) - mat(k,983) = rxt(k,196)*y(k,45) - mat(k,649) = -(rxt(k,275)*y(k,111)) - mat(k,1387) = -rxt(k,275)*y(k,48) - mat(k,874) = rxt(k,218)*y(k,27) - mat(k,241) = .630_r8*rxt(k,277)*y(k,108) - mat(k,625) = .560_r8*rxt(k,305)*y(k,108) - mat(k,1012) = rxt(k,218)*y(k,4) + rxt(k,182)*y(k,42) + rxt(k,262)*y(k,99) & - + rxt(k,263)*y(k,106) + rxt(k,264)*y(k,111) - mat(k,190) = rxt(k,250)*y(k,42) - mat(k,785) = .220_r8*rxt(k,324)*y(k,84) + .250_r8*rxt(k,360)*y(k,134) - mat(k,682) = rxt(k,311)*y(k,99) + rxt(k,312)*y(k,111) - mat(k,1176) = .110_r8*rxt(k,325)*y(k,84) + .200_r8*rxt(k,361)*y(k,134) - mat(k,1306) = rxt(k,182)*y(k,27) + rxt(k,250)*y(k,31) - mat(k,814) = rxt(k,426)*y(k,148) - mat(k,366) = rxt(k,299)*y(k,111) - mat(k,476) = .620_r8*rxt(k,355)*y(k,108) - mat(k,653) = .650_r8*rxt(k,330)*y(k,108) - mat(k,723) = .220_r8*rxt(k,324)*y(k,32) + .110_r8*rxt(k,325)*y(k,37) & - + .220_r8*rxt(k,328)*y(k,97) + .220_r8*rxt(k,327)*y(k,99) - mat(k,741) = .560_r8*rxt(k,340)*y(k,108) - mat(k,1483) = .220_r8*rxt(k,328)*y(k,84) + .250_r8*rxt(k,363)*y(k,134) - mat(k,1220) = rxt(k,262)*y(k,27) + rxt(k,311)*y(k,34) + .220_r8*rxt(k,327) & - *y(k,84) + .500_r8*rxt(k,364)*y(k,134) - mat(k,1440) = rxt(k,263)*y(k,27) + rxt(k,371)*y(k,110) - mat(k,1110) = .630_r8*rxt(k,277)*y(k,9) + .560_r8*rxt(k,305)*y(k,14) & - + .620_r8*rxt(k,355)*y(k,79) + .650_r8*rxt(k,330)*y(k,83) & - + .560_r8*rxt(k,340)*y(k,88) - mat(k,184) = rxt(k,371)*y(k,106) + rxt(k,372)*y(k,111) - mat(k,1387) = mat(k,1387) + rxt(k,264)*y(k,27) + rxt(k,312)*y(k,34) & - + rxt(k,299)*y(k,61) + rxt(k,372)*y(k,110) - mat(k,670) = .250_r8*rxt(k,360)*y(k,32) + .200_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) + .500_r8*rxt(k,364)*y(k,99) - mat(k,506) = rxt(k,426)*y(k,49) - mat(k,815) = -(rxt(k,426)*y(k,148)) - mat(k,507) = -rxt(k,426)*y(k,49) - mat(k,628) = .200_r8*rxt(k,305)*y(k,108) - mat(k,794) = 4.000_r8*rxt(k,288)*y(k,32) + .900_r8*rxt(k,289)*y(k,37) & - + 2.000_r8*rxt(k,333)*y(k,86) + rxt(k,291)*y(k,97) + rxt(k,360) & - *y(k,134) - mat(k,354) = rxt(k,292)*y(k,111) - mat(k,320) = .500_r8*rxt(k,293)*y(k,111) - mat(k,1185) = .900_r8*rxt(k,289)*y(k,32) + rxt(k,334)*y(k,86) - mat(k,650) = rxt(k,275)*y(k,111) - mat(k,609) = .800_r8*rxt(k,298)*y(k,111) - mat(k,367) = rxt(k,299)*y(k,111) - mat(k,767) = 2.000_r8*rxt(k,333)*y(k,32) + rxt(k,334)*y(k,37) & - + 4.000_r8*rxt(k,336)*y(k,86) + .450_r8*rxt(k,335)*y(k,139) - mat(k,305) = .500_r8*rxt(k,339)*y(k,111) - mat(k,747) = .100_r8*rxt(k,340)*y(k,108) - mat(k,1492) = rxt(k,291)*y(k,32) - mat(k,1119) = .200_r8*rxt(k,305)*y(k,14) + .100_r8*rxt(k,340)*y(k,88) - mat(k,1396) = rxt(k,292)*y(k,35) + .500_r8*rxt(k,293)*y(k,36) + rxt(k,275) & - *y(k,48) + .800_r8*rxt(k,298)*y(k,60) + rxt(k,299)*y(k,61) & - + .500_r8*rxt(k,339)*y(k,87) - mat(k,674) = rxt(k,360)*y(k,32) - mat(k,1072) = .450_r8*rxt(k,335)*y(k,86) - mat(k,101) = -(rxt(k,243)*y(k,144)) - mat(k,1260) = -rxt(k,243)*y(k,50) - mat(k,72) = rxt(k,208)*y(k,144) - mat(k,77) = rxt(k,234)*y(k,144) - mat(k,82) = rxt(k,210)*y(k,144) - mat(k,58) = 2.000_r8*rxt(k,211)*y(k,144) - mat(k,87) = 2.000_r8*rxt(k,212)*y(k,144) - mat(k,62) = rxt(k,213)*y(k,144) - mat(k,42) = 2.000_r8*rxt(k,236)*y(k,144) - mat(k,116) = rxt(k,255)*y(k,111) + rxt(k,260)*y(k,144) - mat(k,141) = rxt(k,256)*y(k,111) + rxt(k,261)*y(k,144) - mat(k,1335) = rxt(k,255)*y(k,69) + rxt(k,256)*y(k,70) - mat(k,1260) = mat(k,1260) + rxt(k,208)*y(k,19) + rxt(k,234)*y(k,20) & - + rxt(k,210)*y(k,22) + 2.000_r8*rxt(k,211)*y(k,23) & - + 2.000_r8*rxt(k,212)*y(k,24) + rxt(k,213)*y(k,25) & - + 2.000_r8*rxt(k,236)*y(k,64) + rxt(k,260)*y(k,69) + rxt(k,261) & - *y(k,70) - mat(k,112) = -(rxt(k,244)*y(k,144)) - mat(k,1262) = -rxt(k,244)*y(k,51) - mat(k,54) = rxt(k,209)*y(k,144) - mat(k,83) = rxt(k,210)*y(k,144) - mat(k,108) = rxt(k,254)*y(k,111) + rxt(k,259)*y(k,144) - mat(k,1337) = rxt(k,254)*y(k,68) - mat(k,1262) = mat(k,1262) + rxt(k,209)*y(k,21) + rxt(k,210)*y(k,22) & - + rxt(k,259)*y(k,68) - mat(k,135) = -(rxt(k,369)*y(k,99) + (rxt(k,370) + rxt(k,384)) * y(k,111)) - mat(k,1204) = -rxt(k,369)*y(k,52) - mat(k,1341) = -(rxt(k,370) + rxt(k,384)) * y(k,52) - mat(k,227) = -(rxt(k,297)*y(k,107)) - mat(k,891) = -rxt(k,297)*y(k,56) - mat(k,376) = .750_r8*rxt(k,295)*y(k,97) - mat(k,1465) = .750_r8*rxt(k,295)*y(k,57) - mat(k,377) = -(rxt(k,294)*y(k,139) + rxt(k,295)*y(k,97)) - mat(k,1049) = -rxt(k,294)*y(k,57) - mat(k,1468) = -rxt(k,295)*y(k,57) - mat(k,240) = rxt(k,301)*y(k,111) - mat(k,1369) = rxt(k,301)*y(k,9) - mat(k,375) = rxt(k,294)*y(k,139) - mat(k,1035) = rxt(k,294)*y(k,57) - mat(k,490) = -(rxt(k,239)*y(k,40) + rxt(k,240)*y(k,63) + rxt(k,241)*y(k,151) & - + rxt(k,242)*y(k,73)) - mat(k,1513) = -rxt(k,239)*y(k,59) - mat(k,825) = -rxt(k,240)*y(k,59) - mat(k,1561) = -rxt(k,241)*y(k,59) - mat(k,1141) = -rxt(k,242)*y(k,59) - mat(k,78) = rxt(k,234)*y(k,144) - mat(k,88) = rxt(k,212)*y(k,144) - mat(k,102) = 2.000_r8*rxt(k,243)*y(k,144) - mat(k,113) = rxt(k,244)*y(k,144) - mat(k,1270) = rxt(k,234)*y(k,20) + rxt(k,212)*y(k,24) + 2.000_r8*rxt(k,243) & - *y(k,50) + rxt(k,244)*y(k,51) - mat(k,607) = -(rxt(k,298)*y(k,111)) - mat(k,1383) = -rxt(k,298)*y(k,60) - mat(k,783) = .530_r8*rxt(k,324)*y(k,84) + .250_r8*rxt(k,360)*y(k,134) - mat(k,1173) = .260_r8*rxt(k,325)*y(k,84) + .100_r8*rxt(k,361)*y(k,134) - mat(k,228) = rxt(k,297)*y(k,107) - mat(k,696) = .020_r8*rxt(k,353)*y(k,97) - mat(k,721) = .530_r8*rxt(k,324)*y(k,32) + .260_r8*rxt(k,325)*y(k,37) & - + .530_r8*rxt(k,328)*y(k,97) + .530_r8*rxt(k,327)*y(k,99) - mat(k,1480) = .020_r8*rxt(k,353)*y(k,81) + .530_r8*rxt(k,328)*y(k,84) & - + .250_r8*rxt(k,363)*y(k,134) - mat(k,1216) = .530_r8*rxt(k,327)*y(k,84) + .250_r8*rxt(k,364)*y(k,134) - mat(k,904) = rxt(k,297)*y(k,56) - mat(k,668) = .250_r8*rxt(k,360)*y(k,32) + .100_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) + .250_r8*rxt(k,364)*y(k,99) - mat(k,365) = -(rxt(k,299)*y(k,111)) - mat(k,1368) = -rxt(k,299)*y(k,61) - mat(k,782) = .250_r8*rxt(k,360)*y(k,134) - mat(k,1168) = .100_r8*rxt(k,361)*y(k,134) - mat(k,606) = .200_r8*rxt(k,298)*y(k,111) - mat(k,694) = .020_r8*rxt(k,353)*y(k,97) - mat(k,1466) = .020_r8*rxt(k,353)*y(k,81) + .250_r8*rxt(k,363)*y(k,134) - mat(k,1209) = .250_r8*rxt(k,364)*y(k,134) - mat(k,1368) = mat(k,1368) + .200_r8*rxt(k,298)*y(k,60) - mat(k,667) = .250_r8*rxt(k,360)*y(k,32) + .100_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) + .250_r8*rxt(k,364)*y(k,99) - mat(k,1556) = -((rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,139) + rxt(k,140) & - *y(k,107) + rxt(k,143)*y(k,108)) - mat(k,1092) = -(rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,62) - mat(k,921) = -rxt(k,140)*y(k,62) - mat(k,1138) = -rxt(k,143)*y(k,62) - mat(k,1033) = rxt(k,264)*y(k,111) - mat(k,1535) = rxt(k,273)*y(k,144) - mat(k,1328) = rxt(k,184)*y(k,63) - mat(k,497) = rxt(k,240)*y(k,63) - mat(k,836) = rxt(k,184)*y(k,42) + rxt(k,240)*y(k,59) + rxt(k,135)*y(k,106) & - + rxt(k,144)*y(k,111) + rxt(k,117)*y(k,144) - mat(k,439) = rxt(k,238)*y(k,144) - mat(k,871) = rxt(k,215)*y(k,144) - mat(k,570) = rxt(k,167)*y(k,111) - mat(k,1462) = rxt(k,135)*y(k,63) + rxt(k,147)*y(k,111) - mat(k,188) = rxt(k,372)*y(k,111) - mat(k,1417) = rxt(k,264)*y(k,27) + rxt(k,144)*y(k,63) + rxt(k,167)*y(k,89) & - + rxt(k,147)*y(k,106) + rxt(k,372)*y(k,110) + rxt(k,378) & - *y(k,120) + rxt(k,383)*y(k,122) - mat(k,364) = rxt(k,378)*y(k,111) - mat(k,853) = rxt(k,383)*y(k,111) - mat(k,1290) = rxt(k,273)*y(k,40) + rxt(k,117)*y(k,63) + rxt(k,238)*y(k,67) & - + rxt(k,215)*y(k,71) - mat(k,826) = -(rxt(k,117)*y(k,144) + rxt(k,135)*y(k,106) + rxt(k,144) & - *y(k,111) + rxt(k,184)*y(k,42) + rxt(k,240)*y(k,59)) - mat(k,1271) = -rxt(k,117)*y(k,63) - mat(k,1442) = -rxt(k,135)*y(k,63) - mat(k,1397) = -rxt(k,144)*y(k,63) - mat(k,1309) = -rxt(k,184)*y(k,63) - mat(k,491) = -rxt(k,240)*y(k,63) - mat(k,1516) = rxt(k,274)*y(k,144) - mat(k,1537) = rxt(k,137)*y(k,139) - mat(k,1073) = rxt(k,137)*y(k,62) - mat(k,1271) = mat(k,1271) + rxt(k,274)*y(k,40) - mat(k,41) = -(rxt(k,236)*y(k,144)) - mat(k,1251) = -rxt(k,236)*y(k,64) - mat(k,311) = -(rxt(k,136)*y(k,106) + rxt(k,145)*y(k,111) + rxt(k,185)*y(k,42)) - mat(k,1425) = -rxt(k,136)*y(k,65) - mat(k,1362) = -rxt(k,145)*y(k,65) - mat(k,1298) = -rxt(k,185)*y(k,65) - mat(k,1362) = mat(k,1362) + 2.000_r8*rxt(k,150)*y(k,111) - mat(k,1046) = 2.000_r8*rxt(k,151)*y(k,139) + mat(k,119) = -(rxt(k,243)*y(k,142)) + mat(k,1154) = -rxt(k,243)*y(k,47) + mat(k,73) = rxt(k,208)*y(k,142) + mat(k,78) = rxt(k,234)*y(k,142) + mat(k,84) = rxt(k,210)*y(k,142) + mat(k,55) = 2.000_r8*rxt(k,211)*y(k,142) + mat(k,88) = 2.000_r8*rxt(k,212)*y(k,142) + mat(k,59) = rxt(k,213)*y(k,142) + mat(k,43) = 2.000_r8*rxt(k,236)*y(k,142) + mat(k,115) = rxt(k,255)*y(k,106) + rxt(k,260)*y(k,142) + mat(k,141) = rxt(k,256)*y(k,106) + rxt(k,261)*y(k,142) + mat(k,1191) = rxt(k,255)*y(k,64) + rxt(k,256)*y(k,65) + mat(k,1154) = mat(k,1154) + rxt(k,208)*y(k,17) + rxt(k,234)*y(k,18) & + + rxt(k,210)*y(k,20) + 2.000_r8*rxt(k,211)*y(k,21) & + + 2.000_r8*rxt(k,212)*y(k,22) + rxt(k,213)*y(k,23) & + + 2.000_r8*rxt(k,236)*y(k,59) + rxt(k,260)*y(k,64) + rxt(k,261) & + *y(k,65) + mat(k,110) = -(rxt(k,244)*y(k,142)) + mat(k,1152) = -rxt(k,244)*y(k,48) + mat(k,51) = rxt(k,209)*y(k,142) + mat(k,83) = rxt(k,210)*y(k,142) + mat(k,106) = rxt(k,254)*y(k,106) + rxt(k,259)*y(k,142) + mat(k,1189) = rxt(k,254)*y(k,63) + mat(k,1152) = mat(k,1152) + rxt(k,209)*y(k,19) + rxt(k,210)*y(k,20) & + + rxt(k,259)*y(k,63) + mat(k,135) = -(rxt(k,369)*y(k,93) + (rxt(k,370) + rxt(k,384)) * y(k,106)) + mat(k,989) = -rxt(k,369)*y(k,49) + mat(k,1194) = -(rxt(k,370) + rxt(k,384)) * y(k,49) + mat(k,390) = rxt(k,294)*y(k,134) + mat(k,1361) = rxt(k,294)*y(k,133) + mat(k,490) = -(rxt(k,239)*y(k,37) + rxt(k,240)*y(k,58) + rxt(k,241)*y(k,152) & + + rxt(k,242)*y(k,68)) + mat(k,924) = -rxt(k,239)*y(k,54) + mat(k,825) = -rxt(k,240)*y(k,54) + mat(k,1561) = -rxt(k,241)*y(k,54) + mat(k,1490) = -rxt(k,242)*y(k,54) + mat(k,79) = rxt(k,234)*y(k,142) + mat(k,89) = rxt(k,212)*y(k,142) + mat(k,120) = 2.000_r8*rxt(k,243)*y(k,142) + mat(k,111) = rxt(k,244)*y(k,142) + mat(k,1161) = rxt(k,234)*y(k,18) + rxt(k,212)*y(k,22) + 2.000_r8*rxt(k,243) & + *y(k,47) + rxt(k,244)*y(k,48) + mat(k,594) = -(rxt(k,298)*y(k,106)) + mat(k,1235) = -rxt(k,298)*y(k,55) + mat(k,957) = .260_r8*rxt(k,325)*y(k,136) + .100_r8*rxt(k,361)*y(k,151) + mat(k,1108) = .020_r8*rxt(k,353)*y(k,135) + .530_r8*rxt(k,328)*y(k,136) & + + .250_r8*rxt(k,363)*y(k,151) + mat(k,1000) = .530_r8*rxt(k,327)*y(k,136) + .250_r8*rxt(k,364)*y(k,151) + mat(k,904) = rxt(k,297)*y(k,132) + mat(k,783) = .530_r8*rxt(k,324)*y(k,136) + .250_r8*rxt(k,360)*y(k,151) + mat(k,228) = rxt(k,297)*y(k,101) + mat(k,696) = .020_r8*rxt(k,353)*y(k,91) + mat(k,721) = .260_r8*rxt(k,325)*y(k,34) + .530_r8*rxt(k,328)*y(k,91) & + + .530_r8*rxt(k,327)*y(k,93) + .530_r8*rxt(k,324)*y(k,130) + mat(k,668) = .100_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .250_r8*rxt(k,364)*y(k,93) + .250_r8*rxt(k,360)*y(k,130) + mat(k,365) = -(rxt(k,299)*y(k,106)) + mat(k,1221) = -rxt(k,299)*y(k,56) + mat(k,953) = .100_r8*rxt(k,361)*y(k,151) + mat(k,593) = .200_r8*rxt(k,298)*y(k,106) + mat(k,1095) = .020_r8*rxt(k,353)*y(k,135) + .250_r8*rxt(k,363)*y(k,151) + mat(k,994) = .250_r8*rxt(k,364)*y(k,151) + mat(k,1221) = mat(k,1221) + .200_r8*rxt(k,298)*y(k,55) + mat(k,782) = .250_r8*rxt(k,360)*y(k,151) + mat(k,694) = .020_r8*rxt(k,353)*y(k,91) + mat(k,667) = .100_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .250_r8*rxt(k,364)*y(k,93) + .250_r8*rxt(k,360)*y(k,130) + mat(k,1042) = -((rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,134) + rxt(k,140) & + *y(k,101) + rxt(k,143)*y(k,102)) + mat(k,1406) = -(rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,57) + mat(k,910) = -rxt(k,140)*y(k,57) + mat(k,1544) = -rxt(k,143)*y(k,57) + mat(k,1430) = rxt(k,264)*y(k,106) + mat(k,934) = rxt(k,273)*y(k,142) + mat(k,1296) = rxt(k,184)*y(k,58) + mat(k,495) = rxt(k,240)*y(k,58) + mat(k,831) = rxt(k,184)*y(k,39) + rxt(k,240)*y(k,54) + rxt(k,135)*y(k,100) & + + rxt(k,144)*y(k,106) + rxt(k,117)*y(k,142) + mat(k,452) = rxt(k,238)*y(k,142) + mat(k,863) = rxt(k,215)*y(k,142) + mat(k,577) = rxt(k,167)*y(k,106) + mat(k,1475) = rxt(k,135)*y(k,58) + rxt(k,147)*y(k,106) + mat(k,194) = rxt(k,372)*y(k,106) + mat(k,1258) = rxt(k,264)*y(k,25) + rxt(k,144)*y(k,58) + rxt(k,167)*y(k,81) & + + rxt(k,147)*y(k,100) + rxt(k,372)*y(k,105) + rxt(k,378) & + *y(k,113) + rxt(k,383)*y(k,115) + mat(k,361) = rxt(k,378)*y(k,106) + mat(k,844) = rxt(k,383)*y(k,106) + mat(k,1169) = rxt(k,273)*y(k,37) + rxt(k,117)*y(k,58) + rxt(k,238)*y(k,62) & + + rxt(k,215)*y(k,66) + mat(k,826) = -(rxt(k,117)*y(k,142) + rxt(k,135)*y(k,100) + rxt(k,144) & + *y(k,106) + rxt(k,184)*y(k,39) + rxt(k,240)*y(k,54)) + mat(k,1162) = -rxt(k,117)*y(k,58) + mat(k,1467) = -rxt(k,135)*y(k,58) + mat(k,1250) = -rxt(k,144)*y(k,58) + mat(k,1289) = -rxt(k,184)*y(k,58) + mat(k,491) = -rxt(k,240)*y(k,58) + mat(k,927) = rxt(k,274)*y(k,142) + mat(k,1035) = rxt(k,137)*y(k,134) + mat(k,1399) = rxt(k,137)*y(k,57) + mat(k,1162) = mat(k,1162) + rxt(k,274)*y(k,37) + mat(k,42) = -(rxt(k,236)*y(k,142)) + mat(k,1142) = -rxt(k,236)*y(k,59) + mat(k,318) = -(rxt(k,136)*y(k,100) + rxt(k,145)*y(k,106) + rxt(k,185)*y(k,39)) + mat(k,1450) = -rxt(k,136)*y(k,60) + mat(k,1216) = -rxt(k,145)*y(k,60) + mat(k,1278) = -rxt(k,185)*y(k,60) + mat(k,1216) = mat(k,1216) + 2.000_r8*rxt(k,150)*y(k,106) + mat(k,1373) = 2.000_r8*rxt(k,151)*y(k,134) + mat(k,130) = rxt(k,385)*y(k,152) + mat(k,1558) = rxt(k,385)*y(k,117) + mat(k,450) = -(rxt(k,231)*y(k,100) + rxt(k,232)*y(k,106) + (rxt(k,237) & + + rxt(k,238)) * y(k,142)) + mat(k,1457) = -rxt(k,231)*y(k,62) + mat(k,1227) = -rxt(k,232)*y(k,62) + mat(k,1160) = -(rxt(k,237) + rxt(k,238)) * y(k,62) + mat(k,873) = rxt(k,218)*y(k,25) + rxt(k,219)*y(k,134) + mat(k,1420) = rxt(k,218)*y(k,4) + mat(k,1382) = rxt(k,219)*y(k,4) + mat(k,105) = -(rxt(k,254)*y(k,106) + rxt(k,259)*y(k,142)) + mat(k,1188) = -rxt(k,254)*y(k,63) + mat(k,1151) = -rxt(k,259)*y(k,63) + mat(k,114) = -(rxt(k,255)*y(k,106) + rxt(k,260)*y(k,142)) + mat(k,1190) = -rxt(k,255)*y(k,64) + mat(k,1153) = -rxt(k,260)*y(k,64) + mat(k,142) = -(rxt(k,256)*y(k,106) + rxt(k,261)*y(k,142)) + mat(k,1195) = -rxt(k,256)*y(k,65) + mat(k,1156) = -rxt(k,261)*y(k,65) + mat(k,860) = -(rxt(k,202)*y(k,100) + rxt(k,203)*y(k,106) + (rxt(k,214) & + + rxt(k,215)) * y(k,142) + (rxt(k,395) + rxt(k,401) + rxt(k,406) & + ) * y(k,71) + (rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,43) & + + (rxt(k,402) + rxt(k,407)) * y(k,70)) + mat(k,1469) = -rxt(k,202)*y(k,66) + mat(k,1252) = -rxt(k,203)*y(k,66) + mat(k,1163) = -(rxt(k,214) + rxt(k,215)) * y(k,66) + mat(k,435) = -(rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,66) + mat(k,557) = -(rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,66) + mat(k,383) = -(rxt(k,402) + rxt(k,407)) * y(k,66) + mat(k,159) = rxt(k,284)*y(k,39) + mat(k,247) = rxt(k,245)*y(k,39) + mat(k,1424) = rxt(k,182)*y(k,39) + mat(k,326) = rxt(k,247)*y(k,39) + mat(k,183) = 2.000_r8*rxt(k,250)*y(k,39) + mat(k,928) = rxt(k,183)*y(k,39) + mat(k,222) = rxt(k,252)*y(k,39) + mat(k,1290) = rxt(k,284)*y(k,12) + rxt(k,245)*y(k,24) + rxt(k,182)*y(k,25) & + + rxt(k,247)*y(k,26) + 2.000_r8*rxt(k,250)*y(k,29) + rxt(k,183) & + *y(k,37) + rxt(k,252)*y(k,38) + rxt(k,184)*y(k,58) + rxt(k,185) & + *y(k,60) + rxt(k,204)*y(k,71) + rxt(k,186)*y(k,134) + mat(k,1318) = rxt(k,201)*y(k,106) + mat(k,827) = rxt(k,184)*y(k,39) + mat(k,319) = rxt(k,185)*y(k,39) + mat(k,435) = mat(k,435) + rxt(k,204)*y(k,39) + mat(k,1252) = mat(k,1252) + rxt(k,201)*y(k,42) + mat(k,1400) = rxt(k,186)*y(k,39) + mat(k,923) = rxt(k,239)*y(k,54) + mat(k,489) = rxt(k,239)*y(k,37) + rxt(k,240)*y(k,58) + rxt(k,242)*y(k,68) & + + rxt(k,241)*y(k,152) + mat(k,824) = rxt(k,240)*y(k,54) + mat(k,1489) = rxt(k,242)*y(k,54) + mat(k,1560) = rxt(k,241)*y(k,54) + mat(k,1509) = -(rxt(k,176)*y(k,106) + rxt(k,242)*y(k,54)) + mat(k,1269) = -rxt(k,176)*y(k,68) + mat(k,497) = -rxt(k,242)*y(k,68) + mat(k,1441) = rxt(k,262)*y(k,93) + mat(k,647) = rxt(k,286)*y(k,93) + mat(k,689) = rxt(k,311)*y(k,93) + mat(k,564) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,66) + mat(k,140) = rxt(k,369)*y(k,93) + mat(k,871) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,43) + mat(k,1090) = rxt(k,175)*y(k,106) + mat(k,1032) = rxt(k,262)*y(k,25) + rxt(k,286)*y(k,28) + rxt(k,311)*y(k,31) & + + rxt(k,369)*y(k,49) + mat(k,1269) = mat(k,1269) + rxt(k,175)*y(k,92) + mat(k,239) = -(rxt(k,153)*y(k,106)) + mat(k,1208) = -rxt(k,153)*y(k,69) + mat(k,1058) = rxt(k,173)*y(k,134) + mat(k,1369) = rxt(k,173)*y(k,92) + mat(k,382) = -(rxt(k,233)*y(k,100) + (rxt(k,402) + rxt(k,407)) * y(k,66)) + mat(k,1454) = -rxt(k,233)*y(k,70) + mat(k,857) = -(rxt(k,402) + rxt(k,407)) * y(k,70) + mat(k,1340) = rxt(k,225)*y(k,134) + mat(k,1376) = rxt(k,225)*y(k,6) + mat(k,434) = -(rxt(k,204)*y(k,39) + rxt(k,205)*y(k,100) + rxt(k,206)*y(k,106) & + + (rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,66)) + mat(k,1282) = -rxt(k,204)*y(k,71) + mat(k,1455) = -rxt(k,205)*y(k,71) + mat(k,1226) = -rxt(k,206)*y(k,71) + mat(k,858) = -(rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,71) + mat(k,1314) = rxt(k,193)*y(k,134) + mat(k,555) = rxt(k,198)*y(k,106) + mat(k,1226) = mat(k,1226) + rxt(k,198)*y(k,43) + mat(k,1381) = rxt(k,193)*y(k,42) + mat(k,613) = -(rxt(k,313)*y(k,106)) + mat(k,1237) = -rxt(k,313)*y(k,72) + mat(k,959) = .230_r8*rxt(k,325)*y(k,136) + .200_r8*rxt(k,318)*y(k,150) & + + .100_r8*rxt(k,361)*y(k,151) + mat(k,303) = .500_r8*rxt(k,339)*y(k,106) + mat(k,1110) = .020_r8*rxt(k,353)*y(k,135) + .220_r8*rxt(k,328)*y(k,136) & + + .250_r8*rxt(k,363)*y(k,151) + mat(k,1002) = .220_r8*rxt(k,327)*y(k,136) + .250_r8*rxt(k,364)*y(k,151) + mat(k,1237) = mat(k,1237) + .500_r8*rxt(k,339)*y(k,79) + .500_r8*rxt(k,317) & + *y(k,111) + mat(k,288) = .500_r8*rxt(k,317)*y(k,106) + mat(k,784) = .220_r8*rxt(k,324)*y(k,136) + .250_r8*rxt(k,360)*y(k,151) + mat(k,697) = .020_r8*rxt(k,353)*y(k,91) + mat(k,722) = .230_r8*rxt(k,325)*y(k,34) + .220_r8*rxt(k,328)*y(k,91) & + + .220_r8*rxt(k,327)*y(k,93) + .220_r8*rxt(k,324)*y(k,130) + mat(k,603) = .200_r8*rxt(k,318)*y(k,34) + mat(k,669) = .100_r8*rxt(k,361)*y(k,34) + .250_r8*rxt(k,363)*y(k,91) & + + .250_r8*rxt(k,364)*y(k,93) + .250_r8*rxt(k,360)*y(k,130) end do end subroutine nlnmat03 subroutine nlnmat04( avec_len, mat, y, rxt ) @@ -692,209 +731,226 @@ subroutine nlnmat04( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,130) = rxt(k,385)*y(k,151) - mat(k,1558) = rxt(k,385)*y(k,124) - mat(k,433) = -(rxt(k,231)*y(k,106) + rxt(k,232)*y(k,111) + (rxt(k,237) & - + rxt(k,238)) * y(k,144)) - mat(k,1430) = -rxt(k,231)*y(k,67) - mat(k,1373) = -rxt(k,232)*y(k,67) - mat(k,1269) = -(rxt(k,237) + rxt(k,238)) * y(k,67) - mat(k,873) = rxt(k,218)*y(k,27) + rxt(k,219)*y(k,139) - mat(k,1011) = rxt(k,218)*y(k,4) - mat(k,1055) = rxt(k,219)*y(k,4) - mat(k,107) = -(rxt(k,254)*y(k,111) + rxt(k,259)*y(k,144)) - mat(k,1336) = -rxt(k,254)*y(k,68) - mat(k,1261) = -rxt(k,259)*y(k,68) - mat(k,117) = -(rxt(k,255)*y(k,111) + rxt(k,260)*y(k,144)) - mat(k,1338) = -rxt(k,255)*y(k,69) - mat(k,1263) = -rxt(k,260)*y(k,69) - mat(k,142) = -(rxt(k,256)*y(k,111) + rxt(k,261)*y(k,144)) - mat(k,1342) = -rxt(k,256)*y(k,70) - mat(k,1265) = -rxt(k,261)*y(k,70) - mat(k,860) = -(rxt(k,202)*y(k,106) + rxt(k,203)*y(k,111) + (rxt(k,214) & - + rxt(k,215)) * y(k,144) + (rxt(k,395) + rxt(k,401) + rxt(k,406) & - ) * y(k,76) + (rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,46) & - + (rxt(k,402) + rxt(k,407)) * y(k,75)) - mat(k,1444) = -rxt(k,202)*y(k,71) - mat(k,1399) = -rxt(k,203)*y(k,71) - mat(k,1272) = -(rxt(k,214) + rxt(k,215)) * y(k,71) - mat(k,452) = -(rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,71) - mat(k,574) = -(rxt(k,400) + rxt(k,405) + rxt(k,410)) * y(k,71) - mat(k,387) = -(rxt(k,402) + rxt(k,407)) * y(k,71) - mat(k,159) = rxt(k,284)*y(k,42) - mat(k,247) = rxt(k,245)*y(k,42) - mat(k,1015) = rxt(k,182)*y(k,42) - mat(k,326) = rxt(k,247)*y(k,42) - mat(k,191) = 2.000_r8*rxt(k,250)*y(k,42) - mat(k,1517) = rxt(k,183)*y(k,42) - mat(k,222) = rxt(k,252)*y(k,42) - mat(k,1310) = rxt(k,284)*y(k,13) + rxt(k,245)*y(k,26) + rxt(k,182)*y(k,27) & - + rxt(k,247)*y(k,28) + 2.000_r8*rxt(k,250)*y(k,31) + rxt(k,183) & - *y(k,40) + rxt(k,252)*y(k,41) + rxt(k,184)*y(k,63) + rxt(k,185) & - *y(k,65) + rxt(k,204)*y(k,76) + rxt(k,186)*y(k,139) - mat(k,955) = rxt(k,201)*y(k,111) - mat(k,827) = rxt(k,184)*y(k,42) - mat(k,312) = rxt(k,185)*y(k,42) - mat(k,452) = mat(k,452) + rxt(k,204)*y(k,42) - mat(k,1399) = mat(k,1399) + rxt(k,201)*y(k,45) - mat(k,1074) = rxt(k,186)*y(k,42) - mat(k,1512) = rxt(k,239)*y(k,59) - mat(k,489) = rxt(k,239)*y(k,40) + rxt(k,240)*y(k,63) + rxt(k,242)*y(k,73) & - + rxt(k,241)*y(k,151) - mat(k,824) = rxt(k,240)*y(k,59) - mat(k,1140) = rxt(k,242)*y(k,59) - mat(k,1560) = rxt(k,241)*y(k,59) - mat(k,1152) = -(rxt(k,176)*y(k,111) + rxt(k,242)*y(k,59)) - mat(k,1408) = -rxt(k,176)*y(k,73) - mat(k,492) = -rxt(k,242)*y(k,73) - mat(k,1024) = rxt(k,262)*y(k,99) - mat(k,644) = rxt(k,286)*y(k,99) - mat(k,687) = rxt(k,311)*y(k,99) - mat(k,577) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,71) - mat(k,138) = rxt(k,369)*y(k,99) - mat(k,865) = (rxt(k,400)+rxt(k,405)+rxt(k,410))*y(k,46) - mat(k,1000) = rxt(k,175)*y(k,111) - mat(k,1239) = rxt(k,262)*y(k,27) + rxt(k,286)*y(k,30) + rxt(k,311)*y(k,34) & - + rxt(k,369)*y(k,52) - mat(k,1408) = mat(k,1408) + rxt(k,175)*y(k,98) - mat(k,232) = -(rxt(k,153)*y(k,111)) - mat(k,1354) = -rxt(k,153)*y(k,74) - mat(k,976) = rxt(k,173)*y(k,139) - mat(k,1043) = rxt(k,173)*y(k,98) - mat(k,386) = -(rxt(k,233)*y(k,106) + (rxt(k,402) + rxt(k,407)) * y(k,71)) - mat(k,1429) = -rxt(k,233)*y(k,75) - mat(k,857) = -(rxt(k,402) + rxt(k,407)) * y(k,75) - mat(k,926) = rxt(k,225)*y(k,139) - mat(k,1050) = rxt(k,225)*y(k,6) - mat(k,451) = -(rxt(k,204)*y(k,42) + rxt(k,205)*y(k,106) + rxt(k,206)*y(k,111) & - + (rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,71)) - mat(k,1302) = -rxt(k,204)*y(k,76) - mat(k,1432) = -rxt(k,205)*y(k,76) - mat(k,1374) = -rxt(k,206)*y(k,76) - mat(k,858) = -(rxt(k,395) + rxt(k,401) + rxt(k,406)) * y(k,76) - mat(k,951) = rxt(k,193)*y(k,139) - mat(k,572) = rxt(k,198)*y(k,111) - mat(k,1374) = mat(k,1374) + rxt(k,198)*y(k,46) - mat(k,1056) = rxt(k,193)*y(k,45) - mat(k,613) = -(rxt(k,313)*y(k,111)) - mat(k,1384) = -rxt(k,313)*y(k,77) - mat(k,784) = .220_r8*rxt(k,324)*y(k,84) + .250_r8*rxt(k,360)*y(k,134) - mat(k,1174) = .230_r8*rxt(k,325)*y(k,84) + .200_r8*rxt(k,318)*y(k,118) & - + .100_r8*rxt(k,361)*y(k,134) - mat(k,697) = .020_r8*rxt(k,353)*y(k,97) - mat(k,722) = .220_r8*rxt(k,324)*y(k,32) + .230_r8*rxt(k,325)*y(k,37) & - + .220_r8*rxt(k,328)*y(k,97) + .220_r8*rxt(k,327)*y(k,99) - mat(k,303) = .500_r8*rxt(k,339)*y(k,111) - mat(k,1481) = .020_r8*rxt(k,353)*y(k,81) + .220_r8*rxt(k,328)*y(k,84) & - + .250_r8*rxt(k,363)*y(k,134) - mat(k,1217) = .220_r8*rxt(k,327)*y(k,84) + .250_r8*rxt(k,364)*y(k,134) - mat(k,1384) = mat(k,1384) + .500_r8*rxt(k,339)*y(k,87) + .500_r8*rxt(k,317) & - *y(k,117) - mat(k,288) = .500_r8*rxt(k,317)*y(k,111) - mat(k,596) = .200_r8*rxt(k,318)*y(k,37) - mat(k,669) = .250_r8*rxt(k,360)*y(k,32) + .100_r8*rxt(k,361)*y(k,37) & - + .250_r8*rxt(k,363)*y(k,97) + .250_r8*rxt(k,364)*y(k,99) - mat(k,178) = -(rxt(k,345)*y(k,111)) - mat(k,1346) = -rxt(k,345)*y(k,78) - mat(k,778) = .400_r8*rxt(k,350)*y(k,81) - mat(k,1164) = .300_r8*rxt(k,351)*y(k,81) - mat(k,691) = .400_r8*rxt(k,350)*y(k,32) + .300_r8*rxt(k,351)*y(k,37) & - + .330_r8*rxt(k,353)*y(k,97) + .400_r8*rxt(k,354)*y(k,99) - mat(k,1464) = .330_r8*rxt(k,353)*y(k,81) - mat(k,1206) = .400_r8*rxt(k,354)*y(k,81) + rxt(k,358)*y(k,112) - mat(k,1346) = mat(k,1346) + rxt(k,359)*y(k,112) - mat(k,583) = rxt(k,358)*y(k,99) + rxt(k,359)*y(k,111) - mat(k,473) = -(rxt(k,346)*y(k,99) + rxt(k,355)*y(k,108) + rxt(k,356)*y(k,111)) - mat(k,1212) = -rxt(k,346)*y(k,79) - mat(k,1102) = -rxt(k,355)*y(k,79) - mat(k,1376) = -rxt(k,356)*y(k,79) - mat(k,411) = -(rxt(k,347)*y(k,139) + rxt(k,348)*y(k,97) + rxt(k,349)*y(k,99)) - mat(k,1053) = -rxt(k,347)*y(k,80) - mat(k,1471) = -rxt(k,348)*y(k,80) - mat(k,1211) = -rxt(k,349)*y(k,80) - mat(k,472) = rxt(k,346)*y(k,99) - mat(k,1211) = mat(k,1211) + rxt(k,346)*y(k,79) - mat(k,702) = -(rxt(k,350)*y(k,32) + rxt(k,351)*y(k,37) + rxt(k,352)*y(k,139) & - + rxt(k,353)*y(k,97) + rxt(k,354)*y(k,99)) - mat(k,789) = -rxt(k,350)*y(k,81) - mat(k,1180) = -rxt(k,351)*y(k,81) - mat(k,1067) = -rxt(k,352)*y(k,81) - mat(k,1487) = -rxt(k,353)*y(k,81) - mat(k,1224) = -rxt(k,354)*y(k,81) - mat(k,478) = rxt(k,356)*y(k,111) - mat(k,269) = .200_r8*rxt(k,357)*y(k,111) - mat(k,1224) = mat(k,1224) + 1.700_r8*rxt(k,366)*y(k,133) - mat(k,1391) = rxt(k,356)*y(k,79) + .200_r8*rxt(k,357)*y(k,82) & - + 1.640_r8*rxt(k,368)*y(k,133) - mat(k,346) = 1.700_r8*rxt(k,366)*y(k,99) + 1.640_r8*rxt(k,368)*y(k,111) - mat(k,266) = -(rxt(k,357)*y(k,111)) - mat(k,1357) = -rxt(k,357)*y(k,82) - mat(k,692) = rxt(k,352)*y(k,139) - mat(k,1044) = rxt(k,352)*y(k,81) - mat(k,654) = -(rxt(k,330)*y(k,108) + rxt(k,331)*y(k,111)) - mat(k,1111) = -rxt(k,330)*y(k,83) - mat(k,1388) = -rxt(k,331)*y(k,83) - mat(k,786) = .250_r8*rxt(k,350)*y(k,81) - mat(k,1177) = .190_r8*rxt(k,351)*y(k,81) - mat(k,477) = .300_r8*rxt(k,355)*y(k,108) - mat(k,413) = .167_r8*rxt(k,348)*y(k,97) + .167_r8*rxt(k,349)*y(k,99) & - + .167_r8*rxt(k,347)*y(k,139) - mat(k,699) = .250_r8*rxt(k,350)*y(k,32) + .190_r8*rxt(k,351)*y(k,37) & - + .230_r8*rxt(k,353)*y(k,97) + .250_r8*rxt(k,354)*y(k,99) - mat(k,1484) = .167_r8*rxt(k,348)*y(k,80) + .230_r8*rxt(k,353)*y(k,81) - mat(k,1221) = .167_r8*rxt(k,349)*y(k,80) + .250_r8*rxt(k,354)*y(k,81) - mat(k,1111) = mat(k,1111) + .300_r8*rxt(k,355)*y(k,79) + 1.122_r8*rxt(k,367) & - *y(k,133) - mat(k,345) = 1.122_r8*rxt(k,367)*y(k,108) - mat(k,1064) = .167_r8*rxt(k,347)*y(k,80) - mat(k,726) = -(rxt(k,324)*y(k,32) + rxt(k,325)*y(k,37) + rxt(k,326)*y(k,139) & - + rxt(k,327)*y(k,99) + (rxt(k,328) + rxt(k,329)) * y(k,97)) - mat(k,790) = -rxt(k,324)*y(k,84) - mat(k,1181) = -rxt(k,325)*y(k,84) - mat(k,1068) = -rxt(k,326)*y(k,84) - mat(k,1225) = -rxt(k,327)*y(k,84) - mat(k,1488) = -(rxt(k,328) + rxt(k,329)) * y(k,84) - mat(k,656) = .500_r8*rxt(k,331)*y(k,111) - mat(k,164) = .200_r8*rxt(k,332)*y(k,111) - mat(k,743) = rxt(k,341)*y(k,111) - mat(k,1392) = .500_r8*rxt(k,331)*y(k,83) + .200_r8*rxt(k,332)*y(k,85) & - + rxt(k,341)*y(k,88) - mat(k,163) = -(rxt(k,332)*y(k,111)) - mat(k,1344) = -rxt(k,332)*y(k,85) - mat(k,718) = rxt(k,326)*y(k,139) - mat(k,1037) = rxt(k,326)*y(k,84) - mat(k,765) = -(rxt(k,333)*y(k,32) + rxt(k,334)*y(k,37) + rxt(k,335)*y(k,139) & - + 4._r8*rxt(k,336)*y(k,86) + rxt(k,337)*y(k,97) + rxt(k,338) & - *y(k,99) + rxt(k,342)*y(k,98)) - mat(k,792) = -rxt(k,333)*y(k,86) - mat(k,1183) = -rxt(k,334)*y(k,86) - mat(k,1070) = -rxt(k,335)*y(k,86) - mat(k,1490) = -rxt(k,337)*y(k,86) - mat(k,1227) = -rxt(k,338)*y(k,86) - mat(k,987) = -rxt(k,342)*y(k,86) - mat(k,657) = .500_r8*rxt(k,331)*y(k,111) - mat(k,165) = .500_r8*rxt(k,332)*y(k,111) - mat(k,1394) = .500_r8*rxt(k,331)*y(k,83) + .500_r8*rxt(k,332)*y(k,85) - mat(k,302) = -(rxt(k,339)*y(k,111)) - mat(k,1361) = -rxt(k,339)*y(k,87) - mat(k,760) = rxt(k,342)*y(k,98) - mat(k,979) = rxt(k,342)*y(k,86) - mat(k,744) = -(rxt(k,340)*y(k,108) + rxt(k,341)*y(k,111)) - mat(k,1116) = -rxt(k,340)*y(k,88) - mat(k,1393) = -rxt(k,341)*y(k,88) - mat(k,791) = .350_r8*rxt(k,350)*y(k,81) - mat(k,1182) = .260_r8*rxt(k,351)*y(k,81) - mat(k,479) = .200_r8*rxt(k,355)*y(k,108) - mat(k,414) = .039_r8*rxt(k,348)*y(k,97) + .039_r8*rxt(k,349)*y(k,99) & - + .039_r8*rxt(k,347)*y(k,139) - mat(k,704) = .350_r8*rxt(k,350)*y(k,32) + .260_r8*rxt(k,351)*y(k,37) & - + .320_r8*rxt(k,353)*y(k,97) + .350_r8*rxt(k,354)*y(k,99) - mat(k,1489) = .039_r8*rxt(k,348)*y(k,80) + .320_r8*rxt(k,353)*y(k,81) - mat(k,1226) = .039_r8*rxt(k,349)*y(k,80) + .350_r8*rxt(k,354)*y(k,81) - mat(k,1116) = mat(k,1116) + .200_r8*rxt(k,355)*y(k,79) + .442_r8*rxt(k,367) & - *y(k,133) - mat(k,347) = .442_r8*rxt(k,367)*y(k,108) - mat(k,1069) = .039_r8*rxt(k,347)*y(k,80) + mat(k,178) = -(rxt(k,345)*y(k,106)) + mat(k,1199) = -rxt(k,345)*y(k,73) + mat(k,949) = .300_r8*rxt(k,351)*y(k,135) + mat(k,1093) = .330_r8*rxt(k,353)*y(k,135) + mat(k,991) = rxt(k,358)*y(k,107) + .400_r8*rxt(k,354)*y(k,135) + mat(k,1199) = mat(k,1199) + rxt(k,359)*y(k,107) + mat(k,583) = rxt(k,358)*y(k,93) + rxt(k,359)*y(k,106) + mat(k,778) = .400_r8*rxt(k,350)*y(k,135) + mat(k,691) = .300_r8*rxt(k,351)*y(k,34) + .330_r8*rxt(k,353)*y(k,91) & + + .400_r8*rxt(k,354)*y(k,93) + .400_r8*rxt(k,350)*y(k,130) + mat(k,473) = -(rxt(k,346)*y(k,93) + rxt(k,355)*y(k,102) + rxt(k,356)*y(k,106)) + mat(k,997) = -rxt(k,346)*y(k,74) + mat(k,1520) = -rxt(k,355)*y(k,74) + mat(k,1229) = -rxt(k,356)*y(k,74) + mat(k,400) = -(rxt(k,347)*y(k,134) + rxt(k,348)*y(k,91) + rxt(k,349)*y(k,93)) + mat(k,1378) = -rxt(k,347)*y(k,75) + mat(k,1099) = -rxt(k,348)*y(k,75) + mat(k,996) = -rxt(k,349)*y(k,75) + mat(k,472) = rxt(k,346)*y(k,93) + mat(k,996) = mat(k,996) + rxt(k,346)*y(k,74) + mat(k,294) = -(rxt(k,357)*y(k,106)) + mat(k,1213) = -rxt(k,357)*y(k,76) + mat(k,1371) = rxt(k,352)*y(k,135) + mat(k,693) = rxt(k,352)*y(k,134) + mat(k,654) = -(rxt(k,330)*y(k,102) + rxt(k,331)*y(k,106)) + mat(k,1529) = -rxt(k,330)*y(k,77) + mat(k,1241) = -rxt(k,331)*y(k,77) + mat(k,962) = .190_r8*rxt(k,351)*y(k,135) + mat(k,477) = .300_r8*rxt(k,355)*y(k,102) + mat(k,402) = .167_r8*rxt(k,348)*y(k,91) + .167_r8*rxt(k,349)*y(k,93) & + + .167_r8*rxt(k,347)*y(k,134) + mat(k,1113) = .167_r8*rxt(k,348)*y(k,75) + .230_r8*rxt(k,353)*y(k,135) + mat(k,1006) = .167_r8*rxt(k,349)*y(k,75) + .250_r8*rxt(k,354)*y(k,135) + mat(k,1529) = mat(k,1529) + .300_r8*rxt(k,355)*y(k,74) + 1.122_r8*rxt(k,367) & + *y(k,126) + mat(k,345) = 1.122_r8*rxt(k,367)*y(k,102) + mat(k,786) = .250_r8*rxt(k,350)*y(k,135) + mat(k,1390) = .167_r8*rxt(k,347)*y(k,75) + mat(k,699) = .190_r8*rxt(k,351)*y(k,34) + .230_r8*rxt(k,353)*y(k,91) & + + .250_r8*rxt(k,354)*y(k,93) + .250_r8*rxt(k,350)*y(k,130) + mat(k,163) = -(rxt(k,332)*y(k,106)) + mat(k,1197) = -rxt(k,332)*y(k,78) + mat(k,1363) = rxt(k,326)*y(k,136) + mat(k,718) = rxt(k,326)*y(k,134) + mat(k,302) = -(rxt(k,339)*y(k,106)) + mat(k,1214) = -rxt(k,339)*y(k,79) + mat(k,1061) = rxt(k,342)*y(k,137) + mat(k,760) = rxt(k,342)*y(k,92) + mat(k,744) = -(rxt(k,340)*y(k,102) + rxt(k,341)*y(k,106)) + mat(k,1534) = -rxt(k,340)*y(k,80) + mat(k,1246) = -rxt(k,341)*y(k,80) + mat(k,967) = .260_r8*rxt(k,351)*y(k,135) + mat(k,479) = .200_r8*rxt(k,355)*y(k,102) + mat(k,403) = .039_r8*rxt(k,348)*y(k,91) + .039_r8*rxt(k,349)*y(k,93) & + + .039_r8*rxt(k,347)*y(k,134) + mat(k,1118) = .039_r8*rxt(k,348)*y(k,75) + .320_r8*rxt(k,353)*y(k,135) + mat(k,1011) = .039_r8*rxt(k,349)*y(k,75) + .350_r8*rxt(k,354)*y(k,135) + mat(k,1534) = mat(k,1534) + .200_r8*rxt(k,355)*y(k,74) + .442_r8*rxt(k,367) & + *y(k,126) + mat(k,347) = .442_r8*rxt(k,367)*y(k,102) + mat(k,791) = .350_r8*rxt(k,350)*y(k,135) + mat(k,1395) = .039_r8*rxt(k,347)*y(k,75) + mat(k,704) = .260_r8*rxt(k,351)*y(k,34) + .320_r8*rxt(k,353)*y(k,91) & + + .350_r8*rxt(k,354)*y(k,93) + .350_r8*rxt(k,350)*y(k,130) + mat(k,573) = -(rxt(k,156)*y(k,91) + (rxt(k,157) + rxt(k,158) + rxt(k,159) & + ) * y(k,92) + rxt(k,167)*y(k,106) + rxt(k,181)*y(k,101) & + + rxt(k,423)*y(k,145)) + mat(k,1106) = -rxt(k,156)*y(k,81) + mat(k,1065) = -(rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,81) + mat(k,1233) = -rxt(k,167)*y(k,81) + mat(k,903) = -rxt(k,181)*y(k,81) + mat(k,514) = -rxt(k,423)*y(k,81) + mat(k,1464) = rxt(k,155)*y(k,138) + rxt(k,420)*y(k,141) + mat(k,903) = mat(k,903) + rxt(k,421)*y(k,141) + mat(k,528) = rxt(k,178)*y(k,138) + 1.100_r8*rxt(k,416)*y(k,139) & + + .200_r8*rxt(k,414)*y(k,140) + mat(k,540) = rxt(k,155)*y(k,100) + rxt(k,178)*y(k,131) + mat(k,340) = 1.100_r8*rxt(k,416)*y(k,131) + mat(k,373) = .200_r8*rxt(k,414)*y(k,131) + mat(k,447) = rxt(k,420)*y(k,100) + rxt(k,421)*y(k,101) + mat(k,122) = -((rxt(k,171) + rxt(k,172)) * y(k,142)) + mat(k,1155) = -(rxt(k,171) + rxt(k,172)) * y(k,82) + mat(k,566) = rxt(k,157)*y(k,92) + mat(k,1056) = rxt(k,157)*y(k,81) + mat(k,1057) = rxt(k,174)*y(k,93) + mat(k,990) = rxt(k,174)*y(k,92) + mat(k,36) = -(rxt(k,386)*y(k,106)) + mat(k,1184) = -rxt(k,386)*y(k,88) + mat(k,1129) = -(rxt(k,154)*y(k,138) + rxt(k,156)*y(k,81) + rxt(k,164)*y(k,93) & + + rxt(k,168)*y(k,134) + rxt(k,169)*y(k,102) + rxt(k,170) & + *y(k,100) + rxt(k,194)*y(k,42) + rxt(k,226)*y(k,6) + rxt(k,268) & + *y(k,34) + rxt(k,281)*y(k,128) + rxt(k,291)*y(k,130) + rxt(k,295) & + *y(k,133) + rxt(k,308)*y(k,129) + rxt(k,316)*y(k,149) + rxt(k,320) & + *y(k,150) + (rxt(k,328) + rxt(k,329)) * y(k,136) + rxt(k,337) & + *y(k,137) + rxt(k,348)*y(k,75) + rxt(k,353)*y(k,135) + rxt(k,363) & + *y(k,151) + rxt(k,425)*y(k,145)) + mat(k,544) = -rxt(k,154)*y(k,91) + mat(k,579) = -rxt(k,156)*y(k,91) + mat(k,1023) = -rxt(k,164)*y(k,91) + mat(k,1408) = -rxt(k,168)*y(k,91) + mat(k,1546) = -rxt(k,169)*y(k,91) + mat(k,1477) = -rxt(k,170)*y(k,91) + mat(k,1325) = -rxt(k,194)*y(k,91) + mat(k,1349) = -rxt(k,226)*y(k,91) + mat(k,977) = -rxt(k,268)*y(k,91) + mat(k,429) = -rxt(k,281)*y(k,91) + mat(k,800) = -rxt(k,291)*y(k,91) + mat(k,396) = -rxt(k,295)*y(k,91) + mat(k,467) = -rxt(k,308)*y(k,91) + mat(k,416) = -rxt(k,316)*y(k,91) + mat(k,608) = -rxt(k,320)*y(k,91) + mat(k,733) = -(rxt(k,328) + rxt(k,329)) * y(k,91) + mat(k,771) = -rxt(k,337)*y(k,91) + mat(k,406) = -rxt(k,348)*y(k,91) + mat(k,711) = -rxt(k,353)*y(k,91) + mat(k,678) = -rxt(k,363)*y(k,91) + mat(k,516) = -rxt(k,425)*y(k,91) + mat(k,579) = mat(k,579) + 2.000_r8*rxt(k,158)*y(k,92) + rxt(k,181)*y(k,101) & + + rxt(k,167)*y(k,106) + mat(k,124) = 2.000_r8*rxt(k,171)*y(k,142) + mat(k,1081) = 2.000_r8*rxt(k,158)*y(k,81) + rxt(k,160)*y(k,100) + rxt(k,379) & + *y(k,115) + mat(k,1477) = mat(k,1477) + rxt(k,160)*y(k,92) + mat(k,912) = rxt(k,181)*y(k,81) + rxt(k,179)*y(k,138) + mat(k,1260) = rxt(k,167)*y(k,81) + mat(k,846) = rxt(k,379)*y(k,92) + mat(k,544) = mat(k,544) + rxt(k,179)*y(k,101) + mat(k,1171) = 2.000_r8*rxt(k,171)*y(k,82) + mat(k,1080) = -((rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,81) + (rxt(k,160) & + + rxt(k,162)) * y(k,100) + rxt(k,161)*y(k,102) + rxt(k,173) & + *y(k,134) + rxt(k,174)*y(k,93) + rxt(k,175)*y(k,106) + rxt(k,196) & + *y(k,42) + rxt(k,227)*y(k,6) + rxt(k,302)*y(k,130) + rxt(k,342) & + *y(k,137) + rxt(k,379)*y(k,115)) + mat(k,578) = -(rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,92) + mat(k,1476) = -(rxt(k,160) + rxt(k,162)) * y(k,92) + mat(k,1545) = -rxt(k,161)*y(k,92) + mat(k,1407) = -rxt(k,173)*y(k,92) + mat(k,1022) = -rxt(k,174)*y(k,92) + mat(k,1259) = -rxt(k,175)*y(k,92) + mat(k,1324) = -rxt(k,196)*y(k,92) + mat(k,1348) = -rxt(k,227)*y(k,92) + mat(k,799) = -rxt(k,302)*y(k,92) + mat(k,770) = -rxt(k,342)*y(k,92) + mat(k,845) = -rxt(k,379)*y(k,92) + mat(k,1348) = mat(k,1348) + rxt(k,226)*y(k,91) + mat(k,976) = rxt(k,268)*y(k,91) + mat(k,1324) = mat(k,1324) + rxt(k,194)*y(k,91) + mat(k,242) = rxt(k,153)*y(k,106) + mat(k,405) = 1.206_r8*rxt(k,348)*y(k,91) + 1.206_r8*rxt(k,349)*y(k,93) & + + .206_r8*rxt(k,347)*y(k,134) + mat(k,1128) = rxt(k,226)*y(k,6) + rxt(k,268)*y(k,34) + rxt(k,194)*y(k,42) & + + 1.206_r8*rxt(k,348)*y(k,75) + 2.000_r8*rxt(k,164)*y(k,93) & + + rxt(k,170)*y(k,100) + rxt(k,169)*y(k,102) + rxt(k,281) & + *y(k,128) + rxt(k,308)*y(k,129) + rxt(k,291)*y(k,130) & + + rxt(k,295)*y(k,133) + rxt(k,168)*y(k,134) + .920_r8*rxt(k,353) & + *y(k,135) + rxt(k,328)*y(k,136) + rxt(k,337)*y(k,137) & + + rxt(k,316)*y(k,149) + rxt(k,320)*y(k,150) + rxt(k,363) & + *y(k,151) + mat(k,1022) = mat(k,1022) + 1.206_r8*rxt(k,349)*y(k,75) + 2.000_r8*rxt(k,164) & + *y(k,91) + rxt(k,165)*y(k,100) + rxt(k,166)*y(k,106) & + + rxt(k,358)*y(k,107) + rxt(k,366)*y(k,126) + rxt(k,163) & + *y(k,134) + rxt(k,354)*y(k,135) + rxt(k,327)*y(k,136) & + + rxt(k,338)*y(k,137) + rxt(k,364)*y(k,151) + mat(k,200) = rxt(k,314)*y(k,106) + mat(k,1476) = mat(k,1476) + rxt(k,170)*y(k,91) + rxt(k,165)*y(k,93) + mat(k,1545) = mat(k,1545) + rxt(k,169)*y(k,91) + mat(k,1259) = mat(k,1259) + rxt(k,153)*y(k,69) + rxt(k,166)*y(k,93) & + + rxt(k,314)*y(k,94) + .400_r8*rxt(k,359)*y(k,107) + mat(k,588) = rxt(k,358)*y(k,93) + .400_r8*rxt(k,359)*y(k,106) + mat(k,349) = rxt(k,366)*y(k,93) + mat(k,428) = rxt(k,281)*y(k,91) + mat(k,466) = rxt(k,308)*y(k,91) + mat(k,799) = mat(k,799) + rxt(k,291)*y(k,91) + mat(k,395) = rxt(k,295)*y(k,91) + mat(k,1407) = mat(k,1407) + .206_r8*rxt(k,347)*y(k,75) + rxt(k,168)*y(k,91) & + + rxt(k,163)*y(k,93) + mat(k,710) = .920_r8*rxt(k,353)*y(k,91) + rxt(k,354)*y(k,93) + mat(k,732) = rxt(k,328)*y(k,91) + rxt(k,327)*y(k,93) + mat(k,770) = mat(k,770) + rxt(k,337)*y(k,91) + rxt(k,338)*y(k,93) + mat(k,415) = rxt(k,316)*y(k,91) + mat(k,607) = rxt(k,320)*y(k,91) + mat(k,677) = rxt(k,363)*y(k,91) + rxt(k,364)*y(k,93) + mat(k,1020) = -(rxt(k,163)*y(k,134) + rxt(k,164)*y(k,91) + rxt(k,165) & + *y(k,100) + rxt(k,166)*y(k,106) + rxt(k,174)*y(k,92) + rxt(k,262) & + *y(k,25) + rxt(k,286)*y(k,28) + rxt(k,304)*y(k,13) + rxt(k,311) & + *y(k,31) + rxt(k,327)*y(k,136) + rxt(k,338)*y(k,137) + rxt(k,346) & + *y(k,74) + rxt(k,349)*y(k,75) + rxt(k,354)*y(k,135) + rxt(k,358) & + *y(k,107) + rxt(k,364)*y(k,151) + rxt(k,366)*y(k,126) + rxt(k,369) & + *y(k,49)) + mat(k,1405) = -rxt(k,163)*y(k,93) + mat(k,1126) = -rxt(k,164)*y(k,93) + mat(k,1474) = -rxt(k,165)*y(k,93) + mat(k,1257) = -rxt(k,166)*y(k,93) + mat(k,1078) = -rxt(k,174)*y(k,93) + mat(k,1429) = -rxt(k,262)*y(k,93) + mat(k,644) = -rxt(k,286)*y(k,93) + mat(k,632) = -rxt(k,304)*y(k,93) + mat(k,686) = -rxt(k,311)*y(k,93) + mat(k,731) = -rxt(k,327)*y(k,93) + mat(k,769) = -rxt(k,338)*y(k,93) + mat(k,482) = -rxt(k,346)*y(k,93) + mat(k,404) = -rxt(k,349)*y(k,93) + mat(k,709) = -rxt(k,354)*y(k,93) + mat(k,587) = -rxt(k,358)*y(k,93) + mat(k,676) = -rxt(k,364)*y(k,93) + mat(k,348) = -rxt(k,366)*y(k,93) + mat(k,137) = -rxt(k,369)*y(k,93) + mat(k,269) = rxt(k,228)*y(k,100) + mat(k,1295) = rxt(k,195)*y(k,43) + mat(k,558) = rxt(k,195)*y(k,39) + rxt(k,197)*y(k,100) + rxt(k,198)*y(k,106) + mat(k,494) = rxt(k,242)*y(k,68) + mat(k,1497) = rxt(k,242)*y(k,54) + rxt(k,176)*y(k,106) + mat(k,306) = .500_r8*rxt(k,339)*y(k,106) + mat(k,1078) = mat(k,1078) + rxt(k,162)*y(k,100) + rxt(k,161)*y(k,102) + mat(k,1474) = mat(k,1474) + rxt(k,228)*y(k,7) + rxt(k,197)*y(k,43) & + + rxt(k,162)*y(k,92) + mat(k,1543) = rxt(k,161)*y(k,92) + mat(k,1257) = mat(k,1257) + rxt(k,198)*y(k,43) + rxt(k,176)*y(k,68) & + + .500_r8*rxt(k,339)*y(k,79) + rxt(k,300)*y(k,108) + mat(k,278) = rxt(k,300)*y(k,106) end do end subroutine nlnmat04 subroutine nlnmat05( avec_len, mat, y, rxt ) @@ -915,219 +971,296 @@ subroutine nlnmat05( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,561) = -(rxt(k,156)*y(k,97) + (rxt(k,157) + rxt(k,158) + rxt(k,159) & - ) * y(k,98) + rxt(k,167)*y(k,111) + rxt(k,181)*y(k,107) & - + rxt(k,423)*y(k,147)) - mat(k,1477) = -rxt(k,156)*y(k,89) - mat(k,982) = -(rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,89) - mat(k,1379) = -rxt(k,167)*y(k,89) - mat(k,903) = -rxt(k,181)*y(k,89) - mat(k,514) = -rxt(k,423)*y(k,89) - mat(k,1438) = rxt(k,155)*y(k,140) + rxt(k,420)*y(k,143) - mat(k,903) = mat(k,903) + rxt(k,421)*y(k,143) - mat(k,528) = rxt(k,178)*y(k,140) + 1.100_r8*rxt(k,416)*y(k,141) & - + .200_r8*rxt(k,414)*y(k,142) - mat(k,540) = rxt(k,155)*y(k,106) + rxt(k,178)*y(k,138) - mat(k,340) = 1.100_r8*rxt(k,416)*y(k,138) - mat(k,373) = .200_r8*rxt(k,414)*y(k,138) - mat(k,447) = rxt(k,420)*y(k,106) + rxt(k,421)*y(k,107) - mat(k,122) = -((rxt(k,171) + rxt(k,172)) * y(k,144)) - mat(k,1264) = -(rxt(k,171) + rxt(k,172)) * y(k,90) - mat(k,554) = rxt(k,157)*y(k,98) - mat(k,974) = rxt(k,157)*y(k,89) - mat(k,975) = rxt(k,174)*y(k,99) - mat(k,1205) = rxt(k,174)*y(k,98) - mat(k,35) = -(rxt(k,386)*y(k,111)) - mat(k,1331) = -rxt(k,386)*y(k,95) - mat(k,1508) = -(rxt(k,154)*y(k,140) + rxt(k,156)*y(k,89) + rxt(k,164)*y(k,99) & - + rxt(k,168)*y(k,139) + rxt(k,169)*y(k,108) + rxt(k,170) & - *y(k,106) + rxt(k,194)*y(k,45) + rxt(k,226)*y(k,6) + rxt(k,268) & - *y(k,37) + rxt(k,281)*y(k,10) + rxt(k,291)*y(k,32) + rxt(k,295) & - *y(k,57) + rxt(k,308)*y(k,15) + rxt(k,316)*y(k,114) + rxt(k,320) & - *y(k,118) + (rxt(k,328) + rxt(k,329)) * y(k,84) + rxt(k,337) & - *y(k,86) + rxt(k,348)*y(k,80) + rxt(k,353)*y(k,81) + rxt(k,363) & - *y(k,134) + rxt(k,425)*y(k,147)) - mat(k,546) = -rxt(k,154)*y(k,97) - mat(k,569) = -rxt(k,156)*y(k,97) - mat(k,1246) = -rxt(k,164)*y(k,97) - mat(k,1090) = -rxt(k,168)*y(k,97) - mat(k,1136) = -rxt(k,169)*y(k,97) - mat(k,1460) = -rxt(k,170)*y(k,97) - mat(k,971) = -rxt(k,194)*y(k,97) - mat(k,944) = -rxt(k,226)*y(k,97) - mat(k,1200) = -rxt(k,268)*y(k,97) - mat(k,432) = -rxt(k,281)*y(k,97) - mat(k,804) = -rxt(k,291)*y(k,97) - mat(k,384) = -rxt(k,295)*y(k,97) - mat(k,470) = -rxt(k,308)*y(k,97) - mat(k,409) = -rxt(k,316)*y(k,97) - mat(k,604) = -rxt(k,320)*y(k,97) - mat(k,737) = -(rxt(k,328) + rxt(k,329)) * y(k,97) - mat(k,776) = -rxt(k,337)*y(k,97) - mat(k,420) = -rxt(k,348)*y(k,97) - mat(k,716) = -rxt(k,353)*y(k,97) - mat(k,681) = -rxt(k,363)*y(k,97) - mat(k,518) = -rxt(k,425)*y(k,97) - mat(k,569) = mat(k,569) + 2.000_r8*rxt(k,158)*y(k,98) + rxt(k,181)*y(k,107) & - + rxt(k,167)*y(k,111) - mat(k,125) = 2.000_r8*rxt(k,171)*y(k,144) - mat(k,1007) = 2.000_r8*rxt(k,158)*y(k,89) + rxt(k,160)*y(k,106) + rxt(k,379) & - *y(k,122) - mat(k,1460) = mat(k,1460) + rxt(k,160)*y(k,98) - mat(k,920) = rxt(k,181)*y(k,89) + rxt(k,179)*y(k,140) - mat(k,1415) = rxt(k,167)*y(k,89) - mat(k,852) = rxt(k,379)*y(k,98) - mat(k,546) = mat(k,546) + rxt(k,179)*y(k,107) - mat(k,1288) = 2.000_r8*rxt(k,171)*y(k,90) - mat(k,996) = -((rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,89) + (rxt(k,160) & - + rxt(k,162)) * y(k,106) + rxt(k,161)*y(k,108) + rxt(k,173) & - *y(k,139) + rxt(k,174)*y(k,99) + rxt(k,175)*y(k,111) + rxt(k,196) & - *y(k,45) + rxt(k,227)*y(k,6) + rxt(k,302)*y(k,32) + rxt(k,342) & - *y(k,86) + rxt(k,379)*y(k,122)) - mat(k,565) = -(rxt(k,157) + rxt(k,158) + rxt(k,159)) * y(k,98) - mat(k,1449) = -(rxt(k,160) + rxt(k,162)) * y(k,98) - mat(k,1125) = -rxt(k,161)*y(k,98) - mat(k,1079) = -rxt(k,173)*y(k,98) - mat(k,1235) = -rxt(k,174)*y(k,98) - mat(k,1404) = -rxt(k,175)*y(k,98) - mat(k,960) = -rxt(k,196)*y(k,98) - mat(k,934) = -rxt(k,227)*y(k,98) - mat(k,796) = -rxt(k,302)*y(k,98) - mat(k,768) = -rxt(k,342)*y(k,98) - mat(k,846) = -rxt(k,379)*y(k,98) - mat(k,934) = mat(k,934) + rxt(k,226)*y(k,97) - mat(k,427) = rxt(k,281)*y(k,97) - mat(k,465) = rxt(k,308)*y(k,97) - mat(k,796) = mat(k,796) + rxt(k,291)*y(k,97) - mat(k,1189) = rxt(k,268)*y(k,97) - mat(k,960) = mat(k,960) + rxt(k,194)*y(k,97) - mat(k,380) = rxt(k,295)*y(k,97) - mat(k,234) = rxt(k,153)*y(k,111) - mat(k,415) = 1.206_r8*rxt(k,348)*y(k,97) + 1.206_r8*rxt(k,349)*y(k,99) & - + .206_r8*rxt(k,347)*y(k,139) - mat(k,708) = .920_r8*rxt(k,353)*y(k,97) + rxt(k,354)*y(k,99) - mat(k,730) = rxt(k,328)*y(k,97) + rxt(k,327)*y(k,99) - mat(k,768) = mat(k,768) + rxt(k,337)*y(k,97) + rxt(k,338)*y(k,99) - mat(k,1497) = rxt(k,226)*y(k,6) + rxt(k,281)*y(k,10) + rxt(k,308)*y(k,15) & - + rxt(k,291)*y(k,32) + rxt(k,268)*y(k,37) + rxt(k,194)*y(k,45) & - + rxt(k,295)*y(k,57) + 1.206_r8*rxt(k,348)*y(k,80) & - + .920_r8*rxt(k,353)*y(k,81) + rxt(k,328)*y(k,84) + rxt(k,337) & - *y(k,86) + 2.000_r8*rxt(k,164)*y(k,99) + rxt(k,170)*y(k,106) & - + rxt(k,169)*y(k,108) + rxt(k,316)*y(k,114) + rxt(k,320) & - *y(k,118) + rxt(k,363)*y(k,134) + rxt(k,168)*y(k,139) - mat(k,1235) = mat(k,1235) + 1.206_r8*rxt(k,349)*y(k,80) + rxt(k,354)*y(k,81) & - + rxt(k,327)*y(k,84) + rxt(k,338)*y(k,86) + 2.000_r8*rxt(k,164) & - *y(k,97) + rxt(k,165)*y(k,106) + rxt(k,166)*y(k,111) & - + rxt(k,358)*y(k,112) + rxt(k,366)*y(k,133) + rxt(k,364) & - *y(k,134) + rxt(k,163)*y(k,139) - mat(k,200) = rxt(k,314)*y(k,111) - mat(k,1449) = mat(k,1449) + rxt(k,170)*y(k,97) + rxt(k,165)*y(k,99) - mat(k,1125) = mat(k,1125) + rxt(k,169)*y(k,97) - mat(k,1404) = mat(k,1404) + rxt(k,153)*y(k,74) + rxt(k,166)*y(k,99) & - + rxt(k,314)*y(k,100) + .400_r8*rxt(k,359)*y(k,112) - mat(k,587) = rxt(k,358)*y(k,99) + .400_r8*rxt(k,359)*y(k,111) - mat(k,405) = rxt(k,316)*y(k,97) - mat(k,599) = rxt(k,320)*y(k,97) - mat(k,348) = rxt(k,366)*y(k,99) - mat(k,675) = rxt(k,363)*y(k,97) + rxt(k,364)*y(k,99) - mat(k,1079) = mat(k,1079) + .206_r8*rxt(k,347)*y(k,80) + rxt(k,168)*y(k,97) & - + rxt(k,163)*y(k,99) - mat(k,1241) = -(rxt(k,163)*y(k,139) + rxt(k,164)*y(k,97) + rxt(k,165) & - *y(k,106) + rxt(k,166)*y(k,111) + rxt(k,174)*y(k,98) + rxt(k,262) & - *y(k,27) + rxt(k,286)*y(k,30) + rxt(k,304)*y(k,14) + rxt(k,311) & - *y(k,34) + rxt(k,327)*y(k,84) + rxt(k,338)*y(k,86) + rxt(k,346) & - *y(k,79) + rxt(k,349)*y(k,80) + rxt(k,354)*y(k,81) + rxt(k,358) & - *y(k,112) + rxt(k,364)*y(k,134) + rxt(k,366)*y(k,133) + rxt(k,369) & - *y(k,52)) - mat(k,1085) = -rxt(k,163)*y(k,99) - mat(k,1503) = -rxt(k,164)*y(k,99) - mat(k,1455) = -rxt(k,165)*y(k,99) - mat(k,1410) = -rxt(k,166)*y(k,99) - mat(k,1002) = -rxt(k,174)*y(k,99) - mat(k,1026) = -rxt(k,262)*y(k,99) - mat(k,646) = -rxt(k,286)*y(k,99) - mat(k,635) = -rxt(k,304)*y(k,99) - mat(k,688) = -rxt(k,311)*y(k,99) - mat(k,735) = -rxt(k,327)*y(k,99) - mat(k,774) = -rxt(k,338)*y(k,99) - mat(k,486) = -rxt(k,346)*y(k,99) - mat(k,418) = -rxt(k,349)*y(k,99) - mat(k,714) = -rxt(k,354)*y(k,99) - mat(k,591) = -rxt(k,358)*y(k,99) - mat(k,679) = -rxt(k,364)*y(k,99) - mat(k,350) = -rxt(k,366)*y(k,99) - mat(k,139) = -rxt(k,369)*y(k,99) - mat(k,300) = rxt(k,228)*y(k,106) - mat(k,1321) = rxt(k,195)*y(k,46) - mat(k,578) = rxt(k,195)*y(k,42) + rxt(k,197)*y(k,106) + rxt(k,198)*y(k,111) - mat(k,494) = rxt(k,242)*y(k,73) - mat(k,1154) = rxt(k,242)*y(k,59) + rxt(k,176)*y(k,111) - mat(k,309) = .500_r8*rxt(k,339)*y(k,111) - mat(k,1002) = mat(k,1002) + rxt(k,162)*y(k,106) + rxt(k,161)*y(k,108) - mat(k,1455) = mat(k,1455) + rxt(k,228)*y(k,7) + rxt(k,197)*y(k,46) & - + rxt(k,162)*y(k,98) - mat(k,1131) = rxt(k,161)*y(k,98) - mat(k,1410) = mat(k,1410) + rxt(k,198)*y(k,46) + rxt(k,176)*y(k,73) & - + .500_r8*rxt(k,339)*y(k,87) + rxt(k,300)*y(k,113) - mat(k,280) = rxt(k,300)*y(k,111) - mat(k,197) = -(rxt(k,314)*y(k,111)) - mat(k,1349) = -rxt(k,314)*y(k,100) - mat(k,619) = rxt(k,304)*y(k,99) - mat(k,1207) = rxt(k,304)*y(k,14) - mat(k,1459) = -(rxt(k,132)*y(k,108) + 4._r8*rxt(k,133)*y(k,106) + rxt(k,134) & - *y(k,107) + rxt(k,135)*y(k,63) + rxt(k,136)*y(k,65) + rxt(k,141) & - *y(k,139) + rxt(k,147)*y(k,111) + (rxt(k,160) + rxt(k,162) & - ) * y(k,98) + rxt(k,165)*y(k,99) + rxt(k,170)*y(k,97) + rxt(k,197) & - *y(k,46) + rxt(k,199)*y(k,45) + rxt(k,202)*y(k,71) + rxt(k,205) & - *y(k,76) + rxt(k,228)*y(k,7) + rxt(k,229)*y(k,6) + rxt(k,231) & - *y(k,67) + rxt(k,233)*y(k,75) + rxt(k,263)*y(k,27) + rxt(k,371) & - *y(k,110) + (rxt(k,418) + rxt(k,419)) * y(k,141) + rxt(k,420) & - *y(k,143)) - mat(k,1135) = -rxt(k,132)*y(k,106) - mat(k,919) = -rxt(k,134)*y(k,106) - mat(k,834) = -rxt(k,135)*y(k,106) - mat(k,316) = -rxt(k,136)*y(k,106) - mat(k,1089) = -rxt(k,141)*y(k,106) - mat(k,1414) = -rxt(k,147)*y(k,106) - mat(k,1006) = -(rxt(k,160) + rxt(k,162)) * y(k,106) - mat(k,1245) = -rxt(k,165)*y(k,106) - mat(k,1507) = -rxt(k,170)*y(k,106) - mat(k,581) = -rxt(k,197)*y(k,106) - mat(k,970) = -rxt(k,199)*y(k,106) - mat(k,870) = -rxt(k,202)*y(k,106) - mat(k,456) = -rxt(k,205)*y(k,106) - mat(k,301) = -rxt(k,228)*y(k,106) - mat(k,943) = -rxt(k,229)*y(k,106) - mat(k,438) = -rxt(k,231)*y(k,106) - mat(k,392) = -rxt(k,233)*y(k,106) - mat(k,1030) = -rxt(k,263)*y(k,106) - mat(k,187) = -rxt(k,371)*y(k,106) - mat(k,342) = -(rxt(k,418) + rxt(k,419)) * y(k,106) - mat(k,449) = -rxt(k,420)*y(k,106) - mat(k,1553) = rxt(k,139)*y(k,139) - mat(k,568) = rxt(k,156)*y(k,97) + rxt(k,157)*y(k,98) + rxt(k,181)*y(k,107) & - + rxt(k,423)*y(k,147) - mat(k,1507) = mat(k,1507) + rxt(k,156)*y(k,89) + rxt(k,154)*y(k,140) - mat(k,1006) = mat(k,1006) + rxt(k,157)*y(k,89) - mat(k,919) = mat(k,919) + rxt(k,181)*y(k,89) + rxt(k,373)*y(k,120) & - + rxt(k,380)*y(k,122) + rxt(k,422)*y(k,143) + (rxt(k,120) & - +rxt(k,121))*y(k,144) + rxt(k,429)*y(k,148) + rxt(k,433) & - *y(k,149) - mat(k,1135) = mat(k,1135) + .765_r8*rxt(k,367)*y(k,133) + 2.000_r8*rxt(k,123) & - *y(k,144) - mat(k,1414) = mat(k,1414) + 2.000_r8*rxt(k,149)*y(k,111) - mat(k,363) = rxt(k,373)*y(k,107) - mat(k,851) = rxt(k,380)*y(k,107) - mat(k,352) = .765_r8*rxt(k,367)*y(k,108) - mat(k,533) = rxt(k,414)*y(k,142) + 1.150_r8*rxt(k,415)*y(k,147) - mat(k,1089) = mat(k,1089) + rxt(k,139)*y(k,62) - mat(k,545) = rxt(k,154)*y(k,97) + rxt(k,428)*y(k,148) - mat(k,374) = rxt(k,414)*y(k,138) - mat(k,449) = mat(k,449) + rxt(k,422)*y(k,107) - mat(k,1287) = (rxt(k,120)+rxt(k,121))*y(k,107) + 2.000_r8*rxt(k,123)*y(k,108) - mat(k,517) = rxt(k,423)*y(k,89) + 1.150_r8*rxt(k,415)*y(k,138) - mat(k,509) = rxt(k,429)*y(k,107) + rxt(k,428)*y(k,140) - mat(k,265) = rxt(k,433)*y(k,107) + mat(k,197) = -(rxt(k,314)*y(k,106)) + mat(k,1202) = -rxt(k,314)*y(k,94) + mat(k,619) = rxt(k,304)*y(k,93) + mat(k,992) = rxt(k,304)*y(k,13) + mat(k,1485) = -(rxt(k,132)*y(k,102) + 4._r8*rxt(k,133)*y(k,100) + rxt(k,134) & + *y(k,101) + rxt(k,135)*y(k,58) + rxt(k,136)*y(k,60) + rxt(k,141) & + *y(k,134) + rxt(k,147)*y(k,106) + (rxt(k,160) + rxt(k,162) & + ) * y(k,92) + rxt(k,165)*y(k,93) + rxt(k,170)*y(k,91) + rxt(k,197) & + *y(k,43) + rxt(k,199)*y(k,42) + rxt(k,202)*y(k,66) + rxt(k,205) & + *y(k,71) + rxt(k,228)*y(k,7) + rxt(k,229)*y(k,6) + rxt(k,231) & + *y(k,62) + rxt(k,233)*y(k,70) + rxt(k,263)*y(k,25) + rxt(k,371) & + *y(k,105) + (rxt(k,418) + rxt(k,419)) * y(k,139) + rxt(k,420) & + *y(k,141)) + mat(k,1554) = -rxt(k,132)*y(k,100) + mat(k,920) = -rxt(k,134)*y(k,100) + mat(k,835) = -rxt(k,135)*y(k,100) + mat(k,323) = -rxt(k,136)*y(k,100) + mat(k,1416) = -rxt(k,141)*y(k,100) + mat(k,1268) = -rxt(k,147)*y(k,100) + mat(k,1089) = -(rxt(k,160) + rxt(k,162)) * y(k,100) + mat(k,1031) = -rxt(k,165)*y(k,100) + mat(k,1137) = -rxt(k,170)*y(k,100) + mat(k,563) = -rxt(k,197)*y(k,100) + mat(k,1333) = -rxt(k,199)*y(k,100) + mat(k,870) = -rxt(k,202)*y(k,100) + mat(k,439) = -rxt(k,205)*y(k,100) + mat(k,272) = -rxt(k,228)*y(k,100) + mat(k,1357) = -rxt(k,229)*y(k,100) + mat(k,456) = -rxt(k,231)*y(k,100) + mat(k,388) = -rxt(k,233)*y(k,100) + mat(k,1440) = -rxt(k,263)*y(k,100) + mat(k,196) = -rxt(k,371)*y(k,100) + mat(k,342) = -(rxt(k,418) + rxt(k,419)) * y(k,100) + mat(k,449) = -rxt(k,420)*y(k,100) + mat(k,1052) = rxt(k,139)*y(k,134) + mat(k,582) = rxt(k,156)*y(k,91) + rxt(k,157)*y(k,92) + rxt(k,181)*y(k,101) & + + rxt(k,423)*y(k,145) + mat(k,1137) = mat(k,1137) + rxt(k,156)*y(k,81) + rxt(k,154)*y(k,138) + mat(k,1089) = mat(k,1089) + rxt(k,157)*y(k,81) + mat(k,920) = mat(k,920) + rxt(k,181)*y(k,81) + rxt(k,373)*y(k,113) & + + rxt(k,380)*y(k,115) + rxt(k,422)*y(k,141) + (rxt(k,120) & + +rxt(k,121))*y(k,142) + rxt(k,429)*y(k,146) + rxt(k,433) & + *y(k,147) + mat(k,1554) = mat(k,1554) + .765_r8*rxt(k,367)*y(k,126) + 2.000_r8*rxt(k,123) & + *y(k,142) + mat(k,1268) = mat(k,1268) + 2.000_r8*rxt(k,149)*y(k,106) + mat(k,363) = rxt(k,373)*y(k,101) + mat(k,852) = rxt(k,380)*y(k,101) + mat(k,351) = .765_r8*rxt(k,367)*y(k,102) + mat(k,534) = rxt(k,414)*y(k,140) + 1.150_r8*rxt(k,415)*y(k,145) + mat(k,1416) = mat(k,1416) + rxt(k,139)*y(k,57) + mat(k,546) = rxt(k,154)*y(k,91) + rxt(k,428)*y(k,146) + mat(k,374) = rxt(k,414)*y(k,131) + mat(k,449) = mat(k,449) + rxt(k,422)*y(k,101) + mat(k,1179) = (rxt(k,120)+rxt(k,121))*y(k,101) + 2.000_r8*rxt(k,123)*y(k,102) + mat(k,518) = rxt(k,423)*y(k,81) + 1.150_r8*rxt(k,415)*y(k,131) + mat(k,509) = rxt(k,429)*y(k,101) + rxt(k,428)*y(k,138) + mat(k,265) = rxt(k,433)*y(k,101) + mat(k,909) = -(rxt(k,120)*y(k,142) + rxt(k,126)*y(k,143) + rxt(k,134) & + *y(k,100) + rxt(k,140)*y(k,57) + rxt(k,179)*y(k,138) + rxt(k,181) & + *y(k,81) + rxt(k,297)*y(k,132) + rxt(k,373)*y(k,113) + rxt(k,380) & + *y(k,115) + rxt(k,417)*y(k,139) + (rxt(k,421) + rxt(k,422) & + ) * y(k,141) + rxt(k,429)*y(k,146) + rxt(k,433)*y(k,147)) + mat(k,1165) = -rxt(k,120)*y(k,101) + mat(k,95) = -rxt(k,126)*y(k,101) + mat(k,1471) = -rxt(k,134)*y(k,101) + mat(k,1038) = -rxt(k,140)*y(k,101) + mat(k,543) = -rxt(k,179)*y(k,101) + mat(k,576) = -rxt(k,181)*y(k,101) + mat(k,229) = -rxt(k,297)*y(k,101) + mat(k,360) = -rxt(k,373)*y(k,101) + mat(k,843) = -rxt(k,380)*y(k,101) + mat(k,341) = -rxt(k,417)*y(k,101) + mat(k,448) = -(rxt(k,421) + rxt(k,422)) * y(k,101) + mat(k,508) = -rxt(k,429)*y(k,101) + mat(k,264) = -rxt(k,433)*y(k,101) + mat(k,877) = rxt(k,220)*y(k,102) + rxt(k,219)*y(k,134) + mat(k,1345) = 2.000_r8*rxt(k,221)*y(k,6) + (rxt(k,223)+rxt(k,224))*y(k,42) & + + rxt(k,229)*y(k,100) + rxt(k,225)*y(k,134) + mat(k,971) = rxt(k,267)*y(k,134) + mat(k,1292) = rxt(k,188)*y(k,102) + rxt(k,186)*y(k,134) + mat(k,1320) = (rxt(k,223)+rxt(k,224))*y(k,6) + (2.000_r8*rxt(k,190) & + +2.000_r8*rxt(k,191))*y(k,42) + rxt(k,199)*y(k,100) & + + rxt(k,201)*y(k,106) + rxt(k,193)*y(k,134) + mat(k,1038) = mat(k,1038) + rxt(k,143)*y(k,102) + rxt(k,137)*y(k,134) + mat(k,240) = rxt(k,153)*y(k,106) + mat(k,576) = mat(k,576) + rxt(k,159)*y(k,92) + mat(k,123) = rxt(k,172)*y(k,142) + mat(k,1123) = rxt(k,169)*y(k,102) + rxt(k,425)*y(k,145) + mat(k,1075) = rxt(k,159)*y(k,81) + rxt(k,160)*y(k,100) + rxt(k,161)*y(k,102) + mat(k,1017) = rxt(k,165)*y(k,100) + rxt(k,163)*y(k,134) + mat(k,1471) = mat(k,1471) + rxt(k,229)*y(k,6) + rxt(k,199)*y(k,42) & + + rxt(k,160)*y(k,92) + rxt(k,165)*y(k,93) + 2.000_r8*rxt(k,133) & + *y(k,100) + 2.000_r8*rxt(k,132)*y(k,102) + rxt(k,147)*y(k,106) & + + rxt(k,141)*y(k,134) + rxt(k,125)*y(k,143) + mat(k,909) = mat(k,909) + 2.000_r8*rxt(k,126)*y(k,143) + mat(k,1540) = rxt(k,220)*y(k,4) + rxt(k,188)*y(k,39) + rxt(k,143)*y(k,57) & + + rxt(k,169)*y(k,91) + rxt(k,161)*y(k,92) + 2.000_r8*rxt(k,132) & + *y(k,100) + rxt(k,148)*y(k,106) + rxt(k,375)*y(k,113) & + + rxt(k,381)*y(k,115) + 2.000_r8*rxt(k,142)*y(k,134) + ( & + + 2.000_r8*rxt(k,122)+rxt(k,123))*y(k,142) + mat(k,1254) = rxt(k,201)*y(k,42) + rxt(k,153)*y(k,69) + rxt(k,147)*y(k,100) & + + rxt(k,148)*y(k,102) + rxt(k,146)*y(k,134) + mat(k,360) = mat(k,360) + rxt(k,375)*y(k,102) + mat(k,843) = mat(k,843) + rxt(k,381)*y(k,102) + mat(k,426) = rxt(k,280)*y(k,134) + mat(k,464) = rxt(k,307)*y(k,134) + mat(k,1402) = rxt(k,219)*y(k,4) + rxt(k,225)*y(k,6) + rxt(k,267)*y(k,34) & + + rxt(k,186)*y(k,39) + rxt(k,193)*y(k,42) + rxt(k,137)*y(k,57) & + + rxt(k,163)*y(k,93) + rxt(k,141)*y(k,100) + 2.000_r8*rxt(k,142) & + *y(k,102) + rxt(k,146)*y(k,106) + rxt(k,280)*y(k,128) & + + rxt(k,307)*y(k,129) + 2.000_r8*rxt(k,151)*y(k,134) & + + rxt(k,315)*y(k,149) + mat(k,1165) = mat(k,1165) + rxt(k,172)*y(k,82) + (2.000_r8*rxt(k,122) & + +rxt(k,123))*y(k,102) + mat(k,95) = mat(k,95) + rxt(k,125)*y(k,100) + 2.000_r8*rxt(k,126)*y(k,101) + mat(k,515) = rxt(k,425)*y(k,91) + mat(k,414) = rxt(k,315)*y(k,134) + mat(k,1556) = -((rxt(k,122) + rxt(k,123)) * y(k,142) + rxt(k,132)*y(k,100) & + + rxt(k,142)*y(k,134) + rxt(k,143)*y(k,57) + rxt(k,148)*y(k,106) & + + rxt(k,161)*y(k,92) + rxt(k,169)*y(k,91) + rxt(k,188)*y(k,39) & + + rxt(k,220)*y(k,4) + rxt(k,277)*y(k,9) + rxt(k,305)*y(k,13) & + + rxt(k,330)*y(k,77) + rxt(k,340)*y(k,80) + rxt(k,355)*y(k,74) & + + rxt(k,367)*y(k,126) + rxt(k,375)*y(k,113) + rxt(k,381) & + *y(k,115)) + mat(k,1181) = -(rxt(k,122) + rxt(k,123)) * y(k,102) + mat(k,1487) = -rxt(k,132)*y(k,102) + mat(k,1418) = -rxt(k,142)*y(k,102) + mat(k,1054) = -rxt(k,143)*y(k,102) + mat(k,1270) = -rxt(k,148)*y(k,102) + mat(k,1091) = -rxt(k,161)*y(k,102) + mat(k,1139) = -rxt(k,169)*y(k,102) + mat(k,1308) = -rxt(k,188)*y(k,102) + mat(k,887) = -rxt(k,220)*y(k,102) + mat(k,238) = -rxt(k,277)*y(k,102) + mat(k,638) = -rxt(k,305)*y(k,102) + mat(k,663) = -rxt(k,330)*y(k,102) + mat(k,758) = -rxt(k,340)*y(k,102) + mat(k,488) = -rxt(k,355)*y(k,102) + mat(k,352) = -rxt(k,367)*y(k,102) + mat(k,364) = -rxt(k,375)*y(k,102) + mat(k,853) = -rxt(k,381)*y(k,102) + mat(k,1487) = mat(k,1487) + rxt(k,134)*y(k,101) + mat(k,921) = rxt(k,134)*y(k,100) + mat(k,805) = .150_r8*rxt(k,290)*y(k,134) + mat(k,1418) = mat(k,1418) + .150_r8*rxt(k,290)*y(k,130) + .150_r8*rxt(k,335) & + *y(k,137) + mat(k,776) = .150_r8*rxt(k,335)*y(k,134) + mat(k,173) = -(rxt(k,382)*y(k,115)) + mat(k,838) = -rxt(k,382)*y(k,104) + mat(k,1338) = rxt(k,222)*y(k,42) + mat(k,1313) = rxt(k,222)*y(k,6) + 2.000_r8*rxt(k,192)*y(k,42) + mat(k,189) = -(rxt(k,371)*y(k,100) + rxt(k,372)*y(k,106)) + mat(k,1446) = -rxt(k,371)*y(k,105) + mat(k,1201) = -rxt(k,372)*y(k,105) + mat(k,1262) = -(rxt(k,144)*y(k,58) + rxt(k,145)*y(k,60) + rxt(k,146)*y(k,134) & + + rxt(k,147)*y(k,100) + rxt(k,148)*y(k,102) + (4._r8*rxt(k,149) & + + 4._r8*rxt(k,150)) * y(k,106) + rxt(k,153)*y(k,69) + rxt(k,166) & + *y(k,93) + rxt(k,167)*y(k,81) + rxt(k,175)*y(k,92) + rxt(k,176) & + *y(k,68) + rxt(k,198)*y(k,43) + (rxt(k,200) + rxt(k,201) & + ) * y(k,42) + rxt(k,203)*y(k,66) + rxt(k,206)*y(k,71) + rxt(k,230) & + *y(k,6) + rxt(k,232)*y(k,62) + rxt(k,246)*y(k,24) + rxt(k,248) & + *y(k,26) + rxt(k,249)*y(k,27) + rxt(k,251)*y(k,29) + rxt(k,253) & + *y(k,38) + rxt(k,254)*y(k,63) + rxt(k,255)*y(k,64) + rxt(k,256) & + *y(k,65) + rxt(k,264)*y(k,25) + rxt(k,269)*y(k,35) + rxt(k,270) & + *y(k,36) + rxt(k,271)*y(k,37) + rxt(k,275)*y(k,45) + rxt(k,282) & + *y(k,10) + rxt(k,283)*y(k,11) + rxt(k,285)*y(k,12) + rxt(k,287) & + *y(k,28) + rxt(k,292)*y(k,32) + rxt(k,293)*y(k,33) + rxt(k,298) & + *y(k,55) + rxt(k,299)*y(k,56) + rxt(k,300)*y(k,108) + rxt(k,301) & + *y(k,9) + rxt(k,309)*y(k,14) + rxt(k,310)*y(k,15) + rxt(k,312) & + *y(k,31) + rxt(k,313)*y(k,72) + rxt(k,314)*y(k,94) + rxt(k,317) & + *y(k,111) + rxt(k,321)*y(k,112) + rxt(k,322)*y(k,13) + rxt(k,323) & + *y(k,30) + rxt(k,331)*y(k,77) + rxt(k,332)*y(k,78) + rxt(k,339) & + *y(k,79) + rxt(k,341)*y(k,80) + rxt(k,344)*y(k,3) + rxt(k,345) & + *y(k,73) + rxt(k,356)*y(k,74) + rxt(k,357)*y(k,76) + rxt(k,359) & + *y(k,107) + rxt(k,365)*y(k,127) + rxt(k,368)*y(k,126) + (rxt(k,370) & + + rxt(k,384)) * y(k,49) + rxt(k,372)*y(k,105) + rxt(k,374) & + *y(k,116) + rxt(k,378)*y(k,113) + rxt(k,383)*y(k,115) + rxt(k,386) & + *y(k,88)) + mat(k,833) = -rxt(k,144)*y(k,106) + mat(k,320) = -rxt(k,145)*y(k,106) + mat(k,1410) = -rxt(k,146)*y(k,106) + mat(k,1479) = -rxt(k,147)*y(k,106) + mat(k,1548) = -rxt(k,148)*y(k,106) + mat(k,243) = -rxt(k,153)*y(k,106) + mat(k,1025) = -rxt(k,166)*y(k,106) + mat(k,581) = -rxt(k,167)*y(k,106) + mat(k,1083) = -rxt(k,175)*y(k,106) + mat(k,1502) = -rxt(k,176)*y(k,106) + mat(k,560) = -rxt(k,198)*y(k,106) + mat(k,1327) = -(rxt(k,200) + rxt(k,201)) * y(k,106) + mat(k,866) = -rxt(k,203)*y(k,106) + mat(k,436) = -rxt(k,206)*y(k,106) + mat(k,1351) = -rxt(k,230)*y(k,106) + mat(k,454) = -rxt(k,232)*y(k,106) + mat(k,250) = -rxt(k,246)*y(k,106) + mat(k,330) = -rxt(k,248)*y(k,106) + mat(k,63) = -rxt(k,249)*y(k,106) + mat(k,185) = -rxt(k,251)*y(k,106) + mat(k,225) = -rxt(k,253)*y(k,106) + mat(k,108) = -rxt(k,254)*y(k,106) + mat(k,117) = -rxt(k,255)*y(k,106) + mat(k,145) = -rxt(k,256)*y(k,106) + mat(k,1434) = -rxt(k,264)*y(k,106) + mat(k,283) = -rxt(k,269)*y(k,106) + mat(k,218) = -rxt(k,270)*y(k,106) + mat(k,938) = -rxt(k,271)*y(k,106) + mat(k,651) = -rxt(k,275)*y(k,106) + mat(k,128) = -rxt(k,282)*y(k,106) + mat(k,171) = -rxt(k,283)*y(k,106) + mat(k,160) = -rxt(k,285)*y(k,106) + mat(k,645) = -rxt(k,287)*y(k,106) + mat(k,356) = -rxt(k,292)*y(k,106) + mat(k,315) = -rxt(k,293)*y(k,106) + mat(k,597) = -rxt(k,298)*y(k,106) + mat(k,368) = -rxt(k,299)*y(k,106) + mat(k,280) = -rxt(k,300)*y(k,106) + mat(k,235) = -rxt(k,301)*y(k,106) + mat(k,206) = -rxt(k,309)*y(k,106) + mat(k,48) = -rxt(k,310)*y(k,106) + mat(k,687) = -rxt(k,312)*y(k,106) + mat(k,616) = -rxt(k,313)*y(k,106) + mat(k,201) = -rxt(k,314)*y(k,106) + mat(k,290) = -rxt(k,317)*y(k,106) + mat(k,212) = -rxt(k,321)*y(k,106) + mat(k,635) = -rxt(k,322)*y(k,106) + mat(k,379) = -rxt(k,323)*y(k,106) + mat(k,660) = -rxt(k,331)*y(k,106) + mat(k,166) = -rxt(k,332)*y(k,106) + mat(k,308) = -rxt(k,339)*y(k,106) + mat(k,754) = -rxt(k,341)*y(k,106) + mat(k,35) = -rxt(k,344)*y(k,106) + mat(k,180) = -rxt(k,345)*y(k,106) + mat(k,485) = -rxt(k,356)*y(k,106) + mat(k,299) = -rxt(k,357)*y(k,106) + mat(k,589) = -rxt(k,359)*y(k,106) + mat(k,101) = -rxt(k,365)*y(k,106) + mat(k,350) = -rxt(k,368)*y(k,106) + mat(k,138) = -(rxt(k,370) + rxt(k,384)) * y(k,106) + mat(k,195) = -rxt(k,372)*y(k,106) + mat(k,550) = -rxt(k,374)*y(k,106) + mat(k,362) = -rxt(k,378)*y(k,106) + mat(k,847) = -rxt(k,383)*y(k,106) + mat(k,37) = -rxt(k,386)*y(k,106) + mat(k,235) = mat(k,235) + .130_r8*rxt(k,277)*y(k,102) + mat(k,171) = mat(k,171) + .500_r8*rxt(k,283)*y(k,106) + mat(k,635) = mat(k,635) + .360_r8*rxt(k,305)*y(k,102) + mat(k,1434) = mat(k,1434) + rxt(k,263)*y(k,100) + mat(k,218) = mat(k,218) + .300_r8*rxt(k,270)*y(k,106) + mat(k,938) = mat(k,938) + rxt(k,272)*y(k,142) + mat(k,1300) = rxt(k,187)*y(k,134) + mat(k,496) = rxt(k,241)*y(k,152) + mat(k,1046) = rxt(k,143)*y(k,102) + 2.000_r8*rxt(k,138)*y(k,134) + mat(k,833) = mat(k,833) + rxt(k,135)*y(k,100) + rxt(k,117)*y(k,142) + mat(k,320) = mat(k,320) + rxt(k,136)*y(k,100) + mat(k,454) = mat(k,454) + rxt(k,231)*y(k,100) + rxt(k,237)*y(k,142) + mat(k,866) = mat(k,866) + rxt(k,202)*y(k,100) + rxt(k,214)*y(k,142) + mat(k,385) = rxt(k,233)*y(k,100) + mat(k,436) = mat(k,436) + rxt(k,205)*y(k,100) + mat(k,485) = mat(k,485) + .320_r8*rxt(k,355)*y(k,102) + mat(k,407) = .206_r8*rxt(k,347)*y(k,134) + mat(k,660) = mat(k,660) + .240_r8*rxt(k,330)*y(k,102) + mat(k,166) = mat(k,166) + .100_r8*rxt(k,332)*y(k,106) + mat(k,754) = mat(k,754) + .360_r8*rxt(k,340)*y(k,102) + mat(k,1131) = rxt(k,168)*y(k,134) + mat(k,1025) = mat(k,1025) + rxt(k,163)*y(k,134) + mat(k,1479) = mat(k,1479) + rxt(k,263)*y(k,25) + rxt(k,135)*y(k,58) & + + rxt(k,136)*y(k,60) + rxt(k,231)*y(k,62) + rxt(k,202)*y(k,66) & + + rxt(k,233)*y(k,70) + rxt(k,205)*y(k,71) + rxt(k,141)*y(k,134) + mat(k,1548) = mat(k,1548) + .130_r8*rxt(k,277)*y(k,9) + .360_r8*rxt(k,305) & + *y(k,13) + rxt(k,143)*y(k,57) + .320_r8*rxt(k,355)*y(k,74) & + + .240_r8*rxt(k,330)*y(k,77) + .360_r8*rxt(k,340)*y(k,80) & + + 1.156_r8*rxt(k,367)*y(k,126) + rxt(k,142)*y(k,134) + mat(k,1262) = mat(k,1262) + .500_r8*rxt(k,283)*y(k,11) + .300_r8*rxt(k,270) & + *y(k,36) + .100_r8*rxt(k,332)*y(k,78) + .500_r8*rxt(k,317) & + *y(k,111) + .500_r8*rxt(k,365)*y(k,127) + mat(k,290) = mat(k,290) + .500_r8*rxt(k,317)*y(k,106) + mat(k,350) = mat(k,350) + 1.156_r8*rxt(k,367)*y(k,102) + mat(k,101) = mat(k,101) + .500_r8*rxt(k,365)*y(k,106) + mat(k,801) = .450_r8*rxt(k,290)*y(k,134) + mat(k,1410) = mat(k,1410) + rxt(k,187)*y(k,39) + 2.000_r8*rxt(k,138)*y(k,57) & + + .206_r8*rxt(k,347)*y(k,75) + rxt(k,168)*y(k,91) + rxt(k,163) & + *y(k,93) + rxt(k,141)*y(k,100) + rxt(k,142)*y(k,102) & + + .450_r8*rxt(k,290)*y(k,130) + .450_r8*rxt(k,335)*y(k,137) & + + .150_r8*rxt(k,319)*y(k,150) + mat(k,772) = .450_r8*rxt(k,335)*y(k,134) + mat(k,1173) = rxt(k,272)*y(k,37) + rxt(k,117)*y(k,58) + rxt(k,237)*y(k,62) & + + rxt(k,214)*y(k,66) + 2.000_r8*rxt(k,118)*y(k,152) + mat(k,609) = .150_r8*rxt(k,319)*y(k,134) + mat(k,1575) = rxt(k,241)*y(k,54) + 2.000_r8*rxt(k,118)*y(k,142) end do end subroutine nlnmat05 subroutine nlnmat06( avec_len, mat, y, rxt ) @@ -1148,238 +1281,251 @@ subroutine nlnmat06( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,909) = -(rxt(k,120)*y(k,144) + rxt(k,126)*y(k,145) + rxt(k,134) & - *y(k,106) + rxt(k,140)*y(k,62) + rxt(k,179)*y(k,140) + rxt(k,181) & - *y(k,89) + rxt(k,297)*y(k,56) + rxt(k,373)*y(k,120) + rxt(k,380) & - *y(k,122) + rxt(k,417)*y(k,141) + (rxt(k,421) + rxt(k,422) & - ) * y(k,143) + rxt(k,429)*y(k,148) + rxt(k,433)*y(k,149)) - mat(k,1274) = -rxt(k,120)*y(k,107) - mat(k,94) = -rxt(k,126)*y(k,107) - mat(k,1446) = -rxt(k,134)*y(k,107) - mat(k,1540) = -rxt(k,140)*y(k,107) - mat(k,543) = -rxt(k,179)*y(k,107) - mat(k,564) = -rxt(k,181)*y(k,107) - mat(k,229) = -rxt(k,297)*y(k,107) - mat(k,360) = -rxt(k,373)*y(k,107) - mat(k,843) = -rxt(k,380)*y(k,107) - mat(k,341) = -rxt(k,417)*y(k,107) - mat(k,448) = -(rxt(k,421) + rxt(k,422)) * y(k,107) - mat(k,508) = -rxt(k,429)*y(k,107) - mat(k,264) = -rxt(k,433)*y(k,107) - mat(k,877) = rxt(k,220)*y(k,108) + rxt(k,219)*y(k,139) - mat(k,931) = 2.000_r8*rxt(k,221)*y(k,6) + (rxt(k,223)+rxt(k,224))*y(k,45) & - + rxt(k,229)*y(k,106) + rxt(k,225)*y(k,139) - mat(k,426) = rxt(k,280)*y(k,139) - mat(k,464) = rxt(k,307)*y(k,139) - mat(k,1186) = rxt(k,267)*y(k,139) - mat(k,1312) = rxt(k,188)*y(k,108) + rxt(k,186)*y(k,139) - mat(k,957) = (rxt(k,223)+rxt(k,224))*y(k,6) + (2.000_r8*rxt(k,190) & - +2.000_r8*rxt(k,191))*y(k,45) + rxt(k,199)*y(k,106) & - + rxt(k,201)*y(k,111) + rxt(k,193)*y(k,139) - mat(k,1540) = mat(k,1540) + rxt(k,143)*y(k,108) + rxt(k,137)*y(k,139) - mat(k,233) = rxt(k,153)*y(k,111) - mat(k,564) = mat(k,564) + rxt(k,159)*y(k,98) - mat(k,123) = rxt(k,172)*y(k,144) - mat(k,1494) = rxt(k,169)*y(k,108) + rxt(k,425)*y(k,147) - mat(k,993) = rxt(k,159)*y(k,89) + rxt(k,160)*y(k,106) + rxt(k,161)*y(k,108) - mat(k,1232) = rxt(k,165)*y(k,106) + rxt(k,163)*y(k,139) - mat(k,1446) = mat(k,1446) + rxt(k,229)*y(k,6) + rxt(k,199)*y(k,45) & - + rxt(k,160)*y(k,98) + rxt(k,165)*y(k,99) + 2.000_r8*rxt(k,133) & - *y(k,106) + 2.000_r8*rxt(k,132)*y(k,108) + rxt(k,147)*y(k,111) & - + rxt(k,141)*y(k,139) + rxt(k,125)*y(k,145) - mat(k,909) = mat(k,909) + 2.000_r8*rxt(k,126)*y(k,145) - mat(k,1122) = rxt(k,220)*y(k,4) + rxt(k,188)*y(k,42) + rxt(k,143)*y(k,62) & - + rxt(k,169)*y(k,97) + rxt(k,161)*y(k,98) + 2.000_r8*rxt(k,132) & - *y(k,106) + rxt(k,148)*y(k,111) + rxt(k,375)*y(k,120) & - + rxt(k,381)*y(k,122) + 2.000_r8*rxt(k,142)*y(k,139) + ( & - + 2.000_r8*rxt(k,122)+rxt(k,123))*y(k,144) - mat(k,1401) = rxt(k,201)*y(k,45) + rxt(k,153)*y(k,74) + rxt(k,147)*y(k,106) & - + rxt(k,148)*y(k,108) + rxt(k,146)*y(k,139) - mat(k,404) = rxt(k,315)*y(k,139) - mat(k,360) = mat(k,360) + rxt(k,375)*y(k,108) - mat(k,843) = mat(k,843) + rxt(k,381)*y(k,108) - mat(k,1076) = rxt(k,219)*y(k,4) + rxt(k,225)*y(k,6) + rxt(k,280)*y(k,10) & - + rxt(k,307)*y(k,15) + rxt(k,267)*y(k,37) + rxt(k,186)*y(k,42) & - + rxt(k,193)*y(k,45) + rxt(k,137)*y(k,62) + rxt(k,163)*y(k,99) & - + rxt(k,141)*y(k,106) + 2.000_r8*rxt(k,142)*y(k,108) & - + rxt(k,146)*y(k,111) + rxt(k,315)*y(k,114) & - + 2.000_r8*rxt(k,151)*y(k,139) - mat(k,1274) = mat(k,1274) + rxt(k,172)*y(k,90) + (2.000_r8*rxt(k,122) & - +rxt(k,123))*y(k,108) - mat(k,94) = mat(k,94) + rxt(k,125)*y(k,106) + 2.000_r8*rxt(k,126)*y(k,107) - mat(k,515) = rxt(k,425)*y(k,97) - mat(k,1128) = -((rxt(k,122) + rxt(k,123)) * y(k,144) + rxt(k,132)*y(k,106) & - + rxt(k,142)*y(k,139) + rxt(k,143)*y(k,62) + rxt(k,148)*y(k,111) & - + rxt(k,161)*y(k,98) + rxt(k,169)*y(k,97) + rxt(k,188)*y(k,42) & - + rxt(k,220)*y(k,4) + rxt(k,277)*y(k,9) + rxt(k,305)*y(k,14) & - + rxt(k,330)*y(k,83) + rxt(k,340)*y(k,88) + rxt(k,355)*y(k,79) & - + rxt(k,367)*y(k,133) + rxt(k,375)*y(k,120) + rxt(k,381) & - *y(k,122)) - mat(k,1280) = -(rxt(k,122) + rxt(k,123)) * y(k,108) - mat(k,1452) = -rxt(k,132)*y(k,108) - mat(k,1082) = -rxt(k,142)*y(k,108) - mat(k,1546) = -rxt(k,143)*y(k,108) - mat(k,1407) = -rxt(k,148)*y(k,108) - mat(k,999) = -rxt(k,161)*y(k,108) - mat(k,1500) = -rxt(k,169)*y(k,108) - mat(k,1318) = -rxt(k,188)*y(k,108) - mat(k,882) = -rxt(k,220)*y(k,108) - mat(k,244) = -rxt(k,277)*y(k,108) - mat(k,633) = -rxt(k,305)*y(k,108) - mat(k,662) = -rxt(k,330)*y(k,108) - mat(k,752) = -rxt(k,340)*y(k,108) - mat(k,484) = -rxt(k,355)*y(k,108) - mat(k,349) = -rxt(k,367)*y(k,108) - mat(k,361) = -rxt(k,375)*y(k,108) - mat(k,848) = -rxt(k,381)*y(k,108) - mat(k,799) = .150_r8*rxt(k,290)*y(k,139) - mat(k,771) = .150_r8*rxt(k,335)*y(k,139) - mat(k,1452) = mat(k,1452) + rxt(k,134)*y(k,107) - mat(k,915) = rxt(k,134)*y(k,106) - mat(k,1082) = mat(k,1082) + .150_r8*rxt(k,290)*y(k,32) + .150_r8*rxt(k,335) & - *y(k,86) - mat(k,173) = -(rxt(k,382)*y(k,122)) - mat(k,838) = -rxt(k,382)*y(k,109) - mat(k,924) = rxt(k,222)*y(k,45) - mat(k,950) = rxt(k,222)*y(k,6) + 2.000_r8*rxt(k,192)*y(k,45) - mat(k,181) = -(rxt(k,371)*y(k,106) + rxt(k,372)*y(k,111)) - mat(k,1421) = -rxt(k,371)*y(k,110) - mat(k,1347) = -rxt(k,372)*y(k,110) - mat(k,1413) = -(rxt(k,144)*y(k,63) + rxt(k,145)*y(k,65) + rxt(k,146)*y(k,139) & - + rxt(k,147)*y(k,106) + rxt(k,148)*y(k,108) + (4._r8*rxt(k,149) & - + 4._r8*rxt(k,150)) * y(k,111) + rxt(k,153)*y(k,74) + rxt(k,166) & - *y(k,99) + rxt(k,167)*y(k,89) + rxt(k,175)*y(k,98) + rxt(k,176) & - *y(k,73) + rxt(k,198)*y(k,46) + (rxt(k,200) + rxt(k,201) & - ) * y(k,45) + rxt(k,203)*y(k,71) + rxt(k,206)*y(k,76) + rxt(k,230) & - *y(k,6) + rxt(k,232)*y(k,67) + rxt(k,246)*y(k,26) + rxt(k,248) & - *y(k,28) + rxt(k,249)*y(k,29) + rxt(k,251)*y(k,31) + rxt(k,253) & - *y(k,41) + rxt(k,254)*y(k,68) + rxt(k,255)*y(k,69) + rxt(k,256) & - *y(k,70) + rxt(k,264)*y(k,27) + rxt(k,269)*y(k,38) + rxt(k,270) & - *y(k,39) + rxt(k,271)*y(k,40) + rxt(k,275)*y(k,48) + rxt(k,282) & - *y(k,11) + rxt(k,283)*y(k,12) + rxt(k,285)*y(k,13) + rxt(k,287) & - *y(k,30) + rxt(k,292)*y(k,35) + rxt(k,293)*y(k,36) + rxt(k,298) & - *y(k,60) + rxt(k,299)*y(k,61) + rxt(k,300)*y(k,113) + rxt(k,301) & - *y(k,9) + rxt(k,309)*y(k,16) + rxt(k,310)*y(k,17) + rxt(k,312) & - *y(k,34) + rxt(k,313)*y(k,77) + rxt(k,314)*y(k,100) + rxt(k,317) & - *y(k,117) + rxt(k,321)*y(k,119) + rxt(k,322)*y(k,14) + rxt(k,323) & - *y(k,33) + rxt(k,331)*y(k,83) + rxt(k,332)*y(k,85) + rxt(k,339) & - *y(k,87) + rxt(k,341)*y(k,88) + rxt(k,344)*y(k,3) + rxt(k,345) & - *y(k,78) + rxt(k,356)*y(k,79) + rxt(k,357)*y(k,82) + rxt(k,359) & - *y(k,112) + rxt(k,365)*y(k,135) + rxt(k,368)*y(k,133) + (rxt(k,370) & - + rxt(k,384)) * y(k,52) + rxt(k,372)*y(k,110) + rxt(k,374) & - *y(k,123) + rxt(k,378)*y(k,120) + rxt(k,383)*y(k,122) + rxt(k,386) & - *y(k,95)) - mat(k,833) = -rxt(k,144)*y(k,111) - mat(k,315) = -rxt(k,145)*y(k,111) - mat(k,1088) = -rxt(k,146)*y(k,111) - mat(k,1458) = -rxt(k,147)*y(k,111) - mat(k,1134) = -rxt(k,148)*y(k,111) - mat(k,237) = -rxt(k,153)*y(k,111) - mat(k,1244) = -rxt(k,166)*y(k,111) - mat(k,567) = -rxt(k,167)*y(k,111) - mat(k,1005) = -rxt(k,175)*y(k,111) - mat(k,1157) = -rxt(k,176)*y(k,111) - mat(k,580) = -rxt(k,198)*y(k,111) - mat(k,969) = -(rxt(k,200) + rxt(k,201)) * y(k,111) - mat(k,869) = -rxt(k,203)*y(k,111) - mat(k,455) = -rxt(k,206)*y(k,111) - mat(k,942) = -rxt(k,230)*y(k,111) - mat(k,437) = -rxt(k,232)*y(k,111) - mat(k,251) = -rxt(k,246)*y(k,111) - mat(k,332) = -rxt(k,248)*y(k,111) - mat(k,47) = -rxt(k,249)*y(k,111) - mat(k,195) = -rxt(k,251)*y(k,111) - mat(k,226) = -rxt(k,253)*y(k,111) - mat(k,111) = -rxt(k,254)*y(k,111) - mat(k,121) = -rxt(k,255)*y(k,111) - mat(k,146) = -rxt(k,256)*y(k,111) - mat(k,1029) = -rxt(k,264)*y(k,111) - mat(k,285) = -rxt(k,269)*y(k,111) - mat(k,212) = -rxt(k,270)*y(k,111) - mat(k,1531) = -rxt(k,271)*y(k,111) - mat(k,652) = -rxt(k,275)*y(k,111) - mat(k,129) = -rxt(k,282)*y(k,111) - mat(k,172) = -rxt(k,283)*y(k,111) - mat(k,161) = -rxt(k,285)*y(k,111) - mat(k,647) = -rxt(k,287)*y(k,111) - mat(k,356) = -rxt(k,292)*y(k,111) - mat(k,323) = -rxt(k,293)*y(k,111) - mat(k,612) = -rxt(k,298)*y(k,111) - mat(k,369) = -rxt(k,299)*y(k,111) - mat(k,281) = -rxt(k,300)*y(k,111) - mat(k,245) = -rxt(k,301)*y(k,111) - mat(k,207) = -rxt(k,309)*y(k,111) - mat(k,51) = -rxt(k,310)*y(k,111) - mat(k,689) = -rxt(k,312)*y(k,111) - mat(k,618) = -rxt(k,313)*y(k,111) - mat(k,202) = -rxt(k,314)*y(k,111) - mat(k,292) = -rxt(k,317)*y(k,111) - mat(k,219) = -rxt(k,321)*y(k,111) - mat(k,636) = -rxt(k,322)*y(k,111) - mat(k,398) = -rxt(k,323)*y(k,111) - mat(k,663) = -rxt(k,331)*y(k,111) - mat(k,167) = -rxt(k,332)*y(k,111) - mat(k,310) = -rxt(k,339)*y(k,111) - mat(k,756) = -rxt(k,341)*y(k,111) - mat(k,34) = -rxt(k,344)*y(k,111) - mat(k,180) = -rxt(k,345)*y(k,111) - mat(k,487) = -rxt(k,356)*y(k,111) - mat(k,273) = -rxt(k,357)*y(k,111) - mat(k,592) = -rxt(k,359)*y(k,111) - mat(k,100) = -rxt(k,365)*y(k,111) - mat(k,351) = -rxt(k,368)*y(k,111) - mat(k,140) = -(rxt(k,370) + rxt(k,384)) * y(k,111) - mat(k,186) = -rxt(k,372)*y(k,111) - mat(k,551) = -rxt(k,374)*y(k,111) - mat(k,362) = -rxt(k,378)*y(k,111) - mat(k,850) = -rxt(k,383)*y(k,111) - mat(k,36) = -rxt(k,386)*y(k,111) - mat(k,245) = mat(k,245) + .130_r8*rxt(k,277)*y(k,108) - mat(k,172) = mat(k,172) + .500_r8*rxt(k,283)*y(k,111) - mat(k,636) = mat(k,636) + .360_r8*rxt(k,305)*y(k,108) - mat(k,1029) = mat(k,1029) + rxt(k,263)*y(k,106) - mat(k,803) = .450_r8*rxt(k,290)*y(k,139) - mat(k,212) = mat(k,212) + .300_r8*rxt(k,270)*y(k,111) - mat(k,1531) = mat(k,1531) + rxt(k,272)*y(k,144) - mat(k,1324) = rxt(k,187)*y(k,139) - mat(k,495) = rxt(k,241)*y(k,151) - mat(k,1552) = rxt(k,143)*y(k,108) + 2.000_r8*rxt(k,138)*y(k,139) - mat(k,833) = mat(k,833) + rxt(k,135)*y(k,106) + rxt(k,117)*y(k,144) - mat(k,315) = mat(k,315) + rxt(k,136)*y(k,106) - mat(k,437) = mat(k,437) + rxt(k,231)*y(k,106) + rxt(k,237)*y(k,144) - mat(k,869) = mat(k,869) + rxt(k,202)*y(k,106) + rxt(k,214)*y(k,144) - mat(k,391) = rxt(k,233)*y(k,106) - mat(k,455) = mat(k,455) + rxt(k,205)*y(k,106) - mat(k,487) = mat(k,487) + .320_r8*rxt(k,355)*y(k,108) - mat(k,419) = .206_r8*rxt(k,347)*y(k,139) - mat(k,663) = mat(k,663) + .240_r8*rxt(k,330)*y(k,108) - mat(k,167) = mat(k,167) + .100_r8*rxt(k,332)*y(k,111) - mat(k,775) = .450_r8*rxt(k,335)*y(k,139) - mat(k,756) = mat(k,756) + .360_r8*rxt(k,340)*y(k,108) - mat(k,1506) = rxt(k,168)*y(k,139) - mat(k,1244) = mat(k,1244) + rxt(k,163)*y(k,139) - mat(k,1458) = mat(k,1458) + rxt(k,263)*y(k,27) + rxt(k,135)*y(k,63) & - + rxt(k,136)*y(k,65) + rxt(k,231)*y(k,67) + rxt(k,202)*y(k,71) & - + rxt(k,233)*y(k,75) + rxt(k,205)*y(k,76) + rxt(k,141)*y(k,139) - mat(k,1134) = mat(k,1134) + .130_r8*rxt(k,277)*y(k,9) + .360_r8*rxt(k,305) & - *y(k,14) + rxt(k,143)*y(k,62) + .320_r8*rxt(k,355)*y(k,79) & - + .240_r8*rxt(k,330)*y(k,83) + .360_r8*rxt(k,340)*y(k,88) & - + 1.156_r8*rxt(k,367)*y(k,133) + rxt(k,142)*y(k,139) - mat(k,1413) = mat(k,1413) + .500_r8*rxt(k,283)*y(k,12) + .300_r8*rxt(k,270) & - *y(k,39) + .100_r8*rxt(k,332)*y(k,85) + .500_r8*rxt(k,317) & - *y(k,117) + .500_r8*rxt(k,365)*y(k,135) - mat(k,292) = mat(k,292) + .500_r8*rxt(k,317)*y(k,111) - mat(k,603) = .150_r8*rxt(k,319)*y(k,139) - mat(k,351) = mat(k,351) + 1.156_r8*rxt(k,367)*y(k,108) - mat(k,100) = mat(k,100) + .500_r8*rxt(k,365)*y(k,111) - mat(k,1088) = mat(k,1088) + .450_r8*rxt(k,290)*y(k,32) + rxt(k,187)*y(k,42) & - + 2.000_r8*rxt(k,138)*y(k,62) + .206_r8*rxt(k,347)*y(k,80) & - + .450_r8*rxt(k,335)*y(k,86) + rxt(k,168)*y(k,97) + rxt(k,163) & - *y(k,99) + rxt(k,141)*y(k,106) + rxt(k,142)*y(k,108) & - + .150_r8*rxt(k,319)*y(k,118) - mat(k,1286) = rxt(k,272)*y(k,40) + rxt(k,117)*y(k,63) + rxt(k,237)*y(k,67) & - + rxt(k,214)*y(k,71) + 2.000_r8*rxt(k,118)*y(k,151) - mat(k,1579) = rxt(k,241)*y(k,59) + 2.000_r8*rxt(k,118)*y(k,144) + mat(k,584) = -(rxt(k,358)*y(k,93) + rxt(k,359)*y(k,106)) + mat(k,999) = -rxt(k,358)*y(k,107) + mat(k,1234) = -rxt(k,359)*y(k,107) + mat(k,401) = .794_r8*rxt(k,348)*y(k,91) + .794_r8*rxt(k,349)*y(k,93) & + + .794_r8*rxt(k,347)*y(k,134) + mat(k,1107) = .794_r8*rxt(k,348)*y(k,75) + .080_r8*rxt(k,353)*y(k,135) & + + .800_r8*rxt(k,329)*y(k,136) + mat(k,999) = mat(k,999) + .794_r8*rxt(k,349)*y(k,75) + mat(k,1384) = .794_r8*rxt(k,347)*y(k,75) + mat(k,695) = .080_r8*rxt(k,353)*y(k,91) + mat(k,720) = .800_r8*rxt(k,329)*y(k,91) + mat(k,274) = -(rxt(k,300)*y(k,106)) + mat(k,1210) = -rxt(k,300)*y(k,108) + mat(k,1060) = rxt(k,302)*y(k,130) + mat(k,779) = rxt(k,302)*y(k,92) + mat(k,286) = -(rxt(k,317)*y(k,106)) + mat(k,1212) = -rxt(k,317)*y(k,111) + mat(k,1370) = rxt(k,315)*y(k,149) + mat(k,410) = rxt(k,315)*y(k,134) + mat(k,209) = -(rxt(k,321)*y(k,106)) + mat(k,1204) = -rxt(k,321)*y(k,112) + mat(k,1366) = .850_r8*rxt(k,319)*y(k,150) + mat(k,600) = .850_r8*rxt(k,319)*y(k,134) + mat(k,358) = -(rxt(k,373)*y(k,101) + rxt(k,375)*y(k,102) + rxt(k,378) & + *y(k,106)) + mat(k,895) = -rxt(k,373)*y(k,113) + mat(k,1517) = -rxt(k,375)*y(k,113) + mat(k,1220) = -rxt(k,378)*y(k,113) + mat(k,841) = -(rxt(k,376)*y(k,6) + rxt(k,377)*y(k,42) + rxt(k,379)*y(k,92) & + + rxt(k,380)*y(k,101) + rxt(k,381)*y(k,102) + rxt(k,382) & + *y(k,104) + rxt(k,383)*y(k,106)) + mat(k,1342) = -rxt(k,376)*y(k,115) + mat(k,1317) = -rxt(k,377)*y(k,115) + mat(k,1072) = -rxt(k,379)*y(k,115) + mat(k,907) = -rxt(k,380)*y(k,115) + mat(k,1538) = -rxt(k,381)*y(k,115) + mat(k,175) = -rxt(k,382)*y(k,115) + mat(k,1251) = -rxt(k,383)*y(k,115) + mat(k,1468) = rxt(k,371)*y(k,105) + mat(k,907) = mat(k,907) + rxt(k,373)*y(k,113) + mat(k,1538) = mat(k,1538) + rxt(k,375)*y(k,113) + mat(k,193) = rxt(k,371)*y(k,100) + mat(k,1251) = mat(k,1251) + rxt(k,378)*y(k,113) + mat(k,359) = rxt(k,373)*y(k,101) + rxt(k,375)*y(k,102) + rxt(k,378)*y(k,106) + mat(k,548) = -(rxt(k,374)*y(k,106)) + mat(k,1231) = -rxt(k,374)*y(k,116) + mat(k,1341) = rxt(k,376)*y(k,115) + mat(k,1315) = rxt(k,377)*y(k,115) + mat(k,136) = rxt(k,369)*y(k,93) + (rxt(k,370)+.500_r8*rxt(k,384))*y(k,106) + mat(k,1063) = rxt(k,379)*y(k,115) + mat(k,998) = rxt(k,369)*y(k,49) + mat(k,902) = rxt(k,380)*y(k,115) + mat(k,1521) = rxt(k,381)*y(k,115) + mat(k,174) = rxt(k,382)*y(k,115) + mat(k,191) = rxt(k,372)*y(k,106) + mat(k,1231) = mat(k,1231) + (rxt(k,370)+.500_r8*rxt(k,384))*y(k,49) & + + rxt(k,372)*y(k,105) + rxt(k,383)*y(k,115) + mat(k,840) = rxt(k,376)*y(k,6) + rxt(k,377)*y(k,42) + rxt(k,379)*y(k,92) & + + rxt(k,380)*y(k,101) + rxt(k,381)*y(k,102) + rxt(k,382) & + *y(k,104) + rxt(k,383)*y(k,106) + mat(k,131) = -(rxt(k,385)*y(k,152)) + mat(k,1559) = -rxt(k,385)*y(k,117) + mat(k,1193) = rxt(k,374)*y(k,116) + mat(k,547) = rxt(k,374)*y(k,106) + mat(k,343) = -(rxt(k,366)*y(k,93) + rxt(k,367)*y(k,102) + rxt(k,368)*y(k,106)) + mat(k,993) = -rxt(k,366)*y(k,126) + mat(k,1515) = -rxt(k,367)*y(k,126) + mat(k,1218) = -rxt(k,368)*y(k,126) + mat(k,99) = -(rxt(k,365)*y(k,106)) + mat(k,1187) = -rxt(k,365)*y(k,127) + mat(k,1362) = rxt(k,362)*y(k,151) + mat(k,665) = rxt(k,362)*y(k,134) + mat(k,424) = -(4._r8*rxt(k,278)*y(k,128) + rxt(k,279)*y(k,34) + rxt(k,280) & + *y(k,134) + rxt(k,281)*y(k,91)) + mat(k,955) = -rxt(k,279)*y(k,128) + mat(k,1380) = -rxt(k,280)*y(k,128) + mat(k,1101) = -rxt(k,281)*y(k,128) + mat(k,169) = .500_r8*rxt(k,283)*y(k,106) + mat(k,158) = rxt(k,284)*y(k,39) + rxt(k,285)*y(k,106) + mat(k,1281) = rxt(k,284)*y(k,12) + mat(k,1225) = .500_r8*rxt(k,283)*y(k,11) + rxt(k,285)*y(k,12) + mat(k,460) = -(rxt(k,306)*y(k,34) + rxt(k,307)*y(k,134) + rxt(k,308)*y(k,91)) + mat(k,956) = -rxt(k,306)*y(k,129) + mat(k,1383) = -rxt(k,307)*y(k,129) + mat(k,1102) = -rxt(k,308)*y(k,129) + mat(k,34) = 1.670_r8*rxt(k,344)*y(k,106) + mat(k,205) = rxt(k,309)*y(k,106) + mat(k,47) = rxt(k,310)*y(k,106) + mat(k,1228) = 1.670_r8*rxt(k,344)*y(k,3) + rxt(k,309)*y(k,14) + rxt(k,310) & + *y(k,15) + mat(k,793) = -(4._r8*rxt(k,288)*y(k,130) + rxt(k,289)*y(k,34) + rxt(k,290) & + *y(k,134) + rxt(k,291)*y(k,91) + rxt(k,302)*y(k,92) + rxt(k,324) & + *y(k,136) + rxt(k,350)*y(k,135) + rxt(k,360)*y(k,151)) + mat(k,969) = -rxt(k,289)*y(k,130) + mat(k,1397) = -rxt(k,290)*y(k,130) + mat(k,1120) = -rxt(k,291)*y(k,130) + mat(k,1070) = -rxt(k,302)*y(k,130) + mat(k,728) = -rxt(k,324)*y(k,130) + mat(k,706) = -rxt(k,350)*y(k,130) + mat(k,673) = -rxt(k,360)*y(k,130) + mat(k,642) = rxt(k,286)*y(k,93) + rxt(k,287)*y(k,106) + mat(k,684) = rxt(k,311)*y(k,93) + rxt(k,312)*y(k,106) + mat(k,312) = .500_r8*rxt(k,293)*y(k,106) + mat(k,969) = mat(k,969) + .260_r8*rxt(k,325)*y(k,136) + rxt(k,334)*y(k,137) & + + .300_r8*rxt(k,318)*y(k,150) + mat(k,480) = .080_r8*rxt(k,355)*y(k,102) + mat(k,658) = .100_r8*rxt(k,330)*y(k,102) + mat(k,746) = .280_r8*rxt(k,340)*y(k,102) + mat(k,1120) = mat(k,1120) + .530_r8*rxt(k,328)*y(k,136) + rxt(k,337)*y(k,137) & + + rxt(k,320)*y(k,150) + mat(k,1013) = rxt(k,286)*y(k,28) + rxt(k,311)*y(k,31) + .530_r8*rxt(k,327) & + *y(k,136) + rxt(k,338)*y(k,137) + mat(k,1536) = .080_r8*rxt(k,355)*y(k,74) + .100_r8*rxt(k,330)*y(k,77) & + + .280_r8*rxt(k,340)*y(k,80) + mat(k,1248) = rxt(k,287)*y(k,28) + rxt(k,312)*y(k,31) + .500_r8*rxt(k,293) & + *y(k,33) + mat(k,793) = mat(k,793) + .530_r8*rxt(k,324)*y(k,136) + mat(k,1397) = mat(k,1397) + .450_r8*rxt(k,335)*y(k,137) + .150_r8*rxt(k,319) & + *y(k,150) + mat(k,728) = mat(k,728) + .260_r8*rxt(k,325)*y(k,34) + .530_r8*rxt(k,328) & + *y(k,91) + .530_r8*rxt(k,327)*y(k,93) + .530_r8*rxt(k,324) & + *y(k,130) + mat(k,766) = rxt(k,334)*y(k,34) + rxt(k,337)*y(k,91) + rxt(k,338)*y(k,93) & + + .450_r8*rxt(k,335)*y(k,134) + 4.000_r8*rxt(k,336)*y(k,137) + mat(k,605) = .300_r8*rxt(k,318)*y(k,34) + rxt(k,320)*y(k,91) & + + .150_r8*rxt(k,319)*y(k,134) + mat(k,526) = -(rxt(k,414)*y(k,140) + rxt(k,415)*y(k,145) + rxt(k,416) & + *y(k,139)) + mat(k,371) = -rxt(k,414)*y(k,131) + mat(k,512) = -rxt(k,415)*y(k,131) + mat(k,338) = -rxt(k,416)*y(k,131) + mat(k,227) = -(rxt(k,297)*y(k,101)) + mat(k,891) = -rxt(k,297)*y(k,132) + mat(k,1094) = .750_r8*rxt(k,295)*y(k,133) + mat(k,391) = .750_r8*rxt(k,295)*y(k,91) + mat(k,392) = -(rxt(k,294)*y(k,134) + rxt(k,295)*y(k,91)) + mat(k,1377) = -rxt(k,294)*y(k,133) + mat(k,1098) = -rxt(k,295)*y(k,133) + mat(k,233) = rxt(k,301)*y(k,106) + mat(k,1223) = rxt(k,301)*y(k,9) + mat(k,1414) = -((rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,57) + rxt(k,141) & + *y(k,100) + rxt(k,142)*y(k,102) + rxt(k,146)*y(k,106) & + + 4._r8*rxt(k,151)*y(k,134) + rxt(k,163)*y(k,93) + rxt(k,168) & + *y(k,91) + rxt(k,173)*y(k,92) + (rxt(k,186) + rxt(k,187) & + ) * y(k,39) + rxt(k,193)*y(k,42) + rxt(k,219)*y(k,4) + rxt(k,225) & + *y(k,6) + rxt(k,267)*y(k,34) + rxt(k,280)*y(k,128) + rxt(k,290) & + *y(k,130) + rxt(k,294)*y(k,133) + rxt(k,307)*y(k,129) + rxt(k,315) & + *y(k,149) + rxt(k,319)*y(k,150) + rxt(k,326)*y(k,136) + rxt(k,335) & + *y(k,137) + rxt(k,347)*y(k,75) + rxt(k,352)*y(k,135) + rxt(k,362) & + *y(k,151)) + mat(k,1050) = -(rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,134) + mat(k,1483) = -rxt(k,141)*y(k,134) + mat(k,1552) = -rxt(k,142)*y(k,134) + mat(k,1266) = -rxt(k,146)*y(k,134) + mat(k,1029) = -rxt(k,163)*y(k,134) + mat(k,1135) = -rxt(k,168)*y(k,134) + mat(k,1087) = -rxt(k,173)*y(k,134) + mat(k,1304) = -(rxt(k,186) + rxt(k,187)) * y(k,134) + mat(k,1331) = -rxt(k,193)*y(k,134) + mat(k,884) = -rxt(k,219)*y(k,134) + mat(k,1355) = -rxt(k,225)*y(k,134) + mat(k,983) = -rxt(k,267)*y(k,134) + mat(k,431) = -rxt(k,280)*y(k,134) + mat(k,802) = -rxt(k,290)*y(k,134) + mat(k,398) = -rxt(k,294)*y(k,134) + mat(k,469) = -rxt(k,307)*y(k,134) + mat(k,418) = -rxt(k,315)*y(k,134) + mat(k,610) = -rxt(k,319)*y(k,134) + mat(k,735) = -rxt(k,326)*y(k,134) + mat(k,773) = -rxt(k,335)*y(k,134) + mat(k,408) = -rxt(k,347)*y(k,134) + mat(k,713) = -rxt(k,352)*y(k,134) + mat(k,680) = -rxt(k,362)*y(k,134) + mat(k,884) = mat(k,884) + rxt(k,218)*y(k,25) + mat(k,1355) = mat(k,1355) + rxt(k,230)*y(k,106) + mat(k,236) = .130_r8*rxt(k,277)*y(k,102) + mat(k,129) = rxt(k,282)*y(k,106) + mat(k,636) = .280_r8*rxt(k,305)*y(k,102) + mat(k,1438) = rxt(k,218)*y(k,4) + rxt(k,182)*y(k,39) + rxt(k,262)*y(k,93) & + + rxt(k,263)*y(k,100) + mat(k,332) = rxt(k,247)*y(k,39) + rxt(k,248)*y(k,106) + mat(k,187) = rxt(k,250)*y(k,39) + rxt(k,251)*y(k,106) + mat(k,983) = mat(k,983) + 4.000_r8*rxt(k,265)*y(k,34) + rxt(k,189)*y(k,42) & + + rxt(k,268)*y(k,91) + rxt(k,279)*y(k,128) + rxt(k,306)*y(k,129) & + + .900_r8*rxt(k,289)*y(k,130) + rxt(k,351)*y(k,135) & + + .730_r8*rxt(k,325)*y(k,136) + rxt(k,334)*y(k,137) & + + .300_r8*rxt(k,318)*y(k,150) + .800_r8*rxt(k,361)*y(k,151) + mat(k,284) = rxt(k,269)*y(k,106) + mat(k,942) = rxt(k,273)*y(k,142) + mat(k,1304) = mat(k,1304) + rxt(k,182)*y(k,25) + rxt(k,247)*y(k,26) & + + rxt(k,250)*y(k,29) + rxt(k,185)*y(k,60) + mat(k,1331) = mat(k,1331) + rxt(k,189)*y(k,34) + rxt(k,200)*y(k,106) + mat(k,652) = rxt(k,275)*y(k,106) + mat(k,139) = .500_r8*rxt(k,384)*y(k,106) + mat(k,598) = rxt(k,298)*y(k,106) + mat(k,369) = rxt(k,299)*y(k,106) + mat(k,1050) = mat(k,1050) + rxt(k,140)*y(k,101) + mat(k,322) = rxt(k,185)*y(k,39) + rxt(k,136)*y(k,100) + rxt(k,145)*y(k,106) + mat(k,617) = rxt(k,313)*y(k,106) + mat(k,486) = .370_r8*rxt(k,355)*y(k,102) + mat(k,408) = mat(k,408) + .794_r8*rxt(k,348)*y(k,91) + .794_r8*rxt(k,349) & + *y(k,93) + mat(k,661) = .140_r8*rxt(k,330)*y(k,102) + mat(k,167) = .200_r8*rxt(k,332)*y(k,106) + mat(k,309) = .500_r8*rxt(k,339)*y(k,106) + mat(k,755) = .280_r8*rxt(k,340)*y(k,102) + mat(k,1135) = mat(k,1135) + rxt(k,268)*y(k,34) + .794_r8*rxt(k,348)*y(k,75) & + + rxt(k,281)*y(k,128) + rxt(k,308)*y(k,129) + .250_r8*rxt(k,295) & + *y(k,133) + .920_r8*rxt(k,353)*y(k,135) + .470_r8*rxt(k,328) & + *y(k,136) + rxt(k,316)*y(k,149) + rxt(k,363)*y(k,151) + mat(k,1029) = mat(k,1029) + rxt(k,262)*y(k,25) + .794_r8*rxt(k,349)*y(k,75) & + + rxt(k,166)*y(k,106) + rxt(k,358)*y(k,107) + rxt(k,354) & + *y(k,135) + .470_r8*rxt(k,327)*y(k,136) + rxt(k,364)*y(k,151) + mat(k,1483) = mat(k,1483) + rxt(k,263)*y(k,25) + rxt(k,136)*y(k,60) + mat(k,918) = rxt(k,140)*y(k,57) + rxt(k,297)*y(k,132) + mat(k,1552) = mat(k,1552) + .130_r8*rxt(k,277)*y(k,9) + .280_r8*rxt(k,305) & + *y(k,13) + .370_r8*rxt(k,355)*y(k,74) + .140_r8*rxt(k,330) & + *y(k,77) + .280_r8*rxt(k,340)*y(k,80) + rxt(k,148)*y(k,106) + mat(k,1266) = mat(k,1266) + rxt(k,230)*y(k,6) + rxt(k,282)*y(k,10) & + + rxt(k,248)*y(k,26) + rxt(k,251)*y(k,29) + rxt(k,269)*y(k,35) & + + rxt(k,200)*y(k,42) + rxt(k,275)*y(k,45) + .500_r8*rxt(k,384) & + *y(k,49) + rxt(k,298)*y(k,55) + rxt(k,299)*y(k,56) + rxt(k,145) & + *y(k,60) + rxt(k,313)*y(k,72) + .200_r8*rxt(k,332)*y(k,78) & + + .500_r8*rxt(k,339)*y(k,79) + rxt(k,166)*y(k,93) + rxt(k,148) & + *y(k,102) + rxt(k,359)*y(k,107) + rxt(k,374)*y(k,116) + mat(k,590) = rxt(k,358)*y(k,93) + rxt(k,359)*y(k,106) + mat(k,551) = rxt(k,374)*y(k,106) + mat(k,431) = mat(k,431) + rxt(k,279)*y(k,34) + rxt(k,281)*y(k,91) & + + 2.400_r8*rxt(k,278)*y(k,128) + mat(k,469) = mat(k,469) + rxt(k,306)*y(k,34) + rxt(k,308)*y(k,91) + mat(k,802) = mat(k,802) + .900_r8*rxt(k,289)*y(k,34) + rxt(k,350)*y(k,135) & + + .470_r8*rxt(k,324)*y(k,136) + rxt(k,360)*y(k,151) + mat(k,230) = rxt(k,297)*y(k,101) + mat(k,398) = mat(k,398) + .250_r8*rxt(k,295)*y(k,91) + mat(k,713) = mat(k,713) + rxt(k,351)*y(k,34) + .920_r8*rxt(k,353)*y(k,91) & + + rxt(k,354)*y(k,93) + rxt(k,350)*y(k,130) + mat(k,735) = mat(k,735) + .730_r8*rxt(k,325)*y(k,34) + .470_r8*rxt(k,328) & + *y(k,91) + .470_r8*rxt(k,327)*y(k,93) + .470_r8*rxt(k,324) & + *y(k,130) + mat(k,773) = mat(k,773) + rxt(k,334)*y(k,34) + mat(k,1177) = rxt(k,273)*y(k,37) + mat(k,418) = mat(k,418) + rxt(k,316)*y(k,91) + mat(k,610) = mat(k,610) + .300_r8*rxt(k,318)*y(k,34) + mat(k,680) = mat(k,680) + .800_r8*rxt(k,361)*y(k,34) + rxt(k,363)*y(k,91) & + + rxt(k,364)*y(k,93) + rxt(k,360)*y(k,130) end do end subroutine nlnmat06 subroutine nlnmat07( avec_len, mat, y, rxt ) @@ -1400,403 +1546,237 @@ subroutine nlnmat07( avec_len, mat, y, rxt ) ! ... complete matrix entries implicit species !---------------------------------------------- do k = 1,avec_len - mat(k,584) = -(rxt(k,358)*y(k,99) + rxt(k,359)*y(k,111)) - mat(k,1214) = -rxt(k,358)*y(k,112) - mat(k,1381) = -rxt(k,359)*y(k,112) - mat(k,412) = .794_r8*rxt(k,348)*y(k,97) + .794_r8*rxt(k,349)*y(k,99) & - + .794_r8*rxt(k,347)*y(k,139) - mat(k,695) = .080_r8*rxt(k,353)*y(k,97) - mat(k,720) = .800_r8*rxt(k,329)*y(k,97) - mat(k,1478) = .794_r8*rxt(k,348)*y(k,80) + .080_r8*rxt(k,353)*y(k,81) & - + .800_r8*rxt(k,329)*y(k,84) - mat(k,1214) = mat(k,1214) + .794_r8*rxt(k,349)*y(k,80) - mat(k,1058) = .794_r8*rxt(k,347)*y(k,80) - mat(k,274) = -(rxt(k,300)*y(k,111)) - mat(k,1358) = -rxt(k,300)*y(k,113) - mat(k,779) = rxt(k,302)*y(k,98) - mat(k,977) = rxt(k,302)*y(k,32) - mat(k,401) = -(rxt(k,315)*y(k,139) + rxt(k,316)*y(k,97)) - mat(k,1052) = -rxt(k,315)*y(k,114) - mat(k,1470) = -rxt(k,316)*y(k,114) - mat(k,621) = rxt(k,322)*y(k,111) - mat(k,1371) = rxt(k,322)*y(k,14) + .500_r8*rxt(k,317)*y(k,117) - mat(k,287) = .500_r8*rxt(k,317)*y(k,111) - mat(k,286) = -(rxt(k,317)*y(k,111)) - mat(k,1360) = -rxt(k,317)*y(k,117) - mat(k,400) = rxt(k,315)*y(k,139) - mat(k,1045) = rxt(k,315)*y(k,114) - mat(k,595) = -(rxt(k,318)*y(k,37) + rxt(k,319)*y(k,139) + rxt(k,320)*y(k,97)) - mat(k,1172) = -rxt(k,318)*y(k,118) - mat(k,1059) = -rxt(k,319)*y(k,118) - mat(k,1479) = -rxt(k,320)*y(k,118) - mat(k,395) = rxt(k,323)*y(k,111) - mat(k,1382) = rxt(k,323)*y(k,33) + rxt(k,321)*y(k,119) - mat(k,216) = rxt(k,321)*y(k,111) - mat(k,215) = -(rxt(k,321)*y(k,111)) - mat(k,1352) = -rxt(k,321)*y(k,119) - mat(k,593) = .850_r8*rxt(k,319)*y(k,139) - mat(k,1041) = .850_r8*rxt(k,319)*y(k,118) - mat(k,358) = -(rxt(k,373)*y(k,107) + rxt(k,375)*y(k,108) + rxt(k,378) & - *y(k,111)) - mat(k,895) = -rxt(k,373)*y(k,120) - mat(k,1099) = -rxt(k,375)*y(k,120) - mat(k,1367) = -rxt(k,378)*y(k,120) - mat(k,841) = -(rxt(k,376)*y(k,6) + rxt(k,377)*y(k,45) + rxt(k,379)*y(k,98) & - + rxt(k,380)*y(k,107) + rxt(k,381)*y(k,108) + rxt(k,382) & - *y(k,109) + rxt(k,383)*y(k,111)) - mat(k,928) = -rxt(k,376)*y(k,122) - mat(k,954) = -rxt(k,377)*y(k,122) - mat(k,990) = -rxt(k,379)*y(k,122) - mat(k,907) = -rxt(k,380)*y(k,122) - mat(k,1120) = -rxt(k,381)*y(k,122) - mat(k,175) = -rxt(k,382)*y(k,122) - mat(k,1398) = -rxt(k,383)*y(k,122) - mat(k,1443) = rxt(k,371)*y(k,110) - mat(k,907) = mat(k,907) + rxt(k,373)*y(k,120) - mat(k,1120) = mat(k,1120) + rxt(k,375)*y(k,120) - mat(k,185) = rxt(k,371)*y(k,106) - mat(k,1398) = mat(k,1398) + rxt(k,378)*y(k,120) - mat(k,359) = rxt(k,373)*y(k,107) + rxt(k,375)*y(k,108) + rxt(k,378)*y(k,111) - mat(k,548) = -(rxt(k,374)*y(k,111)) - mat(k,1378) = -rxt(k,374)*y(k,123) - mat(k,927) = rxt(k,376)*y(k,122) - mat(k,952) = rxt(k,377)*y(k,122) - mat(k,136) = rxt(k,369)*y(k,99) + (rxt(k,370)+.500_r8*rxt(k,384))*y(k,111) - mat(k,981) = rxt(k,379)*y(k,122) - mat(k,1213) = rxt(k,369)*y(k,52) - mat(k,902) = rxt(k,380)*y(k,122) - mat(k,1103) = rxt(k,381)*y(k,122) - mat(k,174) = rxt(k,382)*y(k,122) - mat(k,183) = rxt(k,372)*y(k,111) - mat(k,1378) = mat(k,1378) + (rxt(k,370)+.500_r8*rxt(k,384))*y(k,52) & - + rxt(k,372)*y(k,110) + rxt(k,383)*y(k,122) - mat(k,840) = rxt(k,376)*y(k,6) + rxt(k,377)*y(k,45) + rxt(k,379)*y(k,98) & - + rxt(k,380)*y(k,107) + rxt(k,381)*y(k,108) + rxt(k,382) & - *y(k,109) + rxt(k,383)*y(k,111) - mat(k,131) = -(rxt(k,385)*y(k,151)) - mat(k,1559) = -rxt(k,385)*y(k,124) - mat(k,1340) = rxt(k,374)*y(k,123) - mat(k,547) = rxt(k,374)*y(k,111) - mat(k,343) = -(rxt(k,366)*y(k,99) + rxt(k,367)*y(k,108) + rxt(k,368)*y(k,111)) - mat(k,1208) = -rxt(k,366)*y(k,133) - mat(k,1097) = -rxt(k,367)*y(k,133) - mat(k,1365) = -rxt(k,368)*y(k,133) - mat(k,671) = -(rxt(k,360)*y(k,32) + rxt(k,361)*y(k,37) + rxt(k,362)*y(k,139) & - + rxt(k,363)*y(k,97) + rxt(k,364)*y(k,99)) - mat(k,787) = -rxt(k,360)*y(k,134) - mat(k,1178) = -rxt(k,361)*y(k,134) - mat(k,1065) = -rxt(k,362)*y(k,134) - mat(k,1485) = -rxt(k,363)*y(k,134) - mat(k,1222) = -rxt(k,364)*y(k,134) - mat(k,179) = rxt(k,345)*y(k,111) - mat(k,268) = .800_r8*rxt(k,357)*y(k,111) - mat(k,1389) = rxt(k,345)*y(k,78) + .800_r8*rxt(k,357)*y(k,82) & - + .500_r8*rxt(k,365)*y(k,135) - mat(k,99) = .500_r8*rxt(k,365)*y(k,111) - mat(k,98) = -(rxt(k,365)*y(k,111)) - mat(k,1334) = -rxt(k,365)*y(k,135) - mat(k,665) = rxt(k,362)*y(k,139) - mat(k,1036) = rxt(k,362)*y(k,134) - mat(k,526) = -(rxt(k,414)*y(k,142) + rxt(k,415)*y(k,147) + rxt(k,416) & - *y(k,141)) - mat(k,371) = -rxt(k,414)*y(k,138) - mat(k,512) = -rxt(k,415)*y(k,138) - mat(k,338) = -rxt(k,416)*y(k,138) - mat(k,1081) = -((rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,62) + rxt(k,141) & - *y(k,106) + rxt(k,142)*y(k,108) + rxt(k,146)*y(k,111) & - + 4._r8*rxt(k,151)*y(k,139) + rxt(k,163)*y(k,99) + rxt(k,168) & - *y(k,97) + rxt(k,173)*y(k,98) + (rxt(k,186) + rxt(k,187) & - ) * y(k,42) + rxt(k,193)*y(k,45) + rxt(k,219)*y(k,4) + rxt(k,225) & - *y(k,6) + rxt(k,267)*y(k,37) + rxt(k,280)*y(k,10) + rxt(k,290) & - *y(k,32) + rxt(k,294)*y(k,57) + rxt(k,307)*y(k,15) + rxt(k,315) & - *y(k,114) + rxt(k,319)*y(k,118) + rxt(k,326)*y(k,84) + rxt(k,335) & - *y(k,86) + rxt(k,347)*y(k,80) + rxt(k,352)*y(k,81) + rxt(k,362) & - *y(k,134)) - mat(k,1545) = -(rxt(k,137) + rxt(k,138) + rxt(k,139)) * y(k,139) - mat(k,1451) = -rxt(k,141)*y(k,139) - mat(k,1127) = -rxt(k,142)*y(k,139) - mat(k,1406) = -rxt(k,146)*y(k,139) - mat(k,1237) = -rxt(k,163)*y(k,139) - mat(k,1499) = -rxt(k,168)*y(k,139) - mat(k,998) = -rxt(k,173)*y(k,139) - mat(k,1317) = -(rxt(k,186) + rxt(k,187)) * y(k,139) - mat(k,962) = -rxt(k,193)*y(k,139) - mat(k,881) = -rxt(k,219)*y(k,139) - mat(k,936) = -rxt(k,225)*y(k,139) - mat(k,1191) = -rxt(k,267)*y(k,139) - mat(k,429) = -rxt(k,280)*y(k,139) - mat(k,798) = -rxt(k,290)*y(k,139) - mat(k,382) = -rxt(k,294)*y(k,139) - mat(k,467) = -rxt(k,307)*y(k,139) - mat(k,407) = -rxt(k,315)*y(k,139) - mat(k,601) = -rxt(k,319)*y(k,139) - mat(k,732) = -rxt(k,326)*y(k,139) - mat(k,770) = -rxt(k,335)*y(k,139) - mat(k,417) = -rxt(k,347)*y(k,139) - mat(k,710) = -rxt(k,352)*y(k,139) - mat(k,677) = -rxt(k,362)*y(k,139) - mat(k,881) = mat(k,881) + rxt(k,218)*y(k,27) - mat(k,936) = mat(k,936) + rxt(k,230)*y(k,111) - mat(k,243) = .130_r8*rxt(k,277)*y(k,108) - mat(k,429) = mat(k,429) + 2.400_r8*rxt(k,278)*y(k,10) + rxt(k,279)*y(k,37) & - + rxt(k,281)*y(k,97) - mat(k,128) = rxt(k,282)*y(k,111) - mat(k,632) = .280_r8*rxt(k,305)*y(k,108) - mat(k,467) = mat(k,467) + rxt(k,306)*y(k,37) + rxt(k,308)*y(k,97) - mat(k,1022) = rxt(k,218)*y(k,4) + rxt(k,182)*y(k,42) + rxt(k,262)*y(k,99) & - + rxt(k,263)*y(k,106) - mat(k,328) = rxt(k,247)*y(k,42) + rxt(k,248)*y(k,111) - mat(k,192) = rxt(k,250)*y(k,42) + rxt(k,251)*y(k,111) - mat(k,798) = mat(k,798) + .900_r8*rxt(k,289)*y(k,37) + rxt(k,350)*y(k,81) & - + .470_r8*rxt(k,324)*y(k,84) + rxt(k,360)*y(k,134) - mat(k,1191) = mat(k,1191) + rxt(k,279)*y(k,10) + rxt(k,306)*y(k,15) & - + .900_r8*rxt(k,289)*y(k,32) + 4.000_r8*rxt(k,265)*y(k,37) & - + rxt(k,189)*y(k,45) + rxt(k,351)*y(k,81) + .730_r8*rxt(k,325) & - *y(k,84) + rxt(k,334)*y(k,86) + rxt(k,268)*y(k,97) & - + .300_r8*rxt(k,318)*y(k,118) + .800_r8*rxt(k,361)*y(k,134) - mat(k,284) = rxt(k,269)*y(k,111) - mat(k,1524) = rxt(k,273)*y(k,144) - mat(k,1317) = mat(k,1317) + rxt(k,182)*y(k,27) + rxt(k,247)*y(k,28) & - + rxt(k,250)*y(k,31) + rxt(k,185)*y(k,65) - mat(k,962) = mat(k,962) + rxt(k,189)*y(k,37) + rxt(k,200)*y(k,111) - mat(k,651) = rxt(k,275)*y(k,111) - mat(k,137) = .500_r8*rxt(k,384)*y(k,111) - mat(k,231) = rxt(k,297)*y(k,107) - mat(k,382) = mat(k,382) + .250_r8*rxt(k,295)*y(k,97) - mat(k,611) = rxt(k,298)*y(k,111) - mat(k,368) = rxt(k,299)*y(k,111) - mat(k,1545) = mat(k,1545) + rxt(k,140)*y(k,107) - mat(k,313) = rxt(k,185)*y(k,42) + rxt(k,136)*y(k,106) + rxt(k,145)*y(k,111) - mat(k,617) = rxt(k,313)*y(k,111) - mat(k,483) = .370_r8*rxt(k,355)*y(k,108) - mat(k,417) = mat(k,417) + .794_r8*rxt(k,348)*y(k,97) + .794_r8*rxt(k,349) & - *y(k,99) - mat(k,710) = mat(k,710) + rxt(k,350)*y(k,32) + rxt(k,351)*y(k,37) & - + .920_r8*rxt(k,353)*y(k,97) + rxt(k,354)*y(k,99) - mat(k,661) = .140_r8*rxt(k,330)*y(k,108) - mat(k,732) = mat(k,732) + .470_r8*rxt(k,324)*y(k,32) + .730_r8*rxt(k,325) & - *y(k,37) + .470_r8*rxt(k,328)*y(k,97) + .470_r8*rxt(k,327) & - *y(k,99) - mat(k,166) = .200_r8*rxt(k,332)*y(k,111) - mat(k,770) = mat(k,770) + rxt(k,334)*y(k,37) - mat(k,308) = .500_r8*rxt(k,339)*y(k,111) - mat(k,751) = .280_r8*rxt(k,340)*y(k,108) - mat(k,1499) = mat(k,1499) + rxt(k,281)*y(k,10) + rxt(k,308)*y(k,15) & - + rxt(k,268)*y(k,37) + .250_r8*rxt(k,295)*y(k,57) & - + .794_r8*rxt(k,348)*y(k,80) + .920_r8*rxt(k,353)*y(k,81) & - + .470_r8*rxt(k,328)*y(k,84) + rxt(k,316)*y(k,114) + rxt(k,363) & + mat(k,702) = -(rxt(k,350)*y(k,130) + rxt(k,351)*y(k,34) + rxt(k,352)*y(k,134) & + + rxt(k,353)*y(k,91) + rxt(k,354)*y(k,93)) + mat(k,789) = -rxt(k,350)*y(k,135) + mat(k,965) = -rxt(k,351)*y(k,135) + mat(k,1393) = -rxt(k,352)*y(k,135) + mat(k,1116) = -rxt(k,353)*y(k,135) + mat(k,1009) = -rxt(k,354)*y(k,135) + mat(k,478) = rxt(k,356)*y(k,106) + mat(k,297) = .200_r8*rxt(k,357)*y(k,106) + mat(k,1009) = mat(k,1009) + 1.700_r8*rxt(k,366)*y(k,126) + mat(k,1244) = rxt(k,356)*y(k,74) + .200_r8*rxt(k,357)*y(k,76) & + + 1.640_r8*rxt(k,368)*y(k,126) + mat(k,346) = 1.700_r8*rxt(k,366)*y(k,93) + 1.640_r8*rxt(k,368)*y(k,106) + mat(k,726) = -(rxt(k,324)*y(k,130) + rxt(k,325)*y(k,34) + rxt(k,326)*y(k,134) & + + rxt(k,327)*y(k,93) + (rxt(k,328) + rxt(k,329)) * y(k,91)) + mat(k,790) = -rxt(k,324)*y(k,136) + mat(k,966) = -rxt(k,325)*y(k,136) + mat(k,1394) = -rxt(k,326)*y(k,136) + mat(k,1010) = -rxt(k,327)*y(k,136) + mat(k,1117) = -(rxt(k,328) + rxt(k,329)) * y(k,136) + mat(k,656) = .500_r8*rxt(k,331)*y(k,106) + mat(k,164) = .200_r8*rxt(k,332)*y(k,106) + mat(k,743) = rxt(k,341)*y(k,106) + mat(k,1245) = .500_r8*rxt(k,331)*y(k,77) + .200_r8*rxt(k,332)*y(k,78) & + + rxt(k,341)*y(k,80) + mat(k,765) = -(rxt(k,333)*y(k,130) + rxt(k,334)*y(k,34) + rxt(k,335)*y(k,134) & + + 4._r8*rxt(k,336)*y(k,137) + rxt(k,337)*y(k,91) + rxt(k,338) & + *y(k,93) + rxt(k,342)*y(k,92)) + mat(k,792) = -rxt(k,333)*y(k,137) + mat(k,968) = -rxt(k,334)*y(k,137) + mat(k,1396) = -rxt(k,335)*y(k,137) + mat(k,1119) = -rxt(k,337)*y(k,137) + mat(k,1012) = -rxt(k,338)*y(k,137) + mat(k,1069) = -rxt(k,342)*y(k,137) + mat(k,657) = .500_r8*rxt(k,331)*y(k,106) + mat(k,165) = .500_r8*rxt(k,332)*y(k,106) + mat(k,1247) = .500_r8*rxt(k,331)*y(k,77) + .500_r8*rxt(k,332)*y(k,78) + mat(k,539) = -(rxt(k,154)*y(k,91) + rxt(k,155)*y(k,100) + rxt(k,178)*y(k,131) & + + rxt(k,179)*y(k,101) + rxt(k,428)*y(k,146)) + mat(k,1105) = -rxt(k,154)*y(k,138) + mat(k,1461) = -rxt(k,155)*y(k,138) + mat(k,527) = -rxt(k,178)*y(k,138) + mat(k,901) = -rxt(k,179)*y(k,138) + mat(k,504) = -rxt(k,428)*y(k,138) + mat(k,1461) = mat(k,1461) + rxt(k,418)*y(k,139) + mat(k,527) = mat(k,527) + .900_r8*rxt(k,416)*y(k,139) + .800_r8*rxt(k,414) & + *y(k,140) + mat(k,339) = rxt(k,418)*y(k,100) + .900_r8*rxt(k,416)*y(k,131) + mat(k,372) = .800_r8*rxt(k,414)*y(k,131) + mat(k,334) = -(rxt(k,416)*y(k,131) + rxt(k,417)*y(k,101) + (rxt(k,418) & + + rxt(k,419)) * y(k,100)) + mat(k,521) = -rxt(k,416)*y(k,139) + mat(k,894) = -rxt(k,417)*y(k,139) + mat(k,1451) = -(rxt(k,418) + rxt(k,419)) * y(k,139) + mat(k,370) = -(rxt(k,414)*y(k,131)) + mat(k,522) = -rxt(k,414)*y(k,140) + mat(k,567) = rxt(k,423)*y(k,145) + mat(k,1096) = rxt(k,425)*y(k,145) + mat(k,1453) = rxt(k,418)*y(k,139) + mat(k,896) = rxt(k,422)*y(k,141) + mat(k,335) = rxt(k,418)*y(k,100) + mat(k,441) = rxt(k,422)*y(k,101) + mat(k,510) = rxt(k,423)*y(k,81) + rxt(k,425)*y(k,91) + mat(k,442) = -(rxt(k,420)*y(k,100) + (rxt(k,421) + rxt(k,422)) * y(k,101)) + mat(k,1456) = -rxt(k,420)*y(k,141) + mat(k,897) = -(rxt(k,421) + rxt(k,422)) * y(k,141) + mat(k,535) = rxt(k,428)*y(k,146) + mat(k,500) = rxt(k,428)*y(k,138) + mat(k,1172) = -(rxt(k,117)*y(k,58) + rxt(k,118)*y(k,152) + (rxt(k,120) & + + rxt(k,121)) * y(k,101) + (rxt(k,122) + rxt(k,123)) * y(k,102) & + + (rxt(k,171) + rxt(k,172)) * y(k,82) + rxt(k,207)*y(k,16) & + + rxt(k,208)*y(k,17) + rxt(k,209)*y(k,19) + rxt(k,210)*y(k,20) & + + rxt(k,211)*y(k,21) + rxt(k,212)*y(k,22) + rxt(k,213)*y(k,23) & + + (rxt(k,214) + rxt(k,215)) * y(k,66) + rxt(k,234)*y(k,18) & + + rxt(k,235)*y(k,38) + rxt(k,236)*y(k,59) + (rxt(k,237) & + + rxt(k,238)) * y(k,62) + rxt(k,243)*y(k,47) + rxt(k,244) & + *y(k,48) + rxt(k,257)*y(k,24) + rxt(k,258)*y(k,26) + rxt(k,259) & + *y(k,63) + rxt(k,260)*y(k,64) + rxt(k,261)*y(k,65) + (rxt(k,272) & + + rxt(k,273) + rxt(k,274)) * y(k,37)) + mat(k,832) = -rxt(k,117)*y(k,142) + mat(k,1574) = -rxt(k,118)*y(k,142) + mat(k,913) = -(rxt(k,120) + rxt(k,121)) * y(k,142) + mat(k,1547) = -(rxt(k,122) + rxt(k,123)) * y(k,142) + mat(k,125) = -(rxt(k,171) + rxt(k,172)) * y(k,142) + mat(k,40) = -rxt(k,207)*y(k,142) + mat(k,75) = -rxt(k,208)*y(k,142) + mat(k,52) = -rxt(k,209)*y(k,142) + mat(k,85) = -rxt(k,210)*y(k,142) + mat(k,56) = -rxt(k,211)*y(k,142) + mat(k,90) = -rxt(k,212)*y(k,142) + mat(k,60) = -rxt(k,213)*y(k,142) + mat(k,865) = -(rxt(k,214) + rxt(k,215)) * y(k,142) + mat(k,81) = -rxt(k,234)*y(k,142) + mat(k,224) = -rxt(k,235)*y(k,142) + mat(k,45) = -rxt(k,236)*y(k,142) + mat(k,453) = -(rxt(k,237) + rxt(k,238)) * y(k,142) + mat(k,121) = -rxt(k,243)*y(k,142) + mat(k,112) = -rxt(k,244)*y(k,142) + mat(k,249) = -rxt(k,257)*y(k,142) + mat(k,329) = -rxt(k,258)*y(k,142) + mat(k,107) = -rxt(k,259)*y(k,142) + mat(k,116) = -rxt(k,260)*y(k,142) + mat(k,144) = -rxt(k,261)*y(k,142) + mat(k,937) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,142) + mat(k,913) = mat(k,913) + rxt(k,179)*y(k,138) + mat(k,533) = .850_r8*rxt(k,415)*y(k,145) + mat(k,545) = rxt(k,179)*y(k,101) + mat(k,517) = .850_r8*rxt(k,415)*y(k,131) + mat(k,94) = -(rxt(k,125)*y(k,100) + rxt(k,126)*y(k,101)) + mat(k,1444) = -rxt(k,125)*y(k,143) + mat(k,889) = -rxt(k,126)*y(k,143) + mat(k,807) = rxt(k,127)*y(k,144) + mat(k,1444) = mat(k,1444) + rxt(k,129)*y(k,144) + mat(k,889) = mat(k,889) + rxt(k,130)*y(k,144) + mat(k,1512) = rxt(k,131)*y(k,144) + mat(k,96) = rxt(k,127)*y(k,46) + rxt(k,129)*y(k,100) + rxt(k,130)*y(k,101) & + + rxt(k,131)*y(k,102) + mat(k,97) = -(rxt(k,127)*y(k,46) + rxt(k,129)*y(k,100) + rxt(k,130)*y(k,101) & + + rxt(k,131)*y(k,102)) + mat(k,808) = -rxt(k,127)*y(k,144) + mat(k,1445) = -rxt(k,129)*y(k,144) + mat(k,890) = -rxt(k,130)*y(k,144) + mat(k,1513) = -rxt(k,131)*y(k,144) + mat(k,890) = mat(k,890) + rxt(k,120)*y(k,142) + mat(k,1150) = rxt(k,120)*y(k,101) + mat(k,511) = -(rxt(k,415)*y(k,131) + rxt(k,423)*y(k,81) + rxt(k,425)*y(k,91)) + mat(k,525) = -rxt(k,415)*y(k,145) + mat(k,570) = -rxt(k,423)*y(k,145) + mat(k,1103) = -rxt(k,425)*y(k,145) + mat(k,810) = rxt(k,426)*y(k,146) + mat(k,899) = rxt(k,417)*y(k,139) + rxt(k,421)*y(k,141) + rxt(k,429)*y(k,146) & + + rxt(k,433)*y(k,147) + mat(k,337) = rxt(k,417)*y(k,101) + mat(k,444) = rxt(k,421)*y(k,101) + mat(k,502) = rxt(k,426)*y(k,46) + rxt(k,429)*y(k,101) + mat(k,263) = rxt(k,433)*y(k,101) + mat(k,501) = -(rxt(k,426)*y(k,46) + rxt(k,428)*y(k,138) + rxt(k,429)*y(k,101)) + mat(k,809) = -rxt(k,426)*y(k,146) + mat(k,536) = -rxt(k,428)*y(k,146) + mat(k,898) = -rxt(k,429)*y(k,146) + mat(k,1458) = rxt(k,419)*y(k,139) + rxt(k,420)*y(k,141) + rxt(k,432)*y(k,147) & + + rxt(k,438)*y(k,148) + mat(k,524) = rxt(k,430)*y(k,147) + rxt(k,435)*y(k,148) + mat(k,336) = rxt(k,419)*y(k,100) + mat(k,443) = rxt(k,420)*y(k,100) + mat(k,262) = rxt(k,432)*y(k,100) + rxt(k,430)*y(k,131) + mat(k,257) = rxt(k,438)*y(k,100) + rxt(k,435)*y(k,131) + mat(k,260) = -(rxt(k,430)*y(k,131) + rxt(k,432)*y(k,100) + rxt(k,433) & + *y(k,101)) + mat(k,520) = -rxt(k,430)*y(k,147) + mat(k,1448) = -rxt(k,432)*y(k,147) + mat(k,893) = -rxt(k,433)*y(k,147) + mat(k,520) = mat(k,520) + rxt(k,434)*y(k,148) + mat(k,254) = rxt(k,434)*y(k,131) + mat(k,253) = -((rxt(k,434) + rxt(k,435)) * y(k,131) + rxt(k,438)*y(k,100)) + mat(k,519) = -(rxt(k,434) + rxt(k,435)) * y(k,148) + mat(k,1447) = -rxt(k,438)*y(k,148) + mat(k,411) = -(rxt(k,315)*y(k,134) + rxt(k,316)*y(k,91)) + mat(k,1379) = -rxt(k,315)*y(k,149) + mat(k,1100) = -rxt(k,316)*y(k,149) + mat(k,621) = rxt(k,322)*y(k,106) + mat(k,1224) = rxt(k,322)*y(k,13) + .500_r8*rxt(k,317)*y(k,111) + mat(k,287) = .500_r8*rxt(k,317)*y(k,106) + mat(k,602) = -(rxt(k,318)*y(k,34) + rxt(k,319)*y(k,134) + rxt(k,320)*y(k,91)) + mat(k,958) = -rxt(k,318)*y(k,150) + mat(k,1386) = -rxt(k,319)*y(k,150) + mat(k,1109) = -rxt(k,320)*y(k,150) + mat(k,376) = rxt(k,323)*y(k,106) + mat(k,1236) = rxt(k,323)*y(k,30) + rxt(k,321)*y(k,112) + mat(k,210) = rxt(k,321)*y(k,106) + mat(k,671) = -(rxt(k,360)*y(k,130) + rxt(k,361)*y(k,34) + rxt(k,362)*y(k,134) & + + rxt(k,363)*y(k,91) + rxt(k,364)*y(k,93)) + mat(k,787) = -rxt(k,360)*y(k,151) + mat(k,963) = -rxt(k,361)*y(k,151) + mat(k,1391) = -rxt(k,362)*y(k,151) + mat(k,1114) = -rxt(k,363)*y(k,151) + mat(k,1007) = -rxt(k,364)*y(k,151) + mat(k,179) = rxt(k,345)*y(k,106) + mat(k,296) = .800_r8*rxt(k,357)*y(k,106) + mat(k,1242) = rxt(k,345)*y(k,73) + .800_r8*rxt(k,357)*y(k,76) & + + .500_r8*rxt(k,365)*y(k,127) + mat(k,100) = .500_r8*rxt(k,365)*y(k,106) + mat(k,1584) = -(rxt(k,118)*y(k,142) + rxt(k,241)*y(k,54) + rxt(k,385) & + *y(k,117)) + mat(k,1182) = -rxt(k,118)*y(k,152) + mat(k,498) = -rxt(k,241)*y(k,152) + mat(k,134) = -rxt(k,385)*y(k,152) + mat(k,162) = rxt(k,285)*y(k,106) + mat(k,208) = rxt(k,309)*y(k,106) + mat(k,49) = rxt(k,310)*y(k,106) + mat(k,252) = rxt(k,246)*y(k,106) + mat(k,1443) = rxt(k,264)*y(k,106) + mat(k,333) = rxt(k,248)*y(k,106) + mat(k,65) = rxt(k,249)*y(k,106) + mat(k,648) = rxt(k,287)*y(k,106) + mat(k,188) = rxt(k,251)*y(k,106) + mat(k,380) = rxt(k,323)*y(k,106) + mat(k,690) = rxt(k,312)*y(k,106) + mat(k,357) = rxt(k,292)*y(k,106) + mat(k,317) = rxt(k,293)*y(k,106) + mat(k,220) = rxt(k,270)*y(k,106) + mat(k,947) = rxt(k,271)*y(k,106) + mat(k,1055) = rxt(k,139)*y(k,134) + mat(k,837) = rxt(k,144)*y(k,106) + mat(k,324) = rxt(k,145)*y(k,106) + mat(k,457) = rxt(k,232)*y(k,106) + mat(k,147) = rxt(k,256)*y(k,106) + mat(k,872) = (rxt(k,402)+rxt(k,407))*y(k,70) + (rxt(k,395)+rxt(k,401) & + +rxt(k,406))*y(k,71) + rxt(k,203)*y(k,106) + mat(k,1511) = rxt(k,176)*y(k,106) + mat(k,245) = rxt(k,153)*y(k,106) + mat(k,389) = (rxt(k,402)+rxt(k,407))*y(k,66) + mat(k,440) = (rxt(k,395)+rxt(k,401)+rxt(k,406))*y(k,66) + rxt(k,206)*y(k,106) + mat(k,664) = .500_r8*rxt(k,331)*y(k,106) + mat(k,38) = rxt(k,386)*y(k,106) + mat(k,1271) = rxt(k,285)*y(k,12) + rxt(k,309)*y(k,14) + rxt(k,310)*y(k,15) & + + rxt(k,246)*y(k,24) + rxt(k,264)*y(k,25) + rxt(k,248)*y(k,26) & + + rxt(k,249)*y(k,27) + rxt(k,287)*y(k,28) + rxt(k,251)*y(k,29) & + + rxt(k,323)*y(k,30) + rxt(k,312)*y(k,31) + rxt(k,292)*y(k,32) & + + rxt(k,293)*y(k,33) + rxt(k,270)*y(k,36) + rxt(k,271)*y(k,37) & + + rxt(k,144)*y(k,58) + rxt(k,145)*y(k,60) + rxt(k,232)*y(k,62) & + + rxt(k,256)*y(k,65) + rxt(k,203)*y(k,66) + rxt(k,176)*y(k,68) & + + rxt(k,153)*y(k,69) + rxt(k,206)*y(k,71) + .500_r8*rxt(k,331) & + *y(k,77) + rxt(k,386)*y(k,88) + 2.000_r8*rxt(k,149)*y(k,106) & + + rxt(k,317)*y(k,111) + rxt(k,321)*y(k,112) + rxt(k,146) & *y(k,134) - mat(k,1237) = mat(k,1237) + rxt(k,262)*y(k,27) + .794_r8*rxt(k,349)*y(k,80) & - + rxt(k,354)*y(k,81) + .470_r8*rxt(k,327)*y(k,84) + rxt(k,166) & - *y(k,111) + rxt(k,358)*y(k,112) + rxt(k,364)*y(k,134) - mat(k,1451) = mat(k,1451) + rxt(k,263)*y(k,27) + rxt(k,136)*y(k,65) - mat(k,914) = rxt(k,297)*y(k,56) + rxt(k,140)*y(k,62) - mat(k,1127) = mat(k,1127) + .130_r8*rxt(k,277)*y(k,9) + .280_r8*rxt(k,305) & - *y(k,14) + .370_r8*rxt(k,355)*y(k,79) + .140_r8*rxt(k,330) & - *y(k,83) + .280_r8*rxt(k,340)*y(k,88) + rxt(k,148)*y(k,111) - mat(k,1406) = mat(k,1406) + rxt(k,230)*y(k,6) + rxt(k,282)*y(k,11) & - + rxt(k,248)*y(k,28) + rxt(k,251)*y(k,31) + rxt(k,269)*y(k,38) & - + rxt(k,200)*y(k,45) + rxt(k,275)*y(k,48) + .500_r8*rxt(k,384) & - *y(k,52) + rxt(k,298)*y(k,60) + rxt(k,299)*y(k,61) + rxt(k,145) & - *y(k,65) + rxt(k,313)*y(k,77) + .200_r8*rxt(k,332)*y(k,85) & - + .500_r8*rxt(k,339)*y(k,87) + rxt(k,166)*y(k,99) + rxt(k,148) & - *y(k,108) + rxt(k,359)*y(k,112) + rxt(k,374)*y(k,123) - mat(k,589) = rxt(k,358)*y(k,99) + rxt(k,359)*y(k,111) - mat(k,407) = mat(k,407) + rxt(k,316)*y(k,97) - mat(k,601) = mat(k,601) + .300_r8*rxt(k,318)*y(k,37) - mat(k,550) = rxt(k,374)*y(k,111) - mat(k,677) = mat(k,677) + rxt(k,360)*y(k,32) + .800_r8*rxt(k,361)*y(k,37) & - + rxt(k,363)*y(k,97) + rxt(k,364)*y(k,99) - mat(k,1279) = rxt(k,273)*y(k,40) + mat(k,293) = rxt(k,317)*y(k,106) + mat(k,214) = rxt(k,321)*y(k,106) + mat(k,1419) = rxt(k,139)*y(k,57) + rxt(k,146)*y(k,106) end do end subroutine nlnmat07 - subroutine nlnmat08( avec_len, mat, y, rxt ) - use chem_mods, only : gas_pcnst, rxntot, nzcnt - implicit none -!---------------------------------------------- -! ... dummy arguments -!---------------------------------------------- - integer, intent(in) :: avec_len - real(r8), intent(in) :: y(veclen,gas_pcnst) - real(r8), intent(in) :: rxt(veclen,rxntot) - real(r8), intent(inout) :: mat(veclen,nzcnt) -!---------------------------------------------- -! ... local variables -!---------------------------------------------- - integer :: k -!---------------------------------------------- -! ... complete matrix entries implicit species -!---------------------------------------------- - do k = 1,avec_len - mat(k,539) = -(rxt(k,154)*y(k,97) + rxt(k,155)*y(k,106) + rxt(k,178)*y(k,138) & - + rxt(k,179)*y(k,107) + rxt(k,428)*y(k,148)) - mat(k,1476) = -rxt(k,154)*y(k,140) - mat(k,1436) = -rxt(k,155)*y(k,140) - mat(k,527) = -rxt(k,178)*y(k,140) - mat(k,901) = -rxt(k,179)*y(k,140) - mat(k,504) = -rxt(k,428)*y(k,140) - mat(k,1436) = mat(k,1436) + rxt(k,418)*y(k,141) - mat(k,527) = mat(k,527) + .900_r8*rxt(k,416)*y(k,141) + .800_r8*rxt(k,414) & - *y(k,142) - mat(k,339) = rxt(k,418)*y(k,106) + .900_r8*rxt(k,416)*y(k,138) - mat(k,372) = .800_r8*rxt(k,414)*y(k,138) - mat(k,334) = -(rxt(k,416)*y(k,138) + rxt(k,417)*y(k,107) + (rxt(k,418) & - + rxt(k,419)) * y(k,106)) - mat(k,521) = -rxt(k,416)*y(k,141) - mat(k,894) = -rxt(k,417)*y(k,141) - mat(k,1426) = -(rxt(k,418) + rxt(k,419)) * y(k,141) - mat(k,370) = -(rxt(k,414)*y(k,138)) - mat(k,522) = -rxt(k,414)*y(k,142) - mat(k,555) = rxt(k,423)*y(k,147) - mat(k,1467) = rxt(k,425)*y(k,147) - mat(k,1428) = rxt(k,418)*y(k,141) - mat(k,896) = rxt(k,422)*y(k,143) - mat(k,335) = rxt(k,418)*y(k,106) - mat(k,441) = rxt(k,422)*y(k,107) - mat(k,510) = rxt(k,423)*y(k,89) + rxt(k,425)*y(k,97) - mat(k,442) = -(rxt(k,420)*y(k,106) + (rxt(k,421) + rxt(k,422)) * y(k,107)) - mat(k,1431) = -rxt(k,420)*y(k,143) - mat(k,897) = -(rxt(k,421) + rxt(k,422)) * y(k,143) - mat(k,535) = rxt(k,428)*y(k,148) - mat(k,500) = rxt(k,428)*y(k,140) - mat(k,1284) = -(rxt(k,117)*y(k,63) + rxt(k,118)*y(k,151) + (rxt(k,120) & - + rxt(k,121)) * y(k,107) + (rxt(k,122) + rxt(k,123)) * y(k,108) & - + (rxt(k,171) + rxt(k,172)) * y(k,90) + rxt(k,207)*y(k,18) & - + rxt(k,208)*y(k,19) + rxt(k,209)*y(k,21) + rxt(k,210)*y(k,22) & - + rxt(k,211)*y(k,23) + rxt(k,212)*y(k,24) + rxt(k,213)*y(k,25) & - + (rxt(k,214) + rxt(k,215)) * y(k,71) + rxt(k,234)*y(k,20) & - + rxt(k,235)*y(k,41) + rxt(k,236)*y(k,64) + (rxt(k,237) & - + rxt(k,238)) * y(k,67) + rxt(k,243)*y(k,50) + rxt(k,244) & - *y(k,51) + rxt(k,257)*y(k,26) + rxt(k,258)*y(k,28) + rxt(k,259) & - *y(k,68) + rxt(k,260)*y(k,69) + rxt(k,261)*y(k,70) + (rxt(k,272) & - + rxt(k,273) + rxt(k,274)) * y(k,40)) - mat(k,831) = -rxt(k,117)*y(k,144) - mat(k,1577) = -rxt(k,118)*y(k,144) - mat(k,916) = -(rxt(k,120) + rxt(k,121)) * y(k,144) - mat(k,1132) = -(rxt(k,122) + rxt(k,123)) * y(k,144) - mat(k,124) = -(rxt(k,171) + rxt(k,172)) * y(k,144) - mat(k,39) = -rxt(k,207)*y(k,144) - mat(k,74) = -rxt(k,208)*y(k,144) - mat(k,55) = -rxt(k,209)*y(k,144) - mat(k,84) = -rxt(k,210)*y(k,144) - mat(k,59) = -rxt(k,211)*y(k,144) - mat(k,89) = -rxt(k,212)*y(k,144) - mat(k,63) = -rxt(k,213)*y(k,144) - mat(k,867) = -(rxt(k,214) + rxt(k,215)) * y(k,144) - mat(k,80) = -rxt(k,234)*y(k,144) - mat(k,224) = -rxt(k,235)*y(k,144) - mat(k,44) = -rxt(k,236)*y(k,144) - mat(k,436) = -(rxt(k,237) + rxt(k,238)) * y(k,144) - mat(k,103) = -rxt(k,243)*y(k,144) - mat(k,114) = -rxt(k,244)*y(k,144) - mat(k,249) = -rxt(k,257)*y(k,144) - mat(k,330) = -rxt(k,258)*y(k,144) - mat(k,109) = -rxt(k,259)*y(k,144) - mat(k,119) = -rxt(k,260)*y(k,144) - mat(k,144) = -rxt(k,261)*y(k,144) - mat(k,1529) = -(rxt(k,272) + rxt(k,273) + rxt(k,274)) * y(k,144) - mat(k,916) = mat(k,916) + rxt(k,179)*y(k,140) - mat(k,532) = .850_r8*rxt(k,415)*y(k,147) - mat(k,544) = rxt(k,179)*y(k,107) - mat(k,516) = .850_r8*rxt(k,415)*y(k,138) - mat(k,93) = -(rxt(k,125)*y(k,106) + rxt(k,126)*y(k,107)) - mat(k,1419) = -rxt(k,125)*y(k,145) - mat(k,889) = -rxt(k,126)*y(k,145) - mat(k,807) = rxt(k,127)*y(k,146) - mat(k,1419) = mat(k,1419) + rxt(k,129)*y(k,146) - mat(k,889) = mat(k,889) + rxt(k,130)*y(k,146) - mat(k,1094) = rxt(k,131)*y(k,146) - mat(k,95) = rxt(k,127)*y(k,49) + rxt(k,129)*y(k,106) + rxt(k,130)*y(k,107) & - + rxt(k,131)*y(k,108) - mat(k,96) = -(rxt(k,127)*y(k,49) + rxt(k,129)*y(k,106) + rxt(k,130)*y(k,107) & - + rxt(k,131)*y(k,108)) - mat(k,808) = -rxt(k,127)*y(k,146) - mat(k,1420) = -rxt(k,129)*y(k,146) - mat(k,890) = -rxt(k,130)*y(k,146) - mat(k,1095) = -rxt(k,131)*y(k,146) - mat(k,890) = mat(k,890) + rxt(k,120)*y(k,144) - mat(k,1259) = rxt(k,120)*y(k,107) - mat(k,511) = -(rxt(k,415)*y(k,138) + rxt(k,423)*y(k,89) + rxt(k,425)*y(k,97)) - mat(k,525) = -rxt(k,415)*y(k,147) - mat(k,558) = -rxt(k,423)*y(k,147) - mat(k,1474) = -rxt(k,425)*y(k,147) - mat(k,810) = rxt(k,426)*y(k,148) - mat(k,899) = rxt(k,417)*y(k,141) + rxt(k,421)*y(k,143) + rxt(k,429)*y(k,148) & - + rxt(k,433)*y(k,149) - mat(k,337) = rxt(k,417)*y(k,107) - mat(k,444) = rxt(k,421)*y(k,107) - mat(k,502) = rxt(k,426)*y(k,49) + rxt(k,429)*y(k,107) - mat(k,263) = rxt(k,433)*y(k,107) - mat(k,501) = -(rxt(k,426)*y(k,49) + rxt(k,428)*y(k,140) + rxt(k,429)*y(k,107)) - mat(k,809) = -rxt(k,426)*y(k,148) - mat(k,536) = -rxt(k,428)*y(k,148) - mat(k,898) = -rxt(k,429)*y(k,148) - mat(k,1433) = rxt(k,419)*y(k,141) + rxt(k,420)*y(k,143) + rxt(k,432)*y(k,149) & - + rxt(k,438)*y(k,150) - mat(k,524) = rxt(k,430)*y(k,149) + rxt(k,435)*y(k,150) - mat(k,336) = rxt(k,419)*y(k,106) - mat(k,443) = rxt(k,420)*y(k,106) - mat(k,262) = rxt(k,432)*y(k,106) + rxt(k,430)*y(k,138) - mat(k,257) = rxt(k,438)*y(k,106) + rxt(k,435)*y(k,138) - mat(k,260) = -(rxt(k,430)*y(k,138) + rxt(k,432)*y(k,106) + rxt(k,433) & - *y(k,107)) - mat(k,520) = -rxt(k,430)*y(k,149) - mat(k,1423) = -rxt(k,432)*y(k,149) - mat(k,893) = -rxt(k,433)*y(k,149) - mat(k,520) = mat(k,520) + rxt(k,434)*y(k,150) - mat(k,254) = rxt(k,434)*y(k,138) - mat(k,253) = -((rxt(k,434) + rxt(k,435)) * y(k,138) + rxt(k,438)*y(k,106)) - mat(k,519) = -(rxt(k,434) + rxt(k,435)) * y(k,150) - mat(k,1422) = -rxt(k,438)*y(k,150) - mat(k,1584) = -(rxt(k,118)*y(k,144) + rxt(k,241)*y(k,59) + rxt(k,385) & - *y(k,124)) - mat(k,1291) = -rxt(k,118)*y(k,151) - mat(k,498) = -rxt(k,241)*y(k,151) - mat(k,134) = -rxt(k,385)*y(k,151) - mat(k,162) = rxt(k,285)*y(k,111) - mat(k,208) = rxt(k,309)*y(k,111) - mat(k,52) = rxt(k,310)*y(k,111) - mat(k,252) = rxt(k,246)*y(k,111) - mat(k,1034) = rxt(k,264)*y(k,111) - mat(k,333) = rxt(k,248)*y(k,111) - mat(k,48) = rxt(k,249)*y(k,111) - mat(k,648) = rxt(k,287)*y(k,111) - mat(k,196) = rxt(k,251)*y(k,111) - mat(k,399) = rxt(k,323)*y(k,111) - mat(k,690) = rxt(k,312)*y(k,111) - mat(k,357) = rxt(k,292)*y(k,111) - mat(k,324) = rxt(k,293)*y(k,111) - mat(k,214) = rxt(k,270)*y(k,111) - mat(k,1536) = rxt(k,271)*y(k,111) - mat(k,1557) = rxt(k,139)*y(k,139) - mat(k,837) = rxt(k,144)*y(k,111) - mat(k,317) = rxt(k,145)*y(k,111) - mat(k,440) = rxt(k,232)*y(k,111) - mat(k,147) = rxt(k,256)*y(k,111) - mat(k,872) = (rxt(k,402)+rxt(k,407))*y(k,75) + (rxt(k,395)+rxt(k,401) & - +rxt(k,406))*y(k,76) + rxt(k,203)*y(k,111) - mat(k,1162) = rxt(k,176)*y(k,111) - mat(k,238) = rxt(k,153)*y(k,111) - mat(k,393) = (rxt(k,402)+rxt(k,407))*y(k,71) - mat(k,457) = (rxt(k,395)+rxt(k,401)+rxt(k,406))*y(k,71) + rxt(k,206)*y(k,111) - mat(k,664) = .500_r8*rxt(k,331)*y(k,111) - mat(k,37) = rxt(k,386)*y(k,111) - mat(k,1418) = rxt(k,285)*y(k,13) + rxt(k,309)*y(k,16) + rxt(k,310)*y(k,17) & - + rxt(k,246)*y(k,26) + rxt(k,264)*y(k,27) + rxt(k,248)*y(k,28) & - + rxt(k,249)*y(k,29) + rxt(k,287)*y(k,30) + rxt(k,251)*y(k,31) & - + rxt(k,323)*y(k,33) + rxt(k,312)*y(k,34) + rxt(k,292)*y(k,35) & - + rxt(k,293)*y(k,36) + rxt(k,270)*y(k,39) + rxt(k,271)*y(k,40) & - + rxt(k,144)*y(k,63) + rxt(k,145)*y(k,65) + rxt(k,232)*y(k,67) & - + rxt(k,256)*y(k,70) + rxt(k,203)*y(k,71) + rxt(k,176)*y(k,73) & - + rxt(k,153)*y(k,74) + rxt(k,206)*y(k,76) + .500_r8*rxt(k,331) & - *y(k,83) + rxt(k,386)*y(k,95) + 2.000_r8*rxt(k,149)*y(k,111) & - + rxt(k,317)*y(k,117) + rxt(k,321)*y(k,119) + rxt(k,146) & - *y(k,139) - mat(k,293) = rxt(k,317)*y(k,111) - mat(k,220) = rxt(k,321)*y(k,111) - mat(k,1093) = rxt(k,139)*y(k,62) + rxt(k,146)*y(k,111) - end do - end subroutine nlnmat08 subroutine nlnmat_finit( avec_len, mat, lmat, dti ) use chem_mods, only : gas_pcnst, rxntot, nzcnt implicit none @@ -1846,72 +1826,73 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 29) = lmat(k, 29) mat(k, 30) = lmat(k, 30) mat(k, 31) = lmat(k, 31) - mat(k, 32) = mat(k, 32) + lmat(k, 32) - mat(k, 35) = mat(k, 35) + lmat(k, 35) - mat(k, 38) = mat(k, 38) + lmat(k, 38) - mat(k, 40) = mat(k, 40) + lmat(k, 40) + mat(k, 32) = lmat(k, 32) + mat(k, 33) = mat(k, 33) + lmat(k, 33) + mat(k, 36) = mat(k, 36) + lmat(k, 36) + mat(k, 39) = mat(k, 39) + lmat(k, 39) mat(k, 41) = mat(k, 41) + lmat(k, 41) mat(k, 42) = mat(k, 42) + lmat(k, 42) mat(k, 43) = mat(k, 43) + lmat(k, 43) - mat(k, 45) = mat(k, 45) + lmat(k, 45) + mat(k, 44) = mat(k, 44) + lmat(k, 44) mat(k, 46) = mat(k, 46) + lmat(k, 46) - mat(k, 49) = mat(k, 49) + lmat(k, 49) + mat(k, 50) = mat(k, 50) + lmat(k, 50) + mat(k, 51) = mat(k, 51) + lmat(k, 51) mat(k, 53) = mat(k, 53) + lmat(k, 53) mat(k, 54) = mat(k, 54) + lmat(k, 54) - mat(k, 56) = mat(k, 56) + lmat(k, 56) + mat(k, 55) = mat(k, 55) + lmat(k, 55) mat(k, 57) = mat(k, 57) + lmat(k, 57) mat(k, 58) = mat(k, 58) + lmat(k, 58) - mat(k, 60) = mat(k, 60) + lmat(k, 60) + mat(k, 59) = mat(k, 59) + lmat(k, 59) mat(k, 61) = mat(k, 61) + lmat(k, 61) mat(k, 62) = mat(k, 62) + lmat(k, 62) mat(k, 64) = mat(k, 64) + lmat(k, 64) - mat(k, 65) = lmat(k, 65) mat(k, 66) = lmat(k, 66) mat(k, 67) = lmat(k, 67) mat(k, 68) = lmat(k, 68) mat(k, 69) = lmat(k, 69) mat(k, 70) = lmat(k, 70) - mat(k, 71) = mat(k, 71) + lmat(k, 71) + mat(k, 71) = lmat(k, 71) mat(k, 72) = mat(k, 72) + lmat(k, 72) mat(k, 73) = mat(k, 73) + lmat(k, 73) - mat(k, 75) = mat(k, 75) + lmat(k, 75) + mat(k, 74) = mat(k, 74) + lmat(k, 74) mat(k, 76) = mat(k, 76) + lmat(k, 76) mat(k, 77) = mat(k, 77) + lmat(k, 77) mat(k, 78) = mat(k, 78) + lmat(k, 78) mat(k, 79) = mat(k, 79) + lmat(k, 79) - mat(k, 81) = mat(k, 81) + lmat(k, 81) + mat(k, 80) = mat(k, 80) + lmat(k, 80) mat(k, 82) = mat(k, 82) + lmat(k, 82) mat(k, 83) = mat(k, 83) + lmat(k, 83) - mat(k, 85) = mat(k, 85) + lmat(k, 85) + mat(k, 84) = mat(k, 84) + lmat(k, 84) mat(k, 86) = mat(k, 86) + lmat(k, 86) mat(k, 87) = mat(k, 87) + lmat(k, 87) mat(k, 88) = mat(k, 88) + lmat(k, 88) - mat(k, 90) = mat(k, 90) + lmat(k, 90) - mat(k, 91) = lmat(k, 91) + mat(k, 89) = mat(k, 89) + lmat(k, 89) + mat(k, 91) = mat(k, 91) + lmat(k, 91) mat(k, 92) = lmat(k, 92) - mat(k, 93) = mat(k, 93) + lmat(k, 93) + mat(k, 93) = lmat(k, 93) mat(k, 94) = mat(k, 94) + lmat(k, 94) mat(k, 95) = mat(k, 95) + lmat(k, 95) mat(k, 96) = mat(k, 96) + lmat(k, 96) - mat(k, 97) = lmat(k, 97) - mat(k, 98) = mat(k, 98) + lmat(k, 98) - mat(k, 100) = mat(k, 100) + lmat(k, 100) + mat(k, 97) = mat(k, 97) + lmat(k, 97) + mat(k, 98) = lmat(k, 98) + mat(k, 99) = mat(k, 99) + lmat(k, 99) mat(k, 101) = mat(k, 101) + lmat(k, 101) - mat(k, 102) = mat(k, 102) + lmat(k, 102) + mat(k, 102) = lmat(k, 102) + mat(k, 103) = lmat(k, 103) mat(k, 104) = lmat(k, 104) - mat(k, 105) = lmat(k, 105) - mat(k, 106) = lmat(k, 106) - mat(k, 107) = mat(k, 107) + lmat(k, 107) - mat(k, 108) = mat(k, 108) + lmat(k, 108) + mat(k, 105) = mat(k, 105) + lmat(k, 105) + mat(k, 106) = mat(k, 106) + lmat(k, 106) + mat(k, 109) = mat(k, 109) + lmat(k, 109) mat(k, 110) = mat(k, 110) + lmat(k, 110) - mat(k, 112) = mat(k, 112) + lmat(k, 112) + mat(k, 111) = mat(k, 111) + lmat(k, 111) mat(k, 113) = mat(k, 113) + lmat(k, 113) + mat(k, 114) = mat(k, 114) + lmat(k, 114) mat(k, 115) = mat(k, 115) + lmat(k, 115) - mat(k, 116) = mat(k, 116) + lmat(k, 116) - mat(k, 117) = mat(k, 117) + lmat(k, 117) + mat(k, 118) = mat(k, 118) + lmat(k, 118) + mat(k, 119) = mat(k, 119) + lmat(k, 119) mat(k, 120) = mat(k, 120) + lmat(k, 120) mat(k, 122) = mat(k, 122) + lmat(k, 122) - mat(k, 124) = mat(k, 124) + lmat(k, 124) + mat(k, 125) = mat(k, 125) + lmat(k, 125) mat(k, 126) = mat(k, 126) + lmat(k, 126) mat(k, 131) = mat(k, 131) + lmat(k, 131) mat(k, 132) = lmat(k, 132) @@ -1919,7 +1900,7 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 135) = mat(k, 135) + lmat(k, 135) mat(k, 141) = mat(k, 141) + lmat(k, 141) mat(k, 142) = mat(k, 142) + lmat(k, 142) - mat(k, 145) = mat(k, 145) + lmat(k, 145) + mat(k, 146) = mat(k, 146) + lmat(k, 146) mat(k, 148) = lmat(k, 148) mat(k, 149) = lmat(k, 149) mat(k, 150) = lmat(k, 150) @@ -1933,45 +1914,45 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 163) = mat(k, 163) + lmat(k, 163) mat(k, 168) = mat(k, 168) + lmat(k, 168) mat(k, 170) = mat(k, 170) + lmat(k, 170) - mat(k, 171) = lmat(k, 171) - mat(k, 172) = mat(k, 172) + lmat(k, 172) + mat(k, 171) = mat(k, 171) + lmat(k, 171) + mat(k, 172) = lmat(k, 172) mat(k, 173) = mat(k, 173) + lmat(k, 173) mat(k, 176) = mat(k, 176) + lmat(k, 176) mat(k, 177) = lmat(k, 177) mat(k, 178) = mat(k, 178) + lmat(k, 178) mat(k, 181) = mat(k, 181) + lmat(k, 181) - mat(k, 182) = lmat(k, 182) - mat(k, 184) = mat(k, 184) + lmat(k, 184) + mat(k, 184) = lmat(k, 184) + mat(k, 186) = mat(k, 186) + lmat(k, 186) mat(k, 189) = mat(k, 189) + lmat(k, 189) - mat(k, 193) = lmat(k, 193) - mat(k, 194) = mat(k, 194) + lmat(k, 194) + mat(k, 190) = lmat(k, 190) + mat(k, 192) = mat(k, 192) + lmat(k, 192) mat(k, 197) = mat(k, 197) + lmat(k, 197) mat(k, 199) = lmat(k, 199) mat(k, 200) = mat(k, 200) + lmat(k, 200) - mat(k, 201) = lmat(k, 201) + mat(k, 202) = lmat(k, 202) mat(k, 203) = mat(k, 203) + lmat(k, 203) mat(k, 204) = lmat(k, 204) - mat(k, 206) = lmat(k, 206) - mat(k, 207) = mat(k, 207) + lmat(k, 207) + mat(k, 206) = mat(k, 206) + lmat(k, 206) + mat(k, 207) = lmat(k, 207) mat(k, 209) = mat(k, 209) + lmat(k, 209) - mat(k, 210) = mat(k, 210) + lmat(k, 210) + mat(k, 211) = lmat(k, 211) mat(k, 212) = mat(k, 212) + lmat(k, 212) mat(k, 213) = lmat(k, 213) mat(k, 215) = mat(k, 215) + lmat(k, 215) mat(k, 217) = lmat(k, 217) - mat(k, 218) = lmat(k, 218) + mat(k, 218) = mat(k, 218) + lmat(k, 218) mat(k, 219) = mat(k, 219) + lmat(k, 219) mat(k, 221) = mat(k, 221) + lmat(k, 221) mat(k, 223) = mat(k, 223) + lmat(k, 223) mat(k, 227) = mat(k, 227) + lmat(k, 227) - mat(k, 230) = lmat(k, 230) - mat(k, 231) = mat(k, 231) + lmat(k, 231) + mat(k, 230) = mat(k, 230) + lmat(k, 230) + mat(k, 231) = lmat(k, 231) mat(k, 232) = mat(k, 232) + lmat(k, 232) - mat(k, 234) = mat(k, 234) + lmat(k, 234) - mat(k, 235) = lmat(k, 235) - mat(k, 236) = lmat(k, 236) - mat(k, 237) = mat(k, 237) + lmat(k, 237) mat(k, 239) = mat(k, 239) + lmat(k, 239) + mat(k, 241) = lmat(k, 241) + mat(k, 242) = mat(k, 242) + lmat(k, 242) + mat(k, 243) = mat(k, 243) + lmat(k, 243) + mat(k, 244) = lmat(k, 244) mat(k, 246) = mat(k, 246) + lmat(k, 246) mat(k, 248) = mat(k, 248) + lmat(k, 248) mat(k, 253) = mat(k, 253) + lmat(k, 253) @@ -1987,66 +1968,66 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 265) = mat(k, 265) + lmat(k, 265) mat(k, 266) = mat(k, 266) + lmat(k, 266) mat(k, 267) = lmat(k, 267) + mat(k, 268) = lmat(k, 268) + mat(k, 269) = mat(k, 269) + lmat(k, 269) mat(k, 270) = lmat(k, 270) - mat(k, 271) = lmat(k, 271) - mat(k, 272) = lmat(k, 272) - mat(k, 273) = mat(k, 273) + lmat(k, 273) + mat(k, 271) = mat(k, 271) + lmat(k, 271) + mat(k, 273) = lmat(k, 273) mat(k, 274) = mat(k, 274) + lmat(k, 274) mat(k, 275) = lmat(k, 275) mat(k, 276) = lmat(k, 276) mat(k, 277) = lmat(k, 277) + mat(k, 278) = mat(k, 278) + lmat(k, 278) mat(k, 279) = lmat(k, 279) - mat(k, 280) = mat(k, 280) + lmat(k, 280) mat(k, 282) = mat(k, 282) + lmat(k, 282) mat(k, 286) = mat(k, 286) + lmat(k, 286) mat(k, 289) = lmat(k, 289) - mat(k, 290) = lmat(k, 290) + mat(k, 290) = mat(k, 290) + lmat(k, 290) mat(k, 291) = lmat(k, 291) - mat(k, 292) = mat(k, 292) + lmat(k, 292) + mat(k, 292) = lmat(k, 292) mat(k, 294) = mat(k, 294) + lmat(k, 294) mat(k, 295) = lmat(k, 295) - mat(k, 296) = lmat(k, 296) - mat(k, 297) = mat(k, 297) + lmat(k, 297) mat(k, 298) = lmat(k, 298) - mat(k, 299) = lmat(k, 299) - mat(k, 300) = mat(k, 300) + lmat(k, 300) + mat(k, 299) = mat(k, 299) + lmat(k, 299) + mat(k, 300) = lmat(k, 300) + mat(k, 301) = lmat(k, 301) mat(k, 302) = mat(k, 302) + lmat(k, 302) mat(k, 304) = lmat(k, 304) - mat(k, 306) = lmat(k, 306) + mat(k, 307) = lmat(k, 307) mat(k, 311) = mat(k, 311) + lmat(k, 311) + mat(k, 313) = mat(k, 313) + lmat(k, 313) + mat(k, 314) = lmat(k, 314) mat(k, 315) = mat(k, 315) + lmat(k, 315) mat(k, 318) = mat(k, 318) + lmat(k, 318) mat(k, 320) = mat(k, 320) + lmat(k, 320) - mat(k, 322) = lmat(k, 322) - mat(k, 323) = mat(k, 323) + lmat(k, 323) mat(k, 325) = mat(k, 325) + lmat(k, 325) mat(k, 327) = mat(k, 327) + lmat(k, 327) - mat(k, 329) = lmat(k, 329) + mat(k, 328) = lmat(k, 328) mat(k, 334) = mat(k, 334) + lmat(k, 334) mat(k, 343) = mat(k, 343) + lmat(k, 343) mat(k, 353) = mat(k, 353) + lmat(k, 353) mat(k, 358) = mat(k, 358) + lmat(k, 358) mat(k, 365) = mat(k, 365) + lmat(k, 365) mat(k, 366) = mat(k, 366) + lmat(k, 366) - mat(k, 368) = mat(k, 368) + lmat(k, 368) + mat(k, 369) = mat(k, 369) + lmat(k, 369) mat(k, 370) = mat(k, 370) + lmat(k, 370) - mat(k, 377) = mat(k, 377) + lmat(k, 377) - mat(k, 386) = mat(k, 386) + lmat(k, 386) - mat(k, 388) = lmat(k, 388) - mat(k, 391) = mat(k, 391) + lmat(k, 391) - mat(k, 394) = mat(k, 394) + lmat(k, 394) - mat(k, 396) = lmat(k, 396) - mat(k, 397) = lmat(k, 397) - mat(k, 401) = mat(k, 401) + lmat(k, 401) + mat(k, 375) = mat(k, 375) + lmat(k, 375) + mat(k, 377) = lmat(k, 377) + mat(k, 378) = lmat(k, 378) + mat(k, 382) = mat(k, 382) + lmat(k, 382) + mat(k, 384) = lmat(k, 384) + mat(k, 385) = mat(k, 385) + lmat(k, 385) + mat(k, 392) = mat(k, 392) + lmat(k, 392) + mat(k, 400) = mat(k, 400) + lmat(k, 400) mat(k, 411) = mat(k, 411) + lmat(k, 411) mat(k, 424) = mat(k, 424) + lmat(k, 424) - mat(k, 433) = mat(k, 433) + lmat(k, 433) mat(k, 434) = mat(k, 434) + lmat(k, 434) - mat(k, 439) = mat(k, 439) + lmat(k, 439) + mat(k, 436) = mat(k, 436) + lmat(k, 436) + mat(k, 437) = mat(k, 437) + lmat(k, 437) mat(k, 442) = mat(k, 442) + lmat(k, 442) + mat(k, 450) = mat(k, 450) + lmat(k, 450) mat(k, 451) = mat(k, 451) + lmat(k, 451) - mat(k, 454) = mat(k, 454) + lmat(k, 454) - mat(k, 455) = mat(k, 455) + lmat(k, 455) + mat(k, 452) = mat(k, 452) + lmat(k, 452) mat(k, 460) = mat(k, 460) + lmat(k, 460) mat(k, 473) = mat(k, 473) + lmat(k, 473) mat(k, 490) = mat(k, 490) + lmat(k, 490) @@ -2055,74 +2036,74 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 505) = lmat(k, 505) mat(k, 510) = mat(k, 510) + lmat(k, 510) mat(k, 511) = mat(k, 511) + lmat(k, 511) - mat(k, 518) = mat(k, 518) + lmat(k, 518) + mat(k, 516) = mat(k, 516) + lmat(k, 516) mat(k, 526) = mat(k, 526) + lmat(k, 526) mat(k, 539) = mat(k, 539) + lmat(k, 539) mat(k, 540) = mat(k, 540) + lmat(k, 540) mat(k, 548) = mat(k, 548) + lmat(k, 548) mat(k, 549) = lmat(k, 549) mat(k, 552) = lmat(k, 552) - mat(k, 556) = lmat(k, 556) + mat(k, 555) = mat(k, 555) + lmat(k, 555) + mat(k, 556) = mat(k, 556) + lmat(k, 556) + mat(k, 558) = mat(k, 558) + lmat(k, 558) mat(k, 559) = lmat(k, 559) mat(k, 561) = mat(k, 561) + lmat(k, 561) - mat(k, 572) = mat(k, 572) + lmat(k, 572) + mat(k, 562) = mat(k, 562) + lmat(k, 562) + mat(k, 564) = mat(k, 564) + lmat(k, 564) + mat(k, 568) = lmat(k, 568) + mat(k, 571) = lmat(k, 571) mat(k, 573) = mat(k, 573) + lmat(k, 573) - mat(k, 575) = mat(k, 575) + lmat(k, 575) - mat(k, 576) = lmat(k, 576) - mat(k, 577) = mat(k, 577) + lmat(k, 577) - mat(k, 578) = mat(k, 578) + lmat(k, 578) - mat(k, 579) = mat(k, 579) + lmat(k, 579) mat(k, 584) = mat(k, 584) + lmat(k, 584) mat(k, 585) = lmat(k, 585) - mat(k, 587) = mat(k, 587) + lmat(k, 587) - mat(k, 588) = lmat(k, 588) - mat(k, 589) = mat(k, 589) + lmat(k, 589) - mat(k, 590) = lmat(k, 590) - mat(k, 595) = mat(k, 595) + lmat(k, 595) - mat(k, 607) = mat(k, 607) + lmat(k, 607) - mat(k, 608) = lmat(k, 608) - mat(k, 610) = mat(k, 610) + lmat(k, 610) - mat(k, 611) = mat(k, 611) + lmat(k, 611) + mat(k, 588) = mat(k, 588) + lmat(k, 588) + mat(k, 590) = mat(k, 590) + lmat(k, 590) + mat(k, 591) = lmat(k, 591) + mat(k, 592) = lmat(k, 592) + mat(k, 594) = mat(k, 594) + lmat(k, 594) + mat(k, 595) = lmat(k, 595) + mat(k, 598) = mat(k, 598) + lmat(k, 598) + mat(k, 599) = mat(k, 599) + lmat(k, 599) + mat(k, 602) = mat(k, 602) + lmat(k, 602) mat(k, 613) = mat(k, 613) + lmat(k, 613) mat(k, 615) = lmat(k, 615) - mat(k, 616) = lmat(k, 616) mat(k, 617) = mat(k, 617) + lmat(k, 617) + mat(k, 618) = lmat(k, 618) mat(k, 623) = mat(k, 623) + lmat(k, 623) mat(k, 640) = mat(k, 640) + lmat(k, 640) mat(k, 641) = lmat(k, 641) mat(k, 643) = lmat(k, 643) - mat(k, 645) = lmat(k, 645) + mat(k, 646) = lmat(k, 646) mat(k, 649) = mat(k, 649) + lmat(k, 649) mat(k, 653) = mat(k, 653) + lmat(k, 653) mat(k, 654) = mat(k, 654) + lmat(k, 654) mat(k, 657) = mat(k, 657) + lmat(k, 657) mat(k, 658) = mat(k, 658) + lmat(k, 658) - mat(k, 660) = mat(k, 660) + lmat(k, 660) mat(k, 661) = mat(k, 661) + lmat(k, 661) + mat(k, 662) = mat(k, 662) + lmat(k, 662) mat(k, 671) = mat(k, 671) + lmat(k, 671) mat(k, 682) = mat(k, 682) + lmat(k, 682) mat(k, 683) = mat(k, 683) + lmat(k, 683) mat(k, 684) = mat(k, 684) + lmat(k, 684) - mat(k, 686) = lmat(k, 686) + mat(k, 688) = lmat(k, 688) mat(k, 702) = mat(k, 702) + lmat(k, 702) mat(k, 726) = mat(k, 726) + lmat(k, 726) mat(k, 739) = lmat(k, 739) mat(k, 741) = mat(k, 741) + lmat(k, 741) mat(k, 744) = mat(k, 744) + lmat(k, 744) mat(k, 746) = mat(k, 746) + lmat(k, 746) - mat(k, 754) = lmat(k, 754) + mat(k, 750) = lmat(k, 750) mat(k, 765) = mat(k, 765) + lmat(k, 765) mat(k, 793) = mat(k, 793) + lmat(k, 793) mat(k, 814) = mat(k, 814) + lmat(k, 814) mat(k, 815) = mat(k, 815) + lmat(k, 815) - mat(k, 821) = lmat(k, 821) + mat(k, 823) = lmat(k, 823) mat(k, 826) = mat(k, 826) + lmat(k, 826) mat(k, 839) = lmat(k, 839) mat(k, 841) = mat(k, 841) + lmat(k, 841) - mat(k, 851) = mat(k, 851) + lmat(k, 851) + mat(k, 852) = mat(k, 852) + lmat(k, 852) mat(k, 860) = mat(k, 860) + lmat(k, 860) - mat(k, 868) = mat(k, 868) + lmat(k, 868) - mat(k, 871) = mat(k, 871) + lmat(k, 871) + mat(k, 863) = mat(k, 863) + lmat(k, 863) + mat(k, 867) = mat(k, 867) + lmat(k, 867) mat(k, 876) = mat(k, 876) + lmat(k, 876) mat(k, 892) = lmat(k, 892) mat(k, 893) = mat(k, 893) + lmat(k, 893) @@ -2130,151 +2111,150 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 899) = mat(k, 899) + lmat(k, 899) mat(k, 900) = lmat(k, 900) mat(k, 909) = mat(k, 909) + lmat(k, 909) - mat(k, 916) = mat(k, 916) + lmat(k, 916) - mat(k, 919) = mat(k, 919) + lmat(k, 919) - mat(k, 930) = mat(k, 930) + lmat(k, 930) + mat(k, 913) = mat(k, 913) + lmat(k, 913) + mat(k, 920) = mat(k, 920) + lmat(k, 920) + mat(k, 925) = lmat(k, 925) + mat(k, 926) = lmat(k, 926) + mat(k, 927) = mat(k, 927) + lmat(k, 927) + mat(k, 931) = mat(k, 931) + lmat(k, 931) mat(k, 932) = mat(k, 932) + lmat(k, 932) + mat(k, 934) = mat(k, 934) + lmat(k, 934) + mat(k, 938) = mat(k, 938) + lmat(k, 938) mat(k, 943) = mat(k, 943) + lmat(k, 943) - mat(k, 959) = mat(k, 959) + lmat(k, 959) - mat(k, 968) = mat(k, 968) + lmat(k, 968) - mat(k, 970) = mat(k, 970) + lmat(k, 970) - mat(k, 996) = mat(k, 996) + lmat(k, 996) - mat(k,1000) = mat(k,1000) + lmat(k,1000) - mat(k,1005) = mat(k,1005) + lmat(k,1005) - mat(k,1006) = mat(k,1006) + lmat(k,1006) - mat(k,1007) = mat(k,1007) + lmat(k,1007) - mat(k,1012) = mat(k,1012) + lmat(k,1012) - mat(k,1014) = lmat(k,1014) - mat(k,1021) = mat(k,1021) + lmat(k,1021) - mat(k,1033) = mat(k,1033) + lmat(k,1033) + mat(k, 944) = lmat(k, 944) + mat(k, 947) = mat(k, 947) + lmat(k, 947) + mat(k, 973) = mat(k, 973) + lmat(k, 973) + mat(k,1017) = mat(k,1017) + lmat(k,1017) + mat(k,1020) = mat(k,1020) + lmat(k,1020) + mat(k,1022) = mat(k,1022) + lmat(k,1022) + mat(k,1023) = mat(k,1023) + lmat(k,1023) + mat(k,1031) = mat(k,1031) + lmat(k,1031) + mat(k,1032) = mat(k,1032) + lmat(k,1032) + mat(k,1042) = mat(k,1042) + lmat(k,1042) + mat(k,1080) = mat(k,1080) + lmat(k,1080) mat(k,1081) = mat(k,1081) + lmat(k,1081) - mat(k,1093) = mat(k,1093) + lmat(k,1093) - mat(k,1094) = mat(k,1094) + lmat(k,1094) - mat(k,1122) = mat(k,1122) + lmat(k,1122) - mat(k,1128) = mat(k,1128) + lmat(k,1128) - mat(k,1132) = mat(k,1132) + lmat(k,1132) - mat(k,1135) = mat(k,1135) + lmat(k,1135) - mat(k,1148) = lmat(k,1148) - mat(k,1152) = mat(k,1152) + lmat(k,1152) - mat(k,1157) = mat(k,1157) + lmat(k,1157) - mat(k,1194) = mat(k,1194) + lmat(k,1194) - mat(k,1232) = mat(k,1232) + lmat(k,1232) - mat(k,1235) = mat(k,1235) + lmat(k,1235) - mat(k,1239) = mat(k,1239) + lmat(k,1239) - mat(k,1241) = mat(k,1241) + lmat(k,1241) - mat(k,1245) = mat(k,1245) + lmat(k,1245) - mat(k,1246) = mat(k,1246) + lmat(k,1246) - mat(k,1284) = mat(k,1284) + lmat(k,1284) - mat(k,1287) = mat(k,1287) + lmat(k,1287) - mat(k,1323) = mat(k,1323) + lmat(k,1323) - mat(k,1413) = mat(k,1413) + lmat(k,1413) - mat(k,1422) = mat(k,1422) + lmat(k,1422) - mat(k,1423) = mat(k,1423) + lmat(k,1423) - mat(k,1433) = mat(k,1433) + lmat(k,1433) - mat(k,1435) = lmat(k,1435) - mat(k,1459) = mat(k,1459) + lmat(k,1459) - mat(k,1467) = mat(k,1467) + lmat(k,1467) - mat(k,1475) = lmat(k,1475) - mat(k,1477) = mat(k,1477) + lmat(k,1477) - mat(k,1507) = mat(k,1507) + lmat(k,1507) - mat(k,1508) = mat(k,1508) + lmat(k,1508) - mat(k,1514) = lmat(k,1514) - mat(k,1515) = lmat(k,1515) - mat(k,1516) = mat(k,1516) + lmat(k,1516) - mat(k,1523) = mat(k,1523) + lmat(k,1523) - mat(k,1527) = mat(k,1527) + lmat(k,1527) - mat(k,1531) = mat(k,1531) + lmat(k,1531) - mat(k,1532) = lmat(k,1532) - mat(k,1534) = mat(k,1534) + lmat(k,1534) - mat(k,1535) = mat(k,1535) + lmat(k,1535) - mat(k,1536) = mat(k,1536) + lmat(k,1536) + mat(k,1083) = mat(k,1083) + lmat(k,1083) + mat(k,1089) = mat(k,1089) + lmat(k,1089) + mat(k,1090) = mat(k,1090) + lmat(k,1090) + mat(k,1096) = mat(k,1096) + lmat(k,1096) + mat(k,1104) = lmat(k,1104) + mat(k,1106) = mat(k,1106) + lmat(k,1106) + mat(k,1129) = mat(k,1129) + lmat(k,1129) + mat(k,1137) = mat(k,1137) + lmat(k,1137) + mat(k,1172) = mat(k,1172) + lmat(k,1172) + mat(k,1179) = mat(k,1179) + lmat(k,1179) + mat(k,1262) = mat(k,1262) + lmat(k,1262) + mat(k,1301) = mat(k,1301) + lmat(k,1301) + mat(k,1328) = mat(k,1328) + lmat(k,1328) + mat(k,1329) = mat(k,1329) + lmat(k,1329) + mat(k,1333) = mat(k,1333) + lmat(k,1333) + mat(k,1344) = mat(k,1344) + lmat(k,1344) + mat(k,1354) = mat(k,1354) + lmat(k,1354) + mat(k,1357) = mat(k,1357) + lmat(k,1357) + mat(k,1414) = mat(k,1414) + lmat(k,1414) + mat(k,1419) = mat(k,1419) + lmat(k,1419) + mat(k,1421) = mat(k,1421) + lmat(k,1421) + mat(k,1423) = lmat(k,1423) + mat(k,1430) = mat(k,1430) + lmat(k,1430) + mat(k,1439) = mat(k,1439) + lmat(k,1439) + mat(k,1447) = mat(k,1447) + lmat(k,1447) + mat(k,1448) = mat(k,1448) + lmat(k,1448) + mat(k,1458) = mat(k,1458) + lmat(k,1458) + mat(k,1460) = lmat(k,1460) + mat(k,1485) = mat(k,1485) + lmat(k,1485) + mat(k,1499) = lmat(k,1499) + mat(k,1502) = mat(k,1502) + lmat(k,1502) + mat(k,1509) = mat(k,1509) + lmat(k,1509) + mat(k,1512) = mat(k,1512) + lmat(k,1512) + mat(k,1540) = mat(k,1540) + lmat(k,1540) + mat(k,1547) = mat(k,1547) + lmat(k,1547) + mat(k,1554) = mat(k,1554) + lmat(k,1554) mat(k,1556) = mat(k,1556) + lmat(k,1556) mat(k,1563) = lmat(k,1563) - mat(k,1577) = mat(k,1577) + lmat(k,1577) - mat(k,1579) = mat(k,1579) + lmat(k,1579) - mat(k,1580) = lmat(k,1580) - mat(k,1583) = lmat(k,1583) + mat(k,1571) = lmat(k,1571) + mat(k,1574) = mat(k,1574) + lmat(k,1574) + mat(k,1575) = mat(k,1575) + lmat(k,1575) + mat(k,1581) = lmat(k,1581) mat(k,1584) = mat(k,1584) + lmat(k,1584) - mat(k, 118) = 0._r8 mat(k, 143) = 0._r8 - mat(k, 378) = 0._r8 - mat(k, 379) = 0._r8 - mat(k, 383) = 0._r8 - mat(k, 390) = 0._r8 - mat(k, 402) = 0._r8 - mat(k, 408) = 0._r8 - mat(k, 410) = 0._r8 - mat(k, 431) = 0._r8 + mat(k, 386) = 0._r8 + mat(k, 393) = 0._r8 + mat(k, 394) = 0._r8 + mat(k, 397) = 0._r8 + mat(k, 412) = 0._r8 + mat(k, 417) = 0._r8 + mat(k, 420) = 0._r8 + mat(k, 430) = 0._r8 mat(k, 445) = 0._r8 mat(k, 446) = 0._r8 mat(k, 461) = 0._r8 mat(k, 463) = 0._r8 - mat(k, 469) = 0._r8 + mat(k, 468) = 0._r8 mat(k, 471) = 0._r8 mat(k, 474) = 0._r8 - mat(k, 481) = 0._r8 - mat(k, 488) = 0._r8 + mat(k, 483) = 0._r8 + mat(k, 484) = 0._r8 mat(k, 503) = 0._r8 mat(k, 513) = 0._r8 mat(k, 523) = 0._r8 mat(k, 529) = 0._r8 mat(k, 530) = 0._r8 mat(k, 531) = 0._r8 - mat(k, 534) = 0._r8 + mat(k, 532) = 0._r8 mat(k, 537) = 0._r8 mat(k, 538) = 0._r8 mat(k, 541) = 0._r8 mat(k, 542) = 0._r8 mat(k, 553) = 0._r8 - mat(k, 557) = 0._r8 - mat(k, 560) = 0._r8 - mat(k, 562) = 0._r8 - mat(k, 563) = 0._r8 - mat(k, 566) = 0._r8 - mat(k, 582) = 0._r8 + mat(k, 565) = 0._r8 + mat(k, 569) = 0._r8 + mat(k, 572) = 0._r8 + mat(k, 574) = 0._r8 + mat(k, 575) = 0._r8 + mat(k, 580) = 0._r8 mat(k, 586) = 0._r8 - mat(k, 605) = 0._r8 + mat(k, 612) = 0._r8 mat(k, 622) = 0._r8 mat(k, 626) = 0._r8 mat(k, 627) = 0._r8 mat(k, 629) = 0._r8 - mat(k, 630) = 0._r8 - mat(k, 637) = 0._r8 + mat(k, 633) = 0._r8 + mat(k, 634) = 0._r8 mat(k, 639) = 0._r8 mat(k, 659) = 0._r8 - mat(k, 680) = 0._r8 + mat(k, 679) = 0._r8 mat(k, 685) = 0._r8 mat(k, 698) = 0._r8 mat(k, 700) = 0._r8 mat(k, 703) = 0._r8 mat(k, 705) = 0._r8 mat(k, 707) = 0._r8 - mat(k, 711) = 0._r8 mat(k, 712) = 0._r8 mat(k, 715) = 0._r8 + mat(k, 716) = 0._r8 mat(k, 717) = 0._r8 mat(k, 724) = 0._r8 mat(k, 727) = 0._r8 mat(k, 729) = 0._r8 - mat(k, 733) = 0._r8 - mat(k, 736) = 0._r8 + mat(k, 734) = 0._r8 + mat(k, 737) = 0._r8 mat(k, 738) = 0._r8 mat(k, 745) = 0._r8 mat(k, 748) = 0._r8 mat(k, 749) = 0._r8 + mat(k, 751) = 0._r8 + mat(k, 752) = 0._r8 mat(k, 753) = 0._r8 - mat(k, 755) = 0._r8 mat(k, 757) = 0._r8 - mat(k, 758) = 0._r8 mat(k, 759) = 0._r8 mat(k, 763) = 0._r8 mat(k, 764) = 0._r8 - mat(k, 772) = 0._r8 + mat(k, 775) = 0._r8 mat(k, 777) = 0._r8 mat(k, 795) = 0._r8 - mat(k, 800) = 0._r8 - mat(k, 802) = 0._r8 - mat(k, 805) = 0._r8 + mat(k, 796) = 0._r8 + mat(k, 798) = 0._r8 + mat(k, 804) = 0._r8 mat(k, 806) = 0._r8 mat(k, 811) = 0._r8 mat(k, 812) = 0._r8 @@ -2284,189 +2264,189 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 818) = 0._r8 mat(k, 819) = 0._r8 mat(k, 820) = 0._r8 + mat(k, 821) = 0._r8 mat(k, 822) = 0._r8 - mat(k, 823) = 0._r8 mat(k, 828) = 0._r8 mat(k, 829) = 0._r8 mat(k, 830) = 0._r8 - mat(k, 835) = 0._r8 - mat(k, 847) = 0._r8 + mat(k, 836) = 0._r8 + mat(k, 851) = 0._r8 mat(k, 854) = 0._r8 mat(k, 861) = 0._r8 mat(k, 862) = 0._r8 mat(k, 864) = 0._r8 - mat(k, 866) = 0._r8 + mat(k, 869) = 0._r8 mat(k, 875) = 0._r8 + mat(k, 878) = 0._r8 mat(k, 879) = 0._r8 - mat(k, 883) = 0._r8 - mat(k, 884) = 0._r8 - mat(k, 885) = 0._r8 + mat(k, 880) = 0._r8 + mat(k, 881) = 0._r8 + mat(k, 882) = 0._r8 mat(k, 886) = 0._r8 - mat(k, 887) = 0._r8 mat(k, 888) = 0._r8 mat(k, 905) = 0._r8 mat(k, 906) = 0._r8 mat(k, 908) = 0._r8 - mat(k, 910) = 0._r8 mat(k, 911) = 0._r8 - mat(k, 912) = 0._r8 - mat(k, 913) = 0._r8 + mat(k, 914) = 0._r8 + mat(k, 915) = 0._r8 + mat(k, 916) = 0._r8 mat(k, 917) = 0._r8 - mat(k, 918) = 0._r8 + mat(k, 919) = 0._r8 mat(k, 922) = 0._r8 mat(k, 929) = 0._r8 + mat(k, 930) = 0._r8 + mat(k, 933) = 0._r8 mat(k, 935) = 0._r8 - mat(k, 937) = 0._r8 - mat(k, 938) = 0._r8 - mat(k, 939) = 0._r8 + mat(k, 936) = 0._r8 mat(k, 940) = 0._r8 + mat(k, 941) = 0._r8 mat(k, 945) = 0._r8 mat(k, 946) = 0._r8 - mat(k, 963) = 0._r8 - mat(k, 964) = 0._r8 - mat(k, 966) = 0._r8 - mat(k, 967) = 0._r8 mat(k, 972) = 0._r8 - mat(k, 973) = 0._r8 - mat(k, 980) = 0._r8 - mat(k, 984) = 0._r8 + mat(k, 974) = 0._r8 + mat(k, 975) = 0._r8 + mat(k, 978) = 0._r8 + mat(k, 979) = 0._r8 + mat(k, 982) = 0._r8 mat(k, 985) = 0._r8 mat(k, 986) = 0._r8 - mat(k, 989) = 0._r8 - mat(k, 991) = 0._r8 - mat(k, 992) = 0._r8 - mat(k, 997) = 0._r8 + mat(k, 987) = 0._r8 + mat(k, 988) = 0._r8 + mat(k, 995) = 0._r8 mat(k,1001) = 0._r8 - mat(k,1003) = 0._r8 - mat(k,1004) = 0._r8 - mat(k,1008) = 0._r8 - mat(k,1009) = 0._r8 - mat(k,1010) = 0._r8 - mat(k,1013) = 0._r8 - mat(k,1017) = 0._r8 + mat(k,1014) = 0._r8 + mat(k,1015) = 0._r8 + mat(k,1016) = 0._r8 mat(k,1018) = 0._r8 mat(k,1019) = 0._r8 - mat(k,1020) = 0._r8 - mat(k,1023) = 0._r8 - mat(k,1025) = 0._r8 + mat(k,1021) = 0._r8 + mat(k,1024) = 0._r8 + mat(k,1026) = 0._r8 mat(k,1027) = 0._r8 - mat(k,1031) = 0._r8 - mat(k,1032) = 0._r8 - mat(k,1042) = 0._r8 + mat(k,1028) = 0._r8 + mat(k,1033) = 0._r8 + mat(k,1034) = 0._r8 + mat(k,1036) = 0._r8 + mat(k,1037) = 0._r8 + mat(k,1039) = 0._r8 + mat(k,1040) = 0._r8 + mat(k,1041) = 0._r8 + mat(k,1043) = 0._r8 + mat(k,1044) = 0._r8 + mat(k,1045) = 0._r8 + mat(k,1047) = 0._r8 + mat(k,1048) = 0._r8 + mat(k,1049) = 0._r8 mat(k,1051) = 0._r8 - mat(k,1060) = 0._r8 - mat(k,1061) = 0._r8 + mat(k,1053) = 0._r8 mat(k,1062) = 0._r8 - mat(k,1063) = 0._r8 mat(k,1066) = 0._r8 - mat(k,1083) = 0._r8 - mat(k,1086) = 0._r8 - mat(k,1091) = 0._r8 - mat(k,1100) = 0._r8 - mat(k,1101) = 0._r8 - mat(k,1104) = 0._r8 - mat(k,1105) = 0._r8 - mat(k,1106) = 0._r8 - mat(k,1107) = 0._r8 - mat(k,1112) = 0._r8 - mat(k,1114) = 0._r8 - mat(k,1115) = 0._r8 - mat(k,1117) = 0._r8 - mat(k,1129) = 0._r8 - mat(k,1139) = 0._r8 - mat(k,1142) = 0._r8 - mat(k,1143) = 0._r8 - mat(k,1144) = 0._r8 - mat(k,1145) = 0._r8 - mat(k,1146) = 0._r8 - mat(k,1147) = 0._r8 - mat(k,1149) = 0._r8 - mat(k,1150) = 0._r8 - mat(k,1151) = 0._r8 - mat(k,1153) = 0._r8 - mat(k,1155) = 0._r8 - mat(k,1156) = 0._r8 - mat(k,1158) = 0._r8 - mat(k,1159) = 0._r8 - mat(k,1160) = 0._r8 - mat(k,1161) = 0._r8 - mat(k,1187) = 0._r8 - mat(k,1192) = 0._r8 - mat(k,1193) = 0._r8 - mat(k,1195) = 0._r8 - mat(k,1196) = 0._r8 - mat(k,1198) = 0._r8 - mat(k,1199) = 0._r8 - mat(k,1201) = 0._r8 - mat(k,1202) = 0._r8 - mat(k,1203) = 0._r8 - mat(k,1210) = 0._r8 - mat(k,1215) = 0._r8 - mat(k,1229) = 0._r8 + mat(k,1067) = 0._r8 + mat(k,1068) = 0._r8 + mat(k,1071) = 0._r8 + mat(k,1073) = 0._r8 + mat(k,1074) = 0._r8 + mat(k,1076) = 0._r8 + mat(k,1077) = 0._r8 + mat(k,1079) = 0._r8 + mat(k,1082) = 0._r8 + mat(k,1084) = 0._r8 + mat(k,1088) = 0._r8 + mat(k,1092) = 0._r8 + mat(k,1124) = 0._r8 + mat(k,1127) = 0._r8 + mat(k,1130) = 0._r8 + mat(k,1138) = 0._r8 + mat(k,1140) = 0._r8 + mat(k,1168) = 0._r8 + mat(k,1170) = 0._r8 + mat(k,1180) = 0._r8 mat(k,1230) = 0._r8 - mat(k,1231) = 0._r8 - mat(k,1233) = 0._r8 - mat(k,1234) = 0._r8 - mat(k,1238) = 0._r8 - mat(k,1240) = 0._r8 - mat(k,1242) = 0._r8 - mat(k,1243) = 0._r8 - mat(k,1247) = 0._r8 - mat(k,1248) = 0._r8 - mat(k,1249) = 0._r8 - mat(k,1277) = 0._r8 - mat(k,1281) = 0._r8 - mat(k,1283) = 0._r8 - mat(k,1300) = 0._r8 - mat(k,1304) = 0._r8 - mat(k,1305) = 0._r8 + mat(k,1261) = 0._r8 + mat(k,1280) = 0._r8 + mat(k,1284) = 0._r8 + mat(k,1285) = 0._r8 + mat(k,1287) = 0._r8 + mat(k,1288) = 0._r8 + mat(k,1297) = 0._r8 + mat(k,1298) = 0._r8 + mat(k,1299) = 0._r8 + mat(k,1303) = 0._r8 + mat(k,1306) = 0._r8 mat(k,1307) = 0._r8 - mat(k,1308) = 0._r8 - mat(k,1313) = 0._r8 - mat(k,1315) = 0._r8 - mat(k,1319) = 0._r8 + mat(k,1309) = 0._r8 mat(k,1322) = 0._r8 - mat(k,1325) = 0._r8 + mat(k,1323) = 0._r8 mat(k,1326) = 0._r8 - mat(k,1329) = 0._r8 - mat(k,1377) = 0._r8 - mat(k,1411) = 0._r8 + mat(k,1334) = 0._r8 + mat(k,1335) = 0._r8 + mat(k,1336) = 0._r8 + mat(k,1343) = 0._r8 + mat(k,1346) = 0._r8 + mat(k,1347) = 0._r8 + mat(k,1350) = 0._r8 + mat(k,1356) = 0._r8 + mat(k,1358) = 0._r8 + mat(k,1359) = 0._r8 + mat(k,1360) = 0._r8 + mat(k,1368) = 0._r8 + mat(k,1375) = 0._r8 + mat(k,1385) = 0._r8 + mat(k,1387) = 0._r8 + mat(k,1388) = 0._r8 + mat(k,1389) = 0._r8 + mat(k,1392) = 0._r8 + mat(k,1403) = 0._r8 + mat(k,1409) = 0._r8 + mat(k,1417) = 0._r8 + mat(k,1422) = 0._r8 + mat(k,1426) = 0._r8 mat(k,1427) = 0._r8 - mat(k,1434) = 0._r8 + mat(k,1428) = 0._r8 + mat(k,1431) = 0._r8 + mat(k,1432) = 0._r8 + mat(k,1433) = 0._r8 + mat(k,1436) = 0._r8 mat(k,1437) = 0._r8 - mat(k,1441) = 0._r8 - mat(k,1453) = 0._r8 - mat(k,1454) = 0._r8 - mat(k,1456) = 0._r8 - mat(k,1461) = 0._r8 - mat(k,1463) = 0._r8 + mat(k,1442) = 0._r8 + mat(k,1452) = 0._r8 + mat(k,1459) = 0._r8 + mat(k,1462) = 0._r8 + mat(k,1466) = 0._r8 + mat(k,1472) = 0._r8 + mat(k,1473) = 0._r8 + mat(k,1478) = 0._r8 + mat(k,1486) = 0._r8 + mat(k,1488) = 0._r8 + mat(k,1491) = 0._r8 + mat(k,1492) = 0._r8 + mat(k,1493) = 0._r8 + mat(k,1494) = 0._r8 + mat(k,1495) = 0._r8 + mat(k,1496) = 0._r8 + mat(k,1498) = 0._r8 + mat(k,1500) = 0._r8 mat(k,1501) = 0._r8 + mat(k,1503) = 0._r8 mat(k,1504) = 0._r8 - mat(k,1509) = 0._r8 + mat(k,1505) = 0._r8 + mat(k,1506) = 0._r8 + mat(k,1507) = 0._r8 + mat(k,1508) = 0._r8 mat(k,1510) = 0._r8 - mat(k,1511) = 0._r8 mat(k,1518) = 0._r8 mat(k,1519) = 0._r8 - mat(k,1520) = 0._r8 - mat(k,1521) = 0._r8 mat(k,1522) = 0._r8 + mat(k,1523) = 0._r8 + mat(k,1524) = 0._r8 mat(k,1525) = 0._r8 - mat(k,1526) = 0._r8 - mat(k,1528) = 0._r8 + mat(k,1530) = 0._r8 + mat(k,1532) = 0._r8 mat(k,1533) = 0._r8 - mat(k,1538) = 0._r8 - mat(k,1539) = 0._r8 - mat(k,1541) = 0._r8 - mat(k,1542) = 0._r8 - mat(k,1543) = 0._r8 - mat(k,1544) = 0._r8 - mat(k,1547) = 0._r8 - mat(k,1548) = 0._r8 - mat(k,1549) = 0._r8 - mat(k,1550) = 0._r8 - mat(k,1551) = 0._r8 - mat(k,1554) = 0._r8 + mat(k,1535) = 0._r8 mat(k,1555) = 0._r8 + mat(k,1557) = 0._r8 mat(k,1562) = 0._r8 mat(k,1564) = 0._r8 mat(k,1565) = 0._r8 @@ -2475,15 +2455,15 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k,1568) = 0._r8 mat(k,1569) = 0._r8 mat(k,1570) = 0._r8 - mat(k,1571) = 0._r8 mat(k,1572) = 0._r8 mat(k,1573) = 0._r8 - mat(k,1574) = 0._r8 - mat(k,1575) = 0._r8 mat(k,1576) = 0._r8 + mat(k,1577) = 0._r8 mat(k,1578) = 0._r8 - mat(k,1581) = 0._r8 + mat(k,1579) = 0._r8 + mat(k,1580) = 0._r8 mat(k,1582) = 0._r8 + mat(k,1583) = 0._r8 mat(k, 1) = mat(k, 1) - dti(k) mat(k, 2) = mat(k, 2) - dti(k) mat(k, 3) = mat(k, 3) - dti(k) @@ -2510,32 +2490,33 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 24) = mat(k, 24) - dti(k) mat(k, 25) = mat(k, 25) - dti(k) mat(k, 26) = mat(k, 26) - dti(k) - mat(k, 28) = mat(k, 28) - dti(k) + mat(k, 27) = mat(k, 27) - dti(k) mat(k, 29) = mat(k, 29) - dti(k) - mat(k, 32) = mat(k, 32) - dti(k) - mat(k, 35) = mat(k, 35) - dti(k) - mat(k, 38) = mat(k, 38) - dti(k) - mat(k, 41) = mat(k, 41) - dti(k) - mat(k, 45) = mat(k, 45) - dti(k) - mat(k, 49) = mat(k, 49) - dti(k) - mat(k, 53) = mat(k, 53) - dti(k) - mat(k, 57) = mat(k, 57) - dti(k) - mat(k, 61) = mat(k, 61) - dti(k) - mat(k, 65) = mat(k, 65) - dti(k) - mat(k, 68) = mat(k, 68) - dti(k) - mat(k, 71) = mat(k, 71) - dti(k) - mat(k, 76) = mat(k, 76) - dti(k) - mat(k, 81) = mat(k, 81) - dti(k) - mat(k, 86) = mat(k, 86) - dti(k) - mat(k, 91) = mat(k, 91) - dti(k) - mat(k, 93) = mat(k, 93) - dti(k) - mat(k, 96) = mat(k, 96) - dti(k) - mat(k, 98) = mat(k, 98) - dti(k) - mat(k, 101) = mat(k, 101) - dti(k) - mat(k, 104) = mat(k, 104) - dti(k) - mat(k, 107) = mat(k, 107) - dti(k) - mat(k, 112) = mat(k, 112) - dti(k) - mat(k, 117) = mat(k, 117) - dti(k) + mat(k, 30) = mat(k, 30) - dti(k) + mat(k, 33) = mat(k, 33) - dti(k) + mat(k, 36) = mat(k, 36) - dti(k) + mat(k, 39) = mat(k, 39) - dti(k) + mat(k, 42) = mat(k, 42) - dti(k) + mat(k, 46) = mat(k, 46) - dti(k) + mat(k, 50) = mat(k, 50) - dti(k) + mat(k, 54) = mat(k, 54) - dti(k) + mat(k, 58) = mat(k, 58) - dti(k) + mat(k, 62) = mat(k, 62) - dti(k) + mat(k, 66) = mat(k, 66) - dti(k) + mat(k, 69) = mat(k, 69) - dti(k) + mat(k, 72) = mat(k, 72) - dti(k) + mat(k, 77) = mat(k, 77) - dti(k) + mat(k, 82) = mat(k, 82) - dti(k) + mat(k, 87) = mat(k, 87) - dti(k) + mat(k, 92) = mat(k, 92) - dti(k) + mat(k, 94) = mat(k, 94) - dti(k) + mat(k, 97) = mat(k, 97) - dti(k) + mat(k, 99) = mat(k, 99) - dti(k) + mat(k, 102) = mat(k, 102) - dti(k) + mat(k, 105) = mat(k, 105) - dti(k) + mat(k, 110) = mat(k, 110) - dti(k) + mat(k, 114) = mat(k, 114) - dti(k) + mat(k, 119) = mat(k, 119) - dti(k) mat(k, 122) = mat(k, 122) - dti(k) mat(k, 126) = mat(k, 126) - dti(k) mat(k, 131) = mat(k, 131) - dti(k) @@ -2576,15 +2557,15 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 358) = mat(k, 358) - dti(k) mat(k, 365) = mat(k, 365) - dti(k) mat(k, 370) = mat(k, 370) - dti(k) - mat(k, 377) = mat(k, 377) - dti(k) - mat(k, 386) = mat(k, 386) - dti(k) - mat(k, 394) = mat(k, 394) - dti(k) - mat(k, 401) = mat(k, 401) - dti(k) + mat(k, 375) = mat(k, 375) - dti(k) + mat(k, 382) = mat(k, 382) - dti(k) + mat(k, 392) = mat(k, 392) - dti(k) + mat(k, 400) = mat(k, 400) - dti(k) mat(k, 411) = mat(k, 411) - dti(k) mat(k, 424) = mat(k, 424) - dti(k) - mat(k, 433) = mat(k, 433) - dti(k) + mat(k, 434) = mat(k, 434) - dti(k) mat(k, 442) = mat(k, 442) - dti(k) - mat(k, 451) = mat(k, 451) - dti(k) + mat(k, 450) = mat(k, 450) - dti(k) mat(k, 460) = mat(k, 460) - dti(k) mat(k, 473) = mat(k, 473) - dti(k) mat(k, 490) = mat(k, 490) - dti(k) @@ -2593,11 +2574,11 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 526) = mat(k, 526) - dti(k) mat(k, 539) = mat(k, 539) - dti(k) mat(k, 548) = mat(k, 548) - dti(k) - mat(k, 561) = mat(k, 561) - dti(k) + mat(k, 556) = mat(k, 556) - dti(k) mat(k, 573) = mat(k, 573) - dti(k) mat(k, 584) = mat(k, 584) - dti(k) - mat(k, 595) = mat(k, 595) - dti(k) - mat(k, 607) = mat(k, 607) - dti(k) + mat(k, 594) = mat(k, 594) - dti(k) + mat(k, 602) = mat(k, 602) - dti(k) mat(k, 613) = mat(k, 613) - dti(k) mat(k, 623) = mat(k, 623) - dti(k) mat(k, 640) = mat(k, 640) - dti(k) @@ -2616,21 +2597,21 @@ subroutine nlnmat_finit( avec_len, mat, lmat, dti ) mat(k, 860) = mat(k, 860) - dti(k) mat(k, 876) = mat(k, 876) - dti(k) mat(k, 909) = mat(k, 909) - dti(k) - mat(k, 932) = mat(k, 932) - dti(k) - mat(k, 959) = mat(k, 959) - dti(k) - mat(k, 996) = mat(k, 996) - dti(k) - mat(k,1021) = mat(k,1021) - dti(k) - mat(k,1081) = mat(k,1081) - dti(k) - mat(k,1128) = mat(k,1128) - dti(k) - mat(k,1152) = mat(k,1152) - dti(k) - mat(k,1194) = mat(k,1194) - dti(k) - mat(k,1241) = mat(k,1241) - dti(k) - mat(k,1284) = mat(k,1284) - dti(k) - mat(k,1323) = mat(k,1323) - dti(k) - mat(k,1413) = mat(k,1413) - dti(k) - mat(k,1459) = mat(k,1459) - dti(k) - mat(k,1508) = mat(k,1508) - dti(k) - mat(k,1534) = mat(k,1534) - dti(k) + mat(k, 931) = mat(k, 931) - dti(k) + mat(k, 973) = mat(k, 973) - dti(k) + mat(k,1020) = mat(k,1020) - dti(k) + mat(k,1042) = mat(k,1042) - dti(k) + mat(k,1080) = mat(k,1080) - dti(k) + mat(k,1129) = mat(k,1129) - dti(k) + mat(k,1172) = mat(k,1172) - dti(k) + mat(k,1262) = mat(k,1262) - dti(k) + mat(k,1301) = mat(k,1301) - dti(k) + mat(k,1329) = mat(k,1329) - dti(k) + mat(k,1354) = mat(k,1354) - dti(k) + mat(k,1414) = mat(k,1414) - dti(k) + mat(k,1439) = mat(k,1439) - dti(k) + mat(k,1485) = mat(k,1485) - dti(k) + mat(k,1509) = mat(k,1509) - dti(k) mat(k,1556) = mat(k,1556) - dti(k) mat(k,1584) = mat(k,1584) - dti(k) end do @@ -2654,7 +2635,6 @@ subroutine nlnmat( avec_len, mat, y, rxt, lmat, dti ) call nlnmat05( avec_len, mat, y, rxt ) call nlnmat06( avec_len, mat, y, rxt ) call nlnmat07( avec_len, mat, y, rxt ) - call nlnmat08( avec_len, mat, y, rxt ) call nlnmat_finit( avec_len, mat, lmat, dti ) end subroutine nlnmat end module mo_nln_matrix diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_prod_loss.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_prod_loss.F90 index 34417a31a7..8ebfed6570 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_prod_loss.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_prod_loss.F90 @@ -27,9 +27,9 @@ subroutine exp_prod_loss( ofl, ofu, prod, loss, y, & ! ... loss and production for Explicit method !-------------------------------------------------------------------- do k = ofl,ofu - loss(k,1) = ( + het_rates(k,136))* y(k,136) + loss(k,1) = ( + het_rates(k,87))* y(k,87) prod(k,1) = 0._r8 - loss(k,2) = ( + het_rates(k,137))* y(k,137) + loss(k,2) = ( + het_rates(k,90))* y(k,90) prod(k,2) = 0._r8 end do end subroutine exp_prod_loss @@ -59,824 +59,834 @@ subroutine imp_prod_loss( avec_len, prod, loss, y, & prod(k,1) = 0._r8 loss(k,2) = ( + het_rates(k,2))* y(k,2) prod(k,2) = 0._r8 - loss(k,29) = (rxt(k,344)* y(k,111) + het_rates(k,3))* y(k,3) - prod(k,29) = 0._r8 - loss(k,131) = (rxt(k,218)* y(k,27) +rxt(k,220)* y(k,108) +rxt(k,219) & - * y(k,139) + het_rates(k,4))* y(k,4) - prod(k,131) = (rxt(k,48) +2.000_r8*rxt(k,221)*y(k,6) +rxt(k,222)*y(k,45) + & - rxt(k,223)*y(k,45) +rxt(k,226)*y(k,97) +rxt(k,229)*y(k,106) + & - rxt(k,230)*y(k,111) +rxt(k,376)*y(k,122))*y(k,6) & - + (rxt(k,208)*y(k,19) +rxt(k,234)*y(k,20) + & - 3.000_r8*rxt(k,235)*y(k,41) +2.000_r8*rxt(k,236)*y(k,64) + & - rxt(k,237)*y(k,67) +2.000_r8*rxt(k,257)*y(k,26) +rxt(k,258)*y(k,28)) & - *y(k,144) + (rxt(k,232)*y(k,67) +2.000_r8*rxt(k,246)*y(k,26) + & - rxt(k,248)*y(k,28) +3.000_r8*rxt(k,253)*y(k,41))*y(k,111) & - + (2.000_r8*rxt(k,245)*y(k,26) +rxt(k,247)*y(k,28) + & - 3.000_r8*rxt(k,252)*y(k,41))*y(k,42) + (rxt(k,72) + & - rxt(k,231)*y(k,106))*y(k,67) +rxt(k,47)*y(k,5) +rxt(k,50)*y(k,7) & - +rxt(k,52)*y(k,19) +rxt(k,53)*y(k,20) +2.000_r8*rxt(k,59)*y(k,26) & - +rxt(k,60)*y(k,28) +3.000_r8*rxt(k,63)*y(k,41) +2.000_r8*rxt(k,71) & - *y(k,64) +rxt(k,78)*y(k,75) + loss(k,30) = (rxt(k,344)* y(k,106) + het_rates(k,3))* y(k,3) + prod(k,30) = 0._r8 + loss(k,132) = (rxt(k,218)* y(k,25) +rxt(k,220)* y(k,102) +rxt(k,219) & + * y(k,134) + het_rates(k,4))* y(k,4) + prod(k,132) = (rxt(k,48) +2.000_r8*rxt(k,221)*y(k,6) +rxt(k,222)*y(k,42) + & + rxt(k,223)*y(k,42) +rxt(k,226)*y(k,91) +rxt(k,229)*y(k,100) + & + rxt(k,230)*y(k,106) +rxt(k,376)*y(k,115))*y(k,6) & + + (rxt(k,208)*y(k,17) +rxt(k,234)*y(k,18) + & + 3.000_r8*rxt(k,235)*y(k,38) +2.000_r8*rxt(k,236)*y(k,59) + & + rxt(k,237)*y(k,62) +2.000_r8*rxt(k,257)*y(k,24) +rxt(k,258)*y(k,26)) & + *y(k,142) + (rxt(k,232)*y(k,62) +2.000_r8*rxt(k,246)*y(k,24) + & + rxt(k,248)*y(k,26) +3.000_r8*rxt(k,253)*y(k,38))*y(k,106) & + + (2.000_r8*rxt(k,245)*y(k,24) +rxt(k,247)*y(k,26) + & + 3.000_r8*rxt(k,252)*y(k,38))*y(k,39) + (rxt(k,72) + & + rxt(k,231)*y(k,100))*y(k,62) +rxt(k,47)*y(k,5) +rxt(k,50)*y(k,7) & + +rxt(k,52)*y(k,17) +rxt(k,53)*y(k,18) +2.000_r8*rxt(k,59)*y(k,24) & + +rxt(k,60)*y(k,26) +3.000_r8*rxt(k,63)*y(k,38) +2.000_r8*rxt(k,71) & + *y(k,59) +rxt(k,78)*y(k,70) loss(k,49) = ( + rxt(k,47) + het_rates(k,5))* y(k,5) - prod(k,49) = (rxt(k,402)*y(k,75) +rxt(k,407)*y(k,75))*y(k,71) & - +rxt(k,224)*y(k,45)*y(k,6) - loss(k,133) = (2._r8*rxt(k,221)* y(k,6) + (rxt(k,222) +rxt(k,223) + & - rxt(k,224))* y(k,45) +rxt(k,226)* y(k,97) +rxt(k,227)* y(k,98) & - +rxt(k,229)* y(k,106) +rxt(k,230)* y(k,111) +rxt(k,376)* y(k,122) & - +rxt(k,225)* y(k,139) + rxt(k,48) + het_rates(k,6))* y(k,6) - prod(k,133) = (rxt(k,49) +rxt(k,228)*y(k,106))*y(k,7) +rxt(k,220)*y(k,108) & - *y(k,4) +rxt(k,238)*y(k,144)*y(k,67) +rxt(k,233)*y(k,106)*y(k,75) - loss(k,82) = (rxt(k,228)* y(k,106) + rxt(k,49) + rxt(k,50) + rxt(k,396) & + prod(k,49) = (rxt(k,402)*y(k,70) +rxt(k,407)*y(k,70))*y(k,66) & + +rxt(k,224)*y(k,42)*y(k,6) + loss(k,144) = (2._r8*rxt(k,221)* y(k,6) + (rxt(k,222) +rxt(k,223) + & + rxt(k,224))* y(k,42) +rxt(k,226)* y(k,91) +rxt(k,227)* y(k,92) & + +rxt(k,229)* y(k,100) +rxt(k,230)* y(k,106) +rxt(k,376)* y(k,115) & + +rxt(k,225)* y(k,134) + rxt(k,48) + het_rates(k,6))* y(k,6) + prod(k,144) = (rxt(k,49) +rxt(k,228)*y(k,100))*y(k,7) +rxt(k,220)*y(k,102) & + *y(k,4) +rxt(k,238)*y(k,142)*y(k,62) +rxt(k,233)*y(k,100)*y(k,70) + loss(k,79) = (rxt(k,228)* y(k,100) + rxt(k,49) + rxt(k,50) + rxt(k,396) & + rxt(k,399) + rxt(k,404) + het_rates(k,7))* y(k,7) - prod(k,82) =rxt(k,227)*y(k,98)*y(k,6) + prod(k,79) =rxt(k,227)*y(k,92)*y(k,6) loss(k,3) = ( + het_rates(k,8))* y(k,8) prod(k,3) = 0._r8 - loss(k,74) = (rxt(k,276)* y(k,42) +rxt(k,277)* y(k,108) +rxt(k,301)* y(k,111) & + loss(k,74) = (rxt(k,276)* y(k,39) +rxt(k,277)* y(k,102) +rxt(k,301)* y(k,106) & + het_rates(k,9))* y(k,9) prod(k,74) = 0._r8 - loss(k,98) = (2._r8*rxt(k,278)* y(k,10) +rxt(k,279)* y(k,37) +rxt(k,281) & - * y(k,97) +rxt(k,280)* y(k,139) + het_rates(k,10))* y(k,10) - prod(k,98) = (rxt(k,284)*y(k,42) +rxt(k,285)*y(k,111))*y(k,13) & - +.500_r8*rxt(k,283)*y(k,111)*y(k,12) - loss(k,54) = (rxt(k,282)* y(k,111) + het_rates(k,11))* y(k,11) - prod(k,54) = (.400_r8*rxt(k,278)*y(k,10) +.200_r8*rxt(k,279)*y(k,37))*y(k,10) - loss(k,62) = (rxt(k,283)* y(k,111) + rxt(k,20) + het_rates(k,12))* y(k,12) - prod(k,62) =rxt(k,280)*y(k,139)*y(k,10) - loss(k,60) = (rxt(k,284)* y(k,42) +rxt(k,285)* y(k,111) + het_rates(k,13)) & - * y(k,13) - prod(k,60) = 0._r8 - loss(k,116) = (rxt(k,304)* y(k,99) +rxt(k,305)* y(k,108) +rxt(k,322) & - * y(k,111) + het_rates(k,14))* y(k,14) - prod(k,116) =.130_r8*rxt(k,355)*y(k,108)*y(k,79) +.700_r8*rxt(k,40)*y(k,88) - loss(k,102) = (rxt(k,306)* y(k,37) +rxt(k,308)* y(k,97) +rxt(k,307)* y(k,139) & - + het_rates(k,15))* y(k,15) - prod(k,102) = (rxt(k,309)*y(k,16) +rxt(k,310)*y(k,17) + & - 1.670_r8*rxt(k,344)*y(k,3))*y(k,111) - loss(k,68) = (rxt(k,309)* y(k,111) + rxt(k,21) + het_rates(k,16))* y(k,16) - prod(k,68) =rxt(k,307)*y(k,139)*y(k,15) - loss(k,34) = (rxt(k,310)* y(k,111) + het_rates(k,17))* y(k,17) + loss(k,55) = (rxt(k,282)* y(k,106) + het_rates(k,10))* y(k,10) + prod(k,55) = (.400_r8*rxt(k,278)*y(k,128) +.200_r8*rxt(k,279)*y(k,34)) & + *y(k,128) + loss(k,63) = (rxt(k,283)* y(k,106) + rxt(k,20) + het_rates(k,11))* y(k,11) + prod(k,63) =rxt(k,280)*y(k,134)*y(k,128) + loss(k,61) = (rxt(k,284)* y(k,39) +rxt(k,285)* y(k,106) + het_rates(k,12)) & + * y(k,12) + prod(k,61) = 0._r8 + loss(k,117) = (rxt(k,304)* y(k,93) +rxt(k,305)* y(k,102) +rxt(k,322) & + * y(k,106) + het_rates(k,13))* y(k,13) + prod(k,117) =.130_r8*rxt(k,355)*y(k,102)*y(k,74) +.700_r8*rxt(k,40)*y(k,80) + loss(k,69) = (rxt(k,309)* y(k,106) + rxt(k,21) + het_rates(k,14))* y(k,14) + prod(k,69) =rxt(k,307)*y(k,134)*y(k,129) + loss(k,34) = (rxt(k,310)* y(k,106) + het_rates(k,15))* y(k,15) prod(k,34) = 0._r8 - loss(k,31) = (rxt(k,207)* y(k,144) + rxt(k,51) + het_rates(k,18))* y(k,18) - prod(k,31) = 0._r8 - loss(k,40) = (rxt(k,208)* y(k,144) + rxt(k,52) + het_rates(k,19))* y(k,19) - prod(k,40) = 0._r8 - loss(k,41) = (rxt(k,234)* y(k,144) + rxt(k,53) + het_rates(k,20))* y(k,20) + loss(k,32) = (rxt(k,207)* y(k,142) + rxt(k,51) + het_rates(k,16))* y(k,16) + prod(k,32) = 0._r8 + loss(k,41) = (rxt(k,208)* y(k,142) + rxt(k,52) + het_rates(k,17))* y(k,17) prod(k,41) = 0._r8 - loss(k,35) = (rxt(k,209)* y(k,144) + rxt(k,54) + het_rates(k,21))* y(k,21) - prod(k,35) = 0._r8 - loss(k,42) = (rxt(k,210)* y(k,144) + rxt(k,55) + het_rates(k,22))* y(k,22) + loss(k,42) = (rxt(k,234)* y(k,142) + rxt(k,53) + het_rates(k,18))* y(k,18) prod(k,42) = 0._r8 - loss(k,36) = (rxt(k,211)* y(k,144) + rxt(k,56) + het_rates(k,23))* y(k,23) - prod(k,36) = 0._r8 - loss(k,43) = (rxt(k,212)* y(k,144) + rxt(k,57) + het_rates(k,24))* y(k,24) + loss(k,35) = (rxt(k,209)* y(k,142) + rxt(k,54) + het_rates(k,19))* y(k,19) + prod(k,35) = 0._r8 + loss(k,43) = (rxt(k,210)* y(k,142) + rxt(k,55) + het_rates(k,20))* y(k,20) prod(k,43) = 0._r8 - loss(k,37) = (rxt(k,213)* y(k,144) + rxt(k,58) + het_rates(k,25))* y(k,25) + loss(k,36) = (rxt(k,211)* y(k,142) + rxt(k,56) + het_rates(k,21))* y(k,21) + prod(k,36) = 0._r8 + loss(k,44) = (rxt(k,212)* y(k,142) + rxt(k,57) + het_rates(k,22))* y(k,22) + prod(k,44) = 0._r8 + loss(k,37) = (rxt(k,213)* y(k,142) + rxt(k,58) + het_rates(k,23))* y(k,23) prod(k,37) = 0._r8 - loss(k,75) = (rxt(k,245)* y(k,42) +rxt(k,246)* y(k,111) +rxt(k,257)* y(k,144) & - + rxt(k,59) + het_rates(k,26))* y(k,26) - prod(k,75) = 0._r8 - loss(k,136) = (rxt(k,218)* y(k,4) +rxt(k,182)* y(k,42) +rxt(k,262)* y(k,99) & - +rxt(k,263)* y(k,106) +rxt(k,264)* y(k,111) + rxt(k,22) + rxt(k,23) & - + het_rates(k,27))* y(k,27) - prod(k,136) = (rxt(k,189)*y(k,45) +2.000_r8*rxt(k,265)*y(k,37) + & - rxt(k,266)*y(k,37) +rxt(k,268)*y(k,97) +.700_r8*rxt(k,279)*y(k,10) + & - rxt(k,289)*y(k,32) +rxt(k,306)*y(k,15) +.800_r8*rxt(k,318)*y(k,118) + & - .880_r8*rxt(k,325)*y(k,84) +2.000_r8*rxt(k,334)*y(k,86) + & - 1.200_r8*rxt(k,351)*y(k,81) +.800_r8*rxt(k,361)*y(k,134))*y(k,37) & - + (.500_r8*rxt(k,295)*y(k,57) +rxt(k,316)*y(k,114) + & - rxt(k,320)*y(k,118) +.250_r8*rxt(k,328)*y(k,84) +rxt(k,337)*y(k,86) + & - .072_r8*rxt(k,348)*y(k,80) +.550_r8*rxt(k,353)*y(k,81) + & - .250_r8*rxt(k,363)*y(k,134))*y(k,97) + (rxt(k,269)*y(k,38) + & - .300_r8*rxt(k,270)*y(k,39) +.500_r8*rxt(k,293)*y(k,36) + & - .800_r8*rxt(k,298)*y(k,60) +rxt(k,300)*y(k,113) + & - .500_r8*rxt(k,339)*y(k,87))*y(k,111) + (rxt(k,277)*y(k,9) + & - .500_r8*rxt(k,305)*y(k,14) +.120_r8*rxt(k,330)*y(k,83) + & - .600_r8*rxt(k,340)*y(k,88) +.910_r8*rxt(k,355)*y(k,79))*y(k,108) & - + (.250_r8*rxt(k,324)*y(k,84) +rxt(k,333)*y(k,86) + & - .600_r8*rxt(k,350)*y(k,81) +.250_r8*rxt(k,360)*y(k,134))*y(k,32) & - + (.250_r8*rxt(k,327)*y(k,84) +rxt(k,338)*y(k,86) + & - .072_r8*rxt(k,349)*y(k,80) +.600_r8*rxt(k,354)*y(k,81))*y(k,99) & - + (.180_r8*rxt(k,29) +rxt(k,273)*y(k,144) +rxt(k,274)*y(k,144)) & - *y(k,40) + (.150_r8*rxt(k,319)*y(k,118) +.450_r8*rxt(k,335)*y(k,86) + & - .206_r8*rxt(k,347)*y(k,80))*y(k,139) +rxt(k,28)*y(k,39) & - +2.000_r8*rxt(k,296)*y(k,56) +rxt(k,33)*y(k,60) +rxt(k,35)*y(k,77) & - +rxt(k,36)*y(k,82) +1.340_r8*rxt(k,37)*y(k,83) & - +2.000_r8*rxt(k,336)*y(k,86)*y(k,86) +rxt(k,41)*y(k,100) +rxt(k,42) & - *y(k,112) +rxt(k,44)*y(k,117) +rxt(k,45)*y(k,119) - loss(k,86) = (rxt(k,247)* y(k,42) +rxt(k,248)* y(k,111) +rxt(k,258)* y(k,144) & - + rxt(k,60) + het_rates(k,28))* y(k,28) - prod(k,86) = 0._r8 - loss(k,33) = (rxt(k,249)* y(k,111) + rxt(k,61) + het_rates(k,29))* y(k,29) - prod(k,33) = 0._r8 - loss(k,117) = (rxt(k,286)* y(k,99) +rxt(k,287)* y(k,111) + rxt(k,24) & - + het_rates(k,30))* y(k,30) - prod(k,117) = (1.600_r8*rxt(k,278)*y(k,10) +.800_r8*rxt(k,279)*y(k,37) + & - rxt(k,281)*y(k,97))*y(k,10) + (rxt(k,20) + & - .500_r8*rxt(k,283)*y(k,111))*y(k,12) + (.270_r8*rxt(k,308)*y(k,15) + & - rxt(k,316)*y(k,114))*y(k,97) + (.500_r8*rxt(k,305)*y(k,14) + & - .100_r8*rxt(k,340)*y(k,88))*y(k,108) +rxt(k,282)*y(k,111)*y(k,11) & - +rxt(k,44)*y(k,117) - loss(k,66) = (rxt(k,250)* y(k,42) +rxt(k,251)* y(k,111) + rxt(k,62) & - + het_rates(k,31))* y(k,31) + loss(k,76) = (rxt(k,245)* y(k,39) +rxt(k,246)* y(k,106) +rxt(k,257)* y(k,142) & + + rxt(k,59) + het_rates(k,24))* y(k,24) + prod(k,76) = 0._r8 + loss(k,146) = (rxt(k,218)* y(k,4) +rxt(k,182)* y(k,39) +rxt(k,262)* y(k,93) & + +rxt(k,263)* y(k,100) +rxt(k,264)* y(k,106) + rxt(k,22) + rxt(k,23) & + + het_rates(k,25))* y(k,25) + prod(k,146) = (rxt(k,189)*y(k,42) +2.000_r8*rxt(k,265)*y(k,34) + & + rxt(k,266)*y(k,34) +rxt(k,268)*y(k,91) +.700_r8*rxt(k,279)*y(k,128) + & + rxt(k,289)*y(k,130) +rxt(k,306)*y(k,129) + & + .800_r8*rxt(k,318)*y(k,150) +.880_r8*rxt(k,325)*y(k,136) + & + 2.000_r8*rxt(k,334)*y(k,137) +1.200_r8*rxt(k,351)*y(k,135) + & + .800_r8*rxt(k,361)*y(k,151))*y(k,34) + (.500_r8*rxt(k,295)*y(k,133) + & + rxt(k,316)*y(k,149) +rxt(k,320)*y(k,150) + & + .250_r8*rxt(k,328)*y(k,136) +rxt(k,337)*y(k,137) + & + .072_r8*rxt(k,348)*y(k,75) +.550_r8*rxt(k,353)*y(k,135) + & + .250_r8*rxt(k,363)*y(k,151))*y(k,91) + (rxt(k,269)*y(k,35) + & + .300_r8*rxt(k,270)*y(k,36) +.500_r8*rxt(k,293)*y(k,33) + & + .800_r8*rxt(k,298)*y(k,55) +rxt(k,300)*y(k,108) + & + .500_r8*rxt(k,339)*y(k,79))*y(k,106) + (rxt(k,277)*y(k,9) + & + .500_r8*rxt(k,305)*y(k,13) +.120_r8*rxt(k,330)*y(k,77) + & + .600_r8*rxt(k,340)*y(k,80) +.910_r8*rxt(k,355)*y(k,74))*y(k,102) & + + (.250_r8*rxt(k,327)*y(k,136) +rxt(k,338)*y(k,137) + & + .072_r8*rxt(k,349)*y(k,75) +.600_r8*rxt(k,354)*y(k,135))*y(k,93) & + + (.250_r8*rxt(k,324)*y(k,136) +rxt(k,333)*y(k,137) + & + .600_r8*rxt(k,350)*y(k,135) +.250_r8*rxt(k,360)*y(k,151))*y(k,130) & + + (.180_r8*rxt(k,29) +rxt(k,273)*y(k,142) +rxt(k,274)*y(k,142)) & + *y(k,37) + (.150_r8*rxt(k,319)*y(k,150) + & + .450_r8*rxt(k,335)*y(k,137) +.206_r8*rxt(k,347)*y(k,75))*y(k,134) & + +rxt(k,28)*y(k,36) +rxt(k,33)*y(k,55) +rxt(k,35)*y(k,72) +rxt(k,36) & + *y(k,76) +1.340_r8*rxt(k,37)*y(k,77) +rxt(k,41)*y(k,94) +rxt(k,42) & + *y(k,107) +rxt(k,44)*y(k,111) +rxt(k,45)*y(k,112) & + +2.000_r8*rxt(k,296)*y(k,132) +2.000_r8*rxt(k,336)*y(k,137)*y(k,137) + loss(k,87) = (rxt(k,247)* y(k,39) +rxt(k,248)* y(k,106) +rxt(k,258)* y(k,142) & + + rxt(k,60) + het_rates(k,26))* y(k,26) + prod(k,87) = 0._r8 + loss(k,38) = (rxt(k,249)* y(k,106) + rxt(k,61) + het_rates(k,27))* y(k,27) + prod(k,38) = 0._r8 + loss(k,118) = (rxt(k,286)* y(k,93) +rxt(k,287)* y(k,106) + rxt(k,24) & + + het_rates(k,28))* y(k,28) + prod(k,118) = (rxt(k,281)*y(k,128) +.270_r8*rxt(k,308)*y(k,129) + & + rxt(k,316)*y(k,149))*y(k,91) + (rxt(k,20) + & + .500_r8*rxt(k,283)*y(k,106))*y(k,11) + (.500_r8*rxt(k,305)*y(k,13) + & + .100_r8*rxt(k,340)*y(k,80))*y(k,102) & + + (1.600_r8*rxt(k,278)*y(k,128) +.800_r8*rxt(k,279)*y(k,34)) & + *y(k,128) +rxt(k,282)*y(k,106)*y(k,10) +rxt(k,44)*y(k,111) + loss(k,66) = (rxt(k,250)* y(k,39) +rxt(k,251)* y(k,106) + rxt(k,62) & + + het_rates(k,29))* y(k,29) prod(k,66) = 0._r8 - loss(k,126) = (2._r8*rxt(k,288)* y(k,32) +rxt(k,289)* y(k,37) +rxt(k,350) & - * y(k,81) +rxt(k,324)* y(k,84) +rxt(k,291)* y(k,97) +rxt(k,302) & - * y(k,98) +rxt(k,360)* y(k,134) +rxt(k,290)* y(k,139) & - + het_rates(k,32))* y(k,32) - prod(k,126) = (rxt(k,334)*y(k,37) +.450_r8*rxt(k,335)*y(k,139) + & - 2.000_r8*rxt(k,336)*y(k,86) +rxt(k,337)*y(k,97) +rxt(k,338)*y(k,99)) & - *y(k,86) + (.530_r8*rxt(k,324)*y(k,32) +.260_r8*rxt(k,325)*y(k,37) + & - .530_r8*rxt(k,327)*y(k,99) +.530_r8*rxt(k,328)*y(k,97))*y(k,84) & - + (rxt(k,26) +rxt(k,311)*y(k,99) +rxt(k,312)*y(k,111))*y(k,34) & - + (.100_r8*rxt(k,330)*y(k,83) +.280_r8*rxt(k,340)*y(k,88) + & - .080_r8*rxt(k,355)*y(k,79))*y(k,108) + (.300_r8*rxt(k,318)*y(k,37) + & - .150_r8*rxt(k,319)*y(k,139) +rxt(k,320)*y(k,97))*y(k,118) & - + (rxt(k,286)*y(k,99) +rxt(k,287)*y(k,111))*y(k,30) & - + (.600_r8*rxt(k,43) +rxt(k,303))*y(k,113) +rxt(k,25)*y(k,33) & - +.500_r8*rxt(k,293)*y(k,111)*y(k,36) +rxt(k,35)*y(k,77) & - +1.340_r8*rxt(k,37)*y(k,83) +.300_r8*rxt(k,40)*y(k,88) +rxt(k,41) & - *y(k,100) +rxt(k,45)*y(k,119) - loss(k,95) = (rxt(k,323)* y(k,111) + rxt(k,25) + het_rates(k,33))* y(k,33) - prod(k,95) = (.820_r8*rxt(k,306)*y(k,37) +.820_r8*rxt(k,308)*y(k,97))*y(k,15) & - +.820_r8*rxt(k,21)*y(k,16) +.100_r8*rxt(k,368)*y(k,133)*y(k,111) - loss(k,121) = (rxt(k,311)* y(k,99) +rxt(k,312)* y(k,111) + rxt(k,26) & - + het_rates(k,34))* y(k,34) - prod(k,121) = (.250_r8*rxt(k,324)*y(k,32) +.240_r8*rxt(k,325)*y(k,37) + & - .250_r8*rxt(k,327)*y(k,99) +.250_r8*rxt(k,328)*y(k,97))*y(k,84) & - + (.250_r8*rxt(k,360)*y(k,32) +.100_r8*rxt(k,361)*y(k,37) + & - .250_r8*rxt(k,363)*y(k,97) +.250_r8*rxt(k,364)*y(k,99))*y(k,134) & - + (.880_r8*rxt(k,330)*y(k,83) +.500_r8*rxt(k,340)*y(k,88))*y(k,108) & - + (rxt(k,313)*y(k,77) +rxt(k,314)*y(k,100))*y(k,111) & - +.500_r8*rxt(k,318)*y(k,118)*y(k,37) +.020_r8*rxt(k,353)*y(k,97) & - *y(k,81) - loss(k,89) = (rxt(k,292)* y(k,111) + het_rates(k,35))* y(k,35) - prod(k,89) = (.100_r8*rxt(k,289)*y(k,37) +.150_r8*rxt(k,290)*y(k,139)) & - *y(k,32) +.120_r8*rxt(k,305)*y(k,108)*y(k,14) & - +.150_r8*rxt(k,335)*y(k,139)*y(k,86) - loss(k,85) = (rxt(k,293)* y(k,111) + rxt(k,27) + het_rates(k,36))* y(k,36) - prod(k,85) = (.400_r8*rxt(k,290)*y(k,32) +.400_r8*rxt(k,335)*y(k,86)) & - *y(k,139) - loss(k,140) = (rxt(k,279)* y(k,10) +rxt(k,306)* y(k,15) +rxt(k,289)* y(k,32) & - + 2._r8*(rxt(k,265) +rxt(k,266))* y(k,37) +rxt(k,189)* y(k,45) & - +rxt(k,351)* y(k,81) +rxt(k,325)* y(k,84) +rxt(k,334)* y(k,86) & - +rxt(k,268)* y(k,97) +rxt(k,318)* y(k,118) +rxt(k,361)* y(k,134) & - +rxt(k,267)* y(k,139) + het_rates(k,37))* y(k,37) - prod(k,140) = (2.000_r8*rxt(k,288)*y(k,32) +.900_r8*rxt(k,289)*y(k,37) + & - .450_r8*rxt(k,290)*y(k,139) +rxt(k,291)*y(k,97) +rxt(k,324)*y(k,84) + & - rxt(k,333)*y(k,86) +rxt(k,350)*y(k,81) +rxt(k,360)*y(k,134))*y(k,32) & - + (rxt(k,30) +rxt(k,183)*y(k,42) +rxt(k,239)*y(k,59) + & - rxt(k,271)*y(k,111) +rxt(k,272)*y(k,144))*y(k,40) & - + (.280_r8*rxt(k,305)*y(k,14) +.050_r8*rxt(k,355)*y(k,79))*y(k,108) & - + (.700_r8*rxt(k,270)*y(k,39) +rxt(k,292)*y(k,35))*y(k,111) & - +rxt(k,60)*y(k,28) +rxt(k,24)*y(k,30) +rxt(k,62)*y(k,31) +rxt(k,25) & - *y(k,33) +rxt(k,27)*y(k,36) +.300_r8*rxt(k,40)*y(k,88) & - +.400_r8*rxt(k,43)*y(k,113) - loss(k,80) = (rxt(k,269)* y(k,111) + het_rates(k,38))* y(k,38) - prod(k,80) = (rxt(k,266)*y(k,37) +.300_r8*rxt(k,279)*y(k,10) + & - .500_r8*rxt(k,318)*y(k,118) +.250_r8*rxt(k,325)*y(k,84) + & - .250_r8*rxt(k,351)*y(k,81) +.300_r8*rxt(k,361)*y(k,134))*y(k,37) - loss(k,69) = (rxt(k,270)* y(k,111) + rxt(k,28) + het_rates(k,39))* y(k,39) - prod(k,69) =rxt(k,267)*y(k,139)*y(k,37) - loss(k,147) = (rxt(k,183)* y(k,42) +rxt(k,239)* y(k,59) +rxt(k,271)* y(k,111) & - + (rxt(k,272) +rxt(k,273) +rxt(k,274))* y(k,144) + rxt(k,29) & - + rxt(k,30) + het_rates(k,40))* y(k,40) - prod(k,147) =.100_r8*rxt(k,305)*y(k,108)*y(k,14) - loss(k,71) = (rxt(k,252)* y(k,42) +rxt(k,253)* y(k,111) +rxt(k,235)* y(k,144) & - + rxt(k,63) + het_rates(k,41))* y(k,41) - prod(k,71) = 0._r8 - loss(k,143) = (rxt(k,284)* y(k,13) +rxt(k,245)* y(k,26) +rxt(k,182)* y(k,27) & - +rxt(k,247)* y(k,28) +rxt(k,250)* y(k,31) +rxt(k,183)* y(k,40) & - +rxt(k,252)* y(k,41) +rxt(k,195)* y(k,46) +rxt(k,184)* y(k,63) & - +rxt(k,185)* y(k,65) +rxt(k,204)* y(k,76) +rxt(k,188)* y(k,108) & - + (rxt(k,186) +rxt(k,187))* y(k,139) + het_rates(k,42))* y(k,42) - prod(k,143) = (4.000_r8*rxt(k,207)*y(k,18) +rxt(k,208)*y(k,19) + & - 2.000_r8*rxt(k,209)*y(k,21) +2.000_r8*rxt(k,210)*y(k,22) + & - 2.000_r8*rxt(k,211)*y(k,23) +rxt(k,212)*y(k,24) + & - 2.000_r8*rxt(k,213)*y(k,25) +rxt(k,214)*y(k,71) +rxt(k,244)*y(k,51) + & - rxt(k,259)*y(k,68) +rxt(k,260)*y(k,69) +rxt(k,261)*y(k,70))*y(k,144) & - + (rxt(k,66) +rxt(k,189)*y(k,37) +2.000_r8*rxt(k,190)*y(k,45) + & - rxt(k,192)*y(k,45) +rxt(k,194)*y(k,97) +rxt(k,199)*y(k,106) + & - rxt(k,200)*y(k,111) +rxt(k,223)*y(k,6) +rxt(k,377)*y(k,122))*y(k,45) & - + (rxt(k,203)*y(k,71) +3.000_r8*rxt(k,249)*y(k,29) + & - rxt(k,251)*y(k,31) +rxt(k,254)*y(k,68) +rxt(k,255)*y(k,69) + & - rxt(k,256)*y(k,70))*y(k,111) + (rxt(k,76) +rxt(k,202)*y(k,106)) & - *y(k,71) +rxt(k,47)*y(k,5) +4.000_r8*rxt(k,51)*y(k,18) +rxt(k,52) & - *y(k,19) +2.000_r8*rxt(k,54)*y(k,21) +2.000_r8*rxt(k,55)*y(k,22) & - +2.000_r8*rxt(k,56)*y(k,23) +rxt(k,57)*y(k,24) +2.000_r8*rxt(k,58) & - *y(k,25) +3.000_r8*rxt(k,61)*y(k,29) +rxt(k,62)*y(k,31) & - +2.000_r8*rxt(k,64)*y(k,43) +2.000_r8*rxt(k,65)*y(k,44) +rxt(k,67) & - *y(k,46) +rxt(k,70)*y(k,51) +rxt(k,73)*y(k,68) +rxt(k,74)*y(k,69) & - +rxt(k,75)*y(k,70) +rxt(k,79)*y(k,76) - loss(k,44) = ( + rxt(k,64) + het_rates(k,43))* y(k,43) - prod(k,44) = (rxt(k,395)*y(k,76) +rxt(k,400)*y(k,46) +rxt(k,401)*y(k,76) + & - rxt(k,405)*y(k,46) +rxt(k,406)*y(k,76) +rxt(k,410)*y(k,46))*y(k,71) & - +rxt(k,195)*y(k,46)*y(k,42) +rxt(k,191)*y(k,45)*y(k,45) - loss(k,28) = ( + rxt(k,65) + rxt(k,217) + het_rates(k,44))* y(k,44) - prod(k,28) =rxt(k,216)*y(k,45)*y(k,45) - loss(k,134) = ((rxt(k,222) +rxt(k,223) +rxt(k,224))* y(k,6) +rxt(k,189) & - * y(k,37) + 2._r8*(rxt(k,190) +rxt(k,191) +rxt(k,192) +rxt(k,216)) & - * y(k,45) +rxt(k,194)* y(k,97) +rxt(k,196)* y(k,98) +rxt(k,199) & - * y(k,106) + (rxt(k,200) +rxt(k,201))* y(k,111) +rxt(k,377)* y(k,122) & - +rxt(k,193)* y(k,139) + rxt(k,66) + het_rates(k,45))* y(k,45) - prod(k,134) = (rxt(k,187)*y(k,139) +rxt(k,188)*y(k,108) +rxt(k,204)*y(k,76)) & - *y(k,42) + (rxt(k,68) +rxt(k,197)*y(k,106))*y(k,46) & - + (rxt(k,205)*y(k,106) +rxt(k,206)*y(k,111))*y(k,76) + (rxt(k,80) + & - rxt(k,382)*y(k,122))*y(k,109) +2.000_r8*rxt(k,217)*y(k,44) & - +rxt(k,215)*y(k,144)*y(k,71) - loss(k,111) = (rxt(k,195)* y(k,42) + (rxt(k,400) +rxt(k,405) +rxt(k,410)) & - * y(k,71) +rxt(k,197)* y(k,106) +rxt(k,198)* y(k,111) + rxt(k,67) & + loss(k,94) = (rxt(k,323)* y(k,106) + rxt(k,25) + het_rates(k,30))* y(k,30) + prod(k,94) = (.820_r8*rxt(k,306)*y(k,34) +.820_r8*rxt(k,308)*y(k,91)) & + *y(k,129) +.820_r8*rxt(k,21)*y(k,14) +.100_r8*rxt(k,368)*y(k,126) & + *y(k,106) + loss(k,122) = (rxt(k,311)* y(k,93) +rxt(k,312)* y(k,106) + rxt(k,26) & + + het_rates(k,31))* y(k,31) + prod(k,122) = (.250_r8*rxt(k,324)*y(k,130) +.240_r8*rxt(k,325)*y(k,34) + & + .250_r8*rxt(k,327)*y(k,93) +.250_r8*rxt(k,328)*y(k,91))*y(k,136) & + + (.250_r8*rxt(k,360)*y(k,130) +.100_r8*rxt(k,361)*y(k,34) + & + .250_r8*rxt(k,363)*y(k,91) +.250_r8*rxt(k,364)*y(k,93))*y(k,151) & + + (.880_r8*rxt(k,330)*y(k,77) +.500_r8*rxt(k,340)*y(k,80))*y(k,102) & + + (rxt(k,313)*y(k,72) +rxt(k,314)*y(k,94))*y(k,106) & + +.500_r8*rxt(k,318)*y(k,150)*y(k,34) +.020_r8*rxt(k,353)*y(k,135) & + *y(k,91) + loss(k,90) = (rxt(k,292)* y(k,106) + het_rates(k,32))* y(k,32) + prod(k,90) = (.100_r8*rxt(k,289)*y(k,34) +.150_r8*rxt(k,290)*y(k,134)) & + *y(k,130) +.120_r8*rxt(k,305)*y(k,102)*y(k,13) & + +.150_r8*rxt(k,335)*y(k,137)*y(k,134) + loss(k,85) = (rxt(k,293)* y(k,106) + rxt(k,27) + het_rates(k,33))* y(k,33) + prod(k,85) = (.400_r8*rxt(k,290)*y(k,130) +.400_r8*rxt(k,335)*y(k,137)) & + *y(k,134) + loss(k,135) = (2._r8*(rxt(k,265) +rxt(k,266))* y(k,34) +rxt(k,189)* y(k,42) & + +rxt(k,268)* y(k,91) +rxt(k,279)* y(k,128) +rxt(k,306)* y(k,129) & + +rxt(k,289)* y(k,130) +rxt(k,267)* y(k,134) +rxt(k,351)* y(k,135) & + +rxt(k,325)* y(k,136) +rxt(k,334)* y(k,137) +rxt(k,318)* y(k,150) & + +rxt(k,361)* y(k,151) + het_rates(k,34))* y(k,34) + prod(k,135) = (2.000_r8*rxt(k,288)*y(k,130) +.900_r8*rxt(k,289)*y(k,34) + & + .450_r8*rxt(k,290)*y(k,134) +rxt(k,291)*y(k,91) + & + rxt(k,324)*y(k,136) +rxt(k,333)*y(k,137) +rxt(k,350)*y(k,135) + & + rxt(k,360)*y(k,151))*y(k,130) + (rxt(k,30) +rxt(k,183)*y(k,39) + & + rxt(k,239)*y(k,54) +rxt(k,271)*y(k,106) +rxt(k,272)*y(k,142))*y(k,37) & + + (.280_r8*rxt(k,305)*y(k,13) +.050_r8*rxt(k,355)*y(k,74))*y(k,102) & + + (.700_r8*rxt(k,270)*y(k,36) +rxt(k,292)*y(k,32))*y(k,106) & + +rxt(k,60)*y(k,26) +rxt(k,24)*y(k,28) +rxt(k,62)*y(k,29) +rxt(k,25) & + *y(k,30) +rxt(k,27)*y(k,33) +.300_r8*rxt(k,40)*y(k,80) & + +.400_r8*rxt(k,43)*y(k,108) + loss(k,81) = (rxt(k,269)* y(k,106) + het_rates(k,35))* y(k,35) + prod(k,81) = (rxt(k,266)*y(k,34) +.300_r8*rxt(k,279)*y(k,128) + & + .500_r8*rxt(k,318)*y(k,150) +.250_r8*rxt(k,325)*y(k,136) + & + .250_r8*rxt(k,351)*y(k,135) +.300_r8*rxt(k,361)*y(k,151))*y(k,34) + loss(k,71) = (rxt(k,270)* y(k,106) + rxt(k,28) + het_rates(k,36))* y(k,36) + prod(k,71) =rxt(k,267)*y(k,134)*y(k,34) + loss(k,134) = (rxt(k,183)* y(k,39) +rxt(k,239)* y(k,54) +rxt(k,271)* y(k,106) & + + (rxt(k,272) +rxt(k,273) +rxt(k,274))* y(k,142) + rxt(k,29) & + + rxt(k,30) + het_rates(k,37))* y(k,37) + prod(k,134) =.100_r8*rxt(k,305)*y(k,102)*y(k,13) + loss(k,72) = (rxt(k,252)* y(k,39) +rxt(k,253)* y(k,106) +rxt(k,235)* y(k,142) & + + rxt(k,63) + het_rates(k,38))* y(k,38) + prod(k,72) = 0._r8 + loss(k,142) = (rxt(k,284)* y(k,12) +rxt(k,245)* y(k,24) +rxt(k,182)* y(k,25) & + +rxt(k,247)* y(k,26) +rxt(k,250)* y(k,29) +rxt(k,183)* y(k,37) & + +rxt(k,252)* y(k,38) +rxt(k,195)* y(k,43) +rxt(k,184)* y(k,58) & + +rxt(k,185)* y(k,60) +rxt(k,204)* y(k,71) +rxt(k,188)* y(k,102) & + + (rxt(k,186) +rxt(k,187))* y(k,134) + het_rates(k,39))* y(k,39) + prod(k,142) = (4.000_r8*rxt(k,207)*y(k,16) +rxt(k,208)*y(k,17) + & + 2.000_r8*rxt(k,209)*y(k,19) +2.000_r8*rxt(k,210)*y(k,20) + & + 2.000_r8*rxt(k,211)*y(k,21) +rxt(k,212)*y(k,22) + & + 2.000_r8*rxt(k,213)*y(k,23) +rxt(k,214)*y(k,66) +rxt(k,244)*y(k,48) + & + rxt(k,259)*y(k,63) +rxt(k,260)*y(k,64) +rxt(k,261)*y(k,65))*y(k,142) & + + (rxt(k,66) +rxt(k,189)*y(k,34) +2.000_r8*rxt(k,190)*y(k,42) + & + rxt(k,192)*y(k,42) +rxt(k,194)*y(k,91) +rxt(k,199)*y(k,100) + & + rxt(k,200)*y(k,106) +rxt(k,223)*y(k,6) +rxt(k,377)*y(k,115))*y(k,42) & + + (rxt(k,203)*y(k,66) +3.000_r8*rxt(k,249)*y(k,27) + & + rxt(k,251)*y(k,29) +rxt(k,254)*y(k,63) +rxt(k,255)*y(k,64) + & + rxt(k,256)*y(k,65))*y(k,106) + (rxt(k,76) +rxt(k,202)*y(k,100)) & + *y(k,66) +rxt(k,47)*y(k,5) +4.000_r8*rxt(k,51)*y(k,16) +rxt(k,52) & + *y(k,17) +2.000_r8*rxt(k,54)*y(k,19) +2.000_r8*rxt(k,55)*y(k,20) & + +2.000_r8*rxt(k,56)*y(k,21) +rxt(k,57)*y(k,22) +2.000_r8*rxt(k,58) & + *y(k,23) +3.000_r8*rxt(k,61)*y(k,27) +rxt(k,62)*y(k,29) & + +2.000_r8*rxt(k,64)*y(k,40) +2.000_r8*rxt(k,65)*y(k,41) +rxt(k,67) & + *y(k,43) +rxt(k,70)*y(k,48) +rxt(k,73)*y(k,63) +rxt(k,74)*y(k,64) & + +rxt(k,75)*y(k,65) +rxt(k,79)*y(k,71) + loss(k,45) = ( + rxt(k,64) + het_rates(k,40))* y(k,40) + prod(k,45) = (rxt(k,395)*y(k,71) +rxt(k,400)*y(k,43) +rxt(k,401)*y(k,71) + & + rxt(k,405)*y(k,43) +rxt(k,406)*y(k,71) +rxt(k,410)*y(k,43))*y(k,66) & + +rxt(k,195)*y(k,43)*y(k,39) +rxt(k,191)*y(k,42)*y(k,42) + loss(k,29) = ( + rxt(k,65) + rxt(k,217) + het_rates(k,41))* y(k,41) + prod(k,29) =rxt(k,216)*y(k,42)*y(k,42) + loss(k,143) = ((rxt(k,222) +rxt(k,223) +rxt(k,224))* y(k,6) +rxt(k,189) & + * y(k,34) + 2._r8*(rxt(k,190) +rxt(k,191) +rxt(k,192) +rxt(k,216)) & + * y(k,42) +rxt(k,194)* y(k,91) +rxt(k,196)* y(k,92) +rxt(k,199) & + * y(k,100) + (rxt(k,200) +rxt(k,201))* y(k,106) +rxt(k,377)* y(k,115) & + +rxt(k,193)* y(k,134) + rxt(k,66) + het_rates(k,42))* y(k,42) + prod(k,143) = (rxt(k,187)*y(k,134) +rxt(k,188)*y(k,102) +rxt(k,204)*y(k,71)) & + *y(k,39) + (rxt(k,68) +rxt(k,197)*y(k,100))*y(k,43) & + + (rxt(k,205)*y(k,100) +rxt(k,206)*y(k,106))*y(k,71) + (rxt(k,80) + & + rxt(k,382)*y(k,115))*y(k,104) +2.000_r8*rxt(k,217)*y(k,41) & + +rxt(k,215)*y(k,142)*y(k,66) + loss(k,111) = (rxt(k,195)* y(k,39) + (rxt(k,400) +rxt(k,405) +rxt(k,410)) & + * y(k,66) +rxt(k,197)* y(k,100) +rxt(k,198)* y(k,106) + rxt(k,67) & + rxt(k,68) + rxt(k,398) + rxt(k,403) + rxt(k,409) & - + het_rates(k,46))* y(k,46) - prod(k,111) =rxt(k,196)*y(k,98)*y(k,45) - loss(k,4) = ( + het_rates(k,47))* y(k,47) + + het_rates(k,43))* y(k,43) + prod(k,111) =rxt(k,196)*y(k,92)*y(k,42) + loss(k,4) = ( + het_rates(k,44))* y(k,44) prod(k,4) = 0._r8 - loss(k,118) = (rxt(k,275)* y(k,111) + het_rates(k,48))* y(k,48) - prod(k,118) = (rxt(k,22) +rxt(k,23) +rxt(k,182)*y(k,42) +rxt(k,218)*y(k,4) + & - rxt(k,262)*y(k,99) +rxt(k,263)*y(k,106) +rxt(k,264)*y(k,111))*y(k,27) & - + (.630_r8*rxt(k,277)*y(k,9) +.560_r8*rxt(k,305)*y(k,14) + & - .650_r8*rxt(k,330)*y(k,83) +.560_r8*rxt(k,340)*y(k,88) + & - .620_r8*rxt(k,355)*y(k,79))*y(k,108) + (.220_r8*rxt(k,324)*y(k,32) + & - .110_r8*rxt(k,325)*y(k,37) +.220_r8*rxt(k,327)*y(k,99) + & - .220_r8*rxt(k,328)*y(k,97))*y(k,84) + (.250_r8*rxt(k,360)*y(k,32) + & - .200_r8*rxt(k,361)*y(k,37) +.250_r8*rxt(k,363)*y(k,97) + & - .500_r8*rxt(k,364)*y(k,99))*y(k,134) + (rxt(k,26) + & - rxt(k,311)*y(k,99) +rxt(k,312)*y(k,111))*y(k,34) + (rxt(k,31) + & - rxt(k,82) +rxt(k,426)*y(k,148))*y(k,49) + (rxt(k,109) + & - rxt(k,371)*y(k,106) +rxt(k,372)*y(k,111))*y(k,110) & - + (2.000_r8*rxt(k,34) +rxt(k,299)*y(k,111))*y(k,61) +rxt(k,24) & - *y(k,30) +rxt(k,250)*y(k,42)*y(k,31) +.380_r8*rxt(k,29)*y(k,40) & - +rxt(k,33)*y(k,60) +1.340_r8*rxt(k,38)*y(k,83) +.700_r8*rxt(k,40) & - *y(k,88) +rxt(k,42)*y(k,112) - loss(k,127) = (rxt(k,426)* y(k,148) + rxt(k,31) + rxt(k,82) & + loss(k,119) = (rxt(k,275)* y(k,106) + het_rates(k,45))* y(k,45) + prod(k,119) = (rxt(k,22) +rxt(k,23) +rxt(k,182)*y(k,39) +rxt(k,218)*y(k,4) + & + rxt(k,262)*y(k,93) +rxt(k,263)*y(k,100) +rxt(k,264)*y(k,106))*y(k,25) & + + (.630_r8*rxt(k,277)*y(k,9) +.560_r8*rxt(k,305)*y(k,13) + & + .650_r8*rxt(k,330)*y(k,77) +.560_r8*rxt(k,340)*y(k,80) + & + .620_r8*rxt(k,355)*y(k,74))*y(k,102) + (.220_r8*rxt(k,324)*y(k,130) + & + .110_r8*rxt(k,325)*y(k,34) +.220_r8*rxt(k,327)*y(k,93) + & + .220_r8*rxt(k,328)*y(k,91))*y(k,136) + (.250_r8*rxt(k,360)*y(k,130) + & + .200_r8*rxt(k,361)*y(k,34) +.250_r8*rxt(k,363)*y(k,91) + & + .500_r8*rxt(k,364)*y(k,93))*y(k,151) + (rxt(k,26) + & + rxt(k,311)*y(k,93) +rxt(k,312)*y(k,106))*y(k,31) + (rxt(k,31) + & + rxt(k,82) +rxt(k,426)*y(k,146))*y(k,46) + (rxt(k,109) + & + rxt(k,371)*y(k,100) +rxt(k,372)*y(k,106))*y(k,105) & + + (2.000_r8*rxt(k,34) +rxt(k,299)*y(k,106))*y(k,56) +rxt(k,24) & + *y(k,28) +rxt(k,250)*y(k,39)*y(k,29) +.380_r8*rxt(k,29)*y(k,37) & + +rxt(k,33)*y(k,55) +1.340_r8*rxt(k,38)*y(k,77) +.700_r8*rxt(k,40) & + *y(k,80) +rxt(k,42)*y(k,107) + loss(k,128) = (rxt(k,426)* y(k,146) + rxt(k,31) + rxt(k,82) & + + het_rates(k,46))* y(k,46) + prod(k,128) = (rxt(k,275)*y(k,45) +rxt(k,292)*y(k,32) + & + .500_r8*rxt(k,293)*y(k,33) +.800_r8*rxt(k,298)*y(k,55) + & + rxt(k,299)*y(k,56) +.500_r8*rxt(k,339)*y(k,79))*y(k,106) & + + (2.000_r8*rxt(k,288)*y(k,130) +.900_r8*rxt(k,289)*y(k,34) + & + rxt(k,291)*y(k,91) +2.000_r8*rxt(k,333)*y(k,137) + & + rxt(k,360)*y(k,151))*y(k,130) + (rxt(k,334)*y(k,34) + & + .450_r8*rxt(k,335)*y(k,134) +2.000_r8*rxt(k,336)*y(k,137))*y(k,137) & + + (.200_r8*rxt(k,305)*y(k,13) +.100_r8*rxt(k,340)*y(k,80))*y(k,102) & + +rxt(k,27)*y(k,33) +.440_r8*rxt(k,29)*y(k,37) +.400_r8*rxt(k,43) & + *y(k,108) + loss(k,53) = (rxt(k,243)* y(k,142) + rxt(k,69) + het_rates(k,47))* y(k,47) + prod(k,53) = (rxt(k,208)*y(k,17) +rxt(k,210)*y(k,20) + & + 2.000_r8*rxt(k,211)*y(k,21) +2.000_r8*rxt(k,212)*y(k,22) + & + rxt(k,213)*y(k,23) +rxt(k,234)*y(k,18) +2.000_r8*rxt(k,236)*y(k,59) + & + rxt(k,260)*y(k,64) +rxt(k,261)*y(k,65))*y(k,142) + (rxt(k,74) + & + rxt(k,255)*y(k,106))*y(k,64) + (rxt(k,75) +rxt(k,256)*y(k,106)) & + *y(k,65) +rxt(k,52)*y(k,17) +rxt(k,53)*y(k,18) +rxt(k,55)*y(k,20) & + +2.000_r8*rxt(k,56)*y(k,21) +2.000_r8*rxt(k,57)*y(k,22) +rxt(k,58) & + *y(k,23) +2.000_r8*rxt(k,71)*y(k,59) + loss(k,51) = (rxt(k,244)* y(k,142) + rxt(k,70) + het_rates(k,48))* y(k,48) + prod(k,51) = (rxt(k,73) +rxt(k,254)*y(k,106) +rxt(k,259)*y(k,142))*y(k,63) & + + (rxt(k,54) +rxt(k,209)*y(k,142))*y(k,19) + (rxt(k,55) + & + rxt(k,210)*y(k,142))*y(k,20) + loss(k,57) = (rxt(k,369)* y(k,93) + (rxt(k,370) +rxt(k,384))* y(k,106) & + het_rates(k,49))* y(k,49) - prod(k,127) = (rxt(k,275)*y(k,48) +rxt(k,292)*y(k,35) + & - .500_r8*rxt(k,293)*y(k,36) +.800_r8*rxt(k,298)*y(k,60) + & - rxt(k,299)*y(k,61) +.500_r8*rxt(k,339)*y(k,87))*y(k,111) & - + (2.000_r8*rxt(k,288)*y(k,32) +.900_r8*rxt(k,289)*y(k,37) + & - rxt(k,291)*y(k,97) +2.000_r8*rxt(k,333)*y(k,86) +rxt(k,360)*y(k,134)) & - *y(k,32) + (rxt(k,334)*y(k,37) +.450_r8*rxt(k,335)*y(k,139) + & - 2.000_r8*rxt(k,336)*y(k,86))*y(k,86) + (.200_r8*rxt(k,305)*y(k,14) + & - .100_r8*rxt(k,340)*y(k,88))*y(k,108) +rxt(k,27)*y(k,36) & - +.440_r8*rxt(k,29)*y(k,40) +.400_r8*rxt(k,43)*y(k,113) - loss(k,48) = (rxt(k,243)* y(k,144) + rxt(k,69) + het_rates(k,50))* y(k,50) - prod(k,48) = (rxt(k,208)*y(k,19) +rxt(k,210)*y(k,22) + & - 2.000_r8*rxt(k,211)*y(k,23) +2.000_r8*rxt(k,212)*y(k,24) + & - rxt(k,213)*y(k,25) +rxt(k,234)*y(k,20) +2.000_r8*rxt(k,236)*y(k,64) + & - rxt(k,260)*y(k,69) +rxt(k,261)*y(k,70))*y(k,144) + (rxt(k,74) + & - rxt(k,255)*y(k,111))*y(k,69) + (rxt(k,75) +rxt(k,256)*y(k,111)) & - *y(k,70) +rxt(k,52)*y(k,19) +rxt(k,53)*y(k,20) +rxt(k,55)*y(k,22) & - +2.000_r8*rxt(k,56)*y(k,23) +2.000_r8*rxt(k,57)*y(k,24) +rxt(k,58) & - *y(k,25) +2.000_r8*rxt(k,71)*y(k,64) - loss(k,51) = (rxt(k,244)* y(k,144) + rxt(k,70) + het_rates(k,51))* y(k,51) - prod(k,51) = (rxt(k,73) +rxt(k,254)*y(k,111) +rxt(k,259)*y(k,144))*y(k,68) & - + (rxt(k,54) +rxt(k,209)*y(k,144))*y(k,21) + (rxt(k,55) + & - rxt(k,210)*y(k,144))*y(k,22) - loss(k,56) = (rxt(k,369)* y(k,99) + (rxt(k,370) +rxt(k,384))* y(k,111) & - + het_rates(k,52))* y(k,52) - prod(k,56) = 0._r8 - loss(k,5) = ( + het_rates(k,53))* y(k,53) + prod(k,57) = 0._r8 + loss(k,5) = ( + het_rates(k,50))* y(k,50) prod(k,5) = 0._r8 - loss(k,6) = ( + het_rates(k,54))* y(k,54) + loss(k,6) = ( + het_rates(k,51))* y(k,51) prod(k,6) = 0._r8 - loss(k,7) = ( + het_rates(k,55))* y(k,55) + loss(k,7) = ( + het_rates(k,52))* y(k,52) prod(k,7) = 0._r8 - loss(k,72) = (rxt(k,297)* y(k,107) + rxt(k,296) + het_rates(k,56))* y(k,56) - prod(k,72) =.750_r8*rxt(k,295)*y(k,97)*y(k,57) +rxt(k,32)*y(k,58) - loss(k,93) = (rxt(k,295)* y(k,97) +rxt(k,294)* y(k,139) + het_rates(k,57)) & - * y(k,57) - prod(k,93) =rxt(k,301)*y(k,111)*y(k,9) - loss(k,38) = ( + rxt(k,32) + het_rates(k,58))* y(k,58) - prod(k,38) =rxt(k,294)*y(k,139)*y(k,57) - loss(k,104) = (rxt(k,239)* y(k,40) +rxt(k,240)* y(k,63) +rxt(k,242)* y(k,73) & - +rxt(k,241)* y(k,151) + het_rates(k,59))* y(k,59) - prod(k,104) = (rxt(k,212)*y(k,24) +rxt(k,234)*y(k,20) + & - 2.000_r8*rxt(k,243)*y(k,50) +rxt(k,244)*y(k,51))*y(k,144) +rxt(k,53) & - *y(k,20) +rxt(k,57)*y(k,24) +2.000_r8*rxt(k,69)*y(k,50) +rxt(k,70) & - *y(k,51) +rxt(k,77)*y(k,72) - loss(k,114) = (rxt(k,298)* y(k,111) + rxt(k,33) + het_rates(k,60))* y(k,60) - prod(k,114) = (.530_r8*rxt(k,324)*y(k,32) +.260_r8*rxt(k,325)*y(k,37) + & - .530_r8*rxt(k,327)*y(k,99) +.530_r8*rxt(k,328)*y(k,97))*y(k,84) & - + (.250_r8*rxt(k,360)*y(k,32) +.100_r8*rxt(k,361)*y(k,37) + & - .250_r8*rxt(k,363)*y(k,97) +.250_r8*rxt(k,364)*y(k,99))*y(k,134) & - +rxt(k,297)*y(k,107)*y(k,56) +.020_r8*rxt(k,353)*y(k,97)*y(k,81) - loss(k,91) = (rxt(k,299)* y(k,111) + rxt(k,34) + het_rates(k,61))* y(k,61) - prod(k,91) = (.250_r8*rxt(k,360)*y(k,32) +.100_r8*rxt(k,361)*y(k,37) + & - .250_r8*rxt(k,363)*y(k,97) +.250_r8*rxt(k,364)*y(k,99))*y(k,134) & - +.200_r8*rxt(k,298)*y(k,111)*y(k,60) +.020_r8*rxt(k,353)*y(k,97) & - *y(k,81) - loss(k,148) = (rxt(k,140)* y(k,107) +rxt(k,143)* y(k,108) + (rxt(k,137) + & - rxt(k,138) +rxt(k,139))* y(k,139) + het_rates(k,62))* y(k,62) - prod(k,148) = (rxt(k,144)*y(k,63) +rxt(k,147)*y(k,106) +rxt(k,167)*y(k,89) + & - rxt(k,264)*y(k,27) +rxt(k,372)*y(k,110) +rxt(k,378)*y(k,120) + & - rxt(k,383)*y(k,122))*y(k,111) + (rxt(k,117)*y(k,144) + & - rxt(k,135)*y(k,106) +rxt(k,184)*y(k,42) +rxt(k,240)*y(k,59))*y(k,63) & - + (.330_r8*rxt(k,29) +rxt(k,30) +rxt(k,273)*y(k,144))*y(k,40) & - + (rxt(k,72) +rxt(k,238)*y(k,144))*y(k,67) + (rxt(k,76) + & - rxt(k,215)*y(k,144))*y(k,71) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,151) & - +2.000_r8*rxt(k,22)*y(k,27) +rxt(k,28)*y(k,39) +rxt(k,77)*y(k,72) - loss(k,128) = (rxt(k,184)* y(k,42) +rxt(k,240)* y(k,59) +rxt(k,135)* y(k,106) & - +rxt(k,144)* y(k,111) +rxt(k,117)* y(k,144) + het_rates(k,63)) & - * y(k,63) - prod(k,128) = (1.440_r8*rxt(k,29) +rxt(k,274)*y(k,144))*y(k,40) +rxt(k,23) & - *y(k,27) +rxt(k,137)*y(k,139)*y(k,62) +rxt(k,1)*y(k,151) - loss(k,32) = (rxt(k,236)* y(k,144) + rxt(k,71) + het_rates(k,64))* y(k,64) - prod(k,32) = 0._r8 - loss(k,84) = (rxt(k,185)* y(k,42) +rxt(k,136)* y(k,106) +rxt(k,145)* y(k,111) & - + rxt(k,4) + het_rates(k,65))* y(k,65) - prod(k,84) =rxt(k,150)*y(k,111)*y(k,111) +rxt(k,151)*y(k,139)*y(k,139) - loss(k,39) = ( + rxt(k,108) + het_rates(k,66))* y(k,66) - prod(k,39) =rxt(k,385)*y(k,151)*y(k,124) - loss(k,99) = (rxt(k,231)* y(k,106) +rxt(k,232)* y(k,111) + (rxt(k,237) + & - rxt(k,238))* y(k,144) + rxt(k,72) + het_rates(k,67))* y(k,67) - prod(k,99) = (rxt(k,218)*y(k,27) +rxt(k,219)*y(k,139))*y(k,4) - loss(k,50) = (rxt(k,254)* y(k,111) +rxt(k,259)* y(k,144) + rxt(k,73) & - + het_rates(k,68))* y(k,68) + loss(k,39) = ( + rxt(k,32) + het_rates(k,53))* y(k,53) + prod(k,39) =rxt(k,294)*y(k,134)*y(k,133) + loss(k,105) = (rxt(k,239)* y(k,37) +rxt(k,240)* y(k,58) +rxt(k,242)* y(k,68) & + +rxt(k,241)* y(k,152) + het_rates(k,54))* y(k,54) + prod(k,105) = (rxt(k,212)*y(k,22) +rxt(k,234)*y(k,18) + & + 2.000_r8*rxt(k,243)*y(k,47) +rxt(k,244)*y(k,48))*y(k,142) +rxt(k,53) & + *y(k,18) +rxt(k,57)*y(k,22) +2.000_r8*rxt(k,69)*y(k,47) +rxt(k,70) & + *y(k,48) +rxt(k,77)*y(k,67) + loss(k,114) = (rxt(k,298)* y(k,106) + rxt(k,33) + het_rates(k,55))* y(k,55) + prod(k,114) = (.530_r8*rxt(k,324)*y(k,130) +.260_r8*rxt(k,325)*y(k,34) + & + .530_r8*rxt(k,327)*y(k,93) +.530_r8*rxt(k,328)*y(k,91))*y(k,136) & + + (.250_r8*rxt(k,360)*y(k,130) +.100_r8*rxt(k,361)*y(k,34) + & + .250_r8*rxt(k,363)*y(k,91) +.250_r8*rxt(k,364)*y(k,93))*y(k,151) & + +.020_r8*rxt(k,353)*y(k,135)*y(k,91) +rxt(k,297)*y(k,132)*y(k,101) + loss(k,92) = (rxt(k,299)* y(k,106) + rxt(k,34) + het_rates(k,56))* y(k,56) + prod(k,92) = (.250_r8*rxt(k,360)*y(k,130) +.100_r8*rxt(k,361)*y(k,34) + & + .250_r8*rxt(k,363)*y(k,91) +.250_r8*rxt(k,364)*y(k,93))*y(k,151) & + +.200_r8*rxt(k,298)*y(k,106)*y(k,55) +.020_r8*rxt(k,353)*y(k,135) & + *y(k,91) + loss(k,137) = (rxt(k,140)* y(k,101) +rxt(k,143)* y(k,102) + (rxt(k,137) + & + rxt(k,138) +rxt(k,139))* y(k,134) + het_rates(k,57))* y(k,57) + prod(k,137) = (rxt(k,144)*y(k,58) +rxt(k,147)*y(k,100) +rxt(k,167)*y(k,81) + & + rxt(k,264)*y(k,25) +rxt(k,372)*y(k,105) +rxt(k,378)*y(k,113) + & + rxt(k,383)*y(k,115))*y(k,106) + (rxt(k,117)*y(k,142) + & + rxt(k,135)*y(k,100) +rxt(k,184)*y(k,39) +rxt(k,240)*y(k,54))*y(k,58) & + + (.330_r8*rxt(k,29) +rxt(k,30) +rxt(k,273)*y(k,142))*y(k,37) & + + (rxt(k,72) +rxt(k,238)*y(k,142))*y(k,62) + (rxt(k,76) + & + rxt(k,215)*y(k,142))*y(k,66) + (rxt(k,2) +2.000_r8*rxt(k,3))*y(k,152) & + +2.000_r8*rxt(k,22)*y(k,25) +rxt(k,28)*y(k,36) +rxt(k,77)*y(k,67) + loss(k,129) = (rxt(k,184)* y(k,39) +rxt(k,240)* y(k,54) +rxt(k,135)* y(k,100) & + +rxt(k,144)* y(k,106) +rxt(k,117)* y(k,142) + het_rates(k,58)) & + * y(k,58) + prod(k,129) = (1.440_r8*rxt(k,29) +rxt(k,274)*y(k,142))*y(k,37) +rxt(k,23) & + *y(k,25) +rxt(k,137)*y(k,134)*y(k,57) +rxt(k,1)*y(k,152) + loss(k,33) = (rxt(k,236)* y(k,142) + rxt(k,71) + het_rates(k,59))* y(k,59) + prod(k,33) = 0._r8 + loss(k,86) = (rxt(k,185)* y(k,39) +rxt(k,136)* y(k,100) +rxt(k,145)* y(k,106) & + + rxt(k,4) + het_rates(k,60))* y(k,60) + prod(k,86) =rxt(k,150)*y(k,106)*y(k,106) +rxt(k,151)*y(k,134)*y(k,134) + loss(k,40) = ( + rxt(k,108) + het_rates(k,61))* y(k,61) + prod(k,40) =rxt(k,385)*y(k,152)*y(k,117) + loss(k,102) = (rxt(k,231)* y(k,100) +rxt(k,232)* y(k,106) + (rxt(k,237) + & + rxt(k,238))* y(k,142) + rxt(k,72) + het_rates(k,62))* y(k,62) + prod(k,102) = (rxt(k,218)*y(k,25) +rxt(k,219)*y(k,134))*y(k,4) + loss(k,50) = (rxt(k,254)* y(k,106) +rxt(k,259)* y(k,142) + rxt(k,73) & + + het_rates(k,63))* y(k,63) prod(k,50) = 0._r8 - loss(k,52) = (rxt(k,255)* y(k,111) +rxt(k,260)* y(k,144) + rxt(k,74) & - + het_rates(k,69))* y(k,69) + loss(k,52) = (rxt(k,255)* y(k,106) +rxt(k,260)* y(k,142) + rxt(k,74) & + + het_rates(k,64))* y(k,64) prod(k,52) = 0._r8 - loss(k,57) = (rxt(k,256)* y(k,111) +rxt(k,261)* y(k,144) + rxt(k,75) & - + het_rates(k,70))* y(k,70) - prod(k,57) = 0._r8 - loss(k,130) = ((rxt(k,400) +rxt(k,405) +rxt(k,410))* y(k,46) + (rxt(k,402) + & - rxt(k,407))* y(k,75) + (rxt(k,395) +rxt(k,401) +rxt(k,406))* y(k,76) & - +rxt(k,202)* y(k,106) +rxt(k,203)* y(k,111) + (rxt(k,214) + & - rxt(k,215))* y(k,144) + rxt(k,76) + het_rates(k,71))* y(k,71) - prod(k,130) = (rxt(k,182)*y(k,27) +rxt(k,183)*y(k,40) +rxt(k,184)*y(k,63) + & - rxt(k,185)*y(k,65) +rxt(k,186)*y(k,139) +rxt(k,204)*y(k,76) + & - rxt(k,245)*y(k,26) +rxt(k,247)*y(k,28) +2.000_r8*rxt(k,250)*y(k,31) + & - rxt(k,252)*y(k,41) +rxt(k,284)*y(k,13))*y(k,42) +rxt(k,201)*y(k,111) & - *y(k,45) - loss(k,58) = ( + rxt(k,77) + het_rates(k,72))* y(k,72) - prod(k,58) = (rxt(k,239)*y(k,40) +rxt(k,240)*y(k,63) +rxt(k,241)*y(k,151) + & - rxt(k,242)*y(k,73))*y(k,59) - loss(k,139) = (rxt(k,242)* y(k,59) +rxt(k,176)* y(k,111) + rxt(k,9) & - + het_rates(k,73))* y(k,73) - prod(k,139) = (rxt(k,398) +rxt(k,403) +rxt(k,409) +rxt(k,400)*y(k,71) + & - rxt(k,405)*y(k,71) +rxt(k,410)*y(k,71))*y(k,46) + (rxt(k,391) + & - rxt(k,262)*y(k,27) +rxt(k,286)*y(k,30) +rxt(k,311)*y(k,34) + & - rxt(k,369)*y(k,52))*y(k,99) + (2.000_r8*rxt(k,388) + & + loss(k,58) = (rxt(k,256)* y(k,106) +rxt(k,261)* y(k,142) + rxt(k,75) & + + het_rates(k,65))* y(k,65) + prod(k,58) = 0._r8 + loss(k,131) = ((rxt(k,400) +rxt(k,405) +rxt(k,410))* y(k,43) + (rxt(k,402) + & + rxt(k,407))* y(k,70) + (rxt(k,395) +rxt(k,401) +rxt(k,406))* y(k,71) & + +rxt(k,202)* y(k,100) +rxt(k,203)* y(k,106) + (rxt(k,214) + & + rxt(k,215))* y(k,142) + rxt(k,76) + het_rates(k,66))* y(k,66) + prod(k,131) = (rxt(k,182)*y(k,25) +rxt(k,183)*y(k,37) +rxt(k,184)*y(k,58) + & + rxt(k,185)*y(k,60) +rxt(k,186)*y(k,134) +rxt(k,204)*y(k,71) + & + rxt(k,245)*y(k,24) +rxt(k,247)*y(k,26) +2.000_r8*rxt(k,250)*y(k,29) + & + rxt(k,252)*y(k,38) +rxt(k,284)*y(k,12))*y(k,39) +rxt(k,201)*y(k,106) & + *y(k,42) + loss(k,59) = ( + rxt(k,77) + het_rates(k,67))* y(k,67) + prod(k,59) = (rxt(k,239)*y(k,37) +rxt(k,240)*y(k,58) +rxt(k,241)*y(k,152) + & + rxt(k,242)*y(k,68))*y(k,54) + loss(k,148) = (rxt(k,242)* y(k,54) +rxt(k,176)* y(k,106) + rxt(k,9) & + + het_rates(k,68))* y(k,68) + prod(k,148) = (rxt(k,398) +rxt(k,403) +rxt(k,409) +rxt(k,400)*y(k,66) + & + rxt(k,405)*y(k,66) +rxt(k,410)*y(k,66))*y(k,43) + (rxt(k,391) + & + rxt(k,262)*y(k,25) +rxt(k,286)*y(k,28) +rxt(k,311)*y(k,31) + & + rxt(k,369)*y(k,49))*y(k,93) + (2.000_r8*rxt(k,388) + & 2.000_r8*rxt(k,394) +2.000_r8*rxt(k,397) +2.000_r8*rxt(k,408)) & - *y(k,91) + (rxt(k,396) +rxt(k,399) +rxt(k,404))*y(k,7) & - + (.500_r8*rxt(k,390) +rxt(k,175)*y(k,111))*y(k,98) +rxt(k,392) & - *y(k,112) - loss(k,73) = (rxt(k,153)* y(k,111) + rxt(k,10) + rxt(k,11) + rxt(k,177) & - + het_rates(k,74))* y(k,74) - prod(k,73) =rxt(k,173)*y(k,139)*y(k,98) - loss(k,94) = ((rxt(k,402) +rxt(k,407))* y(k,71) +rxt(k,233)* y(k,106) & - + rxt(k,78) + het_rates(k,75))* y(k,75) - prod(k,94) = (rxt(k,396) +rxt(k,399) +rxt(k,404))*y(k,7) +rxt(k,225)*y(k,139) & + *y(k,83) + (rxt(k,396) +rxt(k,399) +rxt(k,404))*y(k,7) & + + (.500_r8*rxt(k,390) +rxt(k,175)*y(k,106))*y(k,92) +rxt(k,392) & + *y(k,107) + loss(k,75) = (rxt(k,153)* y(k,106) + rxt(k,10) + rxt(k,11) + rxt(k,177) & + + het_rates(k,69))* y(k,69) + prod(k,75) =rxt(k,173)*y(k,134)*y(k,92) + loss(k,95) = ((rxt(k,402) +rxt(k,407))* y(k,66) +rxt(k,233)* y(k,100) & + + rxt(k,78) + het_rates(k,70))* y(k,70) + prod(k,95) = (rxt(k,396) +rxt(k,399) +rxt(k,404))*y(k,7) +rxt(k,225)*y(k,134) & *y(k,6) - loss(k,101) = (rxt(k,204)* y(k,42) + (rxt(k,395) +rxt(k,401) +rxt(k,406)) & - * y(k,71) +rxt(k,205)* y(k,106) +rxt(k,206)* y(k,111) + rxt(k,79) & - + het_rates(k,76))* y(k,76) - prod(k,101) = (rxt(k,398) +rxt(k,403) +rxt(k,409) +rxt(k,198)*y(k,111)) & - *y(k,46) +rxt(k,193)*y(k,139)*y(k,45) - loss(k,115) = (rxt(k,313)* y(k,111) + rxt(k,35) + het_rates(k,77))* y(k,77) - prod(k,115) = (.220_r8*rxt(k,324)*y(k,32) +.230_r8*rxt(k,325)*y(k,37) + & - .220_r8*rxt(k,327)*y(k,99) +.220_r8*rxt(k,328)*y(k,97))*y(k,84) & - + (.250_r8*rxt(k,360)*y(k,32) +.100_r8*rxt(k,361)*y(k,37) + & - .250_r8*rxt(k,363)*y(k,97) +.250_r8*rxt(k,364)*y(k,99))*y(k,134) & - + (.500_r8*rxt(k,317)*y(k,117) +.500_r8*rxt(k,339)*y(k,87))*y(k,111) & - +.200_r8*rxt(k,318)*y(k,118)*y(k,37) +.020_r8*rxt(k,353)*y(k,97) & - *y(k,81) - loss(k,64) = (rxt(k,345)* y(k,111) + het_rates(k,78))* y(k,78) - prod(k,64) = (.400_r8*rxt(k,350)*y(k,32) +.300_r8*rxt(k,351)*y(k,37) + & - .330_r8*rxt(k,353)*y(k,97) +.400_r8*rxt(k,354)*y(k,99))*y(k,81) & - + (rxt(k,358)*y(k,99) +rxt(k,359)*y(k,111))*y(k,112) - loss(k,103) = (rxt(k,346)* y(k,99) +rxt(k,355)* y(k,108) +rxt(k,356) & - * y(k,111) + het_rates(k,79))* y(k,79) - prod(k,103) = 0._r8 - loss(k,97) = (rxt(k,348)* y(k,97) +rxt(k,349)* y(k,99) +rxt(k,347)* y(k,139) & + loss(k,100) = (rxt(k,204)* y(k,39) + (rxt(k,395) +rxt(k,401) +rxt(k,406)) & + * y(k,66) +rxt(k,205)* y(k,100) +rxt(k,206)* y(k,106) + rxt(k,79) & + + het_rates(k,71))* y(k,71) + prod(k,100) = (rxt(k,398) +rxt(k,403) +rxt(k,409) +rxt(k,198)*y(k,106)) & + *y(k,43) +rxt(k,193)*y(k,134)*y(k,42) + loss(k,116) = (rxt(k,313)* y(k,106) + rxt(k,35) + het_rates(k,72))* y(k,72) + prod(k,116) = (.220_r8*rxt(k,324)*y(k,130) +.230_r8*rxt(k,325)*y(k,34) + & + .220_r8*rxt(k,327)*y(k,93) +.220_r8*rxt(k,328)*y(k,91))*y(k,136) & + + (.250_r8*rxt(k,360)*y(k,130) +.100_r8*rxt(k,361)*y(k,34) + & + .250_r8*rxt(k,363)*y(k,91) +.250_r8*rxt(k,364)*y(k,93))*y(k,151) & + + (.500_r8*rxt(k,317)*y(k,111) +.500_r8*rxt(k,339)*y(k,79))*y(k,106) & + +.200_r8*rxt(k,318)*y(k,150)*y(k,34) +.020_r8*rxt(k,353)*y(k,135) & + *y(k,91) + loss(k,65) = (rxt(k,345)* y(k,106) + het_rates(k,73))* y(k,73) + prod(k,65) = (.400_r8*rxt(k,350)*y(k,130) +.300_r8*rxt(k,351)*y(k,34) + & + .330_r8*rxt(k,353)*y(k,91) +.400_r8*rxt(k,354)*y(k,93))*y(k,135) & + + (rxt(k,358)*y(k,93) +rxt(k,359)*y(k,106))*y(k,107) + loss(k,104) = (rxt(k,346)* y(k,93) +rxt(k,355)* y(k,102) +rxt(k,356) & + * y(k,106) + het_rates(k,74))* y(k,74) + prod(k,104) = 0._r8 + loss(k,97) = (rxt(k,348)* y(k,91) +rxt(k,349)* y(k,93) +rxt(k,347)* y(k,134) & + + het_rates(k,75))* y(k,75) + prod(k,97) =rxt(k,346)*y(k,93)*y(k,74) + loss(k,83) = (rxt(k,357)* y(k,106) + rxt(k,36) + het_rates(k,76))* y(k,76) + prod(k,83) =rxt(k,352)*y(k,135)*y(k,134) + loss(k,120) = (rxt(k,330)* y(k,102) +rxt(k,331)* y(k,106) + rxt(k,37) & + + rxt(k,38) + het_rates(k,77))* y(k,77) + prod(k,120) = (.250_r8*rxt(k,350)*y(k,130) +.190_r8*rxt(k,351)*y(k,34) + & + .230_r8*rxt(k,353)*y(k,91) +.250_r8*rxt(k,354)*y(k,93))*y(k,135) & + + (.167_r8*rxt(k,347)*y(k,134) +.167_r8*rxt(k,348)*y(k,91) + & + .167_r8*rxt(k,349)*y(k,93))*y(k,75) + (.300_r8*rxt(k,355)*y(k,74) + & + 1.122_r8*rxt(k,367)*y(k,126))*y(k,102) +.300_r8*rxt(k,36)*y(k,76) + loss(k,62) = (rxt(k,332)* y(k,106) + het_rates(k,78))* y(k,78) + prod(k,62) =rxt(k,326)*y(k,136)*y(k,134) + loss(k,84) = (rxt(k,339)* y(k,106) + rxt(k,39) + rxt(k,343) & + + het_rates(k,79))* y(k,79) + prod(k,84) =rxt(k,342)*y(k,137)*y(k,92) + loss(k,125) = (rxt(k,340)* y(k,102) +rxt(k,341)* y(k,106) + rxt(k,40) & + het_rates(k,80))* y(k,80) - prod(k,97) =rxt(k,346)*y(k,99)*y(k,79) - loss(k,122) = (rxt(k,350)* y(k,32) +rxt(k,351)* y(k,37) +rxt(k,353)* y(k,97) & - +rxt(k,354)* y(k,99) +rxt(k,352)* y(k,139) + het_rates(k,81)) & - * y(k,81) - prod(k,122) = (rxt(k,356)*y(k,79) +.200_r8*rxt(k,357)*y(k,82) + & - 1.640_r8*rxt(k,368)*y(k,133))*y(k,111) +1.700_r8*rxt(k,366)*y(k,133) & - *y(k,99) - loss(k,78) = (rxt(k,357)* y(k,111) + rxt(k,36) + het_rates(k,82))* y(k,82) - prod(k,78) =rxt(k,352)*y(k,139)*y(k,81) - loss(k,119) = (rxt(k,330)* y(k,108) +rxt(k,331)* y(k,111) + rxt(k,37) & - + rxt(k,38) + het_rates(k,83))* y(k,83) - prod(k,119) = (.250_r8*rxt(k,350)*y(k,32) +.190_r8*rxt(k,351)*y(k,37) + & - .230_r8*rxt(k,353)*y(k,97) +.250_r8*rxt(k,354)*y(k,99))*y(k,81) & - + (.167_r8*rxt(k,347)*y(k,139) +.167_r8*rxt(k,348)*y(k,97) + & - .167_r8*rxt(k,349)*y(k,99))*y(k,80) + (.300_r8*rxt(k,355)*y(k,79) + & - 1.122_r8*rxt(k,367)*y(k,133))*y(k,108) +.300_r8*rxt(k,36)*y(k,82) - loss(k,123) = (rxt(k,324)* y(k,32) +rxt(k,325)* y(k,37) + (rxt(k,328) + & - rxt(k,329))* y(k,97) +rxt(k,327)* y(k,99) +rxt(k,326)* y(k,139) & - + het_rates(k,84))* y(k,84) - prod(k,123) = (.500_r8*rxt(k,331)*y(k,83) +.200_r8*rxt(k,332)*y(k,85) + & - rxt(k,341)*y(k,88))*y(k,111) - loss(k,61) = (rxt(k,332)* y(k,111) + het_rates(k,85))* y(k,85) - prod(k,61) =rxt(k,326)*y(k,139)*y(k,84) - loss(k,125) = (rxt(k,333)* y(k,32) +rxt(k,334)* y(k,37) + 2._r8*rxt(k,336) & - * y(k,86) +rxt(k,337)* y(k,97) +rxt(k,342)* y(k,98) +rxt(k,338) & - * y(k,99) +rxt(k,335)* y(k,139) + het_rates(k,86))* y(k,86) - prod(k,125) = (.660_r8*rxt(k,37) +.500_r8*rxt(k,331)*y(k,111))*y(k,83) & - + (rxt(k,39) +rxt(k,343))*y(k,87) +.500_r8*rxt(k,332)*y(k,111) & - *y(k,85) - loss(k,83) = (rxt(k,339)* y(k,111) + rxt(k,39) + rxt(k,343) & - + het_rates(k,87))* y(k,87) - prod(k,83) =rxt(k,342)*y(k,98)*y(k,86) - loss(k,124) = (rxt(k,340)* y(k,108) +rxt(k,341)* y(k,111) + rxt(k,40) & - + het_rates(k,88))* y(k,88) - prod(k,124) = (.350_r8*rxt(k,350)*y(k,32) +.260_r8*rxt(k,351)*y(k,37) + & - .320_r8*rxt(k,353)*y(k,97) +.350_r8*rxt(k,354)*y(k,99))*y(k,81) & - + (.039_r8*rxt(k,347)*y(k,139) +.039_r8*rxt(k,348)*y(k,97) + & - .039_r8*rxt(k,349)*y(k,99))*y(k,80) + (.200_r8*rxt(k,355)*y(k,79) + & - .442_r8*rxt(k,367)*y(k,133))*y(k,108) +.700_r8*rxt(k,36)*y(k,82) - loss(k,110) = (rxt(k,156)* y(k,97) + (rxt(k,157) +rxt(k,158) +rxt(k,159)) & - * y(k,98) +rxt(k,181)* y(k,107) +rxt(k,167)* y(k,111) +rxt(k,423) & - * y(k,147) + rxt(k,83) + het_rates(k,89))* y(k,89) - prod(k,110) = (rxt(k,178)*y(k,140) +.200_r8*rxt(k,414)*y(k,142) + & - 1.100_r8*rxt(k,416)*y(k,141))*y(k,138) + (rxt(k,155)*y(k,140) + & - rxt(k,420)*y(k,143))*y(k,106) +rxt(k,16)*y(k,97) +rxt(k,421)*y(k,143) & - *y(k,107) +rxt(k,152)*y(k,140) +rxt(k,427)*y(k,148) - loss(k,53) = ((rxt(k,171) +rxt(k,172))* y(k,144) + rxt(k,12) & - + het_rates(k,90))* y(k,90) - prod(k,53) =rxt(k,157)*y(k,98)*y(k,89) - loss(k,59) = ( + rxt(k,13) + rxt(k,14) + rxt(k,180) + rxt(k,388) + rxt(k,394) & - + rxt(k,397) + rxt(k,408) + het_rates(k,91))* y(k,91) - prod(k,59) =rxt(k,174)*y(k,99)*y(k,98) - loss(k,8) = ( + het_rates(k,92))* y(k,92) + prod(k,125) = (.350_r8*rxt(k,350)*y(k,130) +.260_r8*rxt(k,351)*y(k,34) + & + .320_r8*rxt(k,353)*y(k,91) +.350_r8*rxt(k,354)*y(k,93))*y(k,135) & + + (.039_r8*rxt(k,347)*y(k,134) +.039_r8*rxt(k,348)*y(k,91) + & + .039_r8*rxt(k,349)*y(k,93))*y(k,75) + (.200_r8*rxt(k,355)*y(k,74) + & + .442_r8*rxt(k,367)*y(k,126))*y(k,102) +.700_r8*rxt(k,36)*y(k,76) + loss(k,112) = (rxt(k,156)* y(k,91) + (rxt(k,157) +rxt(k,158) +rxt(k,159)) & + * y(k,92) +rxt(k,181)* y(k,101) +rxt(k,167)* y(k,106) +rxt(k,423) & + * y(k,145) + rxt(k,83) + het_rates(k,81))* y(k,81) + prod(k,112) = (rxt(k,178)*y(k,138) +.200_r8*rxt(k,414)*y(k,140) + & + 1.100_r8*rxt(k,416)*y(k,139))*y(k,131) + (rxt(k,155)*y(k,138) + & + rxt(k,420)*y(k,141))*y(k,100) +rxt(k,16)*y(k,91) +rxt(k,421)*y(k,141) & + *y(k,101) +rxt(k,152)*y(k,138) +rxt(k,427)*y(k,146) + loss(k,54) = ((rxt(k,171) +rxt(k,172))* y(k,142) + rxt(k,12) & + + het_rates(k,82))* y(k,82) + prod(k,54) =rxt(k,157)*y(k,92)*y(k,81) + loss(k,60) = ( + rxt(k,13) + rxt(k,14) + rxt(k,180) + rxt(k,388) + rxt(k,394) & + + rxt(k,397) + rxt(k,408) + het_rates(k,83))* y(k,83) + prod(k,60) =rxt(k,174)*y(k,93)*y(k,92) + loss(k,8) = ( + het_rates(k,84))* y(k,84) prod(k,8) = 0._r8 - loss(k,9) = ( + het_rates(k,93))* y(k,93) + loss(k,9) = ( + het_rates(k,85))* y(k,85) prod(k,9) = 0._r8 - loss(k,10) = ( + het_rates(k,94))* y(k,94) + loss(k,10) = ( + het_rates(k,86))* y(k,86) prod(k,10) = 0._r8 - loss(k,30) = (rxt(k,386)* y(k,111) + het_rates(k,95))* y(k,95) - prod(k,30) = 0._r8 - loss(k,11) = ( + rxt(k,389) + het_rates(k,96))* y(k,96) + loss(k,31) = (rxt(k,386)* y(k,106) + het_rates(k,88))* y(k,88) + prod(k,31) = 0._r8 + loss(k,11) = ( + rxt(k,389) + het_rates(k,89))* y(k,89) prod(k,11) = 0._r8 - loss(k,146) = (rxt(k,226)* y(k,6) +rxt(k,281)* y(k,10) +rxt(k,308)* y(k,15) & - +rxt(k,291)* y(k,32) +rxt(k,268)* y(k,37) +rxt(k,194)* y(k,45) & - +rxt(k,295)* y(k,57) +rxt(k,348)* y(k,80) +rxt(k,353)* y(k,81) & - + (rxt(k,328) +rxt(k,329))* y(k,84) +rxt(k,337)* y(k,86) +rxt(k,156) & - * y(k,89) +rxt(k,164)* y(k,99) +rxt(k,170)* y(k,106) +rxt(k,169) & - * y(k,108) +rxt(k,316)* y(k,114) +rxt(k,320)* y(k,118) +rxt(k,363) & - * y(k,134) +rxt(k,168)* y(k,139) +rxt(k,154)* y(k,140) +rxt(k,425) & - * y(k,147) + rxt(k,15) + rxt(k,16) + het_rates(k,97))* y(k,97) - prod(k,146) = (rxt(k,17) +.500_r8*rxt(k,390) +2.000_r8*rxt(k,158)*y(k,89) + & - rxt(k,160)*y(k,106) +rxt(k,379)*y(k,122))*y(k,98) & - + (rxt(k,167)*y(k,111) +rxt(k,181)*y(k,107))*y(k,89) & - +2.000_r8*rxt(k,171)*y(k,144)*y(k,90) +rxt(k,14)*y(k,91) +rxt(k,19) & - *y(k,99) +rxt(k,179)*y(k,140)*y(k,107) +rxt(k,424)*y(k,147) & - +rxt(k,437)*y(k,150) - loss(k,135) = (rxt(k,227)* y(k,6) +rxt(k,302)* y(k,32) +rxt(k,196)* y(k,45) & - +rxt(k,342)* y(k,86) + (rxt(k,157) +rxt(k,158) +rxt(k,159))* y(k,89) & - +rxt(k,174)* y(k,99) + (rxt(k,160) +rxt(k,162))* y(k,106) & - +rxt(k,161)* y(k,108) +rxt(k,175)* y(k,111) +rxt(k,379)* y(k,122) & - +rxt(k,173)* y(k,139) + rxt(k,17) + rxt(k,390) + het_rates(k,98)) & - * y(k,98) - prod(k,135) = (2.000_r8*rxt(k,164)*y(k,99) +rxt(k,168)*y(k,139) + & - rxt(k,169)*y(k,108) +rxt(k,170)*y(k,106) +rxt(k,194)*y(k,45) + & - rxt(k,226)*y(k,6) +rxt(k,268)*y(k,37) +rxt(k,281)*y(k,10) + & - rxt(k,291)*y(k,32) +rxt(k,295)*y(k,57) +rxt(k,308)*y(k,15) + & - rxt(k,316)*y(k,114) +rxt(k,320)*y(k,118) +rxt(k,328)*y(k,84) + & - rxt(k,337)*y(k,86) +1.206_r8*rxt(k,348)*y(k,80) + & - .920_r8*rxt(k,353)*y(k,81) +rxt(k,363)*y(k,134))*y(k,97) & - + (rxt(k,18) +rxt(k,163)*y(k,139) +rxt(k,165)*y(k,106) + & - rxt(k,166)*y(k,111) +rxt(k,327)*y(k,84) +rxt(k,338)*y(k,86) + & - 1.206_r8*rxt(k,349)*y(k,80) +rxt(k,354)*y(k,81) + & - rxt(k,358)*y(k,112) +rxt(k,364)*y(k,134) +rxt(k,366)*y(k,133)) & - *y(k,99) + (rxt(k,11) +rxt(k,177) +rxt(k,153)*y(k,111))*y(k,74) & - + (rxt(k,39) +rxt(k,343))*y(k,87) + (rxt(k,13) +rxt(k,180))*y(k,91) & - + (rxt(k,41) +rxt(k,314)*y(k,111))*y(k,100) + (rxt(k,42) + & - .400_r8*rxt(k,359)*y(k,111))*y(k,112) + (.600_r8*rxt(k,43) + & - rxt(k,303))*y(k,113) +rxt(k,49)*y(k,7) +rxt(k,68)*y(k,46) +rxt(k,9) & - *y(k,73) +.206_r8*rxt(k,347)*y(k,139)*y(k,80) - loss(k,141) = (rxt(k,304)* y(k,14) +rxt(k,262)* y(k,27) +rxt(k,286)* y(k,30) & - +rxt(k,311)* y(k,34) +rxt(k,369)* y(k,52) +rxt(k,346)* y(k,79) & - +rxt(k,349)* y(k,80) +rxt(k,354)* y(k,81) +rxt(k,327)* y(k,84) & - +rxt(k,338)* y(k,86) +rxt(k,164)* y(k,97) +rxt(k,174)* y(k,98) & - +rxt(k,165)* y(k,106) +rxt(k,166)* y(k,111) +rxt(k,358)* y(k,112) & - +rxt(k,366)* y(k,133) +rxt(k,364)* y(k,134) +rxt(k,163)* y(k,139) & - + rxt(k,18) + rxt(k,19) + rxt(k,391) + het_rates(k,99))* y(k,99) - prod(k,141) = (rxt(k,67) +rxt(k,195)*y(k,42) +rxt(k,197)*y(k,106) + & - rxt(k,198)*y(k,111))*y(k,46) + (rxt(k,13) +rxt(k,14) +rxt(k,180)) & - *y(k,91) + (rxt(k,176)*y(k,73) +rxt(k,300)*y(k,113) + & - .500_r8*rxt(k,339)*y(k,87))*y(k,111) + (rxt(k,50) + & - rxt(k,228)*y(k,106))*y(k,7) + (rxt(k,161)*y(k,108) + & - rxt(k,162)*y(k,106))*y(k,98) +rxt(k,242)*y(k,73)*y(k,59) +rxt(k,10) & - *y(k,74) +.400_r8*rxt(k,43)*y(k,113) - loss(k,67) = (rxt(k,314)* y(k,111) + rxt(k,41) + het_rates(k,100))* y(k,100) - prod(k,67) =rxt(k,304)*y(k,99)*y(k,14) - loss(k,12) = ( + het_rates(k,101))* y(k,101) + loss(k,139) = (rxt(k,226)* y(k,6) +rxt(k,268)* y(k,34) +rxt(k,194)* y(k,42) & + +rxt(k,348)* y(k,75) +rxt(k,156)* y(k,81) +rxt(k,164)* y(k,93) & + +rxt(k,170)* y(k,100) +rxt(k,169)* y(k,102) +rxt(k,281)* y(k,128) & + +rxt(k,308)* y(k,129) +rxt(k,291)* y(k,130) +rxt(k,295)* y(k,133) & + +rxt(k,168)* y(k,134) +rxt(k,353)* y(k,135) + (rxt(k,328) + & + rxt(k,329))* y(k,136) +rxt(k,337)* y(k,137) +rxt(k,154)* y(k,138) & + +rxt(k,425)* y(k,145) +rxt(k,316)* y(k,149) +rxt(k,320)* y(k,150) & + +rxt(k,363)* y(k,151) + rxt(k,15) + rxt(k,16) + het_rates(k,91)) & + * y(k,91) + prod(k,139) = (rxt(k,17) +.500_r8*rxt(k,390) +2.000_r8*rxt(k,158)*y(k,81) + & + rxt(k,160)*y(k,100) +rxt(k,379)*y(k,115))*y(k,92) & + + (rxt(k,167)*y(k,106) +rxt(k,181)*y(k,101))*y(k,81) & + +2.000_r8*rxt(k,171)*y(k,142)*y(k,82) +rxt(k,14)*y(k,83) +rxt(k,19) & + *y(k,93) +rxt(k,179)*y(k,138)*y(k,101) +rxt(k,424)*y(k,145) & + +rxt(k,437)*y(k,148) + loss(k,138) = (rxt(k,227)* y(k,6) +rxt(k,196)* y(k,42) + (rxt(k,157) + & + rxt(k,158) +rxt(k,159))* y(k,81) +rxt(k,174)* y(k,93) + (rxt(k,160) + & + rxt(k,162))* y(k,100) +rxt(k,161)* y(k,102) +rxt(k,175)* y(k,106) & + +rxt(k,379)* y(k,115) +rxt(k,302)* y(k,130) +rxt(k,173)* y(k,134) & + +rxt(k,342)* y(k,137) + rxt(k,17) + rxt(k,390) + het_rates(k,92)) & + * y(k,92) + prod(k,138) = (2.000_r8*rxt(k,164)*y(k,93) +rxt(k,168)*y(k,134) + & + rxt(k,169)*y(k,102) +rxt(k,170)*y(k,100) +rxt(k,194)*y(k,42) + & + rxt(k,226)*y(k,6) +rxt(k,268)*y(k,34) +rxt(k,281)*y(k,128) + & + rxt(k,291)*y(k,130) +rxt(k,295)*y(k,133) +rxt(k,308)*y(k,129) + & + rxt(k,316)*y(k,149) +rxt(k,320)*y(k,150) +rxt(k,328)*y(k,136) + & + rxt(k,337)*y(k,137) +1.206_r8*rxt(k,348)*y(k,75) + & + .920_r8*rxt(k,353)*y(k,135) +rxt(k,363)*y(k,151))*y(k,91) & + + (rxt(k,18) +rxt(k,163)*y(k,134) +rxt(k,165)*y(k,100) + & + rxt(k,166)*y(k,106) +rxt(k,327)*y(k,136) +rxt(k,338)*y(k,137) + & + 1.206_r8*rxt(k,349)*y(k,75) +rxt(k,354)*y(k,135) + & + rxt(k,358)*y(k,107) +rxt(k,364)*y(k,151) +rxt(k,366)*y(k,126)) & + *y(k,93) + (rxt(k,11) +rxt(k,177) +rxt(k,153)*y(k,106))*y(k,69) & + + (rxt(k,39) +rxt(k,343))*y(k,79) + (rxt(k,13) +rxt(k,180))*y(k,83) & + + (rxt(k,41) +rxt(k,314)*y(k,106))*y(k,94) + (rxt(k,42) + & + .400_r8*rxt(k,359)*y(k,106))*y(k,107) + (.600_r8*rxt(k,43) + & + rxt(k,303))*y(k,108) +rxt(k,49)*y(k,7) +rxt(k,68)*y(k,43) +rxt(k,9) & + *y(k,68) +.206_r8*rxt(k,347)*y(k,134)*y(k,75) + loss(k,136) = (rxt(k,304)* y(k,13) +rxt(k,262)* y(k,25) +rxt(k,286)* y(k,28) & + +rxt(k,311)* y(k,31) +rxt(k,369)* y(k,49) +rxt(k,346)* y(k,74) & + +rxt(k,349)* y(k,75) +rxt(k,164)* y(k,91) +rxt(k,174)* y(k,92) & + +rxt(k,165)* y(k,100) +rxt(k,166)* y(k,106) +rxt(k,358)* y(k,107) & + +rxt(k,366)* y(k,126) +rxt(k,163)* y(k,134) +rxt(k,354)* y(k,135) & + +rxt(k,327)* y(k,136) +rxt(k,338)* y(k,137) +rxt(k,364)* y(k,151) & + + rxt(k,18) + rxt(k,19) + rxt(k,391) + het_rates(k,93))* y(k,93) + prod(k,136) = (rxt(k,67) +rxt(k,195)*y(k,39) +rxt(k,197)*y(k,100) + & + rxt(k,198)*y(k,106))*y(k,43) + (rxt(k,13) +rxt(k,14) +rxt(k,180)) & + *y(k,83) + (rxt(k,176)*y(k,68) +rxt(k,300)*y(k,108) + & + .500_r8*rxt(k,339)*y(k,79))*y(k,106) + (rxt(k,50) + & + rxt(k,228)*y(k,100))*y(k,7) + (rxt(k,161)*y(k,102) + & + rxt(k,162)*y(k,100))*y(k,92) +rxt(k,242)*y(k,68)*y(k,54) +rxt(k,10) & + *y(k,69) +.400_r8*rxt(k,43)*y(k,108) + loss(k,68) = (rxt(k,314)* y(k,106) + rxt(k,41) + het_rates(k,94))* y(k,94) + prod(k,68) =rxt(k,304)*y(k,93)*y(k,13) + loss(k,12) = ( + het_rates(k,95))* y(k,95) prod(k,12) = 0._r8 - loss(k,13) = ( + het_rates(k,102))* y(k,102) + loss(k,13) = ( + het_rates(k,96))* y(k,96) prod(k,13) = 0._r8 - loss(k,14) = ( + het_rates(k,103))* y(k,103) + loss(k,14) = ( + het_rates(k,97))* y(k,97) prod(k,14) = 0._r8 - loss(k,15) = ( + het_rates(k,104))* y(k,104) + loss(k,15) = ( + het_rates(k,98))* y(k,98) prod(k,15) = 0._r8 - loss(k,16) = ( + het_rates(k,105))* y(k,105) + loss(k,16) = ( + het_rates(k,99))* y(k,99) prod(k,16) = 0._r8 - loss(k,145) = (rxt(k,229)* y(k,6) +rxt(k,228)* y(k,7) +rxt(k,263)* y(k,27) & - +rxt(k,199)* y(k,45) +rxt(k,197)* y(k,46) +rxt(k,135)* y(k,63) & - +rxt(k,136)* y(k,65) +rxt(k,231)* y(k,67) +rxt(k,202)* y(k,71) & - +rxt(k,233)* y(k,75) +rxt(k,205)* y(k,76) +rxt(k,170)* y(k,97) & - + (rxt(k,160) +rxt(k,162))* y(k,98) +rxt(k,165)* y(k,99) & - + 2._r8*rxt(k,133)* y(k,106) +rxt(k,134)* y(k,107) +rxt(k,132) & - * y(k,108) +rxt(k,371)* y(k,110) +rxt(k,147)* y(k,111) +rxt(k,141) & - * y(k,139) + (rxt(k,418) +rxt(k,419))* y(k,141) +rxt(k,420)* y(k,143) & + loss(k,147) = (rxt(k,229)* y(k,6) +rxt(k,228)* y(k,7) +rxt(k,263)* y(k,25) & + +rxt(k,199)* y(k,42) +rxt(k,197)* y(k,43) +rxt(k,135)* y(k,58) & + +rxt(k,136)* y(k,60) +rxt(k,231)* y(k,62) +rxt(k,202)* y(k,66) & + +rxt(k,233)* y(k,70) +rxt(k,205)* y(k,71) +rxt(k,170)* y(k,91) & + + (rxt(k,160) +rxt(k,162))* y(k,92) +rxt(k,165)* y(k,93) & + + 2._r8*rxt(k,133)* y(k,100) +rxt(k,134)* y(k,101) +rxt(k,132) & + * y(k,102) +rxt(k,371)* y(k,105) +rxt(k,147)* y(k,106) +rxt(k,141) & + * y(k,134) + (rxt(k,418) +rxt(k,419))* y(k,139) +rxt(k,420)* y(k,141) & + rxt(k,92) + rxt(k,93) + rxt(k,94) + rxt(k,95) + rxt(k,96) & - + rxt(k,97) + het_rates(k,106))* y(k,106) - prod(k,145) = (rxt(k,5) +2.000_r8*rxt(k,6) +rxt(k,98) +2.000_r8*rxt(k,99) + & + + rxt(k,97) + het_rates(k,100))* y(k,100) + prod(k,147) = (rxt(k,5) +2.000_r8*rxt(k,6) +rxt(k,98) +2.000_r8*rxt(k,99) + & rxt(k,100) +rxt(k,101) +rxt(k,103) +2.000_r8*rxt(k,104) +rxt(k,105) + & - rxt(k,106) +rxt(k,120)*y(k,144) +rxt(k,121)*y(k,144) + & - rxt(k,181)*y(k,89) +rxt(k,373)*y(k,120) +rxt(k,380)*y(k,122) + & - rxt(k,422)*y(k,143) +rxt(k,429)*y(k,148) +rxt(k,433)*y(k,149)) & - *y(k,107) + (rxt(k,156)*y(k,97) +rxt(k,157)*y(k,98) + & - rxt(k,423)*y(k,147))*y(k,89) + (rxt(k,8) + & - 2.000_r8*rxt(k,123)*y(k,144) +.765_r8*rxt(k,367)*y(k,133))*y(k,108) & - + (rxt(k,31) +rxt(k,82))*y(k,49) + (rxt(k,16) +rxt(k,154)*y(k,140)) & - *y(k,97) + (rxt(k,414)*y(k,142) +1.150_r8*rxt(k,415)*y(k,147)) & - *y(k,138) +rxt(k,48)*y(k,6) +.180_r8*rxt(k,29)*y(k,40) +rxt(k,66) & - *y(k,45) +rxt(k,139)*y(k,139)*y(k,62) +rxt(k,14)*y(k,91) +rxt(k,17) & - *y(k,98) +rxt(k,18)*y(k,99) +rxt(k,80)*y(k,109) +rxt(k,149)*y(k,111) & - *y(k,111) +rxt(k,110)*y(k,122) +rxt(k,111)*y(k,123) +rxt(k,112) & - *y(k,124) +rxt(k,428)*y(k,148)*y(k,140) +rxt(k,119)*y(k,144) & - +rxt(k,431)*y(k,149) +rxt(k,436)*y(k,150) +rxt(k,3)*y(k,151) - loss(k,132) = (rxt(k,297)* y(k,56) +rxt(k,140)* y(k,62) +rxt(k,181)* y(k,89) & - +rxt(k,134)* y(k,106) +rxt(k,373)* y(k,120) +rxt(k,380)* y(k,122) & - +rxt(k,179)* y(k,140) +rxt(k,417)* y(k,141) + (rxt(k,421) + & - rxt(k,422))* y(k,143) +rxt(k,120)* y(k,144) +rxt(k,126)* y(k,145) & - +rxt(k,429)* y(k,148) +rxt(k,433)* y(k,149) + rxt(k,5) + rxt(k,6) & + rxt(k,106) +rxt(k,120)*y(k,142) +rxt(k,121)*y(k,142) + & + rxt(k,181)*y(k,81) +rxt(k,373)*y(k,113) +rxt(k,380)*y(k,115) + & + rxt(k,422)*y(k,141) +rxt(k,429)*y(k,146) +rxt(k,433)*y(k,147)) & + *y(k,101) + (rxt(k,156)*y(k,91) +rxt(k,157)*y(k,92) + & + rxt(k,423)*y(k,145))*y(k,81) + (rxt(k,8) + & + 2.000_r8*rxt(k,123)*y(k,142) +.765_r8*rxt(k,367)*y(k,126))*y(k,102) & + + (rxt(k,31) +rxt(k,82))*y(k,46) + (rxt(k,16) +rxt(k,154)*y(k,138)) & + *y(k,91) + (rxt(k,414)*y(k,140) +1.150_r8*rxt(k,415)*y(k,145)) & + *y(k,131) +rxt(k,48)*y(k,6) +.180_r8*rxt(k,29)*y(k,37) +rxt(k,66) & + *y(k,42) +rxt(k,139)*y(k,134)*y(k,57) +rxt(k,14)*y(k,83) +rxt(k,17) & + *y(k,92) +rxt(k,18)*y(k,93) +rxt(k,80)*y(k,104) +rxt(k,149)*y(k,106) & + *y(k,106) +rxt(k,110)*y(k,115) +rxt(k,111)*y(k,116) +rxt(k,112) & + *y(k,117) +rxt(k,428)*y(k,146)*y(k,138) +rxt(k,119)*y(k,142) & + +rxt(k,431)*y(k,147) +rxt(k,436)*y(k,148) +rxt(k,3)*y(k,152) + loss(k,133) = (rxt(k,140)* y(k,57) +rxt(k,181)* y(k,81) +rxt(k,134)* y(k,100) & + +rxt(k,373)* y(k,113) +rxt(k,380)* y(k,115) +rxt(k,297)* y(k,132) & + +rxt(k,179)* y(k,138) +rxt(k,417)* y(k,139) + (rxt(k,421) + & + rxt(k,422))* y(k,141) +rxt(k,120)* y(k,142) +rxt(k,126)* y(k,143) & + +rxt(k,429)* y(k,146) +rxt(k,433)* y(k,147) + rxt(k,5) + rxt(k,6) & + rxt(k,98) + rxt(k,99) + rxt(k,100) + rxt(k,101) + rxt(k,102) & + rxt(k,103) + rxt(k,104) + rxt(k,105) + rxt(k,106) + rxt(k,107) & - + het_rates(k,107))* y(k,107) - prod(k,132) = (rxt(k,137)*y(k,62) +rxt(k,141)*y(k,106) + & - 2.000_r8*rxt(k,142)*y(k,108) +rxt(k,146)*y(k,111) + & - rxt(k,151)*y(k,139) +rxt(k,163)*y(k,99) +rxt(k,186)*y(k,42) + & - rxt(k,193)*y(k,45) +rxt(k,219)*y(k,4) +rxt(k,225)*y(k,6) + & - rxt(k,267)*y(k,37) +rxt(k,280)*y(k,10) +rxt(k,307)*y(k,15) + & - rxt(k,315)*y(k,114))*y(k,139) + (rxt(k,8) + & - 2.000_r8*rxt(k,122)*y(k,144) +rxt(k,123)*y(k,144) + & - 2.000_r8*rxt(k,132)*y(k,106) +rxt(k,143)*y(k,62) + & - rxt(k,148)*y(k,111) +rxt(k,161)*y(k,98) +rxt(k,169)*y(k,97) + & - rxt(k,188)*y(k,42) +rxt(k,220)*y(k,4) +rxt(k,375)*y(k,120) + & - rxt(k,381)*y(k,122))*y(k,108) + (rxt(k,125)*y(k,145) + & - rxt(k,133)*y(k,106) +rxt(k,147)*y(k,111) +rxt(k,160)*y(k,98) + & - rxt(k,165)*y(k,99) +rxt(k,199)*y(k,45) +rxt(k,229)*y(k,6))*y(k,106) & - + (rxt(k,190)*y(k,45) +rxt(k,191)*y(k,45) +rxt(k,201)*y(k,111) + & - rxt(k,223)*y(k,6) +rxt(k,224)*y(k,6))*y(k,45) + (rxt(k,115) + & - rxt(k,124) +2.000_r8*rxt(k,126)*y(k,107))*y(k,145) +rxt(k,221)*y(k,6) & - *y(k,6) +rxt(k,153)*y(k,111)*y(k,74) +rxt(k,159)*y(k,98)*y(k,89) & - +rxt(k,172)*y(k,144)*y(k,90) +rxt(k,425)*y(k,147)*y(k,97) +rxt(k,19) & - *y(k,99) +rxt(k,116)*y(k,146) - loss(k,138) = (rxt(k,220)* y(k,4) +rxt(k,277)* y(k,9) +rxt(k,305)* y(k,14) & - +rxt(k,188)* y(k,42) +rxt(k,143)* y(k,62) +rxt(k,355)* y(k,79) & - +rxt(k,330)* y(k,83) +rxt(k,340)* y(k,88) +rxt(k,169)* y(k,97) & - +rxt(k,161)* y(k,98) +rxt(k,132)* y(k,106) +rxt(k,148)* y(k,111) & - +rxt(k,375)* y(k,120) +rxt(k,381)* y(k,122) +rxt(k,367)* y(k,133) & - +rxt(k,142)* y(k,139) + (rxt(k,122) +rxt(k,123))* y(k,144) & - + rxt(k,7) + rxt(k,8) + het_rates(k,108))* y(k,108) - prod(k,138) = (.150_r8*rxt(k,290)*y(k,32) +.150_r8*rxt(k,335)*y(k,86)) & - *y(k,139) +rxt(k,134)*y(k,107)*y(k,106) - loss(k,63) = (rxt(k,382)* y(k,122) + rxt(k,80) + het_rates(k,109))* y(k,109) - prod(k,63) = (rxt(k,192)*y(k,45) +rxt(k,222)*y(k,6))*y(k,45) - loss(k,65) = (rxt(k,371)* y(k,106) +rxt(k,372)* y(k,111) + rxt(k,109) & - + het_rates(k,110))* y(k,110) - prod(k,65) = 0._r8 - loss(k,144) = (rxt(k,344)* y(k,3) +rxt(k,230)* y(k,6) +rxt(k,301)* y(k,9) & - +rxt(k,282)* y(k,11) +rxt(k,283)* y(k,12) +rxt(k,285)* y(k,13) & - +rxt(k,322)* y(k,14) +rxt(k,309)* y(k,16) +rxt(k,310)* y(k,17) & - +rxt(k,246)* y(k,26) +rxt(k,264)* y(k,27) +rxt(k,248)* y(k,28) & - +rxt(k,249)* y(k,29) +rxt(k,287)* y(k,30) +rxt(k,251)* y(k,31) & - +rxt(k,323)* y(k,33) +rxt(k,312)* y(k,34) +rxt(k,292)* y(k,35) & - +rxt(k,293)* y(k,36) +rxt(k,269)* y(k,38) +rxt(k,270)* y(k,39) & - +rxt(k,271)* y(k,40) +rxt(k,253)* y(k,41) + (rxt(k,200) +rxt(k,201)) & - * y(k,45) +rxt(k,198)* y(k,46) +rxt(k,275)* y(k,48) + (rxt(k,370) + & - rxt(k,384))* y(k,52) +rxt(k,298)* y(k,60) +rxt(k,299)* y(k,61) & - +rxt(k,144)* y(k,63) +rxt(k,145)* y(k,65) +rxt(k,232)* y(k,67) & - +rxt(k,254)* y(k,68) +rxt(k,255)* y(k,69) +rxt(k,256)* y(k,70) & - +rxt(k,203)* y(k,71) +rxt(k,176)* y(k,73) +rxt(k,153)* y(k,74) & - +rxt(k,206)* y(k,76) +rxt(k,313)* y(k,77) +rxt(k,345)* y(k,78) & - +rxt(k,356)* y(k,79) +rxt(k,357)* y(k,82) +rxt(k,331)* y(k,83) & - +rxt(k,332)* y(k,85) +rxt(k,339)* y(k,87) +rxt(k,341)* y(k,88) & - +rxt(k,167)* y(k,89) +rxt(k,386)* y(k,95) +rxt(k,175)* y(k,98) & - +rxt(k,166)* y(k,99) +rxt(k,314)* y(k,100) +rxt(k,147)* y(k,106) & - +rxt(k,148)* y(k,108) +rxt(k,372)* y(k,110) + 2._r8*(rxt(k,149) + & - rxt(k,150))* y(k,111) +rxt(k,359)* y(k,112) +rxt(k,300)* y(k,113) & - +rxt(k,317)* y(k,117) +rxt(k,321)* y(k,119) +rxt(k,378)* y(k,120) & - +rxt(k,383)* y(k,122) +rxt(k,374)* y(k,123) +rxt(k,368)* y(k,133) & - +rxt(k,365)* y(k,135) +rxt(k,146)* y(k,139) + het_rates(k,111)) & - * y(k,111) - prod(k,144) = (2.000_r8*rxt(k,138)*y(k,62) +rxt(k,141)*y(k,106) + & - rxt(k,142)*y(k,108) +rxt(k,163)*y(k,99) +rxt(k,168)*y(k,97) + & - rxt(k,187)*y(k,42) +.450_r8*rxt(k,290)*y(k,32) + & - .150_r8*rxt(k,319)*y(k,118) +.450_r8*rxt(k,335)*y(k,86) + & - .206_r8*rxt(k,347)*y(k,80))*y(k,139) + (rxt(k,135)*y(k,63) + & - rxt(k,136)*y(k,65) +rxt(k,202)*y(k,71) +rxt(k,205)*y(k,76) + & - rxt(k,231)*y(k,67) +rxt(k,233)*y(k,75) +rxt(k,263)*y(k,27))*y(k,106) & - + (rxt(k,143)*y(k,62) +.130_r8*rxt(k,277)*y(k,9) + & - .360_r8*rxt(k,305)*y(k,14) +.240_r8*rxt(k,330)*y(k,83) + & - .360_r8*rxt(k,340)*y(k,88) +.320_r8*rxt(k,355)*y(k,79) + & - 1.156_r8*rxt(k,367)*y(k,133))*y(k,108) & - + (.300_r8*rxt(k,270)*y(k,39) +.500_r8*rxt(k,283)*y(k,12) + & - .500_r8*rxt(k,317)*y(k,117) +.100_r8*rxt(k,332)*y(k,85) + & - .500_r8*rxt(k,365)*y(k,135))*y(k,111) + (rxt(k,117)*y(k,63) + & - 2.000_r8*rxt(k,118)*y(k,151) +rxt(k,214)*y(k,71) + & - rxt(k,237)*y(k,67) +rxt(k,272)*y(k,40))*y(k,144) + (rxt(k,2) + & - rxt(k,241)*y(k,59))*y(k,151) +rxt(k,20)*y(k,12) +rxt(k,21)*y(k,16) & - +rxt(k,27)*y(k,36) +rxt(k,28)*y(k,39) +.330_r8*rxt(k,29)*y(k,40) & - +rxt(k,32)*y(k,58) +2.000_r8*rxt(k,4)*y(k,65) +rxt(k,9)*y(k,73) & - +rxt(k,10)*y(k,74) +rxt(k,78)*y(k,75) +rxt(k,79)*y(k,76) +rxt(k,36) & - *y(k,82) +.500_r8*rxt(k,390)*y(k,98) +rxt(k,44)*y(k,117) +rxt(k,45) & - *y(k,119) +rxt(k,46)*y(k,135) - loss(k,112) = (rxt(k,358)* y(k,99) +rxt(k,359)* y(k,111) + rxt(k,42) & - + rxt(k,392) + het_rates(k,112))* y(k,112) - prod(k,112) = (.794_r8*rxt(k,347)*y(k,139) +.794_r8*rxt(k,348)*y(k,97) + & - .794_r8*rxt(k,349)*y(k,99))*y(k,80) + (.800_r8*rxt(k,329)*y(k,84) + & - .080_r8*rxt(k,353)*y(k,81))*y(k,97) - loss(k,79) = (rxt(k,300)* y(k,111) + rxt(k,43) + rxt(k,303) & - + het_rates(k,113))* y(k,113) - prod(k,79) =rxt(k,302)*y(k,98)*y(k,32) - loss(k,96) = (rxt(k,316)* y(k,97) +rxt(k,315)* y(k,139) + het_rates(k,114)) & - * y(k,114) - prod(k,96) = (.500_r8*rxt(k,317)*y(k,117) +rxt(k,322)*y(k,14))*y(k,111) - loss(k,17) = ( + het_rates(k,115))* y(k,115) + + het_rates(k,101))* y(k,101) + prod(k,133) = (rxt(k,137)*y(k,57) +rxt(k,141)*y(k,100) + & + 2.000_r8*rxt(k,142)*y(k,102) +rxt(k,146)*y(k,106) + & + rxt(k,151)*y(k,134) +rxt(k,163)*y(k,93) +rxt(k,186)*y(k,39) + & + rxt(k,193)*y(k,42) +rxt(k,219)*y(k,4) +rxt(k,225)*y(k,6) + & + rxt(k,267)*y(k,34) +rxt(k,280)*y(k,128) +rxt(k,307)*y(k,129) + & + rxt(k,315)*y(k,149))*y(k,134) + (rxt(k,8) + & + 2.000_r8*rxt(k,122)*y(k,142) +rxt(k,123)*y(k,142) + & + 2.000_r8*rxt(k,132)*y(k,100) +rxt(k,143)*y(k,57) + & + rxt(k,148)*y(k,106) +rxt(k,161)*y(k,92) +rxt(k,169)*y(k,91) + & + rxt(k,188)*y(k,39) +rxt(k,220)*y(k,4) +rxt(k,375)*y(k,113) + & + rxt(k,381)*y(k,115))*y(k,102) + (rxt(k,125)*y(k,143) + & + rxt(k,133)*y(k,100) +rxt(k,147)*y(k,106) +rxt(k,160)*y(k,92) + & + rxt(k,165)*y(k,93) +rxt(k,199)*y(k,42) +rxt(k,229)*y(k,6))*y(k,100) & + + (rxt(k,190)*y(k,42) +rxt(k,191)*y(k,42) +rxt(k,201)*y(k,106) + & + rxt(k,223)*y(k,6) +rxt(k,224)*y(k,6))*y(k,42) + (rxt(k,115) + & + rxt(k,124) +2.000_r8*rxt(k,126)*y(k,101))*y(k,143) +rxt(k,221)*y(k,6) & + *y(k,6) +rxt(k,153)*y(k,106)*y(k,69) +rxt(k,159)*y(k,92)*y(k,81) & + +rxt(k,172)*y(k,142)*y(k,82) +rxt(k,425)*y(k,145)*y(k,91) +rxt(k,19) & + *y(k,93) +rxt(k,116)*y(k,144) + loss(k,149) = (rxt(k,220)* y(k,4) +rxt(k,277)* y(k,9) +rxt(k,305)* y(k,13) & + +rxt(k,188)* y(k,39) +rxt(k,143)* y(k,57) +rxt(k,355)* y(k,74) & + +rxt(k,330)* y(k,77) +rxt(k,340)* y(k,80) +rxt(k,169)* y(k,91) & + +rxt(k,161)* y(k,92) +rxt(k,132)* y(k,100) +rxt(k,148)* y(k,106) & + +rxt(k,375)* y(k,113) +rxt(k,381)* y(k,115) +rxt(k,367)* y(k,126) & + +rxt(k,142)* y(k,134) + (rxt(k,122) +rxt(k,123))* y(k,142) & + + rxt(k,7) + rxt(k,8) + het_rates(k,102))* y(k,102) + prod(k,149) = (.150_r8*rxt(k,290)*y(k,130) +.150_r8*rxt(k,335)*y(k,137)) & + *y(k,134) +rxt(k,134)*y(k,101)*y(k,100) + loss(k,17) = ( + het_rates(k,103))* y(k,103) prod(k,17) = 0._r8 - loss(k,18) = ( + het_rates(k,116))* y(k,116) + loss(k,64) = (rxt(k,382)* y(k,115) + rxt(k,80) + het_rates(k,104))* y(k,104) + prod(k,64) = (rxt(k,192)*y(k,42) +rxt(k,222)*y(k,6))*y(k,42) + loss(k,67) = (rxt(k,371)* y(k,100) +rxt(k,372)* y(k,106) + rxt(k,109) & + + het_rates(k,105))* y(k,105) + prod(k,67) = 0._r8 + loss(k,141) = (rxt(k,344)* y(k,3) +rxt(k,230)* y(k,6) +rxt(k,301)* y(k,9) & + +rxt(k,282)* y(k,10) +rxt(k,283)* y(k,11) +rxt(k,285)* y(k,12) & + +rxt(k,322)* y(k,13) +rxt(k,309)* y(k,14) +rxt(k,310)* y(k,15) & + +rxt(k,246)* y(k,24) +rxt(k,264)* y(k,25) +rxt(k,248)* y(k,26) & + +rxt(k,249)* y(k,27) +rxt(k,287)* y(k,28) +rxt(k,251)* y(k,29) & + +rxt(k,323)* y(k,30) +rxt(k,312)* y(k,31) +rxt(k,292)* y(k,32) & + +rxt(k,293)* y(k,33) +rxt(k,269)* y(k,35) +rxt(k,270)* y(k,36) & + +rxt(k,271)* y(k,37) +rxt(k,253)* y(k,38) + (rxt(k,200) +rxt(k,201)) & + * y(k,42) +rxt(k,198)* y(k,43) +rxt(k,275)* y(k,45) + (rxt(k,370) + & + rxt(k,384))* y(k,49) +rxt(k,298)* y(k,55) +rxt(k,299)* y(k,56) & + +rxt(k,144)* y(k,58) +rxt(k,145)* y(k,60) +rxt(k,232)* y(k,62) & + +rxt(k,254)* y(k,63) +rxt(k,255)* y(k,64) +rxt(k,256)* y(k,65) & + +rxt(k,203)* y(k,66) +rxt(k,176)* y(k,68) +rxt(k,153)* y(k,69) & + +rxt(k,206)* y(k,71) +rxt(k,313)* y(k,72) +rxt(k,345)* y(k,73) & + +rxt(k,356)* y(k,74) +rxt(k,357)* y(k,76) +rxt(k,331)* y(k,77) & + +rxt(k,332)* y(k,78) +rxt(k,339)* y(k,79) +rxt(k,341)* y(k,80) & + +rxt(k,167)* y(k,81) +rxt(k,386)* y(k,88) +rxt(k,175)* y(k,92) & + +rxt(k,166)* y(k,93) +rxt(k,314)* y(k,94) +rxt(k,147)* y(k,100) & + +rxt(k,148)* y(k,102) +rxt(k,372)* y(k,105) + 2._r8*(rxt(k,149) + & + rxt(k,150))* y(k,106) +rxt(k,359)* y(k,107) +rxt(k,300)* y(k,108) & + +rxt(k,317)* y(k,111) +rxt(k,321)* y(k,112) +rxt(k,378)* y(k,113) & + +rxt(k,383)* y(k,115) +rxt(k,374)* y(k,116) +rxt(k,368)* y(k,126) & + +rxt(k,365)* y(k,127) +rxt(k,146)* y(k,134) + het_rates(k,106)) & + * y(k,106) + prod(k,141) = (2.000_r8*rxt(k,138)*y(k,57) +rxt(k,141)*y(k,100) + & + rxt(k,142)*y(k,102) +rxt(k,163)*y(k,93) +rxt(k,168)*y(k,91) + & + rxt(k,187)*y(k,39) +.450_r8*rxt(k,290)*y(k,130) + & + .150_r8*rxt(k,319)*y(k,150) +.450_r8*rxt(k,335)*y(k,137) + & + .206_r8*rxt(k,347)*y(k,75))*y(k,134) + (rxt(k,135)*y(k,58) + & + rxt(k,136)*y(k,60) +rxt(k,202)*y(k,66) +rxt(k,205)*y(k,71) + & + rxt(k,231)*y(k,62) +rxt(k,233)*y(k,70) +rxt(k,263)*y(k,25))*y(k,100) & + + (rxt(k,143)*y(k,57) +.130_r8*rxt(k,277)*y(k,9) + & + .360_r8*rxt(k,305)*y(k,13) +.240_r8*rxt(k,330)*y(k,77) + & + .360_r8*rxt(k,340)*y(k,80) +.320_r8*rxt(k,355)*y(k,74) + & + 1.156_r8*rxt(k,367)*y(k,126))*y(k,102) & + + (.300_r8*rxt(k,270)*y(k,36) +.500_r8*rxt(k,283)*y(k,11) + & + .500_r8*rxt(k,317)*y(k,111) +.100_r8*rxt(k,332)*y(k,78) + & + .500_r8*rxt(k,365)*y(k,127))*y(k,106) + (rxt(k,117)*y(k,58) + & + 2.000_r8*rxt(k,118)*y(k,152) +rxt(k,214)*y(k,66) + & + rxt(k,237)*y(k,62) +rxt(k,272)*y(k,37))*y(k,142) + (rxt(k,2) + & + rxt(k,241)*y(k,54))*y(k,152) +rxt(k,20)*y(k,11) +rxt(k,21)*y(k,14) & + +rxt(k,27)*y(k,33) +rxt(k,28)*y(k,36) +.330_r8*rxt(k,29)*y(k,37) & + +rxt(k,32)*y(k,53) +2.000_r8*rxt(k,4)*y(k,60) +rxt(k,9)*y(k,68) & + +rxt(k,10)*y(k,69) +rxt(k,78)*y(k,70) +rxt(k,79)*y(k,71) +rxt(k,36) & + *y(k,76) +.500_r8*rxt(k,390)*y(k,92) +rxt(k,44)*y(k,111) +rxt(k,45) & + *y(k,112) +rxt(k,46)*y(k,127) + loss(k,113) = (rxt(k,358)* y(k,93) +rxt(k,359)* y(k,106) + rxt(k,42) & + + rxt(k,392) + het_rates(k,107))* y(k,107) + prod(k,113) = (.794_r8*rxt(k,347)*y(k,134) +.794_r8*rxt(k,348)*y(k,91) + & + .794_r8*rxt(k,349)*y(k,93))*y(k,75) + (.800_r8*rxt(k,329)*y(k,136) + & + .080_r8*rxt(k,353)*y(k,135))*y(k,91) + loss(k,80) = (rxt(k,300)* y(k,106) + rxt(k,43) + rxt(k,303) & + + het_rates(k,108))* y(k,108) + prod(k,80) =rxt(k,302)*y(k,130)*y(k,92) + loss(k,18) = ( + het_rates(k,109))* y(k,109) prod(k,18) = 0._r8 - loss(k,81) = (rxt(k,317)* y(k,111) + rxt(k,44) + het_rates(k,117))* y(k,117) - prod(k,81) =rxt(k,315)*y(k,139)*y(k,114) - loss(k,113) = (rxt(k,318)* y(k,37) +rxt(k,320)* y(k,97) +rxt(k,319)* y(k,139) & - + het_rates(k,118))* y(k,118) - prod(k,113) = (rxt(k,321)*y(k,119) +rxt(k,323)*y(k,33))*y(k,111) - loss(k,70) = (rxt(k,321)* y(k,111) + rxt(k,45) + het_rates(k,119))* y(k,119) - prod(k,70) =.850_r8*rxt(k,319)*y(k,139)*y(k,118) - loss(k,90) = (rxt(k,373)* y(k,107) +rxt(k,375)* y(k,108) +rxt(k,378) & - * y(k,111) + het_rates(k,120))* y(k,120) - prod(k,90) =rxt(k,109)*y(k,110) +rxt(k,110)*y(k,122) - loss(k,19) = ( + rxt(k,81) + het_rates(k,121))* y(k,121) + loss(k,19) = ( + het_rates(k,110))* y(k,110) prod(k,19) = 0._r8 - loss(k,129) = (rxt(k,376)* y(k,6) +rxt(k,377)* y(k,45) +rxt(k,379)* y(k,98) & - +rxt(k,380)* y(k,107) +rxt(k,381)* y(k,108) +rxt(k,382)* y(k,109) & - +rxt(k,383)* y(k,111) + rxt(k,110) + het_rates(k,122))* y(k,122) - prod(k,129) = (rxt(k,373)*y(k,107) +rxt(k,375)*y(k,108) +rxt(k,378)*y(k,111)) & - *y(k,120) +rxt(k,371)*y(k,110)*y(k,106) +rxt(k,111)*y(k,123) - loss(k,109) = (rxt(k,374)* y(k,111) + rxt(k,111) + het_rates(k,123)) & - * y(k,123) - prod(k,109) = (rxt(k,376)*y(k,6) +rxt(k,377)*y(k,45) +rxt(k,379)*y(k,98) + & - rxt(k,380)*y(k,107) +rxt(k,381)*y(k,108) +rxt(k,382)*y(k,109) + & - rxt(k,383)*y(k,111))*y(k,122) + (rxt(k,369)*y(k,99) + & - rxt(k,370)*y(k,111) +.500_r8*rxt(k,384)*y(k,111))*y(k,52) & - +rxt(k,372)*y(k,111)*y(k,110) +rxt(k,112)*y(k,124) - loss(k,55) = (rxt(k,385)* y(k,151) + rxt(k,112) + het_rates(k,124))* y(k,124) - prod(k,55) =rxt(k,108)*y(k,66) +rxt(k,374)*y(k,123)*y(k,111) - loss(k,20) = ( + het_rates(k,125))* y(k,125) + loss(k,82) = (rxt(k,317)* y(k,106) + rxt(k,44) + het_rates(k,111))* y(k,111) + prod(k,82) =rxt(k,315)*y(k,149)*y(k,134) + loss(k,70) = (rxt(k,321)* y(k,106) + rxt(k,45) + het_rates(k,112))* y(k,112) + prod(k,70) =.850_r8*rxt(k,319)*y(k,150)*y(k,134) + loss(k,91) = (rxt(k,373)* y(k,101) +rxt(k,375)* y(k,102) +rxt(k,378) & + * y(k,106) + het_rates(k,113))* y(k,113) + prod(k,91) =rxt(k,109)*y(k,105) +rxt(k,110)*y(k,115) + loss(k,20) = ( + rxt(k,81) + het_rates(k,114))* y(k,114) prod(k,20) = 0._r8 - loss(k,21) = ( + het_rates(k,126))* y(k,126) + loss(k,130) = (rxt(k,376)* y(k,6) +rxt(k,377)* y(k,42) +rxt(k,379)* y(k,92) & + +rxt(k,380)* y(k,101) +rxt(k,381)* y(k,102) +rxt(k,382)* y(k,104) & + +rxt(k,383)* y(k,106) + rxt(k,110) + het_rates(k,115))* y(k,115) + prod(k,130) = (rxt(k,373)*y(k,101) +rxt(k,375)*y(k,102) +rxt(k,378)*y(k,106)) & + *y(k,113) +rxt(k,371)*y(k,105)*y(k,100) +rxt(k,111)*y(k,116) + loss(k,110) = (rxt(k,374)* y(k,106) + rxt(k,111) + het_rates(k,116)) & + * y(k,116) + prod(k,110) = (rxt(k,376)*y(k,6) +rxt(k,377)*y(k,42) +rxt(k,379)*y(k,92) + & + rxt(k,380)*y(k,101) +rxt(k,381)*y(k,102) +rxt(k,382)*y(k,104) + & + rxt(k,383)*y(k,106))*y(k,115) + (rxt(k,369)*y(k,93) + & + rxt(k,370)*y(k,106) +.500_r8*rxt(k,384)*y(k,106))*y(k,49) & + +rxt(k,372)*y(k,106)*y(k,105) +rxt(k,112)*y(k,117) + loss(k,56) = (rxt(k,385)* y(k,152) + rxt(k,112) + het_rates(k,117))* y(k,117) + prod(k,56) =rxt(k,108)*y(k,61) +rxt(k,374)*y(k,116)*y(k,106) + loss(k,21) = ( + het_rates(k,118))* y(k,118) prod(k,21) = 0._r8 - loss(k,22) = ( + het_rates(k,127))* y(k,127) + loss(k,22) = ( + het_rates(k,119))* y(k,119) prod(k,22) = 0._r8 - loss(k,23) = ( + het_rates(k,128))* y(k,128) + loss(k,23) = ( + het_rates(k,120))* y(k,120) prod(k,23) = 0._r8 - loss(k,24) = ( + rxt(k,113) + het_rates(k,129))* y(k,129) + loss(k,24) = ( + het_rates(k,121))* y(k,121) prod(k,24) = 0._r8 - loss(k,25) = ( + rxt(k,114) + het_rates(k,130))* y(k,130) + loss(k,25) = ( + rxt(k,113) + het_rates(k,122))* y(k,122) prod(k,25) = 0._r8 - loss(k,26) = ( + rxt(k,393) + het_rates(k,131))* y(k,131) + loss(k,26) = ( + rxt(k,114) + het_rates(k,123))* y(k,123) prod(k,26) = 0._r8 - loss(k,27) = ( + het_rates(k,132))* y(k,132) - prod(k,27) =rxt(k,393)*y(k,131) - loss(k,88) = (rxt(k,366)* y(k,99) +rxt(k,367)* y(k,108) +rxt(k,368)* y(k,111) & - + het_rates(k,133))* y(k,133) - prod(k,88) = 0._r8 - loss(k,120) = (rxt(k,360)* y(k,32) +rxt(k,361)* y(k,37) +rxt(k,363)* y(k,97) & - +rxt(k,364)* y(k,99) +rxt(k,362)* y(k,139) + het_rates(k,134)) & - * y(k,134) - prod(k,120) = (rxt(k,345)*y(k,78) +.800_r8*rxt(k,357)*y(k,82) + & - .500_r8*rxt(k,365)*y(k,135))*y(k,111) - loss(k,47) = (rxt(k,365)* y(k,111) + rxt(k,46) + het_rates(k,135))* y(k,135) - prod(k,47) =rxt(k,362)*y(k,139)*y(k,134) - loss(k,107) = (rxt(k,416)* y(k,141) +rxt(k,414)* y(k,142) +rxt(k,415) & - * y(k,147) + het_rates(k,138))* y(k,138) - prod(k,107) = (rxt(k,98) +rxt(k,100) +rxt(k,101) +rxt(k,102) +rxt(k,103) + & - rxt(k,105) +rxt(k,106) +rxt(k,107))*y(k,107) + (rxt(k,92) + & - rxt(k,93) +rxt(k,94) +rxt(k,95) +rxt(k,96) +rxt(k,97))*y(k,106) & - +rxt(k,83)*y(k,89) +rxt(k,15)*y(k,97) - loss(k,137) = (rxt(k,219)* y(k,4) +rxt(k,225)* y(k,6) +rxt(k,280)* y(k,10) & - +rxt(k,307)* y(k,15) +rxt(k,290)* y(k,32) +rxt(k,267)* y(k,37) & - + (rxt(k,186) +rxt(k,187))* y(k,42) +rxt(k,193)* y(k,45) +rxt(k,294) & - * y(k,57) + (rxt(k,137) +rxt(k,138) +rxt(k,139))* y(k,62) +rxt(k,347) & - * y(k,80) +rxt(k,352)* y(k,81) +rxt(k,326)* y(k,84) +rxt(k,335) & - * y(k,86) +rxt(k,168)* y(k,97) +rxt(k,173)* y(k,98) +rxt(k,163) & - * y(k,99) +rxt(k,141)* y(k,106) +rxt(k,142)* y(k,108) +rxt(k,146) & - * y(k,111) +rxt(k,315)* y(k,114) +rxt(k,319)* y(k,118) +rxt(k,362) & - * y(k,134) + 2._r8*rxt(k,151)* y(k,139) + rxt(k,387) & - + het_rates(k,139))* y(k,139) - prod(k,137) = (rxt(k,145)*y(k,65) +rxt(k,148)*y(k,108) +rxt(k,166)*y(k,99) + & - rxt(k,200)*y(k,45) +rxt(k,230)*y(k,6) +rxt(k,248)*y(k,28) + & - rxt(k,251)*y(k,31) +rxt(k,269)*y(k,38) +rxt(k,275)*y(k,48) + & - rxt(k,282)*y(k,11) +rxt(k,298)*y(k,60) +rxt(k,299)*y(k,61) + & - rxt(k,313)*y(k,77) +.200_r8*rxt(k,332)*y(k,85) + & - .500_r8*rxt(k,339)*y(k,87) +rxt(k,359)*y(k,112) + & - rxt(k,374)*y(k,123) +.500_r8*rxt(k,384)*y(k,52))*y(k,111) & - + (rxt(k,189)*y(k,45) +2.000_r8*rxt(k,265)*y(k,37) + & - rxt(k,268)*y(k,97) +rxt(k,279)*y(k,10) +.900_r8*rxt(k,289)*y(k,32) + & - rxt(k,306)*y(k,15) +.300_r8*rxt(k,318)*y(k,118) + & - .730_r8*rxt(k,325)*y(k,84) +rxt(k,334)*y(k,86) +rxt(k,351)*y(k,81) + & - .800_r8*rxt(k,361)*y(k,134))*y(k,37) + (rxt(k,281)*y(k,10) + & - .250_r8*rxt(k,295)*y(k,57) +rxt(k,308)*y(k,15) +rxt(k,316)*y(k,114) + & - .470_r8*rxt(k,328)*y(k,84) +.794_r8*rxt(k,348)*y(k,80) + & - .920_r8*rxt(k,353)*y(k,81) +rxt(k,363)*y(k,134))*y(k,97) & - + (rxt(k,262)*y(k,27) +.470_r8*rxt(k,327)*y(k,84) + & - .794_r8*rxt(k,349)*y(k,80) +rxt(k,354)*y(k,81) +rxt(k,358)*y(k,112) + & - rxt(k,364)*y(k,134))*y(k,99) + (.130_r8*rxt(k,277)*y(k,9) + & - .280_r8*rxt(k,305)*y(k,14) +.140_r8*rxt(k,330)*y(k,83) + & - .280_r8*rxt(k,340)*y(k,88) +.370_r8*rxt(k,355)*y(k,79))*y(k,108) & - + (rxt(k,182)*y(k,27) +rxt(k,185)*y(k,65) +rxt(k,247)*y(k,28) + & - rxt(k,250)*y(k,31))*y(k,42) + (.470_r8*rxt(k,324)*y(k,84) + & - rxt(k,350)*y(k,81) +rxt(k,360)*y(k,134))*y(k,32) & - + (rxt(k,218)*y(k,4) +rxt(k,263)*y(k,106))*y(k,27) + (rxt(k,296) + & - rxt(k,297)*y(k,107))*y(k,56) + (rxt(k,11) +rxt(k,177))*y(k,74) & - + (1.340_r8*rxt(k,37) +.660_r8*rxt(k,38))*y(k,83) & - +1.200_r8*rxt(k,278)*y(k,10)*y(k,10) +rxt(k,20)*y(k,12) +rxt(k,21) & - *y(k,16) +rxt(k,24)*y(k,30) +rxt(k,26)*y(k,34) +rxt(k,273)*y(k,144) & - *y(k,40) +2.000_r8*rxt(k,33)*y(k,60) +2.000_r8*rxt(k,34)*y(k,61) & - +rxt(k,140)*y(k,107)*y(k,62) +rxt(k,136)*y(k,106)*y(k,65) +rxt(k,35) & - *y(k,77) +rxt(k,36)*y(k,82) +rxt(k,42)*y(k,112) +rxt(k,44)*y(k,117) - loss(k,108) = (rxt(k,154)* y(k,97) +rxt(k,155)* y(k,106) +rxt(k,179) & - * y(k,107) +rxt(k,178)* y(k,138) +rxt(k,428)* y(k,148) + rxt(k,152) & - + het_rates(k,140))* y(k,140) - prod(k,108) = (.800_r8*rxt(k,414)*y(k,142) +.900_r8*rxt(k,416)*y(k,141)) & - *y(k,138) +rxt(k,418)*y(k,141)*y(k,106) - loss(k,87) = ((rxt(k,418) +rxt(k,419))* y(k,106) +rxt(k,417)* y(k,107) & - +rxt(k,416)* y(k,138) + het_rates(k,141))* y(k,141) - prod(k,87) =rxt(k,431)*y(k,149) +rxt(k,436)*y(k,150) - loss(k,92) = (rxt(k,414)* y(k,138) + het_rates(k,142))* y(k,142) - prod(k,92) = (rxt(k,424) +rxt(k,423)*y(k,89) +rxt(k,425)*y(k,97))*y(k,147) & - +rxt(k,15)*y(k,97) +rxt(k,418)*y(k,141)*y(k,106) & - +rxt(k,422)*y(k,143)*y(k,107) +rxt(k,427)*y(k,148) - loss(k,100) = (rxt(k,420)* y(k,106) + (rxt(k,421) +rxt(k,422))* y(k,107) & - + het_rates(k,143))* y(k,143) - prod(k,100) =rxt(k,83)*y(k,89) +rxt(k,428)*y(k,148)*y(k,140) +rxt(k,437) & - *y(k,150) - loss(k,142) = (rxt(k,207)* y(k,18) +rxt(k,208)* y(k,19) +rxt(k,234)* y(k,20) & - +rxt(k,209)* y(k,21) +rxt(k,210)* y(k,22) +rxt(k,211)* y(k,23) & - +rxt(k,212)* y(k,24) +rxt(k,213)* y(k,25) +rxt(k,257)* y(k,26) & - +rxt(k,258)* y(k,28) + (rxt(k,272) +rxt(k,273) +rxt(k,274))* y(k,40) & - +rxt(k,235)* y(k,41) +rxt(k,243)* y(k,50) +rxt(k,244)* y(k,51) & - +rxt(k,117)* y(k,63) +rxt(k,236)* y(k,64) + (rxt(k,237) +rxt(k,238)) & - * y(k,67) +rxt(k,259)* y(k,68) +rxt(k,260)* y(k,69) +rxt(k,261) & - * y(k,70) + (rxt(k,214) +rxt(k,215))* y(k,71) + (rxt(k,171) + & - rxt(k,172))* y(k,90) + (rxt(k,120) +rxt(k,121))* y(k,107) & - + (rxt(k,122) +rxt(k,123))* y(k,108) +rxt(k,118)* y(k,151) & - + rxt(k,119) + het_rates(k,144))* y(k,144) - prod(k,142) = (rxt(k,5) +rxt(k,179)*y(k,140))*y(k,107) +rxt(k,12)*y(k,90) & - +rxt(k,7)*y(k,108) +.850_r8*rxt(k,415)*y(k,147)*y(k,138) +rxt(k,1) & - *y(k,151) - loss(k,45) = (rxt(k,125)* y(k,106) +rxt(k,126)* y(k,107) + rxt(k,115) & - + rxt(k,124) + het_rates(k,145))* y(k,145) - prod(k,45) = (rxt(k,128) +rxt(k,127)*y(k,49) +rxt(k,129)*y(k,106) + & - rxt(k,130)*y(k,107) +rxt(k,131)*y(k,108))*y(k,146) +rxt(k,7)*y(k,108) - loss(k,46) = (rxt(k,127)* y(k,49) +rxt(k,129)* y(k,106) +rxt(k,130)* y(k,107) & - +rxt(k,131)* y(k,108) + rxt(k,116) + rxt(k,128) + het_rates(k,146)) & - * y(k,146) - prod(k,46) =rxt(k,120)*y(k,144)*y(k,107) - loss(k,106) = (rxt(k,423)* y(k,89) +rxt(k,425)* y(k,97) +rxt(k,415)* y(k,138) & - + rxt(k,424) + het_rates(k,147))* y(k,147) - prod(k,106) = (rxt(k,102) +rxt(k,107) +rxt(k,417)*y(k,141) + & - rxt(k,421)*y(k,143) +rxt(k,429)*y(k,148) +rxt(k,433)*y(k,149)) & - *y(k,107) +rxt(k,426)*y(k,148)*y(k,49) - loss(k,105) = (rxt(k,426)* y(k,49) +rxt(k,429)* y(k,107) +rxt(k,428) & - * y(k,140) + rxt(k,427) + het_rates(k,148))* y(k,148) - prod(k,105) = (rxt(k,93) +rxt(k,97) +rxt(k,419)*y(k,141) + & - rxt(k,420)*y(k,143) +rxt(k,432)*y(k,149) +rxt(k,438)*y(k,150)) & - *y(k,106) + (rxt(k,103) +rxt(k,106))*y(k,107) & - + (rxt(k,430)*y(k,149) +rxt(k,435)*y(k,150))*y(k,138) +rxt(k,412) & - *y(k,149) +rxt(k,411)*y(k,150) - loss(k,77) = (rxt(k,432)* y(k,106) +rxt(k,433)* y(k,107) +rxt(k,430) & - * y(k,138) + rxt(k,412) + rxt(k,431) + het_rates(k,149))* y(k,149) - prod(k,77) = (rxt(k,94) +rxt(k,95))*y(k,106) + (rxt(k,98) +rxt(k,100)) & - *y(k,107) + (rxt(k,413) +rxt(k,434)*y(k,138))*y(k,150) - loss(k,76) = (rxt(k,438)* y(k,106) + (rxt(k,434) +rxt(k,435))* y(k,138) & + loss(k,27) = ( + rxt(k,393) + het_rates(k,124))* y(k,124) + prod(k,27) = 0._r8 + loss(k,28) = ( + het_rates(k,125))* y(k,125) + prod(k,28) =rxt(k,393)*y(k,124) + loss(k,89) = (rxt(k,366)* y(k,93) +rxt(k,367)* y(k,102) +rxt(k,368)* y(k,106) & + + het_rates(k,126))* y(k,126) + prod(k,89) = 0._r8 + loss(k,48) = (rxt(k,365)* y(k,106) + rxt(k,46) + het_rates(k,127))* y(k,127) + prod(k,48) =rxt(k,362)*y(k,151)*y(k,134) + loss(k,99) = (rxt(k,279)* y(k,34) +rxt(k,281)* y(k,91) + 2._r8*rxt(k,278) & + * y(k,128) +rxt(k,280)* y(k,134) + het_rates(k,128))* y(k,128) + prod(k,99) = (rxt(k,284)*y(k,39) +rxt(k,285)*y(k,106))*y(k,12) & + +.500_r8*rxt(k,283)*y(k,106)*y(k,11) + loss(k,103) = (rxt(k,306)* y(k,34) +rxt(k,308)* y(k,91) +rxt(k,307)* y(k,134) & + + het_rates(k,129))* y(k,129) + prod(k,103) = (rxt(k,309)*y(k,14) +rxt(k,310)*y(k,15) + & + 1.670_r8*rxt(k,344)*y(k,3))*y(k,106) + loss(k,127) = (rxt(k,289)* y(k,34) +rxt(k,291)* y(k,91) +rxt(k,302)* y(k,92) & + + 2._r8*rxt(k,288)* y(k,130) +rxt(k,290)* y(k,134) +rxt(k,350) & + * y(k,135) +rxt(k,324)* y(k,136) +rxt(k,360)* y(k,151) & + + het_rates(k,130))* y(k,130) + prod(k,127) = (rxt(k,334)*y(k,34) +.450_r8*rxt(k,335)*y(k,134) + & + 2.000_r8*rxt(k,336)*y(k,137) +rxt(k,337)*y(k,91) +rxt(k,338)*y(k,93)) & + *y(k,137) + (.530_r8*rxt(k,324)*y(k,130) + & + .260_r8*rxt(k,325)*y(k,34) +.530_r8*rxt(k,327)*y(k,93) + & + .530_r8*rxt(k,328)*y(k,91))*y(k,136) + (rxt(k,26) + & + rxt(k,311)*y(k,93) +rxt(k,312)*y(k,106))*y(k,31) & + + (.100_r8*rxt(k,330)*y(k,77) +.280_r8*rxt(k,340)*y(k,80) + & + .080_r8*rxt(k,355)*y(k,74))*y(k,102) + (.300_r8*rxt(k,318)*y(k,34) + & + .150_r8*rxt(k,319)*y(k,134) +rxt(k,320)*y(k,91))*y(k,150) & + + (rxt(k,286)*y(k,93) +rxt(k,287)*y(k,106))*y(k,28) & + + (.600_r8*rxt(k,43) +rxt(k,303))*y(k,108) +rxt(k,25)*y(k,30) & + +.500_r8*rxt(k,293)*y(k,106)*y(k,33) +rxt(k,35)*y(k,72) & + +1.340_r8*rxt(k,37)*y(k,77) +.300_r8*rxt(k,40)*y(k,80) +rxt(k,41) & + *y(k,94) +rxt(k,45)*y(k,112) + loss(k,108) = (rxt(k,416)* y(k,139) +rxt(k,414)* y(k,140) +rxt(k,415) & + * y(k,145) + het_rates(k,131))* y(k,131) + prod(k,108) = (rxt(k,98) +rxt(k,100) +rxt(k,101) +rxt(k,102) +rxt(k,103) + & + rxt(k,105) +rxt(k,106) +rxt(k,107))*y(k,101) + (rxt(k,92) + & + rxt(k,93) +rxt(k,94) +rxt(k,95) +rxt(k,96) +rxt(k,97))*y(k,100) & + +rxt(k,83)*y(k,81) +rxt(k,15)*y(k,91) + loss(k,73) = (rxt(k,297)* y(k,101) + rxt(k,296) + het_rates(k,132))* y(k,132) + prod(k,73) =rxt(k,32)*y(k,53) +.750_r8*rxt(k,295)*y(k,133)*y(k,91) + loss(k,96) = (rxt(k,295)* y(k,91) +rxt(k,294)* y(k,134) + het_rates(k,133)) & + * y(k,133) + prod(k,96) =rxt(k,301)*y(k,106)*y(k,9) + loss(k,145) = (rxt(k,219)* y(k,4) +rxt(k,225)* y(k,6) +rxt(k,267)* y(k,34) & + + (rxt(k,186) +rxt(k,187))* y(k,39) +rxt(k,193)* y(k,42) & + + (rxt(k,137) +rxt(k,138) +rxt(k,139))* y(k,57) +rxt(k,347)* y(k,75) & + +rxt(k,168)* y(k,91) +rxt(k,173)* y(k,92) +rxt(k,163)* y(k,93) & + +rxt(k,141)* y(k,100) +rxt(k,142)* y(k,102) +rxt(k,146)* y(k,106) & + +rxt(k,280)* y(k,128) +rxt(k,307)* y(k,129) +rxt(k,290)* y(k,130) & + +rxt(k,294)* y(k,133) + 2._r8*rxt(k,151)* y(k,134) +rxt(k,352) & + * y(k,135) +rxt(k,326)* y(k,136) +rxt(k,335)* y(k,137) +rxt(k,315) & + * y(k,149) +rxt(k,319)* y(k,150) +rxt(k,362)* y(k,151) + rxt(k,387) & + + het_rates(k,134))* y(k,134) + prod(k,145) = (rxt(k,145)*y(k,60) +rxt(k,148)*y(k,102) +rxt(k,166)*y(k,93) + & + rxt(k,200)*y(k,42) +rxt(k,230)*y(k,6) +rxt(k,248)*y(k,26) + & + rxt(k,251)*y(k,29) +rxt(k,269)*y(k,35) +rxt(k,275)*y(k,45) + & + rxt(k,282)*y(k,10) +rxt(k,298)*y(k,55) +rxt(k,299)*y(k,56) + & + rxt(k,313)*y(k,72) +.200_r8*rxt(k,332)*y(k,78) + & + .500_r8*rxt(k,339)*y(k,79) +rxt(k,359)*y(k,107) + & + rxt(k,374)*y(k,116) +.500_r8*rxt(k,384)*y(k,49))*y(k,106) & + + (rxt(k,189)*y(k,42) +2.000_r8*rxt(k,265)*y(k,34) + & + rxt(k,268)*y(k,91) +rxt(k,279)*y(k,128) + & + .900_r8*rxt(k,289)*y(k,130) +rxt(k,306)*y(k,129) + & + .300_r8*rxt(k,318)*y(k,150) +.730_r8*rxt(k,325)*y(k,136) + & + rxt(k,334)*y(k,137) +rxt(k,351)*y(k,135) + & + .800_r8*rxt(k,361)*y(k,151))*y(k,34) + (rxt(k,281)*y(k,128) + & + .250_r8*rxt(k,295)*y(k,133) +rxt(k,308)*y(k,129) + & + rxt(k,316)*y(k,149) +.470_r8*rxt(k,328)*y(k,136) + & + .794_r8*rxt(k,348)*y(k,75) +.920_r8*rxt(k,353)*y(k,135) + & + rxt(k,363)*y(k,151))*y(k,91) + (rxt(k,262)*y(k,25) + & + .470_r8*rxt(k,327)*y(k,136) +.794_r8*rxt(k,349)*y(k,75) + & + rxt(k,354)*y(k,135) +rxt(k,358)*y(k,107) +rxt(k,364)*y(k,151)) & + *y(k,93) + (.130_r8*rxt(k,277)*y(k,9) +.280_r8*rxt(k,305)*y(k,13) + & + .140_r8*rxt(k,330)*y(k,77) +.280_r8*rxt(k,340)*y(k,80) + & + .370_r8*rxt(k,355)*y(k,74))*y(k,102) + (rxt(k,182)*y(k,25) + & + rxt(k,185)*y(k,60) +rxt(k,247)*y(k,26) +rxt(k,250)*y(k,29))*y(k,39) & + + (.470_r8*rxt(k,324)*y(k,136) +rxt(k,350)*y(k,135) + & + rxt(k,360)*y(k,151))*y(k,130) + (rxt(k,218)*y(k,4) + & + rxt(k,263)*y(k,100))*y(k,25) + (rxt(k,11) +rxt(k,177))*y(k,69) & + + (1.340_r8*rxt(k,37) +.660_r8*rxt(k,38))*y(k,77) & + + (rxt(k,140)*y(k,57) +rxt(k,297)*y(k,132))*y(k,101) +rxt(k,20) & + *y(k,11) +rxt(k,21)*y(k,14) +rxt(k,24)*y(k,28) +rxt(k,26)*y(k,31) & + +rxt(k,273)*y(k,142)*y(k,37) +2.000_r8*rxt(k,33)*y(k,55) & + +2.000_r8*rxt(k,34)*y(k,56) +rxt(k,136)*y(k,100)*y(k,60) +rxt(k,35) & + *y(k,72) +rxt(k,36)*y(k,76) +rxt(k,42)*y(k,107) +rxt(k,44)*y(k,111) & + +1.200_r8*rxt(k,278)*y(k,128)*y(k,128) +rxt(k,296)*y(k,132) + loss(k,123) = (rxt(k,351)* y(k,34) +rxt(k,353)* y(k,91) +rxt(k,354)* y(k,93) & + +rxt(k,350)* y(k,130) +rxt(k,352)* y(k,134) + het_rates(k,135)) & + * y(k,135) + prod(k,123) = (rxt(k,356)*y(k,74) +.200_r8*rxt(k,357)*y(k,76) + & + 1.640_r8*rxt(k,368)*y(k,126))*y(k,106) +1.700_r8*rxt(k,366)*y(k,126) & + *y(k,93) + loss(k,124) = (rxt(k,325)* y(k,34) + (rxt(k,328) +rxt(k,329))* y(k,91) & + +rxt(k,327)* y(k,93) +rxt(k,324)* y(k,130) +rxt(k,326)* y(k,134) & + + het_rates(k,136))* y(k,136) + prod(k,124) = (.500_r8*rxt(k,331)*y(k,77) +.200_r8*rxt(k,332)*y(k,78) + & + rxt(k,341)*y(k,80))*y(k,106) + loss(k,126) = (rxt(k,334)* y(k,34) +rxt(k,337)* y(k,91) +rxt(k,342)* y(k,92) & + +rxt(k,338)* y(k,93) +rxt(k,333)* y(k,130) +rxt(k,335)* y(k,134) & + + 2._r8*rxt(k,336)* y(k,137) + het_rates(k,137))* y(k,137) + prod(k,126) = (.660_r8*rxt(k,37) +.500_r8*rxt(k,331)*y(k,106))*y(k,77) & + + (rxt(k,39) +rxt(k,343))*y(k,79) +.500_r8*rxt(k,332)*y(k,106) & + *y(k,78) + loss(k,109) = (rxt(k,154)* y(k,91) +rxt(k,155)* y(k,100) +rxt(k,179) & + * y(k,101) +rxt(k,178)* y(k,131) +rxt(k,428)* y(k,146) + rxt(k,152) & + + het_rates(k,138))* y(k,138) + prod(k,109) = (.800_r8*rxt(k,414)*y(k,140) +.900_r8*rxt(k,416)*y(k,139)) & + *y(k,131) +rxt(k,418)*y(k,139)*y(k,100) + loss(k,88) = ((rxt(k,418) +rxt(k,419))* y(k,100) +rxt(k,417)* y(k,101) & + +rxt(k,416)* y(k,131) + het_rates(k,139))* y(k,139) + prod(k,88) =rxt(k,431)*y(k,147) +rxt(k,436)*y(k,148) + loss(k,93) = (rxt(k,414)* y(k,131) + het_rates(k,140))* y(k,140) + prod(k,93) = (rxt(k,424) +rxt(k,423)*y(k,81) +rxt(k,425)*y(k,91))*y(k,145) & + +rxt(k,15)*y(k,91) +rxt(k,418)*y(k,139)*y(k,100) & + +rxt(k,422)*y(k,141)*y(k,101) +rxt(k,427)*y(k,146) + loss(k,101) = (rxt(k,420)* y(k,100) + (rxt(k,421) +rxt(k,422))* y(k,101) & + + het_rates(k,141))* y(k,141) + prod(k,101) =rxt(k,83)*y(k,81) +rxt(k,428)*y(k,146)*y(k,138) +rxt(k,437) & + *y(k,148) + loss(k,140) = (rxt(k,207)* y(k,16) +rxt(k,208)* y(k,17) +rxt(k,234)* y(k,18) & + +rxt(k,209)* y(k,19) +rxt(k,210)* y(k,20) +rxt(k,211)* y(k,21) & + +rxt(k,212)* y(k,22) +rxt(k,213)* y(k,23) +rxt(k,257)* y(k,24) & + +rxt(k,258)* y(k,26) + (rxt(k,272) +rxt(k,273) +rxt(k,274))* y(k,37) & + +rxt(k,235)* y(k,38) +rxt(k,243)* y(k,47) +rxt(k,244)* y(k,48) & + +rxt(k,117)* y(k,58) +rxt(k,236)* y(k,59) + (rxt(k,237) +rxt(k,238)) & + * y(k,62) +rxt(k,259)* y(k,63) +rxt(k,260)* y(k,64) +rxt(k,261) & + * y(k,65) + (rxt(k,214) +rxt(k,215))* y(k,66) + (rxt(k,171) + & + rxt(k,172))* y(k,82) + (rxt(k,120) +rxt(k,121))* y(k,101) & + + (rxt(k,122) +rxt(k,123))* y(k,102) +rxt(k,118)* y(k,152) & + + rxt(k,119) + het_rates(k,142))* y(k,142) + prod(k,140) = (rxt(k,5) +rxt(k,179)*y(k,138))*y(k,101) +rxt(k,12)*y(k,82) & + +rxt(k,7)*y(k,102) +.850_r8*rxt(k,415)*y(k,145)*y(k,131) +rxt(k,1) & + *y(k,152) + loss(k,46) = (rxt(k,125)* y(k,100) +rxt(k,126)* y(k,101) + rxt(k,115) & + + rxt(k,124) + het_rates(k,143))* y(k,143) + prod(k,46) = (rxt(k,128) +rxt(k,127)*y(k,46) +rxt(k,129)*y(k,100) + & + rxt(k,130)*y(k,101) +rxt(k,131)*y(k,102))*y(k,144) +rxt(k,7)*y(k,102) + loss(k,47) = (rxt(k,127)* y(k,46) +rxt(k,129)* y(k,100) +rxt(k,130)* y(k,101) & + +rxt(k,131)* y(k,102) + rxt(k,116) + rxt(k,128) + het_rates(k,144)) & + * y(k,144) + prod(k,47) =rxt(k,120)*y(k,142)*y(k,101) + loss(k,107) = (rxt(k,423)* y(k,81) +rxt(k,425)* y(k,91) +rxt(k,415)* y(k,131) & + + rxt(k,424) + het_rates(k,145))* y(k,145) + prod(k,107) = (rxt(k,102) +rxt(k,107) +rxt(k,417)*y(k,139) + & + rxt(k,421)*y(k,141) +rxt(k,429)*y(k,146) +rxt(k,433)*y(k,147)) & + *y(k,101) +rxt(k,426)*y(k,146)*y(k,46) + loss(k,106) = (rxt(k,426)* y(k,46) +rxt(k,429)* y(k,101) +rxt(k,428) & + * y(k,138) + rxt(k,427) + het_rates(k,146))* y(k,146) + prod(k,106) = (rxt(k,93) +rxt(k,97) +rxt(k,419)*y(k,139) + & + rxt(k,420)*y(k,141) +rxt(k,432)*y(k,147) +rxt(k,438)*y(k,148)) & + *y(k,100) + (rxt(k,103) +rxt(k,106))*y(k,101) & + + (rxt(k,430)*y(k,147) +rxt(k,435)*y(k,148))*y(k,131) +rxt(k,412) & + *y(k,147) +rxt(k,411)*y(k,148) + loss(k,78) = (rxt(k,432)* y(k,100) +rxt(k,433)* y(k,101) +rxt(k,430) & + * y(k,131) + rxt(k,412) + rxt(k,431) + het_rates(k,147))* y(k,147) + prod(k,78) = (rxt(k,94) +rxt(k,95))*y(k,100) + (rxt(k,98) +rxt(k,100)) & + *y(k,101) + (rxt(k,413) +rxt(k,434)*y(k,131))*y(k,148) + loss(k,77) = (rxt(k,438)* y(k,100) + (rxt(k,434) +rxt(k,435))* y(k,131) & + rxt(k,411) + rxt(k,413) + rxt(k,436) + rxt(k,437) & + + het_rates(k,148))* y(k,148) + prod(k,77) = (rxt(k,92) +rxt(k,96))*y(k,100) + (rxt(k,101) +rxt(k,105)) & + *y(k,101) + loss(k,98) = (rxt(k,316)* y(k,91) +rxt(k,315)* y(k,134) + het_rates(k,149)) & + * y(k,149) + prod(k,98) = (.500_r8*rxt(k,317)*y(k,111) +rxt(k,322)*y(k,13))*y(k,106) + loss(k,115) = (rxt(k,318)* y(k,34) +rxt(k,320)* y(k,91) +rxt(k,319)* y(k,134) & + het_rates(k,150))* y(k,150) - prod(k,76) = (rxt(k,92) +rxt(k,96))*y(k,106) + (rxt(k,101) +rxt(k,105)) & - *y(k,107) - loss(k,149) = (rxt(k,241)* y(k,59) +rxt(k,385)* y(k,124) +rxt(k,118) & - * y(k,144) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,151)) & + prod(k,115) = (rxt(k,321)*y(k,112) +rxt(k,323)*y(k,30))*y(k,106) + loss(k,121) = (rxt(k,361)* y(k,34) +rxt(k,363)* y(k,91) +rxt(k,364)* y(k,93) & + +rxt(k,360)* y(k,130) +rxt(k,362)* y(k,134) + het_rates(k,151)) & * y(k,151) - prod(k,149) = (rxt(k,144)*y(k,63) +rxt(k,145)*y(k,65) +rxt(k,146)*y(k,139) + & - rxt(k,149)*y(k,111) +rxt(k,153)*y(k,74) +rxt(k,176)*y(k,73) + & - rxt(k,203)*y(k,71) +rxt(k,206)*y(k,76) +rxt(k,232)*y(k,67) + & - rxt(k,246)*y(k,26) +rxt(k,248)*y(k,28) +rxt(k,249)*y(k,29) + & - rxt(k,251)*y(k,31) +rxt(k,256)*y(k,70) +rxt(k,264)*y(k,27) + & - rxt(k,270)*y(k,39) +rxt(k,271)*y(k,40) +rxt(k,285)*y(k,13) + & - rxt(k,287)*y(k,30) +rxt(k,292)*y(k,35) +rxt(k,293)*y(k,36) + & - rxt(k,309)*y(k,16) +rxt(k,310)*y(k,17) +rxt(k,312)*y(k,34) + & - rxt(k,317)*y(k,117) +rxt(k,321)*y(k,119) +rxt(k,323)*y(k,33) + & - .500_r8*rxt(k,331)*y(k,83) +rxt(k,386)*y(k,95))*y(k,111) & - + (rxt(k,395)*y(k,76) +rxt(k,401)*y(k,76) +rxt(k,402)*y(k,75) + & - rxt(k,406)*y(k,76) +rxt(k,407)*y(k,75))*y(k,71) + (rxt(k,387) + & - rxt(k,139)*y(k,62))*y(k,139) +.050_r8*rxt(k,29)*y(k,40) +rxt(k,108) & - *y(k,66) + prod(k,121) = (rxt(k,345)*y(k,73) +.800_r8*rxt(k,357)*y(k,76) + & + .500_r8*rxt(k,365)*y(k,127))*y(k,106) + loss(k,150) = (rxt(k,241)* y(k,54) +rxt(k,385)* y(k,117) +rxt(k,118) & + * y(k,142) + rxt(k,1) + rxt(k,2) + rxt(k,3) + het_rates(k,152)) & + * y(k,152) + prod(k,150) = (rxt(k,144)*y(k,58) +rxt(k,145)*y(k,60) +rxt(k,146)*y(k,134) + & + rxt(k,149)*y(k,106) +rxt(k,153)*y(k,69) +rxt(k,176)*y(k,68) + & + rxt(k,203)*y(k,66) +rxt(k,206)*y(k,71) +rxt(k,232)*y(k,62) + & + rxt(k,246)*y(k,24) +rxt(k,248)*y(k,26) +rxt(k,249)*y(k,27) + & + rxt(k,251)*y(k,29) +rxt(k,256)*y(k,65) +rxt(k,264)*y(k,25) + & + rxt(k,270)*y(k,36) +rxt(k,271)*y(k,37) +rxt(k,285)*y(k,12) + & + rxt(k,287)*y(k,28) +rxt(k,292)*y(k,32) +rxt(k,293)*y(k,33) + & + rxt(k,309)*y(k,14) +rxt(k,310)*y(k,15) +rxt(k,312)*y(k,31) + & + rxt(k,317)*y(k,111) +rxt(k,321)*y(k,112) +rxt(k,323)*y(k,30) + & + .500_r8*rxt(k,331)*y(k,77) +rxt(k,386)*y(k,88))*y(k,106) & + + (rxt(k,395)*y(k,71) +rxt(k,401)*y(k,71) +rxt(k,402)*y(k,70) + & + rxt(k,406)*y(k,71) +rxt(k,407)*y(k,70))*y(k,66) + (rxt(k,387) + & + rxt(k,139)*y(k,57))*y(k,134) +.050_r8*rxt(k,29)*y(k,37) +rxt(k,108) & + *y(k,61) end do end subroutine imp_prod_loss end module mo_prod_loss diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_rxt_rates_conv.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_rxt_rates_conv.F90 index 4977fbf47d..db460e5f32 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_rxt_rates_conv.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_rxt_rates_conv.F90 @@ -8,89 +8,89 @@ subroutine set_rates( rxt_rates, sol, ncol ) real(r8), intent(inout) :: rxt_rates(:,:,:) real(r8), intent(in) :: sol(:,:,:) integer, intent(in) :: ncol - rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 151) ! rate_const*H2O - rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 151) ! rate_const*H2O - rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 151) ! rate_const*H2O - rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 65) ! rate_const*H2O2 - rxt_rates(:ncol,:, 5) = rxt_rates(:ncol,:, 5)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 6) = rxt_rates(:ncol,:, 6)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 108) ! rate_const*O3 - rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 108) ! rate_const*O3 - rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 73) ! rate_const*HNO3 - rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 74) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 74) ! rate_const*HO2NO2 - rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 90) ! rate_const*N2O - rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 97) ! rate_const*NO - rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 97) ! rate_const*NO - rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 98) ! rate_const*NO2 - rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 99) ! rate_const*NO3 - rxt_rates(:ncol,:, 19) = rxt_rates(:ncol,:, 19)*sol(:ncol,:, 99) ! rate_const*NO3 - rxt_rates(:ncol,:, 20) = rxt_rates(:ncol,:, 20)*sol(:ncol,:, 12) ! rate_const*C2H5OOH - rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 16) ! rate_const*C3H7OOH - rxt_rates(:ncol,:, 22) = rxt_rates(:ncol,:, 22)*sol(:ncol,:, 27) ! rate_const*CH2O - rxt_rates(:ncol,:, 23) = rxt_rates(:ncol,:, 23)*sol(:ncol,:, 27) ! rate_const*CH2O - rxt_rates(:ncol,:, 24) = rxt_rates(:ncol,:, 24)*sol(:ncol,:, 30) ! rate_const*CH3CHO - rxt_rates(:ncol,:, 25) = rxt_rates(:ncol,:, 25)*sol(:ncol,:, 33) ! rate_const*CH3COCH3 - rxt_rates(:ncol,:, 26) = rxt_rates(:ncol,:, 26)*sol(:ncol,:, 34) ! rate_const*CH3COCHO - rxt_rates(:ncol,:, 27) = rxt_rates(:ncol,:, 27)*sol(:ncol,:, 36) ! rate_const*CH3COOOH - rxt_rates(:ncol,:, 28) = rxt_rates(:ncol,:, 28)*sol(:ncol,:, 39) ! rate_const*CH3OOH - rxt_rates(:ncol,:, 29) = rxt_rates(:ncol,:, 29)*sol(:ncol,:, 40) ! rate_const*CH4 - rxt_rates(:ncol,:, 30) = rxt_rates(:ncol,:, 30)*sol(:ncol,:, 40) ! rate_const*CH4 - rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 49) ! rate_const*CO2 - rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 58) ! rate_const*EOOH - rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 60) ! rate_const*GLYALD - rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 61) ! rate_const*GLYOXAL - rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 77) ! rate_const*HYAC - rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 82) ! rate_const*ISOPOOH - rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 83) ! rate_const*MACR - rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 83) ! rate_const*MACR - rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 87) ! rate_const*MPAN - rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 88) ! rate_const*MVK - rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 100) ! rate_const*NOA - rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 112) ! rate_const*ONITR - rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 113) ! rate_const*PAN - rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 117) ! rate_const*POOH - rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 119) ! rate_const*ROOH - rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 135) ! rate_const*XOOH + rxt_rates(:ncol,:, 1) = rxt_rates(:ncol,:, 1)*sol(:ncol,:, 152) ! rate_const*H2O + rxt_rates(:ncol,:, 2) = rxt_rates(:ncol,:, 2)*sol(:ncol,:, 152) ! rate_const*H2O + rxt_rates(:ncol,:, 3) = rxt_rates(:ncol,:, 3)*sol(:ncol,:, 152) ! rate_const*H2O + rxt_rates(:ncol,:, 4) = rxt_rates(:ncol,:, 4)*sol(:ncol,:, 60) ! rate_const*H2O2 + rxt_rates(:ncol,:, 5) = rxt_rates(:ncol,:, 5)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 6) = rxt_rates(:ncol,:, 6)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 7) = rxt_rates(:ncol,:, 7)*sol(:ncol,:, 102) ! rate_const*O3 + rxt_rates(:ncol,:, 8) = rxt_rates(:ncol,:, 8)*sol(:ncol,:, 102) ! rate_const*O3 + rxt_rates(:ncol,:, 9) = rxt_rates(:ncol,:, 9)*sol(:ncol,:, 68) ! rate_const*HNO3 + rxt_rates(:ncol,:, 10) = rxt_rates(:ncol,:, 10)*sol(:ncol,:, 69) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 11) = rxt_rates(:ncol,:, 11)*sol(:ncol,:, 69) ! rate_const*HO2NO2 + rxt_rates(:ncol,:, 12) = rxt_rates(:ncol,:, 12)*sol(:ncol,:, 82) ! rate_const*N2O + rxt_rates(:ncol,:, 13) = rxt_rates(:ncol,:, 13)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 14) = rxt_rates(:ncol,:, 14)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 15) = rxt_rates(:ncol,:, 15)*sol(:ncol,:, 91) ! rate_const*NO + rxt_rates(:ncol,:, 16) = rxt_rates(:ncol,:, 16)*sol(:ncol,:, 91) ! rate_const*NO + rxt_rates(:ncol,:, 17) = rxt_rates(:ncol,:, 17)*sol(:ncol,:, 92) ! rate_const*NO2 + rxt_rates(:ncol,:, 18) = rxt_rates(:ncol,:, 18)*sol(:ncol,:, 93) ! rate_const*NO3 + rxt_rates(:ncol,:, 19) = rxt_rates(:ncol,:, 19)*sol(:ncol,:, 93) ! rate_const*NO3 + rxt_rates(:ncol,:, 20) = rxt_rates(:ncol,:, 20)*sol(:ncol,:, 11) ! rate_const*C2H5OOH + rxt_rates(:ncol,:, 21) = rxt_rates(:ncol,:, 21)*sol(:ncol,:, 14) ! rate_const*C3H7OOH + rxt_rates(:ncol,:, 22) = rxt_rates(:ncol,:, 22)*sol(:ncol,:, 25) ! rate_const*CH2O + rxt_rates(:ncol,:, 23) = rxt_rates(:ncol,:, 23)*sol(:ncol,:, 25) ! rate_const*CH2O + rxt_rates(:ncol,:, 24) = rxt_rates(:ncol,:, 24)*sol(:ncol,:, 28) ! rate_const*CH3CHO + rxt_rates(:ncol,:, 25) = rxt_rates(:ncol,:, 25)*sol(:ncol,:, 30) ! rate_const*CH3COCH3 + rxt_rates(:ncol,:, 26) = rxt_rates(:ncol,:, 26)*sol(:ncol,:, 31) ! rate_const*CH3COCHO + rxt_rates(:ncol,:, 27) = rxt_rates(:ncol,:, 27)*sol(:ncol,:, 33) ! rate_const*CH3COOOH + rxt_rates(:ncol,:, 28) = rxt_rates(:ncol,:, 28)*sol(:ncol,:, 36) ! rate_const*CH3OOH + rxt_rates(:ncol,:, 29) = rxt_rates(:ncol,:, 29)*sol(:ncol,:, 37) ! rate_const*CH4 + rxt_rates(:ncol,:, 30) = rxt_rates(:ncol,:, 30)*sol(:ncol,:, 37) ! rate_const*CH4 + rxt_rates(:ncol,:, 31) = rxt_rates(:ncol,:, 31)*sol(:ncol,:, 46) ! rate_const*CO2 + rxt_rates(:ncol,:, 32) = rxt_rates(:ncol,:, 32)*sol(:ncol,:, 53) ! rate_const*EOOH + rxt_rates(:ncol,:, 33) = rxt_rates(:ncol,:, 33)*sol(:ncol,:, 55) ! rate_const*GLYALD + rxt_rates(:ncol,:, 34) = rxt_rates(:ncol,:, 34)*sol(:ncol,:, 56) ! rate_const*GLYOXAL + rxt_rates(:ncol,:, 35) = rxt_rates(:ncol,:, 35)*sol(:ncol,:, 72) ! rate_const*HYAC + rxt_rates(:ncol,:, 36) = rxt_rates(:ncol,:, 36)*sol(:ncol,:, 76) ! rate_const*ISOPOOH + rxt_rates(:ncol,:, 37) = rxt_rates(:ncol,:, 37)*sol(:ncol,:, 77) ! rate_const*MACR + rxt_rates(:ncol,:, 38) = rxt_rates(:ncol,:, 38)*sol(:ncol,:, 77) ! rate_const*MACR + rxt_rates(:ncol,:, 39) = rxt_rates(:ncol,:, 39)*sol(:ncol,:, 79) ! rate_const*MPAN + rxt_rates(:ncol,:, 40) = rxt_rates(:ncol,:, 40)*sol(:ncol,:, 80) ! rate_const*MVK + rxt_rates(:ncol,:, 41) = rxt_rates(:ncol,:, 41)*sol(:ncol,:, 94) ! rate_const*NOA + rxt_rates(:ncol,:, 42) = rxt_rates(:ncol,:, 42)*sol(:ncol,:, 107) ! rate_const*ONITR + rxt_rates(:ncol,:, 43) = rxt_rates(:ncol,:, 43)*sol(:ncol,:, 108) ! rate_const*PAN + rxt_rates(:ncol,:, 44) = rxt_rates(:ncol,:, 44)*sol(:ncol,:, 111) ! rate_const*POOH + rxt_rates(:ncol,:, 45) = rxt_rates(:ncol,:, 45)*sol(:ncol,:, 112) ! rate_const*ROOH + rxt_rates(:ncol,:, 46) = rxt_rates(:ncol,:, 46)*sol(:ncol,:, 127) ! rate_const*XOOH rxt_rates(:ncol,:, 47) = rxt_rates(:ncol,:, 47)*sol(:ncol,:, 5) ! rate_const*BRCL rxt_rates(:ncol,:, 48) = rxt_rates(:ncol,:, 48)*sol(:ncol,:, 6) ! rate_const*BRO rxt_rates(:ncol,:, 49) = rxt_rates(:ncol,:, 49)*sol(:ncol,:, 7) ! rate_const*BRONO2 rxt_rates(:ncol,:, 50) = rxt_rates(:ncol,:, 50)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 51) = rxt_rates(:ncol,:, 51)*sol(:ncol,:, 18) ! rate_const*CCL4 - rxt_rates(:ncol,:, 52) = rxt_rates(:ncol,:, 52)*sol(:ncol,:, 19) ! rate_const*CF2CLBR - rxt_rates(:ncol,:, 53) = rxt_rates(:ncol,:, 53)*sol(:ncol,:, 20) ! rate_const*CF3BR - rxt_rates(:ncol,:, 54) = rxt_rates(:ncol,:, 54)*sol(:ncol,:, 21) ! rate_const*CFC11 - rxt_rates(:ncol,:, 55) = rxt_rates(:ncol,:, 55)*sol(:ncol,:, 22) ! rate_const*CFC113 - rxt_rates(:ncol,:, 56) = rxt_rates(:ncol,:, 56)*sol(:ncol,:, 23) ! rate_const*CFC114 - rxt_rates(:ncol,:, 57) = rxt_rates(:ncol,:, 57)*sol(:ncol,:, 24) ! rate_const*CFC115 - rxt_rates(:ncol,:, 58) = rxt_rates(:ncol,:, 58)*sol(:ncol,:, 25) ! rate_const*CFC12 - rxt_rates(:ncol,:, 59) = rxt_rates(:ncol,:, 59)*sol(:ncol,:, 26) ! rate_const*CH2BR2 - rxt_rates(:ncol,:, 60) = rxt_rates(:ncol,:, 60)*sol(:ncol,:, 28) ! rate_const*CH3BR - rxt_rates(:ncol,:, 61) = rxt_rates(:ncol,:, 61)*sol(:ncol,:, 29) ! rate_const*CH3CCL3 - rxt_rates(:ncol,:, 62) = rxt_rates(:ncol,:, 62)*sol(:ncol,:, 31) ! rate_const*CH3CL - rxt_rates(:ncol,:, 63) = rxt_rates(:ncol,:, 63)*sol(:ncol,:, 41) ! rate_const*CHBR3 - rxt_rates(:ncol,:, 64) = rxt_rates(:ncol,:, 64)*sol(:ncol,:, 43) ! rate_const*CL2 - rxt_rates(:ncol,:, 65) = rxt_rates(:ncol,:, 65)*sol(:ncol,:, 44) ! rate_const*CL2O2 - rxt_rates(:ncol,:, 66) = rxt_rates(:ncol,:, 66)*sol(:ncol,:, 45) ! rate_const*CLO - rxt_rates(:ncol,:, 67) = rxt_rates(:ncol,:, 67)*sol(:ncol,:, 46) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 68) = rxt_rates(:ncol,:, 68)*sol(:ncol,:, 46) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 69) = rxt_rates(:ncol,:, 69)*sol(:ncol,:, 50) ! rate_const*COF2 - rxt_rates(:ncol,:, 70) = rxt_rates(:ncol,:, 70)*sol(:ncol,:, 51) ! rate_const*COFCL - rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 64) ! rate_const*H2402 - rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 67) ! rate_const*HBR - rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 68) ! rate_const*HCFC141B - rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 69) ! rate_const*HCFC142B - rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 70) ! rate_const*HCFC22 - rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 71) ! rate_const*HCL - rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 72) ! rate_const*HF - rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 75) ! rate_const*HOBR - rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 76) ! rate_const*HOCL - rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 109) ! rate_const*OCLO - rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 121) ! rate_const*SF6 - rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 49) ! rate_const*CO2 - rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 89) ! rate_const*N + rxt_rates(:ncol,:, 51) = rxt_rates(:ncol,:, 51)*sol(:ncol,:, 16) ! rate_const*CCL4 + rxt_rates(:ncol,:, 52) = rxt_rates(:ncol,:, 52)*sol(:ncol,:, 17) ! rate_const*CF2CLBR + rxt_rates(:ncol,:, 53) = rxt_rates(:ncol,:, 53)*sol(:ncol,:, 18) ! rate_const*CF3BR + rxt_rates(:ncol,:, 54) = rxt_rates(:ncol,:, 54)*sol(:ncol,:, 19) ! rate_const*CFC11 + rxt_rates(:ncol,:, 55) = rxt_rates(:ncol,:, 55)*sol(:ncol,:, 20) ! rate_const*CFC113 + rxt_rates(:ncol,:, 56) = rxt_rates(:ncol,:, 56)*sol(:ncol,:, 21) ! rate_const*CFC114 + rxt_rates(:ncol,:, 57) = rxt_rates(:ncol,:, 57)*sol(:ncol,:, 22) ! rate_const*CFC115 + rxt_rates(:ncol,:, 58) = rxt_rates(:ncol,:, 58)*sol(:ncol,:, 23) ! rate_const*CFC12 + rxt_rates(:ncol,:, 59) = rxt_rates(:ncol,:, 59)*sol(:ncol,:, 24) ! rate_const*CH2BR2 + rxt_rates(:ncol,:, 60) = rxt_rates(:ncol,:, 60)*sol(:ncol,:, 26) ! rate_const*CH3BR + rxt_rates(:ncol,:, 61) = rxt_rates(:ncol,:, 61)*sol(:ncol,:, 27) ! rate_const*CH3CCL3 + rxt_rates(:ncol,:, 62) = rxt_rates(:ncol,:, 62)*sol(:ncol,:, 29) ! rate_const*CH3CL + rxt_rates(:ncol,:, 63) = rxt_rates(:ncol,:, 63)*sol(:ncol,:, 38) ! rate_const*CHBR3 + rxt_rates(:ncol,:, 64) = rxt_rates(:ncol,:, 64)*sol(:ncol,:, 40) ! rate_const*CL2 + rxt_rates(:ncol,:, 65) = rxt_rates(:ncol,:, 65)*sol(:ncol,:, 41) ! rate_const*CL2O2 + rxt_rates(:ncol,:, 66) = rxt_rates(:ncol,:, 66)*sol(:ncol,:, 42) ! rate_const*CLO + rxt_rates(:ncol,:, 67) = rxt_rates(:ncol,:, 67)*sol(:ncol,:, 43) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 68) = rxt_rates(:ncol,:, 68)*sol(:ncol,:, 43) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 69) = rxt_rates(:ncol,:, 69)*sol(:ncol,:, 47) ! rate_const*COF2 + rxt_rates(:ncol,:, 70) = rxt_rates(:ncol,:, 70)*sol(:ncol,:, 48) ! rate_const*COFCL + rxt_rates(:ncol,:, 71) = rxt_rates(:ncol,:, 71)*sol(:ncol,:, 59) ! rate_const*H2402 + rxt_rates(:ncol,:, 72) = rxt_rates(:ncol,:, 72)*sol(:ncol,:, 62) ! rate_const*HBR + rxt_rates(:ncol,:, 73) = rxt_rates(:ncol,:, 73)*sol(:ncol,:, 63) ! rate_const*HCFC141B + rxt_rates(:ncol,:, 74) = rxt_rates(:ncol,:, 74)*sol(:ncol,:, 64) ! rate_const*HCFC142B + rxt_rates(:ncol,:, 75) = rxt_rates(:ncol,:, 75)*sol(:ncol,:, 65) ! rate_const*HCFC22 + rxt_rates(:ncol,:, 76) = rxt_rates(:ncol,:, 76)*sol(:ncol,:, 66) ! rate_const*HCL + rxt_rates(:ncol,:, 77) = rxt_rates(:ncol,:, 77)*sol(:ncol,:, 67) ! rate_const*HF + rxt_rates(:ncol,:, 78) = rxt_rates(:ncol,:, 78)*sol(:ncol,:, 70) ! rate_const*HOBR + rxt_rates(:ncol,:, 79) = rxt_rates(:ncol,:, 79)*sol(:ncol,:, 71) ! rate_const*HOCL + rxt_rates(:ncol,:, 80) = rxt_rates(:ncol,:, 80)*sol(:ncol,:, 104) ! rate_const*OCLO + rxt_rates(:ncol,:, 81) = rxt_rates(:ncol,:, 81)*sol(:ncol,:, 114) ! rate_const*SF6 + rxt_rates(:ncol,:, 82) = rxt_rates(:ncol,:, 82)*sol(:ncol,:, 46) ! rate_const*CO2 + rxt_rates(:ncol,:, 83) = rxt_rates(:ncol,:, 83)*sol(:ncol,:, 81) ! rate_const*N ! rate_const*N2 ! rate_const*N2 ! rate_const*N2 @@ -99,352 +99,352 @@ subroutine set_rates( rxt_rates, sol, ncol ) ! rate_const*N2 ! rate_const*N2 ! rate_const*N2 - rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 106) ! rate_const*O - rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 107) ! rate_const*O2 - rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 66) ! rate_const*H2SO4 - rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 110) ! rate_const*OCS - rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 122) ! rate_const*SO - rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 123) ! rate_const*SO2 - rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 124) ! rate_const*SO3 - rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 129) ! rate_const*soa_a1 - rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 130) ! rate_const*soa_a2 - rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 145) ! rate_const*O2_1D - rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 146) ! rate_const*O2_1S - rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 144)*sol(:ncol,:, 63) ! rate_const*O1D*H2 - rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 144)*sol(:ncol,:, 151) ! rate_const*O1D*H2O - rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 144) ! rate_const*N2*O1D - rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 144)*sol(:ncol,:, 107) ! rate_const*O1D*O2 - rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 144)*sol(:ncol,:, 107) ! rate_const*O1D*O2 - rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 144)*sol(:ncol,:, 108) ! rate_const*O1D*O3 - rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 144)*sol(:ncol,:, 108) ! rate_const*O1D*O3 - rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 145) ! rate_const*N2*O2_1D - rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 145)*sol(:ncol,:, 106) ! rate_const*O2_1D*O - rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 145)*sol(:ncol,:, 107) ! rate_const*O2_1D*O2 - rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 146)*sol(:ncol,:, 49) ! rate_const*O2_1S*CO2 - rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 146) ! rate_const*N2*O2_1S - rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 146)*sol(:ncol,:, 106) ! rate_const*O2_1S*O - rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 146)*sol(:ncol,:, 107) ! rate_const*O2_1S*O2 - rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 146)*sol(:ncol,:, 108) ! rate_const*O2_1S*O3 - rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 106)*sol(:ncol,:, 108) ! rate_const*O*O3 - rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 106)*sol(:ncol,:, 106) ! rate_const*M*O*O - rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 106)*sol(:ncol,:, 107) ! rate_const*M*O*O2 - rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 63)*sol(:ncol,:, 106) ! rate_const*H2*O - rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 65)*sol(:ncol,:, 106) ! rate_const*H2O2*O - rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 62)*sol(:ncol,:, 139) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 62)*sol(:ncol,:, 139) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 62)*sol(:ncol,:, 139) ! rate_const*H*HO2 - rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 62)*sol(:ncol,:, 107) ! rate_const*M*H*O2 - rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 139)*sol(:ncol,:, 106) ! rate_const*HO2*O - rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 139)*sol(:ncol,:, 108) ! rate_const*HO2*O3 - rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 62)*sol(:ncol,:, 108) ! rate_const*H*O3 - rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 111)*sol(:ncol,:, 63) ! rate_const*OH*H2 - rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 111)*sol(:ncol,:, 65) ! rate_const*OH*H2O2 - rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 111)*sol(:ncol,:, 139) ! rate_const*OH*HO2 - rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 111)*sol(:ncol,:, 106) ! rate_const*OH*O - rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 111)*sol(:ncol,:, 108) ! rate_const*OH*O3 - rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 111)*sol(:ncol,:, 111) ! rate_const*OH*OH - rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 111)*sol(:ncol,:, 111) ! rate_const*M*OH*OH - rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 139)*sol(:ncol,:, 139) ! rate_const*HO2*HO2 - rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 140) ! rate_const*N2D - rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 74)*sol(:ncol,:, 111) ! rate_const*HO2NO2*OH - rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 140)*sol(:ncol,:, 97) ! rate_const*N2D*NO - rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 140)*sol(:ncol,:, 106) ! rate_const*N2D*O - rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 89)*sol(:ncol,:, 97) ! rate_const*N*NO - rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 89)*sol(:ncol,:, 98) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 89)*sol(:ncol,:, 98) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 89)*sol(:ncol,:, 98) ! rate_const*N*NO2 - rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 98)*sol(:ncol,:, 106) ! rate_const*NO2*O - rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 98)*sol(:ncol,:, 108) ! rate_const*NO2*O3 - rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 98)*sol(:ncol,:, 106) ! rate_const*M*NO2*O - rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 99)*sol(:ncol,:, 139) ! rate_const*NO3*HO2 - rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 99)*sol(:ncol,:, 97) ! rate_const*NO3*NO - rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 99)*sol(:ncol,:, 106) ! rate_const*NO3*O - rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 99)*sol(:ncol,:, 111) ! rate_const*NO3*OH - rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 89)*sol(:ncol,:, 111) ! rate_const*N*OH - rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 97)*sol(:ncol,:, 139) ! rate_const*NO*HO2 - rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 97)*sol(:ncol,:, 108) ! rate_const*NO*O3 - rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 97)*sol(:ncol,:, 106) ! rate_const*M*NO*O - rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 144)*sol(:ncol,:, 90) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 144)*sol(:ncol,:, 90) ! rate_const*O1D*N2O - rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 98)*sol(:ncol,:, 139) ! rate_const*M*NO2*HO2 - rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 98)*sol(:ncol,:, 99) ! rate_const*M*NO2*NO3 - rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 98)*sol(:ncol,:, 111) ! rate_const*M*NO2*OH - rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 73)*sol(:ncol,:, 111) ! rate_const*HNO3*OH - rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 74) ! rate_const*M*HO2NO2 - rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 140)*sol(:ncol,:, 138) ! rate_const*N2D*e - rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 140)*sol(:ncol,:, 107) ! rate_const*N2D*O2 - rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 91) ! rate_const*M*N2O5 - rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 89)*sol(:ncol,:, 107) ! rate_const*N*O2 - rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 42)*sol(:ncol,:, 27) ! rate_const*CL*CH2O - rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 42)*sol(:ncol,:, 40) ! rate_const*CL*CH4 - rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 42)*sol(:ncol,:, 63) ! rate_const*CL*H2 - rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 42)*sol(:ncol,:, 65) ! rate_const*CL*H2O2 - rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 42)*sol(:ncol,:, 139) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 42)*sol(:ncol,:, 139) ! rate_const*CL*HO2 - rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 42)*sol(:ncol,:, 108) ! rate_const*CL*O3 - rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 45)*sol(:ncol,:, 37) ! rate_const*CLO*CH3O2 - rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 45)*sol(:ncol,:, 45) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 45)*sol(:ncol,:, 45) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 45)*sol(:ncol,:, 45) ! rate_const*CLO*CLO - rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 45)*sol(:ncol,:, 139) ! rate_const*CLO*HO2 - rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 45)*sol(:ncol,:, 97) ! rate_const*CLO*NO - rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 46)*sol(:ncol,:, 42) ! rate_const*CLONO2*CL - rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 45)*sol(:ncol,:, 98) ! rate_const*M*CLO*NO2 - rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 46)*sol(:ncol,:, 106) ! rate_const*CLONO2*O - rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 46)*sol(:ncol,:, 111) ! rate_const*CLONO2*OH - rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 45)*sol(:ncol,:, 106) ! rate_const*CLO*O - rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 45)*sol(:ncol,:, 111) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 45)*sol(:ncol,:, 111) ! rate_const*CLO*OH - rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 71)*sol(:ncol,:, 106) ! rate_const*HCL*O - rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 71)*sol(:ncol,:, 111) ! rate_const*HCL*OH - rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 76)*sol(:ncol,:, 42) ! rate_const*HOCL*CL - rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 76)*sol(:ncol,:, 106) ! rate_const*HOCL*O - rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 76)*sol(:ncol,:, 111) ! rate_const*HOCL*OH - rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 144)*sol(:ncol,:, 18) ! rate_const*O1D*CCL4 - rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 144)*sol(:ncol,:, 19) ! rate_const*O1D*CF2CLBR - rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 144)*sol(:ncol,:, 21) ! rate_const*O1D*CFC11 - rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 144)*sol(:ncol,:, 22) ! rate_const*O1D*CFC113 - rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 144)*sol(:ncol,:, 23) ! rate_const*O1D*CFC114 - rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 144)*sol(:ncol,:, 24) ! rate_const*O1D*CFC115 - rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 144)*sol(:ncol,:, 25) ! rate_const*O1D*CFC12 - rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 144)*sol(:ncol,:, 71) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 144)*sol(:ncol,:, 71) ! rate_const*O1D*HCL - rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 45)*sol(:ncol,:, 45) ! rate_const*M*CLO*CLO - rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 44) ! rate_const*M*CL2O2 - rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 4)*sol(:ncol,:, 27) ! rate_const*BR*CH2O - rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 4)*sol(:ncol,:, 139) ! rate_const*BR*HO2 - rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 4)*sol(:ncol,:, 108) ! rate_const*BR*O3 + rxt_rates(:ncol,:, 92) = rxt_rates(:ncol,:, 92)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 93) = rxt_rates(:ncol,:, 93)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 94) = rxt_rates(:ncol,:, 94)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 95) = rxt_rates(:ncol,:, 95)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 96) = rxt_rates(:ncol,:, 96)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 97) = rxt_rates(:ncol,:, 97)*sol(:ncol,:, 100) ! rate_const*O + rxt_rates(:ncol,:, 98) = rxt_rates(:ncol,:, 98)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 99) = rxt_rates(:ncol,:, 99)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 100) = rxt_rates(:ncol,:, 100)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 101) = rxt_rates(:ncol,:, 101)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 102) = rxt_rates(:ncol,:, 102)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 103) = rxt_rates(:ncol,:, 103)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 104) = rxt_rates(:ncol,:, 104)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 105) = rxt_rates(:ncol,:, 105)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 106) = rxt_rates(:ncol,:, 106)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 107) = rxt_rates(:ncol,:, 107)*sol(:ncol,:, 101) ! rate_const*O2 + rxt_rates(:ncol,:, 108) = rxt_rates(:ncol,:, 108)*sol(:ncol,:, 61) ! rate_const*H2SO4 + rxt_rates(:ncol,:, 109) = rxt_rates(:ncol,:, 109)*sol(:ncol,:, 105) ! rate_const*OCS + rxt_rates(:ncol,:, 110) = rxt_rates(:ncol,:, 110)*sol(:ncol,:, 115) ! rate_const*SO + rxt_rates(:ncol,:, 111) = rxt_rates(:ncol,:, 111)*sol(:ncol,:, 116) ! rate_const*SO2 + rxt_rates(:ncol,:, 112) = rxt_rates(:ncol,:, 112)*sol(:ncol,:, 117) ! rate_const*SO3 + rxt_rates(:ncol,:, 113) = rxt_rates(:ncol,:, 113)*sol(:ncol,:, 122) ! rate_const*soa_a1 + rxt_rates(:ncol,:, 114) = rxt_rates(:ncol,:, 114)*sol(:ncol,:, 123) ! rate_const*soa_a2 + rxt_rates(:ncol,:, 115) = rxt_rates(:ncol,:, 115)*sol(:ncol,:, 143) ! rate_const*O2_1D + rxt_rates(:ncol,:, 116) = rxt_rates(:ncol,:, 116)*sol(:ncol,:, 144) ! rate_const*O2_1S + rxt_rates(:ncol,:, 117) = rxt_rates(:ncol,:, 117)*sol(:ncol,:, 142)*sol(:ncol,:, 58) ! rate_const*O1D*H2 + rxt_rates(:ncol,:, 118) = rxt_rates(:ncol,:, 118)*sol(:ncol,:, 142)*sol(:ncol,:, 152) ! rate_const*O1D*H2O + rxt_rates(:ncol,:, 119) = rxt_rates(:ncol,:, 119)*sol(:ncol,:, 142) ! rate_const*N2*O1D + rxt_rates(:ncol,:, 120) = rxt_rates(:ncol,:, 120)*sol(:ncol,:, 142)*sol(:ncol,:, 101) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 121) = rxt_rates(:ncol,:, 121)*sol(:ncol,:, 142)*sol(:ncol,:, 101) ! rate_const*O1D*O2 + rxt_rates(:ncol,:, 122) = rxt_rates(:ncol,:, 122)*sol(:ncol,:, 142)*sol(:ncol,:, 102) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 123) = rxt_rates(:ncol,:, 123)*sol(:ncol,:, 142)*sol(:ncol,:, 102) ! rate_const*O1D*O3 + rxt_rates(:ncol,:, 124) = rxt_rates(:ncol,:, 124)*sol(:ncol,:, 143) ! rate_const*N2*O2_1D + rxt_rates(:ncol,:, 125) = rxt_rates(:ncol,:, 125)*sol(:ncol,:, 143)*sol(:ncol,:, 100) ! rate_const*O2_1D*O + rxt_rates(:ncol,:, 126) = rxt_rates(:ncol,:, 126)*sol(:ncol,:, 143)*sol(:ncol,:, 101) ! rate_const*O2_1D*O2 + rxt_rates(:ncol,:, 127) = rxt_rates(:ncol,:, 127)*sol(:ncol,:, 144)*sol(:ncol,:, 46) ! rate_const*O2_1S*CO2 + rxt_rates(:ncol,:, 128) = rxt_rates(:ncol,:, 128)*sol(:ncol,:, 144) ! rate_const*N2*O2_1S + rxt_rates(:ncol,:, 129) = rxt_rates(:ncol,:, 129)*sol(:ncol,:, 144)*sol(:ncol,:, 100) ! rate_const*O2_1S*O + rxt_rates(:ncol,:, 130) = rxt_rates(:ncol,:, 130)*sol(:ncol,:, 144)*sol(:ncol,:, 101) ! rate_const*O2_1S*O2 + rxt_rates(:ncol,:, 131) = rxt_rates(:ncol,:, 131)*sol(:ncol,:, 144)*sol(:ncol,:, 102) ! rate_const*O2_1S*O3 + rxt_rates(:ncol,:, 132) = rxt_rates(:ncol,:, 132)*sol(:ncol,:, 100)*sol(:ncol,:, 102) ! rate_const*O*O3 + rxt_rates(:ncol,:, 133) = rxt_rates(:ncol,:, 133)*sol(:ncol,:, 100)*sol(:ncol,:, 100) ! rate_const*M*O*O + rxt_rates(:ncol,:, 134) = rxt_rates(:ncol,:, 134)*sol(:ncol,:, 100)*sol(:ncol,:, 101) ! rate_const*M*O*O2 + rxt_rates(:ncol,:, 135) = rxt_rates(:ncol,:, 135)*sol(:ncol,:, 58)*sol(:ncol,:, 100) ! rate_const*H2*O + rxt_rates(:ncol,:, 136) = rxt_rates(:ncol,:, 136)*sol(:ncol,:, 60)*sol(:ncol,:, 100) ! rate_const*H2O2*O + rxt_rates(:ncol,:, 137) = rxt_rates(:ncol,:, 137)*sol(:ncol,:, 57)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 138) = rxt_rates(:ncol,:, 138)*sol(:ncol,:, 57)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 139) = rxt_rates(:ncol,:, 139)*sol(:ncol,:, 57)*sol(:ncol,:, 134) ! rate_const*H*HO2 + rxt_rates(:ncol,:, 140) = rxt_rates(:ncol,:, 140)*sol(:ncol,:, 57)*sol(:ncol,:, 101) ! rate_const*M*H*O2 + rxt_rates(:ncol,:, 141) = rxt_rates(:ncol,:, 141)*sol(:ncol,:, 134)*sol(:ncol,:, 100) ! rate_const*HO2*O + rxt_rates(:ncol,:, 142) = rxt_rates(:ncol,:, 142)*sol(:ncol,:, 134)*sol(:ncol,:, 102) ! rate_const*HO2*O3 + rxt_rates(:ncol,:, 143) = rxt_rates(:ncol,:, 143)*sol(:ncol,:, 57)*sol(:ncol,:, 102) ! rate_const*H*O3 + rxt_rates(:ncol,:, 144) = rxt_rates(:ncol,:, 144)*sol(:ncol,:, 106)*sol(:ncol,:, 58) ! rate_const*OH*H2 + rxt_rates(:ncol,:, 145) = rxt_rates(:ncol,:, 145)*sol(:ncol,:, 106)*sol(:ncol,:, 60) ! rate_const*OH*H2O2 + rxt_rates(:ncol,:, 146) = rxt_rates(:ncol,:, 146)*sol(:ncol,:, 106)*sol(:ncol,:, 134) ! rate_const*OH*HO2 + rxt_rates(:ncol,:, 147) = rxt_rates(:ncol,:, 147)*sol(:ncol,:, 106)*sol(:ncol,:, 100) ! rate_const*OH*O + rxt_rates(:ncol,:, 148) = rxt_rates(:ncol,:, 148)*sol(:ncol,:, 106)*sol(:ncol,:, 102) ! rate_const*OH*O3 + rxt_rates(:ncol,:, 149) = rxt_rates(:ncol,:, 149)*sol(:ncol,:, 106)*sol(:ncol,:, 106) ! rate_const*OH*OH + rxt_rates(:ncol,:, 150) = rxt_rates(:ncol,:, 150)*sol(:ncol,:, 106)*sol(:ncol,:, 106) ! rate_const*M*OH*OH + rxt_rates(:ncol,:, 151) = rxt_rates(:ncol,:, 151)*sol(:ncol,:, 134)*sol(:ncol,:, 134) ! rate_const*HO2*HO2 + rxt_rates(:ncol,:, 152) = rxt_rates(:ncol,:, 152)*sol(:ncol,:, 138) ! rate_const*N2D + rxt_rates(:ncol,:, 153) = rxt_rates(:ncol,:, 153)*sol(:ncol,:, 69)*sol(:ncol,:, 106) ! rate_const*HO2NO2*OH + rxt_rates(:ncol,:, 154) = rxt_rates(:ncol,:, 154)*sol(:ncol,:, 138)*sol(:ncol,:, 91) ! rate_const*N2D*NO + rxt_rates(:ncol,:, 155) = rxt_rates(:ncol,:, 155)*sol(:ncol,:, 138)*sol(:ncol,:, 100) ! rate_const*N2D*O + rxt_rates(:ncol,:, 156) = rxt_rates(:ncol,:, 156)*sol(:ncol,:, 81)*sol(:ncol,:, 91) ! rate_const*N*NO + rxt_rates(:ncol,:, 157) = rxt_rates(:ncol,:, 157)*sol(:ncol,:, 81)*sol(:ncol,:, 92) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 158) = rxt_rates(:ncol,:, 158)*sol(:ncol,:, 81)*sol(:ncol,:, 92) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 159) = rxt_rates(:ncol,:, 159)*sol(:ncol,:, 81)*sol(:ncol,:, 92) ! rate_const*N*NO2 + rxt_rates(:ncol,:, 160) = rxt_rates(:ncol,:, 160)*sol(:ncol,:, 92)*sol(:ncol,:, 100) ! rate_const*NO2*O + rxt_rates(:ncol,:, 161) = rxt_rates(:ncol,:, 161)*sol(:ncol,:, 92)*sol(:ncol,:, 102) ! rate_const*NO2*O3 + rxt_rates(:ncol,:, 162) = rxt_rates(:ncol,:, 162)*sol(:ncol,:, 92)*sol(:ncol,:, 100) ! rate_const*M*NO2*O + rxt_rates(:ncol,:, 163) = rxt_rates(:ncol,:, 163)*sol(:ncol,:, 93)*sol(:ncol,:, 134) ! rate_const*NO3*HO2 + rxt_rates(:ncol,:, 164) = rxt_rates(:ncol,:, 164)*sol(:ncol,:, 93)*sol(:ncol,:, 91) ! rate_const*NO3*NO + rxt_rates(:ncol,:, 165) = rxt_rates(:ncol,:, 165)*sol(:ncol,:, 93)*sol(:ncol,:, 100) ! rate_const*NO3*O + rxt_rates(:ncol,:, 166) = rxt_rates(:ncol,:, 166)*sol(:ncol,:, 93)*sol(:ncol,:, 106) ! rate_const*NO3*OH + rxt_rates(:ncol,:, 167) = rxt_rates(:ncol,:, 167)*sol(:ncol,:, 81)*sol(:ncol,:, 106) ! rate_const*N*OH + rxt_rates(:ncol,:, 168) = rxt_rates(:ncol,:, 168)*sol(:ncol,:, 91)*sol(:ncol,:, 134) ! rate_const*NO*HO2 + rxt_rates(:ncol,:, 169) = rxt_rates(:ncol,:, 169)*sol(:ncol,:, 91)*sol(:ncol,:, 102) ! rate_const*NO*O3 + rxt_rates(:ncol,:, 170) = rxt_rates(:ncol,:, 170)*sol(:ncol,:, 91)*sol(:ncol,:, 100) ! rate_const*M*NO*O + rxt_rates(:ncol,:, 171) = rxt_rates(:ncol,:, 171)*sol(:ncol,:, 142)*sol(:ncol,:, 82) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 172) = rxt_rates(:ncol,:, 172)*sol(:ncol,:, 142)*sol(:ncol,:, 82) ! rate_const*O1D*N2O + rxt_rates(:ncol,:, 173) = rxt_rates(:ncol,:, 173)*sol(:ncol,:, 92)*sol(:ncol,:, 134) ! rate_const*M*NO2*HO2 + rxt_rates(:ncol,:, 174) = rxt_rates(:ncol,:, 174)*sol(:ncol,:, 92)*sol(:ncol,:, 93) ! rate_const*M*NO2*NO3 + rxt_rates(:ncol,:, 175) = rxt_rates(:ncol,:, 175)*sol(:ncol,:, 92)*sol(:ncol,:, 106) ! rate_const*M*NO2*OH + rxt_rates(:ncol,:, 176) = rxt_rates(:ncol,:, 176)*sol(:ncol,:, 68)*sol(:ncol,:, 106) ! rate_const*HNO3*OH + rxt_rates(:ncol,:, 177) = rxt_rates(:ncol,:, 177)*sol(:ncol,:, 69) ! rate_const*M*HO2NO2 + rxt_rates(:ncol,:, 178) = rxt_rates(:ncol,:, 178)*sol(:ncol,:, 138)*sol(:ncol,:, 131) ! rate_const*N2D*e + rxt_rates(:ncol,:, 179) = rxt_rates(:ncol,:, 179)*sol(:ncol,:, 138)*sol(:ncol,:, 101) ! rate_const*N2D*O2 + rxt_rates(:ncol,:, 180) = rxt_rates(:ncol,:, 180)*sol(:ncol,:, 83) ! rate_const*M*N2O5 + rxt_rates(:ncol,:, 181) = rxt_rates(:ncol,:, 181)*sol(:ncol,:, 81)*sol(:ncol,:, 101) ! rate_const*N*O2 + rxt_rates(:ncol,:, 182) = rxt_rates(:ncol,:, 182)*sol(:ncol,:, 39)*sol(:ncol,:, 25) ! rate_const*CL*CH2O + rxt_rates(:ncol,:, 183) = rxt_rates(:ncol,:, 183)*sol(:ncol,:, 39)*sol(:ncol,:, 37) ! rate_const*CL*CH4 + rxt_rates(:ncol,:, 184) = rxt_rates(:ncol,:, 184)*sol(:ncol,:, 39)*sol(:ncol,:, 58) ! rate_const*CL*H2 + rxt_rates(:ncol,:, 185) = rxt_rates(:ncol,:, 185)*sol(:ncol,:, 39)*sol(:ncol,:, 60) ! rate_const*CL*H2O2 + rxt_rates(:ncol,:, 186) = rxt_rates(:ncol,:, 186)*sol(:ncol,:, 39)*sol(:ncol,:, 134) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 187) = rxt_rates(:ncol,:, 187)*sol(:ncol,:, 39)*sol(:ncol,:, 134) ! rate_const*CL*HO2 + rxt_rates(:ncol,:, 188) = rxt_rates(:ncol,:, 188)*sol(:ncol,:, 39)*sol(:ncol,:, 102) ! rate_const*CL*O3 + rxt_rates(:ncol,:, 189) = rxt_rates(:ncol,:, 189)*sol(:ncol,:, 42)*sol(:ncol,:, 34) ! rate_const*CLO*CH3O2 + rxt_rates(:ncol,:, 190) = rxt_rates(:ncol,:, 190)*sol(:ncol,:, 42)*sol(:ncol,:, 42) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 191) = rxt_rates(:ncol,:, 191)*sol(:ncol,:, 42)*sol(:ncol,:, 42) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 192) = rxt_rates(:ncol,:, 192)*sol(:ncol,:, 42)*sol(:ncol,:, 42) ! rate_const*CLO*CLO + rxt_rates(:ncol,:, 193) = rxt_rates(:ncol,:, 193)*sol(:ncol,:, 42)*sol(:ncol,:, 134) ! rate_const*CLO*HO2 + rxt_rates(:ncol,:, 194) = rxt_rates(:ncol,:, 194)*sol(:ncol,:, 42)*sol(:ncol,:, 91) ! rate_const*CLO*NO + rxt_rates(:ncol,:, 195) = rxt_rates(:ncol,:, 195)*sol(:ncol,:, 43)*sol(:ncol,:, 39) ! rate_const*CLONO2*CL + rxt_rates(:ncol,:, 196) = rxt_rates(:ncol,:, 196)*sol(:ncol,:, 42)*sol(:ncol,:, 92) ! rate_const*M*CLO*NO2 + rxt_rates(:ncol,:, 197) = rxt_rates(:ncol,:, 197)*sol(:ncol,:, 43)*sol(:ncol,:, 100) ! rate_const*CLONO2*O + rxt_rates(:ncol,:, 198) = rxt_rates(:ncol,:, 198)*sol(:ncol,:, 43)*sol(:ncol,:, 106) ! rate_const*CLONO2*OH + rxt_rates(:ncol,:, 199) = rxt_rates(:ncol,:, 199)*sol(:ncol,:, 42)*sol(:ncol,:, 100) ! rate_const*CLO*O + rxt_rates(:ncol,:, 200) = rxt_rates(:ncol,:, 200)*sol(:ncol,:, 42)*sol(:ncol,:, 106) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 201) = rxt_rates(:ncol,:, 201)*sol(:ncol,:, 42)*sol(:ncol,:, 106) ! rate_const*CLO*OH + rxt_rates(:ncol,:, 202) = rxt_rates(:ncol,:, 202)*sol(:ncol,:, 66)*sol(:ncol,:, 100) ! rate_const*HCL*O + rxt_rates(:ncol,:, 203) = rxt_rates(:ncol,:, 203)*sol(:ncol,:, 66)*sol(:ncol,:, 106) ! rate_const*HCL*OH + rxt_rates(:ncol,:, 204) = rxt_rates(:ncol,:, 204)*sol(:ncol,:, 71)*sol(:ncol,:, 39) ! rate_const*HOCL*CL + rxt_rates(:ncol,:, 205) = rxt_rates(:ncol,:, 205)*sol(:ncol,:, 71)*sol(:ncol,:, 100) ! rate_const*HOCL*O + rxt_rates(:ncol,:, 206) = rxt_rates(:ncol,:, 206)*sol(:ncol,:, 71)*sol(:ncol,:, 106) ! rate_const*HOCL*OH + rxt_rates(:ncol,:, 207) = rxt_rates(:ncol,:, 207)*sol(:ncol,:, 142)*sol(:ncol,:, 16) ! rate_const*O1D*CCL4 + rxt_rates(:ncol,:, 208) = rxt_rates(:ncol,:, 208)*sol(:ncol,:, 142)*sol(:ncol,:, 17) ! rate_const*O1D*CF2CLBR + rxt_rates(:ncol,:, 209) = rxt_rates(:ncol,:, 209)*sol(:ncol,:, 142)*sol(:ncol,:, 19) ! rate_const*O1D*CFC11 + rxt_rates(:ncol,:, 210) = rxt_rates(:ncol,:, 210)*sol(:ncol,:, 142)*sol(:ncol,:, 20) ! rate_const*O1D*CFC113 + rxt_rates(:ncol,:, 211) = rxt_rates(:ncol,:, 211)*sol(:ncol,:, 142)*sol(:ncol,:, 21) ! rate_const*O1D*CFC114 + rxt_rates(:ncol,:, 212) = rxt_rates(:ncol,:, 212)*sol(:ncol,:, 142)*sol(:ncol,:, 22) ! rate_const*O1D*CFC115 + rxt_rates(:ncol,:, 213) = rxt_rates(:ncol,:, 213)*sol(:ncol,:, 142)*sol(:ncol,:, 23) ! rate_const*O1D*CFC12 + rxt_rates(:ncol,:, 214) = rxt_rates(:ncol,:, 214)*sol(:ncol,:, 142)*sol(:ncol,:, 66) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 215) = rxt_rates(:ncol,:, 215)*sol(:ncol,:, 142)*sol(:ncol,:, 66) ! rate_const*O1D*HCL + rxt_rates(:ncol,:, 216) = rxt_rates(:ncol,:, 216)*sol(:ncol,:, 42)*sol(:ncol,:, 42) ! rate_const*M*CLO*CLO + rxt_rates(:ncol,:, 217) = rxt_rates(:ncol,:, 217)*sol(:ncol,:, 41) ! rate_const*M*CL2O2 + rxt_rates(:ncol,:, 218) = rxt_rates(:ncol,:, 218)*sol(:ncol,:, 4)*sol(:ncol,:, 25) ! rate_const*BR*CH2O + rxt_rates(:ncol,:, 219) = rxt_rates(:ncol,:, 219)*sol(:ncol,:, 4)*sol(:ncol,:, 134) ! rate_const*BR*HO2 + rxt_rates(:ncol,:, 220) = rxt_rates(:ncol,:, 220)*sol(:ncol,:, 4)*sol(:ncol,:, 102) ! rate_const*BR*O3 rxt_rates(:ncol,:, 221) = rxt_rates(:ncol,:, 221)*sol(:ncol,:, 6)*sol(:ncol,:, 6) ! rate_const*BRO*BRO - rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 6)*sol(:ncol,:, 45) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 6)*sol(:ncol,:, 45) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 6)*sol(:ncol,:, 45) ! rate_const*BRO*CLO - rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 6)*sol(:ncol,:, 139) ! rate_const*BRO*HO2 - rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 6)*sol(:ncol,:, 97) ! rate_const*BRO*NO - rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 6)*sol(:ncol,:, 98) ! rate_const*M*BRO*NO2 - rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 7)*sol(:ncol,:, 106) ! rate_const*BRONO2*O - rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 6)*sol(:ncol,:, 106) ! rate_const*BRO*O - rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 6)*sol(:ncol,:, 111) ! rate_const*BRO*OH - rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 67)*sol(:ncol,:, 106) ! rate_const*HBR*O - rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 67)*sol(:ncol,:, 111) ! rate_const*HBR*OH - rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 75)*sol(:ncol,:, 106) ! rate_const*HOBR*O - rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 144)*sol(:ncol,:, 20) ! rate_const*O1D*CF3BR - rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 144)*sol(:ncol,:, 41) ! rate_const*O1D*CHBR3 - rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 144)*sol(:ncol,:, 64) ! rate_const*O1D*H2402 - rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 144)*sol(:ncol,:, 67) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 144)*sol(:ncol,:, 67) ! rate_const*O1D*HBR - rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 59)*sol(:ncol,:, 40) ! rate_const*F*CH4 - rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 59)*sol(:ncol,:, 63) ! rate_const*F*H2 - rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 59)*sol(:ncol,:, 151) ! rate_const*F*H2O - rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 59)*sol(:ncol,:, 73) ! rate_const*F*HNO3 - rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 144)*sol(:ncol,:, 50) ! rate_const*O1D*COF2 - rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 144)*sol(:ncol,:, 51) ! rate_const*O1D*COFCL - rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 26)*sol(:ncol,:, 42) ! rate_const*CH2BR2*CL - rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 26)*sol(:ncol,:, 111) ! rate_const*CH2BR2*OH - rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 28)*sol(:ncol,:, 42) ! rate_const*CH3BR*CL - rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 28)*sol(:ncol,:, 111) ! rate_const*CH3BR*OH - rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 29)*sol(:ncol,:, 111) ! rate_const*CH3CCL3*OH - rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 31)*sol(:ncol,:, 42) ! rate_const*CH3CL*CL - rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 31)*sol(:ncol,:, 111) ! rate_const*CH3CL*OH - rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 41)*sol(:ncol,:, 42) ! rate_const*CHBR3*CL - rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 41)*sol(:ncol,:, 111) ! rate_const*CHBR3*OH - rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 68)*sol(:ncol,:, 111) ! rate_const*HCFC141B*OH - rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 69)*sol(:ncol,:, 111) ! rate_const*HCFC142B*OH - rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 70)*sol(:ncol,:, 111) ! rate_const*HCFC22*OH - rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 144)*sol(:ncol,:, 26) ! rate_const*O1D*CH2BR2 - rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 144)*sol(:ncol,:, 28) ! rate_const*O1D*CH3BR - rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 144)*sol(:ncol,:, 68) ! rate_const*O1D*HCFC141B - rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 144)*sol(:ncol,:, 69) ! rate_const*O1D*HCFC142B - rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 144)*sol(:ncol,:, 70) ! rate_const*O1D*HCFC22 - rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 27)*sol(:ncol,:, 99) ! rate_const*CH2O*NO3 - rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 27)*sol(:ncol,:, 106) ! rate_const*CH2O*O - rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 27)*sol(:ncol,:, 111) ! rate_const*CH2O*OH - rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 37)*sol(:ncol,:, 37) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 37)*sol(:ncol,:, 37) ! rate_const*CH3O2*CH3O2 - rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 37)*sol(:ncol,:, 139) ! rate_const*CH3O2*HO2 - rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 37)*sol(:ncol,:, 97) ! rate_const*CH3O2*NO - rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 38)*sol(:ncol,:, 111) ! rate_const*CH3OH*OH - rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 39)*sol(:ncol,:, 111) ! rate_const*CH3OOH*OH - rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 40)*sol(:ncol,:, 111) ! rate_const*CH4*OH - rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 144)*sol(:ncol,:, 40) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 144)*sol(:ncol,:, 40) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 144)*sol(:ncol,:, 40) ! rate_const*O1D*CH4 - rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 48)*sol(:ncol,:, 111) ! rate_const*CO*OH - rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 9)*sol(:ncol,:, 42) ! rate_const*M*C2H4*CL - rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 9)*sol(:ncol,:, 108) ! rate_const*C2H4*O3 - rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 10)*sol(:ncol,:, 10) ! rate_const*C2H5O2*C2H5O2 - rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 10)*sol(:ncol,:, 37) ! rate_const*C2H5O2*CH3O2 - rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 10)*sol(:ncol,:, 139) ! rate_const*C2H5O2*HO2 - rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 10)*sol(:ncol,:, 97) ! rate_const*C2H5O2*NO - rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 11)*sol(:ncol,:, 111) ! rate_const*C2H5OH*OH - rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 12)*sol(:ncol,:, 111) ! rate_const*C2H5OOH*OH - rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 13)*sol(:ncol,:, 42) ! rate_const*C2H6*CL - rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 13)*sol(:ncol,:, 111) ! rate_const*C2H6*OH - rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 30)*sol(:ncol,:, 99) ! rate_const*CH3CHO*NO3 - rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 30)*sol(:ncol,:, 111) ! rate_const*CH3CHO*OH - rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 32)*sol(:ncol,:, 32) ! rate_const*CH3CO3*CH3CO3 - rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 32)*sol(:ncol,:, 37) ! rate_const*CH3CO3*CH3O2 - rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 32)*sol(:ncol,:, 139) ! rate_const*CH3CO3*HO2 - rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 32)*sol(:ncol,:, 97) ! rate_const*CH3CO3*NO - rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 35)*sol(:ncol,:, 111) ! rate_const*CH3COOH*OH - rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 36)*sol(:ncol,:, 111) ! rate_const*CH3COOOH*OH - rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 57)*sol(:ncol,:, 139) ! rate_const*EO2*HO2 - rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 57)*sol(:ncol,:, 97) ! rate_const*EO2*NO - rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 56) ! rate_const*EO - rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 56)*sol(:ncol,:, 107) ! rate_const*EO*O2 - rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 60)*sol(:ncol,:, 111) ! rate_const*GLYALD*OH - rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 61)*sol(:ncol,:, 111) ! rate_const*GLYOXAL*OH - rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 113)*sol(:ncol,:, 111) ! rate_const*PAN*OH - rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 9)*sol(:ncol,:, 111) ! rate_const*M*C2H4*OH - rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 32)*sol(:ncol,:, 98) ! rate_const*M*CH3CO3*NO2 - rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 113) ! rate_const*M*PAN - rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 14)*sol(:ncol,:, 99) ! rate_const*C3H6*NO3 - rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 14)*sol(:ncol,:, 108) ! rate_const*C3H6*O3 - rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 15)*sol(:ncol,:, 37) ! rate_const*C3H7O2*CH3O2 - rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 15)*sol(:ncol,:, 139) ! rate_const*C3H7O2*HO2 - rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 15)*sol(:ncol,:, 97) ! rate_const*C3H7O2*NO - rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 16)*sol(:ncol,:, 111) ! rate_const*C3H7OOH*OH - rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 17)*sol(:ncol,:, 111) ! rate_const*C3H8*OH - rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 34)*sol(:ncol,:, 99) ! rate_const*CH3COCHO*NO3 - rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 34)*sol(:ncol,:, 111) ! rate_const*CH3COCHO*OH - rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 77)*sol(:ncol,:, 111) ! rate_const*HYAC*OH - rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 100)*sol(:ncol,:, 111) ! rate_const*NOA*OH - rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 114)*sol(:ncol,:, 139) ! rate_const*PO2*HO2 - rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 114)*sol(:ncol,:, 97) ! rate_const*PO2*NO - rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 117)*sol(:ncol,:, 111) ! rate_const*POOH*OH - rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 118)*sol(:ncol,:, 37) ! rate_const*RO2*CH3O2 - rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 118)*sol(:ncol,:, 139) ! rate_const*RO2*HO2 - rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 118)*sol(:ncol,:, 97) ! rate_const*RO2*NO - rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 119)*sol(:ncol,:, 111) ! rate_const*ROOH*OH - rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 14)*sol(:ncol,:, 111) ! rate_const*M*C3H6*OH - rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 33)*sol(:ncol,:, 111) ! rate_const*CH3COCH3*OH - rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 84)*sol(:ncol,:, 32) ! rate_const*MACRO2*CH3CO3 - rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 84)*sol(:ncol,:, 37) ! rate_const*MACRO2*CH3O2 - rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 84)*sol(:ncol,:, 139) ! rate_const*MACRO2*HO2 - rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 84)*sol(:ncol,:, 99) ! rate_const*MACRO2*NO3 - rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 84)*sol(:ncol,:, 97) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 84)*sol(:ncol,:, 97) ! rate_const*MACRO2*NO - rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 83)*sol(:ncol,:, 108) ! rate_const*MACR*O3 - rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 83)*sol(:ncol,:, 111) ! rate_const*MACR*OH - rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 85)*sol(:ncol,:, 111) ! rate_const*MACROOH*OH - rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 86)*sol(:ncol,:, 32) ! rate_const*MCO3*CH3CO3 - rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 86)*sol(:ncol,:, 37) ! rate_const*MCO3*CH3O2 - rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 86)*sol(:ncol,:, 139) ! rate_const*MCO3*HO2 - rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 86)*sol(:ncol,:, 86) ! rate_const*MCO3*MCO3 - rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 86)*sol(:ncol,:, 97) ! rate_const*MCO3*NO - rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 86)*sol(:ncol,:, 99) ! rate_const*MCO3*NO3 - rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 87)*sol(:ncol,:, 111) ! rate_const*M*MPAN*OH - rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 88)*sol(:ncol,:, 108) ! rate_const*MVK*O3 - rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 88)*sol(:ncol,:, 111) ! rate_const*MVK*OH - rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 86)*sol(:ncol,:, 98) ! rate_const*M*MCO3*NO2 - rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 87) ! rate_const*M*MPAN - rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 3)*sol(:ncol,:, 111) ! rate_const*BIGALK*OH - rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 78)*sol(:ncol,:, 111) ! rate_const*HYDRALD*OH - rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 79)*sol(:ncol,:, 99) ! rate_const*ISOP*NO3 - rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 80)*sol(:ncol,:, 139) ! rate_const*ISOPNO3*HO2 - rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 80)*sol(:ncol,:, 97) ! rate_const*ISOPNO3*NO - rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 80)*sol(:ncol,:, 99) ! rate_const*ISOPNO3*NO3 - rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 81)*sol(:ncol,:, 32) ! rate_const*ISOPO2*CH3CO3 - rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 81)*sol(:ncol,:, 37) ! rate_const*ISOPO2*CH3O2 - rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 81)*sol(:ncol,:, 139) ! rate_const*ISOPO2*HO2 - rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 81)*sol(:ncol,:, 97) ! rate_const*ISOPO2*NO - rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 81)*sol(:ncol,:, 99) ! rate_const*ISOPO2*NO3 - rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 79)*sol(:ncol,:, 108) ! rate_const*ISOP*O3 - rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 79)*sol(:ncol,:, 111) ! rate_const*ISOP*OH - rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 82)*sol(:ncol,:, 111) ! rate_const*ISOPOOH*OH - rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 112)*sol(:ncol,:, 99) ! rate_const*ONITR*NO3 - rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 112)*sol(:ncol,:, 111) ! rate_const*ONITR*OH - rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 134)*sol(:ncol,:, 32) ! rate_const*XO2*CH3CO3 - rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 134)*sol(:ncol,:, 37) ! rate_const*XO2*CH3O2 - rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 134)*sol(:ncol,:, 139) ! rate_const*XO2*HO2 - rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 134)*sol(:ncol,:, 97) ! rate_const*XO2*NO - rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 134)*sol(:ncol,:, 99) ! rate_const*XO2*NO3 - rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 135)*sol(:ncol,:, 111) ! rate_const*XOOH*OH - rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 133)*sol(:ncol,:, 99) ! rate_const*TERP*NO3 - rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 133)*sol(:ncol,:, 108) ! rate_const*TERP*O3 - rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 133)*sol(:ncol,:, 111) ! rate_const*TERP*OH - rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 52)*sol(:ncol,:, 99) ! rate_const*DMS*NO3 - rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 52)*sol(:ncol,:, 111) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 110)*sol(:ncol,:, 106) ! rate_const*OCS*O - rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 110)*sol(:ncol,:, 111) ! rate_const*OCS*OH - rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 120)*sol(:ncol,:, 107) ! rate_const*S*O2 - rxt_rates(:ncol,:, 374) = rxt_rates(:ncol,:, 374)*sol(:ncol,:, 123)*sol(:ncol,:, 111) ! rate_const*M*SO2*OH - rxt_rates(:ncol,:, 375) = rxt_rates(:ncol,:, 375)*sol(:ncol,:, 120)*sol(:ncol,:, 108) ! rate_const*S*O3 - rxt_rates(:ncol,:, 376) = rxt_rates(:ncol,:, 376)*sol(:ncol,:, 122)*sol(:ncol,:, 6) ! rate_const*SO*BRO - rxt_rates(:ncol,:, 377) = rxt_rates(:ncol,:, 377)*sol(:ncol,:, 122)*sol(:ncol,:, 45) ! rate_const*SO*CLO - rxt_rates(:ncol,:, 378) = rxt_rates(:ncol,:, 378)*sol(:ncol,:, 120)*sol(:ncol,:, 111) ! rate_const*S*OH - rxt_rates(:ncol,:, 379) = rxt_rates(:ncol,:, 379)*sol(:ncol,:, 122)*sol(:ncol,:, 98) ! rate_const*SO*NO2 - rxt_rates(:ncol,:, 380) = rxt_rates(:ncol,:, 380)*sol(:ncol,:, 122)*sol(:ncol,:, 107) ! rate_const*SO*O2 - rxt_rates(:ncol,:, 381) = rxt_rates(:ncol,:, 381)*sol(:ncol,:, 122)*sol(:ncol,:, 108) ! rate_const*SO*O3 - rxt_rates(:ncol,:, 382) = rxt_rates(:ncol,:, 382)*sol(:ncol,:, 122)*sol(:ncol,:, 109) ! rate_const*SO*OCLO - rxt_rates(:ncol,:, 383) = rxt_rates(:ncol,:, 383)*sol(:ncol,:, 122)*sol(:ncol,:, 111) ! rate_const*SO*OH - rxt_rates(:ncol,:, 384) = rxt_rates(:ncol,:, 384)*sol(:ncol,:, 52)*sol(:ncol,:, 111) ! rate_const*DMS*OH - rxt_rates(:ncol,:, 385) = rxt_rates(:ncol,:, 385)*sol(:ncol,:, 124)*sol(:ncol,:, 151) ! rate_const*SO3*H2O - rxt_rates(:ncol,:, 386) = rxt_rates(:ncol,:, 386)*sol(:ncol,:, 95)*sol(:ncol,:, 111) ! rate_const*NH3*OH - rxt_rates(:ncol,:, 387) = rxt_rates(:ncol,:, 387)*sol(:ncol,:, 139) ! rate_const*HO2 - rxt_rates(:ncol,:, 388) = rxt_rates(:ncol,:, 388)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 389) = rxt_rates(:ncol,:, 389)*sol(:ncol,:, 96) ! rate_const*NH4 - rxt_rates(:ncol,:, 390) = rxt_rates(:ncol,:, 390)*sol(:ncol,:, 98) ! rate_const*NO2 - rxt_rates(:ncol,:, 391) = rxt_rates(:ncol,:, 391)*sol(:ncol,:, 99) ! rate_const*NO3 - rxt_rates(:ncol,:, 392) = rxt_rates(:ncol,:, 392)*sol(:ncol,:, 112) ! rate_const*ONITR - rxt_rates(:ncol,:, 393) = rxt_rates(:ncol,:, 393)*sol(:ncol,:, 131) ! rate_const*SOAE - rxt_rates(:ncol,:, 394) = rxt_rates(:ncol,:, 394)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 395) = rxt_rates(:ncol,:, 395)*sol(:ncol,:, 76)*sol(:ncol,:, 71) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 222) = rxt_rates(:ncol,:, 222)*sol(:ncol,:, 6)*sol(:ncol,:, 42) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 223) = rxt_rates(:ncol,:, 223)*sol(:ncol,:, 6)*sol(:ncol,:, 42) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 224) = rxt_rates(:ncol,:, 224)*sol(:ncol,:, 6)*sol(:ncol,:, 42) ! rate_const*BRO*CLO + rxt_rates(:ncol,:, 225) = rxt_rates(:ncol,:, 225)*sol(:ncol,:, 6)*sol(:ncol,:, 134) ! rate_const*BRO*HO2 + rxt_rates(:ncol,:, 226) = rxt_rates(:ncol,:, 226)*sol(:ncol,:, 6)*sol(:ncol,:, 91) ! rate_const*BRO*NO + rxt_rates(:ncol,:, 227) = rxt_rates(:ncol,:, 227)*sol(:ncol,:, 6)*sol(:ncol,:, 92) ! rate_const*M*BRO*NO2 + rxt_rates(:ncol,:, 228) = rxt_rates(:ncol,:, 228)*sol(:ncol,:, 7)*sol(:ncol,:, 100) ! rate_const*BRONO2*O + rxt_rates(:ncol,:, 229) = rxt_rates(:ncol,:, 229)*sol(:ncol,:, 6)*sol(:ncol,:, 100) ! rate_const*BRO*O + rxt_rates(:ncol,:, 230) = rxt_rates(:ncol,:, 230)*sol(:ncol,:, 6)*sol(:ncol,:, 106) ! rate_const*BRO*OH + rxt_rates(:ncol,:, 231) = rxt_rates(:ncol,:, 231)*sol(:ncol,:, 62)*sol(:ncol,:, 100) ! rate_const*HBR*O + rxt_rates(:ncol,:, 232) = rxt_rates(:ncol,:, 232)*sol(:ncol,:, 62)*sol(:ncol,:, 106) ! rate_const*HBR*OH + rxt_rates(:ncol,:, 233) = rxt_rates(:ncol,:, 233)*sol(:ncol,:, 70)*sol(:ncol,:, 100) ! rate_const*HOBR*O + rxt_rates(:ncol,:, 234) = rxt_rates(:ncol,:, 234)*sol(:ncol,:, 142)*sol(:ncol,:, 18) ! rate_const*O1D*CF3BR + rxt_rates(:ncol,:, 235) = rxt_rates(:ncol,:, 235)*sol(:ncol,:, 142)*sol(:ncol,:, 38) ! rate_const*O1D*CHBR3 + rxt_rates(:ncol,:, 236) = rxt_rates(:ncol,:, 236)*sol(:ncol,:, 142)*sol(:ncol,:, 59) ! rate_const*O1D*H2402 + rxt_rates(:ncol,:, 237) = rxt_rates(:ncol,:, 237)*sol(:ncol,:, 142)*sol(:ncol,:, 62) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 238) = rxt_rates(:ncol,:, 238)*sol(:ncol,:, 142)*sol(:ncol,:, 62) ! rate_const*O1D*HBR + rxt_rates(:ncol,:, 239) = rxt_rates(:ncol,:, 239)*sol(:ncol,:, 54)*sol(:ncol,:, 37) ! rate_const*F*CH4 + rxt_rates(:ncol,:, 240) = rxt_rates(:ncol,:, 240)*sol(:ncol,:, 54)*sol(:ncol,:, 58) ! rate_const*F*H2 + rxt_rates(:ncol,:, 241) = rxt_rates(:ncol,:, 241)*sol(:ncol,:, 54)*sol(:ncol,:, 152) ! rate_const*F*H2O + rxt_rates(:ncol,:, 242) = rxt_rates(:ncol,:, 242)*sol(:ncol,:, 54)*sol(:ncol,:, 68) ! rate_const*F*HNO3 + rxt_rates(:ncol,:, 243) = rxt_rates(:ncol,:, 243)*sol(:ncol,:, 142)*sol(:ncol,:, 47) ! rate_const*O1D*COF2 + rxt_rates(:ncol,:, 244) = rxt_rates(:ncol,:, 244)*sol(:ncol,:, 142)*sol(:ncol,:, 48) ! rate_const*O1D*COFCL + rxt_rates(:ncol,:, 245) = rxt_rates(:ncol,:, 245)*sol(:ncol,:, 24)*sol(:ncol,:, 39) ! rate_const*CH2BR2*CL + rxt_rates(:ncol,:, 246) = rxt_rates(:ncol,:, 246)*sol(:ncol,:, 24)*sol(:ncol,:, 106) ! rate_const*CH2BR2*OH + rxt_rates(:ncol,:, 247) = rxt_rates(:ncol,:, 247)*sol(:ncol,:, 26)*sol(:ncol,:, 39) ! rate_const*CH3BR*CL + rxt_rates(:ncol,:, 248) = rxt_rates(:ncol,:, 248)*sol(:ncol,:, 26)*sol(:ncol,:, 106) ! rate_const*CH3BR*OH + rxt_rates(:ncol,:, 249) = rxt_rates(:ncol,:, 249)*sol(:ncol,:, 27)*sol(:ncol,:, 106) ! rate_const*CH3CCL3*OH + rxt_rates(:ncol,:, 250) = rxt_rates(:ncol,:, 250)*sol(:ncol,:, 29)*sol(:ncol,:, 39) ! rate_const*CH3CL*CL + rxt_rates(:ncol,:, 251) = rxt_rates(:ncol,:, 251)*sol(:ncol,:, 29)*sol(:ncol,:, 106) ! rate_const*CH3CL*OH + rxt_rates(:ncol,:, 252) = rxt_rates(:ncol,:, 252)*sol(:ncol,:, 38)*sol(:ncol,:, 39) ! rate_const*CHBR3*CL + rxt_rates(:ncol,:, 253) = rxt_rates(:ncol,:, 253)*sol(:ncol,:, 38)*sol(:ncol,:, 106) ! rate_const*CHBR3*OH + rxt_rates(:ncol,:, 254) = rxt_rates(:ncol,:, 254)*sol(:ncol,:, 63)*sol(:ncol,:, 106) ! rate_const*HCFC141B*OH + rxt_rates(:ncol,:, 255) = rxt_rates(:ncol,:, 255)*sol(:ncol,:, 64)*sol(:ncol,:, 106) ! rate_const*HCFC142B*OH + rxt_rates(:ncol,:, 256) = rxt_rates(:ncol,:, 256)*sol(:ncol,:, 65)*sol(:ncol,:, 106) ! rate_const*HCFC22*OH + rxt_rates(:ncol,:, 257) = rxt_rates(:ncol,:, 257)*sol(:ncol,:, 142)*sol(:ncol,:, 24) ! rate_const*O1D*CH2BR2 + rxt_rates(:ncol,:, 258) = rxt_rates(:ncol,:, 258)*sol(:ncol,:, 142)*sol(:ncol,:, 26) ! rate_const*O1D*CH3BR + rxt_rates(:ncol,:, 259) = rxt_rates(:ncol,:, 259)*sol(:ncol,:, 142)*sol(:ncol,:, 63) ! rate_const*O1D*HCFC141B + rxt_rates(:ncol,:, 260) = rxt_rates(:ncol,:, 260)*sol(:ncol,:, 142)*sol(:ncol,:, 64) ! rate_const*O1D*HCFC142B + rxt_rates(:ncol,:, 261) = rxt_rates(:ncol,:, 261)*sol(:ncol,:, 142)*sol(:ncol,:, 65) ! rate_const*O1D*HCFC22 + rxt_rates(:ncol,:, 262) = rxt_rates(:ncol,:, 262)*sol(:ncol,:, 25)*sol(:ncol,:, 93) ! rate_const*CH2O*NO3 + rxt_rates(:ncol,:, 263) = rxt_rates(:ncol,:, 263)*sol(:ncol,:, 25)*sol(:ncol,:, 100) ! rate_const*CH2O*O + rxt_rates(:ncol,:, 264) = rxt_rates(:ncol,:, 264)*sol(:ncol,:, 25)*sol(:ncol,:, 106) ! rate_const*CH2O*OH + rxt_rates(:ncol,:, 265) = rxt_rates(:ncol,:, 265)*sol(:ncol,:, 34)*sol(:ncol,:, 34) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 266) = rxt_rates(:ncol,:, 266)*sol(:ncol,:, 34)*sol(:ncol,:, 34) ! rate_const*CH3O2*CH3O2 + rxt_rates(:ncol,:, 267) = rxt_rates(:ncol,:, 267)*sol(:ncol,:, 34)*sol(:ncol,:, 134) ! rate_const*CH3O2*HO2 + rxt_rates(:ncol,:, 268) = rxt_rates(:ncol,:, 268)*sol(:ncol,:, 34)*sol(:ncol,:, 91) ! rate_const*CH3O2*NO + rxt_rates(:ncol,:, 269) = rxt_rates(:ncol,:, 269)*sol(:ncol,:, 35)*sol(:ncol,:, 106) ! rate_const*CH3OH*OH + rxt_rates(:ncol,:, 270) = rxt_rates(:ncol,:, 270)*sol(:ncol,:, 36)*sol(:ncol,:, 106) ! rate_const*CH3OOH*OH + rxt_rates(:ncol,:, 271) = rxt_rates(:ncol,:, 271)*sol(:ncol,:, 37)*sol(:ncol,:, 106) ! rate_const*CH4*OH + rxt_rates(:ncol,:, 272) = rxt_rates(:ncol,:, 272)*sol(:ncol,:, 142)*sol(:ncol,:, 37) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 273) = rxt_rates(:ncol,:, 273)*sol(:ncol,:, 142)*sol(:ncol,:, 37) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 274) = rxt_rates(:ncol,:, 274)*sol(:ncol,:, 142)*sol(:ncol,:, 37) ! rate_const*O1D*CH4 + rxt_rates(:ncol,:, 275) = rxt_rates(:ncol,:, 275)*sol(:ncol,:, 45)*sol(:ncol,:, 106) ! rate_const*CO*OH + rxt_rates(:ncol,:, 276) = rxt_rates(:ncol,:, 276)*sol(:ncol,:, 9)*sol(:ncol,:, 39) ! rate_const*M*C2H4*CL + rxt_rates(:ncol,:, 277) = rxt_rates(:ncol,:, 277)*sol(:ncol,:, 9)*sol(:ncol,:, 102) ! rate_const*C2H4*O3 + rxt_rates(:ncol,:, 278) = rxt_rates(:ncol,:, 278)*sol(:ncol,:, 128)*sol(:ncol,:, 128) ! rate_const*C2H5O2*C2H5O2 + rxt_rates(:ncol,:, 279) = rxt_rates(:ncol,:, 279)*sol(:ncol,:, 128)*sol(:ncol,:, 34) ! rate_const*C2H5O2*CH3O2 + rxt_rates(:ncol,:, 280) = rxt_rates(:ncol,:, 280)*sol(:ncol,:, 128)*sol(:ncol,:, 134) ! rate_const*C2H5O2*HO2 + rxt_rates(:ncol,:, 281) = rxt_rates(:ncol,:, 281)*sol(:ncol,:, 128)*sol(:ncol,:, 91) ! rate_const*C2H5O2*NO + rxt_rates(:ncol,:, 282) = rxt_rates(:ncol,:, 282)*sol(:ncol,:, 10)*sol(:ncol,:, 106) ! rate_const*C2H5OH*OH + rxt_rates(:ncol,:, 283) = rxt_rates(:ncol,:, 283)*sol(:ncol,:, 11)*sol(:ncol,:, 106) ! rate_const*C2H5OOH*OH + rxt_rates(:ncol,:, 284) = rxt_rates(:ncol,:, 284)*sol(:ncol,:, 12)*sol(:ncol,:, 39) ! rate_const*C2H6*CL + rxt_rates(:ncol,:, 285) = rxt_rates(:ncol,:, 285)*sol(:ncol,:, 12)*sol(:ncol,:, 106) ! rate_const*C2H6*OH + rxt_rates(:ncol,:, 286) = rxt_rates(:ncol,:, 286)*sol(:ncol,:, 28)*sol(:ncol,:, 93) ! rate_const*CH3CHO*NO3 + rxt_rates(:ncol,:, 287) = rxt_rates(:ncol,:, 287)*sol(:ncol,:, 28)*sol(:ncol,:, 106) ! rate_const*CH3CHO*OH + rxt_rates(:ncol,:, 288) = rxt_rates(:ncol,:, 288)*sol(:ncol,:, 130)*sol(:ncol,:, 130) ! rate_const*CH3CO3*CH3CO3 + rxt_rates(:ncol,:, 289) = rxt_rates(:ncol,:, 289)*sol(:ncol,:, 130)*sol(:ncol,:, 34) ! rate_const*CH3CO3*CH3O2 + rxt_rates(:ncol,:, 290) = rxt_rates(:ncol,:, 290)*sol(:ncol,:, 130)*sol(:ncol,:, 134) ! rate_const*CH3CO3*HO2 + rxt_rates(:ncol,:, 291) = rxt_rates(:ncol,:, 291)*sol(:ncol,:, 130)*sol(:ncol,:, 91) ! rate_const*CH3CO3*NO + rxt_rates(:ncol,:, 292) = rxt_rates(:ncol,:, 292)*sol(:ncol,:, 32)*sol(:ncol,:, 106) ! rate_const*CH3COOH*OH + rxt_rates(:ncol,:, 293) = rxt_rates(:ncol,:, 293)*sol(:ncol,:, 33)*sol(:ncol,:, 106) ! rate_const*CH3COOOH*OH + rxt_rates(:ncol,:, 294) = rxt_rates(:ncol,:, 294)*sol(:ncol,:, 133)*sol(:ncol,:, 134) ! rate_const*EO2*HO2 + rxt_rates(:ncol,:, 295) = rxt_rates(:ncol,:, 295)*sol(:ncol,:, 133)*sol(:ncol,:, 91) ! rate_const*EO2*NO + rxt_rates(:ncol,:, 296) = rxt_rates(:ncol,:, 296)*sol(:ncol,:, 132) ! rate_const*EO + rxt_rates(:ncol,:, 297) = rxt_rates(:ncol,:, 297)*sol(:ncol,:, 132)*sol(:ncol,:, 101) ! rate_const*EO*O2 + rxt_rates(:ncol,:, 298) = rxt_rates(:ncol,:, 298)*sol(:ncol,:, 55)*sol(:ncol,:, 106) ! rate_const*GLYALD*OH + rxt_rates(:ncol,:, 299) = rxt_rates(:ncol,:, 299)*sol(:ncol,:, 56)*sol(:ncol,:, 106) ! rate_const*GLYOXAL*OH + rxt_rates(:ncol,:, 300) = rxt_rates(:ncol,:, 300)*sol(:ncol,:, 108)*sol(:ncol,:, 106) ! rate_const*PAN*OH + rxt_rates(:ncol,:, 301) = rxt_rates(:ncol,:, 301)*sol(:ncol,:, 9)*sol(:ncol,:, 106) ! rate_const*M*C2H4*OH + rxt_rates(:ncol,:, 302) = rxt_rates(:ncol,:, 302)*sol(:ncol,:, 130)*sol(:ncol,:, 92) ! rate_const*M*CH3CO3*NO2 + rxt_rates(:ncol,:, 303) = rxt_rates(:ncol,:, 303)*sol(:ncol,:, 108) ! rate_const*M*PAN + rxt_rates(:ncol,:, 304) = rxt_rates(:ncol,:, 304)*sol(:ncol,:, 13)*sol(:ncol,:, 93) ! rate_const*C3H6*NO3 + rxt_rates(:ncol,:, 305) = rxt_rates(:ncol,:, 305)*sol(:ncol,:, 13)*sol(:ncol,:, 102) ! rate_const*C3H6*O3 + rxt_rates(:ncol,:, 306) = rxt_rates(:ncol,:, 306)*sol(:ncol,:, 129)*sol(:ncol,:, 34) ! rate_const*C3H7O2*CH3O2 + rxt_rates(:ncol,:, 307) = rxt_rates(:ncol,:, 307)*sol(:ncol,:, 129)*sol(:ncol,:, 134) ! rate_const*C3H7O2*HO2 + rxt_rates(:ncol,:, 308) = rxt_rates(:ncol,:, 308)*sol(:ncol,:, 129)*sol(:ncol,:, 91) ! rate_const*C3H7O2*NO + rxt_rates(:ncol,:, 309) = rxt_rates(:ncol,:, 309)*sol(:ncol,:, 14)*sol(:ncol,:, 106) ! rate_const*C3H7OOH*OH + rxt_rates(:ncol,:, 310) = rxt_rates(:ncol,:, 310)*sol(:ncol,:, 15)*sol(:ncol,:, 106) ! rate_const*C3H8*OH + rxt_rates(:ncol,:, 311) = rxt_rates(:ncol,:, 311)*sol(:ncol,:, 31)*sol(:ncol,:, 93) ! rate_const*CH3COCHO*NO3 + rxt_rates(:ncol,:, 312) = rxt_rates(:ncol,:, 312)*sol(:ncol,:, 31)*sol(:ncol,:, 106) ! rate_const*CH3COCHO*OH + rxt_rates(:ncol,:, 313) = rxt_rates(:ncol,:, 313)*sol(:ncol,:, 72)*sol(:ncol,:, 106) ! rate_const*HYAC*OH + rxt_rates(:ncol,:, 314) = rxt_rates(:ncol,:, 314)*sol(:ncol,:, 94)*sol(:ncol,:, 106) ! rate_const*NOA*OH + rxt_rates(:ncol,:, 315) = rxt_rates(:ncol,:, 315)*sol(:ncol,:, 149)*sol(:ncol,:, 134) ! rate_const*PO2*HO2 + rxt_rates(:ncol,:, 316) = rxt_rates(:ncol,:, 316)*sol(:ncol,:, 149)*sol(:ncol,:, 91) ! rate_const*PO2*NO + rxt_rates(:ncol,:, 317) = rxt_rates(:ncol,:, 317)*sol(:ncol,:, 111)*sol(:ncol,:, 106) ! rate_const*POOH*OH + rxt_rates(:ncol,:, 318) = rxt_rates(:ncol,:, 318)*sol(:ncol,:, 150)*sol(:ncol,:, 34) ! rate_const*RO2*CH3O2 + rxt_rates(:ncol,:, 319) = rxt_rates(:ncol,:, 319)*sol(:ncol,:, 150)*sol(:ncol,:, 134) ! rate_const*RO2*HO2 + rxt_rates(:ncol,:, 320) = rxt_rates(:ncol,:, 320)*sol(:ncol,:, 150)*sol(:ncol,:, 91) ! rate_const*RO2*NO + rxt_rates(:ncol,:, 321) = rxt_rates(:ncol,:, 321)*sol(:ncol,:, 112)*sol(:ncol,:, 106) ! rate_const*ROOH*OH + rxt_rates(:ncol,:, 322) = rxt_rates(:ncol,:, 322)*sol(:ncol,:, 13)*sol(:ncol,:, 106) ! rate_const*M*C3H6*OH + rxt_rates(:ncol,:, 323) = rxt_rates(:ncol,:, 323)*sol(:ncol,:, 30)*sol(:ncol,:, 106) ! rate_const*CH3COCH3*OH + rxt_rates(:ncol,:, 324) = rxt_rates(:ncol,:, 324)*sol(:ncol,:, 136)*sol(:ncol,:, 130) ! rate_const*MACRO2*CH3CO3 + rxt_rates(:ncol,:, 325) = rxt_rates(:ncol,:, 325)*sol(:ncol,:, 136)*sol(:ncol,:, 34) ! rate_const*MACRO2*CH3O2 + rxt_rates(:ncol,:, 326) = rxt_rates(:ncol,:, 326)*sol(:ncol,:, 136)*sol(:ncol,:, 134) ! rate_const*MACRO2*HO2 + rxt_rates(:ncol,:, 327) = rxt_rates(:ncol,:, 327)*sol(:ncol,:, 136)*sol(:ncol,:, 93) ! rate_const*MACRO2*NO3 + rxt_rates(:ncol,:, 328) = rxt_rates(:ncol,:, 328)*sol(:ncol,:, 136)*sol(:ncol,:, 91) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 329) = rxt_rates(:ncol,:, 329)*sol(:ncol,:, 136)*sol(:ncol,:, 91) ! rate_const*MACRO2*NO + rxt_rates(:ncol,:, 330) = rxt_rates(:ncol,:, 330)*sol(:ncol,:, 77)*sol(:ncol,:, 102) ! rate_const*MACR*O3 + rxt_rates(:ncol,:, 331) = rxt_rates(:ncol,:, 331)*sol(:ncol,:, 77)*sol(:ncol,:, 106) ! rate_const*MACR*OH + rxt_rates(:ncol,:, 332) = rxt_rates(:ncol,:, 332)*sol(:ncol,:, 78)*sol(:ncol,:, 106) ! rate_const*MACROOH*OH + rxt_rates(:ncol,:, 333) = rxt_rates(:ncol,:, 333)*sol(:ncol,:, 137)*sol(:ncol,:, 130) ! rate_const*MCO3*CH3CO3 + rxt_rates(:ncol,:, 334) = rxt_rates(:ncol,:, 334)*sol(:ncol,:, 137)*sol(:ncol,:, 34) ! rate_const*MCO3*CH3O2 + rxt_rates(:ncol,:, 335) = rxt_rates(:ncol,:, 335)*sol(:ncol,:, 137)*sol(:ncol,:, 134) ! rate_const*MCO3*HO2 + rxt_rates(:ncol,:, 336) = rxt_rates(:ncol,:, 336)*sol(:ncol,:, 137)*sol(:ncol,:, 137) ! rate_const*MCO3*MCO3 + rxt_rates(:ncol,:, 337) = rxt_rates(:ncol,:, 337)*sol(:ncol,:, 137)*sol(:ncol,:, 91) ! rate_const*MCO3*NO + rxt_rates(:ncol,:, 338) = rxt_rates(:ncol,:, 338)*sol(:ncol,:, 137)*sol(:ncol,:, 93) ! rate_const*MCO3*NO3 + rxt_rates(:ncol,:, 339) = rxt_rates(:ncol,:, 339)*sol(:ncol,:, 79)*sol(:ncol,:, 106) ! rate_const*M*MPAN*OH + rxt_rates(:ncol,:, 340) = rxt_rates(:ncol,:, 340)*sol(:ncol,:, 80)*sol(:ncol,:, 102) ! rate_const*MVK*O3 + rxt_rates(:ncol,:, 341) = rxt_rates(:ncol,:, 341)*sol(:ncol,:, 80)*sol(:ncol,:, 106) ! rate_const*MVK*OH + rxt_rates(:ncol,:, 342) = rxt_rates(:ncol,:, 342)*sol(:ncol,:, 137)*sol(:ncol,:, 92) ! rate_const*M*MCO3*NO2 + rxt_rates(:ncol,:, 343) = rxt_rates(:ncol,:, 343)*sol(:ncol,:, 79) ! rate_const*M*MPAN + rxt_rates(:ncol,:, 344) = rxt_rates(:ncol,:, 344)*sol(:ncol,:, 3)*sol(:ncol,:, 106) ! rate_const*BIGALK*OH + rxt_rates(:ncol,:, 345) = rxt_rates(:ncol,:, 345)*sol(:ncol,:, 73)*sol(:ncol,:, 106) ! rate_const*HYDRALD*OH + rxt_rates(:ncol,:, 346) = rxt_rates(:ncol,:, 346)*sol(:ncol,:, 74)*sol(:ncol,:, 93) ! rate_const*ISOP*NO3 + rxt_rates(:ncol,:, 347) = rxt_rates(:ncol,:, 347)*sol(:ncol,:, 75)*sol(:ncol,:, 134) ! rate_const*ISOPNO3*HO2 + rxt_rates(:ncol,:, 348) = rxt_rates(:ncol,:, 348)*sol(:ncol,:, 75)*sol(:ncol,:, 91) ! rate_const*ISOPNO3*NO + rxt_rates(:ncol,:, 349) = rxt_rates(:ncol,:, 349)*sol(:ncol,:, 75)*sol(:ncol,:, 93) ! rate_const*ISOPNO3*NO3 + rxt_rates(:ncol,:, 350) = rxt_rates(:ncol,:, 350)*sol(:ncol,:, 135)*sol(:ncol,:, 130) ! rate_const*ISOPO2*CH3CO3 + rxt_rates(:ncol,:, 351) = rxt_rates(:ncol,:, 351)*sol(:ncol,:, 135)*sol(:ncol,:, 34) ! rate_const*ISOPO2*CH3O2 + rxt_rates(:ncol,:, 352) = rxt_rates(:ncol,:, 352)*sol(:ncol,:, 135)*sol(:ncol,:, 134) ! rate_const*ISOPO2*HO2 + rxt_rates(:ncol,:, 353) = rxt_rates(:ncol,:, 353)*sol(:ncol,:, 135)*sol(:ncol,:, 91) ! rate_const*ISOPO2*NO + rxt_rates(:ncol,:, 354) = rxt_rates(:ncol,:, 354)*sol(:ncol,:, 135)*sol(:ncol,:, 93) ! rate_const*ISOPO2*NO3 + rxt_rates(:ncol,:, 355) = rxt_rates(:ncol,:, 355)*sol(:ncol,:, 74)*sol(:ncol,:, 102) ! rate_const*ISOP*O3 + rxt_rates(:ncol,:, 356) = rxt_rates(:ncol,:, 356)*sol(:ncol,:, 74)*sol(:ncol,:, 106) ! rate_const*ISOP*OH + rxt_rates(:ncol,:, 357) = rxt_rates(:ncol,:, 357)*sol(:ncol,:, 76)*sol(:ncol,:, 106) ! rate_const*ISOPOOH*OH + rxt_rates(:ncol,:, 358) = rxt_rates(:ncol,:, 358)*sol(:ncol,:, 107)*sol(:ncol,:, 93) ! rate_const*ONITR*NO3 + rxt_rates(:ncol,:, 359) = rxt_rates(:ncol,:, 359)*sol(:ncol,:, 107)*sol(:ncol,:, 106) ! rate_const*ONITR*OH + rxt_rates(:ncol,:, 360) = rxt_rates(:ncol,:, 360)*sol(:ncol,:, 151)*sol(:ncol,:, 130) ! rate_const*XO2*CH3CO3 + rxt_rates(:ncol,:, 361) = rxt_rates(:ncol,:, 361)*sol(:ncol,:, 151)*sol(:ncol,:, 34) ! rate_const*XO2*CH3O2 + rxt_rates(:ncol,:, 362) = rxt_rates(:ncol,:, 362)*sol(:ncol,:, 151)*sol(:ncol,:, 134) ! rate_const*XO2*HO2 + rxt_rates(:ncol,:, 363) = rxt_rates(:ncol,:, 363)*sol(:ncol,:, 151)*sol(:ncol,:, 91) ! rate_const*XO2*NO + rxt_rates(:ncol,:, 364) = rxt_rates(:ncol,:, 364)*sol(:ncol,:, 151)*sol(:ncol,:, 93) ! rate_const*XO2*NO3 + rxt_rates(:ncol,:, 365) = rxt_rates(:ncol,:, 365)*sol(:ncol,:, 127)*sol(:ncol,:, 106) ! rate_const*XOOH*OH + rxt_rates(:ncol,:, 366) = rxt_rates(:ncol,:, 366)*sol(:ncol,:, 126)*sol(:ncol,:, 93) ! rate_const*TERP*NO3 + rxt_rates(:ncol,:, 367) = rxt_rates(:ncol,:, 367)*sol(:ncol,:, 126)*sol(:ncol,:, 102) ! rate_const*TERP*O3 + rxt_rates(:ncol,:, 368) = rxt_rates(:ncol,:, 368)*sol(:ncol,:, 126)*sol(:ncol,:, 106) ! rate_const*TERP*OH + rxt_rates(:ncol,:, 369) = rxt_rates(:ncol,:, 369)*sol(:ncol,:, 49)*sol(:ncol,:, 93) ! rate_const*DMS*NO3 + rxt_rates(:ncol,:, 370) = rxt_rates(:ncol,:, 370)*sol(:ncol,:, 49)*sol(:ncol,:, 106) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 371) = rxt_rates(:ncol,:, 371)*sol(:ncol,:, 105)*sol(:ncol,:, 100) ! rate_const*OCS*O + rxt_rates(:ncol,:, 372) = rxt_rates(:ncol,:, 372)*sol(:ncol,:, 105)*sol(:ncol,:, 106) ! rate_const*OCS*OH + rxt_rates(:ncol,:, 373) = rxt_rates(:ncol,:, 373)*sol(:ncol,:, 113)*sol(:ncol,:, 101) ! rate_const*S*O2 + rxt_rates(:ncol,:, 374) = rxt_rates(:ncol,:, 374)*sol(:ncol,:, 116)*sol(:ncol,:, 106) ! rate_const*M*SO2*OH + rxt_rates(:ncol,:, 375) = rxt_rates(:ncol,:, 375)*sol(:ncol,:, 113)*sol(:ncol,:, 102) ! rate_const*S*O3 + rxt_rates(:ncol,:, 376) = rxt_rates(:ncol,:, 376)*sol(:ncol,:, 115)*sol(:ncol,:, 6) ! rate_const*SO*BRO + rxt_rates(:ncol,:, 377) = rxt_rates(:ncol,:, 377)*sol(:ncol,:, 115)*sol(:ncol,:, 42) ! rate_const*SO*CLO + rxt_rates(:ncol,:, 378) = rxt_rates(:ncol,:, 378)*sol(:ncol,:, 113)*sol(:ncol,:, 106) ! rate_const*S*OH + rxt_rates(:ncol,:, 379) = rxt_rates(:ncol,:, 379)*sol(:ncol,:, 115)*sol(:ncol,:, 92) ! rate_const*SO*NO2 + rxt_rates(:ncol,:, 380) = rxt_rates(:ncol,:, 380)*sol(:ncol,:, 115)*sol(:ncol,:, 101) ! rate_const*SO*O2 + rxt_rates(:ncol,:, 381) = rxt_rates(:ncol,:, 381)*sol(:ncol,:, 115)*sol(:ncol,:, 102) ! rate_const*SO*O3 + rxt_rates(:ncol,:, 382) = rxt_rates(:ncol,:, 382)*sol(:ncol,:, 115)*sol(:ncol,:, 104) ! rate_const*SO*OCLO + rxt_rates(:ncol,:, 383) = rxt_rates(:ncol,:, 383)*sol(:ncol,:, 115)*sol(:ncol,:, 106) ! rate_const*SO*OH + rxt_rates(:ncol,:, 384) = rxt_rates(:ncol,:, 384)*sol(:ncol,:, 49)*sol(:ncol,:, 106) ! rate_const*DMS*OH + rxt_rates(:ncol,:, 385) = rxt_rates(:ncol,:, 385)*sol(:ncol,:, 117)*sol(:ncol,:, 152) ! rate_const*SO3*H2O + rxt_rates(:ncol,:, 386) = rxt_rates(:ncol,:, 386)*sol(:ncol,:, 88)*sol(:ncol,:, 106) ! rate_const*NH3*OH + rxt_rates(:ncol,:, 387) = rxt_rates(:ncol,:, 387)*sol(:ncol,:, 134) ! rate_const*HO2 + rxt_rates(:ncol,:, 388) = rxt_rates(:ncol,:, 388)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 389) = rxt_rates(:ncol,:, 389)*sol(:ncol,:, 89) ! rate_const*NH4 + rxt_rates(:ncol,:, 390) = rxt_rates(:ncol,:, 390)*sol(:ncol,:, 92) ! rate_const*NO2 + rxt_rates(:ncol,:, 391) = rxt_rates(:ncol,:, 391)*sol(:ncol,:, 93) ! rate_const*NO3 + rxt_rates(:ncol,:, 392) = rxt_rates(:ncol,:, 392)*sol(:ncol,:, 107) ! rate_const*ONITR + rxt_rates(:ncol,:, 393) = rxt_rates(:ncol,:, 393)*sol(:ncol,:, 124) ! rate_const*SOAE + rxt_rates(:ncol,:, 394) = rxt_rates(:ncol,:, 394)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 395) = rxt_rates(:ncol,:, 395)*sol(:ncol,:, 71)*sol(:ncol,:, 66) ! rate_const*HOCL*HCL rxt_rates(:ncol,:, 396) = rxt_rates(:ncol,:, 396)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 397) = rxt_rates(:ncol,:, 397)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 398) = rxt_rates(:ncol,:, 398)*sol(:ncol,:, 46) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 397) = rxt_rates(:ncol,:, 397)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 398) = rxt_rates(:ncol,:, 398)*sol(:ncol,:, 43) ! rate_const*CLONO2 rxt_rates(:ncol,:, 399) = rxt_rates(:ncol,:, 399)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 400) = rxt_rates(:ncol,:, 400)*sol(:ncol,:, 46)*sol(:ncol,:, 71) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 401) = rxt_rates(:ncol,:, 401)*sol(:ncol,:, 76)*sol(:ncol,:, 71) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 402) = rxt_rates(:ncol,:, 402)*sol(:ncol,:, 75)*sol(:ncol,:, 71) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 403) = rxt_rates(:ncol,:, 403)*sol(:ncol,:, 46) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 400) = rxt_rates(:ncol,:, 400)*sol(:ncol,:, 43)*sol(:ncol,:, 66) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 401) = rxt_rates(:ncol,:, 401)*sol(:ncol,:, 71)*sol(:ncol,:, 66) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 402) = rxt_rates(:ncol,:, 402)*sol(:ncol,:, 70)*sol(:ncol,:, 66) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 403) = rxt_rates(:ncol,:, 403)*sol(:ncol,:, 43) ! rate_const*CLONO2 rxt_rates(:ncol,:, 404) = rxt_rates(:ncol,:, 404)*sol(:ncol,:, 7) ! rate_const*BRONO2 - rxt_rates(:ncol,:, 405) = rxt_rates(:ncol,:, 405)*sol(:ncol,:, 46)*sol(:ncol,:, 71) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 406) = rxt_rates(:ncol,:, 406)*sol(:ncol,:, 76)*sol(:ncol,:, 71) ! rate_const*HOCL*HCL - rxt_rates(:ncol,:, 407) = rxt_rates(:ncol,:, 407)*sol(:ncol,:, 75)*sol(:ncol,:, 71) ! rate_const*HOBR*HCL - rxt_rates(:ncol,:, 408) = rxt_rates(:ncol,:, 408)*sol(:ncol,:, 91) ! rate_const*N2O5 - rxt_rates(:ncol,:, 409) = rxt_rates(:ncol,:, 409)*sol(:ncol,:, 46) ! rate_const*CLONO2 - rxt_rates(:ncol,:, 410) = rxt_rates(:ncol,:, 410)*sol(:ncol,:, 46)*sol(:ncol,:, 71) ! rate_const*CLONO2*HCL - rxt_rates(:ncol,:, 411) = rxt_rates(:ncol,:, 411)*sol(:ncol,:, 150) ! rate_const*Op2P - rxt_rates(:ncol,:, 412) = rxt_rates(:ncol,:, 412)*sol(:ncol,:, 149) ! rate_const*Op2D - rxt_rates(:ncol,:, 413) = rxt_rates(:ncol,:, 413)*sol(:ncol,:, 150) ! rate_const*Op2P - rxt_rates(:ncol,:, 414) = rxt_rates(:ncol,:, 414)*sol(:ncol,:, 142)*sol(:ncol,:, 138) ! rate_const*NOp*e - rxt_rates(:ncol,:, 415) = rxt_rates(:ncol,:, 415)*sol(:ncol,:, 147)*sol(:ncol,:, 138) ! rate_const*O2p*e - rxt_rates(:ncol,:, 416) = rxt_rates(:ncol,:, 416)*sol(:ncol,:, 141)*sol(:ncol,:, 138) ! rate_const*N2p*e - rxt_rates(:ncol,:, 417) = rxt_rates(:ncol,:, 417)*sol(:ncol,:, 141)*sol(:ncol,:, 107) ! rate_const*N2p*O2 - rxt_rates(:ncol,:, 418) = rxt_rates(:ncol,:, 418)*sol(:ncol,:, 141)*sol(:ncol,:, 106) ! rate_const*N2p*O - rxt_rates(:ncol,:, 419) = rxt_rates(:ncol,:, 419)*sol(:ncol,:, 141)*sol(:ncol,:, 106) ! rate_const*N2p*O - rxt_rates(:ncol,:, 420) = rxt_rates(:ncol,:, 420)*sol(:ncol,:, 143)*sol(:ncol,:, 106) ! rate_const*Np*O - rxt_rates(:ncol,:, 421) = rxt_rates(:ncol,:, 421)*sol(:ncol,:, 143)*sol(:ncol,:, 107) ! rate_const*Np*O2 - rxt_rates(:ncol,:, 422) = rxt_rates(:ncol,:, 422)*sol(:ncol,:, 143)*sol(:ncol,:, 107) ! rate_const*Np*O2 - rxt_rates(:ncol,:, 423) = rxt_rates(:ncol,:, 423)*sol(:ncol,:, 147)*sol(:ncol,:, 89) ! rate_const*O2p*N - rxt_rates(:ncol,:, 424) = rxt_rates(:ncol,:, 424)*sol(:ncol,:, 147) ! rate_const*N2*O2p - rxt_rates(:ncol,:, 425) = rxt_rates(:ncol,:, 425)*sol(:ncol,:, 147)*sol(:ncol,:, 97) ! rate_const*O2p*NO - rxt_rates(:ncol,:, 426) = rxt_rates(:ncol,:, 426)*sol(:ncol,:, 148)*sol(:ncol,:, 49) ! rate_const*Op*CO2 - rxt_rates(:ncol,:, 427) = rxt_rates(:ncol,:, 427)*sol(:ncol,:, 148) ! rate_const*N2*Op - rxt_rates(:ncol,:, 428) = rxt_rates(:ncol,:, 428)*sol(:ncol,:, 148)*sol(:ncol,:, 140) ! rate_const*Op*N2D - rxt_rates(:ncol,:, 429) = rxt_rates(:ncol,:, 429)*sol(:ncol,:, 148)*sol(:ncol,:, 107) ! rate_const*Op*O2 - rxt_rates(:ncol,:, 430) = rxt_rates(:ncol,:, 430)*sol(:ncol,:, 149)*sol(:ncol,:, 138) ! rate_const*Op2D*e - rxt_rates(:ncol,:, 431) = rxt_rates(:ncol,:, 431)*sol(:ncol,:, 149) ! rate_const*N2*Op2D - rxt_rates(:ncol,:, 432) = rxt_rates(:ncol,:, 432)*sol(:ncol,:, 149)*sol(:ncol,:, 106) ! rate_const*Op2D*O - rxt_rates(:ncol,:, 433) = rxt_rates(:ncol,:, 433)*sol(:ncol,:, 149)*sol(:ncol,:, 107) ! rate_const*Op2D*O2 - rxt_rates(:ncol,:, 434) = rxt_rates(:ncol,:, 434)*sol(:ncol,:, 150)*sol(:ncol,:, 138) ! rate_const*Op2P*e - rxt_rates(:ncol,:, 435) = rxt_rates(:ncol,:, 435)*sol(:ncol,:, 150)*sol(:ncol,:, 138) ! rate_const*Op2P*e - rxt_rates(:ncol,:, 436) = rxt_rates(:ncol,:, 436)*sol(:ncol,:, 150) ! rate_const*N2*Op2P - rxt_rates(:ncol,:, 437) = rxt_rates(:ncol,:, 437)*sol(:ncol,:, 150) ! rate_const*N2*Op2P - rxt_rates(:ncol,:, 438) = rxt_rates(:ncol,:, 438)*sol(:ncol,:, 150)*sol(:ncol,:, 106) ! rate_const*Op2P*O + rxt_rates(:ncol,:, 405) = rxt_rates(:ncol,:, 405)*sol(:ncol,:, 43)*sol(:ncol,:, 66) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 406) = rxt_rates(:ncol,:, 406)*sol(:ncol,:, 71)*sol(:ncol,:, 66) ! rate_const*HOCL*HCL + rxt_rates(:ncol,:, 407) = rxt_rates(:ncol,:, 407)*sol(:ncol,:, 70)*sol(:ncol,:, 66) ! rate_const*HOBR*HCL + rxt_rates(:ncol,:, 408) = rxt_rates(:ncol,:, 408)*sol(:ncol,:, 83) ! rate_const*N2O5 + rxt_rates(:ncol,:, 409) = rxt_rates(:ncol,:, 409)*sol(:ncol,:, 43) ! rate_const*CLONO2 + rxt_rates(:ncol,:, 410) = rxt_rates(:ncol,:, 410)*sol(:ncol,:, 43)*sol(:ncol,:, 66) ! rate_const*CLONO2*HCL + rxt_rates(:ncol,:, 411) = rxt_rates(:ncol,:, 411)*sol(:ncol,:, 148) ! rate_const*Op2P + rxt_rates(:ncol,:, 412) = rxt_rates(:ncol,:, 412)*sol(:ncol,:, 147) ! rate_const*Op2D + rxt_rates(:ncol,:, 413) = rxt_rates(:ncol,:, 413)*sol(:ncol,:, 148) ! rate_const*Op2P + rxt_rates(:ncol,:, 414) = rxt_rates(:ncol,:, 414)*sol(:ncol,:, 140)*sol(:ncol,:, 131) ! rate_const*NOp*e + rxt_rates(:ncol,:, 415) = rxt_rates(:ncol,:, 415)*sol(:ncol,:, 145)*sol(:ncol,:, 131) ! rate_const*O2p*e + rxt_rates(:ncol,:, 416) = rxt_rates(:ncol,:, 416)*sol(:ncol,:, 139)*sol(:ncol,:, 131) ! rate_const*N2p*e + rxt_rates(:ncol,:, 417) = rxt_rates(:ncol,:, 417)*sol(:ncol,:, 139)*sol(:ncol,:, 101) ! rate_const*N2p*O2 + rxt_rates(:ncol,:, 418) = rxt_rates(:ncol,:, 418)*sol(:ncol,:, 139)*sol(:ncol,:, 100) ! rate_const*N2p*O + rxt_rates(:ncol,:, 419) = rxt_rates(:ncol,:, 419)*sol(:ncol,:, 139)*sol(:ncol,:, 100) ! rate_const*N2p*O + rxt_rates(:ncol,:, 420) = rxt_rates(:ncol,:, 420)*sol(:ncol,:, 141)*sol(:ncol,:, 100) ! rate_const*Np*O + rxt_rates(:ncol,:, 421) = rxt_rates(:ncol,:, 421)*sol(:ncol,:, 141)*sol(:ncol,:, 101) ! rate_const*Np*O2 + rxt_rates(:ncol,:, 422) = rxt_rates(:ncol,:, 422)*sol(:ncol,:, 141)*sol(:ncol,:, 101) ! rate_const*Np*O2 + rxt_rates(:ncol,:, 423) = rxt_rates(:ncol,:, 423)*sol(:ncol,:, 145)*sol(:ncol,:, 81) ! rate_const*O2p*N + rxt_rates(:ncol,:, 424) = rxt_rates(:ncol,:, 424)*sol(:ncol,:, 145) ! rate_const*N2*O2p + rxt_rates(:ncol,:, 425) = rxt_rates(:ncol,:, 425)*sol(:ncol,:, 145)*sol(:ncol,:, 91) ! rate_const*O2p*NO + rxt_rates(:ncol,:, 426) = rxt_rates(:ncol,:, 426)*sol(:ncol,:, 146)*sol(:ncol,:, 46) ! rate_const*Op*CO2 + rxt_rates(:ncol,:, 427) = rxt_rates(:ncol,:, 427)*sol(:ncol,:, 146) ! rate_const*N2*Op + rxt_rates(:ncol,:, 428) = rxt_rates(:ncol,:, 428)*sol(:ncol,:, 146)*sol(:ncol,:, 138) ! rate_const*Op*N2D + rxt_rates(:ncol,:, 429) = rxt_rates(:ncol,:, 429)*sol(:ncol,:, 146)*sol(:ncol,:, 101) ! rate_const*Op*O2 + rxt_rates(:ncol,:, 430) = rxt_rates(:ncol,:, 430)*sol(:ncol,:, 147)*sol(:ncol,:, 131) ! rate_const*Op2D*e + rxt_rates(:ncol,:, 431) = rxt_rates(:ncol,:, 431)*sol(:ncol,:, 147) ! rate_const*N2*Op2D + rxt_rates(:ncol,:, 432) = rxt_rates(:ncol,:, 432)*sol(:ncol,:, 147)*sol(:ncol,:, 100) ! rate_const*Op2D*O + rxt_rates(:ncol,:, 433) = rxt_rates(:ncol,:, 433)*sol(:ncol,:, 147)*sol(:ncol,:, 101) ! rate_const*Op2D*O2 + rxt_rates(:ncol,:, 434) = rxt_rates(:ncol,:, 434)*sol(:ncol,:, 148)*sol(:ncol,:, 131) ! rate_const*Op2P*e + rxt_rates(:ncol,:, 435) = rxt_rates(:ncol,:, 435)*sol(:ncol,:, 148)*sol(:ncol,:, 131) ! rate_const*Op2P*e + rxt_rates(:ncol,:, 436) = rxt_rates(:ncol,:, 436)*sol(:ncol,:, 148) ! rate_const*N2*Op2P + rxt_rates(:ncol,:, 437) = rxt_rates(:ncol,:, 437)*sol(:ncol,:, 148) ! rate_const*N2*Op2P + rxt_rates(:ncol,:, 438) = rxt_rates(:ncol,:, 438)*sol(:ncol,:, 148)*sol(:ncol,:, 100) ! rate_const*Op2P*O end subroutine set_rates end module mo_rxt_rates_conv diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_setrxt.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_setrxt.F90 index b9340f0e7a..8162ef4916 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_setrxt.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_setrxt.F90 @@ -326,7 +326,6 @@ subroutine setrxt( rate, temp, m, ncol ) exp_fac(:) = exp( 700._r8 * itemp(:) ) rate(:,280) = 7.5e-13_r8 * exp_fac(:) rate(:,294) = 7.5e-13_r8 * exp_fac(:) - rate(:,307) = 7.5e-13_r8 * exp_fac(:) rate(:,315) = 7.5e-13_r8 * exp_fac(:) rate(:,319) = 8.6e-13_r8 * exp_fac(:) rate(:,326) = 8e-13_r8 * exp_fac(:) @@ -352,7 +351,8 @@ subroutine setrxt( rate, temp, m, ncol ) rate(:,292) = 3.15e-14_r8 * exp( 920._r8 * itemp(:) ) rate(:,296) = 1.6e+11_r8 * exp( -4150._r8 * itemp(:) ) rate(:,304) = 4.6e-13_r8 * exp( -1156._r8 * itemp(:) ) - rate(:,306) = 3.75e-13_r8 * exp( -40._r8 * itemp(:) ) + rate(:,306) = 1e-13_r8 * exp( 557._r8 * itemp(:) ) + rate(:,307) = 1.41e-13_r8 * exp( 1300._r8 * itemp(:) ) exp_fac(:) = exp( 360._r8 * itemp(:) ) rate(:,308) = 2.7e-12_r8 * exp_fac(:) rate(:,328) = 2.7e-12_r8 * exp_fac(:) diff --git a/src/chemistry/pp_waccm_t4ma_mam5/mo_sim_dat.F90 b/src/chemistry/pp_waccm_t4ma_mam5/mo_sim_dat.F90 index 8093e0a808..47d6801b8d 100644 --- a/src/chemistry/pp_waccm_t4ma_mam5/mo_sim_dat.F90 +++ b/src/chemistry/pp_waccm_t4ma_mam5/mo_sim_dat.F90 @@ -31,111 +31,111 @@ subroutine set_sim_dat is_scalar = .false. is_vector = .true. - clscnt(:) = (/ 2, 0, 0, 149, 0 /) + clscnt(:) = (/ 2, 0, 0, 150, 0 /) cls_rxt_cnt(:,1) = (/ 5, 0, 0, 2 /) - cls_rxt_cnt(:,4) = (/ 8, 142, 288, 149 /) + cls_rxt_cnt(:,4) = (/ 8, 142, 288, 150 /) - solsym(:151) = (/ 'bc_a1 ','bc_a4 ','BIGALK ','BR ','BRCL ', & - 'BRO ','BRONO2 ','BRY ','C2H4 ','C2H5O2 ', & - 'C2H5OH ','C2H5OOH ','C2H6 ','C3H6 ','C3H7O2 ', & - 'C3H7OOH ','C3H8 ','CCL4 ','CF2CLBR ','CF3BR ', & - 'CFC11 ','CFC113 ','CFC114 ','CFC115 ','CFC12 ', & - 'CH2BR2 ','CH2O ','CH3BR ','CH3CCL3 ','CH3CHO ', & - 'CH3CL ','CH3CO3 ','CH3COCH3 ','CH3COCHO ','CH3COOH ', & - 'CH3COOOH ','CH3O2 ','CH3OH ','CH3OOH ','CH4 ', & - 'CHBR3 ','CL ','CL2 ','CL2O2 ','CLO ', & - 'CLONO2 ','CLY ','CO ','CO2 ','COF2 ', & - 'COFCL ','DMS ','dst_a1 ','dst_a2 ','dst_a3 ', & - 'EO ','EO2 ','EOOH ','F ','GLYALD ', & + solsym(:152) = (/ 'bc_a1 ','bc_a4 ','BIGALK ','BR ','BRCL ', & + 'BRO ','BRONO2 ','BRY ','C2H4 ','C2H5OH ', & + 'C2H5OOH ','C2H6 ','C3H6 ','C3H7OOH ','C3H8 ', & + 'CCL4 ','CF2CLBR ','CF3BR ','CFC11 ','CFC113 ', & + 'CFC114 ','CFC115 ','CFC12 ','CH2BR2 ','CH2O ', & + 'CH3BR ','CH3CCL3 ','CH3CHO ','CH3CL ','CH3COCH3 ', & + 'CH3COCHO ','CH3COOH ','CH3COOOH ','CH3O2 ','CH3OH ', & + 'CH3OOH ','CH4 ','CHBR3 ','CL ','CL2 ', & + 'CL2O2 ','CLO ','CLONO2 ','CLY ','CO ', & + 'CO2 ','COF2 ','COFCL ','DMS ','dst_a1 ', & + 'dst_a2 ','dst_a3 ','EOOH ','F ','GLYALD ', & 'GLYOXAL ','H ','H2 ','H2402 ','H2O2 ', & 'H2SO4 ','HBR ','HCFC141B ','HCFC142B ','HCFC22 ', & 'HCL ','HF ','HNO3 ','HO2NO2 ','HOBR ', & 'HOCL ','HYAC ','HYDRALD ','ISOP ','ISOPNO3 ', & - 'ISOPO2 ','ISOPOOH ','MACR ','MACRO2 ','MACROOH ', & - 'MCO3 ','MPAN ','MVK ','N ','N2O ', & - 'N2O5 ','ncl_a1 ','ncl_a2 ','ncl_a3 ','NH3 ', & - 'NH4 ','NO ','NO2 ','NO3 ','NOA ', & - 'num_a1 ','num_a2 ','num_a3 ','num_a4 ','num_a5 ', & - 'O ','O2 ','O3 ','OCLO ','OCS ', & - 'OH ','ONITR ','PAN ','PO2 ','pom_a1 ', & - 'pom_a4 ','POOH ','RO2 ','ROOH ','S ', & - 'SF6 ','SO ','SO2 ','SO3 ','so4_a1 ', & - 'so4_a2 ','so4_a3 ','so4_a5 ','soa_a1 ','soa_a2 ', & - 'SOAE ','SOAG ','TERP ','XO2 ','XOOH ', & - 'NHDEP ','NDEP ','e ','HO2 ','N2D ', & - 'N2p ','NOp ','Np ','O1D ','O2_1D ', & - 'O2_1S ','O2p ','Op ','Op2D ','Op2P ', & - 'H2O ' /) + 'ISOPOOH ','MACR ','MACROOH ','MPAN ','MVK ', & + 'N ','N2O ','N2O5 ','ncl_a1 ','ncl_a2 ', & + 'ncl_a3 ','NDEP ','NH3 ','NH4 ','NHDEP ', & + 'NO ','NO2 ','NO3 ','NOA ','num_a1 ', & + 'num_a2 ','num_a3 ','num_a4 ','num_a5 ','O ', & + 'O2 ','O3 ','O3S ','OCLO ','OCS ', & + 'OH ','ONITR ','PAN ','pom_a1 ','pom_a4 ', & + 'POOH ','ROOH ','S ','SF6 ','SO ', & + 'SO2 ','SO3 ','so4_a1 ','so4_a2 ','so4_a3 ', & + 'so4_a5 ','soa_a1 ','soa_a2 ','SOAE ','SOAG ', & + 'TERP ','XOOH ','C2H5O2 ','C3H7O2 ','CH3CO3 ', & + 'e ','EO ','EO2 ','HO2 ','ISOPO2 ', & + 'MACRO2 ','MCO3 ','N2D ','N2p ','NOp ', & + 'Np ','O1D ','O2_1D ','O2_1S ','O2p ', & + 'Op ','Op2D ','Op2P ','PO2 ','RO2 ', & + 'XO2 ','H2O ' /) - adv_mass(:151) = (/ 12.011000_r8, 12.011000_r8, 72.143800_r8, 79.904000_r8, 115.356700_r8, & - 95.903400_r8, 141.908940_r8, 99.716850_r8, 28.051600_r8, 61.057800_r8, & - 46.065800_r8, 62.065200_r8, 30.066400_r8, 42.077400_r8, 75.083600_r8, & - 76.091000_r8, 44.092200_r8, 153.821800_r8, 165.364506_r8, 148.910210_r8, & - 137.367503_r8, 187.375310_r8, 170.921013_r8, 154.466716_r8, 120.913206_r8, & - 173.833800_r8, 30.025200_r8, 94.937200_r8, 133.402300_r8, 44.051000_r8, & - 50.485900_r8, 75.042400_r8, 58.076800_r8, 72.061400_r8, 60.050400_r8, & - 76.049800_r8, 47.032000_r8, 32.040000_r8, 48.039400_r8, 16.040600_r8, & - 252.730400_r8, 35.452700_r8, 70.905400_r8, 102.904200_r8, 51.452100_r8, & - 97.457640_r8, 100.916850_r8, 28.010400_r8, 44.009800_r8, 66.007206_r8, & - 82.461503_r8, 62.132400_r8, 135.064039_r8, 135.064039_r8, 135.064039_r8, & - 61.057800_r8, 77.057200_r8, 78.064600_r8, 18.998403_r8, 60.050400_r8, & + adv_mass(:152) = (/ 12.011000_r8, 12.011000_r8, 72.143800_r8, 79.904000_r8, 115.356700_r8, & + 95.903400_r8, 141.908940_r8, 99.716850_r8, 28.051600_r8, 46.065800_r8, & + 62.065200_r8, 30.066400_r8, 42.077400_r8, 76.091000_r8, 44.092200_r8, & + 153.821800_r8, 165.364506_r8, 148.910210_r8, 137.367503_r8, 187.375310_r8, & + 170.921013_r8, 154.466716_r8, 120.913206_r8, 173.833800_r8, 30.025200_r8, & + 94.937200_r8, 133.402300_r8, 44.051000_r8, 50.485900_r8, 58.076800_r8, & + 72.061400_r8, 60.050400_r8, 76.049800_r8, 47.032000_r8, 32.040000_r8, & + 48.039400_r8, 16.040600_r8, 252.730400_r8, 35.452700_r8, 70.905400_r8, & + 102.904200_r8, 51.452100_r8, 97.457640_r8, 100.916850_r8, 28.010400_r8, & + 44.009800_r8, 66.007206_r8, 82.461503_r8, 62.132400_r8, 135.064039_r8, & + 135.064039_r8, 135.064039_r8, 78.064600_r8, 18.998403_r8, 60.050400_r8, & 58.035600_r8, 1.007400_r8, 2.014800_r8, 259.823613_r8, 34.013600_r8, & 98.078400_r8, 80.911400_r8, 116.948003_r8, 100.493706_r8, 86.467906_r8, & 36.460100_r8, 20.005803_r8, 63.012340_r8, 79.011740_r8, 96.910800_r8, & 52.459500_r8, 74.076200_r8, 100.113000_r8, 68.114200_r8, 162.117940_r8, & - 117.119800_r8, 118.127200_r8, 70.087800_r8, 119.093400_r8, 120.100800_r8, & - 101.079200_r8, 147.084740_r8, 70.087800_r8, 14.006740_r8, 44.012880_r8, & - 108.010480_r8, 58.442468_r8, 58.442468_r8, 58.442468_r8, 17.028940_r8, & - 18.036340_r8, 30.006140_r8, 46.005540_r8, 62.004940_r8, 119.074340_r8, & - 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, & - 15.999400_r8, 31.998800_r8, 47.998200_r8, 67.451500_r8, 60.076400_r8, & - 17.006800_r8, 133.100140_r8, 121.047940_r8, 91.083000_r8, 12.011000_r8, & - 12.011000_r8, 92.090400_r8, 89.068200_r8, 90.075600_r8, 32.066000_r8, & - 146.056419_r8, 48.065400_r8, 64.064800_r8, 80.064200_r8, 115.107340_r8, & - 115.107340_r8, 115.107340_r8, 115.107340_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 12.011000_r8, 136.228400_r8, 149.118600_r8, 150.126000_r8, & - 14.006740_r8, 14.006740_r8, 0.548567E-03_r8, 33.006200_r8, 14.006740_r8, & - 28.013480_r8, 30.006140_r8, 14.006740_r8, 15.999400_r8, 31.998800_r8, & - 31.998800_r8, 31.998800_r8, 15.999400_r8, 15.999400_r8, 15.999400_r8, & - 18.014200_r8 /) + 118.127200_r8, 70.087800_r8, 120.100800_r8, 147.084740_r8, 70.087800_r8, & + 14.006740_r8, 44.012880_r8, 108.010480_r8, 58.442468_r8, 58.442468_r8, & + 58.442468_r8, 14.006740_r8, 17.028940_r8, 18.036340_r8, 14.006740_r8, & + 30.006140_r8, 46.005540_r8, 62.004940_r8, 119.074340_r8, 1.007400_r8, & + 1.007400_r8, 1.007400_r8, 1.007400_r8, 1.007400_r8, 15.999400_r8, & + 31.998800_r8, 47.998200_r8, 47.998200_r8, 67.451500_r8, 60.076400_r8, & + 17.006800_r8, 133.100140_r8, 121.047940_r8, 12.011000_r8, 12.011000_r8, & + 92.090400_r8, 90.075600_r8, 32.066000_r8, 146.056419_r8, 48.065400_r8, & + 64.064800_r8, 80.064200_r8, 115.107340_r8, 115.107340_r8, 115.107340_r8, & + 115.107340_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + 136.228400_r8, 150.126000_r8, 61.057800_r8, 75.083600_r8, 75.042400_r8, & + 0.548567E-03_r8, 61.057800_r8, 77.057200_r8, 33.006200_r8, 117.119800_r8, & + 119.093400_r8, 101.079200_r8, 14.006740_r8, 28.013480_r8, 30.006140_r8, & + 14.006740_r8, 15.999400_r8, 31.998800_r8, 31.998800_r8, 31.998800_r8, & + 15.999400_r8, 15.999400_r8, 15.999400_r8, 91.083000_r8, 89.068200_r8, & + 149.118600_r8, 18.014200_r8 /) - crb_mass(:151) = (/ 12.011000_r8, 12.011000_r8, 60.055000_r8, 0.000000_r8, 0.000000_r8, & + crb_mass(:152) = (/ 12.011000_r8, 12.011000_r8, 60.055000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, & - 24.022000_r8, 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, & - 36.033000_r8, 36.033000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 24.022000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, & - 12.011000_r8, 12.011000_r8, 12.011000_r8, 24.022000_r8, 24.022000_r8, & - 12.011000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 24.022000_r8, & - 24.022000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 24.022000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 24.022000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, 24.022000_r8, & + 24.022000_r8, 24.022000_r8, 36.033000_r8, 36.033000_r8, 36.033000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 24.022000_r8, & + 24.022000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, 36.033000_r8, & + 36.033000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, 12.011000_r8, & + 12.011000_r8, 12.011000_r8, 12.011000_r8, 24.022000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 24.022000_r8, 0.000000_r8, 24.022000_r8, & 24.022000_r8, 0.000000_r8, 0.000000_r8, 24.022000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 24.022000_r8, 24.022000_r8, 12.011000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 36.033000_r8, 60.055000_r8, 60.055000_r8, 60.055000_r8, & - 60.055000_r8, 60.055000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, & - 48.044000_r8, 48.044000_r8, 48.044000_r8, 0.000000_r8, 0.000000_r8, & + 60.055000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, 48.044000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & - 0.000000_r8, 48.044000_r8, 24.022000_r8, 36.033000_r8, 12.011000_r8, & - 12.011000_r8, 36.033000_r8, 36.033000_r8, 36.033000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, 12.011000_r8, & - 12.011000_r8, 12.011000_r8, 120.110000_r8, 60.055000_r8, 60.055000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 12.011000_r8, & + 0.000000_r8, 48.044000_r8, 24.022000_r8, 12.011000_r8, 12.011000_r8, & + 36.033000_r8, 36.033000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & + 0.000000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, 12.011000_r8, & + 120.110000_r8, 60.055000_r8, 24.022000_r8, 36.033000_r8, 24.022000_r8, & + 0.000000_r8, 24.022000_r8, 24.022000_r8, 0.000000_r8, 60.055000_r8, & + 48.044000_r8, 48.044000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, 0.000000_r8, & - 0.000000_r8 /) + 0.000000_r8, 0.000000_r8, 0.000000_r8, 36.033000_r8, 36.033000_r8, & + 60.055000_r8, 0.000000_r8 /) fix_mass(: 2) = (/ 0.00000000_r8, 28.0134800_r8 /) - clsmap(: 2,1) = (/ 136, 137 /) - clsmap(:149,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + clsmap(: 2,1) = (/ 87, 90 /) + clsmap(:150,4) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, & 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, & @@ -143,63 +143,65 @@ subroutine set_sim_dat 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, & 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, & 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, & - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, & - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, & - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, & - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, & - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, & - 131, 132, 133, 134, 135, 138, 139, 140, 141, 142, & - 143, 144, 145, 146, 147, 148, 149, 150, 151 /) + 81, 82, 83, 84, 85, 86, 88, 89, 91, 92, & + 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, & + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, & + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, & + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, & + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, & + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152 /) - permute(:149,4) = (/ 1, 2, 29, 131, 49, 133, 82, 3, 74, 98, & - 54, 62, 60, 116, 102, 68, 34, 31, 40, 41, & - 35, 42, 36, 43, 37, 75, 136, 86, 33, 117, & - 66, 126, 95, 121, 89, 85, 140, 80, 69, 147, & - 71, 143, 44, 28, 134, 111, 4, 118, 127, 48, & - 51, 56, 5, 6, 7, 72, 93, 38, 104, 114, & - 91, 148, 128, 32, 84, 39, 99, 50, 52, 57, & - 130, 58, 139, 73, 94, 101, 115, 64, 103, 97, & - 122, 78, 119, 123, 61, 125, 83, 124, 110, 53, & - 59, 8, 9, 10, 30, 11, 146, 135, 141, 67, & - 12, 13, 14, 15, 16, 145, 132, 138, 63, 65, & - 144, 112, 79, 96, 17, 18, 81, 113, 70, 90, & - 19, 129, 109, 55, 20, 21, 22, 23, 24, 25, & - 26, 27, 88, 120, 47, 107, 137, 108, 87, 92, & - 100, 142, 45, 46, 106, 105, 77, 76, 149 /) + permute(:150,4) = (/ 1, 2, 30, 132, 49, 144, 79, 3, 74, 55, & + 63, 61, 117, 69, 34, 32, 41, 42, 35, 43, & + 36, 44, 37, 76, 146, 87, 38, 118, 66, 94, & + 122, 90, 85, 135, 81, 71, 134, 72, 142, 45, & + 29, 143, 111, 4, 119, 128, 53, 51, 57, 5, & + 6, 7, 39, 105, 114, 92, 137, 129, 33, 86, & + 40, 102, 50, 52, 58, 131, 59, 148, 75, 95, & + 100, 116, 65, 104, 97, 83, 120, 62, 84, 125, & + 112, 54, 60, 8, 9, 10, 31, 11, 139, 138, & + 136, 68, 12, 13, 14, 15, 16, 147, 133, 149, & + 17, 64, 67, 141, 113, 80, 18, 19, 82, 70, & + 91, 20, 130, 110, 56, 21, 22, 23, 24, 25, & + 26, 27, 28, 89, 48, 99, 103, 127, 108, 73, & + 96, 145, 123, 124, 126, 109, 88, 93, 101, 140, & + 46, 47, 107, 106, 78, 77, 98, 115, 121, 150 /) - diag_map(:149) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & + diag_map(:150) = (/ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, & 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, & - 21, 22, 23, 24, 25, 26, 28, 29, 32, 35, & - 38, 41, 45, 49, 53, 57, 61, 65, 68, 71, & - 76, 81, 86, 91, 93, 96, 98, 101, 104, 107, & - 112, 117, 122, 126, 131, 135, 142, 148, 151, 157, & - 163, 168, 173, 178, 181, 189, 197, 203, 209, 215, & - 221, 227, 232, 239, 246, 253, 260, 266, 274, 282, & - 286, 294, 302, 311, 318, 325, 334, 343, 353, 358, & - 365, 370, 377, 386, 394, 401, 411, 424, 433, 442, & - 451, 460, 473, 490, 501, 511, 526, 539, 548, 561, & - 573, 584, 595, 607, 613, 623, 640, 649, 654, 671, & - 683, 702, 726, 744, 765, 793, 815, 826, 841, 860, & - 876, 909, 932, 959, 996,1021,1081,1128,1152,1194, & - 1241,1284,1323,1413,1459,1508,1534,1556,1584 /) + 21, 22, 23, 24, 25, 26, 27, 29, 30, 33, & + 36, 39, 42, 46, 50, 54, 58, 62, 66, 69, & + 72, 77, 82, 87, 92, 94, 97, 99, 102, 105, & + 110, 114, 119, 122, 126, 131, 135, 142, 148, 151, & + 157, 163, 168, 173, 178, 181, 189, 197, 203, 209, & + 215, 221, 227, 232, 239, 246, 253, 260, 266, 274, & + 282, 286, 294, 302, 311, 318, 325, 334, 343, 353, & + 358, 365, 370, 375, 382, 392, 400, 411, 424, 434, & + 442, 450, 460, 473, 490, 501, 511, 526, 539, 548, & + 556, 573, 584, 594, 602, 613, 623, 640, 649, 654, & + 671, 683, 702, 726, 744, 765, 793, 815, 826, 841, & + 860, 876, 909, 931, 973,1020,1042,1080,1129,1172, & + 1262,1301,1329,1354,1414,1439,1485,1509,1556,1584 /) - extfrc_lst(: 21) = (/ 'CO ','pom_a4 ','so4_a5 ','bc_a4 ','SO2 ', & + extfrc_lst(: 22) = (/ 'CO ','so4_a5 ','bc_a4 ','SO2 ','H2O ', & 'NO2 ','NO ','num_a1 ','num_a2 ','so4_a1 ', & - 'so4_a2 ','num_a5 ','num_a4 ','O2p ','N2p ', & - 'Np ','N2D ','Op ','N ','e ', & - 'OH ' /) + 'so4_a2 ','num_a5 ','num_a4 ','pom_a4 ','e ', & + 'N2p ','Np ','N2D ','N ','O2p ', & + 'Op ','OH ' /) - frc_from_dataset(: 21) = (/ .true., .true., .true., .true., .true., & + frc_from_dataset(: 22) = (/ .true., .true., .true., .true., .true., & .true., .true., .true., .true., .true., & - .true., .true., .true., .false., .false., & + .true., .true., .true., .true., .false., & .false., .false., .false., .false., .false., & - .false. /) + .false., .false. /) inv_lst(: 2) = (/ 'M ', 'N2 ' /) - slvd_lst(: 13) = (/ 'e ', 'HO2 ', 'N2D ', 'N2p ', 'NOp ', & - 'Np ', 'O1D ', 'O2_1D ', 'O2_1S ', 'O2p ', & - 'Op ', 'Op2D ', 'Op2P ' /) + slvd_lst(: 24) = (/ 'C2H5O2 ', 'C3H7O2 ', 'CH3CO3 ', 'e ', 'EO ', & + 'EO2 ', 'HO2 ', 'ISOPO2 ', 'MACRO2 ', 'MCO3 ', & + 'N2D ', 'N2p ', 'NOp ', 'Np ', 'O1D ', & + 'O2_1D ', 'O2_1S ', 'O2p ', 'Op ', 'Op2D ', & + 'Op2P ', 'PO2 ', 'RO2 ', 'XO2 ' /) if( allocated( rxt_tag_lst ) ) then deallocate( rxt_tag_lst )