-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
Some fields are "dynamic" in that PowerWorld creates them on the fly - in particular I am thinking of the various LinePTDFMult:1 fields generated by a multi direction PTDF calculation.
Currently, since these are not returned by the GetFieldList SimAuto call, they are flagged by ESA with the following error:
ValueError: The given object has fields which do not match a PowerWorld internal field name!
When it attempts to clean the returned DataFrame - note that the raw return by SimAuto is correct in this instance. However, the LinePTDFMult field is returned (and handled properly by ESA), so I feel as though ESA should use this data to inform the type coercion of the associated LinePTDFMult:{n} fields, so the user does not have to disable the pw_order attribute altogether.
For example:
from esa import SAW
case = SAW('case.pwb')
case.RunScriptCommand('DirectionsAutoInsertReference(Bus, "SLACK", YES);')
case.RunScriptCommand('CalculatePTDFMultipleDirections(YES, NO, AC);')
# Works fine, returns a valid DataFrame
case.GetParametersMultipleElement(Branch, ['LinePTDFMult'])
# Available within the case (and returned by SimAuto), but will throw a ValueError
case.GetParametersMultipleElement(Branch, ['LinePTDFMult:1'])Thoughts on how these should be handled? Thanks!
Metadata
Metadata
Assignees
Labels
No labels