Skip to content

Commit 03478b1

Browse files
committed
support turning off mass action terms in ratelaw
1 parent 5cb6d35 commit 03478b1

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

src/systems/reaction/reactionsystem.jl

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,16 @@ end
5656

5757
# Calculate the ODE rate law
5858
function oderatelaw(rx)
59-
@unpack rate, substrates, substoich = rx
60-
rl = rate
61-
coef = one(eltype(substoich))
62-
for (i,stoich) in enumerate(substoich)
63-
coef *= factorial(stoich)
64-
rl *= (stoich != one(stoich)) ? substrates[i]^stoich : substrates[i]
59+
@unpack rate, substrates, substoich, only_use_rate = rx
60+
rl = rate
61+
if !only_use_rate
62+
coef = one(eltype(substoich))
63+
for (i,stoich) in enumerate(substoich)
64+
coef *= factorial(stoich)
65+
rl *= (stoich != one(stoich)) ? substrates[i]^stoich : substrates[i]
66+
end
67+
(coef != one(coef)) && (rl /= coef)
6568
end
66-
(coef != one(coef)) && (rl /= coef)
67-
6869
rl
6970
end
7071

0 commit comments

Comments
 (0)