pyfemtet 0.4.14__py3-none-any.whl → 0.4.16__py3-none-any.whl

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/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.4.14"
1
+ __version__ = "0.4.16"
@@ -619,10 +619,14 @@ class FemtetInterface(FEMInterface):
619
619
  self.update_model(parameters)
620
620
  self.preprocess(self.Femtet)
621
621
  self.solve()
622
+ self.postprocess(self.Femtet)
622
623
 
623
624
  def preprocess(self, Femtet):
624
625
  pass
625
626
 
627
+ def postprocess(self, Femtet):
628
+ pass
629
+
626
630
  def quit(self, timeout=1, force=True):
627
631
  """Force to terminate connected Femtet."""
628
632
  major, minor, bugfix = 2024, 0, 1
@@ -52,6 +52,9 @@ class SingleTaskGPModel(PredictionModelBase):
52
52
  train_x = torch.tensor(x).double()
53
53
  train_y = torch.tensor(y).double()
54
54
 
55
+ # check y shape (if single objective problem, output dimension is (n,) )
56
+ self._is_single_objective = len(y[0]) == 1
57
+
55
58
  # Normalize the input data to the unit cube
56
59
  self.scaler_x = MyMinMaxScaler()
57
60
  train_x = self.scaler_x.fit_transform(train_x)
@@ -73,10 +76,14 @@ class SingleTaskGPModel(PredictionModelBase):
73
76
  scaled_x = self.scaler_x.transform(x)
74
77
  # predict
75
78
  pred = self.gp(scaled_x)
76
- scaled_mean = torch.permute(pred.mean, (1, 0))
77
- scaled_var = torch.permute(pred.variance, (1, 0))
78
- # unscaling
79
- mean = self.scaler_y.inverse_transform_mean(scaled_mean).numpy()
80
- var = self.scaler_y.inverse_transform_var(scaled_var).numpy()
79
+ if self._is_single_objective:
80
+ scaled_mean = pred.mean.reshape((-1, 1))
81
+ scaled_var = pred.variance.reshape((-1, 1))
82
+ else:
83
+ scaled_mean = torch.permute(pred.mean, (1, 0))
84
+ scaled_var = torch.permute(pred.variance, (1, 0))
85
+ # unscaling
86
+ mean = self.scaler_y.inverse_transform_mean(scaled_mean).numpy()
87
+ var = self.scaler_y.inverse_transform_var(scaled_var).numpy()
81
88
  std = np.sqrt(var)
82
89
  return mean, std
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyfemtet
3
- Version: 0.4.14
3
+ Version: 0.4.16
4
4
  Summary: Design parameter optimization using Femtet.
5
5
  Home-page: https://github.com/pyfemtet/pyfemtet
6
6
  License: BSD-3-Clause
@@ -12,7 +12,7 @@ pyfemtet/FemtetPJTSample/her_ex40_parametric.py,sha256=B5PQoh71Q3KN2CyLU1gP_Yh9g
12
12
  pyfemtet/FemtetPJTSample/wat_ex14_parallel_parametric.py,sha256=UfhJffuXyhzdIWNpOrpV6xLTK1fuVvgyhlyg4Rp-628,2148
13
13
  pyfemtet/FemtetPJTSample/wat_ex14_parametric.femprj,sha256=pxacKe0NPNUPAcxqo2cATFApsMKiVt2g2e_FOk4fpjA,172895
14
14
  pyfemtet/FemtetPJTSample/wat_ex14_parametric.py,sha256=LGbWxCek0Ad2YrDCKykiQkE3aIypM4g8P3mLd_2anEE,2052
15
- pyfemtet/__init__.py,sha256=ccYoYg9PQ4_V0axjZMYWw4gWS3xBWHJNQhiThab-PD8,22
15
+ pyfemtet/__init__.py,sha256=7U-Zv55FJ5UMNJSXKgnHEEqHtliFJuHM2YQYlBcEvC8,22
16
16
  pyfemtet/_test_util.py,sha256=VLRyeLrBbaZ-tBoncyiR9-1BgT5N91SPR8u1j0AI6dU,4445
17
17
  pyfemtet/core.py,sha256=3lqfBGJ5IuKz2Nqj5pRo7YQqKwx_0ZDL72u95Ur_1p0,1386
18
18
  pyfemtet/dispatch_extensions.py,sha256=XVZajbjh7mb6NG4Hq8qff2TJWab75r4Hd59cIvCRsVg,16213
@@ -108,7 +108,7 @@ pyfemtet/opt/femprj_sample_jp/wat_ex14_parametric_jp.py,sha256=W30jobW1eEYuAsJJR
108
108
  pyfemtet/opt/femprj_sample_jp/wat_ex14_parametric_parallel_jp.py,sha256=ul2JUwlM5jfjNRELHkT7ZDuyMOq5RAHO32vAweEhCwg,2641
