Skip to content

The network#

One of the 24 fragments of examples/pypsa.yaml: the buses and the balance at each of them. It reads Bus_injection under given:, and every component adds its injection to it.

dimensions:
  scenario:
    description: the futures dispatch is chosen in, each with a weight
  snapshot:
    description: dispatch periods
    dtype: datetime
  bus:
    description: network nodes

given:
  expressions:
    Bus_injection:
      dims: [scenario, snapshot, bus]
      description: >-
        what every component puts into a bus, less what it takes out of it;
        PyPSA writes each term into the balance, and a load on its right-hand
        side

constraints:
  Bus_nodal_balance:
    description: >-
      `Bus-nodal_balance` — what is generated at a bus, storage dispatch and
      stores included, less what the links take away, plus what arrives over
      them after losses and any delay at every port they deliver to, each
      process port drawing or delivering at its own rate and each passive branch
      carrying its flow, meets the load there, less half of every incident
      line's and transformer's loss — PyPSA dissipates a branch's loss half at
      either end. Each generator, storage unit, store and load term enters
      with its component's `sign` (`constraints.py:1428-1429`, `:1538`), and
      an inactive load not at all. A bus nothing is attached to has no row; PyPSA refuses one that
      carries load, and this file does not yet.
    dims: [scenario, snapshot, bus]
    expression: Bus_injection == 0

Sets#

Symbol Meaning
\(\Xi\) index \(\xi\) — scenario — the futures dispatch is chosen in, each with a weight
\(\mathcal{T}\) index \(t\) — snapshot — dispatch periods
\(\mathcal{N}\) index \(n\) — bus — network nodes

Given#

Symbol Meaning
\(\mathit{Bus\_injection}\) Bus_injection over \(\Xi \times \mathcal{T} \times \mathcal{N}\), an expression another file defines — what every component puts into a bus, less what it takes out of it; PyPSA writes each term into the balance, and a load on its right-hand side

Subject to#

Bus_nodal_balance

\[ \mathit{Bus\_injection}_{\xi,t,n} = 0 \qquad \forall\, \xi \in \Xi,\ t \in \mathcal{T},\ n \in \mathcal{N} \]