@@ -187,7 +187,7 @@ if VERSION >= v"1.8"
187187 using ModelingToolkitStandardLibrary
188188 using ModelingToolkitStandardLibrary. Blocks
189189 using ModelingToolkitStandardLibrary. Mechanical. MultiBody2D
190- using ModelingToolkitStandardLibrary. Mechanical. Translational
190+ using ModelingToolkitStandardLibrary. Mechanical. TranslationalPosition
191191
192192 using ControlSystemsMTK
193193 using ControlSystemsMTK. ControlSystemsBase: sminreal, minreal, poles
@@ -197,22 +197,20 @@ if VERSION >= v"1.8"
197197 D = Differential (t)
198198
199199 @named link1 = Link (; m = 0.2 , l = 10 , I = 1 , g = - 9.807 )
200- @named cart = Translational . Mass (; m = 1 , s = 0 )
200+ @named cart = TranslationalPosition . Mass (; m = 1 , s = 0 )
201201 @named fixed = Fixed ()
202- @named force = Force ()
202+ @named force = Force (use_support = false )
203203
204204 eqs = [connect (link1. TX1, cart. flange)
205205 connect (cart. flange, force. flange)
206206 connect (link1. TY1, fixed. flange)]
207207
208208 @named model = ODESystem (eqs, t, [], []; systems = [link1, cart, force, fixed])
209209 def = ModelingToolkit. defaults (model)
210- for s in states (model)
211- def[s] = 0
212- end
213- def[link1. x1] = 10
214- def[link1. fy1] = - def[link1. g] * def[link1. m]
210+ def[cart. s] = 10
211+ def[cart. v] = 0
215212 def[link1. A] = - pi / 2
213+ def[link1. dA] = 0
216214 lin_outputs = [cart. s, cart. v, link1. A, link1. dA]
217215 lin_inputs = [force. f. u]
218216
@@ -235,11 +233,12 @@ if VERSION >= v"1.8"
235233
236234 dummyder = setdiff (states (sysss), states (model))
237235 def = merge (def, Dict (x => 0.0 for x in dummyder))
236+ def[link1. fy1] = - def[link1. g] * def[link1. m]
238237
239238 @test substitute (lsyss. A, def) ≈ lsys. A
240239 # We cannot pivot symbolically, so the part where a linear solve is required
241240 # is not reliable.
242- @test substitute (lsyss. B, def)[1 : 6 , : ] ≈ lsys. B[1 : 6 , : ]
241+ @test substitute (lsyss. B, def)[1 : 6 , 1 ] ≈ lsys. B[1 : 6 , 1 ]
243242 @test substitute (lsyss. C, def) ≈ lsys. C
244243 @test substitute (lsyss. D, def) ≈ lsys. D
245244end
0 commit comments