Skip to main content

This is a preprint.

It has not yet been peer reviewed by a journal.

The National Library of Medicine is running a pilot to include preprints that result from research funded by NIH in PMC and PubMed.

ArXiv logoLink to ArXiv
[Preprint]. 2026 Mar 19:arXiv:2603.19115v1. [Version 1]

BSTModelKit.jl: A Julia Package for Constructing, Solving, and Analyzing Biochemical Systems Theory Models

Sandra Vadhin 1,*, Jeffrey D Varner 1,
PMCID: PMC13019448  PMID: 41907580

Abstract

We present BSTModelKit.jl, an open-source Julia package for constructing, solving, and analyzing Biochemical Systems Theory (BST) models of biochemical networks. The package implements S-system representations, a canonical power-law formalism for modeling metabolic and regulatory networks. BSTModelKit.jl provides a declarative model specification format, dynamic simulation via ordinary differential equation (ODE) integration, steady-state computation, and global sensitivity analysis using the Morris and Sobol methods. The package leverages the Julia scientific computing ecosystem, in particular the SciML suite of differential equation solvers, to provide efficient and flexible model analysis tools. We describe the mathematical formulation, software design, and demonstrate the package capabilities with illustrative examples.

Keywords: biochemical systems theory, S-system, power-law formalism, Julia, systems biology, metabolic modeling

1. Introduction

Mathematical modeling of biochemical networks is essential for understanding the complex dynamics of living systems. Among the many formalisms available, Biochemical Systems Theory (BST) occupies a distinctive position: it provides a canonical mathematical structure grounded in a power-law approximation of enzyme kinetics that is both analytically tractable and broadly applicable. BST was introduced by Savageau in a series of foundational papers [Savageau, 1969a,b, 1970] and later elaborated in a comprehensive monograph [Savageau, 1976]. The key insight underlying BST is that, in the vicinity of an operating point, the net rate of production or consumption of any biochemical species can be well-approximated by a product of power-law functions of the concentrations of the species in the system. This approximation is exact for mass-action kinetics and provides a remarkably good local representation of more complex rate laws, including Michaelis-Menten and Hill-type kinetics [Savageau, 1976, Voit, 2000].

The power-law formalism gives rise to two canonical representations: the Generalized Mass Action (GMA) system, which retains individual reaction terms, and the S-system, which aggregates all production and consumption terms for each species into single power-law expressions [Savageau et al., 1987]. The S-system representation has particularly attractive mathematical properties—its steady-state equations can be transformed into a system of linear algebraic equations in logarithmic coordinates, enabling efficient analytical and numerical solution [Savageau, 1976, Voit, 2000]—and Savageau and Voit established that BST and metabolic control theory yield equivalent descriptions of metabolic regulation near steady state [Savageau et al., 1987]. These properties have led to broad application across biological domains. In metabolic engineering, S-system models have been used to characterize and optimize pathways such as glycolysis in Saccharomyces cerevisiae [Cascante et al., 1995] and to develop systematic strategies for representing reversible metabolic pathways [Sorribas and Savageau, 1989]. Savageau and Alves applied ensemble methods based on S-system models to study systemic properties of metabolic networks [Alves and Savageau, 2000]. In gene regulation, BST has provided design principles for understanding the functional logic of elementary gene circuits [Savageau, 2001], and in signal transduction, Vera et al. demonstrated that S-system models can capture the essential dynamics of signaling cascades with fewer parameters than mechanistic alternatives [Vera et al., 2007]. Voit provides comprehensive reviews of both the theory and its applications [Voit, 2000, Torres and Voit, 2002, Voit, 2013a,b]. Despite this rich theoretical foundation and broad applicability, the software landscape for BST modeling has not kept pace. Early computational tools such as PLAS [Voit, 2000] and the specialized numerical methods of Irvine and Savageau [Irvine and Savageau, 1990] were pioneering but are tied to legacy computing environments. General-purpose systems biology platforms such as COPASI [Hoops et al., 2006] support a variety of kinetic formalisms but do not provide specialized support for the power-law structure of BST models, nor do they expose the stoichiometric and kinetic order matrices that are central to BST analysis. This gap motivates the development of BSTModelKit.jl, an open-source Julia [Bezanson et al., 2017] package that provides a complete workflow for BST modeling: declarative model specification, automated construction of the stoichiometric and kinetic order matrices, dynamic simulation, steady-state computation, and global sensitivity analysis. Julia is well-suited for this purpose, as its multiple dispatch paradigm enables clean abstractions, its just-in-time compilation delivers performance competitive with statically compiled languages, and its scientific computing ecosystem—particularly the SciML differential equation solvers [Rackauckas and Nie, 2017] and GlobalSensitivity.jl [Dixit and Rackauckas, 2022]—provides state-of-the-art numerical methods that BSTModelKit.jl leverages directly.

