HomePhysics ToolsProjectile Motion Calculator with Steps | Range & Height

Projectile Motion Calculator with Steps | Range & Height

Projectile Motion Calculator

Find the range, maximum height, time of flight and landing velocity of any projectile, with or without an initial height, solve backwards for the initial velocity or the launch angle, and compare the path with air resistance. Every answer comes with units, steps, checks and a trajectory drawn to scale.

PhysicsKinematicsRange & HeightStep by StepAny UnitsFree

⚡ 0. Quick Answer

A projectile motion calculator finds how far, how high and how long an object flies after it is launched, using constant gravity and no air resistance.

A ball launched at 20.0 m/s at 30.0° on level ground (g = 9.81 m/s²) flies for 2.04 s, rises 5.10 m and lands 35.3 m away.

R = v0² sin 2θ / g  ·  H = v0² sin²θ / (2g)  ·  T = 2v0 sin θ / g

R and H in metres (m), v0 in m/s, θ in degrees, g in m/s², T in seconds (s). These three forms are for level ground; from a height, use the full method in Section 6.

Rule of thumb: on level ground 45° gives the longest range, and two angles that add up to 90° (30° and 60°) land at the same spot. Double the speed and the range becomes four times longer.

Key Takeaways

  • A projectile motion calculator splits the launch velocity into vx = v0 cos θ and vy = v0 sin θ: for 20.0 m/s at 30.0° that is 17.3 m/s and 10.0 m/s.
  • Time of flight on level ground is T = 2vy/g, so the worked ball stays up for 2.04 s.
  • Maximum height is H = vy²/(2g) = 5.10 m, reached halfway through the flight at 1.02 s.
  • Range is R = vx × T = 35.3 m; at 45° the same ball would land 40.8 m away.
  • Launching from a height changes everything: a 13.0 m/s shot put at 38.0° from 2.10 m lands 19.1 m away, not the 16.7 m the level-ground formula gives.

📚 1. What Is a Projectile Motion Calculator?

Projectile motion is the curved path of an object that is thrown, kicked or fired and then moves under gravity alone. Its horizontal speed stays the same, while its vertical speed falls by 9.81 m/s every second. Together they trace a parabola.

1.1 How to calculate projectile motion in 5 steps

  1. Convert to SI units: speed in m/s (km/h ÷ 3.6), heights in m, and choose g (9.81 m/s² or your syllabus value).
  2. Split the launch velocity: vx = v0 cos θ and vy = v0 sin θ.
  3. Find the time of flight: T = 2vy/g on level ground, or T = (vy + √(vy² + 2gh))/g from a height h.
  4. Find the maximum height: H = vy²/(2g) above the launch point.
  5. Find the range: R = vx × T. For 20.0 m/s at 30.0°: 17.32 × 2.039 = 35.3 m.

1.2 Projectile motion formulas: which one to use

You wantLevel ground (h = 0)From a height hWorked value
Time of flightT = 2v0 sin θ / gT = (vy + √(vy² + 2gh)) / g2.04 s
Maximum heightH = v0² sin²θ / (2g)h + vy² / (2g) above the ground5.10 m
RangeR = v0² sin 2θ / gR = vx × T35.3 m
Initial velocity from rangev0 = √(Rg / sin 2θ)v0 = √(gR² / (2cos²θ (R tan θ + h)))35.3 m at 30° → 20.0 m/s
Launch angle from rangeθ = ½ sin−1(Rg / v0²) and 90° − θSolve a quadratic in tan θ30.0 m at 20.0 m/s → 23.7° or 66.3°
Initial velocity from max heightv0 = √(2gH) / sin θ5.10 m at 30° → 20.0 m/s
Landing speedv = v0v = √(v0² + 2gh)20.0 m/s

1.3 Horizontal and vertical projectile motion

Horizontal projectile motion is a launch at 0°, such as a ball rolled off a table or a stone thrown flat off a cliff. The fall time depends only on the height: t = √(2h/g). A stone thrown at 15.0 m/s from a 45.0 m cliff falls for 3.03 s and lands 45.4 m out. Vertical projectile motion is a throw straight up or down: a ball thrown up at 20.0 m/s rises 20.4 m.

Trajectory of 20.0 m/s at 30.0 degrees with velocity components at launch, top and landingH = 5.10 m, vy = 0R = 35.3 m in T = 2.04 svy = 10.0 m/svₓ = 17.3 m/s20.0 m/s at 30.0°, g = 9.81 m/s²
The worked example drawn to scale: 20.0 m/s at 30.0°. The horizontal velocity (orange) never changes; the vertical velocity (blue) shrinks to zero at the top and returns pointing down.

1.4 Range and launch angle

On level ground the range R = v0² sin 2θ / g is largest when sin 2θ = 1, that is at 45°. Angles the same distance either side of 45° give the same range. From a height the best angle is below 45°; from a cliff it can be far below. Air resistance also lowers it, to roughly 35 to 42° for sports balls.

1.5 Projectile motion with air resistance

Real balls feel a drag force that grows with the square of the speed. It shortens the range, lowers the peak and makes the path come down more steeply than it went up. There is no simple formula, so the Air Resistance tab solves it step by step: a 40.0 m/s baseball at 35.0° lands about 100 m away instead of 155 m.

1.6 What this calculator does

  • Standard: enter speed, angle and launch height for every result, or solve backwards for the initial velocity (from range, maximum height or time of flight) or for the launch angle (from range, both answers).
  • Horizontal launch: off a cliff or a table.
  • Vertical: straight up or down, with a launch height.
  • Air resistance: quadratic drag with mass, diameter and drag coefficient, compared with the vacuum path.
  • Batch: many launches at once for a lab or an answer key.

Who uses it: CBSE and ICSE Class 11 and 12, JEE and NEET, IGCSE, A level and AP Physics 1 students; first-year university mechanics; coaches looking at throws and kicks; and anyone checking a launch in a game or an engineering sketch.

QuantitySymbolUnitChanges during flight?
Horizontal velocityvxm/sNo (no air resistance)
Vertical velocityvym/sYes, falls by g each second
Accelerationgm/s²No, always 9.81 m/s² downward on Earth
Speed|v|m/sYes, smallest at the top (equal to vx)

🧮 2. Enter Your Values

Solve for:

Negative h means the landing point is higher than the launch point (a ledge or a basketball hoop). Negative angles mean thrown downward. Scientific notation works: 6.2e-3.

Launched at 0°: the fall time depends only on the height.

Use a negative u for something thrown straight down.

Quadratic drag: F = ½ρCdAv². Spin, wind and the drag crisis of fast golf balls are not included.

A header row is skipped. Download Doc gives every answer.

📊 3. Results and Step-by-Step Working

Result
___
Enter your values and press Calculate to see the range, height, time of flight and every step.

🧠 4. Understanding Your Answer, In Detail

___ Press Calculate and this box explains your own answer: what it means, whether it is a sensible size, and how the angle and speed affect it.

4.1 Two motions at once

Every projectile does two independent things. Sideways it moves at a steady vx. Up and down it behaves exactly like a ball thrown straight up with speed vy. Time is the only thing they share, which is why the time of flight links the range to the height.

4.2 Is your answer a sensible size?

A child throwing a ball manages about 10 to 15 m/s; a professional baseball pitch is about 40 m/s; a football kick about 25 m/s. At 20 m/s the longest possible vacuum range is about 41 m. If your range is thousands of metres, check for km/h left unconverted or radians typed as degrees.

4.3 What happens at the top

At the highest point the vertical velocity is zero, but the speed is not: the projectile is still moving sideways at vx. The acceleration is still 9.81 m/s² downward. Exam questions test both facts.

4.4 Why 45° and when it is not

On level ground sin 2θ is largest at 45°, so that angle gives the longest range. From a height h the best angle is tan−1(v0 / √(v0² + 2gh)), which is always below 45°. The calculator reports this best angle for your speed and height.

4.5 Complementary angles

On level ground 30° and 60° give the same range, as do 20° and 70°. The higher angle spends longer in the air and climbs higher. Solving for the angle from a range therefore gives two answers.

