Skip to content

Commit 1c1517b

Browse files
CDS => CoupledODEs (#10)
* CDS => CoupledODEs * removed CDS def in main file
1 parent 7009b20 commit 1c1517b

File tree

2 files changed

+29
-30
lines changed

2 files changed

+29
-30
lines changed

src/PredefinedDynamicalSystems.jl

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ using StaticArrays
1717
const DDS = DeterministicIteratedMap
1818
include("discrete_famous_systems.jl")
1919

20-
const CDS = CoupledODEs
2120
include("continuous_famous_systems.jl")
2221

2322
end

src/continuous_famous_systems.jl

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ function's documentation string.
2525
[^Lorenz1963]: E. N. Lorenz, J. atmos. Sci. **20**, pp 130 (1963)
2626
"""
2727
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, [σ, ρ, β])
2929
end
3030
const lorenz63 = lorenz
3131
function lorenz_rule(u, p, t)
@@ -82,7 +82,7 @@ function's documentation string.
8282
8383
"""
8484
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)
8686
end
8787
function chua_rule(u, p, t)
8888
@inbounds begin
@@ -133,7 +133,7 @@ function's documentation string.
133133
[^Rössler1976]: O. E. Rössler, Phys. Lett. **57A**, pp 397 (1976)
134134
"""
135135
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)
137137
end
138138
function roessler_rule(u, p, t)
139139
@inbounds begin
@@ -181,7 +181,7 @@ function's documentation string.
181181
"""
182182
function double_pendulum(u0=/2, 0, 0, 0.5];
183183
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])
185185
end
186186
@inbounds function doublependulum_rule(u, p, t)
187187
G, L1, L2, M1, M2 = p
@@ -231,7 +231,7 @@ The function `Systems.henonheiles_ics(E, n)` generates a grid of
231231
[^HénonHeiles1964]: Hénon, M. & Heiles, C., The Astronomical Journal **69**, pp 73–79 (1964)
232232
"""
233233
function henonheiles(u0=[0, -0.25, 0.42081, 0])
234-
return CDS(henonheiles_rule, u0, nothing)
234+
return CoupledODEs(henonheiles_rule, u0, nothing)
235235
end
236236
@inbounds function henonheiles_rule(u, p, t)
237237
du1 = u[3]
@@ -299,7 +299,7 @@ The default initial condition is chaotic.
299299
**70**, pp 105 (2018)
300300
"""
301301
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])
303303
end
304304
function qrule(z, p, t)
305305
@inbounds begin
@@ -329,7 +329,7 @@ end
329329
function lorenz96(N::Int, u0 = range(0; length = N, step = 0.1); F=0.01)
330330
@assert N 4 "`N` must be at least 4"
331331
lor96 = Lorenz96{N}() # create struct
332-
return CDS(lor96, u0, [F])
332+
return CoupledODEs(lor96, u0, [F])
333333
end
334334
struct Lorenz96{N} end # Structure for size type
335335
function (obj::Lorenz96{N})(dx, x, p, t) where {N}
@@ -361,7 +361,7 @@ function's documentation string.
361361
function duffing(u0 = [0.1, 0.25]; ω = 2.2, f = 27.0, d = 0.2, β = 1)
362362
J = zeros(eltype(u0), 2, 2)
363363
J[1,2] = 1
364-
return CDS(duffing_rule, u0, [ω, f, d, β])
364+
return CoupledODEs(duffing_rule, u0, [ω, f, d, β])
365365
end
366366
@inbounds function duffing_rule(x, p, t)
367367
ω, f, d, β = p
@@ -382,7 +382,7 @@ Shinriki oscillator with all other parameters (besides `R1`) set to constants.
382382
function shinriki(u0 = [-2, 0, 0.2]; R1 = 22.0)
383383
# # Jacobian caller for Shinriki:
384384
# 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])
386386
end
387387
shinriki_voltage(V) = 2.295e-5*(exp(3.0038*V) - exp(-3.0038*V))
388388
function shinriki_rule(u, p, t)
@@ -420,7 +420,7 @@ function's documentation string.
420420
[^Gissinger2012]: C. Gissinger, Eur. Phys. J. B **85**, 4, pp 1-12 (2012)
421421
"""
422422
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)
424424
end
425425
function gissinger_rule(u, p, t)
426426
μ, ν, Γ = p
@@ -453,7 +453,7 @@ reversal events by means of a double-disk dynamo system.
453453
[^Rikitake1958]: T. Rikitake Math. Proc. Camb. Phil. Soc. **54**, pp 89–105, (1958)
454454
"""
455455
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)
457457
end
458458
function rikitake_rule(u, p, t)
459459
μ, α = p
@@ -500,7 +500,7 @@ See Chapter 4 of "Elegant Chaos" by J. C. Sprott. [^Sprott2010]
500500
Sprott, J. C. (2010). *Elegant chaos: algebraically simple chaotic flows*.
501501
World Scientific.
502502
"""
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)
504504
function nosehoover_rule(u, p, t)
505505
x,y,z = u
506506
xdot = y
@@ -549,7 +549,7 @@ diameter is 1.
549549
"""
550550
function antidots(u0 = [0.5, 0.5, 0.25, 0.25];
551551
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)
553553
end
554554

