Index: palm/trunk/SOURCE/Makefile
===================================================================
--- palm/trunk/SOURCE/Makefile	(revision 1867)
+++ palm/trunk/SOURCE/Makefile	(revision 1871)
@@ -20,5 +20,5 @@
 # Current revisions:
 # ------------------
-# 
+# dependencies for package_parin corrected
 # 
 # Former revisions:
@@ -399,5 +399,6 @@
 data_output_3d.o: modules.o cpulog_mod.o mod_kinds.o mod_particle_attributes.o\
    netcdf_interface_mod.o land_surface_model_mod.o
-diffusion_e_mod.o: modules.o mod_kinds.o microphysics_mod.o
+diffusion_e_mod.o: modules.o mod_kinds.o microphysics_mod.o \
+   mod_particle_attributes.o
 diffusion_s_mod.o: modules.o mod_kinds.o
 diffusion_u_mod.o: modules.o mod_kinds.o wall_fluxes_mod.o
@@ -423,5 +424,5 @@
    lpm_init_mod.o ls_forcing_mod.o netcdf_interface_mod.o plant_canopy_model_mod.o \
    radiation_model_mod.o random_function_mod.o random_generator_parallel_mod.o \
-   surface_layer_fluxes_mod.o microphysics_mod.o
+   surface_layer_fluxes_mod.o microphysics_mod.o mod_particle_attributes.o
 init_advec.o: modules.o mod_kinds.o
 init_cloud_physics.o: modules.o mod_kinds.o
@@ -475,5 +476,5 @@
    land_surface_model_mod.o spectra_mod.o
 nudging_mod.o: modules.o cpulog_mod.o mod_kinds.o
-package_parin.o: modules.o mod_kinds.o
+package_parin.o: modules.o mod_kinds.o mod_particle_attributes.o
 palm.o: modules.o cpulog_mod.o ls_forcing_mod.o mod_kinds.o nudging_mod.o\
 	pmc_interface_mod.o surface_layer_fluxes_mod.o
Index: palm/trunk/SOURCE/lpm_droplet_condensation.f90
===================================================================
--- palm/trunk/SOURCE/lpm_droplet_condensation.f90	(revision 1867)
+++ palm/trunk/SOURCE/lpm_droplet_condensation.f90	(revision 1871)
@@ -19,10 +19,9 @@
 ! Current revisions:
 ! ------------------
-!
+! Initialization of aerosols added.
 ! 
 ! Former revisions:
 ! -----------------
 ! $Id$
-!
 ! 
 ! 1849 2016-04-08 11:33:18Z hoffmann
@@ -121,7 +120,7 @@
 
     USE particle_attributes,                                                   &
-        ONLY:  curvature_solution_effects, hall_kernel, mass_of_solute,        &
+        ONLY:  curvature_solution_effects, hall_kernel,                        &
                molecular_weight_of_solute, molecular_weight_of_water,          &
-               number_of_particles, particles, radius_classes,                 &
+               number_of_particles, particles, radius_classes, rho_s,          &
                use_kernel_tables, vanthoff, wang_kernel
 
@@ -140,5 +139,5 @@
     INTEGER(iwp) :: ros_count                  !<
  
-    INTEGER(iwp), PARAMETER ::  maxtry = 40    !<
+    INTEGER(iwp), PARAMETER ::  maxtry = 100   !<
 
     LOGICAL ::  repeat                         !<
@@ -195,4 +194,5 @@
     REAL(wp), PARAMETER ::  e3 = 0.0_wp                !<
     REAL(wp), PARAMETER ::  e4 = 125.0_wp / 108.0_wp   !<
+    REAL(wp), PARAMETER ::  eps_ros = 1.0E-3_wp        !< accuracy of Rosenbrock method
     REAL(wp), PARAMETER ::  gam = 0.5_wp               !<
     REAL(wp), PARAMETER ::  grow = 1.5_wp              !<