4.6 How the answer scales

Range and maximum height both grow with v0², and time of flight with v0. On the Moon, where g is about 1.62 m/s², the same throw goes about six times further and six times higher.

4.7 Landing speed and angle

Without air resistance the landing speed is √(v0² + 2gh): the same as the launch speed on level ground and faster when landing lower down. On level ground the projectile lands at the same angle it left, mirrored below the horizontal.

4.8 When air resistance matters

For a heavy, slow object (a shot put, a stone) the vacuum answer is within a few per cent. For light, fast balls drag can cut the range by a third or more. Compare both in the Air Resistance tab.

✍ 5. How to Write the Answer

▶ Press Calculate above to fill these five cards with your own answer.

1. Exam answer (GRESS)
Given, Required, Equation, Substitute, Answer with unit: ___
Conventions
  • Resolve v0 into vx and vy first; examiners give a mark for it.
  • State the g you used.
  • Give the final answers to the data's significant figures, with units.
2. Final answer only
___
Conventions
  • A space between number and unit: 35.3 m.
  • Angles in degrees with the ° sign.
  • Say "above the launch point" or "above the ground" for heights.
3. Lab report results sentence
The projectile had a range of ___ (method ___).
Conventions
  • Say that air resistance was neglected, or how it was modelled.
  • Compare the predicted and measured ranges as a percentage.
  • Past tense, third person.
4. Teacher's answer-key line
Answer key: ___
Conventions
  • Award marks for components, time, height and range separately.
  • Accept 9.8 or 9.81 for g unless the paper fixes one.
  • Carry forward errors from an earlier part.
5. Plain text for a forum or chat
___
Conventions
  • Units written m/s^2 so they paste anywhere.
  • Angles written as deg.
  • Arrows (->) separate inputs from answers.

∑ 6. Formulas Used

①
Velocity Components
vx = v0 cos θ  ·  vy = v0 sin θ
v0Launch speed, metres per second (m/s)
θLaunch angle above the horizontal, degrees (°) or radians (rad)
vx, vyHorizontal and initial vertical velocity, m/s
Example20.0 m/s at 30.0°: vx = 17.32 m/s, vy = 10.00 m/s
②
Position at Any Time (Equations of Motion)
x = vxt  ·  y = vyt − ½gt²  ·  y = x tan θ − gx² / (2v0² cos²θ)
x, yHorizontal and vertical position from the launch point, metres (m)
tTime since launch, seconds (s)
gAcceleration of free fall, m/s² (9.81 on Earth)
ShapeThe last form is a parabola: the trajectory equation
③
Time of Flight
T = 2v0 sin θ / g  ·  from a height h: T = (vy + √(vy² + 2gh)) / g
TTime of flight, seconds (s)
hLaunch height above the landing level, metres (m). Negative if landing higher
RuleKeep the positive root of the quadratic; the negative one is before launch
Example2 × 10.00 / 9.81 = 2.04 s
④
Maximum Height
H = v0² sin²θ / (2g)  ·  ttop = v0 sin θ / g
HRise above the launch point, metres (m). Add h for the height above the ground
ttopTime to the highest point, seconds (s)
Example10.00² / (2 × 9.81) = 5.10 m at t = 1.02 s
⑤
Range (Horizontal Distance)
R = v0² sin 2θ / g  ·  in general R = vx × T
RRange, metres (m)
RequiresThe short form only when launch and landing are at the same height
MaximumRmax = v0²/g at 45°; from a height Rmax = v0√(v0² + 2gh)/g
Example20.0² × sin 60° / 9.81 = 35.3 m
⑥
Solving Backwards (Initial Velocity and Angle)
v0 = √(gR² / (2cos²θ (R tan θ + h)))  ·  (gR²/2v0²) tan²θ − R tan θ + (gR²/2v0² − h) = 0
v0 from RLevel ground: v0 = √(Rg / sin 2θ), m/s
θ from RA quadratic in tan θ with two roots: a low and a high path
v0 from Hv0 = √(2gH) / sin θ
Example20.0 m/s to land 30.0 m away: θ = 23.7° or 66.3°
⑦
Air Resistance and the Constants Used
a = −g ŷ − k|v|v  ·  k = ρCdA / (2m)  ·  g0 = 9.80665 m/s²
kDrag constant, per metre (m−1)
ρ, Cd, AAir density (kg/m³), drag coefficient (no unit), cross-section area (m²)
vtTerminal velocity √(g/k), m/s
g0Standard gravity, 9.80665 m/s² (exact, defined). Pick 9.81, 9.8 or 10 to match your exam board

🔀 7. Projectile Motion Calculator Flowchart, Step by Step

This flowchart shows how a projectile motion calculator works, step by step, on the worked problem used across this page: a ball is launched at 20.0 m/s at 30.0° above level ground (g = 9.81 m/s²). Find its time of flight, maximum height and range.

Start or result Data step Calculation step Yes or no check
StartBall launched from the groundv₀ = 20.0 m/s, θ = 30.0°, h = 0, g = 9.81 m/s²
1
Convert to SI units and set the calculator to degreesAlready m/s and m. (72 km/h would be 20 m/s.)
CheckCan air resistance be ignored?
YesA slow, dense ball: the vacuum equations apply.
No, stopA light or fast ball: use the Air Resistance tab.
2
Resolve the launch velocityvx = v₀ cos θ · vy = v₀ sin θvx = 17.32 m/s, vy = 10.00 m/s
CheckDo launch and landing heights match?
YesLevel ground, so T = 2vy/g can be used.
NoUse T = (vy + √(vy² + 2gh))/g instead.
3
Time of flightT = 2vy / g2 × 10.00 / 9.81 = 2.04 s
4
Maximum heightH = vy² / (2g)100.0 / 19.62 = 5.10 m at t = 1.02 s
5
RangeR = vx × T17.32 × 2.039 = 35.3 m
CheckDoes R = v₀² sin 2θ / g agree?
Yes400 × sin 60° / 9.81 = 35.3 m. Carry on.
No, stopA slip in a component or the calculator is in radians.
6
Round to the data's significant figures3 s.f.: T = 2.04 s, H = 5.10 m, R = 35.3 m
ResultR = 35.3 m, H = 5.10 m, T = 2.04 sUnits check ✓ VerifiedSame answers as the Excel sheet (Section 9), the R script (Section 10) and the Python script (Section 11).

From a height the steps are the same, but step 3 uses the quadratic formula. Sections 9, 10, 11 and 14 repeat this example in software and by hand.

📝 8. How to Use This Calculator

  1. Choose the type of launch. Pick Standard, Horizontal (off a cliff), Vertical, With Air Resistance or Batch.
  2. Choose what to solve for. In the Standard tab, tap a chip: everything from speed and angle, or the initial velocity or launch angle from a range, height or time.
  3. Type the launch speed and angle. The angle is measured up from the horizontal, in degrees unless you pick radians.
  4. Add the initial height. Type how far the launch point is above the landing point. Leave it empty or 0 for level ground.
  5. Pick units. Each box has its own unit list (m/s, km/h, mph, ft/s, m, ft). Choose how distances are shown in the settings row.
  6. Choose g and significant figures. Pick 9.81, 9.8, 10 or 9.80665 m/s² to match your book, or the Moon or Mars.
  7. Or load a sample problem. Thirteen samples cover level ground, 45°, a cliff, a shot put, solving backwards, a vertical throw, air resistance, mph and two traps. Nothing is calculated until you press Calculate.
  8. Press Calculate. Or press Enter in any box. The answer appears with units, the other key results and two check badges.
  9. Read the working. The GRESS table and numbered steps show the components, the time of flight, the height and the range, ready to copy.
  10. Check the trajectory and charts, then download. The live diagram is drawn to scale and the four charts are built from your numbers. Download Doc saves the working as text; Download PDF prints it.

📈 9. How to Calculate Projectile Motion in Excel

