Reference¶
Main Parcel Model¶
The core of the model has its own documentation page, which you can access here.
ParcelModel (aerosols, V, T0, S0, P0[, …]) |
Wrapper class for instantiating and running the parcel model. |
Driver Tools¶
Utilities for driving sets of parcel model integration strategies.
Occasionally, a pathological set of input parameters to the parcel model
will really muck up the ODE solver’s ability to integrate the model.
In that case, it would be nice to quietly adjust some of the numerical
parameters for the ODE solver and re-submit the job. This module includes a
workhorse function iterate_runs()
which can serve this purpose and can
serve as an example for more complex integration strategies. Alternatively,
:func:`run_model`is a useful shortcut for building/running a model and snagging
its output.
run_model (V, initial_aerosols, T, P, dt[, …]) |
Setup and run the parcel model with given solver configuration. |
iterate_runs (V, initial_aerosols, T, P[, …]) |
Iterate through several different strategies for integrating the parcel model. |
Thermodynamics/Kohler Theory¶
Aerosol/atmospheric thermodynamics functions.
The following sets of functions calculate useful thermodynamic quantities that arise in aerosol-cloud studies. Where possible, the source of the parameterization for each function is documented.
dv (T, r, P[, accom]) |
Diffusivity of water vapor in air, modified for non-continuum effects. |
ka (T, rho, r) |
Thermal conductivity of air, modified for non-continuum effects. |
rho_air (T, P[, RH]) |
Density of moist air with a given relative humidity, temperature, and pressure. |
es (T_c) |
Calculates the saturation vapor pressure over water for a given temperature. |
sigma_w (T) |
Surface tension of water for a given temperature. |
Seq (r, r_dry, T, kappa) |
κ-Kohler theory equilibrium saturation over aerosol. |
Seq_approx (r, r_dry, T, kappa) |
Approximate κ-Kohler theory equilibrium saturation over aerosol. |
kohler_crit (T, r_dry, kappa[, approx]) |
Critical radius and supersaturation of an aerosol particle. |
critical_curve (T, r_a, r_b, kappa[, approx]) |
Calculates curves of critical radii and supersaturations for aerosol. |
Aerosols¶
Container class for encapsulating data about aerosol size distributions.
AerosolSpecies (species, distribution, kappa) |
Container class for organizing aerosol metadata. |
The following are utility functions which might be useful in studying and manipulating aerosol distributions for use in the model or activation routines.
dist_to_conc (dist, r_min, r_max[, rule]) |
Converts a swath of a size distribution function to an actual number concentration. |
Distributions¶
Collection of classes for representing aerosol size distributions.
Most commonly, one would use the Lognorm
distribution. However,
for the sake of completeness, other canonical distributions will be
included here, with the notion that this package could be extended to
describe droplet size distributions or other collections of objects.
BaseDistribution |
Interface for distributions, to ensure that they contain a pdf method. |
Gamma |
Gamma size distribution |
Lognorm (mu, sigma[, N, base]) |
Lognormal size distribution. |
MultiModeLognorm (mus, sigmas, Ns[, base]) |
Multimode lognormal distribution class. |
The following dictionaries containing (multi) Lognormal aerosol size distributions have also been saved for convenience:
FN2005_single_modes
: Fountoukis, C., and A. Nenes (2005), Continued development of a cloud droplet formation parameterization for global climate models, J. Geophys. Res., 110, D11212, doi:10.1029/2004JD005591NS2003_single_modes
: Nenes, A., and J. H. Seinfeld (2003), Parameterization of cloud droplet formation in global climate models, J. Geophys. Res., 108, 4415, doi:10.1029/2002JD002911, D14.whitby_distributions
: Whitby, K. T. (1978), The physical characteristics of sulfur aerosols, Atmos. Environ., 12(1-3), 135–159, doi:10.1016/0004-6981(78)90196-8.jaenicke_distributions
: Jaenicke, R. (1993), Tropospheric Aerosols, in Aerosol-Cloud-Climate Interactions, P. V. Hobbs, ed., Academic Press, San Diego, CA, pp. 1-31.
Activation¶
Collection of activation parameterizations.
lognormal_activation (smax, mu, sigma, N, kappa) |
Compute the activated number/fraction from a lognormal mode |
binned_activation (Smax, T, rs, aerosol[, approx]) |
Compute the activation statistics of a given aerosol, its transient size distribution, and updraft characteristics. |
multi_mode_activation (Smax, T, aerosols, rss) |
Compute the activation statistics of a multi-mode, binned_activation aerosol population. |
arg2000 (V, T, P[, aerosols, accom, mus, …]) |
Computes droplet activation using a psuedo-analytical scheme. |
mbn2014 (V, T, P[, aerosols, accom, mus, …]) |
Computes droplet activation using an iterative scheme. |
shipwayabel2010 (V, T, P, aerosol) |
Activation scheme following Shipway and Abel, 2010 (doi:10.1016/j.atmosres.2009.10.005). |
ming2006 (V, T, P, aerosol) |
Ming activation scheme. |
Constants¶
Commonly used constants in microphysics and aerosol thermodynamics equations as well as important model parameters.
Symbol | Variable | Value | Units | Description |
---|---|---|---|---|
\(g\) | g |
9.8 | m s**-2 | gravitational constant |
\(C_p\) | Cp |
1004.0 | J/kg | specific heat of dry air at constant pressure |
\(\rho_w\) | rho_w |
1000.0 | kg m**-3 | density of water at STP |
\(R_d\) | Rd |
287.0 | J/kg/K | gas constant for dry air |
\(R_v\) | Rv |
461.5 | J/kg/K | gas constant for water vapor |
\(R\) | R |
8.314 | J/mol/K | universal gas constant |
\(M_w\) | Mw |
0.018 | kg/mol | molecular weight of water |
\(M_a\) | Ma |
0.0289 | kg/mol | molecular weight of dry air |
\(D_v\) | Dv |
3e-5 | m**2/s | diffusivity of water vapor in air |
\(L_v\) | L |
2.25e6 | J/kg/K | latent heat of vaporization of water |
\(\alpha_c\) | ac |
1.0 | unitless | condensation coefficient |
\(K_a\) | Ka |
0.02 | J/m/s/K | thermal conductivity of air |
\(a_T\) | at |
0.96 | unitless | thermal accommodation coefficient |
\(\epsilon\) | epsilon |
0.622 | unitless | ratio of \(M_w/M_a\) |
Additionally, a reference table containing the
1976 US Standard Atmosphere is implemented in the
constant std_atm
, which is a pandas DataFrame with the fields
alt
, altitude in kmsigma
, ratio of density to sea-level densitydelta
, ratio of pressure to sea-level pressuretheta
, ratio of temperature to sea-level temperaturetemp
, temperature in Kpress
, pressure in Padens
, air density in kg/m**3k.visc
, air kinematic viscosityratio
, ratio of speed of sound to kinematic viscosity in m**-1
Using default pandas functons, you can interpolate to any reference pressure or height level.