@@ -200,5 +200,4 @@
     REAL(wp), PARAMETER ::  pshrnk = -1.0_wp /3.0_wp   !<
     REAL(wp), PARAMETER ::  shrnk = 0.5_wp             !<
-    REAL(wp), PARAMETER ::  eps_ros = 1.0E-4_wp        !< accuracy of Rosenbrock method
 
 !
@@ -311,10 +310,8 @@
              afactor = 2.0_wp * sigma / ( rho_l * r_v * t_int )
 !
-!--          Solute effect (bfactor), mass of solute to be replaced by variable
-!--          aerosol radius
-             bfactor = 3.0_wp * vanthoff * mass_of_solute *                     &
-                       molecular_weight_of_water / ( 4.0_wp * pi * rho_l *      &
-                                                     molecular_weight_of_solute &
-                                                   )
+!--          Solute effect (bfactor)
+             bfactor = vanthoff * rho_s * particles(n)%rvar2**3 *              &
+                       molecular_weight_of_water /                             &
+                       ( rho_l * molecular_weight_of_solute )
 
              r_ros = particles(n)%radius
@@ -326,10 +323,11 @@
 
 !
-!--          Internal time step should not be > 1.0E-2 in case of evaporation
-!--          because larger values may lead to secondary solutions which are
-!--          physically unlikely
-             IF ( dt_ros_next > 1.0E-2_wp  .AND.  e_a / e_s < 1.0_wp )  THEN
+!--          Internal time step should not be > 1.0E-2 and < 1.0E-6 
+             IF ( dt_ros_next > 1.0E-2_wp )  THEN
                 dt_ros_next = 1.0E-3_wp
+             ELSEIF ( dt_ros_next < 1.0E-6_wp )  THEN
+                dt_ros_next = 1.0E-6_wp
              ENDIF
+
 !
 !--          If calculation of Rosenbrock method is repeated due to unreasonalble
@@ -337,5 +335,5 @@
 !--          reduced
              IF ( ros_count > 1 )  THEN
-                dt_ros_next = dt_ros_next - ( 0.2_wp * dt_ros_next )
+                dt_ros_next = dt_ros_next * 0.1_wp
              ELSEIF ( ros_count > 5 )  THEN
 !
@@ -349,4 +347,5 @@
 !--          Internal time step must not be larger than PALM time step
              dt_ros = MIN( dt_ros_next, dt_3d )
+
 !
 !--          Integrate growth equation in time unless PALM time step is reached
@@ -364,5 +363,5 @@
                 drdt_ini       = drdt
                 dt_ros_sum_ini = dt_ros_sum
-                r_ros_ini      = r_ros
+                r_ros_ini      = MAX( r_ros, particles(n)%rvar2 )
 
 !
@@ -378,5 +377,5 @@
 
                    IF ( jtry == maxtry+1 )  THEN
-                      message_string = 'maxtry > 40 in Rosenbrock method'
+                      message_string = 'maxtry > 100 in Rosenbrock method'
                       CALL message( 'lpm_droplet_condensation', 'PA0347', 2,   &
                                     2, 0, 6, 0 )
@@ -385,5 +384,5 @@
                    aa    = 1.0_wp / ( gam * dt_ros ) - d2rdtdr
                    g1    = drdt_ini / aa
