Esempio n. 1
0
def grating_coupler_tree_with_pads():
    c = pp.Component()

    gratings = c << grating_coupler_tree()
    pads = c << shorted_pads()

    gratings.move(-gratings.size_info.center)
    pads.movey(gratings.ymax + 10 - pads.ymin)
    return c
Esempio n. 2
0
def align_tree_bottom_right(**kwargs):
    c = pp.Component()
    c.name = "grating_coupler_tree_br"
    gc = grating_coupler_tree(component_name=c.name, **kwargs)
    gc_ref = c.add_ref(gc)
    gc_ref.move(-gc.size_info.center)
    align = align_cryo_bottom_right()
    c.add_ref(align)
    c = add_padding_to_grid(c)
    return c
Esempio n. 3
0
def align_tree_top_left_with_cross(**kwargs):
    c = pp.Component()
    c.name = "grating_coupler_tree_tl_x"
    gc = grating_coupler_tree(component_name=c.name, **kwargs)
    gc_ref = c.add_ref(gc)
    gc_ref.move(-gc.size_info.center)
    align = align_cryo_top_left()
    c.add_ref(align)
    align2 = align_wafer()
    align2_ref = c.add_ref(align2)
    align2_ref.movex(gc_ref.xmin - align2.size_info.width / 2)
    c = add_padding_to_grid(c)
    return c