Skip to content

Commit

Permalink
remove one last sign_split_variables
Browse files Browse the repository at this point in the history
  • Loading branch information
exaexa committed Nov 12, 2024
1 parent 12bd231 commit 286cb99
Showing 1 changed file with 22 additions and 26 deletions.
48 changes: 22 additions & 26 deletions src/frontend/enzymes.jl
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,13 @@ function enzyme_constrained_flux_balance_constraints(
# allocate all variables and build the system
constraints = flux_balance_constraints(model; interface, interface_name)

constraints += sign_split_variables(
constraints.fluxes,
positive = :fluxes_forward,
negative = :fluxes_reverse,
)
constraints +=
:fluxes_forward^unsigned_positive_contribution_variables(constraints.fluxes)
constraints *=
:fluxes_reverse^unsigned_negative_contribution_constraints(
constraints.fluxes,
constraints.fluxes_forward,
)

constraints += enzyme_variables(;
fluxes_forward = constraints.fluxes_forward,
Expand All @@ -117,27 +119,21 @@ function enzyme_constrained_flux_balance_constraints(
isozyme_reverse_ids,
)

return constraints *
:directional_flux_balance^sign_split_constraints(;
positive = constraints.fluxes_forward,
negative = constraints.fluxes_reverse,
signed = constraints.fluxes,
) *
enzyme_constraints(;
fluxes_forward = constraints.fluxes_forward,
fluxes_reverse = constraints.fluxes_reverse,
isozyme_forward_amounts = constraints.isozyme_forward_amounts,
isozyme_reverse_amounts = constraints.isozyme_reverse_amounts,
kcat_forward,
kcat_reverse,
isozyme_gene_product_stoichiometry,
gene_product_molar_mass,
capacity_limits = capacity isa Real ?
[(:total_capacity, gene_ids, C.Between(0, capacity))] :
[
(Symbol(k), Symbol.(gs), C.Between(0, cap)) for (k, gs, cap) in capacity
],
)
return constraints * enzyme_constraints(;
fluxes_forward = constraints.fluxes_forward,
fluxes_reverse = constraints.fluxes_reverse,
isozyme_forward_amounts = constraints.isozyme_forward_amounts,
isozyme_reverse_amounts = constraints.isozyme_reverse_amounts,
kcat_forward,
kcat_reverse,
isozyme_gene_product_stoichiometry,
gene_product_molar_mass,
capacity_limits = capacity isa Real ?
[(:total_capacity, gene_ids, C.Between(0, capacity))] :
[
(Symbol(k), Symbol.(gs), C.Between(0, cap)) for (k, gs, cap) in capacity
],
)
end

export enzyme_constrained_flux_balance_constraints
Expand Down

0 comments on commit 286cb99

Please sign in to comment.