pyfemtet 0.8.1__tar.gz → 0.8.3__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-0.8.1 → pyfemtet-0.8.3}/PKG-INFO +5 -5
- pyfemtet-0.8.3/pyfemtet/__init__.py +1 -0
- pyfemtet-0.8.3/pyfemtet/_imports.py +108 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_femopt.py +6 -5
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_femopt_core.py +10 -3
- pyfemtet-0.8.3/pyfemtet/opt/interface/__init__.py +30 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_excel_interface.py +10 -7
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet.py +1 -1
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet_with_nx/_interface.py +1 -1
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet_with_sldworks.py +1 -1
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyproject.toml +13 -4
- pyfemtet-0.8.1/pyfemtet/__init__.py +0 -1
- pyfemtet-0.8.1/pyfemtet/opt/interface/__init__.py +0 -16
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/LICENSE +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/README.md +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_femtet_config_util/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_femtet_config_util/autosave.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_femtet_config_util/exit.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/1. make_pot.bat +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/2. make_mo.bat +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/babel.cfg +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/locales/ja/LC_MESSAGES/messages.mo +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/locales/ja/LC_MESSAGES/messages.po +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/locales/messages.pot +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_message/messages.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_util/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_util/dask_util.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_util/excel_macro_util.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_util/excel_parse_util.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_util/sample.xlsx +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/_warning.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/brep/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/brep/_impl.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/core.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/dispatch_extensions/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/dispatch_extensions/_impl.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/logger/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/logger/_impl.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_test_utils/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_test_utils/control_femtet.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_test_utils/hyper_sphere.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/_test_utils/record_history.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/excel_ui/(ref) original_project.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/excel_ui/femtet-macro.xlsm +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/excel_ui/pyfemtet-core.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/excel_ui/test-pyfemtet-core.cmd +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_create_training_data.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_create_training_data_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_optimize_with_surrogate.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_optimize_with_surrogate_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/surrogate_model/gal_ex13_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_base.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet_with_nx/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_femtet_with_nx/update_model.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_surrogate/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_surrogate/_base.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_surrogate/_chaospy.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/interface/_surrogate/_singletaskgp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_base.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_optuna/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_optuna/_botorch_patch/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_optuna/_botorch_patch/enable_nonlinear_constraint.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_optuna/_optuna.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_optuna/_pof_botorch.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_scipy.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/_scipy_scalar.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/optimizer/parameter.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/prediction/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/prediction/_base.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/prediction/single_task_gp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/ParametricIF.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/ParametricIF.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/ParametricIF_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.prt +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.SLDPRT +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/constrained_pipe.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/constrained_pipe.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/constrained_pipe_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric_parallel.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric_parallel.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric_test_result.reccsv +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/ParametricIF_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/ParametricIF_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_NX_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_NX_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_SW_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_SW_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/constrained_pipe_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gal_ex58_parametric_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gal_ex58_parametric_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex08_parametric_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex08_parametric_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/her_ex40_parametric_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/her_ex40_parametric_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_parallel_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_jp.femprj +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_parallel_jp.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_base.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/alert_region.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/control_femtet.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/main_figure_creator.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/main_graph.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/pm_graph.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/pm_graph_creator.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_create_wrapped_components.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_process_monitor/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_process_monitor/application.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_process_monitor/pages.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/dbc.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/dcc.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/html.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/str_enum.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/result_viewer/.gitignore +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/result_viewer/__init__.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/result_viewer/application.py +0 -0
- {pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/result_viewer/pages.py +0 -0
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pyfemtet
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.3
|
|
4
4
|
Summary: Design parameter optimization using Femtet.
|
|
5
|
-
Home-page: https://github.com/pyfemtet/pyfemtet
|
|
6
5
|
License: BSD-3-Clause
|
|
7
6
|
Author: kazuma.naito
|
|
8
7
|
Author-email: kazuma.naito@murata.com
|
|
@@ -21,7 +20,7 @@ Requires-Dist: dash (>=2.17.0,<3.0.0)
|
|
|
21
20
|
Requires-Dist: dash-bootstrap-components (>=1.5.0,<2.0.0)
|
|
22
21
|
Requires-Dist: dask (>=2023.12.1,<2024.0.0)
|
|
23
22
|
Requires-Dist: distributed (>=2023.12.1,<2024.0.0)
|
|
24
|
-
Requires-Dist: femtetutils (>=1.0.0,<2.0.0)
|
|
23
|
+
Requires-Dist: femtetutils (>=1.0.0,<2.0.0) ; sys_platform == "win32"
|
|
25
24
|
Requires-Dist: fire (>=0.6.0,<0.7.0)
|
|
26
25
|
Requires-Dist: numpy (>=2.0.0,<3.0.0)
|
|
27
26
|
Requires-Dist: openpyxl (>=3.1.2,<4.0.0)
|
|
@@ -30,9 +29,10 @@ Requires-Dist: optuna-integration (>=3.6.0,<5.0.0)
|
|
|
30
29
|
Requires-Dist: pandas (>=2.2.3,<3.0.0)
|
|
31
30
|
Requires-Dist: plotly (>=5.22.0,<6.0.0)
|
|
32
31
|
Requires-Dist: psutil (>=5.9.6,<6.0.0)
|
|
33
|
-
Requires-Dist: pywin32 (>=306,<307)
|
|
32
|
+
Requires-Dist: pywin32 (>=306,<307) ; sys_platform == "win32"
|
|
34
33
|
Requires-Dist: scipy (>=1.11.4,<2.0.0)
|
|
35
|
-
Requires-Dist: torch (>=2.5.1,<2.6.0)
|
|
34
|
+
Requires-Dist: torch (>=2.5.1,<2.6.0) ; sys_platform != "linux"
|
|
35
|
+
Requires-Dist: torch (>=2.5.1,<2.6.0) ; sys_platform == "linux"
|
|
36
36
|
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
|
|
37
37
|
Project-URL: Repository, https://github.com/pyfemtet/pyfemtet
|
|
38
38
|
Description-Content-Type: text/markdown
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.8.3"
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import types
|
|
2
|
+
import importlib
|
|
3
|
+
from typing import TYPE_CHECKING, Any
|
|
4
|
+
from abc import ABCMeta
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
__all__ = [
|
|
8
|
+
'isinstance_wrapper',
|
|
9
|
+
'_LazyImport',
|
|
10
|
+
'_lazy_class_factory',
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class _MetaClass(ABCMeta):
|
|
15
|
+
__original_cls__: type
|
|
16
|
+
|
|
17
|
+
def __repr__(self):
|
|
18
|
+
if hasattr(self, '__original_cls__'):
|
|
19
|
+
return f'<LazyClass of {self.__original_cls__()}>'
|
|
20
|
+
else:
|
|
21
|
+
return f'<LazyClass of <unloaded class>>'
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def _lazy_class_factory(module, cls_name):
|
|
25
|
+
class LazyClass(object, metaclass=_MetaClass):
|
|
26
|
+
# 継承を正しくコピーできていないので
|
|
27
|
+
# issubclass を使う際は注意
|
|
28
|
+
def __new__(cls, *args, **kwargs):
|
|
29
|
+
OriginalClass = cls.__original_cls__()
|
|
30
|
+
self = OriginalClass(*args, **kwargs)
|
|
31
|
+
return self
|
|
32
|
+
|
|
33
|
+
@staticmethod
|
|
34
|
+
def __original_cls__():
|
|
35
|
+
return getattr(module, cls_name)
|
|
36
|
+
|
|
37
|
+
return LazyClass
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class _LazyImport(types.ModuleType):
|
|
41
|
+
"""Module wrapper for lazy import.
|
|
42
|
+
|
|
43
|
+
Note:
|
|
44
|
+
This module is totally derived from `optuna._imports._LazyImport`.
|
|
45
|
+
The following author has the copyright of this code.
|
|
46
|
+
|
|
47
|
+
*******************************************
|
|
48
|
+
Copyright (c) 2018 Preferred Networks, Inc.
|
|
49
|
+
*******************************************
|
|
50
|
+
|
|
51
|
+
This class wraps the specified modules and lazily imports them only when accessed.
|
|
52
|
+
Otherwise, `import optuna` is slowed down by importing all submodules and
|
|
53
|
+
dependencies even if not required.
|
|
54
|
+
Within this project's usage, importlib override this module's attribute on the first
|
|
55
|
+
access and the imported submodule is directly accessed from the second access.
|
|
56
|
+
|
|
57
|
+
Args:
|
|
58
|
+
name: Name of module to apply lazy import.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
def __init__(self, name: str) -> None:
|
|
62
|
+
super().__init__(name)
|
|
63
|
+
self._name = name
|
|
64
|
+
|
|
65
|
+
def _load(self) -> types.ModuleType:
|
|
66
|
+
module = importlib.import_module(self._name)
|
|
67
|
+
self.__dict__.update(module.__dict__)
|
|
68
|
+
return module
|
|
69
|
+
|
|
70
|
+
def __getattr__(self, item: str) -> Any:
|
|
71
|
+
return getattr(self._load(), item)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
def isinstance_wrapper(obj: object, cls: type) -> bool:
|
|
75
|
+
if isinstance(cls, _MetaClass):
|
|
76
|
+
try:
|
|
77
|
+
cls_ = cls.__original_cls__()
|
|
78
|
+
except ModuleNotFoundError:
|
|
79
|
+
return False
|
|
80
|
+
return isinstance(obj, cls_)
|
|
81
|
+
else:
|
|
82
|
+
return isinstance(obj, cls)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
if __name__ == '__main__':
|
|
86
|
+
if TYPE_CHECKING:
|
|
87
|
+
# for type check only
|
|
88
|
+
import numpy
|
|
89
|
+
NDArray = numpy.ndarray
|
|
90
|
+
import no_module
|
|
91
|
+
else:
|
|
92
|
+
# runtime
|
|
93
|
+
numpy = _LazyImport('numpy')
|
|
94
|
+
NDArray = _lazy_class_factory(numpy, 'ndarray')
|
|
95
|
+
NDArray2 = _lazy_class_factory(numpy, 'ndarray')
|
|
96
|
+
no_module = _LazyImport('no_module')
|
|
97
|
+
NoClass = _lazy_class_factory(no_module, 'NoClass')
|
|
98
|
+
|
|
99
|
+
print('numpy is loaded:', numpy.__doc__ is not None)
|
|
100
|
+
a = NDArray(shape=[1])
|
|
101
|
+
print('numpy is loaded:', numpy.__doc__ is not None)
|
|
102
|
+
|
|
103
|
+
print(f"{isinstance(None, NoClass)=}")
|
|
104
|
+
print(f"{isinstance_wrapper(None, NoClass)=}")
|
|
105
|
+
print(f"{isinstance(a, NDArray)=}")
|
|
106
|
+
print(f"{isinstance_wrapper(a, NDArray)=}")
|
|
107
|
+
print(f"{isinstance_wrapper(a, NoClass)=}")
|
|
108
|
+
print(f"{isinstance_wrapper(a, NDArray2)=}")
|
|
@@ -31,6 +31,7 @@ from pyfemtet.opt._femopt_core import (
|
|
|
31
31
|
from pyfemtet._message import Msg, encoding
|
|
32
32
|
from pyfemtet.opt.optimizer.parameter import Parameter, Expression
|
|
33
33
|
from pyfemtet._warning import experimental_feature
|
|
34
|
+
from pyfemtet._imports import *
|
|
34
35
|
|
|
35
36
|
from dask import config as cfg
|
|
36
37
|
cfg.set({'distributed.scheduler.worker-ttl': None})
|
|
@@ -366,8 +367,8 @@ class FEMOpt:
|
|
|
366
367
|
|
|
367
368
|
# 引数の処理
|
|
368
369
|
if fun is None:
|
|
369
|
-
from pyfemtet.opt.interface
|
|
370
|
-
if not
|
|
370
|
+
from pyfemtet.opt.interface import SurrogateModelInterfaceBase
|
|
371
|
+
if not isinstance_wrapper(self.fem, SurrogateModelInterfaceBase):
|
|
371
372
|
raise ValueError('`fun` argument is not specified.')
|
|
372
373
|
if args is None:
|
|
373
374
|
args = tuple()
|
|
@@ -510,13 +511,13 @@ class FEMOpt:
|
|
|
510
511
|
name = candidate
|
|
511
512
|
if using_fem is None:
|
|
512
513
|
# 自動推定機能は Femtet 特有の処理とする
|
|
513
|
-
if
|
|
514
|
+
if isinstance_wrapper(self.fem, FemtetInterface):
|
|
514
515
|
using_fem = _is_access_femtet(fun)
|
|
515
516
|
else:
|
|
516
517
|
using_fem = False
|
|
517
518
|
|
|
518
519
|
# strict constraint の場合、solve 前に評価したいので Gogh へのアクセスを禁ずる
|
|
519
|
-
if strict and
|
|
520
|
+
if strict and isinstance_wrapper(self.fem, FemtetInterface):
|
|
520
521
|
if _is_access_gogh(fun):
|
|
521
522
|
message = Msg.ERR_CONTAIN_GOGH_ACCESS_IN_STRICT_CONSTRAINT
|
|
522
523
|
raise Exception(message)
|
|
@@ -680,7 +681,7 @@ class FEMOpt:
|
|
|
680
681
|
|
|
681
682
|
# Femtet 特有の処理
|
|
682
683
|
metadata = None
|
|
683
|
-
if
|
|
684
|
+
if isinstance_wrapper(self.fem, FemtetInterface):
|
|
684
685
|
|
|
685
686
|
# 結果 csv に記載する femprj に関する情報の作成
|
|
686
687
|
metadata = json.dumps(
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# typing
|
|
2
|
-
from typing import List
|
|
2
|
+
from typing import List, TYPE_CHECKING
|
|
3
3
|
|
|
4
4
|
# built-in
|
|
5
5
|
import os
|
|
@@ -9,6 +9,7 @@ import ast
|
|
|
9
9
|
import csv
|
|
10
10
|
import ctypes
|
|
11
11
|
from packaging import version
|
|
12
|
+
import platform
|
|
12
13
|
|
|
13
14
|
# 3rd-party
|
|
14
15
|
import numpy as np
|
|
@@ -25,11 +26,17 @@ else:
|
|
|
25
26
|
from dask.distributed import Lock, get_client, Client
|
|
26
27
|
|
|
27
28
|
# win32com
|
|
28
|
-
|
|
29
|
+
if (platform.system() == 'Windows') or TYPE_CHECKING:
|
|
30
|
+
from win32com.client import constants, Constants
|
|
31
|
+
else:
|
|
32
|
+
class Constants:
|
|
33
|
+
pass
|
|
34
|
+
constants = None
|
|
29
35
|
|
|
30
36
|
# pyfemtet relative
|
|
31
37
|
from pyfemtet.opt.interface import FEMInterface, FemtetInterface
|
|
32
38
|
from pyfemtet._message import encoding, Msg
|
|
39
|
+
from pyfemtet._imports import *
|
|
33
40
|
|
|
34
41
|
# logger
|
|
35
42
|
from pyfemtet.logger import get_module_logger
|
|
@@ -317,7 +324,7 @@ class Function:
|
|
|
317
324
|
|
|
318
325
|
args = self.args
|
|
319
326
|
# Femtet 特有の処理
|
|
320
|
-
if
|
|
327
|
+
if isinstance_wrapper(fem, FemtetInterface):
|
|
321
328
|
args = (fem.Femtet, *args)
|
|
322
329
|
return float(self.fun(*args, **self.kwargs))
|
|
323
330
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING
|
|
2
|
+
from pyfemtet._imports import _LazyImport, _lazy_class_factory
|
|
3
|
+
|
|
4
|
+
from pyfemtet.opt.interface._base import FEMInterface
|
|
5
|
+
from pyfemtet.opt.interface._base import NoFEM
|
|
6
|
+
|
|
7
|
+
if TYPE_CHECKING:
|
|
8
|
+
from pyfemtet.opt.interface._femtet import FemtetInterface
|
|
9
|
+
from pyfemtet.opt.interface._femtet_with_sldworks import FemtetWithSolidworksInterface
|
|
10
|
+
from pyfemtet.opt.interface._femtet_with_nx import FemtetWithNXInterface
|
|
11
|
+
from pyfemtet.opt.interface._surrogate import PoFBoTorchInterface
|
|
12
|
+
from pyfemtet.opt.interface._excel_interface import ExcelInterface
|
|
13
|
+
|
|
14
|
+
else:
|
|
15
|
+
FemtetInterface = _lazy_class_factory(_LazyImport('pyfemtet.opt.interface._femtet'), 'FemtetInterface')
|
|
16
|
+
FemtetWithSolidworksInterface = _lazy_class_factory(_LazyImport('pyfemtet.opt.interface._femtet_with_sldworks'), 'FemtetWithSolidworksInterface')
|
|
17
|
+
FemtetWithNXInterface = _lazy_class_factory(_LazyImport('pyfemtet.opt.interface._femtet_with_nx'), 'FemtetWithNXInterface')
|
|
18
|
+
PoFBoTorchInterface = _lazy_class_factory(_LazyImport('pyfemtet.opt.interface._surrogate'), 'PoFBoTorchInterface')
|
|
19
|
+
ExcelInterface = _lazy_class_factory(_LazyImport('pyfemtet.opt.interface._excel_interface'), 'ExcelInterface')
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
__all__ = [
|
|
24
|
+
'FEMInterface',
|
|
25
|
+
'NoFEM',
|
|
26
|
+
'FemtetInterface',
|
|
27
|
+
'FemtetWithNXInterface',
|
|
28
|
+
'FemtetWithSolidworksInterface',
|
|
29
|
+
'PoFBoTorchInterface',
|
|
30
|
+
]
|
|
@@ -17,22 +17,25 @@ from pythoncom import CoInitialize, CoUninitialize
|
|
|
17
17
|
# noinspection PyUnresolvedReferences
|
|
18
18
|
from pywintypes import com_error
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
# pyfemtet.core
|
|
21
21
|
from pyfemtet.core import SolveError
|
|
22
|
-
from pyfemtet.opt.optimizer.parameter import Parameter, Expression
|
|
23
|
-
|
|
24
|
-
from pyfemtet.dispatch_extensions import _get_pid, dispatch_specific_femtet
|
|
25
22
|
|
|
23
|
+
# pyfemtet._util
|
|
26
24
|
from pyfemtet._femtet_config_util.exit import _exit_or_force_terminate
|
|
27
|
-
|
|
28
25
|
from pyfemtet._util.excel_macro_util import watch_excel_macro_error
|
|
29
26
|
from pyfemtet._util.dask_util import lock_or_no_lock
|
|
30
27
|
from pyfemtet._util.excel_parse_util import *
|
|
31
|
-
|
|
32
28
|
from pyfemtet._warning import show_experimental_warning
|
|
33
29
|
from pyfemtet._message.messages import Message as Msg
|
|
34
30
|
|
|
35
|
-
|
|
31
|
+
# dispatch extension
|
|
32
|
+
from pyfemtet.dispatch_extensions import _get_pid, dispatch_specific_femtet
|
|
33
|
+
|
|
34
|
+
# interface
|
|
35
|
+
from pyfemtet.opt.interface._base import FEMInterface, logger
|
|
36
|
+
|
|
37
|
+
# expression
|
|
38
|
+
from pyfemtet.opt.optimizer.parameter import Parameter, Expression
|
|
36
39
|
|
|
37
40
|
|
|
38
41
|
class ExcelInterface(FEMInterface):
|
|
@@ -33,7 +33,7 @@ from pyfemtet.dispatch_extensions import (
|
|
|
33
33
|
_get_pids,
|
|
34
34
|
DispatchExtensionException,
|
|
35
35
|
)
|
|
36
|
-
from pyfemtet.opt.interface import FEMInterface
|
|
36
|
+
from pyfemtet.opt.interface._base import FEMInterface
|
|
37
37
|
from pyfemtet._message import Msg
|
|
38
38
|
from pyfemtet._femtet_config_util.autosave import _get_autosave_enabled, _set_autosave_enabled
|
|
39
39
|
from pyfemtet._femtet_config_util.exit import _exit_or_force_terminate
|
|
@@ -10,7 +10,7 @@ from win32com.client import DispatchEx
|
|
|
10
10
|
from pythoncom import CoInitialize, CoUninitialize, com_error
|
|
11
11
|
|
|
12
12
|
from pyfemtet.core import ModelError
|
|
13
|
-
from pyfemtet.opt.interface import FemtetInterface
|
|
13
|
+
from pyfemtet.opt.interface._femtet import FemtetInterface
|
|
14
14
|
from pyfemtet._message import Msg
|
|
15
15
|
|
|
16
16
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "pyfemtet"
|
|
3
|
-
version = "0.8.
|
|
3
|
+
version = "0.8.3" # 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"
|
|
@@ -15,8 +15,9 @@ tqdm = "^4.66.1"
|
|
|
15
15
|
colorlog = "^6.8.0"
|
|
16
16
|
psutil = "^5.9.6"
|
|
17
17
|
# win32 / Femtet
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
# markers equires ```poetry config installer.re-resolve false```
|
|
19
|
+
pywin32 = { version = "^306", markers = "sys_platform=='win32'" }
|
|
20
|
+
femtetutils = { version = "^1.0.0", markers = "sys_platform=='win32'" }
|
|
20
21
|
# distributed
|
|
21
22
|
dask = "^2023.12.1"
|
|
22
23
|
distributed = "^2023.12.1"
|
|
@@ -32,7 +33,10 @@ scipy = "^1.11.4"
|
|
|
32
33
|
optuna = ">=3.4.0, <5.0.0"
|
|
33
34
|
optuna-integration = ">=3.6.0, <5.0.0"
|
|
34
35
|
botorch = "~0.12.0"
|
|
35
|
-
torch =
|
|
36
|
+
torch = [
|
|
37
|
+
{ version = "~2.5.1", source = "pytorch-cpu", markers = "sys_platform=='linux'" },
|
|
38
|
+
{ version = "~2.5.1", markers = "sys_platform!='linux'" },
|
|
39
|
+
]
|
|
36
40
|
brepmatching = {version = "^0.1.8", optional = true}
|
|
37
41
|
fire = "^0.6.0"
|
|
38
42
|
|
|
@@ -55,6 +59,11 @@ pytest = "^7.4.3"
|
|
|
55
59
|
pytest-dashboard = "^0.1.2"
|
|
56
60
|
fire = "^0.6.0"
|
|
57
61
|
|
|
62
|
+
[[tool.poetry.source]]
|
|
63
|
+
name = "pytorch-cpu"
|
|
64
|
+
url = "https://download.pytorch.org/whl/cpu"
|
|
65
|
+
priority = "explicit"
|
|
66
|
+
|
|
58
67
|
[tool.poetry.extras]
|
|
59
68
|
brep = ["brepmatching"] # pip install pyfemtet[brep]
|
|
60
69
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.8.1"
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
from pyfemtet.opt.interface._base import FEMInterface
|
|
2
|
-
from pyfemtet.opt.interface._base import NoFEM
|
|
3
|
-
from pyfemtet.opt.interface._femtet import FemtetInterface
|
|
4
|
-
from pyfemtet.opt.interface._femtet_with_sldworks import FemtetWithSolidworksInterface
|
|
5
|
-
from pyfemtet.opt.interface._femtet_with_nx import FemtetWithNXInterface
|
|
6
|
-
from pyfemtet.opt.interface._surrogate import PoFBoTorchInterface
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
__all__ = [
|
|
10
|
-
'FEMInterface',
|
|
11
|
-
'NoFEM',
|
|
12
|
-
'FemtetInterface',
|
|
13
|
-
'FemtetWithNXInterface',
|
|
14
|
-
'FemtetWithSolidworksInterface',
|
|
15
|
-
'PoFBoTorchInterface',
|
|
16
|
-
]
|
|
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-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/advanced_samples/excel_ui/test-pyfemtet-core.cmd
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
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/ParametricIF_test_result.reccsv
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_NX_test_result.reccsv
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/cad_ex01_SW_test_result.reccsv
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/constrained_pipe.femprj
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gal_ex58_parametric.femprj
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/gau_ex08_parametric.femprj
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/her_ex40_parametric.femprj
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.femprj
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/paswat_ex1_parametric.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric.femprj
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample/wat_ex14_parametric_parallel.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/ParametricIF_jp.femprj
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_NX_jp.femprj
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/cad_ex01_SW_jp.femprj
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/constrained_pipe_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gal_ex58_parametric_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/gau_ex08_parametric_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/her_ex40_parametric_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/paswat_ex1_parametric_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/samples/femprj_sample_jp/wat_ex14_parametric_jp.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/__init__.py
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/alert_region.py
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/control_femtet.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/main_graph.py
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/pm_graph.py
RENAMED
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_complex_components/pm_graph_creator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_process_monitor/application.py
RENAMED
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyfemtet-0.8.1 → pyfemtet-0.8.3}/pyfemtet/opt/visualization/_wrapped_components/str_enum.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|