@Override public void deleteVariantArrayElement(int index) { super.deleteVariantArrayElement(index); if (ratioTapChanger != null) { ratioTapChanger.deleteVariantArrayElement(index); } if (phaseTapChanger != null) { phaseTapChanger.deleteVariantArrayElement(index); } }
@Override public RatioTapChangerImpl setRegulationTerminal(Terminal regulationTerminal) { ValidationUtil.checkRatioTapChangerRegulation(parent, loadTapChangingCapabilities, isRegulating(), regulationTerminal, getTargetV(), getNetwork()); return super.setRegulationTerminal(regulationTerminal); }
@Override public RatioTapChangerImpl setRegulating(boolean regulating) { ValidationUtil.checkRatioTapChangerRegulation(parent, loadTapChangingCapabilities, regulating, regulationTerminal, getTargetV(), getNetwork()); return super.setRegulating(regulating); }
@Override public RatioTapChangerImpl setTargetV(double targetV) { ValidationUtil.checkRatioTapChangerRegulation(parent, loadTapChangingCapabilities, isRegulating(), regulationTerminal, targetV, getNetwork()); this.targetV.set(network.get().getVariantIndex(), targetV); return this; }
@Override public void reduceVariantArraySize(int number) { super.reduceVariantArraySize(number); if (ratioTapChanger != null) { ratioTapChanger.reduceVariantArraySize(number); } if (phaseTapChanger != null) { phaseTapChanger.reduceVariantArraySize(number); } }
@Override public void allocateVariantArrayElement(int[] indexes, int sourceIndex) { super.allocateVariantArrayElement(indexes, sourceIndex); if (ratioTapChanger != null) { ratioTapChanger.allocateVariantArrayElement(indexes, sourceIndex); } if (phaseTapChanger != null) { phaseTapChanger.allocateVariantArrayElement(indexes, sourceIndex); } }
@Override public void extendVariantArraySize(int initVariantArraySize, int number, int sourceIndex) { super.extendVariantArraySize(initVariantArraySize, number, sourceIndex); if (ratioTapChanger != null) { ratioTapChanger.extendVariantArraySize(initVariantArraySize, number, sourceIndex); } if (phaseTapChanger != null) { phaseTapChanger.extendVariantArraySize(initVariantArraySize, number, sourceIndex); } }
@Override public RatioTapChanger add() { if (tapPosition == null) { throw new ValidationException(parent, "tap position is not set"); } if (steps.isEmpty()) { throw new ValidationException(parent, "ratio tap changer should have at least one step"); } int highTapPosition = lowTapPosition + steps.size() - 1; if (tapPosition < lowTapPosition || tapPosition > highTapPosition) { throw new ValidationException(parent, "incorrect tap position " + tapPosition + " [" + lowTapPosition + ", " + highTapPosition + "]"); } ValidationUtil.checkRatioTapChangerRegulation(parent, loadTapChangingCapabilities, regulating, regulationTerminal, targetV, getNetwork()); RatioTapChangerImpl tapChanger = new RatioTapChangerImpl(parent, lowTapPosition, steps, regulationTerminal, loadTapChangingCapabilities, tapPosition, regulating, targetV); parent.setRatioTapChanger(tapChanger); return tapChanger; }
@Override public void reduceVariantArraySize(int number) { super.reduceVariantArraySize(number); if (leg2.getRatioTapChanger() != null) { leg2.getRatioTapChanger().reduceVariantArraySize(number); } if (leg3.getRatioTapChanger() != null) { leg3.getRatioTapChanger().reduceVariantArraySize(number); } }
@Override public void allocateVariantArrayElement(int[] indexes, int sourceIndex) { super.allocateVariantArrayElement(indexes, sourceIndex); if (leg2.getRatioTapChanger() != null) { leg2.getRatioTapChanger().allocateVariantArrayElement(indexes, sourceIndex); } if (leg3.getRatioTapChanger() != null) { leg3.getRatioTapChanger().allocateVariantArrayElement(indexes, sourceIndex); } }
@Override public void extendVariantArraySize(int initVariantArraySize, int number, int sourceIndex) { super.extendVariantArraySize(initVariantArraySize, number, sourceIndex); if (leg2.getRatioTapChanger() != null) { leg2.getRatioTapChanger().extendVariantArraySize(initVariantArraySize, number, sourceIndex); } if (leg3.getRatioTapChanger() != null) { leg3.getRatioTapChanger().extendVariantArraySize(initVariantArraySize, number, sourceIndex); } }
@Override public void deleteVariantArrayElement(int index) { super.deleteVariantArrayElement(index); if (leg2.getRatioTapChanger() != null) { leg2.getRatioTapChanger().deleteVariantArrayElement(index); } if (leg3.getRatioTapChanger() != null) { leg3.getRatioTapChanger().deleteVariantArrayElement(index); } }