Skip to content

Commit 800970c

Browse files
committed
Merge remote-tracking branch 'origin/master' into BK
2 parents f3fd160 + 3964a52 commit 800970c

35 files changed

+119
-101
lines changed

docs/Project.toml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,12 @@ OptimizationBBO = "3e6eede4-6085-4f62-9a71-46d9bc1eb92b"
2626
OptimizationNLopt = "4e6fcdb7-1186-4e1f-a706-475e75c168bb"
2727
OptimizationOptimJL = "36348300-93cb-4f02-beb5-3c3902f8871e"
2828
OptimizationOptimisers = "42dfb2eb-d2b4-4451-abcd-913932933ac1"
29-
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
29+
OrdinaryDiffEqBDF = "6ad6398a-0878-4a85-9266-38940aa047c8"
30+
OrdinaryDiffEqDefault = "50262376-6c5a-4cf5-baba-aaf4f84d72d7"
31+
OrdinaryDiffEqRosenbrock = "43230ef6-c299-4910-a778-202eb28ce4ce"
32+
OrdinaryDiffEqSDIRK = "2d112036-d095-4a1e-ab9a-08536f3ecdbf"
33+
OrdinaryDiffEqTsit5 = "b1df2697-797e-41e3-8120-5422d3b24e4a"
34+
OrdinaryDiffEqVerner = "79d7bb75-1356-48c1-b8c0-6832512096c2"
3035
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
3136
QuasiMonteCarlo = "8a4e6c94-4038-4cdc-81c3-7e6ffdb2a71b"
3237
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
@@ -64,7 +69,12 @@ OptimizationBBO = "0.4"
6469
OptimizationNLopt = "0.3"
6570
OptimizationOptimJL = "0.4"
6671
OptimizationOptimisers = "0.3"
67-
OrdinaryDiffEq = "6.80.1"
72+
OrdinaryDiffEqBDF = "1"
73+
OrdinaryDiffEqDefault = "1"
74+
OrdinaryDiffEqRosenbrock = "1"
75+
OrdinaryDiffEqSDIRK = "1"
76+
OrdinaryDiffEqTsit5 = "1"
77+
OrdinaryDiffEqVerner = "1"
6878
Plots = "1.40"
6979
QuasiMonteCarlo = "0.3"
7080
SciMLBase = "2.46"

docs/src/api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ corresponding chemical reaction ODE models, chemical Langevin equation SDE
3535
models, and stochastic chemical kinetics jump process models.
3636

3737
```@example ex1
38-
using Catalyst, OrdinaryDiffEq, StochasticDiffEq, JumpProcesses, Plots
38+
using Catalyst, OrdinaryDiffEqTsit5, StochasticDiffEq, JumpProcesses, Plots
3939
t = default_t()
4040
@parameters β γ
4141
@species S(t) I(t) R(t)
@@ -393,4 +393,4 @@ Finally, we provide the following helper functions to plot and animate spatial l
393393
lattice_plot
394394
lattice_animation
395395
lattice_kymograph
396-
```
396+
```

docs/src/faqs.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ One can directly use symbolic variables to index into SciML solution objects.
55
Moreover, observables can also be evaluated in this way. For example,
66
consider the system
77
```@example faq1
8-
using Catalyst, OrdinaryDiffEq, Plots
8+
using Catalyst, OrdinaryDiffEqTsit5, Plots
99
rn = @reaction_network ABtoC begin
1010
(k₊,k₋), A + B <--> C
1111
end
@@ -132,7 +132,7 @@ When directly constructing a `ReactionSystem`, we can set the symbolic values to
132132
have the desired default values, and this will automatically be propagated
133133
through to the equation solvers:
134134
```@example faq3
135-
using Catalyst, Plots, OrdinaryDiffEq
135+
using Catalyst, Plots, OrdinaryDiffEqTsit5
136136
t = default_t()
137137
@parameters β=1e-4 ν=.01
138138
@species S(t)=999.0 I(t)=1.0 R(t)=0.0
@@ -175,7 +175,7 @@ Julia `Symbol`s corresponding to each variable/parameter to their values, or
175175
from ModelingToolkit symbolic variables/parameters to their values. Using
176176
`Symbol`s we have
177177
```@example faq4
178-
using Catalyst, OrdinaryDiffEq
178+
using Catalyst, OrdinaryDiffEqTsit5
179179
rn = @reaction_network begin
180180
α, S + I --> 2I
181181
β, I --> R

docs/src/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ etc).
3232
- [Steady states](@ref homotopy_continuation) (and their [stabilities](@ref steady_state_stability)) can be computed for model ODE representations.
3333

