Creating a benchmark set of CME measurements for CME progation model validation
Coronal Mass Ejections (CMEs) are immense clouds of charged particles emitted from the sun. When a CME reaches Earth or a spacecraft, it can negatively affect power grids, electronics, radio communications and GPS.
Predicting where a CME will arrive and the severity of its impact can help offset these effects. Several models exist to simulate CME propagation thoughout the solar system, but there is currently no common set of simulation input parameters. This makes it challenging to determine whether a given model’s performance is due to its CME input parameters or its model settings.
To aid in solving this problem we have created eUCLID: the Universal CME modeL Input Dataset. This catalogue of historical CME parameter measurements is intended to be used as inputs to CME propagation models in validation efforts.
GCS is a geometrical model designed by A. Thernisien to duplicate the flux rope shape of CMEs. Below is a figure of the shape of the GCS model.
eUCLID uses the GCS model for all CME measurements. This is because:
- GCS is more complex than other models (it has more parameters to fit) which means that there is more detail about the CME.
- other models (such as the ice-cream cone model or lemniscate) can be derived from the GCS model which means that modelers can take the parameters from GCS and derive lemniscate parameters.
The following are the parameters which define the GCS geometrical model of a CME
- Velocity – Speed of CME
- ROT – A representation of the orientation of the CME’s long axis
- Lon – Longitude (in Stonyhurst) describing the direction of the CME
- Lat – Latitude describing the direction of the CME
- Ratio – A quantity describing how thick the CME is. Similar to the aspect ratio of an ellipse
- Half Angle – An angle describing how wide the CME is
A text file containing a pandas DataFrame containing average time, longitude, latitude, tilt angle, velocity, ascpect ratio, half angle, and time at 21.5 solar radii for historical CMEs. These parameters can be used as inputs into CME propagation models for validation purposes.
A python module which contains all of the functions used in the repository. Import croissant as such for style consistency:
import croissant as cr
A python script which creates/updates eUCLID. In addition, gcs_analysis.py will calculate the spread in measurements of the same CME and saves these results as histograms and scatterplots in a path named "figdir" which must be defined on line 8 of gcs_analysis.py. This is useful in understanding the errors in the CME measurement process, and getting a sense of how accurate the measurements used are.
A folder with the tools to find 2011 historic CMEs which are suitable for measusurement and useable for eUCLID.
UseableCMEs.py is a python script that searches the 2011 CME catalog files to find the CMEs that fit the criteria.
The univ11 txt files are from the SOHO LASCO CME CATALOG at: https://cdaw.gsfc.nasa.gov/CME_list/. This catalog contains all CMEs manually identified through LASCO C2 and C3.
all_cmes_400.txt and all_cmes_500.txt are lists of CMEs from 2011 that fit specific criteria. In the case of all_cmes_400.txt, it is all the CMEs that have a half-width of greater than 30 degrees and were measured with a speed of greater than 400 km/s. In the case of all_cmes_500.txt, it is all the CMEs that have a half-width of greater than 50 degrees and were measured with a speed of greater than 500 km/s.
List of Carrington rotation start times, in seconds since the beginning of the unix epoch. Used for conversion from Carrington coordinates to Stonyhurst coordinates.
A series of folders containing GCS output files. gcs_analysis.py draws from these folders to create eUCLID.
Check out the Wiki to figure out how to make and submit GCS measurements for eUCLID.
For model validation purposes the most important file is eUCLID.txt. The contents of that table will serve as the inputs for CME propogation models. Note: Half angle in eUCLID is not the same as half width. Half angle is a quality as described in this paper by A. Thernisien. Half width can be calculated using half angle and ratio.
This repository could also be used to analyze other GCS measurements of CMEs. To do this download croissant.py and recreate the file structure in the data folder. Use make_eUCLID() from croissant to create a pandas DataFrame containing the averaged measurements of each CME. make_eUCLID() also outputs a different DataFrame which has all of the measurements of all of the CMEs. This DataFrame can be used to measure the spread in measurements for the different parameters. This information can assist in understanding the error involved in GCS measurement process. The easiest way to find this info is to run gcs_analysis.py, which will produce helpful histograms and scatter plots.
Please send any questions or comments regarding the code in this repository to Keyan Gootkin.
-
Keyan Gootkin – Keyan.Gootkin@NASA.gov or goot1024@uw.edu – Twitter: @KeyanGootkin
-
M. Crawford - m.crawford.velez@gmail.com
-
Rachel Broemmelsiek - rbroemme@terpmail.umd.edu
-
Austin Skipper - skippera22@mail.wlu.edu
-
Jinkoo Yim - jinkooyim@gmail.com
Distributed under the MIT license. See LICENSE.txt
for more information.