109
109
  pyfemtet/opt/interface/__init__.py,sha256=qz5BszPuU3jZIoDnPjkPDAgvgHLlx1sYhuqh5ID798k,480
110
110
  pyfemtet/opt/interface/_base.py,sha256=I4pJttLeRW-6WWMuCNynwxWPwriiGZk20vHLVcfixZY,2332
111
- pyfemtet/opt/interface/_femtet.py,sha256=QsedIHeKTn-_IKJK4O51rv_m7lAbgmxjBds2dytCweg,32301
111
+ pyfemtet/opt/interface/_femtet.py,sha256=U5sRe8yMsc4Uum_hRGl0C6S8A04a_p388q39d4lHsng,32388
112
112
  pyfemtet/opt/interface/_femtet_parametric.py,sha256=KDG8SB43AgwuhpCStjvx10G0RzyHhga6k4dfvp0gvYU,2175
113
113
  pyfemtet/opt/interface/_femtet_with_nx/__init__.py,sha256=-6W2g2FDEcKzGHmI5KAKQe-4U5jDpMj0CXuma-GZca0,83
114
114
  pyfemtet/opt/interface/_femtet_with_nx/_interface.py,sha256=cibPOhsUAvTDJa1xdEhVClZjwPkEx2kBmi61vyTJHUs,5514
@@ -121,7 +121,7 @@ pyfemtet/opt/opt/_scipy.py,sha256=HkEZTjMRJvOoIWIpIEbJaZJjZQkQ73FjD9c4NZADeIc,41
121
121
  pyfemtet/opt/opt/_scipy_scalar.py,sha256=6nFAnERtQIMnPJCwR5HkpKetxrVJaSFWHxJfXMPn3wg,2815
122
122
  pyfemtet/opt/prediction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
123
  pyfemtet/opt/prediction/base.py,sha256=q4lDqrOtAkiWG-OblQEddnEVj29Q-EJE3-O5QTOb3Q4,1761
124
- pyfemtet/opt/prediction/single_task_gp.py,sha256=HfotpHFyAR2t8hfnbTS0NO4NTalFKmgdTloLueVY5Lw,2973
124
+ pyfemtet/opt/prediction/single_task_gp.py,sha256=VbsVllzXzCGqkM1fC61Ouqwuv3ddS5INbFwDG8v-d6g,3303
125
125
  pyfemtet/opt/visualization/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
126
  pyfemtet/opt/visualization/_create_wrapped_components.py,sha256=XpOv_iEEB3lFT3vYuCnCCbwUwRFbCYgvsZDpaiSzmZY,2511
127
127
  pyfemtet/opt/visualization/base.py,sha256=XhZodLEr5PPHmtNai6uZcPJobKurENepuGCUaqDOI7I,7588
@@ -144,8 +144,8 @@ pyfemtet/opt/visualization/wrapped_components/dbc.py,sha256=wzR1ZMOb4uwPNTMFn5up
144
144
  pyfemtet/opt/visualization/wrapped_components/dcc.py,sha256=hcW7SR6VIMn4S4-JMyohvOzdc0Aw8A4chIeHqQEUbFU,17499
145
145
  pyfemtet/opt/visualization/wrapped_components/html.py,sha256=sE2XHTDY1GvA1NW7y6SKWf-WglVXFKKvXhU9h3z53_g,95652
146
146
  pyfemtet/opt/visualization/wrapped_components/str_enum.py,sha256=NZqbh2jNEAckvJyZv__MWeRs2F2Q-dkJCWo30rU2rrM,1383
147
- pyfemtet-0.4.14.dist-info/LICENSE,sha256=sVQBhyoglGJUu65-BP3iR6ujORI6YgEU2Qm-V4fGlOA,1485
148
- pyfemtet-0.4.14.dist-info/METADATA,sha256=zWBhUmAhIyC8dN9V1rY3COvSpJjBF0ENa_YH09QaP7s,3421
149
- pyfemtet-0.4.14.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
150
- pyfemtet-0.4.14.dist-info/entry_points.txt,sha256=ZfYqRaoiPtuWqFi2_msccyrVF0LurMn-IHlYamAegZo,104
151
- pyfemtet-0.4.14.dist-info/RECORD,,
147
+ pyfemtet-0.4.16.dist-info/LICENSE,sha256=sVQBhyoglGJUu65-BP3iR6ujORI6YgEU2Qm-V4fGlOA,1485
148
+ pyfemtet-0.4.16.dist-info/METADATA,sha256=hkWBE--AzQAqQE7TCMaOUYHhUXK6F5R4ZR-PXbWOBPM,3421
149
+ pyfemtet-0.4.16.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
150
+ pyfemtet-0.4.16.dist-info/entry_points.txt,sha256=ZfYqRaoiPtuWqFi2_msccyrVF0LurMn-IHlYamAegZo,104
151
+ pyfemtet-0.4.16.dist-info/RECORD,,