pyfemtet 1.1.0__tar.gz → 1.1.1__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.

Potentially problematic release.


This version of pyfemtet might be problematic. Click here for more details.

Files changed (178) hide show
  1. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/PKG-INFO +1 -1
  2. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/df_util.py +16 -4
  3. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/pm_graph.py +59 -6
  4. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_helper.py +13 -0
  5. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/_pages.py +2 -10
  6. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/plotter/pm_graph_creator.py +29 -2
  7. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyproject.toml +1 -1
  8. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/LICENSE +0 -0
  9. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/LICENSE_THIRD_PARTY.txt +0 -0
  10. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/README.md +0 -0
  11. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/__init__.py +0 -0
  12. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/1. make_pot_and_update_po.bat +0 -0
  13. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/2. build_mo.bat +0 -0
  14. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/__init__.py +0 -0
  15. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/babel.cfg +0 -0
  16. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/i18n.py +0 -0
  17. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/locales/ja/LC_MESSAGES/messages.mo +0 -0
  18. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/locales/ja/LC_MESSAGES/messages.po +0 -0
  19. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/locales/messages.pot +0 -0
  20. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_i18n/messages.py +0 -0
  21. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/__init__.py +0 -0
  22. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/closing.py +0 -0
  23. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/dask_util.py +0 -0
  24. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/excel_macro_util.py +0 -0
  25. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/excel_parse_util.py +0 -0
  26. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/femtet_access_inspection.py +0 -0
  27. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/femtet_autosave.py +0 -0
  28. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/femtet_exit.py +0 -0
  29. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/femtet_version.py +0 -0
  30. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/helper.py +0 -0
  31. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/process_util.py +0 -0
  32. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/sample.xlsx +0 -0
  33. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/_util/str_enum.py +0 -0
  34. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/core.py +0 -0
  35. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/dispatch_extensions/__init__.py +0 -0
  36. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/dispatch_extensions/_impl.py +0 -0
  37. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/logger/__init__.py +0 -0
  38. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/logger/_impl.py +0 -0
  39. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/__init__.py +0 -0
  40. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/exceptions.py +0 -0
  41. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/femopt.py +0 -0
  42. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/history/__init__.py +0 -0
  43. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/history/_history.py +0 -0
  44. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/history/_hypervolume.py +0 -0
  45. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/history/_optimality.py +0 -0
  46. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/__init__.py +0 -0
  47. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_base_interface.py +0 -0
  48. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_dummy_classes.py +0 -0
  49. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_excel_interface/__init__.py +0 -0
  50. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_excel_interface/debug-excel-interface.xlsm +0 -0
  51. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_excel_interface/excel_interface.py +0 -0
  52. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_interface/__init__.py +0 -0
  53. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_interface/_femtet_parametric.py +0 -0
  54. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_interface/femtet_interface.py +0 -0
  55. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_nx_interface/__init__.py +0 -0
  56. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_nx_interface/femtet_with_nx_interface.py +0 -0
  57. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.prt +0 -0
  58. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.x_t +0 -0
  59. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_nx_interface/update_model.py +0 -0
  60. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_solidworks/__init__.py +0 -0
  61. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_femtet_with_solidworks/femtet_with_solidworks_interface.py +0 -0
  62. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_solidworks_interface/__init__.py +0 -0
  63. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_solidworks_interface/solidworks_interface.py +0 -0
  64. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_surrogate_model_interface/__init__.py +0 -0
  65. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_surrogate_model_interface/base_surrogate_interface.py +0 -0
  66. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_surrogate_model_interface/botorch_interface.py +0 -0
  67. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_surrogate_model_interface/debug-pof-botorch.reccsv +0 -0
  68. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_with_excel_settings/__init__.py +0 -0
  69. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/interface/_with_excel_settings/with_excel_settings.py +0 -0
  70. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/meta_script/YAML_Generator.xlsm +0 -0
  71. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/meta_script/__init__.py +0 -0
  72. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/meta_script/__main__.py +0 -0
  73. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/meta_script/sample/sample.bas +0 -0
  74. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/meta_script/sample/sample.femprj +0 -0
  75. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/__init__.py +0 -0
  76. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/_base_optimizer.py +0 -0
  77. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/_trial_queue.py +0 -0
  78. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/__init__.py +0 -0
  79. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_attribute.py +0 -0
  80. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_optimizer.py +0 -0
  81. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/__init__.py +0 -0
  82. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/debug-pof-botorch.reccsv +0 -0
  83. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/enable_nonlinear_constraint.py +0 -0
  84. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/pof_botorch_sampler.py +0 -0
  85. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/optuna_optimizer/wat_ex14_parametric_jp.femprj +0 -0
  86. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/scipy_optimizer/__init__.py +0 -0
  87. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/optimizer/scipy_optimizer/_scipy_optimizer.py +0 -0
  88. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/prediction/__init__.py +0 -0
  89. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/prediction/_botorch_utils.py +0 -0
  90. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/prediction/_gpytorch_modules_extension.py +0 -0
  91. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/prediction/_helper.py +0 -0
  92. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/prediction/_model.py +0 -0
  93. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/problem/__init__.py +0 -0
  94. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/problem/problem.py +0 -0
  95. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/problem/variable_manager/__init__.py +0 -0
  96. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/problem/variable_manager/_string_as_expression.py +0 -0
  97. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/problem/variable_manager/_variable_manager.py +0 -0
  98. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/__init__.py +0 -0
  99. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/_create_wrapped_components.py +0 -0
  100. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/__init__.py +0 -0
  101. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/__main__.py +0 -0
  102. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_base_application.py +0 -0
  103. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_common_pages.py +0 -0
  104. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/__init__.py +0 -0
  105. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/alert_region.py +0 -0
  106. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/control_femtet.py +0 -0
  107. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/detail_graphs.py +0 -0
  108. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_complex_components/main_graph.py +0 -0
  109. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_detail_page.py +0 -0
  110. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_process_monitor/__init__.py +0 -0
  111. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_process_monitor/_application.py +0 -0
  112. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_process_monitor/_pages.py +0 -0
  113. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/__init__.py +0 -0
  114. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/dbc.py +0 -0
  115. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/dcc.py +0 -0
  116. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/html.py +0 -0
  117. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/str_enum.py +0 -0
  118. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/.gitignore +0 -0
  119. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/__init__.py +0 -0
  120. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/__main__.py +0 -0
  121. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/_application.py +0 -0
  122. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08.csv +0 -0
  123. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08.db +0 -0
  124. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.jpg +0 -0
  125. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.log +0 -0
  126. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.pdt +0 -0
  127. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_1.jpg +0 -0
  128. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_1.pdt +0 -0
  129. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_10.jpg +0 -0
  130. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_10.pdt +0 -0
  131. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_11.jpg +0 -0
  132. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_11.pdt +0 -0
  133. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_12.jpg +0 -0
  134. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_12.pdt +0 -0
  135. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_13.jpg +0 -0
  136. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_13.pdt +0 -0
  137. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_14.jpg +0 -0
  138. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_14.pdt +0 -0
  139. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_15.jpg +0 -0
  140. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_15.pdt +0 -0
  141. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_16.jpg +0 -0
  142. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_16.pdt +0 -0
  143. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_17.jpg +0 -0
  144. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_17.pdt +0 -0
  145. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_18.jpg +0 -0
  146. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_18.pdt +0 -0
  147. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_19.jpg +0 -0
  148. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_19.pdt +0 -0
  149. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_2.jpg +0 -0
  150. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_2.pdt +0 -0
  151. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_20.jpg +0 -0
  152. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_20.pdt +0 -0
  153. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_3.jpg +0 -0
  154. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_3.pdt +0 -0
  155. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.bgr +0 -0
  156. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.bnd +0 -0
  157. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.btr +0 -0
  158. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.jpg +0 -0
  159. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.mtl +0 -0
  160. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.pdt +0 -0
  161. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.prm +0 -0
  162. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_5.jpg +0 -0
  163. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_5.pdt +0 -0
  164. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_6.jpg +0 -0
  165. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_6.pdt +0 -0
  166. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_7.jpg +0 -0
  167. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_7.pdt +0 -0
  168. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_8.jpg +0 -0
  169. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_8.pdt +0 -0
  170. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_9.jpg +0 -0
  171. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_9.pdt +0 -0
  172. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.femprj +0 -0
  173. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/plotter/__init__.py +0 -0
  174. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/plotter/contour_creator.py +0 -0
  175. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/plotter/main_figure_creator.py +0 -0
  176. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/visualization/plotter/parallel_plot_creator.py +0 -0
  177. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/wat_ex14_parametric_jp.femprj +0 -0
  178. {pyfemtet-1.1.0 → pyfemtet-1.1.1}/pyfemtet/opt/worker_status.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyfemtet
3
- Version: 1.1.0
3
+ Version: 1.1.1
4
4
  Summary: Design parameter optimization using Femtet.
5
5
  License: MIT
6
6
  Author: pyfemtet
@@ -1,3 +1,4 @@
1
+ from typing import TypeAlias, Literal
1
2
  from math import isnan
2
3
  import pandas as pd
3
4
 
@@ -8,7 +9,10 @@ __all__ = [
8
9
  ]
9
10
 
10
11
 
11
- def get_index(df, equality_filters):
12
+ _Method: TypeAlias = Literal['all', 'any', 'all-exclude']
13
+
14
+
15
+ def get_index(df, equality_filters, method: _Method = 'all'):
12
16
  # 値渡しに変換
13
17
  equality_filters = equality_filters.copy()
14
18
 
@@ -24,17 +28,25 @@ def get_index(df, equality_filters):
24
28
 
25
29
  # na 以外の比較
26
30
  # noinspection PyUnresolvedReferences
27
- out: pd.Series = (df[list(equality_filters.keys())] == pd.Series(equality_filters)).all(axis=1)
31
+ if 'all' in method.lower():
32
+ out: pd.Series = (df[list(equality_filters.keys())] == pd.Series(equality_filters)).all(axis=1)
33
+ elif 'any' in method.lower():
34
+ out: pd.Series = (df[list(equality_filters.keys())] == pd.Series(equality_filters)).any(axis=1)
35
+ else:
36
+ raise NotImplementedError(f'Unknown method: {method}')
28
37
 
