You are now following this Submission
- You will see updates in your followed content feed
- You may receive emails, depending on your communication preferences
XSteam.m is a function, written by Magnus Holmgren, for calculating Steam and Water properties according to the IAPWS IF-97 standard. XSteam is free, see http://www.x-eng.com or http://www.mathworks.com/matlabcentral/fileexchange/9817. Thanx to Magnus for his excellent work!
XSteam does not support vectors as passed arguments. So calling XSteam following vectorized code guidelines sometimes results in error messages. Therefore writing some kind of loops around XSteam seems to be unavoidable in certain cases.
XSteamW is a "wrapper" for XSteam, doing this "looping" around XSteam:
result = XSteamW (Var1, Var2);
result = XSteamW (Var1, Var2, Var3);
Unlike calling XSteam, Var2 and/or Var3 can now passed to XSteamW as row or columns vectors.
Results are calculated as an m-by-n matrix. The number m of rows
equals the length of Var2, the number n of columns equals
the length of Var3.
Example: calculation of steam enthalpy as a function of pressure and temperature, expressed in bar and °C:
pressure = [100, 150, 200];
temperature = [500, 510, 520, 530];
XSteamW ('h_pt', pressure, temperature)
will result in
ans =
1.0e+03 *
3.3751 3.4008 3.4263 3.4517
3.3108 3.3395 3.3678 3.3957
3.2412 3.2736 3.3052 3.3361
BTW: just a simple solution - comments and optimization welcome...
Cite As
Volker Staben (2026). XSteamW - a vectorizing wrapper for XSteam (https://uk.mathworks.com/matlabcentral/fileexchange/29186-xsteamw-a-vectorizing-wrapper-for-xsteam), MATLAB Central File Exchange. Retrieved .
Acknowledgements
Inspired by: X Steam, Thermodynamic properties of water and steam.
Inspired: ThermoSolver
General Information
- Version 1.0.0.0 (98.2 KB)
MATLAB Release Compatibility
- Compatible with any release
Platform Compatibility
- Windows
- macOS
- Linux
| Version | Published | Release Notes | Action |
|---|---|---|---|
| 1.0.0.0 |
