Skip to content

Commit c806ea1

Browse files
Merge pull request #1084 from PowerGridModel/bug-fix/data-validator-trafo-cyclic-clock-align-behavior
Bug-fix: align data validator 2 and 3 winding trafo cyclic clock behavior
2 parents caa8b54 + 5366a27 commit c806ea1

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

src/power_grid_model/validation/_validation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -672,8 +672,8 @@ def validate_three_winding_transformer(data: SingleDataset) -> list[ValidationEr
672672
errors += _all_valid_enum_values(data, ComponentType.three_winding_transformer, "winding_1", WindingType)
673673
errors += _all_valid_enum_values(data, ComponentType.three_winding_transformer, "winding_2", WindingType)
674674
errors += _all_valid_enum_values(data, ComponentType.three_winding_transformer, "winding_3", WindingType)
675-
errors += _all_between_or_at(data, ComponentType.three_winding_transformer, "clock_12", 0, 12)
676-
errors += _all_between_or_at(data, ComponentType.three_winding_transformer, "clock_13", 0, 12)
675+
errors += _all_between_or_at(data, ComponentType.three_winding_transformer, "clock_12", -12, 12)
676+
errors += _all_between_or_at(data, ComponentType.three_winding_transformer, "clock_13", -12, 12)
677677
errors += _all_valid_clocks(data, ComponentType.three_winding_transformer, "clock_12", "winding_1", "winding_2")
678678
errors += _all_valid_clocks(data, ComponentType.three_winding_transformer, "clock_13", "winding_1", "winding_3")
679679
errors += _all_valid_enum_values(data, ComponentType.three_winding_transformer, "tap_side", Branch3Side)

tests/unit/validation/test_input_validation.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -822,6 +822,10 @@ def test_validate_three_winding_transformer(input_data):
822822
assert NotGreaterOrEqualError(ComponentType.three_winding_transformer, "i0", [29], "p0/sn_1") in validation_errors
823823
assert NotLessThanError(ComponentType.three_winding_transformer, "i0", [28], 1) in validation_errors
824824
assert NotGreaterOrEqualError(ComponentType.three_winding_transformer, "p0", [1], 0) in validation_errors
825+
assert (
826+
NotBetweenOrAtError(ComponentType.three_winding_transformer, "clock_13", [1, 28], (-12, 12))
827+
in validation_errors
828+
)
825829
assert (
826830
NotBetweenOrAtError(ComponentType.three_winding_transformer, "tap_pos", [1, 28], ("tap_min", "tap_max"))
827831
in validation_errors

tests/unit/validation/test_validation_functions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1380,7 +1380,7 @@ def test_all_default_values():
13801380
three_winding_transformer["winding_2"] = [1]
13811381
three_winding_transformer["winding_3"] = [1]
13821382
three_winding_transformer["clock_12"] = [5]
1383-
three_winding_transformer["clock_13"] = [5]
1383+
three_winding_transformer["clock_13"] = [-7] # supports periodic clock input
13841384
three_winding_transformer["tap_side"] = [0]
13851385
three_winding_transformer["tap_min"] = [-10]
13861386
three_winding_transformer["tap_max"] = [10]

0 commit comments

Comments
 (0)