public static int getBusType(Bus bus) { Objects.requireNonNull(bus, "bus is null"); int type = BusData.BUS_TYPE_PQ; // a connection bus is PQ if (bus.getGenerators() != null) { for (Generator generator : bus.getGenerators()) { if (generator.isVoltageRegulatorOn()) { type = BusData.BUS_TYPE_PV; // a bus with attached a generator with voltage regulator on is PV break; } } } // if ( bus.getLoads() != null && bus.getLoads().iterator().hasNext() && type == 3 ) // type = MCSBusData.BUS_TYPE_PV; // a bus with attached both loads and generators is anyway a PV return type; }
List<Double> generatorsReactivePower = new ArrayList<>(); bus.getGenerators().forEach((generator) -> { generators.add(generator.getId()); generatorsActivePower.add(generator.getTerminal().getP()); bus.getV(), bus.getAngle(), bus.getGenerators().iterator().hasNext(), generators, activeInjection,
protected void updateSlackBusData(Bus bus, Integer busIndex, SlackBusData slackBusData) { if (bus.getGenerators() == null) { return; } //...slackbus has at least one generator connected for (Generator generator : bus.getGenerators()) { //...which has a generator with voltage regulator on if (!generator.isVoltageRegulatorOn()) { continue; } //...assure the generator is the one connected to the bus (and not on the aggregated buses) if (!generator.getTerminal().getBusBreakerView().getBus().getId().equals(bus.getId())) { return; } //...candidate slackbus if (slackBusData.getSlackBusIndex() == -1) { slackBusData.setSlackBusIndex(busIndex); slackBusData.setSlackBusGenerator(generator); return; } //...choice the generator with the largest TargetP if (generator.getTargetP() > slackBusData.getSlackBusGenerator().getTargetP()) { slackBusData.setSlackBusIndex(busIndex); slackBusData.setSlackBusGenerator(generator); } } }
private static void updateSlackBusData(Bus bus, Integer busIndex, SlackBusData slackBusData) { if (bus.getGenerators() == null) { return; } //...slackbus has at least one generator connected for (Generator generator : bus.getGenerators()) { //...which has a generator with voltage regulator on if (!generator.isVoltageRegulatorOn()) { continue; } //...assure the generator is the one connected to the bus (and not on the aggregated buses) if (!generator.getTerminal().getBusBreakerView().getBus().getId().equals(bus.getId())) { return; } //...candidate slackbus if (slackBusData.getSlackBusIndex() == -1) { slackBusData.setSlackBusIndex(busIndex); slackBusData.setSlackBusGenerator(generator); return; } //...choice the generator with the largest TargetP if (generator.getTargetP() > slackBusData.getSlackBusGenerator().getTargetP()) { slackBusData.setSlackBusIndex(busIndex); slackBusData.setSlackBusGenerator(generator); } } }
Iterator<Generator> itrG = b.getGenerators().iterator(); while (itrG.hasNext()) { Generator gen = itrG.next();