GridCal 5.1.27__tar.gz → 5.1.28__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.
Files changed (283) hide show
  1. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/io.py +2 -2
  2. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/simulations.py +2 -2
  3. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/plugins.py +1 -1
  4. GridCal-5.1.28/GridCal/Session/export_results_driver.py +80 -0
  5. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/__version__.py +1 -1
  6. {GridCal-5.1.27 → GridCal-5.1.28}/PKG-INFO +1 -1
  7. GridCal-5.1.27/GridCal/Session/export_results_driver.py +0 -117
  8. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ExecuteGridCal.py +0 -0
  9. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
  10. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/AboutDialogue/about_dialogue.py +0 -0
  11. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/AboutDialogue/gui.py +0 -0
  12. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/AboutDialogue/icons_rc.py +0 -0
  13. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/AboutDialogue/update_gui_file.py +0 -0
  14. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/AnalysisDialogue.py +0 -0
  15. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/__init__.py +0 -0
  16. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/gui.py +0 -0
  17. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/icons_rc.py +0 -0
  18. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/object_plot_analysis.py +0 -0
  19. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Analysis/update_gui_file.py +0 -0
  20. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
  21. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CascadingSteps/cascading_steps.py +0 -0
  22. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CascadingSteps/gui.py +0 -0
  23. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CascadingSteps/update_gui_file.py +0 -0
  24. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ConsoleWidget.py +0 -0
  25. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
  26. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
  27. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ContingencyPlanner/gui.py +0 -0
  28. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ContingencyPlanner/icons_rc.py +0 -0
  29. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ContingencyPlanner/update_gui_file.py +0 -0
  30. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
  31. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
  32. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CoordinatesInput/gui.py +0 -0
  33. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CoordinatesInput/icons_rc.py +0 -0
  34. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/CoordinatesInput/update_gui_file.py +0 -0
  35. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
  36. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
  37. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
  38. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
  39. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
  40. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
  41. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +0 -0
  42. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
  43. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Substation/node_graphic_item.py +0 -0
  44. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
  45. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
  46. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
  47. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/__init__.py +0 -0
  48. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/blue_marble.py +0 -0
  49. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/cartodb.py +0 -0
  50. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/gmt_local.py +0 -0
  51. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapbox.py +0 -0
  52. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/mapquest.py +0 -0
  53. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/open_street_map.py +0 -0
  54. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_toner.py +0 -0
  55. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_transport.py +0 -0
  56. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/TileProviders/stamen_watercolor.py +0 -0
  57. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
  58. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
  59. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
  60. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
  61. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
  62. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
  63. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
  64. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
  65. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +0 -0
  66. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/map_events.py +0 -0
  67. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +0 -0
  68. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/new_line_dialogue.py +0 -0
  69. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/MapWidget/node_widget.py +0 -0
  70. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
  71. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
  72. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
  73. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_editor.py +0 -0
  74. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
  75. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
  76. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
  77. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
  78. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
  79. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
  80. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_editor.py +0 -0
  81. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer_taps_editor.py +0 -0
  82. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
  83. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
  84. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
  85. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
  86. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
  87. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
  88. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
  89. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
  90. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
  91. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
  92. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
  93. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_editor.py +0 -0
  94. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
  95. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
  96. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
  97. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_editor.py +0 -0
  98. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
  99. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
  100. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
  101. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
  102. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
  103. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
  104. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
  105. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +0 -0
  106. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +0 -0
  107. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
  108. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
  109. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +0 -0
  110. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
  111. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/__init__.py +0 -0
  112. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/base_diagram_widget.py +0 -0
  113. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/diagrams_model.py +0 -0
  114. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/generic_graphics.py +0 -0
  115. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Diagrams/graphics_manager.py +0 -0
  116. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GeneralDialogues.py +0 -0
  117. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GridGenerator/__init__.py +0 -0
  118. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
  119. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GridGenerator/gui.py +0 -0
  120. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GridGenerator/icons_rc.py +0 -0
  121. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GridGenerator/update_gui_file.py +0 -0
  122. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/GuiFunctions.py +0 -0
  123. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadCatalogue/SelectComponents.py +0 -0
  124. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadCatalogue/__init__.py +0 -0
  125. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
  126. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadCatalogue/icons_rc.py +0 -0
  127. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadCatalogue/update_gui_file.py +0 -0
  128. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
  129. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadDesigner/icons_rc.py +0 -0
  130. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadDesigner/load_designer.py +0 -0
  131. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadDesigner/load_designer_ui.py +0 -0
  132. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/LoadDesigner/update_gui_file.py +0 -0
  133. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/ConsoleLog.py +0 -0
  134. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/ConsoleLogController.py +0 -0
  135. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/GridCalMain.py +0 -0
  136. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/MainWindow.py +0 -0
  137. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
  138. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
  139. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +0 -0
  140. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Model/objects.py +0 -0
  141. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Model/time_events.py +0 -0
  142. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/README.txt +0 -0
  143. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
  144. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Results/results.py +0 -0
  145. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
  146. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Scripting/python_highlighter.py +0 -0
  147. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +0 -0
  148. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
  149. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Server/server.py +0 -0
  150. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
  151. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +0 -0
  152. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
  153. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/SubClasses/base_gui.py +0 -0
  154. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/__init__.py +0 -0
  155. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/icons_rc.py +0 -0
  156. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/object_select_window.py +0 -0
  157. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Main/update_gui_file.py +0 -0
  158. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
  159. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/excel_dialog.py +0 -0
  160. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
  161. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/icons_rc.py +0 -0
  162. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/models_dialogue.py +0 -0
  163. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/profile_dialogue.py +0 -0
  164. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/profiles_from_data.py +0 -0
  165. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
  166. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
  167. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/ProfilesInput/update_gui_file.py +0 -0
  168. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/ConsoleWidget.py +0 -0
  169. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/MainWindow.py +0 -0
  170. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
  171. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
  172. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/icons_rc.py +0 -0
  173. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
  174. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/RosetaExplorer/update_gui_file.py +0 -0
  175. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
  176. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SigmaAnalysis/gui.py +0 -0
  177. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SigmaAnalysis/icons_rc.py +0 -0
  178. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
  179. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SigmaAnalysis/update_gui_file.py +0 -0
  180. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
  181. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SolarPowerWizard/gui.py +0 -0
  182. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SolarPowerWizard/icons_rc.py +0 -0
  183. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
  184. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -0
  185. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
  186. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SyncDialogue/gui.py +0 -0
  187. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SyncDialogue/icons_rc.py +0 -0
  188. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SyncDialogue/sync_dialogue.py +0 -0
  189. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SyncDialogue/update_gui_file.py +0 -0
  190. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SystemScaler/__init__.py +0 -0
  191. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SystemScaler/icons_rc.py +0 -0
  192. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SystemScaler/system_scaler.py +0 -0
  193. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SystemScaler/system_scaler_ui.py +0 -0
  194. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/SystemScaler/update_gui_file.py +0 -0
  195. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
  196. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
  197. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/gui.py +0 -0
  198. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/icons_rc.py +0 -0
  199. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/table_models.py +0 -0
  200. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/test_.py +0 -0
  201. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TowerBuilder/update_gui_file.py +0 -0
  202. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TreeModelViewer/MainWindow.py +0 -0
  203. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
  204. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
  205. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TreeModelViewer/icons_rc.py +0 -0
  206. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/TreeModelViewer/update_gui_file.py +0 -0
  207. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Visualization/__init__.py +0 -0
  208. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Visualization/visualization.py +0 -0
  209. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Widgets/__init__.py +0 -0
  210. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Widgets/custom_qrangeslider.py +0 -0
  211. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/Widgets/matplotlibwidget.py +0 -0
  212. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
  213. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/WindPowerWizard/gui.py +0 -0
  214. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/WindPowerWizard/icons_rc.py +0 -0
  215. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -0
  216. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
  217. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/__init__.py +0 -0
  218. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/associations_model.py +0 -0
  219. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/messages.py +0 -0
  220. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/object_model.py +0 -0
  221. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/pandas_model.py +0 -0
  222. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/plot_config.py +0 -0
  223. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/profiles_model.py +0 -0
  224. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/table_view_header_wrap.py +0 -0
  225. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/themes.py +0 -0
  226. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/update_gui_all.py +0 -0
  227. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Gui/update_gui_common.py +0 -0
  228. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/LICENSE.txt +0 -0
  229. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/__init__.py +0 -0
  230. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/file_handler.py +0 -0
  231. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/results_model.py +0 -0
  232. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/server_driver.py +0 -0
  233. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/session.py +0 -0
  234. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/Session/synchronization_driver.py +0 -0
  235. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/__init__.py +0 -0
  236. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/__init__.py +0 -0
  237. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_color.py +0 -0
  238. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
  239. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
  240. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +0 -0
  241. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_main.py +0 -0
  242. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
  243. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
  244. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
  245. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
  246. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +0 -0
  247. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
  248. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +0 -0
  249. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +0 -0
  250. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
  251. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
  252. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +0 -0
  253. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_style_loader.py +0 -0
  254. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
  255. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_template/engine.py +0 -0
  256. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_template/filter.py +0 -0
  257. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/_util.py +0 -0
  258. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
  259. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
  260. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
  261. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
  262. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
  263. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
  264. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
  265. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
  266. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
  267. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
  268. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
  269. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
  270. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
  271. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
  272. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
  273. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
  274. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/__init__.py +0 -0
  275. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/data/__init__.py +0 -0
  276. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/data/cables.csv +0 -0
  277. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/data/sequence_lines.csv +0 -0
  278. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/data/transformers.csv +0 -0
  279. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/data/wires.csv +0 -0
  280. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/templates.py +0 -0
  281. {GridCal-5.1.27 → GridCal-5.1.28}/GridCal/update.py +0 -0
  282. {GridCal-5.1.27 → GridCal-5.1.28}/setup.cfg +0 -0
  283. {GridCal-5.1.27 → GridCal-5.1.28}/setup.py +0 -0
