%% Nombre d'onde
lambda= 40; k= 2*pi/lambda
g= 9.81; c= sqrt(g/k)
omega= c*k
T= 2*pi/omega
A= 0.5; V= A*omega

%% Intervalle temporel avec 200 points
tint= linspace(0, 6*T, 200);

%% Trajectoire 1
[t1, F1]= ode45(@(t,F) G(t, F, k, omega, V), tint, [ 0 ; -1 ]);

x1= F1(:,1); z1= F1(:,2);

hold on; axis equal;
plot(x1,z1,'LineWidth',1.3)

% Statistiques pour la caractérisation quantitative
% Valeur min de z
z1min= min(z1)
% Valeur moy de z
z1moy= mean(z1)
% Valeur max de z
z1max= max(z1)
% Rayon des cercles
R1= (z1max-z1min)/2

% Dérive dans la direction x
delx1= x1(end)

%% Trajectoire 2
[t2, F2]= ode45(@(t,F) G(t, F, k, omega, V), tint, [ 0 ; -5 ]);

x2= F2(:,1); z2= F2(:,2);

plot(x2,z2,'LineWidth',1.3)

axis([-0.5 1.5 -6 0]);
xlabel('x en m'); ylabel('z en m');

% Statistiques pour la caractérisation quantitative
% Valeur min de z
z2min= min(z2)
% Valeur moy de z
z2moy= mean(z2)
% Valeur max de z
z2max= max(z2)
% Rayon des cercles
R2= (z2max-z2min)/2

% Dérive dans la direction x
delx2= x2(end)

%% Fonction qui définit l'équation différentielle
function res= G( t, F, k, omega, V)
  res= V*[ exp(k*F(2)) * cos(k*F(1)-omega*t); exp(k*F(2)) * sin(k*F(1)-omega*t) ];
end