GridCal 5.1.29__tar.gz → 5.1.30__tar.gz
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.
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/simulations.py +39 -78
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/__version__.py +1 -1
- {GridCal-5.1.29 → GridCal-5.1.30}/PKG-INFO +1 -1
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ExecuteGridCal.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/AboutDialogue/about_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/AboutDialogue/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/AboutDialogue/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/AboutDialogue/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/AnalysisDialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/object_plot_analysis.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Analysis/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CascadingSteps/cascading_steps.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CascadingSteps/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CascadingSteps/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ConsoleWidget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CoordinatesInput/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CoordinatesInput/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/node_graphic_item.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/blue_marble.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/cartodb.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/gmt_local.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapbox.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapquest.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/open_street_map.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_toner.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_transport.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_watercolor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/map_events.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/new_line_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/node_widget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_editor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_taps_editor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_editor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_editor.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/base_diagram_widget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/diagrams_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/generic_graphics.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/graphics_manager.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GeneralDialogues.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GridGenerator/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GridGenerator/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GridGenerator/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GridGenerator/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/GuiFunctions.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadCatalogue/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadCatalogue/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadDesigner/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadDesigner/load_designer.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/LoadDesigner/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/ConsoleLog.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/ConsoleLogController.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/GridCalMain.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/MainWindow.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Model/objects.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/README.txt +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Results/results.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Server/server.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/base_gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/io.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/object_select_window.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/excel_dialog.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/models_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/profiles_from_data.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ProfilesInput/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/ConsoleWidget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/MainWindow.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SigmaAnalysis/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SigmaAnalysis/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SolarPowerWizard/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SolarPowerWizard/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SyncDialogue/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SyncDialogue/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SyncDialogue/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SystemScaler/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SystemScaler/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SystemScaler/system_scaler.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/SystemScaler/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/table_models.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/test_.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TowerBuilder/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TreeModelViewer/MainWindow.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TreeModelViewer/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Visualization/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Visualization/visualization.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Widgets/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Widgets/custom_qrangeslider.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Widgets/matplotlibwidget.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/WindPowerWizard/gui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/WindPowerWizard/icons_rc.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/associations_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/messages.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/object_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/pandas_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/plot_config.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/plugins.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/profiles_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/table_view_header_wrap.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/themes.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/update_gui_all.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/update_gui_common.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/LICENSE.txt +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/export_results_driver.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/file_handler.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/results_model.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/server_driver.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/session.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Session/synchronization_driver.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_color.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_main.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/_util.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/data/__init__.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/data/cables.csv +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/data/sequence_lines.csv +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/data/transformers.csv +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/data/wires.csv +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/templates.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/GridCal/update.py +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/setup.cfg +0 -0
- {GridCal-5.1.29 → GridCal-5.1.30}/setup.py +0 -0
@@ -585,57 +585,31 @@ class SimulationsMain(TimeEventsMain):
|
|
585
585
|
self.ui.resultsTableView.setModel(None)
|
586
586
|
self.ui.resultsLogsTreeView.setModel(None)
|
587
587
|
|
588
|
-
def get_compatible_from_to_buses_and_inter_branches(self) ->
|
589
|
-
bool,
|
590
|
-
List[Tuple[int, dev.Bus]],
|
591
|
-
List[Tuple[int, dev.Bus]],
|
592
|
-
List[Tuple[int, object, float]],
|
593
|
-
List[Tuple[int, object, float]],
|
594
|
-
List[dev.Area | dev.Zone | dev.Country], List[dev.Area | dev.Zone | dev.Country]]:
|
588
|
+
def get_compatible_from_to_buses_and_inter_branches(self) -> dev.InterAggregationInfo:
|
595
589
|
"""
|
596
590
|
Get the lists that help defining the inter area objects
|
597
|
-
:return:
|
598
|
-
list of tuples bus idx, Bus in the areas from,
|
599
|
-
list of tuples bus idx, Bus in the areas to,
|
600
|
-
List of inter area Branches (branch index, branch object, flow sense w.r.t the area exchange),
|
601
|
-
List of inter area HVDC (branch index, branch object, flow sense w.r.t the area exchange),
|
602
|
-
List of areas from,
|
603
|
-
List of areas to
|
591
|
+
:return: InterAggregationInfo
|
604
592
|
"""
|
605
593
|
dev_tpe_from = self.exchange_places_dict[self.ui.fromComboBox.currentText()]
|
606
594
|
devs_from = self.circuit.get_elements_by_type(dev_tpe_from)
|
607
595
|
from_idx = gf.get_checked_indices(self.ui.fromListView.model())
|
608
596
|
objects_from = [devs_from[i] for i in from_idx]
|
609
|
-
lst_from = self.circuit.get_aggregation_buses(objects_from)
|
610
|
-
buses_from_set = {x[1] for x in lst_from}
|
611
597
|
|
612
598
|
dev_tpe_to = self.exchange_places_dict[self.ui.toComboBox.currentText()]
|
613
599
|
devs_to = self.circuit.get_elements_by_type(dev_tpe_to)
|
614
600
|
to_idx = gf.get_checked_indices(self.ui.toListView.model())
|
615
601
|
objects_to = [devs_to[i] for i in to_idx]
|
616
|
-
lst_to = self.circuit.get_aggregation_buses(objects_to)
|
617
|
-
buses_to_set = {x[1] for x in lst_to}
|
618
602
|
|
619
|
-
|
620
|
-
|
621
|
-
if len(buses_intersection) > 0:
|
622
|
-
logger = Logger()
|
623
|
-
for bus in buses_intersection:
|
624
|
-
logger.add_error(msg=f'Bus in both selected {dev_tpe_from.value} to {dev_tpe_to.value}',
|
625
|
-
device_class=bus.device_type.value,
|
626
|
-
device=bus.name)
|
603
|
+
info: dev.InterAggregationInfo = self.circuit.get_inter_aggregation_info(objects_from=objects_from,
|
604
|
+
objects_to=objects_to)
|
627
605
|
|
606
|
+
if info.logger.has_logs():
|
628
607
|
# Show dialogue
|
629
|
-
dlg = LogsDialogue(name="Add selected DB objects to current diagram", logger=logger)
|
608
|
+
dlg = LogsDialogue(name="Add selected DB objects to current diagram", logger=info.logger)
|
630
609
|
dlg.setModal(True)
|
631
610
|
dlg.exec()
|
632
611
|
|
633
|
-
|
634
|
-
|
635
|
-
lst_br = self.circuit.get_inter_buses_branches(buses_from_set, buses_to_set)
|
636
|
-
lst_br_hvdc = self.circuit.get_inter_buses_hvdc_branches(buses_from_set, buses_to_set)
|
637
|
-
|
638
|
-
return True, lst_from, lst_to, lst_br, lst_br_hvdc, objects_from, objects_to
|
612
|
+
return info
|
639
613
|
|
640
614
|
def get_selected_power_flow_options(self) -> sim.PowerFlowOptions:
|
641
615
|
"""
|
@@ -1286,20 +1260,19 @@ class SimulationsMain(TimeEventsMain):
|
|
1286
1260
|
threshold = self.ui.atcThresholdSpinBox.value()
|
1287
1261
|
max_report_elements = 5 # TODO: self.ui.ntcReportLimitingElementsSpinBox.value()
|
1288
1262
|
# available transfer capacity inter areas
|
1289
|
-
|
1290
|
-
lst_hvdc_br, areas_from, areas_to) = self.get_compatible_from_to_buses_and_inter_branches()
|
1263
|
+
info: dev.InterAggregationInfo = self.get_compatible_from_to_buses_and_inter_branches()
|
1291
1264
|
|
1292
|
-
if not
|
1265
|
+
if not info.valid:
|
1293
1266
|
return
|
1294
1267
|
|
1295
|
-
idx_from =
|
1296
|
-
idx_to =
|
1297
|
-
idx_br =
|
1298
|
-
sense_br =
|
1268
|
+
idx_from = info.idx_bus_from
|
1269
|
+
idx_to = info.idx_bus_to
|
1270
|
+
idx_br = info.idx_branches
|
1271
|
+
sense_br = info.sense_branches
|
1299
1272
|
|
1300
1273
|
# HVDC
|
1301
|
-
idx_hvdc_br =
|
1302
|
-
sense_hvdc_br =
|
1274
|
+
idx_hvdc_br = info.idx_hvdc
|
1275
|
+
sense_hvdc_br = info.sense_hvdc
|
1303
1276
|
|
1304
1277
|
if self.ui.usePfValuesForAtcCheckBox.isChecked():
|
1305
1278
|
pf_results = self.session.power_flow
|
@@ -1401,21 +1374,19 @@ class SimulationsMain(TimeEventsMain):
|
|
1401
1374
|
max_report_elements = 5 # TODO: self.ui.ntcReportLimitingElementsSpinBox.value()
|
1402
1375
|
|
1403
1376
|
# available transfer capacity inter areas
|
1404
|
-
(
|
1405
|
-
lst_from, lst_to, lst_br,
|
1406
|
-
lst_hvdc_br, areas_from, areas_to) = self.get_compatible_from_to_buses_and_inter_branches()
|
1377
|
+
info: dev.InterAggregationInfo = self.get_compatible_from_to_buses_and_inter_branches()
|
1407
1378
|
|
1408
|
-
if not
|
1379
|
+
if not info.valid:
|
1409
1380
|
return
|
1410
1381
|
|
1411
|
-
idx_from =
|
1412
|
-
idx_to =
|
1413
|
-
idx_br =
|
1414
|
-
sense_br =
|
1382
|
+
idx_from = info.idx_bus_from
|
1383
|
+
idx_to = info.idx_bus_to
|
1384
|
+
idx_br = info.idx_branches
|
1385
|
+
sense_br = info.sense_branches
|
1415
1386
|
|
1416
1387
|
# HVDC
|
1417
|
-
idx_hvdc_br =
|
1418
|
-
sense_hvdc_br =
|
1388
|
+
idx_hvdc_br = info.idx_hvdc
|
1389
|
+
sense_hvdc_br = info.sense_hvdc
|
1419
1390
|
|
1420
1391
|
if self.ui.usePfValuesForAtcCheckBox.isChecked():
|
1421
1392
|
pf_results = self.session.power_flow_ts
|
@@ -1535,19 +1506,19 @@ class SimulationsMain(TimeEventsMain):
|
|
1535
1506
|
|
1536
1507
|
if self.ui.atcRadioButton.isChecked():
|
1537
1508
|
use_alpha = True
|
1538
|
-
|
1509
|
+
info: dev.InterAggregationInfo = self.get_compatible_from_to_buses_and_inter_branches()
|
1539
1510
|
|
1540
|
-
if
|
1541
|
-
idx_from =
|
1542
|
-
idx_to =
|
1511
|
+
if info.valid:
|
1512
|
+
idx_from = info.idx_bus_from
|
1513
|
+
idx_to = info.idx_bus_to
|
1543
1514
|
|
1544
1515
|
alpha_vec[idx_from] *= 2
|
1545
1516
|
alpha_vec[idx_to] *= -2
|
1546
1517
|
sel_bus_idx = np.zeros(0, dtype=int) # for completeness
|
1547
1518
|
|
1548
1519
|
# HVDC
|
1549
|
-
idx_hvdc_br =
|
1550
|
-
sense_hvdc_br =
|
1520
|
+
idx_hvdc_br = info.idx_hvdc
|
1521
|
+
sense_hvdc_br = info.sense_hvdc
|
1551
1522
|
else:
|
1552
1523
|
sel_bus_idx = np.zeros(0, dtype=int) # for completeness
|
1553
1524
|
# incompatible areas...exit
|
@@ -1897,23 +1868,17 @@ class SimulationsMain(TimeEventsMain):
|
|
1897
1868
|
|
1898
1869
|
# available transfer capacity inter areas
|
1899
1870
|
if maximize_flows:
|
1900
|
-
|
1901
|
-
lst_br, lst_hvdc_br, areas_from, areas_to) = self.get_compatible_from_to_buses_and_inter_branches()
|
1902
|
-
idx_from = np.array([i for i, bus in lst_from])
|
1903
|
-
idx_to = np.array([i for i, bus in lst_to])
|
1871
|
+
inter_aggregation_info: dev.InterAggregationInfo = self.get_compatible_from_to_buses_and_inter_branches()
|
1904
1872
|
|
1905
|
-
if len(
|
1873
|
+
if len(inter_aggregation_info.lst_from) == 0:
|
1906
1874
|
error_msg('The area "from" has no buses!')
|
1907
1875
|
return None
|
1908
1876
|
|
1909
|
-
if len(
|
1877
|
+
if len(inter_aggregation_info.lst_to) == 0:
|
1910
1878
|
error_msg('The area "to" has no buses!')
|
1911
1879
|
return None
|
1912
1880
|
else:
|
1913
|
-
|
1914
|
-
idx_to = None
|
1915
|
-
areas_from = None
|
1916
|
-
areas_to = None
|
1881
|
+
inter_aggregation_info = None
|
1917
1882
|
|
1918
1883
|
ips_method = self.ips_solvers_dict[self.ui.ips_method_comboBox.currentText()]
|
1919
1884
|
ips_tolerance = 1.0 / (10.0 ** self.ui.ips_tolerance_spinBox.value())
|
@@ -1932,10 +1897,7 @@ class SimulationsMain(TimeEventsMain):
|
|
1932
1897
|
skip_generation_limits=skip_generation_limits,
|
1933
1898
|
lodf_tolerance=lodf_tolerance,
|
1934
1899
|
maximize_flows=maximize_flows,
|
1935
|
-
|
1936
|
-
area_to_bus_idx=idx_to,
|
1937
|
-
areas_from=areas_from,
|
1938
|
-
areas_to=areas_to,
|
1900
|
+
inter_aggregation_info=inter_aggregation_info,
|
1939
1901
|
unit_commitment=unit_commitment,
|
1940
1902
|
export_model_fname=export_model_fname,
|
1941
1903
|
generate_report=generate_report,
|
@@ -2112,16 +2074,15 @@ class SimulationsMain(TimeEventsMain):
|
|
2112
2074
|
"""
|
2113
2075
|
|
2114
2076
|
# available transfer capacity inter areas
|
2115
|
-
|
2116
|
-
lst_hvdc_br, areas_from, areas_to) = self.get_compatible_from_to_buses_and_inter_branches()
|
2077
|
+
info: dev.InterAggregationInfo = self.get_compatible_from_to_buses_and_inter_branches()
|
2117
2078
|
|
2118
|
-
if not
|
2079
|
+
if not info.valid:
|
2119
2080
|
error_msg('There are no compatible areas')
|
2120
2081
|
return None
|
2121
2082
|
|
2122
|
-
idx_from =
|
2123
|
-
idx_to =
|
2124
|
-
idx_br =
|
2083
|
+
idx_from = info.idx_bus_from
|
2084
|
+
idx_to = info.idx_bus_to
|
2085
|
+
idx_br = info.idx_branches
|
2125
2086
|
|
2126
2087
|
if len(idx_from) == 0:
|
2127
2088
|
error_msg('The area "from" has no buses!')
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py
RENAMED
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/node_graphic_item.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/blue_marble.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/open_street_map.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_toner.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_transport.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_watercolor.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py
RENAMED
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py
RENAMED
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py
RENAMED
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py
RENAMED
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{GridCal-5.1.29 → GridCal-5.1.30}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|