Learning Objectives
By the end of this section you will be able to:
- Read any parametric pair as the position of a moving particle and trace its path by hand.
- Switch between parametric form and Cartesian form when (and only when) it is possible — and explain why some curves cannot be written as a single graph.
- Compute the velocity vector and the scalar speed for any parametric curve.
- Recognise classic curves on sight — line, circle, ellipse, Lissajous, astroid, cycloid, helix — and know what each one parametrises.
- Derive the cycloid from the geometric story of a rolling wheel and explain why its cusps correspond to .
- Implement parametric curves in NumPy and verify the analytic derivative numerically with PyTorch autograd.
Why Single-Equation Curves Aren't Enough
Every function you have met so far has the same shape: . For each there is exactly one . The graph is a curve, but it is a very special kind of curve — the vertical-line test always passes.
The trouble: most real curves fail the vertical-line test. A circle has two -values above almost every . A loop has many. A spaceship's flight path can cross itself five times. None of these can be written as a single .
We need a different kind of description. Instead of asking "given , what is ?" we will ask "at time , where is the particle?"
The shift in mindset
This single change of perspective unlocks every curve you can imagine — circles, ellipses, spirals, knots, the cardioid your physics professor scribbled on the board, the path of a bouncing pendulum, the orbit of Mars. It is also exactly how computer graphics, robotics, and animation engines all represent curves internally.
Definition: Two Clocks, One Pen
A parametric representation of a curve in the plane is a pair of functions
We package the two outputs into one vector-valued function
and read it as: "at time , the particle is at position ." The variable is called the parameter. It does not have to be time — it can be an angle, an arc length, anything that monotonically labels positions along the curve — but the time intuition almost never fails you.
The two-clocks analogy
The smallest possible example: a line
Start at point and walk at velocity . Where are you after time ?
At you are at . At you are at . At you are at . The pen traces a straight line. That is a parametric line — and notice you got both an equation and a velocity for free, instead of just .
Reading a Parametric Curve
To read any parametric pair, build a small table. Pick a handful of values, compute both coordinates, plot the points, connect them. That is it. The table is the curve.
Example: a circle
Take
Build the table:
| t | cos t | sin t | (x, y) |
|---|---|---|---|
| 0 | 1.000 | 0.000 | (1.0, 0.0) |
| π/4 ≈ 0.785 | 0.707 | 0.707 | (0.71, 0.71) |
| π/2 ≈ 1.571 | 0.000 | 1.000 | (0.0, 1.0) |
| π ≈ 3.142 | −1.000 | 0.000 | (−1.0, 0.0) |
| 3π/2 ≈ 4.712 | 0.000 | −1.000 | (0.0, −1.0) |
| 2π ≈ 6.283 | 1.000 | 0.000 | (1.0, 0.0) |
Six points trace a hexagon-shaped circle. Six hundred points trace a circle indistinguishable from one drawn with a compass. That is what NumPy's linspace does for you.
The orientation is built in
Interactive 2D Explorer
Push the play button and watch the pen draw. Drag the slider yourself if you want to stop the pen mid-stroke and read the coordinates. Change the curve in the row of buttons, tweak , and see how the shape responds.
Interactive 2D Parametric Explorer
Cyan dashed = full curve · Cyan solid = trail traced so far · Amber dot = current point · Purple arrow = velocity .
A few things to try, in order:
- Pick Circle. Confirm the speed reads (the radius itself). Slide and watch both the size and the speed change in lock-step.
- Pick Ellipse. Now and the speed is no longer constant — slow at the long ends, fast at the short ends. The particle does not move uniformly even though does.
- Pick Lissajous. Try , — you get a line. Try — you get a circle. Try — you get a knot.
- Pick Astroid. Look at the four sharp points. The velocity vanishes there — the pen stops for an instant before changing direction. This is the same phenomenon that creates the cusps in the cycloid below.
Eliminating the Parameter
Sometimes we can squeeze the parameter out and recover a familiar Cartesian equation relating and directly. Two clean tactics:
Tactic 1 — solve for , then substitute
For the parametric line
solve the first equation: . Substitute into the second:
We recovered the Cartesian equation of the line. Notice we lost the velocity information — the Cartesian form tells us where the curve lives but not how it is being traced.
Tactic 2 — use a trig identity
For the parametric circle
the Pythagorean identity hands us the answer directly:
Square the coordinates, divide by , add. The parameter annihilates itself.
When you CANNOT eliminate t
The Velocity Vector
Here is where calculus walks in. The particle is at at time and at a moment later. The average velocity over seconds is
Take on both components independently. The result is the velocity vector:
That is the entire calculus of parametric curves in one line. Differentiate each coordinate separately. The vector you get has two properties:
- Direction: it is tangent to the curve at — the instantaneous heading of the particle.
- Magnitude: is the speed — how fast the particle is sweeping along its trail.
Worked check: circle of radius R
Take . Differentiate each component:
The magnitude:
Constant. The particle sweeps the circle at uniform speed . Slide the radius slider in the explorer above and watch the "speed" readout track it exactly.
A Gallery of Classic Curves
Every working scientist and engineer should recognise these on sight. They are the "periodic table" of 2D curves.
| Name | Parametric form | What it looks like | Famous use |
|---|---|---|---|
| Line | (x₀ + at, y₀ + bt) | Straight | Physics — uniform motion |
| Circle | (R cos t, R sin t) | Closed loop | Wheels, oscillators, complex roots |
| Ellipse | (a cos t, b sin t) | Squashed circle | Planetary orbits (Kepler) |
| Parabola | (t, t²) | U-shape | Projectile motion, optics |
| Lissajous | (sin(kt + φ), sin t) | Knot / pretzel | Oscilloscope phase comparison |
| Astroid | (cos³ t, sin³ t) | Four-pointed star | Envelope of a sliding ladder |
| Cycloid | (r(t − sin t), r(1 − cos t)) | Series of arches | Brachistochrone — fastest slide |
| Cardioid | (2 cos t − cos 2t, 2 sin t − sin 2t) | Heart shape | Microphone polar patterns |
| Helix (3D) | (R cos t, R sin t, ct) | Spiral staircase | DNA, springs, MRI trajectories |
Worked Example: The Cycloid by Hand
The cycloid is the path traced by a point on the rim of a wheel rolling along the ground. Its parametric form is
Take and trace one full arch by hand. Open the panel below, work through every row with pencil and paper, then unpause the rolling animation in the next subsection and watch the same numbers go by in real time.
▶ Click to expand the full hand calculation
Step 1. Start at . The wheel has not moved at all. The tracked point is at the bottom of the rim:
Step 2. At :
The point has crept slightly to the right and risen about a quarter of the wheel.
Step 3. At :
We are halfway up the side of the wheel — height 1, which equals the radius.
Step 4. At :
Top of the arch! Height 2 (the diameter), x-coordinate (half the circumference). The wheel has rolled exactly half a turn.
Step 5. At :
Symmetric mirror of Step 3. Coming down the other side.
Step 6. At the wheel has rolled exactly one full turn and the tracked point is back on the ground:
Distance travelled: — exactly the circumference of the wheel. That is what "rolling without slipping" means.
| t | x = t − sin t | y = 1 − cos t | Geometric meaning |
|---|---|---|---|
| 0 | 0 | 0 | Touching ground |
| π/4 | 0.0783 | 0.2929 | Starting to lift |
| π/2 | 0.5708 | 1.0000 | Quarter turn — height = R |
| π | 3.1416 | 2.0000 | Top of arch — height = 2R |
| 3π/2 | 5.7124 | 1.0000 | Mirror of π/2 |
| 2π | 6.2832 | 0 | Cusp — back on ground |
The big payoff. Differentiate each component:
At and both components vanish: . The particle is instantaneously stationary exactly at the moments it kisses the ground — and that is geometrically why those two points are sharp cusps, not smooth curves.
The speed:
This is zero at , maxes out at with . The point on the rim moves twice as fast as the wheel's centre at the top of the arch — try saying that out loud, it is surprising the first time you hear it.
The Cycloid as a Rolling Wheel
Watch the grey wheel roll. The amber dot is the point on the rim you just hand-computed. The cyan curve is the trail it leaves behind — the cycloid.
The Cycloid — A Rolling Wheel
The grey circle is a wheel of radius rolling along the ground. The amber dot is a fixed mark on the rim. The cyan curve is the path that mark traces — the cycloid. Notice the sharp cusps every time the dot touches the ground: there.
Two things to notice while it rolls:
- The cusps occur exactly when the amber dot touches the ground — i.e., when the spoke points straight down. That matches the calculation: at .
- At the top of each arch the dot is whizzing across the screen — that is the observation. A point at the top of a rolling wheel moves at twice the speed of the wheel's centre. This is why mudguards exist.
A historical brag
Into 3D: The Helix
Parametric thinking generalises to three dimensions for free. Just add a third clock:
The textbook example is the helix: a circle in two coordinates, plus steady linear rise in the third.
Drop the third coordinate (the "shadow" on the floor) and you see a circle. Drop the first two and you see a straight line. The helix is the union — a circle promoted into space by a constant lift.
Slide to zero and the helix collapses to a circle (the shadow). Crank up and the spiral stretches into a near-vertical staircase. The speed
is constant — the particle climbs the spiral at uniform speed. The reading on the right of the viewer confirms this in real time.
Why this curve is everywhere
Python Implementation
Time to make this concrete. We will plot the parametric circle in plain Python with NumPy, then read the velocity vector off the analytic derivative. The whole script is twenty lines.
Expected output when you run the script:
point at t0 = (1.0607, 1.0607) r'(t0) = (-1.0607, 1.0607) |r'(t0)| = 1.5000
Match? Good. Now the speed is exactly the radius, as the calculus predicts. Twenty lines of code, and you have the curve, the velocity, the speed, and a picture.
PyTorch & Autograd: Letting the Computer Differentiate
In the NumPy code above, we differentiated by hand and typed the result into the script. That works for elementary curves. For a complicated — say, the position of a robot end-effector after seven chained rotations — you do not want to differentiate by hand. You want PyTorch to do it for you.
Expected output:
r(t0) = (1.0607, 1.0607) r'(t0) = (-1.0607, 1.0607) |r'(t0)| = 1.5000 # expect 1.5000 autograd matches analytic derivative ✓
Real-World Applications
| Domain | Parametric curve at play |
|---|---|
| Computer graphics | Every spline (Bézier, B-spline, NURBS) is parametric. Type designers, CAD systems, animation rigs all use t ∈ [0, 1] interpolation. |
| Robotics | End-effector trajectories are r(t) = (x(t), y(t), z(t)). Velocity and acceleration matter for safe motion — both are derivatives of the parametric form. |
| Physics — orbits | Kepler's ellipses are most naturally written parametrically; eliminating t loses the time-of-flight information needed for spacecraft rendezvous. |
| Signal processing | Lissajous figures on an oscilloscope are the parametric trace (x(t), y(t)) of two phase-locked sine waves. Used to calibrate frequencies. |
| Machine learning | Diffusion models follow a parametric SDE x(t) from noise (t = 0) to data (t = 1). The 'curve' is in latent space but the calculus is the same. |
| Differential geometry | Geodesics on curved surfaces are parametric curves r(t) satisfying r''(t) = 0 (in the intrinsic sense). The whole subject is built on this. |
| Biology | Bacterial flagella, virus capsids, DNA, plant phyllotaxis — helices and spirals everywhere. All parametric. |
| Engineering | Cam profiles, gear teeth, roller-coaster tracks — designed parametrically because the velocity / acceleration constraints are first-class. |
Common Pitfalls
1. Same curve, different parametrisation
2. Direction of travel matters
3. Eliminating t can lose information
4. Cusps and self-intersections
Summary
A parametric representation describes a curve by giving the position of a moving point as a function of a parameter:
- The parameter is a clock; the curve is the trail the moving point leaves behind.
- The velocity vector is the derivative of each component. Its magnitude is the scalar speed ; its direction is tangent to the curve.
- Eliminating sometimes recovers — by solving for or by a trig identity — but loses orientation, speed, and parameter range.
- Cusps occur where (the pen pauses); self-intersections occur where two distinct give the same point.
- NumPy evaluates parametric curves vectorially in one call. PyTorch autograd computes for any curve you can write down — the formula you would have differentiated by hand emerges from the chain rule the engine applies behind the scenes.
- The classic curves — circle, ellipse, Lissajous, astroid, cycloid, helix — are the working vocabulary of physics, graphics, robotics, biology, and machine learning. You will meet every one of them again.
The takeaway. A curve is not a graph; it is the history of a moving point. Once you adopt that mindset, every curve in the universe becomes a small program — two or three clocks, ticked through their range, leaving a trail.