Data from: Plasma refilling of the lunar wake: Plasma-vacuum interactions, electrostatic shocks, and electromagnetic instabilities
Data files
Jul 07, 2025 version files 160.46 GB
-
data.file
160.41 GB
-
README.md
5.52 KB
-
scripts.file
48.66 MB
Abstract
A plasma void forms downstream of the Moon when the solar wind impacts the lunar surface. This void gradually refills as the solar wind passes by, forming the lunar wake. We investigate this refilling process using a fully kinetic particle-in-cell (PIC) simulation. The early stage of refilling follows plasma-vacuum interaction theory, characterized by exponential decay of plasma density into the wake, along with ion acceleration and cooling in the expansion direction. Our PIC simulation confirms these theoretical predictions. In the next stage of the refilling process, the counter-streaming supersonic ion beams collide, generating Debye-scale electrostatic shocks at the wake's center. These shocks decelerate and thermalize the ion beams while heating electrons into flat-top velocity distributions along magnetic field lines. Additionally, fast magnetosonic waves undergo convective growth via anomalous cyclotron resonance as they co-propagate with temperature-anisotropic ion beams toward the wake's center. Electromagnetic ion cyclotron waves may also be excited through normal cyclotron resonance, counter-propagating with these anisotropic ion beams. Our findings provide new insights into the kinetic aspects of lunar wake refilling and may enhance interpretation of spacecraft observations. The accompanying dataset comprises PIC simulation results organized into raw data files and analysis scripts. Field data on spatial grids are archived as .gda files, while particle data on phase space grids are stored as .bin files in the "data" directory. Jupyter notebooks in the "scripts" directory provide analysis pipelines for reproducing all figures in our study. Each notebook demonstrates complete workflows for data processing and visualization, with detailed notebook-to-data correspondence documented in the README file to ensure full reproducibility.
Overview
This dataset contains particle-in-cell (PIC) simulation results for studying lunar wake refilling processes. After downloading and extracting the dataset, you will find two main directories:
data/
- Raw simulation data filesscripts/
- Jupyter notebooks for analysis and visualization
Data Structure
Raw Data Files: data.file (data/directory)
The raw data consists of two types:
- Field data (
.gda
files): Electromagnetic fields and plasma quantities defined on spatial grids - Particle data (
.bin
files): Ion and electron distributions defined on phase space grids
Analysis Scripts: scripts.file (scripts/directory)
Each Jupyter notebook reproduces specific figures from our paper and demonstrates complete analysis workflows. The notebooks are self-contained and include all necessary data processing and visualization code.
Notebook-to-Data Mapping
Jupyter Notebook | Description | Required Data Files |
---|---|---|
prod_tjoin_density.ipynb | Plot plasma density as a function of space and time | rhoi.gda, rhoe.gda |
prod_theory_PIC_comparison.ipynb | Compare plasma moments from PIC simulation to self-similar theory | rhoi.gda, rhoe.gda, pix.gda, pex.gda, ti-xx.gda, te-xx.gda, jix.gda, jex.gda |
prod_theory_PIC_Efield.ipynb | Compare electric field from PIC simulation to self-similar theory | ex.gda |
prod_theory.ipynb | Plot plasma moments from self-similar theory | None (theoretical calculations only) |
prod_ps.ipynb | Plot ion and electron phase space distributions | Hxvx.*.bin, exvx.*.bin |
prod_tjoin_Efield.ipynb | Plot electric field as a function of space and time | ex.gda |
prod_wave_ps.ipynb | Analyze early-phase excitation of ion acoustic waves and electrostatic shocks | ex.gda, Hxvx.*.bin |
prod_wave_ps2.ipynb | Analyze late-phase excitation of ion acoustic waves and electrostatic shocks | ex.gda, Hxvx.*.bin |
prod_tjoin_ps.ipynb | Analyze energy conversion across electrostatic shocks during initial phase | ex.gda, Hxvx.*.bin, exvx.*.bin |
prod_tjoin_ps2.ipynb | Analyze energy conversion across electrostatic shocks during early phase | ex.gda, Hxvx.*.bin, exvx.*.bin |
prod_tjoin_ps3.ipynb | Analyze energy conversion across electrostatic shocks during late phase | ex.gda, Hxvx.*.bin, exvx.*.bin |
prod_vcl.ipynb | Analyze ion velocity distribution in parallel and perpendicular velocity space | Hxvcl.*.bin |
prod_wave.ipynb | Analyze propagation characteristics of ion acoustic waves and electrostatic shocks | ex.gda |
prod_wave2.ipynb | Analyze propagation characteristics of magnetosonic waves | by.gda, bz.gda |
Note: The wildcard *
in filenames represents simulation time steps encoded in the data files.
Additional Files
ReadFile.py
- Python library for reading.gda
and.bin
data filesplt_style.txt
- Matplotlib style configuration for consistent plot formatting
Requirements
To run the Jupyter notebooks, you need the following Python packages:
numpy
scipy
matplotlib
jupyter
Install using: pip install numpy scipy matplotlib jupyter
Getting Started
- Ensure all required Python packages are installed
- Navigate to the
scripts/
directory - Launch Jupyter:
jupyter notebook
- Open any notebook to begin analysis
- Each notebook will automatically load the corresponding data files from the
data/
directory
Data File Naming Convention
- Proton data: Prefixed with
H
(e.g.,Hxvx
) - Electron data: Prefixed with
e
(e.g.,exvx
) - Field data: Named by component (e.g.,
ex
,by
,bz
) - Density:
rhoi
(ions),rhoe
(electrons) - Fluid Momentum:
pix
,pex
(ion/electron x-component) - Temperature:
ti-xx
,te-xx
(ion/electron xx-component) - Current:
jix
,jex
(ion/electron x-component)