Chapter 3: Projectile Motion

In this section of the course we will study objects moving through the air under gravity and air resistance.

3.1 Falling Object

This is the simplest case: One dimensional motion under constant acceleration due to gravity with no air resistance.  Quite simply, the object feels the gravitational force and starts off at some height with an initial vertical velocity.
	Find equation
	Find max height
	Find velocity on impact

Solution

Remove["Global`*"]

sol=DSolve[{y''[t]==-g,y[0]==h,y'[0]==vyi},y[t],t]

Y[t_]=y[t]/.sol[[1]]

h=100;
vyi=20;
g=9.8;

Plot[Y[t],{t,0,7}]

Maximum height

sol=Solve[Y'[t]==0,t]

tmax=t/.sol[[1]]

Y[tmax]

Velocity on impact

sol=Solve[Y[t]==0,t]

thit=t/.sol[[2]]

x=Y'[thit]

3.2 Two-dimensional projectile motion

A projectile is shot at a given speed into the air at a certain elevation angle over a level field.  Neglect air resistance.
	Find equations
	Find the horizontal distance travelled (range) as a function of firing angle
	Find the angle that gives the maximum range

Solution

Remove["Global`*"]

vyi=v0 Sin[θ];
vxi=v0 Cos[θ];

sol=DSolve[{y''[t]==-g,y[0]==0,y'[0]==vyi,x''[t]==0,x[0]==0,x'[0]==vxi},{x[t],y[t]},t]

Y[t_]=y[t]/.sol[[1]]
X[t_]=x[t]/.sol[[1]]

Need to find time of flight

solt=Solve[Y[t]==0,t]

R=X[t]/.solt[[2]]

Solve[D[R,θ]==0,θ]

Maximum range attained at firing angle of π/4

3.3 Object with air resistance

An object feels a drag force Fd = - b v as it move, i.e. a force that's proportional to velocity. No other forces act on it.
	Find equations for position and velocity for a given initial velocity
	How far does the object travel?

Solution

Remove["Global`*"]

sol=DSolve[{m y''[t]==-b y'[t],y[0]==0,y'[0]==v0},y[t],t]//Simplify

Y[t_]=y[t]/.sol[[1]]

Y'[t]

Limit[Y[t],t->∞]

Assuming[{b >0,m>0},Limit[Y[t],t->∞]]

3.4 Falling object with air resistance

A dropped object feels a drag force Fd = - b v as it falls, i.e. a force that's proportional to velocity.
	Find equations for position and velocity
	Find terminal velocity

Solution

Remove["Global`*"]

sol=DSolve[{y''[t]==-g-(b/m) y'[t],y[0]==h,y'[0]==0},y[t],t]//Simplify

Y[t_]=y[t]/.sol[[1]]

Y'[t]

Limit[Y'[t],t->∞]

Assuming[{b >0,m>0},Limit[Y'[t],t->∞]]

Terminal velocity is -g m/b

3.5 Projectile with air resistance

A projectile of mass 1 is shot at a given speed into the air at a certain elevation angle over a level field.  Air resistance gives a drag force of Fd = - b v
	Find equations
	Plot the horizontal distance travelled (range) as a function of firing angle for g=9.8, b=0.2 and v0=10 (MKS units)
	Find the angle that gives the maximum range
	Plot the trajectory at that angle

Solution

Remove["Global`*"]

vyi=v0 Sin[θ];
vxi=v0 Cos[θ];
m=1;

sol=DSolve[{m y''[t]==-m g-b y'[t],y[0]==0,y'[0]==vyi,m x''[t]==-b x'[t],x[0]==0,x'[0]==vxi},{x[t],y[t]},t]

Y[t_]=y[t]/.sol[[1]]
X[t_]=x[t]/.sol[[1]]

Need to find time of flight

solt=Solve[Y[t]==0,t]

tf=t/.solt[[1]]

X[tf]

R[θ_]=X[tf]

g=9.8;b=0.2;v0=10;

Plot[R[θ],{θ,15 Degree, 65 Degree}]

sol=FindRoot[R'[θ]==0,{θ,0.6}]

maxangle=(θ/.sol)/π*180

Maximum range attained at firing angle of 43.7 °

θ=maxangle Degree

ParametricPlot[{X[t],Y[t]},{t,0,1.4}]

3.6 Projectile with quadratic air resistance

A projectile of mass 1 is shot at a given speed into the air at a certain elevation angle over a level field.  Air resistance gives a drag force of magnitude F = b (v^2) and directed antiparallel to the velocity, i.e. (OverVector[F])= - b (v^2) (OverHat[v ]),  (Subscript[F, x])=-b (Subscript[v, x])(Sqrt[((Subscript[v, x])^2)+((Subscript[v, y])^2)]) and similarly for (Subscript[F, y]).
	Plot the trajectory for θ=40 °, v0=10, g=9.8 and b=0.2.
	Find the range

Solution

Remove["Global`*"]

g=9.8;
v0=10;
θ=40 Degree;
b=0.2;
vyi=v0 Sin[θ];
vxi=v0 Cos[θ];
m=1;

sol=NDSolve[{m y''[t]==-m g-b y'[t](Sqrt[((y'[t])^2)+((x'[t])^2)]),y[0]==0,y'[0]==vyi,m x''[t]==-b x'[t] (Sqrt[((y'[t])^2)+((x'[t])^2)]),x[0]==0,x'[0]==vxi},{x[t],y[t]},{t,10}]

Y[t_]=y[t]/.sol[[1]]
X[t_]=x[t]/.sol[[1]]

ParametricPlot[{X[t],Y[t]},{t,0,1.2}]

Need to find time of flight

solt=FindRoot[Y[t]==0,{t,4}]

tf=t/.solt

Range

X[tf]