Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cchandre/vm15d
Hamiltonian fluid reduction of the 1.5D Vlasov-Maxwell equations
https://github.com/cchandre/vm15d
fluid-simulation fluid-solver hamiltonian kinetic-modeling mathematica matlab numpy plasma-physics python3 scipy vlasov-equation vlasov-solver
Last synced: 2 days ago
JSON representation
Hamiltonian fluid reduction of the 1.5D Vlasov-Maxwell equations
- Host: GitHub
- URL: https://github.com/cchandre/vm15d
- Owner: cchandre
- License: bsd-2-clause
- Created: 2021-04-29T16:03:23.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-09-27T16:03:06.000Z (over 2 years ago)
- Last Synced: 2024-11-10T21:11:46.382Z (2 months ago)
- Topics: fluid-simulation, fluid-solver, hamiltonian, kinetic-modeling, mathematica, matlab, numpy, plasma-physics, python3, scipy, vlasov-equation, vlasov-solver
- Language: Mathematica
- Homepage:
- Size: 2.12 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VM15D : Hamiltonian fluid reduction of the 1.5D Vlasov-Maxwell equations
- **VM15D.nb**: [Mathematica notebook] checks the Jacobi identity and the Casimir invariants for the bracket Bracket[F,G] given by Eq. (6) of the article *Hamiltonian fluid reduction of the 1.5D Vlasov-Maxwell equations* by C. Chandre and B.A. Shadwick
- **GrowthRates.mlx**: [Matlab livescript] computes the growth rates for the linearized equations of motion near a homogeneous equilibrium. It reproduces the figures of the article *Hamiltonian fluid reduction of the 1.5D Vlasov-Maxwell equations* by C. Chandre and B.A. Shadwick
- `VM15D python code`
- [`VM15D_dict.py`](https://github.com/cchandre/VM15D/blob/main/VM15D_dict.py): to be edited to change the parameters of the VM15D computation (see below for a dictionary of parameters)- [`VM15D.py`](https://github.com/cchandre/VM15D/blob/main/VM15D.py): contains the VM15D class and main functions (not to be edited)
- [`VM15D_modules.py`](https://github.com/cchandre/VM15D/blob/main/VM15D_modules.py): contains the methods to run VM15D (not to be edited)
- Once [`VM15D_dict.py`](https://github.com/cchandre/VM15D/blob/main/VM15D_dict.py) has been edited with the relevant parameters, run the file as
```sh
python3 VM15D.py
```
- NB: in case of error, check your version of the python modules used in the code (see [`modules_version.txt`](https://github.com/cchandre/VM15DD/blob/main/modules_version.txt))___
## Parameter dictionary for VM15D- *Tf*: double; duration of the integration (in units of *ωp-1*)
- *alpha*: double; value of the parameter *α* of the closure
- *lam*: double; value of the parameter *λ* of the closure
- *integrator_kinetic*: string ('position-Verlet'); choice of solver for the integration of the Vlasov equation
- *nsteps*: integer; number of steps in one period of plasma oscillations (1/*ωp*) for the integration of the Vlasov equation
- *integrator_fluid*: string ('RK45', ‘RK23’, ‘DOP853’, ‘BDF’, ‘LSODA’); choice of solver for the integration of the fluid equation
- *precision*: double; numerical precision of the integrator for the fluid equations; threshold for the Fourier transforms
- *n_casimirs*: integer; number of Casimir invariants to be monitored- *Lz*: double; the *z*-axis is (-*Lz*, *Lz*)
- *Lvx*: double; the *vx*-axis is (-*Lvx*, *Lvx*)
- *Lvz*: double; the *vz*-axis is (-*Lvz*, *Lvz*)
- *Nz*: integer; number of points in *z* to represent the field variables
- *Nvx*: integer; number of points in *vx* to represent the field variables
- *Nvz*: integer; number of points in *vz* to represent the field variables
- *f_init*: lambda function; initial distribution *f*(*z*,*vx*,*vz*,*t*=0)- *Kinetic*: list of strings in ['Compute', 'Plot']; list of instructions for the 1.5D Vlasov-Maxwell simulation
- *Fluid*: list of strings in ['Compute', 'Plot']; list of instructions for the fluid simulation; if contains 'Save', the results are saved in a `.mat` file- *darkmode*: boolean; if True, plots are done in dark mode
- *tqdm_display*: boolean; if True, displays a progress bar in the terminal---
Reference: C. Chandre, B.A. Shadwick, *Hamiltonian fluid reduction of the 1.5D Vlasov–Maxwell equationsn*, [Physics of Plasmas](https://doi.org/10.1063/5.0056155) 28, 092114 (2021); [arXiv:2105.03194](https://arxiv.org/abs/2105.03194)```bibtex
@article{chandre2021,
title = {Hamiltonian fluid reduction of the 1.5D Vlasov–Maxwell equations},
author = {Chandre, C. and Shadwick, B.A.},
journal = {Physics of Plasmas},
volume = {28},
number = {9},
pages = {092114},
year = {2021},
doi = {10.1063/5.0056155},
URL = {https://doi.org/10.1063/5.0056155}
}
```
For more information: