# File lib/wx/metar.rb, line 257 def relative_humidity if (!dewpoint.nil? && !temp.nil?) es0 = 6.11 # hPa t0 = 273.15 # kelvin td = self.dewpoint.to('tempK').abs t = self.temp.to('tempK').abs lv = 2500000 # joules/kg rv = 461.5 # joules*kelvin/kg e = es0 * Math::exp(lv/rv * (1.0/t0 - 1.0/td)) es = es0 * Math::exp(lv/rv * (1.0/t0 - 1.0/t)) rh = 100 * e/es (rh.to_s+'%').unit else nil end end