Skip to content
Vallés Puig, Ramon edited this page Oct 4, 2026 · 7 revisions

spod

Operational Precise Orbit Determination

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.


From observations to an operational result

                        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

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

Specialized missions can still be valuable demonstrations of the architecture without becoming permanent core product functionality.

See Reference Use Cases.


Product principles

Workflow over toolkit

Users should interact with meaningful POD workflows and outcomes rather than having to compose every scientific primitive manually.

Science stays reusable

Generic astrodynamics and orbit-determination functionality belongs in Siderust or another reusable scientific component.

Quality is part of the result

A computation completing successfully does not automatically mean the resulting orbit is suitable for operational use.

Reproducibility is part of correctness

A result should remain connected to the information and processing decisions that produced it.

Specialized missions should not distort the core

Mission-specific applications can be supported as reference use cases without permanently expanding the core product model.


Explore the wiki

Product

Core use cases

Extensions


Project

Make Precise Orbit Determination operational, reproducible, and understandable.

Source code · Siderust

# spod

Operational Precise Orbit Determination

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.


From observations to an operational result

                        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

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. spod turns that science into an operational POD product.

See spod and Siderust.


The primary workflow

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.


Use cases

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.

Who is it for?

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?

More than an orbit

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?

Orbit

A precise representation of the spacecraft trajectory suitable for its intended downstream use.

Quality

Evidence that explains whether the solution is scientifically and operationally acceptable.

Provenance

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.


What spod is — and is not

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.


Product principles

Workflow over toolkit

Users should interact with meaningful POD workflows and outcomes rather than having to compose every scientific primitive manually.

Science stays reusable

Generic astrodynamics and orbit-determination functionality belongs in Siderust or another reusable scientific component.

Quality is part of the result

A computation completing successfully does not automatically mean the resulting orbit is suitable for operational use.

Reproducibility is part of correctness

A result should remain connected to the information and processing decisions that produced it.

Specialized missions should not distort the core

Mission-specific applications can be supported as reference use cases without permanently expanding the core product model.


Explore the wiki

Product

Core use cases

Extensions


Project

Make Precise Orbit Determination operational, reproducible, and understandable.

[Source code](https://github.com/VPRamon/spod) · [Siderust](https://github.com/Siderust/siderust)

Clone this wiki locally