PartMC  2.6.1
Modules | Functions/Subroutines | Variables
coagulation.F90 File Reference

The pmc_coagulation module. More...

Go to the source code of this file.

Modules

module  pmc_coagulation
 Aerosol particle coagulation.
 

Functions/Subroutines

subroutine pmc_coagulation::mc_coag (coag_kernel_type, env_state, aero_data, aero_state, del_t, tot_n_samp, tot_n_coag)
 Do coagulation for time del_t. More...
 
subroutine pmc_coagulation::mc_coag_for_bin (coag_kernel_type, env_state, aero_data, aero_state, del_t, tot_n_samp, tot_n_coag, b1, b2, c1, c2)
 Do coagulation for time del_t for the given bins. More...
 
subroutine pmc_coagulation::try_per_particle_coag (coag_kernel_type, k_max, env_state, aero_data, aero_state, del_t, tot_n_samp, tot_n_coag, b1, b2, c1, c2, cc, per_particle_coag_succeeded)
 Attempt per-particle coagulation. More...
 
subroutine pmc_coagulation::determine_target_and_source (aero_weight_array, bin_grid, b1, b2, c1, c2, cc, bt, bs, ct, cs, correct_weight_ordering)
 Determine the source and target particle bin/group for per-particle coagulation, if possible. More...
 
subroutine pmc_coagulation::compute_n_source (n_part, k_max, del_t, n_source_per_target, accept_factor)
 
subroutine pmc_coagulation::sample_source_particle (aero_state, aero_data, env_state, coag_kernel_type, bs, cs, coag_particle, n_samp_mean, accept_factor, n_samp, n_coag, n_remove, source_particle)
 Sample coagulation partners for a single coagulation event. More...
 
subroutine pmc_coagulation::coag_target_with_source (aero_state, aero_data, bt, ct, target_unif_entry, source_particle, cc)
 Coagulate a sampled source particle with a target particle. More...
 
subroutine pmc_coagulation::per_set_coag (coag_kernel_type, k_max, env_state, aero_data, aero_state, del_t, tot_n_samp, tot_n_coag, b1, b2, c1, c2, cc)
 Do set-wise coagulation. More...
 
subroutine pmc_coagulation::compute_n_samp (ni, nj, same_bin, k_max, del_t, n_samp_mean, n_samp, accept_factor)
 Compute the number of samples required for the pair of bins. More...
 
subroutine pmc_coagulation::maybe_coag_pair (env_state, aero_data, aero_state, b1, b2, c1, c2, cc, coag_kernel_type, accept_factor, did_coag)
 Choose a random pair for potential coagulation and test its probability of coagulation. If it happens, do the coagulation and update all structures. More...
 
subroutine pmc_coagulation::find_rand_pair (aero_sorted, b1, b2, c1, c2, i1, i2)
 Given (b1, c1) and (b2, c2), find a random pair of particles (b1, c1, i1) and (b2, c2, i2) that are not the same particle particle as each other. More...
 
subroutine pmc_coagulation::coagulate_weighting (pt1, pt2, ptc, c1, c2, cc, aero_data, aero_weight_array, remove_1, remove_2, create_new, id_1_lost, id_2_lost, aero_info_1, aero_info_2)
 Actually coagulate pt1 and pt2 to form ptc and compute weighting effects, including which particles should be lost and which gained. More...
 
subroutine pmc_coagulation::coagulate (aero_data, aero_state, p1, p2, c1, c2, cc)
 Join together particles p1 and p2, updating all particle and bin structures to reflect the change. More...
 

Variables

real(kind=dp), parameter pmc_coagulation::coag_accel_n_event = 1d0
 Minimum number of coagulation events per large particle for which accelerated coagulation is used. More...
 
real(kind=dp), parameter pmc_coagulation::coag_accel_max_cv = 0.1d0
 Maximum allowed coefficient-of-variation due to undersampling in accelerated coagulation. More...
 
real(kind=dp), parameter pmc_coagulation::max_allowable_growth_factor = 1.5d0
 Maximum allowable growth factor of a target particle volume within one timestep when using accelerated coagulation. More...
 

Detailed Description

The pmc_coagulation module.

Definition in file coagulation.F90.