@@ -837,7 +837,7 @@ class IoMain(ConfigurationMain):
837
837
  :return:
838
838
  """
839
839
 
840
- available_results = self.get_available_results()
840
+ available_results = self.get_available_drivers()
841
841
 
842
842
  if len(available_results) > 0:
843
843
 
@@ -851,7 +851,7 @@ class IoMain(ConfigurationMain):
851
851
 
852
852
  self.stuff_running_now.append('export_all')
853
853
  self.export_all_thread_object = exprtdrv.ExportAllThread(circuit=self.circuit,
854
- simulations_list=available_results,
854
+ drivers_list=available_results,
855
855
  file_name=filename)
856
856
 
857
857
  self.export_all_thread_object.progress_signal.connect(self.ui.progressBar.setValue)
@@ -256,7 +256,7 @@ class SimulationsMain(TimeEventsMain):
256
256
 
257
257
  return all_threads
258
258
 
259
- def get_available_results(self):
259
+ def get_available_drivers(self) -> List[DRIVER_OBJECTS]:
260
260
  """
261
261
  Get a list of all the available results' objects
262
262
  :return: list[object]
@@ -539,7 +539,7 @@ class SimulationsMain(TimeEventsMain):
539
539
  # clear results lists
540
540
  self.ui.results_treeView.setModel(None)
