Iterates through the network removing edges until no edges are over the line limit and the network has stabilised.
Cascade( NetworkList, Iteration = 0, StopCascade = Inf, g0 = NULL, AZero, LineProperties, Generation = "Generation", Demand = "Demand", EdgeName = "Link", VertexName = "name", Net_generation = "BalencedPower", power_flow = "PowerFlow", edge_limit = "Link.Limit" )
NetworkList | A list of power-grid networks. |
---|---|
Iteration | The current iteration number |
StopCascade | The number of iterations when cascade will be forced to terminate. An integer, default is set to infinity. |
g0 | An igraph object. The graph in its initial state |
AZero | a matrix. This is created by the 'CreateTransmission' function |
LineProperties | a matrix This is created by the LinePropertiesMatrix function |
Generation | The name of the node generation variable. A character string. |
Demand | the name of the node Load variable. A character string. |
EdgeName | The variable that holds the edge names, a character string. |
VertexName | The variable that holds the names of the nodes, to identify the slack ref. a character string |
Net_generation | The name that the net generation data for each node is held in |
power_flow | A character string. This value indicates the name of the edge attribute that holds power flow, the default is "PowerFlow" |
edge_limit | A character string. This value indicates the name of the edge attribute that holds the edge limit, the default is "Link.Limit" |
This is a recursive function that calls itself repeatedly until the cascade has come to a stop and the network has stabilised. The function produces a list of graphs showing each state of the cascade. This function is mostly used as part of the AttackTheGrid function.
attack_the_grid
,CreateTransmission
, LinePropertiesMatrix
Cascade(NetworkList,
Iteration = 0,
StopCascade = Inf,
g0 = NULL,
Generation = "Generation",
Demand = "Demand",
EdgeName = "Link",
VertexName = "name",
Net_generation = "BalencedPower",
power_flow = "PowerFlow",
edge_limit = "Link.Limit"
)