Excel can solve any projectile problem with ordinary formulas. Put one launch on each row, write the unit in every header, and remember that Excel's trig functions need radians. The worked numbers match Sections 7, 10 and 11: 20.0 m/s at 30.0° on level ground with g = 9.81 m/s².

The range in one cell: with speed in B2, angle in degrees in C2 and g in $H$1, type =B2^2*SIN(2*RADIANS(C2))/$H$1. It returns 35.31 (metres).

9.1 The functions you need

You wantExcel formulaNote
Horizontal velocity=B2*COS(RADIANS(C2))vx; wrap degrees in RADIANS()
Vertical velocity=B2*SIN(RADIANS(C2))vy
Time of flight, any height=(E2+SQRT(E2^2+2*$H$1*D2))/$H$1vy in E2, height in D2
Maximum height above launch=MAX(E2,0)^2/(2*$H$1)Zero if aimed downward
Range=F2*G2vx × T
Range on level ground=B2^2*SIN(2*RADIANS(C2))/$H$1Only when h = 0
Initial velocity from range (level)=SQRT(I2*$H$1/SIN(2*RADIANS(C2)))Range in I2
Best angle from a height=DEGREES(ATAN(B2/SQRT(B2^2+2*$H$1*D2)))45° when h = 0
Position at time t=E2*J2-0.5*$H$1*J2^2Height above launch at time J2

9.2 Step by step

1 One launch per row, g in a named cell

Type speed, angle and height in B, C and D, and g = 9.81 in H1. Lock H1 with dollar signs so it does not move when you fill down.

=B2*SIN(RADIANS(C2))
Xprojectile.xlsx - ExcelE2fx=B2*SIN(RADIANS(C2))ABCDE1Launchv0 (m/s)θ (°)h (m)vy (m/s)2Ball20.030.0010.003Shot put13.038.02.108.00

E2 holds vy = 10.00 m/s for 20.0 m/s at 30.0°.

2 Time of flight with the general formula

This one formula works for level ground and for a launch height, so you never need two versions.

=(E2+SQRT(E2^2+2*$H$1*D2))/$H$1
Xprojectile.xlsx - ExcelG2fx=(E2+SQRT(E2^2+$H$1*2*D2))/$H$1ABCDEFG1Launchv0θ (°)h (m)vyvxT (s)2Ball20.030.0010.0017.322.0393Shot put13.038.02.108.0010.241.862

T = 2.04 s on level ground; 1.86 s for the shot put from 2.10 m.

3 Maximum height and range

=MAX(E2,0)^2/(2*$H$1)=F2*G2
Xprojectile.xlsx - ExcelI2fx=F2*G2ABCDE1LaunchvxT (s)H (m)R (m)2Ball17.322.0395.1035.313Shot put10.241.8623.2619.07

H = 5.10 m and R = 35.31 m; the shot put lands 19.07 m away.

4 Range against angle to find the best angle

Fill angles 0 to 90 down a column, compute the range for each, and use MAX and MATCH to read off the best one.

=INDEX(A2:A92,MATCH(MAX(B2:B92),B2:B92,0))
Xangles.xlsx - ExcelD2fx=INDEX(A2:A92,MATCH(MAX(B2:B92),B2:B92,0))ABCD1θ (°)R (m)best θ23035.314534440.7544540.7754640.7566035.31

At 20.0 m/s on level ground the largest range, 40.77 m, is at 45°.

9.3 The awkward cases

  • Trig in radians. =SIN(30) is −0.988. Always write SIN(RADIANS(30)).
  • Square root of a negative. If the projectile cannot reach a higher landing level, SQRT returns #NUM!. That is the physics telling you it falls short.
  • Solving for the angle. Use Data → What-If Analysis → Goal Seek on the range cell by changing the angle. Start once from 20° and once from 70° to find both answers.
  • Charting the path. Make a column of t from 0 to T, then x = vxt and y = h + vyt − ½gt².

9.4 Why Excel might disagree with R, Python or this page

SituationWhat happensFix
Different g20.0 m/s at 30.0°: R = 35.31 m (9.81), 35.35 m (9.8), 34.64 m (10)Match g on this page to your sheet
Degrees vs radiansRange comes out negative or tinyWrap angles in RADIANS()
π typed as 3.14Small errors in the fourth significant figureUse PI() or RADIANS()
Level formula used from a heightRange too short for a raised launchUse vx × T with the general T
RoundingExcel rounds half away from zero; R and Python round half to evenRound only the final answer

9.5 Charting it

  1. Select the x and y columns for one launch.
  2. Insert → Scatter → Scatter with Smooth Lines (never the Line chart type).
  3. Format the axes with equal scales so the parabola keeps its true shape.
  4. Label the axes "horizontal distance x (m)" and "height y (m)".

9.6 Errors you will hit

Excel showsWhyFix
#NUM!SQRT of a negative: the landing level is out of reachRaise the speed or angle, or check the sign of h
#DIV/0!Angle of 0° in v0 = √(Rg / sin 2θ)A horizontal launch needs the height formula
#VALUE!"20 m/s" typed into a number cellPut units in the header only
Negative rangeAngle in degrees passed straight to SINUse RADIANS()

📈 10. How to Calculate Projectile Motion in R

This base-R script solves the worked example (T = 2.04 s, H = 5.10 m, R = 35.3 m) for any launch height, checks the answer two ways, finds the best angle, and saves one 300 dpi trajectory plot.

Copy the whole block. It runs in RStudio, Posit Cloud or with Rscript projectile.R. Change only part 1. No packages are needed.

10.1 The complete script

R, base only, saves projectile_trajectory.png

# ============================================================
# Projectile motion calculator in R: time of flight, maximum
# height, range (with or without a launch height), best angle,
# and one 300 dpi trajectory plot
# StatsUnlock - https://statsunlock.com/projectile-motion-calculator/
# Base R only. No packages to install.
# ============================================================

# ---- 1. Your values (SI units) -----------------------------
v0    <- 20.0   # launch speed, m/s
theta <- 30.0   # launch angle, degrees above horizontal
h     <- 0      # launch height above landing level, m
g     <- 9.81   # m/s^2 (9.80665 standard, 9.8 for CBSE/NCERT)

# ---- 2. Components (R trig functions use radians) ----------
th <- theta * pi / 180
vx <- v0 * cos(th)
vy <- v0 * sin(th)

# ---- 3. Time of flight, maximum height, range --------------
T_flight <- (vy + sqrt(vy^2 + 2 * g * h)) / g   # works for any h
t_top    <- max(vy, 0) / g
H        <- max(vy, 0)^2 / (2 * g)              # above the launch point
R        <- vx * T_flight

cat(sprintf("vx = %.4g m/s, vy = %.4g m/s\n", vx, vy))
cat(sprintf("Time of flight T = %.3g s\n", T_flight))
cat(sprintf("Maximum height H = %.3g m (at t = %.3g s)\n", H, t_top))
cat(sprintf("Range R = %.3g m\n", R))

# ---- 4. Checks ----------------------------------------------
if (h == 0) {
  R_short <- v0^2 * sin(2 * th) / g
  cat("Check R = v0^2 sin(2 theta)/g:", ifelse(abs(R - R_short) < 1e-9, "OK", "FAILED"), "\n")
}
v_land <- sqrt(vx^2 + (vy - g * T_flight)^2)
cat(sprintf("Landing speed = %.3g m/s (energy check: %.3g m/s)\n", v_land, sqrt(v0^2 + 2 * g * h)))

# ---- 5. Best angle for this speed and height ---------------
best <- atan(v0 / sqrt(v0^2 + 2 * g * h)) * 180 / pi
R_max <- v0 * sqrt(v0^2 + 2 * g * h) / g
cat(sprintf("Best angle = %.3g degrees, maximum range = %.3g m\n", best, R_max))

# ---- 6. One publication-ready figure: the trajectory -------
t <- seq(0, T_flight, length.out = 200)
x <- vx * t
y <- h + vy * t - 0.5 * g * t^2
png("projectile_trajectory.png", width = 6, height = 4, units = "in", res = 300)
par(mar = c(4.5, 4.5, 2.5, 1))
plot(x, y, type = "l", lwd = 3, col = "#2563eb", asp = 1,
     xlab = "horizontal distance x (m)", ylab = "height y (m)",
     main = sprintf("R = %.3g m, H = %.3g m, T = %.3g s", R, H, T_flight))
