Optimalrays¶
- findExtremePathway(fbaModel, obj)[source]¶
Finds an extreme ray
- USAGE:
[x, output] = findExtremePathway (fbaModel, obj)
- INPUT:
fbaModel – FBA type model
- OPTIONAL INPUT:
obj – default = random vector with size depending on fbaModel.S
- OUTPUTS:
x – vector from result, where result is an output of solveCobraLP function
output – output.objval contains result.obj
- findExtremePool(model, obj, printLevel, positive, internal)[source]¶
Finds an extreme ray, x, in the left nullspace of the stoichiometric matrix
- USAGE:
[x, output] = findExtremePool (fbaModel, obj, printLevel)
- INPUT:
fbaModel – FBA type model
- OPTIONAL INPUT:
obj – default = random vector with size depending on fbaModel.S
printLevel – argument for solveCobraLP function, default = 0
- OUTPUTS:
x – x = output.full
output – output = solveCobraLP(LPProblem)
Author: Ronan Fleming, & 2026
- greedyExtremeRayBasis(model, param)[source]¶
Computes a non-negative basis for the left nullspace of the stoichiometric matrix using optimization to pick random extreme rays, then test a posteriori if each is linearly independent from the existing stored extreme rays.
- USAGE:
[L, Zt] = greedyExtremeRayBasis (model) <=> [B, L] = greedyExtremeRayBasis(model,’left’)
Gives Zpos*N = 0 or Zpos*S = 0
Gives Z*N = 0 or Z*S = 0
[B, L] = greedyExtremeRayBasis (model,’right’)
Gives N*Zpos = 0 or S*Zpos = 0
Gives N*Z = 0 or S*Z = 0
- INPUT:
model.S – m x n + k stoichiometric matrix, where n are internal reactions and k are exchange reactions
- OUTPUTS:
Zpos – non-negative linear basis for the left (right) nullspace of N (internal = 1) or S (internal = 0)
Z – linear basis for the left (right) nullspace of N (internal = 1) or S (internal = 0)