Skip to content

Latest commit

 

History

History
94 lines (75 loc) · 5.02 KB

File metadata and controls

94 lines (75 loc) · 5.02 KB

NOTICE

This NOTICE file documents third-party material redistributed alongside the astrodyn workspace. It supplements the project's own license terms; it does not replace them.

astrodyn source code

The astrodyn workspace — every Rust crate published from this repository (astrodyn, astrodyn_*, the verification crates, and the build / xtask support code) — is dual-licensed under either of:

at your option. SPDX identifier: MIT OR Apache-2.0.

This dual license governs the Rust source, examples, tests, benchmarks, documentation, and CI scripts that originate in this repository.

NASA JEOD source mirror — verification reference only

The directory crates/astrodyn_verif_jeod/test_data/jeod_inputs/ contains a verbatim, unmodified mirror of selected source files from NASA's JSC Engineering Orbital Dynamics (JEOD) simulation tool. These files are redistributed solely as input fixtures for Tier 2 and Tier 3 cross-validation tests — they are read by our verification rigs to recover initial conditions, dt, mass properties, time-scale offsets, and gravity configuration that originated in JEOD's own verification simulations. The mirror is never compiled, linked, or executed; it is reference data.

Attribute Value
Upstream project JSC Engineering Orbital Dynamics (JEOD)
Government designation MSC-27344-1
Pinned version v5.4
Upstream source https://github.com/nasa/jeod
Upstream license NASA Open Source Agreement (NOSA), Version 1.3
Full license text https://github.com/nasa/jeod/blob/main/LICENSE
Originator National Aeronautics and Space Administration (NASA), JSC

The NOSA terms in the upstream LICENSE apply to every file under crates/astrodyn_verif_jeod/test_data/jeod_inputs/ exactly as they apply in an upstream JEOD checkout. Refer to the upstream LICENSE for the authoritative text of the agreement (definitions, grant of rights, attribution obligations, warranty disclaimer, and U.S. Government rights).

Composition with astrodyn's own license

The NOSA terms apply only to the verbatim mirrored files listed under crates/astrodyn_verif_jeod/test_data/jeod_inputs/. They do not extend to any other file in this repository. The astrodyn Rust source — including the verification rigs that read those fixtures (crates/astrodyn_verif_jeod/src/, crates/astrodyn_verif_jeod/tests/) — is covered exclusively by the MIT OR Apache-2.0 dual license declared above.

This is consistent with the NOSA definition of a "Larger Work": astrodyn combines the mirrored Subject Software (JEOD's verification input files) with software that is not governed by NOSA, and including the mirror does not by itself bring the rest of the repository under NOSA.

Independence: astrodyn is not vendored JEOD

astrodyn is an independent Rust reimplementation of the physics topics covered by JEOD; it does not vendor, fork, or wrap any of JEOD's C++ source. The only files redistributed from JEOD are the inputs to verification tests. Every line of physics code in the astrodyn_* crates is an original Rust implementation written against publicly documented algorithms, with JEOD's output used purely as a numerical reference for Tier 2 / Tier 3 comparison (see CLAUDE.md § "Computational Independence" and § "Tier 3 Cross-Validation").

NASA-derived reference CSVs

Tier 3 cross-validation also consumes per-scenario reference trajectories generated by running JEOD v5.4 simulations inside NASA's Trick simulation environment via the Docker workflow documented on the Tier3-Regeneration wiki page. The resulting CSVs (committed under crates/astrodyn_verif_jeod/test_data/, file pattern <label>_*.csv, plus the SPICE .bsp kernels used by some rigs) are derivative output of NASA-authored software (JEOD v5.4 + Trick). Attribution and licensing follow JEOD's NOSA terms above; the regeneration script trick/generate_references.sh and the surrounding Rust tooling are covered by astrodyn's MIT OR Apache-2.0 license.

Refresh procedure

The refresh recipe — including the cp-from-$JEOD_HOME command for upgrading the mirror after a JEOD version bump — lives in crates/astrodyn_verif_jeod/test_data/jeod_inputs/README.md. When the upstream pin moves to a new JEOD release, update both the "Pinned version" row above and the corresponding pin documented in CLAUDE.md § "Environment Setup".