"A library of parallel forward-in-time solvers for systems of generalised transport equations.
The solvers belong to the Multidimensional Positive Definite Advection Transport Algorithm
(MPDATA) family of numerical schemes.
"The library offers basic numerical solvers for systems of
generalised transport equations. The solvers are forward-in-time, conservative
and non-linearly stable. The libmpdata++ library covers the basic
second-order-accurate formulation of MPDATA, its third-order variant, the
infinite-gauge option for variable-sign fields and a flux-corrected transport
extension to guarantee non-oscillatory solutions. The library is equipped with
a non-symmetric variational elliptic solver for implicit evaluation of pressure
gradient terms. All solvers offer parallelisation through domain decomposition
using shared-memory parallelisation.
The paper describes the library programming interface, and serves as a user
guide. Supported options are illustrated with benchmarks discussed in the
MPDATA literature. Benchmark descriptions include code snippets as well as
quantitative representations of simulation results. Examples of applications
include: homogeneous transport in one, two and three dimensions in Cartesian
and spherical domains; shallow-water system compared with analytical solution
(originally derived for a 2D case); and a buoyant convection problem in an
incompressible Boussinesq fluid with interfacial instability. All the examples
are implemented out of the library tree. Regardless of the differences in the
problem dimensionality, right-hand-side terms, boundary conditions and
parallelisation approach, all the examples use the same unmodified library,
which is a key goal of libmpdata++ design. The libmpdata++ library is
implemented in C++, making use of the Blitz++ multi-dimensioanl array
containers, and is released as free/libre and open-source software."
http://libmpdataxx.igf.fuw.edu.pl/
https://github.com/igfuw/libmpdataxx
https://github.com/igfuw/libcloudphxx
https://arxiv.org/abs/1407.1309
http://content.iospress.com/articles/scientific-programming/spr379
http://foss.igf.fuw.edu.pl/workshop_2015/talks/Jaruga.pdf
No comments:
Post a Comment