diff --git a/CHANGELOG.md b/CHANGELOG.md index 1880c3b9..232aa235 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## [1.5.3] + +- [PR](https://github.com/gdsfactory/ubc/pull/24) replaced bbox with Section in strip cross_section +- [PR](https://github.com/gdsfactory/ubc/pull/25) assumes that the imported gds file is already siepic-compatible and adds ports where it finds siepic pins. + ## [1.5.2](https://github.com/gdsfactory/ubc/pull/23) - compatible with gdsfactory 5.2.0 diff --git a/requirements.txt b/requirements.txt index fb8e6fa1..27b361c0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -e . lygadgets -gdsfactory[full]==5.2.0 +gdsfactory[full]==5.2.4 modes diff --git a/ubcpdk/circuits/mzi_pads.pic.yaml b/ubcpdk/circuits/mzi_pads.pic.yaml new file mode 100644 index 00000000..29513b91 --- /dev/null +++ b/ubcpdk/circuits/mzi_pads.pic.yaml @@ -0,0 +1,45 @@ +name: sample_different_factory + +instances: + tl: + component: pad + tr: + component: pad + + mzi: + component: mzi_phase_shifter_top_heater_metal + +placements: + mzi: + ymax: tl,south + dy: -100 + tl: + x: mzi,west + y: mzi,north + dy: 100 + tr: + x: mzi,west + dx: 200 + y: mzi,north + dy: 100 + +routes: + electrical1: + routing_strategy: get_bundle + settings: + separation: 20 + layer: [31, 0] + width: 10 + + links: + mzi,e2: tr,e1 + + electrical2: + routing_strategy: get_bundle + settings: + separation: 20 + layer: [31, 0] + width: 10 + + links: + mzi,e1: tl,e1 diff --git a/ubcpdk/circuits/pads.pic.yml b/ubcpdk/circuits/pads.pic.yml index 76e3703d..b6a10e29 100644 --- a/ubcpdk/circuits/pads.pic.yml +++ b/ubcpdk/circuits/pads.pic.yml @@ -12,8 +12,8 @@ instances: placements: tl: - x: 0 - y: 200 + x: 100 + y: 290 br: x: 400 @@ -29,7 +29,7 @@ routes: settings: separation: 20 layer: [31, 0] - width: 10 + width: 5 links: tl,e3: tr,e1 bl,e3: br,e1 diff --git a/ubcpdk/components/cells.py b/ubcpdk/components/cells.py index 6fef41c7..14967ffc 100644 --- a/ubcpdk/components/cells.py +++ b/ubcpdk/components/cells.py @@ -17,10 +17,8 @@ def y_splitter() -> Component: um = 1e-6 add_siepic_labels = gf.partial( - add_siepic_labels, - label_layer=LAYER.DEVREC, - library="Design Kits/ebeam" - ) + add_siepic_labels, label_layer=LAYER.DEVREC, library="Design Kits/ebeam" +) straight_ubc = gf.partial(gf.components.straight, cross_section="strip") bend_euler_ubc = gf.partial(gf.components.bend_euler, cross_section="strip") @@ -72,8 +70,8 @@ def y_splitter() -> Component: layout_model_port_pairs=( ("opt1", "opt_a1"), ("opt2", "opt_b1"), - ("opt3", "opt_b2") - ) + ("opt3", "opt_b2"), + ), ) crossing = gf.partial( import_gds, @@ -91,7 +89,7 @@ def y_splitter() -> Component: port_e0_splitter="opt3", port_e1_combiner="opt2", port_e0_combiner="opt3", - cross_section="strip" + cross_section="strip", ) @@ -102,7 +100,7 @@ def ebeam_dc_halfring_straight( length_x: float = 4.0, cross_section="strip", siepic: bool = True, - model: str = 'ebeam_dc_halfring_straight', + model: str = "ebeam_dc_halfring_straight", **kwargs ): c = gf.Component() @@ -126,22 +124,22 @@ def ebeam_dc_halfring_straight( ("o2", "port 2"), ("o3", "port 4"), ("o4", "port 3"), - ), + ), properties={ "gap": gap * um, "radius": radius * um, "wg_thickness": thickness[LAYER.WG] * um, "wg_width": x.width * um, "Lc": length_x * um, - }, - component_type=["optical"] - ) + }, + component_type=["optical"], + ) add_siepic_info = gf.compose( gf.partial(add_siepic_labels, model=model), add_pins_bbox_siepic, remove_pins_recursive, - ) + ) c = add_siepic_info(c) return c @@ -152,15 +150,11 @@ def ebeam_dc_halfring_straight( remove_pins_recursive, gf.partial( gf.components.coupler, - component_type=['optical'], - layout_model_property_pairs=( - ("length", "coupling_length") - ), - properites=( - ('annotate', False) - ) - ) - ) + # component_type=["optical"], + # layout_model_property_pairs=(("length", "coupling_length")), + # properites=(("annotate", False)), + ), +) spiral = gf.partial(gf.components.spiral_external_io) ring_with_crossing = gf.partial( gf.components.ring_single_dut, @@ -168,7 +162,7 @@ def ebeam_dc_halfring_straight( port_name="opt4", bend=bend_euler, straight=straight, - cross_section=strip + cross_section=strip, ) @@ -189,7 +183,7 @@ def ebeam_dc_halfring_straight( # c = y_splitter() # s = dc_adiabatic() - c = mzi() + # c = mzi() # c = gf.Component() # s = y_splitter() @@ -199,4 +193,6 @@ def ebeam_dc_halfring_straight( # c = ebeam_dc_halfring_straight() # c = ring_with_crossing() + + c = ebeam_dc_te1550() c.show(show_ports=False) diff --git a/ubcpdk/components/generic.py b/ubcpdk/components/generic.py index 6cf5ffca..aca7db0c 100644 --- a/ubcpdk/components/generic.py +++ b/ubcpdk/components/generic.py @@ -7,7 +7,9 @@ gf.components.bend_euler, cross_section="strip", ) -coupler = gf.partial(gf.components.coupler, decorator=add_pins_bbox_siepic) +coupler = gf.partial( + gf.components.coupler, decorator=add_pins_bbox_siepic, cross_section="strip" +) coupler_ring = gf.partial(gf.components.coupler_ring, cross_section="strip") ring_single = gf.partial( @@ -22,6 +24,7 @@ if __name__ == "__main__": # c = coupler_ring() - c = ring_single() + # c = ring_single() # c = bend_with_pins() - c.show() + c = coupler() + c.show(show_ports=False) diff --git a/ubcpdk/components/grating_couplers.py b/ubcpdk/components/grating_couplers.py index 3b2f948d..1d8b73f6 100644 --- a/ubcpdk/components/grating_couplers.py +++ b/ubcpdk/components/grating_couplers.py @@ -1,7 +1,5 @@ import gdsfactory as gf -from ubcpdk.import_gds import ( - import_gds -) +from ubcpdk.import_gds import import_gds import_gc = gf.compose( @@ -17,9 +15,7 @@ wavelength=1.55, model="ebeam_gc_te1550", name="ebeam_gc_te1550", - layout_model_port_pairs=( - ("opt1", "opt_wg"), - ) + layout_model_port_pairs=(("opt1", "opt_wg"),), ) gc_te1550_broadband = gf.partial( @@ -29,9 +25,7 @@ model="ebeam_gc_te1550_broadband", polarization="te", wavelength=1.55, - layout_model_port_pairs=( - ("opt1", "opt_wg"), - ) + layout_model_port_pairs=(("opt1", "opt_wg"),), ) @@ -42,9 +36,7 @@ model="ebeam_gc_te1310", polarization="te", wavelength=1.31, - layout_model_port_pairs=( - ("opt1", "opt_wg"), - ) + layout_model_port_pairs=(("opt1", "opt_wg"),), ) gc_tm1550 = gf.partial( @@ -54,9 +46,7 @@ model="ebeam_gc_tm1550", polarization="tm", wavelength=1.55, - layout_model_port_pairs=( - ("opt1", "opt_wg"), - ) + layout_model_port_pairs=(("opt1", "opt_wg"),), ) diff --git a/ubcpdk/import_gds.py b/ubcpdk/import_gds.py index 5418c827..c7db013f 100644 --- a/ubcpdk/import_gds.py +++ b/ubcpdk/import_gds.py @@ -182,8 +182,8 @@ def add_siepic_labels_and_simulation_info( gf.import_gds, gdsdir=PATH.gds, library="Design kits/ebeam", - decorator=add_ports_from_siepic_pins - ) + decorator=add_ports_from_siepic_pins, +) # # gratings have a 2nm square that is sticking out 1nm # add_pins_gratings = gf.partial(add_pins_bbox_siepic, padding=-1e-3) diff --git a/ubcpdk/tech.py b/ubcpdk/tech.py index 1b18276d..a54d2995 100644 --- a/ubcpdk/tech.py +++ b/ubcpdk/tech.py @@ -105,19 +105,14 @@ class Tech(BaseModel): library="Design kits/ebeam", layout_model_property_pairs=( # (layout_property_name, interconnect_property_name) - ('length', 'wg_length', 1e-6), - ('width', 'wg_width', 1e-6), - ), - layout_model_port_pairs=( - ("o1", "port 1"), - ("o2", "port 2") - ), + ("length", "wg_length", 1e-6), + ("width", "wg_width", 1e-6), + ), + layout_model_port_pairs=(("o1", "port 1"), ("o2", "port 2")), spice_params=["wg_length", "wg_width"], - component_type=['optical'], - properties=( - ('annotate', False), - ) - ) + component_type=["optical"], + properties=(("annotate", False),), +) get_sparameters_data_lumerical = gf.partial( sim.get_sparameters_data_lumerical, @@ -128,8 +123,7 @@ class Tech(BaseModel): siepic_devrec_section = Section( width=TECH.DEVREC["width"], layer=LAYER.DEVREC, - name="DEVREC" - ) +) strip_pins = gf.partial( gf.cross_section.strip, @@ -160,3 +154,4 @@ class Tech(BaseModel): if __name__ == "__main__": c = gf.c.straight(cross_section=strip) + c.show(show_ports=False) diff --git a/ubcpdk/tests/test_components.gds/gds_ref/bend_euler_fdb9781f.gds b/ubcpdk/tests/test_components.gds/gds_ref/bend_euler_fdb9781f.gds new file mode 100644 index 00000000..ecc9aaa1 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/bend_euler_fdb9781f.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/coupler_copy.gds b/ubcpdk/tests/test_components.gds/gds_ref/coupler_copy.gds new file mode 100644 index 00000000..8fd59080 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/coupler_copy.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/dbr_cavity_d4283fc8.gds b/ubcpdk/tests/test_components.gds/gds_ref/dbr_cavity_d4283fc8.gds new file mode 100644 index 00000000..3d3dcb53 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/dbr_cavity_d4283fc8.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_adiabatic_te1550.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_adiabatic_te1550.gds new file mode 100644 index 00000000..33abb097 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_adiabatic_te1550.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_te1550.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_te1550.gds new file mode 100644 index 00000000..a3ceb1a7 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_te1550.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_tm1550.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_tm1550.gds new file mode 100644 index 00000000..95a5a39e Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_bdc_tm1550.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_crossing4.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_crossing4.gds new file mode 100644 index 00000000..09d28f13 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_crossing4.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_1550.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_1550.gds new file mode 100644 index 00000000..df8c6180 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_1550.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_adiabatic.gds b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_adiabatic.gds new file mode 100644 index 00000000..2cfc0e4e Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ebeam_y_adiabatic.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/mzi_59ab7b29.gds b/ubcpdk/tests/test_components.gds/gds_ref/mzi_59ab7b29.gds new file mode 100644 index 00000000..1a6a2486 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/mzi_59ab7b29.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ring_single_039539d6.gds b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_039539d6.gds index c53bf644..619e3d04 100644 Binary files a/ubcpdk/tests/test_components.gds/gds_ref/ring_single_039539d6.gds and b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_039539d6.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_7f6e2564.gds b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_7f6e2564.gds new file mode 100644 index 00000000..f7e0b878 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_7f6e2564.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_93566ed3.gds b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_93566ed3.gds new file mode 100644 index 00000000..54905b67 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/ring_single_dut_93566ed3.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/rotate_f258530e.gds b/ubcpdk/tests/test_components.gds/gds_ref/rotate_f258530e.gds index c35e219e..b4b3b85f 100644 Binary files a/ubcpdk/tests/test_components.gds/gds_ref/rotate_f258530e.gds and b/ubcpdk/tests/test_components.gds/gds_ref/rotate_f258530e.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f.gds b/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f.gds new file mode 100644 index 00000000..c2629876 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f.gds differ diff --git a/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f_add_f_f369f194.gds b/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f_add_f_f369f194.gds new file mode 100644 index 00000000..de0f1106 Binary files /dev/null and b/ubcpdk/tests/test_components.gds/gds_ref/straight_fdb9781f_add_f_f369f194.gds differ diff --git a/ubcpdk/tests/test_components/test_pdk_settings_add_fiber_array_.yml b/ubcpdk/tests/test_components/test_pdk_settings_add_fiber_array_.yml index a626346a..8ecfd286 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_add_fiber_array_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_add_fiber_array_.yml @@ -3,32 +3,37 @@ settings: child: changed: bend: - function: bend_euler + - function: bend_euler + settings: + cross_section: strip + - function: add_siepic_labels settings: - decorator: - function: add_pins_bbox_siepic + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam cross_section: strip fanout_length: 0 gc_port_name: opt1 grating_coupler: - function: import_gds + function: Compose settings: - decorator: - - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - settings: - padding: -0.001 - - function: add_siepic_labels_and_simulation_info - - function: rotate - settings: - angle: 180 - gdsdir: gds gdspath: ebeam_gc_te1550.gds + layout_model_port_pairs: + - - opt1 + - opt_wg model: ebeam_gc_te1550 - opt1: opt_wg + name: ebeam_gc_te1550 polarization: te wavelength: 1.55 layer_label: @@ -37,44 +42,50 @@ settings: optical_routing_type: 0 with_loopback: false child: - changed: {} - child: - changed: - cross_section: strip - child: null - default: - cross_section: - function: cross_section - settings: {} - length: 10 - npoints: 2 - with_bbox: false - full: - cross_section: strip - length: 10 - npoints: 2 - with_bbox: false - function_name: straight - info: - length: 10.0 - width: 0.5 - info_version: 2 - module: gdsfactory.components.straight - name: straight_fdb9781f - default: + changed: cross_section: strip + child: null + default: + cross_section: + function: cross_section + settings: {} length: 10 - with_pins: true + npoints: 2 + with_bbox: false full: cross_section: strip length: 10 - with_pins: true + npoints: 2 + with_bbox: false function_name: straight info: + component_type: + - optical + layout_model_port_pairs: + - - o1 + - port 1 + - - o2 + - port 2 + layout_model_property_pairs: + - - length + - wg_length + - 1.0e-06 + - - width + - wg_width + - 1.0e-06 + length: 10.0 + library: Design kits/ebeam + model: ebeam_wg_integral_1550 + properties: + - - annotate + - false + spice_params: + - wg_length + - wg_width width: 0.5 info_version: 2 - module: ubcpdk.components.straight - name: straight_fdb9781f_straight + module: gdsfactory.components.straight + name: straight_fdb9781f default: bend: function: bend_euler @@ -103,12 +114,25 @@ settings: function: straight full: bend: - function: bend_euler + - function: bend_euler settings: - decorator: - function: add_pins_bbox_siepic + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component_name: null cross_section: strip fanout_length: 0 @@ -117,22 +141,14 @@ settings: get_input_labels_function: function: get_input_labels grating_coupler: - function: import_gds + function: Compose settings: - decorator: - - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - settings: - padding: -0.001 - - function: add_siepic_labels_and_simulation_info - - function: rotate - settings: - angle: 180 - gdsdir: gds gdspath: ebeam_gc_te1550.gds + layout_model_port_pairs: + - - opt1 + - opt_wg model: ebeam_gc_te1550 - opt1: opt_wg + name: ebeam_gc_te1550 polarization: te wavelength: 1.55 layer_label: @@ -150,10 +166,18 @@ settings: info: {} info_version: 2 module: gdsfactory.routing.add_fiber_array - name: straight_fdb9781f_strai_673ef1bd + name: straight_fdb9781f_add_f_33b5652d default: component: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component_name: null cross_section: strip fanout_length: 0 @@ -161,29 +185,29 @@ settings: get_input_labels_function: function: get_input_labels grating_coupler: - function: import_gds + function: Compose settings: - decorator: - - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - settings: - padding: -0.001 - - function: add_siepic_labels_and_simulation_info - - function: rotate - settings: - angle: 180 - gdsdir: gds gdspath: ebeam_gc_te1550.gds + layout_model_port_pairs: + - - opt1 + - opt_wg model: ebeam_gc_te1550 - opt1: opt_wg + name: ebeam_gc_te1550 polarization: te wavelength: 1.55 optical_routing_type: 0 with_loopback: false full: component: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component_name: null cross_section: strip fanout_length: 0 @@ -191,22 +215,14 @@ settings: get_input_labels_function: function: get_input_labels grating_coupler: - function: import_gds + function: Compose settings: - decorator: - - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - settings: - padding: -0.001 - - function: add_siepic_labels_and_simulation_info - - function: rotate - settings: - angle: 180 - gdsdir: gds gdspath: ebeam_gc_te1550.gds + layout_model_port_pairs: + - - opt1 + - opt_wg model: ebeam_gc_te1550 - opt1: opt_wg + name: ebeam_gc_te1550 polarization: te wavelength: 1.55 optical_routing_type: 0 @@ -215,5 +231,5 @@ settings: info: {} info_version: 2 module: ubcpdk.components.add_fiber_array - name: straight_fdb9781f_strai_86bcaee6 + name: straight_fdb9781f_add_f_f369f194 version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_bend_euler_.yml b/ubcpdk/tests/test_components/test_pdk_settings_bend_euler_.yml index 0ac49cc3..3c84677c 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_bend_euler_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_bend_euler_.yml @@ -1,2 +1,54 @@ -settings: {} +settings: + changed: + cross_section: strip + child: null + default: + angle: 90 + cross_section: + function: cross_section + settings: {} + direction: ccw + npoints: 720 + p: 0.5 + with_arc_floorplan: true + with_bbox: false + full: + angle: 90 + cross_section: strip + direction: ccw + npoints: 720 + p: 0.5 + with_arc_floorplan: true + with_bbox: false + function_name: bend_euler + info: + component_type: + - optical + dy: 10.0 + layout_model_port_pairs: + - - o1 + - port 1 + - - o2 + - port 2 + layout_model_property_pairs: + - - length + - wg_length + - 1.0e-06 + - - width + - wg_width + - 1.0e-06 + length: 16.637 + library: Design kits/ebeam + model: ebeam_wg_integral_1550 + properties: + - - annotate + - false + radius: 10.0 + radius_min: 7.061 + spice_params: + - wg_length + - wg_width + info_version: 2 + module: gdsfactory.components.bend_euler + name: bend_euler_fdb9781f version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_dbr_cavity_.yml b/ubcpdk/tests/test_components/test_pdk_settings_dbr_cavity_.yml index d7c5db5a..c10efd91 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_dbr_cavity_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_dbr_cavity_.yml @@ -25,6 +25,7 @@ settings: coupler: function: coupler settings: + cross_section: strip decorator: function: add_pins_bbox_siepic child: @@ -80,6 +81,7 @@ settings: coupler: function: coupler settings: + cross_section: strip decorator: function: add_pins_bbox_siepic gap: 0.2 @@ -88,5 +90,5 @@ settings: info: {} info_version: 2 module: gdsfactory.components.cavity - name: dbr_cavity_3c2a3092 + name: dbr_cavity_d4283fc8 version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_ebeam_dc_te1550_.yml b/ubcpdk/tests/test_components/test_pdk_settings_ebeam_dc_te1550_.yml index fe156162..0ac49cc3 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_ebeam_dc_te1550_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_ebeam_dc_te1550_.yml @@ -1,31 +1,2 @@ -settings: - changed: {} - child: null - default: - coupler_straight: - function: coupler_straight - coupler_symmetric: - function: coupler_symmetric - cross_section: strip - dx: 10 - dy: 5 - gap: 0.236 - length: 20 - full: - coupler_straight: - function: coupler_straight - coupler_symmetric: - function: coupler_symmetric - cross_section: strip - dx: 10 - dy: 5 - gap: 0.236 - length: 20 - function_name: coupler - info: - length: 10.314 - min_bend_radius: 9.451 - info_version: 2 - module: gdsfactory.components.coupler - name: coupler +settings: {} version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1310_.yml b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1310_.yml index 1b605eb4..bc09546b 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1310_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1310_.yml @@ -13,7 +13,9 @@ settings: settings: {} version: 0.0.1 function_name: rotate - info: {} + info: + polarization: te + wavelength: 1.55 info_version: 2 module: gdsfactory.functions name: rotate_f258530e diff --git a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_.yml b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_.yml index 1b605eb4..bc09546b 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_.yml @@ -13,7 +13,9 @@ settings: settings: {} version: 0.0.1 function_name: rotate - info: {} + info: + polarization: te + wavelength: 1.55 info_version: 2 module: gdsfactory.functions name: rotate_f258530e diff --git a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_broadband_.yml b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_broadband_.yml index 1b605eb4..bc09546b 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_broadband_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_gc_te1550_broadband_.yml @@ -13,7 +13,9 @@ settings: settings: {} version: 0.0.1 function_name: rotate - info: {} + info: + polarization: te + wavelength: 1.55 info_version: 2 module: gdsfactory.functions name: rotate_f258530e diff --git a/ubcpdk/tests/test_components/test_pdk_settings_gc_tm1550_.yml b/ubcpdk/tests/test_components/test_pdk_settings_gc_tm1550_.yml index 1b605eb4..bc09546b 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_gc_tm1550_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_gc_tm1550_.yml @@ -13,7 +13,9 @@ settings: settings: {} version: 0.0.1 function_name: rotate - info: {} + info: + polarization: te + wavelength: 1.55 info_version: 2 module: gdsfactory.functions name: rotate_f258530e diff --git a/ubcpdk/tests/test_components/test_pdk_settings_mzi_.yml b/ubcpdk/tests/test_components/test_pdk_settings_mzi_.yml index 24f863bf..095d2ae1 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_mzi_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_mzi_.yml @@ -1,10 +1,15 @@ settings: changed: bend: - function: bend_euler + - function: bend_euler settings: - decorator: - function: add_pins_bbox_siepic + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam cross_section: strip port_e0_combiner: opt3 port_e0_splitter: opt3 @@ -14,18 +19,30 @@ settings: function: import_gds settings: decorator: - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - - function: add_siepic_labels_and_simulation_info + function: add_ports_from_siepic_pins doc: Y junction TE1550 50/50 power. gdsdir: gds gdspath: ebeam_y_1550.gds + layout_model_port_pairs: + - - opt1 + - opt_a1 + - - opt2 + - opt_b1 + - - opt3 + - opt_b2 + library: Design kits/ebeam model: ebeam_y_1550 name: ebeam_y_1550 - opt1: opt_a1 - opt2: opt_b1 - opt3: opt_b2 + straight: + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam child: null default: bend: @@ -52,10 +69,15 @@ settings: with_splitter: true full: bend: - function: bend_euler + - function: bend_euler settings: - decorator: - function: add_pins_bbox_siepic + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam combiner: null cross_section: strip delta_length: 10 @@ -70,20 +92,30 @@ settings: function: import_gds settings: decorator: - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - - function: add_siepic_labels_and_simulation_info + function: add_ports_from_siepic_pins doc: Y junction TE1550 50/50 power. gdsdir: gds gdspath: ebeam_y_1550.gds + layout_model_port_pairs: + - - opt1 + - opt_a1 + - - opt2 + - opt_b1 + - - opt3 + - opt_b2 + library: Design kits/ebeam model: ebeam_y_1550 name: ebeam_y_1550 - opt1: opt_a1 - opt2: opt_b1 - opt3: opt_b2 straight: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam straight_x_bot: null straight_x_top: null straight_y: null @@ -92,5 +124,5 @@ settings: info: {} info_version: 2 module: gdsfactory.components.mzi - name: mzi_5e33a216 + name: mzi_59ab7b29 version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_ring_with_crossing_.yml b/ubcpdk/tests/test_components/test_pdk_settings_ring_with_crossing_.yml index 97632388..585b2fe8 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_ring_with_crossing_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_ring_with_crossing_.yml @@ -1,17 +1,82 @@ settings: changed: + bend: + - function: bend_euler + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component: function: import_gds settings: decorator: - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - - function: add_siepic_labels_and_simulation_info + function: add_ports_from_siepic_pins doc: TE waveguide crossing. gdsdir: gds gdspath: ebeam_crossing4.gds + library: Design kits/ebeam + model: ebeam_crossing4 + cross_section: + function: cross_section + settings: + decorator: + function: add_pins_siepic + info: + component_type: + - optical + layout_model_port_pairs: + - - o1 + - port 1 + - - o2 + - port 2 + layout_model_property_pairs: + - - length + - wg_length + - 1.0e-06 + - - width + - wg_width + - 1.0e-06 + library: Design kits/ebeam + model: ebeam_wg_integral_1550 + properties: + - - annotate + - false + spice_params: + - wg_length + - wg_width + layer: + - 1 + - 0 + sections: + - hidden: false + layer: + - 68 + - 0 + name: null + offset: 0 + port_names: + - null + - null + port_types: + - optical + - optical + width: 0.5 + width: 0.5 port_name: opt4 + straight: + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam child: {} default: bend: @@ -32,31 +97,92 @@ settings: with_component: true full: bend: - function: bend_euler + - function: bend_euler + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam component: function: import_gds settings: decorator: - - function: add_ports_from_siepic_pins - - function: remove_pins - - function: add_pins_bbox_siepic - - function: add_siepic_labels_and_simulation_info + function: add_ports_from_siepic_pins doc: TE waveguide crossing. gdsdir: gds gdspath: ebeam_crossing4.gds + library: Design kits/ebeam + model: ebeam_crossing4 coupler: function: coupler_ring + cross_section: + function: cross_section + settings: + decorator: + function: add_pins_siepic + info: + component_type: + - optical + layout_model_port_pairs: + - - o1 + - port 1 + - - o2 + - port 2 + layout_model_property_pairs: + - - length + - wg_length + - 1.0e-06 + - - width + - wg_width + - 1.0e-06 + library: Design kits/ebeam + model: ebeam_wg_integral_1550 + properties: + - - annotate + - false + spice_params: + - wg_length + - wg_width + layer: + - 1 + - 0 + sections: + - hidden: false + layer: + - 68 + - 0 + name: null + offset: 0 + port_names: + - null + - null + port_types: + - optical + - optical + width: 0.5 + width: 0.5 gap: 0.2 length_x: 4 length_y: 0 port_name: opt4 radius: 5 straight: - function: straight + - function: straight + settings: + cross_section: strip + - function: add_siepic_labels + settings: + label_layer: + - 68 + - 0 + library: Design Kits/ebeam with_component: true function_name: ring_single_dut info: {} info_version: 2 module: gdsfactory.components.ring_single_dut - name: ring_single_dut_f9a0ad52 + name: ring_single_dut_7f6e2564 version: 0.0.1 diff --git a/ubcpdk/tests/test_components/test_pdk_settings_straight_.yml b/ubcpdk/tests/test_components/test_pdk_settings_straight_.yml index 61d36b47..edacecfd 100644 --- a/ubcpdk/tests/test_components/test_pdk_settings_straight_.yml +++ b/ubcpdk/tests/test_components/test_pdk_settings_straight_.yml @@ -1,40 +1,46 @@ settings: - changed: {} - child: - changed: - cross_section: strip - child: null - default: - cross_section: - function: cross_section - settings: {} - length: 10 - npoints: 2 - with_bbox: false - full: - cross_section: strip - length: 10 - npoints: 2 - with_bbox: false - function_name: straight - info: - length: 10.0 - width: 0.5 - info_version: 2 - module: gdsfactory.components.straight - name: straight_fdb9781f - default: + changed: cross_section: strip + child: null + default: + cross_section: + function: cross_section + settings: {} length: 10 - with_pins: true + npoints: 2 + with_bbox: false full: cross_section: strip length: 10 - with_pins: true + npoints: 2 + with_bbox: false function_name: straight info: + component_type: + - optical + layout_model_port_pairs: + - - o1 + - port 1 + - - o2 + - port 2 + layout_model_property_pairs: + - - length + - wg_length + - 1.0e-06 + - - width + - wg_width + - 1.0e-06 + length: 10.0 + library: Design kits/ebeam + model: ebeam_wg_integral_1550 + properties: + - - annotate + - false + spice_params: + - wg_length + - wg_width width: 0.5 info_version: 2 - module: ubcpdk.components.straight - name: straight_fdb9781f_straight + module: gdsfactory.components.straight + name: straight_fdb9781f version: 0.0.1