Low-Level Functions

BasePlasmoGraph

A BasePlasmoGraph wraps a LightGraphs.jl AbstractGraph and adds additional attributes for managing subgraphs and data. These are all of the graph functions a user might use in Plasmo. Most core functions from LightGraphs.jl have been extended for a PlasmoGraph.

Graph Functions

BasePlasmoGraph()

The BasePlasmoGraph Type. The BasePlasmoGraph wraps a LightGraphs.AbstractGraph (such as a LightGraphs.Graph or LightGraphs.DiGraph). The BasePlasmoGraph extends a LightGraphs.AbstractGraph and adds a label (i.e. a name), an index, attributes (a dictionary), and a nodedict and edgedict to map nodes and edges to indices. Most notable is the addition of a subgraphlist. A BasePlasmoGraph contains a list of other AbstractPlasmoGraph objects reprsenting subgraphs within the BasePlasmoGraph. The index therefore, is the PlasmoGraph index within its parent graph. An index of 0 means the graph is the top-level graph (i.e. it is not a subgraph of any other graph).

source
Base.getindexMethod.

getindex(basegraph::BasePlasmoGraph)

Get a basegraph index

source
Base.getindexMethod.

getindex(basegraph::BasePlasmoGraph,basenode::BasePlasmoNode)

Get the index of the node in the BasePlasmoGraph

source