Awards & Nominations

Space C.A.D.Y.S. has received the following awards and nominations. Way to go!

Global Finalist

3D Mapping the Ionosphere through Electron Density

High-Level Project Summary

We created an interactive application that maps the Ionosphere across a 3D globe model of the Earth, allowing the user to visualize the Ionosphere in 3D space. Focusing on electron density data obtained from NASA's ISS Amateur Radio broadcasts, the application plots each data point at the exact longitudinal and latitudinal coordinates it was collected. Relative electron density is represented by a colour scale. The application itself has no requirement for programming knowledge which makes it a valuable tool for citizens and scientists alike.

Link to Project "Demo"

Detailed Project Description

Brainstorming a way to visualize the Ionosphere


We decided to use location-dependent electron density to simulate a visual representation of the ionosphere. We used the Coordinated Data Analysis (CDA) Web Data Explorer to get the ISS_SP_FPMU Data. 

Data source: https://cdaweb.gsfc.nasa.gov/cgi-bin/eval1.cgi

NASA Data Description: https://cdaweb.gsfc.nasa.gov/misc/NotesI.html#ISS_SP_FPMU

FPMU Fact Sheet: https://www.sdl.usu.edu/downloads/pdfs/fpmu.pdf


Here, FMPU is the Floating Potential Measurement Unit, which is mounted on the ISS. As per the description, ISS FPMU provides measurements for the ionosphere using wide and narrow Langmuir Probes (WLP and NLP) and temperature records in 1-second increments. 



Implementing using Python

The data provided us with 3 main features geodetic latitudes, geodetic longitudes, total ion densities (which corresponded to the total electron densities). It also provided us the geodetic altitude of the ISS as it passed through the Earth’s ionosphere, at about 400 km above sea level. We did not really plot out data as a function of altitude, however, since we were more interested in how the electron density varied along the orbital path. 


We used Pandas data frames to get all of our data in 1D arrays. We then projected the 1D arrays — latitude and longitude, which were in spherical coordinates, and the electron density — onto a spherical map of the Earth to better represent our data. We used a colour map feature to display a 3-feature plot to clearly indicate how the electron densities varied as a function of the ISS orbit. 


Optimizing our display -- High-Spatial and High-Temporal Imaging


We quickly realized that the interactive globe created using our Python code (found in /docs of our github repo) cannot create fast imaging of datasets larger than 100,000 data points. In an attempt to resolve this issue, we created a netCDF4 file from the .csv using a ArcGIS Pro notebook (found in /netCDF_work of our github repo). Our goal was to extract 2D information all at once and wrap it around the 3D Scattergeo globe. We did not finish attempting this task.





Future considerations and limitations to our project


In the future, working with this project, we would likely look into refactoring our data as GeoJSON data or using GeoPandas for our visualizations. They are well equipped to handle geographic data and map projections. There was a suggestion of running our visualizations in MATLAB using the built-in globe. We were not very sure whether this would have allowed us to speed up our rendering.


Regarding the latency involved in our visualization library, it is likely that our render on Plotly was quite efficient, other than maybe Geo specific ones like GeoPandas. ArcPy is another Geo specific option that we fiddled with, but it certainly requires some experience with ArcGIS.


In the future, we also want to be able to plot larger amounts of data so we have more holistic insights into the electron density dynamics in the ionosphere. Perhaps, we can also have it vary as a function of altitude from the ISS, as well as other satellites.

Space Agency Data

Our project solely focuses on data obtained from NASA's International Space Station (ISS) amateur radio broadcasts. The Coordinated Data Analysis Web (CDAWeb) database included recordings of ion density derived from the FPMU Wide Langmuir Probe. We downloaded this data as .csv files and those .csv files became the input data for our application. Our data specifically came from September 2020 readings.

Hackathon Journey

From the beginning our team had a clear idea of how we wanted to represent the data that would visualize the ionosphere, however, we soon realized that it was a little harder than we expected to find useable data. The first few hours were spent scouring NASA and other public space agency resources, and admittedly frantically messaging the challenge discord. Please see the attached visual aids for a better representation of our team's mental state at the time.


Figure 1: Starting SpaceApps with optimism and an executable plan for the day


Figure 2: Five hours into SpaceApps with slightly less optimism (and fewer thumbs up)

Figure 3: T-30 minutes


With the help of a Subject Matter Expert on discord, we were finally able to find the data we needed which gave us a new motivation to keep working. On the bright side, all of us were now experts in radio propagation data!


It was super interesting to discover how certain forms of radio propagation rely on the interaction between radio waves and the ionosphere - but also that this dependency creates an avenue to study the physical characteristics of the ionosphere itself. In our research we found studies and datasets that dated back to the 1950s and 60s. It is amazing that as we develop new technologies, older data can continue to provide useful information.


We will definitely never listen to the radio again without wondering about the ionosphere above us.


Finally a special thanks to Jack (@jcly2k on discord) for bearing with our crazy python related questions :)

References

https://www.sciencedirect.com/science/article/pii/002191699490104X?via%3Dihub

https://www.arrl.org/files/file/Technology/pdf/119962.pdf

https://en.wikipedia.org/wiki/Ionosphere

https://giro.uml.edu/didbase/scaled.php

https://cdaweb.gsfc.nasa.gov/cgi-bin/eval1.cgi

https://igorcomune.medium.com/data-science-how-to-plot-3d-interactive-globe-map-4dfba1b6e070

Data source: https://cdaweb.gsfc.nasa.gov/cgi-bin/eval1.cgi

NASA Data Description: https://cdaweb.gsfc.nasa.gov/misc/NotesI.html#ISS_SP_FPMU

FPMU Fact Sheet: https://www.sdl.usu.edu/downloads/pdfs/fpmu.pdf

Tags

#software #heliophysics #3Dimaging #python #ISS #ionosphere