pyedb 0.54.0__py3-none-any.whl → 0.56.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.
- pyedb/__init__.py +1 -8
- pyedb/configuration/cfg_boundaries.py +69 -151
- pyedb/configuration/cfg_components.py +201 -460
- pyedb/configuration/cfg_data.py +4 -2
- pyedb/configuration/cfg_general.py +13 -36
- pyedb/configuration/cfg_modeler.py +2 -1
- pyedb/configuration/cfg_nets.py +21 -35
- pyedb/configuration/cfg_operations.py +22 -151
- pyedb/configuration/cfg_package_definition.py +56 -112
- pyedb/configuration/cfg_padstacks.py +292 -688
- pyedb/configuration/cfg_pin_groups.py +32 -79
- pyedb/configuration/cfg_ports_sources.py +19 -6
- pyedb/configuration/cfg_s_parameter_models.py +67 -172
- pyedb/configuration/cfg_setup.py +102 -295
- pyedb/configuration/configuration.py +64 -5
- pyedb/dotnet/database/Variables.py +26 -19
- pyedb/dotnet/database/cell/connectable.py +38 -9
- pyedb/dotnet/database/cell/hierarchy/component.py +28 -28
- pyedb/dotnet/database/cell/hierarchy/model.py +1 -1
- pyedb/dotnet/database/cell/layout.py +63 -2
- pyedb/dotnet/database/cell/layout_obj.py +2 -2
- pyedb/dotnet/database/cell/primitive/path.py +6 -8
- pyedb/dotnet/database/cell/primitive/primitive.py +3 -24
- pyedb/dotnet/database/cell/terminal/edge_terminal.py +2 -2
- pyedb/dotnet/database/cell/terminal/padstack_instance_terminal.py +1 -1
- pyedb/dotnet/database/cell/terminal/pingroup_terminal.py +1 -1
- pyedb/dotnet/database/cell/terminal/point_terminal.py +1 -1
- pyedb/dotnet/database/cell/terminal/terminal.py +24 -24
- pyedb/dotnet/database/cell/voltage_regulator.py +0 -21
- pyedb/dotnet/database/components.py +137 -124
- pyedb/dotnet/database/definition/component_def.py +4 -4
- pyedb/dotnet/database/definition/component_model.py +1 -1
- pyedb/dotnet/database/definition/package_def.py +2 -3
- pyedb/dotnet/database/dotnet/database.py +3 -199
- pyedb/dotnet/database/dotnet/primitive.py +3 -3
- pyedb/dotnet/database/edb_data/control_file.py +5 -5
- pyedb/dotnet/database/edb_data/hfss_extent_info.py +6 -6
- pyedb/dotnet/database/edb_data/layer_data.py +23 -23
- pyedb/dotnet/database/edb_data/padstacks_data.py +63 -88
- pyedb/dotnet/database/edb_data/primitives_data.py +5 -5
- pyedb/dotnet/database/edb_data/sources.py +6 -6
- pyedb/dotnet/database/edb_data/variables.py +1 -1
- pyedb/dotnet/database/geometry/point_data.py +14 -10
- pyedb/dotnet/database/geometry/polygon_data.py +3 -3
- pyedb/dotnet/database/hfss.py +46 -48
- pyedb/dotnet/database/layout_validation.py +14 -11
- pyedb/dotnet/database/materials.py +10 -11
- pyedb/dotnet/database/modeler.py +97 -91
- pyedb/dotnet/database/nets.py +19 -22
- pyedb/dotnet/database/padstack.py +171 -83
- pyedb/dotnet/database/siwave.py +42 -42
- pyedb/dotnet/database/stackup.py +140 -72
- pyedb/dotnet/database/utilities/heatsink.py +4 -4
- pyedb/dotnet/database/utilities/obj_base.py +2 -2
- pyedb/dotnet/database/utilities/simulation_setup.py +2 -2
- pyedb/dotnet/database/utilities/value.py +16 -16
- pyedb/dotnet/edb.py +230 -152
- pyedb/edb_logger.py +12 -27
- pyedb/extensions/create_cell_array.py +394 -0
- pyedb/extensions/via_design_backend.py +6 -3
- pyedb/generic/data_handlers.py +6 -7
- pyedb/generic/design_types.py +81 -30
- pyedb/generic/filesystem.py +5 -2
- pyedb/generic/general_methods.py +2 -122
- pyedb/generic/process.py +44 -108
- pyedb/generic/settings.py +79 -19
- pyedb/grpc/database/components.py +26 -4
- pyedb/grpc/database/control_file.py +5 -5
- pyedb/grpc/database/definition/materials.py +1 -1
- pyedb/grpc/database/definition/package_def.py +3 -3
- pyedb/grpc/database/definition/padstack_def.py +53 -0
- pyedb/grpc/database/geometry/polygon_data.py +1 -1
- pyedb/grpc/database/layout/layout.py +81 -5
- pyedb/grpc/database/layout_validation.py +5 -5
- pyedb/grpc/database/modeler.py +24 -16
- pyedb/grpc/database/net/net.py +15 -14
- pyedb/grpc/database/nets.py +70 -0
- pyedb/grpc/database/padstacks.py +122 -17
- pyedb/grpc/database/primitive/padstack_instance.py +175 -7
- pyedb/grpc/database/primitive/polygon.py +2 -2
- pyedb/grpc/database/simulation_setup/siwave_cpa_simulation_setup.py +3 -2
- pyedb/grpc/database/siwave.py +1 -1
- pyedb/grpc/database/source_excitations.py +12 -5
- pyedb/grpc/database/stackup.py +1 -1
- pyedb/grpc/database/terminal/bundle_terminal.py +1 -1
- pyedb/grpc/database/terminal/padstack_instance_terminal.py +1 -1
- pyedb/grpc/database/terminal/pingroup_terminal.py +1 -1
- pyedb/grpc/database/utility/value.py +1 -0
- pyedb/grpc/database/utility/xml_control_file.py +5 -5
- pyedb/grpc/edb.py +80 -30
- pyedb/grpc/edb_init.py +3 -3
- pyedb/grpc/rpc_session.py +14 -13
- pyedb/libraries/common.py +366 -0
- pyedb/libraries/rf_libraries/base_functions.py +1358 -0
- pyedb/libraries/rf_libraries/planar_antennas.py +628 -0
- pyedb/misc/decorators.py +61 -0
- pyedb/misc/misc.py +0 -13
- pyedb/modeler/geometry_operators.py +6 -6
- pyedb/siwave.py +6 -8
- pyedb/siwave_core/__init__.py +0 -0
- pyedb/siwave_core/cpa/__init__.py +0 -0
- {pyedb-0.54.0.dist-info → pyedb-0.56.0.dist-info}/METADATA +1 -2
- {pyedb-0.54.0.dist-info → pyedb-0.56.0.dist-info}/RECORD +105 -98
- {pyedb-0.54.0.dist-info → pyedb-0.56.0.dist-info}/WHEEL +0 -0
- {pyedb-0.54.0.dist-info → pyedb-0.56.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -34,26 +34,26 @@ class Terminal(Connectable):
|
|
|
34
34
|
self._reference_object = None
|
|
35
35
|
|
|
36
36
|
self._boundary_type_mapping = {
|
|
37
|
-
"InvalidBoundary": self._pedb.core.
|
|
38
|
-
"PortBoundary": self._pedb.core.
|
|
39
|
-
"PecBoundary": self._pedb.core.
|
|
40
|
-
"RlcBoundary": self._pedb.core.
|
|
41
|
-
"kCurrentSource": self._pedb.core.
|
|
42
|
-
"kVoltageSource": self._pedb.core.
|
|
43
|
-
"kNexximGround": self._pedb.core.
|
|
44
|
-
"kNexximPort": self._pedb.core.
|
|
45
|
-
"kDcTerminal": self._pedb.core.
|
|
46
|
-
"kVoltageProbe": self._pedb.core.
|
|
37
|
+
"InvalidBoundary": self._pedb.core.Cell.Terminal.BoundaryType.InvalidBoundary,
|
|
38
|
+
"PortBoundary": self._pedb.core.Cell.Terminal.BoundaryType.PortBoundary,
|
|
39
|
+
"PecBoundary": self._pedb.core.Cell.Terminal.BoundaryType.PecBoundary,
|
|
40
|
+
"RlcBoundary": self._pedb.core.Cell.Terminal.BoundaryType.RlcBoundary,
|
|
41
|
+
"kCurrentSource": self._pedb.core.Cell.Terminal.BoundaryType.kCurrentSource,
|
|
42
|
+
"kVoltageSource": self._pedb.core.Cell.Terminal.BoundaryType.kVoltageSource,
|
|
43
|
+
"kNexximGround": self._pedb.core.Cell.Terminal.BoundaryType.kNexximGround,
|
|
44
|
+
"kNexximPort": self._pedb.core.Cell.Terminal.BoundaryType.kNexximPort,
|
|
45
|
+
"kDcTerminal": self._pedb.core.Cell.Terminal.BoundaryType.kDcTerminal,
|
|
46
|
+
"kVoltageProbe": self._pedb.core.Cell.Terminal.BoundaryType.kVoltageProbe,
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
self._terminal_type_mapping = {
|
|
50
|
-
"InvalidTerminal": self._pedb.core.
|
|
51
|
-
"EdgeTerminal": self._pedb.core.
|
|
52
|
-
"PointTerminal": self._pedb.core.
|
|
53
|
-
"TerminalInstanceTerminal": self._pedb.core.
|
|
54
|
-
"PadstackInstanceTerminal": self._pedb.core.
|
|
55
|
-
"BundleTerminal": self._pedb.core.
|
|
56
|
-
"PinGroupTerminal": self._pedb.core.
|
|
50
|
+
"InvalidTerminal": self._pedb.core.Cell.Terminal.TerminalType.InvalidTerminal,
|
|
51
|
+
"EdgeTerminal": self._pedb.core.Cell.Terminal.TerminalType.EdgeTerminal,
|
|
52
|
+
"PointTerminal": self._pedb.core.Cell.Terminal.TerminalType.PointTerminal,
|
|
53
|
+
"TerminalInstanceTerminal": self._pedb.core.Cell.Terminal.TerminalType.TerminalInstanceTerminal,
|
|
54
|
+
"PadstackInstanceTerminal": self._pedb.core.Cell.Terminal.TerminalType.PadstackInstanceTerminal,
|
|
55
|
+
"BundleTerminal": self._pedb.core.Cell.Terminal.TerminalType.BundleTerminal,
|
|
56
|
+
"PinGroupTerminal": self._pedb.core.Cell.Terminal.TerminalType.PinGroupTerminal,
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
@property
|
|
@@ -240,10 +240,10 @@ class Terminal(Connectable):
|
|
|
240
240
|
if not self._reference_object:
|
|
241
241
|
term = self._edb_object
|
|
242
242
|
|
|
243
|
-
if self.terminal_type == self._pedb.core.
|
|
243
|
+
if self.terminal_type == self._pedb.core.Cell.Terminal.TerminalType.EdgeTerminal:
|
|
244
244
|
edges = self._edb_object.GetEdges()
|
|
245
245
|
edgeType = edges[0].GetEdgeType()
|
|
246
|
-
if edgeType == self._pedb.core.
|
|
246
|
+
if edgeType == self._pedb.core.Cell.Terminal.EdgeType.PadEdge:
|
|
247
247
|
self._reference_object = self.get_pad_edge_terminal_reference_pin()
|
|
248
248
|
else:
|
|
249
249
|
self._reference_object = self.get_edge_terminal_reference_primitive()
|
|
@@ -304,14 +304,14 @@ class Terminal(Connectable):
|
|
|
304
304
|
"""
|
|
305
305
|
|
|
306
306
|
refTerm = self._edb_object.GetReferenceTerminal()
|
|
307
|
-
if self._edb_object.GetTerminalType() == self._pedb.core.
|
|
307
|
+
if self._edb_object.GetTerminalType() == self._pedb.core.Cell.Terminal.TerminalType.PinGroupTerminal:
|
|
308
308
|
padStackInstance = self._edb_object.GetPinGroup().GetPins()[0]
|
|
309
309
|
pingroup = refTerm.GetPinGroup()
|
|
310
310
|
refPinList = pingroup.GetPins()
|
|
311
311
|
return self._get_closest_pin(padStackInstance, refPinList, gnd_net_name_preference)
|
|
312
|
-
elif self._edb_object.GetTerminalType() == self._pedb.core.
|
|
312
|
+
elif self._edb_object.GetTerminalType() == self._pedb.core.Cell.Terminal.TerminalType.PadstackInstanceTerminal:
|
|
313
313
|
_, padStackInstance, _ = self._edb_object.GetParameters()
|
|
314
|
-
if refTerm.GetTerminalType() == self._pedb.core.
|
|
314
|
+
if refTerm.GetTerminalType() == self._pedb.core.Cell.Terminal.TerminalType.PinGroupTerminal:
|
|
315
315
|
pingroup = refTerm.GetPinGroup()
|
|
316
316
|
refPinList = pingroup.GetPins()
|
|
317
317
|
return self._get_closest_pin(padStackInstance, refPinList, gnd_net_name_preference)
|
|
@@ -434,7 +434,7 @@ class Terminal(Connectable):
|
|
|
434
434
|
|
|
435
435
|
@magnitude.setter
|
|
436
436
|
def magnitude(self, value):
|
|
437
|
-
self._edb_object.SetSourceAmplitude(self._edb.
|
|
437
|
+
self._edb_object.SetSourceAmplitude(self._edb.Utility.Value(value))
|
|
438
438
|
|
|
439
439
|
@property
|
|
440
440
|
def phase(self):
|
|
@@ -443,4 +443,4 @@ class Terminal(Connectable):
|
|
|
443
443
|
|
|
444
444
|
@phase.setter
|
|
445
445
|
def phase(self, value):
|
|
446
|
-
self._edb_object.SetSourcePhase(self._edb.
|
|
446
|
+
self._edb_object.SetSourcePhase(self._edb.Utility.Value(value))
|
|
@@ -30,27 +30,6 @@ class VoltageRegulator(Connectable):
|
|
|
30
30
|
def __init__(self, pedb, edb_object=None):
|
|
31
31
|
super().__init__(pedb, edb_object)
|
|
32
32
|
|
|
33
|
-
@property
|
|
34
|
-
def component(self):
|
|
35
|
-
"""Retrieve voltage regulator component"""
|
|
36
|
-
if not self._edb_object.GetComponent().IsNull():
|
|
37
|
-
ref_des = self._edb_object.GetComponent().GetName()
|
|
38
|
-
if not ref_des:
|
|
39
|
-
return False
|
|
40
|
-
return self._pedb.components.instances[ref_des]
|
|
41
|
-
self._pedb.logger.warning("No voltage regulator component.")
|
|
42
|
-
return False
|
|
43
|
-
|
|
44
|
-
@component.setter
|
|
45
|
-
def component(self, value):
|
|
46
|
-
if not isinstance(value, str):
|
|
47
|
-
self._pedb.logger.error("refdes name must be provided to set vrm component")
|
|
48
|
-
return
|
|
49
|
-
if value not in self._pedb.components.instances:
|
|
50
|
-
self._pedb.logger.error(f"component {value} not found in layout")
|
|
51
|
-
return
|
|
52
|
-
self._edb_object.SetGroup(self._pedb.components.instances[value]._edb_object)
|
|
53
|
-
|
|
54
33
|
@property
|
|
55
34
|
def load_regulator_current(self):
|
|
56
35
|
"""Retrieve load regulator current value"""
|