BondGraphs.jl

Julia implementation of the bond graph framework
Author jedforrest
Popularity
14 Stars
Updated Last
4 Months Ago
Started In
August 2021

BondGraphs.jl

CI codecov

BondGraphs.jl is a Julia implementation of the bond graph framework, built upon existing packages ModelingToolkit.jl, Graphs.jl, and Catalyst.jl. This package constructs a symbolic graph model of a physical system, which can then be converted into a system of differential equations.

For tutorials and code demonstrations in Jupyter Notebooks, see BondGraphsTutorials.

Installation

using Pkg; Pkg.add("BondGraphs")
using BondGraphs

Bond graphs

Bond graphs are an energy-based modelling framework that describe the rate of energy flow moving through system components. By construction, bond graph models enforce physical and thermodynamic constraints, guaranteeing compatibility with other physical models. This framework has been applied to mechanical, electrical, chemical, and biological systems, and is even capable of modelling complex multi-physics systems.

Cite

Joshua Forrest, Vijay Rajagopal, Michael P H Stumpf, Michael Pan, BondGraphs.jl: composable energy-based modelling in systems biology, Bioinformatics, Volume 39, Issue 10, October 2023, btad578, https://doi.org/10.1093/bioinformatics/btad578