555555
function antidot_rule(u, p, t)
@@ -640,7 +640,7 @@ J. C. Sprott. [^Sprott2010]
640640
World Scientific.
641641
"""
642642
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)
644644
end
645645
function ueda_rule(u, p, t)
646646
x,y = u
@@ -1010,7 +1010,7 @@ In the original paper there were no parameters, which are added here for explora
10101010
[^Sprott2014b]: J. C. Sprott. Physics Letters A, 378
10111011
"""
10121012
function sprott_dissipative_conservative(u0 = [1.0, 0, 0]; a = 2, b = 1, c = 1)
1013-
return CDS(
1013+
return CoupledODEs(
10141014
sprott_dissipative_conservative_f, u0, [a, b, c], sprott_dissipative_conservative_J
10151015
)
10161016
end
@@ -1074,7 +1074,7 @@ bifurcation, which occurs close to `I = 9.5`.
10741074
function hodgkinhuxley(u0=[-60.0, 0.0, 0.0, 0.0];
10751075
I = 12.0, Vna = 50.0, Vk = -77.0, Vl = -54.4, gna = 120.0,gk = 36.0, gl = 0.3)
10761076
#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])
10781078
end
10791079
function hodgkinhuxley_rule(u, p, t)
10801080
@inbounds begin
@@ -1133,7 +1133,7 @@ oscillations. Setting `\\mu=8.53` generates chaotic oscillations.
11331133
The London, Edinburgh and Dublin Phil. Mag. & J. of Sci., 2(7), 978–992.
11341134
"""
11351135
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)
11371137
end
11381138
function vanderpol_rule(u, p, t)
11391139
@inbounds begin
@@ -1181,7 +1181,7 @@ oscillations.
11811181
https://mathworld.wolfram.com/Lotka-VolterraEquations.html
11821182
"""
11831183
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)
11851185
end
11861186
function lotkavolterra_rule(u, p, t)
11871187
@inbounds begin
@@ -1227,7 +1227,7 @@ periodic bursting.
12271227
Proc. R. Soc. Lond. B 221, 87-102.
12281228
"""
12291229
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)
12311231
end
12321232
function hindmarshrose_rule(u, p, t)
12331233
@inbounds begin
@@ -1271,7 +1271,7 @@ coupled bursting neurons", DOI:https://doi.org/10.1103/PhysRevE.97.062311.
12711271
function hindmarshrose_two_coupled(u0=[0.1, 0.2, 0.3, 0.4, 0.5, 0.6];
12721272
a = 1.0, b = 3.0, d = 5.0, r = 0.001, s = 4.0, xr = -1.6, I = 4.0,
12731273
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])
12751275
end
12761276
function hindmarshrose_coupled_rule(u, p, t)
12771277
function sigma(x)
@@ -1330,7 +1330,7 @@ radius `\\sqrt(\\mu)`.
13301330
Boulder, CO :Westview Press, a member of the Perseus Books Group (2015).
13311331
"""
13321332
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)
13341334
end
13351335
function stuartlandau_rule(u, p, t)
13361336
@inbounds begin
@@ -1362,7 +1362,7 @@ The parameter container has the parameters in the same order as stated in this
13621362
function's documentation string.
13631363
"""
13641364
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])
13661366
end
13671367
@inbounds function forced_pendulum_rule(u, p, t)
13681368
ω = 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
13921392
function riddled_basins(u0=[0.5, 0.6, 0, 0];
13931393
γ=0.05, x̄ = 1.9, f₀=2.3, ω =3.5, x₀=1.0, y₀=0.0
13941394
)
1395-
return CDS(riddled_basins_rule, u0, [γ, x̄, f₀, ω, x₀, y₀])
1395+
return CoupledODEs(riddled_basins_rule, u0, [γ, x̄, f₀, ω, x₀, y₀])
13961396
end
13971397
function riddled_basins_rule(u, p, t)
13981398
@inbounds begin
@@ -1443,7 +1443,7 @@ function morris_lecar(u0=[0.1, 0.1];
14431443
I = 0.15, V3 = 0.1, V1 = -0.00, V2 = 0.15, V4 = 0.1,
14441444
VCa = 1 , VL = -0.5, VK = -0.7, gCa = 1.2, gK = 2,
14451445
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, τ])
14471447
end
14481448

14491449
@inbounds function morris_lecar_rule(u, p, t)
@@ -1483,7 +1483,7 @@ function sakarya(u0= [-2.8976045, 3.8877978, 3.07465];
14831483
b = 1,
14841484
m = 1
14851485
)
1486-
return CDS(sakarya_rule, u0, [a,b,m])
1486+
return CoupledODEs(sakarya_rule, u0, [a,b,m])
14871487
end
14881488

14891489
function sakarya_rule(u, p, t)
@@ -1526,7 +1526,7 @@ function lorenz_bounded(u0=[-13.284881, -12.444334, 34.188198];
15261526
rho = 28.0,
15271527
sigma = 10.0
15281528
)
1529-
return CDS(lorenzbounded_rule, u0, [beta,r,rho,sigma])
1529+
return CoupledODEs(lorenzbounded_rule, u0, [beta,r,rho,sigma])
15301530
end
15311531

15321532
function lorenzbounded_rule(u, p, t)
@@ -1561,7 +1561,7 @@ momenta [^Tufillaro1984].
15611561
Swinging Atwood's Machine. American Journal of Physics. 52 (10): 895--903.
15621562
"""
15631563
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])
15651565
end
15661566

15671567
function swingingatwood_rule(u, p, t)
@@ -1608,7 +1608,7 @@ function guckenheimer_holmes(u0=[-0.55582369,0.05181624,0.37766104];
16081608
d = 1.6,
16091609
e = 1.7,
16101610
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])
16121612
end
16131613

16141614
function guckenheimerholmes_rule(u, p, t)
@@ -1640,7 +1640,7 @@ An algebraically-simple chaotic system with quadratic nonlinearity [^Sprott2010]
16401640
World Scientific, 2010.
16411641
"""
16421642
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])
16441644
end
16451645

16461646
function halvorsen_rule(u, p, t)

0 commit comments

Comments
 (0)