02 May 2022
02 May 2022
Status: this preprint is open for discussion.

MultilayerPy (v1.0): A Python-based framework for building, running and optimising kinetic multi-layer models of aerosols and films

Adam Milsom1, Amy Lees1, Adam M. Squires2, and Christian Pfrang1,3 Adam Milsom et al.
  • 1School of Geography, Earth and Environmental Sciences, University of Birmingham, Edgbaston, Birmingham, UK
  • 2Department of Chemistry, University of Bath, South Building, Soldier Down Ln, Claverton Down, Bath, UK
  • 3Department of Meteorology, University of Reading, Whiteknights, Earley Gate, Reading, UK

Abstract. Kinetic multi-layer models of aerosols and films have become the state-of-the-art method of describing complex aerosol processes at particle and film level. We present MultilayerPy: an open-source framework for building, running and optimising kinetic multi-layer models – namely the kinetic multi-layer model of aerosol surface and bulk chemistry (KM-SUB), and the kinetic multi-layer model of gas-particle interactions in aerosols and clouds (KM-GAP). The modular nature of this package allows the user to iterate through various reaction schemes, diffusion regimes and experimental conditions in a systematic way. In this way, models can be customised and the raw model code itself, produced in a readable way by MultilayerPy, is fully customisable. Optimisation to experimental data using local or global optimisation algorithms is included in the package along with the option to carry out statistical sampling and Bayesian inference of model parameters with a Markov Chain Monte Carlo (MCMC) sampler (via the emcee Python package). MultilayerPy abstracts the model building process into separate building blocks, increasing the reproducibility of results and minimising human error. This paper describes the general functionality of MultilayerPy and demonstrates this with use cases based on the oleic acid-ozone heterogeneous reaction system. The tutorials in the source code (written as Jupyter notebooks) and the documentation aim to encourage users to take advantage of this tool, which is intended to be developed in conjunction with the user base.

Adam Milsom et al.

Status: open (until 27 Jun 2022)

Comment types: AC – author | RC – referee | CC – community | EC – editor | CEC – chief editor | : Report abuse

Adam Milsom et al.


Total article views: 259 (including HTML, PDF, and XML)
HTML PDF XML Total Supplement BibTeX EndNote
183 70 6 259 20 3 3
  • HTML: 183
  • PDF: 70
  • XML: 6
  • Total: 259
  • Supplement: 20
  • BibTeX: 3
  • EndNote: 3
Views and downloads (calculated since 02 May 2022)
Cumulative views and downloads (calculated since 02 May 2022)

Viewed (geographical distribution)

Total article views: 250 (including HTML, PDF, and XML) Thereof 250 with geography defined and 0 with unknown origin.
Country # Views %
  • 1
Latest update: 16 May 2022
Short summary
MultilayerPy is a Python-based framework facilitating the creation, running and optimisation of state-of-the-art kinetic multi-layer models of aerosol and film processes. Models can be fit to data with local and global optimisation algorithms along with a statistical sampling algorithm, which quantifies the uncertainty in optimised model parameters. This “modelling study in a box” enables more reproducible and reliable results, with model code and outputs produced in a human readable way.