We develop a novel particle-based Monte-Carlo cloud and precipitation microphysics model resolving the dynamics of water isotopic composition upon kinetically limited diffusional processes and particle collisions.
The project introduces an original adaptive time-stepping logic for the SDM Monte-Carlo coagulation algorithm.
PySDM is a particle-based cloud microphysics package with box, parcel & 1D/2D prescribed-flow examples in Python, Julia and Matlab. PySDM is a Pythonic high-performance (CPU/GPU) implementation of the Super-Droplet Method (SDM) Monte-Carlo scheme for collisional growth (Shima et al. 2009) with original drop-breakage and adaptive-time-stepping extensions.
PyPartMC is a C++-implemented Python interface to PartMC, a particle-resolved Monte-Carlo code for atmospheric aerosol simulation. The Python API facilitates using PartMC from Julia, Matlab, etc.
PyMPDATA is a Numba-accelerated Pythonic implementation of the MPDATA algorithm of Smolarkiewicz et al. used in geophysical fluid dynamics and beyond for numerically solving generalised convection-diffusion PDEs. PyMPDATA ships with examples in Python, Julia, Rust and Matlab.
We engage in public outreach activities aimed at popularising cloud physics and addressing gaps in the availability of academic materials in both Polish and English, including books, Wikipedia articles and coding tutorials.
Numba-MPI provides Python wrappers to the C MPI API callable from within Numba JIT-compiled code and enabling distributed-memory parallelism.
We apply the MPDATA scheme to option pricing by reformulating the Black-Scholes-Merton equation as an advection problem. This novel application enables all PDE terms to be handled consistently with a single non-oscillatory, high-order and positive-definite numerical operator.
We develop and maintain utility routines for embedding vector graphics and animations in Python Jupyter notebooks using matplotlib (with focus on testing and Colab & GitHub compatibility).
We are building, from scratch, a multi-node GPU-enabled computing cluster using Raspberry Pi hardware, and open-source software stack (Linux/Slurm/OpenMPI/…)