29
38
  # na との比較
30
39
  for key in want_na_keys:
31
40
  out = out & df[key].isna()
32
41
 
42
+ if 'exclude' in method:
43
+ out = ~out
44
+
33
45
  return out
34
46
 
35
47
 
36
- def get_partial_df(df: pd.DataFrame, equality_filters: dict):
37
- return df[get_index(df, equality_filters)]
48
+ def get_partial_df(df: pd.DataFrame, equality_filters: dict, method: _Method = 'all'):
49
+ return df[get_index(df, equality_filters, method=method)]
38
50
 
39
51
 
40
52
  def apply_partial_df(df: pd.DataFrame, partial_df: pd.DataFrame, equality_filters: dict):
@@ -17,8 +17,9 @@ from pyfemtet.opt.prediction._model import *
17
17
  from pyfemtet.opt.prediction._helper import *
18
18
  from pyfemtet.opt.visualization.plotter.pm_graph_creator import plot2d, plot3d
19
19
  from pyfemtet.opt.visualization.history_viewer._base_application import AbstractPage, logger
20
- from pyfemtet.opt.visualization.history_viewer._helper import has_full_bound
20
+ from pyfemtet.opt.visualization.history_viewer._helper import has_full_bound, control_visibility_by_style
21
21
  from pyfemtet._i18n import Msg, _
22
+ from pyfemtet._util.df_util import *
22
23
 
23
24
 
24
25
  __all__ = [
@@ -144,6 +145,22 @@ class PredictionModelGraph(AbstractPage):
144
145
  value=[],
145
146
  )
146
147
 
148
+ # consider sub sampling or not
149
+ self.SUB_SAMPLING_CHECKED = 'sub_sampling_checked'
150
+ self.switch_about_sub_sampling = dbc.Checklist(
151
+ options=[
152
+ dict(
153
+ label=_('Consider sub sampling when the model re-calc', 'モデル再計算時にサブサンプリングのみを考慮'),
154
+ value=self.SUB_SAMPLING_CHECKED, # チェックされたら value (list) の要素に "sub_sampling_checked" が入る
155
+ )
156
+ ],
157
+ switch=True,
158
+ value=[], # 初期状態ではチェックされている値なし
159
+ style=control_visibility_by_style(
160
+ visible=False, current_style={}
161
+ ),
162
+ )
163
+
147
164
  # alert region subpage
