diff --git a/Trajectories/create_traj_lists.py b/Trajectories/create_traj_lists.py old mode 100644 new mode 100755 index c1e4bb754398ae6854341290775b0add8757a3f1..c1cf3fcf51fe23eb60fb46a048d2c2c2c980af1d --- a/Trajectories/create_traj_lists.py +++ b/Trajectories/create_traj_lists.py @@ -28,9 +28,11 @@ def create_traj_list( else: traj_vert_ind[traj_prop[n]] = [n] - traj_vert_ind = [traj_vert_ind[t] for t in range(len(traj_vert_ind))] - # An element of traj_vert_ind is a trajectory, represented by a list - # of vertex indices. + traj_vert_ind = [traj_vert_ind[t] for t in sorted(traj_vert_ind)] + # sorted(traj_vert_ind) instead of range(len(traj_vert_ind)) + # because create_traj_list can be called for a component of the + # graph. An element of traj_vert_ind is a trajectory, represented + # by a list of vertex indices. print("Number of trajectories: ", len(traj_vert_ind)) @@ -87,3 +89,28 @@ def create_traj_list( ) print("Created expanded_traj.json.") + + +if __name__ == "__main__": + import sys + + import graph_tool + from graph_tool import topology + + if len(sys.argv) != 2: + sys.exit("Required argument: input-graph") + + g = graph_tool.load_graph(sys.argv[1]) + print("Input graph:") + print("Number of vertices:", g.num_vertices()) + print("Number of edges:", g.num_edges()) + print("Internal properties:") + g.list_properties() + create_traj_list( + topology.topological_sort(g), + g.vp["traj"], + g.vp["name"], + g.vp["inst_eddies"], + g.gp["orientation"], + g.gp["e_overestim"], + )