This repository contains the integrated Python-STK automated code used to run STK scenarios used in a research project. The research focus was on the 'Orbital Dynamics of In-Orbit Assembly of a Modular Solar Power Satellite in GEO'.
The context of this research is set within Solar Power Satellite (SPS) technology pioneered by Peter Glaser from the 1960s. SPS describes large-scale satellites (typically kilometre-scale) that generate solar power in orbit and transmits that power back to Earth for terrestial use. Since then, many nations have sought to realise SPS as a means of renewable energy.
The simulation files are named 'HexGeoPy' from the three components.
- Hex: The use of hexagonal tiles was assumed for the in-orbit assembly in the SPS construction.
- Geo: The assembly process in geostationary Earth Orbit (GEO) at the arbitrary location (0°N, 25°E) was assumed.
- Py: The code was written in Python.
The Jupyter Notebooks (.ipynb) consist of:
-
HexGeoPy Visuals
This is used primarily for visualisation of the concept and NOT used for any analysis. It simulates the assembly process up to 3 rings.
Instructions: After running, please zoom in to 'HexHub' for the 3D Graphics and hide the 'GEO_25E' reference satellite. You may also want to increase the simulation time step.
-
HexGeoPy Results
This is used for the orbital trajectory results of the satellite under the force models considered.
-
HexGeoPy Station-Keeping
This is used for North-South and East-West GEO station-keeping analysis performed for a single 'HexHub'.
The station-keeping strategy used was based on STK's 'Maintaining GEO Slot' (Tutorials and Training > Level 3 - Focused Tutorial > Feature Specific > Astrogator) avalaible then from https://help.agi.com/stk/
The CAD files (.glb) for the STK visualisation used is also given.
Python 3.10.5 was the version used to run the Jupyter Notebooks (.ipynb). The STK version used for the project was 12.10.0. If another version of STK is adapting this code, changing "stk12" to "stk{version number}" may solve the problem.
Please note that the following code may only run with the relevant licensing of STK Premium (Space) or STK Enterprise.