NAO.99b海潮模型的详解教程

NAO.99b模型是由日本国家天文台开发的全球潮汐模式,基于二维非线性浅水方程。该模型具有较高的分辨率,网格间距为0.5°×0.5°,网格数为720×360,覆盖的经度范围为0.25°~359.75°E,纬度范围为89.75°S~89.75°N。该模型将5a的T/P高度计资料同化到动力模型中,并给出了包括K1、O1、P1等在内的16个分潮的调和常数。

NAO.99b 模型在潮汐模拟和预测方面具有较高的精度和可靠性,广泛应用于海洋学、气象学、地球物理学等领域。该模型可以模拟潮汐的周期性变化,预测潮汐的高度和流向,还可以用于研究潮汐对地球自转、地球重力场、海洋环流等的影响。

分潮常数是一个天文和海洋学概念,是指潮汐变化中分解出来的单个振动,是潮差的一半。H 和 K 是分潮的调和常数,其中 H 是分潮振幅,K 是分潮迟角,即假想天体上中天到该地分潮高潮的时间间隔。

1 VMware16+Ubuntu20安装步骤

首先如下公众号下载安装包

NAO.99b海潮模型的详解教程_第1张图片

其次按照如下步骤安装 VMware16+Ubuntu20,版本一定要对应好,要不然会产生不搭配的错误。

NAO.99b海潮模型的详解教程_第2张图片

2 Ubuntu20环境配置

1,桌面单击右键,打开终端,以下两行解决make的问题

sudo apt install make sudo apt install make-guile

2,虚拟机-安装vmware tools,在znq中将vmware-tools压缩包复制到桌面,在桌面解压缩提取到桌面,然后在桌面文件夹下用终端打开,输入:

sudo ./vmware-install. Pl

一直回车,输入y。就完成安装后,重启。

3,解决桌面全屏的问题

虚拟机-设置-显示器-加速3D图形不选-拉伸模式不选-保持纵横比拉伸勾选。

4,解决安装包无法定位的问题(添加镜像源)

Sudo gedit /etc/apt/sources. List

该命令打开sources.list文件夹,在该文件夹第一行输入

deb http://archive.ubuntu.com/ubuntu/trusty main universe restricted multiverse

保存文件,就可以安装以下安装包了,否则会提示E:软件安装包无法定位的问题。

5,必须先解决4才能开始5的解决。解决缺少libgfortran3.so.3缺少的问题

Sudo apt-get update

Sudo apt-get install gfortran

Sudo apt-get upgrade

Sudo apt-get install libgfortran3

Sudo apt install yum

sudo apt-get install libgfortran4

sudo apt-get install --fix-missing

6,如果开机出现蓝屏,建议更换 vmware16 版本的虚拟机,是因为旧版本的虚拟机已经不维护了。(这个问题解决了小半天.... 被自己蠢哭)。

7,解决共享文件夹的问题,免得一来二去总是用硬盘拷贝数据(这个可以过,我也没搞,一般都是直接插硬盘来回移动数据,虽然麻烦些,但是省事)

(1)在虚拟机关闭状态,编辑虚拟机设置-选项-共享文件夹-总是启用-添加目录(F:\vmware_share)

(2)znq-其他位置-计算机- /mnt/hgfs\vmware_share,这样就可以找到我们的共享文件夹了

(3)发送链接到桌面,在桌面单机右键打开终端输入:

ln -s /mnt/hgfs\vmware_share dir_share

3 NAO.99b tidal prediction system

官网:https://www.miz.nao.ac.jp/staffs/nao99/index_En.html

说明书:https://www.miz.nao.ac.jp/staffs/nao99/README_NAOTIDE_En.html#install

如下,一个是使用说明书,一个是全球潮汐模型安装包。安装包有好多,建议分两个文件夹,一个放置全球的潮汐模型,一个放置区域的潮汐模型。

下文中我已经下载好,可直接通过百度盘链接下载。既然通过我的教程学习,建议直接使用我下载的包,已经配置好环境了。

1 短周期海潮模型 (NAO.99b,NAO.99Jb 模型)-Short-period ocean tide model

16 个分潮为 M2, S2, K1, O1, N2, P1, K2, Q1, M1, J1, OO1, 2N2, Mu2, Nu2, L2, T2。

分辨率

2 长周期海潮模型 (NAO.99L 模型)-Long-period ocean tide model

