emerge 1.0.3__py3-none-any.whl → 1.0.5__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 emerge might be problematic. Click here for more details.

Files changed (30) hide show
  1. emerge/__init__.py +7 -3
  2. emerge/_emerge/elements/femdata.py +5 -1
  3. emerge/_emerge/elements/ned2_interp.py +73 -30
  4. emerge/_emerge/elements/nedelec2.py +1 -0
  5. emerge/_emerge/emerge_update.py +63 -0
  6. emerge/_emerge/geo/operations.py +6 -3
  7. emerge/_emerge/geo/polybased.py +37 -5
  8. emerge/_emerge/geometry.py +5 -0
  9. emerge/_emerge/logsettings.py +26 -1
  10. emerge/_emerge/material.py +29 -8
  11. emerge/_emerge/mesh3d.py +16 -13
  12. emerge/_emerge/mesher.py +70 -3
  13. emerge/_emerge/physics/microwave/assembly/assembler.py +5 -4
  14. emerge/_emerge/physics/microwave/assembly/curlcurl.py +0 -1
  15. emerge/_emerge/physics/microwave/assembly/generalized_eigen.py +1 -2
  16. emerge/_emerge/physics/microwave/assembly/generalized_eigen_hb.py +1 -1
  17. emerge/_emerge/physics/microwave/assembly/robin_abc_order2.py +0 -1
  18. emerge/_emerge/physics/microwave/microwave_3d.py +37 -16
  19. emerge/_emerge/physics/microwave/microwave_bc.py +6 -4
  20. emerge/_emerge/physics/microwave/microwave_data.py +14 -11
  21. emerge/_emerge/plot/pyvista/cmap_maker.py +70 -0
  22. emerge/_emerge/plot/pyvista/display.py +93 -36
  23. emerge/_emerge/simmodel.py +77 -21
  24. emerge/_emerge/simulation_data.py +22 -4
  25. emerge/_emerge/solver.py +67 -32
  26. {emerge-1.0.3.dist-info → emerge-1.0.5.dist-info}/METADATA +2 -3
  27. {emerge-1.0.3.dist-info → emerge-1.0.5.dist-info}/RECORD +30 -28
  28. {emerge-1.0.3.dist-info → emerge-1.0.5.dist-info}/WHEEL +0 -0
  29. {emerge-1.0.3.dist-info → emerge-1.0.5.dist-info}/entry_points.txt +0 -0
  30. {emerge-1.0.3.dist-info → emerge-1.0.5.dist-info}/licenses/LICENSE +0 -0
emerge/_emerge/solver.py CHANGED
@@ -95,7 +95,44 @@ class SolveReport:
95
95
  for key, value in kwargs.items():
96
96
  self.aux[key] = str(value)
97
97
 
98
+ @property
99
+ def mdof(self) -> float:
100
+ return (self.ndof**2)/((self.simtime+1e-6)*1e6)
101
+
102
+ def logprint(self, print_cal: Callable | None = None):
103
+ if print_cal is None:
104
+ print_cal = print
105
+
106
+ def fmt(key, val):
107
+ return f"{key}={val:.4f}" if isinstance(val, float) else f"{key}={val}"
108
+
109
+ parts = []
110
+ parts.append(fmt("Solver", self.solver))
111
+ parts.append(fmt("Sorter", self.sorter))
112
+ parts.append(fmt("Precon", self.precon))
113
+ parts.append(fmt("JobID", self.jobid))
114
+ parts.append(fmt("SimTime[s]", self.simtime))
115
+ parts.append(fmt("DOFsTot", self.ndof))
116
+ parts.append(fmt("NNZTot", self.nnz))
117
+ parts.append(fmt("DOFsSolve", self.ndof_solve))
118
+ parts.append(fmt("NNZSolve", self.nnz_solve))
119
+ parts.append(fmt("Exit", self.exit_code))
120
+
121
+ if self.aux:
122
+ for k, v in self.aux.items():
123
+ parts.append(fmt(str(k), v))
124
+
125
+ # Group into multiple lines (6 items per line for readability)
126
+ print_cal(f"FEM Report [JobID={self.jobid}]")
127
+ for i in range(0, len(parts), 6):
128
+ print_cal(" " + ", ".join(parts[i:i+6]))
129
+
98
130
  def pretty_print(self, print_cal: Callable | None = None):