-                   r_ros = r_ros_ini + a21 * g1
+                   r_ros = MAX( r_ros_ini + a21 * g1, particles(n)%rvar2 )
                    drdt  = ddenom * ventilation_effect(n) * ( e_a / e_s - 1.0_wp - &
                                                               afactor / r_ros +    &
@@ -393,5 +392,5 @@
                    g2    = ( drdt + c21 * g1 / dt_ros )&
                            / aa
-                   r_ros = r_ros_ini + a31 * g1 + a32 * g2
+                   r_ros = MAX( r_ros_ini + a31 * g1 + a32 * g2, particles(n)%rvar2 )
                    drdt  = ddenom * ventilation_effect(n) * ( e_a / e_s - 1.0_wp - &
                                                               afactor / r_ros +    &
@@ -403,5 +402,6 @@
                    g4    = ( drdt +  &
                              ( c41 * g1 + c42 * g2 + c43 * g3 ) / dt_ros ) / aa
-                   r_ros = r_ros_ini + b1 * g1 + b2 * g2 + b3 * g3 + b4 * g4
+                   r_ros = MAX( r_ros_ini + b1 * g1 + b2 * g2 + b3 * g3 +      &
+                                b4 * g4, particles(n)%rvar2 )
 
                    dt_ros_sum = dt_ros_sum_ini + dt_ros
@@ -451,9 +451,8 @@
              particles(n)%rvar1 = dt_ros_next
 
-             new_r(n) = r_ros
 !
 !--          Radius should not fall below 1E-8 because Rosenbrock method may
 !--          lead to errors otherwise
-             new_r(n) = MAX( new_r(n), 1.0E-8_wp )
+             new_r(n) = MAX( r_ros, particles(n)%rvar2 )
 !
 !--          Check if calculated droplet radius change is reasonable since in
Index: palm/trunk/SOURCE/lpm_init_mod.f90
===================================================================
--- palm/trunk/SOURCE/lpm_init_mod.f90	(revision 1867)
+++ palm/trunk/SOURCE/lpm_init_mod.f90	(revision 1871)
@@ -19,5 +19,5 @@
 ! Current revisions:
 ! -----------------
-! 
+! Initialization of aerosols added.
 ! 
 ! Former revisions:
@@ -509,4 +509,7 @@
         ONLY: lpm_pack_all_arrays
 
+    USE particle_attributes,                                                   &
+        ONLY: monodisperse_aerosols
+
     IMPLICIT  NONE
 
@@ -581,7 +584,7 @@
 !--                            Initial values (internal timesteps, derivative)
 !--                            for Rosenbrock method
-                               tmp_particle%rvar1      = 1.0E-12_wp
-                               tmp_particle%rvar2      = 1.0E-3_wp
-                               tmp_particle%rvar3      = -9999999.9_wp
+                               tmp_particle%rvar1      = 1.0E-6_wp     !last Rosenbrock timestep
+                               tmp_particle%rvar2      = 0.1E-6_wp     !dry aerosol radius
+                               tmp_particle%rvar3      = -9999999.9_wp !unused
                             ELSE
 !
@@ -686,4 +689,11 @@
     local_start = prt_count+1
     prt_count   = local_count
+
+!
+!-- Initialize aerosol background spectrum
+    IF ( curvature_solution_effects  .AND.  .NOT. monodisperse_aerosols )  THEN
+       CALL lpm_init_aerosols(local_start)
+    ENDIF
+
 !
 !-- Add random fluctuation to particle positions
@@ -759,3 +769,235 @@
  END SUBROUTINE lpm_create_particle
 
+ SUBROUTINE lpm_init_aerosols(local_start)
+
+    USE arrays_3d,                                                             &
+        ONLY: hyp, pt, q  
+
+    USE cloud_parameters,                                                      &
+        ONLY: l_d_rv, rho_l
+
+    USE constants,                                                             &
+        ONLY: pi
+
+    USE kinds
+
+    USE particle_attributes,                                                   &
+        ONLY: init_aerosol_probabilistic, molecular_weight_of_solute,          &
+              molecular_weight_of_water, n1, n2, n3, rho_s, rm1, rm2, rm3,     &
+              s1, s2, s3, vanthoff
+
+    IMPLICIT NONE
+
+    REAL(wp), DIMENSION(:), ALLOCATABLE ::  cdf     !< CDF of aerosol spectrum 
+    REAL(wp), DIMENSION(:), ALLOCATABLE ::  r_temp  !< dry aerosol radius spectrum
+
+    REAL(wp)  :: bfactor            !< solute effects
+    REAL(wp)  :: dr                 !< width of radius bin
+    REAL(wp)  :: e_a                !< vapor pressure
+    REAL(wp)  :: e_s                !< saturation vapor pressure
+    REAL(wp)  :: n_init             !< sum of all aerosol concentrations
+    REAL(wp)  :: pdf                !< PDF of aerosol spectrum
+    REAL(wp)  :: rmin = 1.0e-8_wp   !< minimum aerosol radius
+    REAL(wp)  :: rmax = 1.0e-6_wp   !< maximum aerosol radius
+    REAL(wp)  :: rs_rand            !< random number
+    REAL(wp)  :: r_mid              !< mean radius
+    REAL(wp)  :: t_int              !< temperature
+    REAL(wp)  :: weight_sum         !< sum of all weighting factors
+
+    INTEGER(iwp), DIMENSION(:,:,:), INTENT(IN) ::  local_start !<
+
+    INTEGER(iwp)  :: n              !<
+    INTEGER(iwp)  :: nn             !<
+    INTEGER(iwp)  :: no_bins = 999  !< number of bins
+    INTEGER(iwp)  :: ip             !<
+    INTEGER(iwp)  :: jp             !<
+    INTEGER(iwp)  :: kp             !<
+
+    LOGICAL ::  new_pdf = .FALSE.   !< check if aerosol PDF has to be recalculated
+
+!
+!-- Compute aerosol background distribution
+    IF ( init_aerosol_probabilistic )  THEN
+       ALLOCATE( cdf(0:no_bins), r_temp(0:no_bins) )
+       DO n = 0, no_bins
+          r_temp(n) = EXP( LOG(rmin) + ( LOG(rmax) - LOG(rmin ) ) /            &
+                           REAL(no_bins, KIND=wp) * REAL(n, KIND=wp) )
+
+          cdf(n) = 0.0_wp
+          n_init = n1 + n2 + n3
+          IF ( n1 > 0.0_wp )  THEN 
+             cdf(n) = cdf(n) + n1 / n_init * ( 0.5_wp + 0.5_wp *        &
+                                  ERF( LOG( r_temp(n) / rm1 ) /         &
+                                       ( SQRT(2.0_wp) * LOG(s1) )       &
+                                     ) )
+          ENDIF
+          IF ( n2 > 0.0_wp )  THEN 
+             cdf(n) = cdf(n) + n2 / n_init * ( 0.5_wp + 0.5_wp *        &
+                                  ERF( LOG( r_temp(n) / rm2 ) /         &
+                                       ( SQRT(2.0_wp) * LOG(s2) )       &
+                                     ) )
+          ENDIF
+          IF ( n3 > 0.0_wp )  THEN 
+             cdf(n) = cdf(n) + n3 / n_init * ( 0.5_wp + 0.5_wp *        &
+                                  ERF( LOG( r_temp(n) / rm3 ) /         &
+                                       ( SQRT(2.0_wp) * LOG(s3) )       &
+                                     ) )
+          ENDIF
+
+       ENDDO
+    ENDIF
+
+    DO  ip = nxl, nxr
+       DO  jp = nys, nyn
+          DO  kp = nzb+1, nzt
+
+             number_of_particles = prt_count(kp,jp,ip)
+             IF ( number_of_particles <= 0 )  CYCLE
+             particles => grid_particles(kp,jp,ip)%particles(1:number_of_particles)
+!
+!--          Initialize the aerosols with a predefined spectral distribution
+!--          of the dry radius (logarithmically increasing bins) and a varying 
+!--          weighting factor
+             IF ( .NOT. init_aerosol_probabilistic )  THEN
+
+                new_pdf = .FALSE.
+                IF ( .NOT. ALLOCATED( r_temp ) )  THEN
+                   new_pdf = .TRUE.
+                ELSE
+                   IF ( SIZE( r_temp ) .NE. &
+                        number_of_particles - local_start(kp,jp,ip) + 2 )  THEN
+                      new_pdf = .TRUE.
+                      DEALLOCATE( r_temp )
+                   ENDIF
+                ENDIF
+
+                IF ( new_pdf )  THEN
+
+                   no_bins = number_of_particles + 1 - local_start(kp,jp,ip)
+                   ALLOCATE( r_temp(0:no_bins) )
+
+                   DO n = 0, no_bins
+                      r_temp(n) = EXP( LOG(rmin) + ( LOG(rmax) - LOG(rmin ) ) / &
+                                       REAL(no_bins, KIND=wp) *                 &
+                                       REAL(n, KIND=wp) )
+                   ENDDO
+
+                ENDIF
+
+!
+!--             Calculate radius and concentration of each aerosol
+                DO n = local_start(kp,jp,ip), number_of_particles
+
+                   nn = n - local_start(kp,jp,ip)
+
+                   r_mid = SQRT( r_temp(nn) * r_temp(nn+1) )
+                   dr    = r_temp(nn+1) - r_temp(nn)
+
+                   pdf    = 0.0_wp
+                   n_init = n1 + n2 + n3
+                   IF ( n1 > 0.0_wp )  THEN 
+                      pdf = pdf + n1 / n_init * ( 1.0_wp / ( r_mid * LOG(s1) *      &
+                                                             SQRT( 2.0_wp * pi )    &
+                                                           ) *                      &
+                                                  EXP( -( LOG( r_mid / rm1 ) )**2 / &
+                                                       ( 2.0_wp * LOG(s1)**2 )      &
+                                                     )                              &
+                                                )
+                   ENDIF
+                   IF ( n2 > 0.0_wp )  THEN
+                      pdf = pdf + n2 / n_init * ( 1.0_wp / ( r_mid * LOG(s2) *      &
+                                                             SQRT( 2.0_wp * pi )    &
+                                                           ) *                      &
+                                                  EXP( -( LOG( r_mid / rm2 ) )**2 / &
+                                                       ( 2.0_wp * LOG(s2)**2 )      &
+                                                     )                              &
+                                                )
+                   ENDIF
+                   IF ( n3 > 0.0_wp )  THEN
+                      pdf = pdf + n3 / n_init * ( 1.0_wp / ( r_mid * LOG(s3) *      &
+                                                             SQRT( 2.0_wp * pi )    &
+                                                           ) *                      &
+                                                  EXP( -( LOG( r_mid / rm3 ) )**2 / &
+                                                       ( 2.0_wp * LOG(s3)**2 )      &
+                                                     )                              &
+                                                )
+                   ENDIF
+
+                   particles(n)%rvar2         = r_mid
+                   particles(n)%weight_factor = pdf * dr
+
+                END DO
+!
+!--             Adjust weighting factors to initialize the same number of aerosols
+!--             in every grid box
+                weight_sum = SUM(particles(local_start(kp,jp,ip):number_of_particles)%weight_factor)
+
+                particles(local_start(kp,jp,ip):number_of_particles)%weight_factor =     &
+                   particles(local_start(kp,jp,ip):number_of_particles)%weight_factor /  &
+                   weight_sum * initial_weighting_factor * ( no_bins + 1 )
+
+             ENDIF
+!
+!--          Initialize the aerosols with a predefined weighting factor but 
+!--          a randomly choosen dry radius
+             IF ( init_aerosol_probabilistic )  THEN
+
+                DO  n = local_start(kp,jp,ip), number_of_particles  !only new particles 
+
+                   rs_rand = -1.0_wp
+                   DO WHILE ( rs_rand .LT. cdf(0)  .OR.  rs_rand .GE. cdf(no_bins)  )
+                      rs_rand = random_function( iran_part )
+                   ENDDO
+!
+!--                Determine aerosol dry radius by a random number generator
+                   DO nn = 0, no_bins-1
+                      IF ( cdf(nn) .LE. rs_rand  .AND.  cdf(nn+1) .GT. rs_rand )  THEN
+                         particles(n)%rvar2 = r_temp(nn) + ( r_temp(nn+1) - r_temp(nn) ) / &
+                                              ( cdf(nn+1) - cdf(nn) ) * ( rs_rand - cdf(nn) )
+                         EXIT
+                      ENDIF
+                   ENDDO
+
+                ENDDO
+
+             ENDIF
+
+!
+!--          Set particle radius to equilibrium radius based on the environmental
+!--          supersaturation (Khvorostyanov and Curry, 2007, JGR). This avoids
+!--          the sometimes lengthy growth toward their equilibrium radius within 
+!--          the simulation.
+             t_int  = pt(kp,jp,ip) * ( hyp(kp) / 100000.0_wp )**0.286_wp
+
+             e_s = 611.0_wp * EXP( l_d_rv * ( 3.6609E-3_wp - 1.0_wp / t_int ) )
+             e_a = q(kp,jp,ip) * hyp(kp) / ( 0.378_wp * q(kp,jp,ip) + 0.622_wp )
+
+!
+!--          The formula is only valid for subsaturated environments. In (super-)
+!--          saturated air, the inital radius is used.
+             IF ( e_a / e_s < 1.0_wp )  THEN
+
+                DO  n = local_start(kp,jp,ip), number_of_particles  !only new particles 
+
+                   bfactor             = vanthoff * molecular_weight_of_water *    &
+                                         rho_s * particles(n)%rvar2**3 /           &
+                                         ( molecular_weight_of_solute * rho_l )
+                   particles(n)%radius = particles(n)%rvar2 * ( bfactor /          &
+                                         particles(n)%rvar2**3 )**(1.0_wp/3.0_wp) *&
+                                         ( 1.0_wp - e_a / e_s )**(-1.0_wp/3.0_wp)
+
+                ENDDO
+
+             ENDIF
+
+          ENDDO
+       ENDDO
+    ENDDO
+!
+!-- Deallocate used arrays
+    IF ( ALLOCATED(r_temp) )  DEALLOCATE( r_temp )
+    IF ( ALLOCATED(cdf) )     DEALLOCATE( cdf )
+
+ END SUBROUTINE lpm_init_aerosols
+
 END MODULE lpm_init_mod
Index: palm/trunk/SOURCE/mod_particle_attributes.f90
===================================================================
--- palm/trunk/SOURCE/mod_particle_attributes.f90	(revision 1867)
+++ palm/trunk/SOURCE/mod_particle_attributes.f90	(revision 1871)
@@ -19,5 +19,5 @@
 ! Current revisions:
 ! ------------------
-!
+! Initialization of aerosols added.
 !
 ! Former revisions:
@@ -119,11 +119,4 @@
     REAL(wp), DIMENSION(:), ALLOCATABLE     ::  log_z_z0
 
-!
-!-- Lagrangian cloud model constants
-    REAL(wp) ::  mass_of_solute = 1.0E-17_wp                !< soluted NaCl (kg)
-    REAL(wp) ::  molecular_weight_of_solute = 0.05844_wp    !< mol. m. NaCl (kg mol-1)
-    REAL(wp) ::  molecular_weight_of_water = 0.01801528_wp  !< mol. m. H2O (kg mol-1)
-    REAL(wp) ::  vanthoff = 2.0_wp                          !< van't Hoff factor for NaCl
-
     TYPE particle_type
         SEQUENCE
@@ -164,4 +157,18 @@
     TYPE(block_offset_def), DIMENSION(0:7)         ::  block_offset
 
+!
+!-- Lagrangian cloud model constants (especially for steering aerosols)
+    REAL(wp) ::  molecular_weight_of_solute = 0.05844_wp    !< mol. m. NaCl (kg mol-1)
+    REAL(wp) ::  molecular_weight_of_water = 0.01801528_wp  !< mol. m. H2O (kg mol-1)
+    REAL(wp) ::  rho_s = 2165.0_wp                          !< density of NaCl (kg m-3) 
+    REAL(wp) ::  vanthoff = 2.0_wp                          !< van't Hoff factor for NaCl
+
+    REAL(wp) ::  n1 = 100.0_wp, s1 = 2.0_wp, rm1 = 0.05E-6_wp, &
+                 n2 =   0.0_wp, s2 = 2.0_wp, rm2 = 0.05E-6_wp, &
+                 n3 =   0.0_wp, s3 = 2.0_wp, rm3 = 0.05E-6_wp
+
+    LOGICAL  ::  monodisperse_aerosols      = .FALSE.       !< initialize monodisperse aerosols
+    LOGICAL  ::  init_aerosol_probabilistic = .FALSE.       !< how to initialize aerosol spectra
+
     SAVE
 
Index: palm/trunk/SOURCE/package_parin.f90
===================================================================
--- palm/trunk/SOURCE/package_parin.f90	(revision 1867)
+++ palm/trunk/SOURCE/package_parin.f90	(revision 1871)
@@ -19,5 +19,5 @@
 ! Current revisions:
 ! -----------------
-! 
+! Initialization of aerosols added.
 ! 
 ! Former revisions:
@@ -151,13 +151,15 @@
         ONLY:  alloc_factor, bc_par_b, bc_par_lr, bc_par_ns, bc_par_t,         &
                collision_algorithm, collision_kernel,                          &
-               curvature_solution_effects, density_ratio,                      &
-               dissipation_classes, dt_min_part, dt_prel,                      &
-               dt_write_particle_data,                                         &
+               curvature_solution_effects, density_ratio, dissipation_classes, &
+               dt_min_part, dt_prel, dt_write_particle_data,                   &
                end_time_prel, initial_weighting_factor,                        &
-               min_nr_particle, number_of_particle_groups, particles_per_point,&
-               particle_advection, particle_advection_start, pdx, pdy, pdz,    &
-               psb, psl, psn, psr, pss, pst, radius, radius_classes,           &
-               random_start_position, read_particles_from_restartfile,         &
-               seed_follows_topography, use_sgs_for_particles,                 &
+               init_aerosol_probabilistic, min_nr_particle,                    &
+               monodisperse_aerosols, n1, n2, n3, number_of_particle_groups,   &
+               particles_per_point, particle_advection,                        &
+               particle_advection_start,                                       &
+               pdx, pdy, pdz, psb, psl, psn, psr, pss, pst, radius,            &
+               radius_classes, random_start_position,                          &
+               read_particles_from_restartfile, rm1, rm2, rm3,                 &
+               seed_follows_topography, s1, s2, s3, use_sgs_for_particles,     &
                vertical_particle_advection, write_particle_statistics
 
@@ -191,6 +193,7 @@
                                   dt_write_particle_data,                      &
                                   end_time_prel, initial_weighting_factor,     &
-                                  min_nr_particle,                             &
-                                  number_of_particle_groups,                   &
+                                  init_aerosol_probabilistic,                  &
+                                  min_nr_particle, monodisperse_aerosols,      &
+                                  n1, n2, n3, number_of_particle_groups,       &
                                   particles_per_point,                         &
                                   particle_advection_start,                    &
@@ -199,5 +202,6 @@
                                   radius_classes, random_start_position,       &
                                   read_particles_from_restartfile,             &
-                                  seed_follows_topography,                     &
+                                  rm1, rm2, rm3,                               &
+                                  seed_follows_topography, s1, s2, s3,         &
                                   use_sgs_for_particles,                       &
                                   vertical_particle_advection,                 &
