- Timestamp:
- May 31, 2019 3:19:05 PM (5 years ago)
- Location:
- palm/trunk
- Files:
-
- 2 added
- 1 deleted
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/Makefile
r3999 r4012 686 686 run_control.f90 \ 687 687 salsa_mod.f90 \ 688 salsa_util_mod.f90 \689 688 set_slicer_attributes_dvrp.f90 \ 690 689 singleton_mod.f90 \ … … 1607 1606 netcdf_data_input_mod.o \ 1608 1607 plant_canopy_model_mod.o \ 1609 salsa_util_mod.o \1610 1608 surface_mod.o \ 1611 1609 netcdf_data_input_mod.o 1612 salsa_util_mod.o: \1613 mod_kinds.o \1614 modules.o1615 1610 set_slicer_attributes_dvrp.o: \ 1616 1611 mod_kinds.o \ -
palm/trunk/SOURCE/netcdf_data_input_mod.f90
r3995 r4012 968 968 netcdf_data_input_surface_data, netcdf_data_input_topo, & 969 969 netcdf_data_input_var, get_attribute, get_variable, open_read_file, & 970 check_existence, inquire_num_variables, inquire_variable_names 970 check_existence, inquire_num_variables, inquire_variable_names, & 971 close_input_file 971 972 972 973 -
palm/trunk/SOURCE/salsa_mod.f90
r3956 r4012 26 26 ! ----------------- 27 27 ! $Id$ 28 ! Merge salsa branch to trunk. List of changes: 29 ! - Error corrected in distr_update that resulted in the aerosol number size 30 ! distribution not converging if the concentration was nclim. 31 ! - Added a separate output for aerosol liquid water (s_H2O) 32 ! - aerosol processes for a size bin are now calculated only if the aerosol 33 ! number of concentration of that bin is > 2*nclim 34 ! - An initialisation error in the subroutine "deposition" corrected and the 35 ! subroutine reformatted. 36 ! - stuff from salsa_util_mod.f90 moved into salsa_mod.f90 37 ! - calls for closing the netcdf input files added 38 ! 39 ! 3956 2019-05-07 12:32:52Z monakurppa 28 40 ! - Conceptual bug in depo_surf correct for urban and land surface model 29 41 ! - Subroutine salsa_tendency_ij optimized. … … 147 159 !> @todo emission mode "parameterized", i.e. based on street type 148 160 !> @todo Allow insoluble emissions 149 !> @todo two-way nesting is not working properly161 !> @todo Apply flux limiter in prognostic equations 150 162 !------------------------------------------------------------------------------! 151 163 MODULE salsa_mod 152 164 153 USE basic_constants_and_equations_mod, &165 USE basic_constants_and_equations_mod, & 154 166 ONLY: c_p, g, p_0, pi, r_d 155 167 156 USE chem_gasphase_mod, &168 USE chem_gasphase_mod, & 157 169 ONLY: nspec, nvar, spc_names 158 170 159 USE chem_modules, &171 USE chem_modules, & 160 172 ONLY: call_chem_at_all_substeps, chem_gasphase_on, chem_species 161 173 162 174 USE control_parameters 163 175 164 USE indices, & 165 ONLY: nbgp, nx, nxl, nxlg, nxr, nxrg, ny, nyn, nyng, nys, nysg, nzb, & 166 nzb_s_inner, nz, nzt, wall_flags_0 176 USE indices, & 177 ONLY: nbgp, nx, nxl, nxlg, nxr, nxrg, ny, nyn, nyng, nys, nysg, nzb, nz, nzt, wall_flags_0 167 178 168 179 USE kinds 169 180 181 USE netcdf_data_input_mod, & 182 ONLY: chem_emis_att_type, chem_emis_val_type 183 170 184 USE pegrid 171 185 172 USE salsa_util_mod 173 174 USE statistics, & 186 USE statistics, & 175 187 ONLY: sums_salsa_ws_l 176 188 … … 452 464 (/0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0/) 453 465 REAL(wp), DIMENSION(nmod) :: surface_aerosol_flux = & 454 (/1.04e+11_wp, 3.23E+10_wp, 5.4E+6_wp, 0.0_wp, 0.0_wp, 0.0_wp, 0.0_wp/)466 (/1.0E+8_wp, 1.0E+9_wp, 1.0E+5_wp, 0.0_wp, 0.0_wp, 0.0_wp, 0.0_wp/) 455 467 456 468 REAL(wp), DIMENSION(:), ALLOCATABLE :: bin_low_limits !< to deliver information about … … 464 476 ! 465 477 !-- SALSA derived datatypes: 478 ! 479 !-- Component index 480 TYPE component_index 481 CHARACTER(len=3), ALLOCATABLE :: comp(:) !< Component name 482 INTEGER(iwp) :: ncomp !< Number of components 483 INTEGER(iwp), ALLOCATABLE :: ind(:) !< Component index 484 END TYPE component_index 466 485 ! 467 486 !-- For matching LSM and USM surface types and the deposition module surface types … … 607 626 TYPE(salsa_emission_value_type) :: aero_emission !< emission values 608 627 TYPE(salsa_emission_mode_type) :: def_modes !< default emission modes 628 629 TYPE(chem_emis_att_type) :: chem_emission_att !< chemistry emission attributes 630 TYPE(chem_emis_val_type) :: chem_emission !< chemistry emission values 609 631 610 632 TYPE(t_section), DIMENSION(:), ALLOCATABLE :: aero !< local aerosol properties … … 979 1001 SUBROUTINE salsa_header( io ) 980 1002 1003 USE indices, & 1004 ONLY: nx, ny, nz 1005 981 1006 IMPLICIT NONE 982 1007 … … 987 1012 WRITE( io, 2 ) skip_time_do_salsa 988 1013 WRITE( io, 3 ) dt_salsa 989 WRITE( io, 4 ) SHAPE( aerosol_number(1)%conc ), nbins_aerosol1014 WRITE( io, 4 ) nz, ny, nx, nbins_aerosol 990 1015 IF ( advect_particle_water ) THEN 991 WRITE( io, 5 ) SHAPE( aerosol_mass(1)%conc ), ncomponents_mass*nbins_aerosol, &1016 WRITE( io, 5 ) SHAPE( aerosol_mass(1)%conc ), ncomponents_mass*nbins_aerosol, & 992 1017 advect_particle_water 993 1018 ELSE … … 1154 1179 aerosol_number(i)%init(nzb:nzt+1), & 1155 1180 aerosol_number(i)%sums_ws_l(nzb:nzt+1,0:threads_per_task-1) ) 1181 aerosol_number(i)%init = nclim 1156 1182 IF ( include_emission .OR. ( nldepo .AND. nldepo_surf ) ) THEN 1157 1183 ALLOCATE( aerosol_number(i)%source(nys:nyn,nxl:nxr) ) … … 1179 1205 aerosol_mass(i)%init(nzb:nzt+1), & 1180 1206 aerosol_mass(i)%sums_ws_l(nzb:nzt+1,0:threads_per_task-1) ) 1207 aerosol_mass(i)%init = mclim 1181 1208 IF ( include_emission .OR. ( nldepo .AND. nldepo_surf ) ) THEN 1182 1209 ALLOCATE( aerosol_mass(i)%source(nys:nyn,nxl:nxr) ) … … 1283 1310 salsa_gas(i)%init(nzb:nzt+1), & 1284 1311 salsa_gas(i)%sums_ws_l(nzb:nzt+1,0:threads_per_task-1) ) 1312 salsa_gas(i)%init = nclim 1285 1313 IF ( include_emission ) ALLOCATE( salsa_gas(i)%source(nys:nys,nxl:nxr) ) 1286 1314 ENDDO … … 1402 1430 IF ( nldepo ) sedim_vd = 0.0_wp 1403 1431 1404 DO ib = 1, nbins_aerosol1405 IF ( .NOT. read_restart_data_salsa ) aerosol_number(ib)%conc = nclim1406 aerosol_number(ib)%conc_p = 0.0_wp1407 aerosol_number(ib)%tconc_m = 0.0_wp1408 aerosol_number(ib)%flux_s = 0.0_wp1409 aerosol_number(ib)%diss_s = 0.0_wp1410 aerosol_number(ib)%flux_l = 0.0_wp1411 aerosol_number(ib)%diss_l = 0.0_wp1412 aerosol_number(ib)%init = nclim1413 aerosol_number(ib)%sums_ws_l = 0.0_wp1414 ENDDO1415 DO ic = 1, ncomponents_mass*nbins_aerosol1416 IF ( .NOT. read_restart_data_salsa ) aerosol_mass(ic)%conc = mclim1417 aerosol_mass(ic)%conc_p = 0.0_wp1418 aerosol_mass(ic)%tconc_m = 0.0_wp1419 aerosol_mass(ic)%flux_s = 0.0_wp1420 aerosol_mass(ic)%diss_s = 0.0_wp1421 aerosol_mass(ic)%flux_l = 0.0_wp1422 aerosol_mass(ic)%diss_l = 0.0_wp1423 aerosol_mass(ic)%init = mclim1424 aerosol_mass(ic)%sums_ws_l = 0.0_wp1425 ENDDO1426 1427 1432 IF ( .NOT. salsa_gases_from_chem ) THEN 1433 IF ( .NOT. read_restart_data_salsa ) THEN 1434 salsa_gas(1)%conc = h2so4_init 1435 salsa_gas(2)%conc = hno3_init 1436 salsa_gas(3)%conc = nh3_init 1437 salsa_gas(4)%conc = ocnv_init 1438 salsa_gas(5)%conc = ocsv_init 1439 ENDIF 1428 1440 DO ig = 1, ngases_salsa 1429 1441 salsa_gas(ig)%conc_p = 0.0_wp … … 1434 1446 salsa_gas(ig)%diss_l = 0.0_wp 1435 1447 salsa_gas(ig)%sums_ws_l = 0.0_wp 1448 salsa_gas(ig)%conc_p = salsa_gas(ig)%conc 1436 1449 ENDDO 1437 IF ( .NOT. read_restart_data_salsa ) THEN 1438 salsa_gas(1)%conc = h2so4_init 1439 salsa_gas(2)%conc = hno3_init 1440 salsa_gas(3)%conc = nh3_init 1441 salsa_gas(4)%conc = ocnv_init 1442 salsa_gas(5)%conc = ocsv_init 1443 ENDIF 1444 ! 1445 !-- Set initial value for gas compound tracers and initial values 1450 ! 1451 !-- Set initial value for gas compound tracer 1446 1452 salsa_gas(1)%init = h2so4_init 1447 1453 salsa_gas(2)%init = hno3_init … … 1466 1472 !-- Initialise location-dependent aerosol size distributions and chemical compositions: 1467 1473 CALL aerosol_init 1468 ! 1474 1469 1475 !-- Initalisation run of SALSA + calculate the vertical top index of the topography 1470 1476 DO i = nxl, nxr … … 1477 1483 ENDDO 1478 1484 ENDDO 1485 1486 DO ib = 1, nbins_aerosol 1487 aerosol_number(ib)%conc_p = aerosol_number(ib)%conc 1488 aerosol_number(ib)%tconc_m = 0.0_wp 1489 aerosol_number(ib)%flux_s = 0.0_wp 1490 aerosol_number(ib)%diss_s = 0.0_wp 1491 aerosol_number(ib)%flux_l = 0.0_wp 1492 aerosol_number(ib)%diss_l = 0.0_wp 1493 aerosol_number(ib)%sums_ws_l = 0.0_wp 1494 ENDDO 1495 DO ic = 1, ncomponents_mass*nbins_aerosol 1496 aerosol_mass(ic)%conc_p = aerosol_mass(ic)%conc 1497 aerosol_mass(ic)%tconc_m = 0.0_wp 1498 aerosol_mass(ic)%flux_s = 0.0_wp 1499 aerosol_mass(ic)%diss_s = 0.0_wp 1500 aerosol_mass(ic)%flux_l = 0.0_wp 1501 aerosol_mass(ic)%diss_l = 0.0_wp 1502 aerosol_mass(ic)%sums_ws_l = 0.0_wp 1503 ENDDO 1504 ! 1479 1505 ! 1480 1506 !-- Initialise the deposition scheme and surface types … … 1587 1613 1588 1614 USE netcdf_data_input_mod, & 1589 ONLY: get_attribute, get_variable, netcdf_data_input_get_dimension_length, open_read_file 1615 ONLY: close_input_file, get_attribute, get_variable, & 1616 netcdf_data_input_get_dimension_length, open_read_file 1590 1617 1591 1618 IMPLICIT NONE … … 1615 1642 1616 1643 REAL(wp), DIMENSION(nbins_aerosol) :: core !< size of the bin mid aerosol particle 1617 REAL(wp), DIMENSION(nbins_aerosol) :: nsect !< size distribution (#/m3)1618 1644 1619 1645 REAL(wp), DIMENSION(0:nz+1) :: pnf2a !< number fraction in 2a … … 1638 1664 ! 1639 1665 !-- Set concentrations to zero 1640 nsect(:) = 0.0_wp1641 1666 pndist(:,:) = 0.0_wp 1642 1667 pnf2a(:) = nf2a … … 1667 1692 ! 1668 1693 !-- Allocate memory 1669 ALLOCATE( pr_z(1:pr_nz), pr_mass_fracs_a(nzb:nzt+1,pr_ncc), &1694 ALLOCATE( pr_z(1:pr_nz), pr_mass_fracs_a(nzb:nzt+1,pr_ncc), & 1670 1695 pr_mass_fracs_b(nzb:nzt+1,pr_ncc) ) 1671 1696 pr_mass_fracs_a = 0.0_wp … … 1806 1831 ' for SALSA missing!' 1807 1832 CALL message( 'salsa_mod: aerosol_init', 'PA0607', 1, 2, 0, 6, 0 ) 1808 1833 ! 1834 !-- Close input file 1835 CALL close_input_file( id_dyn ) 1809 1836 ENDIF ! netcdf_extend 1810 1837 … … 1892 1919 salsa_gas(ig)%init(nzb) = salsa_gas(ig)%init(nzb+1) 1893 1920 salsa_gas(ig)%init(nzt+1) = salsa_gas(ig)%init(nzt) 1894 DO k = nzb, nzt+1 1895 salsa_gas(ig)%conc(k,:,:) = salsa_gas(ig)%init(k) 1896 ENDDO 1921 IF ( .NOT. read_restart_data_salsa ) THEN 1922 DO k = nzb, nzt+1 1923 salsa_gas(ig)%conc(k,:,:) = salsa_gas(ig)%init(k) 1924 ENDDO 1925 ENDIF 1897 1926 ENDDO 1898 1927 … … 1901 1930 ' for SALSA missing!' 1902 1931 CALL message( 'salsa_mod: aerosol_init', 'PA0610', 1, 2, 0, 6, 0 ) 1932 ! 1933 !-- Close input file 1934 CALL close_input_file( id_dyn ) 1903 1935 ENDIF ! netcdf_extend 1904 1936 #else … … 1940 1972 !-- Region 1: 1941 1973 DO ib = start_subrange_1a, end_subrange_1a 1942 aerosol_number(ib)%conc(k,j,i) = pndist(k,ib) * flag 1974 IF ( .NOT. read_restart_data_salsa ) THEN 1975 aerosol_number(ib)%conc(k,j,i) = pndist(k,ib) * flag 1976 ENDIF 1943 1977 IF ( prunmode == 1 ) THEN 1944 1978 aerosol_number(ib)%init = pndist(:,ib) … … 1949 1983 IF ( nreg > 1 ) THEN 1950 1984 DO ib = start_subrange_2a, end_subrange_2a 1951 aerosol_number(ib)%conc(k,j,i) = MAX( 0.0_wp, pnf2a(k) ) * pndist(k,ib) * flag 1985 IF ( .NOT. read_restart_data_salsa ) THEN 1986 aerosol_number(ib)%conc(k,j,i) = MAX( 0.0_wp, pnf2a(k) ) * pndist(k,ib) * flag 1987 ENDIF 1952 1988 IF ( prunmode == 1 ) THEN 1953 1989 aerosol_number(ib)%init = MAX( 0.0_wp, nf2a ) * pndist(:,ib) … … 1957 1993 DO ib = start_subrange_2b, end_subrange_2b 1958 1994 IF ( pnf2a(k) < 1.0_wp ) THEN 1959 aerosol_number(ib)%conc(k,j,i) = MAX( 0.0_wp, 1.0_wp - pnf2a(k) ) * & 1960 pndist(k,ib) * flag 1995 IF ( .NOT. read_restart_data_salsa ) THEN 1996 aerosol_number(ib)%conc(k,j,i) = MAX( 0.0_wp, 1.0_wp - pnf2a(k) ) * & 1997 pndist(k,ib) * flag 1998 ENDIF 1961 1999 IF ( prunmode == 1 ) THEN 1962 2000 aerosol_number(ib)%init = MAX( 0.0_wp, 1.0_wp - nf2a ) * pndist(:,ib) … … 1976 2014 ib = start_subrange_1a 1977 2015 DO ic = ss, ee 1978 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, 1.0_wp - pmfoc1a(k) ) * pndist(k,ib)& 1979 * core(ib) * arhoh2so4 * flag 2016 IF ( .NOT. read_restart_data_salsa ) THEN 2017 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, 1.0_wp - pmfoc1a(k) ) * & 2018 pndist(k,ib) * core(ib) * arhoh2so4 * flag 2019 ENDIF 1980 2020 IF ( prunmode == 1 ) THEN 1981 2021 aerosol_mass(ic)%init(k) = MAX( 0.0_wp, 1.0_wp - pmfoc1a(k) ) * pndist(k,ib) & … … 1991 2031 ee = ( index_oc - 1 ) * nbins_aerosol + end_subrange_1a !< end 1992 2032 ib = start_subrange_1a 1993 DO ic = ss, ee 1994 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmfoc1a(k) ) * pndist(k,ib) * & 1995 core(ib) * arhooc * flag 2033 DO ic = ss, ee 2034 IF ( .NOT. read_restart_data_salsa ) THEN 2035 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmfoc1a(k) ) * pndist(k,ib) * & 2036 core(ib) * arhooc * flag 2037 ENDIF 1996 2038 IF ( prunmode == 1 ) THEN 1997 2039 aerosol_mass(ic)%init(k) = MAX( 0.0_wp, pmfoc1a(k) ) * pndist(k,ib) * & … … 2143 2185 ib = start_subrange_2a 2144 2186 DO ic = ss, ee 2145 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmf2a(k) ) * pnf2a(k) * pndist(k,ib) * & 2146 pcore(ib) * prho * flag 2187 IF ( .NOT. read_restart_data_salsa ) THEN 2188 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmf2a(k) ) * pnf2a(k) * pndist(k,ib)& 2189 * pcore(ib) * prho * flag 2190 ENDIF 2147 2191 IF ( prunmode == 1 ) THEN 2148 2192 aerosol_mass(ic)%init(k) = MAX( 0.0_wp, pmf2a(k) ) * pnf2a(k) * pndist(k,ib) * & … … 2158 2202 ib = start_subrange_2a 2159 2203 DO ic = ss, ee 2160 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmf2b(k) ) * ( 1.0_wp - pnf2a(k) ) *& 2161 pndist(k,ib) * pcore(ib) * prho * flag 2204 IF ( .NOT. read_restart_data_salsa ) THEN 2205 aerosol_mass(ic)%conc(k,j,i) = MAX( 0.0_wp, pmf2b(k) ) * ( 1.0_wp - pnf2a(k))& 2206 * pndist(k,ib) * pcore(ib) * prho * flag 2207 ENDIF 2162 2208 IF ( prunmode == 1 ) THEN 2163 2209 aerosol_mass(ic)%init(k) = MAX( 0.0_wp, pmf2b(k) ) * ( 1.0_wp - pnf2a(k) ) * & … … 2810 2856 ENDDO 2811 2857 ! 2812 !-- On EACH call of salsa_driver, calculate the ambient sizes of 2813 !-- particles by equilibrating soluble fraction of particles with water 2814 !-- using the ZSR method. 2858 !-- Calculate the ambient sizes of particles by equilibrating soluble fraction of particles with 2859 !-- water using the ZSR method. 2815 2860 in_rh = in_cw(k) / in_cs(k) 2816 2861 IF ( prunmode==1 .OR. .NOT. advect_particle_water ) THEN … … 2865 2910 !-- Calculate changes in concentrations 2866 2911 DO ib = 1, nbins_aerosol 2867 aerosol_number(ib)%conc(k,j,i) = aerosol_number(ib)%conc(k,j,i) + ( lo_aero(ib)%numc - 2912 aerosol_number(ib)%conc(k,j,i) = aerosol_number(ib)%conc(k,j,i) + ( lo_aero(ib)%numc - & 2868 2913 aero_old(ib)%numc ) * flag 2869 2914 ENDDO … … 2875 2920 ic = 1 2876 2921 DO ss = str, endi 2877 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2922 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2878 2923 aero_old(ic)%volc(vc) ) * arhoh2so4 * flag 2879 2924 ic = ic+1 … … 2887 2932 ic = 1 2888 2933 DO ss = str, endi 2889 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2934 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2890 2935 aero_old(ic)%volc(vc) ) * arhooc * flag 2891 2936 ic = ic+1 … … 2899 2944 ic = 1 + end_subrange_1a 2900 2945 DO ss = str, endi 2901 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2946 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2902 2947 aero_old(ic)%volc(vc) ) * arhobc * flag 2903 2948 ic = ic+1 … … 2911 2956 ic = 1 + end_subrange_1a 2912 2957 DO ss = str, endi 2913 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2958 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2914 2959 aero_old(ic)%volc(vc) ) * arhodu * flag 2915 2960 ic = ic+1 … … 2923 2968 ic = 1 + end_subrange_1a 2924 2969 DO ss = str, endi 2925 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2970 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2926 2971 aero_old(ic)%volc(vc) ) * arhoss * flag 2927 2972 ic = ic+1 … … 2935 2980 ic = 1 2936 2981 DO ss = str, endi 2937 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2982 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2938 2983 aero_old(ic)%volc(vc) ) * arhohno3 * flag 2939 2984 ic = ic+1 … … 2947 2992 ic = 1 2948 2993 DO ss = str, endi 2949 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 2994 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2950 2995 aero_old(ic)%volc(vc) ) * arhonh3 * flag 2951 2996 ic = ic+1 … … 2960 3005 ic = 1 2961 3006 DO ss = str, endi 2962 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) - 3007 aerosol_mass(ss)%conc(k,j,i) = aerosol_mass(ss)%conc(k,j,i) + ( lo_aero(ic)%volc(vc) -& 2963 3008 aero_old(ic)%volc(vc) ) * arhoh2o * flag 2964 IF ( prunmode == 1 ) THEN 2965 aerosol_mass(ss)%init(k) = MAX( aerosol_mass(ss)%init(k), & 2966 aerosol_mass(ss)%conc(k,j,i) ) 2967 IF ( k == nzb+1 ) THEN 2968 aerosol_mass(ss)%init(k-1) = 0.0_wp 2969 ELSEIF ( k == nzt ) THEN 2970 aerosol_mass(ss)%init(k+1) = aerosol_mass(ss)%init(k) 2971 ENDIF 3009 ic = ic+1 3010 ENDDO 3011 ENDIF 3012 IF ( prunmode == 1 ) THEN 3013 nc_h2o = get_index( prtcl,'H2O' ) 3014 vc = 8 3015 str = ( nc_h2o-1 ) * nbins_aerosol + 1 3016 endi = nc_h2o * nbins_aerosol 3017 ic = 1 3018 DO ss = str, endi 3019 aerosol_mass(ss)%init(k) = MAX( aerosol_mass(ss)%init(k), ( lo_aero(ic)%volc(vc) - & 3020 aero_old(ic)%volc(vc) ) * arhoh2o ) 3021 IF ( k == nzb+1 ) THEN 3022 aerosol_mass(ss)%init(k-1) = aerosol_mass(ss)%init(k) 3023 ELSEIF ( k == nzt ) THEN 3024 aerosol_mass(ss)%init(k+1) = aerosol_mass(ss)%init(k) 3025 aerosol_mass(ss)%conc(k+1,j,i) = aerosol_mass(ss)%init(k) 2972 3026 ENDIF 2973 3027 ic = ic+1 … … 3446 3500 REAL(wp) :: avis !< molecular viscocity of air (kg/(m*s)) 3447 3501 REAL(wp) :: beta_im !< parameter for turbulent impaction 3448 REAL(wp) :: beta !< Cunningham slip-flow correction factor3449 3502 REAL(wp) :: c_brownian_diff !< coefficient for Brownian diffusion 3450 3503 REAL(wp) :: c_impaction !< coefficient for inertial impaction … … 3453 3506 REAL(wp) :: depo !< deposition velocity (m/s) 3454 3507 REAL(wp) :: gamma !< parameter, Table 3 in Z01 3455 REAL(wp) :: Kn !< Knudsen number3456 3508 REAL(wp) :: lambda !< molecular mean free path (m) 3457 3509 REAL(wp) :: mdiff !< particle diffusivity coefficient … … 3461 3513 REAL(wp) :: pdn !< particle density (kg/m3) 3462 3514 REAL(wp) :: ustar !< friction velocity (m/s) 3463 REAL(wp) :: va !< thermal speed of an air molecule (m/s) 3464 REAL(wp) :: zdwet !< wet diameter (m) 3515 REAL(wp) :: va !< thermal speed of an air molecule (m/s) 3465 3516 3466 3517 REAL(wp), INTENT(in) :: adn !< air density (kg/m3) … … 3471 3522 REAL(wp), INTENT(inout) :: kvis !< kinematic viscosity of air (m2/s) 3472 3523 3524 REAL(wp), DIMENSION(nbins_aerosol) :: beta !< Cunningham slip-flow correction factor 3525 REAL(wp), DIMENSION(nbins_aerosol) :: Kn !< Knudsen number 3526 REAL(wp), DIMENSION(nbins_aerosol) :: zdwet !< wet diameter (m) 3527 3473 3528 REAL(wp), DIMENSION(:), INTENT(inout) :: schmidt_num !< particle Schmidt number 3474 3529 REAL(wp), DIMENSION(:), INTENT(inout) :: vc !< critical fall speed i.e. settling velocity of … … 3494 3549 lambda = 2.0_wp * avis / ( adn * va ) 3495 3550 ! 3496 !-- Parameters for the land use category 'deciduous broadleaf trees'(Table 3) 3497 alpha = alpha_z01(depo_pcm_type_num) 3498 gamma = gamma_z01(depo_pcm_type_num) 3499 par_a = A_z01(depo_pcm_type_num, season) * 1.0E-3_wp 3500 ! 3501 !-- Deposition efficiencies from Table 1. Constants from Table 2. 3502 par_l = l_p10(depo_pcm_type_num) * 0.01_wp 3503 c_brownian_diff = c_b_p10(depo_pcm_type_num) 3504 c_interception = c_in_p10(depo_pcm_type_num) 3505 c_impaction = c_im_p10(depo_pcm_type_num) 3506 beta_im = beta_im_p10(depo_pcm_type_num) 3507 c_turb_impaction = c_it_p10(depo_pcm_type_num) 3508 3509 DO ib = 1, nbins_aerosol 3510 3511 IF ( paero(ib)%numc < nclim ) CYCLE 3512 zdwet = paero(ib)%dwet 3513 ! 3514 !-- Knudsen number (Eq. 15.23) 3515 Kn = MAX( 1.0E-2_wp, lambda / ( zdwet * 0.5_wp ) ) ! To avoid underflow 3516 ! 3517 !-- Cunningham slip-flow correction (Eq. 15.30) 3518 beta = 1.0_wp + Kn * ( 1.249_wp + 0.42_wp * EXP( -0.87_wp / Kn ) ) 3519 3520 !-- Particle diffusivity coefficient (Eq. 15.29) 3521 mdiff = ( abo * tk * beta ) / ( 3.0_wp * pi * avis * zdwet ) 3522 ! 3523 !-- Particle Schmidt number (Eq. 15.36) 3524 schmidt_num(ib) = kvis / mdiff 3525 ! 3526 !-- Critical fall speed i.e. settling velocity (Eq. 20.4) 3527 vc(ib) = MIN( 1.0_wp, terminal_vel( 0.5_wp * zdwet, pdn, adn, avis, beta) ) 3528 ! 3529 !-- Friction velocity for deposition on vegetation. Calculated following Prandtl (1925): 3530 IF ( lsdepo_pcm .AND. plant_canopy .AND. lad > 0.0_wp ) THEN 3551 !-- Particle wet diameter (m) 3552 zdwet = paero(:)%dwet 3553 ! 3554 !-- Knudsen number (Eq. 15.23) 3555 Kn = MAX( 1.0E-2_wp, lambda / ( zdwet * 0.5_wp ) ) ! To avoid underflow 3556 ! 3557 !-- Cunningham slip-flow correction (Eq. 15.30) 3558 beta = 1.0_wp + Kn * ( 1.249_wp + 0.42_wp * EXP( -0.87_wp / Kn ) ) 3559 ! 3560 !-- Critical fall speed i.e. settling velocity (Eq. 20.4) 3561 vc = MIN( 1.0_wp, zdwet**2 * ( pdn - adn ) * g * beta / ( 18.0_wp * avis ) ) 3562 ! 3563 !-- Deposition on vegetation 3564 IF ( lsdepo_pcm .AND. plant_canopy .AND. lad > 0.0_wp ) THEN 3565 ! 3566 !-- Parameters for the land use category 'deciduous broadleaf trees'(Table 3) 3567 alpha = alpha_z01(depo_pcm_type_num) 3568 gamma = gamma_z01(depo_pcm_type_num) 3569 par_a = A_z01(depo_pcm_type_num, season) * 1.0E-3_wp 3570 ! 3571 !-- Deposition efficiencies from Table 1. Constants from Table 2. 3572 par_l = l_p10(depo_pcm_type_num) * 0.01_wp 3573 c_brownian_diff = c_b_p10(depo_pcm_type_num) 3574 c_interception = c_in_p10(depo_pcm_type_num) 3575 c_impaction = c_im_p10(depo_pcm_type_num) 3576 beta_im = beta_im_p10(depo_pcm_type_num) 3577 c_turb_impaction = c_it_p10(depo_pcm_type_num) 3578 3579 DO ib = 1, nbins_aerosol 3580 3581 IF ( paero(ib)%numc < ( 2.0_wp * nclim ) ) CYCLE 3582 3583 !-- Particle diffusivity coefficient (Eq. 15.29) 3584 mdiff = ( abo * tk * beta(ib) ) / ( 3.0_wp * pi * avis * zdwet(ib) ) 3585 ! 3586 !-- Particle Schmidt number (Eq. 15.36) 3587 schmidt_num(ib) = kvis / mdiff 3588 ! 3589 !-- Friction velocity for deposition on vegetation. Calculated following Prandtl (1925): 3531 3590 ustar = SQRT( cdc ) * mag_u 3532 3591 SELECT CASE ( depo_pcm_par_num ) … … 3546 3605 paero(ib)%volc(ic) = paero(ib)%volc(ic) - depo * lad * paero(ib)%volc(ic) * dt_salsa 3547 3606 ENDDO 3548 ENDIF 3549 ENDDO 3607 ENDDO 3608 3609 ENDIF 3550 3610 3551 3611 END SUBROUTINE deposition … … 3779 3839 3780 3840 DO ib = 1, nbins_aerosol 3781 IF ( aerosol_number(ib)%conc(k,j,i) < = nclim .OR. schmidt_num(k+1,ib) < 1.0_wp )&3782 CYCLE3841 IF ( aerosol_number(ib)%conc(k,j,i) < ( 2.0_wp * nclim ) .OR. & 3842 schmidt_num(k+1,ib) < 1.0_wp ) CYCLE 3783 3843 3784 3844 SELECT CASE ( depo_surf_par_num ) … … 3810 3870 3811 3871 DO ib = 1, nbins_aerosol 3812 IF ( aerosol_number(ib)%conc(k,j,i) < = nclim .OR. schmidt_num(k+1,ib) < 1.0_wp )&3813 CYCLE3872 IF ( aerosol_number(ib)%conc(k,j,i) < ( 2.0_wp * nclim ) .OR. & 3873 schmidt_num(k+1,ib) < 1.0_wp ) CYCLE 3814 3874 3815 3875 SELECT CASE ( depo_surf_par_num ) … … 3841 3901 3842 3902 DO ib = 1, nbins_aerosol 3843 IF ( aerosol_number(ib)%conc(k,j,i) < = nclim .OR. schmidt_num(k+1,ib) < 1.0_wp )&3844 CYCLE3903 IF ( aerosol_number(ib)%conc(k,j,i) < ( 2.0_wp * nclim ) .OR. & 3904 schmidt_num(k+1,ib) < 1.0_wp ) CYCLE 3845 3905 3846 3906 SELECT CASE ( depo_surf_par_num ) … … 3860 3920 3861 3921 DO ib = 1, nbins_aerosol 3922 IF ( aerosol_number(ib)%conc(k,j,i) < ( 2.0_wp * nclim ) ) CYCLE 3862 3923 ! 3863 3924 !-- Calculate changes in surface fluxes due to dry deposition … … 3891 3952 3892 3953 DO ib = 1, nbins_aerosol 3893 IF ( aerosol_number(ib)%conc(k,j,i) < = nclim .OR. schmidt_num(k+1,ib) < 1.0_wp )&3894 CYCLE3954 IF ( aerosol_number(ib)%conc(k,j,i) < ( 2.0_wp * nclim ) .OR. & 3955 schmidt_num(k+1,ib) < 1.0_wp ) CYCLE 3895 3956 3896 3957 SELECT CASE ( depo_surf_par_num ) … … 3932 3993 ! Description: 3933 3994 ! ------------ 3934 ! Function for calculating terminal velocities for different particles sizes.3935 !------------------------------------------------------------------------------!3936 REAL(wp) FUNCTION terminal_vel( radius, rhop, rhoa, visc, beta )3937 3938 IMPLICIT NONE3939 3940 REAL(wp), INTENT(in) :: beta !< Cunningham correction factor3941 REAL(wp), INTENT(in) :: radius !< particle radius (m)3942 REAL(wp), INTENT(in) :: rhop !< particle density (kg/m3)3943 REAL(wp), INTENT(in) :: rhoa !< air density (kg/m3)3944 REAL(wp), INTENT(in) :: visc !< molecular viscosity of air (kg/(m*s))3945 3946 !3947 !-- Stokes law with Cunningham slip correction factor3948 terminal_vel = 4.0_wp * radius**2 * ( rhop - rhoa ) * g * beta / ( 18.0_wp * visc ) ! (m/s)3949 3950 END FUNCTION terminal_vel3951 3952 !------------------------------------------------------------------------------!3953 ! Description:3954 ! ------------3955 3995 !> Calculates particle loss and change in size distribution due to (Brownian) 3956 3996 !> coagulation. Only for particles with dwet < 30 micrometres. … … 4034 4074 !-- Aero-aero coagulation 4035 4075 DO mm = 1, end_subrange_2b ! smaller colliding particle 4036 IF ( paero(mm)%numc < nclim) CYCLE4076 IF ( paero(mm)%numc < ( 2.0_wp * nclim ) ) CYCLE 4037 4077 DO nn = mm, end_subrange_2b ! larger colliding particle 4038 IF ( paero(nn)%numc < nclim) CYCLE4078 IF ( paero(nn)%numc < ( 2.0_wp * nclim ) ) CYCLE 4039 4079 4040 4080 zdpart_mm = MIN( paero(mm)%dwet, 30.0E-6_wp ) ! Limit to 30 um … … 4053 4093 !-- Aerosols in subrange 1a: 4054 4094 DO ib = start_subrange_1a, end_subrange_1a 4055 IF ( paero(ib)%numc < nclim) CYCLE4095 IF ( paero(ib)%numc < ( 2.0_wp * nclim ) ) CYCLE 4056 4096 zminusterm = 0.0_wp 4057 4097 zplusterm(:) = 0.0_wp … … 4080 4120 !-- Aerosols in subrange 2a: 4081 4121 DO ib = start_subrange_2a, end_subrange_2a 4082 IF ( paero(ib)%numc < nclim) CYCLE4122 IF ( paero(ib)%numc < ( 2.0_wp * nclim ) ) CYCLE 4083 4123 zminusterm = 0.0_wp 4084 4124 zplusterm(:) = 0.0_wp … … 4128 4168 IF ( .NOT. no_insoluble ) THEN 4129 4169 DO ib = start_subrange_2b, end_subrange_2b 4130 IF ( paero(ib)%numc < nclim) CYCLE4170 IF ( paero(ib)%numc < ( 2.0_wp * nclim ) ) CYCLE 4131 4171 zminusterm = 0.0_wp 4132 4172 zplusterm(:) = 0.0_wp … … 4337 4377 REAL(wp), INTENT(inout) :: pcw !< Water vapor concentration (kg/m3) 4338 4378 4339 REAL(wp), DIMENSION(nbins_aerosol) 4340 REAL(wp), DIMENSION(nbins_aerosol) 4341 REAL(wp), DIMENSION(nbins_aerosol) :: zcolrate_ocnv !< collision rate of non-vol. OC(1/s)4342 REAL(wp), DIMENSION(start_subrange_1a+1) :: zdfpart !< particle diffusion coef ficient(m2/s)4343 REAL(wp), DIMENSION(nbins_aerosol) 4344 REAL(wp), DIMENSION(nbins_aerosol) 4379 REAL(wp), DIMENSION(nbins_aerosol) :: zbeta !< transitional correction factor 4380 REAL(wp), DIMENSION(nbins_aerosol) :: zcolrate !< collision rate (1/s) 4381 REAL(wp), DIMENSION(nbins_aerosol) :: zcolrate_ocnv !< collision rate of OCNV (1/s) 4382 REAL(wp), DIMENSION(start_subrange_1a+1) :: zdfpart !< particle diffusion coef. (m2/s) 4383 REAL(wp), DIMENSION(nbins_aerosol) :: zdvoloc !< change of organics volume 4384 REAL(wp), DIMENSION(nbins_aerosol) :: zdvolsa !< change of sulphate volume 4345 4385 REAL(wp), DIMENSION(2) :: zj3n3 !< Formation massrate of molecules 4346 4386 !< in nucleation, (molec/m3s), 4347 4387 !< 1: H2SO4 and 2: organic vapor 4348 REAL(wp), DIMENSION(nbins_aerosol) :: zknud !< particle Knudsen number4388 REAL(wp), DIMENSION(nbins_aerosol) :: zknud !< particle Knudsen number 4349 4389 4350 4390 TYPE(component_index), INTENT(in) :: prtcl !< Keeps track which substances are used … … 7095 7135 REAL(wp) :: znfrac !< number fraction to be moved to the larger bin 7096 7136 REAL(wp) :: zvfrac !< volume fraction to be moved to the larger bin 7097 REAL(wp) :: z Vexc !< Volume in the grown bin which exceeds the bin upper limit7098 REAL(wp) :: z Vihi !< particle volume at the high end of the bin7099 REAL(wp) :: z Vilo !< particle volume at the low end of the bin7137 REAL(wp) :: zvexc !< Volume in the grown bin which exceeds the bin upper limit 7138 REAL(wp) :: zvihi !< particle volume at the high end of the bin 7139 REAL(wp) :: zvilo !< particle volume at the low end of the bin 7100 7140 REAL(wp) :: zvpart !< particle volume (m3) 7101 REAL(wp) :: zVrat !< volume ratio of a size bin 7141 REAL(wp) :: zvrat !< volume ratio of a size bin 7142 7143 real(wp), dimension(nbins_aerosol) :: dummy 7102 7144 7103 7145 TYPE(t_section), DIMENSION(nbins_aerosol), INTENT(inout) :: paero !< aerosol properties … … 7106 7148 zvfrac = 0.0_wp 7107 7149 within_bins = .FALSE. 7150 7151 dummy = paero(:)%numc 7108 7152 ! 7109 7153 !-- Check if the volume of the bin is within bin limits after update … … 7150 7194 ! 7151 7195 !-- Volume ratio of the size bin 7152 z Vrat = paero(ib)%vhilim / paero(ib)%vlolim7196 zvrat = paero(ib)%vhilim / paero(ib)%vlolim 7153 7197 ! 7154 7198 !-- Particle volume at the low end of the bin 7155 z Vilo = 2.0_wp * zvpart / ( 1.0_wp + zVrat )7199 zvilo = 2.0_wp * zvpart / ( 1.0_wp + zvrat ) 7156 7200 ! 7157 7201 !-- Particle volume at the high end of the bin 7158 z Vihi = zVrat * zVilo7202 zvihi = zvrat * zvilo 7159 7203 ! 7160 7204 !-- Volume in the grown bin which exceeds the bin upper limit 7161 z Vexc = 0.5_wp * ( zVihi + paero(ib)%vhilim )7205 zvexc = 0.5_wp * ( zvihi + paero(ib)%vhilim ) 7162 7206 ! 7163 7207 !-- Number fraction to be moved to the larger bin 7164 znfrac = MIN( 1.0_wp, ( z Vihi - paero(ib)%vhilim) / ( zVihi - zVilo ) )7208 znfrac = MIN( 1.0_wp, ( zvihi - paero(ib)%vhilim) / ( zvihi - zvilo ) ) 7165 7209 ! 7166 7210 !-- Volume fraction to be moved to the larger bin 7167 zvfrac = MIN( 0.99_wp, znfrac * z Vexc / zvpart )7211 zvfrac = MIN( 0.99_wp, znfrac * zvexc / zvpart ) 7168 7212 IF ( zvfrac < 0.0_wp ) THEN 7169 7213 message_string = 'Error: zvfrac < 0' … … 7175 7219 ! 7176 7220 !-- Volume (cm3/cm3) 7177 paero(mm)%volc(:) = paero(mm)%volc(:) + znfrac * paero(ib)%numc * z Vexc * &7178 paero(ib)%volc(:) / SUM( paero(ib)%volc( :) )7179 paero(ib)%volc(:) = paero(ib)%volc(:) - znfrac * paero(ib)%numc * z Vexc * &7180 paero(ib)%volc(:) / SUM( paero(ib)%volc( :) )7221 paero(mm)%volc(:) = paero(mm)%volc(:) + znfrac * paero(ib)%numc * zvexc * & 7222 paero(ib)%volc(:) / SUM( paero(ib)%volc(1:7) ) 7223 paero(ib)%volc(:) = paero(ib)%volc(:) - znfrac * paero(ib)%numc * zvexc * & 7224 paero(ib)%volc(:) / SUM( paero(ib)%volc(1:7) ) 7181 7225 7182 7226 !-- Number concentration (#/m3) … … 7266 7310 !-- Calculate total mass concentration per bin 7267 7311 mcsum = 0.0_wp 7268 DO ic = 1, nc c7312 DO ic = 1, ncomponents_mass 7269 7313 icc = ( ic - 1 ) * nbins_aerosol + ib 7270 7314 mcsum = mcsum + aerosol_mass(icc)%conc(:,j,i) * flag 7315 aerosol_mass(icc)%conc(:,j,i) = MAX( mclim, aerosol_mass(icc)%conc(:,j,i) ) * flag 7271 7316 ENDDO 7272 7317 ! 7273 7318 !-- Check that number and mass concentration match qualitatively 7274 IF ( ANY ( aerosol_number(ib)%conc(:,j,i) >=nclim .AND. mcsum <= 0.0_wp ) ) THEN7319 IF ( ANY( aerosol_number(ib)%conc(:,j,i) > nclim .AND. mcsum <= 0.0_wp ) ) THEN 7275 7320 DO k = nzb+1, nzt 7276 7321 IF ( aerosol_number(ib)%conc(k,j,i) >= nclim .AND. mcsum(k) <= 0.0_wp ) THEN … … 7349 7394 flag_zddry > 0.0_wp ) 7350 7395 ENDDO 7351 aerosol_number(ib)%conc(:,j,i) = MERGE( nclim , aerosol_number(ib)%conc(:,j,i),&7396 aerosol_number(ib)%conc(:,j,i) = MERGE( nclim * flag, aerosol_number(ib)%conc(:,j,i), & 7352 7397 flag_zddry > 0.0_wp ) 7353 7398 ra_dry(:,j,i,ib) = MAX( 1.0E-10_wp, 0.5_wp * zddry ) … … 8387 8432 8388 8433 USE netcdf_data_input_mod, & 8389 ONLY: check_existence, get_attribute, get_variable, inquire_num_variables, & 8390 inquire_variable_names, netcdf_data_input_get_dimension_length, open_read_file 8434 ONLY: check_existence, close_input_file, get_attribute, get_variable, & 8435 inquire_num_variables, inquire_variable_names, & 8436 netcdf_data_input_get_dimension_length, open_read_file 8391 8437 8392 8438 USE surface_mod, & … … 8482 8528 8483 8529 #if defined( __netcdf ) 8530 ! 8531 !-- Check existence of PIDS_SALSA file 8532 INQUIRE( FILE = TRIM( input_file_salsa ) // TRIM( coupling_char ), EXIST = netcdf_extend ) 8533 IF ( .NOT. netcdf_extend ) THEN 8534 message_string = 'Input file '// TRIM( input_file_salsa ) // TRIM( coupling_char )& 8535 // ' missing!' 8536 CALL message( 'salsa_emission_setup', 'PA0629', 1, 2, 0, 6, 0 ) 8537 ENDIF 8538 ! 8539 !-- Open file in read-only mode 8540 CALL open_read_file( TRIM( input_file_salsa ) // TRIM( coupling_char ), id_salsa ) 8541 8484 8542 IF ( init ) THEN 8485 !8486 !-- Check existence of PIDS_SALSA file8487 INQUIRE( FILE = TRIM( input_file_salsa ) // TRIM( coupling_char ), &8488 EXIST = netcdf_extend )8489 IF ( .NOT. netcdf_extend ) THEN8490 message_string = 'Input file '// TRIM( input_file_salsa ) // TRIM( coupling_char )&8491 // ' missing!'8492 CALL message( 'salsa_emission_setup', 'PA0629', 1, 2, 0, 6, 0 )8493 ENDIF8494 !8495 !-- Open file in read-only mode8496 CALL open_read_file( TRIM( input_file_salsa ) // TRIM( coupling_char ), id_salsa )8497 8543 ! 8498 8544 !-- Read the index and name of chemical components … … 8822 8868 8823 8869 8824 DEALLOCATE( source_array )8870 DEALLOCATE( nsect_emission, source_array ) 8825 8871 ! 8826 8872 !-- Pre-processed: … … 8857 8903 8858 8904 ENDIF 8859 8905 ! 8906 !-- Close input file 8907 CALL close_input_file( id_salsa ) 8860 8908 #else 8861 8909 message_string = 'salsa_emission_mode = "read_from_file", but preprocessor directive ' //& … … 9073 9121 9074 9122 USE netcdf_data_input_mod, & 9075 ONLY: check_existence, c hem_emis_att_type, chem_emis_val_type, get_attribute,&9076 get_variable, inquire_num_variables, inquire_variable_names,&9123 ONLY: check_existence, close_input_file, get_attribute, get_variable, & 9124 inquire_num_variables, inquire_variable_names, & 9077 9125 netcdf_data_input_get_dimension_length, open_read_file 9078 9126 … … 9098 9146 REAL(wp), DIMENSION(:), ALLOCATABLE :: time_factor !< emission time factor 9099 9147 9100 TYPE(chem_emis_att_type) :: chem_emission_att !< chemistry emission attributes9101 TYPE(chem_emis_val_type) :: chem_emission !< chemistry emission values9102 9103 9148 ! 9104 9149 !-- Reset surface fluxes … … 9108 9153 9109 9154 #if defined( __netcdf ) 9155 ! 9156 !-- Check existence of PIDS_CHEM file 9157 INQUIRE( FILE = 'PIDS_CHEM' // TRIM( coupling_char ), EXIST = netcdf_extend ) 9158 IF ( .NOT. netcdf_extend ) THEN 9159 message_string = 'Input file PIDS_CHEM' // TRIM( coupling_char ) // ' missing!' 9160 CALL message( 'salsa_gas_emission_setup', 'PA0640', 1, 2, 0, 6, 0 ) 9161 ENDIF 9162 ! 9163 !-- Open file in read-only mode 9164 CALL open_read_file( 'PIDS_CHEM' // TRIM( coupling_char ), id_chem ) 9165 9110 9166 IF ( init ) THEN 9111 !9112 !-- Check existence of PIDS_CHEM file9113 INQUIRE( FILE = 'PIDS_CHEM' // TRIM( coupling_char ), EXIST = netcdf_extend )9114 IF ( .NOT. netcdf_extend ) THEN9115 message_string = 'Input file PIDS_CHEM' // TRIM( coupling_char ) // ' missing!'9116 CALL message( 'salsa_gas_emission_setup', 'PA0640', 1, 2, 0, 6, 0 )9117 ENDIF9118 !9119 !-- Open file in read-only mode9120 CALL open_read_file( 'PIDS_CHEM' // TRIM( coupling_char ), id_chem )9121 9167 ! 9122 9168 !-- Read the index and name of chemical components … … 9301 9347 DEALLOCATE( chem_emission%default_emission_data ) 9302 9348 ENDIF 9349 ! 9350 !-- Close input file 9351 CALL close_input_file( id_chem ) 9352 9303 9353 #else 9304 9354 message_string = 'salsa_emission_mode = "read_from_file", but preprocessor directive ' // & … … 9347 9397 TYPE(surf_type), INTENT(inout) :: surface !< respective surface type 9348 9398 9399 conv = 1.0_wp 9349 9400 use_time_fac = PRESENT( time_fac ) 9350 9401 … … 9765 9816 ENDDO 9766 9817 9767 CASE ( 's_BC', 's_DU', 's_ H2O', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' )9818 CASE ( 's_BC', 's_DU', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' ) 9768 9819 IF ( is_used( prtcl, TRIM( variable(3:) ) ) ) THEN 9769 9820 found_index = get_index( prtcl, TRIM( variable(3:) ) ) … … 9786 9837 ENDDO 9787 9838 ENDIF 9839 9840 CASE ( 's_H2O' ) 9841 found_index = get_index( prtcl,'H2O' ) 9842 DO i = nxlg, nxrg 9843 DO j = nysg, nyng 9844 DO k = nzb, nzt+1 9845 DO ic = ( found_index-1 ) * nbins_aerosol + 1, found_index * nbins_aerosol 9846 to_be_resorted(k,j,i) = to_be_resorted(k,j,i) + & 9847 aerosol_mass(ic)%conc(k,j,i) 9848 ENDDO 9849 ENDDO 9850 ENDDO 9851 ENDDO 9788 9852 9789 9853 CASE DEFAULT … … 9885 9949 ENDDO 9886 9950 9887 CASE ( 's_BC', 's_DU', 's_ H2O', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' )9951 CASE ( 's_BC', 's_DU', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' ) 9888 9952 IF ( is_used( prtcl, TRIM( variable(3:) ) ) ) THEN 9889 found_index = get_index( prtcl, TRIM( variable(3:) ) )9890 9953 IF ( TRIM( variable(3:) ) == 'BC' ) to_be_resorted => s_bc_av 9891 9954 IF ( TRIM( variable(3:) ) == 'DU' ) to_be_resorted => s_du_av … … 9904 9967 ENDDO 9905 9968 ENDIF 9969 9970 CASE ( 's_H2O' ) 9971 to_be_resorted => s_h2o_av 9972 DO i = nxlg, nxrg 9973 DO j = nysg, nyng 9974 DO k = nzb, nzt+1 9975 to_be_resorted(k,j,i) = to_be_resorted(k,j,i) / & 9976 REAL( average_count_3d, KIND=wp ) 9977 ENDDO 9978 ENDDO 9979 ENDDO 9906 9980 9907 9981 END SELECT … … 10212 10286 IF ( mode == 'xy' ) grid = 'zu' 10213 10287 10214 CASE ( 's_BC', 's_DU', 's_ H2O', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' )10288 CASE ( 's_BC', 's_DU', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' ) 10215 10289 vari = TRIM( variable( 3:LEN( TRIM( variable ) ) - 3 ) ) 10216 10290 IF ( is_used( prtcl, vari ) ) THEN … … 10252 10326 IF ( mode == 'xy' ) grid = 'zu' 10253 10327 10328 CASE ( 's_H2O' ) 10329 found_index = get_index( prtcl, 'H2O' ) 10330 IF ( av == 0 ) THEN 10331 DO i = nxl, nxr 10332 DO j = nys, nyn 10333 DO k = nzb_do, nzt_do 10334 temp_bin = 0.0_wp 10335 DO ic = ( found_index-1 ) * nbins_aerosol+1, found_index * nbins_aerosol 10336 temp_bin = temp_bin + aerosol_mass(ic)%conc(k,j,i) 10337 ENDDO 10338 local_pf(i,j,k) = MERGE( temp_bin, REAL( fill_value, KIND = wp ), & 10339 BTEST( wall_flags_0(k,j,i), 0 ) ) 10340 ENDDO 10341 ENDDO 10342 ENDDO 10343 ELSE 10344 to_be_resorted => s_h2o_av 10345 DO i = nxl, nxr 10346 DO j = nys, nyn 10347 DO k = nzb_do, nzt_do 10348 local_pf(i,j,k) = MERGE( to_be_resorted(k,j,i), REAL( fill_value, & 10349 KIND = wp ), BTEST( wall_flags_0(k,j,i), 0 ) ) 10350 ENDDO 10351 ENDDO 10352 ENDDO 10353 ENDIF 10354 10355 IF ( mode == 'xy' ) grid = 'zu' 10356 10254 10357 CASE DEFAULT 10255 10358 found = .FALSE. … … 10534 10637 ENDIF 10535 10638 10536 CASE ( 's_BC', 's_DU', 's_ H2O', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' )10639 CASE ( 's_BC', 's_DU', 's_NH', 's_NO', 's_OC', 's_SO4', 's_SS' ) 10537 10640 IF ( is_used( prtcl, TRIM( variable(3:) ) ) ) THEN 10538 10641 found_index = get_index( prtcl, TRIM( variable(3:) ) ) … … 10567 10670 ENDDO 10568 10671 ENDIF 10672 ENDIF 10673 10674 CASE ( 's_H2O' ) 10675 found_index = get_index( prtcl, 'H2O' ) 10676 IF ( av == 0 ) THEN 10677 DO i = nxl, nxr 10678 DO j = nys, nyn 10679 DO k = nzb_do, nzt_do 10680 temp_bin = 0.0_wp 10681 DO ic = ( found_index-1 ) * nbins_aerosol + 1, found_index * nbins_aerosol 10682 temp_bin = temp_bin + aerosol_mass(ic)%conc(k,j,i) 10683 ENDDO 10684 local_pf(i,j,k) = MERGE( temp_bin, REAL( fill_value, KIND = wp ), & 10685 BTEST( wall_flags_0(k,j,i), 0 ) ) 10686 ENDDO 10687 ENDDO 10688 ENDDO 10689 ELSE 10690 to_be_resorted => s_h2o_av 10691 DO i = nxl, nxr 10692 DO j = nys, nyn 10693 DO k = nzb_do, nzt_do 10694 local_pf(i,j,k) = MERGE( to_be_resorted(k,j,i), REAL( fill_value, & 10695 KIND = wp ), BTEST( wall_flags_0(k,j,i), 0 ) ) 10696 ENDDO 10697 ENDDO 10698 ENDDO 10569 10699 ENDIF 10570 10700 … … 10962 11092 ENDIF 10963 11093 11094 CASE ( 's_H2O' ) 11095 IF ( av == 0 ) THEN 11096 found_index = get_index( prtcl, 'H2O' ) 11097 DO i = nxl, nxr 11098 DO j = nys, nyn 11099 DO k = nzb, nz_do3d 11100 temp_bin = 0.0_wp 11101 DO ic = ( found_index-1 ) * nbins_aerosol + 1, found_index * nbins_aerosol 11102 temp_bin = temp_bin + aerosol_mass(ic)%conc(k,j,i) 11103 ENDDO 11104 tend(k,j,i) = temp_bin 11105 ENDDO 11106 ENDDO 11107 ENDDO 11108 IF ( .NOT. mask_surface(mid) ) THEN 11109 DO i = 1, mask_size_l(mid,1) 11110 DO j = 1, mask_size_l(mid,2) 11111 DO k = 1, mask_size_l(mid,3) 11112 local_pf(i,j,k) = tend( mask_k(mid,k), mask_j(mid,j), mask_i(mid,i) ) 11113 ENDDO 11114 ENDDO 11115 ENDDO 11116 ELSE 11117 DO i = 1, mask_size_l(mid,1) 11118 DO j = 1, mask_size_l(mid,2) 11119 topo_top_ind = get_topography_top_index_ji( mask_j(mid,j), mask_i(mid,i), & 11120 grid ) 11121 DO k = 1, mask_size_l(mid,3) 11122 local_pf(i,j,k) = tend( MIN( topo_top_ind+mask_k(mid,k), nzt+1 ), & 11123 mask_j(mid,j), mask_i(mid,i) ) 11124 ENDDO 11125 ENDDO 11126 ENDDO 11127 ENDIF 11128 resorted = .TRUE. 11129 ELSE 11130 to_be_resorted => s_h2o_av 11131 ENDIF 11132 10964 11133 CASE DEFAULT 10965 11134 found = .FALSE. … … 10999 11168 END SUBROUTINE salsa_data_output_mask 11000 11169 11170 !------------------------------------------------------------------------------! 11171 ! Description: 11172 ! ------------ 11173 !> Creates index tables for different (aerosol) components 11174 !------------------------------------------------------------------------------! 11175 SUBROUTINE component_index_constructor( self, ncomp, nlist, listcomp ) 11176 11177 IMPLICIT NONE 11178 11179 INTEGER(iwp) :: ii !< 11180 INTEGER(iwp) :: jj !< 11181 11182 INTEGER(iwp), INTENT(in) :: nlist ! < Maximum number of components 11183 11184 INTEGER(iwp), INTENT(inout) :: ncomp !< Number of components 11185 11186 CHARACTER(len=3), INTENT(in) :: listcomp(nlist) !< List cof component names 11187 11188 TYPE(component_index), INTENT(inout) :: self !< Object containing the indices of different 11189 !< aerosol components 11190 11191 ncomp = 0 11192 11193 DO WHILE ( listcomp(ncomp+1) /= ' ' .AND. ncomp < nlist ) 11194 ncomp = ncomp + 1 11195 ENDDO 11196 11197 self%ncomp = ncomp 11198 ALLOCATE( self%ind(ncomp), self%comp(ncomp) ) 11199 11200 DO ii = 1, ncomp 11201 self%ind(ii) = ii 11202 ENDDO 11203 11204 jj = 1 11205 DO ii = 1, nlist 11206 IF ( listcomp(ii) == '') CYCLE 11207 self%comp(jj) = listcomp(ii) 11208 jj = jj + 1 11209 ENDDO 11210 11211 END SUBROUTINE component_index_constructor 11212 11213 !------------------------------------------------------------------------------! 11214 ! Description: 11215 ! ------------ 11216 !> Gives the index of a component in the component list 11217 !------------------------------------------------------------------------------! 11218 INTEGER FUNCTION get_index( self, incomp ) 11219 11220 IMPLICIT NONE 11221 11222 CHARACTER(len=*), INTENT(in) :: incomp !< Component name 11223 11224 INTEGER(iwp) :: ii !< index 11225 11226 TYPE(component_index), INTENT(in) :: self !< Object containing the indices of different 11227 !< aerosol components 11228 IF ( ANY( self%comp == incomp ) ) THEN 11229 ii = 1 11230 DO WHILE ( (self%comp(ii) /= incomp) ) 11231 ii = ii + 1 11232 ENDDO 11233 get_index = ii 11234 ELSEIF ( incomp == 'H2O' ) THEN 11235 get_index = self%ncomp + 1 11236 ELSE 11237 WRITE( message_string, * ) 'Incorrect component name given!' 11238 CALL message( 'get_index', 'PA0591', 1, 2, 0, 6, 0 ) 11239 ENDIF 11240 11241 END FUNCTION get_index 11242 11243 !------------------------------------------------------------------------------! 11244 ! Description: 11245 ! ------------ 11246 !> Tells if the (aerosol) component is being used in the simulation 11247 !------------------------------------------------------------------------------! 11248 LOGICAL FUNCTION is_used( self, icomp ) 11249 11250 IMPLICIT NONE 11251 11252 CHARACTER(len=*), INTENT(in) :: icomp !< Component name 11253 11254 TYPE(component_index), INTENT(in) :: self !< Object containing the indices of different 11255 !< aerosol components 11256 11257 IF ( ANY(self%comp == icomp) ) THEN 11258 is_used = .TRUE. 11259 ELSE 11260 is_used = .FALSE. 11261 ENDIF 11262 11263 END FUNCTION 11264 11001 11265 END MODULE salsa_mod -
palm/trunk/TESTS/cases/urban_environment_salsa/INPUT/urban_environment_salsa_p3d
r3924 r4012 19 19 !-- Numerics 20 20 !------------------------------------------------------------------------------ 21 psolver = 'multigrid', 22 momentum_advec = 'ws-scheme', ! default advection scheme 23 scalar_advec = 'ws-scheme', 24 conserve_volume_flow = .T., 21 fft_method = 'fftw', 25 22 26 23 ! … … 28 25 !------------------------------------------------------------------------------ 29 26 humidity = .T., 30 q_surface = 0.00 8,27 q_surface = 0.001, 31 28 32 29 ! 33 30 !-- Initialization 34 31 !------------------------------------------------------------------------------ 35 initializing_actions = 'set_constant_profiles', 36 37 pt_surface = 293.15, 32 initializing_actions = 'set_constant_profiles', !'set_constant_profiles', or 'inifor', 33 ! or both (met. from inifor, chem constant profiles) 34 35 pt_surface = 277.15, 38 36 ug_surface = 1.0, 39 37 vg_surface = 0.0, 40 38 41 roughness_length = 0.05, 42 neutral = .T., 43 44 day_of_year_init = 65, ! March 06, to avoid extreme temperatures 45 time_utc_init = 71700.0, !(19:55, UTC in seconds) 46 47 ! 48 !-- Boundary conditions 49 !------------------------------------------------------------------------------ 50 bc_lr = 'cyclic', 51 bc_ns = 'cyclic', 52 bc_uv_t = 'dirichlet', ! channel flow boundary condition 39 day_of_year_init = 65, ! march 06, to avoid extreme temperatures 40 time_utc_init = 36000.0, ! (0.0 s = 00 UTC midnight), 41 42 ! 43 !-- Wall/soil spinup 44 !------------------------------------------------------------------------------ 45 spinup_time = 1200.0, 46 spinup_pt_mean = 284.15, 47 spinup_pt_amplitude = 10.0, ! give a dirunal cycle from 6 - 16 °C 48 dt_spinup = 120.0, 49 data_output_during_spinup = .F., 53 50 54 51 ! … … 60 57 !-- Physics 61 58 !------------------------------------------------------------------------------ 62 longitude = 13.4, ! Berlin longitude63 latitude = 52.5, ! Berlin latitude64 59 longitude = 13.4, 60 latitude = 52.5, 61 65 62 / ! end of inipar namelist 66 63 … … 79 76 80 77 ! 81 !-- General output settings82 !------------------------------------------------------------------------------83 netcdf_data_format = 4, ! use NetCDF484 85 !86 78 !-- Run-control/timeseries output settings 87 79 !------------------------------------------------------------------------------ 88 80 dt_run_control = 0.0, 89 dt_dots = 0.0, 90 81 dt_dots = 10.0, 82 83 ! 84 !-- Profile output settings 85 !------------------------------------------------------------------------------ 86 skip_time_dopr = 0.0, 87 dt_dopr = 60.0, 88 averaging_interval_pr = 60.0, 89 dt_averaging_input_pr = 0.0, 90 91 data_output_pr = '#u', 'u*2', 'wu', 'w*u*', 'w"u"', 92 '#v', 'v*2', 'wv', 'w*v*', 'w"v"', 93 ! 'w', 'w*2', 94 '#theta', 'theta*2', 'wtheta', 'w*theta*', 'w"theta"', 95 '#q', 'q*2', 91 96 ! 92 97 !-- 2D/3D output settings 93 98 !------------------------------------------------------------------------------ 94 99 do3d_at_begin = .T., 95 96 dt_data_output = 10.0, 97 100 do2d_at_begin = .T., 101 102 dt_data_output = 10.0, 103 dt_data_output_av = 10.0, 104 averaging_interval = 10.0, 105 dt_averaging_input = 0.0, 106 107 section_xy = 0, 98 108 99 109 data_output = 'u', 'v', 'w', 100 'Ntot', ' LDSA', 'PM2.5', 's_OC', 's_NH', 's_NO',101 ' g_H2SO4','g_HNO3','g_NH3','g_OCNV','g_OCSV',110 'Ntot', 'PM2.5', 'LDSA', 111 's_OC','g_OCNV','g_OCSV', 102 112 'N_bin3', 'm_bin4', 103 113 114 104 115 / ! end of d3par namelist 105 116 117 118 !------------------------------------------------------------------------------- 119 !-- RADIATION MODEL PARAMETER NAMELIST 120 ! Documentation: https://palm.muk.uni-hannover.de/trac/wiki/doc/app/radpar 121 !------------------------------------------------------------------------------- 122 &radiation_parameters 123 124 radiation_scheme = 'clear-sky', !'clear-sky' or 'rrtmg', 125 albedo_type = 5, 126 constant_albedo = .F., 127 128 dt_radiation = 60.0, 129 130 surface_reflections = .T., 131 nrefsteps = 3, 132 133 rad_angular_discretization = .F., 134 raytrace_mpi_rma = .F., 135 136 / 137 138 139 !------------------------------------------------------------------------------- 140 !-- LAND SURFACE MODEL PARAMETER NAMELIST 141 ! Documentation: https://palm.muk.uni-hannover.de/trac/wiki/doc/app/lsmpar 142 !------------------------------------------------------------------------------- 143 &land_surface_parameters 144 145 constant_roughness = .T., 146 aero_resist_kray = .T., 147 148 vegetation_type = 2, 149 soil_type = 3, 150 conserve_water_content = .T., 151 152 root_fraction = 0.49, 0.26, 0.25, 0.0, 0.0, 0.0, 0.0, 0.0, 153 soil_temperature = 277.15, 277.0, 277.0, 277.0, 277.0, 277.0, 277.0, 277.0, 154 soil_moisture = 0.30, 0.30, 0.30, 0.30, 0.30, 0.30, 0.30, 0.30, 155 deep_soil_temperature = 277.0, 156 157 / ! end of lsm_par namelist 158 159 160 !------------------------------------------------------------------------------- 161 !-- URBAN SURFACE MODEL PARAMETER NAMELIST 162 ! Documentation: https://palm.muk.uni-hannover.de/trac/wiki/doc/app/usmpar 163 !------------------------------------------------------------------------------- 164 &urban_surface_parameters 165 166 usm_material_model = .T., 167 usm_wall_mod = .T., 168 169 / ! end of urban_surface_par namelist 170 106 171 107 172 !------------------------------------------------------------------------------- … … 112 177 113 178 canopy_mode = 'read_from_file_3d', 114 canopy_drag_coeff = 0. 5,179 canopy_drag_coeff = 0.3, 115 180 116 181 / ! end of canopy_par namelist -
palm/trunk/TESTS/cases/urban_environment_salsa/MONITORING/urban_environment_salsa_rc
r3924 r4012 1 1 2 2 ****************************** -------------------------------------------- 3 * PALM 6.0 Rev: 3895M * atmosphere - run without 1D - prerun3 * PALM 6.0 Rev: 4008M * atmosphere - run without 1D - prerun 4 4 ****************************** -------------------------------------------- 5 5 6 Date: 2019-04-16 Run: urban_environment_salsa 7 Time: 16:50:40 Run-No.: 00 8 Run on host: salsa 9 Number of PEs: 1 Processor grid (x,y): ( 1, 1) calculated 10 A 1d-decomposition along x is used 6 Date: 2019-05-31 Run: urban_environment_salsa 7 Time: 17:23:03 Run-No.: 00 8 Run on host: default 9 Number of PEs: 4 Processor grid (x,y): ( 2, 2) calculated 11 10 ------------------------------------------------------------------------------ 12 11 … … 16 15 --> Use the Moeng_Wyngaard turbulence closure (LES mode). 17 16 --> Use the boussinesq approximation for the model equations. 18 --> Solve perturbation pressure via multigrid method (w-cycle) 19 number of grid levels: 1 20 Gauss-Seidel red/black iterations: 2 21 fixed number of multigrid cycles: 4 17 --> Solve perturbation pressure via FFT using fftw routines 22 18 perturbation pressure is calculated at every Runge-Kutta step 23 19 --> Momentum advection via Wicker-Skamarock-Scheme 5th order … … 25 21 --> Loop optimization method: cache 26 22 --> Time differencing scheme: runge-kutta-3 27 --> No pt-equation solved. Neutral stratification with pt = 293.15 K assumed28 23 --> Additional prognostic equation for the specific humidity 29 --> Volume flow at the right and north boundary will be conserved30 using the initial_profiles mode31 24 ------------------------------------------------------------------------------ 32 25 … … 37 30 Timestep: variable maximum value: 20.000 s CFL-factor: 0.90 38 31 Start time: 0.000 s 39 End time: 70.000 s 32 End time: 1270.000 s 33 Coupling start time: 1200.000 s 40 34 41 35 … … 51 45 52 46 Number of gridpoints (x,y,z): (0: 19, 0: 19, 0: 23) 53 Subdomain size (x,y,z): ( 20, 20, 24)47 Subdomain size (x,y,z): ( 10, 10, 24) 54 48 55 49 … … 83 77 p uv pt 84 78 85 B. bound.: p(0) = p(1) | uv(0) = -uv(1) | pt(0) = pt_surface79 B. bound.: p(0) = p(1) | uv(0) = -uv(1) | pt(0) = from soil model 86 80 T. bound.: p(nzt+1) = 0 | uv(nzt+1) = ug(nzt+1), vg(nzt+1) | pt(nzt+1) = pt(nzt) + dpt/dz_ 87 81 … … 93 87 q 94 88 95 B. bound.: q(0) = q_surface89 B. bound.: q(0) = from soil model 96 90 T. bound.: q(nzt+1) = q(nzt) + dq/dz 97 91 … … 101 95 Constant flux layer between bottom surface and first computational u,v-level: 102 96 103 z_mo = 1.00 m z0 = 0. 0500 m z0h = 0.05000 m kappa = 0.4097 z_mo = 1.00 m z0 = 0.1000 m z0h = 0.10000 m kappa = 0.40 104 98 Rif value range: -20.00 <= rif <= 20.00 105 99 Predefined surface temperature … … 117 111 Characteristic levels of the initial temperature profile: 118 112 119 Height: 0.0 m120 Temperature: 2 93.15 K121 Gradient: ------ K/100m122 Gridpoint: 0 113 Height: 0.0 0.0 m 114 Temperature: 277.15 277.15 K 115 Gradient: ------ 0.00 K/100m 116 Gridpoint: 0 0 123 117 124 118 Characteristic levels of the initial humidity profile: 125 119 126 120 Height: 0.0 0.0 m 127 Humidity: 0. 8E-02 0.8E-02 kg/kg121 Humidity: 0.1E-02 0.1E-02 kg/kg 128 122 Gradient: -------- 0.0E+00 (kg/kg)/100m 129 123 Gridpoint: 0 0 … … 135 129 1D-Profiles: 136 130 Output every 9999999.90 s 131 Time averaged over 60.00 s 132 Averaging input every 0.00 s 137 133 138 134 … … 140 136 ----------- 141 137 138 Time averaged over 60.00 s 139 Averaging input every 0.00 s 140 141 1D-Profiles: 142 Output format: netCDF 64bit offset 143 144 145 Profile: u, u*2, wu, w*u*, w"u", v, v*2, wv, w*v*, w"v", theta, 146 147 : theta*2, wtheta, w*theta*, w"theta", q, q*2, 148 Output every 60.00 s 149 Time averaged over 60.00 s 150 Averaging input every 0.00 s 142 151 143 152 3D-Arrays: 144 Output format: netCDF 4/HDF5 classic145 146 147 Arrays: u, v, w, Ntot, LDSA, PM2.5, s_OC, s_NH, s_NO, g_H2SO4, g_HNO3, g_NH3,153 Output format: netCDF 64bit offset 154 155 156 Arrays: u, v, w, Ntot, PM2.5, LDSA, s_OC, g_OCNV, g_OCSV, N_bin3, m_bin4, 148 157 Output every 10.00 s and at the start 149 158 Upper output limit at 45.00 m (GP 23) … … 154 163 155 164 Time series: 156 Output format: netCDF 4/HDF5 classic157 158 Output every 165 Output format: netCDF 64bit offset 166 167 Output every 10.00 s 159 168 160 169 ------------------------------------------------------------------------------ … … 171 180 172 181 Day of the year at model start : day_init = 65 173 UTC time at model start : time_utc_init = 71700.0 s182 UTC time at model start : time_utc_init = 36000.0 s 174 183 175 184 Gravity : g = 9.8 m/s**2 … … 202 211 203 212 213 Land surface model information: 214 ------------------------------ 215 216 --> Soil bottom is closed (water content is conserved, default) 217 --> Land surface type : read from file 218 --> Soil porosity type : read from file 219 220 Initial soil temperature and moisture profile: 221 222 Height: -0.01 -0.02 -0.05 -0.10 -0.20 -0.40 -0.80 -2. m 223 Temperature: 277.15 277.00 277.00 277.00 277.00 277.00 277.00 277. K 224 Moisture: 0.30 0.30 0.30 0.30 0.30 0.30 0.30 0. m**3/m**3 225 Root fraction: 0.49 0.26 0.25 0.00 0.00 0.00 0.00 0. 226 Grid point: 0 1 2 3 4 5 6 227 228 204 229 Vegetation canopy (drag) model: 205 230 ------------------------------ … … 207 232 Canopy mode: read_from_file_3d 208 233 Canopy height: 10.00m ( 5 grid points) 209 Leaf drag coefficient: 0. 50234 Leaf drag coefficient: 0.30 210 235 211 236 Predefined constant heatflux at the top of the vegetation: 0.00 K m/s … … 219 244 220 245 246 Radiation model information: 247 ---------------------------- 248 249 --> Simple radiation scheme for clear sky is used (no clouds, default) 250 251 Albedo is set individually for each xy-location, according to given surface type. 252 Timestep: dt_radiation = 60.00 s 253 254 221 255 SALSA information: 222 256 ------------------------------ … … 227 261 228 262 Array shape (z,y,x,bins): 229 aerosol_number: 2 4 26 268230 231 aerosol_mass: 24 26 26 32263 aerosol_number: 22 19 19 8 264 265 aerosol_mass: 24 16 16 32 232 266 (advect_particle_water = T) 233 salsa_gas: 24 26 26 5267 salsa_gas: 24 16 16 5 234 268 (salsa_gases_from_chem = F) 235 269 … … 245 279 Number of size bins for each aerosol subrange: 1 7 246 280 Aerosol bin limits (in metres): 3.00E-009 1.00E-008 2.20E-008 4.84E-008 1.07E-007 2.35E-007 5.16E-007 1.14E-006 247 Initial number concentration in bins at the lowest level (#/m**3): 0.00E+000 0.00E+000 0.00E+000 0.00E+000 0.00E+000 0.00E+000 0.00E+000 0.00E+000281 Initial number concentration in bins at the lowest level (#/m**3): 1.19E+008 9.63E+008 5.30E+008 1.96E+008 6.13E+007 6.01E+006 1.95E+005 1.25E+004 248 282 249 283 Number of chemical components used: 3 … … 275 309 276 310 311 Spinup control output: 312 -------------------------------- 313 314 ITER. HH:MM:SS DT PT(z_MO) 315 -------------------------------- 316 1 00:02:00 120.00 288.14 317 2 00:04:00 120.00 288.17 318 3 00:06:00 120.00 288.21 319 4 00:08:00 120.00 288.24 320 5 00:10:00 120.00 288.27 321 6 00:12:00 120.00 288.30 322 7 00:14:00 120.00 288.33 323 8 00:16:00 120.00 288.35 324 9 00:18:00 120.00 288.38 325 10 00:20:00 120.00 288.41 326 327 328 277 329 Run-control output: 278 330 ------------------ … … 280 332 RUN ITER. HH:MM:SS.SS DT(E) UMAX VMAX WMAX U* W* THETA* Z_I ENERG. DISTENERG DIVOLD DIVNEW UMAX(KJI) VMAX(KJI) WMAX(KJI) ADVECX ADVECY MGCYC 281 333 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 282 0 0 00:00:00.00 1. 5300A 1.1740D 0.5958D 0.4479 0.000 0.00 0.000E+00 0. 0.328E+00 0.265E-01 0.357E-01 0.219E-01 17 0 19 6 15 5 21 17 14 0.000 0.000 4283 0 1 00:00:01. 53 0.3070A -5.8637 3.1112 2.2106 0.313 0.00 0.000E+00 0. 0.227E+01 0.128E+01 0.564E+00 0.262E+00 3 16 10 7 0 5 15 1 14 0.000 0.000 4284 0 2 00:00:0 1.83 0.7360A 2.4450 2.4206 1.7519 0.095 0.00 0.000E+00 0. 0.395E+00 0.121E+00 0.549E-01 0.442E-01 22 0 1 7 0 5 11 18 5 0.000 0.000 4285 0 3 00:00:0 2.57 0.5210A 3.4548 2.2340 1.2457 0.148 0.00 0.000E+00 0. 0.106E+01 0.198E+00 0.179E+00 0.996E-01 7 1 8 4 0 9 6 0 9 0.000 0.000 4286 0 4 00:00:0 3.09 0.8660A 1.9783 2.0780 -1.1874 0.043 0.00 0.000E+00 0. 0.224E+00 0.901E-01 0.244E-01 0.251E-01 22 0 3 3 0 9 5 19 11 0.000 0.000 4287 0 5 00:00:0 3.96 0.9460A 1.9019 1.8854 -1.1006 0.050 0.00 0.000E+00 0. 0.198E+00 0.812E-01 0.443E-01 0.228E-01 22 0 3 3 1 9 5 19 11 0.000 0.000 4288 0 6 00:00:0 4.90 0.8600A 2.0940 1.7943 -1.0036 0.054 0.00 0.000E+00 0. 0.295E+00 0.662E-01 0.147E-01 0.101E-01 22 0 4 3 1 9 5 19 11 0.000 0.000 4289 0 7 00:00:0 5.76 0.9230A 1.9509 -1.5875 -0.9754 0.047 0.00 0.000E+00 0. 0.271E+00 0.668E-01 0.118E-01 0.375E-02 22 0 4 6 0 9 6 0 9 0.000 0.000 4290 0 8 00:00:0 6.68 0.9620A 1.8702 1.4274 -0.8663 0.045 0.00 0.000E+00 0. 0.254E+00 0.653E-01 0.999E-02 0.363E-02 21 17 7 3 2 9 6 0 9 0.000 0.000 4291 0 9 00:00: 07.65 0.9660A 1.8635 1.3192 -0.7929 0.047 0.00 0.000E+00 0. 0.259E+00 0.625E-01 0.881E-02 0.300E-02 21 17 7 3 2 9 7 19 9 0.000 0.000 4292 0 10 00:00: 08.61 0.9860A 1.8258 1.1186 -0.7396 0.047 0.00 0.000E+00 0. 0.258E+00 0.611E-01 0.710E-02 0.223E-02 21 17 7 3 2 9 7 19 9 0.000 0.000 4293 0 11 00:00: 09.60 1.0100A 1.7786 0.9043 0.7158 0.048 0.00 0.000E+00 0. 0.256E+00 0.604E-01 0.554E-02 0.155E-02 21 17 8 3 2 9 15 2 14 0.000 0.000 4294 0 12 00:00:1 0.61 1.0200A 1.7661 -0.8828 0.7411 0.048 0.00 0.000E+00 0. 0.257E+00 0.603E-01 0.446E-02 0.118E-02 21 17 8 5 19 9 15 2 14 0.000 0.000 4295 0 13 00:00:1 1.63 1.0400A 1.7228 -0.8455 0.7552 0.049 0.00 0.000E+00 0. 0.257E+00 0.607E-01 0.428E-02 0.133E-02 21 17 8 6 19 10 15 2 14 0.000 0.000 4296 0 14 00:00:1 2.67 1.0400A 1.7294 -0.7885 0.7577 0.050 0.00 0.000E+00 0. 0.258E+00 0.612E-01 0.452E-02 0.148E-02 22 18 8 4 16 12 15 2 14 0.000 0.000 4297 0 15 00:00:1 3.71 1.0500A 1.7096 -0.7602 0.7511 0.050 0.00 0.000E+00 0. 0.258E+00 0.617E-01 0.464E-02 0.153E-02 22 18 9 4 16 12 15 2 14 0.000 0.000 4298 0 16 00:00:1 4.76 1.0400A 1.7372 -0.7573 0.7380 0.051 0.00 0.000E+00 0. 0.259E+00 0.622E-01 0.460E-02 0.148E-02 22 17 9 18 15 14 15 2 14 0.000 0.000 4299 0 17 00:00: 15.80 1.0400A 1.7254 0.7851 0.7227 0.052 0.00 0.000E+00 0. 0.260E+00 0.627E-01 0.435E-02 0.134E-02 22 17 10 19 0 14 15 2 14 0.000 0.000 4300 0 18 00:00: 16.84 1.0400A 1.7244 0.8312 0.7068 0.053 0.00 0.000E+00 0. 0.261E+00 0.633E-01 0.407E-02 0.118E-02 22 17 10 19 0 14 15 2 14 0.000 0.000 4301 0 19 00:00: 17.88 1.0400A 1.7324 -0.8733 0.6927 0.053 0.00 0.000E+00 0. 0.261E+00 0.640E-01 0.384E-02 0.102E-02 22 17 11 19 15 14 15 2 14 0.000 0.000 4302 0 20 00:00: 18.92 1.0600A 1.6937 -0.9065 0.6819 0.054 0.00 0.000E+00 0. 0.262E+00 0.647E-01 0.375E-02 0.924E-03 22 17 11 19 15 14 15 2 14 0.000 0.000 4303 0 21 00:00: 19.98 1.0600A 1.7039 -0.9074 0.6744 0.055 0.00 0.000E+00 0. 0.263E+00 0.655E-01 0.381E-02 0.943E-03 22 17 12 19 15 14 15 2 14 0.000 0.000 4304 0 22 00:00:2 1.04 1.0600A 1.6992 -0.8659 0.6718 0.056 0.00 0.000E+00 0. 0.264E+00 0.662E-01 0.382E-02 0.957E-03 22 17 13 19 15 14 15 2 14 0.000 0.000 4305 0 23 00:00:2 2.10 1.0700A 1.6753 -0.8488 0.6735 0.056 0.00 0.000E+00 0. 0.265E+00 0.669E-01 0.379E-02 0.950E-03 22 17 13 18 15 14 15 2 14 0.000 0.000 4306 0 24 00:00: 23.17 1.0700A 1.6882 -0.8114 0.6784 0.057 0.00 0.000E+00 0. 0.266E+00 0.677E-01 0.378E-02 0.929E-03 22 17 15 18 15 14 15 2 14 0.000 0.000 4307 0 25 00:00: 24.24 1.0400A 1.7302 -0.7613 0.6861 0.057 0.00 0.000E+00 0. 0.267E+00 0.684E-01 0.373E-02 0.895E-03 22 17 15 18 15 14 15 2 14 0.000 0.000 4308 0 26 00:00: 25.28 1.0300A 1.7398 0.7503 0.6961 0.057 0.00 0.000E+00 0. 0.268E+00 0.691E-01 0.361E-02 0.843E-03 22 17 16 6 6 14 15 2 14 0.000 0.000 4309 0 27 00:00: 26.31 1.0400A 1.7364 0.7431 0.7062 0.057 0.00 0.000E+00 0. 0.269E+00 0.699E-01 0.354E-02 0.803E-03 22 17 16 6 6 14 15 2 14 0.000 0.000 4310 0 28 00:00: 27.35 1.0400A 1.7321 0.7332 0.7154 0.056 0.00 0.000E+00 0. 0.270E+00 0.707E-01 0.355E-02 0.801E-03 22 17 17 5 5 14 15 2 14 0.000 0.000 4311 0 29 00:00: 28.39 1.0500A 1.7180 0.7321 0.7240 0.056 0.00 0.000E+00 0. 0.272E+00 0.714E-01 0.354E-02 0.810E-03 22 17 18 5 5 14 15 2 14 0.000 0.000 4312 0 30 00:00: 29.44 1.0600A 1.7017 0.7261 0.7313 0.056 0.00 0.000E+00 0. 0.273E+00 0.723E-01 0.355E-02 0.823E-03 22 17 19 5 5 14 15 2 14 0.000 0.000 4313 0 31 00:00:3 0.50 1.0600A 1.6921 0.7156 0.7372 0.056 0.00 0.000E+00 0. 0.274E+00 0.731E-01 0.356E-02 0.835E-03 22 17 19 5 5 14 15 2 14 0.000 0.000 4314 0 32 00:00: 31.56 1.0700A 1.6853 0.7010 0.7417 0.056 0.00 0.000E+00 0. 0.276E+00 0.739E-01 0.355E-02 0.834E-03 22 17 0 5 5 14 15 2 14 0.000 0.000 4315 0 33 00:00: 32.63 1.0800A 1.6729 0.6848 0.7440 0.056 0.00 0.000E+00 0. 0.277E+00 0.747E-01 0.355E-02 0.831E-03 22 17 1 12 5 14 15 2 14 0.000 0.000 4316 0 34 00:00: 33.71 1.0900A 1.6581 0.6828 0.7556 0.056 0.00 0.000E+00 0. 0.278E+00 0.756E-01 0.353E-02 0.825E-03 22 17 1 12 5 14 20 17 14 0.000 0.000 4317 0 35 00:00: 34.80 1.1000A 1.6323 0.6806 0.7734 0.056 0.00 0.000E+00 0. 0.280E+00 0.763E-01 0.351E-02 0.816E-03 22 1 1 12 5 14 20 17 14 0.000 0.000 4318 0 36 00:00: 35.90 1.1200A 1.6130 0.6775 0.7848 0.055 0.00 0.000E+00 0. 0.281E+00 0.771E-01 0.348E-02 0.805E-03 22 17 2 12 5 14 20 17 14 0.000 0.000 4319 0 37 00:00: 37.02 1.1300A 1.5964 0.6742 0.7896 0.055 0.00 0.000E+00 0. 0.282E+00 0.778E-01 0.347E-02 0.798E-03 22 1 2 13 5 14 20 17 14 0.000 0.000 4320 0 38 00:00: 38.15 1.1400A 1.5736 0.6686 0.7887 0.055 0.00 0.000E+00 0. 0.283E+00 0.785E-01 0.344E-02 0.785E-03 22 1 3 13 5 14 20 17 14 0.000 0.000 4321 0 39 00:00: 39.29 1.1700A 1.5441 0.6594 0.7832 0.055 0.00 0.000E+00 0. 0.284E+00 0.792E-01 0.340E-02 0.768E-03 22 1 3 13 5 14 20 17 14 0.000 0.000 4322 0 40 00:00:4 0.46 1.1800A 1.5311 0.6450 0.7741 0.055 0.00 0.000E+00 0. 0.285E+00 0.798E-01 0.341E-02 0.760E-03 22 2 4 13 5 14 20 17 14 0.000 0.000 4323 0 41 00:00:4 1.64 1.1900A 1.5096 0.6266 0.7645 0.055 0.00 0.000E+00 0. 0.286E+00 0.804E-01 0.337E-02 0.740E-03 22 2 5 13 5 14 20 17 14 0.000 0.000 4324 0 42 00:00: 42.83 1.2200A 1.4789 0.6041 0.7554 0.055 0.00 0.000E+00 0. 0.287E+00 0.809E-01 0.331E-02 0.717E-03 22 3 6 13 5 14 20 17 14 0.000 0.000 4325 0 43 00:00: 44.05 1.2300A 1.4646 0.5901 0.7454 0.055 0.00 0.000E+00 0. 0.288E+00 0.814E-01 0.330E-02 0.702E-03 22 2 6 17 0 14 20 17 14 0.000 0.000 4326 0 44 00:00: 45.28 1.2400A 1.4541 0.5896 0.7318 0.055 0.00 0.000E+00 0. 0.289E+00 0.818E-01 0.325E-02 0.680E-03 22 4 7 17 0 14 20 17 14 0.000 0.000 4327 0 45 00:00: 46.52 1.2500A 1.4347 0.5929 0.7147 0.054 0.00 0.000E+00 0. 0.289E+00 0.821E-01 0.320E-02 0.659E-03 22 4 8 17 0 14 20 18 14 0.000 0.000 4328 0 46 00:00: 47.77 1.2800A 1.4108 0.6001 0.6921 0.054 0.00 0.000E+00 0. 0.290E+00 0.824E-01 0.316E-02 0.643E-03 22 4 8 17 0 14 20 18 14 0.000 0.000 4329 0 47 00:00: 49.05 1.2800A 1.4102 0.6101 0.6891 0.054 0.00 0.000E+00 0. 0.291E+00 0.827E-01 0.317E-02 0.641E-03 22 5 9 17 0 14 15 2 14 0.000 0.000 4330 0 48 00:00:5 0.33 1.2800A 1.4050 0.6237 0.6888 0.054 0.00 0.000E+00 0. 0.291E+00 0.829E-01 0.313E-02 0.633E-03 22 6 10 17 0 14 15 2 14 0.000 0.000 4331 0 49 00:00:5 1.61 1.2900A 1.3931 0.6395 0.6860 0.054 0.00 0.000E+00 0. 0.292E+00 0.831E-01 0.309E-02 0.624E-03 22 6 11 17 0 14 15 2 14 0.000 0.000 4332 0 50 00:00:5 2.90 1.2400A 1.4539 0.6571 0.6785 0.054 0.00 0.000E+00 0. 0.292E+00 0.832E-01 0.307E-02 0.619E-03 21 16 15 17 0 14 15 2 14 0.000 0.000 4333 0 51 00:00:5 4.14 1.2000A 1.4975 0.6780 0.6746 0.055 0.00 0.000E+00 0. 0.292E+00 0.833E-01 0.294E-02 0.593E-03 21 16 15 17 0 14 15 1 14 0.000 0.000 4334 0 52 00:00:5 5.34 1.1900A 1.5071 0.7016 0.6762 0.055 0.00 0.000E+00 0. 0.293E+00 0.834E-01 0.282E-02 0.568E-03 21 16 15 19 0 14 15 1 14 0.000 0.000 4335 0 53 00:0 0:56.53 1.2000A 1.4971 0.7327 0.6751 0.055 0.00 0.000E+00 0. 0.293E+00 0.834E-01 0.276E-02 0.556E-03 21 17 15 18 0 14 15 1 14 0.000 0.000 4336 0 54 00:0 0:57.73 1.2100A 1.4911 0.7633 0.6715 0.055 0.00 0.000E+00 0. 0.293E+00 0.834E-01 0.276E-02 0.556E-03 21 17 15 18 0 14 15 1 14 0.000 0.000 4337 0 55 00:0 0:58.94 1.2200A 1.4800 0.7830 0.6657 0.055 0.00 0.000E+00 0. 0.293E+00 0.834E-01 0.276E-02 0.559E-03 21 17 15 18 0 14 15 1 14 0.000 0.000 4338 0 56 00:01:0 0.16 1.2300A 1.4611 0.8074 -0.6734 0.055 0.00 0.000E+00 0. 0.294E+00 0.834E-01 0.277E-02 0.562E-03 21 17 15 17 0 14 5 4 14 0.000 0.000 4339 0 57 00:01:0 1.39 1.2600A 1.4332 0.8173 -0.6852 0.055 0.00 0.000E+00 0. 0.294E+00 0.834E-01 0.278E-02 0.564E-03 21 17 15 17 0 14 5 4 14 0.000 0.000 4340 0 58 00:01:0 2.65 1.2600A 1.4301 0.7946 -0.6800 0.055 0.00 0.000E+00 0. 0.294E+00 0.834E-01 0.283E-02 0.572E-03 22 3 17 17 0 14 5 4 14 0.000 0.000 4341 0 59 00:01:0 3.91 1.2600A 1.4332 0.7555 -0.7051 0.054 0.00 0.000E+00 0. 0.294E+00 0.834E-01 0.282E-02 0.569E-03 22 15 18 16 0 14 16 17 14 0.000 0.000 4342 0 60 00:01:0 5.17 1.2600A 1.4341 0.7391 -0.7543 0.054 0.00 0.000E+00 0. 0.295E+00 0.834E-01 0.280E-02 0.560E-03 22 15 19 16 0 14 16 18 14 0.000 0.000 4343 0 61 00:01:0 6.43 1.2500A 1.4393 0.6918 -0.7598 0.053 0.00 0.000E+00 0. 0.295E+00 0.834E-01 0.277E-02 0.547E-03 22 3 19 16 0 14 16 18 14 0.000 0.000 4344 0 62 00:01:0 7.68 1.2500A 1.4381 0.6393 -0.7650 0.053 0.00 0.000E+00 0. 0.295E+00 0.834E-01 0.271E-02 0.529E-03 22 3 0 16 1 14 15 18 14 0.000 0.000 4345 0 63 00:01:0 8.93 1.2600A 1.4296 0.6196 -0.7827 0.052 0.00 0.000E+00 0. 0.295E+00 0.834E-01 0.268E-02 0.512E-03 22 4 1 16 1 14 15 18 14 0.000 0.000 4346 0 64 00:01:10. 19 1.2600A 1.4308 0.5760 -0.7698 0.051 0.00 0.000E+00 0. 0.296E+00 0.833E-01 0.266E-02 0.499E-03 22 2 1 16 1 14 15 18 14 0.000 0.000 4334 0 0 00:00:00.00 1.3300A 1.3569D 0.6524D 0.4803 0.070 0.00 0.858E-01 0. 0.366E+00 0.309E-01 0.378E-01 0.160E-01 16 0 18 6 15 5 20 17 14 0.000 0.000 0 335 0 1 00:00:01.32 1.0500A 1.7173 -0.9918 0.9157 0.099 0.00 -0.441E+00 2. 0.349E+00 0.513E-01 0.145E-01 0.400E-02 16 0 0 6 15 14 15 1 14 0.000 0.000 0 336 0 2 00:00:02.37 1.0700A 1.6851 -1.0411 1.0211 0.097 0.00 -0.448E+00 2. 0.345E+00 0.558E-01 0.603E-02 0.190E-02 16 0 0 6 15 14 15 1 14 0.000 0.000 0 337 0 3 00:00:03.44 1.0900A 1.6547 1.0546 1.0394 0.094 0.29 -0.453E+00 30. 0.341E+00 0.575E-01 0.535E-02 0.156E-02 16 0 1 6 5 14 15 1 14 0.000 0.000 0 338 0 4 00:00:04.53 1.1200A 1.6140 1.0496 1.0340 0.092 0.06 -0.463E+00 12. 0.338E+00 0.586E-01 0.518E-02 0.147E-02 16 0 1 6 5 14 15 1 14 0.000 0.000 0 339 0 5 00:00:05.65 1.1400A 1.5789 1.0339 1.0181 0.091 0.00 -0.481E+00 10. 0.335E+00 0.596E-01 0.520E-02 0.146E-02 16 0 2 6 5 14 15 1 14 0.000 0.000 0 340 0 6 00:00:06.79 1.1900A 1.5170 1.0139 0.9994 0.089 0.00 -0.508E+00 10. 0.332E+00 0.608E-01 0.519E-02 0.144E-02 16 0 2 6 5 14 15 1 14 0.000 0.000 0 341 0 7 00:00:07.98 1.2200A 1.4727 0.9885 0.9788 0.088 0.00 -0.530E+00 10. 0.329E+00 0.620E-01 0.532E-02 0.146E-02 16 1 15 6 5 14 15 1 14 0.000 0.000 0 342 0 8 00:00:09.20 1.2400A 1.4508 0.9616 0.9617 0.087 0.00 -0.514E+00 10. 0.327E+00 0.633E-01 0.539E-02 0.147E-02 16 1 15 6 5 14 15 2 14 0.000 0.000 0 343 0 9 00:00:10.44 1.2600A 1.4296 0.9388 0.9481 0.086 0.00 -0.483E+00 10. 0.324E+00 0.647E-01 0.543E-02 0.147E-02 16 1 15 3 5 14 15 2 14 0.000 0.000 0 344 0 10 00:00:11.70 1.2800A 1.4101 0.9328 0.9359 0.086 0.00 -0.472E+00 10. 0.322E+00 0.662E-01 0.549E-02 0.148E-02 16 1 15 3 5 14 15 2 14 0.000 0.000 0 345 0 11 00:00:12.98 1.2900A 1.3924 0.9216 0.9243 0.085 0.00 -0.470E+00 10. 0.320E+00 0.678E-01 0.557E-02 0.148E-02 16 1 15 3 5 14 15 2 14 0.000 0.000 0 346 0 12 00:00:14.27 1.3100A 1.3770 0.9054 0.9134 0.085 0.12 -0.462E+00 10. 0.317E+00 0.695E-01 0.561E-02 0.147E-02 16 1 15 3 5 14 15 2 14 0.000 0.000 0 347 0 13 00:00:15.58 1.3200A 1.3616 0.8829 0.9022 0.084 0.18 -0.464E+00 10. 0.316E+00 0.713E-01 0.568E-02 0.146E-02 16 1 15 3 5 14 15 2 14 0.000 0.000 0 348 0 14 00:00:16.90 1.3400A 1.3472 0.8706 0.8911 0.084 0.23 -0.458E+00 10. 0.314E+00 0.732E-01 0.573E-02 0.145E-02 16 1 15 8 5 14 15 2 14 0.000 0.000 0 349 0 15 00:00:18.24 1.3500A 1.3323 0.8590 0.8791 0.084 0.27 -0.453E+00 10. 0.312E+00 0.752E-01 0.583E-02 0.144E-02 16 1 15 7 5 14 15 2 14 0.000 0.000 0 350 0 16 00:00:19.59 1.3700A 1.3180 -0.8591 0.8670 0.083 0.47 -0.453E+00 20. 0.311E+00 0.773E-01 0.588E-02 0.142E-02 16 1 15 7 3 5 15 2 14 0.000 0.000 0 351 0 17 00:00:20.96 1.3800A 1.3032 -0.8662 0.8703 0.083 0.52 -0.457E+00 20. 0.309E+00 0.795E-01 0.598E-02 0.140E-02 16 1 15 7 3 5 5 14 8 0.000 0.000 0 352 0 18 00:00:22.34 1.4000A 1.2889 -0.8501 0.8915 0.083 0.55 -0.452E+00 20. 0.308E+00 0.818E-01 0.603E-02 0.137E-02 16 1 15 7 3 5 4 15 9 0.000 0.000 0 353 0 19 00:00:23.74 1.4100A 1.2740 0.8103 0.9470 0.083 0.57 -0.447E+00 20. 0.307E+00 0.842E-01 0.610E-02 0.134E-02 16 1 15 7 5 14 4 5 2 0.000 0.000 0 354 0 20 00:00:25.15 1.4300A 1.2597 0.7952 1.0311 0.083 0.57 -0.447E+00 20. 0.306E+00 0.867E-01 0.615E-02 0.130E-02 16 1 15 7 5 14 5 5 3 0.000 0.000 0 355 0 21 00:00:26.58 1.4500A 1.2454 -0.7948 1.1459 0.082 0.55 -0.448E+00 20. 0.305E+00 0.893E-01 0.624E-02 0.128E-02 2 6 19 1 4 8 5 5 3 0.000 0.000 0 356 0 22 00:00:28.03 1.4600A 1.2368 -0.8277 1.1916 0.082 0.52 -0.450E+00 20. 0.305E+00 0.921E-01 0.630E-02 0.126E-02 16 12 2 1 4 8 5 5 3 0.000 0.000 0 357 0 23 00:00:29.49 1.4500A 1.2319 -0.8561 1.2445 0.082 0.57 -0.455E+00 30. 0.305E+00 0.949E-01 0.633E-02 0.123E-02 15 12 3 1 4 8 6 14 2 0.000 0.000 0 358 0 24 00:00:30.94 1.3600A 1.2277 -0.8797 1.3252 0.081 0.53 -0.453E+00 30. 0.304E+00 0.978E-01 0.628E-02 0.118E-02 18 2 4 1 4 8 6 14 3 0.000 0.000 0 359 0 25 00:00:32.30 1.3000A 1.2274 -0.8967 1.3886 0.081 0.51 -0.460E+00 30. 0.304E+00 0.101E+00 0.592E-02 0.109E-02 18 2 4 1 4 8 7 14 3 0.000 0.000 0 360 0 26 00:00:33.60 1.2500A 1.2324 -0.9076 1.4376 0.081 0.50 -0.449E+00 30. 0.304E+00 0.103E+00 0.567E-02 0.101E-02 18 2 5 1 4 8 7 14 4 0.000 0.000 0 361 0 27 00:00:34.85 1.1900A 1.2384 -0.9131 1.5085 0.081 0.49 -0.449E+00 30. 0.305E+00 0.106E+00 0.547E-02 0.949E-03 18 2 5 1 4 8 8 14 4 0.000 0.000 0 362 0 28 00:00:36.04 1.1500A 1.2426 -0.9143 1.5702 0.081 0.49 -0.451E+00 30. 0.305E+00 0.108E+00 0.525E-02 0.885E-03 18 2 5 1 4 8 8 14 4 0.000 0.000 0 363 0 29 00:00:37.19 1.0900A 1.2446 -0.9127 1.6493 0.080 0.49 -0.458E+00 30. 0.305E+00 0.111E+00 0.509E-02 0.829E-03 18 2 5 1 4 8 9 14 4 0.000 0.000 0 364 0 30 00:00:38.28 1.0500A 1.2439 -0.9096 1.7166 0.080 0.49 -0.469E+00 30. 0.305E+00 0.113E+00 0.485E-02 0.762E-03 18 2 5 1 4 8 10 14 4 0.000 0.000 0 365 0 31 00:00:39.33 1.0400A 1.2443 -0.9117 1.7371 0.080 0.49 -0.465E+00 30. 0.306E+00 0.116E+00 0.469E-02 0.708E-03 18 2 6 2 4 9 11 14 4 0.000 0.000 0 366 0 32 00:00:40.37 1.0200A 1.2445 -0.9219 1.7590 0.080 0.49 -0.457E+00 30. 0.306E+00 0.118E+00 0.465E-02 0.676E-03 18 2 6 2 4 9 11 14 5 0.000 0.000 0 367 0 33 00:00:41.39 1.0000A 1.2383 -0.9310 1.7984 0.080 0.49 -0.453E+00 30. 0.307E+00 0.120E+00 0.459E-02 0.643E-03 18 2 6 2 4 9 12 14 5 0.000 0.000 0 368 0 34 00:00:42.39 0.9950A 1.2248 -0.9394 1.8082 0.080 0.55 -0.451E+00 40. 0.307E+00 0.122E+00 0.453E-02 0.609E-03 18 2 6 2 4 9 13 14 5 0.000 0.000 0 369 0 35 00:00:43.39 0.9980A 1.2032 -0.9475 1.8041 0.080 0.56 -0.450E+00 40. 0.308E+00 0.125E+00 0.452E-02 0.581E-03 18 2 6 2 4 9 13 14 5 0.000 0.000 0 370 0 36 00:00:44.39 0.9900A 1.2052 -0.9556 1.8180 0.080 0.56 -0.450E+00 40. 0.308E+00 0.127E+00 0.454E-02 0.560E-03 11 11 3 2 4 9 14 14 5 0.000 0.000 0 371 0 37 00:00:45.38 0.9960A 1.2116 -0.9640 1.8066 0.080 0.56 -0.450E+00 40. 0.309E+00 0.129E+00 0.453E-02 0.535E-03 11 11 4 2 4 9 15 14 5 0.000 0.000 0 372 0 38 00:00:46.37 1.0000A 1.2209 -0.9735 1.7967 0.080 0.56 -0.452E+00 40. 0.310E+00 0.131E+00 0.458E-02 0.516E-03 11 11 4 2 4 9 14 13 6 0.000 0.000 0 373 0 39 00:00:47.37 0.9950A 1.2258 -0.9846 1.8086 0.080 0.00 -0.454E+00 0. 0.310E+00 0.134E+00 0.462E-02 0.498E-03 11 11 4 2 4 9 15 13 6 0.000 0.000 0 374 0 40 00:00:48.37 1.0100A 1.2268 -0.9977 1.7803 0.080 0.00 -0.457E+00 0. 0.311E+00 0.136E+00 0.462E-02 0.474E-03 11 11 5 2 4 9 15 13 6 0.000 0.000 0 375 0 41 00:00:49.38 0.9960A 1.2322 -1.0129 1.8073 0.080 0.00 -0.461E+00 0. 0.312E+00 0.138E+00 0.471E-02 0.457E-03 12 11 5 2 4 9 16 13 6 0.000 0.000 0 376 0 42 00:00:50.37 1.0000A 1.2400 -1.0295 1.7922 0.080 0.00 -0.464E+00 0. 0.313E+00 0.141E+00 0.468E-02 0.433E-03 9 12 0 2 4 9 16 13 7 0.000 0.000 0 377 0 43 00:00:51.37 0.9890A 1.2521 -1.0469 1.8195 0.080 0.00 -0.466E+00 0. 0.314E+00 0.143E+00 0.473E-02 0.415E-03 9 12 1 2 4 9 17 13 7 0.000 0.000 0 378 0 44 00:00:52.36 0.9760A 1.2736 -1.0640 1.8443 0.080 0.00 -0.469E+00 0. 0.315E+00 0.145E+00 0.473E-02 0.394E-03 9 12 1 2 4 9 12 14 6 0.000 0.000 0 379 0 45 00:00:53.34 0.9450A 1.2931 -1.0800 1.9044 0.080 0.00 -0.471E+00 0. 0.316E+00 0.148E+00 0.471E-02 0.374E-03 9 12 2 2 4 9 12 14 6 0.000 0.000 0 380 0 46 00:00:54.28 0.9310A 1.3097 -1.0985 1.9338 0.080 0.00 -0.473E+00 0. 0.317E+00 0.150E+00 0.464E-02 0.350E-03 9 12 2 1 4 9 13 14 6 0.000 0.000 0 381 0 47 00:00:55.22 0.9240A 1.3392 -1.1155 1.9490 0.080 0.00 -0.478E+00 0. 0.318E+00 0.152E+00 0.465E-02 0.333E-03 22 13 10 1 4 9 12 14 6 0.000 0.000 0 382 0 48 00:00:56.14 0.9120A 1.4107 -1.1305 1.9734 0.080 0.00 -0.487E+00 0. 0.318E+00 0.154E+00 0.471E-02 0.323E-03 22 13 10 1 4 9 11 14 6 0.000 0.000 0 383 0 49 00:00:57.05 0.9090A 1.4767 -1.1438 1.9801 0.080 0.00 -0.503E+00 0. 0.319E+00 0.156E+00 0.476E-02 0.316E-03 22 13 11 1 4 9 11 14 6 0.000 0.000 0 384 0 50 00:00:57.96 0.8970A 1.5351 -1.1556 2.0071 0.080 0.00 -0.528E+00 0. 0.320E+00 0.157E+00 0.486E-02 0.310E-03 22 13 11 1 4 9 13 14 7 0.000 0.000 0 385 0 51 00:00:58.86 0.8810A 1.5595 -1.1661 2.0428 0.080 0.00 -0.560E+00 0. 0.321E+00 0.159E+00 0.492E-02 0.304E-03 22 13 12 1 4 9 13 14 7 0.000 0.000 0 386 0 52 00:00:59.74 0.8730A 1.6094 -1.1754 2.0610 0.081 0.00 -0.656E+00 0. 0.321E+00 0.160E+00 0.496E-02 0.297E-03 22 13 12 1 4 9 13 14 7 0.000 0.000 0 387 0 53 00:01:00.61 0.8770A 1.5828 -1.1989 2.0515 0.081 0.00 -0.543E+00 0. 0.322E+00 0.162E+00 0.504E-02 0.294E-03 22 13 12 22 12 9 13 14 7 0.000 0.000 0 388 0 54 00:01:01.49 0.9010A 1.6302 -1.2169 1.9986 0.081 0.00 -0.534E+00 0. 0.322E+00 0.163E+00 0.516E-02 0.295E-03 22 13 13 22 12 9 13 14 7 0.000 0.000 0 389 0 55 00:01:02.39 0.8910A 1.6136 -1.2216 2.0192 0.081 0.00 -0.544E+00 0. 0.323E+00 0.164E+00 0.540E-02 0.305E-03 22 13 13 22 12 9 16 14 8 0.000 0.000 0 390 0 56 00:01:03.28 0.8880A 1.5998 -1.2697 2.0259 0.081 0.00 -0.557E+00 0. 0.323E+00 0.166E+00 0.544E-02 0.308E-03 22 12 14 22 11 10 16 14 8 0.000 0.000 0 391 0 57 00:01:04.17 0.9020A 1.6004 -1.3246 1.9952 0.082 0.00 -0.550E+00 0. 0.323E+00 0.167E+00 0.550E-02 0.316E-03 22 12 14 22 11 10 16 14 8 0.000 0.000 0 392 0 58 00:01:05.07 0.9230A 1.5472 -1.3623 1.9508 0.082 0.00 -0.526E+00 0. 0.323E+00 0.168E+00 0.564E-02 0.330E-03 22 12 15 22 11 10 17 14 8 0.000 0.000 0 393 0 59 00:01:05.99 0.9100A 1.5298 -1.3925 1.9777 0.082 0.00 -0.516E+00 0. 0.323E+00 0.169E+00 0.582E-02 0.348E-03 22 12 15 22 11 10 18 14 9 0.000 0.000 0 394 0 60 00:01:06.90 0.9190A 1.5183 -1.4203 1.9589 0.082 0.00 -0.513E+00 0. 0.323E+00 0.170E+00 0.579E-02 0.356E-03 11 12 8 22 11 10 18 14 9 0.000 0.000 0 395 0 61 00:01:07.82 0.9340A 1.5000 -1.4438 1.9279 0.083 0.00 -0.514E+00 0. 0.324E+00 0.171E+00 0.590E-02 0.371E-03 11 12 9 22 11 10 19 14 9 0.000 0.000 0 396 0 62 00:01:08.76 0.9610A 1.5125 -1.4584 1.8737 0.083 0.00 -0.516E+00 0. 0.323E+00 0.171E+00 0.605E-02 0.389E-03 11 12 9 22 11 10 19 14 9 0.000 0.000 0 397 0 63 00:01:09.72 0.9980A 1.4967 -1.4600 1.8035 0.084 0.00 -0.520E+00 0. 0.323E+00 0.172E+00 0.627E-02 0.410E-03 11 12 9 22 11 10 19 14 9 0.000 0.000 0 398 0 64 00:01:10.72 1.0400A 1.4784 -1.4473 1.7332 0.084 0.00 -0.526E+00 0. 0.323E+00 0.173E+00 0.657E-02 0.434E-03 12 12 10 22 11 10 19 14 9 0.000 0.000 0
Note: See TracChangeset
for help on using the changeset viewer.