131
+ """Print the solve report in the terminal in a table format
132
+
133
+ Args:
134
+ print_cal (Callable | None, optional): _description_. Defaults to None.
135
+ """
99
136
  if print_cal is None:
100
137
  print_cal = print
101
138
  # Set column widths
@@ -623,7 +660,7 @@ class SolverPardiso(Solver):
623
660
  return x, SolveReport(solver=str(self), exit_code=error, aux=aux)
624
661
 
625
662
 
626
- class CuDSSSolver(Solver):
663
+ class SolverCuDSS(Solver):
627
664
  real_only = False
628
665
  def __init__(self):
629
666
  super().__init__()
@@ -838,34 +875,31 @@ class EMSolver(Enum):
838
875
  SMART_ARPACK_BMA = 7
839
876
  CUDSS = 8
840
877
 
841
- def get_solver(self) -> Solver | EigSolver | None:
842
- if self==EMSolver.SUPERLU:
843
- return SolverSuperLU()
844
- elif self==EMSolver.UMFPACK:
845
- if _UMFPACK_AVAILABLE is False:
846
- return None
847
- else:
848
- return SolverUMFPACK()
849
- elif self==EMSolver.PARDISO:
850
- if _PARDISO_AVAILABLE is False:
851
- return None
852
- else:
853
- return SolverPardiso()
854
- elif self==EMSolver.LAPACK:
855
- return SolverLAPACK()
856
- elif self==EMSolver.ARPACK:
857
- return SolverARPACK()
858
- elif self==EMSolver.SMART_ARPACK:
859
- return SmartARPACK()
860
- elif self==EMSolver.SMART_ARPACK_BMA:
861
- return SmartARPACK_BMA()
862
- elif self==EMSolver.CUDSS:
863
- if _CUDSS_AVAILABLE is False:
864
- return None
865
- else:
866
- return CuDSSSolver()
867
- raise ValueError(f'An unsupported Enum case has been reached: {self}')
878
+ def create_solver(self) -> Solver | EigSolver | None:
879
+ if self==EMSolver.UMFPACK and not _UMFPACK_AVAILABLE:
880
+ return None
881
+ elif self==EMSolver.PARDISO and not _PARDISO_AVAILABLE:
882
+ return None
883
+ if self==EMSolver.CUDSS and not _CUDSS_AVAILABLE:
884
+ return None
885
+ return self._clss()
868
886
 
887
+ @property
888
+ def _clss(self) -> type[Solver]:
889
+ mapper = {1: SolverSuperLU,
890
+ 2: SolverUMFPACK,
891
+ 3: SolverPardiso,
892
+ 4: SolverLAPACK,
893
+ 5: SolverARPACK,
894
+ 6: SmartARPACK,
895
+ 7: SmartARPACK_BMA,
896
+ 8: SolverCuDSS
897
+
898
+ }
899
+ return mapper.get(self.value, None)
900
+
901
+ def istype(self, solver: Solver) -> bool:
902
+ return isinstance(solver, self._clss)
869
903
  ############################################################
870
904
  # SOLVE ROUTINE #
871
905
  ############################################################
@@ -881,7 +915,7 @@ class SolveRoutine:
881
915
 
882
916
  self.sorter: Sorter = ReverseCuthillMckee()
883
917
  self.precon: Preconditioner = ILUPrecon()
884
- self.solvers: dict[EMSolver, Solver | EigSolver] = {slv: slv.get_solver() for slv in EMSolver}
918
+ self.solvers: dict[EMSolver, Solver | EigSolver] = {slv: slv.create_solver() for slv in EMSolver}
885
919
  self.solvers = {key: solver for key, solver in self.solvers.items() if solver is not None}
886
920
 
887
921
  self.parallel: Literal['SI','MT','MP'] = 'SI'
@@ -921,7 +955,6 @@ class SolveRoutine:
921
955
  @property
922
956
  def all_eig_solvers(self) -> list[EigSolver]:
923
957
  return list([solver for solver in self.solvers.values() if isinstance(solver, EigSolver)])
924
-
925
958
 
