-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CGMES: adjust multiple unpaired dangling lines connected at same boundary node #2737
Merged
annetill
merged 10 commits into
main
from
cgmes_adjust_multiple_unpaired_dangling_lines_at_same_boundary_node
Oct 5, 2023
Merged
Changes from 7 commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
fe24266
Adjust multiple unpaired dangling lines connected at same boundary node
zamarrenolm 9343041
Merge branch 'main' into cgmes_adjust_multiple_unpaired_dangling_line…
zamarrenolm a8ef825
Select for adjustment only connected dangling lines
zamarrenolm bba7463
Add log during merging.
annetill 7f5bbca
Merge branch 'cgmes_adjust_multiple_unpaired_dangling_lines_at_same_b…
annetill d1ddb3a
Select for adjustment only connected dangling lines
zamarrenolm a0c9c16
Merge branch 'main' into cgmes_adjust_multiple_unpaired_dangling_line…
zamarrenolm 0b5a68a
Revert "Add log during merging."
annetill 78bb90f
Merge branch 'cgmes_adjust_multiple_unpaired_dangling_lines_at_same_b…
annetill 8a038bc
Merge branch 'main' into cgmes_adjust_multiple_unpaired_dangling_line…
annetill File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
36 changes: 36 additions & 0 deletions
36
...onformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity3ModifiedCatalog.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/** | ||
* Copyright (c) 2023, RTE (http://www.rte-france.com) | ||
* This Source Code Form is subject to the terms of the Mozilla Public | ||
* License, v. 2.0. If a copy of the MPL was not distributed with this | ||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. | ||
* SPDX-License-Identifier: MPL-2.0 | ||
*/ | ||
package com.powsybl.cgmes.conformity; | ||
|
||
import com.powsybl.cgmes.model.GridModelReference; | ||
import com.powsybl.cgmes.model.GridModelReferenceResources; | ||
import com.powsybl.commons.datasource.ResourceSet; | ||
|
||
/** | ||
* @author Luma Zamarreño <zamarrenolm at aia.es> | ||
*/ | ||
public final class CgmesConformity3ModifiedCatalog { | ||
|
||
private CgmesConformity3ModifiedCatalog() { | ||
} | ||
|
||
public static GridModelReference microGridBE3DanglingLinesSameBoundary1Disconnected() { | ||
String base = ENTSOE_CONFORMITY_3_MODIFIED | ||
+ "/MicroGrid/BE-3dls-same-boundary-node-1disconnected/"; | ||
return new GridModelReferenceResources( | ||
"MicroGrid-BE-3dls-same-boundary-node-1disconnected", | ||
null, | ||
new ResourceSet(base, | ||
"20210325T1530Z_1D_BE_EQ_001_3dls_1disconnected.xml", | ||
"20210325T1530Z_1D_BE_SSH_001_3dls_1disconnected.xml" | ||
), | ||
CgmesConformity3Catalog.microGridBaseCaseBoundaries()); | ||
} | ||
|
||
private static final String ENTSOE_CONFORMITY_3_MODIFIED = "/conformity-modified/cas-3-data-3.0.2"; | ||
} |
1,808 changes: 1,808 additions & 0 deletions
1,808
...-3dls-same-boundary-node-1disconnected/20210325T1530Z_1D_BE_EQ_001_3dls_1disconnected.xml
Large diffs are not rendered by default.
Oops, something went wrong.
442 changes: 442 additions & 0 deletions
442
...3dls-same-boundary-node-1disconnected/20210325T1530Z_1D_BE_SSH_001_3dls_1disconnected.xml
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After a talk with my colleague, it seems that it is not the good solution because the merge will not work. Imagine we have 3 DLs with the same pairing key (1 disconnected and 2 connected). On the other side, we have 2 DLs with the same pairing key (both connected). If they are disconnected, they are excluded from the merging. If they are connected, we do nothing without any error message. I think we have to:
P0
andQ0
on one DL that keep the good pairing key ;I am lost :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But the merge scenario you discuss has nothing to do with this change.
This change just improves on how do you see the ONLY equivalent injection that exists in one IGM, when you have MULTIPLE (all connected) dangling lines.
I would discuss separately the function required for perform a merge when multiple dangling lines from each side exist at a single boundary point.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the cleanest solution for the scenario you describe is that the user creates a modified boundary file, with a new connectivity/topological node. The user MUST then specify which lines go to each boundary node, in a way that always leaves only one line of each IGM at each boundary node.
If we do not want to modify the boundary file and the IGM to use the new (not "official" boundary point), then we can arbitrarily try to merge any pair of candidates or let the user configure it in some way. But this seems quite "dirty" for me: what happens if we have two connected lines in one side and only one in the other? How do we let the user specify the "correct" pairs to be merged? a parameter?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Going a little bit further about merging multiple dangling lines in the same node:
We can try to pair the dangling lines from each side that have "closer values" of (p0, q0) (similar equivalent injection).
Following this idea, If there are 2 lines on one side and only one in the other: a tie line will be created, and a dangling line will be left on one side.
What do you think of this alternative ?
In any case, I think these considerations should go in a separate PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are going to open a new PR to increase merge logging, in order to warn the user that he has to do something!