def conformational_space_comparison(clustering, trajectoryHandler, matrixHandler, clustering_parameters, refinement_parameters): # clustering = Refiner(matrixHandler, # trajectoryHandler, # clustering_parameters, # refinement_parameters, # observer).run(clustering) traj_ranges = {} current = 0 for i, pdb_source in enumerate(trajectoryHandler.sources): num_confs = pdb_source.get_info("number_of_conformations") traj_ranges["traj_%d"%i] = (current, current + num_confs -1) current = current + num_confs decomposed_clusters = Separator.separate(clustering.clusters, traj_ranges) analysis = Analyzer.run(decomposed_clusters, matrixHandler.distance_matrix) return analysis
def conformational_space_comparison(clustering, trajectoryHandler, matrixHandler, clustering_parameters, refinement_parameters): # clustering = Refiner(matrixHandler, # trajectoryHandler, # clustering_parameters, # refinement_parameters, # observer).run(clustering) traj_ranges = {} current = 0 for i, pdb_source in enumerate(trajectoryHandler.sources): num_confs = pdb_source.get_info("number_of_conformations") traj_ranges["traj_%d" % i] = (current, current + num_confs - 1) current = current + num_confs decomposed_clusters = Separator.separate(clustering.clusters, traj_ranges) analysis = Analyzer.run(decomposed_clusters, matrixHandler.distance_matrix) return analysis
def test_separate(self): traj_ranges = {"traj_A": (0, 6), "traj_B": (7, 15)} clusters = [ Cluster(None, [0, 1, 2]), Cluster(None, [3, 8, 10]), Cluster(None, [14, 4, 15]), Cluster(None, [5, 6]), Cluster(None, [7, 9, 11, 12, 13]), ] for i in range(len(clusters)): clusters[i].id = str(i) expected = { 'mixed': { '1': { 'traj_A': [3], 'traj_B': [8, 10] }, '2': { 'traj_A': [4], 'traj_B': [14, 15] } }, 'pure': { '0': { 'traj_A': [0, 1, 2] }, '3': { 'traj_A': [5, 6] }, '4': { 'traj_B': [9, 11, 12, 13, 7] } } } self.assertDictEqual(expected, Separator.separate(clusters, traj_ranges))
def conformational_space_comparison(clustering, matrixHandler, trajectoryHandler, clustering_parameters, refinement_parameters, observer): # clustering = Refiner(matrixHandler, # trajectoryHandler, # clustering_parameters, # refinement_parameters, # observer).run(clustering) # TODO: testing traj_ranges = {} current = 0 for i, pdb in enumerate(trajectoryHandler.pdbs): traj_ranges["traj_%d" % i] = (current, current + pdb["conformations"] - 1) current = current + pdb["conformations"] decomposed_clusters = Separator.separate(clustering.clusters, traj_ranges) analysis = Analyzer.run(decomposed_clusters, matrixHandler.distance_matrix) return analysis
def test_separate(self): traj_ranges = {"traj_A":(0,6),"traj_B":(7,15)} clusters = [ Cluster(None,[0,1,2]), Cluster(None,[3,8,10]), Cluster(None,[14,4,15]), Cluster(None,[5,6]), Cluster(None,[7,9,11,12,13]), ] for i in range(len(clusters)): clusters[i].id = str(i) expected = { 'mixed': { '1': { 'traj_A': [3], 'traj_B': [8, 10] }, '2': { 'traj_A': [4], 'traj_B': [14, 15] } }, 'pure': { '0': { 'traj_A': [0, 1, 2] }, '3': { 'traj_A': [5, 6] }, '4': { 'traj_B': [9, 11, 12, 13, 7] } } } self.assertDictEqual(expected,Separator.separate(clusters, traj_ranges))