Skip to content

Commit

Permalink
Merge branch 'develop' into issues/1785-remove-deprecations
Browse files Browse the repository at this point in the history
  • Loading branch information
KS-HTK authored Jan 7, 2025
2 parents f34309a + 1fb8de3 commit 9d48f65
Show file tree
Hide file tree
Showing 16 changed files with 518 additions and 207 deletions.
7 changes: 5 additions & 2 deletions .github/workflows/upload_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,14 @@ jobs:

# Waste some time
- name: Sleep for 150s to make release available
if: ${{ inputs.upload_server == 'pypi' }}
uses: juliangruber/sleep-action@v1
with:
time: 150s

# Notify fraunhofer ci about the new version
- uses: eic/trigger-gitlab-ci@v3
if: ${{ inputs.upload_server == 'pypi' }}
with:
url: https://gitlab.cc-asp.fraunhofer.de
project_id: 27329
Expand All @@ -81,6 +83,7 @@ jobs:

# Run an installation for testing
- name: Install pandapower from PyPI
if: ${{ inputs.upload_server == 'pypi' }}
run: |
python3 -m pip install pandapower
python3 -c "import pandapower; print(pandapower.__version__)"
python3 -m pip install --pre pandapower
python3 -c "import pandapower; print(pandapower.__version__)"
9 changes: 8 additions & 1 deletion CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
Change Log
=============

[upcoming release] - 2024-..-..
[upcoming release] - 2025-..-..
-------------------------------
- [REMOVED] Excluding tests and test_files from built packages
- [ADDED] Static Var Compensator with Voltage Control
- [ADDED] Implementation of Allocation Factor WLS (AF-WLS) for non observable distribution grids
- [FIXED] Deletion of multiple measurements at the same bus or branch
- [FIXED] Creation of zero injection measurements in WLS estimator
Expand All @@ -18,9 +20,12 @@ Change Log
- [ADDED] converter for European EHV grid data from JAO, the "Single Allocation Platform (SAP) for all European Transmission System Operators (TSOs) that operate in accordance to EU legislation"
- [ADDED] Add GeographicalRegion and SubGeographicalRegion names and ids to bus df in cim converter
- [CHANGED] Capitalize first letter of columns busbar_id, busbar_name and substation_id in bus df for cim converter
- [CHANGED] required standard type parameters are made available by function :code:`required_std_type_parameters()`
- [CHANGED] toolbox replace functions (e.g. gen replacement by sgens): improved result table implementation and added profiles consideration
- [FIXED] Do not modify pandas options when importing pandapower
- [FIXED] fixed copy-paste error in contingency results "max_limit_nminus1" and "min_limit_nminus1"
- [ADDED] improved lightsim2grid documentation including compatibitliy issues
- [FIXED] avoid duplicated keys in kwargs and pf_options in run_contingency()
- [FIXED] cim2pp: set default xml encoding to None to avoid error after changing to lxml
- [FIXED] PandaModels OPF with 'bus_dc' key errors
- [FIXED] julia tests
Expand Down Expand Up @@ -81,6 +86,7 @@ Change Log
- [CHANGED] parameter renaming in net.group: element -> element_index
- [CHANGED] in to_ppc(), the default of calculate_voltage_angles is True now (as in previously changed in runpp()).
- [FIXED] fixed some small bugs in the CGMES converter and improved its speed
- [CHANGED] vectorization of switch bus and element checks in create_switches()
- [CHANGED] trigger a numpy error in makeYbus, makeBbus, _wye_delta instead of warning
- [ADDED] transformer tap hunting detection for DiscreteTapControl
- [CHANGED] diagnostic for implausible impedance values includes xward, trafo, trafo3w
Expand All @@ -91,6 +97,7 @@ Change Log
- [ADDED] support for unequal leakage resistance and reactance for HV and LV sides of a 2W-transformer
- [ADDED] Add VSC element, dc buses, dc lines, and hybrid AC/DC power flow calculation
- [CHANGED] accelerate _integrate_power_elements_connected_with_switch_buses() in get_equivalent()
- [FIXED] index error during unbalanced powerflow if multiple external grids are present
- [CHANGED] accelerate distributed slack power flow calculation by using sparse-aware operations in _subnetworks()
- [CHANGED] Trafo Controllers can now be added to elements that are out of service, changed self.nothing_to_do()
- [ADDED] Discrete shunt controller for local voltage regulation with shunt steps
Expand Down
15 changes: 0 additions & 15 deletions MANIFEST.in

This file was deleted.

2 changes: 1 addition & 1 deletion doc/converter/powerfactory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The documentation describes how to use the exporter as a function in "Engine mod
- ElmZpu (pu Impedance)
- ElmSind (Series Reactor)
- Elmscap (Series Capacitor)

- ElmSvs (Static Var Compensator with Voltage Control)

