Skip to main content

METHODS article

Front. Astron. Space Sci., 26 September 2022
Sec. Space Physics
Volume 9 - 2022 | https://doi.org/10.3389/fspas.2022.1009450

AuroraX, PyAuroraX, and aurora-asi-lib: A user-friendly auroral all-sky imager analysis framework

www.frontiersin.orgM. Shumko1,2* www.frontiersin.orgD. Chaddock3 www.frontiersin.orgB. Gallardo-Lacourt1,4 www.frontiersin.orgE. Donovan3 www.frontiersin.orgE. L. Spanswick3 www.frontiersin.orgA. J. Halford1 www.frontiersin.orgI. Thompson www.frontiersin.orgK. R. Murphy
  • 1NASA’s Goddard Space Flight Center, Greenbelt, MD, United States
  • 2Department of Astronomy, University of Maryland, College Park, MD, United States
  • 3University of Calgary, Calgary, AB, Canada
  • 4Department of Physics, The Catholic University of America, Washington, D.C., United States

Within the context of the Heliophysics System Observatory, optical images of the aurora are emerging as an important resource for exploring multi-scale geospace processes. This capability has never been more critical as we are on the cusp of a new era of geospace research, by which we mean studying the overall system as a system of systems. Historically, the patchwork of ground-based instrumentation has required customized solutions for accessing data, assessing data relevance, and then ultimately using each individual network alongside other assets. Here we introduce a new and comprehensive approach for data discovery and utilization for one type of data, namely auroral images. The AuroraX project (https://aurorax.space/) is a cyberinfrastructure platform for the discovery of scientific opportunities with access to optical auroral data. The program has broad objectives, so we focus on one key thread. In particular, we focus on describing the AuroraX platform and its API and web-based tools for all-sky imager (ASI) data. As a practical example, we demonstrate how to identify conjunctions using the AuroraX conjunction finder or PyAuroraX, a Python library that interfaces with the AuroraX platform. We then demonstrate how aurora-asi-lib, a Python library for interacting with and analyzing high-resolution ASI data, can be used for detailed conjunction analysis on a personal computer. Together, these tools enable a rapid and streamlined end-to-end exploration of auroral data.

1 Introduction

In the domain of space physics (also known as Heliophysics and geospace research) it is becoming clear that we need observations of processes that span a range of space and time scales: from kinetic and fast, to global and relatively slow. Historically, informing our knowledge of the small and fast scales has led to extensive focus on in-situ point measurements in space, and high time and space resolution measurements on the ground, organized around, for example, incoherent scatter radars. For the global picture, our community has looked to, for example, system-level observations provided by imagers such as those carried by NASA’s IMAGE spacecraft (Burch, 2000) complimented by information from near-global networks of ground-based instruments such as magnetometers and high frequency radars.

NASA’s Time History of Events and Macroscale Interactions during Substorms (THEMIS) mission was launched in 2007 with its prime mission objective being identification of the instability responsible for substorm onset (e.g., Angelopoulos et al., 2008). The mission science necessitated relatively high space and time information about the aurora across a large swath of magnetic local time. This was addressed by including a continent-wide network of All-Sky Imagers (ASIs) as part of the overall mission. In terms of space and time scales, THEMIS-ASI delivered a fundamentally new view of the aurora, and by extension, of geospace dynamics (e.g., Donovan et al., 2006b; Mende et al., 2009; Jones et al., 2013). The key new thing that THEMIS-ASI brought forward was the ability to track the spatio-temporal evolution of small-scale structures that are organized over large distances, providing us our first real look at the mesoscales that Dan Baker once referred to as the missing middle.

ASIs and other scientific auroral imaging systems have been around for many decades and have contributed enormously to auroral science. Examples include the very concept of the substorm, introduced by Akasofu (1964), and several descriptions of new phenomena that highlight the tight connections between the magnetosphere and ionosphere, understanding of how the aforementioned mesocales contribute to geospace dynamics at the system level (Nishimura et al., 2010), and unravelling the mystery of the newly discovered STEVE phenomenon (MacDonald et al., 2018). ASIs are only part of our arsenal of tools for observing the aurora. Meridian Scanning photometers (MSPs), such as those operated as part of CANOPUS, provide high quality quantitative measurements of auroral intensities at multiple wavelengths along a scan plan (e.g., Rostoker et al., 1995). As well, global auroral imagers, such as the Wideband Imaging Camera on IMAGE (Burch, 2000), provide a true global picture of geospace as projected along magnetic field lines onto the ionosphere.

Auroral observations provide us what is to date our best view of the so-called missing middle. Because of our increasing collective interest of geospace at the system level, and the study of geospace as a system of systems, the missing middle is becoming ever more important. Consequently, historical, contemporary, and future auroral observations are increasingly important. However, the data landscape vis-a-viz auroral observations is highly challenging. Instruments have been operated by a large number of groups, in a large number of modes, and the resulting data is available and discoverable to an extent that is not ideal. While the overall data is large in volume, it is this heterogeneity and locations that are really its challenge. The various data formats ultimately stifles system-level research. Similar data formats are important to research groups who, for example, are developing machine learning models to classify auroral phenomena (e.g., Clausen and Nickisch, 2018; Zhong et al., 2020).

In this paper, we introduce the AuroraX project which aims to overcome the above issues by providing key tools to aid auroral researchers. The first tool is the AuroraX website and Virtual Observatory. This website provides various interfaces for quickly visualizing summary data (i.e., keograms, movies, etc.), determining what imagers operated at a given time, and search for conjunctions between numerous ground- and space-based instruments. The second tool is PyAuroraX, a Python library to programmatically interact with the AuroraX platform. The third tool is aurora-asi-lib, a Python all-sky imager library that provides functions to download, load, analyze, and visualize the THEMIS and the Red-line Emission Geospace Observatory (REGO) ASI data on a personal computer. Since each ASI array has unique data quality and caveats that often require visual inspection, these tools analyze the ASI data as-is. We leave the task of assessing the imager-specific data quality to the user (Starck and Murtagh, 2007).

2 AuroraX

The motivating driver behind the development of the AuroraX cyberinfrastructure project is to enable data mining and analysis of existing and future arrays of auroral data, which is accomplished by developing a set of tools specifically designed for exploring auroral observations. With these tools, the project would enable key scientific discoveries and enhance the benefits of the world’s auroral instrumentation. This is being accomplished with the development of key systems/standards for uniform metadata generation and search, image content analysis, interfaces to leading international tools, and a community involvement that includes more than 80% of the world’s data providers.

The AuroraX website, located at https://aurorax.space, is designed to be the first place to start your auroral analysis. The website currently provides interfaces for: performing conjunction searches, exploring summary data such as keograms and movies, viewing data availability, and documentation about the platform including guides for using the API and client libraries (e.g., PyAuroraX). In the following sections, we explained some of AuroraX’s capabilities in detail.

2.1 Data repository

Fundamentally, AuroraX processes a rich database of metadata, which we refer to as the data repository. Indeed, AuroraX does not contain any raw data, only metadata and various summary data products. Our goal with this approach is to ease concerns with data ownership and stewardship, which may cause hesitancy to have data publicly available and searchable by AuroraX. In other words, AuroraX is meant to be a centralized data exploration and event discovery platform, and not a raw data repository. This architecture keeps the data repository slim and optimized for the search engine.

The metadata in the AuroraX data repository is currently organized into two categories:

Ephemeris records: Provide location and operational information for a given ground- or space-based instrument.

Data product records: Describe keograms or other summary products (no images are stored in the database, only URLs which are used as unique identifiers).

Ephemeris data are 1-min location records when a ground- or space-based instrument collected data. This allows applications, such as the search engine, to return more useful query results—ones where raw data exists and can be further evaluated by auroral researchers. On the other hand, the data product category consists of records describing summary data in the form of, for example, keograms and timelapse movies. These records are accessed via a unique website URL where the data product lives, allowing this data to be served by each organization that produces ASI data.

Both ephemeris and data product records can contain any number of arbitrary metadata fields (metadata about metadata) which can be used by the search engine to assist with further levels of filtering and data discovery.

2.2 Search engine

The THEMIS ASI array has generated more than 100 terabytes of data since becoming operational in 2005, with the instruments continuing to generate new data every day. Other ASI arrays, such as REGO and Transition Region Explorer (TREx), produce a combined >100 terabytes per year. Even for the experienced scientists, sifting through this large data volume, in search for isolated times with scientific importance, can be time consuming. This process of “event discovery” can be simplified and streamlined by leveraging a database of metadata describing auroral data and its optical content. By combining AuroraX’s data repository with a search algorithm, we are able to provide the scientific community with a procedure to significantly reduce the amount of time spent searching through these datasets for auroral events.

One of AuroraX’s search engine functions is the Conjunction Search. This function is designed to quickly provide periods of time for which two or more ground- or space-based instruments were operating, and were magnetically conjugate. A conjunction search engine with the ability to filter by ASI metadata is the key differentiating factor of AuroraX. As a platform that is built specifically for auroral data, we tailored the search algorithm to consider pertinent information about the instruments and build tools focused on maximizing their scientific contributions.

Conjunction searches can be performed using the AuroraX Conjunction Search webpage (https://aurorax.space/conjunctionSearch/standard), the AuroraX API, or client libraries like PyAuroraX and IDL-AuroraX (for the Python and IDL programming languages, respectively). Figure 1A shows the Conjunction Search web interface with the red rectangle highlighting a series of dropdown menus and filter boxes elements that customize a conjunction search. These include specifying the start and end time, ground instruments and/or spacecraft to find conjunctions between, maximum distance between the instruments (kilometers between magnetic footprints), and conjunction type. Searches can be further refined by using a customizable set of filters on the metadata in the AuroraX Data Repository. These filters are very flexible and easy to adjust for each ASI array or spacecraft instrument. Some examples include instrument operating mode, quality flags, and predicted auroral image content based on machine learning models. To see more information about a conjunction, clicking on the Open button in Figure 1A leads to a detailed view about a conjunction that we show in Figure 1B. The Conjunction Search also provides pre-loaded searches that serve as examples. One of the examples finds all conjunctions, defined as a <500 km footprint separation, between any THEMIS ASI and any THEMIS spacecraft, when the machine learning model predicted amorphous pulsating aurora with >95% confidence (Grono et al., 2017).

FIGURE 1
www.frontiersin.org

FIGURE 1. The https://aurorax.space/website. Panel (A) shows the conjunction finder with the customizable elements highlighted with the red rectangle. Panel (B) shows a detailed view of one of the conjunctions. Lastly, Panel (C) shows the Keogramist for three TREx ASIs on 21 March 2020. The Gillam keogram is expanded to show further options.

2.3 Virtual observatory

Besides the conjunction search, AuroraX allows users to easily browse through the summary data. The AuroraX Virtual Observatory provides interactive visualizations and data browsing interfaces to quickly navigate the vast amount of auroral data available in the platform. These interfaces are designed for browsing through the data repository in a simple and efficient manner. AuroraX currently has two components to the Virtual Observatory: the Keogramist, and the Event Explorer.

As the name implies, the Keogramist (https://aurorax.space/keogramist) visualizes keograms—a highly compressed summary product for quickly analyzing ASI data. For the unfamiliar reader, a keogram corresponds to a time series representation of the luminosity along a single meridian. Typically, they are assembled by looping over every image and taking a vertical slice through the center of the image (or through a custom path such a path of a satellite). Objects in the sky such as auroral arcs, pulsating aurora, substorms, clouds, the moon, etc. have unique keogram signatures that allow for a quick interpretation. Keogramist presents keograms from any number of ASI instruments in the AuroraX data repository in a compact and visually-appealing interface. Figure 1C shows an example of the TREx keograms from 21 March 2020. Similarly, when a user identifies a day of interesting auroral activity, they can quickly view additional summary data such as timelapse movies. Keogramist also allows the user to filter the keograms displayed based on the data product record metadata fields in the data repository. This could be as simple as the green-channel content in an RGB-based ASI, or more complex such as classifications derived from a machine learning model (e.g., pulsating aurora in the field-of-view).

Equally useful, the second component of the Virtual Observatory is the Event Explorer (https://aurorax.space/eventExplorer). Although this component is still under development, it will allow users to see a 3D visualization of AuroraX ephemeris data with ground-based auroral images projected onto an interactive globe. This tool is designed to assist with visualizing auroral data and evaluating possible conjunctions using a more interactive and global interface. The auroral images are mapped to a 1024 × 512 grid covering − 180° to 180° longitude, and − 90° to 90° latitude (corresponding to 0.33° longitude and 0.35° latitude resolution), and visualized onto the globe. The grid format was first developed by NOAA and used as part of their 30-min auroral prediction OVATION model outputs (Newell et al., 2010; Machol et al., 2012). AuroraX has adopted this grid format to provide a global view of summary ASI data alongside representations of spacecraft geographic positions and magnetic footprints, provided by SSCWeb.

The Swarm-Aurora project was designed to facilitate and drive the use of Swarm (Friis-Christensen et al., 2006) in auroral science, and push Swarm beyond its primary mission objective to become a key instrument in auroral science research (https://swarm-aurora.com). In addition to AuroraX’s Virtual Observatory components, the continued development of the Swarm-Aurora website has become a part of AuroraX’s priorities. One recent improvement has been the integration of AuroraX with Swarm-Aurora, allowing users to browse Swarm-Aurora using the AuroraX Conjunction Search results. In fact, the example conjunction search query shown in Figures 1A,B was made by Swarm-Aurora. Lastly, architectural design changes were made to Swarm-Aurora to enhance the experience for users around the world, specifically optimizing loading times. Swarm-Aurora now operates on commercial cloud infrastructure in four regions; one in Calgary, two in the United States, and one in Europe. Adding more regions is trivial and can be done as the user base grows and are needed.

2.4 PyAuroraX

An important part of any platform like AuroraX is to allow users to leverage the data for use in their own scientific analyses and applications. To assist with these tasks, we developed software to interact with AuroraX using only a few lines of code. This is enabled by the AuroraX API and subsequent client libraries maintained by the project, one of which is PyAuroraX (https://github.com/aurorax-space/pyaurorax).

PyAuroraX allows users to interact with the AuroraX API and perform conjunction, ephemeris, and data product searches using Python. For example, the pyaurorax. conjunctions.search () function can be used to search AuroraX for conjunctions in the same way as the AuroraX Conjunction Search website. The below Python code shows how to perform a simple search, asking AuroraX to find all conjunctions between several instruments from the THEMIS ASI array and any Swarm spacecraft.

www.frontiersin.org

Users can also retrieve other information from AuroraX such as data sources, ephemeris records, data product records, and data availability. All functions in PyAuroraX are also available for use with IDL programs by using the IDL-AuroraX library (https://github.com/aurorax-space/idl-aurorax).

Documentation and examples are a key part of helping new users learn what is possible and provides a reference for more experienced users. To assist with this and ease the learning curve, AuroraX has developed a documentation website, available at https://docs.aurorax.space, with technical details about the platform, the metadata in it, and the various applications and tools available for use. Extensive examples and code snippets are available in the “Developer Zone” to provide quick and simple uses of key programmatic tasks. The source code for this website is also available on Github alongside other open-source codebases within the AuroraX project (https://github.com/aurorax-space/docs).

3 Analyzing high-resolution ASI data using aurora-asi-lib

The final component of AuroraX is aurora-asi-lib, henceforth referred to, and imported as, asilib. It enables researchers to apply common data analysis tasks to the THEMIS and REGO ASI image data on a personal computer. Here we overview the main functions, while the online documentation at https://aurora-asi-lib.readthedocs.io/contains more examples, a tutorial, and a thorough API reference.

As we tour a few asilib functions, keep in mind that asilib is designed to manage the lower-level tasks. For example, if you want to load the image data via asilib.load_image(), asilib will attempt to download the 1-h Common Data Format (CDF) data if it is not already saved on your computer. Likewise, if you call asilib.plot_keogram(), it will automatically load (and download if necessary) the ASI data before plotting it. For reference, Supplementary Figures S2–S4 were made using the code in a Jupyter Notebook that is provided as Supplementary Material in both the ipynb and pdf formats.

3.1 Plotting single images

One common way to visualize all-sky images is with asilib.plot_fisheye(). It plots the raw ASI images oriented with North at the top and East to the right of each image. The term fisheye comes from the fisheye lens that expands the imager’s field of view to nearly 180°. Figures 2A,C show an example of an auroral arc observed concurrently by the THEMIS and REGO ASIs stationed at Rankin Inlet (RANK). By default the color map is automatically chosen: black-to-white for THEMIS and black-to-red for REGO. The default color scale is dynamically calculated using percentile logic described in the documentation.

FIGURE 2
www.frontiersin.org

FIGURE 2. An auroral arc observed simultaneously by the REGO and THEMIS imagers at Rankin Inlet, Canada. Panels (A) and (C) show the fisheye lens view, while panels (B) and (D) show the same images projected to the 110 km assumed aurora emission altitude. Only the pixels with elevation >10° are plotted.

The other common way to visualize images is by projecting the fisheye image onto a geographic map using asilib.plot_map(). asilib uses the skymap files to map each pixel’s vertices to a (latitude, longitude) point at an aurora emission altitude, typically assumed 110 km for THEMIS and 230 km for REGO (Donovan et al., 2006a; Liang et al., 2016). Figures 2B,D show the fisheye images mapped to 110 km altitude. By default, pixels that look at elevation <10° are not mapped due to nearby obstructions and the stretching of pixels closest to the horizon. And lastly, asilib.make_map() provides a default geographic map to project the images onto.

3.2 Keograms

You can make a keogram using the asilib. plot_keogram () function that takes an optional map_alt keyword argument. If map_alt is not provided, the keogram’s vertical axis is pixel index, as we show in Figure 3A. If a valid map altitude is provided, the vertical axis is geographic latitude as we show in Figure 3B. Lastly, by providing map_alt and setting aacgm=True, the vertical axis becomes magnetic latitude in the Altitude-adjusted corrected geomagnetic coordinate system (AACGM) (Shepherd, 2014). The latitude transformation between Figure 3A and Figure 3B is substantial—the low elevation pixels observe much wider regions of latitude, compared to the pixels at higher elevations.

FIGURE 3
www.frontiersin.org

FIGURE 3. A full-night keogram showing the dynamic aurora observed at Gillam, Canada on 9 March 2008. Panel (A) shows the unmapped keogram with the pixel index vertical axis, panel (B) shows the geographic latitude of the pixels mapped to 110 km altitude. Lastly, panel (C) shows the corresponding magnetic latitudes.

3.3 Animating images

asilib allows you to easily animate the fisheye and mapped images using asilib.animate_fisheye() and asilib.animate_map(). It first saves png images in aasilib.config[’ASI_DATA_DIR’]/animations/images/folder, and then animates them using the ffmpeg library (FFmpeg Developers, 2022). Supplementary Video S1 in the supporting document shows an example animation of auroral streamers.

Animating just the images is somewhat limiting. Thus, asilib also includesasilib.animate_fisheye_generator() and asilib.animate_map_generator() (which are technically coroutines) to allow the user to modify the animations as they are made. This is useful, for example, if you need to draw the satellite’s location in each image.

3.4 Conjunction analysis tools

Currently, asilib provides three functions that are useful for analyzing conjunctions: asilib.lla2footprint (), asilib.lla2azel(), and asilib.equal_area().

asilib.lla2footprint() uses IRBEM-Lib [Boscher et al. (2012); requires a separate installation and compilation of the Fortran source code] to trace a satellite’s position, in geographic (latitude, longitude, altitude) (LLA) coordinates, along a magnetic field line. This field line is defined using one of the magnetic field models that are supported by IRBEM. The primary use of this function is to map a satellite’s location from, for example, 500 km altitude, to its magnetic footprint at the assumed auroral emission altitude (e.g., 110 km for THEMIS or 230 km for REGO as previously mentioned).

The next function is asilib.lla2azel(). This function maps the satellite’s footprint location, in LLA coordinates, to the ASI’s (azimuth, elevation) coordinates (AzEl) using the skymap files. This function returns both the AzEl coordinates as well as the corresponding pixel indices.

Lastly, asilib.equal_area() calculates a mask of pixels inside an auroral emission area—useful to calculate the mean auroral intensity (or another statistical quantity) in a physical area in the sky. The mask contains 1s inside of the area and numpy.nan outside of it. You then multiply the image with the mask: the pixel intensities outside of the area are then numpy.nan and unchanged inside the area. We chose to use numpy.nan to ensure that the mean of the intensity is correctly applied—it will fail if you call numpy.mean(image*mask), but numpy. nanmean (image*mask) will ignore NaNs and correctly calculate the mean intensity inside the area.

3.5 Analyzing a conjunction

In this example we combine the aforementioned analysis functions to calculate the mean auroral intensity surrounding the footprint of an artificial satellite during a conjunction with a THEMIS ASI. This satellite orbits at a 500-km altitude low Earth orbit. We will ultimately calculate the mean ASI intensity in a 20 × 20 km area at a 110 km altitude and animate the conjunction. Using an artificial satellite allows us to clearly exemplify how any satellite’s footprint could be easily analyzed by asilib.

For this example we use the satellite’s location in LLA coordinates with time stamps that line up with the ASI times. In reality, the satellite and ASI time stamps are unlikely to line up, so you’ll need to align the satellite’s and ASI’s time stamps.

Our analysis consists of three main steps:

1) Trace the satellite’s position along the magnetic field line to 110 km using asilib.lla2footprint().

2) Locate the satellite’s footprint in the imager’s field of view (azimuth and elevation coordinates) using asilib.lla2azel().

3) Calculate the auroral intensity surrounding the satellite’s footprint. We create a 20 × 20 km area mask using asilib.equal_area() and use it to calculate the mean ASI intensity as a function of time (and satellite position).

These steps are implemented in the “Figure 4” section of the asilib_figures notebook.

FIGURE 4
www.frontiersin.org

FIGURE 4. A conjunction montage of Supplementary Video S2. Panels (AD) shows the auroral arc evolution and the satellite’s location. The red line is the satellite track and the red dot is its instantaneous position. The yellow quadrilateral bounds the pixels inside the 20 × 20 km area surrounding the satellite’s 110 km altitude footprint. Lastly, panel (E) shows the mean auroral intensity, as a function of time, and inside the yellow quadrilaterals. When the satellite passed through the arc between 2:33:30 and 2:34:15, the mean auroral intensity correspondingly intensified.

Supplementary Video S2 shows the result of this conjunction analysis and Figure 4 shows a four-frame montage summarizing the animation. Figures 4A–D show the fisheye lens images at the annotated time stamps. The satellite’s footprint path is represented by the red line and the instantaneous footprint by the red dot. The yellow areas show the 20 × 20 km area around the footprint. And lastly, Figure 4E shows the mean auroral intensity time series—clearly showing the auroral arc intensity between 2:33:30 and 2:34:15.

4 Quality assurance

We developed AuroraX, PyAuoraX, and aurora-asi-lib with usability, reliability, and maintainability at the forefront. Documentation is critically important to the survival and usability of software. The AuroraX documentation is hosted at https://docs.aurorax.space/and the asilib documentation at https://aurora-asi-lib.readthedocs.io/. There you will find installation instructions, examples, comprehensive tutorials, and API references.

The source code for AuroraX, PyAuroraX, and asilib is open source and hosted on GitHub. The two Python libraries are also cataloged on Zenodo and can be installed from the Python Packaging Index (PyPI; install using the pip command). On GitHub you can submit an Issue for bugs or feature requests, and contribute with a Pull Request.

To ensure code stability, the codebases for both Python libraries include tests suites that you can run locally and are automatically executed using GitHub Actions every time a change is pushed to the repository. These comprehensive tests check and warn of any software bugs or changes in function behaviour over the course of further development and maintenance.

5 Conclusion

The AuroraX website, PyAuroraX, and aurora-asi-lib tools provide the auroral science community with a simple and robust set of analysis tools to enable system-level auroral science. As we demonstrated, these tools provide an end-to-end analysis solution for using auroral data. We described one such solution: to identify and analyze conjunctions. We showed how you can use the AuroraX Conjunction Search website or PyAuroraX to identify and filter conjunctions between a number of ASIs and spacecraft. We then use aurora-asi-lib to quantify the auroral intensity at the satellite’s footprint during a conjunction. This example is just one way that AuroraX can help you quickly sift through an immense volume of ASI data to uncover new physics in a significantly less amount of time than was previously possible.

In the near future we will expand AuroraX’s data repository by including more ASI arrays, satellites, and informative metadata filters. Furthermore, TREx and other ASIs will be added to aurora-asi-lib by the current development team and the community. The continued success and usability of AuroraX depends on community contributions. We encourage an open science approach, and look forward to working more broadly within the auroral research community.

Data availability statement

The original contributions presented in the study are included in the article/Supplementary Material, further inquiries can be directed to the corresponding author.

Author contributions

ED, ES, and DC designed and developed the AuroraX platform and PyAuroraX. AH, KM, and IT assisted MS with developing aurora-asi-lib. MS, BG-L, DC, and ED wrote the manuscript. ED, ES, and DC provided the THEMIS and REGO ASI data and expertise. All authors contributed to manuscript revision, read, and approved the submitted version

Funding

MS and BG-L acknowledge the support provided by the NASA Postdoctoral Program at the NASA’s Goddard Space Flight Center, administered by Oak Ridge Associated Universities under contract with NASA. BG-L was also supported by the NASA competed Internal Scientist Funding Model (ISFM) on Mesoscale Magnetospheric Dynamic. AH was supported in part by the Goddard ISFM which funds the Space Precipitation Impacts team with grant HISFM21. ED, ES, and DC acknowledge the AuroraX funding sources: the Canadian Foundation for Innovation (CFI), the Province of Alberta, the Technical University of Denmark (DTU, Swarm DISC Program), and the Canadian Space Agency.

Acknowledgments

The authors acknowledge all of the scientists, technicians, and engineers who designed, built, and maintain these ASI arrays. The UCalgary team acknowledges the AuroraX, REGO ASI and THEMIS ASI funding agencies and thanks them for their continued support. The UCalgary team also acknowledges the University of Alberta and RGP Consulting for their work on AuroraX.

Conflict of interest

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

The reviewer VK declared a shared affiliation with the authors MS, BG-L, and AH to the handling editor at the time of review.

Publisher’s note

All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.

Supplementary material

The Supplementary Material for this article can be found online at: https://www.frontiersin.org/articles/10.3389/fspas.2022.1009450/full#supplementary-material

References

Akasofu, S.-I. (1964). The development of the auroral substorm. Planet. Space Sci. 12, 273–282. doi:10.1016/0032-0633(64)90151-5

CrossRef Full Text | Google Scholar

Angelopoulos, V., McFadden, J. P., Larson, D., Carlson, C. W., Mende, S. B., Frey, H., et al. (2008). Tail reconnection triggering substorm onset. Science 321, 931–935. doi:10.1126/science.1160495

PubMed Abstract | CrossRef Full Text | Google Scholar

Boscher, D., Bourdarie, S., O’Brien, P., Guild, T., Shumko, M., and Brunet, A. (2012). Irbem-lib library. doi:10.5281/zenodo.6867552

CrossRef Full Text | Google Scholar

Burch, J. (2000). Image mission overview. IMAGE mission 1–14, 1–14. doi:10.1007/978-94-011-4233-5_1

PubMed Abstract | CrossRef Full Text | Google Scholar

Clausen, L. B. N., and Nickisch, H. (2018). Automatic classification of auroral images from the oslo auroral themis (oath) data set using machine learning. J. Geophys. Res. Space Phys. 123, 5640–5647. doi:10.1029/2018JA025274

CrossRef Full Text | Google Scholar

Donovan, E., Mende, S., Jackel, B., Frey, H., Syrjäsuo, M., Voronkov, I., et al. (2006a). The themis all-sky imaging array—System design and initial results from the prototype imager. J. Atmos. Solar-Terrestrial Phys. 68, 1472–1487. doi:10.1016/j.jastp.2005.03.027

CrossRef Full Text | Google Scholar

Donovan, E., Mende, S., Jackel, B., Syrjäsuo, M., Meurant, M., Voronkov, I., et al. (2006b). The azimuthal evolution of the substorm expansive phase onset auror. Proc. 8th Int. Conf. Substorms 8, 55–60.

Google Scholar

FFmpeg Developers (2022). Ffmpeg tool. Available at: https://ffmpeg.org/ (Accessed 02 10, 2022).

Google Scholar

Friis-Christensen, E., Lühr, H., and Hulot, G. (2006). Swarm: A constellation to study the earth’s magnetic field. Earth Planets Space 58, 351–358. doi:10.1186/bf03351933

CrossRef Full Text | Google Scholar

Grono, E., Donovan, E., and Murphy, K. R. (2017). Tracking patchy pulsating aurora through all-sky images. Ann. Geophys. 35, 777–784. doi:10.5194/angeo-35-777-2017

CrossRef Full Text | Google Scholar

Jones, S., Lessard, M., Rychert, K., Spanswick, E., Donovan, E., and Jaynes, A. (2013). Persistent, widespread pulsating aurora: A case study. JGR. Space Phys. 118, 2998–3006. doi:10.1002/jgra.50301

CrossRef Full Text | Google Scholar

Liang, J., Donovan, E., Jackel, B., Spanswick, E., and Gillies, M. (2016). On the 630 nm red-line pulsating aurora: Red-line emission geospace observatory observations and model simulations. J. Geophys. Res. Space Phys. 121, 7988–8012. doi:10.1002/2016ja022901

CrossRef Full Text | Google Scholar

MacDonald, E. A., Donovan, E., Nishimura, Y., Case, N. A., Gillies, D. M., Gallardo-Lacourt, B., et al. (2018). New science in plain sight: Citizen scientists lead to the discovery of optical structure in the upper atmosphere. Sci. Adv. 4, eaaq0030. doi:10.1126/sciadv.aaq0030

PubMed Abstract | CrossRef Full Text | Google Scholar

Machol, J. L., Green, J. C., Redmon, R. J., Viereck, R. A., and Newell, P. T. (2012). Evaluation of ovation prime as a forecast model for visible aurorae. Space weather. 10, 746. doi:10.1029/2011SW000746

CrossRef Full Text | Google Scholar

Mende, S., Harris, S., Frey, H., Angelopoulos, V., Russell, C., Donovan, E., et al. (2009). “The themis array of ground-based observatories for the study of auroral substorms,” in The THEMIS mission (Springer), 357.

CrossRef Full Text | Google Scholar

Newell, P. T., Sotirelis, T., and Wing, S. (2010). Seasonal variations in diffuse, monoenergetic, and broadband aurora. J. Geophys. Res. 115. doi:10.1029/2009JA014805

CrossRef Full Text | Google Scholar

Nishimura, Y., Lyons, L., Zou, S., Angelopoulos, V., and Mende, S. (2010). Substorm triggering by new plasma intrusion: Themis all-sky imager observations. J. Geophys. Res. 115, 5166. doi:10.1029/2009ja015166

CrossRef Full Text | Google Scholar

Rostoker, G., Samson, J., Creutzberg, F., Hughes, T., McDiarmid, D., McNamara, A., et al. (1995). Canopus—A ground-based instrument array for remote sensing the high latitude ionosphere during the istp/ggs program. Space Sci. Rev. 71, 743–760. doi:10.1007/bf00751349

CrossRef Full Text | Google Scholar

Shepherd, S. (2014). Altitude-adjusted corrected geomagnetic coordinates: Definition and functional approximations. J. Geophys. Res. Space Phys. 119, 7501–7521. doi:10.1002/2014ja020264

CrossRef Full Text | Google Scholar

Starck, J.-L., and Murtagh, F. (2007). Astronomical image and data analysis. Berlin, Germany: Springer.

Google Scholar

Zhong, Y., Ye, R., Liu, T., Hu, Z., and Zhang, L. (2020). Automatic aurora image classification framework based on deep learning for occurrence distribution analysis: A case study of all-sky image data sets from the yellow river station. J. Geophys. Res. Space Phys. 125, e2019JA027590. doi:10.1029/2019JA027590

CrossRef Full Text | Google Scholar

Keywords: THEMIS, REGO, aurora, all-sky-imager, python, conjunction

Citation: Shumko M, Chaddock D, Gallardo-Lacourt B, Donovan E, Spanswick EL, Halford AJ, Thompson I and Murphy KR (2022) AuroraX, PyAuroraX, and aurora-asi-lib: A user-friendly auroral all-sky imager analysis framework. Front. Astron. Space Sci. 9:1009450. doi: 10.3389/fspas.2022.1009450

Received: 01 August 2022; Accepted: 08 September 2022;
Published: 26 September 2022.

Edited by:

K.-Michael Aye, Freie Universität Berlin, Germany

Reviewed by:

Aleksandar Valjarević, University of Belgrade, Serbia
Virginia Kalb, National Aeronautics and Space Administration (NASA), United States

Copyright © 2022 Shumko, Chaddock, Gallardo-Lacourt, Donovan, Spanswick, Halford, Thompson and Murphy. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.

*Correspondence: M. Shumko, msshumko@gmail.com

Download