Source code for VeraGridEngine.IO.iidm.devices.iidm_line

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
# SPDX-License-Identifier: MPL-2.0
from VeraGridEngine.IO.iidm.devices.iidm_object import IidmObject, Unit


[docs] class IidmLine(IidmObject): def __init__(self, id: str, voltageLevelId1: str, bus1: str, voltageLevelId2: str, bus2: str, r: float, x: float, g1: float, b1: float, g2: float, b2: float): """ :param id: :param voltageLevelId1: :param bus1: :param voltageLevelId2: :param bus2: :param r: :param x: :param g1: :param b1: :param g2: :param b2: """ super().__init__("Line") self.id = id self.voltageLevelId1 = voltageLevelId1 self.bus1 = bus1 self.voltageLevelId2 = voltageLevelId2 self.bus2 = bus2 self.r = r self.x = x self.g1 = g1 self.b1 = b1 self.g2 = g2 self.b2 = b2 self.register_property("id", "line:id", str, description="Line ID") self.register_property("voltageLevelId1", "line:voltageLevelId1", str, description="Voltage level 1") self.register_property("bus1", "line:bus1", str, description="Bus 1") self.register_property("voltageLevelId2", "line:voltageLevelId2", str, description="Voltage level 2") self.register_property("bus2", "line:bus2", str, description="Bus 2") self.register_property("r", "line:r", float, Unit("Ohm"), description="Resistance") self.register_property("x", "line:x", float, Unit("Ohm"), description="Reactance") self.register_property("g1", "line:g1", float, Unit("S"), description="Conductance at end 1") self.register_property("b1", "line:b1", float, Unit("S"), description="Susceptance at end 1") self.register_property("g2", "line:g2", float, Unit("S"), description="Conductance at end 2") self.register_property("b2", "line:b2", float, Unit("S"), description="Susceptance at end 2")