刘毅+杨丽丽+王艳侠
摘 要 本文阐述了一种埃玛图的绘制方法,用绘图展示大气状态的温湿特征量、不稳定能量以及特征高度等,为辐射计在气象领域的应用提供更多的产品展示。本文给出了该方法在VC++6.0下的实现方式。实验结果证明,该埃玛图的绘制方法具有可操作性和实用性。
【关键词】埃玛图 微波辐射计 VC++6.0
1 引言
埃玛图是一种由温度和对数气压组成的具有正交或外交坐标的热力学图解。我国普遍采用正变坐标系,横坐标为温度,纵坐标为对数气压,图的面积标示能量。
随着微波辐射计在气象领域的推广,辐射计软件对埃玛图的展示需求越来越高。本文介绍一种基于微波辐射计温度廓线、相对湿度廓线和当前压强的埃玛图绘制方法,能够直观地显示大气状态,为用户对未来天气的变化预测提供直观的依据。
2 绘图步骤
本文介绍的绘图输入是压强、温度廓线、相对湿度廓线等辐射计基础和反演数据,而显示的主要数据元素为状态曲线、露点温度曲线、温度廓线等,所以中间要经过一系列运算。
首先,根据压高公式,计算压强坐标。
第二步,根据温度和相对湿度的关系,计算露点温度曲线;
第三步,根据地面压强、温度曲线、露点温度曲线,计算状态曲线。
第四步,计算温度廓线和状态曲线的交点数据。
第五步,根据压强、温度跟绘图坐标的映射关系,进行绘图。
2.1 压强计算方法
本方法利用压高公式计算压强。
压高公式是描述气压随高度变化规律的公式。假设大气相对于地面处于静止状态,则某一点的气压值等于该点单位面积上所承受铅直气柱的重量。在大气柱中截取面积为1平方厘米,厚度为ΔZ的薄气柱。设高度Z1出的气压为P1,高度Z2处的气压为P2,空气密度为?,重力加速度为g,在静力平衡条件下,Z1面上的气压P1和Z2面上的气压P2间的气压差应等于这两个高度面的薄气柱重量,即:
P2-P1=-ΔP=-?g(Z2-Z1)=--?GΔZ
2.2 露点温度曲线计算方法
露点温度指空气在水汽含量和气压都不改变的条件下,冷却到饱和时的温度,就是空气中的水蒸气变为露珠时候的温度叫露点温度。
露点温度的计算与饱和水汽压有关。而饱和水汽压是一个与温度有关的函数。其经验计算公式为:
当T>=0℃时,
e*=611·exp(12.27·T/(T+237.3))
当T<=0℃时,
e*=611·exp(21.87·T/(T+265.5))
其中的T单位是摄氏度。
然后露点温度和水汽压的关系如下:
当T>=0℃时,
td=240.97*log(e/6.11)/(17.50-log(e/6.11))*rh
当T<=0℃时,
td=272.55*log(e/6.11)/(22.45-log(e/6.11))*rh
根据以上公式,在已知温度曲线和相对湿度曲线的条件下,可计算出露点温度曲线。
2.3 状态曲线计算方法
一般情况下,状态曲线分为干绝热部分和湿绝热部分。
干绝热部分是指从抬升起点沿着等位温线到达凝结高度(tc,pc)的部分,抬升凝结温度tc和抬升凝结气压pc的计算公式如下:
Tc=t0-(t0-td0)/(0.976-8.33*10-4*(237.3+td0)2/(237+td0))*0.976
Pc=p0*((273+tc)/(273+t0))cpd/rd
其中t0、td0、p0分别指抬升起点的温度、露点温度、欺压,cpd、rd是干空气的定压比热和气体常数。干绝热线的曲率很小,接近于直线,可以视为直线段进行连接。
湿绝热部分是从凝结高度开始,沿虚位温线,到达气压200hPa的部分。湿绝热线的曲率较大,需要计算各个端点进行连接。沿湿绝热线的条件满足虚位温不变,可以先计算凝结高度处的虚位温,然后用迭代的方法进行数据点的计算。
计算虚位温的公式如下:
θse=t*(1000/(P-es))rd/cpd*exp(L*r/cpd*t)
其中t、P是湿绝热线上某一点的温度和气压,es是该点的饱和水气压,cpd、rd是干空气的定压比热和气体常数,r为水汽的混合比。
计算湿绝热线上的各个数据点时,让压强递减,用二分法求压强对应的温度。
二分法计算温度流程如图1所示。
按图1所示算法,可将湿绝热线的数据点,一一计算得出。
2.4 绘图
将储存在结构体中的数据进行数据坐标转化,利用VC函数MoveTo、LineTo等实现曲线绘制。
3 绘图结论
本方法在VC++6.0开发环境下,进行埃玛图的绘图实现。
所绘埃玛图如图2所示。
由实验结果可以,本方法对环境温度、露点温度以及状态曲线都有良好的绘图效果。与手工绘图相比,大大提高了绘图效率,同时保证了绘图的精度。
参考文献
[1]郑良杰.中尺度天气系统的诊断分析和数值模拟[M].北京:气象出版社,1989:94-98.
[2]朱乾根,林锦瑞,等.氣象学原理和方法[M].北京:气象出版社,1981:448-507.
[3]许晨海,孔燕燕,等.中高层湿-比有效能量与雹云发生发展[J].应用气象学报,2002,13(01):122-124.
[4]孙鑫等.VC++6.0深入详解[M].北京:电子工业出版社,2001:236-243.