Setup PowerFactory and Python
=====================================
Expand Down
10 changes: 5 additions & 5 deletions doc/elements/line_par.csv
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,18 @@ from_bus*;integer;;Index of bus where the line starts
to_bus*;integer;;Index of bus where the line ends
length_km*;float;:math:`>` 0;length of the line [km]
r_ohm_per_km*;float;:math:`\geq` 0 ;resistance of the line [Ohm per km]
x_ohm_per_km*;float;:math:`\geq` 0 ;inductance of the line [Ohm per km]
x_ohm_per_km*;float;:math:`\geq` 0 ;reactance of the line [Ohm per km]
c_nf_per_km*;float;:math:`\geq` 0 ;capacitance of the line (line-to-earth) [nano Farad per km]
r0_ohm_per_km****;float;:math:`\geq` 0 ;zero sequence resistance of the line [Ohm per km]
x0_ohm_per_km****;float;:math:`\geq` 0 ;zero sequence inductance of the line [Ohm per km]
x0_ohm_per_km****;float;:math:`\geq` 0 ;zero sequence reactance of the line [Ohm per km]
c0_nf_per_km****;float;:math:`\geq` 0 ;zero sequence capacitance of the line [nano Farad per km]
g_us_per_km*;float;:math:`\geq` 0 ;dielectric conductance of the line [micro Siemens per km]
max_i_ka*;float;:math:`>` 0 ;maximal thermal current [kilo Ampere]
parallel*;integer;:math:`\geq` 1;number of parallel line systems
df*;float;0...1 ;derating factor (scaling) for max_i_ka
type;string;"| Naming conventions:

| *""ol""* - overhead line
type;string;"| Naming conventions:
| *""ol""* - overhead line
| *""cs""* - underground cable system";type of line
max_loading_percent**;float;:math:`>` 0 ;Maximum loading of the line
endtemp_degree***;float;:math:`>` 0 ;Short-Circuit end temperature of the line
Expand Down
File renamed without changes.
18 changes: 13 additions & 5 deletions pandapower/contingency/contingency.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,17 @@ def run_contingency(net, nminus1_cases, pf_options=None, pf_options_nminus1=None
# set up the dict for results and relevant variables
# ".get" in case the options have been set in pp.set_user_pf_options:
raise_errors = kwargs.get("raise_errors", False)
if "recycle" in kwargs: kwargs["recycle"] = False # so that we can be sure it doesn't happen
if pf_options is None: pf_options = net.user_pf_options.get("pf_options", net.user_pf_options)
if pf_options_nminus1 is None: pf_options_nminus1 = net.user_pf_options.get("pf_options_nminus1",
net.user_pf_options)
if "recycle" in kwargs:
kwargs["recycle"] = False # so that we can be sure it doesn't happen
if pf_options is None:
pf_options = net.user_pf_options.get("pf_options", net.user_pf_options)
if pf_options_nminus1 is None:
pf_options_nminus1 = net.user_pf_options.get("pf_options_nminus1", net.user_pf_options)
if kwargs is not None:
# avoid duplicate passing keys to contingency_evaluation_function()
pf_options = {key: val for key, val in pf_options.items() if key not in kwargs.keys()}
pf_options_nminus1 = {key: val for key, val in pf_options_nminus1.items() if key not in
kwargs.keys()}

contingency_results = {element: {"index": net[element].index.values}
for element in ("bus", "line", "trafo", "trafo3w") if len(net[element]) > 0}
Expand Down Expand Up @@ -178,7 +185,8 @@ def run_contingency_ls2g(net, nminus1_cases, contingency_evaluation_function=pp.
n_bus = len(net.bus)
last_bus = net.bus.index[-1]
if net.bus.index[0] != 0 or last_bus != n_bus - 1 or sum(net.bus.index) != last_bus * n_bus / 2:
raise UserWarning("bus index must be continuous and start with 0 (use pandapower.create_continuous_bus_index)")
raise UserWarning("bus index must be continuous and start with 0 "
"(use pandapower.create_continuous_bus_index)")
contingency_evaluation_function(net, **kwargs)

trafo_flag = False
Expand Down
2 changes: 2 additions & 0 deletions pandapower/converter/powerfactory/pf_export_functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ def create_network_dict(app, flag_graphics='GPS'):
'ElmAsm',
'ElmShnt',
'ElmVac',
'ElmSvs',
'ElmVsc',
'ElmVscmono',

Expand Down Expand Up @@ -56,6 +57,7 @@ def create_network_dict(app, flag_graphics='GPS'):
'ElmPvsys': ['W', 'var', 'VA'],
'ElmXnet': ['W', 'var', 'VA'],
'ElmSym': ['W', 'var', 'VA'],
'ElmSvs': ['W', 'var', 'VA'],
'ElmAsm': ['W', 'var', 'VA'],
'ElmShnt': ['W', 'var', 'VA'],
'ElmZpu': ['W', 'var', 'VA'],
Expand Down
Loading

0 comments on commit 9d48f65

Please sign in to comment.