"IC_dispFact_0.65_dm_1", "IC_dispFact_0.65_dm_2", "IC_dispFact_0.65_dm_3", "IC_dispFact_0.65_dm_4", "IC_dispFact_0.65_dm_5", "IC_dispFact_0.65_dm_6", "IC_dispFact_0.65_dm_7", "IC_dispFact_0.65_dm_8", "IC_dispFact_0.65_dm_9", "IC_dispFact_0.65_dm_10" ] distances = {} for folder in folders: raw_data, min_len = load_single_proc_data(options.sim_type, os.path.join(folder, "info")) energy_increments = process_energy_differences(raw_data) mc = MetropolisMCSimulator(energy_increments) who_is_accepted = mc.who_is_accepted(options.temperature) coords = numpy.reshape(raw_data["coords_after"], (len(raw_data["coords_after"]), len(raw_data["coords_after"][0]) / 3, 3)) distances[folder] = calc_distances(coords, range( len(coords))) #who_is_accepted[:150]) sns.set_style("whitegrid") row_len = 4 col_len = 3 folders.extend(["IC_dispFact_0.65_dm_10", "IC_dispFact_0.65_dm_10"]) f, axes = prepare_subplots(row_len, col_len) for i, folder in enumerate(folders): ax = axes[i / row_len, i % row_len] ax.set_title(folder)
acceptances[T][v1, v2] = mc.perform_simulation( min(200, len(energy_increments)), 40, T) avg_energy[T][v1, v2] = numpy.mean(energy_increments) std_energy[T][v1, v2] = numpy.std(energy_increments) avg_rmsd[T][v1, v2] = numpy.mean(rmsd_increments) std_rmsd[T][v1, v2] = numpy.std(rmsd_increments) p1_keys.append(v1) p2_keys.append(v2) # Rmsf calculations rmsf_coords = numpy.reshape( raw_data["coords_after"], (len(raw_data["coords_after"]), len(raw_data["coords_after"][0]) / 3, 3)) rmsf[T][v1, v2] = coords_rmsf(rmsf_coords[mc.who_is_accepted(T)]) def default_to_regular(d): if isinstance(d, defaultdict): d = {k: default_to_regular(v) for k, v in d.iteritems()} return d pickle.dump( (default_to_regular(acceptances), default_to_regular(avg_energy), default_to_regular(std_energy), default_to_regular(avg_rmsd), default_to_regular(std_rmsd), rmsf, p1, p1_keys, p2, p2_keys), open(os.path.join(results_folder, "data"), "w")) else: (acceptances, avg_energy, std_energy, avg_rmsd, std_rmsd, rmsf, p1, p1_keys, p2, p2_keys) = pickle.load(open(options.data))