abline(h = 0, col = "#475569")
points(vx * t_top, h + H, pch = 19, col = "#9333ea")
invisible(dev.off())
cat("Saved projectile_trajectory.png\n")

Output when run: vx = 17.32 m/s, vy = 10 m/s; T = 2.04 s; H = 5.1 m at t = 1.02 s; R = 35.3 m; check OK; landing speed 20 m/s; best angle 45 degrees, maximum range 40.8 m.

10.2 What each part does

LineWhat it does
th <- theta * pi / 180Converts degrees to radians; R's sin and cos need radians
(vy + sqrt(vy^2 + 2*g*h)) / gTime of flight for any launch height; the positive root
max(vy, 0)^2 / (2*g)Rise above the launch point; zero if thrown downward
v0^2 * sin(2*th) / gLevel-ground range, used as a check
atan(v0 / sqrt(v0^2 + 2*g*h))Best launch angle for this height
plot(..., asp = 1)Equal axis scales so the parabola keeps its true shape

R traps: trig uses radians; round() goes half to even; -2^2 is −4; vectors recycle silently, so keep t one vector.

10.3 What the figure shows

A parabola from (0, 0) to (35.3, 0) m, peaking at 5.10 m above the point x = 17.7 m (purple dot). With asp = 1 one metre across equals one metre up, so the shallow 30° path looks as flat as it really is.

10.4 Common problems and fixes

  • NaN for T: vy² + 2gh is negative, so the landing level is out of reach.
  • Range looks wrong: check theta is in degrees in part 1 and converted once.
  • No PNG: look in getwd().

10.5 Useful one-liners

TaskR
Initial velocity from range (level)sqrt(R * g / sin(2 * th))
Both angles for a range (level)c(asin(R*g/v0^2)/2, pi/2 - asin(R*g/v0^2)/2) * 180/pi
Horizontal launch off a cliffv0 * sqrt(2 * h / g)
Height at time th + vy*t - 0.5*g*t^2
Range for every anglesapply(0:90, function(a) v0^2*sin(2*a*pi/180)/g)

🐍 11. How to Calculate Projectile Motion in Python

The Python script repeats the worked example, solves for both launch angles that hit a target 30 m away (23.7° and 66.3°), and adds a baseball with air resistance using SciPy's solve_ivp. It saves the same 300 dpi trajectory.

numpyArrays and the quadratic solver
scipysolve_ivp for air resistance
matplotlibThe 300 dpi figure

Install once with pip install numpy scipy matplotlib.

11.1 The complete script

Python 3 with NumPy, SciPy and Matplotlib, saves projectile_trajectory.png

# ============================================================
# Projectile motion calculator in Python: range, maximum height,
# time of flight, solving for the angle, air resistance (RK45),
# and one 300 dpi trajectory plot
# StatsUnlock - https://statsunlock.com/projectile-motion-calculator/
# pip install numpy scipy matplotlib
# ============================================================
import math
import numpy as np
from scipy.integrate import solve_ivp
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt

# ---- 1. Your values (SI units) -----------------------------
v0 = 20.0        # launch speed, m/s
theta = 30.0     # launch angle, degrees
h = 0.0          # launch height above landing level, m
g = 9.81         # m/s^2 (scipy.constants.g is 9.80665)

# ---- 2. No air resistance ----------------------------------
th = math.radians(theta)
vx, vy = v0 * math.cos(th), v0 * math.sin(th)
T = (vy + math.sqrt(vy**2 + 2 * g * h)) / g
H = max(vy, 0)**2 / (2 * g)
R = vx * T
print(f"vx = {vx:.4g} m/s, vy = {vy:.4g} m/s")
print(f"Time of flight T = {T:.3g} s, max height H = {H:.3g} m, range R = {R:.3g} m")
if h == 0:
    print("Check R = v0^2 sin(2 theta)/g:", "OK" if math.isclose(R, v0**2 * math.sin(2 * th) / g) else "FAILED")

# ---- 3. Launch angle needed to hit a target 30 m away ------
target = 30.0
A = g * target**2 / (2 * v0**2)
roots = np.roots([A, -target, A - h])            # quadratic in tan(theta)
angles = sorted(math.degrees(math.atan(r.real)) for r in roots if abs(r.imag) < 1e-12)
print("Angles to land 30 m away:", [round(a, 1) for a in angles], "degrees")

# ---- 4. With air resistance (quadratic drag) ---------------
m, d, Cd, rho = 0.145, 0.0737, 0.30, 1.225       # baseball
k = 0.5 * rho * Cd * math.pi * d**2 / 4 / m
def rhs(t, s):
    x, y, ux, uy = s
    sp = math.hypot(ux, uy)
    return [ux, uy, -k * sp * ux, -g - k * sp * uy]
def landed(t, s): return s[1] + 1.0              # launched 1.0 m above the ground
landed.terminal, landed.direction = True, -1
b0, bth = 40.0, math.radians(35.0)
sol = solve_ivp(rhs, [0, 30], [0, 0, b0 * math.cos(bth), b0 * math.sin(bth)],
                events=landed, rtol=1e-10, atol=1e-10, max_step=0.01)
print(f"Baseball 40 m/s at 35 deg with drag: range = {sol.y_events[0][0][0]:.4g} m")

# ---- 5. One publication-ready figure: the trajectory -------
t = np.linspace(0, T, 200)
x, y = vx * t, h + vy * t - 0.5 * g * t**2
fig, ax = plt.subplots(figsize=(6, 4))
ax.plot(x, y, color="#2563eb", lw=3)
ax.plot(vx * vy / g, h + H, "o", color="#9333ea")
ax.axhline(0, color="#475569", lw=1)
ax.set_aspect("equal")
ax.set_xlabel("horizontal distance x (m)")
ax.set_ylabel("height y (m)")
ax.set_title(f"R = {R:.3g} m, H = {H:.3g} m, T = {T:.3g} s")
fig.savefig("projectile_trajectory.png", dpi=300, bbox_inches="tight")
print("Saved projectile_trajectory.png")

Output when run: vx = 17.32 m/s, vy = 10 m/s; T = 2.04 s, H = 5.1 m, R = 35.3 m; check OK; angles to land 30 m away: 23.7 and 66.3 degrees; baseball with drag: range 100.2 m.

11.2 What each part does

LineWhat it does
math.radians(theta)Degrees to radians for math.sin and math.cos
np.roots([A, -target, A - h])Solves the quadratic in tan θ for both angles
k = 0.5*rho*Cd*pi*d**2/4/mDrag constant per metre
solve_ivp(rhs, ..., events=landed)Integrates the motion and stops exactly at the landing level
ax.set_aspect("equal")Equal scales so the path keeps its true shape

Python traps: ** is power and ^ is XOR; scipy.constants.g is 9.80665, not 9.81; round(2.5) is 2.

11.3 What the figure shows

The same parabola as the R figure: 35.3 m long and 5.10 m high, with the peak marked. The drag result is printed rather than drawn: 100.2 m against 154.7 m in a vacuum.

11.4 Common problems and fixes

  • ValueError: math domain error: the square root is of a negative, so the target level is out of reach.
  • No angles printed: the target is beyond the maximum range.
  • solve_ivp never lands: raise the time limit from 30 s for very long flights.

11.5 Useful one-liners

TaskPython
Range on level groundv0**2 * math.sin(2*th) / g
Maximum range from a heightv0 * math.sqrt(v0**2 + 2*g*h) / g
Fall time off a cliffmath.sqrt(2*h/g)
Speed at time tmath.hypot(vx, vy - g*t)
Terminal velocity with dragmath.sqrt(g / k)

Run it in a terminal (python projectile.py), in Jupyter, or in Google Colab.

📋 12. Reference Tables

