mg-pso-gui 0.2.124__tar.gz → 0.2.126__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 (86) hide show
  1. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/PKG-INFO +1 -1
  2. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/PKG-INFO +1 -1
  3. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/SOURCES.txt +2 -0
  4. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/HomePage.py +33 -4
  5. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/ListParametersView.py +1 -1
  6. mg_pso_gui-0.2.126/mgpsogui/util/recosu/pso/pso modified.py +585 -0
  7. mg_pso_gui-0.2.126/mgpsogui/util/recosu/pso/pso.py +383 -0
  8. mg_pso_gui-0.2.124/mgpsogui/util/recosu/pso/pso.py → mg_pso_gui-0.2.126/mgpsogui/util/recosu/pso/pso_new.py +1 -1
  9. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/setup.py +1 -1
  10. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/dependency_links.txt +0 -0
  11. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/entry_points.txt +0 -0
  12. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/requires.txt +0 -0
  13. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mg_pso_gui.egg-info/top_level.txt +0 -0
  14. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/__init__.py +0 -0
  15. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/General/NoticeWindow.py +0 -0
  16. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/General/ParameterView.py +0 -0
  17. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/General/__init__.py +0 -0
  18. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/OptionManager.py +0 -0
  19. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/OptionManager_backup.py +0 -0
  20. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/PlatformTab/PlatformTab.py +0 -0
  21. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/PlatformTab/__init__.py +0 -0
  22. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/RunTab/OptimalParameterView.py +0 -0
  23. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/RunTab/RunTab.py +0 -0
  24. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/RunTab/__init__.py +0 -0
  25. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/BoundsEditorWindow.py +0 -0
  26. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/BoundsList.py +0 -0
  27. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/CustomFunctionEditorWindow.py +0 -0
  28. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/CustomFunctionMetrics.py +0 -0
  29. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/FunctionsList.py +0 -0
  30. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/ListEditor.py +0 -0
  31. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/OverrideParameterMetrics.py +0 -0
  32. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/OverrideParameterWindow.py +0 -0
  33. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/SamplingListView.py +0 -0
  34. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/SamplingNameListWindow.py +0 -0
  35. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/SetupTab.py +0 -0
  36. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/StepView.py +0 -0
  37. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/SetupTab/__init__.py +0 -0
  38. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/VisualizeTab/MatrixEditor.py +0 -0
  39. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/VisualizeTab/SideBar.py +0 -0
  40. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/VisualizeTab/VisualizeTab.py +0 -0
  41. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/VisualizeTab/__init__.py +0 -0
  42. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/__init__.py +0 -0
  43. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/defaults/__init__.py +0 -0
  44. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/defaults/optimization.json +0 -0
  45. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/defaults/sampling.json +0 -0
  46. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/defaults/sensitivity.json +0 -0
  47. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/collapse.png +0 -0
  48. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/down.png +0 -0
  49. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/expand.png +0 -0
  50. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/play.png +0 -0
  51. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/plus.png +0 -0
  52. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/refresh.png +0 -0
  53. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/refresh_hd.png +0 -0
  54. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/stop.png +0 -0
  55. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/test.png +0 -0
  56. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/trash.png +0 -0
  57. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/images/up.png +0 -0
  58. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/gui/messages/welcome.txt +0 -0
  59. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/mgpsogui.py +0 -0
  60. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/start.yaml +0 -0
  61. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/CTkToolTip/__init__.py +0 -0
  62. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/CTkToolTip/ctk_tooltip.py +0 -0
  63. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/GraphGenerator.py +0 -0
  64. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/PSORunner.py +0 -0
  65. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/__init__.py +0 -0
  66. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/debug.py +0 -0
  67. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/helpers.py +0 -0
  68. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/__init__.py +0 -0
  69. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/pso/__init__.py +0 -0
  70. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/pso/csip_access.py +0 -0
  71. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/__init__.py +0 -0
  72. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/halton/__init__.py +0 -0
  73. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/halton/halton.py +0 -0
  74. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/halton/prime.py +0 -0
  75. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/random/__init__.py +0 -0
  76. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/random/random_sampler.py +0 -0
  77. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/sample_trace_writer.py +0 -0
  78. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/sampler_task.py +0 -0
  79. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/sampling/sampling.py +0 -0
  80. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/utils/__init__.py +0 -0
  81. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/utils/plot/__init__.py +0 -0
  82. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/utils/plot/cost_steps.py +0 -0
  83. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/utils/trace_writer.py +0 -0
  84. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/recosu/utils/utils.py +0 -0
  85. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/mgpsogui/util/sampler_test_driver.py +0 -0
  86. {mg_pso_gui-0.2.124 → mg_pso_gui-0.2.126}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mg-pso-gui
3
- Version: 0.2.124
3
+ Version: 0.2.126
4
4
  Summary: GUI for MG-PSO
5
5
  Author: Robert Cordingly
6
6
  Author-email: <rcording@uw.ed>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mg-pso-gui
3
- Version: 0.2.124
3
+ Version: 0.2.126
4
4
  Summary: GUI for MG-PSO
5
5
  Author: Robert Cordingly
6
6
  Author-email: <rcording@uw.ed>
@@ -65,7 +65,9 @@ mgpsogui/util/CTkToolTip/ctk_tooltip.py
65
65
  mgpsogui/util/recosu/__init__.py
66
66
  mgpsogui/util/recosu/pso/__init__.py
67
67
  mgpsogui/util/recosu/pso/csip_access.py
