#1196 Proposal: Fixes for specific enthalpy units

Stephen Frank Tue 11 Aug

I'd like to propose the following corrections to the definitions for IP specific enthalpy units in units.txt:

  1. Fix the precision difference between the "per lb" and "per lb_dry" versions of the unit
  2. Correct discrepancies in unit names/capitalization
  3. Add the approximately 17.78 kJ/kg offset required to go between the SI and IP definitions for specific enthalpy, as defined by ASHRAE (Fundamentals handbook). More on this below.

SI vs. IP Enthalpy

In HVAC calculations, specific enthalpy has an arbitrary zero point. In SI units, the zero point is 0°C; in IP units it is 0°F. The offset between the IP and SI quantities for enthalpy is equal to the SI specific enthalpy evaluated at 0°F (-17.7778°C):

  • Per the 2025 ASHRAE Handbook: Fundamentals, the specific enthalpy of dry air at -17°C is -17.095 kJ/kg and at -18°C is -18.1 kJ/kg
  • Interpolating between the two values, the estimated offset at -17.7778°C is -17.876689 kJ/kg

Introducing this offset to the units engine prevents the user from having to perform this correction manually when converting between SI and IP units of enthalpy.

Changes to Units.txt

Before...

btu_per_pound, BTU/lb; m2*sec-2; 2325.5576058607867
btus_per_pound_dry_air, btu/lb_dry; m2*sec-2; 2326.0

After...

btu_per_pound, BTU/lb; m2*sec-2; 2325.5576058607867; -17876.689
btu_per_pound_dry_air, BTU/lb_dry; m2*sec-2; 2325.5576058607867; -17876.689
kbtu_per_pound, kBTU/lb; m2*sec-2; 2325557.6058607867; -17876.689
kbtu_per_pound_dry_air, kBTU/lb_dry; m2*sec-2; 2325557.6058607867; -17876.689

I've tested these in SkySpark (v3.1.10) and they appear to work as expected.

Finally, it's also worth noting that the category of units that Haystack calls "enthalpy" are actually specific enthalpy; maybe we should update the units.txt category label as well.

Brian Frank Yesterday

If no one has any further comments, then I will merge this later this week.

Login or Signup to reply.