水和水蒸气物性参数库

请问谁有水和水蒸气的物性参数库,要求C语言能调用,如果没有完整的库给个简单的由温度求饱和压力的公式也行,有偿

去这个网站找找;https://webbook.nist.gov/chemistry/name-ser/

引用chatGPT作答,常用的水和水蒸气的物性参数库包括IAPWS-IF97和IAPWS-95。这些库通常是用Fortran语言编写的,但也有一些开源的C语言库可以调用,例如CoolProp和REFPROP。

如果你只需要一个简单的由温度求饱和压力的公式,可以使用Antoine方程或Clausius-Clapeyron方程。这些方程式可以根据温度计算饱和压力。

Antoine方程:

img


其中,$P^\text{sat}$是饱和压力(单位为bar),$T$是温度(单位为摄氏度),$A$、$B$和$C$是常数,其值可以根据物质种类而定。例如,对于水,常数的值为:

img


其中,$P$是压力(单位为Pa),$T$是温度(单位为开尔文),$\Delta H$是相变潜热(单位为J/kg),$R$是气体常数(单位为J/(kg·K))。对于水的液-气相变,$\Delta H$的值约为$2.26\times 10^6$ J/kg。

通过数值积分,可以从一个已知的温度$T_1$出发,计算出另一个温度$T_2$对应的饱和压力$P^\text{sat}_2$。具体的数值积分方法可以采用龙格-库塔法等常用的数值积分算法实现。

1、在常温常压下,饱和蒸汽压力的Antoine方程如下:
log10 P = A - B/(T+C)

2、Clausius-Clapeyron方程
ln(P2/P1) = (ΔHvap/R)[1/T1 - 1/T2]

其中:

P1和P2是两个温度不同但都处于饱和状态的蒸汽的压力(单位为Pa)
T1和T2分别是对应的温度(单位为K)
ΔHvap是单位摩尔物质的汽化热(单位为J/mol)
R是气体常数,其数值为8.314 J/(mol·K)。

开源CoolProp,C语言编的,有各种接口,我做过java的。https://gitcode.net/withstand/coolpropwin。

以下答案由GPT-3.5大模型与博主波罗歌共同编写:
可以使用IAPWS-IF97标准提供的参数库来获取水和水蒸气的物性参数。该标准提供了一种在C语言中使用的函数库,可以轻松地从温度、压力等参数计算出水的密度、比热、粘度等物性参数,也可以计算出饱和压力等参数。

以下是一个简单的示例代码,用于计算给定温度下的饱和压力:

#include <stdio.h>
#include "if97_lib.h" //引用IAPWS-IF97标准提供的头文件

int main() {
    double T = 100; //温度,单位为摄氏度
    double P; //饱和压力,单位为MPa

    P = if97_psat_T(T + 273.15); //调用函数计算饱和压力

    printf("At %g C, the saturation pressure of water is %g MPa\n", T, P);

    return 0;
}

需要注意的是,在使用IAPWS-IF97标准时,需要将温度转换为绝对温度(即Kelvin),因此在上面的示例代码中,我们将输入的温度加上了273.15来得到绝对温度。

如果需要计算其他物性参数,可以调用if97库提供的其他函数,具体可以查看if97_lib.h头文件中的函数定义。
如果我的回答解决了您的问题,请采纳!