Research Article
Parallel Seed-Based Approach to Multiple Protein Structure Similarities Detection
Algorithm 5
Graph splitting algorithm.
(1) function split_and_solve(globalGraph) | (2) INPUT: globalGraph, an alignment graph between atoms from two proteins | (3) OUTPUT: globalRes, a list of the longest distinct alignments found in the graph | (4) | (5) ResultList globalRes = empty_result_list() | (6) Graph subGraphs = split(globalGraph) | (7) sort(subgraphs) | (8) For each subGraph in subGraphs | (9) SeedList best_seeds = empty_list() | (10) SeedList seeds = enumerate_seeds(subGraph) | (11) For each seed in seeds | (12) VertexSet current_res = extend_and_filter(subGraph, seed) | (13) best_seeds.insert_if_better(seed) | (14) End For | (15) For each seed in best_seeds | (16) VertexSet current_res = extend_and_filter(globalGraph, seed) | (17) globalRes.insert_if_better(current_res) | (18) End For | (19) End For |
|