A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

saleos

Sustainability Analytics for Low Earth Orbit Satellites.
https://github.com/bonface-osoro/saleos

Category: Industrial Ecology
Sub Category: Life Cycle Assessment

Last synced: about 19 hours ago
JSON representation

Repository metadata

Sustainability Analytics for Low Earth Orbit Satellites

README.md

Sustainability Analytics for Low Earth Orbit Satellites (saleos)

Welcome to the Sustainability Analytics for Low Earth Orbit Satellites
(saleos) repository.

Paper Citation

  • Ogutu, O. B., Oughton, E. J., Wilson, A. R, & Rao, A. (2023). Sustainability
    assessment of Low Earth Orbit (LEO) satellite broadband mega-constellations.
    https://arxiv.org/abs/2309.02338

There is increasing concern about adverse environmental impacts produced by
Low Earth Orbit (LEO) megaconstellations. The saleos codebase provides an
open-source integrated assessment model capable of concurrently estimating
environmental emissions, broadband capacity, and social and financial costs
for different LEO satellite networks.

We focus on evaluating Amazon's Kuiper, Eutelsat's OneWeb and SpaceX's Starlink,
with these three LEO constellations visualized in Figure 1. The saleos
codebase allows you to compare these LEO constellations against a representative
Geostationary Earth Orbit (GEO) operator.

Figure 1 Three key LEO constellations: Kuiper, OneWeb and Starlink (Details as of December 2023).

Emissions produced during the launching of satellites depend on the
utilized rocket vehicle. Most operators planning or launching LEO broadband
satellites have used (or intend to use) SpaceX’s Falcon-9 or Falcon-Heavy,
the European Space Agency’s Ariane rocket system, or prior to Spring 2022,
Russia’s Soyuz-FG rocket, as detailed in Figure 2.

Figure 2 Details of launch rocket systems.

Sustainability metrics

The saleos codebase is capable of estimating a range of sustainability
metrics. Figure 3 illustrates a selection of these including the estimated
annual emissions per subscriber (subplot b), potential mean peak capacity per
subscriber (subplot c), and the financial costs per subscriber (subplot e/f).

Figure 3 Aggregate sustainability metrics for Kuiper, OneWeb, Starlink and a hypothetical GEO operator.

Method

The method is based on (i) a Life Cycle Assessment (LCA) model of environmental
emissions and other impacts,(ii) a stochastic engineering simulation model
estimating constellation capacity using the Friss Transmission Equation, (iii)
potential traffic demand based on different adoption scenarios, and (iv) a
techno-economic model of the associated social and financial costs. Figure 4
illustrates the integrated assessment approach.

Figure 4 Integrated assessment modeling approach.

Required data

To use saleos the following model input datasets are required from data/raw:

  1. life_cycle_data.xlsx: This dataset contains estimated emissions and
    other environmental impacts per launch for major rocket vehicles.
  2. scenarios.csv : This file contains the past and future launch information
    for different constellations, including hydrocarbon (HYC) versus hydrogen (HYD)
    fuel-based rockets.

Using conda

The recommended installation method is to use conda, which handles packages
and virtual environments, along with the conda-forge channel which has a host
of pre-built libraries and packages.

Create a conda environment called saleos:

conda create --name saleos python=3.7 gdal

Activate it (run this each time you switch projects):

conda activate saleos

Alternatively, to install a conda environment capable of running the model,
you can utilize the following code:

conda env create -f saleos.yml

The saleos.yml file represents an existing virtual environment with a
variety of packages, necessary for running the model (e.g., pandas, numpy etc.).

First, to run saleos you need to generate uncertain capacity and cost
parameters since they are not deterministic.

So navigate to the scripts folder and run preprocess.py. This will produce
two capacity and cost.csv files named uq_parameters_capacity.csv and
uq_parameters_cost.csv stored in the path data/processed.

Secondly, run the whole integrated model to produce capacity, emission and
cost results by running the simulation script (run.py). It should first
produce the following intermediate results stored in the folder
data/processed:

  1. interim_results_capacity.csv
  2. interim_results_cost.csv

Next, you can inspect the model outputs stored in the results folder:

  1. individual_emissions.csv
  2. final_capacity_results.csv
  3. final_capacity_cost.csv

Lastly, to visualize the results, you will navigate into the vis folder
and run the following r scripts in any order.

  1. aggregate_metrics.r
  2. emissions.r
  3. capacity.r
  4. social_cost.r
  5. cost.r

Quick start

To quick start, execute the setup.py file.

pip install .

Then run the scripts in the order defined in the previous section (Using conda).

Background and funding

saleos has been developed by researchers at George Mason University,
University of Strathclyde and Middlebury College.

Team

  • Bonface Osoro, George Mason University (Model development).
  • Edward Oughton, George Mason University (Project lead and corresponding
    author).
  • Andrew Wilson, University of Strathclyde / Glasgow Caledonian University
    (LCIA modeling).
  • Akhil Rao, Middlebury College (Policy and economics).

Acknowledgement

EO would like to thank Geography and Geoinformation Sciences at George Mason
University for providing start-up funding for the project. Additionall, the
authors thank Nils Pacher and Dr. Inigo del Portillo for providing code for
modeling the orbit of the three LEO constellations, as well as Dr. Whitney
Lohmeyer for providing advice on the satellite capacity model.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 8 days ago

Total Commits: 357
Total Committers: 5
Avg Commits per committer: 71.4
Development Distribution Score (DDS): 0.272

Commits in past year: 25
Committers in past year: 2
Avg Commits per committer in past year: 12.5
Development Distribution Score (DDS) in past year: 0.04

Name Email Commits
Bonface-Osoro b****o@g****m 260
edwardoughton e****n@g****m 66
dkbor b****o@g****m 23
Bonface Osoro b****o@m****e 6
Rushil Kukreja r****a@g****m 2

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 0
Total pull requests: 242
Average time to close issues: N/A
Average time to close pull requests: about 10 hours
Total issue authors: 0
Total pull request authors: 3
Average comments per issue: 0
Average comments per pull request: 0.01
Merged pull request: 239
Bot issues: 0
Bot pull requests: 0

Past year issues: 0
Past year pull requests: 32
Past year average time to close issues: N/A
Past year average time to close pull requests: 1 day
Past year issue authors: 0
Past year pull request authors: 3
Past year average comments per issue: 0
Past year average comments per pull request: 0.03
Past year merged pull request: 30
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/bonface-osoro/saleos

Top Issue Authors

Top Pull Request Authors

  • Bonface-Osoro (219)
  • edwardoughton (19)
  • rushilkukreja (4)

Top Issue Labels

Top Pull Request Labels


Dependencies

setup.py pypi
  • numpy >=1.16.4
requirements.txt pypi
  • fiona >=1.8.11
  • geopandas ==0.7.0
  • matplotlib ==3.1.2
  • networkx ==2.4
  • numpy ==1.22.0
  • pandas ==0.25.3
  • shapely >=1.6

Score: 3.9120230054281464