Hi!
After a massive rewrite of the SatelliteToolbox.jl package, I finally managed to finish the first version of SatelliteAnalysis.jl after the revamp!
The idea was to split the original huge SatelliteToolbox.jl package into smaller ones, each solving a part required for satellite-related analysis. However, some functions did not fit anywhere because they required multiple parts to solve the problem. Hence, I created a package for those cases. In SatelliteAnalysis.jl, many algorithms use the entire SatelliteToolbox.jl ecosystem to perform analysis for space missions.
In the current version, we can:
- Compute the mission beta angle (used in thermal analysis).
- Compute the mission eclipse summary.
- Compute ground facility accesses and gaps to a satellite.
- Compute the ground facility visibility circle.
- Compute the ground trace of a satellite.
- Design orbits (Sun-synchronous, ground-repeating, frozen orbits).
I tried to add some examples in the documentation: Home ยท Satellite Analysis
For example, if someone wants to find all the possible Sun-synchronous, ground-repeating orbits between 700km and 800km that repeat their ground trace in 6 days, at most, to find the best one for their mission, all they have to do is:
julia> using SatelliteAnalysis
julia> df = design_sun_sync_ground_repeating_orbit(1, 6; minimum_altitude=700e3, maximum_altitude=800e3)
3ร7 DataFrame
Row โ semi_major_axis altitude inclination period rev_per_days adjacent_gt_distance adjacent_gt_angle
โ Float64 Float64 Float64 Float64 String Float64 Float64
โโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
1 โ 7098.09 719.954 98.2747 99.3103 14 + ยน/โ 1350.87 83.4747
2 โ 7130.98 752.847 98.4106 100.0 14 + ยฒ/โ
543.811 39.4254
3 โ 7153.13 774.988 98.503 100.465 14 + ยน/โ 910.164 59.7702
In the following, I added some figures with the data obtained from the package that was plotted using Makie ecosystem (CairoMakie.jl, GeoMakie.jl, GeoJSON.jl):