power-grid-model-ds 1.4.6__py3-none-any.whl → 1.4.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -212,11 +212,18 @@ class FancyArrayContainer:
212
212
  array = self.attach_ids(array)
213
213
  elif np.any(array.id == EMPTY_ID):
214
214
  raise ValueError(f"Cannot append: array contains empty [{EMPTY_ID}] and non-empty ids.")
215
+ elif check_max_id and self.id_counter > 0:
216
+ # Only check for overlaps when array has prescribed (non-empty) IDs
217
+ # Check if any incoming ID might overlap with existing IDs
218
+ # This prevents overlaps since counter tracks the highest used ID
219
+ new_min_id = np.min(array.id)
220
+ if new_min_id <= self._id_counter:
221
+ raise ValueError(
222
+ f"Cannot append: minimum id {new_min_id} is not greater than "
223
+ f"the current id counter {self._id_counter}"
224
+ )
215
225
 
216
226
  new_max_id = np.max(array.id)
217
- if check_max_id and new_max_id < self._id_counter:
218
- raise ValueError(f"Cannot append: id {new_max_id} is lower than the id counter")
219
-
220
227
  # Update _id_counter
221
228
  self._id_counter = max(self._id_counter, new_max_id)
222
229
 
@@ -5,11 +5,12 @@
5
5
  YELLOW = "#facc37"
6
6
  CYTO_COLORS = {
7
7
  "line": YELLOW,
8
- "link": "green",
8
+ "link": "#008000",
9
9
  "transformer": "#4290f5",
10
10
  "node": YELLOW,
11
11
  "selected": "#e28743",
12
12
  "selected_transformer": "#0349a3",
13
+ "selected_link": "#004000",
13
14
  "substation_node": "purple",
14
15
  "open_branch": "#c9c9c9",
15
16
  "highlighted": "#a10000",
@@ -75,6 +75,16 @@ _SELECTED_TRANSFORMER_STYLE = {
75
75
  },
76
76
  }
77
77
 
