Skip to content

Commit 9eb3b85

Browse files
Replace ODEInterfaceDiffEq Fortran solvers with Julia-native equivalents
rodas() and radau() from ODEInterfaceDiffEq require compiled Fortran libraries that may not be available in CI. Replace with Rodas5() and RadauIIA5() from OrdinaryDiffEq. Also remove ODEInterfaceDiffEq import from B2, B4, B5 since it's no longer used. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent e9777d3 commit 9eb3b85

File tree

3 files changed

+24
-24
lines changed

3 files changed

+24
-24
lines changed

benchmarks/Bio/BioPreDynB2.jmd

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ BioPreDyn-bench Matlab files.
1717

1818
```julia
1919
using OrdinaryDiffEq, DiffEqDevTools, Sundials, Plots,
20-
ODEInterfaceDiffEq, LSODA, SBMLImporter, Catalyst,
20+
LSODA, SBMLImporter, Catalyst,
2121
LinearAlgebra, BenchmarkTools, JLD2, SciMLBenchmarks
2222

2323
gr()
@@ -81,16 +81,16 @@ setups = [
8181
Dict(:alg => FBDF()),
8282
Dict(:alg => QNDF()),
8383
Dict(:alg => Rodas4()),
84-
Dict(:alg => rodas()),
85-
Dict(:alg => radau()),
84+
Dict(:alg => Rodas5()),
85+
Dict(:alg => RadauIIA5()),
8686
Dict(:alg => lsoda()),
8787
Dict(:alg => CVODE_BDF()),
8888
]
8989

9090
wp = WorkPrecisionSet(oprob, abstols, reltols, setups; error_estimate = :l2,
9191
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
9292

93-
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "rodas" "radau" "lsoda" "CVODE_BDF"]
93+
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "Rodas5" "RadauIIA5" "lsoda" "CVODE_BDF"]
9494
plot(wp; label = names, title = "BioPreDyn B2: High Tolerances")
9595
```
9696

@@ -110,13 +110,13 @@ setups = [
110110
Dict(:alg => Kvaerno5()),
111111
Dict(:alg => CVODE_BDF()),
112112
Dict(:alg => lsoda()),
113-
Dict(:alg => radau()),
113+
Dict(:alg => RadauIIA5()),
114114
]
115115

116116
wp = WorkPrecisionSet(oprob, abstols, reltols, setups; error_estimate = :l2,
117117
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
118118

119-
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "radau"]
119+
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "RadauIIA5"]
120120
plot(wp; label = names, title = "BioPreDyn B2: Low Tolerances")
121121
```
122122

@@ -157,13 +157,13 @@ setups = [
157157
Dict(:alg => Rodas5P()),
158158
Dict(:alg => KenCarp4()),
159159
Dict(:alg => lsoda()),
160-
Dict(:alg => radau()),
160+
Dict(:alg => RadauIIA5()),
161161
]
162162

163163
wp = WorkPrecisionSet(oprob, abstols, reltols, setups; error_estimate = :l2,
164164
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
165165

166-
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "radau"]
166+
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "RadauIIA5"]
167167
plot(wp; label = names, title = "BioPreDyn B2: Summary",
168168
left_margin = 10Plots.mm, right_margin = 10Plots.mm,
169169
legendfontsize = 10, tickfontsize = 10, guidefontsize = 10,

benchmarks/Bio/BioPreDynB4.jmd

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ files since the SBML representation uses rate rules rather than reactions.
1616

1717
```julia
1818
using OrdinaryDiffEq, DiffEqDevTools, Sundials, Plots,
19-
ODEInterfaceDiffEq, LSODA, LinearAlgebra, BenchmarkTools,
19+
LSODA, LinearAlgebra, BenchmarkTools,
2020
SciMLBenchmarks
2121

2222
gr()
@@ -65,16 +65,16 @@ setups = [
6565
Dict(:alg => FBDF()),
6666
Dict(:alg => QNDF()),
6767
Dict(:alg => Rodas4()),
68-
Dict(:alg => rodas()),
69-
Dict(:alg => radau()),
68+
Dict(:alg => Rodas5()),
69+
Dict(:alg => RadauIIA5()),
7070
Dict(:alg => lsoda()),
7171
Dict(:alg => CVODE_BDF()),
7272
]
7373

