Get harmoniques of a real signal

Given the signal x(t), the function find a0, ak, bk the amplitudes of cos and sin waves.

You are now following this Submission

% wc,w0,a0,ak,bk,c0,ck]=get_harmonics(y,pas)
% given a signal x(t),y=x(t)
% the function get_harmoniques returns the pulse w0(rd/s) of the signal y(t)
% the coefficients ak (a1,a2,...) and bk (b1,b2,...) of the trigonomical
% representation of the signal y(t):
% y(t)= a0/2+ a1.cos(w0t)+b1.sin(w0t)+a2.cos(2w0t) +b2*sin(t*w0)+...
% it also returns the coefficients c0 and ck of the complex representation
% y(t)= ...+c(-1).exp(-jw0t)+c(0)+c(1).exp(jw0t)+c(2).exp(2jw0t)+...
% wc is the interval pulse;
% to plot the amplitude spectrum: stem(wc,abs(ck))
%[wc,w0,a0,ak,bk,c0,ck]=get_harmoniques(y,pas)
% be a signal x(t).
% For more theorical details look at www.azzimalik.com

Cite As

Azzi Abdelmalek (2026). Get harmoniques of a real signal (https://au.mathworks.com/matlabcentral/fileexchange/37654-get-harmoniques-of-a-real-signal), MATLAB Central File Exchange. Retrieved .

Categories

Find more on Fourier Analysis and Filtering in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.5.0.0

Because my code which calculate the DFT is too slow, I've changed it by the built-in function fft.

1.4.0.0

when choice=2 and Y (fft of our signal) is a column, the program must change it to a line.

1.3.0.0

add a demos, and fixed coeff a0 and added a pulse interval

1.0.0.0