Catalyst: Fast and flexible modeling of reaction networks.
We introduce Catalyst.jl, a flexible and feature-filled Julia library for modeling and high-performance simulation of chemical reaction networks (CRNs). Catalyst supports simulating stochastic chemical kinetics (jump process), chemical Langevin equation (stochastic differential equation), and reacti...
Saved in:
| Main Authors: | , , , , , , , |
|---|---|
| Format: | Article |
| Language: | English |
| Published: |
Public Library of Science (PLoS)
2023-10-01
|
| Series: | PLoS Computational Biology |
| Online Access: | https://journals.plos.org/ploscompbiol/article/file?id=10.1371/journal.pcbi.1011530&type=printable |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1849332243861864448 |
|---|---|
| author | Torkel E Loman Yingbo Ma Vasily Ilin Shashi Gowda Niklas Korsbo Nikhil Yewale Chris Rackauckas Samuel A Isaacson |
| author_facet | Torkel E Loman Yingbo Ma Vasily Ilin Shashi Gowda Niklas Korsbo Nikhil Yewale Chris Rackauckas Samuel A Isaacson |
| author_sort | Torkel E Loman |
| collection | DOAJ |
| description | We introduce Catalyst.jl, a flexible and feature-filled Julia library for modeling and high-performance simulation of chemical reaction networks (CRNs). Catalyst supports simulating stochastic chemical kinetics (jump process), chemical Langevin equation (stochastic differential equation), and reaction rate equation (ordinary differential equation) representations for CRNs. Through comprehensive benchmarks, we demonstrate that Catalyst simulation runtimes are often one to two orders of magnitude faster than other popular tools. More broadly, Catalyst acts as both a domain-specific language and an intermediate representation for symbolically encoding CRN models as Julia-native objects. This enables a pipeline of symbolically specifying, analyzing, and modifying CRNs; converting Catalyst models to symbolic representations of concrete mathematical models; and generating compiled code for numerical solvers. Leveraging ModelingToolkit.jl and Symbolics.jl, Catalyst models can be analyzed, simplified, and compiled into optimized representations for use in numerical solvers. Finally, we demonstrate Catalyst's broad extensibility and composability by highlighting how it can compose with a variety of Julia libraries, and how existing open-source biological modeling projects have extended its intermediate representation. |
| format | Article |
| id | doaj-art-60f207c7222a40df9cf4031b8bb09100 |
| institution | Kabale University |
| issn | 1553-734X 1553-7358 |
| language | English |
| publishDate | 2023-10-01 |
| publisher | Public Library of Science (PLoS) |
| record_format | Article |
| series | PLoS Computational Biology |
| spelling | doaj-art-60f207c7222a40df9cf4031b8bb091002025-08-20T03:46:15ZengPublic Library of Science (PLoS)PLoS Computational Biology1553-734X1553-73582023-10-011910e101153010.1371/journal.pcbi.1011530Catalyst: Fast and flexible modeling of reaction networks.Torkel E LomanYingbo MaVasily IlinShashi GowdaNiklas KorsboNikhil YewaleChris RackauckasSamuel A IsaacsonWe introduce Catalyst.jl, a flexible and feature-filled Julia library for modeling and high-performance simulation of chemical reaction networks (CRNs). Catalyst supports simulating stochastic chemical kinetics (jump process), chemical Langevin equation (stochastic differential equation), and reaction rate equation (ordinary differential equation) representations for CRNs. Through comprehensive benchmarks, we demonstrate that Catalyst simulation runtimes are often one to two orders of magnitude faster than other popular tools. More broadly, Catalyst acts as both a domain-specific language and an intermediate representation for symbolically encoding CRN models as Julia-native objects. This enables a pipeline of symbolically specifying, analyzing, and modifying CRNs; converting Catalyst models to symbolic representations of concrete mathematical models; and generating compiled code for numerical solvers. Leveraging ModelingToolkit.jl and Symbolics.jl, Catalyst models can be analyzed, simplified, and compiled into optimized representations for use in numerical solvers. Finally, we demonstrate Catalyst's broad extensibility and composability by highlighting how it can compose with a variety of Julia libraries, and how existing open-source biological modeling projects have extended its intermediate representation.https://journals.plos.org/ploscompbiol/article/file?id=10.1371/journal.pcbi.1011530&type=printable |
| spellingShingle | Torkel E Loman Yingbo Ma Vasily Ilin Shashi Gowda Niklas Korsbo Nikhil Yewale Chris Rackauckas Samuel A Isaacson Catalyst: Fast and flexible modeling of reaction networks. PLoS Computational Biology |
| title | Catalyst: Fast and flexible modeling of reaction networks. |
| title_full | Catalyst: Fast and flexible modeling of reaction networks. |
| title_fullStr | Catalyst: Fast and flexible modeling of reaction networks. |
| title_full_unstemmed | Catalyst: Fast and flexible modeling of reaction networks. |
| title_short | Catalyst: Fast and flexible modeling of reaction networks. |
| title_sort | catalyst fast and flexible modeling of reaction networks |
| url | https://journals.plos.org/ploscompbiol/article/file?id=10.1371/journal.pcbi.1011530&type=printable |
| work_keys_str_mv | AT torkeleloman catalystfastandflexiblemodelingofreactionnetworks AT yingboma catalystfastandflexiblemodelingofreactionnetworks AT vasilyilin catalystfastandflexiblemodelingofreactionnetworks AT shashigowda catalystfastandflexiblemodelingofreactionnetworks AT niklaskorsbo catalystfastandflexiblemodelingofreactionnetworks AT nikhilyewale catalystfastandflexiblemodelingofreactionnetworks AT chrisrackauckas catalystfastandflexiblemodelingofreactionnetworks AT samuelaisaacson catalystfastandflexiblemodelingofreactionnetworks |