Skip to content

Commit 124ea24

Browse files
feat: lexicographically sort equations in structural_simplify
1 parent d5f3dc1 commit 124ea24

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/systems/systemstructure.jl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,12 @@ function TearingState(sys; quick_cancel = false, check = true)
352352
end
353353
end
354354

355+
# sort equations lexicographically to reduce simplification issues
356+
# depending on order due to NP-completeness of tearing.
357+
sortidxs = Base.sortperm(eqs, by = string)
358+
eqs = eqs[sortidxs]
359+
symbolic_incidence = symbolic_incidence[sortidxs]
360+
355361
### Handle discrete variables
356362
lowest_shift = Dict()
357363
for var in fullvars

0 commit comments

Comments
 (0)