pandapower 2.14.2__zip → 2.14.6__zip
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.
- {pandapower-2.14.2 → pandapower-2.14.6}/.github/workflows/github_test_action.yml +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/CHANGELOG.rst +19 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/PKG-INFO +20 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/_version.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/auxiliary.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/util/auxiliary.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/convert_format.py +13 -13
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/build_pp_net.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/convert_measurements.py +13 -13
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/connectivitynodes/connectivityNodesCim16.py +31 -31
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/coordinates/coordinatesFromDLCim16.py +12 -12
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/coordinates/geoCoordinatesFromGLCim16.py +13 -13
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/externalnetworks/externalNetworkInjectionsCim16.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/generators/asynchronousMachinesCim16.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/generators/energySourcesCim16.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/generators/synchronousMachinesCim16.py +17 -17
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/impedance/equivalentBranchesCim16.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/impedance/seriesCompensatorsCim16.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/lines/acLineSegmentsCim16.py +11 -11
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/lines/dcLineSegmentsCim16.py +9 -9
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/loads/conformLoadsCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/loads/energyConcumersCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/loads/nonConformLoadsCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/loads/stationSuppliesCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/shunts/linearShuntCompensatorCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/shunts/nonLinearShuntCompensatorCim16.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/shunts/staticVarCompensatorCim16.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/switches/switchesCim16.py +5 -5
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/transformers/powerTransformersCim16.py +41 -41
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/wards/equivalentInjectionsCim16.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim_classes.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/pp_import_functions.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/validate.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pypower/from_ppc.py +6 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/diagnostic.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/state_estimation.py +6 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/util.py +8 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/file_io.py +8 -23
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/auxiliary.py +17 -17
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/get_equivalent.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/rei_generation.py +9 -9
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/toolbox.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/ward_generation.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/groups.py +7 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/io_utils.py +6 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/mv_oberrhein.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_cases.py +8 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/synthetic_voltage_control_lv_networks.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/opf/validate_opf_input.py +3 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/generic_geodata.py +14 -10
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/oc_relay_model.py +125 -125
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/protection_devices/fuse.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/protection_devices/ocrelay.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/utility_functions.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/results_bus.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/sql_io.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_diagnostic.py +23 -23
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_file_io.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_group.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_std_types.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_continuous_tap_control.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_discrete_tap_control.py +8 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_vm_set_tap_control.py +10 -10
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_wls_estimation.py +22 -22
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/grid_equivalents/test_get_equivalent.py +13 -13
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/grid_equivalents/test_grid_equivalents_auxiliary.py +8 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/result_test_network_generator.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_dist_slack.py +5 -5
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_facts.py +5 -5
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_results.py +7 -7
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_rundcpp.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_runpp.py +24 -24
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_runpp_pgm.py +7 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_scenarios.py +21 -21
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_tdpf.py +5 -5
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_kerber_networks.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_basic.py +6 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_cost_consistency.py +5 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_costs_mixed.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_costs_pol.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_opf_cigre.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_pandamodels_runpm.py +32 -32
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/test_generic_coordinates.py +3 -3
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_all_currents.py +16 -16
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_gen.py +6 -6
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/test_timeseries_recycle.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_comparison.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_data_modification.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_element_selection.py +7 -7
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_grid_modification.py +8 -8
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/topology/test_create_graph.py +4 -4
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/data_modification.py +2 -2
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/grid_modification.py +11 -11
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/result_info.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/topology/create_graph.py +25 -14
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower.egg-info/PKG-INFO +20 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/setup.py +1 -1
- {pandapower-2.14.2 → pandapower-2.14.6}/.github/workflows/test_release.yml +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/.github/workflows/upload_release.yml +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/AUTHORS +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/LICENSE +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/MANIFEST.in +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/README.rst +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/build_branch.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/build_bus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/build_gen.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/contingency/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/contingency/contingency.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/basic_controller.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/characteristic_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/const_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/ContinuousTapControl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/DiscreteTapControl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/TapDependentImpedance.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/USetTapControl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/VmSetTapControl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/controller/trafo_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/run_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/util/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/util/characteristic.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/control/util/diagnostic.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/connectivitynodes/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/coordinates/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/externalnetworks/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/generators/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/impedance/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/lines/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/loads/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/shunts/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/switches/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/transformers/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/transformers/tapController.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/converter_classes/wards/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim2pp/from_cim.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/cim_tools.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/interfaces.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/other_classes.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/pp_classes.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/pp_tools.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/cim/serialized_schemas/CIM16_4.0.8_schema.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/matpower/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/matpower/from_mpc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/matpower/to_mpc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pandamodels/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pandamodels/from_pm.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pandamodels/to_pm.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/echo_off.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/export_pfd_to_pp.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/gui.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/logger_setup.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/main_pf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/pf_export_functions.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/power_factory_files/favicon.ico +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/power_factory_files/icon.pfd +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/power_factory_files/pp_export.bmp +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/powerfactory/run_import.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pypower/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/converter/pypower/to_ppc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/create.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/diagnostic_reports.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/base.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/estimator.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/lp.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/matrix_base.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/algorithm/optimization.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/idx_brch.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/idx_bus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/ppc_conversion.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/estimation/results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/grid_equivalents/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/IEEE_European_LV_Off_Peak_1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/IEEE_European_LV_Off_Peak_1440.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/IEEE_European_LV_On_Peak_566.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/cigre_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/create_examples.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/dickert_lv_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/ieee_europen_lv_asymmetric.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/kerber_extreme_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/kerber_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/mv_oberrhein.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/mv_oberrhein_substations.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/GBnetwork.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/GBreducednetwork.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case118.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case11_iwamoto.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case1354pegase.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case14.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case145.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case1888rte.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case24_ieee_rts.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case2848rte.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case2869pegase.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case30.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case300.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case3120sp.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case33bw.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case39.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case4gs.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case5.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case57.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case5_demo_gridcal.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case6470rte.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case6495rte.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case6515rte.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case6ww.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case89pegase.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case9.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case9241pegase.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case_ieee30.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/case_illinois200.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/power_system_test_case_jsons/iceland.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/networks/simple_pandapower_test_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/opf/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/opf/make_objective.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/opf/pm_storage.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/opf/run_pandamodels.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/optimal_powerflow.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pd2ppc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pd2ppc_zero.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/create_jacobian.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/create_jacobian_facts.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/create_jacobian_numba.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/create_jacobian_tdpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/dSbus_dV_numba.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/iwamoto_multiplier.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/makeYbus_facts.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/makeYbus_numba.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/no_numba.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/pfsoln_numba.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/ppci_variables.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/run_bfswpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/run_dc_pf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/run_newton_raphson_pf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/runpf_pypower.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pf/runpp_3ph.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/collections.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/colormaps.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/geo.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/patch_makers.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/get_colors.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/mapbox_plot.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/pf_res_plotly.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/simple_plotly.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/traces.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotly/vlevel_plotly.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/plotting_toolbox.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/powerflow_results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/simple_plot.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/plotting/to_html.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/powerflow.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/basic_protection_device.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/example_grids.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/protection_devices/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/protection/run_protection.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/_compat.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/add_userfcn.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/bustypes.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/d2AIbr_dV2.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/d2ASbr_dV2.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/d2Ibr_dV2.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/d2Sbr_dV2.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/d2Sbus_dV2.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dAbr_dV.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dIbr_dV.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dSbr_dV.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dSbus_dV.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dcopf_solver.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/dcpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/fdpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/gausspf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/hasPQcap.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_area.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_brch.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_brch_sc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_brch_tdpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_bus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_bus_sc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_cost.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_gen.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_ssc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_svc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/idx_tcsc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/isload.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeAang.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeApq.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeAvl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeAy.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeB.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeBdc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeLODF.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makePTDF.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeSbus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/makeYbus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/newtonpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_args.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_consfcn.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_costfcn.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_execute.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_hessfcn.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_model.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/opf_setup.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/pfsoln.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/pips.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/pipsopf_solver.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/pipsver.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/polycost.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/ppoption.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/ppver.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/pqcost.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/printpf.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/qps_pips.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/qps_pypower.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/run_userfcn.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/totcost.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/update_mupq.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/pypower/util.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/results_branch.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/results_gen.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/run.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/runpm.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/calc_sc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/currents.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/impedance.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/kappa.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/ppc_conversion.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/shortcircuit/toolbox.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/std_types.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/input_files/test_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/old_net.p +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_auxiliary.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_convert_format.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_create.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/api/test_sql_io.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/conftest.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/consistency_checks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_const_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_control.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/control/test_tap_dependent_impedance.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/case24_ieee_rts.m +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/case24_ieee_rts.mat +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/case2_2_by_code.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case14.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case2_1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case2_2.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case2_3.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case2_4.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case3_1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case3_2.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case57.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/ppc_testgrids/case6.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case118.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case24_ieee_rts.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case30.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case300.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case39.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case4gs.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case6ww.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/pypower_cases/case9.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_from_cim.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_from_mpc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_from_powerfactory.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_from_powerfactory_3ph.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_from_ppc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/test_to_ppc_and_mpc.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/pf_combinations_results_net_bus_trafo_line_load_19.10.20.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/pf_combinations_results_trafo.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/pf_results_line.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/test_line_3ph.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/test_net_3ph_test_2020_10_19.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/test_trafo_3ph.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/converter/testfiles/trafo_tap_model.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/3bus_wls.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_conditions.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_irwls_estimation.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_opt_lp_estimation.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_pmu.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/estimation/test_recycle.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/grid_equivalents/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/grid_equivalents/test_get_equivalent_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/grid_equivalents/test_grid_equivalents_toolbox.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/helper_functions.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/PF_Results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/runpp_3ph Validation.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_PTDF_LODF.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_recycle.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_runpp_3ph.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/test_runpp_3ph_n_line.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/loadflow/testgrid.p +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_cigre_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_create_example.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_dickert_lv_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_kerber_extreme_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_mv_oberrhein.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_power_system_test_cases.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_simple_pandapower_test_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/networks/test_synthetic_voltage_control_lv_networks.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/case5_clm_matfile.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/case5_clm_pm.m +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/case5_clm_pp.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/cigre_timeseries_15min.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_TNEP.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_check_opf_data.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_costs_pwl.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_costs_pwl_q.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_curtailment.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_dcline.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_oberrhein.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_pandamodels_converter.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_pandamodels_installation.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/opf/test_pp_vs_pm.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/test_create_colormaps.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/test_geo.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/test_simple_plotly.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/plotting/test_to_html.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/run_tests.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/sc_test_meshed_grid.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_1ph.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_iec60909_4.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_impedance.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_meshing_detection.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_min_branch_results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_motor.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_ring.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_sc_multi_bus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_sc_single_bus.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_sc_voltage.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_sgen.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_trafo3w.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/shortcircuit/test_transformer.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Buscoords.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/LineCodes.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Lines.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/LoadShapes.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_1.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_10.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_100.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_11.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_12.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_13.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_14.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_15.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_16.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_17.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_18.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_19.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_2.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_20.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_21.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_22.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_23.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_24.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_25.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_26.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_27.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_28.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_29.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_3.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_30.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_31.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_32.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_33.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_34.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_35.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_36.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_37.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_38.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_39.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_4.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_40.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_41.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_42.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_43.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_44.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_45.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_46.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_47.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_48.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_49.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_5.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_50.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_51.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_52.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_53.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_54.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_55.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_56.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_57.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_58.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_59.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_6.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_60.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_61.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_62.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_63.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_64.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_65.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_66.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_67.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_68.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_69.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_7.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_70.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_71.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_72.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_73.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_74.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_75.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_76.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_77.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_78.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_79.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_8.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_80.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_81.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_82.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_83.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_84.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_85.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_86.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_87.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_88.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_89.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_9.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_90.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_91.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_92.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_93.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_94.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_95.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_96.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_97.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_98.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Load_Profiles/Load_profile_99.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Loads.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Source.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/European_LV_CSV/Transformer.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/IEC60909-4_example.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/controller_containing_NoneNan.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/CGMES_v2.4.15_FullGridTestConfiguration_BB_BE_v1.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/CGMES_v2.4.15_FullGridTestConfiguration_BD_v1.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/CGMES_v2.4.15_RealGridTestConfiguration_v2.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/CGMES_v2.4.15_SmallGridTestConfiguration_BaseCase_Complete_v3.0.0.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/CGMES_v2.4.15_SmallGridTestConfiguration_Boundary_v3.0.0.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/Disclaimer.docx +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/LICENSE.txt +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/SimBench_1-HVMV-mixed-1.105-0-sw_modified.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/Simbench_1-EHV-mixed--2-no_sw.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/example_cim/example_multivoltage.zip +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.2.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.2.2.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.3.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.3.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.4.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.4.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.4.2.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.4.3.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.5.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.5.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.6.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_1.6.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.0.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.0.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.1.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.10.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.10.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.11.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.11.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.12.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.12.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.13.0.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.13.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.14.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.2.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.3.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.3.1.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.4.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.5.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.6.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.7.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.8.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/old_versions/example_2.9.0.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/pm_example_res.json +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/run_powermodels_custom.jl +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/save_version.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/test_files/tdpf/case30_branch_details.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/test_data_source.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/test_files/small_profile.csv +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/test_output_writer.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/timeseries/test_timeseries.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_power_factor.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/toolbox/test_result_info.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/topology/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/test/topology/test_graph_searches.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/data_source.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/data_sources/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/data_sources/frame_data.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/output_writer.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/read_batch_results.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/run_time_series.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/timeseries/ts_runpp.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/comparison.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/element_selection.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/toolbox/power_factor.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/topology/__init__.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/topology/graph_searches.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower/topology/graph_tool_interface.py +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower.egg-info/SOURCES.txt +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower.egg-info/dependency_links.txt +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower.egg-info/requires.txt +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/pandapower.egg-info/top_level.txt +0 -0
- {pandapower-2.14.2 → pandapower-2.14.6}/setup.cfg +0 -0
|
@@ -48,11 +48,11 @@ class AsynchronousMachinesCim16:
|
|
|
48
48
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['NuclearGeneratingUnit']],
|
|
49
49
|
sort=False)
|
|
50
50
|
eq_generating_units['type'].fillna('Nuclear', inplace=True)
|
|
51
|
-
eq_generating_units.rename(columns={'rdfId': 'GeneratingUnit'}
|
|
51
|
+
eq_generating_units = eq_generating_units.rename(columns={'rdfId': 'GeneratingUnit'})
|
|
52
52
|
eqssh_asynchronous_machines = self.cimConverter.merge_eq_ssh_profile('AsynchronousMachine',
|
|
53
53
|
add_cim_type_column=True)
|
|
54
54
|
# prevent conflict of merging two dataframes each containing column 'name'
|
|
55
|
-
eq_generating_units.drop('name', axis=1
|
|
55
|
+
eq_generating_units = eq_generating_units.drop('name', axis=1)
|
|
56
56
|
eqssh_asynchronous_machines = pd.merge(eqssh_asynchronous_machines, eq_generating_units,
|
|
57
57
|
how='left', on='GeneratingUnit')
|
|
58
58
|
eqssh_asynchronous_machines = pd.merge(eqssh_asynchronous_machines, self.cimConverter.bus_merge, how='left',
|
|
@@ -66,12 +66,12 @@ class AsynchronousMachinesCim16:
|
|
|
66
66
|
eqssh_asynchronous_machines['generator_type'] = 'async'
|
|
67
67
|
eqssh_asynchronous_machines['loading_percent'] = \
|
|
68
68
|
100 * eqssh_asynchronous_machines['p_mw'] / eqssh_asynchronous_machines['ratedMechanicalPower']
|
|
69
|
-
eqssh_asynchronous_machines.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'],
|
|
69
|
+
eqssh_asynchronous_machines = eqssh_asynchronous_machines.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'],
|
|
70
70
|
'connected': 'in_service', 'index_bus': 'bus',
|
|
71
71
|
'rxLockedRotorRatio': 'rx', 'iaIrRatio': 'lrc_pu',
|
|
72
72
|
'ratedPowerFactor': 'cos_phi', 'ratedU': 'vn_kv',
|
|
73
73
|
'efficiency': 'efficiency_n_percent',
|
|
74
|
-
'ratedMechanicalPower': 'pn_mech_mw'}
|
|
74
|
+
'ratedMechanicalPower': 'pn_mech_mw'})
|
|
75
75
|
eqssh_asynchronous_machines['scaling'] = 1
|
|
76
76
|
eqssh_asynchronous_machines['efficiency_percent'] = 100
|
|
77
77
|
return eqssh_asynchronous_machines
|
|
@@ -38,12 +38,12 @@ class EnergySourceCim16:
|
|
|
38
38
|
pd.concat([self.cimConverter.cim['eq']['EnergySchedulingType'],
|
|
39
39
|
self.cimConverter.cim['eq_bd']['EnergySchedulingType']],
|
|
40
40
|
sort=False)
|
|
41
|
-
eq_energy_scheduling_type.rename(columns={'rdfId': 'EnergySchedulingType', 'name': 'type'}
|
|
41
|
+
eq_energy_scheduling_type = eq_energy_scheduling_type.rename(columns={'rdfId': 'EnergySchedulingType', 'name': 'type'})
|
|
42
42
|
eqssh_energy_sources = self.cimConverter.merge_eq_ssh_profile('EnergySource', add_cim_type_column=True)
|
|
43
43
|
eqssh_energy_sources = pd.merge(eqssh_energy_sources, eq_energy_scheduling_type, how='left',
|
|
44
44
|
on='EnergySchedulingType')
|
|
45
45
|
eqssh_energy_sources = pd.merge(eqssh_energy_sources, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
46
|
-
eqssh_energy_sources.drop_duplicates(['rdfId'], keep='first'
|
|
46
|
+
eqssh_energy_sources = eqssh_energy_sources.drop_duplicates(['rdfId'], keep='first')
|
|
47
47
|
sgen_type = dict({'WP': 'WP', 'Wind': 'WP', 'PV': 'PV', 'SolarPV': 'PV', 'BioGas': 'BioGas',
|
|
48
48
|
'OtherRES': 'OtherRES', 'CHP': 'CHP'}) # todo move?
|
|
49
49
|
eqssh_energy_sources['type'] = eqssh_energy_sources['type'].map(sgen_type)
|
|
@@ -55,6 +55,6 @@ class EnergySourceCim16:
|
|
|
55
55
|
eqssh_energy_sources['scaling'] = 1.
|
|
56
56
|
eqssh_energy_sources['current_source'] = True
|
|
57
57
|
eqssh_energy_sources['generator_type'] = 'current_source'
|
|
58
|
-
eqssh_energy_sources.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'], 'connected': 'in_service',
|
|
59
|
-
'index_bus': 'bus'}
|
|
58
|
+
eqssh_energy_sources = eqssh_energy_sources.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'], 'connected': 'in_service',
|
|
59
|
+
'index_bus': 'bus'})
|
|
60
60
|
return eqssh_energy_sources
|
|
@@ -44,26 +44,26 @@ class SynchronousMachinesCim16:
|
|
|
44
44
|
eq_generating_units['type'] = 'GeneratingUnit'
|
|
45
45
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['WindGeneratingUnit']],
|
|
46
46
|
sort=False)
|
|
47
|
-
eq_generating_units['type'].fillna('WP'
|
|
47
|
+
eq_generating_units['type'] = eq_generating_units['type'].fillna('WP')
|
|
48
48
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['HydroGeneratingUnit']],
|
|
49
49
|
sort=False)
|
|
50
|
-
eq_generating_units['type'].fillna('Hydro'
|
|
50
|
+
eq_generating_units['type'] = eq_generating_units['type'].fillna('Hydro')
|
|
51
51
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['SolarGeneratingUnit']],
|
|
52
52
|
sort=False)
|
|
53
|
-
eq_generating_units['type'].fillna('PV'
|
|
53
|
+
eq_generating_units['type'] = eq_generating_units['type'].fillna('PV')
|
|
54
54
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['ThermalGeneratingUnit']],
|
|
55
55
|
sort=False)
|
|
56
|
-
eq_generating_units['type'].fillna('Thermal'
|
|
56
|
+
eq_generating_units['type'] = eq_generating_units['type'].fillna('Thermal')
|
|
57
57
|
eq_generating_units = pd.concat([eq_generating_units, self.cimConverter.cim['eq']['NuclearGeneratingUnit']],
|
|
58
58
|
sort=False)
|
|
59
|
-
eq_generating_units['type'].fillna('Nuclear'
|
|
60
|
-
eq_generating_units.rename(columns={'rdfId': 'GeneratingUnit'}
|
|
61
|
-
eqssh_synchronous_machines = self.cimConverter.merge_eq_ssh_profile(
|
|
62
|
-
|
|
59
|
+
eq_generating_units['type'] = eq_generating_units['type'].fillna('Nuclear')
|
|
60
|
+
eq_generating_units = eq_generating_units.rename(columns={'rdfId': 'GeneratingUnit'})
|
|
61
|
+
eqssh_synchronous_machines = self.cimConverter.merge_eq_ssh_profile(
|
|
62
|
+
'SynchronousMachine', add_cim_type_column=True)
|
|
63
63
|
if 'type' in eqssh_synchronous_machines.columns:
|
|
64
|
-
eqssh_synchronous_machines.drop(columns=['type']
|
|
64
|
+
eqssh_synchronous_machines = eqssh_synchronous_machines.drop(columns=['type'])
|
|
65
65
|
if 'EquipmentContainer' in eqssh_synchronous_machines.columns:
|
|
66
|
-
eqssh_synchronous_machines.drop(columns=['EquipmentContainer']
|
|
66
|
+
eqssh_synchronous_machines = eqssh_synchronous_machines.drop(columns=['EquipmentContainer'])
|
|
67
67
|
eqssh_synchronous_machines = pd.merge(eqssh_synchronous_machines, eq_generating_units,
|
|
68
68
|
how='left', on='GeneratingUnit')
|
|
69
69
|
eqssh_reg_control = self.cimConverter.merge_eq_ssh_profile('RegulatingControl')[
|
|
@@ -71,11 +71,11 @@ class SynchronousMachinesCim16:
|
|
|
71
71
|
# if voltage is not on connectivity node, topological node will be used
|
|
72
72
|
eqtp_terminals = pd.merge(self.cimConverter.cim['eq']['Terminal'], self.cimConverter.cim['tp']['Terminal'],
|
|
73
73
|
how='left', on='rdfId')
|
|
74
|
-
eqtp_terminals.ConnectivityNode.fillna(eqtp_terminals.TopologicalNode
|
|
74
|
+
eqtp_terminals.ConnectivityNode = eqtp_terminals.ConnectivityNode.fillna(eqtp_terminals.TopologicalNode)
|
|
75
75
|
eqtp_terminals = eqtp_terminals[['rdfId', 'ConnectivityNode']].rename(
|
|
76
76
|
columns={'rdfId': 'Terminal', 'ConnectivityNode': 'reg_control_cnode'})
|
|
77
77
|
eqssh_reg_control = pd.merge(eqssh_reg_control, eqtp_terminals, how='left', on='Terminal')
|
|
78
|
-
eqssh_reg_control.drop(columns=['Terminal']
|
|
78
|
+
eqssh_reg_control = eqssh_reg_control.drop(columns=['Terminal'])
|
|
79
79
|
# add the voltage from the bus
|
|
80
80
|
eqssh_reg_control = pd.merge(eqssh_reg_control, self.cimConverter.net.bus[['vn_kv', sc['o_id']]].rename(
|
|
81
81
|
columns={sc['o_id']: 'reg_control_cnode'}), how='left', on='reg_control_cnode')
|
|
@@ -86,10 +86,10 @@ class SynchronousMachinesCim16:
|
|
|
86
86
|
how='left', on='RegulatingControl')
|
|
87
87
|
eqssh_synchronous_machines = pd.merge(eqssh_synchronous_machines, self.cimConverter.bus_merge, how='left',
|
|
88
88
|
on='rdfId')
|
|
89
|
-
eqssh_synchronous_machines.drop_duplicates(['rdfId'], keep='first'
|
|
89
|
+
eqssh_synchronous_machines = eqssh_synchronous_machines.drop_duplicates(['rdfId'], keep='first')
|
|
90
90
|
eqssh_synchronous_machines['vm_pu'] = eqssh_synchronous_machines.targetValue / eqssh_synchronous_machines.vn_kv
|
|
91
91
|
eqssh_synchronous_machines['vm_pu'].fillna(1., inplace=True)
|
|
92
|
-
eqssh_synchronous_machines.rename(columns={'vn_kv': 'bus_voltage'}
|
|
92
|
+
eqssh_synchronous_machines = eqssh_synchronous_machines.rename(columns={'vn_kv': 'bus_voltage'})
|
|
93
93
|
eqssh_synchronous_machines['slack'] = False
|
|
94
94
|
# set the slack = True for gens with highest prio
|
|
95
95
|
# get the highest prio from SynchronousMachines
|
|
@@ -101,7 +101,7 @@ class SynchronousMachinesCim16:
|
|
|
101
101
|
regulation_controllers = self.cimConverter.merge_eq_ssh_profile('RegulatingControl')
|
|
102
102
|
regulation_controllers = regulation_controllers.loc[regulation_controllers['mode'] == 'voltage']
|
|
103
103
|
regulation_controllers = regulation_controllers[['rdfId', 'targetValue', 'enabled']]
|
|
104
|
-
regulation_controllers.rename(columns={'rdfId': 'RegulatingControl'}
|
|
104
|
+
regulation_controllers = regulation_controllers.rename(columns={'rdfId': 'RegulatingControl'})
|
|
105
105
|
enis = pd.merge(enis, regulation_controllers, how='left', on='RegulatingControl')
|
|
106
106
|
|
|
107
107
|
eni_ref_prio_min = enis.loc[(enis['referencePriority'] > 0) & (enis['enabled']), 'referencePriority'].min()
|
|
@@ -132,9 +132,9 @@ class SynchronousMachinesCim16:
|
|
|
132
132
|
eqssh_synchronous_machines['rx'] = eqssh_synchronous_machines['r2'] / eqssh_synchronous_machines['x2']
|
|
133
133
|
eqssh_synchronous_machines['scaling'] = 1.
|
|
134
134
|
eqssh_synchronous_machines['generator_type'] = 'current_source'
|
|
135
|
-
eqssh_synchronous_machines.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'],
|
|
135
|
+
eqssh_synchronous_machines = eqssh_synchronous_machines.rename(columns={'rdfId_Terminal': sc['t'], 'rdfId': sc['o_id'],
|
|
136
136
|
'connected': 'in_service', 'index_bus': 'bus',
|
|
137
137
|
'minOperatingP': 'min_p_mw', 'maxOperatingP': 'max_p_mw',
|
|
138
138
|
'minQ': 'min_q_mvar', 'maxQ': 'max_q_mvar',
|
|
139
|
-
'ratedPowerFactor': 'cos_phi'}
|
|
139
|
+
'ratedPowerFactor': 'cos_phi'})
|
|
140
140
|
return eqssh_synchronous_machines
|
|
@@ -77,7 +77,7 @@ class EquivalentBranchesCim16:
|
|
|
77
77
|
message="The EquivalentBranch with RDF ID %s has %s Terminals!" % (rdfId, count)))
|
|
78
78
|
eq_eb = eq_eb[0:0]
|
|
79
79
|
# sort by RDF ID and the sequenceNumber to make sure r12 and r21 are in the correct order
|
|
80
|
-
eq_eb.sort_values(by=['rdfId', 'sequenceNumber']
|
|
80
|
+
eq_eb = eq_eb.sort_values(by=['rdfId', 'sequenceNumber'])
|
|
81
81
|
# copy the columns which are needed to reduce the eq_eb to one row per equivalent branch
|
|
82
82
|
eq_eb['rdfId_Terminal2'] = eq_eb['rdfId_Terminal'].copy()
|
|
83
83
|
eq_eb['connected2'] = eq_eb['connected'].copy()
|
|
@@ -88,7 +88,7 @@ class EquivalentBranchesCim16:
|
|
|
88
88
|
eq_eb.rdfId_Terminal2 = eq_eb.rdfId_Terminal2.iloc[1:].reset_index().rdfId_Terminal2
|
|
89
89
|
eq_eb.connected2 = eq_eb.connected2.iloc[1:].reset_index().connected2
|
|
90
90
|
eq_eb.index_bus2 = eq_eb.index_bus2.iloc[1:].reset_index().index_bus2
|
|
91
|
-
eq_eb.drop_duplicates(['rdfId'], keep='first'
|
|
91
|
+
eq_eb = eq_eb.drop_duplicates(['rdfId'], keep='first')
|
|
92
92
|
if hasattr(self.cimConverter.net, 'sn_mva'):
|
|
93
93
|
eq_eb['sn_mva'] = self.cimConverter.net['sn_mva']
|
|
94
94
|
else:
|
|
@@ -104,6 +104,6 @@ class EquivalentBranchesCim16:
|
|
|
104
104
|
eq_eb['rtf0_pu'] = eq_eb['zeroR21'] / eq_eb['z_base']
|
|
105
105
|
eq_eb['xtf0_pu'] = eq_eb['zeroX21'] / eq_eb['z_base']
|
|
106
106
|
eq_eb['in_service'] = eq_eb.connected & eq_eb.connected2
|
|
107
|
-
eq_eb.rename(columns={'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'], 'rdfId': sc['o_id'],
|
|
108
|
-
'index_bus': 'from_bus', 'index_bus2': 'to_bus'}
|
|
107
|
+
eq_eb = eq_eb.rename(columns={'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'], 'rdfId': sc['o_id'],
|
|
108
|
+
'index_bus': 'from_bus', 'index_bus2': 'to_bus'})
|
|
109
109
|
return eq_eb
|
|
@@ -74,7 +74,7 @@ class SeriesCompensatorsCim16:
|
|
|
74
74
|
message="The SeriesCompensator with RDF ID %s has %s Terminals!" % (rdfId, count)))
|
|
75
75
|
eq_sc = eq_sc[0:0]
|
|
76
76
|
# sort by RDF ID and the sequenceNumber to make sure r12 and r21 are in the correct order
|
|
77
|
-
eq_sc.sort_values(by=['rdfId', 'sequenceNumber']
|
|
77
|
+
eq_sc = eq_sc.sort_values(by=['rdfId', 'sequenceNumber'])
|
|
78
78
|
# copy the columns which are needed to reduce the eq_sc to one row per equivalent branch
|
|
79
79
|
eq_sc['rdfId_Terminal2'] = eq_sc['rdfId_Terminal'].copy()
|
|
80
80
|
eq_sc['connected2'] = eq_sc['connected'].copy()
|
|
@@ -85,7 +85,7 @@ class SeriesCompensatorsCim16:
|
|
|
85
85
|
eq_sc.rdfId_Terminal2 = eq_sc.rdfId_Terminal2.iloc[1:].reset_index().rdfId_Terminal2
|
|
86
86
|
eq_sc.connected2 = eq_sc.connected2.iloc[1:].reset_index().connected2
|
|
87
87
|
eq_sc.index_bus2 = eq_sc.index_bus2.iloc[1:].reset_index().index_bus2
|
|
88
|
-
eq_sc.drop_duplicates(['rdfId'], keep='first'
|
|
88
|
+
eq_sc = eq_sc.drop_duplicates(['rdfId'], keep='first')
|
|
89
89
|
if hasattr(self.cimConverter.net, 'sn_mva'):
|
|
90
90
|
eq_sc['sn_mva'] = self.cimConverter.net['sn_mva']
|
|
91
91
|
else:
|
|
@@ -101,6 +101,6 @@ class SeriesCompensatorsCim16:
|
|
|
101
101
|
eq_sc['rtf0_pu'] = eq_sc['r0'] / eq_sc['z_base']
|
|
102
102
|
eq_sc['xtf0_pu'] = eq_sc['x0'] / eq_sc['z_base']
|
|
103
103
|
eq_sc['in_service'] = eq_sc.connected & eq_sc.connected2
|
|
104
|
-
eq_sc.rename(columns={'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'], 'rdfId': sc['o_id'],
|
|
105
|
-
'index_bus': 'from_bus', 'index_bus2': 'to_bus'}
|
|
104
|
+
eq_sc = eq_sc.rename(columns={'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'], 'rdfId': sc['o_id'],
|
|
105
|
+
'index_bus': 'from_bus', 'index_bus2': 'to_bus'})
|
|
106
106
|
return eq_sc
|
|
@@ -27,10 +27,10 @@ class AcLineSegmentsCim16:
|
|
|
27
27
|
# -------- lines --------
|
|
28
28
|
if 'line' in eq_ac_line_segments['kindOfType'].values:
|
|
29
29
|
line_df = eq_ac_line_segments.loc[eq_ac_line_segments['kindOfType'] == 'line']
|
|
30
|
-
line_df.rename(columns={
|
|
30
|
+
line_df = line_df.rename(columns={
|
|
31
31
|
'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'],
|
|
32
32
|
'index_bus': 'from_bus', 'index_bus2': 'to_bus', 'length': 'length_km',
|
|
33
|
-
'shortCircuitEndTemperature': 'endtemp_degree'}
|
|
33
|
+
'shortCircuitEndTemperature': 'endtemp_degree'})
|
|
34
34
|
line_df[sc['o_cl']] = 'ACLineSegment'
|
|
35
35
|
line_df['in_service'] = line_df.connected & line_df.connected2
|
|
36
36
|
line_df['r_ohm_per_km'] = abs(line_df.r) / line_df.length_km
|
|
@@ -52,9 +52,9 @@ class AcLineSegmentsCim16:
|
|
|
52
52
|
if 'switch' in eq_ac_line_segments['kindOfType'].values:
|
|
53
53
|
switch_df = eq_ac_line_segments.loc[eq_ac_line_segments['kindOfType'] == 'switch']
|
|
54
54
|
|
|
55
|
-
switch_df.rename(columns={
|
|
55
|
+
switch_df = switch_df.rename(columns={
|
|
56
56
|
'rdfId': sc['o_id'], 'index_bus': 'bus', 'index_bus2': 'element', 'rdfId_Terminal': sc['t_bus'],
|
|
57
|
-
'rdfId_Terminal2': sc['t_ele']}
|
|
57
|
+
'rdfId_Terminal2': sc['t_ele']})
|
|
58
58
|
switch_df['et'] = 'b'
|
|
59
59
|
switch_df['type'] = None
|
|
60
60
|
switch_df['z_ohm'] = 0
|
|
@@ -107,20 +107,20 @@ class AcLineSegmentsCim16:
|
|
|
107
107
|
eq_ac_line_segments.reset_index(inplace=True)
|
|
108
108
|
# now merge with OperationalLimitSets and CurrentLimits
|
|
109
109
|
eq_operational_limit_sets = self.cimConverter.cim['eq']['OperationalLimitSet'][['rdfId', 'Terminal']]
|
|
110
|
-
eq_operational_limit_sets.rename(columns={'rdfId': 'rdfId_OperationalLimitSet',
|
|
111
|
-
'Terminal': 'rdfId_Terminal'}
|
|
110
|
+
eq_operational_limit_sets = eq_operational_limit_sets.rename(columns={'rdfId': 'rdfId_OperationalLimitSet',
|
|
111
|
+
'Terminal': 'rdfId_Terminal'})
|
|
112
112
|
eq_ac_line_segments = pd.merge(eq_ac_line_segments, eq_operational_limit_sets, how='left',
|
|
113
113
|
on='rdfId_Terminal')
|
|
114
114
|
eq_current_limits = self.cimConverter.cim['eq']['CurrentLimit'][['rdfId', 'OperationalLimitSet', 'value']]
|
|
115
|
-
eq_current_limits.rename(columns={'rdfId': 'rdfId_CurrentLimit',
|
|
116
|
-
'OperationalLimitSet': 'rdfId_OperationalLimitSet'}
|
|
115
|
+
eq_current_limits = eq_current_limits.rename(columns={'rdfId': 'rdfId_CurrentLimit',
|
|
116
|
+
'OperationalLimitSet': 'rdfId_OperationalLimitSet'})
|
|
117
117
|
eq_ac_line_segments = pd.merge(eq_ac_line_segments, eq_current_limits, how='left',
|
|
118
118
|
on='rdfId_OperationalLimitSet')
|
|
119
119
|
eq_ac_line_segments.value = eq_ac_line_segments.value.astype(float)
|
|
120
120
|
# sort by rdfId, sequenceNumber and value. value is max_i_ka, choose the lowest one if more than one is
|
|
121
121
|
# given (A line may have more than one max_i_ka in CIM, different modes e.g. normal)
|
|
122
|
-
eq_ac_line_segments.sort_values(by=['rdfId', 'sequenceNumber', 'value']
|
|
123
|
-
eq_ac_line_segments.drop_duplicates(['rdfId', 'rdfId_Terminal'], keep='first'
|
|
122
|
+
eq_ac_line_segments = eq_ac_line_segments.sort_values(by=['rdfId', 'sequenceNumber', 'value'])
|
|
123
|
+
eq_ac_line_segments = eq_ac_line_segments.drop_duplicates(['rdfId', 'rdfId_Terminal'], keep='first')
|
|
124
124
|
|
|
125
125
|
# copy the columns which are needed to reduce the eq_ac_line_segments to one row per line
|
|
126
126
|
eq_ac_line_segments['rdfId_Terminal2'] = eq_ac_line_segments['rdfId_Terminal'].copy()
|
|
@@ -135,7 +135,7 @@ class AcLineSegmentsCim16:
|
|
|
135
135
|
eq_ac_line_segments.connected2 = eq_ac_line_segments.connected2.iloc[1:].reset_index().connected2
|
|
136
136
|
eq_ac_line_segments.index_bus2 = eq_ac_line_segments.index_bus2.iloc[1:].reset_index().index_bus2
|
|
137
137
|
eq_ac_line_segments.value2 = eq_ac_line_segments.value2.iloc[1:].reset_index().value2
|
|
138
|
-
eq_ac_line_segments.drop_duplicates(['rdfId'], keep='first'
|
|
138
|
+
eq_ac_line_segments = eq_ac_line_segments.drop_duplicates(['rdfId'], keep='first')
|
|
139
139
|
# get the max_i_ka
|
|
140
140
|
eq_ac_line_segments['max_i_ka'] = eq_ac_line_segments['value'].fillna(eq_ac_line_segments['value2']) * 1e-3
|
|
141
141
|
|
|
@@ -66,11 +66,11 @@ class DcLineSegmentsCim16:
|
|
|
66
66
|
ignore_index=True, sort=False),
|
|
67
67
|
how='left', on='rdfId')
|
|
68
68
|
if 'name' in converters.columns:
|
|
69
|
-
converters.drop(columns=['name']
|
|
69
|
+
converters = converters.drop(columns=['name'])
|
|
70
70
|
# merge with the terminals
|
|
71
71
|
converters = pd.merge(converters, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
72
|
-
converters.drop(columns=['sequenceNumber']
|
|
73
|
-
converters.rename(columns={'rdfId': 'converters'}
|
|
72
|
+
converters = converters.drop(columns=['sequenceNumber'])
|
|
73
|
+
converters = converters.rename(columns={'rdfId': 'converters'})
|
|
74
74
|
converter_terminals = pd.concat(
|
|
75
75
|
[self.cimConverter.cim['eq']['Terminal'], self.cimConverter.cim['eq_bd']['Terminal']],
|
|
76
76
|
ignore_index=True, sort=False)
|
|
@@ -81,7 +81,7 @@ class DcLineSegmentsCim16:
|
|
|
81
81
|
how='left', on='ConnectivityNode')
|
|
82
82
|
# get the missing converters (maybe there is a switch or something else between the line and the converter)
|
|
83
83
|
t = self.cimConverter.cim['eq']['DCTerminal'][['DCNode', 'DCConductingEquipment', 'sequenceNumber']]
|
|
84
|
-
t.rename(columns={'DCNode': 'ConnectivityNode', 'DCConductingEquipment': 'ConductingEquipment'}
|
|
84
|
+
t = t.rename(columns={'DCNode': 'ConnectivityNode', 'DCConductingEquipment': 'ConductingEquipment'})
|
|
85
85
|
|
|
86
86
|
def search_converter(cn_ids: Dict[str, str], visited_cns: List[str]) -> str:
|
|
87
87
|
new_cn_dict = dict()
|
|
@@ -116,12 +116,12 @@ class DcLineSegmentsCim16:
|
|
|
116
116
|
level=LogLevel.WARNING, code=ReportCode.WARNING_CONVERTING,
|
|
117
117
|
message="Error processing the DCLineSegments, there is a problem with Terminals in the source "
|
|
118
118
|
"data!"))
|
|
119
|
-
dc_line_segments.drop(columns=['ConnectivityNode']
|
|
119
|
+
dc_line_segments = dc_line_segments.drop(columns=['ConnectivityNode'])
|
|
120
120
|
dc_line_segments = pd.merge(dc_line_segments, converters_t, how='left', on='converters')
|
|
121
121
|
dc_line_segments['targetUpcc'].fillna(dc_line_segments['base_voltage_bus'], inplace=True)
|
|
122
122
|
|
|
123
123
|
# copy the columns which are needed to reduce the dc_line_segments to one row per line
|
|
124
|
-
dc_line_segments.sort_values(by=['rdfId', 'sequenceNumber']
|
|
124
|
+
dc_line_segments = dc_line_segments.sort_values(by=['rdfId', 'sequenceNumber'])
|
|
125
125
|
# a list of DC line parameters which are used for each DC line end
|
|
126
126
|
dc_line_segments.reset_index(inplace=True)
|
|
127
127
|
copy_list = ['index_bus', 'rdfId_Terminal', 'connected', 'p', 'ratedUdc', 'targetUpcc', 'base_voltage_bus']
|
|
@@ -131,7 +131,7 @@ class DcLineSegmentsCim16:
|
|
|
131
131
|
# cut the first element from the copied columns
|
|
132
132
|
dc_line_segments[one_item + '2'] = dc_line_segments[one_item + '2'].iloc[1:].reset_index()[one_item + '2']
|
|
133
133
|
del copy_list, one_item
|
|
134
|
-
dc_line_segments.drop_duplicates(['rdfId'], keep='first'
|
|
134
|
+
dc_line_segments = dc_line_segments.drop_duplicates(['rdfId'], keep='first')
|
|
135
135
|
dc_line_segments = pd.merge(dc_line_segments,
|
|
136
136
|
pd.DataFrame(dc_line_segments.pivot_table(index=['converters'], aggfunc='size'),
|
|
137
137
|
columns=['converter_dups']), how='left', on='converters')
|
|
@@ -142,8 +142,8 @@ class DcLineSegmentsCim16:
|
|
|
142
142
|
dc_line_segments['vm_from_pu'] = dc_line_segments['targetUpcc'] / dc_line_segments['base_voltage_bus']
|
|
143
143
|
dc_line_segments['vm_to_pu'] = dc_line_segments['targetUpcc2'] / dc_line_segments['base_voltage_bus2']
|
|
144
144
|
dc_line_segments['in_service'] = dc_line_segments.connected & dc_line_segments.connected2
|
|
145
|
-
dc_line_segments.rename(columns={
|
|
145
|
+
dc_line_segments = dc_line_segments.rename(columns={
|
|
146
146
|
'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t_from'], 'rdfId_Terminal2': sc['t_to'], 'index_bus': 'from_bus',
|
|
147
|
-
'index_bus2': 'to_bus'}
|
|
147
|
+
'index_bus2': 'to_bus'})
|
|
148
148
|
|
|
149
149
|
return dc_line_segments
|
|
@@ -31,8 +31,8 @@ class ConformLoadsCim16:
|
|
|
31
31
|
def _prepare_conform_loads_cim16(self) -> pd.DataFrame:
|
|
32
32
|
eqssh_conform_loads = self.cimConverter.merge_eq_ssh_profile('ConformLoad', add_cim_type_column=True)
|
|
33
33
|
eqssh_conform_loads = pd.merge(eqssh_conform_loads, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
34
|
-
eqssh_conform_loads.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
-
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'}
|
|
34
|
+
eqssh_conform_loads = eqssh_conform_loads.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
+
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'})
|
|
36
36
|
eqssh_conform_loads['const_i_percent'] = 0.
|
|
37
37
|
eqssh_conform_loads['const_z_percent'] = 0.
|
|
38
38
|
eqssh_conform_loads['scaling'] = 1.
|
|
@@ -31,8 +31,8 @@ class EnergyConsumersCim16:
|
|
|
31
31
|
def _prepare_energy_consumers_cim16(self) -> pd.DataFrame:
|
|
32
32
|
eqssh_energy_consumers = self.cimConverter.merge_eq_ssh_profile('EnergyConsumer', add_cim_type_column=True)
|
|
33
33
|
eqssh_energy_consumers = pd.merge(eqssh_energy_consumers, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
34
|
-
eqssh_energy_consumers.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
-
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'}
|
|
34
|
+
eqssh_energy_consumers = eqssh_energy_consumers.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
+
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'})
|
|
36
36
|
eqssh_energy_consumers['const_i_percent'] = 0.
|
|
37
37
|
eqssh_energy_consumers['const_z_percent'] = 0.
|
|
38
38
|
eqssh_energy_consumers['scaling'] = 1.
|
|
@@ -31,8 +31,8 @@ class NonConformLoadsCim16:
|
|
|
31
31
|
def _prepare_non_conform_loads_cim16(self) -> pd.DataFrame:
|
|
32
32
|
eqssh_non_conform_loads = self.cimConverter.merge_eq_ssh_profile('NonConformLoad', add_cim_type_column=True)
|
|
33
33
|
eqssh_non_conform_loads = pd.merge(eqssh_non_conform_loads, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
34
|
-
eqssh_non_conform_loads.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
-
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'}
|
|
34
|
+
eqssh_non_conform_loads = eqssh_non_conform_loads.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
+
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'})
|
|
36
36
|
eqssh_non_conform_loads['const_i_percent'] = 0.
|
|
37
37
|
eqssh_non_conform_loads['const_z_percent'] = 0.
|
|
38
38
|
eqssh_non_conform_loads['scaling'] = 1.
|
|
@@ -31,8 +31,8 @@ class StationSuppliesCim16:
|
|
|
31
31
|
def _prepare_station_supplies_cim16(self) -> pd.DataFrame:
|
|
32
32
|
eqssh_station_supplies = self.cimConverter.merge_eq_ssh_profile('StationSupply', add_cim_type_column=True)
|
|
33
33
|
eqssh_station_supplies = pd.merge(eqssh_station_supplies, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
34
|
-
eqssh_station_supplies.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
-
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'}
|
|
34
|
+
eqssh_station_supplies = eqssh_station_supplies.rename(columns={'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'index_bus': 'bus',
|
|
35
|
+
'connected': 'in_service', 'p': 'p_mw', 'q': 'q_mvar'})
|
|
36
36
|
eqssh_station_supplies['const_i_percent'] = 0.
|
|
37
37
|
eqssh_station_supplies['const_z_percent'] = 0.
|
|
38
38
|
eqssh_station_supplies['scaling'] = 1.
|
|
@@ -32,9 +32,9 @@ class LinearShuntCompensatorCim16:
|
|
|
32
32
|
def _prepare_linear_shunt_compensator_cim16(self) -> pd.DataFrame:
|
|
33
33
|
eqssh_shunts = self.cimConverter.merge_eq_ssh_profile('LinearShuntCompensator', add_cim_type_column=True)
|
|
34
34
|
eqssh_shunts = pd.merge(eqssh_shunts, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
35
|
-
eqssh_shunts.rename(columns={
|
|
35
|
+
eqssh_shunts = eqssh_shunts.rename(columns={
|
|
36
36
|
'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'connected': 'in_service', 'index_bus': 'bus',
|
|
37
|
-
'nomU': 'vn_kv', 'sections': 'step', 'maximumSections': 'max_step'}
|
|
37
|
+
'nomU': 'vn_kv', 'sections': 'step', 'maximumSections': 'max_step'})
|
|
38
38
|
y = eqssh_shunts['gPerSection'] + eqssh_shunts['bPerSection'] * 1j
|
|
39
39
|
s = eqssh_shunts['vn_kv'] ** 2 * np.conj(y)
|
|
40
40
|
eqssh_shunts['p_mw'] = s.values.real
|
|
@@ -59,9 +59,9 @@ class NonLinearShuntCompensatorCim16:
|
|
|
59
59
|
eqssh_shunts.loc[eqssh_shunts['sections'] >= eqssh_shunts['sectionNumber'], 'q'] = \
|
|
60
60
|
eqssh_shunts['q'] + eqssh_shunts['q_temp']
|
|
61
61
|
eqssh_shunts = eqssh_shunts[eqssh_shunts_cols]
|
|
62
|
-
eqssh_shunts.rename(columns={
|
|
62
|
+
eqssh_shunts = eqssh_shunts.rename(columns={
|
|
63
63
|
'rdfId': sc['o_id'], 'rdfId_Terminal': sc['t'], 'connected': 'in_service', 'index_bus': 'bus',
|
|
64
|
-
'nomU': 'vn_kv', 'p': 'p_mw', 'q': 'q_mvar'}
|
|
64
|
+
'nomU': 'vn_kv', 'p': 'p_mw', 'q': 'q_mvar'})
|
|
65
65
|
eqssh_shunts['step'] = 1
|
|
66
66
|
eqssh_shunts['max_step'] = 1
|
|
67
67
|
return eqssh_shunts
|
|
@@ -31,7 +31,7 @@ class StaticVarCompensatorCim16:
|
|
|
31
31
|
def _prepare_static_var_compensator_cim16(self) -> pd.DataFrame:
|
|
32
32
|
eq_stat_coms = self.cimConverter.merge_eq_ssh_profile('StaticVarCompensator', True)
|
|
33
33
|
eq_stat_coms = pd.merge(eq_stat_coms, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
34
|
-
eq_stat_coms.rename(columns={'q': 'q_mvar'}
|
|
34
|
+
eq_stat_coms = eq_stat_coms.rename(columns={'q': 'q_mvar'})
|
|
35
35
|
# get the active power and reactive power from SV profile
|
|
36
36
|
eq_stat_coms = pd.merge(eq_stat_coms, self.cimConverter.cim['sv']['SvPowerFlow'][['p', 'q', 'Terminal']],
|
|
37
37
|
how='left', left_on='rdfId_Terminal', right_on='Terminal')
|
|
@@ -50,7 +50,7 @@ class SwitchesCim16:
|
|
|
50
50
|
ignore_index=True, sort=False)
|
|
51
51
|
eqssh_switches.type[start_index_cim_net:] = 'LS'
|
|
52
52
|
# drop all duplicates to fix class inherit problem in jpa
|
|
53
|
-
eqssh_switches.drop_duplicates(subset=['rdfId'], keep='first'
|
|
53
|
+
eqssh_switches = eqssh_switches.drop_duplicates(subset=['rdfId'], keep='first')
|
|
54
54
|
switch_length_before_merge = eqssh_switches.index.size
|
|
55
55
|
# until now eqssh_switches looks like:
|
|
56
56
|
# rdfId name open ...
|
|
@@ -58,7 +58,7 @@ class SwitchesCim16:
|
|
|
58
58
|
# _x02 switch2 False ...
|
|
59
59
|
# now join with the terminals
|
|
60
60
|
eqssh_switches = pd.merge(eqssh_switches, self.cimConverter.bus_merge, how='left', on='rdfId')
|
|
61
|
-
eqssh_switches.sort_values(by=['rdfId', 'sequenceNumber']
|
|
61
|
+
eqssh_switches = eqssh_switches.sort_values(by=['rdfId', 'sequenceNumber'])
|
|
62
62
|
eqssh_switches.reset_index(inplace=True)
|
|
63
63
|
# copy the columns which are needed to reduce the eqssh_switches to one line per switch
|
|
64
64
|
eqssh_switches['rdfId_Terminal2'] = eqssh_switches['rdfId_Terminal'].copy()
|
|
@@ -70,7 +70,7 @@ class SwitchesCim16:
|
|
|
70
70
|
eqssh_switches.rdfId_Terminal2 = eqssh_switches.rdfId_Terminal2.iloc[1:].reset_index().rdfId_Terminal2
|
|
71
71
|
eqssh_switches.connected2 = eqssh_switches.connected2.iloc[1:].reset_index().connected2
|
|
72
72
|
eqssh_switches.index_bus2 = eqssh_switches.index_bus2.iloc[1:].reset_index().index_bus2
|
|
73
|
-
eqssh_switches.drop_duplicates(subset=['rdfId'], keep='first'
|
|
73
|
+
eqssh_switches = eqssh_switches.drop_duplicates(subset=['rdfId'], keep='first')
|
|
74
74
|
else:
|
|
75
75
|
self.logger.error("Something went wrong at switches, seems like that terminals for connection with "
|
|
76
76
|
"connectivity nodes are missing!")
|
|
@@ -87,8 +87,8 @@ class SwitchesCim16:
|
|
|
87
87
|
level=LogLevel.WARNING, code=ReportCode.WARNING_CONVERTING,
|
|
88
88
|
message="The switch with RDF ID %s has %s Terminals!" % (rdfId, count)))
|
|
89
89
|
eqssh_switches = eqssh_switches[0:0]
|
|
90
|
-
eqssh_switches.rename(columns={'rdfId': sc['o_id'], 'index_bus': 'bus', 'index_bus2': 'element',
|
|
91
|
-
'rdfId_Terminal': sc['t_bus'], 'rdfId_Terminal2': sc['t_ele']}
|
|
90
|
+
eqssh_switches = eqssh_switches.rename(columns={'rdfId': sc['o_id'], 'index_bus': 'bus', 'index_bus2': 'element',
|
|
91
|
+
'rdfId_Terminal': sc['t_bus'], 'rdfId_Terminal2': sc['t_ele']})
|
|
92
92
|
eqssh_switches['et'] = 'b'
|
|
93
93
|
eqssh_switches['z_ohm'] = 0
|
|
94
94
|
if eqssh_switches.index.size > 0:
|