GridCal 5.2.13__tar.gz → 5.3.0a1__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.2.13 → gridcal-5.3.0a1}/GridCal/Gui/AboutDialogue/about_dialogue.py +2 -2
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/object_plot_analysis.py +1 -1
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +12 -2
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +100 -14
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/base_diagram_widget.py +27 -8
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/ConsoleLog.py +3 -3
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/GridCalMain.py +1 -1
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/MainWindow.py +128 -128
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +1 -1
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +13 -6
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Model/objects.py +2 -1
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +7 -20
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/base_gui.py +2 -1
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/io.py +3 -43
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/simulations.py +3 -2
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/icons_rc.py +203 -203
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/models_dialogue.py +3 -3
- gridcal-5.3.0a1/GridCal/__version__.py +27 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/plugins.py +6 -155
- {gridcal-5.2.13 → gridcal-5.3.0a1}/PKG-INFO +1 -1
- gridcal-5.2.13/GridCal/__version__.py +0 -49
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ExecuteGridCal.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/AboutDialogue/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/AboutDialogue/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/AboutDialogue/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/AnalysisDialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Analysis/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CascadingSteps/cascading_steps.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CascadingSteps/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CascadingSteps/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ContingencyPlanner/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ContingencyPlanner/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CoordinatesInput/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CoordinatesInput/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/line_location_graphic_item.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Branches/new_line_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/gmt_local.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/mapbox.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/mapquest.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/open_street_map.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_toner.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_transport.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/stamen_watercolor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_taps_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_editor.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/diagrams_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/generic_graphics.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Diagrams/graphics_manager.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/GridGenerator/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/GridGenerator/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/GridGenerator/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/GridGenerator/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadCatalogue/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadCatalogue/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadDesigner/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadDesigner/load_designer.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/LoadDesigner/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/ConsoleLogController.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/README.txt +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Results/results.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Server/server.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/object_select_window.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Main/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/excel_dialog.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/profiles_from_data.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/ProfilesInput/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/ConsoleWidget.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/MainWindow.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SigmaAnalysis/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SigmaAnalysis/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SolarPowerWizard/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SolarPowerWizard/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SubstationDesigner/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SubstationDesigner/substation_designer.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SubstationDesigner/substation_designer_gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SubstationDesigner/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SyncDialogue/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SyncDialogue/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SyncDialogue/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SystemScaler/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SystemScaler/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SystemScaler/system_scaler.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/SystemScaler/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/table_models.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TowerBuilder/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TreeModelViewer/MainWindow.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TreeModelViewer/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Visualization/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Visualization/visualization.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Widgets/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Widgets/custom_qrangeslider.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/Widgets/matplotlibwidget.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/WindPowerWizard/gui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/WindPowerWizard/icons_rc.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/associations_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/console_widget.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/general_dialogues.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/gui_functions.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/messages.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/object_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/pandas_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/plot_config.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/profiles_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/results_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/table_view_header_wrap.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/themes.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/update_gui_all.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/update_gui_common.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Gui/wrappable_table_model.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/LICENSE.txt +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/export_results_driver.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/file_handler.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/server_driver.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/session.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/Session/synchronization_driver.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_color.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_main.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/_util.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/GridCal.ico +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/GridCal.svg +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/__init__.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/cables.csv +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/sequence_lines.csv +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/transformers.csv +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/data/wires.csv +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/templates.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/GridCal/update.py +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/setup.cfg +0 -0
- {gridcal-5.2.13 → gridcal-5.3.0a1}/setup.py +0 -0
@@ -9,9 +9,9 @@ import subprocess
|
|
9
9
|
from PySide6 import QtWidgets
|
10
10
|
from typing import List
|
11
11
|
from GridCal.Gui.AboutDialogue.gui import Ui_AboutDialog
|
12
|
-
from GridCal.__version__ import __GridCal_VERSION__
|
12
|
+
from GridCal.__version__ import __GridCal_VERSION__
|
13
13
|
from GridCal.update import check_version, get_upgrade_command
|
14
|
-
from GridCalEngine.__version__ import __GridCalEngine_VERSION__
|
14
|
+
from GridCalEngine.__version__ import __GridCalEngine_VERSION__, copyright_msg, contributors_msg
|
15
15
|
from GridCalEngine.Compilers.circuit_to_newton_pa import (NEWTON_PA_AVAILABLE,
|
16
16
|
NEWTON_PA_RECOMMENDED_VERSION,
|
17
17
|
NEWTON_PA_VERSION)
|
@@ -24,7 +24,7 @@ from GridCalEngine.enumerations import DeviceType
|
|
24
24
|
from GridCalEngine.Devices.types import ALL_DEV_TYPES
|
25
25
|
from GridCalEngine.Utils.NumericalMethods.numerical_stability import (sparse_instability_svd_test,
|
26
26
|
sparse_instability_lu_test)
|
27
|
-
from GridCalEngine.
|
27
|
+
from GridCalEngine.Compilers.circuit_to_data import compile_numerical_circuit_at
|
28
28
|
|
29
29
|
|
30
30
|
class GridErrorLog:
|
@@ -985,9 +985,14 @@ class GridMapWidget(BaseDiagramWidget):
|
|
985
985
|
hvdc_loading: Vec = None,
|
986
986
|
hvdc_active: IntVec = None,
|
987
987
|
loading_label: str = 'loading',
|
988
|
+
vsc_Pf: Vec = None,
|
989
|
+
vsc_Pt: Vec = None,
|
990
|
+
vsc_Qt: Vec = None,
|
991
|
+
vsc_losses: Vec = None,
|
992
|
+
vsc_loading: Vec = None,
|
993
|
+
vsc_active: IntVec = None,
|
988
994
|
ma: Vec = None,
|
989
995
|
theta: Vec = None,
|
990
|
-
Beq: Vec = None,
|
991
996
|
fluid_node_p2x_flow: Vec = None,
|
992
997
|
fluid_node_current_level: Vec = None,
|
993
998
|
fluid_node_spillage: Vec = None,
|
@@ -1017,10 +1022,15 @@ class GridMapWidget(BaseDiagramWidget):
|
|
1017
1022
|
:param hvdc_losses: HVDC branch losses [MW]
|
1018
1023
|
:param hvdc_loading: HVDC Branch loading [%]
|
1019
1024
|
:param hvdc_active: HVDC Branch status
|
1025
|
+
:param vsc_Pf: VSC branch flows "from" [MW]
|
1026
|
+
:param vsc_Pt: VSC branch flows "to" [MW]
|
1027
|
+
:param vsc_Qt: VSC branch flows "to" [Mvar]
|
1028
|
+
:param vsc_losses: VSC branch losses [MW]
|
1029
|
+
:param vsc_loading: VSC Branch loading [%]
|
1030
|
+
:param vsc_active: VSC Branch status
|
1020
1031
|
:param loading_label: String saling whatever the loading label means
|
1021
1032
|
:param ma: branch phase shift angle (rad)
|
1022
1033
|
:param theta: branch tap module (p.u.)
|
1023
|
-
:param Beq: Branch equivanet susceptance (p.u.)
|
1024
1034
|
:param fluid_node_p2x_flow: P2X flow rate (m3)
|
1025
1035
|
:param fluid_node_current_level: Current level (m3)
|
1026
1036
|
:param fluid_node_spillage: Spillage (m3)
|
@@ -3304,9 +3304,14 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3304
3304
|
hvdc_loading: Vec = None,
|
3305
3305
|
hvdc_active: IntVec = None,
|
3306
3306
|
loading_label: str = 'loading',
|
3307
|
+
vsc_Pf: Vec = None,
|
3308
|
+
vsc_Pt: Vec = None,
|
3309
|
+
vsc_Qt: Vec = None,
|
3310
|
+
vsc_losses: Vec = None,
|
3311
|
+
vsc_loading: Vec = None,
|
3312
|
+
vsc_active: IntVec = None,
|
3307
3313
|
ma: Vec = None,
|
3308
3314
|
theta: Vec = None,
|
3309
|
-
Beq: Vec = None,
|
3310
3315
|
fluid_node_p2x_flow: Vec = None,
|
3311
3316
|
fluid_node_current_level: Vec = None,
|
3312
3317
|
fluid_node_spillage: Vec = None,
|
@@ -3336,10 +3341,15 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3336
3341
|
:param hvdc_losses: HVDC branch losses [MW]
|
3337
3342
|
:param hvdc_loading: HVDC Branch loading [%]
|
3338
3343
|
:param hvdc_active: HVDC Branch status
|
3344
|
+
:param vsc_Pf: VSC branch flows "from" [MW]
|
3345
|
+
:param vsc_Pt: VSC branch flows "to" [MW]
|
3346
|
+
:param vsc_Qt: VSC branch flows "to" [Mvar]
|
3347
|
+
:param vsc_losses: VSC branch losses [MW]
|
3348
|
+
:param vsc_loading: VSC Branch loading [%]
|
3349
|
+
:param vsc_active: VSC Branch status
|
3339
3350
|
:param loading_label: String saling whatever the loading label means
|
3340
3351
|
:param ma: branch phase shift angle (rad)
|
3341
3352
|
:param theta: branch tap module (p.u.)
|
3342
|
-
:param Beq: Branch equivanet susceptance (p.u.)
|
3343
3353
|
:param fluid_node_p2x_flow: P2X flow rate (m3)
|
3344
3354
|
:param fluid_node_current_level: Current level (m3)
|
3345
3355
|
:param fluid_node_spillage: Spillage (m3)
|
@@ -3446,8 +3456,8 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3446
3456
|
else:
|
3447
3457
|
Sfnorm = Sfabs
|
3448
3458
|
|
3449
|
-
if self.circuit.
|
3450
|
-
for i, branch in enumerate(self.circuit.
|
3459
|
+
if self.circuit.get_branch_number_wo_vsc_hvdc() == len(Sf):
|
3460
|
+
for i, branch in enumerate(self.circuit.get_branches_wo_vsc_hvdc_iter()):
|
3451
3461
|
|
3452
3462
|
# try to find the diagram object of the DB object
|
3453
3463
|
graphic_object = self.graphics_manager.query(branch)
|
@@ -3503,15 +3513,15 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3503
3513
|
if theta is not None:
|
3504
3514
|
tooltip += '\ntap angle:\t' + "{:10.4f}".format(theta[i]) + ' rad'
|
3505
3515
|
|
3506
|
-
if branch.device_type == DeviceType.VscDevice:
|
3507
|
-
|
3508
|
-
|
3509
|
-
|
3510
|
-
|
3511
|
-
|
3516
|
+
# if branch.device_type == DeviceType.VscDevice:
|
3517
|
+
# if ma is not None:
|
3518
|
+
# tooltip += '\ntap module:\t' + "{:10.4f}".format(ma[i])
|
3519
|
+
#
|
3520
|
+
# if theta is not None:
|
3521
|
+
# tooltip += '\nfiring angle:\t' + "{:10.4f}".format(theta[i]) + ' rad'
|
3512
3522
|
|
3513
|
-
if Beq is not None:
|
3514
|
-
|
3523
|
+
# if Beq is not None:
|
3524
|
+
# tooltip += '\nBeq:\t' + "{:10.4f}".format(Beq[i])
|
3515
3525
|
|
3516
3526
|
graphic_object.setToolTipText(tooltip)
|
3517
3527
|
graphic_object.set_colour(color, w, style)
|
@@ -3531,9 +3541,85 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3531
3541
|
pass
|
3532
3542
|
else:
|
3533
3543
|
error_msg("Branch results length differs from the number of branch results. \n"
|
3534
|
-
"Did you change the
|
3544
|
+
"Did you change the number of devices? If so, re-run the simulation.")
|
3535
3545
|
return
|
3536
3546
|
|
3547
|
+
# VSC lines
|
3548
|
+
if vsc_Pf is not None:
|
3549
|
+
|
3550
|
+
vsc_sending_power_norm = np.abs(vsc_Pt + 1j * vsc_Qt) / (max_flow + 1e-20)
|
3551
|
+
|
3552
|
+
if self.circuit.get_vsc_number() == len(vsc_Pf):
|
3553
|
+
for i, elm in enumerate(self.circuit.vsc_devices):
|
3554
|
+
|
3555
|
+
# try to find the diagram object of the DB object
|
3556
|
+
graphic_object = self.graphics_manager.query(elm)
|
3557
|
+
|
3558
|
+
if graphic_object:
|
3559
|
+
|
3560
|
+
if vsc_active[i]:
|
3561
|
+
|
3562
|
+
if use_flow_based_width:
|
3563
|
+
w = int(np.floor(
|
3564
|
+
min_branch_width + vsc_sending_power_norm[i] * (
|
3565
|
+
max_branch_width - min_branch_width)))
|
3566
|
+
else:
|
3567
|
+
w = graphic_object.pen_width
|
3568
|
+
|
3569
|
+
if elm.active:
|
3570
|
+
style = Qt.PenStyle.SolidLine
|
3571
|
+
|
3572
|
+
a = 1
|
3573
|
+
if cmap == palettes.Colormaps.Green2Red:
|
3574
|
+
b, g, r = palettes.green_to_red_bgr(abs(vsc_loading[i]))
|
3575
|
+
|
3576
|
+
elif cmap == palettes.Colormaps.Heatmap:
|
3577
|
+
b, g, r = palettes.heatmap_palette_bgr(abs(vsc_loading[i]))
|
3578
|
+
|
3579
|
+
elif cmap == palettes.Colormaps.TSO:
|
3580
|
+
b, g, r = palettes.tso_line_palette_bgr(elm.get_max_bus_nominal_voltage(),
|
3581
|
+
abs(vsc_loading[i]))
|
3582
|
+
|
3583
|
+
else:
|
3584
|
+
r, g, b, a = loading_cmap(abs(vsc_loading[i]))
|
3585
|
+
r *= 255
|
3586
|
+
g *= 255
|
3587
|
+
b *= 255
|
3588
|
+
a *= 255
|
3589
|
+
|
3590
|
+
color = QColor(r, g, b, a)
|
3591
|
+
else:
|
3592
|
+
style = Qt.PenStyle.DashLine
|
3593
|
+
color = QColor(115, 115, 115, 255) # gray
|
3594
|
+
|
3595
|
+
tooltip = str(i) + ': ' + elm.name
|
3596
|
+
tooltip += '\n' + loading_label + ': ' + "{:10.4f}".format(
|
3597
|
+
abs(vsc_loading[i]) * 100) + ' [%]'
|
3598
|
+
|
3599
|
+
tooltip += '\nPower (from):\t' + "{:10.4f}".format(vsc_Pf[i]) + ' [MW]'
|
3600
|
+
|
3601
|
+
if vsc_losses is not None:
|
3602
|
+
tooltip += '\nPower (to):\t' + "{:10.4f}".format(vsc_Pt[i]) + ' [MW]'
|
3603
|
+
tooltip += '\nPower (to):\t' + "{:10.4f}".format(vsc_Qt[i]) + ' [Mvar]'
|
3604
|
+
tooltip += '\nLosses: \t\t' + "{:10.4f}".format(vsc_losses[i]) + ' [MW]'
|
3605
|
+
graphic_object.set_arrows_with_power(Sf=vsc_Pf[i] + 1j * 0.0, St=vsc_Pt[i] + 1j * vsc_Qt[i])
|
3606
|
+
else:
|
3607
|
+
graphic_object.set_arrows_with_power(Sf=vsc_Pf[i] + 1j * 0.0, St=-vsc_Pf[i] + 1j * vsc_Qt[i])
|
3608
|
+
|
3609
|
+
graphic_object.setToolTipText(tooltip)
|
3610
|
+
graphic_object.set_colour(color, w, style)
|
3611
|
+
else:
|
3612
|
+
w = graphic_object.pen_width
|
3613
|
+
style = Qt.PenStyle.DashLine
|
3614
|
+
color = QColor(115, 115, 115, 255) # gray
|
3615
|
+
graphic_object.set_pen(QPen(color, w, style))
|
3616
|
+
else:
|
3617
|
+
# No diagram object
|
3618
|
+
pass
|
3619
|
+
else:
|
3620
|
+
error_msg("VSC results length differs from the number of VSC results. \n"
|
3621
|
+
"Did you change the number of devices? If so, re-run the simulation.")
|
3622
|
+
|
3537
3623
|
# HVDC lines
|
3538
3624
|
if hvdc_Pf is not None:
|
3539
3625
|
|
@@ -3607,7 +3693,7 @@ class SchematicWidget(BaseDiagramWidget):
|
|
3607
3693
|
pass
|
3608
3694
|
else:
|
3609
3695
|
error_msg("HVDC results length differs from the number of HVDC results. \n"
|
3610
|
-
"Did you change the
|
3696
|
+
"Did you change the number of devices? If so, re-run the simulation.")
|
3611
3697
|
|
3612
3698
|
# fluid paths
|
3613
3699
|
if fluid_path_flow is not None:
|
@@ -484,9 +484,6 @@ class BaseDiagramWidget(QSplitter):
|
|
484
484
|
self.draw()
|
485
485
|
|
486
486
|
def colour_results(self,
|
487
|
-
buses: List[Bus],
|
488
|
-
branches: List[BRANCH_TYPES],
|
489
|
-
hvdc_lines: List[HvdcLine],
|
490
487
|
Sbus: CxVec,
|
491
488
|
bus_active: IntVec,
|
492
489
|
Sf: CxVec,
|
@@ -502,9 +499,21 @@ class BaseDiagramWidget(QSplitter):
|
|
502
499
|
hvdc_loading: Vec = None,
|
503
500
|
hvdc_active: IntVec = None,
|
504
501
|
loading_label: str = 'loading',
|
502
|
+
vsc_Pf: Vec = None,
|
503
|
+
vsc_Pt: Vec = None,
|
504
|
+
vsc_Qt: Vec = None,
|
505
|
+
vsc_losses: Vec = None,
|
506
|
+
vsc_loading: Vec = None,
|
507
|
+
vsc_active: IntVec = None,
|
505
508
|
ma: Vec = None,
|
506
509
|
theta: Vec = None,
|
507
|
-
|
510
|
+
fluid_node_p2x_flow: Vec = None,
|
511
|
+
fluid_node_current_level: Vec = None,
|
512
|
+
fluid_node_spillage: Vec = None,
|
513
|
+
fluid_node_flow_in: Vec = None,
|
514
|
+
fluid_node_flow_out: Vec = None,
|
515
|
+
fluid_path_flow: Vec = None,
|
516
|
+
fluid_injection_flow: Vec = None,
|
508
517
|
use_flow_based_width: bool = False,
|
509
518
|
min_branch_width: int = 5,
|
510
519
|
max_branch_width=5,
|
@@ -513,9 +522,6 @@ class BaseDiagramWidget(QSplitter):
|
|
513
522
|
cmap: palettes.Colormaps = None):
|
514
523
|
"""
|
515
524
|
|
516
|
-
:param buses:
|
517
|
-
:param branches:
|
518
|
-
:param hvdc_lines:
|
519
525
|
:param Sbus:
|
520
526
|
:param bus_active:
|
521
527
|
:param Sf:
|
@@ -531,15 +537,28 @@ class BaseDiagramWidget(QSplitter):
|
|
531
537
|
:param hvdc_loading:
|
532
538
|
:param hvdc_active:
|
533
539
|
:param loading_label:
|
540
|
+
:param vsc_Pf:
|
541
|
+
:param vsc_Pt:
|
542
|
+
:param vsc_Qt:
|
543
|
+
:param vsc_losses:
|
544
|
+
:param vsc_loading:
|
545
|
+
:param vsc_active:
|
534
546
|
:param ma:
|
535
547
|
:param theta:
|
536
|
-
:param
|
548
|
+
:param fluid_node_p2x_flow:
|
549
|
+
:param fluid_node_current_level:
|
550
|
+
:param fluid_node_spillage:
|
551
|
+
:param fluid_node_flow_in:
|
552
|
+
:param fluid_node_flow_out:
|
553
|
+
:param fluid_path_flow:
|
554
|
+
:param fluid_injection_flow:
|
537
555
|
:param use_flow_based_width:
|
538
556
|
:param min_branch_width:
|
539
557
|
:param max_branch_width:
|
540
558
|
:param min_bus_width:
|
541
559
|
:param max_bus_width:
|
542
560
|
:param cmap:
|
561
|
+
:return:
|
543
562
|
"""
|
544
563
|
pass
|
545
564
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
################################################################################
|
4
4
|
## Form generated from reading UI file 'ConsoleLog.ui'
|
5
5
|
##
|
6
|
-
## Created by: Qt User Interface Compiler version 6.
|
6
|
+
## Created by: Qt User Interface Compiler version 6.7.2
|
7
7
|
##
|
8
8
|
## WARNING! All changes made in this file will be lost when recompiling UI file!
|
9
9
|
################################################################################
|
@@ -28,7 +28,7 @@ class Ui_mainWindow(object):
|
|
28
28
|
mainWindow.resize(516, 327)
|
29
29
|
mainWindow.setBaseSize(QSize(0, 0))
|
30
30
|
icon = QIcon()
|
31
|
-
icon.addFile(u":/Program icon/GridCal_icon.svg", QSize(), QIcon.Normal, QIcon.Off)
|
31
|
+
icon.addFile(u":/Program icon/GridCal_icon.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
|
32
32
|
mainWindow.setWindowIcon(icon)
|
33
33
|
mainWindow.setIconSize(QSize(24, 24))
|
34
34
|
mainWindow.setDocumentMode(False)
|
@@ -37,7 +37,7 @@ class Ui_mainWindow(object):
|
|
37
37
|
self.actionSave = QAction(mainWindow)
|
38
38
|
self.actionSave.setObjectName(u"actionSave")
|
39
39
|
icon1 = QIcon()
|
40
|
-
icon1.addFile(u":/Icons/icons/savec.svg", QSize(), QIcon.Normal, QIcon.Off)
|
40
|
+
icon1.addFile(u":/Icons/icons/savec.svg", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
|
41
41
|
self.actionSave.setIcon(icon1)
|
42
42
|
self.centralwidget = QWidget(mainWindow)
|
43
43
|
self.centralwidget.setObjectName(u"centralwidget")
|