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¶
- 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¶
- 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¶