@@ -54,6 +54,13 @@ function vanderpol_firk(du, u, p, t)
54
54
du[2 ] = μ * ((1 - x^ 2 ) * y - x) # dy/dt = μ * ((1 - x^2) * y - x)
55
55
end
56
56
57
+ function vanderpol_firk (u, p, t)
58
+ x, y = u[1 ], u[2 ]
59
+ μ = p[1 ]
60
+ [y, # dx/dt = y
61
+ μ * ((1 - x^ 2 ) * y - x)] # dy/dt = μ * ((1 - x^2) * y - x)
62
+ end
63
+
57
64
# test adaptivity
58
65
for iip in (true , false )
59
66
vanstiff = ODEProblem {iip} (vanderpol_firk, [sqrt (3 ), 0.0 ], (0.0 , 1.0 ), [1e6 ])
@@ -64,20 +71,20 @@ for iip in (true, false)
64
71
end
65
72
@test length (sol) < 150
66
73
@test SciMLBase. successful_retcode (sol)
67
- sol_temp = solve (remake (vanstiff, p = [sys . μ => 1e7 ]), RadauIIA5 ())
74
+ sol_temp = solve (remake (vanstiff, p = [1e7 ]), RadauIIA5 ())
68
75
@test length (sol_temp) < 150
69
76
@test SciMLBase. successful_retcode (sol_temp)
70
- sol_temp2 = solve (remake (vanstiff, p = [sys . μ => 1e7 ]), reltol = [1e-6 , 1e-4 ], RadauIIA5 ())
77
+ sol_temp2 = solve (remake (vanstiff, p = [1e7 ]), reltol = [1e-6 , 1e-4 ], RadauIIA5 ())
71
78
@test length (sol_temp2) < 180
72
79
@test SciMLBase. successful_retcode (sol_temp2)
73
- sol_temp3 = solve (remake (vanstiff, p = [sys . μ => 1e7 ]), RadauIIA5 (), reltol = 1e-9 ,
80
+ sol_temp3 = solve (remake (vanstiff, p = [1e7 ]), RadauIIA5 (), reltol = 1e-9 ,
74
81
abstol = 1e-9 )
75
82
@test length (sol_temp3) < 970
76
83
@test SciMLBase. successful_retcode (sol_temp3)
77
- sol_temp4 = solve (remake (vanstiff, p = [sys . μ => 1e9 ]), RadauIIA5 ())
84
+ sol_temp4 = solve (remake (vanstiff, p = [1e9 ]), RadauIIA5 ())
78
85
@test length (sol_temp4) < 170
79
86
@test SciMLBase. successful_retcode (sol_temp4)
80
- sol_temp5 = solve (remake (vanstiff, p = [sys . μ => 1e10 ]), RadauIIA5 ())
87
+ sol_temp5 = solve (remake (vanstiff, p = [1e10 ]), RadauIIA5 ())
81
88
@test length (sol_temp5) < 190
82
89
@test SciMLBase. successful_retcode (sol_temp5)
83
90
end
92
99
93
100
# test adaptivity
94
101
for iip in (true , false )
95
- vanstiff = ODEProblem {iip} (sys, [sys. y => 0 , sys. x => sqrt (3 ), sys. μ => 1e6 ], (
96
- 0.0 , 1.0 ))
102
+ vanstiff = ODEProblem {iip} (vanderpol_firk, [sqrt (3 ), 0 ], (0.0 , 1.0 ), [1e6 ])
97
103
sol = solve (vanstiff, RadauIIA3 ())
98
104
if iip
99
105
@test sol. stats. naccept + sol. stats. nreject > sol. stats. njacs # J reuse
0 commit comments