We have made the following (breaking) changes:
SimpleGraphhas been renamedUndirectedGraph.SimpleDigraphhas been renamedDirectedGraph.SimpleHypergraphhas been renamedHyperGraph(note the captial G).
These may be abbreviated as UG, DG, and HG, respectively
These changes were made to help this SimpleGraphs module be interoperable with Julia's Graphs module that defines the type SimpleGraph (formerly Graph in the LightGraphs module).
Conversion between these two types (UndirectedGraph in this module and SimpleGraph in the Graphs module) is supported; see the file graph_converter.jl in the extras directory.
This module defines three data types for working with graphs:
- The
UndirectedGraphtype represents undirected graphs without loops or multiple edges. - The
DirectedGraphtype represents directed graphs in which there may be at most one directed edge(u,v)from a vertexuto a vertexv. There may also be a directed edge in the opposite direction,(v,u). - The
HyperGraphtype representing hypergraphs in which edges may be any subset of the vertex set.
Additional functionality can be found in these modules:
DrawSimpleGraphsfor visualization.SimpleGraphAlgorithmsfor functions relying on [integer] linear programming.
In addition, we have:
- A nascent
SimplePlanarGraphsmodule with extremely limited functionality. - An older
SimpleGraphRepresentationsmodule that I am not currently maintaining.
Please see the Wiki for
extensive information pertaining to the UndirectedGraph type.
The DirectedGraph type is not so well developed nor documented. See the
source files in the src directory. Likewise, documentation and support for the HyperGraph type is limited.
The extras directory contains some additional functionality that may be
useful. See the README file therein.
This software is part of a larger suite of tools for graph theory. More information can be found right after my explanation that this code is postcardware.
Thank you to JHU students Tara Abrishami and Laura Bao for contributions to this project.
This is a work in process with a lot of more features that can/should be added. If you're interested in contributing, please contact me. I'm especially interested in JHU undergraduates getting involved.
Ed Scheinerman ([email protected])