Extraction of waves from surface elevation?

8 visualizaciones (últimos 30 días)
Leo Reith
Leo Reith el 30 de Ag. de 2016
Comentada: Star Strider el 30 de Ag. de 2016
How would I go about extracting individual waves from surface elevation time series data? Basically I want to plot the x largest waves on one graph to compare, so would need them extracted individually.
Thanks for any help!!

Respuestas (1)

Star Strider
Star Strider el 30 de Ag. de 2016
Guessing here because I have no idea what your data actually are, but findpeaks comes quickly to mind.
  2 comentarios
Leo Reith
Leo Reith el 30 de Ag. de 2016
Thanks for the reply! I basically have ocean surface elevation data with a known time step and actually want to split the data and extract the waves (wave constitutes an up-crossing to up-crossing). From what I know findpeaks is good at identifying and measuring maxima but would not allow me to actually plot these waves overlapping.
Star Strider
Star Strider el 30 de Ag. de 2016
My pleasure!
To get the troughs, use findpeaks on the negative of your data. This would give you the minima, that should be the beginning of the upslope of each wave.
If your data have high-frequency noise, filtering them first with a low-pass filter might work best. There are various ways to design filters in MATLAB, among them being designfilt. My procedure for IIR filters is here: How to design a lowpass filter for ocean wave data in Matlab?

Iniciar sesión para comentar.

Categorías

Más información sobre Oceanography and Hydrology en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by