|||
注:题目写的有些大了,实在想不出更准确的名字了。
之前写了一篇地震海啸数值模拟的论文,涉及到近岸地形和水深数据的处理问题。
首先地形和水深数据的参考基准面不同(datum),之后是需要对数据进行等间隔网格化。
按照一位老师的建议,把主要的步骤记下来,怕将来忘记,其实时隔近2个月了,有些
地方还真忘了。
参考了一些地震海啸数值模拟的文章,发现一般都是使用ETOPO2数据库,猜测可能是因为
这个数据库既有地形也有水深数据,海啸源多为远洋地震,外海区域水深值较大,模拟结
果不敏感,而且输出结果也是以10米或更深等深线处的海啸波高为主,对近岸地形和水深数据
要求不高。
我的论文中考虑的是局部地震海啸,震源离岸较近,而且希望能输出更近处的海啸波变化
情况,因此需要使用近岸地形和水深数据。
整体思路是沿海陆地高程使用GTOPO30和SRTM作为原始数据,近岸水深数据使用电子海图
作为原始数据。GTOPO30和SRTM的参考椭球均为WGS84,竖直向基准面分别为为MSL(mean sea level
平均海平面)和EGM96,二者在我国沿海地区数据网格大小分别为30弧秒和3弧秒上,述数据库的
其它内容可参考USGS网站(最近这两天可能不行,US政府关门了),链接如下:
GTOPO30:http://www.agiweb.org/pubs/globalgis/GTOPO30/GTOPO30.html
电子海图的参考椭球也是WGS84,竖直向基准面为局部海域验潮站的基准,通常为当地的略
低于最低低潮面(Mean Lower Low Water)。因此地形和水深数据的水平参考面是相同的,只需要
考虑竖直向基准面的差异。
首先根据海图的范围,从GTOPO30或SRTM数据库中下载相应的部分,使用GMT程序转换为xyz文件。
例如:对于GTOPO30
grdraster 33 %range% -I2m -G%temp1%
grd2xyz %temp1% %range%>%temp2%
对于SRTM
xyz2grd %hgt% -G%temp2% -I3c %hgtrange% -N%depth% -ZTLhw
grdcut %temp2% %range% -V -G%temp20%
grd2xyz %temp20% %range% >%temp200%
在使用gawk程序对原始数据进行竖直向校正后,将地形和水深数据写在同一个
文件中,其中%temp3%为地形数据文件名,%txt%为水深数据文件名
gawk "NR==FNR {print $1, $2, $3} ; NR>FNR { print $1, $2, $3} "
%temp3% %txt%>%temp4%
在分别按照原始数据的网格大小,使用GMT程序的
blockmedian和surface命令网格化,再用grd2xyz转换为xyz文件。
对GTOPO30
blockmedian %temp4% -I30c %range% >%temp5%
surface %temp5% -G%grd% -I30c %range%
grd2xyz %grd% %range% >%xyz%
对SRTM
blockmedian %xyz% -I3c %range% >%temp4%
surface %temp4% -I3c %range% -G%grd%
grd2xyz %grd% %range% >%xyz%
最后,画等值线图,观察结果是否有明显的错误。
整个处理过程参考了台湾大学和胡植庆教授的讲义,链接如下:
http://www.gl.ntu.edu.tw/geodesy/index.php?option=com_content&task=view&id=30&Itemid=49
关于各种竖向基准面的定义和相互关系,可以参考下述链接:
http://tidesandcurrents.noaa.gov/datum_options.html
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-26 22:23
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社