PySDM v1: particle-based cloud modelling package for warm-rain microphysics and aqueous chemistry
Authors:
Piotr Bartman,
Oleksii Bulenok,
Kamil Górski,
Anna Jaruga,
Grzegorz Łazarski,
Michael Olesik,
Bartosz Piasecki,
Clare E. Singer,
Aleksandra Talar,
Sylwester Arabas
Abstract:
PySDM is an open-source Python package for simulating the dynamics of particles undergoing condensational and collisional growth, interacting with a fluid flow and subject to chemical composition changes. It is intended to serve as a building block for process-level as well as computational-fluid-dynamics simulation systems involving representation of a continuous phase (air) and a dispersed phase…
▽ More
PySDM is an open-source Python package for simulating the dynamics of particles undergoing condensational and collisional growth, interacting with a fluid flow and subject to chemical composition changes. It is intended to serve as a building block for process-level as well as computational-fluid-dynamics simulation systems involving representation of a continuous phase (air) and a dispersed phase (aerosol), with PySDM being responsible for representation of the dispersed phase. The PySDM package core is a Pythonic high-performance implementation of the Super-Droplet Method (SDM) Monte-Carlo algorithm for representing collisional growth, hence the name. PySDM has two alternative parallel number-crunching backends available: multi-threaded CPU backend based on Numba and GPU-resident backend built on top of ThrustRTC. The usage examples are built on top of four simple atmospheric cloud modelling frameworks: box, adiabatic parcel, single-column and 2D prescribed flow kinematic models. In addition, the package ships with tutorial code depicting how PySDM can be used from Julia and Matlab.
△ Less
Submitted 22 October, 2021; v1 submitted 31 March, 2021;
originally announced March 2021.