Skip to content

Commit fe86e0f

Browse files
refactor: add fast path in build_operating_point!
1 parent 176391a commit fe86e0f

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/systems/problem_utils.jl

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -630,17 +630,19 @@ function build_operating_point!(sys::AbstractSystem,
630630
end
631631
end
632632

633-
for (k, v) in u0map
634-
symbolic_type(v) == NotSymbolic() && !is_array_of_symbolics(v) && continue
635-
v = fixpoint_sub(v, neithermap; operator = Symbolics.Operator)
636-
isequal(k, v) && continue
637-
u0map[k] = v
638-
end
639-
for (k, v) in pmap
640-
symbolic_type(v) == NotSymbolic() && !is_array_of_symbolics(v) && continue
641-
v = fixpoint_sub(v, neithermap; operator = Symbolics.Operator)
642-
isequal(k, v) && continue
643-
pmap[k] = v
633+
if !isempty(neithermap)
634+
for (k, v) in u0map
635+
symbolic_type(v) == NotSymbolic() && !is_array_of_symbolics(v) && continue
636+
v = fixpoint_sub(v, neithermap; operator = Symbolics.Operator)
637+
isequal(k, v) && continue
638+
u0map[k] = v
639+
end
640+
for (k, v) in pmap
641+
symbolic_type(v) == NotSymbolic() && !is_array_of_symbolics(v) && continue
642+
v = fixpoint_sub(v, neithermap; operator = Symbolics.Operator)
643+
isequal(k, v) && continue
644+
pmap[k] = v
645+
end
644646
end
645647

646648
return missing_unknowns, missing_pars

0 commit comments

Comments
 (0)