Skip to content

Commit 962973c

Browse files
committed
bound values in export to avoid trying to export +- infinity
Signed-off-by: Philippe Edwards <philippe.edwards@rte-france.com>
1 parent 47f3300 commit 962973c

2 files changed

Lines changed: 3 additions & 2 deletions

File tree

commons/src/main/java/com/powsybl/openrao/commons/MeasurementRounding.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ public static BigDecimal roundValueBasedOnMargin(double value, double margin, in
5454
// for a number x in [0, 1[, the position of the first decimal which is not a 0 is given by ⌈-log10(x)⌉
5555
relevantDecimals = Math.max(defaultDecimals, (int) Math.ceil(-Math.log10(Math.abs(margin))));
5656
}
57-
return BigDecimal.valueOf(value).setScale(relevantDecimals, RoundingMode.HALF_UP);
57+
double boundedValue = Math.min(Double.MAX_VALUE, Math.max(-Double.MAX_VALUE, value));
58+
return BigDecimal.valueOf(boundedValue).setScale(relevantDecimals, RoundingMode.HALF_UP);
5859
}
5960
}

ra-optimisation/search-tree-rao/src/main/java/com/powsybl/openrao/searchtreerao/result/api/FlowResult.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ default double getRelativeMargin(FlowCnec flowCnec, Unit unit) {
8989
}
9090

9191
default double getRelativeMargin(FlowCnec flowCnec, TwoSides side, Unit unit) {
92-
if (Double.isNaN(getPtdfZonalSum(flowCnec, side)) || getPtdfZonalSum(flowCnec, side) == 0) {
92+
if (Double.isNaN(getPtdfZonalSum(flowCnec, side))) {
9393
return Double.NaN;
9494
}
9595
return getMargin(flowCnec, side, unit) <= 0 ? getMargin(flowCnec, side, unit)

0 commit comments

Comments
 (0)