# Two-Body State Vector Propagator

Propagate a spacecraft/satellite state vector (r₀, v₀) to time t₀+Δt under two-body gravity via the universal-variable (f-and-g) method, and derive the classical orbital elements

> Canonical page: https://elysiatools.com/en/tools/two-body-state-vector-propagator

- **Category:** Science

- **Keywords:** two-body, state vector, orbit propagation, f-g functions, astrodynamics, orbital elements, universal variable, μ

## Overview

Given an initial position vector r₀, velocity vector v₀, a central body's gravitational parameter μ, and a time-of-flight Δt, this tool propagates the body to time t₀+Δt using the analytical universal-variable method (Stumpff c/s functions + Newton iteration on the universal Kepler equation), which works for ALL conic-section orbit types (circle / ellipse / parabola / hyperbola) without branching.

It then derives the full set of classical orbital elements from the state vector:
- Specific mechanical energy ε = v²/2 − μ/r and angular momentum h = |r×v|
- Semi-major axis a (for bound orbits), eccentricity e (via the eccentricity vector), orbital period T
- Inclination i, RAAN Ω, argument of periapsis ω, true anomaly θ
- Periapsis / apoapsis radii

Different from kepler-orbit-solver, which takes a mean anomaly M + eccentricity e and solves for a single eccentric anomaly. This tool takes a STATE VECTOR and propagates it through time — the core of orbit determination. Inputs are in SI units (m, m/s, s); μ values are NASA/IAU standard. Formulas follow Vallado and Curtis.

## Inputs

- **Central Body (μ)** (select)
- **Custom μ (m³/s²)** (number): e.g. 3.986e14
- **Distance unit** (select)
- **Initial position r₀ (x,y,z; m)** (text): e.g. 7000000,0,0
- **Initial velocity v₀ (vx,vy,vz; m/s)** (text): e.g. 0,7.5,1
- **Time of flight Δt (s)** (number): e.g. 3600

## When to use

- Propagate a satellite state vector forward or backward by a specified time of flight.
- Estimate orbital elements from position and velocity vectors.
- Analyze circular, elliptical, parabolic, or hyperbolic trajectories with one universal-variable method.

## How it works

- Enter the initial position vector r₀ and velocity vector v₀ as comma-separated x, y, z components.
- Select a central body and distance unit, or provide a custom gravitational parameter μ.
- Enter the time of flight Δt in seconds.
- The tool applies the universal-variable f-and-g method and returns the propagated state and derived orbital elements.

## Use cases

- Satellite orbit determination from position and velocity measurements.
- Preliminary analysis of spacecraft trajectories around planets or the Sun.
- Comparison of bound orbits and escape or flyby trajectories using their orbital elements.

## Frequently asked questions

### What inputs does the propagator require?

It requires an initial position vector, an initial velocity vector, a time of flight, and a central body or custom gravitational parameter.

### Which central bodies are available?

You can select the Sun, Earth, Moon, Mars, Jupiter, Venus, Mercury, or Saturn, or enter a custom μ.

### What units should I use?

Time of flight is entered in seconds. Position supports meters or kilometers, and the underlying calculations use SI units.

### What orbital elements are calculated?

The output can include energy, angular momentum, semi-major axis, eccentricity, period, inclination, RAAN, argument of periapsis, true anomaly, and periapsis or apoapsis radii.

### Can it propagate hyperbolic trajectories?

Yes. The universal-variable method supports circular, elliptical, parabolic, and hyperbolic conic-section trajectories.

## Related tools

- [Density Calculator (ρ = m/V)](https://elysiatools.com/en/tools/density-calculator): Compute density, mass, or volume from the other two, with specific gravity and a float/sink check
- [Free Fall Calculator (h = ½gt²)](https://elysiatools.com/en/tools/free-fall-calculator): Compute distance, time, or final velocity for free fall from rest, given any one plus gravity
- [Rent vs Buy Total Cost of Ownership Tutor — Mortgage, Tax, Insurance, Maintenance + NPV Break-Even and IRR](https://elysiatools.com/en/tools/rent-vs-buy-total-cost-of-ownership-mortgage-tax-insurance-maintenance-irr-tutor): Side-by-side monthly rent-vs-buy simulation: mortgage amortization, property tax, insurance, HOA and maintenance against rent plus renter insurance; the renter invests the down payment and monthly savings at an opportunity-cost rate. Outputs break-even year on net sale proceeds, per-year differential NPV, SALT-cap-aware after-tax cash flows, a differential IRR, and a ±20% tornado sensitivity chart.
- [Retirement Calculator](https://elysiatools.com/en/tools/retirement-calculator): Two-phase retirement model: an accumulation phase (current age to retirement, with monthly contributions and compound growth) and a withdrawal phase (retirement to life expectancy, nest egg grows at a conservative rate while inflation-adjusted withdrawals are taken out). Reports whether the nest egg lasts, real purchasing power, and any shortfall.
- [Savings Goal Calculator](https://elysiatools.com/en/tools/savings-calculator): Solve for the monthly contribution needed to reach a savings goal (with interest and compounding), or for the time required to reach the goal with a fixed monthly deposit. Optional inflation adjustment. Uses monthly compounding rollup.
- [Unit Price Calculator](https://elysiatools.com/en/tools/unit-price-calculator): Compare supermarket product prices by normalizing them to a common unit (per 100g, per liter, per piece, etc.). Enter products as 'name, price, quantity, unit' per line. Ranks from cheapest to most expensive per unit and shows savings vs the most expensive option.
- [AHU Coil Capacity Calculator (Cooling / Heating)](https://elysiatools.com/en/tools/ahu-capacity-calculator): Compute the total, sensible, and latent capacity of an air-handling-unit (AHU) coil from the entering/leaving air state and the dry-air mass flow ṁ_da. Total capacity Qt = ṁ_da·(h1 − h2); sensible capacity Qs = ṁ_da·cp_ma·(T1 − T2) with cp_ma ≈ 1.006 + 1.86·W \[kJ/(kg da·K)\]; latent capacity Ql = Qt − Qs; Sensible Heat Ratio SHR = Qs / Qt. Each state is described by dry-bulb T plus one humidity input (relative humidity φ, or humidity ratio W); W is derived from the Magnus saturation fit when RH is supplied, and enthalpy h = 1.006·T + W·(2501 + 1.86·T) \[kJ/kg da\]. Signed result — works for cooling or heating coils.
- [AI LLM Photo Retouch](https://elysiatools.com/en/tools/ai-image-style-sharp-optimizer): Use a vision LLM to recognize the image and automatically retouch it

## Samples

- [Web Image Processing Python Samples](https://elysiatools.com/en/samples/web-image-processing-python): Web Python image processing examples using PIL/Pillow including reading, saving, resizing, and format conversion
- [Vector Database Samples](https://elysiatools.com/en/samples/vector-database): Comprehensive vector database examples including Chroma, Pinecone, Weaviate, FAISS, and custom vector solutions for semantic search and RAG applications
- [Android Image Processing Java Samples](https://elysiatools.com/en/samples/android-image-processing-java): Android Java image processing examples including reading/saving images, scaling, and format conversion
- [Android Image Processing Kotlin Samples](https://elysiatools.com/en/samples/android-image-processing-kotlin): Android Kotlin image processing examples including reading/saving images, scaling, and format conversion
