---
# System prepended metadata

title: Use cases for plasma simulation
tags: [simulation]

---

---
tags: simulation
---

# Use cases for plasma simulation

<!---
Please add your name to the author list for when we add it to Zenodo, and link to your ORCID if you have one.  Thanks!
--->

**Authors**: ..., [Nicholas A. Murphy](https://orcid.org/0000-0001-6628-8033), ...

This document is a place for the PlasmaPy Community to compile use cases for plasma simulation. 

This document is being written under the [Creative Commons Attribution 4.0 International license (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/) and will eventually be uploaded to the [PlasmaPy Community on Zenodo](https://zenodo.org/communities/plasmapy).
Afterwards this document can be used as an open community resource to develop a software requirements specification and a prototype software architecture.

## Use cases

### A benchmark between a fluid code & a PIC code

As a researcher, I want to perform a benchmark between a multi-fluid code and a particle-in-cell (PIC) code to understand the differences between the models/approximations when studying magnetic reconnection in a partially ionized plasma (e.g., [Jara-Almonte et al. 2021](https://doi.org/10.1063/5.0039860)).

 - I want to set up the same ICs, BCs, and comuptational domain for both numerical methods.
 - I want to convert from one set of normalizations to the other, and to physical units.
 - I want to turn different terms in the system of equations on and off.
 - I want to extract the reconnection rate from both codes.
 - I want to plot the magnetic flux from both codes.

### Molecular Dynamics

Coulomb is a long range interaction as such it requires specific algorithms. Some of these are PPPM, FMM, MEMD

- Particle-Particle Particle-Mesh (PPPM, P3M) requires the specification of nine parameters. 
- Fast-Multipole Methods (FMM) see FMM3D 
- Maxwells' Equation Molecular Dynamics (MEMD)
- Path-Integral Molecular Dynamics (PIMD)

A Simulation could help in the setting up an MD simulation by

- helping in the decision of algorithms' parameters. Some might be hardware dependent
- outputing an input file for MD runs. This is dependent on the MD software (Sarkas, LAMMPS, HOOMD)

In addition, a simulation package could fit previously run simulations to predict the desired observables. Example, we have many simulation on the static properties of the OCP. A user does not need to rerun another simulation, instead, they could use the Simulation package to 

- find the previously run simulation
- interpolate previous runs to obtain their observable


### Ultracold Neutral Plasmas and MD

### Dusty Plasmas

<!--- Ask Ed Thomas for help! --->

### Uncertainty Quantification

<!--- Run sims to see, e.g., how much does changing temperature by 3 degrees change the results?  Avoid need to manually set up separate namelists to run a grid of simulations.
--->
This might require an extensive database of simulations' outputs from which we can extract information. The Simulation package could help predict the simulation's parameters by running some ML code on the dataset.

### Topological analysis during magnetic reconnection

The magnetic skeleton of a plasma includes the null points, the spine field lines that asymptotically approach null points, the fan surfaces of field lines that approach/go away from null points, and the separator field lines that are the intersection of two fans. (← improve descriptions).  As a researcher, ...

- I want to run a 3D simulation of magnetic reconnection.  This simulation could be fluid, multi-fluid, and/or PIC.
- I want to find 3D magnetic null points (e.g., Greene 1992ish, Haynes & Parnell 2007ish).
- I want to classify 3D magnetic null points (e.g., Parnell et al. 1995ish)
- I want to make a movie of the magnetic skeleton over time.
- I want to quantify the reconnection rate.  ← which method?


### Optimizing yields from inertially confined plasmas

<!--- applications like from ML mini-conference --->

### Homework problem on plasma waves

As an educator, I teach an undergraduate introductory course on plasma physics and a graduate course on plasma waves.

 - I want to assign a homework problem to simulate and visualize a shear Alfvén wave, a fast magnetosonic wave, and a slow magnetosonic wave in a uniform 2D plasma.

<!--- Gkeyll example gallery problems like https://gkeyll.readthedocs.io/en/latest/quickstart/vlasovExample1.html  --->

<!--- Sarkas example problems https://murillo-group.github.io/sarkas/examples/examples.html --->


## References

- 
