Skip to content

Commit 0648fd0

Browse files
committedApr 14, 2015
Fix false switch constraints in cameo.flux_analysis.simulation.room
1 parent a21ddd5 commit 0648fd0

File tree

1 file changed

+4
-13
lines changed

1 file changed

+4
-13
lines changed
 

‎cameo/flux_analysis/simulation.py

+4-13
Original file line numberDiff line numberDiff line change
@@ -257,15 +257,10 @@ def room(model, reference=None, cache={}, volatile=True, delta=0.03, epsilon=0.0
257257

258258
if not volatile and constraint_a_id in cache['constraints']:
259259
constraint_a = cache['constraints'][constraint_a_id]
260-
constraint_a._set_coefficients_low_level({var: -reaction.upper_bound + w_u})
260+
constraint_a._set_coefficients_low_level({var: reaction.upper_bound - w_u})
261261
constraint_a.ub = w_u
262262
else:
263-
264-
# vi - yi(vmaxi + w_ui) >= w_ui
265-
expression = add([
266-
reaction.variable,
267-
mul([RealNumber(-reaction.upper_bound + w_u), var])])
268-
263+
expression = reaction.flux_expression - var * (reaction.upper_bound - w_u)
269264
constraint_a = (model.solver.interface.Constraint(expression, ub=w_u, sloppy=True))
270265
if not volatile:
271266
cache['constraints'][constraint_a_id] = constraint_a
@@ -276,14 +271,10 @@ def room(model, reference=None, cache={}, volatile=True, delta=0.03, epsilon=0.0
276271

277272
if not volatile and constraint_b_id in cache['constraints']:
278273
constraint_b = cache['constraints'][constraint_b_id]
279-
constraint_b._set_coefficients_low_level({var: -reaction.lower_bound + w_l})
274+
constraint_b._set_coefficients_low_level({var: reaction.lower_bound - w_l})
280275
constraint_b.lb = w_l
281276
else:
282-
# vi - yi(vmini - w_li) <= w_li
283-
expression = add([
284-
reaction.variable,
285-
mul([RealNumber(-reaction.lower_bound + w_l), var])])
286-
277+
expression = reaction.flux_expression - var * (reaction.lower_bound - w_l)
287278
constraint_b = (model.solver.interface.Constraint(expression, lb=w_l, sloppy=True))
288279
if not volatile:
289280
cache['constraints'][constraint_b_id] = constraint_b

0 commit comments

Comments
 (0)