How to determine significant wave height from time series data in Matlab>

25 次查看(过去 30 天)
Dear all,
I have time series from ocean waves and want to calculate the significant wave height by using Matlab. If you have experience in this topic, could you please to give me matlab script to solve that? Thank you for your helping

回答(1 个)

rifat
rifat 2014-4-27
I dont know what it means by "significant wave height". But if you are trying to detect the peaks in a time series then try the function mspeaks.
  1 个评论
Peter Mills
Peter Mills 2018-1-12
编辑:Peter Mills 2018-1-12
I am also trying to calculate the significant wave height. Significant wave height is the average of the highest one-third (33%) of waves [1]. Does anyone know of a function which will give the heights 1/3 of values from a data series? This might help: [2] https://uk.mathworks.com/matlabcentral/answers/22597-finding-the-position-of-the-1st-2nd-and-3rd-max-value-in-a-matrix
So say we have
WaveHeight=[3 1 5 2 3.1 6 5.5 3 2.5];
We need to find the highest 1/3:
HighestThird=[6 5.5 5]
HS= mean(HighestThird) %significant wave height
This code [2] will give the highest values
[max1, ind1] = max(WaveHeight);
WaveHeight(ind1) = -Inf;
[max2, ind2] = max(WaveHeight);
WaveHeight(ind2) = -Inf;
[max3, ind3] = max(WaveHeight);
WaveHeight(ind3) = -Inf;
But what if we what a function that will calculate the mean of the heights 1/3 of WaveHeight with
length(WaveHeight)
being a variable which may be large?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Oceanography and Hydrology 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by