# Projectile motion calculator

> Projectile motion calculator: range, maximum height, time of flight and impact speed for any launch angle and height, on Earth or other worlds, with drag.

Version interactive : https://www.calcopenly.com/fr/science/projectile-motion-calculator
Sujet : Calculatrices scientifiques

The launch velocity splits into a horizontal part, v cos θ, which stays constant, and a vertical part, v sin θ, which gravity reduces by g every second. The time of flight is when the height returns to the ground, found by solving the vertical motion; the range is horizontal speed × flight time. On level ground this reduces to R = v² sin 2θ ÷ g.

It answers homework problems and sports or water-jet estimates. The default throw, 20 m/s at 45° on Earth, peaks at 10.20 m and lands 40.79 m away after 2.88 s. The same throw on the Moon, where g = 1.62 m/s², travels 246.9 m.

Without the drag option, air resistance, spin and the Earth's curvature are ignored, which overstates the range of fast or light objects. The linear-drag option shows how drag shortens and steepens the path; real balls at sports speeds meet drag closer to v², so read that result as a trend.

## Données

- **Launch speed**
- **Launch angle above horizontal**
- **Launch height above ground**
- **Gravity** (options : Earth, Moon, Mars, Jupiter, Custom)
- **Gravitational acceleration**
- **Unité des résultats** (options : Metres and m/s, Feet and mph)
- **Include air drag (linear model)**
- **Projectile mass**
- **Drag coefficient b (force = −b·v)**

## Résultats

- Horizontal range (m) — résultat principal
- Maximum height above ground (m)
- Time of flight (s)
- Time to maximum height (s)
- Impact speed (m/s)
- Impact angle below horizontal (°)
- Range without drag (m)

## Formule

$$
R = v_x T,\quad T = \frac{v_y + \sqrt{v_y^2 + 2gh_0}}{g},\quad H = h_0 + \frac{v_y^2}{2g};\qquad h_0 = 0:\ R = \frac{v^2\sin 2\theta}{g}
$$

## Exemples détaillés

### 20 m/s at 45° on Earth

- Launch speed: 20 m/s
- Launch angle above horizontal: 45 °
- Launch height above ground: 0 m
- Gravity: Earth
- Unité des résultats: Metres and m/s
- **Horizontal range: 40.7886 m**
- **Maximum height above ground: 10.1972 m**
- **Time of flight: 2.88419 s**
- **Impact speed: 20 m/s**
- Source de vérification : Python 3.8 math: R = v²sin2θ/g, H = v²sin²θ/(2g), T = 2v·sinθ/g with g = 9.80665

### 15 m/s at 30° from a 10 m cliff

- Launch speed: 15 m/s
- Launch angle above horizontal: 30 °
- Launch height above ground: 10 m
- Gravity: Earth
- Unité des résultats: Metres and m/s
- **Horizontal range: 30.979 m**
- **Maximum height above ground: 12.868 m**
- **Time of flight: 2.38477 s**
- **Impact speed: 20.5215 m/s**
- **Impact angle below horizontal: 50.73 °**
- Source de vérification : Python 3.8 math: T = (v_y + √(v_y² + 2gh))/g = 2.3847661…, R = v_x·T, v_impact = √(v² + 2gh)

### Same throw on the Moon

- Launch speed: 20 m/s
- Launch angle above horizontal: 45 °
- Launch height above ground: 0 m
- Gravity: Moon
- Unité des résultats: Metres and m/s
- **Horizontal range: 246.914 m**
- **Time of flight: 17.4594 s**
- Source de vérification : Python 3.8 math: 400/1.62 and 2·20·sin45°/1.62 (NASA g_Moon = 1.62 m/s²)

### Horizontal launch from 20 m (θ = 0)

- Launch speed: 10 m/s
- Launch angle above horizontal: 0 °
- Launch height above ground: 20 m
- Gravity: Earth
- Unité des résultats: Metres and m/s
- **Horizontal range: 20.1962 m**
- **Maximum height above ground: 20 m**
- **Time of flight: 2.01962 s**
- **Impact angle below horizontal: 63.21 °**
- Source de vérification : Python 3.8 math: T = √(2h/g) = 2.0196200…, R = vT, tan φ = gT/v

