oedisi.types package

Submodules

oedisi.types.data_types module

class oedisi.types.data_types.AdmittanceMatrix(*, admittance_matrix: List[List[Tuple[float, float]]], ids: List[str], units: str = 'S')

Bases: BaseModel

admittance_matrix: List[List[Tuple[float, float]]]
ids: List[str]
units: str
class oedisi.types.data_types.AdmittanceSparse(*, from_equipment: List[str], to_equipment: List[str], equipment_type: List[str] | None = None, admittance_list: List[Tuple[float, float]], units: str = 'S')

Bases: Incidence

admittance_list: List[Tuple[float, float]]
units: str
class oedisi.types.data_types.BusArray(*, values: List[float], ids: List[str], units: str, accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: MeasurementArray

Extended by classes:

“VoltagesMagnitude”, “VoltagesAngle”, “VoltagesReal”, “VoltagesImaginary”

class oedisi.types.data_types.CapacitorStates(*, values: List[int], ids: List[str], time: datetime | None = None)

Bases: StateArray

class oedisi.types.data_types.Command(*, obj_name: str, obj_property: str, val: str)

Bases: BaseModel

JSON Configuration for external object commands.

obj_name – name of the object. obj_prop – name of the property. obj_val – val of the property.

obj_name: str
obj_property: str
val: str
class oedisi.types.data_types.CommandList(*, __root__: List[Command])

Bases: BaseModel

List[Command] with JSON parsing.

class oedisi.types.data_types.CostArray(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: BaseModel

Extended by classes:

“RealCostFunctions”, “ReactiveCostFunctions”, “RealWholesalePrices”, “ReactiveWholesalePrices”, “OperationalCosts”

ids: List[str]
time: datetime | None
units: str
values: List[List[float]]
class oedisi.types.data_types.CurrentsAngle(*, values: List[float], ids: List[str], units: str = 'radians', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.CurrentsImaginary(*, values: List[float], ids: List[str], units: str = 'A', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.CurrentsMagnitude(*, values: List[float], ids: List[str], units: str = 'A', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.CurrentsReal(*, values: List[float], ids: List[str], units: str = 'A', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.EquipmentArray(*, values: List[float], ids: List[str], units: str, accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: MeasurementArray

Extended by classes:

“SolarIrradiances”, “Temperatures”, “WindSpeeds”, “StatesOfCharge”, “CurrentsMagnitude”, “CurrentsAngle”, “CurrentsReal”, “CurrentsImaginary”, “ImpedanceMagnitude”, “ImpedanceAngle”, “ImpedanceReal”, “ImpedanceImaginary”,

class oedisi.types.data_types.EquipmentNodeArray(*, values: List[float], ids: List[str], units: str, accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None, equipment_ids: List[str])

Bases: MeasurementArray

Primary key is ids + equipment_ids.

  • ids corresponding node id, so “113.1”, “113.2”, “113.3”

  • equipment_id corresponds to PVSystem.113

Extended by classes:

“PowersMagnitude”, “PowersAngle”, “PowersReal”, “PowersImaginary”,

equipment_ids: List[str]
class oedisi.types.data_types.ImpedanceAngle(*, values: List[float], ids: List[str], units: str = 'radians', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.ImpedanceImaginary(*, values: List[float], ids: List[str], units: str = 'Ohm', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.ImpedanceMagnitude(*, values: List[float], ids: List[str], units: str = 'Ohm', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.ImpedanceReal(*, values: List[float], ids: List[str], units: str = 'Ohm', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.Incidence(*, from_equipment: List[str], to_equipment: List[str], equipment_type: List[str] | None = None)

Bases: BaseModel

equipment_type: List[str] | None
from_equipment: List[str]
to_equipment: List[str]
class oedisi.types.data_types.IncidenceList(*, from_equipment: List[str], to_equipment: List[str], equipment_type: List[str] | None = None, ids: List[str])

Bases: Incidence

ids: List[str]
class oedisi.types.data_types.Injection(*, current_real: CurrentsReal = {'ids': [], 'node_ids': [], 'values': []}, current_imaginary: CurrentsImaginary = {'ids': [], 'node_ids': [], 'values': []}, power_real: PowersReal = {'ids': [], 'node_ids': [], 'values': []}, power_imaginary: PowersImaginary = {'ids': [], 'node_ids': [], 'values': []}, impedance_real: ImpedanceReal = {'ids': [], 'node_ids': [], 'values': []}, impedance_imaginary: ImpedanceImaginary = {'ids': [], 'node_ids': [], 'values': []})

Bases: BaseModel

current_imaginary: CurrentsImaginary
current_real: CurrentsReal
impedance_imaginary: ImpedanceImaginary
impedance_real: ImpedanceReal
power_imaginary: PowersImaginary
power_real: PowersReal
class oedisi.types.data_types.InverterControl(*, pvsystem_list: List[str] | None = None, vvcontrol: VVControl | None = None, vwcontrol: VWControl | None = None, mode: InverterControlMode = InverterControlMode.voltvar)

Bases: BaseModel

InverterControl with volt-var control and/or volt-watt control.

classmethod check_mode(values)

Make sure that mode reflects vvcontrol and vwcontrol data.

mode: InverterControlMode
pvsystem_list: List[str] | None
vvcontrol: VVControl | None
vwcontrol: VWControl | None
class oedisi.types.data_types.InverterControlList(*, __root__: List[InverterControl])

Bases: BaseModel

List[InverterControl] with JSON parsing.

class oedisi.types.data_types.InverterControlMode(value)

Bases: Enum

Inverter control mode.

voltvar = 'VOLTVAR'
voltvar_voltwatt = 'VV_VW'
voltwatt = 'VOLTWATT'
class oedisi.types.data_types.MeasurementArray(*, values: List[float], ids: List[str], units: str, accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: BaseModel

Extended by classes:

“BusArray”, “EquipmentArray”, “EquipmentNodeArray”

accuracy: List[float] | None
bad_data_threshold: List[float] | None
ids: List[str]
time: datetime | None
units: str
values: List[float]
class oedisi.types.data_types.OperationalCosts(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: CostArray

class oedisi.types.data_types.PowersAngle(*, values: List[float], ids: List[str], units: str = 'radians', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None, equipment_ids: List[str])

Bases: EquipmentNodeArray

units: str
class oedisi.types.data_types.PowersImaginary(*, values: List[float], ids: List[str], units: str = 'kVAR', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None, equipment_ids: List[str])

Bases: EquipmentNodeArray

units: str
class oedisi.types.data_types.PowersMagnitude(*, values: List[float], ids: List[str], units: str = 'kVA', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None, equipment_ids: List[str])

Bases: EquipmentNodeArray

units: str
class oedisi.types.data_types.PowersReal(*, values: List[float], ids: List[str], units: str = 'kW', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None, equipment_ids: List[str])

Bases: EquipmentNodeArray

units: str
class oedisi.types.data_types.ReactiveCostFunctions(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: CostArray

class oedisi.types.data_types.ReactivePowerSetting(value)

Bases: Enum

Reactive power setting, almost always VARAVAL_WATTS.

VARAVAL_WATTS = 'VARAVAL_WATTS'
VARMAX_VARS = 'VARMAX_VARS'
VARMAX_WATTS = 'VARMAX_WATTS'
class oedisi.types.data_types.ReactiveWholesalePrices(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: CostArray

class oedisi.types.data_types.RealCostFunctions(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: CostArray

class oedisi.types.data_types.RealWholesalePrices(*, values: List[List[float]], ids: List[str], units: str = '$', time: datetime | None = None)

Bases: CostArray

class oedisi.types.data_types.RegulatorStates(*, values: List[int], ids: List[str], time: datetime | None = None)

Bases: StateArray

class oedisi.types.data_types.SolarIrradiances(*, values: List[float], ids: List[str], units: str = 'kW/m^2', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.StateArray(*, values: List[int], ids: List[str], time: datetime | None = None)

Bases: BaseModel

Extended by classes:

“SwitchStates”, “CapacitorStates”, “RegulatorStates”

ids: List[str]
time: datetime | None
values: List[int]
class oedisi.types.data_types.StatesOfCharge(*, values: List[float], ids: List[str], units: str = 'percent', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.SwitchStates(*, values: List[int], ids: List[str], time: datetime | None = None)

Bases: StateArray

class oedisi.types.data_types.Temperatures(*, values: List[float], ids: List[str], units: str = 'C', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str
class oedisi.types.data_types.Topology(*, admittance: AdmittanceSparse | AdmittanceMatrix, injections: Injection, incidences: IncidenceList | None, base_voltage_angles: VoltagesAngle | None = None, base_voltage_magnitudes: VoltagesMagnitude | None = None, slack_bus: List[str] = [])

Bases: BaseModel

admittance: AdmittanceSparse | AdmittanceMatrix
base_voltage_angles: VoltagesAngle | None
base_voltage_magnitudes: VoltagesMagnitude | None
incidences: IncidenceList | None
injections: Injection
slack_bus: List[str]
class oedisi.types.data_types.VVControl(*, deltaq_factor: float = -1.0, varchangetolerance: float = 0.025, voltagechangetolerance: float = 0.0001, vv_refreactivepower: ReactivePowerSetting = ReactivePowerSetting.VARAVAL_WATTS, voltage: List[float], reactive_response: List[float])

Bases: BaseModel

OpenDSS setting for volt-var control.

deltaq_factor: float
reactive_response: List[float]
varchangetolerance: float
voltage: List[float]
voltagechangetolerance: float
vv_refreactivepower: ReactivePowerSetting
class oedisi.types.data_types.VWControl(*, deltap_factor: float = -1.0, voltage: List[float], power_response: List[float])

Bases: BaseModel

OpenDSS setting for volt-watt control.

deltap_factor: float
power_response: List[float]
voltage: List[float]
class oedisi.types.data_types.VoltagesAngle(*, values: List[float], ids: List[str], units: str = 'radians', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: BusArray

units: str
class oedisi.types.data_types.VoltagesImaginary(*, values: List[float], ids: List[str], units: str = 'V', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: BusArray

units: str
class oedisi.types.data_types.VoltagesMagnitude(*, values: List[float], ids: List[str], units: str = 'V', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: BusArray

units: str
class oedisi.types.data_types.VoltagesReal(*, values: List[float], ids: List[str], units: str = 'V', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: BusArray

units: str
class oedisi.types.data_types.WindSpeeds(*, values: List[float], ids: List[str], units: str = 'm/s', accuracy: List[float] | None = None, bad_data_threshold: List[float] | None = None, time: datetime | None = None)

Bases: EquipmentArray

units: str

oedisi.types.generate_schema module

Module contents