926
959
  def _try_solver(self, solver_type: EMSolver) -> Solver:
927
960
  """Try to use the selected solver or else find another one that is working.
@@ -967,7 +1000,7 @@ class SolveRoutine:
967
1000
  """
968
1001
  for solver in solvers:
969
1002
  if isinstance(solver, EMSolver):
970
- self.forced_solver.append(solver.get_solver())
1003
+ self.forced_solver.append(self.solvers[solver])
971
1004
  else:
972
1005
  self.forced_solver.append(solver)
973
1006
 
@@ -980,7 +1013,7 @@ class SolveRoutine:
980
1013
  """
981
1014
  for solver in solvers:
982
1015
  if isinstance(solver, EMSolver):
983
- self.disabled_solver.append(solver.get_solver().__class__)
1016
+ self.disabled_solver.append(solver.create_solver().__class__)
984
1017
  else:
985
1018
  self.disabled_solver.append(solver.__class__)
986
1019
 
@@ -1043,6 +1076,8 @@ class SolveRoutine:
1043
1076
 
1044
1077
  """
1045
1078
  for solver in self.forced_solver:
1079
+ if solver is None:
1080
+ continue
1046
1081
  if not self._legal_solver(solver):
1047
1082
  continue
1048
1083
  if isinstance(solver, Solver):
@@ -1,12 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: emerge
3
- Version: 1.0.3
3
+ Version: 1.0.5
4
4
  Summary: An open source EM FEM simulator in Python
5
5
  Project-URL: Homepage, https://github.com/FennisRobert/EMerge
6
6
  Project-URL: Issues, https://github.com/FennisRobert/EMerge/issues
7
7
  License-File: LICENSE
8
8
  Requires-Python: <4.0,>=3.10
9
- Requires-Dist: cloudpickle>=3.1.1
10
9
  Requires-Dist: gmsh<4.14.0,>=4.13.0
11
10
  Requires-Dist: joblib>=1.5.1
12
11
  Requires-Dist: loguru>=0.7.3
@@ -33,7 +32,7 @@ Hello everybody. Thanks for showing interest in this repository.
33
32
  Feel free to download your version of EMerge and start playing around with it!
34
33
  If you have suggestions/changes/questions either use the Github issue system or join the Discord using the following link:
35
34
 
