Taupunkt, Absolute Luftfeuchtigkeit berechnen

Beispiel für die Berechnung des Taupunkts

function taupunkt(t, r) {
     
  // Konstanten
  var mw = 18.016; // Molekulargewicht des Wasserdampfes (kg/kmol)
  var gk = 8314.3; // universelle Gaskonstante (J/(kmol*K))
  var t0 = 273.15; // Absolute Temperatur von 0 °C (Kelvin)
  var tk = t + t0; // Temperatur in Kelvin
  
  var a, b;
  if (t >= 0) {
    a = 7.5;
    b = 237.3;
  } else {
    a = 7.6;
    b = 240.7;
  }
  
  // Sättigungsdampfdruck in hPa
  var sdd = 6.1078 * Math.pow(10, (a*t)/(b+t));
  
  // Dampfdruck in hPa
  var dd = sdd * (r/100);
  
  // Wasserdampfdichte bzw. absolute Feuchte in g/m3
  var af = Math.pow(10,5) * mw/gk * dd/tk;
  
  // v-Parameter
  var v = Math.log10(dd/6.1078);
  
  // Taupunkttemperatur (°C)
  var tt = (b*v) / (a-v);
  return { tt: tt, af: af, dd: dd };  
}

Aufruf-Beispiel zur Berechnung der absoluten Luftfeuchtigkeit

// Außen und Innen Temperatur / Luftfeuchtigkeit ermitteln
var tAussen = getState("hm-rpc.0.JPTH10I010.1.TEMPERATURE").val;
var rAussen = getState("hm-rpc.0.JPTH10I010.1.HUMIDITY").val;    
var tInnen = getState("hm-rpc.0.JPTH10I011.1.TEMPERATURE").val;
var rInnen = getState("hm-rpc.0.JPTH10I011.1.HUMIDITY").val;
 
// Absolute Luftfeuchtigkeit ermitteln
var tpAussen = taupunkt(tAussen, rAussen);
var Aussen = tpAussen.af;
var tpInnen = taupunkt(tInnen, rInnen);
var Innen = tpInnen.af;