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
def add_te(component, **kwargs): c = pp.routing.add_fiber_array( component, grating_coupler=pp.c.grating_coupler_elliptical_te, route_filter=_route_filter, **kwargs, ) c.test = "passive_optical_te" c = add_padding_to_grid(c) return c
def add_tm(component, **kwargs): c = pp.routing.add_fiber_array( component, grating_coupler=pp.c.grating_coupler_elliptical_tm, route_filter=_route_filter, bend_radius=20, **kwargs, ) c = add_padding_to_grid(c) return c
def add_te(component, **kwargs): c = pp.routing.add_io_optical( component, grating_coupler=pp.c.grating_coupler_elliptical_te, route_filter=_route_filter, **kwargs, ) # c.test = 'passive_optical_te' c = add_padding_to_grid(c) return c
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