Fix broadcasting bug for rolling horizon with linearised UC case #1464
+114
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Makes optimization case raised in #1454 possible
Changes proposed here
A small fix for an xarray broadcasting error in the rolling-horizon & linearised unit commitment case.
When running
optimize_with_rolling_horizon(linearized_unit_commitment=True, horizon=...)with both committable and non-committable generators, the ramp-limit constraints for committable units tried to combine two arrays with mismatchednamedimensions:rhswas built only over committable generators, and the initialstatus_startused for the previous rolling window still carried all generators (committable + non-committable).The fix is straightforward: align
status_startto the committable index before using it in the RHS for the ramp-up constraint.Also add unit tests for this; these combination of optimization settings was not covered.
Checklist
docs.docs/release-notes.mdof the upcoming release is included.