public class ObservableIslandList extends GroupListI<ObservableIslandList.ObservableIsland>
List of observable islands based on a USDOE paper, "Contribution to Power State Estimation and Transient Stability Analysis" , Feb 1984.
Measurement Telemetered status is not yet available directly in OpenPA or the PSIM CSV formats. As such, we look for non-zero measurements on devices connected to known-energized buses.
This class provides a list of observable islands built using
ObsIslandBldrDOE (inner static class for now). This class has been
tested only against a 24-bus model with fabricated data. Test procedures are
under development for larger models
There is a 2nd "build", @{link ObsIslandBldrNew} algorith based on the DOE algorithm, with some potential optimizations in place. This is a work in progress, and does not currently work.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ObservableIslandList.Debug
Provide in interface to trace debug information in different implementations
|
class |
ObservableIslandList.ObservableIsland
Single Observable Island.
|
| Constructor and Description |
|---|
ObservableIslandList(PAModel model)
Create a new observable island list
|
ObservableIslandList(PAModel model,
ObservableIslandList.Debug debug)
Create a new observable island list with debugging enabled
|
| Modifier and Type | Method and Description |
|---|---|
ObservableIslandList.ObservableIsland |
get(int index) |
java.util.Set<ColumnMeta> |
getColTypes() |
<R> R |
getColumnData(ColumnMeta col) |
java.lang.String[] |
getID()
return array of string object ID's
|
java.lang.String |
getID(int ndx)
get unique object ID
|
ListMetaType |
getListMeta() |
java.lang.String[] |
getName()
name of object
|
java.lang.String |
getName(int ndx)
name of object
|
boolean |
hasVoltage(int ndx)
Try to find a bus with voltage telemetry
TODO: Since OpenPA doesn't yet have explicity telemetry status, we assume
that if a bus has nonzero voltage but we know that the topological island
is energized, then we have good telemetry
|
static void |
main(java.lang.String... args) |
getBuses, getByBus, getGenerators, getLines, getLoads, getPhaseShifters, getSeriesCapacitors, getSeriesReactors, getShuntCapacitors, getShuntReactors, getSVCs, getSwitches, getTransformers, getTwoTermDCLines, translateBusIndexesgetByID, getByKey, getIndex, getIndexesFromKeys, getKey, getKeys, reset, setID, setID, setName, setNameadd, add, addAll, clear, equals, hashCode, indexOf, iterator, lastIndexOf, listIterator, listIterator, remove, set, subListaddAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toStringCalcListHash, getByID, getByKey, getIndex, getIndexes, getIndexesFromIDs, getIndexesFromKeys, getKey, getKeys, objEquals, objHash, reset, setID, setID, setName, setName, toArraypublic ObservableIslandList(PAModel model) throws PAModelException
model - PAModelExceptionpublic ObservableIslandList(PAModel model, ObservableIslandList.Debug debug) throws PAModelException
model - PAModelExceptionpublic ListMetaType getListMeta()
public java.util.Set<ColumnMeta> getColTypes()
public ObservableIslandList.ObservableIsland get(int index)
get in interface java.util.List<ObservableIslandList.ObservableIsland>get in class java.util.AbstractList<ObservableIslandList.ObservableIsland>public boolean hasVoltage(int ndx)
throws PAModelException
ndx - PAModelExceptionpublic java.lang.String getID(int ndx)
com.powerdata.openpa.impl.AbstractPAListgetID in interface BaseList<ObservableIslandList.ObservableIsland>getID in class com.powerdata.openpa.impl.AbstractPAList<ObservableIslandList.ObservableIsland>public java.lang.String[] getID()
throws PAModelException
com.powerdata.openpa.impl.AbstractPAListgetID in interface BaseList<ObservableIslandList.ObservableIsland>getID in class com.powerdata.openpa.impl.AbstractPAList<ObservableIslandList.ObservableIsland>PAModelExceptionpublic java.lang.String getName(int ndx)
throws PAModelException
com.powerdata.openpa.impl.AbstractPAListgetName in interface BaseList<ObservableIslandList.ObservableIsland>getName in class com.powerdata.openpa.impl.AbstractPAList<ObservableIslandList.ObservableIsland>PAModelExceptionpublic java.lang.String[] getName()
throws PAModelException
com.powerdata.openpa.impl.AbstractPAListgetName in interface BaseList<ObservableIslandList.ObservableIsland>getName in class com.powerdata.openpa.impl.AbstractPAList<ObservableIslandList.ObservableIsland>PAModelExceptionpublic static void main(java.lang.String... args)
throws java.lang.Exception
java.lang.Exceptionpublic <R> R getColumnData(ColumnMeta col)