In this paper, we describe the mathematical foundations of the generalized S-system representation used by BSTModelKit.jl (Section 2), the software architecture and design (Section 3), illustrative examples demonstrating the package capabilities (Section 4), and conclude with a discussion of limitations and future directions (Section 5).

2. Mathematical Formulation

Consider a biochemical network with n dynamic species and m static (externally controlled) species. Let Xi denote the concentration of species i. In the S-system formalism, the time evolution of each dynamic species is governed by:

dXidt=αij=1n+mXjgij-βij=1n+mXjhij,i=1,,n (1)

where αi and βi are non-negative rate constants, gij and hij are real-valued kinetic orders, and the products extend over all species, both dynamic and static. The first term represents the aggregate production rate of Xi, while the second represents its aggregate consumption rate. The kinetic orders gij and hij capture the sensitivity of each flux to changes in species concentrations: positive values indicate activation, negative values indicate inhibition, and zero indicates no dependence.

BSTModelKit.jl uses a generalized matrix representation that decouples the stoichiometry from the kinetics. Rather than lumping all production and consumption into two aggregate terms per species, the system dynamics are expressed as:

dxdt=Srx,xs+u(t) (2)

where xRn is the vector of dynamic species concentrations, xsRm is the vector of static species concentrations, SRn×p is the stoichiometric matrix for p reactions, rRp is the reaction rate vector, and u(t)Rn is an optional external input vector. Each reaction rate rk is computed using the power-law kinetic formalism:

rk=αkj=1n+mXjGjk,k=1,,p (3)

where αRp is the rate constant vector and GR(n+m)×p is the kinetic order (exponent) matrix. This formulation generalizes the classical S-system (Eqn. (1)) by allowing arbitrary stoichiometric coefficients and providing an explicit separation between network structure (S) and kinetics (G, α). The matrix form also makes the connection to stoichiometric network analysis transparent and facilitates algorithmic construction of models from structured input files.

At steady state, the time derivatives vanish, giving the algebraic condition:

0=Srxss,xs+u (4)

BSTModelKit.jl computes steady-state solutions using the DynamicSS algorithm from Steady-StateDiffEq.jl, which integrates the ODE system forward in time until the derivatives are sufficiently small. This approach is robust for systems where direct algebraic solution of Eqn. (4) is intractable, as is typical for power-law systems with many interacting species.

To quantify the influence of model parameters on system behavior, BSTModelKit.jl provides wrappers for two global sensitivity analysis methods from GlobalSensitivity.jl [Dixit and Rackauckas, 2022]. The Morris method [Morris, 1991] computes elementary effects by perturbing one parameter at a time along randomized trajectories through the parameter space. For each parameter θk, the method estimates the mean μˆk and variance σˆk2 of the elementary effects; parameters with large μˆk have significant influence on the output, while large σˆk2 indicates nonlinear effects or interactions. The Morris method is computationally inexpensive and is well-suited for screening large parameter spaces to identify the most influential parameters. The Sobol method [Sobol’, 2001] provides a more detailed variance-based decomposition, partitioning the total output variance into contributions from individual parameters (first-order indices Si) and parameter interactions (total-order indices STi). While more computationally demanding, the Sobol method yields a complete picture of parameter importance and interaction structure.

3. Software Design

