From: Inferring branching pathways in genome-scale metabolic networks
FindPath(G, P, vΔ, U, w, k, l): | |
Input: atom graph G, current pathway P, source node vΔ, unresolved nodes U, 0 <w ≤ 1 and k, l ∈ ℤ+ | |
1: | Add edges (v u , v U ) for each u ∈ U to G |
2: | Q ← FindKShortestSimpleAtomPaths(G, k, vΔ, v U ) |
3: | Remove edges (v u , v U ) for each u ∈ U from G |
4: | for all Q ∈ Q do |
5: | P' ← {r ∈ Γ-1 (q)|q ∈ Q} % Reactions involved with atom path Q |
6: | if Z O (P ∪ P', S, T) ≥ w and |P ∪ P'| <l then |
7: | Found a solution pathway P ∪ P' |
8: | U' ← ∅ |
9: | for all u ∈ U do |
10: | v ← FindPathStart(P', u) |
11: | if v ≠ vΔ then |
12: | U' ← U' ∪ {v} |
13: | if U' ≠ ∅ then |
14: | FindPath(G, P ∪ P', vΔ, U', w, k, l) |