% Harj. 7 

% 1) Heiluri
hei=inline('[y(2);-sin(y(1))]','t','y')

Tvali=[0 10];
y0a=[1;1]; y0b=[-5 ;2]; y0c=[5;-2]

[ta,ya]=ode45(hei,Tvali,y0a);
[tb,yb]=ode45(hei,Tvali,y0b);
[tc,yc]=ode45(hei,Tvali,y0c);

pplane6
figure(3)

plot(ya(:,1),ya(:,2),'r',yb(:,1),yb(:,2),'b',yc(:,1),yc(:,2),'g'); title('Faasitaso');shg

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%




% Tehtävä 3, "shooting method"
% Ratkaise RA-tehtävä y''=y^2-1, y(0)=0, y(1)=1 tähtäysmenetelmällä.

% y1 =y, y2=y'=y1'
% y1'=y2
% y2'=y''=y1^2-1

clear; close all
%dyht=inline('[y(2);y(1)^2-1]','t','y') % Ei tehdä inlineja.


% Määritellään funktio
%function yp=tahtaysdy(t,y)
%yp=[y(2);y(1)^2-1];


% Ratkaistaan ensin ampumalla eri lähtöarvoista:

z=linspace(-1,1,20);
Y=zeros(size(z));
for k=1:length(z)
  [t,y]=ode45(@tahtaysdy,[0 1],[0;z(k)]);
  Y(k)=y(end);
end;
Y
z=linspace(1,3,20);
Y=zeros(size(z));
for k=1:length(z)
  [t,y]=ode45(@tahtaysdy,[0 1],[0;z(k)]);
  Y(k)=y(end);
end;
find(Y>1) 
z(6)
     [t,y]=ode45(@tahtaysdy,[0 1],[0;z(6)]); plot(t,y(:,1))
% Loppuarvo on vähän yli 1. 
% z(6) on hyvä alkuarvo fzero:lle.



%function w=reunaarvo(z)
%[t,y]=ode45(@tahtaysdy,[0 1],[0;z]);  
%w=y(end,1)-1;  %Loppuarvo -1, tämän pitäisi olla = 0.

  z0=fzero(@reunaarvo,z(6))

  [t,y]=ode45(@tahtaysdy,[0 1],[0;z0]); plot(t,y(:,1))
     % Kuva menee hyvin (1,1):n kautta
  y(end,1) 
  % antaa 1.


