JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model
<p>As our knowledge and understanding of atmospheric aerosol particle evolution and impact grows, designing community mechanistic models requires an ability to capture increasing chemical, physical and therefore numerical complexity. As the landscape of computing software and hardware evolves...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
Copernicus Publications
2021-04-01
|
Series: | Geoscientific Model Development |
Online Access: | https://gmd.copernicus.org/articles/14/2187/2021/gmd-14-2187-2021.pdf |
id |
doaj-4e9fa56ba3f646a38a523ccf2bf87315 |
---|---|
record_format |
Article |
spelling |
doaj-4e9fa56ba3f646a38a523ccf2bf873152021-04-27T06:52:05ZengCopernicus PublicationsGeoscientific Model Development1991-959X1991-96032021-04-01142187220310.5194/gmd-14-2187-2021JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box modelL. Huang0L. Huang1D. Topping2Department of Mathematics, ETH Zurich, Zurich, SwitzerlandDepartment of Earth and Environmental Science, The University of Manchester, Manchester, UKDepartment of Earth and Environmental Science, The University of Manchester, Manchester, UK<p>As our knowledge and understanding of atmospheric aerosol particle evolution and impact grows, designing community mechanistic models requires an ability to capture increasing chemical, physical and therefore numerical complexity. As the landscape of computing software and hardware evolves, it is important to profile the usefulness of emerging platforms in tackling this complexity. Julia is a relatively new programming language that promises computational performance close to that of Fortran, for example, without sacrificing the flexibility offered by languages such as Python. With this in mind, in this paper we present and demonstrate the initial development of a high-performance community mixed-phase atmospheric 0D box model, JlBox, written in Julia.</p> <p>In JlBox v1.1 we provide the option to simulate the chemical kinetics of a gas phase whilst also providing a fully coupled gas-particle model with dynamic partitioning to a fully moving sectional size distribution, in the first instance. JlBox is built around chemical mechanism files, using existing informatics software to parse chemical structures and relationships from these files and then provide parameters required for mixed-phase simulations. In this study we use mechanisms from a subset and the complete Master Chemical Mechanism (MCM). Exploiting the ability to perform automatic differentiation of Jacobian matrices within Julia, we profile the use of sparse linear solvers and pre-conditioners, whilst also using a range of stiff solvers included within the expanding ODE solver suite the Julia environment provides, including the development of an adjoint model. Case studies range from a single volatile organic compound (VOC) with 305 equations to a “full” complexity MCM mixed-phase simulation with 47 544 variables. Comparison with an existing mixed-phase model shows significant improvements in performance for multi-phase and mixed VOC simulations and potential for developments in a number of areas.</p>https://gmd.copernicus.org/articles/14/2187/2021/gmd-14-2187-2021.pdf |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
L. Huang L. Huang D. Topping |
spellingShingle |
L. Huang L. Huang D. Topping JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model Geoscientific Model Development |
author_facet |
L. Huang L. Huang D. Topping |
author_sort |
L. Huang |
title |
JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model |
title_short |
JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model |
title_full |
JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model |
title_fullStr |
JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model |
title_full_unstemmed |
JlBox v1.1: a Julia-based multi-phase atmospheric chemistry box model |
title_sort |
jlbox v1.1: a julia-based multi-phase atmospheric chemistry box model |
publisher |
Copernicus Publications |
series |
Geoscientific Model Development |
issn |
1991-959X 1991-9603 |
publishDate |
2021-04-01 |
description |
<p>As our knowledge and understanding of atmospheric aerosol particle evolution and impact grows, designing community mechanistic models requires an ability to capture increasing chemical, physical and therefore numerical complexity. As the landscape of computing software and hardware evolves, it is important to profile the usefulness of emerging platforms in tackling this complexity. Julia is a relatively new programming language that promises computational performance close to that of Fortran, for example, without sacrificing the flexibility offered by languages such as Python. With this in mind, in this paper we present and demonstrate the initial development of a high-performance community mixed-phase atmospheric 0D box model, JlBox, written in Julia.</p>
<p>In JlBox v1.1 we provide the option to simulate the chemical kinetics of a gas phase whilst also providing a fully coupled gas-particle model with dynamic partitioning to a fully moving sectional size distribution, in the first instance. JlBox is built around chemical mechanism files, using existing informatics software to parse chemical structures and relationships from these files and then provide parameters required for mixed-phase simulations. In this study we use mechanisms from a subset and the complete Master Chemical Mechanism (MCM). Exploiting the ability to perform automatic differentiation of Jacobian matrices within Julia, we profile the use of sparse linear solvers and pre-conditioners, whilst also using a range of stiff solvers included within the expanding ODE solver suite the Julia environment provides, including the development of an adjoint model. Case studies range from a single volatile organic compound (VOC) with 305 equations to a “full” complexity MCM mixed-phase simulation with 47 544 variables. Comparison with an existing mixed-phase model shows significant improvements in performance for multi-phase and mixed VOC simulations and potential for developments in a number of areas.</p> |
url |
https://gmd.copernicus.org/articles/14/2187/2021/gmd-14-2187-2021.pdf |
work_keys_str_mv |
AT lhuang jlboxv11ajuliabasedmultiphaseatmosphericchemistryboxmodel AT lhuang jlboxv11ajuliabasedmultiphaseatmosphericchemistryboxmodel AT dtopping jlboxv11ajuliabasedmultiphaseatmosphericchemistryboxmodel |
_version_ |
1721506223636873216 |