Matlab : Gibbs phenomenon of given harmonics

Gibbs phenomenon of given harmonics

Code:


clc;
clear all;
close all;


t=linspace(-2,2,2000);
u=linspace(-2,2,2000);
sq=[zeros(1,500),2*ones(1,1000),zeros(1,500)];
k=2;
prompt='Enter Harmonics No: ';
N =input(prompt);
%N=[5];
for n=1:1;
an=[];
for  m=1:N(n)
    an=[an,2*k*sin(m*pi/2)/(m*pi)];
end;
fN=k/2;
for m=1:N(n)
    fN=fN+an(m)*cos(m*pi*t/2);
end;
nq=int2str(N(n));
plot(u,sq,'r','LineWidth',2);hold on;
plot(t,fN,'LineWidth',2); hold off; axis([-2 2 -0.5 2.5]);grid;
xlabel('Time'), ylabel('y_N(t)');title(['N= ',nq]);
end;


Output: 




Share this:

Post a Comment

 
Copyright © Ebots.