Links

Links are connecting the individual Nodes for the exchange of energy/mass. Links are directional, that is transport of mass/energy is only allowed in a single direction.

Index

The following types for links are implemented in EnergyModelsBase. The thought process is to dispatch on the EMB.Formulation of a link as additional option. This is in the current stage not implemented.

EnergyModelsBase.DirectType
struct Direct <: Link

A direct link between two nodes.

Fields

  • id is the name/identifier of the link.
  • from::Node is the node from which there is flow into the link.
  • to::Node is the node to which there is flow out of the link.
  • formulation::Formulation is the used formulation of links. If not specified, a Linear link is assumed.
source

The following functions are declared for accessing fields from a Link type.

The following functions are declared for filtering on Link types.

EnergyModelsBase.has_capacityMethod
has_capacity(l::Link)

Checks whether link l has a capacity.

By default, links do not have a capacity. You must dispatch on this function if you want to introduce links with capacities.

source
EnergyModelsBase.has_opexMethod
has_opex(l::Link)

Checks whether link l has operational expenses.

By default, links do not have operational expenses. You must dispatch on this function if you want to introduce links with operational expenses.

source
EnergyModelsBase.has_emissionsMethod
has_emissions(l::Link)

Checks whether link l has emissions.

By default, links do not have emissions. You must dispatch on this function if you want to introduce links with associated emissions, e.g., through leakage.

source
EnergyModelsBase.is_unidirectionalMethod
is_unidirectional(l::Link)

Returns logic whether the link l can be used bidirectional or only unidirectional.

source