├── .changelog.d
└── changelog_template.jinja
├── .devcontainer
├── Dockerfile
├── Dockerfile.dev
└── devcontainer.json
├── .github
├── dependabot.yml
├── release-drafter.yml
├── workflows
│ ├── pages.yml
│ ├── release-drafter.yml
│ ├── release.yml
│ ├── require-labels.yml
│ └── test_code.yml
├── write_components_autodoc.py
└── write_components_plot.py
├── .gitignore
├── .pre-commit-config.yaml
├── CHANGELOG.md
├── LICENSE
├── Makefile
├── README.md
├── docs
├── _config.yml
├── _toc.yml
├── changelog.md
├── components.rst
├── components_plot.rst
├── data_analysis.md
├── index.md
├── layout.md
├── notebooks
│ ├── 00_layout.ipynb
│ ├── 11_sparameters.ipynb
│ ├── 11_sparameters_gratings.ipynb
│ ├── 12_sim_plugins_tidy3d.ipynb
│ ├── 14_sax_tidy3d.ipynb
│ ├── 31_data_analysis_mzi.ipynb
│ ├── 32_data_analysis_ring.ipynb
│ ├── 33_data_analysis_dbr.ipynb
│ ├── Makefile
│ ├── sdl_demo.pic.yml
│ └── test.schem.yml
└── simulations.md
├── install.sh
├── install_tech.py
├── pyproject.toml
├── sparameters
├── bend_euler_radius3_349755f7.npz
├── bend_euler_radius3_349755f7.yml
├── bend_euler_radius3_6ad1d010.npz
├── bend_euler_radius3_6ad1d010.yml
├── bend_euler_radius3_6c2f97b7.csv
├── bend_euler_radius3_6c2f97b7.yml
├── coupler_gap0p13_length8_b7d54138.csv
├── coupler_gap0p13_length8_b7d54138.yml
├── coupler_gap0p13_length8_e8c7ce5e.npz
├── coupler_gap0p13_length8_e8c7ce5e.yml
├── coupler_ring_225c8f23.csv
├── coupler_ring_225c8f23.yml
├── coupler_ring_4778e15a.npz
├── coupler_ring_4778e15a.yml
├── crossing_524beede.csv
├── crossing_524beede.yml
├── ebeam_crossing4_7e264905_216d7d7a.npz
├── ebeam_crossing4_7e264905_216d7d7a.yml
├── ebeam_crossing4_7e264905_524beede.csv
├── ebeam_crossing4_7e264905_524beede.yml
├── ebeam_crossing4_7e264905_c4bd0ed6.npz
├── ebeam_crossing4_7e264905_c4bd0ed6.yml
├── ebeam_gc_te1550_0ec64804.npz
├── ebeam_gc_te1550_0ec64804.yml
├── ebeam_gc_te1550_60e5b3a8.npz
├── ebeam_gc_te1550_60e5b3a8.yml
├── ebeam_gc_te1550_7e264905_2b4c71dd.npz
├── ebeam_gc_te1550_7e264905_2b4c71dd.yml
├── ebeam_gc_te1550_7e264905_60e5b3a8.npz
├── ebeam_gc_te1550_7e264905_60e5b3a8.yml
├── ebeam_gc_te1550_7e264905_d14753ca.npz
├── ebeam_gc_te1550_7e264905_d14753ca.yml
├── ebeam_gc_te1550_7e264905_d9bd5fec.npz
├── ebeam_gc_te1550_7e264905_d9bd5fec.yml
├── ebeam_gc_te1550_985757a9.npz
├── ebeam_gc_te1550_985757a9.yml
├── ebeam_gc_te1550_d14753ca.npz
├── ebeam_gc_te1550_d14753ca.yml
├── ebeam_gc_te1550_d9bd5fec.npz
├── ebeam_gc_te1550_d9bd5fec.yml
├── ebeam_y_1550
│ ├── ebeam_y_1550_1fbf8f67.csv
│ └── ebeam_y_1550_1fbf8f67.yml
├── ebeam_y_1550_0d010a6f.npz
├── ebeam_y_1550_0d010a6f.yml
├── ebeam_y_1550_199b0a13b1f667b1e06104a659d324b2.npz
├── ebeam_y_1550_199b0a13b1f667b1e06104a659d324b2.yml
├── ebeam_y_1550_1f494ca0.npz
├── ebeam_y_1550_1f494ca0.yml
├── ebeam_y_1550_20634f71.csv
├── ebeam_y_1550_20634f71.npz
├── ebeam_y_1550_20634f71.yml
├── ebeam_y_1550_21fe4056.csv
├── ebeam_y_1550_21fe4056.yml
├── ebeam_y_1550_39d5288b.npz
├── ebeam_y_1550_39d5288b.yml
├── ebeam_y_1550_63211777.csv
├── ebeam_y_1550_63211777.yml
├── ebeam_y_1550_76acf988.npz
├── ebeam_y_1550_76acf988.yml
├── ebeam_y_1550_7e264905_c3ff7345.npz
├── ebeam_y_1550_7e264905_c3ff7345.yml
├── ebeam_y_1550_912ab8ee.npz
├── ebeam_y_1550_912ab8ee.yml
├── ebeam_y_1550_b9a44b79.csv
├── ebeam_y_1550_b9a44b79.yml
├── ebeam_y_1550_c3ff7345.npz
├── ebeam_y_1550_c3ff7345.yml
├── ebeam_y_1550_d94e5bdc.csv
├── ebeam_y_1550_d94e5bdc.yml
├── ebeam_y_1550_f578394f.npz
├── ebeam_y_1550_f578394f.yml
├── gc_-31.0deg_-5.0um.npz
├── gc_-31.0deg_-5.0um.yml
├── gc_-31.0deg_0.0um.npz
├── gc_-31.0deg_0.0um.yml
├── gc_-31.0deg_5.0um.npz
├── gc_-31.0deg_5.0um.yml
├── gc_te1550.npz
├── gc_te1550.yml
├── mirror_948d7eaf_gc_te1550_0ec64804.npz
├── mirror_948d7eaf_gc_te1550_0ec64804.yml
├── mirror_948d7eaf_gc_te1550_0f8e55d2d79975dd8e8ea4016d3c56a2.npz
├── mirror_948d7eaf_gc_te1550_0f8e55d2d79975dd8e8ea4016d3c56a2.yml
├── mirror_948d7eaf_gc_te1550_26962e480cc055bb0b565a168ba56196.npz
├── mirror_948d7eaf_gc_te1550_26962e480cc055bb0b565a168ba56196.yml
├── mirror_948d7eaf_gc_te1550_60e5b3a8.npz
├── mirror_948d7eaf_gc_te1550_60e5b3a8.yml
├── mirror_948d7eaf_gc_te1550_79ae2c47cfda4d910ad8afc4868758f5.npz
├── mirror_948d7eaf_gc_te1550_79ae2c47cfda4d910ad8afc4868758f5.yml
├── mirror_948d7eaf_gc_te1550_985757a9.npz
├── mirror_948d7eaf_gc_te1550_985757a9.yml
├── mirror_948d7eaf_gc_te1550_d14753ca.npz
├── mirror_948d7eaf_gc_te1550_d14753ca.yml
├── mirror_948d7eaf_gc_te1550_d9bd5fec.npz
├── mirror_948d7eaf_gc_te1550_d9bd5fec.yml
├── mirror_948d7eaf_gc_te1550_f2c68445b4de85cee32e49c0386239aa.npz
├── mirror_948d7eaf_gc_te1550_f2c68445b4de85cee32e49c0386239aa.yml
├── mirror_948d7eaf_gc_te1550_fa1d65ff96e74bb0ba99eb021a049e62.npz
├── mirror_948d7eaf_gc_te1550_fa1d65ff96e74bb0ba99eb021a049e62.yml
├── rotate_f258530e_04b25a3b.csv
├── rotate_f258530e_04b25a3b.yml
├── rotate_f258530e_08088987.csv
├── rotate_f258530e_08088987.yml
├── rotate_f258530e_1933e42f.csv
├── rotate_f258530e_1933e42f.yml
├── rotate_f258530e_39be6f18.csv
├── rotate_f258530e_39be6f18.yml
├── rotate_f258530e_3a26c260.csv
├── rotate_f258530e_3a26c260.yml
├── rotate_f258530e_46e06d33.csv
├── rotate_f258530e_46e06d33.yml
├── rotate_f258530e_49a8fbc1.csv
├── rotate_f258530e_49a8fbc1.yml
├── rotate_f258530e_6292f352.csv
├── rotate_f258530e_6292f352.yml
├── rotate_f258530e_68720cc2.csv
├── rotate_f258530e_68720cc2.yml
├── rotate_f258530e_6ae86fa9.csv
├── rotate_f258530e_6ae86fa9.yml
├── rotate_f258530e_73260aa2.csv
├── rotate_f258530e_73260aa2.yml
├── rotate_f258530e_75dfd42e.csv
├── rotate_f258530e_75dfd42e.yml
├── rotate_f258530e_86a0c5f2.csv
├── rotate_f258530e_86a0c5f2.yml
├── rotate_f258530e_8890572b.csv
├── rotate_f258530e_8890572b.yml
├── rotate_f258530e_8c630bfa.csv
├── rotate_f258530e_8c630bfa.yml
├── rotate_f258530e_8d0ba197.csv
├── rotate_f258530e_8d0ba197.yml
├── rotate_f258530e_8ec78c6d.csv
├── rotate_f258530e_8ec78c6d.yml
├── rotate_f258530e_8f66116d.csv
├── rotate_f258530e_8f66116d.yml
├── rotate_f258530e_9404750c.csv
├── rotate_f258530e_9404750c.yml
├── rotate_f258530e_a2a7ee32.csv
├── rotate_f258530e_a2a7ee32.yml
├── rotate_f258530e_b1a4d58f.csv
├── rotate_f258530e_b1a4d58f.yml
├── rotate_f258530e_b5fb72a1.csv
├── rotate_f258530e_b5fb72a1.yml
├── rotate_f258530e_b70d6a24.csv
├── rotate_f258530e_b70d6a24.yml
├── rotate_f258530e_c156aa56.csv
├── rotate_f258530e_c156aa56.yml
├── rotate_f258530e_cfeae4e8.csv
├── rotate_f258530e_cfeae4e8.yml
├── rotate_f258530e_e0617363.csv
├── rotate_f258530e_e0617363.yml
├── rotate_f258530e_e775c147.csv
├── rotate_f258530e_e775c147.yml
├── rotate_f258530e_f6081c2d.csv
├── rotate_f258530e_f6081c2d.yml
├── rotate_f258530e_f85668d1.csv
├── rotate_f258530e_f85668d1.yml
├── rotate_f258530e_f918bc72.csv
├── rotate_f258530e_f918bc72.yml
├── rotate_f258530e_fa707732.csv
├── rotate_f258530e_fa707732.yml
├── rotate_f258530e_fa7eb155.csv
├── rotate_f258530e_fa7eb155.yml
├── rotate_f258530e_ff85c8d5.csv
├── rotate_f258530e_ff85c8d5.yml
├── straight_73688cd2_strai_c537327e_9b8b3405.csv
├── straight_73688cd2_strai_c537327e_9b8b3405.yml
├── straight_93c28777_strai_ff74a9ef_624baa49.csv
├── straight_93c28777_strai_ff74a9ef_624baa49.yml
├── straight_93c28777_strai_ff74a9ef_9b8b3405.csv
├── straight_93c28777_strai_ff74a9ef_9b8b3405.yml
├── straight_abbbb3de_strai_a6b995e4_74751e6d.csv
├── straight_abbbb3de_strai_a6b995e4_74751e6d.yml
├── straight_f1777396_strai_554f2b19_959b39f7.csv
├── straight_f1777396_strai_554f2b19_959b39f7.yml
├── straight_length3_18b541d4.npz
├── straight_length3_18b541d4.yml
├── straight_length3_4f6248eb.csv
├── straight_length3_4f6248eb.yml
├── straight_length3_8f9504cc.npz
├── straight_length3_8f9504cc.yml
├── straight_length3_d34ef86b690da3f9c50cb80b5cf3ff11.npz
├── straight_length3p1_89092d4a.csv
├── straight_length3p1_89092d4a.yml
├── straight_length3p1_bdd2f6cd.npz
└── straight_length3p1_bdd2f6cd.yml
├── tests
├── ref
│ ├── bend_euler_bend_euler_CSstrip.gds
│ ├── bend_euler_bend_euler_C_31752e67.gds
│ ├── bend_s_bend_s_S11_1p8_N_390cd0af.gds
│ ├── coupler.gds
│ ├── coupler90_coupler90_G0p_591568bb.gds
│ ├── coupler_coupler_G0p236__159c01fd.gds
│ ├── coupler_coupler_G0p236__a8bdff39.gds
│ ├── coupler_coupler_G0p236__c8a179e4.gds
│ ├── coupler_ring_coupler_ri_a4309215.gds
│ ├── coupler_straight_couple_33ca69a2.gds
│ ├── dbr_cavity_dbr_cavity_D_6f81e1fa.gds
│ ├── dbr_cavity_te_dbr_cavit_edb4408e.gds
│ ├── ebeam_adiabatic_te1550.gds
│ ├── ebeam_bdc_te1550.gds
│ ├── ebeam_bdc_tm1550.gds
│ ├── ebeam_crossing4.gds
│ ├── ebeam_crossing4_2ports.gds
│ ├── ebeam_splitter_adiabati_1c687ad8.gds
│ ├── ebeam_splitter_swg_assist_te1310.gds
│ ├── ebeam_splitter_swg_assist_te1550.gds
│ ├── ebeam_terminator_te1310.gds
│ ├── ebeam_terminator_te1550.gds
│ ├── ebeam_terminator_tm1550.gds
│ ├── ebeam_y_1550.gds
│ ├── ebeam_y_adiabatic.gds
│ ├── ebeam_y_adiabatic_1310.gds
│ ├── gc_te1310.gds
│ ├── gc_te1310_8deg.gds
│ ├── gc_te1310_broadband.gds
│ ├── gc_te1550.gds
│ ├── gc_te1550_90nmSlab.gds
│ ├── gc_te1550_broadband.gds
│ ├── gc_tm1550.gds
│ ├── metal_via.gds
│ ├── mmi1x2.gds
│ ├── mzi_heater_mzi_heater_DL10_LX320.gds
│ ├── pad_array_pad_array_PFp_5efb8756.gds
│ ├── pad_pad_S75_75_LM2_ROUT_a24a937f.gds
│ ├── photonic_wirebond_surfa_247ccd11.gds
│ ├── photonic_wirebond_surfa_4f115197.gds
│ ├── ring_double_heater_ring_6237d469.gds
│ ├── ring_double_heater_ring_8b1aafcc.gds
│ ├── ring_double_ring_double_267a3e9c.gds
│ ├── ring_single_dut_ring_si_219403cd.gds
│ ├── ring_single_ring_single_82ff2bc7.gds
│ ├── spiral_spiral_L100_S3_NL6.gds
│ ├── straight_heater_metal_s_3a225c2e.gds
│ ├── straight_one_pin_straig_e70a3ed8.gds
│ ├── straight_straight_L10_N2_CSstrip.gds
│ ├── straight_straight_L10_N_ecd66c66.gds
│ ├── taper_taper_L10_W0p5_WN_5cc09a85.gds
│ ├── taper_taper_L10_W0p5_WN_c9bd9d3a.gds
│ ├── terminator_short_termin_5556f35e.gds
│ ├── thermal_phase_shifter_m_6480beac.gds
│ ├── thermal_phase_shifter_t_22d678c3.gds
│ ├── thermal_phase_shifter_t_75acd1c1.gds
│ ├── thermal_phase_shifter_t_ab7ae757.gds
│ ├── via_stack_heater_mtop_v_dab7f8ed.gds
│ └── wire_corner_wire_corner_a07cee56.gds
├── test_components.py
├── test_components
│ ├── test_pdk_settings_bend_.yml
│ ├── test_pdk_settings_bend_euler180_.yml
│ ├── test_pdk_settings_bend_euler_.yml
│ ├── test_pdk_settings_bend_s_.yml
│ ├── test_pdk_settings_coupler90_.yml
│ ├── test_pdk_settings_coupler_.yml
│ ├── test_pdk_settings_coupler_ring_.yml
│ ├── test_pdk_settings_coupler_straight_.yml
│ ├── test_pdk_settings_dbr_cavity_.yml
│ ├── test_pdk_settings_dbr_cavity_te_.yml
│ ├── test_pdk_settings_ebeam_adiabatic_te1550_.yml
│ ├── test_pdk_settings_ebeam_bdc_te1550_.yml
│ ├── test_pdk_settings_ebeam_bdc_tm1550_.yml
│ ├── test_pdk_settings_ebeam_crossing4_.yml
│ ├── test_pdk_settings_ebeam_crossing4_2ports_.yml
│ ├── test_pdk_settings_ebeam_dc_te1550_.yml
│ ├── test_pdk_settings_ebeam_splitter_adiabatic_swg_te1550_.yml
│ ├── test_pdk_settings_ebeam_splitter_swg_assist_te1310_.yml
│ ├── test_pdk_settings_ebeam_splitter_swg_assist_te1550_.yml
│ ├── test_pdk_settings_ebeam_terminator_te1310_.yml
│ ├── test_pdk_settings_ebeam_terminator_te1550_.yml
│ ├── test_pdk_settings_ebeam_terminator_tm1550_.yml
│ ├── test_pdk_settings_ebeam_y_1550_.yml
│ ├── test_pdk_settings_ebeam_y_adiabatic_.yml
│ ├── test_pdk_settings_ebeam_y_adiabatic_1310_.yml
│ ├── test_pdk_settings_gc_te1310_.yml
│ ├── test_pdk_settings_gc_te1310_8deg_.yml
│ ├── test_pdk_settings_gc_te1310_broadband_.yml
│ ├── test_pdk_settings_gc_te1550_.yml
│ ├── test_pdk_settings_gc_te1550_90nmSlab_.yml
│ ├── test_pdk_settings_gc_te1550_broadband_.yml
│ ├── test_pdk_settings_gc_tm1550_.yml
│ ├── test_pdk_settings_metal_via_.yml
│ ├── test_pdk_settings_mmi1x2_.yml
│ ├── test_pdk_settings_mzi_heater_.yml
│ ├── test_pdk_settings_pad_.yml
│ ├── test_pdk_settings_pad_array_.yml
│ ├── test_pdk_settings_photonic_wirebond_surfacetaper_1310_.yml
│ ├── test_pdk_settings_photonic_wirebond_surfacetaper_1550_.yml
│ ├── test_pdk_settings_ring_double_.yml
│ ├── test_pdk_settings_ring_double_heater_.yml
│ ├── test_pdk_settings_ring_single_.yml
│ ├── test_pdk_settings_ring_single_heater_.yml
│ ├── test_pdk_settings_ring_with_crossing_.yml
│ ├── test_pdk_settings_spiral_.yml
│ ├── test_pdk_settings_straight_.yml
│ ├── test_pdk_settings_straight_heater_metal_.yml
│ ├── test_pdk_settings_straight_one_pin_.yml
│ ├── test_pdk_settings_taper_.yml
│ ├── test_pdk_settings_terminator_short_.yml
│ ├── test_pdk_settings_thermal_phase_shifter0_.yml
│ ├── test_pdk_settings_thermal_phase_shifter1_.yml
│ ├── test_pdk_settings_thermal_phase_shifter2_.yml
│ ├── test_pdk_settings_thermal_phase_shifter3_.yml
│ ├── test_pdk_settings_via_stack_heater_mtop_.yml
│ └── test_pdk_settings_wire_corner_.yml
├── test_netlists.py
└── test_netlists
│ ├── test_netlists_bend_.yml
│ ├── test_netlists_bend_euler180_.yml
│ ├── test_netlists_bend_euler_.yml
│ ├── test_netlists_bend_s_.yml
│ ├── test_netlists_coupler90_.yml
│ ├── test_netlists_coupler_.yml
│ ├── test_netlists_coupler_ring_.yml
│ ├── test_netlists_coupler_straight_.yml
│ ├── test_netlists_dbr_cavity_.yml
│ ├── test_netlists_dbr_cavity_te_.yml
│ ├── test_netlists_ebeam_bdc_te1550_.yml
│ ├── test_netlists_ebeam_bdc_tm1550_.yml
│ ├── test_netlists_ebeam_crossing4_.yml
│ ├── test_netlists_ebeam_crossing4_2ports_.yml
│ ├── test_netlists_ebeam_dc_te1550_.yml
│ ├── test_netlists_ebeam_splitter_swg_assist_te1310_.yml
│ ├── test_netlists_ebeam_splitter_swg_assist_te1550_.yml
│ ├── test_netlists_ebeam_terminator_te1310_.yml
│ ├── test_netlists_ebeam_terminator_te1550_.yml
│ ├── test_netlists_ebeam_terminator_tm1550_.yml
│ ├── test_netlists_ebeam_y_1550_.yml
│ ├── test_netlists_ebeam_y_adiabatic_.yml
│ ├── test_netlists_ebeam_y_adiabatic_1310_.yml
│ ├── test_netlists_gc_te1310_.yml
│ ├── test_netlists_gc_te1310_8deg_.yml
│ ├── test_netlists_gc_te1310_broadband_.yml
│ ├── test_netlists_gc_te1550_.yml
│ ├── test_netlists_gc_te1550_90nmSlab_.yml
│ ├── test_netlists_gc_te1550_broadband_.yml
│ ├── test_netlists_gc_tm1550_.yml
│ ├── test_netlists_metal_via_.yml
│ ├── test_netlists_mmi1x2_.yml
│ ├── test_netlists_mzi_.yml
│ ├── test_netlists_mzi_heater_.yml
│ ├── test_netlists_pad_.yml
│ ├── test_netlists_photonic_wirebond_surfacetaper_1310_.yml
│ ├── test_netlists_photonic_wirebond_surfacetaper_1550_.yml
│ ├── test_netlists_ring_double_.yml
│ ├── test_netlists_ring_double_heater_.yml
│ ├── test_netlists_ring_single_.yml
│ ├── test_netlists_ring_single_heater_.yml
│ ├── test_netlists_ring_with_crossing_.yml
│ ├── test_netlists_spiral_.yml
│ ├── test_netlists_straight_.yml
│ ├── test_netlists_straight_one_pin_.yml
│ ├── test_netlists_taper_.yml
│ ├── test_netlists_terminator_short_.yml
│ ├── test_netlists_thermal_phase_shifter0_.yml
│ ├── test_netlists_thermal_phase_shifter1_.yml
│ ├── test_netlists_thermal_phase_shifter2_.yml
│ └── test_netlists_thermal_phase_shifter3_.yml
├── ubcpdk
├── README.md
├── __init__.py
├── components.py
├── config.py
├── data
│ ├── __init__.py
│ ├── chop.py
│ ├── convert_to_pandas.py
│ ├── dbr.md
│ ├── dbr.py
│ ├── find_bandwidth.py
│ ├── read_mat.py
│ ├── remove_baseline.py
│ └── windowed_mean.py
├── gds
│ ├── ANT
│ │ ├── ebeam_splitter_swg_assist_te1310_ANT.GDS
│ │ └── ebeam_splitter_swg_assist_te1550_ANT.GDS
│ ├── Alignment_Marker.GDS
│ ├── EBeam
│ │ ├── GCs_BB.gds
│ │ ├── ebeam_adiabatic_te1550.gds
│ │ ├── ebeam_adiabatic_tm1550.gds
│ │ ├── ebeam_bdc_te1550.gds
│ │ ├── ebeam_crossing4.gds
│ │ ├── ebeam_gc_te1550.gds
│ │ ├── ebeam_gc_tm1550.gds
│ │ ├── ebeam_splitter_swg_assist_te1310.gds
│ │ ├── ebeam_splitter_swg_assist_te1550.gds
│ │ ├── ebeam_terminator_te1310.gds
│ │ ├── ebeam_terminator_te1550.gds
│ │ ├── ebeam_terminator_tm1550.gds
│ │ ├── ebeam_y_1550.gds
│ │ ├── ebeam_y_adiabatic.gds
│ │ ├── taper_si_simm_1310.gds
│ │ └── taper_si_simm_1550.gds
│ ├── EBeam_Beta
│ │ ├── Alignment_Marker.GDS
│ │ ├── Packaging_FibreArray_8ch.gds
│ │ ├── SEM_example.gds
│ │ ├── ebeam_BondPad.gds
│ │ ├── ebeam_bdc_tm1550.gds
│ │ ├── ebeam_gc_te1310.gds
│ │ ├── ebeam_gc_te1310_8deg.gds
│ │ ├── ebeam_gc_te1310_broadband.gds
│ │ ├── ebeam_gc_te1550_90nmSlab.gds
│ │ ├── ebeam_gc_te1550_broadband.GDS
│ │ ├── ebeam_splitter_adiabatic_swg_te1550.gds
│ │ ├── ebeam_swg_edgecoupler.gds
│ │ ├── ebeam_terminator_te1310.gds
│ │ ├── ebeam_y_adiabatic_1310.gds
│ │ ├── metal_via.gds
│ │ ├── photonic_wirebond_surfacetaper_1310.gds
│ │ ├── photonic_wirebond_surfacetaper_1550.gds
│ │ ├── siepic_o_gc_te1270_BB.GDS
│ │ ├── siepic_o_pwbstlas_si_BB.GDS
│ │ └── thermal_phase_shifters.gds
│ ├── EBeam_SiN
│ │ └── ebeam_BondPad.gds
│ ├── Packaging_FibreArray_8ch.gds
│ ├── SEM_example.gds
│ ├── ebeam_BondPad.gds
│ ├── ebeam_adiabatic_te1550.gds
│ ├── ebeam_adiabatic_tm1550.gds
│ ├── ebeam_bdc_te1550.gds
│ ├── ebeam_bdc_tm1550.gds
│ ├── ebeam_crossing4.gds
│ ├── ebeam_gc_te1310.gds
│ ├── ebeam_gc_te1310_8deg.gds
│ ├── ebeam_gc_te1310_broadband.gds
│ ├── ebeam_gc_te1550.gds
│ ├── ebeam_gc_te1550_90nmSlab.gds
│ ├── ebeam_gc_te1550_broadband.gds
│ ├── ebeam_gc_tm1550.gds
│ ├── ebeam_splitter_adiabatic_swg_te1550.gds
│ ├── ebeam_splitter_swg_assist_te1310.gds
│ ├── ebeam_splitter_swg_assist_te1550.gds
│ ├── ebeam_swg_edgecoupler.gds
│ ├── ebeam_terminator_te1310.gds
│ ├── ebeam_terminator_te1550.gds
│ ├── ebeam_terminator_tm1550.gds
│ ├── ebeam_y_1550.gds
│ ├── ebeam_y_adiabatic.gds
│ ├── ebeam_y_adiabatic_1310.gds
│ ├── metal_via.gds
│ ├── photonic_wirebond_surfacetaper_1310.gds
│ ├── photonic_wirebond_surfacetaper_1550.gds
│ └── thermal_phase_shifters.gds
├── import_gds.py
├── import_pdk.py
├── klayout
│ └── tech
│ │ ├── drc
│ │ ├── ELEC463 Doping.lydrc
│ │ ├── ELEC463 Metal Heater.lydrc
│ │ └── SiEPIC_EBeam_DRC.lyp
│ │ ├── layers.lyp
│ │ ├── layers2.lyp
│ │ ├── pymacros
│ │ ├── klayout_Library.lym
│ │ └── set_menus.lym
│ │ └── tech.lyt
├── layers.yaml
├── models.py
├── samples
│ ├── data
│ │ ├── bragg
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num10_1272.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num11_1273.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num12_1271.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num13_1278.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num14_1276.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num15_1277.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num16_1275.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num17_1282.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num18_1280.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num19_1281.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num1_1266.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num20_1279.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num21_1286.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num22_1284.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num23_1285.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num24_1283.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num2_1264.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num3_1265.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num4_1263.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num5_1270.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num6_1268.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num7_1269.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num8_1267.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet1Num9_1274.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num10_1248.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num11_1249.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num12_1247.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num13_1254.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num14_1252.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num15_1253.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num16_1251.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num17_1258.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num18_1256.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num19_1257.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num1_1242.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num20_1255.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num21_1262.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num22_1260.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num23_1261.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num24_1259.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num2_1240.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num3_1241.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num4_1239.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num5_1246.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num6_1244.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num7_1245.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num8_1243.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet2Num9_1250.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num10_1200.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num11_1201.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num12_1199.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num13_1206.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num14_1204.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num15_1205.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num16_1203.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num17_1210.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num18_1208.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num19_1209.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num1_1194.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num20_1207.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num21_1214.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num22_1212.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num23_1213.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num24_1211.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num2_1192.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num3_1193.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num4_1191.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num5_1198.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num6_1196.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num7_1197.mat
│ │ │ ├── ELEC_413_lukasc_BraggSet4Num8_1195.mat
│ │ │ └── ELEC_413_lukasc_BraggSet4Num9_1202.mat
│ │ ├── mzi
│ │ │ ├── EB486A_URChip3Coords.txt
│ │ │ ├── EB486A_URChip3Coords1.txt
│ │ │ ├── LukasChrostowski_MZI1_135_Scan1.mat
│ │ │ ├── LukasChrostowski_MZI2_136_Scan1.mat
│ │ │ ├── README.md
│ │ │ ├── ZiheGao_MZI17_265_Scan1.mat
│ │ │ ├── ZiheGao_MZI1_272_Scan1.mat
│ │ │ ├── ZiheGao_MZI1_273_Scan1.mat
│ │ │ ├── ZiheGao_MZI2_271_Scan1.mat
│ │ │ ├── ZiheGao_MZI3_270_Scan1.mat
│ │ │ ├── ZiheGao_MZI4_269_Scan1.mat
│ │ │ ├── ZiheGao_MZI5_268_Scan1.mat
│ │ │ ├── ZiheGao_MZI6_267_Scan1.mat
│ │ │ └── ZiheGao_MZI8_266_Scan1.mat
│ │ └── ring
│ │ │ ├── LukasC_RingDoubleTER10g100_1495.mat
│ │ │ ├── LukasC_RingDoubleTER10g150_1494.mat
│ │ │ ├── LukasC_RingDoubleTER10g200_1493.mat
│ │ │ ├── LukasC_RingDoubleTER10g50_1496.mat
│ │ │ ├── LukasC_RingDoubleTER3g100_1498.mat
│ │ │ ├── LukasC_RingDoubleTER3g150_1497.mat
│ │ │ ├── LukasC_RingDoubleTMR30g150_1492.mat
│ │ │ ├── LukasC_RingDoubleTMR30g200_1491.mat
│ │ │ ├── LukasC_RingDoubleTMR30g250_1490.mat
│ │ │ └── lukasc_RingResonator.txt
│ ├── test_circuit_simulations.py
│ ├── test_rings.py
│ ├── test_ubc1.py
│ ├── test_ubc2.py
│ ├── test_ubc3.py
│ ├── test_ubc4.py
│ └── test_ubc5.py
├── simulation
│ ├── __init__.py
│ ├── circuits
│ │ ├── __init__.py
│ │ ├── mzi_spectrum.py
│ │ └── waveguide.py
│ ├── find_neff_vs_width.csv
│ ├── lumerical
│ │ ├── EBeam.cml
│ │ └── lumerical_process_file.lbr
│ └── modes_waveguide.py
└── tech.py
├── update_source.sh
└── uv.lock
/.changelog.d/changelog_template.jinja:
--------------------------------------------------------------------------------
1 | {% if sections[""] %}
2 | {% for category, val in definitions.items() if category in sections[""] %}
3 |
4 | ### {{ definitions[category]['name'] }}
5 |
6 | {% for text, values in sections[""][category].items() %}
7 | - {{ text }} {{ values | join(', ') }}
8 | {% endfor %}
9 |
10 | {% endfor %}
11 | {% else %}
12 | No significant changes.
13 |
14 |
15 | {% endif %}
16 |
--------------------------------------------------------------------------------
/.devcontainer/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM joamatab/gdsfactory:latest
2 |
--------------------------------------------------------------------------------
/.devcontainer/Dockerfile.dev:
--------------------------------------------------------------------------------
1 | FROM jupyter/base-notebook:python-3.8.8
2 | # FROM jupyter/base-notebook
3 | # FROM continuumio/miniconda3
4 |
5 | # expose klive and Jupyter Notebook ports
6 | EXPOSE 8082
7 | EXPOSE 8083
8 | EXPOSE 8888
9 |
10 | USER root
11 | RUN apt-get update --yes && \
12 | apt-get install --yes --no-install-recommends \
13 | make \
14 | git \
15 | htop \
16 | neovim
17 |
18 | USER jovyan
19 | # COPY . /home/jovyan/gdfactory
20 | COPY --chown=jovyan docs/notebooks /home/jovyan/notebooks
21 | #COPY docs/notebooks/00__git.ipynb /home/jovyan/
22 | RUN conda init bash
23 |
24 | # RUN git clone https://github.com/gdsfactory/gdsfactory.git
25 | # USER ${NB_UID}
26 | # RUN apt update
27 | # RUN apt install gcc
28 | # RUN conda install -c conda-forge pymeep -y
29 |
30 | RUN mamba install gdstk -y
31 | RUN mamba install gdspy -y
32 | RUN mamba install pymeep=*=mpi_mpich_* -y
33 |
34 | RUN pip install gdsfactory[full,gmsh,tidy3d,devsim,meow,sax]
35 | WORKDIR /home/jovyan
36 | # VOLUME /home/jovyan/work
37 |
--------------------------------------------------------------------------------
/.devcontainer/devcontainer.json:
--------------------------------------------------------------------------------
1 | {
2 | "image": "mcr.microsoft.com/devcontainers/universal:2",
3 | "hostRequirements": {
4 | "cpus": 4
5 | },
6 | "waitFor": "onCreateCommand",
7 | "updateContentCommand": "python3 -m pip install ubcpdk --upgrade",
8 | "postCreateCommand": "",
9 | "customizations": {
10 | "codespaces": {
11 | "openFiles": []
12 | },
13 | "vscode": {
14 | "extensions": [
15 | "ms-toolsai.jupyter",
16 | "ms-python.python"
17 | ]
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: "pip"
4 | directory: "/" # Location of package manifests
5 | schedule:
6 | interval: "daily"
7 |
8 | - package-ecosystem: github-actions
9 | directory: /
10 | schedule:
11 | interval: monthly
12 |
--------------------------------------------------------------------------------
/.github/workflows/pages.yml:
--------------------------------------------------------------------------------
1 | name: build docs
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches:
7 | - main
8 | workflow_dispatch:
9 |
10 | concurrency:
11 | group: ${{ github.workflow }}-${{ github.ref }}
12 | cancel-in-progress: true
13 |
14 | jobs:
15 | build-docs:
16 | runs-on: ubuntu-latest
17 | container: ghcr.io/gdsfactory/gdsfactory:main
18 | steps:
19 | - uses: actions/checkout@v4
20 | - name: Installing the library
21 | env:
22 | TIDY3D_USER: ${{ secrets.TIDY3D_EMAIL }}
23 | TIDY3D_PASS: ${{ secrets.TIDY3D_PASSWORD }}
24 | SIMCLOUD_APIKEY: ${{ secrets.SIMCLOUD_APIKEY }}
25 | DISPLAY: 1.0
26 | DOCS: True
27 | GDSFACTORY_DISPLAY_TYPE: klayout
28 | shell: bash -l {0}
29 | run: |
30 | make install
31 | make docs
32 | - name: Upload artifact
33 | uses: actions/upload-pages-artifact@v3
34 | with:
35 | path: "./docs/_build/html/"
36 |
37 | deploy-docs:
38 | needs: build-docs
39 | if: ${{ github.ref == 'refs/heads/main' }}
40 | permissions:
41 | pages: write
42 | id-token: write
43 |
44 | environment:
45 | name: github-pages
46 | url: ${{ steps.deployment.outputs.page_url }}
47 |
48 | runs-on: ubuntu-latest
49 | steps:
50 | - name: Deploy to GitHub Pages
51 | id: deployment
52 | uses: actions/deploy-pages@v4
53 |
--------------------------------------------------------------------------------
/.github/workflows/release-drafter.yml:
--------------------------------------------------------------------------------
1 | name: Release Drafter and Labels
2 | on:
3 | push:
4 | branches:
5 | - main
6 | pull_request:
7 | types: [edited, opened, reopened, synchronize, unlabeled, labeled]
8 | permissions:
9 | contents: read
10 | jobs:
11 | update_release_draft:
12 | permissions:
13 | contents: write
14 | pull-requests: write
15 | runs-on: ubuntu-latest
16 | steps:
17 | # Drafts your next Release notes as Pull Requests are merged into "master"
18 | - uses: release-drafter/release-drafter@v6
19 | env:
20 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
21 | require_label:
22 | if: github.event.pull_request
23 | needs: update_release_draft
24 | runs-on: ubuntu-latest
25 | permissions:
26 | issues: write
27 | pull-requests: write
28 | steps:
29 | - uses: mheap/github-action-required-labels@v5
30 | with:
31 | mode: minimum
32 | count: 1
33 | labels: "breaking, bug, github_actions, documentation, dependencies, enhancement, feature, maintenance, security"
34 | add_comment: true
35 |
--------------------------------------------------------------------------------
/.github/workflows/release.yml:
--------------------------------------------------------------------------------
1 | name: Release package
2 |
3 | on:
4 | push:
5 | tags: "v*"
6 |
7 | jobs:
8 | release_pypi:
9 | if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
10 | runs-on: ubuntu-latest
11 | container: ghcr.io/gdsfactory/gdsfactory:main
12 | steps:
13 | - uses: actions/checkout@v4
14 | - name: Install dependencies
15 | run: |
16 | python -m pip install --upgrade pip
17 | pip install setuptools wheel twine
18 | - name: Build and publish
19 | env:
20 | TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
21 | TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
22 | run: |
23 | make build
24 | twine upload dist/*
25 | release_environment:
26 | if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
27 | runs-on: ubuntu-latest
28 | container: ghcr.io/gdsfactory/gdsfactory:main
29 | permissions:
30 | contents: write
31 | steps:
32 | - uses: actions/checkout@v4
33 | - name: Install dependencies
34 | run: |
35 | pip install .
36 | pip freeze > requirements.txt
37 | - name: Publish Latest Draft
38 | run: |
39 | gh release edit ${{ github.ref_name }} --draft=false
40 | gh release upload ${{ github.ref_name }} requirements.txt --clobber
41 | env:
42 | GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43 |
--------------------------------------------------------------------------------
/.github/workflows/require-labels.yml:
--------------------------------------------------------------------------------
1 | name: Pull Request Labels
2 | on:
3 | pull_request:
4 | types: [opened, labeled, unlabeled, synchronize]
5 | jobs:
6 | label:
7 | runs-on: ubuntu-latest
8 | permissions:
9 | issues: write
10 | pull-requests: write
11 | steps:
12 | - uses: mheap/github-action-required-labels@v5
13 | with:
14 | mode: minimum
15 | count: 1
16 | labels: "breaking, bug, github_actions, documentation, dependencies, enhancement, feature, maintenance, security"
17 | add_comment: true
18 |
--------------------------------------------------------------------------------
/.github/workflows/test_code.yml:
--------------------------------------------------------------------------------
1 | name: Test code
2 |
3 | on:
4 | pull_request:
5 | push:
6 | branches:
7 | - main
8 |
9 | jobs:
10 | pre-commit:
11 | runs-on: ubuntu-latest
12 | steps:
13 | - uses: actions/checkout@v4
14 | - name: Set up Python
15 | uses: actions/setup-python@v5
16 | with:
17 | python-version: "3.10"
18 | - name: Test pre-commit hooks
19 | run: |
20 | python -m pip install --upgrade pip
21 | pip install pre-commit
22 | pre-commit run -a
23 | test_code:
24 | runs-on: ubuntu-latest
25 | container: ghcr.io/gdsfactory/gdsfactory:main
26 | steps:
27 | - uses: actions/checkout@v4
28 | - name: Install dependencies
29 | run: |
30 | make install
31 | - name: Test with pytest
32 | run: pytest tests/
33 | test_code_coverage:
34 | runs-on: ubuntu-latest
35 | container: ghcr.io/gdsfactory/gdsfactory:main
36 | steps:
37 | - uses: actions/checkout@v4
38 | - name: Install dependencies
39 | run: |
40 | make install
41 | - name: Test with pytest
42 | run: |
43 | pytest --cov=ubcpdk tests/
44 | - name: Upload coverage to Codecov
45 | uses: codecov/codecov-action@v4
46 | with:
47 | token: ${{ secrets.CODECOV_TOKEN }}
48 | fail_ci_if_error: true
49 |
--------------------------------------------------------------------------------
/.github/write_components_autodoc.py:
--------------------------------------------------------------------------------
1 | import inspect
2 |
3 | import ubcpdk
4 | from ubcpdk.config import PATH
5 |
6 | filepath = PATH.repo / "docs" / "components.rst"
7 |
8 | skip = {
9 | "LIBRARY",
10 | "circuit_names",
11 | "cells",
12 | "component_names",
13 | "container_names",
14 | "component_names_test_ports",
15 | "component_names_skip_test",
16 | "component_names_skip_test_ports",
17 | "dataclasses",
18 | "library",
19 | "waveguide_template",
20 | "add_ports_m1",
21 | "add_ports_m2",
22 | "add_ports",
23 | "import_gds",
24 | }
25 |
26 | skip_plot = {}
27 | skip_settings = {"flatten", "safe_cell_names"}
28 |
29 |
30 | with open(filepath, "w+") as f:
31 | f.write(
32 | """
33 |
34 | Cells summary
35 | =============================
36 |
37 | .. currentmodule:: ubcpdk.components
38 |
39 | .. autosummary::
40 | :toctree: _autosummary/
41 |
42 | """
43 | )
44 |
45 | for name in sorted(ubcpdk.cells.keys()):
46 | if name in skip or name.startswith("_"):
47 | continue
48 | print(name)
49 | sig = inspect.signature(ubcpdk.cells[name])
50 | kwargs = ", ".join(
51 | [
52 | f"{p}={repr(sig.parameters[p].default)}"
53 | for p in sig.parameters
54 | if isinstance(sig.parameters[p].default, int | float | str | tuple)
55 | and p not in skip_settings
56 | ]
57 | )
58 | f.write(f" {name}\n")
59 |
--------------------------------------------------------------------------------
/.pre-commit-config.yaml:
--------------------------------------------------------------------------------
1 | repos:
2 | - repo: https://github.com/pre-commit/pre-commit-hooks
3 | rev: v4.6.0
4 | hooks:
5 | - id: check-yaml
6 | exclude: ^(conda\.recipe/meta\.yaml|conda_build/templates/.*\.yaml|docs/click/meta\.yaml|conda/meta\.yaml|conda/construct.yaml|.*\.pic\.yml|conda/constructor/Miniforge3/construct.yaml)
7 | - id: end-of-file-fixer
8 | - id: trailing-whitespace
9 | - repo: https://github.com/kynan/nbstripout
10 | rev: 0.8.0
11 | hooks:
12 | - id: nbstripout
13 | files: ".ipynb"
14 |
15 | - repo: https://github.com/codespell-project/codespell
16 | rev: v2.2.6
17 | hooks:
18 | - id: codespell
19 | additional_dependencies:
20 | - tomli
21 |
22 | - repo: https://github.com/astral-sh/ruff-pre-commit
23 | rev: "v0.7.2"
24 | hooks:
25 | - id: ruff
26 | args: [--fix, --exit-non-zero-on-fix]
27 | - id: ruff-format
28 |
29 | - repo: https://github.com/macisamuele/language-formatters-pre-commit-hooks
30 | rev: v2.14.0
31 | hooks:
32 | - id: pretty-format-toml
33 | args: [--autofix]
34 |
35 | - repo: https://github.com/aristanetworks/j2lint.git
36 | rev: v1.1.0
37 | hooks:
38 | - id: j2lint
39 | types: [file]
40 | files: \.(j2|yml|yaml)$
41 | exclude: .github/.*
42 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2020 gdsfactory
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | install:
2 | pip install -e .[dev,docs]
3 | python install_tech.py
4 |
5 | dev:
6 | uv venv -p 3.12
7 | uv sync --all-extras
8 | uv run pre-commit install
9 |
10 | update-pre:
11 | pre-commit autoupdate
12 |
13 | tech:
14 | python install_tech.py
15 |
16 | test:
17 | pytest -s
18 |
19 | uv-test:
20 | uv run pytest -s
21 |
22 | cov:
23 | pytest --cov=ubcpdk
24 |
25 | git-rm-merged:
26 | git branch -D `git branch --merged | grep -v \* | xargs`
27 |
28 | meep:
29 | conda install -n base conda-libmamba-solver
30 | conda config --set solver libmamba
31 | conda install -c conda-forge pymeep=*=mpi_mpich_* nlopt -y
32 |
33 | release:
34 | git push
35 | git push origin --tags
36 |
37 | build:
38 | rm -rf dist
39 | pip install build
40 | python -m build
41 |
42 | docs:
43 | jb build docs
44 |
45 | mask:
46 | python ubcpdk/samples/test_masks.py
47 |
48 | .PHONY: drc doc docs install
49 |
--------------------------------------------------------------------------------
/docs/_toc.yml:
--------------------------------------------------------------------------------
1 | # Table of contents
2 | # Learn more at https://jterbook.org/customize/toc.html
3 |
4 | format: jb-book
5 | root: index
6 | parts:
7 | - caption: Introduction
8 | chapters:
9 | - file: tech
10 | - file: components
11 | - file: components_plot
12 | - file: layout
13 | sections:
14 | - file: notebooks/00_layout
15 | - file: notebooks/21_schematic_driven_layout
16 | - file: simulations
17 | sections:
18 | - file: notebooks/11_sparameters
19 | - file: notebooks/11_sparameters_gratings
20 | - file: notebooks/12_sim_plugins_tidy3d
21 | - file: notebooks/13_sim_plugins
22 | - file: notebooks/14_sax_tidy3d
23 | - file: data_analysis
24 | sections:
25 | - file: notebooks/31_data_analysis_mzi
26 | - file: notebooks/32_data_analysis_ring
27 | - file: notebooks/33_data_analysis_dbr
28 | - caption: Reference
29 | chapters:
30 | - file: changelog
31 | - url: https://gdsfactory.github.io/gplugins/
32 | title: Plugins
33 | - url: https://gdsfactory.github.io/gdsfactory
34 | title: gdsfactory
35 | - url: https://gdsfactory.github.io/gdsfactory-photonics-training/
36 | title: gdsfactory-photonics-training
37 |
--------------------------------------------------------------------------------
/docs/changelog.md:
--------------------------------------------------------------------------------
1 | ```{include} ../CHANGELOG.md
2 | ```
3 |
--------------------------------------------------------------------------------
/docs/data_analysis.md:
--------------------------------------------------------------------------------
1 | # Data Analysis
2 |
3 | ```{tableofcontents}
4 | ```
5 |
--------------------------------------------------------------------------------
/docs/index.md:
--------------------------------------------------------------------------------
1 | ```{include} ../README.md
2 | ```
3 |
--------------------------------------------------------------------------------
/docs/layout.md:
--------------------------------------------------------------------------------
1 | # Layout Tutorial
2 |
3 |
4 |
5 | ```{tableofcontents}
6 | ```
7 |
--------------------------------------------------------------------------------
/docs/notebooks/32_data_analysis_ring.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "id": "0",
6 | "metadata": {},
7 | "source": [
8 | "# Data analysis ring\n",
9 | "\n",
10 | "We analyze the following ring samples from the edx course\n",
11 | "\n",
12 | "Double-bus ring resonators\n",
13 | "symmetrically coupled\n",
14 | "\n",
15 | "TE:\n",
16 | "R = [3]\n",
17 | "g = [50, 100, 150]\n",
18 | "\n",
19 | "R = [10]\n",
20 | "g = [50, 100, 150, 200]\n",
21 | "\n",
22 | "TM:\n",
23 | "R = [30]\n",
24 | "g = [150, 200, 250]"
25 | ]
26 | },
27 | {
28 | "cell_type": "code",
29 | "execution_count": null,
30 | "id": "1",
31 | "metadata": {
32 | "attributes": {
33 | "classes": [],
34 | "id": "",
35 | "n": "2"
36 | }
37 | },
38 | "outputs": [],
39 | "source": [
40 | "import matplotlib.pyplot as plt\n",
41 | "\n",
42 | "import ubcpdk"
43 | ]
44 | },
45 | {
46 | "cell_type": "code",
47 | "execution_count": null,
48 | "id": "2",
49 | "metadata": {
50 | "attributes": {
51 | "classes": [],
52 | "id": "",
53 | "n": "3"
54 | }
55 | },
56 | "outputs": [],
57 | "source": [
58 | "w, p = ubcpdk.data.read_mat(ubcpdk.PATH.ring_te_r3_g100, port=0)\n",
59 | "plt.plot(w * 1e9, p)"
60 | ]
61 | }
62 | ],
63 | "metadata": {
64 | "kernelspec": {
65 | "display_name": "Python 3 (ipykernel)",
66 | "language": "python",
67 | "name": "python3"
68 | }
69 | },
70 | "nbformat": 4,
71 | "nbformat_minor": 5
72 | }
73 |
--------------------------------------------------------------------------------
/docs/notebooks/Makefile:
--------------------------------------------------------------------------------
1 | format:
2 | jupytext --pipe black *.ipynb
3 |
4 | sync:
5 | jupytext --sync *.ipynb
6 |
7 | convert:
8 | jupytext *.ipynb --to *.py
9 |
10 | clean:
11 | nbstripout --drop-empty-cells *.ipynb
12 | nbstripout --drop-empty-cells **/*.ipynb
13 |
--------------------------------------------------------------------------------
/docs/notebooks/test.schem.yml:
--------------------------------------------------------------------------------
1 | schema: null
2 | instances:
3 | mmi1:
4 | component: mmi1x2
5 | settings: {gap_mmi: 1.0}
6 | mmi2:
7 | component: mmi2x2
8 | settings: {gap_mmi: 0.7}
9 | s1:
10 | component: straight
11 | settings: {length: 20, npoints: 2, layer: null, width: null, add_pins: true, cross_section: xs_sc,
12 | add_bbox: null, post_process: null}
13 | s2:
14 | component: straight
15 | settings: {length: 40, npoints: 2, layer: null, width: null, add_pins: true, cross_section: xs_sc,
16 | add_bbox: null, post_process: null}
17 | schematic_placements:
18 | mmi1: {x: null, y: null, port: null, rotation: 0.0, dx: -22.832156230736544, dy: -0.9358105716724547,
19 | mirror: null}
20 | mmi2: {x: null, y: null, port: null, rotation: 0.0, dx: 130.94675850281985, dy: -0.39903161225107286,
21 | mirror: null}
22 | s1: {x: null, y: null, port: null, rotation: 0.0, dx: 55.26042176045793, dy: 32.1189871057287,
23 | mirror: null}
24 | s2: {x: null, y: null, port: null, rotation: 0.0, dx: 44.25454877902524, dy: -45.88086750118762,
25 | mirror: null}
26 | nets:
27 | - ['mmi1,o2', 's1,o1']
28 | - ['mmi2,o2', 's1,o2']
29 | - ['mmi1,o3', 's2,o1']
30 | - ['mmi2,o1', 's2,o2']
31 | ports: {o1: 'mmi1,o1', o2: 'mmi2,o3', o3: 'mmi2,o4'}
32 | schema_version: 1
33 |
--------------------------------------------------------------------------------
/docs/simulations.md:
--------------------------------------------------------------------------------
1 | # Simulations
2 |
3 | ```{tableofcontents}
4 | ```
5 |
--------------------------------------------------------------------------------
/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | pip install -e .
4 | pip install pre-commit
5 | pre-commit install
6 | python install_tech.py
7 |
--------------------------------------------------------------------------------
/install_tech.py:
--------------------------------------------------------------------------------
1 | """Symlink tech to klayout."""
2 |
3 | import os
4 | import pathlib
5 | import shutil
6 | import sys
7 |
8 |
9 | def remove_path_or_dir(dest: pathlib.Path):
10 | if dest.is_dir():
11 | os.unlink(dest)
12 | else:
13 | os.remove(dest)
14 |
15 |
16 | def make_link(src, dest, overwrite: bool = True) -> None:
17 | dest = pathlib.Path(dest)
18 | if dest.exists() and not overwrite:
19 | print(f"{dest} already exists")
20 | return
21 | if dest.exists() or dest.is_symlink():
22 | print(f"removing {dest} already installed")
23 | remove_path_or_dir(dest)
24 | try:
25 | os.symlink(src, dest, target_is_directory=True)
26 | except OSError:
27 | shutil.copy(src, dest)
28 | print("link made:")
29 | print(f"From: {src}")
30 | print(f"To: {dest}")
31 |
32 |
33 | if __name__ == "__main__":
34 | klayout_folder = "KLayout" if sys.platform == "win32" else ".klayout"
35 | cwd = pathlib.Path(__file__).resolve().parent
36 | home = pathlib.Path.home()
37 | src = cwd / "ubcpdk" / "klayout" / "tech"
38 | dest_folder = home / klayout_folder / "tech"
39 | dest_folder.mkdir(exist_ok=True, parents=True)
40 | dest = dest_folder / "ubcpdk"
41 | make_link(src=src, dest=dest)
42 |
--------------------------------------------------------------------------------
/sparameters/bend_euler_radius3_349755f7.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/bend_euler_radius3_349755f7.npz
--------------------------------------------------------------------------------
/sparameters/bend_euler_radius3_6ad1d010.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/bend_euler_radius3_6ad1d010.npz
--------------------------------------------------------------------------------
/sparameters/coupler_gap0p13_length8_e8c7ce5e.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/coupler_gap0p13_length8_e8c7ce5e.npz
--------------------------------------------------------------------------------
/sparameters/coupler_ring_4778e15a.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/coupler_ring_4778e15a.npz
--------------------------------------------------------------------------------
/sparameters/crossing_524beede.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries:
3 | o1:
4 | s11:
5 | - s22
6 | - s33
7 | - s44
8 | s21:
9 | - s12
10 | - s34
11 | - s43
12 | s31:
13 | - s13
14 | - s24
15 | - s42
16 | s41:
17 | - s14
18 | - s23
19 | - s32
20 | wavelength_start: 1.5
21 | wavelength_stop: 1.6
22 | wavelength_points: 50
23 | port_margin: 2
24 | port_monitor_offset: -0.1
25 | port_source_offset: -0.1
26 | dispersive: false
27 | ymargin_top: 0.0
28 | ymargin_bot: 0.0
29 | xmargin_left: 0
30 | xmargin_right: 0
31 | layer_stack:
32 | strip:
33 | layer:
34 | - 1
35 | - 0
36 | thickness: 0.22
37 | zmin: 0.0
38 | material: si
39 | sidewall_angle: 0
40 | strip2:
41 | layer:
42 | - 31
43 | - 0
44 | thickness: 0.22
45 | zmin: 0.0
46 | material: si
47 | sidewall_angle: 0
48 | component:
49 | name: crossing
50 | version: 0.0.1
51 | settings:
52 | name: crossing
53 | module: gdsfactory.components.crossing_waveguide
54 | function_name: crossing
55 | info: {}
56 | info_version: 2
57 | full:
58 | arm:
59 | function: crossing_arm
60 | cross_section: strip
61 | changed: {}
62 | default:
63 | arm:
64 | function: crossing_arm
65 | cross_section: strip
66 | child: null
67 | compute_time_seconds: 2.94905424118042
68 | compute_time_minutes: 0.04915090401967367
69 |
--------------------------------------------------------------------------------
/sparameters/ebeam_crossing4_7e264905_216d7d7a.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_crossing4_7e264905_216d7d7a.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_crossing4_7e264905_216d7d7a.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries:
3 | o1@0,o1@0:
4 | - o2@0,o2@0
5 | - o3@0,o3@0
6 | - o4@0,o4@0
7 | o2@0,o1@0:
8 | - o1@0,o2@0
9 | - o3@0,o4@0
10 | - o4@0,o3@0
11 | o3@0,o1@0:
12 | - o1@0,o3@0
13 | - o2@0,o4@0
14 | - o4@0,o2@0
15 | o4@0,o1@0:
16 | - o1@0,o4@0
17 | - o2@0,o3@0
18 | - o3@0,o2@0
19 | wavelength_start: 1.5
20 | wavelength_stop: 1.6
21 | wavelength_points: 50
22 | port_margin: 2
23 | port_monitor_offset: -0.1
24 | port_source_offset: -0.1
25 | dispersive: false
26 | ymargin_top: 0.0
27 | ymargin_bot: 0.0
28 | xmargin_left: 0
29 | xmargin_right: 0
30 | is_3d: false
31 | layer_stack:
32 | strip:
33 | layer:
34 | - 1
35 | - 0
36 | thickness: 0.22
37 | zmin: 0.0
38 | material: si
39 | sidewall_angle: 0
40 | info: {}
41 | strip2:
42 | layer:
43 | - 31
44 | - 0
45 | thickness: 0.22
46 | zmin: 0.0
47 | material: si
48 | sidewall_angle: 0
49 | info: {}
50 | component:
51 | name: ebeam_crossing4_7e264905
52 | settings:
53 | name: ebeam_crossing4_7e264905
54 | module: ubcpdk.components
55 | function_name: ebeam_crossing4
56 | info:
57 | library: Design kits/ebeam
58 | model: ebeam_crossing4
59 | info_version: 2
60 | full:
61 | decorator:
62 | function: auto_rename_ports
63 | changed:
64 | decorator:
65 | function: auto_rename_ports
66 | default: {}
67 | child: null
68 | compute_time_seconds: 85.7315936088562
69 | compute_time_minutes: 1.4288598934809367
70 |
--------------------------------------------------------------------------------
/sparameters/ebeam_crossing4_7e264905_524beede.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries:
3 | o1:
4 | s11:
5 | - s22
6 | - s33
7 | - s44
8 | s21:
9 | - s12
10 | - s34
11 | - s43
12 | s31:
13 | - s13
14 | - s24
15 | - s42
16 | s41:
17 | - s14
18 | - s23
19 | - s32
20 | wavelength_start: 1.5
21 | wavelength_stop: 1.6
22 | wavelength_points: 50
23 | port_margin: 2
24 | port_monitor_offset: -0.1
25 | port_source_offset: -0.1
26 | dispersive: false
27 | ymargin_top: 0.0
28 | ymargin_bot: 0.0
29 | xmargin_left: 0
30 | xmargin_right: 0
31 | layer_stack:
32 | strip:
33 | layer:
34 | - 1
35 | - 0
36 | thickness: 0.22
37 | zmin: 0.0
38 | material: si
39 | sidewall_angle: 0
40 | strip2:
41 | layer:
42 | - 31
43 | - 0
44 | thickness: 0.22
45 | zmin: 0.0
46 | material: si
47 | sidewall_angle: 0
48 | component:
49 | name: ebeam_crossing4_7e264905
50 | version: 0.0.1
51 | settings:
52 | name: ebeam_crossing4_7e264905
53 | module: ubcpdk.components
54 | function_name: ebeam_crossing4
55 | info:
56 | library: Design kits/ebeam
57 | model: ebeam_crossing4
58 | info_version: 2
59 | full:
60 | decorator:
61 | function: auto_rename_ports
62 | changed:
63 | decorator:
64 | function: auto_rename_ports
65 | default: {}
66 | child: null
67 | compute_time_seconds: 15.12391185760498
68 | compute_time_minutes: 0.25206519762674967
69 |
--------------------------------------------------------------------------------
/sparameters/ebeam_crossing4_7e264905_c4bd0ed6.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_crossing4_7e264905_c4bd0ed6.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_0ec64804.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_0ec64804.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_0ec64804.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -15
4 | compute_time_seconds: 62.93822264671326
5 | compute_time_minutes: 1.048970377445221
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_60e5b3a8.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_60e5b3a8.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_60e5b3a8.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -5
4 | compute_time_seconds: 3.3036324977874756
5 | compute_time_minutes: 0.05506054162979126
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_2b4c71dd.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_7e264905_2b4c71dd.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_2b4c71dd.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 0
4 | compute_time_seconds: 57.904752016067505
5 | compute_time_minutes: 0.9650792002677917
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_60e5b3a8.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_7e264905_60e5b3a8.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_60e5b3a8.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -5
4 | compute_time_seconds: 64.49431157112122
5 | compute_time_minutes: 1.0749051928520204
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_d14753ca.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_7e264905_d14753ca.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_d14753ca.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 0
4 | compute_time_seconds: 58.89392685890198
5 | compute_time_minutes: 0.9815654476483663
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_d9bd5fec.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_7e264905_d9bd5fec.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_7e264905_d9bd5fec.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 5
4 | compute_time_seconds: 61.239017963409424
5 | compute_time_minutes: 1.0206502993901572
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_985757a9.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_985757a9.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_985757a9.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -10
4 | compute_time_seconds: 57.57888197898865
5 | compute_time_minutes: 0.9596480329831442
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_d14753ca.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_d14753ca.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_d14753ca.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 0
4 | compute_time_seconds: 3.1204681396484375
5 | compute_time_minutes: 0.052007802327473956
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_d9bd5fec.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_gc_te1550_d9bd5fec.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_gc_te1550_d9bd5fec.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 5
4 | compute_time_seconds: 3.410997152328491
5 | compute_time_minutes: 0.05684995253880819
6 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550/ebeam_y_1550_1fbf8f67.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries: {}
3 | wl_min: 1.5
4 | wl_max: 1.6
5 | wl_steps: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3.0
11 | ymargin_bot: 3.0
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | layer_stack:
15 | strip:
16 | layer:
17 | - 1
18 | - 0
19 | thickness: 0.22
20 | zmin: 0.0
21 | material: si
22 | sidewall_angle: 0.0
23 | strip2:
24 | layer:
25 | - 31
26 | - 0
27 | thickness: 0.22
28 | zmin: 0.0
29 | material: si
30 | sidewall_angle: 0.0
31 | component:
32 | ports:
33 | o1:
34 | name: o1
35 | midpoint:
36 | - -7.4
37 | - 0
38 | width: 0.5
39 | orientation: 180
40 | layer:
41 | - 1
42 | - 0
43 | port_type: optical
44 | o2:
45 | name: o2
46 | midpoint:
47 | - 7.4
48 | - 2.75
49 | width: 0.5
50 | orientation: 0
51 | layer:
52 | - 1
53 | - 0
54 | port_type: optical
55 | o3:
56 | name: o3
57 | midpoint:
58 | - 7.4
59 | - -2.75
60 | width: 0.5
61 | orientation: 0
62 | layer:
63 | - 1
64 | - 0
65 | port_type: optical
66 | info:
67 | name: ebeam_y_1550
68 | cells:
69 | ebeam_y_1550:
70 | name: ebeam_y_1550
71 | version: 0.0.1
72 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_0d010a6f.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_0d010a6f.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_0d010a6f.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | material_name_to_meep:
16 | si: 2.8494636999424405
17 | layer_stack:
18 | strip:
19 | layer:
20 | - 1
21 | - 0
22 | thickness: 0.22
23 | thickness_tolerance: null
24 | zmin: 0.0
25 | material: si
26 | sidewall_angle: 0.0
27 | width_to_z: 0.0
28 | z_to_bias: null
29 | info: {}
30 | strip2:
31 | layer:
32 | - 31
33 | - 0
34 | thickness: 0.22
35 | thickness_tolerance: null
36 | zmin: 0.0
37 | material: si
38 | sidewall_angle: 0.0
39 | width_to_z: 0.0
40 | z_to_bias: null
41 | info: {}
42 | component:
43 | name: ebeam_y_1550
44 | settings:
45 | name: ebeam_y_1550
46 | module: ubcpdk.components
47 | function_name: ebeam_y_1550
48 | info:
49 | library: Design kits/ebeam
50 | model: ebeam_y_1550
51 | info_version: 2
52 | full: {}
53 | changed: {}
54 | default: {}
55 | child: null
56 | compute_time_seconds: 75.88240885734558
57 | compute_time_minutes: 1.264706814289093
58 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_199b0a13b1f667b1e06104a659d324b2.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_199b0a13b1f667b1e06104a659d324b2.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_199b0a13b1f667b1e06104a659d324b2.yml:
--------------------------------------------------------------------------------
1 | compute_time_seconds: 66.282
2 | compute_time_minutes: 1.105
3 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_1f494ca0.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_1f494ca0.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_1f494ca0.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | layer_stack:
16 | strip:
17 | layer:
18 | - 1
19 | - 0
20 | thickness: 0.22
21 | zmin: 0.0
22 | material: si
23 | sidewall_angle: 0
24 | info: {}
25 | strip2:
26 | layer:
27 | - 31
28 | - 0
29 | thickness: 0.22
30 | zmin: 0.0
31 | material: si
32 | sidewall_angle: 0
33 | info: {}
34 | component:
35 | name: ebeam_y_1550
36 | settings:
37 | name: ebeam_y_1550
38 | module: ubcpdk.components
39 | function_name: ebeam_y_1550
40 | info:
41 | library: Design kits/ebeam
42 | model: ebeam_y_1550
43 | info_version: 2
44 | full: {}
45 | changed: {}
46 | default: {}
47 | child: null
48 | compute_time_seconds: 181.47205114364624
49 | compute_time_minutes: 3.0245341857274375
50 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_20634f71.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_20634f71.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_20634f71.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | layer_stack:
15 | strip:
16 | layer:
17 | - 1
18 | - 0
19 | thickness: 0.22
20 | zmin: 0.0
21 | material: si
22 | sidewall_angle: 0
23 | strip2:
24 | layer:
25 | - 31
26 | - 0
27 | thickness: 0.22
28 | zmin: 0.0
29 | material: si
30 | sidewall_angle: 0
31 | component:
32 | name: ebeam_y_1550
33 | settings:
34 | name: ebeam_y_1550
35 | module: ubcpdk.components
36 | function_name: ebeam_y_1550
37 | info:
38 | library: Design kits/ebeam
39 | model: ebeam_y_1550
40 | info_version: 2
41 | full: {}
42 | changed: {}
43 | default: {}
44 | child: null
45 | compute_time_seconds: 140.58550214767456
46 | compute_time_minutes: 2.3430917024612428
47 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_21fe4056.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | layer_stack:
15 | strip:
16 | layer:
17 | - 1
18 | - 0
19 | thickness: 0.22
20 | zmin: 0.0
21 | material: si
22 | sidewall_angle: 0
23 | strip2:
24 | layer:
25 | - 31
26 | - 0
27 | thickness: 0.22
28 | zmin: 0.0
29 | material: si
30 | sidewall_angle: 0
31 | component:
32 | version: 0.0.1
33 | settings: {}
34 | compute_time_seconds: 209.30988097190857
35 | compute_time_minutes: 3.488498016198476
36 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_39d5288b.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_39d5288b.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_63211777.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | material_name_to_meep:
16 | si: 2.8494636999424405
17 | layer_stack:
18 | strip:
19 | layer:
20 | - 1
21 | - 0
22 | thickness: 0.22
23 | zmin: 0.0
24 | material: si
25 | sidewall_angle: 0
26 | strip2:
27 | layer:
28 | - 31
29 | - 0
30 | thickness: 0.22
31 | zmin: 0.0
32 | material: si
33 | sidewall_angle: 0
34 | component:
35 | name: ebeam_y_1550
36 | version: 0.0.1
37 | settings: {}
38 | compute_time_seconds: 87.10249018669128
39 | compute_time_minutes: 1.4517081697781882
40 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_76acf988.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_76acf988.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_76acf988.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | material_name_to_meep:
16 | si: 2.8494636999424405
17 | layer_stack:
18 | strip:
19 | layer:
20 | - 1
21 | - 0
22 | thickness: 0.22
23 | zmin: 0.0
24 | material: si
25 | sidewall_angle: 0
26 | info: {}
27 | strip2:
28 | layer:
29 | - 31
30 | - 0
31 | thickness: 0.22
32 | zmin: 0.0
33 | material: si
34 | sidewall_angle: 0
35 | info: {}
36 | component:
37 | name: ebeam_y_1550
38 | settings:
39 | name: ebeam_y_1550
40 | module: ubcpdk.components
41 | function_name: ebeam_y_1550
42 | info:
43 | library: Design kits/ebeam
44 | model: ebeam_y_1550
45 | info_version: 2
46 | full: {}
47 | changed: {}
48 | default: {}
49 | child: null
50 | compute_time_seconds: 99.67435359954834
51 | compute_time_minutes: 1.661239226659139
52 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_7e264905_c3ff7345.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_7e264905_c3ff7345.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_7e264905_c3ff7345.yml:
--------------------------------------------------------------------------------
1 | compute_time_seconds: 53.077330589294434
2 | compute_time_minutes: 0.8846221764882406
3 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_912ab8ee.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_912ab8ee.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_912ab8ee.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | layer_stack:
16 | strip:
17 | layer:
18 | - 1
19 | - 0
20 | thickness: 0.22
21 | zmin: 0.0
22 | material: si
23 | sidewall_angle: 0
24 | info: {}
25 | strip2:
26 | layer:
27 | - 31
28 | - 0
29 | thickness: 0.22
30 | zmin: 0.0
31 | material: si
32 | sidewall_angle: 0
33 | info: {}
34 | monitor:
35 | layer:
36 | - 101
37 | - 0
38 | thickness: 6.0
39 | zmin: -3.0
40 | material: null
41 | sidewall_angle: 0
42 | info: {}
43 | source:
44 | layer:
45 | - 110
46 | - 0
47 | thickness: 6.0
48 | zmin: -3.0
49 | material: null
50 | sidewall_angle: 0
51 | info: {}
52 | component:
53 | name: ebeam_y_1550
54 | settings:
55 | name: ebeam_y_1550
56 | module: ubcpdk.components
57 | function_name: ebeam_y_1550
58 | info:
59 | library: Design kits/ebeam
60 | model: ebeam_y_1550
61 | info_version: 2
62 | full: {}
63 | changed: {}
64 | default: {}
65 | child: null
66 | compute_time_seconds: 180.10234689712524
67 | compute_time_minutes: 3.001705781618754
68 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_b9a44b79.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | layer_stack:
15 | strip:
16 | layer:
17 | - 1
18 | - 0
19 | thickness: 0.22
20 | zmin: 0.0
21 | material: si
22 | sidewall_angle: 0
23 | strip2:
24 | layer:
25 | - 31
26 | - 0
27 | thickness: 0.22
28 | zmin: 0.0
29 | material: si
30 | sidewall_angle: 0
31 | monitor:
32 | layer:
33 | - 101
34 | - 0
35 | thickness: 6.0
36 | zmin: -3.0
37 | material: null
38 | sidewall_angle: 0
39 | source:
40 | layer:
41 | - 110
42 | - 0
43 | thickness: 6.0
44 | zmin: -3.0
45 | material: null
46 | sidewall_angle: 0
47 | component:
48 | name: ebeam_y_1550
49 | version: 0.0.1
50 | settings: {}
51 | compute_time_seconds: 159.36617875099182
52 | compute_time_minutes: 2.656102979183197
53 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_c3ff7345.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_c3ff7345.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_c3ff7345.yml:
--------------------------------------------------------------------------------
1 | compute_time_seconds: 60.538620471954346
2 | compute_time_minutes: 1.0089770078659057
3 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_d94e5bdc.yml:
--------------------------------------------------------------------------------
1 | resolution: 20
2 | port_symmetries: {}
3 | wl_min: 1.5
4 | wl_max: 1.6
5 | wl_steps: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3.0
11 | ymargin_bot: 3.0
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | layer_stack:
15 | strip:
16 | layer:
17 | - 1
18 | - 0
19 | thickness: 0.22
20 | zmin: 0.0
21 | material: si
22 | sidewall_angle: 0.0
23 | strip2:
24 | layer:
25 | - 31
26 | - 0
27 | thickness: 0.22
28 | zmin: 0.0
29 | material: si
30 | sidewall_angle: 0.0
31 | component:
32 | ports:
33 | o1:
34 | name: o1
35 | midpoint:
36 | - -7.4
37 | - 0
38 | width: 0.5
39 | orientation: 180
40 | layer:
41 | - 1
42 | - 0
43 | port_type: optical
44 | o2:
45 | name: o2
46 | midpoint:
47 | - 7.4
48 | - 2.75
49 | width: 0.5
50 | orientation: 0
51 | layer:
52 | - 1
53 | - 0
54 | port_type: optical
55 | o3:
56 | name: o3
57 | midpoint:
58 | - 7.4
59 | - -2.75
60 | width: 0.5
61 | orientation: 0
62 | layer:
63 | - 1
64 | - 0
65 | port_type: optical
66 | info:
67 | doc: Y junction TE1550 50/50 power.
68 | name: ebeam_y_1550
69 | cells:
70 | ebeam_y_1550:
71 | doc: Y junction TE1550 50/50 power.
72 | name: ebeam_y_1550
73 | version: 0.0.1
74 |
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_f578394f.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/ebeam_y_1550_f578394f.npz
--------------------------------------------------------------------------------
/sparameters/ebeam_y_1550_f578394f.yml:
--------------------------------------------------------------------------------
1 | resolution: 30
2 | port_symmetries: {}
3 | wavelength_start: 1.5
4 | wavelength_stop: 1.6
5 | wavelength_points: 50
6 | port_margin: 2
7 | port_monitor_offset: -0.1
8 | port_source_offset: -0.1
9 | dispersive: false
10 | ymargin_top: 3
11 | ymargin_bot: 3
12 | xmargin_left: 0
13 | xmargin_right: 0
14 | is_3d: false
15 | layer_stack:
16 | strip:
17 | layer:
18 | - 1
19 | - 0
20 | thickness: 0.22
21 | thickness_tolerance: null
22 | zmin: 0.0
23 | material: si
24 | sidewall_angle: 0.0
25 | width_to_z: 0.0
26 | z_to_bias: null
27 | info: {}
28 | strip2:
29 | layer:
30 | - 31
31 | - 0
32 | thickness: 0.22
33 | thickness_tolerance: null
34 | zmin: 0.0
35 | material: si
36 | sidewall_angle: 0.0
37 | width_to_z: 0.0
38 | z_to_bias: null
39 | info: {}
40 | component:
41 | name: ebeam_y_1550
42 | settings:
43 | name: ebeam_y_1550
44 | module: ubcpdk.components
45 | function_name: ebeam_y_1550
46 | info:
47 | library: Design kits/ebeam
48 | model: ebeam_y_1550
49 | info_version: 2
50 | full: {}
51 | changed: {}
52 | default: {}
53 | child: null
54 | compute_time_seconds: 162.4118685722351
55 | compute_time_minutes: 2.7068644762039185
56 |
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_-5.0um.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/gc_-31.0deg_-5.0um.npz
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_-5.0um.yml:
--------------------------------------------------------------------------------
1 | compute_time_minutes: 1.767
2 | compute_time_seconds: 106.031
3 | fiber_angle_deg: -31
4 | fiber_xoffset: -5
5 | is_3d: false
6 |
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_0.0um.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/gc_-31.0deg_0.0um.npz
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_0.0um.yml:
--------------------------------------------------------------------------------
1 | compute_time_minutes: 0.013
2 | compute_time_seconds: 0.788
3 | fiber_angle_deg: -31
4 | fiber_xoffset: 0
5 | is_3d: false
6 |
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_5.0um.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/gc_-31.0deg_5.0um.npz
--------------------------------------------------------------------------------
/sparameters/gc_-31.0deg_5.0um.yml:
--------------------------------------------------------------------------------
1 | compute_time_minutes: 1.78
2 | compute_time_seconds: 106.797
3 | fiber_angle_deg: -31
4 | fiber_xoffset: 5
5 | is_3d: false
6 |
--------------------------------------------------------------------------------
/sparameters/gc_te1550.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/gc_te1550.npz
--------------------------------------------------------------------------------
/sparameters/gc_te1550.yml:
--------------------------------------------------------------------------------
1 | compute_time_minutes: 1.655
2 | compute_time_seconds: 99.291
3 | fiber_angle_deg: -31
4 | fiber_xoffset: 0
5 | is_3d: false
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_0ec64804.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_0ec64804.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_0ec64804.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -15
4 | compute_time_seconds: 69.73126530647278
5 | compute_time_minutes: 1.1621877551078796
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_0f8e55d2d79975dd8e8ea4016d3c56a2.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_0f8e55d2d79975dd8e8ea4016d3c56a2.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_0f8e55d2d79975dd8e8ea4016d3c56a2.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -15
4 | compute_time_seconds: 17.621
5 | compute_time_minutes: 0.294
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_26962e480cc055bb0b565a168ba56196.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_26962e480cc055bb0b565a168ba56196.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_26962e480cc055bb0b565a168ba56196.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 5
4 | compute_time_seconds: 14.744
5 | compute_time_minutes: 0.246
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_60e5b3a8.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_60e5b3a8.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_60e5b3a8.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -5
4 | compute_time_seconds: 64.10221600532532
5 | compute_time_minutes: 1.068370266755422
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_79ae2c47cfda4d910ad8afc4868758f5.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_79ae2c47cfda4d910ad8afc4868758f5.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_79ae2c47cfda4d910ad8afc4868758f5.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -5
4 | compute_time_seconds: 14.747
5 | compute_time_minutes: 0.246
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_985757a9.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_985757a9.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_985757a9.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -10
4 | compute_time_seconds: 65.07130861282349
5 | compute_time_minutes: 1.0845218102137248
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_d14753ca.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_d14753ca.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_d14753ca.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 0
4 | compute_time_seconds: 64.62230706214905
5 | compute_time_minutes: 1.0770384510358175
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_d9bd5fec.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_d9bd5fec.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_d9bd5fec.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 5
4 | compute_time_seconds: 60.06984901428223
5 | compute_time_minutes: 1.001164150238037
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_f2c68445b4de85cee32e49c0386239aa.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_f2c68445b4de85cee32e49c0386239aa.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_f2c68445b4de85cee32e49c0386239aa.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: 0
4 | compute_time_seconds: 13.999
5 | compute_time_minutes: 0.233
6 |
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_fa1d65ff96e74bb0ba99eb021a049e62.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/mirror_948d7eaf_gc_te1550_fa1d65ff96e74bb0ba99eb021a049e62.npz
--------------------------------------------------------------------------------
/sparameters/mirror_948d7eaf_gc_te1550_fa1d65ff96e74bb0ba99eb021a049e62.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: -31
3 | fiber_xoffset: -10
4 | compute_time_seconds: 16.757
5 | compute_time_minutes: 0.279
6 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_04b25a3b.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 23
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 166.456303358078
27 | compute_time_minutes: 2.774271722634633
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_08088987.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 30
25 | fiber_xoffset: 19
26 | compute_time_seconds: 77.5216064453125
27 | compute_time_minutes: 1.2920267740885416
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_1933e42f.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 15
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 212.89571356773376
27 | compute_time_minutes: 3.548261892795563
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_39be6f18.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 27
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 331.16420245170593
27 | compute_time_minutes: 5.5194033741950985
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_3a26c260.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 4
26 | compute_time_seconds: 97.93509864807129
27 | compute_time_minutes: 1.6322516441345214
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_46e06d33.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: -10
26 | compute_time_seconds: 75.88972020149231
27 | compute_time_minutes: 1.2648286700248719
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_49a8fbc1.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: -4
26 | compute_time_seconds: 110.626699924469
27 | compute_time_minutes: 1.8437783320744832
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_6292f352.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 29
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 186.9194347858429
27 | compute_time_minutes: 3.1153239130973818
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_68720cc2.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 25
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 77.55401849746704
27 | compute_time_minutes: 1.292566974957784
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_6ae86fa9.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 19
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 174.0717260837555
27 | compute_time_minutes: 2.9011954347292583
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_73260aa2.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 35
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 352.96917605400085
27 | compute_time_minutes: 5.882819600900015
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_75dfd42e.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 27
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 199.21872282028198
27 | compute_time_minutes: 3.3203120470046996
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_86a0c5f2.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 6
26 | compute_time_seconds: 76.55245423316956
27 | compute_time_minutes: 1.2758742372194927
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_8890572b.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 10
26 | compute_time_seconds: 93.3253698348999
27 | compute_time_minutes: 1.555422830581665
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_8c630bfa.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 30
25 | fiber_xoffset: 23
26 | compute_time_seconds: 103.61069798469543
27 | compute_time_minutes: 1.7268449664115906
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_8d0ba197.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: -6
26 | compute_time_seconds: 77.51380109786987
27 | compute_time_minutes: 1.291896684964498
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_8ec78c6d.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 33
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 295.37618684768677
27 | compute_time_minutes: 4.9229364474614465
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_8f66116d.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 15
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 257.26808071136475
27 | compute_time_minutes: 4.287801345189412
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_9404750c.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 33
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 244.44445848464966
27 | compute_time_minutes: 4.074074308077495
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_a2a7ee32.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 2
26 | compute_time_seconds: 78.05954360961914
27 | compute_time_minutes: 1.3009923934936523
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_b1a4d58f.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 31
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 267.9288637638092
27 | compute_time_minutes: 4.465481062730153
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_b5fb72a1.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: -2
26 | compute_time_seconds: 78.15797519683838
27 | compute_time_minutes: 1.3026329199473063
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_b70d6a24.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 21
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 108.05779433250427
27 | compute_time_minutes: 1.8009632388750711
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_c156aa56.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 35
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 280.6240475177765
27 | compute_time_minutes: 4.677067458629608
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_cfeae4e8.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 21
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 345.83163118362427
27 | compute_time_minutes: 5.763860519727071
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_e0617363.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 17
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 200.85374760627747
27 | compute_time_minutes: 3.3475624601046245
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_e775c147.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 0
26 | compute_time_seconds: 77.03322386741638
27 | compute_time_minutes: 1.2838870644569398
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_f6081c2d.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 17
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 242.19604539871216
27 | compute_time_minutes: 4.0366007566452025
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_f85668d1.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: 8
26 | compute_time_seconds: 76.30805277824402
27 | compute_time_minutes: 1.2718008796374003
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_f918bc72.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 29
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 318.39105200767517
27 | compute_time_minutes: 5.306517533461252
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_fa707732.yml:
--------------------------------------------------------------------------------
1 | layer_stack:
2 | strip:
3 | layer:
4 | - 1
5 | - 0
6 | thickness: 0.22
7 | zmin: 0.0
8 | material: si
9 | sidewall_angle: 0
10 | strip2:
11 | layer:
12 | - 31
13 | - 0
14 | thickness: 0.22
15 | zmin: 0.0
16 | material: si
17 | sidewall_angle: 0
18 | material_name_to_tidy3d:
19 | si: 3.47
20 | sio2: 1.44
21 | sin: 2
22 | fiber_port_name: o1
23 | is_3d: false
24 | fiber_angle_deg: 31
25 | fiber_xoffset: -8
26 | compute_time_seconds: 111.01514720916748
27 | compute_time_minutes: 1.8502524534861247
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_fa7eb155.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 31
3 | fiber_xoffset: 31
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 258.89413619041443
27 | compute_time_minutes: 4.314902269840241
28 |
--------------------------------------------------------------------------------
/sparameters/rotate_f258530e_ff85c8d5.yml:
--------------------------------------------------------------------------------
1 | is_3d: false
2 | fiber_angle_deg: 30
3 | fiber_xoffset: 25
4 | layer_stack:
5 | strip:
6 | layer:
7 | - 1
8 | - 0
9 | thickness: 0.22
10 | zmin: 0.0
11 | material: si
12 | sidewall_angle: 0
13 | strip2:
14 | layer:
15 | - 31
16 | - 0
17 | thickness: 0.22
18 | zmin: 0.0
19 | material: si
20 | sidewall_angle: 0
21 | material_name_to_tidy3d:
22 | si: 3.47
23 | sio2: 1.44
24 | sin: 2
25 | fiber_port_name: o1
26 | compute_time_seconds: 294.79233622550964
27 | compute_time_minutes: 4.913205603758494
28 |
--------------------------------------------------------------------------------
/sparameters/straight_length3_18b541d4.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/straight_length3_18b541d4.npz
--------------------------------------------------------------------------------
/sparameters/straight_length3_8f9504cc.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/straight_length3_8f9504cc.npz
--------------------------------------------------------------------------------
/sparameters/straight_length3_d34ef86b690da3f9c50cb80b5cf3ff11.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/straight_length3_d34ef86b690da3f9c50cb80b5cf3ff11.npz
--------------------------------------------------------------------------------
/sparameters/straight_length3p1_bdd2f6cd.npz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/sparameters/straight_length3p1_bdd2f6cd.npz
--------------------------------------------------------------------------------
/tests/ref/bend_euler_bend_euler_CSstrip.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/bend_euler_bend_euler_CSstrip.gds
--------------------------------------------------------------------------------
/tests/ref/bend_euler_bend_euler_C_31752e67.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/bend_euler_bend_euler_C_31752e67.gds
--------------------------------------------------------------------------------
/tests/ref/bend_s_bend_s_S11_1p8_N_390cd0af.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/bend_s_bend_s_S11_1p8_N_390cd0af.gds
--------------------------------------------------------------------------------
/tests/ref/coupler.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler.gds
--------------------------------------------------------------------------------
/tests/ref/coupler90_coupler90_G0p_591568bb.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler90_coupler90_G0p_591568bb.gds
--------------------------------------------------------------------------------
/tests/ref/coupler_coupler_G0p236__159c01fd.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler_coupler_G0p236__159c01fd.gds
--------------------------------------------------------------------------------
/tests/ref/coupler_coupler_G0p236__a8bdff39.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler_coupler_G0p236__a8bdff39.gds
--------------------------------------------------------------------------------
/tests/ref/coupler_coupler_G0p236__c8a179e4.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler_coupler_G0p236__c8a179e4.gds
--------------------------------------------------------------------------------
/tests/ref/coupler_ring_coupler_ri_a4309215.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler_ring_coupler_ri_a4309215.gds
--------------------------------------------------------------------------------
/tests/ref/coupler_straight_couple_33ca69a2.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/coupler_straight_couple_33ca69a2.gds
--------------------------------------------------------------------------------
/tests/ref/dbr_cavity_dbr_cavity_D_6f81e1fa.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/dbr_cavity_dbr_cavity_D_6f81e1fa.gds
--------------------------------------------------------------------------------
/tests/ref/dbr_cavity_te_dbr_cavit_edb4408e.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/dbr_cavity_te_dbr_cavit_edb4408e.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_adiabatic_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_adiabatic_te1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_bdc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_bdc_te1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_bdc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_bdc_tm1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_crossing4.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_crossing4.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_crossing4_2ports.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_crossing4_2ports.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_splitter_adiabati_1c687ad8.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_splitter_adiabati_1c687ad8.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_splitter_swg_assist_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_splitter_swg_assist_te1310.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_splitter_swg_assist_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_splitter_swg_assist_te1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_terminator_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_terminator_te1310.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_terminator_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_terminator_te1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_terminator_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_terminator_tm1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_y_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_y_1550.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_y_adiabatic.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_y_adiabatic.gds
--------------------------------------------------------------------------------
/tests/ref/ebeam_y_adiabatic_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ebeam_y_adiabatic_1310.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1310.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1310_8deg.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1310_8deg.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1310_broadband.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1310_broadband.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1550.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1550_90nmSlab.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1550_90nmSlab.gds
--------------------------------------------------------------------------------
/tests/ref/gc_te1550_broadband.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_te1550_broadband.gds
--------------------------------------------------------------------------------
/tests/ref/gc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/gc_tm1550.gds
--------------------------------------------------------------------------------
/tests/ref/metal_via.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/metal_via.gds
--------------------------------------------------------------------------------
/tests/ref/mmi1x2.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/mmi1x2.gds
--------------------------------------------------------------------------------
/tests/ref/mzi_heater_mzi_heater_DL10_LX320.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/mzi_heater_mzi_heater_DL10_LX320.gds
--------------------------------------------------------------------------------
/tests/ref/pad_array_pad_array_PFp_5efb8756.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/pad_array_pad_array_PFp_5efb8756.gds
--------------------------------------------------------------------------------
/tests/ref/pad_pad_S75_75_LM2_ROUT_a24a937f.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/pad_pad_S75_75_LM2_ROUT_a24a937f.gds
--------------------------------------------------------------------------------
/tests/ref/photonic_wirebond_surfa_247ccd11.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/photonic_wirebond_surfa_247ccd11.gds
--------------------------------------------------------------------------------
/tests/ref/photonic_wirebond_surfa_4f115197.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/photonic_wirebond_surfa_4f115197.gds
--------------------------------------------------------------------------------
/tests/ref/ring_double_heater_ring_6237d469.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ring_double_heater_ring_6237d469.gds
--------------------------------------------------------------------------------
/tests/ref/ring_double_heater_ring_8b1aafcc.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ring_double_heater_ring_8b1aafcc.gds
--------------------------------------------------------------------------------
/tests/ref/ring_double_ring_double_267a3e9c.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ring_double_ring_double_267a3e9c.gds
--------------------------------------------------------------------------------
/tests/ref/ring_single_dut_ring_si_219403cd.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ring_single_dut_ring_si_219403cd.gds
--------------------------------------------------------------------------------
/tests/ref/ring_single_ring_single_82ff2bc7.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/ring_single_ring_single_82ff2bc7.gds
--------------------------------------------------------------------------------
/tests/ref/spiral_spiral_L100_S3_NL6.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/spiral_spiral_L100_S3_NL6.gds
--------------------------------------------------------------------------------
/tests/ref/straight_heater_metal_s_3a225c2e.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/straight_heater_metal_s_3a225c2e.gds
--------------------------------------------------------------------------------
/tests/ref/straight_one_pin_straig_e70a3ed8.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/straight_one_pin_straig_e70a3ed8.gds
--------------------------------------------------------------------------------
/tests/ref/straight_straight_L10_N2_CSstrip.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/straight_straight_L10_N2_CSstrip.gds
--------------------------------------------------------------------------------
/tests/ref/straight_straight_L10_N_ecd66c66.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/straight_straight_L10_N_ecd66c66.gds
--------------------------------------------------------------------------------
/tests/ref/taper_taper_L10_W0p5_WN_5cc09a85.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/taper_taper_L10_W0p5_WN_5cc09a85.gds
--------------------------------------------------------------------------------
/tests/ref/taper_taper_L10_W0p5_WN_c9bd9d3a.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/taper_taper_L10_W0p5_WN_c9bd9d3a.gds
--------------------------------------------------------------------------------
/tests/ref/terminator_short_termin_5556f35e.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/terminator_short_termin_5556f35e.gds
--------------------------------------------------------------------------------
/tests/ref/thermal_phase_shifter_m_6480beac.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/thermal_phase_shifter_m_6480beac.gds
--------------------------------------------------------------------------------
/tests/ref/thermal_phase_shifter_t_22d678c3.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/thermal_phase_shifter_t_22d678c3.gds
--------------------------------------------------------------------------------
/tests/ref/thermal_phase_shifter_t_75acd1c1.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/thermal_phase_shifter_t_75acd1c1.gds
--------------------------------------------------------------------------------
/tests/ref/thermal_phase_shifter_t_ab7ae757.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/thermal_phase_shifter_t_ab7ae757.gds
--------------------------------------------------------------------------------
/tests/ref/via_stack_heater_mtop_v_dab7f8ed.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/via_stack_heater_mtop_v_dab7f8ed.gds
--------------------------------------------------------------------------------
/tests/ref/wire_corner_wire_corner_a07cee56.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/tests/ref/wire_corner_wire_corner_a07cee56.gds
--------------------------------------------------------------------------------
/tests/test_components.py:
--------------------------------------------------------------------------------
1 | import pathlib
2 |
3 | import pytest
4 | from gdsfactory.component import Component
5 | from gdsfactory.difftest import difftest
6 | from pytest_regressions.data_regression import DataRegressionFixture
7 |
8 | from ubcpdk import cells
9 |
10 | skip_test = {
11 | "add_siepic_labels",
12 | "add_fiber_array_siepic",
13 | "add_pins_bbox_siepic_metal",
14 | "add_pins_siepic",
15 | "add_pins_siepic_metal",
16 | "dbr",
17 | "dbg",
18 | "add_pins_bbox_siepic",
19 | "add_pads",
20 | "add_pads_rf",
21 | "add_pads_bot",
22 | "add_pads_top",
23 | "add_pins_bbox_siepic_remove_layers",
24 | "import_gds",
25 | "import_gc",
26 | "mzi",
27 | "ebeam_adiabatic_tm1550",
28 | "ebeam_swg_edgecoupler",
29 | "ebeam_BondPad",
30 | "add_fiber_array",
31 | "add_fiber_array_pads_rf",
32 | }
33 | cell_names = set(cells.keys()) - set(skip_test)
34 | dirpath_ref = pathlib.Path(__file__).absolute().parent / "ref"
35 |
36 |
37 | @pytest.fixture(params=cell_names, scope="function")
38 | def component(request) -> Component:
39 | return cells[request.param]()
40 |
41 |
42 | def test_pdk_gds(component: Component) -> None:
43 | """Avoid regressions in GDS geometry, cell names and layers."""
44 | difftest(component, dirpath=dirpath_ref)
45 |
46 |
47 | def test_pdk_settings(
48 | component: Component, data_regression: DataRegressionFixture
49 | ) -> None:
50 | """Avoid regressions when exporting settings."""
51 | data_regression.check(component.to_dict(with_ports=False))
52 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_bend_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | dy: 10
3 | length: 16.637
4 | min_bend_radius: 7.061
5 | radius: 10
6 | route_info_length: 16.637
7 | route_info_min_bend_radius: 7.061
8 | route_info_n_bend_90: 1
9 | route_info_strip_length: 16.637
10 | route_info_type: strip
11 | route_info_weight: 16.637
12 | width: 0.5
13 | name: bend_euler_CSstrip
14 | settings:
15 | cross_section: strip
16 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_bend_euler180_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | dy: 0
3 | length: 42.817
4 | min_bend_radius: 9.086
5 | radius: 10
6 | route_info_length: 42.817
7 | route_info_min_bend_radius: 9.086
8 | route_info_n_bend_90: 2
9 | route_info_strip_length: 42.817
10 | route_info_type: strip
11 | route_info_weight: 42.817
12 | width: 0.5
13 | name: bend_euler_CSstrip_A180
14 | settings:
15 | angle: 180
16 | cross_section: strip
17 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_bend_euler_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | dy: 10
3 | length: 16.637
4 | min_bend_radius: 7.061
5 | radius: 10
6 | route_info_length: 16.637
7 | route_info_min_bend_radius: 7.061
8 | route_info_n_bend_90: 1
9 | route_info_strip_length: 16.637
10 | route_info_type: strip
11 | route_info_weight: 16.637
12 | width: 0.5
13 | name: bend_euler_CSstrip
14 | settings:
15 | cross_section: strip
16 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_bend_s_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | end_angle: 0
3 | length: 11.206
4 | min_bend_radius: 13.012
5 | route_info_length: 11.206
6 | route_info_min_bend_radius: 13.012
7 | route_info_n_bend_s: 1
8 | route_info_strip_length: 11.206
9 | route_info_type: strip
10 | route_info_weight: 11.206
11 | start_angle: 0
12 | name: bend_s_S11_1p8_N99_CSst_71d8cbbd
13 | settings:
14 | allow_min_radius_violation: false
15 | cross_section: strip
16 | npoints: 99
17 | size:
18 | - 11
19 | - 1.8
20 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_coupler90_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: coupler90_G0p2_RNone_Bb_9c88eb65
3 | settings:
4 | bend: bend_euler
5 | cross_section: strip
6 | gap: 0.2
7 | straight: straight
8 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_coupler_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 10.186
3 | min_bend_radius: 11.857
4 | name: coupler
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_coupler_ring_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: coupler_ring_G0p2_R10_L_4c94bf2e
3 | settings:
4 | bend: bend_euler
5 | cross_section: strip
6 | gap: 0.2
7 | length_extension: 3
8 | length_x: 4
9 | radius: 10
10 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_coupler_straight_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: coupler_straight_L10_G0_202c9430
3 | settings:
4 | cross_section: strip
5 | gap: 0.2
6 | length: 10
7 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_dbr_cavity_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: dbr_cavity_Ddbr_Ccoupler
3 | settings:
4 | coupler: coupler
5 | dbr: dbr
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_dbr_cavity_te_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: dbr_cavity_te_Cdbr_cavity
3 | settings:
4 | component: dbr_cavity
5 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_adiabatic_te1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_adiabatic_te1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_bdc_te1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_bdc_te1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_bdc_tm1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_bdc_tm1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_crossing4_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_crossing4
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_crossing4_2ports_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_crossing4_2ports
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_dc_te1550_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 10.186
3 | min_bend_radius: 11.857
4 | name: coupler_G0p236_L20_D4_D_b138340a
5 | settings:
6 | allow_min_radius_violation: false
7 | bend: bend_s
8 | cross_section: strip
9 | dx: 10
10 | dy: 4
11 | gap: 0.236
12 | length: 20
13 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_splitter_adiabatic_swg_te1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_splitter_adiabati_c6483e92
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_splitter_swg_assist_te1310_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_splitter_swg_assist_te1310
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_splitter_swg_assist_te1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_splitter_swg_assist_te1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_terminator_te1310_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_terminator_te1310
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_terminator_te1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_terminator_te1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_terminator_tm1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_terminator_tm1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_y_1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_y_1550
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_y_adiabatic_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_y_adiabatic
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ebeam_y_adiabatic_1310_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ebeam_y_adiabatic_1310
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1310_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.31
4 | name: gc_te1310
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1310_8deg_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.31
4 | name: gc_te1310_8deg
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1310_broadband_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.31
4 | name: gc_te1310_broadband
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1550_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.55
4 | name: gc_te1550
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1550_90nmSlab_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.55
4 | name: gc_te1550_90nmSlab
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_te1550_broadband_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: te
3 | wavelength: 1.55
4 | name: gc_te1550_broadband
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_gc_tm1550_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | polarization: tm
3 | wavelength: 1.55
4 | name: gc_tm1550
5 | settings: {}
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_metal_via_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: metal_via
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_mmi1x2_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: mmi1x2
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_mzi_heater_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: mzi_heater_DL10_LX320
3 | settings:
4 | delta_length: 10
5 | length_x: 320
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_pad_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | size:
3 | - 75
4 | - 75
5 | xsize: 75
6 | ysize: 75
7 | name: pad_S75_75_LM2_ROUTER_B_a6f49d52
8 | settings:
9 | bbox_layers:
10 | - PAD_OPEN
11 | bbox_offsets:
12 | - -1.8
13 | layer: M2_ROUTER
14 | port_inclusion: 0
15 | port_orientation: 0
16 | port_orientations:
17 | - 180
18 | - 90
19 | - 0
20 | - -90
21 | port_type: pad
22 | size:
23 | - 75
24 | - 75
25 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_pad_array_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: pad_array_PFpad_Mgdsfac_f7490298
3 | settings:
4 | auto_rename_ports: false
5 | centered_ports: false
6 | column_pitch: 125
7 | columns: 6
8 | layer: MTOP
9 | pad: Fpad_Mgdsfactorypcomponentsppadsppad_SS75_75_LM2_ROUTER_BLPAD_OPEN_BOm1p8
10 | port_orientation: 0
11 | row_pitch: 125
12 | rows: 1
13 | size:
14 | - 100
15 | - 100
16 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_photonic_wirebond_surfacetaper_1310_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: photonic_wirebond_surfa_5032bc1d
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_photonic_wirebond_surfacetaper_1550_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: photonic_wirebond_surfa_f98966ec
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ring_double_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ring_double_G0p2_R10_LX4_LY0p6
3 | settings:
4 | gap: 0.2
5 | length_x: 4
6 | length_y: 0.6
7 | radius: 10
8 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ring_double_heater_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ring_double_heater_G0p2_2d50a6d4
3 | settings:
4 | bend: bend_euler
5 | coupler_ring: coupler_ring
6 | cross_section: strip
7 | cross_section_heater: heater_metal
8 | cross_section_waveguide_heater: strip_heater_metal
9 | gap: 0.2
10 | length_x: 1
11 | length_y: 0.2
12 | radius: 10
13 | straight: straight
14 | via_stack: via_stack_heater_mtop
15 | via_stack_offset:
16 | - 1
17 | - 0
18 | with_drop: true
19 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ring_single_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ring_single_G0p2_R10_LX4_LY0p6
3 | settings:
4 | gap: 0.2
5 | length_x: 4
6 | length_y: 0.6
7 | radius: 10
8 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ring_single_heater_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ring_double_heater_G0p2_8e96fef6
3 | settings:
4 | bend: bend_euler
5 | coupler_ring: coupler_ring
6 | cross_section: strip
7 | cross_section_heater: heater_metal
8 | cross_section_waveguide_heater: strip_heater_metal
9 | gap: 0.2
10 | length_x: 1
11 | length_y: 0.01
12 | radius: 10
13 | straight: straight
14 | via_stack: via_stack_heater_mtop
15 | via_stack_offset:
16 | - 1
17 | - 0
18 | with_drop: false
19 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_ring_with_crossing_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: ring_single_dut_Cebeam__d2ca7275
3 | settings:
4 | bend: bend_euler
5 | component: ebeam_crossing4_2ports
6 | coupler: coupler_ring
7 | cross_section: strip
8 | gap: 0.2
9 | length_x: 4
10 | length_y: 0
11 | port_name: o4
12 | radius: 5
13 | with_component: true
14 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_spiral_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 1200
3 | name: spiral_L100_S3_NL6
4 | settings:
5 | length: 100
6 | n_loops: 6
7 | spacing: 3
8 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_straight_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 10
3 | route_info_length: 10
4 | route_info_strip_length: 10
5 | route_info_type: strip
6 | route_info_weight: 10
7 | width: 0.5
8 | name: straight_L10_N2_CSstrip_WNone
9 | settings:
10 | cross_section: strip
11 | length: 10
12 | npoints: 2
13 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_straight_heater_metal_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 320
3 | resistance: 0
4 | name: straight_heater_metal_L_32c21700
5 | settings:
6 | cross_section: strip
7 | length: 320
8 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_straight_one_pin_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: straight_one_pin_L1_CSF_a51960c0
3 | settings:
4 | cross_section: Fcross_section_Mgdsfactorypcross_section_SRM5_BLDEVREC_BO0p5
5 | length: 1
6 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_taper_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | length: 10
3 | width1: 0.5
4 | width2: 0.5
5 | name: taper_L10_W0p5_WNone_LN_08b35698
6 | settings:
7 | cross_section: strip
8 | length: 10
9 | port_names:
10 | - o1
11 | - o2
12 | port_types:
13 | - optical
14 | - optical
15 | width1: 0.5
16 | with_bbox: true
17 | with_two_ports: true
18 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_terminator_short_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: terminator_short_W0p1
3 | settings:
4 | width2: 0.1
5 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_thermal_phase_shifter0_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: thermal_phase_shifter_multimode_500um
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_thermal_phase_shifter1_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: thermal_phase_shifter_te_1310_500um
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_thermal_phase_shifter2_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: thermal_phase_shifter_te_1310_500um_lowloss
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_thermal_phase_shifter3_.yml:
--------------------------------------------------------------------------------
1 | info: {}
2 | name: thermal_phase_shifter_te_1550_500um_lowloss
3 | settings: {}
4 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_via_stack_heater_mtop_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | xsize: 10
3 | ysize: 10
4 | name: via_stack_heater_mtop_S10_10
5 | settings:
6 | size:
7 | - 10
8 | - 10
9 |
--------------------------------------------------------------------------------
/tests/test_components/test_pdk_settings_wire_corner_.yml:
--------------------------------------------------------------------------------
1 | info:
2 | dy: 10
3 | length: 10
4 | name: wire_corner_CSmetal_routing
5 | settings:
6 | cross_section: metal_routing
7 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_bend_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: bend_euler_CSstrip
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_bend_euler180_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: bend_euler_CSstrip_A180
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_bend_euler_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: bend_euler_CSstrip
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_bend_s_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: bend_s_S11_1p8_N99_CSst_71d8cbbd
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_coupler90_.yml:
--------------------------------------------------------------------------------
1 | instances:
2 | bend_euler_CSstrip_RNone_0_700:
3 | component: bend_euler
4 | info:
5 | dy: 10
6 | length: 16.637
7 | min_bend_radius: 7.061
8 | radius: 10
9 | route_info_length: 16.637
10 | route_info_min_bend_radius: 7.061
11 | route_info_n_bend_90: 1
12 | route_info_strip_length: 16.637
13 | route_info_type: strip
14 | route_info_weight: 16.637
15 | width: 0.5
16 | settings:
17 | cross_section: strip
18 | radius: null
19 | straight_L10_N2_CSstrip_WNone_0_0:
20 | component: straight
21 | info:
22 | length: 10
23 | route_info_length: 10
24 | route_info_strip_length: 10
25 | route_info_type: strip
26 | route_info_weight: 10
27 | width: 0.5
28 | settings:
29 | cross_section: strip
30 | length: 10
31 | npoints: 2
32 | width: null
33 | name: coupler90_G0p2_RNone_Bb_9c88eb65
34 | nets: []
35 | placements:
36 | bend_euler_CSstrip_RNone_0_700:
37 | mirror: false
38 | rotation: 0
39 | x: 0
40 | y: 0.7
41 | straight_L10_N2_CSstrip_WNone_0_0:
42 | mirror: false
43 | rotation: 0
44 | x: 0
45 | y: 0
46 | ports:
47 | o1: straight_L10_N2_CSstrip_WNone_0_0,o1
48 | o2: bend_euler_CSstrip_RNone_0_700,o1
49 | o3: bend_euler_CSstrip_RNone_0_700,o2
50 | o4: straight_L10_N2_CSstrip_WNone_0_0,o2
51 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_coupler_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: coupler
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_coupler_ring_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: coupler_ring_G0p2_R10_L_4c94bf2e
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_coupler_straight_.yml:
--------------------------------------------------------------------------------
1 | instances:
2 | straight_L10_N2_CSstrip_WNone_0_0:
3 | component: straight
4 | info:
5 | length: 10
6 | route_info_length: 10
7 | route_info_strip_length: 10
8 | route_info_type: strip
9 | route_info_weight: 10
10 | width: 0.5
11 | settings:
12 | cross_section: strip
13 | length: 10
14 | npoints: 2
15 | width: null
16 | straight_L10_N2_CSstrip_WNone_0_700:
17 | component: straight
18 | info:
19 | length: 10
20 | route_info_length: 10
21 | route_info_strip_length: 10
22 | route_info_type: strip
23 | route_info_weight: 10
24 | width: 0.5
25 | settings:
26 | cross_section: strip
27 | length: 10
28 | npoints: 2
29 | width: null
30 | name: coupler_straight_L10_G0_202c9430
31 | nets: []
32 | placements:
33 | straight_L10_N2_CSstrip_WNone_0_0:
34 | mirror: false
35 | rotation: 0
36 | x: 0
37 | y: 0
38 | straight_L10_N2_CSstrip_WNone_0_700:
39 | mirror: false
40 | rotation: 0
41 | x: 0
42 | y: 0.7
43 | ports:
44 | o1: straight_L10_N2_CSstrip_WNone_0_0,o1
45 | o2: straight_L10_N2_CSstrip_WNone_0_700,o1
46 | o3: straight_L10_N2_CSstrip_WNone_0_700,o2
47 | o4: straight_L10_N2_CSstrip_WNone_0_0,o2
48 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_dbr_cavity_.yml:
--------------------------------------------------------------------------------
1 | instances:
2 | coupler_L0p1_G0p2_0_0:
3 | component: coupler
4 | info:
5 | length: 10.19
6 | min_bend_radius: 11.744
7 | settings:
8 | gap: 0.2
9 | length: 0.1
10 | dbr_W0p5_D0p1_N100_L0p0_c9156e45_10189_2350:
11 | component: dbr
12 | info: {}
13 | settings:
14 | cross_section: strip
15 | dw: 0.1
16 | l1: 0.079
17 | l2: 0.079
18 | n: 100
19 | w0: 0.5
20 | dbr_W0p5_D0p1_N100_L0p0_c9156e45_m10089_2350:
21 | component: dbr
22 | info: {}
23 | settings:
24 | cross_section: strip
25 | dw: 0.1
26 | l1: 0.079
27 | l2: 0.079
28 | n: 100
29 | w0: 0.5
30 | name: dbr_cavity_Ddbr_Ccoupler
31 | nets:
32 | - p1: coupler_L0p1_G0p2_0_0,o2
33 | p2: dbr_W0p5_D0p1_N100_L0p0_c9156e45_m10089_2350,o1
34 | - p1: coupler_L0p1_G0p2_0_0,o3
35 | p2: dbr_W0p5_D0p1_N100_L0p0_c9156e45_10189_2350,o1
36 | placements:
37 | coupler_L0p1_G0p2_0_0:
38 | mirror: false
39 | rotation: 0
40 | x: 0
41 | y: 0
42 | dbr_W0p5_D0p1_N100_L0p0_c9156e45_10189_2350:
43 | mirror: false
44 | rotation: 0
45 | x: 10.189
46 | y: 2.35
47 | dbr_W0p5_D0p1_N100_L0p0_c9156e45_m10089_2350:
48 | mirror: false
49 | rotation: 180
50 | x: -10.089
51 | y: 2.35
52 | ports:
53 | o1: coupler_L0p1_G0p2_0_0,o1
54 | o2: coupler_L0p1_G0p2_0_0,o4
55 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_dbr_cavity_te_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: dbr_cavity_te_Cdbr_cavity
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_bdc_te1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_bdc_te1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_bdc_tm1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_bdc_tm1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_crossing4_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_crossing4
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_crossing4_2ports_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_crossing4_2ports
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_dc_te1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: coupler_G0p236_L20_D4_D_b138340a
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_splitter_swg_assist_te1310_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_splitter_swg_assist_te1310
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_splitter_swg_assist_te1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_splitter_swg_assist_te1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_terminator_te1310_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_terminator_te1310
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_terminator_te1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_terminator_te1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_terminator_tm1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_terminator_tm1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_y_1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_y_1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_y_adiabatic_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_y_adiabatic
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ebeam_y_adiabatic_1310_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ebeam_y_adiabatic_1310
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1310_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1310
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1310_8deg_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1310_8deg
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1310_broadband_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1310_broadband
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1550_90nmSlab_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1550_90nmSlab
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_te1550_broadband_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_te1550_broadband
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_gc_tm1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: gc_tm1550
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_metal_via_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: metal_via
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_mmi1x2_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: mmi1x2
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_pad_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: pad_S75_75_LM2_ROUTER_B_a6f49d52
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_photonic_wirebond_surfacetaper_1310_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: photonic_wirebond_surfa_5032bc1d
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_photonic_wirebond_surfacetaper_1550_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: photonic_wirebond_surfa_f98966ec
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ring_double_heater_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ring_double_heater_G0p2_2d50a6d4
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_ring_single_heater_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: ring_double_heater_G0p2_8e96fef6
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_straight_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: straight_L10_N2_CSstrip_WNone
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_straight_one_pin_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: straight_one_pin_L1_CSF_a51960c0
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_taper_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: taper_L10_W0p5_WNone_LN_08b35698
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_terminator_short_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: terminator_short_W0p1
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_thermal_phase_shifter0_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: thermal_phase_shifter_multimode_500um
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_thermal_phase_shifter1_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: thermal_phase_shifter_te_1310_500um
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_thermal_phase_shifter2_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: thermal_phase_shifter_te_1310_500um_lowloss
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/tests/test_netlists/test_netlists_thermal_phase_shifter3_.yml:
--------------------------------------------------------------------------------
1 | instances: {}
2 | name: thermal_phase_shifter_te_1550_500um_lowloss
3 | nets: []
4 | placements: {}
5 | ports: {}
6 |
--------------------------------------------------------------------------------
/ubcpdk/README.md:
--------------------------------------------------------------------------------
1 | # UBC1
2 |
3 | ## DFT rules (design for testing)
4 |
5 | Layout requirements for automated testing
6 |
7 | The following are the layout requirements for automated testing:
8 |
9 | Please make sure your grating couplers are:
10 |
11 | - facing right (waveguide on the right side)
12 | - on a 127 µm pitch vertically
13 | - Counting from top down, the 1st, 3rd and 4th fibre in the array will be used for the outputs (three detectors are sampled simultaneously), and the 2nd fibre will be input. Many test configurations are possible, such as Fibres 1-2, Fibres 2-3, Fibres 1-2-3, etc. It is also possible to test the same device multiple times by placing labels on multiple ports.
14 |
15 | Please place a text label (Layer #10 “text” in layout) on the grating coupler to which you would like the 2nd fibre (input) aligned be to:
16 |
17 | - opt*in*_\_device_\_
18 | - example: opt_in_TE_1550_device_LukasChrostowski_MZI1
19 | - The label format is case sensitive, and cannot have extra "\_" characters.
20 | - The labels MUST BE UNIQUE.
21 |
22 | Examples layouts that conform to these test rules are provided in folder “Examples”.
23 |
24 | More details are also available in the PDF slides. The GDS Layout used in the examples is Sample.gds. The TE & TM example layout is GC_Alignment_TE_TM.gds.
25 |
26 | ## DFM Design for manufacturing
27 |
28 | Each participant is allocated a rectangle of 605 µm (width) X 410 µm (height). You can use multiple blocks (see below for details).
29 |
--------------------------------------------------------------------------------
/ubcpdk/__init__.py:
--------------------------------------------------------------------------------
1 | """UBC Siepic Ebeam PDK from edx course."""
2 |
3 | from gdsfactory.config import PATH as GPATH
4 | from gdsfactory.get_factories import get_cells
5 | from gdsfactory.pdk import Pdk
6 |
7 | from ubcpdk import components, data, tech
8 | from ubcpdk.config import CONFIG, PATH
9 | from ubcpdk.tech import LAYER, LAYER_STACK, LAYER_VIEWS, cross_sections
10 |
11 | try:
12 | from gplugins.sax.models import get_models
13 |
14 | from ubcpdk import models
15 |
16 | models = get_models(models)
17 | except ImportError:
18 | print("gplugins[sax] not installed, no simulation models available.")
19 | models = {}
20 |
21 |
22 | __version__ = "2.7.0"
23 |
24 | __all__ = [
25 | "CONFIG",
26 | "data",
27 | "PATH",
28 | "components",
29 | "tech",
30 | "LAYER",
31 | "cells",
32 | "cross_sections",
33 | "PDK",
34 | "__version__",
35 | ]
36 |
37 |
38 | cells = get_cells(components)
39 | PDK = Pdk(
40 | name="ubcpdk",
41 | cells=cells,
42 | cross_sections=cross_sections,
43 | models=models,
44 | layers=LAYER,
45 | layer_stack=LAYER_STACK,
46 | layer_views=LAYER_VIEWS,
47 | )
48 |
49 | GPATH.sparameters = PATH.sparameters
50 | GPATH.interconnect = PATH.interconnect_cml_path
51 | PDK.activate()
52 |
53 |
54 | if __name__ == "__main__":
55 | m = get_models(models)
56 | for model in m.keys():
57 | print(model)
58 |
--------------------------------------------------------------------------------
/ubcpdk/data/__init__.py:
--------------------------------------------------------------------------------
1 | """Data analysis module."""
2 |
3 | from .chop import chop
4 | from .find_bandwidth import find_bandwidth
5 | from .read_mat import read_mat
6 | from .remove_baseline import remove_baseline
7 | from .windowed_mean import windowed_mean
8 |
9 | __all__ = ["read_mat", "remove_baseline", "chop", "windowed_mean", "find_bandwidth"]
10 |
--------------------------------------------------------------------------------
/ubcpdk/data/chop.py:
--------------------------------------------------------------------------------
1 | def chop(x, y, ymax=None, ymin=None, xmin=None, xmax=None):
2 | """Chops x, y."""
3 | if xmax:
4 | y = y[x < xmax]
5 | x = x[x < xmax]
6 |
7 | if xmin:
8 | y = y[x > xmin]
9 | x = x[x > xmin]
10 |
11 | if ymax:
12 | x = x[y < ymax]
13 | y = y[y < ymax]
14 |
15 | if ymin:
16 | x = x[y > ymin]
17 | y = y[y > ymin]
18 |
19 | return x, y
20 |
--------------------------------------------------------------------------------
/ubcpdk/data/convert_to_pandas.py:
--------------------------------------------------------------------------------
1 | import pandas as pd
2 | from gdsfactory.typings import PathType
3 | from scipy.io import loadmat
4 |
5 |
6 | def convert_to_pandas(filename: PathType, port: int = 0) -> pd.DataFrame:
7 | """Reads .mat file and parses it into a pandas DataFrame."""
8 | data = loadmat(filename)
9 |
10 | if "scanResults" in data:
11 | wavelength = data["scanResults"][0][port][0][:, 0]
12 | power = data["scanResults"][0][port][0][:, 1]
13 | elif "scandata" in data:
14 | wavelength = data["scandata"][0][0][0][:][0]
15 | power = data["scandata"][0][0][1][:, port]
16 | elif "wavelength" in data:
17 | wavelength = data["wavelength"][0][:]
18 | power = data["power"][:, port][:]
19 |
20 | return pd.DataFrame({"wavelength": wavelength, "output_power": power})
21 |
22 |
23 | if __name__ == "__main__":
24 | import json
25 |
26 | from ubcpdk.config import PATH
27 |
28 | for filepath in [
29 | PATH.ring_te_r3_g100,
30 | PATH.ring_te_r3_g150,
31 | PATH.ring_te_r3_g150,
32 | PATH.ring_te_r10_g50,
33 | PATH.ring_te_r10_g100,
34 | PATH.ring_te_r10_g150,
35 | ]:
36 | df = convert_to_pandas(filepath)
37 | json_path = filepath.with_suffix(".json")
38 | d = df.to_dict(orient="split")
39 | json_path.write_text(json.dumps(d, indent=2))
40 |
--------------------------------------------------------------------------------
/ubcpdk/data/read_mat.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 | from gdsfactory.typings import PathType
3 | from scipy.io import loadmat
4 |
5 |
6 | def read_mat(filename: PathType, port: int = 0) -> tuple[np.ndarray, np.ndarray]:
7 | """Reads .mat file and returns 2 np.arrays (wavelength, power).
8 |
9 | input: (.mat data download filename, port response)
10 | outputs parsed data array [wavelength (m), power (dBm)]
11 | data is assumed to be from automated measurement scanResults or scandata format
12 | based on SiEPIC_Photonics_Package/core.py
13 | """
14 | data = loadmat(filename)
15 |
16 | if "scanResults" in data:
17 | wavelength = data["scanResults"][0][port][0][:, 0]
18 | power = data["scanResults"][0][port][0][:, 1]
19 | elif "scandata" in data:
20 | wavelength = data["scandata"][0][0][0][:][0]
21 | power = data["scandata"][0][0][1][:, port]
22 | elif "wavelength" in data:
23 | wavelength = data["wavelength"][0][:]
24 | power = data["power"][:, port][:]
25 |
26 | return [wavelength, power]
27 |
28 |
29 | if __name__ == "__main__":
30 | import matplotlib.pyplot as plt
31 |
32 | import ubcpdk
33 |
34 | w, p = read_mat(ubcpdk.PATH.mzi1)
35 | plt.plot(w, p)
36 | plt.show()
37 |
--------------------------------------------------------------------------------
/ubcpdk/data/remove_baseline.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 |
3 | from ubcpdk.data.read_mat import read_mat
4 |
5 |
6 | def remove_baseline(wavelength: np.ndarray, power: np.ndarray, deg: int = 4):
7 | """Return power corrected without baseline.
8 |
9 | Fit a polynomial ``p(x) = p[0] * x**deg + ... + p[deg]`` of degree `deg`
10 | """
11 | pfit = np.polyfit(wavelength - np.mean(wavelength), power, deg)
12 | power_baseline = np.polyval(pfit, wavelength - np.mean(wavelength))
13 |
14 | power_corrected = power - power_baseline
15 | power_corrected = power_corrected + max(power_baseline) - max(power)
16 | return power_corrected
17 |
18 |
19 | if __name__ == "__main__":
20 | import matplotlib.pyplot as plt
21 |
22 | import ubcpdk
23 |
24 | w, p = read_mat(ubcpdk.PATH.mzi1)
25 | pc = remove_baseline(w, p)
26 | plt.plot(w, pc)
27 | plt.show()
28 |
--------------------------------------------------------------------------------
/ubcpdk/data/windowed_mean.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 | import scipy.signal as sig
3 |
4 |
5 | def windowed_mean(data: np.array, n: int = 60) -> np.array:
6 | """Returns the smoothen data using a window averaging of a 1d array.
7 |
8 | Args:
9 | data: data array.
10 | n: points per window.
11 | """
12 | dims = len(data.shape)
13 | s = sig.convolve(data, np.ones((2 * n + 1,) * dims), mode="same")
14 | d = sig.convolve(np.ones_like(data), np.ones((2 * n + 1,) * dims), mode="same")
15 | return s / d
16 |
17 |
18 | if __name__ == "__main__":
19 | import matplotlib.pyplot as plt
20 |
21 | from ubcpdk.config import PATH
22 | from ubcpdk.data.read_mat import read_mat
23 |
24 | wavelength, power = read_mat(PATH.ring_te_r3_g100)
25 | power_envelope = windowed_mean(power, 60)
26 | plt.plot(wavelength, power, label="power")
27 | plt.plot(wavelength, power_envelope, label="envelope")
28 | plt.legend()
29 | plt.show()
30 |
--------------------------------------------------------------------------------
/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1310_ANT.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1310_ANT.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1550_ANT.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1550_ANT.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/Alignment_Marker.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/Alignment_Marker.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/GCs_BB.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/GCs_BB.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_adiabatic_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_adiabatic_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_adiabatic_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_adiabatic_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_bdc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_bdc_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_crossing4.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_crossing4.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_gc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_gc_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_gc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_gc_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_terminator_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_terminator_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_terminator_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_terminator_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_terminator_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_terminator_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_y_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_y_1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/ebeam_y_adiabatic.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/ebeam_y_adiabatic.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/taper_si_simm_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/taper_si_simm_1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam/taper_si_simm_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam/taper_si_simm_1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/Alignment_Marker.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/Alignment_Marker.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/Packaging_FibreArray_8ch.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/Packaging_FibreArray_8ch.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/SEM_example.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/SEM_example.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_BondPad.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_BondPad.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_bdc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_bdc_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_8deg.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_8deg.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_broadband.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_broadband.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_90nmSlab.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_90nmSlab.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_broadband.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_broadband.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_splitter_adiabatic_swg_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_splitter_adiabatic_swg_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_swg_edgecoupler.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_swg_edgecoupler.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_terminator_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_terminator_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/ebeam_y_adiabatic_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/ebeam_y_adiabatic_1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/metal_via.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/metal_via.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/siepic_o_gc_te1270_BB.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/siepic_o_gc_te1270_BB.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/siepic_o_pwbstlas_si_BB.GDS:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/siepic_o_pwbstlas_si_BB.GDS
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_Beta/thermal_phase_shifters.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_Beta/thermal_phase_shifters.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/EBeam_SiN/ebeam_BondPad.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/EBeam_SiN/ebeam_BondPad.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/Packaging_FibreArray_8ch.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/Packaging_FibreArray_8ch.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/SEM_example.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/SEM_example.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_BondPad.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_BondPad.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_adiabatic_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_adiabatic_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_adiabatic_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_adiabatic_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_bdc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_bdc_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_bdc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_bdc_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_crossing4.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_crossing4.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1310_8deg.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1310_8deg.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1310_broadband.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1310_broadband.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1550_90nmSlab.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1550_90nmSlab.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_te1550_broadband.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_te1550_broadband.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_gc_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_gc_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_splitter_adiabatic_swg_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_splitter_adiabatic_swg_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_splitter_swg_assist_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_splitter_swg_assist_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_splitter_swg_assist_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_splitter_swg_assist_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_swg_edgecoupler.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_swg_edgecoupler.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_terminator_te1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_terminator_te1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_terminator_te1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_terminator_te1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_terminator_tm1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_terminator_tm1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_y_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_y_1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_y_adiabatic.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_y_adiabatic.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/ebeam_y_adiabatic_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/ebeam_y_adiabatic_1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/metal_via.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/metal_via.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/photonic_wirebond_surfacetaper_1310.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/photonic_wirebond_surfacetaper_1310.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/photonic_wirebond_surfacetaper_1550.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/photonic_wirebond_surfacetaper_1550.gds
--------------------------------------------------------------------------------
/ubcpdk/gds/thermal_phase_shifters.gds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/gds/thermal_phase_shifters.gds
--------------------------------------------------------------------------------
/ubcpdk/import_pdk.py:
--------------------------------------------------------------------------------
1 | import gdsfactory as gf
2 |
3 | from ubcpdk.config import PATH
4 |
5 | if __name__ == "__main__":
6 | print(
7 | gf.write_cells.get_import_gds_script(
8 | dirpath=PATH.gds / "EBeam", module="ubpdk.components"
9 | )
10 | )
11 | print(
12 | gf.write_cells.get_import_gds_script(
13 | dirpath="gds/EBeam_Beta", module="ubpdk.components"
14 | )
15 | )
16 |
--------------------------------------------------------------------------------
/ubcpdk/klayout/tech/pymacros/set_menus.lym:
--------------------------------------------------------------------------------
1 |
2 |
3 | set_menus
4 |
5 | pymacros
6 |
7 |
8 |
9 | true
10 | false
11 |
12 | false
13 |
14 | ubcpdk.begin
15 | python
16 |
17 |
18 | import pya
19 |
20 | __version__ = "2.7.0"
21 |
22 |
23 | def set_menu():
24 | menu = pya.Application.instance().main_window().menu()
25 |
26 | s0 = "ubcpdk"
27 | if not (menu.is_menu(s0)):
28 | menu.insert_menu("macros_menu", s0, f"ubcpdk {__version__}")
29 |
30 |
31 | if __name__ == "__main__":
32 | set_menu()
33 |
34 |
35 |
--------------------------------------------------------------------------------
/ubcpdk/models.py:
--------------------------------------------------------------------------------
1 | from __future__ import annotations
2 |
3 | from functools import partial
4 |
5 | import gplugins.sax.models as sm
6 |
7 | nm = 1e-3
8 |
9 |
10 | straight = partial(sm.straight, wl0=1.55, neff=2.4, ng=4.2)
11 | bend_euler_sc = bend_euler = partial(sm.bend, loss=0.03)
12 |
13 | ################
14 | # grating couplers
15 | ################
16 | gc_te1550 = partial(sm.grating_coupler, loss=6, bandwidth=35 * nm, wl0=1.55)
17 | gc_te1550_broadband = partial(sm.grating_coupler, loss=6, bandwidth=50 * nm, wl0=1.55)
18 | gc_tm1550 = partial(sm.grating_coupler, loss=6, bandwidth=35 * nm, wl0=1.55)
19 | gc_te1310_broadband = partial(sm.grating_coupler, loss=6, bandwidth=50 * nm, wl0=1.31)
20 | gc_te1310 = partial(sm.grating_coupler, loss=6, bandwidth=35 * nm, wl0=1.31)
21 |
22 | ################
23 | # MMIs
24 | ################
25 | mmi1x2 = partial(sm.mmi1x2, wl0=1.55, fwhm=0.2, loss_dB=0.3)
26 | mmi2x2 = partial(sm.mmi2x2, wl0=1.55, fwhm=0.2, loss_dB=0.3)
27 | ebeam_y_1550 = mmi1x2
28 | coupler = sm.coupler
29 |
30 | if __name__ == "__main__":
31 | import gplugins.sax as gs
32 |
33 | gs.plot_model(gc_te1550)
34 | gs.plot_model(coupler)
35 |
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num10_1272.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num10_1272.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num11_1273.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num11_1273.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num12_1271.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num12_1271.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num13_1278.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num13_1278.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num14_1276.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num14_1276.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num15_1277.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num15_1277.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num16_1275.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num16_1275.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num17_1282.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num17_1282.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num18_1280.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num18_1280.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num19_1281.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num19_1281.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num1_1266.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num1_1266.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num20_1279.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num20_1279.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num21_1286.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num21_1286.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num22_1284.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num22_1284.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num23_1285.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num23_1285.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num24_1283.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num24_1283.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num2_1264.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num2_1264.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num3_1265.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num3_1265.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num4_1263.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num4_1263.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num5_1270.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num5_1270.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num6_1268.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num6_1268.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num7_1269.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num7_1269.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num8_1267.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num8_1267.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num9_1274.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num9_1274.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num10_1248.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num10_1248.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num11_1249.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num11_1249.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num12_1247.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num12_1247.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num13_1254.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num13_1254.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num14_1252.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num14_1252.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num15_1253.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num15_1253.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num16_1251.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num16_1251.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num17_1258.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num17_1258.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num18_1256.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num18_1256.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num19_1257.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num19_1257.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num1_1242.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num1_1242.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num20_1255.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num20_1255.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num21_1262.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num21_1262.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num22_1260.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num22_1260.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num23_1261.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num23_1261.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num24_1259.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num24_1259.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num2_1240.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num2_1240.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num3_1241.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num3_1241.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num4_1239.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num4_1239.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num5_1246.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num5_1246.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num6_1244.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num6_1244.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num7_1245.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num7_1245.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num8_1243.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num8_1243.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num9_1250.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num9_1250.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num10_1200.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num10_1200.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num11_1201.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num11_1201.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num12_1199.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num12_1199.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num13_1206.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num13_1206.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num14_1204.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num14_1204.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num15_1205.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num15_1205.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num16_1203.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num16_1203.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num17_1210.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num17_1210.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num18_1208.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num18_1208.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num19_1209.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num19_1209.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num1_1194.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num1_1194.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num20_1207.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num20_1207.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num21_1214.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num21_1214.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num22_1212.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num22_1212.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num23_1213.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num23_1213.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num24_1211.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num24_1211.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num2_1192.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num2_1192.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num3_1193.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num3_1193.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num4_1191.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num4_1191.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num5_1198.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num5_1198.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num6_1196.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num6_1196.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num7_1197.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num7_1197.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num8_1195.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num8_1195.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num9_1202.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num9_1202.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/EB486A_URChip3Coords.txt:
--------------------------------------------------------------------------------
1 | %,,,,,,
2 | 223.85,29.15,TE,1550,device,LukasChrostowski_MZI2, 1394.5
3 | 892.6,145.4,TE,1550,device,ZiheGao_MZI17,219.366
4 | 772.6,145.4,TE,1550,device,ZiheGao_MZI8, 217.649
5 | 652.6,145.4,TE,1550,device,ZiheGao_MZI6, 215.932
6 | 532.6,145.4,TE,1550,device,ZiheGao_MZI5, 206.703125
7 | 412.6,145.4,TE,1550,device,ZiheGao_MZI4, 207.08945
8 | 292.6,145.4,TE,1550,device,ZiheGao_MZI3, 214.215
9 | 172.6,145.4,TE,1550,device,ZiheGao_MZI2, 111.915
10 | 33.85,29.15,TE,1550,device,LukasChrostowski_MZI1, 26.8
11 |
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/EB486A_URChip3Coords1.txt:
--------------------------------------------------------------------------------
1 | %,,,,,,
2 | 223.85,29.15,TE,1550,device,LukasChrostowski_MZI2, 1394.5
3 | 892.6,145.4,TE,1550,device,ZiheGao_MZI17,219.366
4 | 772.6,145.4,TE,1550,device,ZiheGao_MZI8, 217.649
5 | 652.6,145.4,TE,1550,device,ZiheGao_MZI6, 215.932
6 | 532.6,145.4,TE,1550,device,ZiheGao_MZI5, 206.703125
7 | 412.6,145.4,TE,1550,device,ZiheGao_MZI4, 207.08945
8 | 292.6,145.4,TE,1550,device,ZiheGao_MZI3, 214.215
9 | 172.6,145.4,TE,1550,device,ZiheGao_MZI2, 111.915
10 |
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/LukasChrostowski_MZI1_135_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/LukasChrostowski_MZI1_135_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/LukasChrostowski_MZI2_136_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/LukasChrostowski_MZI2_136_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI17_265_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI17_265_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI1_272_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI1_272_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI1_273_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI1_273_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI2_271_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI2_271_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI3_270_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI3_270_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI4_269_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI4_269_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI5_268_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI5_268_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI6_267_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI6_267_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/mzi/ZiheGao_MZI8_266_Scan1.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/mzi/ZiheGao_MZI8_266_Scan1.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g100_1495.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g100_1495.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g150_1494.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g150_1494.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g200_1493.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g200_1493.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g50_1496.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g50_1496.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g100_1498.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g100_1498.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g150_1497.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g150_1497.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g150_1492.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g150_1492.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g200_1491.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g200_1491.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g250_1490.mat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g250_1490.mat
--------------------------------------------------------------------------------
/ubcpdk/samples/data/ring/lukasc_RingResonator.txt:
--------------------------------------------------------------------------------
1 | Double-bus ring resonators
2 | symmetrically coupled
3 |
4 | TE:
5 | R = [3]
6 | g = [ 50, 100, 150]
7 |
8 | R = [10]
9 | g = [ 50, 100, 150, 200 ]
10 |
11 | TM:
12 | R = [30]
13 | g = [150, 200, 250]
14 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_circuit_simulations.py:
--------------------------------------------------------------------------------
1 | import jax.numpy as jnp
2 | import matplotlib.pyplot as plt
3 | import sax
4 |
5 | import ubcpdk
6 | from ubcpdk import PDK
7 |
8 |
9 | def test_mzi():
10 | c = ubcpdk.components.mzi(delta_length=20)
11 | netlist = c.get_netlist()
12 | models = PDK.models
13 | circuit, _ = sax.circuit(netlist, models=models) # type: ignore
14 | wl = jnp.linspace(1.5, 1.6)
15 |
16 | S = circuit(wl=wl)
17 | assert S
18 |
19 |
20 | if __name__ == "__main__":
21 | c = ubcpdk.components.mzi(delta_length=20)
22 | netlist = c.get_netlist()
23 | models = PDK.models
24 | circuit, _ = sax.circuit(netlist, models=models) # type: ignore
25 | wl = jnp.linspace(1.5, 1.6)
26 |
27 | S = circuit(wl=wl)
28 | plt.figure(figsize=(14, 4))
29 | plt.title("MZI")
30 | plt.plot(1e3 * wl, jnp.abs(S["o1", "o2"]) ** 2) # type: ignore
31 | plt.xlabel("λ [nm]")
32 | plt.ylabel("T")
33 | plt.grid(True)
34 | plt.show()
35 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_ubc1.py:
--------------------------------------------------------------------------------
1 | import gdsfactory as gf
2 |
3 | import ubcpdk.components as uc
4 | from ubcpdk.tech import LAYER
5 |
6 | size = (440, 470)
7 | add_gc = uc.add_fiber_array
8 |
9 |
10 | @gf.cell
11 | def EBeam_JoaquinMatres_1() -> gf.Component:
12 | """Add DBR cavities."""
13 | e = [add_gc(uc.straight())]
14 | e += [add_gc(uc.mzi(delta_length=dl)) for dl in [9.32, 93.19]]
15 | e += [
16 | add_gc(uc.ring_single(radius=12, gap=gap, length_x=coupling_length))
17 | for gap in [0.2]
18 | for coupling_length in [2.5, 4.5, 6.5]
19 | ]
20 |
21 | e += [
22 | uc.dbr_cavity_te(w0=w0, dw=dw)
23 | for w0 in [0.5]
24 | for dw in [50e-3, 100e-3, 150e-3, 200e-3]
25 | ]
26 | e += [add_gc(uc.ring_with_crossing())]
27 | e += [add_gc(uc.ring_with_crossing(port_name="o2", with_component=False))]
28 |
29 | c = gf.Component()
30 | _ = c << gf.pack(e, max_size=size, spacing=2)[0]
31 | _ = c << gf.components.rectangle(size=size, layer=LAYER.FLOORPLAN)
32 | return c
33 |
34 |
35 | def test_ubc1() -> None:
36 | c = EBeam_JoaquinMatres_1()
37 | assert c
38 |
39 |
40 | if __name__ == "__main__":
41 | c = EBeam_JoaquinMatres_1()
42 | c.show() # show in klayout
43 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_ubc2.py:
--------------------------------------------------------------------------------
1 | import gdsfactory as gf
2 |
3 | import ubcpdk.components as uc
4 | from ubcpdk.tech import LAYER
5 |
6 | size = (440, 470)
7 | add_gc = uc.add_fiber_array
8 |
9 |
10 | @gf.cell
11 | def EBeam_JoaquinMatres_2() -> gf.Component:
12 | """spirals for extracting straight waveguide loss"""
13 | e = [
14 | uc.add_fiber_array(component=uc.spiral(n_loops=8, length=length))
15 | for length in [0, 100, 200]
16 | ]
17 |
18 | c = gf.Component()
19 | _ = c << gf.pack(e, max_size=size, spacing=2)[0]
20 | _ = c << gf.components.rectangle(size=size, layer=LAYER.FLOORPLAN)
21 | return c
22 |
23 |
24 | def test_ubc2() -> None:
25 | c = EBeam_JoaquinMatres_2()
26 | assert c
27 |
28 |
29 | if __name__ == "__main__":
30 | c = EBeam_JoaquinMatres_2()
31 | c.show() # show in klayout
32 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_ubc3.py:
--------------------------------------------------------------------------------
1 | import gdsfactory as gf
2 |
3 | import ubcpdk.components as uc
4 | from ubcpdk.tech import LAYER
5 |
6 | size = (440, 470)
7 | add_gc = uc.add_fiber_array
8 |
9 |
10 | @gf.cell
11 | def EBeam_JoaquinMatres_3() -> gf.Component:
12 | """Contains mirror cavities and structures inside a resonator."""
13 | e = []
14 | e += [add_gc(uc.ebeam_crossing4())]
15 | e += [add_gc(uc.ebeam_adiabatic_te1550(), optical_routing_type=1)]
16 | e += [add_gc(uc.ebeam_bdc_te1550())]
17 | e += [add_gc(uc.ebeam_y_1550(), optical_routing_type=1)]
18 | e += [add_gc(uc.straight(), component_name=f"straight_{i}") for i in range(2)]
19 | c = gf.Component()
20 | _ = c << gf.pack(e, max_size=size, spacing=2)[0]
21 | _ = c << gf.components.rectangle(size=size, layer=LAYER.FLOORPLAN)
22 | return c
23 |
24 |
25 | def test_ubc3() -> None:
26 | c = EBeam_JoaquinMatres_3()
27 | assert c
28 |
29 |
30 | if __name__ == "__main__":
31 | c = EBeam_JoaquinMatres_3()
32 | c.show() # show in klayout
33 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_ubc4.py:
--------------------------------------------------------------------------------
1 | from functools import partial
2 |
3 | import gdsfactory as gf
4 |
5 | import ubcpdk.components as uc
6 | from ubcpdk.tech import LAYER
7 |
8 | size = (440, 470)
9 | add_gc = uc.add_fiber_array
10 |
11 |
12 | @gf.cell
13 | def EBeam_JoaquinMatres_4() -> gf.Component:
14 | """MZI interferometers."""
15 | mzi = partial(gf.components.mzi, splitter=uc.ebeam_y_1550)
16 | mzis = [mzi(delta_length=delta_length) for delta_length in [10, 40, 100]]
17 | mzis_gc = [uc.add_fiber_array(mzi) for mzi in mzis]
18 |
19 | mzis = [uc.mzi_heater(delta_length=delta_length) for delta_length in [40]]
20 | mzis_heater_gc = [
21 | uc.add_fiber_array_pads_rf(mzi, orientation=90, optical_routing_type=2)
22 | for mzi in mzis
23 | ]
24 |
25 | e = mzis_gc + mzis_heater_gc
26 | c = gf.Component()
27 | _ = c << gf.pack(e, max_size=size, spacing=2)[0]
28 | _ = c << gf.components.rectangle(size=size, layer=LAYER.FLOORPLAN)
29 | return c
30 |
31 |
32 | def test_ubc4() -> None:
33 | c = EBeam_JoaquinMatres_4()
34 | assert c
35 |
36 |
37 | if __name__ == "__main__":
38 | c = EBeam_JoaquinMatres_4()
39 | c.show() # show in klayout
40 |
--------------------------------------------------------------------------------
/ubcpdk/samples/test_ubc5.py:
--------------------------------------------------------------------------------
1 | import gdsfactory as gf
2 |
3 | import ubcpdk.components as uc
4 | from ubcpdk.tech import LAYER
5 |
6 | size = (440, 470)
7 | add_gc = uc.add_fiber_array
8 |
9 |
10 | @gf.cell
11 | def EBeam_JoaquinMatres_5() -> gf.Component:
12 | """Ring resonators."""
13 |
14 | rings = []
15 | for length_x in [4]:
16 | ring = uc.ring_single_heater(length_x=length_x)
17 | ring_gc = uc.add_fiber_array_pads_rf(ring)
18 | rings.append(ring_gc)
19 |
20 | c = gf.Component()
21 | _ = c << gf.pack(rings, max_size=size, spacing=2)[0]
22 | _ = c << gf.components.rectangle(size=size, layer=LAYER.FLOORPLAN)
23 | return c
24 |
25 |
26 | def test_ubc5() -> None:
27 | c = EBeam_JoaquinMatres_5()
28 | assert c
29 |
30 |
31 | if __name__ == "__main__":
32 | c = EBeam_JoaquinMatres_5()
33 | c.show() # show in klayout
34 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/simulation/__init__.py
--------------------------------------------------------------------------------
/ubcpdk/simulation/circuits/__init__.py:
--------------------------------------------------------------------------------
1 | from ubcpdk.simulation.circuits.mzi_spectrum import (
2 | mzi_spectrum,
3 | )
4 | from ubcpdk.simulation.circuits.waveguide import (
5 | beta,
6 | neff,
7 | )
8 |
9 | __all__ = [
10 | "beta",
11 | "mzi_spectrum",
12 | "neff",
13 | "waveguide",
14 | ]
15 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/circuits/mzi_spectrum.py:
--------------------------------------------------------------------------------
1 | """MZI spectrum model.
2 |
3 | based on https://github.com/SiEPIC-Kits/SiEPIC_Photonics_Package
4 | """
5 |
6 | import numpy as np
7 |
8 | from ubcpdk.simulation.circuits.waveguide import beta, neff, wavelength_um
9 |
10 |
11 | def mzi_spectrum(
12 | L1_um,
13 | L2_um,
14 | wavelength_um=wavelength_um,
15 | beta=beta,
16 | alpha=1e-3,
17 | neff=neff,
18 | n1=2.4,
19 | n2=-1,
20 | n3=0,
21 | ):
22 | """Returns MZI spectrum.
23 |
24 | Args:
25 | L1_um.
26 | L2_um.
27 | wavelength_um.
28 | beta: propagation constant.
29 | """
30 | if callable(beta):
31 | beta = beta(wavelength_um, neff=neff, alpha=alpha, n1=n1, n2=n2, n3=n3)
32 |
33 | return 0.25 * np.abs(np.exp(-1j * beta * L1_um) + np.exp(-1j * beta * L2_um)) ** 2
34 |
35 |
36 | if __name__ == "__main__":
37 | import matplotlib.pyplot as plt
38 |
39 | # plt.plot(wavelength_um, mzi_spectrum(100, 110))
40 | plt.plot(wavelength_um, 10 * np.log10(mzi_spectrum(L1_um=40, L2_um=255)))
41 | plt.show()
42 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/circuits/waveguide.py:
--------------------------------------------------------------------------------
1 | """Wavelength dependent effective index model.
2 |
3 | based on https://github.com/SiEPIC-Kits/SiEPIC_Photonics_Package
4 | """
5 |
6 | import numpy as np
7 |
8 | wavelength_start = 1500e-9
9 | wavelength_stop = 1600e-9
10 | resolution = 0.001
11 | wavelength_um = (
12 | np.linspace(
13 | wavelength_start,
14 | wavelength_stop,
15 | round((wavelength_stop - wavelength_start) * 1e9 / resolution),
16 | )
17 | * 1e6
18 | )
19 |
20 |
21 | def neff(wavelength_um=wavelength_um, n1=2.4, n2=-1.0, n3=0.0, wavelength0_um=1.55):
22 | """Waveguide model neff."""
23 | w = wavelength_um
24 | w0 = wavelength0_um
25 | return n1 + n2 * (w - w0) + n3 * (w - w0) ** 2
26 |
27 |
28 | def beta(wavelength_um=wavelength_um, alpha=1e-3, neff=neff, n1=2.4, n2=-1, n3=0):
29 | """Propagation constant.
30 |
31 | Args:
32 | wavelength_um: in um.
33 | alpha: propagation loss [micron^-1] constant.
34 | """
35 | if callable(neff):
36 | neff = neff(wavelength_um, n1=n1, n2=n2, n3=n3)
37 |
38 | return 2 * np.pi * neff / wavelength_um - 1j * alpha / 2 * np.ones(
39 | np.size(wavelength_um)
40 | )
41 |
42 |
43 | if __name__ == "__main__":
44 | import matplotlib.pyplot as plt
45 |
46 | plt.plot(wavelength_um, neff(wavelength_um))
47 | plt.show()
48 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/find_neff_vs_width.csv:
--------------------------------------------------------------------------------
1 | 1,2,3,4,width
2 | 1.507516279000752,1.490839885168573,1.334428104508565,1.31883631979705,0.2
3 | 1.698188818278546,1.5748821007032343,1.3865612186924492,1.363887878522382,0.27272727272727276
4 | 2.051695539725326,1.6578679587399596,1.4070535408999676,1.3790662732636632,0.34545454545454546
5 | 2.2815028968811437,1.7237278334388788,1.4142583859979936,1.4049267990405658,0.4181818181818182
6 | 2.430127277033941,1.7797815493377667,1.4715685670218184,1.4187858689740733,0.49090909090909096
7 | 2.5287293532486776,1.8274889022507173,1.5960108880397166,1.4231027277788306,0.5636363636363637
8 | 2.597343774412331,1.8639854406271361,1.7874980200692214,1.4292258379398397,0.6363636363636365
9 | 2.646915777907601,1.9815476906389085,1.8950573620696547,1.4403453771131784,0.7090909090909092
10 | 2.684551652942098,2.1446838691288437,1.9216836186417265,1.5214094763971397,0.781818181818182
11 | 2.710039181670572,2.2580252850892575,1.940138372823012,1.5751273922790152,0.8545454545454547
12 | 2.7302029135994164,2.3474704545687093,1.9557489916983475,1.6674679214174426,0.9272727272727275
13 | 2.7464778984099447,2.4189574803236544,1.969335587598912,1.8166096780006489,1.0
14 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/lumerical/EBeam.cml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gdsfactory/ubc/5e9369cf5b3557b728a2e74282fd1e3ffd12bd07/ubcpdk/simulation/lumerical/EBeam.cml
--------------------------------------------------------------------------------
/ubcpdk/simulation/lumerical/lumerical_process_file.lbr:
--------------------------------------------------------------------------------
1 |
2 | silicon
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ubcpdk/simulation/modes_waveguide.py:
--------------------------------------------------------------------------------
1 | """MPB mode simulations."""
2 |
3 | from functools import partial
4 |
5 | import gplugins.modes as gm
6 |
7 | from ubcpdk.config import PATH
8 |
9 | nm = 1e-3
10 |
11 | find_modes_waveguide = partial(
12 | gm.find_modes_waveguide,
13 | wg_width=500 * nm,
14 | wg_thickness=220 * nm,
15 | slab_thickness=0 * nm,
16 | resolution=20,
17 | nmodes=4,
18 | cache=PATH.modes,
19 | )
20 |
21 |
22 | find_neff_vs_width = partial(
23 | gm.find_neff_vs_width, cache=PATH.modes, filepath="find_neff_vs_width.csv"
24 | )
25 |
26 |
27 | if __name__ == "__main__":
28 | import matplotlib.pyplot as plt
29 |
30 | df = find_neff_vs_width()
31 | gm.plot_neff_vs_width(df)
32 | plt.show()
33 |
--------------------------------------------------------------------------------
/update_source.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | export VERSION=0.3.41
4 | export CML_VER=2022_02_01
5 |
6 | export GIT_REPO=https://github.com/SiEPIC/SiEPIC_EBeam_PDK
7 |
8 | export REPO_TECH=SiEPIC_EBeam_PDK-${VERSION}/klayout_dot_config/tech/EBeam
9 | export UBC_TECH=ubcpdk/klayout/tech
10 | export LUM_DIR=ubcpdk/simulation/lumerical
11 | export GDS_DIR=ubcpdk/gds
12 |
13 |
14 | # Download EBeam PDK archive and extract it here
15 | wget ${GIT_REPO}/archive/refs/tags/v${VERSION}.tar.gz
16 | tar -xvf v${VERSION}.tar.gz
17 |
18 | # Copy files from tech
19 | cp -r ${REPO_TECH}/klayout_Layers_EBeam.lyp ${UBC_TECH}/layers.lyp
20 | cp -r ${REPO_TECH}/EBeam.lyt ${UBC_TECH}/tech.lyt
21 | cp -r ${REPO_TECH}/EBeam_v${CML_VER}.cml ${LUM_DIR}/EBeam.cml
22 | cp -r ${REPO_TECH}/lumerical_process_file.lbr ${LUM_DIR}/lumerical_process_file.lbr
23 |
24 | # TODO: Make this work with the naming used by SiEPIC
25 | # gf gds layermap_to_dataclass ${UBC_TECH}/layers.lyp
26 |
27 | # Copy files from gds
28 | cp -r ${REPO_TECH}/gds/development/*.gds ${GDS_DIR}
29 | cp -r ${REPO_TECH}/gds/mature/*.gds ${GDS_DIR}
30 |
31 | # Clean up
32 | rm -r v${VERSION}.tar.gz SiEPIC_EBeam_PDK-${VERSION}
33 |
--------------------------------------------------------------------------------