148
165
  self.alert_region: AlertRegion = AlertRegion()
149
166
  self.add_subpage(self.alert_region)
@@ -200,7 +217,10 @@ class PredictionModelGraph(AbstractPage):
200
217
  self.command_manager
201
218
  ],
202
219
  direction='horizontal', gap=2),
203
- self.switch_3d,
220
+ dbc.Row((
221
+ dbc.Col(self.switch_3d),
222
+ dbc.Col(self.switch_about_sub_sampling)
223
+ )),
204
224
  *dropdown_rows,
205
225
  self.slider_container,
206
226
  self.slider_stack_data,
@@ -276,9 +296,10 @@ class PredictionModelGraph(AbstractPage):
276
296
  Output(self.command_manager, self.command_manager_prop, allow_duplicate=True),
277
297
  Output(self.graph, 'figure', allow_duplicate=True), # for show spinner during calculation
278
298
  Input(self.command_manager, self.command_manager_prop),
299
+ State(self.switch_about_sub_sampling, 'value'),
279
300
  prevent_initial_call=True,
280
301
  )
281
- def recalculate_rsm(command):
302
+ def recalculate_rsm(command, is_sub_sampling):
282
303
  # just in case
283
304
  if callback_context.triggered_id is None:
284
305
  raise PreventUpdate
@@ -295,12 +316,29 @@ class PredictionModelGraph(AbstractPage):
295
316
  if len(self.application.get_df()) == 0:
296
317
  return self.CommandState.redraw.value, no_update # error handling in the next `redraw_graph()` callback
297
318
 
319
+ # switch the consideration of sub_sampling
320
+ df = self.application.get_df()
321
+ equality_filters = {'sub_sampling': float('nan')}
322
+
323
+ if self.SUB_SAMPLING_CHECKED in is_sub_sampling:
324
+ df = get_partial_df(
325
+ df,
326
+ equality_filters=equality_filters,
327
+ method='all-exclude', # nan 以外 = sampling のみ
328
+ )
329
+ else:
330
+ df = get_partial_df(
331
+ df,
332
+ equality_filters=equality_filters,
333
+ method='all', # nan のみ全て
334
+ )
335
+
298
336
  # create model
299
337
  model = SingleTaskGPModel()
300
338
  self.pyfemtet_model.update_model(model)
301
339
  self.pyfemtet_model.fit(
302
340
  self.application.history,
303
- self.application.get_df(),
341
+ df,
304
342
  **{}
305
343
  )
306
344
 
@@ -475,10 +513,12 @@ class PredictionModelGraph(AbstractPage):
475
513
  Output(self.axis3_obj_dropdown, 'children'),
476
514
  Output(self.slider_container, 'children'),
477
515
  Output(self.slider_stack_data, self.slider_stack_data_prop, allow_duplicate=True),
516
+ Output(self.switch_about_sub_sampling, 'style'),
478
517
  Input(self.location, self.location.Prop.pathname),
518
+ State(self.switch_about_sub_sampling, 'style'),
479
519
  prevent_initial_call=True,
480
520
  )
481
- def setup_dropdown_and_sliders(*_):
521
+ def setup_dropdown_and_sliders(_, current_style):
482
522
  # just in case
483
523
  if callback_context.triggered_id is None:
484
524
  raise PreventUpdate
@@ -578,7 +618,20 @@ class PredictionModelGraph(AbstractPage):
578
618
  )
579
619
  sliders.append(stack)
580
620
 
581
- return axis1_dropdown_items, axis2_dropdown_items, axis3_dropdown_items, sliders, slider_values
621
+ # ひとつでも sub sampling があれば visible=True
622
+ visible = (~df['sub_sampling'].isna()).any()
623
+ switch_style = control_visibility_by_style(
624
+ visible, current_style
625
+ )
626
+
627
+ return (
628
+ axis1_dropdown_items,
629
+ axis2_dropdown_items,
630
+ axis3_dropdown_items,
631
+ sliders,
632
+ slider_values,
633
+ switch_style,
634
+ )
582
635
 
583
636
  # ===== control dropdown and slider visibility =====
