Launcher on a Platform SimulatorLaunch from a Moving Cart
A cart rolls at constant speed and fires a ball straight up; the ball inherits the cart's horizontal velocity and lands right back in the moving cart.
Published: June 8, 2026
Objective
Demonstrate inherited horizontal velocity: a launcher riding a cart fires a ball straight up (90° in the cart's frame), and the ball keeps the cart's horizontal speed, so it lands back in the cart no matter how fast the cart rolls. Confirm that the ball's horizontal velocity equals the cart speed (vₓ = v_cart), that the horizontal offset between ball and cart stays zero throughout the flight, and that flight time and peak height depend only on the launch speed. The ball is a point mass with no air resistance.
Setup
- On a fresh canvas the third button reads Reset; if earlier arcs are on screen it reads Clear; press Clear to wipe them. Set the cart speed to 10 m/s and the launch speed to 20 m/s (the defaults), then press Start.
- Watch the ball arc up and over while the cart rolls beneath it. The Offset readout (the horizontal gap between ball and cart) stays at 0.00 m the whole flight; the dashed line shows the ball directly above the cart.
- Wait for the landing (≈ 4.08 s). The Cart distance reads ≈ 40.8 m and the ball drops straight back into the cart. Press Reset: the arc stays on the canvas as a faded grey ghost.
- Set the cart speed to 0 and press Start. The ball now rises and falls straight up and down at the launch point, with the cart standing still beneath it: the same vertical motion, just with no inherited horizontal velocity. The new arc overlays the moving-cart ghost so you can compare.
- Press Reset, raise the cart speed to 15 m/s (keep launch speed 20 m/s), and press Start. The arc stretches wider but the Offset still holds at 0.00: the cart always rolls exactly far enough to catch its own ball. Press Clear when you are done comparing.
Analytical Prediction
Firing straight up (θ = 90° in the cart's frame), the ball's ground-frame velocity components are vₓ = v_cart + v_launch·cos(90°) = v_cart and v_y = v_launch·sin(90°) = v_launch. The horizontal component is just the cart speed, so the ball and the cart move horizontally at the same rate and the offset between them stays zero. With v_cart = 10 m/s and v_launch = 20 m/s:
The peak height depends only on the launch speed:
During that flight the cart travels v_cart · T = 10 × 4.08 ≈ 40.8 m, and the ball, carried sideways at the same 10 m/s, travels exactly the same distance, landing back at the cart.
Results Analysis
Read the Offset (m) readout: it measures x_ball − x_cart and should hold at 0.00 from launch to landing, the direct proof that the ball keeps the cart's horizontal velocity. The Ball height (m) readout traces the same up-and-down profile regardless of cart speed; compare H against v_launch²/(2g) ≈ 20.4 m at the default launch speed. The Cart distance (m) readout at landing should equal v_cart · T ≈ 40.8 m, the same distance the ball covers horizontally. Set the cart speed to 0 and the picture reduces to a straight vertical throw, the same motion seen from the cart's own frame, where the ball simply goes up and comes back down. With Reset keeping each arc as a ghost, overlay several cart speeds: every arc returns to its cart, so the landing always sits at the moving cart.
Source of Error
The model assumes a point-mass ball with no air resistance, a frictionless level track, and a cart that holds a perfectly constant speed. Real launchers add recoil, real carts feel rolling friction, and air drag would pull the ball slightly behind the cart so it lands just short: the faster the cart, the larger that lag. Because the prediction and the simulation share the same idealisations (constant cart speed, no drag), the offset is exactly zero here and any residual is purely numerical, not physical. The inherited-velocity result is exact only in the absence of horizontal forces on the ball after launch.
Further Exploration
- Does a faster cart make the ball miss? Set the cart speed to 15 m/s with launch speed 20 m/s and watch the Offset readout through the flight. Why does it stay 0 no matter how fast the cart rolls?
- Hold the cart speed at 10 m/s and raise the launch speed from 20 to 25 m/s. The ball climbs higher and stays up longer. Does it still land back in the cart? What does this tell you about which slider controls the offset?
- Set the cart speed to 0 so the ball goes straight up and down. How is this the very same motion as a fast-cart run, just viewed from the cart's own moving frame rather than the ground?
- With Reset keeping each arc as a ghost, overlay runs at cart speeds 5, 10, and 15 m/s at a fixed launch speed. How does the width of the arc scale with cart speed, and where does each one land relative to its cart?