Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagenone
[ivx, ivy] = initialVelocityinitVelocity (0, 100) % skal returnere x = 100 , y = 0
 
[ivx, ivy] = initialVelocityinitVelocity (pi /2, 100) % skal returnere x = 6.1232e -15 , y = 100
 
[ivx, ivy] = initialVelocityinitVelocity (pi /4, 100) % skal returnere x = 70.7107 , y = 70.7107

...

Code Block
languagenone
[x, y] = position (10 , 10, 0, 1, 1)  % skal returnere x = 10, y = 11
 
[x, y] = position (10 , 10, 1, 0, 1) % skal returnere x = 11, y = 10
 
[x, y] = position (10 , 10, 1, 1, 0.1) % skal returnere x = 10.1 , y = 10.1

 

c)

a_x_{n+1} = -k*v_{x_n}*abs(v_x_n)

...

Code Block
languagenone
[ax, ay] = acceleration (0, 0) % skal returnere x = 0, y = -9.81
 
[ax, ay] = acceleration (10 , 10) % skal returnere x = -1, y = -10.81

 

d)

Skriv function [vx, vy] = velocity(ax, ay, vx, vy, dt). Denne beregner farten i det neste steget gitt nåværende fart og akselerasjon.

e)

Skriv function [xv, yv] = trajectory( initialSpeed, initialAngle, height ) . Denne funksjonen benytter seg av initialSpeed, acceleration, velocity og position. Den skal returnere to lister: en for x og en for y-koordinater. 
Tiden kulen bruker på å treffe bakken er ukjent, en while løkke må derfor benyttes. Stopp denne når høyden (y) blir mindre enn 0.

f)

Lag funksjonen plotTrajectory. Denne skal ha samme parameterene som trajectory. Den skal benytte seg av plot-funksjonen for å vise kulens bane.  

g)

Lag funksjonen plotTrajectoryLength. Den skal kalle trajectory med vinkler mellom 0 og pi/2 (0 og 90 grader). Deretter skal den plotte vinkel mot lengden av kulestøtet. 
Velg pi/32 som steglengde for vinkelen.
Hvilken vinkel gir best resultat?
Hva skjer om man endrer på høyden? 
Hva skjer om k og g endres?
Har farten noe å si for vinkelen?

 h) 

 Det ønskes en enkel måte å visualisere kulestøtet som en animasjon.