Repository navigation
Home
From spacecraft tracking data to precise orbits, quality assessment, and reproducible results.
spod is an operational layer for Precise Orbit Determination (POD), built on top of Siderust.
It connects mission information, observations, supporting data, scientific models, quality assessment, and product generation into complete POD workflows.
mission information
+
supporting products
+
tracking observations
|
v
┌─────────────────────┐
│ │
│ spod │
│ │
│ operational POD │
│ │
└──────────┬──────────┘
|
┌─────────────┼─────────────┐
| | |
v v v
precise orbit quality provenanceThe objective is straightforward:
Provide the information required for orbit determination and receive an orbit that can be used, evaluated, and reproduced.
spod is designed around the complete workflow rather than around individual numerical algorithms.
spod and Siderust solve different parts of the same problem.
Specialized missions can still be valuable demonstrations of the architecture without becoming permanent core product functionality.
See Reference Use Cases.
Users should interact with meaningful POD workflows and outcomes rather than having to compose every scientific primitive manually.
Generic astrodynamics and orbit-determination functionality belongs in Siderust or another reusable scientific component.
A computation completing successfully does not automatically mean the resulting orbit is suitable for operational use.
A result should remain connected to the information and processing decisions that produced it.
Mission-specific applications can be supported as reference use cases without permanently expanding the core product model.
# spodMake Precise Orbit Determination operational, reproducible, and understandable.
From spacecraft tracking data to precise orbits, quality assessment, and reproducible results.
spod is an operational layer for Precise Orbit Determination (POD), built on top of [Siderust](https://github.com/Siderust/siderust).
It connects mission information, observations, supporting data, scientific models, quality assessment, and product generation into complete POD workflows.
mission information
+
supporting products
+
tracking observations
|
v
┌─────────────────────┐
│ │
│ spod │
│ │
│ operational POD │
│ │
└──────────┬──────────┘
|
┌─────────────┼─────────────┐
| | |
v v v
precise orbit quality provenance
The objective is straightforward:
Provide the information required for orbit determination and receive an orbit that can be used, evaluated, and reproduced.
spod is designed around the complete workflow rather than around individual numerical algorithms.
spod and Siderust solve different parts of the same problem.
| Siderust | spod |
|---|---|
| Astrodynamics | POD workflows |
| Propagation | Mission configuration |
| Force models | Processing orchestration |
| Observation models | Operational quality |
| Orbit estimation | Products and results |
| Frames and time | Provenance |
| Standard formats | System integration |
| Scientific building blocks | Operational outcomes |
Siderust provides the science.
spodturns that science into an operational POD product.
See spod and Siderust.
The central use case for spod is Precise Orbit Determination from onboard GNSS observations.
onboard GNSS observations
|
|
precise GNSS products
|
|
mission information
|
v
┌─────────────┐
│ │
│ spod │
│ │
└──────┬──────┘
|
┌──────────────┼──────────────┐
| | |
v v v
orbit quality provenance
A user should not need to manually assemble a collection of parsers, physical models, estimators, quality scripts, and output conventions around the scientific engine.
See Operational GNSS POD.
The product is best understood through the operational problems it is intended to solve.
| Use case | Outcome |
|---|---|
| Operational GNSS POD | Turn onboard GNSS observations into precise spacecraft orbits with explicit quality and provenance. |
| Independent Orbit Validation | Evaluate an orbit against independent information and produce reproducible evidence of its quality. |
| Mission Commissioning | Determine whether tracking, processing, and orbit quality are ready for operational use. |
| Historical Reprocessing | Regenerate historical orbit products consistently under a controlled processing definition. |
| Fleet and Constellation POD | Apply consistent POD workflows across many spacecraft without losing per-spacecraft traceability. |
| Processing Classes | Make trade-offs between timeliness, supporting-data availability, and product quality explicit. |
| Reference Use Cases | Explore specialized missions and extension patterns without turning every experiment into core functionality. |
spod is intended for teams that need orbit determination as an operational capability rather than as an isolated scientific calculation.
| Role | Main question |
|---|---|
| Satellite operator | Is there a usable orbit available? |
| Flight dynamics / POD engineer | Why does this solution have this quality? |
| Ground-segment integrator | Can POD behave as a predictable processing service? |
| Mission commissioning team | Is the tracking and POD chain ready for operations? |
| Constellation operator | Can the same workflow scale across the fleet? |
| Independent validator | How good is this orbit, and what evidence supports that conclusion? |
The value of spod is not simply producing coordinates.
A useful operational result combines three things:
POD result
|
┌───────────────┼───────────────┐
| | |
v v v
ORBIT QUALITY PROVENANCE
Where is the Can I use How was this
spacecraft? this result? result produced?
A precise representation of the spacecraft trajectory suitable for its intended downstream use.
Evidence that explains whether the solution is scientifically and operationally acceptable.
The information required to understand which observations, mission information, supporting data, and processing decisions produced the result.
Together, these turn an orbit calculation into an operational product.
spod is |
spod is not |
|---|---|
| An operational POD layer | Another general-purpose astrodynamics library |
| A collection of complete workflows | A mirror of the Siderust API |
| A way to make quality explicit | A black box that only emits an orbit |
| A reproducible processing system | A collection of mission-specific scripts |
| A platform that can support extensions | A home for every scientific experiment |
Specialized missions can still be valuable demonstrations of the architecture without becoming permanent core product functionality.
See Reference Use Cases.
Users should interact with meaningful POD workflows and outcomes rather than having to compose every scientific primitive manually.
Generic astrodynamics and orbit-determination functionality belongs in Siderust or another reusable scientific component.
A computation completing successfully does not automatically mean the resulting orbit is suitable for operational use.
A result should remain connected to the information and processing decisions that produced it.
Mission-specific applications can be supported as reference use cases without permanently expanding the core product model.
- Operational GNSS POD
- Independent Orbit Validation
- Mission Commissioning
- Historical Reprocessing
- Fleet and Constellation POD
- Processing Classes
Make Precise Orbit Determination operational, reproducible, and understandable.
[Source code](https://github.com/VPRamon/spod) · [Siderust](https://github.com/Siderust/siderust)