@@ -37,17 +37,16 @@ for the numerical integrator, and solve it.
37
37
38
38
``` julia
39
39
using DifferentialEquations, ModelingToolkit
40
+ using ModelingToolkit: t_nounits as t, D_nounits as D
40
41
41
42
@parameters σ ρ β
42
- @variables t x (t) y (t) z (t)
43
- D = Differential (t)
43
+ @variables x (t) y (t) z (t)
44
44
45
45
eqs = [D (D (x)) ~ σ * (y - x),
46
46
D (y) ~ x * (ρ - z) - y,
47
47
D (z) ~ x * y - β * z]
48
48
49
- @named sys = ODESystem (eqs)
50
- sys = structural_simplify (sys)
49
+ @mtkbuild sys = ODESystem (eqs)
51
50
52
51
u0 = [D (x) => 2.0 ,
53
52
x => 1.0 ,
@@ -75,23 +74,22 @@ Equation (DAE):
75
74
76
75
``` julia
77
76
using DifferentialEquations, ModelingToolkit
77
+ using ModelingToolkit: t_nounits as t, D_nounits as D
78
78
79
79
@parameters σ ρ β
80
- @variables t x (t) y (t) z (t)
81
- D = Differential (t)
80
+ @variables x (t) y (t) z (t)
82
81
83
82
eqs = [D (x) ~ σ * (y - x),
84
83
D (y) ~ x * (ρ - z) - y,
85
84
D (z) ~ x * y - β * z]
86
85
87
- @named lorenz1 = ODESystem (eqs)
88
- @named lorenz2 = ODESystem (eqs)
86
+ @mtkbuild lorenz1 = ODESystem (eqs)
87
+ @mtkbuild lorenz2 = ODESystem (eqs)
89
88
90
89
@variables a (t)
91
90
@parameters γ
92
91
connections = [0 ~ lorenz1. x + lorenz2. y + a * γ]
93
- @named connected = ODESystem (connections, t, [a], [γ], systems = [lorenz1, lorenz2])
94
- sys = structural_simplify (connected)
92
+ @mtkbuild connected = ODESystem (connections, t, [a], [γ], systems = [lorenz1, lorenz2])
95
93
96
94
u0 = [lorenz1. x => 1.0 ,
97
95
lorenz1. y => 0.0 ,
@@ -110,7 +108,7 @@ p = [lorenz1.σ => 10.0,
110
108
γ => 2.0 ]
111
109
112
110
tspan = (0.0 , 100.0 )
113
- prob = ODEProblem (sys , u0, tspan, p)
111
+ prob = ODEProblem (connected , u0, tspan, p)
114
112
sol = solve (prob)
115
113
116
114
using Plots
0 commit comments