Skip to content
    Engineering / Orbital Mechanics Keplerian State Engine

    Orbital Mechanics Calculator — Keplerian Elements, Period & Vis-Viva

    Convert classical orbital elements to position and velocity. Solve Kepler’s equation and compute orbital period, radius, and vis-viva speed for any elliptical orbit.

    ToolCalculatorExecutionIn browserCategoryEngineering
    ZorvLabs Orbital Mechanics Lab

    Keplerian orbital mechanics calculator

    Keplerian element propagation, inertial state-vector synthesis, reverse element recovery, and 2D/3D orbit visualization for elliptic two-body motion.
    Two-body Keplerian model
    Mean motion n
    0.00014586 rad/s
    n = √(μ/a³)
    Period
    11.966044 h
    T = 2π / n
    Periapsis altitude
    19.916 K km
    rp − body radius
    Apoapsis altitude
    20.447 K km
    ra − body radius
    2D Orbital Plane
    Perifocal orbit with current state and propagated state
    Orbital plane (PQW)r⃗current+Δt
    3D Inertial Orbit
    Isometric projection of the ECI orbit and state vectors
    3D orbit (ECI projected)current ECI+Δt ECI
    Radius vs True Anomaly
    r(ν) over the full elliptic arc
    0°360°r min 26.294 K kmr max 26.826 K km
    Speed vs True Anomaly
    vis-viva along the orbit
    v_peri 3.912893 km/sv_apo 3.835410 km/s
    Altitude vs True Anomaly
    r(ν) − body radius
    periapsis alt 19.916 K kmapoapsis alt 20.447 K km
    State Vector at Epoch
    ECI position and velocity
    r⃗ (km)
    [8123.7775, 20250.3213, 14696.7606]
    Inertial Cartesian position
    v⃗ (km/s)
    [−3.0941, −0.4485, 2.3497]
    Inertial Cartesian velocity
    Perifocal r⃗
    [14158.4257, 20200.8190, 9102.8219]
    Periapsis-aligned frame
    Perifocal v⃗
    [−2.5871, 0.4977, 2.9194]
    Periapsis-aligned frame
    Propagated State + Reverse Check
    Δt = 90.00 min
    r⃗(t+Δt)
    [−9322.3263, 11970.7341, 21654.1372]
    Propagated inertial position
    v⃗(t+Δt)
    [−3.0225, −2.4492, 0.0952]
    Propagated inertial velocity
    ν(t+Δt)
    63.800882°
    True anomaly
    Kepler residual
    <1e-11
    Forward + inverse consistency
    Benchmark Sheet
    Equations and inverse-recovery checks
    μ preset
    398.600 K
    Earth gravitational parameter
    n from JPL/ESA
    0.0001458568 rad/s
    Mean motion
    Period
    11.96604373 h
    Elliptic two-body period
    Recovered a
    26.560 K
    Inverse state-vector check
    Recovered e
    0.0100000000
    Inverse state-vector check
    Recovered i
    55.00000000°
    Inverse state-vector check
    Equations used in code comments
    • M = n(t − T₀), n = √(μ/a³)
    • M = E − e sin E (Kepler equation, Newton solved)
    • tan(ν/2) = √((1+e)/(1−e)) tan(E/2)
    • r = a(1−e²)/(1+e cos ν), p = a(1−e²)
    • r_PQW = [r cos ν, r sin ν, 0]
    • v_PQW = √(μ/p)[−sin ν, e+cos ν, 0]
    • r_IJK = R₃(Ω) R₁(i) R₃(ω) r_PQW
    • v_IJK = R₃(Ω) R₁(i) R₃(ω) v_PQW
    • state→elements recovery from h, e⃗, energy, node vector
    engineering methodology

    A clear path from inputs to results.

    Convert a satellite’s six classical orbital elements into its position and velocity in space, and read off the orbit’s size, shape, period, and speed. It solves Kepler’s equation and applies the vis-viva relation the same way flight-dynamics textbooks do, so you can check an orbit by hand or sanity-check mission-planning output.

    Step-by-step methodWorked exampleAssumptions explained

    How to use

    1. Pick the central body (Earth by default) to set the gravitational parameter μ; the engine uses μ = 398,600.4418 km³/s² for Earth.
    2. Enter the semi-major axis a and eccentricity e to fix the orbit’s size and shape. The period, mean motion, periapsis, and apoapsis update immediately.
    3. Set the three orientation angles — inclination i, right ascension of the ascending node Ω, and argument of periapsis ω — to place the orbital plane in the inertial frame.
    4. Enter the true anomaly ν to locate the body on the orbit. The engine solves Kepler’s equation to get eccentric and mean anomaly, then builds the state vector.
    5. Read the resulting position and velocity vectors, the orbital radius, and the vis-viva speed; propagate forward in time to watch the state evolve.

    The formula

    M=E−esin⁡E,r=a(1−e2)1+ecos⁡ν,v=μ(2r−1a),T=2πa3μM = E - e\sin E, \quad r = \frac{a(1-e^{2})}{1+e\cos\nu}, \quad v = \sqrt{\mu\left(\frac{2}{r}-\frac{1}{a}\right)}, \quad T = 2\pi\sqrt{\frac{a^{3}}{\mu}}

    Reference: Classical two-body orbital mechanics: Kepler’s equation and the vis-viva (energy) integral. Vallado, Fundamentals of Astrodynamics and Applications; Curtis, Orbital Mechanics for Engineering Students.

    Worked example

    Earth orbit, a = 26,560 km, e = 0.01, true anomaly 18°

    Inputs
    • Central body Earth (μ = 398,600.4418 km³/s²); semi-major axis a = 26,560 km; eccentricity e = 0.01; inclination 55°; RAAN 40°; argument of periapsis 25°; true anomaly ν = 18°.
    Calculation path
    1. 1

      The orbital period is T = 2π√(a³/μ) = 2π√(26,560³ / 398,600.4418) = 43,077.76 s, or 717.96 minutes (about 11.97 hours), and the mean motion is n = √(μ/a³) = 1.4586×10⁻⁴ rad/s. At a true anomaly of 18° the orbital radius is r = a(1−e²)/(1 + e·cosν) = 26,560×(1−0.0001)/(1 + 0.01×cos18°) = 26,307.15 km. The vis-viva relation then gives the speed v = √(μ(2/r − 1/a)) = √(398,600.4418×(2/26,307.15 − 1/26,560)) = 3.9110 km/s. For reference, speed peaks at periapsis (r = a(1−e) = 26,294.4 km, v = 3.9129 km/s) and is slowest at apoapsis (r = a(1+e) = 26,825.6 km, v = 3.8354 km/s).

    Result

    Period 43,077.76 s (717.96 min); orbital radius 26,307.15 km and speed 3.9110 km/s at ν = 18°; periapsis/apoapsis radii 26,294.4 / 26,825.6 km.

    Interpreting the result

    The semi-major axis alone sets the period and total energy — two orbits with the same a have the same period regardless of eccentricity. Eccentricity controls how much the radius and speed swing between periapsis and apoapsis; at e = 0.01 the orbit is nearly circular, so speed varies only about 2% over a revolution. The vis-viva speed is largest where the body is closest to the central body, which is why apoapsis is the cheapest place to raise an orbit.

    Assumptions & limitations

    • Pure two-body Keplerian motion: a single point-mass central body and a massless satellite, with no drag, oblateness (J2), third-body, or solar-radiation perturbations.
    • The gravitational parameter μ is taken from the selected central body and treated as exact; results scale directly with it.
    • Kepler’s equation is solved numerically (Newton iteration), so eccentric anomaly is accurate to machine precision for elliptical orbits (0 ≤ e < 1).
    • Angles follow the standard inertial-frame convention (inclination, RAAN, argument of periapsis, true anomaly); the state vector is expressed in that same frame.
    • The model is for closed elliptical orbits; parabolic and hyperbolic trajectories (e ≥ 1) are outside its scope.

    Frequently asked questions

    What is the vis-viva equation and why does it matter?

    Vis-viva, v = √(μ(2/r − 1/a)), gives orbital speed from just the current radius r and the semi-major axis a. It falls straight out of conservation of energy for the two-body problem and is the quickest way to find speed anywhere on an orbit. In the worked example it gives 3.9110 km/s at a radius of 26,307.15 km.

    What is the difference between true, eccentric, and mean anomaly?

    True anomaly ν is the actual angle from periapsis to the body. Mean anomaly M advances uniformly in time (M = n·t). Eccentric anomaly E is the geometric bridge between them, defined by Kepler’s equation M = E − e·sinE. The engine solves that transcendental equation with Newton iteration because it has no closed-form inverse.

    Does this account for J2 or atmospheric drag?

    No. This is a pure two-body Keplerian propagator, so it ignores Earth’s oblateness (J2), atmospheric drag, third-body gravity, and radiation pressure. Those perturbations slowly change the elements of real orbits; for mission-grade propagation over many revolutions you would add them, but the Keplerian state is the correct starting point and the right tool for understanding the geometry.

    How is the orbital period calculated?

    From Kepler’s third law, T = 2π√(a³/μ). It depends only on the semi-major axis and the central body’s gravitational parameter — not on eccentricity or orientation. For a = 26,560 km around Earth that is 43,077.76 s, or just under 12 hours.

    Why does speed change around the orbit?

    Angular momentum is conserved, so the body speeds up as it falls toward periapsis and slows as it climbs to apoapsis. The vis-viva term 2/r makes this explicit: smaller r means larger v. At e = 0.01 the swing is small (3.9129 km/s at periapsis vs 3.8354 km/s at apoapsis), but it grows with eccentricity.

    What units does the engine use?

    Distances are in kilometres, speeds in km/s, and the gravitational parameter in km³/s², following standard astrodynamics practice. Angles are entered in degrees and converted to radians internally. Keeping μ, a, and r in consistent units is what makes the vis-viva and period formulas come out right.

    Methodology last reviewed 2026-10-06. Results are informational and not financial or engineering advice — see our disclaimer.