Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

There isn't a simple way as far as I know with the PSSE API. But here is how I do that currently:

  1. create a set of all in service buses
  2. call island to switch islanded buses out of service
  3. create a set of all in service buses

The difference between step 3 and step 1 is the islanded buses.

ierr, (buses,) = psspy.abusint(
                       -1,                # all buses in the case
                       flag=1,            # in service buses
                       string=["NUMBER"]) 
original = set(buses)

psspy.island()

ierr, (buses,) = psspy.abusint(-1, flag=1, string=["NUMBER"])
afterisland = set(buses)

print original - afterisland

you could put all of that into a function called islanded_buses. Unfortunately this is a destructive action, in that it actually changes the state of your base case. Those islanded buses are no longer in service - which may not have been what you wanted.