12.1 Range, height and time against launch angle (20.0 m/s, level ground, g = 9.81 m/s²)

AngleRange (m)Max height (m)Time of flight (s)
15°20.41.371.06
30°35.35.102.04
45°40.810.192.88
60°35.315.293.53
75°20.419.023.94

Computed with the formulas in Section 6. Complementary angles (15° and 75°, 30° and 60°) share a range.

12.2 Gravity on other worlds

Worldg (m/s²)Range of 20.0 m/s at 45°
Earth (standard gravity, exact)9.8066540.8 m
Moon1.62247 m
Mars3.71108 m
Jupiter (cloud tops)24.7916.1 m

Standard gravity from the SI and NIST CODATA 2022; planetary surface values rounded from NASA planetary fact sheets.

12.3 Typical launch speeds

ProjectileTypical speedTypical angle
Basketball free throw7 m/s50 to 55°
Long jumper at take-off9 to 10 m/s18 to 22°
Shot put (elite)13 to 14 m/s35 to 38°
Football (soccer) long kick25 to 30 m/s30 to 40°
Baseball off the bat40 to 50 m/s25 to 35°

12.4 Drag data for the Air Resistance tab

BallMassDiameterTypical Cd
Baseball145 g7.37 cm0.30 to 0.35
Golf ball45.9 g4.27 cm0.25 (dimpled)
Tennis ball57 g6.7 cm0.55
Football (soccer)430 g22 cm0.2 to 0.5, falls at high speed
Shot put (men)7.26 kg12 cm0.47 (drag barely matters)

Sea-level air density 1.225 kg/m³ at 15 °C (International Standard Atmosphere).

12.5 Unit conversions

FromTo SIFromTo SI
1 km/h0.27778 m/s1 ft0.3048 m
1 mph0.44704 m/s1 yd0.9144 m
1 ft/s0.3048 m/s1°π/180 rad = 0.017453 rad

📈 13. Example Results

1
TEXTBOOK CASE

A long football kick

Range, height and time on level ground.

A football is kicked at 25.0 m/s at 40.0° across level ground (g = 9.81 m/s²).

v₀ = 25.0 m/sθ = 40.0°T = 3.28 sH = 13.2 mR = 62.7 m
QuantityValueNote
Componentsvx = 19.15 m/s, vy = 16.07 m/scos and sin of 40°
Time of flight2 × 16.07 / 9.81 = 3.28 sT = 2vy/g
Max height16.07² / 19.62 = 13.2 mH = vy²/(2g)
Range625 × sin 80° / 9.81 = 62.7 mR = v₀² sin 2θ/g
Football kicked at 25 m/s and 40 degrees: range 62.7 m, height 13.2 mR = 62.7 m · H = 13.2 m
Drawn to scale: a 40° kick is long and fairly flat.

What it means: The ball flies 62.7 m, just short of the 45° maximum of 63.7 m. Real kicks land shorter because of air resistance.

How to write it: R = 62.7 m, H = 13.2 m, T = 3.28 s (3 s.f.).

2
EXAM: SOLVE FOR v₀

How fast was the long jumper?

Initial velocity from the range.

A long jumper takes off at 20.0° and lands 7.50 m away. Treat the jumper as a point on level ground.

R = 7.50 mθ = 20.0°v₀ = 10.7 m/sH = 0.68 m
QuantityValueNote
Rearrangev₀ = √(Rg / sin 2θ)From R = v₀² sin 2θ/g
Substitute√(7.50 × 9.81 / sin 40°) = 10.70 m/sLevel ground
CheckR = 10.70² × sin 40° / 9.81 = 7.50 m ✓Substitute back
Long jump trajectory at 20 degrees landing 7.5 m awayv₀ = 10.7 m/s for 7.50 m
A low, flat take-off: the centre of mass rises only about 0.7 m.

What it means: About 10.7 m/s, close to elite sprint speed. In the calculator, choose "Initial velocity from range".

How to write it: v₀ = 10.7 m/s (3 s.f.).

3
NON-SI INPUTS

A baseball hit at 100 mph

Convert mph before using any formula.

A ball leaves the bat at 100 mph at 30.0°. Find the vacuum range in feet (g = 9.80665 m/s²).

100 mph = 44.7 m/sθ = 30.0°R = 176 m= 579 ft
QuantityValueNote
Convert100 × 0.44704 = 44.704 m/smph to m/s
Range44.704² × sin 60° / 9.80665 = 176.5 mLevel ground
In feet176.5 ÷ 0.3048 = 579 ftFor US readers
Baseball hit at 100 mph and 30 degrees, vacuum range 176 metresR = 176 m = 579 ft (no drag)
Without air the ball would clear any stadium.

What it means: Typed as 100 m/s instead, the range would be 883 m, five times too far. Real fly balls at this speed travel about 100 to 120 m because of drag and backspin.

How to write it: R = 176 m (579 ft), no air resistance.

4
EVERYDAY, LANDING HIGHER

A basketball free throw

Initial velocity when the target is above the release point.

A player releases the ball 2.10 m above the floor at 52.0°. The hoop is 3.05 m high and 4.19 m away horizontally.

h = 2.10 − 3.05 = −0.95 mR = 4.19 mθ = 52.0°v₀ = 7.18 m/s
QuantityValueNote
Landing level−0.95 m (hoop above release)Negative h
Formulav₀ = √(gR² / (2cos²θ(R tan θ + h)))Path equation at the hoop
Result7.18 m/s, flight 0.95 sEnters at 40° below horizontal
Basketball free throw rising to a hoop 0.95 m above the release pointv₀ = 7.18 m/s, enters at 40°
The ground line is the hoop height; the release point sits 0.95 m below it.

What it means: About 7.2 m/s is all a free throw needs. Steeper release angles let the ball drop into the hoop at a steeper, more forgiving angle.

How to write it: v₀ = 7.18 m/s (3 s.f.).

5
EXTREME: THE MOON

A golf shot on the Moon

Same swing, one sixth of the gravity.

A ball leaves the club at 30.0 m/s at 45.0°. Compare the Moon (g = 1.62 m/s²) with Earth (9.81 m/s²), no air on either for a fair test.

v₀ = 30.0 m/sθ = 45.0°Moon R = 556 mEarth R = 91.7 mtime 26.2 s vs 4.32 s
QuantityValueNote
Moon range900 / 1.62 = 556 mR = v₀²/g at 45°
Earth range900 / 9.81 = 91.7 mVacuum
Ratio6.06= 9.81 / 1.62
Golf shot on the Moon compared with EarthMoon (orange) vs Earth (blue)Moon 556 mEarth 92 m
Both drawn to the same scale. The Earth shot is the small arc near the start.

What it means: Range and time both scale with 1/g, so the Moon shot goes about 6.1 times further and stays up 26 s. Apollo 14 astronaut Alan Shepard did hit golf balls on the Moon in 1971.

How to write it: Moon: R = 556 m, T = 26.2 s; Earth: R = 91.7 m.

6
NOT PHYSICAL

A target out of reach

Why "solve for the angle" can have no answer.

A student throws at 15.0 m/s and wants to hit a target 30.0 m away on level ground. Which angle?

v₀ = 15.0 m/sR = 30.0 mRmax = 22.9 mno angle works
QuantityValueNote
Equationsin 2θ = Rg / v₀²Level ground
Substitute30.0 × 9.81 / 225 = 1.31Greater than 1
Meaningsin 2θ cannot exceed 1Out of reach
Best possible 45 degree throw at 15 m/s falls short of a 30 m targetbest: 22.9 m at 45° · target 30.0 m
Even the best 45° throw lands 7 m short of the target.

What it means: sin 2θ = 1.31 is impossible, so the calculator shows Not physical with the maximum range of 22.9 m instead of a made-up angle.

How to write it: No launch angle reaches 30.0 m; the maximum range at 15.0 m/s is 22.9 m.

7
MODEL LIMIT

A baseball with air resistance

Where the vacuum formulas fail badly.

A 145 g baseball (7.37 cm, Cd = 0.30) leaves the bat at 40.0 m/s at 35.0° from 1.00 m, in sea-level air.