7 种成分的分潮为 Mtm、Mf、MSf、Mm、MSm、 Ssa,sa。

分辨率

Sa 模型被重新采样成 0.5 度方便计算,虽然他们原来的分辨率是 1.0 度。

3 径向负荷潮汐模型-Radial loading tide model

上述23种成分的全局模型。 它们基于球谐分解高达360度和360阶的海洋潮汐场。

Sa 模型被重新采样成 0.5 度方便计算,虽然他们原来的分辨率是 1.0 度。

经测试,NAO.99b在浅水区优于CSR4.0和GOT99.2b模型。

4 程序介绍-naotest. f

Naotest. F 是用来调试的主程序,要根据个人需求修改其中的参数。

NAO.99b海潮模型的详解教程_第3张图片

at the line
      itmode   = 1
you can select tidal calculation mode.
itmode = 1 : compute geocentric tide, which is sum of pure
             ocean tide and radial loading tide. This mode
             is used for tidal correction for altimeter
             data. 
itmode = 2 : compute pure ocean tide with respect to ocean
             floor. This mode may be used for tidal
             correction for sea-bottom pressure gage.
itmode = 3 : compute radial loading tide.

在 itmode = 1 您可以选择潮汐计算模式。

Itmode = 1。计算地心潮汐,这是纯海潮和径向负荷潮。这种模式用于高度计的潮汐校正数据。

Itmode = 2。计算关于海洋的海底纯海潮。该模式可用于潮汐海底压力计的校正。

itmode = 3。计算径向负荷潮汐。

At the line
      lpmode  = 1
you can select the way of calculating long-period tide.
lpmode  = 1 : use the long-period ocean tide map of
              Takanezawa (2000, in prep.). 
lpmode  = 2 : use equilibrium tide model. This is valid for
              itmode = 1 or 2. Note that, however, the same
              value will be returned for both itmode values.

