大家好!第3期,和大家一起交流一下如何获取和生成水深数据。 回顾上期,我介绍了关于如何获取和导入岸线信息,并使用gshhs岸线数据为例,介绍了SMS中cst文件的格式,这是我们生成FVCOM三角形网格的第一步,也是FVCOM准备工作中重要的开始步骤。与其他海洋模型(比如ROMS,HYCOM等)相比,FVCOM海洋模型最重要特点就是三角形网格,它既可以很好的描绘岸线的轮廓,又可以在近岸区域或者关注海域进行加密,提高水平分辨率。因此,岸线信息尤为重要。 在获得岸线信息之后,我们所需要的另外一个重要数据是水深。在这里给大家推荐一个水深数据ETOPO。ETOPO是由NGDC(US National Geophysical Data Center)公布的全球地形数据,包括陆地海拔和海洋水深,包含3个分辨率,即5分(ETOPO5)、2分(ETOPO2)和1分(ETOPO1)。对于中纬度海域,分辨率可以达到2km以内。 该数据可以在UCAR网站上得到,网址如下: https://rda.ucar.edu/datasets/ds759.4/ 数据格式为NetCDF,其中只有三个变量,即x、y和z,分别代表经度纬度和地形(向上为正)。像上期一样,我们仍以渤、黄海为例,设置边界为117°E~127°E,33°N~41°N,提取该区域内的数据点,使用MATLAB画图,结果如下图:
对于水深数据格式,SMS要求比较简单,我们可以直接写ASCII,分3列,分别为经度、纬度和水深(直角坐标时,写x、y和水深)。这里需要注意两点。第一,由于FVCOM中水深为正,所以我们在书写水深文件时,应把ETOPO的数据加负号;第二,我们可以删去一部分多余的陆地部分,但要保留一部分近岸陆地,以供SMS插值使用。在本例中,我保留了10m以下的区域。 书写完成后,我们可以直接将文件拖入SMS,在Open File Format中,选择“Use Import Wizard”,接下来的窗口中,我们可以选择文件中一些规则,比如数据是用空格还是逗号隔开的。
设置完成以后,SMS就显示除了我们的水深数据,红色点表示每一个数据点。
这时,我们可以通过Display Options设置,画出水深填色图。同时,我们可以一同展示上一周做的岸线数据。
6 Q9 o* {4 }/ u- X, ^2 o1 Z
|