{"text_format":"1","workbook":"xlsx","n_sheets":2,"sheets":["Properties","Functions"],"not_rendered":{"charts":0,"images":0,"macros":1,"external_links":0,"defined_names":84,"comments":0,"pivot_tables":0},"unopened":[],"bounds":{"document_bytes":16777216,"sheet_cells":100000,"rows_first":2000,"rows_last":500,"rows_between":2000,"halvings":0,"cell_chars":16384,"cell_head_chars":4096},"cells_cut":0,"cells_raw":0,"read":"whole","date_system":"1900"}

{"sheet":"Properties","index":0,"n_rows":29,"n_cols":8,"rows_kept":29,"cut":false,"hidden":false,"merged":[]}
[null,"X Steam Tables"]
[null,"Excel macros, IF-97 Steam tables. ",null,"The excel scripts are stored inside this workbook. A complete list of functions for use is available on the \"Calling functions\" worksheet"]
[null,null,null,"The steam tables are free and provided as is. We take no responsibilities for any errors in the code or damage thereby."]
[null,null,null,"OBS: This workbook uses macros. Set security options in Tools:Macro:Security… to enable macros."]
[]
[null,"Saturation properties given temperature",null,null,null,"Saturation properties given pressure"]
[null,"Temperature",120.0,"°C",null,"Pressure",12.57,"bar a"]
[null,"Saturation pressure",{"$f":"psat_t(C7)","v":"#NAME?"},"bar a",null,"Saturation temperature",{"$f":"Tsat_p(G7)","v":"#NAME?"},"°C"]
[null,"Liquid",null,null,null,"Liquid"]
[null,"Enthalpy",{"$f":"hL_T(C7)","v":"#NAME?"},"kJ/kg",null,"Enthalpy",{"$f":"hL_p(G7)","v":"#NAME?"},"kJ/kg"]
[null,"Density",{"$f":"rhoL_T(C7)","v":"#NAME?"},"kg/m3",null,"Density",{"$f":"rhoL_P(G7)","v":"#NAME?"},"kg/m3"]
[null,"Entropy",{"$f":"sL_T(C7)","v":"#NAME?"},"kJ/kgK",null,"Entropy",{"$f":"sL_p(G7)","v":"#NAME?"},"kJ/kgK"]
[null,"Vapour",null,null,null,"Vapour"]
[null,"Vapour enthalpy",{"$f":"hV_T(C7)","v":"#NAME?"},"kJ/kg",null,"Vapour enthalpy",{"$f":"hV_p(G7)","v":"#NAME?"},"kJ/kg"]
[null,"Vapour density",{"$f":"rhoV_T(C7)","v":"#NAME?"},"kg/m3",null,"Vapour density",{"$f":"rhoV_p(G7)","v":"#NAME?"},"kg/m3"]
[null,"Vapour Entropy",{"$f":"sV_T(C7)","v":"#NAME?"},"kJ/kgK",null,"vapour Entropy",{"$f":"sV_p(G7)","v":"#NAME?"},"kJ/kgK"]
[null,"Evaporation energy",{"$f":"C14-C10","v":"#NAME?"},"kJ/kg",null,"Evaporation energy",{"$f":"G14-G10","v":"#NAME?"},"kJ/kg"]
[]
[null,"Properties given pressure and temperature",null,null,null,"Properties given pressure and enthalpy"]
[null,"Pressure",1.0,"bar a",null,"Pressure",12.57,"bar a"]
[null,"Temperature",100.0,"°C",null,"Enthalpy",2788.0,"kJ/kg"]
[null,"Enthalpy",{"$f":"h_pt(C20,C21)","v":"#NAME?"},"kJ/kg",null,"Temperature",{"$f":"T_ph(G20,G21)","v":"#NAME?"},"°C"]
[null,"Density",{"$f":"rho_pT(C20,C21)","v":"#NAME?"},"kg/m3",null,"Density",{"$f":"rho_ph(G20,G21)","v":"#NAME?"},"kg/m3"]
[null,"Entropy",{"$f":"s_pT(C20,C21)","v":"#NAME?"},"kJ/kgK",null,"Entropy",{"$f":"s_ph(G20,G21)","v":"#NAME?"},"kJ/kgK"]
[null,"Vapour fraction",{"$f":"x_ph(C20,C22)*100","v":"#NAME?"},"%",null,"Vapour fraction",{"$f":"x_ph(G20,G21)*100","v":"#NAME?"},"%"]
[null,"IF97 Region",{"$f":"region_pt(C20/10,C21+273.15)","v":"#NAME?"},null,null,"IF97 Region",{"$f":"region_ph(G20/10,G21)","v":"#NAME?"}]
[null,"Phase",{"$f":"IF(C26=2,\"Steam\",IF(C26=1,\"Liquid\",IF(C26=4,\"Mixture\",\"\")))","v":"#NAME?"},null,null,"Phase",{"$f":"IF(G26=2,\"Steam\",IF(G26=1,\"Liquid\",IF(G26=4,\"Mixture\",\"\")))","v":"#NAME?"}]
[null,"Isobaric heat capacity ",{"$f":"Cp_pT(C20,C21)","v":"#NAME?"},"kJ/kg",null,"Isobaric heat capacity ",{"$f":"Cp_ph(G20,G21)","v":"#NAME?"},"kJ/kg"]
[null,"Speed of sound",{"$f":"w_pT(C20,C21)","v":"#NAME?"},"m/s",null,"Speed of sound",{"$f":"w_ph(G20,G21)","v":"#NAME?"},"m/s"]

