Welcome back. In the previous lesson, you expressed the fixed-Earth orbital model as the first-order initial-value problem
That formulation is ready for an ODE solver, but its numerical values depend heavily on our chosen units. A low-Earth-orbit position might be thousands of kilometres, a velocity around , and an acceleration around . In SI units, those same quantities have very different magnitudes again.
This lesson develops a standard applied-mathematics move: nondimensionalisation. We will scale mass, length, position, velocity, and time so that the gravitational equation has a parameter-free canonical form. In doing so, we will derive the natural timescale of an orbit and see exactly how it relates to an orbital period.
Why rescale a model?
A dimensional model carries both physical structure and arbitrary human conventions. The Earth does not behave differently because we report distance in metres rather than kilometres; only the numerical representation has changed.
Nondimensionalisation separates those two things. We choose characteristic scales that are representative of the problem:
- a characteristic mass ,
- a characteristic length ,
- and a derived characteristic time .
We then express every variable as “how many characteristic units” it contains. The resulting variables have no physical dimensions and are ideally of order one.
This is useful for three reasons.
-
It exposes the true number of independent parameters. A one-centre gravitational problem with a sensibly chosen mass scale has no remaining physical parameter in its dimensionless equation.
-
It improves numerical interpretation. A dimensionless timestep of means “one hundredth of the local gravitational timescale,” regardless of whether the simulated system is an Earth satellite, an asteroid around the Sun, or a compact binary.
-
It makes solutions transferable. One dimensionless trajectory can represent many physical systems after rescaling, provided their models have the same form.
Nondimensionalisation does not itself make a numerical integrator more accurate. It makes magnitudes and error tolerances easier to reason about, while revealing what timestep means physically.
Introduction to Nondimensionalization
Watch Introduction to Nondimensionalization from Faculty of Khan for a compact general introduction to the method. It uses a damped oscillator rather than gravity, which makes the chain-rule mechanics of rescaling especially clear before we apply the same procedure to orbital motion.
Watch the motivation for reducing parameters, then the substitution to see how derivatives change under rescaling. Continue with choosing scales, focusing on the principle of setting dimensionless coefficient groups to one where possible. Finish with the conclusion, which notes that more than one valid scaling convention can exist.
Scaling the fixed-centre gravitational model
Write the gravitational equation with the source mass shown explicitly:
Here, is the mass of the central source, such as Earth, and the orbiting satellite’s mass has cancelled from the equation. Let
The units of the gravitational constant are
so the combination has units
Choose a characteristic mass and length . Define dimensionless position and time variables by
The bold vector is a position measured in units of , while is time measured in units of .
Apply the chain rule carefully. Since
we have
Therefore,
and
Substituting these expressions into the physical equation gives
Because
we obtain
At this point, all of the dimensional information is concentrated in one dimensionless coefficient:
The aim is to choose so that this coefficient becomes simple.
The characteristic gravitational timescale
Let the mass scale define
Choose the time scale
This is dimensionally a time because
Substituting this choice gives
Define the dimensionless source-mass ratio
The nondimensional gravitational equation is therefore
For the current fixed-Earth model, the natural choice is simply
Then , and the equation becomes
This is the canonical dimensionless point-mass gravity equation. There is no , no Earth mass, no kilometre, and no second in it. Those quantities have not been discarded; they are stored in the conversion factors and .
The same idea will scale naturally into the next module. Once both bodies move freely, the relative two-body equation contains
There, choosing
produces exactly the same parameter-free dimensionless relative-motion equation.
The timescale is not quite the orbital period
The scale
is often called a dynamical time or gravitational timescale. It is the time required for gravity to change motion substantially across a distance comparable with .
For a circular orbit of radius , the physical angular frequency follows from balancing centripetal and gravitational acceleration:
Hence,
The corresponding circular-orbit period is
So is not the full period. It is the period divided by .
This distinction becomes transparent in dimensionless form. Consider the unit-radius circular solution
Its norm is one, so the right-hand side of the dimensionless equation is simply . Also,
Thus it solves the equation exactly, and it returns to its starting position after dimensionless time
Converting back to dimensional time gives
There is another legitimate convention: use , rather than , as the unit of time. Then a circular orbit has dimensionless period one, but the equation becomes
Neither convention is more correct. The convention makes the force coefficient equal to one; the period convention makes a reference circular orbit have period one. The key discipline is to state which convention you use and apply it consistently.
Read the Earth-Sun units discussion in The Two-body Problem from LibreTexts. It gives a concrete example of how astronomical units and years replace unwieldy dimensional constants with a compact gravitational parameter.
On the page’s Earth-Sun example, begin at the paragraph beginning “While we have established a system of equations.” Read the scaling motivation, including the stated period relation and the magnitude of the dimensional gravitational parameter. Then continue from “However, if one uses astronomical scales” through the unit conversion discussion: read the astronomical-unit example, stopping before the paragraph beginning “Setting.” Focus on why the coefficient is 4\pi^2 when one year, rather than t_c, is selected as the time unit.
A concrete Earth-orbit scaling
Suppose the reference length is a low-Earth-orbit radius:
Use Earth’s gravitational parameter in compatible units:
Taking , the characteristic time is
The corresponding velocity scale is
That is precisely the circular speed at . The circular period is
A reference circular initial condition becomes unusually clean:
Here is dimensionless velocity, defined by
The state says: begin one characteristic length from the origin and move perpendicular to the radial direction with one characteristic velocity. No physical constants are needed by the dimensionless right-hand side.
The illustrative velocity from the previous lesson,
would correspond at this radius to a dimensionless tangential speed of approximately
That small difference from one is physically meaningful: it is close to, but not exactly, the circular reference state.
Dimensionless state space and code
The scaling should be applied to the entire state, not position alone:
In terms of dimensionless time, the first-order state equation is
For the natural single-source choice , set .
import numpy as np
def gravity_rhs_nondimensional(tau, state, beta=1.0):
"""
Dimensionless gravitational right-hand side.
state = [rho_x, rho_y, rho_z, u_x, u_y, u_z]
tau and state are dimensionless.
"""
rho = state[:3]
u = state[3:]
rho2 = np.dot(rho, rho)
if rho2 == 0.0:
raise ValueError("Point-mass gravity is undefined at rho = 0.")
acceleration = -beta * rho / (rho2 * np.sqrt(rho2))
return np.concatenate((u, acceleration))
Notice what has disappeared from the force function: there is no mu argument. The dimensional gravitational parameter was used once, during construction of the time scale
Conversion functions can make the boundary between physical inputs and dimensionless integration explicit:
def state_to_nondimensional(state, length_scale, time_scale):
nd_state = np.asarray(state, dtype=float).copy()
nd_state[:3] /= length_scale
nd_state[3:] *= time_scale / length_scale
return nd_state
def state_to_dimensional(nd_state, length_scale, time_scale):
state = np.asarray(nd_state, dtype=float).copy()
state[:3] *= length_scale
state[3:] *= length_scale / time_scale
return state
If an integrator advances by a dimensionless timestep , the associated physical timestep is
For the low-Earth-orbit scaling above:
corresponds to about
A useful implementation check is that the unit circular state
state0 = np.array([1.0, 0.0, 0.0, 0.0, 1.0, 0.0])
should produce the derivative
np.array([0.0, 1.0, 0.0, -1.0, 0.0, 0.0])
up to floating-point representation. The first three entries are the velocity, and the final three are the inward unit acceleration.
Choosing useful characteristic scales
There is no universal best . Its choice should reflect the investigation.
| Investigation | Sensible | Sensible |
|---|---|---|
| One Earth satellite | Reference orbital radius | Earth mass |
| Planet around the Sun | One astronomical unit or semi-major axis | Solar mass |
| Binary-star relative orbit | Typical stellar separation | Sum of stellar masses |
| Compact multi-body system | Characteristic system size | Total system mass |
A good scale makes typical dimensionless position and velocity components reasonably close to one. If ranges from to , the scaling has not matched the geometry of the problem very well, even though the mathematics is still valid.
Two practical cautions matter:
-
Maintain unit consistency before scaling. If is in kilometres, then must use kilometres and the corresponding time unit. Do not combine kilometres with .
-
Do not confuse scale choice with model choice. Rescaling cannot repair omitted physics such as atmospheric drag, oblateness, relativity, or perturbations from the Moon. It only rewrites the model already chosen.
Key takeaways
Nondimensionalisation rewrites the gravitational model using characteristic mass and length scales:
Choosing
gives the dimensionless equation
For a fixed central body, choose . The equation then has the universal parameter-free form
The characteristic time is a gravitational dynamical time. A circular orbit at radius has period
You now have a clean, scale-independent version of the orbital initial-value problem, along with a disciplined conversion boundary between physical inputs and numerical integration.
Next, we move from a fixed Earth to the genuine two-body problem: two masses exerting equal and opposite forces and both moving in an inertial frame.
Can't find a good explanation? Sign up and we'll make it for you
Sign up