78
+ _LINK_STYLE = {
79
+ "selector": "edge[group = 'link']",
80
+ "style": {"line-color": CYTO_COLORS["link"], "target-arrow-color": CYTO_COLORS["link"]},
81
+ }
82
+
83
+ _SELECTED_LINK_STYLE = {
84
+ "selector": "edge[group = 'link']:selected, edge[group = 'link']:active",
85
+ "style": {"line-color": CYTO_COLORS["selected_link"], "target-arrow-color": CYTO_COLORS["selected_link"]},
86
+ }
87
+
78
88
  _OPEN_BRANCH_STYLE = {
79
89
  "selector": "edge[from_status = 0], edge[to_status = 0]",
80
90
  "style": {
@@ -106,9 +116,11 @@ DEFAULT_STYLESHEET = [
106
116
  _SUBSTATION_NODE_STYLE,
107
117
  _BRANCH_STYLE,
108
118
  _TRANSFORMER_STYLE,
119
+ _LINK_STYLE,
109
120
  _SELECTED_NODE_STYLE,
110
121
  _SELECTED_BRANCH_STYLE,
111
122
  _SELECTED_TRANSFORMER_STYLE,
123
+ _SELECTED_LINK_STYLE,
112
124
  _OPEN_BRANCH_STYLE,
113
125
  _OPEN_FROM_SIDE_BRANCH_STYLE,
114
126
  _OPEN_TO_SIDE_BRANCH_STYLE,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: power-grid-model-ds
3
- Version: 1.4.6
3
+ Version: 1.4.7
4
4
  Summary: Power Grid Model extension which provides a grid data structure for simulation and analysis
5
5
  Author-email: Contributors to the Power Grid Model project <powergridmodel@lfenergy.org>
6
6
  License: MPL-2.0
@@ -32,7 +32,7 @@ power_grid_model_ds/_core/model/arrays/base/_string.py,sha256=Y2oTbGvoAwKGN2e32L
32
32
  power_grid_model_ds/_core/model/arrays/base/array.py,sha256=b6e8LBajvzYCfvTvADudG8lE9SnOdke769YFewOjnhs,13167
33
33
  power_grid_model_ds/_core/model/arrays/base/errors.py,sha256=M62aA2pv9AlSJSvniU1IJTtRC0jvBlMYRxv2SchTdDA,475
34
34
  power_grid_model_ds/_core/model/containers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- power_grid_model_ds/_core/model/containers/base.py,sha256=O-GoE2oN-WJl5wKXCl3fUHbvW5qc0oZ2-oY-zUWBGbs,9037
35
+ power_grid_model_ds/_core/model/containers/base.py,sha256=ovEn0xbll8N1zaAQ6mXtIIyA_UnZuVGU0QZ3FrrA4kY,9453
36
36
  power_grid_model_ds/_core/model/dtypes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
37
  power_grid_model_ds/_core/model/dtypes/appliances.py,sha256=ZfubZm0e7057gv78EQXMeUWefES0icyqFgIgRDnyV5c,1002
38
38
  power_grid_model_ds/_core/model/dtypes/branches.py,sha256=Pb65bRmaxCIJf1d2zF1D0r1zIYee1kEifkvgdP8OvTo,3811
@@ -67,16 +67,16 @@ power_grid_model_ds/_core/visualizer/callbacks/element_selection.py,sha256=ZscGQ
67
67
  power_grid_model_ds/_core/visualizer/callbacks/header.py,sha256=dQnUNzKonMPcSpSaikIGrsM9OdZV_C2RdFuPigTVZzg,925
68
68
  power_grid_model_ds/_core/visualizer/callbacks/search_form.py,sha256=KceSRKYcSAxUdfyfQ3MFbkb0GHljiWEnSk60ufjFoXg,2181
69
69
  power_grid_model_ds/_core/visualizer/layout/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
- power_grid_model_ds/_core/visualizer/layout/colors.py,sha256=tt-2LvkClYvQ5ozL2UCX5q63AbXaXXo7kK2yLAzeCVw,455
70
+ power_grid_model_ds/_core/visualizer/layout/colors.py,sha256=ourb0fRb2FEBVdepxPw-CeK7pDE7zcMoIwUIlnf_Afs,489
71
71
  power_grid_model_ds/_core/visualizer/layout/cytoscape_html.py,sha256=EL6Z2ewCZc86NvoDQoek7MmZH_trPtRWXBcH1kfnR2Y,924
72
- power_grid_model_ds/_core/visualizer/layout/cytoscape_styling.py,sha256=o5Rh8uNCyt9YxODkNH76sx_wKs8aCBrCMVGCFBTtegQ,3288
72
+ power_grid_model_ds/_core/visualizer/layout/cytoscape_styling.py,sha256=4YkmQFNMaGKQaP5szVsw_oJW1zj5wglMDintuTITiTA,3700
73
73
  power_grid_model_ds/_core/visualizer/layout/header.py,sha256=PdIXUBZgdacTc7V99tR93SFcMjUHAzWdFGVGjq7PhMw,1829
74
74
  power_grid_model_ds/_core/visualizer/layout/header_config.py,sha256=5Pn3mjHMLy5Xp2k0BkNosB-St6cy_vFp4Mdz0VdkpPc,1892
75
75
  power_grid_model_ds/_core/visualizer/layout/header_legenda.py,sha256=tmSIxQFW0d4ey64J_w9QwcZji3EIg7BZ7Rf8w167xb8,2086
76
76
  power_grid_model_ds/_core/visualizer/layout/header_search.py,sha256=RYTQosQaAeKyOiPNR9c0ofMiY2wKmmJCPENmlkv6BZw,1726
77
77
  power_grid_model_ds/_core/visualizer/layout/selection_output.py,sha256=fuPAdG5XmTj2E0oQ8w_tp9PGbB8bJ5fguteLtnM1EDg,534
78
- power_grid_model_ds-1.4.6.dist-info/licenses/LICENSE,sha256=GpbnG1pNl-ORtSP6dmHeiZvwy36UFli6MEZy1XlmBqo,14906
79
- power_grid_model_ds-1.4.6.dist-info/METADATA,sha256=3T58Krn7LR69SZRthqQvie7eRSuVaOLBqaPQu1hqx4s,8044
80
- power_grid_model_ds-1.4.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
81
- power_grid_model_ds-1.4.6.dist-info/top_level.txt,sha256=nJa103Eqvm5TESYEKPFVImfLg_ugGOBznikrM-rZQZg,20
82
- power_grid_model_ds-1.4.6.dist-info/RECORD,,
78
+ power_grid_model_ds-1.4.7.dist-info/licenses/LICENSE,sha256=GpbnG1pNl-ORtSP6dmHeiZvwy36UFli6MEZy1XlmBqo,14906
79
+ power_grid_model_ds-1.4.7.dist-info/METADATA,sha256=iTTMYepEESvvYe-7mtPgtYyJ0Mg-6UJKbBdCK85TIjo,8044
80
+ power_grid_model_ds-1.4.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
81
+ power_grid_model_ds-1.4.7.dist-info/top_level.txt,sha256=nJa103Eqvm5TESYEKPFVImfLg_ugGOBznikrM-rZQZg,20
82
+ power_grid_model_ds-1.4.7.dist-info/RECORD,,