no drag: 154.7 mwith drag: 100.2 mkeeps 65%vt = 42.6 m/s
QuantityValueNote
Drag constantk = ρCdA/(2m) = 0.00541 m−1Quadratic drag
Range100.2 m (RK4) vs 154.7 mSciPy solve_ivp agrees: 100.2 m
Max height21.0 m vs 26.8 mLower peak
Landing speed26.0 m/s vs 40.2 m/sEnergy lost to the air
Baseball path with and without air resistance100 m155 mwith drag 100 m · no drag 155 m
Dashed blue: vacuum path. Orange: with air resistance, shorter, lower and steeper on the way down.

What it means: Drag takes away about a third of the range here. For fast, light balls always use the Air Resistance tab; the vacuum answer is an upper limit.

How to write it: With quadratic drag R = 100 m (155 m without air resistance).

8
TRAP: WRONG FORMULA

The shot put from a height

R = v₀² sin 2θ / g only works on level ground.

A shot put leaves the hand 2.10 m above the ground at 13.0 m/s and 38.0°. A student uses R = v₀² sin 2θ / g.

h = 2.10 mwrong: 16.7 mright: 19.1 merror 12%
QuantityValueNote
Level formula (wrong)169 × sin 76° / 9.81 = 16.7 mIgnores the 2.10 m drop
Time from the quadraticT = (8.00 + √(8.00² + 41.2)) / 9.81 = 1.862 sPositive root
Range (right)10.24 × 1.862 = 19.07 mvx × T
Shot put released from 2.10 m landing 19.1 m awayR = 19.1 m (level formula says 16.7 m)
The grey block is the 2.10 m release height; the extra drop adds about 2.4 m of range.

What it means: The level-ground formula is 2.4 m short. The best angle from this height is 41.9°, not 45°, which is why elite throwers release below 40°.

How to write it: R = 19.1 m (using T from the quadratic, not the level-ground formula).

✏️ 14. How to Solve Projectile Motion by Hand, Step by Step

The written method examiners expect, on the same example as Sections 7, 9, 10 and 11: a ball is launched at 20.0 m/s at 30.0° above level ground. Find the time of flight, maximum height and range (g = 9.81 m/s²).

14.1 The written method (GRESS)

  1. Given. v₀ = 20.0 m/s, θ = 30.0°, h = 0, g = 9.81 m/s². Up and forward are positive.
  2. Required. T (s), H (m), R (m).
  3. Equations. vx = v₀ cos θ, vy = v₀ sin θ, T = 2vy/g, H = vy²/(2g), R = vxT.
  4. Substitute, with units. vx = (20.0 m/s)(cos 30.0°) = 17.32 m/s; vy = (20.0 m/s)(sin 30.0°) = 10.00 m/s.
  5. Solve. T = 2(10.00)/9.81 = 2.039 s; H = 10.00²/19.62 = 5.097 m; R = 17.32 × 2.039 = 35.31 m.
  6. Check. R = 20.0² sin 60° / 9.81 = 35.31 m. Units: (m/s)(s) = m. On level ground the landing speed is 20.0 m/s again.
  7. Write the answer. T = 2.04 s, H = 5.10 m, R = 35.3 m (3 significant figures).

From a height: for the shot put (13.0 m/s, 38.0°, h = 2.10 m), vy = 8.004 m/s, so T = (8.004 + √(8.004² + 2 × 9.81 × 2.10))/9.81 = 1.862 s and R = 10.24 × 1.862 = 19.07 m.

14.2 On a scientific calculator

TaskKeys (DEG mode)Display
vy20 × sin 30 ) =10
Range20 x² × sin 60 ) ÷ 9.81 =35.31194307
Maximum height10 x² ÷ ( 2 × 9.81 ) =5.096839959
Time of flight2 × 10 ÷ 9.81 =2.038735984

The screen must show D (degrees). In R (radian) mode sin 30 gives −0.988 and every answer is wrong. Keep full figures until the last line.

14.3 Measure it yourself: a school lab practical

Range of a ball rolled off a table

  1. Release a steel ball from a marked point on a ramp so it leaves the table edge horizontally at the same speed every time.
  2. Measure the table height h from the edge to the floor (for example 0.850 m).
  3. Find the launch speed: film the ball on the table at 240 fps beside a ruler, or use two light gates.
  4. Predict the landing point: t = √(2h/g) = 0.416 s, so R = v₀ × 0.416 s.
  5. Tape carbon paper on the floor, release 5 times and measure each landing distance. Plot measured R against v₀: the gradient should be √(2h/g).
  6. Errors: the ball spins and rolls (its launch speed is slightly lower than a sliding one), measuring h to the ball's centre, and the spread of landing marks.
v₀ (m/s)h (m)predicted R (m)measured R, mean of 5 (m)
1.200.8500.4990.487
1.600.8500.6660.651
2.000.8500.8330.815

Measured ranges are about 2% short, typical of rolling losses. Paste "1.20, 0, 0.850" into the Batch tab to check each prediction.

14.4 Practice problems with answers

1. 15.0 m/s at 45.0°, level ground (g = 9.81). Find R.

R = 15.0² × sin 90° / 9.81 = 22.9 m.

2. Same throw: find the maximum height.

vy = 10.61 m/s, H = 10.61²/19.62 = 5.73 m.

3. A ball rolls off a 1.25 m table at 3.00 m/s. Where does it land?

t = √(2 × 1.25/9.81) = 0.505 s, R = 3.00 × 0.505 = 1.51 m.

4. 72 km/h at 20.0°, level ground. Find T.

v₀ = 20.0 m/s, vy = 6.84 m/s, T = 2 × 6.84/9.81 = 1.39 s.

5. What launch speed gives a 50.0 m range at 45.0°?

v₀ = √(50.0 × 9.81 / 1) = 22.1 m/s.

6. At 25.0 m/s, which two angles give a 50.0 m range?

sin 2θ = 50.0 × 9.81 / 625 = 0.785, so θ = 25.9° or 64.1°.

7. A ball is thrown up at 12.0 m/s. How high does it go?

H = 12.0²/19.62 = 7.34 m.

8. 18.0 m/s at 30.0° from a 10.0 m cliff. Find R.

vy = 9.00, T = (9.00 + √(81.0 + 196.2))/9.81 = 2.615 s, R = 15.59 × 2.615 = 40.8 m.

9. On the Moon (g = 1.62) a golf ball leaves at 30.0 m/s at 45.0°. Find R.

R = 900/1.62 = 556 m, six times the Earth value.

10. Trap: can 10.0 m/s reach a target 12.0 m away on level ground?

No. The longest range is v₀²/g = 10.2 m at 45°, so 12.0 m is out of reach at any angle.

14.5 Mistakes that lose marks

  • Calculator in radians mode, or degrees typed into a function that expects radians.
  • Using R = v₀² sin 2θ / g when the launch and landing heights differ.
  • Saying the velocity at the top is zero. Only vy is zero; vx carries on.
  • Using sin for vx and cos for vy when the angle is measured from the horizontal.
  • Taking the negative root of the time quadratic.
  • Forgetting that only one of the two angles may make sense in context (a low throw under a roof).
  • Giving the maximum height above the launch point when the question asks for the height above the ground.

🎯 15. When to Use the Projectile Motion Equations

Use the vacuum equations when:

  • ✓ Gravity is the only force after launch (a dense, slow object over a short distance).
  • ✓ g is constant: heights of a few kilometres or less.
  • ✓ The ground is flat over the range: up to a few kilometres.

Use something else when:

  • ✗ The object is light or fast (sports balls above about 20 m/s): use the Air Resistance tab.
  • ✗ Launch and landing heights differ: use the general time-of-flight formula, not R = v₀² sin 2θ / g.
  • ✗ Spin matters (a curving free kick, a topspin tennis shot): the Magnus force is beyond this tool.
  • ✗ The range is hundreds of kilometres (long-range artillery, rockets): the Earth's curvature and changing g matter.
  • ✗ The object has its own thrust (a rocket): it is not a projectile until the engine stops.

