Skip to content

Commit 4dc6f73

Browse files
Switch to OrdinaryDiffEqCore.jl (#141)
* switch to OrdinaryDiffEqCore.jl * bump compat of SciMLBase.j to v2.68 * bump version of SymbolicIndexingInterface.jl to v0.3.36 * drop support for FastBroadcast v0.3 * do not import OrdinaryDiffEq * add missing compat bounds * set compat bounds of stdlibs to 1 * use OrdinaryDiffEq.jl subpackages in tests * use OrdinaryDiffEq.jl subpackages * fix another using OrdinaryDiffEq * use OrdinaryDiffEq.jl subpackages in docs * add compat for OrdinaryDiffEqRosenbrock.jl in docs * fix typo in docs * fix step! * use ADTypes.jl to fix deprecation warnings * format * apply new formatter version * bump compat of FastBroadcast.jl to v0.3.1 (v0.3.0 is yanked) * fix typo * bump FastBroadcast to v0.3.4 * lower compat bound of OrdinaryDiffEqCore.jl to v1.6 * bump compat bound of Reexport.jl to v1.2.2 * lower compat bound of OrdinaryDiffEqRosenbrock.jl v1.3 * bump compat bound of MuladdMacro.jl to v0.2.4 * bump compat for StaticArrays.jl to v1.9.7 * bump compat for StaticArrays.jl to v1.9.7 * bump compat for FastBroadcast.jl v0.3.5 * fix get_tmp_cache * fix solve! * bump compat of LinearSolve.jl to v2.32 * also bump LinearSolve.jl to v2.32 in docs an test * bump compat of Plots.jl to v1.25.11 * bump compat of OrdinaryDiffEqCore.jl to v1.15.1 * bump compat of OrdinaryDiffEqCore.jl to v1.16 * bump compat of OrdinaryDiffEqRosenbrock to v1.4 * bump compat of OrdinaryDiffEqSDIRK.jl to v1.2
1 parent 17ac42c commit 4dc6f73

15 files changed

+101
-81
lines changed

.github/workflows/Downgrade.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
- uses: julia-actions/cache@v2
3939
- uses: julia-actions/julia-downgrade-compat@v1
4040
with:
41-
skip: LinearAlgebra,SparseArrays,Statistics
41+
skip: LinearAlgebra,SparseArrays,Statistics,Test
4242
projects: ., test
4343
- uses: julia-actions/julia-buildpkg@v1
4444
env:

.github/workflows/FormatCheck.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
#
2929
# julia -e 'using Pkg; Pkg.add(PackageSpec(name="JuliaFormatter", version="0.13.0"))'
3030
run: |
31-
julia -e 'using Pkg; Pkg.add(PackageSpec(name = "JuliaFormatter", version="1.0.45"))'
31+
julia -e 'using Pkg; Pkg.add(PackageSpec(name = "JuliaFormatter", version="1.0.60"))'
3232
julia -e 'using JuliaFormatter; format(".", verbose = true)'
3333
- name: Format check
3434
run: |

Project.toml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ FastBroadcast = "7034ab61-46d4-4ed7-9d0f-46aef9175898"
88
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
99
LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
1010
MuladdMacro = "46d2c3a1-f734-5fdb-9937-b9b9aeba4221"
11-
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
11+
OrdinaryDiffEqCore = "bbf590c4-e513-4bbe-9b18-05decba2e5d8"
1212
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
1313
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
1414
SimpleUnPack = "ce78b400-467f-4804-87d8-8f486da07d0a"
@@ -17,15 +17,15 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
1717
SymbolicIndexingInterface = "2efcf032-c050-4f8e-a9bb-153293bab1f5"
1818

1919
[compat]
20-
FastBroadcast = "0.2.5, 0.3"
21-
LinearAlgebra = "1.7"
22-
LinearSolve = "2.21"
23-
MuladdMacro = "0.2.1"
24-
OrdinaryDiffEq = "6.59"
25-
Reexport = "1"
26-
SciMLBase = "2"
20+
FastBroadcast = "0.3.5"
21+
LinearAlgebra = "1"
22+
LinearSolve = "2.32"
23+
MuladdMacro = "0.2.4"
24+
OrdinaryDiffEqCore = "1.16"
25+
Reexport = "1.2.2"
26+
SciMLBase = "2.68"
2727
SimpleUnPack = "1"
28-
SparseArrays = "1.7"
29-
StaticArrays = "1.5"
30-
SymbolicIndexingInterface = "0.2, 0.3"
28+
SparseArrays = "1"
29+
StaticArrays = "1.9.7"
30+
SymbolicIndexingInterface = "0.3.36"
3131
julia = "1.10"

docs/Project.toml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,27 @@
11
[deps]
22
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
3+
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
4+
DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def"
35
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
46
InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
57
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
68
LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
7-
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
9+
OrdinaryDiffEqRosenbrock = "43230ef6-c299-4910-a778-202eb28ce4ce"
810
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
911
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
1012
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
1113
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
1214

1315
[compat]
1416
BenchmarkTools = "1"
17+
DiffEqBase = "6.160"
18+
DiffEqCallbacks = "4"
1519
Documenter = "1"
1620
InteractiveUtils = "1"
17-
LinearAlgebra = "1.7"
18-
LinearSolve = "2.21"
19-
OrdinaryDiffEq = "6.59"
21+
LinearAlgebra = "1"
22+
LinearSolve = "2.32"
23+
OrdinaryDiffEqRosenbrock = "1.4"
2024
Pkg = "1"
2125
Plots = "1"
22-
SparseArrays = "1.7"
23-
StaticArrays = "1.5"
26+
SparseArrays = "1"
27+
StaticArrays = "1.9.7"

docs/make.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,13 +79,13 @@ makedocs(modules = [PositiveIntegrators],
7979
"Stratospheric reaction problem" => "stratospheric_reaction.md",
8080
"Linear Advection" => "linear_advection.md",
8181
"Heat Equation, Neumann BCs" => "heat_equation_neumann.md",
82-
"Heat Equation, Dirichlet BCs" => "heat_equation_dirichlet.md",
82+
"Heat Equation, Dirichlet BCs" => "heat_equation_dirichlet.md"
8383
],
8484
"Troubleshooting, FAQ" => "faq.md",
8585
"API reference" => "api_reference.md",
8686
"Contributing" => "contributing.md",
8787
"Code of conduct" => "code_of_conduct.md",
88-
"License" => "license.md",
88+
"License" => "license.md"
8989
])
9090

