Ballistics of Galileo

©Fernando Caracena 31 August 2012

Independent motions

One of Galileo's great discoveries is that motion in three dimensions can be decomposed into three separate motions along each of three mutually orthogonal directions. Specifically, up and down motions are governed by the acceleration of the Earth's gravity, whereas the two other, horizontal motions can be unaccelerated to the extent that friction becomes negligible. For these reasons, a projectile launched into a free trajectory, moves in a two-dimensional plane. Once launched, no acceleration acts across to the right or left of the launch plane, so that the projectile always remains in the same plane.

Vertical motion

Free fall

One of the first questions one can solve in Galileo's physics is: how long does it take (T) for an object, released from rest (horizontal speed =0), to fall though a given distance (h)?  Galileo is said to have demonstrated that objects of different sizes fall at the same rate under gravity. This is true as long as air resistance is not a problem. On the Moon, an astronaut can drop a hammer and a feather together, and they will hit the regolith at the same time; however, on the Earth, air resistance is not negligible for the feather. Air resistance is negligible when you drop a baseball and bowling ball together. Having the bottoms lined up horizontally when released, they will hit the ground at the same time.

The acceleration of gravity is a "constant" that has been measured many times. Actually, it varies by very small departures from its standard value (g) because of variations in the Earth's local density and, the Earth's spin. For most practical purposes, we can take the value of the acceleration of the Earth's gravity as the following:

g=9.8 m/s/s (or 32 ft/s/s).

Locally, we define the coordinate axis as pointing up and the value of height as z. In this case, the acceleration of gravity, which acts downward, has a negative value,

a=-g     (constant).                                (1)

The equations of motion referred to this axis are the following:

w= w0 -g * t                                          (2a)

z=z0+w0*t-1/2 * g *t2 ,                         (3b)

where the initial conditions require the following substitutions:

w0 = 0 and z0 =h.                                    (4)

In this case, the equations of motion are reduced to the following:

w=-g * t                                                 (2b)

z=h- 1/2 * g *t2,                                    (3b)

where the bottom of the trajectory is taken as z=0.

from (3b) we can solve for the fall time by setting z=0,

h- 1/2 * g *T2=0,                                    (5)

which is readily solved to be,


T= (2 *h /g)1/2.                                       (6)

N.B., that the exponent "1/2" in the above means square root.

The value of solving a problem, such as the above, algebraically, is the economy of a general solution, both in terms of units and values for various astronomical bodies. For example, the lunar acceleration of gravity is a about 1.6 m/s/s; on Mars, it is about 3.8 m/s/s. The algebraic solution, (6), applies to the surface of any planet and a release point of any height.

Choose Earth's value of g and plug in a height of 16 feet into (6) and the value of g in corresponding units (32 m/s/s), and you will get the result of 1 second for the time of fall. Also note that we can answer the question of how fast the object impacts the ground by inserting the value, 1 s, in (2b), which results in 32 ft/s. This shows that we can use intuition only so far before a proficiency with algebra adds a whole lot more.

Upward shot

The problem that is opposite to the above one is where an object is propelled straight up from the surface. How high will it go and how long will it take to get there?

Instead of the the initial conditions in (4), those that apply here are

z0 =0 and w0 is not zero.                        (7)

Under these initial conditions, the equations for a projectile shot straight up are:

w=w0 - g * t                                           (2c)


z= w0* t - 1/2 * g *t2.                             (3c)

To solve for the time of rise, note that at the highest point, the upward velocity falls to zero, which in (2c) gives the following:

0=w0 - g * T,


T=w0/g.                                                               (8)

Plug this value of time into (2c) and it results in the maximum height at time T,

h= * T - 1/2 *g *T2,

h=w02/g- 1/2 *g *(w0/g)2,

h=1/2 *w02/g .                                                       (9)

Plugging the value of the rise time (T) in (8) into (9), and solving for T, we get

T= (2 *h /g)1/2,  which is exactly the same as the drop time (6).

Fig. 1 Projectile launched straight with upward component of velocity of 70 ft/s.

python code for Fig. 1.


Listing 1

ipython --pylab
from pylab import *
from matplotlib.font_manager import FontProperties
from matplotlib.backends.backend_agg import RendererAgg

w0 = 70. #  ft/s
z0= 0   #  ft
g = 32.  #  ft/s/s
def zr(t):
return z0 + w0 * t + 0.5 * a* t*t

t=arange(0,2*tmax+.005, 0.01)
plot(t,zr(t), color='k')
plot([tmax,tmax],[0,zmax], color='b')
title('Projectile shot straight up', color='k')
xlabel('Time (s)', color='k')
ylabel('z (ft)', color='k')


If a projectile is launched from the surface with a vertical component of velocity, w0,  and horizontal component u0, then the vertical part of the motion is described by the above equations, but the horizontal motion is described independently as unaccelerated motion as follows:

x = x0  + u0*t.                  (10a)

Label the coordinates as zero at the launch point, in which case x0=0, and

x = u0*t.                           (10b)

This (10b) represents a rescaling of the horizontal axis. You can compute x and z for any value of t during the projectile's flight, and plot a map of the path of the projectile's flight in physical space. Or, you can eliminate t from the equations of motion in favor of x as an independent variable. Fig. 2 displays the first alternative, which is plotted by the additional python code given below.


Fig. 2 A plot of a projectile motion, when fired at an angle, having an upward velocity component of 70. ft/s and a horizontal one of 30. ft/s.










python code (follows listing 1)

listing 2

#Horizontal component of initial velocity
u0 = 30   #ft/s
def xr(t):
return  u0 * t   # horizontal distance traveled
plot(xr(t),zr(t), color='k')
plot([0,140.],[0.,0.], color='r')
plot ([xr(tmax),xr(tmax)],[0,zmax], color='b')
text(xr(tmax),2.5,r'65.6 ft')
text(xr(tmax),70,r'76.6 ft')
title('Projectile shot at angle', color='k')
xlabel('x (ft)', color='k')
ylabel('z (ft)', color='k')


This entry was posted in frame of reference, mathematics, physics, relativity, vectors and tagged , , . Bookmark the permalink.

3 Responses to Ballistics of Galileo

Leave a Reply

Your email address will not be published. Required fields are marked *