Join

class ipkiss3.all.Join

Join instances together. Either two strings (‘inst1:port1’, ‘inst2:port2’), or a list of tuples of the form [(‘inst1:port1’, ‘inst2:port2’), (…, …)].

Instance name and port names are string-based.

This specification does not support ports that have undefined port angles (most electrical ports), use PlaceRelative instead.

Examples

>>> i3.Join('grating:out', 'waveguide:in')
>>> i3.Join([('grating:out', 'waveguide:in'),
>>>                 ('waveguide:out', 'grating2:out')])
import si_fab.all as pdk
import ipkiss3.all as i3
import matplotlib.pyplot as plt

gc = pdk.FC_TE_1550()
circuit = i3.Circuit(
    insts={"gc1": gc, "gc2": gc},
    specs=[
        i3.Place("gc1:out", (0, 0)),
        i3.Join("gc2:out", "gc1:out"),
    ],
)
circuit.Layout().visualize()
plt.show()
../../../../_images/ipkiss3-all-Join-1.png