Real examples:

  1. Exam questions in kinematics: Standard tab, with your board's g.
  2. A stone thrown off a cliff or a ball rolled off a table: Horizontal tab.
  3. A ball thrown straight up: Vertical tab.
  4. The shot put: Standard tab with a launch height of about 2 m.
  5. A basketball shot: Standard tab with a negative h, solving for the launch speed.
  6. A baseball or golf drive: Air Resistance tab.
Decision tree. Straight up or down? Vertical tab. Launched flat? Horizontal tab. Otherwise: is drag small? Standard tab (level ground short formulas, or the general method from a height). Drag large? Air Resistance tab.

🔧 16. Common Mistakes and Troubleshooting

My range is negative or tiny

Cause: the calculator (or Excel) is in radians while the angle is in degrees. Fix: switch to DEG mode, or choose deg in the unit list here.

The tool says the angle is outside −90° to 90°

Cause: degrees typed with rad selected, for example 45 rad. Fix: change the unit to deg.

My answer is 3.6 times too big or small

Cause: a speed in km/h used as m/s. Fix: pick km/h in the unit list, or divide by 3.6.

The range from a height looks too short

Cause: the level-ground formula R = v₀² sin 2θ / g was used. Fix: use T from the quadratic, then R = vxT, as this tool does.

It says the projectile never reaches the landing level

Cause: the landing point is higher than the peak of the path (h negative and too large). Fix: raise the speed or angle, or check the sign of h.

Solving for the angle gives two answers

Cause: a low path and a high path both reach the same range. Fix: both are correct; pick the one that fits the situation.

It says the target is out of reach

Cause: the range is longer than the maximum range at that speed, v₀√(v₀² + 2gh)/g. Fix: a faster launch is needed.

My book's answer is slightly different

Cause: a different g (9.8, 9.81 or 10) or rounding in the middle. Fix: set g to your book's value and round only at the end.

My measured range is shorter than predicted

Cause: air resistance, spin, or a launch speed that was overestimated. Fix: try the Air Resistance tab and measure the launch speed directly.

Initial velocity from time fails at 0°

Cause: for a flat launch the fall time depends only on the height, so the speed cannot be found from time. Fix: use the range instead.

The charts do not appear

Cause: the chart library was blocked, or Calculate has not been pressed. Fix: press Calculate. The answer, working, table and live trajectory still work without the charts.

⚖ 17. Assumptions and Limitations

Assumptions

  1. No air resistance (Standard, Horizontal, Vertical). Check that the object is heavy and slow. When drag matters, the vacuum answer overestimates range, height and time: a baseball at 40 m/s goes about 100 m, not 155 m.
  2. Constant g. True to better than 0.1% below about 3 km altitude. At great heights g is smaller, so the formula underestimates the height reached.
  3. Flat, non-rotating Earth. Over a few kilometres the error is tiny. Over long ranges the curving ground makes the formula underestimate the flight time and range.
  4. A point mass. Spin and shape are ignored. Backspin adds lift and makes a real ball go further than the drag-only model; topspin makes it drop sooner.
  5. Constant drag coefficient (Air Resistance tab). Real Cd changes with speed; for golf balls it drops sharply at high speed, so the model can underestimate the range of a fast drive.
  6. Still air. A headwind shortens the range; a tailwind lengthens it.

Limitations

  • No Magnus force (spin), wind or lift. Those need a full aerodynamic model.
  • No rocket thrust: the object must be unpowered after launch.
  • No relativistic effects (irrelevant below about 0.1c) and no orbital mechanics: for satellites, use orbital tools.
  • The drag solution is numerical (fourth-order Runge-Kutta). It is checked by halving the time step, but it is not an exact formula.

🏁 18. Conclusion

___ Your own result appears here after you press Calculate.

What the answer is

A projectile motion calculator turns a launch speed, an angle and a height into a time of flight, a maximum height, a range and a landing velocity. For the worked example, 20.0 m/s at 30.0°, the ball flies for 2.04 s, rises 5.10 m and lands 35.3 m away.

What it means physically

The sideways motion is steady and the up-and-down motion is free fall; time links the two. That is why 45° is the best angle on level ground, why complementary angles share a range, and why launching from a height lowers the best angle.

Watch out for

Degrees vs radians, km/h vs m/s, the level-ground formula used from a height, and air resistance for light, fast balls. Say whether a height is above the launch point or above the ground.

Next steps

Find the launch speed you need with the velocity calculator, check the angle conversions with the angle calculator, and fit measured trajectories with polynomial regression (a parabola is a degree-2 fit). Come back to this projectile motion calculator for range, height, time of flight and air resistance, every step shown.

❓ 19. Frequently Asked Questions

What is a projectile motion calculator?

A projectile motion calculator finds the time of flight, maximum height, range and landing velocity of an object launched at a given speed and angle. This one also works from a height, solves backwards for the initial velocity or the angle, and models air resistance.

How do you calculate projectile motion?

Split the launch velocity into vx = v₀ cos θ and vy = v₀ sin θ, find the time of flight from the vertical motion, then the range from R = vx × T. For 20.0 m/s at 30.0°, T = 2.04 s and R = 35.3 m.

What is the formula for the range of a projectile?

On level ground the range is R = v₀² sin 2θ / g. From a height h, find the time of flight first and use R = v₀ cos θ × T.

How do you calculate the maximum height in projectile motion?

Use H = v₀² sin²θ / (2g), the height above the launch point. For 20.0 m/s at 30.0° that is 10.0² / 19.62 = 5.10 m; add the launch height for the height above the ground.

How do you calculate the time of flight in projectile motion?

On level ground T = 2v₀ sin θ / g. From a height h, T = (vy + √(vy² + 2gh)) / g, the positive root of −h = vyt − ½gt².

How do you calculate initial velocity in projectile motion?

From the range on level ground, v₀ = √(Rg / sin 2θ). From the maximum height, v₀ = √(2gH) / sin θ. A 35.3 m range at 30.0° needs 20.0 m/s.

What angle gives the maximum range?

On level ground with no air resistance, 45°. From a height the best angle is lower, tan−1(v₀ / √(v₀² + 2gh)), and air resistance lowers it further, to about 35 to 42° for sports balls.

How do you find the launch angle from the range?

On level ground, θ = ½ sin−1(Rg / v₀²), and 90° minus that angle also works. At 20.0 m/s, a 30.0 m range needs 23.7° or 66.3°.

How do you calculate horizontal projectile motion?

For a launch at 0° from a height h, the fall time is t = √(2h/g) and the horizontal distance is R = v₀t. A stone thrown at 15.0 m/s off a 45.0 m cliff falls for 3.03 s and lands 45.4 m out.

How do you calculate projectile motion with an initial height?

Use the quadratic for time, T = (vy + √(vy² + 2gh)) / g, then R = vxT. A shot put at 13.0 m/s and 38.0° from 2.10 m lands 19.1 m away.

What is the velocity at the highest point of a projectile?

The vertical velocity is zero, but the projectile still moves sideways at vx = v₀ cos θ. For 20.0 m/s at 30.0° that is 17.3 m/s, the lowest speed of the flight.

How do you calculate the final velocity of a projectile?

Combine the unchanged vx with the final vertical velocity vy − gT: v = √(vx² + (vy − gT)²). Energy gives the same answer, v = √(v₀² + 2gh).

Why do 30 and 60 degrees give the same range?

Because sin 2θ is the same for both: sin 60° = sin 120°. Any two angles that add up to 90° give the same range on level ground, but the higher one stays in the air longer.

How does air resistance affect projectile motion?

It shortens the range, lowers the peak, makes the path come down more steeply, and lowers the best angle below 45°. A 40.0 m/s baseball at 35.0° lands about 100 m away instead of 155 m.

What is the trajectory equation of a projectile?

y = x tan θ − g x² / (2 v₀² cos²θ). It is a parabola, which is why projectile paths without air resistance are always parabolic.

What is the SI unit of range in projectile motion?

