Skip to content

Commit 0de0e8d

Browse files
chore: centralize duplicate function
Signed-off-by: jaapschoutenalliander <[email protected]>
1 parent 954e498 commit 0de0e8d

File tree

3 files changed

+25
-37
lines changed

3 files changed

+25
-37
lines changed

src/power_grid_model_ds/_core/model/graphs/models/base.py

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
MissingNodeError,
1717
NoPathBetweenNodes,
1818
)
19+
from power_grid_model_ds._core.model.utils import _get_branch3_branches
1920

2021
if TYPE_CHECKING:
2122
from power_grid_model_ds._core.model.grids.base import Grid
@@ -421,21 +422,3 @@ def _find_fundamental_cycles(self) -> list[list[int]]: ...
421422

422423
@abstractmethod
423424
def _all_branches(self) -> Generator[tuple[int, int], None, None]: ...
424-
425-
426-
def _get_branch3_branches(branch3: Branch3Array) -> BranchArray:
427-
node_1 = branch3.node_1.item()
428-
node_2 = branch3.node_2.item()
429-
node_3 = branch3.node_3.item()
430-
431-
status_1 = branch3.status_1.item()
432-
status_2 = branch3.status_2.item()
433-
status_3 = branch3.status_3.item()
434-
435-
branches = BranchArray.zeros(3)
436-
branches.from_node = [node_1, node_1, node_2]
437-
branches.to_node = [node_2, node_3, node_3]
438-
branches.from_status = [status_1, status_1, status_2]
439-
branches.to_status = [status_2, status_3, status_3]
440-
441-
return branches
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# SPDX-FileCopyrightText: Contributors to the Power Grid Model project <[email protected]>
2+
#
3+
# SPDX-License-Identifier: MPL-2.0
4+
from power_grid_model_ds._core.model.arrays.pgm_arrays import Branch3Array, BranchArray
5+
6+
7+
def _get_branch3_branches(branch3: Branch3Array) -> BranchArray:
8+
node_1 = branch3.node_1.item()
9+
node_2 = branch3.node_2.item()
10+
node_3 = branch3.node_3.item()
11+
12+
status_1 = branch3.status_1.item()
13+
status_2 = branch3.status_2.item()
14+
status_3 = branch3.status_3.item()
15+
16+
branches = BranchArray.zeros(3)
17+
branches.from_node = [node_1, node_1, node_2]
18+
branches.to_node = [node_2, node_3, node_3]
19+
branches.from_status = [status_1, status_1, status_2]
20+
branches.to_status = [status_2, status_3, status_3]
21+
22+
return branches

src/power_grid_model_ds/_core/visualizer/parsers.py

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
from power_grid_model_ds._core.model.arrays.base.array import FancyArray
88
from power_grid_model_ds._core.model.grids.base import Grid
9+
from power_grid_model_ds._core.model.utils import _get_branch3_branches
910
from power_grid_model_ds.arrays import Branch3Array, BranchArray, NodeArray
1011

1112

@@ -41,7 +42,7 @@ def parse_branch3_array(branches: Branch3Array, group: Literal["transformer"]) -
4142
parsed_branches = []
4243
columns = branches.columns
4344
for branch in branches:
44-
for branch_ in _branch3_to_branches(branch):
45+
for branch_ in _get_branch3_branches(branch):
4546
cyto_elements = {"data": _array_to_dict(branch_, columns)}
4647
cyto_elements["data"].update(
4748
{
@@ -56,24 +57,6 @@ def parse_branch3_array(branches: Branch3Array, group: Literal["transformer"]) -
5657
return parsed_branches
5758

5859

59-
def _branch3_to_branches(branch3: Branch3Array) -> BranchArray:
60-
node_1 = branch3.node_1.item()
61-
node_2 = branch3.node_2.item()
62-
node_3 = branch3.node_3.item()
63-
64-
status_1 = branch3.status_1.item()
65-
status_2 = branch3.status_2.item()
66-
status_3 = branch3.status_3.item()
67-
68-
branches = BranchArray.zeros(3)
69-
branches.from_node = [node_1, node_1, node_2]
70-
branches.to_node = [node_2, node_3, node_3]
71-
branches.from_status = [status_1, status_1, status_2]
72-
branches.to_status = [status_2, status_3, status_3]
73-
74-
return branches
75-
76-
7760
def parse_branch_array(branches: BranchArray, group: Literal["line", "link", "transformer"]) -> list[dict[str, Any]]:
7861
"""Parse the branch array."""
7962
parsed_branches = []

0 commit comments

Comments
 (0)