diff --git a/docs/notebooks/00_layout.ipynb b/docs/notebooks/00_layout.ipynb index a50b1677..ea373992 100644 --- a/docs/notebooks/00_layout.ipynb +++ b/docs/notebooks/00_layout.ipynb @@ -20,6 +20,7 @@ "import gdsfactory as gf\n", "\n", "import ubcpdk\n", + "import ubcpdk.components as uc\n", "\n", "gf.CONF.display_type = \"klayout\"" ] @@ -41,7 +42,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_crossing4()\n", + "c = uc.ebeam_crossing4()\n", "c.plot()" ] }, @@ -52,7 +53,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_swg_edgecoupler()\n", + "c = uc.ebeam_swg_edgecoupler()\n", "c.plot()" ] }, @@ -63,7 +64,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_bdc_te1550()\n", + "c = uc.ebeam_bdc_te1550()\n", "c.plot()" ] }, @@ -74,7 +75,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_adiabatic_te1550()\n", + "c = uc.ebeam_adiabatic_te1550()\n", "c.plot()" ] }, @@ -85,7 +86,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_y_adiabatic()\n", + "c = uc.ebeam_y_adiabatic()\n", "c.plot()" ] }, @@ -96,7 +97,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ebeam_y_1550()\n", + "c = uc.ebeam_y_1550()\n", "c.plot()" ] }, @@ -117,7 +118,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.straight(length=2)\n", + "c = uc.straight(length=2)\n", "c.plot()" ] }, @@ -128,7 +129,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.bend_euler(radius=5)\n", + "c = uc.bend(radius=5)\n", "c.plot()" ] }, @@ -139,7 +140,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ring_with_crossing()\n", + "c = uc.ring_with_crossing()\n", "c.plot()" ] }, @@ -150,7 +151,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.dbr()\n", + "c = uc.dbr()\n", "c.plot()" ] }, @@ -161,7 +162,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.spiral()\n", + "c = uc.spiral()\n", "c.plot()" ] }, @@ -172,7 +173,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.mzi_heater()\n", + "c = uc.mzi_heater()\n", "c.plot()" ] }, @@ -183,7 +184,7 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ring_single_heater()\n", + "c = uc.ring_single_heater()\n", "c.plot()" ] }, @@ -204,7 +205,7 @@ "metadata": {}, "outputs": [], "source": [ - "splitter = ubcpdk.components.ebeam_y_1550(decorator=gf.port.auto_rename_ports)\n", + "splitter = uc.ebeam_y_1550(decorator=gf.port.auto_rename_ports)\n", "mzi = gf.components.mzi(splitter=splitter)\n", "mzi.plot()" ] @@ -216,7 +217,7 @@ "metadata": {}, "outputs": [], "source": [ - "component_fiber_array = ubcpdk.components.add_fiber_array(component=mzi)\n", + "component_fiber_array = uc.add_fiber_array(component=mzi)\n", "component_fiber_array.plot()" ] }, @@ -227,8 +228,8 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.ring_single_heater()\n", - "c = ubcpdk.components.add_fiber_array_pads_rf(c)\n", + "c = uc.ring_single_heater()\n", + "c = uc.add_fiber_array_pads_rf(c)\n", "c.plot()" ] }, @@ -239,8 +240,8 @@ "metadata": {}, "outputs": [], "source": [ - "c = ubcpdk.components.mzi_heater()\n", - "c = ubcpdk.components.add_fiber_array_pads_rf(c, optical_routing_type=2)\n", + "c = uc.mzi_heater()\n", + "c = uc.add_fiber_array_pads_rf(c, optical_routing_type=2)\n", "c.plot()" ] }, @@ -284,14 +285,14 @@ "import gdsfactory as gf\n", "\n", "import ubcpdk\n", - "import ubcpdk.components as pdk\n", + "import ubcpdk.components as uc\n", "from ubcpdk import tech\n", "from ubcpdk.tech import LAYER\n", "\n", "\n", "gf.CONF.display_type = \"klayout\"\n", "size = (440, 470)\n", - "add_gc = ubcpdk.components.add_fiber_array\n", + "add_gc = uc.add_fiber_array\n", "pack = partial(\n", " gf.pack, max_size=size, add_ports_prefix=False, add_ports_suffix=False, spacing=2\n", ")\n", @@ -299,23 +300,23 @@ "@gf.cell\n", "def EBeam_JoaquinMatres_1() -> gf.Component:\n", " \"\"\"Add DBR cavities.\"\"\"\n", - " e = [add_gc(ubcpdk.components.straight())]\n", - " e += [add_gc(pdk.mzi(delta_length=dl)) for dl in [9.32, 93.19]]\n", + " e = [add_gc(uc.straight())]\n", + " e += [add_gc(uc.mzi(delta_length=dl)) for dl in [9.32, 93.19]]\n", " e += [\n", - " add_gc(gf.components.ring_single(radius=12, gap=gap, length_x=coupling_length))\n", + " add_gc(uc.ring_single(radius=12, gap=gap, length_x=coupling_length))\n", " for gap in [0.2]\n", " for coupling_length in [2.5, 4.5, 6.5]\n", " ]\n", "\n", " e += [\n", - " ubcpdk.components.dbr_cavity_te(w0=w0, dw=dw)\n", + " uc.dbr_cavity_te(w0=w0, dw=dw)\n", " for w0 in [0.5]\n", " for dw in [50e-3, 100e-3, 150e-3, 200e-3]\n", " ]\n", - " e += [add_gc(ubcpdk.components.ring_with_crossing())]\n", + " e += [add_gc(uc.ring_with_crossing())]\n", " e += [\n", " add_gc(\n", - " ubcpdk.components.ring_with_crossing(port_name=\"o2\", with_component=False)\n", + " uc.ring_with_crossing(port_name=\"o2\", with_component=False)\n", " )\n", " ]\n", "\n", @@ -344,8 +345,8 @@ " radius = 10\n", "\n", " e = [\n", - " ubcpdk.components.add_fiber_array(\n", - " component=ubcpdk.components.spiral(\n", + " uc.add_fiber_array(\n", + " component=uc.spiral(\n", " N=N,\n", " radius=radius,\n", " y_straight_inner_top=0,\n", @@ -356,8 +357,8 @@ " ]\n", "\n", " e.append(\n", - " ubcpdk.components.add_fiber_array(\n", - " component=ubcpdk.components.spiral(\n", + " uc.add_fiber_array(\n", + " component=uc.spiral(\n", " N=N,\n", " radius=radius,\n", " y_straight_inner_top=0,\n", @@ -387,13 +388,13 @@ "def EBeam_JoaquinMatres_3() -> gf.Component:\n", " \"\"\"contains mirror cavities and structures inside a resonator\"\"\"\n", " e = []\n", - " e += [add_gc(ubcpdk.components.ebeam_crossing4())]\n", - " e += [add_gc(ubcpdk.components.ebeam_adiabatic_te1550(), optical_routing_type=1)]\n", - " e += [add_gc(ubcpdk.components.ebeam_bdc_te1550())]\n", - " e += [add_gc(ubcpdk.components.ebeam_y_1550(), optical_routing_type=1)]\n", - " e += [add_gc(ubcpdk.components.ebeam_y_adiabatic_tapers(), optical_routing_type=1)]\n", + " e += [add_gc(uc.ebeam_crossing4())]\n", + " e += [add_gc(uc.ebeam_adiabatic_te1550(), optical_routing_type=1)]\n", + " e += [add_gc(uc.ebeam_bdc_te1550())]\n", + " e += [add_gc(uc.ebeam_y_1550(), optical_routing_type=1)]\n", + " e += [add_gc(uc.ebeam_y_adiabatic_tapers(), optical_routing_type=1)]\n", " e += [\n", - " add_gc(ubcpdk.components.straight(), component_name=f\"straight_{i}\")\n", + " add_gc(uc.straight(), component_name=f\"straight_{i}\")\n", " for i in range(2)\n", " ]\n", " c = gf.Component()\n", @@ -417,13 +418,13 @@ "@gf.cell\n", "def EBeam_JoaquinMatres_4() -> gf.Component:\n", " \"\"\"MZI interferometers.\"\"\"\n", - " mzi = partial(gf.components.mzi, splitter=ubcpdk.components.ebeam_y_1550)\n", + " mzi = partial(gf.components.mzi, splitter=uc.ebeam_y_1550)\n", " mzis = [mzi(delta_length=delta_length) for delta_length in [10, 40, 100]]\n", - " mzis_gc = [pdk.add_fiber_array(mzi) for mzi in mzis]\n", + " mzis_gc = [uc.add_fiber_array(mzi) for mzi in mzis]\n", "\n", - " mzis = [pdk.mzi_heater(delta_length=delta_length) for delta_length in [40]]\n", + " mzis = [uc.mzi_heater(delta_length=delta_length) for delta_length in [40]]\n", " mzis_heater_gc = [\n", - " pdk.add_fiber_array_pads_rf(mzi, orientation=90, optical_routing_type=2)\n", + " uc.add_fiber_array_pads_rf(mzi, orientation=90, optical_routing_type=2)\n", " for mzi in mzis\n", " ]\n", "\n", @@ -449,9 +450,9 @@ "@gf.cell\n", "def EBeam_JoaquinMatres_5() -> gf.Component:\n", " \"\"\"Ring resonators.\"\"\"\n", - " rings = [pdk.ring_single_heater(length_x=length_x) for length_x in [4, 6]]\n", + " rings = [uc.ring_single_heater(length_x=length_x) for length_x in [4, 6]]\n", " rings = [gf.functions.rotate180(ring) for ring in rings]\n", - " rings_gc = [pdk.add_fiber_array_pads_rf(ring) for ring in rings]\n", + " rings_gc = [uc.add_fiber_array_pads_rf(ring) for ring in rings]\n", "\n", " c = gf.Component()\n", " _ = c << pack(rings_gc)[0]\n", diff --git a/docs/notebooks/11_sparameters.ipynb b/docs/notebooks/11_sparameters.ipynb index 5e6597c4..c7da7ece 100644 --- a/docs/notebooks/11_sparameters.ipynb +++ b/docs/notebooks/11_sparameters.ipynb @@ -137,7 +137,7 @@ "outputs": [], "source": [ "for f in [\n", - " pdk.bend_euler,\n", + " pdk.bend,\n", " pdk.coupler,\n", " pdk.coupler_ring,\n", " pdk.ebeam_y_1550,\n", @@ -177,6 +177,18 @@ "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" } }, "nbformat": 4, diff --git a/docs/notebooks/11_sparameters_gratings.ipynb b/docs/notebooks/11_sparameters_gratings.ipynb index a552e90f..20f99648 100644 --- a/docs/notebooks/11_sparameters_gratings.ipynb +++ b/docs/notebooks/11_sparameters_gratings.ipynb @@ -153,6 +153,14 @@ "source": [ "help(gt.write_sparameters_grating_coupler)" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "285f61c1", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -163,6 +171,18 @@ "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" } }, "nbformat": 4, diff --git a/docs/notebooks/12_sim_plugins_tidy3d.ipynb b/docs/notebooks/12_sim_plugins_tidy3d.ipynb index c2e81dda..ff8e0958 100644 --- a/docs/notebooks/12_sim_plugins_tidy3d.ipynb +++ b/docs/notebooks/12_sim_plugins_tidy3d.ipynb @@ -105,7 +105,7 @@ "metadata": {}, "outputs": [], "source": [ - "mzi10 = gf.components.mzi(splitter=c, delta_length=10)\n", + "mzi10 = pdk.mzi(splitter=c, delta_length=10)\n", "mzi10.plot()" ] }, @@ -161,7 +161,7 @@ "circuit, _ = sax.circuit(\n", " netlist=netlist,\n", " models={\n", - " \"bend_euler\": bend_euler,\n", + " \"bend_euler_sc\": bend_euler,\n", " \"ebeam_y_1550\": ebeam_y_1550,\n", " \"straight\": straight,\n", " },\n", @@ -193,7 +193,7 @@ "metadata": {}, "outputs": [], "source": [ - "mzi20 = gf.components.mzi(splitter=c, delta_length=20)\n", + "mzi20 = pdk.mzi(splitter=c, delta_length=20)\n", "mzi20.plot()" ] }, @@ -208,7 +208,7 @@ "circuit, _ = sax.circuit(\n", " netlist=netlist,\n", " models={\n", - " \"bend_euler\": bend_euler,\n", + " \"bend_euler_sc\": bend_euler,\n", " \"ebeam_y_1550\": ebeam_y_1550,\n", " \"straight\": straight,\n", " },\n", @@ -232,6 +232,14 @@ "plt.grid(True)\n", "plt.show()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "01c019da", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -242,6 +250,18 @@ "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" } }, "nbformat": 4, diff --git a/docs/notebooks/14_sax_tidy3d.ipynb b/docs/notebooks/14_sax_tidy3d.ipynb index 91e11037..5a4cb943 100644 --- a/docs/notebooks/14_sax_tidy3d.ipynb +++ b/docs/notebooks/14_sax_tidy3d.ipynb @@ -834,6 +834,12 @@ "source": [ "As you can see two couplers have more broadband response" ] + }, + { + "cell_type": "markdown", + "id": "90389668", + "metadata": {}, + "source": [] } ], "metadata": { @@ -844,6 +850,18 @@ "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" } }, "nbformat": 4, diff --git a/pyproject.toml b/pyproject.toml index 864ba47b..9be909db 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ classifiers = [ "Operating System :: OS Independent" ] dependencies = [ - "gdsfactory[cad]==7.8.9", + "gdsfactory[cad]==7.8.10", "gplugins[tidy3d,sax,schematic]>=0.8.4,<0.9.0" ] description = "ubcpdk pdk" diff --git a/tests/ref/add_fiber_array_pads_rf.gds b/tests/ref/add_fiber_array_pads_rf.gds index 4f1f4665..0f98db61 100644 Binary files a/tests/ref/add_fiber_array_pads_rf.gds and b/tests/ref/add_fiber_array_pads_rf.gds differ diff --git a/tests/ref/bend_euler.gds b/tests/ref/bend_euler.gds index 31b6c8e5..f839ad8c 100644 Binary files a/tests/ref/bend_euler.gds and b/tests/ref/bend_euler.gds differ diff --git a/tests/ref/bend_euler_angle180.gds b/tests/ref/bend_euler_angle180.gds new file mode 100644 index 00000000..27aa792e Binary files /dev/null and b/tests/ref/bend_euler_angle180.gds differ diff --git a/tests/ref/bend_euler_npoints100.gds b/tests/ref/bend_euler_npoints100.gds deleted file mode 100644 index 406d4711..00000000 Binary files a/tests/ref/bend_euler_npoints100.gds and /dev/null differ diff --git a/tests/ref/bend_euler_sc.gds b/tests/ref/bend_euler_sc.gds new file mode 100644 index 00000000..a85aef2d Binary files /dev/null and b/tests/ref/bend_euler_sc.gds differ diff --git a/tests/ref/bend_euler_sc_angle180.gds b/tests/ref/bend_euler_sc_angle180.gds new file mode 100644 index 00000000..dda0a44f Binary files /dev/null and b/tests/ref/bend_euler_sc_angle180.gds differ diff --git a/tests/ref/bezier_9d5ee62f_bend_s.gds b/tests/ref/bezier_9d5ee62f_bend_s.gds index 20c52b3e..1f43342c 100644 Binary files a/tests/ref/bezier_9d5ee62f_bend_s.gds and b/tests/ref/bezier_9d5ee62f_bend_s.gds differ diff --git a/tests/ref/bezier_c3570097_bend_s.gds b/tests/ref/bezier_c3570097_bend_s.gds deleted file mode 100644 index 9e41e01a..00000000 Binary files a/tests/ref/bezier_c3570097_bend_s.gds and /dev/null differ diff --git a/tests/ref/coupler_50c22d89.gds b/tests/ref/coupler_50c22d89.gds deleted file mode 100644 index f79b3e53..00000000 Binary files a/tests/ref/coupler_50c22d89.gds and /dev/null differ diff --git a/tests/ref/coupler_d51b16db.gds b/tests/ref/coupler_d51b16db.gds deleted file mode 100644 index 6563261c..00000000 Binary files a/tests/ref/coupler_d51b16db.gds and /dev/null differ diff --git a/tests/ref/coupler_fee1ceb0.gds b/tests/ref/coupler_fee1ceb0.gds deleted file mode 100644 index ff3d86a2..00000000 Binary files a/tests/ref/coupler_fee1ceb0.gds and /dev/null differ diff --git a/tests/ref/coupler_ring.gds b/tests/ref/coupler_ring.gds deleted file mode 100644 index fc045295..00000000 Binary files a/tests/ref/coupler_ring.gds and /dev/null differ diff --git a/tests/ref/coupler_ring_50d59624.gds b/tests/ref/coupler_ring_50d59624.gds new file mode 100644 index 00000000..64895c63 Binary files /dev/null and b/tests/ref/coupler_ring_50d59624.gds differ diff --git a/tests/ref/dbg.gds b/tests/ref/dbg.gds index 4a7a829b..dc680a33 100644 Binary files a/tests/ref/dbg.gds and b/tests/ref/dbg.gds differ diff --git a/tests/ref/dbr_cavity.gds b/tests/ref/dbr_cavity.gds index a4105231..1ed62a60 100644 Binary files a/tests/ref/dbr_cavity.gds and b/tests/ref/dbr_cavity.gds differ diff --git a/tests/ref/dbr_cavity_add_fiber_ar_f2ab6ad2.gds b/tests/ref/dbr_cavity_add_fiber_ar_f2ab6ad2.gds deleted file mode 100644 index 26b48307..00000000 Binary files a/tests/ref/dbr_cavity_add_fiber_ar_f2ab6ad2.gds and /dev/null differ diff --git a/tests/ref/dbr_cavity_add_fiber_ar_a9c9f0b6.gds b/tests/ref/dbr_cavity_add_fiber_array_2e3389fa_add_fiber_array_37b25c57.gds similarity index 96% rename from tests/ref/dbr_cavity_add_fiber_ar_a9c9f0b6.gds rename to tests/ref/dbr_cavity_add_fiber_array_2e3389fa_add_fiber_array_37b25c57.gds index c2789587..5ecef3cb 100644 Binary files a/tests/ref/dbr_cavity_add_fiber_ar_a9c9f0b6.gds and b/tests/ref/dbr_cavity_add_fiber_array_2e3389fa_add_fiber_array_37b25c57.gds differ diff --git a/tests/ref/dbr_cavity_add_fiber_array_8a21ac4c_add_fiber_array_37b25c57.gds b/tests/ref/dbr_cavity_add_fiber_array_8a21ac4c_add_fiber_array_37b25c57.gds deleted file mode 100644 index 6d29e148..00000000 Binary files a/tests/ref/dbr_cavity_add_fiber_array_8a21ac4c_add_fiber_array_37b25c57.gds and /dev/null differ diff --git a/tests/ref/dbr_cavity_add_fiber_array_2f157efc_add_fiber_array_37b25c57.gds b/tests/ref/dbr_cavity_add_fiber_array_9ce1999d_add_fiber_array_37b25c57.gds similarity index 97% rename from tests/ref/dbr_cavity_add_fiber_array_2f157efc_add_fiber_array_37b25c57.gds rename to tests/ref/dbr_cavity_add_fiber_array_9ce1999d_add_fiber_array_37b25c57.gds index 19fa8912..51ea3564 100644 Binary files a/tests/ref/dbr_cavity_add_fiber_array_2f157efc_add_fiber_array_37b25c57.gds and b/tests/ref/dbr_cavity_add_fiber_array_9ce1999d_add_fiber_array_37b25c57.gds differ diff --git a/tests/ref/ebeam_BondPad.gds b/tests/ref/ebeam_BondPad.gds deleted file mode 100644 index fbe0a959..00000000 Binary files a/tests/ref/ebeam_BondPad.gds and /dev/null differ diff --git a/tests/ref/ebeam_adiabatic_te1550.gds b/tests/ref/ebeam_adiabatic_te1550.gds deleted file mode 100644 index 40953eb2..00000000 Binary files a/tests/ref/ebeam_adiabatic_te1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_adiabatic_tm1550.gds b/tests/ref/ebeam_adiabatic_tm1550.gds deleted file mode 100644 index 02bb9110..00000000 Binary files a/tests/ref/ebeam_adiabatic_tm1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_bdc_te1550.gds b/tests/ref/ebeam_bdc_te1550.gds deleted file mode 100644 index 05e3cbfe..00000000 Binary files a/tests/ref/ebeam_bdc_te1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_bdc_tm1550.gds b/tests/ref/ebeam_bdc_tm1550.gds deleted file mode 100644 index a030e5ed..00000000 Binary files a/tests/ref/ebeam_bdc_tm1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_crossing4.gds b/tests/ref/ebeam_crossing4.gds deleted file mode 100644 index ba87f418..00000000 Binary files a/tests/ref/ebeam_crossing4.gds and /dev/null differ diff --git a/tests/ref/ebeam_crossing4_2ports.gds b/tests/ref/ebeam_crossing4_2ports.gds index 10b903e9..4c2168c5 100644 Binary files a/tests/ref/ebeam_crossing4_2ports.gds and b/tests/ref/ebeam_crossing4_2ports.gds differ diff --git a/tests/ref/ebeam_dc_halfring_straight.gds b/tests/ref/ebeam_dc_halfring_straight.gds index 8d0882ac..c24a06c8 100644 Binary files a/tests/ref/ebeam_dc_halfring_straight.gds and b/tests/ref/ebeam_dc_halfring_straight.gds differ diff --git a/tests/ref/ebeam_splitter_adiabati_f8376e78.gds b/tests/ref/ebeam_splitter_adiabati_f8376e78.gds deleted file mode 100644 index 60a3d34f..00000000 Binary files a/tests/ref/ebeam_splitter_adiabati_f8376e78.gds and /dev/null differ diff --git a/tests/ref/ebeam_splitter_swg_assist_te1310.gds b/tests/ref/ebeam_splitter_swg_assist_te1310.gds deleted file mode 100644 index 4733d5f0..00000000 Binary files a/tests/ref/ebeam_splitter_swg_assist_te1310.gds and /dev/null differ diff --git a/tests/ref/ebeam_splitter_swg_assist_te1550.gds b/tests/ref/ebeam_splitter_swg_assist_te1550.gds deleted file mode 100644 index d71ba3b3..00000000 Binary files a/tests/ref/ebeam_splitter_swg_assist_te1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_swg_edgecoupler.gds b/tests/ref/ebeam_swg_edgecoupler.gds deleted file mode 100644 index f9ae3b98..00000000 Binary files a/tests/ref/ebeam_swg_edgecoupler.gds and /dev/null differ diff --git a/tests/ref/ebeam_terminator_te1310.gds b/tests/ref/ebeam_terminator_te1310.gds deleted file mode 100644 index 27a443bc..00000000 Binary files a/tests/ref/ebeam_terminator_te1310.gds and /dev/null differ diff --git a/tests/ref/ebeam_terminator_te1550.gds b/tests/ref/ebeam_terminator_te1550.gds deleted file mode 100644 index b4c68f0f..00000000 Binary files a/tests/ref/ebeam_terminator_te1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_terminator_tm1550.gds b/tests/ref/ebeam_terminator_tm1550.gds deleted file mode 100644 index c07be0ee..00000000 Binary files a/tests/ref/ebeam_terminator_tm1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_y_1550.gds b/tests/ref/ebeam_y_1550.gds deleted file mode 100644 index e7dda510..00000000 Binary files a/tests/ref/ebeam_y_1550.gds and /dev/null differ diff --git a/tests/ref/ebeam_y_adiabatic.gds b/tests/ref/ebeam_y_adiabatic.gds deleted file mode 100644 index e5426535..00000000 Binary files a/tests/ref/ebeam_y_adiabatic.gds and /dev/null differ diff --git a/tests/ref/ebeam_y_adiabatic_1310.gds b/tests/ref/ebeam_y_adiabatic_1310.gds deleted file mode 100644 index 473677c6..00000000 Binary files a/tests/ref/ebeam_y_adiabatic_1310.gds and /dev/null differ diff --git a/tests/ref/ebeam_y_adiabatic_tapers.gds b/tests/ref/ebeam_y_adiabatic_tapers.gds index 674950ae..a0b37afe 100644 Binary files a/tests/ref/ebeam_y_adiabatic_tapers.gds and b/tests/ref/ebeam_y_adiabatic_tapers.gds differ diff --git a/tests/ref/mirror_a38c0f84_gc_te15_79b73d72.gds b/tests/ref/mirror_a38c0f84_gc_te15_79b73d72.gds deleted file mode 100644 index 271c907b..00000000 Binary files a/tests/ref/mirror_a38c0f84_gc_te15_79b73d72.gds and /dev/null differ diff --git a/tests/ref/mirror_cd7472ae_gc_te13_d32e5c2e.gds b/tests/ref/mirror_cd7472ae_gc_te13_d32e5c2e.gds deleted file mode 100644 index 1910285c..00000000 Binary files a/tests/ref/mirror_cd7472ae_gc_te13_d32e5c2e.gds and /dev/null differ diff --git a/tests/ref/mirror_d2cc2b58_gc_te15_311df1af.gds b/tests/ref/mirror_d2cc2b58_gc_te15_311df1af.gds deleted file mode 100644 index 291920eb..00000000 Binary files a/tests/ref/mirror_d2cc2b58_gc_te15_311df1af.gds and /dev/null differ diff --git a/tests/ref/mmi1x2_50c22d89.gds b/tests/ref/mmi1x2_50c22d89.gds deleted file mode 100644 index 6d1a2bbe..00000000 Binary files a/tests/ref/mmi1x2_50c22d89.gds and /dev/null differ diff --git a/tests/ref/mmi1x2_af9b4151.gds b/tests/ref/mmi1x2_af9b4151.gds deleted file mode 100644 index 19e672ac..00000000 Binary files a/tests/ref/mmi1x2_af9b4151.gds and /dev/null differ diff --git a/tests/ref/mmi1x2_fee1ceb0.gds b/tests/ref/mmi1x2_fee1ceb0.gds deleted file mode 100644 index 18a2f1ba..00000000 Binary files a/tests/ref/mmi1x2_fee1ceb0.gds and /dev/null differ diff --git a/tests/ref/mzi_ab5edfa6.gds b/tests/ref/mzi_2dc854ba.gds similarity index 74% rename from tests/ref/mzi_ab5edfa6.gds rename to tests/ref/mzi_2dc854ba.gds index 3235a67a..b4ea9c52 100644 Binary files a/tests/ref/mzi_ab5edfa6.gds and b/tests/ref/mzi_2dc854ba.gds differ diff --git a/tests/ref/mzi_54fdfbdf.gds b/tests/ref/mzi_54fdfbdf.gds new file mode 100644 index 00000000..b22112b3 Binary files /dev/null and b/tests/ref/mzi_54fdfbdf.gds differ diff --git a/tests/ref/mzi_ba583df0.gds b/tests/ref/mzi_ba583df0.gds new file mode 100644 index 00000000..dd1f2dbd Binary files /dev/null and b/tests/ref/mzi_ba583df0.gds differ diff --git a/tests/ref/mzi_55c1098f.gds b/tests/ref/mzi_ca44f52c.gds similarity index 57% rename from tests/ref/mzi_55c1098f.gds rename to tests/ref/mzi_ca44f52c.gds index 57c554a3..ab7aa9d0 100644 Binary files a/tests/ref/mzi_55c1098f.gds and b/tests/ref/mzi_ca44f52c.gds differ diff --git a/tests/ref/mzi_df0f11f6.gds b/tests/ref/mzi_df0f11f6.gds deleted file mode 100644 index d62e586f..00000000 Binary files a/tests/ref/mzi_df0f11f6.gds and /dev/null differ diff --git a/tests/ref/photonic_wirebond_surfa_8365a94f.gds b/tests/ref/photonic_wirebond_surfa_8365a94f.gds deleted file mode 100644 index a2575764..00000000 Binary files a/tests/ref/photonic_wirebond_surfa_8365a94f.gds and /dev/null differ diff --git a/tests/ref/photonic_wirebond_surfa_b165631b.gds b/tests/ref/photonic_wirebond_surfa_b165631b.gds deleted file mode 100644 index 050869ad..00000000 Binary files a/tests/ref/photonic_wirebond_surfa_b165631b.gds and /dev/null differ diff --git a/tests/ref/ring_double_1628c13a.gds b/tests/ref/ring_double_1628c13a.gds new file mode 100644 index 00000000..d9e33887 Binary files /dev/null and b/tests/ref/ring_double_1628c13a.gds differ diff --git a/tests/ref/ring_double_a555db4c.gds b/tests/ref/ring_double_a555db4c.gds new file mode 100644 index 00000000..32f8acdd Binary files /dev/null and b/tests/ref/ring_double_a555db4c.gds differ diff --git a/tests/ref/ring_double_heater_171f554b.gds b/tests/ref/ring_double_heater_13f0172f.gds similarity index 57% rename from tests/ref/ring_double_heater_171f554b.gds rename to tests/ref/ring_double_heater_13f0172f.gds index 63d776ec..ebea8ba0 100644 Binary files a/tests/ref/ring_double_heater_171f554b.gds and b/tests/ref/ring_double_heater_13f0172f.gds differ diff --git a/tests/ref/ring_single.gds b/tests/ref/ring_single.gds deleted file mode 100644 index 5ba36378..00000000 Binary files a/tests/ref/ring_single.gds and /dev/null differ diff --git a/tests/ref/ring_single_68329927.gds b/tests/ref/ring_single_68329927.gds new file mode 100644 index 00000000..9fba1b59 Binary files /dev/null and b/tests/ref/ring_single_68329927.gds differ diff --git a/tests/ref/ring_single_7305e1f1.gds b/tests/ref/ring_single_7305e1f1.gds new file mode 100644 index 00000000..385a72f3 Binary files /dev/null and b/tests/ref/ring_single_7305e1f1.gds differ diff --git a/tests/ref/ring_single_909e601c.gds b/tests/ref/ring_single_909e601c.gds deleted file mode 100644 index f9f82901..00000000 Binary files a/tests/ref/ring_single_909e601c.gds and /dev/null differ diff --git a/tests/ref/ring_single_dut_0f26eb6d.gds b/tests/ref/ring_single_dut_0f26eb6d.gds deleted file mode 100644 index 30cbd1c7..00000000 Binary files a/tests/ref/ring_single_dut_0f26eb6d.gds and /dev/null differ diff --git a/tests/ref/ring_single_dut_2f65884a.gds b/tests/ref/ring_single_dut_2f65884a.gds deleted file mode 100644 index 25dfda90..00000000 Binary files a/tests/ref/ring_single_dut_2f65884a.gds and /dev/null differ diff --git a/tests/ref/ring_single_dut_3c15e902.gds b/tests/ref/ring_single_dut_3c15e902.gds deleted file mode 100644 index f6d2094b..00000000 Binary files a/tests/ref/ring_single_dut_3c15e902.gds and /dev/null differ diff --git a/tests/ref/ring_single_dut_61f5f94e.gds b/tests/ref/ring_single_dut_61f5f94e.gds deleted file mode 100644 index 4c2fab1e..00000000 Binary files a/tests/ref/ring_single_dut_61f5f94e.gds and /dev/null differ diff --git a/tests/ref/ring_single_dut_69406b3c.gds b/tests/ref/ring_single_dut_69406b3c.gds new file mode 100644 index 00000000..ab43c1f8 Binary files /dev/null and b/tests/ref/ring_single_dut_69406b3c.gds differ diff --git a/tests/ref/ring_single_dut_7aeb906a.gds b/tests/ref/ring_single_dut_7aeb906a.gds new file mode 100644 index 00000000..882658e4 Binary files /dev/null and b/tests/ref/ring_single_dut_7aeb906a.gds differ diff --git a/tests/ref/ring_single_heater_171f554b.gds b/tests/ref/ring_single_heater_171f554b.gds deleted file mode 100644 index 4a8baad6..00000000 Binary files a/tests/ref/ring_single_heater_171f554b.gds and /dev/null differ diff --git a/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_c0e05349.gds b/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_c0e05349.gds deleted file mode 100644 index ae1d9134..00000000 Binary files a/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_c0e05349.gds and /dev/null differ diff --git a/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_dc_c0e05349.gds b/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_dc_c0e05349.gds deleted file mode 100644 index b3732294..00000000 Binary files a/tests/ref/ring_single_heater_171f554b_add_electrical_pads_top_dc_c0e05349.gds and /dev/null differ diff --git a/tests/ref/ring_single_heater_4fd094a9.gds b/tests/ref/ring_single_heater_4fd094a9.gds new file mode 100644 index 00000000..a04562e3 Binary files /dev/null and b/tests/ref/ring_single_heater_4fd094a9.gds differ diff --git a/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_c0e05349.gds b/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_c0e05349.gds new file mode 100644 index 00000000..99eb257f Binary files /dev/null and b/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_c0e05349.gds differ diff --git a/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_dc_c0e05349.gds b/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_dc_c0e05349.gds new file mode 100644 index 00000000..244d622d Binary files /dev/null and b/tests/ref/ring_single_heater_4fd094a9_add_electrical_pads_top_dc_c0e05349.gds differ diff --git a/tests/ref/ring_single_heater_171f_ac60d9ba.gds b/tests/ref/ring_single_heater_60c28d4a.gds similarity index 56% rename from tests/ref/ring_single_heater_171f_ac60d9ba.gds rename to tests/ref/ring_single_heater_60c28d4a.gds index 2c164004..102134f5 100644 Binary files a/tests/ref/ring_single_heater_171f_ac60d9ba.gds and b/tests/ref/ring_single_heater_60c28d4a.gds differ diff --git a/tests/ref/ring_single_heater_171f_5dab5bcc.gds b/tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_c0e05349.gds similarity index 50% rename from tests/ref/ring_single_heater_171f_5dab5bcc.gds rename to tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_c0e05349.gds index cf18a780..f70f73fb 100644 Binary files a/tests/ref/ring_single_heater_171f_5dab5bcc.gds and b/tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_c0e05349.gds differ diff --git a/tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_dc_c0e05349.gds b/tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_dc_c0e05349.gds new file mode 100644 index 00000000..e2f4c9b8 Binary files /dev/null and b/tests/ref/ring_single_heater_60c28d4a_add_electrical_pads_top_dc_c0e05349.gds differ diff --git a/tests/ref/spiral_external_io.gds b/tests/ref/spiral_external_io.gds index 155c01e7..ce28b50a 100644 Binary files a/tests/ref/spiral_external_io.gds and b/tests/ref/spiral_external_io.gds differ diff --git a/tests/ref/straight.gds b/tests/ref/straight_8c41fd35.gds similarity index 61% rename from tests/ref/straight.gds rename to tests/ref/straight_8c41fd35.gds index 10fd0ad7..e8ecdc6d 100644 Binary files a/tests/ref/straight.gds and b/tests/ref/straight_8c41fd35.gds differ diff --git a/tests/ref/straight_add_fiber_array_8b85b61f_add_fiber_array.gds b/tests/ref/straight_8c41fd35_add_fiber_array_3c7e0cfe_add_fiber_array.gds similarity index 96% rename from tests/ref/straight_add_fiber_array_8b85b61f_add_fiber_array.gds rename to tests/ref/straight_8c41fd35_add_fiber_array_3c7e0cfe_add_fiber_array.gds index 23e5ecf3..42bbf61b 100644 Binary files a/tests/ref/straight_add_fiber_array_8b85b61f_add_fiber_array.gds and b/tests/ref/straight_8c41fd35_add_fiber_array_3c7e0cfe_add_fiber_array.gds differ diff --git a/tests/ref/straight_add_fiber_array_35903362_add_fiber_array.gds b/tests/ref/straight_8c41fd35_add_fiber_array_8234b5f5_add_fiber_array.gds similarity index 97% rename from tests/ref/straight_add_fiber_array_35903362_add_fiber_array.gds rename to tests/ref/straight_8c41fd35_add_fiber_array_8234b5f5_add_fiber_array.gds index f80a8269..1c4e5482 100644 Binary files a/tests/ref/straight_add_fiber_array_35903362_add_fiber_array.gds and b/tests/ref/straight_8c41fd35_add_fiber_array_8234b5f5_add_fiber_array.gds differ diff --git a/tests/ref/straight_add_fiber_arra_448312f9.gds b/tests/ref/straight_add_fiber_arra_448312f9.gds deleted file mode 100644 index 1f5d1c03..00000000 Binary files a/tests/ref/straight_add_fiber_arra_448312f9.gds and /dev/null differ diff --git a/tests/ref/straight_add_fiber_arra_95f3313e.gds b/tests/ref/straight_add_fiber_arra_95f3313e.gds deleted file mode 100644 index fe479163..00000000 Binary files a/tests/ref/straight_add_fiber_arra_95f3313e.gds and /dev/null differ diff --git a/tests/ref/straight_add_fiber_array_c0aaeaa4_add_fiber_array.gds b/tests/ref/straight_add_fiber_array_c0aaeaa4_add_fiber_array.gds deleted file mode 100644 index 1c066c05..00000000 Binary files a/tests/ref/straight_add_fiber_array_c0aaeaa4_add_fiber_array.gds and /dev/null differ diff --git a/tests/ref/straight_one_pin.gds b/tests/ref/straight_one_pin.gds index cf7d7135..106ac2cc 100644 Binary files a/tests/ref/straight_one_pin.gds and b/tests/ref/straight_one_pin.gds differ diff --git a/tests/ref/taper.gds b/tests/ref/taper.gds index 14eb7454..626798e3 100644 Binary files a/tests/ref/taper.gds and b/tests/ref/taper.gds differ diff --git a/tests/test_components/test_pdk_settings_add_fiber_array_.yml b/tests/test_components/test_pdk_settings_add_fiber_array_.yml index 87dadeee..a4333845 100644 --- a/tests/test_components/test_pdk_settings_add_fiber_array_.yml +++ b/tests/test_components/test_pdk_settings_add_fiber_array_.yml @@ -1,11 +1,22 @@ -name: straight_add_fiber_array_35903362_add_fiber_array +name: straight_8c41fd35_add_fiber_array_3c7e0cfe_add_fiber_array settings: changed: {} child: changed: + bend: + function: bend_euler_sc component: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc fanout_length: 0.0 get_input_label_text_function: @@ -18,11 +29,34 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false child: - changed: {} + changed: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 child: null default: + add_bbox: null add_pins: true cross_section: xs_sc layer: null @@ -30,6 +64,15 @@ settings: npoints: 2 width: null full: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 add_pins: true cross_section: xs_sc layer: null @@ -48,7 +91,7 @@ settings: width: 0.5 info_version: 2 module: gdsfactory.components.straight - name: straight + name: straight_8c41fd35 default: component: function: straight @@ -72,9 +115,20 @@ settings: settings: port_type: optical full: + bend: + function: bend_euler_sc component: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc component_name: null cross_section: xs_sc @@ -95,6 +149,19 @@ settings: function: select_ports settings: port_type: optical + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false function_name: add_fiber_array info: @@ -113,11 +180,20 @@ settings: width: 0.5 info_version: 2 module: gdsfactory.routing.add_fiber_array - name: straight_add_fiber_array_35903362 + name: straight_8c41fd35_add_fiber_array_3c7e0cfe default: component: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc component_name: null cross_section: xs_sc @@ -131,11 +207,33 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false full: component: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc component_name: null cross_section: xs_sc @@ -149,6 +247,19 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false function_name: add_fiber_array info: @@ -167,4 +278,4 @@ settings: width: 0.5 info_version: 2 module: ubcpdk.components - name: straight_add_fiber_array_35903362_add_fiber_array + name: straight_8c41fd35_add_fiber_array_3c7e0cfe_add_fiber_array diff --git a/tests/test_components/test_pdk_settings_add_pads_dc_.yml b/tests/test_components/test_pdk_settings_add_pads_dc_.yml index 880bb654..6aef2171 100644 --- a/tests/test_components/test_pdk_settings_add_pads_dc_.yml +++ b/tests/test_components/test_pdk_settings_add_pads_dc_.yml @@ -1,4 +1,4 @@ -name: ring_single_heater_171f554b_add_electrical_pads_top_dc_c0e05349 +name: ring_single_heater_4fd094a9_add_electrical_pads_top_dc_c0e05349 settings: changed: component: ring_single_heater @@ -31,6 +31,86 @@ settings: - 125 child: changed: + bend: + function: bend_euler_sc + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -49,6 +129,8 @@ settings: default: bend: function: bend_euler + bend_coupler: + function: bend_euler coupler_ring: function: coupler_ring cross_section: xs_sc @@ -58,6 +140,8 @@ settings: length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight via_stack: function: via_stack settings: @@ -82,16 +166,93 @@ settings: - 0 full: bend: + function: bend_euler_sc + bend_coupler: function: bend_euler coupler_ring: function: coupler_ring - cross_section: xs_sc + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section_waveguide_heater: xs_sc_heater_metal gap: 0.2 length_x: 4.0 length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -113,7 +274,7 @@ settings: info: {} info_version: 2 module: gdsfactory.components.ring_single_heater - name: ring_single_heater_171f554b + name: ring_single_heater_4fd094a9 default: component: function: straight @@ -182,4 +343,4 @@ settings: info: {} info_version: 2 module: gdsfactory.routing.add_electrical_pads_top_dc - name: ring_single_heater_171f554b_add_electrical_pads_top_dc_c0e05349 + name: ring_single_heater_4fd094a9_add_electrical_pads_top_dc_c0e05349 diff --git a/tests/test_components/test_pdk_settings_add_pads_rf_.yml b/tests/test_components/test_pdk_settings_add_pads_rf_.yml index 579a25a5..3fb0b8c7 100644 --- a/tests/test_components/test_pdk_settings_add_pads_rf_.yml +++ b/tests/test_components/test_pdk_settings_add_pads_rf_.yml @@ -1,4 +1,4 @@ -name: ring_single_heater_171f554b_add_electrical_pads_top_c0e05349 +name: ring_single_heater_4fd094a9_add_electrical_pads_top_c0e05349 settings: changed: component: ring_single_heater @@ -31,6 +31,86 @@ settings: - 125 child: changed: + bend: + function: bend_euler_sc + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -49,6 +129,8 @@ settings: default: bend: function: bend_euler + bend_coupler: + function: bend_euler coupler_ring: function: coupler_ring cross_section: xs_sc @@ -58,6 +140,8 @@ settings: length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight via_stack: function: via_stack settings: @@ -82,16 +166,93 @@ settings: - 0 full: bend: + function: bend_euler_sc + bend_coupler: function: bend_euler coupler_ring: function: coupler_ring - cross_section: xs_sc + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section_waveguide_heater: xs_sc_heater_metal gap: 0.2 length_x: 4.0 length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -113,7 +274,7 @@ settings: info: {} info_version: 2 module: gdsfactory.components.ring_single_heater - name: ring_single_heater_171f554b + name: ring_single_heater_4fd094a9 default: component: function: straight @@ -175,4 +336,4 @@ settings: info: {} info_version: 2 module: gdsfactory.routing.add_electrical_pads_top - name: ring_single_heater_171f554b_add_electrical_pads_top_c0e05349 + name: ring_single_heater_4fd094a9_add_electrical_pads_top_c0e05349 diff --git a/tests/test_components/test_pdk_settings_bend_.yml b/tests/test_components/test_pdk_settings_bend_.yml index fb3daaa7..90d43eb4 100644 --- a/tests/test_components/test_pdk_settings_bend_.yml +++ b/tests/test_components/test_pdk_settings_bend_.yml @@ -1,30 +1,10 @@ -name: bend_euler +name: bend_euler_sc settings: changed: {} child: null - default: - add_pins: true - angle: 90.0 - cross_section: xs_sc - direction: ccw - layer: null - npoints: null - p: 0.5 - radius: null - width: null - with_arc_floorplan: true - full: - add_pins: true - angle: 90.0 - cross_section: xs_sc - direction: ccw - layer: null - npoints: null - p: 0.5 - radius: null - width: null - with_arc_floorplan: true - function_name: bend_euler + default: {} + full: {} + function_name: bend_euler_sc info: dy: 10.0 length: 16.637 @@ -33,10 +13,10 @@ settings: route_info: length: 16.637 n_bend_90: 1.0 - type: xs_sc + type: xs_sc_devrec weight: 16.637 - xs_sc_length: 16.637 + xs_sc_devrec_length: 16.637 width: 0.5 info_version: 2 - module: gdsfactory.components.bend_euler - name: bend_euler + module: ubcpdk.components + name: bend_euler_sc diff --git a/tests/test_components/test_pdk_settings_bend_euler180_.yml b/tests/test_components/test_pdk_settings_bend_euler180_.yml new file mode 100644 index 00000000..e97119cb --- /dev/null +++ b/tests/test_components/test_pdk_settings_bend_euler180_.yml @@ -0,0 +1,45 @@ +name: bend_euler_angle180 +settings: + changed: + angle: 180 + child: null + default: + add_bbox: null + add_pins: true + angle: 90.0 + cross_section: xs_sc + direction: ccw + layer: null + npoints: null + p: 0.5 + radius: null + width: null + with_arc_floorplan: true + full: + add_bbox: null + add_pins: true + angle: 180 + cross_section: xs_sc + direction: ccw + layer: null + npoints: null + p: 0.5 + radius: null + width: null + with_arc_floorplan: true + function_name: bend_euler + info: + dy: 0.0 + length: 42.817 + radius: 10.0 + radius_min: 9.086 + route_info: + length: 42.817 + n_bend_90: 2.0 + type: xs_sc + weight: 42.817 + xs_sc_length: 42.817 + width: 0.5 + info_version: 2 + module: gdsfactory.components.bend_euler + name: bend_euler_angle180 diff --git a/tests/test_components/test_pdk_settings_bend_euler180_sc_.yml b/tests/test_components/test_pdk_settings_bend_euler180_sc_.yml new file mode 100644 index 00000000..683812eb --- /dev/null +++ b/tests/test_components/test_pdk_settings_bend_euler180_sc_.yml @@ -0,0 +1,24 @@ +name: bend_euler_sc_angle180 +settings: + changed: + angle: 180 + child: null + default: {} + full: + angle: 180 + function_name: bend_euler_sc + info: + dy: 0.0 + length: 42.817 + radius: 10.0 + radius_min: 9.086 + route_info: + length: 42.817 + n_bend_90: 2.0 + type: xs_sc_devrec + weight: 42.817 + xs_sc_devrec_length: 42.817 + width: 0.5 + info_version: 2 + module: ubcpdk.components + name: bend_euler_sc_angle180 diff --git a/tests/test_components/test_pdk_settings_bend_euler_.yml b/tests/test_components/test_pdk_settings_bend_euler_.yml index 218d29fd..861874a2 100644 --- a/tests/test_components/test_pdk_settings_bend_euler_.yml +++ b/tests/test_components/test_pdk_settings_bend_euler_.yml @@ -1,9 +1,9 @@ -name: bend_euler_npoints100 +name: bend_euler settings: - changed: - npoints: 100 + changed: {} child: null default: + add_bbox: null add_pins: true angle: 90.0 cross_section: xs_sc @@ -15,12 +15,13 @@ settings: width: null with_arc_floorplan: true full: + add_bbox: null add_pins: true angle: 90.0 cross_section: xs_sc direction: ccw layer: null - npoints: 100 + npoints: null p: 0.5 radius: null width: null @@ -40,4 +41,4 @@ settings: width: 0.5 info_version: 2 module: gdsfactory.components.bend_euler - name: bend_euler_npoints100 + name: bend_euler diff --git a/tests/test_components/test_pdk_settings_bend_euler_sc_.yml b/tests/test_components/test_pdk_settings_bend_euler_sc_.yml new file mode 100644 index 00000000..90d43eb4 --- /dev/null +++ b/tests/test_components/test_pdk_settings_bend_euler_sc_.yml @@ -0,0 +1,22 @@ +name: bend_euler_sc +settings: + changed: {} + child: null + default: {} + full: {} + function_name: bend_euler_sc + info: + dy: 10.0 + length: 16.637 + radius: 10.0 + radius_min: 7.061 + route_info: + length: 16.637 + n_bend_90: 1.0 + type: xs_sc_devrec + weight: 16.637 + xs_sc_devrec_length: 16.637 + width: 0.5 + info_version: 2 + module: ubcpdk.components + name: bend_euler_sc diff --git a/tests/test_components/test_pdk_settings_coupler_ring_.yml b/tests/test_components/test_pdk_settings_coupler_ring_.yml index d8f6db3b..cf0ed8fa 100644 --- a/tests/test_components/test_pdk_settings_coupler_ring_.yml +++ b/tests/test_components/test_pdk_settings_coupler_ring_.yml @@ -1,8 +1,41 @@ -name: coupler_ring +name: coupler_ring_50d59624 settings: - changed: {} + changed: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null child: null default: + add_bbox: null bend: function: bend_euler coupler90: @@ -16,13 +49,44 @@ settings: length_x: 4.0 radius: 5.0 full: + add_bbox: + function: add_pins_bbox_siepic bend: function: bend_euler coupler90: function: coupler90 coupler_straight: function: coupler_straight - cross_section: xs_sc + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section_bend: null gap: 0.2 length_extension: 3 @@ -32,4 +96,4 @@ settings: info: {} info_version: 2 module: gdsfactory.components.coupler_ring - name: coupler_ring + name: coupler_ring_50d59624 diff --git a/tests/test_components/test_pdk_settings_dbr_cavity_te_.yml b/tests/test_components/test_pdk_settings_dbr_cavity_te_.yml index 7e476258..f6f6a4bd 100644 --- a/tests/test_components/test_pdk_settings_dbr_cavity_te_.yml +++ b/tests/test_components/test_pdk_settings_dbr_cavity_te_.yml @@ -1,4 +1,4 @@ -name: dbr_cavity_add_fiber_array_2f157efc_add_fiber_array_37b25c57 +name: dbr_cavity_add_fiber_array_2e3389fa_add_fiber_array_37b25c57 settings: changed: component: @@ -6,6 +6,8 @@ settings: settings: {} child: changed: + bend: + function: bend_euler_sc component: component: dbr_cavity settings: {} @@ -20,6 +22,19 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false child: changed: {} @@ -128,6 +143,8 @@ settings: settings: port_type: optical full: + bend: + function: bend_euler_sc component: component: dbr_cavity settings: {} @@ -150,6 +167,19 @@ settings: function: select_ports settings: port_type: optical + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false function_name: add_fiber_array info: @@ -160,11 +190,20 @@ settings: wavelength: 1.55 info_version: 2 module: gdsfactory.routing.add_fiber_array - name: dbr_cavity_add_fiber_array_2f157efc + name: dbr_cavity_add_fiber_array_2e3389fa default: component: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc component_name: null cross_section: xs_sc @@ -178,6 +217,19 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false full: component: @@ -195,6 +247,19 @@ settings: - 10 - 0 optical_routing_type: 0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_loopback: false function_name: add_fiber_array info: @@ -205,4 +270,4 @@ settings: wavelength: 1.55 info_version: 2 module: ubcpdk.components - name: dbr_cavity_add_fiber_array_2f157efc_add_fiber_array_37b25c57 + name: dbr_cavity_add_fiber_array_2e3389fa_add_fiber_array_37b25c57 diff --git a/tests/test_components/test_pdk_settings_ebeam_dc_halfring_straight_.yml b/tests/test_components/test_pdk_settings_ebeam_dc_halfring_straight_.yml index 58f241cb..16935e89 100644 --- a/tests/test_components/test_pdk_settings_ebeam_dc_halfring_straight_.yml +++ b/tests/test_components/test_pdk_settings_ebeam_dc_halfring_straight_.yml @@ -3,24 +3,12 @@ settings: changed: {} child: null default: - bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 - cross_section: xs_sc_simple gap: 0.2 length_x: 4.0 model: ebeam_dc_halfring_straight radius: 5.0 siepic: true full: - bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 - cross_section: xs_sc_simple gap: 0.2 length_x: 4.0 model: ebeam_dc_halfring_straight diff --git a/tests/test_components/test_pdk_settings_mzi_.yml b/tests/test_components/test_pdk_settings_mzi_.yml index eb079b37..685051d3 100644 --- a/tests/test_components/test_pdk_settings_mzi_.yml +++ b/tests/test_components/test_pdk_settings_mzi_.yml @@ -1,16 +1,22 @@ -name: mzi_df0f11f6 +name: mzi_54fdfbdf settings: changed: bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 + function: bend_euler_sc splitter: function: ebeam_y_1550 straight: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc child: null default: @@ -40,10 +46,7 @@ settings: full: add_optical_ports_arms: false bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 + function: bend_euler_sc combiner: null cross_section: xs_sc cross_section_x_bot: null @@ -62,6 +65,15 @@ settings: straight: function: straight settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 cross_section: xs_sc straight_x_bot: null straight_x_top: null @@ -71,4 +83,4 @@ settings: info: {} info_version: 2 module: gdsfactory.components.mzi - name: mzi_df0f11f6 + name: mzi_54fdfbdf diff --git a/tests/test_components/test_pdk_settings_mzi_heater_.yml b/tests/test_components/test_pdk_settings_mzi_heater_.yml index 4f661b26..4909b74a 100644 --- a/tests/test_components/test_pdk_settings_mzi_heater_.yml +++ b/tests/test_components/test_pdk_settings_mzi_heater_.yml @@ -1,9 +1,24 @@ -name: mzi_ab5edfa6 +name: mzi_ba583df0 settings: changed: + bend: + function: bend_euler_sc length_x: 200 splitter: function: ebeam_y_1550 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc straight_x_top: straight_heater_metal child: null default: @@ -33,7 +48,7 @@ settings: full: add_optical_ports_arms: false bend: - function: bend_euler + function: bend_euler_sc combiner: null cross_section: xs_sc cross_section_x_bot: null @@ -51,6 +66,17 @@ settings: function: ebeam_y_1550 straight: function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc straight_x_bot: null straight_x_top: straight_heater_metal straight_y: null @@ -59,4 +85,4 @@ settings: info: {} info_version: 2 module: gdsfactory.components.mzi - name: mzi_ab5edfa6 + name: mzi_ba583df0 diff --git a/tests/test_components/test_pdk_settings_ring_double_.yml b/tests/test_components/test_pdk_settings_ring_double_.yml new file mode 100644 index 00000000..edf68f1a --- /dev/null +++ b/tests/test_components/test_pdk_settings_ring_double_.yml @@ -0,0 +1,188 @@ +name: ring_double_a555db4c +settings: + changed: + bend: + function: bend_euler_sc + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc + child: null + default: + bend: + function: bend_euler + coupler_ring: + function: coupler_ring + cross_section: xs_sc + gap: 0.2 + gap_top: null + length_x: 0.01 + length_y: 0.01 + radius: 10.0 + straight: + function: straight + full: + bend: + function: bend_euler_sc + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + gap: 0.2 + gap_top: null + length_x: 0.01 + length_y: 0.01 + radius: 10.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc + function_name: ring_double + info: {} + info_version: 2 + module: gdsfactory.components.ring_double + name: ring_double_a555db4c diff --git a/tests/test_components/test_pdk_settings_ring_double_heater_.yml b/tests/test_components/test_pdk_settings_ring_double_heater_.yml index a6eb58d9..b3ea8816 100644 --- a/tests/test_components/test_pdk_settings_ring_double_heater_.yml +++ b/tests/test_components/test_pdk_settings_ring_double_heater_.yml @@ -1,6 +1,85 @@ -name: ring_double_heater_171f554b +name: ring_double_heater_13f0172f settings: changed: + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + length_y: 0.2 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -26,12 +105,15 @@ settings: cross_section_heater: xs_heater_metal cross_section_waveguide_heater: xs_sc_heater_metal gap: 0.2 + gap_top: null length_x: 1.0 length_y: 0.01 port_orientation: null radius: 10.0 straight: function: straight + straight_heater: + function: straight via_stack: function: via_stack settings: @@ -59,17 +141,93 @@ settings: function: bend_euler coupler_ring: function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null coupler_ring_top: null - cross_section: xs_sc + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section_heater: xs_heater_metal cross_section_waveguide_heater: xs_sc_heater_metal gap: 0.2 + gap_top: null length_x: 1.0 - length_y: 0.01 + length_y: 0.2 port_orientation: null radius: 10.0 straight: function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc + straight_heater: + function: straight via_stack: function: via_stack settings: @@ -91,4 +249,4 @@ settings: info: {} info_version: 2 module: gdsfactory.components.ring_double_heater - name: ring_double_heater_171f554b + name: ring_double_heater_13f0172f diff --git a/tests/test_components/test_pdk_settings_ring_single_.yml b/tests/test_components/test_pdk_settings_ring_single_.yml index a17a0eee..5c52ea44 100644 --- a/tests/test_components/test_pdk_settings_ring_single_.yml +++ b/tests/test_components/test_pdk_settings_ring_single_.yml @@ -1,31 +1,193 @@ -name: ring_single_909e601c +name: ring_single_68329927 settings: changed: + bend: + function: bend_euler_sc coupler_ring: - function: ebeam_dc_halfring_straight + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + pass_cross_section_to_bend: false + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc child: null default: bend: function: bend_euler + bend_coupler: + function: bend_euler coupler_ring: function: coupler_ring cross_section: xs_sc gap: 0.2 length_x: 4.0 length_y: 0.6 + pass_cross_section_to_bend: true radius: 10.0 + straight: + function: straight full: bend: + function: bend_euler_sc + bend_coupler: function: bend_euler coupler_ring: - function: ebeam_dc_halfring_straight - cross_section: xs_sc + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null gap: 0.2 length_x: 4.0 length_y: 0.6 + pass_cross_section_to_bend: false radius: 10.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc function_name: ring_single info: {} info_version: 2 module: gdsfactory.components.ring_single - name: ring_single_909e601c + name: ring_single_68329927 diff --git a/tests/test_components/test_pdk_settings_ring_single_heater_.yml b/tests/test_components/test_pdk_settings_ring_single_heater_.yml index 1d79eccb..d472b3ea 100644 --- a/tests/test_components/test_pdk_settings_ring_single_heater_.yml +++ b/tests/test_components/test_pdk_settings_ring_single_heater_.yml @@ -1,6 +1,86 @@ -name: ring_single_heater_171f554b +name: ring_single_heater_4fd094a9 settings: changed: + bend: + function: bend_euler_sc + coupler_ring: + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -19,6 +99,8 @@ settings: default: bend: function: bend_euler + bend_coupler: + function: bend_euler coupler_ring: function: coupler_ring cross_section: xs_sc @@ -28,6 +110,8 @@ settings: length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight via_stack: function: via_stack settings: @@ -52,16 +136,93 @@ settings: - 0 full: bend: + function: bend_euler_sc + bend_coupler: function: bend_euler coupler_ring: function: coupler_ring - cross_section: xs_sc + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null + cross_section: + add_pins_function_module: ubcpdk.tech + add_pins_function_name: add_pins_siepic + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section_waveguide_heater: xs_sc_heater_metal gap: 0.2 length_x: 4.0 length_y: 0.6 port_orientation: null radius: 10.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc via_stack: function: via_stack settings: @@ -83,4 +244,4 @@ settings: info: {} info_version: 2 module: gdsfactory.components.ring_single_heater - name: ring_single_heater_171f554b + name: ring_single_heater_4fd094a9 diff --git a/tests/test_components/test_pdk_settings_ring_with_crossing_.yml b/tests/test_components/test_pdk_settings_ring_with_crossing_.yml index c2ea3dcd..85033629 100644 --- a/tests/test_components/test_pdk_settings_ring_with_crossing_.yml +++ b/tests/test_components/test_pdk_settings_ring_with_crossing_.yml @@ -1,17 +1,60 @@ -name: ring_single_dut_61f5f94e +name: ring_single_dut_7aeb906a settings: changed: bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 + function: bend_euler_sc component: function: ebeam_crossing4_2ports coupler: - function: ebeam_dc_halfring_straight + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section: xs_sc port_name: o4 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc child: null default: bend: @@ -27,27 +70,72 @@ settings: length_y: 0 port_name: o1 radius: 5.0 + straight: + function: straight with_component: true full: bend: - function: bend_euler - settings: - cross_section: xs_sc - npoints: 100 + function: bend_euler_sc component: function: ebeam_crossing4_2ports coupler: - function: ebeam_dc_halfring_straight + function: coupler_ring + settings: + add_bbox: + function: add_pins_bbox_siepic + cross_section: + add_pins_function_module: gdsfactory.add_pins + add_pins_function_name: null + auto_widen: false + auto_widen_minimum_length: 200.0 + bbox_layers: null + bbox_offsets: null + components_along_path: [] + end_straight_length: 0.01 + gap: 3.0 + info: {} + min_length: 0.01 + radius: 10.0 + sections: + - hidden: false + insets: null + layer: WG + name: _default + offset: 0.0 + port_names: + - o1 + - o2 + port_types: + - optical + - optical + simplify: null + width: 0.5 + start_straight_length: 0.01 + taper_length: 10.0 + width_wide: null cross_section: xs_sc gap: 0.2 length_x: 4 length_y: 0 port_name: o4 radius: 5.0 + straight: + function: straight + settings: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 + cross_section: xs_sc with_component: true function_name: ring_single_dut info: component: {} info_version: 2 module: gdsfactory.components.ring_single_dut - name: ring_single_dut_61f5f94e + name: ring_single_dut_7aeb906a diff --git a/tests/test_components/test_pdk_settings_straight_.yml b/tests/test_components/test_pdk_settings_straight_.yml index 3238a67d..97f2b9b1 100644 --- a/tests/test_components/test_pdk_settings_straight_.yml +++ b/tests/test_components/test_pdk_settings_straight_.yml @@ -1,8 +1,18 @@ -name: straight +name: straight_8c41fd35 settings: - changed: {} + changed: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 child: null default: + add_bbox: null add_pins: true cross_section: xs_sc layer: null @@ -10,6 +20,15 @@ settings: npoints: 2 width: null full: + add_bbox: + function: add_padding + settings: + bottom: 0.5 + default: 0 + layers: + - - 68 + - 0 + top: 0.5 add_pins: true cross_section: xs_sc layer: null @@ -28,4 +47,4 @@ settings: width: 0.5 info_version: 2 module: gdsfactory.components.straight - name: straight + name: straight_8c41fd35 diff --git a/tests/test_components/test_pdk_settings_straight_one_pin_.yml b/tests/test_components/test_pdk_settings_straight_one_pin_.yml index 8971767a..c549eebe 100644 --- a/tests/test_components/test_pdk_settings_straight_one_pin_.yml +++ b/tests/test_components/test_pdk_settings_straight_one_pin_.yml @@ -8,10 +8,8 @@ settings: settings: add_pins_function_module: ubcpdk.tech add_pins_function_name: add_pins_siepic - bbox_layers: - - DEVREC - bbox_offsets: - - 0 + bbox_layers: null + bbox_offsets: null length: 1 full: cross_section: @@ -19,10 +17,8 @@ settings: settings: add_pins_function_module: ubcpdk.tech add_pins_function_name: add_pins_siepic - bbox_layers: - - DEVREC - bbox_offsets: - - 0 + bbox_layers: null + bbox_offsets: null length: 1 function_name: straight_one_pin info: {} diff --git a/ubcpdk/__init__.py b/ubcpdk/__init__.py index 55baeeca..1e3fcfd6 100644 --- a/ubcpdk/__init__.py +++ b/ubcpdk/__init__.py @@ -19,7 +19,6 @@ "PATH", "components", "tech", - "xs_sc", "LAYER", "__version__", "cells", diff --git a/ubcpdk/components.py b/ubcpdk/components.py index ea13c552..d03977c3 100644 --- a/ubcpdk/components.py +++ b/ubcpdk/components.py @@ -5,7 +5,6 @@ from gdsfactory import Component from gdsfactory.typings import ( Callable, - ComponentFactory, ComponentReference, ComponentSpec, CrossSectionSpec, @@ -31,11 +30,20 @@ um = 1e-6 +@gf.cell +def bend_euler_sc(**kwargs) -> Component: + kwargs.pop("cross_section", None) + return gf.components.bend_euler(cross_section="xs_sc_devrec", **kwargs) + + +bend_euler180_sc = partial(bend_euler_sc, angle=180) +bend = bend_euler_sc + straight = partial( gf.components.straight, cross_section="xs_sc", + add_bbox=tech.add_bbox_siepic_top_bot, ) -bend_euler = partial(gf.components.bend_euler, cross_section="xs_sc", npoints=100) bend_s = partial( gf.components.bend_s, cross_section="xs_sc", @@ -384,13 +392,15 @@ def gc_tm1550() -> gf.Component: mzi = partial( gf.components.mzi, splitter=ebeam_y_1550, - bend=bend_euler, + bend=bend_euler_sc, straight=straight, cross_section="xs_sc", ) mzi_heater = partial( gf.components.mzi_phase_shifter, + bend=bend_euler_sc, + straight=straight, splitter=ebeam_y_1550, ) @@ -400,13 +410,6 @@ def gc_tm1550() -> gf.Component: layers=(LAYER.M1_HEATER, LAYER.M2_ROUTER), vias=(None, None), ) -ring_double_heater = partial( - gf.components.ring_double_heater, via_stack=via_stack_heater_mtop -) -ring_single_heater = partial( - gf.components.ring_single_heater, - via_stack=via_stack_heater_mtop, -) def get_input_label_text( @@ -490,6 +493,7 @@ def add_fiber_array( grating_coupler: ComponentSpec = gc_te1550, cross_section: CrossSectionSpec = "xs_sc", layer_label: LayerSpec = LAYER.TEXT, + straight: ComponentSpec = straight, **kwargs, ) -> Component: """Returns component with grating couplers and labels on each port. @@ -513,6 +517,8 @@ def add_fiber_array( c = gf.Component() component = gf.routing.add_fiber_array( + straight=straight, + bend=bend, component=component, component_name=component_name, grating_coupler=grating_coupler, @@ -626,7 +632,6 @@ def dbr( return add_pins_bbox_siepic(c) -bend = gf.components.bend_euler coupler = partial( gf.components.coupler, cross_section=tech.xs_sc_simple, @@ -634,8 +639,9 @@ def dbr( ) coupler_ring = partial( gf.components.coupler_ring, - cross_section=tech.xs_sc_unclad, - decorator=tech.add_pins_bbox_siepic, + cross_section=tech.xs_sc_simple, + add_bbox=tech.add_pins_bbox_siepic, + # decorator=tech.add_pins_bbox_siepic, ) mmi1x2 = partial( gf.components.mmi1x2, @@ -655,7 +661,9 @@ def dbr_cavity_te(component="dbr_cavity", **kwargs) -> gf.Component: return add_fiber_array(component=component) -spiral = partial(gf.components.spiral_external_io) +spiral = partial(gf.components.spiral_external_io, cross_section=tech.xs_sc_devrec) + +ebeam_dc_halfring_straight = coupler_ring @gf.cell @@ -663,10 +671,8 @@ def ebeam_dc_halfring_straight( gap: float = 0.2, radius: float = 5.0, length_x: float = 4.0, - cross_section="xs_sc_simple", siepic: bool = True, model: str = "ebeam_dc_halfring_straight", - bend: ComponentFactory = bend_euler, **kwargs, ) -> gf.Component: r"""Return a ring coupler. @@ -690,21 +696,14 @@ def ebeam_dc_halfring_straight( """ - x = gf.get_cross_section(cross_section=cross_section, **kwargs) c = gf.Component() - coupler_ring = c << gf.components.coupler_ring( - gap=gap, - radius=radius, - length_x=length_x, - bend=bend, - cross_section=x, - decorator=add_pins_bbox_siepic, - ) + ref = c << coupler_ring(gap=gap, radius=radius, length_x=length_x, **kwargs) thickness = LAYER_STACK.get_layer_to_thickness() - c.add_ports(coupler_ring.ports) + c.add_ports(ref.ports) if siepic: + x = tech.xs_sc_simple c.info.update( layout_model_port_pairs=( ("o1", "port 1"), @@ -727,8 +726,34 @@ def ebeam_dc_halfring_straight( ring_single = partial( gf.components.ring_single, + coupler_ring=coupler_ring, + cross_section=tech.xs_sc, + bend=bend, + straight=straight, + pass_cross_section_to_bend=False, +) +ring_double = partial( + gf.components.ring_double, + coupler_ring=coupler_ring, + cross_section=tech.xs_sc, + bend=bend, + straight=straight, +) +ring_double_heater = partial( + gf.components.ring_double_heater, + coupler_ring=coupler_ring, + via_stack=via_stack_heater_mtop, + cross_section=tech.xs_sc, + straight=straight, + length_y=0.2, +) +ring_single_heater = partial( + gf.components.ring_single_heater, + coupler_ring=coupler_ring, + via_stack=via_stack_heater_mtop, + cross_section=tech.xs_sc, + straight=straight, bend=bend, - coupler_ring=ebeam_dc_halfring_straight, ) @@ -740,10 +765,11 @@ def ebeam_dc_halfring_straight( ring_with_crossing = partial( gf.components.ring_single_dut, component=ebeam_crossing4_2ports, - coupler=ebeam_dc_halfring_straight, + coupler=coupler_ring, port_name="o4", - bend=bend_euler, + bend=bend, cross_section="xs_sc", + straight=straight, ) @@ -831,12 +857,21 @@ def add_pads( if __name__ == "__main__": - c = ring_with_crossing() + # c = ring_with_crossing() # c = mmi1x2() # c = add_fiber_array(mzi) # c = coupler_ring() # c = dbr_cavity_te() # c = dbr_cavity() - # c = ring_single() + # c = ring_single(radius=12) + # c = ring_double(radius=12, length_x=2, length_y=2) + # c = bend_euler() + # c = mzi() + # c = spiral() + # c = mzi_heater() + # c = ring_double_heater() + # c = ring_single_heater() # c = ebeam_dc_halfring_straight() - c.show(show_ports=True) + # c = ring_with_crossing() + c = ring_single() + c.show(show_ports=False) diff --git a/ubcpdk/tech.py b/ubcpdk/tech.py index 0ab7cf60..dba05cf7 100644 --- a/ubcpdk/tech.py +++ b/ubcpdk/tech.py @@ -12,7 +12,7 @@ from gdsfactory.component import Component from gdsfactory.cross_section import get_cross_sections from gdsfactory.technology import LayerLevel, LayerStack -from gdsfactory.typings import Callable, Layer, LayerSpec, LayerSpecs, Optional +from gdsfactory.typings import Callable, Layer, LayerSpec, Optional from pydantic import BaseModel from ubcpdk.config import PATH @@ -78,29 +78,14 @@ def add_labels_to_ports_optical( return component -def add_bbox_siepic( - component: Component, - bbox_layer: LayerSpec = "DEVREC", - remove_layers: LayerSpecs | None = None, -) -> Component: - """Add bounding box device recognition layer. - - Args: - component: to add bbox. - bbox_layer: bounding box. - remove_layers: remove other layers. - """ - from gdsfactory.pdk import get_layer - - bbox_layer = get_layer(bbox_layer) - remove_layers = remove_layers or [] - remove_layers = list(remove_layers) + [bbox_layer] - remove_layers = [get_layer(layer) for layer in remove_layers] - component = component.remove_layers(layers=remove_layers, recursive=True) - - if bbox_layer: - component.add_padding(default=0, layers=(bbox_layer,)) - return component +margin = 0.5 +add_bbox_siepic = partial(gf.add_padding, layers=(LAYER.DEVREC,), default=0) +add_bbox_siepic_top_bot = partial( + gf.add_padding, layers=(LAYER.DEVREC,), default=0, top=margin, bottom=margin +) +add_bbox_siepic_bot_right = partial( + gf.add_padding, layers=(LAYER.DEVREC,), default=0, right=margin, bottom=margin +) def add_pins_siepic( @@ -298,8 +283,10 @@ class Tech(BaseModel): properties=dict(annotate=False), ) -cladding_layers_optical_siepic = ("DEVREC",) # for SiEPIC verification -cladding_offsets_optical_siepic = (0,) # for SiEPIC verification +# cladding_layers_optical_siepic = ("DEVREC",) # for SiEPIC verification +# cladding_offsets_optical_siepic = (0.5,) # for SiEPIC verification +cladding_layers_optical_siepic = None +cladding_offsets_optical_siepic = None ############################ @@ -349,9 +336,7 @@ class Tech(BaseModel): add_pins_function_module="ubcpdk.tech", ) heater_metal = partial( - metal_routing, - width=4, - layer=LAYER.M1_HEATER, + metal_routing, width=4, layer=LAYER.M1_HEATER, add_pins_function_name=None ) ############################ @@ -365,6 +350,7 @@ class Tech(BaseModel): xs_heater_metal = heater_metal() xs_sc_unclad = strip_unclad() xs_sc_simple = strip_simple() +xs_sc_devrec = strip(cladding_layers=("DEVREC",), cladding_offsets=(0.5,)) cross_sections = get_cross_sections(sys.modules[__name__])