0005. 饱和水汽压的计算

发布时间:2015-01-08 21:33:04   来源:文档文库   
字号:

0005. 饱和水汽压的计算

1.1 饱和水汽压的计算公式

人们平时所说的“空气”,实际上是含有水蒸汽的湿空气;虽然水蒸汽在“空气”中的含量极少,但其对空气环境的干燥与潮湿程度产生重要影响,使得湿空气的物理性质发生改变。在一定温度下,只有当水蒸汽压力恰好处于某一定值时,水与水汽之间、或冰与水汽之间的蒸发与凝结过程,才能够保持动态平衡状态。当空气中存在着这样的水汽压平衡体系时,称之为“饱和”,此时空气中的水蒸汽压力称为饱和水蒸汽分压。饱和水蒸汽分压力是计算湿空气的密度、露点等性质的基础。

饱和水蒸汽分压力是绝对温度T的函数,其计算公式繁多,举例如:Goff-Gratch(戈夫、格雷奇)公式、Magnus(马格努斯)公式、Hyland-Wexler(海兰、韦克斯勒)公式、Tetens(泰登)公式、Buck(巴克)公式、Marti-Mauersberger(马蒂、毛厄斯贝格尔)公式等。其中,Goff-Gratch公式是联合国世界气象组织(World Meteorological OrganizationWMO1966年建议采用的饱和水蒸气分压计算公式,是权威计算公式。在热力学,可使一种物质三相(气相液相固相)共存温度压强的数值,称为这种物质的三相点水的三相点0.01273.15+0.01 = 273.16K611.657Pa

1. 世界气象组织推荐的Goff-Gratch公式如下。

在纯水、平面表面的饱和水汽压Ew单位hPa1hPa = 100Pahhecto的缩写常用对数方程为:

lgEw = C1 × (1-T1/T) + C2 × lg(T/T1) + C3 × [ 1-10C6×(T/T1-1) ] + C4 × [ 10C7×(1-T1/T) - 1 ] + C5

在这个方程中,C1 = 0.107 957 4 × 102C2 = - 0.502 8 × 10C3 = 0.150 475 × 10-3C4 = 0.428 73 × 10-3C5 = 0.786 14C6 = - 0.829 69 × 10C7 = 0.476 955 × 10 ; T1 = 273.16K水的三相点温度),T = 273.15+t (K)

2. Goff-Gratch公式改良版见下。

