PartMC
2.6.1
|
Additive coagulation kernel. More...
Functions/Subroutines | |
subroutine | kernel_additive (aero_particle_1, aero_particle_2, aero_data, env_state, k) |
Additive coagulation kernel. More... | |
subroutine | kernel_additive_minmax (v1, v2, aero_data, env_state, k_min, k_max) |
Minimum and maximum values of the additive kernel. More... | |
subroutine | soln_additive_exp (bin_grid, aero_data, time, num_conc, radius_at_mean_vol, env_state, aero_binned) |
Exact solution with the additive coagulation kernel and exponential initial condition. More... | |
subroutine | bessi1 (x, r) |
Modified Bessel function of the first kind . More... | |
subroutine | calci1 (arg, result, jint) |
Calculates modified Bessel functions of the first kind . More... | |
Variables | |
real(kind=dp), parameter | beta_1 = 1000d0 |
Scaling coefficient for constant kernel. More... | |
Additive coagulation kernel.
subroutine pmc_coag_kernel_additive::bessi1 | ( | real(kind=dp), intent(in) | x, |
real(kind=dp), intent(out) | r | ||
) |
Modified Bessel function of the first kind .
[in] | x | Function argument. |
[out] | r | Function value. |
Definition at line 172 of file coag_kernel_additive.F90.
subroutine pmc_coag_kernel_additive::calci1 | ( | real ( kind = 8 ) | arg, |
real ( kind = 8 ) | result, | ||
integer ( kind = 4 ) | jint | ||
) |
Calculates modified Bessel functions of the first kind .
Definition at line 186 of file coag_kernel_additive.F90.
subroutine pmc_coag_kernel_additive::kernel_additive | ( | type(aero_particle_t), intent(in) | aero_particle_1, |
type(aero_particle_t), intent(in) | aero_particle_2, | ||
type(aero_data_t), intent(in) | aero_data, | ||
type(env_state_t), intent(in) | env_state, | ||
real(kind=dp), intent(out) | k | ||
) |
Additive coagulation kernel.
[in] | aero_particle_1 | First particle. |
[in] | aero_particle_2 | Second particle. |
[in] | aero_data | Aerosol data. |
[in] | env_state | Environment state. |
[out] | k | Coagulation kernel. |
Definition at line 30 of file coag_kernel_additive.F90.
subroutine pmc_coag_kernel_additive::kernel_additive_minmax | ( | real(kind=dp), intent(in) | v1, |
real(kind=dp), intent(in) | v2, | ||
type(aero_data_t), intent(in) | aero_data, | ||
type(env_state_t), intent(in) | env_state, | ||
real(kind=dp), intent(out) | k_min, | ||
real(kind=dp), intent(out) | k_max | ||
) |
Minimum and maximum values of the additive kernel.
[in] | v1 | Volume of first particle. |
[in] | v2 | Volume of second particle. |
[in] | aero_data | Aerosol data. |
[in] | env_state | Environment state. |
[out] | k_min | Coagulation kernel minimum value. |
[out] | k_max | Coagulation kernel maximum value. |
Definition at line 52 of file coag_kernel_additive.F90.
subroutine pmc_coag_kernel_additive::soln_additive_exp | ( | type(bin_grid_t), intent(in) | bin_grid, |
type(aero_data_t), intent(in) | aero_data, | ||
real(kind=dp), intent(in) | time, | ||
real(kind=dp), intent(in) | num_conc, | ||
real(kind=dp), intent(in) | radius_at_mean_vol, | ||
type(env_state_t), intent(in) | env_state, | ||
type(aero_binned_t), intent(inout) | aero_binned | ||
) |
Exact solution with the additive coagulation kernel and exponential initial condition.
Given input paramaters and we let the mean volume be and define the rescaled times and , where is the fixed kernel scaling parameter. Then the solution is
where is the modified Bessel function of the first kind and .
For small we have , so this solution has initial condition
[in] | bin_grid | Bin grid. |
[in] | aero_data | Aerosol data. |
[in] | time | Current time. |
[in] | num_conc | Particle number concentration (#/m^3). |
[in] | radius_at_mean_vol | Mean init radius (m). |
[in] | env_state | Environment state. |
[in,out] | aero_binned | Output state. |
Definition at line 101 of file coag_kernel_additive.F90.
real(kind=dp), parameter pmc_coag_kernel_additive::beta_1 = 1000d0 |
Scaling coefficient for constant kernel.
Definition at line 23 of file coag_kernel_additive.F90.