From 00664898e4c2674b7fb323157a5104e5a88a7ee0 Mon Sep 17 00:00:00 2001 From: Romain Courtier Date: Tue, 5 Nov 2024 10:03:18 +0100 Subject: [PATCH 1/5] Rework existing test of transformers with phase angle clock using now a simple network instead of a cgmes conformity modified one Signed-off-by: Romain Courtier --- .../CgmesConformity1ModifiedCatalog.java | 45 - ...MiniGridTestConfiguration_BC_EQ_v3.0.0.xml | 1814 ----------------- ...MiniGridTestConfiguration_BC_EQ_v3.0.0.xml | 1814 ----------------- ...MiniGridTestConfiguration_BC_EQ_v3.0.0.xml | 1814 ----------------- .../test/TransformerConversionTest.java | 93 +- .../transformers/phaseAngleClock_EQ.xml | 296 +++ .../phaseAngleClock_EQ_AllNonZero.xml | 296 +++ .../phaseAngleClock_EQ_AllZero.xml | 296 +++ .../transformers/phaseAngleClock_SSH.xml | 46 + .../transformers/phaseAngleClock_SV.xml | 35 + .../transformers/phaseAngleClock_TP.xml | 71 + 11 files changed, 1093 insertions(+), 5527 deletions(-) delete mode 100644 cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T2xPhaseAngleClock1NonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml delete mode 100644 cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T3xAllPhaseAngleClockNonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml delete mode 100644 cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_phaseAngleClockZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllNonZero.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllZero.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SSH.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SV.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_TP.xml diff --git a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java index 56f544f35e6..c6cd1cf5223 100644 --- a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java +++ b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java @@ -839,51 +839,6 @@ public static GridModelReferenceResources miniBusBranchT3xTwoRegulatingControlsE MINI_GRID_TP)); } - public static GridModelReferenceResources miniBusBranchPhaseAngleClockZero() { - String base = ENTSOE_CONFORMITY_1_MODIFIED - + "/MiniGrid/BusBranch/BaseCase_v3_phaseAngleClockZero/"; - return new GridModelReferenceResources( - "MiniGrid-BusBranch-PhaseAngleClockZero", - null, - new ResourceSet(base, - MINI_GRID_EQ), - new ResourceSet(MINI_GRID_BUS_BRANCH_BASE, - MINI_GRID_SSH, - MINI_GRID_TP, - MINI_GRID_DL, - MINI_GRID_SV)); - } - - public static GridModelReferenceResources miniBusBranchT2xPhaseAngleClock1NonZero() { - String base = ENTSOE_CONFORMITY_1_MODIFIED - + "/MiniGrid/BusBranch/BaseCase_v3_T2xPhaseAngleClock1NonZero/"; - return new GridModelReferenceResources( - "MiniGrid-BusBranch-T2xPhaseAngleClock1NonZero", - null, - new ResourceSet(base, - MINI_GRID_EQ), - new ResourceSet(MINI_GRID_BUS_BRANCH_BASE, - MINI_GRID_SSH, - MINI_GRID_TP, - MINI_GRID_DL, - MINI_GRID_SV)); - } - - public static GridModelReferenceResources miniBusBranchT3xAllPhaseAngleClockNonZero() { - String base = ENTSOE_CONFORMITY_1_MODIFIED - + "/MiniGrid/BusBranch/BaseCase_v3_T3xAllPhaseAngleClockNonZero/"; - return new GridModelReferenceResources( - "MiniGrid-BusBranch-T3xAllPhaseAngleClockNonZero", - null, - new ResourceSet(base, - MINI_GRID_EQ), - new ResourceSet(MINI_GRID_BUS_BRANCH_BASE, - MINI_GRID_SSH, - MINI_GRID_TP, - MINI_GRID_DL, - MINI_GRID_SV)); - } - public static GridModelReference miniBusBranchExternalInjectionControl() { String base = ENTSOE_CONFORMITY_1_MODIFIED + "/MiniGrid/BusBranch/BaseCase_v3_external_injection_control/"; diff --git a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T2xPhaseAngleClock1NonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml b/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T2xPhaseAngleClock1NonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml deleted file mode 100644 index f28aac6f5f4..00000000000 --- a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T2xPhaseAngleClock1NonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml +++ /dev/null @@ -1,1814 +0,0 @@ - - - - 2030-01-02T09:00:00 - 2015-02-05T12:20:50.830 - CGMES Conformity Assessment: Mini Grid Base Case Test Configuration. The model is owned by ENTSO-E and is provided by ENTSO-E "as it is". To the fullest extent permitted by law, ENTSO-E shall not be liable for any damages of any kind arising out of the use of the model (including any of its subsequent modifications). ENTSO-E neither warrants, nor represents that the use of the model will not infringe the rights of third parties. Any use of the model shall include a reference to ENTSO-E. ENTSO-E web site is the only official source of information related to the model. - 4 - http://entsoe.eu/CIM/EquipmentCore/3/1 - http://entsoe.eu/CIM/EquipmentShortCircuit/3/1 - http://A1.de/Planning/ENTSOE/2 - - - - L5_0 - 1 - - - - - L5_1 - 2 - - - - - L6_0 - 1 - - - - - L6_1 - 2 - - - - - L4_0 - 1 - - - - - L4_1 - 2 - - - - - L1_0 - 1 - - - - - L1_1 - 2 - - - - - L2_0 - 1 - - - - - L2_1 - 2 - - - - - L3_a_0 - 1 - - - - - L3_a_1 - 2 - - - - - L3_b_0 - 1 - - - - - L3_b_1 - 2 - - - - - T5_0 - 1 - - - - - T5_1 - 2 - - - - - T6_0 - 1 - - - - - T6_1 - 2 - - - - - T2_0 - 1 - - - - - T2_1 - 2 - - - - - T1_0 - 1 - - - - - T1_1 - 2 - - - - - T4_0 - 1 - - - - - T4_1 - 2 - - - - - T4_2 - 3 - - - - - T3_0 - 1 - - - - - T3_1 - 2 - - - - - T3_2 - 3 - - - - - G2_0 - 1 - - - - - G1_0 - 1 - - - - - G3_0 - 1 - - - - - M1_0 - 1 - - - - - M2_0 - 1 - - - - - ASM-1229750300_0 - 1 - - - - - Q1_0 - 1 - - - - - Q2_0 - 1 - - - - - 380kV - 380 - - - 21kV - 21 - - - 10kV - 10 - - - 110kV - 110 - - - 30kV - 30 - - - S2 10kV - - - - - S5 10kV - - - - - S4 10kV - - - - - S3 21kV - - - - - S2 110kV - - - - - S3 110kV - - - - - S1 380kV - - - - - S1 30kV - - - - - S4 110kV - - - - - S1 110kV - - - - - Sub1 - - - - Sub2 - - - - Sub3 - - - - Sub4 - - - - Sub5 - - - - AA - - - Z1 - - - - PATL - 45000 - - - - - TATL - 900 - - - - - TATL - 60 - - - - - Gen-1 - G2 - false - - 0 - 127.5 - 0 - - - G2 - - - 0.9 - 100 - 10.5 - - false - 43.6 - -43.6 - 100 - 0 - 0.004535 - 0.16 - 2 - 2 - - - 7.5 - 0.005 - 0.1 - 0.16 - - - Gen-2 - G1 - false - - 0 - 90 - 0 - - - G1 - - 0.85 - 150 - 21 - - false - 79 - -79 - 100 - 0 - 0.00068 - 0.14 - 1.8 - 1.8 - - - 0.002 - 0.1 - 0.14 - - - Gen-3 - G3 - false - - 0 - 8 - 0 - - - G3 - - 0.8 - 10 - 10.5 - - false - 6 - -6 - 100 - 0 - 0.00163 - 0.1 - 1.8 - 1.8 - - - 0.018 - 0.08 - 0.1 - - - M3 - false - - 0.88 - 5.828 - 10 - false - 97.5 - 5 - 1 - 5 - false - 0.1 - - - M2a - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - M2b - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - Q1 - - 0 - true - 38000 - 800 - 600 - 0.15 - 0.1 - 3.029 - 0 - -800 - -600 - 0.1 - 0.1 - 1 - 1.1 - - - Q2 - - 0 - true - 16000 - 88 - 66 - 0.2 - 0.1 - 3.34865 - 0 - -88 - -66 - 0 - 0 - 0 - 1.1 - - - Line-7 - L5 - false - - - 15 - 0 - 0 - 0 - 0 - 1.8 - 3.3 - 80 - 5.79 - 16.5 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-4 - L6 - false - - - 1 - 0 - 0 - 0 - 0 - 0.082 - 0.082 - 80 - 0.086 - 0.086 - - - Ratings - - - - Normal - - - 1155 - - - ShortTerm - - - 1328 - - - Emergency - - - 1617 - - - Line-5 - L4 - false - - - 10 - 0 - 0 - 0 - 0 - 0.96 - 2.2 - 80 - 3.88 - 11 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-1 - L1 - false - - - 20 - 0 - 0 - 0 - 0 - 2.4 - 6.4 - 80 - 7.8 - 25.2 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-6 - L2 - false - - - 10 - 0 - 0 - 0 - 0 - 1.2 - 3.2 - 80 - 3.9 - 12.6 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-2 - L3_a - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-3 - L3_b - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Trafo-1 - T5 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T5 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T5 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-2 - T6 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T6 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T6 - 0 - 2 - true - 100 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-3 - T2 - false - - 115 - true - false - - - T2 - 0 - 1 - false - 0 - - - 0 - - 0 - 3 - 100 - 0 - 120 - 0 - 0.72 - 0.72 - 17.2649937 - 17.2649937 - - - - Ratings - - - - Normal - - - 481 - - - ShortTerm - - - 553 - - - Emergency - - - 673 - - - T2 - 2 - false - - - 0 - - 0 - 5 - 100 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 5498 - - - ShortTerm - - - 6323 - - - Emergency - - - 7698 - - - Trafo-4 - T1 - false - - 115 - true - false - - - T1 - 2 - false - - - 0 - - 0 - 5 - 150 - 0 - 21 - 0 - 0.0147 - 0.0147 - 0.47017 - 0.446662 - - - - Ratings - - - - Normal - - - 4123 - - - ShortTerm - - - 4742 - - - Emergency - - - 5773 - - - T1 - 25 - 1 - true - 13 - 21 - 13 - - 1 - - - - T1 - 0 - 1 - true - 22 - - - 0 - - 0 - 0 - 150 - 0 - 115 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 753 - - - ShortTerm - - - 866 - - - Emergency - - - 1054 - - - T4 - false - - false - - - T4 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.0254571438 - 0.0254571438 - 1.259741 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 0 - 2 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T4 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - Trafo-5 - T3 - false - - false - - - T3 - 0 - 1 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - T3 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - T3 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T3 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.02545714286 - 0.02545714286 - 1.259740894 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - 68-116_0 - 1 - - - - - 68-116_1 - 2 - - - - - Injection_0 - 1 - - - - - 71-73_0 - 1 - - - - - 71-73_1 - 2 - - - - - Injection_0 - 1 - - - - - XQ1-N1 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - XQ2-N5 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - Injection1 - - - 0.63185 - 2.85315 - 0.63185 - false - 6.3185 - 19.021 - 6.3185 - - - Injection2 - - - 0.43445 - 2.86738 - 0.43445 - false - 4.3445 - 14.3369 - 4.3445 - - - GEN_A1 - - - - - _CA_A1 - - - - Container for Line-7 - - - - Container for Line-4 - - - - Container for Line-5 - - - - Container for Line-1 - - - - Container for Line-6 - - - - Container for Line-2 - - - - Container for Line-3 - - - - TwinBrch SM - - - - - PATLT - 4000 - - - - - Normal - - - 525 - - - Normal - - - 1155 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 481 - - - Normal - - - 5498 - - - Normal - - - 4123 - - - Normal - - - 753 - - - Normal - - - 962 - - - Normal - - - 1683 - - - Normal - - - 505 - - - Normal - - - 505 - - - Normal - - - 1683 - - - Normal - - - 962 - - - Normal - - - 1000 - - - Normal - - - 1000 - - \ No newline at end of file diff --git a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T3xAllPhaseAngleClockNonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml b/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T3xAllPhaseAngleClockNonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml deleted file mode 100644 index 2d4a212a7af..00000000000 --- a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_T3xAllPhaseAngleClockNonZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml +++ /dev/null @@ -1,1814 +0,0 @@ - - - - 2030-01-02T09:00:00 - 2015-02-05T12:20:50.830 - CGMES Conformity Assessment: Mini Grid Base Case Test Configuration. The model is owned by ENTSO-E and is provided by ENTSO-E "as it is". To the fullest extent permitted by law, ENTSO-E shall not be liable for any damages of any kind arising out of the use of the model (including any of its subsequent modifications). ENTSO-E neither warrants, nor represents that the use of the model will not infringe the rights of third parties. Any use of the model shall include a reference to ENTSO-E. ENTSO-E web site is the only official source of information related to the model. - 4 - http://entsoe.eu/CIM/EquipmentCore/3/1 - http://entsoe.eu/CIM/EquipmentShortCircuit/3/1 - http://A1.de/Planning/ENTSOE/2 - - - - L5_0 - 1 - - - - - L5_1 - 2 - - - - - L6_0 - 1 - - - - - L6_1 - 2 - - - - - L4_0 - 1 - - - - - L4_1 - 2 - - - - - L1_0 - 1 - - - - - L1_1 - 2 - - - - - L2_0 - 1 - - - - - L2_1 - 2 - - - - - L3_a_0 - 1 - - - - - L3_a_1 - 2 - - - - - L3_b_0 - 1 - - - - - L3_b_1 - 2 - - - - - T5_0 - 1 - - - - - T5_1 - 2 - - - - - T6_0 - 1 - - - - - T6_1 - 2 - - - - - T2_0 - 1 - - - - - T2_1 - 2 - - - - - T1_0 - 1 - - - - - T1_1 - 2 - - - - - T4_0 - 1 - - - - - T4_1 - 2 - - - - - T4_2 - 3 - - - - - T3_0 - 1 - - - - - T3_1 - 2 - - - - - T3_2 - 3 - - - - - G2_0 - 1 - - - - - G1_0 - 1 - - - - - G3_0 - 1 - - - - - M1_0 - 1 - - - - - M2_0 - 1 - - - - - ASM-1229750300_0 - 1 - - - - - Q1_0 - 1 - - - - - Q2_0 - 1 - - - - - 380kV - 380 - - - 21kV - 21 - - - 10kV - 10 - - - 110kV - 110 - - - 30kV - 30 - - - S2 10kV - - - - - S5 10kV - - - - - S4 10kV - - - - - S3 21kV - - - - - S2 110kV - - - - - S3 110kV - - - - - S1 380kV - - - - - S1 30kV - - - - - S4 110kV - - - - - S1 110kV - - - - - Sub1 - - - - Sub2 - - - - Sub3 - - - - Sub4 - - - - Sub5 - - - - AA - - - Z1 - - - - PATL - 45000 - - - - - TATL - 900 - - - - - TATL - 60 - - - - - Gen-1 - G2 - false - - 0 - 127.5 - 0 - - - G2 - - - 0.9 - 100 - 10.5 - - false - 43.6 - -43.6 - 100 - 0 - 0.004535 - 0.16 - 2 - 2 - - - 7.5 - 0.005 - 0.1 - 0.16 - - - Gen-2 - G1 - false - - 0 - 90 - 0 - - - G1 - - 0.85 - 150 - 21 - - false - 79 - -79 - 100 - 0 - 0.00068 - 0.14 - 1.8 - 1.8 - - - 0.002 - 0.1 - 0.14 - - - Gen-3 - G3 - false - - 0 - 8 - 0 - - - G3 - - 0.8 - 10 - 10.5 - - false - 6 - -6 - 100 - 0 - 0.00163 - 0.1 - 1.8 - 1.8 - - - 0.018 - 0.08 - 0.1 - - - M3 - false - - 0.88 - 5.828 - 10 - false - 97.5 - 5 - 1 - 5 - false - 0.1 - - - M2a - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - M2b - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - Q1 - - 0 - true - 38000 - 800 - 600 - 0.15 - 0.1 - 3.029 - 0 - -800 - -600 - 0.1 - 0.1 - 1 - 1.1 - - - Q2 - - 0 - true - 16000 - 88 - 66 - 0.2 - 0.1 - 3.34865 - 0 - -88 - -66 - 0 - 0 - 0 - 1.1 - - - Line-7 - L5 - false - - - 15 - 0 - 0 - 0 - 0 - 1.8 - 3.3 - 80 - 5.79 - 16.5 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-4 - L6 - false - - - 1 - 0 - 0 - 0 - 0 - 0.082 - 0.082 - 80 - 0.086 - 0.086 - - - Ratings - - - - Normal - - - 1155 - - - ShortTerm - - - 1328 - - - Emergency - - - 1617 - - - Line-5 - L4 - false - - - 10 - 0 - 0 - 0 - 0 - 0.96 - 2.2 - 80 - 3.88 - 11 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-1 - L1 - false - - - 20 - 0 - 0 - 0 - 0 - 2.4 - 6.4 - 80 - 7.8 - 25.2 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-6 - L2 - false - - - 10 - 0 - 0 - 0 - 0 - 1.2 - 3.2 - 80 - 3.9 - 12.6 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-2 - L3_a - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-3 - L3_b - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Trafo-1 - T5 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T5 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T5 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-2 - T6 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T6 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T6 - 0 - 2 - true - 100 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-3 - T2 - false - - 115 - true - false - - - T2 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 100 - 0 - 120 - 0 - 0.72 - 0.72 - 17.2649937 - 17.2649937 - - - - Ratings - - - - Normal - - - 481 - - - ShortTerm - - - 553 - - - Emergency - - - 673 - - - T2 - 2 - false - - - 0 - - 0 - 5 - 100 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 5498 - - - ShortTerm - - - 6323 - - - Emergency - - - 7698 - - - Trafo-4 - T1 - false - - 115 - true - false - - - T1 - 2 - false - - - 0 - - 0 - 5 - 150 - 0 - 21 - 0 - 0.0147 - 0.0147 - 0.47017 - 0.446662 - - - - Ratings - - - - Normal - - - 4123 - - - ShortTerm - - - 4742 - - - Emergency - - - 5773 - - - T1 - 25 - 1 - true - 13 - 21 - 13 - - 1 - - - - T1 - 0 - 1 - true - 22 - - - 0 - - 0 - 0 - 150 - 0 - 115 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 753 - - - ShortTerm - - - 866 - - - Emergency - - - 1054 - - - T4 - false - - false - - - T4 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.0254571438 - 0.0254571438 - 1.259741 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 0 - 2 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T4 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - Trafo-5 - T3 - false - - false - - - T3 - 0 - 1 - true - 0 - - - 0 - - 0 - 1 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - T3 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - T3 - 0 - 2 - false - 0 - - - 0 - - 0 - 3 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T3 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.02545714286 - 0.02545714286 - 1.259740894 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - 68-116_0 - 1 - - - - - 68-116_1 - 2 - - - - - Injection_0 - 1 - - - - - 71-73_0 - 1 - - - - - 71-73_1 - 2 - - - - - Injection_0 - 1 - - - - - XQ1-N1 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - XQ2-N5 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - Injection1 - - - 0.63185 - 2.85315 - 0.63185 - false - 6.3185 - 19.021 - 6.3185 - - - Injection2 - - - 0.43445 - 2.86738 - 0.43445 - false - 4.3445 - 14.3369 - 4.3445 - - - GEN_A1 - - - - - _CA_A1 - - - - Container for Line-7 - - - - Container for Line-4 - - - - Container for Line-5 - - - - Container for Line-1 - - - - Container for Line-6 - - - - Container for Line-2 - - - - Container for Line-3 - - - - TwinBrch SM - - - - - PATLT - 4000 - - - - - Normal - - - 525 - - - Normal - - - 1155 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 481 - - - Normal - - - 5498 - - - Normal - - - 4123 - - - Normal - - - 753 - - - Normal - - - 962 - - - Normal - - - 1683 - - - Normal - - - 505 - - - Normal - - - 505 - - - Normal - - - 1683 - - - Normal - - - 962 - - - Normal - - - 1000 - - - Normal - - - 1000 - - \ No newline at end of file diff --git a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_phaseAngleClockZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml b/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_phaseAngleClockZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml deleted file mode 100644 index 157f6e35cc5..00000000000 --- a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/BusBranch/BaseCase_v3_phaseAngleClockZero/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml +++ /dev/null @@ -1,1814 +0,0 @@ - - - - 2030-01-02T09:00:00 - 2015-02-05T12:20:50.830 - CGMES Conformity Assessment: Mini Grid Base Case Test Configuration. The model is owned by ENTSO-E and is provided by ENTSO-E "as it is". To the fullest extent permitted by law, ENTSO-E shall not be liable for any damages of any kind arising out of the use of the model (including any of its subsequent modifications). ENTSO-E neither warrants, nor represents that the use of the model will not infringe the rights of third parties. Any use of the model shall include a reference to ENTSO-E. ENTSO-E web site is the only official source of information related to the model. - 4 - http://entsoe.eu/CIM/EquipmentCore/3/1 - http://entsoe.eu/CIM/EquipmentShortCircuit/3/1 - http://A1.de/Planning/ENTSOE/2 - - - - L5_0 - 1 - - - - - L5_1 - 2 - - - - - L6_0 - 1 - - - - - L6_1 - 2 - - - - - L4_0 - 1 - - - - - L4_1 - 2 - - - - - L1_0 - 1 - - - - - L1_1 - 2 - - - - - L2_0 - 1 - - - - - L2_1 - 2 - - - - - L3_a_0 - 1 - - - - - L3_a_1 - 2 - - - - - L3_b_0 - 1 - - - - - L3_b_1 - 2 - - - - - T5_0 - 1 - - - - - T5_1 - 2 - - - - - T6_0 - 1 - - - - - T6_1 - 2 - - - - - T2_0 - 1 - - - - - T2_1 - 2 - - - - - T1_0 - 1 - - - - - T1_1 - 2 - - - - - T4_0 - 1 - - - - - T4_1 - 2 - - - - - T4_2 - 3 - - - - - T3_0 - 1 - - - - - T3_1 - 2 - - - - - T3_2 - 3 - - - - - G2_0 - 1 - - - - - G1_0 - 1 - - - - - G3_0 - 1 - - - - - M1_0 - 1 - - - - - M2_0 - 1 - - - - - ASM-1229750300_0 - 1 - - - - - Q1_0 - 1 - - - - - Q2_0 - 1 - - - - - 380kV - 380 - - - 21kV - 21 - - - 10kV - 10 - - - 110kV - 110 - - - 30kV - 30 - - - S2 10kV - - - - - S5 10kV - - - - - S4 10kV - - - - - S3 21kV - - - - - S2 110kV - - - - - S3 110kV - - - - - S1 380kV - - - - - S1 30kV - - - - - S4 110kV - - - - - S1 110kV - - - - - Sub1 - - - - Sub2 - - - - Sub3 - - - - Sub4 - - - - Sub5 - - - - AA - - - Z1 - - - - PATL - 45000 - - - - - TATL - 900 - - - - - TATL - 60 - - - - - Gen-1 - G2 - false - - 0 - 127.5 - 0 - - - G2 - - - 0.9 - 100 - 10.5 - - false - 43.6 - -43.6 - 100 - 0 - 0.004535 - 0.16 - 2 - 2 - - - 7.5 - 0.005 - 0.1 - 0.16 - - - Gen-2 - G1 - false - - 0 - 90 - 0 - - - G1 - - 0.85 - 150 - 21 - - false - 79 - -79 - 100 - 0 - 0.00068 - 0.14 - 1.8 - 1.8 - - - 0.002 - 0.1 - 0.14 - - - Gen-3 - G3 - false - - 0 - 8 - 0 - - - G3 - - 0.8 - 10 - 10.5 - - false - 6 - -6 - 100 - 0 - 0.00163 - 0.1 - 1.8 - 1.8 - - - 0.018 - 0.08 - 0.1 - - - M3 - false - - 0.88 - 5.828 - 10 - false - 97.5 - 5 - 1 - 5 - false - 0.1 - - - M2a - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - M2b - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - Q1 - - 0 - true - 38000 - 800 - 600 - 0.15 - 0.1 - 3.029 - 0 - -800 - -600 - 0.1 - 0.1 - 1 - 1.1 - - - Q2 - - 0 - true - 16000 - 88 - 66 - 0.2 - 0.1 - 3.34865 - 0 - -88 - -66 - 0 - 0 - 0 - 1.1 - - - Line-7 - L5 - false - - - 15 - 0 - 0 - 0 - 0 - 1.8 - 3.3 - 80 - 5.79 - 16.5 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-4 - L6 - false - - - 1 - 0 - 0 - 0 - 0 - 0.082 - 0.082 - 80 - 0.086 - 0.086 - - - Ratings - - - - Normal - - - 1155 - - - ShortTerm - - - 1328 - - - Emergency - - - 1617 - - - Line-5 - L4 - false - - - 10 - 0 - 0 - 0 - 0 - 0.96 - 2.2 - 80 - 3.88 - 11 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-1 - L1 - false - - - 20 - 0 - 0 - 0 - 0 - 2.4 - 6.4 - 80 - 7.8 - 25.2 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-6 - L2 - false - - - 10 - 0 - 0 - 0 - 0 - 1.2 - 3.2 - 80 - 3.9 - 12.6 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-2 - L3_a - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-3 - L3_b - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Trafo-1 - T5 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T5 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T5 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-2 - T6 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T6 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T6 - 0 - 2 - true - 100 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-3 - T2 - false - - 115 - true - false - - - T2 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 100 - 0 - 120 - 0 - 0.72 - 0.72 - 17.2649937 - 17.2649937 - - - - Ratings - - - - Normal - - - 481 - - - ShortTerm - - - 553 - - - Emergency - - - 673 - - - T2 - 2 - false - - - 0 - - 0 - 0 - 100 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 5498 - - - ShortTerm - - - 6323 - - - Emergency - - - 7698 - - - Trafo-4 - T1 - false - - 115 - true - false - - - T1 - 2 - false - - - 0 - - 0 - 0 - 150 - 0 - 21 - 0 - 0.0147 - 0.0147 - 0.47017 - 0.446662 - - - - Ratings - - - - Normal - - - 4123 - - - ShortTerm - - - 4742 - - - Emergency - - - 5773 - - - T1 - 25 - 1 - true - 13 - 21 - 13 - - 1 - - - - T1 - 0 - 1 - true - 22 - - - 0 - - 0 - 0 - 150 - 0 - 115 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 753 - - - ShortTerm - - - 866 - - - Emergency - - - 1054 - - - T4 - false - - false - - - T4 - 3 - false - - - 0 - - 0 - 0 - 50 - 0 - 30 - 0 - 0.0254571438 - 0.0254571438 - 1.259741 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 0 - 2 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T4 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - Trafo-5 - T3 - false - - false - - - T3 - 0 - 1 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - T3 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - T3 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T3 - 3 - false - - - 0 - - 0 - 0 - 50 - 0 - 30 - 0 - 0.02545714286 - 0.02545714286 - 1.259740894 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - 68-116_0 - 1 - - - - - 68-116_1 - 2 - - - - - Injection_0 - 1 - - - - - 71-73_0 - 1 - - - - - 71-73_1 - 2 - - - - - Injection_0 - 1 - - - - - XQ1-N1 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - XQ2-N5 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - Injection1 - - - 0.63185 - 2.85315 - 0.63185 - false - 6.3185 - 19.021 - 6.3185 - - - Injection2 - - - 0.43445 - 2.86738 - 0.43445 - false - 4.3445 - 14.3369 - 4.3445 - - - GEN_A1 - - - - - _CA_A1 - - - - Container for Line-7 - - - - Container for Line-4 - - - - Container for Line-5 - - - - Container for Line-1 - - - - Container for Line-6 - - - - Container for Line-2 - - - - Container for Line-3 - - - - TwinBrch SM - - - - - PATLT - 4000 - - - - - Normal - - - 525 - - - Normal - - - 1155 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 481 - - - Normal - - - 5498 - - - Normal - - - 4123 - - - Normal - - - 753 - - - Normal - - - 962 - - - Normal - - - 1683 - - - Normal - - - 505 - - - Normal - - - 505 - - - Normal - - - 1683 - - - Normal - - - 962 - - - Normal - - - 1000 - - - Normal - - - 1000 - - \ No newline at end of file diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java index 0905264d09f..356324ac54e 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java @@ -10,17 +10,20 @@ import com.powsybl.cgmes.conformity.Cgmes3ModifiedCatalog; import com.powsybl.cgmes.conformity.CgmesConformity1Catalog; -import com.powsybl.cgmes.conformity.CgmesConformity1ModifiedCatalog; import com.powsybl.cgmes.conversion.CgmesImportPostProcessor; import com.powsybl.cgmes.conversion.Conversion; import com.powsybl.cgmes.conversion.Conversion.*; import com.powsybl.cgmes.conversion.PhaseAngleClock; import com.powsybl.cgmes.model.GridModelReference; +import com.powsybl.cgmes.model.GridModelReferenceResources; import com.powsybl.commons.PowsyblException; +import com.powsybl.commons.datasource.ResourceSet; import com.powsybl.iidm.network.Network; import com.powsybl.iidm.network.Terminal; import com.powsybl.iidm.network.ThreeWindingsTransformer; import com.powsybl.iidm.network.TwoWindingsTransformer; +import com.powsybl.iidm.network.extensions.ThreeWindingsTransformerPhaseAngleClock; +import com.powsybl.iidm.network.extensions.TwoWindingsTransformerPhaseAngleClock; import com.powsybl.loadflow.LoadFlowParameters; import com.powsybl.loadflow.validation.ValidationConfig; import org.junit.jupiter.api.Test; @@ -31,8 +34,7 @@ import java.util.Collections; import java.util.List; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.*; /** * @author Luma Zamarreño {@literal } @@ -41,6 +43,7 @@ class TransformerConversionTest { private static final String EQUALS_LINE = "======================"; + private static final String DIR = "/issues/transformers/"; @Test void microGridBaseCaseBExfmr2ShuntDefault() { @@ -334,55 +337,47 @@ void microGridBaseCaseBExfmr3Ratio0End3() { } @Test - void miniBusBranchPhaseAngleClock() { - Conversion.Config config = new Conversion.Config(); - List postProcessors = new ArrayList<>(); - postProcessors.add(new PhaseAngleClock()); - - Network n = networkModel(CgmesConformity1Catalog.miniBusBranch(), config, postProcessors); + void phaseAngleClockTest() { + // A 2w- and a 3w-transformer with non-null phase angle clock value on respectively 2nd and 3rd winding + Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ.xml")); - boolean ok = t2xCompareFlow(n, "f1e72854-ec35-46e9-b614-27db354e8dbb", -318.691633, 1424.484145, 436.204160, 1393.367311); - assertTrue(ok); - ok = t3xCompareFlow(n, "5d38b7ed-73fd-405a-9cdb-78425e003773", -7.505045, -1.896561, -288.380946, 1216.566903, 351.090362, 1199.878285); - assertTrue(ok); - } + // Phase angle clock values have been correctly read + assertEquals(5, n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class).getPhaseAngleClock()); + assertEquals(0, n.getThreeWindingsTransformer("T3W").getExtension(ThreeWindingsTransformerPhaseAngleClock.class).getPhaseAngleClockLeg2()); + assertEquals(5, n.getThreeWindingsTransformer("T3W").getExtension(ThreeWindingsTransformerPhaseAngleClock.class).getPhaseAngleClockLeg3()); - @Test - void miniBusBranchPhaseAngleClockZero() { - Conversion.Config config = new Conversion.Config(); - List postProcessors = new ArrayList<>(); - postProcessors.add(new PhaseAngleClock()); - - Network n = networkModel(CgmesConformity1ModifiedCatalog.miniBusBranchPhaseAngleClockZero(), config, postProcessors); - - boolean ok = t2xCompareFlow(n, "f1e72854-ec35-46e9-b614-27db354e8dbb", -0.087780, -0.178561, 0.087782, 0.178613); - assertTrue(ok); - ok = t3xCompareFlow(n, "5d38b7ed-73fd-405a-9cdb-78425e003773", -0.000001, -0.000022, 0.000002, 0.000068, -0.000001, -0.000045); - assertTrue(ok); + // Power flows are calculated from SV voltages + assertTrue(t2xCompareFlow(n, "T2W", -318.691633, 1424.484145, 436.204160, 1393.367311)); + assertTrue(t3xCompareFlow(n, "T3W", -7.505045, -1.896561, -288.380946, 1216.566903, 351.090362, 1199.878285)); } @Test - void miniBusBranchT2xPhaseAngleClock1NonZero() { - Conversion.Config config = new Conversion.Config(); - List postProcessors = new ArrayList<>(); - postProcessors.add(new PhaseAngleClock()); + void phaseAngleClockAllZeroTest() { + // A 2w- and a 3w-transformer with all phase angle clock equal to 0 + Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ_AllZero.xml")); - Network n = networkModel(CgmesConformity1ModifiedCatalog.miniBusBranchT2xPhaseAngleClock1NonZero(), config, postProcessors); + // No phase angle clock extension has been created since all values are equal to 0 + assertNull(n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class)); + assertNull(n.getThreeWindingsTransformer("T3W").getExtension(ThreeWindingsTransformerPhaseAngleClock.class)); - boolean ok = t2xCompareFlow(n, "f1e72854-ec35-46e9-b614-27db354e8dbb", -318.691633, 1424.484145, 436.204160, 1393.367311); - assertTrue(ok); + // Power flows differ from the ones in phaseAngleClockTest() + assertTrue(t2xCompareFlow(n, "T2W", -0.087780, -0.178561, 0.087782, 0.178613)); + assertTrue(t3xCompareFlow(n, "T3W", -0.000001, -0.000022, 0.000002, 0.000068, -0.000001, -0.000045)); } @Test - void miniBusBranchT3xAllPhaseAngleClockNonZero() { - Conversion.Config config = new Conversion.Config(); - List postProcessors = new ArrayList<>(); - postProcessors.add(new PhaseAngleClock()); + void phaseAngleClockAllNonZeroTest() { + // A 2w- and a 3w-transformer with non-null phase angle clock value on all windings + Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ_AllNonZero.xml")); - Network n = networkModel(CgmesConformity1ModifiedCatalog.miniBusBranchT3xAllPhaseAngleClockNonZero(), config, postProcessors); + // Non-null phase angle clock values on 1st winding are discarded, the other ones are correctly read + assertEquals(5, n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class).getPhaseAngleClock()); + assertEquals(3, n.getThreeWindingsTransformer("T3W").getExtension(ThreeWindingsTransformerPhaseAngleClock.class).getPhaseAngleClockLeg2()); + assertEquals(5, n.getThreeWindingsTransformer("T3W").getExtension(ThreeWindingsTransformerPhaseAngleClock.class).getPhaseAngleClockLeg3()); - boolean ok = t3xCompareFlow(n, "5d38b7ed-73fd-405a-9cdb-78425e003773", -1494.636083, 1530.638656, 981.686099, 1826.870720, 562.199867, 309.289551); - assertTrue(ok); + // Power flows differ from the ones in phaseAngleClockTest() when the pac values differ (3w-transformer) + assertTrue(t2xCompareFlow(n, "T2W", -318.691633, 1424.484145, 436.204160, 1393.367311)); + assertTrue(t3xCompareFlow(n, "T3W", -1494.636083, 1530.638656, 981.686099, 1826.870720, 562.199867, 309.289551)); } @Test @@ -441,6 +436,13 @@ private boolean t3xCompareFlow(Network n, String id, double p1, double q1, doubl return ok; } + private Network networkModelWithPhaseAngleClock(GridModelReference gridModelReference) { + List postProcessors = new ArrayList<>(); + postProcessors.add(new PhaseAngleClock()); + + return networkModel(gridModelReference, new Conversion.Config(), postProcessors); + } + private Network networkModel(GridModelReference testGridModel, Conversion.Config config) { return networkModel(testGridModel, config, Collections.emptyList()); } @@ -457,6 +459,17 @@ private Network networkModel(GridModelReference testGridModel, Conversion.Config return n; } + private GridModelReferenceResources phaseAngleClock(String phaseAngleClockEQ) { + return new GridModelReferenceResources( + "PhaseAngleClock", + null, + new ResourceSet(DIR, + phaseAngleClockEQ, + "phaseAngleClock_SSH.xml", + "phaseAngleClock_TP.xml", + "phaseAngleClock_SV.xml")); + } + private static ValidationConfig loadFlowValidationConfig(double threshold) { ValidationConfig config = ValidationConfig.load(); config.setVerbose(true); diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ.xml new file mode 100644 index 00000000000..7224adcf0dc --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ.xml @@ -0,0 +1,296 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 120 kV + + + + + Voltage level 30 kV + + + + + Voltage level 11.5 kV + + + + + Power transformer 2-windings + + + + Power transformer 2-w end 1 + 0 + 1 + false + 0 + + + 0 + + 0 + 0 + 100 + 0 + 120 + 0 + 0.72 + 0.72 + 17.2649937 + 17.2649937 + + + + Terminal T2W_1 + 1 + + + + + Node 1 + + + + Power transformer 2-w end 2 + 2 + false + + + 0 + + 0 + 5 + 100 + 0 + 10.5 + 0 + 0 + 0 + 0 + 0 + + + + Terminal T2W_2 + 2 + + + + + Node 2 + + + + Power transformer 3-windings + + + + Power transformer 3-w end 1 + 0 + 1 + true + 0 + + + 0 + + 0 + 0 + 350 + 0 + 400 + 0 + 0.5942857143 + 0.5942857143 + 96.0051006 + 95.05666 + + + + Terminal T3W_1 + 1 + + + + + Node 3 + + + + Power transformer 3-w end 2 + 0 + 2 + false + 0 + + + 0 + + 0 + 0 + 350 + 0 + 120 + 0 + 0.05348571429 + 0.05348571429 + -0.001121283618 + -0.6881 + + + + Terminal T3W_2 + 2 + + + + + Node 4 + + + + Power transformer 3-w end 3 + 3 + false + + + 0 + + 0 + 5 + 50 + 0 + 30 + 0 + 0.02545714286 + 0.02545714286 + 1.259740894 + 1.176919 + + + + Terminal T3W_3 + 3 + + + + + Node 5 + + + + Series compensator + + 0.1 + 0.1 + false + 1000 + 250 + 1 + 1 + + + + Terminal SEC 1 + 1 + + + + + Terminal SEC 2 + 2 + + + + + Busbar section 1 + + + + Terminal BBS_1 + 1 + + + + + Busbar section 2 + + + + Terminal BBS_2 + 1 + + + + + Busbar section 3 + + + + Terminal BBS_3 + 1 + + + + + Busbar section 4 + + + + Terminal BBS_4 + 1 + + + + + Busbar section 5 + + + + Terminal BBS_5 + 1 + + + + + 400 kV + 400 + + + 120 kV + 120 + + + 30 kV + 30 + + + 11.5 kV + 11.5 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllNonZero.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllNonZero.xml new file mode 100644 index 00000000000..2155b26072b --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllNonZero.xml @@ -0,0 +1,296 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 120 kV + + + + + Voltage level 30 kV + + + + + Voltage level 11.5 kV + + + + + Power transformer 2-windings + + + + Power transformer 2-w end 1 + 0 + 1 + false + 0 + + + 0 + + 0 + 3 + 100 + 0 + 120 + 0 + 0.72 + 0.72 + 17.2649937 + 17.2649937 + + + + Terminal T2W_1 + 1 + + + + + Node 1 + + + + Power transformer 2-w end 2 + 2 + false + + + 0 + + 0 + 5 + 100 + 0 + 10.5 + 0 + 0 + 0 + 0 + 0 + + + + Terminal T2W_2 + 2 + + + + + Node 2 + + + + Power transformer 3-windings + + + + Power transformer 3-w end 1 + 0 + 1 + true + 0 + + + 0 + + 0 + 1 + 350 + 0 + 400 + 0 + 0.5942857143 + 0.5942857143 + 96.0051006 + 95.05666 + + + + Terminal T3W_1 + 1 + + + + + Node 3 + + + + Power transformer 3-w end 2 + 0 + 2 + false + 0 + + + 0 + + 0 + 3 + 350 + 0 + 120 + 0 + 0.05348571429 + 0.05348571429 + -0.001121283618 + -0.6881 + + + + Terminal T3W_2 + 2 + + + + + Node 4 + + + + Power transformer 3-w end 3 + 3 + false + + + 0 + + 0 + 5 + 50 + 0 + 30 + 0 + 0.02545714286 + 0.02545714286 + 1.259740894 + 1.176919 + + + + Terminal T3W_3 + 3 + + + + + Node 5 + + + + Series compensator + + 0.1 + 0.1 + false + 1000 + 250 + 1 + 1 + + + + Terminal SEC 1 + 1 + + + + + Terminal SEC 2 + 2 + + + + + Busbar section 1 + + + + Terminal BBS_1 + 1 + + + + + Busbar section 2 + + + + Terminal BBS_2 + 1 + + + + + Busbar section 3 + + + + Terminal BBS_3 + 1 + + + + + Busbar section 4 + + + + Terminal BBS_4 + 1 + + + + + Busbar section 5 + + + + Terminal BBS_5 + 1 + + + + + 400 kV + 400 + + + 120 kV + 120 + + + 30 kV + 30 + + + 11.5 kV + 11.5 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllZero.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllZero.xml new file mode 100644 index 00000000000..e1588bc62b5 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_EQ_AllZero.xml @@ -0,0 +1,296 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 120 kV + + + + + Voltage level 30 kV + + + + + Voltage level 11.5 kV + + + + + Power transformer 2-windings + + + + Power transformer 2-w end 1 + 0 + 1 + false + 0 + + + 0 + + 0 + 0 + 100 + 0 + 120 + 0 + 0.72 + 0.72 + 17.2649937 + 17.2649937 + + + + Terminal T2W_1 + 1 + + + + + Node 1 + + + + Power transformer 2-w end 2 + 2 + false + + + 0 + + 0 + 0 + 100 + 0 + 10.5 + 0 + 0 + 0 + 0 + 0 + + + + Terminal T2W_2 + 2 + + + + + Node 2 + + + + Power transformer 3-windings + + + + Power transformer 3-w end 1 + 0 + 1 + true + 0 + + + 0 + + 0 + 0 + 350 + 0 + 400 + 0 + 0.5942857143 + 0.5942857143 + 96.0051006 + 95.05666 + + + + Terminal T3W_1 + 1 + + + + + Node 3 + + + + Power transformer 3-w end 2 + 0 + 2 + false + 0 + + + 0 + + 0 + 0 + 350 + 0 + 120 + 0 + 0.05348571429 + 0.05348571429 + -0.001121283618 + -0.6881 + + + + Terminal T3W_2 + 2 + + + + + Node 4 + + + + Power transformer 3-w end 3 + 3 + false + + + 0 + + 0 + 0 + 50 + 0 + 30 + 0 + 0.02545714286 + 0.02545714286 + 1.259740894 + 1.176919 + + + + Terminal T3W_3 + 3 + + + + + Node 5 + + + + Series compensator + + 0.1 + 0.1 + false + 1000 + 250 + 1 + 1 + + + + Terminal SEC 1 + 1 + + + + + Terminal SEC 2 + 2 + + + + + Busbar section 1 + + + + Terminal BBS_1 + 1 + + + + + Busbar section 2 + + + + Terminal BBS_2 + 1 + + + + + Busbar section 3 + + + + Terminal BBS_3 + 1 + + + + + Busbar section 4 + + + + Terminal BBS_4 + 1 + + + + + Busbar section 5 + + + + Terminal BBS_5 + 1 + + + + + 400 kV + 400 + + + 120 kV + 120 + + + 30 kV + 30 + + + 11.5 kV + 11.5 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SSH.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SSH.xml new file mode 100644 index 00000000000..e5ba2d44b15 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SSH.xml @@ -0,0 +1,46 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/SteadyStateHypothesis/1/1 + powsybl.org + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SV.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SV.xml new file mode 100644 index 00000000000..b806a5c0be8 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_SV.xml @@ -0,0 +1,35 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/StateVariables/4/1 + powsybl.org + + + -0.006085666 + 114.258179 + + + + 0 + 10 + + + + -0.02838281 + 380.740021 + + + + -0.028382808 + 114.222008 + + + + -0.02838281 + 28.5555 + + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_TP.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_TP.xml new file mode 100644 index 00000000000..e7769d89d42 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseAngleClock_TP.xml @@ -0,0 +1,71 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase angle clock + 001 + http://entsoe.eu/CIM/Topology/4/1 + powsybl.org + + + Topological node 1 + + + + + Topological node 2 + + + + + Topological node 3 + + + + + Topological node 4 + + + + + Topological node 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From da6ac879705d4f888537231860813cd0eb41e01e Mon Sep 17 00:00:00 2001 From: Romain Courtier Date: Tue, 12 Nov 2024 15:26:18 +0100 Subject: [PATCH 2/5] Rework two windings transformers tests using a small network instead of a CGMES conformity one Signed-off-by: Romain Courtier --- .../test/TransformerConversionTest.java | 197 ++++++-------- .../twoWindingsTransformers_EQ.xml | 249 ++++++++++++++++++ .../twoWindingsTransformers_SSH.xml | 32 +++ .../twoWindingsTransformers_SV.xml | 25 ++ .../twoWindingsTransformers_TP.xml | 46 ++++ 5 files changed, 436 insertions(+), 113 deletions(-) create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_EQ.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SSH.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SV.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_TP.xml diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java index 356324ac54e..1d168f45581 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java @@ -39,6 +39,7 @@ /** * @author Luma Zamarreño {@literal } * @author José Antonio Marqués {@literal } + * @author Romain Courtier {@literal } */ class TransformerConversionTest { @@ -46,165 +47,124 @@ class TransformerConversionTest { private static final String DIR = "/issues/transformers/"; @Test - void microGridBaseCaseBExfmr2ShuntDefault() { - Conversion.Config config = new Conversion.Config(); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - } - - @Test - void microGridBaseCaseBExfmr2ShuntEnd1() { + void t2wShuntEnd1Test() { + // All shunt admittances to ground (g, b) at end1 (before transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2Shunt(Xfmr2ShuntInterpretationAlternative.END1); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); } @Test - void microGridBaseCaseBExfmr2ShuntEnd2() { + void t2wShuntEnd2Test() { + // All shunt admittances to ground (g, b) at end2 (after transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2Shunt(Xfmr2ShuntInterpretationAlternative.END2); - // Same result as End1, IIDM model and LoadFlowParameters does not allow this configuration - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + // Same result as end1, IIDM model and LoadFlowParameters don't allow this configuration + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); } @Test - void microGridBaseCaseBExfmr2ShuntEnd1End2() { + void t2wShuntEnd1End2Test() { + // Shunt admittances to ground (g, b) at the end where they are defined in CGMES model Conversion.Config config = new Conversion.Config(); config.setXfmr2Shunt(Xfmr2ShuntInterpretationAlternative.END1_END2); - // Same result as End1, IIDM model and LoadFlowParameters does not allow this configuration - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + // Same result as end1, IIDM model and LoadFlowParameters don't allow this configuration + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); } @Test - void microGridBaseCaseBExfmr2ShuntSplit() { + void t2wShuntSplitTest() { + // Split shunt admittances to ground (g, b) between end1 and end2. Conversion.Config config = new Conversion.Config(); config.setXfmr2Shunt(Xfmr2ShuntInterpretationAlternative.SPLIT); config.setXfmr3Shunt(Xfmr3ShuntInterpretationAlternative.SPLIT); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.970891, -15.839366, 94.275697, 20.952066); - assertTrue(ok); - } + Network n = networkModel(twoWindingsTransformers(), config); - @Test - void microGridBaseCaseBExfmr2RatioPhaseDefault() { - Conversion.Config config = new Conversion.Config(); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + assertTrue(t2xCompareFlow(n, "T2W", -93.970891, -15.839366, 94.275697, 20.952066)); } @Test - void microGridBaseCaseBExfmr2RatioPhaseEnd1() { + void t2wRatioPhaseEnd1Test() { + // All tapChangers (ratioTapChanger and phaseTapChanger) are considered at end1 (before transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2RatioPhase(Xfmr2RatioPhaseInterpretationAlternative.END1); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -91.807775, 98.389959, 92.184500, -89.747219); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -91.807775, 98.389959, 92.184500, -89.747219)); + assertTrue(t2xCompareFlow(n, "PST", 927.034612, -339.274880, -911.542354, 422.345850)); } @Test - void microGridBaseCaseBExfmr2RatioPhaseEnd2() { + void t2wRatioPhaseEnd2Test() { + // All tapChangers (ratioTapChanger and phaseTapChanger) are considered at end2 (after transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2RatioPhase(Xfmr2RatioPhaseInterpretationAlternative.END2); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 58.877292, -201.626411, -58.176878, 205.382102); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); + assertTrue(t2xCompareFlow(n, "PST", 58.877292, -201.626411, -58.176878, 205.382102)); } @Test - void microGridBaseCaseBExfmr2RatioPhaseEnd1End2() { + void t2wRatioPhaseEnd1End2Test() { + // TapChangers (ratioTapChanger and phaseTapChanger) are considered at the end where they are defined in CGMES Conversion.Config config = new Conversion.Config(); config.setXfmr2RatioPhase(Xfmr2RatioPhaseInterpretationAlternative.END1_END2); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); + assertTrue(t2xCompareFlow(n, "PST", 927.034612, -339.274880, -911.542354, 422.345850)); } @Test - void microGridBaseCaseBExfmr2RatioPhaseX() { + void t2wRatioPhaseXTest() { + // If x1 == 0 all tapChangers (ratioTapChanger and phaseTapChanger) are considered at the end1 + // otherwise they are considered at end2 Conversion.Config config = new Conversion.Config(); config.setXfmr2RatioPhase(Xfmr2RatioPhaseInterpretationAlternative.X); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 58.877292, -201.626411, -58.176878, 205.382102); - assertTrue(ok); - } + Network n = networkModel(twoWindingsTransformers(), config); - @Test - void microGridBaseCaseBExfmr2Ratio0Default() { - Conversion.Config config = new Conversion.Config(); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); + assertTrue(t2xCompareFlow(n, "PST", 58.877292, -201.626411, -58.176878, 205.382102)); } @Test - void microGridBaseCaseBExfmr2Ratio0End1() { + void t2wRatio0End1Test() { + // Structural ratio always at end1 (before transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2StructuralRatio(Xfmr2StructuralRatioInterpretationAlternative.END1); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -0.849849, -0.138409, 0.852591, 0.184615); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 70.106993, -25.657663, -68.935391, 31.939905); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -0.849849, -0.138409, 0.852591, 0.184615)); + assertTrue(t2xCompareFlow(n, "PST", 70.106993, -25.657663, -68.935391, 31.939905)); } @Test - void microGridBaseCaseBExfmr2Ratio0End2() { + void t2wRatio0End2Test() { + // Structural ratio always at end2 (after transmission impedance) Conversion.Config config = new Conversion.Config(); config.setXfmr2StructuralRatio(Xfmr2StructuralRatioInterpretationAlternative.END2); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); + assertTrue(t2xCompareFlow(n, "PST", 927.034612, -339.274880, -911.542354, 422.345850)); } @Test - void microGridBaseCaseBExfmr2Ratio0X() { + void t2wRatio0XTest() { + // If x1 == 0 structural ratio at end1, otherwise at end2 Conversion.Config config = new Conversion.Config(); config.setXfmr2StructuralRatio(Xfmr2StructuralRatioInterpretationAlternative.X); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - // RatioTapChanger - boolean ok = t2xCompareFlow(n, "e482b89a-fa84-4ea9-8e70-a83d44790957", -93.855301, -15.285520, 94.158074, 20.388478); - assertTrue(ok); - // PhaseTapChanger - ok = t2xCompareFlow(n, "a708c3bc-465d-4fe7-b6ef-6fa6408a62b0", 927.034612, -339.274880, -911.542354, 422.345850); - assertTrue(ok); + Network n = networkModel(twoWindingsTransformers(), config); + + assertTrue(t2xCompareFlow(n, "T2W", -93.855301, -15.285520, 94.158074, 20.388478)); + assertTrue(t2xCompareFlow(n, "PST", 927.034612, -339.274880, -911.542354, 422.345850)); } /** @@ -339,7 +299,7 @@ void microGridBaseCaseBExfmr3Ratio0End3() { @Test void phaseAngleClockTest() { // A 2w- and a 3w-transformer with non-null phase angle clock value on respectively 2nd and 3rd winding - Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ.xml")); + Network n = networkModel(phaseAngleClock("phaseAngleClock_EQ.xml"), new PhaseAngleClock()); // Phase angle clock values have been correctly read assertEquals(5, n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class).getPhaseAngleClock()); @@ -354,7 +314,7 @@ void phaseAngleClockTest() { @Test void phaseAngleClockAllZeroTest() { // A 2w- and a 3w-transformer with all phase angle clock equal to 0 - Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ_AllZero.xml")); + Network n = networkModel(phaseAngleClock("phaseAngleClock_EQ_AllZero.xml"), new PhaseAngleClock()); // No phase angle clock extension has been created since all values are equal to 0 assertNull(n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class)); @@ -368,7 +328,7 @@ void phaseAngleClockAllZeroTest() { @Test void phaseAngleClockAllNonZeroTest() { // A 2w- and a 3w-transformer with non-null phase angle clock value on all windings - Network n = networkModelWithPhaseAngleClock(phaseAngleClock("phaseAngleClock_EQ_AllNonZero.xml")); + Network n = networkModel(phaseAngleClock("phaseAngleClock_EQ_AllNonZero.xml"), new PhaseAngleClock()); // Non-null phase angle clock values on 1st winding are discarded, the other ones are correctly read assertEquals(5, n.getTwoWindingsTransformer("T2W").getExtension(TwoWindingsTransformerPhaseAngleClock.class).getPhaseAngleClock()); @@ -436,20 +396,20 @@ private boolean t3xCompareFlow(Network n, String id, double p1, double q1, doubl return ok; } - private Network networkModelWithPhaseAngleClock(GridModelReference gridModelReference) { + private Network networkModel(GridModelReference gridModelReference, CgmesImportPostProcessor postProcessor) { List postProcessors = new ArrayList<>(); - postProcessors.add(new PhaseAngleClock()); + postProcessors.add(postProcessor); return networkModel(gridModelReference, new Conversion.Config(), postProcessors); } - private Network networkModel(GridModelReference testGridModel, Conversion.Config config) { - return networkModel(testGridModel, config, Collections.emptyList()); + private Network networkModel(GridModelReference gridModelReference, Conversion.Config config) { + return networkModel(gridModelReference, config, Collections.emptyList()); } - private Network networkModel(GridModelReference testGridModel, Conversion.Config config, List postProcessors) { + private Network networkModel(GridModelReference gridModelReference, Conversion.Config config, List postProcessors) { config.setConvertSvInjections(true); - Network n = ConversionUtil.networkModel(testGridModel, config, postProcessors); + Network n = ConversionUtil.networkModel(gridModelReference, config, postProcessors); double threshold = 0.01; ValidationConfig vconfig = loadFlowValidationConfig(threshold); @@ -459,6 +419,17 @@ private Network networkModel(GridModelReference testGridModel, Conversion.Config return n; } + private GridModelReferenceResources twoWindingsTransformers() { + return new GridModelReferenceResources( + "TwoWindingsTransformers", + null, + new ResourceSet(DIR, + "twoWindingsTransformers_EQ.xml", + "twoWindingsTransformers_SSH.xml", + "twoWindingsTransformers_SV.xml", + "twoWindingsTransformers_TP.xml")); + } + private GridModelReferenceResources phaseAngleClock(String phaseAngleClockEQ) { return new GridModelReferenceResources( "PhaseAngleClock", diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_EQ.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_EQ.xml new file mode 100644 index 00000000000..4298db6c336 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_EQ.xml @@ -0,0 +1,249 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Two windings transformer + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 110 kV + + + + + Voltage level 10.5 kV + + + + + Phase shifter + + + + Phase shifter end 1 + 2.707692 + 14.518904 + 0 + 0 + 2.72 + 14.516604 + 0 + 0 + 0 + 0 + 650 + 400 + 1 + 0 + false + + + + + + + Terminal PST_E1 + 1 + + + + + Node 1 + + + + Phase shifter end 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 650 + 110 + 2 + 0 + false + + + + + + + Terminal PST_E2 + 2 + + + + + Node 2 + + + + Phase tap changer + 400 + 1 + 25 + 13 + 10 + 1.25 + 14.518904 + 14.518904 + 90.000000 + + true + + + + Phase tap changer control + + + + + Power transformer + + + + Power transformer end 1 + 0.104711 + 5.843419 + -0.0000830339 + 0.0000173295 + 0.104711 + 5.843419 + 0 + 0 + 0 + 0 + 250 + 110.343750 + 1 + 0 + false + + + + + + + Terminal T2W_E1 + 1 + + + + + Power transformer end 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 250 + 10.5 + 2 + 0 + false + + + + + + + Terminal T2W_E2 + 2 + + + + + Node 3 + + + + Ratio tap changer + 10.5 + 1 + 33 + 17 + 14 + 0.8 + true + + + + + + Ratio tap changer control + + + + + Busbar section 1 + + + + Terminal BBS_1 + 1 + + + + + Busbar section 2 + + + + Terminal BBS_2 + 1 + + + + + Busbar section 3 + + + + Terminal BBS_3 + 1 + + + + + 400 kV + 400 + + + 110 kV + 110 + + + 10.5 kV + 10.5 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SSH.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SSH.xml new file mode 100644 index 00000000000..8ce933aa40c --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SSH.xml @@ -0,0 +1,32 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Two windings transformer + 001 + http://entsoe.eu/CIM/SteadyStateHypothesis/1/1 + powsybl.org + + + 14 + true + + + true + 0.5 + + true + 10.815 + + + true + 10 + + + true + 35 + + true + -65 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SV.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SV.xml new file mode 100644 index 00000000000..e14419012d0 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_SV.xml @@ -0,0 +1,25 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Two windings transformer + 001 + http://entsoe.eu/CIM/StateVariables/4/1 + powsybl.org + + + -6.780710 + 412.989001 + + + + -9.391330 + 115.5 + + + + -7.057180 + 10.820805 + + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_TP.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_TP.xml new file mode 100644 index 00000000000..863eeb4af4d --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/twoWindingsTransformers_TP.xml @@ -0,0 +1,46 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Two windings transformer + 001 + http://entsoe.eu/CIM/Topology/4/1 + powsybl.org + + + Topological node 1 + + + + + Topological node 2 + + + + + Topological node 3 + + + + + + + + + + + + + + + + + + + + + + + + + From 85f908bb9968a1cea6acbfbd8a70cbb1554df6f9 Mon Sep 17 00:00:00 2001 From: Romain Courtier Date: Wed, 13 Nov 2024 08:59:00 +0100 Subject: [PATCH 3/5] Rework three windings transformers tests using a small network instead of a CGMES conformity one Signed-off-by: Romain Courtier --- .../test/TransformerConversionTest.java | 120 +++++------ .../threeWindingsTransformer_EQ.xml | 197 ++++++++++++++++++ .../threeWindingsTransformer_SSH.xml | 21 ++ .../threeWindingsTransformer_SV.xml | 25 +++ .../threeWindingsTransformer_TP.xml | 43 ++++ 5 files changed, 337 insertions(+), 69 deletions(-) create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_EQ.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SSH.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SV.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_TP.xml diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java index 1d168f45581..d3b3dcf8a4a 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java @@ -9,7 +9,6 @@ package com.powsybl.cgmes.conversion.test; import com.powsybl.cgmes.conformity.Cgmes3ModifiedCatalog; -import com.powsybl.cgmes.conformity.CgmesConformity1Catalog; import com.powsybl.cgmes.conversion.CgmesImportPostProcessor; import com.powsybl.cgmes.conversion.Conversion; import com.powsybl.cgmes.conversion.Conversion.*; @@ -167,133 +166,105 @@ void t2wRatio0XTest() { assertTrue(t2xCompareFlow(n, "PST", 927.034612, -339.274880, -911.542354, 422.345850)); } - /** - * Default test for: - *
    - *
  • microGridBaseCaseBExfmr3Shunt
- *
  • microGridBaseCaseBExfmr3RatioPhase - *
  • microGridBaseCaseBExfmr3Ratio0 - * - */ @Test - void microGridBaseCaseDefault() { - Conversion.Config config = new Conversion.Config(); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); - - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); - } - - @Test - void microGridBaseCaseBExfmr3ShuntNetworkSide() { + void t3wShuntNetworkSideTest() { + // Shunt admittances to ground at the network side (end1 of the leg) Conversion.Config config = new Conversion.Config(); config.setXfmr3Shunt(Xfmr3ShuntInterpretationAlternative.NETWORK_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849)); } @Test - void microGridBaseCaseBExfmr3ShuntStarBusSide() { + void t3wShuntStarBusSideTest() { + // Shunt admittances to ground at the start bus side (end2 of the leg) Conversion.Config config = new Conversion.Config(); config.setXfmr3Shunt(Xfmr3ShuntInterpretationAlternative.STAR_BUS_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849)); } @Test - void microGridBaseCaseBExfmr3ShuntSplit() { + void t3wShuntSplitTest() { + // Split shunt admittances to ground between two ends of the leg Conversion.Config config = new Conversion.Config(); config.setXfmr2Shunt(Xfmr2ShuntInterpretationAlternative.SPLIT); config.setXfmr3Shunt(Xfmr3ShuntInterpretationAlternative.SPLIT); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.231950, 2.876479, -216.194348, -85.558437, 117.981856, 92.439531); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.231950, 2.876479, -216.194348, -85.558437, 117.981856, 92.439531)); } @Test - void microGridBaseCaseBExfmr3RatioPhaseNetworkSide() { + void t3wRatioPhaseNetworkSideTest() { + // All tapChangers (ratioTapChanger and phaseTapChanger) at the network side Conversion.Config config = new Conversion.Config(); config.setXfmr3RatioPhase(Xfmr3RatioPhaseInterpretationAlternative.NETWORK_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849)); } @Test - void microGridBaseCaseBExfmr3RatioPhaseStarBusSide() { + void t3wRatioPhaseStarBusSideTest() { + // All tapChangers (ratioTapChanger and phaseTapChanger) at the star bus side Conversion.Config config = new Conversion.Config(); config.setXfmr3RatioPhase(Xfmr3RatioPhaseInterpretationAlternative.STAR_BUS_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849)); } @Test - void microGridBaseCaseBExfmr3Ratio0StarBusSide() { + void t3wRatio0StarBusSideTest() { + // Structural ratio at the star bus side of all legs and RatedU0 = RatedU1 Conversion.Config config = new Conversion.Config(); config.setXfmr3StructuralRatio(Xfmr3StructuralRatioInterpretationAlternative.STAR_BUS_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", 99.227288, 2.747147, -216.195867, -85.490493, 117.988318, 92.500849)); } @Test - void microGridBaseCaseBExfmr3Ratio0NetworkSide() { + void t3wRatio0NetworkSideTest() { + // Structural ratio at the network side of all legs. RatedU0 = 1 kv Conversion.Config config = new Conversion.Config(); config.setXfmr3StructuralRatio(Xfmr3StructuralRatioInterpretationAlternative.NETWORK_SIDE); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", -0.000166, -0.000842, -0.006802, -0.004135, 0.006989, 0.005353); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", -0.000166, -0.000842, -0.006802, -0.004135, 0.006989, 0.005353)); } @Test - void microGridBaseCaseBExfmr3Ratio0End1() { + void t3wRatio0End1Test() { + // Structural ratio at the network side of legs 2 and 3. RatedU0 = RatedU1 Conversion.Config config = new Conversion.Config(); config.setXfmr3StructuralRatio(Xfmr3StructuralRatioInterpretationAlternative.END1); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", -26.608872, -134.702971, -1088.277421, -661.570093, 1118.294368, 856.437794); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", -26.608872, -134.702971, -1088.277421, -661.570093, 1118.294368, 856.437794)); } @Test - void microGridBaseCaseBExfmr3Ratio0End2() { + void t3wRatio0End2Test() { + // Structural ratio at the network side of legs 1 and 3. RatedU0 = RatedU2 Conversion.Config config = new Conversion.Config(); config.setXfmr3StructuralRatio(Xfmr3StructuralRatioInterpretationAlternative.END2); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", -8.049184, -40.747649, -329.203920, -200.124953, 338.284046, 259.072433); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", -8.049184, -40.747649, -329.203920, -200.124953, 338.284046, 259.072433)); } @Test - void microGridBaseCaseBExfmr3Ratio0End3() { + void t3wRatio0End3Test() { + // Structural ratio at the network side of legs 1 and 2. RatedU0 = RatedU2 Conversion.Config config = new Conversion.Config(); config.setXfmr3StructuralRatio(Xfmr3StructuralRatioInterpretationAlternative.END3); - Network n = networkModel(CgmesConformity1Catalog.microGridBaseCaseBE(), config); + Network n = networkModel(threeWindingsTransformer(), config); - // RatioTapChanger - boolean ok = t3xCompareFlow(n, "84ed55f4-61f5-4d9d-8755-bba7b877a246", -0.073341, -0.371275, -2.999565, -1.823453, 3.082299, 2.360557); - assertTrue(ok); + assertTrue(t3xCompareFlow(n, "T3W", -0.073341, -0.371275, -2.999565, -1.823453, 3.082299, 2.360557)); } @Test @@ -430,6 +401,17 @@ private GridModelReferenceResources twoWindingsTransformers() { "twoWindingsTransformers_TP.xml")); } + private GridModelReferenceResources threeWindingsTransformer() { + return new GridModelReferenceResources( + "ThreeWindingsTransformer", + null, + new ResourceSet(DIR, + "threeWindingsTransformer_EQ.xml", + "threeWindingsTransformer_SSH.xml", + "threeWindingsTransformer_SV.xml", + "threeWindingsTransformer_TP.xml")); + } + private GridModelReferenceResources phaseAngleClock(String phaseAngleClockEQ) { return new GridModelReferenceResources( "PhaseAngleClock", diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_EQ.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_EQ.xml new file mode 100644 index 00000000000..34a58e83819 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_EQ.xml @@ -0,0 +1,197 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Three windings transformer + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 220 kV + + + + + Voltage level 21 kV + + + + + Three windings transformer + + + + Three windings transformer end 1 + 0.898462 + 17.204128 + 0.0000024375 + 0 + 0 + 17.230769 + 0 + 0 + 0 + 0 + 650 + 400 + 1 + 0 + false + + + + + + + Terminal T3W_E1 + 1 + + + + + Node 1 + + + + Three windings transformer end 2 + 0.323908 + 5.949086 + 0 + 0 + 0 + 5.956923 + 0 + 0 + 0 + 0 + 650 + 220 + 2 + 0 + false + + + + + + + Terminal T3W_E2 + 2 + + + + + Node 2 + + + + Ratio tap changer + 220 + 1 + 33 + 17 + 17 + 0.625 + true + + + + + + Tap changer control + + + + + Three windings transformer end 3 + 0.013332 + 0.059978 + 0 + 0 + 0 + 0.061062 + 0 + 0 + 0 + 0 + 650 + 21 + 3 + 0 + false + + + + + + + Terminal T3W_E3 + 3 + + + + + Node 3 + + + + Busbar section 1 + + + + Terminal BBS_1 + 1 + + + + + Busbar section 2 + + + + Terminal BBS_2 + 1 + + + + + Busbar section 3 + + + + Terminal BBS_3 + 1 + + + + + 400 kV + 400 + + + 220 kV + 220 + + + 21 kV + 21 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SSH.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SSH.xml new file mode 100644 index 00000000000..64cf66e4496 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SSH.xml @@ -0,0 +1,21 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Three windings transformer + 001 + http://entsoe.eu/CIM/SteadyStateHypothesis/1/1 + powsybl.org + + + 17 + false + + + true + 0.5 + + false + 0 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SV.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SV.xml new file mode 100644 index 00000000000..a9d1205802f --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_SV.xml @@ -0,0 +1,25 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Two windings transformer + 001 + http://entsoe.eu/CIM/StateVariables/4/1 + powsybl.org + + + 412.989001 + -6.780710 + + + + 224.315268 + -8.770120 + + + + 21.987000 + -6.650800 + + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_TP.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_TP.xml new file mode 100644 index 00000000000..b5bdbf8f1f3 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/threeWindingsTransformer_TP.xml @@ -0,0 +1,43 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Three windings transformer + 001 + http://entsoe.eu/CIM/Topology/4/1 + powsybl.org + + + Topological node 1 + + + + + Topological node 2 + + + + + Topological node 3 + + + + + + + + + + + + + + + + + + + + + + From 12ffdd887c320b9db53f2e602f3ad1c268d9d856 Mon Sep 17 00:00:00 2001 From: Romain Courtier Date: Wed, 13 Nov 2024 10:39:16 +0100 Subject: [PATCH 4/5] Rework phase tap changer with 0 xMin test using a small network instead of a modified CGMES conformity one Signed-off-by: Romain Courtier --- .../conformity/Cgmes3ModifiedCatalog.java | 19 - .../20210209T1930Z_1D_BE_EQ_9.xml | 2325 ----------------- .../test/TransformerConversionTest.java | 26 +- .../transformers/phaseTapChanger_xMin.xml | 285 ++ 4 files changed, 296 insertions(+), 2359 deletions(-) delete mode 100644 cgmes/cgmes-conformity/src/main/resources/cgmes3-test-models-modified/MicroGrid/phaseTapChangerXMin/20210209T1930Z_1D_BE_EQ_9.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseTapChanger_xMin.xml diff --git a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/Cgmes3ModifiedCatalog.java b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/Cgmes3ModifiedCatalog.java index 3bed8e82579..fd5cd4ce1f9 100644 --- a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/Cgmes3ModifiedCatalog.java +++ b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/Cgmes3ModifiedCatalog.java @@ -97,25 +97,6 @@ public static GridModelReferenceResources microGridBaseCaseGeographicalRegionInB new ResourceSet(base, CGMES_3_MICRO_GRID_EQ_BD)); } - public static GridModelReferenceResources microGridBaseCasePhaseTapChangerXMin() { - String base = CGMES_3_MODIFIED_TEST_MODELS - + "/MicroGrid/phaseTapChangerXMin/"; - return new GridModelReferenceResources( - "MicroGrid-phaseTapChanger-xMin", - null, - new ResourceSet(base, CGMES_3_MICRO_GRID_BE_EQ), - new ResourceSet(CGMES_3_MICRO_GRID_BASE, - CGMES_3_MICRO_GRID_ASSEMBLED_DL, - CGMES_3_MICRO_GRID_ASSEMBLED_SV, - CGMES_3_MICRO_GRID_BE_GL, - CGMES_3_MICRO_GRID_BE_SSH, - CGMES_3_MICRO_GRID_NL_EQ, - CGMES_3_MICRO_GRID_NL_GL, - CGMES_3_MICRO_GRID_NL_SSH, - CGMES_3_MICRO_GRID_ASSEMBLED_TP), - new ResourceSet(CGMES_3_MICRO_GRID_BASE, CGMES_3_MICRO_GRID_EQ_BD)); - } - public static GridModelReferenceResources microGridBaseCaseAllTypesOfLoads() { String base = CGMES_3_MODIFIED_TEST_MODELS + "/MicroGrid/allTypesOfLoads/"; diff --git a/cgmes/cgmes-conformity/src/main/resources/cgmes3-test-models-modified/MicroGrid/phaseTapChangerXMin/20210209T1930Z_1D_BE_EQ_9.xml b/cgmes/cgmes-conformity/src/main/resources/cgmes3-test-models-modified/MicroGrid/phaseTapChangerXMin/20210209T1930Z_1D_BE_EQ_9.xml deleted file mode 100644 index 848e3f43c2c..00000000000 --- a/cgmes/cgmes-conformity/src/main/resources/cgmes3-test-models-modified/MicroGrid/phaseTapChangerXMin/20210209T1930Z_1D_BE_EQ_9.xml +++ /dev/null @@ -1,2325 +0,0 @@ - - - - 2021-02-09T19:28:14Z - 2021-02-09T19:30:00Z - CGMES Conformity Assessment Test Configuration. The Test Configuration is owned by ENTSO-E and is provided by ENTSO-E “as it is”. To the fullest extent permitted by law, ENTSO-E shall not be liable for any damages of any kind arising out of the use of the model (including any of its subsequent modifications). ENTSO-E neither warrants, nor represents that the use of the model will not infringe the rights of third parties. Any use of the model shall include a reference to ENTSO-E. ENTSO-E web site is the only official source of information related to the model. - http://elia.be/CGMES - http://iec.ch/TC57/ns/CIM/CoreEquipment-EU/3.0 - http://iec.ch/TC57/ns/CIM/Operation-EU/3.0 - 5 - - http://iec.ch/TC57/ns/CIM/ShortCircuit-EU/3.0 - - - BE LoadArea - 6ab47762-da13-45de-885b-98e1e409972f - - - ELIA-Anvers SubLoadArea - - 7521cc3f-7c69-493b-b72a-3f20d72d8a56 - - - ELIA-Brussels SubLoadArea - - 8e1e7c28-cd22-40c6-b289-21b3bd365dc3 - - - BE - _7bf89875-1476-4d1a-a56d-a2965cce3575 - - - ELIA-Anvers - - 02047c0b-b5a4-4e0d-bae6-fc5437a55e74 - - - Anvers - Anvers - - 87f7002b-056f-4a6a-a872-1744eea757e3 - - - ELIA-Brussels - - 61378219-a236-4070-bbec-4e30a6ac848d - - - PP_Brussels - PP_Brussels - - 37e14a0f-5e34-4647-a062-8bfd9305fa9d - - - 110.0 - 121 - 99 - - - 8bbd7e74-ae20-4dce-8780-c20f8e18c2e0 - - - BE_TR_BUS3 - - 56ca173b-fd2d-4ef3-bc32-4ae86a318c39 - - - 380.0 - 418 - 342 - - - 469df5f7-058f-4451-a998-57a48e8a56fe - - - N1230991739 - - 3a849ea6-8dd5-4406-ac11-c89db47ef753 - - - 225.0 - 247.5 - 202.5 - - - 69ef0dbd-da79-4eef-a02f-690cb8a28361 - - - N1230992414 - BE-B_3 - - 36f63f4c-df3b-4507-baf5-bb4934c09183 - - - N1230992414 - - d6986ea6-fadc-4113-806a-a8f95f62c216 - - - N1230992414_Busbar_Section - 1 - - - ad794c0e-b9ec-420b-ada1-97680e3dde05 - - - BE_BUSBAR_12 - - bb6a1e59-1071-4985-b80f-d227cf133067 - - - BE_TR_BUS1 - - d5b267d8-29d8-434b-b3aa-08f8f3435fc0 - - - BE-Busbar_1 - BE-B_1 - - 4836f99b-c6e9-4ee8-a956-b1e3da882d46 - - - BE-Busbar_1 - - 64901aec-5a8a-4bcb-8ca7-a3ddbfcd0e6c - - - BE-Busbar_1_Busbar_Section - 1 - - - fa9e0f4d-8a2f-45e1-9e36-3611600d1c94 - - - 21.0 - 23.1 - 18.9 - - - 929ba893-c9dc-44d7-b1fd-30834bd3ab85 - - - BE_BUSBAR_10 - - 84c93a56-e0ca-4deb-a2ce-5eeb10682cab - - - BE-Busbar_2 - BE-B_2 - - ae99bd74-26b1-443a-b1a5-656320283a36 - - - BE-Busbar_2 - - ef45b632-3028-4afe-bc4c-a4fa323d83fe - - - BE-Busbar_2_Busbar_Section - 1 - - - 800ada75-8c8c-4568-aec5-20f799e45f3c - - - N1230991550 - - 29a37807-af63-402d-ac87-2e248d844793 - - - BE-Busbar_5 - BE-B_5 - - f51dce2d-2dc6-4cfe-9486-f9d9a5b0fe33 - - - BE-Busbar_6 - BE-B_6 - - 1695eb20-9044-4133-a3fd-2147f55f170d - - - BE-Busbar_6 - - 5000 - 364c9ca2-0d1d-4363-8f46-e586f8f66a8c - - - BE-Busbar_6_Busbar_Section - 1 - - - a1b46f53-86f1-497e-bf57-c3b6268bcd6c - - - BE_TR_BUS5 - - 3293fcc7-4962-47df-a7c1-ce150600c388 - - - 225.0 - 247.5 - 202.5 - - - b10b171b-3bc5-4849-bb1f-61ed9ea1ec7c - - - BE_TR_BUS4 - - a09067cc-e7b3-4743-8134-f5e42b32e88a - - - N1230991529 - - 21032053-e646-46a7-9a09-6a9a96dbf108 - - - BE-Busbar_3 - BE-B_3 - - bf851342-832e-4ea2-b2ad-b09729b3af23 - - - BE-Busbar_3 - - 5caf27ed-d2f8-458a-834a-6b3193a982e6 - - - BE-Busbar_3_Busbar_Section - 1 - - - 62fc0a4e-00aa-4bf7-b1a0-3a5b2c0b5492 - - - N1230991724 - - f33cc626-2c46-46b6-8536-88f30ab532cb - - - N1230992291 - BE-B_3 - - 2dde989e-28c3-45f0-aa21-8695843ce894 - - - N1230992291 - - c8ce5e08-5ee3-42d9-aa44-5792db252d9f - - - N1230992291_Busbar_Section - 1 - - - 302fe23a-f64d-41bd-8a81-78130433916d - - - N1230992288 - BE-B_3 - - 18dca121-6c3b-440f-8bf4-8e365b8af551 - - - N1230992288 - - 63f25be7-7592-4cf1-8401-5772046ef2ae - - - N1230992288_Busbar_Section - 1 - - - 8f1c492f-a7cc-4160-9a14-54f1743e4850 - - - 10.5 - 11.55 - 9.45 - - - 4ba71b59-ee2f-450b-9f7d-cc2f1cc5e386 - - - BE-Busbar_4 - BE-B_4 - - 0f074167-d8ad-40ed-b0fa-7dc7e9f5f77c - - - BE-Busbar_4 - - fd649fe1-bdf5-4062-98ea-bbb66f50402d - - - BE-Busbar_4_Busbar_Section - 1 - - - 65b8c937-9b25-4b9e-addf-602dbc1337f9 - - - BE_TR_BUS2 - - 93cec50e-e92e-4773-b408-e2419dad090d - - - Series Compensator - - af14c8ab-eb51-42be-89cb-abbcf37e20a3 - - - N1230992411 - BE-B_3 - - d0aad282-7c05-4990-b0cf-d9168815048e - - - N1230992411 - - 8da0ff82-2f23-4231-ac9b-28b9c9141432 - - - N1230992411_Busbar_Section - 1 - - - 3c6d83a3-b5f9-41a2-a3d9-cf15d903ed0a - - - CIRCB-1230992408 - false - - false - false - 0a84038e-1952-4d9d-9909-3b49c364a1ac - - - BE_Breaker_2 - false - - false - false - 6b564930-b5e2-49d3-9d06-e1de28d6fd65 - - - CIRCB-1230991544 - false - - false - false - 484536e9-762a-49a3-9970-d60b9fae03fe - - - BE_Breaker_10 - false - - false - false - 969470b9-e74c-40d2-b3f7-bcfd88400fd1 - - - CIRCB-1230992399 - false - - false - false - fd136c65-d001-41a1-adc7-c5430b5c5e72 - - - BE_Breaker_3 - false - - false - false - 2922c1dd-4113-466e-8cad-002572f3f557 - - - CIRCB-1230991736 - false - - false - false - 0e8cd279-ad5d-485a-b3a9-093ae8714b72 - - - CIRCB-1230992276 - false - - false - false - 3b394dab-ab47-4022-98be-8123c6dfe7d4 - - - BE_Breaker_12 - false - - false - false - 96c2b5c8-8e28-4b08-96d2-ca9b09cdbd83 - - - CIRCB-1230992285 - false - - false - false - ddc148fc-3abd-459d-aec1-396283e0def6 - - - BE_Breaker_5 - false - - false - false - 6e86cd52-4594-435e-92ce-6dc673288ab4 - - - CIRCB-1230991718 - false - - false - false - 14d55344-c118-4f54-a430-72f16d12bf7b - - - BE_Breaker_1 - false - - false - false - 38dfcc80-600f-44e2-8f71-fb595b4f00ac - - - BE_Breaker_4 - false - - false - false - a603d890-5d9d-42ef-98d0-acf47d121c0e - - - CIRCB-1230991526 - false - - false - false - 925a3a38-cd26-4f89-8891-c5bc8494e1ae - - - BE-Inj-XZE_ST23 - Eq_Injection - BE-I-XZE_ST2 - - 0 - 0 - 0 - false - 0 - 0 - 0 - 87ea56f3-962a-427a-85d6-13b1f9295174 - - - - BE-Inj-XZE_ST24 - Eq_Injection - BE-I-XZE_ST2 - - 0 - 0 - 0 - false - 0 - 0 - 0 - f7f61a91-eca2-4492-8bd7-9ec2b28fc837 - - - - BE-Inj-XWI_GY11 - Eq_Injection - BE-I-XWI_GY1 - - 0 - 0 - 0 - false - 0 - 0 - 0 - 6f014d4c-c1b0-4eed-8d6d-bae3bc87afcf - - - - BE-Inj-XKA_MA11 - Eq_Injection - BE-I-XKA_MA1 - - 0 - 0 - 0 - false - 0 - 0 - 0 - 14b352cb-5574-40c5-bf83-0ed3574554a3 - - - - BE-Inj-XCA_AL11 - Eq_Injection - BE-I-XCA_AL1 - - 0 - 0 - 0 - false - 0 - 0 - 0 - 24413233-26c3-4f7e-9f72-4461796938be - - - - BE-Line_5 - 10T-AT-DE-00009W - 10T-AT-DE-00009W - BE-L_5 - false - - - 35 - 3.40863E-05 - 6.59734E-05 - 4.2E-05 - 4.2E-05 - 0.42 - 1.26 - 160 - 6.3 - 18.9 - b18cd1aa-7808-49b9-a7cf-605eaf07b006 - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_5 at Port 2 - - b639998f-3a5c-496d-96fd-759131b6c307 - - - PATL - - - 1876 - 6ee07f23-59d3-4de0-a730-47bcb6d7a0cc - - - TATL - - - 500 - bfac8992-f589-493e-a7e2-dfe6d5b91044 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_5 at Port 1 - - 4af71c73-fd57-45d2-aa83-f1b52fcc3bee - - - PATL - - - 1876 - af73fcf1-d40c-4350-81b0-b25645a5170f - - - TATL - - - 500 - 7ace5f66-ca42-415c-b15e-7c137c631b08 - - - BE-Line_3 - 10T-AT-DE-00008Y - 10T-AT-DE-00008Y - BE-L_3 - false - - - 30 - 2.92168E-05 - 0.000149854 - 6E-05 - 6E-05 - 1.05 - 3.15 - 160 - 12 - 36 - 78736387-5f60-4832-b3fe-d50daf81b0a6 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_3 at Port 1 - - 99941f7a-11bb-4a7b-928b-ef8145db7799 - - - PATL - - - 1233.9 - fe392eba-9ca0-47e1-8562-ceca886b81bf - - - TATL - - - 500 - 7879d0ee-6c40-4766-91d2-4ce527f097e2 - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_3 at Port 2 - - 0acd95d7-aff7-41f6-aa8a-863c42f4bc36 - - - PATL - - - 1233.9 - 0ba70561-d603-4238-8d6c-f49a0751dddf - - - TATL - - - 500 - 1aa9b61b-03ae-4dc3-b985-8a7840630eed - - - BE-Line_4 - to be connected to the boundary set - BE-L_4 - false - - - 40 - 6.28319E-05 - 2.51956E-05 - 4E-05 - 4E-05 - 0.24 - 0.72 - 160 - 2 - 6 - ed0c5d75-4a54-43c8-b782-b20d7431630b - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_4 at Port 2 - - b93ba071-c1d4-4c7a-960d-48dcd5d7c389 - - - PATL - - - 1226 - 29258f79-f877-4bfe-a169-68db7176110b - - - TATL - - - 500 - 59e373f9-96fc-451a-85c9-b75f30ec8848 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_4 at Port 1 - - 67fa7320-7477-47e9-89ff-e3a407644aef - - - PATL - - - 1226 - e8b7c916-6157-484d-8887-a2a79e9fc59f - - - TATL - - - 500 - dc0e417c-cf34-4484-a909-ba9549621078 - - - BE-Line_1 - 10T-AT-DE-000061 - 10T-AT-DE-000061 - BE-L_1 - false - - - 22 - 2.62637E-05 - 8.2938E-05 - 3.08E-05 - 3.08E-05 - 2.2 - 6.6 - 160 - 68.2 - 204.6 - 17086487-56ba-4979-b8de-064025a6b4da - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_1 at Port 2 - - a5b37323-8f73-449a-8931-f73193d95587 - - - PATL - - - 1500 - d31e6626-f696-4d7e-bd75-07b09b992bae - - - TATL - - - 500 - f3cc39ae-99e2-4a19-b725-ebc88ba51d35 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_1 at Port 1 - - aef3c15e-c567-476a-83ad-3fe46c817fb2 - - - PATL - - - 1500 - 28d3bee2-1634-4cd0-806c-0931cac4bd9c - - - TATL - - - 500 - ad16769b-4fad-4017-ab5f-a4eb96bdc5e7 - - - BE-Line_7 - 10T-AT-DE-000061 - 10T-AT-DE-000061 - BE-L_7 - false - - - 23 - 2.89027E-05 - 2.1677E-05 - 5.75E-05 - 5.75E-05 - 4.6 - 13.8 - 160 - 69 - 207 - a16b4a6c-70b1-4abf-9a9d-bd0fa47f9fe4 - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_7 at Port 2 - - 00672e1a-599a-44f3-aeaa-5a3c99c29ba1 - - - PATL - - - 1062 - 51e4c1ab-a505-43fb-9bdc-45c51d6b2581 - - - TATL - - - 500 - c339b64c-6834-4eb4-ab70-5990422b6337 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_7 at Port 1 - - 56c9ef56-9268-47e6-bed2-044324c03830 - - - PATL - - - 1062 - 631a5891-a1f3-46b6-b5a5-a09db8b904d1 - - - TATL - - - 500 - 2b233cc2-30de-4a58-a7b4-c96f862c4eae - - - container of BE-Line_6 - - cc4b99a5-e20d-407c-9d8e-a682b9723613 - - - BE-Line_6 - TYNDP project BE-4; map reference 567 - BE-L_6 - true - - - 100 - 0.0001476549 - 2.00119E-05 - 0.00012 - 0.00012 - 5.203 - 15 - 160 - 71 - 213 - ffbabc27-1ccd-4fdc-b037-e341706c8d29 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_6 at Port 1 - - cb5b5011-9f6c-4af2-93f9-26ae7e30c8db - - - PATL - - - 1312 - 2eb563f4-76d2-4aac-9d4d-215da4ea6586 - - - TATL - - - 500 - c733f2b6-b563-4c9e-af72-e42d52fd00d3 - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_6 at Port 2 - - 30cbcb48-f02e-4791-83ab-486d7688874c - - - PATL - - - 1312 - 97bcf2de-9ce1-469b-b258-4ed51696328b - - - TATL - - - 500 - 96b1e452-9a13-46bd-9b24-7f214423ba01 - - - container of BE-Line_2 - - b5d6ed2b-c961-4521-8aef-b943d7dc6c15 - - - BE-Line_2 - 10T-AT-DE-00010A - 10T-AT-DE-00010A - BE-L_2 - true - - - 45 - 6.64447E-05 - 4.24115E-05 - 6.75E-05 - 6.75E-05 - 1.935 - 3.195 - 160 - 34.2 - 102.6 - b58bf21a-096a-4dae-9a01-3f03b60c24c7 - - - Limits at Port 1 - Limit-Ratings for branch BE-Line_2 at Port 1 - - ecc2f619-5716-4af0-9d76-0631a3832e4f - - - PATL - - - 1574 - 11aebb44-01eb-42d7-a2d6-91534c00141d - - - TATL - - - 500 - 2b2f7220-3e87-41cd-a13e-23fb4ad797b5 - - - Limits at Port 2 - Limit-Ratings for branch BE-Line_2 at Port 2 - - 7168dee1-15a7-4444-839f-feef071e956d - - - PATL - - - 1574 - 9dd2280b-2c66-4425-8b7c-7f62a7faed1f - - - TATL - - - 500 - 41f2dcaf-edb5-4a88-8c34-8ac421f06974 - - - BE-Load_2 - EVN - BE-L_2 - false - - - 1c6beed6-1acf-42e7-ba55-0cc9f04bddd8 - - - ELIA-BrusselsconfLoadGr - - e20dfefd-63d6-4324-862d-15b74423d064 - - - BE-Load_1 - Electrabel - BE-L_1 - false - - - cb459405-cc14-4215-a45c-416789205904 - - - L-1230804819 - Eq_Injection - L-1230804819 - false - - - - b1480a00-b427-4001-a26c-51954d2bb7e9 - - - ELIA-AnversconfLoadGr - - dd357cc1-c41e-455c-92cf-2a572191dc48 - - - L-1230804819 - false - 0 - 0 - 1 - 0 - 0 - 1 - 8e3e7a69-a64a-43a8-906e-82cc63edfcd3 - - - SER-RLC-1230822986 - - 0 - 0 - true - 500 - 250 - -31.83099 - -31.83099 - - df16b3dd-c905-4a6f-84ee-f067be86f5da - - - SER-RLC-1230822986 - - 38c765fb-5707-404a-87f6-ace386edce11 - - - PATL - - - 500 - 28338dd1-b451-49f5-9c06-40bda7b53a75 - - - SER-RLC-1230822986 - - 653b4e65-a657-40fc-b987-c9e28104410f - - - PATL - - - 500 - dd1f9fb4-78f3-4ea9-b09f-755a94154385 - - - BE_S1 - shunt with 4 sections - BE_S1 - false - - - true - 1 - 110 - 1 - 0 - 0.02479339 - 0 - 0 - d771118f-36e9-4115-a128-cc3d9ce3e3da - - - BE_S1 - - - 4d50f86d-0d12-4ca3-9430-56bb05f9eee6 - - - BE_S2 - another shunt - BE_S2 - false - - - true - 5 - 380 - 1 - 002b0a40-3957-46db-b84a-30420083558f - - - 0.0003459834 - 0 - 2.18E-06 - 2.18E-06 - 1 - - - - 0.0001729917 - 0 - 2.18E-06 - 2.18E-06 - 2 - - - - 0.0001389889 - 0 - 2.18E-06 - 2.18E-06 - 3 - - - - 6.897507E-05 - 0 - 2.18E-06 - 2.18E-06 - 4 - - - - 3.49723E-05 - 0 - 2.18E-06 - 2.18E-06 - 5 - - - - BE_S2 - - - bee06911-8d5c-44c4-b2d2-5c22a461b5a0 - - - SVC-1230797516 - - - 5062.5 - -5062.5 - 0.102 - 3c69652c-ff14-4550-9a87-b6fdaccbb5f4 - - - SVC-1230797516 - - - caf65447-3cfb-48d7-aaaa-cd9af3d34261 - - - BE-G2 - Machine - BE-G2 - false - - - 0.85 - 300 - 21 - - true - 0 - 0 - 0 - 200 - -200 - 0 - 100 - 0 - 0 - 0 - 0.2 - 2 - 0 - - - 0 - 0.13 - 0.17 - 550ebe0d-f2b2-48c1-991f-cebea43a21aa - - - Gen-1229753024 - Machine - false - - - 200 - 50 - 255 - 5b7a4d43-09ec-4033-882d-64a76d557631 - - - BE-G1 - Machine - BE-G1 - false - - - 0.85 - 300 - 10.5 - - true - 0 - 0 - 0 - 300 - -300 - 0 - 50 - 0 - 0 - 0 - 0.2 - 2 - 0 - - - 0 - 0.13 - 0.171 - - 3a3b27be-b18b-4385-b557-6735d733baf0 - - - Gen-1229753060 - Machine - false - - - 200 - -100 - 255 - 18993b11-2966-4bce-bab9-d86103f83b53 - - - BE-G1CapabilityCurve - - - - - 59ff1e53-0e1a-44c0-ada5-7a0b3a660170 - - - -100 - -200 - 200 - - - - 0 - -300 - 300 - - - - 200 - -200 - 200 - - - - BE-TR2_2 - This is T2 in the center - BE-T_2 - false - - false - false - b94318f6-6d24-4f56-96b9-df2531ad6543 - - - BE-TR2_2 - 1 - false - 0 - 0 - - - 0 - 0 - - 0 - 0 - 0 - 0.8228 - 0.8228 - 650 - 220 - 11.13888 - 11.13888 - - 3c59d1b0-1ee9-4ca3-9086-4fe102b51b21 - - - BE-TR2_2 - 2 - false - 0 - 0 - - - 0 - 0 - - 0 - 0 - 0 - 0 - 0 - 650 - 110 - 0 - 0 - - ba56158e-0c51-448d-999b-44cb0b3cebf5 - - - BE-TR2_2 - 25 - 1 - true - 13 - 220 - 10 - - 1.25 - 11.88148 - 0.0 - 30 - 36b83adb-3d45-4693-8967-96627b5f9ec9 - - - Limits at Port 2 - Limit-Ratings for branch BE-TR2_2 at Port 2 - - d6f4f557-12b9-4b53-9e99-2d2ed8cd11dd - - - PATL - - - 3411.617 - 4f50fcc3-7a30-46e4-ba6a-314bb72e5181 - - - Limits at Port 1 - Limit-Ratings for branch BE-TR2_2 at Port 1 - - 88aa13e4-d3fe-4c47-9e47-39f8bb805e73 - - - PATL - - - 1705.808 - b70180fc-cc97-41c5-aab6-e00a7b52fef4 - - - BE-TR2_1 - T1 that is after maintenance - BE-T_1 - false - - false - false - a708c3bc-465d-4fe7-b6ef-6fa6408a62b0 - - - BE-TR2_1 - 1 - false - 0 - 0 - - - 0 - 0 - - 0 - 0 - 0 - 2.707692 - 2.72 - 650 - 400 - 14.5189 - 14.5166 - - bf76ac9d-0144-48f5-a24a-34ae15a455fb - - - BE-TR2_1 - 2 - false - 0 - 0 - - - 0 - 0 - - 0 - 0 - 0 - 0 - 0 - 650 - 110 - 0 - 0 - - e22f3c30-63f5-47bf-a8c4-fee2483d426c - - - BE-TR2_1 - - - f43499bf-6bf3-483d-ae2a-e46d696a66b2 - - - BE-TR2_1 - 25 - 1 - true - 13 - 400 - 10 - - - 1.25 - 16.93872 - 63454a73-f439-45bb-951a-e7b193986571 - - - Limits at Port 2 - Limit-Ratings for branch BE-TR2_1 at Port 2 - - 3b5aa2ae-a3fb-4ea6-9941-f7ccd2c6d925 - - - PATL - - - 3411.617 - a38be74a-351c-48fd-94d6-299258473614 - - - Limits at Port 1 - Limit-Ratings for branch BE-TR2_1 at Port 1 - - 0b7c4239-3c1b-438e-994d-f2a402ba743c - - - PATL - - - 938.1946 - f4a1899a-5050-4d4b-8aa0-399344bd5c62 - - - BE-TR2_3 - This is free description - BE-T_3 - false - - false - false - e482b89a-fa84-4ea9-8e70-a83d44790957 - - - BE-TR2_3 - 1 - false - 0 - 0 - - - -8.30339E-05 - 0 - - 1.73295E-05 - 0 - 0 - 0.104711 - 0.104711 - 250 - 110.3438 - 5.843419 - 5.843419 - - f58281c5-862a-465e-97ec-d809be6e24ab - - - BE-TR2_3 - 2 - false - 0 - 0 - - - 0 - 0 - - 0 - 0 - 0 - 0 - 0 - 250 - 10.5 - 0 - 0 - - 35651e25-a77a-46a1-92f4-443d6acce90e - - - BE-TR2_3 - 33 - 1 - true - 17 - 10.5 - 14 - 0.8 - - 83cc66dd-8d93-4a2c-8103-f1f5a9cf7e2e - - - Limits at Port 1 - Limit-Ratings for branch BE-TR2_3 at Port 1 - - e40d809b-2f3f-4866-817d-7acec0fde34f - - - PATL - - - 1308.073 - cad59010-1344-48b3-bc5d-6a11137f2715 - - - Limits at Port 2 - Limit-Ratings for branch BE-TR2_3 at Port 2 - - 40b75fae-2597-40df-98d2-8a0d83c238fd - - - PATL - - - 13746.44 - f48991a6-fe4f-417a-9362-4fc624bb2258 - - - BE-TR3_1 - new in 2015 - BE-T_1 - - false - 84ed55f4-61f5-4d9d-8755-bba7b877a246 - - - BE-TR3_1 - 1 - false - - - -2.4375E-06 - -2.4375E-06 - - 0 - 0 - 0 - 0.898462 - 0 - 650 - 400 - 17.20413 - 17.23077 - - 5f68a129-d5d8-4b71-9743-9ca2572ba26b - - - BE-TR3_1 - 2 - false - - - 0 - 0 - - 0 - 0 - 0 - 0.323908 - 0 - 650 - 220 - 5.949086 - 5.956923 - - e1f661c0-971d-4ce5-ad39-0ec427f288ab - - - BE-TR3_1 - 3 - false - - - 0 - 0 - - 0 - 0 - 0 - 0.013332 - 0 - 650 - 21 - 0.059978 - 0.061062 - - 2e21d1ef-2287-434c-a767-1ca807cf2478 - - - BE-TR3_1 - 33 - 1 - true - 17 - 220 - 17 - 0.625 - - fe25f43a-7341-446e-a71a-8ab7119ba806 - - - Limits at Port 1 - Limit-Ratings for branch BE-TR3_1 at Port 1 - - b655ab41-8bc0-4bd3-a28c-cf9048e32b4a - - - PATL - - - 938.1946 - cef9755c-bfa7-47da-8d78-a383248bdd98 - - - Limits at Port 3 - Limit-Ratings for branch BE-TR3_1 at Port 3 - - f4fb6a66-b9f6-4c71-bdd2-7e97938d1fe1 - - - PATL - - - 17870.37 - a0705e3f-b856-4816-9f12-be4c02d25cc6 - - - Limits at Port 2 - Limit-Ratings for branch BE-TR3_1 at Port 2 - - a2f11542-aeb8-4d7c-9594-25ac63e148bb - - - PATL - - - 1705.808 - 0c31b120-e79a-4bde-9b40-b496de48a4f9 - - - 10.50 kV - Base Voltage Level - 10.50 - 10.5 - 862a4658-6b03-4550-9de2-b5c413912b75 - - - 110.00 kV - Base Voltage Level - 110.00 - 110 - 00b17311-075f-48f6-a79b-597f42af4694 - - - 21.00 kV - Base Voltage Level - 21.00 - 21 - 1cefd53a-79bd-4ad4-aa9a-5a4ad0191ce2 - - - Terminal - 2 - - - - 02a244ca-8bcb-4e25-8613-e948b8ba1f22 - - - Terminal - 1 - - - - 051d49ba-4360-4372-86bf-50eb8cf29778 - - - Terminal - 2 - - - - ab7ece75-d726-48c8-a924-b0a9325e6d51 - - - Terminal - 1 - - - - 4c19ace6-c825-4c5b-87d9-031e6e6a3379 - - - Terminal - 1 - - - - 231a4cf8-5069-4d53-96e4-e839f073f1ea - - - Terminal - 2 - - - - f3b56334-4638-49d3-a6a0-3f417422b8f5 - - - Terminal - 1 - - - - 3fa4866b-1714-4be9-afab-3909ae092016 - - - Terminal - 2 - - - - b741ce25-3f99-4aa8-9b03-d9de0ba6e342 - - - Terminal - 1 - - - - 76e9ca77-f805-40ea-8120-5a6d58416d34 - - - Terminal - 3 - - - - ca0f7e2e-3442-4ada-a704-91f319c0ebe3 - - - Terminal - 2 - - - - 53fd6693-57e6-482e-8fbe-dcf3531a7ce0 - - - Terminal - 2 - - - - 2cd21c77-b8b1-4896-95fb-240f45b9ac89 - - - Terminal - 1 - - - - c3774d3f-f48c-4954-a0cf-b4572eb714fd - - - Terminal - 2 - - - - f9f29835-8a31-4310-9780-b1ad26f3cbb0 - - - Terminal - 1 - - - - c14d2036-72ec-4df3-b1b7-75d8afd9a1fe - - - Terminal - 2 - - - - 907dbcfe-2037-4f84-97f1-6e59f782168e - - - Terminal - 1 - - - - 345d8528-1a7e-4245-92d6-15db7a7e3c86 - - - Terminal - 1 - - - - 8171fc34-6891-40e0-92d1-da9f4ba69e26 - - - Terminal - 2 - - - - 13dcec71-4b02-4c0c-93a7-8e16db4aa0b7 - - - Terminal - 2 - - - - 678a3049-afc0-432f-8f53-b30aa71907b2 - - - Terminal - 1 - - - - 310c303a-b0ed-4e42-9854-628f34c53d2b - - - Terminal - 1 - - - - f392d0d3-47cb-4ec1-925f-b3762d4a787c - - - Terminal - 2 - - - - b3bf6cbd-abe8-42b6-95f4-20682475b484 - - - Terminal - 2 - - - - b6e23b90-9c48-4285-ac02-5b68d0c572a6 - - - Terminal - 1 - - - - e57dd4ed-5ea0-4374-9b36-40a294a8e2be - - - Terminal - 1 - - - - d5e2e58e-ccf6-47d9-b3bb-3088eb7a9b6c - - - Terminal - 1 - - - - 4bb5407b-b4a5-416c-80ad-1a778ada2b9b - - - Terminal - 1 - - - - ca7974cf-b25e-4898-9221-7154233e5eb2 - - - Terminal - 2 - - - - 1182d878-2eaa-4eec-91be-ce7b2b1e7f9a - - - Terminal - 1 - - - - 4bbaf84d-2437-44e1-a56c-e79723370e77 - - - Terminal - 2 - - - - b8bca219-a924-434f-8163-50aae6d486a7 - - - Terminal - 1 - - - - 22af3121-1a66-4546-bd80-4371f417c644 - - - Terminal - 2 - - - - 70d962fb-a492-4c36-8cad-b5c584df53bd - - - Terminal - 1 - - - - 1ef0715a-d5a9-477b-b6e7-b635529ac140 - - - Terminal - 2 - - - - 36fedfd8-280b-4ee4-b58a-cd2063e5d706 - - - Terminal - 1 - - - - 0cca0f16-c476-4a99-b289-d660ff57b891 - - - Terminal - 2 - - - - 5b2c65b0-68ce-4530-85b7-385346a3b5e1 - - - Terminal - 1 - - - - 57ae9251-c022-4c67-a8eb-611ad54c963c - - - Terminal - 1 - - - - 756dff85-b2c8-4a06-9a4c-4dde854e668b - - - Terminal - 2 - - - - 3f8b7c82-ca57-401a-9e2d-b719f8c83030 - - - Terminal - 2 - - - - a45d705f-46f6-4bde-8790-11a762da8c01 - - - Terminal - 1 - - - - 5c206db8-ef8c-4e53-b2b9-38b52b194c5a - - - Terminal - 1 - - - - a036b765-1669-4f64-acd3-1e8fbd513312 - - - Terminal - 1 - - - - b501caa7-949f-49c6-b4d4-f50ef3625ede - - - Terminal - 2 - - - - fd2867a9-0c57-4cf2-acfb-439c4039b06b - - - Terminal - 1 - - - - 05a17350-55f5-4a00-9a50-8c0048a25495 - - - Terminal - 2 - - - - a4d42d33-ae54-4fe9-ad59-f30da0dfb809 - - - Terminal - 2 - - - - 61562178-c201-43c7-b56d-a300ab07c723 - - - Terminal - 1 - - - - 5245aa5c-9600-4632-95db-e981a19ed857 - - - Terminal - 1 - - - - 042688a6-140f-473c-98f9-94a3cfdc00d3 - - - Terminal - 2 - - - - 6811721b-252c-45fd-8474-6db1e7d5739e - - - Terminal - 1 - - - - d238885e-d9b6-4edc-8567-6a68c605ed67 - - - Terminal - 1 - - - - 699545b9-82b9-4331-bc80-538d73b4ba56 - - - Terminal - 2 - - - - 77f04391-aa23-49b6-b3e9-6089130bb5d5 - - - Terminal - 1 - - - - beffa353-7d10-421d-9c08-036b744b1cee - - - Terminal - 1 - - - - 4a7363a4-0b21-4f65-8bba-33e3a8f6bac3 - - - Terminal - 1 - - - - b9539c41-d114-4280-8a54-8ecec398091e - - - Terminal - 2 - - - - 95f1d705-35fa-4102-ba5b-43dfe7a0e0cc - - - Terminal - 1 - - - - 9f5dbaf3-e384-4e86-9d49-f43c30b4e354 - - - Terminal - 2 - - - - 68d47f87-1a1f-4c63-80ca-d3becb4a47f9 - - - Terminal - 1 - - - - 529a048e-7681-4e59-aba1-f7474a562cba - - - Terminal - 1 - - - - 381fc1a6-63f7-4728-bb84-d4d7fe4f8794 - - - Terminal - 2 - - - - e1e6f751-259f-4182-b4e1-12eba54a54ce - - - Terminal - 1 - - - - cbdf1842-74ed-4fce-a5d4-0296c82cbc92 - - - Terminal - 1 - - - - 67bb74f1-8620-4a32-9d7d-a44092d11d22 - - - Terminal - 1 - - - - c41978db-794b-4bae-953e-60fc519e87dd - - - Terminal - 1 - - - - 53072f42-f77b-47e2-bd9a-e097c910b173 - - - Terminal - 1 - - - - b9376bea-c75d-49f3-94ca-6a71fa0086a5 - - - PATL - PATL - - - 3e6aa424-8f24-49a5-bbe0-0868441e25ae - true - - - TATL10 - TATL - 10 - - - 6d00cfdb-d400-4acd-b32b-7a48617593e7 - false - - - BE - - - 50487bb8-be6d-42a8-9358-cc0bbfe6cfa7 - - - TieFlow - true - - - a6c895fe-e902-431d-8b7a-c63ff6138225 - - - TieFlow - true - - - 29df7113-56b3-4617-a5a7-77a251947d8c - - - TieFlow - true - - - f13a43a5-fe0c-462a-a191-b47ca63142ba - - - TieFlow - true - - - d1999e14-1783-4205-ae76-756ddedf828c - - - TieFlow - true - - - d94fe7e3-96a1-407d-b2d7-71f0a26443cd - - - BE-G2 - - - 84bf5be8-eb59-4555-b131-fce4d2d7775d - - - BE-G1 - - - 6ba406ce-78cf-4485-9b01-a34e584f1a8d - - - container of BE-Line_1 - - 2b659afe-2ac3-425c-9418-3383e09b4b39 - - - container of BE-Line_3 - - 185273ba-a4e8-4754-8038-3b33eb76132e - - - container of BE-Line_4 - - f04af3a9-24e3-46dd-91c0-97fea3ecc6a7 - - - container of BE-Line_5 - - 608059fa-f262-463d-a8a8-80844a2a7021 - - - container of BE-Line_7 - - a8aa134c-be99-4e28-8e51-2d01a3b3e078 - - \ No newline at end of file diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java index d3b3dcf8a4a..0368da9c4ef 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java @@ -8,7 +8,6 @@ package com.powsybl.cgmes.conversion.test; -import com.powsybl.cgmes.conformity.Cgmes3ModifiedCatalog; import com.powsybl.cgmes.conversion.CgmesImportPostProcessor; import com.powsybl.cgmes.conversion.Conversion; import com.powsybl.cgmes.conversion.Conversion.*; @@ -33,6 +32,7 @@ import java.util.Collections; import java.util.List; +import static com.powsybl.cgmes.conversion.test.ConversionUtil.readCgmesResources; import static org.junit.jupiter.api.Assertions.*; /** @@ -312,20 +312,16 @@ void phaseAngleClockAllNonZeroTest() { } @Test - void microGridBaseCaseBEPhaseTapChangerXMin() { - Network n = networkModel(Cgmes3ModifiedCatalog.microGridBaseCasePhaseTapChangerXMin(), new Conversion.Config()); - - TwoWindingsTransformer twt1 = n.getTwoWindingsTransformer("a708c3bc-465d-4fe7-b6ef-6fa6408a62b0"); - TwoWindingsTransformer twt2 = n.getTwoWindingsTransformer("b94318f6-6d24-4f56-96b9-df2531ad6543"); - - assertEquals(1.10949, obtainXcurrentStep(twt1), 0.00001); - assertEquals(2.796323, obtainXcurrentStep(twt2), 0.00001); - } - - private static double obtainXcurrentStep(TwoWindingsTransformer twt) { - double xtx = twt.getX(); - double ptcStepX = twt.getOptionalPhaseTapChanger().map(ptc -> ptc.getCurrentStep().getX()).orElse(0d); - return xtx * (1 + ptcStepX / 100); + void phaseTapChangerXMinTest() { + // 3 PhaseTapChangers: linear, symmetrical, asymmetrical all with the same issue: xMin = 0 (incorrect) + Network network = readCgmesResources(DIR, "phaseTapChanger_xMin.xml"); + + // If PhaseTapChangerLinear.xMin that represents the total reactance at the neutral step is inconsistent (<= 0), + // then PowerTransformerEnd.x should be used instead for the tap steps reactance deviation calculation. + // In that case, there is 0% reactance deviation at neutral step. + assertEquals(0, network.getTwoWindingsTransformer("LINEAR").getPhaseTapChanger().getCurrentStep().getX()); + assertEquals(0, network.getTwoWindingsTransformer("SYMMETRICAL").getPhaseTapChanger().getCurrentStep().getX()); + assertEquals(0, network.getTwoWindingsTransformer("ASYMMETRICAL").getPhaseTapChanger().getCurrentStep().getX()); } private boolean t2xCompareFlow(Network n, String id, double p1, double q1, double p2, double q2) { diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseTapChanger_xMin.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseTapChanger_xMin.xml new file mode 100644 index 00000000000..cb59e4077ee --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/phaseTapChanger_xMin.xml @@ -0,0 +1,285 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Phase tap changer incorrect xmin + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 110 kV + + + + + Linear phase shifter + + + + Linear phase shifter end 1 + 1 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 1 + 1 + 1000 + 400 + 10 + 10 + + + + Terminal LINEAR_E1 + 1 + + + + + Linear phase shifter end 2 + 2 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 0 + 0 + 1000 + 110 + 0 + 0 + + + + Terminal LINEAR_E2 + 1 + + + + + Phase tap changer linear + 25 + 1 + true + 13 + 400 + 13 + + 1 + 20 + 0 + + + Tap changer control linear + + + + + Symmetrical phase shifter + + + + Symmetrical phase shifter end 1 + 1 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 1 + 1 + 1000 + 400 + 10 + 10 + + + + Terminal SYMMETRICAL_E1 + 1 + + + + + Symmetrical phase shifter end 2 + 2 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 0 + 0 + 1000 + 110 + 0 + 0 + + + + Terminal SYMMETRICAL_E2 + 1 + + + + + Phase tap changer symmetrical + 25 + 1 + true + 13 + 400 + 13 + + + 1.25 + 20 + 0 + + + Tap changer control symmetrical + + + + + Asymmetrical phase shifter + + + + Aymmetrical phase shifter end 1 + 1 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 1 + 1 + 1000 + 400 + 10 + 10 + + + + Terminal ASYMMETRICAL_E1 + 1 + + + + + Asymmetrical phase shifter end 2 + 2 + false + 0 + 0 + + + 0 + 0 + + 0 + 0 + 0 + 0 + 0 + 1000 + 110 + 0 + 0 + + + + Terminal ASYMMETRICAL_E2 + 1 + + + + + Phase tap changer asymmetrical + 25 + 1 + true + 13 + 400 + 13 + + + 90.000000 + 1.25 + 20 + 0 + + + Tap changer control asymmetrical + + + + + Node 1 + + + + Node 2 + + + + 400 kV + 400 + + + 110 kV + 110 + + From 046b450689afd98cb584e035430e768f2eea7ac8 Mon Sep 17 00:00:00 2001 From: Romain Courtier Date: Thu, 14 Nov 2024 13:23:56 +0100 Subject: [PATCH 5/5] Rework invalid equipment container of a transformer's winding using a small network instead of a modified CGMES conformity one Signed-off-by: Romain Courtier --- .../CgmesConformity1ModifiedCatalog.java | 17 - ...MiniGridTestConfiguration_BC_EQ_v3.0.0.xml | 4478 ----------------- .../test/TransformerConversionTest.java | 20 +- ...gmesConformity1ModifiedConversionTest.java | 20 - .../invalidEquipmentContainer_EQ.xml | 104 + .../invalidEquipmentContainer_EQBD.xml | 19 + .../invalidEquipmentContainer_TPBD.xml | 18 + 7 files changed, 157 insertions(+), 4519 deletions(-) delete mode 100644 cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/NodeBreaker/BaseCase_Complete_v3_invalid_t2w/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQ.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQBD.xml create mode 100644 cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_TPBD.xml diff --git a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java index c6cd1cf5223..9e7a5163ecf 100644 --- a/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java +++ b/cgmes/cgmes-conformity/src/main/java/com/powsybl/cgmes/conformity/CgmesConformity1ModifiedCatalog.java @@ -890,23 +890,6 @@ public static GridModelReferenceResources miniNodeBreakerLimitsforEquipment() { MINI_GRID_BD_TP)); } - public static GridModelReferenceResources miniNodeBreakerInvalidT2w() { - String base = ENTSOE_CONFORMITY_1_MODIFIED - + "/MiniGrid/NodeBreaker/BaseCase_Complete_v3_invalid_t2w/"; - return new GridModelReferenceResources( - "MiniGrid-NodeBreaker-InvalidT2w", - null, - new ResourceSet(base, - MINI_GRID_EQ), - new ResourceSet(MINI_GRID_NODE_BREAKER_BASE, - MINI_GRID_DL, - MINI_GRID_SSH, - MINI_GRID_SV, - MINI_GRID_TP), - new ResourceSet(MINI_GRID_NODE_BREAKER_BD_BASE, MINI_GRID_BD_EQ, - MINI_GRID_BD_TP)); - } - public static GridModelReferenceResources miniNodeBreakerSvInjection() { String base = ENTSOE_CONFORMITY_1_MODIFIED + "/MiniGrid/NodeBreaker/BaseCase_Complete_v3_sv_injection/"; diff --git a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/NodeBreaker/BaseCase_Complete_v3_invalid_t2w/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml b/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/NodeBreaker/BaseCase_Complete_v3_invalid_t2w/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml deleted file mode 100644 index 3a00968ae55..00000000000 --- a/cgmes/cgmes-conformity/src/main/resources/conformity-modified/cas-1.1.3-data-4.0.3/MiniGrid/NodeBreaker/BaseCase_Complete_v3_invalid_t2w/MiniGridTestConfiguration_BC_EQ_v3.0.0.xml +++ /dev/null @@ -1,4478 +0,0 @@ - - - - 2030-01-02T09:00:00 - 2015-02-05T12:20:50.830 - CGMES Conformity Assessment: Mini Grid Base Case Test Configuration. The model is owned by ENTSO-E and is provided by ENTSO-E "as it is". To the fullest extent permitted by law, ENTSO-E shall not be liable for any damages of any kind arising out of the use of the model (including any of its subsequent modifications). ENTSO-E neither warrants, nor represents that the use of the model will not infringe the rights of third parties. Any use of the model shall include a reference to ENTSO-E. ENTSO-E web site is the only official source of information related to the model. - 4 - http://entsoe.eu/CIM/EquipmentCore/3/1 - http://entsoe.eu/CIM/EquipmentOperation/3/1 - http://entsoe.eu/CIM/EquipmentShortCircuit/3/1 - http://A1.de/Planning/ENTSOE/2 - - - - - L5_0 - 1 - - - - - - L5_1 - 2 - - - - - - L6_0 - 1 - - - - - - L6_1 - 2 - - - - - - L4_0 - 1 - - - - - - L4_1 - 2 - - - - - - L1_0 - 1 - - - - - - L1_1 - 2 - - - - - - L2_0 - 1 - - - - - - L2_1 - 2 - - - - - - L3_a_0 - 1 - - - - - - L3_a_1 - 2 - - - - - - L3_b_0 - 1 - - - - - - L3_b_1 - 2 - - - - - - T5_0 - 1 - - - - - - T5_1 - 2 - - - - - - T6_0 - 1 - - - - - - T6_1 - 2 - - - - - - T2_0 - 1 - - - - - - T2_1 - 2 - - - - - - T1_0 - 1 - - - - - - T1_1 - 2 - - - - - - T4_0 - 1 - - - - - - T4_1 - 2 - - - - - - T4_2 - 3 - - - - - - T3_0 - 1 - - - - - - T3_1 - 2 - - - - - - T3_2 - 3 - - - - - - G2_0 - 1 - - - - - - G1_0 - 1 - - - - - - G3_0 - 1 - - - - - - M1_0 - 1 - - - - - - M2_0 - 1 - - - - - - ASM-1229750300_0 - 1 - - - - - - Q1_0 - 1 - - - - - - Q2_0 - 1 - - - - - - 380kV - 380 - - - 21kV - 21 - - - 10kV - 10 - - - 110kV - 110 - - - 30kV - 30 - - - S2 10kV - - - - - S5 10kV - - - - - S4 10kV - - - - - S3 21kV - - - - - S2 110kV - - - - - S3 110kV - - - - - S1 380kV - - - - - S1 30kV - - - - - S4 110kV - - - - - S1 110kV - - - - - Sub1 - - - - Sub2 - - - - Sub3 - - - - Sub4 - - - - Sub5 - - - - AA - - - Z1 - - - - PATL - 45000 - - - - - TATL - 900 - - - - - TATL - 60 - - - - - Gen-1 - G2 - false - - 0 - 127.5 - 0 - - - G2 - - - 0.9 - 100 - 10.5 - - false - 43.6 - -43.6 - 100 - 0 - 0.004535 - 0.16 - 2 - 2 - - - 7.5 - 0.005 - 0.1 - 0.16 - - - Gen-2 - G1 - false - - 0 - 90 - 0 - - - G1 - - 0.85 - 150 - 21 - - false - 79 - -79 - 100 - 0 - 0.00068 - 0.14 - 1.8 - 1.8 - - - 0.002 - 0.1 - 0.14 - - - Gen-3 - G3 - false - - 0 - 8 - 0 - - - G3 - - 0.8 - 10 - 10.5 - - false - 6 - -6 - 100 - 0 - 0.00163 - 0.1 - 1.8 - 1.8 - - - 0.018 - 0.08 - 0.1 - - - M3 - false - - 0.88 - 5.828 - 10 - false - 97.5 - 5 - 1 - 5 - false - 0.1 - - - M2a - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - M2b - false - - 0.89 - 2.321 - 10 - false - 96.8 - 5.2 - 2 - 2 - false - 0.1 - - - Q1 - - 0 - true - 38000 - 800 - 600 - 0.15 - 0.1 - 3.029 - 0 - -800 - -600 - 0.1 - 0.1 - 1 - 1.1 - - - Q2 - - 0 - true - 16000 - 88 - 66 - 0.2 - 0.1 - 3.34865 - 0 - -88 - -66 - 0 - 0 - 0 - 1.1 - - - Line-7 - L5 - false - - - 15 - 0 - 0 - 0 - 0 - 1.8 - 3.3 - 80 - 5.79 - 16.5 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-4 - L6 - false - - - 1 - 0 - 0 - 0 - 0 - 0.082 - 0.082 - 80 - 0.086 - 0.086 - - - Ratings - - - - Normal - - - 1155 - - - ShortTerm - - - 1328 - - - Emergency - - - 1617 - - - Line-5 - L4 - false - - - 10 - 0 - 0 - 0 - 0 - 0.96 - 2.2 - 80 - 3.88 - 11 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-1 - L1 - false - - - 20 - 0 - 0 - 0 - 0 - 2.4 - 6.4 - 80 - 7.8 - 25.2 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-6 - L2 - false - - - 10 - 0 - 0 - 0 - 0 - 1.2 - 3.2 - 80 - 3.9 - 12.6 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-2 - L3_a - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Line-3 - L3_b - false - - - 5 - 0 - 0 - 0 - 0 - 0.6 - 2.6 - 80 - 1.95 - 9.3 - - - Ratings - - - - Normal - - - 525 - - - ShortTerm - - - 604 - - - Emergency - - - 735 - - - Trafo-1 - T5 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T5 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T5 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-2 - T6 - false - - 158.14 - 121.095 - 36.86 - false - false - - - T6 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 31.5 - 0 - 115 - 0 - 2.099206 - 2.099206 - 50.3372 - 50.3372 - - - - Ratings - - - - Normal - - - 158 - - - ShortTerm - - - 182 - - - Emergency - - - 222 - - - T6 - 0 - 2 - true - 100 - - - 0 - - 0 - 0 - 31.5 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 1732 - - - ShortTerm - - - 1992 - - - Emergency - - - 2425 - - - Trafo-3 - T2 - false - - 115 - true - false - - - T2 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 100 - 0 - 120 - 0 - 0.72 - 0.72 - 17.2649937 - 17.2649937 - - - - Ratings - - - - Normal - - - 481 - - - ShortTerm - - - 553 - - - Emergency - - - 673 - - - T2 - 2 - false - - - 0 - - 0 - 5 - 100 - 0 - 10.5 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 5498 - - - ShortTerm - - - 6323 - - - Emergency - - - 7698 - - - Trafo-4 - T1 - false - - 115 - true - false - - - T1 - 2 - false - - - 0 - - 0 - 5 - 150 - 0 - 21 - 0 - 0.0147 - 0.0147 - 0.47017 - 0.446662 - - - - Ratings - - - - Normal - - - 4123 - - - ShortTerm - - - 4742 - - - Emergency - - - 5773 - - - T1 - 25 - 1 - true - 13 - 21 - 13 - - 1 - - - - T1 - 0 - 1 - true - 22 - - - 0 - - 0 - 0 - 150 - 0 - 115 - 0 - 0 - 0 - 0 - 0 - - - - Ratings - - - - Normal - - - 753 - - - ShortTerm - - - 866 - - - Emergency - - - 1054 - - - T4 - false - - false - - - T4 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.0254571438 - 0.0254571438 - 1.259741 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 0 - 2 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T4 - 0 - 1 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - Trafo-5 - T3 - false - - false - - - T3 - 0 - 1 - true - 0 - - - 0 - - 0 - 0 - 350 - 0 - 400 - 0 - 0.5942857143 - 0.5942857143 - 96.0051006 - 95.05666 - - - - Ratings - - - - Normal - - - 505 - - - ShortTerm - - - 580 - - - Emergency - - - 707 - - - T3 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - T3 - 0 - 2 - false - 0 - - - 0 - - 0 - 0 - 350 - 0 - 120 - 0 - 0.05348571429 - 0.05348571429 - -0.001121283618 - -0.6881 - - - - Ratings - - - - Normal - - - 1683 - - - ShortTerm - - - 1936 - - - Emergency - - - 2357 - - - T3 - 3 - false - - - 0 - - 0 - 5 - 50 - 0 - 30 - 0 - 0.02545714286 - 0.02545714286 - 1.259740894 - 1.176919 - - - - Ratings - - - - Normal - - - 962 - - - ShortTerm - - - 1106 - - - Emergency - - - 1347 - - - T4 - 33 - 1 - true - 17 - 400 - 17 - - 1 - - - - 68-116_0 - 1 - - - - - - 68-116_1 - 2 - - - - - - Injection_0 - 1 - - - - - - 71-73_0 - 1 - - - - - - 71-73_1 - 2 - - - - - - Injection_0 - 1 - - - - - - XQ1-N1 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - XQ2-N5 - false - - - 1 - 0 - 0 - 0 - 0 - 0 - 0 - 80 - 0.05 - 0 - - - Ratings - - - - Normal - - - 1000 - - - ShortTerm - - - 1150 - - - Emergency - - - 1400 - - - Injection1 - - - 0.63185 - 2.85315 - 0.63185 - false - 6.3185 - 19.021 - 6.3185 - - - Injection2 - - - 0.43445 - 2.86738 - 0.43445 - false - 4.3445 - 14.3369 - 4.3445 - - - CONNECTIVITY_NODE1 - - - - BUSBAR1 - - - - - L5_0_BUSBAR - 1 - - - - - - BAY_L5_0 - - - - L5_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR1 - - - false - false - - - L5_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE2 - - - - L5_0_ADDB1 - 1 - - - - - - BREAKER1 - - - false - false - - - L5_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE3 - - - - L5_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR2 - - - false - false - - - L5_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE4 - - - - CONNECTIVITY_NODE5 - - - - BUSBAR2 - - - - - L5_1_BUSBAR - 2 - - - - - - BAY_L5_1 - - - - L5_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR3 - - - false - false - - - L5_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE6 - - - - L5_1_ADDB1 - 1 - - - - - - BREAKER2 - - - false - false - - - L5_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE7 - - - - L5_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR4 - - - false - false - - - L5_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE8 - - - - CONNECTIVITY_NODE9 - - - - BUSBAR3 - - - - - L6_0_BUSBAR - 1 - - - - - - BAY_L6_0 - - - - L6_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR5 - - - false - false - - - L6_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE10 - - - - L6_0_ADDB1 - 1 - - - - - - BREAKER3 - - - false - false - - - L6_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE11 - - - - L6_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR6 - - - false - false - - - L6_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE12 - - - - CONNECTIVITY_NODE13 - - - - BUSBAR4 - - - - - L6_1_BUSBAR - 2 - - - - - - BAY_L6_1 - - - - L6_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR7 - - - false - false - - - L6_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE14 - - - - L6_1_ADDB1 - 1 - - - - - - BREAKER4 - - - false - false - - - L6_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE15 - - - - L6_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR8 - - - false - false - - - L6_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE16 - - - - BAY_L4_0 - - - - L4_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR9 - - - false - false - - - L4_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE17 - - - - L4_0_ADDB1 - 1 - - - - - - BREAKER5 - - - false - false - - - L4_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE18 - - - - L4_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR10 - - - false - false - - - L4_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE19 - - - - CONNECTIVITY_NODE20 - - - - BUSBAR5 - - - - - L4_1_BUSBAR - 2 - - - - - - BAY_L4_1 - - - - L4_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR11 - - - false - false - - - L4_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE21 - - - - L4_1_ADDB1 - 1 - - - - - - BREAKER6 - - - false - false - - - L4_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE22 - - - - L4_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR12 - - - false - false - - - L4_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE23 - - - - CONNECTIVITY_NODE24 - - - - BUSBAR6 - - - - - L1_0_BUSBAR - 1 - - - - - - BAY_L1_0 - - - - L1_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR13 - - - false - false - - - L1_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE25 - - - - L1_0_ADDB1 - 1 - - - - - - BREAKER7 - - - false - false - - - L1_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE26 - - - - L1_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR14 - - - false - false - - - L1_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE27 - - - - BAY_L1_1 - - - - L1_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR15 - - - false - false - - - L1_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE28 - - - - L1_1_ADDB1 - 1 - - - - - - BREAKER8 - - - false - false - - - L1_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE29 - - - - L1_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR16 - - - false - false - - - L1_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE30 - - - - BAY_L2_0 - - - - L2_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR17 - - - false - false - - - L2_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE31 - - - - L2_0_ADDB1 - 1 - - - - - - BREAKER9 - - - false - false - - - L2_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE32 - - - - L2_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR18 - - - false - false - - - L2_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE33 - - - - BAY_L2_1 - - - - L2_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR19 - - - false - false - - - L2_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE34 - - - - L2_1_ADDB1 - 1 - - - - - - BREAKER10 - - - false - false - - - L2_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE35 - - - - L2_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR20 - - - false - false - - - L2_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE36 - - - - BAY_L3_a_0 - - - - L3_a_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR21 - - - false - false - - - L3_a_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE37 - - - - L3_a_0_ADDB1 - 1 - - - - - - BREAKER11 - - - false - false - - - L3_a_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE38 - - - - L3_a_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR22 - - - false - false - - - L3_a_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE39 - - - - BAY_L3_a_1 - - - - L3_a_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR23 - - - false - false - - - L3_a_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE40 - - - - L3_a_1_ADDB1 - 1 - - - - - - BREAKER12 - - - false - false - - - L3_a_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE41 - - - - L3_a_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR24 - - - false - false - - - L3_a_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE42 - - - - BAY_L3_b_0 - - - - L3_b_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR25 - - - false - false - - - L3_b_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE43 - - - - L3_b_0_ADDB1 - 1 - - - - - - BREAKER13 - - - false - false - - - L3_b_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE44 - - - - L3_b_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR26 - - - false - false - - - L3_b_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE45 - - - - BAY_L3_b_1 - - - - L3_b_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR27 - - - false - false - - - L3_b_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE46 - - - - L3_b_1_ADDB1 - 1 - - - - - - BREAKER14 - - - false - false - - - L3_b_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE47 - - - - L3_b_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR28 - - - false - false - - - L3_b_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE48 - - - - BAY_T5_0 - - - - T5_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR29 - - - false - false - - - T5_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE49 - - - - T5_0_ADDB1 - 1 - - - - - - BREAKER15 - - - false - false - - - T5_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE50 - - - - T5_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR30 - - - false - false - - - T5_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE51 - - - - BAY_T5_1 - - - - T5_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR31 - - - false - false - - - T5_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE52 - - - - T5_1_ADDB1 - 1 - - - - - - BREAKER16 - - - false - false - - - T5_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE53 - - - - T5_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR32 - - - false - false - - - T5_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE54 - - - - BAY_T6_0 - - - - T6_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR33 - - - false - false - - - T6_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE55 - - - - T6_0_ADDB1 - 1 - - - - - - BREAKER17 - - - false - false - - - T6_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE56 - - - - T6_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR34 - - - false - false - - - T6_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE57 - - - - BAY_T6_1 - - - - T6_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR35 - - - false - false - - - T6_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE58 - - - - T6_1_ADDB1 - 1 - - - - - - BREAKER18 - - - false - false - - - T6_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE59 - - - - T6_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR36 - - - false - false - - - T6_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE60 - - - - BAY_T2_0 - - - - T2_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR37 - - - false - false - - - T2_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE61 - - - - T2_0_ADDB1 - 1 - - - - - - BREAKER19 - - - false - false - - - T2_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE62 - - - - T2_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR38 - - - false - false - - - T2_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE63 - - - - CONNECTIVITY_NODE64 - - - - BUSBAR7 - - - - - T2_1_BUSBAR - 2 - - - - - - BAY_T2_1 - - - - T2_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR39 - - - false - false - - - T2_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE65 - - - - T2_1_ADDB1 - 1 - - - - - - BREAKER20 - - - false - false - - - T2_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE66 - - - - T2_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR40 - - - false - false - - - T2_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE67 - - - - CONNECTIVITY_NODE68 - - - - BUSBAR8 - - - - - T1_0_BUSBAR - 1 - - - - - - BAY_T1_0 - - - - T1_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR41 - - - false - false - - - T1_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE69 - - - - T1_0_ADDB1 - 1 - - - - - - BREAKER21 - - - false - false - - - T1_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE70 - - - - T1_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR42 - - - false - false - - - T1_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE71 - - - - BAY_T1_1 - - - - T1_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR43 - - - false - false - - - T1_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE72 - - - - T1_1_ADDB1 - 1 - - - - - - BREAKER22 - - - false - false - - - T1_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE73 - - - - T1_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR44 - - - false - false - - - T1_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE74 - - - - CONNECTIVITY_NODE75 - - - - BUSBAR9 - - - - - T4_0_BUSBAR - 1 - - - - - - BAY_T4_0 - - - - T4_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR45 - - - false - false - - - T4_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE76 - - - - T4_0_ADDB1 - 1 - - - - - - BREAKER23 - - - false - false - - - T4_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE77 - - - - T4_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR46 - - - false - false - - - T4_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE78 - - - - BAY_T4_1 - - - - T4_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR47 - - - false - false - - - T4_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE79 - - - - T4_1_ADDB1 - 1 - - - - - - BREAKER24 - - - false - false - - - T4_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE80 - - - - T4_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR48 - - - false - false - - - T4_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE81 - - - - CONNECTIVITY_NODE82 - - - - BUSBAR10 - - - - - T4_2_BUSBAR - 3 - - - - - - BAY_T4_2 - - - - T4_2_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR49 - - - false - false - - - T4_2_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE83 - - - - T4_2_ADDB1 - 1 - - - - - - BREAKER25 - - - false - false - - - T4_2_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE84 - - - - T4_2_ADD_DSC21 - 1 - - - - - - DISCONNECTOR50 - - - false - false - - - T4_2_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE85 - - - - BAY_T3_0 - - - - T3_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR51 - - - false - false - - - T3_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE86 - - - - T3_0_ADDB1 - 1 - - - - - - BREAKER26 - - - false - false - - - T3_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE87 - - - - T3_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR52 - - - false - false - - - T3_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE88 - - - - BAY_T3_1 - - - - T3_1_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR53 - - - false - false - - - T3_1_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE89 - - - - T3_1_ADDB1 - 1 - - - - - - BREAKER27 - - - false - false - - - T3_1_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE90 - - - - T3_1_ADD_DSC21 - 1 - - - - - - DISCONNECTOR54 - - - false - false - - - T3_1_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE91 - - - - CONNECTIVITY_NODE92 - - - - BUSBAR11 - - - - - T3_2_BUSBAR - 3 - - - - - - BAY_T3_2 - - - - T3_2_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR55 - - - false - false - - - T3_2_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE93 - - - - T3_2_ADDB1 - 1 - - - - - - BREAKER28 - - - false - false - - - T3_2_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE94 - - - - T3_2_ADD_DSC21 - 1 - - - - - - DISCONNECTOR56 - - - false - false - - - T3_2_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE95 - - - - BAY_68-116_0 - - - - 68-116_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR57 - - - false - false - - - 68-116_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE96 - - - - 68-116_0_ADDB1 - 1 - - - - - - BREAKER29 - - - false - false - - - 68-116_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE97 - - - - 68-116_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR58 - - - false - false - - - 68-116_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE98 - - - - BAY_71-73_0 - - - - 71-73_0_ADD_DSC11 - 1 - - - - - - - DISCONNECTOR59 - - - false - false - - - 71-73_0_ADD_DSC12 - 2 - - - - - - CONNECTIVITY_NODE100 - - - - 71-73_0_ADDB1 - 1 - - - - - - BREAKER30 - - - false - false - - - 71-73_0_ADDB2 - 2 - - - - - - CONNECTIVITY_NODE101 - - - - 71-73_0_ADD_DSC21 - 1 - - - - - - DISCONNECTOR60 - - - false - false - - - 71-73_0_ADD_DSC22 - 2 - - - - - - CONNECTIVITY_NODE102 - - - - GEN_A1 - - - - - _CA_A1 - - - - 5 - 1 - - - 4 - 1 - - - 6 - 1 - - - 7 - 1 - - - 3 - 1 - - - 2 - 1 - - - HG2 - 1 - - - HG1 - 1 - - - H - 1 - - - 1 - 1 - - - 8 - 1 - - - Container for Line-7 - - - - Container for Line-4 - - - - Container for Line-5 - - - - Container for Line-1 - - - - Container for Line-6 - - - - Container for Line-2 - - - - Container for Line-3 - - - - TwinBrch SM - - - - - PATLT - 4000 - - - - - Normal - - - 525 - - - Normal - - - 1155 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 525 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 158 - - - Normal - - - 1732 - - - Normal - - - 481 - - - Normal - - - 5498 - - - Normal - - - 4123 - - - Normal - - - 753 - - - Normal - - - 962 - - - Normal - - - 1683 - - - Normal - - - 505 - - - Normal - - - 505 - - - Normal - - - 1683 - - - Normal - - - 962 - - - Normal - - - 1000 - - - Normal - - - 1000 - - \ No newline at end of file diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java index 0368da9c4ef..494db612d99 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/TransformerConversionTest.java @@ -8,6 +8,7 @@ package com.powsybl.cgmes.conversion.test; +import com.powsybl.cgmes.conversion.CgmesImport; import com.powsybl.cgmes.conversion.CgmesImportPostProcessor; import com.powsybl.cgmes.conversion.Conversion; import com.powsybl.cgmes.conversion.Conversion.*; @@ -16,10 +17,7 @@ import com.powsybl.cgmes.model.GridModelReferenceResources; import com.powsybl.commons.PowsyblException; import com.powsybl.commons.datasource.ResourceSet; -import com.powsybl.iidm.network.Network; -import com.powsybl.iidm.network.Terminal; -import com.powsybl.iidm.network.ThreeWindingsTransformer; -import com.powsybl.iidm.network.TwoWindingsTransformer; +import com.powsybl.iidm.network.*; import com.powsybl.iidm.network.extensions.ThreeWindingsTransformerPhaseAngleClock; import com.powsybl.iidm.network.extensions.TwoWindingsTransformerPhaseAngleClock; import com.powsybl.loadflow.LoadFlowParameters; @@ -31,6 +29,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; +import java.util.Properties; import static com.powsybl.cgmes.conversion.test.ConversionUtil.readCgmesResources; import static org.junit.jupiter.api.Assertions.*; @@ -324,6 +323,19 @@ void phaseTapChangerXMinTest() { assertEquals(0, network.getTwoWindingsTransformer("ASYMMETRICAL").getPhaseTapChanger().getCurrentStep().getX()); } + @Test + void invalidEquipmentContainerTest() { + // A 2-w transformer unconnected on end 2 side. This results in a fictitious substation created for end 2 + // and thus the 2 windings are in different substations, which is not allowed in IIDM. + Properties importParams = new Properties(); + importParams.put(CgmesImport.CONVERT_BOUNDARY, true); + PowsyblException e = assertThrows(PowsyblException.class, + () -> readCgmesResources(importParams, DIR, "invalidEquipmentContainer_EQ.xml", + "invalidEquipmentContainer_EQBD.xml", "invalidEquipmentContainer_TPBD.xml")); + assertEquals("2 windings transformer 'T2W': the 2 windings of the transformer shall belong to the substation 'ST' ('ST', 'CN_BOUNDARY_S')", + e.getMessage()); + } + private boolean t2xCompareFlow(Network n, String id, double p1, double q1, double p2, double q2) { TwoWindingsTransformer twt = n.getTwoWindingsTransformer(id); T2xFlow actual = twoWindingsTransformerFlow(twt); diff --git a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/conformity/modified/CgmesConformity1ModifiedConversionTest.java b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/conformity/modified/CgmesConformity1ModifiedConversionTest.java index b9001de9f75..3e51e9a9a79 100644 --- a/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/conformity/modified/CgmesConformity1ModifiedConversionTest.java +++ b/cgmes/cgmes-conversion/src/test/java/com/powsybl/cgmes/conversion/test/conformity/modified/CgmesConformity1ModifiedConversionTest.java @@ -19,7 +19,6 @@ import com.powsybl.cgmes.extensions.CgmesControlAreas; import com.powsybl.cgmes.extensions.CgmesMetadataModels; import com.powsybl.cgmes.model.*; -import com.powsybl.commons.PowsyblException; import com.powsybl.commons.config.InMemoryPlatformConfig; import com.powsybl.commons.datasource.ReadOnlyDataSource; import com.powsybl.iidm.network.*; @@ -794,25 +793,6 @@ void miniNodeBreakerTestLimits() { assertNotNull(sw1); } - @Test - void miniNodeBreakerInvalidT2w() { - InMemoryPlatformConfig platformConfig = new InMemoryPlatformConfig(fileSystem); - platformConfig.createModuleConfig("import-export-parameters-default-value") - .setStringProperty("iidm.import.cgmes.convert-boundary", "true"); - - Network network = new CgmesImport(platformConfig).importData(CgmesConformity1Catalog.miniNodeBreaker().dataSource(), - NetworkFactory.findDefault(), importParams); - TwoWindingsTransformer transformer = network.getTwoWindingsTransformer("ceb5d06a-a7ff-4102-a620-7f3ea5fb4a51"); - assertNotNull(transformer); - - ReadOnlyDataSource ds = CgmesConformity1ModifiedCatalog.miniNodeBreakerInvalidT2w().dataSource(); - CgmesImport importer = new CgmesImport(platformConfig); - NetworkFactory networkFactory = NetworkFactory.findDefault(); - PowsyblException e = assertThrows(PowsyblException.class, () -> importer.importData(ds, networkFactory, importParams)); - assertEquals("2 windings transformer 'ceb5d06a-a7ff-4102-a620-7f3ea5fb4a51': the 2 windings of the transformer shall belong to the substation '183d126d-2522-4ff2-a8cd-c5016cf09c1b_S' ('183d126d-2522-4ff2-a8cd-c5016cf09c1b_S', 'd6056127-34f1-43a9-b029-23fddb913bd5')", - e.getMessage()); - } - @Test void miniNodeBreakerSvInjection() { Network network = new CgmesImport() diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQ.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQ.xml new file mode 100644 index 00000000000..c86d38fcc98 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQ.xml @@ -0,0 +1,104 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Invalid equipment container + 001 + http://entsoe.eu/CIM/EquipmentCore/3/1 + http://entsoe.eu/CIM/EquipmentOperation/3/1 + powsybl.org + + + Geographical region + + + Subgeographical region + + + + Substation + + + + Voltage level 400 kV + + + + + Voltage level 110 kV + + + + + Power transformer + + + + Power transformer end 1 + 1 + 10 + 0 + 0 + 1 + 10 + 0 + 0 + 0 + 0 + 250 + 400 + 1 + 0 + false + + + + + + + Terminal T2W_E1 + 1 + + + + + Node 1 + + + + Power transformer end 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 250 + 110 + 2 + 0 + false + + + + + + + Terminal T2W_E2 + 2 + + + + + 400 kV + 400 + + + 110 kV + 110 + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQBD.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQBD.xml new file mode 100644 index 00000000000..d2c678a8dd8 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_EQBD.xml @@ -0,0 +1,19 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Invalid equipment container + 001 + http://entsoe.eu/CIM/EquipmentBoundary/3/1 + http://entsoe.eu/CIM/EquipmentBoundaryOperation/3/1 + powsybl.org + + + Connectivity node boundary + true + + + + Tie Line + + diff --git a/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_TPBD.xml b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_TPBD.xml new file mode 100644 index 00000000000..30831d5ac80 --- /dev/null +++ b/cgmes/cgmes-conversion/src/test/resources/issues/transformers/invalidEquipmentContainer_TPBD.xml @@ -0,0 +1,18 @@ + + + 2021-03-01T23:00:00Z + 2021-03-02T10:22:58Z + Invalid equipment container + 001 + http://entsoe.eu/CIM/TopologyBoundary/3/1 + powsybl.org + + + + + + + Topological node boundary + + +