pyedb 0.37.0__py3-none-any.whl → 0.39.0__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 pyedb might be problematic. Click here for more details.

Files changed (208) hide show
  1. pyedb/__init__.py +1 -1
  2. pyedb/common/nets.py +53 -139
  3. pyedb/configuration/cfg_common.py +1 -1
  4. pyedb/configuration/cfg_components.py +229 -201
  5. pyedb/configuration/cfg_data.py +3 -1
  6. pyedb/configuration/cfg_general.py +4 -2
  7. pyedb/configuration/cfg_modeler.py +7 -7
  8. pyedb/configuration/cfg_package_definition.py +1 -1
  9. pyedb/configuration/cfg_padstacks.py +346 -290
  10. pyedb/configuration/cfg_ports_sources.py +243 -65
  11. pyedb/configuration/configuration.py +23 -3
  12. pyedb/dotnet/{application → database}/Variables.py +21 -21
  13. pyedb/dotnet/{edb_core → database}/cell/connectable.py +5 -5
  14. pyedb/dotnet/{edb_core → database}/cell/hierarchy/component.py +11 -11
  15. pyedb/dotnet/{edb_core → database}/cell/hierarchy/hierarchy_obj.py +1 -1
  16. pyedb/dotnet/{edb_core → database}/cell/hierarchy/model.py +1 -1
  17. pyedb/dotnet/{edb_core → database}/cell/layout.py +19 -19
  18. pyedb/dotnet/{edb_core → database}/cell/layout_obj.py +3 -3
  19. pyedb/dotnet/{edb_core → database}/cell/primitive/bondwire.py +1 -1
  20. pyedb/dotnet/{edb_core → database}/cell/primitive/path.py +4 -4
  21. pyedb/dotnet/{edb_core → database}/cell/primitive/primitive.py +14 -14
  22. pyedb/dotnet/{edb_core → database}/cell/terminal/bundle_terminal.py +2 -2
  23. pyedb/dotnet/{edb_core → database}/cell/terminal/edge_terminal.py +4 -4
  24. pyedb/dotnet/{edb_core → database}/cell/terminal/padstack_instance_terminal.py +2 -2
  25. pyedb/dotnet/{edb_core → database}/cell/terminal/pingroup_terminal.py +2 -2
  26. pyedb/dotnet/{edb_core → database}/cell/terminal/point_terminal.py +2 -2
  27. pyedb/dotnet/{edb_core → database}/cell/terminal/terminal.py +11 -11
  28. pyedb/dotnet/{edb_core → database}/cell/voltage_regulator.py +2 -2
  29. pyedb/dotnet/{edb_core → database}/components.py +101 -124
  30. pyedb/dotnet/{edb_core → database}/definition/component_def.py +5 -5
  31. pyedb/dotnet/{edb_core → database}/definition/component_model.py +1 -1
  32. pyedb/dotnet/{edb_core → database}/definition/definition_obj.py +1 -1
  33. pyedb/dotnet/{edb_core → database}/definition/definitions.py +2 -2
  34. pyedb/dotnet/{edb_core → database}/definition/package_def.py +4 -4
  35. pyedb/dotnet/{edb_core → database}/dotnet/database.py +8 -8
  36. pyedb/dotnet/{edb_core → database}/dotnet/primitive.py +9 -9
  37. pyedb/dotnet/{edb_core → database}/edb_data/control_file.py +12 -12
  38. pyedb/dotnet/{edb_core → database}/edb_data/hfss_extent_info.py +7 -7
  39. pyedb/dotnet/{edb_core → database}/edb_data/nets_data.py +10 -13
  40. pyedb/dotnet/{edb_core → database}/edb_data/padstacks_data.py +60 -73
  41. pyedb/dotnet/{edb_core → database}/edb_data/ports.py +4 -4
  42. pyedb/dotnet/{edb_core → database}/edb_data/primitives_data.py +5 -5
  43. pyedb/dotnet/{edb_core → database}/edb_data/raptor_x_simulation_setup_data.py +4 -4
  44. pyedb/dotnet/{edb_core → database}/edb_data/simulation_configuration.py +10 -10
  45. pyedb/dotnet/{edb_core → database}/edb_data/sources.py +4 -4
  46. pyedb/dotnet/{edb_core → database}/edb_data/variables.py +1 -1
  47. pyedb/dotnet/{edb_core → database}/geometry/polygon_data.py +4 -4
  48. pyedb/dotnet/{edb_core → database}/hfss.py +8 -8
  49. pyedb/dotnet/{edb_core → database}/layout_obj_instance.py +1 -1
  50. pyedb/dotnet/{edb_core → database}/layout_validation.py +2 -2
  51. pyedb/dotnet/{edb_core → database}/materials.py +23 -8
  52. pyedb/dotnet/{edb_core → database}/modeler.py +27 -27
  53. pyedb/dotnet/{edb_core → database}/net_class.py +8 -8
  54. pyedb/dotnet/{edb_core → database}/nets.py +12 -12
  55. pyedb/dotnet/{edb_core → database}/padstack.py +17 -16
  56. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/mesh_operation.py +1 -1
  57. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/settings.py +18 -3
  58. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/sim_setup_info.py +2 -2
  59. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/simulation_settings.py +1 -1
  60. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/siw_dc_ir_settings.py +1 -1
  61. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/sweep_data.py +4 -4
  62. pyedb/dotnet/{edb_core → database}/siwave.py +10 -10
  63. pyedb/dotnet/{edb_core → database}/stackup.py +12 -12
  64. pyedb/dotnet/{edb_core → database}/utilities/hfss_simulation_setup.py +15 -15
  65. pyedb/dotnet/{edb_core → database}/utilities/obj_base.py +1 -1
  66. pyedb/dotnet/{edb_core → database}/utilities/simulation_setup.py +4 -3
  67. pyedb/dotnet/{edb_core → database}/utilities/siwave_simulation_setup.py +6 -6
  68. pyedb/dotnet/edb.py +118 -113
  69. pyedb/extensions/pre_layout_design_toolkit/via_design.py +1151 -0
  70. pyedb/generic/design_types.py +26 -19
  71. pyedb/generic/general_methods.py +1 -1
  72. pyedb/generic/plot.py +0 -2
  73. pyedb/grpc/database/__init__.py +1 -0
  74. pyedb/grpc/database/components.py +2354 -0
  75. pyedb/grpc/database/control_file.py +1277 -0
  76. pyedb/grpc/database/definition/component_def.py +218 -0
  77. pyedb/grpc/database/definition/component_model.py +39 -0
  78. pyedb/grpc/database/definition/component_pin.py +32 -0
  79. pyedb/grpc/database/definition/materials.py +1207 -0
  80. pyedb/grpc/database/definition/n_port_component_model.py +34 -0
  81. pyedb/grpc/database/definition/package_def.py +227 -0
  82. pyedb/grpc/database/definition/padstack_def.py +842 -0
  83. pyedb/grpc/database/definitions.py +70 -0
  84. pyedb/grpc/database/general.py +43 -0
  85. pyedb/grpc/database/geometry/__init__.py +0 -0
  86. pyedb/grpc/database/geometry/arc_data.py +93 -0
  87. pyedb/grpc/database/geometry/point_3d_data.py +79 -0
  88. pyedb/grpc/database/geometry/point_data.py +30 -0
  89. pyedb/grpc/database/geometry/polygon_data.py +133 -0
  90. pyedb/grpc/database/hfss.py +1279 -0
  91. pyedb/grpc/database/hierarchy/__init__.py +0 -0
  92. pyedb/grpc/database/hierarchy/component.py +1301 -0
  93. pyedb/grpc/database/hierarchy/model.py +31 -0
  94. pyedb/grpc/database/hierarchy/netlist_model.py +30 -0
  95. pyedb/grpc/database/hierarchy/pin_pair_model.py +128 -0
  96. pyedb/grpc/database/hierarchy/pingroup.py +245 -0
  97. pyedb/grpc/database/hierarchy/s_parameter_model.py +33 -0
  98. pyedb/grpc/database/hierarchy/spice_model.py +48 -0
  99. pyedb/grpc/database/layers/__init__.py +0 -0
  100. pyedb/grpc/database/layers/layer.py +57 -0
  101. pyedb/grpc/database/layers/stackup_layer.py +410 -0
  102. pyedb/grpc/database/layout/__init__.py +0 -0
  103. pyedb/grpc/database/layout/cell.py +30 -0
  104. pyedb/grpc/database/layout/layout.py +196 -0
  105. pyedb/grpc/database/layout/voltage_regulator.py +149 -0
  106. pyedb/grpc/database/layout_validation.py +319 -0
  107. pyedb/grpc/database/modeler.py +1468 -0
  108. pyedb/grpc/database/net/__init__.py +0 -0
  109. pyedb/grpc/database/net/differential_pair.py +138 -0
  110. pyedb/grpc/database/net/extended_net.py +340 -0
  111. pyedb/grpc/database/net/net.py +198 -0
  112. pyedb/grpc/database/net/net_class.py +93 -0
  113. pyedb/grpc/database/nets.py +633 -0
  114. pyedb/grpc/database/padstacks.py +1500 -0
  115. pyedb/grpc/database/ports/__init__.py +0 -0
  116. pyedb/grpc/database/ports/ports.py +396 -0
  117. pyedb/grpc/database/primitive/__init__.py +3 -0
  118. pyedb/grpc/database/primitive/bondwire.py +181 -0
  119. pyedb/grpc/database/primitive/circle.py +75 -0
  120. pyedb/grpc/database/primitive/padstack_instance.py +1116 -0
  121. pyedb/grpc/database/primitive/path.py +346 -0
  122. pyedb/grpc/database/primitive/polygon.py +276 -0
  123. pyedb/grpc/database/primitive/primitive.py +739 -0
  124. pyedb/grpc/database/primitive/rectangle.py +146 -0
  125. pyedb/grpc/database/simulation_setup/__init__.py +0 -0
  126. pyedb/grpc/database/simulation_setup/adaptive_frequency.py +33 -0
  127. pyedb/grpc/database/simulation_setup/hfss_advanced_meshing_settings.py +32 -0
  128. pyedb/grpc/database/simulation_setup/hfss_advanced_settings.py +59 -0
  129. pyedb/grpc/database/simulation_setup/hfss_dcr_settings.py +35 -0
  130. pyedb/grpc/database/simulation_setup/hfss_general_settings.py +61 -0
  131. pyedb/grpc/database/simulation_setup/hfss_settings_options.py +78 -0
  132. pyedb/grpc/database/simulation_setup/hfss_simulation_settings.py +118 -0
  133. pyedb/grpc/database/simulation_setup/hfss_simulation_setup.py +355 -0
  134. pyedb/grpc/database/simulation_setup/hfss_solver_settings.py +34 -0
  135. pyedb/grpc/database/simulation_setup/mesh_operation.py +34 -0
  136. pyedb/grpc/database/simulation_setup/raptor_x_advanced_settings.py +34 -0
  137. pyedb/grpc/database/simulation_setup/raptor_x_general_settings.py +33 -0
  138. pyedb/grpc/database/simulation_setup/raptor_x_simulation_settings.py +64 -0
  139. pyedb/grpc/database/simulation_setup/raptor_x_simulation_setup.py +125 -0
  140. pyedb/grpc/database/simulation_setup/siwave_dcir_simulation_setup.py +34 -0
  141. pyedb/grpc/database/simulation_setup/siwave_simulation_setup.py +119 -0
  142. pyedb/grpc/database/simulation_setup/sweep_data.py +32 -0
  143. pyedb/grpc/database/siwave.py +1023 -0
  144. pyedb/grpc/database/source_excitations.py +2572 -0
  145. pyedb/grpc/database/stackup.py +2574 -0
  146. pyedb/grpc/database/terminal/__init__.py +0 -0
  147. pyedb/grpc/database/terminal/bundle_terminal.py +218 -0
  148. pyedb/grpc/database/terminal/edge_terminal.py +51 -0
  149. pyedb/grpc/database/terminal/padstack_instance_terminal.py +171 -0
  150. pyedb/grpc/database/terminal/pingroup_terminal.py +162 -0
  151. pyedb/grpc/database/terminal/point_terminal.py +99 -0
  152. pyedb/grpc/database/terminal/terminal.py +470 -0
  153. pyedb/grpc/database/utility/__init__.py +3 -0
  154. pyedb/grpc/database/utility/constants.py +25 -0
  155. pyedb/grpc/database/utility/heat_sink.py +124 -0
  156. pyedb/grpc/database/utility/hfss_extent_info.py +448 -0
  157. pyedb/grpc/database/utility/layout_statistics.py +277 -0
  158. pyedb/grpc/database/utility/rlc.py +80 -0
  159. pyedb/grpc/database/utility/simulation_configuration.py +3305 -0
  160. pyedb/grpc/database/utility/sources.py +388 -0
  161. pyedb/grpc/database/utility/sweep_data_distribution.py +83 -0
  162. pyedb/grpc/database/utility/xml_control_file.py +1277 -0
  163. pyedb/grpc/edb.py +4151 -0
  164. pyedb/grpc/edb_init.py +481 -0
  165. pyedb/grpc/rpc_session.py +177 -0
  166. pyedb/ipc2581/ecad/cad_data/assembly_drawing.py +3 -2
  167. pyedb/ipc2581/ecad/cad_data/feature.py +4 -3
  168. pyedb/ipc2581/ecad/cad_data/layer_feature.py +32 -20
  169. pyedb/ipc2581/ecad/cad_data/outline.py +3 -2
  170. pyedb/ipc2581/ecad/cad_data/package.py +4 -3
  171. pyedb/ipc2581/ecad/cad_data/path.py +82 -31
  172. pyedb/ipc2581/ecad/cad_data/polygon.py +122 -60
  173. pyedb/ipc2581/ecad/cad_data/profile.py +13 -12
  174. pyedb/ipc2581/ecad/cad_data/step.py +52 -20
  175. pyedb/ipc2581/ipc2581.py +47 -49
  176. pyedb/modeler/geometry_operators.py +1 -1
  177. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/METADATA +9 -6
  178. pyedb-0.39.0.dist-info/RECORD +288 -0
  179. pyedb-0.37.0.dist-info/RECORD +0 -194
  180. /pyedb/dotnet/{edb_core → database}/__init__.py +0 -0
  181. /pyedb/dotnet/{application → database/cell}/__init__.py +0 -0
  182. /pyedb/dotnet/{edb_core/cell → database/cell/hierarchy}/__init__.py +0 -0
  183. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/netlist_model.py +0 -0
  184. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/pin_pair_model.py +0 -0
  185. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/s_parameter_model.py +0 -0
  186. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/spice_model.py +0 -0
  187. /pyedb/dotnet/{edb_core → database}/cell/primitive/__init__.py +0 -0
  188. /pyedb/dotnet/{edb_core/cell/hierarchy → database/cell/terminal}/__init__.py +0 -0
  189. /pyedb/dotnet/{edb_core/cell/terminal → database/definition}/__init__.py +0 -0
  190. /pyedb/dotnet/{edb_core/definition → database/dotnet}/__init__.py +0 -0
  191. /pyedb/dotnet/{edb_core/dotnet → database/edb_data}/__init__.py +0 -0
  192. /pyedb/dotnet/{edb_core → database}/edb_data/design_options.py +0 -0
  193. /pyedb/dotnet/{edb_core → database}/edb_data/edbvalue.py +0 -0
  194. /pyedb/dotnet/{edb_core → database}/edb_data/layer_data.py +0 -0
  195. /pyedb/dotnet/{edb_core → database}/edb_data/utilities.py +0 -0
  196. /pyedb/dotnet/{edb_core → database}/general.py +0 -0
  197. /pyedb/dotnet/{edb_core/edb_data → database/geometry}/__init__.py +0 -0
  198. /pyedb/dotnet/{edb_core → database}/geometry/point_data.py +0 -0
  199. /pyedb/dotnet/{edb_core → database}/sim_setup_data/__init__.py +0 -0
  200. /pyedb/dotnet/{edb_core → database}/sim_setup_data/data/__init__.py +0 -0
  201. /pyedb/dotnet/{edb_core → database}/sim_setup_data/data/adaptive_frequency_data.py +0 -0
  202. /pyedb/dotnet/{edb_core/geometry → database/sim_setup_data/io}/__init__.py +0 -0
  203. /pyedb/dotnet/{edb_core → database}/sim_setup_data/io/siwave.py +0 -0
  204. /pyedb/dotnet/{edb_core → database}/utilities/__init__.py +0 -0
  205. /pyedb/dotnet/{edb_core → database}/utilities/heatsink.py +0 -0
  206. /pyedb/{dotnet/edb_core/sim_setup_data/io → grpc/database/definition}/__init__.py +0 -0
  207. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/LICENSE +0 -0
  208. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/WHEEL +0 -0
@@ -279,7 +279,7 @@ class PinGroup(object):
279
279
  @property
280
280
  def pins(self):
281
281
  """Gets the pins belong to this pin group."""
282
- from pyedb.dotnet.edb_core.edb_data.padstacks_data import EDBPadstackInstance
282
+ from pyedb.dotnet.database.edb_data.padstacks_data import EDBPadstackInstance
283
283
 
284
284
  return {i.GetName(): EDBPadstackInstance(i, self._pedb) for i in list(self._edb_object.GetPins())}
285
285
 
@@ -317,7 +317,7 @@ class PinGroup(object):
317
317
  @property
318
318
  def terminal(self):
319
319
  """Terminal."""
320
- from pyedb.dotnet.edb_core.cell.terminal.pingroup_terminal import (
320
+ from pyedb.dotnet.database.cell.terminal.pingroup_terminal import (
321
321
  PinGroupTerminal,
322
322
  )
323
323
 
@@ -335,7 +335,7 @@ class PinGroup(object):
335
335
 
336
336
  Returns
337
337
  -------
338
- :class:`pyedb.dotnet.edb_core.edb_data.terminals.PinGroupTerminal`
338
+ :class:`pyedb.dotnet.database.edb_data.terminals.PinGroupTerminal`
339
339
  """
340
340
  warnings.warn("`_create_terminal` is deprecated. Use `create_terminal` instead.", DeprecationWarning)
341
341
 
@@ -355,7 +355,7 @@ class PinGroup(object):
355
355
  """
356
356
  if not name:
357
357
  name = generate_unique_name(self.name)
358
- from pyedb.dotnet.edb_core.cell.terminal.pingroup_terminal import (
358
+ from pyedb.dotnet.database.cell.terminal.pingroup_terminal import (
359
359
  PinGroupTerminal,
360
360
  )
361
361
 
@@ -65,7 +65,7 @@ class Variable:
65
65
 
66
66
  Returns
67
67
  -------
68
- :class:`pyedb.dotnet.edb_core.edb_data.edbvalue.EdbValue`
68
+ :class:`pyedb.dotnet.database.edb_data.edbvalue.EdbValue`
69
69
  """
70
70
  return self._pedb.get_variable(self.name)
71
71
 
@@ -21,9 +21,9 @@
21
21
  # SOFTWARE.
22
22
  from typing import Union
23
23
 
24
- from pyedb.dotnet.edb_core.general import convert_py_list_to_net_list
25
- from pyedb.dotnet.edb_core.geometry.point_data import PointData
26
- from pyedb.dotnet.edb_core.utilities.obj_base import BBox
24
+ from pyedb.dotnet.database.general import convert_py_list_to_net_list
25
+ from pyedb.dotnet.database.geometry.point_data import PointData
26
+ from pyedb.dotnet.database.utilities.obj_base import BBox
27
27
 
28
28
 
29
29
  class PolygonData:
@@ -68,7 +68,7 @@ class PolygonData:
68
68
  @property
69
69
  def arcs(self):
70
70
  """Get the Primitive Arc Data."""
71
- from pyedb.dotnet.edb_core.edb_data.primitives_data import EDBArcs
71
+ from pyedb.dotnet.database.edb_data.primitives_data import EDBArcs
72
72
 
73
73
  arcs = [EDBArcs(self._pedb, i) for i in self._edb_object.GetArcData()]
74
74
  return arcs
@@ -25,13 +25,13 @@ This module contains the ``EdbHfss`` class.
25
25
  """
26
26
  import math
27
27
 
28
- from pyedb.dotnet.edb_core.edb_data.hfss_extent_info import HfssExtentInfo
29
- from pyedb.dotnet.edb_core.edb_data.ports import BundleWavePort, WavePort
30
- from pyedb.dotnet.edb_core.edb_data.primitives_data import Primitive
31
- from pyedb.dotnet.edb_core.edb_data.simulation_configuration import (
28
+ from pyedb.dotnet.database.edb_data.hfss_extent_info import HfssExtentInfo
29
+ from pyedb.dotnet.database.edb_data.ports import BundleWavePort, WavePort
30
+ from pyedb.dotnet.database.edb_data.primitives_data import Primitive
31
+ from pyedb.dotnet.database.edb_data.simulation_configuration import (
32
32
  SimulationConfiguration,
33
33
  )
34
- from pyedb.dotnet.edb_core.general import (
34
+ from pyedb.dotnet.database.general import (
35
35
  convert_py_list_to_net_list,
36
36
  convert_pytuple_to_nettuple,
37
37
  )
@@ -514,7 +514,7 @@ class EdbHfss(object):
514
514
  Returns
515
515
  -------
516
516
  tuple
517
- The tuple contains: (port_name, pyedb.dotnet.edb_core.edb_data.sources.ExcitationDifferential).
517
+ The tuple contains: (port_name, pyedb.dotnet.database.edb_data.sources.ExcitationDifferential).
518
518
 
519
519
  Examples
520
520
  --------
@@ -584,7 +584,7 @@ class EdbHfss(object):
584
584
  Returns
585
585
  -------
586
586
  tuple
587
- The tuple contains: (port_name, pyedb.egacy.edb_core.edb_data.sources.ExcitationDifferential).
587
+ The tuple contains: (port_name, pyedb.egacy.database.edb_data.sources.ExcitationDifferential).
588
588
 
589
589
  Examples
590
590
  --------
@@ -789,7 +789,7 @@ class EdbHfss(object):
789
789
  Returns
790
790
  -------
791
791
  tuple
792
- The tuple contains: (Port name, pyedb.dotnet.edb_core.edb_data.sources.Excitation).
792
+ The tuple contains: (Port name, pyedb.dotnet.database.edb_data.sources.Excitation).
793
793
 
794
794
  Examples
795
795
  --------
@@ -20,7 +20,7 @@
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  # SOFTWARE.
22
22
 
23
- from pyedb.dotnet.edb_core.utilities.obj_base import ObjBase
23
+ from pyedb.dotnet.database.utilities.obj_base import ObjBase
24
24
 
25
25
 
26
26
  class LayoutObjInstance(ObjBase):
@@ -23,8 +23,8 @@
23
23
  import re
24
24
 
25
25
  from pyedb.dotnet.clr_module import String
26
- from pyedb.dotnet.edb_core.edb_data.padstacks_data import EDBPadstackInstance
27
- from pyedb.dotnet.edb_core.edb_data.primitives_data import Primitive
26
+ from pyedb.dotnet.database.edb_data.padstacks_data import EDBPadstackInstance
27
+ from pyedb.dotnet.database.edb_data.primitives_data import Primitive
28
28
  from pyedb.generic.general_methods import generate_unique_name
29
29
 
30
30
 
@@ -32,7 +32,7 @@ import warnings
32
32
  from pydantic import BaseModel, confloat
33
33
 
34
34
  from pyedb import Edb
35
- from pyedb.dotnet.edb_core.general import convert_py_list_to_net_list
35
+ from pyedb.dotnet.database.general import convert_py_list_to_net_list
36
36
  from pyedb.exceptions import MaterialModelException
37
37
 
38
38
  logger = logging.getLogger(__name__)
@@ -493,7 +493,7 @@ class Materials(object):
493
493
 
494
494
  Returns
495
495
  -------
496
- :class:`pyedb.dotnet.edb_core.materials.Material`
496
+ :class:`pyedb.dotnet.database.materials.Material`
497
497
  """
498
498
  curr_materials = self.materials
499
499
  if name in curr_materials:
@@ -532,7 +532,7 @@ class Materials(object):
532
532
 
533
533
  Returns
534
534
  -------
535
- :class:`pyedb.dotnet.edb_core.materials.Material`
535
+ :class:`pyedb.dotnet.database.materials.Material`
536
536
 
537
537
  """
538
538
  extended_kwargs = {key: value for (key, value) in kwargs.items()}
@@ -555,7 +555,7 @@ class Materials(object):
555
555
 
556
556
  Returns
557
557
  -------
558
- :class:`pyedb.dotnet.edb_core.materials.Material`
558
+ :class:`pyedb.dotnet.database.materials.Material`
559
559
  """
560
560
  extended_kwargs = {key: value for (key, value) in kwargs.items()}
561
561
  extended_kwargs["permittivity"] = permittivity
@@ -589,7 +589,7 @@ class Materials(object):
589
589
 
590
590
  Returns
591
591
  -------
592
- :class:`pyedb.dotnet.edb_core.materials.Material`
592
+ :class:`pyedb.dotnet.database.materials.Material`
593
593
  """
594
594
  curr_materials = self.materials
595
595
  if name in curr_materials:
@@ -657,7 +657,7 @@ class Materials(object):
657
657
 
658
658
  Returns
659
659
  -------
660
- :class:`pyedb.dotnet.edb_core.materials.Material`
660
+ :class:`pyedb.dotnet.database.materials.Material`
661
661
  """
662
662
  curr_materials = self.materials
663
663
  if name in curr_materials:
@@ -711,7 +711,7 @@ class Materials(object):
711
711
 
712
712
  Returns
713
713
  -------
714
- :class:`pyedb.dotnet.edb_core.materials.Material`
714
+ :class:`pyedb.dotnet.database.materials.Material`
715
715
 
716
716
  Examples
717
717
  --------
@@ -786,7 +786,7 @@ class Materials(object):
786
786
 
787
787
  Returns
788
788
  -------
789
- :class:`pyedb.dotnet.edb_core.materials.Material`
789
+ :class:`pyedb.dotnet.database.materials.Material`
790
790
  """
791
791
  curr_materials = self.materials
792
792
  if new_material_name in curr_materials:
@@ -1043,3 +1043,18 @@ class Materials(object):
1043
1043
 
1044
1044
  self.__edb.logger.error(f"Material {material_name} does not exist in syslib AMAT file.")
1045
1045
  return res
1046
+
1047
+ def update_materials_from_sys_library(self, update_all: bool = True, material_name: Union[str, list] = None):
1048
+ """Update material properties from syslib AMAT file."""
1049
+ amat_file = os.path.join(self.__edb.base_path, "syslib", "Materials.amat")
1050
+ materials_dict = self.read_materials(amat_file)
1051
+ if update_all:
1052
+ for name, obj in self.materials.items():
1053
+ if name in materials_dict:
1054
+ obj.update(materials_dict[name])
1055
+ self.__edb.logger.info(f"Material {name} is updated from syslibrary.")
1056
+ else:
1057
+ material_names = material_name if isinstance(material_name, list) else [material_name]
1058
+ for name in material_names:
1059
+ self.materials[name].update(materials_dict[name])
1060
+ self.__edb.logger.info(f"Material {name} is updated from syslibrary.")
@@ -26,11 +26,11 @@ This module contains these classes: `EdbLayout` and `Shape`.
26
26
  import math
27
27
  import warnings
28
28
 
29
- from pyedb.dotnet.edb_core.cell.primitive.bondwire import Bondwire
30
- from pyedb.dotnet.edb_core.dotnet.primitive import CircleDotNet, RectangleDotNet
31
- from pyedb.dotnet.edb_core.edb_data.primitives_data import Primitive, cast
32
- from pyedb.dotnet.edb_core.edb_data.utilities import EDBStatistics
33
- from pyedb.dotnet.edb_core.general import convert_py_list_to_net_list
29
+ from pyedb.dotnet.database.cell.primitive.bondwire import Bondwire
30
+ from pyedb.dotnet.database.dotnet.primitive import CircleDotNet, RectangleDotNet
31
+ from pyedb.dotnet.database.edb_data.primitives_data import Primitive, cast
32
+ from pyedb.dotnet.database.edb_data.utilities import EDBStatistics
33
+ from pyedb.dotnet.database.general import convert_py_list_to_net_list
34
34
 
35
35
 
36
36
  class Modeler(object):
@@ -52,7 +52,7 @@ class Modeler(object):
52
52
 
53
53
  Returns
54
54
  -------
55
- :class:`pyedb.dotnet.edb_core.cell.hierarchy.component.EDBComponent`
55
+ :class:`pyedb.dotnet.database.cell.hierarchy.component.EDBComponent`
56
56
 
57
57
  """
58
58
  for i in self.primitives:
@@ -123,7 +123,7 @@ class Modeler(object):
123
123
 
124
124
  Returns
125
125
  -------
126
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
126
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
127
127
  List of primitives.
128
128
  """
129
129
  for p in self._layout.primitives:
@@ -140,7 +140,7 @@ class Modeler(object):
140
140
 
141
141
  Returns
142
142
  -------
143
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
143
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
144
144
  List of primitives.
145
145
  """
146
146
  return self._pedb.layout.primitives
@@ -202,7 +202,7 @@ class Modeler(object):
202
202
 
203
203
  Returns
204
204
  -------
205
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
205
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
206
206
  List of rectangles.
207
207
 
208
208
  """
@@ -214,7 +214,7 @@ class Modeler(object):
214
214
 
215
215
  Returns
216
216
  -------
217
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
217
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
218
218
  List of circles.
219
219
 
220
220
  """
@@ -226,7 +226,7 @@ class Modeler(object):
226
226
 
227
227
  Returns
228
228
  -------
229
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
229
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
230
230
  List of paths.
231
231
  """
232
232
  return [i for i in self.primitives if i.primitive_type == "path"]
@@ -237,7 +237,7 @@ class Modeler(object):
237
237
 
238
238
  Returns
239
239
  -------
240
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
240
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
241
241
  List of polygons.
242
242
  """
243
243
  return [i for i in self.primitives if i.primitive_type == "polygon"]
@@ -282,7 +282,7 @@ class Modeler(object):
282
282
 
283
283
  Returns
284
284
  -------
285
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
285
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
286
286
  List of primitives, polygons, paths and rectangles.
287
287
  """
288
288
  if isinstance(layer, str) and layer not in list(self._pedb.stackup.signal_layers.keys()):
@@ -339,8 +339,8 @@ class Modeler(object):
339
339
 
340
340
  Examples
341
341
  --------
342
- >>> poly = edb_core.modeler.get_polygons_by_layer("GND")
343
- >>> bounding = edb_core.modeler.get_polygon_bounding_box(poly[0])
342
+ >>> poly = database.modeler.get_polygons_by_layer("GND")
343
+ >>> bounding = database.modeler.get_polygon_bounding_box(poly[0])
344
344
  """
345
345
  bounding = []
346
346
  try:
@@ -364,7 +364,7 @@ class Modeler(object):
364
364
  Parameters
365
365
  ----------
366
366
  polygon :
367
- class: `dotnet.edb_core.edb_data.primitives_data.Primitive`
367
+ class: `dotnet.database.edb_data.primitives_data.Primitive`
368
368
 
369
369
  Returns
370
370
  -------
@@ -378,8 +378,8 @@ class Modeler(object):
378
378
  Examples
379
379
  --------
380
380
 
381
- >>> poly = edb_core.modeler.get_polygons_by_layer("GND")
382
- >>> points = edb_core.modeler.get_polygon_points(poly[0])
381
+ >>> poly = database.modeler.get_polygons_by_layer("GND")
382
+ >>> points = database.modeler.get_polygon_points(poly[0])
383
383
 
384
384
  """
385
385
  points = []
@@ -499,7 +499,7 @@ class Modeler(object):
499
499
 
500
500
  Parameters
501
501
  ----------
502
- path_list : :class:`dotnet.edb_core.layout.Shape`
502
+ path_list : :class:`dotnet.database.layout.Shape`
503
503
  List of points.
504
504
  layer_name : str
505
505
  Name of the layer on which to create the path.
@@ -521,7 +521,7 @@ class Modeler(object):
521
521
 
522
522
  Returns
523
523
  -------
524
- :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
524
+ :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
525
525
  ``True`` when successful, ``False`` when failed.
526
526
  """
527
527
  net = self._pedb.nets.find_or_create_net(net_name)
@@ -600,7 +600,7 @@ class Modeler(object):
600
600
 
601
601
  Returns
602
602
  -------
603
- :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
603
+ :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
604
604
  """
605
605
  path = self.Shape("Polygon", points=path_list)
606
606
  primitive = self._create_path(
@@ -635,7 +635,7 @@ class Modeler(object):
635
635
 
636
636
  Returns
637
637
  -------
638
- bool, :class:`dotnet.edb_core.edb_data.primitives.Primitive`
638
+ bool, :class:`dotnet.database.edb_data.primitives.Primitive`
639
639
  Polygon when successful, ``False`` when failed.
640
640
  """
641
641
  net = self._pedb.nets.find_or_create_net(net_name)
@@ -705,7 +705,7 @@ class Modeler(object):
705
705
 
706
706
  Returns
707
707
  -------
708
- :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
708
+ :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
709
709
  """
710
710
  warnings.warn(
711
711
  "Use :func:`create_polygon` method instead. It now supports point lists as arguments.", DeprecationWarning
@@ -753,7 +753,7 @@ class Modeler(object):
753
753
 
754
754
  Returns
755
755
  -------
756
- :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
756
+ :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
757
757
  Rectangle when successful, ``False`` when failed.
758
758
  """
759
759
  edb_net = self._pedb.nets.find_or_create_net(net_name)
@@ -808,7 +808,7 @@ class Modeler(object):
808
808
 
809
809
  Returns
810
810
  -------
811
- :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.Primitive`
811
+ :class:`pyedb.dotnet.database.edb_data.primitives_data.Primitive`
812
812
  Objects of the circle created when successful.
813
813
  """
814
814
  edb_net = self._pedb.nets.find_or_create_net(net_name)
@@ -947,7 +947,7 @@ class Modeler(object):
947
947
 
948
948
  Parameters
949
949
  ----------
950
- shape : :class:`pyedb.dotnet.edb_core.modeler.Modeler.Shape`
950
+ shape : :class:`pyedb.dotnet.database.modeler.Modeler.Shape`
951
951
  Type of the shape to convert. Options are ``"rectangle"`` and ``"polygon"``.
952
952
  """
953
953
  if shape.type == "polygon":
@@ -1386,7 +1386,7 @@ class Modeler(object):
1386
1386
 
1387
1387
  Returns
1388
1388
  -------
1389
- :class:`pyedb.dotnet.edb_core.dotnet.primitive.BondwireDotNet`
1389
+ :class:`pyedb.dotnet.database.dotnet.primitive.BondwireDotNet`
1390
1390
  Bondwire object created.
1391
1391
  """
1392
1392
 
@@ -24,7 +24,7 @@ from __future__ import absolute_import # noreorder
24
24
 
25
25
  import re
26
26
 
27
- from pyedb.dotnet.edb_core.edb_data.nets_data import (
27
+ from pyedb.dotnet.database.edb_data.nets_data import (
28
28
  EDBDifferentialPairData,
29
29
  EDBExtendedNetData,
30
30
  EDBNetClassData,
@@ -59,7 +59,7 @@ class EdbCommon:
59
59
 
60
60
  Returns
61
61
  -------
62
- :class:` :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBExtendedNetsData`
62
+ :class:` :class:`pyedb.dotnet.database.edb_data.nets_data.EDBExtendedNetsData`
63
63
 
64
64
  """
65
65
  if name in self.items:
@@ -86,7 +86,7 @@ class EdbNetClasses(EdbCommon, object):
86
86
 
87
87
  Returns
88
88
  -------
89
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBDifferentialPairData`]
89
+ dict[str, :class:`pyedb.dotnet.database.edb_data.nets_data.EDBDifferentialPairData`]
90
90
  Dictionary of extended nets.
91
91
  """
92
92
  temp = {}
@@ -107,7 +107,7 @@ class EdbNetClasses(EdbCommon, object):
107
107
 
108
108
  Returns
109
109
  -------
110
- :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBNetClassData`
110
+ :class:`pyedb.dotnet.database.edb_data.nets_data.EDBNetClassData`
111
111
  """
112
112
  if name in self.items:
113
113
  self._pedb.logger.error("{} already exists.".format(name))
@@ -142,7 +142,7 @@ class EdbExtendedNets(EdbCommon, object):
142
142
 
143
143
  Returns
144
144
  -------
145
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBExtendedNetsData`]
145
+ dict[str, :class:`pyedb.dotnet.database.edb_data.nets_data.EDBExtendedNetsData`]
146
146
  Dictionary of extended nets.
147
147
  """
148
148
  nets = {}
@@ -163,7 +163,7 @@ class EdbExtendedNets(EdbCommon, object):
163
163
 
164
164
  Returns
165
165
  -------
166
- :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBExtendedNetsData`
166
+ :class:`pyedb.dotnet.database.edb_data.nets_data.EDBExtendedNetsData`
167
167
  """
168
168
  if name in self.items:
169
169
  self._pedb.logger.error("{} already exists.".format(name))
@@ -267,7 +267,7 @@ class EdbDifferentialPairs(EdbCommon, object):
267
267
 
268
268
  Returns
269
269
  -------
270
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBDifferentialPairData`]
270
+ dict[str, :class:`pyedb.dotnet.database.edb_data.nets_data.EDBDifferentialPairData`]
271
271
  Dictionary of extended nets.
272
272
  """
273
273
  diff_pairs = {}
@@ -290,7 +290,7 @@ class EdbDifferentialPairs(EdbCommon, object):
290
290
 
291
291
  Returns
292
292
  -------
293
- :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBDifferentialPairData`
293
+ :class:`pyedb.dotnet.database.edb_data.nets_data.EDBDifferentialPairData`
294
294
  """
295
295
  if name in self.items:
296
296
  self._pedb.logger.error("{} already exists.".format(name))
@@ -25,7 +25,7 @@ from __future__ import absolute_import # noreorder
25
25
  import warnings
26
26
 
27
27
  from pyedb.common.nets import CommonNets
28
- from pyedb.dotnet.edb_core.edb_data.nets_data import EDBNetsData
28
+ from pyedb.dotnet.database.edb_data.nets_data import EDBNetsData
29
29
  from pyedb.generic.general_methods import generate_unique_name
30
30
  from pyedb.misc.utilities import compute_arc_points
31
31
 
@@ -49,7 +49,7 @@ class EdbNets(CommonNets):
49
49
 
50
50
  Returns
51
51
  -------
52
- :class:` :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBNetsData`
52
+ :class:` :class:`pyedb.dotnet.database.edb_data.nets_data.EDBNetsData`
53
53
 
54
54
  """
55
55
  return self._pedb.layout.find_net_by_name(name)
@@ -70,7 +70,7 @@ class EdbNets(CommonNets):
70
70
  return name in self.nets
71
71
 
72
72
  def __init__(self, p_edb):
73
- self._pedb = p_edb
73
+ CommonNets.__init__(self, p_edb)
74
74
  self._nets_by_comp_dict = {}
75
75
  self._comps_by_nets_dict = {}
76
76
 
@@ -110,7 +110,7 @@ class EdbNets(CommonNets):
110
110
 
111
111
  Returns
112
112
  -------
113
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBNetsData`]
113
+ dict[str, :class:`pyedb.dotnet.database.edb_data.nets_data.EDBNetsData`]
114
114
  Dictionary of nets.
115
115
  """
116
116
  return {i.name: i for i in self._pedb.layout.nets}
@@ -135,7 +135,7 @@ class EdbNets(CommonNets):
135
135
 
136
136
  Returns
137
137
  -------
138
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.EDBNetsData`]
138
+ dict[str, :class:`pyedb.dotnet.database.edb_data.EDBNetsData`]
139
139
  Dictionary of signal nets.
140
140
  """
141
141
  warnings.warn("Use :func:`signal` instead.", DeprecationWarning)
@@ -150,7 +150,7 @@ class EdbNets(CommonNets):
150
150
 
151
151
  Returns
152
152
  -------
153
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.EDBNetsData`]
153
+ dict[str, :class:`pyedb.dotnet.database.edb_data.EDBNetsData`]
154
154
  Dictionary of power nets.
155
155
  """
156
156
  warnings.warn("Use :func:`power` instead.", DeprecationWarning)
@@ -162,7 +162,7 @@ class EdbNets(CommonNets):
162
162
 
163
163
  Returns
164
164
  -------
165
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.EDBNetsData`]
165
+ dict[str, :class:`pyedb.dotnet.database.edb_data.EDBNetsData`]
166
166
  Dictionary of signal nets.
167
167
  """
168
168
  nets = {}
@@ -177,7 +177,7 @@ class EdbNets(CommonNets):
177
177
 
178
178
  Returns
179
179
  -------
180
- dict[str, :class:`pyedb.dotnet.edb_core.edb_data.EDBNetsData`]
180
+ dict[str, :class:`pyedb.dotnet.database.edb_data.EDBNetsData`]
181
181
  Dictionary of power nets.
182
182
  """
183
183
  nets = {}
@@ -197,7 +197,7 @@ class EdbNets(CommonNets):
197
197
 
198
198
  Returns
199
199
  -------
200
- list of :class:`pyedb.dotnet.edb_core.edb_data.EDBNetsData`
200
+ list of :class:`pyedb.dotnet.database.edb_data.EDBNetsData`
201
201
  """
202
202
  pwr_gnd_nets = []
203
203
  for net in self._layout.nets[:]:
@@ -564,7 +564,7 @@ class EdbNets(CommonNets):
564
564
  Examples
565
565
  --------
566
566
 
567
- >>> deleted_nets = edb_core.nets.delete(["Net1","Net2"])
567
+ >>> deleted_nets = database.nets.delete(["Net1","Net2"])
568
568
  """
569
569
  warnings.warn("Use :func:`delete` method instead.", DeprecationWarning)
570
570
  return self.delete(netlist=netlist)
@@ -585,7 +585,7 @@ class EdbNets(CommonNets):
585
585
  Examples
586
586
  --------
587
587
 
588
- >>> deleted_nets = edb_core.nets.delete(["Net1","Net2"])
588
+ >>> deleted_nets = database.nets.delete(["Net1","Net2"])
589
589
  """
590
590
  if isinstance(netlist, str):
591
591
  netlist = [netlist]
@@ -726,7 +726,7 @@ class EdbNets(CommonNets):
726
726
  Examples
727
727
  --------
728
728
 
729
- >>> renamed_nets = edb_core.nets.find_and_fix_disjoint_nets(["GND","Net2"])
729
+ >>> renamed_nets = database.nets.find_and_fix_disjoint_nets(["GND","Net2"])
730
730
  """
731
731
  warnings.warn("Use new function :func:`edb.layout_validation.disjoint_nets` instead.", DeprecationWarning)
732
732
  return self._pedb.layout_validation.disjoint_nets(