9191
deploydocs(repo = "github.com/SKopecz/PositiveIntegrators.jl",

docs/src/heat_equation_dirichlet.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ versioninfo()
235235
println()
236236
237237
using Pkg
238-
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve", "OrdinaryDiffEq"],
238+
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve"],
239239
mode=PKGMODE_MANIFEST)
240240
nothing # hide
241241
```

docs/src/heat_equation_neumann.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ versioninfo()
213213
println()
214214
215215
using Pkg
216-
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve", "OrdinaryDiffEq"],
216+
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve"],
217217
mode=PKGMODE_MANIFEST)
218218
nothing # hide
219219
```

docs/src/index.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ Consequently the production matrix ``\mathbf P`` and destruction vector ``\mathb
7272
```
7373

7474
```@setup LotkaVolterra
75-
import Pkg; Pkg.add("OrdinaryDiffEq"); Pkg.add("Plots")
75+
import Pkg; Pkg.add("Plots")
7676
```
7777
To solve this PDS together with initial values ``u_1(0)=u_2(0)=2`` on the time domain ``(0,10)``, we first need to create a `PDSProblem`.
7878
```@example LotkaVolterra
@@ -134,10 +134,6 @@ The corresponding production matrix ``\mathbf P`` is
134134

135135
The following example shows how to implement the above SIR model with ``\beta=0.4, \gamma=0.04``, initial conditions ``S(0)=997, I(0)=3, R(0)=0`` and time domain ``(0, 100)`` using `ConservativePDSProblem` from [PositiveIntegrators.jl](https://github.com/SKopecz/PositiveIntegrators.jl).
136136

137-
```@setup SIR
138-
import Pkg; Pkg.add("OrdinaryDiffEq");
139-
```
140-
141137
```@example SIR
142138
using PositiveIntegrators
143139

docs/src/linear_advection.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ versioninfo()
164164
println()
165165
166166
using Pkg
167-
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve", "OrdinaryDiffEq"],
167+
Pkg.status(["PositiveIntegrators", "SparseArrays", "KLU", "LinearSolve"],
168168
mode=PKGMODE_MANIFEST)
169169
nothing # hide
170170
```

docs/src/npzd_model.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Z' &= 0.5(1 - e^{-1.21P^2})Z - 0.01Z - 0.02Z,\\
1414
D' &= 0.05P + 0.02Z - 0.003D,
1515
\end{aligned}
1616
```
17-
and we consider the initial conditions ``N=8``, ``P=2``, ``Z=1`` and ``D=4``. The time domain of interest is ``t\in[0,10]``.
17+
and we consider the initial conditions ``N=8``, ``P=2``, ``Z=1`` and ``D=4``. The time domain of interest is ``t\in[0,10]``.
1818

1919
The model can be represented as a conservative PDS with production terms
2020
```math
@@ -28,7 +28,7 @@ whereby production terms not listed have the value zero. Since the PDS is conser
2828

2929
## Solution of the production-destruction system
3030

31-
Now we are ready to define a [`ConservativePDSProblem`](@ref) and to solve this problem with a method of [PositiveIntegrators.jl](https://github.com/SKopecz/PositiveIntegrators.jl) or [OrdinaryDiffEq.jl](https://docs.sciml.ai/OrdinaryDiffEq/stable/).
31+
Now we are ready to define a [`ConservativePDSProblem`](@ref) and to solve this problem with a method of [PositiveIntegrators.jl](https://github.com/SKopecz/PositiveIntegrators.jl) or [OrdinaryDiffEq.jl](https://docs.sciml.ai/OrdinaryDiffEq/stable/).
3232

3333
As mentioned above, we will try different approaches to solve this PDS and compare their efficiency. These are
3434
1. an out-of-place implementation with standard (dynamic) matrices and vectors,
@@ -70,7 +70,7 @@ sol_oop = solve(prob_oop, MPRK43I(1.0, 0.5))
7070
7171
nothing #hide
7272
```
73-
Plotting the solution shows that the components ``N`` and ``P`` are in danger of becoming negative.
73+
Plotting the solution shows that the components ``N`` and ``P`` are in danger of becoming negative.
7474
```@example NPZD
7575
using Plots
7676
@@ -203,7 +203,7 @@ versioninfo()
203203
println()
204204
205205
using Pkg
206-
Pkg.status(["PositiveIntegrators", "StaticArrays", "LinearSolve", "OrdinaryDiffEq"],
206+
Pkg.status(["PositiveIntegrators", "StaticArrays", "LinearSolve"],
207207
mode=PKGMODE_MANIFEST)
208208
nothing # hide
209209
```

0 commit comments

Comments
 (0)