Octant

Orekit in your browser — nothing leaves the tab
OCTANT · preliminary analysis
T+00:00:00 of 00:00:00

Central body —

Changing the central body rewrites the scenario, it does not restyle it. Orbits are held as elements about a body, so the same numbers mean a different trajectory around a different one: altitude and inclination are reset to the new body’s defaults, every object is rebuilt, and the 3D scene is constructed afresh because Cesium fixes its ellipsoid when the scene is made. What it is not is a camera control — to look at another body while the scenario stays as it is, use the camera dropdown above the map, which can follow a spacecraft or any planet without touching the physics. A mission that genuinely changes central body along the way does it per phase, in the phase editor, not here: that is how the Grand Tour crosses from the Sun to Jupiter and back.

Change the central body to ?

This rewrites the scenario, it does not restyle it. Orbits are held as elements about a body, so the same numbers mean a different trajectory around a different one: altitude and inclination are reset to ’s defaults, every object is rebuilt, and the 3D scene is constructed afresh because Cesium fixes its ellipsoid when the scene is made.

What this is not is a camera control. To look at another body while the scenario stays exactly as it is, use the camera dropdown above the map — it can follow a spacecraft or any planet without touching the physics. And a mission that genuinely changes central body along the way does it per phase, in the phase editor: that is how the Grand Tour crosses from the Sun to Jupiter and back.

Open a scenario

Each one replaces the whole scenario and stays editable afterwards.

A scenario you saved earlier — the same versioned .json the Save button writes, with every object, station, phase and vehicle in it.

Vehicle for —

Replaces this object's vehicle. Mass, drag area and the cameras come with it — a vehicle is the hardware, so attaching one is what makes power, access and finite burns available.

Orbit for —

Replaces this object's elements only. Everything else in the scenario stays as it is. Picking an orbit at another body takes the scenario there. A real spacecraft whose hardware we also model brings that too, unless a vehicle is already attached — in which case yours is kept.

Or a real spacecraft

Or a near-Earth object

Add a spacecraft

Starts in a circular orbit you can edit in the tree: altitude, eccentricity, inclination, and a phase chain if you want one.

Fetched from CelesTrak by your browser, cached 2 h per their usage policy. Free — it is their data, not ours to sell.
Leave the coordinates blank and it lands at 0°, 0° — or close this and click the globe to drop one where you like.

What Octant is doing

Every number here is computed in this tab by Orekit, the astrodynamics library used across European space engineering, compiled to JavaScript. There is no server and nothing is sent anywhere — your orbits never leave the machine.

Objects

The things that move. Either a designed orbit, set with the sliders, or a real satellite loaded from a TLE and propagated with SGP4. The controls under “Editing” act on whichever row is highlighted.

Targets

A fixed place on the surface — a ground station, a rover, a site. A target changes nothing about any orbit. It asks one question: when can the objects above see this place? Octant reports the passes and the longest gap with nothing at all in view, merged across every visible object, which is the number a relay or a ground segment is actually sized by.

Swath and access are different things

The swath is what a sensor sees: a nadir-pointing cone, drawn as a corridor along the ground track. Access is when a radio link is possible: the spacecraft above a target's horizon, by default higher than 10°. A sensor footprint and a relay pass are not the same event.

Time

The timeline sets one window that every object is drawn over. The start instant is real UTC and everything follows from it — the Sun, the terminator, eclipse, and where the ground track falls.

What it does not model

Atmospheric drag, solar radiation pressure, third-body attraction, manoeuvres and attitude. Against a full numerical force model the analytical solution drifts roughly 3.3 km over 24 hours in low Earth orbit.

What has and has not been checked, against GMAT on four real satellites, is on the validation page. What Octant is and who made it is on the about page.

Licence · Notices
Rendered with CesiumJS (Apache-2.0). Imagery: Natural Earth II (public domain), bundled offline. Detailed layers from NASA EOSDIS GIBS — no API key, public domain. Planetary positions from the JPL DE440 ephemeris (NASA/JPL-Caltech, public domain), fetched only when a scenario needs another body.

Vehicle

Bus

Parts

No parts yet. Add one from the library, or add a custom part and type its numbers.

Propellant

3D model

Replaces the boxes in the 3D scene with your own mesh. Visual only — mass, drag area and everything else on this page still come from the bus and parts, whether or not a mesh is attached. Only self-contained .glb files: a .gltf usually references separate texture and buffer files this editor has no way to collect and embed alongside it.
Drag to rotate, scroll to zoom. Parts are drawn at their real dimensions — a metre of panel on a ten-centimetre bus looks absurd because it is. A mesh replaces them in the 3D scene but not here — a dashed cube stands in for it, sized by the Scale field below, so the number is not silent even though the shape is not real.
Mass
—
Panel area
—
Drag area
—
CdA/m
—
Thrust
—
Δv
—
Drag area assumes the bus face-on and the panels edge-on — the usual sun-pointing case, not a tumbling one, which would differ by a factor of several. Panels contribute a 10% edge-on allowance.

Time scales

Every scale for one instant, from Orekit reading the leap-second table this page already loads. TAI − UTC is a table, not the constant 37 s it happens to be today: it was 35 in 2015, and that is the whole reason to ask rather than subtract.

UTC
—
TAI
—
TT
—
UT1
—
GPS
—
TAI − UTC
—
UT1 − UTC
—
Julian date
—
Modified JD
—
GMST
—
UT1 needs Earth-orientation data, which is baked for a finite span — outside it the value is extrapolated rather than measured.

State format

One state, every representation. Enter position and velocity in the inertial frame, in metres and metres per second.

µ decides what these six numbers mean, so the body is the converter’s own choice rather than the scenario’s — a question you brought with you should not depend on what happens to be on the globe.

Equinoctial and circular are here on purpose. Keplerian elements are singular at zero eccentricity — the argument of perigee means nothing when there is no perigee — and at zero inclination, where there is no node. Those are not edge cases: GEO is one. Orekit carries all four types, so offering only Keplerian would be a choice to be less correct than the library underneath.

Reference frame

Position and velocity from one frame to another, at an instant. The instant is not optional: every one of these conversions is a function of time — ITRF differs from EME2000 by the whole rotation of the Earth.

x
—
y
—
z
—
vx
—
vy
—
vz
—
|r|
—
TEME is the SGP4 frame and is built on IERS 1996 conventions, not 2010 — asking for it under the modern conventions returns something that is not the frame a TLE meant. ITRF and TOD need Earth-orientation data, which is baked for a finite span; outside it the answer is extrapolated rather than measured.

Component

Asset library

The parts everything is built from. Components are the pieces; vehicles are assemblies of them. Anything here can be picked in the vehicle editor, and anything you build there can be saved back into it.

Every value is a stated figure with a source, not a measurement of a specific spacecraft — enough to size a mission, not enough to build one.

OCTANT
Loading the astrodynamics engine…