pub fn solve_spp_batch_parallel(
eph: &(dyn EphemerisSource + Sync),
epochs: &[SolveInputs],
with_geodetic: bool,
policy: SolvePolicy,
) -> Vec<Result<ReceiverSolution, SolvePolicyError>>Expand description
Solve a batch of independent SPP epochs against a shared ephemeris, fanning the independent per-epoch solves across a rayon thread pool.
Each epoch is solved by the same serial solve_with_policy kernel and the
indexed parallel collect preserves input order, so element i is
byte-for-byte identical to element i of solve_spp_batch_serial: the
epochs share only the immutable eph/policy, there is no cross-epoch state
and no reduction, and a single solve is unchanged. The work is embarrassingly
parallel (epochs are independent), so throughput scales with cores while
every value stays bit-exact. eph must be Sync to be shared across the
pool.