18.6-year period tide (Doodson #055.565) is treated as
equilibrium tide for both lpmode = 1 and 2.

在 lpmode = 1 可以选择计算长周期潮汐的方式。

Lpmode = 1。使用长周期海洋潮汐图。

Lpmode = 2。使用平衡潮汐模型。

18.6 年周期潮汐被视为 lpmode = 1 和 2 的平衡潮汐。

At the lines
      x       = 246.61503d0     ! East longitude in degree
      y       = -18.42767d0     ! North latitude in degree
given are the ocean location where you want to predict tides.

x = 246.61503d0 东经

Y = -18.42767d0 北纬

给定你想要预测潮汐的海洋位置。

At the lines
      iyear1  = 1997 ! year
      imon1   =    1 ! month
      iday1   =    1 ! day
      ihour1  =    0 ! hour
      imin1   =    0 ! minute
given are the start time epoch of prediction in UTC.


At the lines
      iyear2  = 1997 ! year
      imon2   =    1 ! month
      iday2   =    2 ! day
      ihour2  =    0 ! hour
      imin2   =    0 ! minute
given are the end time epoch of prediction in UTC.

给定海潮模型预测的开始时间和结束时间。(年月日时分)

At the line
      dt = 60.d0                ! in minute
give is the time step of prediction in minute.

给定海潮模型预测的步长。

At the line
      outfile = 'naotest.out'
given is the output file name.

给定预测完储存输出数据的文件名字。输出文件打开后如下图所示,及各个字母的物理含义解释如下。

NAO.99b海潮模型的详解教程_第4张图片

短周期潮汐值来自16个主要成分,33种次要成分是从主要成分中推断出来的 通过内插或外推导纳。

长周期潮汐值由7个主要分量组成 5个节点调制。18.6年周期平衡潮为 当itmode = 1或2时,添加到12项中。

5 程序安装

1 安装包需求介绍

全球海潮模型安装包需求介绍

naotide990909.tar.gz

nao99b_gc.tar.gz + nao99L_gc.tar.gz (if you need geocentric tidal height)

nao99b.tar.gz + nao99L.tar.gz (if you need pure ocean tidal height)

nao99b_rload.tar.gz (if you need radial loading tidal height)

区域海潮模型安装包需求介绍

naotidej990909.tar.gz

nao99Jb_gc.tar.gz + nao99L_gc.tar.gz (if you need geocentric tidal height)

nao99Jb.tar.gz + nao99L.tar.gz (if you need pure ocean tidal height)

(Note: No regional models for long-period tides and radial loading tides)

2 具体操作

将压缩包在 Windows 系统中下载好,解压,然后放到硬盘中。

接下来是到 Ubuntu 系统中的操作,打开虚拟机 VMware16,放大全屏后,稍等会儿就会出现硬盘了,把解压的包直接拖到 Ubuntu 系统的桌面上。

下面这些是说明书中的代码操作,都是解压和环境配置的一些操作,比较麻烦和繁琐,我已经下载好配置好环境,直接用我的拖到 Ubuntu 桌面即可。

链接:https://pan.baidu.com/s/11juuM3ZBIWI9aIM1itu19Q?pwd=6666 提取码:6666

Make nao99b directory.
(~): mkdir nao99b
(~): cd nao99b/

Make omap directory.
(~/nao99b): mkdir omap
(~/nao99b): cd omap

If you need geocentric tidal height;
(~/nao99b/omap): gunzip nao99b_gc.tar.gz
(~/nao99b/omap): tar xvf nao99b_gc.tar
(~/nao99b/omap): gunzip nao99L_gc.tar.gz
(~/nao99b/omap): tar xvf nao99L_gc.tar

If you need pure ocean tidal height;
(~/nao99b/omap): gunzip nao99b.tar.gz
(~/nao99b/omap): tar xvf nao99b.tar
(~/nao99b/omap): gunzip nao99L.tar.gz
(~/nao99b/omap): tar xvf nao99L.tar

If you need radial loading tidal height;
(~/nao99b/omap): gunzip nao99b_rload.tar.gz
(~/nao99b/omap): tar xvf nao99b_rload.tar

Extract naotide program in the nao99b directory.
(~/nao99b/omap): cd ..
(~/nao99b): gunzip naotide000909.tar.gz
(~/nao99b): tar xvf naotide000909.tar

Compile the program in the naotide directory.
(~/nao99b): cd naotide
(~/nao99b/naotide): f77 (or f90) -o naotest naotest.f

Make a link to the tide model directory.
(~/nao99b/naotide): ln -s ../omap .

打开Golbal文件夹,下文的教程是以全球海潮模型为例进行操作的。当然日本局部的也是一样的操作原理。

NAO.99b海潮模型的详解教程_第5张图片

在这个nao99b文件夹打开后,单击右键->用终端打开

NAO.99b海潮模型的详解教程_第6张图片

随机出现如下的界面,输入./naotest,然后回车就会运行程序,最后的海潮数据输出在naotest.out.exam 文件夹中,如下第二幅图就是我们利用nao99b建模预测的海平面高度。

NAO.99b海潮模型的详解教程_第7张图片

NAO.99b海潮模型的详解教程_第8张图片

3 获取振幅迟角数据(这部分还没调试通,不知道为啥)

本小节为说明书里的第七部分。

NAO.99b海潮模型的详解教程_第9张图片

上述操作得出的是海潮数据,如果还需要振幅,相位等数据,继续如下运行操作。在终端打开,依次输入下面三组命令。

f77 (f90) -o nao2xyap nao2xyap.f (编译nao2xyap)

./nao2xyap (执行可执行程序nao2xyap)

nao2xyap < m2.nao > m2.xyap (通过可执行程序nao2xyap对m2.nao进行数据处理生成当前数据区间的全球的m2分量的经度,纬度,振幅和迟角数据,包含在m2.xyap文件夹中)

如果不报错的话,程序运行需要时间,多些耐心。

NAO.99b海潮模型的详解教程_第10张图片

上述操作生成的 m2.xyap 文件夹一共四组数据,分别是全球区域的经度,纬度,振幅和迟角。

同理,也可根据上述操作生成 M2, S2, K1, O1, N2, P1, K2, Q1, M1, J1, OO1, 2N2, Mu2, Nu2, L2, T2等分量的全球区域的经度,纬度,振幅和迟角。(即要用omap文件夹中的n2.nao替换m2.nao)

6 绘制全球区域以及局部区域振幅或者迟角的分布图

以我们上文中的 m2 为例,绘制的全球区域的振幅以及局部区域的振幅分布图。如下图所展示,图示是基于 matlab2021b 版本以及上述中生成的 m2 的振幅数据做的绘图教程。教程不易,如果需要这部分绘图教程,感谢支持,请转如下获取:

NAO.99b海潮模型的详解教程_第11张图片

你可能感兴趣的:(海潮,fortran,开发语言,ubuntu,linux,unix)