pyfemtet 1.1.2__tar.gz → 1.1.4__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.
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/PKG-INFO +6 -6
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/dask_util.py +2 -2
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/history/_history.py +16 -7
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_base_interface.py +17 -10
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_excel_interface/excel_interface.py +3 -3
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_interface/femtet_interface.py +3 -3
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/femtet_with_nx_interface.py +6 -6
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_solidworks/femtet_with_solidworks_interface.py +3 -3
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_solidworks_interface/solidworks_interface.py +6 -4
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_surrogate_model_interface/botorch_interface.py +8 -2
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_with_excel_settings/with_excel_settings.py +3 -3
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/worker_status.py +5 -2
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyproject.toml +2 -3
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/LICENSE +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/LICENSE_THIRD_PARTY.txt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/README.md +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/1. make_pot_and_update_po.bat +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/2. build_mo.bat +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/babel.cfg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/i18n.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/locales/ja/LC_MESSAGES/messages.mo +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/locales/ja/LC_MESSAGES/messages.po +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/locales/messages.pot +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_i18n/messages.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/closing.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/df_util.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/excel_macro_util.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/excel_parse_util.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/femtet_access_inspection.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/femtet_autosave.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/femtet_exit.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/femtet_version.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/helper.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/process_util.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/sample.xlsx +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/_util/str_enum.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/core.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/dispatch_extensions/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/dispatch_extensions/_impl.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/logger/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/logger/_impl.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/exceptions.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/femopt.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/history/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/history/_hypervolume.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/history/_optimality.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_dummy_classes.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_excel_interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_excel_interface/debug-excel-interface.xlsm +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_interface/_femtet_parametric.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.prt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.x_t +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/update_model.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_solidworks/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_solidworks_interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_surrogate_model_interface/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_surrogate_model_interface/base_surrogate_interface.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_surrogate_model_interface/debug-pof-botorch.reccsv +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_with_excel_settings/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/meta_script/YAML_Generator.xlsm +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/meta_script/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/meta_script/__main__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/meta_script/sample/sample.bas +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/meta_script/sample/sample.femprj +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/_base_optimizer.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/_trial_queue.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_attribute.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_optimizer.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/debug-pof-botorch.reccsv +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/enable_nonlinear_constraint.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/pof_botorch_sampler.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/wat_ex14_parametric_jp.femprj +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/scipy_optimizer/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/scipy_optimizer/_scipy_optimizer.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/prediction/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/prediction/_botorch_utils.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/prediction/_gpytorch_modules_extension.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/prediction/_helper.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/prediction/_model.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/problem.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/variable_manager/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/variable_manager/_string_as_expression.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/variable_manager/_variable_manager.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/_create_wrapped_components.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/__main__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_base_application.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_common_pages.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/alert_region.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/control_femtet.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/detail_graphs.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/main_graph.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_complex_components/pm_graph.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_detail_page.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_helper.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_process_monitor/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_process_monitor/_application.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_process_monitor/_pages.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/dbc.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/dcc.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/html.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_wrapped_components/str_enum.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/.gitignore +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/__main__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/_application.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/_pages.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08.csv +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08.db +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.log +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_1.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_1.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_10.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_10.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_11.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_11.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_12.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_12.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_13.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_13.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_14.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_14.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_15.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_15.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_16.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_16.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_17.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_17.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_18.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_18.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_19.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_19.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_2.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_2.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_20.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_20.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_3.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_3.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.bgr +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.bnd +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.btr +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.mtl +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_4.prm +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_5.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_5.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_6.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_6.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_7.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_7.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_8.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_8.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_9.jpg +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.Results/ex8_trial_9.pdt +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/tutorial_files/tutorial_gau_ex08_parametric.femprj +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/__init__.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/contour_creator.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/main_figure_creator.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/parallel_plot_creator.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/pm_graph_creator.py +0 -0
- {pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/wat_ex14_parametric_jp.femprj +0 -0
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: pyfemtet
|
|
3
|
-
Version: 1.1.
|
|
3
|
+
Version: 1.1.4
|
|
4
4
|
Summary: Design parameter optimization using Femtet.
|
|
5
|
-
License: MIT
|
|
5
|
+
License-Expression: MIT
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
License-File: LICENSE_THIRD_PARTY.txt
|
|
6
8
|
Author: pyfemtet
|
|
7
9
|
Author-email: 148934231+pyfemtet@users.noreply.github.com
|
|
8
10
|
Requires-Python: >= 3.10, < 3.14
|
|
9
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
10
11
|
Classifier: Programming Language :: Python :: 3
|
|
11
12
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
13
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -29,8 +30,7 @@ Requires-Dist: optuna-integration (>=3.6.0,<5.0.0)
|
|
|
29
30
|
Requires-Dist: pandas (>=2.2.3,<3)
|
|
30
31
|
Requires-Dist: plotly (>=5.22.0,<6)
|
|
31
32
|
Requires-Dist: psutil (>=5.9.6,<6)
|
|
32
|
-
Requires-Dist: pywin32 (
|
|
33
|
-
Requires-Dist: pywin32 (>=309) ; sys_platform == "win32" and python_version >= "3.13"
|
|
33
|
+
Requires-Dist: pywin32 (>=310) ; sys_platform == "win32"
|
|
34
34
|
Requires-Dist: pyyaml (>=6.0.2,<7)
|
|
35
35
|
Requires-Dist: scipy (>=1.11.4,<2)
|
|
36
36
|
Requires-Dist: torch
|
|
@@ -136,9 +136,11 @@ class DataFrameWrapper:
|
|
|
136
136
|
__df: pd.DataFrame
|
|
137
137
|
_lock_name = 'edit-df'
|
|
138
138
|
_dataset_name: str
|
|
139
|
+
_scheduler_address: str
|
|
139
140
|
|
|
140
141
|
def __init__(self, df: pd.DataFrame):
|
|
141
142
|
self._dataset_name = 'df-' + generate_random_id()
|
|
143
|
+
self._scheduler_address = None
|
|
142
144
|
self.set_df(df)
|
|
143
145
|
|
|
144
146
|
def __len__(self):
|
|
@@ -173,7 +175,7 @@ class DataFrameWrapper:
|
|
|
173
175
|
|
|
174
176
|
"""
|
|
175
177
|
|
|
176
|
-
client = get_client()
|
|
178
|
+
client = get_client(self._scheduler_address)
|
|
177
179
|
|
|
178
180
|
# dask クラスターがある場合
|
|
179
181
|
if client is not None:
|
|
@@ -185,6 +187,8 @@ class DataFrameWrapper:
|
|
|
185
187
|
# 健在の場合
|
|
186
188
|
else:
|
|
187
189
|
|
|
190
|
+
self._scheduler_address = client.scheduler.address
|
|
191
|
+
|
|
188
192
|
df = None
|
|
189
193
|
|
|
190
194
|
with Lock('access_dataset_df'):
|
|
@@ -192,9 +196,11 @@ class DataFrameWrapper:
|
|
|
192
196
|
if self._dataset_name in client.list_datasets():
|
|
193
197
|
df = client.get_dataset(self._dataset_name)
|
|
194
198
|
|
|
195
|
-
#
|
|
199
|
+
# 存在しない場合は publish する
|
|
196
200
|
else:
|
|
197
|
-
|
|
201
|
+
df = self.__df
|
|
202
|
+
client.publish_dataset(**{self._dataset_name: df})
|
|
203
|
+
sleep(0.1)
|
|
198
204
|
|
|
199
205
|
assert df is not None
|
|
200
206
|
|
|
@@ -235,10 +241,13 @@ class DataFrameWrapper:
|
|
|
235
241
|
apply_partial_df(df, partial_df, equality_filters)
|
|
236
242
|
|
|
237
243
|
# dask クラスター上のデータを更新
|
|
238
|
-
client = get_client()
|
|
244
|
+
client = get_client(self._scheduler_address)
|
|
239
245
|
if client is not None:
|
|
240
246
|
if client.scheduler is not None:
|
|
241
|
-
|
|
247
|
+
|
|
248
|
+
self._scheduler_address = client.scheduler.address
|
|
249
|
+
|
|
250
|
+
with Lock('access_dataset_df', client):
|
|
242
251
|
|
|
243
252
|
# datasets 上に存在する場合は削除(上書きができない)
|
|
244
253
|
if self._dataset_name in client.list_datasets():
|
|
@@ -1347,7 +1356,7 @@ class History:
|
|
|
1347
1356
|
@staticmethod
|
|
1348
1357
|
def postprocess_after_recording(row):
|
|
1349
1358
|
|
|
1350
|
-
client = get_client()
|
|
1359
|
+
client = get_client(self._records.df_wrapper._scheduler_address)
|
|
1351
1360
|
|
|
1352
1361
|
trial_name = self.get_trial_name(row=row)
|
|
1353
1362
|
|
|
@@ -1405,7 +1414,7 @@ class History:
|
|
|
1405
1414
|
self_.postprocess_after_recording(row)
|
|
1406
1415
|
|
|
1407
1416
|
# save history if no FEMOpt
|
|
1408
|
-
client = get_client()
|
|
1417
|
+
client = get_client(self._records.df_wrapper._scheduler_address)
|
|
1409
1418
|
if client is None:
|
|
1410
1419
|
self.save()
|
|
1411
1420
|
|
|
@@ -41,6 +41,7 @@ class AbstractFEMInterface:
|
|
|
41
41
|
_load_problem_from_fem: bool = False
|
|
42
42
|
current_prm_values: TrialInput
|
|
43
43
|
_tmp_dir: tempfile.TemporaryDirectory
|
|
44
|
+
_file_suffix: str
|
|
44
45
|
|
|
45
46
|
# ===== update =====
|
|
46
47
|
|
|
@@ -70,13 +71,19 @@ class AbstractFEMInterface:
|
|
|
70
71
|
|
|
71
72
|
# ===== dask util =====
|
|
72
73
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
74
|
+
def _get_file_suffix(self, opt: AbstractOptimizer | None) -> str:
|
|
75
|
+
|
|
76
|
+
file_suffix = 'copy'
|
|
77
|
+
|
|
78
|
+
if opt is not None:
|
|
79
|
+
if opt._worker_index is not None:
|
|
80
|
+
file_suffix = file_suffix + f'_{opt._worker_index}'
|
|
81
|
+
|
|
82
|
+
if hasattr(self, '_file_suffix'):
|
|
83
|
+
if self._file_suffix is not None:
|
|
84
|
+
file_suffix = file_suffix + f'_{self._file_suffix}'
|
|
85
|
+
|
|
86
|
+
return file_suffix
|
|
80
87
|
|
|
81
88
|
def _rename_and_get_path_on_worker_space(self, orig_path, suffix, ignore_no_exist=False) -> str:
|
|
82
89
|
# 与えられた path と同名のファイルを
|
|
@@ -106,13 +113,13 @@ class AbstractFEMInterface:
|
|
|
106
113
|
else:
|
|
107
114
|
return worker.local_directory
|
|
108
115
|
|
|
109
|
-
def _distribute_files(self, paths: list[str]) -> None:
|
|
116
|
+
def _distribute_files(self, paths: list[str], scheduler_address=None) -> None:
|
|
110
117
|
|
|
111
118
|
# executor 向け
|
|
112
119
|
self._copy_to_temp_space(paths)
|
|
113
120
|
|
|
114
121
|
# dask worker 向け
|
|
115
|
-
client = get_client()
|
|
122
|
+
client = get_client(scheduler_address)
|
|
116
123
|
if client is not None:
|
|
117
124
|
for path in paths:
|
|
118
125
|
if not os.path.exists(path):
|
|
@@ -147,7 +154,7 @@ class AbstractFEMInterface:
|
|
|
147
154
|
|
|
148
155
|
# ===== setup =====
|
|
149
156
|
|
|
150
|
-
def _setup_before_parallel(self) -> None:
|
|
157
|
+
def _setup_before_parallel(self, scheduler_address=None) -> None:
|
|
151
158
|
pass
|
|
152
159
|
|
|
153
160
|
def _setup_after_parallel(self, opt: AbstractOptimizer) -> None:
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_excel_interface/excel_interface.py
RENAMED
|
@@ -322,7 +322,7 @@ class ExcelInterface(COMInterface):
|
|
|
322
322
|
return self.excel
|
|
323
323
|
|
|
324
324
|
# ===== setup =====
|
|
325
|
-
def _setup_before_parallel(self) -> None:
|
|
325
|
+
def _setup_before_parallel(self, scheduler_address=None) -> None:
|
|
326
326
|
# メインプロセスで、並列プロセスを開始する前に行う前処理
|
|
327
327
|
|
|
328
328
|
related_files = [self._original_input_xlsm_path]
|
|
@@ -345,7 +345,7 @@ class ExcelInterface(COMInterface):
|
|
|
345
345
|
related_files.extend(self._original_related_file_paths)
|
|
346
346
|
|
|
347
347
|
# dask worker 向け
|
|
348
|
-
self._distribute_files(related_files)
|
|
348
|
+
self._distribute_files(related_files, scheduler_address)
|
|
349
349
|
|
|
350
350
|
def _re_register_paths(self, suffix):
|
|
351
351
|
# self.hoge_path を dask worker space のファイルに変える
|
|
@@ -381,7 +381,7 @@ class ExcelInterface(COMInterface):
|
|
|
381
381
|
CoInitialize()
|
|
382
382
|
|
|
383
383
|
# 元のファイルを保護するため space のファイルを使用
|
|
384
|
-
suffix = self.
|
|
384
|
+
suffix = self._get_file_suffix(opt)
|
|
385
385
|
self._re_register_paths(suffix)
|
|
386
386
|
|
|
387
387
|
# excel に繋ぐ
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_interface/femtet_interface.py
RENAMED
|
@@ -199,8 +199,8 @@ class FemtetInterface(COMInterface):
|
|
|
199
199
|
"""
|
|
200
200
|
return self.Femtet
|
|
201
201
|
|
|
202
|
-
def _setup_before_parallel(self):
|
|
203
|
-
self._distribute_files([self.femprj_path])
|
|
202
|
+
def _setup_before_parallel(self, scheduler_address=None):
|
|
203
|
+
self._distribute_files([self.femprj_path], scheduler_address)
|
|
204
204
|
|
|
205
205
|
def _setup_after_parallel(self, opt: AbstractOptimizer = None):
|
|
206
206
|
|
|
@@ -211,7 +211,7 @@ class FemtetInterface(COMInterface):
|
|
|
211
211
|
|
|
212
212
|
# worker space の femprj に切り替える
|
|
213
213
|
else:
|
|
214
|
-
suffix = self.
|
|
214
|
+
suffix = self._get_file_suffix(opt)
|
|
215
215
|
self.femprj_path = self._rename_and_get_path_on_worker_space(self._original_femprj_path, suffix)
|
|
216
216
|
|
|
217
217
|
# dask process ならば Femtet を起動
|
|
@@ -58,12 +58,12 @@ class _NXInterface(AbstractFEMInterface):
|
|
|
58
58
|
self.export_solids = export_solids
|
|
59
59
|
self.export_flattened_assembly = export_flattened_assembly
|
|
60
60
|
|
|
61
|
-
def _setup_before_parallel(self) -> None:
|
|
62
|
-
self._distribute_files([self.prt_path])
|
|
61
|
+
def _setup_before_parallel(self, scheduler_address=None) -> None:
|
|
62
|
+
self._distribute_files([self.prt_path], scheduler_address)
|
|
63
63
|
|
|
64
64
|
def _setup_after_parallel(self, opt: AbstractOptimizer = None) -> None:
|
|
65
65
|
# get suffix
|
|
66
|
-
suffix = self.
|
|
66
|
+
suffix = self._get_file_suffix(opt)
|
|
67
67
|
|
|
68
68
|
# rename and get worker path
|
|
69
69
|
self.prt_path = self._rename_and_get_path_on_worker_space(
|
|
@@ -189,9 +189,9 @@ class FemtetWithNXInterface(FemtetInterface, _NXInterface):
|
|
|
189
189
|
export_flattened_assembly=export_flattened_assembly,
|
|
190
190
|
)
|
|
191
191
|
|
|
192
|
-
def _setup_before_parallel(self):
|
|
193
|
-
FemtetInterface._setup_before_parallel(self)
|
|
194
|
-
_NXInterface._setup_before_parallel(self)
|
|
192
|
+
def _setup_before_parallel(self, scheduler_address=None):
|
|
193
|
+
FemtetInterface._setup_before_parallel(self, scheduler_address)
|
|
194
|
+
_NXInterface._setup_before_parallel(self, scheduler_address)
|
|
195
195
|
|
|
196
196
|
def _setup_after_parallel(self, opt: AbstractOptimizer = None):
|
|
197
197
|
FemtetInterface._setup_after_parallel(self, opt)
|
|
@@ -81,9 +81,9 @@ class FemtetWithSolidworksInterface(FemtetInterface, SolidworksInterface, Abstra
|
|
|
81
81
|
def _check_param_and_raise(self, param_name) -> None:
|
|
82
82
|
pass
|
|
83
83
|
|
|
84
|
-
def _setup_before_parallel(self):
|
|
85
|
-
SolidworksInterface._setup_before_parallel(self)
|
|
86
|
-
FemtetInterface._setup_before_parallel(self)
|
|
84
|
+
def _setup_before_parallel(self, scheduler_address=None):
|
|
85
|
+
SolidworksInterface._setup_before_parallel(self, scheduler_address)
|
|
86
|
+
FemtetInterface._setup_before_parallel(self, scheduler_address)
|
|
87
87
|
|
|
88
88
|
def _setup_after_parallel(self, opt: AbstractOptimizer = None):
|
|
89
89
|
SolidworksInterface._setup_after_parallel(self, opt)
|
|
@@ -96,13 +96,13 @@ class SolidworksInterface(COMInterface):
|
|
|
96
96
|
'Solidworks マクロが有効であることを確認してください。'))
|
|
97
97
|
self.swApp.Visible = self.solidworks_visible
|
|
98
98
|
|
|
99
|
-
def _setup_before_parallel(self):
|
|
100
|
-
self._distribute_files([self.sldprt_path])
|
|
99
|
+
def _setup_before_parallel(self, scheduler_address=None):
|
|
100
|
+
self._distribute_files([self.sldprt_path], scheduler_address)
|
|
101
101
|
|
|
102
102
|
def _setup_after_parallel(self, opt: AbstractOptimizer = None):
|
|
103
103
|
|
|
104
104
|
# get suffix
|
|
105
|
-
suffix = self.
|
|
105
|
+
suffix = self._get_file_suffix(opt)
|
|
106
106
|
|
|
107
107
|
# rename and get worker path
|
|
108
108
|
self.sldprt_path = self._rename_and_get_path_on_worker_space(
|
|
@@ -154,7 +154,9 @@ class SolidworksInterface(COMInterface):
|
|
|
154
154
|
prm_name = _get_name_from_equation(eq)
|
|
155
155
|
# 対象なら処理
|
|
156
156
|
if prm_name in self.current_prm_values:
|
|
157
|
-
|
|
157
|
+
prm = self.current_prm_values[prm_name]
|
|
158
|
+
right = str(prm.value) + prm.properties.get('unit', '')
|
|
159
|
+
new_equation = f'"{prm_name}" = {right}'
|
|
158
160
|
swEqnMgr.Equation(i, new_equation)
|
|
159
161
|
|
|
160
162
|
# 式の計算
|
|
@@ -26,6 +26,8 @@ __all__ = [
|
|
|
26
26
|
|
|
27
27
|
class BoTorchInterface(AbstractSurrogateModelInterfaceBase):
|
|
28
28
|
|
|
29
|
+
current_obj_std_values: dict[str, float]
|
|
30
|
+
|
|
29
31
|
def __init__(
|
|
30
32
|
self,
|
|
31
33
|
history_path: str = None,
|
|
@@ -45,6 +47,7 @@ class BoTorchInterface(AbstractSurrogateModelInterfaceBase):
|
|
|
45
47
|
|
|
46
48
|
self.model = SingleTaskGPModel()
|
|
47
49
|
self.pyfemtet_model = PyFemtetModel()
|
|
50
|
+
self.current_obj_std_values = {}
|
|
48
51
|
|
|
49
52
|
# get main only
|
|
50
53
|
df = self.train_history.get_df(MAIN_FILTER)
|
|
@@ -64,11 +67,13 @@ class BoTorchInterface(AbstractSurrogateModelInterfaceBase):
|
|
|
64
67
|
# update current objective values
|
|
65
68
|
x = np.array([[variable.value for variable in self.current_prm_values.values()]])
|
|
66
69
|
|
|
67
|
-
y,
|
|
70
|
+
y, s = self.pyfemtet_model.predict(x)
|
|
68
71
|
y = y[0]
|
|
72
|
+
s = s[0]
|
|
69
73
|
|
|
70
|
-
for obj_name, obj_value in zip(self.train_history.obj_names, y):
|
|
74
|
+
for obj_name, obj_value, obj_std in zip(self.train_history.obj_names, y, s):
|
|
71
75
|
self.current_obj_values.update({obj_name: obj_value})
|
|
76
|
+
self.current_obj_std_values.update({obj_name: obj_std})
|
|
72
77
|
|
|
73
78
|
|
|
74
79
|
class PoFBoTorchInterface(BoTorchInterface, AbstractSurrogateModelInterfaceBase):
|
|
@@ -103,6 +108,7 @@ class PoFBoTorchInterface(BoTorchInterface, AbstractSurrogateModelInterfaceBase)
|
|
|
103
108
|
self.train_history_c.load_csv(history_path, with_finalize=True)
|
|
104
109
|
self.pof_threshold = 0.5
|
|
105
110
|
self.feasibility_cdf_threshold = feasibility_cdf_threshold
|
|
111
|
+
self.current_obj_std_values = {}
|
|
106
112
|
|
|
107
113
|
# use feasibility as a single objective
|
|
108
114
|
self.train_history_c.obj_names = ['feasibility']
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_with_excel_settings/with_excel_settings.py
RENAMED
|
@@ -60,10 +60,10 @@ def _class_factory(FEMClass: type[AbstractFEMInterface]) -> type[AbstractFEMInte
|
|
|
60
60
|
self._excel_initialized = True
|
|
61
61
|
self._load_problem_from_fem = True
|
|
62
62
|
|
|
63
|
-
def _setup_before_parallel(self):
|
|
63
|
+
def _setup_before_parallel(self, scheduler_address=None):
|
|
64
64
|
assert self._excel_initialized, '最初に init_excel() を呼び出してください。'
|
|
65
|
-
ExcelInterface._setup_before_parallel(self)
|
|
66
|
-
FEMClass._setup_before_parallel(self)
|
|
65
|
+
ExcelInterface._setup_before_parallel(self, scheduler_address)
|
|
66
|
+
FEMClass._setup_before_parallel(self, scheduler_address)
|
|
67
67
|
|
|
68
68
|
def _setup_after_parallel(self, opt: AbstractOptimizer):
|
|
69
69
|
assert self._excel_initialized, '最初に init_excel() を呼び出してください。'
|
|
@@ -71,6 +71,7 @@ class WorkerStatus:
|
|
|
71
71
|
terminated = worker_status_from_float(float('inf'))
|
|
72
72
|
|
|
73
73
|
def __init__(self, dataset_name: str):
|
|
74
|
+
self._scheduler_address = None
|
|
74
75
|
self._dataset_name = dataset_name
|
|
75
76
|
self.__value: _WorkerStatus
|
|
76
77
|
self.value = WorkerStatus.undefined
|
|
@@ -80,9 +81,10 @@ class WorkerStatus:
|
|
|
80
81
|
|
|
81
82
|
out = None
|
|
82
83
|
|
|
83
|
-
client = get_client()
|
|
84
|
+
client = get_client(self._scheduler_address)
|
|
84
85
|
if client is not None:
|
|
85
86
|
if client.scheduler is not None:
|
|
87
|
+
self._scheduler_address = client.scheduler.address
|
|
86
88
|
key = self._dataset_name
|
|
87
89
|
value: float | None = client.get_metadata(key, default=None)
|
|
88
90
|
|
|
@@ -111,9 +113,10 @@ class WorkerStatus:
|
|
|
111
113
|
|
|
112
114
|
@value.setter
|
|
113
115
|
def value(self, value: _WorkerStatus):
|
|
114
|
-
client = get_client()
|
|
116
|
+
client = get_client(self._scheduler_address)
|
|
115
117
|
if client is not None:
|
|
116
118
|
if client.scheduler is not None:
|
|
119
|
+
self._scheduler_address = client.scheduler.address
|
|
117
120
|
key = self._dataset_name
|
|
118
121
|
client.set_metadata(key, value)
|
|
119
122
|
# sleep(0.1)
|
|
@@ -11,8 +11,7 @@ dependencies = [
|
|
|
11
11
|
"tqdm>=4.66.1,<5",
|
|
12
12
|
"colorlog>=6.8.0,<7",
|
|
13
13
|
"psutil>=5.9.6,<6",
|
|
14
|
-
"pywin32
|
|
15
|
-
"pywin32>=309 ; sys_platform == 'win32' and python_version >= '3.13'",
|
|
14
|
+
"pywin32>=310; sys_platform == 'win32'",
|
|
16
15
|
"femtetutils>=1.0.0,<2 ; sys_platform=='win32'",
|
|
17
16
|
"dask~=2024.12.1",
|
|
18
17
|
"distributed~=2024.12.1",
|
|
@@ -34,7 +33,7 @@ dependencies = [
|
|
|
34
33
|
|
|
35
34
|
#[project.optional-dependencies]
|
|
36
35
|
#brep = ["brepmatching>=0.1.8,<0.2"]
|
|
37
|
-
version = "1.1.
|
|
36
|
+
version = "1.1.4"
|
|
38
37
|
|
|
39
38
|
[project.urls]
|
|
40
39
|
Repository = "https://github.com/pyfemtet/pyfemtet"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_excel_interface/debug-excel-interface.xlsm
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_interface/_femtet_parametric.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/__init__.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.prt
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/model1.x_t
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_nx_interface/update_model.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_femtet_with_solidworks/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/interface/_surrogate_model_interface/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_attribute.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_optuna_optimizer.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/optuna_optimizer/_pof_botorch/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/optimizer/scipy_optimizer/_scipy_optimizer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/variable_manager/_string_as_expression.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/problem/variable_manager/_variable_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_base_application.py
RENAMED
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/_common_pages.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/.gitignore
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/history_viewer/result_viewer/_pages.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-1.1.2 → pyfemtet-1.1.4}/pyfemtet/opt/visualization/plotter/parallel_plot_creator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|