Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion doc/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ This repository contains end-to-end embedding examples that demonstrate how to u
:link-type: doc

.. image:: examples/electrothermal/_static/icepak_logo.png
:alt: Icepak
:alt: icepak
:width: 250px
:height: 200px
:align: center
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 32 additions & 9 deletions examples/edb/legacy_standalone/differential_vias.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
# # Parametric differential vias
# # Coplanar Waveguide with Via Array
#
# This example demonstrates how a differential via pair can be created using the EDB Python
# This example demonstrates how a coplanar waveguide with via array can be created using the EDB Python
# interface.
#
# The final differential via pair is shown below.
# <img src="_static/cpw_via_array.png" width="500">
#
# <img src="_static/diff_via.png" width="500">
#
# Keywords: **Differential Via**
# Keywords: **coplanar waveguide, via array**


# ## Prerequisites
Expand All @@ -29,7 +27,7 @@
# ### Start the EDB

# +
aedb_path = os.path.join(temp_folder.name, "diff_via.aedb")
aedb_path = os.path.join(temp_folder.name, "cpw_via_array.aedb")
print(f"AEDB file path: {aedb_path}")

edb = pyedb.Edb(edbpath=aedb_path, edbversion=AEDT_VERSION)
Expand All @@ -43,31 +41,56 @@
# [configuration file](https://examples.aedt.docs.pyansys.com/version/dev/examples/edb/use_configuration/import_stackup.html).

edb.stackup.add_layer("GND")
edb.stackup.add_layer("Diel", "GND", layer_type="dielectric", thickness="0.1mm", material="FR4_epoxy")
edb.stackup.add_layer("Diel", "GND", layer_type="dielectric", thickness="0.5mm", material="FR4_epoxy")
edb.stackup.add_layer("TOP", "Diel", thickness="0.05mm")

# ### Create signal nets and ground planes
# Create a signal net and ground planes.

points = [[0.0, 0], [100e-3, 0.0]]
edb.modeler.create_trace(points, "TOP", width=1e-3)
trace = edb.modeler.create_trace(points, "TOP", width=1e-3, end_cap_style="Flat", start_cap_style="Flat")
points = [[0.0, 1e-3], [0.0, 10e-3], [100e-3, 10e-3], [100e-3, 1e-3], [0.0, 1e-3]]
edb.modeler.create_polygon(points, "TOP")
points = [[0.0, -1e-3], [0.0, -10e-3], [100e-3, -10e-3], [100e-3, -1e-3], [0.0, -1e-3]]
edb.modeler.create_polygon(points, "TOP")
points = [[0.0, -10e-3], [0, 10e-3], [100e-3, 10e-3], [100e-3, -10e-3]]
edb.modeler.create_polygon(points, "GND")

# ## Create wave ports on the main trace's ends.

edb.hfss.create_wave_port(prim_id = trace.id, point_on_edge = ["-10mm","10mm"], port_name="wport1")

edb.hfss.create_wave_port(prim_id = trace.id, point_on_edge = ["100mm","0mm"], port_name="wport2")

# ## Place vias

edb.padstacks.create("MyVia")
edb.padstacks.place([5e-3, 5e-3], "MyVia")
edb.padstacks.place([15e-3, 5e-3], "MyVia")
edb.padstacks.place([25e-3, 5e-3], "MyVia")
edb.padstacks.place([35e-3, 5e-3], "MyVia")
edb.padstacks.place([45e-3, 5e-3], "MyVia")
edb.padstacks.place([55e-3, 5e-3], "MyVia")
edb.padstacks.place([65e-3, 5e-3], "MyVia")
edb.padstacks.place([75e-3, 5e-3], "MyVia")
edb.padstacks.place([85e-3, 5e-3], "MyVia")
edb.padstacks.place([95e-3, 5e-3], "MyVia")
edb.padstacks.place([5e-3, -5e-3], "MyVia")
edb.padstacks.place([15e-3, -5e-3], "MyVia")
edb.padstacks.place([25e-3, -5e-3], "MyVia")
edb.padstacks.place([35e-3, -5e-3], "MyVia")
edb.padstacks.place([45e-3, -5e-3], "MyVia")
edb.padstacks.place([55e-3, -5e-3], "MyVia")
edb.padstacks.place([65e-3, -5e-3], "MyVia")
edb.padstacks.place([75e-3, -5e-3], "MyVia")
edb.padstacks.place([85e-3, -5e-3], "MyVia")
edb.padstacks.place([95e-3, -5e-3], "MyVia")

# ### Create simulation setup

setup = edb.create_hfss_setup(name= "Setup1")
setup.set_solution_single_frequency("1GHz", max_num_passes=1, max_delta_s="0.02")
setup.add_sweep(name="Sweep1")


# ### View the nets
Expand Down
Loading