pyfemtet 0.8.11__tar.gz → 0.8.12__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 (155) hide show
  1. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/PKG-INFO +1 -1
  2. pyfemtet-0.8.12/pyfemtet/__init__.py +1 -0
  3. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_femopt_core.py +1 -1
  4. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_base.py +1 -1
  5. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet.py +25 -2
  6. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyproject.toml +1 -1
  7. pyfemtet-0.8.11/pyfemtet/__init__.py +0 -1
  8. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/LICENSE +0 -0
  9. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/README.md +0 -0
  10. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_femtet_config_util/__init__.py +0 -0
  11. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_femtet_config_util/autosave.py +0 -0
  12. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_femtet_config_util/exit.py +0 -0
  13. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/1. make_pot.bat +0 -0
  14. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/2. make_mo.bat +0 -0
  15. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/__init__.py +0 -0
  16. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/babel.cfg +0 -0
  17. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/locales/ja/LC_MESSAGES/messages.mo +0 -0
  18. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/locales/ja/LC_MESSAGES/messages.po +0 -0
  19. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/locales/messages.pot +0 -0
  20. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_message/messages.py +0 -0
  21. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_util/__init__.py +0 -0
  22. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_util/dask_util.py +0 -0
  23. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_util/excel_macro_util.py +0 -0
  24. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_util/excel_parse_util.py +0 -0
  25. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_util/sample.xlsx +0 -0
  26. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/_warning.py +0 -0
  27. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/brep/__init__.py +0 -0
  28. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/brep/_impl.py +0 -0
  29. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/core.py +0 -0
  30. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/dispatch_extensions/__init__.py +0 -0
  31. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/dispatch_extensions/_impl.py +0 -0
  32. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/logger/__init__.py +0 -0
  33. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/logger/_impl.py +0 -0
  34. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/__init__.py +0 -0
  35. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_femopt.py +0 -0
  36. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_test_utils/__init__.py +0 -0
  37. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_test_utils/control_femtet.py +0 -0
  38. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_test_utils/hyper_sphere.py +0 -0
  39. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/_test_utils/record_history.py +0 -0
  40. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/excel_ui/(ref) original_project.femprj +0 -0
  41. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/excel_ui/femtet-macro.xlsm +0 -0
  42. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/excel_ui/pyfemtet-core.py +0 -0
  43. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/excel_ui/test-pyfemtet-core.cmd +0 -0
  44. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/restart/gal_ex13_parametric.femprj +0 -0
  45. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/restart/gal_ex13_parametric_restart.py +0 -0
  46. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/restart/gal_ex13_parametric_restart_jp.py +0 -0
  47. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_create_training_data.py +0 -0
  48. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_create_training_data_jp.py +0 -0
  49. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_optimize_with_surrogate.py +0 -0
  50. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_optimize_with_surrogate_jp.py +0 -0
  51. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_parametric.femprj +0 -0
  52. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/__init__.py +0 -0
  53. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_excel_interface.py +0 -0
  54. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_excel.py +0 -0
  55. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_parametric.py +0 -0
  56. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_with_nx/__init__.py +0 -0
  57. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_with_nx/_interface.py +0 -0
  58. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_with_nx/update_model.py +0 -0
  59. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_femtet_with_sldworks.py +0 -0
  60. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_surrogate/__init__.py +0 -0
  61. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_surrogate/_base.py +0 -0
  62. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_surrogate/_chaospy.py +0 -0
  63. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_surrogate/_singletaskgp.py +0 -0
  64. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/interface/_surrogate_excel.py +0 -0
  65. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/meta_script/YAML_Generator.xlsm +0 -0
  66. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/meta_script/__init__.py +0 -0
  67. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/meta_script/__main__.py +0 -0
  68. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/__init__.py +0 -0
  69. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_base.py +0 -0
  70. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_optuna/__init__.py +0 -0
  71. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_optuna/_botorch_patch/__init__.py +0 -0
  72. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_optuna/_botorch_patch/enable_nonlinear_constraint.py +0 -0
  73. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_optuna/_optuna.py +0 -0
  74. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_optuna/_pof_botorch.py +0 -0
  75. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_scipy.py +0 -0
  76. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/_scipy_scalar.py +0 -0
  77. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/optimizer/parameter.py +0 -0
  78. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/prediction/__init__.py +0 -0
  79. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/prediction/_base.py +0 -0
  80. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/prediction/single_task_gp.py +0 -0
  81. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/ParametricIF.femprj +0 -0
  82. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/ParametricIF.py +0 -0
  83. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/ParametricIF_test_result.reccsv +0 -0
  84. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.femprj +0 -0
  85. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.prt +0 -0
  86. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.py +0 -0
  87. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX_test_result.reccsv +0 -0
  88. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.SLDPRT +0 -0
  89. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.femprj +0 -0
  90. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.py +0 -0
  91. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW_test_result.reccsv +0 -0
  92. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/constrained_pipe.femprj +0 -0
  93. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/constrained_pipe.py +0 -0
  94. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/constrained_pipe_test_result.reccsv +0 -0
  95. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric.femprj +0 -0
  96. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric.py +0 -0
  97. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric_test_result.reccsv +0 -0
  98. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric.femprj +0 -0
  99. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric.py +0 -0
  100. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric_test_result.reccsv +0 -0
  101. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gau_ex12_parametric.femprj +0 -0
  102. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/gau_ex12_parametric.py +0 -0
  103. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric.femprj +0 -0
  104. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric.py +0 -0
  105. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric_test_result.reccsv +0 -0
  106. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.femprj +0 -0
  107. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.py +0 -0
  108. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric_parallel.py +0 -0
  109. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric_test_result.reccsv +0 -0
  110. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric.femprj +0 -0
  111. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric.py +0 -0
  112. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric_parallel.py +0 -0
  113. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric_test_result.reccsv +0 -0
  114. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/ParametricIF_jp.femprj +0 -0
  115. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/ParametricIF_jp.py +0 -0
  116. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_NX_jp.femprj +0 -0
  117. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_NX_jp.py +0 -0
  118. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_SW_jp.femprj +0 -0
  119. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_SW_jp.py +0 -0
  120. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/constrained_pipe_jp.py +0 -0
  121. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/gal_ex58_parametric_jp.femprj +0 -0
  122. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/gal_ex58_parametric_jp.py +0 -0
  123. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex08_parametric_jp.femprj +0 -0
  124. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex08_parametric_jp.py +0 -0
  125. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex12_parametric_jp.py +0 -0
  126. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/her_ex40_parametric_jp.femprj +0 -0
  127. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/her_ex40_parametric_jp.py +0 -0
  128. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_jp.femprj +0 -0
  129. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_jp.py +0 -0
  130. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_parallel_jp.py +0 -0
  131. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_jp.femprj +0 -0
  132. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_jp.py +0 -0
  133. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_parallel_jp.py +0 -0
  134. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/__init__.py +0 -0
  135. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_base.py +0 -0
  136. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/__init__.py +0 -0
  137. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/alert_region.py +0 -0
  138. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/control_femtet.py +0 -0
  139. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/main_figure_creator.py +0 -0
  140. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/main_graph.py +0 -0
  141. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/pm_graph.py +0 -0
  142. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_complex_components/pm_graph_creator.py +0 -0
  143. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_create_wrapped_components.py +0 -0
  144. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_process_monitor/__init__.py +0 -0
  145. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_process_monitor/application.py +0 -0
  146. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_process_monitor/pages.py +0 -0
  147. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_wrapped_components/__init__.py +0 -0
  148. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_wrapped_components/dbc.py +0 -0
  149. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_wrapped_components/dcc.py +0 -0
  150. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_wrapped_components/html.py +0 -0
  151. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/_wrapped_components/str_enum.py +0 -0
  152. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/result_viewer/.gitignore +0 -0
  153. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/result_viewer/__init__.py +0 -0
  154. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/result_viewer/application.py +0 -0
  155. {pyfemtet-0.8.11 → pyfemtet-0.8.12}/pyfemtet/opt/visualization/result_viewer/pages.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyfemtet
3
- Version: 0.8.11
3
+ Version: 0.8.12
4
4
  Summary: Design parameter optimization using Femtet.
5
5
  License: BSD-3-Clause
6
6
  Author: kazuma.naito
@@ -0,0 +1 @@
1
+ __version__ = "0.8.12"
@@ -817,7 +817,7 @@ class History:
817
817
  df = self.get_df()
818
818
  trial = df['trial'].values[-1]
819
819
  client = get_client() # always returns valid client
820
- client.run_on_scheduler(postprocess_func, trial, **postprocess_args)
820
+ client.run_on_scheduler(postprocess_func, *(trial, df), **postprocess_args)
821
821
 
822
822
  def _calc_non_domi(self, objectives, df):
823
823
 
@@ -84,7 +84,7 @@ class FEMInterface(ABC):
84
84
  """Preprocessing after launching a dask worker and before run optimization (if implemented in concrete class)."""
85
85
  pass
86
86
 
87
- def _postprocess_func(self, trial: int, *args, dask_scheduler=None, **kwargs):
87
+ def _postprocess_func(self, trial: int, df: pd.DataFrame, *args, dask_scheduler=None, **kwargs):
88
88
  pass
89
89
 
90
90
  def _create_postprocess_args(self):
@@ -8,6 +8,7 @@ import winreg
8
8
 