36
- **https://discord.gg/7PF4WcS6uA**
35
+ **[Discord Invitation](https://discord.gg/VMftDCZcNz)**
37
36
 
38
37
  ## How to install
39
38
 
@@ -1,4 +1,4 @@
1
- emerge/__init__.py,sha256=bcSf-MFcqcMLXIdQ7XcsHhwj05Lqo5yop4rGg16qPp0,2921
1
+ emerge/__init__.py,sha256=F-k_d_Y9IKWo7DzANY_2dTgpkz0EKV6L8Kpl8eLoFr8,3122
2
2
  emerge/__main__.py,sha256=WVf16sfrOI910QWohrQDaChZdRifMNoS6VKzCT6f3ZA,92
3
3
  emerge/cli.py,sha256=NU1uhwuZ6i50680v3_I4kDZPTHqz74gOYK71UBhb8oE,666
4
4
  emerge/ext.py,sha256=IBoHH5PQFj5pYMfp6r-uMpNNgbSe8c0g9x8qjBzzVmU,223
@@ -12,34 +12,35 @@ emerge/_emerge/const.py,sha256=PTZZTSDOP5NsZ8XnJrKTY2P0tPUhmutBJ1yrm-t7xsI,129
12
12
  emerge/_emerge/coord.py,sha256=BKvyrcnHY-_bgHqysnByy5k9_DK4VVfr9KKkRaawG2E,4371
13
13
  emerge/_emerge/cs.py,sha256=gULfov6s0jODOdQkH6NmGBbG5wvny1-bJU8fdAlpCHo,19730
14
14
  emerge/_emerge/dataset.py,sha256=UcSAJ_siLrOjNBBWRWsS3GUZUpayp63EM6pP6ClwKDI,1534
15
+ emerge/_emerge/emerge_update.py,sha256=0G91xr7k7Me5gOlk3pXbKWe-6ALXtoCJ5syTa1Y5Bhw,2042
15
16
  emerge/_emerge/geo2d.py,sha256=e_HkX1GQ2iYrdO0zeEgzVOzfGyU1WGJyjeGBAobOttE,3323
16
- emerge/_emerge/geometry.py,sha256=vkHt4glXl8U3UiPBrx-XTMBdQ0uNW0G3HTVyhIUrMZM,24490
17
+ emerge/_emerge/geometry.py,sha256=-QLLDyYXCXfZW01aKwW8IfkvtAr5PVjsM4r-xtEbOzY,24677
17
18
  emerge/_emerge/howto.py,sha256=c4UxUNpA1tygr3OoR-LH-h0UZv-Tf9K8tpCiAU18BKE,8173
18
- emerge/_emerge/logsettings.py,sha256=s8UboFEtB0aIuLB2FSL2WIbw0_kB363iHNIy4uGQi7w,3711
19
- emerge/_emerge/material.py,sha256=X1CUrtaMh3oWU0NdLIXbknuSABsKtd4TpYKgW_dbvO8,15543
20
- emerge/_emerge/mesh3d.py,sha256=OQzR1yrbzH-ayRxegsMUzeEfJ8_fObW-99fe1zhhgn8,35597
21
- emerge/_emerge/mesher.py,sha256=fKgPb6oZe_bqp0XYfZ6UNgBfRaAS3-tjUtZX8NalJe8,13199
19
+ emerge/_emerge/logsettings.py,sha256=OpsH_1dQAdZry_as8y0OQt4yKP_AMFfQG2d5Nz5yywg,4789
20
+ emerge/_emerge/material.py,sha256=q6dhtfxPfy1PbCRjG7-jOimR5dVE6vf1kyfpBdoYrK4,16038
21
+ emerge/_emerge/mesh3d.py,sha256=6NWTqJVwyaOhFKQgNghkH3zgrYFWbI0qAEBpvq-JOwI,35790
22
+ emerge/_emerge/mesher.py,sha256=64hMTe2sSQgytnf8ryXUH8PIkUOsV5KJEXpibgJOhSg,16052
22
23
  emerge/_emerge/periodic.py,sha256=dUuWqjlDR8mHtQR3ecINP2FFjJJ0cKg0blOVZ0PCcAo,12087
23
24
  emerge/_emerge/plot.py,sha256=cf1I9mj7EIUJcq8vmANlUkqoV6QqVaJaP-zlC-T9E18,8041
24
25
  emerge/_emerge/selection.py,sha256=ltT8ubMFG3-sFrAh7K7iAgSoBt3r25B02ShzMlOGSXQ,21527
25
26
  emerge/_emerge/settings.py,sha256=wZFMzQSnMEEJptatu--67El1L0I_YEv9S8QjqI69bfs,265
26
- emerge/_emerge/simmodel.py,sha256=F7HfV1QXyigAlTKbw9qsZnAslBQ_sdy8K-gx_cwIP8k,24488
27
- emerge/_emerge/simulation_data.py,sha256=r9-9lpLeA1Z5HU3jDVOXV1H80GVawnXL5K81_dvmlE4,14506
28
- emerge/_emerge/solver.py,sha256=c3mXp-orIb_wQkfi_FbwS_sL7miuofg1TZfWRqZevMg,50289
27
+ emerge/_emerge/simmodel.py,sha256=460el1k0gCj8Bt9MMoZMBUXx4YftaTrOvXP0Epmj-Dg,26525
28
+ emerge/_emerge/simulation_data.py,sha256=23o-xbm6Q6s9sYisyK9u1GTmuaXRl0WDGQwzPO7lkr0,15115
29
+ emerge/_emerge/solver.py,sha256=z3d0UTFjMkOPlyRi8gOASigKlJ9-1MWsGZfAhGk1xr0,51573
29
30
  emerge/_emerge/system.py,sha256=p4HNz7d_LMRNE9Gk75vVdFecDH2iN_groAM9u-yQTpk,1618
30
31
  emerge/_emerge/elements/__init__.py,sha256=I3n9aic6lJW-oGeqTEZ-Fpxvyl2i-WqsHdnrM3v1oB8,799
31
- emerge/_emerge/elements/femdata.py,sha256=hzwyxQE71Hzfwj-vYZoy2Ry2d0qL7cEvU1aaaHxBqxg,8093
32
+ emerge/_emerge/elements/femdata.py,sha256=ZSB7dICyU3GOWbxpuowBc-Khh2mpXa02ZfMkHwdDol4,8377
32
33
  emerge/_emerge/elements/index_interp.py,sha256=02CTHaokaAepBRvt7cHVwh3EpOA3sVE3qvEAkDjmwro,2072
33
- emerge/_emerge/elements/ned2_interp.py,sha256=TwZr6f7USERIHrSShhEWofq_mMwFV5xHqSIRLLiUz48,32650
34
- emerge/_emerge/elements/nedelec2.py,sha256=LFfrXlafjQJGETPzwDtF9wTgKRusLxfA0_VrMkzI2bA,6640
34
+ emerge/_emerge/elements/ned2_interp.py,sha256=BGRdJGXCcDdqMBf3pOvc_-m-vngRI1VvE5MUsqqf9Cw,27981
35
+ emerge/_emerge/elements/nedelec2.py,sha256=OssFCnPp7wkMBcUISGvTgT94jayfGOmX0x-RctIYSuI,6645
35
36
  emerge/_emerge/elements/nedleg2.py,sha256=1SA6AvnbChhU2iodS1PVMUdbSn9wF2XKam12WTBDtsw,9049
36
37
  emerge/_emerge/geo/__init__.py,sha256=yTeuT4Oexrsdkr7MxRLeTHEY5iP4IHsWeCvit57fK5g,1161
37
38
  emerge/_emerge/geo/horn.py,sha256=otrtPphO2zoRaSOb7NV-iRaydL1uWDAl2xJ6-8Sef24,4148
38
39
  emerge/_emerge/geo/modeler.py,sha256=_PMz3lFSa7FmJHWdY-4U1Sqbed-Egy85S_AdjlCldC4,15572
39
- emerge/_emerge/geo/operations.py,sha256=lqfCU99uiLc0vDGqILpMP1YgKs1e-gwEcSLbI_gE6TA,12441
40
+ emerge/_emerge/geo/operations.py,sha256=WYWfOXWrT0voeKW9U26g-PhQfqJl3ovRQ8uDQXUr7Nc,12459
40
41
  emerge/_emerge/geo/pcb.py,sha256=Mzn7Lho18Xc7A-XShfWZK9Kop4xlLYONMeRhtKkETJU,57577
41
42
  emerge/_emerge/geo/pmlbox.py,sha256=gaIG_AoZNQnIyJ8C7x64U-Hw5dsmllWMiZDAH4iRoM0,8784
42
- emerge/_emerge/geo/polybased.py,sha256=g-dyR_58knyQK4q72dLZzAkquVCaZ_GhRcPy1a_veQE,31323
43
+ emerge/_emerge/geo/polybased.py,sha256=plDHB-67i9tjFc9Ktiq92MOX9mfaxjvFrBYIumR-Pmg,32441
43
44
  emerge/_emerge/geo/shapes.py,sha256=LPprT9vR7p6TqSBVKS6eG8P3iYWO7_yC7LNUYw5B8Sk,24196
44
45
  emerge/_emerge/geo/step.py,sha256=XcAiEN8W4umNmZdYmrGHX_aJUuiMgc6vgT-UIk8Gbqc,2689
45
46
  emerge/_emerge/geo/pcb_tools/calculator.py,sha256=VbMP2xC9i7OFwtqnnwfYgyJSEcJIjr2VIy_Ez1hYqlU,859
@@ -53,28 +54,29 @@ emerge/_emerge/mth/pairing.py,sha256=i8bBvTeMmzgF0JdiDNJiTXxx913x4f10777pzD6FJo0
53
54
  emerge/_emerge/physics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
55
  emerge/_emerge/physics/microwave/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
56
  emerge/_emerge/physics/microwave/adaptive_freq.py,sha256=aWhijhCVAbnuwkru-I1AaRdY20uyozf6OWRIh9r2ijg,9786
56
- emerge/_emerge/physics/microwave/microwave_3d.py,sha256=EZez0kKTSFWbgdDxm3Mv5Zgh3Lcd6Bi8mIv66SmghNw,43314
57
- emerge/_emerge/physics/microwave/microwave_bc.py,sha256=97HBbSY6rycxSwZULuXeMtJcEiNSPueYwior-PdYY50,43538
58
- emerge/_emerge/physics/microwave/microwave_data.py,sha256=1p1EbHO1Bz8dYwQJhRlO08fA_2D-JGr1WH2dkd7at9c,49463
57
+ emerge/_emerge/physics/microwave/microwave_3d.py,sha256=FYUczByjAVTR3F15B2S1u7KPbYv4oABEqcj-uxemlGY,44396
58
+ emerge/_emerge/physics/microwave/microwave_bc.py,sha256=n8lO-jUCKyQfsXVTWgFASxa3EcoFYz5uKXm-WiDKvIY,43655
59
+ emerge/_emerge/physics/microwave/microwave_data.py,sha256=CwFg7lukrN5KrgCo-kZT6jSwqbU3I2xC5Xo621zm2Rk,49639
59
60
  emerge/_emerge/physics/microwave/periodic.py,sha256=wYSUgLFVtCLqSG3EDKoCDRU93iPUzBdXzVRdHTRmbpI,3000
60
61
  emerge/_emerge/physics/microwave/port_functions.py,sha256=d-W1D-7P05MfXdOs7WlhPi_RqlSpC0HkYU6yl3GrxgE,2173
61
62
  emerge/_emerge/physics/microwave/sc.py,sha256=WZvoPhmHkfEv619RhmN09sXDBV0ryTqybwErA8Rc7lU,4735
62
63
  emerge/_emerge/physics/microwave/simjob.py,sha256=aCWCs7IXBfVBWWYhwyHvXSRHY3FOd3CK5ABcaFEsNnM,4927
63
64
  emerge/_emerge/physics/microwave/sparam.py,sha256=1SXGyr1UsrPnCIi4ffwobM4pzgkj50y4LrWCr_J5IRY,4946
64
65
  emerge/_emerge/physics/microwave/touchstone.py,sha256=pMcCOLWVqIKctcShcJxyaV-0rhRWXMSS1Jz14dVQEyY,5799
65
- emerge/_emerge/physics/microwave/assembly/assembler.py,sha256=c0XdSpTsb55-nQm-lV8hradxtynx1IOCYAEghrJD3ic,23883
66
- emerge/_emerge/physics/microwave/assembly/curlcurl.py,sha256=iYHTNI48bmC6SjCiCMPoY4yqsf__e_h_vbW0fNKQpNQ,18686
67
- emerge/_emerge/physics/microwave/assembly/generalized_eigen.py,sha256=LOybnxdy1x6R6d0lPnfnKckZSiYRfWOW9MUFlV_ygfs,16945
68
- emerge/_emerge/physics/microwave/assembly/generalized_eigen_hb.py,sha256=9YaBtUkYxXT_Sc247PkDAgAJkHjfeKi39-5KGR06IKE,17355
66
+ emerge/_emerge/physics/microwave/assembly/assembler.py,sha256=cHmWu5NOCPXbXPK1BkiHAUSvVOYs6aP-44GF7RuRTXA,23926
67
+ emerge/_emerge/physics/microwave/assembly/curlcurl.py,sha256=ksK7CcRrix2FMTXwV5SCVKcRcyfih39qhR6brqmt7ds,18663
68
+ emerge/_emerge/physics/microwave/assembly/generalized_eigen.py,sha256=7jNU_hWd7q-ni53wmlhB5kmyJxp2xsx_WyBXZ6hPwo0,16907
69
+ emerge/_emerge/physics/microwave/assembly/generalized_eigen_hb.py,sha256=tGf9EOzmp-dqtTodwYzcswuT_eLeZRtgdAZvgPz9QJo,17340
69
70
  emerge/_emerge/physics/microwave/assembly/periodicbc.py,sha256=N64uGx49Qs0PJxi_EH5pLx0zcrgJxqMy6DI1TqVXfmQ,4645
70
- emerge/_emerge/physics/microwave/assembly/robin_abc_order2.py,sha256=muG5TurwkZiFmFAjH0ecigFc67P5eniQtY34Uv2tMMY,13485
71
+ emerge/_emerge/physics/microwave/assembly/robin_abc_order2.py,sha256=HRGe6ezRVfcNak3pjiGkQfX5dj57xJyNMMGi1OWM528,13449
71
72
  emerge/_emerge/physics/microwave/assembly/robinbc.py,sha256=uaaxlw7Vh-6ni5Gaz07WzpUsRvZ0hAru9E2wnNPp_fY,17614
72
73
  emerge/_emerge/plot/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
74
  emerge/_emerge/plot/display.py,sha256=TQLlKb-LkaG5ZOSLfxp9KXPlZPRFTxNj1LhVQ-Lp1-s,18476
74
75
  emerge/_emerge/plot/simple_plots.py,sha256=szIpmQmO8o6ubzB_E3zTJfEx16mJ3-OXrMYdD_wjAcs,25256
75
76
  emerge/_emerge/plot/matplotlib/mpldisplay.py,sha256=e8V6EhGdCW7nRkSFvjHCcRO5uR-FcD0yHQ1nxPQCbp4,8674
76
77
  emerge/_emerge/plot/pyvista/__init__.py,sha256=CPclatEu6mFnJZzCQk09g6T6Fh20WTbiLAJGSwAnPXU,30
77
- emerge/_emerge/plot/pyvista/display.py,sha256=ADMWr0TIe_OVmBD0l9a9jl52nQByRUWsFr9_RuMD9vs,39409
78
+ emerge/_emerge/plot/pyvista/cmap_maker.py,sha256=_GVXYdtXpJwAO9O-Iekjzn6YcR0MVT8LNh12nqvF2IA,2498
79
+ emerge/_emerge/plot/pyvista/display.py,sha256=IemCSptqlO7EfUZnLNetGiVxn0CgLD8qJ5B9SNTxCOo,41704
78
80
  emerge/_emerge/plot/pyvista/display_settings.py,sha256=gV5hjRGEAl3oQeBPobas6b6JzYfMFrXIGtVSaeml4N0,1074
79
81
  emerge/_emerge/projects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
82
  emerge/_emerge/projects/_gen_base.txt,sha256=DqQz36PZg6v1ovQjHvPjd0t4AIbmikZdb9dmrNYsK3w,598
@@ -86,8 +88,8 @@ emerge/beta/dxf.py,sha256=Bw4lVk0TquOgCxTZV23BZN7PrgqxBrMZxbHV1waC5U0,50
86
88
  emerge/materials/__init__.py,sha256=Z9tu3m_nqj6F9I-FwoVoN0vCTYUlFesH3KxJ38wkZck,19
87
89
  emerge/materials/isola.py,sha256=kSDxHJZVn2CcanoUjlwRVKIPvadRbBybURTdIHWx728,18660
88
90
  emerge/materials/rogers.py,sha256=4u6ma_XQdXGKWE3WsFkaMTamCQNo9kTYSTU8S1gCAYU,3388
89
- emerge-1.0.3.dist-info/METADATA,sha256=HtG8-3dlbt5EQHNcZRMYj_KV1uYU46zOWxR3oWv5suI,3318
90
- emerge-1.0.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
91
- emerge-1.0.3.dist-info/entry_points.txt,sha256=8rFvAXticpKg4OTC8JEvAksnduW72KIEskCGG9XnFf8,43
92
- emerge-1.0.3.dist-info/licenses/LICENSE,sha256=VOCXWddrjMN5j7TvnSAOh1Dx7jkugdwq9Lqhycf5inc,17852
93
- emerge-1.0.3.dist-info/RECORD,,
91
+ emerge-1.0.5.dist-info/METADATA,sha256=m6vQVIQM-DWznyMQVEOpllXUdsAjbqp-diEb_qgOOrg,3306
92
+ emerge-1.0.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
93
+ emerge-1.0.5.dist-info/entry_points.txt,sha256=8rFvAXticpKg4OTC8JEvAksnduW72KIEskCGG9XnFf8,43
94
+ emerge-1.0.5.dist-info/licenses/LICENSE,sha256=VOCXWddrjMN5j7TvnSAOh1Dx7jkugdwq9Lqhycf5inc,17852
95
+ emerge-1.0.5.dist-info/RECORD,,
File without changes