### Straight up (θ = 90°): zero range

- Launch speed: 10 m/s
- Launch angle above horizontal: 90 °
- Launch height above ground: 0 m
- Gravity: Earth
- Unité des résultats: Metres and m/s
- **Horizontal range: 0 m**
- **Maximum height above ground: 5.09858 m**
- **Time of flight: 2.03943 s**
- Source de vérification : Python 3.8 math: H = v²/(2g) = 5.0985811, T = 2v/g = 2.0394324

### Linear drag, 0.145 kg ball, b = 0.01 kg/s

- Launch speed: 20 m/s
- Launch angle above horizontal: 45 °
- Launch height above ground: 0 m
- Gravity: Earth
- Unité des résultats: Metres and m/s
- Include air drag (linear model): oui
- Projectile mass: 0.145 kg
- Drag coefficient b (force = −b·v): 0.01 kg/s
- **Horizontal range: 35.9451 m**
- **Maximum height above ground: 9.56778 m**
- **Time of flight: 2.79449 s**
- Source de vérification : Python 3.8 floats: closed-form x(t), y(t) for F = −bv (Taylor §2.4), landing time by Newton iteration

## Questions

### What launch angle gives the maximum range?

On level ground with no air resistance, 45° gives the longest range, because R = v² sin 2θ ÷ g and sin 2θ peaks when 2θ = 90°. Launching from a height moves the best angle lower: from a 10 m cliff at 15 m/s it is about 36.2°, which reaches 31.4 m against 30.5 m at 45°. Air drag also lowers the best angle.

### How do you calculate the time of flight?

On level ground, T = 2v sin θ ÷ g, so a 20 m/s launch at 45° on Earth stays up 2.88 s. From a launch height h, take the positive root of h + v sin θ·t − ½gt² = 0, which is T = (v sin θ + √(v² sin² θ + 2gh)) ÷ g. The time to the highest point is v sin θ ÷ g, half the level-ground flight time.

### Why do 30° and 60° give the same range?

Complementary angles give the same range on level ground because sin 2θ = sin(180° − 2θ). At 20 m/s, launches at 30° and 60° both land 35.32 m away. The 60° shot climbs three times as high, 15.30 m against 5.10 m, and stays up 3.53 s instead of 2.04 s, which matters when the path has to clear an obstacle.

### How much does air resistance shorten the range?

It depends on the object's mass, size and speed. With the linear model here, a 0.145 kg ball thrown at 20 m/s and 45° with b = 0.01 kg/s lands 35.95 m away instead of 40.79 m, about 12% shorter, and peaks at 9.57 m instead of 10.20 m. Drag also makes the descent steeper than the climb, so the path is no longer a symmetric parabola.

### Quelle est la précision de « Projectile motion calculator » ?

La précision dépend de vos données et des hypothèses de la méthode. Le calcul décimal utilise 50 chiffres significatifs, mais les estimations, méthodes numériques et données sources peuvent être moins précises ; l’arrondi affiché ne supprime pas ces limites. Exemples résolus vérifiés à partir de sources indépendantes : 6. Par exemple, « 20 m/s at 45° on Earth » est vérifié à l’aide de Python 3.8 math: R = v²sin2θ/g, H = v²sin²θ/(2g), T = 2v·sinθ/g with g = 9.80665.

### D’où vient cette méthode ?

OpenStax University Physics Volume 1, §4.3 Projectile motion; Taylor, Classical Mechanics (2005), §2.2–2.3 Linear air resistance; NASA Planetary Fact Sheet — surface gravity.

## Sources

- [OpenStax University Physics Volume 1, §4.3 Projectile motion](https://openstax.org/books/university-physics-volume-1/pages/4-3-projectile-motion)
- Taylor, Classical Mechanics (2005), §2.2–2.3 Linear air resistance
- [NASA Planetary Fact Sheet — surface gravity](https://nssdc.gsfc.nasa.gov/planetary/factsheet/)
