pyedb 0.50.1__py3-none-any.whl → 0.52.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 -1
- pyedb/configuration/cfg_ports_sources.py +79 -239
- pyedb/configuration/configuration.py +213 -340
- pyedb/dotnet/clr_module.py +9 -3
- pyedb/dotnet/database/cell/layout.py +10 -1
- pyedb/dotnet/database/dotnet/database.py +0 -2
- pyedb/dotnet/database/edb_data/padstacks_data.py +8 -2
- pyedb/dotnet/database/layout_validation.py +20 -26
- pyedb/dotnet/database/modeler.py +0 -1
- pyedb/dotnet/database/stackup.py +4 -3
- pyedb/dotnet/edb.py +42 -2
- pyedb/generic/design_types.py +183 -62
- pyedb/grpc/database/__init__.py +0 -1
- pyedb/grpc/database/components.py +110 -0
- pyedb/grpc/database/control_file.py +150 -17
- pyedb/grpc/database/definition/materials.py +7 -7
- pyedb/grpc/database/definitions.py +36 -2
- pyedb/grpc/database/hfss.py +15 -0
- pyedb/grpc/database/hierarchy/component.py +10 -2
- pyedb/grpc/database/hierarchy/pin_pair_model.py +1 -1
- pyedb/grpc/database/layout_validation.py +58 -7
- pyedb/grpc/database/net/differential_pair.py +2 -1
- pyedb/grpc/database/nets.py +233 -4
- pyedb/grpc/database/padstacks.py +97 -0
- pyedb/grpc/database/primitive/padstack_instance.py +1 -1
- pyedb/grpc/database/primitive/polygon.py +1 -1
- pyedb/grpc/database/siwave.py +63 -3
- pyedb/grpc/database/source_excitations.py +317 -50
- pyedb/grpc/database/stackup.py +107 -2
- pyedb/grpc/database/terminal/point_terminal.py +2 -2
- pyedb/grpc/database/terminal/terminal.py +1 -1
- pyedb/grpc/edb.py +190 -224
- pyedb/grpc/edb_init.py +54 -5
- {pyedb-0.50.1.dist-info → pyedb-0.52.0.dist-info}/METADATA +4 -4
- {pyedb-0.50.1.dist-info → pyedb-0.52.0.dist-info}/RECORD +37 -37
- {pyedb-0.50.1.dist-info → pyedb-0.52.0.dist-info}/LICENSE +0 -0
- {pyedb-0.50.1.dist-info → pyedb-0.52.0.dist-info}/WHEEL +0 -0
pyedb/grpc/database/siwave.py
CHANGED
|
@@ -89,17 +89,38 @@ class Siwave(object):
|
|
|
89
89
|
|
|
90
90
|
@property
|
|
91
91
|
def excitations(self):
|
|
92
|
-
"""Excitation sources in the layout.
|
|
92
|
+
"""Excitation sources in the layout.
|
|
93
|
+
|
|
94
|
+
Examples
|
|
95
|
+
--------
|
|
96
|
+
>>> from pyedb import Edb
|
|
97
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
98
|
+
>>> excitations = edbapp.siwave.excitations
|
|
99
|
+
"""
|
|
93
100
|
return self._pedb.excitations
|
|
94
101
|
|
|
95
102
|
@property
|
|
96
103
|
def sources(self):
|
|
97
|
-
"""All sources in the layout.
|
|
104
|
+
"""All sources in the layout.
|
|
105
|
+
|
|
106
|
+
Examples
|
|
107
|
+
--------
|
|
108
|
+
>>> from pyedb import Edb
|
|
109
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
110
|
+
>>> sources = edbapp.siwave.sources
|
|
111
|
+
"""
|
|
98
112
|
return self._pedb.sources
|
|
99
113
|
|
|
100
114
|
@property
|
|
101
115
|
def probes(self):
|
|
102
|
-
"""All probes in the layout.
|
|
116
|
+
"""All probes in the layout.
|
|
117
|
+
|
|
118
|
+
Examples
|
|
119
|
+
--------
|
|
120
|
+
>>> from pyedb import Edb
|
|
121
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
122
|
+
>>> probes = edbapp.siwave.probes
|
|
123
|
+
"""
|
|
103
124
|
return self._pedb.probes
|
|
104
125
|
|
|
105
126
|
@property
|
|
@@ -110,6 +131,14 @@ class Siwave(object):
|
|
|
110
131
|
-------
|
|
111
132
|
dict
|
|
112
133
|
Dictionary of pin groups with names as keys and pin group objects as values.
|
|
134
|
+
|
|
135
|
+
Examples
|
|
136
|
+
--------
|
|
137
|
+
>>> from pyedb import Edb
|
|
138
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
139
|
+
>>> pin_groups = edbapp.siwave.pin_groups
|
|
140
|
+
>>> for name, group in pin_groups.items():
|
|
141
|
+
... print(f"Pin group {name} has {len(group.pins)} pins")
|
|
113
142
|
"""
|
|
114
143
|
_pingroups = {}
|
|
115
144
|
for el in self._pedb.layout.pin_groups:
|
|
@@ -516,6 +545,19 @@ class Siwave(object):
|
|
|
516
545
|
-------
|
|
517
546
|
bool
|
|
518
547
|
``True`` if file was created, ``False`` otherwise.
|
|
548
|
+
|
|
549
|
+
Examples
|
|
550
|
+
--------
|
|
551
|
+
>>> from pyedb import Edb
|
|
552
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
553
|
+
>>> # Create exec file with AC and SYZ options
|
|
554
|
+
>>> success = edbapp.siwave.create_exec_file(add_ac=True, add_syz=True)
|
|
555
|
+
>>> # Create exec file with Touchstone export
|
|
556
|
+
>>> success = edbapp.siwave.create_exec_file(
|
|
557
|
+
... add_ac=True,
|
|
558
|
+
... export_touchstone=True,
|
|
559
|
+
... touchstone_file_path="C:/temp/my_touchstone.s2p"
|
|
560
|
+
... )
|
|
519
561
|
"""
|
|
520
562
|
workdir = os.path.dirname(self._pedb.edbpath)
|
|
521
563
|
file_name = os.path.join(workdir, os.path.splitext(os.path.basename(self._pedb.edbpath))[0] + ".exec")
|
|
@@ -576,6 +618,24 @@ class Siwave(object):
|
|
|
576
618
|
-------
|
|
577
619
|
:class:`pyedb.dotnet.database.edb_data.siwave_simulation_setup_data.SiwaveSYZSimulationSetup`
|
|
578
620
|
Setup object class.
|
|
621
|
+
|
|
622
|
+
Examples
|
|
623
|
+
--------
|
|
624
|
+
>>> from pyedb import Edb
|
|
625
|
+
>>> edbapp = Edb("myaedbfolder", edbversion="2021.2")
|
|
626
|
+
>>> # Add SYZ analysis with linear sweep from 1kHz to 10GHz
|
|
627
|
+
>>> setup = edbapp.siwave.add_siwave_syz_analysis(
|
|
628
|
+
... start_freq=1e3,
|
|
629
|
+
... stop_freq=10e9,
|
|
630
|
+
... distribution="linear"
|
|
631
|
+
... )
|
|
632
|
+
>>> # Add SYZ analysis with decade sweep
|
|
633
|
+
>>> setup = edbapp.siwave.add_siwave_syz_analysis(
|
|
634
|
+
... start_freq=1e3,
|
|
635
|
+
... stop_freq=10e9,
|
|
636
|
+
... distribution="decade_count",
|
|
637
|
+
... step_freq=10 # 10 points per decade
|
|
638
|
+
... )
|
|
579
639
|
"""
|
|
580
640
|
setup = self._pedb.create_siwave_syz_setup()
|
|
581
641
|
start_freq = self._pedb.number_with_units(start_freq, "Hz")
|