. t<0℃(T<273.15K在纯冰、平面表面的饱和水汽压Ei单位hPa常用对数方程为:

lgEi = C1 × (T1/T -1) + C2 × lg(T1/T) + C3 × (1-T/T1) + lg(C4)

在这个方程中,C1 = - 0.909 718 × 10C2 = - 0.356 654 × 10C3 = 0.876 793C4 = 0.610 710 × 10T1 = 273.16K(水的三相点温度),T = 273.15+t (K)

. t>0℃(T>273.15K在纯水、平面表面的饱和水汽压Ew单位hPa常用对数方程为:

lgEw = C5 × (T2/T -1) + C6 × lg(T2/T) + C7 × [ 10C9×(1-T/T2) - 1 ] + C8 ×[ 10C10×(T2/T-1) - 1 ] + lg(C11)

在这个方程中,C5 = - 0.790 298 × 10C6 = + 0.502 808 × 10C7 = - 0.138 160 × 10-6C8 = + 0.813 280 × 10-2C9 = + 0.113 440 × 102C10 = - 0.349 149 × 10C11 = + 101.3246 × 10T2 = 373.16KT = 273.15+t (K)

3. Hyland-Wexler公式见下。

. t = (-1000)在纯冰、平面表面的饱和水汽压Ei单位Pa自然对数方程为:

lnEi = C1/T + C2 + C3T + C4T2 + C5T3 + C6T4 + C7ln(T)

在这个方程中,C1 = - 0.567 453 59 × 104C2 = 0.639 252 47 × 10C3 = - 0.967 784 30 × 10-2C4 = 0.622 157 01 × 10-6C5 = 0.207 478 25 × 10-8C6 = - 0.948 402 40 × 10-12C7 = 0.416 350 19 × 10T = 273.15+t (K)

. t = (0200)在纯冰、平面表面的饱和水汽压Ew单位Pa自然对数方程为:

lnEw = C8/T + C9 + C10T + C11T2 + C12T3 + C13ln(T)

在这个方程中,C8 = - 0.580 022 06 × 104C9 = 0.139 149 93 × 10C10 = - 0.486 402 39 × 10-1C11 = 0.417 647 68 × 10-4C12 = - 0.144 520 93 × 10-7C13 = 0.654 596 73 × 10T = 273.15+t (K)

1.2 饱和水汽压Matlab计算

1.2.1 世界气象组织推荐Goff-Gratch公式的Matlab语言函数

1. 饱和水汽压EiEw单位hPa常用对数lgE的计算。

function lgE = Goff_Gratch_WMO (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量lgE饱和水汽压Ew(单位:hPa1hPa = 100Pahhecto的缩写)的常用对数.

%%%%%% 常量、常数 %%%%%%

t1 = 273.15 + 0.01 ;

%%%%%% 因子 %%%%%%

c1 = + 0.1079574 * 10^2 ;

c2 = - 0.502800 * 10 ;

c3 = + 0.150475 * 10^(-3) ;

c4 = + 0.42873 * 10^(-3) ;

c5 = + 0.78614 ;

c6 = - 0.82969 * 10 ;

c7 = + 0.476955 * 10 ;

%%%%%% 绝度温度 %%%%%%

tk = t + 273.15 ; % 将实验中测得的摄氏温度值转换为绝对温度值

%%%%%% 主体计算 %%%%%%

[row, column] = size(t) ;

for i = 1:column

lgE(i) = c1 * ( 1 - t1/tk(i) ) ...

+ c2 * log10( tk(i)/t1 ) ...

+ c3 * ( 1 - 10^ ( c6 * (tk(i)/t1-1 ) ) ) ...

+ c4 * ( 10^ ( c7 * ( 1- t1/tk(i) ) ) -1 ) ...

+ c5 ; %(单位:hPa

end

2. 饱和水汽压EiEw单位kPa计算。

function E = E_GoffGratch_WMO (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量E饱和水汽压Ew(单位:kPa

%%%%%% 常量、常数 %%%%%%

lgE = Goff_Gratch_WMO (t) ; % 此处,饱和水汽压EEw)的单位hPa100Pa

E_hPa = 10 .^ lgE ; % E_hPa单位仍然是hPa

E = E_hPa / 10 ; % E单位是是kPa

1.2.2 Goff-Gratch公式改良版Matlab语言函数

1. 饱和水汽压EiEw单位hPa常用对数lgE的计算。

function lgE = Goff_Gratch (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量lgE饱和水汽压EiEw(单位:hPa1hPa = 100Pahhecto的缩写)的常用对数.

%%%%%% 常量、常数 %%%%%%

t1 = 273.15 + 0.01 ; % 使用于当t < 0℃的时候

t2 = t1 + 100 ; % 使用于当t > 0℃的时候

%%%%%% 因子 %%%%%%

c1 = - 0.909718 * 10 ; % 使用于当t < 0℃的时候

c2 = - 0.356654 * 10 ; % 使用于当t < 0℃的时候

c3 = + 0.876793 ; % 使用于当t < 0℃的时候

c4 = + 0.610710 * 10 ; % 使用于当t < 0℃的时候

c5 = - 0.790298 * 10 ; % 使用于当t > 0℃的时候

c6 = + 0.502808 * 10 ; % 使用于当t > 0℃的时候

c7 = - 0.138160 * 10^(-6) ; % 使用于当t > 0℃的时候

c8 = + 0.813280 * 10^(-2) ; % 使用于当t > 0℃的时候

c9 = + 0.113440 * 10^2 ; % 使用于当t > 0℃的时候

c10 = - 0.349149 * 10 ; % 使用于当t > 0℃的时候

c11 = + 101.3246 * 10 ; % 使用于当t > 0℃的时候

%%%%%% 绝度温度 %%%%%%

tk = t + 273.15 ; % 将实验中测得的摄氏温度值转换为绝对温度值

%%%%%% 主体计算 %%%%%%

[row, column] = size(t) ;

for i = 1:column

if t(i) < 0

lgE(i) = c1 * ( t1/tk(i) - 1 ) ...

+ c2 * log10( t1/tk(i) ) ...

+ c3 * ( 1 - tk(i)/t1 ) ...

+ log10 (c4) ; %(单位:hPa

else

lgE(i) = c5 * ( t2/tk(i) - 1 ) ...

+ c6 * log10( t2/tk(i) ) ...

+ c7 * ( 10^ ( c9 * ( 1 - tk(i)/t2 ) ) -1 ) ...

+ c8 * ( 10^ ( c10 * ( t2/tk(i) -1 ) ) -1 ) ...

+ log10 (c11) ; %(单位:hPa

end

end

2. 饱和水汽压EiEw单位kPa计算。

function E = E_GoffGratch (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量E饱和水汽压EiEw(单位:kPa

%%%%%% 常量、常数 %%%%%%

lgE = Goff_Gratch (t) ; % 此处,饱和水汽压EEiEw)的单位hPa100Pa

E_hPa = 10 .^ lgE ; % E_hPa单位仍然是hPa

E = E_hPa / 10 ; % E单位是是kPa

1.2.3 Hyland-Wexler公式Matlab语言函数

1. 饱和水汽压EiEw单位Pa自然对数lnE的计算。

function lnE = Hyland_Wexler (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量lgE饱和水汽压EiEw(单位:Pa)的自然对数.

%%%%%% 因子 %%%%%%

c1 = - 0.56745359 * 10^4 ; % 使用于t = (-1000)的时候

c2 = + 0.63925247 * 10 ; % 使用于t = (-1000)的时候

c3 = - 0.96778430 * 10^(-2) ; % 使用于t = (-1000)的时候

c4 = + 0.62215701 * 10^(-6) ; % 使用于t = (-1000)的时候

c5 = + 0.20747825 * 10^(-8) ; % 使用于t = (-1000)的时候

c6 = - 0.94840240 * 10^(-12) ; % 使用于t = (-1000)的时候

c7 = + 0.41635019 * 10 ; % 使用于t = (-1000)的时候

c8 = - 0.58002206 * 10^4 ; % 使用于t = (0200)℃的时候

c9 = + 0.13914993 * 10 ; % 使用于t = (0200)℃的时候

c10 = - 0.48640239 * 10^(-1) ; % 使用于t = (0200)℃的时候

c11 = + 0.41764768 * 10^(-4) ; % 使用于t = (0200)℃的时候

c12 = - 0.14452093 * 10^(-7) ; % 使用于t = (0200)℃的时候

c13 = + 0.65459673 * 10 ; % 使用于t = (0200)℃的时候

%%%%%% 绝度温度 %%%%%%

tk = t + 273.15 ; % 将实验中测得的摄氏温度值转换为绝对温度值

%%%%%% 主体计算 %%%%%%

[row, column] = size(t) ;

for i = 1:column

if ( t(i) >= -100 ) && ( t(i) < 0 )

lnE(i) = c1/tk(i) + c2 + c3*tk(i) + c4*(tk(i)^2) + c5*(tk(i)^3) + c6*(tk(i)^4) + c7*log(tk(i)) ; %(单位:Pa

elseif ( t(i) >= 0 ) && ( t(i) <= 200 )

lnE(i) = c8/tk(i) + c9 + c10*tk(i) + c11*(tk(i)^2) + c12*(tk(i)^3) + c13*log(tk(i)) ; %(单位:Pa

end

end

2. 饱和水汽压EiEw单位kPa计算。

function E = E_HylandWexler (t)

% 输入量t空气温度。请记为一个行向量。

% 输出量E饱和水汽压EiEw(单位:kPa

%%%%%% 常量、常数 %%%%%%

lnE = Hyland_Wexler (t) ; % 此处,饱和水汽压EEiEw)的单位Pa

E_Pa = exp(lnE) ; % E_Pa单位仍然是Pa

E = E_Pa / 1000 ; % E单位kPa

1.3 M-函数”的计算误差

1. Matlab 7.0中的程序代码

t = [ -100, -10, 0, 1, 10, 100] ;

E1 = E_GoffGratch_WMO (t)

E2 = E_GoffGratch (t)

E3 = E_HylandWexler (t)

2. Matlab 7.0中的执行结果

E1 = 0.0000 0.2862 0.6107 0.6565 1.2271 101.3251

E2 = 0.0000 0.2595 0.6103 0.6561 1.2264 101.2884

E3 = 0.0000 0.2599 0.6112 0.6571 1.2280 101.4187

3. 偏差

温度t

-100

-10

0

1

10

100

E1 = E_GoffGratch_WMO (t)

0.0000

0.2862

0.6107

0.6565

1.2271

101.3251

E2 = E_GoffGratch (t)

0.0000

0.2595

0.6103

0.6561

1.2264

101.2884

查表值(在百度中搜索“饱和水汽压表”)

-

-

0.61129

0.65716

1.2281

101.32

GB/T 6072.1-2008中的P13“附录B

-

0.30

0.60

0.64

1.20

-

E2 = E_HylandWexler (t)

0.0000

0.2599

0.6112

0.6571

1.2280

101.4187

张秀关

2015. 01. (03-08)

本文来源:https://www.2haoxitong.net/k/doc/ce5a2ca9ce2f0066f53322cc.html

《0005. 饱和水汽压的计算.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式