Skip to content

A-Star Full Bundle Routing

with Fan-in and Fan-out

Imports

import gdsfactory as gf
import doroutes as dr

Bundle Routing Example

c = dr.pcells.fanout_frame2(transition="ew", add_frame=True).dup()
r = c << gf.components.mmi()
r.dmove((40, 120))
r = c << gf.components.mmi()
r.drotate(90)
r.dmove((60, 40))
dr.add_bundle_astar(
    component=c,
    ports1=[p for p in c.ports if str(p.name).startswith("in")],
    ports2=[p for p in c.ports if str(p.name).startswith("out")],
    spacing=1.0,
    straight="straight",
    bend={"component": "bend_euler", "settings": {"radius": 5}},
    layers=["WG"],
)
c
API key for superuser found.

png

c = dr.pcells.fanout_frame3(transition="ew").dup()
dr.add_bundle_astar(
    component=c,
    ports1=[p for p in c.ports if str(p.name).startswith("in")],
    ports2=[p for p in c.ports if str(p.name).startswith("out")],
    spacing=1.0,
    straight="straight",
    bend={"component": "bend_euler", "settings": {"radius": 5}},
    layers=["WG"],
)
c
API key for superuser found.

png