Draft:MPDATA
Draft article not currently submitted for review.
This is a draft Articles for creation (AfC) submission. It is not currently pending review. While there are no deadlines, abandoned drafts may be deleted after six months. To edit the draft click on the "Edit" tab at the top of the window. To be accepted, a draft should:
It is strongly discouraged to write about yourself, your business or employer. If you do so, you must declare it. Where to get help
How to improve a draft
You can also browse Wikipedia:Featured articles and Wikipedia:Good articles to find examples of Wikipedia's best writing on topics similar to your proposed article. Improving your odds of a speedy review To improve your odds of a faster review, tag your draft with relevant WikiProject tags using the button below. This will let reviewers know a new draft has been submitted in their area of interest. For instance, if you wrote about a female astronomer, you would want to add the Biography, Astronomy, and Women scientists tags. Editor resources
Last edited by Slayoo (talk | contribs) 13 minutes ago. (Update) |
In numerical analysis of partial differential equations, MPDATA is a family of iterative finite-difference/finite-volume methods for numerically integrating of hyperbolic differential equations modelling conservation laws of the form:
1 |
where is an advected scalar field (or advectee); is the advective velocity vector field (or advector), may either play the role of the fluid density, the Jacobian of coordinate transformation from Cartesian to curvilinear framework , or their product; combines all source terms[1].
MPDATA stands for Multidimensional Positive Definite Advection Transport Algorithm. The algorithm was formulated by Piotr K. Smolarkiewicz[2][3] (and is also referred to as Smolarkiewicz's method[4]) at the US National Center for Atmospheric Research - NCAR (at the time, Smolarkiewicz was a fellow of the NCAR Advanced Study Program and a recent graduate from Krzysztof Haman's group at the University of Warsaw; the seminal 1983 and 1984 MPDATA publications mention both institutions).
The crux of the method lies in iterative application of the upwind scheme. The first iteration employs the advective velocity , while each subsequent iteration employs a so-called antidiffusive velocity which corrects solution from prior iteration reducing the numerical diffusion. The antidiffusive velocities are formulated through modified equation analysis[5] of the upwind scheme and feature cross-dimensional dependencies (i.e., applying MPDATA in multiple dimensions is not equivalent to application of one-dimensional MPDATA in all dimensions), the scheme is thus not dimensionally split, hence "M" in the algorithm name. Since each iteration of the scheme constitutes a forward-in-time upwind pass, the scheme inherits characteristics of the upwind scheme: CFL stability criterion, conservativeness, embarrassingly parallel domain decomposition, and sign-preservation. For non-negative fields , sign-preservation translates to positive definiteness, hence the "PD" in the algorithm name. Application of the corrective iterations improves scheme convergence rate compared with first-order upwind. Depending on the MPDATA variant, convergence of up to third-order in time and space can be achieved[6].
While the original formulation of MPDATA employed structured grids, the algorithm has been subsequently also formulated for unstructured grids[7].
Description of the basic scheme in 1D
[edit]MPDATA is inherently multi-dimensional, and primarily used in computational fluid dynamics where the advective volocities and problem geometries are variable in time. Still, the key idea underlying the MPDATA approach can be conveyed with a basic example of solenoidal stationary flow in one dimension[8] (i.e., constant in time and space), without coordinate transformation (), for the case of homogeneous advection () of a nonnegative scalar field (), with the following flux form of the advection equation:
2 |
Upwind discretisation of the problem on a regular staggered grid with a time step and a grid step , with , , and the half-integer spatial indices corresponding to grid-cell walls:
··· | · | · | · | ···
can be formulated with (for arbitrary ):
3 |
with the flux function defined using positive and negative parts of as:
4 |
Introducing the non-dimensional Courant number , the resultant explicit-in-time scheme (referred to as "upwind", "upstream" or "donor-cell"), for a constant reads:
5 |
which is conservative, sing-preserving and stable for . However, the scheme is only first-order accurate in space () and time (), and incurs numerical diffusion which can be quantified with the modified-equation analysis by substituting the discretised values other than in (5) with their Taylor expansions (using the Big O notation):
6 |
which yields (up to second-order terms):
7 |
in which the highlighted second-order time derivative can be replaced with second-order spatial derivative using the Cauchy-Kovalevskaya procedure (i.e., by substituting eq. (2) into a time-derivative of eq. (2) giving ) yielding the following, so-called, modified equation:
8 |
which confirms that, as and , the upwind scheme approximates eq. (2), but the truncation error has a leading-order Fickian source term with a coefficient of numerical diffusion given by [9].
The concept of MPDATA lies in reversing the effect of numerical diffusion by using the pseudo-velocity technique[10][11] that allows to express diffusion terms in transport problems using an equation of the same form as (2). To this end, Smolarkiewicz introduced the anti-diffusive pseudo velocity (note the opposite sign stemming from, de facto, integrating backwards in time to reverse the effect of diffusion):
9 |
and proposed discretisation allowing to perform a corrective step using upwind integration with an anti-diffusive Courant number field:
10 |
where numbers algorithm iterations. The first pass of the scheme is an ordinary upwind integration using and yielding . In the second pass, the values of the anti-diffusive Courant number are computed based on and , and used to perform an upwind anti-diffusive pass yielding . Note that even for constant-in- physical , the anti-diffusive varies in (and thus corresponds to a divergent flow). Subsequent iterations are correcting the integration of the anti-diffusive corrections from previous passes. If iterations are used, is used as the result of integration of the advective term over one .
TODO: A bounded
TODO: (note: multiple dimensions)
TODO: iterations
TODO: stability condition
TODO: positive definiteness, etc
TODO: conservativeness
TODO: anti-diffusive velocity is not solenoidal!
Minimal implementation and convergence analysis in Python
[edit]...
Algorithm variants and techniques used in concert with MPDATA
[edit]The basic scheme... + examples generated with PyMPDATA ?
- double-pass donor cell ...[12]
- infinite-gauge variant ...[13]
- non-oscillatory variant ... flux limiter... [14]
- divergent-flow correction ...
- higher-order terms ...
- application to advection-diffusion problems
- application to inhomogeneous problems
- application to problems featuring pressure-gradient source terms (e.g., Boussinesq approximation (buoyancy) of the Navier-Stokes equations)
- adaptive mesh refinement controlled by antidiffusive velocities[16]
Algorithm steps (shallow-water system example)
[edit]The algorithm steps listed below constitute a solver to a minimal fluid dynamics problem - an inviscid shallow water equations system (in two spatial dimensions, assuming flat bathymetry):
N |
where is the advector (one vector field discretised at cell walls); fluid height , momentum components and are the advectees (three scalar fields discretised at cell centers).
Since the scalar fields representing momentum components and are not of constant sign, it is recommended to use the infinite-gauge variant of MPDATA. This variant implies non-monotonic solutions, hence in practice it is only practical together with the non-oscillatory option used as well. Steps pertaining to both options are featured below.
An MPDATA-based solution consists of the following steps:
- ...
- ...
Applications
[edit]MPDATA has documented applications in the following domains:
- numerical weather prediction (NWP) systems:
- compressible dynamical core for the COSMO system[17]
- nonhydrostatic finite-volume dynamical core for the ECMWF Integrated Forecast System (IFS)[18]
- ocean modelling:
- passive tracer advection in terrain-following coordinates in the Regional Ocean Modeling System (ROMS)[19]
- large eddy simulations:
- moist atmospheric flows (including representation of cloud and precipitation processes)[20]
- multi-phase particle-laden flows (e.g., contrail formation[21], aerosol-cloud-precipitation interactions[22])
- turbulent magnetohydrodynamics[23] (including Hall magnetohydrodynamics[24])
- simulations of wind-driven sand dune dynamics[25]
- simulations of flows past complex structures (e.g. the Pentagon building[15] and the Palace of Culture and Science in Warsaw[26])
- direct numerical simulations:
- multi-phase flows (fog formation)[27]
- solvers for shallow water equations resolving:
- mathematical finance:
- solutions to the Black-Scholes-type equations (a stochastic differential equation transformed into a partial differential equation using Itô's lemma) cast as an advective transport problem for pricing of European and American options[32]
Open-source implementations
[edit]- reusable MPDATA libraries and packages:
- libmpdata++: structured-grid MPDATA implemented in C++ using Blitz++ for array handling and array-valued expressions, and OpenMP for multi-threading. API and usage examples documented in a journal article[33]. Featuring distributed-memory parallelism using Message Passing Interface (MPI)[34]. Supports integration in 1-, 2- and 3-dimensional domains. Implements arbitrary number of corrective iterations, the infinite-gauge, non-oscillatory and fully-third-order variants. Features implementations of a shallow-water equation system solver, and a conjugate-residual Poisson equation solver for handling pressure terms in momentum conservation equations. The library has been developed as a dynamical core for the UWLCM[35] large eddy simulation system. Released under the GNU GPL v3 license.
- PyMPDATA structured-grid MPDATA implemented in Python using NumPy and Numba for array handling, just-in-time compilation and multi-threading[36], supporting distributed-memory parallelism using MPI via Numba-MPI[37]. Supports integration in 1-, 2- and 3-dimensional domains, arbitrary number of corrective iterations, implements infinite-gauge, non-oscillatory and double-pass-donor-cell algorithm variants. Pure-Python wheels available on PyPI, release tarballs archived at Zenodo[38]. Released under the GNU GPL v3 license together with a set of examples in a form of Jupyter notebooks. Web-based code-coupled documentation in English[39].
- MPDATA implementations integrated in other software:
- AtmosFOAM (a derivative of OpenFOAM; OpenFOAM is distributed under the GPL v3 license) features implementations of MPDATA in both C++ and Python/Numba[40].
- mpdat_2d: a FORTRAN 77 subroutine implementing 2-dimensional structured-grid MPDATA including the non-oscillatory option (likely a derivative of the original MPDATA implementation created at NCAR) has been publicly released[41] as a part of babyEULAG code[42]. No documentation or README, unspecified license and authorship.
- smolar: structured-grid MPDATA implemented as a C library supporting multi-threading and multi-process parallelism, as well as offloading of anti-diffusive velocity computation to GPU using CUDA. Code publicly available on GitHub[43] without release versioning, unspecified license, documentation in Russian language credited to Russian Academy of Sciences.
- advectionHPCtester: structured-grid 3-dimensional implementation of the basic scheme in FORTRAN. Code archived on Zenodo[44]. Released under the GNU LGPL.
References
[edit]- ^ Smolarkiewicz, P.K. and Margolin, L.G. (1998). "MPDATA: A Finite-Difference Solver for Geophysical Flows". Journal of Computational Physics. 140 (2): 459–480. Bibcode:1998JCoPh.140..459S. doi:10.1006/jcph.1998.5901.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Smolarkiewicz, P.K. (1983). "A simple positive definite advection scheme with small implicit diffusion". Monthly Weather Review. 111 (3): 479–186. Bibcode:1983MWRv..111..479S. doi:10.1175/1520-0493(1983)111<0479:ASPDAS>2.0.CO;2.
- ^ Smolarkiewicz, P.K. (1984). "A fully multidimensional positive definite advection transport algorithm with small implicit diffusion". Journal of Computational Physics. 54 (2): 325–362. Bibcode:1984JCoPh..54..325S. doi:10.1016/0021-9991(84)90121-9.
- ^ Williams, M.M.R. and Loyalka, S.K. (1991). Aerosol Science; theory and practice: with special applications to the nuclear industry. Pergamon Press. ISBN 0-08-037209-0.
{{cite book}}
: CS1 maint: multiple names: authors list (link) - ^ Warming, R.F. and Hyett, B.J. (1974). "The modified equation approach to the stability and accuracy analysis of finite-difference methods". Journal of Computational Physics. 14 (2): 159–179. Bibcode:1974JCoPh..14..159W. doi:10.1016/0021-9991(74)90011-4.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Waruszewski, M. and Kühnlein, C. and Pawlowska H. and Smolarkiewicz, P.K. (2018). "MPDATA: Third-order accuracy for variable flows". Journal of Computational Physics. 359: 361–379. Bibcode:2018JCoPh.359..361W. doi:10.1016/j.jcp.2018.01.005.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Smolarkiewicz, P.K. and Szmelter, J. (2005). "MPDATA: An edge-based unstructured-grid formulation". Journal of Computational Physics. 206 (2): 624–649. Bibcode:2005JCoPh.206..624S. doi:10.1016/j.jcp.2004.12.021.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Smolarkiewicz, P.K. (2006). "Multidimensional positive definite advection transport algorithm: An overview". International Journal for Numerical Methods in Fluids. 50 (10): 1123–1144. Bibcode:2006IJNMF..50.1123S. doi:10.1002/fld.1071.
- ^ Roberts, K.V. and Weiss, N.O. (1966). "Convective Difference Schemes". Mathematics of Computation. 20. doi:10.2307/2003507.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Lange, R. (1973), ADPIC: a three-dimensional computer code for the study of pollutant dispersal and deposition under complex conditions, doi:10.2172/4308175
- ^ Lange, R. "ADPIC–A Three-Dimensional Particle-in-Cell Model for the Dispersal of Atmospheric Pollutants and its Comparison to Regional Tracer Studies". Journal of Applied Meteorology. 17. doi:10.1175/1520-0450(1978)017%3C0320:ATDPIC%3E2.0.CO;2.
- ^ Beason, C.W. and Margolin, L.G. (1988). DPDC (double-pass donor cell): A second-order monotone scheme for advection. Nuclear explosives code developer's conference, Boulder, CO, USA, 11 Oct 1988. OSTI 7049237.
{{cite conference}}
: CS1 maint: multiple names: authors list (link) - ^ Margolin, L. and Shashkov, M. (2006). "MPDATA: gauge transformations, limiters and monotonicity". International Journal for Numerical Methods in Fluids. 50 (10): 1193–1206. Bibcode:2006IJNMF..50.1193M. doi:10.1002/fld.1070.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Grabowski, W.W. and Smolarkiewicz, P.K. (1990). "Monotone finite-difference approximations to the advection-condensation problem". Monthly Weather Review. 118 (10): 2082. Bibcode:1990MWRv..118.2082G. doi:10.1175/1520-0493(1990)118<2082:MFDATT>2.0.CO;2.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ a b Smolarkiewicz, P.K. and Sharman, R. and Weil, J. and Perry, S.G. and Heist, D. and Bowker, G. (2007). "Building resolving large-eddy simulations and comparison with wind tunnel experiments". Journalof Computational Physics. 227: 633–653. doi:10.1016/j.jcp.2007.08.005.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Szmelter, J. and Smolarkiewicz, P.K. (2006). "MPDATA error estimator for mesh adaptivity". International Journal for Numerical Methods in Fluids. 50 (10): 1269–1293. doi:10.1002/fld.1118.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Ziemiański, M.Z. and Wójcik, D.K. and Rosa, B. and Piotrowski, Z. (2021). "Compressible EULAG Dynamical Core in COSMO: Convective-Scale Alpine Weather Forecasts". Monthly Weather Review. 149 (10): 3563–3583. Bibcode:2021MWRv..149.3563Z. doi:10.1175/MWR-D-20-0317.1.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Kühnlein, C. and Deconinck, W. and Klein, R. and Malardel, S. and Piotrowski, Z.P. and Smolarkiewicz, P.K. and Szmelter, J. and Wedi, N.P. (2019). "FVM 1.0: a nonhydrostatic finite-volume dynamical core for the IFS". Geoscientific Model Development. 12 (2): 651–676. Bibcode:2019GMD....12..651K. doi:10.5194/gmd-12-651-2019.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Ezer, T. and Arango, H. and Shchepetkin, A.F. (2002). "Developments in terrain-following ocean models: intercomparisons of numerical aspects". Ocean Modelling. 4 (3–4): 249–267. Bibcode:2002OcMod...4..249E. doi:10.1016/s1463-5003(02)00003-3.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Pedersen, J.G. and Malinowski, S.P. and Grabowski, W.W. (2016). "Resolution and domain-size sensitivity in implicit large-eddy simulation of the stratocumulus-topped boundary layer". Journal of Advances in Modeling Earth Systems. 8 (2): 885–903. Bibcode:2016JAMES...8..885P. doi:10.1002/2015MS000572.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Unterstrasser, S. and Stephan, A. (2020). "Far field wake vortex evolution of two aircraft formation flight and implications on young contrails". The Aeronautical Journal. 124 (1275): 667–702. doi:10.1017/aer.2020.3.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Zmijewski, P. and Dziekan, P. and Pawlowska, H. (2024). "Modeling collision–coalescence in particle microphysics: numerical convergence of mean and variance of precipitation in cloud simulations using the University of Warsaw Lagrangian Cloud Model (UWLCM) 2.1". Geoscientific Model Development. 17 (2): 759–780. doi:10.5194/gmd-17-759-2024.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Smolarkiewicz, P.K. and Charbonneau, P. (2013). "EULAG, a computational model for multiscale flows: An MHD extension". Journal of Computational Physics. 236: 608–623. Bibcode:2013JCoPh.236..608S. doi:10.1016/j.jcp.2012.11.008.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Bora, K. and Bhattacharyya, R. and Smolarkiewicz, P.LK. (2021). "Evolution of Three-dimensional Coherent Structures in Hall Magnetohydrodynamics". The Astrophysical Journal. 906 (2): 102. arXiv:2011.04223. Bibcode:2021ApJ...906..102B. doi:10.3847/1538-4357/abc8f7.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Ortiz, P. and Smolarkiewicz, P.K. (2006). "Numerical simulation of sand dune evolution in severe winds". International Journal for Numerical Methods in Fluids. 50 (10): 1229–1246. Bibcode:2006IJNMF..50.1229O. doi:10.1002/fld.1138.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Korycki, M. and Łobocki, L. and Wyszogrodzki, A. (2016). "Numerical simulation of stratified flow around a tall building of a complex shape". Environmental Fluid Mechanics. 16 (6): 1143–1171. doi:10.1007/s10652-016-9470-3.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Michael MacDonald, M. and Kurowski, M.J. and Teixeira, J. (2020). "Direct Numerical Simulation of the Moist Stably Stratified Surface Layer: Turbulence and Fog Formation". Boundary-Layer Meteorology. 175 (3): 343–368. arXiv:2012.04128. Bibcode:2020BoLMe.175..343M. doi:10.1007/s10546-020-00511-2.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Kuang, D. and Lee, L. (2015). "A Conservative Formulation and a Numerical Algorithm for the Double-Gyre Nonlinear Shallow-Water Model". Numerical Mathematics: Theory, Methods and Applications. 8 (4): 634–650. doi:10.4208/nmtma.2015.m1408.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Jarecka, D. and Jaruga, A. and Smolarkiewicz, P.K. (2015). "A spreading drop of shallow water". Journal of Computational Physics. 289: 53–61. Bibcode:2015JCoPh.289...53J. doi:10.1016/j.jcp.2015.02.003.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Unterstrasser, S. and Hoffmann, F. and Lerch, M. (2020). "Collisional growth in a particle-based cloud microphysical model: insights from column model simulations using LCM1D (v1.0)". Geoscientific Model Development. 13 (11): 5119–5145. Bibcode:2020GMD....13.5119U. doi:10.5194/gmd-13-5119-2020.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Olesik, M.A. and Banaśkiewicz, J. and Bartman, P. and Baumgartner, M. and Unterstrasser, S. and Arabas, S. (2022). "On numerical broadening of particle-size spectra: a condensational growth study using PyMPDATA 1.0". Geoscientific Model Development. 15 (9): 3879–3899. Bibcode:2022GMD....15.3879O. doi:10.5194/gmd-15-3879-2022.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Arabas, S. and Farhat, A. (2020). "Derivative pricing as a transport problem: MPDATA solutions to Black–Scholes-type equations". Journal of Computational and Applied Mathematics. 373. doi:10.1016/j.cam.2019.05.023.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Jaruga, A. and Arabas, S. and Jarecka, D. and Pawlowska, H. and Smolarkiewicz, P. and Waruszewski, M. (2015). "libmpdata++ 1.0: a library of parallel MPDATA solvers for systems of generalised transport equations". Geoscientific Model Development. 8 (4): 1005–1032. arXiv:1407.1309. Bibcode:2015GMD.....8.1005J. doi:10.5194/gmd-8-1005-2015.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Dziekan, P. and Zmijewski, P. (2022). "University of Warsaw Lagrangian Cloud Model (UWLCM) 2.0: adaptation of a mixed Eulerian–Lagrangian numerical model for heterogeneous computing clusters". Geoscientific Model Development. 15 (11): 4489–4501. Bibcode:2022GMD....15.4489D. doi:10.5194/gmd-15-4489-2022.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Dziekan, P. and Waruszewski, M. and Pawlowska, H. (2019). "University of Warsaw Lagrangian Cloud Model (UWLCM) 1.0: a modern large-eddy simulation tool for warm cloud modeling with Lagrangian microphysics". Geosci. Model Dev. 12 (6): 2587–2606. Bibcode:2019GMD....12.2587D. doi:10.5194/gmd-12-2587-2019.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Bartman, P. and Banaśkiewicz, J. and Drenda, S. and Manna, M. and Olesik, M.A. and Rozwoda, P. and Sadowski, M. and Arabas, S. (2022). "PyMPDATA v1: Numba-accelerated implementation of MPDATA with examples in Python, Julia and Matlab". Journal of Open Source Software. 7 (77): 3896. Bibcode:2022JOSS....7.3896B. doi:10.21105/joss.03896.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Derlatka, K. and Manna, M. and Bulenok, O. and Zwicker, D. and Arabas, S. (2024). "Numba-MPI v1.0: Enabling MPI communication within Numba/LLVM JIT-compiled Python code". SoftwareX. 28. arXiv:2407.13712. Bibcode:2024SoftX..2801897D. doi:10.1016/j.softx.2024.101897.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Arabas, Sylwester; Banaśkiewicz, Jakub; Bartman, Piotr; Derlatka, Kacper; Drenda, Szymon; Manna, Maciej; Olesik, Michael; Magnuszewski, Paweł; Manna, Maciej; Rozwoda, Paweł; Sadowski, Michał (2024), PyMPDATA Zenodo releases, doi:10.5281/zenodo.6329302
- ^ PyMPDATA documentation
- ^ GitHub code search for MPDATA in AtmosFOAM repositories
- ^ Grabowski, W.W. (2017), bE_SDs v0.1, doi:10.5281/zenodo.1050260
- ^ Grabowski, W.W. and Dziekan, P. and Pawlowska, H. (2018). "Lagrangian condensation microphysics with Twomey CCN activation". Geosci. Model Dev. 11 (1): 103–120. Bibcode:2018GMD....11..103G. doi:10.5194/gmd-11-103-2018.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ Mikushin, D., apc-llc/mpdata, Applied Parallel Computing LLC
- ^ Piotrowski, Z. (2023), piotrows/advectionHPCtester: Advection HPC tester: MPDATA eDSL (1.0.0), doi:10.5281/zenodo.8178549