Terminal Velocities¶
Header file: <libs/superdrops/terminalvelocity.hpp>
[source]
-
template<typename V>
concept VelocityFormula¶ - #include <terminalvelocity.hpp>
Concept representing a velocity formula for calculating a droplet’s terminal velocity.
Objects that are of type ‘VelocityFormula’ take a superdroplet and return something convertible to a double (should be its terminal velocity!).
-
struct NullTerminalVelocity¶
Null terminal velocity formula returning zero velocity.
-
struct SimmelTerminalVelocity¶
Terminal velocity formula as in Simmel et al. (2002).
Public Functions
-
double watermass(const double radius) const¶
Returns the mass of a droplet as if it’s all water [gramms] to use as ‘x’ according to Simmel et al. 2002 equation (14).
- Parameters:
radius – The radius of the droplet.
- Returns:
The mass of the droplet as if it’s all water [gramms].
-
double operator()(const Superdrop &drop) const¶
Returns the (dimensionless) terminal velocity of a droplet according to Simmel et al. (2002).
Simmel et al. 2002 formula is a semi-empirical adapted from the work of Gunn and Kinzer (1949) and Beard (1976) and used in Simmel’s parmeterisation of Long 1974’s hydrodynamic collision kernel. For drops with radius >= 1.74mm, terminal velocity is 9.17m/s.
Note: Improvement could be made by following Arabas et al. 2015 and Morrison et al. 2005 in multiplying the terminal velocity by the density ratio, rho_dry0/rho_dry, of dry air under standard conditions (rho_dry0) and in current state (rho_dry).
- Parameters:
drop – The superdroplet.
- Returns:
The (dimensionless) terminal velocity.
-
double watermass(const double radius) const¶
-
struct RogersYauTerminalVelocity¶
Terminal velocity formula based on Rogers and Yau (1989) textbook.
Public Functions
-
double operator()(const Superdrop &drop) const¶
Returns the terminal velocity of a superdroplet according to Rogers and Yau (1989).
Returns the terminal velocity of a droplet according to Rogers et al. (1993).
Formula from Rogers and Yau 1989 textbook “a short course in cloud physics” chapter 8. For small droplets formula parameterises Stokes’ terminal velocity (valid at low Reynolds numbers for spherical droplets). For drops with radius >= 2mm, terminal velocity is 9m/s.
See “Comparison of Raindrop Size Distributions Measured by Radar Wind Profiler and by Airplane” by R. R. Rogers, D. Baumgardner, S. A. Ethier, D. A. Carter, and W. L. Ecklund (1993). Formulation is approximation of Gunn and Kinzer (1949) tabulated values.
- Parameters:
drop – The superdroplet.
drop – The super-droplet.
- Returns:
The (dimensionless) terminal velocity.
- Returns:
The (dimensionless) terminal velocity.
-
double operator()(const Superdrop &drop) const¶
-
struct RogersGKTerminalVelocity¶
Terminal velocity formula based on Rogers et al. (1993).
Public Functions
-
double operator()(const Superdrop &drop) const¶
Returns the terminal velocity of a droplet according to Rogers et al. (1993).
See “Comparison of Raindrop Size Distributions Measured by Radar Wind Profiler and by Airplane” by R. R. Rogers, D. Baumgardner, S. A. Ethier, D. A. Carter, and W. L. Ecklund (1993). Formulation is approximation of Gunn and Kinzer (1949) tabulated values.
See “Comparison of Raindrop Size Distributions Measured by Radar Wind Profiler and by Airplane” by R. R. Rogers, D. Baumgardner, S. A. Ethier, D. A. Carter, and W. L. Ecklund (1993). Formulation is approximation of Gunn and Kinzer (1949) tabulated values.
- Parameters:
drop – The superdroplet.
drop – The super-droplet.
- Returns:
The (dimensionless) terminal velocity.
- Returns:
The (dimensionless) terminal velocity.
-
double operator()(const Superdrop &drop) const¶