Skip to content

Commit 6c2e890

Browse files
authored
Merge pull request #766 from SciML/myb/print
Less verbose printing a few minor fixes
2 parents f6802a5 + 503c4fc commit 6c2e890

File tree

10 files changed

+39
-23
lines changed

10 files changed

+39
-23
lines changed

src/systems/abstractsystem.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -319,11 +319,13 @@ end
319319

320320
function Base.show(io::IO, sys::AbstractSystem)
321321
eqs = equations(sys)
322-
Base.printstyled(io, "Equations ($(length(eqs))):\n"; bold=true)
323-
Base.print_matrix(io, eqs)
324-
println(io)
322+
Base.printstyled(io, "Model $(nameof(sys)) with $(length(eqs)) equations\n"; bold=true)
323+
# The reduced equations are usually very long. It's not that useful to print
324+
# them.
325+
#Base.print_matrix(io, eqs)
326+
#println(io)
325327

326-
rows = first(displaysize(io)) ÷ 3
328+
rows = first(displaysize(io)) ÷ 5
327329
limit = get(io, :limit, false)
328330

329331
vars = states(sys); nvars = length(vars)

src/systems/control/controlsystem.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ function ControlSystem(loss, deqs::AbstractVector{<:Equation}, iv, dvs, controls
9191
ps′ = value.(ps)
9292
default_u0 isa Dict || (default_u0 = Dict(default_u0))
9393
default_p isa Dict || (default_p = Dict(default_p))
94+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
95+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
9496
ControlSystem(value(loss), deqs, iv′, dvs′, controls′,
9597
ps′, observed, name, systems, default_u0, default_p)
9698
end

src/systems/diffeqs/abstractodesystem.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -254,11 +254,11 @@ function process_DEProblem(constructor, sys::AbstractODESystem,u0map,parammap;
254254
dvs = states(sys)
255255
ps = parameters(sys)
256256
u0map′ = lower_mapnames(u0map,sys.iv)
257-
u0 = varmap_to_vars(u0map′,dvs; defaults=get_default_u0(sys))
257+
u0 = varmap_to_vars(u0map′,dvs; defaults=default_u0(sys))
258258

259259
if !(parammap isa DiffEqBase.NullParameters)
260260
parammap′ = lower_mapnames(parammap)
261-
p = varmap_to_vars(parammap′,ps; defaults=get_default_p(sys))
261+
p = varmap_to_vars(parammap′,ps; defaults=default_p(sys))
262262
else
263263
p = ps
264264
end

src/systems/diffeqs/odesystem.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ function ODESystem(
9090

9191
default_u0 isa Dict || (default_u0 = Dict(default_u0))
9292
default_p isa Dict || (default_p = Dict(default_p))
93+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
94+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
9395

9496
tgrad = RefValue(Vector{Num}(undef, 0))
9597
jac = RefValue{Any}(Matrix{Num}(undef, 0, 0))

src/systems/diffeqs/sdesystem.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ function SDESystem(deqs::AbstractVector{<:Equation}, neqs, iv, dvs, ps;
9090

9191
default_u0 isa Dict || (default_u0 = Dict(default_u0))
9292
default_p isa Dict || (default_p = Dict(default_p))
93+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
94+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
9395

9496
tgrad = RefValue(Vector{Num}(undef, 0))
9597
jac = RefValue{Any}(Matrix{Num}(undef, 0, 0))

src/systems/jumps/jumpsystem.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ function JumpSystem(eqs, iv, states, ps;
7575
end
7676
default_u0 isa Dict || (default_u0 = Dict(default_u0))
7777
default_p isa Dict || (default_p = Dict(default_p))
78+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
79+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
7880

7981
JumpSystem{typeof(ap)}(ap, value(iv), value.(states), value.(ps), observed, name, systems, default_u0, default_p)
8082
end
@@ -197,8 +199,8 @@ dprob = DiscreteProblem(js, u₀map, tspan, parammap)
197199
"""
198200
function DiffEqBase.DiscreteProblem(sys::JumpSystem, u0map, tspan::Tuple,
199201
parammap=DiffEqBase.NullParameters(); kwargs...)
200-
u0 = varmap_to_vars(u0map, states(sys); defaults=get_default_u0(sys))
201-
p = varmap_to_vars(parammap, parameters(sys); defaults=get_default_p(sys))
202+
u0 = varmap_to_vars(u0map, states(sys); defaults=default_u0(sys))
203+
p = varmap_to_vars(parammap, parameters(sys); defaults=default_p(sys))
202204
f = DiffEqBase.DISCRETE_INPLACE_DEFAULT
203205
df = DiscreteFunction{true,true}(f, syms=Symbol.(states(sys)))
204206
DiscreteProblem(df, u0, tspan, p; kwargs...)
@@ -225,8 +227,8 @@ dprob = DiscreteProblem(js, u₀map, tspan, parammap)
225227
"""
226228
function DiscreteProblemExpr(sys::JumpSystem, u0map, tspan::Tuple,
227229
parammap=DiffEqBase.NullParameters(); kwargs...)
228-
u0 = varmap_to_vars(u0map, states(sys); defaults=get_default_u0(sys))
229-
p = varmap_to_vars(parammap, parameters(sys); defaults=get_default_p(sys))
230+
u0 = varmap_to_vars(u0map, states(sys); defaults=default_u0(sys))
231+
p = varmap_to_vars(parammap, parameters(sys); defaults=default_p(sys))
230232
# identity function to make syms works
231233
quote
232234
f = DiffEqBase.DISCRETE_INPLACE_DEFAULT

src/systems/nonlinear/nonlinearsystem.jl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ function NonlinearSystem(eqs, states, ps;
5858
systems = NonlinearSystem[])
5959
default_u0 isa Dict || (default_u0 = Dict(default_u0))
6060
default_p isa Dict || (default_p = Dict(default_p))
61+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
62+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
6163
NonlinearSystem(eqs, value.(states), value.(ps), observed, name, systems, default_u0, default_p, nothing)
6264
end
6365

@@ -210,11 +212,11 @@ function process_NonlinearProblem(constructor, sys::NonlinearSystem,u0map,paramm
210212
dvs = states(sys)
211213
ps = parameters(sys)
212214
u0map′ = lower_mapnames(u0map)
213-
u0 = varmap_to_vars(u0map′,dvs; defaults=get_default_u0(sys))
215+
u0 = varmap_to_vars(u0map′,dvs; defaults=default_u0(sys))
214216

215217
if !(parammap isa DiffEqBase.NullParameters)
216218
parammap′ = lower_mapnames(parammap)
217-
p = varmap_to_vars(parammap′,ps; defaults=get_default_p(sys))
219+
p = varmap_to_vars(parammap′,ps; defaults=default_p(sys))
218220
else
219221
p = ps
220222
end

src/systems/optimization/optimizationsystem.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ function OptimizationSystem(op, states, ps;
5757

5858
default_u0 isa Dict || (default_u0 = Dict(default_u0))
5959
default_p isa Dict || (default_p = Dict(default_p))
60+
default_u0 = Dict(value(k) => value(default_u0[k]) for k in keys(default_u0))
61+
default_p = Dict(value(k) => value(default_p[k]) for k in keys(default_p))
6062

6163
OptimizationSystem(
6264
value(op), value.(states), value.(ps),
@@ -156,8 +158,8 @@ function DiffEqBase.OptimizationProblem{iip}(sys::OptimizationSystem, u0,
156158

157159
_f = DiffEqBase.OptimizationFunction{iip,AutoModelingToolkit,typeof(f),typeof(_grad),typeof(_hess),Nothing,Nothing,Nothing,Nothing}(f,AutoModelingToolkit(),_grad,_hess,nothing,nothing,nothing,nothing)
158160

159-
u0 = varmap_to_vars(u0,dvs; defaults=get_default_u0(sys))
160-
p = varmap_to_vars(parammap,ps; defaults=get_default_p(sys))
161+
u0 = varmap_to_vars(u0,dvs; defaults=default_u0(sys))
162+
p = varmap_to_vars(parammap,ps; defaults=default_p(sys))
161163
lb = varmap_to_vars(lb,dvs)
162164
ub = varmap_to_vars(ub,dvs)
163165
OptimizationProblem{iip}(_f,u0,p;lb=lb,ub=ub,kwargs...)
@@ -211,8 +213,8 @@ function OptimizationProblemExpr{iip}(sys::OptimizationSystem, u0,
211213
_hess = :nothing
212214
end
213215

214-
u0 = varmap_to_vars(u0,dvs; defaults=get_default_u0(sys))
215-
p = varmap_to_vars(parammap,ps; defaults=get_default_p(sys))
216+
u0 = varmap_to_vars(u0,dvs; defaults=default_u0(sys))
217+
p = varmap_to_vars(parammap,ps; defaults=default_p(sys))
216218
lb = varmap_to_vars(lb,dvs)
217219
ub = varmap_to_vars(ub,dvs)
218220
quote

test/components.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ C1 = Capacitor(:C1)
7777
I1 = Inductor(:I1)
7878
@test isequal(R1.p.i, (@variables R1₊p₊i(t))[1])
7979
@parameters R
80-
@test ModelingToolkit.get_default_p(flatten(R1)) == Dict(R => 1.0)
80+
@test ModelingToolkit.default_p(flatten(R1)) == Dict(R => 1.0)
8181
@variables n₊v(t) p₊v(t) n₊i(t) p₊i(t)
82-
@test ModelingToolkit.get_default_u0(flatten(R1)) == Dict(
83-
n₊v => 1.0,
84-
p₊v => 1.0,
85-
n₊i => 1.0,
86-
p₊i => 1.0,
87-
)
82+
@test ModelingToolkit.default_u0(flatten(R1)) == Dict(
83+
n₊v => 1.0,
84+
p₊v => 1.0,
85+
n₊i => 1.0,
86+
p₊i => 1.0,
87+
)

test/reduction.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ eqs = [
4141
lorenz1 = ODESystem(eqs,t,name=:lorenz1)
4242

4343
lorenz1_aliased = alias_elimination(lorenz1)
44+
io = IOBuffer(); show(io, lorenz1_aliased); str = String(take!(io))
45+
@test all(s->occursin(s, str), ["lorenz1", "States (3)", "Parameters (3)"])
4446
reduced_eqs = [
4547
D(x) ~ σ*(y - x)
4648
D(y) ~ β + x*- z) - y

0 commit comments

Comments
 (0)