Package com.powsybl.security.detectors
Class DefaultLimitViolationDetector
java.lang.Object
com.powsybl.security.detectors.AbstractContingencyBlindDetector
com.powsybl.security.detectors.DefaultLimitViolationDetector
- All Implemented Interfaces:
LimitViolationDetector
Implements the default behaviour for limit violation detection.
- Author:
- Sylvain Leclerc <sylvain.leclerc at rte-france.com>
-
Constructor Summary
ConstructorDescriptionDefaultLimitViolationDetector
(double limitReductionValue, Collection<LoadingLimitType> currentLimitTypes) DefaultLimitViolationDetector
(Collection<LoadingLimitType> currentLimitTypes) -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkActivePower
(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified active power value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not.void
checkActivePower
(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified active power value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not.void
checkApparentPower
(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified apparent power value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not.void
checkApparentPower
(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified apparent power value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not.void
checkCurrent
(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified current value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not.void
checkCurrent
(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Checks whether the specified current value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not.void
checkLimitViolation
(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer, LimitType type) void
checkLimitViolation
(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer, LimitType type) void
checkVoltage
(Bus bus, double value, Consumer<LimitViolation> consumer) Checks whether the specified voltage value on the specifiedBus
should be considered as aLimitViolation
or not.void
checkVoltageAngle
(VoltageAngleLimit voltageAngleLimit, double value, Consumer<LimitViolation> consumer) Checks whether the specified voltage value on the specifiedBus
should be considered as aLimitViolation
or not.Methods inherited from class com.powsybl.security.detectors.AbstractContingencyBlindDetector
checkAll, checkAllDc, checkCurrent, checkCurrent, checkCurrent, checkCurrent, checkCurrentDc, checkCurrentDc, checkCurrentDc, checkCurrentDc, checkVoltage, checkVoltage, checkVoltageAngle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.powsybl.security.LimitViolationDetector
checkAll, checkCurrent, checkCurrent, checkCurrent, checkCurrent, checkCurrent, checkCurrent, checkPermanentLimit, checkPermanentLimit, checkTemporary, checkTemporary, checkVoltage, checkVoltage, checkVoltage, checkVoltageAngle, checkVoltageAngle, toLimitViolationType
-
Constructor Details
-
DefaultLimitViolationDetector
public DefaultLimitViolationDetector(double limitReductionValue, Collection<LoadingLimitType> currentLimitTypes) -
DefaultLimitViolationDetector
-
DefaultLimitViolationDetector
public DefaultLimitViolationDetector()
-
-
Method Details
-
checkCurrent
public void checkCurrent(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified current value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
branch
- The branch on which the current must be checked.side
- The side of the branch on which the current must be checked.value
- The current value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkCurrent
public void checkCurrent(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified current value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
transformer
- The three windings transformer on which the current must be checked.side
- The side of the transformer on which the current must be checked.value
- The current value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkActivePower
public void checkActivePower(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified active power value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
branch
- The branch on which the current must be checked.side
- The side of the branch on which the current must be checked.value
- The active power value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkActivePower
public void checkActivePower(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified active power value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
transformer
- The three windings transformer on which the current must be checked.side
- The side of the three windings transformer on which the current must be checked.value
- The active power value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkApparentPower
public void checkApparentPower(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified apparent power value on the specified side of the specifiedBranch
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
branch
- The branch on which the current must be checked.side
- The side of the branch on which the current must be checked.value
- The apparent power value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkApparentPower
public void checkApparentPower(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified apparent power value on the specified side of the specifiedThreeWindingsTransformer
should be considered as aLimitViolation
or not. In case it should, feeds the consumer with it.- Parameters:
transformer
- The three windings transformer on which the current must be checked.side
- The side of the three windings transformer on which the current must be checked.value
- The apparent power value to be checked, in A.consumer
- Will be fed with possibly created limit violations.
-
checkVoltage
Description copied from interface:LimitViolationDetector
Checks whether the specified voltage value on the specifiedBus
should be considered as aLimitViolation
or not. In case it should, returns the corresponding limit violation.- Parameters:
bus
- The bus on which the voltage must be checked.value
- The voltage value to be checked, in V.consumer
- Will be fed with possibly created limit violations.
-
checkVoltageAngle
public void checkVoltageAngle(VoltageAngleLimit voltageAngleLimit, double value, Consumer<LimitViolation> consumer) Description copied from interface:LimitViolationDetector
Checks whether the specified voltage value on the specifiedBus
should be considered as aLimitViolation
or not. In case it should, returns the corresponding limit violation.- Parameters:
voltageAngleLimit
- The voltageAngleLimit defining TerminalRefs on which the angle difference must be checked.value
- The voltage angle difference to be checked, in degrees.consumer
- Will be fed with possibly created limit violations.
-
checkLimitViolation
public void checkLimitViolation(Branch branch, TwoSides side, double value, Consumer<LimitViolation> consumer, LimitType type) -
checkLimitViolation
public void checkLimitViolation(ThreeWindingsTransformer transformer, ThreeSides side, double value, Consumer<LimitViolation> consumer, LimitType type)
-