584
637
  @app.callback(
@@ -26,3 +26,16 @@ def has_full_bound(history: History, prm_name, df: pd.DataFrame = None) -> bool:
26
26
  return False
27
27
 
28
28
  return True
29
+
30
+
31
+ def control_visibility_by_style(visible: bool, current_style: dict):
32
+
33
+ visibility = 'inline' if visible else 'none'
34
+ part = {'display': visibility}
35
+
36
+ if current_style is None:
37
+ return part
38
+
39
+ else:
40
+ current_style.update(part)
41
+ return current_style
@@ -14,6 +14,7 @@ from pyfemtet.opt.visualization.history_viewer._base_application import *
14
14
  from pyfemtet.opt.visualization.history_viewer._complex_components.main_graph import *
15
15
  from pyfemtet.opt.visualization.history_viewer._complex_components.control_femtet import *
16
16
  from pyfemtet.opt.visualization.history_viewer._complex_components.alert_region import *
17
+ from pyfemtet.opt.visualization.history_viewer._helper import control_visibility_by_style
17
18
 
18
19
  from pyfemtet._i18n import Msg, _
19
20
 
@@ -752,13 +753,4 @@ class Tutorial(AbstractPage):
752
753
 
753
754
  @staticmethod
754
755
  def control_visibility_by_style(visible: bool, current_style: dict):
755
-
756
- visibility = 'inline' if visible else 'none'
757
- part = {'display': visibility}
758
-
759
- if current_style is None:
760
- return part
761
-
762
- else:
763
- current_style.update(part)
764
- return current_style
756
+ return control_visibility_by_style(visible, current_style)
@@ -6,6 +6,7 @@ from pyfemtet._util.df_util import *
6
6
  from pyfemtet.opt.history import *
7
7
  from pyfemtet.opt.prediction._model import *
8
8
  from pyfemtet.opt.prediction._helper import *
9
+ from pyfemtet.opt.problem.problem import MAIN_FIDELITY_NAME
9
10
 
10
11
 
11
12
  __all__ = [
@@ -217,6 +218,32 @@ def _plot(
217
218
  name='trial',
218
219
  ))
219
220
 
221
+ # sub sampling
222
+ buff = get_partial_df(
223
+ df,
224
+ {'sub_fidelity_name': MAIN_FIDELITY_NAME},
225
+ )
226
+ df_main_sub_sampling = get_partial_df(
227
+ buff,
228
+ {'sub_sampling': float('nan')},
229
+ method='all-exclude',
230
+ )
231
+ fig.add_trace(go.Scatter3d(
232
+ x=df_main_sub_sampling[prm_name1],
233
+ y=df_main_sub_sampling[prm_name2],
234
+ z=df_main_sub_sampling[obj_name],
235
+ mode='markers',
236
+ marker=dict(
237
+ size=3,
238
+ line=dict(
239
+ width=1,
240
+ color='gray',
241
+ ),
242
+ symbol='square-open'
243
+ ),
244
+ name='trial (sub sampling)',
245
+ ))
246
+
220
247
  # sub fidelity
221
248
  for (
222
249
  sub_fidelity_name,
@@ -228,7 +255,7 @@ def _plot(
228
255
  # px.colors.qualitative.G10[::-1]
229
256
  ):
230
257
 
231
- if sub_fidelity_name == MAIN_FILTER:
258
+ if sub_fidelity_name == MAIN_FIDELITY_NAME:
232
259
  continue
233
260
  df_sub = get_partial_df(df, equality_filters=dict(sub_fidelity_name=sub_fidelity_name))
234
261
 
@@ -239,7 +266,7 @@ def _plot(
239
266
  size=3,
240
267
  line=dict(
241
268
  width=1,
242
- color='white',
269
+ color='green',
243
270
  ),
244
271
  symbol='square-open', # TODO: sequence 化
245
272
  ),
@@ -34,7 +34,7 @@ dependencies = [
34
34
 
35
35
  #[project.optional-dependencies]
36
36
  #brep = ["brepmatching>=0.1.8,<0.2"]
37
- version = "1.1.0"
37
+ version = "1.1.1"
38
38
 
39
39
  [project.urls]
40
40
  Repository = "https://github.com/pyfemtet/pyfemtet"
File without changes
File without changes
File without changes
File without changes