Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add an explicit warning about what happens if people gapfill pseudoreactions #80

Merged
merged 2 commits into from
Nov 27, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/src/examples/05g-gapfilling.jl
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,11 @@ x2 = gap_filling_analysis(

other_filled_reactions = [k for (k, v) in x2.fill_flags if v != 0]

#md # !!! warning "Why is the gapfilling algorithm adding seemingly unneeded reactions?"
#md # By default, COBREXA does not do any "cleaning" on the universal model; all reactions that are present in that model will be potentially utilized in the new model, and all of them will need to respect their original bounds in the universal model. That becomes an issue with **reactions that are bounded to non-zero flux** (such as the `ATPM` reaction in the E. coli "core" model) -- since their flux is required to be non-zero in any feasible model solution, they will also need to be in the fill set, because otherwise their flux would be zero.
#md #
#md # As the simplest solution, all realistic uses of gapfilling should carefully check the set of universal reactions, and ideally exclude all exchanges and pseudoreactions.

# ## Model debugging: which metabolite is missing?
#
# Gap-filling is great for detecting various broken links and imbalances in
Expand Down
Loading