工具包下载网址https://www.eoas.ubc.ca/~rich/#T_Tide
工具包作者的相关论文的中文翻译http://www.docin.com/p-1422922005.html
或者去下面的网址下载t_tide,这个网页提供了海洋研究里所用的主要的matlab工具包的下载地址!
下载哥伦比亚河口Astoria站的水位数据(在Water_level_records_Columbia_river.mat文件中)
T_TIDE工具包最核心的命令就是t_tide,下面举例来简要说一下这个函数的使用。
[NAME,FREQ,TIDECON,XOUT]=t_tide(astoria(1:8767,7),'interval',1,'latitude',46.3,'start
time',[2003,01,01,00]);
输入参数介绍:
astoria这个数组里就是我要分析的潮位数据,interval为1代表数据的间隔为1个小时,latitude为46.3代表测得该数据的验潮站的纬度,start
time代表数据的起始时间是2003年1月1号0时。
输出参数介绍:
NAME里为调和分析得到的分潮的名字,这个是根据数据的长度来确定的,越长的数据得到的分潮越多。
FREQ为分潮的角速率(°/h)
TIDECON第一列为分潮振幅,第二列为振幅的误差,第三列为分潮迟角,第四列为迟角的误差
信噪比(SNR)是衡量分潮是否显著的主要依据,计算方式为(分潮振幅/振幅误差)的平方,一般认为SNR>2的分潮是显著的。
XOUT(未加上平均海平面)调和分析回报的潮位
运行结果如下图所示,
x0=2.05436代表的是平均海平面是2.05436米。
回报作图程序如下:
plot(astoria(1:8767,7))
hold on
plot(2.05436+XOUT(:),'r')
xlabel('小时(h)')
ylabel('水位(米)')
legend('实测','回报')
xlim([1 720])
在t_tide里加上参数:'rayleigh',['M2';'S2';'K1';'O1'] 它就只分析给定的四大分潮
分享一个读者的经验:在使用t_tide的'rayleigh'参数选定要分析的分潮时,需要将分潮名称补齐至最长的那个分潮名,否则会报错。比如说:我想分析O1,K1,M4,MS4分潮,在输入变量的时候就需要输入成:['O1 ';'K1 ';'M4 ';'MS4']才能成功!注意MS4必须要大写,不能写成Ms4!
做潮汐预报:预报2003/01/01-2006/01/01的潮汐
latitude=46.3;
time=zeros(1,26304,'double');
for i=1:26304
time(i)=datenum(2003,1,1)+(i-1)/24.0;
end
ypre=t_predic(time,NAME,FREQ,TIDECON,latitude);
如果做潮流调和分析的话,也类似,只不过一开始就要通过U+sqrt(-1)*V把U,V两个方向的数据合并成一个复数数组(U为东,V为北)。输出参数介绍:
major为分潮流最大流速,minor为最小流速(潮流矢量随着时间顺时针转时minor为负),inc椭圆旋转方向(沿x轴逆时针旋转的度数),pha意义目前我还不搞明白。
这里各个分潮的频率的单位都是cph,如果要换成HZ的话,需要除3600.
T_TIDE输出潮流椭圆参数有限,本人开发的S_TIDE工具包最新版本1.19里s_calculate_tidal_ellipse.m
函数可以计算最大流速,最大流速时刻,最大流速方向,以及最小流速,最小流速时刻,最小流速方向六个参数,s_plot_tidal_ellipse.m可以绘制潮流椭圆。这些函数的用法可以见工具包里自带的教程。工具包下载地址https://www.researchgate.net/project/A-non-stationary-tidal-analysis-toolbox-S-TIDE
本人多年科研感悟:
本人开发的比T_TIDE更为强大的S_TIDE工具包(可以处理非均匀采样数据)的教程,欢迎使用!
关于T_TIDE更高级的一些用法请参考
关于T_TIDE潮汐调和分析算法以及计算加速原理请参考
关于非平稳潮汐调和工具包NS_TIDE使用教程
关于水位的频谱分析请参考
关于画潮波同潮时线和等振幅线请参考
使用matlab下载长江水位数据
关于使用python下载验潮站数据请参考
关于使用matlab下载验潮站数据请参考
交点因子和订正角的长期变化可见
关于潮汐调和分析里时区的问题
关于振幅和迟角置信区间的估计
潮汐调和分析迟角的奇怪变化的解决方案
研究潮汐季节变化时的注意事项
最后附上我于2018年4月在JTECH发表的文章链接,该文运用了T_TIDE,EMD和NS_TIDE等多种方法研究河流潮汐
或者去JTECH官网上也可以
这篇文章主要的发现是NS_TIDE的stage
model是NS_TIDE的误差的主要来源,希望能给大家启发,欢迎引用我的文章
我于2019年在国际SCI期刊ECSS上发表了利用EOF方法重构河口地区水位的论文,并于ns-tide重构的结果对比表明EOF重构的精度更高,最后提出了EOF与ns_tide组合使用的新算法。
本人发展了一个潮汐调和分析的新方法EHA,并以此开发了工具包S_TIDE,
S_TIDE功能要比T_TIDE工具包更为强大,T_TIDE只能用于分析平稳潮,而S_TIDE既可以分析平稳潮,也能分析非平稳潮,还能用于分析非潮周期的时间序列。论文发表在了国际海洋学顶级杂志JGR-ocean上
希望能给大家启发,欢迎引用我的文章!也欢迎大家在投稿SCI期刊时推荐我为审稿人(邮箱panhaidong_phd@qq.com)。
最新的工作:使用S_TIDE提取变振幅的18.61年潮循环
S_TIDE工具包中文教程
如果这篇博客帮助到了您,您在发表相关的文章时可以在致谢里感谢一下我(我会非常高兴您能这样做),并且可以通过在博客里留言或者评论告知我。我会去更新这篇博客
(统计了所有致谢我的论文)
最近我将过去matlab编程经验进行了总结,写了一个word文档,链接如下,欢迎阅读:
如果您觉得这篇博客不错的话可以点一下喜欢或者送个金笔!感谢!