1. 14 Dec, 2007 1 commit
    • Tiago Peixoto's avatar
      Add support for running arbitrary C++ code from python · 866bb994
      Tiago Peixoto authored
      It is now possible to run arbitrary "inline" C++ code from python, using
      scipy.weave, as such:
      
              g = graph_tool.Graph()
              g.load("foo.xml")
              value = 2.0
              g.run_action('cout << num_vertices(g) << " " << value << endl;',
                           ["value"]);
      
      The code gets compiled the first time, and is reused after that. Python
      local and global variables can be passed to C++, as shown above, by
      specifying a list of passed variables as the second argument.
      866bb994
  2. 13 Dec, 2007 1 commit
  3. 06 Dec, 2007 1 commit
  4. 30 Nov, 2007 1 commit
    • Tiago Peixoto's avatar
      Further improvements of the python interface · 1a0e9b5f
      Tiago Peixoto authored
      Property maps can now be obtained as such:
      
               weight = g.edge_properties['weight']
               print weight[v] # v is a Vertex object
               weight[v] = 2.0
               # and so on...
      
      The list of properties is obtained from g.vertex_properties,
      g.edge_properties and g.graph_properties, which can be read as
      dictionaries. The last can be set also, as such:
      
               g.graph_properties = {foo:"bar", baz:42}
      
      Functions to add and remove vertices or adges were also added
      (add_{vertex|edge}, remove_{vertex|edgge}).
      
      Vertex and Edge types can also now be printed for convenience, as such:
      
             for v in g.vertices():
                 print v
             for e in g.edges():
                 print e
      
      which results, for example, in:
      0
      1
      2
      3
      4
      5
      6
      (0,1)
      (1,2)
      (2,6)
      (3,4)
      (4,5)
      (4,2)
      (5,6)
      (6,1)
      
      (this also adds the forgotten graph_tool.py file, which was previously
      on .gitignore)
      1a0e9b5f
  5. 26 Nov, 2007 1 commit
    • Tiago Peixoto's avatar
      Further improvement of python interface · 06358b7c
      Tiago Peixoto authored
      Vertices and edges can be accessed from the graph class, as such:
      
          import graph_tool
          g = graph_tool.Graph()
          for v in g.vertices():
              for e in v.out_edges():
                 # do something...
      
      Additionally, the --edit-{vertex|edge|graph}-property was ported to the
      new interface, and is working again, as it used to.
      
      The Vertex and Edge class no longer have the 'get_property' and
      'set_property' method. They'll be replaced by a new method of accessing
      property maps.
      06358b7c
  6. 04 Nov, 2007 1 commit
  7. 23 Oct, 2007 2 commits
  8. 12 Oct, 2007 1 commit
    • Tiago Peixoto's avatar
      Added --purge-edges and --purge-vertices option · 23e319bf
      Tiago Peixoto authored
          
      Filtered vertices and edges can be permanently removed from the graph
      with --purge-vertices and --purge-edges, respectively. The edge or
      vertex filter is automatically removed, afterwards. This is useful if
      maximum speed is necessary, and saving and reloading the graph without
      filtering is not desired.
          
      (this commit also removes some trailing whitespaces)
      23e319bf
  9. 07 Oct, 2007 1 commit
    • Tiago Peixoto's avatar
      Remove graph rewiring · f618944c
      Tiago Peixoto authored
      Remove graph rewiring for now, since it's quite buggy. It will be
      re-commited when ready.
      f618944c
  10. 04 Oct, 2007 1 commit
    • Tiago Peixoto's avatar
      · 8e962092
      Tiago Peixoto authored
      Simplify range filtering, and definitely remove python filtering
          
      Simplify range filtering of vertices and edges, by always filtering
      both at once, even if all vertices or edges are being considered. This
      severely reduces compilation time and memory, at a small potential
      cost in run-time speed, which will probably be overshadowed by other
      things, such as dynamic_map look-ups ("premature optimization is the
      root of all evil"). Also, remove python-filtering, since, in the end,
      it is just code bloat, since it is quite slow for most uses and can be
      replaced, generally, by python property editing + range filtering.
      8e962092
  11. 12 Sep, 2007 1 commit
  12. 09 Aug, 2007 1 commit
    • Tiago Peixoto's avatar
      * src/graph-tool: change layout and community graph options. · c3a6567d
      Tiago Peixoto authored
      	* src/boost-workaround/boost/graph/kamada_kawai_spring_layout.hpp: annotated code with openmp constructs.
      
      	* src/graph/graph_adaptor.hh: graph_type should be a typedef to the original graph.
      
      	* src/graph/graph_properties.hh, src/graph/graph_properties.cc: added pos_t type.
      
      	* src/boost-workaround/boost/graph/fruchterman_reingold.hpp: annotated code with openmp constructs.
      
      	* src/graph/graph_layout.cc: new file with graph layout routines.
      
      	* src/graph/graph.cc: removed graph layout routines.
      
      	* src/graph/graph_community_network.cc (struct get_community_network): fixed inversion of directedness test.
      
      	* src/graph/graph.cc (GraphInterface::LabelComponents): use vector_property_map instead of HashedDescriptor. Don't use a static map!
      
      	* src/graph/graph_adaptor.hh: fixed edge descriptor equality comparison, which must rely on underlying edge, regardless of whether it's inverted or not.
      
      
      git-svn-id: https://svn.forked.de/graph-tool/trunk@121 d4600afd-f417-0410-95de-beed9576f240
      c3a6567d
  13. 11 Jul, 2007 1 commit
    • Tiago Peixoto's avatar
      · 32990eb6
      Tiago Peixoto authored
              * ChangeLog: updated ChangeLog file with svn history
      
              * src/graph/graph_filtering.hh: added add_edge() and remove_edge() functions for filtered graphs
      
              * src/graph/shared_map.hh: included SharedContainer
      
              * src/graph/graph_rewiring.cc: initial support for random graph rewiring
      
      
      
      git-svn-id: https://svn.forked.de/graph-tool/trunk@114 d4600afd-f417-0410-95de-beed9576f240
      32990eb6
  14. 02 Jul, 2007 1 commit
  15. 30 Jun, 2007 2 commits
  16. 01 May, 2007 1 commit
  17. 30 Apr, 2007 1 commit
  18. 25 Jan, 2007 1 commit
  19. 12 Jan, 2007 1 commit
  20. 15 Nov, 2006 1 commit
  21. 14 Nov, 2006 1 commit
  22. 13 Nov, 2006 1 commit
  23. 12 Nov, 2006 1 commit
  24. 01 Nov, 2006 1 commit
  25. 31 Oct, 2006 1 commit
  26. 14 Oct, 2006 1 commit
  27. 09 Oct, 2006 1 commit
  28. 24 Sep, 2006 1 commit
  29. 04 Sep, 2006 1 commit
  30. 03 Sep, 2006 1 commit
  31. 17 Aug, 2006 1 commit
  32. 16 Aug, 2006 1 commit
  33. 15 Aug, 2006 1 commit
  34. 09 Aug, 2006 1 commit
  35. 03 Aug, 2006 1 commit
  36. 01 Aug, 2006 1 commit
  37. 22 Jul, 2006 1 commit
  38. 21 Jul, 2006 1 commit