function l6simulate(origY,origV,a,dt) y = origY; v = origV; clf; hold on; plot(y,0,'b-',y,0,'r'); xlabel('time (s)'); ylabel('height (m)'); legend('ball trajectory','maximum height'); n = 1; bounces = 0; lastV = v; lastMax = origY; while lastMax > 0.1*origY lastV = v; [y, v] = l6update(y,v,a,dt); if y < 0 y = -y; v = -v*.85; bounces = bounces + 1; plot(n*dt,y,'b-'); elseif lastV > 0 && v < 0 plot(n*dt,y,'b-',n*dt,y,'rO') lastMax = y; else plot(n*dt,y,'b-'); end n = n+1; end function [yNew, vNew] = l6update(y,v,a,dt) yNew = y + v*dt; vNew = v + a*dt;