68
+ mgpsogui/util/recosu/pso/pso modified.py
68
69
  mgpsogui/util/recosu/pso/pso.py
70
+ mgpsogui/util/recosu/pso/pso_new.py
69
71
  mgpsogui/util/recosu/sampling/__init__.py
70
72
  mgpsogui/util/recosu/sampling/sample_trace_writer.py
71
73
  mgpsogui/util/recosu/sampling/sampler_task.py
@@ -113,6 +113,8 @@ class App(customtkinter.CTk):
113
113
  self.calibration_data = None
114
114
  self.testing = False
115
115
 
116
+ self.running_loop_ticks = 1
117
+
116
118
  # Configure window
117
119
  version = "v0.2.120"
118
120
  self.title("COSU Manager (" + version + ")")
@@ -143,7 +145,7 @@ class App(customtkinter.CTk):
143
145
  self.sidebar_frame.grid_columnconfigure(4, weight=1)
144
146
  self.logo_label = customtkinter.CTkLabel(self.sidebar_frame, text="COSU Manager (" + version + ")", font=customtkinter.CTkFont(size=20, weight="bold"))
145
147
  self.logo_label.grid(row=0, column=0, padx=(20, 10), pady=header_padding_y)
146
- self.save_button = customtkinter.CTkButton(self.sidebar_frame, text="Save", width=60, command=self.save_project)
148
+ self.save_button = customtkinter.CTkButton(self.sidebar_frame, text="Save As", width=60, command=self.save_project)
147
149
  self.save_button.grid(row=0, column=1, padx=header_padding_x, pady=header_padding_y)
148
150
  self.load_button = customtkinter.CTkButton(self.sidebar_frame, text="Load", width=60, command=self.load_project)
149
151
  self.load_button.grid(row=0, column=2, padx=header_padding_x, pady=header_padding_y)
@@ -241,7 +243,8 @@ class App(customtkinter.CTk):
241
243
  GraphGenerator.generate_graphs(self)
242
244
 
243
245
  def save_project(self):
244
- filename = asksaveasfilename(filetypes=[("JSON", "*.json")], initialfile="config", defaultextension="json", title="Save Project")
246
+ name = self.option_manager.get_project_data()['name']
247
+ filename = asksaveasfilename(filetypes=[("JSON", "*.json")], initialfile=name, defaultextension="json", title="Save Project")
245
248
 
246
249
  try:
247
250
  self.option_manager.set_path(filename)
@@ -255,11 +258,32 @@ class App(customtkinter.CTk):
255
258
  os.makedirs(os.path.join(folder, "results"))
256
259
 
257
260
  self.save_button.configure(text="Saved!")
258
- self.after(3000, lambda: self.save_button.configure(text="Save"))
261
+ self.after(3000, lambda: self.save_button.configure(text="Save As"))
259
262
  except Exception as e:
260
263
  self.save_button.configure(text="Error!")
261
264
  print(e)
262
- self.after(3000, lambda: self.save_button.configure(text="Save"))
265
+ self.after(3000, lambda: self.save_button.configure(text="Save As"))
266
+
267
+ def auto_save_project(self):
268
+ data = self.option_manager.get_project_data()
269
+
270
+ if (data['path'] != "/tmp"):
271
+ filename = os.path.join(data['path'], data['name'] + ".json")
272
+
273
+ try:
274
+ self.option_manager.set_path(filename)
275
+ self.option_manager.save_project(filename)
276
+
277
+ folder = self.option_manager.get_project_folder()
278
+ if not os.path.exists(folder):
279
+ os.makedirs(folder)
280
+
281
+ if not os.path.exists(os.path.join(folder, "results")):
282
+ os.makedirs(os.path.join(folder, "results"))
283
+
284
+ except Exception as e:
285
+ self.save_button.configure(text="Error!")
286
+ print(e)
263
287
 
264
288
  def refresh_step_view(self, value):
265
289
  mode = self.option_manager.get_mode()
@@ -419,6 +443,8 @@ class App(customtkinter.CTk):
419
443
  NW(title="Error", message="A process is already running!", x = 400, y = 200)
420
444
  return 0
421
445
 
446
+ self.auto_save_project()
447
+
422
448
  data = self.option_manager.get_all_data()
423
449
  mode = self.option_manager.get_mode()
424
450
  data = data[mode]
@@ -528,8 +554,11 @@ class App(customtkinter.CTk):
528
554
  active_tab = self.tabview.get()
529
555
  if (active_tab == "Results"):
530
556
  GraphGenerator.generate_graphs(self)
557
+ if (self.running_loop_ticks % 10 == 0):
558
+ self.auto_save_project()
531
559
  finally:
532
560
  self.after(1000, self.running_loop)
561
+ self.running_loop_ticks += 1
533
562
 
534
563
  def watch_loop(self):
535
564
  print("Watch loop running...")
@@ -138,7 +138,7 @@ class ListParametersView(CTkScrollableFrame):
138
138
  row += 1
139
139
 
140
140
  CTkButton(self.containerFrame, text="Open", command=self.open_csv).grid(row=row, column=0, padx=(5, 5), pady=(5, 5), sticky="ew")
141
- CTkButton(self.containerFrame, text="Import", command=self.import_csv).grid(row=row, column=1, padx=(5, 5), pady=(5, 5), sticky="ew")
141
+ CTkButton(self.containerFrame, text="Paste", command=self.import_csv).grid(row=row, column=1, padx=(5, 5), pady=(5, 5), sticky="ew")
142
142
  row += 1
143
143
 
144
144