Freesteam是一个库,让您使用业界标准IAPWS - IF97计算水和水蒸汽性质蒸汽表。这是C + +类库,可到您的代码中。插件允许 freesteam能与电子表格和其他应用的集成正在开发中。所包含的单元测试确保与出版属性值的情况。 IAPWS - 95(科学使用)的相关性也包括在内,并作为此验证的一部分使用。
示例代码:
#include <freesteam/steam_ps.h> #include <freesteam/steam_pT.h> #include <freesteam/region4.h> #include <stdio.h> int main(void){ fprintf(stderr,"\nThis example demonstrates use of a few of the basic" " capabilities of freesteam. It calculates the rise in temperature" " seen in isentropic compression of a sample of steam initially at" " 1 bar, 400 K, to a final pressure of 10 bar. It also calculates" " the saturation temperature for steam at that final pressure.\n\n" ); double T = 400.; /* in Kelvin! */ double p = 1e5; /* = 1 bar */ fprintf(stderr,"Initial temperature = %f K, pressure = %f bar\n", T, p/1e5); /* set a steam state of 1 bar, 400 K */ SteamState S = freesteam_set_pT(1e5, 400); double s = freesteam_s(S); fprintf(stderr,"Entropy at initial state is %f kJ/kgK\n",s/1e3); /* calculate a steam state with entropy from above and 10 bar pressure */ SteamState S2 = freesteam_set_ps(10e5, s); double T2 = freesteam_T(S2); double p2 = freesteam_p(S2); /* output the new temperature */ fprintf(stderr,"New temperature is %f K at %f bar\n", T2, p2/1e5); fprintf(stderr,"Check: final entropy is %f kJ/kgK\n", freesteam_s(S2)/1e3); /* saturation temperature at final pressure */ double Tsat = freesteam_region4_Tsat_p(p2); fprintf(stderr,"Saturation temperature at %f bar is %f K.\n\n",p2/1e5, Tsat); return 0; }