Model a ski jump curve The ski jump starts off horizontally
Solution
m = 70; % ski jumper mass (kg)
 psi = 0; % Ski angle to horizontal (deg)
 rho = 1.03; % air density kg/m^3
 vx0 = 28.7; % initial horizontal velocity m/s
 vy0 = -1.2; % initial vertical velocity m/s
 g = 9.81; % gravitational accel m/s^2
 initial_w = [0;0;vx0;vy0]; % initial solution vector
 options = odeset(\'Events\',@event);
 [times,sols] = ode45(@eom,[0,8],initial_w,options);
 figure1 = figure; % Plot the trajectory
 plot(sols(:,1),sols(:,2),\'LineWidth\',2,\'Color\',[1 0 0]);
 figure2 = figure; % Plot the velocity
 vel = sqrt(sols(:,3).^2+sols(:,4).^2);
 plot(times,vel)
 function dwdt = eom(t,w)
 % The equations for the rates of change of x,y,vx,vy
 x = w(1); y = w(2); vx = w(3); vy = w(4);
 phi = atan(-vy/vx)*180/pi;
 alpha = psi + phi; % Angle of attack (degrees)
 Fl = 0.5*rho*(-0.8468 + 0.08963*alpha - 0.001292*alpha^2);
 Fd = 0.5*rho*(-0.5072 + 0.04398*alpha - 2.861e-4*alpha^2);
 dxdt = vx; dydt = vy;
V = sqrt(vx^2+vy^2); % Magnitude of velocity
 dvxdt = -Fd*vx*V/m - Fl*vy*V/m;
 dvydt = -Fd*vy*V/m + Fl*vx*V/m - g;
 dwdt = [dxdt;dydt;dvxdt;dvydt];
 end
 function [ev,s,dir] = event(t,w)
 % Function to detect when skier lands
 x = w(1); y = w(2);
 q = atan(-y/x)*180/pi; % Angle of skier below start
 ev = q-32; % Hits slope when angle-32 degrees = 0
 s = 1; % Stop when the event occurs
 dir = 0; % Either sign of zero crossing is OK.
 end
 end

