Multi-Beam LEO Communication Satellite Simulation Framework

DOI

Multi-Beam LEO Communication Satellite Simulation Framework

With this Python code, the results from the paper Impact of Elevation Angle on Multi-Beam LEO Satellite Communication Systems by Fastenbauer et al. can be reproduced and results with altered parameters can be simulated and plotted. The code also contains the result data used to generate the plots in the paper.

Multi-Beam LEO Communication Satellite

This code is a simulation tool to evaluate the channel quality in a multi-beam LEO satellite communication system in terms of signal-to-noise ratio and signal-to-interference-and-noise ratio.

The code simulates a satellite equipped with an antenna array that consists of 19 panels, that each form a beam. The beams are directed to a hexagonal grid on the Earth's surface and independently serve users. The co-channel interference between the beams is taken into account under the assumption that all beams are active at all times.

Technical details

Files

figures folder: contains pdf files of the result plots.

results folder: contains simulation results saved as JSON files. New results are saved here if no other folder is specified. The saved result files are necessary to run plotResults.py.

simulation.py: run simulations.

plotResults.py: plot simulation results saved in the results folder.

networkGeometry.py: create satellite and user positions and set beam centers.

channel.py: functions related to the modeling of wireless transmission channels. Contains functions to calculate free space path loss, atmospheric loss, Rician fading, and array steering vector.

utils.py: helper functions.

Required Packages

JSON: save parameters and results in JSON files

NumPy: use of NumPy arrays for calculations

matplotlib.pyplot: plot results

itur: calculate atmospheric losses according to ITU recommendations

astropy.units: required for itur use

Additional Documentation

The code was used to produce the results in

@ARTICLE{fastenbauer,      title={Impact of Elevation Angle on Multi-Beam LEO Satellite Communication Systems},       author={Fastenbauer, Agnes and Kaneko, Megumi and Svoboda, Philipp and Rupp, Markus},      year={2025},      journal={IEEE Access}}

The paper shows and analyzes the simulation results.

How to Use

Run Simulation and Plot Results

Run simulation.py to calculate and save simulation results.

Run plotResults.py to plot saved results.

Change Simulation Parameters

Use params.py to change simulation parameters such as:

satellite altitude in h_satellite

carrier frequency in center_frequency

transmission bandwidth in bandwidth_Hz

number of antenna elements per beam in n_antenna_x and n_antenna_y

antenna array gain in antenna_gain_dB

Rician K-factor in rician_k

transmit power in transmit_power_W

receiver noise figure noise_figure_dB

The footprint size of the satellite serving area can be adjusted in the simulation.py file in the simulation functions by setting r_footprint to the desired footprint radius in meters.

Use of Code

When using code, please cite@ARTICLE{fastenbauer,      title={Impact of Elevation Angle on Multi-Beam LEO Satellite Communication Systems},       author={Fastenbauer, Agnes and Kaneko, Megumi and Svoboda, Philipp and Rupp, Markus},      year={2025},      journal={IEEE Access}}

Acronyms

ITU: International Telecommunications Union

LEO: low Earth orbit

Licenses

The data is licensed under CC-BY, the code is licensed under MIT.

Identifier
DOI https://doi.org/10.48436/j31fx-wf765
Related Identifier IsVersionOf https://doi.org/10.48436/7ynk5-2t607
Metadata Access https://researchdata.tuwien.ac.at/oai2d?verb=GetRecord&metadataPrefix=oai_datacite&identifier=oai:researchdata.tuwien.ac.at:j31fx-wf765
Provenance
Creator Fastenbauer, Agnes ORCID logo; Kaneko, Megumi ORCID logo; Svoboda, Philipp ORCID logo; Rupp, Markus ORCID logo
Publisher TU Wien
Publication Year 2025
Rights Creative Commons Attribution 4.0 International; MIT License; https://creativecommons.org/licenses/by/4.0/legalcode; https://opensource.org/licenses/MIT
OpenAccess true
Contact tudata(at)tuwien.ac.at
Representation
Language English
Resource Type Software
Version 1.0.0
Discipline Other