% Harj.3 teht. 3    ../H/harj3teht3.m
% 14.2.2005

% Parillinen jatko:

clear; close all
L=2; xpos=[0 L/2 L/2 L]
ypos=[0 0 1 1];
xneg=-fliplr(xpos)
yneg=fliplr(ypos);
x=[xneg,xpos]; shg
y=[yneg,ypos]
plot(x,y); ylim([-0.1 1.1]); shg

% Jatketaan tämä jaksollisena (2L)

X3=[x-2*L,x,x+2*L]
Y3=[y,y,y];
plot(X3,Y3); ylim([-0.1 1.1]); shg

% Pariton jatko:

clear; close all
L=2; xpos=[0 L/2 L/2 L]
ypos=[0 0 1 1];
xneg=-fliplr(xpos)
yneg=-fliplr(ypos);    % Tässä ainoa ero edelliseen (parilliseen).
x=[xneg,xpos]; shg
y=[yneg,ypos]
plot(x,y); ylim([-1.1 1.1]); shg    % Toki ylim on syytä muuttaa myös.

% Jatketaan tämä jaksollisena (2L)

X3=[x-2*L,x,x+2*L]
Y3=[y,y,y];
plot(X3,Y3); ylim([-1.1 1.1]); shg


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Fourier-sarja, kertoimet lasketaan Maplella, tehtäväpaperissa 
%sinisarjan kert. annettu.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

b=inline('-2/pi*(cos(n*pi)-cos(n*pi/2))./n','n')  % n skalaari tai indeksivektori.

x=linspace(-2,2);
N=10;

termit=zeros(N,length(x));
for n=1:N
   termit(n,:)=b(n)*sin(n*pi*x/L);
end;
summa=sum(termit);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure(2)
plot(x,summa)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Piirretään osasummaparvi ja yhdistetään parittomaan jaksolliseen jatkekuvaan.

 x=linspace(-6,6,300);
 N=50;
 termit=zeros(N,length(x));
 for n=1:N
   termit(n,:)=b(n)*sin(n*pi*x/L);
end;
osasummat=cumsum(termit);
plot(x,osasummat)
shg
plot(x,osasummat([1:4,10 20 30],:))
grid on; shg
figure(1)  % Piirretään samaan kuvaan, josta aloitettiin
hold on
plot(x,osasummat([1:4,10 20 30],:))
title('Puolen jakson pariton laajennus 4-jaksoiseksi ja sinisarjan Fourier-osasummia')
grid on; shg





