Hohmann Transfer Planner
Minimum-fuel orbit raise: fires the first burn only when phase angle and Δv budget align, then sequences coast and circularisation. Every burn proven on-chain.
| Category | Aerospace |
| Template ID | hohmann-transfer-planner |
| Definition | hohmann_transfer_planner v1.0 |
| States | 5 (initial: planning; terminal: arrived) |
| Transitions | 4 |
| Operators composed | HOHMANN_TRANSFER, ORBIT_VELOCITY, THRUST_TSIOLKOVSKY, KO42 |
| Audit clock | on · tick rate 1 |
What it's for
- Satellite orbit raising
- Constellation station-keeping
- Mission Δv budgeting
States
| State | Role |
|---|---|
planning | initial |
burn1_armed | intermediate |
transferring | intermediate |
circularising | intermediate |
arrived | terminal |
Transitions
| From | To | Operator | Fires when | Proof | Trigger / actions |
|---|---|---|---|---|---|
planning | burn1_armed | HOHMANN_TRANSFER | input.dv_available_ms >= input.dv_required_ms && input.phase_angle_err_deg < input.phase_tolerance_deg | required | — |
burn1_armed | transferring | THRUST_TSIOLKOVSKY | input.burn1_complete == true | required | — |
transferring | circularising | ORBIT_VELOCITY | input.at_apoapsis == true | required | — |
circularising | arrived | KO42 | input.target_orbit_achieved == true | required | — |
Operators it composes
Each transition fires a registry operator through the master equation (compute → prove → verify). This template composes:
HOHMANN_TRANSFERORBIT_VELOCITYTHRUST_TSIOLKOVSKYKO42
Browse the operators at /operators/; the building blocks a transition calls are the framework's protocols. KO42 is the always-on substrate operator; physics operators carry proof_required: true, so each fire runs the full compute → prove → verify path and lands a verifiable proof digest on your entangled state.
Deploy it
Inspect the full definition, then deploy it onto your state machine. Every fire is Zeqond-stamped onto your entangled state.
# 1. Inspect — the full definition (states, transitions, operators) as served
curl -sS https://zeqsdk.com/api/contracts/templates/hohmann-transfer-planner
# 2. Deploy onto your machine (auth: session; body carries your machine slug)
curl -sS -X POST https://zeqsdk.com/api/contracts/templates/hohmann-transfer-planner/deploy \
-H "Content-Type: application/json" \
-b "<your session cookie>" \
-d '{"slug":"<your-machine>"}'
# → 201 { "ok": true, "contract": { "id": "…", "currentState": "planning", … },
# "template_id": "hohmann-transfer-planner" }
The deploy path runs the same two-stage validation as the canonical create route (ContractDefinitionSchema.parse + validateContractDefinition against the live registry), writes the creation row onto your entangled state, and schedules the first fire. From there, drive transitions with POST /api/chain/<your-machine>/contracts/<id>/transition or let any triggers fire them autonomously.
Next
- Contract IDE — author, preview, and deploy contracts (this template is in the Templates tab).
- State Contracts — the full contract model: conditions, triggers, pre/post actions, lifecycle.
- Templates Library — every ready-to-deploy contract, grouped by category.
- Protocols — the named building blocks a transition composes.