File Exchange

image thumbnail

HarmonicSeries.m

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

2 Downloads

Updated 04 May 2016

View License

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.

Comments and Ratings (4)

Carlos Adrian Vargas Aguilera

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

Carlos Adrian Vargas Aguilera

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...

Updates

1.0.0.0

BSD License

1.0.0.0

Fixed inputs. Rewritten code.

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux