Edge Impedances and Admittances

CommonOPF exports methods to get the real-valued resistance and reactance of Network edges, as well as the complex-valued impedance. If the Network is SinglePhase then scalar values are returned; if the Network is MultiPhase then matrix values are returned.

Impedance

CommonOPF.rijFunction
rij(i::AbstractString, j::AbstractString, net::Network)

resistance(net[(i,j)])

Resistance of edge i-j

source
rij(i::AbstractString, j::AbstractString, net:::Network{SinglePhase})

Scalar resistance of edge i-j

source
CommonOPF.rij_per_unitFunction
rij_per_unit(i::AbstractString, j::AbstractString, net::Network)

resistance(net[(i,j)]) / net.Zbase

Resistance of edge i-j normalized by net.Zbase

source
CommonOPF.xijFunction
xij(i::AbstractString, j::AbstractString, net::Network)

Reactance of edge i-j

source
xij(i::AbstractString, j::AbstractString, net:::Network{SinglePhase})

Scalar reactance of edge i-j

source
CommonOPF.xij_per_unitFunction
xij_per_unit(i::AbstractString, j::AbstractString, net::Network)

Reactance of edge i-j normalized by net.Zbase

source
CommonOPF.zijFunction
zij(i::AbstractString, j::AbstractString, net::Network)

Impedance matrix of edge (i,j)

source
CommonOPF.zij_per_unitFunction

zijperunit(i::AbstractString, j::AbstractString, net::Network)

Impedance matrix of edge (i,j) in per-unit (normalized with net.Zbase)

source

Admittance

CommonOPF.gijFunction
gij(i::AbstractString, j::AbstractString, net::Network)

conductance of edge i-j

source
gij(i::AbstractString, j::AbstractString, net:::Network{SinglePhase})

Scalar conductance of edge i-j

source
CommonOPF.gij_per_unitFunction
gij_per_unit(i::AbstractString, j::AbstractString, net::Network)

conductance of edge i-j normalized by net.Zbase

source
CommonOPF.bijFunction
bij(i::AbstractString, j::AbstractString, net::Network)

susceptance(net[(i,j)])

susceptance of edge i-j

source
bij(i::AbstractString, j::AbstractString, net:::Network{SinglePhase})

Scalar susceptance of edge i-j

source
CommonOPF.bij_per_unitFunction
bij_per_unit(i::AbstractString, j::AbstractString, net::Network)

susceptance(net[(i,j)]) * net.Zbase

susceptance of edge i-j normalized by net.Zbase

source
CommonOPF.yijFunction
yij(i::AbstractString, j::AbstractString, net::Network)

admittance matrix of edge (i,j)

source
yij(i::AbstractString, j::AbstractString, net::Network{SinglePhase})

branch admittance of edge (i,j)

source
CommonOPF.yij_per_unitFunction
yij_per_unit(i::AbstractString, j::AbstractString, net::Network{SinglePhase})

branch admittance of edge (i,j) in per-unit (multiplied with net.Zbase)

source
yij_per_unit(i::AbstractString, j::AbstractString, net::Network)

branch admittance matrix of edge (i,j) in per-unit (multiplied with net.Zbase)

source

Bus Admittance Matrix

The convention in CommonOPF is upper case Y for the bus admittance matrix methods:

CommonOPF.YijFunction
Yij(
    i::AbstractString, 
    j::AbstractString, 
    net::CommonOPF.Network{SinglePhase}
)::ComplexF64

Returns entry of bus admittance matrix at i,j for single phase networks

source
Yij(
    i::AbstractString, 
    j::AbstractString, 
    net::CommonOPF.Network{MultiPhase}
)::Matrix{ComplexF64}

Returns Nphase x Nphase sub-matrix of bus admittance matrix for the phases connecting busses i and j

!!! warning The branch admittance methods like yij always return 3x3 matrices regardless of the phases in net[(i, j)].phases. This is because it is easier to build the OPF models if we have consistently sized vectors and matrices. However, for the BIM that use the bus admittance matrix, it is simpler to exclude the non-existent phases and define variables with the same size and indices as the bus admittance matrix.

source
CommonOPF.Yij_per_unitFunction
Yij_per_unit(
    i::AbstractString, 
    j::AbstractString, 
    net::CommonOPF.Network{SinglePhase}
)::ComplexF64

Returns entry of bus admittance matrix at i,j in per-unit (multiplied with net.Zbase)

source
CommonOPF.YsparseFunction
function Ysparse(net::CommonOPF.Network)::SparseArrays.SparseMatrixCSC

Returns a Symmetric view of sparse upper triangular matrix.

source

Shunt Admittance

Network specification yaml files can include bus admittance values like:

ShuntAdmittance:
  - bus: 1
    g: 0
    b: 0.0011

The admittances will be stored in the Network bus data and can be retrieved using the yj methods:

CommonOPF.yjFunction
yj(j::AbstractString, net::Network{SinglePhase})::ComplexF64

Shunt admittance of bus j

source
yj(j::AbstractString, net::Network{MultiPhase})::Matrix{ComplexF64}

Shunt admittance of bus j

source