Compute the 'feels-like' temperature for humans.
Available in version 6.4.0 and later.
function heat_humidex ( t : numeric, vp : numeric, iounit  : integer, opt : integer ) return_val [dimsizes(t)] : float or double
Scalar or array containing temperature(s) [ units see iounit(0) ].vp
Scalar or array containing vapor pressure [ units see iounit(1) ].opt
Currently not used. Set to False.
A scalar or an array of the same size and shape as t. The output will be double if t or rh is of type double. The calculated quantity is unitless. It is a measure of 'heat load'.
The humidex (short for humidity index) is an index number used by Canadian meteorologists to describe how hot the weather feels to the average person, by combining the effect of heat and humidity. The humidex is a dimensionless quantity based on the dew point, but it is equivalent to dry temperature in degrees Celsius (omitting degree symbol). For example, if the temperature is 30C (86F), and the calculated humidex is 40, then it indicates the humid heat feels approximately like a dry temperature of 40C (104F).
According to the Meteorological Service of Canada, a humidex of at least 30 causes "some discomfort", at least 40 causes "great discomfort" and above 45 is "dangerous". When the humidex hits 54, heat stroke is imminent.
The current formula for determining the humidex was developed by J. M. Masterton and F. A. Richardson of Canada's Atmospheric Environment Service in 1979. Humidex differs from the heat index used in the United States in being derived from the dew point rather than the relative humidity.
INTERACTIVE HUMIDEX calculator: http://www.csgnetwork.com/canhumidexcalc.html REFERENCES: Masterson, J., and F. Richardson, 1979: Humidex, a method of quantifying human discomfort due to excessive heat and humidity CLI 1-79, Environment Canada, Atmosheric Environment Servic Buzan, J.R. et al (2015): Implementation and comparison of a suite of heat stress metrics within the Community Land Model version 4.5 Geosci. Model Dev., 8, 151-170, 2015 www.geosci-model-dev.net/8/151/2015/ doi:10.5194/gmd-8-151-2015
Example 1: This example illustrates calculating the required vapor pressure (vp) using two different approximations for saturation vapor pressure. There is very little difference. Note: the online calculator returns 40.90717.
t = 30.0 ; C iounit(0)=0 rhum = 70.0 ; % es = satvpr_water_stipanuk(t, (/0,1/)) ; iounit(1) means return Pa vp = (rhum/100)*es hx = heat_humidex(t, vp, (/0,1/), 0) print(hx) ES = satvpr_water_bolton (t, (/0,1/)) ; iounit(1) means return Pa VP = (rhum/100)*ES HX = heat_humidex(t, VP, (/0,1/), 0) print(hx)The output isVariable: hx Type: float Total Size: 4 bytes 1 values Number of Dimensions: 1 Dimensions and sizes:  Coordinates: Number Of Attributes: 4 long_name : Humidex units : info : human feels-like temperature NCL : heat_humidex (0) 40.93512 <=== satvpr_stipanuk; hx (0) 40.95528 <=== satvpr_bolton ; HX 40.90717 <=== interteractive calculator