Low cloud model in fogpy

A low water cloud model has been implemented to derive the cloud base height from satellite retrievable variables like liquid water path, cloud top height and temperature.

Low water cloud model

This module implements a class for a 1D low water cloud model. The approach can be used to determine fog cloud base heights by known cloud top height and temperature and cloud liquid water path, e.g. from satellite retrievals. The implemented approch is based on a publication:

The implementation is based on the following publications:

  • Cermak, J., & Bendix, J. (2011). Detecting ground fog from space–a microphysics-based approach. International Journal of Remote Sensing, 32(12), 3345-3371. doi:10.1016/j.atmosres.2007.11.009
  • Cermak, J., & Bendix, J. (2008). A novel approach to fog/low stratus detection using Meteosat 8 data. Atmospheric Research, 87(3-4), 279-292. doi:10.1016/j.atmosres.2007.11.009
  • Cermak, J. (2006). SOFOS-a new satellite-based operational fog observation scheme. (PhD thesis), Philipps-Universität Marburg, Marburg, Germany. doi:doi.org/10.17192/z2006.0149
class fogpy.lowwatercloud.CloudLayer(bottom, top, lowcloud, add=True)[source]

This class represent a cloud layer - 1D representation of a cloud section from its vertical profile with defined extent and homogenius cloud parameters. The layer is defined by the bottom and top height in the cloud profile

classmethod check_temp(temp, unit='celsius', debug=False)[source]

Check for plausible range of temperature value for given unit. Convert if required

get_layer_info()[source]
class fogpy.lowwatercloud.HeightBounds(xmax=2000, xmin=-1000)[source]
class fogpy.lowwatercloud.LowWaterCloud(cth=None, ctt=None, cwp=None, cbh=0, reff=None, cbt=None, upthres=50.0, lowthres=75.0, thickness=10.0, debug=False, nodata=-9999)[source]

A class to simulate the water content of a low cloud and calculate its meteorological properties.

Args:
cth (float): Cloud top height in m.
ctt (float): Cloud top temperature in K.
cwp (float): Cloud water path in kg / m^2.
cbh (float): Cloud base height in m.
reff (float): Droplet effective radius in m.
cbt (float): Cloud base temperature in K.
upthres (float): Top layer thickness with dry air entrainment in m.
lowthres (float): Bottem layer thickness with ground coupling in m.
thickness (float): Layer thickness in m.
debug (bool): Boolean to activate additional debug output.
nodata (float): Provide a specific Nodata value. Default is: -9999.
Returns:
Calibrated cloud base height in m.
cbh
classmethod get_air_pressure(z, elevation=0)[source]

Calculate ambient air pressure for height z [hPa].

get_cloud_base_height(start=0, method='basin')[source]

Calculate cloud base height [m].

get_cloud_based_vapour_mixing_ratio(debug=False)[source]
get_effective_radius(z)[source]

The droplet effective radius in [um] for each level is computed on the assumptions that reff retrieved at 3.9 μm is the cloud top value, Cloud base reff is at 1 μm and the intermediate values are scaled linearly in between.

get_extinct(lwc, reff, rho)[source]

Calculate extingtion coeficient [m-1]

The extinction therefore is a combination of radiation loss by (diffuse) scattering and molecular absorption. Required are the liquid water content, effective radius and liquid water density TODO: Recheck the unit of liquid water density g or kg? Should be in g

get_fog_base_height(substitude=False)[source]

This method calculate the fog cloud base height for low clouds with visibilities below 1000 m.

Args:
substitude (bool): Optional argument to substitude with cbh if no fbh could be found.
Returns:
Fog base height
classmethod get_incloud_mixing_ratio(z, cth, cbh, lowthres=75.0, upthres=50.0)[source]

Calculate in-cloud mixing ratio for given cloud height parameter.

get_liquid_density(temp, press)[source]

Calculate the liquid water density in [kg m-3].

classmethod get_liquid_mixing_ratio(cb_vmr, vmr, debug=False)[source]

Calculate liquid water mixing ratio for given water vapour mixing ratio in a certain height and the maximum water vapour mixing ratio at

cloud base condensation level [g/kg].
get_liquid_water_content(z, cth, hrho, lmr, beta, thres, maxlwc=None, debug=False)[source]

Calculate liquid water content [g m-3] by air density and liquid water mixing ratio.

get_liquid_water_path()[source]

Calculate liquid water path for given cloud layers [g m-2].

classmethod get_moist_adiabatic_lapse_temp(z, cth, ctt, convert=False)[source]

Calculate air temperature for height z [K] following a moist adiabatic lapse rate.

Requires values for cloud top height and temperature e.g. known from satellite retrievals.

classmethod get_moist_air_density(pa, pv, temp, empiric=False, debug=False)[source]

Calculate air density for humid air with known pressure and water vapour pressure and temperature.

classmethod get_sat_vapour_pressure(temp, mode='buck', convert=False, debug=False)[source]

Calculate satured water vapour pressure for temperature [hPa] using different empirical approaches.

Options: Buck, Magnus

Convert temperatures in K to °C

classmethod get_vapour_mixing_ratio(pa, pv)[source]

Calculate water vapour mixing ratio for given ambient pressure and water vapour pressure. Also usabale under saturated conditions.

classmethod get_vapour_pressure(z, temp)[source]

Calculate water vapour pressure for height z [hPa].

get_visibility(extinct, contrast=0.02)[source]

Calculate visibility in [m] for given cloud layer. Extinction is directly related to visibility by Koschmieder’s law.

init_cloud_layers(init_cbh, thickness, overwrite=True)[source]

Method to initialize cloud layers and corresponding parameters. the method needs a initial cloud base height and thickness in [m].

minimize_cbh(x)[source]

Minimization function for liquid water path.

optimize_cbh(start, method='basin', debug=False)[source]

Find best fitting cloud base height by comparing calculated liquid water path with given satellite retrieval. Minimization with basinhopping or brute force algorithm from python scipy package.

plot_lowcloud(para, xlabel=None, save=None)[source]

Plotting of selected low water cloud parameters.