|
108 | 108 | u, d = [10, 50], Float64[] |
109 | 109 | @test updatestate!(linmodel1, u) ≈ zeros(2) |
110 | 110 | @test updatestate!(linmodel1, u, d) ≈ zeros(2) |
111 | | - @test_skip @allocations(updatestate!(linmodel1, u)) == 0 |
112 | 111 | @test linmodel1.x0 ≈ zeros(2) |
113 | 112 | @test evaloutput(linmodel1) ≈ linmodel1() ≈ [50,30] |
114 | 113 | @test evaloutput(linmodel1, Float64[]) ≈ linmodel1(Float64[]) ≈ [50,30] |
115 | | - @test_skip @allocations(evaloutput(linmodel1)) == 0 |
116 | 114 | x = initstate!(linmodel1, [10, 60]) |
117 | 115 | @test evaloutput(linmodel1) ≈ [50 + 19.0, 30 + 7.4] |
118 | 116 | @test preparestate!(linmodel1) ≈ x # new method |
|
283 | 281 | u, d = zeros(2), Float64[] |
284 | 282 | @test updatestate!(nonlinmodel, u) ≈ zeros(2) |
285 | 283 | @test updatestate!(nonlinmodel, u, d) ≈ zeros(2) |
286 | | - @test_skip @allocations(updatestate!(nonlinmodel, u)) == 0 |
287 | 284 | @test nonlinmodel.x0 ≈ zeros(2) |
288 | 285 | @test evaloutput(nonlinmodel) ≈ nonlinmodel() ≈ zeros(2) |
289 | 286 | @test evaloutput(nonlinmodel, d) ≈ nonlinmodel(Float64[]) ≈ zeros(2) |
290 | | - @test_skip @allocations(evaloutput(nonlinmodel)) == 0 |
291 | 287 |
|
292 | 288 | x = initstate!(nonlinmodel, [0, 10]) # do nothing for NonLinModel |
293 | 289 | @test evaloutput(nonlinmodel) ≈ [0, 0] |
|
375 | 371 | h2!(y, x, _, _) = (y .= x) |
376 | 372 | nonlinmodel4 = NonLinModel(f2!,h2!,Ts,1,1,1,0,solver=nothing,jacobian=AutoFiniteDiff()) |
377 | 373 | @test_nowarn linearize(nonlinmodel4, x=[1], u=[2]) |
378 | | - |
379 | | - function f3!(xnext, x, u, d, _) |
380 | | - xnext .= x.*u .+ x.*d |
381 | | - end |
382 | | - function h3!(y, x, d, _) |
383 | | - y .= x.*d |
384 | | - end |
385 | | - nonlinmodel4 = NonLinModel(f3!, h3!, Ts, 1, 1, 1, 1, solver=nothing) |
386 | | - linmodel4 = linearize(nonlinmodel4; x, u, d) |
387 | | - # return nothing (see this issue : https://github.com/JuliaLang/julia/issues/51112): |
388 | | - linearize2!(linmodel, model) = (linearize!(linmodel, model); nothing) |
389 | | - linearize2!(linmodel4, nonlinmodel4) |
390 | | - @test_skip @allocations(linearize2!(linmodel4, nonlinmodel4)) == 0 |
391 | 374 | end |
392 | 375 |
|
393 | 376 | @testitem "NonLinModel real time simulations" setup=[SetupMPCtests] begin |
|
0 commit comments