资源描述:
《离散点插值方法、等值线的绘制及平滑技巧》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、离散点插值方法、等值线的绘制及平滑技巧2008-06-1022:45由于等值线图看起来非常直观、形象,因此在天气预报、气候预测分析等方面用得非常多,已成为预报员不可缺少的工具之一。如各等压面层的位势高度图、高空环流、温度及降水分布图等等。目前也有一些非常好的微机用绘图软件,如SUFER、GRADS等。这些软件一般都只有DOS版,在流行的WINDOWS平台上,虽然可以调用,但不能使用鼠标操作,故不如使用在WINDOWS环境中开发的软件方便。因此,许多希望在自己开发的应用程序中能方便地显示及打印各类等值线图
2、的人,都想知道绘制等值线图的原理方法。如何用格点资料绘制等值线图在文献〔1〕中已有介绍,而离散点(如气象台站)的资料必须通过插值才能绘制等值线图。插值的方法有几种,比如三角网插值,它是将相邻的三个点连成一个个三角形,然后用文献〔1〕介绍的追踪法或其它方法在三角形边上进行插值。此方法的优点是需要插的值少,插值算法简单,数据处理量少。缺点是三角网的生成随意性很大,任意四个点可生成二组不同的三角形,不同的三角网插值得出的等值线也不可能完全相同。若人为固定三角网,当有资料缺测时,就不得不重新调整三角网,因此程序
3、的通用性不高。目前比较流行的是通用性好的网格化方法。1 离散点网格化 理论上,离散点网格化可采用局部曲面拟合方法,用多元回归方法建立V(X,Y)=a+bX+cY或二次方程V(X,Y)=a+bX+cY+dX2+eY2+fXY所谓局部,是指采用拟合点周围一定范围的部分离散点进行拟合。这种做法虽然在许多情况下效果不错,但通常总是有些地方与实际情况有较大出入。因此根据人工绘制等值线时的直接内插方式,采用以下几个步骤。111 定 点(1)根据离散点的分布范围确定整个网格的范围及网格距,网格距不宜过大或过细。(2
4、)确定每个离散点属于哪一个网格,也即每个网格包含哪些离散点。(3)在欲插值的网格点周围一定范围内(约3~4个网格距如图1),按其4个象限各找一个合适的离散点,剔除距离插值点最远的一个点(或其对面象限的点,使网格点处于另三点组成的三角形之内)。若有2个象限找不到离散点,则要判别是否有已插值的格点值可替代,若也没有已插值可替代,则该格点暂时不插值,并记下该格点位置,留最后补插值。图1 离散点网格化找合适点的原则:Abs(Xi-X0)×A+Abs(Yi-Y0)×B=最小式中:X0、Y0———为网格点坐标,A、
5、B———为权重系数,(可根据其相邻象限有无离散点不断调整)。112 插 值当某离散点与网格点距离小于011个网格距时,可近似作为该网格点值。一般情况下,先由3个点插出与纬向线相交点的2个值,最后这2个值内插出网格点上的值。为了使内插值更准确,可以考虑所选的3个离散点各点与网格点的距离,内插时乘上权重系数,距离越近权重系数越大。当4个离散点的值如图2的情况时,有可能是高中心,正常插值肯定小于这4个点的最大值,不成为高中心,因此要根据周围离散点的值作特殊处理。图2 高中心特殊处理113 补 插将初次无法进行
6、插值记录下来的格点,重新检查是否可插值。114 外围点插值采用此方法插值,得到的网格点值只能在外围离散点所包的范围内。为了使插值的网格点尽可能包围外围离散点,可以在外围采用外延的方法,将插值网格点扩大一圈。方法是:对于任一个无插值网格点,在其周围应有8个(边线上5个)方向,任何一个方向,只要最近的两个格点有值,则可外推出该格点值,将8方向可能推出的两个以上的值求算术平均作为该格点的插值。115 技 巧为方便下一步连等值线,所有格点的值不要与等值线的值相等,可对插出的格点值增减一个非常小的值ε(如0101
7、)。若周围有一个格点的值比该值大,则减去ε,否则加上ε。2 绘制等值线 网格点资料如何绘制等值线,文献〔1〕介绍了直接追踪法,这里介绍另一种方法。(1)先将每个已插值的网格点与其右边及下边两个网格点值进行比较,若满足条件Sgn(Z(x,y)-Z0)+Sgn(Z(x+1,y)-Z0)=0则记录一竖线段两个坐标Sgn(Z(x,y)-Z0)+Sgn(Z(x,y+1)-Z0)=0则记录一横线段两个坐标式中:Z(3)———格点值;Z0———等值线的值;Sgn( )———求正负号函数。即把所有格点值看成只有两值,
8、一是大于Z0,一是小于Z0(前面插值处理使任何一格点值不等于Z0),最后可得到若干条线段(图3)。图3 两值化的等值线图(2)线段连接。对于某一线段X,根据其终点,顺序查找与之共点的起点或终点的线段Y,确定他们相连关系,根据线段X两边格点值插出等值线值的位置,作为等值线的一个点坐标并记录下来。再根据Y的终点或起点继续查找..,当再也找不到时,即为该连线的一个端点,同样要插值确定并记录该线终点坐标。再回过头从线段X的起点继续找,直至找到另一个