Hfss#

class pyedb.grpc.database.hfss.Hfss(p_edb)#

Manages EDB methods for HFSS setup configuration.

Provides access to HFSS-specific operations including: - Excitation and port creation - Source and probe management - Simulation setup configuration - Boundary condition creation - Layout manipulation for simulation

Accessed via Edb.hfss property.

Overview#

get_trace_width_for_traces_with_ports

Retrieve trace widths for traces with ports.

create_edge_port

get_layout_bounding_box

Calculate layout bounding box.

add_setup

generate_auto_hfss_regions

Generate auto HFSS regions.

hfss_extent_info

HFSS extent information.

excitations

Get all ports.

ports

Get all ports.

sources

All source definitions in the layout.

probes

All probe definitions in the layout.

Import detail#

from pyedb.grpc.database.hfss import Hfss

Property detail#

property Hfss.hfss_extent_info: pyedb.grpc.database.utility.hfss_extent_info.HfssExtentInfo#

HFSS extent information.

Returns:
HfssExtentInfo

Object containing HFSS extent configuration data.

property Hfss.excitations: Dict[str, pyedb.grpc.database.ports.ports.BundleWavePort | pyedb.grpc.database.ports.ports.GapPort | pyedb.grpc.database.ports.ports.CircuitPort | pyedb.grpc.database.ports.ports.CoaxPort | pyedb.grpc.database.ports.ports.WavePort]#

Get all ports.

Returns:
port dictionaryDict[str, [pyedb.grpc.database.ports.ports.ports.GapPort,

pyedb.grpc.database.ports.ports.ports.WavePort, pyedb.grpc.database.ports.ports.CircuitPort, pyedb.grpc.database.ports.ports.CoaxPort, pyedb.grpc.database.ports.ports.BundleWavePort]]

property Hfss.ports: Dict[str, pyedb.grpc.database.ports.ports.BundleWavePort | pyedb.grpc.database.ports.ports.GapPort | pyedb.grpc.database.ports.ports.CircuitPort | pyedb.grpc.database.ports.ports.CoaxPort | pyedb.grpc.database.ports.ports.WavePort]#

Get all ports.

Returns:
port dictionaryDict[str, [pyedb.grpc.database.ports.ports.ports.GapPort,

pyedb.grpc.database.ports.ports.ports.WavePort, pyedb.grpc.database.ports.ports.CircuitPort, pyedb.grpc.database.ports.ports.CoaxPort, pyedb.grpc.database.ports.ports.BundleWavePort]]

property Hfss.sources#

All source definitions in the layout.

Returns:
list

List of source objects.

property Hfss.probes#

All probe definitions in the layout.

Returns:
list

List of probe objects.

Method detail#

Hfss.get_trace_width_for_traces_with_ports()#

Retrieve trace widths for traces with ports.

Returns:
dict

Dictionary mapping net names to smallest trace widths.

Examples

>>> from pyedb import Edb
>>> edb = Edb("my_aedb")
>>> widths = edb.hfss.get_trace_width_for_traces_with_ports()
>>> for net_name, width in widths.items():
...     print(f"Net '{net_name}': Smallest width = {width}")
Hfss.create_edge_port(location, primitive_name, name, impedance=50, is_wave_port=True, horizontal_extent_factor=1, vertical_extent_factor=1, pec_launch_width=0.0001)#
Hfss.get_layout_bounding_box(layout=None, digit_resolution=6)#

Calculate layout bounding box.

Parameters:
layoutEdb.Cell.Layout, optional

Layout object (uses active layout if None).

digit_resolutionint, optional

Coordinate rounding precision.

Returns:
list

[min_x, min_y, max_x, max_y] coordinates.

Examples

>>> from pyedb import Edb
>>> edb = Edb("my_aedb")
>>> bbox = edb.hfss.get_layout_bounding_box()
>>> print(f"Layout Bounding Box: {bbox}")
>>> custom_layout = edb.active_layout
>>> bbox = edb.hfss.get_layout_bounding_box(custom_layout, 5)
Hfss.add_setup(name=None, distribution='linear', start_freq=None, stop_freq=None, step_freq=None, discrete_sweep=False) pyedb.grpc.database.simulation_setup.hfss_simulation_setup.HfssSimulationSetup | None#

Add HFSS analysis setup (deprecated). use create_simulation_setup() instead.

Hfss.generate_auto_hfss_regions()#

Generate auto HFSS regions.

This method automatically identifies areas for use as HFSS regions in SIwave simulations.