7474
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
7575
saveat = B4_TSPAN[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
7676

77-
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "rodas" "radau" "lsoda" "CVODE_BDF"]
77+
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "Rodas5" "RadauIIA5" "lsoda" "CVODE_BDF"]
7878
plot(wp; label = names, title = "BioPreDyn B4: High Tolerances")
7979
```
8080

@@ -94,13 +94,13 @@ setups = [
9494
Dict(:alg => Kvaerno5()),
9595
Dict(:alg => CVODE_BDF()),
9696
Dict(:alg => lsoda()),
97-
Dict(:alg => radau()),
97+
Dict(:alg => RadauIIA5()),
9898
]
9999

100100
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
101101
saveat = B4_TSPAN[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
102102

103-
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "radau"]
103+
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "RadauIIA5"]
104104
plot(wp; label = names, title = "BioPreDyn B4: Low Tolerances")
105105
```
106106

@@ -142,13 +142,13 @@ setups = [
142142
Dict(:alg => Rodas5P()),
143143
Dict(:alg => KenCarp4()),
144144
Dict(:alg => lsoda()),
145-
Dict(:alg => radau()),
145+
Dict(:alg => RadauIIA5()),
146146
]
147147

148148
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
149149
saveat = B4_TSPAN[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
150150

151-
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "radau"]
151+
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "RadauIIA5"]
152152
plot(wp; label = names, title = "BioPreDyn B4: Summary",
153153
left_margin = 10Plots.mm, right_margin = 10Plots.mm,
154154
legendfontsize = 10, tickfontsize = 10, guidefontsize = 10,

benchmarks/Bio/BioPreDynB5.jmd

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ is translated from the original C implementation in the BioPreDyn-bench files.
1616

1717
```julia
1818
using OrdinaryDiffEq, DiffEqDevTools, Sundials, Plots,
19-
ODEInterfaceDiffEq, LSODA, LinearAlgebra, BenchmarkTools,
19+
LSODA, LinearAlgebra, BenchmarkTools,
2020
SciMLBenchmarks
2121

2222
gr()
@@ -353,16 +353,16 @@ setups = [
353353
Dict(:alg => FBDF()),
354354
Dict(:alg => QNDF()),
355355
Dict(:alg => Rodas4()),
356-
Dict(:alg => rodas()),
356+
Dict(:alg => Rodas5()),
357357
Dict(:alg => lsoda()),
358-
Dict(:alg => radau()),
358+
Dict(:alg => RadauIIA5()),
359359
Dict(:alg => CVODE_BDF()),
360360
]
361361

362362
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
363363
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
364364

365-
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "rodas" "lsoda" "radau" "CVODE_BDF"]
365+
names = ["Rosenbrock23" "TRBDF2" "FBDF" "QNDF" "Rodas4" "Rodas5" "lsoda" "RadauIIA5" "CVODE_BDF"]
366366
plot(wp; label = names, title = "BioPreDyn B5: High Tolerances")
367367
```
368368

@@ -382,13 +382,13 @@ setups = [
382382
Dict(:alg => Kvaerno5()),
383383
Dict(:alg => CVODE_BDF()),
384384
Dict(:alg => lsoda()),
385-
Dict(:alg => radau()),
385+
Dict(:alg => RadauIIA5()),
386386
]
387387

388388
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
389389
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
390390

391-
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "radau"]
391+
names = ["FBDF" "QNDF" "Rodas4" "Rodas5P" "KenCarp4" "KenCarp47" "Kvaerno5" "CVODE_BDF" "lsoda" "RadauIIA5"]
392392
plot(wp; label = names, title = "BioPreDyn B5: Low Tolerances")
393393
```
394394

@@ -430,13 +430,13 @@ setups = [
430430
Dict(:alg => Rodas5P()),
431431
Dict(:alg => KenCarp4()),
432432
Dict(:alg => lsoda()),
433-
Dict(:alg => radau()),
433+
Dict(:alg => RadauIIA5()),
434434
]
435435

436436
wp = WorkPrecisionSet(prob, abstols, reltols, setups; error_estimate = :l2,
437437
saveat = tspan[2]/1000.0, appxsol = test_sol, maxiters = Int(1e5), numruns = 10)
438438

439-
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "radau"]
439+
names = ["CVODE_BDF" "QNDF" "FBDF" "Rodas4" "Rodas5P" "KenCarp4" "lsoda" "RadauIIA5"]
440440
plot(wp; label = names, title = "BioPreDyn B5: Summary",
441441
left_margin = 10Plots.mm, right_margin = 10Plots.mm,
442442
legendfontsize = 10, tickfontsize = 10, guidefontsize = 10,

0 commit comments

Comments
 (0)