@@ -70,12 +70,14 @@ ss = ModelingToolkit.get_structure(initialize_system_structure(lorenz1))
70
70
@test isempty (setdiff (ss. fullvars, [D (x), F, y, x, D (y), u, z, D (z)]))
71
71
lorenz2 = lorenz (:lorenz2 )
72
72
73
- connected = ODESystem ([s ~ a + lorenz1. x
73
+ connected = ODESystem ((@namespace [
74
+ s ~ a + lorenz1. x
74
75
lorenz2. y ~ s
75
76
lorenz1. F ~ lorenz2. u
76
- lorenz2. F ~ lorenz1. u],t, systems= [lorenz1,lorenz2])
77
+ lorenz2. F ~ lorenz1. u]), t, systems= [lorenz1, lorenz2])
77
78
@test length (Base. propertynames (connected)) == 10
78
79
@test isequal ((@nonamespace connected. lorenz1. x), x)
80
+ @test isequal (connected. lorenz1. x, x)
79
81
80
82
# Reduced Flattened System
81
83
@@ -85,7 +87,7 @@ reduced_system2 = structural_simplify(structural_simplify(structural_simplify(co
85
87
@test isempty (setdiff (states (reduced_system), states (reduced_system2)))
86
88
@test isequal (equations (reduced_system), equations (reduced_system2))
87
89
@test isequal (observed (reduced_system), observed (reduced_system2))
88
- @test setdiff (states (reduced_system), [
90
+ @test setdiff (states (reduced_system), @namespace [
89
91
s
90
92
a
91
93
lorenz1. x
@@ -98,7 +100,7 @@ reduced_system2 = structural_simplify(structural_simplify(structural_simplify(co
98
100
lorenz2. u
99
101
]) |> isempty
100
102
101
- @test setdiff (parameters (reduced_system), [
103
+ @test setdiff (parameters (reduced_system), @namespace [
102
104
lorenz1. σ
103
105
lorenz1. ρ
104
106
lorenz1. β
@@ -107,7 +109,7 @@ reduced_system2 = structural_simplify(structural_simplify(structural_simplify(co
107
109
lorenz2. β
108
110
]) |> isempty
109
111
110
- reduced_eqs = [
112
+ reduced_eqs = @namespace [
111
113
D (lorenz1. x) ~ lorenz1. σ* ((lorenz1. y) - (lorenz1. x)) - ((lorenz2. z) - (lorenz2. x) - (lorenz2. y))
112
114
D (lorenz1. y) ~ lorenz1. z + lorenz1. x* (lorenz1. ρ - (lorenz1. z)) - (lorenz1. x) - (lorenz1. y)
113
115
D (lorenz1. z) ~ lorenz1. x* lorenz1. y - (lorenz1. β* (lorenz1. z))
@@ -118,7 +120,7 @@ reduced_eqs = [
118
120
119
121
test_equal .(equations (reduced_system), reduced_eqs)
120
122
121
- observed_eqs = [
123
+ observed_eqs = @namespace [
122
124
s ~ lorenz2. y
123
125
a ~ lorenz2. y - lorenz1. x
124
126
lorenz1. F ~ - ((lorenz2. z) - (lorenz2. x) - (lorenz2. y))
@@ -128,15 +130,15 @@ observed_eqs = [
128
130
]
129
131
test_equal .(observed (reduced_system), observed_eqs)
130
132
131
- pp = [
133
+ pp = @namespace [
132
134
lorenz1. σ => 10
133
135
lorenz1. ρ => 28
134
136
lorenz1. β => 8 / 3
135
137
lorenz2. σ => 10
136
138
lorenz2. ρ => 28
137
139
lorenz2. β => 8 / 3
138
140
]
139
- u0 = [
141
+ u0 = @namespace [
140
142
lorenz1. x => 1.0
141
143
lorenz1. y => 0.0
142
144
lorenz1. z => 0.0
@@ -148,7 +150,7 @@ prob1 = ODEProblem(reduced_system, u0, (0.0, 100.0), pp)
148
150
solve (prob1, Rodas5 ())
149
151
150
152
prob2 = SteadyStateProblem (reduced_system, u0, pp)
151
- @test prob2. f. observed (lorenz2. u, prob2. u0, pp) === 1.0
153
+ @test prob2. f. observed (( @namespace lorenz2. u) , prob2. u0, pp) === 1.0
152
154
153
155
154
156
# issue #724 and #716
@@ -161,14 +163,14 @@ let
161
163
@variables u_c (t) y_c (t)
162
164
@parameters k_P
163
165
pc = ODESystem (Equation[u_c ~ k_P * y_c], t, name= :pc )
164
- connections = [
166
+ connections = @namespace [
165
167
ol. u ~ pc. u_c
166
168
pc. y_c ~ ol. y
167
169
]
168
170
connected = ODESystem (connections, t, systems= [ol, pc])
169
171
@test equations (connected) isa Vector{Equation}
170
172
reduced_sys = structural_simplify (connected)
171
- ref_eqs = [
173
+ ref_eqs = @namespace [
172
174
D (ol. x) ~ ol. a* ol. x + ol. b* ol. u
173
175
0 ~ pc. k_P* (ol. c* ol. x + ol. d* ol. u) - ol. u
174
176
]
0 commit comments