Skip to content

Add user guide page 18: reconstruction from homology - #39

Merged
edkerk merged 2 commits into
mainfrom
guide/homology
Aug 28, 2026
Merged

Add user guide page 18: reconstruction from homology#39
edkerk merged 2 commits into
mainfrom
guide/homology

Conversation

@edkerk

@edkerk edkerk commented Aug 27, 2026

Copy link
Copy Markdown
Owner

Adds user guide page 18, Reconstruction from homology. Unlike the ftINIT
page, nothing here is skipped or precomputed: both tabs run a real
bidirectional BLASTP
and build a real draft model, in about fifteen
seconds each.

The template is smallYeast as sce; the organism being reconstructed is
H. polymorpha. That puts the page on the same ground as the hanpo-GEM protocol
without repeating it — the protocol does the full-scale version.

Both toolboxes agree throughout

MATLAB Python
BLAST hits 159 + 178 337
draft 37 rxns, 49 mets, 54 genes 37 rxns, 49 mets, 54 genes
with maxE=1e-100, minLen=250 32 rxns, 46 genes 32 rxns, 46 genes

They call the same BLAST+ binaries with the same parameters, so this is a real
cross-check rather than a coincidence.

18.4 is the point of the page

objective set: 0
exchange reactions: 0
reactions that can carry flux: 0 of 37

Not one reaction in the draft can carry flux. That is the normal state of a
homology draft — a set of claims about which reactions the organism probably
has, and nothing else — and it is why the rest of the guide exists. The section
hands off to media, gap-filling and tasks.

Also documented: minLen's default changed from 200 to 100 (measured against
KEGG and OMA orthology), so an older reconstruction script now produces a
different model unless the value is set explicitly.

New data files

file size provenance
hanpo.faa 2.4 MB copied unchanged from the hanpo-GEM submodule
sce-template.faa 31 KB the 61 S. cerevisiae sequences that are exactly smallYeast's genes

Cutting the template proteome down to the model's own genes is what keeps the
example to seconds rather than hours; a template protein that no reaction uses
could not have contributed to the draft anyway. Provenance and the regeneration
command are in docs/data/README.md.

Two things to watch on CI, both new to this page: the Python job downloads BLAST+
from raven-data on first use (RAVEN ships its own), and the harness copies
docs/data into every page directory, so the 2.4 MB proteome is copied per page
for the MATLAB run.

Checks

  • 10 examples, both languages, all passing
  • check_names.py clean (six argument names added to the allowlist)
  • site builds

The guide is now 18 pages, 185 examples, no skips.

edkerk added 2 commits August 27, 2026 12:01
Runs a real bidirectional BLASTP and builds a real draft, in both
languages, in about fifteen seconds each. The template is smallYeast
as "sce" and the organism being reconstructed is H. polymorpha, so the
page lands on the same ground as the hanpo-GEM protocol without
repeating it.

Both toolboxes call the same BLAST+ binaries and agree throughout: 159
plus 178 hits, a draft of 37 reactions from a 53-reaction template, and
32 reactions once maxE and minLen are tightened.

18.4 is the point of the page. The draft has no objective, no exchange
reactions, and not one of its 37 reactions can carry flux -- which is
the normal state of a homology draft, and the reason the rest of the
guide exists.

Two proteomes are added to docs/data: hanpo.faa unchanged from the
hanpo-GEM submodule, and sce-template.faa, the 61 S. cerevisiae
sequences that are exactly smallYeast's genes. Cutting the template
proteome to the model's own genes is what keeps the example fast; a
template protein no reaction uses could not have reached the draft
anyway. Provenance and the regeneration command are in the data README.
CI printed "Downloading blast+ from raven-data ..." where this machine
did not: RAVEN fetches BLAST+ when the platform's bundled copy is not
there, and whether the line appears depends on what the runner has
cached rather than on the example. Filtered in both languages, since
raven-toolbox downloads the same binaries on first use.

The BLAST results themselves matched CI exactly -- 159 and 178 hits --
so only the download notice differed.
@edkerk
edkerk merged commit e66085e into main Aug 28, 2026
2 checks passed
@edkerk
edkerk deleted the guide/homology branch August 28, 2026 07:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant