PowerModelsDistribution Enum Types
Within the PowerModelsDistribution Engineering Model we have included the use of Enums. Here we document the fields for which Enums are expected and the possible Enums available
Data Model
Any place in PowerModelsDistribution that calls for specifying the data_model
, either in function calls or the "data_model"
field inside the data structure itself, will expect a DataModel
type
@enum DataModel ENGINEERING MATHEMATICAL DSS
The DSS
data model is an output of parse_dss
, and is an untranslated raw parse of a DSS file. This Enum exists for use by count_nodes
, where the method to count the number of active nodes is different between all three models
Component statuses
All "status"
fields in the ENGINEERING
model expect a Status
type:
@enum Status ENABLED DISABLED
Connection Configurations
All "configuration"
fields in the ENGINEERING
model expect a ConnConfig
type:
@enum ConnConfig WYE DELTA
Load Models
For load
objects, the "model"
field expects a LoadModel
type to specify the type of load model to use:
@enum LoadModel POWER CURRENT IMPEDANCE EXPONENTIAL ZIP
where POWER
indicates constant power, CURRENT
indicates constant current, IMPEDANCE
indicates constant impedance, EXPONENTIAL
indicates an exponential load model, and ZIP
indicates a ZIP model
Shunt Models
For shunt
objects, the "model"
field expects a ShuntModel
type to specify the origin of the shunt object, which is important for transient analysis:
@enum ShuntModel GENERIC CAPACITOR REACTOR
Switch States
For switch
objects, the "state"
field expects a SwitchState
type to specify whether the switch is currently open or closed:
@enum SwitchState OPEN CLOSED
Dispatchable Components
Some components can be dispatchable, e.g. if a switch is dispatchable that means it is free to open or close, but if not then it is fixed in place, or if a load is dispatchable it implies that it can be shed in a run_mc_mld
problem:
@enum Dispatchable NO YES
Generator Control Modes
For generator objects, the "control_mode"
field expects a ControlMode
type to specify whether the generator is operating in an isochronous mode (i.e. is frequency forming) or droop mode (i.e. is frequency following):
@enum ControlMode FREQUENCYDROOP ISOCHRONOUS