Skip to content

Commit c3b9dc7

Browse files
works on 1.0
1 parent 0c89364 commit c3b9dc7

File tree

4 files changed

+18
-16
lines changed

4 files changed

+18
-16
lines changed

REQUIRE

Lines changed: 0 additions & 4 deletions
This file was deleted.

src/MATLABDiffEq.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,18 +49,20 @@ function DiffEqBase.__solve(
4949
matstr *= strs[i]
5050
i < length(strs) && (matstr *= "; ")
5151
end
52-
matstr = replace(matstr,"[","(")
53-
matstr = replace(matstr,"]",")")
52+
matstr = replace(matstr,"["=>"(")
53+
matstr = replace(matstr,"]"=>")")
5454
matstr = "f = @(t,internal_var___u) ["*matstr*"];"
5555

56-
# Send the function over
57-
eval_string(matstr)
5856
# Send the variables
5957
put_variable(get_default_msession(),:tspan,tspan)
6058
put_variable(get_default_msession(),:u0,u0)
59+
put_variable(get_default_msession(),:internal_var___p,prob.p)
6160
put_variable(get_default_msession(),:reltol,reltol)
6261
put_variable(get_default_msession(),:abstol,abstol)
6362

63+
# Send the function over
64+
eval_string(matstr)
65+
6466
eval_string("options = odeset('RelTol',reltol,'AbsTol',abstol);")
6567
algstr = string(typeof(alg).name.name)
6668
#algstr = replace(string(typeof(alg)),"MATLABDiffEq.","")

test/REQUIRE

Lines changed: 0 additions & 1 deletion
This file was deleted.

test/runtests.jl

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,24 @@ f = @ode_def_bare LotkaVolterra begin
44
dx = a*x - b*x*y
55
dy = -c*y + d*x*y
66
end a b c d
7-
p = (1.5,1,3,1)
7+
p = [1.5,1,3,1]
88
tspan = (0.0,10.0)
99
u0 = [1.0,1.0]
1010
prob = ODEProblem(f,u0,tspan,p)
1111

12+
sol = solve(prob,MATLABDiffEq.ode45())
13+
1214
algs = [MATLABDiffEq.ode23
13-
MATLABDiffEq.ode45
14-
MATLABDiffEq.ode113
15-
MATLABDiffEq.ode23s
16-
MATLABDiffEq.ode23t
17-
MATLABDiffEq.ode23tb
18-
MATLABDiffEq.ode15s]
15+
MATLABDiffEq.ode45
16+
MATLABDiffEq.ode113
17+
MATLABDiffEq.ode23s
18+
MATLABDiffEq.ode23t
19+
MATLABDiffEq.ode23tb
20+
MATLABDiffEq.ode15s]
1921

2022
for alg in algs
2123
sol = solve(prob,alg())
2224
end
25+
26+
using Plots
27+
plot(sol)

0 commit comments

Comments
 (0)