improver.psychrometric_calculations.wet_bulb_temperature module
Module to contain wet-bulb temperature plugins.
- class WetBulbTemperature(precision=0.005, model_id_attr=None)[source]
Bases:
BasePlugin
A plugin to calculate wet bulb temperatures from air temperature, relative humidity, and pressure data. Calculations are performed using a Newton iterator, with saturated vapour pressures drawn from a lookup table using linear interpolation.
The svp_table used in this plugin is imported (see top of file). It is a table of saturated vapour pressures calculated for a range of temperatures. The import also brings in attributes that describe the range of temperatures covered by the table and the increments in the table.
References
Met Office UM Documentation Paper 080, UM Version 10.8, last updated 2014-12-05.
- _abc_impl = <_abc_data object>
- static _calculate_enthalpy(mixing_ratio, specific_heat, latent_heat, temperature)[source]
Calculate the enthalpy (total energy per unit mass) of air (J kg-1).
Method from referenced UM documentation.
References
Met Office UM Documentation Paper 080, UM Version 10.8, last updated 2014-12-05.
- Parameters:
- Return type:
- Returns:
Array of enthalpy values calculated at the same points as the input cubes (J kg-1).
- static _calculate_enthalpy_gradient(mixing_ratio, specific_heat, latent_heat, temperature)[source]
Calculate the enthalpy gradient with respect to temperature.
Method from referenced UM documentation.
- Parameters:
- Return type:
- Returns:
Array of the enthalpy gradient with respect to temperature.
- static _calculate_specific_heat(mixing_ratio)[source]
Calculate the specific heat capacity for moist air by combining that of dry air and water vapour in proportion given by the specific humidity.
- _calculate_wet_bulb_temperature(pressure, relative_humidity, temperature)[source]
Calculate an array of wet bulb temperatures from inputs in the correct units.
A Newton iterator is used to minimise the gradient of enthalpy against temperature. Assumes that the variation of latent heat with temperature can be ignored.
- static _slice_inputs(temperature, relative_humidity, pressure)[source]
Create iterable or iterator over cubes on which to calculate wet bulb temperature
- create_wet_bulb_temperature_cube(temperature, relative_humidity, pressure)[source]
Creates a cube of wet bulb temperature values
- class WetBulbTemperatureIntegral(model_id_attr=None)[source]
Bases:
BasePlugin
Calculate a wet-bulb temperature integral.
- _abc_impl = <_abc_data object>