def humidexC(t_C, rh): """Calculate the humidex Reference (look under heading "Humidex"): http://climate.weather.gc.ca/climate_normals/normals_documentation_e.html?docID=1981 t_C - temperature in degree Celsius rh - relative humidity [0-100] Examples: >>> print "%.2f" % humidexC(30.0, 80.0) 43.64 >>> print "%.2f" % humidexC(30.0, 20.0) 30.00 >>> print "%.2f" % humidexC(0, 80.0) 0.00 >>> print humidexC(30.0, None) None """ try: dp_C = dewpointC(t_C, rh) dp_K = CtoK(dp_C) e = 6.11 * math.exp(5417.7530 * (1 / 273.16 - 1 / dp_K)) h = 0.5555 * (e - 10.0) except (ValueError, OverflowError, TypeError): return None return t_C + h if h > 0 else t_C
def _etterm(elev_meter, t_C): """Calculate elevation/temperature term for sea level calculation.""" t_K = CtoK(t_C) return math.exp(-elev_meter / (t_K * 29.263))