pmc_coagulation Namespace Reference

Aerosol particle coagulation. More...

Classes

interface  maybe_coag_pair__interface

Functions

subroutine maybe_coag_pair (bin_grid, aero_binned, env_state, aero_data, aero_state, b1, b2, del_t, k_max, kernel, 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.
subroutine find_rand_pair (aero_state, b1, b2, s1, s2)
 Given bins b1 and b2, find a random pair of particles (b1, s1) and (b2, s2) that are not the same particle particle as each other.
subroutine coagulate (bin_grid, aero_binned, aero_data, aero_state, b1, s1, b2, s2)
 Join together particles (b1, s1) and (b2, s2), updating all particle and bin structures to reflect the change.

Detailed Description

Aerosol particle coagulation.


Function Documentation

subroutine pmc_coagulation::coagulate ( type(bin_grid_t),intent(in)  bin_grid,
type(aero_binned_t),intent(inout)  aero_binned,
type(aero_data_t),intent(in)  aero_data,
type(aero_state_t),intent(inout)  aero_state,
integer,intent(in)  b1,
integer,intent(in)  s1,
integer,intent(in)  b2,
integer,intent(in)  s2 
)

Join together particles (b1, s1) and (b2, s2), updating all particle and bin structures to reflect the change.

Parameters:
bin_grid Bin grid.
aero_binned Binned distributions.
aero_data Aerosol data.
aero_state Aerosol state.
b1 First particle (bin number).
s1 First particle (number in bin).
b2 Second particle (bin number).
s2 Second particle (number in bin).
subroutine pmc_coagulation::find_rand_pair ( type(aero_state_t),intent(in)  aero_state,
integer,intent(in)  b1,
integer,intent(in)  b2,
integer,intent(out)  s1,
integer,intent(out)  s2 
)

Given bins b1 and b2, find a random pair of particles (b1, s1) and (b2, s2) that are not the same particle particle as each other.

Parameters:
aero_state Aerosol state.
b1 Bin number of first particle.
b2 Bin number of second particle.
s1 First rand particle.
s2 Second rand particle.
subroutine pmc_coagulation::maybe_coag_pair ( type(bin_grid_t),intent(in)  bin_grid,
type(aero_binned_t),intent(out)  aero_binned,
type(env_state_t),intent(inout)  env_state,
type(aero_data_t),intent(in)  aero_data,
type(aero_state_t),intent(inout)  aero_state,
integer,intent(in)  b1,
integer,intent(in)  b2,
real*8,intent(in)  del_t,
real*8,intent(in)  k_max,
pmc_coagulation::maybe_coag_pair__interface  kernel,
logical,intent(out)  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.

The probability of a coagulation will be taken as (kernel / k_max).

Parameters:
bin_grid Bin grid.
aero_binned Binned distributions.
env_state Environment state.
aero_data Aerosol data.
aero_state Aerosol state.
b1 Bin of first particle.
b2 Bin of second particle.
del_t Timestep.
k_max K_max scale factor.
did_coag Whether a coagulation occured.

Generated on 29 Mar 2010 for PartMC by  doxygen 1.6.1