From 5b5175828d33ebe800b67c22d60c0567d05f44d9 Mon Sep 17 00:00:00 2001 From: VEDELAGO MIORA Date: Fri, 5 May 2023 16:05:05 +0200 Subject: [PATCH 01/15] Improve CGMES documentation regarding transformers and boundaries Signed-off-by: VEDELAGO MIORA --- pages/documentation/grid/formats/cim-cgmes.md | 69 +++++++++++++++---- 1 file changed, 55 insertions(+), 14 deletions(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index d9108f5f..ebdb9b48 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -186,12 +186,12 @@ If the `ACLineSegment` is outside the boundary area, it will be mapped to a PowS If the `ACLineSegment` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another `ACLineSegment` is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If it is the only one `ACLineSegment` linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other `ACLineSegment` linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other `ACLineSegment` linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other `ACLineSegment` linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two `ACLineSegments` with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `ACLineSegment` is mapped to a PowSyBl [`Line`](../model/index.md#line): @@ -228,12 +228,12 @@ If the `EquivalentBranch` is outside the boundary area, it will be mapped to a P If the `EquivalentBranch` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another `EquivalentBranch` is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If it is the only one `EquivalentBranch` linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other `EquivalentBranch` linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other `EquivalentBranch` linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other `EquivalentBranches` linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two `EquivalentBranches` with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `EquivalentBranch` is mapped to a PowSyBl [`Line`](../model/index.md#line): @@ -345,7 +345,40 @@ Sections are created from the lowest CGMES `sectionNumber` to the highest and ea TODO #### PowerTransformer -TODO + +CGMES `PowerTransformers` represent electrical device consisting of two or more coupled windings, each represented by a `PowerTransformerEnd`. PowSyBl only supports `PowerTransformers` with two or three windings. + +##### PowerTransformer with two PowerTransformerEnds + +If a CGMES `PowerTransformer` with two `PowerTransformerEnds` has them both outside the boundary area, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). +Please note that in this case, if `PowerTransformerEnds` are in different substations, the substations are merged into one. + +If a CGMES `PowerTransformer` with two `PowerTransformerEnds` has them both completely inside the boundary area, if the boundary area is not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). + +If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + +In every case, a `PowerTransformer` with two `PowerTransformerEnds` is mapped to an intermediary model that correspond to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). +For more information about this conversion, please look at the classes [`InterpretedT2xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/InterpretedT2xModel.java) +and [`ConvertedT2xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/ConvertedT2xModel.java). + +If the `PowerTransformer` is finally mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its structural attributes (`R`, `X`, `G` and `B`) are calculated from the intermediary model's attributes, and the ratio from its ratio tap changer and/or its phase tap changer. +`P0` and `Q0` are set from CGMES `P` and `Q` values at boundary side; `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. + +If the `PowerTransformer` is finally mapped to a PowSyBl [`HalfLine`](../model/index.md#half-line), its attributes are calculated using a standard $$\pi$$ model with distributed parameters. + +##### PowerTransformer with three PowerTransformerEnds + +A CGMES `PowerTransformer` with three `PowerTransformerEnds` is mapped to a PowSyBl [`ThreeWindingsTransformer`](../model/index.md#three-windings-transformer). +Please note that in this case, if `PowerTransformerEnds` are in different substations, the substations are merged into one. + +For more information about this conversion, please look at the classes [`InterpretedT3xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/InterpretedT3xModel.java) +and [`ConvertedT3xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/ConvertedT3xModel.java). #### SeriesCompensator @@ -388,7 +421,15 @@ If the CGMES `Switch` has its ends both inside the same voltage level, it is map If the CGMES `Switch` has its ends in different voltage levels inside the same IGM, it is mapped to a [`Switch`](../model/index.md#breakerswitch) but the voltage levels, and potentially the substations, that contain its ends are merged: they are mapped to only one voltage level and/or substation. The created PowSyBl `Switch` has its attributes defined as described above. -If the CGMES `Switch` has one of its end in the boundary area, it is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line) with attributes as described below: +If the `Switch` has one side inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If it is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking equipment linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking equipment with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + +If the CGMES `Switch` is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: - `R`, `X`, `G`, `B` are `0.0`. - `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. - `P0` is copied from CGMES `P` of the terminal at boundary side From 7ba1e78cc6a5f9904fcc39b1c4e137f9570896a4 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:43:55 +0200 Subject: [PATCH 02/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index ebdb9b48..e1db2fde 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -350,7 +350,7 @@ CGMES `PowerTransformers` represent electrical device consisting of two or more ##### PowerTransformer with two PowerTransformerEnds -If a CGMES `PowerTransformer` with two `PowerTransformerEnds` has them both outside the boundary area, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). +If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both outside the boundary area, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). Please note that in this case, if `PowerTransformerEnds` are in different substations, the substations are merged into one. If a CGMES `PowerTransformer` with two `PowerTransformerEnds` has them both completely inside the boundary area, if the boundary area is not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). From 0ee6e21e366c19aabf6a85464c9b6df8899de16a Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:44:05 +0200 Subject: [PATCH 03/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index e1db2fde..071c8810 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -353,7 +353,7 @@ CGMES `PowerTransformers` represent electrical device consisting of two or more If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both outside the boundary area, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). Please note that in this case, if `PowerTransformerEnds` are in different substations, the substations are merged into one. -If a CGMES `PowerTransformer` with two `PowerTransformerEnds` has them both completely inside the boundary area, if the boundary area is not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). +If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both completely inside the boundary area, and if the boundary area is not imported, the `PowerTransformer` is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. - If there is no other linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). From b33d5c5f8ed5bd817ce99e2b2a096b1ace1df32b Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:46:00 +0200 Subject: [PATCH 04/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 071c8810..1d78e4f6 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -430,7 +430,7 @@ If the `Switch` has one side inside the boundary area and the other outside the - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the CGMES `Switch` is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: -- `R`, `X`, `G`, `B` are `0.0`. +- `R`, `X`, `G`, `B` are `0.0`; - `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. - `P0` is copied from CGMES `P` of the terminal at boundary side - `Q0` is copied from CGMES `Q` of the terminal at boundary side From 18fbcb08b1ff0b955f115fb549f5b2cc01b08650 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:46:13 +0200 Subject: [PATCH 05/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 1d78e4f6..09aeb099 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -431,7 +431,7 @@ If the `Switch` has one side inside the boundary area and the other outside the If the CGMES `Switch` is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: - `R`, `X`, `G`, `B` are `0.0`; -- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. +- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries; - `P0` is copied from CGMES `P` of the terminal at boundary side - `Q0` is copied from CGMES `Q` of the terminal at boundary side From 6b80018cb8c80f0cd1b25f94961d9a5511699f38 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:46:24 +0200 Subject: [PATCH 06/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Coline Piloquet <55250145+colinepiloquet@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 09aeb099..dd040f60 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -358,7 +358,7 @@ If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both completely in If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. - If there is no other linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). - If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). - If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). From 054b91ecb5424ce05631c2b202d13ef33889d7b4 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:46:44 +0200 Subject: [PATCH 07/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index dd040f60..2983bac7 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -432,7 +432,7 @@ If the `Switch` has one side inside the boundary area and the other outside the If the CGMES `Switch` is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: - `R`, `X`, `G`, `B` are `0.0`; - `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries; -- `P0` is copied from CGMES `P` of the terminal at boundary side +- `P0` is copied from CGMES `P` of the terminal at boundary side; - `Q0` is copied from CGMES `Q` of the terminal at boundary side ### Extensions From 8df6e27dcdc6eb2c5f08b115d3efefbbfff21bf1 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:46:54 +0200 Subject: [PATCH 08/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Coline Piloquet <55250145+colinepiloquet@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 2983bac7..8fa9f380 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -191,7 +191,7 @@ If the `ACLineSegment` has one side inside the boundary area and one side outsid - If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). - If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `ACLineSegment` is mapped to a PowSyBl [`Line`](../model/index.md#line): From e6d50b1839338c68b45bc8004463769b7dbf0e61 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:47:05 +0200 Subject: [PATCH 09/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Coline Piloquet <55250145+colinepiloquet@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 8fa9f380..0cf7e65e 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -429,7 +429,7 @@ If the `Switch` has one side inside the boundary area and the other outside the - If there are only two linking equipment with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -If the CGMES `Switch` is mapped to a PowSybl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: +If the CGMES `Switch` is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: - `R`, `X`, `G`, `B` are `0.0`; - `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries; - `P0` is copied from CGMES `P` of the terminal at boundary side; From c6b21f77ac45b2f40723d8670f7505fa046e927f Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:47:13 +0200 Subject: [PATCH 10/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Coline Piloquet <55250145+colinepiloquet@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 0cf7e65e..be9d5c72 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -426,7 +426,7 @@ If the `Switch` has one side inside the boundary area and the other outside the - If there are one or more other linking equipment linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). - If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipment with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - If there are only two linking equipment with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the CGMES `Switch` is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: From cf7190be74afbff5495e325f6f191f4b818c81e6 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:47:33 +0200 Subject: [PATCH 11/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Coline Piloquet <55250145+colinepiloquet@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index be9d5c72..1e2bb8fe 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -231,7 +231,7 @@ If the `EquivalentBranch` is completely inside the boundary area, if the boundar If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. - If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). - If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). - If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). From c3ff5ff2065741ca94205063abc9ad10c2f313a7 Mon Sep 17 00:00:00 2001 From: miovd Date: Thu, 1 Jun 2023 09:48:00 +0200 Subject: [PATCH 12/15] Update pages/documentation/grid/formats/cim-cgmes.md Co-authored-by: Sophie Frasnedo <93923177+So-Fras@users.noreply.github.com> Signed-off-by: miovd --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 1e2bb8fe..8adfc9dc 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -422,7 +422,7 @@ If the CGMES `Switch` has its ends in different voltage levels inside the same I The created PowSyBl `Switch` has its attributes defined as described above. If the `Switch` has one side inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If it is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). - If there are one or more other linking equipment linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). - If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: From cda52b795570adabf1f327c19ba04a462b735e1e Mon Sep 17 00:00:00 2001 From: VEDELAGO MIORA Date: Fri, 2 Jun 2023 10:30:32 +0200 Subject: [PATCH 13/15] Replace linking equipment by linking device Signed-off-by: VEDELAGO MIORA --- pages/documentation/grid/formats/cim-cgmes.md | 46 +++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 8adfc9dc..20ffc8f4 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -186,12 +186,12 @@ If the `ACLineSegment` is outside the boundary area, it will be mapped to a PowS If the `ACLineSegment` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `ACLineSegment` is mapped to a PowSyBl [`Line`](../model/index.md#line): @@ -228,12 +228,12 @@ If the `EquivalentBranch` is outside the boundary area, it will be mapped to a P If the `EquivalentBranch` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `EquivalentBranch` is mapped to a PowSyBl [`Line`](../model/index.md#line): @@ -355,12 +355,12 @@ Please note that in this case, if `PowerTransformerEnds` are in different substa If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both completely inside the boundary area, and if the boundary area is not imported, the `PowerTransformer` is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). -If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. - If there is no other linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking equipments linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipments with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). In every case, a `PowerTransformer` with two `PowerTransformerEnds` is mapped to an intermediary model that correspond to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). @@ -421,12 +421,12 @@ If the CGMES `Switch` has its ends both inside the same voltage level, it is map If the CGMES `Switch` has its ends in different voltage levels inside the same IGM, it is mapped to a [`Switch`](../model/index.md#breakerswitch) but the voltage levels, and potentially the substations, that contain its ends are merged: they are mapped to only one voltage level and/or substation. The created PowSyBl `Switch` has its attributes defined as described above. -If the `Switch` has one side inside the boundary area and the other outside the boundary area, the importer checks if another linking equipment is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking equipment linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking equipment linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking equipment linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking equipments linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking equipment with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `Switch` has one side inside the boundary area and the other outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the CGMES `Switch` is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: From 3f7cbd3203b83f3ec7f52f4f96d4bb798ab67425 Mon Sep 17 00:00:00 2001 From: Coline PILOQUET Date: Mon, 3 Jun 2024 14:56:32 +0200 Subject: [PATCH 14/15] Corrections Signed-off-by: Coline PILOQUET --- pages/documentation/grid/formats/cim-cgmes.md | 72 +++++++++---------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 8d544206..56bcb5aa 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -6,7 +6,7 @@ layout: default The CGMES (**C**ommon **G**rid **M**odel **E**xchange **S**pecification) is an IEC technical specification (TS 61970-600-1, TS 61970-600-2) based on the IEC CIM (**C**ommon **I**nformation **M**odel) family of standards. It was developed to meet necessary requirements for TSO data exchanges in the areas of system development and system operation. In this scenario the agents (the Modelling Authorities) generate their Individual Grid Models (IGM) that can be assembled to build broader Common Grid Models (CGM). Boundaries between IGMs are well defined: the boundary data is shared between the modelling agents and contain all boundary points required for a given grid model exchange. -In CGMES an electric power system model is described by data grouped in different subsets (profiles) and exchanged as CIM/XML files, with each file associated to a given profile. The profiles considered in PowSyBl are: +In CGMES, an electric power system model is described by data grouped in different subsets (profiles) and exchanged as CIM/XML files, with each file associated to a given profile. The profiles considered in PowSyBl are: - `EQ` Equipment. Contains data that describes the equipment present in the network and its physical characteristics. - `SSH` Steady State Hypothesis. Required input parameters to perform power flow analysis; e.g., energy injections and consumptions and setpoint values for regulating controls. - `TP` Topology. Describe how the equipment is electrically connected. Contains the definition of power flow buses. @@ -186,13 +186,13 @@ If the `ACLineSegment` is outside the boundary area, it will be mapped to a PowS If the `ACLineSegment` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `ACLineSegment` has one side inside the boundary area and one side outside the boundary area, the importer checks if another branch is connected to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other branch connected to this `TopologicalNode`, it will be mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other branches connected to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other branch connected to this `TopologicalNode` in another `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other branches connected to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two branches with their boundary terminal connected **and** in different `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `ACLineSegments` will be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `ACLineSegment` is mapped to a PowSyBl [`Line`](../model/index.md#line): - `R` is copied from CGMES `r` @@ -207,7 +207,7 @@ If the `ACLineSegment` is mapped to a PowSyBl [`DanglingLine`](../model/index.md - `X` is copied from CGMES `x` - `G` is copied from CMGES `gch` if defined, `0.0` otherwise - `B` is copied from CGMES `bch` -- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries +- `ParingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries - `P0` is copied from CGMES `P` of the terminal at boundary side - `Q0` is copied from CGMES `Q` of the terminal at boundary side @@ -218,7 +218,7 @@ If the `ACLineSegment` is mapped to a PowSyBl [`HalfLine`](../model/index.md#hal - `G2` is `0.0` is the Half Line is on side `TWO` of the Tie Line. If the Half Line is on side `ONE` of the Tie Line, it is copied from CGMES `gch` if defined, `0.0` otherwise. - `B1` is `0.0` is the Half Line is on side `ONE` of the Tie Line. If the Half Line is on side `TWO` of the Tie Line, it is copied from CGMES `bch`. - `B2` is `0.0` is the Half Line is on side `TWO` of the Tie Line. If the Half Line is on side `ONE` of the Tie Line, it is copied from CGMES `bch`. -- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries +- `PairingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries #### EquivalentBranch @@ -228,13 +228,13 @@ If the `EquivalentBranch` is outside the boundary area, it will be mapped to a P If the `EquivalentBranch` is completely inside the boundary area, if the boundaries are not imported, it is ignored. Otherwise, it is mapped to a PowSyBl [`Line`](../model/index.md#line). -If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `EquivalentBranch` has one side inside the boundary area and one side outside the boundary area, the importer checks if another branch is connected to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other branch connected to this `TopologicalNode`, it will be mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other branches connected to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other branch connected to this `TopologicalNode` in another `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other branches connected to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two branches connected with their boundary terminal connected **and** in different `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` will be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the `EquivalentBranch` is mapped to a PowSyBl [`Line`](../model/index.md#line): - `R` is copied from CGMES `r` @@ -249,7 +249,7 @@ If the `EquivalentBranch` is mapped to a PowSyBl [`DanglingLine`](../model/index - `X` is copied from CGMES `x` - `G` is `0.0` - `B` is `0.0` -- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries +- `PairingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries - `P0` is copied from CGMES `P` of the terminal at boundary side - `Q0` is copied from CGMES `Q` of the terminal at boundary side @@ -337,7 +337,7 @@ Sections are created from the lowest CGMES `sectionNumber` to the highest and ea #### PowerTransformer -CGMES `PowerTransformers` represent electrical device consisting of two or more coupled windings, each represented by a `PowerTransformerEnd`. PowSyBl only supports `PowerTransformers` with two or three windings. +CGMES `PowerTransformers` represent electrical devices consisting of two or more coupled windings, each represented by a `PowerTransformerEnd`. PowSyBl only supports `PowerTransformers` with two or three windings. ##### PowerTransformer with two PowerTransformerEnds @@ -346,20 +346,20 @@ Please note that in this case, if `PowerTransformerEnds` are in different substa If a CGMES `PowerTransformer` has two `PowerTransformerEnds`, both completely inside the boundary area, and if the boundary area is not imported, the `PowerTransformer` is ignored. Otherwise, it is mapped to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). -If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `PowerTransformer` has one `PowerTransformerEnd` inside the boundary area and the other outside the boundary area, the importer checks if another branch is connected to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other connected to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there is one or more other branches connected to this `TopologicalNode` and they are all in the same `SubGeographicalRegion`, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other branch connected to this `TopologicalNode` in another `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other branches connected to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two branches with their boundary terminal connected **and** in different `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` will be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -In every case, a `PowerTransformer` with two `PowerTransformerEnds` is mapped to an intermediary model that correspond to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). +In every case, a `PowerTransformer` with two `PowerTransformerEnds` is mapped to an intermediary model that corresponds to a PowSyBl [`TwoWindingsTransformer`](../model/index.md#two-windings-transformer). For more information about this conversion, please look at the classes [`InterpretedT2xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/InterpretedT2xModel.java) and [`ConvertedT2xModel`](https://github.com/powsybl/powsybl-core/blob/main/cgmes/cgmes-conversion/src/main/java/com/powsybl/cgmes/conversion/elements/transformers/ConvertedT2xModel.java). If the `PowerTransformer` is finally mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its structural attributes (`R`, `X`, `G` and `B`) are calculated from the intermediary model's attributes, and the ratio from its ratio tap changer and/or its phase tap changer. -`P0` and `Q0` are set from CGMES `P` and `Q` values at boundary side; `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. +`P0` and `Q0` are set from CGMES `P` and `Q` values at boundary side; `PairingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries. If the `PowerTransformer` is finally mapped to a PowSyBl [`HalfLine`](../model/index.md#half-line), its attributes are calculated using a standard $$\pi$$ model with distributed parameters. @@ -412,17 +412,17 @@ If the CGMES `Switch` has its ends both inside the same voltage level, it is map If the CGMES `Switch` has its ends in different voltage levels inside the same IGM, it is mapped to a [`Switch`](../model/index.md#breakerswitch) but the voltage levels, and potentially the substations, that contain its ends are merged: they are mapped to only one voltage level and/or substation. The created PowSyBl `Switch` has its attributes defined as described above. -If the `Switch` has one side inside the boundary area and the other outside the boundary area, the importer checks if another linking device is linked to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. -- If there is no other linking device linked to this `TopologicalNode`, it is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). -- If there are one or more other linking devices linked to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). -- If there is exactly one other linking device linked to this `TopologicalNode` in another `SubGeographicalRegion`, they are both mapped to PowSybl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). -- If there are two or more other linking devices linked to this `TopologicalNode` in different `SubGeographicalRegions`: - - If there are only two linking devices with their boundary terminal connected **and** in different `SubGeographicalRegion`, they are both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` are mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). - - Otherwise, they are all mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +If the `Switch` has one side inside the boundary area and the other side outside the boundary area, the importer checks if another branch is connected to the same CGMES [`TopologicalNode`](#TopologicalNode) in the boundary area. +- If there is no other branch connected to this `TopologicalNode`, it will be mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line). +- If there are one or more other branches connected to this `TopologicalNode` and they all are in the same `SubGeographicalRegion`, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). +- If there is exactly one other branch connected to this `TopologicalNode` in another `SubGeographicalRegion`, they will both be mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line). +- If there are two or more other branches connected to this `TopologicalNode` in different `SubGeographicalRegions`: + - If there are only two branches with their boundary terminal connected **and** in different `SubGeographicalRegion`, they will both mapped to PowSyBl [`HalfLines`](../model/index.md#half-line), which are part of the same PowSyBl [`TieLine`](../model/index.md#tie-line) and all other `EquivalentBranches` will be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). + - Otherwise, they will all be mapped to PowSyBl [`DanglingLines`](../model/index.md#dangling-line). If the CGMES `Switch` is mapped to a PowSyBl [`DanglingLine`](../model/index.md#dangling-line), its attributes are as described below: - `R`, `X`, `G`, `B` are `0.0`; -- `UcteXnodeCode` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries; +- `PairingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries; - `P0` is copied from CGMES `P` of the terminal at boundary side; - `Q0` is copied from CGMES `Q` of the terminal at boundary side From 0fcaf84070e1d100c6f30ff66d2b8b809179560d Mon Sep 17 00:00:00 2001 From: Coline PILOQUET Date: Mon, 3 Jun 2024 16:04:14 +0200 Subject: [PATCH 15/15] Fix typo Signed-off-by: Coline PILOQUET --- pages/documentation/grid/formats/cim-cgmes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/documentation/grid/formats/cim-cgmes.md b/pages/documentation/grid/formats/cim-cgmes.md index 56bcb5aa..d9a512ba 100644 --- a/pages/documentation/grid/formats/cim-cgmes.md +++ b/pages/documentation/grid/formats/cim-cgmes.md @@ -207,7 +207,7 @@ If the `ACLineSegment` is mapped to a PowSyBl [`DanglingLine`](../model/index.md - `X` is copied from CGMES `x` - `G` is copied from CMGES `gch` if defined, `0.0` otherwise - `B` is copied from CGMES `bch` -- `ParingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries +- `PairingKey` is copied from the name of the `TopologicalNode` or the `ConnectivityNode` (respectively in `NODE-BREAKER` or `BUS-BRANCH`) inside boundaries - `P0` is copied from CGMES `P` of the terminal at boundary side - `Q0` is copied from CGMES `Q` of the terminal at boundary side