登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
上午把格点插值的源程序发上去了,因有人关注,特别把插值原理跟大家解释一下:
将离散点转化为规则网格上的点来分析气象要素的分布,是气象分析的一个重要工作之一,也是等值线分析的一个基础工作,因此如何将一些离散的不均匀的台站资料处理成标准的格点数据资料,是一件重要而且必要的事。 差值方法 设有一系列离散点数据,每个点包含位置和数值信息(即:lon,lat,val)。需要将这些离散点插入到一个矩形网格图中,其中在经度方向为MX个,纬度为MY个,总个点数数MX*MY个。 file:///C:/Users/lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image006.gif为格点(i,j)的插入值,file:///C:/Users/lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image008.gif离散点数值,file:///C:/Users/lenovo/AppData/Local/Temp/msohtmlclip1/01/clip_image010.gif为权重。 权重以离散点距格点的距离的平方成反比, (3-2) 即离插入值越远贡献越小,为了避免过于平均,参与插值的离散点距格点的最大距离为格点间接的1.25倍较为合理,为避免距格点距离过近的点权重过大,程序中设置权重超过100的按100计算。 如果离散点稀疏,这样插值的又采用限制离散点最远距离,就会有些格点上没有值。如何采用用以有格点插入没有值的格点,无疑是问题的另一个难题。
假设要插入点(i,j)为了不使插入值以后出现奇异现象或数值变形,需要格点(i,j)四周都有值,上边不能全空,下边不能前空,左边不能全空,右边不能全空;
上面的约束条件还不能满足格点四周都有值的条件,比如格点(i-1,j-1)和(i+1,j+1)不空或者格点(i-1,j+1)和(i+1,j-1)都能满足上面四个条件; 因此还需要限制条件:左上角不能全空,右上角不能全空,左下角不能全空,右下角不能全空。
因为发现图片粘贴不上去下面是用QQ截图把说明文档附上:
程序实现方法请参考: C#编写格点插值法http://bbs.06climate.com/forum.php?mod=viewthread&tid=27292&fromuid=37658(出处: 气象家园)
|