Range and maximum height are in metres (m), time of flight in seconds (s), and velocities in metres per second (m/s). Angles are in degrees or radians.

How do you calculate projectile motion in Excel?

Use =B2^2*SIN(2*RADIANS(C2))/9.81 for the level-ground range, with speed in B2 and angle in C2. Always wrap degrees in RADIANS(); Section 9 has the time, height and best-angle formulas.

How do you calculate projectile motion in Python?

Convert the angle with math.radians, then compute T = 2*v0*math.sin(th)/g and R = v0**2*math.sin(2*th)/g. For air resistance, integrate with scipy.integrate.solve_ivp; Section 11 has a complete script.

How do you calculate projectile motion in R?

Convert the angle with th <- theta * pi / 180, then T <- 2*v0*sin(th)/g and R <- v0^2*sin(2*th)/g. Section 10 has a complete script with checks and a 300 dpi plot.

How do you solve projectile motion on a scientific calculator?

Set DEG mode, then type 20 x² × sin 60 ÷ 9.81 = for the range (35.31 m). Work out vy = 20 sin 30 first for the height and the time, and round only the final answers.

📑 20. Cite This Tool

APA 7th edition
StatsUnlock Team. (2026). Projectile motion calculator [Interactive physics tool]. StatsUnlock. https://statsunlock.com/projectile-motion-calculator/
BibTeX
@misc{statsunlock_projectile_2026, title={Projectile Motion Calculator}, author={{StatsUnlock Team}}, year={2026}, publisher={StatsUnlock}, note={Interactive physics tool}, url={https://statsunlock.com/projectile-motion-calculator/}}
Methods wording
Projectile trajectories were calculated with the StatsUnlock Projectile Motion Calculator (2026), assuming constant gravitational acceleration and no air resistance; time of flight was taken as the positive root of the vertical-motion quadratic and each result was verified by energy conservation. Where air resistance was included, a quadratic drag law was integrated numerically with a fourth-order Runge-Kutta method.

📖 22. Glossary of Terms

TermPlain-English meaning
Air resistance (drag)The force of the air opposing motion, in N. Grows with speed squared.
ApexThe highest point of the path, where the vertical velocity is zero.
Complementary anglesTwo angles adding to 90°; they give the same range on level ground.
Drag coefficient (Cd)A number describing how streamlined an object is. No unit.
gAcceleration of free fall, in m/s²: 9.81 on Earth, 1.62 on the Moon.
Horizontal component (vx)The sideways part of the velocity, in m/s. Constant without drag.
Horizontal projectileOne launched at 0°, such as off a table or a cliff.
Initial height (h)How far the launch point is above the landing level, in m.
Initial velocity (v₀)The launch speed, in m/s.
Launch angle (θ)The angle above the horizontal at launch, in degrees or radians.
Maximum height (H)How high the projectile rises above the launch point, in m.
ParabolaThe U-shaped curve every vacuum projectile path follows.
ProjectileAn object moving under gravity alone after launch.
Range (R)The horizontal distance from launch to landing, in m.
Runge-Kutta (RK4)A step-by-step numerical method for motion with no exact formula.
Terminal velocityThe speed at which drag balances weight in a fall, in m/s.
Time of flight (T)Time from launch to landing, in s.
TrajectoryThe path the projectile follows through the air.
Vertical component (vy)The up-down part of the velocity, in m/s. Changes by g each second.
Vertical projectileOne thrown straight up or down.

📚 23. References

Peer-reviewed sources for the physics, the air-resistance model, the sports applications and the teaching methods behind this projectile motion calculator. Every DOI was checked in October 2026.

  1. Beichner, R. J. (1994). Testing student interpretation of kinematics graphs. American Journal of Physics, 62(8), 750–762. https://doi.org/10.1119/1.17449
  2. Brancazio, P. J. (1981). Physics of basketball. American Journal of Physics, 49(4), 356–365. https://doi.org/10.1119/1.12511
  3. Erlichson, H. (1983). Maximum projectile range with drag and lift, with particular application to golf. American Journal of Physics, 51(4), 357–362. https://doi.org/10.1119/1.13248
  4. Hake, R. R. (1998). Interactive-engagement versus traditional methods: A six-thousand-student survey of mechanics test data for introductory physics courses. American Journal of Physics, 66(1), 64–74. https://doi.org/10.1119/1.18809
  5. Halloun, I. A., & Hestenes, D. (1985). The initial knowledge state of college physics students. American Journal of Physics, 53(11), 1043–1055. https://doi.org/10.1119/1.14030
  6. Hestenes, D., Wells, M., & Swackhamer, G. (1992). Force concept inventory. The Physics Teacher, 30(3), 141–158. https://doi.org/10.1119/1.2343497
  7. Lichtenberg, D. B., & Wills, J. G. (1978). Maximizing the range of the shot put. American Journal of Physics, 46(5), 546–549. https://doi.org/10.1119/1.11258
  8. Linthorne, N. P. (2001). Optimum release angle in the shot put. Journal of Sports Sciences, 19(5), 359–372. https://doi.org/10.1080/02640410152006135
  9. McDermott, L. C., Rosenquist, M. L., & van Zee, E. H. (1987). Student difficulties in connecting graphs and physics: Examples from kinematics. American Journal of Physics, 55(6), 503–513. https://doi.org/10.1119/1.15104
  10. Nguyen, N.-L., & Meltzer, D. E. (2003). Initial understanding of vector concepts among students in introductory physics courses. American Journal of Physics, 71(6), 630–638. https://doi.org/10.1119/1.1571831
  11. Packel, E., & Yuen, D. (2004). Projectile motion with resistance and the Lambert W function. The College Mathematics Journal, 35(5), 337–350. https://doi.org/10.1080/07468342.2004.11922095
  12. Parker, G. W. (1977). Projectile motion with air resistance quadratic in the speed. American Journal of Physics, 45(7), 606–610. https://doi.org/10.1119/1.10812
  13. Rosenblatt, R., & Heckler, A. F. (2011). Systematic study of student understanding of the relationships between the directions of force, velocity, and acceleration in one dimension. Physical Review Special Topics - Physics Education Research, 7(2), 020112. https://doi.org/10.1103/PhysRevSTPER.7.020112
  14. Shaffer, P. S., & McDermott, L. C. (2005). A research-based approach to improving student understanding of the vector nature of kinematical concepts. American Journal of Physics, 73(10), 921–931. https://doi.org/10.1119/1.2000976
  15. Staacks, S., Hütz, S., Heinke, H., & Stampfer, C. (2018). Advanced tools for smartphone-based experiments: phyphox. Physics Education, 53(4), 045009. https://doi.org/10.1088/1361-6552/aac05e
  16. Thornton, R. K., & Sokoloff, D. R. (1998). Assessing student learning of Newton's laws: The Force and Motion Conceptual Evaluation and the evaluation of active learning laboratory and lecture curricula. American Journal of Physics, 66(4), 338–352. https://doi.org/10.1119/1.18863
  17. Tiesinga, E., Mohr, P. J., Newell, D. B., & Taylor, B. N. (2021). CODATA recommended values of the fundamental physical constants: 2018. Reviews of Modern Physics, 93(2), 025010. https://doi.org/10.1103/RevModPhys.93.025010
  18. Trowbridge, D. E., & McDermott, L. C. (1980). Investigation of student understanding of the concept of velocity in one dimension. American Journal of Physics, 48(12), 1020–1028. https://doi.org/10.1119/1.12298
  19. Trowbridge, D. E., & McDermott, L. C. (1981). Investigation of student understanding of the concept of acceleration in one dimension. American Journal of Physics, 49(3), 242–253. https://doi.org/10.1119/1.12525
  20. Warburton, R. D. H., & Wang, J. (2004). Analysis of asymptotic projectile motion with air resistance using the Lambert W function. American Journal of Physics, 72(11), 1404–1407. https://doi.org/10.1119/1.1767104
STATS UNLOCK · statsunlock.com · Projectile Motion Calculator
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Statistical Models

Important Plots & Charts

Calculators and Converters