Commit Graph

13 Commits

Author SHA1 Message Date
ApsisRS contributors dbd2678b3e docs: record the parallelism decision, interfaces, and measurements
The choice of which loops to thread follows the cost of one item and the
size of the batch, and the note records both ends: the propagation that
gains five fold over a month and barely gains over a day, and the
visibility sweep that is slower in parallel below a few hundred satellites
because a single test costs a few nanoseconds. The interfaces say the same
thing, so a caller knows when to reach for them.
2026-09-30 18:43:14 +08:00
ApsisRS contributors d703704680 sgp4: propagate a track across several threads
A coverage run wants a satellite's state at every minute of a day, and each
state is independent, so the loop is a candidate for several cores and the
work is large enough to pay for the threads. The parallel form returns the
same values in the same order as the sequential one, including reporting a
decayed instant as None rather than stopping early.
2026-09-30 18:36:14 +08:00
ApsisRS contributors d5bb762020 orbit: mark the new error enums non exhaustive
EphemerisSamplingError and ManeuverApplicationError were missing the
attribute the other fifteen error kinds carry. Record the distinction
between an error enum, which is marked so a new category does not break a
caller, and a domain state enum, which is left exhaustive so the compiler
points at every match that a new variant needs.
2026-09-26 23:40:43 +08:00
ApsisRS contributors c9d2605385 docs: fix the broken intra doc links and check them in CI
Running rustdoc with -D warnings found nine broken links: a misspelt
WGS84, links to methods and constants that are private or in a crate that
is not a dependency, and three redundant explicit targets. Fix each and add
a documentation step to CI so a doc comment cannot drift away from the code
it describes without the build noticing.
2026-09-26 23:37:48 +08:00
ApsisRS contributors 7531ebacd6 workspace: remove dependencies that are declared but never used
Thirty four crates listed apsis-core or apsis-math without referencing it,
and apsis-kepler listed apsis-time and apsis-tle as well. Each was verified
removable by compiling with it taken out. An unused dependency still costs
build time and makes the dependency graph and the layer check report
relations that do not exist. The layer check now reports 104 edges, down
from 141.
2026-09-26 23:36:38 +08:00
ApsisRS contributors 604838c927 orbit: add maneuver models and wire the orbit facade 2026-09-26 23:17:16 +08:00
ApsisRS contributors f45f2ad713 orbit: add ephemeris sampling and Hermite interpolation 2026-09-26 23:11:00 +08:00
ApsisRS contributors 574971076e apsis-rs: add end to end network integration example 2026-09-26 16:09:27 +08:00
ApsisRS contributors da86f2f2ed orbit: add layer facade that combines propagation and elements 2026-09-26 14:21:55 +08:00
ApsisRS contributors 2662536b62 orbit: add Keplerian elements and two-body propagation 2026-09-26 14:20:09 +08:00
ApsisRS contributors 05f1a10d36 orbit: add SGP4 and SDP4 propagator 2026-09-26 14:16:23 +08:00
ApsisRS contributors 2bbae9e8d1 orbit: add TLE parser 2026-09-26 14:02:01 +08:00
ApsisRS contributors 539f29c7b5 workspace: initialize workspace with all layer crates 2026-09-26 12:53:13 +08:00