Helioviewer-Project / helioviewer.org

Main web application for solar data visualization
Other
18 stars 15 forks source link

Incorporating STEREO/Waves L3 dataset #435

Open vkrupar opened 1 year ago

vkrupar commented 1 year ago

Incorporating the STEREO/Waves dataset (radio spectra) into Helioviewer would be advantageous as it would enable users to merge solar wind transients with their radio signatures. The calibrated L3 STEREO/Waves data in CDF format and are publicly accessible through SPDF:

https://spdf.gsfc.nasa.gov/pub/data/stereo/ahead/l3/waves/ https://spdf.gsfc.nasa.gov/pub/data/stereo/behind/l3/waves/

wafels commented 1 year ago

This is an example of a more broadly applicable theme, how do we show time series data in Helioviewer clients? Ideally we would have some kind of zoom in/out capability to look at different time scales. To do this efficiently Helioviewer would have to subsample data efficiently. On the back-end this may involve finding and downloading multiple CDF files, reading them in to memory and then sending the sub-sampled data back to the client.

Time series browsers are their own project - see LISIRD and Autoplot. Fortunately there are tools for accessing time series data. Perhaps data accessible via HAPI should be the first to be considered.

Radio spectra are more complex again since those data are essentially two-dimensional, i.e. measurement = F(time, radio frequency). There are many more datasets that are one-dimensional, i.e. measurement = F(time).

Implementation will involve new UI elements to Helioviewer, and maybe some new API elements.

wafels commented 1 year ago

There is a related request here.

vkrupar commented 1 year ago

The zoom in/out function is an excellent idea, particularly since radio emissions can be short (~ minutes) or last for several hours. It may be necessary to access multiple CDF files for a single plot, as they are stored on a daily basis. While I'm not familiar with LISIRD or Autoplot, I believe they won't be necessary for this specific application. Plotting radio data is relatively simple since they are essentially just 2D arrays consisting of time and frequency dimensions. In fact, I already have Python functions that can produce PNG files directly from CDF files, using a specified time interval as input.