Similarly to the cosmic ray physics, the topic is closely related to the activities of IEP. The lesson is planned to work with data from the Parker Solar Probe mission. The students should be introduced in methods of acquiring and reading the mission’s data. They should be able to visualize and understand them on a basic level. The discussed topics will include dependence of solar wind from helioaltitude, dynamic pressure, and others.
- All files are available in the git repository stored in the faculty’s Gitlab server.
- The address of the project is the following:
- Task #1 Study structure of available data
We will make a 3D solar wind map from Solar Wind Electrons Alphas and Protons(SWEAP) instrument data. We can take a look at the description of instruments on the Parker Solar Probe. Only L2 and L3 data are available from the SWEAP instrument. For this exercise, we will use data from the SPAN-Electron instrument. Your first task is to:
- Study L3 SWEAP data.
- Find a field that represents Particle energies and write down its name, you will need it for Task #2.
- Find a field that represents Differential Energy Flux and write down its name, you will need it for Task #2.
- Look at the solar_probe_distance.csv file in the data folder. These data are derived from Heliocentric trajectories for the Parker Solar Probe. Study them as well.
- Study L3 SWEAP data.
- Task #2 Visualize a 3D chart of solar wind spectra
Firstly we have to choose a time interval for our visualization. In the folder data, you can find already downloaded and prepared files from July 2020 and solar_probe_distance.csv file with predefined positions of Parker Solar Probe. Each .cdf (Common Data Format – more information about it here) file represents data measured on that specific day.
- Subtask #1 Open helio_exam.ipynb and familiarize yourself with available source code.
- Subtask #2 Fill the missing fields during access to data from Solar Probe
In Task #1 you found names of the fields in the documentation. Apply them to CDF structure in source code.
- Subtask #3 Calculate summary spectrum for every day
Each .cdf file contains energetic spectrums measured during that day. For calculating spectrum from one day the best way is to summarize them(you can use vstack function from NumPy).
- Subtask #4 Add data to the 3D plot
Add the sum calculated in the previous subtask to the z-axis. Add Particle energies from .cdf file to the x-axis. Add RAD_AU from the .csv file to the y-axis(it is needed to be the same size of the spectrum – 32 items, you can use the .full function from NumPy).
- Subtask #5 Use logarithmic scaling on the 3D chart
Logarithmic scaling in a 3D chart in matplotlib is not an essential task. Use the log function and already defined formatter function to the logarithmic scale of all axes in the chart.
- Subtask #6 Add units to chart labels
Every chart should have units in its labels. Add units to the labels. Use documentation from Task #1.
- Task #3 Visualize projection of 3D chart
For a better overview of the chart, we can project every axis to the 2D chart. Project every axis to the prepared 2D charts. Do not forget, scaling in 2D charts does not need log functions and formatters.
- Task #4 Filter incorrect spectrums
As you can see in the 3D chart and its visualizations, it’s clear that some spectrums are not entirely correct. Find a solution how to filter these spectrums. However, this filter cannot be applied to every spectrum on any day. Energy spectra depend on magnetic storms and solar eruptions.
- Task #5 Visualize trajectory of Solar Probe
In solar_probe_distance.csv you have distance from the Sun in a given day and Solar Ecliptic coordinates. Visualize the trajectory of the solar probe during July 2020 (data in the .csv file are only from July 2020) in any acceptable form.