PartMC  2.8.0
Modules | Functions/Subroutines | Variables
ice_nucleation.F90 File Reference

Go to the source code of this file.

Modules

module  pmc_ice_nucleation
 

Functions/Subroutines

subroutine pmc_ice_nucleation::ice_nucleation_immersion_freezing (aero_state, aero_data, env_state, del_t, immersion_freezing_scheme_type, freezing_rate, do_freezing_naive, INAS_a, INAS_b)
 Main subroutine for immersion freezing simulation. More...
 
subroutine pmc_ice_nucleation::ice_nucleation_singular_initialize (aero_state, aero_data, INAS_a, INAS_b)
 Initialization for the singular scheme, sampling the freezing temperature for each particle. More...
 
subroutine pmc_ice_nucleation::ice_nucleation_immersion_freezing_singular (aero_state, aero_data, env_state)
 Simulation for singular scheme, deciding whether to freeze for each particle. Run in each time step. More...
 
subroutine pmc_ice_nucleation::ice_nucleation_immersion_freezing_time_dependent (aero_state, aero_data, env_state, del_t, immersion_freezing_scheme_type, freezing_rate)
 Simulation for time-dependent scheme (e.g., ABIFM, constant rate), deciding whether to freeze for each particle. Run in each time step. This subroutine applies the binned-tau leaping algorithm for speeding up. More...
 
subroutine pmc_ice_nucleation::ice_nucleation_immersion_freezing_time_dependent_naive (aero_state, aero_data, env_state, del_t, immersion_freezing_scheme_type, freezing_rate)
 Simulation for time-dependent scheme (e.g., ABIFM, constant rate), deciding whether to freeze for each particle. Run in each time step. This subroutine applies the naive algorithm that checks each particle. More...
 
subroutine pmc_ice_nucleation::ice_nucleation_melting (aero_state, aero_data, env_state)
 Simulates melting: if the environmental temperature is above the freezing temperature of water, all particles are set to be unfrozen. More...
 
real(kind=dp) function pmc_ice_nucleation::abifm_pfrz_particle (aero_particle, aero_data, a_w_ice, del_t)
 Calculating the freezing probability for the particle (i_part) using ABIFM method (Knopf et al.,2013) More...
 
subroutine pmc_ice_nucleation::abifm_max_spec (aero_data, a_w_ice, i_spec_max, j_het_max)
 Finding the maximum heterogeneous ice nucleation rate coefficient. More...
 
real(kind=dp) function pmc_ice_nucleation::abifm_pfrz_max (diameter_max, aero_data, j_het_max, del_t)
 Calculating the maximum freezing probability for particles in one bin using ABIFM method (Knopf et al.,2013). Only used by the binned-tau leaping algorithm. More...
 

Variables

integer, parameter pmc_ice_nucleation::immersion_freezing_scheme_invalid = 0
 Type code for an undefined or invalid immersion freezing scheme. More...
 
integer, parameter pmc_ice_nucleation::immersion_freezing_scheme_const = 1
 Type code for constant ice nucleation rate (J_het) immersion freezing scheme. More...
 
integer, parameter pmc_ice_nucleation::immersion_freezing_scheme_singular = 2
 Type code for the singular (INAS) immersion freezing scheme. More...
 
integer, parameter pmc_ice_nucleation::immersion_freezing_scheme_abifm = 3
 Type code for the ABIFM immersion freezing scheme. More...