BSTModelKit.jl is organized around a central BSTModel type that encapsulates all data required to simulate and analyze a BST model, including the lists of dynamic and static species, the stoichiometric matrix , the kinetic order matrix G, the rate constant vector α, initial conditions, and static factor values. The model object is mutable, allowing users to adjust parameters, initial conditions, and matrix entries after construction without rebuilding the model from file.

The package exposes a small public API centered on seven functions; complete documentation including usage examples and function signatures is available at https://varnerlab.org/BSTModelKit.jl/dev/. The build function constructs a BSTModel from a file, supporting TOML, BST, and JLD2 formats. The evaluate function simulates the dynamic trajectory by integrating the ODE system (Eqn. (2)) over a user-specified time span, returning vectors of time points and state values. The steadystate function computes the steady-state solution of the system (Eqn. (4)). The savemodel and loadmodel functions serialize and deserialize model objects to JLD2 binary files, enabling reproducible workflows. Finally, the morris and sobol functions perform global sensitivity analysis given a user-defined scalar performance function and parameter bounds.

Models are specified in declarative text files that define the species, network connectivity, kinetic dependencies, and stoichiometric coefficients. The recommended format is TOML, which is human-readable and well-supported by Julia’s standard library. A TOML model file contains a [metadata] section with author and version information, and a [model] section that lists the dynamic and static species, the reaction connection records (specifying reactants and products for each reaction), the kinetic records (specifying which species appear in the rate law for each reaction), and optional stoichiometric coefficient overrides. An example TOML model file for a linear pathway with feedback inhibition is shown in Listing 1. The package also supports a custom BST text format that uses section markers (e.g., #dynamic::start/#dynamic::end) and line comments prefixed with //.

Listing 1:

Listing 1:

TOML model file for a linear pathway with feedback inhibition.

Table 1 summarizes the public API.

Table 1:

Public API of BSTModelKit.jl. All functions operate on or produce BSTModel instances.

Function Returns Description

build(path) BSTModel Construct model from TOML, BST, or JLD2 file
evaluate(model; ...) (T, X) Simulate dynamic trajectory via ODE integration
steadystate(model; ...) xss Compute steady-state concentrations
morris(f, L, U; ...) (μˆ, σˆ2) Morris elementary-effects screening
sobol(f, L, U; ...) SobolResult Sobol variance-based sensitivity indices
savemodel(path, model) Serialize model to JLD2 binary file
loadmodel(path) BSTModel Deserialize model from JLD2 binary file

BSTModelKit.jl builds on several packages from the Julia ecosystem. Dynamic simulation and steady-state computation are handled by OrdinaryDiffEq.jl and SteadyStateDiffEq.jl [Rackauckas and Nie, 2017], which provide adaptive-step explicit and implicit ODE solvers. Global sensitivity analysis is performed through GlobalSensitivity.jl [Dixit and Rackauckas, 2022], with quasi-random sampling provided by QuasiMonteCarlo.jl. Model serialization uses JLD2.jl, a Julia-native binary format that preserves type information across save and load cycles.

4. Examples

We demonstrate the capabilities of BSTModelKit.jl with three examples of increasing complexity: dynamic simulation of a feedback-inhibited linear pathway, steady-state analysis of a branched pathway under varying enzyme levels, and global sensitivity analysis using the Morris and Sobol methods. All examples use the TOML model specification format and are available in the package repository.

4.1. Dynamic simulation of a feedback-inhibited pathway

We considered a five-species linear pathway in which a precursor X1 was converted through intermediates X2 and X3 to a product X4, with a branch producing a byproduct X5 from X3. Three static enzymes E1, E2, and E3 catalyzed reactions r1, r2, and r3, respectively. Product X4 exerted feedback inhibition on r1 by appearing in its rate law with a negative kinetic order (gX4,r1=-0.5), so that as X4 accumulated, the flux from X1 to X2 was progressively suppressed. The model was specified in the TOML format shown in Listing 1, with static factor values E1=E2=E3=1.0, rate constants α=(10,10,10,0.1,0,3) for reactions r1,r2,r3,r5,r0,r4, and initial conditions near zero for all species. Rather than using a constant source rate, we drove the production of X1 through a time-varying external input function u1(t) that applied two square pulses of different amplitude: a high pulse (u1=10) from t=5 to t=15, followed by a return to baseline (u1=1), and then a medium pulse (u1=5) from t=25 to t=35. This input protocol exercised the feedback mechanism under two different loading conditions.

We simulated the dynamic trajectory using the evaluate function and observed that the feedback loop attenuated the response to both pulses (Figure 1). During the high pulse, X1 rose rapidly, the intermediates X2 and X3 reached approximately unit concentration, and X4 accumulated to its highest level (≈ 3.3), which in turn suppressed r1 and limited further buildup of X1. During the medium pulse, the system responded proportionally—the X1 and X4 peaks were roughly half their previous values—demonstrating that the feedback mechanism operated across a range of input magnitudes. The byproduct X5, which had no degradation pathway, accumulated monotonically and ratcheted upward with each pulse, a behavior that would be important to consider in a metabolic engineering context.

Figure 1:

Figure 1:

Dynamic simulation of a feedback-inhibited linear pathway driven by a pulsed input. Top panel: reaction network schematic showing a linear pathway from X1 to X4 with a branch to byproduct X5; solid arrows denote mass flow catalyzed by enzymes E1, E2, and E3, while the dashed red line indicates feedback inhibition of r1 by the product X4gX4,r1=-0.5. Middle panel: the time-varying input function u1(t) applied to the production of X1, consisting of a high pulse (u1=10,t=5-15) and a medium pulse (u1=5, t=25-35) separated by returns to baseline u1=1. Bottom panel: simulated concentration trajectories for all five species over t[0,50]; X4 accumulation during each pulse suppresses r1 via feedback, limiting upstream buildup, while the byproduct X5 accumulates monotonically because it lacks a degradation pathway.

4.2. Steady-state analysis of a branched pathway

We next considered a branched pathway in which a source produced species A, which was converted to B, then to C, at which point the pathway branched: C was converted to D via reaction r3 (catalyzed by enzyme E3) or to E via reaction r4 (catalyzed by enzyme E4). Both D and E were degraded by first-order reactions r5 and r6. Two feedback loops were present: E inhibited r1 gE,r1=-0.5 and D inhibited r2 gD,r2=-0.5. This network topology is common in amino acid and nucleotide biosynthesis, where branch point enzymes control the distribution of flux between competing product pathways. The TOML specification for this network is shown in Listing 2; the branch at C is expressed naturally as two separate connection records (r3::C –> D and r4::C –> E), and the feedback dependencies appear in the kinetics records for r1 and r2. To illustrate how enzyme levels at the branch point controlled metabolic flux distribution, we swept the concentration of E3 from 0.1 to 5.0 while holding E4=1.0 fixed and computed the steady-state concentrations using the steadystate function.

Listing 2:

Listing 2:

TOML model file for a branched pathway with dual feedback inhibition.

We found that increasing E3 systematically redirected flux from the E branch to the D branch (Figure 2). At low E3, reaction r3 was slow relative to r4, so most flux was directed toward E; the steady-state concentration of E exceeded 1.8 while D was below 0.2. As E3 increased, the flux redistributed: the D and E curves crossed near E31, and at high E3 the situation reversed, with D reaching approximately 1.7 and E dropping below 0.4. The branch point metabolite C decreased monotonically with increasing E3, as it was consumed more rapidly. The upstream species A and B also adjusted through the feedback loops, decreasing as the changing D and E levels modulated r1 and r2. This example demonstrated how BSTModelKit.jl could be used to explore the relationship between enzyme levels and steady-state flux distribution, a central concern in metabolic engineering.

Figure 2:

Figure 2:

Steady-state analysis of a branched pathway under varying enzyme levels. Top panel: reaction network schematic showing a linear pathway from source to C, where the pathway branches to D (via r3, catalyzed by E3) and E (via r4, catalyzed by E4); both D and E are degraded by first-order reactions r5 and r6, respectively; dashed red lines indicate feedback inhibition of r1 by E gE,r1=-0.5 and r2 by D gD,r2=-0.5. Bottom panel: steady-state concentrations of all five species as a function of the enzyme level E3 (swept from 0.1 to 5.0, with E4=1.0 held fixed), computed using the steadystate function. At low E3, flux is directed predominantly toward E; as E3 increases, the D and E curves cross near E31 and the flux redistributes to favor the D branch. The upstream species A and B decrease at high E3 due to modulation by the feedback loops.

4.3. Global sensitivity analysis

Finally, we performed a global sensitivity analysis to identify which parameters most influenced the time-integrated concentration of X4 in the feedback-inhibited pathway from Section 4.1. The seven parameters varied were the six rate constants αr0,αr1,,αr5 (with bounds at ±50% of their nominal values) and the feedback kinetic order gX4,r1 (varied from −2 to 0). The scalar performance metric was J=020X4(t)dt, representing the cumulative exposure to the product. We applied both the Morris screening method (500 trajectories) and the Sobol variance decomposition (1000 quasi-random samples).

We found that the two methods yielded consistent conclusions, identifying the source and degradation rates as the dominant parameters (Figure 3). The Morris elementary effects identified αr0 (source rate) and αr4 (product degradation rate) as the most influential parameters, with αr5 (branch rate) a distant third; the upstream reaction rate constants and the feedback kinetic order had negligible influence. The Sobol analysis confirmed this ranking: αr4 had the largest first-order index (S10.54) and total-order index (ST0.59), followed by αr0S10.38,ST0.45. The gap between S1 and ST for both parameters indicated mild interactions, consistent with the multiplicative structure of the power-law kinetics. These results are intuitive: the integrated X4 concentration was controlled primarily by how fast X4 was produced (governed by the source feeding the pathway) and how fast it was removed (governed by r4), while the intermediate conversion steps operated fast enough that their rate constants did not limit the overall accumulation.

Figure 3:

Figure 3:

Global sensitivity analysis of the time-integrated X4 concentration J=020X4dt for the feedback-inhibited pathway shown in Figure 1. Seven parameters were varied: six rate constants (αr1, αr2, αr3, αr5, αr0, αr4; bounds at ±50% of nominal) and the feedback kinetic order gX4,r1 (varied from −2 to 0). Left panel: Morris screening (500 trajectories) showing mean absolute elementary effects μ* with standard deviation error bars for each parameter; αr0 and αr4 dominate. Right panel: Sobol variance decomposition (1000 quasi-random samples) showing first-order (S1) and total-order ST sensitivity indices with confidence intervals; αr4 S10.54,ST0.59 and αr0 (S10.38,ST0.45) account for the majority of output variance, while the gap between S1 and ST indicates mild parameter interactions.

5. Discussion

We have presented BSTModelKit.jl, an open-source Julia package that provides a complete workflow for Biochemical Systems Theory modeling: declarative model specification in TOML or custom text formats, automated construction of the stoichiometric and kinetic order matrices, dynamic simulation via ODE integration, steady-state computation, and global sensitivity analysis using the Morris and Sobol methods. The package leverages the Julia scientific computing ecosystem—particularly OrdinaryDiffEq.jl, SteadyStateDiffEq.jl [Rackauckas and Nie, 2017], and GlobalSensitivity.jl [Dixit and Rackauckas, 2022]—to provide efficient and numerically robust solvers while maintaining a small, focused API. The three examples presented in Section 4 illustrate the range of analyses that can be performed: dynamic simulation of feedback-regulated pathways under time-varying inputs, systematic exploration of how enzyme levels at metabolic branch points control steady-state flux distribution, and identification of the most influential parameters through global sensitivity analysis.

It is worth noting what BSTModelKit.jl deliberately does not attempt. The package is not a general-purpose systems biology platform: it does not provide a graphical user interface, SBML import/export, or stochastic simulation. It does not perform parameter estimation, model selection, or Bayesian inference. These are mature capabilities available in tools such as COPASI [Hoops et al., 2006] and the broader Julia SciML ecosystem. Instead, BSTModelKit.jl occupies a focused niche—programmatic construction, simulation, and sensitivity analysis of S-system models—and is designed to be composed with other Julia packages rather than to replace them.

Several limitations of the current implementation suggest directions for future development. First, BSTModelKit.jl currently supports only the S-system representation; extending the package to support the Generalized Mass Action (GMA) formalism would enable modeling of systems where aggregation of production and consumption terms into single power-law expressions is not appropriate, such as networks with multiple independent production pathways for a single species. Second, the package does not currently provide local sensitivity analysis; integration with Julia’s automatic differentiation ecosystem (e.g., ForwardDiff.jl) would enable efficient computation of sensitivity coefficients and logarithmic gains, quantities that are central to the classical BST analysis framework [Savageau, 1976, Voit, 2000]. Third, parameter estimation from experimental data is not yet supported; combining the power-law model structure with gradient-based optimization or Bayesian inference methods available in the Julia ecosystem would make it possible to calibrate BST models directly from time-series measurements. Finally, integration with ModelingToolkit.jl could enable symbolic simplification, automatic Jacobian generation, and compilation of optimized model code, further improving performance for large-scale systems. We anticipate that these extensions, together with the growing Julia ecosystem for scientific computing, will make BSTModelKit.jl a useful tool for researchers applying BST to problems in systems biology and metabolic engineering.

Acknowledgments

This work was supported by the National Institutes of Health (NIH) National Heart, Lung, and Blood Institute (NHLBI) under grants R33 HL141787 (The Interaction of Basal Risk, Pharmacological Ovulation Induction, Pregnancy and Delivery on Hemostatic Balance; PIs I. Bernstein and T. Orfeo) and R01 HL71944 (The Pregnancy Phenotype and Predisposition to Preeclampsia; PI I. Bernstein).

Data and Code Availability

BSTModelKit.jl is freely available under the MIT license at https://github.com/varnerlab/BSTModelKit.jl. The package can be installed from the Julia REPL by entering package mode (] key) and running:

add BSTModelKit

Alternatively, the development version can be installed directly from GitHub:

add https://github.com/varnerlab/BSTModelKit.jl.git

Documentation is available at https://varnerlab.org/BSTModelKit.jl/dev/. All example code and model files used in this paper are included in the paper/code directory of the repository.

References

  1. Alves Rui and Savageau Michael A. Systemic properties of ensembles of metabolic networks: Application of graphical and statistical methods to simple unbranched pathways. Bioinformatics, 16(6):534–547, 2000. doi: 10.1093/bioinformatics/16.6.534. [DOI] [PubMed] [Google Scholar]
  2. Bezanson Jeff, Edelman Alan, Karpinski Stefan, and Shah Viral B. Julia: A fresh approach to numerical computing. SIAM Review, 59(1):65–98, 2017. doi: 10.1137/141000671. [DOI] [Google Scholar]
  3. Cascante Marta, Curto Rui, and Sorribas Albert. Comparative characterization of the fermentation pathway of Saccharomyces cerevisiae using biochemical systems theory and metabolic control analysis: Steady-state analysis. Mathematical Biosciences, 130(1):51–69, 1995. doi: 10.1016/0025-5564(94)00093-F. [DOI] [PubMed] [Google Scholar]
  4. Vaibhav Kumar Dixit and Christopher Rackauckas. GlobalSensitivity.jl: Performant and parallel global sensitivity analysis with Julia. Journal of Open Source Software, 7(76):4561, 2022. doi: 10.21105/joss.04561. [DOI] [Google Scholar]
  5. Hoops Stefan, Sahle Sven, Gauges Ralph, Lee Christine, Pahle Jürgen, Simus Natalia, Singhal Mudita, Xu Liang, Mendes Pedro, and Kummer Ursula. COPASI—a COmplex PAthway SImulator. Bioinformatics, 22(24):3067–3074, 2006. doi: 10.1093/bioinformatics/btl485. [DOI] [PubMed] [Google Scholar]
  6. Irvine Douglas H. and Savageau Michael A. Efficient solution of nonlinear ordinary differential equations expressed in S-system canonical form. SIAM Journal on Numerical Analysis, 27(3): 704–735, 1990. doi: 10.1137/0727042. [DOI] [Google Scholar]
  7. Morris Max D. Factorial sampling plans for preliminary computational experiments. Technometrics, 33(2):161–174, 1991. doi: 10.1080/00401706.1991.10484804. [DOI] [Google Scholar]
  8. Rackauckas Christopher and Nie Qing. DifferentialEquations.jl – a performant and feature-rich ecosystem for solving differential equations in Julia. Journal of Open Research Software, 5(1):15, 2017. doi: 10.5334/jors.151. [DOI] [Google Scholar]
  9. Savageau Michael A. Biochemical systems analysis: I. Some mathematical properties of the rate law for the component enzymatic reactions. Journal of Theoretical Biology, 25(3):365–369, 1969a. doi: 10.1016/S0022-5193(69)80026-3. [DOI] [PubMed] [Google Scholar]
  10. Savageau Michael A. Biochemical systems analysis: II. The steady-state solutions for an n-pool system using a power-law approximation. Journal of Theoretical Biology, 25(3):370–379, 1969b. doi: 10.1016/S0022-5193(69)80027-5. [DOI] [PubMed] [Google Scholar]
  11. Savageau Michael A. Biochemical systems analysis: III. Dynamic solutions using a power-law approximation. Journal of Theoretical Biology, 26(2):215–226, 1970. doi: 10.1016/S0022-5193(70)80013-3. [DOI] [PubMed] [Google Scholar]
  12. Savageau Michael A. Biochemical Systems Analysis: A Study of Function and Design in Molecular Biology. Addison-Wesley, Reading, MA, 1976. [Google Scholar]
  13. Savageau Michael A. Design principles for elementary gene circuits: Elements, methods, and examples. Chaos, 11(1):142–159, 2001. doi: 10.1063/1.1349892. [DOI] [PubMed] [Google Scholar]
  14. Savageau Michael A., Voit Eberhard O., and Irvine Douglas H. Biochemical systems theory and metabolic control theory: 1. Fundamental similarities and differences. Mathematical Biosciences, 86(2):127–145, 1987. doi: 10.1016/0025-5564(87)90007-1. [DOI] [Google Scholar]
  15. Ilya M. Sobol’. Global sensitivity indices for nonlinear mathematical models and their Monte Carlo estimates. Mathematics and Computers in Simulation, 55(1–3):271–280, 2001. doi: 10.1016/S0378-4754(00)00270-6. [DOI] [Google Scholar]
  16. Sorribas Albert and Savageau Michael A. Strategies for representing metabolic pathways within biochemical systems theory: Reversible pathways. Mathematical Biosciences, 94(2):239–269, 1989. doi: 10.1016/0025-5564(89)90066-7. [DOI] [PubMed] [Google Scholar]
  17. Torres Néstor V. and Voit Eberhard O. Pathway Analysis and Optimization in Metabolic Engineering. Cambridge University Press, Cambridge, 2002. doi: 10.1017/CBO9780511546839. [DOI] [Google Scholar]
  18. Vera Julio, Eva Balsa-Canto Peter Wellstead, Banga Julio R., and Wolkenhauer Olaf. Power-law models of signal transduction pathways. Cellular Signalling, 19(7):1531–1541, 2007. doi: 10.1016/j.cellsig.2007.01.029. [DOI] [PubMed] [Google Scholar]
  19. Voit Eberhard O. Computational Analysis of Biochemical Systems: A Practical Guide for Biochemists and Molecular Biologists. Cambridge University Press, Cambridge, 2000. doi: 10.1017/CBO9780511806131. [DOI] [Google Scholar]
  20. Voit Eberhard O. A First Course in Systems Biology. Garland Science, New York, 1st edition, 2013a. [Google Scholar]
  21. Voit Eberhard O. Biochemical systems theory: A review. ISRN Biomathematics, 2013:897658, 2013b. doi: 10.1155/2013/897658. [DOI] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

BSTModelKit.jl is freely available under the MIT license at https://github.com/varnerlab/BSTModelKit.jl. The package can be installed from the Julia REPL by entering package mode (] key) and running:

add BSTModelKit

Alternatively, the development version can be installed directly from GitHub:

add https://github.com/varnerlab/BSTModelKit.jl.git

Documentation is available at https://varnerlab.org/BSTModelKit.jl/dev/. All example code and model files used in this paper are included in the paper/code directory of the repository.


Articles from ArXiv are provided here courtesy of arXiv

RESOURCES