v1.15.0
Labels correspond the associated described change.*
indicates that some methods were deprecated;
indicates a breaking change which could impact all users;
indicates a change in the simulation results that may affect existing tests in your application;
indicates a new parameter, a new parameter default or a new parameter usage;
📜 Release notes
Documentation
- Enable download of documentation in pdf format (#1149) enables to download the doc in PDF format (from the button at the lower right corner of the documentation page https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/ ). Diagrams and pictures are not yet included in the PDF documentation.
- Add documentation to list the currently implemented security analysis (#1166) documents the remedial actions supported by OpenLoadFlow security analysis (https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/security/inputs.html)
- Fix doc for newtonRaphsonStoppingCriteriaType=UNIFORM_CRITERIA (#1175)
- Advanced programming guide added by #1155 . The advanced programming guide is available at https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/advanced_programming/index.html
Usability
- Clearer error message when initial LF fails in AC Sensi (#1170)
- Improve log and report when max outerloop iterations reached (#1179)
- Reports improved for multi-thread security analysis (#1168). They now appear in the same way whether computation is single threaded or multi-threaded. In addition reports contain information about operator strategy actions that could not be applied to a particular contingency.
- The generators configured to control voltage that reached their reactive diagram limits or local voltage limits during loadflow computation are now reported (#1182). This can help identify causes for large number of outerloop iterations or understand why some groups are not maintaining voltage in the solution.
Security Analysis
- For Security Analysis it is possible to override some loadflow parameters for specific contingencies via a Contingency extension (#1139 and #1156). For more information see 'Contingency Load Flow Parameters' in the Open Load Flow security analysis documentation documentation https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/security/parameters.html
- The violation location is now reported with node information in Node Breaker topology, even when a contingency changes the merged buses ( #1180)
- The AreaInterchangeTargetAction is now supported (#1172 and #1186)
- In Fast DC security analysis, HVDC emulation is disabled (#1173). The active power set point is used instead for HVDC lines configured with AC emulation. Previously, fast DC could give incorrect results if the model contained HVDC lines configured with AC emulation.
Sensitivity Analysis
- Support more voltage sensitivities cases (#1181). For a list of sensitivity supported on OpenLoadFlow see https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/sensitivity/getting_started.html
- Support ThreeWindingsTransformer in DC sensibility analysis (#1190)
Robustness and accuracy
- Fix injections ignored on first slack bus when using multiple slacks (#1160) Completes the fix on multi-slack made in V14.0.
. May impact the result of models using multiple slack buses that were subject to this bug. With this fix loadflow runs are expected to provide the same result -after slack distribution- whether they are run with one or several slack nodes. (but before slack distribution the loss depends on the slack location).
- Fix secondary voltage control in case of generator remote voltage control (#1165). Secondary Voltage Control is an optional outerloop, not activated by default, that provides a fast, static, approximation of the equilibrium state of the generator reactive power alignment process that controls the voltage of a remote pilot point.
- Operator strategies are now supported when Security Analysis is performed in multi-thread mode (#1177)
A new parameter forceTargetQInReactiveLimits can be used to force generator targetQ to be within the generator's reactive limits (#1154). By default the parameter is set to false and, as in previous versions, if targetQ is outside the reactive limits diagram, targetQ is used for a group that is not controlling voltage.
- Slack distribution participation factors: use maxP instead of maxTargetP (#1178 (comment)) (#1178)
. May change test results for models that have an ActivePowerControl with a maxTargetP value that overrides a generator's maxP.
- Unrealistic voltage check is now performed for all AC solvers #1188 . Previously the check was only performed for the NewtonRaphson AC Solver.
The minRealisticVoltage and maxRealisticVoltage parameters now have an effect for any AC Solver (NewtonRaphson, NewtonKrylov or custom solver)
The new parameter disableInconsistentVoltageControl can be set so that Open Load Flow disables inconsistent generator voltage controls #1185 . By default, Open Load Flow will continue to keep the voltage control of an inconsistent bus, with one arbitrary configuration from the conflicting set on the bus.
- Reduce unrealistic voltage created by remote voltage control by #1135 via a new parameter, voltageRemoteControlRobustMode set to True by default.
. For more information, see the parameter documentation at https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/loadflow/parameters.html .
Models that previously failed with unrealistic voltage may now succeed since voltageRemoteControlRobustMode is true by default.
- Balance type PROPORTIONAL_TO_REMAINING_MARGIN checks active mismatch sign for participation factors [#1189]. Previously the margin vs pMax was always taken into account even when the slack mismatch was negative.
may change the results of test using the PROPORTIONAL_TO_REMAINING_MARGIN balance type.
Advanced API
An ordered list of outerloops, which advanced users could specify in AC, can now also be specified in DC (#1159) via the outerLoopNames parameter. For more information see the documentation of the outerLoopNames parameter at https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/loadflow/parameters.html .
- Security Analysis: custom redistribution of injections lost by the contingency can be specified by a plugin (#1155). See the new Advanced Programming Guide for more details https://powsybl.readthedocs.io/projects/powsybl-open-loadflow/en/latest/advanced_programming/index.html
- A library can provide a LoadFlowDefaultParametersLoader that defines default loadflow values including default OpenLoadFLow parameters.(#1176).
Performance
- Fix performance issue when accessing loading limits from IIDM (#1162) makes the access to load limits more efficient and accelerates slightly the AC, DC and fast DC security analysis.
- Load active power target caching (#1163) accelerates slightly fast DC security analysis.
This PR changes the order of some double operations at may create small differences in the last bits (for example 0.06773290000000001 can become 0.0677329 or 0.21530687999999998 can become 0.21530688). Tests that compare double without an appropriate epsilon may see differences.