Skip to content

ec_fseof: anchor scan floor and restrict candidates, matching ecFSEOF.m - #50

Merged
edkerk merged 1 commit into
mainfrom
fix/ec-fseof-scan-anchor
Sep 7, 2026
Merged

edkerk merged 1 commit into
mainfrom
fix/ec-fseof-scan-anchor

Conversation

@edkerk

@edkerk edkerk commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

Resolves the two wrapper-specific divergences from CompMetEng/raven-gecko-parity#74 (the third, the selection criterion itself, is inherited from raven_toolbox.analysis.fseof's own accepted divergence from RAVEN and is left as-is).

  • ec_fseof: the scan floor was raven-toolbox's default fixed fraction of the theoretical maximum, not the production target's flux at biomass-optimum, so every enforced-flux level differed from ecFSEOF.m whenever the target had no baseline flux at growth-optimum.
  • ec_fseof: candidates were not restricted to gene-associated, non-standard reactions before classification, so an un-annotated or standard-pseudogene reaction could surface as a target even though it cannot be engineered.

Depends on CompMetEng/raven-toolbox#147 (adds fseof's min_target); geckopy tracks raven-toolbox @develop, so CI here won't pass until that merges.

…o gated reactions

Brings the ecModel wrapper's search space back in line with
ecFSEOF.m on the two points that are wrapper-specific rather than
inherited from the raven_toolbox.analysis.fseof selection-criterion
divergence already tracked as an accepted difference on the RAVEN
pair (CompMetEng/raven-gecko-parity#74).

- `ec_fseof`: the scan floor was raven-toolbox's default fixed fraction of
  the theoretical maximum, not the production target's flux at
  biomass-optimum, so every enforced-flux level in the scan (not just the
  selection rule) differed from ecFSEOF.m whenever the target had no
  baseline flux at growth-optimum.
- `ec_fseof`: candidates were not restricted to gene-associated,
  non-standard reactions before classification, unlike ecFSEOF.m, so
  every un-annotated or standard-pseudogene reaction could surface as a
  target even though it can not be engineered.

Needs CompMetEng/raven-toolbox#147 (adds fseof's `min_target`) merged
first; until then this fails to import against raven-toolbox@develop.
@edkerk
edkerk merged commit 5810eee into main Sep 7, 2026
6 of 11 checks passed
@edkerk
edkerk deleted the fix/ec-fseof-scan-anchor branch September 7, 2026 06:03
edkerk added a commit to CompMetEng/raven-gecko-parity that referenced this pull request Sep 7, 2026
`ecFSEOF`/`ec_fseof`: floor now anchored to biomass-optimal target flux
and candidates restricted to gene-associated reactions
(CompMetEng/geckopy#50, CompMetEng/raven-toolbox#147); the
selection-criterion divergence is left as the same accepted difference
already tracked on the RAVEN pair's `FSEOF` row.

`getStandardKcat`/`assign_standard_kcat`: MATLAB now aggregates by
median, and both sides agree on threshold eligibility and NaN handling
(SysBioChalmers/GECKO#475, CompMetEng/geckopy#49).
edkerk added a commit that referenced this pull request Sep 8, 2026
Flattens the Keep-a-Changelog ### Added/Fixed/Changed subsections into
one bullet list (matching raven-toolbox's CHANGELOG.md format) and
drops the version header's brackets to match. Also folds in #49 and
#50, which had merged straight to main since 0.3.0 and were missing
from develop until the merge two commits back.
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