File Exchange

HarmonicSeries.m

version 1.0.0.0 (6.91 KB) by Carlos Adrian Vargas Aguilera

Carlos Adrian Vargas Aguilera (view profile)

Space-Time series (1D, 2D, or 3D) as the sum of cosines.

Updated 04 May 2016

Syntax:

Z = harmonicseries(AMP, PER, PHA, LEN, DIR, T, X, Y);
Performs the sum of harmonics:

z(t,y,x) = sum [ a*cos(k*x + l*y - w*t + theta) ]

where:

a = AMP (amplitude)

k = K*cos(rdir) (x-component of wavenumber vector)

l = K*sin(rdir) (y-component of wavenumber vector)

K = sqrt(k^2+l^2) = (2*pi)./LEN (magnitude of wavenumber vector)

rdir = DIR*(pi/180) (direction of wavenumber vector in radians)

w = (2*pi)./PER (Temporal angular frequency)

theta = PHA*(pi/180) (Initial phase in radians)

This is useful when performing tests of Fourier Spectral Analysis, for example.

The program comes with the example on the screenshot.

Cite As

Carlos Adrian Vargas Aguilera (2020). HarmonicSeries.m (https://www.mathworks.com/matlabcentral/fileexchange/13420-harmonicseries-m), MATLAB Central File Exchange. Retrieved .

New version. More portable/easy-to-copy.

I agree "Thomas", I need to clean the code and the inputs arguments. Although, only one person had rated it and it was good. Every comments are well-received (no matter the initial stars) although there's no need to be rude. The program does exactly what I say above and in the help. Next time be contructive. Take a look later for the new submition.

Thomas Gall

It is an excessively complex wrapper for a one line statement. This has no purpose except to make your code unreadable and less portable.

Michael Morgan

Great, an all-in-one program! I just think the initial phase must be with minus sign and also w instead of k, but great anyway...