541
541
 
542
- available_results = self.get_available_results()
542
+ available_results = self.get_available_drivers()
543
543
  max_steps = 0
544
544
  d = dict()
545
545
  lst = list()
@@ -64,7 +64,7 @@ class PluginFunction:
64
64
  - func(self) is then what I wanted to lambda in the first place
65
65
  """
66
66
  func = self.function_ptr
67
- return lambda e, func=func: func(gui_instance) # This is not an error, it is correct
67
+ return lambda e=True, func=func: func(gui_instance) # This is not an error, it is correct
68
68
 
69
69
  def to_dict(self) -> Dict[str, str]:
70
70
  """
@@ -0,0 +1,80 @@
1
+ # GridCal
2
+ # Copyright (C) 2015 - 2024 Santiago Peñate Vera
3
+ #
4
+ # This program is free software; you can redistribute it and/or
5
+ # modify it under the terms of the GNU Lesser General Public
6
+ # License as published by the Free Software Foundation; either
7
+ # version 3 of the License, or (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
+ # Lesser General Public License for more details.
13
+ #
14
+ # You should have received a copy of the GNU Lesser General Public License
15
+ # along with this program; if not, write to the Free Software Foundation,
16
+ # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17
+
18
+ from typing import List
19
+ from PySide6.QtCore import QThread, Signal
20
+ from GridCalEngine.IO.gridcal.results_export import export_drivers
21
+ from GridCalEngine.Devices.multi_circuit import MultiCircuit
22
+ from GridCalEngine.Simulations.types import DRIVER_OBJECTS
23
+ from GridCalEngine.basic_structures import Logger
24
+
25
+
26
+ class ExportAllThread(QThread):
27
+ """
28
+ ExportAllThread
29
+ """
30
+ progress_signal = Signal(float)
31
+ progress_text = Signal(str)
32
+ done_signal = Signal()
33
+
34
+ def __init__(self, circuit: MultiCircuit, drivers_list: List[DRIVER_OBJECTS], file_name: str):
35
+ """
36
+ Constructor
37
+ :param circuit: Grid circuit
38
+ :param drivers_list: list of GridCal simulation drivers
39
+ :param file_name: name of the file where to save (.zip)
40
+ """
41
+ QThread.__init__(self)
42
+
43
+ self.circuit: MultiCircuit = circuit
44
+
45
+ self.drivers_list: List[DRIVER_OBJECTS] = drivers_list
46
+
47
+ self.file_name: str = file_name
48
+
49
+ self.valid: bool = False
50
+
51
+ self.logger = Logger()
52
+
53
+ self.error_msg: str = ""
54
+
55
+ self.__cancel__ = False
56
+
57
+ def run(self) -> None:
58
+ """
59
+ run the file save procedure
60
+ """
61
+
62
+ # try:
63
+ export_drivers(drivers_list=self.drivers_list,
64
+ file_name=self.file_name,
65
+ text_func=self.progress_text.emit,
66
+ progress_func=self.progress_signal.emit,
67
+ logger=self.logger)
68
+
69
+ self.valid = True
70
+
71
+ # post events
72
+ self.progress_text.emit('Done!')
73
+
74
+ self.done_signal.emit()
75
+
76
+ def cancel(self):
77
+ """
78
+ Cancel progress
79
+ """
80
+ self.__cancel__ = True
@@ -16,7 +16,7 @@ import datetime
16
16
  _current_year_ = datetime.datetime.now().year
