Changeset 2375 for palm/trunk/SOURCE


Ignore:
Timestamp:
Aug 29, 2017 2:10:28 PM (7 years ago)
Author:
schwenkel
Message:

improved aerosol initialization for bulk microphysics

Location:
palm/trunk/SOURCE
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/check_parameters.f90

    r2365 r2375  
    2525! -----------------
    2626! $Id$
     27! Added aerosol for bulk microphysics
     28!
     29! 2365 2017-08-21 14:59:59Z kanani
    2730! Vertical grid nesting implemented: Check coupling mode. Generate file header
    2831! (SadiqHuq)
     
    10421045    ENDIF
    10431046!
     1047!-- Check aerosol
     1048    IF ( aerosol_bulk == 'nacl' )  THEN
     1049       aerosol_nacl   = .TRUE.
     1050       aerosol_c3h4o4 = .FALSE.
     1051       aerosol_nh4no3 = .FALSE.
     1052    ELSEIF ( aerosol_bulk == 'c3h4o4' )  THEN
     1053       aerosol_nacl   = .FALSE.
     1054       aerosol_c3h4o4 = .TRUE.
     1055       aerosol_nh4no3 = .FALSE.
     1056    ELSEIF ( aerosol_bulk == 'nh4no3' )  THEN
     1057       aerosol_nacl   = .FALSE.
     1058       aerosol_c3h4o4 = .FALSE.
     1059       aerosol_nh4no3 = .TRUE.
     1060    ELSE
     1061       message_string = 'unknown aerosol ="' // &
     1062                        TRIM( aerosol_bulk ) // '"'
     1063       CALL message( 'check_parameters', 'PA0469', 1, 2, 0, 6, 0 )
     1064    ENDIF
     1065!
    10441066!-- Check whether there are any illegal values
    10451067!-- Pressure solver:
  • palm/trunk/SOURCE/lpm_droplet_collision.f90

    r2312 r2375  
    2020! Current revisions:
    2121! ------------------
    22 !
    23 !
     22! 
     23! 
    2424! Former revisions:
    2525! -----------------
    2626! $Id$
     27! Changed ONLY-dependencies
     28!
     29! 2312 2017-07-14 20:26:51Z hoffmann
    2730! Consideration of aerosol mass during collision. Average impact algorithm has
    2831! been removed.
     
    108111
    109112    USE cloud_parameters,                                                      &
    110         ONLY:  rho_l
     113        ONLY:  rho_l, rho_s
    111114
    112115    USE constants,                                                             &
     
    130133        ONLY:  curvature_solution_effects, dissipation_classes, hall_kernel,   &
    131134               iran_part, number_of_particles, particles, particle_type,       &
    132                prt_count, rho_s, use_kernel_tables, wang_kernel
     135               prt_count, use_kernel_tables, wang_kernel
    133136
    134137    USE random_function_mod,                                                   &
  • palm/trunk/SOURCE/lpm_droplet_condensation.f90

    r2312 r2375  
    2020! Current revisions:
    2121! ------------------
    22 !
    23 !
     22! 
     23! 
    2424! Former revisions:
    2525! -----------------
    2626! $Id$
     27! Changed ONLY-dependencies
     28!
     29! 2312 2017-07-14 20:26:51Z hoffmann
    2730! Rosenbrock scheme improved. Gas-kinetic effect added.
    2831!
     
    115118
    116119    USE cloud_parameters,                                                      &
    117         ONLY:  l_d_rv, l_v, rho_l, r_v
     120        ONLY:  l_d_rv, l_v, molecular_weight_of_solute,                        &
     121               molecular_weight_of_water, rho_l, rho_s, r_v, vanthoff
    118122
    119123    USE constants,                                                             &
     
    135139
    136140    USE particle_attributes,                                                   &
    137         ONLY:  curvature_solution_effects, hall_kernel,                        &
    138                molecular_weight_of_solute, molecular_weight_of_water,          &
    139                number_of_particles, particles, radius_classes, rho_s,          &
    140                use_kernel_tables, vanthoff, wang_kernel
     141        ONLY:  curvature_solution_effects, hall_kernel, number_of_particles,   &
     142               particles, radius_classes, use_kernel_tables, wang_kernel
    141143
    142144    IMPLICIT NONE
  • palm/trunk/SOURCE/lpm_init.f90

    r2346 r2375  
    2525! -----------------
    2626! $Id$
     27! Initialization of chemical aerosol composition
     28!
     29! 2346 2017-08-09 16:39:17Z suehring
    2730! Bugfix, correct determination of topography top index
    2831!
     
    970973
    971974    USE cloud_parameters,                                                      &
    972         ONLY: l_d_rv, rho_l, r_v
     975        ONLY: l_d_rv, molecular_weight_of_solute,                              &
     976              molecular_weight_of_water, rho_l, r_v, rho_s, vanthoff
    973977
    974978    USE constants,                                                             &
     
    978982
    979983    USE particle_attributes,                                                   &
    980         ONLY: aero_type, aero_weight, log_sigma, molecular_weight_of_solute,   &
    981               molecular_weight_of_water, na, rho_s, rm, vanthoff
     984        ONLY: aero_species, aero_type, aero_weight, log_sigma, na, rm
    982985
    983986    IMPLICIT NONE
     
    10031006    INTEGER(iwp)  :: kp             !<
    10041007
     1008!
     1009!-- Set constants for different aerosol species
     1010    IF ( TRIM(aero_species) .EQ. 'nacl' ) THEN
     1011       molecular_weight_of_solute = 0.05844_wp
     1012       rho_s                      = 2165.0_wp
     1013       vanthoff                   = 2.0_wp
     1014    ELSEIF ( TRIM(aero_species) .EQ. 'c3h4o4' ) THEN
     1015       molecular_weight_of_solute = 0.10406_wp
     1016       rho_s                      = 1600.0_wp
     1017       vanthoff                   = 1.37_wp
     1018    ELSEIF ( TRIM(aero_species) .EQ. 'nh4o3' ) THEN
     1019       molecular_weight_of_solute = 0.08004_wp
     1020       rho_s                      = 1720.0_wp
     1021       vanthoff                   = 2.31_wp
     1022    ELSE
     1023       WRITE( message_string, * ) 'unknown aerosol species ',   &
     1024                                'aero_species = "', TRIM( aero_species ), '"'
     1025       CALL message( 'lpm_init', 'PA0470', 1, 2, 0, 6, 0 )
     1026    ENDIF
    10051027!
    10061028!-- The following typical aerosol spectra are taken from Jaenicke (1993):
  • palm/trunk/SOURCE/microphysics_mod.f90

    r2318 r2375  
    2525! -----------------
    2626! $Id$
     27! Improved aerosol initilization and some minor bugfixes
     28! for droplet sedimenation
     29!
     30! 2318 2017-07-20 17:27:44Z suehring
    2731! Get topography top index via Function call
    2832!
     
    188192    REAL(wp) ::  xrmax = 5.0E-6_wp         !< maximum rain drop site (kg)
    189193
    190     REAL(wp) ::  c_sedimentation = 2.0_wp  !< Courant number of sedimentation process
    191     REAL(wp) ::  dpirho_l                  !< 6.0 / ( pi * rho_l )
    192     REAL(wp) ::  dt_micro                  !< microphysics time step
    193     REAL(wp) ::  na_init = 100.0E6_wp      !< Total particle/aerosol concentration (cm-3)
    194     REAL(wp) ::  nc_const = 70.0E6_wp      !< cloud droplet concentration
    195     REAL(wp) ::  dt_precipitation = 100.0_wp !< timestep precipitation (s)
    196     REAL(wp) ::  sed_qc_const              !< const. for sedimentation of cloud water
    197     REAL(wp) ::  pirho_l                   !< pi * rho_l / 6.0;
     194    REAL(wp) ::  c_sedimentation = 2.0_wp        !< Courant number of sedimentation process
     195    REAL(wp) ::  dpirho_l                        !< 6.0 / ( pi * rho_l )
     196    REAL(wp) ::  dry_aerosol_radius = 0.05E-6_wp !< dry aerosol radius
     197    REAL(wp) ::  dt_micro                        !< microphysics time step
     198    REAL(wp) ::  sigma_bulk = 2.0_wp             !< width of aerosol spectrum
     199    REAL(wp) ::  na_init = 100.0E6_wp            !< Total particle/aerosol concentration (cm-3)
     200    REAL(wp) ::  nc_const = 70.0E6_wp            !< cloud droplet concentration
     201    REAL(wp) ::  dt_precipitation = 100.0_wp     !< timestep precipitation (s)
     202    REAL(wp) ::  sed_qc_const                    !< const. for sedimentation of cloud water
     203    REAL(wp) ::  pirho_l                         !< pi * rho_l / 6.0;
    198204
    199205    REAL(wp), DIMENSION(:), ALLOCATABLE ::  nc_1d  !<
     
    210216
    211217    PUBLIC cloud_water_sedimentation, collision_turbulence,                    &
    212            curvature_solution_effects_bulk, c_sedimentation, dt_precipitation, &
    213            limiter_sedimentation, na_init, nc_const, sigma_gc,                 &
     218           curvature_solution_effects_bulk, c_sedimentation,                   &
     219           dry_aerosol_radius, dt_precipitation,                               &
     220           limiter_sedimentation, na_init, nc_const, sigma_gc, sigma_bulk,     &
    214221           ventilation_effect
    215222
     
    290297
    291298       USE cloud_parameters,                                                   &
    292            ONLY:  rho_l
     299           ONLY:  molecular_weight_of_solute, rho_l, rho_s, vanthoff
    293300
    294301       USE control_parameters,                                                 &
    295            ONLY:  microphysics_morrison, microphysics_seifert
     302           ONLY:  aerosol_nacl, aerosol_c3h4o4 , aerosol_nh4no3,               &
     303                  microphysics_morrison, microphysics_seifert
    296304
    297305       USE indices,                                                            &
     
    313321       ENDIF
    314322
     323!
     324!--    Set constants for certain aerosol type
     325       IF ( microphysics_morrison )  THEN
     326          IF ( aerosol_nacl ) THEN
     327             molecular_weight_of_solute = 0.05844_wp
     328             rho_s                      = 2165.0_wp
     329             vanthoff                   = 2.0_wp
     330          ELSEIF ( aerosol_c3h4o4 ) THEN
     331             molecular_weight_of_solute = 0.10406_wp
     332             rho_s                      = 1600.0_wp
     333             vanthoff                   = 1.37_wp
     334          ELSEIF ( aerosol_nh4no3 ) THEN
     335             molecular_weight_of_solute = 0.08004_wp
     336             rho_s                      = 1720.0_wp
     337             vanthoff                   = 2.31_wp
     338          ENDIF
     339       ENDIF
     340 
    315341!
    316342!--    Pre-calculate frequently calculated fractions of pi and rho_l
     
    509535
    510536       USE cloud_parameters,                                                   &
    511            ONLY:  hyrho, l_d_cp, l_d_r, l_v, rho_l, r_v, t_d_pt
     537           ONLY:  hyrho, l_d_cp, l_d_r, l_v, molecular_weight_of_solute,       &
     538                  molecular_weight_of_water, rho_l, rho_s, r_v, t_d_pt,        &
     539                  vanthoff
    512540
    513541       USE constants,                                                          &
     
    524552       USE control_parameters,                                                 &
    525553          ONLY: simulated_time
    526 
    527        USE particle_attributes,                                                &
    528           ONLY:  molecular_weight_of_solute, molecular_weight_of_water, rho_s, &
    529               log_sigma, vanthoff
    530554
    531555       IMPLICIT NONE
     
    545569       REAL(wp)     ::  n_ccn             !<
    546570       REAL(wp)     ::  q_s               !<
    547        REAL(wp)     ::  rd0               !<
    548571       REAL(wp)     ::  s_0               !<
    549572       REAL(wp)     ::  sat               !<
    550573       REAL(wp)     ::  sat_max           !<
    551574       REAL(wp)     ::  sigma             !<
     575       REAL(wp)     ::  sigma_act         !<
    552576       REAL(wp)     ::  t_int             !<
    553577       REAL(wp)     ::  t_l               !<
     
    616640!
    617641!--                Prescribe power index that describes the soluble fraction
    618 !--                of an aerosol particle (beta) and mean geometric radius of
    619 !--                dry aerosol spectrum
     642!--                of an aerosol particle (beta)
    620643!--                (see: Morrison + Grabowski, 2007, JAS, 64)
    621                    beta_act = 0.5_wp
    622                    rd0      = 0.05E-6_wp
     644                   beta_act  = 0.5_wp
     645                   sigma_act = sigma_bulk**( 1.0_wp + beta_act )
    623646!
    624647!--                Calculate mean geometric supersaturation (s_0) with
    625648!--                parameterization by Khvorostyanov and Curry (2006)
    626                    s_0   = rd0 **(- ( 1.0_wp + beta_act ) ) *                  &
     649                   s_0   = dry_aerosol_radius **(- ( 1.0_wp + beta_act ) ) *    &
    627650                       ( 4.0_wp * afactor**3 / ( 27.0_wp * bfactor ) )**0.5_wp
    628651
     
    632655!--                (see: Khvorostyanov + Curry, 2006, J. Geo. Res., 111)
    633656                   n_ccn = ( na_init / 2.0_wp ) * ( 1.0_wp - ERF(              &
    634                       LOG( s_0 / sat ) / ( SQRT(2.0_wp) * log_sigma(1) ) ) )
     657                      LOG( s_0 / sat ) / ( SQRT(2.0_wp) * LOG(sigma_act) ) ) )
    635658                   activ = MAX( ( n_ccn - nc(k,j,i) ) / dt_micro, 0.0_wp )
    636659                ENDIF
     
    13571380
    13581381       sed_qc(nzt+1) = 0.0_wp
     1382       sed_nc(nzt+1) = 0.0_wp
    13591383
    13601384       DO  i = nxlg, nxrg
     
    13861410                ENDIF
    13871411
    1388                 IF ( qc(k,j,i) > eps_sb )  THEN
     1412                IF ( qc(k,j,i) > eps_sb .AND.  nc_sedi > eps_mr )  THEN
    13891413                   sed_qc(k) = sed_qc_const * nc_sedi**( -2.0_wp / 3.0_wp ) *  &
    13901414                               ( qc(k,j,i) * hyrho(k) )**( 5.0_wp / 3.0_wp ) * &
     
    19481972
    19491973       USE cloud_parameters,                                                   &
    1950            ONLY:  hyrho, l_d_cp, l_d_r, l_v, rho_l, r_v, t_d_pt
     1974           ONLY:  hyrho, l_d_cp, l_d_r, l_v, molecular_weight_of_solute,       &
     1975                  molecular_weight_of_water, rho_l, rho_s, r_v, t_d_pt,        &
     1976                  vanthoff
    19511977
    19521978       USE constants,                                                          &
     
    19631989       USE control_parameters,                                                 &
    19641990          ONLY: simulated_time
    1965 
    1966        USE particle_attributes,                                                &
    1967           ONLY:  molecular_weight_of_solute, molecular_weight_of_water, rho_s, &
    1968               log_sigma, vanthoff
    19691991
    19701992       IMPLICIT NONE
     
    19842006       REAL(wp)     ::  n_ccn             !<
    19852007       REAL(wp)     ::  q_s               !<
    1986        REAL(wp)     ::  rd0               !<
    19872008       REAL(wp)     ::  s_0               !<
    19882009       REAL(wp)     ::  sat               !<
    19892010       REAL(wp)     ::  sat_max           !<
    19902011       REAL(wp)     ::  sigma             !<
     2012       REAL(wp)     ::  sigma_act         !<
    19912013       REAL(wp)     ::  t_int             !<
    19922014       REAL(wp)     ::  t_l               !<
     
    20522074!
    20532075!--          Prescribe power index that describes the soluble fraction
    2054 !--          of an aerosol particle (beta) and mean geometric radius of
    2055 !--          dry aerosol spectrum
     2076!--          of an aerosol particle (beta).
    20562077!--          (see: Morrison + Grabowski, 2007, JAS, 64)
    2057              beta_act = 0.5_wp
    2058              rd0      = 0.05E-6_wp
     2078             beta_act  = 0.5_wp
     2079             sigma_act = sigma_bulk**( 1.0_wp + beta_act )
    20592080!
    20602081!--          Calculate mean geometric supersaturation (s_0) with
    20612082!--          parameterization by Khvorostyanov and Curry (2006)
    2062              s_0   = rd0 **(- ( 1.0_wp + beta_act ) ) *                        &
     2083             s_0   = dry_aerosol_radius **(- ( 1.0_wp + beta_act ) ) *         &
    20632084               ( 4.0_wp * afactor**3 / ( 27.0_wp * bfactor ) )**0.5_wp
    20642085
     
    20672088!--          supersaturation and taking Koehler theory into account
    20682089!--          (see: Khvorostyanov + Curry, 2006, J. Geo. Res., 111)
    2069              n_ccn = ( na_init / 2.0_wp ) * ( 1.0_wp - ERF(                     &
    2070                 LOG( s_0 / sat ) / ( SQRT(2.0_wp) * log_sigma(1) ) ) )
     2090             n_ccn = ( na_init / 2.0_wp ) * ( 1.0_wp - ERF(                    &
     2091                LOG( s_0 / sat ) / ( SQRT(2.0_wp) * LOG(sigma_act) ) ) )
    20712092             activ = MAX( ( n_ccn ) / dt_micro, 0.0_wp )
    20722093
     
    27092730
    27102731       sed_qc(nzt+1) = 0.0_wp
     2732       sed_nc(nzt+1) = 0.0_wp
     2733
    27112734
    27122735       DO  k = nzt, nzb+1, -1
     
    27352758          ENDIF
    27362759
    2737           IF ( qc_1d(k) > eps_sb )  THEN
     2760          IF ( qc_1d(k) > eps_sb  .AND.  nc_sedi > eps_mr )  THEN
    27382761             sed_qc(k) = sed_qc_const * nc_sedi**( -2.0_wp / 3.0_wp ) *        &
    27392762                         ( qc_1d(k) * hyrho(k) )**( 5.0_wp / 3.0_wp )  * flag
  • palm/trunk/SOURCE/mod_particle_attributes.f90

    r2312 r2375  
    2020! Current revisions:
    2121! ------------------
    22 !
    23 !
     22! 
     23! 
    2424! Former revisions:
    2525! -----------------
    2626! $Id$
     27! molecular_weight_of_solute, molecular_weight_of_water, vanthoff removed and
     28! added in modules. Parameters are also used in bulk-microphysics.
     29!
     30! 2312 2017-07-14 20:26:51Z hoffmann
    2731! Aerosol initialization improved.
    2832!
     
    9599    USE kinds
    96100
    97     CHARACTER(LEN=15) ::  aero_type = 'maritime'                   !< aerosol type
    98     CHARACTER(LEN=15) ::  bc_par_lr = 'cyclic'                     !< left/right boundary condition
    99     CHARACTER(LEN=15) ::  bc_par_ns = 'cyclic'                     !< north/south boundary condition
    100     CHARACTER(LEN=15) ::  bc_par_b  = 'reflect'                    !< bottom boundary condition
    101     CHARACTER(LEN=15) ::  bc_par_t  = 'absorb'                     !< top boundary condition
    102     CHARACTER(LEN=15) ::  collision_kernel = 'none'                !< collision kernel
     101    CHARACTER(LEN=15) ::  aero_species = 'nacl'                    !< aerosol species
     102    CHARACTER(LEN=15) ::  aero_type    = 'maritime'                !< aerosol type
     103    CHARACTER(LEN=15) ::  bc_par_lr    = 'cyclic'                  !< left/right boundary condition
     104    CHARACTER(LEN=15) ::  bc_par_ns    = 'cyclic'                  !< north/south boundary condition
     105    CHARACTER(LEN=15) ::  bc_par_b     = 'reflect'                 !< bottom boundary condition
     106    CHARACTER(LEN=15) ::  bc_par_t     = 'absorb'                  !< top boundary condition
     107    CHARACTER(LEN=15) ::  collision_kernel   = 'none'              !< collision kernel
    103108    CHARACTER(LEN=5)  ::  splitting_function = 'gamma'             !< function for calculation critical weighting factor
    104     CHARACTER(LEN=5)  ::  splitting_mode = 'const'                 !< splitting mode
     109    CHARACTER(LEN=5)  ::  splitting_mode     = 'const'             !< splitting mode
    105110
    106111    INTEGER(iwp) ::  deleted_particles = 0                        !< number of deleted particles per time step
     
    172177    REAL(wp) ::  initial_weighting_factor = 1.0_wp         !< namelist parameter (see documentation)
    173178    REAL(wp) ::  log_sigma(3) = 1.0_wp                     !< namelist parameter (see documentation)
    174     REAL(wp) ::  molecular_weight_of_solute = 0.05844_wp   !< mol. m. NaCl (kg mol-1)
    175     REAL(wp) ::  molecular_weight_of_water = 0.01801528_wp !< mol. m. H2O (kg mol-1)
    176179    REAL(wp) ::  na(3) = 0.0_wp                            !< namelist parameter (see documentation)
    177180    REAL(wp) ::  number_concentration = -1.0_wp            !< namelist parameter (see documentation)
     
    179182    REAL(wp) ::  radius_merge = 1.0E-7_wp                  !< namelist parameter (see documentation)
    180183    REAL(wp) ::  radius_split = 40.0E-6_wp                 !< namelist parameter (see documentation)
    181     REAL(wp) ::  rho_s = 2165.0_wp                         !< density of NaCl (kg m-3)
    182184    REAL(wp) ::  rm(3) = 1.0E-6_wp                         !< namelist parameter (see documentation)
    183185    REAL(wp) ::  sgs_wf_part                               !< parameter for sgs
    184186    REAL(wp) ::  time_prel = 0.0_wp                        !< time for particle release
    185187    REAL(wp) ::  time_write_particle_data = 0.0_wp         !< write particle data at current time on file
    186     REAL(wp) ::  vanthoff = 2.0_wp                         !< van't Hoff factor for NaCl
    187188    REAL(wp) ::  weight_factor_merge = -1.0_wp             !< namelist parameter (see documentation)
    188189    REAL(wp) ::  weight_factor_split = -1.0_wp             !< namelist parameter (see documentation)
  • palm/trunk/SOURCE/modules.f90

    r2372 r2375  
    2525! -----------------
    2626! $Id$
     27! Moved mass_of_solute, molecular_weight_of_solute, molecular_weight_of_water,
     28! vanthoff back from particle attributes because they can now also be used in
     29! bulk microphysics.
     30! Added aerosol_bulk, aerosol_nacl, aerosol_c3h4o4, aerosol_nh4no3
     31!
     32! 2372 2017-08-25 12:37:32Z sward
    2733! y_shift namelist parameter added
    2834!
     
    878884    USE kinds
    879885
    880     REAL(wp) ::  cp = 1005.0_wp         !< heat capacity of dry air (J kg-1 K-1)
    881     REAL(wp) ::  l_v = 2.5E+06_wp       !< latent heat of vaporization (J kg-1)
    882     REAL(wp) ::  l_d_cp                 !< l_v / cp
    883     REAL(wp) ::  l_d_r                  !< l_v / r_d
    884     REAL(wp) ::  l_d_rv                 !< l_v / r_v   
    885     REAL(wp) ::  rho_l = 1.0E3_wp       !< density of water (kg m-3)
    886     REAL(wp) ::  r_d = 287.0_wp         !< sp. gas const. dry air (J kg-1 K-1)
    887     REAL(wp) ::  r_v = 461.51_wp        !< sp. gas const. water vapor (J kg-1 K-1)
     886    REAL(wp) ::  cp = 1005.0_wp                            !< heat capacity of dry air (J kg-1 K-1)
     887    REAL(wp) ::  l_v = 2.5E+06_wp                          !< latent heat of vaporization (J kg-1)
     888    REAL(wp) ::  l_d_cp                                    !< l_v / cp
     889    REAL(wp) ::  l_d_r                                     !< l_v / r_d
     890    REAL(wp) ::  l_d_rv                                    !< l_v / r_v   
     891    REAL(wp) ::  molecular_weight_of_solute = 0.05844_wp   !< mol. m. NaCl (kg mol-1)
     892    REAL(wp) ::  molecular_weight_of_water = 0.01801528_wp !< mol. m. H2O (kg mol-1)
     893    REAL(wp) ::  rho_l = 1.0E3_wp                          !< density of water (kg m-3)
     894    REAL(wp) ::  rho_s = 2165.0_wp                         !< density of NaCl (kg m-3)
     895    REAL(wp) ::  r_d = 287.0_wp                            !< sp. gas const. dry air (J kg-1 K-1)
     896    REAL(wp) ::  r_v = 461.51_wp                           !< sp. gas const. water vapor (J kg-1 K-1)
     897    REAL(wp) ::  vanthoff = 2.0_wp                         !< van't Hoff factor for NaCl
     898
    888899
    889900
     
    974985    CHARACTER (LEN=20)   ::  bc_uv_b = 'dirichlet'                        !< namelist parameter
    975986    CHARACTER (LEN=20)   ::  bc_uv_t = 'dirichlet'                        !< namelist parameter
     987    CHARACTER (LEN=20)   ::  aerosol_bulk = 'nacl'                        !< namelist parameter
    976988    CHARACTER (LEN=20)   ::  cloud_scheme = 'saturation_adjust'           !< namelist parameter
    977989    CHARACTER (LEN=20)   ::  coupling_mode = 'uncoupled'                  !< coupling mode for atmosphere-ocean coupling 
     
    11191131    INTEGER(iwp), DIMENSION(:,:), ALLOCATABLE ::  mask_k_global  !< global grid index of masked output point on z-dimension
    11201132
     1133    LOGICAL ::  aerosol_nacl =.TRUE.                         !< nacl aerosol for bulk scheme
     1134    LOGICAL ::  aerosol_c3h4o4 =.FALSE.                      !< malonic acid aerosol for bulk scheme
     1135    LOGICAL ::  aerosol_nh4no3 =.FALSE.                      !< malonic acid aerosol for bulk scheme
    11211136    LOGICAL ::  bc_lr_cyc =.TRUE.                            !< left-right boundary condition cyclic?
    11221137    LOGICAL ::  bc_lr_dirrad = .FALSE.                       !< left-right boundary condition dirichlet/radiation?
  • palm/trunk/SOURCE/package_parin.f90

    r2312 r2375  
    2020! Current revisions:
    2121! -----------------
    22 !
    23 !
     22! 
     23! 
    2424! Former revisions:
    2525! -----------------
    2626! $Id$
     27! Added aerosol_species
     28!
     29! 2312 2017-07-14 20:26:51Z hoffmann
    2730! Aerosol initialization improved.
    2831!
     
    168171
    169172    USE particle_attributes,                                                   &
    170         ONLY:  aero_type, aero_weight, alloc_factor, bc_par_b, bc_par_lr,      &
    171                bc_par_ns, bc_par_t, collision_kernel,                          &
     173        ONLY:  aero_species, aero_type, aero_weight, alloc_factor, bc_par_b,   &
     174               bc_par_lr, bc_par_ns, bc_par_t, collision_kernel,               &
    172175               curvature_solution_effects, deallocate_memory, density_ratio,   &
    173176               dissipation_classes, dt_min_part, dt_prel,                      &
     
    209212                                  vc_size_y, vc_size_z
    210213
    211     NAMELIST /particles_par/      aero_type, aero_weight, alloc_factor,        &
    212                                   bc_par_b, bc_par_lr,                         &
     214    NAMELIST /particles_par/      aero_species, aero_type, aero_weight,        &
     215                                  alloc_factor, bc_par_b, bc_par_lr,           &
    213216                                  bc_par_ns, bc_par_t,                         &
    214217                                  collision_kernel, curvature_solution_effects,&
  • palm/trunk/SOURCE/parin.f90

    r2372 r2375  
    2525! -----------------
    2626! $Id$
     27! Added aerosol initialization for bulk microphysics
     28!
     29! 2372 2017-08-25 12:37:32Z sward
    2730! y_shift added to namelist
    2831!
     
    323326        ONLY:  c_sedimentation, cloud_water_sedimentation,                     &
    324327               collision_turbulence, curvature_solution_effects_bulk,          &
    325                limiter_sedimentation ,na_init, nc_const, ventilation_effect
     328               dry_aerosol_radius, limiter_sedimentation, na_init, nc_const,   &
     329               sigma_bulk, ventilation_effect
     330
    326331
    327332    USE model_1d_mod,                                                          &
     
    369374
    370375
    371     NAMELIST /inipar/  alpha_surface, approximation, bc_e_b, bc_lr,            &
    372                        bc_ns, bc_p_b, bc_p_t, bc_pt_b, bc_pt_t, bc_q_b,        &
     376    NAMELIST /inipar/  aerosol_bulk, alpha_surface, approximation, bc_e_b,     &
     377                       bc_lr, bc_ns, bc_p_b, bc_p_t, bc_pt_b, bc_pt_t, bc_q_b, &
    373378             bc_q_t,bc_s_b, bc_s_t, bc_sa_t, bc_uv_b, bc_uv_t,                 &
    374379             bottom_salinityflux, building_height, building_length_x,          &
     
    386391             data_output_during_spinup,                                        &
    387392             dissipation_1d,                                                   &
    388              dp_external, dp_level_b, dp_smooth, dpdxy,                        &
     393             dp_external, dp_level_b, dp_smooth, dpdxy, dry_aerosol_radius,    &
    389394             dt, dt_pr_1d, dt_run_control_1d, dt_spinup, dx, dy, dz, dz_max,   &
    390395             dz_stretch_factor, dz_stretch_level, end_time_1d,                 &
     
    413418             roughness_length, sa_surface,                                     &
    414419             sa_vertical_gradient, sa_vertical_gradient_level, scalar_advec,   &
    415              scalar_rayleigh_damping,                                          &
     420             scalar_rayleigh_damping, sigma_bulk,                              &
    416421             spinup_time, spinup_pt_amplitude, spinup_pt_mean,                 &
    417422             statistic_regions, subs_vertical_gradient,                        &
Note: See TracChangeset for help on using the changeset viewer.