Skip to main content
. Author manuscript; available in PMC: 2012 Jun 1.
Published in final edited form as: Parallel Comput. 2011 June-July;37(6-7):261–278. doi: 10.1016/j.parco.2011.04.002

Algorithm 4.

[K]=PARALLEL_NSP(N, K)

Input:
 reduced stoichiometry matrix (Nm×q); initial nullspace matrix Kq×(qm)=[R(1)R(2)]
Output:
bit-valued matrix of elementary modes Kq×nems
1: for k = q − m + 1 to q do
2:   combinations ⇐ GENERATE_CANDIDATES_PARALLEL (K)
3:   combinations ⇐ RADIXSORT(R(1), combinations, width)
4:   combinations ⇐ REMOVE_DUPLICATES(R(1), combinations)
5:   combinations ⇐ RANKTESTS (N, R(1), combinations)
6:   {communicate columns and merge}
7:   combinations ⇐ COMMUNICATE_TREE(R(1), combinations)
8:   K ⇐ EXPAND(K, combinations)
9: end for