function [omega, I] = periodogramme(X) omega=(0:2*%pi/100:%pi); T = length(X); [m,n]=size(X); if m~=1 then X=X'; end [m,n]=size(omega); if m~=1 then omega=omega'; end I = abs(X*exp(-%i*(1:T)'*omega)).^2/T; endfunction // function [omega, f] = periodogramme_lisse(X, mT) // omega=(0:2*%pi/100:2*%pi); // T = length(X); // function W = w(J) // W = 1/(2*mT+1)*ones(J); // endfunction // // omega_min = round(min(omega)*T/(2*%pi)) - mT; // omega_max = round(max(omega)*T/(2*%pi)) + mT; // Z = (omega_min:omega_max) * 2*%pi/T; // I = periodogramme(Z,X); // // J = (-mT:1:mT)*2*%pi/T; // W = w(J); // // for i=1:length(omega) // f(i) = sum(W .* I(i:i+2*mT))/(2*%pi); // end // endfunction