altdss.InvControl
#
Module Contents#
Classes#
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2) |
|
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2) |
API#
- class altdss.InvControl.IInvControl(iobj)#
Bases:
altdss.DSSObj.IDSSObj
,altdss.InvControl.InvControlBatch
- ActivePChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTWATT. Default is 0.01
Tolerance in pu of the convergence of the control loop associated with active power. For the same control iteration, this value is compared to the difference between the active power limit in pu resulted from the convergence process and the one resulted from the volt-watt function.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
ActivePChangeTolerance
, DSS property index: 24.
- ArGraHiV: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage inductive reactive power production is increased as the percent delta-voltage decreases above DbVMax.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the mmoving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraHiV
, DSS property index: 12.
- ArGraLowV: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage capacitive reactive power production is increased as the percent delta-voltage decreases below DbVMin.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the moving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraLowV
, DSS property index: 11.
- AvgWindowLen: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTVAR mode and VOLTWATT mode, and defaults to 0 seconds (0s).
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated.
Units are indicated by appending s, m, or h to the integer value.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution.
Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
AvgWindowLen
, DSS property index: 7.
- BaseFreq: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Base Frequency for ratings.
DSS property name:
BaseFreq
, DSS property index: 35.
- CombiMode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- CombiMode_str: List[str]#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- ComplexSeqCurrents() altdss.types.ComplexArray #
Complex double array of Sequence Currents for all conductors of all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqCurrents.html
- ComplexSeqVoltages() altdss.types.ComplexArray #
Complex double array of Sequence Voltage for all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqVoltages1.html
- ControlModel: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Integer defining the method for moving across the control curve. It can be one of the following:
0 = Linear mode (default) 1 = Exponential
Use this property for better tunning your controller and improve the controller response in terms of control iterations needed to reach the target. This property alters the meaning of deltaQ_factor and deltaP_factor properties according to its value (Check help). The method can also be combined with the controller tolerance for improving performance.
DSS property name:
ControlModel
, DSS property index: 34.
- Currents() altdss.types.ComplexArray #
Complex array of currents into each conductor of each terminal
Original COM help: https://opendss.epri.com/Currents1.html
- CurrentsMagAng() altdss.types.Float64Array #
Currents in magnitude, angle (degrees) format as a array of doubles.
Original COM help: https://opendss.epri.com/CurrentsMagAng.html
- DERList: List[List[str]]#
‘property(…)’
Array list of PVSystem and/or Storage elements to be controlled. If not specified, all PVSystem and Storage in the circuit are assumed to be controlled by this control.
No capability of hierarchical control between two controls for a single element is implemented at this time.
DSS property name:
DERList
, DSS property index: 1.
- DbVMax: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1.05 per-unit voltage (referenced to the PVSystem object rated voltage or a windowed average value).
This parameter is the maximum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMax
, DSS property index: 10.
- DbVMin: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.95 per-unit voltage (referenced to the PVSystem/Storage object rated voltage or a windowed average value).
This parameter is the minimum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMin
, DSS property index: 9.
- DeltaP_Factor: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the VOLTWATT modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_P itself. It tries to improve convergence as well as speed up process
Defining between 0.05 and 1.0, it sets the maximum change (in unit of the y-axis) from the prior active power output level to the desired active power output level during each control iteration.
If numerical instability is noticed in solutions such as active power changing substantially from one control iteration to the next and/or voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
If the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
DSS property name:
DeltaP_Factor
, DSS property index: 21.
- DeltaQ_Factor: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the VOLTVAR and DYNAMICREACCURR modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_Q itself. It tries to improve convergence as well as speed up process
Sets the maximum change (in per unit) from the prior var output level to the desired var output level during each control iteration.
if numerical instability is noticed in solutions such as var sign changing from one control iteration to the next and voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
if the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
When operating the controller using exponential control model (see CtrlModel), this parameter represents the sampling time gain of the controller, which is used for accelrating the controller response in terms of control iterations required.
DSS property name:
DeltaQ_Factor
, DSS property index: 14.
- DynReacAvgWindowLen: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1 seconds (1s). do not use a value smaller than 1.0
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated for the dynamic reactive current mode.
Units are indicated by appending s, m, or h to the integer value.
Typically this will be a shorter averaging window than the volt-var and volt-watt averaging window.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution. Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
DynReacAvgWindowLen
, DSS property index: 13.
- Enabled: List[bool]#
‘property(…)’
{Yes|No or True|False} Indicates whether this element is enabled.
DSS property name:
Enabled
, DSS property index: 36.
- EventLog: List[bool]#
‘property(…)’
{Yes/True | No/False*} Default is NO for InvControl. Log control actions to Eventlog.
DSS property name:
EventLog
, DSS property index: 22.
- FullName() List[str] #
Returns the full name (including object type) for all objects in this batch
- GUID() List[str] #
GUID/UUID for each object. Currently used only in the CIM-related methods.
Original COM help: https://opendss.epri.com/GUID.html
- Handle() altdss.types.Int32Array #
Index of each element into the circuit’s element list.
Original COM help: https://opendss.epri.com/Handle.html
- HasOCPDevice() altdss.types.BoolArray #
For each element in the batch: returns true if a recloser, relay, or fuse controlling the circuit element.
OCP = Overcurrent Protection
Original COM help: https://opendss.epri.com/HasOCPDevice.html
- HasSwitchControl() altdss.types.BoolArray #
For each element in the batch: returns true if the element has a SwtControl attached.
Original COM help: https://opendss.epri.com/HasSwitchControl.html
- HasVoltControl() altdss.types.BoolArray #
For each element in the batch: returns true if the element has a CapControl or RegControl attached.
Original COM help: https://opendss.epri.com/HasVoltControl.html
- Hysteresis_Offset: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTVAR mode, and defaults to 0.
for the times when the terminal voltage is decreasing, this is the off-set in per-unit voltage of a curve whose shape is the same as vvc_curve. It is offset by a certain negative value of per-unit voltage, which is defined by the base quantity for the x-axis of the volt-var curve (see help for voltage_curvex_ref)
if the PVSystem/Storage terminal voltage has been increasing, and has not changed directions, utilize vvc_curve1 for the volt-var response.
if the PVSystem/Storage terminal voltage has been increasing and changes directions and begins to decrease, then move from utilizing vvc_curve1 to a volt-var curve of the same shape, but offset by a certain per-unit voltage value.
Maintain the same per-unit available var output level (unless head-room has changed due to change in active power or kva rating of PVSystem/Storage). Per-unit var values remain the same for this internally constructed second curve (hysteresis curve).
if the terminal voltage has been decreasing and changes directions and begins to increase , then move from utilizing the offset curve, back to the vvc_curve1 for volt-var response, but stay at the same per-unit available vars output level.
DSS property name:
Hysteresis_Offset
, DSS property index: 5.
- IsIsolated() altdss.types.BoolArray #
For each element in the batch: returns true if the element is isolated. Note that this only fetches the current value. See also the Topology interface.
- LPFTau: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Not required. Defaults to 0 seconds.
Filter time constant of the LPF option of the RateofChangeMode property. The time constant will cause the low-pass filter to achieve 95% of the target value in 3 time constants.
DSS property name:
LPFTau
, DSS property index: 19.
- Like(value: AnyStr, flags: altdss.enums.SetterFlags = 0)#
Make like another object, e.g.:
New Capacitor.C2 like=c1 …
DSS property name:
Like
, DSS property index: 37.
- Losses() altdss.types.ComplexArray #
For each element in the batch: total losses in the element, in VA (watts, vars).
Original COM help: https://opendss.epri.com/Losses1.html
- MaxCurrent(terminal: int) altdss.types.Float64Array #
Returns the maximum current (magnitude) at the specified terminal for each element in this batch. Use -1 as terminal to get the value across all terminals.
- Mode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- Mode_str: List[str]#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- MonBus: List[List[str]]#
‘property(…)’
Name of monitored bus used by the voltage-dependent control modes. Default is bus of the controlled PVSystem/Storage or Storage.
DSS property name:
MonBus
, DSS property index: 26.
- MonBusesVBase: List[altdss.types.Float64Array]#
‘property(…)’
Array list of rated voltages of the buses and their nodes presented in the monBus property. This list may have different line-to-line and/or line-to-ground voltages.
DSS property name:
MonBusesVBase
, DSS property index: 27.
- MonVoltageCalc: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- MonVoltageCalc_str: List[str]#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- property Name: List[str]#
- NumConductors() altdss.types.Int32Array #
Number of conductors per terminal for each element in the batch.
Original COM help: https://opendss.epri.com/NumConductors.html
- NumControllers() altdss.types.Int32Array #
Number of controllers connected to each device in the batch.
Original COM help: https://opendss.epri.com/NumControls.html
- NumPhases() altdss.types.Int32Array #
Number of Phases for each element in this batch.
Original COM help: https://opendss.epri.com/NumPhases.html
- NumTerminals() altdss.types.Int32Array #
Number of terminals for each Circuit Element in the batch.
Original COM help: https://opendss.epri.com/NumTerminals.html
- OCPDevice() List[Union[altdss.DSSObj.DSSObj, None]] #
Returns (as a list of Python objects) the OCP device controlling each element.
- OCPDeviceIndex() altdss.types.Int32Array #
For each element in the batch: index into each controller list of the OCP Device controlling each circuit element
Original COM help: https://opendss.epri.com/OCPDevIndex.html
- OCPDeviceType() List[dss.enums.OCPDevType] #
For each element in the batch: type of OCP controller device
Original COM help: https://opendss.epri.com/OCPDevType.html
- PhaseLosses() altdss.types.ComplexArray #
Complex array of losses (kVA) by phase
Original COM help: https://opendss.epri.com/PhaseLosses.html
- Powers() altdss.types.ComplexArray #
Complex array of powers (kVA) into each conductor of each terminal, of each element in the batch.
Original COM help: https://opendss.epri.com/Powers.html
- RateOfChangeMode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RateOfChangeMode_str: List[str]#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RefReactivePower: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- RefReactivePower_str: List[str]#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- RiseFallLimit: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Not required. Defaults to no limit (-1). Must be -1 (no limit) or a positive value.
Limit in power in pu per second used by the RISEFALL option of the RateofChangeMode property.The base value for this ramp is defined in the RefReactivePower property and/or in VoltwattYAxis.
DSS property name:
RiseFallLimit
, DSS property index: 20.
- SeqCurrents() altdss.types.Float64Array #
Array of symmetrical component currents (magnitudes only) into each 3-phase terminal of each element
Original COM help: https://opendss.epri.com/SeqCurrents.html
- SeqPowers() altdss.types.ComplexArray #
Complex array of sequence powers (kW, kvar) into each 3-phase terminal of each element
Original COM help: https://opendss.epri.com/SeqPowers.html
- SeqVoltages() altdss.types.Float64Array #
Double array of symmetrical component voltages (magnitudes only) at each 3-phase terminal
Original COM help: https://opendss.epri.com/SeqVoltages1.html
- TotalPowers() altdss.types.ComplexArray #
Returns an array with the total powers (complex, kVA) at all terminals of the circuit elements in this batch.
The resulting array is equivalent to concatenating the TotalPowers for each element.
- VSetPoint: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for Active Voltage Regulation (AVR).
DSS property name:
VSetPoint
, DSS property index: 33.
- VVC_Curve1: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VVC_Curve1_str: List[str]#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VarChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTVAR and DYNAMICREACCURR modes. Defaults to 0.025 per unit of the base provided or absorbed reactive power described in the RefReactivePower property This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the convergence of the control loop associated with reactive power. For the same control iteration, this value is compared to the difference, as an absolute value (without sign), between the desired reactive power value in pu and the output reactive power in pu of the controlled element.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VarChangeTolerance
, DSS property index: 16.
- VoltWattCH_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattCH_Curve_str: List[str]#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattYAxis: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWattYAxis_str: List[str]#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWatt_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltWatt_Curve_str: List[str]#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltageChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Defaults to 0.0001 per-unit voltage. This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the control loop convergence associated to the monitored voltage in pu. This value is compared with the difference of the monitored voltage in pu of the current and previous control iterations of the control loop
This voltage tolerance value plus the var/watt tolerance value (VarChangeTolerance/ActivePChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VoltageChangeTolerance
, DSS property index: 15.
- Voltage_CurveX_Ref: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltage_CurveX_Ref_str: List[str]#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltages() altdss.types.ComplexArray #
Complex array of voltages at terminals
Original COM help: https://opendss.epri.com/Voltages1.html
- VoltagesMagAng() altdss.types.Float64Array #
Voltages at each conductor in magnitude, angle form as array of doubles.
Original COM help: https://opendss.epri.com/VoltagesMagAng.html
- WattPF_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattPF_Curve_str: List[str]#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattVar_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- WattVar_Curve_str: List[str]#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- __call__()#
- __contains__(name: str) bool #
- __getitem__(name_or_idx)#
- __init__(iobj)#
- __iter__()#
- __len__() int #
- batch(**kwargs)#
Creates a new batch handler of (existing) objects
- batch_new(names: Optional[List[AnyStr]] = None, *, df=None, count: Optional[int] = None, begin_edit: Optional[bool] = None, **kwargs: typing_extensions.Unpack[altdss.InvControl.InvControlBatchProperties]) altdss.InvControl.InvControlBatch #
Creates a new batch of InvControl objects
Either
names
,count
ordf
is required.- Parameters:
begin_edit – The argument
begin_edit
indicates if the user want to leave the elements in the edit state, and requires a call toend_edit()
or equivalent. The defaultbegin_edit
is set toNone
. WithNone
, the behavior will be adjusted according the default of how the batch is created.**kwargs – Pass keyword arguments equivalent to the DSS properties of the object.
names – When using a list of names, each new object will match the names from this list.
begin_edit
defaults toTrue
if no arguments for properties were passed,False
otherwise.count – When using
count
, new objects will be created with based on a random prefix, with an increasing integer up tocount
.begin_edit
defaults toTrue
if no arguments for properties were passed,False
otherwise.df – Currently EXPERIMENTAL AND LIMITED, tries to get the columns from a dataframe to populate the names and the DSS properties.
begin_edit
defaults toFalse
.
- Returns:
Returns the new batch of DSS objects, wrapped in Python.
Note that, to make it easier for new users where the edit context might not be too relevant, AltDSS automatically opens/closes edit contexts for single properties if the object is not in the edit state already.
- begin_edit() None #
Marks for editing all DSS objects in the batch
In the editing mode, some final side-effects of changing properties are postponed until
end_edit
is called. This side-effects can be somewhat costly, like updating the model parameters or internal matrices.If you don’t have any performance constraint, you may edit each property individually without worrying about using
begin_edit
andend_edit
. For convenience, those are emitted automatically when editing single properties outside an edit block.
- edit(**kwargs: typing_extensions.Unpack[altdss.InvControl.InvControlBatchProperties]) altdss.InvControl.InvControlBatch #
Edit this InvControl batch.
This method will try to open a new edit context (if not already open), edit the properties, and finalize the edit context for objects in the batch. It can be seen as a shortcut to manually setting each property, or a Pythonic analogous (but extended) to the DSS
BatchEdit
command.- Parameters:
**kwargs – Pass keyword arguments equivalent to the DSS properties of the objects.
- Returns:
Returns itself to allow call chaining.
- end_edit(num_changes: int = 1) None #
Leaves the editing states of all DSS objects in the batch
num_changes
is required for a few classes to correctly match the official OpenDSS behavior and must be the number of properties modified in the current editing block. As of DSS C-API v0.13, this is only required for the Monitor class, when theAction
property is used with theProcess
value.
- find(name_or_idx: Union[AnyStr, int]) altdss.DSSObj.DSSObj #
Returns an object from the collection by name or index; the index must be zero-based.
- new(name: AnyStr, *, begin_edit: Optional[bool] = None, activate=False, **kwargs: typing_extensions.Unpack[altdss.InvControl.InvControlProperties]) altdss.InvControl.InvControl #
Creates a new InvControl.
- Parameters:
name – The object’s name is a required positional argument.
activate – Activation (setting
activate
to true) is useful for integration with the classic API, and some internal OpenDSS commands. If you interact with this object only via the Alt API, no need to activate it (due to performance costs).begin_edit – This controls how the edit context is left after the object creation:
True
: The object will be left in the edit state, requiring anend_edit
call or equivalent.False
: No edit context is started.None
: If no properties are passed as keyword arguments, the object will be left in the edit state (assumes the user will fill the properties from Python attributes). Otherwise, the internal edit context will be finalized.
- Parameters:
**kwargs – Pass keyword arguments equivalent to the DSS properties of the object.
- Returns:
Returns the new DSS object, wrapped in Python.
Note that, to make it easier for new users where the edit context might not be too relevant, AltDSS automatically opens/closes edit contexts for single properties if the object is not in the edit state already.
- to_json(options: Union[int, dss.enums.DSSJSONFlags] = 0)#
Returns the data (as a list) of the elements in a batch as a JSON-encoded string.
The
options
parameter contains bit-flags to toggle specific features. SeeObj_ToJSON
(C-API) for more, orDSSObj.to_json
in Python.Additionally, the
ExcludeDisabled
flag can be used to excluded disabled elements from the output.
- to_list()#
- class altdss.InvControl.InvControl(api_util, ptr)#
Bases:
altdss.DSSObj.DSSObj
,altdss.CircuitElement.CircuitElementMixin
- ActivePChangeTolerance: float#
‘property(…)’
Required for VOLTWATT. Default is 0.01
Tolerance in pu of the convergence of the control loop associated with active power. For the same control iteration, this value is compared to the difference between the active power limit in pu resulted from the convergence process and the one resulted from the volt-watt function.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
ActivePChangeTolerance
, DSS property index: 24.
- ArGraHiV: float#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage inductive reactive power production is increased as the percent delta-voltage decreases above DbVMax.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the mmoving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraHiV
, DSS property index: 12.
- ArGraLowV: float#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage capacitive reactive power production is increased as the percent delta-voltage decreases below DbVMin.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the moving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraLowV
, DSS property index: 11.
- AvgWindowLen: int#
‘property(…)’
Required for VOLTVAR mode and VOLTWATT mode, and defaults to 0 seconds (0s).
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated.
Units are indicated by appending s, m, or h to the integer value.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution.
Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
AvgWindowLen
, DSS property index: 7.
- BaseFreq: float#
‘property(…)’
Base Frequency for ratings.
DSS property name:
BaseFreq
, DSS property index: 35.
- Close(terminal: int, phase: int) None #
Close the specified terminal and phase, if non-zero, or all conductors at the terminal.
Original COM help: https://opendss.epri.com/Close1.html
- CombiMode: altdss.enums.InvControlCombiMode#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- CombiMode_str: str#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- ComplexSeqCurrents() altdss.types.ComplexArray #
Complex double array of Sequence Currents for all conductors of all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqCurrents.html
- ComplexSeqVoltages() altdss.types.ComplexArray #
Complex double array of Sequence Voltage for all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqVoltages1.html
- ControlModel: altdss.enums.InvControlControlModel#
‘property(…)’
Integer defining the method for moving across the control curve. It can be one of the following:
0 = Linear mode (default) 1 = Exponential
Use this property for better tunning your controller and improve the controller response in terms of control iterations needed to reach the target. This property alters the meaning of deltaQ_factor and deltaP_factor properties according to its value (Check help). The method can also be combined with the controller tolerance for improving performance.
DSS property name:
ControlModel
, DSS property index: 34.
- Currents() altdss.types.ComplexArray #
Complex array of currents into each conductor of each terminal
Original COM help: https://opendss.epri.com/Currents1.html
- DERList: List[str]#
‘property(…)’
Array list of PVSystem and/or Storage elements to be controlled. If not specified, all PVSystem and Storage in the circuit are assumed to be controlled by this control.
No capability of hierarchical control between two controls for a single element is implemented at this time.
DSS property name:
DERList
, DSS property index: 1.
- DbVMax: float#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1.05 per-unit voltage (referenced to the PVSystem object rated voltage or a windowed average value).
This parameter is the maximum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMax
, DSS property index: 10.
- DbVMin: float#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.95 per-unit voltage (referenced to the PVSystem/Storage object rated voltage or a windowed average value).
This parameter is the minimum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMin
, DSS property index: 9.
- DeltaP_Factor: float#
‘property(…)’
Required for the VOLTWATT modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_P itself. It tries to improve convergence as well as speed up process
Defining between 0.05 and 1.0, it sets the maximum change (in unit of the y-axis) from the prior active power output level to the desired active power output level during each control iteration.
If numerical instability is noticed in solutions such as active power changing substantially from one control iteration to the next and/or voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
If the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
DSS property name:
DeltaP_Factor
, DSS property index: 21.
- DeltaQ_Factor: float#
‘property(…)’
Required for the VOLTVAR and DYNAMICREACCURR modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_Q itself. It tries to improve convergence as well as speed up process
Sets the maximum change (in per unit) from the prior var output level to the desired var output level during each control iteration.
if numerical instability is noticed in solutions such as var sign changing from one control iteration to the next and voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
if the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
When operating the controller using exponential control model (see CtrlModel), this parameter represents the sampling time gain of the controller, which is used for accelrating the controller response in terms of control iterations required.
DSS property name:
DeltaQ_Factor
, DSS property index: 14.
- DisplayName: str#
‘property(…)’
Display name of the object (not necessarily unique)
Original COM help: https://opendss.epri.com/DisplayName.html
- DynReacAvgWindowLen: int#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1 seconds (1s). do not use a value smaller than 1.0
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated for the dynamic reactive current mode.
Units are indicated by appending s, m, or h to the integer value.
Typically this will be a shorter averaging window than the volt-var and volt-watt averaging window.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution. Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
DynReacAvgWindowLen
, DSS property index: 13.
- Enabled: bool#
‘property(…)’
{Yes|No or True|False} Indicates whether this element is enabled.
DSS property name:
Enabled
, DSS property index: 36.
- EventLog: bool#
‘property(…)’
{Yes/True | No/False*} Default is NO for InvControl. Log control actions to Eventlog.
DSS property name:
EventLog
, DSS property index: 22.
- FullName() str #
- GUID() str #
Object’s GUID/UUID. Currently used only in the CIM-related methods.
Original COM help: https://opendss.epri.com/GUID.html
- Handle() int #
Index of this element into the circuit’s element list.
Original COM help: https://opendss.epri.com/Handle.html
- HasOCPDevice() bool #
Returns true if a recloser, relay, or fuse controlling the circuit element.
OCP = Overcurrent Protection
Original COM help: https://opendss.epri.com/HasOCPDevice.html
- HasSwitchControl() bool #
Returns true if the element has a SwtControl attached.
Original COM help: https://opendss.epri.com/HasSwitchControl.html
- HasVoltControl() bool #
Returns true if the element has a CapControl or RegControl attached.
Original COM help: https://opendss.epri.com/HasVoltControl.html
- Hysteresis_Offset: float#
‘property(…)’
Required for VOLTVAR mode, and defaults to 0.
for the times when the terminal voltage is decreasing, this is the off-set in per-unit voltage of a curve whose shape is the same as vvc_curve. It is offset by a certain negative value of per-unit voltage, which is defined by the base quantity for the x-axis of the volt-var curve (see help for voltage_curvex_ref)
if the PVSystem/Storage terminal voltage has been increasing, and has not changed directions, utilize vvc_curve1 for the volt-var response.
if the PVSystem/Storage terminal voltage has been increasing and changes directions and begins to decrease, then move from utilizing vvc_curve1 to a volt-var curve of the same shape, but offset by a certain per-unit voltage value.
Maintain the same per-unit available var output level (unless head-room has changed due to change in active power or kva rating of PVSystem/Storage). Per-unit var values remain the same for this internally constructed second curve (hysteresis curve).
if the terminal voltage has been decreasing and changes directions and begins to increase , then move from utilizing the offset curve, back to the vvc_curve1 for volt-var response, but stay at the same per-unit available vars output level.
DSS property name:
Hysteresis_Offset
, DSS property index: 5.
- IsIsolated() bool #
Returns true if the element is isolated. Note that this only fetches the current value. See also the Topology interface.
- IsOpen(terminal: int, phase: int) bool #
Returns true if the specified terminal and phase are open.
If the
phase
parameter is zero, returns if any conductor at the terminal is open.
- LPFTau: float#
‘property(…)’
Not required. Defaults to 0 seconds.
Filter time constant of the LPF option of the RateofChangeMode property. The time constant will cause the low-pass filter to achieve 95% of the target value in 3 time constants.
DSS property name:
LPFTau
, DSS property index: 19.
- Like(value: AnyStr)#
Make like another object, e.g.:
New Capacitor.C2 like=c1 …
DSS property name:
Like
, DSS property index: 37.
- Losses() complex #
Total (complex) losses in the element, in VA (watts, vars)
Original COM help: https://opendss.epri.com/Losses1.html
- MaxCurrent(terminal: int) float #
Returns the maximum current (magnitude) at the specified terminal. Use -1 as terminal to get the value across all terminals.
- Mode: altdss.enums.InvControlControlMode#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- Mode_str: str#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- MonBus: List[str]#
‘property(…)’
Name of monitored bus used by the voltage-dependent control modes. Default is bus of the controlled PVSystem/Storage or Storage.
DSS property name:
MonBus
, DSS property index: 26.
- MonBusesVBase: altdss.types.Float64Array#
‘property(…)’
Array list of rated voltages of the buses and their nodes presented in the monBus property. This list may have different line-to-line and/or line-to-ground voltages.
DSS property name:
MonBusesVBase
, DSS property index: 27.
- MonVoltageCalc: altdss.enums.MonitoredPhase#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- MonVoltageCalc_str: str#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- property Name: str#
- NodeOrder() altdss.types.Int32Array #
Array of integer containing the node numbers (representing phases, for example) for each conductor of each terminal.
Be sure to run a solution to initialize the values after the circuit is created or modified.
- NodeRef() altdss.types.Int32Array #
Array of integers, a copy of the internal NodeRef of the CktElement.
Be sure to run a solution to initialize the values after the circuit is created or modified.
- NumConductors() int #
Number of conductors per terminal
Original COM help: https://opendss.epri.com/NumConductors.html
- NumControllers() int #
Number of controllers connected to this device.
Original COM help: https://opendss.epri.com/NumControls.html
- NumPhases() int #
Number of phases
Original COM help: https://opendss.epri.com/NumPhases.html
- NumTerminals() int #
Number of terminals in this circuit element
Original COM help: https://opendss.epri.com/NumTerminals.html
- OCPDevice() Union[altdss.DSSObj.DSSObj, None] #
Returns (as a Python object) the OCP device controlling this element, if any.
- OCPDeviceIndex() int #
Index into controller list of OCP Device controlling this circuit element
Original COM help: https://opendss.epri.com/OCPDevIndex.html
- OCPDeviceType() dss.enums.OCPDevType #
Type of OCP controller device
Original COM help: https://opendss.epri.com/OCPDevType.html
- Open(terminal: int, phase: int) None #
Open the specified terminal and phase, if non-zero, or all conductors at the terminal.
Original COM help: https://opendss.epri.com/Open1.html
- PhaseLosses() altdss.types.ComplexArray #
Complex array of losses (kVA) by phase
Original COM help: https://opendss.epri.com/PhaseLosses.html
- Powers() altdss.types.ComplexArray #
Complex array of powers (kVA) into each conductor of each terminal
Original COM help: https://opendss.epri.com/Powers.html
- RateOfChangeMode: altdss.enums.InvControlRateOfChangeMode#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RateOfChangeMode_str: str#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RefReactivePower: altdss.enums.InvControlReactivePowerReference#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- RefReactivePower_str: str#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- Residuals() altdss.types.Float64Array #
Residual currents for each terminal: (magnitude, angle in degrees)
Original COM help: https://opendss.epri.com/Residuals.html
- RiseFallLimit: float#
‘property(…)’
Not required. Defaults to no limit (-1). Must be -1 (no limit) or a positive value.
Limit in power in pu per second used by the RISEFALL option of the RateofChangeMode property.The base value for this ramp is defined in the RefReactivePower property and/or in VoltwattYAxis.
DSS property name:
RiseFallLimit
, DSS property index: 20.
- SeqCurrents() altdss.types.Float64Array #
Array of symmetrical component currents (magnitudes only) into each 3-phase terminal
Original COM help: https://opendss.epri.com/SeqCurrents.html
- SeqPowers() altdss.types.ComplexArray #
Complex array of sequence powers (kW, kvar) into each 3-phase terminal
Original COM help: https://opendss.epri.com/SeqPowers.html
- SeqVoltages() altdss.types.Float64Array #
Double array of symmetrical component voltages (magnitudes only) at each 3-phase terminal
Original COM help: https://opendss.epri.com/SeqVoltages1.html
- TotalPowers() altdss.types.ComplexArray #
Returns an array with the total powers (complex, kVA) at ALL terminals of the active circuit element.
Original COM help: https://opendss.epri.com/TotalPowers.html
- VSetPoint: float#
‘property(…)’
Required for Active Voltage Regulation (AVR).
DSS property name:
VSetPoint
, DSS property index: 33.
- VVC_Curve1: altdss.XYcurve.XYcurve#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VVC_Curve1_str: str#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VarChangeTolerance: float#
‘property(…)’
Required for VOLTVAR and DYNAMICREACCURR modes. Defaults to 0.025 per unit of the base provided or absorbed reactive power described in the RefReactivePower property This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the convergence of the control loop associated with reactive power. For the same control iteration, this value is compared to the difference, as an absolute value (without sign), between the desired reactive power value in pu and the output reactive power in pu of the controlled element.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VarChangeTolerance
, DSS property index: 16.
- VoltWattCH_Curve: altdss.XYcurve.XYcurve#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattCH_Curve_str: str#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattYAxis: altdss.enums.InvControlVoltWattYAxis#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWattYAxis_str: str#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWatt_Curve: altdss.XYcurve.XYcurve#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltWatt_Curve_str: str#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltageChangeTolerance: float#
‘property(…)’
Defaults to 0.0001 per-unit voltage. This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the control loop convergence associated to the monitored voltage in pu. This value is compared with the difference of the monitored voltage in pu of the current and previous control iterations of the control loop
This voltage tolerance value plus the var/watt tolerance value (VarChangeTolerance/ActivePChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VoltageChangeTolerance
, DSS property index: 15.
- Voltage_CurveX_Ref: altdss.enums.InvControlVoltageCurveXRef#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltage_CurveX_Ref_str: str#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltages() altdss.types.ComplexArray #
Complex array of voltages at terminals
Original COM help: https://opendss.epri.com/Voltages1.html
- VoltagesMagAng() altdss.types.Float64Array #
Voltages at each conductor in magnitude, angle form as array of doubles.
Original COM help: https://opendss.epri.com/VoltagesMagAng.html
- WattPF_Curve: altdss.XYcurve.XYcurve#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattPF_Curve_str: str#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattVar_Curve: altdss.XYcurve.XYcurve#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- WattVar_Curve_str: str#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- YPrim() altdss.types.ComplexArray #
YPrim matrix, column order, complex numbers
Original COM help: https://opendss.epri.com/Yprim.html
- __hash__()#
Return hash(self).
- __init__(api_util, ptr)#
- __ne__(other)#
Return self!=value.
- __repr__()#
Return repr(self).
- begin_edit() None #
Marks a DSS object for editing
In the editing mode, some final side-effects of changing properties are postponed until
end_edit
is called. This side-effects can be somewhat costly, like updating the model parameters or internal matrices.If you don’t have any performance constraint, you may edit each property individually without worrying about using
begin_edit
andend_edit
. For convenience, those are emitted automatically when editing single properties outside an edit block.
- edit(**kwargs: typing_extensions.Unpack[altdss.InvControl.InvControlProperties]) altdss.InvControl.InvControl #
Edit this InvControl.
This method will try to open a new edit context (if not already open), edit the properties, and finalize the edit context. It can be seen as a shortcut to manually setting each property, or a Pythonic analogous (but extended) to the DSS
Edit
command.- Parameters:
**kwargs – Pass keyword arguments equivalent to the DSS properties of the object.
- Returns:
Returns itself to allow call chaining.
- end_edit(num_changes: int = 1) None #
Leaves the editing state of a DSS object
num_changes
is required for a few classes to correctly match the official OpenDSS behavior and must be the number of properties modified in the current editing block. As of DSS C-API v0.13, this is only required for the Monitor class, when theAction
property is used with theProcess
value.
- to_json(options: Union[int, dss.enums.DSSJSONFlags] = 0)#
Returns an element’s data as a JSON-encoded string.
The
options
parameter contains bit-flags to toggle specific features.By default (
options = 0
), only the properties explicitly set. The properties are returned in the order they are set in the input. As a reminder, OpenDSS is sensitive to the order of the properties.The
options
bit-flags are available in theDSSJSONFlags
enum. Values used by this function are:Full
: if set, all properties are returned, ordered by property index instead.SkipRedundant
: if used withFull
, all properties except redundant and unused ones are returned.EnumAsInt
: enumerated properties are returned as integer values instead of strings.FullNames
: any element reference will use the full name ({class name}.{element name}
) even if not required.Pretty
: more whitespace is used in the output for a “prettier” format.SkipDSSClass
: do not add the “DSSClass” property to the JSON objects.
NOT IMPLEMENTED YET:
State
: include run-time state informationDebug
: include debug information
Other bit-flags are reserved for future uses. Please use
DSSJSONFlags
enum to avoid potential conflicts.(API Extension)
- class altdss.InvControl.InvControlBatch(api_util, **kwargs)#
Bases:
altdss.Batch.DSSBatch
,altdss.CircuitElement.CircuitElementBatchMixin
- ActivePChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTWATT. Default is 0.01
Tolerance in pu of the convergence of the control loop associated with active power. For the same control iteration, this value is compared to the difference between the active power limit in pu resulted from the convergence process and the one resulted from the volt-watt function.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
ActivePChangeTolerance
, DSS property index: 24.
- ArGraHiV: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage inductive reactive power production is increased as the percent delta-voltage decreases above DbVMax.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the mmoving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraHiV
, DSS property index: 12.
- ArGraLowV: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.1
This is a gradient, expressed in unit-less terms of %/%, to establish the ratio by which percentage capacitive reactive power production is increased as the percent delta-voltage decreases below DbVMin.
Percent delta-voltage is defined as the present PVSystem/Storage terminal voltage minus the moving average voltage, expressed as a percentage of the rated voltage for the PVSystem/Storage object.
Note, the moving average voltage for the dynamic reactive current mode is different than the moving average voltage for the volt-watt and volt-var modes.
DSS property name:
ArGraLowV
, DSS property index: 11.
- AvgWindowLen: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTVAR mode and VOLTWATT mode, and defaults to 0 seconds (0s).
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated.
Units are indicated by appending s, m, or h to the integer value.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution.
Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
AvgWindowLen
, DSS property index: 7.
- BaseFreq: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Base Frequency for ratings.
DSS property name:
BaseFreq
, DSS property index: 35.
- CombiMode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- CombiMode_str: List[str]#
‘property(…)’
Combination of smart inverter functions in which the InvControl will control the PC elements in DERList, according to the options below:
Must be a combination of the following: {VV_VW | VV_DRC}. Default is to not set this property, in which case the single control mode in Mode is active.
In combined VV_VW mode, both volt-var and volt-watt control modes are active simultaneously. See help individually for volt-var mode and volt-watt mode in Mode property. Note that the PVSystem/Storage will attempt to achieve both the volt-watt and volt-var set-points based on the capabilities of the inverter in the PVSystem/Storage (kVA rating, etc), any limits set on maximum active power,
In combined VV_DRC, both the volt-var and the dynamic reactive current modes are simultaneously active.
DSS property name:
CombiMode
, DSS property index: 3.
- ComplexSeqCurrents() altdss.types.ComplexArray #
Complex double array of Sequence Currents for all conductors of all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqCurrents.html
- ComplexSeqVoltages() altdss.types.ComplexArray #
Complex double array of Sequence Voltage for all terminals of active circuit element.
Original COM help: https://opendss.epri.com/CplxSeqVoltages1.html
- ControlModel: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Integer defining the method for moving across the control curve. It can be one of the following:
0 = Linear mode (default) 1 = Exponential
Use this property for better tunning your controller and improve the controller response in terms of control iterations needed to reach the target. This property alters the meaning of deltaQ_factor and deltaP_factor properties according to its value (Check help). The method can also be combined with the controller tolerance for improving performance.
DSS property name:
ControlModel
, DSS property index: 34.
- Currents() altdss.types.ComplexArray #
Complex array of currents into each conductor of each terminal
Original COM help: https://opendss.epri.com/Currents1.html
- CurrentsMagAng() altdss.types.Float64Array #
Currents in magnitude, angle (degrees) format as a array of doubles.
Original COM help: https://opendss.epri.com/CurrentsMagAng.html
- DERList: List[List[str]]#
‘property(…)’
Array list of PVSystem and/or Storage elements to be controlled. If not specified, all PVSystem and Storage in the circuit are assumed to be controlled by this control.
No capability of hierarchical control between two controls for a single element is implemented at this time.
DSS property name:
DERList
, DSS property index: 1.
- DbVMax: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1.05 per-unit voltage (referenced to the PVSystem object rated voltage or a windowed average value).
This parameter is the maximum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMax
, DSS property index: 10.
- DbVMin: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 0.95 per-unit voltage (referenced to the PVSystem/Storage object rated voltage or a windowed average value).
This parameter is the minimum voltage that defines the voltage dead-band within which no reactive power is allowed to be generated.
DSS property name:
DbVMin
, DSS property index: 9.
- DeltaP_Factor: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the VOLTWATT modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_P itself. It tries to improve convergence as well as speed up process
Defining between 0.05 and 1.0, it sets the maximum change (in unit of the y-axis) from the prior active power output level to the desired active power output level during each control iteration.
If numerical instability is noticed in solutions such as active power changing substantially from one control iteration to the next and/or voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
If the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
DSS property name:
DeltaP_Factor
, DSS property index: 21.
- DeltaQ_Factor: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for the VOLTVAR and DYNAMICREACCURR modes. Defaults to -1.0.
Defining -1.0, OpenDSS takes care internally of delta_Q itself. It tries to improve convergence as well as speed up process
Sets the maximum change (in per unit) from the prior var output level to the desired var output level during each control iteration.
if numerical instability is noticed in solutions such as var sign changing from one control iteration to the next and voltages oscillating between two values with some separation, this is an indication of numerical instability (use the EventLog to diagnose).
if the maximum control iterations are exceeded, and no numerical instability is seen in the EventLog of via monitors, then try increasing the value of this parameter to reduce the number of control iterations needed to achieve the control criteria, and move to the power flow solution.
When operating the controller using exponential control model (see CtrlModel), this parameter represents the sampling time gain of the controller, which is used for accelrating the controller response in terms of control iterations required.
DSS property name:
DeltaQ_Factor
, DSS property index: 14.
- DynReacAvgWindowLen: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for the dynamic reactive current mode (DYNAMICREACCURR), and defaults to 1 seconds (1s). do not use a value smaller than 1.0
Sets the length of the averaging window over which the average PVSystem/Storage terminal voltage is calculated for the dynamic reactive current mode.
Units are indicated by appending s, m, or h to the integer value.
Typically this will be a shorter averaging window than the volt-var and volt-watt averaging window.
The averaging window will calculate the average PVSystem/Storage terminal voltage over the specified period of time, up to and including the last power flow solution. Note, if the solution stepsize is larger than the window length, then the voltage will be assumed to have been constant over the time-frame specified by the window length.
DSS property name:
DynReacAvgWindowLen
, DSS property index: 13.
- Enabled: List[bool]#
‘property(…)’
{Yes|No or True|False} Indicates whether this element is enabled.
DSS property name:
Enabled
, DSS property index: 36.
- EventLog: List[bool]#
‘property(…)’
{Yes/True | No/False*} Default is NO for InvControl. Log control actions to Eventlog.
DSS property name:
EventLog
, DSS property index: 22.
- FullName() List[str] #
Returns the full name (including object type) for all objects in this batch
- GUID() List[str] #
GUID/UUID for each object. Currently used only in the CIM-related methods.
Original COM help: https://opendss.epri.com/GUID.html
- Handle() altdss.types.Int32Array #
Index of each element into the circuit’s element list.
Original COM help: https://opendss.epri.com/Handle.html
- HasOCPDevice() altdss.types.BoolArray #
For each element in the batch: returns true if a recloser, relay, or fuse controlling the circuit element.
OCP = Overcurrent Protection
Original COM help: https://opendss.epri.com/HasOCPDevice.html
- HasSwitchControl() altdss.types.BoolArray #
For each element in the batch: returns true if the element has a SwtControl attached.
Original COM help: https://opendss.epri.com/HasSwitchControl.html
- HasVoltControl() altdss.types.BoolArray #
For each element in the batch: returns true if the element has a CapControl or RegControl attached.
Original COM help: https://opendss.epri.com/HasVoltControl.html
- Hysteresis_Offset: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTVAR mode, and defaults to 0.
for the times when the terminal voltage is decreasing, this is the off-set in per-unit voltage of a curve whose shape is the same as vvc_curve. It is offset by a certain negative value of per-unit voltage, which is defined by the base quantity for the x-axis of the volt-var curve (see help for voltage_curvex_ref)
if the PVSystem/Storage terminal voltage has been increasing, and has not changed directions, utilize vvc_curve1 for the volt-var response.
if the PVSystem/Storage terminal voltage has been increasing and changes directions and begins to decrease, then move from utilizing vvc_curve1 to a volt-var curve of the same shape, but offset by a certain per-unit voltage value.
Maintain the same per-unit available var output level (unless head-room has changed due to change in active power or kva rating of PVSystem/Storage). Per-unit var values remain the same for this internally constructed second curve (hysteresis curve).
if the terminal voltage has been decreasing and changes directions and begins to increase , then move from utilizing the offset curve, back to the vvc_curve1 for volt-var response, but stay at the same per-unit available vars output level.
DSS property name:
Hysteresis_Offset
, DSS property index: 5.
- IsIsolated() altdss.types.BoolArray #
For each element in the batch: returns true if the element is isolated. Note that this only fetches the current value. See also the Topology interface.
- LPFTau: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Not required. Defaults to 0 seconds.
Filter time constant of the LPF option of the RateofChangeMode property. The time constant will cause the low-pass filter to achieve 95% of the target value in 3 time constants.
DSS property name:
LPFTau
, DSS property index: 19.
- Like(value: AnyStr, flags: altdss.enums.SetterFlags = 0)#
Make like another object, e.g.:
New Capacitor.C2 like=c1 …
DSS property name:
Like
, DSS property index: 37.
- Losses() altdss.types.ComplexArray #
For each element in the batch: total losses in the element, in VA (watts, vars).
Original COM help: https://opendss.epri.com/Losses1.html
- MaxCurrent(terminal: int) altdss.types.Float64Array #
Returns the maximum current (magnitude) at the specified terminal for each element in this batch. Use -1 as terminal to get the value across all terminals.
- Mode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- Mode_str: List[str]#
‘property(…)’
Smart inverter function in which the InvControl will control the PC elements specified in DERList, according to the options below:
Must be one of: {VOLTVAR | VOLTWATT | DYNAMICREACCURR | WATTPF | WATTVAR | GFM} if the user desires to use modes simultaneously, then set the CombiMode property. Setting the Mode to any valid value disables combination mode.
In volt-var mode. This mode attempts to CONTROL the vars, according to one or two volt-var curves, depending on the monitored voltages, present active power output, and the capabilities of the PVSystem/Storage.
In volt-watt mode. This mode attempts to LIMIT the watts, according to one defined volt-watt curve, depending on the monitored voltages and the capabilities of the PVSystem/Storage.
In dynamic reactive current mode. This mode attempts to increasingly counter deviations by CONTROLLING vars, depending on the monitored voltages, present active power output, and the capabilities of the of the PVSystem/Storage.
In watt-pf mode. This mode attempts to CONTROL the vars, according to a watt-pf curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In watt-var mode. This mode attempts to CONTROL the vars, according to a watt-var curve, depending on the present active power output, and the capabilities of the PVSystem/Storage.
In GFM mode this control will trigger the GFM control routine for the DERs within the DERList. The GFM actiosn will only take place if the pointed DERs are in GFM mode. The controller parameters are locally setup at the DER.
NO DEFAULT
DSS property name:
Mode
, DSS property index: 2.
- MonBus: List[List[str]]#
‘property(…)’
Name of monitored bus used by the voltage-dependent control modes. Default is bus of the controlled PVSystem/Storage or Storage.
DSS property name:
MonBus
, DSS property index: 26.
- MonBusesVBase: List[altdss.types.Float64Array]#
‘property(…)’
Array list of rated voltages of the buses and their nodes presented in the monBus property. This list may have different line-to-line and/or line-to-ground voltages.
DSS property name:
MonBusesVBase
, DSS property index: 27.
- MonVoltageCalc: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- MonVoltageCalc_str: List[str]#
‘property(…)’
Number of the phase being monitored or one of {AVG | MAX | MIN} for all phases. Default=AVG.
DSS property name:
MonVoltageCalc
, DSS property index: 25.
- property Name: List[str]#
- NumConductors() altdss.types.Int32Array #
Number of conductors per terminal for each element in the batch.
Original COM help: https://opendss.epri.com/NumConductors.html
- NumControllers() altdss.types.Int32Array #
Number of controllers connected to each device in the batch.
Original COM help: https://opendss.epri.com/NumControls.html
- NumPhases() altdss.types.Int32Array #
Number of Phases for each element in this batch.
Original COM help: https://opendss.epri.com/NumPhases.html
- NumTerminals() altdss.types.Int32Array #
Number of terminals for each Circuit Element in the batch.
Original COM help: https://opendss.epri.com/NumTerminals.html
- OCPDevice() List[Union[altdss.DSSObj.DSSObj, None]] #
Returns (as a list of Python objects) the OCP device controlling each element.
- OCPDeviceIndex() altdss.types.Int32Array #
For each element in the batch: index into each controller list of the OCP Device controlling each circuit element
Original COM help: https://opendss.epri.com/OCPDevIndex.html
- OCPDeviceType() List[dss.enums.OCPDevType] #
For each element in the batch: type of OCP controller device
Original COM help: https://opendss.epri.com/OCPDevType.html
- PhaseLosses() altdss.types.ComplexArray #
Complex array of losses (kVA) by phase
Original COM help: https://opendss.epri.com/PhaseLosses.html
- Powers() altdss.types.ComplexArray #
Complex array of powers (kVA) into each conductor of each terminal, of each element in the batch.
Original COM help: https://opendss.epri.com/Powers.html
- RateOfChangeMode: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RateOfChangeMode_str: List[str]#
‘property(…)’
Required for VOLTWATT and VOLTVAR mode. Must be one of: {INACTIVE* | LPF | RISEFALL }. The default is INACTIVE.
Auxiliary option that aims to limit the changes of the desired reactive power and the active power limit between time steps, the alternatives are listed below:
INACTIVE. It indicates there is no limit on rate of change imposed for either active or reactive power output.
LPF. A low-pass RC filter is applied to the desired reactive power and/or the active power limit to determine the output power as a function of a time constant defined in the LPFTau property.
RISEFALL. A rise and fall limit in the change of active and/or reactive power expressed in terms of pu power per second, defined in the RiseFallLimit, is applied to the desired reactive power and/or the active power limit.
DSS property name:
RateOfChangeMode
, DSS property index: 18.
- RefReactivePower: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- RefReactivePower_str: List[str]#
‘property(…)’
Required for any mode that has VOLTVAR, DYNAMICREACCURR and WATTVAR. Defaults to VARAVAL.
Defines the base reactive power for both the provided and absorbed reactive power, according to one of the following options:
VARAVAL. The base values for the provided and absorbed reactive power are equal to the available reactive power.
VARMAX: The base values of the provided and absorbed reactive power are equal to the value defined in the kvarMax and kvarMaxAbs properties, respectively.
DSS property name:
RefReactivePower
, DSS property index: 23.
- RiseFallLimit: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Not required. Defaults to no limit (-1). Must be -1 (no limit) or a positive value.
Limit in power in pu per second used by the RISEFALL option of the RateofChangeMode property.The base value for this ramp is defined in the RefReactivePower property and/or in VoltwattYAxis.
DSS property name:
RiseFallLimit
, DSS property index: 20.
- SeqCurrents() altdss.types.Float64Array #
Array of symmetrical component currents (magnitudes only) into each 3-phase terminal of each element
Original COM help: https://opendss.epri.com/SeqCurrents.html
- SeqPowers() altdss.types.ComplexArray #
Complex array of sequence powers (kW, kvar) into each 3-phase terminal of each element
Original COM help: https://opendss.epri.com/SeqPowers.html
- SeqVoltages() altdss.types.Float64Array #
Double array of symmetrical component voltages (magnitudes only) at each 3-phase terminal
Original COM help: https://opendss.epri.com/SeqVoltages1.html
- TotalPowers() altdss.types.ComplexArray #
Returns an array with the total powers (complex, kVA) at all terminals of the circuit elements in this batch.
The resulting array is equivalent to concatenating the TotalPowers for each element.
- VSetPoint: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for Active Voltage Regulation (AVR).
DSS property name:
VSetPoint
, DSS property index: 33.
- VVC_Curve1: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VVC_Curve1_str: List[str]#
‘property(…)’
Required for VOLTVAR mode.
Name of the XYCurve object containing the volt-var curve. The positive values of the y-axis of the volt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
DSS property name:
VVC_Curve1
, DSS property index: 4.
- VarChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Required for VOLTVAR and DYNAMICREACCURR modes. Defaults to 0.025 per unit of the base provided or absorbed reactive power described in the RefReactivePower property This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the convergence of the control loop associated with reactive power. For the same control iteration, this value is compared to the difference, as an absolute value (without sign), between the desired reactive power value in pu and the output reactive power in pu of the controlled element.
This reactive power tolerance value plus the voltage tolerance value (VoltageChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VarChangeTolerance
, DSS property index: 16.
- VoltWattCH_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattCH_Curve_str: List[str]#
‘property(…)’
Required for VOLTWATT mode for Storage element in CHARGING state.
The name of an XYCurve object that describes the variation in active power output (in per unit of maximum active power output for the Storage).
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in: (1) per unit of maximum active power output capability of the Storage, or (2) maximum available active power output capability (defined by the parameter: VoltwattYAxis), corresponding to the terminal voltage (x-axis value in per unit).
No default – must be specified for VOLTWATT mode for Storage element in CHARGING state.
DSS property name:
VoltWattCH_Curve
, DSS property index: 28.
- VoltWattYAxis: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWattYAxis_str: List[str]#
‘property(…)’
Required for VOLTWATT mode. Must be one of: {PMPPPU* | PAVAILABLEPU| PCTPMPPPU | KVARATINGPU}. The default is PMPPPU.
Units for the y-axis of the volt-watt curve while in volt-watt mode.
When set to PMPPPU. The y-axis corresponds to the value in pu of Pmpp property of the PVSystem.
When set to PAVAILABLEPU. The y-axis corresponds to the value in pu of the available active power of the PVSystem.
When set to PCTPMPPPU. The y-axis corresponds to the value in pu of the power Pmpp multiplied by 1/100 of the %Pmpp property of the PVSystem.
When set to KVARATINGPU. The y-axis corresponds to the value in pu of the kVA property of the PVSystem.
DSS property name:
VoltWattYAxis
, DSS property index: 17.
- VoltWatt_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltWatt_Curve_str: List[str]#
‘property(…)’
Required for VOLTWATT mode.
Name of the XYCurve object containing the volt-watt curve.
Units for the x-axis are per-unit voltage, which may be in per unit of the rated voltage for the PVSystem/Storage, or may be in per unit of the average voltage at the terminals over a user-defined number of prior solutions.
Units for the y-axis are either in one of the options described in the VoltwattYAxis property.
DSS property name:
VoltWatt_Curve
, DSS property index: 8.
- VoltageChangeTolerance: altdss.ArrayProxy.BatchFloat64ArrayProxy#
‘property(…)’
Defaults to 0.0001 per-unit voltage. This parameter should only be modified by advanced users of the InvControl.
Tolerance in pu of the control loop convergence associated to the monitored voltage in pu. This value is compared with the difference of the monitored voltage in pu of the current and previous control iterations of the control loop
This voltage tolerance value plus the var/watt tolerance value (VarChangeTolerance/ActivePChangeTolerance) determine, together, when to stop control iterations by the InvControl.
If an InvControl is controlling more than one PVSystem/Storage, each PVSystem/Storage has this quantity calculated independently, and so an individual PVSystem/Storage may reach the tolerance within different numbers of control iterations.
DSS property name:
VoltageChangeTolerance
, DSS property index: 15.
- Voltage_CurveX_Ref: altdss.ArrayProxy.BatchInt32ArrayProxy#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltage_CurveX_Ref_str: List[str]#
‘property(…)’
Required for VOLTVAR and VOLTWATT modes, and defaults to rated. Possible values are: {rated|avg|ravg}.
Defines whether the x-axis values (voltage in per unit) for vvc_curve1 and the volt-watt curve corresponds to:
rated. The rated voltage for the PVSystem/Storage object (1.0 in the volt-var curve equals rated voltage).
avg. The average terminal voltage recorded over a certain number of prior power-flow solutions. with the avg setting, 1.0 per unit on the x-axis of the volt-var curve(s) corresponds to the average voltage. from a certain number of prior intervals. See avgwindowlen parameter.
ravg. Same as avg, with the exception that the avgerage terminal voltage is divided by the rated voltage.
DSS property name:
Voltage_CurveX_Ref
, DSS property index: 6.
- Voltages() altdss.types.ComplexArray #
Complex array of voltages at terminals
Original COM help: https://opendss.epri.com/Voltages1.html
- VoltagesMagAng() altdss.types.Float64Array #
Voltages at each conductor in magnitude, angle form as array of doubles.
Original COM help: https://opendss.epri.com/VoltagesMagAng.html
- WattPF_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattPF_Curve_str: List[str]#
‘property(…)’
Required for WATTPF mode.
Name of the XYCurve object containing the watt-pf curve. The positive values of the y-axis are positive power factor values. The negative values of the the y-axis are negative power factor values. When positive, the output reactive power has the same direction of the output active power, and when negative, it has the opposite direction. Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
The y-axis represents the power factor and the reference is power factor equal to 0.
For example, if the user wants to define the following XY coordinates: (0, 0.9); (0.2, 0.9); (0.5, -0.9); (1, -0.9). Try to plot them considering the y-axis reference equal to unity power factor.
The user needs to translate this curve into a plot in which the y-axis reference is equal to 0 power factor.It means that two new XY coordinates need to be included, in this case they are: (0.35, 1); (0.35, -1). Try to plot them considering the y-axis reference equal to 0 power factor. The discontinuity in 0.35pu is not a problem since var is zero for either power factor equal to 1 or -1.
DSS property name:
WattPF_Curve
, DSS property index: 29.
- WattVar_Curve: List[altdss.XYcurve.XYcurve]#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- WattVar_Curve_str: List[str]#
‘property(…)’
Required for WATTVAR mode.
Name of the XYCurve object containing the watt-var curve. The positive values of the y-axis of the watt-var curve represent values in pu of the provided base reactive power. The negative values of the y-axis are values in pu of the absorbed base reactive power. Provided and absorbed base reactive power values are defined in the RefReactivePower property.
Units for the x-axis are per-unit output active power, and the base active power is the Pmpp for PVSystem and kWrated for Storage.
DSS property name:
WattVar_Curve
, DSS property index: 30.
- __call__()#
- __getitem__(idx0) altdss.DSSObj.DSSObj #
Get element at 0-based index of the batch pointer array
- __init__(api_util, **kwargs)#
- __iter__()#
- __len__() int #
- batch(**kwargs) altdss.Batch.DSSBatch #
Filter a batch using integer or float DSS properties, returning a new batch.
For integers, provide a single value to match.
For floats, provide a range as a 2-valued tuple/list (min value, max value), or an exact value to value (not recommended).
Multiple properties can be listed to allow filtering various conditions.
Example for loads:
# Create an initial batch using a regular expression abc_loads = altdss.Load.batch(re=r'^abc.*$') # a batch of all loads with names starting with "abc" abc_loads_filtered = abc_loads.batch(Class=1, Phases=1, kV=(0.1, 1.0)) # Create an initial batch, already filtered abc_loads_filtered = altdss.Load.batch(re=r'^abc.*$', Class=1, Phases=1, kV=(0.1, 1.0))
- begin_edit() None #
Marks for editing all DSS objects in the batch
In the editing mode, some final side-effects of changing properties are postponed until
end_edit
is called. This side-effects can be somewhat costly, like updating the model parameters or internal matrices.If you don’t have any performance constraint, you may edit each property individually without worrying about using
begin_edit
andend_edit
. For convenience, those are emitted automatically when editing single properties outside an edit block.
- edit(**kwargs: typing_extensions.Unpack[altdss.InvControl.InvControlBatchProperties]) altdss.InvControl.InvControlBatch #
Edit this InvControl batch.
This method will try to open a new edit context (if not already open), edit the properties, and finalize the edit context for objects in the batch. It can be seen as a shortcut to manually setting each property, or a Pythonic analogous (but extended) to the DSS
BatchEdit
command.- Parameters:
**kwargs – Pass keyword arguments equivalent to the DSS properties of the objects.
- Returns:
Returns itself to allow call chaining.
- end_edit(num_changes: int = 1) None #
Leaves the editing states of all DSS objects in the batch
num_changes
is required for a few classes to correctly match the official OpenDSS behavior and must be the number of properties modified in the current editing block. As of DSS C-API v0.13, this is only required for the Monitor class, when theAction
property is used with theProcess
value.
- to_json(options: Union[int, dss.enums.DSSJSONFlags] = 0)#
Returns the data (as a list) of the elements in a batch as a JSON-encoded string.
The
options
parameter contains bit-flags to toggle specific features. SeeObj_ToJSON
(C-API) for more, orDSSObj.to_json
in Python.Additionally, the
ExcludeDisabled
flag can be used to excluded disabled elements from the output.
- to_list()#
- class altdss.InvControl.InvControlBatchProperties#
Bases:
typing_extensions.TypedDict
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
- ActivePChangeTolerance: Union[float, altdss.types.Float64Array]#
None
- ArGraHiV: Union[float, altdss.types.Float64Array]#
None
- ArGraLowV: Union[float, altdss.types.Float64Array]#
None
- AvgWindowLen: Union[int, altdss.types.Int32Array]#
None
- BaseFreq: Union[float, altdss.types.Float64Array]#
None
- CombiMode: Union[AnyStr, int, altdss.enums.InvControlCombiMode, List[AnyStr], List[int], List[altdss.enums.InvControlCombiMode], altdss.types.Int32Array]#
None
- ControlModel: Union[int, altdss.enums.InvControlControlModel, altdss.types.Int32Array]#
None
- DERList: List[AnyStr]#
None
- DbVMax: Union[float, altdss.types.Float64Array]#
None
- DbVMin: Union[float, altdss.types.Float64Array]#
None
- DeltaP_Factor: Union[float, altdss.types.Float64Array]#
None
- DeltaQ_Factor: Union[float, altdss.types.Float64Array]#
None
- DynReacAvgWindowLen: Union[int, altdss.types.Int32Array]#
None
- Enabled: bool#
None
- EventLog: bool#
None
- Hysteresis_Offset: Union[float, altdss.types.Float64Array]#
None
- LPFTau: Union[float, altdss.types.Float64Array]#
None
- Like: AnyStr#
None
- Mode: Union[AnyStr, int, altdss.enums.InvControlControlMode, List[AnyStr], List[int], List[altdss.enums.InvControlControlMode], altdss.types.Int32Array]#
None
- MonBus: List[AnyStr]#
None
- MonBusesVBase: altdss.types.Float64Array#
None
- MonVoltageCalc: Union[AnyStr, int, altdss.enums.MonitoredPhase, List[AnyStr], List[int], List[altdss.enums.MonitoredPhase], altdss.types.Int32Array]#
None
- RateOfChangeMode: Union[AnyStr, int, altdss.enums.InvControlRateOfChangeMode, List[AnyStr], List[int], List[altdss.enums.InvControlRateOfChangeMode], altdss.types.Int32Array]#
None
- RefReactivePower: Union[AnyStr, int, altdss.enums.InvControlReactivePowerReference, List[AnyStr], List[int], List[altdss.enums.InvControlReactivePowerReference], altdss.types.Int32Array]#
None
- RiseFallLimit: Union[float, altdss.types.Float64Array]#
None
- VSetPoint: Union[float, altdss.types.Float64Array]#
None
- VVC_Curve1: Union[AnyStr, altdss.XYcurve.XYcurve, List[AnyStr], List[altdss.XYcurve.XYcurve]]#
None
- VarChangeTolerance: Union[float, altdss.types.Float64Array]#
None
- VoltWattCH_Curve: Union[AnyStr, altdss.XYcurve.XYcurve, List[AnyStr], List[altdss.XYcurve.XYcurve]]#
None
- VoltWattYAxis: Union[AnyStr, int, altdss.enums.InvControlVoltWattYAxis, List[AnyStr], List[int], List[altdss.enums.InvControlVoltWattYAxis], altdss.types.Int32Array]#
None
- VoltWatt_Curve: Union[AnyStr, altdss.XYcurve.XYcurve, List[AnyStr], List[altdss.XYcurve.XYcurve]]#
None
- VoltageChangeTolerance: Union[float, altdss.types.Float64Array]#
None
- Voltage_CurveX_Ref: Union[AnyStr, int, altdss.enums.InvControlVoltageCurveXRef, List[AnyStr], List[int], List[altdss.enums.InvControlVoltageCurveXRef], altdss.types.Int32Array]#
None
- WattPF_Curve: Union[AnyStr, altdss.XYcurve.XYcurve, List[AnyStr], List[altdss.XYcurve.XYcurve]]#
None
- WattVar_Curve: Union[AnyStr, altdss.XYcurve.XYcurve, List[AnyStr], List[altdss.XYcurve.XYcurve]]#
None
- __contains__()#
True if the dictionary has the specified key, else False.
- __delattr__()#
Implement delattr(self, name).
- __delitem__()#
Delete self[key].
- __dir__()#
Default dir() implementation.
- __format__()#
Default object formatter.
Return str(self) if format_spec is empty. Raise TypeError otherwise.
- __ge__()#
Return self>=value.
- __getattribute__()#
Return getattr(self, name).
- __getitem__()#
Return self[key].
- __getstate__()#
Helper for pickle.
- __gt__()#
Return self>value.
- __init__()#
Initialize self. See help(type(self)) for accurate signature.
- __ior__()#
Return self|=value.
- __iter__()#
Implement iter(self).
- __le__()#
Return self<=value.
- __len__()#
Return len(self).
- __lt__()#
Return self<value.
- __ne__()#
Return self!=value.
- __new__()#
Create and return a new object. See help(type) for accurate signature.
- __or__()#
Return self|value.
- __reduce__()#
Helper for pickle.
- __reduce_ex__()#
Helper for pickle.
- __repr__()#
Return repr(self).
- __reversed__()#
Return a reverse iterator over the dict keys.
- __ror__()#
Return value|self.
- __setitem__()#
Set self[key] to value.
- __sizeof__()#
D.sizeof() -> size of D in memory, in bytes
- __str__()#
Return str(self).
- __subclasshook__()#
Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.subclasscheck(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).
- clear()#
D.clear() -> None. Remove all items from D.
- copy()#
D.copy() -> a shallow copy of D
- get()#
Return the value for key if key is in the dictionary, else default.
- items()#
D.items() -> a set-like object providing a view on D’s items
- keys()#
D.keys() -> a set-like object providing a view on D’s keys
- pop()#
D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
If the key is not found, return the default if given; otherwise, raise a KeyError.
- popitem()#
Remove and return a (key, value) pair as a 2-tuple.
Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.
- setdefault()#
Insert key with a value of default if key is not in the dictionary.
Return the value for key if key is in the dictionary, else default.
- update()#
D.update([E, ]**F) -> None. Update D from dict/iterable E and F. If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
- values()#
D.values() -> an object providing a view on D’s values
- class altdss.InvControl.InvControlProperties#
Bases:
typing_extensions.TypedDict
dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object’s (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list. For example: dict(one=1, two=2)
- ActivePChangeTolerance: float#
None
- ArGraHiV: float#
None
- ArGraLowV: float#
None
- AvgWindowLen: int#
None
- BaseFreq: float#
None
- CombiMode: Union[AnyStr, int, altdss.enums.InvControlCombiMode]#
None
- ControlModel: Union[int, altdss.enums.InvControlControlModel]#
None
- DERList: List[AnyStr]#
None
- DbVMax: float#
None
- DbVMin: float#
None
- DeltaP_Factor: float#
None
- DeltaQ_Factor: float#
None
- DynReacAvgWindowLen: int#
None
- Enabled: bool#
None
- EventLog: bool#
None
- Hysteresis_Offset: float#
None
- LPFTau: float#
None
- Like: AnyStr#
None
- Mode: Union[AnyStr, int, altdss.enums.InvControlControlMode]#
None
- MonBus: List[AnyStr]#
None
- MonBusesVBase: altdss.types.Float64Array#
None
- MonVoltageCalc: Union[AnyStr, int, altdss.enums.MonitoredPhase]#
None
- RateOfChangeMode: Union[AnyStr, int, altdss.enums.InvControlRateOfChangeMode]#
None
- RefReactivePower: Union[AnyStr, int, altdss.enums.InvControlReactivePowerReference]#
None
- RiseFallLimit: float#
None
- VSetPoint: float#
None
- VVC_Curve1: Union[AnyStr, altdss.XYcurve.XYcurve]#
None
- VarChangeTolerance: float#
None
- VoltWattCH_Curve: Union[AnyStr, altdss.XYcurve.XYcurve]#
None
- VoltWattYAxis: Union[AnyStr, int, altdss.enums.InvControlVoltWattYAxis]#
None
- VoltWatt_Curve: Union[AnyStr, altdss.XYcurve.XYcurve]#
None
- VoltageChangeTolerance: float#
None
- Voltage_CurveX_Ref: Union[AnyStr, int, altdss.enums.InvControlVoltageCurveXRef]#
None
- WattPF_Curve: Union[AnyStr, altdss.XYcurve.XYcurve]#
None
- WattVar_Curve: Union[AnyStr, altdss.XYcurve.XYcurve]#
None
- __contains__()#
True if the dictionary has the specified key, else False.
- __delattr__()#
Implement delattr(self, name).
- __delitem__()#
Delete self[key].
- __dir__()#
Default dir() implementation.
- __format__()#
Default object formatter.
Return str(self) if format_spec is empty. Raise TypeError otherwise.
- __ge__()#
Return self>=value.
- __getattribute__()#
Return getattr(self, name).
- __getitem__()#
Return self[key].
- __getstate__()#
Helper for pickle.
- __gt__()#
Return self>value.
- __init__()#
Initialize self. See help(type(self)) for accurate signature.
- __ior__()#
Return self|=value.
- __iter__()#
Implement iter(self).
- __le__()#
Return self<=value.
- __len__()#
Return len(self).
- __lt__()#
Return self<value.
- __ne__()#
Return self!=value.
- __new__()#
Create and return a new object. See help(type) for accurate signature.
- __or__()#
Return self|value.
- __reduce__()#
Helper for pickle.
- __reduce_ex__()#
Helper for pickle.
- __repr__()#
Return repr(self).
- __reversed__()#
Return a reverse iterator over the dict keys.
- __ror__()#
Return value|self.
- __setitem__()#
Set self[key] to value.
- __sizeof__()#
D.sizeof() -> size of D in memory, in bytes
- __str__()#
Return str(self).
- __subclasshook__()#
Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.subclasscheck(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).
- clear()#
D.clear() -> None. Remove all items from D.
- copy()#
D.copy() -> a shallow copy of D
- get()#
Return the value for key if key is in the dictionary, else default.
- items()#
D.items() -> a set-like object providing a view on D’s items
- keys()#
D.keys() -> a set-like object providing a view on D’s keys
- pop()#
D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
If the key is not found, return the default if given; otherwise, raise a KeyError.
- popitem()#
Remove and return a (key, value) pair as a 2-tuple.
Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.
- setdefault()#
Insert key with a value of default if key is not in the dictionary.
Return the value for key if key is in the dictionary, else default.
- update()#
D.update([E, ]**F) -> None. Update D from dict/iterable E and F. If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
- values()#
D.values() -> an object providing a view on D’s values