Go to the documentation of this file.
22 real(kind=
dp),
parameter ::
beta_0 = 0.25d0 / (60d0 * 2d8)
30 aero_data, env_state, k)
41 real(kind=
dp),
intent(out) :: k
53 real(kind=
dp),
intent(in) :: v1
55 real(kind=
dp),
intent(in) :: v2
61 real(kind=
dp),
intent(out) :: k_min
63 real(kind=
dp),
intent(out) :: k_max
93 radius_at_mean_vol, env_state, aero_binned)
100 real(kind=
dp),
intent(in) :: time
102 real(kind=
dp),
intent(in) :: num_conc
104 real(kind=
dp),
intent(in) :: radius_at_mean_vol
110 real(kind=
dp) :: tau, t, rat_v, nn, b, sigma, mean_vol
113 real(kind=
dp),
parameter :: lambda = 1d0
119 if (time .eq. 0d0)
then
121 aero_binned%num_conc(k) =
const%pi / 2d0 &
122 * (2d0 * bin_grid%centers(k))**3 * num_conc / mean_vol &
127 tau = num_conc *
beta_0 * time
130 nn = 4d0 * num_conc / (mean_vol * ( tau + 2d0 ) ** 2d0) &
131 * exp(-2d0*rat_v/(tau+2d0)*exp(-lambda*tau)-lambda*tau)
132 aero_binned%num_conc(k) =
const%pi / 2d0 &
133 * (2d0 * bin_grid%centers(k))**3d0 * nn
137 aero_binned%vol_conc = 0d0
140 bin_grid%centers(k)) * aero_binned%num_conc(k)
Single aerosol particle data structure.
elemental integer function aero_data_n_spec(aero_data)
Return the number of aerosol species, or -1 if uninitialized.
subroutine aero_binned_set_sizes(aero_binned, n_bin, n_spec)
Set the number of bins and species in an aero_binned_t.
The aero_particle_t structure and associated subroutines.
Constant coagulation kernel.
integer, parameter dp
Kind of a double precision real number.
elemental integer function bin_grid_size(bin_grid)
Return the number of bins in the grid, or -1 if the bin grid is not allocated.
Current environment state.
subroutine kernel_constant_minmax(v1, v2, aero_data, env_state, k_min, k_max)
Minimum and maximum values of the constant coagulation kernel.
The aero_dist_t structure and associated subroutines.
type(const_t), save const
Fixed variable for accessing the constant's values.
subroutine kernel_constant(aero_particle_1, aero_particle_2, aero_data, env_state, k)
Constant coagulation kernel.
The env_state_t structure and associated subroutines.
Aerosol material properties and associated data.
Common utility subroutines.
The aero_binned_t structure and associated subroutines.
real(kind=dp), parameter beta_0
Coefficient for constant kernel.
Aerosol number and volume distributions stored per bin.
The bin_grid_t structure and associated subroutines.
real(kind=dp) elemental function aero_data_rad2vol(aero_data, r)
Convert geometric radius (m) to mass-equivalent volume (m^3).
The aero_data_t structure and associated subroutines.
1D grid, either logarithmic or linear.
subroutine soln_constant_exp(bin_grid, aero_data, time, num_conc, radius_at_mean_vol, env_state, aero_binned)
Exact solution with a constant coagulation kernel and an exponential initial condition.