{"sheet":"Functions","index":1,"n_rows":150,"n_cols":8,"rows_kept":150,"cut":false,"hidden":false,"merged":[]}
["X Steam Tables",null,null,"v2.6"]
["Steam tables by Magnus Holmgren according to IAPWS IF-97 "]
["The excel scripts are stored inside this workbook. (No extra files are needed. Start from a copy of this workbook. This page can be removed)"]
["For error-reporting, feedback, other units etc. contact:"]
["The steam tables are free and provided as is. We take no responsibilities for any errors in the code or damage thereby."]
["OBS: This workbook uses macros. Set security options in Tools:Macro:Security… to enable macros."]
[]
["Temperature"]
[" Tsat_p",1.0,"bar",null,null,{"$f":"Tsat_p(B9)","v":"#NAME?"},"°C","Saturation temperature"]
[" T_ph",1.0,"bar",100.0,"kJ/kg",{"$f":"T_ph(B10,D10)","v":"#NAME?"},"°C","Temperture as a function of pressure and enthalpy"]
[" T_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"T_ps(B11,D11)","v":"#NAME?"},"°C","Temperture as a function of pressure and entropy"]
[" T_hs",100.0,"kJ/kg",0.2,"kJ/(kg K)",{"$f":"T_hs(B12,D12)","v":"#NAME?"},"°C","Temperture as a function of enthalpy and entropy"]
["Pressure"]
[" psat_T",100.0,"°C",null,null,{"$f":"psat_t(B14)","v":"#NAME?"},"bar","Saturation pressure"]
[" p_hs",84.0,"kJ/kg",0.296,"kJ/(kg K)",{"$f":"p_hs(B15,D15)","v":"#NAME?"},"bar","Pressure as a function of h and s. "]
[" p_hrho",2000.0,"kJ/kg",5.0,"kg/m3",{"$f":"p_hrho(B16,D16)","v":"#NAME?"},"bar","Pressure as a function of h and rho (density). Very unaccurate for solid water region since it's almost incompressible!"]
["Enthalpy"]
[" hV_p",1.0,"bar",null,null,{"$f":"hV_p(B18)","v":"#NAME?"},"kJ/kg","Saturated vapour enthalpy"]
[" hL_p",1.0,"bar",null,null,{"$f":"hL_p(B19)","v":"#NAME?"},"kJ/kg","Saturated liquid enthalpy"]
[" hV_T",100.0,"°C",null,null,{"$f":"hV_T(B20)","v":"#NAME?"},"kJ/kg","Saturated vapour enthalpy"]
[" hL_T",100.0,"°C",null,null,{"$f":"hL_T(B21)","v":"#NAME?"},"kJ/kg","Saturated liquid enthalpy"]
[" h_pT",1.0,"bar",20.0,"°C",{"$f":"h_pt(B22,D22)","v":"#NAME?"},"kJ/kg","Entalpy as a function of pressure and temperature."]
[" h_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"h_ps(B23,D23)","v":"#NAME?"},"kJ/kg","Entalpy as a function of pressure and entropy."]
[" h_px",1.0,"bar",0.5,null,{"$f":"h_px(B24,D24)","v":"#NAME?"},"kJ/kg","Entalpy as a function of pressure and vapour fraction"]
[" h_Tx",100.0,"°C",0.5,null,{"$f":"h_tx(B25,D25)","v":"#NAME?"},"kJ/kg","Entalpy as a function of temperature and vapour fraction"]
[" h_prho",1.0,"bar",2.0,"kg/m3",{"$f":"h_prho(B26,D26)","v":"#NAME?"},"kJ/kg","Entalpy as a function of pressure and density. Observe for low temperatures (liquid) this equation has 2 solutions. (Not valid!!)"]
["Specific volume"]
[" vV_p",1.0,"bar",null,null,{"$f":"vV_p(B28)","v":"#NAME?"},"m3/kg","Saturated vapour volume"]
[" vL_p",1.0,"bar",null,null,{"$f":"vL_p(B29)","v":"#NAME?"},"m3/kg","Saturated liquid volume"]
[" vV_T",100.0,"°C",null,null,{"$f":"vV_T(B30)","v":"#NAME?"},"m3/kg","Saturated vapour volume"]
[" vL_T",100.0,"°C",null,null,{"$f":"vL_T(B31)","v":"#NAME?"},"m3/kg","Saturated liquid volume"]
[" v_pT",1.0,"bar",100.0,"°C",{"$f":"v_pT(B32,D32)","v":"#NAME?"},"m3/kg","Specific volume as a function of pressure and temperature."]
[" v_ph",1.0,"bar",1000.0,"kJ/kg",{"$f":"v_ph(B33,D33)","v":"#NAME?"},"m3/kg","Specific volume as a function of pressure and enthalpy"]
[" v_ps",1.0,"bar",5.0,"kJ/(kg K)",{"$f":"v_ps(B34,D34)","v":"#NAME?"},"m3/kg","Specific volume as a function of pressure and entropy."]
["Density"]
[" rhoV_p",1.0,"bar",null,null,{"$f":"rhoV_p(B36)","v":"#NAME?"},"kg/m3","Saturated vapour density"]
[" rhoL_p",1.0,"bar",null,null,{"$f":"rhoL_P(B37)","v":"#NAME?"},"kg/m3","Saturated liquid density"]
[" rhoV_T",100.0,"°C",null,null,{"$f":"rhoV_T(B38)","v":"#NAME?"},"kg/m3","Saturated vapour density"]
[" rhoL_T",100.0,"°C",null,null,{"$f":"rhoL_T(B39)","v":"#NAME?"},"kg/m3","Saturated liquid density"]
[" rho_pT",1.0,"bar",100.0,"°C",{"$f":"rho_pT(B40,D40)","v":"#NAME?"},"kg/m3","Density as a function of pressure and temperature."]
[" rho_ph",1.0,"bar",1000.0,"kJ/kg",{"$f":"rho_ph(B41,D41)","v":"#NAME?"},"kg/m3","Density as a function of pressure and enthalpy"]
[" rho_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"rho_ps(B42,D42)","v":"#NAME?"},"kg/m3","Density as a function of pressure and entropy."]
["Specific entropy "]
[" sV_p",0.006117,"bar",null,null,{"$f":"sV_p(B44)","v":"#NAME?"},"kJ/(kg K)","Saturated vapour entropy"]
[" sL_p",0.0061171,"bar",null,null,{"$f":"sL_p(B45)","v":"#NAME?"},"kJ/(kg K)","Saturated liquid entropy"]
[" sV_T",1.0E-4,"°C",null,null,{"$f":"sV_T(B46)","v":"#NAME?"},"kJ/(kg K)","Saturated vapour entropy"]
[" sL_T",100.0,"°C",null,null,{"$f":"sL_T(B47)","v":"#NAME?"},"kJ/(kg K)","Saturated liquid entropy"]
[" s_pT",1.0,"bar",20.0,"°C",{"$f":"s_pT(B48,D48)","v":"#NAME?"},"kJ/(kg K)","Specific entropy as a function of pressure and temperature (Returns saturated vapour entalpy if mixture.)"]
[" s_ph",1.0,"bar",{"$f":"F22","v":"#NAME?"},"kJ/kg",{"$f":"s_ph(B49,D49)","v":"#NAME?"},"kJ/(kg K)","Specific entropy as a function of pressure and enthalpy"]
["Specific internal energy "]
[" uV_p",1.0,"bar",null,null,{"$f":"uV_p(B51)","v":"#NAME?"},"kJ/kg","Saturated vapour internal energy"]
[" uL_p",1.0,"bar",null,null,{"$f":"uL_p(B52)","v":"#NAME?"},"kJ/kg","Saturated liquid internal energy"]
[" uV_T",100.0,"°C",null,null,{"$f":"uV_T(B53)","v":"#NAME?"},"kJ/kg","Saturated vapour internal energy"]
[" uL_T",100.0,"°C",null,null,{"$f":"uL_T(B54)","v":"#NAME?"},"kJ/kg","Saturated liquid internal energy"]
[" u_pT",1.0,"bar",100.0,"°C",{"$f":"u_pT(B55,D55)","v":"#NAME?"},"kJ/kg","Specific internal energy as a function of pressure and temperature."]
[" u_ph",1.0,"bar",1000.0,"kJ/kg",{"$f":"u_ph(B56,D56)","v":"#NAME?"},"kJ/kg","Specific internal energy as a function of pressure and enthalpy"]
[" u_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"u_ps(B57,D57)","v":"#NAME?"},"kJ/kg","Specific internal energy as a function of pressure and entropy."]
["Specific isobaric heat capacity "]
[" CpV_p",1.0,"bar",null,null,{"$f":"CpV_p(B59)","v":"#NAME?"},"kJ/(kg°C)","Saturated vapour heat capacity "]
[" CpL_p",1.0,"bar",null,null,{"$f":"CpL_p(B60)","v":"#NAME?"},"kJ/(kg°C)","Saturated liquid heat capacity "]
[" CpV_T",100.0,"°C",null,null,{"$f":"CpV_T(B61)","v":"#NAME?"},"kJ/(kg°C)","Saturated vapour heat capacity "]
[" CpL_T",100.0,"°C",null,null,{"$f":"CpL_T(B62)","v":"#NAME?"},"kJ/(kg°C)","Saturated liquid heat capacity "]
[" Cp_pT",1.0,"bar",100.0,"°C",{"$f":"Cp_pT(B63,D63)","v":"#NAME?"},"kJ/(kg°C)","Specific isobaric heat capacity as a function of pressure and temperature."]
[" Cp_ph",1.0,"bar",200.0,"kJ/kg",{"$f":"Cp_ph(B64,D64)","v":"#NAME?"},"kJ/(kg°C)","Specific isobaric heat capacity as a function of pressure and enthalpy"]
[" Cp_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"Cp_ps(B65,D65)","v":"#NAME?"},"kJ/(kg°C)","Specific isobaric heat capacity as a function of pressure and entropy."]
["Specific isochoric heat capacity "]
[" CvV_p",1.0,"bar",null,null,{"$f":"CvV_p(B67)","v":"#NAME?"},"kJ/(kg°C)","Saturated vapour isochoric heat capacity"]
[" CvL_p",1.0,"bar",null,null,{"$f":"CvL_p(B68)","v":"#NAME?"},"kJ/(kg°C)","Saturated liquid isochoric heat capacity"]
[" CvV_T",100.0,"°C",null,null,{"$f":"CvV_T(B69)","v":"#NAME?"},"kJ/(kg°C)","Saturated vapour isochoric heat capacity"]
[" CvL_T",100.0,"°C",null,null,{"$f":"CvL_T(B70)","v":"#NAME?"},"kJ/(kg°C)","Saturated liquid isochoric heat capacity"]
[" Cv_pT",1.0,"bar",100.0,"°C",{"$f":"Cv_pT(B71,D71)","v":"#NAME?"},"kJ/(kg°C)","Specific isochoric heat capacity as a function of pressure and temperature."]
[" Cv_ph",1.0,"bar",200.0,"kJ/kg",{"$f":"Cv_ph(B72,D72)","v":"#NAME?"},"kJ/(kg°C)","Specific isochoric heat capacity as a function of pressure and enthalpy"]
[" Cv_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"Cv_ps(B73,D73)","v":"#NAME?"},"kJ/(kg°C)","Specific isochoric heat capacity as a function of pressure and entropy."]
["Speed of sound "]
[" wV_p",1.0,"bar",null,null,{"$f":"wV_p(B75)","v":"#NAME?"},"m/s","Saturated vapour speed of sound"]
[" wL_p",1.0,"bar",null,null,{"$f":"wL_p(B76)","v":"#NAME?"},"m/s","Saturated liquid speed of sound"]
[" wV_T",100.0,"°C",null,null,{"$f":"wV_T(B77)","v":"#NAME?"},"m/s","Saturated vapour speed of sound"]
[" wL_T",100.0,"°C",null,null,{"$f":"wL_T(B78)","v":"#NAME?"},"m/s","Saturated liquid speed of sound"]
[" w_pT",1.0,"bar",100.0,"°C",{"$f":"w_pT(B79,D79)","v":"#NAME?"},"m/s","Speed of sound as a function of pressure and temperature."]
[" w_ph",1.0,"bar",200.0,"kJ/kg",{"$f":"w_ph(B80,D80)","v":"#NAME?"},"m/s","Speed of sound as a function of pressure and enthalpy"]
[" w_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"w_ps(B81,D81)","v":"#NAME?"},"m/s","Speed of sound as a function of pressure and entropy."]
["Dynamic Viscosity"]
["Viscosity is not part of IAPWS Steam IF97. Equations from \"Revised Release on the IAPWS Formulation 1985 for the Viscosity of Ordinary Water Substance\", 2003 are used."]
["Viscosity in the mixed region (4) is interpolated according to the density. This is not true since it will be two fases."]
[" my_pT",1.0,"bar",100.0,"°C",{"$f":"my_pT(B85,D85)","v":"#NAME?"},"Pa s","Viscosity as a function of pressure and temperature."]
[" my_ph",1.0,"bar",100.0,"kJ/kg",{"$f":"my_ph(B86,D86)","v":"#NAME?"},"Pa s","Viscosity as a function of pressure and enthalpy"]
[" my_ps",1.0,"bar",1.0,"kJ/(kg K)",{"$f":"my_ps(B87,D87)","v":"#NAME?"},"Pa s","Viscosity as a function of pressure and entropy."]
["Prandtl"]
["Calcualted as Cp*my/tc"]
[" pr_pT",1.0,"bar",200.0,"°C",{"$f":"pr_pT(B90,D90)","v":"#NAME?"},"-"]
[" pr_ph",1.0,"bar",2875.4750649489024,"kJ/kg",{"$f":"pr_ph(B91,D91)","v":"#NAME?"},"-"]
["Thermal Conductivity"]
["Revised release on the IAPS Formulation 1985 for the Thermal Conductivity of ordinary water substance (IAPWS 1998)"]
[" tcL_p",100.0,"bar",null,null,{"$f":"tcL_p(B94)","v":"#NAME?"},"W/(m K)","Saturated vapour thermal conductivity"]
[" tcV_p",1.0,"bar",null,null,{"$f":"tcV_p(B95)","v":"#NAME?"},"W/(m K)","Saturated liquid thermal conductivity"]
[" tcL_T",100.0,"°C",null,null,{"$f":"tcL_T(B96)","v":"#NAME?"},"W/(m K)","Saturated vapour thermal conductivity"]
[" tcV_T",100.0,"°C",null,null,{"$f":"tcV_T(B97)","v":"#NAME?"},"W/(m K)","Saturated liquid thermal conductivity"]
[" tc_pT",100.0,"bar",350.0,"°C",{"$f":"tc_pt(B98,D98)","v":"#NAME?"},"W/(m K)","Thermal conductivity as a function of pressure and temperature."]
[" tc_ph",1.0,"bar",350.0,"kJ/(kg K)",{"$f":"tc_ph(B99,D99)","v":"#NAME?"},"W/(m K)","Thermal conductivity as a function of pressure and enthalpy"]
[" tc_hs",100.0,"kJ/(kg K)",0.34,"kJ/(kg K)",{"$f":"tc_hs(B100,D100)","v":"#NAME?"},"W/(m K)","Thermal conductivity as a function of enthalpy and entropy"]
["Surface Tension"]
["IAPWS Release on Surface Tension of Ordinary Water Substance, September 1994"]
[" st_T",100.0,"°C",null,null,{"$f":"st_T(B104)","v":"#NAME?"},"N/m","Surface tension for two phase water/steam as a function of T"]
[" st_p",1.0,"bar",null,null,{"$f":"st_p(B104)","v":"#NAME?"},"N/m","Surface tension for two phase water/steam as a function of T"]
["Vapour fraction"]
[" x_ph",1.0,"bar",1000.0,"kJ/kg",{"$f":"x_ph(B106,D106)","v":"#NAME?"},null,"Vapour fraction as a function of pressure and enthalpy"]
[" x_ps",1.0,"bar",4.0,"kJ/(kg K)",{"$f":"x_ps(B107,D107)","v":"#NAME?"},null,"Vapour fraction as a function of pressure and entropy."]
["Vapour Volume Fraction"]
["Observe that vapour volume fraction is very sensitive. Vapour volume is about 1000 times greater than liquid volume and therfore vapour volume fraction"]
["gets close to the accurancy of steam IF-97"]
[" vx_ph",1.0,"bar",418.0,"kJ/kg",{"$f":"vx_ph(B111,D111)","v":"#NAME?"},null,"Vapour volume fraction as a function of pressure and enthalpy"]
[" vx_ps",1.0,"bar",4.0,"kJ/(kg K)",{"$f":"vx_ps(B112,D112)","v":"#NAME?"},null,"Vapour volume fraction as a function of pressure and entropy."]
[]
["Version history"]
["News in V2.6"]
["* Error in valid region for function tc_ptrho"]
["* Error in function h3_pt for temperatures near the saturation point."]
["News in V2.5"]
["* DLL distrubution for use in other applications"]
["* Freebasic translation"]
["* Fixed small error in Cv Region 5 p>1000bar"]
["News in V2.4a"]
["* ToSIUnit for h_ps region 4. (No effect in SI unit version)."]
["News in V2.4"]
["* Functions by p,rho inplemented in matlab also."]
["* Many missing ; in matlab causing printouts detected."]
["* OpenOffice version introduced. (Fixed calculation differences in open office and excel)"]
["* Matlab error giving varaible undefined in some backwards solutions fixed."]
["News in V2.3"]
["* Option Explicit, gives more efficient calculations."]
["* Extensive testing"]
["* my_ph not defined in region 4."]
["* Problems at region border for h4V_p to adress solver problems at the exact border."]
["* Problem at fast border check in region_ph fixed."]
["News in V2.2"]
["* Extensive testing"]
["* Fixed error in Cp_ph"]
["* Function p_hrho added. (Very good for calcualting pressure when heating a volume with water/steam mixture.)"]
["* Fixed error in T_hs return no value for vet region bellow the water saturation line."]
["* Prandtl number added"]
["News in V2.1"]
["* Calling function h_prho"]
["* Fixed problem with Cv reporting NaN in region 5."]
["* Equivivalent to the Matlab version. (Downloadable from www.x-eng.com)"]
["News in V2"]
["* Calling functions of h and s added."]
["* Thermal conductivity, Surface tension added"]
["* Calling functions h_px and h_tx added."]
["* Cp, Cv and w undefined in the mixed region. (Before interpolation with the vapor fraction was used.)"]
["* A work sheet \"Properties\" for simple lookups added."]