Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions docs/nyxspace/showcase/03_geo_analysis/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ GEO birds have specific station keeping requirements. In this preliminary study,

### Objective

As documented in the [drift analysis code](https://github.com/nyx-space/nyx/blob/master/examples/03_geo_analysis/drift.rs), we're trying to gain insight into how quickly a vehicle would drift outside of an arbitrary box. The spacecraft is placed arbitrarily to be in a GEO orbit centered on Colorado, USA. We then propagate the original spacecraft position in high fidelity with the following dynamics:
As documented in the [drift analysis code](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/03_geo_analysis/drift.rs), we're trying to gain insight into how quickly a vehicle would drift outside of an arbitrary box. The spacecraft is placed arbitrarily to be in a GEO orbit centered on Colorado, USA. We then propagate the original spacecraft position in high fidelity with the following dynamics:

- Earth gravity field of 21x21, JGM3 model -- we don't need a super high field here because the spacecraft is ~42 Mm above the Earth
- Solar radiation pressure, accounting for the shadow and penumbra cast by the Earth and the Moon at each time step
- Point mass gravity of the Moon and Sun (in addition to the Earth, the central body)

To run the [drift analysis](https://github.com/nyx-space/nyx/blob/master/examples/03_geo_analysis/drift.rs) example, just execute:
To run the [drift analysis](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/03_geo_analysis/drift.rs) example, just execute:
```sh
RUST_LOG=info cargo run --example 03_geo_drift --release
```
Expand Down Expand Up @@ -82,7 +82,7 @@ Most GEO spacecraft are deployed on a geostationary transfer orbit (GTO) and mus

As of version 2.0.0-rc, Nyx ships with the closed loop Ruggerio guidance law. This is a locally optimal law for low thrust propulsion. It allows targeting of all orbital elements _apart_ from the phasing (e.g. the true anomaly). As such, when applied to orbit raising, it is useful for reaching the vicinity of a desired orbital slot and maintaining control of the shape and inclination of an orbit, but more complicated methods are recommended to reach to exact ITU-allocated slot. **A more optimal guidance law for this problem is the Q-Law**, whose implementation in Nyx has been on the backburner for years. The Q-law guidance law is as optimal as a global trajectory optimizer where the phasing is left free, but runs extremely fast.

To run the [orbit raise analysis](https://github.com/nyx-space/nyx/blob/master/examples/03_geo_analysis/raise.rs) example, just execute:
To run the [orbit raise analysis](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/03_geo_analysis/raise.rs) example, just execute:
```sh
RUST_LOG=info cargo run --example 03_geo_raise --release
```
Expand All @@ -107,7 +107,7 @@ During the orbit raise, a low thrust vehicle will most likely not thrust when it

As previously mentioned, station keeping is required for a GEO slot. In the third program, we look at the use of the Monte Carlo framework in Nyx which uses the multivariate normal distribution structure. We distribute the SMA of 25 spacecraft, propagate them for a two week period in high fidelity, and ensure that they Ruggiero guidance law is enabled and tight around the GEO box. **The Monte Carlo capabilities of Nyx are better demonstrated in the [02 JWST](../02_jwst_covar_monte_carlo/index.md) example.**

To run the [station keeping Monte Carlo](https://github.com/nyx-space/nyx/blob/master/examples/03_geo_analysis/stationkeeping.rs) example, just execute:
To run the [station keeping Monte Carlo](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/03_geo_analysis/stationkeeping.rs) example, just execute:
```sh
RUST_LOG=info cargo run --example 03_geo_sk --release
```
Expand Down
4 changes: 2 additions & 2 deletions docs/nyxspace/showcase/04_lro_od/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,13 +96,13 @@ shape: (9, 2)

## Ground network

For this example, we simulate measurements from three of the Deep Space Network ground stations: Canberra, Australia; Madrid, Spain; and Goldstone, CA, USA. Nyx allows configuration of ground stations using a YAML input file, cf. [`dsn-network`](https://github.com/nyx-space/nyx/blob/master/examples/04_lro_od/dsn-network.yaml). These are configured as unbiased white noise ground stations where the standard deviation of the white noise is taken directly from the JPL DESCANSO series. The stochastic modeling in Nyx supports first order Gauss Markov processes and biased white noise.
For this example, we simulate measurements from three of the Deep Space Network ground stations: Canberra, Australia; Madrid, Spain; and Goldstone, CA, USA. Nyx allows configuration of ground stations using a YAML input file, cf. [`dsn-network`](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/04_lro_od/dsn-network.yaml). These are configured as unbiased white noise ground stations where the standard deviation of the white noise is taken directly from the JPL DESCANSO series. The stochastic modeling in Nyx supports first order Gauss Markov processes and biased white noise.

In this simulation, we are generating light-time corrected two-way range and Doppler measurements. Nyx supports all of the aberration computations provided by ANISE (and validated against SPICE).

## Tracking schedule

To prepare for a mission, flight dynamics engineers must simulate a tracking schedule and determine, through trial and error, how much tracking is required throughout the different orbital regimes of the mission. Unlike most orbit determination software, Nyx provides a "schedule generator" for simulation. Refer to [`tracking-cfg.yaml`](https://github.com/nyx-space/nyx/blob/master/examples/04_lro_od/tracking-cfg.yaml) for the tracking configuration. In short, this feature allows engineers to configure the following key inputs to a schedule:
To prepare for a mission, flight dynamics engineers must simulate a tracking schedule and determine, through trial and error, how much tracking is required throughout the different orbital regimes of the mission. Unlike most orbit determination software, Nyx provides a "schedule generator" for simulation. Refer to [`tracking-cfg.yaml`](https://github.com/nyx-space/nyx/blob/master/nyx-core/examples/04_lro_od/tracking-cfg.yaml) for the tracking configuration. In short, this feature allows engineers to configure the following key inputs to a schedule:

- how to deal with overlapping measurements: greedy, eager, or overlap.
- Greedy: when two stations overlap, the one which was previously tracking will continue until the vehicle is no longer in sight
Expand Down
8 changes: 4 additions & 4 deletions docs/nyxspace/showcase/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This section showcases some of the problems that you can solve with the whole su

[:octicons-arrow-right-24: Read more](./01_orbit_prop/index.md)

[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/examples/01_orbit_prop)
[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/nyx-core/examples/01_orbit_prop)

- :material-telescope:{ .lg .middle } __James Webb Space Telescope Monte Carlo Simulation__

Expand All @@ -26,7 +26,7 @@ This section showcases some of the problems that you can solve with the whole su

[:octicons-arrow-right-24: Read more](./02_jwst_covar_monte_carlo/index.md)

[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/examples/02_jwst_covar_monte_carlo)
[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/nyx-core/examples/02_jwst_covar_monte_carlo)

- :material-satellite-variant:{ .lg .middle } __GEO Low Thrust Orbit Raising & StationKeeping__

Expand All @@ -38,7 +38,7 @@ This section showcases some of the problems that you can solve with the whole su

[:octicons-arrow-right-24: Read more](./03_geo_analysis/index.md)

[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/examples/03_geo_analysis)
[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/nyx-core/examples/03_geo_analysis)

- :material-motion:{ .lg .middle } __Lunar Reconnaissance Orbiter Orbit Determination__

Expand All @@ -50,7 +50,7 @@ This section showcases some of the problems that you can solve with the whole su

[:octicons-arrow-right-24: Read more](./04_lro_od/index.md)

[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/examples/04_lro_od)
[:material-code-tags: Source code](https://github.com/nyx-space/nyx/tree/master/nyx-core/examples/04_lro_od)

</div>

Expand Down
Loading