User Tools

Site Tools


gibson:teaching:fall-2013:math445:lab11

====== Differences ====== This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gibson:teaching:fall-2013:math445:lab11 [2013/12/05 08:35]
szeto
gibson:teaching:fall-2013:math445:lab11 [2013/12/05 09:10] (current)
szeto
Line 45: Line 45:
 g = 9.81;        % m/s^2, acceleration due to gravity g = 9.81;        % m/s^2, acceleration due to gravity
  
 +.
 +.
 f = @(t,x) [ ....]; f = @(t,x) [ ....];
- + 
-[t,x]= ode45(f, ...   [ 0,​0,​v0*cos(theta),​ v0*sin(theta) );+[t,x]= ode45(f,[0:0.1:200] ,[ 0,​0,​v0*cos(theta),​ v0*sin(theta) ); 
 + 
 +xdistance = interp1(x(50:​end,​2),​ x(50:​end,​1),​ 0);  % This is how you can compute ''​xdistance''​ 
 +% accurately from an ''​x,​y''​ trajectory using interpolation.  
 +% It will return the value of $x$ for which $y=0$, i.e.  
 +% where the cannonball hits the ground.  
 end end
 </​code>​ </​code>​
-Do plotting and interpolating in another script or on the command line.  
  
-You can compute ​''​xdistance''​ accurately from an ''​x,y'' ​trajectory using interpolation:​+Once your function works, play around with the parameters ​''​v0theta'' ​to answer the questions. ​  
 +On the command line, you can USE this function like this.  
 +<​code>​ 
 +  xdistance = projectile(100,​pi/​2) 
 +  xdistance = projectile(100,​pi/​4) 
 +  xdistance = projectile(100,​pi/​8) 
 +</​code>​ 
  
-  ​xdistance ​= interpolate(x(50:end,2), x(50:end,1), 0); +If your xdistance ​is a NaN, you may have to increase the number ​50 in the interp1 function ​(1000 might be goodthat is roughly half the length ​of [0:0.1:200])
-   +
-That will return ​the value of $x$ for which $y=0$, i.e. where the cannonball hits the ground. Once your function works, play around with the parameters ''​v0,​ theta''​ to answer the questions+
  
   ​   ​
gibson/teaching/fall-2013/math445/lab11.1386261345.txt.gz · Last modified: 2013/12/05 08:35 by szeto