32 aero_data, env_state, k)
43 real(kind=dp),
intent(out) :: k
45 real(kind=dp) :: v1, v2, d1, d2
68 real(kind=dp),
intent(in) :: v1
70 real(kind=dp),
intent(in) :: v2
76 real(kind=dp),
intent(out) :: k_min
78 real(kind=dp),
intent(out) :: k_max
81 integer,
parameter :: n_sample = 3
83 real(kind=dp) :: d1, d2, d_min, d_max, k
87 d_min = minval(aero_data%density)
88 d_max = maxval(aero_data%density)
102 k_min = min(k_min, k)
103 k_max = max(k_max, k)
121 real(kind=dp),
intent(in) :: v1
123 real(kind=dp),
intent(in) :: d1
125 real(kind=dp),
intent(in) :: v2
127 real(kind=dp),
intent(in) :: d2
131 real(kind=dp),
intent(in) :: temp
133 real(kind=dp),
intent(out) :: bckernel
135 real(kind=dp) :: rho, N_i, N_j, df, R0, N_i_inv_df, N_j_inv_df
137 rho = (v1 / (v1 + v2)) * d1 + (v2 / (v1 + v2)) * d2
140 df = aero_data%fractal%frac_dim
141 r0 = aero_data%fractal%prime_radius
142 n_i_inv_df = n_i**(1d0 / df)
143 n_j_inv_df = n_j**(1d0 / df)
144 bckernel = sqrt(6d0 *
const%boltzmann * temp * r0 / rho &
145 * (1d0 / n_i + 1d0 / n_j)) * (n_i_inv_df + n_j_inv_df)**2d0
The env_state_t structure and associated subroutines.
subroutine kernel_brown_free_helper(v1, d1, v2, d2, aero_data, temp, bckernel)
Helper function that does the actual coagulation kernel computation.
The aero_particle_t structure and associated subroutines.
Current environment state.
Brownian coagulation kernel in free molecular regime based on Vemury and Pratsinis [1995]...
real(kind=dp) function aero_particle_density(aero_particle, aero_data)
Average density of the particle (kg/m^3).
real(kind=dp) elemental function aero_data_vol_to_num_of_monomers(aero_data, v)
Convert mass-equivalent volume (m^3) to number of monomers in a fractal particle cluster...
subroutine kernel_brown_free(aero_particle_1, aero_particle_2, aero_data, env_state, k)
Compute the Brownian coagulation kernel in free molecular regime.
The aero_data_t structure and associated subroutines.
Single aerosol particle data structure.
elemental real(kind=dp) function aero_particle_volume(aero_particle)
Total volume of the particle (m^3).
type(const_t), save const
Fixed variable for accessing the constant's values.
Aerosol material properties and associated data.
subroutine kernel_brown_free_minmax(v1, v2, aero_data, env_state, k_min, k_max)
Compute the minimum and maximum Brownian coagulation kernel in free molecular regime based on Vemury ...
Common utility subroutines.
real(kind=dp) function interp_linear_disc(x_1, x_n, n, i)
Linear interpolation over discrete indices.