%FY1001/TFY4145 Mekanisk fysikk hoesten 2012.
%Oving 2, oppgave 2a: Plotting av trial-syklistens
%bane z(x) etter at hun tar av fra startrampa, for
%en serie med utgangshastigheter, v0 = 50,60,70,80,90 km/h.
%Her er det 4 m opp og 10 m bort til landingsrampa, som har
%helningsvinkel 30 grader. Proev gjerne ut andre tallverdier.
clear all;
%N = antall punkter langs x-aksen
N = 100;
%g = tyngdens akselerasjon (m/s^2)
g = 9.81;
%L = horisontal avstand mellom start- og landingsrampe (m)
L = 10.0;
%h = vertikal forskjell mellom kanten av start- og landingsrampe (m)
h = 4.0;
%theta = startrampas vinkel relativt bakken (i radianer)
theta = 30*pi/180;
%vi lager tabell med N x-verdier mellom x_min=0 og x_max=L
x_min = 0;
x_max = L;
x = linspace(x_min,x_max,N);
%Med kommandoen hold on; vil gjentatte plot-kommandoer tegne
%kurvene i samme figur. Det passer fint her. Fra mathworks.com:
%"hold: Retain current graph when adding new graphs"
%Fjern figuren fra skjermen hvis du vil kjoere programmet paa
%nytt med nye tallverdier.
hold on;
%Vi skal lage og plotte banen z(x) for ekvidistante hastigheter v0.
%Da kan vi f.eks. bruke en for-loekke med variabelen i fra 1 til 5,
%og lage v0 som funksjon av i slik at vi faar v0 i enheten m/s:
for i = 1:5
   v0 = 50/3.6 + (i-1)*10/3.6;
   %lager tabell med z(x) for aktuell hastighet v0
   z = x*tan(theta)-g*x.*x/(2*v0*v0*cos(theta)*cos(theta));
   %NB: Merk x.*x (og ikke x*x) i linja over!
   %Vi plotter z(x) med linjetykkelse = 1.0
   plot(x,z,'linewidth',1.0);
end;
%axis([xmin xmax zmin zmax]) gir plottets utstrekning
axis([0 L 0 h]);
% Aksetekster:
xlabel('x (m)','fontsize',14);
ylabel('z (m)','fontsize',14);
% Tittel:
title('Øving 2, oppgave 2: Sykkelhopp','fontsize',14);