Skip to content

Commit c323135

Browse files
committed
add jump dep graph test
1 parent b21f854 commit c323135

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

test/jumpsystem.jl

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,3 +197,26 @@ OBS2 = OBS
197197
@test isequal(OBS2, @nonamespace js5.OBS)
198198
@unpack OBS = js5
199199
@test isequal(OBS2, OBS)
200+
201+
202+
# test to make sure dep graphs are correct
203+
let
204+
# A + 2X --> 3X
205+
# 3X --> A + 2X
206+
# B --> X
207+
# X --> B
208+
@variables t A(t) X(t) B(t)
209+
jumps = [MassActionJump(1.0, [A => 1, X => 2], [A => -1, X => 1]),
210+
MassActionJump(1.0, [X => 3], [A => 1, X => -1]),
211+
MassActionJump(1.0, [B => 1], [B => -1, X => 1]),
212+
MassActionJump(1.0, [X => 1], [B => 1, X => -1])]
213+
@named js = JumpSystem(jumps, t, [A, X, B], [])
214+
jdeps = asgraph(js)
215+
vdeps = variable_dependencies(js)
216+
vtoj = jdeps.badjlist
217+
@test vtoj == [[1], [1, 2, 4], [3]]
218+
jtov = vdeps.badjlist
219+
@test jtov == [[1, 2], [1, 2], [2, 3], [2, 3]]
220+
jtoj = eqeq_dependencies(jdeps, vdeps).fadjlist
221+
@test jtoj == [[1, 2, 4], [1, 2, 4], [1, 2, 3, 4], [1, 2, 3, 4]]
222+
end

0 commit comments

Comments
 (0)