9
9
  import pandas as pd
10
10
  import psutil
11
+ import shutil
11
12
  from dask.distributed import get_worker
12
13
 
13
14
  # noinspection PyUnresolvedReferences
@@ -54,6 +55,9 @@ class FailedToPostProcess(Exception):
54
55
  pass
55
56
 
56
57
 
58
+
59
+
60
+
57
61
  class FemtetInterface(FEMInterface):
58
62
  """Control Femtet from optimizer.
59
63
 
@@ -73,7 +77,8 @@ class FemtetInterface(FEMInterface):
73
77
 
74
78
  save_pdt (str, optional):
75
79
  The type to save result file.
76
- Can specify 'all' or None. Default is 'all'.
80
+ Valid values are 'all', 'none' or 'optimal'.
81
+ Default is 'all'.
77
82
 
78
83
  strictly_pid_specify (bool, optional):
79
84
  Whether to strictly specify the PID in Femtet connection.
@@ -124,7 +129,7 @@ class FemtetInterface(FEMInterface):
124
129
  femprj_path: str = None,
125
130
  model_name: str = None,
126
131
  connect_method: str = 'auto', # dask worker では __init__ の中で 'new' にするので super() の引数にしない。(しても意味がない)
127
- save_pdt: str = 'all', # 'all' or None
132
+ save_pdt: str = 'all', # 'all', 'none' or 'optimal'
128
133
  strictly_pid_specify: bool = True, # dask worker では True にしたいので super() の引数にしない。
129
134
  allow_without_project: bool = False, # main でのみ True を許容したいので super() の引数にしない。
130
135
  open_result_with_gui: bool = True,
@@ -834,6 +839,7 @@ class FemtetInterface(FEMInterface):
834
839
  model_name=self.model_name,
835
840
  pdt_file_content=file_content,
836
841
  jpg_file_content=jpg_content,
842
+ save_results=self.save_pdt, # 'all', 'optimal' or 'none'
837
843
  )
838
844
  return out
839
845
 
@@ -847,12 +853,20 @@ class FemtetInterface(FEMInterface):
847
853
  @staticmethod
848
854
  def _postprocess_func(
849
855
  trial: int,
856
+ df: pd.DataFrame,
850
857
  original_femprj_path: str,
858
+ save_results: str,
851
859
  model_name: str,
852
860
  pdt_file_content=None,
853
861
  jpg_file_content=None,
854
862
  dask_scheduler=None
855
863
  ):
864
+
865
+ # none なら何もしない
866
+ if save_results.lower() == 'none':
867
+ return
868
+
869
+ # all or optimal ならいったん保存する
856
870
  result_dir = original_femprj_path.replace('.femprj', '.Results')
857
871
  if pdt_file_content is not None:
858
872
  pdt_path = FemtetInterface._create_pdt_path(original_femprj_path, model_name, trial)
@@ -864,6 +878,15 @@ class FemtetInterface(FEMInterface):
864
878
  with open(jpg_path, 'wb') as f:
865
879
  f.write(jpg_file_content)
866
880
 
881
+ # optimal なら不要ファイルの削除を実行する
882
+ if save_results.lower() == 'optimal':
883
+ for i, row in df.iterrows():
884
+ if not bool(row['non_domi']):
885
+ trial_to_remove = int(row['trial'])
886
+ pdt_path_to_remove = FemtetInterface._create_pdt_path(original_femprj_path, model_name, trial_to_remove)
887
+ if os.path.isfile(pdt_path_to_remove):
888
+ os.remove(pdt_path_to_remove)
889
+
867
890
  def _create_result_file_content(self):
868
891
  """Called after solve"""
869
892
  if self.save_pdt == 'all':
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pyfemtet"
3
- version = "0.8.11" # ignored by versioning plugin
3
+ version = "0.8.12" # ignored by versioning plugin
4
4
  description = "Design parameter optimization using Femtet."
5
5
  authors = ["kazuma.naito <kazuma.naito@murata.com>"]
6
6
  readme = "README.md"
@@ -1 +0,0 @@
1
- __version__ = "0.8.11"
File without changes
File without changes
File without changes