3434
#### [Features of Catalyst composing with other packages](@id doc_index_features_composed)
35-
- [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) Can be used to numerically solver generated reaction rate equation ODE models.
35+
- [OrdinaryDiffEq.jl](https://github.com/SciML/OrdinaryDiffEq.jl) Can be used to numerically solve generated reaction rate equation ODE models.
3636
- [StochasticDiffEq.jl](https://github.com/SciML/StochasticDiffEq.jl) can be used to numerically solve generated Chemical Langevin Equation SDE models.
3737
- [JumpProcesses.jl](https://github.com/SciML/JumpProcesses.jl) can be used to numerically sample generated Stochastic Chemical Kinetics Jump Process models.
3838
- Support for [parallelization of all simulations](@ref ode_simulation_performance_parallelisation), including parallelization of [ODE simulations on GPUs](@ref ode_simulation_performance_parallelisation_GPU) using [DiffEqGPU.jl](https://github.com/SciML/DiffEqGPU.jl).
@@ -92,7 +92,7 @@ Pkg.add("Catalyst")
9292

9393
Many Catalyst features require the installation of additional packages. E.g. for ODE-solving and simulation plotting
9494
```julia
95-
Pkg.add("OrdinaryDiffEq")
95+
Pkg.add("OrdinaryDiffEqDefault")
9696
Pkg.add("Plots")
9797
```
9898
is also needed.
@@ -124,7 +124,7 @@ an ordinary differential equation.
124124

125125
```@example home_simple_example
126126
# Fetch required packages.
127-
using Catalyst, OrdinaryDiffEq, Plots
127+
using Catalyst, OrdinaryDiffEqDefault, Plots
128128
129129
# Create model.
130130
model = @reaction_network begin

docs/src/introduction_to_catalyst/catalyst_for_new_julia_users.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,15 +55,15 @@ To import a Julia package into a session, you can use the `using PackageName` co
5555
using Pkg
5656
Pkg.add("Catalyst")
5757
```
58-
Here, the Julia package manager package (`Pkg`) is by default installed on your computer when Julia is installed, and can be activated directly. Next, we also wish to install the `OrdinaryDiffEq` and `Plots` packages (for numeric simulation of models, and plotting, respectively).
58+
Here, the Julia package manager package (`Pkg`) is by default installed on your computer when Julia is installed, and can be activated directly. Next, we install an ODE solver from a sub-library of the larger `OrdinaryDiffEq` package, and install the `Plots` package for making graphs. We will import the recommended default solver from the `OrdinaryDiffEqDefault` sub-library. A full list of `OrdinaryDiffEq` solver sublibraries can be found on the sidebar of [this page](https://docs.sciml.ai/OrdinaryDiffEq/stable/).
5959
```julia
60-
Pkg.add("OrdinaryDiffEq")
60+
Pkg.add("OrdinaryDiffEqDefault")
6161
Pkg.add("Plots")
6262
```
6363
Once a package has been installed through the `Pkg.add` command, this command does not have to be repeated if we restart our Julia session. We can now import all three packages into our current session with:
6464
```@example ex2
6565
using Catalyst
66-
using OrdinaryDiffEq
66+
using OrdinaryDiffEqDefault
6767
using Plots
6868
```
6969
Here, if we restart Julia, these `using` commands *must be rerun*.
@@ -253,4 +253,4 @@ If you are a new Julia user who has used this tutorial, and there was something
253253
---
254254
## References
255255
[^1]: [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 (2023).](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1011530)
256-
[^2]: [Jeff Bezanson, Alan Edelman, Stefan Karpinski, Viral B. Shah, *Julia: A Fresh Approach to Numerical Computing*, SIAM Review (2017).](https://epubs.siam.org/doi/abs/10.1137/141000671)
256+
[^2]: [Jeff Bezanson, Alan Edelman, Stefan Karpinski, Viral B. Shah, *Julia: A Fresh Approach to Numerical Computing*, SIAM Review (2017).](https://epubs.siam.org/doi/abs/10.1137/141000671)

docs/src/introduction_to_catalyst/introduction_to_catalyst.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Pkg.activate("catalyst_introduction")
2020

2121
# packages we will use in this tutorial
2222
Pkg.add("Catalyst")
23-
Pkg.add("OrdinaryDiffEq")
23+
Pkg.add("OrdinaryDiffEqTsit5")
2424
Pkg.add("Plots")
2525
Pkg.add("Latexify")
2626
Pkg.add("JumpProcesses")
@@ -29,7 +29,7 @@ Pkg.add("StochasticDiffEq")
2929

3030
We next load the basic packages we'll need for our first example:
3131
```@example tut1
32-
using Catalyst, OrdinaryDiffEq, Plots, Latexify
32+
using Catalyst, OrdinaryDiffEqTsit5, Plots, Latexify
3333
```
3434

3535
Let's start by using the Catalyst [`@reaction_network`](@ref) macro to specify a
@@ -386,4 +386,4 @@ A more detailed summary of the precise mathematical equations Catalyst can gener
386386

387387
---
388388
## References
389-
1. [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 (2023).](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1011530)
389+
1. [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 (2023).](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1011530)

docs/src/inverse_problems/behaviour_optimisation.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ end
1717
```
1818
To demonstrate this pulsing behaviour we will simulate the system for an example parameter set. We select an initial condition (`u0`) so the system begins in a steady state.
1919
```@example behaviour_optimization
20-
using OrdinaryDiffEq, Plots
20+
using OrdinaryDiffEqTsit5, Plots
2121
example_p = [:pX => 0.1, :pY => 1.0, :pZ => 1.0]
2222
tspan = (0.0, 50.0)
2323
example_u0 = [:X => 0.1, :Y => 0.1, :Z => 1.0]
@@ -107,4 +107,4 @@ If you use this functionality in your research, please cite the following paper
107107
---
108108
## References
109109
[^1]: [Mykel J. Kochenderfer, Tim A. Wheeler *Algorithms for Optimization*, The MIT Press (2019).](https://algorithmsbook.com/optimization/files/optimization.pdf)
110-
[^2]: [Lea Goentoro, Oren Shoval, Marc W Kirschner, Uri Alon *The incoherent feedforward loop can provide fold-change detection in gene regulation*, Molecular Cell (2009).](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2896310/)
110+
[^2]: [Lea Goentoro, Oren Shoval, Marc W Kirschner, Uri Alon *The incoherent feedforward loop can provide fold-change detection in gene regulation*, Molecular Cell (2009).](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2896310/)

docs/src/inverse_problems/examples/ode_fitting_oscillation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ In this example we will use [Optimization.jl](https://github.com/SciML/Optimizat
44
First, we fetch the required packages.
55
```@example pe_osc_example
66
using Catalyst
7-
using OrdinaryDiffEq
7+
using OrdinaryDiffEqRosenbrock
88
using Optimization
99
using OptimizationOptimisers # Required for the ADAM optimizer.
1010
using SciMLSensitivity # Required for `Optimization.AutoZygote()` automatic differentiation option.

docs/src/inverse_problems/global_sensitivity_analysis.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ end
2222
```
2323
We will study the peak number of infected cases's ($max(I(t))$) sensitivity to the system's three parameters. We create a function which simulates the system from a given initial condition and measures this property:
2424
```@example gsa_1
25-
using OrdinaryDiffEq
25+
using OrdinaryDiffEqDefault
2626
2727
u0 = [:S => 999.0, :I => 1.0, :E => 0.0, :R => 0.0]
2828
p_dummy = [:β => 0.0, :a => 0.0, :γ => 0.0]
@@ -157,4 +157,4 @@ If you use this functionality in your research, [in addition to Catalyst](@ref d
157157

158158
---
159159
## References
160-
[^1]: [Saltelli, A et al. *Global Sensitivity Analysis. The Primer*, Wiley (2008).](http://www.andreasaltelli.eu/file/repository/A_Saltelli_Marco_Ratto_Terry_Andres_Francesca_Campolongo_Jessica_Cariboni_Debora_Gatelli_Michaela_Saisana_Stefano_Tarantola_Global_Sensitivity_Analysis_The_Primer_Wiley_Interscience_2008_.pdf)
160+
[^1]: [Saltelli, A et al. *Global Sensitivity Analysis. The Primer*, Wiley (2008).](http://www.andreasaltelli.eu/file/repository/A_Saltelli_Marco_Ratto_Terry_Andres_Francesca_Campolongo_Jessica_Cariboni_Debora_Gatelli_Michaela_Saisana_Stefano_Tarantola_Global_Sensitivity_Analysis_The_Primer_Wiley_Interscience_2008_.pdf)

docs/src/inverse_problems/optimization_ode_param_fitting.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ u0 = [:S => 1.0, :E => 1.0, :SE => 0.0, :P => 0.0]
2121
ps_true = [:kB => 1.0, :kD => 0.1, :kP => 0.5]
2222
2323
# Generate synthetic data.
24-
using OrdinaryDiffEq
24+
using OrdinaryDiffEqDefault
2525
oprob_true = ODEProblem(rn, u0, (0.0, 10.0), ps_true)
2626
true_sol = solve(oprob_true)
2727
data_sol = solve(oprob_true; saveat=1.0)
@@ -39,7 +39,7 @@ Catalyst.PNG(plot(plt; fmt = :png, dpi = 200)) # hide
3939

4040
Next, we will use DiffEqParamEstim to build a loss function to measure how well our model's solutions fit the data.
4141
```@example diffeq_param_estim_1
42-
using DiffEqParamEstim, Optimization
42+
using DiffEqParamEstim, Optimization, OrdinaryDiffEqTsit5
4343
ps_dummy = [:kB => 0.0, :kD => 0.0, :kP => 0.0]
4444
oprob = ODEProblem(rn, u0, (0.0, 10.0), ps_dummy)
4545
loss_function = build_loss_objective(oprob, Tsit5(), L2Loss(data_ts, data_vals), Optimization.AutoForwardDiff();

0 commit comments

Comments
 (0)