The Pencil Code, a modular MPI code for partial differential equations and particles: multipurpose and multiuser-maintained
Research output: Contribution to journal › Journal article › Research › peer-review
Standard
The Pencil Code, a modular MPI code for partial differential equations and particles : multipurpose and multiuser-maintained. / Brandenburg, Axel; Johansen, Anders; Bourdin, Philippe A.; Dobler, Wolfgang; Lyra, Wladimir; Rheinhardt, Matthias; Bingert, Sven; Haugen, Nils Erland L.; Mee, Antony; Gent, Frederick; Babkovskaia, Natalia; Yang, Chao-Chin; Heinemann, Tobias; Dintrans, Boris; Mitra, Dhrubaditya; Candelaresi, Simon; Warnecke, Jörn; Käpylä, Petri J.; Schreiber, Andreas; Chatterjee, Piyali; Käpylä, Maarit J.; Li, Xiang-Yu; Krüger, Jonas; Aarnes, Jørgen R.; Sarson, Graeme R.; Oishi, Jeffrey S.; Schober, Jennifer; Plasson, Raphaël; Sandin, Christer; Karchniwy, Ewa; Rodrigues, Luiz Felippe S.; Hubbard, Alexander; Guerrero, Gustavo; Snodin, Andrew; Losada, Illa R.; Pekkilä, Johannes; Qian, Chengeng.
In: The Journal of Open Source Software, Vol. 6, No. 58, 2807, 2021.Research output: Contribution to journal › Journal article › Research › peer-review
Harvard
APA
Vancouver
Author
Bibtex
}
RIS
TY - JOUR
T1 - The Pencil Code, a modular MPI code for partial differential equations and particles
T2 - multipurpose and multiuser-maintained
AU - Brandenburg, Axel
AU - Johansen, Anders
AU - Bourdin, Philippe A.
AU - Dobler, Wolfgang
AU - Lyra, Wladimir
AU - Rheinhardt, Matthias
AU - Bingert, Sven
AU - Haugen, Nils Erland L.
AU - Mee, Antony
AU - Gent, Frederick
AU - Babkovskaia, Natalia
AU - Yang, Chao-Chin
AU - Heinemann, Tobias
AU - Dintrans, Boris
AU - Mitra, Dhrubaditya
AU - Candelaresi, Simon
AU - Warnecke, Jörn
AU - Käpylä, Petri J.
AU - Schreiber, Andreas
AU - Chatterjee, Piyali
AU - Käpylä, Maarit J.
AU - Li, Xiang-Yu
AU - Krüger, Jonas
AU - Aarnes, Jørgen R.
AU - Sarson, Graeme R.
AU - Oishi, Jeffrey S.
AU - Schober, Jennifer
AU - Plasson, Raphaël
AU - Sandin, Christer
AU - Karchniwy, Ewa
AU - Rodrigues, Luiz Felippe S.
AU - Hubbard, Alexander
AU - Guerrero, Gustavo
AU - Snodin, Andrew
AU - Losada, Illa R.
AU - Pekkilä, Johannes
AU - Qian, Chengeng
PY - 2021
Y1 - 2021
N2 - The Pencil Code is a highly modular physics-oriented simulation code that can be adapted to a wide range of applications. It is primarily designed to solve partial differential equations (PDEs) of compressible hydrodynamics and has lots of add-ons ranging from astrophysical magnetohydrodynamics (MHD) (A. Brandenburg & Dobler, 2010) to meteorological cloud microphysics (Li et al., 2017) and engineering applications in combustion (Babkovskaia et al., 2011). Nevertheless, the framework is general and can also be applied to situations not related to hydrodynamics or even PDEs, for example when just the message passing interface or input/output strategies of the code are to be used. The code can also evolve Lagrangian (inertial and noninertial) particles, their coagulation and condensation, as well as their interaction with the fluid. A related module has also been adapted to perform ray tracing and to solve the eikonal equation.The code is being used for Cartesian, cylindrical, and spherical geometries, but further extensions are possible. One can choose between different time stepping schemes and different spatial derivative operators. High-order first and second derivatives are used to deal with weakly compressible turbulent flows. There are also different diffusion operators to allow for both direct numerical simulations (DNS) and various types of large-eddy simulations (LES).
AB - The Pencil Code is a highly modular physics-oriented simulation code that can be adapted to a wide range of applications. It is primarily designed to solve partial differential equations (PDEs) of compressible hydrodynamics and has lots of add-ons ranging from astrophysical magnetohydrodynamics (MHD) (A. Brandenburg & Dobler, 2010) to meteorological cloud microphysics (Li et al., 2017) and engineering applications in combustion (Babkovskaia et al., 2011). Nevertheless, the framework is general and can also be applied to situations not related to hydrodynamics or even PDEs, for example when just the message passing interface or input/output strategies of the code are to be used. The code can also evolve Lagrangian (inertial and noninertial) particles, their coagulation and condensation, as well as their interaction with the fluid. A related module has also been adapted to perform ray tracing and to solve the eikonal equation.The code is being used for Cartesian, cylindrical, and spherical geometries, but further extensions are possible. One can choose between different time stepping schemes and different spatial derivative operators. High-order first and second derivatives are used to deal with weakly compressible turbulent flows. There are also different diffusion operators to allow for both direct numerical simulations (DNS) and various types of large-eddy simulations (LES).
U2 - 10.21105/joss.02807
DO - 10.21105/joss.02807
M3 - Journal article
VL - 6
JO - The Journal of Open Source Software
JF - The Journal of Open Source Software
SN - 2475-9066
IS - 58
M1 - 2807
ER -
ID: 327021610