Web Simulation 

 

 

 

Satellite Ephemeris (Keplerian Elements) 

In 3GPP non-terrestrial-network (NTN) signalling the ephemeris object describes a satellite's orbit explicitly with the six classical Keplerian elements, in a fixed Earth-Centered-Inertial (ECI) frame aligned with the J2000 vernal equinox — the same convention used by a TLE. Three elements fix the size and shape of the ellipse (semi_major_axis, eccentricity) and the orientation of the orbital plane and ellipse (inclination, longitude, periapsis); the sixth, anomaly, fixes where the satellite is on that ellipse at a stated epoch.

The simulator below draws a textured 3D Earth at the focus of the ellipse and renders each element as a coloured angle or marker you can change with the sliders. Run the animation to watch the satellite sweep the orbit while the Earth rotates underneath in the inertial frame.

Mathematical Foundation

An orbit is an ellipse with the Earth at one focus. Its mean motion (average angular rate) and period follow from the semi-major axis a and the gravitational parameter μ = 398 600.4418 km3/s2:

n = √(μ / a3)    T = 2π / n

The anomaly field is the mean anomaly M at the epoch. The mean anomaly advances linearly in time, M(t) = M0 + n·(t − tepoch), but it is not a physical angle. To find the true position we solve Kepler's transcendental equation for the eccentric anomaly E:

M = E − e·sin E

and convert to the true anomaly ν (the geometric angle from periapsis to the satellite) and radius r:

tan(ν/2) = √((1+e)/(1−e)) · tan(E/2)
r = a(1 − e·cos E)

ECI Reference Frame

All five orientation angles are measured in a fixed inertial frame: the +X axis points to the J2000 vernal equinox (♈), +Z is the Earth's spin axis (north), and the X–Y plane is the equator. longitude (Ω, the RAAN) swivels the line of nodes about +Z from the vernal-equinox direction; inclination (i) tilts the orbital plane up from the equator about that node line; periapsis (ω) rotates the ellipse within its plane from the ascending node to the point of closest approach.

Position from the Elements

The satellite is first placed in the orbital (perifocal) plane and then rotated into ECI by the standard 3-1-3 sequence Rz(Ω) Rx(i) Rz(ω):

xpqw = a(cos E − e),   ypqw = a√(1−e2) sin E
rECI = Rz(Ω) · Rx(i) · Rz(ω) · rpqw
Sign convention: the spec notes that an inclination between π/2 and π (a retrograde orbit) is encoded as −π/2 to −1 in the RRC ASN.1 representation. The slider here spans the full physical range 0–180°.

Simulation

The interactive simulator is below. Drag to orbit the camera, use the buttons at the top-left of the plot for preset views and zoom, and change each element to see how it reshapes or reorients the orbit.

Satellite Ephemeris — Keplerian Orbital Elements
Fixed ECI / J2000 inertial frame · Earth at the focus of the ellipse
a —
e —
i —
Ω —
ω —
M —   ν —
r —
alt —
T —
UTC —
Orbit ellipse
Line of nodes / Ω / ☊ Asc. node
Periapsis / ω
Satellite / position vector / ν
Spin axis (+Z) / inclination i
Equator (Earth)
Vernal equinox (+X)
Orbit shape & orientation
—
—
—
—
—
Position & time
—
UTC : :
Animation
—
Display
Orbit in TLE format (Two-Line Element set)
—
catalog# epoch YYDDD.DDDDDDDD drag terms (0) i Ω e (implied 0.) ω M n (rev/day) checksum
Epoch = current simulation time. Catalog #, int'l designator, drag terms and rev # are placeholders unless a TLE was imported (drag terms are shown but not used: pure two-body Keplerian orbit).
Ground track (2D map, Earth-fixed lat / lon)
—
ground track periapsis asc. node footprint (el ≥ 10°)

Usage

  1. Press Reset (next to Preset) at any time to return everything to the default state: tutorial orbit, epoch = current UTC time, animation stopped at default speed, all display / map options on, imported TLE cleared and the camera back to the isometric view.
  2. Pick a Preset (e.g. GEO or Molniya) to load a realistic element set, or start from the default elliptical tutorial orbit.
  3. Drag inside the 3D view to orbit the camera; use the small buttons at the top-left for zoom and for the Isometric / North-pole / Vernal-equinox / Face-on preset views.
  4. Move the a and e sliders to change the size and shape of the cyan ellipse; watch periapsis and apoapsis move.
  5. Move i, Ω and ω to reorient the plane and ellipse; the matching coloured arcs show each angle relative to the equator, the vernal equinox, and the line of nodes.
  6. Move the M (anomaly) slider to place the satellite on the orbit at the epoch; the yellow position vector and the ν arc update.
  7. Press Run to animate. The satellite moves faster near periapsis and slower near apoapsis, and the Earth rotates underneath at sidereal rate for the running UTC clock (epoch + elapsed). Use Step to advance one frame at a time (Step also pauses a running animation).
  8. The TLE panel at the bottom shows the same orbit as a standard NORAD Two-Line Element set (epoch = current simulation time, angles in degrees, mean motion in rev/day, checksum digit at column 69). Fields are colour-coded to match the 3D view; press Copy to paste it into other orbit tools. Catalog number, designator, drag terms and rev number are placeholders.
  9. The ground track panel at the very bottom projects the orbit onto an Earth-fixed latitude/longitude map: the satellite's ECI position is rotated by the Greenwich sidereal angle at each instant, so successive revolutions shift westward as the Earth turns underneath. The satellite icon marks the current sub-satellite point (pointing along the direction of travel), and the green outline is the area that sees it above 10° elevation. The track is always drawn as one continuous line from the left edge of the map to the right edge. With Earth rotation on (default) it is the real ground track: it is followed backward and forward in time from now until it leaves the map on each side, so it may span more or less than one revolution and successive passes appear shifted westward (for GEO it collapses to a small figure-8 / point). With Earth rotation off, the Earth is frozen at the current instant and one full revolution is projected onto it, giving a closed trace that shows the shape of the orbit itself.
  10. Press Import in the TLE panel to load a real satellite from a TLE file (two-line or three-line format with a name line, e.g. a CelesTrak .txt download). The elements i, Ω, e, ω, M and the epoch are taken directly from line 2 / line 1, and the semi-major axis is derived from the mean motion n (rev/day) via a = (μ/n2)1/3. If the file holds several satellites a drop-down appears next to the button to choose one. The imported catalog number, designator, drag terms and rev number are kept in the TLE panel until you pick a preset or move an element slider. Note that a TLE is a mean-element set meant for the SGP4 model; propagating it with pure Kepler motion (as here) is accurate near the epoch but drifts over hours to days.
  11. The epoch starts at the current UTC time. Type it (YYYY-MM-DD, YYYY-MM-DDTHH:MM[:SS], optional Z or ±HH:MM offset), open the Pick calendar, choose a day and UTC time and press Apply (Cancel, Esc or a click outside closes it without changes), or press Now. Changing the epoch moves the clock: the mean anomaly is propagated to the new time (M ← M + n·Δt, exactly as Run / Step do), so the satellite stays on its real trajectory — e.g. import a TLE, then enter any UTC time to see where the satellite is at that moment. To place the satellite elsewhere on the orbit, use the M slider instead. The allowed range is 1957-01-01 to 2056-12-31 because a TLE stores only a two-digit year; an invalid or out-of-range entry turns the box red and is not applied, and the animation stops if it reaches either end of the range.

Parameters

Field (ephemeris.*)

Symbol

Range

Role in the visualization

semi_major_axis

a

meters (slider in km)

Size of the orbit; sets period T and altitude.

eccentricity

e

0 – 0.99

Shape, from circle (0) to a long ellipse; separates periapsis and apoapsis.

inclination

i

0 – π rad

Tilt of the plane from the equator, hinged on the line of nodes.

longitude

Ω

0 – 2π rad

RAAN: swivel of the ascending node from the vernal equinox.

periapsis

ω

0 – 2π rad

Argument of periapsis: rotates the ellipse within its plane.

anomaly

M

0 – 2π rad

Mean anomaly at the epoch; drives the satellite's position via Kepler's equation.

epoch

t0

ISO-8601 UTC, 1957–2056

Reference time for anomaly; sets the Earth's sidereal orientation. Defaults to the current UTC time; limited to the years a TLE's two-digit year can represent.

Ephemeris in System Information (SIB19 / SIB31)

In a real non-terrestrial network the satellite does not negotiate its orbit with each device — it broadcasts it. The ephemeris is carried in a System Information Block so that every UE in the cell can predict the satellite's position and velocity and pre-compensate for the large, fast-changing propagation delay (timing advance) and Doppler shift of the service link before it even transmits.

  • NR NTN carries it in SIB19 (the NTN-Config IE → ephemerisInfo), per 3GPP TS 38.331.
  • LTE / IoT-NTN carries the serving-satellite ephemeris in SIB31 (with neighbour-satellite ephemeris in SIB32), per 3GPP TS 36.331.

Two equivalent representations

The ephemerisInfo field is an ASN.1 CHOICE between two ways of describing the same orbit (Release 17):

Format

Fields broadcast

Character

State vectors (positionVelocity)

Position X, Y, Z + velocity VX, VY, VZ in an Earth-centred frame

A snapshot at the epoch; simple, but only accurate for a short window around it.

Orbital elements (orbital)

The six Keplerian elements a, e, i, Ω, ω, M

The form shown in this simulator; compact and valid over a longer span.

Field mapping to this simulator

The orbital-element form uses exactly the six elements (plus the epoch) modelled here:

SIB field (orbital format)

This simulator

Symbol

Meaning

semiMajorAxis

semi_major_axis

a

Size of the orbit.

eccentricity

eccentricity

e

Shape of the ellipse.

inclination

inclination

i

Tilt of the orbital plane.

longitude

longitude

Ω

Longitude / RAAN of the ascending node.

periapsis

periapsis

ω

Argument of periapsis.

meanAnomaly

anomaly

M

Mean anomaly at the epoch.

epochTime

epoch

t0

Reference time the anomaly is valid for (signalled as an SFN / sub-frame boundary).

In the spec: each element is sent as a scaled integer with fine quantization (so a arrives in metres and the angles cover the same 0–2π / 0–π ranges used here). The UE never uses the ephemeris alone — SIB19/SIB31 also carry the epochTime, a validity duration (ntn-UlSyncValidityDuration), and common timing parameters such as the scheduling offset Koffset and the common timing advance, which together let the device keep uplink sync as the satellite races overhead.

Limitations

  • Two-body Keplerian model only. No J2 oblateness, drag, third-body, or solar-radiation perturbations — so Ω and ω do not precess over time as a real LEO orbit would.
  • Animation is a time-lapse. The relative speed (fast at periapsis, slow at apoapsis) is physical, but wall-clock playback is scaled by the speed control, not real time.
  • Earth orientation is approximate. The globe is spun by Greenwich Mean Sidereal Time for visual context; precession, nutation and polar motion are not modelled, and the texture is illustrative.
  • ECI, not ECEF. Positions are inertial; ground tracks/longitudes are not computed. The displayed altitude assumes a spherical Earth of radius 6378 km.