Get harmoniques of a real signal

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

ダウンロード: 1.7K

更新 2013/2/19


% 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))
% be a signal x(t).
% For more theorical details look at


Azzi Abdelmalek (2023). Get harmoniques of a real signal (, MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2011b
Windows macOS Linux
Help Center および MATLAB AnswersFourier Analysis and Filtering についてさらに検索

Community Treasure Hunt

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

Start Hunting!
バージョン 公開済み リリース ノート

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

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

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