@@ -25,7 +25,7 @@ function's documentation string.
25
25
[^Lorenz1963]: E. N. Lorenz, J. atmos. Sci. **20**, pp 130 (1963)
26
26
"""
27
27
function lorenz (u0= [0.0 , 10.0 , 0.0 ]; σ = 10.0 , ρ = 28.0 , β = 8 / 3 )
28
- return CDS (lorenz_rule, u0, [σ, ρ, β])
28
+ return CoupledODEs (lorenz_rule, u0, [σ, ρ, β])
29
29
end
30
30
const lorenz63 = lorenz
31
31
function lorenz_rule (u, p, t)
@@ -82,7 +82,7 @@ function's documentation string.
82
82
83
83
"""
84
84
function chua (u0 = [0.7 , 0.0 , 0.0 ]; a = 15.6 , b = 25.58 , m0 = - 8 / 7 , m1 = - 5 / 7 )
85
- return CDS (chua_rule, u0, [a, b, m0, m1], chua_jacob)
85
+ return CoupledODEs (chua_rule, u0, [a, b, m0, m1], chua_jacob)
86
86
end
87
87
function chua_rule (u, p, t)
88
88
@inbounds begin
@@ -133,7 +133,7 @@ function's documentation string.
133
133
[^Rössler1976]: O. E. Rössler, Phys. Lett. **57A**, pp 397 (1976)
134
134
"""
135
135
function roessler (u0= [1 , - 2 , 0.1 ]; a = 0.2 , b = 0.2 , c = 5.7 )
136
- return CDS (roessler_rule, u0, [a, b, c], roessler_jacob)
136
+ return CoupledODEs (roessler_rule, u0, [a, b, c], roessler_jacob)
137
137
end
138
138
function roessler_rule (u, p, t)
139
139
@inbounds begin
@@ -181,7 +181,7 @@ function's documentation string.
181
181
"""
182
182
function double_pendulum (u0= [π/ 2 , 0 , 0 , 0.5 ];
183
183
G= 10.0 , L1 = 1.0 , L2 = 1.0 , M1 = 1.0 , M2 = 1.0 )
184
- return CDS (doublependulum_rule, u0, [G, L1, L2, M1, M2])
184
+ return CoupledODEs (doublependulum_rule, u0, [G, L1, L2, M1, M2])
185
185
end
186
186
@inbounds function doublependulum_rule (u, p, t)
187
187
G, L1, L2, M1, M2 = p
@@ -231,7 +231,7 @@ The function `Systems.henonheiles_ics(E, n)` generates a grid of
231
231
[^HénonHeiles1964]: Hénon, M. & Heiles, C., The Astronomical Journal **69**, pp 73–79 (1964)
232
232
"""
233
233
function henonheiles (u0= [0 , - 0.25 , 0.42081 , 0 ])
234
- return CDS (henonheiles_rule, u0, nothing )
234
+ return CoupledODEs (henonheiles_rule, u0, nothing )
235
235
end
236
236
@inbounds function henonheiles_rule (u, p, t)
237
237
du1 = u[3 ]
@@ -299,7 +299,7 @@ The default initial condition is chaotic.
299
299
**70**, pp 105 (2018)
300
300
"""
301
301
function qbh (u0= [0. , - 2.5830294658973876 , 1.3873470962626937 , - 4.743416490252585 ]; A= 1. , B= 0.55 , D= 0.4 )
302
- return CDS (qrule, u0, [A, B, D])
302
+ return CoupledODEs (qrule, u0, [A, B, D])
303
303
end
304
304
function qrule (z, p, t)
305
305
@inbounds begin
329
329
function lorenz96 (N:: Int , u0 = range (0 ; length = N, step = 0.1 ); F= 0.01 )
330
330
@assert N ≥ 4 " `N` must be at least 4"
331
331
lor96 = Lorenz96 {N} () # create struct
332
- return CDS (lor96, u0, [F])
332
+ return CoupledODEs (lor96, u0, [F])
333
333
end
334
334
struct Lorenz96{N} end # Structure for size type
335
335
function (obj:: Lorenz96{N} )(dx, x, p, t) where {N}
@@ -361,7 +361,7 @@ function's documentation string.
361
361
function duffing (u0 = [0.1 , 0.25 ]; ω = 2.2 , f = 27.0 , d = 0.2 , β = 1 )
362
362
J = zeros (eltype (u0), 2 , 2 )
363
363
J[1 ,2 ] = 1
364
- return CDS (duffing_rule, u0, [ω, f, d, β])
364
+ return CoupledODEs (duffing_rule, u0, [ω, f, d, β])
365
365
end
366
366
@inbounds function duffing_rule (x, p, t)
367
367
ω, f, d, β = p
@@ -382,7 +382,7 @@ Shinriki oscillator with all other parameters (besides `R1`) set to constants.
382
382
function shinriki (u0 = [- 2 , 0 , 0.2 ]; R1 = 22.0 )
383
383
# # Jacobian caller for Shinriki:
384
384
# shinriki_rule(::Type{Val{:jac}}, J, u, p, t) = (shi::Shinriki)(t, u, J)
385
- return CDS (shinriki_rule, u0, [R1])
385
+ return CoupledODEs (shinriki_rule, u0, [R1])
386
386
end
387
387
shinriki_voltage (V) = 2.295e-5 * (exp (3.0038 * V) - exp (- 3.0038 * V))
388
388
function shinriki_rule (u, p, t)
@@ -420,7 +420,7 @@ function's documentation string.
420
420
[^Gissinger2012]: C. Gissinger, Eur. Phys. J. B **85**, 4, pp 1-12 (2012)
421
421
"""
422
422
function gissinger (u0 = [3 , 0.5 , 1.5 ]; μ = 0.119 , ν = 0.1 , Γ = 0.9 )
423
- return CDS (gissinger_rule, u0, [μ, ν, Γ], gissinger_jacob)
423
+ return CoupledODEs (gissinger_rule, u0, [μ, ν, Γ], gissinger_jacob)
424
424
end
425
425
function gissinger_rule (u, p, t)
426
426
μ, ν, Γ = p
@@ -453,7 +453,7 @@ reversal events by means of a double-disk dynamo system.
453
453
[^Rikitake1958]: T. Rikitake Math. Proc. Camb. Phil. Soc. **54**, pp 89–105, (1958)
454
454
"""
455
455
function rikitake (u0 = [1 , 0 , 0.6 ]; μ = 1.0 , α = 1.0 )
456
- return CDS (rikitake_rule, u0, [μ, α], rikitake_jacob)
456
+ return CoupledODEs (rikitake_rule, u0, [μ, α], rikitake_jacob)
457
457
end
458
458
function rikitake_rule (u, p, t)
459
459
μ, α = p
@@ -500,7 +500,7 @@ See Chapter 4 of "Elegant Chaos" by J. C. Sprott. [^Sprott2010]
500
500
Sprott, J. C. (2010). *Elegant chaos: algebraically simple chaotic flows*.
501
501
World Scientific.
502
502
"""
503
- nosehoover (u0 = [0 , 0.1 , 0 ]) = CDS (nosehoover_rule, u0, nothing , nosehoover_jacob)
503
+ nosehoover (u0 = [0 , 0.1 , 0 ]) = CoupledODEs (nosehoover_rule, u0, nothing , nosehoover_jacob)
504
504
function nosehoover_rule (u, p, t)
505
505
x,y,z = u
506
506
xdot = y
@@ -549,7 +549,7 @@ diameter is 1.
549
549
"""
550
550
function antidots (u0 = [0.5 , 0.5 , 0.25 , 0.25 ];
551
551
d0 = 0.5 , c = 0.2 , B = 1.0 )
552
- return CDS (antidot_rule, u0, [B, d0, c], antidot_jacob)
552
+ return CoupledODEs (antidot_rule, u0, [B, d0, c], antidot_jacob)
553
553
end
554
554
555
555
function antidot_rule (u, p, t)
@@ -640,7 +640,7 @@ J. C. Sprott. [^Sprott2010]
640
640
World Scientific.
641
641
"""
642
642
function ueda (u0 = [3.0 , 0 ]; k = 0.1 , B = 12.0 )
643
- return CDS (ueda_rule, u0, [k, B], ueda_jacob)
643
+ return CoupledODEs (ueda_rule, u0, [k, B], ueda_jacob)
644
644
end
645
645
function ueda_rule (u, p, t)
646
646
x,y = u
@@ -1010,7 +1010,7 @@ In the original paper there were no parameters, which are added here for explora
1010
1010
[^Sprott2014b]: J. C. Sprott. Physics Letters A, 378
1011
1011
"""
1012
1012
function sprott_dissipative_conservative (u0 = [1.0 , 0 , 0 ]; a = 2 , b = 1 , c = 1 )
1013
- return CDS (
1013
+ return CoupledODEs (
1014
1014
sprott_dissipative_conservative_f, u0, [a, b, c], sprott_dissipative_conservative_J
1015
1015
)
1016
1016
end
@@ -1074,7 +1074,7 @@ bifurcation, which occurs close to `I = 9.5`.
1074
1074
function hodgkinhuxley (u0= [- 60.0 , 0.0 , 0.0 , 0.0 ];
1075
1075
I = 12.0 , Vna = 50.0 , Vk = - 77.0 , Vl = - 54.4 , gna = 120.0 ,gk = 36.0 , gl = 0.3 )
1076
1076
# In Ermentrout's & Abbott's books
1077
- return CDS (hodgkinhuxley_rule, u0, [I, Vna, Vk, Vl, gna, gk, gl])
1077
+ return CoupledODEs (hodgkinhuxley_rule, u0, [I, Vna, Vk, Vl, gna, gk, gl])
1078
1078
end
1079
1079
function hodgkinhuxley_rule (u, p, t)
1080
1080
@inbounds begin
@@ -1133,7 +1133,7 @@ oscillations. Setting `\\mu=8.53` generates chaotic oscillations.
1133
1133
The London, Edinburgh and Dublin Phil. Mag. & J. of Sci., 2(7), 978–992.
1134
1134
"""
1135
1135
function vanderpol (u0= [0.5 , 0.0 ]; μ= 1.5 , F= 1.2 , T= 10 )
1136
- return CDS (vanderpol_rule, u0, [μ, F, T], vanderpol_jac)
1136
+ return CoupledODEs (vanderpol_rule, u0, [μ, F, T], vanderpol_jac)
1137
1137
end
1138
1138
function vanderpol_rule (u, p, t)
1139
1139
@inbounds begin
@@ -1181,7 +1181,7 @@ oscillations.
1181
1181
https://mathworld.wolfram.com/Lotka-VolterraEquations.html
1182
1182
"""
1183
1183
function lotkavolterra (u0= [10.0 , 5.0 ]; α = 1.5 , β = 1 , δ= 1 , γ= 3 )
1184
- return CDS (lotkavolterra_rule, u0, [α, β, δ, γ], lotkavolterra_jac)
1184
+ return CoupledODEs (lotkavolterra_rule, u0, [α, β, δ, γ], lotkavolterra_jac)
1185
1185
end
1186
1186
function lotkavolterra_rule (u, p, t)
1187
1187
@inbounds begin
@@ -1227,7 +1227,7 @@ periodic bursting.
1227
1227
Proc. R. Soc. Lond. B 221, 87-102.
1228
1228
"""
1229
1229
function hindmarshrose (u0= [- 1.0 , 0.0 , 0.0 ]; a= 1 , b= 3 , c= 1 , d= 5 , r= 0.001 , s= 4 , xr= - 8 / 5 , I= 2.0 )
1230
- return CDS (hindmarshrose_rule, u0, [a,b,c,d,r,s,xr, I], hindmarshrose_jac)
1230
+ return CoupledODEs (hindmarshrose_rule, u0, [a,b,c,d,r,s,xr, I], hindmarshrose_jac)
1231
1231
end
1232
1232
function hindmarshrose_rule (u, p, t)
1233
1233
@inbounds begin
@@ -1271,7 +1271,7 @@ coupled bursting neurons", DOI:https://doi.org/10.1103/PhysRevE.97.062311.
1271
1271
function hindmarshrose_two_coupled (u0= [0.1 , 0.2 , 0.3 , 0.4 , 0.5 , 0.6 ];
1272
1272
a = 1.0 , b = 3.0 , d = 5.0 , r = 0.001 , s = 4.0 , xr = - 1.6 , I = 4.0 ,
1273
1273
k1 = - 0.17 , k2 = - 0.17 , k_el = 0.0 , xv = 2.0 )
1274
- return CDS (hindmarshrose_coupled_rule, u0, [a, b, c, d, r, s, xr, I, k1, k2, k_el, xv])
1274
+ return CoupledODEs (hindmarshrose_coupled_rule, u0, [a, b, c, d, r, s, xr, I, k1, k2, k_el, xv])
1275
1275
end
1276
1276
function hindmarshrose_coupled_rule (u, p, t)
1277
1277
function sigma (x)
@@ -1330,7 +1330,7 @@ radius `\\sqrt(\\mu)`.
1330
1330
Boulder, CO :Westview Press, a member of the Perseus Books Group (2015).
1331
1331
"""
1332
1332
function stuartlandau_oscillator (u0= [1.0 , 0.0 ]; μ= 1.0 , ω= 1.0 , b= 1 )
1333
- return CDS (stuartlandau_rule, u0, [μ, ω, b], stuartlandau_jac)
1333
+ return CoupledODEs (stuartlandau_rule, u0, [μ, ω, b], stuartlandau_jac)
1334
1334
end
1335
1335
function stuartlandau_rule (u, p, t)
1336
1336
@inbounds begin
@@ -1362,7 +1362,7 @@ The parameter container has the parameters in the same order as stated in this
1362
1362
function's documentation string.
1363
1363
"""
1364
1364
function forced_pendulum (u0 = [0.1 , 0.25 ]; ω = 2.2 , f = 27.0 , d = 0.2 )
1365
- return CDS (forced_pendulum_rule, u0, [ω, f, d])
1365
+ return CoupledODEs (forced_pendulum_rule, u0, [ω, f, d])
1366
1366
end
1367
1367
@inbounds function forced_pendulum_rule (u, p, t)
1368
1368
ω = p[1 ]; F = p[2 ]; d = p[3 ]
@@ -1392,7 +1392,7 @@ of an attractor A there is a point of the basin of attraction of another attract
1392
1392
function riddled_basins (u0= [0.5 , 0.6 , 0 , 0 ];
1393
1393
γ= 0.05 , x̄ = 1.9 , f₀= 2.3 , ω = 3.5 , x₀= 1.0 , y₀= 0.0
1394
1394
)
1395
- return CDS (riddled_basins_rule, u0, [γ, x̄, f₀, ω, x₀, y₀])
1395
+ return CoupledODEs (riddled_basins_rule, u0, [γ, x̄, f₀, ω, x₀, y₀])
1396
1396
end
1397
1397
function riddled_basins_rule (u, p, t)
1398
1398
@inbounds begin
@@ -1443,7 +1443,7 @@ function morris_lecar(u0=[0.1, 0.1];
1443
1443
I = 0.15 , V3 = 0.1 , V1 = - 0.00 , V2 = 0.15 , V4 = 0.1 ,
1444
1444
VCa = 1 , VL = - 0.5 , VK = - 0.7 , gCa = 1.2 , gK = 2 ,
1445
1445
gL = 0.5 , τ = 3 )
1446
- return CDS (morris_lecar_rule, u0, [I, V3, V1, V2, V4, VCa, VL, VK, gCa, gK, gL, τ])
1446
+ return CoupledODEs (morris_lecar_rule, u0, [I, V3, V1, V2, V4, VCa, VL, VK, gCa, gK, gL, τ])
1447
1447
end
1448
1448
1449
1449
@inbounds function morris_lecar_rule (u, p, t)
@@ -1483,7 +1483,7 @@ function sakarya(u0= [-2.8976045, 3.8877978, 3.07465];
1483
1483
b = 1 ,
1484
1484
m = 1
1485
1485
)
1486
- return CDS (sakarya_rule, u0, [a,b,m])
1486
+ return CoupledODEs (sakarya_rule, u0, [a,b,m])
1487
1487
end
1488
1488
1489
1489
function sakarya_rule (u, p, t)
@@ -1526,7 +1526,7 @@ function lorenz_bounded(u0=[-13.284881, -12.444334, 34.188198];
1526
1526
rho = 28.0 ,
1527
1527
sigma = 10.0
1528
1528
)
1529
- return CDS (lorenzbounded_rule, u0, [beta,r,rho,sigma])
1529
+ return CoupledODEs (lorenzbounded_rule, u0, [beta,r,rho,sigma])
1530
1530
end
1531
1531
1532
1532
function lorenzbounded_rule (u, p, t)
@@ -1561,7 +1561,7 @@ momenta [^Tufillaro1984].
1561
1561
Swinging Atwood's Machine. American Journal of Physics. 52 (10): 895--903.
1562
1562
"""
1563
1563
function swinging_atwood (u0= [0.113296 ,1.5707963267948966 ,0.10992 ,0.17747 ]; m1= 1.0 , m2= 4.5 )
1564
- return CDS (swingingatwood_rule, u0, [m1, m2])
1564
+ return CoupledODEs (swingingatwood_rule, u0, [m1, m2])
1565
1565
end
1566
1566
1567
1567
function swingingatwood_rule (u, p, t)
@@ -1608,7 +1608,7 @@ function guckenheimer_holmes(u0=[-0.55582369,0.05181624,0.37766104];
1608
1608
d = 1.6 ,
1609
1609
e = 1.7 ,
1610
1610
f = 0.44 )
1611
- return CDS (guckenheimerholmes_rule, u0, [a,b,c,d,e,f])
1611
+ return CoupledODEs (guckenheimerholmes_rule, u0, [a,b,c,d,e,f])
1612
1612
end
1613
1613
1614
1614
function guckenheimerholmes_rule (u, p, t)
@@ -1640,7 +1640,7 @@ An algebraically-simple chaotic system with quadratic nonlinearity [^Sprott2010]
1640
1640
World Scientific, 2010.
1641
1641
"""
1642
1642
function halvorsen (u0= [- 8.6807408 ,- 2.4741399 ,0.070775762 ]; a = 1.4 , b = 4.0 )
1643
- return CDS (halvorsen_rule, u0, [a, b])
1643
+ return CoupledODEs (halvorsen_rule, u0, [a, b])
1644
1644
end
1645
1645
1646
1646
function halvorsen_rule (u, p, t)
0 commit comments