g = gt.Graph()
v0 = g.add_vertex()
v1 = g.add_vertex()
e01 = g.add_edge(v0,v1)
A = gt.adjacency(g)
A.todense()
[e for e in g.edges()]
## -- End pasted text --
Out[2]: [<Edge object with source '0' and target '1' at 0x11fb10d60>]
It is true that most software and some websites use the more intuitive
definition that you were expecting. However a large part of the
theoretical literature uses the transposed definition, since it can be
more convenient mathematically. See for instance Mark Newman's book.
In any case, this an unimportant issue. A matrix transpose can be
obtained trivially in numpy.
It is true that most software and some websites use the more intuitive definition that you were expecting. However a large part of the theoretical literature uses the transposed definition, since it can be more convenient mathematically. See for instance Mark Newman's book.
I know — I use Godsil and Royle, who use the “correct” untransposed version in Algebraic Graph Theory ;o)
Because you cite the Wikipedia definition in your excellent documentation, I’d suggest documenting the convention you use explicitly, which is the transpose of Wiki’s (current) definition.