17
17
 
18
18
  # do not forget to keep a three-number version!!!
19
- __GridCal_VERSION__ = "5.1.27"
19
+ __GridCal_VERSION__ = "5.1.28"
20
20
 
21
21
  url = 'https://github.com/SanPen/GridCal'
22
22
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: GridCal
3
- Version: 5.1.27
3
+ Version: 5.1.28
4
4
  Summary: GridCal is a Power Systems simulation program intended for professional use and research
5
5
  Home-page: https://github.com/SanPen/GridCal
6
6
  Author: Santiago Peñate Vera et. Al.
@@ -1,117 +0,0 @@
1
- # GridCal
2
- # Copyright (C) 2015 - 2024 Santiago Peñate Vera
3
- #
4
- # This program is free software; you can redistribute it and/or
5
- # modify it under the terms of the GNU Lesser General Public
6
- # License as published by the Free Software Foundation; either
7
- # version 3 of the License, or (at your option) any later version.
8
- #
9
- # This program is distributed in the hope that it will be useful,
10
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
- # Lesser General Public License for more details.
13
- #
14
- # You should have received a copy of the GNU Lesser General Public License
15
- # along with this program; if not, write to the Free Software Foundation,
16
- # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17
- import os
18
- from io import StringIO
19
- import zipfile
20
- from PySide6.QtCore import QThread, Signal
21
-
22
- from GridCalEngine.basic_structures import Logger
23
-
24
-
25
- class ExportAllThread(QThread):
26
- progress_signal = Signal(float)
27
- progress_text = Signal(str)
28
- done_signal = Signal()
29
-
30
- def __init__(self, circuit, simulations_list, file_name):
31
- """
32
- Constructor
33
- :param simulations_list: list of GridCal simulation drivers
34
- :param file_name: name of the file where to save (.zip)
35
- """
36
- QThread.__init__(self)
37
-
38
- self.circuit = circuit
39
-
40
- self.simulations_list = simulations_list
41
-
42
- self.file_name = file_name
43
-
44
- self.valid = False
45
-
46
- self.logger = Logger()
47
-
48
- self.error_msg = ''
49
-
50
- self.__cancel__ = False
51
-
52
- def run(self):
53
- """
54
- run the file save procedure
55
- """
56
-
57
- # try:
58
- path, fname = os.path.split(self.file_name)
59
-
60
- self.progress_text.emit('Flushing ' + fname + ' into ' + fname + '...')
61
-
62
- self.logger = Logger()
63
-
64
- # names_dict = {DeviceType.BusDevice: self.circuit.get_bus_names(),
65
- # DeviceType.BranchDevice: self.circuit.get_branch_names(),
66
- # DeviceType.BusDevice.LoadDevice: self.circuit.get_load_names(),
67
- # DeviceType.BusDevice.GeneratorDevice: self.circuit.get_controlled_generator_names(),
68
- # DeviceType.BusDevice.BatteryDevice: self.circuit.get_battery_names()}
69
-
70
- # open zip file for writing
71
- try:
72
- with zipfile.ZipFile(self.file_name, 'w', zipfile.ZIP_DEFLATED) as myzip:
73
-
74
- n = len(self.simulations_list)
75
-
76
- for k, driver in enumerate(self.simulations_list):
77
-
78
- self.progress_signal.emit((k + 1) / n * 100.0)
79
-
80
- if isinstance(driver.results.available_results, dict):
81
- available_res = [e for tpe, lst in driver.results.available_results.items() for e in lst]
82
- else:
83
- available_res = driver.results.available_results
84
-
85
- for available_result in available_res:
86
-
87
- # ge the result type definition
88
- result_name, device_type = available_result.value
89
-
90
- self.progress_text.emit('flushing ' + driver.results.name + ' ' + result_name)
91
-
92
- # save the DataFrame to the buffer
93
- mdl = driver.results.mdl(result_type=available_result)
94
-
95
- if mdl is not None:
96
- with StringIO() as buffer:
97
- filename = driver.results.name + ' ' + result_name + '.csv'
98
- try:
99
- mdl.save_to_csv(buffer)
100
- myzip.writestr(filename, buffer.getvalue())
101
- except ValueError:
102
- self.logger.add_error('Value error', filename)
103
- else:
104
- self.logger.add_info('No results for ' + driver.results.name + ' - ' + result_name)
105
-
106
- except PermissionError:
107
- self.logger.add('Permission error.\nDo you have the file open?')
108
-
109
- self.valid = True
110
-
111
- # post events
112
- self.progress_text.emit('Done!')
113
-
114
- self.done_signal.emit()
115
-
116
- def cancel(self):
117
- self.__cancel__ = True